blob: 76bd2fcbf38f36b0cff50165a4fa073999aaa740 [file] [log] [blame]
<?php
/**
* Copyright (c) 2015, 2018 Eclipse Foundation.
*
* 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/
*
* Contributors:
* Denis Roy (Eclipse Foundation) - Initial implementation
* Christopher Guindon (Eclipse Foundation)
* Eric Poirier (Eclipse Foundation)
*
* SPDX-License-Identifier: EPL-2.0
*/
$mainDownloadFile = $app->getPubDownloadServerUrl() . $_file;
$target = "";
$mirror_id_prev = 0;
$ccode_prev = "";
$mir_count = 0;
$mir_internal_count = 0;
$strFileName = $filename_fileonly;
$strlength = strlen($strFileName);
if ($strlength > 57) {
$strFileName = substr($strFileName, 0, 30) . "..." . substr($strFileName, $strlength-30, 30);
}
$download_link = array(
'url' => 'download.php?file=' . $_file,
'text' => '',
'icon' => '',
'suffix' => ''
);
# Load up distros program if file selected is a Oxygen/SDK package
$packageName = getPackageFromFilename($_file, "2018-09");
$osName = getOsFromFilename($_file);
$companies = array();
if ($packageName != "") {
include("distros/distros.php");
$companies = getCompanyArrayByPackage($packageName);
}
$mirror_id_list = array();
$mirror_is_available = TRUE;
$commiter_link = '';
if (!$Session->getIsLoggedIn()) {
$commiter_link = " Eclipse Committers can <a href='" . $Session->getLoginPageURL() . "'>log in</a> for faster download.";
}
if ($_country_code != "xx" && $myrow = mysql_fetch_assoc($rs)) {
// Preferred mirror
$download_link['url'] .= "&mirror_id=" . $myrow['mirror_id'];
$download_link['text'] = '' . $myrow['country_desc'] .' - ' . $myrow['organization'] .' (' . $myrow['protocol'] . ')';
}
else {
// No mirrors :(
$mirror_is_available = FALSE;
if ($Friend->getIsCommitter()) {
$download_link['url'] .= '&file_id=' . $file_id;
$download_link['text'] = 'Canada - Committers & Friends fast download from Eclipse.org';
}
else {
$download_link['url'] .= '&mirror_id=1';
$download_link['text'] = 'Canada - Main Eclipse.org downloads area';
}
}
$mirrors_internal = array();
$mirrors = array();
while ($myrow = mysql_fetch_assoc($rs)) {
$mirror_link = array();
$internal_mirror_flag = FALSE;
if (!is_numeric(array_search($myrow['mirror_id'], $mirror_id_list))) {
$mirror_id_list[count($mirror_id_list)] = $myrow['mirror_id'];
$path = "download.php?file=" . $_file . "&mirror_id=" . $myrow['mirror_id'];
if ($myrow['is_internal'] == 1 && $_file != "") {
# Bypass stats for internal mirrors
$path = $myrow['base_path'] . getPath($myrow['drop_id'], $_drop_id, $myrow['rel_path_override'], $myrow['our_path'], $myrow['our_path2']);
$internal_mirror_flag = TRUE;
}
$mirror_link = array(
'path' => $path,
'country' =>$myrow['country_desc'],
'target' => $target,
'protocol' => $myrow['protocol'],
'organization' => $myrow['organization']
);
if ($internal_mirror_flag) {
$mirrors_internal[$myrow['continent_desc']][$myrow['mirror_id']][] = $mirror_link;
}
else{
$mirrors[$myrow['continent_desc']][$myrow['mirror_id']][] = $mirror_link;
}
}
}
function _print_mirror_list($mirrors = array()) {
$html = '';
foreach ($mirrors as $mid_mirrors) {
$html .= '<li class="margin-bottom-10">';
foreach($mid_mirrors as $key => $m) {
$link = '<a href="' . $m['path'] . '" target="' . $m['target']. '">';
if ($key == 0) {
$html .= $m['country'] . ' - ';
//$html .= $link . $m['organization'] .' ('. $m['protocol'] .')</a>';
$html .= $link . $m['organization'] .'</a>';
}
else{
$html .= ' &#160; (' . $link . $m['protocol'] . '</a>)';
}
}
$html .= '</li>'. PHP_EOL;
}
return $html;
}
$mirror_html = '';
if (!empty($mirrors)) {
ob_start();
?>
<h2>Choose a mirror close to you</h2>
<hr>
<div class="choose-mirror">
<?php $x = 0; ?>
<?php foreach ($mirrors as $continent => $mir):?>
<?php $x++; ?>
<div class="mirror-continent mirror-section-<?php print $x;?>">
<h3><?php print $continent?></h3>
<ul class="list-unstyled">
<?php print _print_mirror_list($mir);?>
</ul>
</div>
<?php endforeach;?>
<a class="btn btn-sm btn-primary" id="show_all_mirrors" href="#show_all_mirrors">Show all</a>
</div>
<div class="choose-mirror">
<h3>Main Download Site</h3>
<ul class="list-unstyled">
<li>Canada - <a href="download.php?file=<?print $_file; ?>&mirror_id=1">Main eclipse.org downloads area</a></li>
</ul>
</div>
<?php
$mirror_html = ob_get_clean();
}
$members_html = "";
ob_start();
if (count($companies) > 0) {?>
<h2 class="mirror-members-h2"><strong>OR</strong> Get It Faster from our Members</h2>
<?php if (count($companies) > 0) :?>
<div class="row">
<?php foreach($companies as $company) :?>
<?php $link = $company->linkTo . "@" . strtoupper($packageName . "-" . $osName);?>
<div class="col-sm-8 text-center">
<div class="mirror-well">
<p><a href="<?php print $link;?>">
<img class="mirror-logo" src="distros/images/<?php print $company->companyLogo;?>"/>
</a></p>
<h3 class="mirror-members-h3">
<a href="<?php print $link;?>"><?php print $company->companyName;?></a>
</h3>
<p><?php print (strlen($company->companyBlurb) > 55) ? substr($company->companyBlurb, 0, 55) . '...' : $company->companyBlurb;?></p>
<p><a href="<?php print $link;?>" class="btn btn-warning btn-xs">Get it</a></p>
</div>
</div>
<?php endforeach;?>
</div>
<?php endif;?>
<?php
}
$members_html = ob_get_clean();
?>
<div class="col-md-18">
<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>
<div class="row">
<div class="col-md-24">
<div class="mirror-well text-center">
<a href="<?php print $download_link['url'];?>" class="btn btn-warning margin-bottom-15 btn-lg"><i class="fa fa-download"></i> Download</a>
<?php if (!$mirror_is_available) :?>
<p>There are no mirrors for this file.<?php print $commiter_link;?></p>
<?php endif;?>
<p><strong>Download from:</strong> <?php print $download_link['icon'];?> <?php print $download_link['text'];?><?php print $download_link['suffix'];?></p>
<p><strong>File:</strong> <a href="<?php print $download_link['url'];?>" class="orange"><?php print $strFileName;?></a> <?php $sha512sum="nsuidbus"; if ($sha512sum != "") :?><a class="btn btn-ajax-checksum btn-xs btn-default" data-checksum-file="<?php print $_file;?>" data-checksum-type="sha512" data-toggle="tab" role="tab" aria-controls="settings" href="#btn-ajax-checksum-sha512">SHA-512</a><?php endif;?></p>
<?php if ($sha512sum != "") :?>
<div class="tab-content">
<div id="btn-ajax-checksum-sha512" class="tab-pane fade" role="tabpanel">
<div class="well well-sha512">
<p></p>
</div>
</div>
</div>
<?php endif;?>
<p><a role="button" data-toggle="collapse" href="#collapseExample" aria-expanded="false" aria-controls="collapseExample">>> Select Another Mirror</a></p>
<div class="collapse" id="collapseExample">
<div class="well choose-mirror-well">
<i class="fa fa-times-circle close-choose-mirror-well" aria-hidden="true"></i>
<?php print $mirror_html; ?>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="download-faster col-md-24">
<?php if (!empty($mirrors_internal)) :?>
<div class="choose-mirror">
<h2 class="mirror-members-h2">The following Internal Mirrors should be used for this file</h2>
<?php foreach ($mirrors_internal as $continent => $mir):?>
<h3><?php print $continent?></h3>
<ul class="list-unstyled text-center">
<?php print _print_mirror_list($mir);?>
</ul>
<?php endforeach;?>
</div>
<?php endif;?>
<?php if (!empty($members_html)) :?>
<?php print $members_html;?>
<?php endif;?>
</div>
</div>
</div>
<div id="rightcolumn" class="col-sm-6">
<div class="padding-top-10 padding-bottom-30">
<?php print chooseRandomPromo();?>
</div>
<div class="sideitem">
<h6>Other options for this file</h6>
<ul>
<li><a href="download.php?file=<?php print $_file; ?>">All mirrors</a> (<a href="download.php?file=<?php print $_file; ?>&format=xml">xml</a>)</li>
<li><a href="download.php?file=<?php print $_file; ?>&r=1">Direct link to file</a> (download starts immediately from best mirror)</li>
</ul>
</div>
<div class="sideitem">
<h6>Related Links</h6>
<ul>
<li><a href="/donate">Donate</a></li>
<li><a href="mir_request.php">Becoming a mirror site</a></li>
<li><a href="http://help.eclipse.org/oxygen/index.jsp?topic=/org.eclipse.platform.doc.user/tasks/tasks-129.htm">Updating and installing Eclipse components</a></li>
<li><a href="/newsgroups">Eclipse newsgroups</a></li>
</ul>
</div>
</div>