phorge/src/applications/calendar/controller/browse/PhabricatorCalendarBrowseController.php
epriestley e35d72f489 Build a basic calendar view
Summary:
This is a very small step toward building a Status and possibly an Oncall tool.
Build a calendar view which renders months.

Much of my hesitance to bang these tools out is that dealing with
dates/calendaring is basically horrible, so I'm trying to ease into it.

This calendar is locale-aware and all that jazz.

Test Plan:
  - See:
https://secure.phabricator.com/file/view/PHID-FILE-c07a9c663a7d040d2529/
  - Verified that months have the right number of days, today is the right day
of the week, months begin on the day after previous months end on, etc.

Reviewed By: aran
Reviewers: jungejason, tuomaspelkonen, aran
Commenters: cwbeck, jungejason
CC: blair, aran, epriestley, cwbeck, jungejason
Differential Revision: 791
2011-08-08 10:34:06 -07:00

42 lines
1.2 KiB
PHP

<?php
/*
* Copyright 2011 Facebook, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
class PhabricatorCalendarBrowseController
extends PhabricatorCalendarController {
public function processRequest() {
$request = $this->getRequest();
$user = $request->getUser();
$months = array();
for ($ii = 1; $ii <= 12; $ii++) {
$month_view = new AphrontCalendarMonthView($ii, 2011);
$month_view->setUser($user);
$months[] = '<div style="padding: 2em;">';
$months[] = $month_view;
$months[] = '</div>';
}
return $this->buildStandardPageResponse(
$months,
array(
'title' => 'Calendar',
));
}
}