403Webshell
Server IP : 156.238.232.47  /  Your IP : 216.73.216.150
Web Server : nginx/1.25.3
System : Linux C202504152095410 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User : www ( 1000)
PHP Version : 8.3.25
Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /www/data/wwwroot/2026_08_09_01/runtime/complile/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /www/data/wwwroot/2026_08_09_01/runtime/complile/d4b43157ece08502423c974da7ca27f1.php
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <meta name="renderer"  content="webkit">
  <title><?php echo CMSNAME;?>管理中心-V<?php echo APP_VERSION;?>-<?php echo RELEASE_TIME;?></title>
  <link rel="shortcut icon" href="<?php echo SITE_DIR;?>/favicon.ico" type="image/x-icon">
  <link rel="stylesheet" href="<?php echo APP_THEME_DIR;?>/layui/css/layui.css?v=v2.5.4">
  <link rel="stylesheet" href="<?php echo APP_THEME_DIR;?>/font-awesome/css/font-awesome.min.css?v=v4.7.0" type="text/css">
  <link rel="stylesheet" href="<?php echo APP_THEME_DIR;?>/css/comm.css?v=v3.0.6">
  <link href="<?php echo APP_THEME_DIR;?>/css/jquery.treetable.css" rel="stylesheet" type="text/css" />
  <script type="text/javascript" src="<?php echo APP_THEME_DIR;?>/js/jquery-1.12.4.min.js"></script>
  <script type="text/javascript" src="<?php echo APP_THEME_DIR;?>/js/jquery.treetable.js"></script>
</head>

<body class="layui-layout-body">

<!--定义部分地址方便JS调用-->
<div style="display: none">
	<span id="controller" data-controller="<?php echo C;?>"></span>
	<span id="url" data-url="<?php echo URL;?>"></span>
	<span id="preurl" data-preurl="<?php echo url('/admin',false);?>"></span>
	<span id="sitedir" data-sitedir="<?php echo SITE_DIR;?>"></span>
	<span id="mcode" data-mcode="<?php echo htmlspecialchars(get('mcode'), ENT_QUOTES, 'UTF-8');?>"></span>
</div>

<div class="layui-layout layui-layout-admin">
  <div class="layui-header">
    <div class="layui-logo">
    <a href="<?php echo \core\basic\Url::get('/admin/Index/home');?>">
    <img src="<?php echo APP_THEME_DIR;?>/images/logo.png" height="30">
	    <?php echo CMSNAME;?> 
	   	<?php if (LICENSE==3) {?>
	   		<span class="layui-badge">SVIP</span>
	   	<?php } else { ?>
	   		<span class="layui-badge layui-bg-gray">V<?php echo APP_VERSION;?></span>	
	   	<?php } ?>
    </a>
    </div>
    
    <ul class="menu">
    	<li class="menu-ico" title="显示或隐藏侧边栏"><i class="fa fa-bars" aria-hidden="true"></i></li>
	</ul>
	<?php if (!$this->getVar('one_area')) {?>
	<form method="post" action="<?php echo \core\basic\Url::get('/admin/Index/area');?>" class="area-select">
		<input type="hidden" name="formcheck" value="<?php echo $this->getVar('formcheck');?>" > 
		<div class="layui-col-xs8">
		   <select name="acode">
		       <?php echo $this->getVar('area_html');?>
		   </select>
		</div>
		<div class="layui-col-xs4">
		 	<button type="submit" class="layui-btn layui-btn-sm">切换</button>
		</div>
   	</form>
 	<?php } ?>

    <ul class="layui-nav layui-layout-right">
    
       <li class="layui-nav-item layui-hide-xs">
      	 <a href="<?php echo SITE_DIR;?>/" target="_blank"><i class="fa fa-home" aria-hidden="true"></i> 网站主页</a>
       </li>

       <li class="layui-nav-item layui-hide-xs">
       		<a href="<?php echo \core\basic\Url::get('/admin/index/clearCache');?>"><i class="fa fa-trash-o" aria-hidden="true"></i> 清理缓存</a>
       </li>

       <li class="layui-nav-item layui-hide-xs">
	        <a href="javascript:;">
	          <i class="fa fa-user-circle-o" aria-hidden="true"></i> <?php echo session('realname');?>
	        </a>
	        <dl class="layui-nav-child">
	          <dd><a href="<?php echo \core\basic\Url::get('/admin/Index/ucenter');?>"><i class="fa fa-address-card-o" aria-hidden="true"></i> 密码修改</a></dd>
	          <dd><a href="<?php echo \core\basic\Url::get('/admin/Index/loginOut');?>"><i class="fa fa-sign-out" aria-hidden="true"></i> 退出登录</a></dd>
	          <?php if (session('ucode')==10001) {?>
	          	<dd><a href="<?php echo \core\basic\Url::get('/admin/Upgrade/index');?>"><i class="fa fa-cloud-upload" aria-hidden="true"></i> 在线更新</a></dd>
	          	<dd><a href="<?php echo \core\basic\Url::get('/admin/Index/clearSession');?>" class="ajaxlink"><i class="fa fa-trash-o" aria-hidden="true"></i> 清理会话</a></dd>
	          <?php } ?>
	        </dl>
      </li>
    </ul>
  </div>
  
  <div class="layui-side layui-bg-black">
    <div class="layui-side-scroll">
      <!-- 左侧导航区域(可配合layui已有的垂直导航) -->
      <ul class="layui-nav layui-nav-tree" id="nav" lay-shrink="all">
	   <?php $num = 0;foreach ($this->getVar('menu_tree') as $key => $value) { $num++;?>
        <li class="layui-nav-item nav-item <?php if ($this->getVar('primary_menu_url')==$value->url) {?>layui-nav-itemed<?php } ?>">
          <a class="" href="javascript:;"><i class="fa <?php echo $value->ico; ?>" aria-hidden="true"></i><?php echo $value->name; ?></a>
          <dl class="layui-nav-child">
			<?php if ($value->mcode=='M130') {?>
				 <?php $num3 = 0;foreach ($this->getVar('menu_models') as $key3 => $value3) { $num3++;?>
				 	<?php if ($value3->type==1) {?>
						<dd><a href="<?php echo \core\basic\Url::get('/admin/Single/index/mcode/'.$value3->mcode.'');?>"><i class="fa fa-file-text-o" aria-hidden="true"></i><?php echo $value3->name; ?>内容</a></dd>
					<?php } ?>
					<?php if ($value3->type==2) {?>
						<dd><a href="<?php echo \core\basic\Url::get('/admin/Content/index/mcode/'.$value3->mcode.'');?>"><i class="fa fa-file-text-o" aria-hidden="true"></i><?php echo $value3->name; ?>内容</a></dd>
					<?php } ?>
				 <?php } ?>
			<?php } else { ?>
				<?php $num2 = 0;foreach ($value->son as $key2 => $value2) { $num2++;?>
					<?php if (!isset($value2->status)|| $value2->status==1) {?>
	            		<dd><a href="<?php echo \core\basic\Url::get(''.$value2->url.'');?>"><i class="fa <?php echo $value2->ico; ?>" aria-hidden="true"></i><?php echo $value2->name; ?></a></dd>
	            	<?php } ?>
				<?php } ?>
				
				<?php if ($value->mcode=='M101' && session('ucode')==10001) {?>
					<dd><a href="<?php echo \core\basic\Url::get('/admin/Upgrade/index');?>"><i class="fa fa-cloud-upload" aria-hidden="true"></i>在线更新</a></dd>
				<?php } ?>
		    <?php } ?>
          </dl>
        </li>
		<?php } ?>
		
		<li style="height:1px;background:#666" class="layui-hide-sm"></li>
		
		<li class="layui-nav-item layui-hide-sm">
		 <a href="<?php echo SITE_DIR;?>/" target="_blank"><i class="fa fa-home" aria-hidden="true"></i> 网站主页</a>
		</li>
		
		<li class="layui-nav-item layui-hide-sm">
          <a href="<?php echo \core\basic\Url::get('/admin/Index/ucenter');?>"><i class="fa fa-address-card-o" aria-hidden="true"></i> 资料修改</a>
        </li>
        
        <li class="layui-nav-item layui-hide-sm">
         <a href="<?php echo \core\basic\Url::get('/admin/DeleCache/index');?>"><i class="fa fa-trash-o" aria-hidden="true"></i> 清理缓存</a>
        </li>
        
        <li class="layui-nav-item layui-hide-sm">
         <a href="<?php echo \core\basic\Url::get('/admin/Index/loginOut');?>"><i class="fa fa-sign-out" aria-hidden="true"></i> 退出登录</a>
        </li>

      </ul>
    </div>
  </div>

