我正在尝试将jomsocial事件与jomsocial组集成。 我想要实现的是在创建事件时自动创建一个组。
有人会对此类功能有一些提示吗? 我想到的方法是使用来自jomsocial API的函数onEventCreate($ event) 调用组创建机制。这是正确的方法吗?
答案 0 :(得分:1)
是的,这是我采取的方法。
您可以在groups.php控制器中找到方法save()。在那里,您已经拥有了实现此目的所需的所有代码。
粗略的代码:
$my =& CFactory::getUser();
$config =& CFactory::getConfig();
$group =& JTable::getInstance( 'Group' , 'CTable' );
$group->name = $name;
$group->description = $description;
$group->categoryid = $categoryId; // Category Id must not be empty and will cause failure on this group if its empty.
$group->website = $website;
$group->ownerid = $my->id;
$group->created = gmdate('Y-m-d H:i:s');
$group->approvals = 0;
$params = new CParameter( '' );
// Here you need some code from private _bindParams()
$group->params = $params->toString();
$group->published = ( $config->get('moderategroupcreation') ) ? 0 : 1;
$group->store();
// Other useful stuff:
// - store the creator / admin into the groups members table
// - add into activity stream