The main login routine
()
| 845 | |
| 846 | // The main login routine |
| 847 | func login() { |
| 848 | showLoadingOverlay() |
| 849 | |
| 850 | if engram.Disk == nil { |
| 851 | temp, err := walletapi.Open_Encrypted_Wallet(session.Path, session.Password) |
| 852 | if err != nil { |
| 853 | session.Domain = "app.main" |
| 854 | session.Error = err.Error() |
| 855 | if len(session.Error) > 40 { |
| 856 | session.Error = fmt.Sprintf("%s...", session.Error[0:40]) |
| 857 | } |
| 858 | session.Window.Canvas().Content().Refresh() |
| 859 | removeOverlays() |
| 860 | return |
| 861 | } |
| 862 | |
| 863 | engram.Disk = temp |
| 864 | session.Password = "" |
| 865 | } |
| 866 | |
| 867 | switch session.Network { |
| 868 | case NETWORK_TESTNET: |
| 869 | engram.Disk.SetNetwork(false) |
| 870 | globals.Arguments["--testnet"] = true |
| 871 | globals.Arguments["--simulator"] = false |
| 872 | case NETWORK_SIMULATOR: |
| 873 | engram.Disk.SetNetwork(false) |
| 874 | globals.Arguments["--testnet"] = true |
| 875 | globals.Arguments["--simulator"] = true |
| 876 | default: |
| 877 | engram.Disk.SetNetwork(true) |
| 878 | globals.Arguments["--testnet"] = false |
| 879 | globals.Arguments["--simulator"] = false |
| 880 | } |
| 881 | |
| 882 | session.WalletOpen = true |
| 883 | session.BalanceUSD = "" |
| 884 | session.LastBalance = 0 |
| 885 | |
| 886 | if !session.Offline { |
| 887 | walletapi.SetDaemonAddress(session.Daemon) |
| 888 | engram.Disk.SetDaemonAddress(session.Daemon) |
| 889 | |
| 890 | if session.TrackRecentBlocks > 0 { |
| 891 | logger.Printf("[Engram] Scan tracking enabled, only scanning the last %d blocks...\n", session.TrackRecentBlocks) |
| 892 | engram.Disk.SetTrackRecentBlocks(session.TrackRecentBlocks) |
| 893 | } |
| 894 | |
| 895 | if s, err := strconv.Atoi(getCyberdeck("EPOCH")); err == nil { |
| 896 | if err := epoch.SetPort(s); err != nil { |
| 897 | logger.Errorf("[Engram] Setting EPOCH port: %s\n", err) |
| 898 | } |
| 899 | } |
| 900 | |
| 901 | cyberdeck.EPOCH.total.Hashes = 0 |
| 902 | cyberdeck.EPOCH.total.MiniBlocks = 0 |
| 903 | if epochData, err := GetEncryptedValue("Cyberdeck", []byte("EPOCH")); err == nil { |
| 904 | if err := json.Unmarshal(epochData, &cyberdeck.EPOCH.total); err != nil { |
no test coverage detected