Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name MotivateSearchTool
- // @namespace Violentmonkey Scripts
- // @include *.e-sim.org/newCitizenStatistics.html*
- // @grant none
- // ==/UserScript==
- /**
- * Init
- *
- */
- var timer;
- var page = 1;
- var motivatesFound = 0;
- var latestPlayerId = getLatestPlayerId();
- var playerId = latestPlayerId;
- var day = parseInt($('[class="foundation-style panel callout"] b')[2].innerText.split(/\s/)[1]);
- $(document).ready(function() {
- addDomElements();
- });
- /**
- * Event handlers
- *
- */
- $(document).ready(function() {
- $('#motivateSearch').click(function() {
- if ($(this).val() == "Search") {
- $(this).val("Stop");
- $('#loadingGif').css("display", "block");
- searchMotivate();
- } else {
- $(this).val("Search");
- $('#loadingGif').css("display", "none");
- clearInterval(aTimer);
- }
- });
- });
- /**
- * Add dom elements.
- *
- */
- function addDomElements() {
- var row = $('[class*="dataTable"] tr')[0];
- var columns = $('td', row);
- var nameHeader = columns[0].innerHTML;
- var citizenshipHeader = columns[1].innerHTML;
- var actionHeader = columns[7].innerHTML;
- $('#newCitizenStatsForm').append('<br><br>Search players to motivate.<br><input type="button" id="motivateSearch" value="Search">');
- $('#newCitizenStatsForm').append('<table align="center" style="width: 500px;" id="motivateTable" class="dataTable"></table>');
- $('#newCitizenStatsForm').append('<br><img src="http://i.imgur.com/5ZVzPNa.gif" id="loadingGif" style="display: none; margin: auto;">');
- $('#motivateTable').append('<tr><td>'+nameHeader+'</td><td>'+citizenshipHeader+'</td><td>'+actionHeader+'</td></tr>');
- }
- /**
- *
- *
- */
- function searchMotivate() {
- aTimer = setInterval(function() {
- var player = getPlayerInfo(playerId);
- if(player.isMotivate)
- {
- $('#motivateTable').append('<tr><td><img align="absmiddle" class="smallAvatar" src="'+player.avatar+'"> <a href="/profile.html?id='+player.playerId+'" target="_blank">'+player.name+'</a></td><td><div class="flags-small '+player.citizenship+'"></div> '+player.citizenship.replace('-', " ")+'</td><td><a href="motivateCitizen.html?id='+player.playerId+'" class="foundation-style button small help" target="blank_"><i class="icon-cupcake"></i></a></td></tr>')
- }
- if(day - player.birthDay > 5)
- {
- $('#motivateSearch').val("Search");
- $('#loadingGif').css("display", "none");
- clearInterval(aTimer);
- return;
- }
- playerId--;
- }, 800);
- }
- /**
- *
- *
- */
- function getLatestPlayerId() {
- var pageContent;
- $.ajax({
- type: "GET",
- dataType: "html",
- async: false,
- url: "/newCitizens.html?countryId=0",
- success: function(html) {
- pageContent = html;
- }
- });
- var domElements = $.parseHTML(pageContent);
- var rows = $("[class*='dataTable'] tr", domElements);
- rows = rows.slice(1, rows.length);
- var cell = $("td", rows[0]);
- var playerId = parseInt($('a', cell[0]).attr('href').replace('profile.html?id=', ''));
- return playerId;
- }
- /**
- *
- *
- */
- function getPlayerInfo(playerId) {
- var pageContent;
- var result = {};
- $.ajax({
- type: "GET",
- dataType: "html",
- async: false,
- url: "/profile.html?id=" + playerId,
- success: function(html) {
- pageContent = html;
- }
- });
- var domElements = $.parseHTML(pageContent);
- var isMotivate = true;
- if (typeof $('#motivateCitizenButton', domElements)[0] == 'undefined') {
- isMotivate = false;
- }
- var nameArray = $('[class="testDivblue"] h2', domElements)[0].innerText;
- nameArray = nameArray.split(/\s/);
- nameArray = nameArray.slice(1, nameArray.length);
- var name = '';
- for(i = 0; i < nameArray.length; i++)
- {
- name += nameArray[i]+" ";
- }
- name = name.trim();
- var citizenship = $('div', $('[class="smallTableFont"] tr b', domElements)[13]).attr('class').replace('flags-small ', '').trim();
- var birthDay = parseInt($('[class="smallTableFont"] tr b', domElements)[15].innerText.replace('Day ', ''));
- var avatar = $('[class="bigAvatar"]', domElements).attr('src');
- result['playerId'] = playerId;
- result['name'] = name;
- result['citizenship'] = citizenship;
- result['isMotivate'] = isMotivate;
- result['birthDay'] = birthDay;
- result['avatar'] = avatar;
- return result;
- }
Advertisement
Add Comment
Please, Sign In to add comment