example-mailbox: v2

This commit is contained in:
Yoshua Wuyts
2016-05-12 15:42:44 +07:00
parent 53a1e6026a
commit 1d14f9f26b
6 changed files with 70 additions and 23 deletions
+40
View File
@@ -0,0 +1,40 @@
const choo = require('../../../')
module.exports = function (params, state, send) {
const mailbox = params.mailbox
return choo.view`
<section>
<table>
${createHeader()}
${state[mailbox + ':messages'].map(function (msg) {
return createMessage(msg, mailbox)
})}
</table>
</section>
`
}
function createHeader () {
return choo.view`
<tr>
<th>Data</th>
<th>Subject</th>
<th>From</th>
<th>To</th>
</tr>
`
}
function createMessage (message, mailbox) {
return choo.view`
<tr>
<a href="${'/' + mailbox + '/' + message.id}">
<td>${message.date}</td>
<td>${message.subject}</td>
<td>${message.from}</td>
<td>${message.to}</td>
</a>
</tr>
`
}