====== WebCore ====== * Wenn man ein Template mit BootstrapStudio erstellt und dann mit einem WebCore-Projekt verknüpfen möchte, dann kann man die html-Datei z.B. form_main.html nennen. * Bei der Steuerelement-Synchronisation werden nur Elemente mit ID synchronisiert. * styles.css muss aus dem Ornder assets/css eingebunden werden * man darf in Delphi keine Daten ändern, die im Template vorgegeben sind. Z.B. den caption eines Buttons * Listenelemente kann man mit ThsWebTools.ElementOuterHtml('zeile') aus dem Template laden. Dann löscht man dieses Element aus dem Template mit ThsWebTools.Remove('#liste') und kann es dann innerhalb z.B. eines TWebListControl als Vorlage verwenden. * **Wichtig**: Bei TWebListControl muss style auf lsListGroup gesetzt werden, sonst wird der Text nur im letzten Element angezeigt. * Den horizontalen Scrollbar bekommt man weg, indem man eine Klasse definiert, die overflow: hidden !important und width: 98% hat und diese den Item-Elementen zusätzlich zuweist : ElementListClassName = "list-group test" ===== WebTemplate mit M365-Anmeldung ===== * Projects\Web\KSH\**KshLoginTemplate** * Die Einstellungen werden in der config.json gemacht * Achtung: diese Datei muss für Online angepasst werden und darf nicht beim Hochladen ohne Anpassungen mit kopiert werden * **wichtig:** Für jedes Projet muss der (Online-)Pfad zur Datei in der Constanten **cConfigJsonFile** angepasst werden * Die Überschrift WebLabel1 muss im Delphi-Formular gesetzt werden, ebenso der Text auf dem Anmelde-Button * Die RedirectUrl muss in der App in M365 registriert werden unter: "Authentication (Preview)" - als Single-Page-Webanwendung in der config.json wird die Url definiert, mit der ein JWT abgerufen werde soll: z.B. https://services.ksh-m.de:2001/auth/v1/login/jwtbymstoken Dieser Url muss ein gültiges Microsoft AccessToken übergeben werden { "token": "%s" } mit dem dann im KDB-Service https://graph.microsoft.com:443/v1.0/me aufgerufen wird. Um ein neues Projekt damit zu starten: * Verzeichnis KshLoginTemplate kopieren und umbenennen * Projektdatei des kopierten Verzeichnisses KshLoginTemplate.dproj in Delphi öffnen * Das Projekt in Delphi umbenennen und speichern * jetzt kann man das neue Projekt weiterentwickeln, vor allem als erstes die Prozedur **AfterJwtRead** mit sinnvollem Code füllen ==== BootstrapStudio ==== * Neues Projekt anlegen (Bootstrap 5.3) * Export anpassen * Exportverzeichnis * Use a CDN for Libraries * Export Labels * Hauptdatei anpassen: form_main * container * row * column * Heading H1