<div class="layui-body">
	<?php if ($this->getVar('list')) {?>
	<div class="layui-tab layui-tab-brief" lay-filter="tab">
	  <ul class="layui-tab-title">
	    <li class="layui-this" lay-id="t1"><?php echo $this->getVar('model_name');?>内容</li>
	  </ul>
	  <div class="layui-tab-content">
	  	   <div class="layui-tab-item layui-show">
	  	   		<form action="<?php echo \core\basic\Url::get('/admin/Single/index/mcode/'.get('mcode').'');?>" method="get" class="layui-form">
		  	   		<div class="layui-form-item nospace">
		  	   			<div class="layui-input-inline">
		  	   				<?php echo $this->getVar('pathinfo');?>
					       <select name="field" class="form-control input-sm" style="width:auto;">
					       		<option value="b.name" <?php if (get('field')=='b.name') {?>selected="selected" <?php } ?>>栏目名称</option>
                                <option value="a.title" <?php if (get('field')=='a.title') {?>selected="selected" <?php } ?> >文章标题</option>
                                <option value="a.content" <?php if (get('field')=='a.content') {?>selected="selected" <?php } ?>>文章内容</option>
                        	</select>
					    </div>
	                     <div class="layui-input-inline">
	                     	<input type="text" name="keyword"  value="<?php echo htmlspecialchars(get('keyword'), ENT_QUOTES, 'UTF-8');?>"  placeholder="请输入搜索关键字" class="layui-input">
	                     </div>
	                     <div class="layui-input-inline">
	                     	<button class="layui-btn" lay-submit>搜索</button>
	                     	<a class="layui-btn layui-btn-primary"  href="<?php echo \core\basic\Url::get('/admin/Single/index/mcode/'.get('mcode').'');?>">清除搜索</a>
	                     </div>
	                </div>
                </form>

	            <table class="layui-table">
	            	<thead>
	                    <tr>
	                    	<th>ID</th>
	                        <th>栏目</th>
	                        <th>标题</th>
	                        <th>时间</th>
	                        <th>状态</th>
	                        <th>访问量</th>
	                        <th>操作</th>
	                    </tr>
	                </thead>
	                <tbody>
	                    <?php $num = 0;foreach ($this->getVar('contents') as $key => $value) { $num++;?>
	                    <tr>
	                    	<td><?php echo $value->id; ?></td>
	                        <td title="<?php echo $value->scode; ?>"><?php echo $value->sortname; ?></td>
	                         <td title="<?php echo $value->title; ?>">
		                        <?php echo substr_both($value->title,0,15);?>
		                        <?php if ($value->ico) {?>
		                        	<span class="layui-badge layui-bg-orange">缩</span>
		                        <?php } ?>
		                        <?php if ($value->pics) {?>
		                        	<span class="layui-badge">图</span>
		                        <?php } ?>
		                        <?php if ($value->outlink) {?>
	                            	<span class="layui-badge layui-bg-black">链</span>
	                            <?php } ?>
	                        </td>
	                        <td><?php echo $value->date; ?></td>
	                        <td>
	                        <?php if ($value->status) {?>
		                        <a href="<?php echo \core\basic\Url::get('/admin/'.C.'/mod/id/'.$value->id.'/field/status/value/0');?>" class="switch"><i class='fa fa-toggle-on' title="点击关闭"></i></a>
		                        <?php } else { ?>
		                        <a href="<?php echo \core\basic\Url::get('/admin/'.C.'/mod/id/'.$value->id.'/field/status/value/1');?>" class="switch"><i class='fa fa-toggle-off' title="点击开启"></i></a>
		                    <?php } ?>
		                    </td>
		                    <td><?php echo $value->visits; ?></td>
	                        <td>
	                        	<?php if (!$value->outlink) {?>
	                        		<?php  
			                        		$Parser=new app\home\controller\ParserController();
			                        		$link=$Parser->parserLink(1,$value->urlname,'about',$value->scode,$value->filename,'','');
			                       ?>
		                        	<a href="<?php  echo $link?>" class="layui-btn layui-btn-xs layui-btn-primary"  target="_blank">查看</a>
	                        	<?php } ?>
	                        	
	                            <?php if (check_level('mod')) {?>
	                            	<a href="<?php echo \core\basic\Url::get('/admin/Single/mod/mcode/'.$value->mcode.'/id/'.$value->id.'');?><?php echo $this->getVar('btnqs');?>" class="layui-btn layui-btn-xs" >修改</a>
	                            	<?php if ($this->getVar('baidu_zz_token') && !$value->outlink) {?>
	                            		<a href="<?php echo \core\basic\Url::get('/admin/'.C.'/mod/baiduzz/'.$value->id.'');?>" class="layui-btn layui-btn-xs layui-btn-primary" >百度普通推送</a>
	                            	<?php } ?>
	                            	<?php if ($this->getVar('baidu_ks_token') && !$value->outlink) {?>
	                            		<a href="<?php echo \core\basic\Url::get('/admin/'.C.'/mod/baiduks/'.$value->id.'');?>" class="layui-btn layui-btn-xs layui-btn-primary" >百度快速推送</a>
	                            	<?php } ?>
	                            <?php } ?>
	                        </td>
	                    </tr>
	                    <?php } ?>
	                </tbody>
	            </table>
	  	   </div>
	  </div>
	 </div>
	<?php } ?> 
	
	<?php if ($this->getVar('mod')) {?>
	
	<div class="layui-tab layui-tab-brief" lay-filter="tab">
	  <ul class="layui-tab-title">
	    <li class="layui-this">单页修改</li>
	  </ul>
	  <div class="layui-tab-content">
	  	<div class="layui-tab-item layui-show">
	  		<form action="<?php echo \core\basic\Url::get('/admin/Single/mod/id/'.get('id').'');?><?php echo $this->getVar('backurl');?>" method="post" class="layui-form" id="edit">
	  			<input type="hidden" name="formcheck" value="<?php echo $this->getVar('formcheck');?>" > 
	  			<div class="layui-tab">
					  <ul class="layui-tab-title">
					    <li class="layui-this">基本内容</li>
					    <li>高级内容</li>
					  </ul>
					  <div class="layui-tab-content">
					    <div class="layui-tab-item layui-show">

			                <div class="layui-form-item">
			                     <label class="layui-form-label">内容标题   <span class="layui-text-red">*</span></label>
			                     <div class="layui-input-block">
			                     	<input type="text" name="title" required lay-verify="required" value="<?php echo @$this->getVar('content')->title;?>" placeholder="请输入内容标题" class="layui-input">
			                     </div>
			                </div>
			               
			                 <?php $num = 0;foreach ($this->getVar('extfield') as $key => $value) { $num++;?>
			                	<?php if ($value->type==1) {?> <!-- 单行文本 -->
			                	<div class="layui-form-item">
			                		<label class="layui-form-label"><?php echo $value->description; ?></label>
			                		<div class="layui-input-block">
				                    	<input type="text" name="<?php echo $value->name; ?>" value="<?php echo @$this->getVar('content')->{$value->name};?>"  placeholder="请输入<?php echo $value->description; ?>"  class="layui-input">
				                	</div>
				                </div>
			                	<?php } ?>
			                	
			                	<?php if ($value->type==2) {?><!-- 多行文本 -->
			                	<div class="layui-form-item">
			                		<label class="layui-form-label"><?php echo $value->description; ?></label>
			                		<div class="layui-input-block">
				                		<textarea name="<?php echo $value->name; ?>" class="layui-textarea" placeholder="请输入<?php echo $value->description; ?>"><?php  $name=$value->name;echo str_replace('<br>', "\r\n",$this->vars['content']->$name);?></textarea>
				                	</div>
				                </div>
			                	<?php } ?>
			                	
			                    <?php if ($value->type==3) {?><!-- 单选 -->
			                	<div class="layui-form-item">
			                		<label class="layui-form-label"><?php echo $value->description; ?></label>
			                		<div class="layui-input-block">
				                		<div>
	            						     <?php  
				                				$radios=explode(',',$value->value);
				                				$name=$value->name;
				                				foreach ($radios as $value2) {
				                					if($this->vars['content']->$name==$value2){
	                									echo '<input type="radio" name="'.$value->name.'" value="'.$value2.'" title="'.$value2.'" checked>';
	                								}else{
	                									echo '<input type="radio" name="'.$value->name.'" value="'.$value2.'" title="'.$value2.'">';
	                								}
	            								}
	            						     ?>
					                    </div>
				                	</div>
				                </div>
			                	<?php } ?>
			                	
			                    <?php if ($value->type==4) {?><!-- 多选 -->
			                	<div class="layui-form-item">
			                		<label class="layui-form-label"><?php echo $value->description; ?></label>
			                		<div class="layui-input-block">
				                		<div>
	            						     <?php  
				                				$checkboxs=explode(',',$value->value);
				                				$name=$value->name;
				                				echo '<input name="'.$value->name.'" type="hidden">';//占位清空
				                				$values=explode(',',$this->vars['content']->$name);
				                				foreach ($checkboxs as $value2) {
				                					if(in_array($value2,$values)){
	            										echo '<input type="checkbox" name="'.$value->name.'[]" value="'.$value2.'" title="'.$value2.'" checked>';
	            									}else{
	            										echo '<input type="checkbox" name="'.$value->name.'[]" value="'.$value2.'" title="'.$value2.'">';
	            									}
	            								}
	            						     ?>
					                    </div>
				                	</div>
				                </div>
			                	<?php } ?>
			                	
			                	<?php if ($value->type==5) {?><!-- 图片 -->
			                	<div class="layui-form-item">
			                		<label class="layui-form-label"><?php echo $value->description; ?></label>
			                		<div class="layui-input-inline">
				                     	<input type="text" name="<?php echo $value->name; ?>" id="<?php echo $value->name; ?>" value="<?php echo @$this->getVar('content')->{$value->name};?>" placeholder="请上传<?php echo $value->description; ?>"  class="layui-input">
				                     </div>
				                     <button type="button" class="layui-btn upload watermark" data-des="<?php echo $value->name; ?>">
									 	 <i class="layui-icon">&#xe67c;</i>上传图片
									 </button>
									 <?php  $name=$value->name; ?>
									 <div id="<?php echo $value->name; ?>_box" class="pic"><dl><dt><?php if ($this->getVar('content')->$name) {?><img src='<?php echo SITE_DIR;?><?php echo @$this->getVar('content')->{$value->name};?>' data-url="<?php echo @$this->getVar('content')->{$value->name};?>"></dt><dd>删除</dd></dl><?php } ?></div>
				                </div>
			                	<?php } ?>
			                	
			                	<?php if ($value->type==6) {?><!-- 文件 -->
			                	<div class="layui-form-item">
			                		<label class="layui-form-label"><?php echo $value->description; ?></label>
			                		<div class="layui-input-inline">
				                     	<input type="text" name="<?php echo $value->name; ?>" id="<?php echo $value->name; ?>" value="<?php echo @$this->getVar('content')->{$value->name};?>" placeholder="请上传<?php echo $value->description; ?>"  class="layui-input">
				                     </div>
				                     <button type="button" class="layui-btn file" data-des="<?php echo $value->name; ?>">
									 	 <i class="layui-icon">&#xe67c;</i>上传文件
									 </button>
				                </div>
			                	<?php } ?>
			                	
			                	<?php if ($value->type==7) {?><!-- 日期 -->
				                <div class="layui-form-item">
				                     <label class="layui-form-label"><?php echo $value->description; ?></label>
				                     <div class="layui-input-block">
				                     	<input type="text" name="<?php echo $value->name; ?>" value="<?php echo @$this->getVar('content')->{$value->name};?>" readonly placeholder="请选择<?php echo $value->description; ?>"  class="layui-input datetime">
				                     </div>
				                </div>
			                	<?php } ?>
			                	
			                	<?php if ($value->type==8) {?><!-- 编辑器 -->
			                	<div class="layui-form-item">
			                		<label class="layui-form-label"><?php echo $value->description; ?></label>
			                		<div class="layui-input-block">
			                			<?php  
			                				$name=@$value->name;
			                			?>
				                		<script type="text/plain" id="editor_<?php echo $value->name; ?>" name="<?php echo $value->name; ?>" style="width:100%;height:240px;"><?php echo decode_string($this->getVar('content')->$name);?></script>
				                		<script>
											//初始化编辑器
											$(document).ready(function (e) {
												var ue = UE.getEditor('editor_<?php echo $value->name; ?>',{
													maximumWords:10000 
												});
											})
										</script>
				                	</div>
				                </div>
			                	<?php } ?>
			                	
			                	<?php if ($value->type==9) {?><!-- 下拉 -->
			                	<div class="layui-form-item">
			                		<label class="layui-form-label"><?php echo $value->description; ?></label>
			                		<div class="layui-input-block">
			                			<select name="<?php echo $value->name; ?>">
			                				<?php  
				                				$selects=explode(',',$value->value);
				                				$name=$value->name;
				                				foreach ($selects as $value2) {
				                					if($this->vars['content']->$name==$value2){
				                						echo '<option value="'.$value2.'" selected>'.$value2.'</option>';
	                								}else{
	                									echo '<option value="'.$value2.'">'.$value2.'</option>';
	                								}
	            								}
	            						    ?>
			                			</select>
				                	</div>
				                 </div>
			                	 <?php } ?>
			                	 
			                <?php } ?>
			                
			                <div class="layui-form-item">
			                     <label class="layui-form-label">内容</label>
			                     <div class="layui-input-block">
			                     	<script type="text/plain" id="editor" name="content" style="width:100%;height:240px;"><?php echo decode_string($this->getVar('content')->content);?></script>
			                     </div>
			                </div>
			                
                            <div class="layui-form-item">
			                     <label class="layui-form-label">tags</label>
			                     <div class="layui-input-block">
			                     	<input type="text" name="tags" placeholder="请输入文章tag,英文逗号隔开" value="<?php echo @$this->getVar('content')->tags;?>" class="layui-input">
			                     </div>
			                </div>
			                
			                <div class="layui-form-item">
			                     <label class="layui-form-label">作者</label>
			                     <div class="layui-input-block">
			                     	<input type="text" name="author" placeholder="请输入作者" value="<?php echo @$this->getVar('content')->author;?>" class="layui-input">
			                     </div>
			                </div>
			                
			                <div class="layui-form-item">
			                     <label class="layui-form-label">来源</label>
			                     <div class="layui-input-block">
			                     	<input type="text" name="source" placeholder="请输入来源" value="<?php echo @$this->getVar('content')->source;?>" class="layui-input">
			                     </div>
			                </div>
			                <div class="layui-form-item">
			                     <label class="layui-form-label">缩略图</label>
			                     <div class="layui-input-inline">
			                     	<input type="text" name="ico" id="ico" value="<?php echo @$this->getVar('content')->ico;?>" placeholder="请上传缩略图"  class="layui-input">
			                     </div>
			                     <button type="button" class="layui-btn upload watermark" data-des="ico">
								 	 <i class="layui-icon">&#xe67c;</i>上传图片
								 </button>
								 <div id="ico_box" class="pic addedit"><?php if ($this->getVar('content')->ico) {?><dl><dt><img src="<?php echo SITE_DIR;?><?php echo @$this->getVar('content')->ico;?>" data-url="<?php echo @$this->getVar('content')->ico;?>"></dt><dd>删除</dd></dl><?php } ?></div>
			                </div>
			                
			                <div class="layui-form-item">
			                     <label class="layui-form-label">轮播多图</label>
			                     <div class="layui-input-inline">
			                     	<input type="text" name="pics" id="pics" value="<?php echo @$this->getVar('content')->pics;?>" placeholder="请上传轮播多图"  class="layui-input">
			                     </div>
			                     <button type="button" class="layui-btn uploads watermark" data-des="pics">
								 	 <i class="layui-icon">&#xe67c;</i>上传多图
								 </button>
								 <div id="pics_box" class="pic addedit">
								 	<dl></dl> <!-- 规避空内容拖动bug -->
								 	 <?php  
									    if($this->getVar('content')->pics){
		                					$pics=explode(',',$this->getVar('content')->pics);
		                				}else{
		                					$pics = array();
		                				}
		                				if($this->getVar('content')->picstitle){
		                					$picstitle=explode(',',$this->getVar('content')->picstitle);
		                				}else{
		                					$picstitle = array();
		                				}
		                				foreach ($pics as $key=>$value) {
		                					//需要留一个空,不然被解析为标签了
		                					echo "<dl><dt><img src='".SITE_DIR.$value."' data-url='".$value."'></dt><dd>删除</dd><dt><input type='text' value='".$picstitle[$key ]."' name='picstitle[]' style='width:95%' /></dt></dl>";
	          							}
	         						 ?>
								 </div>
			                </div>
					    </div>
					    
					    <div class="layui-tab-item ">
					    
					   		 <div class="layui-form-item">
			                     <label class="layui-form-label">标题颜色</label>
			                     <div class="layui-input-inline">
			                     	<input type="text" name="titlecolor" value="<?php echo @$this->getVar('content')->titlecolor;?>" placeholder="请选择标题颜色"  class="layui-input jscolor {hash:true}">
			                     </div>
			                 </div>
			                 
			                 <div class="layui-form-item">
			                     <label class="layui-form-label">副标题</label>
			                     <div class="layui-input-block">
			                     	<input type="text" name="subtitle" value="<?php echo @$this->getVar('content')->subtitle;?>" placeholder="请输入副标题" class="layui-input">
			                     </div>
			                 </div>

			                 <div class="layui-form-item">
			                     <label class="layui-form-label">时间</label>
			                     <div class="layui-input-inline">
			                     	<input type="text" name="date" value="<?php echo @$this->getVar('content')->date;?>" readonly placeholder="请选择发布时间"  class="layui-input datetime">
			                     </div>
			                     <div class="layui-form-mid layui-word-aux">温馨提示:单页不支持定时发布!</div>
			                </div>
			                
			                <div class="layui-form-item">
		                		<label class="layui-form-label">附件</label>
		                		<div class="layui-input-inline">
			                     	<input type="text" name="enclosure" id="enclosure" value="<?php echo @$this->getVar('content')->enclosure;?>" placeholder="请上传附件"  class="layui-input">
			                     </div>
			                     <button type="button" class="layui-btn file" data-des="enclosure">
								 	 <i class="layui-icon">&#xe67c;</i>上传附件
								 </button>
			                </div>
                            
                             <div class="layui-form-item">
			                     <label class="layui-form-label">SEO关键字</label>
			                     <div class="layui-input-block">
			                     	<input type="text" name="keywords" value="<?php echo @$this->getVar('content')->keywords;?>"  placeholder="请输入详情页SEO关键字" class="layui-input">
			                     </div>
			                </div>
			                
			                <div class="layui-form-item">
			                     <label class="layui-form-label">SEO描述</label>
			                     <div class="layui-input-block">
			                     	<textarea name="description" placeholder="请输入详情页SEO描述" class="layui-textarea"><?php echo @$this->getVar('content')->description;?></textarea>
			                     </div>
			                </div>
			                			                			                
			                <div class="layui-form-item">
			                     <label class="layui-form-label">状态</label>
			                     <div class="layui-input-block">
			                     	<input type="radio" name="status" value="1" title="显示" <?php if ($this->getVar('content')->status==1) {?> checked="checked"<?php } ?>>
									<input type="radio" name="status" value="0" title="隐藏" <?php if ($this->getVar('content')->status==0) {?> checked="checked"<?php } ?>>
			                     </div>
			                </div>
					    </div>
					  </div>
					</div>
					<div class="layui-form-item">
						 <div class="layui-input-block">
						    <button class="layui-btn" lay-submit>立即提交</button>
						    <button type="reset" class="layui-btn layui-btn-primary">重置</button>
						    <?php echo get_btn_back();?>
						 </div>
					</div>
	  		</form>
	  	</div>
	  </div>
	</div>
	<?php } ?> 

