/**
  * Show completed milestones
  *
  * @param void
  * @return null
  */
 function archive()
 {
     //BOF: task 03 | AD
     /*
     //EOF: task 03 | AD
           $milestones = Milestones::findCompletedByProject($this->active_project, STATE_VISIBLE, $this->logged_user->getVisibility());
     //BOF: task 03 | AD
     */
     //BOF: task 04 | AD
     /*
     //EOF: task 04 | AD
     $milestones = Milestones::findCompletedByProject($this->active_project, STATE_VISIBLE, $this->logged_user->getVisibility(), $this->order_by, $this->sort_order);
     //BOF: task 04 | AD
     */
     //EOF: task 04 | AD
     //EOF: task 03 | AD
     if ($this->request->isApiCall()) {
         //BOF: task 04 | AD
         $milestones = Milestones::findCompletedByProject($this->active_project, STATE_VISIBLE, $this->logged_user->getVisibility(), $this->order_by, $this->sort_order);
         //EOF: task 04 | AD
         $this->serveData($milestones, 'milestones');
     } else {
         //BOF: task 04 | AD
         /*
               	//EOF: task 04 | AD
         $this->smarty->assign('milestones', $milestones);
         //BOF: task 04 | AD
         */
         $selected_category_id = $_GET['category_id'];
         $selected_category_name = 'All';
         $project_id = $this->active_project->getId();
         $milestones = array();
         $link = mysql_connect(DB_HOST, DB_USER, DB_PASS);
         mysql_select_db(DB_NAME);
         $query = "select id, category_name from healingcrystals_project_milestone_categories where project_id='" . $project_id . "' order by category_name";
         $result = mysql_query($query);
         while ($category = mysql_fetch_assoc($result)) {
             $temp = Milestones::findCompletedByProject($this->active_project, STATE_VISIBLE, $this->logged_user->getVisibility(), $this->order_by, $this->sort_order, $category['id']);
             if (count($temp)) {
                 $milestones[] = array('category_id' => $category['id'], 'category_name' => $category['category_name'], 'milestones_' => $temp, 'category_url' => assemble_url('project_milestones_archive', array('project_id' => $project_id, 'category_id' => $category['id'])));
                 if (!empty($selected_category_id) && $selected_category_id == $category['id']) {
                     $selected_category_name = $category['category_name'];
                 }
             }
         }
         $temp = Milestones::findCompletedByProject($this->active_project, STATE_VISIBLE, $this->logged_user->getVisibility(), $this->order_by, $this->sort_order, '');
         if (count($temp)) {
             $milestones[] = array('category_id' => '-1', 'category_name' => 'Uncategorized', 'milestones_' => $temp, 'category_url' => assemble_url('project_milestones_archive', array('project_id' => $project_id, 'category_id' => '-1')));
             if (!empty($selected_category_id) && $selected_category_id == '-1') {
                 $selected_category_name = 'Uncategorized';
             }
         }
         mysql_close($link);
         //$this->smarty->assign('milestones', $milestones);
         $this->smarty->assign(array('milestones' => $milestones, 'selected_category_id' => $selected_category_id, 'selected_category_name' => $selected_category_name));
         //EOF: task 04 | AD
     }
     // if
 }