git ssb

16+

cel / patchfoo



Commit c7dfaf189024963ea674bf0a191b7d6d956e8e36

Render poll positions

cel committed on 5/9/2018, 2:03:08 AM
Parent: b0584f97074489bdd1f5f5a742014874325f4e95

Files changed

lib/render-msg.jschanged
lib/render-msg.jsView
@@ -295,8 +295,9 @@
295295 case 'line-comment': return this.lineComment(cb)
296296 case 'web-init': return this.webInit(cb)
297297 case 'web-root': return this.webRoot(cb)
298298 case 'poll': return this.poll(cb)
299 + case 'position': if (this.c.version === 'v1') return this.pollPosition(cb)
299300 default: return this.object(cb)
300301 }
301302 }
302303
@@ -1750,4 +1751,36 @@
17501751 title: closeDate.toLocaleString()
17511752 }, closeDate.toString()))
17521753 ), cb)
17531754 }
1755 +
1756 +RenderMsg.prototype.pollPosition = function (cb) {
1757 + var self = this
1758 + var details = self.c.pollDetails || self.c.details || {}
1759 + var reason = self.c.reason || ''
1760 + var done = multicb({pluck: 1, spread: true})
1761 + self.link(self.c.root, done())
1762 + self.links(self.c.branch, done())
1763 + var msgCb = done()
1764 + self.app.getMsg(self.c.root, function (err, msg) {
1765 + // ignore error getting root message... it's not that important
1766 + msgCb(null, msg)
1767 + })
1768 + done(function (err, rootLink, branchLinks, rootMsg) {
1769 + if (err) return cb(err)
1770 + var rootContent = rootMsg && rootMsg.value.content || {}
1771 + var rootDetails = rootContent.pollDetails || rootContent.details || {}
1772 + var choices = u.toArray(rootDetails.choices)
1773 + var choice = details.choice && choices && choices[details.choice]
1774 + return self.wrap(h('div',
1775 + rootLink ? h('div', h('small', h('span.symbol', '→'), ' ', rootLink)) : '',
1776 + branchLinks.map(function (a, i) {
1777 + return h('div', h('small', h('span.symbol', '  ↳'), ' ', a))
1778 + }),
1779 + h('p',
1780 + 'picked ',
1781 + choice ? h('q', choice) : ['choice ', details.choice || '?']
1782 + ),
1783 + reason ? h('div', {innerHTML: self.render.markdown(reason, self.c.mentions)}) : ''
1784 + ), cb)
1785 + })
1786 +}

Built with git-ssb-web