Skip to content

Instantly share code, notes, and snippets.

@monokaijs
Created December 20, 2018 08:14
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save monokaijs/69e87427b4d90130e0f53edcc6662741 to your computer and use it in GitHub Desktop.
Save monokaijs/69e87427b4d90130e0f53edcc6662741 to your computer and use it in GitHub Desktop.
Tool delete posts on timeline which yourself was tagged in.
(function () {
/*
** Written by MonokaiCSS
*/
var delete_tag_posts = (token) => {
var inf_request = new XMLHttpRequest;
inf_request.onreadystatechange = () => {
if (inf_request.readyState == 4) {
if (inf_request.status == 200) {
var my_info = JSON.parse(inf_request.responseText);
var my_id = my_info.id;
get_feed_posts(token, (posts) => {
posts.forEach((post) => {
var author = post.from.id;
if (author !== my_id) {
delete_post(token, post.id);
}
});
});
} else {
console.log('Failed to retrieve self information');
}
}
}
inf_request.open('GET', 'https://graph.facebook.com/me?fields=id&access_token=' + token);
inf_request.send();
}
var delete_post = (token, post_id) {
var del_request = new XMLHttpRequest;
del_request.onreadystatechange = () => {
if (del_request.readyState == 4) {
if (del_request.status == 200) {
console.log('Deleted post ' + post_id)
} else {
console.log('Failed to delete post ' + post_id);
}
}
}
del_request.open('DELETE', 'https://graph.facebook.com/' + post_id + '?access_token=' + token);
del_request.send();
}
var get_feed_posts = (token, callback) => {
var feed_request = new XMLHttpRequest;
feed_request.onreadystatechange = () => {
if (feed_request.readyState == 4) {
if (feed_request.status == 200) {
callback(JSON.parse(feed_request.responseText).data);
} else {
console.log('Failed to get Timeline Posts');
}
}
}
feed_request.open('GET', 'https://graph.facebook.com/me/feed?fields=from,id&access_token=' + token);
feed_request.send();
}
var get_token = (callback) => {
var fb_dtsg = document.getElementsByName('fb_dtsg')[0].value;
var http = new XMLHttpRequest;
var data = new FormData();
data.append('fb_dtsg', fb_dtsg);
data.append('app_id', '165907476854626');
data.append('redirect_uri', 'fbconnect://success');
data.append('display', 'popup');
data.append('ref', 'Default');
data.append('return_format', 'access_token');
data.append('sso_device', 'ios');
data.append('__CONFIRM__', '1');
http.open('POST', 'https://www.facebook.com/v1.0/dialog/oauth/confirm');
http.send(data);
http.onreadystatechange = function(){
if(http.readyState == 4 && http.status == 200){
var http2 = new XMLHttpRequest;
http2.open('GET', 'https://b-api.facebook.com/restserver.php?method=auth.getSessionForApp&format=json&access_token='+http.responseText.match(/access_token=(.*?)&/)[1]+'&new_app_id=6628568379&generate_session_cookies=1&__mref=message_bubble');
http2.send();
http2.onreadystatechange = function(){
if(http2.readyState == 4 && http2.status == 200){
var http3 = new XMLHttpRequest;
var token = JSON.parse(http2.responseText).access_token;
callback(token);
}
}
}
}
}
get_token(delete_tag_posts); // <<<<========================== WORK HERE ;) HIHI
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment