mirror of
https://github.com/ACSPRI/queXS
synced 2024-04-02 12:12:16 +00:00
updates, small improvemnts
This commit is contained in:
@@ -72,7 +72,7 @@ $operator_id = get_operator_id();
|
||||
Modified Call history list to have more information more suitable way with filtering, soring, paging and submenu for Cse history with asterisk records....
|
||||
Need to be linked with cdr records from asterisk!! for monitoring (requires addtional field for call_attempt table to request and store asterisk UniqueID as a reference to CDR .wav file list at /var/spool/asterisk/monitor/ )
|
||||
*/
|
||||
|
||||
|
||||
if ($operator_id)
|
||||
{
|
||||
if (isset($_GET['questionnaire_id'])) $qid = $_GET['questionnaire_id'];
|
||||
@@ -85,9 +85,9 @@ if ($operator_id)
|
||||
|
||||
$sql .= " as case_id, q.description as qd , contact_phone.phone as cpi, sample_import.description as spl
|
||||
FROM `call` as c
|
||||
JOIN (operator as op, respondent as r) on (op.operator_id = '$operator_id' and r.respondent_id = c.respondent_id)";
|
||||
if ($qid) $quest = "$qid and q.questionnaire_id= $qid"; else $quest = "q.questionnaire_id";
|
||||
if ($sid) $samimpid = "$sid and sample_import.sample_import_id=$sid"; else $samimpid = "sample_import.sample_import_id";
|
||||
JOIN (operator as op, respondent as r) on (op.operator_id = '$operator_id' AND r.respondent_id = c.respondent_id)";
|
||||
if ($qid) $quest = "$qid AND q.questionnaire_id= $qid"; else $quest = "q.questionnaire_id";
|
||||
if ($sid) $samimpid = "$sid AND sample_import.sample_import_id=$sid"; else $samimpid = "sample_import.sample_import_id";
|
||||
|
||||
$sql .= "
|
||||
JOIN (`case` as ca, questionnaire as q) ON (ca.case_id = c.case_id AND ca.questionnaire_id = $quest)
|
||||
@@ -102,11 +102,10 @@ if ($operator_id)
|
||||
$sql .= " LIMIT 500";
|
||||
else $sql .= " LIMIT 5000";
|
||||
|
||||
$rs = $db->Execute($sql);
|
||||
|
||||
$rs = $db->Execute($sql);
|
||||
if (empty($rs))
|
||||
{
|
||||
print "<div class='alert alert-warning col-sm-6'>" . T_("No calls ever made") . "</div>";
|
||||
print "<div class='alert alert-warning col-sm-6'><p>" . T_("No calls ever made") . "</p></div>";
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -131,16 +130,24 @@ if ($operator_id)
|
||||
}
|
||||
|
||||
exit;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$rs = $rs->GetArray();
|
||||
translate_array($rs,array("des"));
|
||||
xhtml_head(T_("Call History List"),true,$css,$js_head);
|
||||
|
||||
echo "<div class='form-group col-sm-2'><a href='' onclick='history.back();return false;' class='btn btn-default'><i class='fa fa-chevron-left fa-lg text-primary'></i> " . T_("Go back") . "</a></div>";
|
||||
|
||||
$datacol = array("start_date", "start_time","end","case_id","qd","spl","cpi","opname","descr","casenotes","firstName");
|
||||
$headers = array(T_("Date"), T_("Start time"), T_("End time"),T_("Case ID"),T_("Questionnaire"),T_("Sample"),T_("Phone number"),T_("Operator"),T_("Outcome"),T_("Case notes"),T_("Respondent"));
|
||||
$rs = $rs->GetArray();
|
||||
if (count($rs) ==0)
|
||||
{
|
||||
print "<div class='alert alert-info col-sm-6'><h3>" . T_("NO Call history records for Your query") . "</h3></div>";
|
||||
}
|
||||
else
|
||||
{
|
||||
translate_array($rs,array("des"));
|
||||
|
||||
$datacol = array("start_date", "start_time","end","case_id","qd","spl","cpi","opname","descr","casenotes","firstName");
|
||||
$headers = array(T_("Date"), T_("Start time"), T_("End time"),T_("Case ID"),T_("Questionnaire"),T_("Sample"),T_("Phone number"),T_("Operator"),T_("Outcome"),T_("Case notes"),T_("Respondent"));
|
||||
|
||||
if (isset($_GET['questionnaire_id'])){
|
||||
$sql = "SELECT description FROM `questionnaire` WHERE `questionnaire_id` = $qid ";
|
||||
@@ -154,9 +161,12 @@ if ($operator_id)
|
||||
print "<h3><small>" . T_("Sample") . " ID: $sid</small> " . $ds . "</h3>";
|
||||
unset($datacol[5]); unset($headers[5]); }
|
||||
|
||||
print "<a href='?csv=csv&questionnaire_id=$qid&dq=" . $dq . "&sample_import_id=$sid&ds=" . $ds . "' class='btn btn-default pull-right'><i class='fa fa-download fa-lg text-primary'></i> " . T_("Download Call History List") . "</a>";
|
||||
print " <a href='?csv=csv&questionnaire_id=$qid&dq=" . $dq . "&sample_import_id=$sid&ds=" . $ds . "' class='btn btn-default pull-right'><i class='fa fa-download fa-lg text-primary'></i> " . T_("Download Call History List") . "</a>
|
||||
"; //<a href='../../admin/config.php' target='_blank' class='btn btn-default col-sm-offset-6 '><i class='fa fa-link fa-lg text-primary'></i> " . T_("Go to Call History Report") . "</a>
|
||||
|
||||
xhtml_table($rs,$datacol,$headers,"tclass",false,false,"bs-table");
|
||||
|
||||
xhtml_table($rs,$datacol,$headers,"tclass",false,false,"bs-table");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -78,14 +78,14 @@ function case_status_report($questionnaire_id = false, $sample_id = false, $outc
|
||||
|
||||
$sql = "SELECT CONCAT('<a href=\'supervisor.php?case_id=', c.case_id, '\'>', c.case_id, '</a>') as case_id,
|
||||
o.description as outcomes,
|
||||
si.description as samples, s.Time_zone_name as timezone, (SELECT COUNT(*) FROM `call` WHERE `call`.case_id = c.case_id) as nrcalls, (SELECT COUNT(*) FROM call_attempt WHERE call_attempt.case_id = c.case_id) as nrattempts,
|
||||
si.description as samples, s.Time_zone_name as timezone, TIME_FORMAT(CONVERT_TZ(NOW(),@@session.time_zone,s.Time_zone_name),'". TIME_FORMAT ."') as time, (SELECT COUNT(*) FROM `call` WHERE `call`.case_id = c.case_id) as nrcalls, (SELECT COUNT(*) FROM call_attempt WHERE call_attempt.case_id = c.case_id) as nrattempts,
|
||||
CASE WHEN ca.end IS NULL THEN '" . TQ_("Available") . "'
|
||||
WHEN TIME_TO_SEC(TIMEDIFF(ca.end,CONVERT_TZ(DATE_SUB(NOW(), INTERVAL co.default_delay_minutes MINUTE),'System','UTC'))) < 0 THEN '" . TQ_("Available") . "'
|
||||
ELSE CONCAT(ROUND(TIME_TO_SEC(TIMEDIFF(ca.end,CONVERT_TZ(DATE_SUB(NOW(), INTERVAL co.default_delay_minutes MINUTE),'System','UTC'))) / 60),' " . TQ_("minutes") . "')
|
||||
END AS availableinmin,
|
||||
CASE WHEN oq.operator_id IS NULL THEN
|
||||
CONCAT('')
|
||||
ELSE CONCAT('<span class=\'text-info\'>', oq.firstName,' ',oq.lastname,'</span>')
|
||||
ELSE CONCAT('<span class=\'text-info\'>', oq.firstName,' ',oq.lastName,'</span>')
|
||||
END AS assignedoperator,
|
||||
CASE WHEN oq.operator_id IS NULL THEN
|
||||
CONCAT('')
|
||||
@@ -112,7 +112,12 @@ function case_status_report($questionnaire_id = false, $sample_id = false, $outc
|
||||
|
||||
print ("<form method=\"post\" action=\"?questionnaire_id=$questionnaire_id&sample_import_id=$sample_id\">");
|
||||
|
||||
xhtml_table($db->GetAll($sql),array('case_id','samples','timezone','nrattempts','nrcalls','outcomes','availableinmin','assignedoperator','ordr','flag'),array(T_("Case id"),T_("Sample"),T_("Timezone"),T_("Call attempts"),T_("Calls"),T_("Outcome"),T_("Available in"),T_("Assigned to"),T_("Order"),"<i class='fa fa-check-square-o fa-lg'></i>"), "tclass",false,false,"bs-table");
|
||||
$datacol = array('case_id','samples','timezone','time','nrattempts','nrcalls','outcomes','availableinmin','assignedoperator','ordr','flag');
|
||||
$headers = array(T_("Case id"),T_("Sample"),T_("Timezone"),T_("Time NOW"),T_("Call attempts"),T_("Calls"),T_("Outcome"),T_("Available in"),T_("Assigned to"),T_("Order"),"<i class='fa fa-check-square-o fa-lg'></i>");
|
||||
|
||||
if (isset($_GET['sample_import_id'])){ unset($datacol[1]); unset($headers[1]); }
|
||||
|
||||
xhtml_table($db->GetAll($sql),$datacol,$headers,"tclass",false,false,"bs-table");
|
||||
|
||||
$sql = "SELECT operator_id as value,CONCAT(firstName,' ', lastName) as description, '' selected
|
||||
FROM operator
|
||||
@@ -225,13 +230,16 @@ $outcome_id = false;
|
||||
|
||||
print "<div class='form-group '><h3 class=' col-sm-2 text-right'>" . T_("Questionnaire") . ":</h3>";
|
||||
display_questionnaire_chooser($questionnaire_id, false, "pull-left", "form-control");
|
||||
print "<h3 class=' col-sm-2 text-right'>" . T_("Sample") . ":</h3>";
|
||||
display_sample_chooser($questionnaire_id,$sample_import_id,false, "pull-left", "form-control");
|
||||
print "</div>
|
||||
<div class='clearfix'></div>";
|
||||
if ($questionnaire_id)
|
||||
case_status_report($questionnaire_id,$sample_import_id,$outcome_id);
|
||||
|
||||
|
||||
if ($questionnaire_id){
|
||||
print "<h3 class=' col-sm-2 text-right'>" . T_("Sample") . ":</h3>";
|
||||
display_sample_chooser($questionnaire_id,$sample_import_id,false, "pull-left", "form-control");
|
||||
print "</div>
|
||||
<div class='clearfix'></div>";
|
||||
|
||||
case_status_report($questionnaire_id,$sample_import_id,$outcome_id);
|
||||
}
|
||||
xhtml_foot($js_foot);
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
|
||||
@@ -56,14 +56,17 @@ $css = array(
|
||||
"../include/bootstrap-3.3.2/css/bootstrap.min.css",
|
||||
"../include/bootstrap-3.3.2/css/bootstrap-theme.min.css",
|
||||
"../include/font-awesome-4.3.0/css/font-awesome.css",
|
||||
/* "../include/bootgrid/jquery.bootgrid.css", */
|
||||
"../include/bs-data-table/css/jquery.bdt.css",
|
||||
"../css/custom.css"
|
||||
);
|
||||
$js_head = array(
|
||||
"../js/jquery-2.1.3.min.js",
|
||||
"../include/bootstrap-3.3.2/js/bootstrap.min.js",
|
||||
/* "../include/bootgrid/jquery.bootgrid.min.js", */
|
||||
);
|
||||
$js_foot = array(
|
||||
|
||||
"../include/bs-data-table/js/vendor/jquery.sortelements.js",
|
||||
"../include/bs-data-table/js/jquery.bdt.js",
|
||||
"../js/window.js",
|
||||
@@ -135,7 +138,7 @@ print "<div class='clearfix'></div>";
|
||||
if ($sample_import_id != false)
|
||||
{
|
||||
$sql = "SELECT sv.sample_id, CASE WHEN c.case_id IS NULL THEN
|
||||
CONCAT('<a href=\'\' data-toggle=\'modal\' data-target=\'.delete-confirm\' data-href=\'?sample_import_id=$sample_import_id&sample_id=', sv.sample_id ,'\' data-sample_id=\' ', sv.sample_id ,' \' class=\'btn center-block\'><i data-toggle=\'tooltip\' title=\'" . TQ_("Delete sample record") . " ', sv.sample_id ,'\' class=\'fa fa-2x fa-trash-o text-danger\'></i></a>')
|
||||
CONCAT(' <a href=\'\' data-toggle=\'modal\' data-target=\'.delete-confirm\' data-href=\'?sample_import_id=$sample_import_id&sample_id=', sv.sample_id ,'\' data-sample_id=\' ', sv.sample_id ,' \' class=\'\'><i data-toggle=\'tooltip\' title=\'" . TQ_("Delete sample record") . " ', sv.sample_id ,'\' class=\'fa fa-2x fa-trash-o text-danger\'></i></a> ')
|
||||
ELSE CONCAT('<a href=\'supervisor.php?case_id=', c.case_id , '\' data-toggle=\'tooltip\' title=\'" . TQ_("Assigned to case ID :") . " ', c.case_id , '\'><b>', c.case_id ,'</b></a>')
|
||||
END as link
|
||||
FROM sample_var AS sv
|
||||
@@ -146,12 +149,6 @@ if ($sample_import_id != false)
|
||||
|
||||
if ($r) {
|
||||
|
||||
$sql = "SELECT var
|
||||
FROM sample_var
|
||||
WHERE sample_id = {$r[0]['sample_id']}
|
||||
ORDER by var ASC";
|
||||
|
||||
$rs = $db->GetAll($sql);
|
||||
|
||||
$fnames = array("sample_id");
|
||||
$fdesc = array(T_("Sample id"));
|
||||
@@ -159,6 +156,12 @@ if ($sample_import_id != false)
|
||||
$fnames[] = "link";
|
||||
$fdesc[] = T_("Case ID");
|
||||
|
||||
$sql = "SELECT var
|
||||
FROM sample_var
|
||||
WHERE sample_id = {$r[0]['sample_id']}
|
||||
ORDER by var ASC";
|
||||
$rs = $db->GetAll($sql);
|
||||
|
||||
foreach($rs as $rsw)
|
||||
{
|
||||
$fnames[] = $rsw['var'];
|
||||
@@ -170,10 +173,11 @@ if ($sample_import_id != false)
|
||||
FROM sample_var
|
||||
WHERE sample_id = {$rw['sample_id']}";
|
||||
$rs = $db->GetAll($sql);
|
||||
foreach($rs as $rsw)
|
||||
foreach($rs as $rsw){
|
||||
$rw[$rsw['var']] = $rsw['val'];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
print "<div class='form-group'>";
|
||||
xhtml_table($r,$fnames,$fdesc,"tclass",false,false,"bs-table");
|
||||
print "</div>";
|
||||
@@ -184,6 +188,12 @@ xhtml_foot($js_foot);
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
$('#bs-table').bdt();
|
||||
/* $('#bs-table').bootgrid({
|
||||
ajax: true,
|
||||
post: "$sample_import_id",
|
||||
url: "?sample_import_id=\"$sample_import_id\"",
|
||||
}); */
|
||||
|
||||
$('#delete-confirm').on('show.bs.modal', function (event) {
|
||||
var a = $(event.relatedTarget)
|
||||
var href = a.data('href')
|
||||
|
||||
Reference in New Issue
Block a user