Jump to content

All in one shipping


CubeCart Bot

Recommended Posts

  • 6 months later...

Open the AIOS module control panel. Enable the criteria you want to determine shipping rates. There are more, less-often used criterias available if you click the "Show advanced settings" link. For this lesson, choose weight-based and subtotal-based. Save.

Clink on the Add Shipping Zone tab. On this page, give a short name/description, such as 'Canada'. If this zone is based on a country, check the 'One or more countries' radio button. Choose the name(s) of the country(s) that apply to this country-based zone. Save.

Click on the 'Canada' tab (or whatever you named this zone). You have the first five rows to define shipping prices for each combination of criteria.

You see:
Order Weight Limits and Subtotal Limits
For the first row, enter:
0  1  0  49.99
respectively in each text entry box.

For the second row, enter:
1.1  5  0  49.99
respectively in each text entry box.

For the third row, enter:
0  1  50  99.99
respectively in each text entry box.

For the fourth row, enter:
1.1  5  50  99.99
respectively in each text entry box.

Now, determine how much you want to actually charge for shipping in each of these four cases.

Up to 1Lb and less than $50 will have a Shipping Price of 5.00
Above 1Lb to 5Lb and less than $50 will have a Shipping Price of 7.00
Up to 1Lb and $50 to less than $100 will have a Shipping Price of 6.00
Above 1Lb to 5Lb and $50 to less than $100 will have a Shipping Price of 8.00

Now, determine what you want the customer to see as a description for each case. Badly worded choices could be:

Small and Cheap
Large and Cheap
Small and Expensive
Large and Expensive

There is another row that you can use for heavier or more expensive orders.

If you need more rows, click the 'Add new shipping rates' green-plus button. After using those, if you need more, click the button again. Eventually, click the "Save all changes" button.

Hopefully, the customer's order will have a weight and subtotal that matches one or more of the criteria ranges established for a zone. To determine this, enable Debugging mode. With this enabled, there will be a preamble to the checkout page detailing what AIOS attempted to match against.

Do not enter weight or currency symbols. The values entered are assumed to be what the store's default settings have for using these values.

Link to comment
Share on other sites

  • 4 weeks later...

Please describe in better detail your issue.

The All in One Shipping module does not have a field or a tab named "Countries".

When you add a new Shipping Zone, the Zone name/description is free-form. You can enter anything into it.

When you click the radio button labeled "One or more countries", there should appear a drop-down selector in a new section labeled "One or more countries", the selector named "Country/countries". Click once in that field to show the drop-down list.

If "Austria" is not in the list, then visit admin, Countries/Zones, and verify Austria is enabled in the Status column.

Link to comment
Share on other sites

  • 1 year later...

A CSRF warning will happen if the collection of key/value pairs in the POST (what gets sent back to CubeCart when you click Save) exceed the number of pairs allowed by PHP - thus cutting off the final key/value pair that contains CubeCart's security key.

This module is known for having an elaborate array of shipping rates that could easily exceed 1000 key/value pairs when only a few dozen rate tables are created amongst a few shipping zones.

The solution to this is to configure PHP to accept more key/value pairs in POST. However, there are several ways to do this and depending how your environment is setup, only some of the methods will work. So, you may need to get your hosting provider involved.

What you want is PHP's config key max_input_vars to have a value of 5000 (currently, defaults to 1000). This setting is available in PHP.INI, and can also be made in .user.ini, and/or .htaccess depending how PHP interacts with the server (CGI/FastCGI or Apache mod).

If you have cPanel as your hosting account's control panel, there may be this:

Quote

# To make changes to .htaccess, use the cPanel MultiPHP INI Editor (Home >> Software >> MultiPHP INI Editor)
# For more information, read our documentation (https://go.cpanel.net/EA4ModifyINI)

Look for that panel.

Link to comment
Share on other sites

19 hours ago, bsmither said:

A CSRF warning will happen if the collection of key/value pairs in the POST (what gets sent back to CubeCart when you click Save) exceed the number of pairs allowed by PHP - thus cutting off the final key/value pair that contains CubeCart's security key.

This module is known for having an elaborate array of shipping rates that could easily exceed 1000 key/value pairs when only a few dozen rate tables are created amongst a few shipping zones.

The solution to this is to configure PHP to accept more key/value pairs in POST. However, there are several ways to do this and depending how your environment is setup, only some of the methods will work. So, you may need to get your hosting provider involved.

What you want is PHP's config key max_input_vars to have a value of 5000 (currently, defaults to 1000). This setting is available in PHP.INI, and can also be made in .user.ini, and/or .htaccess depending how PHP interacts with the server (CGI/FastCGI or Apache mod).

If you have cPanel as your hosting account's control panel, there may be this:

Look for that panel.

Hi Bsmither

 

My max_input_vars is already set to 8000 so increased it to 10000 and still the same problem.

I have cleared all cache data and still getting the same issue

Link to comment
Share on other sites

In admin, Store Settings, Advanced tab, enable the Debug mode and enter your workstation's IP address in the adjacent field (www.showmyip.com).

Then, in the AIOS module, Save some changes.

On the next page shown, at the bottom will be a grey section showing debug info. There will be two iterations: when data was processed from the POST, and when new data was collected to be shown on the next screen.

Find the POST: list in the first iteration of debug data. There could be a complicated array, but what you are looking for is a 'token' element at the bottom of the POST: list.

If it is not there, we need to find out why.

