/** * @param int $offset * @param int $limit * @return array */ public function getAllApproved($offset = 0, $limit = 100) { $query = new QueryObject(new MarketPlaceReview()); $query->addAndCondition(QueryCriteria::equal('Approved', 1)); $query->addOrder(QueryOrder::desc('Created')); return $this->getAll($query, $offset, $limit); }
/** * @param int $n * @return IElection[] */ public function getLatestNElections($n) { $query = new QueryObject(new Election()); $query->addOrder(QueryOrder::desc('ElectionsOpen')); list($list, $count) = $this->getAll($query, 0, $n); return $list; }
public function getLastIdInserted($summit_id) { $query = new QueryObject(new SummitType()); $query->addAndCondition(QueryCriteria::equal('SummitID', $summit_id)); $query->addOrder(QueryOrder::desc('ID')); list($list, $count) = $this->getAll($query, 0, 1); return array_pop($list)->ID; }
/** * @param int $offset * @param int $limit * @return array */ public function getAllPosted($offset = 0, $limit = 10) { $query = new QueryObject(); $query->addAndCondition(QueryCriteria::equal('Active', 1)); $query->addAndCondition(QueryCriteria::greater('ExpirationDate', date('Y-m-d'))); $query->addOrder(QueryOrder::desc('JobPostedDate')); return $this->getAll($query, $offset, $limit); }
public function DateSortedJobs() { $query = new QueryObject(new JobPage()); $request = Controller::curr()->getRequest(); if ($request->requestVar('foundation')) { $query->addAndCondition(QueryCriteria::equal('FoundationJob', 1)); } $now = new DateTime(); $query->addAndCondition(QueryCriteria::equal('Active', 1)); $post_date = $now->sub(new DateInterval('P6M')); $query->addAndCondition(QueryCriteria::greaterOrEqual('JobPostedDate', $post_date->format('Y-m-d'))); $query->addAndCondition(QueryCriteria::greaterOrEqual('ExpirationDate', $now->format('Y-m-d'))); $query->addOrder(QueryOrder::desc('JobPostedDate')); $query->addOrder(QueryOrder::desc('ID')); list($jobs, $size) = $this->repository->getAll($query, 0, 1000); return new ArrayList($jobs); }
public function getDateSortedJobs($foundation = 0) { $query = new QueryObject(new JobPage()); if ($foundation) { $query->addAndCondition(QueryCriteria::equal('FoundationJob', 1)); } $now = new DateTime(); $six_months_ago = new DateTime(); $query->addAndCondition(QueryCriteria::equal('Active', 1)); $post_date = $six_months_ago->sub(new DateInterval('P6M')); $query->addAndCondition(QueryCriteria::greaterOrEqual('JobPostedDate', $post_date->format('Y-m-d'))); $query->addAndCondition(QueryCriteria::greaterOrEqual('ExpirationDate', $now->format('Y-m-d'))); $query->addOrder(QueryOrder::desc('JobPostedDate')); $query->addOrder(QueryOrder::desc('ID')); list($jobs, $size) = $this->getAll($query, 0, 1000); return new ArrayList($jobs); }
public function getJobsByKeywordTypeAndSortedBy($keywords, $type_id, $sort_by) { $query = new QueryObject(new Job()); $now = new DateTime(); $six_months_ago = new DateTime(); $post_date = $six_months_ago->sub(new DateInterval('P6M')); $query->addAndCondition(QueryCriteria::equal('IsActive', 1)); $query->addAndCondition(QueryCriteria::greaterOrEqual('PostedDate', $post_date->format('Y-m-d H:i:s'))); $query->addAndCondition(QueryCriteria::greaterOrEqual('ExpirationDate', $now->format('Y-m-d H:i:s'))); if (!empty($keywords)) { $query->addAndCondition(QueryCompoundCriteria::compoundOr([QueryCriteria::like('Title', trim($keywords)), QueryCriteria::like('Description', trim($keywords))])); } if (intval($type_id) > 0) { $query->addAndCondition(QueryCriteria::equal('TypeID', $type_id)); } if (!empty($sort_by)) { switch (strtolower($sort_by)) { case 'coa': $query = $query->addOrder(QueryOrder::desc('IsCOANeeded')); break; case 'foundation': $query = $query->addOrder(QueryOrder::desc('IsFoundationJob')); break; case 'company': $query = $query->addOrder(QueryOrder::asc('CompanyName')); break; case 'posted': $query = $query->addOrder(QueryOrder::desc('PostedDate')); break; case 'location': $query = $query->addOrder(QueryOrder::asc('LocationType')); break; } } list($jobs, $size) = $this->getAll($query, 0, PHP_INT_MAX); return new ArrayList($jobs); }
public function sortCompanyService(&$query, $sort, $dir) { switch ($sort) { case 'company': $query->addAlias(QueryAlias::create('Company')); if ($dir == 'asc') { $query->addOrder(QueryOrder::asc('Company.Name')); } else { $query->addOrder(QueryOrder::desc('Company.Name')); } break; case 'name': if ($dir == 'asc') { $query->addOrder(QueryOrder::asc('Name')); } else { $query->addOrder(QueryOrder::desc('Name')); } case 'type': $query->addAlias(QueryAlias::create('MarketPlaceType')); if ($dir == 'asc') { $query->addOrder(QueryOrder::asc('MarketPlaceType.Name')); } else { $query->addOrder(QueryOrder::desc('MarketPlaceType.Name')); } case 'status': if ($dir == 'asc') { $query->addOrder(QueryOrder::asc('Active')); } else { $query->addOrder(QueryOrder::desc('Active')); } break; case 'updated': if ($dir == 'asc') { $query->addOrder(QueryOrder::asc('LastEdited')); } else { $query->addOrder(QueryOrder::desc('LastEdited')); } break; case 'updatedby': $query->addAlias(QueryAlias::create('Member')); if ($dir == 'asc') { $query->addOrder(QueryOrder::asc('Member.Email')); } else { $query->addOrder(QueryOrder::desc('Member.Email')); } break; default: if ($dir == 'asc') { $query->addOrder(QueryOrder::asc('ID')); } else { $query->addOrder(QueryOrder::desc('ID')); } break; } }
public function getArchivedNews($offset = 0, $limit = 1000, $searchTerm) { if (isset($searchTerm) && trim($searchTerm) !== '') { $archivedNewsQuery = $this->buildGeArchivedNewsQuery($searchTerm); $list = $archivedNewsQuery->sort('Created DESC')->limit($limit, $offset)->toArray(); } else { $query = new QueryObject(new News()); $query->addAndCondition(QueryCriteria::equal('Archived', '1')); $query->addOrder(QueryOrder::desc('Created')); list($list, $count) = $this->getAll($query, $offset, $limit); } return $list; }
/** * @return IJobAlertEmail */ public function getLastOne() { $query = new QueryObject(new EventAlertEmail()); $query->addOrder(QueryOrder::desc('Created')); return $this->getBy($query); }
public function getAllOrdered() { $query = new QueryObject(); $query->addOrder(QueryOrder::desc('Created')); return parent::getAll($query); }
/** * @param SS_HTTPRequest $request * @param string $template_class * @param string $ss_tpl_name * @return array */ private function buildList(SS_HTTPRequest $request, $template_class = 'SurveyTemplate', $ss_tpl_name = 'SurveyBuilderListSurveys') { Requirements::javascript('themes/openstack/javascript/querystring.jquery.js'); Requirements::javascript('survey_builder/js/survey.sangria.surveys.list.filter.js'); $query_templates = new QueryObject(new SurveyTemplate()); $query_templates->addAndCondition(QueryCriteria::equal('ClassName', $template_class)); list($templates, $count) = $this->survey_template_repository->getAll($query_templates, 0, PHP_INT_MAX); $page = intval($request->getVar('page')); $survey_template_id = intval($request->getVar('survey_template_id')); $question_id = intval($request->getVar('question_id')); $question_value = Convert::raw2sql($request->getVar('question_value')); $question_value2 = Convert::raw2sql($request->getVar('question_value2')); $question_value = !empty($question_value) ? $question_value : $question_value2; $order = Convert::raw2sql($request->getVar('order')); $order_dir = Convert::raw2sql($request->getVar('dir')); if ($page === 0) { $page = 1; } $offset = ($page - 1) * self::SurveysPageSize; $sort_fields = ['id' => 'ID', 'created' => 'Created', 'updated' => 'LastEdited']; $query_surveys = new QueryObject(new Survey()); $selected_template = $survey_template_id > 0 ? $this->survey_template_repository->getById($survey_template_id) : $templates[0]; if ($survey_template_id === 0) { Controller::curr()->redirect($request->getURL(true) . '?survey_template_id=' . $selected_template->ID); } $query_surveys->addAndCondition(QueryCriteria::id('Survey.TemplateID', $selected_template->getIdentifier()))->addAndCondition(QueryCriteria::id('Survey.IsTest', 0)); if ($question_id > 0 && !empty($question_value)) { // filter by question ... $query_surveys->addAlias(QueryAlias::create('Steps')->addAlias(QueryAlias::create('Answers')->addAlias(QueryAlias::create('Question')))); $query_surveys->addAndCondition(QueryCompoundCriteria::compoundAnd([QueryCriteria::id('SurveyQuestionTemplate.ID', $question_id), QueryCriteria::like('SurveyAnswer.Value', $question_value)])); } if (empty($order)) { $query_surveys->addOrder(QueryOrder::asc('ID')); } else { if ($order_dir === 'ASC') { $query_surveys->addOrder(QueryOrder::asc($sort_fields[$order])); } else { $query_surveys->addOrder(QueryOrder::desc($sort_fields[$order])); } } list($surveys, $count_surveys) = $this->survey_repository->getAll($query_surveys, $offset, self::SurveysPageSize); // build pager $pages = ''; $max_page = intval(ceil($count_surveys / self::SurveysPageSize)); for ($i = 1; $i < $max_page; $i++) { $pages .= sprintf("<li %s ><a href=\"%s?%s\">%s</a></li>", $page === $i ? "class=\"active\"" : "", $this->owner->Link($ss_tpl_name), $this->getPagerLink($i), $i); } $pager = <<<HTML <nav> <ul class="pagination pagination-sm"> {$pages} </ul> </nav> HTML; $result = ['Templates' => new ArrayList($templates), 'Surveys' => new ArrayList($surveys), 'Questions' => new ArrayList($selected_template->getAllFilterableQuestions()), 'Pager' => $pager]; return $result; }
/** * @return INews[] */ public function getStandByNews() { $query = new QueryObject(new News()); $query->addAndCondition(QueryCriteria::equal('Featured', '0')); $query->addAndCondition(QueryCriteria::equal('Slider', '0')); $query->addAndCondition(QueryCriteria::equal('Approved', '0')); $query->addAndCondition(QueryCriteria::equal('Archived', '0')); $query->addAndCondition(QueryCriteria::equal('Deleted', '0')); $query->addOrder(QueryOrder::desc('Date')); //$query->addOrder(QueryOrder::asc('Rank')); list($list, $count) = $this->getAll($query, 0, 1000); return $list; }