-
Notifications
You must be signed in to change notification settings - Fork 945
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
Enable requesting to book straight from enquiry #976
Conversation
cd4d36d
to
95c8116
Compare
9ea2c54
to
9b133cd
Compare
b5cb090
to
6a94f1b
Compare
ec2998d
to
2b60890
Compare
f27492e
to
6fa9690
Compare
@@ -193,7 +193,7 @@ const routeConfiguration = () => { | |||
auth: true, | |||
authPage: 'LoginPage', | |||
component: props => <TransactionPage {...props} transactionRole="customer" />, | |||
loadData: TransactionPage.loadData, | |||
loadData: params => TransactionPage.loadData({ ...params, transactionRole: 'customer' }), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
@@ -106,7 +106,7 @@ export const AddressLinkMaybe = props => { | |||
const fullAddress = | |||
typeof building === 'string' && building.length > 0 ? `${building}, ${address}` : address; | |||
|
|||
return (isProvider || txIsAcceptedForCustomer) && hrefToGoogleMaps ? ( | |||
return txIsAcceptedForCustomer && hrefToGoogleMaps ? ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm. A provider could see the location of his listing all the time, but this works too.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Gnito I don't quite follow. The idea is to hide the address link from the provider.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@lyyder provider owns the listing - he knows where it is.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, and that's why it's not relevant to show the address link to the provider.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Solved IRL: When to show the listing location link has been a topic of a debate also before and probably continues to be one in the future. For now, we'll only show it only to customers after a booking has been accepted.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The timeslot query is now dublicated from ListingPage. I think we need to figure out how to gather this kind of page-related code to one place.
If this would be in marketplaceData.duck.js it could be something like:
{
// other marketplace data
timeslots: {
'<listing-id-here>': [/* time slots */],
'<listing-id-here>': [/* time slots */],
},
}
but that makes it a bit harder to keep immutability in check.
5e78b37
to
820c14c
Compare
@Gnito would the time slots be cached in the marketplace data? A problem with that is that the available slots might not be up to date when viewing availability of a listing. But some sort of common solution that would reduce the duplication would be welcome indeed. |
@lyyder, yeah, that solution "draft" would still need to be updated when a user goes to a page that uses timeslots. Anyway, this is just a starting point for a possible solution - it can be solved later. |
c4d9e47
to
3d11d73
Compare
Show the BookingPanel component on the tx page when the transaction has been started with an enquiry.
If enquired transaction is avalable transition it to prequthorized on checkout page.
Unify the sub title with transaction page.
Rise the transaction details section on top of the footer so that the booking dates calendar won't go below it.
820c14c
to
1dba153
Compare
Show
BookingPanel
on tx page for enquired transactions and allow the user to create a booking straight from the enquiry. The transaction created for the enquiry is transitioned to create the booking so all the previous discussions related to that enquiry are available after the booking.When creating a booking after an enquiry, the initial message input is not shown on checkout page: