Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
ISPConfig
ISPConfig 3
Commits
efca2797
Commit
efca2797
authored
Nov 16, 2020
by
Marius Burkard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
- added method onAfterDatalogSave
- move update of spamfilter users to after datalog update
parent
edf105af
Pipeline
#6425
passed with stage
in 8 minutes and 19 seconds
Changes
2
Pipelines
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
20 additions
and
15 deletions
+20
-15
interface/lib/classes/tform_actions.inc.php
interface/lib/classes/tform_actions.inc.php
+6
-5
interface/web/mail/spamfilter_policy_edit.php
interface/web/mail/spamfilter_policy_edit.php
+14
-10
No files found.
interface/lib/classes/tform_actions.inc.php
View file @
efca2797
...
...
@@ -141,6 +141,8 @@ class tform_actions {
$app
->
tform
->
datalogSave
(
'UPDATE'
,
$this
->
id
,
$this
->
oldDataRecord
,
$new_data_record
);
unset
(
$new_data_record
);
unset
(
$old_data_record
);
$this
->
onAfterDatalogSave
();
}
if
(
$_REQUEST
[
"next_tab"
]
==
''
)
{
...
...
@@ -222,6 +224,7 @@ class tform_actions {
$new_data_record
=
$app
->
tform
->
getDataRecord
(
$this
->
id
);
$app
->
tform
->
datalogSave
(
'INSERT'
,
$this
->
id
,
array
(),
$new_data_record
);
unset
(
$new_data_record
);
$this
->
onAfterDatalogSave
(
true
);
}
...
...
@@ -264,21 +267,19 @@ class tform_actions {
}
function
onBeforeUpdate
()
{
global
$app
,
$conf
;
}
function
onBeforeInsert
()
{
global
$app
,
$conf
;
}
function
onAfterUpdate
()
{
global
$app
,
$conf
;
}
function
onAfterInsert
()
{
global
$app
,
$conf
;
}
function
onAfterDatalogSave
(
$insert
=
false
)
{
}
/**
* Function called on data insert or update error
...
...
@@ -297,7 +298,7 @@ class tform_actions {
*/
function
onDelete
()
{
global
$app
,
$conf
,
$list_def_file
,
$tform_def_file
;
// Check CSRF Token
$app
->
auth
->
csrf_token_check
(
'GET'
);
...
...
interface/web/mail/spamfilter_policy_edit.php
View file @
efca2797
...
...
@@ -49,7 +49,9 @@ $app->uses('tpl,tform,tform_actions');
$app
->
load
(
'tform_actions'
);
class
page_action
extends
tform_actions
{
private
$record_has_changed
=
false
;
function
onShowNew
()
{
global
$app
;
...
...
@@ -87,30 +89,32 @@ class page_action extends tform_actions {
parent
::
onSubmit
();
}
function
onAfterUpdate
()
{
global
$app
;
$record_has_changed
=
false
;
$this
->
record_has_changed
=
false
;
foreach
(
$this
->
dataRecord
as
$key
=>
$val
)
{
if
(
isset
(
$this
->
oldDataRecord
[
$key
])
&&
@
$this
->
oldDataRecord
[
$key
]
!=
$val
)
{
// Record has changed
$record_has_changed
=
true
;
$
this
->
record_has_changed
=
true
;
}
}
}
if
(
$record_has_changed
){
function
onAfterDatalogSave
(
$insert
=
false
)
{
global
$app
;
if
(
!
$insert
&&
$this
->
record_has_changed
){
$spamfilter_users
=
$app
->
db
->
queryAllRecords
(
"SELECT * FROM spamfilter_users WHERE policy_id = ?"
,
intval
(
$this
->
id
));
if
(
is_array
(
$spamfilter_users
)
&&
!
empty
(
$spamfilter_users
)){
foreach
(
$spamfilter_users
as
$spamfilter_user
){
$app
->
db
->
datalogUpdate
(
'spamfilter_users'
,
$spamfilter_user
,
'id'
,
$spamfilter_user
[
"id"
],
true
);
// check if this is an email domain
if
(
substr
(
$spamfilter_user
[
'email'
],
0
,
1
)
==
'@'
)
{
$domain
=
substr
(
$spamfilter_user
[
'email'
],
1
);
$forwardings
=
$app
->
db
->
queryAllRecords
(
"SELECT * FROM mail_forwarding WHERE source LIKE ? OR destination LIKE ?"
,
"%@"
.
$domain
,
"%@"
.
$domain
);
// Force-update aliases and forwards
if
(
is_array
(
$forwardings
))
{
foreach
(
$forwardings
as
$rec
)
{
...
...
@@ -118,7 +122,7 @@ class page_action extends tform_actions {
}
}
}
}
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment