File: /home/httpd/html/barebackedtube.com/DEADS/wp-content/plugins/social-poster/mm_services.php
<?php
// http://de.lirio.us/
function mm_post_delirious($curl, $vars)
{
extract($vars);
if (empty($extra)) {
$extra = 'http://de.lirio.us/';
} else if (substr($extra, -1, 1) != '/') {
$extra .= '/';
}
if ($extra == 'http://de.lirio.us/') {
$curl->setRedirect(false);
$page = $curl->post($extra . 'login/', array(
'username' => $username,
'password' => $password,
'submitted' => 'Log In',
'query' => ''
));
if ($err = $curl->getError()) {
return $err;
}
if (302 != $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
$page = $curl->post($extra . 'bookmarks/' . $username, array(
'address' => $link,
'title' => $title,
'tags' => implode(',', $tags),
'description' => $extended,
'status' => '0',
'submitted' => 'Add Bookmark'
));
if ($err = $curl->getError()) {
return $err;
}
if (302 != $curl->getHttpCode()) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
$curl->auth($username, $password);
$page = $curl->get($extra . 'api/posts/add', array(
'url' => $link,
'tags' => implode(' ', $tags),
'description' => $title,
'extended' => $extended,
'shared' => 'yes'
));
if ( $curl->getHttpCode() == 0 ) {
return ASP_ERROR_PROXY;
}
if ($err = $curl->getError()) {
return $err;
}
if (401 == $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
if (!strpos($page, 'done') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// Reddit.com
// no API
function mm_post_reddit($curl, $vars)
{
extract($vars);
$page = $curl->post('http://reddit.com/login', array(
'url' => '/submit',
'op' => 'login',
'user' => $username,
'passwd' => $password,
'rem' => 0,
));
if ($err = $curl->getError()) {
return $err;
}
if (strpos($page, 'invalid login') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_LOGIN;
}
$page = $curl->post('http://reddit.com/submit', array(
'url' => $link,
'title' => $title,
'sr' => '',
'save' => '1'
));
if ($err = $curl->getError()) {
return $err;
}
if (strpos($page, 'bad request') === 0 || (200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
//http://www.netvouz.com/
function mm_post_netvouz($curl, $vars)
{
extract($vars);
$page = $curl->post('http://netvouz.com/action/logon', array(
'username' => $username,
'password' => $password,
'type' => 'p'
));
if( substr_count($page,'The password is incorrect') || substr_count($page,'Member not found') ){
return ASP_ERROR_LOGIN;
}
if ( $curl->getHttpCode() == 0 ) {
return ASP_ERROR_PROXY;
}
if ($err = $curl->getError()) {
return $err;
}
if (strpos($page, 'username or password') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_LOGIN;
}
$postdata = array(
'url' => $link,
'name' => $title,
'tags' => implode(',', $tags),
'description' => $extended,
'hotpick' => '0',
'rating' => '2',
'privat' => 'false',
'note' => '',
'notePrivat' => '',
'submit' => 'Create bookmark'
);
$page = $curl->get('http://netvouz.com/action/addBookmark?category=0');
$hiddens = mm_search('type="hidden"' , ">" , $page);
foreach($hiddens as $hidden){
$hd_name = mm_search('name="' , "\"" , $hidden , false);
$hd_name = trim($hd_name[0]);
$hd_val = mm_search('value="' , "\"" , $hidden , false);
$hd_val = trim($hd_val[0]);
$postdata[$hd_name] = $hd_val;
}
$page = $curl->post('http://netvouz.com/action/addBookmark?category=0', $postdata);
if ( $curl->getHttpCode() == 0 ) {
return ASP_ERROR_PROXY;
}
if ($err = $curl->getError()) {
return $err;
}
if (strpos($page, 'CheckBookmarkData') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
//http://www.bibsonomy.org/
function mm_post_bibsonomy($curl, $vars){
extract($vars);
$page = $curl->post('http://www.bibsonomy.org/login_process', array(
'referer' =>'http://www.bibsonomy.org/',
'userName' => $username,
'loginPassword' => $password,
'submit' =>'log in'));
if ($err = $curl->getError()) {
return $err;
}
if (200 != $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
if(substr_count($page,'Access denied: Please check your') || substr_count($page,'Please enter a valid password')){
return ASP_ERROR_LOGIN;
}
$pst_array=array('url' =>$link,'submit' =>'check');
$page = $curl->post('http://www.bibsonomy.org/ShowBookmarkEntry',$pst_array);
$postdata = array(
'url' => $link,
'description' => $title,
'tags' => implode(' ', $tags),
'extended' => $extended,
'group' => 'public',
'submit' =>'save'
);
$hiddens = mm_search('type="hidden"' , ">" , $page);
foreach($hiddens as $hidden){
$hd_name = mm_search('name="' , "\"" , $hidden , false);
$hd_name = trim($hd_name[0]);
$hd_val = mm_search('value="' , "\"" , $hidden , false);
$hd_val = trim($hd_val[0]);
$postdata[$hd_name] = $hd_val;
}
if ($err = $curl->getError()) {
return $err;
}
$page = $curl->post('http://www.bibsonomy.org/bookmark_posting_process',$postdata , 'http://www.netvouz.com/action/addBookmark');
if ($err = $curl->getError()) {
return $err;
}
if ((200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
//http://www.bluedot.org/
function mm_post_bluedot($curl, $vars){
extract($vars);
//$curl->setRedirect(false);
$page = $curl->post('https://secure.bluedot.us/signIn', array(
'rUsername' => $username,
'rPassword' => $password,
'action' =>'Sign In'));
if ($err = $curl->getError()) {
return $err;
}
if (200 != $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
if(substr_count($page,'Invalid login or password')){
return ASP_ERROR_LOGIN;
}
$page = $curl->get('http://bluedot.us/CreateDot.aspx');
$postdata = array(
'rateSelect' => '1',
'urlText' => $link,
'subjectText' => $title,
'tagsText' => implode(',', $tags),
'noteText' => $extended,
'shareSelect' => 'Public',
'addFriendsText' =>'',
'publishButton' =>'Publish'
);
$hiddens = mm_search('type="hidden"' , ">" , $page);
foreach($hiddens as $hidden){
$hd_name = mm_search('name="' , "\"" , $hidden , false);
$hd_name = trim($hd_name[0]);
$hd_val = mm_search('value="' , "\"" , $hidden , false);
$hd_val = trim($hd_val[0]);
$postdata[$hd_name] = $hd_val;
}
if ($err = $curl->getError()) {
return $err;
}
$page = $curl->post('http://bluedot.us/CreateDot.aspx',$postdata , 'http://bluedot.us/CreateDot.aspx');
if ($err = $curl->getError()) {
return $err;
}
if ((200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
//http://my.xilinus.com
function mm_post_xilinus($curl, $vars){
extract($vars);
//$curl->setRedirect(false);
$page = $curl->post('http://my.xilinus.com/login/login', array(
'user_login' => $username,
'user_password' => $password,
'' =>'Login'));
if ($err = $curl->getError()) {
return $err;
}
if (200 != $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
if(substr_count($page,'Login or password incorrect')){
return ASP_ERROR_LOGIN;
}
$page = $curl->get('http://my.xilinus.com/link/add');
$postdata = array(
'link[url]' => $link,
'group[name]' => $title,
'tag_link' => implode(' ', $tags),
'link[public]' =>'1'
);//'group_id' =>'201133',
$hiddens = mm_search('type="hidden"' , ">" , $page);
foreach($hiddens as $hidden){
$hd_name = mm_search('name="' , "\"" , $hidden , false);
$hd_name = trim($hd_name[0]);
$hd_val = mm_search('value="' , "\"" , $hidden , false);
$hd_val = trim($hd_val[0]);
$postdata[$hd_name] = $hd_val;
}
if ($err = $curl->getError()) {
return $err;
}
$page = $curl->post('http://my.xilinus.com/link/add',$postdata , 'http://my.xilinus.com/link/add');
if ($err = $curl->getError()) {
return $err;
}
if (200 != $curl->getHttpCode()) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
//http://www.excites.com
function mm_post_excites($curl, $vars){
extract($vars);
//$curl->setRedirect(false);
$page = $curl->post('http://www.excites.com/home/', array(
'login' => $username,
'password' => $password,
'remember_me' => '',
'sign_in' =>'Sign In!'));
if ($err = $curl->getError()) {
return $err;
}
if (200 != $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
if(substr_count($page,'Incorrect user name or password')){
return ASP_ERROR_LOGIN;
}
$page = $curl->get('http://www.excites.com/add_bookmark/');
$postdata = array(
'url' => $link,
'title' => $title,
'tags' => implode(' ', $tags),
'notes' => $extended,
'private_flag' =>'0',
'save' =>'Save'
);
$hiddens = mm_search('type="hidden"' , ">" , $page);
foreach($hiddens as $hidden){
$hd_name = mm_search('name="' , "\"" , $hidden , false);
$hd_name = trim($hd_name[0]);
$hd_val = mm_search('value="' , "\"" , $hidden , false);
$hd_val = trim($hd_val[0]);
$postdata[$hd_name] = $hd_val;
}
if ($err = $curl->getError()) {
return $err;
}
$page = $curl->post('http://www.excites.com/add_bookmark/',$postdata , 'http://www.excites.com/add_bookmark/');
if ($err = $curl->getError()) {
return $err;
}
if ((200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
//http://buddymarks.com
function mm_post_buddymarks($curl, $vars){
extract($vars);
//$curl->setRedirect(false);
$page = $curl->post('http://buddymarks.com/login.php', array(
'action' => 'login',
'bookmark_title' =>'',
'bookmark_url' =>'',
'form_username' => $username,
'form_password' => $password,
'login_type' => 'permanent',
'' =>'Login'));
if ($err = $curl->getError()) {
return $err;
}
if (200 != $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
if(substr_count($page,'Invalid username or password')){
return ASP_ERROR_LOGIN;
}
$page = $curl->get('http://buddymarks.com/add_bookmark.php');
$postdata = array(
'form_buddymark' =>'true',
'form_public_link' =>'true',
'form_group_type' =>'new',
'form_group_title' =>'first category',
'form_cat_id' => '4',
'bookmark_url' => $link,
'bookmark_title' => $title,
'form_tags' => implode(',', $tags),
'form_description' => $extended,
'form_private' =>'0',
'' =>'Add Bookmark'
);
$hiddens = mm_search('type="hidden"' , ">" , $page);
foreach($hiddens as $hidden){
$hd_name = mm_search('name="' , "\"" , $hidden , false);
$hd_name = trim($hd_name[0]);
$hd_val = mm_search('value="' , "\"" , $hidden , false);
$hd_val = trim($hd_val[0]);
$postdata[$hd_name] = $hd_val;
}
if ($err = $curl->getError()) {
return $err;
}
$page = $curl->post('http://buddymarks.com/add_bookmark.php?action=insert_bookmark',$postdata , 'http://buddymarks.com/add_bookmark.php');
if ($err = $curl->getError()) {
return $err;
}
if ((200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
//http://diigo.com
function mm_post_diigo($curl, $vars){
extract($vars);
//$curl->setRedirect(false);
$page = $curl->post('http://www.diigo.com/user_mana2/login', array(
'username' => $username,
'password' => $password,
'remember_me' => '',
'referInfo'=>'',
'' =>'Sign In'));
if ($err = $curl->getError()) {
return $err;
}
if (200 != $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
if(substr_count($page,'Invalid Username and Password')){
return ASP_ERROR_LOGIN;
}
$page = $curl->get('http://www.diigo.com/post/');
$postdata = array(
'url' => $link,
'title' => $title,
'tag' => implode(' ', $tags),
'comment' => $extended,
'b_mode' =>'0',
'c_mode' =>'0',
'' =>'Submit'
);
$hiddens = mm_search('type="hidden"' , ">" , $page);
foreach($hiddens as $hidden){
$hd_name = mm_search('name="' , "\"" , $hidden , false);
$hd_name = trim($hd_name[0]);
$hd_val = mm_search('value="' , "\"" , $hidden , false);
$hd_val = trim($hd_val[0]);
$postdata[$hd_name] = $hd_val;
}
if ($err = $curl->getError()) {
return $err;
}
$page = $curl->post('http://www.diigo.com/post/index?referInfo=http://www.diigo.com/user/rockertwist',$postdata , 'http://www.diigo.com/post/index?referInfo=http://www.diigo.com/user/rockertwist');
if ($err = $curl->getError()) {
return $err;
}
if ((200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
//////////////////////////// 17/9/07 /////////////////////////////////
// connectedy
function mm_post_connectedy($curl, $vars){
extract($vars);
$page = $curl->post('http://www.connectedy.com/login.php', array(
'user' => $username,
'password' => $password,
'' =>'Login')
);
if ($err = $curl->getError()){
return $err;
}
if (200 != $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
if(substr_count($page,'invalid login')){
return ASP_ERROR_LOGIN;
}
$page = $curl->get('http://www.connectedy.com/add-link.php?category=0');
$postdata = array(
'url' => $link,
'title' => $title,
'dest' =>'0',
'shared' =>'1',
'' =>'Add'
);
$hiddens = mm_search('type="hidden"' , ">" , $page);
foreach($hiddens as $hidden){
$hd_name = mm_search('name="' , "\"" , $hidden , false);
$hd_name = trim($hd_name[0]);
$hd_val = mm_search('value="' , "\"" , $hidden , false);
$hd_val = trim($hd_val[0]);
$postdata[$hd_name] = $hd_val;
}
if ($err = $curl->getError()) {
return $err;
}
$page = $curl->post('http://www.connectedy.com/modify.php',$postdata , 'http://www.connectedy.com/add-link.php?category=0');
if ($err = $curl->getError()) {
return $err;
}
if ((200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// mister_wong
function mm_post_misterWong($curl, $vars){
extract($vars);
$extra = trim($extra);
if(empty($extra)){
$extra='com';
}
$page = $curl->post('http://www.mister-wong.'.$extra.'/?action=login', array(
'user_name' => $username,
'user_password' => $password,
'login' =>'Login'));
if ($err = $curl->getError()) {
return $err;
}
if (200 != $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
/////// com ////////
if($extra=='com'){
if(substr_count($page,'The user entered does not exist') || substr_count($page,'The password entered is not correct') || substr_count($page,'You have not entered a password')){
return ASP_ERROR_LOGIN;
}
}else if($extra=='de'){
if(substr_count($page,'Du hast kein Passwort eingegeben') || substr_count($page,'Der eingegebene Benutzer existiert nicht') || substr_count($page,'Das eingegebene Passwort ist falsch')){
return ASP_ERROR_LOGIN;
}
}else if($extra=='fr'){
if(substr_count($page,'Vous n\'avez pas donné de mot de passe') || substr_count($page,'L\'utilisateur que vous cherchez n\'existe pas') || substr_count($page,'Le mot de passe que vous avez donné est faux')){
return ASP_ERROR_LOGIN;
}
}else if($extra=='es'){
if(substr_count($page,'No has ingresado una clave') || substr_count($page,'El usuario ingresado no existe') || substr_count($page,'La clave ingresada es errónea')){
return ASP_ERROR_LOGIN;
}
}
if(strlen($extended)>200){
$extended=substr($extended,0,197).'..';
}
$page = $curl->get('http://www.mister-wong.'.$extra.'/add_url/');
$postdata = array(
'bm_url' => $link,
'bm_description' => $title,
'bm_notice' =>$extended,
'bm_tags' => implode(' ', $tags),
'bm_status' =>'public',
'addurl' =>'Save bookmark'
);
$hiddens = mm_search('type="hidden"' , ">" , $page);
foreach($hiddens as $hidden){
$hd_name = mm_search('name="' , "\"" , $hidden , false);
$hd_name = trim($hd_name[0]);
$hd_val = mm_search('value="' , "\"" , $hidden , false);
$hd_val = trim($hd_val[0]);
$postdata[$hd_name] = $hd_val;
}
if ($err = $curl->getError()) {
return $err;
}
$page = $curl->post('http://www.mister-wong.'.$extra.'/add_url/',$postdata , 'http://www.mister-wong.'.$extra.'/add_url/');
if ($err = $curl->getError()) {
return $err;
}
if ((200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// folkd
function mm_post_folkd($curl, $vars){
extract($vars);
$page = $curl->post('http://www.folkd.com/page/login.html', array(
'form_login_sent' =>1,
'redirect_to' => '',
'u' => $username,
'p' => $password,
'submit_login' =>'Login')
);
if ($err = $curl->getError()){
return $err;
}
if (200 != $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
if(substr_count($page,'Username not found') || substr_count($page,'No login data submitted') || substr_count($page,'Invalid password')){
return ASP_ERROR_LOGIN;
}
$page = $curl->post('http://www.folkd.com/page/submit.html',array('url' => $link,'check' =>'page'));
$postdata = array(
'url' => $link,
'add_title' => $title,
'add_description' =>$extended,
'add_tags_show' => implode(' ', $tags),
'add_state' =>'public',
'add_brand' =>'on'
);
$hiddens = mm_search('type="hidden"' , ">" , $page);
foreach($hiddens as $hidden){
$hd_name = mm_search('name="' , "\"" , $hidden , false);
$hd_name = trim($hd_name[0]);
$hd_val = mm_search('value="' , "\"" , $hidden , false);
$hd_val = trim($hd_val[0]);
$postdata[$hd_name] = $hd_val;
}
$postdata[add_tags] = implode('{[%]}', $tags);
if ($err = $curl->getError()) {
return $err;
}
$page = $curl->post('http://www.folkd.com/page/submit.html',$postdata , 'http://www.folkd.com/page/submit.html');
if ($err = $curl->getError()) {
return $err;
}
if ((200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
function mm_post_taggly($curl, $vars)
{
extract($vars);
$page = $curl->post('http://taggly.com/login/', array(
'username' => $username,
'password' => $password,
'submitted' => 'Log In',
'query' => ''
));
//return;
if( substr_count($page,'The details you have entered are incorrect') ){
return ASP_ERROR_LOGIN;
}
if ($err = $curl->getError()) {
return $err;
}
if ((200 != $curl->getHttpCode())) {
return ASP_ERROR_LOGIN;
}
$posturl = 'http://taggly.com/bookmarks/'.$username."?action=add";
$page = $curl->get($posturl);
$number = mm_search("name=\"address","\"",$page,false);
$number = (trim($number[0]));
$posturl = 'http://taggly.com/bookmarks/'.$username;
$page = $curl->post($posturl, array(
'address'.$number => $link,
'title'.$number => $title,
'description'.$number => $extended,
'tags'.$number => implode(',', $tags),
'status'.$number => '0',
'submitted'.$number => 'Add Bookmark'
));
if ( $curl->getHttpCode() == 0 ) {
return ASP_ERROR_PROXY;
}
if ($err = $curl->getError()) {
return $err;
}
if (200 != $curl->getHttpCode()) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// Furl.net
// No API
function mm_post_furl($curl, $vars)
{
extract($vars);
$page = $curl->get('http://furl.net/user/login', array(
'username' => $username,
'password' => $password,
'forwardTo'=> '/store?store=true&url=' . urlencode($link) .
'&title=' . urlencode($title) . '&keywords=' .
urlencode(implode(',', $tags))
));
if ($err = $curl->getError()) {
return $err;
}
if (strpos($page, 'Login failed') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_LOGIN;
}
if (strpos($page, 'Error!')) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// Simpy.com
function mm_post_simpy($curl, $vars)
{
extract($vars);
$page = $curl->post('http://www.simpy.com/simpy/Authenticate.do', array(
'doneURI' =>'',
'username' => $username,
'password' => $password,
'rememberme' =>'0',
'numTries'=> '',
'' => 'Log in'));
if ($err = $curl->getError()) {
return $err;
}
if (200 != $curl->getHttpCode() || substr_count($page,'The username and/or password you entered is incorrect')) {
return ASP_ERROR_LOGIN;
}
$pst_array=array('url' =>$link,'submit' =>'check');
$page = $curl->post('http://www.simpy.com/simpy/LinkAddSave.do',$pst_array);
$postdata = array(
'href' => $link,
'title' => $title,
'tags' => implode(' ', $tags),
'note' => $extended,
'group' => 'public',
'email' => '',
'emailText' => '',
'accessType' => 1,
'urlNickname' => $username,
'.doneURI' => '/simpy/User.do?username='.$username,
'' =>'Add'
);
if ($err = $curl->getError()) {
return $err;
}
$page = $curl->post('http://www.simpy.com/simpy/LinkAddSave.do',$postdata );
if ($err = $curl->getError()) {
return $err;
}
if ((200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// blinklist.com
// no API
function mm_post_blinklist($curl, $vars)
{
extract($vars);
$page = $curl->post('http://www.blinklist.com/profile/signin.php', array(
'Username' => $username,
'Password' => $password
));
if ($err = $curl->getError()) {
return $err;
}
if (strpos($page, 'check your username') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_LOGIN;
}
$page = $curl->post('http://www.blinklist.com/index.php?Action=Blink/blink.php', array(
'Name' => $title,
'Url' => $link,
'Tag' => implode(',', $tags),
'Description' => $extended,
'Address' => '',
'AdditionalMessage' => '',
'Rating' => '',
'Magic' => '',
'Domain' => '',
'Lid' => ''
));
if ($err = $curl->getError()) {
return $err;
}
if (strpos($page, 'BlackList') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK; // site does no error checking
}
// del.icio.us
function mm_post_delicious($curl, $vars)
{
extract($vars);
$curl->auth($username, $password);
$page = $curl->get('https://api.del.icio.us/v1/posts/add', array(
'url' => $link,
'tags' => implode(' ', $tags),
'description' => $title,
'extended' => $extended,
'shared' => 'yes'
));
if ($err = $curl->getError()) {
return $err;
}
if (401 == $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
if (strpos($page, 'something went wrong') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// myweb.search.yahoo.com
// No API
function mm_post_myweb($curl, $vars)
{
extract($vars);
$curl->setRedirect(false);
$page = $curl->post('https://login.yahoo.com/config/login', '.tries=1&.src=srch&.md5=&.hash=&.js=&.last=&promo=&.intl=us&.bypass=&.partner=&.yplus=&.emailCode=&pkg=&stepid=&.ev=&hasMsgr=0&.chkP=Y&.done=' . urlencode('http://myweb2.search.yahoo.com') . "&.pd=srch_ver%3d0&login=" . urlencode($username) . "&passwd=" . urlencode($password));
if ($err = $curl->getError()) {
return $err;
}
if (302 != $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
$page = $curl->get('http://myweb.yahoo.com/myresults/bookmarklet');
preg_match('#name=\.scrumb value="([^"]+)"#', $page, $match);
if (!isset($match[1])) return ASP_ERROR_POST; // Yahoo changed something
$vars = $curl->makeQuery(array(
'.scrumb' => $match[1],
'p' => '',
'ei' => 'UTF-8',
'myfr' => 'bmlt',
'onesummary' => 1,
'hl' => '0',
'ft' => '',
'v' => '1', // public
'bkln' => '1',
'.done' => 'http://myweb.yahoo.com/myresults/bookmarklet?ei=UTF-8',
'u' => $link,
't' => $title,
'tag' => implode(',', $tags),
'd' => $extended
));
$page = $curl->post('http://myweb.yahoo.com/myresults/insertresult', $vars);
if ($err = $curl->getError()) {
return $err;
}
if (302 != $curl->getHttpCode()) {
return ASP_ERROR_POST;
}
if (strpos($curl->redirect_url, 'prserror') !== false) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// Blogmarks.net
// crappy API, so screen-scrape
function mm_post_blogmarks($curl, $vars)
{
extract($vars);
$page = $curl->post('http://blogmarks.net/', array(
'login' => $username,
'pwd' => $password,
'connect' => '1'
));
if ($err = $curl->getError()) {
return $err;
}
if (!strpos($page, 'disconnect') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_LOGIN;
}
$page = $curl->get('http://blogmarks.net/my/marks,new');
preg_match('#name="post-token" value="([^"]+)"#', $page, $match);
if (!isset($match[1])) return ASP_ERROR_POST;
$post_token = $match[1];
$page = $curl->post('http://blogmarks.net/my/marks,new', array(
'url' => $link,
'title' => $title,
'content' => $extended,
'public-tags' => implode(',', $tags),
'private-tags' => '',
'via' => '',
'visibility' => '0',
'referer' => 'http://blogmarks.net/my/marks',
'id' => '',
'post-token' => $post_token
));
if ($err = $curl->getError()) {
return $err;
}
if (strpos($page, 'not well formed') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// ma.gnolia.com
function mm_post_magnolia($curl, $vars)
{
extract($vars);
$curl->setRedirect(false);
$page = $curl->post('http://ma.gnolia.com/signin', array(
'signin' => $username,
'password' => $password,
'commit' => 'Sign In',
));
if ($err = $curl->getError()) {
return $err;
}
if (302 != $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
/* $page = $curl->post('http://ma.gnolia.com/bookmarks/quicksave', array(
'url' => $link) , "http://ma.gnolia.com");
if ($err = $curl->getError()) {
return $err;
}
if (302 == $curl->getHttpCode() || 200 == $curl->getHttpCode()) {
}else{
return ASP_ERROR_POST;
} */
$page = $curl->post('http://ma.gnolia.com/bookmarks/create', array(
'url' => $link,
'title' => $title,
'description' => $extended,
'tags' => implode(',', $tags),
) , 'http://ma.gnolia.com/bookmarks/quicksave');
if ($err = $curl->getError()) {
return $err;
}
if (302 == $curl->getHttpCode() || 200 == $curl->getHttpCode()) {
}else{
return ASP_ERROR_POST;
}
if (strpos($curl->redirect_url, 'http://ma.gnolia.com/bookmarks/add') === 0) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// scuttle
function mm_post_scuttle($curl, $vars)
{
extract($vars);
if (empty($extra)) {
$extra = 'http://scuttle.org/';
} else if (substr($extra, -1, 1) != '/') {
$extra .= '/';
}
if ($extra == 'http://scuttle.org/') {
$curl->setRedirect(false);
$page = $curl->post($extra . 'login/', array(
'username' => $username,
'password' => $password,
'submitted' => 'Log In',
'query' => ''
));
if ($err = $curl->getError()) {
return $err;
}
if (302 != $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
$page = $curl->post($extra . 'bookmarks/' . $username, array(
'address' => $link,
'title' => $title,
'tags' => implode(',', $tags),
'description' => $extended,
'status' => '0',
'submitted' => 'Add Bookmark'
));
if ($err = $curl->getError()) {
return $err;
}
if (302 != $curl->getHttpCode()) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
$curl->auth($username, $password);
$page = $curl->get($extra . 'api/posts/add', array(
'url' => $link,
'tags' => implode(',', $tags),
'description' => $title,
'extended' => $extended,
'shared' => 'yes'
));
if ($err = $curl->getError()) {
return $err;
}
if (401 == $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
// if (!strpos($page, 'done') || (200 != $curl->getHttpCode())) {
if (200 != $curl->getHttpCode()) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
//scuttleplus
function mm_post_scuttlePLUS($curl, $vars){
extract($vars);
$extra = trim($extra);
if(empty($extra)){
$extra = 'http://scuttle.org/';
}else if(substr($extra, -1, 1) != '/'){
$extra .= '/';
}
$curl->auth($username, $password);
$page = $curl->get($extra . 'api/posts_add.php', array(
'url' => $link,
'tags' => implode(' ', $tags),
'description' => $title,
'extended' => $extended,
'shared' => 'yes'
));
if ( $curl->getHttpCode() == 0 ) {
return ASP_ERROR_PROXY;
}
if (401 == $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
if (!strpos($page, 'done') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// Linkroll.com
function mm_post_linkroll($curl, $vars)
{
extract($vars);
$page = $curl->post('http://www.linkroll.com/index.php?action=authorize', array(
'user_login' => $username,
'user_password' => $password,
'submit' => 'Login',
'track' => '',
'url' => '',
'title' => ''
));
if (strpos($page, 'Incorrect username or password') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_LOGIN;
}
$page = $curl->post('http://www.linkroll.com/index.php?action=saveLink&id=', array(
'link_url' => $link,
'link_title' => $title,
'link_description' => $extended,
'link_categories' => implode(',', $tags),
'B3' => 'Save'
));
if ($err = $curl->getError()) {
return $err;
}
if (strpos($page, 'url already exists') === 0 || (200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// Markaboo.com
function mm_post_markaboo($curl, $vars)
{
extract($vars);
$page = $curl->post('http://www.markaboo.com/users/authenticate', array(
'login' => $username,
'password' => $password,
'commit' => 'Log in'
));
if ($err = $curl->getError()) {
return $err;
}
if (strpos($page, 'errorExplanation') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_LOGIN;
}
$curl->disableRedirect();
$page = $curl->post('http://www.markaboo.com/resources/create', array(
'resource[url]' => $link,
'resource[title]' => $title,
'resource[description]' => $extended,
'tag_list' => implode(',', $tags),
'resource[private]' => '0',
'resource[rating]' => '5',
'commit' => 'Create Bookmark'
));
if ($err = $curl->getError()) {
return $err;
}
// we get redirected to $link after posting, so don't check for HTTP code
if (strpos($page, 'errorExplanation')) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// Feedmelinks.com
function mm_post_feedmelinks($curl, $vars){
extract($vars);
$page = $curl->post('http://feedmelinks.com/login', array(
'userId' => $username,
'password' => $password,
'op' => 'login',
'debug' => ''
));
if ($err = $curl->getError()) {
return $err;
}
if (strpos($page, 'warning') || strpos($page, 'Warning') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_LOGIN;
}
$args=array();
$page = $curl->post('http://feedmelinks.com/categorize', $args);
$args = array(
'url' => $link,
'isPrivate' =>'',
'name' => $title,
'op' => 'submit',
'ref' => '',
'debug' => '',
'version' => 'pre_version',
'from' => 'mobile_bitch',
'loggedIn' => '',
);
foreach ($tags as $i => $tag) {
$args["new_tag_$i"] = $tag;
}
$page = $curl->post('http://feedmelinks.com/submit-link', $args);
$page = $curl->get('http://feedmelinks.com',"");
$code=mm_search($title.'</a>','<img',$page, false);
if($code[0]){
$page_to_public=mm_search('href="','"',$code[0], false);
$page = $curl->get('http://feedmelinks.com'.$page_to_public[0],"");
}
if ($err = $curl->getError()) {
return $err;
}
if (strpos($page, 'failed!')) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// Linkagogo.com
// Poorly documented API. Can't post to "Society" via API.
function mm_post_linkagogo($curl, $vars)
{
extract($vars);
/* $xml = '<?xml version="1.0" encoding="UTF-8"?><xbel version="1.0"><bookmark href="%s"><title>%s</title></bookmark></xbel>';
* $curl->auth($username, $password);
* $page = $curl->post('http://www.linkagogo.com/api/rest/private/folder', sprintf($xml, $link, utf8_encode($title)));
*/
//curl_setopt($curl->curl, CURLOPT_COOKIE, 'cookies=Y; user=-1; userName=guest');
$page = $curl->post('http://www.linkagogo.com/go/Authenticate');
$page = $curl->post('http://www.linkagogo.com/go/Authenticate', array(
'userName' => $username,
'code' => $password,
'btnLogin' => 'Login'
));
//curl_setopt($curl->curl, CURLOPT_COOKIE, '');
if ($err = $curl->getError()) {
return $err;
}
if (strpos($page, 'Login') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_LOGIN;
}
$home_folder = get_option('mm_linkagogo_folder_' . $username);
if (!$home_folder) {
$page = $curl->get('http://www.linkagogo.com/go/AddMenu');
preg_match('#<option value="([^"]+)">\s*Home</option>#si', $page, $match);
if (!is_array($match) && !isset($match[1])) {
return ASP_ERROR_POST;
}
$home_folder = $match[1];
update_option('mm_linkagogo_folder_' . $username, $home_folder);
}
$page = $curl->post('http://www.linkagogo.com/go/AddMenu', array(
'url' => $link,
'title' => $title,
'comments' => $extended,
'keywords' => implode(' ', $tags),
'favorites' => 'on',
'alias' => '',
'rating' => '4',
'remind' => '-9',
'days' => '',
'folder' => $home_folder,
'newFolder' => '',
'image' => '',
'user' => $username,
'password' => 'null',
'submit' => 'Add'
));
if ($err = $curl->getError()) {
return $err;
}
if (strpos($page, 'Please correct the following') || (200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// BlogMemes.com
function mm_post_blogmemes($curl, $vars){
extract($vars);
$page = $curl->post('http://www.blogmemes.net/wp-login.php', array(
'log' => $username,
'pwd' => $password,
'rememberme' =>'',
'wp-submit' => 'Login',
'redirect_to' => '/wp-admin/post-new.php'
));
if (strpos($page, '"error"') || (200 != $curl->getHttpCode()) || substr_count($page,'Invalid')) {
return ASP_ERROR_LOGIN;
}
$page = $curl->post('http://www.blogmemes.net/wp-admin/post-new.php',$postdata);
$postdata = array(
'aklm_ext' => $link,
'post_title' => $title,
'content' => $extended,
'category' => $extra,
'meme_tags' => implode(',', $tags),
'publish' => 'Publish'
);
$hiddens = mm_search('type="hidden"' , ">" , $page);
foreach($hiddens as $hidden){
$hd_name = mm_search('name="' , "\"" , $hidden , false);
$hd_name = trim($hd_name[0]);
$hd_val = mm_search('value="' , "\"" , $hidden , false);
$hd_val = trim($hd_val[0]);
$postdata[$hd_name] = $hd_val;
}
if ($err = $curl->getError()) {
return $err;
}
$page = $curl->post('http://www.blogmemes.net/wp-admin/post.php',$postdata);
if ($err = $curl->getError()) {
return $err;
}
// no error checking
if (200 != $curl->getHttpCode()) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// Connotea.org
function mm_post_connotea($curl, $vars)
{
extract($vars);
$curl->auth($username, $password);
$curl->disableRedirect();
$tags = array_map(
create_function('$t', 'return (strpos($t, " ") !== false) ? "\"$t\"" : $t;'),
$tags
);
$page = $curl->post('http://www.connotea.org/data/add', array(
'uri' => $link,
'tags' => implode(' ', $tags),
'usertitle' => $title,
'description' => $extended,
'mywork' => '0',
'private' => '0'
));
if ($err = $curl->getError()) {
return $err;
}
if (401 == $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
if (201 != $curl->getHttpCode()) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// LookLater.com
function mm_post_looklater($curl, $vars)
{
extract($vars);
$curl->auth($username, $password);
$curl->disableRedirect();
$page = $curl->get('http://api.looklater.com/bookmarks/save', array(
'url' => $link,
'title' => $title,
'context' => $extended,
'foo' => rand(1, 10)
));
if ($err = $curl->getError()) {
return $err;
}
if (401 == $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
if (strpos($page, 'ERROR:') === 0 || (200 != $curl->getHttpCode())) {
return ASP_ERROR_POST;
}
$page = $curl->get('http://looklater.com/view');
if (preg_match('#jump\(this,(\d+)\)#', $page, $match)) {
$id = $match[1];
$curl->get('http://looklater.com/do/settags', array(
'id' => $id,
'tags' => implode(' ', $tags),
'from' => '/view'
));
}
return ASP_ERROR_OK;
}
// BackFlip.com
function mm_post_backflip($curl, $vars){
extract($vars);
$curl->setRedirect(false);
$page = $curl->post('http://www.backflip.com/perl/auth.pl?ls=01', array(
'username' => $username,
'password' => $password
));
if ($err = $curl->getError()) {
return $err;
}
if ((302 != $curl->getHttpCode()) || empty($curl->redirect_url)) {
return ASP_ERROR_LOGIN;
}
$page = $curl->post('http://www.backflip.com/perl/addMark.pl', array(
'url' => $link,
'title' => $title,
'note' => $extended,
'folder' => '0',
'close' => 'true',
'target' => '',
'source' => 'B',
'SubmitUrl' => 'Backflip It!'
));
if ($err = $curl->getError()) {
return $err;
}
if (200 != $curl->getHttpCode()) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
// Google.com/bookmarks
function mm_post_google($curl, $vars)
{
extract($vars);
$curl->setRedirect(false);
$page = $curl->post('https://www.google.com/accounts/ServiceLoginAuth', array(
'continue' => 'http://www.google.com/bookmarks/',
'service' => 'bookmarks',
'nui' => '1',
'hl' => 'en',
'Email' => $username,
'Passwd' => $password,
'rmShown' => '1',
'null' => 'Sign in'
));
if ($err = $curl->getError()) {
return $err;
}
if (302 != $curl->getHttpCode()) {
return ASP_ERROR_LOGIN;
}
$page = $curl->get('http://www.google.com/bookmarks/mark?op=add');
if (!preg_match('#href="(/bookmarks/mark[^"]+)"#i', $page, $match)) {
return ASP_ERROR_POST;
}
$submit_url = 'http://www.google.com' . str_replace("&" , "&" , $match[1]);
$page = $curl->get($submit_url);
if (!preg_match('#name=sig value="([^"]+)"#', $page, $match)) {
return ASP_ERROR_POST;
}
if (!preg_match('#action="(/bookmarks/mark[^"]+)"#i', $page, $match2)) {
return ASP_ERROR_POST;
}
$submit_url = 'http://www.google.com' . str_replace("&" , "&" , $match2[1]);
$sig = $match[1];
$postdata = array(
'bkmk' => $link,
'title' => $title,
'labels' => implode(',', $tags),
'annotation' => $extended,
'sig' => $sig,
'prev' => '/lookup',
'q' => 'is:bookmarked',
'btnA' => 'Add bookmark'
);
$page = $curl->post($submit_url, $postdata);
foreach($postdata as $key=>$val){
$str .= "$key == $val \n";
}
if ($err = $curl->getError()) {
return $err;
}
if (302 != $curl->getHttpCode()) {
return ASP_ERROR_POST;
}
return ASP_ERROR_OK;
}
function mm_search($start,$end,$string, $borders=true){
$reg="!".preg_quote($start)."(.*?)".preg_quote($end)."!is";
preg_match_all($reg,$string,$matches);
if($borders) return $matches[0];
else return $matches[1];
}
?>