public static function publish($value)
 {
     JCommentsSecurity::checkToken();
     $pks = JCommentsInput::getVar('cid', array());
     if (is_array($pks)) {
         $db = JCommentsFactory::getDBO();
         $language = JCommentsFactory::getLanguage();
         $config = JCommentsFactory::getConfig();
         $config->set('enable_mambots', 1);
         require_once JCOMMENTS_BASE . '/jcomments.php';
         $lastLanguage = '';
         foreach ($pks as $pk) {
             $comment = new JCommentsTableComment($db);
             if ($comment->load($pk)) {
                 if ($comment->published != $value) {
                     $comment->published = $value;
                     $result = JCommentsEvent::trigger('onJCommentsCommentBeforePublish', array(&$comment));
                     if (!in_array(false, $result, true)) {
                         if ($comment->store()) {
                             JCommentsEvent::trigger('onJCommentsCommentAfterPublish', array(&$comment));
                             if ($comment->published) {
                                 if ($lastLanguage != $comment->lang) {
                                     $lastLanguage = $comment->lang;
                                     $language->load('com_jcomments', JOOMLATUNE_JPATH_SITE, $comment->lang);
                                 }
                                 // TODO: add separate message for just published comments
                                 JComments::sendToSubscribers($comment, true);
                             }
                         }
                     }
                 }
             }
         }
     }
     JCommentsRedirect(JCOMMENTS_INDEX . '?option=com_jcomments&task=comments');
 }