| <?php |
| /** |
| * Copyright (c) Eclipse Foundation and others. |
| * |
| * This program and the accompanying materials are made |
| * available under the terms of the Eclipse Public License 2.0 |
| * which is available at https://www.eclipse.org/legal/epl-2.0/ |
| * |
| * SPDX-License-Identifier: EPL-2.0 |
| */ |
| require_once dirname ( __FILE__ ) . '/../../eclipse.org-common/system/app.class.php'; |
| require_once dirname ( __FILE__ ) . '/../../eclipse.org-common/system/nav.class.php'; |
| require_once dirname ( __FILE__ ) . '/../../eclipse.org-common/system/menu.class.php'; |
| require_once dirname(__FILE__) . '/../classes/database.inc'; |
| |
| $App = new App (); |
| $Nav = new Nav (); |
| $Menu = new Menu (); |
| include ($App->getProjectCommon ()); |
| |
| $pageTitle = "Eclipse Project Releases in Good Standing"; |
| $pageKeywords = ""; |
| $pageAuthor = "Wayne Beaton"; |
| |
| ob_start (); |
| ?> |
| <style> |
| li.future {color: gray} |
| li.future a:link {color: gray} |
| li.future a:visited {color: gray} |
| li.past {} |
| </style> |
| <div id="maincontent"> |
| <div id="midcolumn"> |
| <h1><?=$pageTitle?></h1> |
| <p> |
| <strong>EXPERIMENTAL</strong>. This page shows a list of Eclipse open |
| source projects and releases from the last year that are believed to be in good |
| standing. |
| |
| </p> |
| <h2 id="projects">Projects</h2> |
| <p> |
| The projects listed below are considered to be in good standing and |
| are in active development. A project that conforms to the Eclipse |
| Foundation Development Process but is not in active development (e.g., |
| the code is stable) would be considered to be in good standing, but |
| is none-the-less excluded here. To be included in this list, the |
| corresponding Eclipse open source project must have engaged in either |
| a release or progress review in the year preceding the release.</p> |
| <ul> |
| <?php |
| $sql = <<<EOQ |
| select |
| distinct p.id, |
| p.name, |
| p.url, |
| max(rev.date) as lastReviewDate |
| from Project as p |
| join ProjectReleases as rel on p.id=rel.project |
| join ProjectReviews as rev on p.id=rev.project |
| where |
| rev.type in ('release','graduation', 'other') |
| and rev.status = 'success' |
| group by p.id |
| having lastReviewDate >= date_sub(now(), interval 1 year) |
| order by p.name; |
| EOQ; |
| |
| query('dashboard', $sql, array (), function ($row) { |
| echo "<li><a href=\"{$row['url']}\">{$row['name']}</a></li>"; |
| }); |
| ?> |
| </ul> |
| |
| <h2 id="releases">Releases</h2> |
| <p> |
| Grayed out releases are have future dates (these releases have been |
| projected into the future by the corresponding project team); only |
| the releases scheduled in the next month are included in this block. |
| </p> |
| |
| <p> |
| Note that service releases that are based on releases in good standing, |
| but are themselves dated more than one year after a review are |
| absent from this list. |
| </p> |
| |
| <p> |
| If you believe that your project's release should be listed here, |
| first confirm that your project engaged in a review within the 12 |
| months leading up to the release date, and if you're satisfied that your |
| release is in good standing, contact emo@eclipse-foundation.org for |
| assistance (or to initiate a review). |
| </p> |
| |
| <ul> |
| <?php |
| $sql = <<<EOQ |
| select |
| p.id, |
| concat(p.name, ' ', rel.name) as name, |
| rel.url as url, |
| rel.date as releaseDate, |
| max(rev.date) as lastReviewDate |
| from Project as p |
| join ProjectReleases as rel on p.id=rel.project |
| join ProjectReviews as rev on p.id=rev.project |
| where |
| rev.type in ('release','graduation', 'other') |
| and rev.status = 'success' |
| and |
| rel.date between date_sub(now(), interval 1 year) and date_add(now(), interval 1 month) |
| group by p.id, rel.name |
| having lastReviewDate >= date_sub(releaseDate, interval 1 year) |
| order by releaseDate desc; |
| EOQ; |
| |
| query('dashboard', $sql, array (), function ($row) { |
| $class = strtotime($row['releaseDate']) > time() ? 'future' : 'past'; |
| echo "<li class=\"{$class}\"> {$row['releaseDate']} <a href=\"{$row['url']}\">{$row['name']}</a></li>"; |
| }); |
| |
| ?> |
| </ul> |
| |
| </div> |
| </div> |
| |
| <?php |
| $html = ob_get_contents (); |
| ob_end_clean (); |
| $App->generatePage ( $theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html ); |
| ?> |