Some changes, including DNS support (#57)

* remove CDN

* Add a link to "members" in the network detail page

* Show object values as JSON

* remove TLS options

* Minor style improvements

* Show object values as JSON (member_detail)

* Add missing 'const'

* Navbar height fix

* Merge jQuery ready functions

* Change brand

* Merge network pages (name, members, detail) into single page and...

* Show ZT version on controller index page
* Show count of members
* Use <code> tag to display JSON data
* Fix error in some "error" pages caused by missing "navigate" when
  rendering nav items, use pug mixin to render nav items.
* Adjust column widths of network list

* Refactor: move duplicated nav code to `head_layout`

* Remove some debug logging code

* Get network members detail parallelly

* Add missing frontend script for members

* Revert "Change brand"

* Remove "members" and "name" pages which are merged into "detail"

* Add DNS support

* Trivial changes (table width etc.)

* Don't try to read TLS cert files when not using HTTPS

* Validate DNS IP

* Downgrade jquery to 3.4.1 to fix nav bar collapse

* Revert "Navbar height fix"

This reverts commit 8edaa9aa81, which
break the nav item height on mobile.

* Add missing margin for some buttons

* Display current DNS configuration above inputs

* Change network rename UI/UX

* Includes 'jquery.min.js' in pkg

* Improve JSON value rendering

* Get peer status of network members

* Display members with peer status

* Show controller itself as "CONTROLLER"

* Display peer address

* Improve login redirection

* pr57: Doc updates; version bump

* pr57: Year update

Co-authored-by: Key Networks <34238649+key-networks@users.noreply.github.com>
This commit is contained in:
lideming
2021-03-01 15:10:10 +08:00
committed by GitHub
co-authored by Key Networks
parent ce4b0e6d79
commit 1295dd1d07
42 changed files with 503 additions and 388 deletions
+13 -4
View File
@@ -1,6 +1,6 @@
/*
ztncui - ZeroTier network controller UI
Copyright (C) 2017-2018 Key Networks (https://key-networks.com)
Copyright (C) 2017-2021 Key Networks (https://key-networks.com)
Licensed under GPLv3 - see LICENSE for details.
*/
@@ -10,8 +10,17 @@ const authenticate = auth.authenticate;
const restrict = auth.restrict;
const router = express.Router();
/** Redirect logged user to controler page */
function guest_only(req, res, next) {
if (req.session.user) {
res.redirect('/controller');
} else {
next();
}
}
/* GET home page. */
router.get('/', function(req, res, next) {
router.get('/', guest_only, function(req, res, next) {
res.render('front_door', {title: 'ztncui'});
});
@@ -21,7 +30,7 @@ router.get('/logout', function(req, res) {
});
});
router.get('/login', function(req, res) {
router.get('/login', guest_only, function(req, res) {
let message = null;
if (req.session.error) {
if (req.session.error !== 'Access denied!') {
@@ -40,7 +49,7 @@ router.post('/login', async function(req, res) {
req.session.user = user;
req.session.success = 'Authenticated as ' + user.name;
if (user.pass_set) {
res.redirect('/controller');
res.redirect(req.query.redirect || '/controller');
} else {
res.redirect('/users/' + user.name + '/password');
}