0, "prt_id" => "1", "dst_nome" => ""); */ $fields = array("bkp_id" => "0", "tp_id" => "0"); /* * Data atual */ $dataAtualBD = date('Y-m-d'); $msgBkp = $msgErroDisp = "Erro ao realizar o backup Manual!"; try { /* * Alimenta os campos do array $field com valores de uma requisição get ou post. */ foreach ($_REQUEST as $key => $value) { if (array_key_exists($key, $fields)) { $fields[$key] = trim($value); } } if (isset($_POST["btConsulta"])) { $tpId = $fields["tp_id"]; if ($tableName) { $fields[$nomeRegId] = GetCurrVal($tableName); } $jsStartup[] = "window.opener.ResetForm();"; $jsStartup[] = "window.setTimeout(\"Close()\", 5000);"; if (!$tpId) { throw new Exception("Informe o \"Tipo\"!"); } if (($tpId == 1) && (soNumero($dataAtual) != '') && (!is_date($dataAtual))) { throw new Exception("Data informada inválida!"); } $dataBkp = date("d/m/Y"); $dataBkp = (soNumero($dataAtual) ? FormatDtMssql($dataAtual) : FormatDtMssql($dataBkp)); $result = ''; $ret = array(); $cmd = sprintf("/var/lib/asterisk/scripts/backup/backup.php %s %s %s %s %s %s", "manual", $fields["tp_id"], $download_diferencial, $dataBkp, GetLogin(), $_ENV['env']); exec($cmd, $ret, $result); $msgErro = implode($ret); if (($tpId == 1) && StringClass::ContemTexto($msgErro, "existem arquivos para realizar")) { $msgBkp = $msgErroDisp = "Não existem arquivos disponíveis ou já foram descarregados!"; throw new Exception($msgErroDisp); } if (!StringClass::ContemTexto($msgErro, "Backup efetuado com sucesso") && StringClass::ContemTexto($msgErro, "Backup efetuado com erro")) { $msgBkp = $msgErro; throw new Exception($msgErro); } if (StringClass::ContemTexto($msgErro, "Backup efetuado com sucesso") && StringClass::ContemTexto($msgErro, "Backup efetuado com erro")) { $msgBkp = $msgErro; throw new Exception("Backup concluído com sucesso mas nem todos foram concluídos sem erro"); } $msg = "Backup concluído!"; if (StringClass::ContemTexto($msgErro, "Backup efetuado com sucesso") && !StringClass::ContemTexto($msgErro, "Backup efetuado com erro")) { $msgBkp = $msg = "Backup Gerado com sucesso!"; } } } catch (Exception $ex) { $erro++; $msgBkp = $msg = $ex->getMessage(); } $lita_tipos = GetBkpTipo($dbcon, $fields["tp_id"]); foreach ($fields as $key => $value) { $smarty->assign($key, $value); } $smarty->assign("tituloFormulario", $tituloFormulario); $smarty->assign("nomeRegId", $nomeRegId); $smarty->assign("regId", $regId); $smarty->assign("tp_id", $fields["tp_id"]); $smarty->assign("lita_tipos", $lita_tipos); $smarty->assign("dataBakup", $dataAtual); $smarty->assign("download_diferencial", $download_diferencial); $smarty->assign("msg", $msg); $smarty->assign("erro", $erro); $smarty->assign("msgBkp", $msgBkp); GetTemplate($smarty, $nomeTpl); function GetBkpTipo($db, $id) { $sel = ''; if (!$id) { $sel = "selected"; } $item = ""; $query = "SELECT tp_id AS id, tp_desc AS desc FROM pbx_backup_tipo ORDER BY 2"; $result = @pg_query($db, $query); while ($row = pg_fetch_array($result)) { $spid = $row["id"]; $desc = $row["desc"]; if ($spid == $id) { $sel = "selected"; } else { $sel = ""; } $item .= ""; } return $item; }