</div>

<style>.placeHolder {border:dashed 2px gray; }</style>
<script type="text/javascript" src="<?php echo APP_THEME_DIR;?>/js/jquery.dragsort-0.5.2.min.js"></script>
<script type="text/javascript">
$("#pics_box").dragsort({
	dragSelector: "dl",
	dragSelectorExclude: "input,textarea,dd",
	dragBetween: false,
	dragEnd: saveOrder,
	placeHolderTemplate: "<dl class='placeHolder'><dt></dt></dl>"
});

function saveOrder() {
	var data = $("#pics_box dl dt img").map(function() {
		return $(this).data("url");
	}).get();
	$("input[name=pics]").val(data.join(","))
};
</script>
<script type="text/javascript" src="<?php echo APP_THEME_DIR;?>/js/jscolor.js"></script>

<!-- 引入编辑器文件 -->
<script type="text/javascript" charset="utf-8" src="<?php echo CORE_DIR;?>/extend/ueditor/ueditor.config.js"></script>
<script type="text/javascript" charset="utf-8" src="<?php echo CORE_DIR;?>/extend/ueditor/ueditor.all.min.js"> </script>
<script type="text/javascript" charset="utf-8" src="<?php echo CORE_DIR;?>/extend/ueditor/lang/zh-cn/zh-cn.js"></script>
<script>
//初始化编辑器
$(document).ready(function (e) {
    var ue = UE.getEditor('editor', {
        maximumWords: 30000,
        pasteFilter: false,
        autoFormat: false,
        enableAutoFormat: false,
        autoTransWord: false
    });
})
</script>


