• I’ve successfully added one Provider. When I add the second, the circle spins but never ends and no error is given. If (after 10 minutes) I refresh the page, the provider is there.

    But when I try and use the provider in an Order, I select the provider and enter the tracking detail and click Save, I receive a message “Please select a Provider”.

    I have tried deleting and re-adding providers, but always the same result.

    Happy to do any troubleshooting on this.

    • This topic was modified 6 years, 4 months ago by da_Mask.
Viewing 8 replies - 1 through 8 (of 8 total)
  • Thread Starter da_Mask

    (@da_mask)

    Just to update this, as soon as I press the Add Provider button (to add a second) the spinner beside that button becomes active/visable, and doesn’t stop spinning until I refresh the page.

    I have tried disabling all plugins and code snippets on my site, but the spinner always spins once that button gets pressed.

    There seems to be an issue with how the provider is being saved. For instance, I have also tried replacing the hard coded providers with the ones I want. I.e. I do a fresh install of your plugin, and I overwrite these lines:-
    array( 'id' => 1, 'name' => 'Thailand post', 'tracking_url' => 'https://emsbot.com/#/?s=' , 'add_tracking_url' => 1 ),
    array( 'id' => 2, 'name' => 'Kerry express', 'tracking_url' => 'https://th.kerryexpress.com/en/track/?track=' , 'add_tracking_url' => 1 ),
    With the providers I want, and then activate the plugin. This seems to work, except when the completed email is sent, the first provider is always listed in the “Provider” column of the email, no matter which provider I’ve selected (all other columns of the email hold the correct info; i.e. tracking number, date and tracking url).

    • This reply was modified 6 years, 4 months ago by da_Mask.

    I think, the problem is a call to the wp_kses() function in mimo-woocommerce-order-tracking.php. Try changing line 268 from:

    $order = wp_kses( $_POST["list_item"] );

    to:

    $order = wp_kses( $_POST["list_item"], array() );

    The function needs a second argument.

    Javiermates, thank’s. Perfect solution. Unfortunately the name of the carrier, all the same, there remains only one (when the client reviews the order).

    @asasergey

    To correct the provider name line 631 you have to replace

    $key = array_search( $order_id, array_column( $this->provider_list, 'id') );

    by

    $key = array_search( $tracking_provider_id, array_column( $this->provider_list, 'id') );

    @newpadmin

    Thank you. Again a great solution.

    clk87

    (@clk87)

    Thanks guys, this has been a huge help!

    Thread Starter da_Mask

    (@da_mask)

    I nearly fell off my chair when I saw the dev had issued an update for this plugin.

    He has added @newpadmin’s edit, but unfortunately has neglected to add @javiermates ‘s edit, and therefor that second array() argument still needs to be added to line 268

    • This reply was modified 5 years, 10 months ago by da_Mask.
    • This reply was modified 5 years, 10 months ago by da_Mask.

    Finally a solution!
    Thanks @newpadmin and @javiermates.

Viewing 8 replies - 1 through 8 (of 8 total)
  • The topic ‘Adding second provider doesn’t complete’ is closed to new replies.