Merge remote-tracking branch 'origin/3.1'

Conflicts:
	docs/en/reference/dataobject.md
	lang/es.yml
This commit is contained in:
Ingo Schommer 2013-12-19 20:23:09 +01:00
commit f29d51f433
82 changed files with 1771 additions and 1352 deletions

View File

@ -698,17 +698,13 @@ class LeftAndMain extends Controller implements PermissionProvider {
}
/**
* Return a list of appropriate templates for this class, with the given suffix
* Return a list of appropriate templates for this class, with the given suffix using
* {@link SSViewer::get_templates_by_class()}
*
* @return array
*/
public function getTemplatesWithSuffix($suffix) {
$templates = array();
$classes = array_reverse(ClassInfo::ancestry($this->class));
foreach($classes as $class) {
$template = $class . $suffix;
if(SSViewer::hasTemplate($template)) $templates[] = $template;
if($class == 'LeftAndMain') break;
}
return $templates;
return SSViewer::get_templates_by_class(get_class($this), $suffix, 'LeftAndMain');
}
public function Content() {

View File

@ -5,9 +5,12 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
} else {
ss.i18n.addDictionary('cs', {
"ModelAdmin.SAVED": "Uloženo",
"ModelAdmin.REALLYDELETE": "Skutečně chcete smazat?",
"LeftAndMain.CONFIRMUNSAVED": "Určitě chcete opustit navigaci z této stránky?\n\nUPOZORNĚNÍ: Vaše změny nebyly uloženy.\n\nStlačte OK pro pokračovat, nebo Cancel, zůstanete na této stránce.",
"ModelAdmin.VALIDATIONERROR": "Chyba platnosti",
"ModelAdmin.DELETED": "Smazáno",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Skutečně chcete smazat %s skupiny?",
"ModelAdmin.REALLYDELETE": "Skutečně chcete smazat?",
"LeftAndMain.PAGEWASDELETED": "Tato stránka byla smazána. Pro editaci stránky, vyberte ji vlevo.",
"LeftAndMain.CONFIRMUNSAVED": "Určitě chcete opustit navigaci z této stránky?\n\nUPOZORNĚNÍ: Vaše změny nebyly uloženy.\n\nStlačte OK pro pokračovat, nebo Cancel, zůstanete na této stránce."
"LeftAndMain.CONFIRMUNSAVEDSHORT": "UPOZORNĚNÍ: Vaše změny nebyly uloženy."
});
}

View File

@ -5,10 +5,12 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
} else {
ss.i18n.addDictionary('de', {
"ModelAdmin.SAVED": "Gespeichert",
"ModelAdmin.REALLYDELETE": "Wirklich löschen?",
"ModelAdmin.DELETED": "Gelöscht",
"LeftAndMain.CONFIRMUNSAVED": "Sind Sie sicher, dass Sie die Seite verlassen möchten?\n\nWARNUNG: Ihre Änderungen werden nicht gespeichert.\n\nDrücken Sie \"OK\" um fortzufahren, oder \"Abbrechen\" um auf dieser Seite zu bleiben.",
"ModelAdmin.VALIDATIONERROR": "Validationsfehler",
"ModelAdmin.DELETED": "Gelöscht",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Möchten Sie wirklich %s Gruppen löschen?",
"ModelAdmin.REALLYDELETE": "Wirklich löschen?",
"LeftAndMain.PAGEWASDELETED": "Diese Seite wurde gelöscht.",
"LeftAndMain.CONFIRMUNSAVED": "Sind Sie sicher, dass Sie die Seite verlassen möchten?\n\nWARNUNG: Ihre Änderungen werden nicht gespeichert.\n\nDrücken Sie \"OK\" um fortzufahren, oder \"Abbrechen\" um auf dieser Seite zu bleiben."
"LeftAndMain.CONFIRMUNSAVEDSHORT": "WARNUNG: Ihre Änderungen wurden nicht gespeichert."
});
}

View File

@ -5,9 +5,12 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
} else {
ss.i18n.addDictionary('fr', {
"ModelAdmin.SAVED": "Sauvegardé",
"ModelAdmin.REALLYDELETE": "Etes-vous sûr de vouloir supprimer ?",
"LeftAndMain.CONFIRMUNSAVED": "Etes-vous sûr de vouloir quitter cette page ?\n\nATTENTION: Vos changements n'ont pas été sauvegardés.\n\nCliquez sur OK pour continuer, ou sur Annuler pour rester sur la page actuelle.",
"ModelAdmin.VALIDATIONERROR": "Validation Error",
"ModelAdmin.DELETED": "Supprimé",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Do you really want to delete %s groups?",
"ModelAdmin.REALLYDELETE": "Etes-vous sûr de vouloir supprimer ?",
"LeftAndMain.PAGEWASDELETED": "Cette page a été supprimée. Pour éditer cette page, veuillez la sélectionner à gauche.",
"LeftAndMain.CONFIRMUNSAVED": "Etes-vous sûr de vouloir quitter cette page ?\n\nATTENTION: Vos changements n'ont pas été sauvegardés.\n\nCliquez sur OK pour continuer, ou sur Annuler pour rester sur la page actuelle."
"LeftAndMain.CONFIRMUNSAVEDSHORT": "WARNING: Your changes have not been saved."
});
}

View File

@ -5,9 +5,12 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
} else {
ss.i18n.addDictionary('it', {
"ModelAdmin.SAVED": "Salvato",
"ModelAdmin.REALLYDELETE": "Si è sicuri di voler eliminare?",
"LeftAndMain.CONFIRMUNSAVED": "Siete sicuri di voler uscire da questa pagina?\n\nATTENZIONE: I vostri cambiamenti non sono stati salvati.\n\nCliccare OK per continuare, o su Annulla per rimanere sulla pagina corrente.",
"ModelAdmin.VALIDATIONERROR": "Validation Error",
"ModelAdmin.DELETED": "Eliminato",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Do you really want to delete %s groups?",
"ModelAdmin.REALLYDELETE": "Si è sicuri di voler eliminare?",
"LeftAndMain.PAGEWASDELETED": "Questa pagina è stata eliminata. Per modificare questa pagine, selezionarla a sinistra.",
"LeftAndMain.CONFIRMUNSAVED": "Siete sicuri di voler uscire da questa pagina?\n\nATTENZIONE: I vostri cambiamenti non sono stati salvati.\n\nCliccare OK per continuare, o su Annulla per rimanere sulla pagina corrente."
"LeftAndMain.CONFIRMUNSAVEDSHORT": "WARNING: Your changes have not been saved."
});
}

View File

@ -4,13 +4,13 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined');
} else {
ss.i18n.addDictionary('ja', {
"LeftAndMain.CONFIRMUNSAVED": "このページから移動しても良いですか?\n\n警告: あなたの変更は保存されていません.\n\n続行するにはOKを押してくださいキャンセルをクリックするとこのページにとどまります",
"LeftAndMain.CONFIRMUNSAVEDSHORT": "警告: あなたの変更は保存されていません.",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "%sグループを本当に削除しても良いですか?",
"ModelAdmin.SAVED": "保存しました",
"ModelAdmin.REALLYDELETE": "本当に削除しますか?",
"ModelAdmin.DELETED": "削除しました",
"LeftAndMain.CONFIRMUNSAVED": "このページから移動しても良いですか?\n\n警告: あなたの変更は保存されていません.\n\n続行するにはOKを押してくださいキャンセルをクリックするとこのページにとどまります",
"ModelAdmin.VALIDATIONERROR": "検証エラー",
"LeftAndMain.PAGEWASDELETED": "このページは削除されました.ページを編集するには,左から選択してください."
"ModelAdmin.DELETED": "削除しました",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "%sグループを本当に削除しても良いですか?",
"ModelAdmin.REALLYDELETE": "本当に削除しますか?",
"LeftAndMain.PAGEWASDELETED": "このページは削除されました.ページを編集するには,左から選択してください.",
"LeftAndMain.CONFIRMUNSAVEDSHORT": "警告: あなたの変更は保存されていません."
});
}

View File

@ -4,14 +4,13 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined');
} else {
ss.i18n.addDictionary('mi', {
"LeftAndMain.CONFIRMUNSAVED": "Kei te hiahia whakatere atu i tēnei whārangi?\n\nWHAKATŪPATO: Kāore anō ō huringa kia tiakina.\n\nPēhi AE kia haere tonu, Whakakore rānei kia noho i te whārangi onāianei.",
"LeftAndMain.CONFIRMUNSAVEDSHORT": "WHAKATŪPATO: Kāore anō ō huringa kia tiakina.",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Kei te tino hiahia muku i te %s rōpū?",
"ModelAdmin.SAVED": "Kua Tiakina",
"ModelAdmin.REALLYDELETE": "Kei te tino hiahia muku?",
"ModelAdmin.DELETED": "Kua Mukua",
"LeftAndMain.CONFIRMUNSAVED": "Kei te hiahia whakatere atu i tēnei whārangi?\n\nWHAKATŪPATO: Kāore anō ō huringa kia tiakina.\n\nPēhi AE kia haere tonu, Whakakore rānei kia noho i te whārangi onāianei.",
"ModelAdmin.VALIDATIONERROR": "Hapa Whakamana",
"LeftAndMain.PAGEWASDELETED": "I mukua tēnei whārangi. Hei whakatika i tētahi whārangi, tīpakohia i te taha mauī."
}
);
"ModelAdmin.DELETED": "Kua Mukua",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Kei te tino hiahia muku i te %s rōpū?",
"ModelAdmin.REALLYDELETE": "Kei te tino hiahia muku?",
"LeftAndMain.PAGEWASDELETED": "I mukua tēnei whārangi. Hei whakatika i tētahi whārangi, tīpakohia i te taha mauī.",
"LeftAndMain.CONFIRMUNSAVEDSHORT": "WHAKATŪPATO: Kāore anō ō huringa kia tiakina."
});
}

View File

@ -4,14 +4,13 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined');
} else {
ss.i18n.addDictionary('nl', {
"LeftAndMain.CONFIRMUNSAVED": "Weet u zeker dat u deze pagina wilt verlaten?\n\WAARSCHUWING: 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?",
"ModelAdmin.SAVED": "Opgeslagen",
"ModelAdmin.REALLYDELETE": "Weet u zeker dat u wilt verwijderen?",
"ModelAdmin.DELETED": "Verwijderd",
"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.",
"ModelAdmin.VALIDATIONERROR": "Validatie fout",
"LeftAndMain.PAGEWASDELETED": "Deze pagina is verwijderd. Om een pagina aan te passen, selecteer pagina aan de linkerkant."
}
);
"ModelAdmin.DELETED": "Verwijderd",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Weet u zeker dat u deze groep %s wilt verwijderen?",
"ModelAdmin.REALLYDELETE": "Weet u zeker dat u wilt verwijderen?",
"LeftAndMain.PAGEWASDELETED": "Deze pagina is verwijderd. Om een pagina aan te passen, selecteer pagina aan de linkerkant.",
"LeftAndMain.CONFIRMUNSAVEDSHORT": "WAARSCHUWING: Uw veranderingen zijn niet opgeslagen"
});
}

View File

@ -5,8 +5,12 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
} else {
ss.i18n.addDictionary('pl', {
"ModelAdmin.SAVED": "Zapisano",
"ModelAdmin.REALLYDELETE": "Napewno usunąć?",
"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.",
"ModelAdmin.VALIDATIONERROR": "Validation Error",
"ModelAdmin.DELETED": "Usunięto",
"LeftAndMain.PAGEWASDELETED": "Ta strona została usunięta."
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Do you really want to delete %s groups?",
"ModelAdmin.REALLYDELETE": "Napewno usunąć?",
"LeftAndMain.PAGEWASDELETED": "Ta strona została usunięta.",
"LeftAndMain.CONFIRMUNSAVEDSHORT": "WARNING: Your changes have not been saved."
});
}

View File

@ -5,9 +5,12 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
} else {
ss.i18n.addDictionary('sk', {
"ModelAdmin.SAVED": "Uložené",
"ModelAdmin.REALLYDELETE": "Skutočně chcete zmazať?",
"LeftAndMain.CONFIRMUNSAVED": "Určite chcete opustiť navigáciu z tejto stránky?\n\nUPOZORNENIE: Vaše zmeny neboli uložené.\n\nStlačte OK pre pokračovať, alebo Cancel, ostanete na teto stránke.",
"ModelAdmin.VALIDATIONERROR": "Chyba platnosti",
"ModelAdmin.DELETED": "Zmazané",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Skutočne chcete zmazať % skupiny?",
"ModelAdmin.REALLYDELETE": "Skutočně chcete zmazať?",
"LeftAndMain.PAGEWASDELETED": "Táto stránka bola zmazaná. Pre editáciu stránky, vyberte ju vľavo.",
"LeftAndMain.CONFIRMUNSAVED": "Určite chcete opustiť navigáciu z tejto stránky?\n\nUPOZORNENIE: Vaše zmeny neboli uložené.\n\nStlačte OK pre pokračovať, alebo Cancel, ostanete na teto stránke."
"LeftAndMain.CONFIRMUNSAVEDSHORT": "UPOZORNENIE: Vaše zmeny neboli uložené."
});
}

View File

@ -1,7 +1,10 @@
{
"ModelAdmin.SAVED": "Uloženo",
"ModelAdmin.REALLYDELETE": "Skutečně chcete smazat?",
"LeftAndMain.CONFIRMUNSAVED": "Určitě chcete opustit navigaci z této stránky?\n\nUPOZORNĚNÍ: Vaše změny nebyly uloženy.\n\nStlačte OK pro pokračovat, nebo Cancel, zůstanete na této stránce.",
"ModelAdmin.VALIDATIONERROR": "Chyba platnosti",
"ModelAdmin.DELETED": "Smazáno",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Skutečně chcete smazat %s skupiny?",
"ModelAdmin.REALLYDELETE": "Skutečně chcete smazat?",
"LeftAndMain.PAGEWASDELETED": "Tato stránka byla smazána. Pro editaci stránky, vyberte ji vlevo.",
"LeftAndMain.CONFIRMUNSAVED": "Určitě chcete opustit navigaci z této stránky?\n\nUPOZORNĚNÍ: Vaše změny nebyly uloženy.\n\nStlačte OK pro pokračovat, nebo Cancel, zůstanete na této stránce."
"LeftAndMain.CONFIRMUNSAVEDSHORT": "UPOZORNĚNÍ: Vaše změny nebyly uloženy."
}

View File

@ -1,8 +1,10 @@
{
"ModelAdmin.SAVED": "Gespeichert",
"ModelAdmin.REALLYDELETE": "Wirklich löschen?",
"ModelAdmin.DELETED": "Gelöscht",
"LeftAndMain.CONFIRMUNSAVED": "Sind Sie sicher, dass Sie die Seite verlassen möchten?\n\nWARNUNG: Ihre Änderungen werden nicht gespeichert.\n\nDrücken Sie \"OK\" um fortzufahren, oder \"Abbrechen\" um auf dieser Seite zu bleiben.",
"ModelAdmin.VALIDATIONERROR": "Validationsfehler",
"ModelAdmin.DELETED": "Gelöscht",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Möchten Sie wirklich %s Gruppen löschen?",
"ModelAdmin.REALLYDELETE": "Wirklich löschen?",
"LeftAndMain.PAGEWASDELETED": "Diese Seite wurde gelöscht.",
"LeftAndMain.CONFIRMUNSAVED": "Sind Sie sicher, dass Sie die Seite verlassen möchten?\n\nWARNUNG: Ihre Änderungen werden nicht gespeichert.\n\nDrücken Sie \"OK\" um fortzufahren, oder \"Abbrechen\" um auf dieser Seite zu bleiben."
"LeftAndMain.CONFIRMUNSAVEDSHORT": "WARNUNG: Ihre Änderungen wurden nicht gespeichert."
}

View File

@ -1,7 +1,10 @@
{
"ModelAdmin.SAVED": "Sauvegardé",
"ModelAdmin.REALLYDELETE": "Etes-vous sûr de vouloir supprimer ?",
"LeftAndMain.CONFIRMUNSAVED": "Etes-vous sûr de vouloir quitter cette page ?\n\nATTENTION: Vos changements n'ont pas été sauvegardés.\n\nCliquez sur OK pour continuer, ou sur Annuler pour rester sur la page actuelle.",
"ModelAdmin.VALIDATIONERROR": "Validation Error",
"ModelAdmin.DELETED": "Supprimé",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Do you really want to delete %s groups?",
"ModelAdmin.REALLYDELETE": "Etes-vous sûr de vouloir supprimer ?",
"LeftAndMain.PAGEWASDELETED": "Cette page a été supprimée. Pour éditer cette page, veuillez la sélectionner à gauche.",
"LeftAndMain.CONFIRMUNSAVED": "Etes-vous sûr de vouloir quitter cette page ?\n\nATTENTION: Vos changements n'ont pas été sauvegardés.\n\nCliquez sur OK pour continuer, ou sur Annuler pour rester sur la page actuelle."
"LeftAndMain.CONFIRMUNSAVEDSHORT": "WARNING: Your changes have not been saved."
}

View File

@ -1,7 +1,10 @@
{
"ModelAdmin.SAVED": "Salvato",
"ModelAdmin.REALLYDELETE": "Si è sicuri di voler eliminare?",
"LeftAndMain.CONFIRMUNSAVED": "Siete sicuri di voler uscire da questa pagina?\n\nATTENZIONE: I vostri cambiamenti non sono stati salvati.\n\nCliccare OK per continuare, o su Annulla per rimanere sulla pagina corrente.",
"ModelAdmin.VALIDATIONERROR": "Validation Error",
"ModelAdmin.DELETED": "Eliminato",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Do you really want to delete %s groups?",
"ModelAdmin.REALLYDELETE": "Si è sicuri di voler eliminare?",
"LeftAndMain.PAGEWASDELETED": "Questa pagina è stata eliminata. Per modificare questa pagine, selezionarla a sinistra.",
"LeftAndMain.CONFIRMUNSAVED": "Siete sicuri di voler uscire da questa pagina?\n\nATTENZIONE: I vostri cambiamenti non sono stati salvati.\n\nCliccare OK per continuare, o su Annulla per rimanere sulla pagina corrente."
"LeftAndMain.CONFIRMUNSAVEDSHORT": "WARNING: Your changes have not been saved."
}

View File

@ -1,10 +1,10 @@
{
"LeftAndMain.CONFIRMUNSAVED": "このページから移動しても良いですか?\n\n警告: あなたの変更は保存されていません.\n\n続行するにはOKを押してくださいキャンセルをクリックするとこのページにとどまります",
"LeftAndMain.CONFIRMUNSAVEDSHORT": "警告: あなたの変更は保存されていません.",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "%sグループを本当に削除しても良いですか?",
"ModelAdmin.SAVED": "保存しました",
"ModelAdmin.REALLYDELETE": "本当に削除しますか?",
"ModelAdmin.DELETED": "削除しました",
"LeftAndMain.CONFIRMUNSAVED": "このページから移動しても良いですか?\n\n警告: あなたの変更は保存されていません.\n\n続行するにはOKを押してくださいキャンセルをクリックするとこのページにとどまります",
"ModelAdmin.VALIDATIONERROR": "検証エラー",
"LeftAndMain.PAGEWASDELETED": "このページは削除されました.ページを編集するには,左から選択してください."
"ModelAdmin.DELETED": "削除しました",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "%sグループを本当に削除しても良いですか?",
"ModelAdmin.REALLYDELETE": "本当に削除しますか?",
"LeftAndMain.PAGEWASDELETED": "このページは削除されました.ページを編集するには,左から選択してください.",
"LeftAndMain.CONFIRMUNSAVEDSHORT": "警告: あなたの変更は保存されていません."
}

View File

@ -1,10 +1,10 @@
{
"LeftAndMain.CONFIRMUNSAVED": "Kei te hiahia whakatere atu i tēnei whārangi?\n\nWHAKATŪPATO: Kāore anō ō huringa kia tiakina.\n\nPēhi AE kia haere tonu, Whakakore rānei kia noho i te whārangi onāianei.",
"LeftAndMain.CONFIRMUNSAVEDSHORT": "WHAKATŪPATO: Kāore anō ō huringa kia tiakina.",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Kei te tino hiahia muku i te %s rōpū?",
"ModelAdmin.SAVED": "Kua Tiakina",
"ModelAdmin.REALLYDELETE": "Kei te tino hiahia muku?",
"ModelAdmin.DELETED": "Kua Mukua",
"LeftAndMain.CONFIRMUNSAVED": "Kei te hiahia whakatere atu i tēnei whārangi?\n\nWHAKATŪPATO: Kāore anō ō huringa kia tiakina.\n\nPēhi AE kia haere tonu, Whakakore rānei kia noho i te whārangi onāianei.",
"ModelAdmin.VALIDATIONERROR": "Hapa Whakamana",
"LeftAndMain.PAGEWASDELETED": "I mukua tēnei whārangi. Hei whakatika i tētahi whārangi, tīpakohia i te taha mauī."
"ModelAdmin.DELETED": "Kua Mukua",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Kei te tino hiahia muku i te %s rōpū?",
"ModelAdmin.REALLYDELETE": "Kei te tino hiahia muku?",
"LeftAndMain.PAGEWASDELETED": "I mukua tēnei whārangi. Hei whakatika i tētahi whārangi, tīpakohia i te taha mauī.",
"LeftAndMain.CONFIRMUNSAVEDSHORT": "WHAKATŪPATO: Kāore anō ō huringa kia tiakina."
}

View File

@ -1,10 +1,10 @@
{
"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?",
"ModelAdmin.SAVED": "Opgeslagen",
"ModelAdmin.REALLYDELETE": "Weet u zeker dat u wilt verwijderen?",
"ModelAdmin.DELETED": "Verwijderd",
"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.",
"ModelAdmin.VALIDATIONERROR": "Validatie fout",
"LeftAndMain.PAGEWASDELETED": "Deze pagina is verwijderd. Om een pagina aan te passen, selecteer pagina aan de linkerkant."
"ModelAdmin.DELETED": "Verwijderd",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Weet u zeker dat u deze groep %s wilt verwijderen?",
"ModelAdmin.REALLYDELETE": "Weet u zeker dat u wilt verwijderen?",
"LeftAndMain.PAGEWASDELETED": "Deze pagina is verwijderd. Om een pagina aan te passen, selecteer pagina aan de linkerkant.",
"LeftAndMain.CONFIRMUNSAVEDSHORT": "WAARSCHUWING: Uw veranderingen zijn niet opgeslagen"
}

View File

@ -1,6 +1,10 @@
{
"ModelAdmin.SAVED": "Zapisano",
"ModelAdmin.REALLYDELETE": "Napewno usunąć?",
"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.",
"ModelAdmin.VALIDATIONERROR": "Validation Error",
"ModelAdmin.DELETED": "Usunięto",
"LeftAndMain.PAGEWASDELETED": "Ta strona została usunięta."
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Do you really want to delete %s groups?",
"ModelAdmin.REALLYDELETE": "Napewno usunąć?",
"LeftAndMain.PAGEWASDELETED": "Ta strona została usunięta.",
"LeftAndMain.CONFIRMUNSAVEDSHORT": "WARNING: Your changes have not been saved."
}

View File

@ -1,7 +1,10 @@
{
"ModelAdmin.SAVED": "Uložené",
"ModelAdmin.REALLYDELETE": "Skutočně chcete zmazať?",
"LeftAndMain.CONFIRMUNSAVED": "Určite chcete opustiť navigáciu z tejto stránky?\n\nUPOZORNENIE: Vaše zmeny neboli uložené.\n\nStlačte OK pre pokračovať, alebo Cancel, ostanete na teto stránke.",
"ModelAdmin.VALIDATIONERROR": "Chyba platnosti",
"ModelAdmin.DELETED": "Zmazané",
"SecurityAdmin.BATCHACTIONSDELETECONFIRM": "Skutočne chcete zmazať % skupiny?",
"ModelAdmin.REALLYDELETE": "Skutočně chcete zmazať?",
"LeftAndMain.PAGEWASDELETED": "Táto stránka bola zmazaná. Pre editáciu stránky, vyberte ju vľavo.",
"LeftAndMain.CONFIRMUNSAVED": "Určite chcete opustiť navigáciu z tejto stránky?\n\nUPOZORNENIE: Vaše zmeny neboli uložené.\n\nStlačte OK pre pokračovať, alebo Cancel, ostanete na teto stránke."
"LeftAndMain.CONFIRMUNSAVEDSHORT": "UPOZORNENIE: Vaše zmeny neboli uložené."
}

View File

