public static function getPostPersonGroups($post_id) { $groups = PersonGroup::join(PersonGroupPostModel::getTableName(), PersonGroupPostModel::getField("group_id"), '=', PersonGroup::getField("id"))->join(PersonGroupLang::getTableName(), PersonGroupLang::getField("group_id"), '=', PersonGroup::getField('id'))->where(PersonGroupLang::getField("lang_id"), \WebAPL\Language::getId())->where(PersonGroupPostModel::getField("post_id"), $post_id)->select(PersonGroupLang::getField('name'), PersonGroupLang::getField('description'), PersonGroup::getField("id"))->get(); if ($groups) { foreach ($groups as &$group) { $persons = PersonModel::personPrepare()->where(PersonRelModel::getField("group_id"), $group->id)->get(); foreach ($persons as &$person) { if ($person->feed_id) { $person['posts'] = \Post::postsFeed($person->feed_id); } else { $person['posts'] = array(); } } $group['persons'] = $persons; } } return $groups; }