From 3c0f2e8e11a1bead64d869854b9dfc0f80e7579a Mon Sep 17 00:00:00 2001 From: Daniel Hensby Date: Mon, 18 Apr 2016 23:54:10 +0100 Subject: [PATCH 1/9] [SS-2015-029] FIX Add CSFR protection to tree reorganise --- admin/code/LeftAndMain.php | 3 +++ admin/javascript/LeftAndMain.Tree.js | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/admin/code/LeftAndMain.php b/admin/code/LeftAndMain.php index 226fa5853..9d59997ff 100644 --- a/admin/code/LeftAndMain.php +++ b/admin/code/LeftAndMain.php @@ -1046,6 +1046,9 @@ class LeftAndMain extends Controller implements PermissionProvider { * @return SS_HTTPResponse JSON string with a */ public function savetreenode($request) { + if (!SecurityToken::inst()->checkRequest($request)) { + return $this->httpError(400); + } if (!Permission::check('SITETREE_REORGANISE') && !Permission::check('ADMIN')) { $this->response->setStatusCode( 403, diff --git a/admin/javascript/LeftAndMain.Tree.js b/admin/javascript/LeftAndMain.Tree.js index 4faa4654a..37d3d1dbb 100644 --- a/admin/javascript/LeftAndMain.Tree.js +++ b/admin/javascript/LeftAndMain.Tree.js @@ -97,7 +97,10 @@ }); $.ajax({ - 'url': self.data('urlSavetreenode'), + 'url': $.path.addSearchParams( + self.data('urlSavetreenode'), + self.data('extraParams') + ), 'type': 'POST', 'data': { ID: nodeID, From f32c893546340c8c279fd1ab6d4269e9d6539bc2 Mon Sep 17 00:00:00 2001 From: Daniel Hensby Date: Mon, 18 Apr 2016 18:35:14 +0100 Subject: [PATCH 2/9] [SS-2016-005] FIX Apply brute force protection to default admin --- security/Member.php | 4 ++-- security/MemberAuthenticator.php | 7 +++++-- tests/security/MemberAuthenticatorTest.php | 18 ++++++++++++++++++ 3 files changed, 25 insertions(+), 4 deletions(-) diff --git a/security/Member.php b/security/Member.php index c7fe84abd..23c771a3e 100644 --- a/security/Member.php +++ b/security/Member.php @@ -349,7 +349,7 @@ class Member extends DataObject implements TemplateGlobalProvider { * Returns true if this user is locked out */ public function isLockedOut() { - return $this->LockedOutUntil && time() < strtotime($this->LockedOutUntil); + return $this->LockedOutUntil && SS_Datetime::now()->Format('U') < strtotime($this->LockedOutUntil); } /** @@ -1565,7 +1565,7 @@ class Member extends DataObject implements TemplateGlobalProvider { if($this->FailedLoginCount >= self::config()->lock_out_after_incorrect_logins) { $lockoutMins = self::config()->lock_out_delay_mins; - $this->LockedOutUntil = date('Y-m-d H:i:s', time() + $lockoutMins*60); + $this->LockedOutUntil = date('Y-m-d H:i:s', SS_Datetime::now()->Format('U') + $lockoutMins*60); $this->write(); } } diff --git a/security/MemberAuthenticator.php b/security/MemberAuthenticator.php index 4fa72b8cd..6f8a473dd 100644 --- a/security/MemberAuthenticator.php +++ b/security/MemberAuthenticator.php @@ -49,8 +49,11 @@ class MemberAuthenticator extends Authenticator { if($asDefaultAdmin) { // If logging is as default admin, ensure record is setup correctly $member = Member::default_admin(); - $success = Security::check_default_admin($email, $data['Password']); - if($success) return $member; + $success = !$member->isLockedOut() && Security::check_default_admin($email, $data['Password']); + //protect against failed login + if($success) { + return $member; + } } // Attempt to identify user by email diff --git a/tests/security/MemberAuthenticatorTest.php b/tests/security/MemberAuthenticatorTest.php index 1b1f6c17b..3278a6eee 100644 --- a/tests/security/MemberAuthenticatorTest.php +++ b/tests/security/MemberAuthenticatorTest.php @@ -164,4 +164,22 @@ class MemberAuthenticatorTest extends SapphireTest { $this->assertEquals('The provided details don't seem to be correct. Please try again.', $form->Message()); $this->assertEquals('bad', $form->MessageType()); } + + public function testDefaultAdminLockOut() + { + Config::inst()->update('Member', 'lock_out_after_incorrect_logins', 1); + Config::inst()->update('Member', 'lock_out_delay_mins', 10); + SS_Datetime::set_mock_now('2016-04-18 00:00:00'); + $controller = new Security(); + $form = new Form($controller, 'Form', new FieldList(), new FieldList()); + + // Test correct login + MemberAuthenticator::authenticate(array( + 'Email' => 'admin', + 'Password' => 'wrongpassword' + ), $form); + + $this->assertTrue(Member::default_admin()->isLockedOut()); + $this->assertEquals(Member::default_admin()->LockedOutUntil, '2016-04-18 00:10:00'); + } } From a24c8260b1d048dc6a0836eb1be9a1ca2056e770 Mon Sep 17 00:00:00 2001 From: Daniel Hensby Date: Mon, 18 Apr 2016 23:25:51 +0100 Subject: [PATCH 3/9] [SS-2016-004] FIX Store current page IDs as ints --- admin/code/LeftAndMain.php | 1 + 1 file changed, 1 insertion(+) diff --git a/admin/code/LeftAndMain.php b/admin/code/LeftAndMain.php index 226fa5853..9b23f2821 100644 --- a/admin/code/LeftAndMain.php +++ b/admin/code/LeftAndMain.php @@ -1469,6 +1469,7 @@ class LeftAndMain extends Controller implements PermissionProvider { * @param int $id */ public function setCurrentPageID($id) { + $id = (int)$id; Session::set($this->sessionNamespace() . ".currentPage", $id); } From a6bd22ab2f3b11a054d20be13306a19089510989 Mon Sep 17 00:00:00 2001 From: Daniel Hensby Date: Mon, 18 Apr 2016 17:50:31 +0100 Subject: [PATCH 4/9] [SS-2016-006] FIX dont disable XSS for login forms --- docs/en/04_Changelogs/3.1.19.md | 37 +++++++++++++++++++++++++++++++++ security/LoginForm.php | 5 ----- 2 files changed, 37 insertions(+), 5 deletions(-) create mode 100644 docs/en/04_Changelogs/3.1.19.md diff --git a/docs/en/04_Changelogs/3.1.19.md b/docs/en/04_Changelogs/3.1.19.md new file mode 100644 index 000000000..d911a0bc3 --- /dev/null +++ b/docs/en/04_Changelogs/3.1.19.md @@ -0,0 +1,37 @@ +# 3.1.19 + +## Upgrading + +`LoginForm` no longer disables CSRF protection. This may cause regressions on sites that statically publish pages with +login forms or other changes. To re-enable this, you'll need to use the `Injector` to create a custom login form. + +Define a login form: + +```php +class CustomLoginForm extends MemberLoginForm { + + public function __construct($controller, $name, $fields = null, $actions = null, $checkCurrentUser = true) + { + parent::__construct($controller, $name, $fields, $actions, $checkCurrentUser); + + $this->disableSecurityToken(); + } + +} +``` + +Add this to mysite/_config/config.yml + +```yaml +Injector: + MemberLoginForm: + class: CustomLoginForm +``` + + + +## Change Log + +### Security + +### Bugfixes diff --git a/security/LoginForm.php b/security/LoginForm.php index 6a2d00cd7..026fc2c7d 100644 --- a/security/LoginForm.php +++ b/security/LoginForm.php @@ -10,11 +10,6 @@ * @subpackage security */ abstract class LoginForm extends Form { - public function __construct($controller, $name, $fields, $actions) { - parent::__construct($controller, $name, $fields, $actions); - - $this->disableSecurityToken(); - } /** * Authenticator class to use with this login form From 1ccd3926e3dcecaa5c1b4f26a390d9eacc24a893 Mon Sep 17 00:00:00 2001 From: Daniel Hensby Date: Mon, 18 Apr 2016 22:02:35 +0100 Subject: [PATCH 5/9] [SS-2016-001] FIX Properly check backurl on CMSSecurity@success --- security/CMSSecurity.php | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/security/CMSSecurity.php b/security/CMSSecurity.php index d0dd00d02..545111ed5 100644 --- a/security/CMSSecurity.php +++ b/security/CMSSecurity.php @@ -186,9 +186,16 @@ PHP // Get redirect url $controller = $this->getResponseController(_t('CMSSecurity.SUCCESS', 'Success')); - $backURL = $this->request->requestVar('BackURL') - ?: Session::get('BackURL') - ?: Director::absoluteURL(AdminRootController::config()->url_base, true); + $backURLs = array( + $this->getRequest()->requestVar('BackURL'), + Session::get('BackURL'), + Director::absoluteURL(AdminRootController::config()->url_base, true), + ); + foreach ($backURLs as $backURL) { + if ($backURL && Director::is_site_url($backURL)) { + break; + } + } // Show login $controller = $controller->customise(array( From 686db04a0a82df2bc8a18671a1df21ecb8e2e5dd Mon Sep 17 00:00:00 2001 From: Daniel Hensby Date: Thu, 5 May 2016 02:05:54 +0100 Subject: [PATCH 6/9] Update translations --- javascript/lang/bg.js | 47 ++++++++++++++++++++++++++++++++++++ javascript/lang/src/bg.js | 41 ++++++++++++++++++++++++++++++++ lang/bg.yml | 50 ++++++++++++++++++++++++++++++++++++++- lang/cs.yml | 2 +- lang/de.yml | 1 + lang/eo.yml | 16 +++++++++++++ lang/fi.yml | 5 ---- lang/hr.yml | 1 + lang/it.yml | 4 +--- lang/sk.yml | 4 ++-- 10 files changed, 159 insertions(+), 12 deletions(-) create mode 100644 javascript/lang/bg.js create mode 100644 javascript/lang/src/bg.js diff --git a/javascript/lang/bg.js b/javascript/lang/bg.js new file mode 100644 index 000000000..da5ac1cf4 --- /dev/null +++ b/javascript/lang/bg.js @@ -0,0 +1,47 @@ +// This file was generated by silverstripe/cow from javascript/lang/src/bg.js. +// See https://github.com/tractorcow/cow for details +if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { + if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +} else { + ss.i18n.addDictionary('bg', { + "VALIDATOR.FIELDREQUIRED": "Полето \"%s\" е задължително.", + "HASMANYFILEFIELD.UPLOADING": "Качване... %s", + "TABLEFIELD.DELETECONFIRMMESSAGE": "Да бъде ли изтрит този запис?", + "LOADING": "зареждане...", + "UNIQUEFIELD.SUGGESTED": "Стойността е променена '%s' : %s", + "UNIQUEFIELD.ENTERNEWVALUE": "Трябва да въведете валидна стойност в това поле", + "UNIQUEFIELD.CANNOTLEAVEEMPTY": "Полето не може да остане празно", + "RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Символът '%s' не може да бъде използван в това поле", + "UPDATEURL.CONFIRM": "Would you like me to change the URL to:\n\n%s/\n\nClick Ok to change the URL, click Cancel to leave it as:\n\n%s", + "UPDATEURL.CONFIRMURLCHANGED": "URL адресът беше сменен на\n'%s'", + "FILEIFRAMEFIELD.DELETEFILE": "Изтрий файла", + "FILEIFRAMEFIELD.UNATTACHFILE": "Премахни файла", + "FILEIFRAMEFIELD.DELETEIMAGE": "Изтрий снимката", + "FILEIFRAMEFIELD.CONFIRMDELETE": "Да бъде ли изтрит този файл?", + "LeftAndMain.IncompatBrowserWarning": "Your browser is not compatible with the CMS interface. Please use Internet Explorer 7+, Google Chrome 10+ or Mozilla Firefox 3.5+.", + "GRIDFIELD.ERRORINTRANSACTION": "Възникна грешка при извличане на данни от сървъра\n Опитайте отново по-късно.", + "HtmlEditorField.SelectAnchor": "Select an anchor", + "UploadField.ConfirmDelete": "Този файл ще бъде изтрит от сървъра. Сигурни ли сте?", + "UploadField.PHP_MAXFILESIZE": "Големината на файла надхвърля upload_max_filesize (php.ini директивата)", + "UploadField.HTML_MAXFILESIZE": "Големината на файла надхвърле MAX_FILE_SIZE (директива на HTML формата)", + "UploadField.ONLYPARTIALUPLOADED": "Файлът беше качен частично", + "UploadField.NOFILEUPLOADED": "Файлът не беше качен", + "UploadField.NOTMPFOLDER": "Липсва временна папка", + "UploadField.WRITEFAILED": "Файлът не можа да бъде записан", + "UploadField.STOPEDBYEXTENSION": "File upload stopped by extension", + "UploadField.TOOLARGE": "Много голям файл", + "UploadField.TOOSMALL": "Файлът е много малък", + "UploadField.INVALIDEXTENSION": "Това разширение не е разрешено", + "UploadField.MAXNUMBEROFFILESSIMPLE": "Максималния брой файлове е надхвърлен", + "UploadField.UPLOADEDBYTES": "Uploaded bytes exceed file size", + "UploadField.EMPTYRESULT": "Empty file upload result", + "UploadField.LOADING": "Зареждане ...", + "UploadField.Editing": "Редактиране ...", + "UploadField.Uploaded": "Качен", + "UploadField.OVERWRITEWARNING": "Вече съществува файл с това име", + "TreeDropdownField.ENTERTOSEARCH": "Натисни Enter за търсена", + "TreeDropdownField.OpenLink": "Отвори", + "TreeDropdownField.FieldTitle": "Избери", + "TreeDropdownField.SearchFieldTitle": "Избери или Търси" +}); +} \ No newline at end of file diff --git a/javascript/lang/src/bg.js b/javascript/lang/src/bg.js new file mode 100644 index 000000000..2d840619d --- /dev/null +++ b/javascript/lang/src/bg.js @@ -0,0 +1,41 @@ +{ + "VALIDATOR.FIELDREQUIRED": "Полето \"%s\" е задължително.", + "HASMANYFILEFIELD.UPLOADING": "Качване... %s", + "TABLEFIELD.DELETECONFIRMMESSAGE": "Да бъде ли изтрит този запис?", + "LOADING": "зареждане...", + "UNIQUEFIELD.SUGGESTED": "Стойността е променена '%s' : %s", + "UNIQUEFIELD.ENTERNEWVALUE": "Трябва да въведете валидна стойност в това поле", + "UNIQUEFIELD.CANNOTLEAVEEMPTY": "Полето не може да остане празно", + "RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Символът '%s' не може да бъде използван в това поле", + "UPDATEURL.CONFIRM": "Would you like me to change the URL to:\n\n%s/\n\nClick Ok to change the URL, click Cancel to leave it as:\n\n%s", + "UPDATEURL.CONFIRMURLCHANGED": "URL адресът беше сменен на\n'%s'", + "FILEIFRAMEFIELD.DELETEFILE": "Изтрий файла", + "FILEIFRAMEFIELD.UNATTACHFILE": "Премахни файла", + "FILEIFRAMEFIELD.DELETEIMAGE": "Изтрий снимката", + "FILEIFRAMEFIELD.CONFIRMDELETE": "Да бъде ли изтрит този файл?", + "LeftAndMain.IncompatBrowserWarning": "Your browser is not compatible with the CMS interface. Please use Internet Explorer 7+, Google Chrome 10+ or Mozilla Firefox 3.5+.", + "GRIDFIELD.ERRORINTRANSACTION": "Възникна грешка при извличане на данни от сървъра\n Опитайте отново по-късно.", + "HtmlEditorField.SelectAnchor": "Select an anchor", + "UploadField.ConfirmDelete": "Този файл ще бъде изтрит от сървъра. Сигурни ли сте?", + "UploadField.PHP_MAXFILESIZE": "Големината на файла надхвърля upload_max_filesize (php.ini директивата)", + "UploadField.HTML_MAXFILESIZE": "Големината на файла надхвърле MAX_FILE_SIZE (директива на HTML формата)", + "UploadField.ONLYPARTIALUPLOADED": "Файлът беше качен частично", + "UploadField.NOFILEUPLOADED": "Файлът не беше качен", + "UploadField.NOTMPFOLDER": "Липсва временна папка", + "UploadField.WRITEFAILED": "Файлът не можа да бъде записан", + "UploadField.STOPEDBYEXTENSION": "File upload stopped by extension", + "UploadField.TOOLARGE": "Много голям файл", + "UploadField.TOOSMALL": "Файлът е много малък", + "UploadField.INVALIDEXTENSION": "Това разширение не е разрешено", + "UploadField.MAXNUMBEROFFILESSIMPLE": "Максималния брой файлове е надхвърлен", + "UploadField.UPLOADEDBYTES": "Uploaded bytes exceed file size", + "UploadField.EMPTYRESULT": "Empty file upload result", + "UploadField.LOADING": "Зареждане ...", + "UploadField.Editing": "Редактиране ...", + "UploadField.Uploaded": "Качен", + "UploadField.OVERWRITEWARNING": "Вече съществува файл с това име", + "TreeDropdownField.ENTERTOSEARCH": "Натисни Enter за търсена", + "TreeDropdownField.OpenLink": "Отвори", + "TreeDropdownField.FieldTitle": "Избери", + "TreeDropdownField.SearchFieldTitle": "Избери или Търси" +} \ No newline at end of file diff --git a/lang/bg.yml b/lang/bg.yml index 8f49ecdd5..6409f0200 100644 --- a/lang/bg.yml +++ b/lang/bg.yml @@ -1,25 +1,36 @@ bg: AssetAdmin: + ALLOWEDEXTS: 'Позволени разширения на файловете за качване' + HIDEALLOWEDEXTS: 'Скрий позволените разширения' NEWFOLDER: НоваПапка + SHOWALLOWEDEXTS: 'Покажи позволените разширения' AssetTableField: CREATED: 'Създаден' DIM: Размери FILENAME: Име на файл FOLDER: Папка + HEIGHT: Височина LASTEDIT: 'Последна промяна' OWNER: Собственик SIZE: 'Големина на файла' TITLE: Заглавие TYPE: 'Тип на файла' + URL: URL + WIDTH: Широчина AssetUploadField: ChooseFiles: 'Избери файлове' DRAGFILESHERE: 'Завлечете файловете тук' DROPAREA: 'Зона за пускане' EDITALL: 'Редакция на всички' EDITANDORGANIZE: 'Редактиране и подреждане' + EDITINFO: 'Редактиране на файлове' FILES: Файлове FROMCOMPUTER: 'Избери файлове от компютъра' + FROMCOMPUTERINFO: 'Качи от компютъра' + INSERTURL: 'Въведи URL на файла' + REMOVEINFO: 'Премахни файла от това поле' TOTAL: Общо + TOUPLOAD: 'Избери файлове за качване...' UPLOADINPROGRESS: 'Моля, изчакайте... файловете се качват' UPLOADOR: ИЛИ BBCodeParser: @@ -53,19 +64,40 @@ bg: ENTERINFO: 'Моля, въведете потребителско име и парола.' ERRORNOTADMIN: 'Този потребител не е администратор.' ERRORNOTREC: 'Това потребителско име / парола не е разпознато' + Boolean: + ANY: Всички + NOANSWER: 'Не' + YESANSWER: 'Да' CMSLoadingScreen_ss: LOADING: Зареждане ... + REQUIREJS: 'Необходимо е да активирате JavaScript.' CMSMain: ACCESS: 'Достъп до секция ''{title}''' ACCESSALLINTERFACES: 'Достъп до всички секции на CMS' SAVE: Запис + CMSMemberLoginForm: + BUTTONFORGOTPASSWORD: 'Забравена парола?' + BUTTONLOGIN: 'Влез обратно' + BUTTONLOGOUT: 'Изход' + CMSPageHistoryController_versions_ss: + PREVIEW: 'Преглед на сайта' + CMSPagesController_Tools_ss: + FILTER: Филтър CMSProfileController: MENUTITLE: 'Моят профил' + CMSSecurity: + SUCCESS: Успешно + TimedOutTitleAnonymous: 'Вашата сесия е изтекла.' + TimedOutTitleMember: 'Здравей {name}!
Твоята сесия е изтекла.' ChangePasswordEmail_ss: CHANGEPASSWORDTEXT1: 'Вие сменихте вашата парола за' CHANGEPASSWORDTEXT2: 'Вече можете да ползвате следните данни за вход:' + EMAIL: Ел. поща HELLO: Здравей! PASSWORD: Парола + CheckboxField: + NOANSWER: 'Не' + YESANSWER: 'Да' ConfirmedPasswordField: ATLEAST: 'Паролата трябва да е дълга мин. {min} символа.' BETWEEN: 'Паролата трябва да е дълга от {min} до {max} символа.' @@ -80,18 +112,34 @@ bg: PLURALNAME: 'Обекти с данни' SINGULARNAME: 'Обект с данни' Date: + DAY: ден + DAYS: дни + HOUR: час + HOURS: часа + LessThanMinuteAgo: 'по-малко от минута' + MIN: минута + MINS: минути + MONTH: месец + MONTHS: месеци + SEC: секунда + SECS: секунди TIMEDIFFAGO: 'преди {difference}' TIMEDIFFIN: 'за {difference}' + YEAR: година + YEARS: години DateField: - NOTSET: 'Не нагласено' + NOTSET: 'не е зададена' TODAY: днес VALIDDATEFORMAT2: 'Моля, въведете валиден формат за дата ({format})' VALIDDATEMAXDATE: 'Датата трябва да бъде същата или преди ({date})' VALIDDATEMINDATE: 'Датата трябва да бъде същата или след ({date})' + DatetimeField: + NOTSET: 'не е зададена' Director: INVALID_REQUEST: 'Грешна заявка' DropdownField: CHOOSE: (Избери) + CHOOSESEARCH: '(Избери или Търси)' EmailField: VALIDATION: 'Моля, въведете имейл адрес' Enum: diff --git a/lang/cs.yml b/lang/cs.yml index 33d6be50c..6b0139ef9 100644 --- a/lang/cs.yml +++ b/lang/cs.yml @@ -302,7 +302,7 @@ cs: FindInFolder: 'Hledat ve složce' IMAGEALT: 'Alternativní text (alt)' IMAGEALTTEXT: 'Alternativní text (alt) - bude ukázán, když obrázek nemúže být zobrazen' - IMAGEALTTEXTDESC: 'Zobrazeno na obrazovce, nebo když obrázek nemůže být zobrazen' + IMAGEALTTEXTDESC: 'Zobrazeno na obrazovce, když obrázek nemůže být zobrazen' IMAGEDIMENSIONS: Rozměry IMAGEHEIGHTPX: Výška IMAGETITLE: 'Titul text (tooltip) - další informace o obrázku' diff --git a/lang/de.yml b/lang/de.yml index 6bfc998b4..6ca61ee83 100644 --- a/lang/de.yml +++ b/lang/de.yml @@ -331,6 +331,7 @@ de: CANT_REORGANISE: 'Sie besitzen nicht die benötigten Zugriffsrechte um Seiten der höchsten Ebene zu bearbeiten. Ihre Änderungen wurden nicht gespeichert.' DELETED: Gelöscht. HELP: Hilfe + PAGETYPE: 'Seitentyp' PERMAGAIN: 'Sie wurden aus dem System ausgeloggt. Falls Sie sich wieder einloggen möchten, geben Sie bitte Benutzernamen und Passwort im untenstehenden Formular an.' PERMALREADY: 'Leider dürfen Sie diesen Teil des CMS nicht aufrufen. Wenn Sie sich als jemand anderes einloggen wollen, benutzen Sie bitte das nachstehende Formular.' PERMDEFAULT: 'Sie müssen angemeldet sein, um auf diesen Bereich zugreifen zu können. Bitte geben Sie Ihre Zugangsdaten ein.' diff --git a/lang/eo.yml b/lang/eo.yml index 0dc9dcd40..f4237aec2 100644 --- a/lang/eo.yml +++ b/lang/eo.yml @@ -1,5 +1,7 @@ eo: AssetAdmin: + ALLOWEDEXTS: 'Permesitaj alŝutaj dosieraj sufiksoj' + HIDEALLOWEDEXTS: 'Kaŝi permesitajn sufiksojn' NEWFOLDER: Nova dosierujo SHOWALLOWEDEXTS: 'Vidigi permesitajn sufiksojn' AssetTableField: @@ -7,12 +9,14 @@ eo: DIM: Dimensioj FILENAME: Nomo de dosiero FOLDER: Dosierujo + HEIGHT: Alto LASTEDIT: 'Laste ŝanĝita' OWNER: Posedanto SIZE: 'Grando' TITLE: Titolo TYPE: 'Tipo' URL: URL + WIDTH: Larĝo AssetUploadField: ChooseFiles: 'Elekti dosierojn' DRAGFILESHERE: 'Ŝovi dosieron ĉi tien' @@ -23,7 +27,10 @@ eo: FILES: Dosieroj FROMCOMPUTER: 'Elekti dosierojn el via komputilo' FROMCOMPUTERINFO: 'Alŝuti el via komputilo' + INSERTURL: 'Enigi el URL' + REMOVEINFO: 'Forigi ĉi tiun dosieron el ĉi tiu kampo' TOTAL: Totalo + TOUPLOAD: 'Elekti dosierojn alŝutotajn...' UPLOADINPROGRESS: 'Bonvolu atendi...alŝuto daŭras' UPLOADOR: AŬ BBCodeParser: @@ -146,6 +153,7 @@ eo: INVALID_REQUEST: 'Malvalida peto' DropdownField: CHOOSE: (Elekti) + CHOOSESEARCH: '(Elekti aŭ serĉi)' SOURCE_VALIDATION: 'Bonvolu elekti valoron el la listo donita. {value} ne estas valida agordo' EmailField: VALIDATION: 'Bonvolu enigi readreson' @@ -293,12 +301,15 @@ eo: FROMWEB: 'El la TTT' FindInFolder: 'Serĉi en dosierujo' IMAGEALT: 'Alternativa teksto (alt)' + IMAGEALTTEXT: 'Alternativa teksto (alt) - vidigi ĝin se ne eblas vidigi bildon' + IMAGEALTTEXTDESC: 'Vidigota al ekranlegiloj aŭ se ne eblas vidigi bildon' IMAGEDIMENSIONS: Dimensioj IMAGEHEIGHTPX: Alto IMAGETITLE: 'Titola teksto (ŝpruchelpilo) - por plua informo pri la bildo' IMAGETITLETEXT: 'Teksto de titolo (ŝpruchelpilo)' IMAGETITLETEXTDESC: 'Por plua informo pri la bildo' IMAGEWIDTHPX: Larĝo + INSERTMEDIA: 'Enigi registraĵojn' LINK: 'Ligilo' LINKANCHOR: 'Ankri al ĉi tiu paĝo' LINKDESCR: 'Ligila priskribo' @@ -311,7 +322,9 @@ eo: PAGE: Paĝo SUBJECT: 'Temo de retpoŝto' URL: URL + URLDESCRIPTION: 'Enigu videojn kaj bildojn el la TTT en vian paĝon simple enigante la URL de la dosiero. Certigu ke vi havas permesojn antaŭ ol kunhavigi registraĵojn rekte el la TTT.

Bonvolu noti ke dosieroj ne aldoniĝas al la konservejo de dosieroj de la CMS sed dosieroj enkorpiĝas el ties origina loko. Se ial la dosiero ne plu haveblas en ĝia origina loko, ĝi ne plu estos videbla en ĉi tiu paĝo.' URLNOTANOEMBEDRESOURCE: 'La URL ''{url}'' ne estas konvertebla al memorilo.' + UpdateMEDIA: 'Ĝisdatigi registraĵojn' Image: PLURALNAME: Dosieroj SINGULARNAME: Dosiero @@ -323,10 +336,13 @@ eo: LeftAndMain: CANT_REORGANISE: 'Vi ne rajtas ŝanĝi supronivelajn paĝojn. Via ŝanĝo ne konserviĝis.' DELETED: Forigita. + DropdownBatchActionsDefault: 'Elekti agon...' HELP: Helpo + PAGETYPE: 'Tipo de paĝo' PERMAGAIN: 'Vin adiaŭis la CMS. Se vi volas denove saluti, enigu salutnomon kaj pasvorton malsupre.' PERMALREADY: 'Bedaŭrinde vi ne povas aliri tiun parton de la CMS. Se vi volas ensaluti kiel aliulo, faru tion sube.' PERMDEFAULT: 'Necesas ensaluti por aliri la administran zonon; bonvolu enigi viajn akreditaĵoj sube.' + PLEASESAVE: 'Bonvolu konservi paĝon: Ne eblis ĝisdatigi ĉi tiun paĝon ĉar ĝi ankoraŭ ne estas konservita.' PreviewButton: Antaŭvido REORGANISATIONSUCCESSFUL: 'Sukcese reorganizis la retejan arbon.' SAVEDUP: Konservita. diff --git a/lang/fi.yml b/lang/fi.yml index ff929336d..e44c68f9b 100644 --- a/lang/fi.yml +++ b/lang/fi.yml @@ -301,8 +301,6 @@ fi: FROMWEB: 'Webistä' FindInFolder: 'Etsi kansiosta' IMAGEALT: 'Vaihtoehtoinen teksti (alt)' - IMAGEALTTEXT: 'Vaihtoehtoinen teksti (alt) - näytetään jos kuvaa ei voida näyttää' - IMAGEALTTEXTDESC: 'Näytetään ruudunlukuohjelmille tai jos kuvia ei voi näyttää' IMAGEDIMENSIONS: Mitat IMAGEHEIGHTPX: Korkeus IMAGETITLE: 'Otsikko (tooltip) - kuvan lisätietoja varten' @@ -336,13 +334,10 @@ fi: LeftAndMain: CANT_REORGANISE: 'Sinulla ei ole oikeuksia mennä ylemmän tason sivuille. Muutoksiasi ei tallennettu.' DELETED: Poistettu. - DropdownBatchActionsDefault: 'Valitse toiminto...' HELP: Ohje - PAGETYPE: 'Sivutyyppi' PERMAGAIN: 'Olet kirjautunut ulos CMS:stä. Jos haluat kirjautua uudelleen sisään, syötä käyttäjätunnuksesi ja salasanasi alla.' PERMALREADY: 'Pahoittelut, mutta et pääse tähän osaan CMS:ää. Jos haluat kirjautua jonain muuna, voit tehdä sen alta.' PERMDEFAULT: 'Sinun tulee olla kirjautuneena ylläpito-osioon; syötä tunnuksesi kenttiin.' - PLEASESAVE: 'Tallenna sivu: tätä sivua ei voitu päivittää, koska sitä ei ole vielä tallennettu.' PreviewButton: Esikatselu REORGANISATIONSUCCESSFUL: 'Hakemistopuu uudelleenjärjestettiin onnistuneesti.' SAVEDUP: Tallennettu. diff --git a/lang/hr.yml b/lang/hr.yml index de353f065..44493056d 100644 --- a/lang/hr.yml +++ b/lang/hr.yml @@ -79,6 +79,7 @@ hr: TEXT2: 'link za resetiranje lozinke' TEXT3: za Form: + SubmitBtnLabel: Kreni VALIDATIONNOTUNIQUE: 'Unešena vrijednost nije unikatna' VALIDATIONPASSWORDSDONTMATCH: 'Lozinke se ne slažu' VALIDATIONPASSWORDSNOTEMPTY: 'Lozinke moraju imati najmanje jedan broj i jedan alfanumerički znak' diff --git a/lang/it.yml b/lang/it.yml index e10283e12..9561265b0 100644 --- a/lang/it.yml +++ b/lang/it.yml @@ -318,9 +318,7 @@ it: PAGE: Pagina SUBJECT: 'Oggetto email' URL: URL - URLDESCRIPTION: 'Inserisci video e immagini dal Web nella tua pagina semplicemente inserendo l''URL del file. - - Si sicuro di avere i diritti o i permessi prima di condividere media direttamente dal Web.

NB : i file non sono aggiunti allo storage file del CMS, ma incorpora il file dalla sua location principale, se per un qualsiasi motivo il file non e'' più raggiungibile nella sua location principale, non sara'' più visibile su questa pagina.' + URLDESCRIPTION: 'Inserisci video e immagini dal Web nella tua pagina semplicemente inserendo l''URL del file. Si sicuro di avere i diritti o i permessi prima di condividere media direttamente dal Web.

NB : i file non sono aggiunti allo storage file del CMS, ma incorpora il file dalla sua location principale, se per un qualsiasi motivo il file non e'' più raggiungibile nella sua location principale, non sara'' più visibile su questa pagina.' URLNOTANOEMBEDRESOURCE: 'L''URL ''{url}'' non può essere convertito in una risorsa media.' UpdateMEDIA: 'Aggiorna Media' Image: diff --git a/lang/sk.yml b/lang/sk.yml index 6dd723391..2508e3d38 100644 --- a/lang/sk.yml +++ b/lang/sk.yml @@ -301,7 +301,7 @@ sk: FROMWEB: 'Z webu' FindInFolder: 'Vyhľadať v priečinku' IMAGEALT: 'Atlernatívny text (alt)' - IMAGEALTTEXT: 'Atlernatívny text (alt) - sa zobrazí, ak nemôže byť obrázok zobrazený' + IMAGEALTTEXT: 'Atlernatívny text (alt) - zobrazí sa, ak nemože byť zobrazený obrázok' IMAGEALTTEXTDESC: 'Zobrazí sa na obrazovke, alebo ak obrázok nemôže byť zobrazený' IMAGEDIMENSIONS: Rozmery IMAGEHEIGHTPX: Výška @@ -338,7 +338,7 @@ sk: DELETED: Zmazané. DropdownBatchActionsDefault: 'Vybrať akciu...' HELP: Pomoc - PAGETYPE: 'Typ stránky:' + PAGETYPE: 'Typ stránky' PERMAGAIN: 'Boli ste odhlásený' PERMALREADY: 'Je nám ľúto, ale k tejto časti CMS nemáte prístup . Ak sa chcete prihlásiť ako niekto iný, urobte tak nižšie.' PERMDEFAULT: 'Musíte byť prihlásený/á k prístupu do oblasti administrácie, zadajte vaše prihlasovacie údaje dole, prosím.' From ee5133f355a1d89c25d6594bbceb0bb00a31867f Mon Sep 17 00:00:00 2001 From: Daniel Hensby Date: Thu, 5 May 2016 09:33:57 +0100 Subject: [PATCH 7/9] Added 3.1.19-rc1 changelog --- docs/en/04_Changelogs/rc/3.1.19-rc1.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 docs/en/04_Changelogs/rc/3.1.19-rc1.md diff --git a/docs/en/04_Changelogs/rc/3.1.19-rc1.md b/docs/en/04_Changelogs/rc/3.1.19-rc1.md new file mode 100644 index 000000000..84436d039 --- /dev/null +++ b/docs/en/04_Changelogs/rc/3.1.19-rc1.md @@ -0,0 +1,24 @@ +# 3.1.19-rc1 + + + +## Change Log + +### Security + + * 2016-04-18 [3c0f2e8](https://github.com/silverstripe/silverstripe-framework/commit/3c0f2e8e11a1bead64d869854b9dfc0f80e7579a) Add CSFR protection to tree reorganise (Daniel Hensby) - See [ss-2015-029](http://www.silverstripe.org/download/security-releases/ss-2015-029) + * 2016-04-18 [a24c826](https://github.com/silverstripe/silverstripe-framework/commit/a24c8260b1d048dc6a0836eb1be9a1ca2056e770) Store current page IDs as ints (Daniel Hensby) - See [ss-2016-004](http://www.silverstripe.org/download/security-releases/ss-2016-004) + * 2016-04-18 [1ccd392](https://github.com/silverstripe/silverstripe-framework/commit/1ccd3926e3dcecaa5c1b4f26a390d9eacc24a893) Properly check backurl on CMSSecurity@success (Daniel Hensby) - See [ss-2016-001](http://www.silverstripe.org/download/security-releases/ss-2016-001) + * 2016-04-18 [f32c893](https://github.com/silverstripe/silverstripe-framework/commit/f32c893546340c8c279fd1ab6d4269e9d6539bc2) Apply brute force protection to default admin (Daniel Hensby) - See [ss-2016-005](http://www.silverstripe.org/download/security-releases/ss-2016-005) + * 2016-04-18 [a6bd22a](https://github.com/silverstripe/silverstripe-framework/commit/a6bd22ab2f3b11a054d20be13306a19089510989) dont disable XSS for login forms (Daniel Hensby) - See [ss-2016-006](http://www.silverstripe.org/download/security-releases/ss-2016-006) + +### Bugfixes + + * 2016-04-24 [fde6376](https://github.com/silverstripe/silverstripe-framework/commit/fde6376996dbaba31601065869c60676845eeb85) Admin bloacklisted messages using correct $.inArray check (Daniel Hensby) + * 2016-04-12 [36283b8](https://github.com/silverstripe/silverstripe-framework/commit/36283b86d5305cc2c5d4823e54972cd301978389) Stop "success" message showing in CMS (Daniel Hensby) + * 2016-03-31 [6ec2656](https://github.com/silverstripe/silverstripe-framework/commit/6ec26562019454483db79132a5c076cfa87dfe34) fix ErrorControlChain causing errors to be displayed if display_errors in php.ini is false (Damian Mooyman) + * 2016-03-18 [add2ecd](https://github.com/silverstripe/silverstripe-framework/commit/add2ecdf8bb977a0234cf773b578eae9872a0d28) Parameter tokens now redirect to correct url if mod_rewrite is off (Daniel Hensby) + * 2016-03-10 [bc31d9c](https://github.com/silverstripe/silverstripe-cms/commit/bc31d9ca9c667ba9015e35d5eae20158056a7b7c) Use `Controller::join_links()` in Reports (Daniel Hensby) + * 2016-03-08 [0364204](https://github.com/silverstripe/silverstripe-cms/commit/036420470da5def5c8e45c94601d3494273d476c) Incorrect title attribute on CMS tabs (Loz Calver) + * 2016-03-01 [817b836](https://github.com/silverstripe/silverstripe-framework/commit/817b83687028894574ba5a8e8ee8f3af21f23188) getIP from behind a load-balancer that adds many IPs to the header (Daniel Hensby) + * 2015-01-08 [adf0f10](https://github.com/silverstripe/silverstripe-framework/commit/adf0f102cc7a04cf8fcac8743801d48214118cad) Fixes CMS errors when viewing history on "Deleted" pages. (Russell Michell) From 60644a5be8306a170762321961c2f28946ddd495 Mon Sep 17 00:00:00 2001 From: Damian Mooyman Date: Wed, 11 May 2016 10:58:25 +1200 Subject: [PATCH 8/9] Update translations --- admin/javascript/lang/cs.js | 8 ++-- admin/javascript/lang/de.js | 8 ++-- admin/javascript/lang/en.js | 26 ++++++------ admin/javascript/lang/eo.js | 8 ++-- admin/javascript/lang/es.js | 8 ++-- admin/javascript/lang/fa_IR.js | 8 ++-- admin/javascript/lang/fi.js | 8 ++-- admin/javascript/lang/fr.js | 8 ++-- admin/javascript/lang/id.js | 8 ++-- admin/javascript/lang/id_ID.js | 8 ++-- admin/javascript/lang/it.js | 8 ++-- admin/javascript/lang/ja.js | 8 ++-- admin/javascript/lang/lt.js | 8 ++-- admin/javascript/lang/mi.js | 8 ++-- admin/javascript/lang/nb.js | 8 ++-- admin/javascript/lang/nl.js | 22 +++++----- admin/javascript/lang/pl.js | 8 ++-- admin/javascript/lang/ro.js | 8 ++-- admin/javascript/lang/ru.js | 8 ++-- admin/javascript/lang/sk.js | 8 ++-- admin/javascript/lang/sl.js | 8 ++-- admin/javascript/lang/sr.js | 8 ++-- admin/javascript/lang/sr@latin.js | 8 ++-- admin/javascript/lang/sr_RS.js | 8 ++-- admin/javascript/lang/sr_RS@latin.js | 8 ++-- admin/javascript/lang/src/en.js | 18 ++++---- admin/javascript/lang/src/nl.js | 14 +++---- admin/javascript/lang/sv.js | 8 ++-- admin/javascript/lang/zh.js | 8 ++-- javascript/lang/ar.js | 8 ++-- javascript/lang/bg.js | 8 ++-- javascript/lang/cs.js | 8 ++-- javascript/lang/de.js | 8 ++-- javascript/lang/en.js | 62 ++++++++++++++-------------- javascript/lang/en_GB.js | 8 ++-- javascript/lang/eo.js | 8 ++-- javascript/lang/es.js | 8 ++-- javascript/lang/fa_IR.js | 8 ++-- javascript/lang/fi.js | 8 ++-- javascript/lang/fr.js | 8 ++-- javascript/lang/id.js | 8 ++-- javascript/lang/id_ID.js | 8 ++-- javascript/lang/it.js | 8 ++-- javascript/lang/ja.js | 8 ++-- javascript/lang/lt.js | 8 ++-- javascript/lang/mi.js | 8 ++-- javascript/lang/nb.js | 8 ++-- javascript/lang/nl.js | 8 ++-- javascript/lang/pl.js | 8 ++-- javascript/lang/ru.js | 8 ++-- javascript/lang/sk.js | 8 ++-- javascript/lang/sl.js | 8 ++-- javascript/lang/sr.js | 8 ++-- javascript/lang/sr@latin.js | 8 ++-- javascript/lang/sr_RS.js | 8 ++-- javascript/lang/sr_RS@latin.js | 8 ++-- javascript/lang/src/en.js | 54 ++++++++++++------------ javascript/lang/sv.js | 8 ++-- javascript/lang/zh.js | 8 ++-- lang/de.yml | 1 - lang/eo.yml | 5 --- lang/lt.yml | 5 --- lang/nl.yml | 57 ++++++++++++++++++++++++- lang/sk.yml | 6 +-- 64 files changed, 425 insertions(+), 269 deletions(-) diff --git a/admin/javascript/lang/cs.js b/admin/javascript/lang/cs.js index b2c72866f..2fcc6af20 100644 --- a/admin/javascript/lang/cs.js +++ b/admin/javascript/lang/cs.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/cs.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('cs', { + ss.i18n.addDictionary('cs', { "CMSMAIN.SELECTONEPAGE": "Prosím, vyberte nejméně 1 stránku", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "Máte vybráno {num} stránek.\n\nSkutečně je chcete nezveřejnit?", "CMSMAIN.BATCH_PUBLISH_PROMPT": "Máte vybráno {num} stránek.\n\nSkutečně je chcete zveřejnit?", diff --git a/admin/javascript/lang/de.js b/admin/javascript/lang/de.js index 65eb96fb2..59c0ce5a6 100644 --- a/admin/javascript/lang/de.js +++ b/admin/javascript/lang/de.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/de.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('de', { + ss.i18n.addDictionary('de', { "CMSMAIN.SELECTONEPAGE": "Bitte mindestens eine Seite auswählen", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "Sie haben {num} Seite(n) ausgewählt.\n\nWollen Sie wirklich die Veröffentlichung zurücknehmen?", "CMSMAIN.BATCH_PUBLISH_PROMPT": "Sie haben {num} Seite(n) ausgewählt.\n\nWollen Sie diese wirklich veröffentlichen?", diff --git a/admin/javascript/lang/en.js b/admin/javascript/lang/en.js index e421f3fc7..4b0fa737b 100644 --- a/admin/javascript/lang/en.js +++ b/admin/javascript/lang/en.js @@ -1,23 +1,25 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/en.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('en', { - "CMSMAIN.SELECTONEPAGE": "Please select at least one page", - "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", - "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", - "CMSMAIN.BATCH_DELETE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to delete?", + ss.i18n.addDictionary('en', { "CMSMAIN.BATCH_ARCHIVE_PROMPT": "You have {num} page(s) selected.\n\nAre you sure you want to archive these pages?\n\nThese pages and all of their children pages will be unpublished and sent to the archive.", - "CMSMAIN.BATCH_RESTORE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to restore to stage?\n\nChildren of archived pages will be restored to the root level, unless those pages are also being restored.", "CMSMAIN.BATCH_DELETELIVE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to delete these pages from live?", + "CMSMAIN.BATCH_DELETE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to delete?", + "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", + "CMSMAIN.BATCH_RESTORE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to restore to stage?\n\nChildren of archived pages will be restored to the root level, unless those pages are also being restored.", + "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", + "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "LeftAndMain.CONFIRMUNSAVED": "Are you sure you want to navigate away from this page?\n\nWARNING: Your changes have not been saved.\n\nPress OK to continue, or Cancel to stay on the current page.", "LeftAndMain.CONFIRMUNSAVEDSHORT": "WARNING: Your changes have not been saved.", - "SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Do you really want to delete %s groups?", - "ModelAdmin.SAVED": "Saved", - "ModelAdmin.REALLYDELETE": "Do you really want to delete?", + "LeftAndMain.PAGEWASDELETED": "This page was deleted. To edit a page, select it from the left.", "ModelAdmin.DELETED": "Deleted", + "ModelAdmin.REALLYDELETE": "Do you really want to delete?", + "ModelAdmin.SAVED": "Saved", "ModelAdmin.VALIDATIONERROR": "Validation Error", - "LeftAndMain.PAGEWASDELETED": "This page was deleted. To edit a page, select it from the left." + "SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Do you really want to delete %s groups?" }); } \ No newline at end of file diff --git a/admin/javascript/lang/eo.js b/admin/javascript/lang/eo.js index f46611198..342e50b7e 100644 --- a/admin/javascript/lang/eo.js +++ b/admin/javascript/lang/eo.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/eo.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('eo', { + ss.i18n.addDictionary('eo', { "CMSMAIN.SELECTONEPAGE": "Bonvole elektu almenaŭ 1 paĝon.", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "Vi elektis {num} paĝo(j)n.\n\nĈi vi vere volas malpublikigi?", "CMSMAIN.BATCH_PUBLISH_PROMPT": "Vi elektis {num} paĝo(j)n.\n\nĈi vi vere volas publikigi?", diff --git a/admin/javascript/lang/es.js b/admin/javascript/lang/es.js index 982a6fd56..b50c55b9f 100644 --- a/admin/javascript/lang/es.js +++ b/admin/javascript/lang/es.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/es.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('es', { + ss.i18n.addDictionary('es', { "CMSMAIN.SELECTONEPAGE": "Por favor, seleccione al menos una página", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "Ud tiene {num} página(s) seleccionada(s).\n\n¿Realmente la(s) quiere retirar de publicación?", "CMSMAIN.BATCH_PUBLISH_PROMPT": "Ud tiene {num} página(s) seleccionada(s).\n\n¿Realmente la(s) quiere publicar?", diff --git a/admin/javascript/lang/fa_IR.js b/admin/javascript/lang/fa_IR.js index d061aa0ca..a3a3ba20d 100644 --- a/admin/javascript/lang/fa_IR.js +++ b/admin/javascript/lang/fa_IR.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/fa_IR.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('fa_IR', { + ss.i18n.addDictionary('fa_IR', { "CMSMAIN.SELECTONEPAGE": "لطفاً حداقل ۱ صفحه را انتخاب نمایید.", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "شما {num} صفحه را انتخاب کرده‌اید.\n\nآیا واقعاً می‌خواهید انتشار آن‌ها را لغو نمایید", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/fi.js b/admin/javascript/lang/fi.js index d11ad45b8..689c42811 100644 --- a/admin/javascript/lang/fi.js +++ b/admin/javascript/lang/fi.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/fi.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('fi', { + ss.i18n.addDictionary('fi', { "CMSMAIN.SELECTONEPAGE": "Valitse vähintään yksi sivu", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "Sinulla on {num} sivu(a) valittuna.\n\nHaluatko varmasti poistaa julkaisusta?", "CMSMAIN.BATCH_PUBLISH_PROMPT": "Sinulla on {num} sivu(a) valittuna.\n\nHaluatko varmasti julkaista?", diff --git a/admin/javascript/lang/fr.js b/admin/javascript/lang/fr.js index 17ba92dc6..22814872f 100644 --- a/admin/javascript/lang/fr.js +++ b/admin/javascript/lang/fr.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/fr.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('fr', { + ss.i18n.addDictionary('fr', { "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/id.js b/admin/javascript/lang/id.js index 39c07302f..7d4534d3f 100644 --- a/admin/javascript/lang/id.js +++ b/admin/javascript/lang/id.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/id.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('id', { + ss.i18n.addDictionary('id', { "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/id_ID.js b/admin/javascript/lang/id_ID.js index 86487a3d8..f68de9246 100644 --- a/admin/javascript/lang/id_ID.js +++ b/admin/javascript/lang/id_ID.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/id_ID.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('id_ID', { + ss.i18n.addDictionary('id_ID', { "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/it.js b/admin/javascript/lang/it.js index f73c9f877..cc6f2feae 100644 --- a/admin/javascript/lang/it.js +++ b/admin/javascript/lang/it.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/it.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('it', { + ss.i18n.addDictionary('it', { "CMSMAIN.SELECTONEPAGE": "Per favore selezionare almeno una pagina", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "Hai {num} pagine selezionate.\n\nVuoi veramente nasconderle?", "CMSMAIN.BATCH_PUBLISH_PROMPT": "Hai {num} pagine selezionate.\n\nVuoi veramente pubblicarle?", diff --git a/admin/javascript/lang/ja.js b/admin/javascript/lang/ja.js index c58d71fb8..4669ae052 100644 --- a/admin/javascript/lang/ja.js +++ b/admin/javascript/lang/ja.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/ja.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('ja', { + ss.i18n.addDictionary('ja', { "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/lt.js b/admin/javascript/lang/lt.js index ba7bf01ce..0892deb1d 100644 --- a/admin/javascript/lang/lt.js +++ b/admin/javascript/lang/lt.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/lt.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('lt', { + ss.i18n.addDictionary('lt', { "CMSMAIN.SELECTONEPAGE": "Prašome pasirinkti bent vieną puslapį", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "Pažymėjote {num} puslapius(-į).\n\nAr tikrai norite nebepublikuoti?", "CMSMAIN.BATCH_PUBLISH_PROMPT": "Pažymėjote {num} puslapius(-į).\n\nAr tikrai norite publikuoti?", diff --git a/admin/javascript/lang/mi.js b/admin/javascript/lang/mi.js index be5360f25..387afd9c4 100644 --- a/admin/javascript/lang/mi.js +++ b/admin/javascript/lang/mi.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/mi.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('mi', { + ss.i18n.addDictionary('mi', { "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/nb.js b/admin/javascript/lang/nb.js index 27acba7c0..dc226caf0 100644 --- a/admin/javascript/lang/nb.js +++ b/admin/javascript/lang/nb.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/nb.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('nb', { + ss.i18n.addDictionary('nb', { "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/nl.js b/admin/javascript/lang/nl.js index 47a285db0..3eec52e0a 100644 --- a/admin/javascript/lang/nl.js +++ b/admin/javascript/lang/nl.js @@ -1,16 +1,18 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/nl.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('nl', { - "CMSMAIN.SELECTONEPAGE": "Please select at least one page", - "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", - "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", - "CMSMAIN.BATCH_DELETE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to delete?", - "CMSMAIN.BATCH_ARCHIVE_PROMPT": "You have {num} page(s) selected.\n\nAre you sure you want to archive these pages?\n\nThese pages and all of their children pages will be unpublished and sent to the archive.", - "CMSMAIN.BATCH_RESTORE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to restore to stage?\n\nChildren of archived pages will be restored to the root level, unless those pages are also being restored.", - "CMSMAIN.BATCH_DELETELIVE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to delete these pages from live?", + ss.i18n.addDictionary('nl', { + "CMSMAIN.SELECTONEPAGE": "Selecteer minstens 1 pagina.", + "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "Je hebt {num} pagina(s) geselecteerd.\n\nWeet je zeker dat je de publicatie wilt intrekken?", + "CMSMAIN.BATCH_PUBLISH_PROMPT": "Je hebt {num} pagina(s) geselecteerd.\n\nWeet je zeker dat je de pagina(s) wilt publiceren?", + "CMSMAIN.BATCH_DELETE_PROMPT": "Je hebt {num} pagina(s) geselecteerd.\n\nWeet je zeker dat je de pagina(s) wilt verwijderen?", + "CMSMAIN.BATCH_ARCHIVE_PROMPT": "Je hebt {num} pagina(s) geselecteerd.\n\nWeet je zeker dat je de pagina(s) wilt archiveren?\n\nDe publicatie van deze en onderliggende pagina's wordt ingetrokken en gearchiveerd.", + "CMSMAIN.BATCH_RESTORE_PROMPT": "Je hebt {num} pagina(s) geselecteerd.\n\nWeet je zeker dat je de pagina(s) wilt herstellen? Onderliggende pagina's worden naar het top level hersteld, tenzij deze pagina's ook worden hersteld.", + "CMSMAIN.BATCH_DELETELIVE_PROMPT": "Je hebt {num} pagina(s) geselecteerd.\n\nWeet je zeker dat je de publicatie van deze pagina's wilt intrekken?", "LeftAndMain.CONFIRMUNSAVED": "Weet u zeker dat u deze pagina wilt verlaten?\nWAARSCHUWING: Uw veranderingen zijn niet opgeslagen.\n\nKies OK om te verlaten, of Cancel om op de huidige pagina te blijven.", "LeftAndMain.CONFIRMUNSAVEDSHORT": "WAARSCHUWING: Uw veranderingen zijn niet opgeslagen", "SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Weet u zeker dat u deze groep %s wilt verwijderen?", diff --git a/admin/javascript/lang/pl.js b/admin/javascript/lang/pl.js index 4d8567c52..335c127e5 100644 --- a/admin/javascript/lang/pl.js +++ b/admin/javascript/lang/pl.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/pl.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('pl', { + ss.i18n.addDictionary('pl', { "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/ro.js b/admin/javascript/lang/ro.js index 733561e71..4ea532b1c 100644 --- a/admin/javascript/lang/ro.js +++ b/admin/javascript/lang/ro.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/ro.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('ro', { + ss.i18n.addDictionary('ro', { "CMSMAIN.SELECTONEPAGE": "Vă rugăm să selectaţi cel puțin o pagină.", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "Aveti {num} pagina(i) selectate.\n\nDoriti sa le nenublicati", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/ru.js b/admin/javascript/lang/ru.js index db0933c4c..b6f38dbfc 100644 --- a/admin/javascript/lang/ru.js +++ b/admin/javascript/lang/ru.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/ru.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('ru', { + ss.i18n.addDictionary('ru', { "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/sk.js b/admin/javascript/lang/sk.js index 2968b1f9c..334546d14 100644 --- a/admin/javascript/lang/sk.js +++ b/admin/javascript/lang/sk.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/sk.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('sk', { + ss.i18n.addDictionary('sk', { "CMSMAIN.SELECTONEPAGE": "Prosím, vyberte najmenej 1 stránku", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "Máte vybratých {num} stránok.\n\nSkutočne ich chcete nezverejniť?", "CMSMAIN.BATCH_PUBLISH_PROMPT": "Máte vybratých {num} stránok.\n\nSkutočne ich chcete zverejniť?", diff --git a/admin/javascript/lang/sl.js b/admin/javascript/lang/sl.js index f404b5050..d7b39c2c1 100644 --- a/admin/javascript/lang/sl.js +++ b/admin/javascript/lang/sl.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/sl.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('sl', { + ss.i18n.addDictionary('sl', { "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/sr.js b/admin/javascript/lang/sr.js index 011826113..d3bbca49c 100644 --- a/admin/javascript/lang/sr.js +++ b/admin/javascript/lang/sr.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/sr.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('sr', { + ss.i18n.addDictionary('sr', { "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/sr@latin.js b/admin/javascript/lang/sr@latin.js index d02cdab95..3c8428030 100644 --- a/admin/javascript/lang/sr@latin.js +++ b/admin/javascript/lang/sr@latin.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/sr@latin.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('sr@latin', { + ss.i18n.addDictionary('sr@latin', { "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/sr_RS.js b/admin/javascript/lang/sr_RS.js index ebfc03385..22eed5959 100644 --- a/admin/javascript/lang/sr_RS.js +++ b/admin/javascript/lang/sr_RS.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/sr_RS.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('sr_RS', { + ss.i18n.addDictionary('sr_RS', { "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/sr_RS@latin.js b/admin/javascript/lang/sr_RS@latin.js index 961197179..849689a02 100644 --- a/admin/javascript/lang/sr_RS@latin.js +++ b/admin/javascript/lang/sr_RS@latin.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/sr_RS@latin.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('sr_RS@latin', { + ss.i18n.addDictionary('sr_RS@latin', { "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", diff --git a/admin/javascript/lang/src/en.js b/admin/javascript/lang/src/en.js index f374e7dda..b34ea1be4 100644 --- a/admin/javascript/lang/src/en.js +++ b/admin/javascript/lang/src/en.js @@ -1,17 +1,17 @@ { - "CMSMAIN.SELECTONEPAGE": "Please select at least one page", - "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", - "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", - "CMSMAIN.BATCH_DELETE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to delete?", "CMSMAIN.BATCH_ARCHIVE_PROMPT": "You have {num} page(s) selected.\n\nAre you sure you want to archive these pages?\n\nThese pages and all of their children pages will be unpublished and sent to the archive.", - "CMSMAIN.BATCH_RESTORE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to restore to stage?\n\nChildren of archived pages will be restored to the root level, unless those pages are also being restored.", "CMSMAIN.BATCH_DELETELIVE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to delete these pages from live?", + "CMSMAIN.BATCH_DELETE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to delete?", + "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", + "CMSMAIN.BATCH_RESTORE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to restore to stage?\n\nChildren of archived pages will be restored to the root level, unless those pages are also being restored.", + "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", + "CMSMAIN.SELECTONEPAGE": "Please select at least one page", "LeftAndMain.CONFIRMUNSAVED": "Are you sure you want to navigate away from this page?\n\nWARNING: Your changes have not been saved.\n\nPress OK to continue, or Cancel to stay on the current page.", "LeftAndMain.CONFIRMUNSAVEDSHORT": "WARNING: Your changes have not been saved.", - "SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Do you really want to delete %s groups?", - "ModelAdmin.SAVED": "Saved", - "ModelAdmin.REALLYDELETE": "Do you really want to delete?", + "LeftAndMain.PAGEWASDELETED": "This page was deleted. To edit a page, select it from the left.", "ModelAdmin.DELETED": "Deleted", + "ModelAdmin.REALLYDELETE": "Do you really want to delete?", + "ModelAdmin.SAVED": "Saved", "ModelAdmin.VALIDATIONERROR": "Validation Error", - "LeftAndMain.PAGEWASDELETED": "This page was deleted. To edit a page, select it from the left." + "SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Do you really want to delete %s groups?" } \ No newline at end of file diff --git a/admin/javascript/lang/src/nl.js b/admin/javascript/lang/src/nl.js index d097fbdec..8bcd6a07c 100644 --- a/admin/javascript/lang/src/nl.js +++ b/admin/javascript/lang/src/nl.js @@ -1,11 +1,11 @@ { - "CMSMAIN.SELECTONEPAGE": "Please select at least one page", - "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to unpublish", - "CMSMAIN.BATCH_PUBLISH_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to publish?", - "CMSMAIN.BATCH_DELETE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to delete?", - "CMSMAIN.BATCH_ARCHIVE_PROMPT": "You have {num} page(s) selected.\n\nAre you sure you want to archive these pages?\n\nThese pages and all of their children pages will be unpublished and sent to the archive.", - "CMSMAIN.BATCH_RESTORE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to restore to stage?\n\nChildren of archived pages will be restored to the root level, unless those pages are also being restored.", - "CMSMAIN.BATCH_DELETELIVE_PROMPT": "You have {num} page(s) selected.\n\nDo you really want to delete these pages from live?", + "CMSMAIN.SELECTONEPAGE": "Selecteer minstens 1 pagina.", + "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "Je hebt {num} pagina(s) geselecteerd.\n\nWeet je zeker dat je de publicatie wilt intrekken?", + "CMSMAIN.BATCH_PUBLISH_PROMPT": "Je hebt {num} pagina(s) geselecteerd.\n\nWeet je zeker dat je de pagina(s) wilt publiceren?", + "CMSMAIN.BATCH_DELETE_PROMPT": "Je hebt {num} pagina(s) geselecteerd.\n\nWeet je zeker dat je de pagina(s) wilt verwijderen?", + "CMSMAIN.BATCH_ARCHIVE_PROMPT": "Je hebt {num} pagina(s) geselecteerd.\n\nWeet je zeker dat je de pagina(s) wilt archiveren?\n\nDe publicatie van deze en onderliggende pagina's wordt ingetrokken en gearchiveerd.", + "CMSMAIN.BATCH_RESTORE_PROMPT": "Je hebt {num} pagina(s) geselecteerd.\n\nWeet je zeker dat je de pagina(s) wilt herstellen? Onderliggende pagina's worden naar het top level hersteld, tenzij deze pagina's ook worden hersteld.", + "CMSMAIN.BATCH_DELETELIVE_PROMPT": "Je hebt {num} pagina(s) geselecteerd.\n\nWeet je zeker dat je de publicatie van deze pagina's wilt intrekken?", "LeftAndMain.CONFIRMUNSAVED": "Weet u zeker dat u deze pagina wilt verlaten?\nWAARSCHUWING: Uw veranderingen zijn niet opgeslagen.\n\nKies OK om te verlaten, of Cancel om op de huidige pagina te blijven.", "LeftAndMain.CONFIRMUNSAVEDSHORT": "WAARSCHUWING: Uw veranderingen zijn niet opgeslagen", "SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Weet u zeker dat u deze groep %s wilt verwijderen?", diff --git a/admin/javascript/lang/sv.js b/admin/javascript/lang/sv.js index ba11d4b32..a17a0c0ab 100644 --- a/admin/javascript/lang/sv.js +++ b/admin/javascript/lang/sv.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/sv.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('sv', { + ss.i18n.addDictionary('sv', { "CMSMAIN.SELECTONEPAGE": "Var vänlig och välj minst en sida", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "Du har valt {num} sida/sidor\n\nVill du verkligen avpublicera", "CMSMAIN.BATCH_PUBLISH_PROMPT": "Du har valt {num} sida/sidor.\nVill du verkligen publicera dem.", diff --git a/admin/javascript/lang/zh.js b/admin/javascript/lang/zh.js index bea2e3a73..0fa7136c2 100644 --- a/admin/javascript/lang/zh.js +++ b/admin/javascript/lang/zh.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from admin/javascript/lang/src/zh.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('zh', { + ss.i18n.addDictionary('zh', { "CMSMAIN.SELECTONEPAGE": "请至少选择一个页面", "CMSMAIN.BATCH_UNPUBLISH_PROMPT": "您已选了{num}个页面。\n\n是否确定要取消发布", "CMSMAIN.BATCH_PUBLISH_PROMPT": "您已选了{num}个页面。\n\n是否确定要发布?", diff --git a/javascript/lang/ar.js b/javascript/lang/ar.js index 6ff60d499..279d072b3 100644 --- a/javascript/lang/ar.js +++ b/javascript/lang/ar.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/ar.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('ar', { + ss.i18n.addDictionary('ar', { "VALIDATOR.FIELDREQUIRED": "من فضلك املأ \"%s\"، فهو من البيانات المطلوبة.", "HASMANYFILEFIELD.UPLOADING": "تم رفع ... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "هل أنت متأكد من رغبتك في حذف هذا السجل؟", diff --git a/javascript/lang/bg.js b/javascript/lang/bg.js index da5ac1cf4..f01276ed0 100644 --- a/javascript/lang/bg.js +++ b/javascript/lang/bg.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/bg.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('bg', { + ss.i18n.addDictionary('bg', { "VALIDATOR.FIELDREQUIRED": "Полето \"%s\" е задължително.", "HASMANYFILEFIELD.UPLOADING": "Качване... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Да бъде ли изтрит този запис?", diff --git a/javascript/lang/cs.js b/javascript/lang/cs.js index bce5a9816..f871c56de 100644 --- a/javascript/lang/cs.js +++ b/javascript/lang/cs.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/cs.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('cs', { + ss.i18n.addDictionary('cs', { "VALIDATOR.FIELDREQUIRED": "Vyplňte \"%s\", prosím, je vyžadováno.", "HASMANYFILEFIELD.UPLOADING": "Nahrávání... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Určitě chcete smazat tento záznam?", diff --git a/javascript/lang/de.js b/javascript/lang/de.js index a9df22b6d..821ae7ae6 100644 --- a/javascript/lang/de.js +++ b/javascript/lang/de.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/de.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('de', { + ss.i18n.addDictionary('de', { "VALIDATOR.FIELDREQUIRED": "\"%s\" wird benötigt", "HASMANYFILEFIELD.UPLOADING": "Lädt hoch... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Sind Sie sicher, dass sie dieses Element löschen wollen?", diff --git a/javascript/lang/en.js b/javascript/lang/en.js index 54e51f4bc..91fc8100b 100644 --- a/javascript/lang/en.js +++ b/javascript/lang/en.js @@ -1,47 +1,49 @@ // This file was generated by silverstripe/cow from javascript/lang/src/en.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('en', { - "VALIDATOR.FIELDREQUIRED": "Please fill out \"%s\", it is required.", - "HASMANYFILEFIELD.UPLOADING": "Uploading... %s", - "TABLEFIELD.DELETECONFIRMMESSAGE": "Are you sure you want to delete this record?", - "LOADING": "loading...", - "UNIQUEFIELD.SUGGESTED": "Changed value to '%s' : %s", - "UNIQUEFIELD.ENTERNEWVALUE": "You will need to enter a new value for this field", - "UNIQUEFIELD.CANNOTLEAVEEMPTY": "This field cannot be left empty", - "RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "The character '%s' cannot be used in this field", - "UPDATEURL.CONFIRM": "Would you like me to change the URL to:\n\n%s/\n\nClick Ok to change the URL, click Cancel to leave it as:\n\n%s", - "UPDATEURL.CONFIRMURLCHANGED": "The URL has been changed to\n'%s'", - "FILEIFRAMEFIELD.DELETEFILE": "Delete File", - "FILEIFRAMEFIELD.UNATTACHFILE": "Un-Attach File", - "FILEIFRAMEFIELD.DELETEIMAGE": "Delete Image", + ss.i18n.addDictionary('en', { "FILEIFRAMEFIELD.CONFIRMDELETE": "Are you sure you want to delete this file?", - "LeftAndMain.IncompatBrowserWarning": "Your browser is not compatible with the CMS interface. Please use Internet Explorer 7+, Google Chrome 10+ or Mozilla Firefox 3.5+.", + "FILEIFRAMEFIELD.DELETEFILE": "Delete File", + "FILEIFRAMEFIELD.DELETEIMAGE": "Delete Image", + "FILEIFRAMEFIELD.UNATTACHFILE": "Un-Attach File", "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.", + "HASMANYFILEFIELD.UPLOADING": "Uploading... %s", "HtmlEditorField.SelectAnchor": "Select an anchor", + "LOADING": "loading...", + "LeftAndMain.IncompatBrowserWarning": "Your browser is not compatible with the CMS interface. Please use Internet Explorer 7+, Google Chrome 10+ or Mozilla Firefox 3.5+.", + "RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "The character '%s' cannot be used in this field", + "TABLEFIELD.DELETECONFIRMMESSAGE": "Are you sure you want to delete this record?", + "TreeDropdownField.ENTERTOSEARCH": "Press enter to search", + "TreeDropdownField.FieldTitle": "Choose", + "TreeDropdownField.OpenLink": "Open", + "TreeDropdownField.SearchFieldTitle": "Choose or Search", + "UNIQUEFIELD.CANNOTLEAVEEMPTY": "This field cannot be left empty", + "UNIQUEFIELD.ENTERNEWVALUE": "You will need to enter a new value for this field", + "UNIQUEFIELD.SUGGESTED": "Changed value to '%s' : %s", + "UPDATEURL.CONFIRM": "Would you like me to change the URL to:\n\n%s\/\n\nClick Ok to change the URL, click Cancel to leave it as:\n\n%s", + "UPDATEURL.CONFIRMURLCHANGED": "The URL has been changed to\n'%s'", "UploadField.ConfirmDelete": "Are you sure you want to remove this file from the server filesystem?", - "UploadField.PHP_MAXFILESIZE": "File exceeds upload_max_filesize (php.ini directive)", + "UploadField.EMPTYRESULT": "Empty file upload result", + "UploadField.Editing": "Editing ...", "UploadField.HTML_MAXFILESIZE": "File exceeds MAX_FILE_SIZE (HTML form directive)", - "UploadField.ONLYPARTIALUPLOADED": "File was only partially uploaded", + "UploadField.INVALIDEXTENSION": "Extension is not allowed", + "UploadField.LOADING": "Loading ...", + "UploadField.MAXNUMBEROFFILESSIMPLE": "Max number of files exceeded", "UploadField.NOFILEUPLOADED": "No File was uploaded", "UploadField.NOTMPFOLDER": "Missing a temporary folder", - "UploadField.WRITEFAILED": "Failed to write file to disk", + "UploadField.ONLYPARTIALUPLOADED": "File was only partially uploaded", + "UploadField.OVERWRITEWARNING": "File with the same name already exists", + "UploadField.PHP_MAXFILESIZE": "File exceeds upload_max_filesize (php.ini directive)", "UploadField.STOPEDBYEXTENSION": "File upload stopped by extension", "UploadField.TOOLARGE": "Filesize is too large", "UploadField.TOOSMALL": "Filesize is too small", - "UploadField.INVALIDEXTENSION": "Extension is not allowed", - "UploadField.MAXNUMBEROFFILESSIMPLE": "Max number of files exceeded", "UploadField.UPLOADEDBYTES": "Uploaded bytes exceed file size", - "UploadField.EMPTYRESULT": "Empty file upload result", - "UploadField.LOADING": "Loading ...", - "UploadField.Editing": "Editing ...", "UploadField.Uploaded": "Uploaded", - "UploadField.OVERWRITEWARNING": "File with the same name already exists", - "TreeDropdownField.ENTERTOSEARCH": "Press enter to search", - "TreeDropdownField.OpenLink": "Open", - "TreeDropdownField.FieldTitle": "Choose", - "TreeDropdownField.SearchFieldTitle": "Choose or Search" + "UploadField.WRITEFAILED": "Failed to write file to disk", + "VALIDATOR.FIELDREQUIRED": "Please fill out \"%s\", it is required." }); } \ No newline at end of file diff --git a/javascript/lang/en_GB.js b/javascript/lang/en_GB.js index 3f526fe61..17268228c 100644 --- a/javascript/lang/en_GB.js +++ b/javascript/lang/en_GB.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/en_GB.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('en_GB', { + ss.i18n.addDictionary('en_GB', { "VALIDATOR.FIELDREQUIRED": "Please fill out \"%s\", it is required.", "HASMANYFILEFIELD.UPLOADING": "Uploading... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Are you sure you want to delete this record?", diff --git a/javascript/lang/eo.js b/javascript/lang/eo.js index ae8ce01b5..3bd450aa2 100644 --- a/javascript/lang/eo.js +++ b/javascript/lang/eo.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/eo.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('eo', { + ss.i18n.addDictionary('eo', { "VALIDATOR.FIELDREQUIRED": "Bonvole plenumu je \"%s\". Ĝi estas nepra.", "HASMANYFILEFIELD.UPLOADING": "Alŝutiĝas %s...", "TABLEFIELD.DELETECONFIRMMESSAGE": "Ĉi vi vere volas forigi ĉi tiun rikordon?", diff --git a/javascript/lang/es.js b/javascript/lang/es.js index ea583dc39..62f39d95f 100644 --- a/javascript/lang/es.js +++ b/javascript/lang/es.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/es.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('es', { + ss.i18n.addDictionary('es', { "VALIDATOR.FIELDREQUIRED": "Por favor complete \"%s\", es un campo requerido.", "HASMANYFILEFIELD.UPLOADING": "Subiendo... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "¿Estás seguro que quieres eliminar este registro?", diff --git a/javascript/lang/fa_IR.js b/javascript/lang/fa_IR.js index e1228cc45..2fb338750 100644 --- a/javascript/lang/fa_IR.js +++ b/javascript/lang/fa_IR.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/fa_IR.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('fa_IR', { + ss.i18n.addDictionary('fa_IR', { "VALIDATOR.FIELDREQUIRED": "لطفاً \"%s\" را تکمیل نمایید، پرکردن آن الزامی است.", "HASMANYFILEFIELD.UPLOADING": "در حال آپلود... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "آیا مطمئن هستید که می‌خواهید این رکورد حذف شود؟", diff --git a/javascript/lang/fi.js b/javascript/lang/fi.js index a966680a1..0d01c4cb0 100644 --- a/javascript/lang/fi.js +++ b/javascript/lang/fi.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/fi.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('fi', { + ss.i18n.addDictionary('fi', { "VALIDATOR.FIELDREQUIRED": "Syötä \"%s\", se on vaadittu tieto.", "HASMANYFILEFIELD.UPLOADING": "Ladataan... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Haluatko varmasti poistaa tämän tietueen?", diff --git a/javascript/lang/fr.js b/javascript/lang/fr.js index 98a095480..79da9f7bf 100644 --- a/javascript/lang/fr.js +++ b/javascript/lang/fr.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/fr.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('fr', { + ss.i18n.addDictionary('fr', { "VALIDATOR.FIELDREQUIRED": "Veuillez remplir \"%s\", c'est un champ requis.", "HASMANYFILEFIELD.UPLOADING": "Uploading... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Etes-vous sûr de vouloir supprimer cet enregistrement ?", diff --git a/javascript/lang/id.js b/javascript/lang/id.js index e828b8423..63916838d 100644 --- a/javascript/lang/id.js +++ b/javascript/lang/id.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/id.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('id', { + ss.i18n.addDictionary('id', { "VALIDATOR.FIELDREQUIRED": "Anda wajib mengisi \"%s\".", "HASMANYFILEFIELD.UPLOADING": "Mengunggah... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Anda ingin menghapus data ini?", diff --git a/javascript/lang/id_ID.js b/javascript/lang/id_ID.js index f3b484641..7dc368f7f 100644 --- a/javascript/lang/id_ID.js +++ b/javascript/lang/id_ID.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/id_ID.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('id_ID', { + ss.i18n.addDictionary('id_ID', { "VALIDATOR.FIELDREQUIRED": "Anda wajib mengisi \"%s\".", "HASMANYFILEFIELD.UPLOADING": "Mengunggah... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Anda ingin menghapus data ini?", diff --git a/javascript/lang/it.js b/javascript/lang/it.js index e17a8929a..aced3217d 100644 --- a/javascript/lang/it.js +++ b/javascript/lang/it.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/it.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('it', { + ss.i18n.addDictionary('it', { "VALIDATOR.FIELDREQUIRED": "Completare il campo \"%s\", che è obbligatorio.", "HASMANYFILEFIELD.UPLOADING": "Invio file... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Si è sicuri di voler eliminare questo elemento?", diff --git a/javascript/lang/ja.js b/javascript/lang/ja.js index 71e8a2f7d..2a9e12d5e 100644 --- a/javascript/lang/ja.js +++ b/javascript/lang/ja.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/ja.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('ja', { + ss.i18n.addDictionary('ja', { "VALIDATOR.FIELDREQUIRED": "\"%s\"を入力してください,必須項目です.", "HASMANYFILEFIELD.UPLOADING": "アップロード中です... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "このレコードを本当に削除しますか?", diff --git a/javascript/lang/lt.js b/javascript/lang/lt.js index 4d370df35..a25d5c08f 100644 --- a/javascript/lang/lt.js +++ b/javascript/lang/lt.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/lt.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('lt', { + ss.i18n.addDictionary('lt', { "VALIDATOR.FIELDREQUIRED": "Prašome užpildyti \"%s\", jis yra privalomas.", "HASMANYFILEFIELD.UPLOADING": "Įkeliama... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Ar tikrai norite ištrinti šį įrašą?", diff --git a/javascript/lang/mi.js b/javascript/lang/mi.js index e93acaad4..1a2256861 100644 --- a/javascript/lang/mi.js +++ b/javascript/lang/mi.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/mi.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('mi', { + ss.i18n.addDictionary('mi', { "VALIDATOR.FIELDREQUIRED": "Whakakīa \"%s\", he whakaritenga tēnei.", "HASMANYFILEFIELD.UPLOADING": "Tukuatu ana... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Kei te tino hiahia muku i tēnei pūkete?", diff --git a/javascript/lang/nb.js b/javascript/lang/nb.js index ab0baeefa..706d46673 100644 --- a/javascript/lang/nb.js +++ b/javascript/lang/nb.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/nb.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('nb', { + ss.i18n.addDictionary('nb', { "VALIDATOR.FIELDREQUIRED": "Vennligst fyll ut det påkrevde feltet \"%s\"", "HASMANYFILEFIELD.UPLOADING": "Laster opp ... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Er du sikker på at du vil slette denne oppføringen?", diff --git a/javascript/lang/nl.js b/javascript/lang/nl.js index 136a2009a..52f446318 100644 --- a/javascript/lang/nl.js +++ b/javascript/lang/nl.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/nl.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('nl', { + ss.i18n.addDictionary('nl', { "VALIDATOR.FIELDREQUIRED": "Vul \"%s\" in, dit is een verplicht veld.", "HASMANYFILEFIELD.UPLOADING": "Uploaden... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Weet u zeker dat u dit record wilt verwijderen?", diff --git a/javascript/lang/pl.js b/javascript/lang/pl.js index e667c486f..bfbec1e6a 100644 --- a/javascript/lang/pl.js +++ b/javascript/lang/pl.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/pl.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('pl', { + ss.i18n.addDictionary('pl', { "VALIDATOR.FIELDREQUIRED": "Wypełnij wymagane pole \"%s\".", "HASMANYFILEFIELD.UPLOADING": "Wysyłanie... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Czy na pewno chcesz usunąć ten rekord?", diff --git a/javascript/lang/ru.js b/javascript/lang/ru.js index 2a4946b47..bf1b13d09 100644 --- a/javascript/lang/ru.js +++ b/javascript/lang/ru.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/ru.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('ru', { + ss.i18n.addDictionary('ru', { "VALIDATOR.FIELDREQUIRED": "Необходимо заполнить обязательное поле \"%s\".", "HASMANYFILEFIELD.UPLOADING": "Загрузка... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Вы действительно хотите удалить эту запись?", diff --git a/javascript/lang/sk.js b/javascript/lang/sk.js index 377a8c066..14ddc1419 100644 --- a/javascript/lang/sk.js +++ b/javascript/lang/sk.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/sk.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('sk', { + ss.i18n.addDictionary('sk', { "VALIDATOR.FIELDREQUIRED": "Vyplňte \"%s\", prosím, je požadované.", "HASMANYFILEFIELD.UPLOADING": "Nahrávanieí... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Určite chcete zmazať tento záznam?", diff --git a/javascript/lang/sl.js b/javascript/lang/sl.js index c46b12b00..1525394e7 100644 --- a/javascript/lang/sl.js +++ b/javascript/lang/sl.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/sl.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('sl', { + ss.i18n.addDictionary('sl', { "VALIDATOR.FIELDREQUIRED": "Prosimo izpolnite \"%s\", to je zahtevano", "HASMANYFILEFIELD.UPLOADING": "Nalagam ... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Izbrišem ta zapis?", diff --git a/javascript/lang/sr.js b/javascript/lang/sr.js index 556059663..a8fa6a8fd 100644 --- a/javascript/lang/sr.js +++ b/javascript/lang/sr.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/sr.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('sr', { + ss.i18n.addDictionary('sr', { "VALIDATOR.FIELDREQUIRED": "Молимо Вас да попуните \"%s\", обавезно је.", "HASMANYFILEFIELD.UPLOADING": "Постављање... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Да ли сте сигурни да желите да избришете овај запис?", diff --git a/javascript/lang/sr@latin.js b/javascript/lang/sr@latin.js index b8a393e87..5da599e4d 100644 --- a/javascript/lang/sr@latin.js +++ b/javascript/lang/sr@latin.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/sr@latin.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('sr@latin', { + ss.i18n.addDictionary('sr@latin', { "VALIDATOR.FIELDREQUIRED": "Molimo Vas da popunite \"%s\", obavezno je.", "HASMANYFILEFIELD.UPLOADING": "Postavljanje... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Da li ste sigurni da želite da izbrišete ovaj zapis?", diff --git a/javascript/lang/sr_RS.js b/javascript/lang/sr_RS.js index c94a5be21..83c3a879b 100644 --- a/javascript/lang/sr_RS.js +++ b/javascript/lang/sr_RS.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/sr_RS.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('sr_RS', { + ss.i18n.addDictionary('sr_RS', { "VALIDATOR.FIELDREQUIRED": "Молимо Вас да попуните \"%s\", обавезно је.", "HASMANYFILEFIELD.UPLOADING": "Постављање... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Да ли сте сигурни да желите да избришете овај запис?", diff --git a/javascript/lang/sr_RS@latin.js b/javascript/lang/sr_RS@latin.js index 999552104..9167b8602 100644 --- a/javascript/lang/sr_RS@latin.js +++ b/javascript/lang/sr_RS@latin.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/sr_RS@latin.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('sr_RS@latin', { + ss.i18n.addDictionary('sr_RS@latin', { "VALIDATOR.FIELDREQUIRED": "Molimo Vas da popunite \"%s\", obavezno je.", "HASMANYFILEFIELD.UPLOADING": "Postavljanje... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Da li ste sigurni da želite da izbrišete ovaj zapis?", diff --git a/javascript/lang/src/en.js b/javascript/lang/src/en.js index e8c0b5ad6..a7f3f0560 100644 --- a/javascript/lang/src/en.js +++ b/javascript/lang/src/en.js @@ -1,41 +1,41 @@ { - "VALIDATOR.FIELDREQUIRED": "Please fill out \"%s\", it is required.", - "HASMANYFILEFIELD.UPLOADING": "Uploading... %s", - "TABLEFIELD.DELETECONFIRMMESSAGE": "Are you sure you want to delete this record?", - "LOADING": "loading...", - "UNIQUEFIELD.SUGGESTED": "Changed value to '%s' : %s", - "UNIQUEFIELD.ENTERNEWVALUE": "You will need to enter a new value for this field", - "UNIQUEFIELD.CANNOTLEAVEEMPTY": "This field cannot be left empty", - "RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "The character '%s' cannot be used in this field", - "UPDATEURL.CONFIRM": "Would you like me to change the URL to:\n\n%s/\n\nClick Ok to change the URL, click Cancel to leave it as:\n\n%s", - "UPDATEURL.CONFIRMURLCHANGED": "The URL has been changed to\n'%s'", - "FILEIFRAMEFIELD.DELETEFILE": "Delete File", - "FILEIFRAMEFIELD.UNATTACHFILE": "Un-Attach File", - "FILEIFRAMEFIELD.DELETEIMAGE": "Delete Image", "FILEIFRAMEFIELD.CONFIRMDELETE": "Are you sure you want to delete this file?", - "LeftAndMain.IncompatBrowserWarning": "Your browser is not compatible with the CMS interface. Please use Internet Explorer 7+, Google Chrome 10+ or Mozilla Firefox 3.5+.", + "FILEIFRAMEFIELD.DELETEFILE": "Delete File", + "FILEIFRAMEFIELD.DELETEIMAGE": "Delete Image", + "FILEIFRAMEFIELD.UNATTACHFILE": "Un-Attach File", "GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.", + "HASMANYFILEFIELD.UPLOADING": "Uploading... %s", "HtmlEditorField.SelectAnchor": "Select an anchor", + "LOADING": "loading...", + "LeftAndMain.IncompatBrowserWarning": "Your browser is not compatible with the CMS interface. Please use Internet Explorer 7+, Google Chrome 10+ or Mozilla Firefox 3.5+.", + "RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "The character '%s' cannot be used in this field", + "TABLEFIELD.DELETECONFIRMMESSAGE": "Are you sure you want to delete this record?", + "TreeDropdownField.ENTERTOSEARCH": "Press enter to search", + "TreeDropdownField.FieldTitle": "Choose", + "TreeDropdownField.OpenLink": "Open", + "TreeDropdownField.SearchFieldTitle": "Choose or Search", + "UNIQUEFIELD.CANNOTLEAVEEMPTY": "This field cannot be left empty", + "UNIQUEFIELD.ENTERNEWVALUE": "You will need to enter a new value for this field", + "UNIQUEFIELD.SUGGESTED": "Changed value to '%s' : %s", + "UPDATEURL.CONFIRM": "Would you like me to change the URL to:\n\n%s\/\n\nClick Ok to change the URL, click Cancel to leave it as:\n\n%s", + "UPDATEURL.CONFIRMURLCHANGED": "The URL has been changed to\n'%s'", "UploadField.ConfirmDelete": "Are you sure you want to remove this file from the server filesystem?", - "UploadField.PHP_MAXFILESIZE": "File exceeds upload_max_filesize (php.ini directive)", + "UploadField.EMPTYRESULT": "Empty file upload result", + "UploadField.Editing": "Editing ...", "UploadField.HTML_MAXFILESIZE": "File exceeds MAX_FILE_SIZE (HTML form directive)", - "UploadField.ONLYPARTIALUPLOADED": "File was only partially uploaded", + "UploadField.INVALIDEXTENSION": "Extension is not allowed", + "UploadField.LOADING": "Loading ...", + "UploadField.MAXNUMBEROFFILESSIMPLE": "Max number of files exceeded", "UploadField.NOFILEUPLOADED": "No File was uploaded", "UploadField.NOTMPFOLDER": "Missing a temporary folder", - "UploadField.WRITEFAILED": "Failed to write file to disk", + "UploadField.ONLYPARTIALUPLOADED": "File was only partially uploaded", + "UploadField.OVERWRITEWARNING": "File with the same name already exists", + "UploadField.PHP_MAXFILESIZE": "File exceeds upload_max_filesize (php.ini directive)", "UploadField.STOPEDBYEXTENSION": "File upload stopped by extension", "UploadField.TOOLARGE": "Filesize is too large", "UploadField.TOOSMALL": "Filesize is too small", - "UploadField.INVALIDEXTENSION": "Extension is not allowed", - "UploadField.MAXNUMBEROFFILESSIMPLE": "Max number of files exceeded", "UploadField.UPLOADEDBYTES": "Uploaded bytes exceed file size", - "UploadField.EMPTYRESULT": "Empty file upload result", - "UploadField.LOADING": "Loading ...", - "UploadField.Editing": "Editing ...", "UploadField.Uploaded": "Uploaded", - "UploadField.OVERWRITEWARNING": "File with the same name already exists", - "TreeDropdownField.ENTERTOSEARCH": "Press enter to search", - "TreeDropdownField.OpenLink": "Open", - "TreeDropdownField.FieldTitle": "Choose", - "TreeDropdownField.SearchFieldTitle": "Choose or Search" + "UploadField.WRITEFAILED": "Failed to write file to disk", + "VALIDATOR.FIELDREQUIRED": "Please fill out \"%s\", it is required." } \ No newline at end of file diff --git a/javascript/lang/sv.js b/javascript/lang/sv.js index 001198c89..3907e4156 100644 --- a/javascript/lang/sv.js +++ b/javascript/lang/sv.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/sv.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('sv', { + ss.i18n.addDictionary('sv', { "VALIDATOR.FIELDREQUIRED": "Var god fyll i \"%s\", det är obligatoriskt.", "HASMANYFILEFIELD.UPLOADING": "Laddar upp... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "Vill du verkligen radera detta?", diff --git a/javascript/lang/zh.js b/javascript/lang/zh.js index 59dc7761a..265420658 100644 --- a/javascript/lang/zh.js +++ b/javascript/lang/zh.js @@ -1,9 +1,11 @@ // This file was generated by silverstripe/cow from javascript/lang/src/zh.js. // See https://github.com/tractorcow/cow for details -if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') { - if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined'); +if (typeof(ss) === 'undefined' || typeof(ss.i18n) === 'undefined') { + if (typeof(console) !== 'undefined') { // eslint-disable-line no-console + console.error('Class ss.i18n not defined'); // eslint-disable-line no-console + } } else { - ss.i18n.addDictionary('zh', { + ss.i18n.addDictionary('zh', { "VALIDATOR.FIELDREQUIRED": "请填写“%s”,该项目为必填项。", "HASMANYFILEFIELD.UPLOADING": "正在上传... %s", "TABLEFIELD.DELETECONFIRMMESSAGE": "是否确定删除该记录?", diff --git a/lang/de.yml b/lang/de.yml index 6ca61ee83..6bfc998b4 100644 --- a/lang/de.yml +++ b/lang/de.yml @@ -331,7 +331,6 @@ de: CANT_REORGANISE: 'Sie besitzen nicht die benötigten Zugriffsrechte um Seiten der höchsten Ebene zu bearbeiten. Ihre Änderungen wurden nicht gespeichert.' DELETED: Gelöscht. HELP: Hilfe - PAGETYPE: 'Seitentyp' PERMAGAIN: 'Sie wurden aus dem System ausgeloggt. Falls Sie sich wieder einloggen möchten, geben Sie bitte Benutzernamen und Passwort im untenstehenden Formular an.' PERMALREADY: 'Leider dürfen Sie diesen Teil des CMS nicht aufrufen. Wenn Sie sich als jemand anderes einloggen wollen, benutzen Sie bitte das nachstehende Formular.' PERMDEFAULT: 'Sie müssen angemeldet sein, um auf diesen Bereich zugreifen zu können. Bitte geben Sie Ihre Zugangsdaten ein.' diff --git a/lang/eo.yml b/lang/eo.yml index f4237aec2..4022941d2 100644 --- a/lang/eo.yml +++ b/lang/eo.yml @@ -301,8 +301,6 @@ eo: FROMWEB: 'El la TTT' FindInFolder: 'Serĉi en dosierujo' IMAGEALT: 'Alternativa teksto (alt)' - IMAGEALTTEXT: 'Alternativa teksto (alt) - vidigi ĝin se ne eblas vidigi bildon' - IMAGEALTTEXTDESC: 'Vidigota al ekranlegiloj aŭ se ne eblas vidigi bildon' IMAGEDIMENSIONS: Dimensioj IMAGEHEIGHTPX: Alto IMAGETITLE: 'Titola teksto (ŝpruchelpilo) - por plua informo pri la bildo' @@ -336,13 +334,10 @@ eo: LeftAndMain: CANT_REORGANISE: 'Vi ne rajtas ŝanĝi supronivelajn paĝojn. Via ŝanĝo ne konserviĝis.' DELETED: Forigita. - DropdownBatchActionsDefault: 'Elekti agon...' HELP: Helpo - PAGETYPE: 'Tipo de paĝo' PERMAGAIN: 'Vin adiaŭis la CMS. Se vi volas denove saluti, enigu salutnomon kaj pasvorton malsupre.' PERMALREADY: 'Bedaŭrinde vi ne povas aliri tiun parton de la CMS. Se vi volas ensaluti kiel aliulo, faru tion sube.' PERMDEFAULT: 'Necesas ensaluti por aliri la administran zonon; bonvolu enigi viajn akreditaĵoj sube.' - PLEASESAVE: 'Bonvolu konservi paĝon: Ne eblis ĝisdatigi ĉi tiun paĝon ĉar ĝi ankoraŭ ne estas konservita.' PreviewButton: Antaŭvido REORGANISATIONSUCCESSFUL: 'Sukcese reorganizis la retejan arbon.' SAVEDUP: Konservita. diff --git a/lang/lt.yml b/lang/lt.yml index ef31520dd..2a06f3eb5 100644 --- a/lang/lt.yml +++ b/lang/lt.yml @@ -301,8 +301,6 @@ lt: FROMWEB: 'Iš interneto' FindInFolder: 'Rasti kataloge' IMAGEALT: 'Alternatyvus tekstas (alt)' - IMAGEALTTEXT: 'Alternatyvus tekstas (alt) - rodomas, jeigu nepavyko parodyti paveikslėlio' - IMAGEALTTEXTDESC: 'Rodomas, jeigu nepavyko parodyti paveikslėlio' IMAGEDIMENSIONS: Matmenys IMAGEHEIGHTPX: Aukštis IMAGETITLE: 'Pavadinimo tekstas (tooltip) - papildomai informacijai apie paveikslėlį' @@ -336,13 +334,10 @@ lt: LeftAndMain: CANT_REORGANISE: 'Jūs neturite leidimo keisti aukščiausio lygio puslapių. Jūsų pakeitimai neišsaugoti.' DELETED: Ištrinta. - DropdownBatchActionsDefault: 'Pasirinkite veiksmą...' HELP: Pagalba - PAGETYPE: 'Puslapio tipas' PERMAGAIN: 'Jūs atsijungėte. Norėdami vėl prisijungti, įveskite savo duomenis į žemiau esančius laukelius.' PERMALREADY: 'Deja, bet Jūs negalite patekti į šią TVS dalį. Jeigu norite prisijungti kitu vartotoju, tai atlikite žemiau.' PERMDEFAULT: 'Jūs turite būti prisijungę, norėdami pasiekti administravimo zoną; prašome suvesti prisijungimo duomenis į žemiau esančius laukelius.' - PLEASESAVE: 'Prašome išsaugoti puslapį: Šis puslapis negali būti atnaujintas, nes jis dar nėra išsaugotas.' PreviewButton: Peržiūra REORGANISATIONSUCCESSFUL: 'Puslapių medis pertvarkytas sėkmingai.' SAVEDUP: Išsaugota. diff --git a/lang/nl.yml b/lang/nl.yml index 7fec01078..5e2ad7751 100644 --- a/lang/nl.yml +++ b/lang/nl.yml @@ -1,18 +1,22 @@ nl: AssetAdmin: + ALLOWEDEXTS: 'Toegestane extensies' + HIDEALLOWEDEXTS: 'Verberg toegestane extensies' NEWFOLDER: Nieuwe map SHOWALLOWEDEXTS: 'Toon toegestane extensies' AssetTableField: CREATED: 'Eerste upload' - DIM: Dimensies + DIM: Afmetingen FILENAME: Bestandsnaam FOLDER: Map + HEIGHT: Hoogte LASTEDIT: 'Laatste wijziging' OWNER: Eigenaar SIZE: 'Grootte' TITLE: Titel TYPE: 'Type' URL: URL + WIDTH: Breedte AssetUploadField: ChooseFiles: 'Selecteer bestand' DRAGFILESHERE: 'Sleep bestanden hierheen' @@ -23,7 +27,10 @@ nl: FILES: Bestanden FROMCOMPUTER: 'Selecteer bestanden op uw computer' FROMCOMPUTERINFO: 'Uploaden vanaf uw computer' + INSERTURL: 'Voeg toe van URL' + REMOVEINFO: 'Verwijder bestand van dit veld' TOTAL: Totaal + TOUPLOAD: 'Selecteer bestanden voor upload' UPLOADINPROGRESS: 'Een ogenblik geduld... upload wordt uitgevoerd' UPLOADOR: OF BBCodeParser: @@ -59,6 +66,8 @@ nl: ERRORNOTREC: 'De gebruikersnaam en/of het wachtwoord wordt niet herkend' Boolean: ANY: Elke + NOANSWER: 'Nee' + YESANSWER: 'Ja' CMSLoadingScreen_ss: LOADING: Laden... REQUIREJS: 'Het CMS vereist dat JavaScript ingeschakeld is.' @@ -67,22 +76,44 @@ nl: ACCESSALLINTERFACES: 'Toegang tot alle CMS onderdelen' ACCESSALLINTERFACESHELP: 'Overstemt meer specifieke toegangsinstellingen' SAVE: Bewaar + CMSMemberLoginForm: + BUTTONFORGOTPASSWORD: 'Wachtwoord vergeten?' + BUTTONLOGIN: 'Opnieuw inloggen' + BUTTONLOGOUT: 'Uitloggen' + PASSWORDEXPIRED: '

Je wachtwoord is verlopen. Kies een nieuw wachtwoord.

' CMSPageHistoryController_versions_ss: PREVIEW: 'Website voorbeeld' + CMSPagesController_Tools_ss: + FILTER: Filter CMSProfileController: MENUTITLE: 'Mijn Profiel' + CMSSecurity: + INVALIDUSER: '

Ongeldige gebruiker Log hier opnieuw in om verder te gaan.

' + LoginMessage: '

Je kunt verder met wat je aan het doen was, door opnieuw in te loggen.

' + SUCCESS: Succes + SUCCESSCONTENT: '

Je bent ingelogd. Klik hier als je niet automatisch wordt doorgestuurd.

' + TimedOutTitleAnonymous: 'Sessie is verlopen' + TimedOutTitleMember: 'Hallo {name}!
Je sessie is verlopen.' ChangePasswordEmail_ss: CHANGEPASSWORDTEXT1: 'U heeft het wachtwoord veranderd voor' CHANGEPASSWORDTEXT2: 'U kunt nu onderstaande gegevens gebruiken om in te loggen:' EMAIL: E-mail HELLO: Hallo PASSWORD: Wachtwoord + CheckboxField: + NOANSWER: 'Nee' + YESANSWER: 'Ja' + CheckboxFieldSetField: + SOURCE_VALIDATION: 'Selecteer een optie uit de lijst. {value} is geen geldige keuze.' + CheckboxSetField: + SOURCE_VALIDATION: 'Selecteer een optie uit de lijst. ''{value}'' is geen geldige keuze.' ConfirmedPasswordField: ATLEAST: 'Een wachtwoord moet tenminste {min} karakters hebben.' BETWEEN: 'Een wachtwoord moet tussen de {min} en {max} karakters hebben' MAXIMUM: 'Een wachtwoord mag maximaal {max} karakters hebben.' SHOWONCLICKTITLE: 'Verander wachtwoord' ContentController: + DRAFT_SITE_ACCESS_RESTRICTION: 'Je moet inloggen met je CMS wachtwoord om die inhoud te kunnen zien. Klik hier om terug te keren naar de gepubliceerde site.' NOTLOGGEDIN: 'Niet ingelogd' CreditCardField: FIRST: eerste @@ -122,6 +153,8 @@ nl: INVALID_REQUEST: 'Fout bij verwerken' DropdownField: CHOOSE: (Kies) + CHOOSESEARCH: '(Kies of zoek)' + SOURCE_VALIDATION: 'Selecteer een optie uit de lijst. {value} is geen geldige keuze.' EmailField: VALIDATION: 'Gelieve een e-mailadres in te voeren.' Enum: @@ -170,6 +203,7 @@ nl: TEXT3: voor Form: CSRF_EXPIRED_MESSAGE: 'Uw sessie is verlopen. Verzend het formulier opnieuw.' + CSRF_FAILED_MESSAGE: 'Er lijkt een technisch probleem te zijn. Klik op de knop terug, vernieuw uw browser, en probeer het opnieuw.' FIELDISREQUIRED: '{name} is verplicht' SubmitBtnLabel: Versturen VALIDATIONCREDITNUMBER: 'Gelieve uw credit card number {number} juist in te vullen' @@ -235,6 +269,7 @@ nl: many_many_Members: Leden GroupImportForm: Help1: '

Importeer een of meerdere groepen in CSV-formaat (comma-separated values). Toon geavanceerd gebruik

' + Help2: '

Geavanceerd gebruik

  • Toegestane kolommen: %s
  • Bestaande groepen worden geïdentificeerd door middel van hun unieke Code, en aangepast met de nieuwe waarden vanuit het geïmporteerde bestand
  • Groepshiërarchiën kunnen aangemaakt worden door een ParentCode kolom te gebruiken
  • ;
  • Toegangscodes kunnen toegewezen worden met de PermissionCode kolom. Bestaande toegangscodes worden niet verwijderd.
' ResultCreated: '{count} groepen aangemaakt' ResultDeleted: '%d groepen verwijderd' ResultUpdated: '%d groepen aangepast' @@ -243,6 +278,8 @@ nl: HtmlEditorField: ADDURL: 'Voeg URL toe' ADJUSTDETAILSDIMENSIONS: 'Details en afmetingen' + ANCHORSCANNOTACCESSPAGE: 'Je bent niet gemachtigd om de opgevraagde pagina te bekijken.' + ANCHORSPAGENOTFOUND: 'Pagina niet gevonden.' ANCHORVALUE: Anker BUTTONADDURL: 'Voeg URL toe' BUTTONINSERT: Invoegen @@ -264,12 +301,15 @@ nl: FROMWEB: 'Vanaf een website' FindInFolder: 'Zoek in map' IMAGEALT: 'Alternatieve tekst (alt tekst)' + IMAGEALTTEXT: 'Alternatieve tekst (alt tekst) - wordt getoond als de afbeelding niet kan worden geladen' + IMAGEALTTEXTDESC: 'Getoond voor schermlezers of als afbeelding niet kan worden weergegeven' IMAGEDIMENSIONS: Dimensies IMAGEHEIGHTPX: Hoogte IMAGETITLE: 'Tooltip (title) - Toon extra informatie over de afbeelding' IMAGETITLETEXT: 'Tooltip (title)' IMAGETITLETEXTDESC: 'Toon extra informatie over de afbeelding' IMAGEWIDTHPX: Breedte + INSERTMEDIA: 'Voeg media in' LINK: 'Link invoegen' LINKANCHOR: 'Anker op deze pagina' LINKDESCR: 'Linkomschrijving' @@ -280,8 +320,11 @@ nl: LINKOPENNEWWIN: 'Link in een nieuw venster openen?' LINKTO: 'Verwijs naar' PAGE: Pagina + SUBJECT: 'Email onderwerp' URL: URL + URLDESCRIPTION: 'Voeg video''s of afbeeldingen van een andere webpagina toe, door de URL in te voeren. Zorg er voor dat je de juiste toestemming hebt, om het materiaal te delen op het internet.

De bestanden worden niet opgeslagen in het CMS, maar geëmbed vanaf de originele locatie. Als het bestand niet meer beschikbaar is op de originele locatie, is deze niet meer zichtbaar op deze pagina.' URLNOTANOEMBEDRESOURCE: '{url} kon niet worden omgezet in een media-bron.' + UpdateMEDIA: 'Media bijwerken' Image: PLURALNAME: Bestanden SINGULARNAME: Bestand @@ -294,16 +337,23 @@ nl: CANT_REORGANISE: 'U hebt geen rechten om de pagina''s op het Top niveau aan te passen. Uw aanpassing is niet opgeslagen. ' DELETED: Verwijderd. HELP: Help + PAGETYPE: 'Pagina type' PERMAGAIN: 'U bent uitgelogd uit het CMS. Als u weer wilt inloggen vul dan uw gebruikersnaam en wachtwoord hieronder in.' + PERMALREADY: 'Helaas, je hebt geen toegang tot dat deel van het CMS. Hieronder kun je inloggen als iemand anders.' + PERMDEFAULT: 'Je moet ingelogd zijn, om dit deel van de website te bekijken. Vul hieronder je inlog gegevens in.' + PLEASESAVE: 'Deze pagina kon niet bijgewerkt worden, omdat deze nog niet is bewaard.' PreviewButton: Voorbeeld REORGANISATIONSUCCESSFUL: 'Menu-indeling is aangepast' SAVEDUP: Opgeslagen. ShowAsList: 'laat als lijst zien' TooManyPages: 'Te veel pagina''s' ValidationError: 'Validatiefout' + VersionUnknown: onbekend LeftAndMain_Menu_ss: Hello: Hallo LOGOUT: 'Uitloggen' + ListboxField: + SOURCE_VALIDATION: 'Selecteer een optie uit de lijst. %s is geen geldige keuze.' LoginAttempt: Email: 'E-mailadres ' IP: 'IP adres' @@ -336,6 +386,7 @@ nl: NEWPASSWORD: 'Nieuw wachtwoord' NoPassword: 'Er is geen wachtwoord voor deze gebruiker.' PASSWORD: Wachtwoord + PASSWORDEXPIRED: 'Je wachtwoord is verlopen. Kies een nieuw wachtwoord.' PLURALNAME: Leden REMEMBERME: 'Wachtwoord onthouden voor de volgende keer?' SINGULARNAME: Lid @@ -378,6 +429,7 @@ nl: Toggle: 'Toon opmaak hulp' MemberImportForm: Help1: '

Importeer leden in CSV-formaat (comma-separated values). Toon geavanceerd gebruik

' + Help2: '

Geavanceerd gebruik

  • Toegestane kolommen: %s
  • Bestaande gebruikers worden geïdentificeerd door middel van hun unieke Code, en aangepast met de nieuwe waarden vanuit het geïmporteerde bestand
  • Groepen kunnen worden toegekend door Groups column. Groepen worden geïdentificeerd door middel van hun unieke Code, meerdere groepen kunnen worden gescheiden door een komma. Bestaande groepsleden worden niet verwijderd.
' ResultCreated: '{count} leden aangemaakt' ResultDeleted: '%d leden verwijderd' ResultNone: 'Geen wijzingen' @@ -441,6 +493,7 @@ nl: SINGULARNAME: Rol Title: Titel PermissionRoleCode: + PLURALNAME: 'Permissie codes' PermsError: 'U moet (ADMIN) rechten hebben om de code "%s" toe te kennen' SINGULARNAME: 'Machtigingen rol code' Permissions: @@ -506,6 +559,8 @@ nl: Print: Afdrukken TableListField_PageControls_ss: OF: van + TextField: + VALIDATEMAXLENGTH: 'De waarde voor {name} mag niet langer zijn dan {maxLength} tekens.' TimeField: VALIDATEFORMAT: 'Vul een geldig datumformaat in ({format})' ToggleField: diff --git a/lang/sk.yml b/lang/sk.yml index 2508e3d38..49035c88c 100644 --- a/lang/sk.yml +++ b/lang/sk.yml @@ -301,8 +301,8 @@ sk: FROMWEB: 'Z webu' FindInFolder: 'Vyhľadať v priečinku' IMAGEALT: 'Atlernatívny text (alt)' - IMAGEALTTEXT: 'Atlernatívny text (alt) - zobrazí sa, ak nemože byť zobrazený obrázok' - IMAGEALTTEXTDESC: 'Zobrazí sa na obrazovke, alebo ak obrázok nemôže byť zobrazený' + IMAGEALTTEXT: 'Atlernatívny text (alt) - vypísaný pokiaľ nemože byť zobrazený obrázok' + IMAGEALTTEXTDESC: 'Zobrazí sa na obrazovke, keď obrázok nemôže byť zobrazený' IMAGEDIMENSIONS: Rozmery IMAGEHEIGHTPX: Výška IMAGETITLE: 'Text titulky (tooltip) - pre doplňujúce informácie o obrázku' @@ -336,7 +336,7 @@ sk: LeftAndMain: CANT_REORGANISE: 'Nemáte oprávnenie meniť stránky najvyššej úrovne. Vaša zmena nebola uložená.' DELETED: Zmazané. - DropdownBatchActionsDefault: 'Vybrať akciu...' + DropdownBatchActionsDefault: 'Vyberte akciu...' HELP: Pomoc PAGETYPE: 'Typ stránky' PERMAGAIN: 'Boli ste odhlásený' From 68dca6f6c0cc14b1b0f1e1f70a608f78939ac156 Mon Sep 17 00:00:00 2001 From: Damian Mooyman Date: Wed, 11 May 2016 11:09:20 +1200 Subject: [PATCH 9/9] Added 3.1.19 changelog --- docs/en/04_Changelogs/3.1.19.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/docs/en/04_Changelogs/3.1.19.md b/docs/en/04_Changelogs/3.1.19.md index d911a0bc3..a304ced10 100644 --- a/docs/en/04_Changelogs/3.1.19.md +++ b/docs/en/04_Changelogs/3.1.19.md @@ -34,4 +34,19 @@ Injector: ### Security + * 2016-04-18 [3c0f2e8](https://github.com/silverstripe/silverstripe-framework/commit/3c0f2e8e11a1bead64d869854b9dfc0f80e7579a) Add CSFR protection to tree reorganise (Daniel Hensby) - See [ss-2015-029](http://www.silverstripe.org/download/security-releases/ss-2015-029) + * 2016-04-18 [a24c826](https://github.com/silverstripe/silverstripe-framework/commit/a24c8260b1d048dc6a0836eb1be9a1ca2056e770) Store current page IDs as ints (Daniel Hensby) - See [ss-2016-004](http://www.silverstripe.org/download/security-releases/ss-2016-004) + * 2016-04-18 [1ccd392](https://github.com/silverstripe/silverstripe-framework/commit/1ccd3926e3dcecaa5c1b4f26a390d9eacc24a893) Properly check backurl on CMSSecurity@success (Daniel Hensby) - See [ss-2016-001](http://www.silverstripe.org/download/security-releases/ss-2016-001) + * 2016-04-18 [f32c893](https://github.com/silverstripe/silverstripe-framework/commit/f32c893546340c8c279fd1ab6d4269e9d6539bc2) Apply brute force protection to default admin (Daniel Hensby) - See [ss-2016-005](http://www.silverstripe.org/download/security-releases/ss-2016-005) + * 2016-04-18 [a6bd22a](https://github.com/silverstripe/silverstripe-framework/commit/a6bd22ab2f3b11a054d20be13306a19089510989) dont disable XSS for login forms (Daniel Hensby) - See [ss-2016-006](http://www.silverstripe.org/download/security-releases/ss-2016-006) + ### Bugfixes + + * 2016-04-24 [fde6376](https://github.com/silverstripe/silverstripe-framework/commit/fde6376996dbaba31601065869c60676845eeb85) Admin bloacklisted messages using correct $.inArray check (Daniel Hensby) + * 2016-04-12 [36283b8](https://github.com/silverstripe/silverstripe-framework/commit/36283b86d5305cc2c5d4823e54972cd301978389) Stop "success" message showing in CMS (Daniel Hensby) + * 2016-03-31 [6ec2656](https://github.com/silverstripe/silverstripe-framework/commit/6ec26562019454483db79132a5c076cfa87dfe34) fix ErrorControlChain causing errors to be displayed if display_errors in php.ini is false (Damian Mooyman) + * 2016-03-18 [add2ecd](https://github.com/silverstripe/silverstripe-framework/commit/add2ecdf8bb977a0234cf773b578eae9872a0d28) Parameter tokens now redirect to correct url if mod_rewrite is off (Daniel Hensby) + * 2016-03-10 [bc31d9c](https://github.com/silverstripe/silverstripe-cms/commit/bc31d9ca9c667ba9015e35d5eae20158056a7b7c) Use `Controller::join_links()` in Reports (Daniel Hensby) + * 2016-03-08 [0364204](https://github.com/silverstripe/silverstripe-cms/commit/036420470da5def5c8e45c94601d3494273d476c) Incorrect title attribute on CMS tabs (Loz Calver) + * 2016-03-01 [817b836](https://github.com/silverstripe/silverstripe-framework/commit/817b83687028894574ba5a8e8ee8f3af21f23188) getIP from behind a load-balancer that adds many IPs to the header (Daniel Hensby) + * 2015-01-08 [adf0f10](https://github.com/silverstripe/silverstripe-framework/commit/adf0f102cc7a04cf8fcac8743801d48214118cad) Fixes CMS errors when viewing history on "Deleted" pages. (Russell Michell)