@ -160,11 +160,32 @@
},
//Add search (aka query) params to the specified url.
// 2013-12-06 ischommer: Customized to merge with existing keys
addSearchParams: function( url, params ) {
var u = path.parseUrl( url ),
p = ( typeof params === "object" ) ? $.param( params ) : params,
s = u.search || "?";
return u.hrefNoSearch + s + ( s.charAt( s.length - 1 ) !== "?" ? "&" : "" ) + p + ( u.hash || "" );
params = ( typeof params === "string" ) ? path.convertSearchToArray( params ) : params,
newParams = $.extend( path.convertSearchToArray( u.search ), params );
return u.hrefNoSearch + '?' + $.param( newParams ) + ( u.hash || "" );
},
// 2013-12-06 ischommer: Added to allow merge with existing keys
getSearchParams: function(url) {
var u = path.parseUrl( url );
return path.convertSearchToArray( u.search );
},
// Converts query strings (foo=bar&baz=bla) to a hash.
// TODO Handle repeating elements (e.g. arr[]=one&arr[]=two)
// 2013-12-06 ischommer: Added to allow merge with existing keys
convertSearchToArray: function(search) {
var params = {},
search = search.replace( /^\?/, '' ),
parts = search ? search.split( '&' ) : [], i, tmp;
for(i=0; i < parts.length; i++) {
tmp = parts[i].split( '=' );
params[tmp[0]] = tmp[1];
}
return params;
},
convertUrlToDataUrl: function( absUrl ) {

View File

@ -40,7 +40,7 @@ body.cms.ss-uploadfield-edit-iframe .fieldholder-small label, .composite.ss-asse
.ss-assetuploadfield .ss-uploadfield-files .ui-state-error .ss-uploadfield-item-info { background-color: #c11f1d; padding-right: 130px; background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #c11f1d), color-stop(4%, #bf1d1b), color-stop(8%, #b71b1c), color-stop(15%, #b61e1d), color-stop(27%, #b11d1d), color-stop(31%, #ab1d1c), color-stop(42%, #a51b1b), color-stop(46%, #9f1b19), color-stop(50%, #9f1b19), color-stop(54%, #991c1a), color-stop(58%, #971a18), color-stop(62%, #911b1b), color-stop(65%, #911b1b), color-stop(88%, #7e1816), color-stop(92%, #771919), color-stop(100%, #731817)); background-image: -webkit-linear-gradient(top, #c11f1d 0%, #bf1d1b 4%, #b71b1c 8%, #b61e1d 15%, #b11d1d 27%, #ab1d1c 31%, #a51b1b 42%, #9f1b19 46%, #9f1b19 50%, #991c1a 54%, #971a18 58%, #911b1b 62%, #911b1b 65%, #7e1816 88%, #771919 92%, #731817 100%); background-image: -moz-linear-gradient(top, #c11f1d 0%, #bf1d1b 4%, #b71b1c 8%, #b61e1d 15%, #b11d1d 27%, #ab1d1c 31%, #a51b1b 42%, #9f1b19 46%, #9f1b19 50%, #991c1a 54%, #971a18 58%, #911b1b 62%, #911b1b 65%, #7e1816 88%, #771919 92%, #731817 100%); background-image: -o-linear-gradient(top, #c11f1d 0%, #bf1d1b 4%, #b71b1c 8%, #b61e1d 15%, #b11d1d 27%, #ab1d1c 31%, #a51b1b 42%, #9f1b19 46%, #9f1b19 50%, #991c1a 54%, #971a18 58%, #911b1b 62%, #911b1b 65%, #7e1816 88%, #771919 92%, #731817 100%); background-image: linear-gradient(top, #c11f1d 0%, #bf1d1b 4%, #b71b1c 8%, #b61e1d 15%, #b11d1d 27%, #ab1d1c 31%, #a51b1b 42%, #9f1b19 46%, #9f1b19 50%, #991c1a 54%, #971a18 58%, #911b1b 62%, #911b1b 65%, #7e1816 88%, #771919 92%, #731817 100%); }
.ss-assetuploadfield .ss-uploadfield-files .ui-state-error .ss-uploadfield-item-info .ss-uploadfield-item-name { width: 100%; cursor: default; background: #bcb9b9; background: rgba(201, 198, 198, 0.9); }
.ss-assetuploadfield .ss-uploadfield-files .ui-state-error .ss-uploadfield-item-info .ss-uploadfield-item-name .name { text-shadow: 0px 1px 0px rgba(255, 255, 255, 0.7); }
.ss-assetuploadfield .ss-uploadfield-files .ui-state-warning .ss-uploadfield-item-info { background-color: #ff9300; background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #eba547), color-stop(8%, #e89a30), color-stop(50%, #e68f19), color-stop(54%, #e68e19), color-stop(96%, #e17519), color-stop(100%, #dc6718)); background-image: -webkit-linear-gradient(top, #eba547 0%, #e89a30 8%, #e68f19 50%, #e68e19 54%, #e17519 96%, #dc6718 100%); background-image: -moz-linear-gradient(top, #eba547 0%, #e89a30 8%, #e68f19 50%, #e68e19 54%, #e17519 96%, #dc6718 100%); background-image: -o-linear-gradient(top, #eba547 0%, #e89a30 8%, #e68f19 50%, #e68e19 54%, #e17519 96%, #dc6718 100%); background-image: linear-gradient(top, #eba547 0%, #e89a30 8%, #e68f19 50%, #e68e19 54%, #e17519 96%, #dc6718 100%); }
.ss-assetuploadfield .ss-uploadfield-files .ui-state-warning .ss-uploadfield-item-info { background-color: #e9d104; background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e5d33b), color-stop(8%, #e2ce24), color-stop(50%, #d1be1c), color-stop(54%, #d1bc1b), color-stop(96%, #d09a1a), color-stop(100%, #ce8719)); background-image: -webkit-linear-gradient(top, #e5d33b 0%, #e2ce24 8%, #d1be1c 50%, #d1bc1b 54%, #d09a1a 96%, #ce8719 100%); background-image: -moz-linear-gradient(top, #e5d33b 0%, #e2ce24 8%, #d1be1c 50%, #d1bc1b 54%, #d09a1a 96%, #ce8719 100%); background-image: -o-linear-gradient(top, #e5d33b 0%, #e2ce24 8%, #d1be1c 50%, #d1bc1b 54%, #d09a1a 96%, #ce8719 100%); background-image: linear-gradient(top, #e5d33b 0%, #e2ce24 8%, #d1be1c 50%, #d1bc1b 54%, #d09a1a 96%, #ce8719 100%); }
.ss-assetuploadfield .ss-uploadfield-files .ss-uploadfield-item-name { position: relative; z-index: 1; margin: 3px 0 3px 50px; width: 50%; color: #5e5e5e; background: #eeeded; background: rgba(255, 255, 255, 0.8); -webkit-border-radius: 3px; -moz-border-radius: 3px; -ms-border-radius: 3px; -o-border-radius: 3px; border-radius: 3px; line-height: 24px; height: 22px; padding: 0 5px; text-align: left; cursor: pointer; display: table; table-layout: fixed; }
.ss-assetuploadfield .ss-uploadfield-files .ss-uploadfield-item-name .name { text-shadow: 0px 1px 0px rgba(255, 255, 255, 0.5); display: inline; float: left; max-width: 50%; font-weight: normal; padding: 0 5px 0 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; -o-text-overflow: ellipsis; }
.ss-assetuploadfield .ss-uploadfield-files .ss-uploadfield-item-name .ss-uploadfield-item-status { position: relative; float: right; padding: 0 0 0 5px; max-width: 30%; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; -o-text-overflow: ellipsis; text-shadow: 0px 1px 0px rgba(255, 255, 255, 0.5); }
@ -65,6 +65,8 @@ body.cms.ss-uploadfield-edit-iframe .fieldholder-small label, .composite.ss-asse
.ss-assetuploadfield .ss-uploadfield-files .ss-uploadfield-item-progress .ss-uploadfield-item-progressbar { background-color: #92a6b3; background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #92a6b3), color-stop(11%, #90aab8), color-stop(22%, #96b1bf), color-stop(33%, #9eb4c1), color-stop(44%, #a7bac7), color-stop(100%, #c1d5dc)); background-image: -webkit-linear-gradient(top, #92a6b3 0%, #90aab8 11%, #96b1bf 22%, #9eb4c1 33%, #a7bac7 44%, #c1d5dc 100%); background-image: -moz-linear-gradient(top, #92a6b3 0%, #90aab8 11%, #96b1bf 22%, #9eb4c1 33%, #a7bac7 44%, #c1d5dc 100%); background-image: -o-linear-gradient(top, #92a6b3 0%, #90aab8 11%, #96b1bf 22%, #9eb4c1 33%, #a7bac7 44%, #c1d5dc 100%); background-image: linear-gradient(top, #92a6b3 0%, #90aab8 11%, #96b1bf 22%, #9eb4c1 33%, #a7bac7 44%, #c1d5dc 100%); }
.ss-assetuploadfield .ss-uploadfield-files .ss-uploadfield-item-progress .ss-uploadfield-item-progressbarvalue { width: 0; background: #60b3dd url(../images/progressbar_blue.gif) repeat left center; }
.ss-assetuploadfield .ss-uploadfield-files .ss-uploadfield-item-editform { /* don't use display none, for it will break jQuery('iframe').contents().height() */ height: 0; overflow: hidden; clear: both; }
.ss-assetuploadfield .ss-uploadfield-files .ss-uploadfield-item-editform.loading { width: 100%; height: 22px; padding: 15px 0; background: url(../admin/images/spinner.gif) no-repeat 50% 50%; }
.ss-assetuploadfield .ss-uploadfield-files .ss-uploadfield-item-editform.loading iframe { /* Old IE needs this or it'll give the iframe a white background, covering the spinner */ padding-top: 0; margin-top: 37px; border: none; }
.ss-assetuploadfield .ss-uploadfield-files .ss-uploadfield-item-editform iframe { width: 100%; }
.ss-assetuploadfield .ss-uploadfield-addfile .ss-uploadfield-item-info { float: left; margin: 25px 0 0; }
.ss-insert-media .ss-assetuploadfield .ss-uploadfield-addfile .ss-uploadfield-item-info { margin: 10px 0px 0 20px; }

View File

@ -39,6 +39,8 @@ Used in side panels and action tabs
.ss-uploadfield .ss-uploadfield-files .ss-uploadfield-item-cancel button span.ui-button-text, .ss-uploadfield .ss-uploadfield-files .ss-uploadfield-item-start button span.ui-button-text { display: none; }
.ss-uploadfield .ss-uploadfield-files .ss-uploadfield-item-start { right: 20px; }
.ss-uploadfield .ss-uploadfield-files .ss-uploadfield-item-editform { /* don't use display none, for it will break jQuery('iframe').contents().height() */ height: 0; overflow: hidden; clear: both; }
.ss-uploadfield .ss-uploadfield-files .ss-uploadfield-item-editform.loading { width: 100%; height: 22px; margin: 15px 0 0; background: url(../admin/images/spinner.gif) no-repeat 50% 0; }
.ss-uploadfield .ss-uploadfield-files .ss-uploadfield-item-editform.loading iframe { /* Old IE needs this or it'll give the iframe a white background, covering the spinner */ padding-top: 0; margin-top: 22px; border: none; }
.ss-uploadfield .ss-uploadfield-files .ss-uploadfield-item-editform iframe { margin-top: 8px; padding-top: 8px; border-top: 1px solid #d0d3d5; width: 100%; }
.ss-uploadfield .ss-uploadfield-addfile.borderTop { border-top: 1px solid #b3b3b3; }

View File

@ -1,35 +1,24 @@
body { background: #eee !important; margin: 0; overflow-x: hidden; padding: 0; font-family: Helvetica,Arial,sans-serif; }
.info { margin: 0 0 6px 0; padding: 18px; background-color: #003050; position: relative; line-height: 24px; color: #fff; background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #002137), color-stop(10%, #003050), color-stop(90%, #003050), color-stop(100%, #002137)); background-image: -webkit-linear-gradient(#002137, #003050 10%, #003050 90%, #002137); background-image: -moz-linear-gradient(#002137, #003050 10%, #003050 90%, #002137); background-image: -o-linear-gradient(#002137, #003050 10%, #003050 90%, #002137); background-image: linear-gradient(#002137, #003050 10%, #003050 90%, #002137); z-index: 9999; }
.info h1 { margin: 0 0 6px 0; padding: 0 32px 0 0; color: #fff; font-size: 24px; text-shadow: 0 1px #002137; line-height: 30px; background: url(../admin/images/logo_small.png) no-repeat right 3px; }
.info h3 { color: #7da4be; font-size: 16px; line-height: 18px; font-weight: normal; }
.info p { margin: 0; font-size: 14px; color: #fff; }
.info a { color: #fff; font-weight: bold; text-decoration: none; }
.info a:hover, .info a:active { color: #fff; text-decoration: underline; }
.header { margin: 0; border-bottom: 6px solid #ccdef3; height: 23px; background-color: #666673; padding: 4px 0 2px 6px; }
.content {padding: 6px 12px;}
.trace, .build, .options { padding: 6px 12px; background: #eee !important; position: relative; z-index: 9999; }
.trace li, .build li, .options li { font-size: 14px; margin: 6px 0; }
a { color: #666; }
a:hover { color: #222; }
a:active { color: #111; }
p { margin-bottom: 6px; }
pre { margin-bottom: 20px; background-color: #f5f5f5; border: 1px solid #eee; border: 1px solid rgba(0, 0, 0, 0.08); color: #333; padding: 11px; overflow: auto; -webkit-border-radius: 4px; -moz-border-radius: 4px; -ms-border-radius: 4px; -o-border-radius: 4px; border-radius: 4px; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); }
pre span { color: #999; }
pre .error { color: #f00; }
h2 { margin: 0 0 12px 0; }
h3 { margin: 0 0 6px 0; color: #333; font-size: 18px; line-height: 24px; }
ul { margin: 0 0 18px 0; padding: 0 0 0 18px; }
fieldset { border: 1px solid #b2b2b2; margin-bottom: 18px; padding: 17px; }
fieldset { border: 0; padding: 0;}
.pass { margin-top: 18px; padding: 2px 20px 2px 40px; color: #006600; background: #E2F9E3; border: 1px solid #8DD38D; border-radius: 4px; }
.fail { margin-top: 18px; padding: 2px 20px 2px 40px; color: #C80700; background: #FFE9E9; border: 1px solid #C80700; border-radius: 4px; }

View File

@ -73,11 +73,49 @@ We're merging back translations into all supported release branches as well as t
The following script should be applied to the oldest release branch, and then merged forward into newer branches:
tx pull
# Manually review changes through git diff
# Manually review changes through git diff, then commit
git add lang/*
git commit -m "Updated translations"
You can download your work right from Transifex in order to speed up the process for your desired language.
Note: You can download your work right from Transifex in order to speed up the process for your desired language.
## JavaScript Translations
SilverStripe also supports translating strings in JavaScript (see [i18n](/topics/i18n)),
but there's a conversion step involved in order to get those translations syncing with Transifex.
Our translation files stored in `mymodule/javascript/lang/*.js` call `ss.i18n.addDictionary()` to add files.
ss.i18n.addDictionary('de', {"MyNamespace.MyKey": "My Translation"});
But Transifex only accepts structured formats like JSON.
{"MyNamespace.MyKey": "My Translation"}
First of all, you need to create those source files in JSON, and store them in `mymodule/javascript/lang/src/*.js`. In your `.tx/config` you can configure this path as a separate master location.
[main]
host = https://www.transifex.com
[silverstripe-mymodule.master]
file_filter = lang/<lang>.yml
source_file = lang/en.yml
source_lang = en
type = YML
[silverstripe-mymodule.master-js]
file_filter = javascript/lang/src/<lang>.js
source_file = javascript/lang/src/en.js
source_lang = en
type = KEYVALUEJSON
Now you can upload the source files via a normal `tx push`. Once translations come in,
you need to convert the source files back into the JS files SilverStripe can actually read.
This requires an installation of our [buildtools](https://github.com/silverstripe/silverstripe-buildtools).
tx pull
(cd .. && phing -Dmodule=mymodule translation-generate-javascript-for-module)
git add javascript/lang/*
git commit -m "Updated javascript translations"
# Related

View File

@ -2,90 +2,151 @@
## Introduction
Extensions allow for adding additional functionality to a `[api:DataObject]`.
In some cases, it can be easier to completely replace the used class throughout the core with your custom
implementation. Have a look at `[api:Object->useCustomClass()]`.
Extensions allow for adding additional functionality to a `[api:DataObject]` or
modifying existing functionality without the hassle of creating a subclass.
## Usage
Your extension will need to be a subclass of `[api:DataExtension]` or the `[api:Extension]` class.
Extensions are defined as subclasses of either `[api:DataExtension]` for
extending a `[api:DataObject]` subclass or the `[api:Extension]` class for non
DataObject subclasses (such as Controllers)
:::php
<?php
// mysite/code/MyMemberExtension.php
class MyMemberExtension extends DataExtension {}
This defines your own extension where you can add your own functions, database fields or other properties you want.
After you create this extension however it does not yet apply it to your object. Next you need to tell SilverStripe what
class MyMemberExtension extends DataExtension {
}
This defines your own extension where we can add our own functions, database
fields or other properties. After this class has been created, it
does not yet apply it to your object. Next you need to tell SilverStripe what
class you want to extend.
### Adding a extension to a built-in class
Sometimes you will want to add extension to classes that you can't cleanly subclass.
For example, you might want to add a `MyMemberExtension` class to the `[api:Member]` object.
For example, you may might want to add a `MyMemberExtension` class to the
`[api:Member]` object to provide a custom method.
In order to active this extension, you'd add the following to your [config.yml](/topics/configuration).
In order to active this extension, you need to add the following to your
[config.yml](/topics/configuration).
:::yml
Member:
extensions:
- MyMemberExtension
Alternatively, you can add extensions through PHP code as well (in your `config.php` file),
which means they can be used in conditional configuration.
Alternatively, you can add extensions through PHP code (in your `_config.php`
file).
:::php
Member::add_extension('MyMemberExtension');
### Extending code to allow for extensions
If you're providing a module or working on code that may need to be extended by
other code, it can provide a *hook* which allows an Extension to modify the
results. This is done through the `[api:Object->extend()]` method.
:::php
public function myFunc() {
$foo = // ..
$this->extend('alterFoo', $foo);
return $foo;
}
In this example, the myFunc() method adds a hook to allow `DataExtension`
subclasses added to the instance to define an `alterFoo($foo)` method to modify
the result of the method.
The `$foo` parameter is passed by reference, as it is an object.
### Accessing the original Object from an Extension
In your extension class you can refer to the source object through the `owner`
property on the class.
:::php
<?php
class CustomMember extends Member {
public function alterFoo($foo) {
// outputs the original class
var_dump($this->owner);
}
}
### Checking to see if an Object has an Extension
To see what extensions are currently enabled on an object, you can use
`[api:Object->getExtensionInstances()]` and `[api:Object->hasExtension($extension)]`.
## Implementation
### Adding extra database fields
Extra database fields can be added with a extension in the same manner as if they
were placed on the `DataObject` class they're applied to. These will be added to the table of the base object - the extension will actually edit the $db, $has_one, etc static variables on load.
Extra database fields can be added with a extension in the same manner as if
they were placed on the `DataObject` class they're applied to. These will be
added to the table of the base object - the extension will actually edit the
$db, $has_one, etc static variables on load.
The function should return a map where the keys are the names of the static variables to update:
The function should return a map where the keys are the names of the static
variables to update:
:::php
<?php
class CustomMember extends DataExtension {
private static $db = array(
'AvatarURL' => 'Varchar',
'Position' => 'Varchar',
);
private static $has_one = array(
'RelatedMember' => 'Member',
'Image' => 'Image',
);
}
### Modifying CMS Fields
The member class demonstrates an extension that allows you to update the default CMS fields for an
object in an extension:
The member class demonstrates an extension that allows you to update the default
CMS fields for an object in an extension:
:::php
public function getCMSFields() {
// ...
$this->extend('updateCMSFields', $fields);
return $fields;
}
<?php
class CustomMember extends DataExtension {
The `$`fields parameter is passed by reference, as it is an object.
private static $db = array(
'Position' => 'Varchar',
);
private static $has_one = array(
'Image' => 'Image',
);
:::php
public function updateCMSFields(FieldList $fields) {
$fields->push(new TextField('Position', 'Position Title'));
$fields->push(new TextField('Position'));
$fields->push(new UploadField('Image', 'Profile Image'));
}
}
### Adding/modifying fields prior to extensions
User code can intervene in the process of extending cms fields by using `beforeUpdateCMSFields`
in its implementation of `getCMSFields`. This can be useful in cases where user code will add
fields to a dataobject that should be present in the `$fields` parameter when passed to
`updateCMSFields` in extensions.
User code can intervene in the process of extending cms fields by using
`beforeUpdateCMSFields` in its implementation of `getCMSFields`. This can be
useful in cases where user code will add fields to a dataobject that should be
present in the `$fields` parameter when passed to `updateCMSFields` in
extensions.
This method is preferred to disabling, enabling, and calling cms field extensions manually.
This method is preferred to disabling, enabling, and calling cms field
extensions manually.
:::php
function getCMSFields() {
@ -101,81 +162,100 @@ This method is preferred to disabling, enabling, and calling cms field extension
### Object extension injection points
`Object` now has two additional methods, `beforeExtending` and `afterExtending`, each of which takes a
method name and a callback to be executed immediately before and after `Object::extend()` is called on
extensions.
`Object` now has two additional methods, `beforeExtending` and `afterExtending`,
each of which takes a method name and a callback to be executed immediately
before and after `Object::extend()` is called on extensions.
This is useful in many cases where working with modules such as `Translatable` which operate on
`DataObject` fields that must exist in the `FieldList` at the time that `$this->extend('UpdateCMSFields')`
is called.
This is useful in many cases where working with modules such as `Translatable`
which operate on `DataObject` fields that must exist in the `FieldList` at the
time that `$this->extend('UpdateCMSFields')` is called.
<div class="notice" markdown='1'>
Please note that each callback is only ever called once, and then cleared, so multiple extensions
to the same function require that a callback is registered each time, if necessary.
Please note that each callback is only ever called once, and then cleared, so
multiple extensions to the same function require that a callback is registered
each time, if necessary.
</div>
Example: A class that wants to control default values during object initialisation. The code
needs to assign a value if not specified in self::$defaults, but before extensions have been called:
Example: A class that wants to control default values during object
initialization. The code needs to assign a value if not specified in
`self::$defaults`, but before extensions have been called:
:::php
function __construct() {
$self = $this;
$this->beforeExtending('populateDefaults', function() uses ($self) {
if(empty($self->MyField)) {
$self->MyField = 'Value we want as a default if not specified in $defaults, but set before extensions';
}
});
parent::__construct();
}
### Custom database generation
Some extensions are designed to transparently add more sophisticated data-collection capabilities to your data object.
For example, `[api:Versioned]` adds version tracking and staging to any data object that it is applied to. To do this,
you need to be able to create additional database tables and fields to keep your state stored in.
Some extensions are designed to transparently add more sophisticated
data-collection capabilities to your `DataObject`. For example, `[api:Versioned]`
adds version tracking and staging to any `DataObject` that it is applied to.
To do this, define an **augmentDatabase()** method on your extension. This will be called when db/build is visited.
To do this, define an **augmentDatabase()** method on your extension. This will
be called when the database is rebuilt.
* You can query ``$this->owner`` for information about the data object, such as the fields it has
* You can use **DB::requireTable($tableName, $fieldList, $indexList)** to set up your new tables. This function takes
care of creating, modifying, or leaving tables as required, based on your desired schema.
* You can query `$this->owner` for information about the data object, such as
the fields it has
* You can use **DB::requireTable($tableName, $fieldList, $indexList)** to set
up your new tables. This function takes care of creating, modifying, or leaving
tables as required, based on your desired schema.
### Custom write queries
If you have customised the generated database, then you probably want to change the way that writes happen. This is
used by `[api:Versioned]` to get an entry written in ClassName_versions whenever an insert/update happens.
If you have customised the generated database, then you probably want to change
the way that writes happen. This isused by `[api:Versioned]` to get an entry
written in ClassName_versions whenever an insert/update happens.
To do this, define the **augmentWrite(&$manipulation)** method. This method is passed a manipulation array representing
the write about to happen, and is able to amend this as desired, since it is passed by reference.
To do this, define the **augmentWrite(&$manipulation)** method. This method is
passed a manipulation array representing the write about to happen, and is able
to amend this as desired, since it is passed by reference.
### Custom relation queries
The other queries that you will want to customise are the selection queries, called by get & get_one. For example, the
Versioned object has code to redirect every request to ClassName_live, if you are browsing the live site.
The other queries that you will want to customise are the selection queries,
called by get & get_one. For example, the Versioned object has code to redirect
every request to ClassName_live, if you are browsing the live site.
To do this, define the **augmentSQL(SQLQuery &$query)** method. Again, the $query object is passed by reference and can
be modified as needed by your method. Instead of a manipulation array, we have a `[api:SQLQuery]` object.
To do this, define the **augmentSQL(SQLQuery &$query)** method. Again, the
`$query` object is passed by reference and can be modified as needed by your
method. Instead of a manipulation array, we have a `[api:SQLQuery]` object.
### Additional methods
The other thing you may want to do with a extension is provide a method that can be called on the `[api:DataObject]` that is
being extended. For instance, you may add a publish() method to every `[api:DataObject]` that is extended with `[api:Versioned]`.
The other thing you may want to do with a extension is provide a method that can
be called on the `[api:DataObject]` that is being extended. For instance, you
may add a publish() method to every `[api:DataObject]` that is extended with
`[api:Versioned]`.
This is as simple as defining a method called publish() on your extension. Bear in mind, however, that instead of
$this, you should be referring to $this->owner.
This is as simple as defining a method called publish() on your extension. Bear
in mind, however, that instead of $this, you should be referring to
`$this->owner`.
* $this = The `[api:DataExtension]` object.
* $this->owner = The related `[api:DataObject]` object.
If you want to add your own internal properties, you can add this to the `[api:DataExtension]`, and these will be referred
to as `$this->propertyName`. Every `[api:DataObject]` has an associated `[api:DataExtension]` instance for each class that it is
extended by.
If you want to add your own internal properties, you can add this to the
`[api:DataExtension]`, and these will be referred to as `$this->propertyName`.
Every `[api:DataObject]` has an associated `[api:DataExtension]` instance for
each class that it is extended by.
:::php
<?php
class Customer extends DataObject {
private static $has_one = array('Account'=>'Account');
private static $has_one = array(
'Account' => 'Account'
);
private static $extensions = array(
'CustomerWorkflow'
@ -189,8 +269,9 @@ extended by.
'IsMarkedForDeletion'=>'Boolean'
);
private static $has_many = array('Customers'=>'Customer');
private static $has_many = array(
'Customers' => 'Customer'
);
}
class CustomerWorkflow extends DataExtension {
@ -198,9 +279,15 @@ extended by.
public function IsMarkedForDeletion() {
return ($this->owner->Account()->IsMarkedForDeletion == 1) ? true : false;
}
}
## API Documentation
`[api:DataExtension]`
* `[api:Extension]`
* `[api:DataExtension]`
## See Also
* [Injector](injector/)
* `[api:Object::useCustomClass]`

View File

@ -273,7 +273,10 @@ arrays that represent each index. There's several supported notations:
'<index-name>' => 'unique("<column-name>")'
);
The "advanced" notation varies between database drivers, but all of them support the following keys:
The `<index-name>` can be an an arbitrary identifier in order to allow for more than one
index on a specific database column.
The "advanced" notation supports more `<type>` notations.
These vary between database drivers, but all of them support the following:
* `index`: Standard index
* `unique`: Index plus uniqueness constraint on the value

View File

@ -272,7 +272,7 @@ This would be equivalent to a SQL query of
The where clauses showcased in the previous two sections (filter and exclude)
specify exact matches by default. However, there are a number of suffixes that
you can put on field names to change this behavior such as `":StartsWith"`,
`":EndsWith"`, `":PartialMatch"`, `":GreaterThan"`, `":LessThan"`,
`":EndsWith"`, `":PartialMatch"`, `":GreaterThan"`, `":GreaterThanOrEqual"`, `":LessThan"`, `":LessThanOrEqual"`,
`":Negation"`.
Each of these suffixes is represented in the ORM as a subclass of

View File

@ -1329,7 +1329,10 @@ ss.editorWrappers['default'] = ss.editorWrappers.tinyMCE;
onclick: function(e) {
var editForm = this.getEditForm();
editForm.parent('.ss-uploadfield-item').removeClass('ui-state-warning');
// Make sure we're in an HtmlEditorField here, or fall-back to _super(). HtmlEditorField with
// AssetUploadField doesn't use iframes, so needs its own toggleEditForm() logic
if (this.closest('.ss-uploadfield-item').hasClass('ss-htmleditorfield-file')) {
editForm.parent('ss-uploadfield-item').removeClass('ui-state-warning');
editForm.toggleEditForm();
@ -1337,6 +1340,9 @@ ss.editorWrappers['default'] = ss.editorWrappers.tinyMCE;
return false; // Avoid duplication from button
}
this._super(e);
}
});
$('div.ss-assetuploadfield .ss-uploadfield-item-editform').entwine({

View File

@ -396,10 +396,49 @@
});
$( 'div.ss-upload:not(.disabled):not(.readonly) .ss-uploadfield-item-edit').entwine({
onclick: function(e) {
var editform = this.closest('.ss-uploadfield-item').find('.ss-uploadfield-item-editform');
var itemInfo = editform.prev('.ss-uploadfield-item-info');
var self = this,
editform = self.closest('.ss-uploadfield-item').find('.ss-uploadfield-item-editform'),
itemInfo = editform.prev('.ss-uploadfield-item-info'),
iframe = editform.find('iframe');
// Ignore clicks while the iframe is loading
if (iframe.parent().hasClass('loading')) {
e.preventDefault();
return false;
}
if (iframe.attr('src') == 'about:blank') {
// Lazy-load the iframe on editform toggle
iframe.attr('src', iframe.data('src'));
// Add loading class, disable buttons while loading is in progress
// (_prepareIframe() handles re-enabling them when appropriate)
iframe.parent().addClass('loading');
disabled=this.siblings();
disabled.addClass('ui-state-disabled');
disabled.attr('disabled', 'disabled');
iframe.on('load', function() {
iframe.parent().removeClass('loading');
// This ensures we only call _prepareIframe() on load once - otherwise it'll
// be superfluously called after clicking 'save' in the editform
if (iframe.data('src')) {
self._prepareIframe(iframe, editform, itemInfo);
iframe.data('src', '');
}
if (editform.hasClass('opened')) editform.fitHeight();
});
} else {
self._prepareIframe(iframe, editform, itemInfo);
}
e.preventDefault(); // Avoid a form submit
return false;
},
_prepareIframe: function(iframe, editform, itemInfo) {
var disabled;
var iframe = editform.find('iframe');
// Mark the row as changed if any of its form fields are edited
iframe.contents().ready(function() {
@ -431,8 +470,6 @@
disabled.removeAttr('disabled');
}
}
e.preventDefault(); // Avoid a form submit
return false;
}
});
@ -507,20 +544,6 @@
status.attr('title',text).text(text);
}
});
$('div.ss-upload .ss-uploadfield-item-editform iframe').entwine({
onmatch: function() {
var form = this.closest('.ss-uploadfield-item-editform');
// TODO entwine event binding doesn't work for iframes
this.load(function() {
$(this).parent().removeClass('loading');
if(form.hasClass('opened')) form.fitHeight();
});
this._super();
},
onunmatch: function() {
this._super();
}
});
$('div.ss-upload .ss-uploadfield-fromfiles').entwine({
onclick: function(e) {
this.getUploadField().openSelectDialog(this.closest('.ss-uploadfield-item'));

View File

@ -27,7 +27,7 @@ window.tmpl.cache['ss-uploadfield-downloadtemplate'] = tmpl(
'{% } %}' +
'</div>' +
'{% if (!file.error) { %}' +
'<div class="ss-uploadfield-item-editform loading"><iframe frameborder="0" src="{%=file.edit_url%}"></iframe></div>' +
'<div class="ss-uploadfield-item-editform"><iframe frameborder="0" data-src="{%=file.edit_url%}" src="about:blank"></iframe></div>' +
'{% } %}' +
'</li>' +
'{% } %}'

View File

@ -16,7 +16,7 @@
(function($){
var decodePath = function(str) {
return str.replace(/%2C/g,',').replace(/\&amp;/g, '&');
return str.replace(/%2C/g,',').replace(/\&amp;/g, '&').trim();
};
$.extend({

View File

@ -4,23 +4,44 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined');
} else {
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?",
"TABLEFIELD.DELETECONFIRMMESSAGEV2": "\nJe zde %s stránek, které používají tento soubor, zkontrolujte stránky na záložce Odkazy před pokračováním.",
"LOADING": "natahování...",
"UNIQUEFIELD.SUGGESTED": "Hodnota změněna na '%s' : %s",
"UNIQUEFIELD.ENTERNEWVALUE": "Pro toto pole musíte zadat novou hodnotu",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Toto pole nesmí být prázdné",
"UploadField.NOFILEUPLOADED": "Soubor nebyl nahrán",
"UploadField.Uploaded": "Nahráno",
"UploadField.TOOSMALL": "Velikost souboru je příliž malá",
"HtmlEditorField.SelectAnchor": "Vyber kotvu",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Maximální počet souborů překročen",
"UploadField.ConfirmDelete": "Určitě chcete odstranit tento soubor ze serverového úložiště?",
"UploadField.NOTMPFOLDER": "Chybějící dočasná složka",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "V tomto poli znak '%s' nesmí být použit",
"UPDATEURL.CONFIRM": "Chtěli byste změnit URL na:\n\n%s\n\nKlikněte OK pro změnu URL, klikněte Cancel pro ponechání původního:\n\n%s",
"UPDATEURL.CONFIRM_V2": "Chtěli byste změnit URL tak, aby bylo podobné názvu stránky?\n\nKlikněte OK pro změnu URL, klikněte Cancel pro ponechání původního:\n\n%s",
"FILEIFRAMEFIELD.DELETEFILE": "Smazat soubor",
"FILEIFRAMEFIELD.UNATTACHFILE": "Odpojit soubor",
"UploadField.UPLOADEDBYTES": "Nahrané byty překročily velikost souboru",
"VALIDATOR.FIELDREQUIRED": "Vyplňte \"%s\", prosím, je vyžadováno.",
"UploadField.HTML_MAXFILESIZE": "Soubor překračuje MAX_FILE_SIZE (HTML formulář direktiva)",
"UploadField.PHP_MAXFILESIZE": "Soubor překročil upload_max_filesize (php.ini direktiva)",
"UploadField.TOOLARGE": "Velikost souboru je příliž velká",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Toto pole nesmí být prázdné",
"UNIQUEFIELD.ENTERNEWVALUE": "Pro toto pole musíte zadat novou hodnotu",
"UploadField.WRITEFAILED": "Chyba zápisu souboru na disk",
"UploadField.ONLYPARTIALUPLOADED": "Soubor byl pouye částečně nahrán",
"UploadField.STOPEDBYEXTENSION": "Nahrání souboru zastaveno pro extenzi",
"TreeDropdownField.FieldTitle": "Vybrat",
"FILEIFRAMEFIELD.DELETEIMAGE": "Smazat obrázek",
"LeftAndMain.IncompatBrowserWarning": "Váš prohlížeč není kompatibilní s CMS prosředím. Prosím použijte Internet Explorer 7+, Google Chrome 10+ nebo Mozilla Firefox 3.5+.",
"UploadField.Editing": "Editování ...",
"TreeDropdownField.OpenLink": "Otevřít",
"TreeDropdownField.SearchFieldTitle": "Vybrat nebovyhledat",
"UploadField.INVALIDEXTENSION": "Extenze není povolena",
"LOADING": "natahování...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Odpojit soubor",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Určitě chcete smazat tento soubor?",
"TABLEFIELD.SELECTDELETE": "Vyberte, prosím, nějaké soubory na smazání!",
"TABLEFIELD.CONFIRMDELETEV2": "Určitě chcete smazat označené soubory?",
"TABLEFIELD.SELECTUPLOAD": "Vyberte, prosím, aspoň jeden soubor na nahrání."
"UNIQUEFIELD.SUGGESTED": "Hodnota změněna na '%s' : %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Určitě chcete smazat tento záznam?",
"UPDATEURL.CONFIRM": "Chtěli byste změnit URL na:\n\n%s\n\nKlikněte OK pro změnu URL, klikněte Cancel pro ponechání původního:\n\n%s",
"UploadField.EMPTYRESULT": "Výsledek nahráni prázdný soubor",
"TreeDropdownField.ENTERTOSEARCH": "Stlačte enter pro hledání",
"FILEIFRAMEFIELD.DELETEFILE": "Smazat soubor",
"UploadField.LOADING": "Natahování ...",
"GRIDFIELD.ERRORINTRANSACTION": "Nastala chyba při získávání dat ze serveru\n Prosím zkuste opět později.",
"UPDATEURL.CONFIRMURLCHANGED": "URL bylo yměněno na\n'%s'",
"UploadField.OVERWRITEWARNING": "Soubor se stejným názvem již existuje"
});
}

View File

@ -4,39 +4,44 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined');
} else {
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?",
"LOADING": "Lädt...",
"UNIQUEFIELD.SUGGESTED": "Der Wert wurde nach '%s' geändert : %s",
"UNIQUEFIELD.ENTERNEWVALUE": "Sie müssen einen neuen Wert für dieses Feld eingeben",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Dieses Feld kann nicht leer sein",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Das Zeichen '%s' darf in diesem Feld nicht vewendet werden",
"UPDATEURL.CONFIRM": "Sollen wir die URL in diesen Wert ändern:\n\n%s/\n\nKlicken Sie OK, um den URL zu ändern, Abbrechen um ihn so zu lassen:\n\n%s",
"UPDATEURL.CONFIRMURLCHANGED": "Die URL wurde geändert:\n\"%s\"",
"FILEIFRAMEFIELD.DELETEFILE": "Datei löschen",
"FILEIFRAMEFIELD.UNATTACHFILE": "Datei loslösen",
"FILEIFRAMEFIELD.DELETEIMAGE": "Bild löschen",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Sind Sie sicher, dass sie diese Datei löschen wollen?",
"LeftAndMain.IncompatBrowserWarning": "Ihr Browser ist nicht kompatibel mit der CMS Benutzeroverfläche. Bitte benutzen sie Internet Explorer 7+, Google Chrome 10+ oder Mozilla Firefox 3.5+.",
"GRIDFIELD.ERRORINTRANSACTION": "Beim Laden der Daten vom Server ist ein Fehler aufgetretetn\n Bitte versuchen sie es später noch einmal.",
"UploadField.ConfirmDelete": "Sind sie sicher, dass sie diese Datei aus dem Dateisystem löschen wollen?",
"UploadField.PHP_MAXFILESIZE": "Die Dateigröße überschreitet upload_max_filesize (php.ini Einstellung)",
"UploadField.HTML_MAXFILESIZE": "Die Dateigröße überschreitet MAX_FILE_SIZE (HTML Form Einstellung)",
"UploadField.ONLYPARTIALUPLOADED": "Die Datei wurde nur teilweise hochgeladen",
"UploadField.NOFILEUPLOADED": "Keine Datei wurde hochgeladen",
"UploadField.NOTMPFOLDER": "Es wurde kein temporäres Verzeichnis gefunden",
"UploadField.WRITEFAILED": "Es konnte nicht auf die Festplatte geschrieben werden",
"UploadField.STOPEDBYEXTENSION": "Dateiupload wurde wegen einer nicht erlaubten Erweiterung gestoppt",
"UploadField.TOOLARGE": "Die Datei ist zu groß",
"UploadField.TOOSMALL": "Die Datei ist zu klein",
"UploadField.INVALIDEXTENSION": "Dateierweiterung ist nicht erlaubt",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Maximal erlaubt Anzahl von Dateien überschritten",
"UploadField.UPLOADEDBYTES": "Hochgeladene Bytes überschreiten Dateigröße",
"UploadField.EMPTYRESULT": "Leere Datei erhalten",
"UploadField.LOADING": "Lädt ...",
"UploadField.Editing": "Bearbeite ...",
"UploadField.Uploaded": "Hochgeladen",
"UploadField.TOOSMALL": "Die Datei ist zu klein",
"HtmlEditorField.SelectAnchor": "Anker auswählen",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Maximal erlaubt Anzahl von Dateien überschritten",
"UploadField.ConfirmDelete": "Sind sie sicher, dass sie diese Datei aus dem Dateisystem löschen wollen?",
"UploadField.NOTMPFOLDER": "Es wurde kein temporäres Verzeichnis gefunden",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Das Zeichen '%s' darf in diesem Feld nicht vewendet werden",
"UploadField.UPLOADEDBYTES": "Hochgeladene Bytes überschreiten Dateigröße",
"VALIDATOR.FIELDREQUIRED": "\"%s\" wird benötigt",
"UploadField.HTML_MAXFILESIZE": "Die Dateigröße überschreitet MAX_FILE_SIZE (HTML Form Einstellung)",
"UploadField.PHP_MAXFILESIZE": "Die Dateigröße überschreitet upload_max_filesize (php.ini Einstellung)",
"UploadField.TOOLARGE": "Die Datei ist zu groß",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Dieses Feld kann nicht leer sein",
"UNIQUEFIELD.ENTERNEWVALUE": "Sie müssen einen neuen Wert für dieses Feld eingeben",
"UploadField.WRITEFAILED": "Es konnte nicht auf die Festplatte geschrieben werden",
"UploadField.ONLYPARTIALUPLOADED": "Die Datei wurde nur teilweise hochgeladen",
"UploadField.STOPEDBYEXTENSION": "Dateiupload wurde wegen einer nicht erlaubten Erweiterung gestoppt",
"TreeDropdownField.FieldTitle": "Auswählen",
"FILEIFRAMEFIELD.DELETEIMAGE": "Bild löschen",
"LeftAndMain.IncompatBrowserWarning": "Ihr Browser ist nicht kompatibel mit der CMS Benutzeroverfläche. Bitte benutzen sie Internet Explorer 7+, Google Chrome 10+ oder Mozilla Firefox 3.5+.",
"UploadField.Editing": "Bearbeite ...",
"TreeDropdownField.OpenLink": "Öffnen",
"TreeDropdownField.SearchFieldTitle": "Auswählen oder Suchen",
"UploadField.INVALIDEXTENSION": "Dateierweiterung ist nicht erlaubt",
"LOADING": "Lädt...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Datei loslösen",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Sind Sie sicher, dass sie diese Datei löschen wollen?",
"UNIQUEFIELD.SUGGESTED": "Der Wert wurde nach '%s' geändert : %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Sind Sie sicher, dass sie dieses Element löschen wollen?",
"UPDATEURL.CONFIRM": "Sollen wir die URL in diesen Wert ändern:\n\n%s/\n\nKlicken Sie OK, um den URL zu ändern, Abbrechen um ihn so zu lassen:\n\n%s",
"UploadField.EMPTYRESULT": "Leere Datei erhalten",
"TreeDropdownField.ENTERTOSEARCH": "Eingabetaste startet die Suche",
"FILEIFRAMEFIELD.DELETEFILE": "Datei löschen",
"UploadField.LOADING": "Lädt ...",
"GRIDFIELD.ERRORINTRANSACTION": "Beim Laden der Daten vom Server ist ein Fehler aufgetretetn\n Bitte versuchen sie es später noch einmal.",
"UPDATEURL.CONFIRMURLCHANGED": "Die URL wurde geändert:\n\"%s\"",
"UploadField.OVERWRITEWARNING": "Datei mit diesem Namen existiert bereits"
});
}

View File

@ -4,16 +4,44 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined');
} else {
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 ?",
"LOADING": "chargement...",
"UNIQUEFIELD.SUGGESTED": "Changez la valeur de '%s' : %s",
"UNIQUEFIELD.ENTERNEWVALUE": "You devez saisir une nouvelle valeur pou ce champ",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Ce champ ne peut être laissé vide",
"UploadField.NOFILEUPLOADED": "No File was uploaded",
"UploadField.Uploaded": "Uploaded",
"UploadField.TOOSMALL": "Filesize is too small",
"HtmlEditorField.SelectAnchor": "Select an anchor",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Max number of files exceeded",
"UploadField.ConfirmDelete": "Are you sure you want to remove this file from the server filesystem?",
"UploadField.NOTMPFOLDER": "Missing a temporary folder",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Le character '%s' ne peut être utilisé dans ce champ",
"UploadField.UPLOADEDBYTES": "Uploaded bytes exceed file size",
"VALIDATOR.FIELDREQUIRED": "Veuillez remplir \"%s\", c'est un champ requis.",
"UploadField.HTML_MAXFILESIZE": "File exceeds MAX_FILE_SIZE (HTML form directive)",
"UploadField.PHP_MAXFILESIZE": "File exceeds upload_max_filesize (php.ini directive)",
"UploadField.TOOLARGE": "Filesize is too large",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Ce champ ne peut être laissé vide",
"UNIQUEFIELD.ENTERNEWVALUE": "You devez saisir une nouvelle valeur pou ce champ",
"UploadField.WRITEFAILED": "Failed to write file to disk",
"UploadField.ONLYPARTIALUPLOADED": "File was only partially uploaded",
"UploadField.STOPEDBYEXTENSION": "File upload stopped by extension",
"TreeDropdownField.FieldTitle": "Choose",
"FILEIFRAMEFIELD.DELETEIMAGE": "Delete Image",
"LeftAndMain.IncompatBrowserWarning": "Your browser is not compatible with the CMS interface. Please use Internet Explorer 7+, Google Chrome 10+ or Mozilla Firefox 3.5+.",
"UploadField.Editing": "Editing ...",
"TreeDropdownField.OpenLink": "Open",
"TreeDropdownField.SearchFieldTitle": "Choose or Search",
"UploadField.INVALIDEXTENSION": "Extension is not allowed",
"LOADING": "chargement...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Un-Attach File",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Are you sure you want to delete this file?",
"UNIQUEFIELD.SUGGESTED": "Changez la valeur de '%s' : %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Etes-vous sûr de vouloir supprimer cet enregistrement ?",
"UPDATEURL.CONFIRM": "Voulez-vous que je change l'URL en:\n\n%s/\n\nCliquez Ok pour changer l'URL, cliquez Annuler pour la laisser à:\n\n%s",
"GRIDFIELD.ERRORINTRANSACTION": "Une erreur est survenue durant la transaction avec le serveur\n Merci de reesayer plus tard."
}
);
"UploadField.EMPTYRESULT": "Empty file upload result",
"TreeDropdownField.ENTERTOSEARCH": "Press enter to search",
"FILEIFRAMEFIELD.DELETEFILE": "Delete File",
"UploadField.LOADING": "Loading ...",
"GRIDFIELD.ERRORINTRANSACTION": "Une erreur est survenue durant la transaction avec le serveur\n Merci de reesayer plus tard.",
"UPDATEURL.CONFIRMURLCHANGED": "The URL has been changed to\n'%s'",
"UploadField.OVERWRITEWARNING": "File with the same name already exists"
});
}

View File

@ -4,14 +4,44 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined');
} else {
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?",
"LOADING": "caricamento...",
"UNIQUEFIELD.SUGGESTED": "Cambiare il valore di '%s': %s",
"UNIQUEFIELD.ENTERNEWVALUE": "È necessario scegliere un'altro valore per questo campo",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Questo campo non può essere lasciato vuoto",
"UploadField.NOFILEUPLOADED": "No File was uploaded",
"UploadField.Uploaded": "Uploaded",
"UploadField.TOOSMALL": "Filesize is too small",
"HtmlEditorField.SelectAnchor": "Select an anchor",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Max number of files exceeded",
"UploadField.ConfirmDelete": "Are you sure you want to remove this file from the server filesystem?",
"UploadField.NOTMPFOLDER": "Missing a temporary folder",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Il carattere '%s' non può essere utilizzato in questo campo",
"UPDATEURL.CONFIRM": "Volete cambiare l'URL in:\n\n%s/\n\nClicca OK per cambiare l'URL, clicca Annuler per lasciarla a:\n\n%s"
"UploadField.UPLOADEDBYTES": "Uploaded bytes exceed file size",
"VALIDATOR.FIELDREQUIRED": "Completare il campo \"%s\", che è obbligatorio.",
"UploadField.HTML_MAXFILESIZE": "File exceeds MAX_FILE_SIZE (HTML form directive)",
"UploadField.PHP_MAXFILESIZE": "File exceeds upload_max_filesize (php.ini directive)",
"UploadField.TOOLARGE": "Filesize is too large",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Questo campo non può essere lasciato vuoto",
"UNIQUEFIELD.ENTERNEWVALUE": "È necessario scegliere un'altro valore per questo campo",
"UploadField.WRITEFAILED": "Failed to write file to disk",
"UploadField.ONLYPARTIALUPLOADED": "File was only partially uploaded",
"UploadField.STOPEDBYEXTENSION": "File upload stopped by extension",
"TreeDropdownField.FieldTitle": "Choose",
"FILEIFRAMEFIELD.DELETEIMAGE": "Delete Image",
"LeftAndMain.IncompatBrowserWarning": "Your browser is not compatible with the CMS interface. Please use Internet Explorer 7+, Google Chrome 10+ or Mozilla Firefox 3.5+.",
"UploadField.Editing": "Editing ...",
"TreeDropdownField.OpenLink": "Open",
"TreeDropdownField.SearchFieldTitle": "Choose or Search",
"UploadField.INVALIDEXTENSION": "Extension is not allowed",
"LOADING": "caricamento...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Un-Attach File",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Are you sure you want to delete this file?",
"UNIQUEFIELD.SUGGESTED": "Cambiare il valore di '%s': %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Si è sicuri di voler eliminare questo elemento?",
"UPDATEURL.CONFIRM": "Volete cambiare l'URL in:\n\n%s/\n\nClicca OK per cambiare l'URL, clicca Annuler per lasciarla a:\n\n%s",
"UploadField.EMPTYRESULT": "Empty file upload result",
"TreeDropdownField.ENTERTOSEARCH": "Press enter to search",
"FILEIFRAMEFIELD.DELETEFILE": "Delete File",
"UploadField.LOADING": "Loading ...",
"GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
"UPDATEURL.CONFIRMURLCHANGED": "The URL has been changed to\n'%s'",
"UploadField.OVERWRITEWARNING": "File with the same name already exists"
});
}

View File

@ -4,39 +4,44 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined');
} else {
ss.i18n.addDictionary('ja', {
"VALIDATOR.FIELDREQUIRED": "\"%s\"を入力してください,必須項目です.",
"HASMANYFILEFIELD.UPLOADING": "アップロード中です... %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "このレコードを本当に削除しますか?",
"LOADING": "読み込み中...",
"UNIQUEFIELD.SUGGESTED": "'%s'へ値を変更しました : %s",
"UNIQUEFIELD.ENTERNEWVALUE": "このフィールドに新しい値を入力する必要があります.",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "このフィールドは空にすることができません.",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "文字'%s'はこのフィールドでは利用することができません.",
"UPDATEURL.CONFIRM": "URLを次へ変更しますか?:\n\n%s/\n\nOKをクリックするとURLが変更されますキャンセルをクリックするとURLは保持されます:\n\n%s",
"UPDATEURL.CONFIRMURLCHANGED":"URLは次へ変更されました\n\"%s\"",
"FILEIFRAMEFIELD.DELETEFILE": "ファイルを削除",
"FILEIFRAMEFIELD.UNATTACHFILE": "Un-Attach File",
"FILEIFRAMEFIELD.DELETEIMAGE": "画像を削除",
"FILEIFRAMEFIELD.CONFIRMDELETE": "このファイルを本当に削除しても良いですか?",
"LeftAndMain.IncompatBrowserWarning": "ご利用のブラウザはCMSのインターフェイスと互換性がありませんInternet Explorer 7以上, Google Chrome 10以上またはMozilla Firefox 3.5以上をご利用ください",
"GRIDFIELD.ERRORINTRANSACTION": "サーバーからデータを取得中にエラーが発生しました.\n 後ほど改めてお試しください.",
"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": "拡張子によりファイルアップロードが停止しました.",
"UploadField.TOOLARGE": "ファイルサイズが大きすぎます.",
"UploadField.Uploaded": "アップロードしました.",
"UploadField.TOOSMALL": "ファイルサイズが小さすぎます.",
"UploadField.INVALIDEXTENSION": "拡張子は許可されていません.",
"HtmlEditorField.SelectAnchor": "アンカーを選択する",
"UploadField.MAXNUMBEROFFILESSIMPLE": "ファイルの最大数を超えました.",
"UploadField.ConfirmDelete": "サーバーのファイルシステムからこのファイルを本当に削除しても良いですか?",
"UploadField.NOTMPFOLDER": "一時フォルダがありません.",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "文字'%s'はこのフィールドでは利用することができません.",
"UploadField.UPLOADEDBYTES": "アップロードされたバイトはファイルサイズを超えました.",
"UploadField.EMPTYRESULT": "Empty file upload result",
"UploadField.LOADING": "読み込み中...",
"VALIDATOR.FIELDREQUIRED": "\"%s\"を入力してください,必須項目です.",
"UploadField.HTML_MAXFILESIZE": "MAX_FILE_SIZE(最大ファイルサイズ)をファイルが超えています.(HTMLフォームで指定されています)",
"UploadField.PHP_MAXFILESIZE": "upload_max_filesize(最大アップロードファイルサイズ)をファイルが超えています.(php.iniで指定されています)",
"UploadField.TOOLARGE": "ファイルサイズが大きすぎます.",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "このフィールドは空にすることができません.",
"UNIQUEFIELD.ENTERNEWVALUE": "このフィールドに新しい値を入力する必要があります.",
"UploadField.WRITEFAILED": "ディスクへのファイル書き込みに失敗しました.",
"UploadField.ONLYPARTIALUPLOADED": "ファイルは部分的にアップロードされました.",
"UploadField.STOPEDBYEXTENSION": "拡張子によりファイルアップロードが停止しました.",
"TreeDropdownField.FieldTitle": "選択する",
"FILEIFRAMEFIELD.DELETEIMAGE": "画像を削除",
"LeftAndMain.IncompatBrowserWarning": "ご利用のブラウザはCMSのインターフェイスと互換性がありませんInternet Explorer 7以上, Google Chrome 10以上またはMozilla Firefox 3.5以上をご利用ください",
"UploadField.Editing": "編集中...",
"UploadField.Uploaded": "アップロードしました."
}
);
"TreeDropdownField.OpenLink": "開く",
"TreeDropdownField.SearchFieldTitle": "選択または検索",
"UploadField.INVALIDEXTENSION": "拡張子は許可されていません.",
"LOADING": "読み込み中...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Un-Attach File",
"FILEIFRAMEFIELD.CONFIRMDELETE": "このファイルを本当に削除しても良いですか?",
"UNIQUEFIELD.SUGGESTED": "'%s'へ値を変更しました : %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "このレコードを本当に削除しますか?",
"UPDATEURL.CONFIRM": "URLを次へ変更しますか?:\n\n%s/\n\nOKをクリックするとURLが変更されますキャンセルをクリックするとURLは保持されます:\n\n%s",
"UploadField.EMPTYRESULT": "Empty file upload result",
"TreeDropdownField.ENTERTOSEARCH": "Enterキーを押して検索する",
"FILEIFRAMEFIELD.DELETEFILE": "ファイルを削除",
"UploadField.LOADING": "読み込み中...",
"GRIDFIELD.ERRORINTRANSACTION": "サーバーからデータを取得中にエラーが発生しました.\n 後ほど改めてお試しください.",
"UPDATEURL.CONFIRMURLCHANGED": "URLは次へ変更されました\n\"%s\"",
"UploadField.OVERWRITEWARNING": "このファイル名はすでに存在します"
});
}

View File

@ -4,44 +4,44 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined');
} else {
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?",
"LOADING": "Uta ana...",
"UNIQUEFIELD.SUGGESTED": "I hurihia te uara ki te '%s' : %s",
"UNIQUEFIELD.ENTERNEWVALUE": "Me tāuru he uara hōu mō tēnei āpure",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Kāore e whakaaetia kia noho piako tēnei āpure",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Kāore e taea te whakamahi i te pūāhua '%s' i tēnei āpure",
"UPDATEURL.CONFIRM": "Kei te hiahia koe kia huri au i te PRO ki:\n\n%s/\n\nPāwhiri Āe kia hurihia te PRO, pāwhiri Whakakore kia waiho:\n\n%s",
"UPDATEURL.CONFIRMURLCHANGED": "Kua hurihia te PRO ki \n\"%s\"",
"FILEIFRAMEFIELD.DELETEFILE": "Muku Kōnae",
"FILEIFRAMEFIELD.UNATTACHFILE": "Wehetāpiri Kōnae",
"FILEIFRAMEFIELD.DELETEIMAGE": "Muku Atahanga",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Kei te tino hiahia muku i tēnei kōnae?",
"LeftAndMain.IncompatBrowserWarning": "Kāore tō pūtirotiro i te hototahi ki te atanga CMS. Whakamahia Internet Explorer 7+, Google Chrome 10+, Mozilla Firefox 3.5+ rānei.",
"GRIDFIELD.ERRORINTRANSACTION": "Kua puta mai he hapa i te tiki raraunga mai i te tūmau\n Ngāna anō ā muri atu.",
"UploadField.ConfirmDelete": "He tika tonu kia tangohia tēnei kōnae i te pūnahakōnae tūmau?",
"UploadField.PHP_MAXFILESIZE": "Kua hipa te mōrahi_rahikōnae_tukuatu i te kōnae (whakaritenga php.ini)",
"UploadField.HTML_MAXFILESIZE": "Kua hipa te mōrahi_rahi_kōnae i te kōnae (whakaritenga puka HTML)",
"UploadField.ONLYPARTIALUPLOADED": "Kua tukuna atu he wāhanga anake o te kōnae",
"UploadField.NOFILEUPLOADED": "Kāore he Kōnae i tukuna atu",
"UploadField.NOTMPFOLDER": "Kua ngaro tētahi kōpaki rangitahi",
"UploadField.WRITEFAILED": "I rahua te tuhi kōnae ki te kōpae",
"UploadField.STOPEDBYEXTENSION": "I whakamutua te tukuatu kōnae e te toronga",
"UploadField.TOOLARGE": "He rahi rawa te rahikōnae",
"UploadField.TOOSMALL": "He iti rawa te rahikōnae",
"UploadField.INVALIDEXTENSION": "Kāore te toronga i te whakaaetia",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Kua hipa te mōrahi kōnae",
"UploadField.UPLOADEDBYTES": "Kua hipa te rahi kōnae i ngā paita kua tukuna atu",
"UploadField.EMPTYRESULT": "Otinga tukuatu kōnae piako",
"UploadField.LOADING": "Uta ana...",
"UploadField.Editing": "Whakatika ana ...",
"UploadField.Uploaded": "Kua tukuna atu",
"UploadField.OVERWRITEWARNING": "Kei te tīari kē tētahi kōnae me te ingoa ōrite",
"TreeDropdownField.ENTERTOSEARCH": "Pēhi tāuru hei rapu",
"TreeDropdownField.OpenLink": "Whakatuwhera",
"UploadField.TOOSMALL": "He iti rawa te rahikōnae",
"HtmlEditorField.SelectAnchor": "Select an anchor",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Kua hipa te mōrahi kōnae",
"UploadField.ConfirmDelete": "He tika tonu kia tangohia tēnei kōnae i te pūnahakōnae tūmau?",
"UploadField.NOTMPFOLDER": "Kua ngaro tētahi kōpaki rangitahi",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Kāore e taea te whakamahi i te pūāhua '%s' i tēnei āpure",
"UploadField.UPLOADEDBYTES": "Kua hipa te rahi kōnae i ngā paita kua tukuna atu",
"VALIDATOR.FIELDREQUIRED": "Whakakīa \"%s\", he whakaritenga tēnei.",
"UploadField.HTML_MAXFILESIZE": "Kua hipa te mōrahi_rahi_kōnae i te kōnae (whakaritenga puka HTML)",
"UploadField.PHP_MAXFILESIZE": "Kua hipa te mōrahi_rahikōnae_tukuatu i te kōnae (whakaritenga php.ini)",
"UploadField.TOOLARGE": "He rahi rawa te rahikōnae",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Kāore e whakaaetia kia noho piako tēnei āpure",
"UNIQUEFIELD.ENTERNEWVALUE": "Me tāuru he uara hōu mō tēnei āpure",
"UploadField.WRITEFAILED": "I rahua te tuhi kōnae ki te kōpae",
"UploadField.ONLYPARTIALUPLOADED": "Kua tukuna atu he wāhanga anake o te kōnae",
"UploadField.STOPEDBYEXTENSION": "I whakamutua te tukuatu kōnae e te toronga",
"TreeDropdownField.FieldTitle": "Kōwhiri",
"TreeDropdownField.SearchFieldTitle": "Kōwhiri ka Rapu rānei"
}
);
"FILEIFRAMEFIELD.DELETEIMAGE": "Muku Atahanga",
"LeftAndMain.IncompatBrowserWarning": "Kāore tō pūtirotiro i te hototahi ki te atanga CMS. Whakamahia Internet Explorer 7+, Google Chrome 10+, Mozilla Firefox 3.5+ rānei.",
"UploadField.Editing": "Whakatika ana ...",
"TreeDropdownField.OpenLink": "Whakatuwhera",
"TreeDropdownField.SearchFieldTitle": "Kōwhiri ka Rapu rānei",
"UploadField.INVALIDEXTENSION": "Kāore te toronga i te whakaaetia",
"LOADING": "Uta ana...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Wehetāpiri Kōnae",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Kei te tino hiahia muku i tēnei kōnae?",
"UNIQUEFIELD.SUGGESTED": "I hurihia te uara ki te '%s' : %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Kei te tino hiahia muku i tēnei pūkete?",
"UPDATEURL.CONFIRM": "Kei te hiahia koe kia huri au i te PRO ki:\n\n%s/\n\nPāwhiri Āe kia hurihia te PRO, pāwhiri Whakakore kia waiho:\n\n%s",
"UploadField.EMPTYRESULT": "Otinga tukuatu kōnae piako",
"TreeDropdownField.ENTERTOSEARCH": "Pēhi tāuru hei rapu",
"FILEIFRAMEFIELD.DELETEFILE": "Muku Kōnae",
"UploadField.LOADING": "Uta ana...",
"GRIDFIELD.ERRORINTRANSACTION": "Kua puta mai he hapa i te tiki raraunga mai i te tūmau\n Ngāna anō ā muri atu.",
"UPDATEURL.CONFIRMURLCHANGED": "Kua hurihia te PRO ki \n\"%s\"",
"UploadField.OVERWRITEWARNING": "Kei te tīari kē tētahi kōnae me te ingoa ōrite"
});
}

View File

@ -4,40 +4,44 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined');
} else {
ss.i18n.addDictionary('nl', {
"VALIDATOR.FIELDREQUIRED": "Vul het veld \"%s\" in, dit is een verplicht veld.",
"HASMANYFILEFIELD.UPLOADING": "Uploading... %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Weet u zeker dat u dit record wilt verwijderen?",
"LOADING": "laden...",
"UNIQUEFIELD.SUGGESTED": "Waarde gewijzigd naar \"%s\" : %s",
"UNIQUEFIELD.ENTERNEWVALUE": "U zult een nieuwe waarde voor dit veld moeten invoeren",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Dit veld mag niet leeg blijven",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Het karakter \"%s\" mag niet gebruikt worden in dit veld",
"UPDATEURL.CONFIRM": "Wilt u de URL wijzigen naar:\n\n%s/\n\nKlik Ok om de URL te wijzigen, Klik Cancel om het te laten zoals het is:\n\n%s",
"UPDATEURL.CONFIRMURLCHANGED":"Het URL is veranderd naar \n\"%s\"",
"FILEIFRAMEFIELD.DELETEFILE": "Verwijder bestand",
"FILEIFRAMEFIELD.UNATTACHFILE": "Deselecteer bestand",
"FILEIFRAMEFIELD.DELETEIMAGE": "Verwijder afbeelding",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Weet u zeker dat u dit bestand wilt verwijderen?",
"LeftAndMain.IncompatBrowserWarning": "Je huidige browser is niet compatible, gebruik één van deze browsers Internet Explorer 7+, Google Chrome 10+ or Mozilla Firefox 3.5+.",
"GRIDFIELD.ERRORINTRANSACTION": "Er is een fout opgetreden bij het ophalen van gegevens van de server\n Probeer later opnieuw.",
"HtmlEditorField.SelectAnchor": "Kies een anker",
"UploadField.ConfirmDelete": "Weet u zeker dat u dit bestand wilt verwijderen uit het websitebestand?",
"UploadField.PHP_MAXFILESIZE": "Bestandsgrootte is hoger dan upload_max_filesize (php.ini directive)",
"UploadField.HTML_MAXFILESIZE": "Bestandsgrootte is hoger danMAX_FILE_SIZE (HTML form directive)",
"UploadField.ONLYPARTIALUPLOADED": "Bestand is maar gedeeltelijk geupload",
"UploadField.NOFILEUPLOADED": "Geen bestand is geupload",
"UploadField.NOTMPFOLDER": "Mist een tijdelijke map",
"UploadField.WRITEFAILED": "Kan bestand niet naar schijf schrijven",
"UploadField.STOPEDBYEXTENSION": "Bestandsupload gestopt door extensie",
"UploadField.TOOLARGE": "Bestandsgrootte is te groot",
"UploadField.Uploaded": "Geupload",
"UploadField.TOOSMALL": "Bestandsgrootte is te klein",
"UploadField.INVALIDEXTENSION": "Extensie is niet toegestaan",
"HtmlEditorField.SelectAnchor": "Kies een anker",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Maximaal aantal overschreven",
"UploadField.ConfirmDelete": "Weet u zeker dat u dit bestand wilt verwijderen uit het websitebestand?",
"UploadField.NOTMPFOLDER": "Mist een tijdelijke map",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Het karakter \"%s\" mag niet gebruikt worden in dit veld",
"UploadField.UPLOADEDBYTES": "Upload overschrijd bestandsgrootte",
"UploadField.EMPTYRESULT": "Leeg bestand geupload",
"UploadField.LOADING": "Laden ...",
"VALIDATOR.FIELDREQUIRED": "Vul het veld \"%s\" in, dit is een verplicht veld.",
"UploadField.HTML_MAXFILESIZE": "Bestandsgrootte is hoger danMAX_FILE_SIZE (HTML form directive)",
"UploadField.PHP_MAXFILESIZE": "Bestandsgrootte is hoger dan upload_max_filesize (php.ini directive)",
"UploadField.TOOLARGE": "Bestandsgrootte is te groot",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Dit veld mag niet leeg blijven",
"UNIQUEFIELD.ENTERNEWVALUE": "U zult een nieuwe waarde voor dit veld moeten invoeren",
"UploadField.WRITEFAILED": "Kan bestand niet naar schijf schrijven",
"UploadField.ONLYPARTIALUPLOADED": "Bestand is maar gedeeltelijk geupload",
"UploadField.STOPEDBYEXTENSION": "Bestandsupload gestopt door extensie",
"TreeDropdownField.FieldTitle": "Kies",
"FILEIFRAMEFIELD.DELETEIMAGE": "Verwijder afbeelding",
"LeftAndMain.IncompatBrowserWarning": "Je huidige browser is niet compatible, gebruik één van deze browsers Internet Explorer 7+, Google Chrome 10+ or Mozilla Firefox 3.5+.",
"UploadField.Editing": "Bijwerken ...",
"UploadField.Uploaded": "Geupload"
}
);
"TreeDropdownField.OpenLink": "Openen",
"TreeDropdownField.SearchFieldTitle": "Kies of zoek",
"UploadField.INVALIDEXTENSION": "Extensie is niet toegestaan",
"LOADING": "laden...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Deselecteer bestand",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Weet u zeker dat u dit bestand wilt verwijderen?",
"UNIQUEFIELD.SUGGESTED": "Waarde gewijzigd naar \"%s\" : %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Weet u zeker dat u dit record wilt verwijderen?",
"UPDATEURL.CONFIRM": "Wilt u de URL wijzigen naar:\n\n%s/\n\nKlik Ok om de URL te wijzigen, Klik Cancel om het te laten zoals het is:\n\n%s",
"UploadField.EMPTYRESULT": "Leeg bestand geupload",
"TreeDropdownField.ENTERTOSEARCH": "Druk op enter om te zoeken",
"FILEIFRAMEFIELD.DELETEFILE": "Verwijder bestand",
"UploadField.LOADING": "Laden ...",
"GRIDFIELD.ERRORINTRANSACTION": "Er is een fout opgetreden bij het ophalen van gegevens van de server\n Probeer later opnieuw.",
"UPDATEURL.CONFIRMURLCHANGED": "Het URL is veranderd naar \n\"%s\"",
"UploadField.OVERWRITEWARNING": "Bestand met dezelfde naam bestaat al"
});
}

View File

@ -4,23 +4,44 @@ if(typeof(ss) == 'undefined' || typeof(ss.i18n) == 'undefined') {
if(typeof(console) != 'undefined') console.error('Class ss.i18n not defined');
} else {
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?",
"TABLEFIELD.DELETECONFIRMMESSAGEV2": "\nJe tu %s stránok, ktoré používajú tento súbor, zkontrolujte stránky na záložke Odkazy pred pokračovaním.",
"LOADING": "natahovanie...",
"UNIQUEFIELD.SUGGESTED": "Hodnota bola zmenená na '%s' : %s",
"UNIQUEFIELD.ENTERNEWVALUE": "Pre toto pole musíte zadať novú hodnotu",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Toto pole nesmie byť prázdne",
"UploadField.NOFILEUPLOADED": "Súbor nebol nahratý",
"UploadField.Uploaded": "Nahraté",
"UploadField.TOOSMALL": "Veľkosť súboru je veľmi malá",
"HtmlEditorField.SelectAnchor": "Vyberte kotvu",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Maximálny počet súborov bol prekročený",
"UploadField.ConfirmDelete": "Určite chcete odstrániť tento súbor zo serverového súborového systému?",
"UploadField.NOTMPFOLDER": "Chýbajúci dočasný priečinok",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "V tomto poli znak '%s' nesmie byť použité",
"UPDATEURL.CONFIRM": "Chceli by ste zmeniť URL na:\n\n%s\n\nKliknite OK pre zmenu URL, kliknite Cancel pre ponechanie pôvodného:\n\n%s",
"UPDATEURL.CONFIRM_V2": "Chceli by ste zmeniť URL tak, aby bolo podobné názvu stránky?\n\nKliknite OK pre zmenu URL, kliknite Cancel pre ponechanie pôvodného:\n\n%s",
"FILEIFRAMEFIELD.DELETEFILE": "Zmazať súbor",
"FILEIFRAMEFIELD.UNATTACHFILE": "Odpojiť súbor",
"UploadField.UPLOADEDBYTES": "Nahrané bytz prkročili veľkosť súboru",
"VALIDATOR.FIELDREQUIRED": "Vyplňte \"%s\", prosím, je požadované.",
"UploadField.HTML_MAXFILESIZE": "Súbor prekročil MAX_FILE_SIZE (HTML formulár direktíva)",
"UploadField.PHP_MAXFILESIZE": "Súbor prekročil upload_max_filesize (php.ini direktíva)",
"UploadField.TOOLARGE": "Veľkosť súboru je veľmi veľká",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Toto pole nesmie byť prázdne",
"UNIQUEFIELD.ENTERNEWVALUE": "Pre toto pole musíte zadať novú hodnotu",
"UploadField.WRITEFAILED": "Chyba zápisu súboru na disk",
"UploadField.ONLYPARTIALUPLOADED": "Súbor bol iba čiastočne nahratý",
"UploadField.STOPEDBYEXTENSION": "Nahratie súboru bolo zastavené pre extenziu",
"TreeDropdownField.FieldTitle": "Vyberte",
"FILEIFRAMEFIELD.DELETEIMAGE": "Zmazať obrázok",
"LeftAndMain.IncompatBrowserWarning": "Váš prehliadač nie je kompatibilný s CMS prostredím. Prosím požite Internet Explorer 7+, Google Chrome 10+alebo Mozilla Firefox 3.5+.",
"UploadField.Editing": "Editovanie ...",
"TreeDropdownField.OpenLink": "Otvoriť",
"TreeDropdownField.SearchFieldTitle": "Vybrať alebo vyhľadať",
"UploadField.INVALIDEXTENSION": "Extenzia nie je povolená",
"LOADING": "natahovanie...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Odpojiť súbor",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Určite chcete zmazať tento súbor?",
"TABLEFIELD.SELECTDELETE": "Vyberte, prosím, nejaké súbory na smazanie!",
"TABLEFIELD.CONFIRMDELETEV2": "Určite chcete smazať označené súbory?",
"TABLEFIELD.SELECTUPLOAD": "Vyberte, prosím, najmenej jeden súbor na nahranie."
"UNIQUEFIELD.SUGGESTED": "Hodnota bola zmenená na '%s' : %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Určite chcete zmazať tento záznam?",
"UPDATEURL.CONFIRM": "Chceli by ste zmeniť URL na:\n\n%s\n\nKliknite OK pre zmenu URL, kliknite Cancel pre ponechanie pôvodného:\n\n%s",
"UploadField.EMPTYRESULT": "Výsledok nahrania pázdny súbor",
"TreeDropdownField.ENTERTOSEARCH": "Stlačte enter pre hľadanie",
"FILEIFRAMEFIELD.DELETEFILE": "Zmazať súbor",
"UploadField.LOADING": "Nahrávanie ...",
"GRIDFIELD.ERRORINTRANSACTION": "Nastala chyba pri získavaní dát zo servera\n Prosím skúste opäť neskôr.",
"UPDATEURL.CONFIRMURLCHANGED": "URL bolo zmenené na\n'%s'",
"UploadField.OVERWRITEWARNING": "Súbor s rovnakým názvom už existuje"
});
}

View File

@ -1,20 +1,41 @@
{
"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?",
"TABLEFIELD.DELETECONFIRMMESSAGEV2": "\nJe zde %s stránek, které používají tento soubor, zkontrolujte stránky na záložce Odkazy před pokračováním.",
"LOADING": "natahování...",
"UNIQUEFIELD.SUGGESTED": "Hodnota změněna na '%s' : %s",
"UNIQUEFIELD.ENTERNEWVALUE": "Pro toto pole musíte zadat novou hodnotu",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Toto pole nesmí být prázdné",
"UploadField.NOFILEUPLOADED": "Soubor nebyl nahrán",
"UploadField.Uploaded": "Nahráno",
"UploadField.TOOSMALL": "Velikost souboru je příliž malá",
"HtmlEditorField.SelectAnchor": "Vyber kotvu",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Maximální počet souborů překročen",
"UploadField.ConfirmDelete": "Určitě chcete odstranit tento soubor ze serverového úložiště?",
"UploadField.NOTMPFOLDER": "Chybějící dočasná složka",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "V tomto poli znak '%s' nesmí být použit",
"UPDATEURL.CONFIRM": "Chtěli byste změnit URL na:\n\n%s\n\nKlikněte OK pro změnu URL, klikněte Cancel pro ponechání původního:\n\n%s",
"UPDATEURL.CONFIRM_V2": "Chtěli byste změnit URL tak, aby bylo podobné názvu stránky?\n\nKlikněte OK pro změnu URL, klikněte Cancel pro ponechání původního:\n\n%s",
"FILEIFRAMEFIELD.DELETEFILE": "Smazat soubor",
"FILEIFRAMEFIELD.UNATTACHFILE": "Odpojit soubor",
"UploadField.UPLOADEDBYTES": "Nahrané byty překročily velikost souboru",
"VALIDATOR.FIELDREQUIRED": "Vyplňte \"%s\", prosím, je vyžadováno.",
"UploadField.HTML_MAXFILESIZE": "Soubor překračuje MAX_FILE_SIZE (HTML formulář direktiva)",
"UploadField.PHP_MAXFILESIZE": "Soubor překročil upload_max_filesize (php.ini direktiva)",
"UploadField.TOOLARGE": "Velikost souboru je příliž velká",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Toto pole nesmí být prázdné",
"UNIQUEFIELD.ENTERNEWVALUE": "Pro toto pole musíte zadat novou hodnotu",
"UploadField.WRITEFAILED": "Chyba zápisu souboru na disk",
"UploadField.ONLYPARTIALUPLOADED": "Soubor byl pouye částečně nahrán",
"UploadField.STOPEDBYEXTENSION": "Nahrání souboru zastaveno pro extenzi",
"TreeDropdownField.FieldTitle": "Vybrat",
"FILEIFRAMEFIELD.DELETEIMAGE": "Smazat obrázek",
"LeftAndMain.IncompatBrowserWarning": "Váš prohlížeč není kompatibilní s CMS prosředím. Prosím použijte Internet Explorer 7+, Google Chrome 10+ nebo Mozilla Firefox 3.5+.",
"UploadField.Editing": "Editování ...",
"TreeDropdownField.OpenLink": "Otevřít",
"TreeDropdownField.SearchFieldTitle": "Vybrat nebovyhledat",
"UploadField.INVALIDEXTENSION": "Extenze není povolena",
"LOADING": "natahování...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Odpojit soubor",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Určitě chcete smazat tento soubor?",
"TABLEFIELD.SELECTDELETE": "Vyberte, prosím, nějaké soubory na smazání!",
"TABLEFIELD.CONFIRMDELETEV2": "Určitě chcete smazat označené soubory?",
"TABLEFIELD.SELECTUPLOAD": "Vyberte, prosím, aspoň jeden soubor na nahrání."
"UNIQUEFIELD.SUGGESTED": "Hodnota změněna na '%s' : %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Určitě chcete smazat tento záznam?",
"UPDATEURL.CONFIRM": "Chtěli byste změnit URL na:\n\n%s\n\nKlikněte OK pro změnu URL, klikněte Cancel pro ponechání původního:\n\n%s",
"UploadField.EMPTYRESULT": "Výsledek nahráni prázdný soubor",
"TreeDropdownField.ENTERTOSEARCH": "Stlačte enter pro hledání",
"FILEIFRAMEFIELD.DELETEFILE": "Smazat soubor",
"UploadField.LOADING": "Natahování ...",
"GRIDFIELD.ERRORINTRANSACTION": "Nastala chyba při získávání dat ze serveru\n Prosím zkuste opět později.",
"UPDATEURL.CONFIRMURLCHANGED": "URL bylo yměněno na\n'%s'",
"UploadField.OVERWRITEWARNING": "Soubor se stejným názvem již existuje"
}

View File

@ -1,36 +1,41 @@
{
"VALIDATOR.FIELDREQUIRED": "\"%s\" wird benötigt",
"HASMANYFILEFIELD.UPLOADING": "Lädt hoch... %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Sind Sie sicher, dass sie dieses Element löschen wollen?",
"LOADING": "Lädt...",
"UNIQUEFIELD.SUGGESTED": "Der Wert wurde nach '%s' geändert : %s",
"UNIQUEFIELD.ENTERNEWVALUE": "Sie müssen einen neuen Wert für dieses Feld eingeben",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Dieses Feld kann nicht leer sein",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Das Zeichen '%s' darf in diesem Feld nicht vewendet werden",
"UPDATEURL.CONFIRM": "Sollen wir die URL in diesen Wert ändern:\n\n%s/\n\nKlicken Sie OK, um den URL zu ändern, Abbrechen um ihn so zu lassen:\n\n%s",
"UPDATEURL.CONFIRMURLCHANGED": "Die URL wurde geändert:\n\"%s\"",
"FILEIFRAMEFIELD.DELETEFILE": "Datei löschen",
"FILEIFRAMEFIELD.UNATTACHFILE": "Datei loslösen",
"FILEIFRAMEFIELD.DELETEIMAGE": "Bild löschen",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Sind Sie sicher, dass sie diese Datei löschen wollen?",
"LeftAndMain.IncompatBrowserWarning": "Ihr Browser ist nicht kompatibel mit der CMS Benutzeroverfläche. Bitte benutzen sie Internet Explorer 7+, Google Chrome 10+ oder Mozilla Firefox 3.5+.",
"GRIDFIELD.ERRORINTRANSACTION": "Beim Laden der Daten vom Server ist ein Fehler aufgetretetn\n Bitte versuchen sie es später noch einmal.",
"UploadField.ConfirmDelete": "Sind sie sicher, dass sie diese Datei aus dem Dateisystem löschen wollen?",
"UploadField.PHP_MAXFILESIZE": "Die Dateigröße überschreitet upload_max_filesize (php.ini Einstellung)",
"UploadField.HTML_MAXFILESIZE": "Die Dateigröße überschreitet MAX_FILE_SIZE (HTML Form Einstellung)",
"UploadField.ONLYPARTIALUPLOADED": "Die Datei wurde nur teilweise hochgeladen",
"UploadField.NOFILEUPLOADED": "Keine Datei wurde hochgeladen",
"UploadField.NOTMPFOLDER": "Es wurde kein temporäres Verzeichnis gefunden",
"UploadField.WRITEFAILED": "Es konnte nicht auf die Festplatte geschrieben werden",
"UploadField.STOPEDBYEXTENSION": "Dateiupload wurde wegen einer nicht erlaubten Erweiterung gestoppt",
"UploadField.TOOLARGE": "Die Datei ist zu groß",
"UploadField.TOOSMALL": "Die Datei ist zu klein",
"UploadField.INVALIDEXTENSION": "Dateierweiterung ist nicht erlaubt",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Maximal erlaubt Anzahl von Dateien überschritten",
"UploadField.UPLOADEDBYTES": "Hochgeladene Bytes überschreiten Dateigröße",
"UploadField.EMPTYRESULT": "Leere Datei erhalten",
"UploadField.LOADING": "Lädt ...",
"UploadField.Editing": "Bearbeite ...",
"UploadField.Uploaded": "Hochgeladen",
"UploadField.TOOSMALL": "Die Datei ist zu klein",
"HtmlEditorField.SelectAnchor": "Anker auswählen",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Maximal erlaubt Anzahl von Dateien überschritten",
"UploadField.ConfirmDelete": "Sind sie sicher, dass sie diese Datei aus dem Dateisystem löschen wollen?",
"UploadField.NOTMPFOLDER": "Es wurde kein temporäres Verzeichnis gefunden",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Das Zeichen '%s' darf in diesem Feld nicht vewendet werden",
"UploadField.UPLOADEDBYTES": "Hochgeladene Bytes überschreiten Dateigröße",
"VALIDATOR.FIELDREQUIRED": "\"%s\" wird benötigt",
"UploadField.HTML_MAXFILESIZE": "Die Dateigröße überschreitet MAX_FILE_SIZE (HTML Form Einstellung)",
"UploadField.PHP_MAXFILESIZE": "Die Dateigröße überschreitet upload_max_filesize (php.ini Einstellung)",
"UploadField.TOOLARGE": "Die Datei ist zu groß",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Dieses Feld kann nicht leer sein",
"UNIQUEFIELD.ENTERNEWVALUE": "Sie müssen einen neuen Wert für dieses Feld eingeben",
"UploadField.WRITEFAILED": "Es konnte nicht auf die Festplatte geschrieben werden",
"UploadField.ONLYPARTIALUPLOADED": "Die Datei wurde nur teilweise hochgeladen",
"UploadField.STOPEDBYEXTENSION": "Dateiupload wurde wegen einer nicht erlaubten Erweiterung gestoppt",
"TreeDropdownField.FieldTitle": "Auswählen",
"FILEIFRAMEFIELD.DELETEIMAGE": "Bild löschen",
"LeftAndMain.IncompatBrowserWarning": "Ihr Browser ist nicht kompatibel mit der CMS Benutzeroverfläche. Bitte benutzen sie Internet Explorer 7+, Google Chrome 10+ oder Mozilla Firefox 3.5+.",
"UploadField.Editing": "Bearbeite ...",
"TreeDropdownField.OpenLink": "Öffnen",
"TreeDropdownField.SearchFieldTitle": "Auswählen oder Suchen",
"UploadField.INVALIDEXTENSION": "Dateierweiterung ist nicht erlaubt",
"LOADING": "Lädt...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Datei loslösen",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Sind Sie sicher, dass sie diese Datei löschen wollen?",
"UNIQUEFIELD.SUGGESTED": "Der Wert wurde nach '%s' geändert : %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Sind Sie sicher, dass sie dieses Element löschen wollen?",
"UPDATEURL.CONFIRM": "Sollen wir die URL in diesen Wert ändern:\n\n%s/\n\nKlicken Sie OK, um den URL zu ändern, Abbrechen um ihn so zu lassen:\n\n%s",
"UploadField.EMPTYRESULT": "Leere Datei erhalten",
"TreeDropdownField.ENTERTOSEARCH": "Eingabetaste startet die Suche",
"FILEIFRAMEFIELD.DELETEFILE": "Datei löschen",
"UploadField.LOADING": "Lädt ...",
"GRIDFIELD.ERRORINTRANSACTION": "Beim Laden der Daten vom Server ist ein Fehler aufgetretetn\n Bitte versuchen sie es später noch einmal.",
"UPDATEURL.CONFIRMURLCHANGED": "Die URL wurde geändert:\n\"%s\"",
"UploadField.OVERWRITEWARNING": "Datei mit diesem Namen existiert bereits"
}

View File

@ -1,12 +1,41 @@
{
"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 ?",
"LOADING": "chargement...",
"UNIQUEFIELD.SUGGESTED": "Changez la valeur de '%s' : %s",
"UNIQUEFIELD.ENTERNEWVALUE": "You devez saisir une nouvelle valeur pou ce champ",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Ce champ ne peut être laissé vide",
"UploadField.NOFILEUPLOADED": "No File was uploaded",
"UploadField.Uploaded": "Uploaded",
"UploadField.TOOSMALL": "Filesize is too small",
"HtmlEditorField.SelectAnchor": "Select an anchor",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Max number of files exceeded",
"UploadField.ConfirmDelete": "Are you sure you want to remove this file from the server filesystem?",
"UploadField.NOTMPFOLDER": "Missing a temporary folder",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Le character '%s' ne peut être utilisé dans ce champ",
"UploadField.UPLOADEDBYTES": "Uploaded bytes exceed file size",
"VALIDATOR.FIELDREQUIRED": "Veuillez remplir \"%s\", c'est un champ requis.",
"UploadField.HTML_MAXFILESIZE": "File exceeds MAX_FILE_SIZE (HTML form directive)",
"UploadField.PHP_MAXFILESIZE": "File exceeds upload_max_filesize (php.ini directive)",
"UploadField.TOOLARGE": "Filesize is too large",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Ce champ ne peut être laissé vide",
"UNIQUEFIELD.ENTERNEWVALUE": "You devez saisir une nouvelle valeur pou ce champ",
"UploadField.WRITEFAILED": "Failed to write file to disk",
"UploadField.ONLYPARTIALUPLOADED": "File was only partially uploaded",
"UploadField.STOPEDBYEXTENSION": "File upload stopped by extension",
"TreeDropdownField.FieldTitle": "Choose",
"FILEIFRAMEFIELD.DELETEIMAGE": "Delete Image",
"LeftAndMain.IncompatBrowserWarning": "Your browser is not compatible with the CMS interface. Please use Internet Explorer 7+, Google Chrome 10+ or Mozilla Firefox 3.5+.",
"UploadField.Editing": "Editing ...",
"TreeDropdownField.OpenLink": "Open",
"TreeDropdownField.SearchFieldTitle": "Choose or Search",
"UploadField.INVALIDEXTENSION": "Extension is not allowed",
"LOADING": "chargement...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Un-Attach File",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Are you sure you want to delete this file?",
"UNIQUEFIELD.SUGGESTED": "Changez la valeur de '%s' : %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Etes-vous sûr de vouloir supprimer cet enregistrement ?",
"UPDATEURL.CONFIRM": "Voulez-vous que je change l'URL en:\n\n%s/\n\nCliquez Ok pour changer l'URL, cliquez Annuler pour la laisser à:\n\n%s",
"GRIDFIELD.ERRORINTRANSACTION": "Une erreur est survenue durant la transaction avec le serveur\n Merci de reesayer plus tard."
"UploadField.EMPTYRESULT": "Empty file upload result",
"TreeDropdownField.ENTERTOSEARCH": "Press enter to search",
"FILEIFRAMEFIELD.DELETEFILE": "Delete File",
"UploadField.LOADING": "Loading ...",
"GRIDFIELD.ERRORINTRANSACTION": "Une erreur est survenue durant la transaction avec le serveur\n Merci de reesayer plus tard.",
"UPDATEURL.CONFIRMURLCHANGED": "The URL has been changed to\n'%s'",
"UploadField.OVERWRITEWARNING": "File with the same name already exists"
}

View File

@ -1,11 +1,41 @@
{
"VALIDATOR.FIELDREQUIRED": "Completare il campo \"%s\", che è obbligatorio.",
"HASMANYFILEFIELD.UPLOADING": "Invio file... %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Si è sicuri di voler eliminare questo elemento?",
"LOADING": "caricamento...",
"UNIQUEFIELD.SUGGESTED": "Cambiare il valore di '%s': %s",
"UNIQUEFIELD.ENTERNEWVALUE": "È necessario scegliere un'altro valore per questo campo",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Questo campo non può essere lasciato vuoto",
"UploadField.NOFILEUPLOADED": "No File was uploaded",
"UploadField.Uploaded": "Uploaded",
"UploadField.TOOSMALL": "Filesize is too small",
"HtmlEditorField.SelectAnchor": "Select an anchor",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Max number of files exceeded",
"UploadField.ConfirmDelete": "Are you sure you want to remove this file from the server filesystem?",
"UploadField.NOTMPFOLDER": "Missing a temporary folder",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Il carattere '%s' non può essere utilizzato in questo campo",
"UPDATEURL.CONFIRM": "Volete cambiare l'URL in:\n\n%s/\n\nClicca OK per cambiare l'URL, clicca Annuler per lasciarla a:\n\n%s"
"UploadField.UPLOADEDBYTES": "Uploaded bytes exceed file size",
"VALIDATOR.FIELDREQUIRED": "Completare il campo \"%s\", che è obbligatorio.",
"UploadField.HTML_MAXFILESIZE": "File exceeds MAX_FILE_SIZE (HTML form directive)",
"UploadField.PHP_MAXFILESIZE": "File exceeds upload_max_filesize (php.ini directive)",
"UploadField.TOOLARGE": "Filesize is too large",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Questo campo non può essere lasciato vuoto",
"UNIQUEFIELD.ENTERNEWVALUE": "È necessario scegliere un'altro valore per questo campo",
"UploadField.WRITEFAILED": "Failed to write file to disk",
"UploadField.ONLYPARTIALUPLOADED": "File was only partially uploaded",
"UploadField.STOPEDBYEXTENSION": "File upload stopped by extension",
"TreeDropdownField.FieldTitle": "Choose",
"FILEIFRAMEFIELD.DELETEIMAGE": "Delete Image",
"LeftAndMain.IncompatBrowserWarning": "Your browser is not compatible with the CMS interface. Please use Internet Explorer 7+, Google Chrome 10+ or Mozilla Firefox 3.5+.",
"UploadField.Editing": "Editing ...",
"TreeDropdownField.OpenLink": "Open",
"TreeDropdownField.SearchFieldTitle": "Choose or Search",
"UploadField.INVALIDEXTENSION": "Extension is not allowed",
"LOADING": "caricamento...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Un-Attach File",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Are you sure you want to delete this file?",
"UNIQUEFIELD.SUGGESTED": "Cambiare il valore di '%s': %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Si è sicuri di voler eliminare questo elemento?",
"UPDATEURL.CONFIRM": "Volete cambiare l'URL in:\n\n%s/\n\nClicca OK per cambiare l'URL, clicca Annuler per lasciarla a:\n\n%s",
"UploadField.EMPTYRESULT": "Empty file upload result",
"TreeDropdownField.ENTERTOSEARCH": "Press enter to search",
"FILEIFRAMEFIELD.DELETEFILE": "Delete File",
"UploadField.LOADING": "Loading ...",
"GRIDFIELD.ERRORINTRANSACTION": "An error occured while fetching data from the server\n Please try again later.",
"UPDATEURL.CONFIRMURLCHANGED": "The URL has been changed to\n'%s'",
"UploadField.OVERWRITEWARNING": "File with the same name already exists"
}

View File

@ -1,35 +1,41 @@
{
"VALIDATOR.FIELDREQUIRED": "\"%s\"を入力してください,必須項目です.",
"HASMANYFILEFIELD.UPLOADING": "アップロード中です... %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "このレコードを本当に削除しますか?",
"LOADING": "読み込み中...",
"UNIQUEFIELD.SUGGESTED": "'%s'へ値を変更しました : %s",
"UNIQUEFIELD.ENTERNEWVALUE": "このフィールドに新しい値を入力する必要があります.",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "このフィールドは空にすることができません.",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "文字'%s'はこのフィールドでは利用することができません.",
"UPDATEURL.CONFIRM": "URLを次へ変更しますか?:\n\n%s/\n\nOKをクリックするとURLが変更されますキャンセルをクリックするとURLは保持されます:\n\n%s",
"UPDATEURL.CONFIRMURLCHANGED":"URLは次へ変更されました\n\"%s\"",
"FILEIFRAMEFIELD.DELETEFILE": "ファイルを削除",
"FILEIFRAMEFIELD.UNATTACHFILE": "Un-Attach File",
"FILEIFRAMEFIELD.DELETEIMAGE": "画像を削除",
"FILEIFRAMEFIELD.CONFIRMDELETE": "このファイルを本当に削除しても良いですか?",
"LeftAndMain.IncompatBrowserWarning": "ご利用のブラウザはCMSのインターフェイスと互換性がありませんInternet Explorer 7以上, Google Chrome 10以上またはMozilla Firefox 3.5以上をご利用ください",
"GRIDFIELD.ERRORINTRANSACTION": "サーバーからデータを取得中にエラーが発生しました.\n 後ほど改めてお試しください.",
"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": "拡張子によりファイルアップロードが停止しました.",
"UploadField.TOOLARGE": "ファイルサイズが大きすぎます.",
"UploadField.Uploaded": "アップロードしました.",
"UploadField.TOOSMALL": "ファイルサイズが小さすぎます.",
"UploadField.INVALIDEXTENSION": "拡張子は許可されていません.",
"HtmlEditorField.SelectAnchor": "アンカーを選択する",
"UploadField.MAXNUMBEROFFILESSIMPLE": "ファイルの最大数を超えました.",
"UploadField.ConfirmDelete": "サーバーのファイルシステムからこのファイルを本当に削除しても良いですか?",
"UploadField.NOTMPFOLDER": "一時フォルダがありません.",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "文字'%s'はこのフィールドでは利用することができません.",
"UploadField.UPLOADEDBYTES": "アップロードされたバイトはファイルサイズを超えました.",
"UploadField.EMPTYRESULT": "Empty file upload result",
"UploadField.LOADING": "読み込み中...",
"VALIDATOR.FIELDREQUIRED": "\"%s\"を入力してください,必須項目です.",
"UploadField.HTML_MAXFILESIZE": "MAX_FILE_SIZE(最大ファイルサイズ)をファイルが超えています.(HTMLフォームで指定されています)",
"UploadField.PHP_MAXFILESIZE": "upload_max_filesize(最大アップロードファイルサイズ)をファイルが超えています.(php.iniで指定されています)",
"UploadField.TOOLARGE": "ファイルサイズが大きすぎます.",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "このフィールドは空にすることができません.",
"UNIQUEFIELD.ENTERNEWVALUE": "このフィールドに新しい値を入力する必要があります.",
"UploadField.WRITEFAILED": "ディスクへのファイル書き込みに失敗しました.",
"UploadField.ONLYPARTIALUPLOADED": "ファイルは部分的にアップロードされました.",
"UploadField.STOPEDBYEXTENSION": "拡張子によりファイルアップロードが停止しました.",
"TreeDropdownField.FieldTitle": "選択する",
"FILEIFRAMEFIELD.DELETEIMAGE": "画像を削除",
"LeftAndMain.IncompatBrowserWarning": "ご利用のブラウザはCMSのインターフェイスと互換性がありませんInternet Explorer 7以上, Google Chrome 10以上またはMozilla Firefox 3.5以上をご利用ください",
"UploadField.Editing": "編集中...",
"UploadField.Uploaded": "アップロードしました."
"TreeDropdownField.OpenLink": "開く",
"TreeDropdownField.SearchFieldTitle": "選択または検索",
"UploadField.INVALIDEXTENSION": "拡張子は許可されていません.",
"LOADING": "読み込み中...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Un-Attach File",
"FILEIFRAMEFIELD.CONFIRMDELETE": "このファイルを本当に削除しても良いですか?",
"UNIQUEFIELD.SUGGESTED": "'%s'へ値を変更しました : %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "このレコードを本当に削除しますか?",
"UPDATEURL.CONFIRM": "URLを次へ変更しますか?:\n\n%s/\n\nOKをクリックするとURLが変更されますキャンセルをクリックするとURLは保持されます:\n\n%s",
"UploadField.EMPTYRESULT": "Empty file upload result",
"TreeDropdownField.ENTERTOSEARCH": "Enterキーを押して検索する",
"FILEIFRAMEFIELD.DELETEFILE": "ファイルを削除",
"UploadField.LOADING": "読み込み中...",
"GRIDFIELD.ERRORINTRANSACTION": "サーバーからデータを取得中にエラーが発生しました.\n 後ほど改めてお試しください.",
"UPDATEURL.CONFIRMURLCHANGED": "URLは次へ変更されました\n\"%s\"",
"UploadField.OVERWRITEWARNING": "このファイル名はすでに存在します"
}

View File

@ -1,40 +1,41 @@
{
"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?",
"LOADING": "Uta ana...",
"UNIQUEFIELD.SUGGESTED": "I hurihia te uara ki te '%s' : %s",
"UNIQUEFIELD.ENTERNEWVALUE": "Me tāuru he uara hōu mō tēnei āpure",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Kāore e whakaaetia kia noho piako tēnei āpure",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Kāore e taea te whakamahi i te pūāhua '%s' i tēnei āpure",
"UPDATEURL.CONFIRM": "Kei te hiahia koe kia huri au i te PRO ki:\n\n%s/\n\nPāwhiri Āe kia hurihia te PRO, pāwhiri Whakakore kia waiho:\n\n%s",
"UPDATEURL.CONFIRMURLCHANGED": "Kua hurihia te PRO ki \n\"%s\"",
"FILEIFRAMEFIELD.DELETEFILE": "Muku Kōnae",
"FILEIFRAMEFIELD.UNATTACHFILE": "Wehetāpiri Kōnae",
"FILEIFRAMEFIELD.DELETEIMAGE": "Muku Atahanga",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Kei te tino hiahia muku i tēnei kōnae?",
"LeftAndMain.IncompatBrowserWarning": "Kāore tō pūtirotiro i te hototahi ki te atanga CMS. Whakamahia Internet Explorer 7+, Google Chrome 10+, Mozilla Firefox 3.5+ rānei.",
"GRIDFIELD.ERRORINTRANSACTION": "Kua puta mai he hapa i te tiki raraunga mai i te tūmau\n Ngāna anō ā muri atu.",
"UploadField.ConfirmDelete": "He tika tonu kia tangohia tēnei kōnae i te pūnahakōnae tūmau?",
"UploadField.PHP_MAXFILESIZE": "Kua hipa te mōrahi_rahikōnae_tukuatu i te kōnae (whakaritenga php.ini)",
"UploadField.HTML_MAXFILESIZE": "Kua hipa te mōrahi_rahi_kōnae i te kōnae (whakaritenga puka HTML)",
"UploadField.ONLYPARTIALUPLOADED": "Kua tukuna atu he wāhanga anake o te kōnae",
"UploadField.NOFILEUPLOADED": "Kāore he Kōnae i tukuna atu",
"UploadField.NOTMPFOLDER": "Kua ngaro tētahi kōpaki rangitahi",
"UploadField.WRITEFAILED": "I rahua te tuhi kōnae ki te kōpae",
"UploadField.STOPEDBYEXTENSION": "I whakamutua te tukuatu kōnae e te toronga",
"UploadField.TOOLARGE": "He rahi rawa te rahikōnae",
"UploadField.TOOSMALL": "He iti rawa te rahikōnae",
"UploadField.INVALIDEXTENSION": "Kāore te toronga i te whakaaetia",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Kua hipa te mōrahi kōnae",
"UploadField.UPLOADEDBYTES": "Kua hipa te rahi kōnae i ngā paita kua tukuna atu",
"UploadField.EMPTYRESULT": "Otinga tukuatu kōnae piako",
"UploadField.LOADING": "Uta ana...",
"UploadField.Editing": "Whakatika ana ...",
"UploadField.Uploaded": "Kua tukuna atu",
"UploadField.OVERWRITEWARNING": "Kei te tīari kē tētahi kōnae me te ingoa ōrite",
"TreeDropdownField.ENTERTOSEARCH": "Pēhi tāuru hei rapu",
"TreeDropdownField.OpenLink": "Whakatuwhera",
"UploadField.TOOSMALL": "He iti rawa te rahikōnae",
"HtmlEditorField.SelectAnchor": "Select an anchor",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Kua hipa te mōrahi kōnae",
"UploadField.ConfirmDelete": "He tika tonu kia tangohia tēnei kōnae i te pūnahakōnae tūmau?",
"UploadField.NOTMPFOLDER": "Kua ngaro tētahi kōpaki rangitahi",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Kāore e taea te whakamahi i te pūāhua '%s' i tēnei āpure",
"UploadField.UPLOADEDBYTES": "Kua hipa te rahi kōnae i ngā paita kua tukuna atu",
"VALIDATOR.FIELDREQUIRED": "Whakakīa \"%s\", he whakaritenga tēnei.",
"UploadField.HTML_MAXFILESIZE": "Kua hipa te mōrahi_rahi_kōnae i te kōnae (whakaritenga puka HTML)",
"UploadField.PHP_MAXFILESIZE": "Kua hipa te mōrahi_rahikōnae_tukuatu i te kōnae (whakaritenga php.ini)",
"UploadField.TOOLARGE": "He rahi rawa te rahikōnae",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Kāore e whakaaetia kia noho piako tēnei āpure",
"UNIQUEFIELD.ENTERNEWVALUE": "Me tāuru he uara hōu mō tēnei āpure",
"UploadField.WRITEFAILED": "I rahua te tuhi kōnae ki te kōpae",
"UploadField.ONLYPARTIALUPLOADED": "Kua tukuna atu he wāhanga anake o te kōnae",
"UploadField.STOPEDBYEXTENSION": "I whakamutua te tukuatu kōnae e te toronga",
"TreeDropdownField.FieldTitle": "Kōwhiri",
"TreeDropdownField.SearchFieldTitle": "Kōwhiri ka Rapu rānei"
"FILEIFRAMEFIELD.DELETEIMAGE": "Muku Atahanga",
"LeftAndMain.IncompatBrowserWarning": "Kāore tō pūtirotiro i te hototahi ki te atanga CMS. Whakamahia Internet Explorer 7+, Google Chrome 10+, Mozilla Firefox 3.5+ rānei.",
"UploadField.Editing": "Whakatika ana ...",
"TreeDropdownField.OpenLink": "Whakatuwhera",
"TreeDropdownField.SearchFieldTitle": "Kōwhiri ka Rapu rānei",
"UploadField.INVALIDEXTENSION": "Kāore te toronga i te whakaaetia",
"LOADING": "Uta ana...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Wehetāpiri Kōnae",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Kei te tino hiahia muku i tēnei kōnae?",
"UNIQUEFIELD.SUGGESTED": "I hurihia te uara ki te '%s' : %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Kei te tino hiahia muku i tēnei pūkete?",
"UPDATEURL.CONFIRM": "Kei te hiahia koe kia huri au i te PRO ki:\n\n%s/\n\nPāwhiri Āe kia hurihia te PRO, pāwhiri Whakakore kia waiho:\n\n%s",
"UploadField.EMPTYRESULT": "Otinga tukuatu kōnae piako",
"TreeDropdownField.ENTERTOSEARCH": "Pēhi tāuru hei rapu",
"FILEIFRAMEFIELD.DELETEFILE": "Muku Kōnae",
"UploadField.LOADING": "Uta ana...",
"GRIDFIELD.ERRORINTRANSACTION": "Kua puta mai he hapa i te tiki raraunga mai i te tūmau\n Ngāna anō ā muri atu.",
"UPDATEURL.CONFIRMURLCHANGED": "Kua hurihia te PRO ki \n\"%s\"",
"UploadField.OVERWRITEWARNING": "Kei te tīari kē tētahi kōnae me te ingoa ōrite"
}

View File

@ -1,36 +1,41 @@
{
"VALIDATOR.FIELDREQUIRED": "Vul het veld \"%s\" in, dit is een verplicht veld.",
"HASMANYFILEFIELD.UPLOADING": "Uploading... %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Weet u zeker dat u dit record wilt verwijderen?",
"LOADING": "laden...",
"UNIQUEFIELD.SUGGESTED": "Waarde gewijzigd naar \"%s\" : %s",
"UNIQUEFIELD.ENTERNEWVALUE": "U zult een nieuwe waarde voor dit veld moeten invoeren",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Dit veld mag niet leeg blijven",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Het karakter \"%s\" mag niet gebruikt worden in dit veld",
"UPDATEURL.CONFIRM": "Wilt u de URL wijzigen naar:\n\n%s/\n\nKlik Ok om de URL te wijzigen, Klik Cancel om het te laten zoals het is:\n\n%s",
"UPDATEURL.CONFIRMURLCHANGED":"Het URL is veranderd naar \n\"%s\"",
"FILEIFRAMEFIELD.DELETEFILE": "Verwijder bestand",
"FILEIFRAMEFIELD.UNATTACHFILE": "Deselecteer bestand",
"FILEIFRAMEFIELD.DELETEIMAGE": "Verwijder afbeelding",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Weet u zeker dat u dit bestand wilt verwijderen?",
"LeftAndMain.IncompatBrowserWarning": "Je huidige browser is niet compatible, gebruik één van deze browsers Internet Explorer 7+, Google Chrome 10+ or Mozilla Firefox 3.5+.",
"GRIDFIELD.ERRORINTRANSACTION": "Er is een fout opgetreden bij het ophalen van gegevens van de server\n Probeer later opnieuw.",
"HtmlEditorField.SelectAnchor": "Kies een anker",
"UploadField.ConfirmDelete": "Weet u zeker dat u dit bestand wilt verwijderen uit het websitebestand?",
"UploadField.PHP_MAXFILESIZE": "Bestandsgrootte is hoger dan upload_max_filesize (php.ini directive)",
"UploadField.HTML_MAXFILESIZE": "Bestandsgrootte is hoger danMAX_FILE_SIZE (HTML form directive)",
"UploadField.ONLYPARTIALUPLOADED": "Bestand is maar gedeeltelijk geupload",
"UploadField.NOFILEUPLOADED": "Geen bestand is geupload",
"UploadField.NOTMPFOLDER": "Mist een tijdelijke map",
"UploadField.WRITEFAILED": "Kan bestand niet naar schijf schrijven",
"UploadField.STOPEDBYEXTENSION": "Bestandsupload gestopt door extensie",
"UploadField.TOOLARGE": "Bestandsgrootte is te groot",
"UploadField.Uploaded": "Geupload",
"UploadField.TOOSMALL": "Bestandsgrootte is te klein",
"UploadField.INVALIDEXTENSION": "Extensie is niet toegestaan",
"HtmlEditorField.SelectAnchor": "Kies een anker",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Maximaal aantal overschreven",
"UploadField.ConfirmDelete": "Weet u zeker dat u dit bestand wilt verwijderen uit het websitebestand?",
"UploadField.NOTMPFOLDER": "Mist een tijdelijke map",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "Het karakter \"%s\" mag niet gebruikt worden in dit veld",
"UploadField.UPLOADEDBYTES": "Upload overschrijd bestandsgrootte",
"UploadField.EMPTYRESULT": "Leeg bestand geupload",
"UploadField.LOADING": "Laden ...",
"VALIDATOR.FIELDREQUIRED": "Vul het veld \"%s\" in, dit is een verplicht veld.",
"UploadField.HTML_MAXFILESIZE": "Bestandsgrootte is hoger danMAX_FILE_SIZE (HTML form directive)",
"UploadField.PHP_MAXFILESIZE": "Bestandsgrootte is hoger dan upload_max_filesize (php.ini directive)",
"UploadField.TOOLARGE": "Bestandsgrootte is te groot",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Dit veld mag niet leeg blijven",
"UNIQUEFIELD.ENTERNEWVALUE": "U zult een nieuwe waarde voor dit veld moeten invoeren",
"UploadField.WRITEFAILED": "Kan bestand niet naar schijf schrijven",
"UploadField.ONLYPARTIALUPLOADED": "Bestand is maar gedeeltelijk geupload",
"UploadField.STOPEDBYEXTENSION": "Bestandsupload gestopt door extensie",
"TreeDropdownField.FieldTitle": "Kies",
"FILEIFRAMEFIELD.DELETEIMAGE": "Verwijder afbeelding",
"LeftAndMain.IncompatBrowserWarning": "Je huidige browser is niet compatible, gebruik één van deze browsers Internet Explorer 7+, Google Chrome 10+ or Mozilla Firefox 3.5+.",
"UploadField.Editing": "Bijwerken ...",
"UploadField.Uploaded": "Geupload"
"TreeDropdownField.OpenLink": "Openen",
"TreeDropdownField.SearchFieldTitle": "Kies of zoek",
"UploadField.INVALIDEXTENSION": "Extensie is niet toegestaan",
"LOADING": "laden...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Deselecteer bestand",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Weet u zeker dat u dit bestand wilt verwijderen?",
"UNIQUEFIELD.SUGGESTED": "Waarde gewijzigd naar \"%s\" : %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Weet u zeker dat u dit record wilt verwijderen?",
"UPDATEURL.CONFIRM": "Wilt u de URL wijzigen naar:\n\n%s/\n\nKlik Ok om de URL te wijzigen, Klik Cancel om het te laten zoals het is:\n\n%s",
"UploadField.EMPTYRESULT": "Leeg bestand geupload",
"TreeDropdownField.ENTERTOSEARCH": "Druk op enter om te zoeken",
"FILEIFRAMEFIELD.DELETEFILE": "Verwijder bestand",
"UploadField.LOADING": "Laden ...",
"GRIDFIELD.ERRORINTRANSACTION": "Er is een fout opgetreden bij het ophalen van gegevens van de server\n Probeer later opnieuw.",
"UPDATEURL.CONFIRMURLCHANGED": "Het URL is veranderd naar \n\"%s\"",
"UploadField.OVERWRITEWARNING": "Bestand met dezelfde naam bestaat al"
}

View File

@ -1,20 +1,41 @@
{
"VALIDATOR.FIELDREQUIRED": "Vyplňte \"%s\", prosím, je požadované.",
"HASMANYFILEFIELD.UPLOADING": "Nahrávanieí... %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Určite chcete zmazať tento záznam?",
"TABLEFIELD.DELETECONFIRMMESSAGEV2": "\nJe tu %s stránok, ktoré používajú tento súbor, zkontrolujte stránky na záložke Odkazy pred pokračovaním.",
"LOADING": "natahovanie...",
"UNIQUEFIELD.SUGGESTED": "Hodnota bola zmenená na '%s' : %s",
"UNIQUEFIELD.ENTERNEWVALUE": "Pre toto pole musíte zadať novú hodnotu",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Toto pole nesmie byť prázdne",
"UploadField.NOFILEUPLOADED": "Súbor nebol nahratý",
"UploadField.Uploaded": "Nahraté",
"UploadField.TOOSMALL": "Veľkosť súboru je veľmi malá",
"HtmlEditorField.SelectAnchor": "Vyberte kotvu",
"UploadField.MAXNUMBEROFFILESSIMPLE": "Maximálny počet súborov bol prekročený",
"UploadField.ConfirmDelete": "Určite chcete odstrániť tento súbor zo serverového súborového systému?",
"UploadField.NOTMPFOLDER": "Chýbajúci dočasný priečinok",
"RESTRICTEDTEXTFIELD.CHARCANTBEUSED": "V tomto poli znak '%s' nesmie byť použité",
"UPDATEURL.CONFIRM": "Chceli by ste zmeniť URL na:\n\n%s\n\nKliknite OK pre zmenu URL, kliknite Cancel pre ponechanie pôvodného:\n\n%s",
"UPDATEURL.CONFIRM_V2": "Chceli by ste zmeniť URL tak, aby bolo podobné názvu stránky?\n\nKliknite OK pre zmenu URL, kliknite Cancel pre ponechanie pôvodného:\n\n%s",
"FILEIFRAMEFIELD.DELETEFILE": "Zmazať súbor",
"FILEIFRAMEFIELD.UNATTACHFILE": "Odpojiť súbor",
"UploadField.UPLOADEDBYTES": "Nahrané bytz prkročili veľkosť súboru",
"VALIDATOR.FIELDREQUIRED": "Vyplňte \"%s\", prosím, je požadované.",
"UploadField.HTML_MAXFILESIZE": "Súbor prekročil MAX_FILE_SIZE (HTML formulár direktíva)",
"UploadField.PHP_MAXFILESIZE": "Súbor prekročil upload_max_filesize (php.ini direktíva)",
"UploadField.TOOLARGE": "Veľkosť súboru je veľmi veľká",
"UNIQUEFIELD.CANNOTLEAVEEMPTY": "Toto pole nesmie byť prázdne",
"UNIQUEFIELD.ENTERNEWVALUE": "Pre toto pole musíte zadať novú hodnotu",
"UploadField.WRITEFAILED": "Chyba zápisu súboru na disk",
"UploadField.ONLYPARTIALUPLOADED": "Súbor bol iba čiastočne nahratý",
"UploadField.STOPEDBYEXTENSION": "Nahratie súboru bolo zastavené pre extenziu",
"TreeDropdownField.FieldTitle": "Vyberte",
"FILEIFRAMEFIELD.DELETEIMAGE": "Zmazať obrázok",
"LeftAndMain.IncompatBrowserWarning": "Váš prehliadač nie je kompatibilný s CMS prostredím. Prosím požite Internet Explorer 7+, Google Chrome 10+alebo Mozilla Firefox 3.5+.",
"UploadField.Editing": "Editovanie ...",
"TreeDropdownField.OpenLink": "Otvoriť",
"TreeDropdownField.SearchFieldTitle": "Vybrať alebo vyhľadať",
"UploadField.INVALIDEXTENSION": "Extenzia nie je povolená",
"LOADING": "natahovanie...",
"FILEIFRAMEFIELD.UNATTACHFILE": "Odpojiť súbor",
"FILEIFRAMEFIELD.CONFIRMDELETE": "Určite chcete zmazať tento súbor?",
"TABLEFIELD.SELECTDELETE": "Vyberte, prosím, nejaké súbory na smazanie!",
"TABLEFIELD.CONFIRMDELETEV2": "Určite chcete smazať označené súbory?",
"TABLEFIELD.SELECTUPLOAD": "Vyberte, prosím, najmenej jeden súbor na nahranie."
"UNIQUEFIELD.SUGGESTED": "Hodnota bola zmenená na '%s' : %s",
"TABLEFIELD.DELETECONFIRMMESSAGE": "Určite chcete zmazať tento záznam?",
"UPDATEURL.CONFIRM": "Chceli by ste zmeniť URL na:\n\n%s\n\nKliknite OK pre zmenu URL, kliknite Cancel pre ponechanie pôvodného:\n\n%s",
"UploadField.EMPTYRESULT": "Výsledok nahrania pázdny súbor",
"TreeDropdownField.ENTERTOSEARCH": "Stlačte enter pre hľadanie",
"FILEIFRAMEFIELD.DELETEFILE": "Zmazať súbor",
"UploadField.LOADING": "Nahrávanie ...",
"GRIDFIELD.ERRORINTRANSACTION": "Nastala chyba pri získavaní dát zo servera\n Prosím skúste opäť neskôr.",
"UPDATEURL.CONFIRMURLCHANGED": "URL bolo zmenené na\n'%s'",
"UploadField.OVERWRITEWARNING": "Súbor s rovnakým názvom už existuje"
}

View File

@ -1,6 +1,5 @@
cs:
AssetAdmin:
ALLOWEDEXTS: 'Povolené extenze'
NEWFOLDER: Nová složka
SHOWALLOWEDEXTS: 'Ukázat povolené extenze'
AssetTableField:
@ -69,6 +68,8 @@ cs:
ACCESSALLINTERFACES: 'Přístup ke všem sekcím CMS'
ACCESSALLINTERFACESHELP: 'Prepíše více specifické nastavení přístupu.'
SAVE: Uložit
CMSPageHistoryController_versions_ss:
PREVIEW: 'Náhled webu'
CMSProfileController:
MENUTITLE: 'Můj profil'
ChangePasswordEmail_ss:
@ -77,23 +78,13 @@ cs:
EMAIL: E-mail
HELLO: Dobrý den
PASSWORD: Heslo
ComplexTableField:
CLOSEPOPUP: 'Zavřít'
SUCCESSADD2: 'Přidáno {name}'
SUCCESSEDIT: 'Uloženo %s %s %s'
ComplexTableField_ss:
ADDITEM: 'Přidat %s'
NOITEMSFOUND: 'Žádné položky'
SORTASC: 'Řadit vzestupně'
SORTDESC: 'Řadit sestupně'
ComplexTableField_popup_ss:
NEXT: Další
PREVIOUS: Předchozí
ConfirmedPasswordField:
ATLEAST: 'Hesla musí být nejméně {min} znaků dlouhé.'
BETWEEN: 'Hesla musí být {min} až {max} znaků dlouhé.'
MAXIMUM: 'Hesla musí být nanejvýš {max} znaků dlouhé.'
SHOWONCLICKTITLE: 'Změnit heslo'
ContentController:
NOTLOGGEDIN: 'Nepřihlášen'
CreditCardField:
FIRST: první
FOURTH: čtvrté
@ -109,6 +100,7 @@ cs:
DAYS: dni
HOUR: hodina
HOURS: hodiny
LessThanMinuteAgo: 'méně než minuta'
MIN: minuta
MINS: minuty
MONTH: měsíc
@ -119,7 +111,6 @@ cs:
TIMEDIFFIN: 'v {difference}'
YEAR: rok
YEARS: roky
LessThanMinuteAgo: 'méně než minuta'
DateField:
NOTSET: 'nenastaveno'
TODAY: dnes
@ -132,11 +123,9 @@ cs:
INVALID_REQUEST: 'Neplatný požadavek'
DropdownField:
CHOOSE: (Vyberte)
CHOOSESEARCH: '(Vybrat nebo vyhledat)'
EmailField:
VALIDATION: 'Prosím zadejte e-mailovou adresu'
Email_BounceRecord:
PLURALNAME: 'Záznamy vrácené pošty'
SINGULARNAME: 'Záznam vrácené pošty'
Enum:
ANY: Jakkýkoli
File:
@ -171,19 +160,6 @@ cs:
WavType: 'WAV audo soubor'
XlsType: 'Excel tabulka'
ZipType: 'ZIP komprimační soubor'
FileIFrameField:
ATTACH: 'Připojit {type}'
ATTACHONCESAVED: '{type} je možné připojit až budete mít nejdříve uložen záznam.'
ATTACHONCESAVED2: 'Soubory je možné připojit až budete mít nejdříve uložen záznam.'
DELETE: 'Smazat {type}'
DISALLOWEDFILETYPE: 'Tento typ souboru není povoleno náhrát'
FILE: Soubor
FROMCOMPUTER: 'Z tvého počítače'
FROMFILESTORE: 'Ze souborového úložiště'
NOSOURCE: 'Vyberte zdrojový soubor k připojení, prosím'
REPLACE: 'Nahradit {type}'
FileIFrameField_iframe_ss:
TITLE: 'Rámec pro nahrání obrázku'
Filesystem:
SYNCRESULTS: 'Synchronizace kompletní: {createdcount} položek vytvořeno, {deletedcount} položek smazanáno'
Folder:
@ -195,6 +171,7 @@ cs:
TEXT2: 'odkaz na reset hesla'
TEXT3: pro
Form:
CSRF_FAILED_MESSAGE: 'Vypadá to, že to musí být technický problém. Kliněte prosím na tlačítko zpět, obnovte váš prohlížeč a zkuste opět.'
FIELDISREQUIRED: '{name} je požadováno'
SubmitBtnLabel: Jdi
VALIDATIONCREDITNUMBER: 'Prosím ujistěte se, že jste zadal/a {number} číslo kreditní karty správně'
@ -204,10 +181,9 @@ cs:
VALIDATIONSTRONGPASSWORD: 'Hesla musí obsahovat alespoň jednu číslici a jedno písmeno.'
VALIDATOR: Validátor
VALIDCURRENCY: 'Prosím zadejte platnou měnu'
CSRF_FAILED_MESSAGE: 'Vypadá to, že to musí být technický problém. Kliněte prosím na tlačítko zpět, obnovte váš prohlížeč a zkuste opět.'
FormField:
NONE: žádný
Example: 'např. %s'
NONE: žádný
GridAction:
DELETE_DESCRIPTION: Smazat
Delete: Smazat
@ -238,7 +214,9 @@ cs:
Deleted: 'Smazáno %s %s'
Save: Uložit
Saved: 'Uloženo {name} {link}'
GridFieldItemEditView_ss:
GridFieldEditButton_ss:
EDIT: Editovat
GridFieldItemEditView:
Go_back: 'Jdi zpět'
Group:
AddRole: 'Přidat roli pro tuto skupinu'
@ -247,6 +225,7 @@ cs:
DefaultGroupTitleContentAuthors: 'Autoři obsahu'
Description: Popis
GroupReminder: 'Když vyberete nadřizenou skupinu, tato skupina bude mít všechny její role'
HierarchyPermsError: 'Nelze připojit nadřazenou skupinu "%s" s privilegovanými právy (vyžaduje ADMIN přístup)'
Locked: 'Zamčený?'
NoRoles: 'Žádné role'
PLURALNAME: Skupiny
@ -268,6 +247,7 @@ cs:
ADDURL: 'Přidat URL'
ADJUSTDETAILSDIMENSIONS: 'Detaily &amp; rozměry'
ANCHORVALUE: Záložka (kotva)
BUTTONADDURL: 'Přidat url'
BUTTONINSERT: Vložit
BUTTONINSERTLINK: 'Vložit odkaz'
BUTTONREMOVELINK: 'Odstranit odkaz'
@ -309,12 +289,9 @@ cs:
URL: URL
URLNOTANOEMBEDRESOURCE: 'URL ''{url}'' nemůže být vloženo do zdroje médií.'
UpdateMEDIA: 'Aktualizovat média'
BUTTONADDURL: 'Přidat url'
Image:
PLURALNAME: Soubory
SINGULARNAME: Soubor
ImageField:
IMAGE: Obrázek
Image_Cached:
PLURALNAME: Soubory
SINGULARNAME: Soubor
@ -333,10 +310,10 @@ cs:
PreviewButton: Náhled
REORGANISATIONSUCCESSFUL: 'Strom webu reorganizován úspěšně.'
SAVEDUP: Uloženo.
VersionUnknown: Neznámý
ShowAsList: 'ukázat jako seznam'
TooManyPages: 'Příliš mnoho stránek'
ValidationError: 'Chyba platnosti'
VersionUnknown: Neznámý
LeftAndMain_Menu_ss:
Hello: Ahoj
LOGOUT: 'Odhlásit se'
@ -361,16 +338,16 @@ cs:
EMAIL: E-mail
EMPTYNEWPASSWORD: 'Nové heslo nesmí být prázdné, zkuste to znovu'
ENTEREMAIL: 'Zadejte e-mailovou adresu pro získání odkazu na restart hesla.'
ERRORLOCKEDOUT: 'Váš účet byl dočasně zablokován, kvůli příliš velkému množství nezdařených pokusů o přihlášení. Zkuste se prosím přihlásit za 20 minut.'
ERRORLOCKEDOUT2: 'Váš účet byl dočasně zablokován, kvůli příliš velkému množství nezdařených pokusů o přihlášení. Zkuste se prosím přihlásit za {count} minut.'
ERRORNEWPASSWORD: 'Zadali jste nové heslo rozdílně, zkuste to znovu'
ERRORPASSWORDNOTMATCH: 'Váše současné heslo není správně, prosím zkuste to znovu'
ERRORWRONGCRED: 'Toto nevypadá jako správná emailová adresa nebo heslo. Prosím zkuste to znovu.'
ERRORWRONGCRED: 'Poskytnuté detaily vypadají být nesprávné. Prosím zkuste to znovu.'
FIRSTNAME: 'Křestní jméno'
INTERFACELANG: 'Jazyk rozhraní'
INVALIDNEWPASSWORD: 'Nemohli jsme připustit, že heslo: {password}'
LOGGEDINAS: 'Jste přihlášen/a jako {name}.'
NEWPASSWORD: 'Nové heslo'
NoPassword: 'Neni zde heslo pro tohoto člena'
PASSWORD: Heslo
PLURALNAME: Členové
REMEMBERME: 'Zapamatovat si mě pro příště?'
@ -390,7 +367,6 @@ cs:
db_NumVisit: 'Počet návštěvníků'
db_Password: Heslo
db_PasswordExpiry: 'Datum vypršení hesla'
NoPassword: 'Neni zde heslo pro tohoto člena'
MemberAuthenticator:
TITLE: 'E-mail a Heslo'
MemberDatetimeOptionsetField:
@ -406,7 +382,6 @@ cs:
MONTHNOLEADING: 'Číslo měsíce bez úvodní nuly'
Preview: Náhled
SHORTMONTH: 'Krátký název měsíce (např. Čer)'
TOGGLEHELP: 'Přepni nápovědu formátování'
TWODIGITDAY: 'Dvojčíslí dne měsíce'
TWODIGITHOUR: 'Dvojčíslí hodiny (00 až 23)'
TWODIGITMINUTE: 'Dvojčíslí minuty (00 až 59)'
@ -438,8 +413,8 @@ cs:
Title: 'Datové modely'
UPDATEDRECORDS: 'Aktualizováno {count} záznamů.'
ModelAdmin_ImportSpec_ss:
IMPORTSPECFIELDS: 'Sloupce databáze'
IMPORTSPECLINK: 'Ukázat specifikaci pro %s'
IMPORTSPECFIELDS: 'Sloupce databáze'
IMPORTSPECRELATIONS: Relace
IMPORTSPECTITLE: 'Specifikace pro %s'
ModelAdmin_Tools_ss:
@ -458,6 +433,10 @@ cs:
Pagination:
Page: Stránka
View: Zobrazit
PasswordValidator:
LOWCHARSTRENGTH: 'Prosím, posilněte heslo přidáním některých z následujících znaků: %s'
PREVPASSWORD: 'Již jste použil toto heslo v minulosti, vyberte nové heslo, prosím'
TOOSHORT: 'Heslo je příliš krátké, musí být %s nebo více znaků dlouhé'
Permission:
AdminGroup: Administrátor
CMS_ACCESS_CATEGORY: 'Přístup CMS'
@ -477,19 +456,15 @@ cs:
Title: Název
PermissionRoleCode:
PLURALNAME: 'Kódy role oprávnění'
PermsError: 'Nelze připojit kód "%s" s privilegovanými právy (vyžaduje ADMIN přístup)'
SINGULARNAME: 'Kód role oprávnění'
Permissions:
PERMISSIONS_CATEGORY: 'Role a přístupová práva'
UserPermissionsIntro: 'Přiřazení skupin tomuto uživatelovi upraví oprávnění, které má. Podívejte se sekcie skupiny pro podrobnosti o oprávněních k jednotlivým skupinám.'
PhoneNumberField:
VALIDATION: 'Prosím zadejte platné telefonní číslo'
RelationComplexTableField_ss:
ADD: Přidat
CSVEXPORT: 'Exportovat do CSV'
NOTFOUND: 'Žádné položky'
Security:
ALREADYLOGGEDIN: 'K této stránce nemáte přístup. Pokud máte jiný účet, který k ní může přistupovat, můžete se přihlásit níže'
LOSTPASSWORDHEADER: 'Ztracené heslo'
BUTTONSEND: 'Pošlete mi nulovací odkaz pro heslo'
CHANGEPASSWORDBELOW: 'Svoje heslo si můžete změnit níže.'
CHANGEPASSWORDHEADER: 'Změnit heslo'
@ -524,11 +499,11 @@ cs:
BtnImport: 'Import'
FileFieldLabel: 'Soubor CSV <small>(Povoleny přípony: *.csv)</small>'
SilverStripeNavigator:
Edit: Editovat
Auto: Auto
ChangeViewMode: 'Změnit mód zobrazení'
Desktop: Desktop
DualWindowView: 'Dualní okno'
Edit: Editovat
EditView: 'Mód editace'
Mobile: Mobilní telefon
PreviewState: 'Náhled stavu'
@ -538,32 +513,13 @@ cs:
Tablet: Tablet
ViewDeviceWidth: 'Vyberte šířku náhledu'
Width: šířka
SimpleImageField:
NOUPLOAD: 'Nebyl nahrán žádný obrázek'
SiteTree:
TABMAIN: Hlavní
TableField:
ISREQUIRED: 'V %s ''%s je požadováno'
TableField_ss:
ADD: 'Přidat nový řádek'
ADDITEM: 'Přidat %s'
TableListField:
CSVEXPORT: 'Exportovat do souboru CSV'
PRINT: Vytisknout
Print: Tisk
SELECT: 'Vybrat:'
TableListField_ss:
NOITEMSFOUND: 'Žádné položky'
SORTASC: 'Třídit v vzestupném pořadí'
SORTDESC: 'Třídit v sestupném pořadí'
TableListField_PageControls_ss:
DISPLAYING: Zobrazuji
OF: z
TO: do
VIEWFIRST: 'Zobraz první'
VIEWLAST: 'Zobraz poslední'
VIEWNEXT: 'Zobrazit další'
VIEWPREVIOUS: 'Zobrazit předchozí'
TimeField:
VALIDATEFORMAT: 'Prosím zadejte platný formát času ({format})'
ToggleField:
@ -573,6 +529,8 @@ cs:
ATTACHFILE: 'Připojit soubor'
ATTACHFILES: 'Připojit soubory'
AttachFile: 'Připojit soubor(y)'
CHOOSEANOTHERFILE: 'Vyberte jiný soubor'
CHOOSEANOTHERINFO: 'Nahradit tento soubor jiným ze souborového úložiště'
DELETE: 'Smazat ze souborů'
DELETEINFO: 'Trvale odstranit tento soubor z úložiště souborů'
DOEDIT: Uložit
@ -587,29 +545,13 @@ cs:
FROMFILES: 'Ze souborů'
HOTLINKINFO: 'Info: Tento obrázek bude "hotlinkován". Ujistěte se prosím, že máte oprávnění od původního tvůrce webu, aby se tak stalo.'
MAXNUMBEROFFILES: 'Maximální počet {count} soubor(ů) překročen.'
MAXNUMBEROFFILESSHORT: 'Můžete nahrát pouze {count} souborů'
MAXNUMBEROFFILESONE: 'Je možno nahrát pouze jeden soubor'
MAXNUMBEROFFILESSHORT: 'Můžete nahrát pouze {count} souborů'
OVERWRITEWARNING: 'Soubor se stejným názvem již existuje'
REMOVE: Odstranit
REMOVEERROR: 'Chyba odstranění souboru'
REMOVEINFO: 'Odtranit tento soubor odsud, ale nesmazat ho z úložiště souborů'
STARTALL: 'Začni vše'
STARTALLINFO: 'Začni vše nahrávat'
Saved: Uloženo
CHOOSEANOTHERFILE: 'Vyberte jiný soubor'
CHOOSEANOTHERINFO: 'Nahradit tento soubor jiným ze souborového úložiště'
OVERWRITEWARNING: 'Soubor se stejným názvem již existuje'
UPLOADSINTO: 'uloží do /{path}'
Versioned:
has_many_Versions: Verze
CMSPageHistoryController_versions_ss:
PREVIEW: 'Náhled webu'
GridFieldEditButton_ss:
EDIT: Editovat
ContentController:
NOTLOGGEDIN: 'Nepřihlášen'
GridFieldItemEditView:
Go_back: 'Jdi zpět'
PasswordValidator:
LOWCHARSTRENGTH: 'Prosím, posilněte heslo přidáním některých z následujících znaků: %s'
PREVPASSWORD: 'Již jste použil toto heslo v minulosti, vyberte nové heslo, prosím'
TOOSHORT: 'Heslo je příliš krátké, musí být %s nebo více znaků dlouhé'

View File

@ -319,8 +319,6 @@ en:
TooManyPages: 'Too many pages'
ValidationError: 'Validation error'
VersionUnknown: Unknown
LeftAndMain_Menu_ss:
LOGOUT: 'Log out'
LeftAndMain_Menu_ss:
Hello: Hi
LOGOUT: 'Log out'
@ -348,7 +346,7 @@ en:
ERRORLOCKEDOUT2: 'Your account has been temporarily disabled because of too many failed attempts at logging in. Please try again in {count} minutes.'
ERRORNEWPASSWORD: 'You have entered your new password differently, try again'
ERRORPASSWORDNOTMATCH: 'Your current password does not match, please try again'
ERRORWRONGCRED: 'The provided details don''t seem to be correct. Please try again.'
ERRORWRONGCREDS: 'The provided details don''t seem to be correct. Please try again.'
FIRSTNAME: 'First Name'
INTERFACELANG: 'Interface Language'
INVALIDNEWPASSWORD: 'We couldn''t accept that password: {password}'
@ -420,8 +418,8 @@ en:
Title: 'Data Models'
UPDATEDRECORDS: 'Updated {count} records.'
ModelAdmin_ImportSpec_ss:
IMPORTSPECLINK: 'Show Specification for %s'
IMPORTSPECFIELDS: 'Database columns'
IMPORTSPECLINK: 'Show Specification for %s'
IMPORTSPECRELATIONS: Relations
IMPORTSPECTITLE: 'Specification for %s'
ModelAdmin_Tools_ss:
@ -479,6 +477,7 @@ en:
ERRORPASSWORDPERMISSION: 'You must be logged in in order to change your password!'
LOGGEDOUT: 'You have been logged out. If you would like to log in again, enter your credentials below.'
LOGIN: 'Log in'
LOSTPASSWORDHEADER: 'Lost Password'
NOTEPAGESECURED: 'That page is secured. Enter your credentials below and we will send you right along.'
NOTERESETLINKINVALID: '<p>The password reset link is invalid or expired.</p><p>You can request a new one <a href="{link1}">here</a> or change your password after you <a href="{link2}">logged in</a>.</p>'
NOTERESETPASSWORD: 'Enter your e-mail address and we will send you a link with which you can reset your password'

View File

@ -1,6 +1,5 @@
es:
AssetAdmin:
ALLOWEDEXTS: 'Extensiones permitidas'
NEWFOLDER: NuevaCarpeta
SHOWALLOWEDEXTS: 'Mostrar extensiones permitidas'
AssetTableField:
@ -69,6 +68,8 @@ es:
ACCESSALLINTERFACES: 'Acceder a todas las interfaces del CMS'
ACCESSALLINTERFACESHELP: 'Anula configuraciones de acceso más específicas.'
SAVE: Guardar
CMSPageHistoryController_versions_ss:
PREVIEW: 'Previsualización'
CMSProfileController:
MENUTITLE: 'Mi Perfil'
ChangePasswordEmail_ss:
@ -77,23 +78,13 @@ es:
EMAIL: Correo electrónico
HELLO: Hola
PASSWORD: Contraseña
ComplexTableField:
CLOSEPOPUP: 'Cerrar Popup'
SUCCESSADD2: 'Añadido {name}'
SUCCESSEDIT: 'Guardado %s %s %s'
ComplexTableField_ss:
ADDITEM: 'Agregar %s'
NOITEMSFOUND: 'Registros no encontrados'
SORTASC: 'Orden Ascendente'
SORTDESC: 'Orden Descendente'
ComplexTableField_popup_ss:
NEXT: Siguiente
PREVIOUS: Anterior
ConfirmedPasswordField:
ATLEAST: 'Las constraseñas deben tener al menos {min} caracteres de longitud.'
BETWEEN: 'Las contraseñas deben tener desde {min} a {max} caracteres de longitud.'
MAXIMUM: 'Las contraseñas deben tener como máximo {max} caracteres de longitud.'
SHOWONCLICKTITLE: 'Cambiar contraseña'
ContentController:
NOTLOGGEDIN: 'No estás conectado'
CreditCardField:
FIRST: primero
FOURTH: cuarto
@ -109,6 +100,7 @@ es:
DAYS: Días
HOUR: Hora
HOURS: Horas
LessThanMinuteAgo: 'Hace menos de un minuto'
MIN: Min
MINS: Mins
MONTH: Mes
@ -119,7 +111,6 @@ es:
TIMEDIFFIN: 'en {difference}'
YEAR: Año
YEARS: Años
LessThanMinuteAgo: 'Hace menos de un minuto'
DateField:
NOTSET: 'sin establecer'
TODAY: hoy
@ -132,11 +123,9 @@ es:
INVALID_REQUEST: 'Solicitud no válida'
DropdownField:
CHOOSE: (Elegir)
CHOOSESEARCH: '(Seleccionar o Buscar)'
EmailField:
VALIDATION: 'Introduzca una dirección de correo electrónico'
Email_BounceRecord:
PLURALNAME: 'Plural'
SINGULARNAME: 'Singular'
Enum:
ANY: Cualquiera
File:
@ -171,19 +160,6 @@ es:
WavType: 'Archivo de audio WAV'
XlsType: 'Hoja de cálculo Excel'
ZipType: 'Archivo comprimido ZIP'
FileIFrameField:
ATTACH: 'Adjunte {type}'
ATTACHONCESAVED: '{type}s puede ser adjuntado una vez hayas guardado el registro por primera vez.'
ATTACHONCESAVED2: 'Se pueden adjuntar archivos una vez se haya guardado el registro por primera vez.'
DELETE: 'Borrar {type}'
DISALLOWEDFILETYPE: 'No se permite cargar este tipo de archivo'
FILE: Archivo
FROMCOMPUTER: 'Desde tu ordenador'
FROMFILESTORE: 'Desde el Almacén de archivos'
NOSOURCE: 'Por favor, seleccione un archivo de origen para adjuntar'
REPLACE: 'Reemplace {type}'
FileIFrameField_iframe_ss:
TITLE: 'Imagen para cargar Iframe'
Filesystem:
SYNCRESULTS: 'Sincronización completada: {createdcount} registros creados, {deletedcount} registros borrados'
Folder:
@ -195,6 +171,7 @@ es:
TEXT2: 'enlace para restablecer contraseña'
TEXT3: para
Form:
CSRF_FAILED_MESSAGE: 'Se detectó exploit malicioso en el formulario'
FIELDISREQUIRED: 'Se requiere este campo'
SubmitBtnLabel: Ir
VALIDATIONCREDITNUMBER: 'Por favor, asegúrese de que ha introducido el número de tarjeta de crédito correctamente {number}'
@ -204,10 +181,9 @@ es:
VALIDATIONSTRONGPASSWORD: 'Las contraseñas deben tener al menos un dígito y un carácter alfanumérico'
VALIDATOR: Validador
VALIDCURRENCY: 'Por favor, introduzca una moneda válida.'
CSRF_FAILED_MESSAGE: 'Se detectó exploit malicioso en el formulario'
FormField:
NONE: ninguna
Example: 'Ejemplo'
NONE: ninguna
GridAction:
DELETE_DESCRIPTION: Borrar
Delete: Borrar
@ -238,7 +214,9 @@ es:
Deleted: 'Borrado %s %s'
Save: Guardar
Saved: 'Guardado'
GridFieldItemEditView_ss:
GridFieldEditButton_ss:
EDIT: Editar
GridFieldItemEditView:
Go_back: 'Volver'
Group:
AddRole: 'Agregar rol'
@ -247,6 +225,7 @@ es:
DefaultGroupTitleContentAuthors: 'Editores'
Description: Descripción
GroupReminder: 'Recordatorio'
HierarchyPermsError: 'No se puede asignar permisos privilegiados al grupo "% s" (requiere acceso de administrador)'
Locked: '¿Bloqueado?'
NoRoles: 'Sin roles'
PLURALNAME: Grupos
@ -268,6 +247,7 @@ es:
ADDURL: 'Añadir URL'
ADJUSTDETAILSDIMENSIONS: 'Detalles &amp; dimensiones'
ANCHORVALUE: Ancla
BUTTONADDURL: 'Agregar URL'
BUTTONINSERT: Insertar
BUTTONINSERTLINK: 'Insertar enlace'
BUTTONREMOVELINK: 'Eliminar enlace'
@ -309,12 +289,9 @@ es:
URL: URL
URLNOTANOEMBEDRESOURCE: 'La URL ''{url}'' ''no se puede convertir en un recurso multimedia.'
UpdateMEDIA: 'Actualizar Media'
BUTTONADDURL: 'Agregar URL'
Image:
PLURALNAME: Archivos
SINGULARNAME: Archivo
ImageField:
IMAGE: Imagen
Image_Cached:
PLURALNAME: Archivos
SINGULARNAME: Archivo
@ -333,10 +310,10 @@ es:
PreviewButton: Vista previa
REORGANISATIONSUCCESSFUL: 'Reorganizado el árbol del sitio con éxito.'
SAVEDUP: Guardado
VersionUnknown: Versión desconocida
ShowAsList: 'Mostrar como lista'
TooManyPages: 'Muchas páginas'
ValidationError: 'Error de validación'
VersionUnknown: Versión desconocida
LeftAndMain_Menu_ss:
Hello: Hola
LOGOUT: 'Finalizar la sesión'
@ -361,16 +338,16 @@ es:
EMAIL: E-mail
EMPTYNEWPASSWORD: 'La nueva contraseña no puede estar vacía, por favor inténtalo de nuevo'
ENTEREMAIL: 'Por favor, introduce un correo electrónico para obtener un enlace con el que cambiar la contraseña'
ERRORLOCKEDOUT: 'Su cuenta ha sido inhabilitada temporalmente porque ha habido demasiados intentos fallidos de conectarse. Por favor, intente de nuevo en 20 minutos.'
ERRORLOCKEDOUT2: 'Su cuenta ha sido inhabilitada temporalmente porque ha habido demasiados intentos fallidos de conectarse. Por favor, intente de nuevo en 20 minutos.'
ERRORNEWPASSWORD: 'Ha introducido su nueva contraseña de distinta manera, intente de nuevo'
ERRORPASSWORDNOTMATCH: 'Su contraseña actual no concuerda, por favor intente de nuevo.'
ERRORWRONGCRED: 'No parece ser la dirección de e-mail o contraseña correcta. Por favor intente de nuevo.'
ERRORWRONGCRED: 'Los detalles provistos no parecen estar correctos. Por favor intentar nuevamente.'
FIRSTNAME: 'Nombre(s)'
INTERFACELANG: 'Lenguaje de la Interfaz'
INVALIDNEWPASSWORD: 'No podemos aceptar este password: {password}'
LOGGEDINAS: 'Estás conectado como {name}.'
NEWPASSWORD: 'Nueva Contraseña'
NoPassword: 'No hay contraseña para este usuario'
PASSWORD: Contraseña
PLURALNAME: Miembros
REMEMBERME: '¿Recordarme la próxima vez?'
@ -406,7 +383,6 @@ es:
MONTHNOLEADING: 'Dígitos mes sin cero inicial'
Preview: Vista previa
SHORTMONTH: 'Nombre abreviado del mes (por ejemplo, Jun)'
TOGGLEHELP: 'Cambia el formato de ayuda'
TWODIGITDAY: 'Día de dos dígitos del mes'
TWODIGITHOUR: 'Dos dígitos de hora (00 a 23)'
TWODIGITMINUTE: 'Dos dígitos en minutos (00 a 59)'
@ -438,8 +414,8 @@ es:
Title: 'Modelos de datos'
UPDATEDRECORDS: 'Actualizados {count} registros.'
ModelAdmin_ImportSpec_ss:
IMPORTSPECFIELDS: 'Columnas de la base de datos'
IMPORTSPECLINK: 'Mostrar especificación para %s'
IMPORTSPECFIELDS: 'Columnas de la base de datos'
IMPORTSPECRELATIONS: Relaciones
IMPORTSPECTITLE: 'Especificación para %s'
ModelAdmin_Tools_ss:
@ -458,6 +434,10 @@ es:
Pagination:
Page: Página
View: Vista
PasswordValidator:
LOWCHARSTRENGTH: 'Necesitas aumentar la complejidad de tu contraseña agregando los siguientes caracteres: %s'
PREVPASSWORD: 'Ya habías utilizado esa contraseña en el pasado, por favor usa uno nuevo'
TOOSHORT: 'Tu contraseña es muy corta'
Permission:
AdminGroup: Administrador
CMS_ACCESS_CATEGORY: 'Acceso al CMS'
@ -477,16 +457,13 @@ es:
Title: Título
PermissionRoleCode:
PLURALNAME: 'Códigos de las reglas de permisos'
PermsError: 'No se puede asignar permisos privilegiados al código "% s" (requiere acceso de administrador)'
SINGULARNAME: 'Códigos de las regla de permisos'
Permissions:
PERMISSIONS_CATEGORY: 'Reglas y permisos de acceso'
UserPermissionsIntro: 'Asignar grupos a este usuario ajustará los permisos que tienen. Vea la sección de grupos para obtener información sobre permisos en grupos individuales.'
PhoneNumberField:
VALIDATION: 'Por favor introduzca un número de teléfono válido'
RelationComplexTableField_ss:
ADD: Añadir
CSVEXPORT: 'Exportar a CSV'
NOTFOUND: 'Registros no encontrados'
Security:
ALREADYLOGGEDIN: 'No tiene acceso a esta página. Si posee otra cuenta con los privilegios para acceder a esta página, puede iniciar sesión a continuación.'
LOSTPASSWORDHEADER: 'Contraseña perdida'
@ -524,11 +501,11 @@ es:
BtnImport: 'Importar desde CSV'
FileFieldLabel: 'Archivo CSV <small>(Permitidas extensiones: *.csv)</small>'
SilverStripeNavigator:
Edit: Editar
Auto: Automático
ChangeViewMode: 'Cambiar el modo de visualización'
Desktop: Escritorio
DualWindowView: 'Modo visualización de 2 ventanas'
Edit: Editar
EditView: 'Vista de edición'
Mobile: Móbil
PreviewState: 'Estado previsualización'
@ -538,32 +515,13 @@ es:
Tablet: Tablet
ViewDeviceWidth: 'Ver al ancho'
Width: Ancho
SimpleImageField:
NOUPLOAD: 'No se han agregado imágenes'
SiteTree:
TABMAIN: Principal
TableField:
ISREQUIRED: 'En %s ''%s'' es requerido'
TableField_ss:
ADD: 'Añadir una nueva línea'
ADDITEM: 'Añadir %s'
TableListField:
CSVEXPORT: 'Exportar a CSV'
PRINT: Imprimir
Print: Imprimir
SELECT: 'Seleccionar'
TableListField_ss:
NOITEMSFOUND: 'Registros no encontrados'
SORTASC: 'Clasificar en orden ascendente'
SORTDESC: 'Clasificar en orden descendente'
TableListField_PageControls_ss:
DISPLAYING: Mostrando
OF: de
TO: a
VIEWFIRST: 'Ver primero'
VIEWLAST: 'Ver último'
VIEWNEXT: 'Ver siguiente'
VIEWPREVIOUS: 'Ver anterior'
TimeField:
VALIDATEFORMAT: 'Por favor, introduzca un formato de tiempo válido ({format})'
ToggleField:
@ -573,6 +531,8 @@ es:
ATTACHFILE: 'Adjuntar un archivo'
ATTACHFILES: 'Adjuntar ficheros'
AttachFile: 'Adjuntar archivo(s)'
CHOOSEANOTHERFILE: 'Seleccionar otro archivo'
CHOOSEANOTHERINFO: 'Seleccionar otra información'
DELETE: 'Borrar desde archivos'
DELETEINFO: 'Borrar permanentemente este archivo del almacén de archivos'
DOEDIT: Guardar
@ -587,29 +547,13 @@ es:
FROMFILES: 'Desde archivos'
HOTLINKINFO: 'Información: Esta imagen será hotlinked. Asegúrese de que tiene los permisos del sitio original del creador para hacerlo.'
MAXNUMBEROFFILES: 'El número máximo de {count} archivo(s) ha sido excedido.'
MAXNUMBEROFFILESSHORT: 'Sólo puede cargar {count} archivos'
MAXNUMBEROFFILESONE: 'El máximo número de archivos es 1'
MAXNUMBEROFFILESSHORT: 'Sólo puede cargar {count} archivos'
OVERWRITEWARNING: 'Deseas sobreescribir el archivo?'
REMOVE: Eliminar
REMOVEERROR: 'Error borrando el fichero'
REMOVEINFO: 'Eliminar este archivo de este lugar, pero no eliminarlo del almacén de archivos'
STARTALL: 'Iniciar todos'
STARTALLINFO: 'Iniciar todas las subidas de archivos'
Saved: Guardado
CHOOSEANOTHERFILE: 'Seleccionar otro archivo'
CHOOSEANOTHERINFO: 'Seleccionar otra información'
OVERWRITEWARNING: 'Deseas sobreescribir el archivo?'
UPLOADSINTO: 'Subir sobre'
Versioned:
has_many_Versions: Versiones
CMSPageHistoryController_versions_ss:
PREVIEW: 'Previsualización'
GridFieldEditButton_ss:
EDIT: Editar
ContentController:
NOTLOGGEDIN: 'No estás conectado'
GridFieldItemEditView:
Go_back: 'Volver'
PasswordValidator:
LOWCHARSTRENGTH: 'Necesitas aumentar la complejidad de tu contraseña agregando los siguientes caracteres: %s'
PREVPASSWORD: 'Ya habías utilizado esa contraseña en el pasado, por favor usa uno nuevo'
TOOSHORT: 'Tu contraseña es muy corta'

View File

@ -1,6 +1,5 @@
et_EE:
AssetAdmin:
ALLOWEDEXTS: 'Lubatud laiendid'
NEWFOLDER: Uus kaust
AssetTableField:
CREATED: 'Esmakordselt üles laaditud'
@ -75,18 +74,6 @@ et_EE:
EMAIL: E-post
HELLO: Tere
PASSWORD: Parool
ComplexTableField:
CLOSEPOPUP: 'Sulge hüpikaken'
SUCCESSADD2: '{name} on lisatud'
SUCCESSEDIT: 'Salvestatud %s %s %s'
ComplexTableField_ss:
ADDITEM: 'Lisa %s'
NOITEMSFOUND: 'Üksusi ei leitud'
SORTASC: 'Sorteeri kasvavalt'
SORTDESC: 'Sorteeri kahanevalt'
ComplexTableField_popup_ss:
NEXT: Eelmine
PREVIOUS: Järgmine
ConfirmedPasswordField:
ATLEAST: 'Parool peab olema vähemalt {min} märki pikk.'
BETWEEN: 'Parooli pikkus peab olema vahemikus {min}{max} märki.'
@ -105,6 +92,7 @@ et_EE:
DAYS: päevad
HOUR: tund
HOURS: tundi
LessThanMinuteAgo: 'vähem kui minut'
MIN: minut
MINS: minutit
MONTH: kuu
@ -114,7 +102,6 @@ et_EE:
TIMEDIFFAGO: 'tagasi'
YEAR: aasta
YEARS: aastat
LessThanMinuteAgo: 'vähem kui minut'
DateField:
NOTSET: 'Pole seadistatud'
TODAY: Täna
@ -129,9 +116,6 @@ et_EE:
CHOOSE: (Vali)
EmailField:
VALIDATION: 'Sisestage e-posti aadress'
Email_BounceRecord:
PLURALNAME: 'Tagastatud e-posti kirjed'
SINGULARNAME: 'Tagastatud e-posti kirje'
Enum:
ANY: Kõik
File:
@ -164,18 +148,6 @@ et_EE:
WavType: 'WAV-helifail'
XlsType: 'Exceli arvutustabel'
ZipType: 'Tihendatud ZIP-fail'
FileIFrameField:
ATTACH: 'Manusta {type}'
ATTACHONCESAVED2: 'Faile saab manustada pärast seda, kui olete kirje salvestanud.'
DELETE: 'Kustuta {type}'
DISALLOWEDFILETYPE: 'Seda failitüüpi ei ole lubatud üles laadida'
FILE: Fail
FROMCOMPUTER: 'Teie arvutist'
FROMFILESTORE: 'Failihoidlast'
NOSOURCE: 'Valige manustamiseks lähtefail'
REPLACE: 'Asenda {type}'
FileIFrameField_iframe_ss:
TITLE: 'Kujutise üleslaadimise IFrame'
Filesystem:
SYNCRESULTS: 'Sünkroonimine on lõpetatud: {createdcount} loodud üksust, {deletedcount} kustutatud üksust'
Folder:
@ -223,8 +195,8 @@ et_EE:
Deleted: '%s %s on kustutatud'
Save: Salvesta
Saved: 'Salvestatud {name} {link}'
GridFieldItemEditView_ss:
Go_back: 'Mine tagasi'
GridFieldEditButton_ss:
EDIT: Redigeeri
Group:
AddRole: 'Lisa selle grupi jaoks rolle'
Code: 'Grupi kood'
@ -250,6 +222,7 @@ et_EE:
ADDURL: 'Lisa URL'
ADJUSTDETAILSDIMENSIONS: 'Üksikasjad ja mõõtmed'
ANCHORVALUE: Link
BUTTONADDURL: 'Lisa url'
BUTTONINSERT: Sisesta
BUTTONINSERTLINK: 'Sisesta link'
BUTTONREMOVELINK: 'Eemalda link'
@ -289,12 +262,9 @@ et_EE:
URL: URL
URLNOTANOEMBEDRESOURCE: 'URL-i ''{url}'' ei saanud muuta meediumiressursiks.'
UpdateMEDIA: 'Uuenda meediumi'
BUTTONADDURL: 'Lisa url'
Image:
PLURALNAME: Failid
SINGULARNAME: Fail
ImageField:
IMAGE: Kujutis
Image_Cached:
PLURALNAME: Failid
SINGULARNAME: Fail
@ -313,9 +283,9 @@ et_EE:
PreviewButton: Eelvaade
REORGANISATIONSUCCESSFUL: 'Saidipuu korraldati edukalt ümber.'
SAVEDUP: Salvestatud.
VersionUnknown: Teadmata
ShowAsList: 'kuva nimekirjana'
TooManyPages: 'Liiga palju lehekülgi'
VersionUnknown: Teadmata
LeftAndMain_Menu_ss:
Hello: Tere!
LOGOUT: 'Logi välja'
@ -340,10 +310,8 @@ et_EE:
EMAIL: E-post
EMPTYNEWPASSWORD: 'Uue parooli väli ei saa olla tühi. Proovige uuesti'
ENTEREMAIL: 'Palun sisesta email, et saada paooli tühistamise link'
ERRORLOCKEDOUT: 'Konto on liiga paljude ebaõnnestunud sisselogimiskatsete tõttu ajutiselt blokeeritud. Palun oota 20 minutit ja proovi siis uuesti.'
ERRORNEWPASSWORD: 'Te sisestasite oma parooli erinevalt, proovige uuesti'
ERRORPASSWORDNOTMATCH: 'Sisestatud paroolid ei kattu, palun proovi uuesti'
ERRORWRONGCRED: 'Tundub, et e-posti aadress või parool on vale. Palun proovi uuesti.'
FIRSTNAME: 'Eesnimi'
INTERFACELANG: 'Kasutajaliidese keel'
LOGGEDINAS: 'Olete logitud sisse kui {name}.'
@ -410,8 +378,8 @@ et_EE:
Title: 'Andmemudelid'
UPDATEDRECORDS: '{count} kirjet on uuendatud.'
ModelAdmin_ImportSpec_ss:
IMPORTSPECFIELDS: 'Andmebaasi tulbad'
IMPORTSPECLINK: 'Kuva üksuse %s spetsifikatsioonid'
IMPORTSPECFIELDS: 'Andmebaasi tulbad'
IMPORTSPECRELATIONS: Seosed
IMPORTSPECTITLE: 'Üksuse %s spetsifikatsioonid'
ModelAdmin_Tools_ss:
@ -451,12 +419,8 @@ et_EE:
UserPermissionsIntro: 'Sellele kasutajale gruppide määramine kohandab tema õiguseid. Vaadake gruppide jaotist, et näha üksikasju iga grupi õiguste kohta.'
PhoneNumberField:
VALIDATION: 'Sisestage kehtiv telefoninumber'
RelationComplexTableField_ss:
ADD: Lisa
CSVEXPORT: 'Ekspordi CSV-vormingusse'
NOTFOUND: 'Üksusi ei leitud'
Security:
ALREADYLOGGEDIN: 'Sul puudub õigus sellele lehele pääsemiseks. Kui sul on teine konto, millega siia sisse logida, võid <a href="%s">uuesti sisse logida</a>.'
ALREADYLOGGEDIN: 'Sul puudub õigus sellele lehele pääsemiseks. Kui sul on teine konto, millega siia sisse logida, võid uuesti sisse logida.'
BUTTONSEND: 'Saada parooli tühistamise link'
CHANGEPASSWORDBELOW: 'Saad muuta oma parooli allpool.'
CHANGEPASSWORDHEADER: 'Muuda oma parool'
@ -491,37 +455,21 @@ et_EE:
BtnImport: 'Impordi CSV-failist'
FileFieldLabel: 'CSV-fail <small>(lubatud laiendid: *.csv)</small>'
SilverStripeNavigator:
Edit: Muuda
Auto: Automaatne
ChangeViewMode: 'Muuda kuvarežiimi'
Edit: Muuda
Mobile: Mobiilne
Responsive: Kohanduv
Tablet: Tahvel
ViewDeviceWidth: 'Vali eelvaate laiius'
Width: laiius
SimpleImageField:
NOUPLOAD: 'Pilte pole üles laaditud'
SiteTree:
TABMAIN: Avaleht
TableField_ss:
ADD: 'Lisa uus rida'
ADDITEM: 'Lisa %s'
TableListField:
CSVEXPORT: 'Ekspordi CSV-vormingusse'
PRINT: Prindi
Print: Prindi
SELECT: 'Vali:'
TableListField_ss:
NOITEMSFOUND: 'Üksusi ei leitud'
SORTASC: 'Sordi kasvavas järjekorras'
SORTDESC: 'Sordi kahanevas järjekorras'
TableListField_PageControls_ss:
DISPLAYING: Kuvatakse
OF: /
VIEWFIRST: 'Vaata esimest'
VIEWLAST: 'Vaata viimast'
VIEWNEXT: 'Vaata järgmist'
VIEWPREVIOUS: 'Vaata eelmist'
TimeField:
VALIDATEFORMAT: 'Sisestage sobivas vormingus kellaaeg ({format})'
ToggleField:
@ -546,12 +494,8 @@ et_EE:
MAXNUMBEROFFILES: 'Maksimaalne failide arv {count} on ületatud.'
MAXNUMBEROFFILESSHORT: 'Üles saab laadida ainult {count} faili'
REMOVE: Eemalda
REMOVEERROR: 'Viga faili eemaldamisel'
REMOVEINFO: 'Eemalda see fail siit, kuid ära kustuta seda failihoidlast'
STARTALL: 'Alusta kõiki'
STARTALLINFO: 'Alusta kõiki üleslaadimisi'
Saved: Salvestatud
Versioned:
has_many_Versions: Versioon
GridFieldEditButton_ss:
EDIT: Redigeeri

View File

@ -1,6 +1,5 @@
fi:
AssetAdmin:
ALLOWEDEXTS: 'Sallitut laajennukset'
NEWFOLDER: Uusi kansio
SHOWALLOWEDEXTS: 'Näytä sallitut laajennukset'
AssetTableField:
@ -71,6 +70,8 @@ fi:
ACCESSALLINTERFACES: 'Pääsy kaikkiin CMS-osioihin'
ACCESSALLINTERFACESHELP: 'Ohittaa tarkemmat käyttöoikeudet.'
SAVE: Tallenna
CMSPageHistoryController_versions_ss:
PREVIEW: 'Nettisivun esikatselu'
CMSProfileController:
MENUTITLE: 'Profiilini'
ChangePasswordEmail_ss:
@ -79,23 +80,13 @@ fi:
EMAIL: Sähköposti
HELLO: Hei
PASSWORD: Salasana
ComplexTableField:
CLOSEPOPUP: 'Sulje ponnahdusikkuna'
SUCCESSADD2: 'Lisättiin {name}'
SUCCESSEDIT: 'Tallennettu %s %s %s'
ComplexTableField_ss:
ADDITEM: 'Lisää %s'
NOITEMSFOUND: 'Merkintöjä ei löytynyt'
SORTASC: 'Nouseva järjestys'
SORTDESC: 'Laskeva järjestys'
ComplexTableField_popup_ss:
NEXT: Seuraava
PREVIOUS: Edellinen
ConfirmedPasswordField:
ATLEAST: 'Salasanan on oltava vähintään {min} merkkiä pitkä.'
BETWEEN: 'Salasanan on oltava väh. {min} ja enintään {max} merkkiä pitkä.'
MAXIMUM: 'Salasanan voi olla enintään {max} merkkiä pitkä.'
SHOWONCLICKTITLE: 'Vaihda salasana'
ContentController:
NOTLOGGEDIN: 'Ei kirjautuneena'
CreditCardField:
FIRST: ensimmäinen
FOURTH: neljäs
@ -111,6 +102,7 @@ fi:
DAYS: päivää
HOUR: tunti
HOURS: tuntia
LessThanMinuteAgo: 'alle minuutti'
MIN: min.
MINS: minuuttia
MONTH: kuukausi
@ -121,7 +113,6 @@ fi:
TIMEDIFFIN: '&raquo; {difference}'
YEAR: vuosi
YEARS: vuotta
LessThanMinuteAgo: 'alle minuutti'
DateField:
NOTSET: 'ei asetettu'
TODAY: tänään
@ -134,11 +125,9 @@ fi:
INVALID_REQUEST: 'Pyyntö on virheellinen'
DropdownField:
CHOOSE: (Valitse)
CHOOSESEARCH: '(Valitse tai Hae)'
EmailField:
VALIDATION: 'Anna sähköpostiosoite, ole hyvä.'
Email_BounceRecord:
PLURALNAME: 'Palautetut sähköpostiviestit'
SINGULARNAME: 'Palautettu sähköpostiviesti'
Enum:
ANY: Yhtään
File:
@ -173,19 +162,6 @@ fi:
WavType: 'WAV äänitiedosto'
XlsType: 'Excel tiedosto'
ZipType: 'ZIP-pakattu tiedosto'
FileIFrameField:
ATTACH: 'Liitä {type}'
ATTACHONCESAVED: '{type} voidaan liittää, kun olet tallentanut tietueen ensimmäistä kertaa.'
ATTACHONCESAVED2: 'Tiedostoja voidaan liittää, kun olet tallentanut tietueen ensimmäisen kerran.'
DELETE: 'Poista {type}'
DISALLOWEDFILETYPE: 'Tiedostotyyppin siirtoa ei ole sallittu'
FILE: Tiedosto
FROMCOMPUTER: 'tietokoneeltasi'
FROMFILESTORE: 'Tiedostovarastosta'
NOSOURCE: 'Valitse lähdetiedosto liitettäväksi'
REPLACE: 'Korvaa {type}'
FileIFrameField_iframe_ss:
TITLE: 'Kuvansiirtoikkuna (iFrame)'
Filesystem:
SYNCRESULTS: 'Synkronointi valmis: {createdcount} kohdetta luotu, {deletedcount} kohdetta poistettu'
Folder:
@ -197,6 +173,7 @@ fi:
TEXT2: 'salasanan tyhjäys -linkki'
TEXT3: henkilölle
Form:
CSRF_FAILED_MESSAGE: 'Tekninen ongelma. Ole hyvä ja napsauta takaisin linkkiä, päivitä selainikkunasi ja kokeile uudelleen.'
FIELDISREQUIRED: '{name} on pakollinen'
SubmitBtnLabel: Siirrä
VALIDATIONCREDITNUMBER: 'Tarkista, ovatko antamasi luottokortin numerot ({number}) oikein'
@ -206,10 +183,9 @@ fi:
VALIDATIONSTRONGPASSWORD: 'Salasanassa on oltava vähintään yksi numero ja yksi kirjain'
VALIDATOR: Tarkistin
VALIDCURRENCY: 'Ole hyvä ja valitse voimassa oleva valuutta'
CSRF_FAILED_MESSAGE: 'Tekninen ongelma. Ole hyvä ja napsauta takaisin linkkiä, päivitä selainikkunasi ja kokeile uudelleen.'
FormField:
NONE: Ei yhtään
Example: 'esim. %s'
NONE: Ei yhtään
GridAction:
DELETE_DESCRIPTION: Poista
Delete: Poista
@ -240,8 +216,10 @@ fi:
Deleted: 'Poistettiin %s %s'
Save: Tallenna
Saved: 'Tallennettu: {name} {link}'
GridFieldItemEditView_ss:
Go_back: 'Takaisin'
GridFieldEditButton_ss:
EDIT: Muokkaa
GridFieldItemEditView:
Go_back: 'Siirry takaisin'
Group:
AddRole: 'Lisää ryhmälle rooli'
Code: 'Ryhmän koodi'
@ -249,6 +227,7 @@ fi:
DefaultGroupTitleContentAuthors: 'Sisällöntuottajat'
Description: Kuvaus
GroupReminder: 'Valitessasi isäntäryhmän, roolit periytyvät tähän ryhmään'
HierarchyPermsError: 'Isäntä ryhmään ei voitu asettaa "%s" annettuja oikeuksia (vaaditaan JÄRJESTELMÄNVALVOJAN oikeudet)'
Locked: 'Lukittu?'
NoRoles: 'Rooleja ei löytynyt'
PLURALNAME: Ryhmät
@ -270,6 +249,7 @@ fi:
ADDURL: 'Lisää URL-osoite'
ADJUSTDETAILSDIMENSIONS: 'Tarkat tiedot &amp; mitat'
ANCHORVALUE: Ankkuri
BUTTONADDURL: 'Lisää URL-osoite'
BUTTONINSERT: Liitä
BUTTONINSERTLINK: 'Lisää linkki'
BUTTONREMOVELINK: 'Poista linkki'
@ -289,6 +269,8 @@ 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'
@ -309,12 +291,9 @@ fi:
URL: URL-osoite
URLNOTANOEMBEDRESOURCE: 'URL-osoitetteesta ''{url}'' ei voitu liittää mediaa'
UpdateMEDIA: 'Päivitä media'
BUTTONADDURL: 'Lisää URL-osoite'
Image:
PLURALNAME: Tiedostot
SINGULARNAME: Tiedosto
ImageField:
IMAGE: Kuva
Image_Cached:
PLURALNAME: Tiedostot
SINGULARNAME: Tiedosto
@ -333,10 +312,10 @@ fi:
PreviewButton: Esikatselu
REORGANISATIONSUCCESSFUL: 'Hakemistopuu järjestettiin uudelleen onnistuneesti.'
SAVEDUP: Tallennettu.
VersionUnknown: tuntematon
ShowAsList: 'näytä listana'
TooManyPages: 'Liian monta sivua'
ValidationError: 'Virhe vahvistuksessa'
VersionUnknown: tuntematon
LeftAndMain_Menu_ss:
Hello: Hei
LOGOUT: 'Kirjaudu ulos'
@ -361,16 +340,16 @@ fi:
EMAIL: Sähköposti
EMPTYNEWPASSWORD: 'Uusi salasana ei voi olla tyhjä, yritä uudelleen'
ENTEREMAIL: 'Anna sähköpostiosoitteesi saadaksesi salasanan uudelleenasettamislinkin.'
ERRORLOCKEDOUT: 'Tunnuksesti on väliaikaisesti poistettu käytöstä liian monien epäonnistuneiden sisäänkirjausyritysten takia. Ole hyvä ja yritä uudelleen 20 minuutin päästä.'
ERRORLOCKEDOUT2: 'Tilisi käyttö on evätty hetkeksi liian useiden kirjautumisyritysten takia. Ole hyvä ja kokeile uudelleen {count} minuutin kuluttua.'
ERRORNEWPASSWORD: 'Syötit uuden salasanasi erilailla, yritä uudelleen.'
ERRORPASSWORDNOTMATCH: 'Nykyiset salasanasi eivät täsmää, yritä uudelleen.'
ERRORWRONGCRED: 'Tämä ei näytä oikealta sähköpostiosoitteelta tai salasanalta. Yritä uudelleen.'
ERRORWRONGCRED: 'Antamasi tiedot eivät näytä oikeilta. Yritä uudelleen.'
FIRSTNAME: 'Etunimi'
INTERFACELANG: 'Käyttöliittymän kieli'
INVALIDNEWPASSWORD: 'Salasana ({password}) ei ole kelvollinen'
LOGGEDINAS: 'Olet kirjautuneena nimellä {name}.'
NEWPASSWORD: 'Uusi salasana'
NoPassword: 'Tällä käyttäjällä ei ole salasanaa'
PASSWORD: Salasana
PLURALNAME: Jäsenet
REMEMBERME: 'Muista seuraavalla kerralla?'
@ -390,7 +369,6 @@ fi:
db_NumVisit: 'Vierailujen määrä'
db_Password: Salasana
db_PasswordExpiry: 'Salasanan viimeinen päivämäärä'
NoPassword: 'Tällä käyttäjällä ei ole salasanaa'
MemberAuthenticator:
TITLE: 'Sähköposti &amp; Salasana'
MemberDatetimeOptionsetField:
@ -406,7 +384,6 @@ fi:
MONTHNOLEADING: 'Kuukausi ilman ensimmäistä nollaa (0)'
Preview: Esikatselu
SHORTMONTH: 'Kuukauden lyhyt nimi (esim. kesä)'
TOGGLEHELP: 'Vaihda muotoilu apuun'
TWODIGITDAY: 'Kaksinumeroinen päivämäärä (0131)'
TWODIGITHOUR: 'Kaksinumeroinen tuntinäyttö (0023)'
TWODIGITMINUTE: 'Kaksinumeroinen minuuttinäyttö (0059)'
@ -438,8 +415,8 @@ fi:
Title: 'Datamallit'
UPDATEDRECORDS: 'Päivitettiin {count} tietuetta'
ModelAdmin_ImportSpec_ss:
IMPORTSPECFIELDS: 'Tietokannan sarakkeet'
IMPORTSPECLINK: 'Näytä erittely kohteelle %s'
IMPORTSPECFIELDS: 'Tietokannan sarakkeet'
IMPORTSPECRELATIONS: Yhteydet
IMPORTSPECTITLE: 'Erittely kohteelle %s'
ModelAdmin_Tools_ss:
@ -458,6 +435,10 @@ fi:
Pagination:
Page: Sivu
View: Näytä
PasswordValidator:
LOWCHARSTRENGTH: 'Ole hyvä ja tee monimutkaisempi salasana lisäämällä joitakin seuraavista merkeistä: %s'
PREVPASSWORD: 'Olet jo käyttänyt tätä salasanaa aikaisemmin, ole hyvä ja valitse uusi'
TOOSHORT: 'Salasanan on oltava vähintään %s merkkiä'
Permission:
AdminGroup: Järjestelmänvalvoja
CMS_ACCESS_CATEGORY: 'CMS-pääsy'
@ -477,19 +458,15 @@ fi:
Title: Roolin nimi
PermissionRoleCode:
PLURALNAME: 'Käyttöoikeiden roolin koodit'
PermsError: 'Ei voida asettaa koodia "%s" annetuilla oikeuksilla (vaaditaan JÄRJESTELMÄNVALVOJAN oikeudet)'
SINGULARNAME: 'Käyttöoikeiden roolin koodi'
Permissions:
PERMISSIONS_CATEGORY: 'Roolit ja käyttöoikeudet'
UserPermissionsIntro: 'Määriteltäessä käyttäjälle ryhmä, hänen käyttöoikeutensa mukautuvat ryhmälle tehtyjen asetusten mukaisesti. Katso tarkemmat ryhmäkohtaiset käyttöoikeusasetukset Ryhmät-välilehdeltä.'
PhoneNumberField:
VALIDATION: 'Kirjoita pätevä puhelinnumero'
RelationComplexTableField_ss:
ADD: Lisää
CSVEXPORT: 'Vie CSV:nä'
NOTFOUND: 'Merkintöjä ei löytynyt'
Security:
ALREADYLOGGEDIN: 'Sinulla ei ole oikeuksia tälle sivulle. Jos sinulla on toinen tili, jolla on oikeudet tälle sivulle, voit kirjautua niillä sisään.'
LOSTPASSWORDHEADER: 'Salasana hävinnyt'
BUTTONSEND: 'Lähetä minulle salasanan palautuslinkki'
CHANGEPASSWORDBELOW: 'Voit vaihtaa salasanaasi alla.'
CHANGEPASSWORDHEADER: 'Vaihda salasanasi'
@ -524,11 +501,11 @@ fi:
BtnImport: 'Tuonti'
FileFieldLabel: 'CSV-tiedosto <small>(Sallitut päätteet: *.csv)</small>'
SilverStripeNavigator:
Edit: Muokkaa
Auto: Autom.
ChangeViewMode: 'Vaihda katselutila'
Desktop: Työpöytä
DualWindowView: 'Kaksoisikkuna'
Edit: Muokkaa
EditView: 'Muokkaustila'
Mobile: Mobiili
PreviewState: 'Esikatselutila'
@ -538,32 +515,13 @@ fi:
Tablet: Tabletti
ViewDeviceWidth: 'Valitse esikatselun leveys'
Width: leveys
SimpleImageField:
NOUPLOAD: 'Kuvaa ei kopioitu palvelimelle'
SiteTree:
TABMAIN: Yleiset
TableField:
ISREQUIRED: 'Kohteessa %s on ''%s'' pakollinen'
TableField_ss:
ADD: 'Lisää uusi rivi'
ADDITEM: 'Lisää %s'
TableListField:
CSVEXPORT: 'Vie CSV:nä'
PRINT: Tulosta
Print: Tulosta
SELECT: 'Valitse:'
TableListField_ss:
NOITEMSFOUND: 'Merkintöjä ei löytynyt'
SORTASC: 'Järjestä nousevasti'
SORTDESC: 'Järjestä laskevasti'
TableListField_PageControls_ss:
DISPLAYING: Näytetään
OF: /
TO: listalle
VIEWFIRST: 'Näytä ensimmäinen'
VIEWLAST: 'Näytä viimeinen'
VIEWNEXT: 'Näytä seuraava'
VIEWPREVIOUS: 'Näytä edellinen'
TimeField:
VALIDATEFORMAT: 'Ole hyvä ja kirjaa päivämäärä sallitussa muodossa ({format})'
ToggleField:
@ -573,6 +531,8 @@ fi:
ATTACHFILE: 'Liitä tiedosto'
ATTACHFILES: 'Liitä tiedostoja'
AttachFile: 'Liitä tiedosto(ja)'
CHOOSEANOTHERFILE: 'Valitse toinen tiedosto'
CHOOSEANOTHERINFO: 'Korvaa tämä tiedosto toisella palvelimen tiedostoissa olevalla'
DELETE: 'Poista tiedostoista'
DELETEINFO: 'Poista tiedosto pysyvästi'
DOEDIT: Tallenna
@ -587,29 +547,13 @@ fi:
FROMFILES: 'Tiedostoista'
HOTLINKINFO: 'Info: Kuvalle tulee suora linkki. Varmista sivun omistajalta, että sinulla on oikeus suoraan linkitykseen.'
MAXNUMBEROFFILES: 'Suurin sallittu määrä ({count}) tiedostoja ylitetty.'
MAXNUMBEROFFILESSHORT: 'Voidaan siirtää vain {count} tiedostoa'
MAXNUMBEROFFILESONE: 'Vain yhden tiedoston siirto mahdollista'
MAXNUMBEROFFILESSHORT: 'Voidaan siirtää vain {count} tiedostoa'
OVERWRITEWARNING: 'Samanniminen tiedosto on jo palvelimella'
REMOVE: Poista
REMOVEERROR: 'Virhe poistettaessa tiedostoa'
REMOVEINFO: 'Poista tiedosto, mutta säilytä se tiedostovarastossa'
STARTALL: 'Aloita kaikki'
STARTALLINFO: 'Aloita kaikkien siirto'
Saved: Tallennettu
CHOOSEANOTHERFILE: 'Valitse toinen tiedosto'
CHOOSEANOTHERINFO: 'Korvaa tämä tiedosto toisella palvelimen tiedostoissa olevalla'
OVERWRITEWARNING: 'Samanniminen tiedosto on jo palvelimella'
UPLOADSINTO: 'tallentuu polkuun: /{path}'
Versioned:
has_many_Versions: Versiot
CMSPageHistoryController_versions_ss:
PREVIEW: 'Nettisivun esikatselu'
GridFieldEditButton_ss:
EDIT: Muokkaa
ContentController:
NOTLOGGEDIN: 'Ei kirjautuneena'
GridFieldItemEditView:
Go_back: 'Siirry takaisin'
PasswordValidator:
LOWCHARSTRENGTH: 'Ole hyvä ja tee monimutkaisempi salasana lisäämällä joitakin seuraavista merkeistä: %s'
PREVPASSWORD: 'Olet jo käyttänyt tätä salasanaa aikaisemmin, ole hyvä ja valitse uusi'
TOOSHORT: 'Salasanan on oltava vähintään %s merkkiä'

View File

@ -1,6 +1,5 @@
mi:
AssetAdmin:
ALLOWEDEXTS: 'Ngā toronga ka whakaaetia'
NEWFOLDER: KōpakiHōu
SHOWALLOWEDEXTS: 'Whakaaturia mai ngā toronga e whakaaetia ana'
AssetTableField:
@ -69,6 +68,8 @@ mi:
ACCESSALLINTERFACES: 'Uru ki ngā wāhanga CMS katoa'
ACCESSALLINTERFACESHELP: 'Ka takahi i ngā tautuhinga uru tauwhāiti ake'
SAVE: Tiaki
CMSPageHistoryController_versions_ss:
PREVIEW: 'Arokite Paetukutuku'
CMSProfileController:
MENUTITLE: 'Taku Kōtaha'
ChangePasswordEmail_ss:
@ -77,23 +78,13 @@ mi:
EMAIL: Īmēra
HELLO: Kia ora
PASSWORD: Kupuhipa
ComplexTableField:
CLOSEPOPUP: 'Kati Pakū-Ake'
SUCCESSADD2: 'Kua tāpiritia a {name}'
SUCCESSEDIT: 'I tiakina a %s %s %s'
ComplexTableField_ss:
ADDITEM: 'Whakaurunga'
NOITEMSFOUND: 'Kāore i kitea he tūemi'
SORTASC: 'Kōmaka aupiki'
SORTDESC: 'Kōmaka auheke'
ComplexTableField_popup_ss:
NEXT: Panuku
PREVIOUS: Tōmua
ConfirmedPasswordField:
ATLEAST: 'Kia {min} pūāhua i te iti rawa te roa o ngā kupuhipa.'
BETWEEN: 'Me noho te roa o ngā kupuhipa i waenga i te {min} ki te {max} ngā pūāhua'
MAXIMUM: 'Kaua i hipa i te {max} pūāhua te roa o ngā kupuhipa.'
SHOWONCLICKTITLE: 'Huri Kupuhipa'
ContentController:
NOTLOGGEDIN: 'kāore i te takiuru'
CreditCardField:
FIRST: tuatahi
FOURTH: tuawhā
@ -109,6 +100,7 @@ mi:
DAYS: ngā rā
HOUR: haora
HOURS: ngā haora
LessThanMinuteAgo: 'iti iho i te meneti kotahi'
MIN: meneti
MINS: ngā meneti
MONTH: marama
@ -119,7 +111,6 @@ mi:
TIMEDIFFIN: 'i roto i te {difference}'
YEAR: tau
YEARS: ngā tau
LessThanMinuteAgo: 'iti iho i te meneti kotahi'
DateField:
NOTSET: 'kāore i tautuhia'
TODAY: tēnei rā
@ -134,9 +125,6 @@ mi:
CHOOSE: (Kōwhiri)
EmailField:
VALIDATION: 'Tāurua he wāhitau īmēra '
Email_BounceRecord:
PLURALNAME: 'Ngā Pūrongo Tāwhana Īmēra'
SINGULARNAME: 'Pūrongo Tāwhana Īmēra'
Enum:
ANY: Ko tētahi
File:
@ -171,19 +159,6 @@ mi:
WavType: 'kōnae ororongo WAV'
XlsType: 'ripakaute Excel'
ZipType: 'kōnae kōpeke ZIP'
FileIFrameField:
ATTACH: 'Āpiti {type}'
ATTACHONCESAVED: 'Ka taea te āpiti i ngā {type} ina oti te tiaki tuatahi o te pūkete.'
ATTACHONCESAVED2: 'Ka taea te āpiti kōnae ina oti te tiaki tuatahi o te pūkete.'
DELETE: 'Muku {type}'
DISALLOWEDFILETYPE: 'Kāore e whakaaetia ki te tukuatu i tēnei momo kōnae'
FILE: Kōnae
FROMCOMPUTER: 'Mai i tō Rorohiko'
FROMFILESTORE: 'Mai i te pātaka kōnae'
NOSOURCE: 'Kōwhiria he kōnae pūtake hei tāpiri'
REPLACE: 'Whakakapi {type}'
FileIFrameField_iframe_ss:
TITLE: 'Iframe Tukuatu Atahanga'
Filesystem:
SYNCRESULTS: 'Kua oti te tukutahi: e {createdcount} ngā tūemi i hangaia, e {deletedcount} ngā tūemi i mukua'
Folder:
@ -195,6 +170,7 @@ mi:
TEXT2: 'hono tautuhi kupuhipa anō'
TEXT3:
Form:
CSRF_FAILED_MESSAGE: 'Te āhua nei kua puta he raru hangarau. Pāwhiria te pātene hoki, ka tāmata anō i tō pūtirotiro, ka ngana anō.'
FIELDISREQUIRED: 'Ka hiahiatia te {name}'
SubmitBtnLabel: Haere
VALIDATIONCREDITNUMBER: 'Tirohia kua tika tō tāuru i te tau kāri nama {number}'
@ -204,10 +180,9 @@ mi:
VALIDATIONSTRONGPASSWORD: 'Kia kotahi tonu te mati, kia tahi hoki te pūāhua retawhika i te iti rawa o ngā kupuhipa'
VALIDATOR: Pūwhakamana
VALIDCURRENCY: 'Tāurua he moni tika'
CSRF_FAILED_MESSAGE: 'Te āhua nei kua puta he raru hangarau. Pāwhiria te pātene hoki, ka tāmata anō i tō pūtirotiro, ka ngana anō.'
FormField:
NONE: Kore
Example: 'hei tauira %s'
NONE: Kore
GridAction:
DELETE_DESCRIPTION: Muku
Delete: Muku
@ -238,7 +213,9 @@ mi:
Deleted: 'Kua mukua %s %s'
Save: Tiaki
Saved: 'I tiakina te {name} {link}'
GridFieldItemEditView_ss:
GridFieldEditButton_ss:
EDIT: Whakatika
GridFieldItemEditView:
Go_back: 'Hoki'
Group:
AddRole: 'Tāpiritia he tūnga mō tēnei rōpū'
@ -268,6 +245,7 @@ mi:
ADDURL: 'Tāpiri PRO'
ADJUSTDETAILSDIMENSIONS: 'Ngā taipitopito &amp; ngā rahinga'
ANCHORVALUE: Punga
BUTTONADDURL: 'Tāpiri PRO'
BUTTONINSERT: Kōkohu
BUTTONINSERTLINK: 'Kōkuhu hono'
BUTTONREMOVELINK: 'Tango hono'
@ -309,12 +287,9 @@ mi:
URL: PRO
URLNOTANOEMBEDRESOURCE: 'Kāore e taea te huri i te PRO ''{url}'' hei rawa pāpāho.'
UpdateMEDIA: 'Whakahōu Pāpāho'
BUTTONADDURL: 'Tāpiri PRO'
Image:
PLURALNAME: Ngā Kōnae
SINGULARNAME: Kōnae
ImageField:
IMAGE: Atahanga
Image_Cached:
PLURALNAME: Ngā Kōnae
SINGULARNAME: Kōnae
@ -333,10 +308,10 @@ mi:
PreviewButton: Arokite
REORGANISATIONSUCCESSFUL: 'Kua momoho te whakaraupapa anō i te rākau pae'
SAVEDUP: Kua Tiakina
VersionUnknown: tē mōhiotia
ShowAsList: 'whakaaturia hei rārangi'
TooManyPages: 'He nui rawa ngā whārangi'
ValidationError: 'Hapa manatoko'
VersionUnknown: tē mōhiotia
LeftAndMain_Menu_ss:
Hello: Kia ora
LOGOUT: 'Takiputa'
@ -361,16 +336,15 @@ mi:
EMAIL: Īmēra
EMPTYNEWPASSWORD: 'Kāore e whakaaetia kia piako te kupuhipa hōu, ngana anō'
ENTEREMAIL: 'Tāurua he wāhitau īmēra kia whiwhi i te hono tautuhi kupuhipa anō.'
ERRORLOCKEDOUT: 'Kua mono rangitahitia tō pūkete nā te nui rawa o ngā whakamātau hē ki te takiuru. Ngana anō ā te 20 meneti.'
ERRORLOCKEDOUT2: 'Kua monokia rangitahitia tō pūkete nā te nui rawa o ngā ngana takiuru kua rahua. Ngana anō ā muri i te {count} meneti.'
ERRORNEWPASSWORD: 'Kua rerekē tō tāuru kupuhipa, whakamātau anō'
ERRORPASSWORDNOTMATCH: 'Kāore i te ōrite tō kupuhipa o nāianei, ngana anō'
ERRORWRONGCRED: 'Te āhua nei ehara i te wāhitau īmerā tika, i te kuphipa tika rānei. Ngana anō'
FIRSTNAME: 'Ingoa Tuatahi'
INTERFACELANG: 'Reo Atanga'
INVALIDNEWPASSWORD: 'Kāore i taea te whakaae ki taua kupuhipa: {password}'
LOGGEDINAS: 'Kua takiuru koe hei {name}.'
NEWPASSWORD: 'Kupuhipa Hōu'
NoPassword: 'Kāore he kupuhipa i tēnei mema.'
PASSWORD: Kupuhipa
PLURALNAME: Ngā Mema
REMEMBERME: 'Ka maumahara mai ā muri atu?'
@ -390,7 +364,6 @@ mi:
db_NumVisit: 'Maha o ngā Toronga'
db_Password: Kupuhipa
db_PasswordExpiry: 'Rā Mōnehu Kupuhipa'
NoPassword: 'Kāore he kupuhipa i tēnei mema.'
MemberAuthenticator:
TITLE: 'Īmērā &amp; Kupuhipa'
MemberDatetimeOptionsetField:
@ -406,7 +379,6 @@ mi:
MONTHNOLEADING: 'Mati marama kāore he kore i mua'
Preview: Arokite
SHORTMONTH: 'Ingoa marama poto (hei tauira, Pip)'
TOGGLEHELP: 'Takahurihia te āwhina whakahōputu'
TWODIGITDAY: 'Rā marama matirua'
TWODIGITHOUR: 'Ngā mati haora e rua (00 ki te 23)'
TWODIGITMINUTE: 'Ngā mati meneti e rua (00 ki te 59)'
@ -438,8 +410,8 @@ mi:
Title: 'Ngā Tauira Raraunga'
UPDATEDRECORDS: 'I whakahōutia e {count} ngā pūkete.'
ModelAdmin_ImportSpec_ss:
IMPORTSPECFIELDS: 'Ngā tīwae pātengi raraunga'
IMPORTSPECLINK: 'Whakaatu Whakapūtātanga mō %s'
IMPORTSPECFIELDS: 'Ngā tīwae pātengi raraunga'
IMPORTSPECRELATIONS: Ngā Pānga
IMPORTSPECTITLE: 'Whakapūtātanga mō %s'
ModelAdmin_Tools_ss:
@ -458,6 +430,10 @@ mi:
Pagination:
Page: Whārangi
View: Tiro
PasswordValidator:
LOWCHARSTRENGTH: 'Whakakahatia tō kupuhipa mā te tāpiri i ētahi o ēnei pūāhua: %s'
PREVPASSWORD: 'Kua whakamahi kētia tēnā kupuhipa i mua, kōwhiria he kupuhipa hou'
TOOSHORT: 'He poto rawa te kupuhipa, me %s pūāhua neke atu te roa'
Permission:
AdminGroup: Kaiwhakahaere
CMS_ACCESS_CATEGORY: 'Uru CMS'
@ -483,13 +459,8 @@ mi:
UserPermissionsIntro: 'Mā te tautapa rōpū ki tēnei kaiwhakamahi e whakarite āna whakaaetanga. Tirohia te wāhanga rōpū mō ngā taipitopito o ngā whakaaetanga o ngā rōpū takitahi.'
PhoneNumberField:
VALIDATION: 'Tāurua he tau waea tika'
RelationComplexTableField_ss:
ADD: Tāpiri
CSVEXPORT: 'Kaweatu ki CSV'
NOTFOUND: 'Kāore i kitea he tūemi'
Security:
ALREADYLOGGEDIN: 'Kāore i te whakaaetia kia uru koe ki tēnei whārangi. Mēnā he pūkete anō tōu e taea ai te uru ki tēnā whārangi, ka taea te takiuru anō i raro.'
LOSTPASSWORDHEADER: 'Kupuhipa Ngaro'
BUTTONSEND: 'Tukuna mai te hono tautuhi kupuhipa anō'
CHANGEPASSWORDBELOW: 'Ka taea te huri i tō kupuhipa i raro'
CHANGEPASSWORDHEADER: 'Hurihia tō kupuhipa'
@ -524,11 +495,11 @@ mi:
BtnImport: 'Kawemai i CSV'
FileFieldLabel: 'Kōnae CSV <small>(Ngā toronga ka whakaaetia: *.csv)</small>'
SilverStripeNavigator:
Edit: Whakatika
Auto: Aunoa
ChangeViewMode: 'Hurihia te aratau tiro'
Desktop: Papamahi
DualWindowView: 'Matapihi Takirua'
Edit: Whakatika
EditView: 'Aratau whakatika'
Mobile: Pūkoro
PreviewState: 'Tūnga Arokite'
@ -538,32 +509,13 @@ mi:
Tablet: Paparorohiko
ViewDeviceWidth: 'Tīpakohia he whānui arokite'
Width: whānui
SimpleImageField:
NOUPLOAD: 'Kāore He Atahanga Tukuatu'
SiteTree:
TABMAIN: Matua
TableField:
ISREQUIRED: 'Ka hiahiatia te %s i te ''%s'' '
TableField_ss:
ADD: 'Tāpiri haupae hōu'
ADDITEM: 'Tāpiri %s'
TableListField:
CSVEXPORT: 'Kaweake ki CSV'
PRINT:
Print:
SELECT: 'Tīpako:'
TableListField_ss:
NOITEMSFOUND: 'Kāore i kitea he tūemi'
SORTASC: 'Kōmakatia ki te raupapa aupiki'
SORTDESC: 'Kōmakatia ki te raupapa auheke'
TableListField_PageControls_ss:
DISPLAYING: Whakaatu ana
OF: o
TO: ki
VIEWFIRST: 'Tirohia te tuatahi'
VIEWLAST: 'Tirohia te whakamutunga'
VIEWNEXT: 'Tiro panuku'
VIEWPREVIOUS: 'Tiro tōmua'
TimeField:
VALIDATEFORMAT: 'Tāurua he hōputu wā tika ({format})'
ToggleField:
@ -573,6 +525,8 @@ mi:
ATTACHFILE: 'Tāpiritia tētahi kōnae'
ATTACHFILES: 'Tāpiri kōnae'
AttachFile: 'Tāpiritia t/ētahi kōnae'
CHOOSEANOTHERFILE: 'Kōwhiria tētahi kōnae anō'
CHOOSEANOTHERINFO: 'Whakakapia tēnei kōnae ki tētahi atu mai i te pātaka kōnae'
DELETE: 'Muku i ngā kōnae'
DELETEINFO: 'Muku pūmautia tēnei kōnae i te pātaka kōnae'
DOEDIT: Tiaki
@ -587,29 +541,13 @@ mi:
FROMFILES: 'I ngā kōnae'
HOTLINKINFO: 'Mōhiohio: Ka honoweratia tēnei atahanga. Me whakarite kia whai whakaaetanga koe i te kaihanga pae taketake kia pēnā.'
MAXNUMBEROFFILES: 'Kua hipa te mōrahi o ngā kōnae {count}.'
MAXNUMBEROFFILESSHORT: 'Ka taea te tukuatu i ngā kōnae {count} anake '
MAXNUMBEROFFILESONE: 'Ka taea tētahi kōnae kotahi anake te tukuatu'
MAXNUMBEROFFILESSHORT: 'Ka taea te tukuatu i ngā kōnae {count} anake '
OVERWRITEWARNING: 'Kei te tīari kē tētahi kōnae me te ingoa ōrite'
REMOVE: Tango
REMOVEERROR: 'Kua rarua te tango kōnae'
REMOVEINFO: 'Tangohia tēnei kōane i konei, engari kaua e muku i te pātaka kōnae'
STARTALL: 'Tīmata katoa'
STARTALLINFO: 'Tīmataria ngā tukuatu katoa'
Saved: Kua Tiakina
CHOOSEANOTHERFILE: 'Kōwhiria tētahi kōnae anō'
CHOOSEANOTHERINFO: 'Whakakapia tēnei kōnae ki tētahi atu mai i te pātaka kōnae'
OVERWRITEWARNING: 'Kei te tīari kē tētahi kōnae me te ingoa ōrite'
UPLOADSINTO: 'ka tiaki ki /{path}'
Versioned:
has_many_Versions: Ngā Putanga
CMSPageHistoryController_versions_ss:
PREVIEW: 'Arokite Paetukutuku'
GridFieldEditButton_ss:
EDIT: Whakatika
ContentController:
NOTLOGGEDIN: 'kāore i te takiuru'
GridFieldItemEditView:
Go_back: 'Hoki'
PasswordValidator:
LOWCHARSTRENGTH: 'Whakakahatia tō kupuhipa mā te tāpiri i ētahi o ēnei pūāhua: %s'
PREVPASSWORD: 'Kua whakamahi kētia tēnā kupuhipa i mua, kōwhiria he kupuhipa hou'
TOOSHORT: 'He poto rawa te kupuhipa, me %s pūāhua neke atu te roa'

View File

@ -14,7 +14,7 @@ nl:
TYPE: 'Type'
URL: URL
AssetUploadField:
ChooseFiles: 'Selecteer bestanden'
ChooseFiles: 'Selecteer bestand'
DRAGFILESHERE: 'Sleep bestanden hier'
DROPAREA: 'Sleep hier'
EDITALL: 'Alle bewerken'
@ -225,6 +225,7 @@ nl:
DefaultGroupTitleContentAuthors: 'Inhoud Auteurs'
Description: 'Omschrijving '
GroupReminder: 'Als je de bovenliggende groep selecteert, neemt deze groep alle rollen over'
HierarchyPermsError: 'U moet (ADMIN) rechten hebben om de bovenliggende groep "%s" toe te kennen'
Locked: 'Gesloten?'
NoRoles: 'Geen rollen gevonden'
PLURALNAME: Groepen
@ -340,6 +341,7 @@ nl:
ERRORLOCKEDOUT2: 'Uw account is tijdelijk uitgeschakeld als gevolg van te veel mislukte pogingen om in te loggen. Probeer het over {count} minuten aub.'
ERRORNEWPASSWORD: 'Het nieuwe wachtwoord komt niet overeen met de bevestiging, probeer het nogmaals'
ERRORPASSWORDNOTMATCH: 'Huidige wachtwoord kom niet overeen, probeer het nogmaals'
ERRORWRONGCRED: 'De ingevulde gegevens lijken niet correct. Probeer het nog een keer.'
FIRSTNAME: 'Voornaam'
INTERFACELANG: 'Interface Taal'
INVALIDNEWPASSWORD: 'Dit is geen goed wachtwoord: {password}'
@ -454,6 +456,7 @@ nl:
Title: Titel
PermissionRoleCode:
PLURALNAME: 'Machtigingen rol codes'
PermsError: 'U moet (ADMIN) rechten hebben om de code "%s" toe te kennen'
SINGULARNAME: 'Machtigingen rol code'
Permissions:
PERMISSIONS_CATEGORY: 'Rollen en toegangsrechten'
@ -489,7 +492,7 @@ nl:
NEWGROUP: 'Nieuwe Groep'
PERMISSIONS: Rechten
ROLES: Rollen
ROLESDESCRIPTION: 'In deze sectie kan je rollen toevoegen aan deze groep. Rollen zijn logische groeperingen van rechten die in het Rollen tapblad gewijzigd kunnen worden.'
ROLESDESCRIPTION: 'In deze sectie kan je rollen toevoegen aan deze groep. Rollen zijn logische groeperingen van rechten die in het Rollen tabblad gewijzigd kunnen worden.'
TABROLES: Rollen
Users: Gebruikers
SecurityAdmin_MemberImportForm:

View File

@ -1,6 +1,5 @@
sk:
AssetAdmin:
ALLOWEDEXTS: 'Povolené extenzie'
NEWFOLDER: Nový priečinok
SHOWALLOWEDEXTS: 'Ukázať povolené extenzie'
AssetTableField:
@ -69,6 +68,8 @@ sk:
ACCESSALLINTERFACES: 'Pristup do všetkých častí CMS.'
ACCESSALLINTERFACESHELP: 'Prepisuje viac špecifických nastavení prístupu.'
SAVE: Uložiť
CMSPageHistoryController_versions_ss:
PREVIEW: 'Náhľad webu'
CMSProfileController:
MENUTITLE: 'Môj profil'
ChangePasswordEmail_ss:
@ -77,23 +78,13 @@ sk:
EMAIL: E-mail
HELLO: Dobrý deň
PASSWORD: Heslo
ComplexTableField:
CLOSEPOPUP: 'Zatvoriť okno'
SUCCESSADD2: 'Pridané {name}'
SUCCESSEDIT: 'Uložené %s %s %s'
ComplexTableField_ss:
ADDITEM: 'Pridať %s'
NOITEMSFOUND: 'Žiadne položky'
SORTASC: 'Zoradiť vzostupne'
SORTDESC: 'Zoradiť zostupne'
ComplexTableField_popup_ss:
NEXT: Ďalší
PREVIOUS: Predchádzajúci
ConfirmedPasswordField:
ATLEAST: 'Heslá musia byť nejmenej {min} znakov dlhé.'
BETWEEN: 'Heslá musia byť {min} až {max} znakov dlhé.'
MAXIMUM: 'Heslá musia byť najviac {max} znakov dlhé.'
SHOWONCLICKTITLE: 'Zmeniť heslo'
ContentController:
NOTLOGGEDIN: 'Neprihlásený'
CreditCardField:
FIRST: prvý
FOURTH: štvrtý
@ -109,6 +100,7 @@ sk:
DAYS: dni
HOUR: hodina
HOURS: hodiny
LessThanMinuteAgo: 'menej ako minúta'
MIN: minúta
MINS: minúty
MONTH: mesiac
@ -119,7 +111,6 @@ sk:
TIMEDIFFIN: 'v {difference}'
YEAR: rok
YEARS: roky
LessThanMinuteAgo: 'menej ako minúta'
DateField:
NOTSET: 'nezadané'
TODAY: dnes
@ -132,11 +123,9 @@ sk:
INVALID_REQUEST: 'Neplatná požiadavka'
DropdownField:
CHOOSE: (Vyberte si)
CHOOSESEARCH: '(Vybrať alebo vyhľadať)'
EmailField:
VALIDATION: 'Prosím zadajte email adresu'
Email_BounceRecord:
PLURALNAME: 'Záznamy o odskočených e-mailoch'
SINGULARNAME: 'Záznam o odskočených e-mailoch'
Enum:
ANY: Každý
File:
@ -171,19 +160,6 @@ sk:
WavType: 'WAV audo súbor'
XlsType: 'Excel tabuľka'
ZipType: 'ZIP komprimačný súbor'
FileIFrameField:
ATTACH: 'Pripojiť {type}'
ATTACHONCESAVED: '{type} je možné pripojiť až budete mať najprv uložený záznam.'
ATTACHONCESAVED2: 'Súbory je možné pripojiť až budete mať najprv uložený záznam.'
DELETE: 'Zmazať {type}'
DISALLOWEDFILETYPE: 'Tento typ súboru nie je povolený nahrať'
FILE: Súbor
FROMCOMPUTER: 'Z vášho počitača'
FROMFILESTORE: 'Z úložiska súborov'
NOSOURCE: 'Prosím zvolte zdrojový súbor pre priloženie'
REPLACE: 'Nahradiť {type}'
FileIFrameField_iframe_ss:
TITLE: 'Rámec pre nahranie obrázku'
Filesystem:
SYNCRESULTS: 'Synchronizácia kompletná: {createdcount} položky vytvorené, {deletedcount} položky zmazané'
Folder:
@ -195,6 +171,7 @@ sk:
TEXT2: 'odkaz na resetovanie hesla'
TEXT3: pre
Form:
CSRF_FAILED_MESSAGE: 'Vyzerá to, že to musí být technický problem. Kliknite prosím na tlačítko späť, obnovte váš prehliadač, a skúste opäť.'
FIELDISREQUIRED: '{name} je požadované'
SubmitBtnLabel: Choď
VALIDATIONCREDITNUMBER: 'Uistite sa, že ste zadali číslo {number} kreditnej karty správne'
@ -204,10 +181,9 @@ sk:
VALIDATIONSTRONGPASSWORD: 'Heslá musia obsahovať aspoň jednu číslicu a jedno písmeno'
VALIDATOR: Validácia
VALIDCURRENCY: 'Prosím zadajte platnú menu'
CSRF_FAILED_MESSAGE: 'Vyzerá to, že to musí být technický problem. Kliknite prosím na tlačítko späť, obnovte váš prehliadač, a skúste opäť.'
FormField:
NONE: žiadne
Example: 'napr. %s'
NONE: žiadne
GridAction:
DELETE_DESCRIPTION: Zmazať
Delete: Zmazať
@ -238,7 +214,9 @@ sk:
Deleted: 'Zmazané %s %s'
Save: Uložiť
Saved: 'Uložené {name} {link}'
GridFieldItemEditView_ss:
GridFieldEditButton_ss:
EDIT: Editovať
GridFieldItemEditView:
Go_back: 'Choď späť'
Group:
AddRole: 'Pridať úlohu pre túto skupinu'
@ -247,6 +225,7 @@ sk:
DefaultGroupTitleContentAuthors: 'Autori obsahu'
Description: Popis
GroupReminder: 'Ak vyberiete nadriadenú skupinu, bude táto skupina mať všetky úlohy'
HierarchyPermsError: 'Nie je možné pripojiť nadriadenú skupinu "%s" s privilegovanými právami (vyžaduje ADMIN prístup)'
Locked: 'Zamknuté?'
NoRoles: 'Nenašli sa úlohy'
PLURALNAME: Skupiny
@ -268,6 +247,7 @@ sk:
ADDURL: 'Pridať URL'
ADJUSTDETAILSDIMENSIONS: 'Detaily &amp; rozmery'
ANCHORVALUE: Odkaz
BUTTONADDURL: 'Pridať url'
BUTTONINSERT: Vložiť
BUTTONINSERTLINK: 'Vložiť odkaz'
BUTTONREMOVELINK: 'Odstrániť odkaz'
@ -309,12 +289,9 @@ sk:
URL: URL
URLNOTANOEMBEDRESOURCE: 'URL ''{url}'' nemôže byť vložené do zdroja médií.'
UpdateMEDIA: 'Aktualizovať média'
BUTTONADDURL: 'Pridať url'
Image:
PLURALNAME: Súbory
SINGULARNAME: Súbor
ImageField:
IMAGE: Obrázok
Image_Cached:
PLURALNAME: Súbory
SINGULARNAME: Súbor
@ -333,10 +310,10 @@ sk:
PreviewButton: Náhľad
REORGANISATIONSUCCESSFUL: 'Strom webu bol reorganizovaný úspešne.'
SAVEDUP: Uložené.
VersionUnknown: Neznáme
ShowAsList: 'ukázať ako zoznam'
TooManyPages: 'Príliž veľa stránok'
ValidationError: 'Chyba platnosti'
VersionUnknown: Neznáme
LeftAndMain_Menu_ss:
Hello: Ahoj
LOGOUT: 'Odhlásiť sa'
@ -361,16 +338,16 @@ sk:
EMAIL: E-mail
EMPTYNEWPASSWORD: 'Nové heslo nesmie byť prázdne, skúste to prosím znova'
ENTEREMAIL: 'Prosím zadajte emailovú adresu pre zaslanie odkazu na resetovanie hesla.'
ERRORLOCKEDOUT: 'Váš účet bol dočasne zablokovaný, kvôli množstvu neúspešných pokusov o prihlásenie. Prosí skúste to znova za 20 minút.'
ERRORLOCKEDOUT2: 'Váš účet bol dočasne zablokovaný, kvôli množstvu neúspešných pokusov o prihlásenie. Prosím skúste to znova za {count} minút.'
ERRORNEWPASSWORD: 'Zadali ste rozdielne nové heslo, skúste to znovu'
ERRORPASSWORDNOTMATCH: 'Vaše súčasné heslo nie je správne, prosím skúste to znovu'
ERRORWRONGCRED: 'Toto nevyzerá ako správna e-mailová adresa alebo heslo. Prosím skúste to znovu.'
ERRORWRONGCRED: 'Poskytnuté detaily vyzerajúí byť nesprávne. Prosím skúste opäť.'
FIRSTNAME: 'Krstné meno'
INTERFACELANG: 'Jazyk rozhrania'
INVALIDNEWPASSWORD: 'Nemohli sme pripustiť, že heslo: {password}'
LOGGEDINAS: 'Ste prihlásený/á ako {name}.'
NEWPASSWORD: 'Nové heslo'
NoPassword: 'Nie je tu heslo pre tohto člena.'
PASSWORD: Heslo
PLURALNAME: Členovia
REMEMBERME: 'Pamätať si ma nabudúce?'
@ -390,7 +367,6 @@ sk:
db_NumVisit: 'Počet návštev'
db_Password: Heslo
db_PasswordExpiry: 'Dátum expirácie hesla'
NoPassword: 'Nie je tu heslo pre tohto člena.'
MemberAuthenticator:
TITLE: 'E-mail &amp; Heslo'
MemberDatetimeOptionsetField:
@ -406,7 +382,6 @@ sk:
MONTHNOLEADING: 'Číslo mesiaca bez úvodnej nuly'
Preview: Náhľad
SHORTMONTH: 'Krátky názov mesiaca (napr. jún)'
TOGGLEHELP: 'Prepnúť nápovedu formátovania'
TWODIGITDAY: 'Dvojčíslie dňa mesiaca'
TWODIGITHOUR: 'Dvojčíslie hodiny (00 až 23)'
TWODIGITMINUTE: 'Dvojčíslie minúty (00 až 59)'
@ -438,8 +413,8 @@ sk:
Title: 'Dátové modely'
UPDATEDRECORDS: 'Aktualizovaných {count} záznamov.'
ModelAdmin_ImportSpec_ss:
IMPORTSPECFIELDS: 'Stĺpce databázy'
IMPORTSPECLINK: 'Zobraziť špecifikáciu pre %s'
IMPORTSPECFIELDS: 'Stĺpce databázy'
IMPORTSPECRELATIONS: Relácie
IMPORTSPECTITLE: 'Špecifikácia pre %s'
ModelAdmin_Tools_ss:
@ -458,6 +433,10 @@ sk:
Pagination:
Page: Stránka
View: Zobraziť
PasswordValidator:
LOWCHARSTRENGTH: 'Prosím posilnite heslo pridaním z týchto niektorých znakov: %s'
PREVPASSWORD: 'Už ste použili toto heslo v minulosti, vyberte nové hoslo, prosím'
TOOSHORT: 'Heslo je príliš krátke, musí byť %s alebo viacej znakov dlhé'
Permission:
AdminGroup: Administrátor
CMS_ACCESS_CATEGORY: 'Prístup do CMS'
@ -477,19 +456,15 @@ sk:
Title: Názov
PermissionRoleCode:
PLURALNAME: 'Kódy právomocí úloh'
PermsError: 'Nie je možné pripojiť kód "%s" s privilegovanými právami (vyžaduje ADMIN prístup)'
SINGULARNAME: 'Kód právomocí úloh'
Permissions:
PERMISSIONS_CATEGORY: 'Úlohy a prístupové práva'
UserPermissionsIntro: 'Priradenie skupín tomuto užívateľovi upraví oprávnenia, ktoré má. Pozri sekcia skupiny pre podrobnosti o oprávneniach k jednotlivým skupinám.'
PhoneNumberField:
VALIDATION: 'Prosím zadajte platné telefónne číslo'
RelationComplexTableField_ss:
ADD: Pridať
CSVEXPORT: 'Exportovať do CSV'
NOTFOUND: 'Žiadne položky'
Security:
ALREADYLOGGEDIN: 'K tejto stránke nemáte prístup. Ak máte iný účet, ktorý k nej má prístup, môžete sa <a href="%s">prihlásiť</a>.'
LOSTPASSWORDHEADER: 'Stratené heslo'
ALREADYLOGGEDIN: 'K tejto stránke nemáte prístup. Ak máte iný účet, ktorý k nej má prístup, môžete sa prihlásiť.'
BUTTONSEND: 'Pošlite mi odkaz na resetovanie hesla'
CHANGEPASSWORDBELOW: 'Svoje heslo si môžete zmeniť nižšie.'
CHANGEPASSWORDHEADER: 'Zmeniť heslo'
@ -524,11 +499,11 @@ sk:
BtnImport: 'Importovať'
FileFieldLabel: 'CSV súbor <small>(Povoléné koncovki súborov: *.csv)</small>'
SilverStripeNavigator:
Edit: Editovať
Auto: Auto
ChangeViewMode: 'Zmeniť nód zobrazenia'
Desktop: Desktop
DualWindowView: 'Duálne okno'
Edit: Editovať
EditView: 'Mód editácie'
Mobile: Mobilný telefón
PreviewState: 'Náhľad stavu'
@ -538,32 +513,13 @@ sk:
Tablet: Tablet
ViewDeviceWidth: 'Vyberte šírku náhľadu'
Width: šírka
SimpleImageField:
NOUPLOAD: 'Nebol nahraný žiaden obrázok'
SiteTree:
TABMAIN: Hlavné
TableField:
ISREQUIRED: 'V %s ''%s je požadované'
TableField_ss:
ADD: 'Pridať nový riadok'
ADDITEM: 'Pridať %s'
TableListField:
CSVEXPORT: 'Exportovať do CSV'
PRINT: Vytlačiť
Print: Tlačiť
SELECT: 'Vyberte:'
TableListField_ss:
NOITEMSFOUND: 'Žiadne položky'
SORTASC: 'Triedit v vzostupnom poradí'
SORTDESC: 'Triediť v zostupnom poradí'
TableListField_PageControls_ss:
DISPLAYING: Zobrazujem
OF: z
TO: do
VIEWFIRST: 'Zobraziť prvé'
VIEWLAST: 'Zobraziť posledné'
VIEWNEXT: 'Zobraziť nasledujúce'
VIEWPREVIOUS: 'Zobraziť predchádzajúce'
TimeField:
VALIDATEFORMAT: 'Prosím zadajte platný formát času ({format})'
ToggleField:
@ -573,6 +529,8 @@ sk:
ATTACHFILE: 'Pripojiť súbor'
ATTACHFILES: 'Pripojiť súbory'
AttachFile: 'Pripojiť súbor(y)'
CHOOSEANOTHERFILE: 'Vyberte iný súbor'
CHOOSEANOTHERINFO: 'Nahradiť tento súbor iným z úložiska súborov'
DELETE: 'Zmazať zo súborov'
DELETEINFO: 'Trvalo zmazať tento súbor z úložiska súborov'
DOEDIT: Uložiť
@ -587,29 +545,13 @@ sk:
FROMFILES: 'Zo súborov'
HOTLINKINFO: 'Info: Tento obrázok bude "hotlinkovaný". Uistete sa prosím, že máte oprávnenie od pôvodneho tvorcu webu, aby sa tak stalo.'
MAXNUMBEROFFILES: 'Maximálny počet {count} súbor(ov) prekročený.'
MAXNUMBEROFFILESSHORT: 'Môžte nahrať iba {count} súborov'
MAXNUMBEROFFILESONE: 'Je možno nahrať iba jeden súbor'
MAXNUMBEROFFILESSHORT: 'Môžte nahrať iba {count} súborov'
OVERWRITEWARNING: 'Súbor s rovnakým názvom už existuje'
REMOVE: Odstrániť
REMOVEERROR: 'Chyba odstránenia súboru'
REMOVEINFO: 'Odstrániť tento súbor odtiaľ, ale nezmazať z úložiska súborov'
STARTALL: 'Začni všetko'
STARTALLINFO: 'Začni všetko nahrávať'
Saved: Uložené
CHOOSEANOTHERFILE: 'Vyberte iný súbor'
CHOOSEANOTHERINFO: 'Nahradiť tento súbor iným z úložiska súborov'
OVERWRITEWARNING: 'Súbor s rovnakým názvom už existuje'
UPLOADSINTO: 'uloží do /{path}'
Versioned:
has_many_Versions: verzie
CMSPageHistoryController_versions_ss:
PREVIEW: 'Náhľad webu'
GridFieldEditButton_ss:
EDIT: Editovať
ContentController:
NOTLOGGEDIN: 'Neprihlásený'
GridFieldItemEditView:
Go_back: 'Choď späť'
PasswordValidator:
LOWCHARSTRENGTH: 'Prosím posilnite heslo pridaním z týchto niektorých znakov: %s'
PREVPASSWORD: 'Už ste použili toto heslo v minulosti, vyberte nové hoslo, prosím'
TOOSHORT: 'Heslo je príliš krátke, musí byť %s alebo viacej znakov dlhé'

View File

@ -10,18 +10,52 @@ uk:
SIZE: 'Розмір'
TITLE: Назва
TYPE: 'Тип'
AssetUploadField:
ChooseFiles: 'Виберіть файли'
DRAGFILESHERE: 'Перемістіть файли сюди'
DROPAREA: 'Місце для перенесення файлів'
EDITALL: 'Редагувати все'
EDITANDORGANIZE: 'Редагувати та впорядковувати'
EDITINFO: 'Редагувати файли'
FILES: Файли
FROMCOMPUTER: 'Виберіть файли з вашого комп’ютера'
FROMCOMPUTERINFO: 'Завантажте з вашого комп’ютера'
TOTAL: Підсумок
TOUPLOAD: 'Виберіть файли для завантаження...'
UPLOADINPROGRESS: 'Зачекайте, будь ласка, виконується завантаження'
UPLOADOR: АБО
BBCodeParser:
ALIGNEMENT: Вирівнювання
ALIGNEMENTEXAMPLE: 'вирівнювання справа'
BOLD: 'Жирний текст'
BOLDEXAMPLE: Жирний
CODE: 'Блок Коду'
CODEDESCRIPTION: 'Неформатований блок коду'
CODEEXAMPLE: 'Блок коду'
COLORED: 'Кольоровий текст'
COLOREDEXAMPLE: 'синій текст'
IMAGE: Зображення
UNORDERED: 'Невпорядкований список'
UNORDEREDDESCRIPTION: 'Невпорядкований список'
BackLink_Button_ss:
Back: Назад
BasicAuth:
ENTERINFO: 'Будь ласка, введіть ім''я користувача та пароль.'
ERRORNOTADMIN: 'Цей користувач не є адміністратором.'
ERRORNOTREC: 'Таке ім''я користувача / пароль не існує'
CMSMain:
SAVE: Зберегти
CMSProfileController:
MENUTITLE: 'Мій профіль'
ChangePasswordEmail_ss:
CHANGEPASSWORDTEXT1: 'Ви змінили свій пароль для'
CHANGEPASSWORDTEXT2: 'Тепер Ви можете використовувати наступні дані для входу:'
HELLO: Привіт
PASSWORD: Пароль
ConfirmedPasswordField:
ATLEAST: 'Пароль повинен містити що найменше {min} символів.'
BETWEEN: 'Пароль повинен містити від {min} до {max} символів.'
MAXIMUM: 'Пароль повинен містити не більше ніж {max} символів.'
SHOWONCLICKTITLE: 'Змінити пароль'
CreditCardField:
FIRST: перший
@ -48,6 +82,18 @@ uk:
VALIDATIONNOTUNIQUE: 'Введене значання не унікальне'
VALIDATIONPASSWORDSDONTMATCH: 'Паролі не збігаються'
VALIDATIONPASSWORDSNOTEMPTY: 'Паролі не можуть бути порожніми'
GridField:
Add: 'Додати {name}'
Filter: Фільтр
FilterBy: 'Фільтр по'
Find: Пошук
LEVELUP: 'Рівень вижче'
GridFieldDetailForm:
CancelBtn: Відмінити
Create: Створити
Delete: Видалити
Save: Зберегти
Saved: 'Збережено {name} {link}'
Group:
AddRole: 'Додати роль до цієї групи'
Code: 'Код групи'
@ -82,6 +128,12 @@ uk:
LINKOPENNEWWIN: 'Відчиняти посилання у новому вікні?'
LINKTO: 'Посилатися на'
PAGE: Сторінка
Image:
PLURALNAME: Файли
SINGULARNAME: Файл
Image_Cached:
PLURALNAME: Файли
SINGULARNAME: Файл
Image_iframe_ss:
TITLE: 'АйФрейм завантаження зображення'
LeftAndMain:
@ -91,6 +143,9 @@ uk:
PERMALREADY: 'Вибачте, та Ви не маєте доступу до цієї чатини системи. Якщо Ви хочете ідентифікуватися як хтось інший, зробіть це нижче '
PERMDEFAULT: 'Будь ласка, оберіть метод ідентифікації та введіть дані доступу до системи.'
PLEASESAVE: 'Будь ласка, збережіть сторінку: Ця сторінка не може бути оновлена, бо вона ще не була збережена.'
LeftAndMain_Menu_ss:
Hello: Привіт
LOGOUT: 'Вилогуватися'
Member:
BUTTONCHANGEPASSWORD: 'Змінити пароль'
BUTTONLOGIN: 'Увійти'
@ -124,13 +179,24 @@ uk:
db_PasswordExpiry: 'Дата закінчення терміну дії пароля'
MemberAuthenticator:
TITLE: 'Е-пошта та Пароль'
MemberPassword:
PLURALNAME: 'Паролі користувача'
SINGULARNAME: 'Пароль користувача'
ModelAdmin:
IMPORT: 'Імпортувати з CSV'
MoneyField:
FIELDLABELAMOUNT: Кількість
FIELDLABELCURRENCY: Валюта
Pagination:
Page: Сторінка
Permission:
SINGULARNAME: Право доступу
PermissionCheckboxSetField:
FromRoleOnGroup: 'Успадкований з ролі "%s" на групу "%s"'
PermissionRole:
PLURALNAME: Ролі
SINGULARNAME: Роль
Title: Назва
PhoneNumberField:
VALIDATION: 'Будь ласка, введіть дійсний номер телефону'
Security:
@ -141,6 +207,7 @@ uk:
ENTERNEWPASSWORD: 'Ви можете змінити пароль нижче.'
ERRORPASSWORDPERMISSION: 'Ви повинні увійти до системи для зміни паролю!'
LOGGEDOUT: 'Ви вийшли з системи. Якщо Ви хочете знову увійти, то введіть дані нижче.'
LOGIN: 'Увійти'
NOTEPAGESECURED: 'Ця сторінка захищена. Будь ласка, введіть Ваші дані нижче та ми Вас перенаправимо далі.'
NOTERESETPASSWORD: 'Введіть адресу Вашої е-пошти і ми надішлемо вам посилання для відновлення паролю'
SecurityAdmin:

View File

@ -1,6 +1,5 @@
zh:
AssetAdmin:
ALLOWEDEXTS: '允许的扩展名'
NEWFOLDER: 新建文件夹
SHOWALLOWEDEXTS: '显示允许的扩展名'
AssetTableField:
@ -69,6 +68,8 @@ zh:
ACCESSALLINTERFACES: '对所有 CMS 部分的访问'
ACCESSALLINTERFACESHELP: '支配更多的特殊访问设置'
SAVE: 保存
CMSPageHistoryController_versions_ss:
PREVIEW: '网站预览'
CMSProfileController:
MENUTITLE: '我的个人资料'
ChangePasswordEmail_ss:
@ -77,23 +78,13 @@ zh:
EMAIL: 电子邮件
HELLO: 您好
PASSWORD: 密码
ComplexTableField:
CLOSEPOPUP: '关闭弹出窗口'
SUCCESSADD2: '已添加的 {name}'
SUCCESSEDIT: '已保存 %s %s %s'
ComplexTableField_ss:
ADDITEM: '添加 %s'
NOITEMSFOUND: '没有找到任何项目'
SORTASC: '升序排列'
SORTDESC: '降序排列'
ComplexTableField_popup_ss:
NEXT: 下一页
PREVIOUS: 前一页
ConfirmedPasswordField:
ATLEAST: '密码长度必须至少 {min} 个字符。'
BETWEEN: '密码长度必须含 {min} 到 {max} 个字符。'
MAXIMUM: '密码长度必须至多 {max} 个字符。'
SHOWONCLICKTITLE: '更改密码'
ContentController:
NOTLOGGEDIN: '尚未登录'
CreditCardField:
FIRST: 第一个
FOURTH: 第四个
@ -109,6 +100,7 @@ zh:
DAYS:
HOUR: 小时
HOURS: 小时
LessThanMinuteAgo: '少于一分钟'
MIN: 分钟
MINS: 分钟
MONTH: 月份
@ -119,7 +111,6 @@ zh:
TIMEDIFFIN: '在 {difference} 中'
YEAR:
YEARS:
LessThanMinuteAgo: '少于一分钟'
DateField:
NOTSET: '未设置'
TODAY: 今天
@ -132,11 +123,9 @@ zh:
INVALID_REQUEST: '无效请求'
DropdownField:
CHOOSE: (选择)
CHOOSESEARCH: '(选择或搜索)'
EmailField:
VALIDATION: '请输入一个电子邮件地址'
Email_BounceRecord:
PLURALNAME: '电子邮件退还记录'
SINGULARNAME: '电子邮件退还记录'
Enum:
ANY: 任何
File:
@ -171,19 +160,6 @@ zh:
WavType: 'WAV 音频文件'
XlsType: 'Excel 表格'
ZipType: 'ZIP 压缩文件'
FileIFrameField:
ATTACH: '附件 {type}'
ATTACHONCESAVED: '只有当您第一次保存过记录,{type} 才能被附加。'
ATTACHONCESAVED2: '只有当您第一次保存过记录,文件才能被附加。'
DELETE: '删除 {type}'
DISALLOWEDFILETYPE: '这种文件类型不允许被上传'
FILE: 文件
FROMCOMPUTER: '从您的电脑'
FROMFILESTORE: '从文件商店'
NOSOURCE: '请选择一个源文件来附加'
REPLACE: '替代 {type}'
FileIFrameField_iframe_ss:
TITLE: '图片上传框架'
Filesystem:
SYNCRESULTS: '同步更新完成:{createdcount} 项已创建, {deletedcount} 项已删除'
Folder:
@ -195,6 +171,7 @@ zh:
TEXT2: '密码重设链接'
TEXT3:
Form:
CSRF_FAILED_MESSAGE: '似乎出现了技术问题。请点击返回按钮,刷新您的浏览器,然后再试一次。'
FIELDISREQUIRED: '{name} 为必填'
SubmitBtnLabel: 前往
VALIDATIONCREDITNUMBER: '请确保您输入了正确的 {number} 信用卡号码'
@ -204,10 +181,9 @@ zh:
VALIDATIONSTRONGPASSWORD: '密码必须至少有一个数字和一个字母数字字符'
VALIDATOR: 验证器
VALIDCURRENCY: '请输入一个有效的货币'
CSRF_FAILED_MESSAGE: '似乎出现了技术问题。请点击返回按钮,刷新您的浏览器,然后再试一次。'
FormField:
NONE:
Example: '例如 %s'
NONE:
GridAction:
DELETE_DESCRIPTION: 删除
Delete: 删除
@ -238,7 +214,9 @@ zh:
Deleted: '已删除的 %s %s'
Save: 保存
Saved: '已保存 {name} {link}'
GridFieldItemEditView_ss:
GridFieldEditButton_ss:
EDIT: 编辑
GridFieldItemEditView:
Go_back: '返回'
Group:
AddRole: '在这个小组中添加一个角色'
@ -247,6 +225,7 @@ zh:
DefaultGroupTitleContentAuthors: '内容作者'
Description: 描述
GroupReminder: '如果您选择了某父组,该组别将会承担起所有功能角色'
HierarchyPermsError: '无法为父组 "%s" 分配特权权限(要求具备 ADMIN 访问)'
Locked: '锁定?'
NoRoles: '没有找到角色'
PLURALNAME: 群组
@ -268,6 +247,7 @@ zh:
ADDURL: '添加网址'
ADJUSTDETAILSDIMENSIONS: '详情 &amp;amp; 体积'
ANCHORVALUE: 固定
BUTTONADDURL: '添加网址'
BUTTONINSERT: 插入
BUTTONINSERTLINK: '插入链接'
BUTTONREMOVELINK: '移除链接'
@ -287,6 +267,8 @@ zh:
FROMWEB: '从网站上'
FindInFolder: '在文件夹中寻找'
IMAGEALT: '替代性文本 (alt)'
IMAGEALTTEXT: '替代文字 (alt) - 用于图像无法显示时'
IMAGEALTTEXTDESC: '向显示屏读者显示,或者用于图像无法显示时'
IMAGEDIMENSIONS: 体积
IMAGEHEIGHTPX: 高度
IMAGETITLE: '标题文字(工具提示)- 关于该图像的更多信息'
@ -307,12 +289,9 @@ zh:
URL: 网址
URLNOTANOEMBEDRESOURCE: '''{url}'' 该网址无法转换成媒体来源。'
UpdateMEDIA: '更新媒体'
BUTTONADDURL: '添加网址'
Image:
PLURALNAME: 文件
SINGULARNAME: 文件
ImageField:
IMAGE: 图像
Image_Cached:
PLURALNAME: 文件
SINGULARNAME: 文件
@ -331,10 +310,10 @@ zh:
PreviewButton: 预览
REORGANISATIONSUCCESSFUL: '重新组织网站地图已成功'
SAVEDUP: 已保存。
VersionUnknown: 位置
ShowAsList: '以列表方式展示'
TooManyPages: '页面数目过多'
ValidationError: '验证错误'
VersionUnknown: 位置
LeftAndMain_Menu_ss:
Hello: 您好
LOGOUT: '退出'
@ -359,16 +338,16 @@ zh:
EMAIL: 电子邮件
EMPTYNEWPASSWORD: '新密码不能为空,请重试'
ENTEREMAIL: '请输入电子邮件地址以获取密码重置链接'
ERRORLOCKEDOUT: '由于登录失败次数过多,您的账户暂时被冻结。请在 20 分钟后重试。'
ERRORLOCKEDOUT2: '由于登录失败次数过多,您的账户暂时被冻结。请在 {count} 分钟后重试。'
ERRORNEWPASSWORD: '您输入的新密码不同,请重试'
ERRORPASSWORDNOTMATCH: '您的现有密码不匹配,请重试'
ERRORWRONGCRED: '电子邮件或密码错误。请重试。'
ERRORWRONGCRED: '所提供的资料似乎是不正确的。请再试一次。'
FIRSTNAME: '名字'
INTERFACELANG: '界面语言'
INVALIDNEWPASSWORD: '我们不能接受该密码:{password}'
LOGGEDINAS: '您以 {name} 身份登录。'
NEWPASSWORD: '新密码'
NoPassword: '该成员无密码'
PASSWORD: 密码
PLURALNAME: 成员
REMEMBERME: '下次记住我?'
@ -388,7 +367,6 @@ zh:
db_NumVisit: '访问数字'
db_Password: 密码
db_PasswordExpiry: '密码失效日期'
NoPassword: '该成员无密码'
MemberAuthenticator:
TITLE: '电子邮件和密码'
MemberDatetimeOptionsetField:
@ -404,7 +382,6 @@ zh:
MONTHNOLEADING: '起首不为零的月份数字'
Preview: 预览
SHORTMONTH: '月份简称(例如 Jun'
TOGGLEHELP: '拨动格式帮助开关'
TWODIGITDAY: '两位数表示的月份日期'
TWODIGITHOUR: '两位数表示的小时00 到 23'
TWODIGITMINUTE: '两位数表示的分钟00 到 59'
@ -436,8 +413,8 @@ zh:
Title: '数据模型'
UPDATEDRECORDS: '更新了 {count} 个记录。'
ModelAdmin_ImportSpec_ss:
IMPORTSPECFIELDS: '数据库栏目'
IMPORTSPECLINK: '展示 %s 的详细信息'
IMPORTSPECFIELDS: '数据库栏目'
IMPORTSPECRELATIONS: 关系
IMPORTSPECTITLE: '%s 的详细信息'
ModelAdmin_Tools_ss:
@ -456,6 +433,10 @@ zh:
Pagination:
Page: 页面
View: 查看
PasswordValidator:
LOWCHARSTRENGTH: '请添加下列部分字符以提升密码强度:%s'
PREVPASSWORD: '您已经使用过这个密码,请选用新的密码'
TOOSHORT: '密码长度过短,必须为 %s 个字符或更长'
Permission:
AdminGroup: 管理员
CMS_ACCESS_CATEGORY: 'CMS 访问'
@ -475,19 +456,15 @@ zh:
Title: 标题
PermissionRoleCode:
PLURALNAME: '权限角色代码'
PermsError: '无法为代码 "%s"分配特权权限(要求具备 ADMIN 访问)'
SINGULARNAME: '权限角色代码'
Permissions:
PERMISSIONS_CATEGORY: '角色及访问权限'
UserPermissionsIntro: '把群组分配给该用户会改变其权限。请查看群组部分以获取关于个体组别的权限详情。'
PhoneNumberField:
VALIDATION: '请输入一个有效的电话号码'
RelationComplexTableField_ss:
ADD: 添加
CSVEXPORT: '导出到 CSV'
NOTFOUND: '没有找到项目'
Security:
ALREADYLOGGEDIN: '您无法进入这个页面。如果您有另一个帐号可以进入这个页面,您可以在下面再次登录。'
LOSTPASSWORDHEADER: '忘记密码'
BUTTONSEND: '将密码重设链接发送给我'
CHANGEPASSWORDBELOW: '您可以在下面更改您的密码。'
CHANGEPASSWORDHEADER: '更改您的密码'
@ -522,11 +499,11 @@ zh:
BtnImport: '从 CSV 导入'
FileFieldLabel: 'CSV 文件 <small>(允许的扩展名:*.csv)</small>'
SilverStripeNavigator:
Edit: 编辑
Auto: 自动
ChangeViewMode: '改变视图模式'
Desktop: 桌面
DualWindowView: '双窗口'
Edit: 编辑
EditView: '编辑模式'
Mobile: 移动
PreviewState: '预览状态'
@ -536,32 +513,13 @@ zh:
Tablet: 平板电脑
ViewDeviceWidth: '选择预览宽度'
Width: 宽度
SimpleImageField:
NOUPLOAD: '没有已上传的图像'
SiteTree:
TABMAIN: 主要的
TableField:
ISREQUIRED: '以 %s ''%s'' 需要'
TableField_ss:
ADD: '添加新行'
ADDITEM: '添加 %s'
TableListField:
CSVEXPORT: '导出到 CSV'
PRINT: 打印
Print: 打印
SELECT: '选择'
TableListField_ss:
NOITEMSFOUND: '找不到项目'
SORTASC: '升序排列'
SORTDESC: '降序排列'
TableListField_PageControls_ss:
DISPLAYING: 显示
OF:
TO:
VIEWFIRST: '查看第一个'
VIEWLAST: '查看上一个'
VIEWNEXT: '查看下一个'
VIEWPREVIOUS: '查看前一页'
TimeField:
VALIDATEFORMAT: '请输入有效的时间格式 ({format})'
ToggleField:
@ -571,6 +529,8 @@ zh:
ATTACHFILE: '附加单个文件'
ATTACHFILES: '附加多个文件'
AttachFile: '附加一个或多个文件'
CHOOSEANOTHERFILE: '选择另一文件'
CHOOSEANOTHERINFO: '用文件库里的文件替换该文件'
DELETE: '从文件中移除'
DELETEINFO: '从文件库中永久移除该文件'
DOEDIT: 保存
@ -585,29 +545,13 @@ zh:
FROMFILES: '从文件中'
HOTLINKINFO: '信息:该图像将会被映射。请确保您已获得网站原始制作者的允许。'
MAXNUMBEROFFILES: '超过允许的最大 {count} 个文件数目'
MAXNUMBEROFFILESSHORT: '只能上传 {count} 个文件'
MAXNUMBEROFFILESONE: '只能上传一个文件'
MAXNUMBEROFFILESSHORT: '只能上传 {count} 个文件'
OVERWRITEWARNING: '已经存在相同名称的文件'
REMOVE: 移除
REMOVEERROR: '移除文件错误'
REMOVEINFO: '从这里移除文件,但是不将其从文件库中删除'
STARTALL: '开始所有'
STARTALLINFO: '开始上传所有'
Saved: 已保存
CHOOSEANOTHERFILE: '选择另一文件'
CHOOSEANOTHERINFO: '用文件库里的文件替换该文件'
OVERWRITEWARNING: '已经存在相同名称的文件'
UPLOADSINTO: '保存到 /{path}'
Versioned:
has_many_Versions: 版本
CMSPageHistoryController_versions_ss:
PREVIEW: '网站预览'
GridFieldEditButton_ss:
EDIT: 编辑
ContentController:
NOTLOGGEDIN: '尚未登录'
GridFieldItemEditView:
Go_back: '返回'
PasswordValidator:
LOWCHARSTRENGTH: '请添加下列部分字符以提升密码强度:%s'
PREVPASSWORD: '您已经使用过这个密码,请选用新的密码'
TOOSHORT: '密码长度过短,必须为 %s 个字符或更长'

View File

@ -1145,7 +1145,7 @@ class DataObject extends ViewableData implements DataObjectInterface, i18nEntity
if (!$valid->valid()) {
$writeException = new ValidationException(
$valid,
"Validation error writing a $this->class object: " . $valid->message() . ". Object not written.",
$valid->message(),
E_USER_WARNING
);
}
@ -1548,6 +1548,11 @@ class DataObject extends ViewableData implements DataObjectInterface, i18nEntity
if(!$remoteClass) {
throw new Exception("Unknown $type component '$component' on class '$this->class'");
}
if(!ClassInfo::exists(strtok($remoteClass, '.'))) {
throw new Exception(
"Class '$remoteClass' not found, but used in $type component '$component' on class '$this->class'"
);
}
if($fieldPos = strpos($remoteClass, '.')) {
return substr($remoteClass, $fieldPos + 1) . 'ID';
@ -1566,8 +1571,9 @@ class DataObject extends ViewableData implements DataObjectInterface, i18nEntity
$message = "No has_one found on class '$remoteClass'";
if($type == 'has_many') {
// include a hint for missing has_many that is missing a has_one
$message .= ", the has_many relation from '$this->class' to '$remoteClass' requires a has_one on '$remoteClass'";
// include a hint for has_many that is missing a has_one
$message .= ", the has_many relation from '$this->class' to '$remoteClass'";
$message .= " requires a has_one on '$remoteClass'";
}
throw new Exception($message);
}
@ -3293,7 +3299,6 @@ class DataObject extends ViewableData implements DataObjectInterface, i18nEntity
}
foreach($types as $type => $attrs) {
foreach($attrs as $name => $spec) {
// var_dump("{$ancestorClass}.{$type}_{$name}");
$autoLabels[$name] = _t("{$ancestorClass}.{$type}_{$name}",FormField::name_to_label($name));
}
}

View File

@ -494,11 +494,11 @@ class SQLQuery {
/**
* Set ORDER BY clause either as SQL snippet or in array format.
*
* @example $sql->orderby("Column");
* @example $sql->orderby("Column DESC");
* @example $sql->orderby("Column DESC, ColumnTwo ASC");
* @example $sql->orderby("Column", "DESC");
* @example $sql->orderby(array("Column" => "ASC", "ColumnTwo" => "DESC"));
* @example $sql->setOrderBy("Column");
* @example $sql->setOrderBy("Column DESC");
* @example $sql->setOrderBy("Column DESC, ColumnTwo ASC");
* @example $sql->setOrderBy("Column", "DESC");
* @example $sql->setOrderBy(array("Column" => "ASC", "ColumnTwo" => "DESC"));
*
* @param string|array $orderby Clauses to add (escaped SQL statement)
* @param string $dir Sort direction, ASC or DESC
@ -513,11 +513,11 @@ class SQLQuery {
/**
* Add ORDER BY clause either as SQL snippet or in array format.
*
* @example $sql->orderby("Column");
* @example $sql->orderby("Column DESC");
* @example $sql->orderby("Column DESC, ColumnTwo ASC");
* @example $sql->orderby("Column", "DESC");
* @example $sql->orderby(array("Column" => "ASC", "ColumnTwo" => "DESC"));
* @example $sql->addOrderBy("Column");
* @example $sql->addOrderBy("Column DESC");
* @example $sql->addOrderBy("Column DESC, ColumnTwo ASC");
* @example $sql->addOrderBy("Column", "DESC");
* @example $sql->addOrderBy(array("Column" => "ASC", "ColumnTwo" => "DESC"));
*
* @param string|array $clauses Clauses to add (escaped SQL statements)
* @param string $dir Sort direction, ASC or DESC

View File

@ -38,7 +38,7 @@ class Enum extends StringField {
public function __construct($name = null, $enum = NULL, $default = NULL) {
if($enum) {
if(!is_array($enum)) {
$enum = preg_split("/ *, */", trim($enum));
$enum = preg_split("/ *, */", trim(trim($enum, ',')));
}
$this->enum = $enum;

View File

@ -18,7 +18,7 @@ class MultiEnum extends Enum {
// Validate and assign the default
$this->default = null;
if($default) {
$defaults = preg_split('/ *, */',trim($default));
$defaults = preg_split('/ *, */',trim(trim($default, ',')));
foreach($defaults as $thisDefault) {
if(!in_array($thisDefault, $this->enum)) {
user_error("Enum::__construct() The default value '$thisDefault' does not match "

2
model/fieldtypes/Year.php Normal file → Executable file
View File

@ -39,7 +39,7 @@ class Year extends DBField {
if (!$end) $end = 1900;
$years = array();
for($i=$start;$i>=$end;$i--) {
$years[] = $i;
$years[$i] = $i;
}
return $years;
}

View File

@ -256,6 +256,19 @@ body.cms.ss-uploadfield-edit-iframe, .composite.ss-assetuploadfield .details fie
overflow: hidden;
clear: both;
&.loading {
width: 100%;
height: 22px;
padding: 15px 0;
background: url(../admin/images/spinner.gif) no-repeat 50% 50%;
iframe {
/* Old IE needs this or it'll give the iframe a white background, covering the spinner */
padding-top: 0; margin-top: 37px;
border: none;
}
}
iframe {
width: 100%;
}

View File

@ -189,14 +189,25 @@
overflow: hidden;
clear: both;
&.loading {
width: 100%;
height: 22px;
margin: 15px 0 0;
background: url(../admin/images/spinner.gif) no-repeat 50% 0;
iframe {
/* Old IE needs this or it'll give the iframe a white background, covering the spinner */
padding-top: 0; margin-top: 22px;
border: none;
}
}
iframe {
margin-top: $grid-y;
padding-top: $grid-y;
border-top: 1px solid $color-light-separator;
width: 100%;
}
}
}
.ss-uploadfield-addfile {

View File

@ -0,0 +1,79 @@
<?php
/**
* Base class for creating comparison filters, eg; greater than, less than, greater than or equal, etc
*
* If you extend this abstract class, you must implement getOperator() and and getInverseOperator
*
* getOperator() should return a string operator that will be applied to the filter,
* eg; if getOperator() returns "<" then this will be a LessThan filter
*
* getInverseOperator() should return a string operator that evaluates the inverse of getOperator(),
* eg; if getOperator() returns "<", then the inverse should be ">=
*
* @package framework
* @subpackage search
*/
abstract class ComparisonFilter extends SearchFilter {
/**
* Should return an operator to be used for comparisons
*
* @return string Operator
*/
abstract protected function getOperator();
/**
* Should return an inverse operator to be used for comparisons
*
* @return string Inverse operator
*/
abstract protected function getInverseOperator();
/**
* Applies a comparison filter to the query
* Handles SQL escaping for both numeric and string values
*
* @param DataQuery $query
* @return $this|DataQuery
*/
protected function applyOne(DataQuery $query) {
$this->model = $query->applyRelation($this->relation);
$value = $this->getDbFormattedValue();
if(is_numeric($value)) {
$filter = sprintf("%s %s %s",
$this->getDbName(), $this->getOperator(), Convert::raw2sql($value));
} else {
$filter = sprintf("%s %s '%s'",
$this->getDbName(), $this->getOperator(), Convert::raw2sql($value));
}
return $query->where($filter);
}
/**
* Applies a exclusion(inverse) filter to the query
* Handles SQL escaping for both numeric and string values
*
* @param DataQuery $query
* @return $this|DataQuery
*/
protected function excludeOne(DataQuery $query) {
$this->model = $query->applyRelation($this->relation);
$value = $this->getDbFormattedValue();
if(is_numeric($value)) {
$filter = sprintf("%s %s %s",
$this->getDbName(), $this->getInverseOperator(), Convert::raw2sql($value));
} else {
$filter = sprintf("%s %s '%s'",
$this->getDbName(), $this->getInverseOperator(), Convert::raw2sql($value));
}
return $query->where($filter);
}
public function isEmpty() {
return $this->getValue() === array() || $this->getValue() === null || $this->getValue() === '';
}
}

34
search/filters/GreaterThanFilter.php Normal file → Executable file
View File

@ -2,40 +2,20 @@
/**
* Selects numerical/date content greater than the input
*
* @todo documentation
* Can be used by SearchContext and DataList->filter, eg;
* Model::get()->filter("Field1:GreaterThan", $value);
*
* @package framework
* @subpackage search
*/
class GreaterThanFilter extends SearchFilter {
class GreaterThanFilter extends ComparisonFilter {
/**
* @return DataQuery
*/
protected function applyOne(DataQuery $query) {
$this->model = $query->applyRelation($this->relation);
$value = $this->getDbFormattedValue();
if(is_numeric($value)) $filter = sprintf("%s > %s", $this->getDbName(), Convert::raw2sql($value));
else $filter = sprintf("%s > '%s'", $this->getDbName(), Convert::raw2sql($value));
return $query->where($filter);
protected function getOperator() {
return ">";
}
/**
* @return DataQuery
*/
protected function excludeOne(DataQuery $query) {
$this->model = $query->applyRelation($this->relation);
$value = $this->getDbFormattedValue();
if(is_numeric($value)) $filter = sprintf("%s <= %s", $this->getDbName(), Convert::raw2sql($value));
else $filter = sprintf("%s <= '%s'", $this->getDbName(), Convert::raw2sql($value));
return $query->where($filter);
protected function getInverseOperator() {
return "<=";
}
public function isEmpty() {
return $this->getValue() === array() || $this->getValue() === null || $this->getValue() === '';
}
}

View File

@ -0,0 +1,21 @@
<?php
/**
* Selects numerical/date content greater than or equal to the input
*
* Can be used by SearchContext and DataList->filter, eg;
* Model::get()->filter("Field1:GreaterThanOrEqual", $value);
*
* @package framework
* @subpackage search
*/
class GreaterThanOrEqualFilter extends ComparisonFilter {
protected function getOperator() {
return ">=";
}
protected function getInverseOperator() {
return "<";
}
}

36
search/filters/LessThanFilter.php Normal file → Executable file
View File

@ -1,41 +1,21 @@
<?php
/**
* Selects numerical/date content smaller than the input
* Selects numerical/date content less than the input
*
* @todo documentation
* Can be used by SearchContext and DataList->filter, eg;
* Model::get()->filter("Field1:LessThan", $value);
*
* @package framework
* @subpackage search
*/
class LessThanFilter extends SearchFilter {
class LessThanFilter extends ComparisonFilter {
/**
* @return DataQuery
*/
protected function applyOne(DataQuery $query) {
$this->model = $query->applyRelation($this->relation);
$value = $this->getDbFormattedValue();
if(is_numeric($value)) $filter = sprintf("%s < %s", $this->getDbName(), Convert::raw2sql($value));
else $filter = sprintf("%s < '%s'", $this->getDbName(), Convert::raw2sql($value));
return $query->where($filter);
protected function getOperator() {
return "<";
}
/**
* @return DataQuery
*/
protected function excludeOne(DataQuery $query) {
$this->model = $query->applyRelation($this->relation);
$value = $this->getDbFormattedValue();
if(is_numeric($value)) $filter = sprintf("%s >= %s", $this->getDbName(), Convert::raw2sql($value));
else $filter = sprintf("%s >= '%s'", $this->getDbName(), Convert::raw2sql($value));
return $query->where($filter);
protected function getInverseOperator() {
return ">=";
}
public function isEmpty() {
return $this->getValue() === array() || $this->getValue() === null || $this->getValue() === '';
}
}

View File

@ -0,0 +1,21 @@
<?php
/**
* Selects numerical/date content less than or equal to the input
*
* Can be used by SearchContext and DataList->filter, eg;
* Model::get()->filter("Field1:LessThanOrEqual", $value);
*
* @package framework
* @subpackage search
*/
class LessThanOrEqualFilter extends ComparisonFilter {
protected function getOperator() {
return "<=";
}
protected function getInverseOperator() {
return ">";
}
}

View File

@ -361,6 +361,8 @@ class Member extends DataObject implements TemplateGlobalProvider {
* @param bool $remember If set to TRUE, the member will be logged in automatically the next time.
*/
public function logIn($remember = false) {
$this->extend('beforeMemberLoggedIn');
self::session_regenerate_id();
Session::set("loggedInAs", $this->ID);
@ -462,6 +464,8 @@ class Member extends DataObject implements TemplateGlobalProvider {
* Logs this member out.
*/
public function logOut() {
$this->extend('beforeMemberLoggedOut');
Session::clear("loggedInAs");
if(Member::config()->login_marker_cookie) Cookie::set(Member::config()->login_marker_cookie, null, 0);

View File

@ -526,7 +526,7 @@ class Security extends Controller {
public function passwordsent($request) {
if(class_exists('SiteTree')) {
$tmpPage = new Page();
$tmpPage->Title = _t('Security.LOSTPASSWORDHEADER');
$tmpPage->Title = _t('Security.LOSTPASSWORDHEADER', 'Lost Password');
$tmpPage->URLSegment = 'Security';
// Disable ID-based caching of the log-in page by making it a random number
$tmpPage->ID = -1 * rand(1,10000000);

View File

@ -23,7 +23,6 @@
<div class="clear"><!-- --></div>
</label>
<div class="ss-uploadfield-item-actions">
<div class="ss-uploadfield-item-cancel cancel">
<button data-icon="deleteLight" class="ss-uploadfield-item-cancel ss-uploadfield-item-remove" title="<% _t('UploadField.REMOVE', 'Remove') %>">
<% _t('UploadField.REMOVE', 'Remove') %>
</button>
@ -37,9 +36,8 @@
</button>
</div>
</div>
</div>
<% if $Info %><div class="info">$Info</div><% end_if %>
<div class="details ss-uploadfield-item-editform loading">
<div class="details ss-uploadfield-item-editform">
<fieldset>
<% loop $Fields %>
$FieldHolder

View File

@ -18,8 +18,8 @@
<% end_if %>
</div>
</div>
<div class="ss-uploadfield-item-editform loading includeParent">
<iframe frameborder="0" src="$UploadFieldEditLink"></iframe>
<div class="ss-uploadfield-item-editform includeParent">
<iframe frameborder="0" data-src="$UploadFieldEditLink" src="about:blank"></iframe>
</div>
</li>
<% end_loop %>

View File

@ -350,6 +350,55 @@ class RequirementsTest extends SapphireTest {
$this->assertContains('</script></body>', $html);
}
public function testForceJsToBottom() {
$backend = new Requirements_Backend();
$backend->javascript('http://www.mydomain.com/test.js');
// Test matching with HTML5 <header> tags as well
$template = '<html><head></head><body><header>My header</header><p>Body<script></script></p></body></html>';
// The expected outputs
$JsInHead = "<html><head><script type=\"text/javascript\" src=\"http://www.mydomain.com/test.js\"></script>\n</head><body><header>My header</header><p>Body<script></script></p></body></html>";
$JsInBody = "<html><head></head><body><header>My header</header><p>Body<script type=\"text/javascript\" src=\"http://www.mydomain.com/test.js\"></script><script></script></p></body></html>";
$JsAtEnd = "<html><head></head><body><header>My header</header><p>Body<script></script></p><script type=\"text/javascript\" src=\"http://www.mydomain.com/test.js\"></script></body></html>";
// Test if the script is before the head tag, not before the body.
// Expected: $JsInHead
$backend->set_write_js_to_body(false);
$backend->set_force_js_to_bottom(false);
$html = $backend->includeInHTML(false, $template);
$this->assertNotEquals($JsInBody, $html);
$this->assertNotEquals($JsAtEnd, $html);
$this->assertEquals($JsInHead, $html);
// Test if the script is before the first <script> tag, not before the body.
// Expected: $JsInBody
$backend->set_write_js_to_body(true);
$backend->set_force_js_to_bottom(false);
$html = $backend->includeInHTML(false, $template);
$this->assertNotEquals($JsAtEnd, $html);
$this->assertEquals($JsInBody, $html);
// Test if the script is placed just before the closing bodytag, with write-to-body false.
// Expected: $JsAtEnd
$backend->set_write_js_to_body(false);
$backend->set_force_js_to_bottom(true);
$html = $backend->includeInHTML(false, $template);
$this->assertNotEquals($JsInHead, $html);
$this->assertNotEquals($JsInBody, $html);
$this->assertEquals($JsAtEnd, $html);
// Test if the script is placed just before the closing bodytag, with write-to-body true.
// Expected: $JsAtEnd
$backend->set_write_js_to_body(true);
$backend->set_force_js_to_bottom(true);
$html = $backend->includeInHTML(false, $template);
$this->assertNotEquals($JsInHead, $html);
$this->assertNotEquals($JsInBody, $html);
$this->assertEquals($JsAtEnd, $html);
}
public function testSuffix() {
$template = '<html><head></head><body><header>My header</header><p>Body</p></body></html>';
$basePath = $this->getCurrentRelativePath();

36
tests/model/DataListTest.php Normal file → Executable file
View File

@ -445,17 +445,35 @@ class DataListTest extends SapphireTest {
$list = DataObjectTest_TeamComment::get();
$list = $list->filter('TeamID:GreaterThan', $this->idFromFixture('DataObjectTest_Team', 'team1'));
$this->assertEquals(1, $list->count());
$this->assertEquals('Phil', $list->first()->Name, 'First comment should be from Bob');
$this->assertEquals('Phil', $list->first()->Name, 'First comment should be from Phil');
}
// public function testSimpleFilterLessThanFilter() {
// $list = DataObjectTest_TeamComment::get();
// $list = $list->filter('TeamID:LessThan',
// $this->idFromFixture('DataObjectTest_TeamComment', 'comment2'))->sort('Name');
// $this->assertEquals(2, $list->count());
// $this->assertEquals('Bob', $list->first()->Name, 'First comment should be from Bob');
// $this->assertEquals('Joe', $list->Last()->Name, 'Last comment should be from Joe');
// }
public function testSimpleFilterGreaterThanOrEqualFilter() {
$list = DataObjectTest_TeamComment::get();
$list = $list->filter('TeamID:GreaterThanOrEqual',
$this->idFromFixture('DataObjectTest_Team', 'team1'))->sort("ID");
$this->assertEquals(3, $list->count());
$this->assertEquals('Joe', $list->first()->Name, 'First comment should be from Joe');
$this->assertEquals('Phil', $list->last()->Name, 'Last comment should be from Phil');
}
public function testSimpleFilterLessThanFilter() {
$list = DataObjectTest_TeamComment::get();
$list = $list->filter('TeamID:LessThan',
$this->idFromFixture('DataObjectTest_Team', 'team2'))->sort('Name');
$this->assertEquals(2, $list->count());
$this->assertEquals('Bob', $list->first()->Name, 'First comment should be from Bob');
$this->assertEquals('Joe', $list->Last()->Name, 'Last comment should be from Joe');
}
public function testSimpleFilterLessThanOrEqualFilter() {
$list = DataObjectTest_TeamComment::get();
$list = $list->filter('TeamID:LessThanOrEqual',
$this->idFromFixture('DataObjectTest_Team', 'team1'))->sort('ID');
$this->assertEquals(2, $list->count());
$this->assertEquals('Joe', $list->first()->Name, 'First comment should be from Joe');
$this->assertEquals('Bob', $list->Last()->Name, 'Last comment should be from Bob');
}
public function testSimplePartialMatchFilter() {
$list = DataObjectTest_TeamComment::get();

View File

@ -289,8 +289,6 @@ class HierarchyTest extends SapphireTest {
$root->setMarkingFilterFunction(function($record) use($obj2, $obj2a, $obj2aa) {
// Results need to include parent hierarchy, even if we just want to
// match the innermost node.
// var_dump($record->Title);
// var_dump(in_array($record->ID, array($obj2->ID, $obj2a->ID, $obj2aa->ID)));
return in_array($record->ID, array($obj2->ID, $obj2a->ID, $obj2aa->ID));
});
$root->markPartialTree($nodeCountThreshold);

41
tests/model/YearTest.php Executable file
View File

@ -0,0 +1,41 @@
<?php
/**
* @package framework
* @subpackage tests
*/
class YearTest extends SapphireTest {
/**
* Test that the scaffolding form field works
*/
public function testScaffoldFormFieldFirst() {
$year = new Year();
$field = $year->scaffoldFormField("YearTest");
$this->assertEquals("DropdownField", get_class($field));
//This should be a list of years from the current one, counting down to 1900
$source = $field->getSource();
$lastValue = end($source);
$lastKey = key($source);
//Keys and values should be the same - and the last one should be 1900
$this->assertEquals(1900, $lastValue);
$this->assertEquals(1900, $lastKey);
}
public function testScaffoldFormFieldLast() {
$year = new Year();
$field = $year->scaffoldFormField("YearTest");
$source = $field->getSource();
//The first one should be the current year
$currentYear = (int)date('Y');
$firstValue = reset($source);
$firstKey = key($source);
$this->assertEquals($currentYear, $firstValue);
$this->assertEquals($currentYear, $firstKey);
}
}

View File

@ -1018,6 +1018,38 @@ after')
});
}
/**
* @covers SSViewer::get_templates_by_class()
*/
public function testGetTemplatesByClass() {
$self = $this;
$this->useTestTheme('layouttest', function() use ($self) {
// Test passing a string
$templates = SSViewer::get_templates_by_class('SSViewerTest_Controller', '', 'Controller');
$self->assertCount(2, $templates);
// Test to ensure we're stopping at the base class.
$templates = SSViewer::get_templates_by_class('SSViewerTest_Controller', '', 'SSViewerTest_Controller');
$self->assertCount(1, $templates);
// Make sure we can filter our templates by suffix.
$templates = SSViewer::get_templates_by_class('SSViewerTest', '_Controller');
$self->assertCount(1, $templates);
// Test passing a valid object
$templates = SSViewer::get_templates_by_class("SSViewerTest_Controller", '', 'Controller');
// Test that templates are returned in the correct order
$self->assertEquals('SSViewerTest_Controller', array_shift($templates));
$self->assertEquals('Controller', array_shift($templates));
// Let's throw something random in there.
$self->setExpectedException('InvalidArgumentException');
$templates = SSViewer::get_templates_by_class(array());
$this->assertCount(0, $templates);
});
}
/**
* @covers SSViewer::get_themes()
*/

View File

@ -0,0 +1 @@
Controller

View File

@ -0,0 +1 @@
SSViewerTest

View File

@ -308,6 +308,17 @@ class Requirements {
self::backend()->set_write_js_to_body($var);
}
/**
* Set the javascript to be forced to end of the HTML, or use the default.
* Useful if you use inline <script> tags, that don't need the javascripts
* included via Requirements::require();
*
* @param boolean $var If true, force the javascripts to be included at the bottom.
*/
public static function set_force_js_to_bottom($var) {
self::backend()->set_force_js_to_bottom($var);
}
public static function debug() {
return self::backend()->debug();
}
@ -437,6 +448,14 @@ class Requirements_Backend {
*/
public $write_js_to_body = true;
/**
* Force the javascripts to the bottom of the page, even if there's a
* <script> tag in the body already
*
* @var boolean
*/
protected $force_js_to_bottom = false;
public function set_combined_files_enabled($enable) {
$this->combined_files_enabled = (bool) $enable;
}
@ -487,6 +506,14 @@ class Requirements_Backend {
public function set_write_js_to_body($var) {
$this->write_js_to_body = $var;
}
/**
* Forces the javascript to the end of the body, just before the closing body-tag.
*
* @param boolean
*/
public function set_force_js_to_bottom($var) {
$this->force_js_to_bottom = $var;
}
/**
* Register the given javascript file as required.
* Filenames should be relative to the base, eg, 'framework/javascript/loader.js'
@ -701,7 +728,18 @@ class Requirements_Backend {
$requirements .= "$customHeadTag\n";
}
if($this->write_js_to_body) {
if ($this->force_js_to_bottom) {
// Remove all newlines from code to preserve layout
$jsRequirements = preg_replace('/>\n*/', '>', $jsRequirements);
// We put script tags into the body, for performance.
// We forcefully put it at the bottom instead of before
// the first script-tag occurence
$content = preg_replace("/(<\/body[^>]*>)/i", $jsRequirements . "\\1", $content);
// Put CSS at the bottom of the head
$content = preg_replace("/(<\/head>)/i", $requirements . "\\1", $content);
} elseif($this->write_js_to_body) {
// Remove all newlines from code to preserve layout
$jsRequirements = preg_replace('/>\n*/', '>', $jsRequirements);
@ -1128,18 +1166,21 @@ class Requirements_Backend {
* @see Requirements::themedCSS()
*/
public function themedCSS($name, $module = null, $media = null) {
$path = SSViewer::get_theme_folder();
$abspath = BASE_PATH . DIRECTORY_SEPARATOR . $path;
$theme = SSViewer::get_theme_folder();
$project = project();
$absbase = BASE_PATH . DIRECTORY_SEPARATOR;
$abstheme = $absbase . $theme;
$absproject = $absbase . $project;
$css = "/css/$name.css";
if ($module && file_exists($abspath.'_'.$module.$css)) {
$this->css($path.'_'.$module.$css, $media);
}
else if (file_exists($abspath.$css)) {
$this->css($path.$css, $media);
}
else if ($module) {
$this->css($module.$css, $media);
if(file_exists($absproject . $css)) {
$this->css($project . $css, $media);
} elseif($module && file_exists($abstheme . '_' . $module.$css)) {
$this->css($theme . '_' . $module . $css, $media);
} elseif(file_exists($abstheme . $css)) {
$this->css($theme . $css, $media);
} elseif($module) {
$this->css($module . $css, $media);
}
}

View File

@ -688,6 +688,32 @@ class SSViewer {
return Config::inst()->get('SSViewer', 'theme_enabled') ? Config::inst()->get('SSViewer', 'theme') : null;
}
/**
* Traverses the given the given class context looking for templates with the relevant name.
*
* @param $className string - valid class name
* @param $suffix string
* @param $baseClass string
*
* @return array
*/
public static function get_templates_by_class($className, $suffix = '', $baseClass = null) {
// Figure out the class name from the supplied context.
if(!is_string($className) || !class_exists($className)) {
throw new InvalidArgumentException('SSViewer::get_templates_by_class() expects a valid class name as ' .
'its first parameter.');
return array();
}
$templates = array();
$classes = array_reverse(ClassInfo::ancestry($className));
foreach($classes as $class) {
$template = $class . $suffix;
if(SSViewer::hasTemplate($template)) $templates[] = $template;
if($baseClass && $class == $baseClass) break;
}
return $templates;
}
/**
* @param string|array $templateList If passed as a string with .ss extension, used as the "main" template.
* If passed as an array, it can be used for template inheritance (first found template "wins").