funcoes.php
4.84 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
<?php
namespace admin\catalogo\mapfile\gruposusuarios;
use PDOException;
function listar($dbh,$locaplic,$codigo){
$esquemaadmin = $_SESSION["esquemaadmin"];
if(empty($codigo)){
$dbhw = null;
$dbh = null;
header ( "HTTP/1.1 500 erro codigo invalido" );
exit ();
}
if(file_exists($locaplic."/temas/".$codigo.".map")){
$sql = "
select ".$esquemaadmin."i3geoadmin_temas.codigo_tema, ".$esquemaadmin."i3geousr_grupos.id_grupo,
".$esquemaadmin."i3geousr_grupos.nome, ".$esquemaadmin."i3geousr_grupos.descricao,
".$esquemaadmin."i3geousr_grupotema.id_tema
from
".$esquemaadmin."i3geoadmin_temas
join ".$esquemaadmin."i3geousr_grupotema
on ".$esquemaadmin."i3geoadmin_temas.id_tema = ".$esquemaadmin."i3geousr_grupotema.id_tema
join ".$esquemaadmin."i3geousr_grupos
on ".$esquemaadmin."i3geousr_grupotema.id_grupo = ".$esquemaadmin."i3geousr_grupos.id_grupo
where codigo_tema = '".$codigo."' order by lower(nome)
";
$dados = \admin\php\funcoesAdmin\pegaDados ( $sql, $dbh, false );
} else {
$dbhw = null;
$dbh = null;
header ( "HTTP/1.1 500 erro mapfile nao existe" );
exit ();
}
if ($dados === false) {
return false;
} else {
return $dados;
}
}
function adicionar($locaplic,$codigo,$id_grupo, $id_tema, $dbhw) {
$esquemaadmin = $_SESSION["esquemaadmin"];
if(!file_exists($locaplic."/temas/".$codigo.".map")){
$dbhw = null;
$dbh = null;
header ( "HTTP/1.1 500 erro mapfile nao existe" );
exit ();
}
if(empty($id_grupo) || empty($id_tema)){
header ( "HTTP/1.1 500 erro parametro invalido" );
exit ();
}
$sql = "select * from ".$esquemaadmin."i3geousr_grupotema where id_tema = $id_tema and id_grupo = $id_grupo";
$q = \admin\php\funcoesAdmin\pegaDados($sql, $dbh, false);
if($q){
if(count($q) != 0){
header ( "HTTP/1.1 500 erro valor ja cadastrado" );
exit ();
}
}
try {
$dataCol = array(
"id_tema" => $id_tema,
"id_grupo" => $id_grupo
);
$retorna = \admin\php\funcoesAdmin\i3GeoAdminInsert($dbhw,"i3geousr_grupotema",$dataCol);
return $retorna;
} catch ( PDOException $e ) {
return false;
}
}
function excluir($id_tema, $id_grupo, $dbhw) {
$esquemaadmin = $_SESSION["esquemaadmin"];
try {
$sql = "DELETE from ".$esquemaadmin."i3geousr_grupotema where id_tema = ? and id_grupo = ? ";
$prep = $dbhw->prepare($sql);
$prep->execute(array($id_tema,$id_grupo));
\admin\php\funcoesAdmin\i3GeoAdminInsertLog($dbhw,$sql,array($id_tema,$id_grupo));
return true;
} catch ( PDOException $e ) {
return false;
}
}
//apagar
function listaUsuarios($dbh){
$esquemaadmin = $_SESSION["esquemaadmin"];
$dados = \admin\php\funcoesAdmin\pegaDados ( "SELECT id_usuario, nome_usuario FROM " . $esquemaadmin . "i3geousr_usuarios WHERE ativo = 1 ORDER BY nome_usuario", $dbh, false );
if ($dados === false) {
header ( "HTTP/1.1 500 erro ao consultar banco de dados" );
exit ();
} else {
return $dados;
}
}
function listaGruposUsuario($id_grupo,$dbh){
$esquemaadmin = $_SESSION["esquemaadmin"];
$dados = \admin\php\funcoesAdmin\pegaDados ( "SELECT U.nome_usuario, U.id_usuario, UP.id_grupo FROM " . $esquemaadmin . "i3geousr_grupousuario AS UP JOIN " . $esquemaadmin . "i3geousr_usuarios AS U ON U.id_usuario = UP.id_usuario WHERE UP.id_grupo = $id_grupo", $dbh, false );
if ($dados === false) {
header ( "HTTP/1.1 500 erro ao consultar banco de dados" );
exit ();
} else {
return $dados;
}
}
function alterar($id_grupo, $nome, $descricao, $usuarios, $dbhw) {
$convUTF = $_SESSION["convUTF"];
$esquemaadmin = $_SESSION["esquemaadmin"];
if ($convUTF != true) {
$nome = utf8_decode ( $nome );
$descricao = utf8_decode ( $descricao );
}
$dataCol = array (
"nome" => $nome,
"descricao" => $descricao
);
$resultado = \admin\php\funcoesAdmin\i3GeoAdminUpdate ( $dbhw, "i3geousr_grupos", $dataCol, "WHERE id_grupo = $id_grupo" );
if ($resultado === false) {
return false;
}
// apaga todos os papeis
$resultado = \admin\usuarios\grupos\excluirUsuarios ( $id_grupo, $dbhw );
if ($resultado === false) {
return false;
}
if (! empty ( $usuarios )) {
// atualiza papeis vinculados
foreach ( $usuarios as $p ) {
$resultado = \admin\usuarios\grupos\adicionaUsuario ( $id_grupo, $p, $dbhw );
if ($resultado === false) {
return false;
}
}
}
return $id_grupo;
}
function adicionaUsuario($id_grupo, $id_usuario, $dbhw) {
$esquemaadmin = $_SESSION["esquemaadmin"];
$dataCol = array (
"id_usuario" => $id_usuario,
"id_grupo" => $id_grupo
);
$resultado = \admin\php\funcoesAdmin\i3GeoAdminInsert ( $dbhw, "i3geousr_grupousuario", $dataCol );
return $resultado;
}
function excluirUsuarios($id_grupo, $dbhw) {
$esquemaadmin = $_SESSION["esquemaadmin"];
$resultado = \admin\php\funcoesAdmin\i3GeoAdminExclui ( $esquemaadmin . "i3geousr_grupousuario", "id_grupo", $id_grupo, $dbhw, false );
return $resultado;
}
?>