diff --git a/backend/go-app/main.go b/backend/go-app/main.go
index f86a557c..501384cc 100644
--- a/backend/go-app/main.go
+++ b/backend/go-app/main.go
@@ -728,9 +728,8 @@ func handleRegisterVerification(resp http.ResponseWriter, request *http.Request)
Userdata := users[0]
- // FIXME: Not for cloud!
Userdata.Verified = true
- err = shuffle.SetUser(ctx, &Userdata)
+ err = shuffle.SetUser(ctx, &Userdata, true)
if err != nil {
log.Printf("Failed adding verification for user %s: %s", Userdata.Username, err)
resp.WriteHeader(401)
@@ -740,7 +739,7 @@ func handleRegisterVerification(resp http.ResponseWriter, request *http.Request)
resp.WriteHeader(200)
resp.Write([]byte(fmt.Sprintf(`{"success": true, "reason": "%s"}`, defaultMessage)))
- log.Printf("%s SUCCESSFULLY FINISHED REGISTRATION", Userdata.Username)
+ log.Printf("[INFO] %s SUCCESSFULLY FINISHED REGISTRATION", Userdata.Username)
}
func handleSetEnvironments(resp http.ResponseWriter, request *http.Request) {
@@ -928,7 +927,7 @@ func createNewUser(username, password, role, apikey string, org shuffle.OrgMini)
newUser.Id = ID.String()
newUser.VerificationToken = verifyToken.String()
- err = shuffle.SetUser(ctx, newUser)
+ err = shuffle.SetUser(ctx, newUser, true)
if err != nil {
log.Printf("Error adding User %s: %s", username, err)
return err
@@ -941,14 +940,14 @@ func createNewUser(username, password, role, apikey string, org shuffle.OrgMini)
if err != nil {
log.Printf("Failed updating org with user %s", newUser.Username)
} else {
- log.Printf("Successfully updated org with user %s!", newUser.Username)
+ log.Printf("[INFO] Successfully updated org with user %s!", newUser.Username)
}
}
- err = increaseStatisticsField(ctx, "successful_register", username, 1, org.Id)
- if err != nil {
- log.Printf("Failed to increase total apps loaded stats: %s", err)
- }
+ //err = increaseStatisticsField(ctx, "successful_register", username, 1, org.Id)
+ //if err != nil {
+ // log.Printf("Failed to increase total apps loaded stats: %s", err)
+ //}
return nil
}
@@ -1152,7 +1151,7 @@ func handleUpdateUser(resp http.ResponseWriter, request *http.Request) {
foundUser.Username = t.Username
}
- err = shuffle.SetUser(ctx, foundUser)
+ err = shuffle.SetUser(ctx, foundUser, true)
if err != nil {
log.Printf("Error patching user %s: %s", foundUser.Username, err)
resp.WriteHeader(401)
@@ -1287,7 +1286,7 @@ func handleInfo(resp http.ResponseWriter, request *http.Request) {
userInfo.Orgs = newStringOrgs
- err = shuffle.SetUser(ctx, &userInfo)
+ err = shuffle.SetUser(ctx, &userInfo, true)
if err != nil {
log.Printf("Error patching User for activeOrg: %s", err)
} else {
@@ -1304,7 +1303,7 @@ func handleInfo(resp http.ResponseWriter, request *http.Request) {
userInfo.ActiveOrg = shuffle.OrgMini{
Id: userInfo.Orgs[0],
}
- err = shuffle.SetUser(ctx, &userInfo)
+ err = shuffle.SetUser(ctx, &userInfo, true)
if err != nil {
log.Printf("Error patching User for activeOrg: %s", err)
}
@@ -1423,7 +1422,7 @@ func handlePasswordReset(resp http.ResponseWriter, request *http.Request) {
Userdata.Password = string(hashedPassword)
Userdata.ResetTimeout = 0
Userdata.ResetReference = ""
- err = shuffle.SetUser(ctx, &Userdata)
+ err = shuffle.SetUser(ctx, &Userdata, true)
if err != nil {
log.Printf("Error adding User %s: %s", Userdata.Username, err)
resp.WriteHeader(200)
@@ -1630,7 +1629,7 @@ func handleLogin(resp http.ResponseWriter, request *http.Request) {
}
Userdata.Session = sessionToken
- err = shuffle.SetUser(ctx, &Userdata)
+ err = shuffle.SetUser(ctx, &Userdata, true)
if err != nil {
log.Printf("Failed updating user when setting session: %s", err)
resp.WriteHeader(500)
@@ -1641,7 +1640,7 @@ func handleLogin(resp http.ResponseWriter, request *http.Request) {
loginData = fmt.Sprintf(`{"success": true, "cookies": [{"key": "session_token", "value": "%s", "expiration": %d}]}`, sessionToken, expiration.Unix())
}
- log.Printf("%s SUCCESSFULLY LOGGED IN with session %s", data.Username, Userdata.Session)
+ log.Printf("[INFO] %s SUCCESSFULLY LOGGED IN with session %s", data.Username, Userdata.Session)
resp.WriteHeader(200)
resp.Write([]byte(loginData))
@@ -4204,6 +4203,7 @@ func verifySwagger(resp http.ResponseWriter, request *http.Request) {
swaggerLoader.IsExternalRefsAllowed = true
swagger, err := swaggerLoader.LoadSwaggerFromData(body)
if err != nil {
+ log.Println(string(body))
log.Printf("[ERROR] Swagger validation error: %s", err)
resp.WriteHeader(500)
resp.Write([]byte(`{"success": false, "reason": "Failed verifying openapi"}`))
@@ -4389,7 +4389,7 @@ func verifySwagger(resp http.ResponseWriter, request *http.Request) {
user.PrivateApps[foundNumber] = api
}
- err = shuffle.SetUser(ctx, &user)
+ err = shuffle.SetUser(ctx, &user, true)
if err != nil {
log.Printf("[ERROR] Failed adding verification for user %s: %s", user.Username, err)
resp.WriteHeader(500)
@@ -5083,7 +5083,7 @@ func runInit(ctx context.Context) {
}
}
- err = shuffle.SetUser(ctx, &user)
+ err = shuffle.SetUser(ctx, &user, true)
if err != nil {
log.Printf("Failed to reset user")
} else {
@@ -5132,7 +5132,7 @@ func runInit(ctx context.Context) {
Name: activeOrgs[0].Name,
}
- err = shuffle.SetUser(ctx, &user)
+ err = shuffle.SetUser(ctx, &user, true)
if err != nil {
log.Printf("Failed updating user %s with org", user.Username)
} else {
diff --git a/backend/go-app/oauth2.go b/backend/go-app/oauth2.go
index 164c803d..71d3cbbd 100644
--- a/backend/go-app/oauth2.go
+++ b/backend/go-app/oauth2.go
@@ -458,7 +458,7 @@ func handleNewOutlookRegister(resp http.ResponseWriter, request *http.Request) {
})
// Set apikey for the user if they don't have one
- err = shuffle.SetUser(ctx, Userdata)
+ err = shuffle.SetUser(ctx, Userdata, true)
if err != nil {
log.Printf("Failed setting user data for %s: %s", Userdata.Username, err)
resp.WriteHeader(401)
diff --git a/backend/go-app/walkoff.go b/backend/go-app/walkoff.go
index 20ab9791..4952f40f 100644
--- a/backend/go-app/walkoff.go
+++ b/backend/go-app/walkoff.go
@@ -2051,7 +2051,7 @@ func handleExecution(id string, workflow shuffle.Workflow, request *http.Request
//log.Println(body)
//if string(body)[0] == "\"" && string(body)[string(body)
- log.Printf("Body: %s", string(body))
+ log.Printf("[INFO] Body: %s", string(body))
}
var execution shuffle.ExecutionRequest
@@ -2093,9 +2093,9 @@ func handleExecution(id string, workflow shuffle.Workflow, request *http.Request
return shuffle.WorkflowExecution{}, fmt.Sprintf("Startnode %s was not found in actions", workflow.Start), errors.New(fmt.Sprintf("Startnode %s was not found in actions", workflow.Start))
}
} else if len(execution.Start) > 0 {
-
- log.Printf("[ERROR] START ACTION %s IS WRONG ID LENGTH %d!", execution.Start, len(execution.Start))
- return shuffle.WorkflowExecution{}, fmt.Sprintf("Startnode %s was not found in actions", execution.Start), errors.New(fmt.Sprintf("Startnode %s was not found in actions", execution.Start))
+ //log.Printf("[INFO] !")
+ //log.Printf("[ERROR] START ACTION %s IS WRONG ID LENGTH %d!", execution.Start, len(execution.Start))
+ //return shuffle.WorkflowExecution{}, fmt.Sprintf("Startnode %s was not found in actions", execution.Start), errors.New(fmt.Sprintf("Startnode %s was not found in actions", execution.Start))
}
if len(execution.ExecutionId) == 36 {
@@ -2245,10 +2245,10 @@ func handleExecution(id string, workflow shuffle.Workflow, request *http.Request
//log.Println(string(mappedData))
- if len(workflowExecution.Start) == 0 {
+ if len(workflowExecution.Start) == 0 && len(workflowExecution.Workflow.Start) > 0 {
workflowExecution.Start = workflowExecution.Workflow.Start
}
- log.Printf("[INFO] New startnode: %s", workflowExecution.Start)
+ //log.Printf("[INFO] New startnode: %s", workflowExecution.Start)
childNodes := findChildNodes(workflowExecution, workflowExecution.Start)
@@ -2411,13 +2411,20 @@ func handleExecution(id string, workflow shuffle.Workflow, request *http.Request
}
}
}
- //childNodes := findChildNodes(workflowExecution, workflowExecution.Start)
if !startFound {
- log.Printf("[ERROR] Startnode %s doesn't exist!!", workflowExecution.Start)
- return shuffle.WorkflowExecution{}, fmt.Sprintf("Workflow action %s doesn't exist in workflow", workflowExecution.Start), errors.New(fmt.Sprintf(`Workflow start node "%s" doesn't exist. Exiting!`, workflowExecution.Start))
+ if len(workflowExecution.Start) == 0 && len(workflowExecution.Workflow.Start) > 0 {
+ workflowExecution.Start = workflow.Start
+ } else if len(workflowExecution.Workflow.Actions) > 0 {
+ workflowExecution.Start = workflowExecution.Workflow.Actions[0].ID
+ } else {
+ log.Printf("[ERROR] Startnode %s doesn't exist!!", workflowExecution.Start)
+ return shuffle.WorkflowExecution{}, fmt.Sprintf("Workflow action %s doesn't exist in workflow", workflowExecution.Start), errors.New(fmt.Sprintf(`Workflow start node "%s" doesn't exist. Exiting!`, workflowExecution.Start))
+ }
}
+ //log.Printf("EXECUTION START: %s", workflowExecution.Start)
+
// Verification for execution environments
workflowExecution.Results = defaultResults
workflowExecution.Workflow.Actions = newActions
@@ -3364,7 +3371,7 @@ func deleteWorkflowApp(resp http.ResponseWriter, request *http.Request) {
}
user.PrivateApps = privateApps
- err = shuffle.SetUser(ctx, &user)
+ err = shuffle.SetUser(ctx, &user, true)
if err != nil {
log.Printf("[ERROR] Failed removing %s app for user %s: %s", app.Name, user.Username, err)
resp.WriteHeader(401)
@@ -4197,7 +4204,7 @@ func iterateOpenApiGithub(fs billy.Filesystem, dir []os.FileInfo, extra string,
if !found {
err = shuffle.SetWorkflowAppDatastore(ctx, api, api.ID)
if err != nil {
- log.Printf("Failed setting workflowapp in loop: %s", err)
+ log.Printf("[WARNING] Failed setting workflowapp in loop: %s", err)
continue
} else {
appCounter += 1
@@ -4584,7 +4591,7 @@ func iterateAppGithubFolders(fs billy.Filesystem, dir []os.FileInfo, extra strin
err = shuffle.SetWorkflowAppDatastore(ctx, workflowapp, workflowapp.ID)
if err != nil {
- log.Printf("Failed setting workflowapp: %s", err)
+ log.Printf("[WARNING] Failed setting workflowapp in intro: %s", err)
continue
}
diff --git a/frontend/src/components/ConfigureWorkflow.jsx b/frontend/src/components/ConfigureWorkflow.jsx
index 95457675..5dba1179 100644
--- a/frontend/src/components/ConfigureWorkflow.jsx
+++ b/frontend/src/components/ConfigureWorkflow.jsx
@@ -17,6 +17,7 @@ const Workflow = (props) => {
const [requiredTriggers, setRequiredTriggers] = React.useState([])
const [previousAuth, setPreviousAuth] = React.useState(appAuthentication)
const [firstLoad, setFirstLoad] = React.useState("")
+ const [itemChanged, setItemChanged] = React.useState(false)
var finished = false
if (workflow === undefined || workflow === null) {
@@ -216,6 +217,7 @@ const Workflow = (props) => {
newWebhook(workflow.triggers[trigger.index])
saveWorkflow(workflow)
+ setItemChanged(true)
}}>
{trigger.status !== "running" ? "Start" : "Running"}
@@ -232,6 +234,7 @@ const Workflow = (props) => {
submitSchedule(workflow.triggers[trigger.index], trigger.index)
saveWorkflow(workflow)
+ setItemChanged(true)
}}>
{trigger.status !== "running" ? "Start" : "Running"}
@@ -350,6 +353,7 @@ const Workflow = (props) => {
: