Domain Settings: Implement ability to Duplicate settings.
This commit is contained in:
@@ -249,22 +249,28 @@ if (!class_exists('domain_settings')) {
|
||||
$domain_setting_value = generate_password();
|
||||
}
|
||||
|
||||
// check if exists
|
||||
$sql = "select domain_setting_uuid from v_domain_settings ";
|
||||
$sql .= "where domain_uuid = :domain_uuid ";
|
||||
$sql .= "and domain_setting_category = :domain_setting_category ";
|
||||
$sql .= "and domain_setting_subcategory = :domain_setting_subcategory ";
|
||||
$sql .= "and domain_setting_name = :domain_setting_name ";
|
||||
$sql .= "and domain_setting_name <> 'array' ";
|
||||
$parameters['domain_uuid'] = $this->domain_uuid_target;
|
||||
$parameters['domain_setting_category'] = $domain_setting_category;
|
||||
$parameters['domain_setting_subcategory'] = $domain_setting_subcategory;
|
||||
$parameters['domain_setting_name'] = $domain_setting_name;
|
||||
$database = new database;
|
||||
$target_domain_setting_uuid = $database->select($sql, $parameters, 'column');
|
||||
//target is different domain, check if exists
|
||||
if ($this->domain_uuid_target != $this->domain_uuid) {
|
||||
$sql = "select domain_setting_uuid from v_domain_settings ";
|
||||
$sql .= "where domain_uuid = :domain_uuid ";
|
||||
$sql .= "and domain_setting_category = :domain_setting_category ";
|
||||
$sql .= "and domain_setting_subcategory = :domain_setting_subcategory ";
|
||||
$sql .= "and domain_setting_name = :domain_setting_name ";
|
||||
$sql .= "and domain_setting_name <> 'array' ";
|
||||
$parameters['domain_uuid'] = $this->domain_uuid_target;
|
||||
$parameters['domain_setting_category'] = $domain_setting_category;
|
||||
$parameters['domain_setting_subcategory'] = $domain_setting_subcategory;
|
||||
$parameters['domain_setting_name'] = $domain_setting_name;
|
||||
$database = new database;
|
||||
$target_domain_setting_uuid = $database->select($sql, $parameters, 'column');
|
||||
|
||||
$action = is_uuid($target_domain_setting_uuid) ? 'update' : 'add';
|
||||
unset($sql, $parameters);
|
||||
$action = is_uuid($target_domain_setting_uuid) ? 'update' : 'add';
|
||||
unset($sql, $parameters);
|
||||
}
|
||||
//target is same domain, duplicate
|
||||
else {
|
||||
$action = 'add';
|
||||
}
|
||||
|
||||
// fix null
|
||||
$domain_setting_order = $domain_setting_order != '' ? $domain_setting_order : null;
|
||||
|
||||
Reference in New Issue
Block a user