Agenda. Einbindung von Bootstrap in klassische Domino Web Anwendungen

Ähnliche Dokumente
Vorstellung LotusScript Was ist das überhaupt? Informationen Kleine Scripte Notes Klassen - BackEnd vs FrontEnd Fehlerbehandlung Tips & Tricks

Agenda. Web Services unter Lotus Notes/Domino

Sprechen deine User auch öffentlich? Lotus Sametime. Mathias Bierl Wabion GmbH

Agenda. Security in Notes

Agenda. Vorstellung JavaScript Frameworks UI vs. Backend jquery/jqueryui. Vergleich normaler JavaScript Code mit jquery Code

Hands-On Java Programmierung mit Lotus Notes/Domino. Mathias Bierl Wabion GmbH

Erstellung eines Webshops für Hak-T-Shirts und Hak-Pullis

Nutzung des Dojo Toolkits zur Optimierung bestehender Notes-Web- Anwendungen. Mathias Bierl Wabion GmbH

Responsive Webdesign mit Frameworks. Martin Gruber AG-INF, März 2018

Responsive Web Design - eine App fu r alle Devices Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen. Sascha Siemens 09.

Bootstrap - kurze Übersicht

Security Settings in Domino. Mathias Bierl Wabion GmbH

Modul 8: Browser-Processing- Pipeline

Bootstrap Projekt Europa: Teil 2:

Peppershop Direkt-Extern Modul Anleitung

Wie in Bootstrap üblich, bestimmen vorgegebene Klassen die Gestaltung.

Bootstrap Framework Theorie


HOCHSCHULE FÜR ANGEWANDTE WISSENSCHAFTEN MÜNCHEN. Arbeitstitel: Responsive Web Design - eine App für alle Devices

APEX 5.0: neue & überarbeitete Komponenten. Oliver Lemm Berlin,

Mit PL/SQL auf s ipad

Bootstrap4 Layout Komponenten

Übung: Bootstrap - Navbar

Formulare in Bootstrap 4

Übung: Projekt Europa mit Bootstrap

Erstellung eines Webshops für Hak-T-Shirts und Hak-Pullis Teil2

NATURAL FOR AJAX RESPONSIVE WEB ANWENDUNGEN FÜR MOBILE ENDGERÄTE ROLAND FABICH NOVEMBER 2016

Einführung Responsive Webdesign

Custom Themes from Scratch Stefan Fröhlich. WordCamp Nürnberg 2016

DOAG München Layout und dynamische Elemente für APEX Anwendungen

Inhalt: 1)Header-Widget, 2)Footer-Widget, 3)Buttons, 4)Übung: Wohnungskauf, 5)Controlgroups, 6)Listview, 7)Panel-Widget

Eclipse Scout Heute und Morgen. Jérémie Bresson BSI Business Systems Integration AG

Bootstrap Projekt Europa: Teil 2: Navigation erstellen. 1)Zuerst eine <nav> mit der Klasse: class= navbar. Inhalt:

PresseBox Presseticker

Formulare in Bootstrap

Upgrade auf Microsoft Dynamics CRM 2013

Bootstrap - Übung. Download: Editoren: Dreamweaver Notepad Net Beans Aptana Webmatrix. Bootstrap in Dreamweaver einbinden

Nachbau der Website 1.)Hintergrundbild einfügen eigene CSS-Datei

Mit PL/SQL auf s ipad

HTML-STANDARDS ZUR OPTIMALEN VERWENDUNG IN WCMS VOM HTML-DUMMY ZUR CONTENT-KLASSE

Webentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo

Architektur von Informationssystemen. Hochschule für angewandte Wissenschaften Sommersemester 2016

E-Commerce: IT-Werkzeuge. Web-Programmierung. Kapitel 3: Webdesign mit CSS Stand: Übung WS 2015/2016. Benedikt Schumm M.Sc.

Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web , Bilster Berg Drive Resort Michael Steinhoff, agentbase AG.

YAML 4 das CSS-Framework

OpenNTF ist nicht das Ende. Marco Spinning Architekt & Produkt-Manager, We4IT Group

Es gibt heute im Wesentlichen drei Kategorien von Geräten zum Betrachten einer Website:

Responsive Webdesign

JavaScript Frameworks für Mobile

Oracle Application Express 5.1

Dynamisches Anzeigen von Informationen mit jqueryui Dialogs und Tabs

APEX 5.1 Design Crashkurs. Steven Grzbielok: APEX connect 2017

