]> git.wh0rd.org - chrome-ext/crftp.git/blob - pnacl/main.js
init
[chrome-ext/crftp.git] / pnacl / main.js
1 // Written by Mike Frysinger <vapier@gmail.com>. Released into the public domain. Suck it.
2
3 function set_ui(enabled)
4 {
5 var eles = document.querySelectorAll('#UI *');
6 for (var i = 0; i < eles.length; ++i)
7 eles[i].disabled = !enabled;
8 }
9
10 function connect()
11 {
12 var c = $('#connect');
13 var cmd = $('#cmd');
14 if (c.innerText == 'Connect') {
15 crftp.connect($('#host').value + ':' + $('#port').value);
16 crftp.login($('#user').value, $('#pass').value);
17 c.innerText = 'Disconnect';
18 cmd.disabled = false;
19 cmd.focus();
20 } else {
21 crftp.disconnect();
22 c.innerText = 'Connect';
23 cmd.disabled = true;
24 }
25 }
26
27 function send_command(e)
28 {
29 if (e.keyCode == 13) {
30 var args = this.value.split(' ');
31 for (var i = 0; i < args.length; ++i)
32 if (args[i] === "null")
33 args[i] = null;
34 crftp.raw.apply(null, args);
35 }
36 }
37
38 function files_get()
39 {
40 var ret = [];
41 var files = $('#files').files;
42
43 if (files.length == 0) {
44 alert('select some files first');
45 return ret;
46 }
47
48 for (var i = 0; i < files.length; ++i) {
49 ret.push([
50 URL.createObjectURL(files[i]),
51 files[i].name,
52 ]);
53 }
54
55 return ret;
56 }
57
58 function upload()
59 {
60 crftp.put(files_get());
61 }
62
63 function download()
64 {
65 // b = new Blob();
66 // u = URL.createObjectURL(b);
67 // crftp.get([[u, 'Makefile']]);
68 // crftp.get(files_get());
69 }
70
71 document.addEventListener('DOMContentLoaded', function() {
72 $('#cmd').onkeypress = send_command;
73 $('#connect').onclick = connect;
74 $('#upload').onclick = upload;
75 $('#download').onclick = download;
76
77 crftp.initialize('crftp.nmf');
78 });