menus_auth.cfg 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. newmenu [auth setup]
  2. menuinit [ tempalias ___ppass "" ; tempalias ___pass ""; tempalias ___rememberpass 0; ]
  3. menuitem "To play online you need to create an account" -1
  4. menuitem "which servers will use to identify you." -1
  5. menuitem "This identity is stored as a public/private keypair." -1
  6. menuitem "\f5Keep the \f2private key \f3private\f5!" -1
  7. menuitem "You can change the unlock password at any time." -1
  8. menuitem "You can NOT change the master password. Ever." -1
  9. menuitem "" -1
  10. //TODO: auth.html does not exist and the procedure does not exist
  11. //menuitem "The way to recover a lost identity uses" -1
  12. //menuitem "a seperate and unchangeable password." -1
  13. //menuitem "" -1
  14. //menuitem "To learn more about this functionality you can go to this URL in your browser" -1
  15. //menuitem "\f1https://assault.cubers.net/docs/auth.html" -1
  16. //menuitem "" -1
  17. //ABOUT: the master password was advertised as 'password for account restoration'
  18. menuitem "\f0Set passwords \f4(recommended)" -1
  19. menuitemtextinput "Unlock password\t" "" [___pass = $arg1] [] 64
  20. menuitemtextinput "Master password\t" "" [___ppass = $arg1] [] 64
  21. menuitem "" -1
  22. menuitemradio "Remember game account password: " 0 1 [ ] [ "No \f4(recommended)" "Yes"] [ ___rememberpass = (= $arg1 1)]
  23. menuitem "\f2\t\t\t [ OK ]" [
  24. authsetup genpre
  25. authsetup genpriv
  26. authsetup genpub
  27. if (= $___rememberpass 1) [ alias savedpass $___pass ] [ if (checkalias savedpass) [ delalias savedpass ] ]
  28. closecurmenu
  29. showmenu "auth setup progress"
  30. ]
  31. newmenu "auth setup progress"
  32. menuinit [ sleep 100 [
  33. if (strcmp $___ppass "") [ authsetup savepre ] [ authsetup newppass $___ppass; authsetup savepre ]
  34. if (strcmp $___pass "") [ authsetup savepriv ] [ authsetup newpass $___pass ]
  35. ___ppass = ""
  36. ___pass = ""
  37. if (authsetup) [ echo "\f0created game account" ]
  38. closecurmenu
  39. checkaccount
  40. ] ]
  41. menuitem "Please wait while we create your account..." -1
  42. newmenu [auth password change]
  43. menuinit [ tempalias ___pass ""; tempalias ___rememberpass 0; ]
  44. menuitem "Please choose a new password for your private key" -1
  45. menuitem "" -1
  46. menuitemtextinput "Password for your game account\t" "" [___pass = $arg1] [] 64
  47. menuitemradio "Remember game account password: " 0 1 [ ] [ "No \f4(recommended)" "Yes"] [ ___rememberpass = (= $arg1 1)]
  48. menuitem "\f2[ Set Password ]" [
  49. if (= $___rememberpass 1) [ alias savedpass $___pass ] [ if (checkalias savedpass) [ delalias savedpass ] ]
  50. closecurmenu
  51. showmenu "auth password change progress"
  52. ]
  53. menuitem "\f7[ Cancel ]" closecurmenu
  54. newmenu "auth password change progress"
  55. menuinit [ sleep 100 [
  56. if (strcmp $___pass "") [ ] [ authsetup newpass $___pass ]
  57. ___pass = ""
  58. if (authsetup) [ echo "\f0updated game account" ]
  59. closecurmenu
  60. checkaccount
  61. ] ]
  62. menuitem "Please wait while we update your account..." -1
  63. newmenu [auth]
  64. menuinit [
  65. resetcurmenu
  66. tempalias ___pass ""; tempalias ___rememberpass 0;
  67. if (authsetup) [
  68. menuitem "\f0Pub key:" -1
  69. menuitem (format "\fY%1" (mypubkey)) -1
  70. menuitem "\f2[ Copy to clipboard ]" [setclipboardtext (mypubkey)]
  71. menuitem "" -1
  72. menuitem "\f0Change Password" -1
  73. menuitemtextinput "New password" "" [___pass = $arg1] [] 64
  74. menuitemradio "Remember game account password: " 0 1 [ ] [ "No \f4(recommended)" "Yes"] [ ___rememberpass = (= $arg1 1)]
  75. menuitem "\f2[ Update Password ]" [
  76. if (= $___rememberpass 1) [ alias savedpass $___pass ] [ if (checkalias savedpass) [ delalias savedpass ] ]
  77. closecurmenu
  78. showmenu "auth password change progress"
  79. ]
  80. menuitem "" -1
  81. menuitem "\f3[ Reset auth ]" [ showmenu [auth setup]]
  82. ] [
  83. if (authsetup needpass) [
  84. menuitem "\f3Password required to authenticate \f2[ Enter password ]" [ showmenu [enter password]]
  85. menuitem "" -1
  86. menuitem "\f3[ Reset Auth ]" [ showmenu [auth setup] ]
  87. ] [
  88. menuitem "\f3Auth not setup" -1
  89. menuitem "\f2[ Setup Auth ]" [ showmenu [auth setup] ]
  90. ]
  91. ]
  92. ]
  93. newmenu "game account"
  94. menuitem "To play online you need to create a game account first." -1
  95. menuitem "" -1
  96. menuitem "\t\t\f0[Create game account]" [ closecurmenu; showmenu "auth setup"; ]
  97. menuitem "\t\t[Not now...]" closecurmenu
  98. newmenu "enter password"
  99. menuitemtextinput "please enter the password for your game account\t" "" [ __loginpass = $arg1; closecurmenu; showmenu authentication ] [] 64 1
  100. newmenu "authentication"
  101. menuinit [ sleep 100 [ echo "checking..." ; authsetup passd $__loginpass authfinish; __loginpass = "" ] ]
  102. menuitem "Please wait while we authenticate your game account..." -1
  103. const authfinish [
  104. closecurmenu
  105. if (authsetup) [
  106. echo "\f0authentication successful"
  107. ] [
  108. echo "\f3authentication failed, please enter the correct password for your game account"
  109. ]
  110. ]
  111. // try to authenticate the game account or offer to create a new game account if none exists
  112. // set $arg1 to 1 to enable silent mode to prevent any user interactions
  113. const checkaccount [
  114. if (authsetup) [] [
  115. if (authsetup needpass) [] [
  116. // load the password protected private key
  117. exec private/authprivate.cfg
  118. ]
  119. if (authsetup needpass) [
  120. if (checkalias savedpass) [
  121. // try the saved password if there is one
  122. authsetup passd $savedpass
  123. ] [
  124. // saved password does not exist so ask for password
  125. if (= $arg1 0) [ showmenu "enter password" ]
  126. ]
  127. ] [
  128. // game account does not seem to be set up, ask user to create new game account
  129. if (= $arg1 0) [ showmenu "game account" ]
  130. ]
  131. ]
  132. ]