Esempio n. 1
0
        public static void Main(string[] args)
        {
            Console.Clear();
            Console.WriteLine("SixNet BBS, Starting up...");
            _bbsDatabaseConfiguration = BBSDatabaseConfiguration.LoadConfig("./");
            if (_bbsDatabaseConfiguration == null)
            {
                Console.WriteLine("Run setup utility first.");
                return;
            }
            _connectionString = BBSDatabaseConfiguration.BuildConnectionString(_bbsDatabaseConfiguration);
            LoggingAPI.Init("./Logs/");
            if (BBSDatabaseConfiguration.IsDatabaseSetup(_connectionString))
            {
                Console.WriteLine("Database configured.");
                _core = new BBSDataCore(_connectionString);
            }
            else
            {
                Console.WriteLine("Database not configured - run setup utility.");
                return;
            }
            var config = _core.GetBBSConfig();

            LoggingAPI.LogEntry("Software started.");
            try
            {
                quitFlag = false;
                BBSServer bbsServer = new BBSServer(_connectionString, config.BBSPort, "BBS Server");
                bbsServer.Start();
                while (!quitFlag)
                {
                    Thread.Sleep(100);
                    if (Console.KeyAvailable)
                    {
                        if (Console.ReadKey().Key == ConsoleKey.Q)
                        {
                            quitFlag = true;
                            bbsServer.Stop();
                            break;
                        }
                    }
                }
            }
            catch (Exception e)
            {
                LoggingAPI.Error(e);
            }
            finally
            {
                LoggingAPI.LogEntry("Software shutdown.");
                LoggingAPI.FlushQueue();
            }
        }
Esempio n. 2
0
        private static void SetupDatabase()
        {
            var dbServer       = Input("Enter your database server name", _bbsDatabaseConfiguration.DatabaseName);
            var dbDatabaseName = Input("Enter the database name", _bbsDatabaseConfiguration.DatabaseServer);
            var dbDatabaseUser = Input("Enter the database user", _bbsDatabaseConfiguration.DatabaseUsername);
            var dbDatabasePass = Input("Enter the database password", _bbsDatabaseConfiguration.DatabasePassword);

            _bbsDatabaseConfiguration.DatabaseName     = dbDatabaseName;
            _bbsDatabaseConfiguration.DatabaseServer   = dbServer;
            _bbsDatabaseConfiguration.DatabaseUsername = dbDatabaseUser;
            _bbsDatabaseConfiguration.DatabasePassword = dbDatabasePass;
            _connectionString = BBSDatabaseConfiguration.BuildConnectionString(_bbsDatabaseConfiguration);
        }
Esempio n. 3
0
        public static void Main(string[] args)
        {
            Console.Clear();
            Console.WriteLine("SixNet Setup Utility");
            _bbsDatabaseConfiguration = BBSDatabaseConfiguration.LoadConfig(_basePath);
            if (_bbsDatabaseConfiguration == null)
            {
                _basePath = Input("BBS Base Path", _basePath);
                _bbsDatabaseConfiguration = BBSDatabaseConfiguration.LoadConfig(_basePath);
                if (_bbsDatabaseConfiguration == null)
                {
                    _bbsDatabaseConfiguration = new BBSDatabaseConfiguration();
                }
            }
            _connectionString = BBSDatabaseConfiguration.BuildConnectionString(_bbsDatabaseConfiguration);

            LoggingAPI.Init(_basePath);

            MainMenu();
        }
Esempio n. 4
0
        private static void MainMenu()
        {
            _exitFlag = false;
            while (!_exitFlag)
            {
                Console.Clear();
                Console.WriteLine("SixNet Setup Utility");
                Divider();
                if (BBSDatabaseConfiguration.IsDatabaseSetup(_connectionString))
                {
                    Console.WriteLine("Database configured.");
                    _core = new BBSDataCore(_connectionString);
                }
                else
                {
                    Console.WriteLine("Database not configured.");
                }
                Divider();
                Console.WriteLine("1. Configure  Database");
                if (BBSDatabaseConfiguration.IsDatabaseSetup(_connectionString))
                {
                    Console.WriteLine("2. Configure BBS");
                    Console.WriteLine("3. Setup Message Bases");
                    Console.WriteLine("4. Setup UD Bases");
                    Console.WriteLine("5. Setup GFile Areas");
                    Console.WriteLine("6. Setup PFile Areas");
                    Console.WriteLine("S. Save Configuration");
                }
                Console.WriteLine("X. Exit");
                var selection = Input("Select", "");
                switch (selection.ToUpper())
                {
                case "1":
                    SetupDatabase();
                    break;

                case "2":
                    SetupBBS();
                    break;

                case "5":
                    SetupGFileAreas();
                    break;

                case "6":
                    SetupPFileAreas();
                    break;

                case "S":
                    BBSDatabaseConfiguration.SaveConfig(_basePath, _bbsDatabaseConfiguration);
                    break;

                case "X":
                    _exitFlag = true;
                    break;

                default:
                    break;
                }
            }
        }