5bb5080879f155ac3e6ab5f220d03e91f86c703e
[timetracker.git] / WEB-INF / templates / profile_edit.tpl
1 <script>
2 // handleRolesCheckbox - controls visibility of the Configure and What is it? links on the right.
3 function handleRolesCheckbox() {
4   var rolesCheckbox = document.getElementById("roles");
5   var configureLabel = document.getElementById("roles_config");
6   var whatIsItLabel = document.getElementById("roles_what_is_it");
7   if (rolesCheckbox.checked) {
8     configureLabel.style.display = "inline";
9     whatIsItLabel.style.display = "none";
10   } else {
11     configureLabel.style.display = "none";
12     whatIsItLabel.style.display = "inline";
13   }
14 }
15
16
17 // handleTaskRequiredCheckbox - controls visibility of the Task Required checkbox.
18 function handleTaskRequiredCheckbox() {
19   var taskRequiredCheckbox = document.getElementById("task_required");
20   var taskRequiredLabel = document.getElementById("task_required_label");
21   var trackingModeDropdown = document.getElementById("tracking_mode");
22   if (trackingModeDropdown.value == 2) {
23     taskRequiredCheckbox.style.visibility = "visible";
24     taskRequiredLabel.style.visibility = "visible";
25   } else {
26     taskRequiredCheckbox.style.visibility = "hidden";
27     taskRequiredLabel.style.visibility = "hidden";
28   }
29 }
30
31
32 // handleControls - controls visibility of controls.
33 function handlePluginCheckboxes() {
34   var clientsCheckbox = document.getElementById("clients");
35   var invoicesCheckbox = document.getElementById("invoices");
36   var requiredCheckbox = document.getElementById("client_required");
37   var requiredLabel = document.getElementById("client_required_label");
38   if (clientsCheckbox.checked) {
39     requiredCheckbox.style.visibility = "visible";
40     requiredLabel.style.visibility = "visible";
41     invoicesCheckbox.disabled = false;
42   } else {
43     requiredCheckbox.checked = false;
44     requiredCheckbox.style.visibility = "hidden";
45     requiredLabel.style.visibility = "hidden";
46     invoicesCheckbox.checked = false;
47     invoicesCheckbox.disabled = true;
48   }
49
50   var expensesCheckbox = document.getElementById("expenses");
51   var taxCheckbox = document.getElementById("tax_expenses");
52   var taxLabel = document.getElementById("tax_label");
53   if (expensesCheckbox.checked) {
54     taxCheckbox.style.visibility = "visible";
55     taxLabel.style.visibility = "visible";
56   } else {
57     taxCheckbox.checked = false;
58     taxCheckbox.style.visibility = "hidden";
59     taxLabel.style.visibility = "hidden";
60   }
61   var configureLabel = document.getElementById("expenses_config");
62   if (expensesCheckbox.checked) {
63     configureLabel.style.visibility = "visible";
64   } else {
65     configureLabel.style.visibility = "hidden";
66   }
67
68   var customFieldsCheckbox = document.getElementById("custom_fields");
69   configureLabel = document.getElementById("cf_config");
70   if (customFieldsCheckbox.checked) {
71     configureLabel.style.visibility = "visible";
72   } else {
73     configureLabel.style.visibility = "hidden";
74   }
75
76   var notificationsCheckbox = document.getElementById("notifications");
77   configureLabel = document.getElementById("notifications_config");
78   if (notificationsCheckbox.checked) {
79     configureLabel.style.visibility = "visible";
80   } else {
81     configureLabel.style.visibility = "hidden";
82   }
83
84   var lockingCheckbox = document.getElementById("locking");
85   configureLabel = document.getElementById("locking_config");
86   if (lockingCheckbox.checked) {
87     configureLabel.style.visibility = "visible";
88   } else {
89     configureLabel.style.visibility = "hidden";
90   }
91   
92   var quotasCheckbox = document.getElementById("quotas");
93   configureLabel = document.getElementById("quotas_config");
94   if (quotasCheckbox.checked){
95     configureLabel.style.visibility = "visible";
96   } else {
97     configureLabel.style.visibility = "hidden";
98   }
99
100   var weekViewCheckbox = document.getElementById("week_view");
101   configureLabel = document.getElementById("week_view_config");
102   if (weekViewCheckbox.checked){
103     configureLabel.style.visibility = "visible";
104   } else {
105     configureLabel.style.visibility = "hidden";
106   }
107 }
108 </script>
109
110 {$forms.profileForm.open}
111
112 {if $user->canManageTeam()}
113 {include file="datetime_format_preview.tpl"}
114 {/if}
115
116 <table cellspacing="4" cellpadding="7" border="0">
117     <tr>
118       <td>
119         <table cellspacing="1" cellpadding="2" border="0">
120           <tr>
121             <td align="right" nowrap>{$i18n.label.person_name} (*):</td>
122             <td>{$forms.profileForm.name.control}</td>
123           </tr>
124           <tr>
125             <td align="right" nowrap>{$i18n.label.login} (*):</td>
126             <td>{$forms.profileForm.login.control}</td>
127           </tr>
128 {if !$auth_external}
129           <tr>
130             <td align="right" nowrap>{$i18n.label.password} (*):</td>
131             <td>{$forms.profileForm.password1.control}</td>
132           </tr>
133           <tr>
134             <td align="right" nowrap>{$i18n.label.confirm_password} (*):</td>
135             <td>{$forms.profileForm.password2.control}</td>
136           </tr>
137 {/if}
138           <tr>
139             <td align="right" nowrap>{$i18n.label.email}:</td>
140             <td>{$forms.profileForm.email.control}</td>
141           </tr>
142           <tr>
143             <td></td>
144             <td>{$i18n.label.required_fields}</td>
145           </tr>
146
147 {if $user->isManager() || ($user->canManageTeam() && !defined(MANAGER_ONLY_TEAM_SETTINGS))}
148           <tr>
149             <td colspan="2">&nbsp;</td>
150           </tr>
151           <tr>
152             <td align="right" nowrap>{$i18n.label.team_name}:</td>
153             <td>{$forms.profileForm.team_name.control}</td>
154           </tr>
155           <tr>
156             <td align="right">{$i18n.label.currency}:</td>
157             <td>{$forms.profileForm.currency.control}</td>
158           </tr>
159   {if defined(DEBUG_ROLES)}
160           <tr>
161             <td align="right" nowrap>{$i18n.label.roles}:</td>
162             <td>{$forms.profileForm.roles.control} <span id="roles_config"><a href="roles.php">{$i18n.label.configure}</a></span> <span id="roles_what_is_it"><a href="https://www.anuko.com/lp/tt_19.htm" target="_blank">{$i18n.label.what_is_it}</a></span></td>
163           </tr>
164   {/if}
165           <tr>
166            <td align="right" nowrap>{$i18n.label.language}:</td>
167            <td>{$forms.profileForm.lang.control}</td>
168           </tr>
169           <tr>
170             <td align="right">{$i18n.label.decimal_mark}:</td>
171             <td>{$forms.profileForm.decimal_mark.control} <font id="decimal_preview" color="#777777">&nbsp;</font></td>
172           <tr>
173             <td align="right" nowrap>{$i18n.label.date_format}:</td>
174             <td>{$forms.profileForm.date_format.control} <font id="date_format_preview" color="#777777">&nbsp;</font></td>
175           </tr>
176           <tr>
177             <td align="right" nowrap>{$i18n.label.time_format}:</td>
178             <td>{$forms.profileForm.time_format.control} <font id="time_format_preview" color="#777777">&nbsp;</font></td>
179           </tr>
180           <tr>
181             <td align="right" nowrap>{$i18n.label.week_start}:</td>
182             <td>{$forms.profileForm.start_week.control}</td>
183           </tr>
184           <tr>
185             <td align="right" nowrap>{$i18n.form.profile.show_holidays}:</td>
186             <td>{$forms.profileForm.show_holidays.control} <a href="https://www.anuko.com/lp/tt_14.htm" target="_blank">{$i18n.label.what_is_it}</a></td>
187           </tr>
188           <tr>
189             <td align="right" nowrap>{$i18n.form.profile.tracking_mode}:</td>
190             <td>{$forms.profileForm.tracking_mode.control} {$forms.profileForm.task_required.control} <span id="task_required_label"><label for="task_required">{$i18n.label.required}</label></span></td>
191           </tr>
192           <tr>
193             <td align="right" nowrap>{$i18n.form.profile.record_type}:</td>
194             <td>{$forms.profileForm.record_type.control}</td>
195           </tr>
196           <tr>
197             <td align="right" nowrap>{$i18n.form.profile.punch_mode}:</td>
198             <td>{$forms.profileForm.punch_mode.control} <a href="https://www.anuko.com/lp/tt_18.htm" target="_blank">{$i18n.label.what_is_it}</a></td>
199           </tr>
200           <tr>
201             <td align="right" nowrap>{$i18n.form.profile.allow_overlap}:</td>
202             <td>{$forms.profileForm.allow_overlap.control} <a href="https://www.anuko.com/lp/tt_16.htm" target="_blank">{$i18n.label.what_is_it}</a></td>
203           </tr>
204           <tr>
205             <td align="right" nowrap>{$i18n.form.profile.future_entries}:</td>
206             <td>{$forms.profileForm.future_entries.control} <a href="https://www.anuko.com/lp/tt_17.htm" target="_blank">{$i18n.label.what_is_it}</a></td>
207           </tr>
208           <tr>
209             <td align="right" nowrap>{$i18n.form.profile.uncompleted_indicators}:</td>
210             <td>{$forms.profileForm.uncompleted_indicators.control} <a href="https://www.anuko.com/lp/tt_15.htm" target="_blank">{$i18n.label.what_is_it}</a></td>
211           </tr>
212 {if $user->isManager()}
213           <tr>
214             <td align="right" nowrap>{$i18n.label.bcc}:</td>
215             <td>{$forms.profileForm.bcc_email.control} <a href="https://www.anuko.com/lp/tt_10.htm" target="_blank">{$i18n.label.what_is_it}</a></td>
216           </tr>
217 {/if}
218           {* initialize preview text *}
219           <script>
220             MakeFormatPreview("date_format_preview", document.getElementById("date_format"));
221             MakeFormatPreview("time_format_preview", document.getElementById("time_format"));
222
223             function adjustDecimalPreview()
224             {
225               var mark = document.getElementById("decimal_mark").value;
226               var example = document.getElementById("decimal_preview");
227               example.innerHTML = "<i>3"+mark+"14</i>";
228             }
229             adjustDecimalPreview();
230           </script>
231
232           <tr>
233             <td>&nbsp;</td>
234             <td>&nbsp;</td>
235           </tr>
236
237           <tr>
238              <td colspan="2" class="sectionHeader">{$i18n.form.profile.plugins}</td>
239           </tr>
240           <tr><td>&nbsp;</td></tr>
241           <tr>
242             <td align="right" nowrap>{$forms.profileForm.charts.control}</td>
243             <td><label for="charts">{$i18n.title.charts}</label></td>
244           </tr>
245           <tr>
246             <td align="right" nowrap>{$forms.profileForm.clients.control}</td>
247             <td><label for="clients">{$i18n.title.clients}</label> {$forms.profileForm.client_required.control} <span id="client_required_label"><label for="client_required">{$i18n.label.required}</label></span></td>
248           </tr>
249           <tr>
250             <td align="right" nowrap>{$forms.profileForm.invoices.control}</td>
251             <td><label for="invoices">{$i18n.title.invoices}</label></td>
252           </tr>
253           <tr>
254             <td align="right" nowrap>{$forms.profileForm.paid_status.control}</td>
255             <td><label for="paid_status">{$i18n.label.paid_status}</label></td>
256           </tr>
257           <tr>
258             <td align="right" nowrap>{$forms.profileForm.custom_fields.control}</td>
259             <td><label for="custom_fields">{$i18n.label.custom_fields}</label> <span id="cf_config"><a href="cf_custom_fields.php">{$i18n.label.configure}</a></span></td>
260           </tr>
261           <tr>
262             <td align="right" nowrap>{$forms.profileForm.expenses.control}</td>
263             <td><label for="expenses">{$i18n.title.expenses}</label> {$forms.profileForm.tax_expenses.control} <span id="tax_label"><label for="tax_expenses">{$i18n.label.tax}</label></span> <span id="expenses_config"><a href="predefined_expenses.php">{$i18n.label.configure}</a></span></td>
264           </tr>
265           <tr>
266             <td align="right" nowrap>{$forms.profileForm.notifications.control}</td>
267             <td><label for="notifications">{$i18n.title.notifications}</label> <span id="notifications_config"><a href="notifications.php">{$i18n.label.configure}</a></span></td>
268           </tr>
269           <tr>
270             <td align="right" nowrap>{$forms.profileForm.locking.control}</td>
271             <td><label for="locking">{$i18n.title.locking}</label> <span id="locking_config"><a href="locking.php">{$i18n.label.configure}</a></span></td>
272           </tr>
273           <tr>
274             <td align="right" nowrap>{$forms.profileForm.quotas.control}</td>
275             <td><label for="quotas">{$i18n.label.monthly_quotas}</label> <span id="quotas_config"><a href="quotas.php">{$i18n.label.configure}</a></span></td>
276           </tr>
277           <tr>
278             <td align="right" nowrap>{$forms.profileForm.week_view.control}</td>
279             <td><label for="week_view">{$i18n.label.week_view}</label> <span id="week_view_config"><a href="week_view.php">{$i18n.label.configure}</a></span></td>
280           </tr>
281 {/if}
282
283           <tr>
284             <td colspan="2">&nbsp;</td>
285           </tr>
286           <tr>
287             <td colspan="2" height="50" align="center">{$forms.profileForm.btn_save.control}</td>
288           </tr>
289         </table>
290       </td>
291     </tr>
292 </table>
293 {$forms.profileForm.close}