private void LaunchAnswerDialog(string questionID, ListBoxRow row) { answerDialog = new AnswerDialog(questions[questionID], this); SolverApp.GetApp().AddWindow(answerDialog); answerDialog.ShowAll(); }
private async Task AuthenticateUser() { var email = emailBox.Text; var pass = passwordBox.Text; var loginBody = new JObject(); loginBody["email"] = email; loginBody["password"] = pass; var response = await SolverApp.PostRequest("/api/auth/login", loginBody); if (response == null) { return; } SolverApp.SetJwt(response["auth_token"].ToString()); SolverApp.SetEmail(response["email"].ToString()); var mainWindow = new MainWindow(); SolverApp.GetApp().AddWindow(mainWindow); mainWindow.ShowAll(); SolverApp.GetApp().RemoveWindow(this); this.Hide(); }
private void CloseButton_Clicked(object sender, EventArgs args) { SolverApp.GetApp().RemoveWindow(this); issueWindow.Sensitive = true; issueWindow.answerDialog = null; this.Dispose(); }
private void Window_DeleteEvent(object sender, DeleteEventArgs args) { mainWindow.Sensitive = true; mainWindow.issueWindow = null; SolverApp.GetApp().RemoveWindow(this); this.Dispose(); }
private void Window_DeleteEvent(object sender, DeleteEventArgs args) { SolverApp.GetApp().RemoveWindow(this); issueWindow.Sensitive = true; issueWindow.answerDialog = null; this.Dispose(); }
private void LoginButton_Clicked(object sender, EventArgs a) { var loginWindow = new LoginWindow(); SolverApp.GetApp().AddWindow(loginWindow); loginWindow.ShowAll(); SolverApp.GetApp().RemoveWindow(this); this.Hide(); }
private void RegisterButton_Clicked(object sender, EventArgs a) { var registerWindow = new RegisterWindow(); SolverApp.GetApp().AddWindow(registerWindow); registerWindow.ShowAll(); SolverApp.GetApp().RemoveWindow(this); this.Hide(); }
private void AddQuestionButton_Clicked(object sender, EventArgs a) { if (issue.State == "unassigned") { return; } var questionDialog = new QuestionDialog(this, issue.ID); SolverApp.GetApp().AddWindow(questionDialog); questionDialog.ShowAll(); }
private async Task FetchQuestions() { var endpoint = $"/api/solver/{issue.ID}/question"; var response = await SolverApp.GetRequest(endpoint); var fetchedQuestions = response["questions"].ToObject <JArray>(); for (var i = 0; i < fetchedQuestions.Count; i++) { InsertQuestion(fetchedQuestions[i]); } }
private async Task Solve() { var endpoint = $"/api/solver/{issue.ID}/solved"; var requestBody = new JObject(); requestBody["answer"] = answerBox.Buffer.Text; var response = await SolverApp.PutRequest(endpoint, requestBody); if (response["issue"] != null) { mainWindow.Sensitive = true; mainWindow.myIssuesList.Remove(row); this.Hide(); SolverApp.GetApp().RemoveWindow(this); } }
private async Task AutheticateSolver() { try { var email = emailBox.Text; var name = nameBox.Text; var pass = passBox.Text; var conf = confBox.Text; var registerBody = new JObject(); registerBody["email"] = email; registerBody["username"] = name; registerBody["password"] = pass; registerBody["passwordConf"] = conf; registerBody["role"] = "solver"; var response = await SolverApp.PostRequest("/api/users/", registerBody); if (response == null) { return; } var loginBody = new JObject(); loginBody["email"] = email; loginBody["password"] = pass; var loginResponse = await SolverApp.PostRequest("/api/auth/login", loginBody); if (loginResponse == null) { return; } SolverApp.SetJwt(loginResponse["auth_token"].ToString()); SolverApp.SetEmail(loginResponse["email"].ToString()); var mainWindow = new MainWindow(); SolverApp.GetApp().AddWindow(mainWindow); mainWindow.ShowAll(); SolverApp.GetApp().RemoveWindow(this); this.Hide(); } catch (Exception e) { Console.WriteLine(e); } }
private async Task Assign() { var endpoint = $"/api/solver/{issue.ID}/assigned"; var requestBody = new JObject(); var response = await SolverApp.PutRequest(endpoint, requestBody); if (response["issue"] != null) { solveButton.Label = "Solve"; issue.State = "assigned"; solveButton.Clicked -= AssignButton_Clicked; solveButton.Clicked += SolveButton_Clicked; mainWindow.unassignedIssues.Remove(row); mainWindow.myIssuesList.Add(row); } }
public static void Main(string[] args) { DotNetEnv.Env.Load(); Application.Init(); var app = new Application(null, GLib.ApplicationFlags.None); app.Register(GLib.Cancellable.Current); SolverApp.Init(app); var win = new LoginWindow(); app.AddWindow(win); win.Show(); Application.Run(); }
private async Task SendQuestion() { try { Console.WriteLine("coiso"); var endpoint = $"http://localhost:3000/api/solver/{issueID}/question"; var requestBody = new JObject(); requestBody["question"] = questionText.Buffer.Text; requestBody["department"] = departmentEntry.Text; var response = await SolverApp.PostRequest(endpoint, requestBody); if (response["question"] == null) { return; } var responseQuestion = response["question"]; issueWindow.questions[responseQuestion["question"].ToString()] = new Question() { Text = responseQuestion["question"].ToString(), Department = responseQuestion["department"].ToString(), State = responseQuestion["state"].ToString(), Date = responseQuestion["createdAt"].ToString() }; var questionRow = new ListBoxRow(); questionRow.Add(new Label { Text = responseQuestion["question"].ToString(), Expand = true }); issueWindow.questionsList.Add(questionRow); questionRow.ShowAll(); issueWindow.Sensitive = true; SolverApp.GetApp().RemoveWindow(this); this.Dispose(); } catch (Exception e) { Console.WriteLine(e.ToString()); } }
private async Task FetchIssues() { var response = await SolverApp.GetRequest("/api/solver/"); if (response["issues"] == null) { return; } var fetchedIssues = response["issues"].ToObject <JArray>(); for (int i = 0; i < fetchedIssues.Count; i++) { var issue = fetchedIssues[i]; if (issue["assignee"].ToObject <String>() == null) { InsertUnassignedIssue(issue); } else if (issue["assignee"].ToObject <String>() == SolverApp.GetEmail() && issue["state"].ToObject <String>() != "solved") { InsertSolverIssues(issue); } } }
private void LaunchIssueWindow(string issueID, ListBoxRow row) { issueWindow = new IssueWindow(issues[issueID], this, row); SolverApp.GetApp().AddWindow(issueWindow); issueWindow.ShowAll(); }
private void CancelButton_Clicked(object sender, EventArgs args) { SolverApp.GetApp().RemoveWindow(this); issueWindow.Sensitive = true; this.Dispose(); }