Commit Graph

746 Commits

Author SHA1 Message Date
David Remer
3ae7399721 Introduce ProductsSubject
[MAILPOET-4934]
2023-05-15 08:19:19 +02:00
Jan Jakes
4ad01230f8 Improve timezone property and function naming
[MAILPOET-5000]
2023-05-08 13:58:31 +02:00
Jan Jakes
2a38e639db Implement datetime filter
[MAILPOET-5000]
2023-05-08 13:58:31 +02:00
Jan Jakes
607e193c0d Add datetime field to subscriber subject
[MAILPOET-5000]
2023-05-08 13:58:31 +02:00
Jan Jakes
b45e105cb4 Evaluate global filter operator
[MAILPOET-5218]
2023-05-04 14:34:11 +02:00
Jan Jakes
c40cb47928 Evaluate filter group operators (and/or)
[MAILPOET-5218]
2023-05-04 14:34:11 +02:00
Jan Jakes
6e32f57275 Add missing value to subscriber status field
[MAILPOET-5187]
2023-05-01 12:42:35 +02:00
Jan Jakes
2da3e08c09 Implement enum filter
[MAILPOET-5187]
2023-05-01 12:42:35 +02:00
Jan Jakes
de0199421c Implement integer filter
[MAILPOET-4624]
2023-05-01 12:42:35 +02:00
Jan Jakes
94e3c0e391 Implement number filter
[MAILPOET-4624]
2023-05-01 12:42:35 +02:00
Jan Jakes
3f923ffce9 Implement boolean filter
[MAILPOET-5001]
2023-05-01 12:42:35 +02:00
Jan Jakes
ee0c3f4bbf Add one field for each new filter type (number, integer, boolean, string)
[MAILPOET-4624]
[MAILPOET-5001]
[MAILPOET-5187]
2023-05-01 12:42:35 +02:00
David Remer
b91d96deab Fix doctype to reflect the array key can be an integer
[MAILPOET-5267]
2023-04-26 09:56:08 +02:00
David Remer
6a6d158785 Cast steps array key to string
[MAILPOET-5267]
2023-04-26 09:56:08 +02:00
Jan Jakes
f75620a7c1 Add IDs for filter groups and filter definitions
[MAILPOET-5257]
2023-04-24 10:42:28 +02:00
Jan Jakes
34ca96d007 Introduce filters data type and filter groups to enable saving and/or filter combinations
[MAILPOET-5257]
2023-04-24 10:42:28 +02:00
Jan Jakes
a6fcc60de3 Add "of" preposition to matches any/all/none
[MAILPOET-5257]
2023-04-24 10:42:28 +02:00
Jan Jakes
69f21814e3 Rename "transactional" email type to "automation_transactional"
[MAILPOET-5258]
2023-04-24 09:54:08 +03:00
Jan Jakes
963dd083b6 Add subscriber segments field, comment out other fields for now
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
f6a59647d5 Implement filter args validation
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
0157feb508 Remove no longer used exception
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
abe44ca9f8 Implement filter handler to apply filters on field values during automation run
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
9d99872ef7 Implement field value loading logic
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
7d6cfd911e Pass subject payload to field factories
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
7f9faf1d99 Use automation WP helpers
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
ae828b9ac4 Do not load all possible subjects eagerly
With subject transformers the amount of possible subjects will grow,
and preloading even those that won't be used may result in performance
issues, and unnecessary errors (e.g., caused by 3rd party transformers).

[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
54f5addca9 Extract subject loading before automation processing loop
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
70dbfc28b7 Early return when no active automation matches given trigger
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
4ff9306826 Add filter management into automation registry
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
56b551dc16 Implement enum array filter
[MAILPOET-4946]
[MAILPOET-5002]
2023-04-20 16:32:32 +02:00
Jan Jakes
370f3082de Implement string filter
[MAILPOET-4946]
[MAILPOET-4419]
2023-04-20 16:32:32 +02:00
Jan Jakes
52be5ca3f9 Add interface for filter definition
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
eaa1a4aa69 Save automation filters to the database
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
014db1e695 Add step filters schema
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
0bf9e75dd0 Automatically register fields exposed from subjects
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
209ede594e Add fields management to automation registry
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
Jan Jakes
97e40955ab Add fields to subject interface
[MAILPOET-4946]
2023-04-20 16:32:32 +02:00
David Remer
430c9b72f7 Exclude emails of wrong type
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
0a8bcaf484 Do not allow to send emails to bounced subscribers
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
343b91a980 Remove type specification 2023-04-17 13:59:39 +02:00
David Remer
46f888a30b Let transactional emails pass
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
ac65c138ee Set transactional email type when email is transactional
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
b303111d3d Add Automation to AUTOMATION_STEP_BEFORE_SAVE action
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
David Remer
a3ebd0695b Introduce Order to Segment transformer
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
David Remer
9738bd3ecd Introduce general step error
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
David Remer
328b5b1475 Remove private getSubjectKeysForSingleKey method
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
David Remer
e2777aebc3 Use plural for array of subject transformers
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
David Remer
19b5abc171 Use array_keys $all to get the keys
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
David Remer
d6760cb113 Use array
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00
David Remer
0d12c05fb9 Improve readability
[MAILPOET-4935]
2023-03-30 12:21:25 +02:00