NewsDao.php 799 B

12345678910111213141516171819202122232425262728293031323334353637
  1. <?php
  2. namespace internship\model;
  3. use n2n\persistence\orm\EntityManager;
  4. use n2n\context\attribute\RequestScoped;
  5. use internship\bo\Comment;
  6. use n2n\context\attribute\Inject;
  7. use internship\bo\News;
  8. use internship\bo\Article;
  9. use internship\bo\MainNews;
  10. #[RequestScoped]
  11. class NewsDao {
  12. #[Inject]
  13. private EntityManager $em;
  14. /**
  15. * Gebe alle {@see Comment}-Objekte, nach id absteigend sortiert, zurück.
  16. *
  17. * @return Comment[]
  18. *
  19. */
  20. function getNews(): array {
  21. $criteria = $this->em->createSimpleCriteria(News::getClass(), array(), array('id' => 'DESC'));
  22. return $criteria->toQuery()->fetchArray();
  23. }
  24. function getNewsById(int $id): ?News {
  25. return $this->em->find(News::getClass(), $id);
  26. }
  27. function saveNews(News $newArticle): void {
  28. $this->em->persist($newArticle);
  29. }
  30. }