# # Tasks, previous version of todos # h = require 'maquette' .h bulma = require "./bulma.ls" nmd = require "nano-markdown" TaskCreationModal = require './task-creation-modal.ls' TaskRemovalModal = require './task-removal-modal.ls' # # generic functions # get-previous = (collection, element) -> var previous for item in collection if item == element return previous previous = item get-next = (collection, element) -> var found-element for item in collection if found-element return item if item == element found-element := true Task = (self, project, todod-ws) -> modal = void self.render = -> color = "grey" if self.extra_properties && self.extra_properties.color color = self.extra_properties.color h "div.card.has-background-#{color}" { key: self.id } [ h \div.card-content [ h \div.media [ h \div.media-left [ "LEFT" ] h \div.media-content [ self.title ] h \div.button { onclick: -> modal := TaskCreationModal project, todod-ws, self } [ "Edit" ] h \div.button { onclick: -> modal := TaskRemovalModal project.id, todod-ws, self } [ "X" ] ] h \div.content [ self.description ] ] if modal modal.render! ] self module.exports = Task