Example #1
0
$article_id = intval(@$_POST["article"]);
$category_id = intval(@$_POST["category"]);
$page = intval(@$_POST["page"]);
if (empty($article_id)) {
    redirect_header("javascript:history.go(-1);", 1, art_constant("MD_INVALID"));
    exit;
}
$article_handler =& xoops_getmodulehandler("article", $GLOBALS["artdirname"]);
$category_handler =& xoops_getmodulehandler("category", $GLOBALS["artdirname"]);
$article_obj =& $article_handler->get($article_id);
if (!$category_handler->getPermission($category_id, "rate")) {
    $message = art_constant("MD_NOACCESS");
} else {
    $uid = is_object($xoopsUser) ? $xoopsUser->getVar("uid") : 0;
    $criteria = new CriteriaCompo(new Criteria("art_id", $article_id));
    $ip = art_getIP();
    if ($uid > 0) {
        $criteria->add(new Criteria("uid", $uid));
    } else {
        $criteria->add(new Criteria("rate_ip", $ip));
        $criteria->add(new Criteria("rate_time", time() - 24 * 3600, ">"));
    }
    $rate_handler =& xoops_getmodulehandler("rate", $GLOBALS["artdirname"]);
    if ($count = $rate_handler->getCount($criteria)) {
        $message = art_constant("MD_ALREADYRATED");
    } else {
        $rate_obj =& $rate_handler->create();
        $rate_obj->setVar("art_id", $article_id);
        $rate_obj->setVar("uid", $uid);
        $rate_obj->setVar("rate_ip", $ip);
        $rate_obj->setVar("rate_rating", $rate);
Example #2
0
 if ($trackback_handler->getCount($criteria) > 0) {
     art_trackback_response(1, "We already have a ping from that URI for this article.");
 }
 $charset = empty($charset) ? "utf-8" : $charset;
 $title = XoopsLocal::convert_encoding($title, _CHARSET, $charset);
 $excerpt = XoopsLocal::convert_encoding($excerpt, _CHARSET, $charset);
 $blog_name = XoopsLocal::convert_encoding($blog_name, _CHARSET, $charset);
 $tb_status = intval($xoopsModuleConfig["trackback_option"]);
 $trackback_obj = $trackback_handler->create();
 $trackback_obj->setVar("art_id", $article_id);
 $trackback_obj->setVar("tb_time", time());
 $trackback_obj->setVar("tb_title", $title);
 $trackback_obj->setVar("tb_url", $url);
 $trackback_obj->setVar("tb_excerpt", $excerpt);
 $trackback_obj->setVar("tb_blog_name", $blog_name);
 $trackback_obj->setVar("tb_ip", art_getIP());
 $trackback_obj->setVar("tb_status", $tb_status);
 $result = $trackback_handler->insert($trackback_obj);
 $criteria = new CriteriaCompo(new Criteria("art_id", $article_id));
 $criteria->add(new Criteria("tb_status", 0, ">"));
 $count = $trackback_handler->getCount($criteria);
 $article_handler =& xoops_getmodulehandler("article", $GLOBALS["artdirname"]);
 $article_obj =& $article_handler->get($article_id);
 if ($count > $article_obj->getVar("art_trackbacks")) {
     $article_obj->setVar("art_trackbacks", $count);
     $article_handler->insert($article_obj);
 }
 art_trackback_response(0);
 if (!empty($xoopsModuleConfig["notification_enabled"]) && $result) {
     $notification_handler =& xoops_gethandler("notification");
     $tags = array();