<script type="text/javascript">
   <!-- 解决源码模式无法保存 -->
  function editor_init() {
      $('#edit').submit(function () {
          editor=UE.getEditor('editor');
          if(editor.queryCommandState('source')==1) editor.execCommand('source');
      })
  }
 
  <!-- 点击后添加到编辑器 -->
  $(".addedit").on("click",'img',function(){
	    editor=UE.getEditor('editor');
		$img = $(this).attr("src");
		editor.execCommand('inserthtml',"<img src='"+$img+"'>");
   });

</script>

<script type="text/javascript">editor_init();</script>




<?php if ($this->getVar('mod')) {?>
<!-- AI 写作助手浮动按钮 + 弹窗(配置启用且为编辑/新增页时输出) -->
<?php if ($this->getVar('ai_enabled')==1 && $this->getVar('ai_show_assistant')) {?>
<style>
	.ai-fab{position:fixed;right:30px;bottom:30px;width:54px;height:54px;border-radius:50%;
		background:linear-gradient(135deg,#1E9FFF 0%,#5FB878 100%);color:#fff;text-align:center;
		line-height:54px;cursor:pointer;z-index:9999;box-shadow:0 4px 12px rgba(0,0,0,.2);
		font-size:14px;font-weight:bold;user-select:none;transition:transform .2s;}
	.ai-fab:hover{transform:scale(1.08);}
	.ai-panel{padding:18px 20px;font-size:14px;}
	.ai-panel .ai-tabs{display:flex;border-bottom:1px solid #e6e6e6;margin-bottom:14px;}
	.ai-panel .ai-tabs span{padding:6px 14px;cursor:pointer;color:#666;border-bottom:2px solid transparent;}
	.ai-panel .ai-tabs span.on{color:#1E9FFF;border-bottom-color:#1E9FFF;font-weight:bold;}
	.ai-panel .ai-pane{display:none;}
	.ai-panel .ai-pane.on{display:block;}
	.ai-panel textarea,.ai-panel input[type=text]{width:100%;box-sizing:border-box;border:1px solid #e6e6e6;
		border-radius:2px;padding:6px 10px;font-size:13px;line-height:1.6;}
	.ai-panel textarea{min-height:120px;resize:vertical;}
	.ai-panel .ai-row{margin-bottom:10px;}
	.ai-panel .ai-row label{color:#888;display:block;margin-bottom:4px;}
	.ai-panel .ai-actions{margin-top:10px;}
	.ai-panel .ai-actions .layui-btn{margin-right:6px;}
	.ai-panel .ai-result{background:#f7f7f7;padding:10px;border-radius:2px;max-height:180px;
		overflow:auto;font-size:13px;line-height:1.7;color:#333;border:1px solid #eee;}
	.ai-panel .ai-tip{color:#999;font-size:12px;margin-top:6px;}
	.ai-panel .ai-loading{color:#1E9FFF;font-size:12px;display:none;margin-top:6px;}
</style>

<div class="ai-fab" id="aiFab" title="AI 写作助手" data-ai-mode="<?php echo $this->getVar('ai_show_assistant');?>">AI</div>

<script id="aiPanelTpl" type="text/html">
	<div class="ai-panel">
		<div class="ai-tabs">
			<span class="on" data-pane="gen">生成全文</span>
			<span data-pane="rw">续写/改写/缩写/润色</span>
			<span data-pane="tdk">生成TDK</span>
		</div>
		<div class="ai-loading" id="aiLoading">AI 正在思考,请稍候...</div>

		<div class="ai-pane on" data-pane="gen">
			<div class="ai-row">
				<label>文章标题(基于编辑器外标题输入框自动同步)</label>
				<input type="text" id="aiGenTitle" placeholder="请输入文章标题">
			</div>
			<div class="ai-actions">
				<button class="layui-btn layui-btn-sm" id="aiBtnGen">生成全文</button>
				<button class="layui-btn layui-btn-sm layui-btn-primary" id="aiBtnInsertGen" disabled>插入到编辑器</button>
			</div>
			<div class="ai-tip">将以 HTML 段落形式插入到光标位置;如需替换原内容请先在编辑器中手动清空。</div>
			<div class="ai-row" style="margin-top:10px;">
				<label>生成结果预览</label>
				<div class="ai-result" id="aiGenResult">(暂无内容)</div>
			</div>
		</div>

		<div class="ai-pane" data-pane="rw">
			<div class="ai-row">
				<label>处理方式</label>
				<select id="aiRwMode" class="layui-input" style="width:160px;display:inline-block;">
					<option value="continue">续写</option>
					<option value="rewrite">改写</option>
					<option value="shorten">缩写</option>
					<option value="polish">润色</option>
				</select>
				<button class="layui-btn layui-btn-sm layui-btn-normal" id="aiBtnLoadSel" style="margin-left:6px;">读取编辑器选中文本</button>
			</div>
			<div class="ai-row">
				<label>待处理文本</label>
				<textarea id="aiRwInput" placeholder="可手动粘贴,或点击上方按钮读取编辑器中的选中文本"></textarea>
			</div>
			<div class="ai-actions">
				<button class="layui-btn layui-btn-sm" id="aiBtnRw">执行</button>
				<button class="layui-btn layui-btn-sm layui-btn-primary" id="aiBtnInsertRw" disabled>插入到编辑器</button>
			</div>
			<div class="ai-tip" id="aiRwTip">续写将追加到选中内容之后,不会替换原文;改写/缩写/润色将替换当前选区。</div>
			<div class="ai-row" style="margin-top:10px;">
				<label>处理结果预览</label>
				<div class="ai-result" id="aiRwResult">(暂无内容)</div>
			</div>
		</div>

		<div class="ai-pane" data-pane="tdk">
			<div class="ai-tip">将基于当前文章标题与编辑器正文一键生成 SEO 三要素,并自动填入下方字段。</div>
			<div class="ai-actions" style="margin-top:8px;">
				<button class="layui-btn layui-btn-sm" id="aiBtnTdk">一键生成TDK</button>
			</div>
			<div class="ai-row" style="margin-top:10px;">
				<label>SEO Title(自动填入「标题」输入框)</label>
				<input type="text" id="aiTdkTitle" readonly>
			</div>
			<div class="ai-row">
				<label>SEO Description(自动填入「内容描述」)</label>
				<textarea id="aiTdkDesc" readonly style="min-height:60px;"></textarea>
			</div>
			<div class="ai-row">
				<label>SEO Keywords(自动填入「关键字」)</label>
				<input type="text" id="aiTdkKw" readonly>
			</div>
		</div>
	</div>
</script>

<script>
	(function(){
		var FORMCHECK = '<?php echo $this->getVar('formcheck');?>';
		var URL_GEN  = '<?php echo \core\basic\Url::get('/admin/Ai/generate');?>';
		var URL_RW   = '<?php echo \core\basic\Url::get('/admin/Ai/rewrite');?>';
		var URL_TDK  = '<?php echo \core\basic\Url::get('/admin/Ai/tdk');?>';
		var URL_ALT  = '<?php echo \core\basic\Url::get('/admin/Ai/alt');?>';

		var lastGen = '', lastRw = '';
		var lastRwMode = '';
		var cachedUeSelection = '';
		var cachedUeRange = null;

		function ueRangeToPlainText(range, doc) {
			if (!range || range.collapsed) return '';
			try {
				var frag = range.cloneContents();
				var div = (doc || document).createElement('div');
				div.appendChild(frag);
				return (div.textContent || div.innerText || '').trim();
			} catch (e) {
				return '';
			}
		}

		function ueGet(){ try{ return UE.getEditor('editor'); }catch(e){ return null; } }

		function ueGetSelectionText() {
			var ue = ueGet();
			if (!ue) return '';
			if (ue.queryCommandState('source')===1){
				return -1;
			}
			// 有焦点时优先用官方 API
			try {
				var t = ue.selection.getText();
				if (t) return t;
			} catch (e) {}
			// 失焦:getRange() 会使用 _bakRange
			try {
				var range = ue.selection.getRange();
				var fromRange = ueRangeToPlainText(range, ue.document);
				if (fromRange) return fromRange;
			} catch (e) {}
			// 再尝试编辑器实例上的备份(部分浏览器 blur 逻辑)
			try {
				if (ue._bakRange) {
					var fromBak = ueRangeToPlainText(ue._bakRange, ue.document);
					if (fromBak) return fromBak;
				}
			} catch (e) {}
			return cachedUeSelection || '';
		}

		function ueInsertHtml(html){
			var ue = ueGet();
			if(!ue){ layer.msg('编辑器未就绪'); return; }
			if (ue.queryCommandState('source') === 1) {
				layer.msg('请先切回富文本框可视化模式!');
				return;
			}
			ue.focus();
			ue.execCommand('inserthtml', html, true);
		}

		/** 续写:将内容追加到选区末尾,保留原文 */
		function ueInsertContinueHtml(html) {
			var ue = ueGet();
			if (!ue) { layer.msg('编辑器未就绪'); return; }
			if (ue.queryCommandState('source') === 1) {
				layer.msg('请先切回富文本框可视化模式!');
				return;
			}
			ue.focus();
			try {
				var range = cachedUeRange || ue._bakRange;
				if (range) {
					if (typeof range.cloneRange === 'function') {
						range = range.cloneRange();
					}
					range.select();
					range.collapse(false);
					range.select();
				}
				ue.execCommand('inserthtml', html, true);
			} catch (e) {
				ue.execCommand('inserthtml', html, true);
			}
		}

		function syncRwModeUi($box) {
			if (!$box || !$box.length) return;
			var mode = $box.find('#aiRwMode').val();
			var $tip = $box.find('#aiRwTip');
			var $btn = $box.find('#aiBtnInsertRw');
			if (mode === 'continue') {
				$tip.text('续写将追加到选中内容之后,不会替换原文。建议先选中段落并点击「读取编辑器选中文本」。');
				$btn.text('追加到选中内容后');
			} else {
				$tip.text('改写/缩写/润色将用生成结果替换当前选区;无选区时插入到光标位置。');
				$btn.text('插入到编辑器');
			}
		}
		/** 启用/禁用「插入到编辑器」按钮(Layui 需同步 layui-btn-disabled) */
		function setInsertBtnState($btn, enabled){
			if(!$btn || !$btn.length) return;
			$btn.prop('disabled', !enabled);
			if(enabled){
				$btn.removeClass('layui-btn-disabled');
			}else{
				$btn.addClass('layui-btn-disabled');
			}
		}
		function ueGetContentText(){
			var ue = ueGet();
			if(!ue) return '';
			try{ return ue.getContentTxt() || ''; }catch(e){ return ''; }
		}
		function getPageTitle(){
			var $t = $('input[name=title]');
			return $t.length ? ($t.val() || '') : '';
		}
		function aiCall(url, payload, cb){
			payload.formcheck = FORMCHECK;
			$('#aiLoading').show();
			$.ajax({
				url: url, type:'POST', data: payload, dataType:'json',
				timeout: 90000,
				success: function(r){
					$('#aiLoading').hide();
					if(r && r.code === 1){ cb(r.data); }
					else{ layer.msg((r && r.msg) ? r.msg : (r && r.data ? r.data : '请求失败')); }
				},
				error: function(xhr, st){
					$('#aiLoading').hide();
					layer.msg('请求失败:' + (st || '未知错误'));
				}
			});
		}

		function cacheUeSelection() {
			cachedUeSelection = '';
			var ue = ueGet();
			if (!ue) return;
			try {
				var t = ue.selection.getText();
				if (t) { cachedUeSelection = t; return; }
				var range = ue.selection.getRange();
				cachedUeSelection = ueRangeToPlainText(range, ue.document);
			} catch (e) {}
		}

		function cacheUeRange() {
			cachedUeRange = null;
			var ue = ueGet();
			if (!ue) return;
			try {
				var range = ue.selection.getRange();
				if ((!range || range.collapsed) && ue._bakRange) {
					range = ue._bakRange;
				}
				if (range && !range.collapsed) {
					cachedUeRange = typeof range.cloneRange === 'function' ? range.cloneRange() : range;
				}
			} catch (e) {}
		}

		// 弹出 AI 面板
		function openAiPanel(){
			layer.open({
				type: 1,
				title: 'AI 写作助手',
				area: ['680px','580px'],
				shade: 0.3,
				content: $('#aiPanelTpl').html(),
				success: function(layero){
					var $box = layero;
					// 同步标题
					$box.find('#aiGenTitle').val(getPageTitle());
					// tab 切换
					$box.find('.ai-tabs span').on('click', function(){
						var pane = $(this).data('pane');
						$box.find('.ai-tabs span').removeClass('on');
						$(this).addClass('on');
						$box.find('.ai-pane').removeClass('on');
						$box.find('.ai-pane[data-pane='+pane+']').addClass('on');
					});

					// 生成全文
					$box.find('#aiBtnGen').on('click', function(){
						var t = $.trim($box.find('#aiGenTitle').val());
						if(!t){ layer.msg('请输入标题'); return; }

						var ue = ueGet();
						if (!ue) return '';
						if (ue.queryCommandState('source')===1){
							layer.msg('请先切回富文本框可视化模式!');
							return -1;
						}

						aiCall(URL_GEN, {title:t}, function(d){
							lastGen = d.content || '';
							$box.find('#aiGenResult').html(lastGen || '(无返回)');
							setInsertBtnState($box.find('#aiBtnInsertGen'), !!lastGen);
						});
					});
					$box.find('#aiBtnInsertGen').on('click', function(){
						if(!lastGen || $(this).prop('disabled')){ return; }
						ueInsertHtml(lastGen);
						layer.msg('已插入');
						setInsertBtnState($box.find('#aiBtnInsertGen'), false);
					});

					// 续写/改写/缩写/润色:读取选中文本
					syncRwModeUi($box);
					$box.find('#aiRwMode').on('change', function(){
						cachedUeRange = null;
						syncRwModeUi($box);
					});
					$box.find('#aiBtnLoadSel').on('click', function(){
						var sel = ueGetSelectionText();
						if(!sel){ layer.msg('编辑器中没有选中文本'); return; }
						else if(sel<0){ layer.msg('请先切回富文本框可视化模式!'); return; }
						cacheUeRange();
						$box.find('#aiRwInput').val(sel);
					});
					$box.find('#aiBtnRw').on('click', function(){
						var text = $.trim($box.find('#aiRwInput').val());
						var mode = $box.find('#aiRwMode').val();
						if(!text){ layer.msg('请先填写或读取文本'); return; }
						lastRwMode = mode;
						cacheUeRange();
						aiCall(URL_RW, {text:text, mode:mode}, function(d){
							lastRw = d.content || '';
							lastRwMode = mode;
							$box.find('#aiRwResult').html(lastRw || '(无返回)');
							setInsertBtnState($box.find('#aiBtnInsertRw'), !!lastRw);
							syncRwModeUi($box);
						});
					});
					$box.find('#aiBtnInsertRw').on('click', function(){
						if(!lastRw || $(this).prop('disabled')){ return; }
						if (lastRwMode === 'continue') {
							ueInsertContinueHtml(lastRw);
							layer.msg('已追加到选中内容之后');
						} else {
							ueInsertHtml(lastRw);
							layer.msg('已插入');
						}
						setInsertBtnState($box.find('#aiBtnInsertRw'), false);
					});

					// TDK
					$box.find('#aiBtnTdk').on('click', function(){
						var t = getPageTitle();
						var c = ueGetContentText();
						if(!t && !c){ layer.msg('请先填写标题或正文'); return; }
						aiCall(URL_TDK, {title:t, content:c}, function(d){
							$box.find('#aiTdkTitle').val(d.title || '');
							$box.find('#aiTdkDesc').val(d.description || '');
							$box.find('#aiTdkKw').val(d.keywords || '');
							// 自动回填到主表单
							if(d.title){ $('input[name=title]').val(d.title); }
							if(d.description){ $('textarea[name=description], input[name=description]').val(d.description); }
							if(d.keywords){ $('input[name=keywords], textarea[name=keywords]').val(d.keywords); }
							layer.msg('已生成并填入对应字段');
						});
					});
				}
			});
		}

		$(document).on('click', '#aiFab', function () {
			cacheUeSelection();
			cacheUeRange();
			openAiPanel();
		});

		// UEditor 本地上传会把 alt 填成原文件名,不能据此跳过 AI
		function isFilenameLikeAlt(alt){
			if(alt === undefined || alt === null) return true;
			alt = String(alt).trim();
			if(!alt) return true;
			return /^[^\\\/:*?"<>|]+\.(jpe?g|png|gif|webp|bmp|svg|ico)$/i.test(alt);
		}

		// 图片 Alt 自动生成:插入后异步请求,避免阻塞编辑器
		function normalizeImgSrc(src){
			if(!src) return '';
			return String(src).split('?')[0];
		}
		function updateImgAltInEditor(ue, src, alt){
			if(!ue || !src || !alt) return;
			var key = normalizeImgSrc(src);
			var doc = ue.document;
			if(!doc) return;
			var imgs = doc.getElementsByTagName('img');
			for(var i = 0; i < imgs.length; i++){
				var node = imgs[i];
				var s = node.getAttribute('src') || node.getAttribute('_src') || '';
				if(normalizeImgSrc(s) !== key) continue;
				if(!isFilenameLikeAlt(node.getAttribute('alt'))) continue;
				node.setAttribute('alt', alt);
			}
		}
		function requestAiAlt(src, cb){
			var ctx = ueGetContentText();
			if(ctx.length > 1500) ctx = ctx.substring(0, 1500);
			$.ajax({
				url: URL_ALT, type:'POST', async:true,
				data:{
					image_src: src,
					title: getPageTitle(),
					content: ctx,
					formcheck: FORMCHECK
				},
				dataType:'json', timeout:90000,
				success: function(r){
					if(r && r.code===1 && r.data && r.data.alt){
						cb(null, r.data.alt);
					}else{
						cb((r && r.msg) ? r.msg : 'Alt 生成失败');
					}
				},
				error: function(xhr, st){
					cb('请求失败:' + (st || '网络错误'));
				}
			});
		}
		function showAltMsg(msg){
			if(typeof layer !== 'undefined' && layer.msg){
				layer.msg(msg, {time: 3000});
			}else{
				console.warn('[AI] ' + msg);
			}
		}
		var ueAltBound = false;
		function bindUeAltListener(){
			var ue = ueGet();
			if(!ue || ueAltBound){ return !!ue; }
			ue.ready(function(){
				if(ueAltBound) return;
				ueAltBound = true;
				ue.addListener('afterinsertimage', function(t, args){
					if(!args || !args.length) return;
					args.forEach(function(img){
						if(!isFilenameLikeAlt(img.alt)) return;
						var src = img.src || img._src || '';
						if(!src) return;
						requestAiAlt(src, function(err, alt){
							if(err){
								showAltMsg(err);
								return;
							}
							updateImgAltInEditor(ue, src, alt);
						});
					});
				});
			});
			return true;
		}
		// 等待 UEditor 初始化完成
		var tryNum = 0, timer = setInterval(function(){
			tryNum++;
			if(bindUeAltListener() || tryNum > 30){
				clearInterval(timer);
			}
		}, 500);
	})();

	// 内容列表+新增同页(data-ai-mode=tabbed):随 Tab 列表 t1 / 新增 t2 显示或隐藏(layui 在 foot 才加载,须延后绑定)
	(function(){
		var fab = document.getElementById('aiFab');
		if(!fab || fab.getAttribute('data-ai-mode') !== 'tabbed') return;
		var ADD_TAB_ID = 't2';
		var TAB_SEL = '.layui-body > .layui-tab[lay-filter="tab"]';
		var eventsBound = false;

		function isAddTabActive(){
			var hash = (location.hash || '').replace(/^#tab=/, '');
			if(hash === ADD_TAB_ID) return true;
			var wrap = document.querySelector(TAB_SEL);
			if(!wrap) return false;
			var active = wrap.querySelector('.layui-tab-title li.layui-this');
			return active && active.getAttribute('lay-id') === ADD_TAB_ID;
		}

		function syncFabVisibility(){
			fab.style.display = isAddTabActive() ? '' : 'none';
		}

		function bindTabEvents(){
			if(eventsBound) return;
			eventsBound = true;
			window.addEventListener('hashchange', syncFabVisibility);
			document.addEventListener('pbootcms-tab-change', syncFabVisibility);
			if(typeof jQuery !== 'undefined'){
				jQuery(document).on('click', TAB_SEL + ' > .layui-tab-title li', function(){
					setTimeout(syncFabVisibility, 0);
				});
			}
			if(typeof layui !== 'undefined'){
				layui.use('element', function(){
					layui.element.on('tab(tab)', function(){
						setTimeout(syncFabVisibility, 0);
					});
					syncFabVisibility();
				});
			}
		}

		function initAfterLayui(){
			bindTabEvents();
			syncFabVisibility();
			setTimeout(syncFabVisibility, 50);
		}

		syncFabVisibility();
		if(document.readyState === 'complete'){
			initAfterLayui();
		}else{
			window.addEventListener('load', initAfterLayui);
		}
	})();
</script>
<?php } ?>

<?php } ?>
<input type="hidden" id="do_check" data-url="<?php echo \core\basic\Url::get('/admin/Upgrade/check');?>">
<input type="hidden" id="do_down" data-url="<?php echo \core\basic\Url::get('/admin/Upgrade/down');?>">
<input type="hidden" id="do_update" data-url="<?php echo \core\basic\Url::get('/admin/Upgrade/update');?>">
<input type="hidden" id="check_version" data-url="/index.php?p=upgrade/check&version=<?php echo APP_VERSION;?>.<?php echo RELEASE_TIME;?>.<?php echo $this->getVar('revise');?>&branch=<?php echo $this->getVar('branch');?>&snuser=<?php echo $this->getVar('snuser');?>&site=<?php echo $this->getVar('site');?>">
<input type="hidden" id="check_cache" data-url="<?php echo \core\basic\Url::get('/admin/Upgrade/checkCache');?>">
</div>

<script type="text/javascript" src="<?php echo APP_THEME_DIR;?>/layui/layui.all.js?v=v2.5.4"></script>
<script type="text/javascript" src="<?php echo APP_THEME_DIR;?>/js/comm.js?v=v3.1.1"></script>
<script type="text/javascript" src="<?php echo APP_THEME_DIR;?>/js/mylayui.js?v=v3.1.0"></script>

<!-- 让IE8/9支持媒体查询,从而兼容栅格 -->
<!--[if lt IE 9]>
  <script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
  <script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->

</body>
</html>

<?php return array (
  0 => '/www/data/wwwroot/2026_08_09_01/apps/admin/view/default/common/head.html',
  1 => '/www/data/wwwroot/2026_08_09_01/apps/admin/view/default/common/ueditor.html',
  2 => '/www/data/wwwroot/2026_08_09_01/apps/admin/view/default/common/ai_assistant.html',
  3 => '/www/data/wwwroot/2026_08_09_01/apps/admin/view/default/common/foot.html',
); ?>

Youez - 2016 - github.com/yon3zu
LinuXploit