public void UpdateLibraryConfigurationData(LibraryConfigurationData message)
        {
            Books.Clear();

            ConfData    = message;
            LibraryName = message.DatabaseName;
            BookFolder  = message.EbookFolder;

            if (message.LibraryExits)
            {
                BooksCollectedDataMapper    mapper = new BooksCollectedDataMapper(message.RepositoryHost, message.DatabaseName);
                LibraryStatisticsDataMapper stat   = new LibraryStatisticsDataMapper(message.RepositoryHost, message.DatabaseName);

                BookFolder = stat?.Read().FirstOrDefault()?.LibraryDirectory;


                foreach (var book in mapper.Read())
                {
                    if (!Books.Contains(book))
                    {
                        Books.Add(book);
                    }
                }
            }

            LibraryAtHomeMain.Default.EbookFolder       = message.EbookFolder;
            LibraryAtHomeMain.Default.LastLibraryOpened = message.DatabaseName;
            LibraryAtHomeMain.Default.LibraryExists     = true;
            LibraryAtHomeMain.Default.RepositoryHost    = message.RepositoryHost;
            LibraryAtHomeMain.Default.Save();
        }
示例#2
0
        public MainWindow()
        {
            InitializeComponent();

            if (LibraryAtHomeMain.Default.LibraryExists)
            {
                LibraryConfigurationData confData = new LibraryConfigurationData();
                confData.DatabaseName = LibraryAtHomeMain.Default.LastLibraryOpened;
                confData.EbookFolder = LibraryAtHomeMain.Default.EbookFolder;
                confData.RepositoryHost = LibraryAtHomeMain.Default.RepositoryHost;
                confData.LibraryExits = LibraryAtHomeMain.Default.LibraryExists;
                GalaSoft.MvvmLight.Messaging.Messenger.Default.Send(confData);
            }
        }
示例#3
0
        public LibraryConfigurationViewModel()
        {
            ChooseFolderStringCommand = new RelayCommand <LibraryConfigurationWindow>(o => ChooseFolder(o));
            ManageEbookFormatsCommand = new RelayCommand <object>((s) => ManageEbookFormats(s));
            ConfigurationDoneCommand  = new RelayCommand <LibraryConfigurationWindow>(o => ConfigurationDone(o));
            _ebookFormats             = new ObservableDictionary <string, bool>();
            _configurationData        = new LibraryConfigurationData();

            _libraries = new List <string>();

            SetDefaultEbookFormat();



            string server = string.IsNullOrEmpty(TxtDatabaseServer) ? "localhost" : TxtDatabaseServer;

            _mongoServerManager = new MongodbServerManager(server);
        }