ShadowGovermentLibBeta

Shadow Goverment Lib Beta

当前为 2015-09-12 提交的版本,查看 最新版本

此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.gf.qytechs.cn/scripts/12383/73916/ShadowGovermentLibBeta.js

  1. if($("section.top-bar-section > ul.foundation-right").length==1){
  2. /*---Initialization parameters---*/
  3. var localUrl = new String( window.location );
  4. var URLBattle = "battle.html?id=";
  5. var URLConfig = "editCitizen.html?Settings";
  6. var URLMotivation = "newCitizenStatistics.html";
  7. var style;
  8. /*---Initialization parameters---*/
  9.  
  10. /*---Initialization menu---*/
  11. $('<a class="button foundation-style" href="editCitizen.html?Settings"><i class="icon-star"></i>Settings SG</a><br>').insertBefore($(".foundation-right.hidden-overflow > div:first > a:eq(1)"));
  12. /* var menuTop = $(".top-bar-section > .foundation-left");
  13. $('<li id="ShadowGovernmentMenu" class="has-dropdown"><a id="ShadowGovernmentMenuHref" href="#"><i class="icon-star"></i>Shadow Government</a><ul id="ShadowGovernmentMenuDropdown" class="dropdown"></ul></li><li class="divider"></li>').appendTo(menuTop);
  14. $('<li class="title back js-generated"><h5><a href="#">« Back</a></h5></li>').appendTo("#ShadowGovernmentMenuDropdown");
  15. $('<li><a href="editCitizen.html?Settings"><i class="icon-tools"></i>Settings</a></li>').appendTo("#ShadowGovernmentMenuDropdown");
  16. $('<li><a href="#"><i class="icon-tools"></i>Blank</a></li>').appendTo("#ShadowGovernmentMenuDropdown");
  17. $('#navigationCountry > i.icon-flag-2').removeClass('icon-flag-2').addClass('icon-flag'); */
  18. /*---Initialization menu---*/
  19.  
  20. function SGChecked(flag){
  21. if(flag){
  22. return "checked";
  23. } else {
  24. return "";
  25. }
  26. }
  27.  
  28. /*---On Settings Page---*/
  29. if (localUrl.indexOf( URLConfig, 0 ) >= 0){
  30. var wrapper = $("#userMenu + script + div");
  31. wrapper.attr("id","WrapperMainConfig");
  32. wrapper.empty();
  33. $('<center><h1>Shadow Government Settings</h1></center><p style="clear: both"></p><br>').appendTo(wrapper);
  34. $('<div id="SettingsSpectator" class="testDivblue" style="width:100%;"><h3 id="SettingsSpectatorTittle">Settings Spectator</h3></div>').appendTo(wrapper);
  35. $('<div id="SettingsMotivator" class="testDivblue" style="width:100%;"><h3 id="SettingsMotivatorTittle">Settings Motivator</h3></div>').appendTo(wrapper);
  36. $('<div id="SettingsDemoralizator" class="testDivblue" style="width:100%;"><h3 id="SettingsDemoralizatorTittle">Settings Demoralizator</h3></div>').appendTo(wrapper);
  37. $('<b title="default value: 7000, ultra speed value: 1750">SGTimerSpectator: </b><input id="SGTimerSpectatorText" name="SGTimerSpectatorText" type="text" value="'+$.jStorage.get('SGTimerSpectator', 7000)+'" autocomplete="off"><input id="SGTimerSpectatorSubmit" value="Change" type="button"><br>').appendTo("#SettingsSpectator");
  38. $('<b title="default value: 1">SGFakeUserID: </b><input id="SGFakeUserIDText" name="SGFakeUserIDText" type="text" value="'+$.jStorage.get('SGFakeUserID', 1)+'" autocomplete="off"><input id="SGFakeUserIDSubmit" value="Change" type="button"><br>').appendTo("#SettingsSpectator");
  39. $('<b title="default value: 1">SGFakeCitizenshipID: </b><input id="SGFakeCitizenshipIDText" name="SGFakeCitizenshipIDText" type="text" value="'+$.jStorage.get('SGFakeCitizenshipID', 1)+'" autocomplete="off"><input id="SGFakeCitizenshipIDSubmit" value="Change" type="button"><br>').appendTo("#SettingsSpectator");
  40. $('<b title="default value: true">SGSpectatorMode: </b><input class="SGSpectatorModeRadio" type="radio" name="SGSpectatorMode" value="true" '+SGChecked($.jStorage.get('SGSpectatorMode', true))+'> True <input class="SGSpectatorModeRadio" type="radio" name="SGSpectatorMode" value="false" '+SGChecked(!$.jStorage.get('SGSpectatorMode', true))+'>False<br>').appendTo("#SettingsSpectator");
  41. $('<b title="default value: true">SGMotivationMode: </b><input class="SGMotivationModeRadio" type="radio" name="SGMotivationMode" value="true" '+SGChecked($.jStorage.get('SGMotivationMode', true))+'> True <input class="SGMotivationModeRadio" type="radio" name="SGMotivationMode" value="false" '+SGChecked(!$.jStorage.get('SGMotivationMode', true))+'>False<br>').appendTo("#SettingsMotivator");
  42. $('<b title="default value: 10000">SGDemoralizatorTimerSpectator: </b><input id="SGDemoralizatorTimerSpectatorText" name="SGDemoralizatorTimerSpectatorText" type="text" value="'+$.jStorage.get('SGDemoralizatorTimerSpectator', 10000)+'" autocomplete="off"><input id="SGDemoralizatorTimerSpectatorSubmit" value="Change" type="button"><br>').appendTo("#SettingsDemoralizator");
  43. $('<b title="default value: 10">SGDemoralizatorFakeUserIDCount: </b><input id="SGDemoralizatorFakeUserIDCountText" name="SGDemoralizatorFakeUserIDCountText" type="text" value="'+$.jStorage.get('SGDemoralizatorFakeUserIDCount', 10)+'" autocomplete="off"><input id="SGDemoralizatorFakeUserIDCountSubmit" value="Change" type="button"><br>').appendTo("#SettingsDemoralizator");
  44. $('<b title="default value: 2">SGDemoralizatorFakeCitizenshipID: </b><input id="SGDemoralizatorFakeCitizenshipIDText" name="SGDemoralizatorFakeCitizenshipIDText" type="text" value="'+$.jStorage.get('SGDemoralizatorFakeCitizenshipID', 2)+'" autocomplete="off"><input id="SGDemoralizatorFakeCitizenshipIDSubmit" value="Change" type="button"><br>').appendTo("#SettingsDemoralizator");
  45. $('<b title="default value: false">SGDemoralizatorMode: </b><input class="SGDemoralizatorModeRadio" type="radio" name="SGDemoralizatorMode" value="true" '+SGChecked($.jStorage.get('SGDemoralizatorMode', false))+'> True <input class="SGDemoralizatorModeRadio" type="radio" name="SGDemoralizatorMode" value="false" '+SGChecked(!$.jStorage.get('SGDemoralizatorMode', false))+'>False<br>').appendTo("#SettingsDemoralizator");
  46. $('#SGTimerSpectatorSubmit').click(function(){
  47. $.jStorage.set('SGTimerSpectator', $('#SGTimerSpectatorText').val());
  48. });
  49. $('#SGFakeUserIDSubmit').click(function(){
  50. $.jStorage.set('SGFakeUserID', $('#SGFakeUserIDText').val());
  51. });
  52. $('#SGFakeCitizenshipIDSubmit').click(function(){
  53. $.jStorage.set('SGFakeCitizenshipID', $('#SGFakeCitizenshipIDText').val());
  54. });
  55. $('.SGSpectatorModeRadio').click(function(){
  56. if ($(this).val()==="true"){
  57. $.jStorage.set('SGSpectatorMode', true);
  58. } else {
  59. $.jStorage.set('SGSpectatorMode', false);
  60. }
  61. });
  62. $('.SGMotivationModeRadio').click(function(){
  63. if ($(this).val()==="true"){
  64. $.jStorage.set('SGMotivationMode', true);
  65. } else {
  66. $.jStorage.set('SGMotivationMode', false);
  67. }
  68. });
  69. $('#SGDemoralizatorTimerSpectatorSubmit').click(function(){
  70. $.jStorage.set('SGDemoralizatorTimerSpectator', $('#SGDemoralizatorTimerSpectatorText').val());
  71. });
  72. $('#SGDemoralizatorFakeUserIDCountSubmit').click(function(){
  73. $.jStorage.set('SGDemoralizatorFakeUserIDCount', $('#SGDemoralizatorFakeUserIDCountText').val());
  74. });
  75. $('#SGDemoralizatorFakeCitizenshipIDSubmit').click(function(){
  76. $.jStorage.set('SGDemoralizatorFakeCitizenshipID', $('#SGDemoralizatorFakeCitizenshipIDText').val());
  77. });
  78. $('.SGDemoralizatorModeRadio').click(function(){
  79. if ($(this).val()==="true"){
  80. $.jStorage.set('SGDemoralizatorMode', true);
  81. } else {
  82. $.jStorage.set('SGDemoralizatorMode', false);
  83. }
  84. });
  85. $('<p style="clear: both"></p><br>').appendTo(wrapper);
  86. }
  87. /*---On Settings Page---*/
  88.  
  89. /*---On Battle Page---*/
  90. if (localUrl.indexOf( URLBattle, 0 ) >= 0){
  91. /*---Отключаем стилями картинки в окне сообщения боя---*/
  92. var stringCSS = '.fightsprite.critical1,.fightsprite.critical0,.fightsprite.critical2,.fightsprite.critical3,.fightsprite.normal1,.fightsprite.normal0,.fightsprite.normal2,.fightsprite.normal3,.fightsprite.miss,.fightsprite.toofast {\n display:none;\n}\n\n';
  93. stringCSS += '.fightsprite.critical1 + br,.fightsprite.critical0 + br,.fightsprite.critical2 + br,.fightsprite.critical3 + br,.fightsprite.normal1 + br,.fightsprite.normal0 + br,.fightsprite.normal2 + br,.fightsprite.normal3 + br,.fightsprite.miss + br,.fightsprite.toofast + br {\n display:none;\n}\n\n';
  94. style = document.createElement( "style" );
  95. style.type = "text/css";
  96. style.textContent = stringCSS;
  97. document.body.appendChild( style );
  98. style = undefined;
  99. /*---Отключаем стилями картинки в окне сообщения боя---*/
  100.  
  101. /*---Отключаем модальные окна на странице боя---*/
  102. window.picoModal=function() {
  103. return true;
  104. }
  105. /*---Отключаем модальные окна на странице боя---*/
  106. /*---Минимизируем заголовок боя---*/
  107. $("#battleHeaderImage").remove();
  108. $("#mainFight").css({"margin-top": "0px", "margin-bottom": ".4em",});
  109. $("#mainFight .fightFont").removeClass("fightFont").addClass("fightFontSG");
  110. $("#mainFight .fightFontSG").css({"text-shadow": "0 0 2px black",});
  111. /*---Минимизируем заголовок боя---*/
  112.  
  113. /*---Минимизируем списки топ3/топ10 по урону на странице боя---*/
  114. $("#battleStats").show();
  115. $("#battleStats").append('<div class="foundation-style small-10 columns SpectatorsBattleStatsElements"><div class="foundation-style small-5 columns"><b>Total defenders online:</b><i id="totaldefenders" style="display: inline;">0</i> <a style="font-size: 11px; display: none;" href="" id="defendersLink">Show details</a> <a style="font-size: 11px;" href="" id="defendersLinkHide">Hide details</a> <br><div align="center" id="defendersMenu" style="font-size: 11px; text-align: center; padding: 1em; margin: auto; display: block;">No one <br> </div></div><div class="foundation-style small-5 columns"><b>Total attackers online:</b><i id="totalattackers" style="display: inline;">0</i> <a style="font-size: 11px; display: none;" href="" id="attackersLink">Show details</a> <a style="font-size: 11px; display: inline;" href="" id="attackersLinkHide">Hide details</a> <br><div align="center" id="attackersMenu" style="font-size: 11px; text-align: center; padding: 1em; margin: auto; display: block;">No one <br> </div></div>');
  116. $("#battleStats").append('<div class="foundation-style small-10 columns SpectatorsBattleStatsElements"><b>Total spectators online:</b><i id="totalspectators" style="display: inline;">0</i> <a style="font-size: 11px; display: none;" href="" id="spectatorsLink">Show details</a> <a style="font-size: 11px;" href="" id="spectatorsLinkHide">Hide details</a> <br><div align="center" id="spectatorsMenu" style="font-size: 11px; text-align: center; padding: 1em; margin: auto; display: block;">No one <br> </div> </div>');
  117. $('#spectatorsLink').click(function () { $('#spectatorsLink').fadeOut('fast', function () { $('#spectatorsLinkHide').fadeIn('fast'); $('#spectatorsMenu').fadeIn('fast'); }); return false; });
  118. $('#spectatorsLinkHide').click(function () { $('#spectatorsLinkHide').fadeOut('fast', function () { $('#spectatorsLink').fadeIn('fast'); $('#spectatorsMenu').fadeOut('fast'); }); return false; });
  119.  
  120. $('#attackersLink').click(function () { $('#attackersLink').fadeOut('fast', function () { $('#attackersLinkHide').fadeIn('fast'); $('#attackersMenu').fadeIn('fast'); }); return false; });
  121. $('#attackersLinkHide').click(function () { $('#attackersLinkHide').fadeOut('fast', function () { $('#attackersLink').fadeIn('fast'); $('#attackersMenu').fadeOut('fast'); }); return false; });
  122.  
  123. $('#defendersLink').click(function () { $('#defendersLink').fadeOut('fast', function () { $('#defendersLinkHide').fadeIn('fast'); $('#defendersMenu').fadeIn('fast'); }); return false; });
  124. $('#defendersLinkHide').click(function () { $('#defendersLinkHide').fadeOut('fast', function () { $('#defendersLink').fadeIn('fast'); $('#defendersMenu').fadeOut('fast'); }); return false; });
  125. $("#battleSelectable:first + #battleSelectable div.small-10:first").remove();
  126. $('<div id="wrapperBattleStatsButtons" class="foundation-style small-10 columns" style="margin-bottom:.4em;"></div>').insertBefore($("#battleSelectable:first + #battleSelectable div.small-4:first"));
  127. $('<div id="showTop3BattleStats" style="padding-bottom:.4em;padding-top:.4em;margin:.4em .4em 0 .4em;" class="foundation-style button"> Show Top 3 </div>').appendTo($("#wrapperBattleStatsButtons"));
  128. $('<div id="showTop10BattleStats" style="padding-bottom:.4em;padding-top:.4em;margin:.4em .4em 0 .4em;" class="foundation-style button"> Show Top 10 </div>').appendTo($("#wrapperBattleStatsButtons"));
  129. $('<div id="showRecentActionsBattleStats" style="padding-bottom:.4em;padding-top:.4em;margin:.4em .4em 0 .4em;" class="foundation-style button"> Recent Actions </div>').appendTo($("#wrapperBattleStatsButtons"));
  130. $('<div id="showSpectatorsBattleStats" style="padding-bottom:.4em;padding-top:.4em;margin:.4em .4em 0 .4em;" class="foundation-style button"> Spectators </div>').appendTo($("#wrapperBattleStatsButtons"));
  131.  
  132. $("#wrapperBattleStatsButtons + div.small-4, #wrapperBattleStatsButtons + div.small-4 + div.small-2, #wrapperBattleStatsButtons + div.small-4 + div.small-2 + div.small-4").addClass("Top3BattleStatsElements");
  133. $("#battleStats > div.small-10:first").addClass("Top10BattleStatsElements");
  134. $(".Top10BattleStatsElements + div.small-10").addClass("RecentActionsBattleStatsElements");
  135. //$(".RecentActionsBattleStatsElements + div.small-10, .RecentActionsBattleStatsElements + div.small-10 + div.small-10").addClass("SpectatorsBattleStatsElements");
  136.  
  137. $(".Top3BattleStatsElements").css('display', $.jStorage.get('SGTop3BattleStatsElements', "none"));
  138. $("#showTop3BattleStats").click(function () {
  139. $(".Top3BattleStatsElements").toggle("fast", function () {
  140. $.jStorage.set('SGTop3BattleStatsElements', $(".Top3BattleStatsElements").css('display'));
  141. });
  142. });
  143. $(".Top10BattleStatsElements").css('display', $.jStorage.get('SGTop10BattleStatsElements', "none"));
  144. $("#showTop10BattleStats").click(function () {
  145. $(".Top10BattleStatsElements").toggle("fast", function () {
  146. $.jStorage.set('SGTop10BattleStatsElements', $(".Top10BattleStatsElements").css('display'));
  147. });
  148. });
  149. $(".RecentActionsBattleStatsElements").css('display', $.jStorage.get('SGRecentActionsBattleStatsElements', "none"));
  150. $("#showRecentActionsBattleStats").click(function () {
  151. $(".RecentActionsBattleStatsElements").toggle("fast", function () {
  152. $.jStorage.set('SGRecentActionsBattleStatsElements', $(".RecentActionsBattleStatsElements").css('display'));
  153. });
  154. });
  155. $(".SpectatorsBattleStatsElements").css('display', $.jStorage.get('SGSpectatorsBattleStatsElements', "none"));
  156. $("#showSpectatorsBattleStats").click(function () {
  157. $(".SpectatorsBattleStatsElements").toggle("fast", function () {
  158. $.jStorage.set('SGSpectatorsBattleStatsElements', $(".SpectatorsBattleStatsElements").css('display'));
  159. });
  160. });
  161. /*---Минимизируем списки топ3/топ10 по урону на странице боя---*/
  162.  
  163. /*---Формируем блок сообщений боя---*/
  164. $('#fightStatus').show().css({'width':'initial',}).removeClass("testDivblue").addClass("fightContainer");
  165. $('#fightResponse').hide().addClass("foundation-style small-10 columns");
  166. $('#fightResponse > div').addClass("testDivblue");
  167.  
  168.  
  169. //$('<div id="statusDiv" ><b>Status Action </b></div>').insertBefore($("#fightResponse"));
  170. $('<div id="wrapperStatusActionButtons" class="foundation-style small-10 columns" style="margin-bottom:.4em;"></div>').insertBefore($("#fightResponse"));
  171. $('<div id="SGShowStatusAction" style="padding-bottom:.4em;padding-top:.4em;margin:.4em .4em 0 .4em;" class="foundation-style button"> Show Status Action </div>').appendTo($("#wrapperStatusActionButtons"));
  172. $("#fightResponse").css('display', $.jStorage.get('SGShowStatusActionButton', "none"));
  173. $("#SGShowStatusAction").click(function () {
  174. $("#fightResponse").toggle("fast", function () {
  175. $.jStorage.set('SGShowStatusActionButton', $("#fightResponse").css('display'));
  176. });
  177. });
  178. /* $('#statusDiv > b').css({'font-size': '14px', 'color': '#f2f2f2', 'text-shadow': '0 0 1px black,0 1px 1px black,0 -1px 1px #333'});
  179. $('<a style="font-size: 11px; display: inline;" href="" id="statusLink">Show details</a>').appendTo($("#statusDiv"));
  180. $('<a style="font-size: 11px; display: none;" href="" id="statusLinkHide">Hide details</a>').appendTo($("#statusDiv"));
  181.  
  182. $('#statusLink').click(function () {
  183. $('#statusLink').fadeOut('fast', function () {
  184. $('#statusLinkHide').fadeIn('fast');
  185. $('#fightResponse').fadeIn('fast');
  186. });
  187. return false;
  188. });
  189. $('#statusLinkHide').click(function () {
  190. $('#statusLinkHide').fadeOut('fast', function () {
  191. $('#statusLink').fadeIn('fast');
  192. $('#fightResponse').fadeOut('fast');
  193. });
  194. return false;
  195. }); */
  196. /*---Формируем блок сообщений боя---*/
  197. /*---Спектатор---*/
  198. //var SGSpectatorMode = $.jStorage.get('SGSpectatorMode', 1);
  199. if($.jStorage.get('SGSpectatorMode', true)){
  200. var SGTimerSpectator = $.jStorage.get('SGTimerSpectator', 7000); // Кд отправки запросов данных 1 секунда = 1000 миллисекунд.
  201.  
  202. function sendUpdateRequestSpectator() {
  203. if (!hasFocus)
  204. return;
  205. var FakeUserID = $.jStorage.get('SGFakeUserID', 1); // Айди фейкового пользователя.
  206. var FakeCitizenshipID = $.jStorage.get('SGFakeCitizenshipID', 1); // Айди гражданства фейкового пользователя.
  207. var dataString = 'id=' + $("#battleRoundId").val() + "&at="+FakeUserID+"&ci="+FakeCitizenshipID+"&premium=1";
  208. $.ajax({
  209. type: "GET",
  210. url: "battleScore.html",
  211. data: dataString,
  212. dataType: "json",
  213. success: function(msg) {
  214. updateStatus(msg.attackerScore, msg.defenderScore, msg.remainingTimeInSeconds, msg.percentAttackers);
  215. updateBattleHeros(msg.topAttackers, msg.topDefenders);
  216. updateTop10(msg.top10Attackers, msg.top10Defenders);
  217. updateBattleMonitor(msg);
  218. //updatePlace(msg.yourPlace);
  219. //updateTotalDamage(msg.totalPlayerDamage);
  220. for (var i = 0; i < msg.recentAttackers.length; i++) {
  221. if (msg.recentAttackers[i].id == latestAttackerId) {
  222. msg.recentAttackers = msg.recentAttackers.slice(0, i);
  223. break;
  224. }
  225. }
  226. for (var i = 0; i < msg.recentDefenders.length; i++) {
  227. if (msg.recentDefenders[i].id == latestDefenderId) {
  228. msg.recentDefenders = msg.recentDefenders.slice(0, i);
  229. break;
  230. }
  231. }
  232. if (msg.recentAttackers.length != 0) {
  233. latestAttackerId = msg.recentAttackers[0].id;
  234. attackerHits = msg.recentAttackers;
  235. }
  236. if (msg.recentDefenders.length != 0) {
  237. latestDefenderId = msg.recentDefenders[0].id;
  238. defenderHits = msg.recentDefenders;
  239. }
  240. }
  241. });
  242. }
  243. var intervalID = window.setInterval(sendUpdateRequestSpectator, SGTimerSpectator);
  244. continueThread = false;
  245. }
  246. /*---Спектатор---*/
  247. /*---Фейк Спектатор Деморализатор---*/
  248. if($.jStorage.get('SGDemoralizatorMode', false)){
  249. var SGDemoralizatorFakeUserIDCount = $.jStorage.get('SGDemoralizatorFakeUserIDCount', 10);
  250. var SGDemoralizatorFakeCitizenshipID = $.jStorage.get('SGDemoralizatorFakeCitizenshipID', 2);
  251. var SGDemoralizatorTimerSpectator = $.jStorage.get('SGDemoralizatorTimerSpectator', 10000);
  252.  
  253. function sendUpdateRequestSpectatorFake(UserID,CitizenshipID) {
  254. var dataString = 'id=' + $("#battleRoundId").val() + "&at="+UserID+"&ci="+CitizenshipID+"&premium=1";
  255. $.ajax({
  256. type: "GET",
  257. url: "battleScore.html",
  258. data: dataString,
  259. dataType: "json"
  260. });
  261. }
  262.  
  263. function FakeSpectators(){
  264. n = 0;
  265. while (n < SGDemoralizatorFakeUserIDCount) {
  266. setTimeout(sendUpdateRequestSpectatorFake, (n+1)*(SGDemoralizatorTimerSpectator/SGDemoralizatorFakeUserIDCount), (n+1), SGDemoralizatorFakeCitizenshipID);
  267. n++;
  268. }
  269. }
  270.  
  271. window.setInterval(FakeSpectators, SGDemoralizatorTimerSpectator);
  272. }
  273. /*---Фейк Спектатор Деморализатор---*/
  274. }
  275. /*---On Battle Page---*/
  276.  
  277. /*---On Motivation Page---*/
  278. if (localUrl.indexOf( URLMotivation, 0 ) >= 0){
  279. //var SGMotivationMode = $.jStorage.get('SGMotivationMode', 1);
  280. if($.jStorage.get('SGMotivationMode', true)){
  281. var CurrentDay = /\d+/gim.exec($("#userMenu div div.panel.callout b:eq(2)").html());
  282. var CurrentDay = parseInt(CurrentDay[0]);
  283. var tmpMotivateCountToday = {day: CurrentDay,count: 0};
  284. var MotivateCountToday = JSON.parse($.jStorage.get('SGMotivateCountToday', JSON.stringify(tmpMotivateCountToday)));
  285. //console.log(MotivateCountToday);
  286. if (MotivateCountToday.day != tmpMotivateCountToday.day){
  287. MotivateCountToday = tmpMotivateCountToday;
  288. $.jStorage.set('SGMotivateCountToday', JSON.stringify(MotivateCountToday));
  289. }
  290.  
  291. $(".dataTable ul.button.foundation-center.foundation-style-group li a.foundation-style.button.small.help i.icon-cupcake").parent().parent().toggle();
  292. $("<span>Today motivate count: <b id=\"countMotivationToday\">0</b><span>").insertAfter("#newCitizenStatsForm");
  293. $("#countMotivationToday").html(MotivateCountToday.count);
  294.  
  295. $( "table.dataTable tr" ).each(function( index, element ) {
  296. if ($(this).children("td").children("i.icon-uniF478").length>0){
  297. var MotivateUserID = $(this).children("td:first").children(".profileLink").attr("href").replace("profile.html?id=","");
  298. if ($(this).children("td:eq(4)").children("i.icon-uniF478").length==1){
  299. $(this).children("td:eq(4)").empty();
  300. $(this).children("td:eq(4)").append('<i id="motivate-weapons-'+MotivateUserID+'" style="cursor: pointer; color: #000; font-size: 1.25em; text-shadow: 0 0 0" class="motivate-element motivate-weapons icon-tank" value="'+MotivateUserID+'"></i>');
  301. }
  302. if ($(this).children("td:eq(5)").children("i.icon-uniF478").length==1){
  303. $(this).children("td:eq(5)").empty();
  304. $(this).children("td:eq(5)").append('<i id="motivate-breads-'+MotivateUserID+'" style="cursor: pointer; color: #000; font-size: 1.25em; text-shadow: 0 0 0" class="motivate-element motivate-breads icon-bread" value="'+MotivateUserID+'"></i>');
  305. }
  306. if ($(this).children("td:eq(6)").children("i.icon-uniF478").length==1){
  307. $(this).children("td:eq(6)").empty();
  308. $(this).children("td:eq(6)").append('<i id="motivate-gifts-'+MotivateUserID+'" style="cursor: pointer; color: #000; font-size: 1.25em; text-shadow: 0 0 0" class="motivate-element motivate-gifts icon-gift" value="'+MotivateUserID+'"></i>');
  309. }
  310. }
  311. return true;
  312. });
  313.  
  314. function motivateResponse (jqXHR, timeout, message) {
  315. var dataString = /type=(\d)&id=(\d+)/gim.exec($(this)[0].data);
  316. var idType = parseInt(dataString[1]);
  317. var idUser = parseInt(dataString[2]);
  318. var arrType = ["none","weapons","breads","gifts"]
  319. var messageResponse = "";
  320. if (messageResponse = /&citizenMessage=(\S+)/gim.exec(jqXHR.getResponseHeader("TM-finalURLdhdg"))){
  321. if (messageResponse[1]=="SUCCESFULLY_MOTIVATED"){
  322. var parentTDw = $("#motivate-"+arrType[idType]+"-"+idUser).parent();
  323. parentTDw.empty();
  324. parentTDw.append('<i title="Мотивация прошла успешно" style="color: #0c0; font-size: 1.25em; text-shadow: 0 0 0" class="icon-uniF479"></i>');
  325. MotivateCountToday.count = MotivateCountToday.count+1;
  326. $.jStorage.set('SGMotivateCountToday', JSON.stringify(MotivateCountToday));
  327. $("#countMotivationToday").html(MotivateCountToday.count);
  328. } else {
  329. $("#motivate-"+arrType[idType]+"-"+idUser).attr("title","Ошибка: "+messageResponse[1]);
  330. }
  331. } else if(/Вы отправили слишком много мотиваций сегодня/gim.exec(jqXHR.responseText)){
  332. var parentTDw = $("#motivate-"+arrType[idType]+"-"+idUser).parent();
  333. parentTDw.empty();
  334. parentTDw.append('<i title="Вы отправили слишком много мотиваций сегодня" style="color: #c00; font-size: 1.25em; text-shadow: 0 0 0" class="icon-uniF478"></i>');
  335. MotivateCountToday.count = 5;
  336. $.jStorage.set('SGMotivateCountToday', JSON.stringify(MotivateCountToday));
  337. $("#countMotivationToday").html(MotivateCountToday.count);
  338. } else if(/Вы уже отправляли комплект этому гражданину сегодня/gim.exec(jqXHR.responseText)){
  339. var parentTDw = $("#motivate-"+arrType[idType]+"-"+idUser).parent();
  340. parentTDw.empty();
  341. parentTDw.append('<i title="Вы уже отправляли комплект этому гражданину сегодня" style="color: #c00; font-size: 1.25em; text-shadow: 0 0 0" class="icon-uniF478"></i>');
  342. } else if(/Этот гражданин получил слишком много мотиваций сегодня/gim.exec(jqXHR.responseText)){
  343. var parentTDw = $("#motivate-"+arrType[idType]+"-"+idUser).parent();
  344. parentTDw.empty();
  345. parentTDw.append('<i title="Этот гражданин получил слишком много мотиваций сегодня" style="color: #c00; font-size: 1.25em; text-shadow: 0 0 0" class="icon-uniF478"></i>');
  346. } else if(/Этот гражданин получил все виды мотивационных комплектов сегодня/gim.exec(jqXHR.responseText)){
  347. var parentTDw = $("#motivate-"+arrType[idType]+"-"+idUser).parent();
  348. parentTDw.empty();
  349. parentTDw.append('<i title="Этот гражданин получил все виды мотивационных комплектов сегодня" style="color: #c00; font-size: 1.25em; text-shadow: 0 0 0" class="icon-uniF478"></i>');
  350. } else if(/У вас не достаточно предметов/gim.exec(jqXHR.responseText)){
  351. var parentTDw = $("#motivate-"+arrType[idType]+"-"+idUser).parent();
  352. parentTDw.empty();
  353. parentTDw.append('<i title="У вас не достаточно предметов" style="color: #c00; font-size: 1.25em; text-shadow: 0 0 0" class="icon-uniF478"></i>');
  354. }
  355. }
  356.  
  357. $(".motivate-element").click(function(){
  358. var typeMotivate = 0;
  359. if ($(this).hasClass("motivate-weapons")){
  360. typeMotivate = 1;
  361. } else if ($(this).hasClass("motivate-breads")){
  362. typeMotivate = 2;
  363. } else if ($(this).hasClass("motivate-gifts")){
  364. typeMotivate = 3;
  365. }
  366. var parentTD = $(this).parent();
  367. var userID = $(this).attr("value");
  368. var dataString = "type="+typeMotivate+"&id="+userID;
  369. $.ajax({
  370. type: "POST",
  371. url: "motivateCitizen.html?id="+userID,
  372. data: dataString,
  373. dataType: "json",
  374. error: motivateResponse
  375. });
  376. });
  377.  
  378. $(".motivate-element").hover(function() {
  379. $(this).css("color", "#999");
  380. }, function() {
  381. $(this).css("color", "#000");
  382. });
  383. }
  384. }
  385. /*---On Motivation Page---*/
  386. }

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址