public function view($id = null)
 {
     if (empty($id)) {
         redirect('packs');
     } else {
         if (Pack::count(array('conditions' => array('id = ?', $id))) == 0) {
             redirect('packs');
         } else {
             $this->data['pack'] = Pack::get_single_pack_info($id);
             $this->data['subtitle'] = $this->data['pack']->name;
             $this->data['songs'] = Ranked_file::all(array('conditions' => array("pack_id = ?", $id), 'order' => "rate ASC"));
             if (isset($_GET['recalc'])) {
                 error_reporting(E_ALL ^ E_DEPRECATED ^ E_NOTICE ^ E_WARNING);
                 set_time_limit(0);
                 foreach ($this->data['songs'] as $file) {
                     $calculated_difficulty = $this->_process_everything($file->raw_file, $file->rate);
                     $file->difficulty_score = $calculated_difficulty;
                 }
             }
             $this->content_view = 'packs/view';
         }
     }
 }
 public function packname_unique($pack_name)
 {
     $this->set_message('packname_unique', "The pack you're trying to enter already exists.");
     return Pack::count(array('conditions' => array('name = ?', $pack_name))) == 0;
 }
 function delete_pack($pack_id)
 {
     if (Pack::count(array('conditions' => array('id = ?', $pack_id))) != 1) {
         redirect('home');
     }
     $this->content_view = "mod/delete_pack_success";
     $pack = Pack::find($pack_id);
     $pack_name = $pack->name;
     $pack->delete();
     $log_string = $this->session->userdata('username') . " (" . $this->session->userdata('display_name') . ") deleted pack: " . $pack_name;
     write_to_mod_log($log_string);
 }