5.23.3.1. Buttons zur Benutzeroberfläche zufügen

[Hinweis]Hinweis

Die Default-Konfiguration liegt unter /libs/pappserver/webapps/3dfindit-enterprise/custom_config.json und enthält nur ein paar Standard-Einstellungen:

{
  "baseApiPath": "",
  "basename": "/webapps/3dfindit-enterprise",
  "erp": true,
  "startRoute": "CadBim",
  "isEnterprise": true
}

Wenn Sie irgendwelche Änderungen vornehmen (z.B. zusätzliche Buttons) speichern Sie die komplette Konfiguration unter "$CADENAS_SITESETUP/3df/custom_config.json". Sofern die Datei noch nicht vorhanden ist, legen Sie diese entsprechend an.

Die Konfigurationsdatei enthält einen Hauptabschnitt mit einigen Standard-Einstellungen für 3Dfindit und dann einen "toolbars"-Abschnitt.

Toolbar-Buttons können an folgenden Positionen gesetzt werden:

  • Hauptmenü -> "mainMenu"

  • Oberhalb Tabelle -> "table"

  • Oberhalb 3D-Ansicht -> "viewer"

  • Bei den Suchergebnissen an verschiedenen Positionen bzw. bei verschiedenen Ereignissen:

    • Oberhalb vorhandener Suchergebnisse -> "searchResults"

    • Anstelle nicht vorhandener Suchergebnisse -> "noResults"

    • Im Kontextmenü von Suchergebnissen -> "searchResultsContextMenu"

Buttons selbst und deren Funktionalität sind definiert im "buttons"-Abschnitt. Jeder Button hat einen Typ, der entweder JS oder VBS ist:

  • JS wird direkt im Browser ausgeführt. Es kann nur auf Browser-Funktionen zugreifen, z.B. andere Webseiten oder APIs aufrufen.

  • VBS wird serverseitig ausgeführt und in der AppServer-Umgebung.

Jeder Button hat ein Icon icon und einen Namen name.

{
  "baseApiPath": "",
  "basename": "/webapps/3dfindit-enterprise",
  "erp": true,
  "startRoute": "CadBim",
  "isEnterprise": true,

  "toolbars": {
    "mainMenuIcon": "./plugins/img/3dFinditEyeColor.svg",
    "mainMenu": [
      ["customButton1_Group1", "customButton2_Group1", "customButton3_Group1"],
      ["customButton1_Group2", "customButton2_Group2", "customButton3_Group2"]
    ],
    "viewer": ["exampleButton", "exampleVBSButton"],
    "table": ["exampleButton", "exampleVBSButton"],
    
    "noResults": ["customButton1", "customButton2", "customButton3"],
    "searchResults": ["customButton1", "customButton2", "customButton3"],
    "searchResultsContextMenu": ["customButton1", "customButton2", "customButton3"],
  
    "buttons": {
      "exampleButton": {
        "type": "JS",
        "name": {
          "de-DE": "JS Beispiel",
          "en-GB": "JS Example"
        },
        "callback": "onExampleButtonClicked",
        "icon": "images/bell-solid.svg",
        "tooltip": {
          "de-DE": "JS Beispiel",
          "en-GB": "JS Example"
        }
      },
      "exampleVBSButton": {
        "type": "VBS",
        "icon": "images/bell-solid.svg",
        "name": {
          "de-DE": "VBS Beispiel",
          "en-GB": "VBS Example"
        },
        "script": "/plugins/vbb/wstest.vbs",
        "requestFromPdm": "currentuser",
        "tooltip": {
          "de-DE": "VBS Beispiel",
          "en-GB": "VBS Example"
        }
      }
    }
  }
}