message.html 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="utf-8">
  5. <title>{block name="title"}{$title|default=''}{if !empty($title)} · {/if}{:sysconf('site_name')}{/block}</title>
  6. <meta name="renderer" content="webkit">
  7. <meta name="format-detection" content="telephone=no">
  8. <meta name="apple-mobile-web-app-capable" content="yes">
  9. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  10. <meta name="apple-mobile-web-app-status-bar-style" content="black">
  11. <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1">
  12. <link href="__ROOT__/static/plugs/layui/css/layui.css?v={:date('ymd')}" rel="stylesheet">
  13. <style>.layui-card {
  14. margin: 0
  15. }
  16. .layui-card .layui-card-body a {
  17. display: block;
  18. font-size: 12px;
  19. color: #666
  20. }</style>
  21. <script src="__ROOT__/static/plugs/angular/angular.min.js"></script>
  22. </head>
  23. <body id="MessageContainer">
  24. <div class="layui-card" ng-repeat="x in list">
  25. <div class="layui-card-header layui-bg-gray">
  26. <a target="_top" href="{:url('@admin')}?messagecode={{x.code}}#{{x.url}}" ng-bind="x.title"></a>
  27. <a href="javascript:void(0)" ng-click="setReadState(x.code)" style="position:absolute;right:0;top:0;width:50px;text-align:center">忽略</a>
  28. </div>
  29. <div class="layui-card-body">
  30. <a target="_top" href="{:url('@admin')}?messagecode={{x.code}}#{{x.url}}" ng-bind="x.desc"></a>
  31. <a target="_top" href="{:url('@admin')}?messagecode={{x.code}}#{{x.url}}" ng-bind="x.create_at"></a>
  32. </div>
  33. </div>
  34. <script>
  35. (function () {
  36. var index = parent.layer.getFrameIndex(window.name);
  37. var app = angular.module("MessageContainer", []).run(callback);
  38. angular.bootstrap(document.getElementById(app.name), [app.name]);
  39. function callback($rootScope, $http, $timeout, $interval) {
  40. $rootScope.list = [];
  41. $rootScope.setReadState = function (code) {
  42. $http.post('{:url("@admin/api.message/set")}', {code: code}).then(function () {
  43. refresh(false);
  44. });
  45. };
  46. refresh.call(this, true), $interval(function () {
  47. parent.layer.iframeAuto(index);
  48. // top.$body.trigger('resize');
  49. }, 10);
  50. function refresh(isCallback) {
  51. $http.get('{:url("@admin/api.message/gets")}').then(function (ret) {
  52. $rootScope.list = (ret.data || {data: []}).data;
  53. if ($rootScope.list < 1) parent.layer.style(index, {height: '0'});
  54. if (isCallback !== false) $timeout(refresh, 2000);
  55. });
  56. }
  57. }
  58. })();
  59. </script>
  60. </body>
  61. </html>