BLUE
PHP 7.4.33
Path:
/var/www/multi-event-cfp.bitkit.dk/httpdocs/app/Repositories
Run
Logout
Edit File
Size: 4.26 KB
Close
/var/www/multi-event-cfp.bitkit.dk/httpdocs/app/Repositories/SystemEmailRepository.php
Text
Base64
<?php namespace App\Repositories; use App\Models\SystemEmail; use Illuminate\Support\Facades\Validator; use Illuminate\Database\Eloquent\Builder; use App\Support\Query; use Illuminate\Support\Facades\DB; use Illuminate\Http\Request; use Illuminate\Support\Facades\Storage; class SystemEmailRepository extends Repository { public function __construct($event = null) { $this->for($event); } public function model(): ?SystemEmail { return new SystemEmail; } public function query($as = null) { $model = $this->model(); return $model->newQuery(); } public function editEmail($request, $event) { $id = $request->get('id') ?? null; $email = SystemEmail::find($id); if ($email) { $email->body = $request->get('body'); $email->subject = $request->get('subject'); $email->status = $request->get('status'); $email->save(); } return response([ 'status' => true, 'message' => "Mail Edited Successfully", 'email' => $email ]); } public function selectColumns(): array { return [ 'system_emails.id', 'system_emails.title', 'system_emails.description', 'system_emails.key', 'system_emails.recipient', 'system_emails.status', ]; } public function scope($arguments, $callback = null) { //get query builder $query = $this->query() ->select($this->selectColumns()); //applying different scopes based on the arguments $this->applyScope($query, $arguments); //resolve if there is any callback functions available return $this->resolve($query, $arguments, $callback); } public function applyScope(Builder $query, $arguments): Builder { $this->applyEventScope($query, $arguments); $this->applyOrder($query, $arguments); $this->applySearch($query, $arguments); return $query; } public function applyEventScope(Builder $query, $arguments): Builder { if ($arguments->event) { $query->where('system_emails.event_id', '=', $arguments->event->id); } return $query; } public function applyOrder(Builder $query, Query $arguments): Builder { $emailColumns = [ 'title' => 'system_emails.title', 'description' => 'system_emails.description', 'key' => 'system_emails.key', 'recipient' => 'system_emails.recipient', 'status' => 'system_emails.status', ]; $sorts = json_decode($arguments->sort, true) ?? []; foreach ($sorts as $sort => $method) { if (array_key_exists($sort, $emailColumns)) { $query->orderBy($sort, $method); } } return $query; } public function applySearch(Builder $query, $arguments): Builder { if ($arguments->search) { $emailColumns = [ 'title' => 'system_emails.title', 'description' => 'system_emails.description', 'key' => 'system_emails.key', 'recipient' => 'system_emails.recipient', 'status' => 'system_emails.status', ]; $search = strtolower($arguments->search); $query->where(function ($query) use ($search, $emailColumns) { foreach ($emailColumns as $emailColumn) { $query->orWhere(DB::raw("lower($emailColumn)"), 'like', "%{$search}%"); } }); } return $query; } public function listing($request, $paginate) { //building arguments $arguments = $this->arguments($request); //building query $query = $this->scope($arguments); return ($paginate && $arguments->paging != 'All') ? $query->paginate($arguments->paging, ['*'], 'page', $arguments->page) : $query->get(); } public function fetchSingleEmail($id, $role = null, $request) { // event $event = $request->get('event'); $email = SystemEmail::find($id); if (!$email) return null; return $email; } }
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 0 × Files: 17
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
AbstractsRepository.php
75.27 KB
lrw-rw-r--
2026-04-30 09:24:04
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
AmendSpeakerTermsRepository.php
1.21 KB
lrw-rw-r--
2025-04-21 06:11:52
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
ApiRepository.php
65 B
lrw-r--r--
2024-02-09 12:37:30
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
AuthRepository.php
8.53 KB
lrw-rw-r--
2025-03-03 05:39:26
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
EmailLogRepository.php
4.14 KB
lrw-rw-r--
2025-10-28 05:24:52
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
EmailRepository.php
8.53 KB
lrw-rw-r--
2025-10-28 05:24:35
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
EventRepository.php
37.58 KB
lrw-rw-r--
2026-04-07 05:00:51
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
PresentationCommentRepository.php
8.71 KB
lrw-r--r--
2024-02-09 12:37:30
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
PresentationRepository.php
59.48 KB
lrwxrwxr-x
2026-04-30 09:24:03
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Repository.php
4.78 KB
lrw-r--r--
2024-02-09 12:37:30
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
ScheduleEmailRepository.php
10.79 KB
lrw-rw-r--
2025-04-21 06:11:52
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
ScoreRepository.php
11.37 KB
lrw-rw-r--
2024-07-24 04:42:48
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
SessionRepository.php
72.51 KB
lrw-rw-r--
2026-04-22 04:31:21
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
SlotRepository.php
11.43 KB
lrw-rw-r--
2024-09-20 05:02:14
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
SpeakerNotesRepository.php
6.57 KB
lrw-rw-r--
2026-03-31 07:16:20
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
SystemEmailRepository.php
4.26 KB
lrw-r--r--
2024-02-09 12:37:30
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
UserRepository.php
128.96 KB
lrw-rw-r--
2026-05-07 09:06:13
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).