angular.module('appMessage').controller('MessageController', ['$scope', '$filter', '$location', '$anchorScroll', function($scope, $filter, $location, $anchorScroll) {
lxtalkClient.Invoke('{15180DEF-D508-45F7-BAEB-6486CD8752C8}', '_Register', '', $scope);
$scope.glued = true;
$scope.count = true;
$scope.appContent = {};
$scope.sendmessages = [];
$scope.historymessages = [];
$scope.initAppContent = function(appContentJson) {
$scope.appContent = JSON.parse(appContentJson);
};
$scope.addMessage = function() {
scroll(document.body);
};
$scope.showMessage = function(jsonStr) {
console.log(jsonStr);
jsonStr = jsonStr.replace(/ /g, " ");
jsonStr = jsonStr.replace(/\r\n/g, "
");
jsonStr = jsonStr.replace(/\r/g, "\\r");
jsonStr = jsonStr.replace(/\n/g, "\\n");
jsonStr = jsonStr.replace(/\t/g, "\\t");
jsonStr = jsonStr.replace(/\f/g, "\\f");
var msg = JSON.parse(jsonStr);
$scope.sendmessages.push(msg);
$scope.scrollHide();
};
$scope.showHistoryMessage = function(jsonStr) {
console.log(jsonStr);
jsonStr = jsonStr.replace(/ /g, " ");
jsonStr = jsonStr.replace(/\r\n/g, "
");
jsonStr = jsonStr.replace(/\r/g, "\\r");
jsonStr = jsonStr.replace(/\n/g, "\\n");
jsonStr = jsonStr.replace(/\t/g, "\\t");
jsonStr = jsonStr.replace(/\f/g, "\\f");
var msg = JSON.parse(jsonStr);
$scope.historymessages.push(msg);
};
$scope.getTime = function(item) {
return $filter("date")(item.ts, "yyyy-MM-dd HH:mm:ss");
};
$scope.getMore = function() {
$scope.height = document.body.scrollHeight;
lxtalkClient.Invoke('{15180DEF-D508-45F7-BAEB-6486CD8752C8}', 'LoadHistoryMessages', '', $scope);
$scope.count = false;
};
$scope.loadImages = function(data){
console.log('11111111222');
lxtalkClient.Invoke('{15180DEF-D508-45F7-BAEB-6486CD8752C8}', 'LoadImages', JSON.stringify(data), $scope);
}
$scope.scrollHide = function() {
angular.element("#body").addClass("scrollGlue");
};
$scope.scrollShow = function() {
if (angular.element("#body").hasClass("scrollGlue")) {
angular.element("#body").removeClass("scrollGlue");
gotoBottom();
} else angular.element("#body").removeClass("scrollGlue");
};
var gotoBottom = function() {
$location.hash("bottom");
$anchorScroll();
};
}])
.animation(".animate", function() {
return {
enter: function(element, done) {
var height = element.height();
element.css({ position: 'relative', bottom: 0, opacity: 0 });
element.animate({ bottom: 0, opacity: 1 }, 500, done);
}
};
});