protected function _setupGenericFilters()
 {
     if (!isset($this->_filters['issuetype'])) {
         $this->_filters['issuetype'] = TBGSearchFilter::createFilter('issuetype', array(), $this);
     }
     if (!isset($this->_filters['status'])) {
         $this->_filters['status'] = TBGSearchFilter::createFilter('status', array(), $this);
     }
     if (!isset($this->_filters['category'])) {
         $this->_filters['category'] = TBGSearchFilter::createFilter('category', array(), $this);
     }
     if (!TBGContext::isProjectContext() && !isset($this->_filters['project_id'])) {
         $this->_filters['project_id'] = TBGSearchFilter::createFilter('project_id', array(), $this);
     }
 }
Beispiel #2
0
 public function runFilterGetDynamicChoices(TBGRequest $request)
 {
     $subproject_ids = explode(',', $request['subprojects']);
     $existing_ids = $request['existing_ids'];
     $results = array();
     $projects = $request['project_id'] != '' ? TBGProject::getAllByIDs(explode(',', $request['project_id'])) : TBGProject::getAll();
     $items = array('build' => array(), 'edition' => array(), 'component' => array(), 'milestone' => array());
     foreach ($projects as $project) {
         foreach ($project->getBuilds() as $build) {
             $items['build'][$build->getID()] = $build;
         }
         foreach ($project->getEditions() as $edition) {
             $items['edition'][$edition->getID()] = $edition;
         }
         foreach ($project->getComponents() as $component) {
             $items['component'][$component->getID()] = $component;
         }
         foreach ($project->getMilestones() as $milestone) {
             $items['milestone'][$milestone->getID()] = $milestone;
         }
     }
     $filters = array();
     $filters['build'] = TBGSearchFilter::createFilter('build');
     $filters['edition'] = TBGSearchFilter::createFilter('edition');
     $filters['component'] = TBGSearchFilter::createFilter('component');
     $filters['milestone'] = TBGSearchFilter::createFilter('milestone');
     if (isset($existing_ids['build'])) {
         foreach (TBGBuildsTable::getTable()->getByIDs($existing_ids['build']) as $build) {
             $items['build'][$build->getID()] = $build;
         }
         $filters['build']->setValue(join(',', $existing_ids['build']));
     }
     if (isset($existing_ids['edition'])) {
         foreach (TBGEditionsTable::getTable()->getByIDs($existing_ids['edition']) as $edition) {
             $items['edition'][$edition->getID()] = $edition;
         }
         $filters['edition']->setValue(join(',', $existing_ids['edition']));
     }
     if (isset($existing_ids['component'])) {
         foreach (TBGComponentsTable::getTable()->getByIDs($existing_ids['component']) as $component) {
             $items['component'][$component->getID()] = $component;
         }
         $filters['component']->setValue(join(',', $existing_ids['component']));
     }
     if (isset($existing_ids['milestone'])) {
         foreach (TBGMilestonesTable::getTable()->getByIDs($existing_ids['milestone']) as $milestone) {
             $items['milestone'][$milestone->getID()] = $milestone;
         }
         $filters['milestone']->setValue(join(',', $existing_ids['milestone']));
     }
     foreach (array('build', 'edition', 'component', 'milestone') as $k) {
         $results[$k] = $this->getTemplateHTML('search/interactivefilterdynamicchoicelist', array('filter' => $filters[$k], 'items' => $items[$k]));
     }
     return $this->renderJSON(compact('results'));
 }
    }
    ?>
			<?php 
    if (!$search_object->hasFilter($customtype->getKey())) {
        include_component('search/interactivefilter', array('filter' => TBGSearchFilter::createFilter($customtype->getKey())));
    }
    ?>
		<?php 
}
?>
		<?php 
foreach ($datecustomfields as $customtype) {
    ?>
			<?php 
    if (!$search_object->hasFilter($customtype->getKey())) {
        include_component('search/interactivefilter', array('filter' => TBGSearchFilter::createFilter($customtype->getKey(), array('operator' => '<=', 'value' => time()))));
    }
    ?>
		<?php 
}
?>
	</div>
	<?php 
if (!$tbg_user->isGuest()) {
    ?>
		<div class="fullpage_backdrop" style="display: none;" id="saved_search_details">
			<div class="backdrop_box large">
				<div class="backdrop_detail_header"><?php 
    echo __('Save this search');
    ?>
</div>