Git Product home page Git Product logo

community's People

Contributors

bodhish avatar coolbung avatar dileepbapat avatar gamemaker1 avatar holashchand avatar jayadinni avatar kesavanp123 avatar krishnakr6 avatar manukalia29 avatar parthlawate avatar pramodkvarma avatar pratikshakhandagale avatar renuka-s avatar snehal0904 avatar srprasanna avatar suraj-shanbhag avatar surendrasinghs avatar suvarnakale avatar tejas-hv avatar tejash-jl avatar varadeth avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

community's Issues

Edit Claim implementation

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]
  • Browser [e.g. stock browser, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

Teacher & Student registration form - email field validation missing

Describe the bug
The email field accept the invalid email address

To Reproduce
Steps to reproduce the behavior:

  1. Insert invalid email address and check by submitting the form

Expected behavior
Should only accept the valid email address

Desktop (please complete the following information):

  • OS: Win 10
  • Browser Chrome
  • Version 93

Additional context
The email field validation applies on the Institute registration form. Should be applied same for Teacher and Student.

Student registration form- the guardian details fields are not treated as required

Describe the bug
If user set Are you above 13? No, then the 2 fields render these are 1. Guardian's Full Name and 2. Guardian's Relation type.
If we set No then these fields should work like required.

To Reproduce
Steps to reproduce the behavior:

  1. Go to the Student Registration form
  2. Set Are you above 13? No.
  3. Leave 1. Guardian's Full Name and 2. Guardian's Relation type fields blank
  4. Fill up other required details and submit the form

Expected behavior
The 1. Guardian's Full Name and 2. Guardian's Relation type fields should not save blank as they may contain required data.

Screenshots
guardian fields

Desktop (please complete the following information):

  • OS: Win 10
  • Browser Browser Chorme
  • Version 93

Additional context
@MaheshKulkarniTekdi Could you please check this bug and comment if any change is required in the workflow.

All registration forms - unknown error message appear if trying with duplicate email or mobile number

Describe the bug
For all users' registration forms if try with the duplicate Email and Contact number then the system throws an error message at the bottom which is not understandable We should have a clear note.

To Reproduce
Steps to reproduce the behavior:

  1. Go to the Teacher or Student registration form
  2. Insert Duplicate Email Id and Mobile number
  3. Click Submit button.
  4. The error message appear at the bottom

Expected behavior
The error message appears with relevant notes by reading end-user easily understand the problem.

Screenshots

error for duplicate detail registration

Desktop (please complete the following information):

  • OS: Win 10
  • Browser Chorme
  • Version 93

Affiliation=> Required sign missing for Class field

Describe the bug
The class field is required but does not have any required sign.

To Reproduce
Steps to reproduce the behavior:

  1. Go to the Affiliation form
  2. Fill up all the required details
  3. Leave a class field blank
  4. Check the Submit button disappier

Expected behavior
The required sign should be for the class field

Screenshots
class field required sign

Desktop (please complete the following information):

  • OS: Win 10
  • Browser Chrome
  • Version 93

Attestation form - the text added in notes are not getting save

Describe the bug
When click the save button for Notes nothing happens.

To Reproduce
Steps to reproduce the behavior:

  1. Go to the attestation page of teacher experience
  2. Add text in notes
  3. Click submit button
  4. Check there is no save message appear and note does not get save

Expected behavior
The confirmation message should appear and note text should get saved.

Desktop (please complete the following information):

  • OS: Win10
  • Browser Chrome
  • Version 93

Additional context
Kindly check this issue for all the attestation workflows.

Teacher Experience details form - those Institutes appear under the Institute name dropdown which are not approved

Describe the bug
If we registered with the new Institute that institute appears under the Institute name dropdown teacher Experience details form without submitting the Affiliation form as well as attested. Same for the student Education detail form.

To Reproduce
Steps to reproduce the behavior:

  1. Register with Institute
  2. Do not submit basic detail and Affiliation form
  3. log in as a Teacher user and go to the Experience details form
  4. Search with institute name

Expected behavior
Without approval, any institute should not appear under Institute name dropdown in Experience form

Desktop (please complete the following information):

  • OS: Win10
  • Browser Chrome
  • Version 93

Q2 = Teacher Experience detail form - the date format is different in actual form and detail view

Describe the bug
Check the date format in experience detail form and on the detail view. Also, check on the attestation detail view.

To Reproduce
Steps to reproduce the behavior:

  1. Go to the experience detail view and check the date field value in added record

Expected behavior
The format should be the same in the form and detail view

Screenshots
date format in experience form and detail view

Desktop (please complete the following information):

  • OS: Win10
  • Browser Edge, Chrome
  • Version 93

Additional context
Better if we set DD-MM-YYYY format.

Teacher Basic Detail form - unable to submit

Describe the bug
Nothing happens when clicking Submit button. Found some errors in the console.

To Reproduce
Steps to reproduce the behavior:

  1. Go to Teacher's Basic Detail form
  2. Fill up all required fields
  3. Check the Submit button appear to enable
  4. Click Submit button and observe

Expected behavior
The fields details should get save and the form should get submit

Desktop (please complete the following information):

  • OS: Win 10
  • Browser Chrome
  • Version 93

Teacher registration form - Full name field accept blank spaces

Describe the bug
Insert blank spaces using the spacebar.

To Reproduce
Steps to reproduce the behavior:

  1. Open Teacher registration form
  2. Insert blank spaces in the Full name field
  3. Submit the form

Expected behavior
Any required text field should not allow blank spaces.

Desktop (please complete the following information):

  • OS: Wind 10
  • Browser Chrome
  • Version 93

Additional context
Make sure this should applicable for all the required text fields.

Send Invite - mobile number validation missing

Describe the bug
There is no mobile number validation. Can able to add numbers like 444, 7876 and able to click Send Invite button.

To Reproduce
Steps to reproduce the behavior:

  1. Go to Send Invite popup
  2. Insert inavlid number
  3. Click Send Invite button
  4. Observe

Expected behavior
There should be mobile number validation.

Screenshots
send invite mobile number validation

Desktop (please complete the following information):

  • OS: Win10
  • Browser Chrome
  • Version 93

Registration forms - the 'Already registered? Login' link missing

Describe the bug
As per the User story, this link should be there in all registration forms.

To Reproduce
Steps to reproduce the behavior:

  1. Go to the Institute, Teacher, and Student registration forms
  2. Check the 'Already registered? Login' link present at the bottom

Expected behavior
The 'Already registered? Login' link should be there.

Screenshots
link on registration form

Desktop (please complete the following information):

  • OS: Win10
  • Browser Chrome
  • Version 93

Additional context
If we have removed link purposefully please comment.

Receiving HTTP 200 status code for unsuccessful requests

Describe the bug
I receive a HTTP 200 status code and responseCode OK in the response payload for an unsuccessful request.

To Reproduce
Steps to reproduce the behavior:

  1. Run the registry using docker. Here is a script to help with that.
  2. Make the following request:
~ > echo '{"name": "B Teacher", "phoneNumber": "1122334455", "school": "MP Public School"}' | http post :8081/api/v1/Teacher/invite 'Content-Type: application/json'
  1. See error:
HTTP/1.1 200 
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Connection: keep-alive
Content-Length: 829
Content-Type: application/json
Date: Sat, 09 Oct 2021 11:58:01 GMT
Expires: 0
Keep-Alive: timeout=60
Pragma: no-cache
Vary: Origin, Access-Control-Request-Method, Access-Control-Request-Headers
X-Content-Type-Options: nosniff
X-Frame-Options: DENY
X-XSS-Protection: 1; mode=block

{
    "ets": 1633780681268,
    "id": "",
    "params": {
        "err": "",
        "errmsg": "Exception executing consequence for rule \"Create entity owner for newly added owner fields\" in io.opensaber.workflow: [Error: keycloakAdminUtil.createUser(stateDefinition.getEntityName(), stateDefinition.getUpdated().get(\"userId\").textValue(),        stateDefinition.getUpdated().get(\"email\").textValue(), stateDefinition.getUpdated().get(\"mobile\").textValue()): RESTEASY004655: Unable to invoke request: org.apache.http.conn.HttpHostConnectException: Connect to localhost:9990 [localhost/127.0.0.1] failed: Connection refused (Connection refused)]\n[Near : {... String owner = keycloakAdminUt ....}]\n             ^\n[Line: 1, Column: 1]",
        "msgid": "54102bd6-ed23-4784-97f6-de9c90dd3f87",
        "resmsgid": "",
        "status": "UNSUCCESSFUL"
    },
    "responseCode": "OK",
    "ver": "1.0"
}

Expected behavior
Since it is an internal server error, it would be more appropriate to return a HTTP 500 status code instead. Also, when there is a validation error, it would be better to return a HTTP 400 status code instead of 200.

Desktop (please complete the following information):

  • OS: Arch Linux; rolling

Configurable UI

I should be able to modify how the app looks, especially the logo, colour and fonts.

Solution
Implement Component based UI

Design System for Sunbird RC
Figma Link

Teacher Experience detail form - date fields validation missing

Describe the bug
Start date can accept value greater than End date

To Reproduce
Steps to reproduce the behavior:

  1. Go to add experience detail form
  2. Insert start date greater than end date
  3. Submit the form

Expected behavior
The Start date should not accept value greater than the End date

Desktop (please complete the following information):

  • OS: Win10
  • Browser Chrome
  • Version 93

Additional context
Kindly consider this for all forms which contain the dates fields

Affiliation => The Grant Year accept value greater than Expiry year

Describe the bug
Assuming the Grant Year should be less than Expiry year and the system should validate and accept values as per.

To Reproduce
Steps to reproduce the behavior:

  1. Go to add Affiliation form
  2. Insert year 2022 in Grant Year field
  3. Insert year 2021 in the Expiry year field
  4. Submit the form.

Expected behavior
A system should not accept Grant year value greater than Expiry year and should raise message

Desktop (please complete the following information):

  • OS: Win 10
  • Browser Chrome
  • Version 93

Additional context
If both years fields are not dependent then no need this validation

Invite Teacher - send invitation button appear enable without enter mobile number

Describe the bug
The Send Invite button appears to enable without entered mobile number

To Reproduce
Steps to reproduce the behavior:

  1. Go to Send Invitation popup
  2. Without entering the mobile button click Send Invite button
  3. Check no any message appear

Expected behavior
The Send Invite button should enable after entering a value in a box

Desktop (please complete the following information):

  • OS: Win10
  • Browser Chrome
  • Version 93

Additional context
Need to check same for Student invite

Teacher Experience detail - institute name filter is not working as expected

Describe the bug
The filter not showing results as per entered value every time. It working weirdly.

To Reproduce
Steps to reproduce the behavior:

  1. Go to Experience detail form
  2. Insert value in Institute name filter
  3. Check values appear in dropdown after insert 3-4 letters
  4. Seems sometimes the value is not matched with searched characters.
    Expected behavior
    A clear and concise description of what you expected to happen.

Desktop (please complete the following information):

  • OS: Win10
  • Browser Chrome
  • Version 93

Email and SMS notifications

Email and SMS notification

When claim gets accepted or rejected - notification to user / claimant.
When Claim added or modified - However this will create more notifications which will flood the inbox.

Support auto attestation config

We need to attest the fields like PAN, Aadhar, GSTIN automatically. Whenever these fields are edited, the relevant API call will be made to validate the updated values.

Q4= Attestation deny - equal to sign appear in deny popup

Describe the bug
= sign against asterisks sign

To Reproduce
Steps to reproduce the behavior:

  1. Go to the attestation form
  2. Click Deny button
  3. Observe = sign

Expected behavior
= sign should not be there

Screenshots
equal sign in deny popup

Desktop (please complete the following information):

  • OS: Win10
  • Browser Chrome
  • Version 93

SSO Issues regarding compose Installation

I was able to install both the OpenSABER using the following steps

  1. Build the jar using mvn clean install
  2. Starting the keycloak using this.
    • Logged in using default username/password.
    • Created a realm called sunbird, client called sunbird, and a user called sunbird with a sample password.
    • Update my /etc/hosts file to alias localhost as keycloak to fix the redirect_url which would be keycloak:8080...
    • Updates the client with redirect URL http://localhost:8081/sso/login
    • Copied the SSO public key and updated the .env file
  3. Starting the registry using this compose file. The .env file was of the following format
sunbird_sso_publickey=xxxxxxxblaxxxxx
sunbird_sso_realm=sunbird
sunbird_sso_url=http://keycloak:8080/auth/
authentication_enabled=true
sunbird_sso_username=admin
sunbird_sso_password=admin
sunbird_sso_client_id=sunbird
claims_url=http://keycloak:8080

I am currently facing an issue with keycloak unable to authenticate. The /sso/login route redirects to keycloak, I am able to login and get the auth token, then the auth token fails to get verified. Sharing the logs from keycloak and registry.

keycloak_1  | 15:24:55,607 WARN  [org.keycloak.events] (default task-11) type=CODE_TO_TOKEN_ERROR, realmId=sunbird, clientId=null, userId=null, ipAddress=192.168.144.6, error=invalid_client_credentials, grant_type=authorization_code
keycloak_1  | 15:25:21,844 WARN  [org.keycloak.events] (default task-11) type=LOGIN_ERROR, realmId=sunbird, clientId=sunbird, userId=null, ipAddress=192.168.144.1, error=user_not_found, auth_method=openid-connect, auth_type=code, redirect_uri=http://localhost:8081/sso/login, code_id=09f94562-f6be-4db8-ab4d-2f5edecd53ba, username=admin, authSessionParentId=09f94562-f6be-4db8-ab4d-2f5edecd53ba, authSessionTabId=eNSv1acMKw0
keycloak_1  | 15:41:07,585 WARN  [org.keycloak.events] (default task-14) type=LOGIN_ERROR, realmId=master, clientId=security-admin-console, userId=null, ipAddress=192.168.144.1, error=user_not_found, auth_method=openid-connect, auth_type=code, redirect_uri=http://keycloak:8080/auth/admin/master/console/#/realms/sunbird, code_id=73e803b0-7000-428d-a5e5-0f1de2c9adb8, username=sunbird, authSessionParentId=73e803b0-7000-428d-a5e5-0f1de2c9adb8, authSessionTabId=SZilMPAqM2M
keycloak_1  | 15:41:14,075 WARN  [org.keycloak.events] (default task-14) type=LOGIN_ERROR, realmId=master, clientId=security-admin-console, userId=null, ipAddress=192.168.144.1, error=user_not_found, auth_method=openid-connect, auth_type=code, redirect_uri=http://keycloak:8080/auth/admin/master/console/#/realms/sunbird, code_id=73e803b0-7000-428d-a5e5-0f1de2c9adb8, username=sunbird, authSessionParentId=73e803b0-7000-428d-a5e5-0f1de2c9adb8, authSessionTabId=SZilMPAqM2M
registry_1  | 15:47:02.314 [http-nio-8081-exec-4] DEBUG o.k.a.t.AbstractAuthenticatedActionsValve:57 - AuthenticatedActionsValve.invoke /sso/login
registry_1  | 15:47:02.316 [http-nio-8081-exec-4] DEBUG o.k.a.AuthenticatedActionsHandler:53 - AuthenticatedActionsValve.invoke http://localhost:8081/sso/login?state=c42fdb88-d2d1-4ad6-9d5d-878ab13f8394&session_state=c1eaace6-5835-44d8-97f1-a25830e585a5&code=7eb05e75-8fe4-49ac-87da-cf31813d6201.c1eaace6-5835-44d8-97f1-a25830e585a5.70dc5946-1384-45aa-a776-40e862c5d6df
registry_1  | 15:47:02.317 [http-nio-8081-exec-4] DEBUG o.k.a.AuthenticatedActionsHandler:153 - Policy enforcement is disabled.
registry_1  | 15:47:02.318 [http-nio-8081-exec-4] DEBUG o.k.adapters.PreAuthActionsHandler:74 - adminRequest http://localhost:8081/sso/login?state=c42fdb88-d2d1-4ad6-9d5d-878ab13f8394&session_state=c1eaace6-5835-44d8-97f1-a25830e585a5&code=7eb05e75-8fe4-49ac-87da-cf31813d6201.c1eaace6-5835-44d8-97f1-a25830e585a5.70dc5946-1384-45aa-a776-40e862c5d6df
registry_1  | 15:47:02.320 [http-nio-8081-exec-4] DEBUG o.k.a.s.f.KeycloakAuthenticationProcessingFilter:206 - Request is to process authentication
registry_1  | 15:47:02.321 [http-nio-8081-exec-4] DEBUG o.k.a.s.f.KeycloakAuthenticationProcessingFilter:142 - Attempting Keycloak authentication
registry_1  | 15:47:02.321 [http-nio-8081-exec-4] DEBUG o.k.a.s.t.SpringSecurityTokenStore:64 - Checking if org.keycloak.adapters.springsecurity.authentication.SpringSecurityRequestAuthenticator@234239d0 is cached
registry_1  | 15:47:02.322 [http-nio-8081-exec-4] DEBUG o.k.a.OAuthRequestAuthenticator:279 - there was a code, resolving
registry_1  | 15:47:02.323 [http-nio-8081-exec-4] DEBUG o.k.a.OAuthRequestAuthenticator:325 - checking state cookie for after code
registry_1  | 15:47:02.325 [http-nio-8081-exec-4] DEBUG o.k.a.OAuthRequestAuthenticator:244 - ** reseting application state cookie
registry_1  | 15:47:02.328 [http-nio-8081-exec-4] WARN  o.k.a.a.ClientIdAndSecretCredentialsProvider:60 - Client 'sunbird' doesn't have secret available
registry_1  | 15:47:02.329 [http-nio-8081-exec-4] DEBUG o.a.h.i.c.t.ThreadSafeClientConnManager:240 - Get connection: {}->http://keycloak:8080, timeout = 0
registry_1  | 15:47:02.330 [http-nio-8081-exec-4] DEBUG o.a.h.i.conn.tsccm.ConnPoolByRoute:347 - [{}->http://keycloak:8080] total kept alive: 1, total issued: 0, total allocated: 1 out of 20
registry_1  | 15:47:02.332 [http-nio-8081-exec-4] DEBUG o.a.h.i.conn.tsccm.ConnPoolByRoute:496 - Getting free connection [{}->http://keycloak:8080][null]
registry_1  | 15:47:02.332 [http-nio-8081-exec-4] DEBUG o.a.h.impl.client.DefaultHttpClient:431 - Stale connection check
registry_1  | 15:47:02.335 [http-nio-8081-exec-4] DEBUG o.a.h.c.protocol.RequestAddCookies:123 - CookieSpec selected: compatibility
registry_1  | 15:47:02.336 [http-nio-8081-exec-4] DEBUG o.a.h.c.protocol.RequestAuthCache:77 - Auth cache not set in the context
registry_1  | 15:47:02.337 [http-nio-8081-exec-4] DEBUG o.a.h.c.p.RequestTargetAuthentication:80 - Target auth state: UNCHALLENGED
registry_1  | 15:47:02.339 [http-nio-8081-exec-4] DEBUG o.a.h.c.p.RequestProxyAuthentication:89 - Proxy auth state: UNCHALLENGED
registry_1  | 15:47:02.340 [http-nio-8081-exec-4] DEBUG o.a.h.impl.client.DefaultHttpClient:682 - Attempt 1 to execute request
registry_1  | 15:47:02.342 [http-nio-8081-exec-4] DEBUG o.a.h.i.conn.DefaultClientConnection:274 - Sending request: POST /auth/realms/sunbird/protocol/openid-connect/token HTTP/1.1
registry_1  | 15:47:02.344 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  >> "POST /auth/realms/sunbird/protocol/openid-connect/token HTTP/1.1[\r][\n]"
registry_1  | 15:47:02.347 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  >> "Content-Length: 289[\r][\n]"
registry_1  | 15:47:02.350 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  >> "Content-Type: application/x-www-form-urlencoded; charset=UTF-8[\r][\n]"
registry_1  | 15:47:02.352 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  >> "Host: keycloak:8080[\r][\n]"
registry_1  | 15:47:02.354 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  >> "Connection: Keep-Alive[\r][\n]"
registry_1  | 15:47:02.356 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  >> "[\r][\n]"
registry_1  | 15:47:02.357 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:278 - >> POST /auth/realms/sunbird/protocol/openid-connect/token HTTP/1.1
registry_1  | 15:47:02.358 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:281 - >> Content-Length: 289
registry_1  | 15:47:02.360 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:281 - >> Content-Type: application/x-www-form-urlencoded; charset=UTF-8
registry_1  | 15:47:02.361 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:281 - >> Host: keycloak:8080
registry_1  | 15:47:02.363 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:281 - >> Connection: Keep-Alive
registry_1  | 15:47:02.364 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:87 -  >> "grant_type=authorization_code&code=7eb05e75-8fe4-49ac-87da-cf31813d6201.c1eaace6-5835-44d8-97f1-a25830e585a5.70dc5946-1384-45aa-a776-40e862c5d6df&redirect_uri=http%3A%2F%2Flocalhost%3A8081%2Fsso%2Flogin&client_session_state=F62C9DDD2A30987CB4DE0437C0E7E39D&client_session_host=7ff8cd232959"
registry_1  | 15:47:02.370 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  << "HTTP/1.1 400 Bad Request[\r][\n]"
registry_1  | 15:47:02.372 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  << "Cache-Control: no-store[\r][\n]"
registry_1  | 15:47:02.373 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  << "X-XSS-Protection: 1; mode=block[\r][\n]"
registry_1  | 15:47:02.375 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  << "Pragma: no-cache[\r][\n]"
registry_1  | 15:47:02.376 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  << "X-Frame-Options: SAMEORIGIN[\r][\n]"
registry_1  | 15:47:02.378 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  << "Referrer-Policy: no-referrer[\r][\n]"
registry_1  | 15:47:02.379 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  << "Date: Mon, 28 Jun 2021 15:47:02 GMT[\r][\n]"
registry_1  | 15:47:02.380 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  << "Connection: keep-alive[\r][\n]"
registry_1  | 15:47:02.383 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  << "Strict-Transport-Security: max-age=31536000; includeSubDomains[\r][\n]"
registry_1  | 15:47:02.388 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  << "X-Content-Type-Options: nosniff[\r][\n]"
registry_1  | 15:47:02.389 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  << "Content-Type: application/json[\r][\n]"
registry_1  | 15:47:02.391 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  << "Content-Length: 101[\r][\n]"
registry_1  | 15:47:02.391 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:73 -  << "[\r][\n]"
registry_1  | 15:47:02.393 [http-nio-8081-exec-4] DEBUG o.a.h.i.conn.DefaultClientConnection:259 - Receiving response: HTTP/1.1 400 Bad Request
registry_1  | 15:47:02.394 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:262 - << HTTP/1.1 400 Bad Request
registry_1  | 15:47:02.394 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:265 - << Cache-Control: no-store
registry_1  | 15:47:02.396 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:265 - << X-XSS-Protection: 1; mode=block
registry_1  | 15:47:02.397 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:265 - << Pragma: no-cache
registry_1  | 15:47:02.398 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:265 - << X-Frame-Options: SAMEORIGIN
registry_1  | 15:47:02.399 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:265 - << Referrer-Policy: no-referrer
registry_1  | 15:47:02.400 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:265 - << Date: Mon, 28 Jun 2021 15:47:02 GMT
registry_1  | 15:47:02.402 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:265 - << Connection: keep-alive
registry_1  | 15:47:02.403 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:265 - << Strict-Transport-Security: max-age=31536000; includeSubDomains
registry_1  | 15:47:02.405 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:265 - << X-Content-Type-Options: nosniff
registry_1  | 15:47:02.406 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:265 - << Content-Type: application/json
registry_1  | 15:47:02.408 [http-nio-8081-exec-4] DEBUG org.apache.http.headers:265 - << Content-Length: 101
registry_1  | 15:47:02.411 [http-nio-8081-exec-4] DEBUG o.a.h.impl.client.DefaultHttpClient:509 - Connection can be kept alive indefinitely
registry_1  | 15:47:02.414 [http-nio-8081-exec-4] DEBUG org.apache.http.wire:87 -  << "{"error":"unauthorized_client","error_description":"INVALID_CREDENTIALS: Invalid client credentials"}"
registry_1  | 15:47:02.417 [http-nio-8081-exec-4] DEBUG o.a.h.i.c.t.ThreadSafeClientConnManager:286 - Released connection is reusable.
registry_1  | 15:47:02.420 [http-nio-8081-exec-4] DEBUG o.a.h.i.conn.tsccm.ConnPoolByRoute:431 - Releasing connection [{}->http://keycloak:8080][null]
registry_1  | 15:47:02.423 [http-nio-8081-exec-4] DEBUG o.a.h.i.conn.tsccm.ConnPoolByRoute:457 - Pooling connection [{}->http://keycloak:8080][null]; keep alive indefinitely
registry_1  | 15:47:02.424 [http-nio-8081-exec-4] DEBUG o.a.h.i.conn.tsccm.ConnPoolByRoute:678 - Notifying no-one, there are no waiting threads
registry_1  | 15:47:02.425 [http-nio-8081-exec-4] ERROR o.k.a.OAuthRequestAuthenticator:337 - failed to turn code into token
registry_1  | 15:47:02.427 [http-nio-8081-exec-4] ERROR o.k.a.OAuthRequestAuthenticator:338 - status from server: 400
registry_1  | 15:47:02.429 [http-nio-8081-exec-4] ERROR o.k.a.OAuthRequestAuthenticator:340 -    {"error":"unauthorized_client","error_description":"INVALID_CREDENTIALS: Invalid client credentials"}
registry_1  | 15:47:02.435 [http-nio-8081-exec-4] DEBUG o.k.a.s.f.KeycloakAuthenticationProcessingFilter:155 - Auth outcome: FAILED
registry_1  | 15:47:02.437 [http-nio-8081-exec-4] DEBUG o.k.a.s.f.KeycloakAuthenticationProcessingFilter:345 - Authentication request failed: org.keycloak.adapters.springsecurity.KeycloakAuthenticationException: Invalid authorization header, see WWW-Authenticate header for details
registry_1  | org.keycloak.adapters.springsecurity.KeycloakAuthenticationException: Invalid authorization header, see WWW-Authenticate header for details
registry_1  | 	at org.keycloak.adapters.springsecurity.filter.KeycloakAuthenticationProcessingFilter.attemptAuthentication(KeycloakAuthenticationProcessingFilter.java:162)
registry_1  | 	at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:212)
registry_1  | 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
registry_1  | 	at org.keycloak.adapters.springsecurity.filter.KeycloakPreAuthActionsFilter.doFilter(KeycloakPreAuthActionsFilter.java:96)
registry_1  | 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
registry_1  | 	at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:66)
registry_1  | 	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
registry_1  | 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
registry_1  | 	at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)
registry_1  | 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
registry_1  | 	at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56)
registry_1  | 	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
registry_1  | 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
registry_1  | 	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215)
registry_1  | 	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)
registry_1  | 	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357)
registry_1  | 	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270)
registry_1  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
registry_1  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
registry_1  | 	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
registry_1  | 	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
registry_1  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
registry_1  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
registry_1  | 	at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:109)
registry_1  | 	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
registry_1  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
registry_1  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
registry_1  | 	at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:81)
registry_1  | 	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
registry_1  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
registry_1  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
registry_1  | 	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200)
registry_1  | 	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
registry_1  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
registry_1  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
registry_1  | 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
registry_1  | 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
registry_1  | 	at org.keycloak.adapters.tomcat.AbstractAuthenticatedActionsValve.invoke(AbstractAuthenticatedActionsValve.java:67)
registry_1  | 	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:496)
registry_1  | 	at org.keycloak.adapters.tomcat.AbstractKeycloakAuthenticatorValve.invoke(AbstractKeycloakAuthenticatorValve.java:181)
registry_1  | 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
registry_1  | 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
registry_1  | 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
registry_1  | 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
registry_1  | 	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
registry_1  | 	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
registry_1  | 	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
registry_1  | 	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1459)
registry_1  | 	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
registry_1  | 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
registry_1  | 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
registry_1  | 	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
registry_1  | 	at java.lang.Thread.run(Thread.java:748)
registry_1  | 15:47:02.439 [http-nio-8081-exec-4] DEBUG o.k.a.s.f.KeycloakAuthenticationProcessingFilter:346 - Updated SecurityContextHolder to contain null Authentication
registry_1  | 15:47:02.441 [http-nio-8081-exec-4] DEBUG o.k.a.s.f.KeycloakAuthenticationProcessingFilter:347 - Delegating to authentication failure handler org.keycloak.adapters.springsecurity.authentication.KeycloakAuthenticationFailureHandler@770c3905
registry_1  | 15:47:02.446 [http-nio-8081-exec-4] DEBUG o.k.adapters.PreAuthActionsHandler:74 - adminRequest http://localhost:8081/error?state=c42fdb88-d2d1-4ad6-9d5d-878ab13f8394&session_state=c1eaace6-5835-44d8-97f1-a25830e585a5&code=7eb05e75-8fe4-49ac-87da-cf31813d6201.c1eaace6-5835-44d8-97f1-a25830e585a5.70dc5946-1384-45aa-a776-40e862c5d6df
registry_1  | 15:47:02.555 [http-nio-8081-exec-5] DEBUG o.k.adapters.PreAuthActionsHandler:74 - adminRequest http://localhost:8081/favicon.ico
registry_1  | 15:47:02.557 [http-nio-8081-exec-5] DEBUG o.k.a.t.AbstractAuthenticatedActionsValve:57 - AuthenticatedActionsValve.invoke /favicon.ico
registry_1  | 15:47:02.559 [http-nio-8081-exec-5] DEBUG o.k.a.AuthenticatedActionsHandler:53 - AuthenticatedActionsValve.invoke http://localhost:8081/favicon.ico
registry_1  | 15:47:02.561 [http-nio-8081-exec-5] DEBUG o.k.a.AuthenticatedActionsHandler:153 - Policy enforcement is disabled.
registry_1  | 15:47:02.563 [http-nio-8081-exec-5] DEBUG o.k.adapters.PreAuthActionsHandler:74 - adminRequest http://localhost:8081/favicon.ico
registry_1  | 15:47:02.566 [http-nio-8081-exec-5] DEBUG o.k.a.s.a.KeycloakAuthenticationEntryPoint:109 - Redirecting to login URI /sso/login
registry_1  | 15:47:02.576 [http-nio-8081-exec-6] DEBUG o.k.adapters.PreAuthActionsHandler:74 - adminRequest http://localhost:8081/sso/login
registry_1  | 15:47:02.581 [http-nio-8081-exec-6] DEBUG o.k.a.t.AbstractAuthenticatedActionsValve:57 - AuthenticatedActionsValve.invoke /sso/login
registry_1  | 15:47:02.583 [http-nio-8081-exec-6] DEBUG o.k.a.AuthenticatedActionsHandler:53 - AuthenticatedActionsValve.invoke http://localhost:8081/sso/login
registry_1  | 15:47:02.586 [http-nio-8081-exec-6] DEBUG o.k.a.AuthenticatedActionsHandler:153 - Policy enforcement is disabled.
registry_1  | 15:47:02.590 [http-nio-8081-exec-6] DEBUG o.k.adapters.PreAuthActionsHandler:74 - adminRequest http://localhost:8081/sso/login
registry_1  | 15:47:02.593 [http-nio-8081-exec-6] DEBUG o.k.a.s.f.KeycloakAuthenticationProcessingFilter:206 - Request is to process authentication
registry_1  | 15:47:02.594 [http-nio-8081-exec-6] DEBUG o.k.a.s.f.KeycloakAuthenticationProcessingFilter:142 - Attempting Keycloak authentication
registry_1  | 15:47:02.596 [http-nio-8081-exec-6] DEBUG o.k.a.s.t.SpringSecurityTokenStore:64 - Checking if org.keycloak.adapters.springsecurity.authentication.SpringSecurityRequestAuthenticator@42f9fc1f is cached
registry_1  | 15:47:02.599 [http-nio-8081-exec-6] DEBUG o.k.a.OAuthRequestAuthenticator:266 - there was no code
registry_1  | 15:47:02.600 [http-nio-8081-exec-6] DEBUG o.k.a.OAuthRequestAuthenticator:274 - redirecting to auth server
registry_1  | 15:47:02.601 [http-nio-8081-exec-6] DEBUG o.k.a.OAuthRequestAuthenticator:144 - callback uri: http://localhost:8081/sso/login
registry_1  | 15:47:02.603 [http-nio-8081-exec-6] DEBUG o.k.a.s.f.KeycloakAuthenticationProcessingFilter:155 - Auth outcome: NOT_ATTEMPTED
registry_1  | 15:47:02.604 [http-nio-8081-exec-6] DEBUG o.k.a.OAuthRequestAuthenticator:227 - Sending redirect to login page: http://keycloak:8080/auth/realms/sunbird/protocol/openid-connect/auth?response_type=code&client_id=sunbird&redirect_uri=http%3A%2F%2Flocalhost%3A8081%2Fsso%2Flogin&state=4331e706-26c5-462b-8d42-115fd9007402&login=true&scope=openid

