ѡ̳

 找回密码
 ע
搜索
查看: 112|回复: 1
打印 上一主题 下一主题

修改计划:栏目管理的修改改为弹出层 ---已完成

[复制链接]

789

主题

1158

帖子

4197

积分

Ա

Rank: 9Rank: 9Rank: 9

积分
4197
跳转到指定楼层
¥
发表于 2017-12-9 23:50:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现有的打开新页面很不方便管理,改为弹出窗更快捷。

已完成  参考模型管理界面

在category.php  编辑栏目那里  加href="javascript:edit(\''.$r['catid'].'\',\''.$r['catname'].'\')"
对应的展示模版页category_manage.tpl.php
增加
  1.    function edit(id, name) {
  2.         window.top.art.dialog({id:'edit'}).close();
  3.          
  4.         window.top.art.dialog({title:'<?php echo L('edit_category');?>《'+name+'》',id:'edit',iframe:'?m=admin&c=category&a=quickedit&catid='+id+'&pc_hash=<?php echo $_SESSION['pc_hash'];?>',width:'580',height:'420'}, function(){var d = window.top.art.dialog({id:'edit'}).data.iframe;d.document.getElementById('dosubmit').click();return false;}, function(){window.top.art.dialog({id:'edit'}).close()});
  5.   
  6.   }
复制代码


