function renren_sync($data) { $sys_config = renren_init(); if (!$sys_config) { return 'renren_init is invalid'; } $tid = is_numeric($data['tid']) ? $data['tid'] : 0; if ($tid < 1) { return 'tid is invalid'; } $uid = is_numeric($data['uid']) ? $data['uid'] : 0; if ($uid < 1) { return 'uid is invalid'; } $totid = is_numeric($data['totid']) ? $data['totid'] : 0; $content = $data['content']; if (false !== strpos($content, '[')) { $content = preg_replace('~\\[([^\\]]{1,6}?)\\]~', '(\\1)', $content); } $content = trim(strip_tags($content)); $name = array_iconv($sys_config['charset'], 'UTF-8', cutstr($content, 50)); $content = array_iconv($sys_config['charset'], 'UTF-8', $content); if (!$content) { return 'content is invalid'; } $url = get_full_url($sys_config['site_url'], 'index.php?mod=topic&code=' . $tid); $renren_bind_info = renren_bind_info($uid); if (!$renren_bind_info) { return 'bind_info is empty'; } if (!renren_has_bind($uid)) { return 'bind_info is invalid'; } $renren_bind_topic = DB::fetch_first("select * from " . DB::table('renren_bind_topic') . " where `tid`='{$tid}'"); if ($renren_bind_topic) { return 'bind_topic is invalid'; } else { DB::query("insert into " . DB::table('renren_bind_topic') . " (`tid`) values ('{$tid}')"); } $ret = array(); if ($totid < 1) { $p = array(); $p['access_token'] = $renren_bind_info['token']; $p['name'] = $name; $p['description'] = $content; $p['url'] = $url; $p['action_name'] = array_iconv($sys_config['charset'], 'UTF-8', '来自:' . $sys_config['site_name']); $p['action_link'] = $url; $imageid = (int) $data['imageid']; if ($imageid > 0 && $sys_config['renren']['is_sync_image']) { $topic_image = topic_image($imageid, 'original'); if (is_image(ROOT_PATH . $topic_image)) { $p['image'] = $sys_config['site_url'] . '/' . $topic_image; } } $ret = renren_api('feed.publishFeed', $p); } $renren_id = is_numeric($ret['post_id']) ? $ret['post_id'] : 0; if ($renren_id > 0) { DB::query("UPDATE " . DB::table('renren_bind_topic') . " SET `renren_id`='{$renren_id}' WHERE `tid`='{$tid}'"); } return $ret; }
function _api_call($method, $p) { $ret = renren_api($method, $p, 'POST', $this->renrenOauth); return $ret; }