var Get = require('./get') var paramap = require('pull-paramap') var pull = require('pull-stream') var u = require('yap-util') var Render = require('./render') module.exports = function (sbot) { return function (use) { use('event', function (opts, apply, req) { var context = Object.assign({}, req.cookies, {id: sbot.id, forms: opts.embed !== true}) // opts.id = opts.id || "%eFzw9Qca1MUppBgyGG0e2AwzlwonvwDk2GDyxM9B37c=.sha256" return function (cb) { Get(sbot, opts, function (err, gathering) { if(err) cb(err) else cb(null, Render(apply, gathering, context)) }) } }) use('about', u.createRenderer(function (data, apply) { console.log('RENDER ABOUT', data) return ['div.Message', //currently, a vote message has no need for a cache tag. //unless we decide to show other peers that have liked this. //u.cacheTag(toUrl('message', {id: data.key}), data.key, ), ['h3', apply('avatar', {id: data.value.content.attendee.link}), data.value.content.attendee.remove ? 'is not attending' : 'is attending'], ['div.EmbeddedMessage', apply('gatherings/event', {id: data.value.content.about, embed: true}), ] ] })(sbot)) use('all', function (opts, apply, req) { console.log(opts) return pull( sbot.query.read(u.createQuery(Object.assign({ type: 'gathering'}, opts))), // sbot.messagesByType({ // type: 'gathering', // limit: 10, // reverse: true // }), pull.map(function (e) { return apply('gatherings/event', {id: e.key, private: true}) }) ) }) use.map('messages', 'gathering', 'event') use.map('messages', 'about', 'about') // use.list(' } }