Index: modules/project/project.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/project/project.module,v retrieving revision 1.239.2.13.2.17 diff -u -p -r1.239.2.13.2.17 project.module --- modules/project/project.module 6 Dec 2006 05:04:36 -0000 1.239.2.13.2.17 +++ modules/project/project.module 6 Dec 2006 05:10:29 -0000 @@ -608,16 +608,6 @@ function project_page_overview($termname $result = db_query(db_rewrite_sql("SELECT n.nid, n.title, nr.teaser, nr.format$ISSUES FROM {node} n INNER JOIN {node_revisions} nr ON n.vid = nr.vid $ISSUE_JOIN WHERE n.status = 1 AND n.type = 'project_project' ORDER BY n.title ASC")); } $class = 'even'; - if ($version != -1) { - $joins = 'INNER JOIN {term_node} t ON p.nid = t.nid LEFT JOIN {project_release_default_versions} prdv ON p.pid = prdv.nid AND prdv.tid = t.tid AND prdv.major = p.version_major'; - $wheres = 'AND t.tid = %d'; - $order_bys = 'ORDER BY prdv.nid DESC, p.rebuild ASC, p.version_major ASC, p.version_minor DESC, p.version_patch DESC, p.file_date DESC'; - } - else { - $joins = ''; - $wheres = ''; - $order_bys = 'ORDER BY p.file_date DESC'; - } while ($project = db_fetch_object($result)) { $project->body = check_markup($project->teaser, $project->format, FALSE); if (project_use_taxonomy()) { @@ -633,22 +623,22 @@ function project_page_overview($termname // Make sure we have the latest release // TODO: this needs help to handle projects with N branches for the // same compatibility version... - if ($project->release_count > 1) { - unset($values); - $values[] = $project->nid; - if ($version != -1) { - $values[] = $version; - } - $latest = db_fetch_object(db_query_range("SELECT file_path, version, file_date FROM {project_release_nodes} p $joins WHERE p.pid = %d $wheres $order_bys", $values, 0, 1)); + if ($project->release_count > 1 && $version != -1) { + $latest = db_fetch_object(db_query_range("SELECT file_path, version, file_date FROM {project_release_nodes} p INNER JOIN {term_node} t ON p.nid = t.nid LEFT JOIN {project_release_default_versions} prdv ON p.pid = prdv.nid AND prdv.tid = t.tid AND prdv.major = p.version_major WHERE p.pid = %d AND t.tid = %d ORDER BY prdv.nid DESC, p.rebuild ASC, p.version_major ASC, p.version_minor DESC, p.version_patch DESC, p.file_date DESC", $project->nid, $version, 0, 1)); $project->file_path = $latest->file_path; $project->version = $latest->version; } $project->links = array(); - - if ($project->file_path) { - $project->links[] = l(t('Download'), file_create_url($project->file_path)); + if ($version != -1) { + if ($project->file_path) { + $project->links[] = l(t('Download'), file_create_url($project->file_path)); + } + } + else { + $project->download_table = project_release_table($project, 1, 1, FALSE, 'default', t('Default versions')); } + $project->links[] = l(t('Find out more'), "node/$project->nid"); if ($project->issues) { @@ -877,6 +867,9 @@ function theme_project_summary($project) } $output .= $project->body; $output .= theme('links', $project->links); + if ($project->download_table) { + $output .= $project->download_table; + } if ($project->terms) { $output .= '
' . theme('links', $project->terms); }