Skip to content

Instantly share code, notes, and snippets.

@JamoCA
Created August 8, 2013 00:48
Show Gist options
  • Select an option

  • Save JamoCA/6180447 to your computer and use it in GitHub Desktop.

Select an option

Save JamoCA/6180447 to your computer and use it in GitHub Desktop.
ColdFusion UDF to generate tracking URLs for major shipping companies: UPS, Fedex, U.S. Postal Service, OnTrac, DHL based on shipment tracking URLs at http://verysimple.com/2011/07/06/ups-tracking-url/ (NOTE: You can test this at CFLive.net)
<cfscript>
function getShippingURL(shipper, trackingNumber){
var shipURL = '';
var trackingURLS = StructNew();
trackingURLS['UPS'] = 'http://wwwapps.ups.com/WebTracking/track?track=yes&trackNums=';
trackingURLS['FedEx'] = 'http://www.fedex.com/Tracking?action=track&tracknumbers=';
trackingURLS['USPS'] = 'https://tools.usps.com/go/TrackConfirmAction_input?qtc_tLabels1=';
trackingURLS['DHLUS'] = 'http://track.dhl-usa.com/TrackByNbr.asp?ShipmentNumber=';
trackingURLS['DHLGlobal'] = 'http://webtrack.dhlglobalmail.com/?mobile=&trackingnumber=';
trackingURLS['OnTrac'] = 'http://www.ontrac.com/trackingres.asp?tracking_number=';
trackingURLS['ICC'] = 'http://iccworld.com/track.asp?txtawbno=';
trackingURLS['LaserShip'] = 'http://www.lasership.com/index.php?option=com_tracking&task=redirectTracking&Itemid=101&tracking_number=';
if (StructKeyExists(trackingURLS, shipper)){
shipURL = trackingURLS[shipper] & URLEncodedFormat(trim(trackingNumber));
}
return shipURL;
}
</cfscript>
<CFOUTPUT>
<CFLOOP LIST="UPS,Fedex,USPS,DHLUS,DHLGlobal,OnTrac,ICC,LaserShip" INDEX="thisShipper">
<CFSET ShipperURL = getShippingURL(thisShipper, "ABC123")>
#thisShipper# = <a href="#ShipperURL#" target="_blank">#ShipperURL#</a><br>
</CFLOOP>
</CFOUTPUT>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment