PageRenderTime 32ms CodeModel.GetById 19ms RepoModel.GetById 0ms app.codeStats 0ms

/miembrolist.php

https://github.com/fredd-for/emaus_tesoreria
PHP | 1011 lines | 764 code | 114 blank | 133 comment | 205 complexity | d87aec8db1af41b3d36551a4c58a81f6 MD5 | raw file
Possible License(s): LGPL-2.1
  1. <?php
  2. session_start(); // Initialize session data
  3. ob_start(); // Turn on output buffering
  4. ?>
  5. <?php include "ewcfg6.php" ?>
  6. <?php include "ewmysql6.php" ?>
  7. <?php include "phpfn6.php" ?>
  8. <?php include "miembroinfo.php" ?>
  9. <?php include "usuarioinfo.php" ?>
  10. <?php include "userfn6.php" ?>
  11. <?php
  12. header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past
  13. header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); // Always modified
  14. header("Cache-Control: private, no-store, no-cache, must-revalidate"); // HTTP/1.1
  15. header("Cache-Control: post-check=0, pre-check=0", false);
  16. header("Pragma: no-cache"); // HTTP/1.0
  17. ?>
  18. <?php
  19. // Define page object
  20. $miembro_list = new cmiembro_list();
  21. $Page =& $miembro_list;
  22. // Page init processing
  23. $miembro_list->Page_Init();
  24. // Page main processing
  25. $miembro_list->Page_Main();
  26. ?>
  27. <?php include "header.php" ?>
  28. <?php if ($miembro->Export == "") { ?>
  29. <script type="text/javascript">
  30. <!--
  31. // Create page object
  32. var miembro_list = new ew_Page("miembro_list");
  33. // page properties
  34. miembro_list.PageID = "list"; // page ID
  35. var EW_PAGE_ID = miembro_list.PageID; // for backward compatibility
  36. // extend page with Form_CustomValidate function
  37. miembro_list.Form_CustomValidate =
  38. function(fobj) { // DO NOT CHANGE THIS LINE!
  39. // Your custom validation code here, return false if invalid.
  40. return true;
  41. }
  42. <?php if (EW_CLIENT_VALIDATE) { ?>
  43. miembro_list.ValidateRequired = true; // uses JavaScript validation
  44. <?php } else { ?>
  45. miembro_list.ValidateRequired = false; // no JavaScript validation
  46. <?php } ?>
  47. //-->
  48. </script>
  49. <script language="JavaScript" type="text/javascript">
  50. <!--
  51. // Write your client script here, no need to add script tags.
  52. // To include another .js script, use:
  53. // ew_ClientScriptInclude("my_javascript.js");
  54. //-->
  55. </script>
  56. <?php } ?>
  57. <?php if ($miembro->Export == "") { ?>
  58. <?php } ?>
  59. <?php
  60. $bSelectLimit = ($miembro->Export == "" && $miembro->SelectLimit);
  61. if (!$bSelectLimit)
  62. $rs = $miembro_list->LoadRecordset();
  63. $miembro_list->lTotalRecs = ($bSelectLimit) ? $miembro->SelectRecordCount() : $rs->RecordCount();
  64. $miembro_list->lStartRec = 1;
  65. if ($miembro_list->lDisplayRecs <= 0) // Display all records
  66. $miembro_list->lDisplayRecs = $miembro_list->lTotalRecs;
  67. if (!($miembro->ExportAll && $miembro->Export <> ""))
  68. $miembro_list->SetUpStartRec(); // Set up start record position
  69. if ($bSelectLimit)
  70. $rs = $miembro_list->LoadRecordset($miembro_list->lStartRec-1, $miembro_list->lDisplayRecs);
  71. ?>
  72. <p><span class="phpmaker" style="white-space: nowrap;">TABLA: Miembro
  73. <?php if ($miembro->Export == "" && $miembro->CurrentAction == "") { ?>
  74. &nbsp;&nbsp;<a href="<?php echo $miembro_list->PageUrl() ?>export=excel">Exportar a Excel</a>
  75. <?php } ?>
  76. </span></p>
  77. <?php $miembro_list->ShowMessage() ?>
  78. <br>
  79. <table cellspacing="0" class="ewGrid"><tr><td class="ewGridContent">
  80. <div class="ewGridMiddlePanel">
  81. <form name="fmiembrolist" id="fmiembrolist" class="ewForm" action="" method="post">
  82. <?php if ($miembro_list->lTotalRecs > 0) { ?>
  83. <table cellspacing="0" rowhighlightclass="ewTableHighlightRow" rowselectclass="ewTableSelectRow" roweditclass="ewTableEditRow" class="ewTable ewTableSeparate">
  84. <?php
  85. $miembro_list->lOptionCnt = 0;
  86. $miembro_list->lOptionCnt++; // view
  87. if ($Security->CanEdit()) {
  88. $miembro_list->lOptionCnt++; // edit
  89. }
  90. if ($Security->CanDelete()) {
  91. $miembro_list->lOptionCnt++; // Delete
  92. }
  93. $miembro_list->lOptionCnt += count($miembro_list->ListOptions->Items); // Custom list options
  94. ?>
  95. <?php echo $miembro->TableCustomInnerHtml ?>
  96. <thead><!-- Table header -->
  97. <tr class="ewTableHeader">
  98. <?php if ($miembro->idMiembro->Visible) { // idMiembro ?>
  99. <?php if ($miembro->SortUrl($miembro->idMiembro) == "") { ?>
  100. <td>No</td>
  101. <?php } else { ?>
  102. <td class="ewPointer" onmousedown="ew_Sort(event,'<?php echo $miembro->SortUrl($miembro->idMiembro) ?>',1);">
  103. <table cellspacing="0" class="ewTableHeaderBtn"><tr><td>No</td><td style="width: 10px;"><?php if ($miembro->idMiembro->getSort() == "ASC") { ?><img src="images/sortup.gif" width="10" height="9" border="0"><?php } elseif ($miembro->idMiembro->getSort() == "DESC") { ?><img src="images/sortdown.gif" width="10" height="9" border="0"><?php } ?></td></tr></table>
  104. </td>
  105. <?php } ?>
  106. <?php } ?>
  107. <?php if ($miembro->nombre->Visible) { // nombre ?>
  108. <?php if ($miembro->SortUrl($miembro->nombre) == "") { ?>
  109. <td>Nombre(s)</td>
  110. <?php } else { ?>
  111. <td class="ewPointer" onmousedown="ew_Sort(event,'<?php echo $miembro->SortUrl($miembro->nombre) ?>',1);">
  112. <table cellspacing="0" class="ewTableHeaderBtn"><tr><td>Nombre(s)</td><td style="width: 10px;"><?php if ($miembro->nombre->getSort() == "ASC") { ?><img src="images/sortup.gif" width="10" height="9" border="0"><?php } elseif ($miembro->nombre->getSort() == "DESC") { ?><img src="images/sortdown.gif" width="10" height="9" border="0"><?php } ?></td></tr></table>
  113. </td>
  114. <?php } ?>
  115. <?php } ?>
  116. <?php if ($miembro->paterno->Visible) { // paterno ?>
  117. <?php if ($miembro->SortUrl($miembro->paterno) == "") { ?>
  118. <td>Apellido Paterno</td>
  119. <?php } else { ?>
  120. <td class="ewPointer" onmousedown="ew_Sort(event,'<?php echo $miembro->SortUrl($miembro->paterno) ?>',1);">
  121. <table cellspacing="0" class="ewTableHeaderBtn"><tr><td>Apellido Paterno</td><td style="width: 10px;"><?php if ($miembro->paterno->getSort() == "ASC") { ?><img src="images/sortup.gif" width="10" height="9" border="0"><?php } elseif ($miembro->paterno->getSort() == "DESC") { ?><img src="images/sortdown.gif" width="10" height="9" border="0"><?php } ?></td></tr></table>
  122. </td>
  123. <?php } ?>
  124. <?php } ?>
  125. <?php if ($miembro->materno->Visible) { // materno ?>
  126. <?php if ($miembro->SortUrl($miembro->materno) == "") { ?>
  127. <td>Apellido Materno</td>
  128. <?php } else { ?>
  129. <td class="ewPointer" onmousedown="ew_Sort(event,'<?php echo $miembro->SortUrl($miembro->materno) ?>',1);">
  130. <table cellspacing="0" class="ewTableHeaderBtn"><tr><td>Apellido Materno</td><td style="width: 10px;"><?php if ($miembro->materno->getSort() == "ASC") { ?><img src="images/sortup.gif" width="10" height="9" border="0"><?php } elseif ($miembro->materno->getSort() == "DESC") { ?><img src="images/sortdown.gif" width="10" height="9" border="0"><?php } ?></td></tr></table>
  131. </td>
  132. <?php } ?>
  133. <?php } ?>
  134. <?php if ($miembro->cargo->Visible) { // cargo ?>
  135. <?php if ($miembro->SortUrl($miembro->cargo) == "") { ?>
  136. <td>Cargo en la Iglesia</td>
  137. <?php } else { ?>
  138. <td class="ewPointer" onmousedown="ew_Sort(event,'<?php echo $miembro->SortUrl($miembro->cargo) ?>',1);">
  139. <table cellspacing="0" class="ewTableHeaderBtn"><tr><td>Cargo en la Iglesia</td><td style="width: 10px;"><?php if ($miembro->cargo->getSort() == "ASC") { ?><img src="images/sortup.gif" width="10" height="9" border="0"><?php } elseif ($miembro->cargo->getSort() == "DESC") { ?><img src="images/sortdown.gif" width="10" height="9" border="0"><?php } ?></td></tr></table>
  140. </td>
  141. <?php } ?>
  142. <?php } ?>
  143. <?php if ($miembro->diezma->Visible) { // diezma ?>
  144. <?php if ($miembro->SortUrl($miembro->diezma) == "") { ?>
  145. <td>Diezma</td>
  146. <?php } else { ?>
  147. <td class="ewPointer" onmousedown="ew_Sort(event,'<?php echo $miembro->SortUrl($miembro->diezma) ?>',1);">
  148. <table cellspacing="0" class="ewTableHeaderBtn"><tr><td>Diezma</td><td style="width: 10px;"><?php if ($miembro->diezma->getSort() == "ASC") { ?><img src="images/sortup.gif" width="10" height="9" border="0"><?php } elseif ($miembro->diezma->getSort() == "DESC") { ?><img src="images/sortdown.gif" width="10" height="9" border="0"><?php } ?></td></tr></table>
  149. </td>
  150. <?php } ?>
  151. <?php } ?>
  152. <?php if ($miembro->Export == "") { ?>
  153. <td style="white-space: nowrap;">&nbsp;</td>
  154. <?php if ($Security->CanEdit()) { ?>
  155. <td style="white-space: nowrap;">&nbsp;</td>
  156. <?php } ?>
  157. <?php if ($Security->CanDelete()) { ?>
  158. <td style="white-space: nowrap;">&nbsp;</td>
  159. <?php } ?>
  160. <?php
  161. // Custom list options
  162. foreach ($miembro_list->ListOptions->Items as $ListOption) {
  163. if ($ListOption->Visible)
  164. echo $ListOption->HeaderCellHtml;
  165. }
  166. ?>
  167. <?php } ?>
  168. </tr>
  169. </thead>
  170. <?php
  171. if ($miembro->ExportAll && $miembro->Export <> "") {
  172. $miembro_list->lStopRec = $miembro_list->lTotalRecs;
  173. } else {
  174. $miembro_list->lStopRec = $miembro_list->lStartRec + $miembro_list->lDisplayRecs - 1; // Set the last record to display
  175. }
  176. $miembro_list->lRecCount = $miembro_list->lStartRec - 1;
  177. if ($rs && !$rs->EOF) {
  178. $rs->MoveFirst();
  179. if (!$miembro->SelectLimit && $miembro_list->lStartRec > 1)
  180. $rs->Move($miembro_list->lStartRec - 1);
  181. }
  182. $miembro_list->lRowCnt = 0;
  183. while (($miembro->CurrentAction == "gridadd" || !$rs->EOF) &&
  184. $miembro_list->lRecCount < $miembro_list->lStopRec) {
  185. $miembro_list->lRecCount++;
  186. if (intval($miembro_list->lRecCount) >= intval($miembro_list->lStartRec)) {
  187. $miembro_list->lRowCnt++;
  188. // Init row class and style
  189. $miembro->CssClass = "";
  190. $miembro->CssStyle = "";
  191. $miembro->RowClientEvents = "onmouseover='ew_MouseOver(event, this);' onmouseout='ew_MouseOut(event, this);' onclick='ew_Click(event, this);'";
  192. if ($miembro->CurrentAction == "gridadd") {
  193. $miembro_list->LoadDefaultValues(); // Load default values
  194. } else {
  195. $miembro_list->LoadRowValues($rs); // Load row values
  196. }
  197. $miembro->RowType = EW_ROWTYPE_VIEW; // Render view
  198. // Render row
  199. $miembro_list->RenderRow();
  200. ?>
  201. <tr<?php echo $miembro->RowAttributes() ?>>
  202. <?php if ($miembro->idMiembro->Visible) { // idMiembro ?>
  203. <td<?php echo $miembro->idMiembro->CellAttributes() ?>>
  204. <div<?php echo $miembro->idMiembro->ViewAttributes() ?>><?php echo $miembro->idMiembro->ListViewValue() ?></div>
  205. </td>
  206. <?php } ?>
  207. <?php if ($miembro->nombre->Visible) { // nombre ?>
  208. <td<?php echo $miembro->nombre->CellAttributes() ?>>
  209. <div<?php echo $miembro->nombre->ViewAttributes() ?>><?php echo $miembro->nombre->ListViewValue() ?></div>
  210. </td>
  211. <?php } ?>
  212. <?php if ($miembro->paterno->Visible) { // paterno ?>
  213. <td<?php echo $miembro->paterno->CellAttributes() ?>>
  214. <div<?php echo $miembro->paterno->ViewAttributes() ?>><?php echo $miembro->paterno->ListViewValue() ?></div>
  215. </td>
  216. <?php } ?>
  217. <?php if ($miembro->materno->Visible) { // materno ?>
  218. <td<?php echo $miembro->materno->CellAttributes() ?>>
  219. <div<?php echo $miembro->materno->ViewAttributes() ?>><?php echo $miembro->materno->ListViewValue() ?></div>
  220. </td>
  221. <?php } ?>
  222. <?php if ($miembro->cargo->Visible) { // cargo ?>
  223. <td<?php echo $miembro->cargo->CellAttributes() ?>>
  224. <div<?php echo $miembro->cargo->ViewAttributes() ?>><?php echo $miembro->cargo->ListViewValue() ?></div>
  225. </td>
  226. <?php } ?>
  227. <?php if ($miembro->diezma->Visible) { // diezma ?>
  228. <td<?php echo $miembro->diezma->CellAttributes() ?>>
  229. <div<?php echo $miembro->diezma->ViewAttributes() ?>><?php echo $miembro->diezma->ListViewValue() ?></div>
  230. </td>
  231. <?php } ?>
  232. <?php if ($miembro->Export == "") { ?>
  233. <td style="white-space: nowrap;"><span class="phpmaker">
  234. <a href="<?php echo $miembro->ViewUrl() ?>">Ver</a>
  235. </span></td>
  236. <?php if ($Security->CanEdit()) { ?>
  237. <td style="white-space: nowrap;"><span class="phpmaker">
  238. <a href="<?php echo $miembro->EditUrl() ?>">Editar</a>
  239. </span></td>
  240. <?php } ?>
  241. <?php if ($Security->CanDelete()) { ?>
  242. <td style="white-space: nowrap;"><span class="phpmaker">
  243. <a onclick="ew_ClickDelete(this);return ew_ConfirmDelete('<?php echo $miembro_list->sDeleteConfirmMsg ?>', this);" href="<?php echo $miembro->DeleteUrl() ?>">Borrar</a>
  244. </span></td>
  245. <?php } ?>
  246. <?php
  247. // Custom list options
  248. foreach ($miembro_list->ListOptions->Items as $ListOption) {
  249. if ($ListOption->Visible)
  250. echo $ListOption->BodyCellHtml;
  251. }
  252. ?>
  253. <?php } ?>
  254. </tr>
  255. <?php
  256. }
  257. if ($miembro->CurrentAction <> "gridadd")
  258. $rs->MoveNext();
  259. }
  260. ?>
  261. </tbody>
  262. </table>
  263. <?php } ?>
  264. </form>
  265. <?php
  266. // Close recordset
  267. if ($rs)
  268. $rs->Close();
  269. ?>
  270. </div>
  271. <?php if ($miembro->Export == "") { ?>
  272. <div class="ewGridLowerPanel">
  273. <?php if ($miembro->CurrentAction <> "gridadd" && $miembro->CurrentAction <> "gridedit") { ?>
  274. <form name="ewpagerform" id="ewpagerform" class="ewForm" action="<?php echo ew_CurrentPage() ?>">
  275. <table border="0" cellspacing="0" cellpadding="0" class="ewPager">
  276. <tr>
  277. <td nowrap>
  278. <?php if (!isset($miembro_list->Pager)) $miembro_list->Pager = new cPrevNextPager($miembro_list->lStartRec, $miembro_list->lDisplayRecs, $miembro_list->lTotalRecs) ?>
  279. <?php if ($miembro_list->Pager->RecordCount > 0) { ?>
  280. <table border="0" cellspacing="0" cellpadding="0"><tr><td><span class="phpmaker">Página&nbsp;</span></td>
  281. <!--first page button-->
  282. <?php if ($miembro_list->Pager->FirstButton->Enabled) { ?>
  283. <td><a href="<?php echo $miembro_list->PageUrl() ?>start=<?php echo $miembro_list->Pager->FirstButton->Start ?>"><img src="images/first.gif" alt="Primera" width="16" height="16" border="0"></a></td>
  284. <?php } else { ?>
  285. <td><img src="images/firstdisab.gif" alt="Primera" width="16" height="16" border="0"></td>
  286. <?php } ?>
  287. <!--previous page button-->
  288. <?php if ($miembro_list->Pager->PrevButton->Enabled) { ?>
  289. <td><a href="<?php echo $miembro_list->PageUrl() ?>start=<?php echo $miembro_list->Pager->PrevButton->Start ?>"><img src="images/prev.gif" alt="Anterior" width="16" height="16" border="0"></a></td>
  290. <?php } else { ?>
  291. <td><img src="images/prevdisab.gif" alt="Anterior" width="16" height="16" border="0"></td>
  292. <?php } ?>
  293. <!--current page number-->
  294. <td><input type="text" name="<?php echo EW_TABLE_PAGE_NO ?>" id="<?php echo EW_TABLE_PAGE_NO ?>" value="<?php echo $miembro_list->Pager->CurrentPage ?>" size="4"></td>
  295. <!--next page button-->
  296. <?php if ($miembro_list->Pager->NextButton->Enabled) { ?>
  297. <td><a href="<?php echo $miembro_list->PageUrl() ?>start=<?php echo $miembro_list->Pager->NextButton->Start ?>"><img src="images/next.gif" alt="Siguiente" width="16" height="16" border="0"></a></td>
  298. <?php } else { ?>
  299. <td><img src="images/nextdisab.gif" alt="Siguiente" width="16" height="16" border="0"></td>
  300. <?php } ?>
  301. <!--last page button-->
  302. <?php if ($miembro_list->Pager->LastButton->Enabled) { ?>
  303. <td><a href="<?php echo $miembro_list->PageUrl() ?>start=<?php echo $miembro_list->Pager->LastButton->Start ?>"><img src="images/last.gif" alt="Ultima" width="16" height="16" border="0"></a></td>
  304. <?php } else { ?>
  305. <td><img src="images/lastdisab.gif" alt="Ultima" width="16" height="16" border="0"></td>
  306. <?php } ?>
  307. <td><span class="phpmaker">&nbsp;de <?php echo $miembro_list->Pager->PageCount ?></span></td>
  308. </tr></table>
  309. </td>
  310. <td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
  311. <td>
  312. <span class="phpmaker">Registro <?php echo $miembro_list->Pager->FromIndex ?> a <?php echo $miembro_list->Pager->ToIndex ?> de <?php echo $miembro_list->Pager->RecordCount ?></span>
  313. <?php } else { ?>
  314. <?php if ($miembro_list->sSrchWhere == "0=101") { ?>
  315. <span class="phpmaker">Por favor ingrese criterio de busqueda</span>
  316. <?php } else { ?>
  317. <span class="phpmaker">No se encontraron registros</span>
  318. <?php } ?>
  319. <?php } ?>
  320. </td>
  321. <?php if ($miembro_list->lTotalRecs > 0) { ?>
  322. <td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
  323. <td><table border="0" cellspacing="0" cellpadding="0"><tr><td>Registros por página&nbsp;</td><td>
  324. <input type="hidden" id="t" name="t" value="miembro">
  325. <select name="<?php echo EW_TABLE_REC_PER_PAGE ?>" id="<?php echo EW_TABLE_REC_PER_PAGE ?>" onchange="this.form.submit();" class="phpmaker">
  326. <option value="20"<?php if ($miembro_list->lDisplayRecs == 20) { ?> selected="selected"<?php } ?>>20</option>
  327. <option value="50"<?php if ($miembro_list->lDisplayRecs == 50) { ?> selected="selected"<?php } ?>>50</option>
  328. <option value="ALL"<?php if ($miembro->getRecordsPerPage() == -1) { ?> selected="selected"<?php } ?>>Todos los registros</option>
  329. </select></td></tr></table>
  330. </td>
  331. <?php } ?>
  332. </tr>
  333. </table>
  334. </form>
  335. <?php } ?>
  336. <?php //if ($miembro_list->lTotalRecs > 0) { ?>
  337. <span class="phpmaker">
  338. <?php if ($Security->CanAdd()) { ?>
  339. <a href="<?php echo $miembro->AddUrl() ?>">Agregar</a>&nbsp;&nbsp;
  340. <?php } ?>
  341. </span>
  342. <?php //} ?>
  343. </div>
  344. <?php } ?>
  345. </td></tr></table>
  346. <?php if ($miembro->Export == "" && $miembro->CurrentAction == "") { ?>
  347. <script type="text/javascript">
  348. <!--
  349. //ew_ToggleSearchPanel(miembro_list); // uncomment to init search panel as collapsed
  350. //-->
  351. </script>
  352. <?php } ?>
  353. <?php if ($miembro->Export == "") { ?>
  354. <script language="JavaScript" type="text/javascript">
  355. <!--
  356. // Write your table-specific startup script here
  357. // document.write("page loaded");
  358. //-->
  359. </script>
  360. <?php } ?>
  361. <?php include "footer.php" ?>
  362. <?php
  363. //
  364. // Page Class
  365. //
  366. class cmiembro_list {
  367. // Page ID
  368. var $PageID = 'list';
  369. // Table Name
  370. var $TableName = 'miembro';
  371. // Page Object Name
  372. var $PageObjName = 'miembro_list';
  373. // Page Name
  374. function PageName() {
  375. return ew_CurrentPage();
  376. }
  377. // Page Url
  378. function PageUrl() {
  379. $PageUrl = ew_CurrentPage() . "?";
  380. global $miembro;
  381. if ($miembro->UseTokenInUrl) $PageUrl .= "t=" . $miembro->TableVar . "&"; // add page token
  382. return $PageUrl;
  383. }
  384. // Message
  385. function getMessage() {
  386. return @$_SESSION[EW_SESSION_MESSAGE];
  387. }
  388. function setMessage($v) {
  389. if (@$_SESSION[EW_SESSION_MESSAGE] <> "") { // Append
  390. $_SESSION[EW_SESSION_MESSAGE] .= "<br>" . $v;
  391. } else {
  392. $_SESSION[EW_SESSION_MESSAGE] = $v;
  393. }
  394. }
  395. // Show Message
  396. function ShowMessage() {
  397. if ($this->getMessage() <> "") { // Message in Session, display
  398. echo "<p><span class=\"ewMessage\">" . $this->getMessage() . "</span></p>";
  399. $_SESSION[EW_SESSION_MESSAGE] = ""; // Clear message in Session
  400. }
  401. }
  402. // Validate Page request
  403. function IsPageRequest() {
  404. global $objForm, $miembro;
  405. if ($miembro->UseTokenInUrl) {
  406. //IsPageRequest = False
  407. if ($objForm)
  408. return ($miembro->TableVar == $objForm->GetValue("t"));
  409. if (@$_GET["t"] <> "")
  410. return ($miembro->TableVar == $_GET["t"]);
  411. } else {
  412. return TRUE;
  413. }
  414. }
  415. //
  416. // Class initialize
  417. // - init objects
  418. // - open connection
  419. //
  420. function cmiembro_list() {
  421. global $conn;
  422. // Initialize table object
  423. $GLOBALS["miembro"] = new cmiembro();
  424. // Initialize other table object
  425. $GLOBALS['usuario'] = new cusuario();
  426. // Intialize page id (for backward compatibility)
  427. if (!defined("EW_PAGE_ID"))
  428. define("EW_PAGE_ID", 'list', TRUE);
  429. // Initialize table name (for backward compatibility)
  430. if (!defined("EW_TABLE_NAME"))
  431. define("EW_TABLE_NAME", 'miembro', TRUE);
  432. // Open connection to the database
  433. $conn = ew_Connect();
  434. // Initialize list options
  435. $this->ListOptions = new cListOptions();
  436. }
  437. //
  438. // Page_Init
  439. //
  440. function Page_Init() {
  441. global $gsExport, $gsExportFile, $miembro;
  442. global $Security;
  443. $Security = new cAdvancedSecurity();
  444. if (!$Security->IsLoggedIn()) $Security->AutoLogin();
  445. $Security->TablePermission_Loading();
  446. $Security->LoadCurrentUserLevel($this->TableName);
  447. $Security->TablePermission_Loaded();
  448. $miembro->Export = @$_GET["export"]; // Get export parameter
  449. $gsExport = $miembro->Export; // Get export parameter, used in header
  450. $gsExportFile = $miembro->TableVar; // Get export file, used in header
  451. if ($miembro->Export == "excel") {
  452. header('Content-Type: application/vnd.ms-excel');
  453. header('Content-Disposition: attachment; filename=' . $gsExportFile .'.xls');
  454. }
  455. // Global page loading event (in userfn6.php)
  456. Page_Loading();
  457. // Page load event, used in current page
  458. $this->Page_Load();
  459. }
  460. //
  461. // Page_Terminate
  462. // - called when exit page
  463. // - if URL specified, redirect to the URL
  464. //
  465. function Page_Terminate($url = "") {
  466. global $conn;
  467. // Page unload event, used in current page
  468. $this->Page_Unload();
  469. // Global page unloaded event (in userfn*.php)
  470. Page_Unloaded();
  471. // Close Connection
  472. $conn->Close();
  473. // Go to URL if specified
  474. if ($url <> "") {
  475. ob_end_clean();
  476. header("Location: $url");
  477. }
  478. exit();
  479. }
  480. var $lDisplayRecs; // Number of display records
  481. var $lStartRec;
  482. var $lStopRec;
  483. var $lTotalRecs;
  484. var $lRecRange;
  485. var $sSrchWhere;
  486. var $lRecCnt;
  487. var $lEditRowCnt;
  488. var $lRowCnt;
  489. var $lRowIndex;
  490. var $lOptionCnt;
  491. var $lRecPerRow;
  492. var $lColCnt;
  493. var $sDeleteConfirmMsg; // Delete confirm message
  494. var $sDbMasterFilter;
  495. var $sDbDetailFilter;
  496. var $bMasterRecordExists;
  497. var $ListOptions;
  498. var $sMultiSelectKey;
  499. //
  500. // Page main processing
  501. //
  502. function Page_Main() {
  503. global $objForm, $gsSearchError, $Security, $miembro;
  504. $this->lDisplayRecs = 20;
  505. $this->lRecRange = 10;
  506. $this->lRecCnt = 0; // Record count
  507. // Search filters
  508. $sSrchAdvanced = ""; // Advanced search filter
  509. $sSrchBasic = ""; // Basic search filter
  510. $sFilter = "";
  511. $this->sSrchWhere = ""; // Search WHERE clause
  512. $this->sDeleteConfirmMsg = "żQuiere borrar este registro?"; // Delete confirm message
  513. // Master/Detail
  514. $this->sDbMasterFilter = ""; // Master filter
  515. $this->sDbDetailFilter = ""; // Detail filter
  516. if ($this->IsPageRequest()) { // Validate request
  517. // Set up records per page dynamically
  518. $this->SetUpDisplayRecs();
  519. // Handle reset command
  520. $this->ResetCmd();
  521. // Set Up Sorting Order
  522. $this->SetUpSortOrder();
  523. } // End Validate Request
  524. // Restore display records
  525. if ($miembro->getRecordsPerPage() <> "") {
  526. $this->lDisplayRecs = $miembro->getRecordsPerPage(); // Restore from Session
  527. } else {
  528. $this->lDisplayRecs = 20; // Load default
  529. }
  530. // Load Sorting Order
  531. $this->LoadSortOrder();
  532. // Build filter
  533. $sFilter = "";
  534. if ($this->sDbDetailFilter <> "")
  535. $sFilter = ($sFilter <> "") ? "($sFilter) AND (" . $this->sDbDetailFilter . ")" : $this->sDbDetailFilter;
  536. if ($this->sSrchWhere <> "")
  537. $sFilter = ($sFilter <> "") ? "($sFilter) AND (". $this->sSrchWhere . ")" : $this->sSrchWhere;
  538. // Set up filter in Session
  539. $miembro->setSessionWhere($sFilter);
  540. $miembro->CurrentFilter = "";
  541. // Export data only
  542. if (in_array($miembro->Export, array("html","word","excel","xml","csv"))) {
  543. $this->ExportData();
  544. $this->Page_Terminate(); // Terminate response
  545. exit();
  546. }
  547. }
  548. // Set up number of records displayed per page
  549. function SetUpDisplayRecs() {
  550. global $miembro;
  551. $sWrk = @$_GET[EW_TABLE_REC_PER_PAGE];
  552. if ($sWrk <> "") {
  553. if (is_numeric($sWrk)) {
  554. $this->lDisplayRecs = intval($sWrk);
  555. } else {
  556. if (strtolower($sWrk) == "all") { // Display all records
  557. $this->lDisplayRecs = -1;
  558. } else {
  559. $this->lDisplayRecs = 20; // Non-numeric, load default
  560. }
  561. }
  562. $miembro->setRecordsPerPage($this->lDisplayRecs); // Save to Session
  563. // Reset start position
  564. $this->lStartRec = 1;
  565. $miembro->setStartRecordNumber($this->lStartRec);
  566. }
  567. }
  568. // Set up Sort parameters based on Sort Links clicked
  569. function SetUpSortOrder() {
  570. global $miembro;
  571. // Check for an Order parameter
  572. if (@$_GET["order"] <> "") {
  573. $miembro->CurrentOrder = ew_StripSlashes(@$_GET["order"]);
  574. $miembro->CurrentOrderType = @$_GET["ordertype"];
  575. $miembro->UpdateSort($miembro->idMiembro); // Field
  576. $miembro->UpdateSort($miembro->nombre); // Field
  577. $miembro->UpdateSort($miembro->paterno); // Field
  578. $miembro->UpdateSort($miembro->materno); // Field
  579. $miembro->UpdateSort($miembro->cargo); // Field
  580. $miembro->UpdateSort($miembro->diezma); // Field
  581. $miembro->setStartRecordNumber(1); // Reset start position
  582. }
  583. }
  584. // Load Sort Order parameters
  585. function LoadSortOrder() {
  586. global $miembro;
  587. $sOrderBy = $miembro->getSessionOrderBy(); // Get order by from Session
  588. if ($sOrderBy == "") {
  589. if ($miembro->SqlOrderBy() <> "") {
  590. $sOrderBy = $miembro->SqlOrderBy();
  591. $miembro->setSessionOrderBy($sOrderBy);
  592. }
  593. }
  594. }
  595. // Reset command based on querystring parameter cmd=
  596. // - RESET: reset search parameters
  597. // - RESETALL: reset search & master/detail parameters
  598. // - RESETSORT: reset sort parameters
  599. function ResetCmd() {
  600. global $miembro;
  601. // Get reset cmd
  602. if (@$_GET["cmd"] <> "") {
  603. $sCmd = $_GET["cmd"];
  604. // Reset sort criteria
  605. if (strtolower($sCmd) == "resetsort") {
  606. $sOrderBy = "";
  607. $miembro->setSessionOrderBy($sOrderBy);
  608. $miembro->idMiembro->setSort("");
  609. $miembro->nombre->setSort("");
  610. $miembro->paterno->setSort("");
  611. $miembro->materno->setSort("");
  612. $miembro->cargo->setSort("");
  613. $miembro->diezma->setSort("");
  614. }
  615. // Reset start position
  616. $this->lStartRec = 1;
  617. $miembro->setStartRecordNumber($this->lStartRec);
  618. }
  619. }
  620. // Set up Starting Record parameters based on Pager Navigation
  621. function SetUpStartRec() {
  622. global $miembro;
  623. if ($this->lDisplayRecs == 0)
  624. return;
  625. if ($this->IsPageRequest()) { // Validate request
  626. if (@$_GET[EW_TABLE_START_REC] <> "") { // Check for "start" parameter
  627. $this->lStartRec = $_GET[EW_TABLE_START_REC];
  628. $miembro->setStartRecordNumber($this->lStartRec);
  629. } elseif (@$_GET[EW_TABLE_PAGE_NO] <> "") {
  630. $this->nPageNo = $_GET[EW_TABLE_PAGE_NO];
  631. if (is_numeric($this->nPageNo)) {
  632. $this->lStartRec = ($this->nPageNo-1)*$this->lDisplayRecs+1;
  633. if ($this->lStartRec <= 0) {
  634. $this->lStartRec = 1;
  635. } elseif ($this->lStartRec >= intval(($this->lTotalRecs-1)/$this->lDisplayRecs)*$this->lDisplayRecs+1) {
  636. $this->lStartRec = intval(($this->lTotalRecs-1)/$this->lDisplayRecs)*$this->lDisplayRecs+1;
  637. }
  638. $miembro->setStartRecordNumber($this->lStartRec);
  639. }
  640. }
  641. }
  642. $this->lStartRec = $miembro->getStartRecordNumber();
  643. // Check if correct start record counter
  644. if (!is_numeric($this->lStartRec) || $this->lStartRec == "") { // Avoid invalid start record counter
  645. $this->lStartRec = 1; // Reset start record counter
  646. $miembro->setStartRecordNumber($this->lStartRec);
  647. } elseif (intval($this->lStartRec) > intval($this->lTotalRecs)) { // Avoid starting record > total records
  648. $this->lStartRec = intval(($this->lTotalRecs-1)/$this->lDisplayRecs)*$this->lDisplayRecs+1; // Point to last page first record
  649. $miembro->setStartRecordNumber($this->lStartRec);
  650. } elseif (($this->lStartRec-1) % $this->lDisplayRecs <> 0) {
  651. $this->lStartRec = intval(($this->lStartRec-1)/$this->lDisplayRecs)*$this->lDisplayRecs+1; // Point to page boundary
  652. $miembro->setStartRecordNumber($this->lStartRec);
  653. }
  654. }
  655. // Load recordset
  656. function LoadRecordset($offset = -1, $rowcnt = -1) {
  657. global $conn, $miembro;
  658. // Call Recordset Selecting event
  659. $miembro->Recordset_Selecting($miembro->CurrentFilter);
  660. // Load list page SQL
  661. $sSql = $miembro->SelectSQL();
  662. if ($offset > -1 && $rowcnt > -1) $sSql .= " LIMIT $offset, $rowcnt";
  663. // Load recordset
  664. $conn->raiseErrorFn = 'ew_ErrorFn';
  665. $rs = $conn->Execute($sSql);
  666. $conn->raiseErrorFn = '';
  667. // Call Recordset Selected event
  668. $miembro->Recordset_Selected($rs);
  669. return $rs;
  670. }
  671. // Load row based on key values
  672. function LoadRow() {
  673. global $conn, $Security, $miembro;
  674. $sFilter = $miembro->KeyFilter();
  675. // Call Row Selecting event
  676. $miembro->Row_Selecting($sFilter);
  677. // Load sql based on filter
  678. $miembro->CurrentFilter = $sFilter;
  679. $sSql = $miembro->SQL();
  680. if ($rs = $conn->Execute($sSql)) {
  681. if ($rs->EOF) {
  682. $LoadRow = FALSE;
  683. } else {
  684. $LoadRow = TRUE;
  685. $rs->MoveFirst();
  686. $this->LoadRowValues($rs); // Load row values
  687. // Call Row Selected event
  688. $miembro->Row_Selected($rs);
  689. }
  690. $rs->Close();
  691. } else {
  692. $LoadRow = FALSE;
  693. }
  694. return $LoadRow;
  695. }
  696. // Load row values from recordset
  697. function LoadRowValues(&$rs) {
  698. global $miembro;
  699. $miembro->idMiembro->setDbValue($rs->fields('idMiembro'));
  700. $miembro->nombre->setDbValue($rs->fields('nombre'));
  701. $miembro->paterno->setDbValue($rs->fields('paterno'));
  702. $miembro->materno->setDbValue($rs->fields('materno'));
  703. $miembro->cargo->setDbValue($rs->fields('cargo'));
  704. $miembro->diezma->setDbValue($rs->fields('diezma'));
  705. $miembro->fechaCreacion->setDbValue($rs->fields('fechaCreacion'));
  706. $miembro->fechaModificacion->setDbValue($rs->fields('fechaModificacion'));
  707. }
  708. // Render row values based on field settings
  709. function RenderRow() {
  710. global $conn, $Security, $miembro;
  711. // Call Row_Rendering event
  712. $miembro->Row_Rendering();
  713. // Common render codes for all row types
  714. // idMiembro
  715. $miembro->idMiembro->CellCssStyle = "";
  716. $miembro->idMiembro->CellCssClass = "";
  717. // nombre
  718. $miembro->nombre->CellCssStyle = "";
  719. $miembro->nombre->CellCssClass = "";
  720. // paterno
  721. $miembro->paterno->CellCssStyle = "";
  722. $miembro->paterno->CellCssClass = "";
  723. // materno
  724. $miembro->materno->CellCssStyle = "";
  725. $miembro->materno->CellCssClass = "";
  726. // cargo
  727. $miembro->cargo->CellCssStyle = "";
  728. $miembro->cargo->CellCssClass = "";
  729. // diezma
  730. $miembro->diezma->CellCssStyle = "";
  731. $miembro->diezma->CellCssClass = "";
  732. if ($miembro->RowType == EW_ROWTYPE_VIEW) { // View row
  733. // idMiembro
  734. $miembro->idMiembro->ViewValue = $miembro->idMiembro->CurrentValue;
  735. $miembro->idMiembro->CssStyle = "";
  736. $miembro->idMiembro->CssClass = "";
  737. $miembro->idMiembro->ViewCustomAttributes = "";
  738. // nombre
  739. $miembro->nombre->ViewValue = $miembro->nombre->CurrentValue;
  740. $miembro->nombre->CssStyle = "";
  741. $miembro->nombre->CssClass = "";
  742. $miembro->nombre->ViewCustomAttributes = "";
  743. // paterno
  744. $miembro->paterno->ViewValue = $miembro->paterno->CurrentValue;
  745. $miembro->paterno->CssStyle = "";
  746. $miembro->paterno->CssClass = "";
  747. $miembro->paterno->ViewCustomAttributes = "";
  748. // materno
  749. $miembro->materno->ViewValue = $miembro->materno->CurrentValue;
  750. $miembro->materno->CssStyle = "";
  751. $miembro->materno->CssClass = "";
  752. $miembro->materno->ViewCustomAttributes = "";
  753. // cargo
  754. $miembro->cargo->ViewValue = $miembro->cargo->CurrentValue;
  755. $miembro->cargo->CssStyle = "";
  756. $miembro->cargo->CssClass = "";
  757. $miembro->cargo->ViewCustomAttributes = "";
  758. // diezma
  759. if (strval($miembro->diezma->CurrentValue) <> "") {
  760. switch ($miembro->diezma->CurrentValue) {
  761. case "1":
  762. $miembro->diezma->ViewValue = "SI";
  763. break;
  764. case "0":
  765. $miembro->diezma->ViewValue = "NO";
  766. break;
  767. default:
  768. $miembro->diezma->ViewValue = $miembro->diezma->CurrentValue;
  769. }
  770. } else {
  771. $miembro->diezma->ViewValue = NULL;
  772. }
  773. $miembro->diezma->CssStyle = "";
  774. $miembro->diezma->CssClass = "";
  775. $miembro->diezma->ViewCustomAttributes = "";
  776. // idMiembro
  777. $miembro->idMiembro->HrefValue = "";
  778. // nombre
  779. $miembro->nombre->HrefValue = "";
  780. // paterno
  781. $miembro->paterno->HrefValue = "";
  782. // materno
  783. $miembro->materno->HrefValue = "";
  784. // cargo
  785. $miembro->cargo->HrefValue = "";
  786. // diezma
  787. $miembro->diezma->HrefValue = "";
  788. }
  789. // Call Row Rendered event
  790. $miembro->Row_Rendered();
  791. }
  792. // Export data in XML or CSV format
  793. function ExportData() {
  794. global $miembro;
  795. $sCsvStr = "";
  796. // Default export style
  797. $sExportStyle = "h";
  798. // Load recordset
  799. $rs = $this->LoadRecordset();
  800. $this->lTotalRecs = $rs->RecordCount();
  801. $this->lStartRec = 1;
  802. // Export all
  803. if ($miembro->ExportAll) {
  804. $this->lStopRec = $this->lTotalRecs;
  805. } else { // Export 1 page only
  806. $this->SetUpStartRec(); // Set up start record position
  807. // Set the last record to display
  808. if ($this->lDisplayRecs < 0) {
  809. $this->lStopRec = $this->lTotalRecs;
  810. } else {
  811. $this->lStopRec = $this->lStartRec + $this->lDisplayRecs - 1;
  812. }
  813. }
  814. if ($miembro->Export == "xml") {
  815. $XmlDoc = new cXMLDocument();
  816. } else {
  817. echo ew_ExportHeader($miembro->Export);
  818. // Horizontal format, write header
  819. if ($sExportStyle <> "v" || $miembro->Export == "csv") {
  820. $sExportStr = "";
  821. ew_ExportAddValue($sExportStr, 'idMiembro', $miembro->Export);
  822. ew_ExportAddValue($sExportStr, 'nombre', $miembro->Export);
  823. ew_ExportAddValue($sExportStr, 'paterno', $miembro->Export);
  824. ew_ExportAddValue($sExportStr, 'materno', $miembro->Export);
  825. ew_ExportAddValue($sExportStr, 'cargo', $miembro->Export);
  826. ew_ExportAddValue($sExportStr, 'diezma', $miembro->Export);
  827. echo ew_ExportLine($sExportStr, $miembro->Export);
  828. }
  829. }
  830. // Move to first record
  831. $this->lRecCnt = $this->lStartRec - 1;
  832. if (!$rs->EOF) {
  833. $rs->MoveFirst();
  834. $rs->Move($this->lStartRec - 1);
  835. }
  836. while (!$rs->EOF && $this->lRecCnt < $this->lStopRec) {
  837. $this->lRecCnt++;
  838. if (intval($this->lRecCnt) >= intval($this->lStartRec)) {
  839. $this->LoadRowValues($rs);
  840. // Render row for display
  841. $miembro->RowType = EW_ROWTYPE_VIEW; // Render view
  842. $this->RenderRow();
  843. if ($miembro->Export == "xml") {
  844. $XmlDoc->BeginRow();
  845. $XmlDoc->AddField('idMiembro', $miembro->idMiembro->CurrentValue);
  846. $XmlDoc->AddField('nombre', $miembro->nombre->CurrentValue);
  847. $XmlDoc->AddField('paterno', $miembro->paterno->CurrentValue);
  848. $XmlDoc->AddField('materno', $miembro->materno->CurrentValue);
  849. $XmlDoc->AddField('cargo', $miembro->cargo->CurrentValue);
  850. $XmlDoc->AddField('diezma', $miembro->diezma->CurrentValue);
  851. $XmlDoc->EndRow();
  852. } else {
  853. if ($sExportStyle == "v" && $miembro->Export <> "csv") { // Vertical format
  854. echo ew_ExportField('idMiembro', $miembro->idMiembro->ExportValue($miembro->Export, $miembro->ExportOriginalValue), $miembro->Export);
  855. echo ew_ExportField('nombre', $miembro->nombre->ExportValue($miembro->Export, $miembro->ExportOriginalValue), $miembro->Export);
  856. echo ew_ExportField('paterno', $miembro->paterno->ExportValue($miembro->Export, $miembro->ExportOriginalValue), $miembro->Export);
  857. echo ew_ExportField('materno', $miembro->materno->ExportValue($miembro->Export, $miembro->ExportOriginalValue), $miembro->Export);
  858. echo ew_ExportField('cargo', $miembro->cargo->ExportValue($miembro->Export, $miembro->ExportOriginalValue), $miembro->Export);
  859. echo ew_ExportField('diezma', $miembro->diezma->ExportValue($miembro->Export, $miembro->ExportOriginalValue), $miembro->Export);
  860. } else { // Horizontal format
  861. $sExportStr = "";
  862. ew_ExportAddValue($sExportStr, $miembro->idMiembro->ExportValue($miembro->Export, $miembro->ExportOriginalValue), $miembro->Export);
  863. ew_ExportAddValue($sExportStr, $miembro->nombre->ExportValue($miembro->Export, $miembro->ExportOriginalValue), $miembro->Export);
  864. ew_ExportAddValue($sExportStr, $miembro->paterno->ExportValue($miembro->Export, $miembro->ExportOriginalValue), $miembro->Export);
  865. ew_ExportAddValue($sExportStr, $miembro->materno->ExportValue($miembro->Export, $miembro->ExportOriginalValue), $miembro->Export);
  866. ew_ExportAddValue($sExportStr, $miembro->cargo->ExportValue($miembro->Export, $miembro->ExportOriginalValue), $miembro->Export);
  867. ew_ExportAddValue($sExportStr, $miembro->diezma->ExportValue($miembro->Export, $miembro->ExportOriginalValue), $miembro->Export);
  868. echo ew_ExportLine($sExportStr, $miembro->Export);
  869. }
  870. }
  871. }
  872. $rs->MoveNext();
  873. }
  874. // Close recordset
  875. $rs->Close();
  876. if ($miembro->Export == "xml") {
  877. header("Content-Type: text/xml");
  878. echo $XmlDoc->XML();
  879. } else {
  880. echo ew_ExportFooter($miembro->Export);
  881. }
  882. }
  883. // Page Load event
  884. function Page_Load() {
  885. //echo "Page Load";
  886. }
  887. // Page Unload event
  888. function Page_Unload() {
  889. //echo "Page Unload";
  890. }
  891. // Form Custom Validate event
  892. function Form_CustomValidate(&$CustomError) {
  893. // Return error message in CustomError
  894. return TRUE;
  895. }
  896. }
  897. ?>