8f48d0f01494a9cfeccc0ffd805ed20c.php 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309
  1. <?php if (!defined('THINK_PATH')) exit(); /*a:5:{s:82:"D:\phpstudy_pro\WWW\minongyun\public/../application/admin\view\auth\rule\edit.html";i:1709714141;s:72:"D:\phpstudy_pro\WWW\minongyun\application\admin\view\layout\default.html";i:1709714141;s:69:"D:\phpstudy_pro\WWW\minongyun\application\admin\view\common\meta.html";i:1709714141;s:71:"D:\phpstudy_pro\WWW\minongyun\application\admin\view\auth\rule\tpl.html";i:1709714141;s:71:"D:\phpstudy_pro\WWW\minongyun\application\admin\view\common\script.html";i:1711415624;}*/ ?>
  2. <!DOCTYPE html>
  3. <html>
  4. <head>
  5. <meta charset="utf-8">
  6. <title><?php echo (isset($title) && ($title !== '')?$title:''); ?></title>
  7. <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
  8. <meta name="renderer" content="webkit">
  9. <meta name="referrer" content="never">
  10. <meta name="robots" content="noindex, nofollow">
  11. <link rel="shortcut icon" href="/assets/img/favicon.ico" />
  12. <!-- Loading Bootstrap -->
  13. <link href="/assets/css/backend<?php echo \think\Config::get('app_debug')?'':'.min'; ?>.css?v=<?php echo \think\Config::get('site.version'); ?>" rel="stylesheet">
  14. <?php if(\think\Config::get('fastadmin.adminskin')): ?>
  15. <link href="/assets/css/skins/<?php echo \think\Config::get('fastadmin.adminskin'); ?>.css?v=<?php echo \think\Config::get('site.version'); ?>" rel="stylesheet">
  16. <?php endif; ?>
  17. <!-- HTML5 shim, for IE6-8 support of HTML5 elements. All other JS at the end of file. -->
  18. <!--[if lt IE 9]>
  19. <script src="/assets/js/html5shiv.js"></script>
  20. <script src="/assets/js/respond.min.js"></script>
  21. <![endif]-->
  22. <script type="text/javascript">
  23. var require = {
  24. config: <?php echo json_encode($config); ?>
  25. };
  26. </script>
  27. </head>
  28. <body class="inside-header inside-aside <?php echo defined('IS_DIALOG') && IS_DIALOG ? 'is-dialog' : ''; ?>">
  29. <div id="main" role="main">
  30. <div class="tab-content tab-addtabs">
  31. <div id="content">
  32. <div class="row">
  33. <div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
  34. <section class="content-header hide">
  35. <h1>
  36. <?php echo __('Dashboard'); ?>
  37. <small><?php echo __('Control panel'); ?></small>
  38. </h1>
  39. </section>
  40. <?php if(!IS_DIALOG && !\think\Config::get('fastadmin.multiplenav') && \think\Config::get('fastadmin.breadcrumb')): ?>
  41. <!-- RIBBON -->
  42. <div id="ribbon">
  43. <ol class="breadcrumb pull-left">
  44. <?php if($auth->check('dashboard')): ?>
  45. <li><a href="dashboard" class="addtabsit"><i class="fa fa-dashboard"></i> <?php echo __('Dashboard'); ?></a></li>
  46. <?php endif; ?>
  47. </ol>
  48. <ol class="breadcrumb pull-right">
  49. <?php foreach($breadcrumb as $vo): ?>
  50. <li><a href="javascript:;" data-url="<?php echo $vo['url']; ?>"><?php echo $vo['title']; ?></a></li>
  51. <?php endforeach; ?>
  52. </ol>
  53. </div>
  54. <!-- END RIBBON -->
  55. <?php endif; ?>
  56. <div class="content">
  57. <form id="edit-form" class="form-horizontal form-ajax" role="form" method="POST" action="">
  58. <?php echo token(); ?>
  59. <div class="form-group">
  60. <label class="control-label col-xs-12 col-sm-2"><?php echo __('Ismenu'); ?>:</label>
  61. <div class="col-xs-12 col-sm-8">
  62. <?php echo build_radios('row[ismenu]', ['1'=>__('Yes'), '0'=>__('No')], $row['ismenu']); ?>
  63. </div>
  64. </div>
  65. <div class="form-group">
  66. <label class="control-label col-xs-12 col-sm-2"><?php echo __('Parent'); ?>:</label>
  67. <div class="col-xs-12 col-sm-8">
  68. <?php echo build_select('row[pid]', $ruledata, $row['pid'], ['class'=>'form-control', 'required'=>'']); ?>
  69. </div>
  70. </div>
  71. <div class="form-group">
  72. <label for="name" class="control-label col-xs-12 col-sm-2"><?php echo __('Name'); ?>:</label>
  73. <div class="col-xs-12 col-sm-8">
  74. <input type="text" class="form-control" id="name" name="row[name]" data-placeholder-node="<?php echo __('Node tips'); ?>" data-placeholder-menu="<?php echo __('Menu tips'); ?>" value="<?php echo htmlentities($row['name']); ?>" data-rule="required" />
  75. </div>
  76. </div>
  77. <div class="form-group">
  78. <label class="control-label col-xs-12 col-sm-2"><?php echo __('Title'); ?>:</label>
  79. <div class="col-xs-12 col-sm-8">
  80. <input type="text" class="form-control" id="title" name="row[title]" value="<?php echo htmlentities($row['title']); ?>" data-rule="required" />
  81. </div>
  82. </div>
  83. <div class="form-group" data-type="menu">
  84. <label class="control-label col-xs-12 col-sm-2"><?php echo __('Url'); ?>:</label>
  85. <div class="col-xs-12 col-sm-8">
  86. <input type="text" class="form-control" id="url" name="row[url]" value="<?php echo htmlentities($row['url']); ?>" data-rule="" placeholder="<?php echo __('Url tips'); ?>" />
  87. </div>
  88. </div>
  89. <div class="form-group">
  90. <label for="icon" class="control-label col-xs-12 col-sm-2"><?php echo __('Icon'); ?>:</label>
  91. <div class="col-xs-12 col-sm-8">
  92. <div class="input-group input-groupp-md">
  93. <span class="input-group-addon"><i class="<?php echo $row['icon']; ?>" id="icon-style"></i></span>
  94. <input type="text" class="form-control" id="icon" name="row[icon]" value="<?php echo $row['icon']; ?>" />
  95. <a href="javascript:;" class="btn-search-icon input-group-addon"><?php echo __('Search icon'); ?></a>
  96. </div>
  97. </div>
  98. </div>
  99. <div class="form-group">
  100. <label for="remark" class="control-label col-xs-12 col-sm-2"><?php echo __('Condition'); ?>:</label>
  101. <div class="col-xs-12 col-sm-8">
  102. <textarea class="form-control" id="condition" name="row[condition]"><?php echo htmlentities($row['condition']); ?></textarea>
  103. </div>
  104. </div>
  105. <div class="form-group" data-type="menu">
  106. <label for="remark" class="control-label col-xs-12 col-sm-2"><?php echo __('Menutype'); ?>:</label>
  107. <div class="col-xs-12 col-sm-8">
  108. <?php echo build_radios('row[menutype]', $menutypeList, $row['menutype']); ?>
  109. </div>
  110. </div>
  111. <div class="form-group" data-type="menu">
  112. <label for="remark" class="control-label col-xs-12 col-sm-2"><?php echo __('Extend'); ?>:</label>
  113. <div class="col-xs-12 col-sm-8">
  114. <textarea class="form-control" id="extend" name="row[extend]"><?php echo htmlentities($row['extend']); ?></textarea>
  115. </div>
  116. </div>
  117. <div class="form-group">
  118. <label for="remark" class="control-label col-xs-12 col-sm-2"><?php echo __('Remark'); ?>:</label>
  119. <div class="col-xs-12 col-sm-8">
  120. <textarea class="form-control" id="remark" name="row[remark]"><?php echo htmlentities(__($row['remark'])); ?></textarea>
  121. </div>
  122. </div>
  123. <div class="form-group">
  124. <label for="weigh" class="control-label col-xs-12 col-sm-2"><?php echo __('Weigh'); ?>:</label>
  125. <div class="col-xs-12 col-sm-8">
  126. <input type="text" class="form-control" id="weigh" name="row[weigh]" value="<?php echo $row['weigh']; ?>" data-rule="required" />
  127. </div>
  128. </div>
  129. <div class="form-group">
  130. <label class="control-label col-xs-12 col-sm-2"><?php echo __('Status'); ?>:</label>
  131. <div class="col-xs-12 col-sm-8">
  132. <?php echo build_radios('row[status]', ['normal'=>__('Normal'), 'hidden'=>__('Hidden')], $row['status']); ?>
  133. </div>
  134. </div>
  135. <div class="form-group hidden layer-footer">
  136. <div class="col-xs-2"></div>
  137. <div class="col-xs-12 col-sm-8">
  138. <button type="submit" class="btn btn-primary btn-embossed disabled"><?php echo __('OK'); ?></button>
  139. <button type="reset" class="btn btn-default btn-embossed"><?php echo __('Reset'); ?></button>
  140. </div>
  141. </div>
  142. </form>
  143. <style>
  144. #chooseicon {
  145. margin:10px;
  146. }
  147. #chooseicon ul {
  148. margin:5px 0 0 0;
  149. }
  150. #chooseicon ul li{
  151. width:41px;height:42px;
  152. line-height:42px;
  153. border:1px solid #efefef;
  154. padding:1px;
  155. margin:1px;
  156. text-align: center;
  157. font-size:18px;
  158. }
  159. #chooseicon ul li:hover{
  160. border:1px solid #2c3e50;
  161. cursor:pointer;
  162. }
  163. </style>
  164. <script id="chooseicontpl" type="text/html">
  165. <div id="chooseicon">
  166. <div>
  167. <form onsubmit="return false;">
  168. <div class="input-group input-groupp-md">
  169. <div class="input-group-addon"><?php echo __('Search icon'); ?></div>
  170. <input class="js-icon-search form-control" type="text" placeholder="">
  171. </div>
  172. </form>
  173. </div>
  174. <div>
  175. <ul class="list-inline">
  176. <% for(var i=0; i<iconlist.length; i++){ %>
  177. <li data-font="<%=iconlist[i]%>" data-toggle="tooltip" title="<%=iconlist[i]%>">
  178. <i class="fa fa-<%=iconlist[i]%>"></i>
  179. </li>
  180. <% } %>
  181. </ul>
  182. </div>
  183. </div>
  184. </script>
  185. </div>
  186. </div>
  187. </div>
  188. </div>
  189. </div>
  190. </div>
  191. <script src="/assets/js/require<?php echo \think\Config::get('app_debug')?'':'.min'; ?>.js" data-main="/assets/js/require-backend<?php echo \think\Config::get('app_debug')?'':'.min'; ?>.js?v=<?php echo htmlentities($site['version']); ?>"></script>
  192. <input type="hidden" value="<?php echo \think\Session::get('admin.username'); ?>" name="" id="username">
  193. <input type="hidden" value="<?php echo \think\Session::get('admin.company'); ?>" name="" id="company">
  194. <script>
  195. function watermark(element, config) {
  196. // 获取元素的坐标
  197. function getOffset(el) {
  198. if (el.offsetParent) {
  199. return {
  200. x: el.offsetLeft + getOffset(el.offsetParent).x,
  201. y: el.offsetTop + getOffset(el.offsetParent).y,
  202. };
  203. }
  204. return {
  205. x: el.offsetLeft,
  206. y: el.offsetTop,
  207. };
  208. }
  209. if (!element) return;
  210. // 默认配置
  211. const _config = {
  212. text1: '张三', //文本1
  213. text2: '13868686868', // 文本2
  214. start_x: 0, // x轴起始位置
  215. start_y: 0, // y轴起始位置
  216. space_x: 100, // x轴间距
  217. space_y: 50, // y轴间距
  218. width: 210, // 宽度
  219. height: 80, // 长度
  220. fontSize: 14, // 字体
  221. color: '#aaa', // 字色
  222. alpha: 0.4, // 透明度
  223. rotate: 15, // 倾斜度
  224. };
  225. // 替换默认配置
  226. if (arguments.length === 2 && typeof arguments[1] === "object") {
  227. const src = arguments[1] || {};
  228. for (let key in src) {
  229. if (src[key] && _config[key] && src[key] === _config[key]) {
  230. continue;
  231. } else if (src[key]) {
  232. _config[key] = src[key];
  233. }
  234. }
  235. }
  236. // 节点的总宽度
  237. const total_width = element.scrollWidth;
  238. // 节点的总高度
  239. const total_height = element.scrollHeight;
  240. // 创建文本碎片,用于包含所有的插入节点
  241. const mark = document.createDocumentFragment();
  242. // 水印节点的起始坐标
  243. const position = getOffset(element);
  244. let x = position.x + _config.start_x, y = position.y + _config.start_y;
  245. // 先循环y轴插入水印
  246. do {
  247. // 再循环x轴插入水印
  248. do {
  249. // 创建单个水印节点
  250. const item = document.createElement('div');
  251. item.className = 'watermark-item';
  252. // 设置节点的样式
  253. item.style.position = "absolute";
  254. item.style.zIndex = 99999;
  255. item.style.left = `${x}px`;
  256. item.style.top = `${y}px`;
  257. item.style.width = `${_config.width}px`;
  258. item.style.height = `${_config.height}px`;
  259. item.style.fontSize = `${_config.fontSize}px`;
  260. item.style.color = _config.color;
  261. item.style.textAlign = 'center';
  262. item.style.opacity = _config.alpha;
  263. item.style.filter = `alpha(opacity=${_config.alpha * 100})`;
  264. // item.style.filter = `opacity(${_config.alpha * 100}%)`;
  265. item.style.webkitTransform = `rotate(-${_config.rotate}deg)`;
  266. item.style.MozTransform = `rotate(-${_config.rotate}deg)`;
  267. item.style.msTransform = `rotate(-${_config.rotate}deg)`;
  268. item.style.OTransform = `rotate(-${_config.rotate}deg)`;
  269. item.style.transform = `rotate(-${_config.rotate}deg)`;
  270. item.style.pointerEvents = 'none'; //让水印不遮挡页面的点击事件
  271. // 创建text1水印节点
  272. const text1 = document.createElement('div');
  273. text1.appendChild(document.createTextNode(_config.text1));
  274. item.append(text1);
  275. // 创建text2水印节点
  276. const text2 = document.createElement('div');
  277. text2.appendChild(document.createTextNode(_config.text2));
  278. item.append(text2);
  279. // 添加水印节点到文本碎片
  280. mark.append(item);
  281. // x坐标递增
  282. x = x + _config.width + _config.space_x;
  283. // 超出文本右侧坐标停止插入
  284. } while (total_width + position.x > x + _config.width);
  285. // 重置x初始坐标
  286. x = position.x + _config.start_x;
  287. // y坐标递增
  288. y = y + _config.height + _config.space_y;
  289. // 超出文本底部坐标停止插入
  290. } while (total_height + position.y > y + _config.height);
  291. // 插入文档碎片
  292. element.append(mark);
  293. }
  294. var username = document.getElementById('username');
  295. var company = document.getElementById('company');
  296. //找到存放水印的盒子
  297. const element = document.getElementsByTagName('body')[0];
  298. watermark(element,{text1:username.value,text2:company.value});
  299. </script>
  300. </body>
  301. </html>