コード例 #1
0
 /**
  * @return array
  * @param integer $idPrazo
  */
 public function notifyUserByIdPrazo($idPrazo)
 {
     $result = TPPrazo::factory()->retrivePrazoOpenedById($idPrazo);
     $retrive = array_change_key_case($result, CASE_LOWER);
     $content = sprintf("<strong>N. Proc/Dig. Ref.: </strong>%s<br><strong>Unid. Origem: </strong>%s<br>\r\n                <strong>Unid. Destino: </strong>%s<br><strong>Remetente: </strong>%s<br>\r\n                <strong>Solicitação: </strong>%s<br><strong>Data do Prazo: </strong>%s<br>\r\n                <strong>Dias Restantes: </strong>%s<br>", $retrive['nu_referencia'], $retrive['nm_unidade_origem'], $retrive['nm_unidade_destino'], $retrive['nm_usuario_origem'], $retrive['tx_solicitacao'], $retrive['dt_prazo'], $retrive['dias_restantes']);
     $send = Email::factory()->sendEmail(__EMAILLOGS__, $retrive['nm_usuario_origem'], array($retrive['tx_email_destino']), sprintf('Notificação Prazo SGDoc %s [%s]', __VERSAO__, microtime()), $content, true);
     if (!$send) {
         $response = array('success' => true, 'email' => $retrive['tx_email_destino']);
     } else {
         $response = array('success' => false, 'error' => 'Solicitação de notificação encaminhada para o serviço de envio de emails!');
     }
     return $response;
 }
コード例 #2
0
$hasIdentity = Zend_Auth::getInstance()->hasIdentity();
//Se não tem identidade, Timeout alcançado
$response['timeout'] = $hasIdentity ? 'N' : 'S';
if ($now <= $session->next) {
    $response['prazos']['notificado'] = 'N';
} else {
    if ($hasIdentity) {
        $auth = Zend_Auth::getInstance()->getStorage()->read();
        /* meus vencidos */
        $prazosVencidosUsuario = TPPrazo::factory()->retrivePrazosVencidosUsuarioByIdUnidade($auth->ID, $auth->ID_UNIDADE);
        /* vencidos setor */
        $prazosVencidosUnidade = TPPrazo::factory()->retrivePrazosVencidosUnidadeById($auth->ID_UNIDADE);
        /* meus pendentes */
        $prazosPendentesUsuario = TPPrazo::factory()->retrivePrazosPendentesByIdUsuario($auth->ID, $auth->ID_UNIDADE);
        /* pendentes setor */
        $prazosPendentesUnidade = TPPrazo::factory()->retrivePrazosPendentesByIdUnidade($auth->ID_UNIDADE);
        /* meus vencidos */
        if (is_array($prazosVencidosUsuario)) {
            foreach ($prazosVencidosUsuario as $key => $value) {
                $response['prazos']['vencidos']['usuario'][] = array('id' => $value['ID'], 'dias' => $value['DIAS_RESTANTES'], 'prazo' => $value['DT_PRAZO']);
            }
        } else {
            $response['prazos']['vencidos']['usuario'] = null;
        }
        /* vencidos setor */
        if (is_array($prazosVencidosUnidade)) {
            foreach ($prazosVencidosUnidade as $key => $value) {
                $response['prazos']['vencidos']['setor'][] = array('id' => $value['ID'], 'dias' => $value['DIAS_RESTANTES'], 'prazo' => $value['DT_PRAZO']);
            }
        } else {
            $response['prazos']['vencidos']['setor'] = null;
コード例 #3
0
 */
define('CF_APP_BASE_PATH', realpath(__DIR__ . '/..'));
define('CF_APP_ENVIRONMENT', getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'prd');
/**
 * Configurations
 */
include CF_APP_BASE_PATH . '/classes/CFUtils.php';
include CF_APP_BASE_PATH . '/classes/CFConfig.php';
include CF_APP_BASE_PATH . '/classes/Config.php';
/**
 * HandleFatalError
 */
register_shutdown_function('HandleFatalError');
/**
 * HandleFatalError
 */
function HandleFatalError()
{
    $error = error_get_last();
    if (!is_null($error) && ($error['type'] == E_ERROR || $error['type'] == E_CORE_ERROR || $error['type'] == E_COMPILE_ERROR || $error['type'] == E_RECOVERABLE_ERROR)) {
        include 'classes/Error.php';
        include 'classes/Email.php';
        Error::factory()->handleFatalError()->sendEmailFatalError();
    }
}
/**
 * Config
 */
Config::factory()->buildDBConfig()->buildAppConstants()->buildAppDefines()->buildEnvironment();
TPPrazo::factory()->notifyUsersAllPrazosOpened();