diff --git a/app/conference_centers/conference_rooms.php b/app/conference_centers/conference_rooms.php index f974538005..d5c1f26659 100644 --- a/app/conference_centers/conference_rooms.php +++ b/app/conference_centers/conference_rooms.php @@ -129,184 +129,174 @@ else { echo " \n"; echo "\n"; - //prepare to page the results - $sql = "select count(*) as num_rows from v_conference_rooms as r, v_meeting_users as u "; - $sql .= "where r.domain_uuid = '$domain_uuid' "; - $sql .= "and r.meeting_uuid = u.meeting_uuid "; - if (!if_group("admin") && !if_group("superadmin")) { - $sql .= "and u.user_uuid = '".$_SESSION["user_uuid"]."' "; - } - //$sql .= "and r.meeting_uuid = 'fbd2214a-39db-4a93-bd84-3fd830f63dba' "; - if (strlen($order_by)> 0) { $sql .= "order by $order_by $order "; } - $prep_statement = $db->prepare($sql); - if ($prep_statement) { - $prep_statement->execute(); - $row = $prep_statement->fetch(PDO::FETCH_ASSOC); - if ($row['num_rows'] > 0) { - $num_rows = $row['num_rows']; - } - else { - $num_rows = '0'; - } - } + //get the conference room count + require_once "app/conference_centers/resources/classes/conference_center.php"; + $conference_center = new conference_center; + $conference_center->db = $db; + $conference_center->domain_uuid = $_SESSION['domain_uuid']; + $conference_center->voicemail_uuid = $voicemail_uuid; + $conference_center->voicemail_id = $voicemail_id; + $row_count = $conference_center->room_count() * 2; //prepare to page the results - $rows_per_page = 10; + $rows_per_page = 150; $param = ""; - $page = $_GET['page']; - if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; } - list($paging_controls, $rows_per_page, $var3) = paging($num_rows, $param, $rows_per_page); + $page = check_str($_GET['page']); + if (strlen($page) == 0) { $page = 0; $_GET['page'] = 0; } + $rows_per_page = $rows_per_page * 2; + list($paging_controls, $rows_per_page, $var3) = paging($row_count, $param, $rows_per_page); $offset = $rows_per_page * $page; - //get the list - $sql = "select * from v_conference_rooms as r, v_meeting_users as u "; - $sql .= "where r.domain_uuid = '$domain_uuid' "; - $sql .= "and r.meeting_uuid = u.meeting_uuid "; - if (!if_group("admin") && !if_group("superadmin")) { - $sql .= "and u.user_uuid = '".$_SESSION["user_uuid"]."' "; + //get the conference rooms + $conference_center->rows_per_page = $rows_per_page; + $conference_center->offset = $offset; + $conference_center->order_by = $order_by; + $conference_center->order = $order; + $result = $conference_center->rooms(); + $result_count = $conference_center->count; + + //prepare to alternate the row styles + $c = 0; + $row_style["0"] = "row_style0"; + $row_style["1"] = "row_style1"; + + //table header + echo "
\n"; + echo "\n"; + echo "\n"; + //echo th_order_by('conference_center_uuid', 'Conference UUID', $order_by, $order); + //echo th_order_by('meeting_uuid', 'Meeting UUID', $order_by, $order); + echo th_order_by('profile', $text['label-moderator-pin'], $order_by, $order); + echo th_order_by('profile', $text['label-participant-pin'], $order_by, $order); + echo th_order_by('profile', $text['label-profile'], $order_by, $order); + echo th_order_by('record', $text['label-record'], $order_by, $order); + //echo th_order_by('max_members', 'Max', $order_by, $order); + echo th_order_by('wait_mod', $text['label-wait-moderator'], $order_by, $order); + echo th_order_by('announce', $text['label-announce'], $order_by, $order); + //echo th_order_by('enter_sound', 'Enter Sound', $order_by, $order); + echo th_order_by('mute', $text['label-mute'], $order_by, $order); + //echo th_order_by('created', 'Created', $order_by, $order); + //echo th_order_by('created_by', 'Created By', $order_by, $order); + echo th_order_by('enabled', $text['label-enabled'], $order_by, $order); + echo "\n"; + echo "\n"; + echo th_order_by('description', $text['label-description'], $order_by, $order); + echo "\n"; + echo "\n"; - $c = 0; - $row_style["0"] = "row_style0"; - $row_style["1"] = "row_style1"; + //table data + if ($result_count > 0) { + foreach($result as $row) { + $meeting_uuid = $row['meeting_uuid']; + echo "\n"; + echo " \n"; + echo " \n"; + //echo " \n"; + //echo " \n"; + echo " \n"; + echo " \n"; + //echo " \n"; + echo " \n"; + echo " \n"; - echo "
\n"; - echo "
".$text['label-count']."".$text['label-tools']."\n"; + if (permission_exists('conference_room_add')) { + echo " $v_link_label_add\n"; } - if (strlen($order_by)> 0) { $sql .= "order by $order_by $order "; } - $sql .= "limit $rows_per_page offset $offset "; - $prep_statement = $db->prepare(check_sql($sql)); - $prep_statement->execute(); - $result = $prep_statement->fetchAll(); - $result_count = count($result); - unset ($prep_statement, $sql); + else { + echo "  \n"; + } + echo "
".$row['moderator_pin']." ".$row['participant_pin']." ".$row['conference_center_uuid']." ".$row['meeting_uuid']." ".$row['profile']." "; + if ($row['record'] == "true") { + echo " ".$text['label-true'].""; + } + else { + echo " ".$text['label-false'].""; + } + echo "  \n"; + echo " ".$row['max_members']." "; + if ($row['wait_mod'] == "true") { + echo " ".$text['label-true'].""; + } + else { + echo " ".$text['label-false'].""; + } + echo "  \n"; + echo " "; + if ($row['announce'] == "true") { + echo " ".$text['label-true'].""; + } + else { + echo " ".$text['label-false'].""; + } + echo "  \n"; + echo "
\n"; - echo "\n"; + //echo " \n"; + echo " \n"; + //echo " \n"; + //echo " \n"; + echo " \n"; + if (strlen($conference[$meeting_uuid]["session_uuid"])) { + echo " \n"; + } + else { + echo " \n"; + } + echo " \n"; + echo " \n"; + echo " \n"; + echo "\n"; + if ($c==0) { $c=1; } else { $c=0; } + } //end foreach + unset($sql, $result, $row_count); + } //end if results - //echo th_order_by('conference_center_uuid', 'Conference UUID', $order_by, $order); - //echo th_order_by('meeting_uuid', 'Meeting UUID', $order_by, $order); - echo th_order_by('profile', $text['label-profile'], $order_by, $order); - echo th_order_by('record', $text['label-record'], $order_by, $order); - //echo th_order_by('max_members', 'Max', $order_by, $order); - echo th_order_by('wait_mod', $text['label-wait-moderator'], $order_by, $order); - echo th_order_by('announce', $text['label-announce'], $order_by, $order); - //echo th_order_by('enter_sound', 'Enter Sound', $order_by, $order); - echo th_order_by('mute', $text['label-mute'], $order_by, $order); - //echo th_order_by('created', 'Created', $order_by, $order); - //echo th_order_by('created_by', 'Created By', $order_by, $order); - echo th_order_by('enabled', $text['label-enabled'], $order_by, $order); - echo "\n"; - echo "\n"; - echo th_order_by('description', $text['label-description'], $order_by, $order); - echo "\n"; - echo "\n"; - - if ($result_count > 0) { - foreach($result as $row) { - $meeting_uuid = $row['meeting_uuid']; - echo "\n"; - //echo " \n"; - //echo " \n"; - echo " \n"; - echo " \n"; - //echo " \n"; - echo " \n"; - echo " \n"; - - //echo " \n"; - echo " \n"; - //echo " \n"; - //echo " \n"; - echo " \n"; - if (strlen($conference[$meeting_uuid]["session_uuid"])) { - echo " \n"; - } - else { - echo " \n"; - } - echo " \n"; - echo " \n"; - echo " \n"; - echo "\n"; - if ($c==0) { $c=1; } else { $c=0; } - } //end foreach - unset($sql, $result, $row_count); - } //end if results - - echo "\n"; - echo "\n"; - echo "\n"; + //show paging + echo "\n"; + echo "\n"; + echo "\n"; +//close the tables echo "
".$row['enter_sound']." "; + if ($row['mute'] == "true") { + echo " ".$text['label-true'].""; + } + else { + echo " ".$text['label-false'].""; + } + echo "  \n"; + echo " ".$row['created']." ".$row['created_by']." "; + if ($row['enabled'] == "true") { + echo " ".$text['label-true'].""; + } + else { + echo " ".$text['label-false'].""; + } + echo "  \n"; + echo " ".$conference[$meeting_uuid]["member_count"]." 0\n"; + echo " ".$text['label-view']." \n"; + echo " ".$text['label-sessions']."\n"; + echo " ".$row['description']." \n"; + if (permission_exists('conference_room_edit')) { + echo " $v_link_label_edit\n"; + } + if (permission_exists('conference_room_delete')) { + echo " $v_link_label_delete\n"; + } + echo "
".$text['label-count']."".$text['label-tools']."\n"; - if (permission_exists('conference_room_add')) { - echo " $v_link_label_add\n"; - } - else { - echo "  \n"; - } - echo "
".$row['conference_center_uuid']." ".$row['meeting_uuid']." ".$row['profile']." "; - if ($row['record'] == "true") { - echo " ".$text['label-true'].""; - } - else { - echo " ".$text['label-false'].""; - } - echo "  \n"; - echo " ".$row['max_members']." "; - if ($row['wait_mod'] == "true") { - echo " ".$text['label-true'].""; - } - else { - echo " ".$text['label-false'].""; - } - echo "  \n"; - echo " "; - if ($row['announce'] == "true") { - echo " ".$text['label-true'].""; - } - else { - echo " ".$text['label-false'].""; - } - echo "  \n"; - echo " ".$row['enter_sound']." "; - if ($row['mute'] == "true") { - echo " ".$text['label-true'].""; - } - else { - echo " ".$text['label-false'].""; - } - echo "  \n"; - echo " ".$row['created']." ".$row['created_by']." "; - if ($row['enabled'] == "true") { - echo " ".$text['label-true'].""; - } - else { - echo " ".$text['label-false'].""; - } - echo "  \n"; - echo " ".$conference[$meeting_uuid]["member_count"]." 0\n"; - echo " ".$text['label-view']." \n"; - echo " ".$text['label-sessions']."\n"; - echo " ".$row['description']." \n"; - if (permission_exists('conference_room_edit')) { - echo " $v_link_label_edit\n"; - } - if (permission_exists('conference_room_delete')) { - echo " $v_link_label_delete\n"; - } - echo "
\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo "
 $paging_controls\n"; - if (permission_exists('conference_room_add')) { - echo " $v_link_label_add\n"; - } - else { - echo "  \n"; - } - echo "
\n"; - echo "
\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo "
 $paging_controls\n"; + if (permission_exists('conference_room_add')) { + echo " $v_link_label_add\n"; + } + else { + echo "  \n"; + } + echo "
\n"; + echo "
"; echo "
"; echo "

"; diff --git a/app/conference_centers/resources/classes/conference_center.php b/app/conference_centers/resources/classes/conference_center.php new file mode 100644 index 0000000000..91571d85e5 --- /dev/null +++ b/app/conference_centers/resources/classes/conference_center.php @@ -0,0 +1,131 @@ + + Portions created by the Initial Developer are Copyright (C) 2008-2013 + the Initial Developer. All Rights Reserved. + + Contributor(s): + Mark J Crane +*/ + +//define the voicemail class + class conference_center { + public $db; + public $domain_uuid; + public $order_by; + public $order; + public $rows_per_page; + public $offset; + private $fields; + public $count; + + public function room_count() { + //get the room count + $sql = "select count(*) as num_rows from v_conference_rooms as r, v_meeting_users as u "; + $sql .= "where r.domain_uuid = '".$this->domain_uuid."' "; + $sql .= "and r.meeting_uuid = u.meeting_uuid "; + if (!if_group("admin") && !if_group("superadmin")) { + $sql .= "and u.user_uuid = '".$_SESSION["user_uuid"]."' "; + } + $prep_statement = $this->db->prepare(check_sql($sql)); + if ($prep_statement) { + $prep_statement->execute(); + $row = $prep_statement->fetch(PDO::FETCH_ASSOC); + if ($row['num_rows'] > 0) { + return $row['num_rows']; + } + else { + return 0; + } + } + } + + public function rooms() { + //get the list of rooms + $fields = "r.domain_uuid, r.conference_room_uuid, r.conference_center_uuid, r.meeting_uuid max_members, "; + $fields .= "wait_mod, announce, mute, created, created_by, r.enabled, r.description, record, "; + $fields .= "profile, meeting_user_uuid, user_uuid, meeting_pin_uuid, member_pin, member_type "; + $sql = "select ".$fields." from v_conference_rooms as r, v_meeting_users as u, v_meeting_pins as p "; + $sql .= "where r.domain_uuid = '".$this->domain_uuid."' "; + $sql .= "and r.meeting_uuid = u.meeting_uuid "; + $sql .= "and r.meeting_uuid = p.meeting_uuid "; + if (!if_group("admin") && !if_group("superadmin")) { + $sql .= "and u.user_uuid = '".$_SESSION["user_uuid"]."' "; + } + if (strlen($this->order_by)> 0) { $sql .= "order by $this->order_by $this->order "; } + $sql .= "limit $this->rows_per_page offset $this->offset "; + $prep_statement = $this->db->prepare(check_sql($sql)); + $prep_statement->execute(); + $rows = $prep_statement->fetchAll(PDO::FETCH_NAMED); + $this->count = count($rows); + if ($this->count > 0) { + $x = 0; + foreach($rows as $row) { + //increment the array index + if (isset($previous) && $row["conference_room_uuid"] != $previous) { $x++; } + //build the array + $result[$x]["domain_uuid"] = $row["domain_uuid"]; + $result[$x]["conference_room_uuid"] = $row["conference_room_uuid"]; + $result[$x]["conference_center_uuid"] = $row["conference_center_uuid"]; + $result[$x]["meeting_uuid"] = $row["meeting_uuid"]; + $result[$x]["max_members"] = $row["max_members"]; + $result[$x]["wait_mod"] = $row["wait_mod"]; + $result[$x]["announce"] = $row["announce"]; + $result[$x]["mute"] = $row["mute"]; + $result[$x]["record"] = $row["record"]; + $result[$x]["profile"] = $row["profile"]; + $result[$x]["meeting_user_uuid"] = $row["meeting_user_uuid"]; + $result[$x]["user_uuid"] = $row["user_uuid"]; + if ($row["member_type"] == "moderator") { + $result[$x]["moderator_pin"] = $row["member_pin"]; + } + if ($row["member_type"] == "participant") { + $result[$x]["participant_pin"] = $row["member_pin"]; + } + $result[$x]["created"] = $row["created"]; + $result[$x]["created_by"] = $row["created_by"]; + $result[$x]["enabled"] = $row["enabled"]; + $result[$x]["description"] = $row["description"]; + //set the previous uuid + $previous = $row["conference_room_uuid"]; + } + unset($rows); + } + unset ($prep_statement, $sql); + return $result; + } + } + +//example conference center + /* + require_once "app/conference_centers/resources/classes/conference_center.php"; + $conference_center = new conference_center; + $conference_center->db = $db; + $conference_center->domain_uuid = $_SESSION['domain_uuid']; + $conference_center->voicemail_uuid = $voicemail_uuid; + $conference_center->voicemail_id = $voicemail_id; + $conference_center->rows_per_page = 150; + $conference_center->offset = 0; + $conference_center->order_by = $order_by; + $conference_center->order = $order; + $result = $conference_center->rooms(); + print_r($result); + */ + +?> \ No newline at end of file