Files
eiblog/setting/setting.go
2016-12-23 22:59:26 +08:00

106 lines
2.1 KiB
Go

// Package setting provides ...
package setting
import (
"io/ioutil"
"github.com/eiblog/utils/logd"
"gopkg.in/yaml.v2"
)
const (
DEV = "dev"
PROD = "prod"
)
var (
Conf = new(Config)
BlackIP = make(map[string]bool)
)
type Config struct {
StaticVersion int // 当前静态文件版本
RunMode string // 运行模式
Trash int // 回收箱文章保留时间
Clean int // 清理回收箱频率
PageNum int // 前端每页文章数量
PageSize int // 后台每页文章数量
Length int // 自动截取预览长度
Identifier string // 截取标示
Favicon string // icon地址
StartID int32 // 文章起始id
SearchURL string // elasticsearch 地址
Disqus struct { // 获取文章数量相关
ShortName string
PublicKey string
PostsCount string
PostsList string
PostCreate string
Interval int
}
HotWords []string // 热搜词
Google struct { // 谷歌统计
Tid string
V string
T string
}
Kodo struct { // 七牛CDN
Name string
Domain string
AccessKey string
SecretKey string
}
Mode RunMode // 运行模式
Twitter struct { // twitter信息
Card string
Site string
Image string
Address string
}
FeedrURL string // superfeedr url
PingRPCs []string // ping rpc 地址
Account struct {
Username string // *
Password string // *
Email string
PhoneNumber string
Address string
}
Blogger struct { // 初始化数据
BlogName string
SubTitle string
BeiAn string
BTitle string
Copyright string
}
}
type RunMode struct {
EnableHttp bool
HttpPort int
EnableHttps bool
HttpsPort int
CertFile string
KeyFile string
Domain string
}
func init() {
// 初始化配置
data, err := ioutil.ReadFile("conf/app.yml")
checkError(err)
err = yaml.Unmarshal(data, Conf)
checkError(err)
data, err = ioutil.ReadFile("conf/blackip.yml")
checkError(err)
err = yaml.Unmarshal(data, BlackIP)
checkError(err)
}
func checkError(err error) {
if err != nil {
logd.Fatal(err)
}
}