nid = $ogID; } global $user; $node->uid = $user->uid; $node->title = $group->title; $node->type = 'og'; $node->status = 1; // set the og values $node->og_description = $group->description; $node->og_selective = OF_OPEN; $node->og_register = 0; $node->og_directory = 1; node_save($node); // also change the source field of the group CRM_Core_DAO::setFieldValue('CRM_Contact_DAO_Group', $groupID, 'source', CRM_Bridge_OG_Utils::ogSyncName($node->nid) ); } /** * @param int $groupID * @param $group */ public static function groupDelete($groupID, $group) { $ogID = CRM_Bridge_OG_Utils::ogID($groupID, FALSE); if (!$ogID) { return; } node_delete($ogID); } /** * @param int $groupID * @param $contactIDs * @param $op */ public static function groupContact($groupID, $contactIDs, $op) { $config = CRM_Core_Config::singleton(); $ogID = CRM_Bridge_OG_Utils::ogID($groupID, FALSE); if (!$ogID) { return; } foreach ($contactIDs as $contactID) { $drupalID = CRM_Core_BAO_UFMatch::getUFId($contactID); if ($drupalID) { if ($op == 'add') { $group_membership = $config->userSystem->og_membership_create($ogID, $drupalID); } else { $group_membership = $config->userSystem->og_membership_delete($ogID, $drupalID); } } } } }