<?php

    /**
     * 状态码说明
     * 状态码：200 操作成功
     * 其它状态码自己定义就行
     * 源码用途：安装程序，修改app.json的install=2就是安装成功
     */

	// 编码
	header("Content-type:application/json");
	
	// 判断登录状态
    session_start();
    if(isset($_SESSION["yinliubao"])){
        
        // 当前登录的用户
        $LoginUser = $_SESSION["yinliubao"];
        
        // 读取JSON文件内容
        $jsonFile = '../app.json';
        $jsonData = file_get_contents($jsonFile);
        
        // 解码JSON数据
        $data = json_decode($jsonData, true);
        
        // 连接数据库
        include '../../../../Db.php';
        $conn = new mysqli($config['db_host'], $config['db_user'], $config['db_pass'], $config['db_name']);
        
        // 验证当前登录用户是否为管理员
        $check_admin = "SELECT user_admin FROM huoma_user WHERE user_name = '$LoginUser'";
        $check_admin_result = $conn->query($check_admin)->fetch_assoc();
        
        // 如果不是管理员，不允许安装
        if($check_admin_result['user_admin'] == 2) {
            
            $result = array(
        		'code' => 202,
                'msg' => '安装失败：没有安装权限！'
        	);
        	echo json_encode($result,JSON_UNESCAPED_UNICODE);
        	exit;
        }
        
        // 获取安装状态
        $status = $data['install'];
        
        // 1 为未安装
        if($status == 1) {
            
            // 未安装
            // 设置为已安装
            $data['install'] = 2;
            
            // 编码为JSON格式
            $appJsonData = json_encode($data, JSON_UNESCAPED_UNICODE);
            
            // 写回JSON文件
            file_put_contents($jsonFile, $appJsonData);
            
            // 如果你需要操作数据库
            // 请在这里编写你操作数据库的逻辑

            // ylb_ChatroomPay表
            $ylb_ChatroomPay = "CREATE TABLE `ylb_ChatroomPay` (
              `id` int(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY NOT NULL COMMENT '自增ID',
              `chatroom_id` int(10) DEFAULT NULL COMMENT '付费群ID',
              `chatroom_avatar` text COMMENT '群头像',
              `chatroom_name` varchar(64) DEFAULT NULL COMMENT '群名称',
              `chatroom_qrcode` text COMMENT '群二维码',
              `chatroom_amount` varchar(32) DEFAULT NULL COMMENT '进群需支付的金额',
              `chatroom_domain` text COMMENT '域名',
              `chatroom_desc` text COMMENT '群简介',
              `chatroom_status` int(1) DEFAULT '1' COMMENT '状态 1正常 2停用',
              `chatroom_pv` int(10) DEFAULT '0' COMMENT '访问次数',
              `chatroom_visitor` int(10) NOT NULL DEFAULT '0' COMMENT '访客数',
              `chatroom_isPay` int(6) DEFAULT '0' COMMENT '已支付订单',
              `chatroom_unPay` int(6) NOT NULL DEFAULT '0' COMMENT '未支付订单',
              `chatroom_leader_wxid` varchar(64) DEFAULT NULL COMMENT '群主或管理员微信号',
              `chatroom_memberNum` varchar(3) DEFAULT NULL COMMENT '群成员人数',
              `chatroom_template` int(1) DEFAULT NULL COMMENT '页面模板',
              `chatroom_create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
              `chatroom_create_user` varchar(32) DEFAULT NULL COMMENT '创建者'
            ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='付费群'";
            
            // ylb_ChatroomPayConfig表
            $ylb_ChatroomPayConfig = "CREATE TABLE `ylb_ChatroomPayConfig` (
              `id` int(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY NOT NULL COMMENT '自增ID',
              `payapi_domain` text COMMENT '易支付的接口域名',
              `payapi_merchant_id` varchar(32) DEFAULT NULL COMMENT '易支付的商户ID',
              `payapi_merchant_key` varchar(64) DEFAULT NULL COMMENT '易支付的商户密钥',
              `qywx_AgentId` varchar(32) DEFAULT NULL COMMENT '企业微信应用ID',
              `qywx_Secret` varchar(64) DEFAULT NULL COMMENT '企业微信应用Secret',
              `qywx_Appid` varchar(64) DEFAULT NULL COMMENT '企业微信企业ID',
              `qywx_auth_domain` varchar(255) DEFAULT NULL COMMENT '企业微信应用网页授权域名',
              `Action_User` varchar(32) DEFAULT NULL COMMENT '操作用户'
            ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='插件配置'";
            
            // 插入一条数据
            $createConfig = "INSERT INTO ylb_ChatroomPayConfig (Action_User) VALUES ('$LoginUser')";
            
            // ylb_ChatroomPayOrders表
            $ylb_ChatroomPayOrders = "CREATE TABLE `ylb_ChatroomPayOrders` (
              `id` int(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY NOT NULL COMMENT '自增ID',
              `order_num` varchar(64) DEFAULT NULL COMMENT '订单号',
              `chatroom_id` int(10) DEFAULT NULL COMMENT '付费群id',
              `chatroom_name` varchar(64) DEFAULT NULL COMMENT '群名称',
              `order_amount` varchar(5) DEFAULT NULL COMMENT '支付金额',
              `order_paytype` varchar(10) DEFAULT NULL COMMENT '支付类型',
              `order_openid` varchar(64) DEFAULT NULL COMMENT 'openid',
              `order_bzCode` varchar(32) DEFAULT NULL COMMENT '备注识别码',
              `order_ip` varchar(255) DEFAULT NULL COMMENT '客户端ip',
              `order_status` int(1) NOT NULL DEFAULT '2' COMMENT '订单状态1已支付 2未支付',
              `order_time` varchar(64) DEFAULT NULL COMMENT '支付时间',
              `Action_User` varchar(32) DEFAULT NULL COMMENT '操作者'
            ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='支付订单'";
            
            // ylb_ChatroomPayOpenid表
            $ylb_ChatroomPayOpenid = "CREATE TABLE `ylb_ChatroomPayOpenid` (
              `id` int(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY NOT NULL COMMENT '自增ID',
              `openid` varchar(64) DEFAULT NULL COMMENT '微信openid',
              `chatroom_id` int(10) DEFAULT NULL COMMENT '付费群chatroom_id',
              `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '首次访问时间'
            ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='访客openid'";
            
            if(
                $conn->query($ylb_ChatroomPay) === TRUE &&
                $conn->query($ylb_ChatroomPayConfig) === TRUE &&
                $conn->query($createConfig) === TRUE &&
                $conn->query($ylb_ChatroomPayOrders) === TRUE &&
                $conn->query($ylb_ChatroomPayOpenid) === TRUE) {
                
                // 所有表创建成功
                // 安装成功
                $result = array(
        			'code' => 200,
                    'msg' => '安装成功'
        		);
            }else {
                
                // 创建表失败
                // 安装失败
                $result = array(
        			'code' => 201,
                    'msg' => '安装失败：' . $conn->error
        		);
            }
            
        }else {
            
            // 已安装
            $result = array(
    			'code' => 201,
                'msg' => '安装失败：当前插件已安装'
    		);
        }
    }else {
        
        $result = array(
			'code' => 201,
            'msg' => '未登录'
		);
    }
	
    // 输出JSON
	echo json_encode($result,JSON_UNESCAPED_UNICODE);
	
?>