Browse Source

聊天窗口

lqq 8 years ago
parent
commit
2cb5710db7

+ 71 - 66
dist/talkview/app-4af456806b.js

@@ -5,70 +5,6 @@ var appMessage = angular.module('appMessage', ['luegg.directives']);
 
 
 
-(function () {
-    'use strict';
-
-    angular
-        .module('appMessage')
-        .directive('ngMsg', Directive);
-
-    Directive.inject = [];
-
-    function Directive() {
-        var directive = {
-            link: link,
-            restrict: 'A',
-            scope: {
-                msg: '=ngMsg'
-            }
-        };
-        return directive;
-
-        function link(scope, element, attrs) {
-            var replaceSystemFace = function(content){
-                console.log(JSON.stringify(scope.$parent.appContent.sys));
-                return content;
-            } 
-            var html = '';
-            // 消息类型([1,文本消息],[2,图片消息],[3,文件消息],[4,语音消息], [5,位置消息])
-            if (scope.msg.contentType == 1) {
-                html = '<span class="text-message">' + replaceSystemFace(scope.msg.content) + '</span>';
-            } else if (scope.msg.contentType == 2) {
-                html = '<span class="text-message">' +
-                    '<a href="#" class="thumbnail" style="width:300px;">' +
-                    '<img src="' + scope.msg.content + '" alt="通用的占位符缩略图">' +
-                    '</a>' +
-                    '</span>';
-            } else if (scope.msg.contentType == 3) {
-                element.css({
-                    width: '300px'
-                });
-                element.addClass('file-message');
-                var reg = /\?[\W\w]*/;
-                var fileName = decodeURIComponent(reg.exec(scope.msg.content).toString().substr(1));
-
-                html = '<img src="../img/file/unkown.png" onError=" this.src = \'../img/file/unkown.png\' "/>' +
-                    '<span style="float:left; margin:5px 0px 0px 0px">文件名:' + fileName + '<br/>大小:' + scope.msg.length + '</span>' +
-                    '<div class="p-t-sm text-right">' +
-                    '<a class="text-primary" role="button">打开</a>' +
-                    '<a class="text-primary" role="button">打开文件夹</a>' +
-                    '</div>';
-            } else if (scope.msg.contentType == 4) {
-                html = '<span class="text-message">' +
-                    '<iframe class="map" border=0 src="' + scope.msg.content + '" frameBorder=no></iframe>' +
-                    '</span>';
-            } else if (scope.msg.contentType == 5) {
-                html = '<span class="text-message">' +
-                    '<audio src="' + scope.msg.content + '" controls="controls">' +
-                    '</audio>' +
-                    '</span>';
-            }
-            console.log(html);
-            var newElement = angular.element(html);
-            element.append(newElement);
-        }
-    }
-})();
 'use strict';
 
 angular.module('appMessage').controller('MessageController', ['$scope', function ($scope) {
@@ -144,7 +80,76 @@ angular.module('appMessage').controller('MessageController', ['$scope', function
   }
 
   $scope.initAppContent = function(appContentJson){
-    console.log(appContentJson);
+    // console.log(appContentJson);
     $scope.appContent = JSON.parse(appContentJson);
   }
-}]);
+}]);
+(function () {
+    'use strict';
+
+    angular
+        .module('appMessage')
+        .directive('ngMsg', Directive);
+
+    Directive.inject = [];
+
+    function Directive() {
+        var directive = {
+            link: link,
+            restrict: 'A',
+            scope: {
+                msg: '=ngMsg',
+                appContent: '=ngAppContent'
+            }
+        };
+        return directive;
+
+        function link(scope, element, attrs) {
+            var replaceSystemFace = function(content){
+                if (scope.appContent === undefined || scope.appContent.faceConfig ===undefined || scope.appContent.faceConfig.sys === undefined)
+                    return content;
+                scope.appContent.faceConfig.sys.forEach(function(element) {
+                    content = content.replace(element.shortcut,'<img src="' + scope.appContent.directory.base + element.image + '">');
+                }, this);
+                    return content;
+            } 
+            var html = '';
+            // 消息类型([1,文本消息],[2,图片消息],[3,文件消息],[4,语音消息], [5,位置消息])
+            if (scope.msg.contentType == 1) {
+                html = '<span class="text-message">' + replaceSystemFace(scope.msg.content) + '</span>';
+            } else if (scope.msg.contentType == 2) {
+                html = '<span class="text-message">' +
+                    '<a href="#" class="thumbnail" style="width:300px;">' +
+                    '<img src="' + scope.msg.content + '" alt="通用的占位符缩略图">' +
+                    '</a>' +
+                    '</span>';
+            } else if (scope.msg.contentType == 3) {
+                element.css({
+                    width: '300px'
+                });
+                element.addClass('file-message');
+                var reg = /\?[\W\w]*/;
+                var fileName = decodeURIComponent(reg.exec(scope.msg.content).toString().substr(1));
+
+                html = '<img src="../img/file/unkown.png" onError=" this.src = \'../img/file/unkown.png\' "/>' +
+                    '<span style="float:left; margin:5px 0px 0px 0px">文件名:' + fileName + '<br/>大小:' + scope.msg.length + '</span>' +
+                    '<div class="p-t-sm text-right">' +
+                    '<a class="text-primary" role="button">打开</a>' +
+                    '<a class="text-primary" role="button">打开文件夹</a>' +
+                    '</div>';
+            } else if (scope.msg.contentType == 4) {
+                html = '<span class="text-message">' +
+                    '<iframe class="map" border=0 src="' + scope.msg.content + '" frameBorder=no></iframe>' +
+                    '</span>';
+            } else if (scope.msg.contentType == 5) {
+                html = '<span class="text-message">' +
+                    '<audio src="' + scope.msg.content + '" controls="controls">' +
+                    '</audio>' +
+                    '</span>';
+            }
+            console.log(html);
+            var newElement = angular.element(html);
+            element.append(newElement);
+        }
+    }
+})();

