Commit graph

20 commits

Author SHA1 Message Date
Tomas Bures
6ba04d7ff4 This is a preview of the Reports functionality.
It allows defining report templates and then create reports based on the templates.
A template defines:
- parameters - to be set in the report (currently only selection of campaigns, in the future to be extended to selection of lists/segments, and selection from pre-defined options)
- data retrieval / processing code (in Javascript)
- rendering template (in Handlebars)

This main functionality is accompanied by a few minor tweaks here and there. Worth notice is the ability to use server-side ajax table s for multi-selection of campaigns. This is meant for reports that compare data across multiple campaigns. This could possibly be even used for some poor man's A/B testing.

Note that the execution of custom JavaScript in the data retrieval / processing code and definition of custom Handlebars templates is a security issue. This should however be OK in the general case once proper user management with granular permissions is in. This is because definition of a report template is anyway such an expert task that it would normally be performed only by admin. Instantiation of reports based on report templates can be then done by any user because this should no longer be any security problem.
2017-04-16 18:09:08 -04:00
Andris Reinman
179e0d5ab3 fixed thrown errors 2017-03-21 10:39:44 +02:00
witzig
b09af60fac Merge branch 'master' into custom-forms-mjml
# Conflicts:
#	lib/tools.js
#	package.json
2017-03-19 13:44:24 +01:00
witzig
2e50fbc8ae Custom Forms 2017-03-19 13:36:57 +01:00
Andris Reinman
ae6affda81 do not allow script tags in description html 2017-03-19 14:22:44 +02:00
Andris Reinman
0879fa412a force template html as html code, not an url or file path
ensure that external resources are not loaded by jsdom
2017-03-19 14:13:01 +02:00
Andris Reinman
9d5fb816c9 Fixes issue with HTML entities 2017-03-19 13:39:34 +02:00
Andris Reinman
37531f2550 Merge branch 'master' of github.com:andris9/mailtrain 2017-03-07 16:31:34 +02:00
Andris Reinman
d25565b6f8 Updated translation support 2017-03-07 16:30:56 +02:00
witzig
a164a7fb40 Moved tracking scripts to partial and made tools.formatMessage() less greedy
The change in tools.formatMessage() prevents stripping CSS like
a[data-foo] and arrays in JS. Thus only replacing mergeTag it knows
about.
2017-03-06 14:52:22 +01:00
witzig
8fdb2840c4 Moved Merge Tag Helpers to helpers.js
… to satisfy ESLint top-level module scope.
2017-03-04 21:50:44 +01:00
witzig
633463108e Merge tag reference abstraction/partial
Perhaps helpers.js would be a more suitable place for
getDefaultMergeTags() and getListMergeTags() … ?
2017-03-04 18:37:41 +01:00
Andris Reinman
50f6c8d101 Reload mailer config once admin updates Mailtrain settings 2016-12-25 17:59:50 +02:00
Andris Reinman
8e5279189a fixed key conversion function 2016-09-09 13:54:44 +03:00
Andris Reinman
b16209f23e Added initial support for trigger based automation 2016-06-22 14:32:15 +03:00
Andris Reinman
0d038f8a06 list clicked subscribers 2016-05-13 15:32:29 +03:00
Andris Reinman
4f2d66c30c Use juice to prepare html messages 2016-05-03 19:21:01 +03:00
Andris Reinman
43b1f1e319 Include campaign links in form fields 2016-04-26 20:29:57 +03:00
Andris Reinman
d9f7d5b1af Rewrite merge tags in links 2016-04-25 16:19:55 +03:00
Andris Reinman
54fa30701e Initial import 2016-04-04 15:36:30 +03:00