Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| dienste:wiki [07.07.2016 12:24] – [Template-Erweiterungen] stephanj | dienste:wiki [05.03.2026 12:55] (aktuell) – BaseURL mape2k | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== Wiki ====== | ====== Wiki ====== | ||
| - | Dies ist das Wiki ;) | + | Wir verwenden [[https:// |
| ===== Plugins ===== | ===== Plugins ===== | ||
| - | ==== Für Nutzer ==== | + | ^ Name ^ Anwendung |
| - | + | | [[http:// | |
| - | * [[http:// | + | | [[http:// |
| - | | + | | [[http:// |
| - | * [[http:// | + | | [[http:// |
| - | + | | [[http:// | |
| - | ==== Für Admins ==== | + | | [[https:// |
| - | + | | [[http:// | |
| - | | + | | [[http:// |
| - | * [[http:// | + | | [[http:// |
| - | + | | [[https:// | |
| - | ==== System ==== | + | | [[https:// |
| - | + | | [[https:// | |
| - | * [[https:// | + | | [[https:// |
| ===== Template ===== | ===== Template ===== | ||
| Zeile 34: | Zeile 34: | ||
| * nativeeditor: | * nativeeditor: | ||
| - | ==== iCalendar | + | ==== URL-Schemes |
| + | |||
| + | * conf/ | ||
| + | |||
| + | ==== SMTP ==== | ||
| + | |||
| + | * smtp_host: **mail.bytespeicher.org** | ||
| + | * smtp_port: **465** | ||
| + | * smtp_ssl: **SSL** | ||
| + | * smtp_auth_user: | ||
| + | * smtp_auth_user: | ||
| + | |||
| + | ==== Twofactor ==== | ||
| + | |||
| + | * enable: **[X]** | ||
| + | * optinout: **opt-in** | ||
| + | * otpsubject: **OTP Verification Code** | ||
| + | * otpcontent: **$otp is your verification code.** | ||
| + | * generatorexpiry: | ||
| + | * otplength: **7** | ||
| + | * sentexpiry: **5** | ||
| + | * loginnotice: | ||
| + | * loginsubject: | ||
| + | * logincontent: | ||
| + | * refreshexpiry: | ||
| + | * logging_level: | ||
| + | * logging_path: | ||
| + | |||
| + | ==== Twofactorgoogleauth ==== | ||
| + | |||
| + | * enable: **[X]** | ||
| - | * table: **< | ||
| ==== Template / Boostrap3 ==== | ==== Template / Boostrap3 ==== | ||
| Zeile 77: | Zeile 107: | ||
| </ | </ | ||
| - | Der Raum-Status und die Social-Media-Links liegen in folgender | + | Der Raum-Status und die Social-Media-Links liegen in der Datei lib/ |
| < | < | ||
| - | <!-- ***** Raum-Status | + | <!-- ***** Info-Box |
| - | <h1 style=" | + | |
| - | <a href=" | + | |
| - | <?php | + | |
| - | $context = stream_context_create(array(' | + | |
| - | $status = json_decode(file_get_contents(' | + | |
| - | if($status && isset($status->state->open) && $status-> | + | |
| - | echo '< | + | |
| - | } else { | + | |
| - | echo '< | + | |
| - | } | + | |
| - | ?> | + | |
| - | </ | + | |
| - | <hr /> | + | |
| <div class=" | <div class=" | ||
| - | <h3 style=" | + | <h3 style=" |
| - | <hr style=" | + | |
| - | <strong>Neues im Social Media:</strong><br /> | + | <hr style=" |
| - | <a href="http:// | + | <a href=" |
| - | <a href="https://www.facebook.com/Bytespeicher">Facebook< | + | |
| - | <a href="https://plus.google.com/u/0/ | + | </div> |
| + | <!-- ***** Raumstatus ***** --> | ||
| + | <div class="well" style=" | ||
| + | <?php | ||
| + | |||
| + | // Spaces | ||
| + | $spaces = [ | ||
| + | ' | ||
| + | ' | ||
| + | ]; | ||
| + | |||
| + | // Max width of icon (small = 100, large = 200) | ||
| + | $cssMaxWidth = 100; | ||
| + | |||
| + | // JSON path for URI | ||
| + | $statusJsonPath = '/ | ||
| + | |||
| + | // Create stream context with low timeout | ||
| + | $context = stream_context_create([ | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ] | ||
| + | ]); | ||
| + | |||
| + | // Check every space | ||
| + | // No output on errors | ||
| + | foreach ($spaces as $spaceName => $statusUrl) { | ||
| + | // Get minimal status from spacestatus webpage | ||
| + | $jsonContent = file_get_contents($statusUrl . $statusJsonPath, | ||
| + | if ($jsonContent === false) { | ||
| + | // Status could not be received, skip it | ||
| + | continue; | ||
| + | } | ||
| + | |||
| + | // Decode JSON with max depth of 2 | ||
| + | $jsonContent = json_decode($jsonContent, | ||
| + | if (is_null($jsonContent) || !isset($jsonContent-> | ||
| + | // JSON could not be decoded or entries missing | ||
| + | continue; | ||
| + | } | ||
| + | |||
| + | // Output spaces | ||
| + | $text = 'Der ' . $spaceName . ' ist ' . ($jsonContent-> | ||
| + | echo '<a href=\'' | ||
| + | echo '< | ||
| + | echo '</a>'; | ||
| + | } | ||
| + | |||
| + | ?> | ||
| </ | </ | ||
| - | <hr /> | ||
| - | <img src="/ | ||
| </ | </ | ||
| Zeile 136: | Zeile 200: | ||
| .plugin__simplenavi > ul.nav li a::before { | .plugin__simplenavi > ul.nav li a::before { | ||
| - | content: " | ||
| font-family: | font-family: | ||
| } | } | ||
| .plugin__simplenavi > ul.nav li.open > strong > a::before { | .plugin__simplenavi > ul.nav li.open > strong > a::before { | ||
| - | content: " | ||
| font-family: | font-family: | ||
| } | } | ||
| .plugin__simplenavi > ul.nav li.closed > a::before { | .plugin__simplenavi > ul.nav li.closed > a::before { | ||
| - | content: " | ||
| font-family: | font-family: | ||
| } | } | ||
| .plugin__simplenavi > ul.nav > ul.nav > li a { | .plugin__simplenavi > ul.nav > ul.nav > li a { | ||
| - | padding-left: | + | padding-left: |
| } | } | ||
| - | |||
| .plugin__simplenavi > ul.nav > ul.nav > li.open > ul.nav > li a { | .plugin__simplenavi > ul.nav > ul.nav > li.open > ul.nav > li a { | ||
| - | padding-left: | + | padding-left: |
| } | } | ||
| - | |||
| .plugin__simplenavi > ul.nav > ul.nav > li.open > ul.nav > li > ul.nav > li a { | .plugin__simplenavi > ul.nav > ul.nav > li.open > ul.nav > li > ul.nav > li a { | ||
| - | padding-left: | + | padding-left: |
| } | } | ||
| - | |||
| .plugin__simplenavi > ul.nav > ul.nav > li.open > ul.nav > li > ul.nav > li > ul.nav > li a { | .plugin__simplenavi > ul.nav > ul.nav > li.open > ul.nav > li > ul.nav > li > ul.nav > li a { | ||
| - | padding-left: | + | padding-left: |
| } | } | ||
| .plugin__simplenavi > ul.nav > ul.nav > li.open > ul.nav > li > ul.nav > li > ul.nav > li > ul.nav > li a { | .plugin__simplenavi > ul.nav > ul.nav > li.open > ul.nav > li > ul.nav > li > ul.nav > li > ul.nav > li a { | ||
| - | padding-left: | + | padding-left: |
| } | } | ||
| .plugin__simplenavi > ul.nav > ul.nav > li.open > ul.nav > li > ul.nav > li > ul.nav > li > ul.nav > li > ul.nav > li a { | .plugin__simplenavi > ul.nav > ul.nav > li.open > ul.nav > li > ul.nav > li > ul.nav > li > ul.nav > li > ul.nav > li a { | ||
| - | padding-left: | + | padding-left: |
| } | } | ||
| </ | </ | ||
| === Navigation === | === Navigation === | ||
| - | Die Verlinkungen zu bytespeicher.org und zum Pad erfolgen über den Wiki-Artikel " | + | Die Verlinkungen zu bytespeicher.org und zum Pad erfolgen über den Wiki-Artikel "[[:navbar]]": |
| < | < | ||
| * [[https:// | * [[https:// | ||
| - | * [[http:// | + | * [[https:// |
| + | * [[https:// | ||
| ~~NOCACHE~~ | ~~NOCACHE~~ | ||
| </ | </ | ||
| Zeile 187: | Zeile 246: | ||
| < | < | ||
| - | $conf[' | + | $conf[' |
| + | $conf[' | ||
| $conf[' | $conf[' | ||
| $conf[' | $conf[' | ||
| Zeile 198: | Zeile 258: | ||
| $conf[' | $conf[' | ||
| $conf[' | $conf[' | ||
| + | $conf[' | ||
| $conf[' | $conf[' | ||
| $conf[' | $conf[' | ||
| Zeile 203: | Zeile 264: | ||
| $conf[' | $conf[' | ||
| $conf[' | $conf[' | ||
| - | $conf[' | ||
| - | $conf[' | ||
| Zeile 211: | Zeile 270: | ||
| {description}'; | {description}'; | ||
| - | $conf[' | ||
| - | |||
| - | **< | ||
| - | |||
| - | {description}'; | ||
| - | $conf[' | ||
| $conf[' | $conf[' | ||
| $conf[' | $conf[' | ||
| Zeile 230: | Zeile 283: | ||
| $conf[' | $conf[' | ||
| </ | </ | ||
| - | |||