/**
 *
 * @brief notify that item waits for certification, was manually certified, 
 * was manually rejected or was automatically certified. 
 *
 * @param[in] $item_id  item id
 * @param[in] $index_id index id 
 * @param[in] $subject  subject of notification
 * @param[in] $template_name  template file name of notification
 */
function xoonips_notification_item_certify($item_id, $index_id, $subject, $template_name)
{
    $index_handler =& xoonips_getormhandler('xoonips', 'index');
    $index = $index_handler->get($index_id);
    if ($index->get('open_level') == OL_PUBLIC) {
        $uids = xoonips_notification_get_moderator_uids();
    } else {
        if ($index->get('open_level') == OL_GROUP_ONLY) {
            // get uids of group admin
            $xg_handler =& xoonips_gethandler('xoonips', 'group');
            $uids = $xg_handler->getUserIds($index->get('gid'), true);
        } else {
            // private index
            return;
        }
    }
    $tags = xoonips_notification_get_item_tags($item_id);
    $tags['INDEX_PATH'] = xoonips_notification_get_index_path_string($index_id);
    $tags['ITEM_CERTIFY_URL'] = XOOPS_URL . '/modules/xoonips/certify.php';
    $nhandler =& xoonips_gethandler('xoonips', 'notification');
    $nhandler->triggerEvent2('administrator', 0, 'item_certify', $subject, $nhandler->getTemplateDirByMid(), $template_name, $tags, $uids);
}
 function get_notify_uids($item_id)
 {
     global $xoopsDB;
     $result = array();
     $index_item_link_handler =& xoonips_getormhandler('xoonips', 'index_item_link');
     $links = $index_item_link_handler->getByItemid($item_id, array(OL_PUBLIC));
     if (is_array($links) && count($links) > 0) {
         $result = xoonips_notification_get_moderator_uids();
     }
     $links = $index_item_link_handler->getByItemid($item_id, array(OL_GROUP_ONLY));
     if (!is_array($links) && count($links) == 0) {
         return $result;
     }
     foreach ($links as $link) {
         $index_handler =& xoonips_getormhandler('xoonips', 'index');
         $join = new XooNIpsJoinCriteria('xoonips_groups_users_link', 'gid', 'gid', 'INNER', 'tgul');
         $criteria = new CriteriaCompo(new Criteria('index_id', $link->get('index_id')));
         $criteria->add(new Criteria('is_admin', 1));
         $rows =& $index_handler->getObjects($criteria, false, 'tgul.uid', true, $join);
         foreach ($rows as $row) {
             $result[] = $row->get('uid');
         }
     }
     return $result;
 }