Jump to content
chris23

[contribution] Tracking Module

Recommended Posts

Support forum for tracking module

 

http://addons.oscommerce.com/info/5535

 

Note: this forum is for support for the tracking module framework. For support on a particular courier module, visit the support forum for that module.


Please use forum for support rather than PM - PMs unrelated to my contributions will be ignored.

Google Site Search is your friend

My contributions: Tracking Module | PDF Customer Invoice | Subcategory textboxes

Share this post


Link to post
Share on other sites
This looks awesome!!

 

Do you haev any screen shots?

 

Any plans to support UPS?

 

Rich

 

Hi Rich,

 

Yes I have some screenshots which I'll post for you. I left them out of the zip as it would have made the upload over the size limitation.

 

As for plans for UPS, I should have been clearer in my contribution description.

 

I've written this module to get me out of writing any more tracking modules! I will be maintaining the framework and my three modules.

 

I originally did Royal Mail, then was asked to do Parcelforce, then Citylink. Then I was asked for concurrent use.

 

The idea of this contribution is to allow other osC users to write their own modules. If I were to undertake every request, I'd have no time to eat / sleep / breathe!

 

What I hope I've done is provide a simple enough tool for interested parties to write their own modules. I suspect that it won't be very long before the "big boys", UPS, FedEx and DHL are catered for. One user is already writing a module for the Norwegian Post Office.

 

Kind regards,

 

Chris


Please use forum for support rather than PM - PMs unrelated to my contributions will be ignored.

Google Site Search is your friend

My contributions: Tracking Module | PDF Customer Invoice | Subcategory textboxes

Share this post


Link to post
Share on other sites

hi chris thank you for the great job .....

 

ok i have instaleed and all works fine only when i try o click in track number in boh admin or client account page i get this error mesage

 

***************

Fatal error: Call to undefined function: mb_convert_encoding() in /home/promoseu/public_html/shop/rm_tracking.php on line 101

 

[x] Close******************

 

any help please

Edited by promosat

Share this post


Link to post
Share on other sites
hi chris thank you for the great job .....

 

ok i have instaleed and all works fine only when i try o click in track number in boh admin or client account page i get this error mesage

 

***************

Fatal error: Call to undefined function: mb_convert_encoding() in /home/promoseu/public_html/shop/rm_tracking.php on line 101

 

[x] Close******************

 

any help please

 

Hi,

 

Bit odd. mb_convert_encoding is a standard PHP function, well since PHP 4.0.6 according to the manual. Your hosting provider may not have multibyte support compiled in however so this function may be unavailable.

 

Try editing rm_tracking.php and replace

 

echo mb_convert_encoding($content, "UTF-8", "ISO-8859-1");

 

with

 

echo $content;

 

The mb_convert_encoding function just stops occasional display issues with Royal Mails UTF encoding.

 

HTH

 

Chris


Please use forum for support rather than PM - PMs unrelated to my contributions will be ignored.

Google Site Search is your friend

My contributions: Tracking Module | PDF Customer Invoice | Subcategory textboxes

Share this post


Link to post
Share on other sites
One user is already writing a module for the Norwegian Post Office.

 

Hi Chris !

 

First i just want to say thanks for a very nice contrib! I agree with you, soon all the big boys will see this and make contribs for their courier(s). I've kept my eyes open for something like this for a long time.

 

I installed your framework yesterday and also made a module for the Norwegian Post office:) I'll relase it if the other guy doesn't, the code needs a lot of cleaning first, but it works.

 

For some reason, if i do make changes to a module in modules.php the contrib stops working. I had to make changes to the file in inc./modules/tracking/ and remove/install the module again, im not sure why.

Edited by akvario

Share this post


Link to post
Share on other sites

More info on the bug.

 

I went to modules.php and pressed install:

 

121354.jpeg

Now it's working.

-

I tested, and went back to modules.php, opened the module, didn't do any changes... Hit SAVE.

121355.jpeg

 

Check the TRACKING_REGEXP_RM, for some reason it have changed. This happens in both your courier modules.

 

Any idea?

Share this post


Link to post
Share on other sites

Great work, took a while for me to update from your other contribute but seem to have got there apart from a couple of things. When you do not enter a tracking number I get the following:

 

Warning: constant() [function.constant]: Couldn't find constant EMAIL_NOTIFICATION_ in /**/**/catalog/includes/classes/tracking_module.php on line 186

