-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
[HOLD for payment 2024-11-14] [$250] Wrong validation message when sending invoice #49286
Comments
Triggered auto assignment to @kadiealexander ( |
Edited by proposal-police: This proposal was edited at 2024-09-19 08:21:17 UTC. ProposalPlease re-state the problem that we are trying to solve in this issue.Wrong validation message when sending invoice What is the root cause of that problem?Here, we are considering that a valid website must include What changes do you think we should make in order to solve the problem?We should add the
OPTIONAL: We should also do the same in several places within the app that use the What alternative solutions did you explore? (Optional) |
Jon Øvrebø Dubielzyk Your proposal will be dismissed because you did not follow the proposal template. |
Edited by proposal-police: This proposal was edited at 2024-09-19 15:55:37 UTC. ProposalPlease re-state the problem that we are trying to solve in this issue.Wrong validation message for website when sending invoice. What is the root cause of that problem?We are using App/src/libs/ValidationUtils.ts Lines 236 to 243 in 6c82111
What changes do you think we should make in order to solve the problem?
What alternative solutions did you explore? (Optional)
What alternative solutions did you explore? (Optional 2)
function isValidWebsite(url: string): boolean {
const isLowerCase = url === url.toLowerCase();
return new RegExp(`^${Url.URL_WEBSITE_REGEX}$`, 'i').test(url) && isLowerCase;
}
Result |
Job added to Upwork: https://www.upwork.com/jobs/~021835835067982464212 |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @ahmedGaber93 ( |
App/src/libs/ValidationUtils.ts Lines 236 to 243 in 3c6526d
Note: As mentioned in the comment, this might need the corresponding scheme handling on the backend as well. |
I think it should be done in FE side, not BE. by adding the URL scheme if not found before sending to BE |
Based on the issue Slack conversation, We have three possible options to fix this issue:
Just to confirm, the expected result is option one? @kadiealexander @dubielzyk-expensify |
My personal take is 1 and 3 should be done here, but I dunno the technical or security implications of 1. I'd at least say 3 should be done. Keen to hear what @trjExpensify @JmillsExpensify @Expensify/design thinks |
Yeah that makes sense to me. Or even just do 2 and 3 might be easy without needing back end changes? |
Yeah that also works. Feels a bit inelegant that we don't validate it properly though, but perhaps it's the right priority at this time 👍 |
I think We can use option one without any backend change, we will allow the user to type We already have a function for adding the missing |
Oh nice, that's great then! |
updated proposal following this comment here |
@ahmedGaber93, I believe we used prefix in the app somewhere in the past, maybe on the business details page, and adding it also helps the user understand that only |
Sure. Let's go with option 1 and 3 then unless @shawnborton thinks otherwise. If it's all front-end stuff then chuck the prefix in and validate it to be a URL 👍 |
@dubielzyk-expensify the option 3 is already used on company website on bank account steps, but it has two cases A. if user email is not on private domain, the default value will be prefix Should we use the same UX behavior here for consistency or just use case A? And if we will use the both cases, should we also add default value for company name like case B (if user email is on private domain, company name default value will be |
I'm down with a combo of 1 and 3. As for the latest question... I feel like the default value of https:// would be enough? |
Thanks, that's great. |
I'm not sure I'm following the 1 and 3 combo really. If we do 3, If @ahmedGaber93 is saying in the bank account flow we populate your private domain email address into the field already, that kinda' makes sense to copy/paste over here in the invoice flow. |
Proposal Updated
|
Waht's the latest here? @caitlinwhite1 reported the same issue today - https://expensify.slack.com/archives/C05LX9D6E07/p1730139071302859 |
PR in progress |
If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results. If a regression has occurred and you are the assigned CM follow the instructions here. If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future. |
If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results. If a regression has occurred and you are the assigned CM follow the instructions here. If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future. |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 9.0.58-2 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue: If no regressions arise, payment will be issued on 2024-11-14. 🎊 For reference, here are some details about the assignees on this issue:
|
@ahmedGaber93 @kadiealexander The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed. Please copy/paste the BugZero Checklist from here into a new comment on this GH and complete it. If you have the K2 extension, you can simply click: [this button] |
Payouts due:
Upwork job is here. |
@ahmedGaber93 please action the checklist, thanks! |
BugZero Checklist:
Bug classificationSource of bug:
Where bug was reported:
Who reported the bug:
Regression Test ProposalPrecondition: you should have at latest one workspace has enabled "Invoices" feature
Test:
Do we agree 👍 or 👎 |
@kadiealexander Done! |
@marcaaron, @ahmedGaber93, @kadiealexander, @Krishna2323 Uh oh! This issue is overdue by 2 days. Don't forget to update your issues! |
@kadiealexander checklist is completed. Could you please issue the payment and close the issue? |
@marcaaron, @ahmedGaber93, @kadiealexander, @Krishna2323 Huh... This is 4 days overdue. Who can take care of this? |
Bump @kadiealexander on slack to complete the payment and close this. |
If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!
Version Number: 9.0.35-7
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: @dubielzyk-expensify
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1726459401827979
Action Performed:
Expected Result:
Expected www.dubbyco.com to be a valid website address
Actual Result:
Gives error saying "Please enter a valid website using lowercase characters"
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
CleanShot.2024-09-16.at.14.00.05.mp4
View all open jobs on GitHub
Recording.548.mp4
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @ahmedGaber93The text was updated successfully, but these errors were encountered: