1 /* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
3 #include "icinga/customvarobject.hpp"
4 #include "base/array.hpp"
5 #impl_include "icinga/usergroup.hpp"
12 class User : CustomVarObject
14 [config] String display_name {
16 if (m_DisplayName.IsEmpty())
22 [config, no_user_modify, required] array(name(UserGroup)) groups {
23 default {{{ return new Array(); }}}
25 [config, navigation] name(TimePeriod) period (PeriodRaw) {
27 return TimePeriod::GetByName(GetPeriodRaw());
31 [config] array(Value) types;
32 [no_user_view, no_user_modify] int type_filter_real (TypeFilter);
33 [config] array(Value) states;
34 [no_user_view, no_user_modify] int state_filter_real (StateFilter);
36 [config] String email;
37 [config] String pager;
39 [config] bool enable_notifications {
40 default {{{ return true; }}}
43 [state] Timestamp last_notification;