YAML-Templates in TYPOlight

javascript Coding-Guidelines 2. Ausgabe Februar 2015 Der Guideline beschreibt den verwendeten Coding-Stil von javascript als eigene Richtline.

Allgemeine Technologien II Sommersemester Mai 2011 CSS

jquery Einstieg 2 CSS manipulieren; toggle, hide und show

Formulare mit jquery Mobile

TUT1 Javascript-Frameworks zum Erstellen von plattformunabhängigen mobilen Anwendungen

PHP eine Einführung. Dipl.-Inf. Frank Hofmann. 18. November Potsdam

Echte Cross-Plattform Anwendungen mit Angular 2 in Action!

Georgienseite TYPO3 LTS7 Projekt Georgienseite TYPO3 LTS 7 responsiv Stand: Juni 2016

ANWENDUNGSSOFTWARE CSS

<HTML DB> Web Application Development

Be dynamic! RichClient-Funktionalitäten mit dem Google Web Toolkit

JavaServer Faces. JSF die Oberfläche von Java EE 8 JSF - die Oberfläche von Jakarta EE. Michael

Webseiten werden mobil Planung geht vor

3. Briefing zur Übung IT-Systeme

Mobile API 2.0 Partizipative App Entwicklung

Webdesign Grundlagen. Michael Kraft, M.A. WS 2012/2013

GSH3EX. NetObjects Fusion 8 basics plus. Helga Heumann Frederique Thalmayr

Entwicklung fortschrittlicher Lösungen für Microsoft SharePoint Server 2013 (nach MOC 20489)

GHKit Template 3 Days Workshop. Templates. 3 Days Workshop. Umbau eines Bootstrap Templates in ein GHKit Template

Einführung zu Twitter Bootstrap

Referenzen TYPO3. Projekt Relaunch der Agenturwebseite Stand: Februar 2017

2. WWW-Protokolle und -Formate

Webdesign mit Dreamweaver. PCC-Seminar Einheit 4 Do.,

Persistenz. Ralf Gitzel

Xpert.ivy Developer Day User Dialog Features. Autoren: Peter Stöckli & Flavio Sadeghi Datum: 14. Mai 2014

Arbeite im gleichen Ordner weiter wie bei 1.b4.start1.docx. Kopiere aber die index.html in uebung.html im selben Verzeichnis.

Bootstrap Layout Komponenten

WERDEGANG BENJAMIN STELLJES FULL STACK WEB DEVELOPER

Internet-Technologien

4. Briefing zur Übung IT-Systeme

Stundentische Aushilfe Content-Pflege Web (m/w) ab sofort

Inhalt. Vorwort 13. Teil I CSS kennenlernen: Einstieg in XHTML und CSS

Dynamisches Anzeigen von Informationen in APEX mit jquery UI Dialogs und Tabs

Raber+Märcker Techno Summit 2014 Microsoft Dynamics NAV 2013 R2 Überblick und Hintergründe zu aktuellen Version.

Inhalt HTML 2. Applets Frames Formulare CSS cascading style sheets. Lehrveranstaltung Internet in AT Dr.-Ing. A. Braune TECHNISCHE UNIVERSITÄT DRESDEN

Herausforderung Mobility. Statisches WCMS (imperia)

DOKUMENTATION. CaptchaAd als Werbevariante. Einbindung in Ihrer Webseite. Die Schritte zur Integration des CaptchaAds im Einzelnen

Dr. Thomas Meinike Hochschule Merseburg

Webseiten erstellen für Einsteiger

XPages - Core Technologie der Lotus Zukunft? 2011 IBM Corporation

TopPlusOpen. Einbindung des Dienstes

CSS-Boxen. Hans Gell Schulungen & Dienstleistungen Übersicht der Schulungsinhalte

IT works unlimited GmbH & Co. KG

Praktisches Beispiel einer Angular-2-App, entwickelt in drei Iterationen.

Echte Cross-Plattform Anwendungen mit Angular 2 in Action!

Transkript:

Agenda Vorstellung Was ist Bootstrap? Wie ist eine Bootstrap-optimierte Anwendung aufgebaut? Integration von Bootstrap in Domino Anwendungen Beispiele/Demos 2

Über Wabion - Enterprise Search auf Basis Google Search Appliance - Anwendungsentwicklung auf Basis Google Apps Engine und Lotus Domino - Beratungsunternehmen mit dem Focus jeweils Technologieführer auf seinem Gebiet zu sein. 3

