Example #1
0
        private void OnAddCommand(object param)
        {
            AddBox box = new AddBox();

            box.ShowDialog();

            string result = box.GetResult;

            if (!string.IsNullOrWhiteSpace(result))
            {
                Page page = _database.GetPages(_currentSectionId).Where(f => f.Name == result).FirstOrDefault();
                if (page == null)
                {
                    page = new Page()
                    {
                        Name        = result,
                        Description = "",
                        Text        = "",
                        Section     = _currentSectionId
                    };
                    _database.AddPage(page);
                    Pages.Add(page);

                    PropertyChanged.Invoke(this, new PropertyChangedEventArgs(nameof(Pages)));
                }
            }
        }
Example #2
0
        private void SyncPages()
        {
            var data = _database.GetPages(_enviroment.CurrentUser.ID);

            //Если у нас ничего нет то нам нужно доставть все книги
            if (data.Count() == 0)
            {
                var element = _communication.GetPages(_enviroment.UserToken, source.Token);

                foreach (var page in element.Pages)
                {
                    _database.AddPage(page);
                }

                _enviroment.RemotePageCursor = element.LastHistory;
            }
            else
            {
                //Отправить
                var toSend = _database.GetPageHistory(_enviroment.LocalPageCursor);
                _communication.SetPageHistory(_enviroment.UserToken, toSend, source.Token);

                //Получаем
                var element = _communication.GetHistory(_enviroment.UserToken, "Page", _enviroment.RemotePageCursor, source.Token);

                if (element.Records.Count() > 0)
                {
                    _database.UpdatePageByHistory(element.Records, element.Details);
                    _enviroment.RemotePageCursor = element.Records.Last().ID;
                }
            }
        }
Example #3
0
 public void AddLocalPage(Page value)
 {
     _db.AddPage(value);
 }