If it is there, then compare it with SESSION:, '__system', 'token_acp'. (Mine isn't changing after every POST for some reason.)

 

Link to comment
Share on other sites

1 hour ago, bsmither said:

In admin, Store Settings, Advanced tab, enable the Debug mode and enter your workstation's IP address in the adjacent field (www.showmyip.com).

Then, in the AIOS module, Save some changes.

On the next page shown, at the bottom will be a grey section showing debug info. There will be two iterations: when data was processed from the POST, and when new data was collected to be shown on the next screen.

Find the POST: list in the first iteration of debug data. There could be a complicated array, but what you are looking for is a 'token' element at the bottom of the POST: list.

If it is not there, we need to find out why.

If it is there, then compare it with SESSION:, '__system', 'token_acp'. (Mine isn't changing after every POST for some reason.)

 

Is this what you are looking for? 

debug.png

Not sure if this helps but have cleared the error logs as well then tried to make the changes and this is what is showing in the error logs

 

  Date Message
Today, 21:49 File: [controller.admin.pre_session.inc.php] Line: [26] "SET @@time_zone = 'Europe/London'" - Unknown or incorrect time zone: 'Europe/London'
Today, 21:49 File: [controller.admin.pre_session.inc.php] Line: [26] "SET @@time_zone = 'Europe/London'" - Unknown or incorrect time zone: 'Europe/London'
Today, 21:49 File: [controller.admin.pre_session.inc.php] Line: [26] "SET @@time_zone = 'Europe/London'" - Unknown or incorrect time zone: 'Europe/London'
Today, 21:49 File: [controller.admin.pre_session.inc.php] Line: [26] "SET @@time_zone = 'Europe/London'" - Unknown or incorrect time zone: 'Europe/London'
Today, 21:49 File: [controller.admin.pre_session.inc.php] Line: [26] "SET @@time_zone = 'Europe/London'" - Unknown or incorrect time zone: 'Europe/London'
Today, 21:49 File: [controller.admin.pre_session.inc.php] Line: [26] "SET @@time_zone = 'Europe/London'" - Unknown or incorrect time zone: 'Europe/London'
Link to comment
Share on other sites

The timezone error is a known situation that is best solved by having your hosting provider load the MySQL Server with timezone data into a certain system table.

I am just seeing the GET part of a page request. If this is a screenshot immediately after attempting to save some data, that suggests that the version of CubeCart in use is earlier than CC629 which will not show the POST component. Please let us know the exact version of CubeCart you are running.

 

 

Link to comment
Share on other sites

I am currently running 6.2.9 version of cubecart.

 

Would it be easier if i was to private message you with admin logins?

 

so you could do the debug thing yourself as you know what it is you are looking for and im just guessing

Edited by WSD
Link to comment
Share on other sites

  • 3 weeks later...
  • 1 year later...

AllInOneShipping-1.0.22 is the latest version.

I have found the update with the default packaging weight, needs some tweaking before being used.

I assume that the default packaging weight is in kilogrammes, my default shipping mass.

At the check out the packaging shipping weight is not shown in the total weight. ie a 1.0 kg packaging weight is not shown as an addition to the total weight.

 

I await the next version before using default packaging weight.

Link to comment
Share on other sites

15 hours ago, harrisorganic said:

At the check out the packaging shipping weight is not shown in the total weight. ie a 1.0 kg packaging weight is not shown as an addition to the total weight.

 

Hi there l'm guessing this is obvious but have you ticked the box above the default shipping weight? The one titled "Weight-based rates"?

I am unable to test it myself right now.

Link to comment
Share on other sites

Hi Cubicsquare,

Yes I use a weight based AIOS so the box is ticked.

For me the resultant weigh at the checkout did not increase.  I did not check if the price versus weight changed, but did check the total weight at the checkout using the settings/layout tab.

As I have the " FREE shipping"  extension set for under 0.4 kg a 0.2kg package weight reset the shipping value to more than zero. (Even though the option for free shipping was in the drop down box)

This needs to be sorted before I use it.

All part of a new version.

Link to comment
Share on other sites

"At the check out the packaging shipping weight is not shown in the total weight."

I can concur.

In the AIOS shipping class file, the basket details are copied into the class's parameters so that the class can incorporate the total product weight, basket sub-total, and count the number of products (optionally not count digital items).

What will need to happen is for the shipping module to change the basket details adding a calculated - likely a fixed - shipping carton weight to the basket's (total) 'weight'.

What needs to be verified is, how reliable will be this new weight value. If the basket 'weight' is calculated for every page load, then the reliability should be high. But if ever the shipping class is called to recalculate shipping costs where the basket 'weight' already includes a previous shipping weight addition, then there is now two additions.

Or, the shipping class can add a separate shipping weight detail to the basket. That would require a small edit to the checkout template, admin order summary page, and the database. Not needed anywhere else because the customer never sees how the shipping charges are calculated.

And then there needs to be consideration given to how to deal with the possibility that there may be more than one shipping module enabled, each advising the basket of their respective shipping carton weights.

Edited by bsmither
Link to comment
Share on other sites

  • 3 months later...

Hi, i get this message in the basket after i put anything into it:
"The following errors were detected: Unfortunately there are no suitable shipping methods available for your order. This may be because the total weight of your order is too high or we cannot ship to your country. Please contact a member of our staff for any further inquiries."

The plugin seems to be settled but i'm a newby into this so maybe not. What could that be and how to solve it? Thanks for every help or directions.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...