Skip to content

Implemented REST APIs to manage ideas#121

Merged
david-poindexter merged 10 commits intoDNNCommunity:developfrom
valadas:ideas-api
Feb 3, 2026
Merged

Implemented REST APIs to manage ideas#121
david-poindexter merged 10 commits intoDNNCommunity:developfrom
valadas:ideas-api

Conversation

@valadas
Copy link
Copy Markdown
Member

@valadas valadas commented Feb 3, 2026

Also includes integration tests.
Closes #115
Closes #116

Also includes integratino tests.
Closes DNNCommunity#115
Closes DNNCommunity#116
@valadas valadas added this to the 0.2.0 milestone Feb 3, 2026
@valadas valadas added the enhancement New feature or request label Feb 3, 2026
@valadas valadas requested a review from Copilot February 3, 2026 07:17
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR implements REST APIs for managing ideas, including operations to create, update, search, and soft-delete ideas. It also includes comprehensive integration tests as requested in issue #116.

Changes:

  • Implemented REST API controller (IdeaController) with endpoints for saving, searching, getting details, and requesting deletion of ideas
  • Added integration tests covering all scenarios from issue #116 including permission checks, search functionality, and admin capabilities
  • Generated TypeScript client code for frontend consumption
  • Added request context abstraction (DnnRequestContext) for accessing DNN platform information
  • Consolidated ValidationProblemDetails into ProblemDetails base class

Reviewed changes

Copilot reviewed 21 out of 26 changed files in this pull request and generated 9 comments.

Show a summary per file
File Description
Controllers/IdeaController.cs New REST API controller implementing idea management endpoints
Controllers/Context/DnnRequestContext.cs New context provider for accessing current request information
Controllers/Context/IDnnRequestContext.cs Interface for request context abstraction
module.web/src/services/services.ts Auto-generated TypeScript client for REST APIs
IntegrationTests/Controllers/IdeaControllerTests.cs Comprehensive integration tests covering all requirements from issue #116
IntegrationTests/FakeControllerContext.cs Test infrastructure for controller integration tests
Services/Ideas/IdeaService.cs Fixed ordering issue - now consistently orders results by CreatedAt
Entities/ProblemDetails/ProblemDetails.cs Added Errors collection to base class
Extensions/ApiControllerExtensions.cs New extension method for creating BadRequest responses with error details
resources/App_LocalResources/ModelValidation.resx Added ValidationErrorTitle resource string
Files not reviewed (1)
  • module.web/package-lock.json: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

valadas and others added 9 commits February 3, 2026 02:39
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

@david-poindexter david-poindexter left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image

@david-poindexter david-poindexter merged commit 61a23d3 into DNNCommunity:develop Feb 3, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add integration tests for management of ideas Implement REST APIs to manage ideas

3 participants