2
0

api_setting.go 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. package route
  2. import (
  3. "opennamu/route/tool"
  4. )
  5. func Setting_list() map[string]string {
  6. setting_acl := map[string]string{}
  7. setting_acl["manage_404_page"] = ""
  8. setting_acl["manage_404_page_content"] = ""
  9. setting_acl["bbs_view_acl_all"] = ""
  10. setting_acl["bbs_acl_all"] = ""
  11. setting_acl["bbs_edit_acl_all"] = ""
  12. setting_acl["bbs_comment_acl_all"] = ""
  13. setting_acl["rankup_condition"] = ""
  14. return setting_acl
  15. }
  16. func Api_setting(config tool.Config) string {
  17. db := tool.DB_connect()
  18. defer tool.DB_close(db)
  19. other_set := map[string]string{}
  20. json.Unmarshal([]byte(config.Other_set), &other_set)
  21. setting_acl := Setting_list()
  22. if val, ok := setting_acl[other_set["set_name"]]; ok {
  23. if val != "" {
  24. if !tool.Check_acl(db, "", "", "owner_auth", config.IP) {
  25. return_data := make(map[string]any)
  26. return_data["response"] = "require auth"
  27. json_data, _ := json.Marshal(return_data)
  28. return string(json_data)
  29. }
  30. }
  31. data_coverage := ""
  32. if val, ok := other_set["coverage"]; ok {
  33. data_coverage = val
  34. }
  35. return_data := make(map[string]any)
  36. return_data["response"] = "ok"
  37. return_data["data"] = tool.Get_setting(db, other_set["set_name"], data_coverage)
  38. json_data, _ := json.Marshal(return_data)
  39. return string(json_data)
  40. } else {
  41. return_data := make(map[string]any)
  42. return_data["response"] = "not exist"
  43. json_data, _ := json.Marshal(return_data)
  44. return string(json_data)
  45. }
  46. }