File tree Expand file tree Collapse file tree 2 files changed +11
-4
lines changed Expand file tree Collapse file tree 2 files changed +11
-4
lines changed Original file line number Diff line number Diff line change 5
5
use DateInterval ;
6
6
use DateTimeImmutable ;
7
7
use EvanG \Modules \MailSystem \Settings ;
8
+ use Exception ;
8
9
use Fisharebest \Webtrees \Registry ;
9
10
use Fisharebest \Webtrees \Services \UserService ;
10
11
use Fisharebest \Webtrees \Tree ;
@@ -23,7 +24,7 @@ public function __construct()
23
24
}
24
25
25
26
/**
26
- * @throws \ Exception
27
+ * @throws Exception
27
28
*/
28
29
public function get (Settings $ args , Tree $ tree ): Collection
29
30
{
Original file line number Diff line number Diff line change 2
2
3
3
namespace EvanG \Modules \MailSystem \Helpers ;
4
4
5
+ use DateInterval ;
5
6
use DateTime ;
6
7
use DateTimeInterface ;
7
8
use DateTimeZone ;
8
9
use EvanG \Modules \MailSystem \Settings ;
10
+ use Exception ;
9
11
use Fisharebest \Webtrees \Tree ;
10
- use Illuminate \Support \Collection ;
11
12
use Illuminate \Database \Capsule \Manager as DB ;
13
+ use Illuminate \Support \Collection ;
12
14
use stdClass ;
13
15
14
16
class News implements DataGetter
15
17
{
18
+ /**
19
+ * @throws Exception
20
+ */
16
21
public function get (Settings $ args , Tree $ tree ): Collection
17
22
{
23
+ $ minDate = $ args ->getLastSend () ?? $ args ->getThisSend ()->sub (new DateInterval ('P ' . $ args ->getDays () . 'D ' ));
18
24
return DB ::table ('news ' )
19
25
->where ('gedcom_id ' , '= ' , $ tree ->id ())
20
- ->where ('updated ' , '> ' , $ args -> getLastSend () ->format ("Y-m-d H:i:s " ))
26
+ ->where ('updated ' , '> ' , $ minDate ->format ("Y-m-d H:i:s " ))
21
27
->where ('updated ' , '< ' , $ args ->getThisSend ()->format ("Y-m-d H:i:s " ))
22
28
->orderBy ('updated ' )
23
29
->get ()
24
- ->map (function (stdClass $ row ){
30
+ ->map (function (stdClass $ row ) {
25
31
return [
26
32
"id " => $ row ->news_id ,
27
33
"date " => (new DateTime ($ row ->updated , new DateTimeZone ("UTC " )))->format (DateTimeInterface::ATOM ),
You can’t perform that action at this time.
0 commit comments