Misc Classes: Database class integration.

This commit is contained in:
Nate
2019-09-04 06:44:50 -06:00
parent 4716e9c615
commit f22d5574c7
7 changed files with 303 additions and 372 deletions

View File

@@ -29,7 +29,6 @@ if (!class_exists('ringbacks')) {
class ringbacks {
//define variables
public $db;
public $domain_uuid;
private $ringtones_list;
private $tones_list;
@@ -39,14 +38,6 @@ if (!class_exists('ringbacks')) {
//class constructor
public function __construct() {
//connect to the database if not connected
if (!$this->db) {
require_once "resources/classes/database.php";
$database = new database;
$database->connect();
$this->db = $database->db;
}
//set the domain_uuid
$this->domain_uuid = $_SESSION['domain_uuid'];
@@ -58,28 +49,28 @@ if (!class_exists('ringbacks')) {
$sql = "select * from v_vars ";
$sql .= "where var_category = 'Ringtones' ";
$sql .= "order by var_name asc ";
$prep_statement = $this->db->prepare(check_sql($sql));
$prep_statement->execute();
$ringtones = $prep_statement->fetchAll(PDO::FETCH_NAMED);
unset ($prep_statement, $sql);
foreach($ringtones as $ringtone) {
$ringtone = $ringtone['var_name'];
$label = $text['label-'.$ringtone];
if ($label == "") {
$label = $ringtone;
$database = new database;
$ringtones = $database->select($sql, null, 'all');
if (is_array($ringtones) && @sizeof($ringtones) != 0) {
foreach ($ringtones as $ringtone) {
$ringtone = $ringtone['var_name'];
$label = $text['label-'.$ringtone];
if ($label == "") {
$label = $ringtone;
}
$ringtones_list[$ringtone] = $label;
}
$ringtones_list[$ringtone] = $label;
}
$this->ringtones_list = $ringtones_list;
unset($sql, $ringtones, $ringtone, $ringtones_list);
//get the default_ringback label
/*
$sql = "select * from v_vars where var_name = 'ringback' ";
$prep_statement = $this->db->prepare(check_sql($sql));
$prep_statement->execute();
$result = $prep_statement->fetch();
unset ($prep_statement, $sql);
$default_ringback = (string) $result['var_value'];
$database = new database;
$row = $database->select($sql, null, 'row');
unset($sql);
$default_ringback = (string) $row['var_value'];
$default_ringback = preg_replace('/\A\$\${/',"",$default_ringback);
$default_ringback = preg_replace('/}\z/',"",$default_ringback);
#$label = $text['label-'.$default_ringback];
@@ -108,7 +99,7 @@ if (!class_exists('ringbacks')) {
}
}
public function select ($name, $selected) {
public function select($name, $selected) {
//add multi-lingual support
$language = new text;
$text = $language->get();
@@ -120,7 +111,7 @@ if (!class_exists('ringbacks')) {
if (count($this->music_list) > 0) {
$select .= " <optgroup label='".$text['label-music_on_hold']."'>\n";
$previous_name = '';
foreach($this->music_list as $row) {
foreach ($this->music_list as $row) {
if ($previous_name != $row['music_on_hold_name']) {
$name = '';
if (strlen($row['domain_uuid']) > 0) {
@@ -137,8 +128,8 @@ if (!class_exists('ringbacks')) {
//recordings
if (sizeof($this->recordings_list) > 0) {
$select .= " <optgroup label='".$text['label-recordings']."'>";
foreach($this->recordings_list as $recording_value => $recording_name){
$select .= " <option value='".$recording_value."' ".(($selected == $recording_value) ? 'selected="selected"' : '').">".$recording_name."</option>\n";
foreach ($this->recordings_list as $recording_value => $recording_name) {
$select .= " <option value='".$recording_value."' ".(($selected == $recording_value) ? 'selected="selected"' : null).">".$recording_name."</option>\n";
}
$select .= " </optgroup>\n";
}
@@ -146,19 +137,20 @@ if (!class_exists('ringbacks')) {
//streams
if (is_dir($_SERVER["PROJECT_ROOT"].'/app/streams')) {
$sql = "select * from v_streams ";
$sql .= "where (domain_uuid = '".$this->domain_uuid."' or domain_uuid is null) ";
$sql .= "where (domain_uuid = :domain_uuid or domain_uuid is null) ";
$sql .= "and stream_enabled = 'true' ";
$sql .= "order by stream_name asc ";
$prep_statement = $this->db->prepare(check_sql($sql));
$prep_statement->execute();
$streams = $prep_statement->fetchAll(PDO::FETCH_NAMED);
if (sizeof($streams) > 0) {
$parameters['domain_uuid'] = $this->domain_uuid;
$database = new database;
$streams = $database->select($sql, $parameters, 'all');
if (is_array($streams) && @sizeof($streams) != 0) {
$select .= " <optgroup label='".$text['label-streams']."'>";
foreach($streams as $row){
foreach ($streams as $row) {
$select .= " <option value='".$row['stream_location']."' ".(($selected == $row['stream_location']) ? 'selected="selected"' : null).">".$row['stream_name']."</option>\n";
}
$select .= " </optgroup>\n";
}
unset($sql, $parameters, $streams, $row);
}
//ringtones
@@ -168,8 +160,8 @@ if (!class_exists('ringbacks')) {
$selected_ringtone = preg_replace('/}\z/',"",$selected_ringtone);
$select .= " <optgroup label='".$text['label-ringtones']."'>";
//$select .= " <option value='default_ringtones'".(($selected == "default_ringback") ? ' selected="selected"' : '').">".$text['label-default']." (".$this->default_ringtone_label.")</option>\n";
foreach($this->ringtones_list as $ringtone_value => $ringtone_name) {
$select .= " <option value='\${".$ringtone_value."}'".(($selected_ringtone == $ringtone_value) ? ' selected="selected"' : '').">".$ringtone_name."</option>\n";
foreach ($this->ringtones_list as $ringtone_value => $ringtone_name) {
$select .= " <option value='\${".$ringtone_value."}'".(($selected_ringtone == $ringtone_value) ? ' selected="selected"' : null).">".$ringtone_name."</option>\n";
}
$select .= " </optgroup>\n";
unset($selected_ringtone);
@@ -182,7 +174,7 @@ if (!class_exists('ringbacks')) {
$selected_tone = preg_replace('/}\z/',"",$selected_tone);
$select .= " <optgroup label='".$text['label-tones']."'>";
foreach($this->tones_list as $tone_value => $tone_name) {
$select .= " <option value='\${".$tone_value."}'".(($selected_tone == $tone_value) ? ' selected="selected"' : '').">".$tone_name."</option>\n";
$select .= " <option value='\${".$tone_value."}'".(($selected_tone == $tone_value) ? ' selected="selected"' : null).">".$tone_name."</option>\n";
}
$select .= " </optgroup>\n";
unset($selected_tone);
@@ -195,4 +187,4 @@ if (!class_exists('ringbacks')) {
}
}
?>
?>