forked from R-J/EventCalendar
-
Notifications
You must be signed in to change notification settings - Fork 0
/
class.eventcalendarmodel.php
86 lines (40 loc) · 1.43 KB
/
class.eventcalendarmodel.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php if (!defined('APPLICATION')) exit();
class EventCalendarModel extends VanillaModel {
public function Get($Begin, $End, $Offset = '0', $Limit = '') {
// Validate parameters, set today as default
$BeginDate = strtotime($Begin);
if ($BeginDate <= 0) {
$BeginDate = date('Y-m-d');
} else {
$BeginDate = date('Y-m-d', $BeginDate);
}
$EndDate = strtotime($End);
if ($EndDate <= 0) {
$EndDate = date('Y-m-d');
} else {
$EndDate = date('Y-m-d', $EndDate);
}
if (!is_numeric($Offset)) {
$Offset = 0;
}
if (!is_numeric($Limit)) {
$Limit = '';
}
$Sql = GDN::SQL();
$Sql->Select('d.Name, d.Body, d.Format')
->Select('d.InsertUserID', '', 'UserID')
->Select('DAY FROM d.EventCalendarDate', 'EXTRACT', 'EventCalendarDay')
->From('Discussion d')
->Where('d.EventCalendarDate >=', $BeginDate)
->Where('d.EventCalendarDate <=', $EndDate)
->OrderBy('d.EventCalendarDate')
->Limit($Limit, $Offset);
// add permission restrictions if necessary
$Perms = DiscussionModel::CategoryPermissions();
if ($Perms !== TRUE) {
$Sql->WhereIn('d.CategoryID', $Perms);
}
// return $Sql->GetSelect();
return $Sql->Get()->ResultArray();
}
}