CrossPost to Red Matrix
This plugin allows you to cross post to your Red Matrix channel.
EOF;
if(isset($_POST['submit'])) {
echo "Settings Saved!
";
}
}
function post_to_red_post_checkbox() {
add_meta_box(
'post_to_red_meta_box_id',
'Cross Post to Red Matrix',
'post_to_red_post_meta_content',
'post',
'normal',
'default'
);
}
function post_to_red_post_meta_content($post_id) {
wp_nonce_field(plugin_basename( __FILE__ ), 'post_to_red_nonce');
echo ' Cross post?';
}
function post_to_red_post_field_data($post_id) {
// check if this isn't an auto save
if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
return;
// security check
if((! array_key_exists('post_to_red_nonce', $_POST))
|| (!wp_verify_nonce( $_POST['post_to_red_nonce'], plugin_basename( __FILE__ ))))
return;
// now store data in custom fields based on checkboxes selected
if (isset($_POST['post_to_red'])) {
update_post_meta($post_id, 'post_to_red', 1);
} else {
update_post_meta($post_id, 'post_to_red', 0);
}
}
function post_to_red_display_admin_page() {
if ((isset($_REQUEST["post_to_red_acct_name"])) && (isset($_REQUEST["post_to_red_password"]))) {
$password = $_REQUEST["post_to_red_password"];
$red_url = $_REQUEST["post_to_red_url"];
update_option('post_to_red_acct_name', $_REQUEST["post_to_red_acct_name"]);
update_option('post_to_red_channel_name', $channelname);
update_option('post_to_red_seed_location', $red_url);
update_option('post_to_red_password', $password);
}
post_to_red_displayAdminContent();
}
function post_to_red_settings_link($links) {
$settings_link = 'Settings';
array_unshift($links, $settings_link);
return $links;
}
function post_to_red_admin() {
add_options_page("Crosspost to redmatrix", "Crosspost to redmatrix", "manage_options", "xpost-to-redmatrix", "post_to_red_display_admin_page");
}
register_deactivation_hook( __FILE__, 'post_to_red_deactivate' );
add_filter("plugin_action_links_$plugin", "post_to_red_settings_link");
add_action("admin_menu", "post_to_red_admin");
add_action('publish_post', 'post_to_red_post');
add_action('add_meta_boxes', 'post_to_red_post_checkbox');
add_action('save_post', 'post_to_red_post_field_data');
// from:
// http://www.docgate.com/tutorial/php/how-to-convert-html-to-bbcode-with-php-script.html
function xpost_to_html2bbcode($text) {
$htmltags = array(
'/\(.*?)\<\/b\>/is',
'/\(.*?)\<\/i\>/is',
'/\(.*?)\<\/u\>/is',
'/\(.*?)\<\/ul\>/is',
'/\(.*?)\<\/li\>/is',
'/\/is', // some smiley
'/\/is',
'/\/is', // some smiley
'/\(.*?)\<\/div\>/is',
'/\
(.*?)\<\/div\>/is',
'/\
(.*?)\<\/div\>/is',
'/\
(.*?)\<\/div\>/is',
'/\
(.*?)\<\/cite\>/is',
'/\(.*?)\<\/blockquote\>/is',
'/\(.*?)\<\/div\>/is',
'/\
(.*?)\<\/code\>/is',
'/\
/is',
'/\(.*?)\<\/strong\>/is',
'/\(.*?)\<\/em\>/is',
'/\(.*?)\<\/a\>/is',
'/\http:\/\/(.*?)\<\/a\>/is',
'/\(.*?)\<\/a\>/is'
);
$bbtags = array(
'[b]$1[/b]',
'[i]$1[/i]',
'[u]$1[/u]',
'[list]$1[/list]',
'[*]$1',
'$3',
'[img]http://$2[/img]' . "\n",
':$3',
'\[quote\]$1\[/quote\]',
'\[code\]$1\[/code\]',
'',
'',
'',
'\[quote\]$1\[/quote\]',
'$1',
'\[code\]$1\[/code\]',
"\n",
'[b]$1[/b]',
'[i]$1[/i]',
'[email=$1]$3[/email]',
'[url]$1[/url]',
'[url=$1]$3[/url]'
);
$text = str_replace ("\n", ' ', $text);
$ntext = preg_replace ($htmltags, $bbtags, $text);
$ntext = preg_replace ($htmltags, $bbtags, $ntext);
// for too large text and cannot handle by str_replace
if (!$ntext) {
$ntext = str_replace(array('
', '
'), "\n", $text);
$ntext = str_replace(array('', ''), array('[b]', '[/b]'), $ntext);
$ntext = str_replace(array('', ''), array('[i]', '[/i]'), $ntext);
}
$ntext = strip_tags($ntext);
$ntext = trim(html_entity_decode($ntext,ENT_QUOTES,'UTF-8'));
return $ntext;
}