|
|
var ABB_Web_Users; var ABB_Unity_Users; var ABB_Robotstudio_Users; var ABB_Rooms; var actualDraggingUnityUser;
jQuery(function($) { var socket=io.connect(); var $nickForm=$('#setNick'); var $nickError=$('#nickError'); var $nickBox=$('#nickname'); var $users2=$('#users2'); var $usersStations=$('#usersStations'); var $usersUnity=$('#usersUnity'); var $RSrooms=$('#RSrooms'); var $messageForm=$('#send-message'); var $messageBox=$('#message'); var $chat=$('#chat'); $nickForm.submit(function(e) { e.preventDefault(); socket.emit('newuser',$nickBox.val(),function(data){ if(data){ $('#nickWrap').hide(); $('#contentWrap').show(); }else{ $nickError.html('That username is already taken:Try Again!'); } }); $nickBox.val(''); }); $messageForm.submit(function(e) { e.preventDefault(); socket.emit('sendmessage',$messageBox.val()); $messageBox.val(''); }); socket.on('newmessage',function(data){ $chat.append('<b>'+data.nick+':</b>'+data.msg+"<br/>"); }); socket.on('usernames',function(data){ ABB_Web_Users=data.ABB_Web_Users; var jsonStr = JSON.stringify(data); var html=''; /*for (i=0;i<jsonStr.length;i++){ html+=jsonStr[i]; }*/ //html+=jsonStr[i];
html="ABB_Web_Users: "; for(i=0; i<ABB_Web_Users.length; i++) { html+="<div class='nom'>" + ABB_Web_Users[i] + "</div>"; }
$users2.html(html); console.log(html); UpdateAllInfo(); }); socket.on('stationnames',function(data){ ABB_Robotstudio_Users=data.ABB_Robotstudio_Users; var jsonStr = JSON.stringify(data); var html=''; /*for (i=0;i<jsonStr.length;i++){ html+=jsonStr[i] }*/ //document.getElementById("usersStations").innerHTML = cars;
html="ABB_Robotstudio_Users: "; for(i=0; i<ABB_Robotstudio_Users.length; i++) { html+="<div class='nom'>" + ABB_Robotstudio_Users[i] + "</div>"; } $usersStations.html(html); console.log(html); UpdateAllInfo(); }); socket.on('Unitynames',function(data){ ABB_Unity_Users=data.ABB_Unity_Users; var jsonStr = JSON.stringify(data); var html=''; /*for (i=0;i<jsonStr.length;i++){ html+=jsonStr[i] }*/ //docuament.getElementById("usersStations").innerHTML = cars;
html="ABB_Unity_Users: "; for(i=0; i<ABB_Unity_Users.length; i++) { html+="<div id='"+ABB_Unity_Users[i]+"' class='nom' draggable='true' ondragstart='drag(event, this.id)'>" + ABB_Unity_Users[i] + "</div>"; } $usersUnity.html(html); console.log(html); UpdateAllInfo(); }); socket.on('rooms',function(data){ ABB_Rooms=data.ABB_Rooms; var jsonStr = JSON.stringify(data); var html=''; /*for (i=0;i<jsonStr.length;i++){ html+=jsonStr[i] }*/ html="ABB_Rooms: "; for(i=0; i<ABB_Rooms.length; i++) { html+="<div class='nom'>" + ABB_Rooms[i] + "</div>"; } //document.getElementById("usersStations").innerHTML = cars;
$RSrooms.html(html); console.log(html); UpdateAllInfo(); }); }); function NoWindowsApanyo(){ //ABB_Unity_Users=["uu1"];
ABB_Rooms=["room1", "room2"]; ABB_Robotstudio_Users=["rb1", "rb2"];
UpdateUnityUsersAvailable(); } function GenerateRandomId() { idgenerated=Math.random(); idgenerated=idgenerated*100; idgenerated=Math.round(idgenerated); idgenerated=idgenerated.toString(); return(idgenerated); } function OnLoadHTML(){ var socket=io.connect(); idg=GenerateRandomId(); socket.emit('newuser',idg,function(data){}); UpdateUnityUsersAvailable(); } function UpdateUnityUsersAvailable(){ if(ABB_Unity_Users!=undefined) { html="ABB_Unity_Users: "; for(i=0; i<ABB_Unity_Users.length; i++) { html+="<div id='"+ABB_Unity_Users[i]+"' class='nom' draggable='true' ondragstart='drag(event, this.id)'>" + ABB_Unity_Users[i] + "</div>"; } document.getElementById('usersUnity').innerHTML=html; } } function UpdateAllInfo(){
//NoWindowsApanyo();
document.getElementById("systeminfo").innerHTML=""; saux=""; if(ABB_Rooms!=undefined) { saux+="System info<br>"; for(i=0; i<ABB_Rooms.length; i++) { saux+="<div id='"+ABB_Rooms[i]+"' class='Room' ondrop='drop(event, this.id)' ondragover='allowDrop(event)'>" + ABB_Rooms[i]; if(ABB_Robotstudio_Users!=undefined) { for(j=0; j<ABB_Robotstudio_Users.length; j++) { saux+=" <div class='Robotstudio_User'>" + ABB_Robotstudio_Users[j] + "</div>"; } } /* if(ABB_Unity_Users!=undefined) { for(j=0; j<ABB_Unity_Users.length; j++) { saux+=" <div class='Unity_User'>" + ABB_Unity_Users[j] + "</div>"; } }*/
saux+="</div>"; } } document.getElementById('systeminfo').innerHTML=saux; }
function RemoveFromUnityUsersArray(unityusergiv){ for(var i=0; i<ABB_Unity_Users.length; i++) { if(ABB_Unity_Users[i]==unityusergiv) { ABB_Unity_Users.splice(i, 1); } } }
function allowDrop(ev) { ev.preventDefault(); }
function drag(ev, idUnityUser) { ev.dataTransfer.setData("text", ev.target.id); actualDraggingUnityUser=idUnityUser; }
function drop(ev, idRoom) { ev.preventDefault(); cont=""; cont+="<div id='"+ actualDraggingUnityUser +"' class='nom'>" + actualDraggingUnityUser + "</div>"; document.getElementById(idRoom).innerHTML+=cont; RemoveFromUnityUsersArray(actualDraggingUnityUser); UpdateUnityUsersAvailable(); //AQUÍ LA FUNCIÓ DE QUE UN UNITY ES CONECTA A UN ROOM:
UnityToRoom(idRoom, actualDraggingUnityUser); } function UnityToRoom(room, unity){ //funció de quan un unity es conecta a un room
//aqí lu del socet emit cap al server avisant de que el unity està a la room
//a la variable room i a la variable unity hi tens la info de quin unity es conecta a quin room
alert("El user: " + unity + " es conecta a la room: " + room); //aqí pots posar la info de qin unityuser es conecta a qina room a una array o algu
}
|