Add page for configuring ArcGIS integration.

This commit is contained in:
Eli Ribble 2026-02-25 17:36:19 +00:00
parent 5e3a97272a
commit 7080222fbc
No known key found for this signature in database
5 changed files with 282 additions and 9 deletions

View file

@ -59,8 +59,9 @@ func Router() chi.Router {
r.Method("GET", "/service-request", authenticatedHandler(getServiceRequestList))
r.Method("GET", "/service-request/{id}", authenticatedHandler(getServiceRequestDetail))
r.Method("GET", "/setting", authenticatedHandler(getSetting))
r.Method("GET", "/setting/organization", authenticatedHandler(getSettingOrganization))
r.Method("GET", "/setting/integration", authenticatedHandler(getSettingIntegration))
r.Method("GET", "/setting/integration/arcgis", authenticatedHandler(getSettingIntegrationArcgis))
r.Method("GET", "/setting/organization", authenticatedHandler(getSettingOrganization))
r.Method("GET", "/setting/pesticide", authenticatedHandler(getSettingPesticide))
r.Method("GET", "/setting/pesticide/add", authenticatedHandler(getSettingPesticideAdd))
r.Method("GET", "/setting/user", authenticatedHandler(getSettingUserList))

View file

@ -76,6 +76,16 @@ func getSettingIntegration(ctx context.Context, r *http.Request, org *models.Org
}
return newResponse("sync/setting-integration.html", data), nil
}
func getSettingIntegrationArcgis(ctx context.Context, r *http.Request, org *models.Organization, u *models.User) (*response[contentSettingIntegration], *errorWithStatus) {
oauth, err := arcgis.GetOAuthForUser(ctx, u)
if err != nil {
return nil, newError("Failed to get oauth: %w", err)
}
data := contentSettingIntegration{
ArcGISOAuth: oauth,
}
return newResponse("sync/setting-integration-arcgis.html", data), nil
}
type contentSettingPlaceholder struct{}

View file

@ -15,6 +15,7 @@ type contentURL struct {
}
type contentURLSetting struct {
ArcGIS string
Fieldseeker string
Integration string
Organization string
@ -38,6 +39,7 @@ func newContentURL() contentURL {
}
func newContentURLSetting() contentURLSetting {
return contentURLSetting{
ArcGIS: config.MakeURLNidus("/setting/integration/arcgis"),
Fieldseeker: config.MakeURLNidus("/setting/integration/fieldseeker"),
Integration: config.MakeURLNidus("/setting/integration"),
Organization: config.MakeURLNidus("/setting/organization"),