/
wax_boy
/
semaphore_custom
Обзор
Документация
Войти
/
wax_boy
/
semaphore_custom
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
develop
api/options.go
55 строк
1 KB
Denis Gukov
sec/golangci (#3817)
02 май 2026, 16:52
Не верифицирован
02 май 2026, 16:52
71e2baf
Код
Авторство
О чём код?
package api import ( "net/http" "github.com/semaphoreui/semaphore/api/helpers" "github.com/semaphoreui/semaphore/db" ) func setOption(w http.ResponseWriter, r *http.Request) { currentUser := helpers.GetFromContext(r, "user").(*db.User) if !currentUser.Admin { helpers.WriteJSON(w, http.StatusForbidden, map[string]string{ "error": "User must be admin", }) return } var option db.Option if !helpers.Bind(w, r, &option) { return } err := helpers.Store(r).SetOption(option.Key, option.Value) if err != nil { helpers.WriteJSON(w, http.StatusInternalServerError, map[string]string{ "error": "Can not set option", }) return } helpers.WriteJSON(w, http.StatusOK, option) } func getOptions(w http.ResponseWriter, r *http.Request) { currentUser := helpers.GetFromContext(r, "user").(*db.User) if !currentUser.Admin { helpers.WriteJSON(w, http.StatusForbidden, map[string]string{ "error": "User must be admin", }) return } options, err := helpers.Store(r).GetOptions(db.RetrieveQueryParams{}) if err != nil { helpers.WriteJSON(w, http.StatusInternalServerError, map[string]string{ "error": "Can not get options", }) return } helpers.WriteJSON(w, http.StatusOK, options) }