public static void Main(string[] args) { // TODO: Load plugins here var parameters = new StartParameters(); for (int i = 0; i < args.Length; i++) // TODO: Consider moving this out of this file { var arg = args[i]; try { if (arg.StartsWith("-")) { switch (arg) { case "--config": parameters.Configuration = args[++i]; break; case "--help": DisplayHelp(); return; case "--setup": parameters.RunSetup = true; break; default: Console.WriteLine("Invalid usage! Use Virtue.exe --help to get more information."); return; } } else { Console.WriteLine("Invalid usage! Use Virtue.exe --help to get more information."); return; } } catch { Console.WriteLine("Invalid usage! Use Virtue.exe --help to get more information."); return; } } if (!File.Exists(parameters.Configuration) || parameters.RunSetup) { Setup.FirstTimeSetup(); } else { Configuration = Configuration.Load(parameters.Configuration); } GitHubAPI.Login(Configuration.GitHubUsername, Configuration.GitHubPassword); }
public static void FirstTimeSetup() { // TODO: Consider refactoring // TODO: Alternate locales var config = new Configuration(); Console.WriteLine("Welcome to Virtue. Let's get started."); Console.WriteLine("We need a GitHub account to work with. Virtue is strongly GitHub-oriented."); Console.WriteLine("It is suggested that you create a seperate account for Virtue than your own."); AuthenticatedUser user; do { Console.Write("Username: "******"Password: "******"Try again."); } } while (user == null); Program.Configuration = config; }