Example #1
0
function delete_mw_trackbacks()
{
    global $xoopsSecurity;
    $tbs = rmc_server_var($_POST, 'tbs', array());
    if (empty($tbs) || !is_array($tbs)) {
        redirectMsg('trackbacks.php', __('Select one trackback at least!', 'mw_categories'), 1);
        die;
    }
    if (!$xoopsSecurity->check()) {
        redirectMsg('trackbacks.php', __('Session token expired!', 'mywords'), 1);
        die;
    }
    // Event
    RMEvents::get()->run_event('mywords.before.delete.trackback', $tbs);
    foreach ($tbs as $id) {
        $trac = new MWTrackbackObject($id);
        if ($trac->isNew()) {
            continue;
        }
        $trac->delete();
    }
    redirectMsg('trackbacks.php', __('Trackbacks deleted successfully', 'mywords'), 0);
}
Example #2
0
// The id of the item being trackbacked
$url = $track->url;
// The URL from which we got the trackback
$title = $track->title;
// Subject/title send by trackback
$excerpt = $track->excerpt;
// Short text send by trackback
$blog_name = rmc_server_var($_POST, 'blog_name', '');
if ($url == '' || $title == '' || $excerpt == '') {
    echo $track->recieve(false, __('Sorry, your trackback seems to be invalid!', 'mywords'));
    die;
}
$params = array('blogurl' => MWFunctions::get_url(), 'name' => 'Trackback', 'email' => '', 'url' => $url, 'text' => $excerpt, 'permalink' => $post->permalink());
$ret = RMEvents::get()->run_event('rmcommon.check.post.spam', $params);
if (!$ret) {
    echo $track->recieve(false, __('Sorry, your trackback seems to be SPAM', 'mywords'));
} else {
    $to = new MWTrackbackObject();
    $to->setVar('date', time());
    $to->setVar('title', $title);
    $to->setVar('blog_name', $blog_name);
    $to->setVar('excerpt', $excerpt);
    $to->setVar('url', $url);
    $to->setVar('post', $post->id());
    if ($to->save()) {
        echo $track->recieve(true);
    } else {
        echo $track->recieve(false, __('We are unable to store your trackback. Please try again later!', 'mywords'));
    }
}
die;
Example #3
0
 /**
  * Trackbacks
  * @return array
  */
 public function trackbacks()
 {
     if (!empty($this->trackbacks)) {
         return $this->trackbacks;
     }
     $db = XoopsDatabaseFactory::getDatabaseConnection();
     $sql = "SELECT * FROM " . $db->prefix("mw_trackbacks") . " WHERE post='" . $this->id() . "'";
     $result = $db->query($sql);
     $rtn = array();
     while ($row = $db->fetchArray($result)) {
         $tb = new MWTrackbackObject();
         $tb->assignVars($row);
         $this->trackbacks[] = $tb;
     }
     return $this->trackbacks;
 }