Exemple #1
0
function setup_edit()
{
    // get the person to edit
    $search = new CensusDetail();
    $search->setFromRequest();
    $search->queryType = Q_FAMILY;
    $dao = getCensusDAO();
    $dao->getCensusDetails($search);
    if ($search->numResults > 0) {
        $ret = $search->results[0];
        $ret->person = $search->person;
    } else {
        $pdao = getPeopleDAO();
        $ret = new CensusDetail();
        $ret->person->setFromRequest();
        $ret->person->queryType = Q_IND;
        $pdao->getPersonDetails($ret->person);
        $ret->event->person = $ret->person->results[0];
        $ret->person = $ret->person->results[0];
    }
    return $ret;
}
Exemple #2
0
<?php

include_once "modules/db/DAOFactory.php";
$peep = new PersonDetail();
$peep->queryType = Q_IND;
$pdao = getPeopleDAO();
$cen = new CensusDetail();
$dao = getCensusDAO();
if (isset($_REQUEST["func"]) && $_REQUEST["func"] == "delete") {
    $peep->setFromRequest();
    $pdao->getPersonDetails($peep);
    $peep = $peep->results[0];
    if (!$peep->isEditable()) {
        die(include "inc/forbidden.inc.php");
    }
    $cen->setFromRequest();
    $dao->deleteCensusRecord($cen);
    stamppeeps($peep);
} else {
    $peep->setFromPost();
    $pdao->getPersonDetails($peep);
    $peep = $peep->results[0];
    if (!$peep->isEditable()) {
        die(include "inc/forbidden.inc.php");
    }
    $cen->setFromPost();
    $e = new Event();
    $e->setFromPost();
    $prefix = 'a';
    $e->sources = array();
    while (isset($_POST[$prefix . "_title"])) {
Exemple #3
0
function show_census($per)
{
    global $strNoInfo, $restrictmsg;
    $search = new CensusDetail();
    $search->setFromRequest();
    if (!$per->isViewable()) {
        echo $restrictmsg . "\n";
        return 0;
    } else {
        $dao = getCensusDAO();
        $dao->getCensusDetails($search);
        if (count($search->results) < 1) {
            echo $strNoInfo . "\n";
        } else {
            ?>
	<table width="100%">
		<tr>
<?php 
            printCensusHeader(LIST_CENSUS, $per->isEditable());
            ?>
		</tr>
<?php 
            for ($i = 0; $i < $search->numResults; $i++) {
                if ($i == 0 || fmod($i, 2) == 0) {
                    $class = "tbl_odd";
                } else {
                    $class = "tbl_even";
                }
                $cen = $search->results[$i];
                ?>
		<tr>
<?php 
                foreach ($cen->event->attendees as $attendee) {
                    printCensusRow($cen, $attendee, LIST_CENSUS, $per, $class);
                }
                ?>
		</tr>
<?php 
            }
            echo "</table>";
        }
    }
    return $search->numResults;
}
Exemple #4
0
 function getCensusDetails(&$input)
 {
     global $tblprefix, $err_census_ret;
     $res = array();
     $input->results = $res;
     $edquery = "SELECT cen.census_id, cen.census, schedule, year, census_date, cy.country, " . Event::getFields('e') . "," . PersonDetail::getFields() . "," . Attendee::getFields('a') . "," . Location::getFields('l') . "," . Location::getFields('al') . " FROM " . $tblprefix . "attendee a" . " JOIN " . $tblprefix . "event e ON a.event_id = e.event_id" . " JOIN " . $tblprefix . "census cen ON cen.event_id = e.event_id" . " JOIN " . $tblprefix . "people p ON a.person_id = p.person_id" . " LEFT JOIN " . $tblprefix . "locations l ON l.location_id = e.location_id" . " LEFT JOIN " . $tblprefix . "locations al ON al.location_id = a.location_id" . " LEFT JOIN " . $tblprefix . "census_years cy ON cen.census = cy.census_id" . PersonDetail::getJoins();
     switch ($input->queryType) {
         case Q_TYPE:
             $where = "";
             if (isset($input->schedule)) {
                 $where = " WHERE e.reference =" . $input->schedule;
             }
             break;
         case Q_FAMILY:
             $where = " WHERE e.event_id = " . $input->event->event_id;
             if (!isset($input->event->event_id) || $input->event->event_id == '') {
                 return;
             }
             break;
         default:
             $where = " WHERE p.person_id = " . $input->person->person_id;
             break;
     }
     $where .= $this->addPersonRestriction(" AND ");
     $orderby = " ORDER BY e.date1, b.date1";
     $edquery .= $where . $orderby;
     if ($edresult = $this->runQuery($edquery, $err_census_ret)) {
         $input->numResults = 0;
         $events = array();
         while ($edrow = $this->getNextRow($edresult)) {
             $cen = new CensusDetail();
             $cen->loadFields($edrow);
             $e = new Event();
             $e->loadFields($edrow, "e_");
             $e->location->loadFields($edrow, "l_");
             $new = false;
             if (isset($events[$e->event_id])) {
                 $event = $events[$e->event_id];
             } else {
                 $new = true;
                 $e->attendees = array();
                 $events[$e->event_id] = $e;
                 $event = $e;
             }
             $a = new Attendee();
             $a->person->loadFields($edrow, L_HEADER, "p_");
             $a->person->name->loadFields($edrow, "n_");
             if ($a->person->person_id == $event->person->person_id) {
                 $event->person = $a->person;
             }
             $a->loadFields($edrow, "a_");
             $a->location->loadFields($edrow, "al_");
             $event->attendees[] = $a;
             //This is needed for php 4
             $events[$event->event_id] = $event;
             if ($new) {
                 $cen->event = $event;
                 $input->numResults++;
                 $res[] = $cen;
             }
             //This is also needed for php 4
             for ($i = 0; $i < count($res); $i++) {
                 if ($res[$i]->event->event_id == $event->event_id) {
                     $c = $res[$i];
                     $c->event = $event;
                     $res[$i] = $c;
                 }
             }
         }
         $this->freeResultSet($edresult);
     }
     $input->results = $res;
 }