<?php
/**
* TTs agendados para esse dia.
*
* Este script, mostra os TTs agendados para esse dia.
*
* @author José Filipe Lopes Santos <jfilipe@med.up.pt>
* @since 09-03-2012
* @version 1.0 - data da últ. actualização: 09-03-2012
* @package tts
* @subpackage calendar
*/
require_once './conf/core.inc';
require_once './lib/functions.inc';
require_once './lib/cal_tickets.inc';
/* -------------------------------- oOo -------------------------------
Inicialização de variáveis
-------------------------------- oOo ------------------------------- */
// parâmetros
if (empty($user)) $user = ""; // username / login
if (empty($data)) $data = ""; // data de agendamento
// outras variáveis
if (empty($title)) $title = "TTs agendados para $data"; // título do documento
if (empty($error_msg)) $error_msg = ""; // mensagem de erro
$tickets = array(); // array com os dados dos tickets
// cabeçalhos
$headings = array("Horário","Área","Data","Tipo de problema","Serviço","Opções");
/* -------------------------------- oOo -------------------------------
Mensagens de erro
-------------------------------- oOo ------------------------------- */
if ($user == "")
$error_msg = "Utilizador não especificado";
if ($error_msg == "" && $data == "")
$error_msg = "Data não especificada";
/* -------------------------------- oOo -------------------------------
Verificar data
-------------------------------- oOo ------------------------------- */
if ($error_msg == "" && !isValidDate($data))
$error_msg = "A data $data não é válida !";
/* -------------------------------- oOo -------------------------------
Extrair dados
-------------------------------- oOo ------------------------------- */
if ($error_msg == ""){
// criar uma nova instância da classe para o agendamento de tickets no calendário
$calt = new cal_tickets(DSN_CI,$data,FORMAT_DATE,$user);
// extrair os dados dos tickets agendados para esse dia
$tickets = $calt->getTicketsOfDay(FORMAT_DATE_EXT_DISPLAY);
// mensagem de erro
if ($calt->error_msg != "")
$error_msg = $calt->error_msg;
}
/* -------------------------------- oOo -------------------------------
Output
-------------------------------- oOo ------------------------------- */
$t =& new Template_PHPLIB(TEMPLATES_PATH);
$t->setFile(array("page" => "listing_tasklist.html",
"note" => "note_without_table.html",
"row_headings" => "row_headings.html",
"heading" => "heading.html",
"row" => "listing_row_task.html",
"image_link" => "image_link.html",
"blank" => "blank.html"));
//************ lista de tarefas (início) ************
$t->setVar(array("titulo" => $title, "rooturl" => ROOT_URL));
$num_tickets = count($tickets);
if ($error_msg == "" && $num_tickets == 0) $error_msg = "Não existem TTs agendados para <b>$data</b>";
if ($error_msg != ""){
// ********** mensagem de erro **********
$t->setVar(array("msg" => $error_msg, "colspan_note" => 1));
$t->parse("block_note","note",true);
} else { // listagem de tarefas
//*********** Mensagem com o n.º de resultados **********
$msg_res = "";
if ($num_tickets == 1) $msg_res = "Existe <b>1</b> TT agendado para <b>$data</b>";
else $msg_res = "Existem <b>$num_tickets</b> TTs agendados para <b>$data</b>";
$t->setVar(array("msg" => $msg_res, "colspan_note" => 1));
$t->parse("block_note","note",true);
//********** headings **********
foreach ($headings as $heading){
$t->setVar("text",$heading);
$t->parse("headings","heading",true);
}
$t->parse("block_rows","row_headings",true);
//********** Linhas / Tarefas **********
foreach ($tickets as $index=>$info){ // para cada tarefa
// setar variáveis
$id2 = $info["id"];
$id_area2 = $info["id_area"];
$nome_area2 = $info["nome_area"];
// linha
$t->setVar(array("horario" => $info["horario"],
"area" => $nome_area2,
"data" => $info["data"],
"tipo_problema" => $info["nome_tipo_problema"],
"servico" => $info["nome_servico"],
"class" => $classes[$index%2]));
// célula em branco, para fazer reset às templates para as opções
$t->parse("block_images_links","blank",false);
// depurar links
$link_view = "javascript:open_window('../info_tt.php?id=$id2',850,650,'view')";
$link_edit = "javascript:open_window('../form_tt.php?action=update&id=$id2&id_area=$id_area2&nome_area=$nome_area2',850,650,'edit')";
$link_delete = "javascript:open_window('../form_tt.php?action=delete&id=$id2&id_area=$id_area2&nome_area=$nome_area2',850,650,'delete')";
///// Opções: //////
// ver detalhes
$t->setVar(array("link" => $link_view, "title" => "ver detalhes",
"imgsrc" => IMAGES_URL."view.gif", "width" => WIDTH_ICON_VIEW, "height" => HEIGHT_ICON_VIEW));
$t->parse("block_images_links","image_link",true);
// Editar
$t->setVar(array("link" => $link_edit, "title" => "alterar",
"imgsrc" => IMAGES_URL."edit.gif", "width" => WIDTH_ICON_EDIT, "height" => HEIGHT_ICON_EDIT));
$t->parse("block_images_links","image_link",true);
// Apagar
$t->setVar(array("link" => $link_delete, "title" => "apagar",
"imgsrc" => IMAGES_URL."delete.gif", "width" => WIDTH_ICON_DELETE, "height" => HEIGHT_ICON_DELETE));
$t->parse("block_images_links","image_link",true);
// fechar a linha
$t->parse("block_rows","row",true);
}
}
//************ lista de tarefas (fim) ************
$t->pparse("output","page");
?>
|