return ($this->behalfGroup ? $this->behalfGroup->decimal_mark : $this->decimal_mark);
}
+ // getDateFormat returns date format for active group.
+ function getDateFormat() {
+ return ($this->behalfGroup ? $this->behalfGroup->date_format : $this->date_format);
+ }
+
+ // getTimeFormat returns time format for active group.
+ function getTimeFormat() {
+ return ($this->behalfGroup ? $this->behalfGroup->time_format : $this->time_format);
+ }
+
// getTrackingMode returns tracking mode for active group.
function getTrackingMode() {
return ($this->behalfGroup ? $this->behalfGroup->tracking_mode : $this->tracking_mode);
return ($this->behalfGroup ? $this->behalfGroup->record_type : $this->record_type);
}
+ // getCurrency returns currency string for active group.
+ function getCurrency() {
+ return ($this->behalfGroup ? $this->behalfGroup->currency : $this->currency);
+ }
+
// getPlugins returns plugins string for active group.
function getPlugins() {
return ($this->behalfGroup ? $this->behalfGroup->plugins : $this->plugins);
}
+ // getLockSpec returns lock specification for active group.
+ function getLockSpec() {
+ return ($this->behalfGroup ? $this->behalfGroup->lock_spec : $this->lock_spec);
+ }
+
// getConfig returns config string for active group.
function getConfig() {
return ($this->behalfGroup ? $this->behalfGroup->config : $this->config);
if (!$this->isPluginEnabled('lk'))
return false; // Locking feature is disabled.
- if (!$this->lock_spec)
+ if (!$this->getLockSpec())
return false; // There is no lock specification.
if (!$this->behalf_id && $this->can('override_own_date_lock'))
require_once(LIBRARY_DIR.'/tdcron/class.tdcron.entry.php');
// Calculate the last occurrence of a lock.
- $last = tdCron::getLastOccurrence($this->lock_spec, time());
+ $last = tdCron::getLastOccurrence($this->getLockSpec(), time());
$lockdate = new DateAndTime(DB_DATEFORMAT, strftime('%Y-%m-%d', $last));
if ($date->before($lockdate))
return true;
// updateGroup updates group information with new data.
function updateGroup($fields) {
- if (!($this->can('manage_basic_settings') ||
- $this->can('manage_advanced_settings') ||
- $this->can('manage_features'))) return false;
- // TODO: update the above for subgroup updates.
+ $mdb2 = getConnection();
$group_id = $fields['group_id'];
if ($group_id && !$this->isGroupValid($group_id)) return false;
-
- $mdb2 = getConnection();
if (!$group_id) $group_id = $this->getGroup();
if (isset($fields['name'])) $name_part = ', name = '.$mdb2->quote($fields['name']);
return;
}
- // setOnBehalfUser sets on behalf user both the object and the session.
+ // setOnBehalfUser sets on behalf user both the object and the session.
function setOnBehalfUser($user_id) {
// Unset things first.
$this->behalf_name = $onBehalfUserName;
return;
}
+
+ // The exists() function determines if an active user exists in context of a page.
+ // If we are working as self, true.
+ // If we are working in a subgroup with active users, true.
+ // If we are working in a subgroup without active users, false.
+ function exists() {
+ if (!$this->behalfGroup)
+ return true; // Working as self.
+ else if ($this->behalfGroup->active_users)
+ return true; // Subgroup has users.
+
+ return false;
+ }
}