Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
I believe we need two things to happen here:
- We can limit our support to the core shipping customer profile. We should respond to the onblur event for elements of the shipping address field. We can then validate and save the data to the shipping customer profile and recalculate shipping. This will allow shipping service rate callbacks to take the actual shipping address into consideration.
- We'll need a button that can be clicked to manually recalculate shipping. It should be able to save / update the shipping customer profile as well.
Comments
Comment #1
bojanz CreditAttribution: bojanz commented:)
Comment #2
atlea CreditAttribution: atlea commentedWhy not use a separate checkout pane for shipping?
Comment #3
rszrama CreditAttribution: rszrama commentedThat's what we do. : P
Comment #4
emptyvoid CreditAttribution: emptyvoid commentedI agree, if at least an "update" button was provided to provide an Ajax driven update of the shipping methods and shipping options panels it would go a long way to making the Addresses and Shipping options some what integrated.
Does anyone have recommendations on blogs, books to read about the AJAX framework and or triggers for behaviors and panels in the checkout page?
Comment #5
googletorp CreditAttribution: googletorp commentedNot planning on working on this, but leaving it in the issue queue in case some one wants to.
Comment #6
helior CreditAttribution: helior commentedThis patch adds a setting in the shipping information checkout pane to let the shipping information pane dynamically interact with the shipping services pane.
- It attempts to re-calculate shipping as values are changing in the shipping address (but only once all required field values are available)
- Is only invoked when both the shipping service and shipping information panes are together on the same checkout page.
- There's a manual "Re-calculate shipping" button in there, too.
Comment #7
rszrama CreditAttribution: rszrama commentedOooh, great start, Helior. I think we'll need to do a little clean-up on this, but I like the way you're thinking. Some thoughts:
Comment #8
arun_ms CreditAttribution: arun_ms commentedhello all,
I applied the patch. but recalculating checkbox didnt display for me.
what should i do? also does this update "cart summary block" in same checkout page(one page checkout) ?
Thanks
Comment #9
rszrama CreditAttribution: rszrama commentedPlease notice in comment #7 that this patch needs work. No reason for us to support it in the meantime. Also, there's a separate issue in the queue for you final question.
Comment #10
andyg5000Here's an update to the patch that solves Ryan's questions by doing the following:
1. Moved the recalculate button to the shipping services pane and moved the setting to the shipping pane settings page.
2. Hide the settings option if the two panes aren't on the same page. Set the default to TRUE.
3. The recalculate button is hidden using CSS (element-invisible) so that it can be made visible to the user if rates are required but cannot be calculated.
4. The recalculate button uses JS validation to make sure that all required shipping pane form fields are complete before firing callback.
5. Since I've implemented JS validation, new fields that are required are automatically added to the validation so this is no longer an issue.
I'm far from a JS expert, so I'm sure that will need some work.
To do:
Attach recalculate callback to addressbook callback chain so that it's fired when the address is changed
Fire recalculate callback when copying billing profile > shipping profile
Comment #11
googletorp CreditAttribution: googletorp commentedThanks for your work on this andyg5000. I've been crazy busy in the weeks before Drupal con and probably won't get much time to look at it during. But just wanted to say that I have noticed your patch and I do want to give it the reviews it deserves.
I hope Ryan will look at this as well, since he has done most of the work on the 2.x branch.
Comment #12
googletorp CreditAttribution: googletorp commentedI'm going to mark this as need work.
The gist of it, is that the patch works pretty well for shipping, though there are some caching issues. The problem is, however, the patch doesn't support copy address functionality. This isn't too bad in itself, but the architecture of the patch makes it impossible to incorporate the changes needed to make it work if copy address functionality is enabled.
Ryan was going to take a look at it in the flight home so I'm assigning the issue to him. I don't know how far he got - so waiting to hear from him until we do anything else.
Comment #13
andyg5000@googletorp, Thanks for the review. I agree that the patch I submitted is not scaleable. After brainstorming this and looking at commerce addressbook, I think the ability to alter the AJAX response commands is going to be necessary to do what we want here. I've created an issue and patch on commerce #1759494: Add ability to alter AJAX callback during address copy that would allow more AJAX commands to be executed. My thought is that we can chain the same actions used to update shipping fields (on blur) to this callback and reload the shipping services pane.
Comment #14
rszrama CreditAttribution: rszrama commentedfwiw, I'd already added this into my work on the plane, just hadn't had a chance to update this issue since landing. Will get back to you this afternoon. ; )
Comment #15
rszrama CreditAttribution: rszrama commentedJust a quick update here - I've already made the commits to core to change the profile copying feature to support what needs to happen here. I've been moving this code around here and fleshing it out to support address copying and any customer profile type. The goal is that any change to a customer profile form element could trigger shipping recalculation so long as all customer profile fields have been filled in. The last bit I need to update is the .js, as the module code has been updated to support this. Makes it a bit hard to post an updated patch since the .js file isn't already under source control, so I'm just going to hit the sack and get back at it in the morning.
fwiw, I had a heck of a time figuring out why I wasn't getting the data I needed in $form_state['values'] to copy the profile data manually when necessary. Turns out it was being stripped out because of #limit_validation_errors, which was only processing $form_state['input'] for the parts of the array we explicit told it to in the #limit_validation_errors array on the recalculation button. Updated that array to allow for any customer profile type on the form to be validated, and voila! It worked.
Then had to monkey around with the $form_state['addressfield'] array, because it was retaining old data even after performing the manual copy and saving the customer profiles.
Last bit now server side is to figure out how to ensure we have a default shipping option selected when the services form rebuilds.
Comment #16
rszrama CreditAttribution: rszrama commentedAhh, as it turns out I already had updated the JavaScript, but I retooled it a bit anyways to use a jQuery function to check whether or not to recalculate shipping so we could use ajax_command_invoke() in conjunction with the handy new hook we added to Commerce core. ; )
I've tested this as well as I can, and it works with different services being available and/or rate calculation rules firing on different address related conditions. We'll need to bang on this a little more, but just make sure you do your testing with the latest Commerce 1.x-dev.
Commit: http://drupalcode.org/project/commerce_shipping.git/commitdiff/708a8e3
D'oh! I just realized I forget to include helior in the commit credits. : (
Comment #18
cvangysel CreditAttribution: cvangysel commentedI encountered an issue where the Ajax was launched before the form had a chance to re-organize itself, this caused some weird and inconsistent behaviour. The following patch fixes this by checking if the customer profile form is still processing.
I also removed the checks for empty values. The errors are now shown inside the shipping services panel.
Comment #19
cvangysel CreditAttribution: cvangysel commentedThere are still other problems with this too. Mainly when javascript is disabled, I'll investigate tomorrow.
Comment #20
rszrama CreditAttribution: rszrama commentedfwiw, the checkout form isn't degradable right now; I wouldn't consider that a blocking issue for Shipping, but it's definitely something we need to fix in a subsequent Commerce release.
Comment #21
Kris D. CreditAttribution: Kris D. commentedhi,
for me work perfect #16 with the #18 patch.
But now the problem is that the subtotal and total not update. Maybe it will be interesting to update these values by ajax too. Somebody know the way.
thanks for all
Comment #22
Zac_JH CreditAttribution: Zac_JH commented+1 for patch in #18, 2 days of trying to figure out the problem. Now working just lovely, thank you cvangysel
Comment #23
rszrama CreditAttribution: rszrama commentedI don't think we can move forward without doing some sort of client-side validation. It doesn't make sense to start showing errors in the "Shipping service" checkout pane just because someone put their name in an address field. The purpose of the checks is to not attempt to recalculate shipping automatically until we're assured we have the necessary data to save the customer profiles / perform the calculation.
It can result in some pretty unhelpful error messages otherwise:
Can you help me understand how you triggered the broken behavior? I'm not sure I can reproduce it just with the description given.
Comment #24
cvangysel CreditAttribution: cvangysel commentedYou're right, but I'm not too sure about showing the shipping options all the time.
I was personally thinking of showing a message in the shipping services pane that says all forms should be completed before you're able to select a shipping service. I'll look into this later today.
Comment #25
Zac_JH CreditAttribution: Zac_JH commentedI've been working on this a lot trying to get towards an effective single page checkout. I've been testing an alternate selector for initiating the action to trigger the JS click on shipping recalculate (in commerce_shipping.js).
This should remove the error messages Ryan describes as the shipping code will not be run until the last form element in the address has been completed. It could come undone if the last element is not "required", but I made all shipping address elements required.
Comment #26
cvangysel CreditAttribution: cvangysel commentedI'm actually working on a patch to get this fixed.
Forgot to assign to myself, will post soon.
Comment #27
cvangysel CreditAttribution: cvangysel commentedThis patch silently validates the address information. It then submits and stores the customer profile, then it shows the available shipping services. If the customer profile fields aren't complete, the user will not be able to select a shipping service.
Comment #28
joshmillercvangysel ...
I did the following at the request of rszrama:
1) I applied the patch to a clean Commerce 1.x dev, Flat Rate 1.x dev, and Shipping 2.x dev ...
2) Created two flat rates
3) Modified the components to only show up on specific states
4) Created a calculation rule that would multiply shipping by 300 if you were from Louisville
5) Moved Billing and Shipping Address panes to Shipping Pane
6) Made shipping copy from billing
7) Added a product and checked out
When I entered my billing information, the shipping pane tried to update, no errors, but the shipping remained empty. After changing my state / city a couple of times, it was clear shipping was not able to get to my billing customer profile (that should be copied as a shipping customer profile).
So I un-clicked the "copy my shipping information from billing." Once I filled it in, the shipping method was coming in and the calculation rule was firing.
To confirm, I checked out a second time and this time (before even entering the billing information) clicked and unclicked the checkbox. The shipping methods came in without a problem while adding the billing information.
To double confirm, I reversed the scenario and made shipping default and billing a "copy from shipping" checkbox. The same error was not seen here.
Ryan thought this was because the shipping customer profile needed to be created, even if it was empty, for the update to understand what was happening.
Comment #29
cvangysel CreditAttribution: cvangysel commentedI'll have another look at this today and tomorrow.
Comment #30
cvangysel CreditAttribution: cvangysel commentedI encountered the same problem as you were having and this patch should solve that problem.
Comment #31
brephraim CreditAttribution: brephraim commentedPatch failed for me running beta1+19-dev.
Comment #32
cvangysel CreditAttribution: cvangysel commented#30 was created against the 7.x-2.x branch.
Comment #33
brephraim CreditAttribution: brephraim commentedYes, forgive me, I should have specified: 7.x-2.0-beta1+19-dev, which is the latest dev.
Comment #34
rszrama CreditAttribution: rszrama commentedJust ran a review of this patch, and all appears to work fine. I'm going to read over the resultant code once more and hopefully commit tomorrow or Monday. It's about time we had a 2.0. : P
Comment #35
rszrama CreditAttribution: rszrama commentedAlrighty, so I really dug into the JS and noticed two things:
It took me several hours to track down the solution to #1, because there were plenty of red herrings for me to follow along the way. It wasn't until I was driving home from lunch (at 5 PM, b/c I sat there all afternoon pounding my head against this ; ) that I realized the number of calls to that function was increasing with each change. I then remembered that we weren't including a check in our Drupal behavior code to prevent reattaching the behavior, typically mitigated through some sort of "processed" class. Added that in and all was well with the world. This bug existed even before the patch, so it's my own crap code coming back to bite me. ; )
The fix for #2 was a lot faster. I couldn't figure out why the
return;
inside the .each() wasn't halting the recalculation process. Eventually I realized it was because we were simply returning from the anonymous function used in the .each() loop, not returning out of the recalculation function itself. I reverted to the approach I had pre-patch #30 and simply set a variable to determine whether or not recalculation should proceed. All better.I read through the rest of the code and am pretty sure I understand the rationale behind the changes. I have no problems with it, though it is a bit of a degradation to no longer show available shipping options on the first pageload. Not a huge deal, though, since we're basically assuming address information is required if recalculation is turned on. I've updated the setting's help text to make this clear, and I also made the message that shows on the initial pageload a little more generic.
Great job over all. I'm happy to commit this and knock one more barrier to a Shipping 2.0 down. : )
Commit: http://drupalcode.org/project/commerce_shipping.git/commitdiff/bc0109d
Comment #36
franzI found an issue here. Some fields were added with ajax callbacks themselves. When their ajax call was fired, the options for shipping services were changed. A moment later the Recalculate ajax is fired, but cause the "illegal" error as it submits a form that is no longer valid, but the options were not replaced by the new ones.
My patch is a workaround to avoid the bug, it simply de-select any option before recalculating.
Comment #37
rszrama CreditAttribution: rszrama commentedYeah, it sounds like a deeper issue to me. If the options were changed, this should be reflected in what's shown on the form so that illegal options may not be submitted. I don't really understand what you have going on, though. Can you post screenshots and/or the code?
Comment #38
illmatix CreditAttribution: illmatix commentedSubscribed +1
Comment #39
Zac_JH CreditAttribution: Zac_JH commentedHi guys
This still seems to be missing an important part if you're using a single page checkout. Which is the basket needs to be recalculated too.
The simple fix for this if anyone is looking for it is to replace in commerce_shipping/includes/commerce_shipping.checkout_pane.inc
/**
* Ajax callback: Returns recalculated shipping services.
*/
function commerce_shipping_recalculate_services_refresh($form, $form_state) {
return $form['commerce_shipping'];
}
WITH
/**
* Ajax callback: Returns recalculated shipping services.
*/
function commerce_shipping_recalculate_services_refresh($form, $form_state) {
$commands[] = ajax_command_replace('#commerce-shipping-service-ajax-wrapper', drupal_render($form['commerce_shipping']));
$commands[] = ajax_command_invoke(NULL, 'commerceupdchckcrt', array());
return array('#type' => 'ajax', '#commands' => $commands);
}
AND add this JS through the normal drupal add js:
(function($){
$.fn.commerceupdchckcrt = function() {
if ($('#commerce-shipping-service-ajax-wrapper').find('.ajax-progress').length) {
return setTimeout($.fn.commerceupdchckcrt, 100);
}
// Trigger the reload of the cart
$('[id^="edit-cart-contents-basket-refresh"]').trigger('click');
}
})(jQuery);
Hope it helps some-one and possibly some-one more in the *know* can include this into shipping 2?
Thanks
Comment #40
delta CreditAttribution: delta commentedTo reproduce the issue of illegal choice.
you need :
- 2 shipping services, with two rules condition based on order address component. One for france and one for others country.
- Go on the checkout page, assume france is selected by default. You have the shipping service for france selected in shipping pane.
- Change the country and submit the form before the ajax request for recalculation is done.
In the patch,
i disable the continue button until the recalculation is done to avoid error message.
Comment #41
Daemon_Byte CreditAttribution: Daemon_Byte commentedThe update button does not appear to be on the checkout page so this code doesn't work for me :(
I also noticed that if the form does not pass the validation (ie all the required fields) it does not update the shipping info. This seems confusing to me as a person might change the country to get a rough price of delivery and be misled.
Comment #42
mglamanThis patch resolved my issues - we have US Domestic shipping (tiered) and a flat International shipping rate with United States set as default country.
International shipping is applied if country is not equal to US, and the tiered shipping is applied if country is equal US.
Due to the shipping services not being calculated until all the address fields are filled out customers are automatically shown International shipping costs and we actually had a few US residents get charged as International.
This patch prevents customers from "jumping the gun" and either causing an error or receiving mis-calculation.
Comment #43
googletorp CreditAttribution: googletorp commentedRyan, can you take a look at this?
Comment #44
jessepinho CreditAttribution: jessepinho commentedCouple issues I noticed with this:
- Themes that use different markup for form elements/wrappers break the logic of the jQuery selectors. For instance, I'm using the Mothership theme, which removes both the "required" class from required form items (since each .form-item that is required has a .form-required class, anyway), as well as the .form-[type] class from form fields. Similarly, other themes could eliminate the .form-item wrapper altogether.
- As far as I can tell, there's no graceful degradation provided if JS is disabled, meaning users without JS can skip paying for shipping completely if they go through the checkout process without ever clicking "Recalculate shipping", if the "Require a shipping service at all times, preventing checkout if none are available" option is not checked. While site admins can simply check this option, shipping may not apply to some products. (Should this be a separate issue? There are already a bunch of issues related to shippable/nonshippable products; perhaps this really falls under that category.)
I'll submit a patch for the first issue ASAP.
Comment #45
jessepinho CreditAttribution: jessepinho commentedPatch attached. Note that, instead of selecting .form-item's children(), I simply selected all :input elements inside of '[id^="edit-customer-profile"]'. This allows for a simpler selector and solves the theming issue.
As for the .required selector: with the change to line 39, it is no longer required that the theme use .form-item wrappers. Also, note that if a theme does not use .required for required form elements,
recalculate
will never be set tofalse
, which simply means that shipping will be recalculated every time a form element inside the shipping profile is changed. This is not exactly ideal, but functional—and anyway, most themes still use the .required class for required form elements, so it shouldn't be a problem.Note, too, that the Mothership theme adds the .required class to the
<label>
s for required form elements. As a result,recalculate
will ALWAYS be set tofalse
, since $(label).val() will always be equal to the empty string. Since this patch selects only :input elements, no<label>
elements will be selected.Comment #46
jessepinho CreditAttribution: jessepinho commentedRerolled (see the new line 39). In the last patch, only :inputs with the .required class were selected. Now, the HTML5-friendly [required] selector is also used. (This would be more useful if Drupal core used HTML5; but for now, this will work with both default Drupal themes and HTML5 themes.)
Comment #47
primozsusa CreditAttribution: primozsusa commentedShipping service Ajax checbox: "Calculation is only triggered when all required fields have been entered and the shipping services pane is visible on the page."
This works ok if you are filling the form and exiting the form to submit button with "tab" or clicking outside of the form. But if you click directly the "continue to next step" button then ajax recalculation does not happen.
"commerce_shipping 7.x-2.0"
Comment #48
IckZ CreditAttribution: IckZ commentedThis works ok if you are filling the form and exiting the form to submit button with "tab" or clicking outside of the form. But if you click directly the "continue to next step" button then ajax recalculation does not happen.
same here!
Comment #49
mibfire CreditAttribution: mibfire commentedIt would be great when ajax is running the "continue to next step" button couldnt be clicked or if clicked it would wait for the ajax complete and then make a manual click on the submit button. Cos if ajax is running and you try to hit the submit you will get an error that says ajax http request was aborted. Moreover I dont understand why the shipping service is refreshed if billing address is changed.
Comment #50
IckZ CreditAttribution: IckZ commentedHey there,
temp. I'm in beta testing with a modified/hooked misc/ajax.js
template.php <-- replace THEME_NAME (twice :))!!
and place this file under theme_name/js/ajax_core_rewrite.js
This disables every input-form-submit-button while an ajax process is loading on the !!WHOLE SITE!!. Be carefull, i'm just in testing mode since today! I just added 3 lines of code to the original ajax.js file. They are marked es // COREHACK HERE!!
cheers!
Comment #51
mibfire CreditAttribution: mibfire commentedWOW!!! you are fcking hot, fast:DDD THX! To refine this more maybe there should be some user alert too, when user tryes to hit the submit button he/she wont understand what the hell is happening, so there should be a text next to each submit button that says "Please wait!".
I think this improvement should be built into the core.
Comment #52
mibfire CreditAttribution: mibfire commentedI did some investigation in this and we can avoid to rewrite the core ajax.js.
http://stackoverflow.com/questions/8543603/how-to-prevent-form-submit-du...
We should just use ajaxStart and ajaxSuccess methods to disable and enalbe the submit buttons.
Comment #53
mibfire CreditAttribution: mibfire commentedHere is a solution for this as i mentioned above:
Comment #54
dave bruns CreditAttribution: dave bruns commentedI've been following this issue and testing a one-page checkout configuration where shipping may change depending on the shipping country.
However, I'm not able to get shipping to recalculate in a way that updates the shipping charges displayed in the cart view.
Can anyone give me a brief summary of what is currently possible with shipping 7.x-2.1, and any pointers on how to configure so that shipping can be recalculated dynamically based on the shipping address, if that is indeed possible?
Comment #55
andyg5000Re-rolling the patch from @jessepinho since commerce_shipping.js is now in /js folder. His patch fixed my issue with having select2 drop down lists that generated a div.required selector. Obviously there's no val() there since it's a div. :input++
Comment #56
Lukas von BlarerThe patch works perfectly for me. Thanks!
Comment #57
mglamanAs in #56 and myself, patch from #55 works and supports proper calculation when shipping profile filled out.
Comment #58
mglamanHiding older patches
Comment #59
Rob C CreditAttribution: Rob C commentedAnd what about when the address changes? (country for example, that might change the calculation in the rule a bit).
Comment #60
andyg5000The issue mentioned several times above where a user can bypass shipping recalculation by not "blurring" on the last required profile form element is still outstanding. This can lead to inaccurate shipping services being charged to the customer (ie: domestic shipping charge when it should be international).
To reproduce: Fill out all required form fields, but do not exit the last field (usually zipcode). Scroll to the bottom and click continue.
Here's a solution where we disable the continue button on the keydown event within the context of the customer profile fields. Once they blur the field or a change is made, the continue button is re-enabled. The patch includes the changes in #55 as well.
Comment #61
andyg5000Comment #62
andyg5000Correct patch for #66... rookie move :)
Comment #63
bgilhome CreditAttribution: bgilhome commentedDoes it make sense to have access to $form_state then in commerce_shipping_service_rate_options / hook_commerce_shipping_service_rate_options_alter so that eg. the current country selection can be accessed? I've added the $form_state parameter to the relevant functions. Updated patch (from #62) attached.
Comment #64
joelpittet@bgilhome could you provide an interdiff @see https://www.drupal.org/documentation/git/interdiff
So we can review you changes in comparison to #62?
Comment #65
xurizaemonComment #66
joelpittet@xurizaemon I think you just may have accidentally reposted #62, thanks for giving the interdiff a shot.
Comment #67
xurizaemonGood catch Joel, hopefully this is the real deal. Basically, "also pass $form_state (byref)" in commerce_shipping_service_rate_options() and hook_commerce_shipping_service_rate_options_alter().
Patch in comment 63 didn't apply cleanly to 7.x-2.x for me, didn't like the changes in .js
Comment #68
joelpittetThanks for giving that a try @xurizaemon. It doesn't look like it's being passed by reference, although I'm failing to see how that extra bit of code is helping the issue summary.
Also there is a hunk that got lost between #62 and #63 that isn't evident in the interdiff.
This hunk got lost in #63 @andyg5000 is that bit needed?
Comment #69
andyg5000I'm not sure why the alter hooks are being updated in this issue either. That should be a separate feature request. As, for the missing hunk, I think that was a copy/paste fail on my behalf and should be the following instead:
$('[id^="edit-customer-profile-billing"] :input[required], [id^="edit-customer-profile-shipping"] :input.required').each(function() {
Overall, the approach in my patch needs to be reviewed for usability. It's worked for me on a few projects to prevent the issue, but since this is a universal update, we'd want to make sure the verbiage and process is intuitive.
Comment #70
bgilhome CreditAttribution: bgilhome commentedI've moved the alter hook changes to https://www.drupal.org/node/2452835 - "Access $form_state in shipping options hook ".
Comment #71
office@w3k.at CreditAttribution: office@w3k.at commentedJust to be make sure:
#67 - add $form_state -> moved to https://www.drupal.org/node/2452835
#65 - changes to commerce_shipping.js,
already incorporated in commerce shipping 7.x-2.1
#63, #62 - obsolet versions of #65
#55 - some changes to jquery selectors in commerce_shipping.js i think obsolet
All these patches have already been incorporated in commerce shipping 7.x-2.
Ajax shipping recalculation works with all customer-profile fields - his issue can be closed.
Or am i missing something?
Comment #72
andyg5000Re-rolling #62 against HEAD.
Patch provides:
Ability to use .required class or input[required] HTML5 selectors (#45)
Disables continue/submit button while typing into required fields (Addresses #7 bullet 4, #60)
I've also included a screenshot so you can see what it looks like when you're typing in a required field, but have not yet "blurred"
Comment #73
joelpittetJust a quick review but looks like a decent change @andyg5000.
This trailing comma causes problems with IE.
May want to indent or keep them on the same line so they don't look like statements.
Comment #74
mstrelan CreditAttribution: mstrelan commentedSorry I haven't really read this thoroughly, but I need to refresh the shipping services when the country is changed, regardless of whether or not the full address validates. Or at least hide all the shipping services until the address validates. Can't have domestic shipping visible when the shipping address has an international country selected. Is this in scope of this issue?
Comment #75
andyg5000Thanks for the feedback @joelpittet
@mstrelan, I think that may be better suited for another issue as a feature request with a reference to this thread.
Comment #76
torgosPizzaMinor typo:
Comment #78
siva_drupal CreditAttribution: siva_drupal as a volunteer and commentedThe given patch #75 does not update my shipping details in ajax callback. I have flat rating shipping in my website will be working based on country. After applying this patch also I didn't get any changes on my shipping services. Please share any idea to solve this.
Comment #79
arunkumark+1
As per the comment #78, there is no shipping information update happens after applying patch #75.
This issue related Update the cart contents pane's order totals when shipping is selected
@siva_drupal, Please try this patch may helps.
https://www.drupal.org/node/1287126#comment-11942408
Comment #80
andyg5000Related #2830800: [Follow-up] Avoid overwriting an already updated order : fixes ajax recalculation of shipping by making sure field changes to profiles trigger an order save.
Comment #81
rokurtz CreditAttribution: rokurtz commentedpatch.patch:159: trailing whitespace.
patch.patch:173: trailing whitespace.
patch.patch:185: trailing whitespace.
patch.patch:209: trailing whitespace.
patch.patch:223: trailing whitespace.
Checking patch commerce_shipping.module...
Checking patch commerce_shipping.rules_defaults.inc...
Checking patch includes/commerce_shipping.checkout_pane.inc...
Checking patch js/commerce_shipping.js...
Applied patch commerce_shipping.module cleanly.
Applied patch commerce_shipping.rules_defaults.inc cleanly.
Applied patch includes/commerce_shipping.checkout_pane.inc cleanly.
Applied patch js/commerce_shipping.js cleanly.
warning: squelched 1 whitespace error
warning: 6 lines add whitespace errors.