Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create an Angular portlet to be able to make a CA search. #30178

Open
4 tasks
Tracked by #30141
hmoreras opened this issue Sep 27, 2024 · 0 comments
Open
4 tasks
Tracked by #30141

Create an Angular portlet to be able to make a CA search. #30178

hmoreras opened this issue Sep 27, 2024 · 0 comments

Comments

@hmoreras
Copy link
Contributor

hmoreras commented Sep 27, 2024

Parent Issue

User Story

As a user, I want to be able to run queries for Content Analytics using a new portlet in Angular, so that I can easily access and analyze content data.

Acceptance Criteria

  1. Create a new Angular portlet for Content Analytics in Dev Tools > Content Analytics.
  2. Implement a text area input for users to enter their queries.
  3. Design the portlet layout similar to the Elastic Search screen.
  4. Integrate with the existing endpoint to fetch query results.
  5. Display query results in a clear and organized manner.
  6. Implement error handling for invalid queries or API errors.
  7. Add loading indicators for when queries are being processed.

The view need to be similar to ES Query
CleanShot 2024-09-30 at 11 39 53@2x

Proposed Objective

Core Features

Proposed Priority

Priority 2 - Important

External Links... Slack Conversations, Support Tickets, Figma Designs, etc.

No response

Assumptions & Initiation Needs

  • An endpoint is available to process queries and return results.
  • The development team has access to the Elastic Search screen design for reference.

Quality Assurance Notes & Workarounds

  • Set the following env var in your docker-compose.yml file: DOT_FEATURE_FLAG_CONTENT_ANALYTICS: 'true'
  • Start up dotCMS with the Full Starter and an Enterprise License.
  • Set up the Analytics Integration App. Make sure that the token is generated correctly and no errors are present.
  • the endpoint requires authentication:
POST {{serverURL}}/api/v1/analytics/content/_query

JSON Body:

{
    "query": {
        "measures": [
            "request.count"
        ],
        "orders": "request.count DESC",
        "dimensions": [
            "request.url",
            "request.pageId",
            "request.pageTitle"
        ],
        "filters": "request.whatAmI = ['PAGE']",
        "limit": 100,
        "offset": 1
    }
}

You'll get results similar to the following:

{
    "entity": {
        "results": [
            {
                "all": {
                    "request.count": "4",
                    "request.pageId": "9c5f42da-31b1-4935-9df6-153f5de1bdf2",
                    "request.pageTitle": "Blogs",
                    "request.url": "/blog/"
                }
            },
            {
                "all": {
                    "request.count": "4",
                    "request.pageId": "44a076ad-affa-49d4-97b3-6caa3824e7e8",
                    "request.pageTitle": "Destinations",
                    "request.url": "/destinations/"
                }
            },
            ...
            ...
            ...
        ]
    },
    "errors": [],
    "i18nMessagesMap": {},
    "messages": [],
    "pagination": null,
    "permissions": []
}

Tasks

  1. Team : Falcon Type : New Functionality dotCMS : Analytics
    hmoreras
  2. Team : Falcon Type : New Functionality dotCMS : Analytics
  3. Team : Falcon Type : New Functionality dotCMS : Analytics
  4. Team : Falcon Type : New Functionality dotCMS : Analytics
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Current Sprint Backlog
Development

No branches or pull requests

1 participant