Wer bin ich? Mathias Bierl, Staatl. Gepr. Wirtschaftsinformatiker (mathias.bierl@wabion.com) Notesentwicklung / Administration seit 1997 (R 4 ND 8.5.x) Anti-Spam/Anti-Virus Lösungen Enterprise Search/Knowledgemanagement Google Lösungen (Search, Apps, ) Server-Virtualisierung 4

Wer bin ich? Projekte mit Lotus / Domino: Lotus Notes R4 ND 8.5.x Sametime, Domino.Doc, Lotus Workflow, LEI, DECS, DGW Formelsprache, Skript, Klassen, Java, JS, HTML, AJAX Migration R4-R5-ND6-ND7-ND8, Microsoft Exchange, C-/C++-API, WIN 3.11-WIN 7, OS/2, AIX, AS/400, Linux,... Datenanbindungen an SAP, RDBS XML/XSL, Servlets, Web Services Mobile Datenanbindung (Blackberry, OBMG, ) Projekte mit Google: Google Search Appliance Google Message Security Google Message Discovery Google Apps inkl. Migrationen Google Apps Engine Enterprise Search mit Lucidworks Fusion 5

Was ist Bootstrap? Ein freies modulares CSS Framework Enthält HTML und CSS basierende Gestaltungsvorlagen für die verschiedensten Web Elemente, wie Formulare, Buttons, Tabellen, Navigations- und anderen Oberflächengestaltungslemente Enthält optionale JavaScript Erweiterungen basierend auf jquery Unterstützt Gestaltung im Sinne des Responsive Webdesigns 6

Was heisst modular? Bootstrap besteht aus einer komponentenbasierten Definition auf Basis von Less Stylesheets auf Less Stylesheets erlauben die Schachtelungen von CSS- Regeln, erlaubt Verwendung von Variablen, Zusammenfassung und Wiederverwendbarkeit von Regeln und stellt eine effizientere Möglichkeit zum Schreiben von CSS Regeln zur Verfügung Die Less Stylesheets werden mit einem JavaScript Compiler in normale CSS Stylesheets kompiliert. Dies kann sowohl server- wie auch clientseitig erfolgen oder auch nur in der Entwicklungsumgebung 7

Wie ist eine Bootstrap-optimierte Anwendung aufgebaut? Der Grundaufbau entspricht dem folgenden Schema: Einbindung Bootstrap Definitionen HTML Layout auf Basis von Tabellen oder Divs Setzen von CSS Klassen, um die gewünschte Formatierung zu erreichen Bootstrap kann generell sowohl in tabellenbasierten wie auch div-basierten Layouts verwendet werden Auch responsive Layouts sind in beiden Varianten möglich Allerdings sind tabellenbasierte Layouts in der Flexibilität stark beschränkt, weswegen idealerweise auf Div-basierte Layouts gesetzt werden sollte 8

Wie ist eine Bootstrap-optimierte Anwendung aufgebaut? 9

Integration von Bootstrap in Domino Anwendungen Minimal muss das Bootstrap CSS eingebunden werden. Dies enthält die CSS Definitionen für HTML Elemente und die Optimierungen für bestimmte Displaygrößen <link href="/bootstrap/css/bootstrap.min.css" rel="stylesheet"> Optional kann das Bootstrap Theme miteingebunden werden für weitere optische Definitionen <link href="/bootstrap/css/bootstrap-theme.min.css" rel="stylesheet"> Optional können die Bootstrap Plugins eingebunden werden. Für diese muss aber davor jquery eingebunden werden <script src="/jquery/js/jquery.min.js"></script> <script src="/bootstrap/js/bootstrap.min.js"></script> 10

Integration von Bootstrap in Domino Anwendungen Um sicherzustellen, daß auf allen Geräten die Anzeige optimal ist sollte der folgende Meta Tag eingefügt werden <meta name="viewport" content="width=device-width, initialscale=1"> 11

Integration von Bootstrap in Domino Anwendungen Durch die Einbindung an sich ändert sich erst einmal nur minimal etwas an der Optik, z.b. Schriftart Nutzung der Bootstrap Funktionen werden über die Zuweisung von CSS Klassen erreicht. 12

Integration von Bootstrap Schritt 2 Setzen von Klassen-Eigenschaften für die Labels: label label-default glyphicon glyphicon-search Setzen von Klassen-Eigenschaft für die Felder: form-control -> dynamische Breite 13

