function testdbSCLModule() { $p = array(); $p[] = array("max123", "max", "palmer", "123", "456", "1/1/08", "LM", "true"); $p[] = array("oliver345", "oliver", "radwan", "123", "456", "1/1/08", "LM", "false"); $s = new SCL("01-01-08-9-12", $p, "open", 1, "11223344"); // print_r($s); $this->assertTrue(insert_dbSCL($s)); $s2 = select_dbSCL("01-01-08-9-12"); $this->assertTrue($s2 !== null); $p2 = $s2->get_persons(); $p2[] = array("max123", "max", "palmer", "123", "456", "1/1/08", "LM", "true"); $s2->set_persons($p2); $this->assertTrue(update_dbSCL($s2)); // print_r(select_dbSCL("01-01-08-9-12")); $this->assertTrue(delete_dbSCL($s)); echo "testdbSCL complete"; }
function process_edit_scl($post) { $id = $post['_shiftid']; $shift = select_dbShifts($id); $venue = substr($id, 9); $venue = substr($venue, strlen($venue) - 3); $scl = select_dbSCL($id); $persons_old = $scl->get_persons(); $vacancies = $shift->num_vacancies(); $new_acceptances = 0; for ($i = 0; $i < count($persons_old); ++$i) { $p_new = [$persons_old[$i][0], $persons_old[$i][1], $persons_old[$i][2], $persons_old[$i][3], $persons_old[$i][4], trim(str_replace(',', ',', str_replace('+', '+', str_replace('\'', '\\\'', htmlentities($post['datecalled_' . $i]))))), trim(str_replace(',', ',', str_replace('+', '+', str_replace('\'', '\\\'', htmlentities($post['notes_' . $i]))))), $post['accepted_' . $i]]; $persons_new[] = $p_new; if ($post['accepted_' . $i] == "Yes" && $persons_old[$i][7] != "Yes") { ++$new_acceptances; $accepted_people[] = $i; } } if ($new_acceptances > $vacancies) { for ($j = 0; $j < count($accepted_people); ++$j) { if ($j == 0) { $s = $persons_new[$accepted_people[$j]][1] . " " . $persons_new[$accepted_people[$j]][2]; } else { if ($j == count($accepted_people) - 1) { $s = $s . " and " . $persons_new[$accepted_people[$j]][1] . " " . $persons_new[$accepted_people[$j]][2]; } else { $s = $s . ", " . $persons_new[$accepted_people[$j]][1] . " " . $persons_new[$accepted_people[$j]][2]; } } $persons_new[$accepted_people[$j]][7] = "?"; } if ($vacancies == 1) { echo "You assigned <b>" . $s . "</b> to this shift, but there is only " . $vacancies . " open slot.<br>\n\t\t\t\t\tPlease assign volunteers again.</p>"; } else { echo "You assigned <b>" . $s . "</b> to this shift, but there are only " . $vacancies . " open slots.<br>\n\t\t\t\t\tPlease assign volunteers again.</p>"; } update_sub_call_list($scl, $persons_new, $vacancies, "open"); return $id; } else { $p = $shift->get_persons(); for ($j = 0; $j < count($accepted_people); ++$j) { $s = $persons_new[$accepted_people[$j]][0] . "+" . $persons_new[$accepted_people[$j]][1] . "+" . $persons_new[$accepted_people[$j]][2]; $p[] = $s; --$vacancies; $shift->ignore_vacancy(); } $shift->assign_persons($p); update_dbShifts($shift); for ($j = 0; $j < count($accepted_people); ++$j) { add_log_entry('<a href=\\"personEdit.php?id=' . $_SESSION['_id'] . '\\">' . $_SESSION['f_name'] . ' ' . $_SESSION['l_name'] . '</a> assigned <a href=\\"personEdit.php?id=' . $persons_new[$accepted_people[$j]][0] . '\\">' . $persons_new[$accepted_people[$j]][1] . ' ' . $persons_new[$accepted_people[$j]][2] . '</a> to the shift: <a href=\\"editShift.php?shift=' . $shift->get_id() . '&venue=' . $venue . '\\">' . get_shift_name_from_id($shift->get_id()) . '</a>.'); } //print_r($shift); if ($vacancies == 0) { $status = "closed"; } else { $status = "open"; } update_sub_call_list($scl, $persons_new, $vacancies, $status); } }
echo "<form method=\"POST\" style=\"margin-bottom:0;\">\n\t\t\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"_submit_add_slot\" value=\"1\"><br>\n\t\t\t\t\t\t\t\t\t\t\t<input type=\"submit\" value=\"Add a Slot\" style=\"width: 150px\"\n\t\t\t\t\t\t\t\t\t\t\tname=\"submit\" >\n\t\t\t\t\t\t\t\t\t\t\t</form>"; /* echo ("<form method=\"POST\" style=\"margin-bottom:0;\"> <input type=\"hidden\" name=\"_submit_clear_shift\" value=\"1\"> <input type=\"submit\" value=\"Clear this Shift\" style=\"width: 150px\" name=\"submit\" > </form>"); */ echo "<form method=\"POST\" style=\"margin-bottom:0;\">\n\t\t\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"_submit_move_shift\" value=\"1\">\n\t\t\t\t\t\t\t\t\t\t\t<input type=\"submit\" value=\"Move this Shift\" style=\"width: 150px\"\n\t\t\t\t\t\t\t\t\t\t\tname=\"submit\" >\n\t\t\t\t\t\t\t\t\t\t\t</form>"; if ($shift->num_slots() == 0) { echo "<form method=\"POST\" style=\"margin-bottom:0;\">\n\t\t\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"_submit_delete_shift\" value=\"1\">\n\t\t\t\t\t\t\t\t\t\t\t<input type=\"submit\" value=\"Delete this Shift\" style=\"width: 150px\"\n\t\t\t\t\t\t\t\t\t\t\tname=\"submit\" >\n\t\t\t\t\t\t\t\t\t\t\t</form>"; } echo "<br></td></tr>"; } if ($shift->num_vacancies() > 0) { echo "<tr><td valign=\"top\"><br> Find Volunteers<br> To Fill Vacancies</td><td>\n\t\t\t\t\t\t\t\t\t\t<form method=\"POST\" action=\"subCallList.php?shift=" . $shiftid . "&venue=" . $venue . "\" style=\"margin-bottom:0;\">\n\t\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"_shiftid\" value=\"" . $shiftid . "\">"; if (!$shift->has_sub_call_list() && !select_dbSCL($shift->get_id()) instanceof SCL) { echo "<input type=\"hidden\" name=\"_submit_generate_scl\" value=\"1\"><br>\n\t\t\t\t\t\t\t\t\t\t<input type=\"submit\" value=\"Generate Sub Call List\" name=\"submit\"\n\t\t\t\t\t\t\t\t\t\t\tstyle=\"width: 150px\">"; } else { echo "<input type=\"hidden\" name=\"_submit_view_scl\" value=\"1\"><br>\n\t\t\t\t\t\t\t\t\t\t<input type=\"submit\" value=\"View Sub Call List\" name=\"submit\" style=\"width: 150px\">"; } echo "</form><br></td></tr>"; } echo display_filled_slots($persons); echo display_vacant_slots($shift->num_vacancies()); echo "</td></tr></table>"; echo "<p align=\"center\"><a href=\"calendar.php?id=" . substr($shiftid, 0, 8) . ":" . $venue . "&edit=true&venue=" . $venue . "\">\n\t\t\t\t\t\t\t\t\tBack to Calendar</a>"; } } } ?>