+ 5 - 5
dist/talkview/index.html

@@ -12,7 +12,7 @@
 	<!--<script src="js/jquery.min.js"></script>-->
 	<script src="../bower_components/angular/angular.js"></script>
 	<script src="../bower_components/angular-scroll-glue/src/scrollglue.js"></script>
-	<script src="app-4af456806b.js"></script>
+	<script src="app-e35bfaf6ab.js"></script>
 </head>
 
 <body ng-app="appMessage" ng-controller="MessageController" scroll-glue-bottom>
@@ -23,7 +23,7 @@
 				<div class="media-body">
 					<strong>{{item.senderDisplayName === undefined || item.senderDisplayName == ''? item.sender : item.senderDisplayName}}</strong>
 					<small class="text-muted">{{item.ts}}</small>
-					<div class="well m-l-xs m-t-xs fit-content" ng-msg="item"></div>
+					<div class="well m-l-xs m-t-xs fit-content" ng-msg="item" ng-app-content="appContent"></div>
 				</div>
 			</div>
 			<!--<a role="button" ng-click="addClick({name:'web', time:'2016-06-24 15:55', message:'hello world'})">test</a>-->
@@ -58,20 +58,20 @@
 			</div>-->
 
 			<!-- 带截图 -->
-			<!--<div class="feed-element">
+			<div class="feed-element">
 				<div class="media-body">
 					<strong>陆趣趣</strong>
 					<small class="text-muted">Today 2:10 pm - 12.06.2014</small>
 					<div class="well m-l-xs m-t-xs fit-content">
 						<span class="text-message">萨德发按时大家阿萨德
 										<a href="#" class="thumbnail"  style="width:300px;">
-											<img src="D:\NodejsProjects\LxtalkUIView\dist\img\Lighthouse.jpg" alt="通用的占位符缩略图">
+											<img src="D:/NodejsProjects/LxtalkUIView/dist/img/DefaultHeadImage_48.png" alt="通用的占位符缩略图">
 										</a>
 										kjsdklfajs 按时大奖是离开的房间阿萨德
 										</span>
 					</div>
 				</div>
-			</div>-->
+			</div>
 
 			<!-- 只有截图 -->
 			<!--<div class="feed-element">

+ 4 - 4
talkview/src/html/index.html

@@ -23,7 +23,7 @@
 				<div class="media-body">
 					<strong>{{item.senderDisplayName === undefined || item.senderDisplayName == ''? item.sender : item.senderDisplayName}}</strong>
 					<small class="text-muted">{{item.ts}}</small>
-					<div class="well m-l-xs m-t-xs fit-content" ng-msg="item"></div>
+					<div class="well m-l-xs m-t-xs fit-content" ng-msg="item" ng-app-content="appContent"></div>
 				</div>
 			</div>
 			<!--<a role="button" ng-click="addClick({name:'web', time:'2016-06-24 15:55', message:'hello world'})">test</a>-->
@@ -58,20 +58,20 @@
 			</div>-->
 
 			<!-- 带截图 -->
-			<!--<div class="feed-element">
+			<div class="feed-element">
 				<div class="media-body">
 					<strong>陆趣趣</strong>
 					<small class="text-muted">Today 2:10 pm - 12.06.2014</small>
 					<div class="well m-l-xs m-t-xs fit-content">
 						<span class="text-message">萨德发按时大家阿萨德
 										<a href="#" class="thumbnail"  style="width:300px;">
-											<img src="D:\NodejsProjects\LxtalkUIView\dist\img\Lighthouse.jpg" alt="通用的占位符缩略图">
+											<img src="D:/NodejsProjects/LxtalkUIView/dist/img/DefaultHeadImage_48.png" alt="通用的占位符缩略图">
 										</a>
 										kjsdklfajs 按时大奖是离开的房间阿萨德
 										</span>
 					</div>
 				</div>
-			</div>-->
+			</div>
 
 			<!-- 只有截图 -->
 			<!--<div class="feed-element">

+ 1 - 1
talkview/src/js/controller/messageController.js

@@ -73,7 +73,7 @@ angular.module('appMessage').controller('MessageController', ['$scope', function
   }
 
   $scope.initAppContent = function(appContentJson){
-    console.log(appContentJson);
+    // console.log(appContentJson);
     $scope.appContent = JSON.parse(appContentJson);
   }
 }]);

+ 6 - 2
talkview/src/js/directive/message.js

@@ -20,8 +20,12 @@
 
         function link(scope, element, attrs) {
             var replaceSystemFace = function(content){
-                console.log(JSON.stringify(scope.appContent.sys));
-                return content;
+                if (scope.appContent === undefined || scope.appContent.faceConfig ===undefined || scope.appContent.faceConfig.sys === undefined)
+                    return content;
+                scope.appContent.faceConfig.sys.forEach(function(element) {
+                    content = content.replace(element.shortcut,'<img src="' + scope.appContent.directory.base + element.image + '">');
+                }, this);
+                    return content;
             } 
             var html = '';
             // 消息类型([1,文本消息],[2,图片消息],[3,文件消息],[4,语音消息], [5,位置消息])

+ 1 - 1
talkview/temp/manifest/app-js-manifest.json

@@ -1,3 +1,3 @@
 {
-  "app.js": "app-4af456806b.js"
+  "app.js": "app-e35bfaf6ab.js"
 }