/// <summary>
        /// Place advertisement wherever it can be added
        /// </summary>
        /// <param name="paper"></param>
        public void AddAddvertisementToNewsPaper(NewsPaper paper)
        {
            try
            {
                int adCounter = 0;
                foreach (var page in paper.NewsPaperPages)
                {
                    int newsCount = page.NewsArticle.Count;
                    int advCount  = page.Advertisement.Count;

                    if (IsPageHasPlaceForNews(page))
                    {
                        int AdCountToPush = MAX_CONTENT_PER_PAGE - (newsCount + advCount);
                        if (AdCountToPush > 0)
                        {
                            page.Advertisement.AddRange(lstAdvertise.Where((value, index) => index >= adCounter && index < (adCounter + MAX_AD_PER_PAGE)).ToList());
                            adCounter = adCounter + MAX_AD_PER_PAGE;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Exemplo n.º 2
0
    protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        NewsPaper paper = (NewsPaper)ViewState["paper"];

        if (DropDownList1.Text == "第A01版")
        {
            NewsImg.ImageUrl = "../newspaper/" + paper.N_AImg;
            CLinkButtonColor(btnPage1);
        }
        else if (DropDownList1.Text == "第A02版")
        {
            NewsImg.ImageUrl = "../newspaper/" + paper.N_BImg;
            CLinkButtonColor(btnPage2);
        }
        else if (DropDownList1.Text == "第A03版")
        {
            NewsImg.ImageUrl = "../newspaper/" + paper.N_CImg;
            CLinkButtonColor(btnPage3);
        }
        else if (DropDownList1.Text == "第A04版")
        {
            NewsImg.ImageUrl = "../newspaper/" + paper.N_DImg;
            CLinkButtonColor(btnPage4);
        }
    }
Exemplo n.º 3
0
    protected void btnPage4_Click(object sender, EventArgs e)
    {
        NewsPaper paper = (NewsPaper)ViewState["paper"];

        NewsImg.ImageUrl = "../newspaper/" + paper.N_DImg;
        CLinkButtonColor(btnPage4);
    }
        public void ShouldNotifyObserversOfGameResult()
        {
            var subject   = new SportsAggregator();
            var observer1 = new NewsPaper();
            var observer2 = new RadioStation();

            subject.RegisterObserver(observer1);
            subject.RegisterObserver(observer2);
            var gameResult = new GameResult
            {
                GameDate     = DateTime.Now,
                LosingScore  = 1,
                LosingTeam   = "Chicago Cubs",
                WinningScore = 5,
                WinningTeam  = "Cincinnati Reds"
            };

            subject.AddGameResult(gameResult);
            Assert.Equal(1, observer1.Results.Count);
            Assert.Equal(1, observer2.Results.Count);
            Assert.Same(gameResult, observer1.Results[0]);
            Assert.Same(gameResult, observer2.Results[0]);
            subject.UnregisterObserver(observer1);
            subject.UnregisterObserver(observer2);
            Assert.Equal(0, subject.Observers.Count);
        }
        public async Task <NewsPaper> UpdateAsync(NewsPaper NewsPaper)
        {
            NewsPaper.LastModificationDate = DateTime.Now;
            var result = await _unitOfWork.Newspapers.UpdateAsync(NewsPaper);

            return(result);
        }
Exemplo n.º 6
0
        protected virtual NewsPaper GetNewspaperFromReader(IDataReader reader)
        {
            EntityConverter <NewsPaper> newsPaperEntity = new EntityConverter <NewsPaper>();
            NewsPaper newsPaper = newsPaperEntity.Convert(reader);

            return(newsPaper);
        }
        public void DoesntHandleNullObjectsCorrectly()
        {
            var subject   = new SportsAggregator();
            var observer1 = new NewsPaper();
            var observer2 = new RadioStation();

            subject.RegisterObserver(observer1);
            subject.RegisterObserver(observer2);
            observer1 = null;
            GC.Collect();
            GC.WaitForPendingFinalizers();
            var gameResult = new GameResult
            {
                GameDate     = DateTime.Now,
                LosingScore  = 1,
                LosingTeam   = "Chicago Cubs",
                WinningScore = 5,
                WinningTeam  = "Cincinnati Reds"
            };

            subject.AddGameResult(gameResult);
            subject.UnregisterObserver(observer2);
            //subject.UnregisterObserver(observer1);
            Assert.Equal(1, subject.Observers.Count);
        }
        public void UpdateNewsPapers(EditNewsPaperViewModel tempNewsPaper)
        {
            var newsPaper = new NewsPaper();

            Mapper.Map(tempNewsPaper, newsPaper);
            _newsPapersRepository.Update(newsPaper);
        }
Exemplo n.º 9
0
        public void SportsAggregator_AddGameResult()
        {
            // Arrange
            var subject   = new SportsAggregator();
            var observer1 = new NewsPaper();
            var observer2 = new RadioStation();

            subject.RegisterObserver(observer1);
            subject.RegisterObserver(observer2);
            var gameResult = new GameResult
            {
                GameDate     = DateTime.Now,
                LosingScore  = 1,
                LosingTeam   = "Mariners",
                WinningScore = 10,
                WinningTeam  = "Astros"
            };

            // Action
            subject.AddGameResult(gameResult);

            // Assert
            Assert.AreEqual(1, observer1.Results.Count);
            Assert.AreEqual(1, observer2.Results.Count);
            Assert.AreSame(gameResult, observer1.Results[0]);
            Assert.AreSame(gameResult, observer2.Results[0]);

            // Action
            subject.UnregisterObserver(observer1);
            subject.UnregisterObserver(observer2);

            Assert.IsFalse(subject.Observers.Any());
        }
Exemplo n.º 10
0
        public virtual ActionResult Update(NewsPaper entity)
        {
            entity.LastUpdatedTime = DateTime.Now;
            OperationResult or = NewsPaperService.Update(entity);

            return(this.JsonFormat(or));
        }
Exemplo n.º 11
0
 public NewsPaperModel(NewsPaper newsPaper)
 {
     FeedUrls   = newsPaper.FeedUrls;
     PaperTitle = newsPaper.PaperTitle;
     NewsList   = newsPaper.NewsList;
     Feeds      = newsPaper.Feeds;
 }
Exemplo n.º 12
0
        private void AssignPublisherToNewsPaper(NewsPaper paper)
        {
            Console.WriteLine("Enter name of Publisher to assign:");
            string    publisherName = Console.ReadLine();
            Publisher newPublisher  = GetPublisher(publisherName);

            if (newPublisher == null)
            {
                Console.WriteLine("Publisher not found");
            }
            else
            {
                paper.Publisher = newPublisher;
                foreach (Publisher tempPublisher in viewModel.Publishers)
                {
                    for (int i = 0; i < tempPublisher.NewsPapers.Count; i++)
                    {
                        if (tempPublisher.NewsPapers[i].Name == paper.Name)
                        {
                            tempPublisher.NewsPapers.RemoveAt(i);
                            break;
                        }
                    }
                    if (tempPublisher.Name == newPublisher.Name)
                    {
                        tempPublisher.NewsPapers.Add(paper);
                    }
                }
            }
        }
Exemplo n.º 13
0
        public static void ReadFromString <T>(string input, out T textPaper) where T : TextPaper
        {
            int index;

            char[] typeIdentity;
            textPaper    = null;
            index        = input.IndexOf('>');
            typeIdentity = new char[index + 1];
            input.CopyTo(0, typeIdentity, 0, index + 1);

            switch (new string(typeIdentity))
            {
            case "<Book>":
                Book book = new Book();
                ReadFromString(input, out book);
                textPaper = book as T;
                break;

            case "<NewsPaper>":
                NewsPaper newsPaper = new NewsPaper();
                ReadFromString(input, out newsPaper);
                textPaper = newsPaper as T;
                break;

            case "<Jornal>":
                Jornal jornal = new Jornal();
                ReadFromString(input, out jornal);
                textPaper = jornal as T;
                break;
            }
        }
Exemplo n.º 14
0
        public void ShouldHandleNullObjectsCorrectly()
        {
            var subject   = new SportsAggregatorWeakReferences();
            var observer1 = new NewsPaper();
            var observer2 = new RadioStation();
            var wr1       = subject.RegisterObserver(observer1);
            var wr2       = subject.RegisterObserver(observer2);

            observer1 = null;
            //Demo code. don't do this in real life
            GC.Collect();
            GC.WaitForPendingFinalizers();
            var gameResult = new GameResult
            {
                GameDate     = DateTime.Now,
                LosingScore  = 1,
                LosingTeam   = "Chicago Cubs",
                WinningScore = 5,
                WinningTeam  = "Cincinnati Reds"
            };

            subject.AddGameResult(gameResult);
            //No longer need this line...
            //subject.UnregisterObserver(wr1);
            foreach (var foo in subject.Observers)
            {
                foo?.TryGetTarget(out var observer);
            }
            subject.UnregisterObserver(wr2);
            Assert.Equal(0, subject.Observers.Count);
        }
Exemplo n.º 15
0
 public void UpdateNewsPaper(NewsPaper newsletter, string newName)
 {
     if (NewsPapers.Contains(newsletter))
     {
         if (newName != "")
         {
             bool exist = false;
             foreach (NewsPaper xnewsPapers in NewsPapers)
             {
                 if (xnewsPapers.Name == newName)
                 {
                     exist = true;
                 }
             }
             if (!exist)
             {
                 newsletter.Name = newName;
                 NewsPapers[NewsPapers.IndexOf(newsletter)] = newsletter;
                 SaveData();
             }
             else
             {
                 MessageBox.Show("Der von Ihnen gewählte Zeitungsname ist bereits vorhanden!");
             }
         }
         else
         {
             MessageBox.Show("Sie können kein leeren Namen für Zeitungen benutzen.");
         }
     }
     else
     {
         MessageBox.Show("Bitte wählen Sie ein Zeitung aus, bevor Sie diesen ändern können.");
     }
 }
Exemplo n.º 16
0
        public void ShouldPublishToAllSubscribers()
        {
            var newsHandler  = new NewsHandler();
            var newsPaperOne = new NewsPaper("New York Times");
            var newsPaperTwo = new NewsPaper("Washington Post");

            var news = GenerateTestNews();

            newsHandler.PostNews(news[0]);

            newsPaperOne.Subscribe(newsHandler);

            newsHandler.PostNews(news[1]);

            newsPaperTwo.Subscribe(newsHandler);

            newsHandler.PostNews(news[2]);

            newsPaperOne.newsInfo.Count.Should().Be(3);
            newsPaperTwo.newsInfo.Count.Should().Be(3);

            newsPaperOne.newsInfo[0].Should().Be(news[0].ToString());
            newsPaperOne.newsInfo[1].Should().Be(news[1].ToString());
            newsPaperOne.newsInfo[2].Should().Be(news[2].ToString());

            newsPaperTwo.newsInfo[0].Should().Be(news[0].ToString());
            newsPaperTwo.newsInfo[1].Should().Be(news[1].ToString());
            newsPaperTwo.newsInfo[2].Should().Be(news[2].ToString());
        }
Exemplo n.º 17
0
 public void DeleteNewsPaper(NewsPaper newsletter)
 {
     if (NewsPapers.Contains(newsletter))
     {
         NewsPapers.Remove(newsletter);
     }
     SaveData();
 }
Exemplo n.º 18
0
        public ActionResult CreateNewspaper(NewsPaper newsPaper)
        {
            IndexModel indexModel = (IndexModel)Session["LibraryState"];

            newsPaper.Id = indexModel.NewsPapers.Count + _AUTOINCREMENT;
            indexModel.NewsPapers.Add(newsPaper);
            return(RedirectToAction("Index"));
        }
        public void AddNewPaperTest()
        {
            Catalogue catalogue = new Catalogue();
            NewsPaper newsPaper = new NewsPaper("Gazeta Wyborcza", "Agora", 2019, 41, 28, "Dokąd idziemy?");

            catalogue.Add(newsPaper);
            Assert.IsTrue(catalogue.NewsPapers.Contains(newsPaper));
        }
        public ActionResult DeleteConfirmed(int id)
        {
            NewsPaper newsPaper = db.NewsPapers.Find(id);

            db.NewsPapers.Remove(newsPaper);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemplo n.º 21
0
        public void CreateNewNewsPaper(string name)
        {
            NewsPaper newspaper = new NewsPaper(name);

            NewsPapers.Add(newspaper);
            OnPropertyChanged(nameof(NewsPapers));
            SaveDataBase();
        }
Exemplo n.º 22
0
 public void SetNewsPaper(object sender, PublisherArgs args)
 {
     //假设有多个Publisher
     if (sender is Publisher)
     {
         args.NewsPaper.PublisherName = (sender as Publisher).name;
     }
     this.newsPaper = args.NewsPaper;
 }
Exemplo n.º 23
0
        private static void ReadFromString(string input, out NewsPaper newspaper)
        {
            newspaper = new NewsPaper();
            List <Article> articles;

            newspaper.Name = ReadContext("Name", input);
            ArticleReader(input, out articles);
            newspaper.Articles = new List <Article>(articles);
        }
Exemplo n.º 24
0
        public ActionResult DeleteNewspaper(int?id)
        {
            IndexModel indexModel = (IndexModel)Session["LibraryState"];
            NewsPaper  newspaper  = (from t in indexModel.NewsPapers
                                     where t.Id == id
                                     select t).First();

            return(PartialView(newspaper));
        }
 public ActionResult Edit([Bind(Include = "NewsPaperID,Title,SiteLink")] NewsPaper newsPaper)
 {
     if (ModelState.IsValid)
     {
         db.Entry(newsPaper).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(newsPaper));
 }
Exemplo n.º 26
0
        private void NewsPaperListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (e.AddedItems.Count > 0)
            {
                NewsPaper newspaper = (NewsPaper)e.AddedItems[0];
                NewsPaperName.Text = newspaper.Name;

                UpdateNewsPaper.IsEnabled = true;
                DeleteNewsPaper.IsEnabled = true;
            }
        }
        public void FindNewsPaperByTitleAndNoTest()
        {
            Catalogue catalogue = new Catalogue();
            NewsPaper newsPaper = new NewsPaper("Gazeta Wyborcza", "Agora", 2019, 41, 28, "Dokąd idziemy?");

            catalogue.Add(newsPaper);

            NewsPaper findNewsPaper = catalogue.FindNewsPaperByTitleAndNo("Gazeta Wyborcza", 41);

            Assert.AreSame(newsPaper, findNewsPaper);
        }
        public NewsPaper DeleteNewsPaper(int NewsPaperID)
        {
            NewsPaper dbEntry = context.NewsPapers.Find(NewsPaperID);

            if (dbEntry != null)
            {
                context.NewsPapers.Remove(dbEntry);
                context.SaveChanges();
            }
            return(dbEntry);
        }
Exemplo n.º 29
0
        public static string ToWritebleTxt(NewsPaper newsPaper)
        {
            string result = "<NewsPaper><Name>" + newsPaper.Name + "</Name>";

            foreach (Article article in newsPaper.Articles)
            {
                result += ToWritebleTxt(article);
            }
            result += "</NewsPaper>";
            return(result);
        }
Exemplo n.º 30
0
        public EditNewsPaperViewModel GetNewsPaper(int?id)
        {
            NewsPaper tempPaper = _newsPapersRepository.FindById(id);
            EditNewsPaperViewModel newsPaper = new EditNewsPaperViewModel();

            Mapper.Map(tempPaper, newsPaper);

            newsPaper.ListPublichHouse = new SelectList(_publishHouseRepository.Get(), "Id", "PublishHouse");

            return(newsPaper);
        }