Warning: Cannot modify header information - headers already sent by (output started at /**/**/catalog/includes/classes/tracking_module.php:186) in /**/**/catalog/admin/includes/functions/general.php on line 57

 

The other slight issue I have is as my site is not default oscommerce, I got it to work with your original rm_tracking module I has the following line in admin/orders.php:

 

if ( (($check_status['orders_status'] != $status) || tep_not_null($comments) || tep_not_null($rm_tracking_id)) && $id_failed == false ) {

 

as

 

if ( ($check_status['orders_status'] != $status) || $comments != '' || $rm_tracking_id && $id_failed == false ($status ==DOWNLOADS_ORDERS_STATUS_UPDATED_VALUE) ) {

 

I was wondering if I could convert this line too work with the new module its probably really simple but I am not seeing it this late at night lol.

 

Ah and I am getting:

Error calling tracking script. Please try later.

[x] Close

 

When i click on the number

 

I wonder if you have any suggestions?

Share this post


Link to post
Share on other sites
Any idea?

 

Hi there,

 

I think I can see your problem. Do you already have the Royal Mail contribution installed and are you trying to install your own?

 

It looks like you're using the constants reserved by the Royal Mail contribution. The configuration keys require you to use a different 2 letter code for your module.

 

Have a look at the readme.html in the developers folder. There's instructions in there to register your code with me so there's no duplication.

 

If you have _RM entries in the db and try another install, without removing the old entries, you get the behaviour you describe.

 

Hope this makes some sort of sense ...

 

Regards,

 

Chris


Please use forum for support rather than PM - PMs unrelated to my contributions will be ignored.

Google Site Search is your friend

My contributions: Tracking Module | PDF Customer Invoice | Subcategory textboxes

Share this post


Link to post
Share on other sites
Great work, took a while for me to update from your other contribute but seem to have got there apart from a couple of things. When you do not enter a tracking number I get the following:

 

Warning: constant() [function.constant]: Couldn't find constant EMAIL_NOTIFICATION_ in /**/**/catalog/includes/classes/tracking_module.php on line 186

Warning: Cannot modify header information - headers already sent by (output started at /**/**/catalog/includes/classes/tracking_module.php:186) in /**/**/catalog/admin/includes/functions/general.php on line 57

 

Hi William,

 

I think the first thing to do is check through the installation again carefully if you haven't already (did you really attempt this a 3AM????!!! :blink:) - it's not the easiest, especially on a heavily modified store. Somewhere the two letter RM identifier isn't getting passed.

 

The other slight issue I have is as my site is not default oscommerce, I got it to work with your original rm_tracking module I has the following line in admin/orders.php:

 

if ( (($check_status['orders_status'] != $status) || tep_not_null($comments) || tep_not_null($rm_tracking_id)) && $id_failed == false ) {

as

 

if ( ($check_status['orders_status'] != $status) || $comments != '' || $rm_tracking_id && $id_failed == false ($status ==DOWNLOADS_ORDERS_STATUS_UPDATED_VALUE) ) {

I was wondering if I could convert this line too work with the new module its probably really simple but I am not seeing it this late at night lol.

 

The code to replace

 

 

if ( (($check_status['orders_status'] != $status) || tep_not_null($comments) || tep_not_null($rm_tracking_id)) && $id_failed == false ) {

 

is

if ((($check_status['orders_status'] != $status) || tep_not_null($comments)) && ($track_id_failed == 0)){

 

Your code:

 

if ( ($check_status['orders_status'] != $status) || $comments != '' || $rm_tracking_id && $id_failed == false ($status ==DOWNLOADS_ORDERS_STATUS_UPDATED_VALUE) ) {

 

Doesn't look right to me after the == false below. I think there should be a &&

== false ($status ==DOWNLOADS_ORDERS_STATUS_UPDATED_VALUE) )

 

The replacement is probably:

if ((($check_status['orders_status'] != $status) || tep_not_null($comments)) && ($track_id_failed == 0) && ($status ==DOWNLOADS_ORDERS_STATUS_UPDATED_VALUE)) {

 

YMMV as I'm not sure what's added the $status ==DOWNLOADS_ORDERS_STATUS_UPDATED_VALUE

 

 

Ah and I am getting:
Error calling tracking script. Please try later.
[x] Close
When i click on the number

 

Probably related to the constant() issue above. The letter code is not getting passed.

 

Please post back, if after checking your install, you're still having issues. I may need a copy of your catalog/admin/includes/functions/general.php, especially if it's been modified.

 

Cheers

 

Chris


Please use forum for support rather than PM - PMs unrelated to my contributions will be ignored.

Google Site Search is your friend

My contributions: Tracking Module | PDF Customer Invoice | Subcategory textboxes

Share this post


Link to post
Share on other sites

Ok I fixed the issue of the blank tracking id was to do with the line I was not sure about, i changed it to:

 

if ( ($check_status['orders_status'] != $status) || $comments != '' || tep_not_null($track_id_failed == 0) && ($status ==DOWNLOADS_ORDERS_STATUS_UPDATED_VALUE) ) {

 

and that seems to work it did not quite like the tep null in front of the comments kept saying the status had not changed etc. Still have the issue with the:

 

Error calling tracking script. Please try later.

[x] Close

 

What files would help?

Share this post


Link to post
Share on other sites

Hi,

 

just installed this contribution,

when I Update order getting this error

 

Warning: constant() [function.constant]: Couldn't find constant EMAIL_NOTIFICATION_ in C:\Program Files\catalog\includes\classes\tracking_module.php on line 186

 

Warning: Cannot modify header information - headers already sent by (output started at C:\Program Files\catalog\includes\languages\english\tracking_module.php:43) in C:\Program Files\catalog\htdocs\admin\includes\functions\general.php on line 34

 

 

Please Advise where I am doingmistake.

 

Thanks

Zee

Share this post


Link to post
Share on other sites
Hi,

 

just installed this contribution,

when I Update order getting this error

 

Warning: constant() [function.constant]: Couldn't find constant EMAIL_NOTIFICATION_ in \catalog\includes\classes\tracking_module.php on line 186

 

Warning: Cannot modify header information - headers already sent by (output started at \catalog\includes\languages\english\tracking_module.php:43) in \catalog\htdocs\admin\includes\functions\general.php on line 34

Please Advise where I am doingmistake.

 

Thanks

Zee

Further to My Previous post what I noticed now When I entered Royal mail Reference number it updated without any error, but if I just want to enter any thing with no tracking number in, it comes up with above error.

SOme time I just Enter note with no notification to customers for admin record in each order.

 

Please help

 

Regards

Zee

Share this post


Link to post
Share on other sites
Further to My Previous post what I noticed now When I entered Royal mail Reference number it updated without any error, but if I just want to enter any thing with no tracking number in, it comes up with above error.

SOme time I just Enter note with no notification to customers for admin record in each order.

 

Please help

 

Regards

Zee

 

Hi ,

one step Further, now Followed wroughtec suggestion and used adjusted my code

from

if ((($check_status['orders_status'] != $status) || tep_not_null($comments)) && ($track_id_failed == 0)) {

 

to

 

if ( ($check_status['orders_status'] != $status) || $comments != '' || tep_not_null($track_id_failed == 0) && ($status ==DOWNLOADS_ORDERS_STATUS_UPDATED_VALUE) ) {

 

Now when I update with Notify Customer and Append Comments option checked, it come up with this error

 

Warning: constant() [function.constant]: Couldn't find constant EMAIL_NOTIFICATION_ in \includes\classes\tracking_module.php on line 186

 

Warning: Cannot modify header information - headers already sent by (output started at \includes\classes\tracking_module.php:186) in \admin\includes\functions\general.php on line 34

 

but it send email to customer and also update this in admin Order comment box and customer acount info.

 

If I uncheck notify customer and append customer notify box it update order without any error.

 

Please advise how I can fix this bit of error.

 

regards

 

zee

Edited by zeeshop

Share this post


Link to post
Share on other sites
Please advise how I can fix this bit of error.

 

regards

 

zee

 

Hi Zee,

 

I'm not sure wroughtec's solution is applicable to your setup.

 

Can you PM me a copy of your admin/orders.php so I can see what's going on?

 

Thanks

 

Chris


Please use forum for support rather than PM - PMs unrelated to my contributions will be ignored.

Google Site Search is your friend

My contributions: Tracking Module | PDF Customer Invoice | Subcategory textboxes

Share this post


Link to post
Share on other sites

Hi Chris,

 

Yes, You fixed my problem of the day.....

 

ALL working Well. Thanks for all your support.

 

Kind Regards

 

Zee

Share this post


Link to post
Share on other sites

I don't think my solution is completely correct either DOH! Did not test the ticks on and off.

Share this post


Link to post
Share on other sites

looks like a great contribution, I have a few small bugs I need a little help with. In admin>orders>edit I get this error just above the comments box.

Warning: constant() [function.constant]: Couldn't find constant NO_JS_ALTERNATIVE_RM in Y:\mydomain.com\catalogue\includes\classes\tracking_module.php on line 200

 

this error is also present just below order history in the online catalogue in account_history_info.php when a customer logs in

 

the other issue is just below the comments box in tracking modules section in admin>orders>edit

 

 

Warning: constant() [function.constant]: Couldn't find constant HEADING_RM in Y:\mydomain.com\catalogue\includes\classes\tracking_module.php on line 137

 

Warning: constant() [function.constant]: Couldn't find constant TRACKING_MODULE_NAME_RM in Y:\mydomain.com\catalogue\includes\classes\tracking_module.php on line 137

 

Warning: constant() [function.constant]: Couldn't find constant TRACK_IMAGE_URL_RM in Y:\mydomain.com\catalogue\includes\classes\tracking_module.php on line 137

 

 

thats it if I can get a fix I am sorted,

 

only tracking module installed so far is Royal Mail

Share this post


Link to post
Share on other sites
looks like a great contribution, I have a few small bugs I need a little help with. In admin>orders>edit I get this error just above the comments box.

this error is also present just below order history in the online catalogue in account_history_info.php when a customer logs in

 

the other issue is just below the comments box in tracking modules section in admin>orders>edit

thats it if I can get a fix I am sorted,

 

only tracking module installed so far is Royal Mail

 

 

Hi,

 

When you installed the RM module, did you remember to add the required constants in the readme.html to catalog/includes/languages/english/tracking_module.php?

 

It looks like you have these entries missing.

 

HTH

 

Chris

Edited by chris23

Please use forum for support rather than PM - PMs unrelated to my contributions will be ignored.

Google Site Search is your friend

My contributions: Tracking Module | PDF Customer Invoice | Subcategory textboxes

Share this post


Link to post
Share on other sites

A bug has come to light where errors are generated when an update email is sent.

I have uploaded a modified tracking_module.php class file to the contrib area (http://addons.oscommerce.com/info/5535)

Just upload this file, overwriting catalog/includes/classes/tracking_module.php.

Apologies to those users who were suffering from this bug :blush:

 

Chris


Please use forum for support rather than PM - PMs unrelated to my contributions will be ignored.

Google Site Search is your friend

My contributions: Tracking Module | PDF Customer Invoice | Subcategory textboxes

Share this post


Link to post
Share on other sites

when I enter a tracking number and set the status to dispatched I get a blank page with this error

 

Warning: Cannot modify header information - headers already sent by (output started at Y:\yourdomain.com\catalogue\includes\languages\english\tracking_module.php:61) in Y:\yourdomain.com\catalogue\admin\includes\functions\general.php on line 22

 

cheers

Brian

Share this post


Link to post
Share on other sites

Hi

 

Have install and all looks ok, but when I come to add a tracking number it’s not applied.

 

All I get "Warning: Nothing to change. The order was not updated."

 

Any ideas.

 

Rob

Share this post


Link to post
Share on other sites

Hi Chris,

 

Tracking module is working well, No problem in Royal mail tracking.

But In city link Module Help Note stated:

 

"

Add Initial Citylink Tracking Data (if applicable to this order)

 

Please enter your 8 digit tracking ID for this order. Do not use spaces. The format is two letters, followed by 6 digits, eg AB123456

"

But When we are dispatching order through City Link Tracking Id provided by City link is some thing like this

VGZ12345

Means three letters followed by 5 digits.

When I enter this Data in Tracking field it comes up with this error

"The Initial Citylink ID you have supplied is not valid. Please check and try again. The required format is 2 letters, 6 digits eg AB123456. Do not use spaces."

 

Will appreciate any help.

 

Regards

 

Zee

Share this post


Link to post
Share on other sites
But When we are dispatching order through City Link Tracking Id provided by City link is some thing like this

VGZ12345

Means three letters followed by 5 digits.

When I enter this Data in Tracking field it comes up with this error

"The Initial Citylink ID you have supplied is not valid. Please check and try again. The required format is 2 letters, 6 digits eg AB123456. Do not use spaces."

 

I found the same with the Royal Mail tracker too - I went to Modules > Tracking and uninstalled, reinstalled and it works fine.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×