Die Bibliothek unterstützt die Lokalisierung für den Scheduler, indem sie eine Vielzahl vordefinierter Sprachpakete sowie Optionen zur Erstellung eigener Sprachpakete anbietet. Standardmäßig wird DHTMLX Scheduler mit dem englischen Sprachpaket ausgeliefert.
Um die Sprache des Schedulers festzulegen, müssen Sie lediglich das gewünschte Sprachpaket über die Methode setLocale am Objekt scheduler.i18n aktivieren.
scheduler.i18n.setLocale("fr");
Sie können eines der im dhtmlxscheduler.js enthaltenen vordefinierten Sprachpakete verwenden oder ein eigenes Sprachpaket erstellen.
Das Sprachpaket kann zur Laufzeit gewechselt werden, die Änderung wird jedoch erst wirksam, nachdem der Scheduler vollständig durch einen Aufruf von scheduler.render() oder scheduler.init() neu gezeichnet wurde.
scheduler.i18n.setLocale("fr");
scheduler.init("scheduler_here");
Sowohl die Common- als auch die Recurring-Sprachdateien sind Teil der dhtmlxscheduler.js Datei.
dhtmlxScheduler bietet Lokalisierung für folgende Sprachen:
Sprache | Sprachcode |
Arabisch | ar |
Weißrussisch | be |
Katalanisch | ca |
Chinesisch | cn |
Tschechisch | cs |
Dänisch | da |
Niederländisch | nl |
Englisch | en (Standard) |
Finnisch | fi |
Französisch | fr |
Deutsch | de |
Griechisch | el |
Hebräisch | he |
Ungarisch | hu |
Indonesisch | id |
Italienisch | it |
Japanisch | jp |
Norwegisch | no |
Norwegisch Bokmål | nb |
Polnisch | pl |
Portugiesisch | pt |
Rumänisch | ro |
Russisch | ru |
Slowakisch | sk |
Slowenisch | si |
Spanisch | es |
Schwedisch | sv |
Türkisch | tr |
Ukrainisch | ua |
Das Objekt scheduler.i18n ist seit v6.0 verfügbar. In früheren Versionen wurde das Objekt scheduler.locale verwendet. Weitere Informationen finden Sie im Migrationsartikel.
Der einfachste Weg, ein eigenes Sprachpaket zu erstellen, besteht darin, das Standard-Englisch-Sprachpaket aus dem folgenden Beispiel zu kopieren und die Zeichenketten in Ihre bevorzugte Sprache zu übersetzen.
Es gibt zwei Möglichkeiten, ein eigenes Sprachpaket im Scheduler zu verwenden:
scheduler.i18n.setLocale(localeObject);
Wenn Sie nur einen Teil des Sprachobjekts angeben, werden Ihre Bezeichnungen mit dem bestehenden Sprachpaket zusammengeführt:
scheduler.i18n.setLocale({
labels: {
day_tab: "Day",
}
});
scheduler.i18n.addLocale("lang", localeObject);
scheduler.i18n.setLocale("lang");
Beachten Sie, dass das Umschalten auf ein eigenes Sprachpaket die Oberfläche der Anwendung verändert. Überprüfen und passen Sie ggf. alle sprachabhängigen Elemente an, damit der Scheduler korrekt in der neuen Sprache angezeigt wird.
Hinweis
English locale definition
scheduler.i18n.setLocale({
date:{
month_full: ["January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"],
month_short: ["Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
day_full: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday",
"Friday", "Saturday"],
day_short: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
},
labels:{
dhx_cal_today_button: "Today",
day_tab: "Day",
week_tab: "Week",
month_tab: "Month",
new_event: "New event",
icon_save: "Save",
icon_cancel: "Cancel",
icon_details: "Details",
icon_edit: "Edit",
icon_delete: "Delete",
confirm_closing: "", // Your changes will be lost, are your sure?
confirm_deleting: "Event will be deleted permanently, are you sure?",
section_description: "Description",
section_time: "Time period",
full_day: "Full day",
/*recurring events*/
confirm_recurring:"Edit recurring event",
section_recurring:"Repeat event",
button_recurring:"Disabled",
button_recurring_open:"Enabled",
button_edit_series: "All events",
button_edit_occurrence: "This event",
button_edit_occurrence_and_following: "This and following events",
/*agenda view extension*/
agenda_tab: "Agenda",
date: "Date",
description: "Description",
/*year view extension*/
year_tab: "Year",
/* week agenda extension */
week_agenda_tab: "Agenda",
/*grid view extension*/
grid_tab: "Grid",
/* touch tooltip*/
drag_to_create: "Drag to create",
drag_to_move: "Drag to move",
/* dhtmlx message default buttons */
message_ok: "OK",
message_cancel: "Cancel",
/* wai aria labels for non-text controls */
next: "Next",
prev: "Previous",
year: "Year",
month: "Month",
day: "Day",
hour: "Hour",
minute: "Minute",
/* legacy recurring event components */
repeat_radio_day: "Daily", // name="repeat" value="day"
repeat_radio_week: "Weekly", // name="repeat" value="week
repeat_radio_month: "Monthly",
repeat_radio_year: "Yearly",
repeat_radio_day_type: "Every",
repeat_text_day_count: "day",
repeat_radio_day_type2: "Every workday",
repeat_week: " Repeat every",
repeat_text_week_count: "week next days:",
repeat_radio_month_type: "Repeat",
repeat_radio_month_start: "On",
repeat_text_month_day: "day every",
repeat_text_month_count: "month",
repeat_text_month_count2_before: "every",
repeat_text_month_count2_after: "month",
repeat_year_label: "On",
select_year_day2: "of",
repeat_text_year_day: "day",
select_year_month: "month",
repeat_radio_end: "No end date",
repeat_text_occurrences_count: "occurrences",
repeat_radio_end2: "After",
repeat_radio_end3: "End by",
/* recurring event components */
repeat_never: "Never",
repeat_daily: "Every day",
repeat_workdays: "Every weekday",
repeat_weekly: "Every week",
repeat_monthly: "Every month",
repeat_yearly: "Every year",
repeat_custom: "Custom",
repeat_freq_day: "Day",
repeat_freq_week: "Week",
repeat_freq_month: "Month",
repeat_freq_year: "Year",
repeat_on_date: "On date",
repeat_ends: "Ends",
month_for_recurring: ["January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"],
day_for_recurring: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday",
"Friday", "Saturday"]
}
});