同时 category.php 增加 quickedit方法 和edit类似 但是提交后没有弹出
  1. public function quickedit() {
  2.                
  3.                 if(isset($_POST['dosubmit'])) {
  4.                         pc_base::load_sys_func('iconv');
  5.                         $catid = 0;
  6.                         $catid = intval($_POST['catid']);
  7.                         $setting = $_POST['setting'];
  8.                        
  9.                        
  10.                         //上级栏目不能是自身
  11.                         if($_POST['info']['parentid']==$catid){
  12.                                 showmessage(L('operation_failure'),'?m=admin&c=category&a=init&module=admin&menuid=43');
  13.                         }
  14.                         //栏目生成静态配置
  15.                         if($_POST['type'] != 2) {
  16.                                 if($setting['ishtml']) {
  17.                                         $setting['category_ruleid'] = $_POST['category_html_ruleid'];
  18.                                 } else {
  19.                                         $setting['category_ruleid'] = $_POST['category_php_ruleid'];
  20.                                         $_POST['info']['url'] = '';
  21.                                 }
  22.                         }
  23.                         //内容生成静态配置
  24.                         if($setting['content_ishtml']) {
  25.                                 $setting['show_ruleid'] = $_POST['show_html_ruleid'];
  26.                         } else {
  27.                                 $setting['show_ruleid'] = $_POST['show_php_ruleid'];
  28.                         }
  29.                         if($setting['repeatchargedays']<1) $setting['repeatchargedays'] = 1;
  30.                         $_POST['info']['sethtml'] = $setting['create_to_html_root'];
  31.                         $_POST['info']['setting'] = array2string($setting);
  32.                         $_POST['info']['module'] = 'content';
  33.                         $catname = CHARSET == 'gbk' ? safe_replace($_POST['info']['catname']) : iconv('utf-8','gbk',safe_replace($_POST['info']['catname']));
  34.                         $catname = str_replace(array('%'),'',$catname);
  35.                         $letters = gbk_to_pinyin($catname);
  36.                         $_POST['info']['letter'] = strtolower(implode('', $letters));
  37.                        
  38.                         //封面和列表统一
  39.                         $_POST['setting']['category_template']=$_POST['setting']['list_template'];
  40.                        
  41.                         //应用权限设置到子栏目
  42.                         if($_POST['priv_child']) {
  43.                                 $arrchildid = $this->db->get_one(array('catid'=>$catid), 'arrchildid');
  44.                                 if(!empty($arrchildid['arrchildid'])) {
  45.                                         $arrchildid_arr = explode(',', $arrchildid['arrchildid']);
  46.                                         if(!empty($arrchildid_arr)) {
  47.                                                 foreach ($arrchildid_arr as $arr_v) {
  48.                                                         $this->update_priv($arr_v, $_POST['priv_groupid'], 0);
  49.                                                 }
  50.                                         }
  51.                                 }
  52.                                
  53.                         }
  54.                        
  55.                         //应用模板到所有子栏目
  56.                         if($_POST['template_child']){
  57.                                 $this->categorys = $categorys = $this->db->select(array('siteid'=>$this->siteid,'module'=>'content'), '*', '', 'listorder ASC, catid ASC', '', 'catid');
  58.                                 $idstr = $this->get_arrchildid($catid);
  59.                                  if(!empty($idstr)){
  60.                                         $sql = "select catid,setting from phpcms_category where catid in($idstr)";
  61.                                         $this->db->query($sql);
  62.                                         $arr = $this->db->fetch_array();
  63.                                          if(!empty($arr)){
  64.                                                 foreach ($arr as $v){
  65.                                                         $new_setting = array2string(
  66.                                                                                                                 array_merge(string2array($v['setting']), array('category_template' => $_POST['setting']['category_template'],'list_template' =>  $_POST['setting']['list_template'],'show_template' =>  $_POST['setting']['show_template'])
  67.                                                                                 )
  68.                                                         );
  69.                                                         $this->db->update(array('setting'=>$new_setting), 'catid='.$v['catid']);
  70.                                                 }
  71.                                         }                                
  72.                                 }
  73.                         }

  74.                         //print_r($_POST['info']); exit;
  75.                        
  76.                         $this->db->update($_POST['info'],array('catid'=>$catid,'siteid'=>$this->siteid));
  77.                         $this->update_priv($catid, $_POST['priv_roleid']);
  78.                         $this->update_priv($catid, $_POST['priv_groupid'],0);
  79.                         $this->cache();
  80.                         //更新附件状态
  81.                         if($_POST['info']['image'] && pc_base::load_config('system','attachment_stat')) {
  82.                                 $this->attachment_db = pc_base::load_model('attachment_model');
  83.                                 $this->attachment_db->api_update($_POST['info']['image'],'catid-'.$catid,1);
  84.                         }
  85.                         showmessage(L('update_success'), '', '', 'edit');
  86.                 } else {
  87.                         //获取站点模板信息
  88.                         pc_base::load_app_func('global');
  89.                         $template_list = template_list($this->siteid, 0);
  90.                         foreach ($template_list as $k=>$v) {
  91.                                 $template_list[$v['dirname']] = $v['name'] ? $v['name'] : $v['dirname'];
  92.                                 unset($template_list[$k]);
  93.                         }
  94.                        
  95.                        
  96.                         $show_validator = $catid = $r = '';
  97.                         $catid = intval($_GET['catid']);
  98.                         pc_base::load_sys_class('form','',0);
  99.                         $r = $this->db->get_one(array('catid'=>$catid));
  100.                         if($r) extract($r);
  101.                         $setting = string2array($setting);
  102.                        
  103.                         $this->priv_db = pc_base::load_model('category_priv_model');
  104.                         $this->privs = $this->priv_db->select(array('catid'=>$catid));
  105.                        
  106.                         $type = $_GET['type'];
  107.                        
  108.                         //print_r($setting);  
  109.             
  110.                         $type = $_GET['type'];
  111.                         /*if($type==0) {
  112.                                 include $this->admin_tpl('category_edit');
  113.                         } elseif ($type==1) {
  114.                                 include $this->admin_tpl('category_page_edit');
  115.                         } else {
  116.                                 include $this->admin_tpl('category_link');
  117.                         }*/
  118.                          
  119.                          include $this->admin_tpl('category_quickedit');

  120.                 }       
  121.         }
复制代码




回复

使用道具 举报

789

主题

1158

帖子

4197

积分

Ա

Rank: 9Rank: 9Rank: 9

积分
4197
ɳ
 楼主| 发表于 2017-12-10 01:06:25 | 只看该作者
增加quickedit模版  提交按钮加上  id="dosubmit"
回复

使用道具 举报

您需要登录后才可以回帖 登录 | ע

本版积分规则

QQ|Archiver|ֻ|С|ѡ̳

GMT+8, 2026-5-2 03:17 , Processed in 0.078298 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表
0.0916s