X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=WEB-INF%2Flib%2FttGroup.class.php;h=9c12e95b6cb0d65c7ea7d321042301351086bd78;hb=f787edd7045299de3885c052d243b446f7324ea0;hp=e232a0e1af30cd180d63ddce36b16dc7b24c8995;hpb=52efa3cc9f8ad94f363f41cc2bca472b6492268d;p=timetracker.git diff --git a/WEB-INF/lib/ttGroup.class.php b/WEB-INF/lib/ttGroup.class.php index e232a0e1..9c12e95b 100644 --- a/WEB-INF/lib/ttGroup.class.php +++ b/WEB-INF/lib/ttGroup.class.php @@ -49,7 +49,6 @@ class ttGroup { var $punch_mode = 0; // Whether punch mode is enabled for user. var $allow_overlap = 0; // Whether to allow overlapping time entries. var $future_entries = 0; // Whether to allow creating future entries. - var $uncompleted_indicators = 0; // Uncompleted time entry indicators (show nowhere or on users page). var $bcc_email = null; // Bcc email. var $allow_ip = null; // Specification from where user is allowed access. var $password_complexity = null; // Password complexity example. @@ -59,11 +58,13 @@ class ttGroup { var $custom_logo = 0; // Whether to use a custom logo for group. var $lock_spec = null; // Cron specification for record locking. var $workday_minutes = 480; // Number of work minutes in a regular day. - var $minutes_in_unit = 15; // Number of minutes in unit for Work units plugin. - var $first_unit_threshold = 0;// Threshold for 1st unit for Work units plugin. - var $unit_totals_only = 0; // Totals only option for the Work units plugin. + + var $active_users = 0; // Count of active users in group. + // We need a non-zero count to display some menus. // Constructor. + // Note: org_id is needed because we construct an object in ttUser constructor, + // when global $user object does not yet exist. function __construct($id, $org_id) { $mdb2 = getConnection(); @@ -95,31 +96,33 @@ class ttGroup { $this->allow_ip = $val['allow_ip']; $this->password_complexity = $val['password_complexity']; $this->group_name = $val['group_name']; - $this->currency = $val['currency']; */ + $this->currency = $val['currency']; $this->plugins = $val['plugins']; - /* $this->lock_spec = $val['lock_spec']; $this->workday_minutes = $val['workday_minutes']; + /* $this->custom_logo = $val['custom_logo']; */ $this->config = $val['config']; - /* $config = new ttConfigHelper($this->config); // Set user config options. $this->show_holidays = $config->getDefinedValue('show_holidays'); $this->punch_mode = $config->getDefinedValue('punch_mode'); $this->allow_overlap = $config->getDefinedValue('allow_overlap'); $this->future_entries = $config->getDefinedValue('future_entries'); - $this->uncompleted_indicators = $config->getDefinedValue('uncompleted_indicators'); - if ($this->isPluginEnabled('wu')) { - $minutes_in_unit = $config->getIntValue('minutes_in_unit'); - if ($minutes_in_unit) $this->minutes_in_unit = $minutes_in_unit; - $first_unit_threshold = $config->getIntValue('1st_unit_threshold'); - if ($first_unit_threshold) $this->first_unit_threshold = $first_unit_threshold; - $this->unit_totals_only = $config->getDefinedValue('unit_totals_only'); - } - */ } + + // Determine active user count in a separate query. + // TODO: If performance becomes an issue, investigate combining 2 queries in one. + // At this time we only need to know if at least 1 active user exists. + $sql = "select count(*) as user_count from tt_users". + " where group_id = $id and org_id = $org_id and status = 1"; + $res = $mdb2->query($sql); + if (is_a($res, 'PEAR_Error')) { + return; + } + $val = $res->fetchRow(); + $this->active_users = $val['user_count']; } }