From 4f3236e51e8921b5ec5d28c89ec0ca5f42d8a022 Mon Sep 17 00:00:00 2001 From: Jamie Greunbaum Date: Fri, 24 Mar 2023 17:45:03 -0400 Subject: [PATCH] Submission form will now exit with an error if the product set in the settings doesn't exist on the Bugzilla server. --- .../Unrealzilla/Private/BugSubmissionForm.cpp | 44 +++++++++++-------- Source/Unrealzilla/Public/BugSubmissionForm.h | 2 + 2 files changed, 28 insertions(+), 18 deletions(-) diff --git a/Source/Unrealzilla/Private/BugSubmissionForm.cpp b/Source/Unrealzilla/Private/BugSubmissionForm.cpp index 010f267..fdddc03 100644 --- a/Source/Unrealzilla/Private/BugSubmissionForm.cpp +++ b/Source/Unrealzilla/Private/BugSubmissionForm.cpp @@ -297,26 +297,34 @@ void UBugSubmissionForm::ServerProductInfoResponse(FHttpRequestPtr Request, FHtt this->VersionsList.Add(VersionData.name); } } - } - if (this->VersionsList.Contains(GetGameVersion())) - { - this->VersionButton->SetText(FText::AsCultureInvariant(GetGameVersion())); - } - else if (this->VersionsList.Contains("unspecified")) - { - this->VersionButton->SetText(FText::AsCultureInvariant("unspecified")); - } - else if (this->VersionsList.Contains("Latest")) - { - this->VersionButton->SetText(FText::AsCultureInvariant("Latest")); - } - else if (!this->VersionsList.IsEmpty()) - { - this->VersionButton->SetText(FText::AsCultureInvariant(this->VersionsList[0])); - } + if (this->VersionsList.Contains(GetGameVersion())) + { + this->VersionButton->SetText(FText::AsCultureInvariant(GetGameVersion())); + } + else if (this->VersionsList.Contains("unspecified")) + { + this->VersionButton->SetText(FText::AsCultureInvariant("unspecified")); + } + else if (this->VersionsList.Contains("Latest")) + { + this->VersionButton->SetText(FText::AsCultureInvariant("Latest")); + } + else if (!this->VersionsList.IsEmpty()) + { + this->VersionButton->SetText(FText::AsCultureInvariant(this->VersionsList[0])); + } - this->CheckIfAllInitialResponsesAreIn(); + this->CheckIfAllInitialResponsesAreIn(); + } + else + { + this->ProcessingRequestErrorButton->OnClicked().AddUObject(this, &UBugSubmissionForm::CancelForm); + + FStringFormatOrderedArguments Args; + Args.Add(FStringFormatArg(GetDefault()->ProductName)); + this->ShowProcessingOverlayMessage(FString::Format(TEXT("Could not find data for a product called {0}"), Args)); + } } } else diff --git a/Source/Unrealzilla/Public/BugSubmissionForm.h b/Source/Unrealzilla/Public/BugSubmissionForm.h index 3b03f15..4d58f4a 100644 --- a/Source/Unrealzilla/Public/BugSubmissionForm.h +++ b/Source/Unrealzilla/Public/BugSubmissionForm.h @@ -282,6 +282,8 @@ protected: TObjectPtr ProcessingRequestErrorBox; UPROPERTY(BlueprintReadOnly, meta=(BindWidget)) TObjectPtr ProcessingRequestErrorText; + UPROPERTY(BlueprintReadOnly, meta=(BindWidget)) + TObjectPtr ProcessingRequestErrorButton; UPROPERTY(BlueprintReadOnly) TArray VersionsList;