diff options
| -rw-r--r-- | app/class/agent.class.php | 7 | ||||
| -rw-r--r-- | app/class/group.class.php | 11 | ||||
| -rw-r--r-- | app/class/user.class.php | 9 | 
3 files changed, 27 insertions, 0 deletions
| diff --git a/app/class/agent.class.php b/app/class/agent.class.php index 4c75f0b..4651a10 100644 --- a/app/class/agent.class.php +++ b/app/class/agent.class.php @@ -90,6 +90,13 @@ abstract class agent extends obj      }      /* +     * Get all contained users.  For users, this is an array containing +     * only $this.  For groups, this is an array containing the owner +     * and all members. +     */ +    public abstract function getContainedUsers() : array; + +    /*       * Send an email message to this agent using stored configuration       * parameters.  If config is not established, delivery is not       * attempted.  Return status. diff --git a/app/class/group.class.php b/app/class/group.class.php index 1191d71..600fb6d 100644 --- a/app/class/group.class.php +++ b/app/class/group.class.php @@ -64,6 +64,17 @@ class group extends agent      }      /* +     * Get all contained users.  This is an array of all members and +     * the group owner. +     */ +    public function getContainedUsers() : array +    { +        $cus = $this->getMembers(); +        $cus[] = $this->getOwner(); +        return $cus; +    } + +    /*       * Send an email message to this group using stored configuration       * parameters.  If config is not established, delivery is not       * attempted.  Return status.  If any delivery attempts fail, the diff --git a/app/class/user.class.php b/app/class/user.class.php index 90aac44..231111d 100644 --- a/app/class/user.class.php +++ b/app/class/user.class.php @@ -294,6 +294,15 @@ class user extends agent      }      /* +     * Get all contained users.  This is just an array containing +     * the user object. +     */ +    public function getContainedUsers() : array +    { +        return array($this); +    } + +    /*       * Send an email message to this user using stored configuration       * parameters.  If config is not established, delivery is not       * attempted.  Return status. | 
