Initial commit.

This commit is contained in:
Andreas Baldeau 2014-05-12 20:08:19 +02:00
commit 0335f5aa93
1168 changed files with 261999 additions and 0 deletions

View file

@ -0,0 +1,2 @@
<i class="help-icon" ng-click="toggleHelp()"></i>
<p ng-if="showHelp" class="help-block">{{text}}</p>

View file

@ -0,0 +1,7 @@
<nav class="navbar navbar-default" role="navigation">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="javascript:;" ng-click="goHome()">Freifunk Hamburg - Knotenverwaltung</a>
</div>
</div>
</nav>

View file

@ -0,0 +1,96 @@
<form method="post" role="form" ng-submit="onSubmit(node)" ng-disabled="hasAnyError()" novalidate>
<div class="main-error" ng-if="error">{{error}}</div>
<fieldset>
<div class="node-data">
<h3>Knotendaten</h3>
<div class="hostname">
<label for="hostname">Knotenname</label>
<f-help text="Das ist der Name, der auch auf der Karte auftaucht."></f-help>
<input type="text" id="hostname" placeholder="z. B. Lisas-Freifunk" ng-model="node.hostname" />
<span class="feedback" ng-if="hasError('hostname')">
Knotennamen dürfen maximal 32 Zeichen lang sein und nur Klein- und Großbuchstaben, sowie Ziffern, - und _ enthalten.
</span>
</div>
<div class="key">
<label for="key">VPN-Schlüssel (bitte nur weglassen, wenn Du weisst, was Du tust)</label>
<f-help text="Dieser Schlüssel wird verwendet, um die Verbindung Deines Routers zu den Gateway-Servern abzusichern."></f-help>
<input type="text" id="key" placeholder="Dein 64-stelliger VPN-Schlüssel" ng-model="node.key" />
<span class="feedback" ng-if="hasError('key')">
Der angegebene VPN-Schlüssel ist ungültig.
</span>
</div>
<div class="mac">
<label for="mac">MAC-Adresse</label>
<f-help text="
Die MAC-Adresse (kurz &quot;MAC&quot;) steht üblicherweise auf dem Aufkleber auf der Unterseite deines Routers.
Sie wird verwendet, um die Daten Deines Routers auf der Karte korrekt zuzuordnen.
"></f-help>
<input type="text" id="mac" placeholder="z. B. 12:34:56:78:9a:bc oder 123456789abc" ng-model="node.mac" />
<span class="feedback" ng-if="hasError('mac')">
Die angegebene MAC-Adresse ist ungültig.
</span>
</div>
</div>
<div class="node-position">
<h3>Koordinaten</h3>
<div class="row">
<div class="coords col-md-4">
<!--<label for="coords">Koordinaten des Knotens (freiwillig)</label>-->
<p class="help-block">
Wenn Du möchtest, dass Dein Knoten an der richtigen Stelle auf der
<a href="http://graph.hamburg.freifunk.net/geomap.html" target="_blank">Knotenkarte</a> angezeigt wird,
kannst Du seine Koordinaten hier eintragen. Klicke einfach in der auf dieser Seite angezeigten Karte
an die Stelle, wo Dein Knoten erscheinen soll. Durch erneutes Klicken kannst Du die Position jederzeit
anpassen.
</p>
<input type="text" id="coords" class="{{node.coords ? 'has-coords' : ''}}" placeholder="z. B. 53.59784 10.01821" ng-model="node.coords" ng-blur="updateMap" />
<i class="reset-coords" ng-if="node.coords" ng-click="resetCoords()"></i>
<span class="feedback" ng-if="hasError('coords')">
Bitte gib die Koordinaten wie folgt an, Beispiel: 53.59784 10.01821
</span>
</div>
<div class="col-md-8">
<leaflet class="map" center="center" layers="layers" markers="markers"></leaflet>
</div>
</div>
</div>
<div class="contact-data">
<h3>Kontaktdaten</h3>
<p class="help-block">
Deinen Namen und Deine E-Mail-Adresse verwenden wir ausschließlich, um bei Problemen mit Deinem Router oder
bei wichtigen Änderungen Kontakt zu Dir aufzunehmen. Bitte trage eine gültige E-Mail-Adresse ein, damit wir
Dich im Zweifel erreichen können. Deine persönlichen Daten sind selbstverständlich nicht öffentlich
einsehbar und werden von uns nicht weitergegeben oder anderweitig verwendet. Versprochen!
</p>
<div class="row">
<div class="col-md-6">
<div class="nickname">
<label for="nickname">Nickname / Name</label>
<input type="text" id="nickname" placeholder="z. B. Lisa" ng-model="node.nickname" />
<span class="feedback" ng-if="hasError('nickname')">
Nicknames dürfen maximal 64 Zeichen lang sein und nur Klein- und Großbuchstaben, sowie Ziffern, - und _ enthalten. Umlaute sind erlaubt.
</span>
</div>
</div>
<div class="col-md-6">
<div class="email">
<label for="email">E-Mail-Adresse</label>
<input type="email" id="email" placeholder="z. B. lisa@hamburg.freifunk.net" ng-model="node.email" />
<span class="feedback" ng-if="hasError('email')">
Die angegebene E-Mail-Adresse ist ungültig.
</span>
</div>
</div>
</div>
</div>
<div class="buttons">
<button class="save {{action}}" type="submit" ng-disabled="hasAnyError()" popover="I appeared on mouse enter!" popover-trigger="mouseenter" ng-switch="action">
<span ng-switch-when="create"><i class="fa fa-dot-circle-o"></i> Knoten anmelden</span>
<span ng-switch-when="update"><i class="fa fa-pencil"></i> Daten ändern</span>
</button>
<button class="cancel" type="reset" ng-click="cancel()">
<i class="fa fa-times"></i> Abbrechen
</button>
</div>
</fieldset>
</form>

View file

@ -0,0 +1,13 @@
<p>
Um die Daten deines Knotens später selber ändern zu können, <strong>notiere Dir bitte folgendes Token</strong>:
</p>
<div class="summary">
<span class="token">
<i class="fa fa-pencil"></i>
{{token}}
</span>
</div>
<div class="actions">
<button class="back-button" ng-click="goHome()"><i class="fa fa-reply"></i> Zurück zum Anfang</button>
</div>

View file

@ -0,0 +1,20 @@
<form method="post" role="form" ng-submit="doSubmit(token)" ng-disabled="hasError()" novalidate>
<div class="main-error" ng-if="error">{{error}}</div>
<fieldset>
<div class="token">
<label for="token">Token</label>
<input type="text" id="token" placeholder="Dein 16-stelliger Token" ng-model="token" />
<span class="feedback" ng-if="hasError()">
Das Token ist ein 16-stelliger Wert bestehend aus 0-9 und a-f.
</span>
</div>
<div class="buttons">
<button class="submit" type="submit" ng-disabled="!token || hasError()">
<i class="fa fa-pencil"></i> Knotendaten ändern
</button>
<button class="cancel" type="reset" ng-click="onCancel()">
<i class="fa fa-times"></i> Abbrechen
</button>
</div>
</fieldset>
</form>