function read_all() { if (NotificationsSource::mark_read_all()) { User::active()->mark_notification_read_all(); return 'true'; } return 'false'; }
function complete($id, $complete = true) { $complete = filter_var($complete, FILTER_VALIDATE_BOOLEAN); if (HomeworkSource::mark_complete($id, $complete)) { User::active()->mark_homework_complete($id, $complete); return 'true'; } return 'false'; }
public static function mark_read_all() { $user = User::active(); $sp = static::sharepoint($user); $items = []; foreach ($user->notifications()->wherePivot('is_read', '=', false) as $key => $notification) { $items[] = ['ID' => $notification->notification_id, 'ReadStatus' => 'Read']; } $raw_data = $sp->updateMultiple('Notifications', $items); return is_array($raw_data) && !isset($raw_data['warning']); }
use App\Next\Models\Homework; use App\Next\Models\Lesson; use App\Next\Models\User; use App\Next\Data\HomeworkSource; use App\Next\Layout\Colours; use Carbon\Carbon; $now = Carbon::now(); ?> <div class="option-flex"> <div class="option"> <div class="heading">Profile <span class="detail">Who you are</span></div> <div class="option-flex"> <?php $person = User::active()->person; ?> <div class="profile-image" style="background-image: url({{ $person->profile_image_path() }});"></div> <div class="option-details"> <div class="option-maintext">{{{ $person->name }}}</div> <?php if ($person->job_title == 'Student') { $str = 'Year ' . $person->year_level . ' Student'; } else { $str = $person->job_title; } ?> <div class="option-subtext">{{{ $str }}}</div> </div> <a href="/auth/logout">
<div class="tile sportszone"> <div class="tile-content"> <div class="sports-item main"> <div class="title">{{{ $match->team_name }}}</div> <div class="body">{{{ $match->date->format('g:i a \o\n \t\h\e jS \o\f F') }}}</div> </div> <div class="sports-item"> <div class="subtitle">Match</div> <div class="body">Against {{{ $match->opponent_name }}} at {{{ $match->venue }}}</div> </div> <br> <div class="sports-item"> <div class="subtitle">Players</div> <?php use App\Next\Models\User; $active_id = User::active()->user_id; ?> <div class="people"> @foreach ($match->team_members() as $person) <div class="person hover {{{ $person->person_id == $active_id ? 'person-self' : '' }}}" style="background-image: url({{ $person->profile_image_path() }});" data-name="{{{ $person->name }}}"></div> @endforeach </div> </div> <div class="sports-item"> <div class="subtitle">Staff</div> <div class="people"> @foreach ($match->staff_members() as $person) <div class="person hover {{{ $person->person_id == $active_id ? 'person-self' : '' }}}" style="background-image: url({{ $person->profile_image_path() }});" data-name="{{{ $person->name }}}"></div> @endforeach </div> </div>
<?php use App\Next\Models\Homework; use App\Next\Models\Lesson; use App\Next\Models\User; use App\Next\Data\HomeworkSource; use App\Next\Layout\Colours; use Carbon\Carbon; $now = Carbon::now(); ?> <?php $feed = User::active()->timetable_feed(); ?> @if (count($feed) == 0) <div class="feed-empty"> You don't have any lessons in the next few days. </div> @else @foreach($feed as $group) <div class="heading">{{{ $group['heading'] }}}</div> @foreach($group['items'] as $tile) @include('timetable/tile', ['lesson' => $tile]) @endforeach @endforeach @endif
function state() { return User::active()->is_queued; }
<?php use App\Next\Models\Homework; use App\Next\Models\Lesson; use App\Next\Models\User; use App\Next\Data\HomeworkSource; use App\Next\Layout\Colours; use Carbon\Carbon; $now = Carbon::now(); ?> <?php $feed = User::active()->notifications_feed(); ?> @if (count($feed) == 0) <div class="feed-empty"> You don't have any unread notifications. </div> @else <div class="button-wrapper"> <div class="button mark-all-read-button">Mark All As Read</div> </div> @foreach($feed as $tile) @include('notifications/tile', ['notification' => $tile]) @endforeach @endif <script src="notifications.js"></script>
<?php use App\Next\Models\Homework; use App\Next\Models\Lesson; use App\Next\Models\User; use App\Next\Data\HomeworkSource; use App\Next\Layout\Colours; use Carbon\Carbon; $now = Carbon::now(); ?> <?php $feed = User::active()->sportszone_feed(); ?> @if (count($feed) == 0) <div class="feed-empty"> You don't have any recent or upcoming matches. </div> @else @foreach($feed as $group) <div class="heading">{{{ $group['heading'] }}}</div> @foreach($group['items'] as $tile) @include('sportszone/tile', ['match' => $tile]) @endforeach @endforeach @endif <script src="sportszone.js"></script>
public static function keystone($path, $user = false) { $url = "https://keystone.stpeters.sa.edu.au/" . $path; $user = $user ? $user : User::active(); return static::curl_authenticated(static::curl_init($url), $user->user_id, $user->password()); }
<?php use App\Next\Models\Homework; use App\Next\Models\Lesson; use App\Next\Models\User; use App\Next\Data\HomeworkSource; use App\Next\Layout\Colours; use Carbon\Carbon; $now = Carbon::now(); ?> <?php $feed = User::active()->pastoralcare_feed(); ?> @if (count($feed) == 0) <div class="feed-empty"> You don't have any Pastoral Care items... somehow. </div> @else @foreach($feed as $tile) @include('pastoralcare/tile', ['pastoralcare' => $tile]) @endforeach @endif