Institute Detail form - getting unknown error message on submitting the form

Describe the bug
The institute manager is unable to submit the Basic detail form. Getting an unknown error message while submitting the form with the required details.

To Reproduce
Steps to reproduce the behavior:

  1. Go to the edit basic detail form of Institute
  2. Fill up all the details.
  3. Check the submit button enable and click the button
  4. You can see the error message at the bottom.

Expected behavior
If the details are incorrect then a relevant error message should appear.

Screenshots

Error in institute setup form submit

Desktop (please complete the following information):

  • OS: Win 10
  • Browser Chrome
  • Version 93

Additional context
This is a blocker for the Institute detail form.

Registry server does not send `client_id` and `client_secret` to keycloak server

To Reproduce

  1. Run the setup script:
curl https://gist.githubusercontent.com/gamemaker1/055875c27d3af1bb27c408223b390767/raw/cb9da7d886d6fef54383567ffff363e72e8bbd75/setup.sh | bash
  1. Go to http://localhost:8080/auth/admin.
  2. Login using user admin and password admin.
  3. On the top left, click 'CREATE REALM'.
  4. Import this file while creating a new realm.
  5. Go to http://localhost:8081/sso/login and login using user test and password test.
  6. You will see the following:

image

Expected behavior

Registry server should have gotten an auth token from keycloak and authenticated me.

