Commit Graph

34 Commits

Author SHA1 Message Date
Guo Xiang Tan eb6575fd44 Fix plugin after I broke it while refactoring. 2017-10-03 22:49:19 +08:00
Guo Xiang Tan 44ade676e1 Fix JS tests. 2017-10-03 18:11:58 +08:00
Guo Xiang Tan f836047f90 REFACTOR: Clean up code in plugin. 2017-10-03 17:42:07 +08:00
David Taylor 645c21f2f7 Correct eslint fails 2017-08-21 16:46:43 +01:00
David Taylor d13bf5409d Improve QUnit tests for admin interface 2017-08-14 16:02:43 +03:00
David Taylor 4932c078ed Correct eslint offences 2017-08-02 11:33:50 +01:00
David Taylor 7c3f58de41 Update display of group rules in admin UI 2017-08-01 20:12:42 +01:00
David Taylor 209daf7801 Add group messages support to admin UI, and add a ‘type’ field for further improvements 2017-08-01 15:20:00 +01:00
David Taylor d437634f61 Move rule editing into a modal dialog 2017-07-31 17:09:21 +01:00
David Taylor 11c8817ebd Allow enter key to submit admin modal forms 2017-07-28 15:09:04 +01:00
David Taylor 2275793f6c Allow fields to be hidden from channel list (still visible in edit modal). 2017-07-28 14:15:53 +01:00
David Taylor 2d7f25d7e6 Add support for chat transcripts
(still needs to be implemented by providers)
2017-07-24 16:13:53 +01:00
David Taylor 5d18e1e444 Update language strings for new error message 2017-07-18 23:15:56 +01:00
David Taylor c5fdebd1bc Store errors per-channel rather than per-rule, and update UI to match 2017-07-18 23:08:06 +01:00
David Taylor 97c4592950 Display provider-specific data for each channel in the UI 2017-07-18 21:21:09 +01:00
David Taylor 2772856201 Update qunit tests
Have removed a lot of them until the UI is finalised, so as not to waste time constantly updating them.
2017-07-18 20:42:00 +01:00
David Taylor bdb81191d7 New admin interface for improved channel definitions 2017-07-18 16:17:03 +01:00
David Taylor e85657181c Add qunit acceptance tests for admin interface 2017-07-11 15:37:44 +01:00
David Taylor 95dd6bc09c Add error handling to the slack API requests, and associated tests 2017-07-07 11:23:25 +01:00
David Taylor aaaffdf371 Add ‘send test message’ functionality to the admin interface 2017-07-04 23:35:45 +01:00
David Taylor d97d35fd0d Handle errors on trigger_notification
Providers can define their own errors, and these are presented in the user interface. e.g. Slack can define an error that says “That channel doesn’t exist”.
Errors in the UI disappear once a message has been sent successfully, or the rule is edited.
2017-07-04 19:37:56 +01:00
David Taylor 4be010fd07 Allow providers to specify a regex that the channel identifier is checked against during validation 2017-07-04 00:14:01 +01:00
David Taylor 444e380ca1 Tidy up admin user interface 2017-07-03 22:11:17 +01:00
David Taylor 1c416d5a81 Allow providers to be disabled, and tidy up translations 2017-07-03 15:53:26 +01:00
David Taylor 984211e9ce Fix javascript imports after plugin rename 2017-07-03 12:18:30 +01:00
David Taylor 8d70b4ad46 Allow add, edit & delete in the admin UI 2017-06-29 20:19:40 +01:00
David Taylor 61caca3c5b Use new DiscourseChat::Rule model throughout the backend code 2017-06-29 17:50:54 +01:00
David Taylor 8b1a065e3d Style categories in list to match rest of Discourse 2017-06-29 13:28:49 +01:00
David Taylor 304d8f962f Refresh the list of rules when the modal dialog closes 2017-06-29 12:56:48 +01:00
David Taylor 8e0bec6e6f Use RestModel and buildPluginAdapter to deal with communication of data models between client and server 2017-06-28 22:32:02 +01:00
David Taylor e067f8611d Add modal dialog for editing rules.
Currently non-functional, work in progress
2017-06-28 18:04:21 +01:00
David Taylor d8e5494d4c Add (currently read-only) UI to the admin panel, displaying all existing rules. Dynamic routes created for each registered provider. 2017-06-28 15:12:37 +01:00
David Taylor 02692cf100 Added filtering logic for multiple providers, along with many RSpec tests.
General structure of the filter rules is taken from discourse-slack-official, but re-written to be more robust and easier to understand.
2017-06-27 19:43:29 +01:00
David Taylor 3967e2cd91 Created basic system to allow multiple integrations to register themselves, creating a separate tab in the admin interface for each one. 2017-06-26 19:19:50 +01:00