|
@@ -1,12 +1,12 @@
|
|
|
-angular.module('appMessage').controller('MessageController', ['$scope', '$filter', '$location', '$anchorScroll', '$element', function($scope, $filter, $location, $anchorScroll, $element) {
|
|
|
+angular.module('appMessage').controller('MessageController', ['$scope', '$filter', '$location', '$anchorScroll', '$timeout', '$element', function($scope, $filter, $location, $anchorScroll, $timeout, $element) {
|
|
|
lxtalkClient.Invoke('{15180DEF-D508-45F7-BAEB-6486CD8752C8}', '_Register', '', $scope);
|
|
|
$scope.glued = true;
|
|
|
$scope.count = true;
|
|
|
$scope.appContent = {};
|
|
|
$scope.sendMark = 0;
|
|
|
$scope.receiveMark = 0;
|
|
|
- $scope.sMessage = [];
|
|
|
- $scope.rMessage = [];
|
|
|
+ $scope.sMessageTime = [];
|
|
|
+ $scope.rMessageTime = [];
|
|
|
$scope.sendmessages = [];
|
|
|
$scope.historymessages = [];
|
|
|
|
|
@@ -18,6 +18,29 @@ angular.module('appMessage').controller('MessageController', ['$scope', '$filter
|
|
|
scroll(document.body);
|
|
|
};
|
|
|
|
|
|
+ $scope.voicePlay = function($event) {
|
|
|
+ var audio = $($event.target.parentElement.nextElementSibling)[0];
|
|
|
+ var unread = $($event.target.nextElementSibling);
|
|
|
+ console.log($($event.target));
|
|
|
+ if (audio !== null) {
|
|
|
+ if (audio.paused) {
|
|
|
+ unread.removeClass("app-voice-unread");
|
|
|
+ $($event.target).removeClass("app-voice-pause");
|
|
|
+ $($event.target).addClass("app-voice-play");
|
|
|
+ $timeout(function() {
|
|
|
+ $($event.target).removeClass("app-voice-play");
|
|
|
+ $($event.target).addClass("app-voice-pause");
|
|
|
+ }, 10000 * audio.duration);
|
|
|
+ audio.play();
|
|
|
+ } else {
|
|
|
+ $($event.target).removeClass("app-voice-play");
|
|
|
+ $($event.target).addClass("app-voice-pause");
|
|
|
+ audio.pause();
|
|
|
+ audio.load();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ };
|
|
|
+
|
|
|
$scope.showMessage = function(jsonStr) {
|
|
|
console.log(jsonStr);
|
|
|
jsonStr = jsonStr.replace(/ /g, " ");
|
|
@@ -43,7 +66,17 @@ angular.module('appMessage').controller('MessageController', ['$scope', '$filter
|
|
|
$scope.historymessages.push(msg);
|
|
|
};
|
|
|
|
|
|
- $scope.getTime = function(item) {
|
|
|
+ $scope.getHisTime = function(item) {
|
|
|
+ var myDate = new Date();
|
|
|
+ var nowDate = $filter("date")(myDate.getTime(), "yyyy-MM-dd");
|
|
|
+ var messageDate = $filter("date")(item.ts, "yyyy-MM-dd");
|
|
|
+ if (messageDate == nowDate)
|
|
|
+ return $filter("date")(item.ts, "HH:mm:ss");
|
|
|
+ else
|
|
|
+ return $filter("date")(item.ts, "yyyy-MM-dd HH:mm:ss");
|
|
|
+ };
|
|
|
+
|
|
|
+ $scope.getCurTime = function(item) {
|
|
|
var arr = $scope.appContent.directory.user.split("\\");
|
|
|
var userself = arr[arr.length - 2];
|
|
|
var getUserID = item.sender.indexOf(userself);
|
|
@@ -51,58 +84,30 @@ angular.module('appMessage').controller('MessageController', ['$scope', '$filter
|
|
|
var nowDate = $filter("date")(myDate.getTime(), "yyyy-MM-dd");
|
|
|
var messageDate = $filter("date")(item.ts, "yyyy-MM-dd");
|
|
|
if (getUserID !== -1) {
|
|
|
- $scope.sMessage[$scope.sendMark] = item.ts;
|
|
|
+ $scope.sMessageTime[$scope.sendMark] = item.ts;
|
|
|
$scope.sendMark = $scope.sendMark + 1;
|
|
|
$scope.receiveMark = 0;
|
|
|
- $scope.rMessage = [];
|
|
|
+ $scope.rMessageTime = [];
|
|
|
} else {
|
|
|
- $scope.rMessage[$scope.receiveMark] = item.ts;
|
|
|
+ $scope.rMessageTime[$scope.receiveMark] = item.ts;
|
|
|
$scope.receiveMark = $scope.receiveMark + 1;
|
|
|
$scope.sendMark = 0;
|
|
|
- $scope.sMessage = [];
|
|
|
+ $scope.sMessageTime = [];
|
|
|
}
|
|
|
- if (messageDate == nowDate) {
|
|
|
- if ($scope.sendMark == 1 || $scope.receiveMark == 1) {
|
|
|
- console.log("111");
|
|
|
- return $filter("date")(item.ts, "HH:mm:ss");
|
|
|
- } else if ($scope.sendMark > 1 && Math.abs($scope.sMessage[$scope.sendMark - 1] - $scope.sMessage[0]) < 60000) {
|
|
|
- console.log("222");
|
|
|
- return '';
|
|
|
- } else if ($scope.receiveMark > 1 && Math.abs($scope.rMessage[$scope.receiveMark - 1] - $scope.rMessage[0]) < 60000) {
|
|
|
- console.log("333");
|
|
|
- return '';
|
|
|
- } else if ($scope.sendMark > 1 && Math.abs($scope.sMessage[$scope.sendMark - 1] - $scope.sMessage[0]) > 60000) {
|
|
|
- console.log("444");
|
|
|
- $scope.sendMark = 0;
|
|
|
- $scope.sMessage = [];
|
|
|
- return $filter("date")(item.ts, "HH:mm:ss");
|
|
|
- } else if ($scope.receiveMark > 1 && Math.abs($scope.rMessage[$scope.receiveMark - 1] - $scope.rMessage[0]) > 60000) {
|
|
|
- console.log("555");
|
|
|
- $scope.receiveMark = 0;
|
|
|
- $scope.rMessage = [];
|
|
|
- return $filter("date")(item.ts, "HH:mm:ss");
|
|
|
- }
|
|
|
- } else {
|
|
|
- if ($scope.sendMark == 1 || $scope.receiveMark == 1) {
|
|
|
- console.log("111");
|
|
|
- return $filter("date")(item.ts, "yyyy HH:mm:ss");
|
|
|
- } else if ($scope.sendMark > 1 && Math.abs($scope.sMessage[$scope.sendMark - 1] - $scope.sMessage[0]) < 60000) {
|
|
|
- console.log("222");
|
|
|
- return $filter("date")(item.ts, "yyyy HH");
|
|
|
- } else if ($scope.receiveMark > 1 && Math.abs($scope.rMessage[$scope.receiveMark - 1] - $scope.rMessage[0]) < 60000) {
|
|
|
- console.log("333");
|
|
|
- return $filter("date")(item.ts, "yyyy HH:mm");
|
|
|
- } else if ($scope.sendMark > 1 && Math.abs($scope.sMessage[$scope.sendMark - 1] - $scope.sMessage[0]) > 60000) {
|
|
|
- console.log("444");
|
|
|
- $scope.sendMark = 0;
|
|
|
- $scope.sMessage = [];
|
|
|
- return $filter("date")(item.ts, "MM HH:mm:ss");
|
|
|
- } else if ($scope.receiveMark > 1 && Math.abs($scope.rMessage[$scope.receiveMark - 1] - $scope.rMessage[0]) > 60000) {
|
|
|
- console.log("555");
|
|
|
- $scope.receiveMark = 0;
|
|
|
- $scope.rMessage = [];
|
|
|
- return $filter("date")(item.ts, "dd HH:mm:ss");
|
|
|
- }
|
|
|
+ if ($scope.sendMark == 1 || $scope.receiveMark == 1 || Math.abs($scope.sMessageTime[$scope.sendMark - 1] - $scope.sMessageTime[0]) == 0 || Math.abs($scope.rMessageTime[$scope.receiveMark - 1] - $scope.rMessageTime[0]) == 0) {
|
|
|
+ return $filter("date")(item.ts, "HH:mm:ss");
|
|
|
+ } else if ($scope.sendMark > 1 && Math.abs($scope.sMessageTime[$scope.sendMark - 1] - $scope.sMessageTime[0]) <= 60000) {
|
|
|
+ return '';
|
|
|
+ } else if ($scope.receiveMark > 1 && Math.abs($scope.rMessageTime[$scope.receiveMark - 1] - $scope.rMessageTime[0]) <= 60000) {
|
|
|
+ return '';
|
|
|
+ } else if ($scope.sendMark > 1 && Math.abs($scope.sMessageTime[$scope.sendMark - 1] - $scope.sMessageTime[0]) > 60000) {
|
|
|
+ $scope.sMessageTime[0] = $scope.sMessageTime[$scope.sendMark - 1];
|
|
|
+ $scope.sendMark = 1;
|
|
|
+ return $filter("date")(item.ts, "HH:mm:ss");
|
|
|
+ } else if ($scope.receiveMark > 1 && Math.abs($scope.rMessageTime[$scope.receiveMark - 1] - $scope.rMessageTime[0]) > 60000) {
|
|
|
+ $scope.rMessageTime[0] = $scope.rMessageTime[$scope.receiveMark - 1];
|
|
|
+ $scope.receiveMark = 1;
|
|
|
+ return $filter("date")(item.ts, "HH:mm:ss");
|
|
|
}
|
|
|
};
|
|
|
|