Browse Source

Definir funçao numeroCadastroExiste para verificar números ou nomes repetidos. Definir blogueio para números que já existe na URA

1.9
bruno 2 months ago
parent
commit
a972d64b98
  1. 25
      admin/cadFuncoes.php
  2. 17
      admin/cadUra.php

25
admin/cadFuncoes.php

@ -10,20 +10,43 @@ function GetTypeRamal($type){
};
}
function numeroCadastroExiste($dbcon, $number, $org_id){
/* Encapsular o sistema de verificar números e nome no sistema.
* A funções pode ser usado para nomes ou procurar um número jpa existente.
* Se $name estiver definido vai procurar se existe esse valor no key com stripos
*
* $name = se for definido apenas as keys das querys que `stripos( $key, $name` serão executadas
*/
function numeroCadastroExiste($dbcon, $number, $org_id, $name = false){
$queries = [
'ramal' => "SELECT '' FROM pbx_ramais WHERE nome = $1 AND org_id = $2",
'fila' => "SELECT '' FROM pbx_dacs WHERE numero = $1 AND status = 'A' AND org_id = $2",
'nome_fila' => "SELECT '' FROM pbx_dacs WHERE nome = $1 AND status = 'A' AND org_id = $2",
'ura' => "SELECT '' FROM pbx_ura WHERE teste = $1 AND org_id = $2",
'nome_ura' => "SELECT '' FROM pbx_ura WHERE nome = $1 and org_id = $2",
'anuncio' => "SELECT '' FROM pbx_anuncios WHERE teste = $1 AND org_id = $2",
'disa' => "SELECT '' FROM pbx_disa WHERE numero = $1 AND org_id = $2",
'horario' => "SELECT '' FROM pbx_horarios Where discar = $1 and org_id = $2",
'voicemail' => "SELECT '' FROM pbx_voicemail_usuarios Where caixa_postal = $1 and org_id = $2"
];
/* Se $name for definida o algoritmo testará apenas query para nomes */
foreach ($queries as $key => $query) {
$name_false = ($name && (stripos( $key, $name) === false ? 1 : 0 )); //
$def_name = ((stripos( $key, "nome") === false ? 0 : 1) && ($name === false ? 1 : 0 ));
/* key com nome_ é pulado, pois testará apenas número */
if( $def_name ){
continue;
}
/* retorna se não for query de nome_ testará apenas nomes */
if($name_false){
continue;
}
pg_prepare($dbcon, "existe_{$key}", $query);
$result = pg_execute($dbcon, "existe_{$key}", array($number, $org_id));

17
admin/cadUra.php

@ -75,6 +75,23 @@
if ($acao == "inseri") {
$existe_numero = numeroCadastroExiste($dbcon, $teste, $org_id);
if($existe_numero !== false){
echo "<script>javascript:alert('O número da URA já está sendo usado em $existe_numero');</script>";
echo "<script>javascript:history.back();</script>";
exit();
}
$existe_nome = numeroCadastroExiste($dbcon, $nome, $org_id, "nome_ura");
if($existe_nome !== false){
echo "<script>javascript:alert('Já existe esse nome definido');</script>";
echo "<script>javascript:history.back();</script>";
exit();
}
$acao_asterisk = Acoes_asterisk($dbcon, $opcao_, $acao_ );
$query = "INSERT INTO pbx_ura(nome, tempo_espera, permite_ligacao, som_ura, teste, opcao, acao, timeout_digito, org_id, acao_asterisk)
VALUES ('$nome','$tempo_espera','$permite_ligacao','$som_ura','$teste','$opcao_','$acao_', '$timeout_digito', $org_id, '$acao_asterisk') RETURNING id";

Loading…
Cancel
Save