From 640c1f8527916f93750feea554fc864a861ae98a Mon Sep 17 00:00:00 2001
From: azkahi <azkaimtiyaz@gmail.com>
Date: Wed, 30 Nov 2016 14:14:46 +0800
Subject: [PATCH] Added function to chat, clear chat after enter

---
 KAA-JSP/build/web/catalog.jsp    |  8 ++++----
 KAA-JSP/build/web/scripts/app.js | 31 +++++++++++++++++++++++--------
 KAA-JSP/web/catalog.jsp          |  8 ++++----
 KAA-JSP/web/scripts/app.js       | 31 +++++++++++++++++++++++--------
 4 files changed, 54 insertions(+), 24 deletions(-)

diff --git a/KAA-JSP/build/web/catalog.jsp b/KAA-JSP/build/web/catalog.jsp
index 380103f..8d5aafc 100644
--- a/KAA-JSP/build/web/catalog.jsp
+++ b/KAA-JSP/build/web/catalog.jsp
@@ -336,12 +336,12 @@
                 <div class="popup-messages">
                     
                     <li ng-repeat="message in messages" style="list-style-type:none">
-                        <div ng-if="message.name === receiver" class="talk-bubble tri-right left-top">
+                        <div ng-if="(message.name === receiver) && (message.to === user)" class="talk-bubble tri-right left-top">
                             <div class="talktext">
                                 <p>{{message.text}}</p>
                             </div>
                         </div>
-                        <div ng-if="message.name === user" class="talk-bubble tri-right right-top">
+                        <div ng-if="(message.name === user) && (message.to === receiver)" class="talk-bubble tri-right right-top">
                             <div class="talktext">
                                 <p>{{message.text}}</p>
                             </div>
@@ -349,8 +349,8 @@
                     </li>
                 </div>
                 <div class="popup-input">
-                    <input type="text" style="height: 100%; width:80%" name="chat" hidefocus="hidefocus" ng-model="newmessage"/>
-                    <button ng-click="sendMessage(newmessage)">Send</button>
+                    <input type="text" style="height: 100%; width:80%" name="chat" id="chat" hidefocus="hidefocus" ng-enter="sendMessage(newmessage);" ng-model="newmessage"/>
+                    <button ng-click="sendMessage(newmessage);">Send</button>
                 </div>          
             </div>
 
diff --git a/KAA-JSP/build/web/scripts/app.js b/KAA-JSP/build/web/scripts/app.js
index 9cee109..c4f3fca 100644
--- a/KAA-JSP/build/web/scripts/app.js
+++ b/KAA-JSP/build/web/scripts/app.js
@@ -7,6 +7,20 @@
 
 var app =  angular.module('chatApp', []);
 
