Commit graph

282 commits

Author SHA1 Message Date
Tomas Bures
739b9452de UI for basic import and preparation phase of CSV. 2018-08-26 11:46:12 +02:00
Tomas Bures
cd798b5af7 Preparation of merge with master 2018-08-06 20:24:51 +05:30
Tomas Bures
6648028270 First part of the UI for file import (upload of csv file to the server) 2018-08-05 10:17:05 +05:30
Tomas Bures
965f30cea7 Editing of triggers seems to work.
Some further fixes.
2018-08-04 15:00:37 +05:30
Tomas Bures
ffc26a4836 Migration and model for triggers.
Not tested.
2018-08-03 21:37:46 +05:30
Tomas Bures
7b46c4b4b0 Editing of campaigns seems to work 2018-08-03 17:05:55 +05:30
Tomas Bures
32cad03f4f Improved files to distinguish subtypes (allows multiple different files tabs at a entity)
Attachments via the improved files
Block thumbnails at mosaico templates as a separate files tab
Some fixes

All not tested yet
2018-08-02 15:49:27 +05:30
Tomas Bures
ade0fc87f2 work in progress on campaign edit 2018-08-01 15:30:20 +05:30
Tomas Bures
0e0fb944e3 First attempt on campaign editing. Misses attachments. Untested. 2018-07-31 10:04:28 +05:30
Tomas Bures
ee786bc8ad Fixes in migration of templates and campaigns from Mailtrain ver 1 2018-07-22 15:02:43 +05:30
Tomas Bures
189638364c Added migration for campaigns 2018-07-22 00:01:28 +05:30
Tomas Bures
e85c707973 Some small updates coming from IVIS 2018-07-18 18:41:18 +01:00
Tomas Bures
446d75ce71 Support for custom block thumbnails in Mosaico templates 2018-05-13 22:40:34 +02:00
Tomas Bures
7788b0bc67 Fixed sandbox. Multiple tabs work now.
WiP on selectable mosaico templates.

TODO: Make files always point to trusted URL, such that we don't have to rebase them. They are public anyway. The same goes for mosaico endpoints: /mosaico/templates and /mosaico/img
2018-05-09 04:07:01 +02:00
Tomas Bures
a4ee1534cc WiP on mailers 2018-04-29 18:13:40 +02:00
Tomas Bures
e97415c237 Some bugfixes. The configuration management should be now OK. 2018-04-22 20:29:35 +02:00
Tomas Bures
c12efeb97f Configuration split to lists, send configurations and server config.
This is before testing.
2018-04-22 17:33:43 +02:00
Tomas Bures
4fce4b6f81 WiP updates 2018-04-22 09:00:04 +02:00
Tomas Bures
6706d93bc1 Basic support for Mosaico templates.
TODO:
- Allow choosing a mosaico template in a mosaico-based template
- Integrate the custom mosaico templates with templates (endpoint for retrieving a mosaico template, replacement of URL_BASE and PLACEHOLDER tags
- Implement support for MJML-based Mosaico templates
- Implement support for MJML-based templates
- Implement support for GrapeJS-based templates
2018-04-02 19:05:22 +02:00
Tomas Bures
7b5642e911 Basic support for Mosaico-based email templates. 2018-04-02 11:58:32 +02:00
Tomas Bures
b5cdf57f72 Files can be added to templates and managed in a dedicated "Files" view.
Mosaico integration in progress. The files seem to be working for Mosaico.
2018-03-24 23:55:50 +01:00
Tomas Bures
c85f2d4440 Obsoleting some old files
Transition to SPA-style client
Basis for Mosaico template editor
2018-02-25 20:54:15 +01:00
Tomas Bures
7750232716 Merge remote-tracking branch 'upstream/master' into development 2018-02-24 23:05:01 +01:00
Tomas Bures
ba75623f86 Integrated CKEditor for templates. We might need to move it to a sandbox later to make it secure. 2018-02-24 21:59:00 +01:00
Tomas Bures
508d6b3b2f Beginning of work on templates. 2018-02-13 23:50:13 +01:00
Tomas Bures
e9165838dc Subscription/unsubscription seems to work. 2018-01-27 16:37:14 +01:00
Tomas Bures
9203b5cee7 Blacklist functionality
Some API improvements
2017-09-17 16:36:23 +02:00
Tomas Bures
c343e4efd3 Rendering of custom fields in subscription list 2017-08-22 08:15:13 +02:00
Tomas Bures
6f5b50e932 WiP on admin interface for subscribers.
TODO:
- format data based on field info in listDTAjax
- integrate with the whole subscription machinery
2017-08-20 23:50:00 +02:00
Tomas Bures
e6bd9cd943 Added ability to delete newly created invalid rule. 2017-08-19 17:26:44 +02:00
Tomas Bures
42338b0afa Beta of segments
UI is not React-based
Segments functionality extended to allow hierarchical rules, negation and more comparisons (regexp).
Added enumerations (see #217)
2017-08-19 15:58:23 +02:00
Tomas Bures
f3ff89c536 WiP on segments 2017-08-19 15:12:22 +02:00
Tomas Bures
6cc34136f5 WiP on segments. 2017-08-18 21:04:31 +02:00
Tomas Bures
d0a714b3d4 Snapshot before refactoring the rule settings to a separate component 2017-08-17 23:32:49 +02:00
Tomas Bures
6fbbe9a497 Stubs for adding and deleting a rule 2017-08-16 21:41:36 +02:00
Tomas Bures
e5cf2962dc Theming for Segment options 2017-08-16 20:48:51 +02:00
Tomas Bures
baf9f61465 This is snapshot of custom node renderer for react-sortable-tree.
It likely won't be needed however.
2017-08-16 16:10:30 +02:00
Tomas Bures
6a7dab52eb Snapshot of incomplete DnD extension to tree.js.
It however is rather unintuitive how nodes can be put to the end. Dropping this direction in favor of https://github.com/fritz-c/react-sortable-tree
2017-08-16 12:10:00 +02:00
Tomas Bures
0bfb30817b work in progress on segments
some cleanup of models - handling dependencies in delete
2017-08-14 22:53:29 +02:00
Tomas Bures
b23529a75b Some initial files for management of segments 2017-08-13 20:24:17 +02:00
Tomas Bures
e73c0a8b28 Work in progress on subscriptions 2017-08-13 20:11:58 +02:00
Tomas Bures
d9211377dd Options always shown below the group no matter how the list is sorted
XSS protection for tables and trees
2017-08-13 11:32:31 +02:00
Tomas Bures
e230510b72 work in progress on custom fields 2017-08-13 01:11:07 +02:00
Tomas Bures
19f0c1bd97 work in progress on custom fields 2017-08-12 00:41:02 +02:00
Tomas Bures
60d3875c00 Fix of the previous 2017-08-11 18:24:49 +02:00
Tomas Bures
850e563362 Secondary nav is shown only if there are 2 or more items. 2017-08-11 18:22:22 +02:00
Tomas Bures
602364caae Fluid layout
Reworked routing and breadcrumb mechanism. It allows resolved parameters in paths, which allows including names of entities in the breadcrumb.
Secondary navigation which is aware of permissions.
2017-08-11 18:16:44 +02:00
Tomas Bures
86fce404a9 work in progress on custom fields 2017-08-11 08:51:30 +02:00
Tomas Bures
361af18384 Custom forms list and CUD. 2017-07-30 16:22:07 +03:00
Tomas Bures
f6e1938ff9 Lists list and CUD
Custom forms list
Updated DB schema (not yet implemented in the server, which means that most of the server is not broken).
- custom forms are independent of a list
- order and visibility of fields is now in custom_fields
- first_name and last_name has been turned to a regular custom field
2017-07-29 22:42:07 +03:00
Tomas Bures
34823cf0cf Seeming working (though not very thoroughly tested) granular access control for reports, report templates and namespaces.
Should work both in local auth case and LDAP auth case.
2017-07-27 22:41:25 +03:00
Tomas Bures
89256d62bd WiP on permissions
Table of shares per user
2017-07-27 17:11:22 +03:00
Tomas Bures
89c9615592 WiP on permissions
Doesn't run. This commit is just to backup the changes.
2017-07-26 22:42:05 +03:00
Tomas Bures
5df444f641 Computation of permissions seems to somehow work. 2017-07-25 02:14:17 +03:00
Tomas Bures
e7bdfb7745 Namespace selection for users, reports and report-templates 2017-07-24 14:43:32 +03:00
Tomas Bures
4822a50d0b Share report template functionality 2017-07-24 07:03:32 +03:00
Tomas Bures
e6ad0e239e Typo fix 2017-07-14 07:54:06 +02:00
Tomas Bures
d63eed9ca9 Reports ported to ReactJS and Knex
Note that the interface for the custom JS code inside a report template has changed. It now offers promise-based interface and exposes knex.
2017-07-13 13:27:03 +02:00
Tomas Bures
6d95fa515e CUD operations on reports and report templates seem to work
Execution of reports is TBD
2017-07-11 11:28:44 +02:00
Tomas Bures
38cf3e49c0 DataTables-based dropdown 2017-07-10 17:37:56 +02:00
Tomas Bures
0c860456a6 Fixes in the API doc 2017-07-09 23:39:48 +02:00
Tomas Bures
ad1e4c58f5 Merge branch 'master' of github.com:Mailtrain-org/mailtrain into access
Conflicts:
	views/users/api.hbs
2017-07-09 23:34:03 +02:00
Tomas Bures
3f7b428546 Reports halfway through
Datatable now correctly handles the situation when user is not logged in and access protected resources
2017-07-09 23:16:47 +02:00
Tomas Bures
aba42d94ac Reports halfway through.
Editing report parameters and execution/monitoring of reports is TBD.
2017-07-09 22:38:57 +02:00
Tomas Bures
d4cea46f07 Report templates ported to ReactJS and Knex.
Does not run yet because reports have dependencies on the old report templates.
2017-07-09 15:41:53 +02:00
Tomas Bures
be7da791db LDAP auth seems to work too.
Users completely refactored to ReactJS and Knex
Initial draft of call context passing (for the time being only in users:remove
2017-07-08 21:34:26 +02:00
Tomas Bures
9758b4b104 Local auth seems to work 2017-07-08 18:57:41 +02:00
Tomas Bures
d79bbad575 All about user login
Not runnable at the moment
2017-07-08 15:48:34 +02:00
Tomas Bures
fbb8f5799e React-based /account endpoint for editing a user profile 2017-06-30 16:11:02 +02:00
Tomas Bures
09fe27fe2b Fix - initForm can be used also without arguments if server validation is not needed 2017-06-29 23:36:05 +02:00
Tomas Bures
eb2287f6e9 Release candidate of basic user management - currently only CRUD on users, no permission assignment. 2017-06-29 23:22:33 +02:00
Tomas Bures
c81f5544e6 Added support for Datatables
Added support for ajax-based server side validation (useful for validation of emails, duplicate usernames, etc.)
User form more or less ready in the basic version (i.e. without permission management)
2017-06-21 02:14:14 +02:00
Tomas Bures
1d1355df34 "Delete" action better with browser history (i.e. back button now works correctly with the Delete dialog). 2017-06-09 12:01:01 +02:00
Tomas Bures
ed5b81b6e6 Small changes in the Model dialog logic to make it more React-like. 2017-06-09 09:07:23 +02:00
Tomas Bures
8e54879539 Release candidate of namespace CRUD 2017-06-09 00:23:03 +02:00
Tomas Bures
5b82d3b540 Edit and create seem to more or less work (including selection of the parent). Delete is pending. 2017-06-07 01:13:15 +02:00
Tomas Bures
61893d77f6 Added data mutator to form processing. This allows conversion of data between server and a component (TreeTable in our case). 2017-06-06 00:24:39 +02:00
Tomas Bures
5e4c86f626 Seems that hierarchical error handling works..
TreeTable component seems to work too.
Edit is half-way through. Create / delete are TBD.
2017-06-05 23:59:08 +02:00
Tomas Bures
79ea9e1897 Work in progress on a React-based error reporting mechanism.
The idea is that REST handlers always fail with throwing an Error (subclass of InteroperableError). The InteroperableError contains type and data field which are JSON-serialized and sent to client. It's up to the client to interpret the error and choose an appropriate way to present it.
2017-06-05 00:52:59 +02:00
Tomas Bures
4504d539c5 Some basic components for building forms. 2017-06-04 13:16:29 +02:00
Tomas Bures
d0824fe724 Updates 2017-06-03 07:49:59 +02:00
Tomas Bures
4f52b571c9 Some bits for ReactJS-based client. 2017-05-28 18:49:00 +02:00