-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlinguafranca.html
145 lines (106 loc) · 4.41 KB
/
linguafranca.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
<title>Lingua Franca</title>
<!-- Latest compiled and minified CSS-->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"
integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<link rel="stylesheet" type="text/css" href="linguafranca.css">
<link rel="stylesheet" type="text/css" href="styles.css">
</head>
<script src="/socket.io/socket.io.js"></script>
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script>
var socket = io.connect();
var nickname = '';
// var translated = '';
console.log('nickname: ' + nickname);
$(document).ready(function(){
$('#setname').click(function(){
nickname = $('#n').val();
console.log("nickname is: " + nickname);
});
$('#send').submit(function(){
var newScript = document.createElement('script');
newScript.type = 'text/javascript';
var original = $('#from').val();
var language = $('#to').val();
var sourceText = $('#m').val();
var source = 'https://www.googleapis.com/language/translate/v2?key=AIzaSyB37v3YFUGwmHw7D2Bn1wUFS4j6RD_AZbA&source=' +
original + '&target=' + language + '&callback=translateText&q=' + sourceText;
newScript.src = source;
console.log("yes");
document.getElementsByTagName('head')[0].appendChild(newScript);
return false;
});
socket.on('chat message', function(msg){
console.log("oh no" + msg);
$('#messages').append($('<li>').text(msg));
});
});
function translateText(response) {
console.log("here!");
console.log(response.data.translations[0].translatedText);
var translated = response.data.translations[0].translatedText;
var message = nickname + ": " + translated;
var my_message = "me: " + $('#m').val();
console.log("message is: " + message);
socket.emit('chat message', {message: message, my_message: my_message});
$('#m').val('');
// socket.on('self chat message', function(msg){
// console.log("woop woop");
// $('#messages').append($('<li id="right">').text(msg));
// });
}
</script>
<body>
<h1>Welcome to Lingua Franca!</h1>
<div class="container">
<div id="message-box">
<ul id="messages"></ul>
</div>
<form id="send" action="">
<input id="m" autocomplete="off" /><button id="sendmessage">Send</button>
</form>
<div id="names_and_info">
<input id="n" type="text" autocomplete="off" /><button id ="setname">Set Nickname</button>
<p>From: </p>
<select id = "from">
<option value="af" >Afrikaans</option>
<option value="ar" >Arabic</option>
<option value="zh-CN" >Chinese (Simplified)</option>
<option value="zh-TW" >Chinese (Traditional)</option>
<option selected="selected" value="en" >English</option>
<option value="fr" >French</option>
<option value="de" >German</option>
<option value="it" >Italian</option>
<option value="ja" >Japanese</option>
<option value="ru" >Russian</option>
<option value="es" >Spanish</option>
<option value="ur" >Urdu</option>
<option value="yi" >Yiddish</option>
</select>
<p>To: </p>
<select id = "to">
<option value="af" >Afrikaans</option>
<option value="ar" >Arabic</option>
<option value="zh-CN" >Chinese (Simplified)</option>
<option value="zh-TW" >Chinese (Traditional)</option>
<option value="en" >English</option>
<option value="fr" >French</option>
<option value="de" >German</option>
<option value="it" >Italian</option>
<option value="ja" >Japanese</option>
<option value="ru" >Russian</option>
<option selected="selected" value="es" >Spanish</option>
<option value="ur" >Urdu</option>
<option value="yi" >Yiddish</option>
</select>
</div>
</div>
</body>
</html>