Esempio n. 1
0
 /**
  *	@fn software
  *	@short Action method that generates the feed of software releases.
  */
 public function software()
 {
     $conn = Db::get_connection();
     $release_factory = new SoftwareRelease();
     if (isset($_GET['id']) && is_numeric($_GET['id'])) {
         $this->releases = $release_factory->find_all(array('where_clause' => '`released` = 1 ' . 'AND `software_id` = \'' . $conn->escape($_GET['id']) . '\' ', 'order_by' => '`date` DESC '));
     } else {
         $this->releases = $release_factory->find_by_query('SELECT MAX(`software_releases`.`id`) AS `id`, `software_releases`.`software_id`, MAX(`software_releases`.`version`) AS `version`, MAX(`software_releases`.`date`) AS `date` ' . 'FROM `softwares` ' . 'LEFT JOIN `software_releases` ON `softwares`.`id` = `software_releases`.`software_id` ' . 'WHERE `software_releases`.`released` = 1 ' . 'GROUP BY `softwares`.`id` ' . 'ORDER BY `date` DESC ');
     }
     Db::close_connection($conn);
 }
Esempio n. 2
0
 /**
  *	@fn software_release_list
  *	@short Action method to show a list of software releases.
  */
 public function software_release_list()
 {
     $conn = Db::get_connection();
     if (!isset($_REQUEST['id'])) {
         $this->redirect_to(array('action' => 'software_list'));
     }
     $release_factory = new SoftwareRelease();
     $this->releases = $release_factory->find_all(array('where_clause' => "`software_id` = '{$conn->escape($_REQUEST['id'])}'", 'order_by' => '`date` DESC'));
     Db::close_connection($conn);
 }