Localization

이 라이브러리는 다양한 미리 정의된 로케일과 직접 로케일을 생성할 수 있는 옵션을 제공하여 스케줄러의 현지화를 지원합니다. 기본적으로 DHTMLX Scheduler는 영어 로케일을 기본으로 제공합니다.

활성화

스케줄러의 언어를 설정하려면 scheduler.i18n 객체의 setLocale 메서드를 사용하여 원하는 로케일을 활성화하면 됩니다.

scheduler.i18n.setLocale("fr");

dhtmlxscheduler.js 파일에 포함된 미리 정의된 로케일 중 하나를 사용할 수 있으며, 또는 사용자 정의 로케일을 생성할 수도 있습니다.

로케일은 실시간으로 변경할 수 있지만, 변경 사항은 scheduler.render() 또는 scheduler.init()을 호출하여 스케줄러를 완전히 다시 그린 후에만 적용됩니다.

scheduler.i18n.setLocale("fr");
scheduler.init("scheduler_here");

Related sample:  Localization

포함된 로케일

Common 및 Recurring 로케일 파일 모두 dhtmlxscheduler.js 파일에 포함되어 있습니다.

dhtmlxScheduler는 다음 언어에 대한 현지화를 제공합니다:

언어 언어 코드
Arabic ar
Belarusian be
Catalan ca
Chinese cn
Czech cs
Danish da
Dutch nl
English en (default)
Finnish fi
French fr
German de
Greek el
Hebrew he
Hungarian hu
Indonesian id
Italian it
Japanese jp
Norwegian no
Norwegian Bokmål nb
Polish pl
Portuguese pt
Romanian ro
Russian ru
Slovak sk
Slovenian si
Spanish es
Swedish sv
Turkish tr
Ukrainian ua

사용자 정의 로케일 생성

scheduler.i18n 객체는 v6.0부터 제공됩니다. 이전 버전에서는 scheduler.locale 객체가 사용되었습니다. 자세한 내용은 Migration article을 참고하세요.

사용자 정의 로케일을 만드는 가장 간단한 방법은 아래 예시에서 기본 영어 로케일을 복사하여 원하는 언어로 문자열을 번역하는 것입니다.

사용자 정의 로케일을 Scheduler에 적용하는 방법은 두 가지가 있습니다:

  • setLocale 메서드에 로케일 객체를 전달하여 현재 로케일을 덮어씁니다:
scheduler.i18n.setLocale(localeObject);

로케일 객체의 일부만 제공하면, scheduler는 기존 로케일에 해당 라벨만 병합합니다:

scheduler.i18n.setLocale({
    labels: {
        day_tab: "Day",
    }
});
  • 또는 여러 로케일 간 전환이 필요한 경우, 사용자 정의 언어 코드를 사용해 로케일을 추가한 후 전환할 수 있습니다:
scheduler.i18n.addLocale("lang", localeObject); 
scheduler.i18n.setLocale("lang");

사용자 정의 로케일로 전환하면 앱의 인터페이스가 변경됩니다. 새로운 언어에서 스케줄러가 올바르게 표시되도록 로케일에 따라 달라질 수 있는 요소를 반드시 검토하고 조정하세요.

참고

  • 사용자 정의 로케일 파일을 support@dhtmlx.com으로 보내면, 향후 릴리즈에 포함될 수 있습니다.
  • 활성화된 로케일은 scheduler.locale 객체를 통해 접근할 수 있습니다.
  • monthFull에는 1월부터 시작하는 전체 월 이름이 포함됩니다.
  • monthShort에는 1월부터 시작하는 월의 약어가 포함됩니다.
  • dayFull에는 일요일부터 시작하는 전체 요일명이 포함됩니다.
  • dayShort에는 일요일부터 시작하는 요일의 약어가 포함됩니다.

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"]
    }
});

Related sample:  Localization

추가 참고 사항

  • confirm_closing 또는 confirm_deleting 라벨이 설정되지 않은 경우, 관련 확인 대화 상자는 표시되지 않으며(자동으로 확인됨);
  • section_{name}와 같은 라벨은 해당 이름을 가진 lightbox 섹션에 대응합니다.
  • new_event 라벨은 새 이벤트에 표시되는 기본 텍스트를 정의합니다.
맨 위로