| <?php |
| /******************************************************************************* |
| * Copyright (c) 2010 Eclipse Foundation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * |
| *******************************************************************************/ |
| |
| require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php"); |
| require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); |
| require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); |
| $App = new App(); |
| $Nav = new Nav(); |
| $Menu = new Menu(); |
| include ($App->getProjectCommon()); |
| |
| $pageTitle = "GEF Downloads"; |
| |
| ob_start(); |
| |
| $PR = "gef"; |
| $debug = (isset ( $_GET ["debug"] ) && preg_match ( "/^\d+$/", $_GET ["debug"] ) ? $_GET ["debug"] : - 1); |
| |
| $buildtypes = array ( |
| "R" => "Release", |
| "S" => "Milestone", |
| "I" => "Integration" |
| ); |
| |
| $gef_dls = array ( |
| "GEF Common, Geometry, FX, MVC, Graph, Layout, Zest, DOT, Cloudio" => array ( |
| "<acronym title=\"Click to download archived All-In-One p2 Update Site\"><img alt=\"Click to download archived All-In-One p2 Update Site\" src=\"/modeling/images/dl-icon-update-zip.gif\"/> <b style=\"color:green\">GEF Update Site</b></acronym>" => "Update" |
| ) |
| ); |
| |
| $gef4_dls = array ( |
| "GEF4 Common, Geometry, FX, MVC, Graph, Layout, Zest, DOT, Cloudio" => array ( |
| "<acronym title=\"Click to download archived All-In-One p2 Update Site\"><img alt=\"Click to download archived All-In-One p2 Update Site\" src=\"/modeling/images/dl-icon-update-zip.gif\"/> <b style=\"color:green\">GEF4 Update Site</b></acronym>" => "Update" |
| ) |
| ); |
| |
| $gef3_dls = array ( |
| "Draw2D, GEF (MVC) 3.x and Zest 1.x" => array ( |
| "<acronym title=\"Click to download archived All-In-One p2 Update Site\"><img alt=\"Click to download archived All-In-One p2 Update Site\" src=\"/modeling/images/dl-icon-update-zip.gif\"/> <b style=\"color:green\">GEF-Legacy Update Site</b></acronym>" => "Update" |
| //, |
| //"<img alt=\"All-In-One SDK Zip\" src=\"/modeling/images/dl-icon-aio-sdk.gif\"/> <b>GEF ALL SDK</b> (Runtime, Source, Examples)" => "ALL" |
| ) |
| /*, |
| "Draw2D 3.x" => array ( |
| "SDK (Runtime, Source)" => "draw2d-sdk", // GEF-draw2d-sdk-*.zip |
| "Runtime" => "draw2d" |
| ), |
| "GEF (MVC) 3.x + Draw2D 3.x" => array ( |
| "SDK (Runtime, Source)" => "SDK", |
| "Runtime" => "runtime" |
| ), |
| "GEF (MVC) 3.x" => array ( |
| "Examples" => "examples" |
| ), |
| "Zest 1.x + Draw2D 3.x" => array ( |
| "SDK (Runtime, Source)" => "zest-sdk", |
| "Runtime" => "zest" |
| ) */ |
| ); |
| |
| /* zips that are allowed to be absent from the downloads page (eg., new ones added mid-stream) */ |
| $extraZips = array ( |
| "GEF-zest", |
| "GEF-zest-sdk", |
| "GEF-draw2d", |
| "GEF-draw2d-sdk", |
| "GEF-examples", |
| "GEF-SDK", |
| "GEF-runtime", |
| "GEF-ALL" |
| ); |
| |
| require_once ($_SERVER ["DOCUMENT_ROOT"] . "/gef/downloads/downloads-scripts.php"); |
| |
| $numzips = isset ( $extraZips ) ? 0 - sizeof ( $extraZips ) : 0; // if extra zips (new zips added later), reduce the "required" count when testing a build |
| if (isset ( $dls [$proj] ) && is_array ( $dls [$proj] )) { |
| foreach ( array_keys ( $dls [$proj] ) as $z ) { |
| $numzips += sizeof ( $dls [$proj] [$z] ); |
| } |
| } |
| |
| // store an array of paths to hide |
| $hiddenBuilds = is_readable ( $_SERVER ["DOCUMENT_ROOT"] . "/gef/downloads/hidden.txt" ) ? file ( $_SERVER ["DOCUMENT_ROOT"] . "/gef/downloads/hidden.txt" ) : array (); |
| |
| // include extras-$PR.php |
| $files = array ( |
| $_SERVER ["DOCUMENT_ROOT"] . "/gef/downloads/extras-gef.php" |
| ); |
| foreach ( $files as $file ) { |
| if (file_exists ( $file )) { |
| include_once ($file); |
| break; |
| } |
| } |
| |
| $hadLoadDirSimpleError = 1; // have we echoed the loadDirSimple() error msg yet? if 1, omit error; if 0, echo at most 1 error |
| $regs = null; |
| $showAll = (isset ( $_GET ["showAll"] ) && preg_match ( "/^(1)$/", $_GET ["showAll"], $regs ) ? $regs [1] : "0"); |
| $showMax = (isset ( $_GET ["showMax"] ) && preg_match ( "/^(\d+)$/", $_GET ["showMax"], $regs ) ? $regs [1] : "5"); |
| |
| $GEF_DROPS_DIR = getPWD ( "downloads/drops" ); // see scripts.php |
| $GEF4_DROPS_DIR = getPWD ( "downloads/drops/gef4" ); // see scripts.php |
| $GEF_LEGACY_DROPS_DIR = getPWD ( "downloads/drops/legacy" ); // see scripts.php |
| |
| $downloadScript = getDownloadScript(); |
| |
| print "<div id=\"midcolumn\">\n"; |
| print "<h2>$pageTitle</h2>\n"; |
| print "<p>All downloads are provided under the terms and conditions of the <a href=\"/legal/epl/notice.php\">Eclipse Foundation Software User Agreement</a> unless otherwise specified.</p>"; |
| |
| print "<h3>Online Update-Sites</h3>"; |
| print "<p>All deployed GEF-Legacy (3.x), GEF4, and GEF (5.x) artifacts can be consumed from our releases, milestones, integration, and CI <a href=\"https://projects.eclipse.org/projects/tools.gef/downloads\">update-sites</a>.</p>"; |
| print "<p><small>Please note that the GEF-Legacy (3.x) update site urls have changed with Neon (see <a href=\"https://bugs.eclipse.org/bugs/show_bug.cgi?id=470240\">bug #470240</a> for details).</small></p>"; |
| |
| // collect which branches (3.9.101, 3.10.0, etc.) of GEF and GEF4 exist in the drop dirs |
| $branches = array_unique ( array_merge ( loadDirSimple ( $GEF_DROPS_DIR, ".*", "d" ), loadDirSimple ( $GEF_LEGACY_DROPS_DIR, ".*", "d" ), loadDirSimple ( $GEF4_DROPS_DIR, ".*", "d" ) ) ); |
| sort ( $branches ); |
| // $buildtypes is configured in _projectCommon.php to be R, S, I, here statically all build types are created for each branch |
| $buildTypes = getBuildTypes ( $branches, $buildtypes ); |
| |
| $gefBuilds = getBuildsFromDirs ( $GEF_DROPS_DIR ); |
| $gef4Builds = getBuildsFromDirs ( $GEF4_DROPS_DIR ); |
| $gefLegacyBuilds = getBuildsFromDirs ( $GEF_LEGACY_DROPS_DIR ); |
| |
| print "<h3>Update-Site Archives</h3>"; |
| print "<p>The update-sites provided by individual GEF-Legacy (3.x), GEF4, and GEF (5.x) release, milestone, and integration builds can also be downloaded as .zip archives for offline-installation below.</p>"; |
| print "<p><small>Please note that SDK archives (in runnable form) for GEF-Legacy (3.x) are no longer provided since Mars SR1 (see <a href=\"https://bugs.eclipse.org/bugs/show_bug.cgi?id=470240\">bug #470240</a> for details).</small></p>"; |
| |
| print "<div id=\"midcolumn\">\n"; |
| if (sizeof ( $gefBuilds ) == 0 || sizeof ( $gefLegacyBuilds ) == 0 || sizeof ( $gef4Builds ) == 0) { |
| print "<h4>Builds</h4>\n"; |
| print "<ul>\n"; |
| print "<li><i><b>Error!</b></i> No builds found on this server!</li>"; |
| print "</ul>\n"; |
| } |
| |
| $c = 0; |
| foreach ( $buildTypes as $branch => $types ) { |
| foreach ( $types as $type => $label ) { |
| // Check if a GEF or GEF4 build exists |
| if ((array_key_exists ( $branch, $gefBuilds ) && array_key_exists ( $type, $gefBuilds [$branch] )) || (array_key_exists ( $branch, $gefLegacyBuilds ) && array_key_exists ( $type, $gefLegacyBuilds [$branch] )) || (array_key_exists ( $branch, $gef4Builds ) && array_key_exists ( $type, $gef4Builds [$branch] ))) { |
| print "<h4>" . $label . "s</h4>\n"; |
| print "<ul>\n"; |
| // output GEF builds |
| if (array_key_exists ( $branch, $gefBuilds ) && array_key_exists ( $type, $gefBuilds [$branch] )) { |
| showBuilds ( "", $GEF_DROPS_DIR, $branch, $gefBuilds [$branch] [$type], "GEF ", "GEF", $gef_dls, $c ); |
| } |
| // output GEF4 builds |
| if (array_key_exists ( $branch, $gef4Builds ) && array_key_exists ( $type, $gef4Builds [$branch] )) { |
| showBuilds ( "gef4", $GEF4_DROPS_DIR, $branch, $gef4Builds [$branch] [$type], "GEF4 ", "GEF4", $gef4_dls, $c ); |
| } |
| // output GEF legacy builds |
| if (array_key_exists ( $branch, $gefLegacyBuilds ) && array_key_exists ( $type, $gefLegacyBuilds [$branch] )) { |
| showBuilds ( "legacy", $GEF_LEGACY_DROPS_DIR, $branch, $gefLegacyBuilds [$branch] [$type], "GEF-Legacy ", "GEF3", $gef3_dls, $c ); |
| } |
| print "</ul>\n"; |
| } |
| } |
| } |
| |
| // output archived GEF builds |
| if (isset ( $old_gef_rels ) && is_array ( $old_gef_rels ) && sizeof ( $old_gef_rels ) > 0) { |
| showArchived ( $old_gef_rels ); |
| } |
| |
| print "<h3>Translations</h3>"; |
| print "<p>Translations packages can be downloaded from the <a href=\"http://www.eclipse.org/babel/downloads.php\">Babel project downloads page</a> (from GEF 3.4 onwards). Older translation packages (for GEF 3.0 - 3.2) can still be found <a href=\"translations/translation.html\">here</a></p>"; |
| print "</div>\n"; |
| |
| $html = ob_get_contents(); |
| ob_end_clean(); |
| |
| $pageTitle = "GEF Update-Site and SDK Archive Downloads"; |
| $pageKeywords = ""; // TODO: add something here |
| |
| // Generate the web page |
| $App->AddExtraHtmlHeader ( '<script src="/gef/downloads/downloads.js" type="text/javascript"></script>' . "\n" ); // ie doesn't understand self closing script tags, and won't even try to render the page if you use one |
| $App->generatePage ( $theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html ); |
| ?> |