summaryrefslogtreecommitdiff
path: root/includes/pages
diff options
context:
space:
mode:
Diffstat (limited to 'includes/pages')
-rw-r--r--includes/pages/admin_active.php5
-rw-r--r--includes/pages/admin_arrive.php4
-rw-r--r--includes/pages/admin_free.php12
-rw-r--r--includes/pages/admin_questions.php2
-rw-r--r--includes/pages/user_messages.php8
-rw-r--r--includes/pages/user_settings.php6
6 files changed, 21 insertions, 16 deletions
diff --git a/includes/pages/admin_active.php b/includes/pages/admin_active.php
index 71d6914a..d82b8fa9 100644
--- a/includes/pages/admin_active.php
+++ b/includes/pages/admin_active.php
@@ -149,7 +149,7 @@ function admin_active()
}
}
- $query = User::query()
+ $query = User::with('personalData')
->selectRaw(
sprintf(
'
@@ -211,9 +211,8 @@ function admin_active()
}
$shirtSize = $usr->personalData->shirt_size;
-
$userData = [];
- $userData['nick'] = User_Nick_render($usr);
+ $userData['nick'] = User_Nick_render($usr) . User_Pronoun_render($usr);
$userData['shirt_size'] = (isset($tshirt_sizes[$shirtSize]) ? $tshirt_sizes[$shirtSize] : '');
$userData['work_time'] = round($usr['shift_length'] / 60)
. ' min (' . sprintf('%.2f', $usr['shift_length'] / 3600) . ' h)';
diff --git a/includes/pages/admin_arrive.php b/includes/pages/admin_arrive.php
index 312fd6dc..d6d7ad48 100644
--- a/includes/pages/admin_arrive.php
+++ b/includes/pages/admin_arrive.php
@@ -64,7 +64,7 @@ function admin_arrive()
}
/** @var User[] $users */
- $users = User::query()->orderBy('name')->get();
+ $users = User::with('personalData')->orderBy('name')->get();
$arrival_count_at_day = [];
$planned_arrival_count_at_day = [];
$planned_departure_count_at_day = [];
@@ -91,7 +91,7 @@ function admin_arrive()
}
}
- $usr->name = User_Nick_render($usr);
+ $usr->name = User_Nick_render($usr) . User_Pronoun_render($usr);
$plannedDepartureDate = $usr->personalData->planned_departure_date;
$arrivalDate = $usr->state->arrival_date;
$plannedArrivalDate = $usr->personalData->planned_arrival_date;
diff --git a/includes/pages/admin_free.php b/includes/pages/admin_free.php
index fa4508c5..709954a0 100644
--- a/includes/pages/admin_free.php
+++ b/includes/pages/admin_free.php
@@ -33,7 +33,7 @@ function admin_free()
}
$angelType = $request->input('angeltype', '');
- $query = User::query()
+ $query = User::with('personalData')
->select('users.*')
->leftJoin('ShiftEntry', 'users.id', 'ShiftEntry.UID')
->leftJoin('users_state', 'users.id', 'users_state.user_id')
@@ -73,10 +73,10 @@ function admin_free()
foreach ($users as $usr) {
if (count($tokens) > 0) {
$match = false;
- $index = join('', $usr->toArray());
- foreach ($tokens as $t) {
- $t = trim($t);
- if (!empty($t) && stristr($index, $t)) {
+ $index = join('', $usr->attributesToArray());
+ foreach ($tokens as $token) {
+ $token = trim($token);
+ if (!empty($token) && stristr($index, $token)) {
$match = true;
break;
}
@@ -87,7 +87,7 @@ function admin_free()
}
$free_users_table[] = [
- 'name' => User_Nick_render($usr),
+ 'name' => User_Nick_render($usr) . User_Pronoun_render($usr),
'shift_state' => User_shift_state_render($usr),
'last_shift' => User_last_shift_render($usr),
'dect' => $usr->contact->dect,
diff --git a/includes/pages/admin_questions.php b/includes/pages/admin_questions.php
index 8a63f8db..24a818a8 100644
--- a/includes/pages/admin_questions.php
+++ b/includes/pages/admin_questions.php
@@ -48,7 +48,7 @@ function admin_questions()
$user_source = $question->user;
$unanswered_questions_table[] = [
- 'from' => User_Nick_render($user_source),
+ 'from' => User_Nick_render($user_source) . User_Pronoun_render($user_source),
'question' => nl2br(htmlspecialchars($question->text)),
'answer' => form([
form_textarea('answer', '', ''),
diff --git a/includes/pages/user_messages.php b/includes/pages/user_messages.php
index 72bb9ae2..5ec6fdfb 100644
--- a/includes/pages/user_messages.php
+++ b/includes/pages/user_messages.php
@@ -41,16 +41,18 @@ function user_messages()
if (!$request->has('action')) {
/** @var User[] $users */
$users = User::query()
- ->whereKeyNot($user->id)
+ ->where('user_id', '!=', $user->id)
+ ->leftJoin('users_personal_data', 'users.id', '=', 'users_personal_data.user_id')
->orderBy('name')
- ->get(['id', 'name']);
+ ->get(['id', 'name', 'pronoun']);
$to_select_data = [
'' => __('Select recipient...')
];
foreach ($users as $u) {
- $to_select_data[$u->id] = $u->name;
+ $pronoun = ((config('enable_pronoun') && $u->pronoun) ? ' (' . htmlspecialchars($u->pronoun) . ')' : '');
+ $to_select_data[$u->id] = $u->name . $pronoun;
}
$to_select = html_select_key('to', 'to', $to_select_data, '');
diff --git a/includes/pages/user_settings.php b/includes/pages/user_settings.php
index 5646b27f..46aea33d 100644
--- a/includes/pages/user_settings.php
+++ b/includes/pages/user_settings.php
@@ -70,7 +70,11 @@ function user_settings_main($user_source, $enable_tshirt_size, $tshirt_sizes)
}
// Trivia
- if(config('enable_user_name')) {
+ $pronoun = strip_request_item('pronoun', $user_source->personalData->pronoun);
+ if (config('enable_pronoun') && mb_strlen($pronoun) <= 15) {
+ $user_source->personalData->pronoun = $pronoun;
+ }
+ if (config('enable_user_name')) {
$user_source->personalData->last_name = strip_request_item('lastname', $user_source->personalData->last_name);
$user_source->personalData->first_name = strip_request_item('prename', $user_source->personalData->first_name);
}