function recordClass($instructorID, $classID, $isClassNow, $classdate, $classduration, $students) { $class = new CbodbClasses(); $class->instructorID = $instructorID; $class->typeID = $classID; $class->duration = $classduration * 3600; $class->comment = ""; $class->timeAdded = NULL; if ($isClassNow) { // John Mikolich December 30, 2010 // Next statement added to resolve the 'timezone issue'. date_default_timezone_set(getConfigValue("timeZone")); // NEW!! $starttime = date("Y-m-d H:i:s", time()); } else { $starttime = $classdate[year] . '-' . $classdate[month] . '-' . $classdate[day] . ' 12:00:00'; } $class->starttime = $starttime; $class->saveData(); foreach ($students as $memberID => $studentdata) { if (!strcmp($studentdata[inclass], "on")) { $membertransaction = new CbodbTransaction(); // John Mikolich December 30, 2010 // Next statement added to resolve the 'timezone issue'. date_default_timezone_set(getConfigValue("timeZone")); // NEW!! $membertransaction->dateOpen = date("Y-m-d H:i:s", time()); $membertransaction->dateClosed = date("Y-m-d H:i:s", time()); $membertransaction->type = 4001; $membertransaction->credits = -abs($studentdata[paidcredits]); $membertransaction->cash = $studentdata[paidcash]; $membertransaction->totalTime = $classduration * 3600; $membertransaction->memberID = $memberID; /* Set the Transaction subtype to the class id so we can find the class */ $membertransaction->subtype = $class->id; $membertransaction->comment = "Class: " . CbodbClasses::$cbodb_classtypes[$class->typeID]; $membertransaction->saveData(); $member = new CbodbMember($memberID); if ($class->typeID == 1) { if ($member->custom1 == 0 && $member->custom2 == 1 && $member->custom3 == 1 && $member->custom4 == 1) { /* in this case they are taking their final class, and should be a member now */ $starttimestamp = strtotime($starttime); $member->membershipExpire = date("Y-m-d H:i:s", $starttimestamp + 365 * 24 * 3600); $member->isMember = 1; $membertransaction->comment .= " - Membership renewed until {$member->membershipExpire}"; $membertransaction->saveData(); } $member->custom1 = 1; } if ($class->typeID == 2) { if ($member->custom1 == 1 && $member->custom2 == 0 && $member->custom3 == 1 && $member->custom4 == 1) { /* in this case they are taking their final class, and should be a member now */ $starttimestamp = strtotime($starttime); $member->membershipExpire = date("Y-m-d H:i:s", $starttimestamp + 365 * 24 * 3600); $member->isMember = 1; $membertransaction->comment .= " - Membership renewed until {$member->membershipExpire}"; $membertransaction->saveData(); } $member->custom2 = 1; } if ($class->typeID == 3) { if ($member->custom1 == 1 && $member->custom2 == 1 && $member->custom3 == 0 && $member->custom4 == 1) { /* in this case they are taking their final class, and should be a member now */ $starttimestamp = strtotime($starttime); $member->membershipExpire = date("Y-m-d H:i:s", $starttimestamp + 365 * 24 * 3600); $member->isMember = 1; $membertransaction->comment .= " - Membership renewed until {$member->membershipExpire}"; $membertransaction->saveData(); } $member->custom3 = 1; } if ($class->typeID == 4) { if ($member->custom1 == 1 && $member->custom2 == 1 && $member->custom3 == 1 && $member->custom4 == 0) { /* in this case they are taking their final class, and should be a member now */ $starttimestamp = strtotime($starttime); $member->membershipExpire = date("Y-m-d H:i:s", $starttimestamp + 365 * 24 * 3600); $member->isMember = 1; $membertransaction->comment .= " - Membership renewed until {$member->membershipExpire}"; $membertransaction->saveData(); } $member->custom4 = 1; } if ($class->typeID == 5) { $member->custom5 = 1; } $member->saveData(); } } }
function newTimeTransaction($option, $transaction, $member) { if ($member->id) { $memberChosen = true; $member_name = $member->nameFirst . " " . $member->nameLast; $member_details_link = JFilterOutput::ampReplace('index.php?option=' . $option . '&task=edit&cid[]=' . $member->id); $member_details_link_markup = "<a href=\"{$member_details_link}\" title=\"Member details for {$member_name}\">{$member_name}</a>"; $member_transactions_link = JFilterOutput::ampReplace('index.php?option=' . $option . '&task=transactions&member_id=' . $member->id); $member_transactions_link_markup = "<a href=\"{$member_transactions_link}\" title=\"List transactions for {$member_name}\">member transactions</a>"; } else { $memberChosen = false; } $member_name = $member->nameFirst . " " . $member->nameLast; $member_details_link = JFilterOutput::ampReplace('index.php?option=' . $option . '&task=edit&cid[]=' . $member->id); $member_details_link_markup = "<a href=\"{$member_details_link}\" title=\"Member details for {$member_name}\">{$member_name}</a>"; $member_transactions_link = JFilterOutput::ampReplace('index.php?option=' . $option . '&task=transactions&member_id=' . $member->id); $member_transactions_link_markup = "<a href=\"{$member_transactions_link}\" title=\"List transactions for {$member_name}\">member transactions</a>"; ?> <form action="index.php" method="post" name="adminForm" id="adminForm"> <fieldset class="adminform"> <legend>Time-based Transaction</legend> <table class="admintable"> <tr> <td width="100" align="right" class="key"> Member: </td> <td> <?php if ($memberChosen) { ?> <?php echo $member_details_link_markup; ?> (see <?php echo $member_transactions_link_markup; ?> ) <input type="hidden" name="memberID" id="memberID" value="<?php echo $member->id; ?> "> <?php } else { ?> <?php $dropdownList = CbodbMember::dropdownMemberList(); ?> <select name="memberID"> <option value="0">Choose member's name below...</option> <?php foreach ($dropdownList as $memberRow) { echo "<option value=\"{$memberRow->id}\">{$memberRow->nameLast}, {$memberRow->nameFirst}</option>"; } ?> </select> <?php } ?> </td> </tr> <tr> <td class="key">Transaction Type</td> <td><?php HTML_cbodb::dropdownFromArray("type", HTML_cbodb::$timeTransactionTypeArray, $transaction->type, false); ?> </td> </tr> <tr> <td class="key">Date Open</td> <td><input name="dateOpen" id="dateOpen" value="<?php echo $transaction->dateOpen; ?> "></td> </tr> <tr> <td class="key">Date Closed</td> <td><input name="dateClosed" id="dateClosed" value="<?php echo $transaction->dateClosed; ?> "></td> </tr> <tr> <td class="key">Duration</td> <td><?php echo format_time_duration($transaction->totalTime, true); ?> </td> </tr> <tr> <td class="key">Credits</td> <td><?php echo $transaction->credits > 0 ? $transaction->credits : 0; ?> </td> </tr> <tr> <td class="key">Comment</td> <td><input name="comment" id="comment" value="<?php echo $transaction->comment; ?> " size="100"></td> </tr> </table> </fieldset> <input type="hidden" name="id" value="<?php echo $transaction->id; ?> " /> <input type="hidden" name="option" value="<?php echo $option; ?> " /> <input type="hidden" name="task" value="save" /> <input type="hidden" name="cbodb_mode" value="transaction" /> </form> <?php }
function saveClass($option) { global $mainframe; $postrow = JRequest::get('post'); $classID = $postrow[classID]; if ($classID == 0) { $loggedin = CbodbMember::loggedInList(TRUE); HTML_cbodb::startClass($option, $loggedin, $postrow[memberID], "You must select a class!"); } else { if ($postrow[classdate][day] == 0 && $postrow[startsnow] != 'on') { $loggedin = CbodbMember::loggedInList(TRUE); HTML_cbodb::startClass($option, $loggedin, $postrow[memberID], "You must select a date or choose 'today'!"); } else { recordClass($postrow[memberID], $postrow[classID], strcmp($postrow[startsnow], "on") ? 0 : 1, $postrow[classdate], $postrow[duration], $postrow[students]); $mainframe->redirect('index.php?option=' . $option . '&task=shop&key=3b767559374f5132236f6e68256b2529#top', 'Class data recorded, thank you!'); } } }