Add 3 more variables to device settings for the provision category and make it check default settings with one query rather than multiple making it more efficient.
This commit is contained in:
parent
49ea23507c
commit
9de9ba1391
|
|
@ -101,32 +101,63 @@
|
||||||
$array[$x]['default_setting_value'] = '*97';
|
$array[$x]['default_setting_value'] = '*97';
|
||||||
$array[$x]['default_setting_enabled'] = 'false';
|
$array[$x]['default_setting_enabled'] = 'false';
|
||||||
$array[$x]['default_setting_description'] = '';
|
$array[$x]['default_setting_description'] = '';
|
||||||
|
$x++;
|
||||||
|
$array[$x]['default_setting_category'] = 'provision';
|
||||||
|
$array[$x]['default_setting_subcategory'] = 'line_sip_port';
|
||||||
|
$array[$x]['default_setting_name'] = 'numeric';
|
||||||
|
$array[$x]['default_setting_value'] = '5060';
|
||||||
|
$array[$x]['default_setting_enabled'] = 'true';
|
||||||
|
$array[$x]['default_setting_description'] = '';
|
||||||
|
$x++;
|
||||||
|
$array[$x]['default_setting_category'] = 'provision';
|
||||||
|
$array[$x]['default_setting_subcategory'] = 'line_sip_transport';
|
||||||
|
$array[$x]['default_setting_name'] = 'text';
|
||||||
|
$array[$x]['default_setting_value'] = 'tcp';
|
||||||
|
$array[$x]['default_setting_enabled'] = 'true';
|
||||||
|
$array[$x]['default_setting_description'] = '';
|
||||||
|
$x++;
|
||||||
|
$array[$x]['default_setting_category'] = 'provision';
|
||||||
|
$array[$x]['default_setting_subcategory'] = 'line_register_expires';
|
||||||
|
$array[$x]['default_setting_name'] = 'numeric';
|
||||||
|
$array[$x]['default_setting_value'] = '80';
|
||||||
|
$array[$x]['default_setting_enabled'] = 'false';
|
||||||
|
$array[$x]['default_setting_description'] = '';
|
||||||
|
|
||||||
//iterate and add each, if necessary
|
//get an array of the default settings
|
||||||
foreach ($array as $index => $default_settings) {
|
$sql = "select * from v_default_settings ";
|
||||||
|
$sql .= "where default_setting_category = 'provision' ";
|
||||||
|
$prep_statement = $db->prepare($sql);
|
||||||
|
$prep_statement->execute();
|
||||||
|
$default_settings = $prep_statement->fetchAll(PDO::FETCH_NAMED);
|
||||||
|
unset ($prep_statement, $sql);
|
||||||
|
|
||||||
//add provision default settings
|
//find the missing default settings
|
||||||
$sql = "select count(*) as num_rows from v_default_settings ";
|
$x = 0;
|
||||||
$sql .= "where default_setting_category = 'provision' ";
|
foreach ($array as $setting) {
|
||||||
$sql .= "and default_setting_subcategory = '".$default_settings['default_setting_subcategory']."' ";
|
$found = false;
|
||||||
$prep_statement = $db->prepare($sql);
|
$missing[$x] = $setting;
|
||||||
if ($prep_statement) {
|
foreach ($default_settings as $row) {
|
||||||
$prep_statement->execute();
|
if (trim($row['default_setting_subcategory']) == trim($setting['default_setting_subcategory'])) {
|
||||||
$row = $prep_statement->fetch(PDO::FETCH_ASSOC);
|
$found = true;
|
||||||
unset($prep_statement);
|
//remove items from the array that were found
|
||||||
if ($row['num_rows'] == 0) {
|
unset($missing[$x]);
|
||||||
|
|
||||||
$orm = new orm;
|
|
||||||
$orm->name('default_settings');
|
|
||||||
$orm->save($array[$index]);
|
|
||||||
$message = $orm->message;
|
|
||||||
//print_r($message);
|
|
||||||
}
|
}
|
||||||
unset($row);
|
|
||||||
}
|
}
|
||||||
|
$x++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//add the missing default settings
|
||||||
|
foreach ($missing as $row) {
|
||||||
|
//add the default settings
|
||||||
|
$orm = new orm;
|
||||||
|
$orm->name('default_settings');
|
||||||
|
$orm->save($row);
|
||||||
|
$message = $orm->message;
|
||||||
|
unset($orm);
|
||||||
|
//print_r($message);
|
||||||
|
}
|
||||||
|
unset($missing);
|
||||||
|
|
||||||
//move the dynamic provision variables that from v_vars table to v_default_settings
|
//move the dynamic provision variables that from v_vars table to v_default_settings
|
||||||
if (count($_SESSION['provision']) == 0) {
|
if (count($_SESSION['provision']) == 0) {
|
||||||
$sql = "select * from v_vars ";
|
$sql = "select * from v_vars ";
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue