You need to execute the SQL commands (at least your egw_ctrl - sql commands)
see some line below:
($rs, $rdata) = doSQL($sql);
but I don't know why your version does not reset the status to "ok"...
I'd do it maybe like this:
Code:
... line 3883... (version from may 29)
if ($dmn_status eq 'toadd') {
$rs = dmn_add_data($entry);
$timestamp = time();
if ($rs == 0 && set_dmn_egw($dmn_id)) {
$sql = "update domain set domain_status='ok' where domain_id = $dmn_id";
} else {
my ($sub_name, $msg) = split(/$main::el_sep/, pop_el(\@main::el));
$msg =~ s/\'/\\\'/g;
$sql = "update domain set domain_status='$sub_name | $msg' where domain_id = $dmn_id;";
}
($rs, $rdata) = doSQL($sql);
return $rs if ($rs != 0);
...
and then create your own function (set_dmn_egw) which do the egw-thing...
Your function should be executed if ($rs == 0) and if your function does ends with a "true" then the status should be set to 'ok' - else you can setup a msg...
Hope you can manage this...
/Joximu