kimai:

    # --------------------------------------------------------------------------------
    # Settings for the user management and login forms
    user:
        registration: true
        password_reset: true

    # --------------------------------------------------------------------------------
    # All configs related to timesheet and record management
    timesheet:

        # render timesheet descriptions with markdown
        markdown_content: false

        # Whether we display start and end time columns (false) or durations only (true).
        # Setting this to true will also change the "edit timesheet" forms, more infos available in the configurations docu.
        duration_only: false

        # Rounding rules are used to round the begin & end dates and the duration for timesheet records.
        # The "default" rule will round "begin" down and "end" up to the full minute, the "duration" will not be rounded.
        # Please read var/docs/configurations.md to find out more about rounding rules
        rounding:
            default:
                days: ['monday','tuesday','wednesday','thursday','friday','saturday','sunday']
                begin: 1
                end: 1
                duration: 0

        # If you want to apply different hourly rates for specific weekdays, you can uncomment the "rates" configuration.
        # The "weekend" rule will add 50% to each timesheet entry that will be recorded on "saturdays" or "sundays".
        # Please read var/docs/configurations.md to find out more about rates rules
        # rates:
        #    weekend:
        #        days: ['saturday','sunday']
        #        factor: 1.5

        # If you want to limit the max. active entries per user, you can do it here.
        #
        # The soft_limit is used as theme setting (formerly "kimai.theme.active_warning"):
        #   display a warning color if the user has at least X active recordings
        #
        # The hard_limit is used to detect how many active records are allowed per user:
        #   By default a user can only have one active time-record. The first one is stopped when the new one starts.
        #   When hard_limit is > 1: as soon as the limit is reached and warning is shown and the user has to stop one active entry.
        active_entries:
            soft_limit: 1
            hard_limit: 3

        # Rules that define the Timesheet validation and behaviour
        rules:
            # whether records in the future can be created
            allow_future_times: true

    # --------------------------------------------------------------------------------
    # Invoice management
    #invoice:
    #    # all files in these directories will be used as invoice documents (if supported by a renderer)
    #    documents:
    #        - 'var/invoices/'
    #        - 'templates/invoice/renderer/'

    # --------------------------------------------------------------------------------
    # Default settings used to populate forms
    #defaults:
    #    customer:
    #        timezone: Europe/Berlin
    #        country: DE
    #        currency: EUR

    # --------------------------------------------------------------------------------
    # Free configurable permission system, see var/docs/permissions.md
    permissions:
        sets:
            # mapping complex rulesets of single permissions to named "sets" ("set name" = [array of "permissions"])
            ACTIVITIES: [view_activity,create_activity,edit_activity,delete_activity]
            PROJECTS: [view_project,create_project,edit_project,delete_project]
            CUSTOMERS: [view_customer,create_customer,edit_customer,delete_customer]
            INVOICE: [view_invoice,create_invoice]
            INVOICE_TEMPLATE: [view_invoice_template,create_invoice_template,edit_invoice_template,delete_invoice_template]
            TIMESHEET: [view_own_timesheet,start_own_timesheet,stop_own_timesheet,create_own_timesheet,edit_own_timesheet,export_own_timesheet,delete_own_timesheet]
            TIMESHEET_OTHER: [view_other_timesheet,start_other_timesheet,stop_other_timesheet,create_other_timesheet,edit_other_timesheet,export_other_timesheet,delete_other_timesheet]
            PROFILE: [view_own_profile,edit_own_profile,password_own_profile,preferences_own_profile,api-token_own_profile]
            PROFILE_OTHER: [view_other_profile,edit_other_profile,delete_other_profile,password_other_profile,roles_other_profile,preferences_other_profile,api-token_other_profile]
            USER: [view_user,create_user,delete_user]
            RATE: [view_rate_own_timesheet,edit_rate_own_timesheet]
            RATE_OTHER: [view_rate_other_timesheet,edit_rate_other_timesheet]
            EXPORT: [view_export,create_export,edit_export_own_timesheet,edit_export_other_timesheet]
        maps:
            # mapping "sets" or permissions to user roles ("role name" = [array of "set names"])
            ROLE_USER: [TIMESHEET,PROFILE]
            ROLE_TEAMLEAD: [INVOICE,TIMESHEET,TIMESHEET_OTHER,PROFILE,EXPORT]
            ROLE_ADMIN: [ACTIVITIES,PROJECTS,CUSTOMERS,INVOICE,INVOICE_TEMPLATE,TIMESHEET,TIMESHEET_OTHER,PROFILE,RATE,RATE_OTHER,EXPORT]
            ROLE_SUPER_ADMIN: [ACTIVITIES,PROJECTS,CUSTOMERS,INVOICE,INVOICE_TEMPLATE,TIMESHEET,TIMESHEET_OTHER,PROFILE,PROFILE_OTHER,USER,RATE,RATE_OTHER,EXPORT]
        roles:
            # adding single permissions to user roles, extending the definition from "sets" ("role name" = [array of "permissions"])
            ROLE_USER: []
            ROLE_TEAMLEAD: [view_invoice_template,create_invoice_template,edit_invoice_template,view_rate_own_timesheet,view_rate_other_timesheet,hourly-rate_own_profile]
            ROLE_ADMIN: [hourly-rate_own_profile]
            ROLE_SUPER_ADMIN: [hourly-rate_own_profile,hourly-rate_other_profile,delete_own_profile,roles_own_profile,system_information]

    # --------------------------------------------------------------------------------
    # Language specific settings, like the date formats
    languages:
        de:
            date_time_type: 'dd.MM.yyyy HH:mm'
            date_time_picker: 'DD.MM.YYYY HH:mm'
            date_type: 'dd.MM.yyyy'
            date_picker: 'DD.MM.YYYY'
            date: 'd.m.Y'
            date_time: 'd.m. H:i'
            duration: '%%h:%%m h'
        en:
            date_time_type: 'yyyy-MM-dd HH:mm'
            date_time_picker: 'YYYY-MM-DD HH:mm'
            date_type: 'yyyy-MM-dd'
            date_picker: 'YYYY-MM-DD'
            date: 'Y-m-d'
            date_time: 'm-d H:i'
            duration: '%%h:%%m h'
        pt_BR:
            date_time_type: 'dd-MM-yyyy HH:mm'
            date_time_picker: 'DD-MM-YYYY HH:mm'
            date_type: 'dd-MM-yyyy'
            date_picker: 'DD-MM-YYYY'
            date: 'd-m-Y'
            date_time: 'd-m H:i'
            duration: '%%h:%%m h'
        it:
            date_time_type: 'dd.MM.yyyy HH:mm'
            date_time_picker: 'DD.MM.YYYY HH:mm'
            date_type: 'dd.MM.yyyy'
            date_picker: 'DD.MM.YYYY'
            date: 'd.m.Y'
            date_time: 'd.m. H:i'
            duration: '%%h:%%m h'
        fr:
            date_time_type: 'dd/MM/yyyy HH:mm'
            date_time_picker: 'DD/MM/YYYY HH:mm'
            date_type: 'dd/MM/yyyy'
            date_picker: 'DD/MM/YYYY'
            date: 'd/m/Y'
            date_time: 'd/m H:i'
            duration: '%%h h %%m'
        es:
            date_time_type: 'dd.MM.yyyy HH:mm'
            date_time_picker: 'DD.MM.YYYY HH:mm'
            date_type: 'dd.MM.yyyy'
            date_picker: 'DD.MM.YYYY'
            date: 'd.m.Y'
            date_time: 'd.m. H:i'
            duration: '%%h:%%m h'
        ru:
            date_time_type: 'dd.MM.yyyy HH:mm'
            date_time_picker: 'DD.MM.YYYY HH:mm'
            date_type: 'dd.MM.yyyy'
            date_picker: 'DD.MM.YYYY'
            date: 'd.m.Y'
            date_time: 'd.m. H:i'
            duration: '%%h:%%m h'
        ar:
            date_time_type: 'yyyy-MM-dd HH:mm'
            date_time_picker: 'YYYY-MM-DD HH:mm'
            date_type: 'yyyy-MM-dd'
            date_picker: 'YYYY-MM-DD'
            date: 'Y-m-d'
            date_time: 'm-d H:i'
            duration: '%%h:%%m h'
        hu:
            date_time_type: 'yyyy.MM.dd HH:mm'
            date_time_picker: 'YYYY.MM.DD HH:mm'
            date_type: 'yyyy.MM.dd.'
            date_picker: 'YYYY.MM.DD.'
            date: 'Y.m.d.'
            date_time: 'm.d. H:i'
            duration: '%%h:%%m h'

    # --------------------------------------------------------------------------------
    # timesheet calendar configuration
    calendar:
        week_numbers: true
        day_limit: 4
        businessHours:
            days: [1, 2, 3, 4, 5]
            begin: '08:00'
            end: '20:00'

        # You can configure unlimited google calendars to display events for your company (e.g. holidays)
        # Please read var/docs/configurations.md to find out more about calendar integration
        # google:
        #     api_key: 'your-restricted-google-api-key'
        #     sources:
        #         holidays:
        #             id: 'de.german#holiday@group.v.calendar.google.com'
        #             color: '#ccc'

    # --------------------------------------------------------------------------------
    # theme related settings, will be available as twig globals at "kimai_context.*"
    # please see documentation at var/docs/theme.md
    theme:
        # BETA test: If you set this to 'selectpicker' the customer/project/activity select boxes will be transformed
        # into a searchable and javascript enhanced input type
        select_type: ~
        # fallback color for all widgets that don't have a dedicated color
        # possible options: blue, black, purple, yellow, red, green
        box_color: 'green'

    # --------------------------------------------------------------------------------
    # Dashboard widget sections, please see documentation at var/docs/dashboard.md
    dashboard:
        user_duration:
            title: dashboard.you
            order: 10
            permission: ROLE_USER
            widgets: [userDurationToday, userDurationWeek, userDurationMonth, userDurationYear]
        user_rates:
            title: ~
            order: 20
            permission: ROLE_USER
            widgets: [userAmountToday, userAmountWeek, userAmountMonth, userAmountYear]
        duration:
            title: dashboard.all
            order: 30
            permission: ROLE_TEAMLEAD
            widgets: [durationToday, durationWeek, durationMonth, durationYear]
        active_users:
            title: ~
            order: 40
            permission: ROLE_TEAMLEAD
            widgets: [activeUsersToday, activeUsersWeek, activeUsersMonth, activeUsersYear]
        rates:
            title: ~
            order: 50
            permission: ROLE_ADMIN
            widgets: [amountToday, amountWeek, amountMonth, amountYear]

    # --------------------------------------------------------------------------------
    # All available widgets, please see documentation at var/docs/dashboard.md
    widgets:
        userDurationToday: { title: stats.durationToday, query: duration, user: true, begin: '00:00:00', end: '23:59:59', icon: duration, color: green }
        userDurationWeek: { title: stats.durationWeek, query: duration, user: true, begin: 'monday this week 00:00:00', end: 'sunday this week 23:59:59', icon: duration, color: blue }
        userDurationMonth: { title: stats.durationMonth, query: duration, user: true, begin: 'first day of this month 00:00:00', end: 'last day of this month 23:59:59', icon: duration, color: purple }
        userDurationYear: { title: stats.durationYear, query: duration, user: true, begin: '01 january this year 00:00:00', end: '31 december this year 23:59:59', icon: duration, color: yellow }
        userDurationTotal: { title: stats.durationTotal, query: duration, user: true, icon: duration, color: red }
        userAmountToday: { title: stats.amountToday, query: rate, user: true, begin: '00:00:00', end: '23:59:59', icon: money, color: green }
        userAmountWeek: { title: stats.amountWeek, query: rate, user: true, begin: 'monday this week 00:00:00', end: 'sunday this week 23:59:59', icon: money, color: blue }
        userAmountMonth: { title: stats.amountMonth, query: rate, user: true, begin: 'first day of this month 00:00:00', end: 'last day of this month 23:59:59', icon: money, color: purple }
        userAmountYear: { title: stats.amountYear, query: rate, user: true, begin: '01 january this year 00:00:00', end: '31 december this year 23:59:59', icon: money, color: yellow }
        userAmountTotal: { title: stats.amountTotal, query: rate, user: true, icon: money, color: red }
        durationToday: { title: stats.durationToday, query: duration, begin: '00:00:00', end: '23:59:59', icon: duration, color: green }
        durationWeek: { title: stats.durationWeek, query: duration, begin: 'monday this week 00:00:00', end: 'sunday this week 23:59:59', icon: duration, color: blue }
        durationMonth: { title: stats.durationMonth, query: duration, begin: 'first day of this month 00:00:00', end: 'last day of this month 23:59:59', icon: duration, color: purple }
        durationYear: { title: stats.durationYear, query: duration, begin: '01 january this year 00:00:00', end: '31 december this year 23:59:59', icon: duration, color: yellow }
        durationTotal: { title: stats.durationTotal, query: duration, icon: duration, color: red }
        amountToday: { title: stats.amountToday, query: rate, begin: '00:00:00', end: '23:59:59', icon: money, color: green }
        amountWeek: { title: stats.amountWeek, query: rate, begin: 'monday this week 00:00:00', end: 'sunday this week 23:59:59', icon: money, color: blue }
        amountMonth: { title: stats.amountMonth, query: rate, begin: 'first day of this month 00:00:00', end: 'last day of this month 23:59:59', icon: money, color: purple }
        amountYear: { title: stats.amountYear, query: rate, begin: '01 january this year 00:00:00', end: '31 december this year 23:59:59', icon: money, color: yellow }
        amountTotal: { title: stats.amountTotal, query: rate, icon: money, color: red }
        activeUsersToday: { title: stats.userActiveToday, query: users, begin: '00:00:00', end: '23:59:59', icon: user, color: green }
        activeUsersWeek: { title: stats.userActiveWeek, query: users, begin: 'monday this week 00:00:00', end: 'sunday this week 23:59:59', icon: user, color: blue }
        activeUsersMonth: { title: stats.userActiveMonth, query: users, begin: 'first day of this month 00:00:00', end: 'last day of this month 23:59:59', icon: user, color: purple }
        activeUsersYear: { title: stats.userActiveYear, query: users, begin: '01 january this year 00:00:00', end: '31 december this year 23:59:59', icon: user, color: yellow }
        activeUsersTotal: { title: stats.userActiveTotal, query: users, icon: user, color: red }
        activeRecordings: { title: stats.activeRecordings, query: active, icon: duration, color: red }

    # Default settings used to populate forms
    #defaults:
    #    customer:
    #        timezone: Europe/Berlin
    #        country: DE
    #        currency: EUR