Andris Reinman
75f34905d8
Merge pull request #368 from HLFH/master
...
Custom date fields will support dates before 1970
2018-01-09 12:37:50 +02:00
Georgios Anastasiou
678e6a5d59
Fixed to pass test
2018-01-08 13:47:28 +02:00
Georgios Anastasiou
c085faa157
Implemented api for searching lists that have parameter email as a subscriber
2018-01-08 13:03:38 +02:00
Gaspard d'Hautefeuille
bc73a0df0c
Custom date fields will support dates before 1970
...
TIMESTAMP replaced by DATETIME
2018-01-03 09:19:54 +00:00
Brenton Durkee
56fedc6ee9
Fix lint errors
2017-10-17 19:16:19 -04:00
Brenton Durkee
0cbec006b4
Adds duplicate button to Template edit form.
...
Adds duplicate model function for Template that gets a Template by id
and creates a new Template with the same data.
2017-10-16 11:29:57 -04:00
Melwin Kieffer
65923c0c05
add: LDAP options bindUser
and bindPassword
...
To be able to use a different user for bind requests,
which can be required by some LDAP security strategy.
2017-10-10 16:30:40 +02:00
witzig
0a369e2475
Fix grouped custom fields not saving deselected values #333
2017-10-05 13:39:53 +02:00
witzig
ebac58e686
Add comment
2017-09-29 00:13:32 +02:00
witzig
c5b481a266
Add option to preserve unsubscribed status on list import, #325
2017-09-28 00:55:19 +02:00
witzig
ce2ed26fc9
findMailByResponse now searches in latest campaigns first
...
This should be more efficient especially if there’re many campaigns.
2017-07-13 22:29:55 +02:00
Andris Reinman
091c00a218
Merge pull request #269 from losacno/master
...
Check for locally requeued messages in postfix
2017-07-10 18:22:04 +03:00
Luc LosCan
f90e67d775
Save new queueId/response on locally requeued messages
2017-07-10 12:13:17 +02:00
Bruce Mackintosh
191dc7b541
Changed the trigger treshold
value from 6 hours to 24 hours, so that dates stored via the API as 00:00:00 are correctly picked up and added to the queue.
2017-07-03 19:44:45 +01:00
witzig
5647dd040d
Updated subscription-mail-helper.js - Don't wait for mailer to finish.
...
Note: When using encryptionKeys, confirmation redirects feel a bit
sluggish. This could probably be 'improved' by calling sendMail via
setTimout or fixed by moving sendMail to a worker.
2017-06-16 14:28:57 +02:00
witzig
a2ebe8f0f7
Fixed mail-helper.js not calling back when disableConfirmations = true
...
And some refactoring
2017-06-16 02:13:21 +02:00
witzig
830ca4f17f
Satisfy eslint rule no-useless-escape
2017-06-15 21:44:54 +02:00
witzig
2da90b58e4
Satisfy new eslint indentation rule
2017-06-15 21:26:35 +02:00
witzig
4f5c132db4
Fixed bug: Hidden custom fields (for custom forms) losing values when updating preferences.
...
Credits to @flapuente-palbin
2017-06-15 19:11:13 +02:00
Krzysztof Jablonski
71ac4c64a5
Avoid using > with „enums”
2017-06-08 14:22:34 +02:00
Krzysztof Jablonski
819fcfb392
Fix typo during refactoring
...
During code refactoring for selectable
unsubscription feature code:
`!campaignId || status > 2` was wrongly refactored
to:
`subscription.status !== Status.SUBSCRIBED`
Link:
a6d25e668b (diff-5af9fe5dfae76c093530c92e3d7404e1R496)
2017-06-08 14:06:35 +02:00
witzig
5aa6dff743
Fixed HTML templates for custom JSON fields #192
2017-06-03 00:13:03 +02:00
witzig
cec227d688
Fixed Merge Tags for custom date fields
2017-06-02 03:05:19 +02:00
witzig
466bf225a3
Fixed Merge Tags #206 #236
2017-06-02 00:24:26 +02:00
witzig
cff908887f
Fixed throttling and pausing #243
2017-06-01 13:08:45 +02:00
vladimir
1e3fe96825
[bugfix] Blacklisted emails counter not set to 0 on campaign reset
2017-05-27 14:14:32 +02:00
vladimir
25bb4afa80
Merge with upstream
2017-05-27 14:07:56 +02:00
vladimir
59912e3c29
Separate disable opened/clicked tracker to 2 options
2017-05-27 14:04:49 +02:00
Tomas Bures
ccd37ac792
Polishing e2e test API. Added option to parse links and extract parameters from them. Added option to construct parameterizedlinks in "navigate".
2017-05-23 19:34:01 +02:00
Tomas Bures
62cc881fd4
Merge remote-tracking branch 'upstream/master'
2017-05-18 22:46:53 +02:00
witzig
6c35046ab2
e2e tests (draft)
2017-05-10 01:40:02 +02:00
Tomas Bures
6b92e39112
Some fixes in lists and apis to reflect the changes in subscriptions.
...
Confirmation URLs split per action type. This allows more specific error reporting.
2017-05-06 06:35:32 -04:00
Tomas Bures
11990d62b2
Merge branch 'master' of github.com:Mailtrain-org/mailtrain
...
Conflicts:
languages/de_DE.po
2017-05-04 17:58:55 -04:00
Tomas Bures
a6d25e668b
Release candidate of the selectable unsubscription
...
Implemented the resubscription process - i.e. pre-filling in the form when the subscription link is clicked in the unsubscription notice.
2017-05-04 17:42:46 -04:00
witzig
408db13fd4
Updated RSS merge tag reference
2017-05-03 23:13:05 +02:00
Tomas Bures
bd4961366f
More or less all the functionality for selectable unsubscription process. Not tested yet!
...
Sending emails moved completely to controller. It felt strange to have some emails sent from the controller and some of them from the model.
Confirmations refactored to an independent model that can be potentially used also for other actions that need an email confirmation.
2017-05-03 15:53:34 -04:00
Alejandro Fanjul
92bffd78de
RSS Improvements to allow more template Tags like ([RSS_ENTRY_TITLE], [RSS_ENTRY_DATE], [RSS_ENTRY_LINK], [RSS_ENTRY_CONTENT], [RSS_ENTRY_SUMMARY], [RSS_ENTRY_IMAGE_URL])
2017-05-02 18:38:54 +02:00
Tomas Bures
32e2e61789
Unsubscription is identified by subscriber cid. This effectivelly allows only the recipient of the email to unsubscribe. This addresses issue #221 .
...
I also scraped the "auto" parameter which automatically submits the unsubscription form when the link is clicked in a campaign email. Instead, I introduced the
unsubscription options ONE_STEP, ONE_STEP_WITH_FORM, TWO_STEP, TWO_STEP_WITH_FORM. The options without "_WITH_FORM" shall behave like when called with "auto".
This functionality is to come. Currently it behaves as ONE_STEP_WITH_FORM.
2017-04-30 13:01:22 -04:00
Tomas Bures
3783d7c2ce
Halfway through extending subscriptions by selectable unsubscription process. Also contains changes towards better handling of scenarios when address is already subscribed.
2017-04-30 10:51:47 -04:00
Tomas Bures
92df915a7e
config.user/group used if config.rouser/rogroup is not set
2017-04-27 18:25:05 -04:00
Tomas Bures
7a08ffa596
Fix - reports crashed if the user could not be switched (because mailtrain was not run under root). Now an error is reported.
2017-04-27 18:14:15 -04:00
root
2ac89f3365
Report processor worker refactored to run under another user (nobody) and have its own mysql credentials.
2017-04-27 16:35:53 -04:00
Tomas Bures
418dba7b9f
Work in progress on securing reports.
2017-04-25 22:49:31 +00:00
Tomas Bures
3072632d8d
Fixed eslint errors
2017-04-23 15:24:31 -04:00
Tomas Bures
8237dd5d77
The "Reports" feature seems functional.
...
Some small refactoring (column widths) of rendering tables in Lists, Templates, and Campaigns so that it is the same as Reports.
2017-04-20 19:42:01 -04:00
Tomas Bures
e7d12f1dbc
Halfway through in refactoring the report generation to a separate process running asynchronously of the Express server.
2017-04-17 18:31:01 -04:00
Tomas Bures
2056645023
Added the option to select lists in report.
...
Added an option to generate a CSV report.
2017-04-17 16:30:31 -04:00
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
Tomas Bures
9fdf52674e
Lists and Templates overviews refactored to use ajax. Before the refactoring, they behaved and looked a bit different to the other (Ajax) tables. The main difference in the behavior was in the row numbers (1st column) when sort order was switched. The non-ajax tables rearranged the numbers in the 1st column while the ajax-tables didn't.
...
Some small tweaks in table-helpers to allow selecting which fields are pulled from DB (and how they are renamed).
2017-04-16 03:22:32 -04:00
Tomas Bures
e5190c9b20
Code de-duplication of list and filter methods. The common functionality moved to table-helpers.js
...
This should make developing new table-based views easier.
2017-04-15 08:24:58 -04:00