/
index.html.twig
165 lines (154 loc) · 6.86 KB
/
index.html.twig
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
{% extends 'base.html.twig' %}
{% import "macros/widgets.html.twig" as widgets %}
{% block page_title %}{{ 'menu.doctor'|trans }}{% endblock %}
{% block page_subtitle %}{{ 'label.version'|trans }}: {{ constant('App\\Constants::VERSION') }} {{ constant('App\\Constants::STATUS') }} ({{ environment }}){% endblock %}
{% block page_actions %}
{% set event = actions(app.user, 'doctor', 'index') %}
{{ widgets.page_actions(event.actions) }}
{% endblock %}
{% block main %}
{% set permissionOpts = {collapsed: true, boxtype: 'success'} %}
{% for name, value in directories %}
{% if value is same as (false) %}
{% set permissionOpts = {boxtype: 'danger'} %}
{% endif %}
{% endfor %}
{% embed '@AdminLTE/Widgets/box-widget.html.twig' with permissionOpts %}
{% block box_title %}File permissions{% endblock %}
{% block box_body %}
<p>
If you see a warning icon <i class="{{ 'warning'|icon }} text-red"></i> in the list below, you should talk to your administrator.
The path is either not readable or not writable and Kimai might not work as expected.
</p>
<table class="table">
{% for name, value in directories %}
<tr>
<th style="width:15%">{{ name }}</th>
<td>
{% if value is same as (false) %}
<i class="{{ 'warning'|icon }} text-red"></i>
{% else %}
<i class="{{ 'success'|icon }} text-green"></i>
{% endif %}
</td>
</tr>
{% endfor %}
</table>
{% endblock %}
{% endembed %}
{% set extensionOpts = {collapsed: true, boxtype: 'success'} %}
{% for name, value in extensions %}
{% if value is same as (false) %}
{% set extensionOpts = {boxtype: 'danger'} %}
{% endif %}
{% endfor %}
{% embed '@AdminLTE/Widgets/box-widget.html.twig' with extensionOpts %}
{% block box_title %}Required PHP extensions{% endblock %}
{% block box_body %}
<p>
If you see a warning icon <i class="{{ 'warning'|icon }} text-red"></i> in the list below, you should talk to your administrator.
There is a missing PHP extension and Kimai might not work as expected.
</p>
<table class="table">
{% for name, value in extensions %}
<tr>
<th style="width:15%">{{ name }}</th>
<td>
{% if value is same as (false) %}
<i class="{{ 'warning'|icon }} text-red"></i>
{% else %}
<i class="{{ 'success'|icon }} text-green"></i>
{% endif %}
</td>
</tr>
{% endfor %}
</table>
{% endblock %}
{% endembed %}
{% set logOpts = {collapsed: true} %}
{% if logSize > 52428800 %}
{% set logOpts = {boxtype: 'danger'} %}
{% endif %}
{% embed '@AdminLTE/Widgets/box-widget.html.twig' with logOpts %}
{% block box_title %}Logfile (max. {{ logLines }} last lines){% endblock %}
{% block box_tools %}
{% if log_delete %}
<a class="btn-box-tool confirmation-link" href="{{ path('doctor_flush_log', {'token': csrf_token('doctor.flush_log')}) }}" data-question="confirm.delete"><i class="{{ 'delete'|icon }}"></i></a>
{% endif %}
{% endblock %}
{% block box_body %}
{% if logSize > 52428800 %}
<p>Your logfile is larger than 50 MB, consider deleting it (it will be re-created automatically).</p>
{% endif %}
<pre>{% for logLine in logs|reverse -%}
{%- set logLineClass = '' -%}
{%- if '.CRITICAL' in logLine -%}
{%- set logLineClass = 'text-danger text-bold' -%}
{%- elseif '.WARNING' in logLine -%}
{%- set logLineClass = 'text-warning text-bold' -%}
{%- elseif '.ERROR' in logLine -%}
{%- set logLineClass = 'text-warning text-bold' -%}
{%- elseif '.DEBUG' in logLine -%}
{%- set logLineClass = 'text-muted' -%}
{%- endif -%}
<span class="{{ logLineClass }}">{{- logLine -}}</span>
{%- endfor %}</pre>
{% endblock %}
{% endembed %}
{% embed '@AdminLTE/Widgets/box-widget.html.twig' with {collapsed: true} %}
{% block box_title %}Composer packages{% endblock %}
{% block box_body_class %}no-padding{% endblock %}
{% block box_body %}
<table class="table table-hover">
{% for name, value in composer %}
<tr>
<th style="width:15%">{{ name }}</th>
<td>{{ value }}</td>
</tr>
{% endfor %}
</table>
{% endblock %}
{% endembed %}
{% embed '@AdminLTE/Widgets/box-widget.html.twig' with {collapsed: true} %}
{% block box_title %}PHP{% endblock %}
{% block box_body_class %}no-padding{% endblock %}
{% block box_body %}
<table class="table table-hover">
<tr>
<th style="width:15%">Version</th>
<td>{{ constant('PHP_VERSION') }}</td>
</tr>
<tr>
<th style="width:15%;max-width:25%">Modules</th>
<td>{{ modules|join(', ') }}</td>
</tr>
{% for name, value in settings %}
<tr>
<th style="width:15%">{{ name }}</th>
<td>
{% if value is empty %}
<i>unknown</i>
{% else %}
{{ value }}
{% endif %}
</td>
</tr>
{% endfor %}
</table>
{% endblock %}
{% endembed %}
{% embed '@AdminLTE/Widgets/box-widget.html.twig' with {collapsed: true} %}
{% block box_title %}Server{% endblock %}
{% block box_body_class %}no-padding{% endblock %}
{% block box_body %}
<table class="table table-hover">
{% for name, value in info %}
<tr>
<th style="width:15%">{{ name }}</th>
<td>{{ value|raw }}</td>
</tr>
{% endfor %}
</table>
{% endblock %}
{% endembed %}
{% endblock %}