Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 2f3a5a0a59 | |||
| c2468a7389 |
+3
-1
@@ -683,7 +683,9 @@ func setMakeCodeListener(name string, appIns *Application) {
|
||||
if context.RouterString[1] == "hotime" && context.RouterString[2] == "config" {
|
||||
return isFinished
|
||||
}
|
||||
|
||||
if context.RouterString[1] == "hotime" && context.RouterString[2] == "wallpaper" {
|
||||
return isFinished
|
||||
}
|
||||
if context.Session(codeIns.FileConfig.GetString("table")+"_id").Data == nil {
|
||||
context.Display(2, "你还没有登录")
|
||||
return true
|
||||
|
||||
@@ -6,6 +6,7 @@ import (
|
||||
"github.com/360EntSecGroup-Skylar/excelize"
|
||||
"io"
|
||||
"io/ioutil"
|
||||
"net/http"
|
||||
"os"
|
||||
"strings"
|
||||
"time"
|
||||
@@ -907,6 +908,53 @@ var TptProject = Proj{
|
||||
|
||||
that.Display(0, conf)
|
||||
},
|
||||
//壁纸
|
||||
"wallpaper": func(that *Context) {
|
||||
random := ObjToCeilInt(that.Req.FormValue("random")) //壁纸随机,0为默认,1,为随机
|
||||
|
||||
tp := ObjToCeilInt(that.Req.FormValue("type")) //返回类型,0,json,1,302跳转到图片
|
||||
|
||||
images := that.Application.Cache("wallpaper").ToSlice()
|
||||
if images == nil || len(images) == 0 {
|
||||
|
||||
url := "https://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=7&mkt=zh-CN"
|
||||
res, e := http.Get(url)
|
||||
if e != nil {
|
||||
that.Display(4, "无法取得数据0")
|
||||
return
|
||||
}
|
||||
defer res.Body.Close()
|
||||
b, err := ioutil.ReadAll(res.Body)
|
||||
if err != nil {
|
||||
that.Display(4, "无法取得数据1")
|
||||
return
|
||||
}
|
||||
w := ObjToMap(string(b))
|
||||
if len(w) == 0 {
|
||||
that.Display(4, "无法取得数据2")
|
||||
return
|
||||
}
|
||||
|
||||
images = w.GetSlice("images")
|
||||
that.Application.Cache("wallpaper", images)
|
||||
}
|
||||
if random == 1 {
|
||||
random = RandX(0, len(images)-1)
|
||||
}
|
||||
|
||||
img := images.GetMap(random)
|
||||
if !strings.Contains(img.GetString("url"), "http") {
|
||||
img["url"] = "https://cn.bing.com" + img.GetString("url")
|
||||
}
|
||||
if tp == 0 {
|
||||
that.Display(0, img)
|
||||
return
|
||||
}
|
||||
|
||||
that.Resp.Header().Set("Location", img.GetString("url"))
|
||||
that.Resp.WriteHeader(302)
|
||||
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
+21
-12
@@ -1069,9 +1069,10 @@ func (that *MakeCode) Search(table string, userData Map, req *http.Request, db *
|
||||
parentID = userData.GetCeilInt(table + "_id")
|
||||
data["OR"] = Map{table + ".id": parentID, table + ".parent_id": nil}
|
||||
} else {
|
||||
//是否展示全部子级
|
||||
where := Map{}
|
||||
if req.FormValue("showall") == "1" {
|
||||
|
||||
if req.FormValue("showself") != "" {
|
||||
where := Map{}
|
||||
for _, v := range reqValue {
|
||||
if len(where) == 0 {
|
||||
where[table+"."+parent_idsStr] = "," + v + ","
|
||||
@@ -1079,9 +1080,21 @@ func (that *MakeCode) Search(table string, userData Map, req *http.Request, db *
|
||||
}
|
||||
where = Map{"OR": where, table + "." + parent_idsStr: "," + v + ","}
|
||||
}
|
||||
data["OR"] = Map{"OR": where, table + ".id": reqValue}
|
||||
|
||||
} else {
|
||||
data[table+".parent_id"] = reqValue
|
||||
where[table+".parent_id"] = reqValue
|
||||
}
|
||||
//是否展示自己
|
||||
if req.FormValue("showself") == "1" {
|
||||
if len(where) == 0 {
|
||||
data["OR"] = Map{table + ".id": reqValue}
|
||||
} else {
|
||||
data["OR"] = Map{"OR": where, table + ".id": reqValue}
|
||||
}
|
||||
} else {
|
||||
if len(where) != 0 {
|
||||
data["OR"] = where
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1093,14 +1106,9 @@ func (that *MakeCode) Search(table string, userData Map, req *http.Request, db *
|
||||
if parent_idsStr != "" {
|
||||
|
||||
where := Map{}
|
||||
if len(reqValue) == 1 {
|
||||
if len(where) == 0 {
|
||||
where[table+"."+searchItem.GetString("name")] = reqValue[0]
|
||||
|
||||
} else {
|
||||
where = Map{"OR": where, table + "." + searchItem.GetString("name"): reqValue[0]}
|
||||
}
|
||||
|
||||
//是否全部展示
|
||||
if req.FormValue("showall") != "1" {
|
||||
where[table+"."+searchItem.GetString("name")] = reqValue
|
||||
} else {
|
||||
for _, v := range reqValue {
|
||||
if len(where) == 0 {
|
||||
@@ -1110,6 +1118,7 @@ func (that *MakeCode) Search(table string, userData Map, req *http.Request, db *
|
||||
where = Map{"OR": where, searchItem.GetString("link") + "." + parent_idsStr: "," + v + ","}
|
||||
}
|
||||
}
|
||||
|
||||
//用户
|
||||
if userData[searchItem.GetString("name")] != nil {
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ import (
|
||||
"encoding/hex"
|
||||
"math"
|
||||
"strings"
|
||||
"time"
|
||||
)
|
||||
|
||||
//安全锁
|
||||
@@ -36,6 +37,42 @@ func StrFirstToUpper(str string) string {
|
||||
return strings.ToUpper(first) + other
|
||||
}
|
||||
|
||||
// 时间转字符串,第二个参数支持1-5对应显示年月日时分秒
|
||||
func Time2Str(t *time.Time, qu ...interface{}) string {
|
||||
if t == nil || t.Unix() < 0 {
|
||||
return ""
|
||||
}
|
||||
tp := 5
|
||||
if len(qu) != 0 {
|
||||
tp = (qu[0]).(int)
|
||||
}
|
||||
|
||||
switch tp {
|
||||
case 1:
|
||||
return t.Format("2006-01")
|
||||
case 2:
|
||||
return t.Format("2006-01-02")
|
||||
case 3:
|
||||
return t.Format("2006-01-02 15")
|
||||
case 4:
|
||||
return t.Format("2006-01-02 15:04")
|
||||
case 5:
|
||||
return t.Format("2006-01-02 15:04:05")
|
||||
case 12:
|
||||
return t.Format("01-02")
|
||||
case 14:
|
||||
return t.Format("01-02 15:04")
|
||||
case 15:
|
||||
return t.Format("01-02 15:04:05")
|
||||
case 34:
|
||||
return t.Format("15:04")
|
||||
case 35:
|
||||
return t.Format("15:04:05")
|
||||
}
|
||||
return t.Format("2006-01-02 15:04:05")
|
||||
|
||||
}
|
||||
|
||||
// StrLd 相似度计算 ld compares two strings and returns the levenshtein distance between them.
|
||||
func StrLd(s, t string, ignoreCase bool) int {
|
||||
if ignoreCase {
|
||||
|
||||
Reference in New Issue
Block a user