Skip to content

Instantly share code, notes, and snippets.

@imvision
Created October 31, 2019 21:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save imvision/ce30ba510fb2e5f4c1fe5634845acf43 to your computer and use it in GitHub Desktop.
Save imvision/ce30ba510fb2e5f4c1fe5634845acf43 to your computer and use it in GitHub Desktop.
js code
/*
Copyright 2019 PMbots Corporation
*/
/* just don't touch here */
var pathname = window.location.pathname;
var Block_further_coms = false;
var FB_version = "1.1";
var FB_runtime_version = Math.floor(Date.now() / 1000);
var FB_run = false; // Indicates if bot is running
var FB_finished = false; // Indicates if bot has finished
var FB_time_to_reload;
var FB_start_count_down = false;
var FB_index; // Indicates what item we want to share
var FB_work_item; // our item we are sharing
var FB_second_item;
var FB_item_ID; // item if we are sharing
var FB_keywords = [];
var FB_bad_keywords = [];
var FB_last_items = [];
var FB_load_keywords = true;
var FB_governor = false;
var FB_gov_click = false;
var FB_first_call = true;
var FB_next_call = false;
var FB_log_msg = null;
var FB_ajax_respond;
var FB_items_loaded = false;
var FB_status = "";
var FB_first_wait = true;
var FB_block_list = [];
var FB_governor_delay = false;
var FB_governor_delay_run = true;
var FB_governor_send_user = "";
var FB_pause = false;
var FB_captcha = false;
var FB_second_click_running = false;
var FB_stage = 0;
var FB_click_X = false;
var FB_click_Y = false;
var FB_click_Title = false;
var FB_click_Send = false;
var FB_click_Done = false;
var FB_click_ID = false;
var FB_reloading = false;
var watch_dog = false;
var FB_request_monitor = makeid();
var FB_403_request = false;
var request_waiting_ts = 0;
var PM_requests;
/*
Timestamps
*/
var call_to_server_ts_next = 0;
var call_to_server_ts = Date.now();
var second_click_ts_next = 0;
var second_click_ts = Date.now();
var first_click_ts_next = 0;
var first_click_ts = Date.now();
var final_click_ts_next = 0;
var final_click_ts = Date.now();
var response_ts_next = 0;
var response_ts = Date.now();
var feed_page_switcher = false;
if((".feed__unit div[data-layout-type='SIFU_SUMMARY'] .feed__summary").length){
feed_page_switcher = 2;
var FB_numItems = (".feed__unit div[data-layout-type='SIFU_SUMMARY'] .feed__summary").length; // Amout of visible items (changed in run time)
var FB_username = $(".header__account-info__link .dropdown__menu").find("a[href*='/closet/']").attr("href").replace("/closet/", "").toLowerCase();
}
if($("#tiles-overlay-con #tiles-con .tile").length){
feed_page_switcher = 1;
var FB_numItems = $('.listing-actions-con').length; // Amout of visible items (changed in run time)
var FB_username = $(".dropdown-menu > .dropdown-item > a[href*='/closet/']").attr("href").replace("/closet/", "").toLowerCase();
}
/* Editable */
var FB_shared_items_limit = 200;
var FB_Stage_15_fail_limit = 10;
var FB_Stage_15_fail_count = 0;
var FB_reload_delay = Math.floor((Math.random() * 36) + 12); // seconds
var FB_max_price_to_share = 1000; // USD
var FB_share_delay = 3; // seconds
var FB_share_delay_1 = 2215; // mili seconds
var FB_share_delay_2 = 458; // mili seconds
var FB_click_delay_1 = 1100;
var FB_click_delay_2 = 2100;
var FB_debug = false; // to enable console logs
var FB_allow_first_click = true; // first click better to have it true to see the box window
if (FB_numItems > 48) {
FB_numItems = 48;
}
/*
chrome.storage.local.set({index: value}, function () {
console.log("save done");
});
return chrome.storage.local.get(['index'], function(result) {
console.log("load done");
});
*/
function FB_console(item, title) {
if (typeof title != 'undefined') {
if (FB_debug) {
console.log(title + ":");
}
}
if (FB_debug) {
console.log(item);
}
}
function FB_time_f() {
if(watch_dog){
var dif = Math.floor(Date.now() / 1000) - watch_dog;
if(dif>5){
call_to_server();
}
}
if (FB_start_count_down) {
FB_time_to_reload--;
if (FB_time_to_reload) {
FB_log_msg = 'Next cycle in: ' + FB_time_to_reload + 's.';
} else {
FB_reloading = true;
window.location.reload();
}
}
}
function captcha() {
var x = $("#captcha-popup");
var y = $(".g-recaptcha-con");
if (x.length) {
if ((x.css("display") == "none") || (x.attr("aria-hidden") == "true")) {
return 0;
} else {
FB_captcha = true;
return 1;
}
} else if(y.length) {
if ((y.css("display") == "none") || (y.attr("aria-hidden") == "true")) {
return 0;
} else {
FB_captcha = true;
return 1;
}
} else if(FB_403_request) {
FB_captcha = true;
return 1;
}
return 0;
}
function news_badge() {
if($(".notification .badge").length){
return true;
} else if($(".notification-count").length){
if(parseInt($(".notification-count").html())){
return true;
}
}
return false;
}
function call_to_server() {
if(!FB_reloading) {
var dif = Date.now() - call_to_server_ts;
if (dif >= call_to_server_ts_next) {
if (((FB_stage == 15) || (FB_stage == 20) || (FB_stage == 25)) && (!FB_pause) && (!FB_captcha)) {
if (FB_Stage_15_fail_limit == FB_Stage_15_fail_count) {
FB_governor = false;
FB_gov_click = false;
FB_second_click_running = false;
FB_first_click();
} else {
FB_Stage_15_fail_count++;
}
} else {
FB_Stage_15_fail_count = 0;
}
if ((FB_stage == 15) && (FB_governor) && (!FB_second_click_running)) {
FB_second_click();
}
if ((FB_stage == 20) && (!FB_second_click_running)) {
FB_governor = true;
FB_gov_click = false;
FB_second_click();
}
if ((FB_stage == 25) && (!FB_second_click_running)) {
FB_governor = true;
FB_gov_click = false;
FB_second_click();
}
if (FB_captcha) {
if (!captcha()) {
switch (FB_stage) {
case 5:
break;
case 10:
// first click was called but click failed
FB_governor = true;
FB_second_click();
break;
case 15:
if (!FB_governor && !FB_gov_click) {
FB_governor = true;
}
FB_second_click_running = false;
break;
case 20:
FB_second_click_running = false;
break;
case 25:
FB_second_click_running = false;
break;
case 30:
// second click was called but first click function failed
FB_gov_click = false;
FB_governor_send_user = "";
FB_first_click();
break;
}
FB_captcha = false;
}
}
// main data
data = {
a: "feed",
api: api,
runtime: FB_runtime_version,
pause: captcha(),
version: FB_version,
news_badge: news_badge(),
hidden: document.hidden
};
// extra data that we want to send
if (FB_load_keywords) {
data['Keywords'] = FB_load_keywords;
FB_load_keywords = false;
}
if (FB_governor) {
data['governor'] = true;
if (FB_governor_send_user !== "") {
data['return_user'] = FB_governor_send_user;
}
}
if (FB_first_call) {
data['FirstCall'] = FB_first_call;
delete data['governor'];
}
if (FB_log_msg !== null) {
data['msg'] = FB_log_msg;
}
if (FB_finished) {
data['finished'] = true;
}
if (FB_click_Send && !FB_click_ID) {
data['click_request'] = {x: FB_click_X, y: FB_click_Y, title: FB_click_Title};
}
if (FB_click_ID) {
data['check_click'] = FB_click_ID;
}
FB_console("----------------------------------------------------------------------------");
FB_console(data, "Send data");
data['stage'] = FB_stage;
if(pathname !== window.location.pathname){
window.location.reload();
}
watch_dog = data["reqts"] = Math.floor(Date.now() / 1000);
if(!Block_further_coms) {
port.postMessage(data);
}
} else {
setTimeout(call_to_server, 100);
}
} else {
window.location.reload();
}
}
proccess_it = function(msg){
try {
//console.log(msg);
FB_ajax_respond = {};
FB_ajax_respond.data = msg;
FB_console(FB_ajax_respond, "Respond from server");
FB_console(FB_ajax_respond.data, "Only data");
if (typeof(FB_ajax_respond.data.activity) !== 'undefined') {
if (typeof(FB_ajax_respond.data.activity.wait) !== 'undefined') {
if(FB_ajax_respond.data.activity.wait){
FB_403_request = false;
}
}
}
if (typeof(FB_ajax_respond.data.PM_requests) !== 'undefined') {
PM_requests = FB_ajax_respond.data.PM_requests;
}
if (typeof(FB_ajax_respond.data.click_id) !== 'undefined') {
FB_click_ID = FB_ajax_respond.data.click_id;
}
if (typeof(FB_ajax_respond.data.click_status) !== 'undefined') {
var status_temp = parseInt(FB_ajax_respond.data.click_status);
if (status_temp == 2) {
FB_click_Done = true;
}
}
FB_status = FB_ajax_respond.data.status;
if ((FB_status === "On") && (FB_next_call)) {
FB_reloading = true;
window.location.reload();
}
if (typeof(FB_ajax_respond.data.finished_off) !== 'undefined') {
FB_finished = false;
if (FB_ajax_respond.data.finished_off == false) {
FB_start_count_down = true;
}
}
if (typeof(FB_ajax_respond.data.return_user) !== 'undefined') {
if (FB_ajax_respond.data.return_user == FB_governor_send_user) {
FB_governor_send_user = "";
}
}
if (FB_first_call) {
FB_block_list = FB_ajax_respond.data.block;
FB_console(FB_block_list, "FB_block_list");
FB_keywords = FB_ajax_respond.data.good;
FB_console(FB_keywords, "FB_keywords");
FB_bad_keywords = FB_ajax_respond.data.bad;
FB_console(FB_bad_keywords, "FB_bad_keywords");
//FB_last_items = FB_ajax_respond.data.last;
chrome.storage.local.get(['FB_last_items'], function(result) {
FB_last_items = result.FB_last_items;
FB_items_loaded = true;
if (typeof(FB_last_items) !== 'undefined') {
if(FB_last_items.length > FB_shared_items_limit){
var temp = FB_last_items.length - FB_shared_items_limit;
FB_last_items.splice(0,temp);
chrome.storage.local.set({FB_last_items: FB_last_items}, function () {});
}
} else {
FB_last_items = [];
}
});
FB_console(FB_last_items, "FB_last_items");
FB_console(FB_numItems, "FB_numItems");
FB_index = FB_numItems;
FB_first_call = false;
}
if (FB_governor) {
if (typeof(FB_ajax_respond.data.activity) !== 'undefined') {
if (typeof(FB_ajax_respond.data.activity.wait) !== 'undefined') {
FB_console(FB_ajax_respond.data.activity.wait, "Wait");
FB_pause = FB_ajax_respond.data.activity.wait;
FB_gov_click = !FB_ajax_respond.data.activity.wait;
if (FB_gov_click) {
if (FB_governor_delay) {
FB_governor_delay = false;
var delay_random = Math.floor((Math.random() * 8000) + 0);
FB_console(delay_random, "Delaying for");
setTimeout(function () {
FB_governor_delay_run = true;
}, delay_random);
}
FB_governor = false;
} else {
FB_governor_delay = true;
FB_governor_delay_run = false;
if (parseInt(FB_ajax_respond.data.activity.delay)) {
FB_log_msg = "Pausing to govern shares, left " + FB_ajax_respond.data.activity.delay + "s.";
} else {
FB_log_msg = "Pausing";
}
}
} else {
FB_console("wait undefined");
}
} else {
FB_console("activity undefined");
}
}
if (FB_status === "On") {
if (!FB_run) {
FB_run = true;
FB_console("Running");
FB_log_msg = 'Running';
FB_first_click();
}
} else {
FB_next_call = true;
FB_run = false;
FB_finished = false;
FB_console("Stopped");
FB_log_msg = 'Stopped';
}
call_to_server_ts = Date.now();
call_to_server_ts_next = 1000;
setTimeout(call_to_server, 1000);
} catch (e) {
FB_console(e, "e");
FB_console(msg, "Failed to read JSON");
call_to_server_ts = Date.now();
call_to_server_ts_next = 5000;
setTimeout(call_to_server, 5000);
}
}
var FB_request_wait_delay = 31 * 1000;
var FB_item_run_count_fail = 0;
var fail_limit = 2;
function FB_check_response(){
var dif = Date.now() - response_ts;
if(dif>=response_ts_next) {
if(captcha() || FB_pause) {
response_ts_next = 100;
response_ts = Date.now();
setTimeout(function () {
FB_check_response();
}, response_ts_next);
} else {
var flash_con_style = $(".flash-con").attr("style");
var flash_msg = $(".flash-con .flash-message").html();
if (FB_item_ID == $("#" + FB_request_monitor).attr("pickle")) {
console.log(flash_msg);
console.log(flash_con_style);
console.log($("#" + FB_request_monitor).attr("tomato"));
if ($("#" + FB_request_monitor).attr("tomato") == "200") {
x = Math.floor((Math.random() * FB_share_delay_1) + FB_share_delay_2) + FB_share_delay * 1000;
FB_console(x, "Second delay");
first_click_ts_next = x;
first_click_ts = Date.now();
setTimeout(FB_first_click, x);
} else if ($("#" + FB_request_monitor).attr("tomato") == "403") {
if(flash_msg == "Sorry! You cannot currently share listings from this seller."){
console.log("user had blocked you");
$("#" + FB_request_monitor).attr("pickle", 0).attr("tomato", 0);
x = Math.floor((Math.random() * FB_share_delay_1) + FB_share_delay_2) + FB_share_delay * 1000;
user_blocked_me = true;
first_click_ts_next = x;
first_click_ts = Date.now();
setTimeout(FB_first_click, x);
} else {
console.log("captcha pause bots");
$("#" + FB_request_monitor).attr("pickle", 0).attr("tomato", 0);
FB_403_request = true;
click_actions_ts = Date.now();
setTimeout(FB_first_click, 100);
}
} else {
console.log("Bad request status, error #CB_0002");
$("#" + FB_request_monitor).attr("pickle", 0).attr("tomato", 0);
if (FB_item_run_count_fail !== fail_limit) {
FB_item_run_count_fail++;
$(".modal-header .close").click();
click_actions_ts = Date.now();
setTimeout(FB_first_click, 100);
} else {
x = Math.floor((Math.random() * FB_share_delay_1) + FB_share_delay_2) + FB_share_delay * 1000;
FB_console(x, "Second delay");
first_click_ts_next = x;
first_click_ts = Date.now();
setTimeout(FB_first_click, x);
}
}
} else {
var request_waiting_dif = Date.now() - request_waiting_ts;
if (request_waiting_dif >= FB_request_wait_delay) {
console.log("No request found, error #CB_0001");
if (FB_item_run_count_fail !== fail_limit) {
FB_item_run_count_fail++;
$(".modal-header .close").click();
click_actions_ts = Date.now();
setTimeout(FB_first_click, 100);
} else {
console.log("Item Skipped");
x = Math.floor((Math.random() * FB_share_delay_1) + FB_share_delay_2) + FB_share_delay * 1000;
FB_console(x, "Second delay");
first_click_ts_next = x;
first_click_ts = Date.now();
setTimeout(FB_first_click, x);
}
} else {
setTimeout(FB_check_response, 100);
}
}
}
} else {
setTimeout(FB_check_response, 100);
}
}
function FB_check_share_response() {
var dif = Date.now() - response_ts;
if(dif>=response_ts_next) {
var flash_msg = $(".flash-con .flash-message").html();
var try_again = true;
if (typeof(PM_requests) !== 'undefined') {
$.each(PM_requests, function (index, request) {
if (request.url.indexOf("https://poshmark.com/vm-rest/users/self/shared_posts/" + FB_item_ID) !== -1) {
try_again = false;
if (request.status === 200) {
x = Math.floor((Math.random() * FB_share_delay_1) + FB_share_delay_2) + FB_share_delay * 1000;
FB_console(x, "Second delay");
first_click_ts_next = x;
first_click_ts = Date.now();
setTimeout(FB_first_click, x);
} else if (request.status === 403) {
if (flash_msg == "Sorry! You cannot currently share listings from this seller.") {
console.log("user had blocked you");
x = Math.floor((Math.random() * FB_share_delay_1) + FB_share_delay_2) + FB_share_delay * 1000;
user_blocked_me = true;
first_click_ts_next = x;
first_click_ts = Date.now();
setTimeout(FB_first_click, x);
} else {
console.log("captcha pause bots");
FB_403_request = true;
click_actions_ts = Date.now();
setTimeout(FB_first_click, 100);
}
} else {
console.log("Bad request status, error #CB_0002");
if (FB_item_run_count_fail !== fail_limit) {
FB_item_run_count_fail++;
$(".modal-header .close").click();
click_actions_ts = Date.now();
setTimeout(FB_first_click, 100);
} else {
x = Math.floor((Math.random() * FB_share_delay_1) + FB_share_delay_2) + FB_share_delay * 1000;
FB_console(x, "Second delay");
first_click_ts_next = x;
first_click_ts = Date.now();
setTimeout(FB_first_click, x);
}
}
}
});
}
if(try_again) {
var request_waiting_dif = Date.now() - request_waiting_ts;
if (request_waiting_dif >= FB_request_wait_delay) {
console.log("No request found, error #CB_0001");
if (FB_item_run_count_fail !== fail_limit) {
FB_item_run_count_fail++;
$(".modal-header .close").click();
click_actions_ts = Date.now();
setTimeout(FB_first_click, 100);
} else {
console.log("Item Skipped");
x = Math.floor((Math.random() * FB_share_delay_1) + FB_share_delay_2) + FB_share_delay * 1000;
FB_console(x, "Second delay");
first_click_ts_next = x;
first_click_ts = Date.now();
setTimeout(FB_first_click, x);
}
} else {
setTimeout(FB_check_share_response, 100);
}
}
} else {
setTimeout(FB_check_share_response, 100);
}
}
function FB_final_click() {
try {
var dif = Date.now() - final_click_ts;
if (dif >= final_click_ts_next) {
if (feed_page_switcher === 2) {
FB_second_item = $('#share-popup.in .pm-followers-share-link'); // the share box item or second click item
if ($(".share-popup").find(".model").css("display") !== "none") {
FB_stage = 30;
var PMsimulateClick = function (elem) {
// Create our event (with options)
var evt = new MouseEvent('click', {
bubbles: true,
cancelable: true,
view: window
});
// If cancelled, don't dispatch our event
if (typeof elem.dispatchEvent === 'function') {
var canceled = !elem.dispatchEvent(evt);
} else {
elem.find(".share-wrapper-container").click();
}
};
PMsimulateClick($(".internal-share__link").eq(0));
//$(".modal .close").click();
FB_last_items.push(FB_item_ID);
chrome.storage.local.set({FB_last_items: FB_last_items}, function () {
});
// console.log("CLICK");
if (typeof(extension_version) !== 'undefined') {
if(extension_version >= 1.3){
response_ts = Date.now();
response_ts_next = 100;
request_waiting_ts = Date.now();
setTimeout(FB_check_share_response, 100);
} else {
x = Math.floor((Math.random() * FB_share_delay_1) + FB_share_delay_2) + FB_share_delay * 1000;
FB_console(x, "Second delay");
first_click_ts_next = x;
first_click_ts = Date.now();
setTimeout(FB_first_click, x);
}
} else {
x = Math.floor((Math.random() * FB_share_delay_1) + FB_share_delay_2) + FB_share_delay * 1000;
FB_console(x, "Second delay");
first_click_ts_next = x;
first_click_ts = Date.now();
setTimeout(FB_first_click, x);
}
} else {
console.log("Popup still not loaded");
final_click_ts = Date.now();
final_click_ts_next = 100;
setTimeout(FB_final_click, 100);
}
} else {
FB_second_item = $('#share-popup.in .pm-followers-share-link'); // the share box item or second click item
if (FB_second_item.attr("href").indexOf(FB_item_ID) !== -1) {
if ($("#share-popup").css("display") !== "none") {
FB_stage = 30;
$("#share-popup.in .pm-followers-share-link .share-wrapper-con").eq(0).click();
//$(".modal .close").click();
FB_last_items.push(FB_item_ID);
chrome.storage.local.set({FB_last_items: FB_last_items}, function () {
});
// console.log("CLICK");
response_ts = Date.now();
response_ts_next = 100;
request_waiting_ts = Date.now();
setTimeout(FB_check_response, 100);
} else {
console.log("Popup still not loaded");
final_click_ts = Date.now();
final_click_ts_next = 100;
setTimeout(FB_final_click, 100);
}
} else {
console.log("Popup still not loaded");
final_click_ts = Date.now();
final_click_ts_next = 100;
setTimeout(FB_final_click, 100);
}
}
} else {
setTimeout(FB_final_click, 100);
}
} catch (e) {
console.log("ERROR");
console.log(e);
}
}
function FB_second_click() {
if(FB_stage === 25){
if(feed_page_switcher === 2) {
if ($(".share-popup").find(".model").css("display") !== "none") {
final_click_ts = Date.now();
final_click_ts_next = 100;
setTimeout(FB_final_click, 100);
return;
}
} else {
if (FB_second_item.attr("href").indexOf(FB_item_ID) !== -1) {
if ($("#share-popup").css("display") !== "none") {
final_click_ts = Date.now();
final_click_ts_next = 100;
setTimeout(FB_final_click, 100);
return;
}
}
}
}
var dif = Date.now() - second_click_ts;
if(dif>=second_click_ts_next) {
FB_second_click_running = true;
FB_stage = 15;
if (FB_gov_click && FB_governor_delay_run) {
FB_stage = 20;
if (!captcha()) {
FB_stage = 25;
FB_console("Click permission granted");
FB_gov_click = false;
if(feed_page_switcher === 2) {
PMclick(FB_work_item.find("div[data-et-name='share']"));
} else {
PMclick(FB_work_item.find(".share"));
}
var click_delay = Math.floor((Math.random() * FB_click_delay_1) + FB_click_delay_2);
FB_console(click_delay, "click delay");
final_click_ts = Date.now();
final_click_ts_next = click_delay;
setTimeout(FB_final_click, click_delay);
} else {
FB_governor = true;
FB_gov_click = false;
FB_console("Try again");
second_click_ts = Date.now();
second_click_ts_next = 100;
setTimeout(FB_second_click, 100);
}
} else {
if (FB_run) {
FB_console("Wait for gov");
second_click_ts = Date.now();
second_click_ts_next = 100;
setTimeout(FB_second_click, 100);
}
}
} else {
setTimeout(FB_second_click, 100);
}
}
function FB_first_click() {
var dif = Date.now() - first_click_ts;
if(dif>=first_click_ts_next) {
if (FB_items_loaded) {
if (!captcha()) {
if(feed_page_switcher === 2) {
if ($(".share-popup").find(".model").css("display") !== "none") {
$(".modal .btn--close").click();
}
} else {
if ($("#share-popup").css("display") !== "none") {
$(".modal .close").click();
}
}
FB_stage = 5;
FB_index--;
var temp = FB_numItems - FB_index;
if ((FB_run) && (FB_index >= 0)) {
/*
GET SOME DATA
*/
var temp_index = FB_numItems - FB_index - 1;
if(feed_page_switcher === 2){
FB_work_item = $(".feed__unit div[data-layout-type='SIFU_SUMMARY'] .feed__summary").eq(temp_index);
FB_item_ID = FB_work_item.find("div[data-et-name='share']").attr("data-et-prop-listing_id");
var FB_item_title = FB_work_item.find(".feed__summary__title-block h4").html();
} else {
FB_work_item = $("#tiles-overlay-con #tiles-con .tile").eq(temp_index);
FB_item_ID = FB_work_item.attr('id');
var FB_item_title = FB_work_item.find('.title').html().toLowerCase();
}
FB_console(FB_work_item, "Work item");
FB_console(FB_item_ID, "Item ID");
FB_console(FB_item_title, "Title");
x = Math.floor((Math.random() * FB_share_delay_1) + FB_share_delay_2) + FB_share_delay * 1000;
FB_console(x, "Second delay");
if (typeof(FB_item_title) !== 'undefined') {
var FB_item_title_array = FB_item_title.split(" "); // we break our title to array
for (var j = 0; j < FB_item_title_array.length; j++) {
FB_item_title_array[j] = FB_item_title_array[j].toLowerCase().replace(/[^a-z]+/g, ''); // we remove non letter chars
}
if(feed_page_switcher === 2) {
if(FB_work_item.find(".fw--med").length) {
var FB_item_price = parseInt(FB_work_item.find(".fw--med").html().split("&nbsp;")[0].split("$")[1]); // we get the bold price
} else {
var FB_item_price = 0;
}
} else {
var FB_item_price = parseInt(FB_work_item.children('.item-details').children('.price').html().split("&nbsp;")[0].split("$")[1]); // we get the bold price
}
FB_console(FB_item_price, "Price");
if (
FB_work_item.find('.sold-tag').length
||
FB_work_item.find('.sold-out-tag').length
||
FB_work_item.find('.not-for-sale-tag').length
||
FB_work_item.find('.reserved-tag').length
) {
var FB_sold = true;
} else {
var FB_sold = false;
}
FB_console(FB_sold, "Sold");
var FB_good_common = $.grep(FB_item_title_array, function (element) {
return $.inArray(element, FB_keywords) !== -1;
});
FB_console(FB_good_common, "Good keywords found");
FB_console(FB_good_common.length, "FB_good_common.length");
var FB_bad_common = $.grep(FB_item_title_array, function (element) {
return $.inArray(element, FB_bad_keywords) !== -1;
});
FB_console(FB_bad_common, "Bad keywords found");
FB_console(FB_bad_common.length, "FB_bad_common.length");
if(feed_page_switcher === 2) {
if(FB_work_item.find(".feed__summary__header .feed__unit__header__info div:eq(0)").length) {
var FB_item_user = FB_work_item.find(".feed__summary__header .feed__unit__header__info div:eq(0)").html();
} else {
var FB_item_user = FB_work_item.parent().prev().find(".feed__unit__header__info a[data-et-name='feed_unit']").html();
}
} else {
var FB_item_user = FB_work_item.find(".creator-handle").html().toLowerCase();
}
FB_console(FB_item_user, "Items user");
FB_governor_send_user = FB_item_user;
/*
TRY TO SHARE IT
*/
if ((FB_item_user == FB_username) || ($.inArray(FB_item_user, FB_block_list) !== -1)) {
FB_console("SAME USER OR FROM BAN LIST");
first_click_ts_next = x;
first_click_ts = Date.now();
setTimeout(FB_first_click, x);
} else {
if ($.inArray(FB_item_ID, FB_last_items) === -1) {
if (FB_sold == 0) {
if ((FB_item_price > 0) && (FB_item_price <= FB_max_price_to_share)) {
if (FB_bad_common.length == 0) {
if (FB_good_common.length > 0) {
FB_console("share");
console.log("share");
if (FB_allow_first_click === true) {
FB_stage = 10;
if (FB_first_wait) {
setTimeout(function () {
FB_first_wait = false;
FB_log_msg = 'Running (Sharing item: ' + temp + ")";
FB_governor = true;
second_click_ts_next = 0;
second_click_ts = Date.now();
FB_second_click();
}, x);
} else {
FB_log_msg = 'Running (Sharing item: ' + temp + ")";
FB_governor = true;
second_click_ts_next = 0;
second_click_ts = Date.now();
FB_second_click();
}
} else {
first_click_ts_next = x / 100;
first_click_ts = Date.now();
setTimeout(FB_first_click, x / 100);
}
} else {
FB_console("GOOD KEYWORD NOT FOUND");
first_click_ts_next = x / 100;
first_click_ts = Date.now();
setTimeout(FB_first_click, x / 100);
}
} else {
FB_console("BAD KEYWORD FOUND");
first_click_ts_next = x / 100;
first_click_ts = Date.now();
setTimeout(FB_first_click, x / 100);
}
} else {
FB_console("BAD PRICE");
first_click_ts_next = x / 100;
first_click_ts = Date.now();
setTimeout(FB_first_click, x / 100);
}
} else {
FB_console("SOLD");
first_click_ts_next = x / 100;
first_click_ts = Date.now();
setTimeout(FB_first_click, x / 100);
}
} else {
FB_console("ITEM ALREADY SHARED");
first_click_ts_next = x / 100;
first_click_ts = Date.now();
setTimeout(FB_first_click, x / 100);
}
}
} else {
FB_console("BAD TITLE");
first_click_ts_next = x / 100;
first_click_ts = Date.now();
setTimeout(FB_first_click, x / 100);
}
}
else {
FB_console("Finished");
FB_log_msg = 'Finished';
FB_time_to_reload = FB_reload_delay;
FB_finished = true;
}
} else {
FB_console("Captcha");
setTimeout(FB_first_click, 500);
}
} else {
setTimeout(FB_first_click, 100);
}
} else {
setTimeout(FB_first_click, 100);
}
}
setInterval(FB_time_f, 1000);
if (!$("[href='/login']").length) {
call_to_server();
} else {
send_logged_out();
}
function send_logged_out() {
var data = { a: "logged_out", api: api };
port.postMessage(data);
Block_further_coms = true;
}
function http_data(obj){var str=[];for(var p in obj)if(obj.hasOwnProperty(p)){str.push(encodeURIComponent(p)+"="+encodeURIComponent(obj[p]));}return str.join("&");}
/*
TRACE HTTP REQUESTS
*/
function makeid() {
var text = "";
var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
for (var i = 0; i < 10; i++)
text += possible.charAt(Math.floor(Math.random() * possible.length));
return text;
}
function addScript() {
var result_div = document.createElement('span');
result_div.setAttribute("id",FB_request_monitor);
document.body.appendChild(result_div);
var logger = document.createElement('script');
logger.text = "var potato = 'https://poshmark.com/listing/share?post_id=';" +
"XMLHttpRequest.prototype.realSend = XMLHttpRequest.prototype.send;" +
"XMLHttpRequest.prototype.send = function(value) {" +
"this.addEventListener('load', function(){" +
"if(this.responseURL.includes(potato)) {" +
"var id = this.responseURL.replace(potato, '').split('&')[0];" +
"$('#" + FB_request_monitor + "').attr('tomato',this.status).attr('pickle',id);" +
"}" +
"}, false);" +
"this.realSend(value);" +
"};";
document.body.appendChild(logger);
}
if(feed_page_switcher === 2){
} else {
addScript();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment