Skip to content

Commit eccf210

Browse files
committed
Fix messy / broken Homescript functions in API
1 parent aa1f8b0 commit eccf210

File tree

1 file changed

+12
-23
lines changed

1 file changed

+12
-23
lines changed

server/api/homescript.go

Lines changed: 12 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -148,23 +148,23 @@ func LintHomescriptId(w http.ResponseWriter, r *http.Request) {
148148
hmsData, found, err := database.GetUserHomescriptById(request.Id, username)
149149
if err != nil {
150150
w.WriteHeader(http.StatusServiceUnavailable)
151-
Res(w, Response{Success: false, Message: "could not retrieve Homescript from database", Error: "database failure"})
151+
Res(w, Response{Success: false, Message: "Could not retrieve Homescript from database", Error: "database failure"})
152152
return
153153
}
154154
if !found {
155155
w.WriteHeader(http.StatusUnprocessableEntity)
156156
Res(w, Response{Success: false, Message: "Homescript not found", Error: "no data associated with id"})
157157
return
158158
}
159-
// Run the Homescript
160-
output, exitCode, hmsErrors := homescript.Run(username, request.Id, hmsData.Data.Code, false, args)
159+
// Lint the Homescript
160+
output, exitCode, hmsErrors := homescript.Run(username, request.Id, hmsData.Data.Code, true, args)
161161
if len(hmsErrors) > 0 {
162162
w.WriteHeader(http.StatusInternalServerError)
163163
if err := json.NewEncoder(w).Encode(
164164
HomescriptResponse{
165165
Success: false,
166166
Exitcode: exitCode,
167-
Message: "Homescript terminated abnormally",
167+
Message: "Linting discovered errors",
168168
Output: output,
169169
Errors: hmsErrors,
170170
}); err != nil {
@@ -179,7 +179,7 @@ func LintHomescriptId(w http.ResponseWriter, r *http.Request) {
179179
HomescriptResponse{
180180
Success: false,
181181
Exitcode: exitCode,
182-
Message: "Homescript exited with a non-0 status code",
182+
Message: "Linting exited with non-0 status code but ran successfully",
183183
Output: output,
184184
Errors: hmsErrors,
185185
}); err != nil {
@@ -191,7 +191,7 @@ func LintHomescriptId(w http.ResponseWriter, r *http.Request) {
191191
if err := json.NewEncoder(w).Encode(
192192
HomescriptResponse{
193193
Success: true,
194-
Message: "Homescript ran successfully",
194+
Message: "Linting discovered no errors",
195195
Output: output,
196196
Exitcode: exitCode,
197197
Errors: hmsErrors,
@@ -210,7 +210,7 @@ func RunHomescriptString(w http.ResponseWriter, r *http.Request) {
210210
}
211211
decoder := json.NewDecoder(r.Body)
212212
decoder.DisallowUnknownFields()
213-
var request HomescriptIdRunRequest
213+
var request HomescriptLiveRunRequest
214214
if err := decoder.Decode(&request); err != nil {
215215
w.WriteHeader(http.StatusBadRequest)
216216
Res(w, Response{Success: false, Message: "bad request", Error: "invalid request body"})
@@ -221,26 +221,15 @@ func RunHomescriptString(w http.ResponseWriter, r *http.Request) {
221221
for _, arg := range request.Args {
222222
args[arg.Key] = arg.Value
223223
}
224-
hmsData, found, err := database.GetUserHomescriptById(request.Id, username)
225-
if err != nil {
226-
w.WriteHeader(http.StatusServiceUnavailable)
227-
Res(w, Response{Success: false, Message: "could not retrieve Homescript from database", Error: "database failure"})
228-
return
229-
}
230-
if !found {
231-
w.WriteHeader(http.StatusUnprocessableEntity)
232-
Res(w, Response{Success: false, Message: "Homescript not found", Error: "no data associated with id"})
233-
return
234-
}
235-
// Lint the Homescript
236-
output, exitCode, hmsErrors := homescript.Run(username, request.Id, hmsData.Data.Code, true, args)
224+
// Run the Homescript
225+
output, exitCode, hmsErrors := homescript.Run(username, "live", request.Code, false, args)
237226
if len(hmsErrors) > 0 {
238227
w.WriteHeader(http.StatusInternalServerError)
239228
if err := json.NewEncoder(w).Encode(
240229
HomescriptResponse{
241230
Success: false,
242231
Exitcode: exitCode,
243-
Message: "Linting discovered errors",
232+
Message: "Homescript terminated abnormally",
244233
Output: output,
245234
Errors: hmsErrors,
246235
}); err != nil {
@@ -255,7 +244,7 @@ func RunHomescriptString(w http.ResponseWriter, r *http.Request) {
255244
HomescriptResponse{
256245
Success: false,
257246
Exitcode: exitCode,
258-
Message: "Linting exited with non-0 status code but ran successfully",
247+
Message: "Homescript exited with a non-0 status code",
259248
Output: output,
260249
Errors: hmsErrors,
261250
}); err != nil {
@@ -267,7 +256,7 @@ func RunHomescriptString(w http.ResponseWriter, r *http.Request) {
267256
if err := json.NewEncoder(w).Encode(
268257
HomescriptResponse{
269258
Success: true,
270-
Message: "Linting discovered no errors",
259+
Message: "Homescript ran successfully",
271260
Output: output,
272261
Exitcode: exitCode,
273262
Errors: hmsErrors,

0 commit comments

Comments
 (0)