diff --git a/src/config.json b/src/config.json index c0385c4e84fb9cd1c42a6ebf39cd6191ee682bd5..aa3ea512d383ddccacc0716cde112ddbf8b397b0 100644 --- a/src/config.json +++ b/src/config.json @@ -2,11 +2,11 @@ "apiUrl": "https://amiv-api.ethz.ch/", "events": { "keyDescriptors": { - "title_de": "Titel auf Deutsch", - "title_en": "Title in English", - "location": "Location (Ort)", + "title_de": "German Title", + "title_en": "English Title", + "location": "Location", "show_website": "Event is shown on the website", - "priority": "TODO: What type of priority is meant here? Edit priority? Organization prio?", + "priority": "Priority", "time_end": "Ending time", "time_register_end": "Deadline for registration", "time_start": "Starting time", @@ -32,8 +32,8 @@ "tableKeys": [ "title_de", "location", - "time_end", "time_start", + "time_end", "time_register_end", "show_website", "priority" diff --git a/src/events/table.js b/src/events/table.js new file mode 100644 index 0000000000000000000000000000000000000000..5b53297a03f3b6640919fabcb9103f075a163a7f --- /dev/null +++ b/src/events/table.js @@ -0,0 +1,20 @@ +import m from 'mithril'; +import { events as config } from '../config.json'; +import TableView from '../views/tableView'; +import DatalistController from '../listcontroller'; + + +export default class EventTable { + constructor() { + this.ctrl = new DatalistController('events', {}, config.tableKeys); + } + + view() { + return m(TableView, { + controller: this.ctrl, + keys: config.tableKeys, + titles: config.tableKeys.map(key => config.keyDescriptors[key] || key), + onAdd: () => { m.route.set('/newevent'); }, + }); + } +} diff --git a/src/index.js b/src/index.js index a5d62410d149795452ce231e8870b8a6e82776c4..b7f4ff73486e9d1e5031e677de466dd068ceb52c 100644 --- a/src/index.js +++ b/src/index.js @@ -3,7 +3,8 @@ import LoginScreen from './login'; import TableView from './views/tableView'; import { UserModal, UserTable, NewUser } from './userTool'; import { MembershipView } from './membershipTool'; -import { EventTable, NewEvent, EventModal } from './eventTool'; +import { NewEvent, EventModal } from './eventTool'; +import EventTable from './events/table'; import Sidebar from './sidebar'; // import AnnounceTool from './announceTool'; import './style';