PHP Classes
elePHPant
Icontem

File: tts_agendados_dia.php

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of José Filipe Lopes Santos  >  Ticket Calendar  >  tts_agendados_dia.php  >  Download  
File: tts_agendados_dia.php
Role: Example script
Content type: text/plain
Description: Tickets scheduled by day
Class: Ticket Calendar
View the dates of scheduled tickets on a calendar
Author: By
Last change:
Date: 1 year ago
Size: 5,506 bytes
 

Contents

Class file image Download
<?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");

?>