Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 8 additions & 5 deletions modules/Timetable Admin/courseEnrolment_manage.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
use Gibbon\Tables\DataTable;
use Gibbon\Forms\DatabaseFormFactory;
use Gibbon\Domain\Timetable\CourseGateway;
use Gibbon\Http\Url;

if (isActionAccessible($guid, $connection2, '/modules/Timetable Admin/courseEnrolment_manage.php') == false) {
// Access denied
Expand Down Expand Up @@ -55,14 +56,16 @@
echo __('Filters');
echo '</h3>';

$form = Form::create('searchForm', $session->get('absoluteURL').'/index.php', 'get');
$form = Form::create(
'searchForm',
Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage')
->withQueryParam('gibbonSchoolYearID', $gibbonSchoolYearID),
'get'
);
$form->setFactory(DatabaseFormFactory::create($pdo));

$form->setClass('noIntBorder fullWidth');

$form->addHiddenValue('q', '/modules/'.$session->get('module').'/courseEnrolment_manage.php');
$form->addHiddenValue('gibbonSchoolYearID', $gibbonSchoolYearID);

$row = $form->addRow();
$row->addLabel('search', __('Search For'));
$row->addTextField('search')->setValue($criteria->getSearchText());
Expand Down Expand Up @@ -123,7 +126,7 @@
->addParam('gibbonCourseClassID')
->format(function ($class, $actions) {
$actions->addAction('edit', __('Edit'))
->setURL('/modules/Timetable Admin/courseEnrolment_manage_class_edit.php');
->setURL(Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage_class_edit'));
});

echo $table->render($classes->toDataSet());
Expand Down
19 changes: 11 additions & 8 deletions modules/Timetable Admin/courseEnrolment_manage_byPerson.php
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
use Gibbon\Tables\DataTable;
use Gibbon\Services\Format;
use Gibbon\Domain\Students\StudentGateway;
use Gibbon\Http\Url;

if (isActionAccessible($guid, $connection2, '/modules/Timetable Admin/courseEnrolment_manage_byPerson.php') == false) {
// Access denied
Expand Down Expand Up @@ -52,13 +53,15 @@

echo '<h3>';
echo __('Filters');
echo '</h3>';

$form = Form::create('searchForm', $session->get('absoluteURL').'/index.php', 'get');
$form->setClass('noIntBorder fullWidth');
echo '</h3>';

$form->addHiddenValue('q', '/modules/'.$session->get('module').'/courseEnrolment_manage_byPerson.php');
$form->addHiddenValue('gibbonSchoolYearID', $gibbonSchoolYearID);
$form = Form::create(
'searchForm',
Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage_byPerson')
->withQueryParam('gibbonSchoolYearID', $gibbonSchoolYearID),
'get'
);
$form->setClass('noIntBorder fullWidth');

$row = $form->addRow();
$row->addLabel('search', __('Search For'))->description(__('Preferred, surname, username.'));
Expand All @@ -76,7 +79,7 @@
echo '<h3>';
echo __('View');
echo '</h3>';

$users = $studentGateway->queryStudentsAndTeachersBySchoolYear($criteria, $gibbonSchoolYearID, $gibbon->session->get('gibbonRoleIDCurrentCategory'));

// DATA TABLE
Expand Down Expand Up @@ -122,7 +125,7 @@
->format(function ($person, $actions) {
$actions->addAction('edit', __('Edit'))
->addParam('type', $person['roleCategory'])
->setURL('/modules/Timetable Admin/courseEnrolment_manage_byPerson_edit.php');
->setURL(Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage_byPerson_edit'));
});

echo $table->render($users);
Expand Down
49 changes: 31 additions & 18 deletions modules/Timetable Admin/courseEnrolment_manage_byPerson_edit.php
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,10 @@
use Gibbon\Forms\Prefab\BulkActionForm;
use Gibbon\Domain\Timetable\CourseGateway;
use Gibbon\Domain\Timetable\CourseEnrolmentGateway;
use Gibbon\Http\Url;

//Module includes for Timetable module
include './modules/Timetable/moduleFunctions.php';
require_once __DIR__ . '/../Timetable/moduleFunctions.php';

if (isActionAccessible($guid, $connection2, '/modules/Timetable Admin/courseEnrolment_manage_byPerson_edit.php') == false) {
// Access denied
Expand All @@ -49,7 +50,7 @@
try {
if ($allUsers == 'on') {
$data = array('gibbonSchoolYearID' => $session->get('gibbonSchoolYearID'), 'gibbonPersonID' => $gibbonPersonID);
$sql = "SELECT gibbonPerson.gibbonPersonID, surname, preferredName, title, NULL AS gibbonYearGroupID, gibbonYearGroup.nameShort AS yearGroup, gibbonFormGroup.nameShort AS formGroup, NULL AS type FROM gibbonPerson LEFT JOIN gibbonStudentEnrolment ON (gibbonStudentEnrolment.gibbonPersonID=gibbonPerson.gibbonPersonID AND gibbonSchoolYearID=:gibbonSchoolYearID) LEFT JOIN gibbonFormGroup ON (gibbonStudentEnrolment.gibbonFormGroupID=gibbonFormGroup.gibbonFormGroupID) LEFT JOIN gibbonYearGroup ON (gibbonStudentEnrolment.gibbonYearGroupID=gibbonYearGroup.gibbonYearGroupID)
$sql = "SELECT gibbonPerson.gibbonPersonID, surname, preferredName, title, NULL AS gibbonYearGroupID, gibbonYearGroup.nameShort AS yearGroup, gibbonFormGroup.nameShort AS formGroup, NULL AS type FROM gibbonPerson LEFT JOIN gibbonStudentEnrolment ON (gibbonStudentEnrolment.gibbonPersonID=gibbonPerson.gibbonPersonID AND gibbonSchoolYearID=:gibbonSchoolYearID) LEFT JOIN gibbonFormGroup ON (gibbonStudentEnrolment.gibbonFormGroupID=gibbonFormGroup.gibbonFormGroupID) LEFT JOIN gibbonYearGroup ON (gibbonStudentEnrolment.gibbonYearGroupID=gibbonYearGroup.gibbonYearGroupID)
WHERE gibbonPerson.gibbonPersonID=:gibbonPersonID ORDER BY surname, preferredName";
} else {
if ($type == 'Student') {
Expand Down Expand Up @@ -80,20 +81,29 @@
echo '<h2>';
echo __('Add Classes');
echo '</h2>';

$form = Form::create('manageEnrolment', $session->get('absoluteURL').'/modules/'.$session->get('module')."/courseEnrolment_manage_byPerson_edit_addProcess.php?type=$type&gibbonSchoolYearID=$gibbonSchoolYearID&gibbonPersonID=$gibbonPersonID&allUsers=$allUsers&search=$search");


$form = Form::create(
'manageEnrolment',
Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage_byPerson_edit_addProcess')
->withQueryParams([
'type' => $type,
'gibbonSchoolYearID' => $gibbonSchoolYearID,
'gibbonPersonID' => $gibbonPersonID,
'allUsers' => $allUsers,
'search' => $search,
])
);

$form->addHiddenValue('address', $session->get('address'));

if ($search != '') {
$params = [
"search" => $search,
"allUsers" => $allUsers,
"gibbonSchoolYearID" => $gibbonSchoolYearID
];
$form->addHeaderAction('back', __('Back to Search Results'))
->setURL('/modules/Timetable Admin/courseEnrolment_manage_byPerson.php')
->addParams($params)
->setURL(Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage_byPerson')->withQueryParams($params))
->setIcon('search')
->displayLabel();
}
Expand All @@ -103,12 +113,11 @@
"gibbonSchoolYearID" => $gibbonSchoolYearID
];
$form->addHeaderAction('view', __('View'))
->setURL('/modules/Timetable/tt_view.php')
->addParams($params)
->setURL(Url::fromModuleRoute('Timetable', 'tt_view')->withQueryParams($params))
->setIcon('planner')
->displayLabel()
->prepend((!empty($search)) ? ' | ' : '');

$classes = array();
if ($type == 'Student') {
$enrolableClasses = $courseEnrolmentGateway->selectEnrolableClassesByYearGroup($gibbonSchoolYearID, $values['gibbonYearGroupID'])->fetchAll();
Expand Down Expand Up @@ -153,7 +162,7 @@

echo $form->getOutput();


//SHOW CURRENT ENROLMENT
echo '<h2>';
echo __('Current Enrolment');
Expand All @@ -168,7 +177,11 @@
$enrolment = $courseEnrolmentGateway->queryCourseEnrolmentByPerson($criteria, $gibbonSchoolYearID, $gibbonPersonID);

// FORM
$form = BulkActionForm::create('bulkAction', $session->get('absoluteURL') . '/modules/' . $session->get('module') . '/courseEnrolment_manage_byPerson_editProcessBulk.php?allUsers='.$allUsers);
$form = BulkActionForm::create(
'bulkAction',
Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage_byPerson_editProcessBulk')
->withQueryParam('allUsers', $allUsers)
);
$form->addHiddenValue('type', $type);
$form->addHiddenValue('gibbonPersonID', $gibbonPersonID);
$form->addHiddenValue('gibbonSchoolYearID', $gibbonSchoolYearID);
Expand Down Expand Up @@ -208,9 +221,9 @@
->addParams($linkParams)
->format(function ($class, $actions) {
$actions->addAction('edit', __('Edit'))
->setURL('/modules/Timetable Admin/courseEnrolment_manage_byPerson_edit_edit.php');
->setURL(Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage_byPerson_edit_edit'));
$actions->addAction('delete', __('Delete'))
->setURL('/modules/Timetable Admin/courseEnrolment_manage_byPerson_edit_delete.php');
->setURL(Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage_byPerson_edit_delete'));
});

$table->addCheckboxColumn('gibbonCourseClassID');
Expand All @@ -227,7 +240,7 @@
$gibbonTTID = isset($_GET['gibbonTTID'])? $_GET['gibbonTTID'] : null;
$ttDate = isset($_POST['ttDate'])? Format::timestamp(Format::dateConvert($_POST['ttDate'])) : null;

$tt = renderTT($guid, $connection2, $gibbonPersonID, $gibbonTTID, false, $ttDate, '/modules/Timetable Admin/courseEnrolment_manage_byPerson_edit.php', "&gibbonPersonID=$gibbonPersonID&gibbonSchoolYearID=$gibbonSchoolYearID&type=$type&allUsers=$allUsers#tt", 'full', true);
$tt = renderTT($guid, $connection2, $gibbonPersonID, $gibbonTTID, false, $ttDate, Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage_byPerson_edit'), "&gibbonPersonID=$gibbonPersonID&gibbonSchoolYearID=$gibbonSchoolYearID&type=$type&allUsers=$allUsers#tt", 'full', true);
if ($tt != false) {
echo $tt;
} else {
Expand Down Expand Up @@ -257,9 +270,9 @@
->addParams($linkParams)
->format(function ($class, $actions) {
$actions->addAction('edit', __('Edit'))
->setURL('/modules/Timetable Admin/courseEnrolment_manage_byPerson_edit_edit.php');
->setURL(Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage_byPerson_edit_edit'));
$actions->addAction('delete', __('Delete'))
->setURL('/modules/Timetable Admin/courseEnrolment_manage_byPerson_edit_delete.php');
->setURL(Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage_byPerson_edit_delete'));
});

echo $table->render($enrolmentLeft);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

include '../../gibbon.php';
use Gibbon\Http\Url;

require_once __DIR__ . '/../../gibbon.php';

$type = $_POST['type'] ?? '';
$gibbonPersonID = $_POST['gibbonPersonID'] ?? '';
Expand All @@ -26,22 +28,26 @@
$allUsers = $_GET['allUsers'] ?? '';
$search = $_GET['search'] ?? '';

$URL = $session->get('absoluteURL').'/index.php?q=/modules/'.getModuleName($_POST['address'])."/courseEnrolment_manage_byPerson_edit.php&gibbonSchoolYearID=$gibbonSchoolYearID&gibbonPersonID=$gibbonPersonID&type=$type&allUsers=$allUsers&search=$search";
$URL = Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage_byPerson_edit')
->withQueryParams([
'gibbonSchoolYearID' => $gibbonSchoolYearID,
'gibbonPersonID' => $gibbonPersonID,
'type' => $type,
'allUsers' => $allUsers,
'search' => $search,
]);

if (isActionAccessible($guid, $connection2, '/modules/Timetable Admin/courseEnrolment_manage_byPerson_edit.php') == false) {
$URL .= '&return=error0';
header("Location: {$URL}");
header('Location: ' . $URL->withReturn('error0'));
} else if ($gibbonPersonID == '' or $gibbonSchoolYearID == '' or $action == '') {
$URL .= '&return=error1';
header("Location: {$URL}");
header('Location: ' . $URL->withReturn('error1'));
} else {
$classes = isset($_POST['gibbonCourseClassID'])? $_POST['gibbonCourseClassID'] : array();

//Proceed!
//Check if person specified
if (count($classes) <= 0) {
$URL .= '&return=error3';
header("Location: {$URL}");
header('Location: ' . $URL->withReturn('error3'));
} else {
$partialFail = false;
if ($action == 'Delete') {
Expand Down Expand Up @@ -69,11 +75,9 @@
}

if ($partialFail == true) {
$URL .= '&return=warning1';
header("Location: {$URL}");
header('Location: ' . $URL->withReturn('warning1'));
} else {
$URL .= '&return=success0';
header("Location: {$URL}");
header('Location: ' . $URL->withReturn('success0'));
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,9 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
use Gibbon\Data\Validator;
use Gibbon\Http\Url;

include '../../gibbon.php';
require_once __DIR__ . '/../../gibbon.php';

$_POST = $container->get(Validator::class)->sanitize($_POST);

Expand All @@ -30,11 +31,17 @@

if ($gibbonSchoolYearID == '' or $gibbonPersonID == '') { echo 'Fatal error loading this page!';
} else {
$URL = $session->get('absoluteURL').'/index.php?q=/modules/'.getModuleName($_POST['address'])."/courseEnrolment_manage_byPerson_edit.php&type=$type&gibbonSchoolYearID=$gibbonSchoolYearID&gibbonPersonID=$gibbonPersonID&allUsers=$allUsers&search=$search";
$URL = Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage_byPerson_edit')
->withQueryParams([
'type' => $type,
'gibbonSchoolYearID' => $gibbonSchoolYearID,
'gibbonPersonID' => $gibbonPersonID,
'allUsers' => $allUsers,
'search' => $search,
]);

if (isActionAccessible($guid, $connection2, '/modules/Timetable Admin/courseEnrolment_manage_byPerson_edit.php') == false) {
$URL .= '&return=error0';
header("Location: {$URL}");
header('Location: ' . $URL->withReturn('error0'));
} else {
//Proceed!
//Run through each of the selected participants.
Expand All @@ -43,8 +50,7 @@
$role = $_POST['role'] ?? '';

if (count($choices) < 1 or $role == '') {
$URL .= '&return=error1';
header("Location: {$URL}");
header('Location: ' . $URL->withReturn('error1'));
} else {
foreach ($choices as $t) {
//Check to see if student is already registered in this class
Expand Down Expand Up @@ -81,11 +87,9 @@
}
//Write to database
if ($update == false) {
$URL .= '&return=error2';
header("Location: {$URL}");
header('Location: ' . $URL->withReturn('error2'));
} else {
$URL .= '&return=success0';
header("Location: {$URL}");
header('Location: ' . $URL->withReturn('success0'));
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
*/

use Gibbon\Forms\Prefab\DeleteForm;
use Gibbon\Http\Url;

if (isActionAccessible($guid, $connection2, '/modules/Timetable Admin/courseEnrolment_manage_byPerson_edit_delete.php') == false) {
// Access denied
Expand All @@ -34,7 +35,7 @@
if ($gibbonPersonID == '' or $gibbonCourseClassID == '' or $gibbonSchoolYearID == '') {
$page->addError(__('You have not specified one or more required parameters.'));
} else {

$data = array('gibbonCourseClassID' => $gibbonCourseClassID, 'gibbonPersonID' => $gibbonPersonID);
$sql = 'SELECT role, gibbonPerson.preferredName, gibbonPerson.surname, gibbonPerson.gibbonPersonID, gibbonCourseClass.gibbonCourseClassID, gibbonCourseClass.name, gibbonCourseClass.nameShort, gibbonCourse.gibbonCourseID, gibbonCourse.name AS courseName, gibbonCourse.nameShort as courseNameShort, gibbonCourse.description AS courseDescription, gibbonCourse.gibbonSchoolYearID, gibbonSchoolYear.name as yearName FROM gibbonPerson, gibbonCourseClass, gibbonCourseClassPerson,gibbonCourse, gibbonSchoolYear WHERE gibbonPerson.gibbonPersonID=gibbonCourseClassPerson.gibbonPersonID AND gibbonCourseClassPerson.gibbonCourseClassID=gibbonCourseClass.gibbonCourseClassID AND gibbonCourse.gibbonCourseID=gibbonCourseClass.gibbonCourseID AND gibbonCourse.gibbonSchoolYearID=gibbonSchoolYear.gibbonSchoolYearID AND gibbonCourseClass.gibbonCourseClassID=:gibbonCourseClassID AND gibbonPerson.gibbonPersonID=:gibbonPersonID';
$result = $connection2->prepare($sql);
Expand All @@ -45,7 +46,17 @@
} else {
//Let's go!
$row = $result->fetch();
$form = DeleteForm::createForm($session->get('absoluteURL').'/modules/'.$session->get('module')."/courseEnrolment_manage_byPerson_edit_deleteProcess.php?gibbonCourseClassID=$gibbonCourseClassID&type=$type&gibbonSchoolYearID=$gibbonSchoolYearID&gibbonPersonID=$gibbonPersonID&allUsers=$allUsers&search=$search");
$form = DeleteForm::createForm(
Url::fromModuleRoute('Timetable Admin', 'courseEnrolment_manage_byPerson_edit_deleteProcess')
->withQueryParams([
'gibbonCourseClassID' => $gibbonCourseClassID,
'type' => $type,
'gibbonSchoolYearID' => $gibbonSchoolYearID,
'gibbonPersonID' => $gibbonPersonID,
'allUsers' => $allUsers,
'search' => $search,
])
);
echo $form->getOutput();
}
}
Expand Down
Loading