1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
<?php
use Engelsystem\Models\Question;
/**
* @param Question[] $open_questions
* @param Question[] $answered_questions
* @param string $ask_action
* @return string
*/
function Questions_view(array $open_questions, array $answered_questions, $ask_action)
{
$open_questions = array_map(
static function (Question $question): array {
return [
'actions' => form(
[
form_submit('submit', __('delete'), 'btn-default btn-xs')
],
page_link_to('user_questions', ['action' => 'delete', 'id' => $question->id])
),
'Question' => nl2br(htmlspecialchars($question->text)),
];
},
$open_questions
);
$answered_questions = array_map(
static function (Question $question): array {
return [
'Question' => nl2br(htmlspecialchars($question->text)),
'Answer' => nl2br(htmlspecialchars($question->answer)),
'answer_user' => User_Nick_render($question->answerer),
'actions' => form(
[
form_submit('submit', __('delete'), 'btn-default btn-xs')
],
page_link_to('user_questions', ['action' => 'delete', 'id' => $question->id])
),
];
},
$answered_questions
);
return page_with_title(questions_title(), [
msg(),
heading(__('Open questions'), 2),
table([
'Question' => __('Question'),
'actions' => ''
], $open_questions),
heading(__('Answered questions'), 2),
table([
'Question' => __('Question'),
'answer_user' => __('Answered by'),
'Answer' => __('Answer'),
'actions' => ''
], $answered_questions),
heading(__('Ask the Heaven'), 2),
form([
form_textarea('question', __('Your Question:'), ''),
form_submit('submit', __('Save'))
], $ask_action)
], true);
}
|