EN · DE · RU · FR · ES

#1398: MenuConfiguration.kt

projectforge-business/src/main/kotlin/org/projectforge/menu/MenuConfiguration.kt Tipo: Kotlin · Rol: Menú · Fuente: projectforge-business/src/main/kotlin/org/projectforge/menu/MenuConfiguration.kt 245 líneas · 164 código · 31 comentarios · 50 en blanco
Archivo de código fuente en projectforge-business/src/main/kotlin/org/projectforge/menu/MenuConfiguration.kt que contiene código Kotlin para la capa de Menú.

Estructura del código

Anotaciones: PostConstruct, param, Value, Configuration, return

Clases: MenuConfiguration

Funciones (3): getMenuVisibility, isVisible, postConstruct

Propiedades (43): accessVisibility, addressesVisibility, addressbooksVisibility, booksVisibility, calendarVisibility, calendarListVisibility, changePasswordVisibility, changeWlanPasswordVisibility, feedbackVisibility, ganttVisibility, groupsVisibility, hrPlanningVisibility, hrViewVisibility, monthlyEmployeeReportVisibility, myAccountVisibility, myMenuVisibility, my2FAVisibility, my2FASetupVisibility, myScriptsVisibility, myPreferencesVisibility, personalStatisticsVisibility, phoneCallVisibility, pollVisibility, sendSmsVisibility, searchVisibility...

Importaciones: 5 paquetes

Paquete: org.projectforge.menu

Código fuente (resumido)

package org.projectforge.menu

import jakarta.annotation.PostConstruct
import org.projectforge.menu.builder.MenuItemDef
import org.projectforge.menu.builder.MenuItemDefId
import org.springframework.beans.factory.annotation.Value
import org.springframework.context.annotation.Configuration

@Configuration
open class MenuConfiguration {
    @Value("\${projectforge.menu.visibility.access}")
    private var accessVisibility: String? = null

    @Value("\${projectforge.menu.visibility.addresses}")
    private var addressesVisibility: String? = null

    @Value("\${projectforge.menu.visibility.addressbooks}")
    private var addressbooksVisibility: String? = null

    @Value("\${projectforge.menu.visibility.books}")
    private var booksVisibility: String? = null

    @Value("\${projectforge.menu.visibility.calendar}")
    private var calendarVisibility: String? = null

    @Value("\${projectforge.menu.visibility.calendarList}")
    private var calendarListVisibility: String? = null

    @Value("\${projectforge.menu.visibility.changePassword}")
    private var changePasswordVisibility: String? = null

    @Value("\${projectforge.menu.visibility.changeWlanPassword}")
    private var changeWlanPasswordVisibility: String? = null

    @Value("\${projectforge.menu.visibility.feedback}")
    private var feedbackVisibility: String? = null

    @Value("\${projectforge.menu.visibility.gantt}")
    private var ganttVisibility: String? = null

    @Value("\${projectforge.menu.visibility.groups}")
    private var groupsVisibility: String? = null

    @Value("\${projectforge.menu.visibility.hrPlanning}")
    private var hrPlanningVisibility: String? = null

    @Value("\${projectforge.menu.visibility.hrView}")
    private var hrViewVisibility: String? = null

    @Value("\${projectforge.menu.visibility.monthlyEmployeeReport}")
    private var monthlyEmployeeReportVisibility: String? = null

    @Value("\${projectforge.menu.visibility.myAccount}")
    private var myAccountVisibility: String? = null

    @Value("\${projectforge.menu.visibility.myMenu}")
    private var myMenuVisibility: String? = null

    @Value("\${projectforge.menu.visibility.my2FA}")
    private var my2FAVisibility: String? = null

    @Value("\${projectforge.menu.visibility.my2FASetup}")
    private var my2FASetupVisibility: String? = null

    @Value("\${projectforge.menu.visibility.myScripts}")
    private var myScriptsVisibility: String? = null

    @Value("\${projectforge.menu.visibility.myPreferences}")
    private var myPreferencesVisibility: String? = null

    @Value("\${projectforge.menu.visibility.personalStatistics}")
    private var personalStatisticsVisibility: String? = null

    @Value("\${projectforge.menu.visibility.phoneCall}")
    private var phoneCallVisibility: String? = null

    @Value("\${projectforge.menu.visibility.poll}")
    private var pollVisibility: String? = null

    @Value("\${projectforge.menu.visibility.sendSms}")
    private var sendSmsVisibility: String? = null

    @Value("\${projectforge.menu.visibility.search}")
    private var searchVisibility: String? = null

    @Value("\${projectforge.menu.visibility.taskTree}")
    private var taskTreeVisibility: String? = null

    @Value("\${projectforge.menu.visibility.timesheets}")
    private var timesheetsVisibility: String? = null

    @Value("\${projectforge.menu.visibility.users}")
    private var usersVisibility: String? = null

    @Value("\${projectforge.menu.visibility.vacation}")
    private var vacationVisibility: String? = null

    @Value("\${projectforge.menu.visibility.vacationAccount}")
    private var vacationAccountVisibility: String? = null

    @Value("\${projectforge.menu.visibility.systemStatistics}")
    private var systemStatisticsVisibility: String? = null

    // *******************
    // Plugins integrados:
    // *******************
    @Value("\${projectforge.menu.visibility.addressCampaign}")
    private var addressCampaignVisibility: String? = null

    @Value("\${projectforge.menu.visibility.addressCampaignValues}")
    private var addressCampaignValuesVisibility: String? = null

    @Value("\${projectforge.menu.visibility.datatransfer}")
    private var datatransferVisibility: String? = null

    @Value("\${projectforge.menu.visibility.ihk}")
    private var ihkVisibility: String? = null

    @Value("\${projectforge.menu.visibility.licenseManagement}")
// ... (truncado, total 223 líneas)

Historial Git

868d6abb7 2025 -> 2026
7187b40f9 Personalización del menú
8a2ea847f MyMenuPagesRest: Nueva funcionalidad Excel para personalizar el menú personal.
261354a30 La visibilidad de los elementos del menú ahora es configurable (por grupos).