.
*/
include("./include/include.php");
include("./include/g_onmemlist.php");
include("./include/AjaxResponse.php");
include("./include/Popup.php");
include("./include/Persons.php");
include("./include/PersonsFields/105MemberlistConfirmed.php");
define("POPUP_HEIGHT", 415);
define("POPUP_WIDTH", 370);
function getChoicesFor($field, $title, $trClass, $data) {
$text = "
";
$text .= "| ".$title.": | ";
$text .= "";
$OnMemList_img = $GLOBALS['OnMemList_img'];
$OnMemList_text = $GLOBALS['OnMemList_text'];
$acc = array_keys($OnMemList_img);
for($i=0; $i ";
}
$text .= " | ";
$text .= "
";
return $text;
}
if( !in_array("application_editonmemlist", $_SESSION['sess_functions']) ) {
$popup = new Popup("Edit accepted", "You are not authorized to see this page.");
$popup->setHeight(POPUP_HEIGHT)->setWidth(POPUP_WIDTH);
echo $popup->createPopup();
}else {
admin_header(true, true);
if( $_SERVER['REQUEST_METHOD']=="GET" ) {
// Show form with data
$query = "SELECT `FirstName`, `LastName`, `BodyName`, `ParticipantType`, `ParticipantOrder`, `Accepted`, `MemberlistConfirmed`, `MemberlistOnPrevious`, `MemberlistOnCurrent`, `MemberlistIsBoard` ";
$query .= "FROM `persons` LEFT JOIN `ab_bodies` USING (`BodyCode`) ";
$query .= "WHERE `persons`.`PersonID`=".addslashes(get_int("id"));
if( @mysql_num_rows( $res=doquery($query) )==1 ) {
$row = mysql_fetch_array($res);
$content = "";
$content .= "";
$content .= "";
$content .= "
Save";
$content .= "";
$content .= "
";
$popup = new Popup("Edit on memberlist", $content);
$popup->setHeight(POPUP_HEIGHT)->setWidth(POPUP_WIDTH);
echo $popup->createPopup();
}else {
$content = "Error: unable to load the data. The person was not found.";
$popup = new Popup("Edit accepted", $content);
$popup->setHeight(POPUP_HEIGHT)->setWidth(POPUP_WIDTH);
echo $popup->createPopup();
}
}else {
// Process data
$memlistPrevOk = array_key_exists($_POST['MemberlistOnPrevious'], $OnMemList_text);
$memlistCurOk = array_key_exists($_POST['MemberlistOnCurrent'], $OnMemList_text) || !$setup['UploadMembersList'];
$memlistBoardOk = array_key_exists($_POST['MemberlistIsBoard'], $OnMemList_text);
if( $memlistPrevOk && $memlistCurOk && $memlistBoardOk ) {
// valid member list status entered
$query = "SELECT `PersonID`, `ParticipantType`, `MemberlistConfirmed`, `MemberlistOnPrevious`, `MemberlistOnCurrent`, `MemberlistIsBoard` ";
$query .= "FROM `persons` ";
$query .= "WHERE `persons`.`PersonID`=".addslashes(get_int("id"));
if( @mysql_num_rows( $res=doquery($query) )==1 ) {
$row = mysql_fetch_array($res);
$updates = array();
$log = "";
if( $row['MemberlistOnPrevious']!=$_POST['MemberlistOnPrevious'] ) {
$updates[] = "`MemberlistOnPrevious`='".$_POST['MemberlistOnPrevious']."'";
$log .= "\n" . date("Y-m-d H:i:s") . ": set on previous member list status to ".$_POST['MemberlistOnPrevious']." by ".addslashes($_SESSION['sess_name']);
$row['MemberlistOnPrevious'] = $_POST['MemberlistOnPrevious'];
}
if( $setup['UploadMembersList'] && $row['MemberlistOnCurrent']!=$_POST['MemberlistOnCurrent'] ) {
$updates[] = "`MemberlistOnCurrent`='".$_POST['MemberlistOnCurrent']."'";
$log .= "\n" . date("Y-m-d H:i:s") . ": set on current member list status to ".$_POST['MemberlistOnCurrent']." by ".addslashes($_SESSION['sess_name']);
$row['MemberlistOnCurrent'] = $_POST['MemberlistOnCurrent'];
}
if( $row['MemberlistIsBoard']!=$_POST['MemberlistIsBoard'] ) {
$updates[] = "`MemberlistIsBoard`='".$_POST['MemberlistIsBoard']."'";
$log .= "\n" . date("Y-m-d H:i:s") . ": set is board member status to ".$_POST['MemberlistIsBoard']." by ".addslashes($_SESSION['sess_name']);
$row['MemberlistIsBoard'] = $_POST['MemberlistIsBoard'];
}
$memberlistConfirmedStatus = getMemberlistConfirmedStatus($row);
if( $row['MemberlistConfirmed']!=$memberlistConfirmedStatus ) {
$updates[] = "`MemberlistConfirmed`='".$memberlistConfirmedStatus."'";
$log .= "\n" . date("Y-m-d H:i:s") . ": set memberlist confirmed status to ".$memberlistConfirmedStatus." by system";
}
$query = "UPDATE `persons` ";
$query .= "SET " . implode(", ", $updates) . ", `Log`=CONCAT(`Log`, '" . $log . "') ";
$query .= "WHERE `PersonID`=" . $row['PersonID'];
if( count($updates)==0 || doquery($query) ) {
// query successfull
$memberlistConfirmedField = new PersonsMemberlistConfirmed();
$img = $memberlistConfirmedField->display($memberlistConfirmedStatus, get_int('id'));
$response = new AjaxResponse(true);
$response->addRefresh("MemberlistConfirmed_".get_int('id'), $img);
header("Content-type: text/xml; charset=utf-8");
echo $response->createResponse();
}else {
// query failed
$response = new AjaxResponse(false);
$response->addRefresh("popup_content", "Error: update failed");
header("Content-type: text/xml; charset=utf-8");
echo $response->createResponse();
}
}else {
$response = new AjaxResponse(false);
$response->addRefresh("popup_content", "Error: unknown error");
header("Content-type: text/xml; charset=utf-8");
echo $response->createResponse();
}
}else {
// Invalid approved status entered
$response = new AjaxResponse(false);
$response->addRefresh("popup_content", "Error: unknown member list status entered");
header("Content-type: text/xml; charset=utf-8");
echo $response->createResponse();
}
}
admin_footer(true, true);
}
?>