| 
<?php
/*
 Bluetrait 2.0 Trackback Support
 Michael Dale 2008
 */
 include('bt-common.php');
 
 if (bt_get_config('trackbacks')) {
 
 $bt_content_identifier = bt_get_content_identifier();
 $bt_content_identifier['limit'] = 1;
 $bt_posts = new bt_posts();
 $bt_post_array = $bt_posts->get_posts($bt_content_identifier);
 
 /*
 echo '<pre>';
 print_r($bt_content_identifier);
 echo '</pre>';
 exit;
 */
 if (count($bt_post_array) == 1 && !$bt_content_identifier['empty']) {
 //print_r($bt_post_array);
 $bt_post = $bt_post_array[0];
 
 //posted stuff from other blog site
 $bt_trackback_url = $_POST['url'];
 $bt_trackback_title = $_POST['title'];
 $bt_trackback_excerpt = $_POST['excerpt'];
 $bt_trackback_blog_name = $_POST['blog_name'];
 
 $bt_comments = new bt_comments();
 $bt_spam = new bt_spam();
 
 $bt_comment_post['comment_body'] = $bt_trackback_excerpt;
 $bt_comment_post['comment_display_name'] = $bt_trackback_blog_name;
 $bt_comment_post['comment_website'] = $bt_trackback_url;
 $bt_comment_post['comment_title'] = $bt_trackback_title;
 
 $bt_comment_post['user_id'] = 0;
 $bt_comment_post['comment_email']  = '';
 $bt_comment_post['comment_allow_contact_form'] = 0;
 $bt_comment_post['comment_date'] = bt_datetime();
 $bt_comment_post['comment_date_utc'] = bt_datetime_utc();
 $bt_comment_post['post_id'] = (int) $bt_post['post_id'];
 $bt_comment_post['comment_ip_address'] = bt_ip_address();
 $bt_comment_post['comment_approved'] = 1;
 $bt_comment_post['comment_type'] = 'trackback';
 
 //spam filtering happens here
 $bt_spam->set_comment($bt_comment_post);
 $bt_processed_comment = $bt_spam->get_comment();
 //print_r($bt_processed_comment);
 //exit;
 if ($bt_processed_comment['comment_akismet_spam']) {
 bt_set_header('Content-Type: text/xml; charset=UTF-8');
 bt_send_headers();
 echo '<?xml version="1.0" encoding="iso-8859-1"?'.">\n";
 echo "<response>\n";
 echo "<error>1</error>\n";
 echo "<message>Trackback not accepted as it has been detected as spam.</message>\n";
 echo "</response>";
 }
 else {
 //add trackback here
 $bt_comments->add_comment($bt_processed_comment);
 bt_set_header('Content-Type: text/xml; charset=UTF-8');
 bt_send_headers();
 echo '<?xml version="1.0" encoding="iso-8859-1"?'.">\n";
 echo "<response>\n";
 echo "<error>0</error>\n";
 echo "<message>Trackback accepted.</message>\n";
 echo "</response>";
 }
 }
 else {
 bt_set_header('Content-Type: text/xml; charset=UTF-8');
 bt_send_headers();
 echo '<?xml version="1.0" encoding="iso-8859-1"?'.">\n";
 echo "<response>\n";
 echo "<error>1</error>\n";
 echo "<message>Post not found.</message>\n";
 echo "</response>";
 }
 
 }
 else {
 bt_set_header('Content-Type: text/xml; charset=UTF-8');
 bt_send_headers();
 echo '<?xml version="1.0" encoding="iso-8859-1"?'.">\n";
 echo "<response>\n";
 echo "<error>1</error>\n";
 echo "<message>Trackbacks Globally Disabled</message>\n";
 echo "</response>";
 }
 
 
 ?>
 |