Commit afabd2eacb34221e1b60ed77cce59a621e8c8022
Handle channels/hashtags in form
cel committed on 8/22/2018, 9:38:52 PMParent: e3821bb878a58ca1a08b75301065fee04d4108de
Files changed
index.js | changed |
index.js | |||
---|---|---|---|
@@ -528,26 +528,35 @@ | |||
528 | 528 … | fs.createReadStream(file).pipe(res) | |
529 | 529 … | }) | |
530 | 530 … | } | |
531 | 531 … | ||
532 … | +function asChannelLink(id) { | ||
533 … | + var channel = refs.normalizeChannel(id) | ||
534 … | + if (channel) return '#' + channel | ||
535 … | +} | ||
536 … | + | ||
532 | 537 … | function asLink(id) { | |
533 | 538 … | if (!id || typeof id !== 'string') return null | |
534 | 539 … | id = id.trim() | |
540 … | + if (id[0] === '#') return asChannelLink(id) | ||
535 | 541 … | if (refs.isLink(id)) return id | |
536 | 542 … | try { | |
537 | 543 … | id = decodeURIComponent(id) | |
538 | 544 … | } catch(e) { | |
539 | 545 … | return null | |
540 | 546 … | } | |
547 … | + if (id[0] === '#') return asChannelLink(id) | ||
541 | 548 … | if (refs.isLink(id)) return id | |
542 | 549 … | } | |
543 | 550 … | ||
544 | 551 … | function serveHome(req, res, query, conf) { | |
545 | 552 … | var q = query ? qs.parse(query) : {} | |
546 | 553 … | var id = asLink(q.id) | |
547 | 554 … | if (id) { | |
548 | 555 … | res.writeHead(303, { | |
549 | - Location: '/' + (refs.isMsgId(id) ? encodeURIComponent(id) : id) | ||
556 … | + Location: '/' + ( | ||
557 … | + id[0] === '#' ? 'channel/' + id.substr(1) : | ||
558 … | + refs.isMsgId(id) ? encodeURIComponent(id) : id) | ||
550 | 559 … | }) | |
551 | 560 … | return res.end() | |
552 | 561 … | } | |
553 | 562 … | res.writeHead(200, { |
Built with git-ssb-web