Integration von Bootstrap Schritt 3 Einbetten in einen Container: <div class="container"> Ersetzen des input Typ Button durch einen Button <button class="btn btn-lg btn-primary btn-block" type="submit">text</button> Vorraussetzung für die Pflichtfeldvalidierung Ergänzung einer einfachen Pflichtfeldvalidierung HTML Eigenschaften: required (type="email") Setzen des Feldes, welches automatisch den Fokus bekommt: HTML Eigenschaften: autofocus Andere Feldgröße Klasse: input-md 14

Integration von Bootstrap Schritt 3 Setzen von Platzhaltern Statisch: HTML Eigenschaften: placeholder="dd.mm.yyyy" Dynamisch: jquery Code: $('#fd_email').attr('placeholder', 'test@test.de'); 15

Integration von Bootstrap Schritt 3 16

Integration von Bootstrap Schritt 4 Gliederung in verschiedene Bereiche (Panels) <div class="panel panel-default"> Nutzung von Body, Header und Footer für die Bereiche <div class="panel-body"> <div class="panel-heading">pflichtfelder:</div> <div class="panel-footer">bitte nur Datumswerte in der Form DD.MM.YYYY eingeben</div> Dies kann natürlich auch kombiniert werden 17

Integration von Bootstrap Schritt 4 18

Integration von Bootstrap Schritt 5 Ergänzung eines vertikalen Menüs <nav class="navbar navbar-default navbar-fixed-top"> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar"> <span class="sr-only">toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="#">project name</a> </div> <div id="navbar" class="collapse navbar-collapse"> Link1 Link2 Link3 </div> </div> </nav> 19

Integration von Bootstrap Schritt 5 20

Integration von Bootstrap Schritt 6 Dynamisches tabellenbasiertes Layout (Grid) Einspaltig <div class="row"> <div class="col-md-12"> </div> </div> Mehrspaltig <div class="row"> <div class="col-md-6"> </div> <div class="col-md-6"> </div> </div> Grids gehen in Bootstrap von 12 Spalten aus, die maximal möglich sind Die Aufteilung definiert damit das Verhältnis der Spalten 21

Integration von Bootstrap Schritt 6 Diese können auch verschachtelt werden, wie es mit normalen Tabellen ebenfalls möglich ist. Der Vorteil der Grids ist vor allem die Anpassung an die Displaygröße und die Flexibilität 22

Integration von Bootstrap Schritt 6 23

Integration von Bootstrap Views/Tabellen Formatierung von Tabellen Da es bei Views nicht direkt möglich ist Klassen zu setzen, macht man dies dann dynamisch beim Laden über das ViewTemplate $( document ).ready(function() { $('table').addclass('table table-striped tablebordered'); }); Spaltenbreite setzen $( document ).ready(function() { $('th,td').addclass('col-xs-15'); }); Wechselnder Zeilenhintergrund Klasse table-striped Tabellenränder Klasse table-bordered 24

Integration von Bootstrap Views/Tabellen 25

Integration von Bootstrap Views/Tabellen - responsive Tabellen sind nur schwer responsive formatierbar Bootstrap erlaubt ein separates Scrollen der Tabelle durch Umschliessen der Tabelle mit einem entsprechenden div <div class="table-responsive"> 26

Integration von Bootstrap Sichtbarkeit Durch Nutzung der entsprechenden Klassen kann die Sichtbarkeit von Elementen oder Spalten von der Anzeigegröße abhängig gemacht werden Klassen.visible-, -hidden-... 27

Integration von Bootstrap Sichtbarkeit 28

Weitere Möglichkeiten Weitere Möglichkeiten, die die Bootstrap Klassen bieten: Setzen von Farben und Hintergrundfarben Screen Reader Unterstützung Tool Tips und Hilfetexte Deaktivieren von Elementen und Optionen Typographien 29

Q & A 30

Links Bootstrap http://getbootstrap.com/ Bootstrap Download Assistent http://getbootstrap.com/customize/ Bootstrap Getting Started http://getbootstrap.com/getting-started/ Bootstrap Klassenreferenz https://www.w3schools.com/bootstrap/default.asp jquery http://jquery.com/ jquery API http://api.jquery.com/ 31

Kontakt Wabion GmbH Limburgstrasse 31 D-73734 Esslingen Phone: +49 (0)711 25 25 52 24 Fax: +49 (0)711 25 25 52 14 Web: http://www.wabion.com Mathias Bierl email: Mathias.Bierl@wabion.com Mobil: +49 (0) 172 877 27 65 32