Logs

https://gist.github.com/gamemaker1/48132a2e2c69ff3de13fd3b0a27f09fa

Versions

  • OS: Linux (Arch Linux; rolling)
  • Browser: Firefox (92.0.1)

Additional context

Looking at the logs, specifically this part, the registry does not send the client_id and client_secret to keycloak, resulting in a 400 response with the error unauthorized_client. If I do a POST request via httpie with the client_id and client_secret, it works and keycloak returns a bearer token:

~ > http --form post :8080/auth/realms/sunbird/protocol/openid-connect/token grant_type=authorization_code code=... redirect_uri=http://localhost:8081/sso/login client_session_state=.... client_session_host=mycomputer client_id=sunbird client_secret=f2d72d52-8aac-4b90-856c-1ab8fb45c974

HTTP/1.1 200 OK
Cache-Control: no-store
Connection: keep-alive
Content-Length: 3139
Content-Type: application/json
Date: Sat, 02 Oct 2021 11:35:00 GMT
Pragma: no-cache
Referrer-Policy: no-referrer
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block

{
    "access_token": "...",
    "expires_in": 300,
    "id_token": "...",
    "not-before-policy": 0,
    "refresh_expires_in": 1800,
    "refresh_token": "...",
    "scope": "openid email profile",
    "session_state": "e3981283-d290-429b-b236-41edd943f0aa",
    "token_type": "bearer"
}

Teacher Experience Detail - can accept future start date

Describe the bug
The Start date should only accept pas and current date. The future date should not allow as experience can not consider in the future.

To Reproduce
Steps to reproduce the behavior:

  1. Go to teacher experience form
  2. Select a future date in Start date
  3. Fill up all required details
  4. Save the form

Expected behavior
The system should raise an error message for an incorrect start date.

Screenshots
teacher experience start date

Desktop (please complete the following information):

  • OS: Win10
  • Browser Chrome
  • Version 93

Student Education detail - unable to upload pdf and doc files

Describe the bug
Showing following error message - Something went wrong while uploading files, please try again. There is no any option to remove the uploaded files.
Also, there is no required extensions list for the file upload field.

To Reproduce
Steps to reproduce the behavior:

  1. Go to the Education detail form
  2. Upload pdf file
  3. Fill up other fields
  4. Click save
  5. Check the error message appear

Desktop (please complete the following information):

  • OS: Win10
  • Browser Chrome
  • Version 93

Additional context
Need to have required file extensions

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.