PageRenderTime 47ms CodeModel.GetById 13ms RepoModel.GetById 0ms app.codeStats 0ms

/eventosalab/admin/controles/ctrl_presenca_old-07-08-2012.php

https://github.com/viollarr/alab
PHP | 815 lines | 404 code | 61 blank | 350 comment | 52 complexity | 5215db15b8b43c116f49a0bcb8f343dd MD5 | raw file
Possible License(s): LGPL-2.1, GPL-2.0, AGPL-3.0, Apache-2.0, BSD-3-Clause, GPL-3.0
  1. <?php
  2. class ctrl_presenca extends ctrl_generico {
  3. function __construct() {
  4. $this->id_evento = $_SESSION["id_evento_admin"];
  5. //$this->tabela = "ev_evento";
  6. }
  7. /**
  8. * Apenas chama a tela que exibe as demais opcĂľes.
  9. */
  10. function presencas() {
  11. /* Participantes */
  12. $sql = "SELECT id, nome FROM ev_participante WHERE id_evento='" . $this->id_evento . "' ORDER BY nome ASC";
  13. $result = mysql_query($sql);
  14. $participantes = array();
  15. while ($linha = mysql_fetch_array($result, MYSQL_ASSOC)) {
  16. // Adiciona essa linha de registro na variĂĄvel que serĂĄ passada para a TELA
  17. array_push($participantes, $linha);
  18. } //while
  19. $GLOBALS["participantes"] = $participantes;
  20. if ($this->id_evento == 28)
  21. return "presencas_qp4";
  22. return "presencas";
  23. }
  24. function presencas_participante() {
  25. //////////////////////////////////
  26. // ConexĂŁo com o banco de dados //
  27. //////////////////////////////////
  28. //////////////////////////////////////
  29. // Classe de avaliação de trabalhos //
  30. //////////////////////////////////////
  31. require_once("controles/ctrl_avaliacao.php");
  32. $ctrl_avaliacao = new ctrl_avaliacao();
  33. ////////////////////////////////////
  34. // ID do participante selecionado //
  35. ////////////////////////////////////
  36. $id_participante = (int) $_GET['id'];
  37. //////////////////
  38. // PARTICIPANTE //
  39. //////////////////
  40. $sql = "SELECT id, nome, id_tipo_participante FROM ev_participante WHERE id_evento='" . $this->id_evento . "' AND id = " . $id_participante . " LIMIT 1";
  41. $result = mysql_query($sql);
  42. $participante = mysql_fetch_array($result, MYSQL_ASSOC);
  43. ///////////////////////////////////
  44. // COMISSÃO ACADÊMICO-CIENTÍFICA //
  45. ///////////////////////////////////
  46. // id_tipo_participante: 10
  47. ///////////////
  48. // Presenças //
  49. ///////////////
  50. $presencas = array();
  51. $sql = "SELECT * FROM ev_presenca WHERE id_evento='" . $this->id_evento . "' AND id_participante = " . $id_participante . " ";
  52. $result = mysql_query($sql);
  53. while ($linha = mysql_fetch_array($result, MYSQL_ASSOC)) {
  54. $presencas[] = $linha;
  55. }//while
  56. $participante['presencas'] = $presencas;
  57. //////////////////////////
  58. // COORDENAÇÃO SIMPÓSIO //
  59. //////////////////////////
  60. $simposios_coordenados = array();
  61. // Pegar simpĂłsios cooordenados por este participante
  62. $sql = "SELECT s.id, s.titulo_sessao
  63. FROM ev_simposio s INNER JOIN ev_simposio_coordenador sc
  64. ON s.id = sc.id_simposio
  65. WHERE
  66. sc.id_participante = " . $id_participante . "
  67. AND s.id_evento = " . $this->id_evento . "
  68. ";
  69. $result = mysql_query($sql);
  70. while ($linha = mysql_fetch_array($result, MYSQL_ASSOC)) {
  71. $simposios_coordenados[] = $linha;
  72. }//while
  73. $participante['simposios_coordenados'] = $simposios_coordenados;
  74. //////////////////////////
  75. // TRABALHO EM SIMPÓSIO //
  76. //////////////////////////
  77. $trabalhos_em_simposio = array();
  78. // Pegar trabalhos em simpĂłsio deste participante
  79. $sql = "SELECT id, titulo
  80. FROM ev_resumo
  81. WHERE
  82. id_evento='" . $this->id_evento . "'
  83. AND (autor = " . $id_participante . " OR co_autor = " . $id_participante . ")
  84. AND id_tipo_trabalho = 1
  85. AND id_simposio > 0
  86. ORDER BY titulo ASC";
  87. $result = mysql_query($sql);
  88. while ($linha = mysql_fetch_array($result, MYSQL_ASSOC)) {
  89. $trabalhos_em_simposio[] = $linha;
  90. }//while
  91. $participante['trabalhos_em_simposio'] = $trabalhos_em_simposio; // array
  92. /////////////////////////////////////////////////
  93. // COORDENAÇÃO DE SESSÃO [COMUNIC. COORDENADA] //
  94. /////////////////////////////////////////////////
  95. $coordenadas = array();
  96. // Pegar simpĂłsios cooordenados por este participante
  97. $sql = "SELECT id, titulo_sessao
  98. FROM ev_comunicacao_coordenada
  99. WHERE
  100. id_coordenador = " . $id_participante . "
  101. AND id_evento = " . $this->id_evento . "
  102. ";
  103. $result = mysql_query($sql);
  104. while ($linha = mysql_fetch_array($result, MYSQL_ASSOC)) {
  105. $coordenadas[] = $linha;
  106. }//while
  107. $participante['sessoes_coordenadas'] = $coordenadas;
  108. ////////////////////////////////////////////
  109. // APRESENTAÇÃO DE COMUNICAÇÃO INDIVIDUAL //
  110. ////////////////////////////////////////////
  111. $comunicacoes_individuais = array();
  112. // Pegar todas comunicaçþes individuais deste participante
  113. if ($this->id_evento == 28) {
  114. $sql = "SELECT resumo.id, resumo.titulo
  115. FROM ev_resumo resumo, ev_participante_resumo participante_resumo
  116. WHERE participante_resumo.id_participante = $id_participante
  117. AND participante_resumo.id_resumo = resumo.id
  118. AND resumo.id_tipo_trabalho = 3
  119. ORDER BY resumo.titulo ASC";
  120. } else {
  121. $sql = "SELECT id, titulo
  122. FROM ev_resumo
  123. WHERE
  124. id_evento='" . $this->id_evento . "'
  125. AND (autor = " . $id_participante . " OR co_autor = " . $id_participante . ")
  126. AND id_tipo_trabalho = 3
  127. ORDER BY titulo ASC";
  128. }
  129. $result = mysql_query($sql);
  130. while ($linha = mysql_fetch_array($result, MYSQL_ASSOC)) {
  131. // Verificar se foram aceitos, e caso SIM,
  132. // acrescentar no array de pĂ´steres deste participante
  133. if ($ctrl_avaliacao->aceito($linha['id'], 'comunicacao_individual')) {
  134. //echo "Trabalho Aceito";
  135. $comunicacoes_individuais[] = $linha;
  136. }//if
  137. }//while
  138. $participante['comunicacoes_individuais'] = $comunicacoes_individuais; // array
  139. ////////////////////////////////////////////
  140. // APRESENTAÇÃO DE COMUNICAÇÃO COORDENADA //
  141. ////////////////////////////////////////////
  142. $comunicacoes_coordenadas = array();
  143. // Pegar todos os trabalhos em comunicação coordenada deste participante
  144. if ($this->id_evento == 28) {
  145. $sql = "SELECT resumo.id, resumo.titulo
  146. FROM ev_resumo resumo, ev_participante_resumo participante_resumo
  147. WHERE participante_resumo.id_participante = $id_participante
  148. AND participante_resumo.id_resumo = resumo.id
  149. AND resumo.id_tipo_trabalho = 2
  150. AND resumo.id_comunicacao_coordenada > 0
  151. ORDER BY resumo.titulo ASC";
  152. } else {
  153. $sql = "SELECT id, titulo
  154. FROM ev_resumo
  155. WHERE
  156. id_evento='" . $this->id_evento . "'
  157. AND (autor = " . $id_participante . " OR co_autor = " . $id_participante . ")
  158. AND id_tipo_trabalho = 2
  159. AND id_comunicacao_coordenada > 0
  160. ORDER BY titulo ASC";
  161. }
  162. $result = mysql_query($sql);
  163. while ($linha = mysql_fetch_array($result, MYSQL_ASSOC)) {
  164. // Verificar se foram aceitos, e caso SIM,
  165. // acrescentar no array de pĂ´steres deste participante
  166. if ($ctrl_avaliacao->aceito($linha['id'], 'resumo_em_coordenada')) {
  167. //echo "Trabalho Aceito";
  168. $comunicacoes_coordenadas[] = $linha;
  169. }//if
  170. }//while
  171. $participante['comunicacoes_coordenadas'] = $comunicacoes_coordenadas; // array
  172. ////////////////////////////
  173. // APRESENTAÇÃO DE PÔSTER //
  174. ////////////////////////////
  175. $posteres = array();
  176. // Pegar todos os posteres deste participante
  177. $sql = "SELECT id, titulo
  178. FROM ev_resumo
  179. WHERE
  180. id_evento='" . $this->id_evento . "'
  181. AND (autor = " . $id_participante . " OR co_autor = " . $id_participante . ")
  182. AND id_tipo_trabalho = 4
  183. ORDER BY titulo ASC";
  184. $result = mysql_query($sql);
  185. while ($linha = mysql_fetch_array($result, MYSQL_ASSOC)) {
  186. // Verificar se foram aceitos, e caso SIM,
  187. // acrescentar no array de pĂ´steres deste participante
  188. if ($ctrl_avaliacao->aceito($linha['id'], 'poster')) {
  189. //echo "Trabalho Aceito";
  190. $posteres[] = $linha;
  191. }//if
  192. }//while
  193. $participante['posteres'] = $posteres; // array
  194. $GLOBALS["participante"] = $participante;
  195. return "presencas_participante";
  196. }
  197. function presencas_qp4_participante() {
  198. //////////////////////////////////////
  199. // Classe de avaliação de trabalhos //
  200. //////////////////////////////////////
  201. require_once("controles/ctrl_avaliacao.php");
  202. $ctrl_avaliacao = new ctrl_avaliacao();
  203. ////////////////////////////////////
  204. // ID do participante selecionado //
  205. ////////////////////////////////////
  206. $id_participante = (int) $_POST['id_participante'];
  207. //////////////////
  208. // PARTICIPANTE //
  209. //////////////////
  210. //$participante = array();
  211. $sql = "SELECT id, nome, id_tipo_participante FROM ev_participante WHERE id_evento='" . $this->id_evento . "' AND id = " . $id_participante . " LIMIT 1";
  212. $result = mysql_query($sql);
  213. $participante = mysql_fetch_array($result, MYSQL_ASSOC);
  214. /////////////////////////////////////////////////
  215. // COORDENAÇÃO DE SESSÃO [COMUNIC. COORDENADA] //
  216. /////////////////////////////////////////////////
  217. // Pegar comunicaçőes cooordenadas por este participante
  218. $sql = "SELECT id, titulo_sessao AS titulo
  219. FROM ev_comunicacao_coordenada
  220. WHERE
  221. id_coordenador = " . $id_participante . "
  222. AND id_evento = " . $this->id_evento;
  223. $result = mysql_query($sql);
  224. $participante['sessoes_coordenadas'] = array();
  225. while ($linha = mysql_fetch_array($result, MYSQL_ASSOC))
  226. $participante['sessoes_coordenadas'][] = $linha;
  227. ////////////////////////////////////////////
  228. // APRESENTAÇÃO DE COMUNICAÇÃO INDIVIDUAL //
  229. ////////////////////////////////////////////
  230. // Pegar todas comunicaçþes individuais deste participante
  231. $sql = "SELECT resumo.id, resumo.titulo
  232. FROM ev_resumo resumo, ev_participante_resumo participante_resumo
  233. WHERE participante_resumo.id_participante = $id_participante
  234. AND participante_resumo.id_resumo = resumo.id
  235. AND resumo.id_tipo_trabalho = 3
  236. ORDER BY resumo.titulo ASC";
  237. $result = mysql_query($sql);
  238. $participante['comunicacoes_individuais'] = array();
  239. while ($linha = mysql_fetch_array($result, MYSQL_ASSOC)) {
  240. // Verificar se foram aceitos, e caso SIM,
  241. // acrescentar no array de comunicaçőes individuais deste participante
  242. if ($ctrl_avaliacao->aceito($linha['id'], 'comunicacao_individual')) {
  243. //echo "Trabalho Aceito";
  244. $participante['comunicacoes_individuais'][] = $linha;
  245. }//if
  246. }//while
  247. ////////////////////////////////////////////
  248. // APRESENTAÇÃO DE COMUNICAÇÃO COORDENADA //
  249. ////////////////////////////////////////////
  250. // Pegar todos os trabalhos em comunicação coordenada deste participante
  251. $sql = "SELECT resumo.id, resumo.titulo
  252. FROM ev_resumo resumo, ev_participante_resumo participante_resumo
  253. WHERE participante_resumo.id_participante = $id_participante
  254. AND participante_resumo.id_resumo = resumo.id
  255. AND resumo.id_tipo_trabalho = 2
  256. AND resumo.id_comunicacao_coordenada > 0
  257. ORDER BY resumo.titulo ASC";
  258. $result = mysql_query($sql);
  259. $participante['comunicacoes_coordenadas'] = array();
  260. while ($linha = mysql_fetch_array($result, MYSQL_ASSOC)) {
  261. // Verificar se foram aceitos, e caso SIM,
  262. // acrescentar no array de resumo em coordenada deste participante
  263. if ($ctrl_avaliacao->aceito($linha['id'], 'resumo_em_coordenada')) {
  264. //echo "Trabalho Aceito";
  265. $participante['comunicacoes_coordenadas'][] = $linha;
  266. }//if
  267. }//while
  268. $GLOBALS["participante"] = $participante;
  269. //echo "presencas_qp4_participante()";
  270. require_once("telas/presencas_qp4_participante.php");
  271. exit();
  272. }
  273. function salvar() {
  274. //////////////////////////////////
  275. // ConexĂŁo com o banco de dados //
  276. //////////////////////////////////
  277. ////////////////////////////////////
  278. // ID do participante selecionado //
  279. ////////////////////////////////////
  280. $id_participante = (int) $_POST['id'];
  281. /*
  282. print "POST: <pre>";
  283. print_r($_POST);
  284. print "</pre>";
  285. /* */
  286. // DELETANDO PRESENÇAS ANTERIORES PARA PODER CADASTRAR AS NOVAS.
  287. $sql = "DELETE FROM ev_presenca WHERE id_participante = '$id_participante' AND id_evento='" . $this->id_evento . "' ";
  288. mysql_query($sql); // or die(mysql_error());
  289. // OUVINTE
  290. if (!empty($_POST['ouvinte'])) {
  291. $ouvinte_presente = $_POST['ouvinte'];
  292. $values[] = "('" . $this->id_evento . "', '$id_participante', '0', 'ouvinte', '$ouvinte_presente')";
  293. } //if
  294. // COMISSÃO ACADÊMICO-CIENTÍFICA
  295. if (!empty($_POST['comissao'])) {
  296. $comissao_presente = $_POST['comissao'];
  297. $values[] = "('" . $this->id_evento . "', '$id_participante', '0', 'comissao', '$comissao_presente')";
  298. } //if
  299. // SIMPÓSIOS COORDENADOS POR ESTE PARTICIPANTE
  300. $simposios_coordenados = $_POST['simposios_coordenados'];
  301. if (is_array($simposios_coordenados)) {
  302. foreach ($simposios_coordenados as $id_trabalho) {
  303. $presente = addslashes($_POST["simposio_" . $id_trabalho]);
  304. $values[] = "('" . $this->id_evento . "', '$id_participante', '$id_trabalho', 'coordenacao_simposio', '$presente')";
  305. } //foreach
  306. } //if
  307. // TRABLHOS (RESUMOS) EM SIMPÓSIOS
  308. $trabalhos_em_simposio = $_POST['trabalhos_em_simposio'];
  309. if (is_array($trabalhos_em_simposio)) {
  310. foreach ($trabalhos_em_simposio as $id_trabalho) {
  311. $presente = addslashes($_POST["trabalho_em_simposio_" . $id_trabalho]);
  312. $values[] = "('" . $this->id_evento . "', '$id_participante', '$id_trabalho', 'trabalho_em_simposio', '$presente')";
  313. } //foreach
  314. } //if
  315. // SESSÕES (COMUNICAÇÃO COORDENADA) COORDENADAS POR ESTE PARTICIPANTE
  316. $sessoes_coordenadas = $_POST['sessoes_coordenadas'];
  317. if (is_array($sessoes_coordenadas)) {
  318. foreach ($sessoes_coordenadas as $id_trabalho) {
  319. $presente = addslashes($_POST["sessao_coordenada_" . $id_trabalho]);
  320. $values[] = "('" . $this->id_evento . "', '$id_participante', '$id_trabalho', 'coordenacao_sessao', '$presente')";
  321. } //foreach
  322. } //if
  323. // COMUNICAÇÕES INDIVIDUAIS
  324. $comunicacoes_individuais = $_POST['comunicacoes_individuais'];
  325. if (is_array($comunicacoes_individuais)) {
  326. foreach ($comunicacoes_individuais as $id_trabalho) {
  327. $presente = addslashes($_POST["comunicacao_individual_" . $id_trabalho]);
  328. $values[] = "('" . $this->id_evento . "', '$id_participante', '$id_trabalho', 'comunicacao_individual', '$presente')";
  329. } //foreach
  330. } //if
  331. // TRABLHOS (RESUMOS) EM COMUNICAÇÕES COORDENADAS
  332. $comunicacoes_coordenadas = $_POST['comunicacoes_coordenadas'];
  333. if (is_array($comunicacoes_coordenadas)) {
  334. foreach ($comunicacoes_coordenadas as $id_trabalho) {
  335. $presente = addslashes($_POST["comunicacao_coordenada_" . $id_trabalho]);
  336. $values[] = "('" . $this->id_evento . "', '$id_participante', '$id_trabalho', 'comunicacao_coordenada', '$presente')";
  337. } //foreach
  338. } //if
  339. // PÔSTERES
  340. $posteres = $_POST['posteres'];
  341. if (is_array($posteres)) {
  342. foreach ($posteres as $id_trabalho) {
  343. $presente = addslashes($_POST["poster_" . $id_trabalho]);
  344. $values[] = "('" . $this->id_evento . "', '$id_participante', '$id_trabalho', 'poster', '$presente')";
  345. } //foreach
  346. } //if
  347. // Concatenando os values para inserir no banco de dados
  348. $values = implode(", ", $values);
  349. $sql = "INSERT INTO ev_presenca(id_evento, id_participante, id_trabalho, tipo, presente) VALUES " . $values;
  350. /*
  351. print "SQL: <pre>";
  352. print_r($sql);
  353. print "</pre>";
  354. /* */
  355. mysql_query($sql); // or die(mysql_error());
  356. if (mysql_affected_rows() > 0)
  357. $GLOBALS['msg_ctrl_presenca'] = "Presen&ccedil;a(s) cadastrada(s) com sucesso.";
  358. else
  359. $GLOBALS['msg_ctrl_presenca'] = "N&atilde;o foi poss&iacute;vel cadastrar a(s) presen&ccedil;a(s).";
  360. return $this->presencas();
  361. //exit("<hr />ctrl_presenca");
  362. }
  363. function salvar_presenca() {
  364. $presente = $_POST['presente'];
  365. $id_participante = $_POST['id_participante'];
  366. $id_trabalho = $_POST['id_trabalho'];
  367. $tipo_certificado = $_POST['tipo_certificado'];
  368. $this->pr('presente', $presente);
  369. $this->pr('id_participante', $id_participante);
  370. $this->pr('id_trabalho', $id_trabalho);
  371. $this->pr('tipo_certificado', $tipo_certificado);
  372. exit("salvar_presenca()");
  373. //////////////////////////////////
  374. // ConexĂŁo com o banco de dados //
  375. //////////////////////////////////
  376. ////////////////////////////////////
  377. // ID do participante selecionado //
  378. ////////////////////////////////////
  379. $id_participante = (int) $_POST['id'];
  380. /*
  381. print "POST: <pre>";
  382. print_r($_POST);
  383. print "</pre>";
  384. /* */
  385. // DELETANDO PRESENÇAS ANTERIORES PARA PODER CADASTRAR AS NOVAS.
  386. $sql = "DELETE FROM ev_presenca WHERE id_participante = '$id_participante' AND id_evento='" . $this->id_evento . "' ";
  387. mysql_query($sql); // or die(mysql_error());
  388. // OUVINTE
  389. if (!empty($_POST['ouvinte'])) {
  390. $ouvinte_presente = $_POST['ouvinte'];
  391. $values[] = "('" . $this->id_evento . "', '$id_participante', '0', 'ouvinte', '$ouvinte_presente')";
  392. } //if
  393. // COMISSÃO ACADÊMICO-CIENTÍFICA
  394. if (!empty($_POST['comissao'])) {
  395. $comissao_presente = $_POST['comissao'];
  396. $values[] = "('" . $this->id_evento . "', '$id_participante', '0', 'comissao', '$comissao_presente')";
  397. } //if
  398. // SIMPÓSIOS COORDENADOS POR ESTE PARTICIPANTE
  399. $simposios_coordenados = $_POST['simposios_coordenados'];
  400. if (is_array($simposios_coordenados)) {
  401. foreach ($simposios_coordenados as $id_trabalho) {
  402. $presente = addslashes($_POST["simposio_" . $id_trabalho]);
  403. $values[] = "('" . $this->id_evento . "', '$id_participante', '$id_trabalho', 'coordenacao_simposio', '$presente')";
  404. } //foreach
  405. } //if
  406. // TRABLHOS (RESUMOS) EM SIMPÓSIOS
  407. $trabalhos_em_simposio = $_POST['trabalhos_em_simposio'];
  408. if (is_array($trabalhos_em_simposio)) {
  409. foreach ($trabalhos_em_simposio as $id_trabalho) {
  410. $presente = addslashes($_POST["trabalho_em_simposio_" . $id_trabalho]);
  411. $values[] = "('" . $this->id_evento . "', '$id_participante', '$id_trabalho', 'trabalho_em_simposio', '$presente')";
  412. } //foreach
  413. } //if
  414. // SESSÕES (COMUNICAÇÃO COORDENADA) COORDENADAS POR ESTE PARTICIPANTE
  415. $sessoes_coordenadas = $_POST['sessoes_coordenadas'];
  416. if (is_array($sessoes_coordenadas)) {
  417. foreach ($sessoes_coordenadas as $id_trabalho) {
  418. $presente = addslashes($_POST["sessao_coordenada_" . $id_trabalho]);
  419. $values[] = "('" . $this->id_evento . "', '$id_participante', '$id_trabalho', 'coordenacao_sessao', '$presente')";
  420. } //foreach
  421. } //if
  422. // COMUNICAÇÕES INDIVIDUAIS
  423. $comunicacoes_individuais = $_POST['comunicacoes_individuais'];
  424. if (is_array($comunicacoes_individuais)) {
  425. foreach ($comunicacoes_individuais as $id_trabalho) {
  426. $presente = addslashes($_POST["comunicacao_individual_" . $id_trabalho]);
  427. $values[] = "('" . $this->id_evento . "', '$id_participante', '$id_trabalho', 'comunicacao_individual', '$presente')";
  428. } //foreach
  429. } //if
  430. // TRABLHOS (RESUMOS) EM COMUNICAÇÕES COORDENADAS
  431. $comunicacoes_coordenadas = $_POST['comunicacoes_coordenadas'];
  432. if (is_array($comunicacoes_coordenadas)) {
  433. foreach ($comunicacoes_coordenadas as $id_trabalho) {
  434. $presente = addslashes($_POST["comunicacao_coordenada_" . $id_trabalho]);
  435. $values[] = "('" . $this->id_evento . "', '$id_participante', '$id_trabalho', 'comunicacao_coordenada', '$presente')";
  436. } //foreach
  437. } //if
  438. // PÔSTERES
  439. $posteres = $_POST['posteres'];
  440. if (is_array($posteres)) {
  441. foreach ($posteres as $id_trabalho) {
  442. $presente = addslashes($_POST["poster_" . $id_trabalho]);
  443. $values[] = "('" . $this->id_evento . "', '$id_participante', '$id_trabalho', 'poster', '$presente')";
  444. } //foreach
  445. } //if
  446. // Concatenando os values para inserir no banco de dados
  447. $values = implode(", ", $values);
  448. $sql = "INSERT INTO ev_presenca(id_evento, id_participante, id_trabalho, tipo, presente) VALUES " . $values;
  449. /*
  450. print "SQL: <pre>";
  451. print_r($sql);
  452. print "</pre>";
  453. /* */
  454. mysql_query($sql); // or die(mysql_error());
  455. if (mysql_affected_rows() > 0)
  456. $GLOBALS['msg_ctrl_presenca'] = "Presen&ccedil;a(s) cadastrada(s) com sucesso.";
  457. else
  458. $GLOBALS['msg_ctrl_presenca'] = "N&atilde;o foi poss&iacute;vel cadastrar a(s) presen&ccedil;a(s).";
  459. return $this->presencas();
  460. //exit("<hr />ctrl_presenca");
  461. }
  462. function debatedores_simposio() {
  463. // ConexĂŁo com o banco de dados
  464. // Participantes
  465. $sql = "SELECT id, nome FROM ev_participante WHERE id_evento='" . $this->id_evento . "' ORDER BY nome ASC";
  466. $result = mysql_query($sql);
  467. $debatedores = array();
  468. while ($participante = mysql_fetch_array($result, MYSQL_ASSOC)) {
  469. // Verificar se ĂŠ debatedor de algum simpĂłsio
  470. $sql_simposios = "SELECT id, titulo_sessao
  471. FROM ev_simposio
  472. WHERE
  473. id_evento='" . $this->id_evento . "'
  474. AND (id_participante_debatedor = " . $participante['id'] . " OR id_participante_debatedor_2 = " . $participante['id'] . ")
  475. ORDER BY titulo_sessao ASC";
  476. $result_simposios = mysql_query($sql_simposios);
  477. // Se for debatedor de algum simpĂłsio...
  478. if (mysql_num_rows($result_simposios) > 0) {
  479. // Salvar dados do(s) simpĂłsio(s) do(s) qual(is) este participante ĂŠ debatedor
  480. while ($simposio = mysql_fetch_array($result_simposios, MYSQL_ASSOC)) {
  481. // Presenças
  482. $sql_presencas = "SELECT presente FROM ev_presenca
  483. WHERE
  484. id_evento='" . $this->id_evento . "'
  485. AND id_participante = " . $participante['id'] . "
  486. AND tipo = 'debatedor_simposio'
  487. AND id_trabalho = '" . $simposio['id'] . "' ";
  488. $result_presenca = mysql_query($sql_presencas);
  489. $linha_presenca = mysql_fetch_assoc($result_presenca);
  490. // Salvando a presença deste debatedor (participante) para este simpósio
  491. $simposio['presenca'] = $linha_presenca['presente'];
  492. // Salvando os simpósios do debatedor com as respectivas presenças
  493. $participante['simposios'][] = $simposio;
  494. }//while
  495. // Array de debatedores
  496. $debatedores[] = $participante;
  497. }//if
  498. } //while
  499. /*
  500. print "<br /><br />(ctrl_presenca) Debatedores: <pre>";
  501. print_r($debatedores);
  502. print "</pre>";
  503. /* */
  504. //$debatedores[$i]['nome'];
  505. //$debatedores[$i]['simpĂłsio']['titulo_sessao'];
  506. //$debatedores[$i]['simpĂłsio']['presenca'];
  507. $GLOBALS["debatedores"] = $debatedores;
  508. return "debatedores_simposio";
  509. }
  510. //function
  511. function salvar_presencas_debatedores_simposio() {
  512. // ConexĂŁo com o banco de dados
  513. /*
  514. print "<br /><br />(ctrl_presenca) Presenças: <pre>";
  515. print_r($_POST['presencas']);
  516. print "</pre>";
  517. /* */
  518. foreach ($_POST['presencas'] as $linha_presenca) {
  519. $arr_presenca = explode("|", $linha_presenca);
  520. $linha = (int) $arr_presenca[0];
  521. $id_participante = (int) $arr_presenca[1];
  522. $id_simposio = (int) $arr_presenca[2];
  523. $presenca = '';
  524. if ($_POST["presenca_" . $linha] == 'sim')
  525. $presenca = 'sim';
  526. if ($_POST["presenca_" . $linha] == 'nao')
  527. $presenca = 'nao';
  528. if (!empty($presenca)) {
  529. // Verificar se jå tem presença cadastrada para debatedor de simpósio.
  530. // Caso tenha, faz o update se nĂŁo faz o insert.
  531. $sql_presenca_anterior = "SELECT * FROM ev_presenca
  532. WHERE
  533. id_evento = '" . $this->id_evento . "'
  534. AND id_participante = '" . $id_participante . "'
  535. AND id_trabalho = '" . $id_simposio . "'
  536. AND tipo = 'debatedor_simposio' ";
  537. $result_presenca_anterior = mysql_query($sql_presenca_anterior);
  538. // Update
  539. if (mysql_num_rows($result_presenca_anterior) > 0) {
  540. /* echo "<hr>" . */$sql = "UPDATE ev_presenca
  541. SET
  542. presente = '" . $presenca . "'
  543. WHERE
  544. id_evento = '" . $this->id_evento . "'
  545. AND id_participante = '" . $id_participante . "'
  546. AND id_trabalho = '" . $id_simposio . "'
  547. AND tipo = 'debatedor_simposio' ";
  548. } // if
  549. // Insert
  550. else {
  551. /* echo "<hr>" . */$sql = "INSERT INTO ev_presenca(id_evento, id_participante, id_trabalho, tipo, presente)
  552. VALUES ('" . $this->id_evento . "', '" . $id_participante . "', '" . $id_simposio . "', 'debatedor_simposio', '" . $presenca . "')";
  553. }//else
  554. mysql_query($sql) or die(mysql_error());
  555. }
  556. } // foreach
  557. $GLOBALS['msg_ctrl_presenca'] = "Presen&ccedil;a(s) cadastrada(s) com sucesso.";
  558. return $this->debatedores_simposio();
  559. }
  560. private function pr($label = '', $var) {
  561. ?>
  562. <div>
  563. <?php
  564. $label = utf8_encode($label);
  565. echo "{$label}: <pre>";
  566. print_r($var);
  567. echo "</pre><br/>";
  568. ?>
  569. </div>
  570. <?php
  571. }
  572. //function
  573. ////////////////////////////////////////////////////////////////////////
  574. // Usada para popular a tabela presenca com valores 'sim' para todos. //
  575. // ---> USAR COM MUITA CAUTELA!!! <--- //
  576. ////////////////////////////////////////////////////////////////////////
  577. /*
  578. function popular_presencas(){
  579. // Participantes
  580. $sql = "SELECT id, nome, id_tipo_participante FROM ev_participante WHERE id_evento='".$this->id_evento."' ORDER BY nome ASC";
  581. $result = mysql_query($sql);
  582. $participantes = array();
  583. while($linha = mysql_fetch_array($result, MYSQL_ASSOC)){
  584. // Adiciona essa linha de registro na variĂĄvel que serĂĄ passada para a TELA
  585. array_push($participantes, $linha);
  586. } //while
  587. //////////////////////////////////////
  588. // Classe de avaliação de trabalhos //
  589. //////////////////////////////////////
  590. require_once("controles/ctrl_avaliacao.php");
  591. $ctrl_avaliacao = new ctrl_avaliacao();
  592. foreach($participantes as $participante){
  593. $values = array();
  594. /////////////
  595. // OUVINTE //
  596. /////////////
  597. $values[] = "('".$this->id_evento."', '".$participante['id']."', '0', 'ouvinte', 'sim')";
  598. ///////////////////////////////////
  599. // COMISSÃO ACADÊMICO-CIENTÍFICA //
  600. ///////////////////////////////////
  601. // id_tipo_participante: 10
  602. if($participante['id_tipo_participante'] == 10){
  603. $values[] = "('".$this->id_evento."', '".$participante['id']."', '0', 'comissao', 'sim')";
  604. }
  605. //////////////////////////
  606. // COORDENAÇÃO SIMPÓSIO //
  607. //////////////////////////
  608. $simposios_coordenados = array();
  609. // Pegar simpĂłsios cooordenados por este participante
  610. $sql = "SELECT s.id, s.titulo_sessao
  611. FROM ev_simposio s INNER JOIN ev_simposio_coordenador sc
  612. ON s.id = sc.id_simposio
  613. WHERE
  614. sc.id_participante = ".$participante['id']."
  615. AND s.id_evento = ".$this->id_evento."
  616. ";
  617. $result = mysql_query($sql);
  618. while($linha = mysql_fetch_array($result, MYSQL_ASSOC)){
  619. $values[] = "('".$this->id_evento."', '".$participante['id']."', '".$linha['id']."', 'coordenacao_simposio', 'sim')";
  620. }//while
  621. //////////////////////////
  622. // TRABALHO EM SIMPÓSIO //
  623. //////////////////////////
  624. $trabalhos_em_simposio = array();
  625. // Pegar trabalhos em simpĂłsio deste participante
  626. $sql = "SELECT id, titulo
  627. FROM ev_resumo
  628. WHERE
  629. id_evento='".$this->id_evento."'
  630. AND (autor = ".$participante['id']." OR co_autor = ".$participante['id'].")
  631. AND id_tipo_trabalho = 1
  632. AND id_simposio > 0
  633. ORDER BY titulo ASC";
  634. $result = mysql_query($sql);
  635. while($linha = mysql_fetch_array($result, MYSQL_ASSOC)){
  636. $values[] = "('".$this->id_evento."', '".$participante['id']."', '".$linha['id']."', 'trabalho_em_simposio', 'sim')";
  637. }//while
  638. /////////////////////////////////////////////////
  639. // COORDENAÇÃO DE SESSÃO [COMUNIC. COORDENADA] //
  640. /////////////////////////////////////////////////
  641. $coordenadas = array();
  642. // Pegar simpĂłsios cooordenados por este participante
  643. $sql = "SELECT id, titulo_sessao
  644. FROM ev_comunicacao_coordenada
  645. WHERE
  646. id_coordenador = ".$participante['id']."
  647. AND id_evento = ".$this->id_evento."
  648. ";
  649. $result = mysql_query($sql);
  650. while($linha = mysql_fetch_array($result, MYSQL_ASSOC)){
  651. $values[] = "('".$this->id_evento."', '".$participante['id']."', '".$linha['id']."', 'coordenacao_sessao', 'sim')";
  652. }//while
  653. ////////////////////////////////////////////
  654. // APRESENTAÇÃO DE COMUNICAÇÃO INDIVIDUAL //
  655. ////////////////////////////////////////////
  656. $comunicacoes_individuais = array();
  657. // Pegar todas comunicaçþes individuais deste participante
  658. $sql = "SELECT id, titulo
  659. FROM ev_resumo
  660. WHERE
  661. id_evento='".$this->id_evento."'
  662. AND (autor = ".$participante['id']." OR co_autor = ".$participante['id'].")
  663. AND id_tipo_trabalho = 3
  664. ORDER BY titulo ASC";
  665. $result = mysql_query($sql);
  666. while($linha = mysql_fetch_array($result, MYSQL_ASSOC)){
  667. // Verificar se foram aceitos, e caso SIM,
  668. // acrescentar no array de pĂ´steres deste participante
  669. if($ctrl_avaliacao->aceito($linha['id'], 'comunicacao_individual')){
  670. //echo "Trabalho Aceito";
  671. $values[] = "('".$this->id_evento."', '".$participante['id']."', '".$linha['id']."', 'comunicacao_individual', 'sim')";
  672. }//if
  673. }//while
  674. $participante['comunicacoes_individuais'] = $comunicacoes_individuais; // array
  675. ////////////////////////////////////////////
  676. // APRESENTAÇÃO DE COMUNICAÇÃO COORDENADA //
  677. ////////////////////////////////////////////
  678. $comunicacoes_coordenadas = array();
  679. // Pegar todos os trabalhos em comunicação coordenada deste participante
  680. $sql = "SELECT id, titulo
  681. FROM ev_resumo
  682. WHERE
  683. id_evento='".$this->id_evento."'
  684. AND (autor = ".$participante['id']." OR co_autor = ".$participante['id'].")
  685. AND id_tipo_trabalho = 2
  686. AND id_comunicacao_coordenada > 0
  687. ORDER BY titulo ASC";
  688. $result = mysql_query($sql);
  689. while($linha = mysql_fetch_array($result, MYSQL_ASSOC)){
  690. // Verificar se foram aceitos, e caso SIM,
  691. // acrescentar no array de pĂ´steres deste participante
  692. if($ctrl_avaliacao->aceito($linha['id'], 'resumo_em_coordenada')){
  693. //echo "Trabalho Aceito";
  694. $values[] = "('".$this->id_evento."', '".$participante['id']."', '".$linha['id']."', 'comunicacao_coordenada', 'sim')";
  695. }//if
  696. }//while
  697. ////////////////////////////
  698. // APRESENTAÇÃO DE PÔSTER //
  699. ////////////////////////////
  700. $posteres = array();
  701. // Pegar todos os posteres deste participante
  702. $sql = "SELECT id, titulo
  703. FROM ev_resumo
  704. WHERE
  705. id_evento='".$this->id_evento."'
  706. AND (autor = ".$participante['id']." OR co_autor = ".$participante['id'].")
  707. AND id_tipo_trabalho = 4
  708. ORDER BY titulo ASC";
  709. $result = mysql_query($sql);
  710. while($linha = mysql_fetch_array($result, MYSQL_ASSOC)){
  711. // Verificar se foram aceitos, e caso SIM,
  712. // acrescentar no array de pĂ´steres deste participante
  713. if($ctrl_avaliacao->aceito($linha['id'], 'poster')){
  714. //echo "Trabalho Aceito";
  715. $values[] = "('".$this->id_evento."', '".$participante['id']."', '".$linha['id']."', 'poster', 'sim')";
  716. }//if
  717. }//while
  718. $participante['posteres'] = $posteres; // array
  719. // Concatenando os values para inserir no banco de dados
  720. $values = implode(", ", $values);
  721. $sql = "INSERT INTO ev_presenca(id_evento, id_participante, id_trabalho, tipo, presente) VALUES " . $values;
  722. //print "SQL: <pre>";
  723. // print_r($sql);
  724. //print "</pre>";
  725. mysql_query($sql);// or die(mysql_error());
  726. } //foreach participantes
  727. return $this->presencas();
  728. }//function
  729. */
  730. }
  731. ?>