fix home page display snd styling
This commit is contained in:
+100
@@ -0,0 +1,100 @@
|
||||
}
|
||||
|
||||
$role = trim((string) ($session->get('role') ?? ''));
|
||||
if ($role === '') {
|
||||
return false;
|
||||
}
|
||||
|
||||
$excluded = array_map(
|
||||
fn ($value) => strtolower(trim((string) $value)),
|
||||
service('adminNotificationSettings')->excludedRoles()
|
||||
);
|
||||
|
||||
return !in_array(strtolower($role), $excluded, true);
|
||||
}
|
||||
|
||||
public function administratorDashboard()
|
||||
{
|
||||
helper('url');
|
||||
|
||||
$searchData = service('administratorDashboard')->search((string) $this->request->getGet('query'));
|
||||
|
||||
return view('administrator/administratordashboard', array_merge($searchData, [
|
||||
'dashboardEndpoint' => site_url('api/administrator/dashboard'),
|
||||
'schoolYear' => $this->schoolYear,
|
||||
]));
|
||||
}
|
||||
|
||||
public function dashboardMetrics()
|
||||
{
|
||||
return $this->response->setJSON(
|
||||
service('administratorDashboard')->metrics((string) $this->schoolYear, (string) $this->semester)
|
||||
);
|
||||
}
|
||||
|
||||
public function userSearch()
|
||||
{
|
||||
$data = service('administratorDashboard')->search((string) $this->request->getGet('query'));
|
||||
|
||||
return view('administrator/search_results', $data);
|
||||
}
|
||||
|
||||
public function teacherSubmissionsReport()
|
||||
{
|
||||
$semester = (string) ($this->semester !== '' ? $this->semester : (getSemester() ?? $this->semester ?? ''));
|
||||
$schoolYear = trim((string) ($this->request->getGet('school_year') ?? ''));
|
||||
if ($schoolYear === '') {
|
||||
$schoolYear = $this->currentSchoolYearName((string) ($this->schoolYear ?? ''));
|
||||
}
|
||||
$lowProgressRaw = (string) $this->request->getGet('low_progress_sections');
|
||||
$lowProgressSectionIds = array_values(array_unique(array_filter(array_map(
|
||||
'intval',
|
||||
preg_split('/\s*,\s*/', $lowProgressRaw, -1, PREG_SPLIT_NO_EMPTY)
|
||||
))));
|
||||
|
||||
return view(
|
||||
'administrator/teacher_submissions',
|
||||
service('teacherSubmissionReport')->buildReport($semester, $schoolYear, $lowProgressSectionIds)
|
||||
);
|
||||
}
|
||||
|
||||
public function sendTeacherSubmissionNotifications()
|
||||
{
|
||||
$result = service('teacherSubmissionReport')->sendNotifications(
|
||||
(array) $this->request->getPost(),
|
||||
(string) ($this->semester !== '' ? $this->semester : (getSemester() ?? '')),
|
||||
(int) (session()->get('user_id') ?? 0)
|
||||
);
|
||||
|
||||
if (($result['redirect'] ?? '') === 'login') {
|
||||
return redirect()->to('/login');
|
||||
}
|
||||
|
||||
return redirect()->back()->with((string) ($result['type'] ?? 'info'), (string) ($result['message'] ?? ''));
|
||||
}
|
||||
|
||||
public function notificationsAlerts()
|
||||
{
|
||||
if (!$this->canManageAdminNotifications()) {
|
||||
return redirect()->to('/login');
|
||||
}
|
||||
|
||||
return view('administrator/notifications_alerts', service('adminNotificationSettings')->alertsPage());
|
||||
}
|
||||
|
||||
public function saveNotificationSubjects()
|
||||
{
|
||||
if (!$this->canManageAdminNotifications()) {
|
||||
return redirect()->to('/login');
|
||||
}
|
||||
|
||||
$result = service('adminNotificationSettings')->saveSubjects($this->request->getPost('subjects'));
|
||||
|
||||
return redirect()->to('/administrator/notifications_alerts')
|
||||
->with((string) ($result['type'] ?? 'info'), (string) ($result['message'] ?? ''));
|
||||
}
|
||||
|
||||
public function printNotificationRecipients()
|
||||
{
|
||||
if (!$this->canManageAdminNotifications()) {
|
||||
return redirect()->to('/login');
|
||||
Reference in New Issue
Block a user