1 | <?php |
---|
2 | |
---|
3 | // NOTE: the core client fetches download.php?xml=1 every so often; |
---|
4 | // don't break this!!! |
---|
5 | // |
---|
6 | // WARNING: it's na test version write i XHTML 1.1!!! |
---|
7 | // This code could have some errors and bugs!!! |
---|
8 | |
---|
9 | require_once("docutil.php"); |
---|
10 | require_once("versions.inc"); |
---|
11 | require_once("../html/inc/translation.inc"); |
---|
12 | |
---|
13 | $client_info = $_SERVER['HTTP_USER_AGENT']; |
---|
14 | |
---|
15 | function latest_version($p) { |
---|
16 | foreach ($p['versions'] as $i=>$v) { |
---|
17 | if (!$dev && is_dev($v)) continue; |
---|
18 | return $v; |
---|
19 | } |
---|
20 | foreach ($p['versions'] as $i=>$v) { |
---|
21 | return $v; |
---|
22 | } |
---|
23 | } |
---|
24 | |
---|
25 | function download_link($pname) { |
---|
26 | global $platforms; |
---|
27 | global $url_base; |
---|
28 | $p = $platforms[$pname]; |
---|
29 | $v = latest_version($p); |
---|
30 | $file = $v['file']; |
---|
31 | $long_name = $p['name']; |
---|
32 | $num = $v['num']; |
---|
33 | $path = "dl/$file"; |
---|
34 | $url = $url_base.$file; |
---|
35 | $dlink = "<a href=\"$url\">$file</a>"; |
---|
36 | $s = number_format(filesize($path)/1000000, 2); |
---|
37 | |
---|
38 | echo " |
---|
39 | <table style=\"border: 4px; padding: 10px\"><tr><td style=\"background-color: #ccccff\"> |
---|
40 | <a href=\"$url\" style=\"font-size: 18px; text-decoration: underline\">".tr(DL_DOWNLOAD)."</a> |
---|
41 | <br />". |
---|
42 | sprintf(tr(DL_VERSION_LNAME_SIZE), $num, $long_name, $s )." |
---|
43 | </td></tr></table> |
---|
44 | "; |
---|
45 | if ($pname == 'linux') { |
---|
46 | echo " |
---|
47 | <p>Note: BOINC may be available as a package for for your particular Linux distribution |
---|
48 | (Gentoo, Fedora, Debian, Ubuntu); check this first before downloading from this page.</p> |
---|
49 | <p>Note: 5.9.1+ requires GLIBC 2.4 or better to run. This |
---|
50 | change was required for the benchmarks to be similar |
---|
51 | to the other platforms.</p> |
---|
52 | "; |
---|
53 | } |
---|
54 | } |
---|
55 | |
---|
56 | function link_row($pname) { |
---|
57 | echo "<tr><td>"; |
---|
58 | if ($pname=='win') { |
---|
59 | echo "<img src=\"images/ico-win.png\" alt=\"Windows\"> <span style=\"font-weight: bold;\">Windows</span>"; |
---|
60 | } else if ($pname=='mac') { |
---|
61 | echo "<img src=\"images/ico-osx-uni.png\" alt=\"Mac OS X\"> <span style=\"font-weight: bold;\">Mac OS X</span>"; |
---|
62 | } else if ($pname=='linux') { |
---|
63 | echo "<img src=\"images/ico-tux.png\" alt=\"Linux\"> <span style=\"font-weight: bold;\">Linux/x86</span>"; |
---|
64 | } |
---|
65 | echo "</td><td>"; |
---|
66 | download_link($pname); |
---|
67 | echo "</td></tr> |
---|
68 | "; |
---|
69 | } |
---|
70 | |
---|
71 | $apps = array( |
---|
72 | array('classic.jpg', 180, 143), |
---|
73 | array('cpdn_200.jpg', 200, 147), |
---|
74 | array('eah_200.png', 200, 150), |
---|
75 | array('rosetta_at_home.jpg', 200, 150), |
---|
76 | array('qah.200x150.png', 200, 150), |
---|
77 | ); |
---|
78 | |
---|
79 | function show_pictures() { |
---|
80 | global $apps; |
---|
81 | shuffle($apps); |
---|
82 | $a0 = $apps[0]; |
---|
83 | $a1 = $apps[1]; |
---|
84 | $f0 = $a0[0]; |
---|
85 | $f1 = $a1[0]; |
---|
86 | echo " |
---|
87 | <div style=\"max-height: 300px\"> |
---|
88 | <img src=\"images/mgrwork.png\"><br /> |
---|
89 | <div style=\"position:relative; top:-80px; left:30px\"> |
---|
90 | <img src=\"images/$f0\"><br /> |
---|
91 | </div> |
---|
92 | <div style=\"position:relative; top:-160px; left:70px\"> |
---|
93 | <img src=\"images/$f1\"><br /> |
---|
94 | </div> |
---|
95 | </div> |
---|
96 | "; |
---|
97 | } |
---|
98 | |
---|
99 | function show_download($pname) { |
---|
100 | echo " |
---|
101 | <table style=\"padding: 10px\"><tr><td style=\"vertical-align: top;\"> |
---|
102 | ".tr(DL_WHATS_BOINC) |
---|
103 | ; |
---|
104 | if ($pname) { |
---|
105 | download_link($pname); |
---|
106 | } else { |
---|
107 | echo "<table style=\"padding: 8px\"> |
---|
108 | "; |
---|
109 | link_row('win'); |
---|
110 | link_row('winx64'); |
---|
111 | link_row('mac'); |
---|
112 | link_row('linux'); |
---|
113 | echo "</table> |
---|
114 | "; |
---|
115 | } |
---|
116 | echo " |
---|
117 | <p> |
---|
118 | <a href=\"system_requirements.php\"><span style=\"white-space: nowrap\">".tr(DL_SYSTEMREQ)."</span></a> |
---|
119 | | <a href=\"release_notes.php\"><span style=\"white-space: nowrap\">".tr(DL_RELNOTES)."</span></a> |
---|
120 | | <a href=\"troubleshoot.php\"><span style=\"white-space: nowrap\">".tr(DL_TROUBLE)."</span></a> |
---|
121 | "; |
---|
122 | if ($pname) { |
---|
123 | //echo " | <a href=\"download.php?all_platforms=1\"><span style=\"white-space: nowrap\">".tr(DL_OTHERSYS)."</span></a> |
---|
124 | echo " | <a href=\"download_all.php\"><span style=\"white-space: nowrap\">".tr(DL_ALLVERSIONS)."</span></a> |
---|
125 | "; |
---|
126 | } else { |
---|
127 | echo " | <a href=\"download_all.php\"><span style=\"white-space: nowrap\">".tr(DL_ALLVERSIONS)."</span></a></p> |
---|
128 | <p>".tr(DL_IF_OTHERTYPES)."</p> |
---|
129 | <ul> |
---|
130 | <li> ".sprintf(tr(DL_MAKEYOUROWN),"<a href=anonymous_platform.php>","</a>")."</li> |
---|
131 | <li> ".sprintf(tr(DL_DL_FROM3RDP),"<a href=download_other.php>","</a>")."</li> |
---|
132 | </ul> |
---|
133 | "; |
---|
134 | } |
---|
135 | echo " |
---|
136 | <p> |
---|
137 | </td><td style=\"vertical-align: top;\"> |
---|
138 | "; |
---|
139 | show_pictures(); |
---|
140 | echo " |
---|
141 | </td> |
---|
142 | </tr></table> |
---|
143 | <hr /> |
---|
144 | <span style=\"font-size: 10px\"> |
---|
145 | ".tr(DL_MIRRORS)." |
---|
146 | </span> |
---|
147 | "; |
---|
148 | } |
---|
149 | |
---|
150 | if ($_GET['xml']) { |
---|
151 | $args = strstr($_SERVER['REQUEST_URI'], '?'); |
---|
152 | Header("Location: download_all.php$args"); |
---|
153 | exit(); |
---|
154 | } |
---|
155 | |
---|
156 | page_head(tr(DL_DOWNLOAD_TITLE)); |
---|
157 | |
---|
158 | if ($_GET['all_platforms']) { |
---|
159 | show_download(null); |
---|
160 | } else if (strstr($client_info, 'Windows')) { |
---|
161 | if (strstr($client_info, 'Win64')||strstr($client_info, 'WOW64')) { |
---|
162 | show_download('winx64'); |
---|
163 | } else { |
---|
164 | show_download('win'); |
---|
165 | } |
---|
166 | } else if (strstr($client_info, 'Mac')) { |
---|
167 | show_download('mac'); |
---|
168 | } else if (strstr($client_info, 'Linux')) { |
---|
169 | show_download('linux'); |
---|
170 | } else { |
---|
171 | show_download(null); |
---|
172 | } |
---|
173 | page_tail(true); |
---|
174 | |
---|
175 | ?> |
---|