This commit is contained in:
lesion
2019-03-20 01:52:48 +01:00
parent f44a78c4e9
commit 3fe3a478b7
10 changed files with 29 additions and 21 deletions

View File

@@ -28,6 +28,11 @@ const eventController = {
function match (event, filters) {
// matches if no filter specified
if (!filters) return true
// check for visibility
if (filters.is_visible && filters.is_visible !== event.is_visible) return false
if (!filters.tags && !filters.places) return true
if (!filters.tags.length && !filters.places.length) return true
if (filters.tags.length) {
const m = lodash.intersection(event.tags.map(t => t.tag), filters.tags)
@@ -70,12 +75,11 @@ const eventController = {
const id = req.params.event_id
const event = await Event.findByPk(id)
// insert notification
const notifications = await eventController.getNotifications(event)
await event.setNotifications(notifications)
try {
await event.update({ is_visible: true })
// insert notification
const notifications = await eventController.getNotifications(event)
await event.setNotifications(notifications)
res.send(200)
} catch (e) {
res.send(404)

View File

@@ -21,7 +21,7 @@ const exportController = {
wherePlace.name = places.split(',')
}
const events = await Event.findAll({
order: [['start_datetime', 'ASC']],
// order: [['start_datetime', 'ASC']],
where: { start_datetime: { [Op.gte]: yesterday } },
include: [Comment, {
model: Tag,

View File

@@ -105,11 +105,10 @@ const userController = {
if (req.user) await req.user.addEvent(event)
event = await Event.findByPk(event.id, { include: [User, Tag, Place] })
if (req.user) {
// insert notifications
const notifications = await eventController.getNotifications(event)
await event.setNotifications(notifications)
}
// insert notifications
const notifications = await eventController.getNotifications(event)
await event.setNotifications(notifications)
return res.json(event)
},

View File

@@ -2,14 +2,17 @@ h3 #{event.title}
p Dove: #{event.place.name} - #{event.place.address}
p Quando: #{datetime(event.start_datetime)}
br
<img style="width: 100%" src="#{config.apiurl}/#{event.image_path}" />
if event.image_path
<img style="width: 100%" src="#{config.apiurl}/uploads/#{event.image_path}" />
p #{event.description}
each tag in event.tags
span ##{tag.tag}
br
<a href="#{config.baseurl}/event/#{event.id}">#{config.baseurl}/event/#{event.id}</a>
p #{event.tags.join(', ')}
hr
if to_confirm
p Puoi confermare questo evento <a href="#{config.apiurl}/api/event/confirm/#{event.id}">#{config.apiurl}qui</a>
else
p Puoi confermare questo evento <a href="#{config.baseurl}/admin/confirm/#{event.id}">qui</a>
//- else
p Puoi eliminare queste notifiche <a href="#{confir.apiurl}/api/del_notification/#{notification.remove_code}">qui</a>
<a href="#{config.baseurl}">#{config.title} - #{config.description}</a>

View File

@@ -34,8 +34,8 @@ const Notification = db.define('notification', {
}
})
Notification.findOrCreate({ where: { type: 'mastodon' } })
Notification.findOrCreate({ where: { type: 'admin_email' } })
Notification.findOrCreate({ where: { type: 'mastodon', filters: { is_visible: true } } })
Notification.findOrCreate({ where: { type: 'admin_email', filters: { is_visible: false } } })
const Place = db.define('place', {
name: { type: Sequelize.STRING, unique: true, index: true },