diff --git a/interface/web/tools/lib/lang/en_resync.lng b/interface/web/tools/lib/lang/en_resync.lng
index f4cbf0d7fc7ce9f3faeab69ba3bfbd6cbeae1776..b01afa2c3fae1fd9aa07c833e3ca2af1074922b3 100644
--- a/interface/web/tools/lib/lang/en_resync.lng
+++ b/interface/web/tools/lib/lang/en_resync.lng
@@ -8,6 +8,7 @@ $wb['resync_cron_txt'] = 'Resync cronjobs';
$wb['resync_db_txt'] = 'Resync clientdb config';
$wb['resync_mailbox_txt'] = 'Resync Mailboxes';
$wb['resync_dns_txt'] = 'Resync DNS records';
+$wb['resync_client_txt'] = 'Resync Client records';
$wb['btn_start_txt'] = 'Start';
$wb['btn_cancel_txt'] = 'Cancel';
?>
\ No newline at end of file
diff --git a/interface/web/tools/resync.php b/interface/web/tools/resync.php
index a02ac9f11621c2894e8fa85bfe6f980e27d73181..1191585ff553e6d02c45d035e9e5d6f3231b2b2a 100644
--- a/interface/web/tools/resync.php
+++ b/interface/web/tools/resync.php
@@ -106,6 +106,16 @@ if(isset($_POST['resync_cron']) && $_POST['resync_cron'] == 1) {
//* Resyncing Databases
if(isset($_POST['resync_db']) && $_POST['resync_db'] == 1) {
+ $db_table = 'web_database_user';
+ $index_field = 'database_user_id';
+ $sql = "SELECT * FROM ".$db_table." WHERE 1";
+ $records = $app->db->queryAllRecords($sql);
+ if(is_array($records)) {
+ foreach($records as $rec) {
+ $app->db->datalogUpdate($db_table, $rec, $index_field, $rec[$index_field], true);
+ $msg .= "Resynced Database user: ".$rec['database_user'].'
';
+ }
+ }
$db_table = 'web_database';
$index_field = 'database_id';
$sql = "SELECT * FROM ".$db_table." WHERE active = 'y'";
@@ -144,6 +154,16 @@ if(isset($_POST['resync_mailbox']) && $_POST['resync_mailbox'] == 1) {
$msg .= "Resynced Mailbox: ".$rec['email'].'
';
}
}
+ $db_table = 'mail_forwarding';
+ $index_field = 'forwarding_id';
+ $sql = "SELECT * FROM ".$db_table;
+ $records = $app->db->queryAllRecords($sql);
+ if(is_array($records)) {
+ foreach($records as $rec) {
+ $app->db->datalogUpdate($db_table, $rec, $index_field, $rec[$index_field], true);
+ $msg .= "Resynced Alias: ".$rec['source'].'
';
+ }
+ }
}
//* Resyncing dns zones
@@ -169,6 +189,31 @@ if(isset($_POST['resync_dns']) && $_POST['resync_dns'] == 1) {
}
+//* Resyncing Clients
+if(isset($_POST['resync_client']) && $_POST['resync_client'] == 1) {
+ $tform_def_file = "form/client.tform.php";
+ $app->uses('tpl,tform,tform_actions');
+ $app->load('tform_actions');
+
+ $db_table = 'client';
+ $index_field = 'client_id';
+ $sql = "SELECT * FROM ".$db_table;
+ $records = $app->db->queryAllRecords($sql);
+ if(is_array($records)) {
+ foreach($records as $rec) {
+ $app->db->datalogUpdate($db_table, $rec, $index_field, $rec[$index_field], true);
+ $tmp = new tform_actions;
+ $tmp->id = $rec[$index_field];
+ $tmp->dataRecord = $rec;
+ $tmp->oldDataRecord = $rec;
+ $app->plugin->raiseEvent('client:client:on_after_update', $tmp);
+ $msg .= "Resynced Client: ".$rec['contact_name'].'
';
+ unset($tmp);
+ }
+ }
+}
+
+
$app->tpl->setVar('msg', $msg);
$app->tpl->setVar('error', $error);
diff --git a/interface/web/tools/templates/resync.htm b/interface/web/tools/templates/resync.htm
index f16466053c39203afa696a40eb4b099e55a2f297..57eadb706129df7e885d264eee6cf54968bd200c 100644
--- a/interface/web/tools/templates/resync.htm
+++ b/interface/web/tools/templates/resync.htm
@@ -46,6 +46,12 @@
{tmpl_var name="resync_client_txt"}
+