+app.directive('ngEnter', function () {
+    return function (scope, element, attrs) {
+        element.bind("keydown keypress", function (event) {
+            if(event.which === 13) {
+                scope.$apply(function (){
+                    scope.$eval(attrs.ngEnter);
+                });
+ 
+                event.preventDefault();
+            }
+        });
+    };
+});
+
 app.controller('chatController', ['$scope','Message', function($scope,Message){
     name = document.getElementById("usernameangular").dataset.user;
     console.log(name);
@@ -34,8 +48,9 @@ app.controller('chatController', ['$scope','Message', function($scope,Message){
     
     $scope.sendMessage = function(newmessage){
         //kirim post/get request ke sendmessage
-        var newmessage1 = {'name':$scope.user,'message':newmessage};
+        var newmessage1 = {'name':$scope.user,'to':$scope.receiver, 'text':newmessage};
         Message.all.push(newmessage1); //masukin ke data message lokal
+        document.getElementById("chat").value = "";
     };
     
     var config = {
@@ -66,14 +81,14 @@ app.controller('chatController', ['$scope','Message', function($scope,Message){
 
 app.factory('Message', function() {
     var messages = [{'name':'Pippo','text':'Hello'},
-        {'name':'a','text':'Hello'},
-        {'name':'azkaimtiyaz','text':'how are you ?'},
-        {'name':'a','text':'fine thanks'},
-        {'name':'a','text':'Bye'},
-        {'name':'azkaimtiyaz','text':'Bye'},
+        {'name':'a','to':'azkaimtiyaz', 'text':'Hello'},
+        {'name':'azkaimtiyaz','to':'a', 'text':'how are you ?'},
+        {'name':'a','to':'azkaimtiyaz','text':'fine thanks'},
+        {'name':'a','to':'azkaimtiyaz','text':'Bye'},
+        {'name':'azkaimtiyaz','to':'a','text':'Bye'},
         {'name':'Pippo','text':'Hello'},
-        {'name':'a','text':'Hello'},
-        {'name':'azkaimtiyaz','text':'how are you ?'}];
+        {'name':'a','to':'azkaimtiyaz','text':'Hello'},
+        {'name':'azkaimtiyaz','to':'a','text':'how are you ?'}];
 
     var Message = {
         all : messages,
diff --git a/KAA-JSP/web/catalog.jsp b/KAA-JSP/web/catalog.jsp
index 380103f..8d5aafc 100644
--- a/KAA-JSP/web/catalog.jsp
+++ b/KAA-JSP/web/catalog.jsp
@@ -336,12 +336,12 @@
                 <div class="popup-messages">
                     
                     <li ng-repeat="message in messages" style="list-style-type:none">
-                        <div ng-if="message.name === receiver" class="talk-bubble tri-right left-top">
+                        <div ng-if="(message.name === receiver) && (message.to === user)" class="talk-bubble tri-right left-top">
                             <div class="talktext">
                                 <p>{{message.text}}</p>
                             </div>
                         </div>
-                        <div ng-if="message.name === user" class="talk-bubble tri-right right-top">
+                        <div ng-if="(message.name === user) && (message.to === receiver)" class="talk-bubble tri-right right-top">
                             <div class="talktext">
                                 <p>{{message.text}}</p>
                             </div>
@@ -349,8 +349,8 @@
                     </li>
                 </div>
                 <div class="popup-input">
-                    <input type="text" style="height: 100%; width:80%" name="chat" hidefocus="hidefocus" ng-model="newmessage"/>
-                    <button ng-click="sendMessage(newmessage)">Send</button>
+                    <input type="text" style="height: 100%; width:80%" name="chat" id="chat" hidefocus="hidefocus" ng-enter="sendMessage(newmessage);" ng-model="newmessage"/>
+                    <button ng-click="sendMessage(newmessage);">Send</button>
                 </div>          
             </div>
 
diff --git a/KAA-JSP/web/scripts/app.js b/KAA-JSP/web/scripts/app.js
index 9cee109..c4f3fca 100644
--- a/KAA-JSP/web/scripts/app.js
+++ b/KAA-JSP/web/scripts/app.js
@@ -7,6 +7,20 @@
 
 var app =  angular.module('chatApp', []);
 
+app.directive('ngEnter', function () {
+    return function (scope, element, attrs) {
+        element.bind("keydown keypress", function (event) {
+            if(event.which === 13) {
+                scope.$apply(function (){
+                    scope.$eval(attrs.ngEnter);
+                });
+ 
+                event.preventDefault();
+            }
+        });
+    };
+});
+
 app.controller('chatController', ['$scope','Message', function($scope,Message){
     name = document.getElementById("usernameangular").dataset.user;
     console.log(name);
@@ -34,8 +48,9 @@ app.controller('chatController', ['$scope','Message', function($scope,Message){
     
     $scope.sendMessage = function(newmessage){
         //kirim post/get request ke sendmessage
-        var newmessage1 = {'name':$scope.user,'message':newmessage};
+        var newmessage1 = {'name':$scope.user,'to':$scope.receiver, 'text':newmessage};
         Message.all.push(newmessage1); //masukin ke data message lokal
+        document.getElementById("chat").value = "";
     };
     
     var config = {
@@ -66,14 +81,14 @@ app.controller('chatController', ['$scope','Message', function($scope,Message){
 
 app.factory('Message', function() {
     var messages = [{'name':'Pippo','text':'Hello'},
-        {'name':'a','text':'Hello'},
-        {'name':'azkaimtiyaz','text':'how are you ?'},
-        {'name':'a','text':'fine thanks'},
-        {'name':'a','text':'Bye'},
-        {'name':'azkaimtiyaz','text':'Bye'},
+        {'name':'a','to':'azkaimtiyaz', 'text':'Hello'},
+        {'name':'azkaimtiyaz','to':'a', 'text':'how are you ?'},
+        {'name':'a','to':'azkaimtiyaz','text':'fine thanks'},
+        {'name':'a','to':'azkaimtiyaz','text':'Bye'},
+        {'name':'azkaimtiyaz','to':'a','text':'Bye'},
         {'name':'Pippo','text':'Hello'},
-        {'name':'a','text':'Hello'},
-        {'name':'azkaimtiyaz','text':'how are you ?'}];
+        {'name':'a','to':'azkaimtiyaz','text':'Hello'},
+        {'name':'azkaimtiyaz','to':'a','text':'how are you ?'}];
 
     var Message = {
         all : messages,
-- 
GitLab