本文整理汇总了PHP中nsTrnc函数的典型用法代码示例。如果您正苦于以下问题:PHP nsTrnc函数的具体用法?PHP nsTrnc怎么用?PHP nsTrnc使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了nsTrnc函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: doPostToNT
function doPostToNT($options, $message)
{
$badOut = array('pgID' => '', 'isPosted' => 0, 'pDate' => date('Y-m-d H:i:s'), 'Error' => '');
//## Check settings
if (!is_array($options)) {
$badOut['Error'] = 'No Options';
return $badOut;
}
if (!isset($options['diUName']) || trim($options['diPass']) == '') {
$badOut['Error'] = 'Not Configured';
return $badOut;
}
$email = $options['diUName'];
$pass = substr($options['diPass'], 0, 5) == 'n5g9a' ? nsx_doDecode(substr($options['diPass'], 5)) : $options['diPass3'];
//## Format
if (!empty($message['pText'])) {
$msg = $message['pText'];
} else {
$msg = nxs_doFormatMsg($options['diMsgFormat'], $message);
}
if (!empty($message['pTitle'])) {
$msgT = $message['pTitle'];
} else {
$msgT = nxs_doFormatMsg($options['diMsgTFormat'], $message);
}
$flds = array();
$flds['key'] = $options['diAPIKey'];
$flds['url'] = $message['url'];
$flds['title'] = nsTrnc($msgT, 250);
$flds['desc'] = nsTrnc($msg, 250);
$flds['tags'] = $message['tags'];
$flds['shared'] = 'yes';
// prr($flds); die();
$hdrsArr = $this->nxs_getDIHeaders('https://secure.diigo.com/api/v2/bookmarks', $email, $pass, true);
$cnt = wp_remote_post('https://secure.diigo.com/api/v2/bookmarks', array('method' => 'POST', 'timeout' => 45, 'redirection' => 0, 'headers' => $hdrsArr, 'body' => $flds));
//## Return
if (is_array($cnt) && stripos($cnt['body'], '"code":1') !== false) {
return array('postID' => 'DI', 'isPosted' => 1, 'postURL' => 'DI', 'pDate' => date('Y-m-d H:i:s'));
} else {
$badOut['Error'] .= print_r($cnt, true);
return $badOut;
}
}
示例2: nxs_doPublishToTW
function nxs_doPublishToTW($postID, $options)
{
$ntCd = 'TW';
$ntCdL = 'tw';
$ntNm = 'Twitter';
$imgData = '';
$imgURL = '';
global $plgn_NS_SNAutoPoster, $nxs_urlLen;
$nxs_urlLen = 0;
if (!is_array($options)) {
$options = maybe_unserialize(get_post_meta($postID, $options, true));
}
//$backtrace = debug_backtrace(); nxs_addToLogN('W', 'Error', $logNT, 'I am here - '.$ntCd."|".print_r($backtrace, true), '');
//if (isset($options['timeToRun'])) wp_unschedule_event( $options['timeToRun'], 'nxs_doPublishToTW', array($postID, $options));
$gOptions = $plgn_NS_SNAutoPoster->nxs_options;
if (!empty($gOptions['nxsHTSpace'])) {
$htS = $gOptions['nxsHTSpace'];
} else {
$htS = '';
}
$addParams = nxs_makeURLParams(array('NTNAME' => $ntNm, 'NTCODE' => $ntCd, 'POSTID' => $postID, 'ACCNAME' => $options['nName']));
$ii = $options['ii'];
if (!isset($options['pType'])) {
$options['pType'] = 'im';
}
if ($options['pType'] == 'sh') {
sleep(rand(1, 10));
}
$logNT = '<span style="color:#00FFFF">Twitter</span> - ' . $options['nName'];
$snap_ap = get_post_meta($postID, 'snap' . $ntCd, true);
$snap_ap = maybe_unserialize($snap_ap);
if ($options['pType'] != 'aj' && is_array($snap_ap) && (nxs_chArrVar($snap_ap[$ii], 'isPosted', '1') || nxs_chArrVar($snap_ap[$ii], 'isPrePosted', '1'))) {
$snap_isAutoPosted = get_post_meta($postID, 'snap_isAutoPosted', true);
if ($snap_isAutoPosted != '2') {
nxs_addToLogN('W', 'Notice', $logNT, '-=Duplicate=- Post ID:' . $postID, 'Already posted. No reason for posting duplicate' . ' |' . $options['pType']);
return;
}
}
$blogTitle = htmlspecialchars_decode(get_bloginfo('name'), ENT_QUOTES);
if ($blogTitle == '') {
$blogTitle = home_url();
}
$uln = 0;
$extInfo = ' | PostID: ' . $postID;
if ($options['attchImg'] == '1') {
if (!empty($options['imgToUse'])) {
$imgURL = $options['imgToUse'];
} else {
$imgURL = nxs_getPostImage($postID);
}
if (preg_match("/noImg.\\.png/i", $imgURL)) {
$imgURL = '';
}
if (trim($imgURL) == '') {
$options['attchImg'] = 0;
} else {
$imgURL = str_replace(' ', '%20', $imgURL);
$hdrsArr['User-Agent'] = 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0';
$advSet = array('headers' => $hdrsArr, 'httpversion' => '1.1', 'timeout' => 45, 'sslverify' => false);
$imgData = wp_remote_get($imgURL, $advSet);
if (is_wp_error($imgData) || empty($imgData['body']) || !empty($imgData['headers']['content-length']) && (int) $imgData['headers']['content-length'] < 200) {
$options['attchImg'] = 0;
nxs_addToLogN('E', 'Error', $logNT, 'Could not get image (' . $imgURL . '), will post without it - Error:' . print_r($imgData, true), $extInfo);
} else {
$imgData = $imgData['body'];
}
}
}
if ($options['attchImg'] == '1' && $imgData != '') {
$twLim = 117;
} else {
$twLim = 140;
}
if ($postID == '0') {
echo "Testing ... <br/><br/>";
$msg = 'Test Post from ' . nsTrnc($blogTitle, $twLim - 24) . " - " . rand(1, 155);
$uln = nxs_strLen($msg);
} else {
$post = get_post($postID);
if (!$post) {
return;
}
$twMsgFormat = $options['twMsgFormat'];
nxs_metaMarkAsPosted($postID, $ntCd, $options['ii'], array('isPrePosted' => '1'));
$extInfo = ' | PostID: ' . $postID . " - " . $post->post_title . ' |' . $options['pType'];
if (stripos($twMsgFormat, '%URL%') !== false || stripos($twMsgFormat, '%SURL%') !== false) {
$twLim = $twLim - 22;
}
if (stripos($twMsgFormat, '%AUTHORNAME%') !== false) {
$aun = $post->post_author;
$aun = get_the_author_meta('display_name', $aun);
$twLim = $twLim - nxs_strLen($aun);
}
$noRepl = str_ireplace("%TITLE%", "", $twMsgFormat);
$noRepl = str_ireplace("%SITENAME%", "", $noRepl);
$noRepl = str_ireplace("%URL%", "", $noRepl);
$noRepl = str_ireplace("%RAWEXCERPT%", "", $noRepl);
$noRepl = str_ireplace("%SURL%", "", $noRepl);
$noRepl = str_ireplace("%TEXT%", "", $noRepl);
$noRepl = str_ireplace("%FULLTEXT%", "", $noRepl);
//.........这里部分代码省略.........
示例3: nxs_doPublishToPK
function nxs_doPublishToPK($postID, $options)
{
$ntCd = 'PK';
$ntCdL = 'pk';
$ntNm = 'Plurk';
//if (isset($options['timeToRun'])) wp_unschedule_event( $options['timeToRun'], 'nxs_doPublishToPK', array($postID, $options));
$blogTitle = htmlspecialchars_decode(get_bloginfo('name'), ENT_QUOTES);
if ($blogTitle == '') {
$blogTitle = home_url();
}
$ii = $options['ii'];
if (!isset($options['pType'])) {
$options['pType'] = 'im';
}
if ($options['pType'] == 'sh') {
sleep(rand(1, 10));
}
$logNT = '<span style="color:#014A76">Plurk</span> - ' . $options['nName'];
$snap_ap = get_post_meta($postID, 'snap' . $ntCd, true);
$snap_ap = maybe_unserialize($snap_ap);
if ($options['pType'] != 'aj' && is_array($snap_ap) && (nxs_chArrVar($snap_ap[$ii], 'isPosted', '1') || nxs_chArrVar($snap_ap[$ii], 'isPrePosted', '1'))) {
$snap_isAutoPosted = get_post_meta($postID, 'snap_isAutoPosted', true);
if ($snap_isAutoPosted != '2') {
sleep(5);
nxs_addToLogN('W', 'Notice', $logNT, '-=Duplicate=- Post ID:' . $postID, 'Already posted. No reason for posting duplicate' . ' |' . $uqID);
return;
}
}
//## Format
if ($postID == '0') {
echo "Testing ... <br/><br/>";
$msg = 'Test Post from ' . $blogTitle;
$msgT = 'Test Post from ' . $blogTitle;
} else {
$post = get_post($postID);
if (!$post) {
return;
}
$twMsgFormat = $options['pkMsgFormat'];
nxs_metaMarkAsPosted($postID, $ntCd, $options['ii'], array('isPrePosted' => '1'));
$twLim = 180;
$extInfo = ' | PostID: ' . $postID . " - " . $post->post_title;
if (stripos($twMsgFormat, '%URL%') !== false || stripos($twMsgFormat, '%SURL%') !== false) {
$twLim = $twLim - 5;
}
if (stripos($twMsgFormat, '%AUTHORNAME%') !== false) {
$aun = $post->post_author;
$aun = get_the_author_meta('display_name', $aun);
$twLim = $twLim - strlen($aun);
}
$noRepl = str_ireplace("%TITLE%", "", $twMsgFormat);
$noRepl = str_ireplace("%SITENAME%", "", $noRepl);
$noRepl = str_ireplace("%URL%", "", $noRepl);
$noRepl = str_ireplace("%RAWEXCERPT%", "", $noRepl);
$noRepl = str_ireplace("%SURL%", "", $noRepl);
$noRepl = str_ireplace("%TEXT%", "", $noRepl);
$noRepl = str_ireplace("%FULLTEXT%", "", $noRepl);
$noRepl = str_ireplace("%EXCERPT%", "", $noRepl);
$noRepl = str_ireplace("%ANNOUNCE%", "", $noRepl);
$noRepl = str_ireplace("%AUTHORNAME%", "", $noRepl);
$twLim = $twLim - strlen($noRepl);
$pTitle = $title = $post->post_title;
if ($post->post_excerpt != "") {
$pText = apply_filters('the_content', $post->post_excerpt);
} else {
$pText = apply_filters('the_content', $post->post_content);
}
$pFullText = apply_filters('the_content', $post->post_content);
$pRawText = $post->post_content;
if (stripos($twMsgFormat, '%TITLE%') !== false) {
$pTitle = nsTrnc($pTitle, $twLim);
$twMsgFormat = str_ireplace("%TITLE%", $pTitle, $twMsgFormat);
$twLim = $twLim - strlen($pTitle);
}
if (stripos($twMsgFormat, '%SITENAME%') !== false) {
$siteTitle = htmlspecialchars_decode(get_bloginfo('name'), ENT_QUOTES);
$siteTitle = nsTrnc($siteTitle, $twLim);
$twMsgFormat = str_ireplace("%SITENAME%", $siteTitle, $twMsgFormat);
$twLim = $twLim - strlen($siteTitle);
}
if (stripos($twMsgFormat, '%EXCERPT%') !== false) {
$pText = nsTrnc(strip_tags(strip_shortcodes($pText)), 300, " ", "...");
$pText = nsTrnc($pText, $twLim);
$twMsgFormat = str_ireplace("%EXCERPT%", $pText, $twMsgFormat);
$twLim = $twLim - strlen($pText);
}
if (stripos($twMsgFormat, '%FULLTEXT%') !== false) {
$pFullText = nsTrnc(strip_tags($pFullText), $twLim);
$twMsgFormat = str_ireplace("%FULLTEXT%", $pFullText, $twMsgFormat);
$twLim = $twLim - strlen($pFullText);
}
if (stripos($twMsgFormat, '%RAWTEXT%') !== false) {
$pRawText = nsTrnc(strip_tags($pRawText), $twLim);
$twMsgFormat = str_ireplace("%FULLTEXT%", $pRawText, $twMsgFormat);
$twLim = $twLim - strlen($pRawText);
}
$msg = nsFormatMessage($twMsgFormat, $postID);
}
//## Post
require_once 'apis/plurkOAuth.php';
//.........这里部分代码省略.........
示例4: nxs_doPublishToLI
function nxs_doPublishToLI($postID, $options)
{
global $nxs_gCookiesArr;
$ntCd = 'LI';
$ntCdL = 'li';
$ntNm = 'LinkedIn';
$urlDescr = '';
$myurl = '';
if (!is_array($options)) {
$options = maybe_unserialize(get_post_meta($postID, $options, true));
}
//if (isset($options['timeToRun'])) wp_unschedule_event( $options['timeToRun'], 'nxs_doPublishToLI', array($postID, $options));
$addParams = nxs_makeURLParams(array('NTNAME' => $ntNm, 'NTCODE' => $ntCd, 'POSTID' => $postID, 'ACCNAME' => $options['nName']));
if (empty($options['imgToUse'])) {
$options['imgToUse'] = '';
}
if (empty($options['imgSize'])) {
$options['imgSize'] = '';
}
$ii = $options['ii'];
if (!isset($options['pType'])) {
$options['pType'] = 'im';
}
if ($options['pType'] == 'sh') {
sleep(rand(1, 10));
}
$logNT = '<span style="color:#000058">LinkedIn</span> - ' . $options['nName'];
$snap_ap = get_post_meta($postID, 'snap' . $ntCd, true);
$snap_ap = maybe_unserialize($snap_ap);
if ($options['pType'] != 'aj' && is_array($snap_ap) && (nxs_chArrVar($snap_ap[$ii], 'isPosted', '1') || nxs_chArrVar($snap_ap[$ii], 'isPrePosted', '1'))) {
$snap_isAutoPosted = get_post_meta($postID, 'snap_isAutoPosted', true);
if ($snap_isAutoPosted != '2') {
sleep(5);
nxs_addToLogN('W', 'Notice', $logNT, '-=Duplicate=- Post ID:' . $postID, 'Already posted. No reason for posting duplicate' . ' |' . $uqID);
return;
}
}
$blogTitle = htmlspecialchars_decode(get_bloginfo('name'), ENT_QUOTES);
if ($blogTitle == '') {
$blogTitle = home_url();
}
$imgURL = '';
// prr($options);
if ($postID == '0') {
echo "Testing ... <br/><br/>";
$options['liMsgFormatT'] = 'Test Post from ' . $blogTitle;
$urlToGo = home_url();
$options['liMsgFormat'] = 'Test Post from ' . $blogTitle . " " . $urlToGo;
$title = $blogTitle;
} else {
$post = get_post($postID);
if (!$post) {
return;
}
$options['liMsgFormat'] = nsFormatMessage($options['liMsgFormat'], $postID, $addParams);
$options['liMsgFormatT'] = nsTrnc(nsFormatMessage($options['liMsgFormatT'], $postID, $addParams), 200);
//## MyURL - URLToGo code
$options = nxs_getURL($options, $postID, $addParams);
$urlToGo = $options['urlToUse'];
$title = nsTrnc($post->post_title, 200);
nxs_metaMarkAsPosted($postID, $ntCd, $options['ii'], array('isPrePosted' => '1'));
if (empty($options['postType'])) {
if ((int) $options['liAttch'] == 1 || $isNew) {
$options['postType'] = 'A';
}
}
if ($options['postType'] == 'A' || $options['postType'] == 'I') {
if (trim($options['liMsgAFrmt']) != '') {
$urlDescr = nsFormatMessage($options['liMsgAFrmt'], $postID, $addParams);
} else {
$urlDescr = trim(apply_filters('the_content', $post->post_excerpt));
if ($urlDescr == '') {
$urlDescr = apply_filters('the_content', $post->post_content);
}
}
if (trim($options['imgToUse']) != '') {
$imgURL = $options['imgToUse'];
} else {
$imgURL = nxs_getPostImage($postID, 'full');
}
if (preg_match("/noImg.\\.png/i", $imgURL)) {
$imgURL = '';
}
$urlDescr = strip_tags($urlDescr);
$urlDescr = nxs_decodeEntitiesFull($urlDescr);
$urlDescr = nxs_html_to_utf8($urlDescr);
$urlDescr = nsTrnc($urlDescr, 300);
}
}
$extInfo = ' | PostID: ' . $postID . " - " . (isset($post) && is_object($post) ? $post->post_title : '');
//$images = array(nxs_getPostImage($postID, 'thumb'), nxs_getPostImage($postID, 'medium'), nxs_getPostImage($postID, 'full'), nxs_getPostImage($postID, 'original'));
$message = array('url' => $urlToGo, 'surl' => $urlToGo, 'urlDescr' => $urlDescr, 'urlTitle' => $title, 'title' => $title, 'imageURL' => $imgURL, 'videoCode' => '', 'videoURL' => '', 'siteName' => $blogTitle, 'cats' => '', 'authorName' => '');
//## Actual Post
$ntToPost = new nxs_class_SNAP_LI();
$ret = $ntToPost->doPostToNT($options, $message);
//## Process Results
if (!is_array($ret) || $ret['isPosted'] != '1') {
//## Error
if ($postID == '0') {
prr($ret);
//.........这里部分代码省略.........
示例5: doPostToNT
function doPostToNT($options, $message)
{
global $nxs_urlLen;
$badOut = array('pgID' => '', 'isPosted' => 0, 'pDate' => date('Y-m-d H:i:s'), 'Error' => '');
//## Check settings
if (!is_array($options)) {
$badOut['Error'] = 'No Options';
return $badOut;
}
if (!isset($options['rdUName']) || trim($options['rdUName']) == '' || !isset($options['rdPass']) || trim($options['rdPass']) == '') {
$badOut['Error'] = 'No username/password Found';
return $badOut;
}
//## Format Post
if (!empty($message['pTitle'])) {
$title = $message['pTitle'];
} else {
$title = nxs_doFormatMsg($options['rdTitleFormat'], $message);
}
$title = nsTrnc($title, 300);
if (!empty($message['pText'])) {
$text = $message['pText'];
} else {
$text = nxs_doFormatMsg($options['rdTextFormat'], $message);
}
//## Make Post
$pass = substr($options['rdPass'], 0, 5) == 'n5g9a' ? nsx_doDecode(substr($options['rdPass'], 5)) : $options['rdPass'];
$hdrsArr = '';
$loginInfo = doConnectToRD($options['rdUName'], $pass);
if (!is_array($loginInfo)) {
$badOut['Error'] = print_r($loginInfo, true) . " - ERROR";
return $badOut;
}
$mh = $loginInfo['mh'];
$ck = $loginInfo['ck'];
$post = array('uh' => $mh, 'sr' => $options['rdSubReddit'], 'title' => $title, 'save' => true);
if ($options['postType'] == 'A') {
$post['url'] = $message['url'];
$post['kind'] = 'link';
$retNum = 16;
} else {
$post['text'] = $text;
$post['kind'] = 'self';
$retNum = 10;
}
$url = "http://www.reddit.com/api/submit";
$postParams = array('method' => 'POST', 'timeout' => 45, 'redirection' => 0, 'extension' => 'json', 'headers' => $hdrsArr, 'body' => $post, 'cookies' => $ck);
$response = wp_remote_post($url, $postParams);
// prr($postParams); prr($response);
if (is_wp_error($response)) {
$badOut['Error'] = print_r($response, true) . " - ERROR";
return $badOut;
}
$response = json_decode($response['body'], true);
$rdNewPostID = 'http://www.reddit.com';
// prr($response);
if (!isset($response['jquery']) || !is_array($response['jquery'])) {
$badOut['Error'] = print_r($response, true) . " - ERROR";
return $badOut;
}
$r = $response['jquery'];
if (is_array($r[$retNum][3]) && count($r[$retNum][3]) > 0 && stripos($r[$retNum][3][0], 'http://') !== false) {
$rdNewPostID = $r[$retNum][3][0];
}
if (isset($r[18]) && is_array($r[18][3]) && count($r[18][3]) > 0 && stripos($r[18][3][0], 'error.BAD_CAPTCHA') !== false) {
$badOut['Error'] = "ERROR: Post Rejected. Reddit thinks that you don't have rights to post here";
return $badOut;
}
if (isset($r[18]) && is_array($r[18][3]) && count($r[18][3]) > 0 && stripos($r[18][3][0], 'error') !== false) {
$badOut['Error'] = "ERROR: " . $r[18][3][0];
return $badOut;
}
if (is_array($r[$retNum][3]) && count($r[$retNum][3]) > 0 && stripos($r[$retNum][3][0], 'http://') === false) {
$badOut['Error'] = print_r($r[$retNum][3][0], true) . " - ERROR";
return $badOut;
}
if (isset($r[18]) && is_array($r[18][3]) && count($r[18][3]) > 0 && stripos($r[18][3][0], 'already been submitted') !== false) {
$rdNewPostID .= str_ireplace('?already_submitted=true', '', $r[10][3][0]);
}
// echo "ID:".$rdNewPostID;
if ($rdNewPostID != 'http://www.reddit.com') {
return array('postID' => $rdNewPostID, 'isPosted' => 1, 'postURL' => $rdNewPostID, 'pDate' => date('Y-m-d H:i:s'));
} else {
$badOut['Error'] .= print_r($tmhOAuth->response['response'], true) . " MSG:" . print_r($msg, true);
return $badOut;
}
return $badOut;
}
示例6: nxs_doPublishToVK
//.........这里部分代码省略.........
$imgURL = $imgVURL;
}
if ($options['postType'] == 'A') {
if (trim($options['msgAFormat']) != '') {
$dsc = nsFormatMessage($options['msgAFormat'], $postID, $addParams);
} else {
if (function_exists('aioseop_mrt_fix_meta') && $dsc == '') {
$dsc = trim(get_post_meta($postID, '_aioseop_description', true));
}
if (function_exists('wpseo_admin_init') && $dsc == '') {
$dsc = trim(get_post_meta($postID, '_yoast_wpseo_opengraph-description', true));
}
if (function_exists('wpseo_admin_init') && $dsc == '') {
$dsc = trim(get_post_meta($postID, '_yoast_wpseo_metadesc', true));
}
if (is_object($post) && $dsc == '') {
$dsc = trim(apply_filters('the_content', nxs_doQTrans($post->post_excerpt, $lng)));
}
if ($dsc == '') {
$dsc = trim(nxs_doQTrans($post->post_excerpt, $lng));
}
if (is_object($post) && $dsc == '') {
$dsc = trim(apply_filters('the_content', nxs_doQTrans($post->post_content, $lng)));
}
if ($dsc == '') {
$dsc = trim(nxs_doQTrans($post->post_content, $lng));
}
if (is_object($post) && $dsc == '') {
$dsc = get_bloginfo('description');
}
}
$dsc = strip_tags($dsc);
$dsc = nxs_decodeEntitiesFull($dsc);
$dsc = nsTrnc($dsc, 900, ' ');
} else {
$dsc = '';
}
$message = array('siteName' => $blogTitle, 'url' => $urlToGo, 'imageURL' => $imgURL, 'videoURL' => $vidURL, 'urlTitle' => nxs_decodeEntitiesFull(nxs_doQTrans($post->post_title, $lng)), 'urlDescr' => $dsc);
//## Actual Post
$ntToPost = new nxs_class_SNAP_VK();
$ret = $ntToPost->doPostToNT($options, $message);
//## Check Phone Req Return
if (is_string($ret) && stripos($ret, 'Phone verification required:') !== false) {
global $plgn_NS_SNAutoPoster;
$gOptions = $plgn_NS_SNAutoPoster->nxs_options;
$phtext = str_ireplace('Phone verification required: ', '', $ret);
$ret .= ". Please refresh/reload the SNAP settings page and enter your phone.";
$gOptions['vk'][$ii]['vkPhReq'] = $phtext;
update_option('NS_SNAutoPoster', $gOptions);
if ($postID == '0') {
prr($ret);
}
nxs_addToLogN('E', 'Error', $logNT, '-=ERROR=- ' . print_r($ret, true) . " - BAD USER/PASS", $extInfo);
return " -= BAD USER/PASS - Phone verification required =- ";
}
//## Save Session
if (empty($options['vkSvC']) || serialize($nxs_vkCkArray) != $options['vkSvC']) {
global $plgn_NS_SNAutoPoster;
$gOptions = $plgn_NS_SNAutoPoster->nxs_options;
if (isset($options['ii']) && $options['ii'] !== '') {
$gOptions['vk'][$options['ii']]['vkSvC'] = serialize($nxs_vkCkArray);
update_option('NS_SNAutoPoster', $gOptions);
} else {
foreach ($gOptions['vk'] as $ii => $gpn) {
$result = array_diff($options, $gpn);
if (!is_array($result) || count($result) < 1) {
示例7: nxs_doPublishToTW
function nxs_doPublishToTW($postID, $options)
{
$ntCd = 'TW';
$ntCdL = 'tw';
$ntNm = 'Twitter';
$img = '';
$imgURL = '';
global $nxs_urlLen;
$nxs_urlLen = 0;
//$backtrace = debug_backtrace(); nxs_addToLogN('W', 'Error', $logNT, 'I am here - '.$ntCd."|".print_r($backtrace, true), '');
//if (isset($options['timeToRun'])) wp_unschedule_event( $options['timeToRun'], 'nxs_doPublishToTW', array($postID, $options));
$ii = $options['ii'];
if (!isset($options['pType'])) {
$options['pType'] = 'im';
}
if ($options['pType'] == 'sh') {
sleep(rand(1, 10));
}
$logNT = '<span style="color:#00FFFF">Twitter</span> - ' . $options['nName'];
$snap_ap = get_post_meta($postID, 'snap' . $ntCd, true);
$snap_ap = maybe_unserialize($snap_ap);
if ($options['pType'] != 'aj' && is_array($snap_ap) && (nxs_chArrVar($snap_ap[$ii], 'isPosted', '1') || nxs_chArrVar($snap_ap[$ii], 'isPrePosted', '1'))) {
$snap_isAutoPosted = get_post_meta($postID, 'snap_isAutoPosted', true);
if ($snap_isAutoPosted != '2') {
nxs_addToLogN('W', 'Notice', $logNT, '-=Duplicate=- Post ID:' . $postID, 'Already posted. No reason for posting duplicate' . ' |' . $options['pType']);
return;
}
}
$blogTitle = htmlspecialchars_decode(get_bloginfo('name'), ENT_QUOTES);
if ($blogTitle == '') {
$blogTitle = home_url();
}
$uln = 0;
if ($options['attchImg'] == '1') {
$imgURL = nxs_getPostImage($postID);
if (trim($imgURL) == '') {
$options['attchImg'] = 0;
} else {
if (ini_get('allow_url_fopen')) {
if (@getimagesize($imgURL) !== false) {
$img = wp_remote_get($imgURL);
if ($img['headers']['content-length'] < 200) {
$options['attchImg'] = 0;
} else {
if (is_wp_error($img)) {
$options['attchImg'] = 0;
} else {
$img = $img['body'];
}
}
} else {
$options['attchImg'] = 0;
}
} else {
$img = wp_remote_get($imgURL);
if (is_wp_error($img)) {
$options['attchImg'] = 0;
} elseif (isset($img['body']) && trim($img['body']) != '') {
$img = $img['body'];
} else {
$options['attchImg'] = 0;
}
}
}
if ($options['attchImg'] == 0) {
nxs_addToLogN('E', 'Error', $logNT, 'Could not get image, will post without it', $extInfo);
}
}
if ($options['attchImg'] == '1' && $img != '') {
$twLim = 118;
} else {
$twLim = 140;
}
if ($postID == '0') {
echo "Testing ... <br/><br/>";
$msg = 'Test Post from ' . nsTrnc($blogTitle, $twLim - 24) . " - " . rand(1, 155);
$uln = nxs_strLen($msg);
} else {
$post = get_post($postID);
if (!$post) {
return;
}
$twMsgFormat = $options['twMsgFormat'];
nxs_metaMarkAsPosted($postID, $ntCd, $options['ii'], array('isPrePosted' => '1'));
if (stripos($twMsgFormat, '%URL%') !== false || stripos($twMsgFormat, '%SURL%') !== false) {
$twLim = $twLim - 22;
}
if (stripos($twMsgFormat, '%AUTHORNAME%') !== false) {
$aun = $post->post_author;
$aun = get_the_author_meta('display_name', $aun);
$twLim = $twLim - nxs_strLen($aun);
}
$noRepl = str_ireplace("%TITLE%", "", $twMsgFormat);
$noRepl = str_ireplace("%SITENAME%", "", $noRepl);
$noRepl = str_ireplace("%URL%", "", $noRepl);
$noRepl = str_ireplace("%RAWEXCERPT%", "", $noRepl);
$noRepl = str_ireplace("%SURL%", "", $noRepl);
$noRepl = str_ireplace("%TEXT%", "", $noRepl);
$noRepl = str_ireplace("%FULLTEXT%", "", $noRepl);
$noRepl = str_ireplace("%EXCERPT%", "", $noRepl);
//.........这里部分代码省略.........
示例8: nxs_doPublishToBG
function nxs_doPublishToBG($postID, $options)
{
$ntCd = 'BG';
$ntCdL = 'bg';
$ntNm = 'Blogger';
// $uqID = uniqid('BG_');
//$backtrace = debug_backtrace(); nxs_addToLogN('W', 'Enter', $ntCd, 'I am here - '.$ntCd."|".print_r($backtrace, true), '');
// if (isset($options['timeToRun'])) wp_unschedule_event( $options['timeToRun'], 'nxs_doPublishToBG', array($postID, $options));
$blogTitle = htmlspecialchars_decode(get_bloginfo('name'), ENT_QUOTES);
if ($blogTitle == '') {
$blogTitle = home_url();
}
$addParams = nxs_makeURLParams(array('NTNAME' => $ntNm, 'NTCODE' => $ntCd, 'ACCNAME' => $options['nName'], 'POSTID' => $postID));
$ii = $options['ii'];
if (!isset($options['pType'])) {
$options['pType'] = 'im';
}
if ($options['pType'] == 'sh') {
sleep(rand(1, 10));
}
$logNT = '<span style="color:#F87907">' . $ntNm . '</span> - ' . $options['nName'];
$snap_ap = get_post_meta($postID, 'snap' . $ntCd, true);
$snap_ap = maybe_unserialize($snap_ap);
if ($options['pType'] != 'aj' && is_array($snap_ap) && (nxs_chArrVar($snap_ap[$ii], 'isPosted', '1') || nxs_chArrVar($snap_ap[$ii], 'isPrePosted', '1'))) {
$snap_isAutoPosted = get_post_meta($postID, 'snap_isAutoPosted', true);
if ($snap_isAutoPosted != '2') {
nxs_addToLogN('W', 'Notice', $logNT, '-=Duplicate=- Post ID:' . $postID, 'Already posted. No reason for posting duplicate');
return;
}
}
if ($postID == '0') {
echo "Testing ... <br/><br/>";
$msgT = 'Test Post from ' . htmlentities($blogTitle);
$link = home_url();
$msg = 'Test Post from ' . $blogTitle . " " . $link;
} else {
$post = get_post($postID);
if (!$post) {
return;
}
$msgFormat = $options['bgMsgFormat'];
$msg = nsFormatMessage($msgFormat, $postID, $addParams);
$link = get_permalink($postID);
$msgTFormat = $options['bgMsgTFormat'];
$msgT = nsFormatMessage($msgTFormat, $postID, $addParams);
nxs_metaMarkAsPosted($postID, $ntCd, $options['ii'], array('isPrePosted' => '1'));
}
$extInfo = ' | PostID: ' . $postID . " - " . nxs_doQTrans($post->post_title, $lng);
//## Actual POST Code
$email = $options['bgUName'];
$pass = substr($options['bgPass'], 0, 5) == 'b4d7s' ? nsx_doDecode(substr($options['bgPass'], 5)) : $options['bgPass'];
$blogID = $options['bgBlogID'];
//echo "###".$auth."|".$blogID."|".$msgT."|".$msg;
if ($options['bgInclTags'] == '1') {
$t = wp_get_post_tags($postID);
$tggs = array();
foreach ($t as $tagA) {
$tggs[] = $tagA->name;
}
$tags = implode('","', $tggs);
$tags = nsTrnc($tags, 195, ',', '');
}
if (substr($tags, -1) == '"') {
$tags = substr($tags, 0, -1);
}
if (class_exists('DOMDocument')) {
$doc = new DOMDocument();
@$doc->loadHTML('<?xml encoding="UTF-8">' . $msg);
$doc->encoding = 'UTF-8';
$msg = $doc->saveHTML();
$msg = CutFromTo($msg, '<body>', '</body>');
$msg = preg_replace('/<br(.*?)\\/?>/', '<br$1/>', $msg);
$msg = preg_replace('/<img(.*?)\\/?>/', '<img$1/>', $msg);
require_once 'apis/htmlNumTable.php';
if (is_array($HTML401NamedToNumeric)) {
$msg = strtr($msg, $HTML401NamedToNumeric);
$msgT = strtr($msgT, $HTML401NamedToNumeric);
}
}
// prr($text);
// prr($msg); echo " =HT= ";
$msg = preg_replace('/<script\\b[^>]*>(.*?)<\\/script>/is', "", $msg);
$msg = preg_replace('/<!--(.*)-->/Uis', "", $msg);
$nxshf = new NXS_HtmlFixer();
$nxshf->debug = false;
$msg = $nxshf->getFixedHtml($msg);
$msg = str_replace("\r\n", "\n", $msg);
$msg = str_replace("\n\r", "\n", $msg);
$msg = str_replace("\r", "\n", $msg);
$msg = str_replace("\n", "<br/>", $msg);
// prr($msg); die();
if (function_exists("doConnectToBlogger")) {
$auth = doConnectToBlogger($email, $pass);
if ($auth !== false) {
$ret = $auth;
} else {
$ret = doPostToBlogger($blogID, $msgT, $msg, $tags);
}
} else {
$auth = nsBloggerGetAuth($email, $pass);
//.........这里部分代码省略.........
示例9: doPostToNT
function doPostToNT($options, $message)
{
$badOut = array('pgID' => '', 'isPosted' => 0, 'pDate' => date('Y-m-d H:i:s'), 'Error' => '');
// prr($message); prr($options);
//## Check API Lib
//if (!function_exists('doConnectToBlogger')) if (file_exists('apis/postToGooglePlus.php')) require_once ('apis/postToGooglePlus.php'); elseif (file_exists('/home/_shared/deSrc.php')) require_once ('/home/_shared/deSrc.php');
//## Check settings
if (!is_array($options)) {
$badOut['Error'] = 'No Options';
return $badOut;
}
if ((!isset($options['bgUName']) || empty($options['bgPass'])) && empty($options['AccessToken'])) {
$badOut['Error'] = 'Not Configured';
return $badOut;
}
//## Format
if (!empty($message['pText'])) {
$msg = $message['pText'];
} else {
$msg = nxs_doFormatMsg($options['bgMsgFormat'], $message);
}
if (!empty($message['pTitle'])) {
$msgT = $message['pTitle'];
} else {
$msgT = nxs_doFormatMsg($options['bgMsgTFormat'], $message);
}
if ($options['bgInclTags'] == '1') {
$tags = nsTrnc($message['tags'], 195, ',', '');
} else {
$tags = '';
}
//## Check/Fix HTML
if (class_exists('DOMDocument')) {
$doc = new DOMDocument();
@$doc->loadHTML('<?xml encoding="UTF-8">' . $msg);
$doc->encoding = 'UTF-8';
$msg = $doc->saveHTML();
$msg = CutFromTo($msg, '<body>', '</body>');
$msg = preg_replace('/<br(.*?)\\/?>/', '<br$1/>', $msg);
$msg = preg_replace('/<img(.*?)\\/?>/', '<img$1/>', $msg);
require 'apis/htmlNumTable.php';
if (is_array($HTML401NamedToNumeric)) {
$msg = strtr($msg, $HTML401NamedToNumeric);
$msgT = strtr($msgT, $HTML401NamedToNumeric);
}
}
$msg = preg_replace('/<script\\b[^>]*>(.*?)<\\/script>/is', "", $msg);
$msg = preg_replace('/<!--(.*)-->/Uis', "", $msg);
$nxshf = new NXS_HtmlFixer();
$nxshf->debug = false;
$msg = $nxshf->getFixedHtml($msg);
$msg = str_replace("\r\n", "\n", $msg);
$msg = str_replace("\n\r", "\n", $msg);
$msg = str_replace("\r", "\n", $msg);
$msg = str_replace("\n", "<br/>", $msg);
//## Make Post
$email = $options['bgUName'];
$pass = substr($options['bgPass'], 0, 5) == 'b4d7s' ? nsx_doDecode(substr($options['bgPass'], 5)) : $options['bgPass'];
$blogID = $options['bgBlogID'];
// prr($msgT); prr($msg); die();
if (class_exists('nxsAPI_GP') && !empty($options['bgUName']) && empty($options['APIKey'])) {
$nt = new nxsAPI_GP();
if (!empty($options['ck'])) {
$nt->ck = $options['ck'];
}
$nt->debug = false;
$loginError = $nt->connect($email, $pass, 'BG');
if (!$loginError) {
$result = $nt->postBG($blogID, $msgT, $msg, $tags);
// prr($result);
} else {
$badOut['Error'] = "Login/Connection Error: " . print_r($loginError, true);
return $badOut;
}
if (is_array($result) && $result['isPosted'] == '1') {
nxs_save_glbNtwrks('bg', $options['ii'], $nt->ck, 'ck');
}
return $result;
} else {
//## Refresh token
if (function_exists('get_option')) {
$currTime = time() + get_option('gmt_offset') * HOUR_IN_SECONDS;
} else {
$currTime = time();
}
if ($options['AccessTokenExp'] < $currTime) {
$tknURL = 'https://www.googleapis.com/oauth2/v3/token?refresh_token=' . $options['RefreshToken'] . '&client_id=' . $options['APIKey'] . '&client_secret=' . $options['APISec'] . '&grant_type=refresh_token';
$response = wp_remote_post($tknURL);
$resp = json_decode($response['body'], true);
$options['AccessToken'] = $resp['access_token'];
$options['AccessTokenExp'] = $currTime + $resp['expires_in'];
nxs_save_glbNtwrks('bg', $options['ii'], $resp['access_token'], 'AccessTokenExp');
nxs_save_glbNtwrks('bg', $options['ii'], $options['AccessTokenExp'], 'AccessTokenExp');
//nxs_addToLogN('S', 'Test', $logNT, 'Token Refreshed '.date('Y-m-d H:i:s',$options['AccessTokenExp'])."|".$tknURL.$options['AccessToken'].print_r($response, true));
}
//## Post
$post = array("kind" => "blogger#post", "blog" => array("id" => $blogID), "title" => $msgT, "content" => $msg);
$post = json_encode($post);
// prr($post);
$hdrsArr = array('Content-Type' => 'application/json');
//.........这里部分代码省略.........
示例10: doPostToNT
//.........这里部分代码省略.........
} else {
$options['imgUpl'] = 'A';
}
if (stripos($options['fbURL'], '/groups/') != false) {
$options['destType'] == 'gr';
}
if (!empty($options['destType']) && $options['destType'] == 'pr') {
$page_id = $options['fbAppAuthUser'];
} else {
$page_id = $options['pgID'];
}
$msg = strip_tags($msg);
$msg = str_ireplace('<(")', '<(")', $msg);
//## FB Smiles FIX 3
if (substr($msg, 0, 1) == '@') {
$msg = ' ' . $msg;
}
// ERROR] couldn't open file fix
//## Own App Post
if (!empty($options['fbAppPageAuthToken'])) {
if (empty($options['appsecret_proof'])) {
$options['appsecret_proof'] = hash_hmac('sha256', $options['fbAppPageAuthToken'], $options['fbAppSec']);
}
$mssg = array('access_token' => $options['fbAppPageAuthToken'], 'appsecret_proof' => $options['appsecret_proof'], 'method' => 'post', 'message' => $msg);
if ($fbPostType == 'I' && trim($imgURL) == '') {
$fbPostType = 'T';
}
if ($fbPostType == 'A' && !preg_match("/\\b(?:(?:https?|ftp):\\/\\/|www\\.)[-a-z0-9+&@#\\/%?=~_|!:,.;]*[-a-z0-9+&@#\\/%=~_|]/i", $message['url'])) {
$badOut['Warning'] = 'Unvalid URL: ' . $message['url'] . '| Will be posting as text message';
$fbPostType = 'T';
}
if ($fbPostType == 'A' || $fbPostType == '') {
if ($attachType == 'A' || $attachType == 'S') {
$message['urlTitle'] = nsTrnc($message['urlTitle'], 250, " ", "...");
$attArr = array('name' => $message['urlTitle'], 'caption' => $message['siteName'], 'link' => $message['url'], 'description' => $message['urlDescr']);
$mssg = array_merge($mssg, $attArr);
}
if ($attachType == 'A') {
$mssg['actions'] = json_encode(array('name' => $message['siteName'], 'link' => $message['url']));
}
if (trim($imgURL) != '') {
$mssg['picture'] = $imgURL;
}
//if (trim($message['videoURL'])!='') $mssg['source'] = $message['videoURL'];
} elseif ($fbPostType == 'I') {
/* $facebook->setFileUploadSupport(true); */
$fbWhere = 'photos';
$mssg['url'] = $imgURL;
if ($options['imgUpl'] == 'T') {
//## Try to Post to TImeline
$aacct = array('access_token' => $options['fbAppPageAuthToken'], 'appsecret_proof' => $options['appsecret_proof'], 'method' => 'get');
$res = wp_remote_get("https://graph.facebook.com/{$page_id}/albums?" . http_build_query($aacct, null, '&'), $wprg);
if (is_wp_error($res) || empty($res['body'])) {
$badOut['Error'] = ' [ERROR(Albums)] ' . print_r($res, true);
} else {
$albums = json_decode($res['body'], true);
if (empty($albums)) {
$badOut['Error'] .= "JSON ERROR (Albums): " . print_r($res, true);
} else {
if (is_array($albums) && is_array($albums["data"])) {
foreach ($albums["data"] as $album) {
if ($album["type"] == "wall") {
$chosen_album = $album;
break;
}
}
示例11: doPostToNT
function doPostToNT($options, $message)
{
$badOut = array('pgID' => '', 'isPosted' => 0, 'pDate' => date('Y-m-d H:i:s'), 'Error' => '');
//## Check settings
if (!is_array($options)) {
$badOut['Error'] = 'No Options';
return $badOut;
}
if (!isset($options['dlUName']) || trim($options['dlPass']) == '') {
$badOut['Error'] = 'Not Configured';
return $badOut;
}
$email = $options['dlUName'];
$pass = substr($options['dlPass'], 0, 5) == 'n5g9a' ? nsx_doDecode(substr($options['dlPass'], 5)) : $options['dlPass'];
//## Format
if (!empty($message['pText'])) {
$msg = $message['pText'];
} else {
$msg = nxs_doFormatMsg($options['dlMsgFormat'], $message);
}
if (!empty($message['pTitle'])) {
$msgT = $message['pTitle'];
} else {
$msgT = nxs_doFormatMsg($options['dlMsgTFormat'], $message);
}
$tags = nsTrnc($message['tags'], 195, ',', '');
$link = $message['url'];
$desc = substr($msgT, 0, 250);
$ext = substr($msg, 0, 1000);
$hdrsArr = $this->getHeaders('https://delicious.com', 'https://delicious.com', true);
$flds = array('username' => $email, 'password' => base64_encode(strrev($pass)));
$cnt = wp_remote_post('https://avosapi.delicious.com/api/v1/account/login', array('method' => 'POST', 'timeout' => 45, 'redirection' => 0, 'body' => $flds, 'headers' => $hdrsArr));
if (is_nxs_error($cnt)) {
$badOut = "ERROR (Login Form): " . print_r($rep, true);
return $badOut;
}
$rep = json_decode($cnt['body'], true);
if ($rep['status'] != 'success') {
$badOut = "ERROR (Login): " . print_r($rep, true);
return $badOut;
}
$ck = $cnt['cookies'];
$flds = array('url' => $link, 'description' => $desc, 'tags' => $tags, 'note' => $ext, 'replace' => 'true', 'private' => 'false', 'share' => '');
$advSts = array('method' => 'POST', 'timeout' => 45, 'redirection' => 0, 'body' => $flds, 'cookies' => $ck, 'headers' => $hdrsArr);
//prr($advSts);
$cnt = wp_remote_post('https://avosapi.delicious.com/api/v1/posts/addoredit', $advSts);
if (is_nxs_error($cnt)) {
$badOut = "ERROR (Login Form): " . print_r($rep, true);
return $badOut;
}
$rep = json_decode($cnt['body'], true);
if ($rep['status'] != 'success') {
$badOut = "ERROR (Login): " . print_r($rep, true);
return $badOut;
}
return array('postID' => md5($message['url']), 'isPosted' => 1, 'postURL' => 'https://delicious.com/link/' . md5($message['url']), 'pDate' => date('Y-m-d H:i:s'));
}
示例12: nxs_doPublishToDI
function nxs_doPublishToDI($postID, $options)
{
global $nxs_diCkArray;
$ntCd = 'DI';
$ntCdL = 'di';
$ntNm = 'Diigo';
// if (isset($options['timeToRun'])) wp_unschedule_event( $options['timeToRun'], 'nxs_doPublishToDI', array($postID, $options));
$ii = $options['ii'];
if (!isset($options['pType'])) {
$options['pType'] = 'im';
}
if ($options['pType'] == 'sh') {
sleep(rand(1, 10));
}
$logNT = '<span style="color:#000080">Diigo</span> - ' . $options['nName'];
$snap_ap = get_post_meta($postID, 'snap' . $ntCd, true);
$snap_ap = maybe_unserialize($snap_ap);
if ($options['pType'] != 'aj' && is_array($snap_ap) && (nxs_chArrVar($snap_ap[$ii], 'isPosted', '1') || nxs_chArrVar($snap_ap[$ii], 'isPrePosted', '1'))) {
$snap_isAutoPosted = get_post_meta($postID, 'snap_isAutoPosted', true);
if ($snap_isAutoPosted != '2') {
sleep(5);
nxs_addToLogN('W', 'Notice', $logNT, '-=Duplicate=- Post ID:' . $postID, 'Already posted. No reason for posting duplicate');
return;
}
}
if ($postID == '0') {
echo "Testing ... <br/><br/>";
$link = home_url();
$msg = 'Test Message from ' . $link;
$msgT = 'Test Link from ' . $link;
} else {
$post = get_post($postID);
if (!$post) {
return;
}
$link = get_permalink($postID);
$msgFormat = $options['diMsgFormat'];
$diCat = $options['diCat'];
$msg = nsFormatMessage($msgFormat, $postID);
$msgFormatT = $options['diMsgTFormat'];
$msgT = nsFormatMessage($msgFormatT, $postID);
nxs_metaMarkAsPosted($postID, $ntCd, $options['ii'], array('isPrePosted' => '1'));
}
$extInfo = ' | PostID: ' . $postID . " - " . $post->post_title;
//## Actual POST Code
$email = $options['diUName'];
$pass = substr($options['diPass'], 0, 5) == 'n5g9a' ? nsx_doDecode(substr($options['diPass'], 5)) : $options['diPass'];
$dusername = $options['diUName'];
//$link = urlencode($link); $desc = urlencode(substr($msg, 0, 500));
$t = wp_get_post_tags($postID);
$tggs = array();
foreach ($t as $tagA) {
$tggs[] = $tagA->name;
}
$tags = implode(',', $tggs);
$tags = str_replace(' ', '+', $tags);
$flds = array();
$flds['key'] = $options['diAPIKey'];
$flds['url'] = $link;
$flds['title'] = nsTrnc($msgT, 250);
$flds['desc'] = nsTrnc($msg, 250);
$flds['tags'] = $tags;
$flds['shared'] = 'yes';
$hdrsArr = nxs_getDIHeaders('https://secure.diigo.com/api/v2/bookmarks', $dusername, $pass, true);
$cnt = wp_remote_post('https://secure.diigo.com/api/v2/bookmarks', array('method' => 'POST', 'timeout' => 45, 'redirection' => 0, 'headers' => $hdrsArr, 'body' => $flds));
if (is_wp_error($cnt)) {
$ret = 'Something went wrong - ';
nxs_addToLogN('E', 'Error', $logNT, '-=ERROR=- ' . $ret . "ERR: " . print_r($cnt, true), $extInfo);
} else {
if (is_array($cnt) && stripos($cnt['body'], '"code":1') !== false) {
$ret = 'OK';
nxs_metaMarkAsPosted($postID, 'DI', $options['ii'], array('isPosted' => '1', 'pgID' => 'DI', 'pDate' => date('Y-m-d H:i:s')));
nxs_addToLogN('S', 'Posted', $logNT, 'OK - Message Posted ', $extInfo);
} else {
if ($cnt['response']['code'] == '401') {
$ret = " Incorrect Username/Password ";
} else {
$ret = 'Something went wrong - ';
}
nxs_addToLogN('E', 'Error', $logNT, '-=ERROR=- ' . $ret . "ERR: " . print_r($cnt, true), $extInfo);
}
}
if ($ret != 'OK') {
if ($postID == '0') {
echo $ret;
}
} else {
if ($postID == '0') {
echo 'OK - Message Posted, please see your Diigo Page';
nxs_addToLogN('S', 'Test', $logNT, 'OK - TEST Message Posted ');
}
}
if ($ret == 'OK') {
return 200;
} else {
return $ret;
}
}
示例13: nxs_doPublishToVK
//.........这里部分代码省略.........
$gOptions['vk'][$options['ii']]['vkSvC'] = serialize($nxs_vkCkArray);
update_option('NS_SNAutoPoster', $gOptions);
} else {
foreach ($gOptions['vk'] as $ii => $gpn) {
$result = array_diff($options, $gpn);
if (!is_array($result) || count($result) < 1) {
$gOptions['vk'][$ii]['vkSvC'] = serialize($nxs_vkCkArray);
update_option('NS_SNAutoPoster', $gOptions);
break;
}
}
}
}
if ($loginError !== false) {
if ($postID == '0') {
prr($loginError);
}
nxs_addToLogN('E', 'Error', $logNT, '-=ERROR=- ' . print_r($loginError, true) . " - BAD USER/PASS", $extInfo);
return " -= BAD USER/PASS =- ";
}
//## Post
if (trim($fbMsgAFormat) != '') {
$dsc = nsFormatMessage($fbMsgAFormat, $postID);
} else {
if (function_exists('aioseop_mrt_fix_meta') && $dsc == '') {
$dsc = trim(get_post_meta($postID, '_aioseop_description', true));
}
if (function_exists('wpseo_admin_init') && $dsc == '') {
$dsc = trim(get_post_meta($postID, '_yoast_wpseo_opengraph-description', true));
}
if (function_exists('wpseo_admin_init') && $dsc == '') {
$dsc = trim(get_post_meta($postID, '_yoast_wpseo_metadesc', true));
}
if ($dsc == '') {
$dsc = trim(apply_filters('the_content', nxs_doQTrans($post->post_excerpt, $lng)));
}
if ($dsc == '') {
$dsc = trim(nxs_doQTrans($post->post_excerpt, $lng));
}
if ($dsc == '') {
$dsc = trim(apply_filters('the_content', nxs_doQTrans($post->post_content, $lng)));
}
if ($dsc == '') {
$dsc = trim(nxs_doQTrans($post->post_content, $lng));
}
if ($dsc == '') {
$dsc = get_bloginfo('description');
}
}
$dsc = strip_tags($dsc);
$dsc = nxs_decodeEntitiesFull($dsc);
$dsc = nsTrnc($dsc, 900, ' ');
$msgOpts['url'] = $link;
$msgOpts['urlTitle'] = nxs_doQTrans($post->post_title, $lng);
$msgOpts['urlDesc'] = $dsc;
$msgOpts['imgURL'] = $imgURL;
$ret = nxs_doPostToVK($msg, $options['url'], $msgOpts);
// prr($ret);
}
//prr($postType);
if ($postType == 'I') {
$imgUpld = nxs_uplImgtoVK($imgURL, $options);
if (is_object($imgUpld)) {
$imgID = $imgUpld->id;
$atts[] = $imgID;
}
}
if ($postType != 'A') {
if ($options['addBackLink'] == '1') {
$atts[] = $link;
}
if (is_array($atts)) {
$atts = implode(',', $atts);
}
$postUrl = 'https://api.vkontakte.ru/method/wall.post?owner_id=' . $options['pgIntID'] . '&access_token=' . $options['vkAppAuthToken'] . '&from_group=1&message=' . urlencode($msg) . '&attachment=' . urlencode($atts);
$response = wp_remote_get($postUrl);
// prr($atts); prr($postUrl);
if (is_wp_error($response) || is_object($response) && isset($response->errors) || is_array($response) && stripos($response['body'], '"error":') !== false) {
$ret = $response['body'];
} else {
$respJ = json_decode($response['body'], true);
$ret = array("code" => "OK", "post_id" => $options['pgIntID'] . '_' . $respJ['response']['post_id']);
}
}
if (is_array($ret) && $ret['code'] == 'OK') {
if ($postID == '0') {
nxs_addToLogN('S', 'Test', $logNT, 'OK - TEST Message Posted ');
echo ' OK - Message Posted, please see your VK Page ';
} else {
nxs_metaMarkAsPosted($postID, 'VK', $options['ii'], array('isPosted' => '1', 'pgID' => $ret['post_id'], 'pDate' => date('Y-m-d H:i:s')));
nxs_addToLogN('S', 'Posted', $logNT, 'OK - Message Posted ', $extInfo);
return 200;
}
} else {
if ($postID == '0') {
prr($ret);
}
nxs_addToLogN('E', 'Error', $logNT, '-=ERROR=- ' . print_r($ret, true), $extInfo);
}
}
示例14: postYT
function postYT($msg, $ytUrl, $vURL = '', $ytGPPageID='') { $ck = $this->ck; $sslverify = false;
$ytUrl = str_ireplace('/feed','',$ytUrl); if (substr($ytUrl, -1)=='/') $ytUrl = substr($ytUrl, 0, -1); $ytUrl .= '/feed'; $hdrsArr = $this->headers('http://www.youtube.com/');
if ($ytGPPageID!=''){ $pgURL = 'https://www.youtube.com/signin?authuser=0&action_handle_signin=true&pageid='.$ytGPPageID; if ($this->debug) echo "[YT] G SW to page: ".$ytGPPageID."<br/>\r\n";
$rep = nxs_remote_get($pgURL, array('headers' => $hdrsArr, 'httpversion' => '1.1', 'redirection' => 0, 'cookies' => $ck, 'sslverify'=>$sslverify)); if (is_nxs_error($rep)) return "ERROR: ".print_r($rep, true);
if (!empty($rep['cookies'])) foreach ($rep['cookies'] as $ccN) { $fdn = false; foreach ($ck as $ci=>$cc) if ($ccN->name == $cc->name) { $fdn = true; $ck[$ci] = $ccN; } if (!$fdn) $ck[] = $ccN; }
} $rep = nxs_remote_get($ytUrl, array('headers' => $hdrsArr, 'httpversion' => '1.1', 'redirection' => 0, 'cookies' => $ck, 'sslverify'=>$sslverify)); if (is_nxs_error($rep)) return "ERROR: ".print_r($rep, true);
//## Merge CK
if (!empty($rep['cookies'])) foreach ($rep['cookies'] as $ccN) { $fdn = false; foreach ($ck as $ci=>$cc) if ($ccN->name == $cc->name) { $fdn = true; $ck[$ci] = $ccN; } if (!$fdn) $ck[] = $ccN; }
$contents = $rep['body']; $gpPageMsg = "Either BAD YouTube USER/PASS or you are trying to post from the wrong account/page. Make sure you have Google+ page ID if your YouTube account belongs to the page.";
$actFormCode = 'channel_ajax'; if (stripos($contents, 'action="/c4_feed_ajax?')!==false) $actFormCode = 'c4_feed_ajax';
if (stripos($contents, 'action="/'.$actFormCode.'?')) $frmData = CutFromTo($contents, 'action="/'.$actFormCode.'?', '</form>'); else {
if (stripos($contents, 'property="og:url"')) { $ytUrl = CutFromTo($contents, 'property="og:url" content="', '"').'/feed';
$rep = nxs_remote_get($ytUrl, array('headers' => $hdrsArr, 'httpversion' => '1.1', 'cookies' => $ck, 'sslverify'=>$sslverify)); if (is_nxs_error($rep)) return "ERROR: ".print_r($rep, true); if (!empty($rep['cookies'])) $ck = $rep['cookies']; $contents = $rep['body'];
if (stripos($contents, 'action="/'.$actFormCode.'?')) $frmData = CutFromTo($contents, 'action="/'.$actFormCode.'?', '</form>'); else return 'OG - Form not found. - '. $gpPageMsg;
} else { $eMsg = "No Form/No OG - ". $gpPageMsg; return $eMsg; }
}
$md = array(); $flds = array(); if ($vURL!='' && stripos($vURL, 'http')===false) $vURL = 'https://www.youtube.com/watch?v='.$vURL; $msg = strip_tags($msg); $msg = nsTrnc($msg, 500);
while (stripos($frmData, '"hidden"')!==false){$frmData = substr($frmData, stripos($frmData, '"hidden"')+8); $name = trim(CutFromTo($frmData,'name="', '"'));
if (!in_array($name, $md)) {$md[] = $name; $val = trim(CutFromTo($frmData,'value="', '"')); $flds[$name]= $val;}
} $flds['message'] = $msg; $flds['video_url'] = $vURL; // prr($flds);
$ytGPPageID = 'https://www.youtube.com/channel/'.$ytGPPageID; $hdrsArr = $this->headers($ytGPPageID, 'https://www.youtube.com/', 'POST', false);
$hdrsArr['X-YouTube-Page-CL'] = '67741289'; $hdrsArr['X-YouTube-Page-Timestamp'] = date("D M j H:i:s Y", time()-54000)." (".time().")"; //'Thu May 22 00:31:51 2014 (1400743911)';
$advSet = array('headers' => $hdrsArr, 'httpversion' => '1.1', 'timeout' => 45, 'redirection' => 0, 'cookies' => $ck, 'body' => $flds, 'sslverify'=>$sslverify); //prr($advSet);
$rep = nxs_remote_post('https://www.youtube.com/'.$actFormCode.'?action_add_bulletin=1', $advSet);
if (is_nxs_error($rep)) { $badOut = print_r($rep, true)." - ERROR YT"; return $badOut; } $contents = $rep['body'];// prr('https://www.youtube.com/'.$actFormCode.'?action_add_bulletin=1'); prr($rep);
if ($rep['response']['code']=='200' && $contents = '{"code": "SUCCESS"}') return array("isPosted"=>"1", "postID"=>'', 'postURL'=>'', 'pDate'=>date('Y-m-d H:i:s')); else return $rep['response']['code']."|".$contents;
}
示例15: doPostToNT
function doPostToNT($options, $message)
{
global $nxs_urlLen;
$badOut = array('pgID' => '', 'isPosted' => 0, 'pDate' => date('Y-m-d H:i:s'), 'Error' => '');
//## Check settings
if (!is_array($options)) {
$badOut['Error'] = 'No Options';
return $badOut;
}
if (!isset($options['accessToken']) || trim($options['accessToken']) == '') {
$badOut['Error'] = 'Not Authorized';
return $badOut;
}
if (empty($options['imgSize'])) {
$options['imgSize'] = '';
}
//## Format Post
if (!empty($message['pText'])) {
$msg = $message['pText'];
} else {
$msg = nxs_doFormatMsg($options['msgFrmt'], $message);
}
//## Make Post
if (isset($message['imageURL'])) {
$imgURL = trim(nxs_getImgfrOpt($message['imageURL'], $options['imgSize']));
} else {
$imgURL = '';
}
$postType = $options['postType'];
require_once 'apis/scOAuth.php';
$tum_oauth = new wpScoopITOAuth($options['appKey'], $options['appSec'], $options['accessToken'], $options['accessTokenSec']);
$tum_oauth->baseURL = 'https://api.xing.com';
$msg = str_replace('&#039;', "'", $msg);
$msg = str_replace(''', "'", $msg);
$msg = str_replace('#039;', "'", $msg);
$msg = str_replace('#039', "'", $msg);
$msg = str_replace('&#8217;', "'", $msg);
$msg = str_replace('’', "'", $msg);
$msg = str_replace('#8217;', "'", $msg);
$msg = str_replace('#8217', "'", $msg);
$msg = str_replace('&#8220;', '"', $msg);
$msg = str_replace('“', '"', $msg);
$msg = str_replace('#8220;', '"', $msg);
$msg = str_replace('#8220', "'", $msg);
$msg = str_replace('&#8221;', '"', $msg);
$msg = str_replace('”', '"', $msg);
$msg = str_replace('#8221;', '"', $msg);
$msg = str_replace('#8221', "'", $msg);
$msg = str_replace('&#8212;', '-', $msg);
$msg = str_replace('—', '-', $msg);
$msg = str_replace('#8212;', '-', $msg);
$msg = str_replace('#8212', "-", $msg);
if ($postType == 'A') {
$postArr = array('uri' => urlencode($message['url']), 'text' => nsTrnc($msg, 420));
$postinfo = $tum_oauth->makeReq('https://api.xing.com/v1/users/me/share/link', $postArr, 'POST');
} else {
$postArr = array('message' => nsTrnc($msg, 420), 'id' => $options['appAppUserID']);
$postinfo = $tum_oauth->makeReq('https://api.xing.com/v1/users/' . $options['appAppUserID'] . '/status_message', $postArr, 'POST');
// prr($postinfo);
}
$code = $tum_oauth->http_code;
if ($code == '201') {
if (!empty($postinfo) && is_array($postinfo) && !empty($postinfo['ids']) && !empty($postinfo['ids'][0])) {
$apNewPostID = $postinfo['ids'][0];
}
$np = explode('_', $apNewPostID);
$apNewPostURL = 'https://www.xing.com/feedy/stories/' . $np[0];
} else {
$apNewPostID = '';
$apNewPostURL = 'https://www.xing.com/profile/' . $options['appPGUserName'] . '/activities';
}
if (!empty($apNewPostID) || $code == '201') {
return array('postID' => $apNewPostID, 'isPosted' => 1, 'postURL' => $apNewPostURL, 'pDate' => date('Y-m-d H:i:s'));
} else {
$badOut['Error'] .= print_r($postinfo, true) . " Code:" . $tum_oauth->http_code;
return $badOut;
}
return $badOut;
}