Advertisement
Guest User

Untitled

a guest
Oct 31st, 2014
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function divElementEnostavniTekst(sporocilo) {
  2.   return $('<div style="font-weight: bold"></div>').text(sporocilo);
  3. }
  4.  
  5. function divElementHtmlTekst(sporocilo) {
  6.   return $('<div></div>').html('<i>' + sporocilo + '</i>');
  7. }
  8.  
  9. function divElementHtmlTekst2(sporocilo) {
  10.   return $('<div></div>').html('<i style ="font-weight: bold">' + sporocilo + '</i>');
  11. }
  12.  
  13. function procesirajVnosUporabnika(klepetApp, socket) {
  14.   var sporocilo = $('#poslji-sporocilo').val();
  15.   var sistemskoSporocilo;
  16.  
  17.   if (sporocilo.charAt(0) == '/') {
  18.     sistemskoSporocilo = klepetApp.procesirajUkaz(sporocilo);
  19.     if (sistemskoSporocilo) {
  20.       $('#sporocila').append(divElementHtmlTekst(sistemskoSporocilo));
  21.     }
  22.   } else {
  23.    
  24.     // preprečitev xss napada
  25.     sporocilo = sporocilo.replace(/</g, "&#60");
  26.     sporocilo = sporocilo.replace(/>/g, "&#62");
  27.    
  28.     // zamenjava smeškov
  29.     sporocilo = sporocilo.split(";)").join('<img src="https://dl.dropboxusercontent.com/u/2855959/moodle/common/emoticons/wink.png"></img>');
  30.     sporocilo = sporocilo.split(":)").join('<img src="https://dl.dropboxusercontent.com/u/2855959/moodle/common/emoticons/smiley.png"></img>');
  31.     sporocilo = sporocilo.split("(y)").join('<img src="https://dl.dropboxusercontent.com/u/2855959/moodle/common/emoticons/like.png"></img>');
  32.     sporocilo = sporocilo.split(":*").join('<img src="https://dl.dropboxusercontent.com/u/2855959/moodle/common/emoticons/kiss.png"></img>');
  33.     sporocilo = sporocilo.split(":(").join('<img src="https://dl.dropboxusercontent.com/u/2855959/moodle/common/emoticons/sad.png"></img>');
  34.  
  35.    
  36.     klepetApp.posljiSporocilo($('#kanal').text(), sporocilo);
  37.     $('#sporocila').append(divElementHtmlTekst2(sporocilo));
  38.     $('#sporocila').scrollTop($('#sporocila').prop('scrollHeight'));
  39.   }
  40.  
  41.   $('#poslji-sporocilo').val('');
  42. }
  43.  
  44. var socket = io.connect();
  45.  
  46. $(document).ready(function() {
  47.   var klepetApp = new Klepet(socket);
  48.  
  49.   socket.on('vzdevekSpremembaOdgovor', function(rezultat) {
  50.     var sporocilo;
  51.     if (rezultat.uspesno) {
  52.       sporocilo = 'Prijavljen si kot ' + rezultat.vzdevek + '.';
  53.     } else {
  54.       sporocilo = rezultat.sporocilo;
  55.     }
  56.     $('#sporocila').append(divElementHtmlTekst(sporocilo));
  57.   });
  58.  
  59.   socket.on('pridruzitevOdgovor', function(rezultat) {
  60.     $('#kanal').text(rezultat.kanal);
  61.     $('#sporocila').append(divElementHtmlTekst('Sprememba kanala.'));
  62.   });
  63.  
  64.   socket.on('sporocilo', function (sporocilo) {
  65.     var novElement = $('<div style="font-weight: bold"></div>').html(sporocilo.besedilo);
  66.     $('#sporocila').append(novElement);
  67.   });
  68.  
  69.   socket.on('kanali', function(kanali) {
  70.     $('#seznam-kanalov').empty();
  71.  
  72.     for(var kanal in kanali) {
  73.       kanal = kanal.substring(1, kanal.length);
  74.       if (kanal != '') {
  75.         $('#seznam-kanalov').append(divElementEnostavniTekst(kanal));
  76.       }
  77.     }
  78.  
  79.     $('#seznam-kanalov div').click(function() {
  80.       klepetApp.procesirajUkaz('/pridruzitev ' + $(this).text());
  81.       $('#poslji-sporocilo').focus();
  82.     });
  83.   });
  84.  
  85.   setInterval(function() {
  86.     socket.emit('kanali');
  87.   }, 1000);
  88.  
  89.   $('#poslji-sporocilo').focus();
  90.  
  91.   $('#poslji-obrazec').submit(function() {
  92.     procesirajVnosUporabnika(klepetApp, socket);
  93.     return false;
  94.   });
  95. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement