本文整理汇总了PHP中Location::fetchAll方法的典型用法代码示例。如果您正苦于以下问题:PHP Location::fetchAll方法的具体用法?PHP Location::fetchAll怎么用?PHP Location::fetchAll使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Location
的用法示例。
在下文中一共展示了Location::fetchAll方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getReportCsv
public function getReportCsv($fromDate, $toDate)
{
$event = new Event();
$workshop = new Workshop();
$location = new Location();
$attendee = new Event_Attendee();
// go ahead and get all the workshops so we don't have to do loads of DB queries
$workshopList = $workshop->fetchAll();
$workshops = array();
foreach ($workshopList as $w) {
$workshops[$w->workshopId] = $w->toArray();
}
// go ahead and get all the locations so we don't have to do loads of DB queries
$locationList = $location->fetchAll();
$locations = array();
foreach ($locationList as $l) {
$locations[$l->locationId] = $l->toArray();
}
$events = $event->getEvents(null, null, null, $fromDate, $toDate)->toArray();
$fileName = 'report-' . date('Ymd-B') . '.csv';
$tmpName = tempnam('/tmp', $fileName);
$fp = fopen($tmpName, 'w');
$columnNames = array('eventId' => 'eventId', 'workshopId' => 'workshopId', 'workshopTitle' => 'workshopTitle', 'locationId' => 'locationId', 'locationName' => 'locationName', 'eventDate' => 'eventDate', 'startTime' => 'startTime', 'endTime' => 'endTime', 'accountId' => 'accountId', 'username' => 'username', 'firstName' => 'firstName', 'lastName' => 'lastName', 'status' => 'status', 'attended' => 'attended');
$ret = fputcsv($fp, $columnNames, ',', '"');
if ($ret === false) {
throw new Ot_Exception_Data('Error writing backup CSV file');
}
foreach ($events as &$e) {
$e['workshop'] = $workshops[$e['workshopId']];
$e['location'] = $locations[$e['locationId']];
$e['attendees'] = $attendee->getAttendeesForEvent($e['eventId']);
foreach ($e['attendees'] as $a) {
$data = array();
$data = array('eventId' => $e['eventId'], 'workshopId' => $e['workshopId'], 'workshopTitle' => $e['workshop']['title'], 'locationId' => $e['locationId'], 'locationName' => $e['location']['name'], 'eventDate' => $e['date'], 'startTime' => $e['startTime'], 'endTime' => $e['endTime'], 'accountId' => $a['accountId'], 'username' => $a['username'], 'firstName' => $a['firstName'], 'lastName' => $a['lastName'], 'status' => $a['status'], 'attended' => $a['attended']);
$ret = fputcsv($fp, $data, ',', '"');
if ($ret === false) {
throw new Ot_Exception_Data('Error writing backup CSV file');
}
}
}
fclose($fp);
file_get_contents($tmpName);
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Length: ' . filesize($tmpName));
header("Content-Disposition: attachment; filename={$fileName}");
readfile($tmpName);
unlink($tmpName);
}
示例2: indexAction
/**
* Allows a user to view the list of locations.
*
*/
public function indexAction()
{
$this->view->acl = array('add' => $this->_helper->hasAccess('add'), 'edit' => $this->_helper->hasAccess('edit'), 'viewDisabled' => $this->_helper->hasAccess('view-disabled'));
$locationDb = new Location();
$locations = $locationDb->fetchAll(null, array('status', 'name'));
$locationType = new LocationType();
foreach ($locations as $key => $location) {
$type = $locationType->getTypeById($location['locationType']);
$location->locationType = $type['name'];
$locations[$key] = $location;
}
$this->view->locations = $locations;
$this->view->messages = $this->_helper->flashMessenger->getMessages();
$this->_helper->pageTitle('workshop-location-index:title');
}
示例3: detailsAction
/**
* Allows a user to view the details of a workshop
*
*/
public function detailsAction()
{
$get = Zend_Registry::get('getFilter');
if (!isset($get->workshopId)) {
throw new Ot_Exception_Input('msg-error-workshopIdNotSet');
}
$workshop = new Workshop();
$thisWorkshop = $workshop->find($get->workshopId);
if (is_null($thisWorkshop)) {
throw new Ot_Exception_Data('msg-error-noWorkshop');
}
$document = new Workshop_Document();
$this->view->documents = $document->getDocumentsForWorkshop($thisWorkshop->workshopId);
$tag = new Tag();
$this->view->tags = $tag->getTagsForAttribute('workshopId', $thisWorkshop->workshopId);
$event = new Event();
$events = $event->getEvents($thisWorkshop->workshopId, null, null, time(), null, 'open')->toArray();
$auth = Zend_Auth::getInstance();
foreach ($events as &$e) {
if ($auth->hasIdentity()) {
$e['status'] = $event->getStatusOfUserForEvent($auth->getIdentity()->accountId, $e['eventId']);
} else {
$e['status'] = '';
}
$e['workshop'] = $thisWorkshop->toArray();
}
$this->view->events = $events;
$wl = new Workshop_Link();
$this->view->links = $wl->getLinksForWorkshop($thisWorkshop->workshopId)->toArray();
$location = new Location();
$locations = $location->fetchAll();
$locs = array();
foreach ($locations as $l) {
$locs[$l->locationId] = $l->toArray();
}
$this->view->locations = $locs;
$we = new Workshop_Editor();
$isEditor = false;
if ($this->_helper->hasAccess('edit-all-workshops')) {
$isEditor = true;
} elseif ($auth->hasIdentity()) {
$isEditor = $we->isEditor($thisWorkshop->workshopId, $auth->getIdentity()->accountId);
}
$this->view->acl = array('edit' => $isEditor, 'addDocuments' => $isEditor, 'editDocument' => $isEditor, 'deleteDocument' => $isEditor, 'addLink' => $isEditor, 'deleteLink' => $isEditor, 'editLink' => $isEditor, 'reorderLink' => $isEditor, 'addEvent' => $this->_helper->hasAccess('index', 'workshop_schedule'), 'options' => $this->_helper->hasAccess('options'));
if ($this->view->acl['edit']) {
$we = new Workshop_Editor();
$where = $we->getAdapter()->quoteInto('workshopId = ?', $thisWorkshop->workshopId);
$results = $we->fetchAll($where);
$currentEditors = array();
foreach ($results as $r) {
$currentEditors[] = $r->accountId;
}
if (count($currentEditors) != 0) {
$account = new Ot_Account();
$accounts = $account->fetchAll($account->getAdapter()->quoteInto('accountId IN (?)', $currentEditors), array('lastName', 'firstName'));
$currentEditors = $accounts->toArray();
}
$this->view->editors = $currentEditors;
}
$category = new Category();
$thisCategory = $category->find($thisWorkshop->categoryId);
$this->view->layout()->setLayout('twocolumn');
$this->view->layout()->rightContent = $this->view->render('index/right.phtml');
$this->view->messages = $this->_helper->flashMessenger->getMessages();
$this->view->title = $thisWorkshop->title;
$this->view->workshop = $thisWorkshop->toArray();
$this->view->category = $thisCategory;
}
示例4: getAll
public static function getAll()
{
if (self::$_locations) {
return self::$_locations;
}
//$region_b = System::getSetting('display_region_b');
//$region_c = System::getSetting('display_region_c');
$tableObj = new Location();
$select = $tableObj->select()->from(array('l' => 'location'))->where('is_deleted = 0')->order('location_name');
$output = array();
try {
$rows = $tableObj->fetchAll($select);
//reindex with id
$indexed = array();
while ($rows->current()) {
$indexed[$rows->current()->id] = $rows->current()->toArray();
$rows->next();
}
$num_tiers = 1;
foreach ($indexed as $row) {
//check that the hierarchy works
//if the parent is more than one tier higher, then no good unless the middle region is off
$is_good = true;
$parent_tier = !$row['parent_id'] ? 0 : $indexed[$row['parent_id']]['tier'];
if ($row['tier'] > 1 && !$parent_tier) {
$is_good = false;
} else {
if ($parent_tier + 1 != $row['tier']) {
$is_good = false;
}
}
$output[$row['id']] = array('id' => $row['id'], 'uuid' => $row['uuid'], 'name' => $row['location_name'], 'parent_id' => $row['parent_id'] ? $row['parent_id'] : 0, 'tier' => $row['tier'], 'is_default' => $row['is_default'], 'is_good' => $is_good);
if ($row['tier'] > $num_tiers) {
$num_tiers = $row['tier'];
}
}
//check for null parents and add 'unknown' option
$has_parents = array();
for ($t = 2; $t <= $num_tiers; $t++) {
$has_parents[$t] = true;
}
for ($t = 2; $t <= $num_tiers; $t++) {
foreach ($output as $l) {
if (!$l['parent_id']) {
$has_parents[$t] = false;
}
}
}
/*
foreach($has_parents as $t=>$has) {
if ( !$has )
$output []= array('id' => 0, 'name' => t('unknown'), 'tier'=>$t-1 ,'is_default'=>0, 'parent_id'=>0);
}
*/
self::$_locations = $output;
return self::$_locations;
} catch (Zend_Exception $e) {
error_log($e);
}
return null;
}
示例5: indexAction
/**
* The main scheduler page. This allows a user to view and edit the schedule. Users
* will almost certainly need access to this entire controller to make the
* scheduler work properly and look right.
*
*/
public function indexAction()
{
$this->view->acl = array('addEvent' => $this->_helper->hasAccess('add-event'));
$get = Zend_Registry::get('getFilter');
if (isset($get->workshopId)) {
$workshopId = $get->workshopId;
$this->view->workshopId = $workshopId;
$this->view->startInAddMode = 1;
}
if (isset($get->startYear)) {
$this->view->startYear = $get->startYear;
} else {
$this->view->startYear = date('Y');
}
if (isset($get->startMonth)) {
$this->view->startMonth = $get->startMonth;
} else {
$this->view->startMonth = date('m');
}
$eventId = null;
if (isset($get->eventId)) {
$eventId = $get->eventId;
$this->view->eventId = $eventId;
$this->view->startInEditMode = 1;
$e = new Event();
$thisEvent = $e->find($eventId)->toArray();
$this->view->locationId = $thisEvent['locationId'];
}
$zd = new Zend_Date();
$this->view->workshopLength = mktime(1, 0, 0, 1, 1, 1970);
$this->view->startTime = mktime(0, 0, 0, 1, 1, 1970);
$this->view->endTime = mktime(23, 30, 0, 1, 1, 1970);
$this->view->baseTime = mktime(0, 0, 0, 1, 1, 1970);
$this->view->today = $zd->get(Zend_Date::MONTH) . "/" . $zd->get(Zend_Date::DAY) . "/" . $zd->get(Zend_Date::YEAR);
$this->view->thisYear = $zd->get(Zend_Date::YEAR);
$this->view->thisWeek = $zd->get(Zend_Date::WEEK);
if (!is_null($eventId)) {
$tmpDate = explode('-', $thisEvent['date']);
$zd->setYear($tmpDate[0]);
$zd->setMonth($tmpDate[1]);
$zd->setDay($tmpDate[2]);
}
$this->view->year = $zd->get(Zend_Date::YEAR);
$this->view->week = $zd->get(Zend_Date::WEEK);
$this->_helper->pageTitle('workshop-schedule-index:title');
$workshop = new Workshop();
$where = $workshop->getAdapter()->quoteInto('status = ?', 'enabled');
$workshops = $workshop->fetchAll($where, 'title');
$workshopList = array();
$workshopList[0] = "";
foreach ($workshops as $w) {
$workshopList[$w->workshopId] = $w->title;
}
$this->view->workshops = $workshopList;
$location = new Location();
$where = $location->getAdapter()->quoteInto('status = ?', 'enabled');
$locations = $location->fetchAll($where, 'name');
if (count($locations) == 0) {
$this->_helper->redirector->gotoUrl('/workshop/schedule/noLocationsFound');
}
foreach ($locations as $l) {
$locationList[$l->locationId] = $l->name;
}
$this->view->locationList = $locationList;
//get all the users available for the instructor list
$profile = new Ot_Account();
$profiles = $profile->fetchAll(null, array('lastName', 'firstName'))->toArray();
$instructors = array();
foreach ($profiles as $p) {
$instructors[$p['username']] = $p['lastName'] . ", " . $p['firstName'];
}
$this->view->messages = $this->_helper->flashMessenger->getMessages();
$this->view->instructors = $instructors;
$this->view->headScript()->appendFile($this->view->baseUrl() . '/public/scripts/jMonthCalendar-1.1.0.js');
//$this->view->headScript()->appendFile($this->view->baseUrl() . '/scripts/jMonthCalendar-1.2.2.js');
$this->view->headScript()->appendFile($this->view->baseUrl() . '/public/scripts/jquery.bt.min.js');
}
示例6: form
public function form($values = array())
{
$config = Zend_Registry::get('config');
$form = new Zend_Form();
$form->setAttrib('id', 'eventForm')->setDecorators(array('FormElements', array('HtmlTag', array('tag' => 'div', 'class' => 'zend_form')), 'Form'));
$workshop = new Workshop();
$where = $workshop->getAdapter()->quoteInto('status = ?', 'enabled');
$workshops = $workshop->fetchAll($where, 'title');
$workshopList = array();
foreach ($workshops as $w) {
$workshopList[$w->workshopId] = $w->title;
}
$workshopElement = $form->createElement('select', 'workshop', array('label' => 'Workshop:'));
$workshopElement->setMultiOptions($workshopList)->setValue(isset($values['workshopId']) ? $values['workshopId'] : '');
$location = new Location();
$where = $location->getAdapter()->quoteInto('status = ?', 'enabled');
$locations = $location->fetchAll($where, 'name');
$locationList = array();
$locationCapacity = array();
foreach ($locations as $l) {
$locationList[$l->locationId] = $l->name;
$locationCapacity['loc_' . $l->locationId] = $l->capacity;
}
$locationIds = array_keys($locationList);
// add the location capacities to the page in js so we can process it as a json object for the "live" max size changing with location selection
Zend_Layout::getMvcInstance()->getView()->headScript()->appendScript('var locationCapacitiesString = ' . Zend_Json::encode($locationCapacity) . ';');
$locationElement = $form->createElement('select', 'location', array('label' => 'Location:'));
$locationElement->setMultiOptions($locationList)->setValue(isset($values['locationId']) ? $values['locationId'] : $locationCapacity['loc_' . $locationIds[0]]);
$date = $form->createElement('text', 'date', array('label' => 'Date:'));
$date->setRequired(true)->addFilter('StringTrim')->addFilter('StripTags')->setAttrib('maxlength', '128')->setAttrib('style', 'width: 200px')->setValue(isset($values['date']) ? strftime('%A, %B %e, %Y', strtotime($values['date'])) : '');
$password = $form->createElement('text', 'password', array('label' => 'Event Password:'));
$password->addFilter('StringTrim')->addFilter('StripTags')->setAttrib('maxlength', '100')->setValue(isset($values['password']) ? $values['password'] : '');
// add the start time selector
$startTimeSub = new Zend_Form_SubForm();
$startTimeSub->setDecorators(array('FormElements', array('HtmlTag', array('tag' => 'div', 'class' => 'zend_form'))));
$startTimeSub->setAttrib('class', 'sub');
$startTimeHour = $startTimeSub->createElement('select', 'hour', array('label' => 'Start Time:'));
for ($i = 1; $i <= 12; $i++) {
$startTimeHour->addMultiOption($i, $i);
}
$startTimeHour->setDecorators(array(array('ViewHelper', array('helper' => 'formSelect')), array('Label')));
$startTimeHour->setValue(isset($values['startTime']) ? date('g', strtotime($values['startTime'])) : date('g'));
$startTimeMinute = $startTimeSub->createElement('select', 'minute');
for ($i = 0; $i < 60; $i += 5) {
$startTimeMinute->addMultiOption(str_pad($i, 2, '0', STR_PAD_LEFT), str_pad($i, 2, '0', STR_PAD_LEFT));
}
$startTimeMinute->setDecorators(array(array('ViewHelper', array('helper' => 'formSelect'))));
$startTimeMinute->setValue(isset($values['startTime']) ? date('i', strtotime($values['startTime'])) : date('i'));
$startTimeMeridian = $startTimeSub->createElement('select', 'meridian');
$startTimeMeridian->addMultiOption('am', 'AM')->addMultiOption('pm', 'PM')->setDecorators(array(array('ViewHelper', array('helper' => 'formSelect'))));
$startTimeMeridian->setValue(isset($values['startTime']) ? date('a', strtotime($values['startTime'])) : date('a'));
$startTimeSub->addElements(array($startTimeHour, $startTimeMinute, $startTimeMeridian));
// add the end time selector
$endTimeSub = new Zend_Form_SubForm();
$endTimeSub->setDecorators(array('FormElements', array('HtmlTag', array('tag' => 'div', 'class' => 'zend_form'))));
$endTimeSub->setAttrib('class', 'sub');
$endTimeHour = $endTimeSub->createElement('select', 'hour', array('label' => 'End Time:'));
for ($i = 1; $i <= 12; $i++) {
$endTimeHour->addMultiOption($i, $i);
}
$endTimeHour->setDecorators(array(array('ViewHelper', array('helper' => 'formSelect')), array('Label')));
$endTimeHour->setValue(isset($values['endTime']) ? date('g', strtotime($values['endTime'])) : date('g'));
$endTimeMinute = $endTimeSub->createElement('select', 'minute');
for ($i = 0; $i < 60; $i += 5) {
$endTimeMinute->addMultiOption(str_pad($i, 2, '0', STR_PAD_LEFT), str_pad($i, 2, '0', STR_PAD_LEFT));
}
$endTimeMinute->setDecorators(array(array('ViewHelper', array('helper' => 'formSelect'))));
$endTimeMinute->setValue(isset($values['endTime']) ? date('i', strtotime($values['endTime'])) : date('i'));
$endTimeMeridian = $endTimeSub->createElement('select', 'meridian');
$endTimeMeridian->addMultiOption('am', 'AM')->addMultiOption('pm', 'PM')->setDecorators(array(array('ViewHelper', array('helper' => 'formSelect'))));
$endTimeMeridian->setValue(isset($values['endTime']) ? date('a', strtotime($values['endTime'])) : date('a'));
$endTimeSub->addElements(array($endTimeHour, $endTimeMinute, $endTimeMeridian));
// get all the users available for the instructor list
$otAccount = new Ot_Account();
$accounts = $otAccount->fetchAll(null, array('lastName', 'firstName'))->toArray();
$instructorList = array();
foreach ($accounts as $a) {
$instructorList[$a['accountId']] = $a['lastName'] . ", " . $a['firstName'];
}
$instructorElement = $form->createElement('multiselect', 'instructors', array('label' => 'Instructor(s):'));
$instructorElement->setMultiOptions($instructorList)->setAttrib('size', 10)->setValue(isset($values['instructorIds']) ? $values['instructorIds'] : '');
$minSize = $form->createElement('text', 'minSize', array('label' => 'Min Size:'));
$minSize->setRequired(true)->addFilter('StringTrim')->addFilter('StripTags')->setAttrib('maxlength', '64')->setAttrib('style', 'width: 50px;')->setValue(isset($values['minSize']) ? $values['minSize'] : $config->user->defaultMinWorkshopSize->val);
$maxSize = $form->createElement('text', 'maxSize', array('label' => 'Max Size:'));
$maxSize->setRequired(true)->addFilter('StringTrim')->addFilter('StripTags')->setAttrib('maxlength', '64')->setAttrib('style', 'width: 50px;')->setValue(isset($values['maxSize']) ? $values['maxSize'] : $locationElement->getValue());
$waitlistSize = $form->createElement('text', 'waitlistSize', array('label' => 'Waitlist Size:'));
$waitlistSize->setRequired(true)->addFilter('StringTrim')->addFilter('StripTags')->setAttrib('maxlength', '64')->setAttrib('style', 'width: 50px;')->setValue(isset($values['waitlistSize']) ? $values['waitlistSize'] : $config->user->defaultWorkshopWaitlistSize->val);
$evaluationType = $form->createElement('select', 'evaluationType', array('label' => 'Evaluation Type:'));
$evaluationType->setMultiOptions(array('default' => 'Default', 'google' => 'Google Form'))->setRequired(true)->setValue(isset($values['evaluationType']) ? $values['evaluationType'] : 'default');
$formKey = $form->createElement('textarea', 'formKey', array('label' => 'Google Form Question Key:'));
$formKey->setAttribs(array('cols' => '10', 'rows' => '5', 'style' => 'width : 250px;'))->addDecorators(array('ViewHelper', 'Errors', 'HtmlTag', array('Label', array('tag' => 'span')), array(array('elementDiv' => 'HtmlTag'), array('tag' => 'div', 'id' => 'formKey', 'class' => 'elm'))))->setValue(isset($values['formKey']) ? $values['formKey'] : '');
$answerKey = $form->createElement('textarea', 'answerKey', array('label' => 'Google Form Answer Key:'));
$answerKey->addFilter('StringTrim')->addFilter('StripTags')->setAttribs(array('cols' => '10', 'rows' => '3', 'style' => 'width : 250px;'))->addDecorators(array('ViewHelper', 'Errors', 'HtmlTag', array('Label', array('tag' => 'span')), array(array('elementDiv' => 'HtmlTag'), array('tag' => 'div', 'id' => 'answerKey', 'class' => 'elm'))))->setValue(isset($values['answerKey']) ? $values['answerKey'] : '');
$submit = $form->createElement('submit', 'submitButton', array('label' => 'Submit'));
$submit->setDecorators(array(array('ViewHelper', array('helper' => 'formSubmit'))));
$cancel = $form->createElement('button', 'cancel', array('label' => 'Cancel'));
$cancel->setAttrib('id', 'cancel');
$cancel->setDecorators(array(array('ViewHelper', array('helper' => 'formButton'))));
$form->addElements(array($workshopElement, $locationElement, $password, $date, $evaluationType))->addSubForms(array('startTime' => $startTimeSub, 'endTime' => $endTimeSub))->addElements(array($minSize, $maxSize, $waitlistSize, $instructorElement));
$form->addDisplayGroup(array('instructors'), 'instructors-group', array('legend' => 'Instructors'));
//.........这里部分代码省略.........