- /**
- * Parse !group delivery and record targets into group_inbox.
- * @return array of Group objects
- */
- function saveGroups()
- {
- // Don't save groups for repeats
-
- if (!empty($this->repeat_of)) {
- return array();
- }
-
- $profile = $this->getProfile();
-
- $groups = self::groupsFromText($this->content, $profile);
-
- /* Add them to the database */
-
- foreach ($groups as $group) {
- /* XXX: remote groups. */
-
- if (empty($group)) {
- continue;
- }
-
-
- if ($profile->isMember($group)) {
-
- $result = $this->addToGroupInbox($group);
-
- if (!$result) {
- common_log_db_error($gi, 'INSERT', __FILE__);
- }
-
- $groups[] = clone($group);
- }
- }
-
- return $groups;
- }
-
- function addToGroupInbox($group)