function gs_queue_del($name) { if (!preg_match('/^[\\d]+$/', $name)) { return new GsError('Queue name must be numeric.'); } # connect to db # $db = gs_db_master_connect(); if (!$db) { return new GsError('Could not connect to database.'); } $CDR_DB = gs_db_cdr_master_connect(); if (!$CDR_DB) { echo 'CDR DB error.'; return; } # check if queue exists # $num = (int) $db->executeGetOne('SELECT COUNT(*) FROM `ast_queues` WHERE `name`=\'' . $db->escape($name) . '\''); if ($num < 1) { return new GsError('Unknown queue.'); } # get queue_id # $queue_id = (int) $db->executeGetOne('SELECT `_id` FROM `ast_queues` WHERE `name`=\'' . $db->escape($name) . '\''); if ($queue_id < 1) { return new GsError('Unknown queue.'); } #delete queue from all groups # gs_group_members_purge_by_type('queue', array($queue_id)); # delete queue members # $db->execute('DELETE FROM `ast_queue_members` WHERE `_queue_id`=' . $queue_id); # delete queue callforwards # $db->execute('DELETE FROM `queue_callforwards` WHERE `queue_id`=' . $queue_id); # delete queue_vm_rec_messages # $db->execute('DELETE FROM `queue_vm_rec_messages` WHERE `queue_id`=' . $queue_id); # delete queue cf timerules # $db->execute('DELETE FROM `queue_cf_timerules` WHERE `queue_id`=' . $queue_id); # delete queue cf timerules # $db->execute('DELETE FROM `queue_cf_parallelcall` WHERE `queue_id`=' . $queue_id); # delete queue log # $CDR_DB->execute('DELETE FROM `queue_log` WHERE `queue_id`=' . $queue_id); # delete queue # $ok = $db->execute('DELETE FROM `ast_queues` WHERE `_id`=' . $queue_id . ' LIMIT 1'); if (!$ok) { return new GsError('Failed to delete queue.'); } return true; }
function gs_ivr_del($name) { if (!preg_match('/^[\\d]+$/', $name)) { return new GsError('IVR name must be numeric.'); } # connect to db # $db = gs_db_master_connect(); if (!$db) { return new GsError('Could not connect to database.'); } $CDR_DB = gs_db_cdr_master_connect(); if (!$CDR_DB) { echo 'CDR DB error.'; return; } # check if ivr exists # $num = (int) $db->executeGetOne('SELECT COUNT(*) FROM `ivrs` WHERE `name`=\'' . $db->escape($name) . '\''); if ($num < 1) { return new GsError('Unknown ivr.'); } # get ivr_id # $ivr_id = (int) $db->executeGetOne('SELECT `id` FROM `ivrs` WHERE `name`=\'' . $db->escape($name) . '\''); if ($ivr_id < 1) { return new GsError('Unknown ivr.'); } # delete ivr # $ok = $db->execute('DELETE FROM `ivrs` WHERE `id`=' . $ivr_id . ' LIMIT 1'); if (!$ok) { return new GsError('Failed to delete ivr.'); } return true; }
echo $MODULES[$SECTION]['sub'][$MODULE]['title']; echo '</h2>', "\n"; include_once GS_DIR . 'htdocs/gui/inc/permissions.php'; require_once GS_DIR . 'inc/group-fns.php'; echo '<script type="text/javascript" src="', GS_URL_PATH, 'js/tooltips.js"></script>', "\n"; $CDR_DB = gs_db_cdr_master_connect(); if (!$CDR_DB) { echo 'CDR DB error.'; return; } $duration_level = 90; # 90 s = 1:30 min $waittime_level = 15; # 15 s # connect to CDR master $CDR_DB = gs_db_cdr_master_connect(); if (!$CDR_DB) { echo 'CDR DB error.'; return; } function _secs_to_minsecs($s) { $s = (int) $s; $m = floor($s / 60); $s = $s - $m * 60; return $m . ':' . str_pad($s, 2, '0', STR_PAD_LEFT); } function userids_to_exts($users) { global $DB; $users_sql = implode(',', $users);
`calldate`>=\'' . $db->escape(gmDate('Y-m-d H:i:s', $t)) . '\' AND `calldate`< \'' . $db->escape(gmDate('Y-m-d H:i:s', $qtto)) . '\' AND `dst`<>\'s\' AND `dst`<>\'h\' AND `dst` NOT LIKE \'*%\''); $val = $val / $tdiffdays; $vals[] = $val; if ($val > $maxval) { $maxval = $val; } $t = $qtto; ++$i; } //print_r($vals); } elseif ($dataset === 'avgdur') { $db = @gs_db_cdr_master_connect(); if (!$db) { exit(1); } $t = $fr; $i = 0; $vals = array(); $maxval = 0; while ($t <= $to) { $qtto = strToTime($xtstr, $t); $val = (int) @$db->executeGetOne('SELECT AVG(`duration`) FROM `ast_cdr` WHERE `calldate`>=\'' . $db->escape(gmDate('Y-m-d H:i:s', $t)) . '\' AND `calldate`< \'' . $db->escape(gmDate('Y-m-d H:i:s', $qtto)) . '\' AND `dst`<>\'s\' AND