Example #1
0
File: charts.php Project: anqh/anqh
 /**
  * Build charts list.
  *
  * @return  Model_Music_Track[]
  */
 protected function _charts()
 {
     $tracks = array();
     foreach ($this->tracks['this'] as $rank => $track_id) {
         $track = Model_Music_Track::factory($track_id);
         if (!$track->loaded()) {
             continue;
         }
         $tracks[] = array('rank' => $rank, 'last' => array_search($track_id, $this->tracks['last']), 'track' => $track);
     }
     return $tracks;
 }
Example #2
0
File: music.php Project: anqh/anqh
 /**
  * Get anchor to newsfeed item target.
  *
  * @static
  * @param   Model_NewsfeedItem  $item
  * @return  string
  */
 public static function get_link(Model_NewsfeedItem $item)
 {
     $text = '';
     switch ($item->type) {
         case self::TYPE_MIX:
         case self::TYPE_TRACK:
             $track = Model_Music_Track::factory($item->data['track_id']);
             if ($track->loaded()) {
                 $text = HTML::anchor(Route::model($track), '<i class="fa fa-music"></i> ' . HTML::chars($track->name), array('title' => $track->name));
             }
             break;
     }
     return $text;
 }
Example #3
0
File: music.php Project: anqh/anqh
 /**
  * Controller default action
  */
 public function action_index()
 {
     $this->view = new View_Page(__('Charts'));
     // Set actions
     $this->view->tab = 'charts';
     $this->_set_page_actions();
     // Top charts
     $this->view->add(View_Page::COLUMN_LEFT, $this->section_charts(Model_Music_Track::factory()->find_top_weekly(Model_Music_Track::TYPE_MIX, 10), __('Top Mixtapes')));
     $this->view->add(View_Page::COLUMN_RIGHT, $this->section_charts(Model_Music_Track::factory()->find_top_weekly(Model_Music_Track::TYPE_TRACK, 10), __('Top Tracks')));
     // New
     $section = $this->section_list(Model_Music_Track::factory()->find_new(Model_Music_Track::TYPE_MIX, 10), __('New mixtapes'));
     $section->class = 'col-sm-6';
     $this->view->add(View_Page::COLUMN_BOTTOM, $section);
     $section = $this->section_list(Model_Music_Track::factory()->find_new(Model_Music_Track::TYPE_TRACK, 10), __('New tracks'));
     $section->class = 'col-sm-6';
     $this->view->add(View_Page::COLUMN_BOTTOM, $section);
 }