public static function add($contentID, $comment = "", $replyUID = 0, $replyID = 0, $replyCommentID = 0) { if (!isset($_SESSION["user"]) || !$comment) { return false; } $comment = comments::ex_strip_tags($comment); $comment = trim(comments::bbcodes($comment)); $insip = system::getClientIP(); $userID = intval($_SESSION["user"]["userID"]); $replyUID = intval($replyUID); $replyCommentID = intval($replyCommentID); if (!$comment) { return false; } $replyCommentID = 0; $article = array(); if ($replyCommentID && $replyUID && $_SESSION["user"]["userID"] != $replyUID) { $rusers_res = self::$db->query("SELECT * FROM `users` WHERE `userID`=? LIMIT 1", $replyUID); $article_res = self::$db->query("SELECT `title`,`type` FROM `content` WHERE `contentID`=? LIMIT 1", $contentID); $article = $article_res->fetch(); $ruser = $rusers_res->fetch(); $ruser["article_title"] = $article["title"]; $ruser["article_returnPath"] = self::$routePath; $ruser["type"] = $article["type"]; $ruser["commentID"] = $commentID; self::$mail->assign("data", $ruser); self::$mail->sendMail(TPL_PATH . "/mail/mailNotifyReply.tpl", $ruser["email"]); } self::$db->query("INSERT `comments` SET `contentID`=?, `userID`=?, `dt`=NOW(), `email`='?', `author`='?', `body`='?', `guest`='N', `ip`=INET_ATON('?'), `type`='?', `reply_to`=?", $contentID, $_SESSION["user"]["userID"], $_SESSION["user"]["email"], $_SESSION["user"]["nick"], $comment, $insip, self::$controllerCall, $replyCommentID); $commentID = self::$db->insert_id(); self::$db->query("UPDATE `content` SET `comments_count`=`comments_count`+1 WHERE `contentID`=? AND `type`='?'", $contentID, self::$controllerCall); if (isset($_POST["quotedUID"]) && $_POST["quotedUID"]) { $qip = array_filter($_POST["quotedUID"], create_function("\$a", "return ( {$userID} == \$a ? false : true );")); $qip = array_diff($qip, array($replyUID)); if ($qip) { $qip = array_map("intval", $qip); $qusers_res = self::$db->query("SELECT * FROM `users` WHERE `userID` IN (" . implode(",", $qip) . ")"); if ($qusers_res->getNumRows()) { if ($article) { $article_res = self::$db->query("SELECT `title`,`type` FROM `content` WHERE `contentID`=? LIMIT 1", $contentID); $article = $article_res->fetch(); } $qusers = $qusers_res->fetchAll(); foreach ($qusers as $k => $v) { $v["article_title"] = $article["title"]; $v["article_returnPath"] = self::$routePath; $v["type"] = $article["type"]; $v["commentID"] = $commentID; self::$mail->assign("data", $v); self::$mail->sendMail(TPL_PATH . "/mail/mailNotifyQuote.tpl", $v["email"]); } } } } self::$smarty->clearCurrentCache(); system::redirect("/" . self::$routePath . "/#comment_{$commentID}"); return $commentID; }