Search for scripts

This commit is contained in:
Magnus Åhall 2025-08-07 17:55:04 +02:00
parent 83f858285f
commit 38eef01e34
2 changed files with 68 additions and 10 deletions

View file

@ -26,7 +26,7 @@ type Hook struct {
SSH string
}
func GetScripts() (scripts []Script, err error) {// {{{
func GetScripts() (scripts []Script, err error) { // {{{
scripts = []Script{}
var rows *sqlx.Rows
@ -54,8 +54,8 @@ func GetScripts() (scripts []Script, err error) {// {{{
}
return
}// }}}
func UpdateScript(scriptID int, data []byte) (script Script, err error) {// {{{
} // }}}
func UpdateScript(scriptID int, data []byte) (script Script, err error) { // {{{
err = json.Unmarshal(data, &script)
if err != nil {
err = werr.Wrap(err)
@ -106,29 +106,57 @@ func UpdateScript(scriptID int, data []byte) (script Script, err error) {// {{{
}
return
}// }}}
func DeleteScript(scriptID int) (err error) {// {{{
} // }}}
func DeleteScript(scriptID int) (err error) { // {{{
_, err = db.Exec(`DELETE FROM script WHERE id = $1`, scriptID)
if err != nil {
err = werr.Wrap(err)
return
}
return
}// }}}
} // }}}
func SearchScripts(search string) (scripts []Script, err error) { // {{{
scripts = []Script{}
func UpdateHook(hook Hook) (err error) {// {{{
row := db.QueryRow(`
SELECT
json_agg(script) AS scripts
FROM public.script
WHERE
name ILIKE $1
`,
search,
)
var jsonBody []byte
err = row.Scan(&jsonBody)
if err != nil {
err = werr.Wrap(err)
return
}
err = json.Unmarshal(jsonBody, &scripts)
if err != nil {
err = werr.Wrap(err)
return
}
return
} // }}}
func UpdateHook(hook Hook) (err error) { // {{{
_, err = db.Exec(`UPDATE hook SET ssh=$2 WHERE id=$1`, hook.ID, strings.TrimSpace(hook.SSH))
if err != nil {
err = werr.Wrap(err)
return
}
return
}// }}}
func DeleteHook(hookID int) (err error) {// {{{
} // }}}
func DeleteHook(hookID int) (err error) { // {{{
_, err = db.Exec(`DELETE FROM hook WHERE id=$1`, hookID)
if err != nil {
err = werr.Wrap(err)
return
}
return
}// }}}
} // }}}