[1284] | 1 | function get_radio_value(id) |
---|
| 2 | { |
---|
| 3 | var value; |
---|
| 4 | var index; |
---|
| 5 | var radiogroup = document.getElementById(id); |
---|
| 6 | var radio = radiogroup.getElementsByTagName('input'); |
---|
| 7 | |
---|
| 8 | for (index=0; index < radio.length; index++) |
---|
| 9 | { |
---|
| 10 | if(radio[index].checked == true) |
---|
| 11 | { |
---|
| 12 | value = radio[index].value; |
---|
| 13 | } |
---|
| 14 | } |
---|
| 15 | |
---|
| 16 | return value; |
---|
| 17 | } |
---|
| 18 | |
---|
| 19 | function dl_iso(e) |
---|
| 20 | { |
---|
| 21 | var http = new Array( |
---|
| 22 | 'http://ftp.jaist.ac.jp/pub/Linux/Vine/', |
---|
| 23 | 'http://ftp.kddilabs.jp/pub/Linux/packages/Vine/', |
---|
| 24 | 'http://www.ring.gr.jp/pub/linux/Vine/', |
---|
| 25 | 'http://ftp.vinelinux.org/pub/Vine/' |
---|
| 26 | ); |
---|
| 27 | var ftp = new Array( |
---|
| 28 | 'ftp://ftp.jaist.ac.jp/pub/Linux/Vine/', |
---|
| 29 | 'ftp://ftp.kddilabs.jp/pub/Linux/packages/Vine/', |
---|
| 30 | 'ftp://ftp.ring.gr.jp/pub/linux/Vine/', |
---|
| 31 | 'ftp://ftp.vinelinux.org/pub/Vine/' |
---|
| 32 | ); |
---|
[2239] | 33 | var imgprefix = 'Vine-5.2/IMAGES/Vine52-'; |
---|
[1284] | 34 | var protocol; |
---|
| 35 | var arch; |
---|
| 36 | var media; |
---|
| 37 | var uri; |
---|
| 38 | |
---|
| 39 | protocol = get_radio_value ('protocol'); |
---|
| 40 | arch = get_radio_value ('arch'); |
---|
| 41 | media = get_radio_value ('media'); |
---|
| 42 | |
---|
| 43 | var select = document.getElementById('mirror'); |
---|
| 44 | switch (protocol) |
---|
| 45 | { |
---|
| 46 | case 'http': |
---|
| 47 | uri = http[select.value]; |
---|
| 48 | break; |
---|
| 49 | case 'ftp': |
---|
| 50 | uri = ftp[select.value]; |
---|
| 51 | } |
---|
| 52 | |
---|
| 53 | uri = uri + imgprefix + arch + "-" + media + ".iso"; |
---|
| 54 | closewin(); |
---|
| 55 | window.location = 'thanks.html?' + uri; |
---|
| 56 | } |
---|
| 57 | |
---|
| 58 | function closewin() |
---|
| 59 | { |
---|
| 60 | var closebtn = document.getElementById("close"); |
---|
| 61 | removeListener(closebtn, 'click', dl_cancel, false); |
---|
| 62 | var download = document.getElementById("downloads"); |
---|
| 63 | removeListener(download, 'click', dl_iso, false); |
---|
| 64 | var dlwin = document.getElementById("dlwin"); |
---|
| 65 | document.getElementsByTagName("body")[0].removeChild(dlwin); |
---|
| 66 | } |
---|
| 67 | |
---|
| 68 | function openwin(e) |
---|
| 69 | { |
---|
| 70 | if(!document.getElementById("dlwin")) |
---|
| 71 | { |
---|
| 72 | var dlwin = document.createElement("div"); |
---|
| 73 | dlwin.id = "dlwin"; |
---|
[2239] | 74 | dlwin.innerHTML = '<h2>Vine Linux 5.2 CD/DVD/USB ISOイメージのダウンロード</h2>\n' + |
---|
[1284] | 75 | '<form><p id="protocol">プロトコル:\n' + |
---|
| 76 | '<input type="radio" name="protocol" value="http" checked="checked" />HTTP\n' + |
---|
| 77 | '<input type="radio" name="protocol" value="ftp" />FTP</p>\n' + |
---|
| 78 | '<p><label>ミラーサーバ:<select id="mirror">\n' + |
---|
| 79 | '<option value="0">北陸先端科学技術大学院大学</option>\n' + |
---|
| 80 | '<option value="1">KDDI 研究所</option>\n' + |
---|
| 81 | '<option value="2">Ring Server Project</option>\n' + |
---|
| 82 | '<option value="3">Vine Linux Master Server</option></select></label></p>\n' + |
---|
| 83 | '<p id="arch">対象:\n' + |
---|
| 84 | '<label><input type="radio" name="arch" value="i386" checked="checked" />PC/AT互換機(32bit)</label>\n' + |
---|
| 85 | '<label><input type="radio" name="arch" value="x86_64" />PC/AT互換機(64bit)</label>\n' + |
---|
| 86 | '<label><input type="radio" name="arch" value="ppc" />Macintosh(Power PC)</label></p>\n' + |
---|
| 87 | '<p id="media">メディア:\n' + |
---|
| 88 | '<label><input type="radio" name="media" value="DVD" checked="checked" />DVD/USB (1GB)</label>\n' + |
---|
| 89 | '<label><input type="radio" name="media" value="CD" />CD (700MB)</label><br />\n' + |
---|
| 90 | '<p class="btngroup"><input type="button" id="downloads" value="ダウンロード" />\n' + |
---|
| 91 | '<input type="button" id="close" value="キャンセル" /></p></form>\n'; |
---|
| 92 | document.getElementsByTagName("body")[0].appendChild(dlwin); |
---|
| 93 | |
---|
| 94 | var closebtn = document.getElementById("close"); |
---|
| 95 | addListener(closebtn, 'click', dl_cancel, false); |
---|
| 96 | var download = document.getElementById("downloads"); |
---|
| 97 | addListener(download, 'click', dl_iso, false); |
---|
| 98 | } |
---|
| 99 | |
---|
| 100 | if(e.preventDefault) |
---|
| 101 | { |
---|
| 102 | e.preventDefault(); |
---|
| 103 | } |
---|
| 104 | |
---|
| 105 | /* |
---|
| 106 | if(window.event) |
---|
| 107 | { |
---|
| 108 | window.event.returnValue = false; |
---|
| 109 | } |
---|
| 110 | */ |
---|
| 111 | |
---|
| 112 | return false; |
---|
| 113 | } |
---|
| 114 | |
---|
| 115 | function dl_cancel(e) |
---|
| 116 | { |
---|
| 117 | closewin(); |
---|
| 118 | } |
---|
| 119 | |
---|
| 120 | function setListener(e) |
---|
| 121 | { |
---|
| 122 | var dlbutton = document.getElementById("dlbutton"); |
---|
| 123 | addListener(dlbutton, 'click', openwin, false); |
---|
| 124 | } |
---|
| 125 | |
---|
| 126 | function addListener(elem, eventType, func, cap) |
---|
| 127 | { |
---|
| 128 | if(elem.addEventListener) |
---|
| 129 | { |
---|
| 130 | elem.addEventListener(eventType, func, cap); |
---|
| 131 | } |
---|
| 132 | /* |
---|
| 133 | else if(elem.attachEvent) |
---|
| 134 | { |
---|
| 135 | elem.attachEvent ('on'+eventType, func); |
---|
| 136 | } |
---|
| 137 | */ |
---|
| 138 | } |
---|
| 139 | |
---|
| 140 | function removeListener(elem, eventType, func, cap) |
---|
| 141 | { |
---|
| 142 | if(elem.removeEventListener) |
---|
| 143 | { |
---|
| 144 | elem.removeEventListener(eventType, func, cap); |
---|
| 145 | } |
---|
| 146 | } |
---|
| 147 | |
---|
| 148 | |
---|
| 149 | addListener(window, 'load', setListener, false); |
---|