Correct calendar loading when calendar are from hooks. fix oc-619

This commit is contained in:
Brice Maron 2012-05-10 19:36:30 +00:00
parent 7bc6e86969
commit ffe5ef2268
2 changed files with 16 additions and 9 deletions

View File

@ -12,16 +12,20 @@ require_once('when/When.php');
OCP\JSON::checkLoggedIn();
OCP\JSON::checkAppEnabled('calendar');
$calendar = OC_Calendar_App::getCalendar($_GET['calendar_id'], false, false);
if(is_numeric($calendar['userid']) && $calendar['userid'] != OCP\User::getUser){
OCP\JSON::error();
exit;
// Look for the calendar id
$calendar_id = OC_Calendar_App::getCalendar($_GET['calendar_id'], false, false);
if($calendar_id !== false){
if(! is_numeric($calendar['userid']) && $calendar['userid'] != OCP\User::getUser()){
OCP\JSON::error();
exit;
}
$start = (version_compare(PHP_VERSION, '5.3.0', '>='))?DateTime::createFromFormat('U', $_GET['start']):new DateTime('@' . $_GET['start']);
$end = (version_compare(PHP_VERSION, '5.3.0', '>='))?DateTime::createFromFormat('U', $_GET['end']):new DateTime('@' . $_GET['end']);
}
$start = (version_compare(PHP_VERSION, '5.3.0', '>='))?DateTime::createFromFormat('U', $_GET['start']):new DateTime('@' . $_GET['start']);
$end = (version_compare(PHP_VERSION, '5.3.0', '>='))?DateTime::createFromFormat('U', $_GET['end']):new DateTime('@' . $_GET['end']);
$events = OC_Calendar_App::getrequestedEvents($calendar['id'], $start, $end);
else {
$calendar_id = $_GET['calendar_id'];
}
$events = OC_Calendar_App::getrequestedEvents($calendar_id, $start, $end);
$output = array();
foreach($events as $event){

View File

@ -36,6 +36,9 @@ class OC_Calendar_App{
* @return mixed - bool / array
*/
public static function getCalendar($id, $security = true, $shared = false){
if(! is_numeric($id)){
return false;
}
$calendar = OC_Calendar_Calendar::find($id);
if($shared === true){
if(OC_Calendar_Share::check_access(OCP\USER::getUser(), $id, OC_Calendar_Share::CALENDAR)){