Der verwöhnte Delphi-Programmierer hat unter Javascript zu leiden.
In dieser Tabelle (kontostand.component.html) wurde nichts angezeigt
<h2>Kontostand</h2>
<table class="kontostandRecords">
<tr>
<th>Datum</th>
<th>Bezeichnung</th>
<th>Betrag</th>
</tr>
<tr *ngFor="let konto of kontostandRecords"
[class.selected]="konto === selectedKonto">
<td>{{konto.datum | date: 'dd.MM.yy'}}</td>
<td><a routerLink="/kubea/detail/{{konto.id}}">{{konto.kurz}}</a></td>
<td class="wnfDM">{{konto.betrag}}</td>
</tr>
</table>
weil in der Datei (kontostand.component.ts) ein falscher Name für kontostandRecords verwendet wurde:
export class KontostandComponent implements OnInit {
kontenRecords: KontoRecord[];
...
getKontostand(): void {
this.kubeaService.getKontostand()
.subscribe(konto => this.kontenRecords = konto);
...
}
nach der Korrektur von kontenRecords auf kontostandRecords
export class KontostandComponent implements OnInit {
kontostandRecords: KontoRecord[];
...
getKontostand(): void {
this.kubeaService.getKontostand()
.subscribe(konto => this.kontostandRecords = konto);
}
}
funktioniert die Anzeige des Kontostandes.
Die Installation von Radicale als CalDav und CardDav Server auf meinem BBB war erfolgreich. Radicale kommt mit einem eigenen Http-Server daher und muss deshalb nicht in nginx eingebunden werden.
Leider hatte Thunderbird/Lightning bei der ganzen Probiererei die Zusammenarbeit mit meinem CalDav-Kalender eingestellt. Es gab nur das gelbe Warndreieck: "Der Kalender ist nicht verfügbar". Wie "hier (Kalender syncronisiert nicht - DAV_NOT_DAV - gelbes Warndreieck)": https://www.thunderbird-mail.de/forum/thread/75059-kalender-syncronisiert-nicht-dav-not-dav-gelbes-warndreieck/ zu lesen ist, liegt das daran, dass Thunderbird die Passwörter nur einmal pro Server speichern kann. Deshalb habe ich
https://radicale.fritz.box:5232/user/xxxa40a-84cb-b167-4d4c-06f92db7xxx/
Literatur
Trotz (oder gerade wegen) vieler Anleitungen habe ich die Installation von Nextcloud unter nginx auf meinem BBB erfolglos abgebrochen.
Tags: beaglebone NextcloudErzeuge Projekt wnfPortal
Web-Oberfläche für wnfKontakt und wnfKuB
$ ng new wnfportal
$ cd wnfportal
$ ng serve
NG Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/
Projekt in Github eintragen
Dazu auf Github ein leeres Repository anlegen (ohne .gitignore, ohné Readme und ohne Lizenz, sonst gibt es Ärger mit den folgenden Befehlen.)
$ cd wnfportal/
$ git init
$ git add .
$ git commit -m "First commit"
$ git remote add orign https://github.com/wnf58/wnfportal
$ git remote -v
$ git push orign master
Erzeugen der Komponente und des Service kubea
$ cd wnfportal
$ ng generate component kubea
$ ng generate component kubea-detail
$ ng generate component kubea-search
$ ng generate component dashboard
$ ng generate service kubea --module=app
$ ng generate service message --module=app
$ ng generate module app-routing --flat --module=app
angular httpclient
Der httpclient holt die anzuzeigenden Daten von meinem CherryPy-Server. Dabei kommt es zu dem beliebten Fehler No 'Access-Control-Allow-Origin' header is present. Wie in [Stackoverflow](https://stackoverflow.com/questions/27141122/no-access-control-allow-origin-header-is-present-error-with-cherrypy beschrieben muss der Cherrypy-Server folgendermaßen gestartet werden:)
def server_dict():
'''Erstellung der Konfiguration für CherryPy'''
g={}
g['tools.staticdir.root']=os.path.dirname(os.path.abspath(__file__))
g['server.socket_port']=8081
g['server.socket_host']='0.0.0.0'
g['tools.sessions.on']=True
g['tools.sessions.timeout'] =1000
g['tools.sessions.name']="wnfportal8081id"
g['tools.CORS.on'] = True
c={'global': g}
c['/']={'tools.staticdir.on':True,'tools.staticdir.dir':"www",'tools.staticdir.index' : "index.html"}
return c
def CORS():
cherrypy.response.headers["Access-Control-Allow-Origin"] = "*"
def main():
cherrypy.tools.CORS = cherrypy.Tool('before_handler', CORS)
cherrypy.quickstart(wnfPortal(),config=server_dict())
$ ng serve --host 0.0.0.0 --disable-host-check
Eine Kopie für den Verkauf erstellen
#!/bin/bash
DIRECTORY="/home/wnf/Entwicklung/wnfportal"
cd $DIRECTORY
pwd
ng build --prod
if [ -d "$DIRECTORY/dist" ]; then
# Control will enter here if $DIRECTORY exists.
rsync -azve ssh --delete "$DIRECTORY/dist/" wnf@bone2013.fritz.box:/var/www/wnfportal
fi
Da nodejs in Kubuntu 16.04 nur in veralteten Paketen zu finden ist, hier die neueste Version holen:
https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions
curl -sL https://deb.nodesource.com/setup_9.x | sudo -E bash -
sudo apt-get install -y nodejs
Zugriff über node-firebird auf die Datenbanken
sudo npm install node-firebird a
Literatur
Im Rahmen der Nachbarschaftshilfe galt es folgendes Problem zu lösen:
Die [Modellbahnsteuerung z21](http://www.z21.eu soll an die vorhandene Fritzbox angeschlossen werden. Dazu muss man wissen, dass die z21 unbedingt die IP-Adresse 192.168.0.2 benutzen möchte. Deshalb muss die Fritzbox so konfiguriert werden, dass diese Adresse der z21 zugeteilt wird.)
Tags: Fritzbox z21