Ejemplo n.º 1
0
 public function getWordFilters()
 {
     return $this->hasMany(WordFilter::className(), ['id' => 'wordfilter_id'])->viaTable('posts_settings_wordfilters', ['posts_settings_id' => 'id']);
 }
 function filter_by_index(array $tasks, $index)
 {
     global $config;
     switch ($index) {
         case 0:
             // due (i.e. all dated items)
             $date_filter = new DateFilter();
             $tasks = $date_filter->filter_by($tasks, 0);
             break;
         case 1:
             // overdue/late items
             $date_filter = new RangeFilter();
             $tasks = $date_filter->filter_by($tasks, '0..' . date($config['date_format']));
             break;
         case 2:
             // starred items
             $word_filter = new WordFilter();
             $tasks = $word_filter->filter_by($tasks, $config['find_star_rgx']);
             break;
         case 3:
             // done/complete items
             $word_filter = new WordFilter();
             $tasks = $word_filter->filter_by($tasks, $config['find_done_rgx']);
             break;
     }
     $this->_hits = count($tasks);
     return $tasks;
 }