package conf

import (
	"errors"
	"fmt"
	"github.com/Unknwon/goconfig"
)

// 读取配置文件
var connIni *goconfig.ConfigFile
var connIniTest = false
var Model string

func ConnIni() (conf *goconfig.ConfigFile, err error) {

	// 通过全局变量设置配置文件的名字
	var confName string
	fmt.Print("model = ", Model)
	switch Model {

	case "test":
		confName = "conf_test.ini"
		break

	case "master":
		confName = "conf_master.ini"
		break
	case "axin":
		confName = "conf_axin.ini"

	default:
		confName = "conf.ini"
	}

	fmt.Printf("load config : %s\n", confName)

	// 判断是否加载成功过
	if connIniTest == false {

		var conFiles = []string{"conf/", "/conf/", "/app/conf/", "../conf/", "../../conf/", "../../../conf/", "../../../../conf/", "../../../../../conf/"}

		for _, aConFile := range conFiles {
			conn, err := goconfig.LoadConfigFile(aConFile + confName)
			if err == nil {

				connIniTest = true
				connIni = conn
				return connIni, nil

			}
		}

		return connIni, errors.New("无法找到配置文件")
	}

	return connIni, nil
}