AdminAction::doEditWeiba PHP Метод

doEditWeiba() публичный Метод

执行编辑微吧
public doEditWeiba ( )
    public function doEditWeiba()
    {
        $weiba_id = intval($_POST['weiba_id']);
        $data['weiba_name'] = t($_POST['weiba_name']);
        $map['weiba_id'] = array('neq', $weiba_id);
        $map['weiba_name'] = $data['weiba_name'];
        $map['is_del'] = 0;
        if (D('weiba')->where($map)->find()) {
            $this->error('此微吧已存在');
        }
        //$data['uid'] = $this->mid;
        $data['cid'] = intval($_POST['cid']);
        if (empty($data['cid'])) {
            $this->error('微吧分类不能为空');
        }
        $data['logo'] = t($_POST['logo']);
        $data['intro'] = $_POST['intro'];
        $data['notify'] = t($_POST['notify']);
        $data['who_can_post'] = t($_POST['who_can_post']);
        $data['admin_uid'] = t($_POST['admin_uid']);
        $data['recommend'] = intval($_POST['recommend']);
        // # 修复,后台上传微吧logo前台没有logo
        if ($data['logo']) {
            $data['avatar_big'] = getImageUrlByAttachId($data['logo'], 200, 200);
            $data['avatar_middle'] = getImageUrlByAttachId($data['logo'], 100, 100);
        }
        $res = D('weiba')->where('weiba_id=' . $weiba_id)->save($data);
        if ($res !== false) {
            //现有超级圈主
            $follow['level'] = 3;
            $follow['weiba_id'] = $weiba_id;
            $admin_uid = D('weiba_follow')->where($follow)->getField('follower_uid');
            if ($admin_uid && $admin_uid != $data['admin_uid']) {
                //如果存在圈主并且设置了新圈主,则原圈主降为普通成员
                $a['follower_uid'] = $admin_uid;
                $a['weiba_id'] = $weiba_id;
                D('weiba_follow')->where($a)->setField('level', 1);
            }
            if ($data['admin_uid']) {
                $follows['follower_uid'] = $data['admin_uid'];
                $follows['weiba_id'] = $weiba_id;
                if (D('weiba_follow')->where($follows)->find()) {
                    //该圈主已经为成员
                    D('weiba_follow')->where($follows)->where($follows)->setField('level', 3);
                } else {
                    $follows['level'] = 3;
                    D('weiba_follow')->add($follows);
                }
            }
            $this->assign('jumpUrl', U('weiba/Admin/index'));
            $this->success(L('PUBLIC_SYSTEM_MODIFY_SUCCESS'));
        } else {
            $this->error(D('weiba')->getLastError());
        }
    }