|  | @@ -1,98 +0,0 @@
 | 
	
		
			
				|  |  | -// This is the default config (localhost). This file does nothing on its
 | 
	
		
			
				|  |  | -// own, and should not be modified. The index.js file is updated by sed
 | 
	
		
			
				|  |  | -// when the container is run.
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -// Check for the various File API support.
 | 
	
		
			
				|  |  | -if (!(window.File && window.FileReader && window.FileList && window.Blob)) {
 | 
	
		
			
				|  |  | -  alert('This website requires HTML5, which your browser does not fully support. Please use a supported browser to use this website.');
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -// Grab a peer ID
 | 
	
		
			
				|  |  | -var peer = new Peer({host: 'localhost', port: 9000, path: '/node_modules/peerjs'});
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -// Send a file
 | 
	
		
			
				|  |  | -function send() {
 | 
	
		
			
				|  |  | -    // Check that all fields are filled
 | 
	
		
			
				|  |  | -    var valid = true;
 | 
	
		
			
				|  |  | -    var file_to_send = document.getElementById("file_to_send").files[0];
 | 
	
		
			
				|  |  | -    var dest_id = document.getElementById("dest_id").value;
 | 
	
		
			
				|  |  | -    if(!file_to_send) {
 | 
	
		
			
				|  |  | -        valid = false;
 | 
	
		
			
				|  |  | -        alert("Please select a file.");
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -    if(!dest_id) {
 | 
	
		
			
				|  |  | -        valid = false;
 | 
	
		
			
				|  |  | -        alert("Please provide a Destination ID.");
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -    else if (dest_id === peer.id) {
 | 
	
		
			
				|  |  | -        valid = false;
 | 
	
		
			
				|  |  | -        alert("You can't send a file to yourself!");
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -    if(!valid){
 | 
	
		
			
				|  |  | -        return;
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    // Build blob from file and file type
 | 
	
		
			
				|  |  | -    var blob = new Blob([file_to_send], {type: file_to_send.type});
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    // Connect to the desired peer
 | 
	
		
			
				|  |  | -    var con = peer.connect(dest_id, { label: 'file', reliable: true}); 
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    con.on('open', function() {
 | 
	
		
			
				|  |  | -        // Send arr of blob and file data
 | 
	
		
			
				|  |  | -        con.send({
 | 
	
		
			
				|  |  | -            name: document.getElementById("file_to_send").files[0].name,
 | 
	
		
			
				|  |  | -            file: blob,
 | 
	
		
			
				|  |  | -            type: document.getElementById("file_to_send").files[0].type
 | 
	
		
			
				|  |  | -        });
 | 
	
		
			
				|  |  | -    });
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -// Display ID
 | 
	
		
			
				|  |  | -peer.on('open', function(id) {
 | 
	
		
			
				|  |  | -  document.getElementById("my_id").textContent = peer.id;
 | 
	
		
			
				|  |  | -});
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -// Constantly listen for incoming connections
 | 
	
		
			
				|  |  | -peer.on('connection', function(conn) {
 | 
	
		
			
				|  |  | -    conn.on('open', function() {
 | 
	
		
			
				|  |  | -        conn.on('data', function(data) {
 | 
	
		
			
				|  |  | -            var blob = new Blob([data.file], {type: data.type});
 | 
	
		
			
				|  |  | -            var url = window.URL.createObjectURL(blob);
 | 
	
		
			
				|  |  | - 
 | 
	
		
			
				|  |  | -            var table = document.getElementById("file_table");
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -            // Remove the "No Files" row
 | 
	
		
			
				|  |  | -            var elem = document.getElementById("empty_row");
 | 
	
		
			
				|  |  | -            if(elem) {
 | 
	
		
			
				|  |  | -                elem.parentNode.removeChild(elem);
 | 
	
		
			
				|  |  | -                //var row = table.insertRow(1);
 | 
	
		
			
				|  |  | -                //row.innerHTML = "File";
 | 
	
		
			
				|  |  | -                //var cell = row.insertCell(0);
 | 
	
		
			
				|  |  | -                //cell.innerHTML = "Time received";
 | 
	
		
			
				|  |  | -                //cell = row.insertCell(0);
 | 
	
		
			
				|  |  | -                //cell.innerHTML = "Source ID";
 | 
	
		
			
				|  |  | -                //cell = row.insertCell(0);
 | 
	
		
			
				|  |  | -                //cell.innerHTML = "Size";
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -            var row = table.insertRow(1);
 | 
	
		
			
				|  |  | -            var a = document.createElement("a");
 | 
	
		
			
				|  |  | -            a.href = url;
 | 
	
		
			
				|  |  | -            a.innerHTML = data.name;
 | 
	
		
			
				|  |  | -            a.setAttribute("download", data.name);
 | 
	
		
			
				|  |  | -            var file_col = row.insertCell(0);
 | 
	
		
			
				|  |  | -            file_col.appendChild(a);
 | 
	
		
			
				|  |  | -            //int id_col = row.insertCell(0);
 | 
	
		
			
				|  |  | -            //var d = new Date();
 | 
	
		
			
				|  |  | -            //id_col.innerHTML = d.getHours+':'+d.getMinutes();
 | 
	
		
			
				|  |  | -        });
 | 
	
		
			
				|  |  | -    });
 | 
	
		
			
				|  |  | -});
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -peer.on('error', function(err) {
 | 
	
		
			
				|  |  | -    if (err.type === 'peer-unavailable') {
 | 
	
		
			
				|  |  | -        alert("No user with the given ID is currently connected.");
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -});
 |