tig_postnl - Version 1.7.0

Version Notes

==== v1.7.0 ====
==== New Features ====
- Added support for sunday delivery.
- Added ability to charge a fee for sunday delivery.

==== Improvements ====
- Added compatibility with Picqer extension.
- Added the option to disable system.xml fields. This may be useful for other extensions that want to replace PostNL features.
- Updated CIF services used to CIF 1.14.
- Improved delivery date calculation to improve performance and stability.
- Updated Track & Trace URL format to the new PostNL standards
- Delivery options on Idev's OneStepCheckout will not immediately save the first available delivery option, rather than waiting for customer interaction

==== Bug Fixes ====
- Fixed an issue where the buspakje configuration modus check ignored the 'isbuspakjeactive' flag.
- Fixed an issue where configurable products never allowed delivery options.
- Fixed a rare problem that could cause an infinite loading spinner in GoMage LightCheckout when saving the selected delivery options.
- Fixed a problem where delivery dates and delivery time estimations are double-corrected for timezone differences.
- Fixed a problem where certain cron jobs would report that a directory is not readable, when actually it is just empty.
- Removed an unnecessary check when determining whether delivery options are available for the current quote.

==== v1.6.0 ====
==== New Features ====
- PostNL delivery options are now compatible with GoMage LightCheckout.
- PostNL MijnPakket login and Postcode check are now compatible with GoMage LightCheckout.
- It is now possible to use Magento's Soap API to confirm PostNL shipments, print shipping labels, get Track&Trace information and more!
- Added the option to not print a PostNL shipping label when printing the PostNL packing slip.
- Added a new uninstall button to safely uninstall the PostNL extension.

==== Improvements ====
- Updated the Google Maps integration to v3.19.
- Optimized error handling for certain CIF errors.
- Reverted the PostNL extension's Zend_Soap implementation to native PHP SoapClient for improved compatibility with HHVM.
- Improved the out-of-stock check used in PostNL delivery options to better match merchant expectations.
- Improved performance when printing packing slips or shipping labels.
- Malta is now considered an EPS destination.
- Added compatibility with Magento's SUPEE-6285 patch.
- Improved the address-splitting regular expression to better split house numbers from street names.

==== Bug Fixes ====
- Fixed an incorrect variable name in the upgradeNotification block.
- Fixed an issue where the mobile phone number popup would not appear when selecting a parcel dispenser location in onestepcheckout after a coupon had been added.
- Fixed a conflict with OneStepCheckout, where selecting a delivery date in the popup and then closing the popup (not by saving, but by using the 'x' icon), PostNL would be selected as delivery option but not the date, leaving the shipment with no shipping information.
- Fixed an issue where products on the PostNL packing slip would sometimes show 0 tax amount.
- The shipping date is now also shown on the packing slip when the show shipping method option is disabled.
- Fixed a javascript issue with PostNL COD when Delivery Options are disabled .
- Fixed several problems relating to a server's time zone configuration.
- Fixed an issue in the date renderers in Magento's backend where an unnecessary timezone correction resulted in incorrect dates being displayed.
- Fixed an issue where the attribute update cron would not be removed automatically when all products were updated.
- Fixed a problem with the temporary update crons when config cache is active.
- Fixed a problem where re-activating a quote after the order had been placed could lead to missing PostNL data.
- Fixed an issue where orders could incorrectly have an expected delivery date when no delivery option was selected.
- Fixed compatibility with payment extensions (e.g. Sisow) to prevent crashing when printing packing slip.

==== v1.5.3 ====
==== Bug Fixes ====
- Fixed an issue where in certain situations the delivery date may be equal to the shipping date for orders where no delivery date was chosen during checkout.
- Fixed an issue where all orders would be considered to be placed past the cut off time when the shipping duration was configured to be more than 1 day.

==== v1.5.2 ====
==== New Features ====
- Added compatibility with the Bpost Shipping Manager extension.
- Added the option to hide often shown warnings for the current admin user.

==== Improvements ====
- Added a warning to the configuration page when using the Postcode.NL extension as this extension may conflict with the PostNL extension/
- The PostNL postcode check functionality is now automatically disabled when using the Postcode.NL extension.
- Improved error handling when changes were made directly to the Magento database.
- The expected shipping and delivery dates are now also saved when no delivery option was selected during checkout.
- Several additional characters are now allowed in the packing slip item columns.
- Modified the way delivery options determine whether products are in stock in order to better match merchant expectations.
- Modified interface element for stock options for delivery options to better match merchant expectations.
- Modified code to prevent errors when the default cut-off time is missing.
- Improved error handling when changing a package shipment to a letter box shipment and the default letter box product option is unavailable.
- Added caching to the store time zones in the PostNL data helper.
- Added additional checks to prevent no extra cover amount from being sent for extra cover shipments.
- Fixed an incorrect English name for parcel dispensers.
- Removed the parcel dispenser label from the delivery options interface.
- Added a new notification to the order email to make it more clear that the customer has chosen to have their order delivered at a pick up location.
- Added a new notification to the billing and shipping address templated in OPC to make it more clear that the customer can select a pick up location in the shipping method step.
- The shipping address is now hidden in the progress bar on OPC when a post office address is selected.

==== Bug Fixes ====
- Fixed the split address lines detection on the PostNL config page. This should prevent incorrect warnings about split address lines from being shown.
- Fixed a bug where the chosen product option was not saved when using the create shipments mass action.
- Fixed the order confirm date renderer for orders that were placed late at night.
- A PostNL order is now also created for orders that do not have an associated delivery option. This prevents unexpected behaviour in the order grid when filtering on the confirm date column.
- Shipping labels are now oriented horizontally to prevent errors when printing directly from Chrome.
- Fixed an issue where the extra cover amount option was shown on the create shipment page when the 'is_buspakje' checkbox was checked by default and an extra product option was selected as default.
- Fixed an issue where buspakje was available for avond shipments.
- Fixed issue with not selecting delivery option in OSC would cause order date to be show as delivery date.
- Fixed an issue where the delivery and confirm dates were calculated using the server's time zone, rather than the UTC time zone.
- Fixed a possible notice due to a missing default value in the 'hour-minute' field renderer.
- Fixed an issue where filtering on the order type column would cause errors due to an incorrect join alias.
- Removed regex-based validation for delivery location names to prevent valid names from being blocked. Instead all tags are stripped from the name and the name is additionally escaped before processing.
- Fixed an issue which caused the Magento table rates title to be displayed for PostNL.
- Fixed an issue which caused the default letter box parcel option configuration setting to not be visible.
- Fixed an issue which could cause JS errors when there was an error while loading delivery options.
- Dots are now allowed in street addresses..
- Fixed a small typo in certain error messages.
- Fixed a small layout problem in the delivery options on small desktop screens.
- Fixed a bug where delivery options are not available when purchasing the same configurable product twice with different options.
- Fixed a warning message in the update attributes cron due to an undefined index.
- Fixed an issue where only come delivery options are available when the product attribute cron is still running.

==== v1.5.1 ====
==== New Features ====
- Added a parcel dispenser filter to the delivery options location picker.

==== Improvements ====
- Improved the available filter options for the shipping date columns in the order and shipment grids.
- Improved the way parcel dispenser pick-up locations are shown in the delivery options interface.
- The chosen pick up location is now shown in Idev's OneStepCheckout's order preview pop-up.
- It is no longer possible to configure the extension to use split address lines when there is only 1 address line available.
- When using split address lines it is no longer possible to use the same address line for multiple fields.

==== Bug fixes ====
- Fixed a problem that prevented PostNL Checkout orders from being placed.
- Removed an unnecessary css link in the default Magento theme.
- Phone numbers are no longer mandatory for PostNL post office locations.

==== v1.5.0 ====
==== New features ====
- Added support for printing return labels and tracking return shipments.
- You may now change the number of parcels in a shipment as long as the shipment has not yet been confirmed with PostNL.
- Added the option to show the chosen delivery options and post office pick-up location in transactional e-mails.
- Added a new mass action to the shipment grid to update the shipping status of selected shipments.

==== Improvements ====
- The extension has been updated to CIF 1.10 specifications.
- Cut-off times now take the store's time zone into account.
- Improved performance in the webshop's backend.
- Reduced the risk of extension conflicts in the order and shipment grids.
- It is now possible to print GlobalPack shipping labels even when one of the products in the shipment is missing a country of origin value.
- Address lines on the PostNL packing slip now have a maximum size of 33 characters (up from 20).
- The selected post office location is now shown on the sales/guest/form pages in Magento.
- The confirm and delivery dates of a shipment are now stored in the UTC time zone in the database.
- The selected post office location is now shown on the OnePage Checkout progress bar during checkout.
- The schedules of several cronjobs related to background processes have been redistributed over the day to reduce the load on the sever's cron during peak hours.
- VAT and discounts are now taken into account when calculating a shipment's base grandtotal amount.
- The extension will now shown a proper error message when the sever's PHP version is below the minimum version required by the PostNL extension (PHP 5.3.0).
- Decimal values are now allowed in the alternative standard product option field.
- Shipping labels will now be deleted from the database 30 days after the shipment has been delivered in order to give the consumer enough time to return the shipments without allowing the database to become too bloated.

==== Bug fixes ====
- The Track & Trace URL for orders which are shipped to post office locations has been modified to correctly use the postcode of the intended recipient.
- PostNL mass actions in the order grid will no longer affect non-PostNL mass actions which may have been added by other extensions.
- Postcodes are no longer required in order to create a Track & Trace URL.
- It is no longer possible to modify the confirmation of letter box parcel shipments without Track & Trace.
- An issue in Magento CE 1.6 and EE 1.11 has been resolved by no longer relying on the 'DEFAULT_DEST_STREET' constant value.
- MijnPakket login and delivery options are now also compatible with Idev's OneStepCheckout when the shipping address form has been disabled.
- Letter box parcel configuration options are now also applied to grouped products.
- The chosen delivery day is no longer shown on the customer's account page when delivery days have been disabled in the extension's configuration.
- Product's alternative shipping duration values are now taken into account when calculating the probable delivery day for orders when no specific delivery day was chosen during checkout.
- Tuesday is no longer shown as a valid delivery day when monday is not a shipping day and it is already past saturday.

==== v1.4.1 ====
==== New features ====
- Completely redesigned the configuration page of the extension!
- The extension's configuration page has now been split into a wizard-style menu for the core settings and a separate advanced options menu.

==== Improvements ====
- Added forwards compatibility to Magento 1.6 for advanced configuration field dependencies and other features that were introduced in Magento 1.7.
- Only stated address fee will now be hidden if the fee is less than 1 cent.
- Delivery days will now show 'as soon as possible' as the delivery time when no delivery days are available.
- The status update cron will now run 3 times a day. Before it was only 2 times a day.
- Added additional transactional email parameters to the track & trace email.

==== Bug fixes ====
- Only stated address option is no longer available for letter box orders.
- Removed two legacy references to css files from the frontend's layout XML file.
- Fixed a problem where the delivery option fee would not be reset if delivery options became unavailable during checkout.
- Fixed the delivery options responsive design in OneStepCheckout on older versions of Magento.
- Fixed an issue that prevented the order grid from being filtered on the order ID column.
- International track & trace URL's now use PostNL's new track & trace URL syntax. The old syntax is no longer supported by PostNL.
- Fixed a PHP warning level error that could occur if no additional options were saved for a PostNL order.

==== v1.4.0 ====
==== New features ====
- Added a new responsive design for PostNL delivery options.
- Added the option to specify on which days of the week the merchant will ship orders.
- Added the option to print packing slips directly from the order detail page.
- Added the option for customers to choose whether their order can be delivered to their neighbours in case they are not home during the delivery.
- Added a new PostNL rate type that allows merchants to finely tune their shipping costs.
- Added the option to charge a separate shipping rate for letter box parcels.

==== Improvements ====
- Modified a lot of heavy loading functionality in order to improve performance.
- PostNL Checkout will now check if an order is a letter box parcel before deciding whether PostNL Checkout should be available.
- In order to decrease server load during the extension's installation or upgrade, modifying product attributes is now handled by a temporary cron job.
- A comment will now be added to the order and shipment page when the PostNL track & trace email is sent.
- Evening delivery will no longer be available for letter box parcel orders.

==== Bug fixes ====
- FIxed the filter functionality of the order grid's confirm date column.
- Fixed a problem where the extra cover amount was missing when extra cover was used as a default shipping option.
- Fixed a problem where adding coupon codes in OneStepCheckout would disable delivery options.
- PostNL Checkout's weight calculation will no longer assume all items are weightless when a free shipping cart rule is active.
- Fixed a problem in the CMS page source model causing errors.
- Fixed a problem where tax calculation would not work as expected when tax calculation was set to before discount.
- Fixed a problem where it would be impossible to use the create shipment mass action when certain product options were disabled.
- Fixed problem where shipping to EPS countries could cause errors.
- Fixed an issue where the COD payment method would be hidden for regular shipments.
- Fixed an issue where the print labels mass action would also confirm the shipment
- Adding a new address in multi-address checkout will no longer cause errors when postcode check has been enabled.
- Fixed a bug in the updatePostnlOrder observer that caused errors when ordering virtual orders.

==== v1.3.1 ====
==== Bug fixes ====
- Confirm dates will no longer be shown as always being in the future.
- Added additional checks to prevent deleted Magento orders and shipments from causing errors.
- Prevented VAT amounts from being shown twice on the checkout page.
- It is no longer impossible to create multi-parcel shipments when 'letter box calculation mode' is set to automatic.
- Prevented COD fees from causing errors on the invoice page in the backend.

==== v1.3.0 ====
==== New features ====
- Added the option to ship orders as letter box parcels. Letter box parcels are shipped using the regular mail service and can be shipped at a reduced rate. It's possible to let the PostNL extension determine when an order qualifies as a letter box parcel or to decide this manually when creating a shipment in Magento.
- Added a new PostNL COD payment method that is fully integrated in the other PostNL services offered by the extension. It's possible to charge an additional fee to customers for using PostNL COD. It's also possible to have the extension automatically invoice COD orders once they have been delivered to the customer.
- Added a new PostNL packing slip. This packing slip may contain the PostNL shipping label, allowing you to use the packing slip as the shipping label for the parcel.
- Added the option to enable or disable delivery options at the product level.
- Added the ability to convert existing shipments to a letter box parcel or to a regular parcel as long as they have not been received by PostNL.
- Added the ability to change the selected shipping option for a shipment as long as it has not yet been received by PostNL.
- Added the option to use additional shipping methods for PostNL.
- Added the option to create a shipment, confirm it and print it's shipping labels for an order straight from the order grid in a single click.

==== Improvements ====
- It's now possible to enable or disable time frames separately from delivery days.
- You can now specify the cut-off time in minutes as well as hours.
- You can now view an order's confirm date, confirm status and shipping phase in the order grid.
- Additional information regarding the chosen delivery option is now shown on the order detail page.
- Added a button to download all PostNL debug log files to the PostNL configuration page.
- The 'create shipments' massaction interface has been modified so that only valid options are displayed.
- Errors that occur whilst processing multiple shipments or orders will no longer stop the entire process. Instead the remaining orders and shipments will be processed and an error message specifying which orders or shipments caused an error will be displayed afterwards.
- The first and last name fields are no longer mandatory for the sender's address fields in the PostNL configuration.
- Spaces are now allowed in postcodes.

==== Bug fixes ====
- Deleting orders from Magento should no longer cause errors when processing PostNL shipments.
- The PostNL shipping method will no longer be selected by default.
- Greece will now be processed with EPS, instead of GlobalPack.
- Upgrade and install scripts will now check if certain columns and attributes exist before modifying them.
- The progress bar on the Onepage Checkout page will now correctly update the shipping costs when the customer has chosen a delivery option that charges an additional fee.
- Creating shipments for which no default shipping option is selected will no longer cause errors.

==== v1.2.2 ====
==== New features ====
- Added the option to send a copy of the track & trace email to a specified email address.

==== Improvements ====
- Performance of the entire extension has been improved. The extension will now attempt to cache several configuration values.
- Label printing will now always follow the 'label size' configuration setting.

==== Bug fixes ====
- Fixed several small html errors in the track & trace email template.
- Fixed an SQL error that could occur when filtering the 'store' column in the order and shipment grids.

==== v1.2.1 ====
==== Release highlights ====
- The extension now fully supports Magento 1.9 and 1.14!

==== Minor improvements ====
- Added additional checks to prevent errors when Magento's layout has been altered or PostNL's layout has not been uploaded properly.
- Added additional compatibility enhancements for MultiSafePay and other PSP extensions.
- Improved several minor texts and translations.

==== Bug fixes ====
- Fixed an issue that prevented MijnPakket login data from being cached.
- Fixed an issue where using PostNL-only features on non-PostNL shipments would cause an error.
- Fixed an issue where PostNL's feed messages would be loaded in the wrong order.
- Fixed an issue where several notifications would be added to Magento when installing an unsupported version of Magento with the PostNL extension.
- Fixed an issue with EPS comb-labels. EPS combi-labels were rotated by 90 degrees, causing overlapping issues with other labels being printed.

==== v1.2.0 =====
==== New features ====
- Added delivery options to the checkout flow. Customers can now choose where, when and how they want their order shipped when choosing their preferred shipping method.
- Added support for evening delivery, early pickup locations and parcel dispenser locations.
- Added Dutch postcode validation support.
- Added the option to create a parcelware export csv file directly from the Magento backend.
- Added a MijnPakket login feature. Customers who have a MijnPakket account can use this feature to automatically fill in their preferred billing and shipping address.

==== Minor improvements ====
- Refactored the label printing functionality. Shipping labels will now be opened in a separate window from where they may be printed or downloaded.
- Added the option to select where on an A4 page the shipping labels will start printing. This allows you to re-use partially used sticker-sheets.
- Added many new customization options for the shipment grid in the Magento backend.
- Added the ability to view and edit a chosen post office delivery address from the Magento backend.
- Added the option to only show the PostNL Checkout feature to customers who have a MijnPakket account.
- Refactored many sections of the source code to improve readability and extensibility.
- Moved several configuration settings.
- Merged the 'test/live mode' settings of PostNl Checkout and Label Printing & Confirming functionality. There is now a single option to set the entire extension to test or live mode.
- Added the option to upload separate csv files for the PostNL shipping method in 'table rate' configuration.

==== Bug fixes ====
- Fixed an issue where it was not possible to choose to only manually send track & trace information.
- Fixed several typos and translation errors.

==== v1.1.5 =====

==== Bug fixes ====
- Fixed a problem with account validation only using test mode account credentials
- Made a minor security improvement to the notification system.
- Fixed an issue where shipments could not be confirmed if the shipping address did not have an email address.
- Fixed an issue where PostNl Checkout would incorrectly identify a product as being out of stock.
- Fixed an issue where for some shops PostNl Checkout would not function due to incorrect usage of https in an http environment.

==== v1.1.4 =====

==== New features ====
- Added a default test account to the extension. New installation will automatically have a PostNL test account pre-configured.
- Added the option to undo a confirmation as long as the shipment has not been received by PostNL.
- Added the option to delete shipping labels. This allows you to correct an address after a shipping label has been printed. Before this change if you noticed an error in the address after you had already printed a shipping label, you had to place en entire new order to correct it. Now you can simply delete the shipping label, edit the address and print a new shipping label with the new address.

==== Minor change ====
- The validate settings button in the extension’s configuration page now also validates settings while the extension is set to test mode.
- Removed the 'EU Pack Standard (Belgium only, no signature)' product option. If you use this option, please contact the Total Internet Group servicedesk.
- The extension's test mode is now available by default. In earlier versions you had to allow test mode through a setting under advanced options.
- When a confirmation expires, the barcode's track & trace link will now also be removed.
- Improved various texts and translations.

==== Bug fixes ====
- Solved an issue where certain configurations of the PostNL shipping method would only appear if the Magento tablerates shipping method was also active.
- Solved an issue where filtering the order and shipment grids in the Magento backend on certain columns would cause an error.
- Solved an issue where the shipment status cron would stop as soon as it encountered an error, rather than continue processing the remaining shipments.
- Solved an issue where you could not confirm a shipment without a barcode due to process locking when developer mode is active.
- Solved issue in Safari where labels would be printed as .pdf.html, rather than just .pdf files.

==== v1.1.3 ====

- FIxed an issue with the extension's activation procedure.

==== v1.1.2 ====

- Updated manual.

==== v1.1.1 ====

- Fixed issue where filtering the first column of the shipment grid could cause errors.
- Removed PHP extension dependencies from the PostNL extension packages. Magento connect would sometimes falsely report a PHP extension as missing preventing the PostNL extension from being installed.

==== v1.1.0 ====

- First public release.

==== v1.0.8 ====

- Improved compatibility with Magento 1.6 and 1.11.

==== v1.0.7 ====

- Improved configuration fields.
- Improved translations.

==== v1.0.6 ====

- Improved shipment grid interface. It shoulod now be more clear which shipments have been confirmed and when they should be handed over to PostNL.
- Improved PostNL Checkout payment method handling. The Checkout summary page should now remember your chosen bank when you attempt to pay using iDEAL. 100% support for all payment methods is not guaranteed.

==== v1.0.5 ====

- Several bug fixes.
- Improved configuration interface.

==== v1.0.4 ====

- Several minor bug fixes.
- Improved Dutch translations.
- Added additional information to several fields in system/config.

==== v1.0.3 ====

- Several bug fixes. Including an issue preventing the extension from functioning properly with the compiler active.
- Several improvements to the Dutch translations.
- Improved the extension's system > config interface
- Added the Klarna payment method to PostNL Checkout

==== v1.0.2 ====

- A large number of bug fixes and general improvements
- Improved error handling. Almost all errors will now automatically provide you with a link where you can find more information and a possible solution.

==== v1.0.1 ====

- Added a filter to the possible product options you may select, based on the selected orders when mass-creating shipments from the order grid.
- Improved several translations.
- Fixed several minor bugs.

==== v1.0.0 ====

This is the initial beta release of the extension. If you have any questions, please contact the Total Internet Group Servicedesk

Download this release

Release Info

Developer TIG
Extension tig_postnl
Version 1.7.0
Comparing to
See all releases


Code changes from version 1.6.0 to 1.7.0

Files changed (89) hide show
  1. app/code/community/TIG/PostNL/Block/Adminhtml/Sales/Order/Shipment/Create/ShipmentOptions.php +46 -2
  2. app/code/community/TIG/PostNL/Block/Adminhtml/Sales/Order/Shipment/View/DeliveryOptions.php +13 -15
  3. app/code/community/TIG/PostNL/Block/Adminhtml/Sales/Order/Shipment/View/Tabs.php +1 -1
  4. app/code/community/TIG/PostNL/Block/Adminhtml/Sales/Order/View/DeliveryOptions.php +16 -14
  5. app/code/community/TIG/PostNL/Block/Adminhtml/Sales/Returns/Grid.php +1 -1
  6. app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Form.php +37 -1
  7. app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Form/Field/ActivatedFieldHeader.php +1 -1
  8. app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Form/Field/AddressLines.php +1 -1
  9. app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Form/Field/Hidden.php +6 -9
  10. app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Form/Field/MatrixrateExport.php +1 -1
  11. app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Form/Field/TablerateExport.php +1 -1
  12. app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Form/Field/UninstallButton.php +1 -1
  13. app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Js.php +2 -2
  14. app/code/community/TIG/PostNL/Block/Adminhtml/Widget/Grid/Column/Renderer/Action.php +1 -1
  15. app/code/community/TIG/PostNL/Block/Adminhtml/Widget/Grid/Column/Renderer/ConfirmDate.php +2 -26
  16. app/code/community/TIG/PostNL/Block/Adminhtml/Widget/Grid/Column/Renderer/ReturnView.php +1 -1
  17. app/code/community/TIG/PostNL/Block/Adminhtml/Widget/Grid/Column/Renderer/Type/Abstract.php +46 -9
  18. app/code/community/TIG/PostNL/Block/DeliveryOptions/Checkout/DeliveryOptions.php +83 -6
  19. app/code/community/TIG/PostNL/Block/DeliveryOptions/Js.php +3 -1
  20. app/code/community/TIG/PostNL/Helper/Carrier.php +43 -36
  21. app/code/community/TIG/PostNL/Helper/Cif.php +85 -14
  22. app/code/community/TIG/PostNL/Helper/Data.php +76 -1
  23. app/code/community/TIG/PostNL/Helper/Date.php +411 -0
  24. app/code/community/TIG/PostNL/Helper/DeliveryOptions.php +246 -648
  25. app/code/community/TIG/PostNL/Helper/DeliveryOptions/Fee.php +487 -0
  26. app/code/community/TIG/PostNL/Model/Adminhtml/Observer/OrderGrid.php +61 -21
  27. app/code/community/TIG/PostNL/Model/Adminhtml/Observer/ShipmentGrid.php +9 -8
  28. app/code/community/TIG/PostNL/Model/Adminhtml/Observer/ShipmentView.php +10 -10
  29. app/code/community/TIG/PostNL/Model/Adminhtml/Observer/SystemConfig.php +1 -1
  30. app/code/community/TIG/PostNL/Model/Carrier/Quote/Address/Total/Shipping.php +2 -0
  31. app/code/community/TIG/PostNL/Model/Core/Cache.php +6 -0
  32. app/code/community/TIG/PostNL/Model/Core/Cif.php +27 -10
  33. app/code/community/TIG/PostNL/Model/Core/Observer/Cron.php +12 -12
  34. app/code/community/TIG/PostNL/Model/Core/Order.php +1 -0
  35. app/code/community/TIG/PostNL/Model/Core/Packingslip/Pdf/Items/Invoice/Default.php +9 -3
  36. app/code/community/TIG/PostNL/Model/Core/Service/Shipment.php +2 -2
  37. app/code/community/TIG/PostNL/Model/Core/Shipment.php +175 -51
  38. app/code/community/TIG/PostNL/Model/Core/Shipment/Barcode.php +3 -0
  39. app/code/community/TIG/PostNL/Model/Core/System/Config/Backend/SenderCountry.php +99 -0
  40. app/code/community/TIG/PostNL/Model/Core/System/Config/Source/AllProductOptions.php +272 -130
  41. app/code/community/TIG/PostNL/Model/Core/System/Config/Source/ProductOptions/Abstract.php +12 -1
  42. app/code/community/TIG/PostNL/Model/Core/System/Config/Source/SenderCountry.php +62 -0
  43. app/code/community/TIG/PostNL/Model/Core/System/Config/Source/StandardProductOptions.php +157 -4
  44. app/code/community/TIG/PostNL/Model/Core/System/Config/Source/SundayProductOptions.php +107 -0
  45. app/code/community/TIG/PostNL/Model/DeliveryOptions/Cif.php +107 -14
  46. app/code/community/TIG/PostNL/Model/DeliveryOptions/Observer/UpdatePostnlOrder.php +15 -19
  47. app/code/community/TIG/PostNL/Model/DeliveryOptions/Service.php +18 -94
  48. app/code/community/TIG/PostNL/Model/DeliveryOptions/System/Config/Backend/ValidateFee.php +56 -6
  49. app/code/community/TIG/PostNL/Model/DeliveryOptions/System/Config/Backend/ValidateFee/SundayDeliveryFee.php +46 -0
  50. app/code/community/TIG/PostNL/Model/ExtensionControl/Webservices.php +6 -4
  51. app/code/community/TIG/PostNL/Model/Parcelware/Export.php +2 -2
  52. app/code/community/TIG/PostNL/Model/Payment/Cod.php +11 -0
  53. app/code/community/TIG/PostNL/Model/Resource/Setup.php +18 -0
  54. app/code/community/TIG/PostNL/controllers/DeliveryOptionsController.php +41 -3
  55. app/code/community/TIG/PostNL/controllers/{Adminhtml → PostnlAdminhtml}/ConfigController.php +1 -1
  56. app/code/community/TIG/PostNL/controllers/{Adminhtml → PostnlAdminhtml}/ExtensionControlController.php +1 -1
  57. app/code/community/TIG/PostNL/controllers/{Adminhtml → PostnlAdminhtml}/ReturnsController.php +1 -1
  58. app/code/community/TIG/PostNL/controllers/{Adminhtml → PostnlAdminhtml}/ShipmentController.php +1 -1
  59. app/code/community/TIG/PostNL/data/postnl_setup/data-install-1.5.2.php +159 -0
  60. app/code/community/TIG/PostNL/data/postnl_setup/data-install-1.7.0.php +159 -0
  61. app/code/community/TIG/PostNL/data/postnl_setup/data-uninstall-1.5.2.php +14 -8
  62. app/code/community/TIG/PostNL/data/postnl_setup/data-upgrade-1.6.0-1.6.1.php +54 -0
  63. app/code/community/TIG/PostNL/data/postnl_setup/data-upgrade-1.6.1-1.7.0.php +71 -0
  64. app/code/community/TIG/PostNL/docs/modman +27 -0
  65. app/code/community/TIG/PostNL/etc/adminhtml.xml +1 -1
  66. app/code/community/TIG/PostNL/etc/config.xml +60 -22
  67. app/code/community/TIG/PostNL/etc/jstranslator.xml +3 -0
  68. app/code/community/TIG/PostNL/etc/system.xml +457 -133
  69. app/design/adminhtml/default/default/layout/TIG/postnl.xml +4 -4
  70. app/design/adminhtml/default/default/template/TIG/PostNL/sales/order/shipment/create/shipment_options.phtml +4 -4
  71. app/design/adminhtml/default/default/template/TIG/PostNL/sales/order/shipment/view/delivery_options.phtml +2 -2
  72. app/design/adminhtml/default/default/template/TIG/PostNL/sales/shipment/js.phtml +1 -1
  73. app/design/adminhtml/default/default/template/TIG/PostNL/system/config/form/field/js.phtml +2 -2
  74. app/design/adminhtml/default/default/template/TIG/PostNL/system/config/form/field/support_tab.phtml +4 -3
  75. app/design/frontend/base/default/template/TIG/PostNL/address_validation/gomage_checkout/postcode_check.phtml +35 -0
  76. app/design/frontend/base/default/template/TIG/PostNL/core/sales/order/email/delivery_options.phtml +3 -3
  77. app/design/frontend/base/default/template/TIG/PostNL/delivery_options/gomage_checkout/deliveryoptions.phtml +9 -1
  78. app/design/frontend/base/default/template/TIG/PostNL/delivery_options/onepage/deliveryoptions.phtml +9 -0
  79. app/design/frontend/base/default/template/TIG/PostNL/delivery_options/onestepcheckout/deliveryoptions.phtml +9 -1
  80. app/design/frontend/base/default/template/TIG/PostNL/mijnpakket/account_notification.phtml +2 -2
  81. app/design/frontend/base/default/template/TIG/PostNL/mijnpakket/gomage_checkout/login_button.phtml +7 -7
  82. app/design/frontend/base/default/template/TIG/PostNL/mijnpakket/onepage/login_button.phtml +6 -6
  83. app/design/frontend/base/default/template/TIG/PostNL/mijnpakket/onestepcheckout/login_button.phtml +6 -6
  84. app/design/frontend/base/default/template/TIG/PostNL/payment/checkout/form/cod.phtml +4 -2
  85. app/locale/en_US/TIG_PostNL.csv +55 -23
  86. app/locale/nl_NL/TIG_PostNL.csv +58 -25
  87. app/locale/nl_NL/template/email/TIG/PostNL/track_and_trace.html +1 -1
  88. package.xml +26 -5
  89. skin/frontend/base/default/js/TIG/PostNL/deliveryOptions.js +149 -51
app/code/community/TIG/PostNL/Block/Adminhtml/Sales/Order/Shipment/Create/ShipmentOptions.php CHANGED
@@ -37,14 +37,18 @@
37
  * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
  *
39
  * @method boolean hasShipment()
 
40
  * @method boolean hasProductOptions()
41
  * @method boolean hasBuspakjeProductOptions()
42
  * @method boolean hasDefaultProductOption()
 
43
  *
44
  * @method TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions setShipment(Mage_Sales_Model_Order_Shipment $value)
 
45
  * @method TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions setProductOptions(array $value)
46
  * @method TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions setDefaultProductOption(string $value)
47
  * @method TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions setBuspakjeProductOptions(array $value)
 
48
  */
49
  class TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions extends TIG_PostNL_Block_Adminhtml_Template
50
  {
@@ -75,6 +79,25 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions ext
75
  return $shipment;
76
  }
77
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
78
  /**
79
  * Get available product options for the current shipment.
80
  *
@@ -183,7 +206,7 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions ext
183
  public function isBelgium()
184
  {
185
  $shipment = $this->getShipment();
186
- if ($shipment->getShippingAddress()->getCountry() == 'BE') {
187
  return true;
188
  }
189
 
@@ -227,7 +250,28 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions ext
227
 
228
  $fits = Mage::helper('postnl')->fitsAsBuspakje($orderItems, true);
229
 
230
- return $fits;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
231
  }
232
 
233
  /**
37
  * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
  *
39
  * @method boolean hasShipment()
40
+ * @method boolean hasPostnlOrder()
41
  * @method boolean hasProductOptions()
42
  * @method boolean hasBuspakjeProductOptions()
43
  * @method boolean hasDefaultProductOption()
44
+ * @method boolean hasDefaultBuspakjeOption()
45
  *
46
  * @method TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions setShipment(Mage_Sales_Model_Order_Shipment $value)
47
+ * @method TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions setPostnlOrder(TIG_PostNL_Model_Core_Order $value)
48
  * @method TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions setProductOptions(array $value)
49
  * @method TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions setDefaultProductOption(string $value)
50
  * @method TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions setBuspakjeProductOptions(array $value)
51
+ * @method TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions setDefaultBuspakjeOption(array $value)
52
  */
53
  class TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_Create_ShipmentOptions extends TIG_PostNL_Block_Adminhtml_Template
54
  {
79
  return $shipment;
80
  }
81
 
82
+ /**
83
+ * Get current shipment
84
+ *
85
+ * @return TIG_PostNL_Model_Core_Order.
86
+ */
87
+ public function getPostnlOrder()
88
+ {
89
+ if ($this->hasPostnlOrder()) {
90
+ return $this->_getData('postnl_order');
91
+ }
92
+
93
+ $shipment = $this->getShipment();
94
+
95
+ $postnlOrder = Mage::getModel('postnl_core/order')->load($shipment->getOrderId(), 'order_id');
96
+
97
+ $this->setPostnlOrder($postnlOrder);
98
+ return $postnlOrder;
99
+ }
100
+
101
  /**
102
  * Get available product options for the current shipment.
103
  *
206
  public function isBelgium()
207
  {
208
  $shipment = $this->getShipment();
209
+ if ($shipment->getShippingAddress()->getCountryId() == 'BE') {
210
  return true;
211
  }
212
 
250
 
251
  $fits = Mage::helper('postnl')->fitsAsBuspakje($orderItems, true);
252
 
253
+ if (!$fits) {
254
+ return $fits;
255
+ }
256
+
257
+ $postnlOrder = $this->getPostnlOrder();
258
+
259
+ if (!$postnlOrder || !$postnlOrder->getId()) {
260
+ return true;
261
+ }
262
+
263
+ $deliveryDate = DateTime::createFromFormat(
264
+ 'Y-m-d H:i:s',
265
+ $postnlOrder->getDeliveryDate(),
266
+ new DateTimeZone('UTC')
267
+ );
268
+ $deliveryDate->setTimezone(new DateTimeZone('Europe/Amsterdam'));
269
+
270
+ if ($deliveryDate->format('N') === '0' || $deliveryDate->format('N') === '1') {
271
+ return false;
272
+ }
273
+
274
+ return true;
275
  }
276
 
277
  /**
app/code/community/TIG/PostNL/Block/Adminhtml/Sales/Order/Shipment/View/DeliveryOptions.php CHANGED
@@ -164,10 +164,10 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_View_DeliveryOptions
164
 
165
  switch ($shipmentType) {
166
  case $postnlShipment::SHIPMENT_TYPE_DOMESTIC:
167
- $shipmentType = $this->__('Domestic');
168
  break;
169
  case $postnlShipment::SHIPMENT_TYPE_DOMESTIC_COD:
170
- $shipmentType = $this->__('Domestic');
171
  $this->setIsCod(true);
172
  break;
173
  case $postnlShipment::SHIPMENT_TYPE_AVOND:
@@ -207,6 +207,9 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_View_DeliveryOptions
207
  case $postnlShipment::SHIPMENT_TYPE_BUSPAKJE:
208
  $shipmentType = $this->__('Letter Box Parcel');
209
  break;
 
 
 
210
  }
211
 
212
  return $shipmentType;
@@ -269,7 +272,7 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_View_DeliveryOptions
269
  public function getChangeProductCodeUrl()
270
  {
271
  $url = $this->getUrl(
272
- 'postnl_admin/adminhtml_shipment/changeProductCode',
273
  array(
274
  'shipment_id' => $this->getShipment()->getId()
275
  )
@@ -352,7 +355,7 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_View_DeliveryOptions
352
  public function getChangeParcelCountUrl()
353
  {
354
  $url = $this->getUrl(
355
- 'postnl_admin/adminhtml_shipment/changeParcelCount',
356
  array(
357
  'shipment_id' => $this->getShipment()->getId()
358
  )
@@ -392,17 +395,12 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_View_DeliveryOptions
392
  );
393
 
394
  $dateModel = Mage::getSingleton('core/date');
395
- $storeTimezone = Mage::getStoreConfig(
396
- Mage_Core_Model_Locale::XML_PATH_DEFAULT_TIMEZONE,
397
- $postnlShipment->getStoreId()
398
- );
399
- $storeTimezone = new DateTimeZone($storeTimezone);
400
  $utcTimeZone = new DateTimeZone('UTC');
401
 
402
- $storeStartTime = new DateTime($postnlShipment->getExpectedDeliveryTimeStart(), $utcTimeZone);
403
- $storeStartTime->setTimezone($storeTimezone);
404
  $info['delivery_time_start'] = $dateModel->date('H:i', $postnlShipment->getExpectedDeliveryTimeStart());
405
- $info['store_delivery_time_start'] = $storeStartTime->format('H:i');
406
 
407
  if ($info['delivery_time_start'] != $info['store_delivery_time_start']) {
408
  $info['timezone_differ'] = true;
@@ -412,10 +410,10 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_View_DeliveryOptions
412
  return $info;
413
  }
414
 
415
- $storeEndTime = new DateTime($postnlShipment->getExpectedDeliveryTimeEnd(), $utcTimeZone);
416
- $storeEndTime->setTimezone($storeTimezone);
417
  $info['delivery_time_end'] = $dateModel->date('H:i', $postnlShipment->getExpectedDeliveryTimeEnd());
418
- $info['store_delivery_time_end'] = $storeEndTime->format('H:i');
419
 
420
  return $info;
421
  }
164
 
165
  switch ($shipmentType) {
166
  case $postnlShipment::SHIPMENT_TYPE_DOMESTIC:
167
+ $shipmentType = $this->__('Domestic');
168
  break;
169
  case $postnlShipment::SHIPMENT_TYPE_DOMESTIC_COD:
170
+ $shipmentType = $this->__('Domestic');
171
  $this->setIsCod(true);
172
  break;
173
  case $postnlShipment::SHIPMENT_TYPE_AVOND:
207
  case $postnlShipment::SHIPMENT_TYPE_BUSPAKJE:
208
  $shipmentType = $this->__('Letter Box Parcel');
209
  break;
210
+ case $postnlShipment::SHIPMENT_TYPE_SUNDAY:
211
+ $shipmentType = $this->__('Sunday Delivery');
212
+ break;
213
  }
214
 
215
  return $shipmentType;
272
  public function getChangeProductCodeUrl()
273
  {
274
  $url = $this->getUrl(
275
+ 'adminhtml/postnlAdminhtml_shipment/changeProductCode',
276
  array(
277
  'shipment_id' => $this->getShipment()->getId()
278
  )
355
  public function getChangeParcelCountUrl()
356
  {
357
  $url = $this->getUrl(
358
+ 'adminhtml/postnlAdminhtml_shipment/changeParcelCount',
359
  array(
360
  'shipment_id' => $this->getShipment()->getId()
361
  )
395
  );
396
 
397
  $dateModel = Mage::getSingleton('core/date');
 
 
 
 
 
398
  $utcTimeZone = new DateTimeZone('UTC');
399
 
400
+ $amsterdamStartTime = new DateTime($postnlShipment->getExpectedDeliveryTimeStart(), $utcTimeZone);
401
+ $amsterdamStartTime->setTimezone(new DateTimeZone('Europe/Amsterdam'));
402
  $info['delivery_time_start'] = $dateModel->date('H:i', $postnlShipment->getExpectedDeliveryTimeStart());
403
+ $info['store_delivery_time_start'] = $amsterdamStartTime->format('H:i');
404
 
405
  if ($info['delivery_time_start'] != $info['store_delivery_time_start']) {
406
  $info['timezone_differ'] = true;
410
  return $info;
411
  }
412
 
413
+ $amsterdamEndTime = new DateTime($postnlShipment->getExpectedDeliveryTimeEnd(), $utcTimeZone);
414
+ $amsterdamEndTime->setTimezone(new DateTimeZone('Europe/Amsterdam'));
415
  $info['delivery_time_end'] = $dateModel->date('H:i', $postnlShipment->getExpectedDeliveryTimeEnd());
416
+ $info['store_delivery_time_end'] = $amsterdamEndTime->format('H:i');
417
 
418
  return $info;
419
  }
app/code/community/TIG/PostNL/Block/Adminhtml/Sales/Order/Shipment/View/Tabs.php CHANGED
@@ -96,7 +96,7 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_Shipment_View_Tabs extends Mage_Adm
96
  array(
97
  'label' => Mage::helper('postnl')->__('Shipping event history'),
98
  'url' => $this->getUrl(
99
- 'postnl_admin/adminhtml_shipment/statusHistory',
100
  array(
101
  '_current' => true,
102
  'shipment_id' => $shipment->getId(),
96
  array(
97
  'label' => Mage::helper('postnl')->__('Shipping event history'),
98
  'url' => $this->getUrl(
99
+ 'adminhtml/postnlAdminhtml_shipment/statusHistory',
100
  array(
101
  '_current' => true,
102
  'shipment_id' => $shipment->getId(),
app/code/community/TIG/PostNL/Block/Adminhtml/Sales/Order/View/DeliveryOptions.php CHANGED
@@ -107,6 +107,9 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_View_DeliveryOptions extends TIG_Po
107
  $this->setIsCod(true);
108
  }
109
 
 
 
 
110
  $shipmentType = false;
111
  switch ($postnlOrder->getType()) {
112
  case 'PA':
@@ -121,10 +124,16 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_View_DeliveryOptions extends TIG_Po
121
  break;
122
  case 'Avond':
123
  $this->setSubType($this->__('Evening Delivery'));
124
- $shipmentType = $this->__('Domestic');
 
 
 
125
  break;
126
  case 'Overdag':
127
- $shipmentType = $this->__('Domestic');
 
 
 
128
  break;
129
  }
130
 
@@ -132,9 +141,7 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_View_DeliveryOptions extends TIG_Po
132
  return $shipmentType;
133
  }
134
 
135
- $countryId = $order->getShippingAddress()->getCountryId();
136
-
137
- if ($countryId == 'NL') {
138
  $shipmentType = $this->__('Domestic');
139
 
140
  return $shipmentType;
@@ -239,17 +246,12 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_View_DeliveryOptions extends TIG_Po
239
  );
240
 
241
  $dateModel = Mage::getSingleton('core/date');
242
- $storeTimezone = Mage::getStoreConfig(
243
- Mage_Core_Model_Locale::XML_PATH_DEFAULT_TIMEZONE,
244
- $postnlOrder->getStoreId()
245
- );
246
- $storeTimezone = new DateTimeZone($storeTimezone);
247
  $utcTimeZone = new DateTimeZone('UTC');
248
 
249
- $storeStartTime = new DateTime($postnlOrder->getExpectedDeliveryTimeStart(), $utcTimeZone);
250
- $storeStartTime->setTimezone($storeTimezone);
251
  $info['delivery_time_start'] = $dateModel->date('H:i', $postnlOrder->getExpectedDeliveryTimeStart());
252
- $info['store_delivery_time_start'] = $storeStartTime->format('H:i');
253
 
254
  if ($info['delivery_time_start'] != $info['store_delivery_time_start']) {
255
  $info['timezone_differ'] = true;
@@ -260,7 +262,7 @@ class TIG_PostNL_Block_Adminhtml_Sales_Order_View_DeliveryOptions extends TIG_Po
260
  }
261
 
262
  $storeEndTime = new DateTime($postnlOrder->getExpectedDeliveryTimeEnd(), $utcTimeZone);
263
- $storeEndTime->setTimezone($storeTimezone);
264
  $info['delivery_time_end'] = $dateModel->date('H:i', $postnlOrder->getExpectedDeliveryTimeEnd());
265
  $info['store_delivery_time_end'] = $storeEndTime->format('H:i');
266
 
107
  $this->setIsCod(true);
108
  }
109
 
110
+ $countryId = $order->getShippingAddress()->getCountryId();
111
+ $domesticCountry = Mage::helper('postnl')->getDomesticCountry();
112
+
113
  $shipmentType = false;
114
  switch ($postnlOrder->getType()) {
115
  case 'PA':
124
  break;
125
  case 'Avond':
126
  $this->setSubType($this->__('Evening Delivery'));
127
+ $shipmentType = $this->__('Domestic');
128
+ break;
129
+ case 'Sunday':
130
+ $shipmentType = $this->__('Sunday Delivery');
131
  break;
132
  case 'Overdag':
133
+ if ($countryId != $domesticCountry) {
134
+ continue;
135
+ }
136
+ $shipmentType = $this->__('Domestic');
137
  break;
138
  }
139
 
141
  return $shipmentType;
142
  }
143
 
144
+ if (in_array($countryId, $domesticCountries)) {
 
 
145
  $shipmentType = $this->__('Domestic');
146
 
147
  return $shipmentType;
246
  );
247
 
248
  $dateModel = Mage::getSingleton('core/date');
 
 
 
 
 
249
  $utcTimeZone = new DateTimeZone('UTC');
250
 
251
+ $amsterdamStartTime = new DateTime($postnlOrder->getExpectedDeliveryTimeStart(), $utcTimeZone);
252
+ $amsterdamStartTime->setTimezone(new DateTimeZone('Europe/Amsterdam'));
253
  $info['delivery_time_start'] = $dateModel->date('H:i', $postnlOrder->getExpectedDeliveryTimeStart());
254
+ $info['store_delivery_time_start'] = $amsterdamStartTime->format('H:i');
255
 
256
  if ($info['delivery_time_start'] != $info['store_delivery_time_start']) {
257
  $info['timezone_differ'] = true;
262
  }
263
 
264
  $storeEndTime = new DateTime($postnlOrder->getExpectedDeliveryTimeEnd(), $utcTimeZone);
265
+ $storeEndTime->setTimezone(new DateTimeZone('Europe/Amsterdam'));
266
  $info['delivery_time_end'] = $dateModel->date('H:i', $postnlOrder->getExpectedDeliveryTimeEnd());
267
  $info['store_delivery_time_end'] = $storeEndTime->format('H:i');
268
 
app/code/community/TIG/PostNL/Block/Adminhtml/Sales/Returns/Grid.php CHANGED
@@ -331,7 +331,7 @@ class TIG_PostNL_Block_Adminhtml_Sales_Returns_Grid extends Mage_Adminhtml_Block
331
  return $this->getUrl('adminhtml/sales_shipment/view',
332
  array(
333
  'shipment_id' => $row->getId(),
334
- 'come_from_postnl' => Mage::helper('core')->urlEncode('postnl_admin/adminhtml_returns')
335
  )
336
  );
337
  }
331
  return $this->getUrl('adminhtml/sales_shipment/view',
332
  array(
333
  'shipment_id' => $row->getId(),
334
+ 'come_from_postnl' => Mage::helper('core')->urlEncode('adminhtml/postnlAdminhtml_returns')
335
  )
336
  );
337
  }
app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Form.php CHANGED
@@ -102,7 +102,12 @@ class TIG_PostNL_Block_Adminhtml_System_Config_Form extends Mage_Adminhtml_Block
102
  $groups = (array)$groups;
103
  usort($groups, array($this, '_sortForm'));
104
 
105
- foreach ($groups as $group){
 
 
 
 
 
106
  /* @var $group Varien_Simplexml_Element */
107
  if (!$this->_canShowField($group)) {
108
  continue;
@@ -553,4 +558,35 @@ class TIG_PostNL_Block_Adminhtml_System_Config_Form extends Mage_Adminhtml_Block
553
 
554
  return '';
555
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
556
  }
102
  $groups = (array)$groups;
103
  usort($groups, array($this, '_sortForm'));
104
 
105
+ foreach ($groups as $key => $group) {
106
+ if (isset($group->disabled)) {
107
+ unset($groups[$key]);
108
+ continue;
109
+ }
110
+
111
  /* @var $group Varien_Simplexml_Element */
112
  if (!$this->_canShowField($group)) {
113
  continue;
558
 
559
  return '';
560
  }
561
+
562
+ /**
563
+ * Checking field visibility
564
+ *
565
+ * @param Varien_Simplexml_Element $field
566
+ * @return bool
567
+ */
568
+ protected function _canShowField($field)
569
+ {
570
+ if (isset($field->disabled)) {
571
+ return false;
572
+ }
573
+
574
+ $ifModuleEnabled = trim((string)$field->if_module_enabled);
575
+ if ($ifModuleEnabled && !Mage::helper('Core')->isModuleEnabled($ifModuleEnabled)) {
576
+ return false;
577
+ }
578
+
579
+ switch ($this->getScope()) {
580
+ case self::SCOPE_DEFAULT:
581
+ return (int)$field->show_in_default;
582
+ break;
583
+ case self::SCOPE_WEBSITES:
584
+ return (int)$field->show_in_website;
585
+ break;
586
+ case self::SCOPE_STORES:
587
+ return (int)$field->show_in_store;
588
+ break;
589
+ }
590
+ return true;
591
+ }
592
  }
app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Form/Field/ActivatedFieldHeader.php CHANGED
@@ -85,7 +85,7 @@ class TIG_PostNL_Block_Adminhtml_System_Config_Form_Field_ActivatedFieldHeader
85
  $urlParams['store'] = $store;
86
  }
87
 
88
- $url = $this->getUrl('postnl_admin/adminhtml_extensionControl/showActivationFields', $urlParams);
89
  $onclick = "confirmSetLocation('"
90
  . $this->__(
91
  "Are you sure? The PostNL extension will not function until you\'ve registered the extension."
85
  $urlParams['store'] = $store;
86
  }
87
 
88
+ $url = $this->getUrl('adminhtml/postnlAdminhtml_extensionControl/showActivationFields', $urlParams);
89
  $onclick = "confirmSetLocation('"
90
  . $this->__(
91
  "Are you sure? The PostNL extension will not function until you\'ve registered the extension."
app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Form/Field/AddressLines.php CHANGED
@@ -42,7 +42,7 @@ class TIG_PostNL_Block_Adminhtml_System_Config_Form_Field_AddressLines
42
  /**
43
  * @return int|string
44
  */
45
- protected function _getValue()
46
  {
47
  $value = Mage::helper('postnl/addressValidation')->getAddressLineCount();
48
 
42
  /**
43
  * @return int|string
44
  */
45
+ protected function _getValue(Varien_Data_Form_Element_Abstract $element)
46
  {
47
  $value = Mage::helper('postnl/addressValidation')->getAddressLineCount();
48
 
app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Form/Field/Hidden.php CHANGED
@@ -161,23 +161,20 @@ class TIG_PostNL_Block_Adminhtml_System_Config_Form_Field_Hidden
161
  */
162
  protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
163
  {
164
- $value = $this->_getValue();
165
 
166
  $html = '<input id="'.$element->getHtmlId().'" name="'.$element->getName()
167
  .'" value="' . $value . '" '.$this->serialize($element->getHtmlAttributes()).'/>'."\n";
168
  $html.= $element->getAfterElementHtml();
169
  return $html;
170
  }
171
-
172
  /**
173
- * Value getter.
174
- *
175
- * This method should be overloaded in child methods.
176
- *
177
- * @return string
178
  */
179
- protected function _getValue()
180
  {
181
- return '';
 
 
182
  }
183
  }
161
  */
162
  protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
163
  {
164
+ $value = $this->_getValue($element);
165
 
166
  $html = '<input id="'.$element->getHtmlId().'" name="'.$element->getName()
167
  .'" value="' . $value . '" '.$this->serialize($element->getHtmlAttributes()).'/>'."\n";
168
  $html.= $element->getAfterElementHtml();
169
  return $html;
170
  }
 
171
  /**
172
+ * @return int|string
 
 
 
 
173
  */
174
+ protected function _getValue(Varien_Data_Form_Element_Abstract $element)
175
  {
176
+ $value = $element->getValue();
177
+
178
+ return $value;
179
  }
180
  }
app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Form/Field/MatrixrateExport.php CHANGED
@@ -54,7 +54,7 @@ class TIG_PostNL_Block_Adminhtml_System_Config_Form_Field_MatrixrateExport
54
  );
55
 
56
  $onClick = 'setLocation(\''
57
- . Mage::helper('adminhtml')->getUrl("postnl_admin/adminhtml_config/exportMatrixrates", $params)
58
  . '\')';
59
 
60
  $data = array(
54
  );
55
 
56
  $onClick = 'setLocation(\''
57
+ . Mage::helper('adminhtml')->getUrl("adminhtml/postnlAdminhtml_config/exportMatrixrates", $params)
58
  . '\')';
59
 
60
  $data = array(
app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Form/Field/TablerateExport.php CHANGED
@@ -54,7 +54,7 @@ class TIG_PostNL_Block_Adminhtml_System_Config_Form_Field_TablerateExport
54
  );
55
 
56
  $onClick = 'setLocation(\''
57
- . Mage::helper('adminhtml')->getUrl("postnl_admin/adminhtml_config/exportTablerates", $params)
58
  . 'conditionName/\' + $(\'carriers_postnl_condition_name\').value + \'/tablerates.csv\' )';
59
 
60
  $data = array(
54
  );
55
 
56
  $onClick = 'setLocation(\''
57
+ . Mage::helper('adminhtml')->getUrl("adminhtml/postnlAdminhtml_config/exportTablerates", $params)
58
  . 'conditionName/\' + $(\'carriers_postnl_condition_name\').value + \'/tablerates.csv\' )';
59
 
60
  $data = array(
app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Form/Field/UninstallButton.php CHANGED
@@ -72,7 +72,7 @@ class TIG_PostNL_Block_Adminhtml_System_Config_Form_Field_UninstallButton
72
 
73
  $confirmText = implode($warningMessage);
74
  $confirmTitle = $this->__($warningTitle);
75
- $uninstallUrl = $this->getUrl('postnl_admin/adminhtml_extensionControl/uninstall');
76
 
77
  $html = $this->getLayout()->createBlock('adminhtml/widget_button')
78
  ->setId($element->getHtmlId())
72
 
73
  $confirmText = implode($warningMessage);
74
  $confirmTitle = $this->__($warningTitle);
75
+ $uninstallUrl = $this->getUrl('adminhtml/postnlAdminhtml_extensionControl/uninstall');
76
 
77
  $html = $this->getLayout()->createBlock('adminhtml/widget_button')
78
  ->setId($element->getHtmlId())
app/code/community/TIG/PostNL/Block/Adminhtml/System/Config/Js.php CHANGED
@@ -161,7 +161,7 @@ class TIG_PostNL_Block_Adminhtml_System_Config_Js extends TIG_PostNL_Block_Admin
161
  /**
162
  * Build the URL.
163
  */
164
- $url = $this->getUrl('postnl_admin/adminhtml_config/saveWizardStep', $urlParams);
165
 
166
  return $url;
167
  }
@@ -173,7 +173,7 @@ class TIG_PostNL_Block_Adminhtml_System_Config_Js extends TIG_PostNL_Block_Admin
173
  */
174
  public function getHideNotificationUrl()
175
  {
176
- $url = $this->getUrl('postnl_admin/adminhtml_config/hideNotification');
177
 
178
  return $url;
179
  }
161
  /**
162
  * Build the URL.
163
  */
164
+ $url = $this->getUrl('adminhtml/postnlAdminhtml_config/saveWizardStep', $urlParams);
165
 
166
  return $url;
167
  }
173
  */
174
  public function getHideNotificationUrl()
175
  {
176
+ $url = $this->getUrl('adminhtml/postnlAdminhtml_config/hideNotification');
177
 
178
  return $url;
179
  }
app/code/community/TIG/PostNL/Block/Adminhtml/Widget/Grid/Column/Renderer/Action.php CHANGED
@@ -85,7 +85,7 @@ class TIG_PostNL_Block_Adminhtml_Widget_Grid_Column_Renderer_Action
85
  */
86
  if (isset($action['code']) && $action['code'] == 'postnl_print_label') {
87
  $printLabelUrl = $this->getUrl(
88
- 'postnl_admin/adminhtml_shipment/printLabel',
89
  array('shipment_id' => $row->getId())
90
  );
91
 
85
  */
86
  if (isset($action['code']) && $action['code'] == 'postnl_print_label') {
87
  $printLabelUrl = $this->getUrl(
88
+ 'adminhtml/postnlAdminhtml_shipment/printLabel',
89
  array('shipment_id' => $row->getId())
90
  );
91
 
app/code/community/TIG/PostNL/Block/Adminhtml/Widget/Grid/Column/Renderer/ConfirmDate.php CHANGED
@@ -60,33 +60,9 @@ class TIG_PostNL_Block_Adminhtml_Widget_Grid_Column_Renderer_ConfirmDate
60
  }
61
 
62
  $helper = Mage::helper('postnl/deliveryOptions');
63
- $value = $row->getData($this->getColumn()->getIndex());
64
 
65
- /**
66
- * If we have no value, then no delivery date was chosen by the customer. In this case we can calculate when the
67
- * order could be shipped.
68
- */
69
- if (!$value) {
70
- $shippingDuration = $helper->getOrderShippingDuration($row);
71
- $deliveryDate = $helper->getDeliveryDate(
72
- $row->getCreatedAt(),
73
- $row->getStoreId(),
74
- false,
75
- true,
76
- true,
77
- $shippingDuration
78
- );
79
-
80
- $value = $helper->getValidDeliveryDate($deliveryDate)
81
- ->sub(new DateInterval('P1D'));
82
- } else {
83
- $value = new DateTime($value, new DateTimeZone('UTC'));
84
- }
85
-
86
- /**
87
- * Check if the confirm date is valid.
88
- */
89
- $value = $helper->getValidConfirmDate($value);
90
 
91
  /**
92
  * Update the row's value for the decorator later.
60
  }
61
 
62
  $helper = Mage::helper('postnl/deliveryOptions');
63
+ $value = $row->getData($this->getColumn()->getIndex());
64
 
65
+ $value = new DateTime($value, new DateTimeZone('UTC'));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
66
 
67
  /**
68
  * Update the row's value for the decorator later.
app/code/community/TIG/PostNL/Block/Adminhtml/Widget/Grid/Column/Renderer/ReturnView.php CHANGED
@@ -63,7 +63,7 @@ class TIG_PostNL_Block_Adminhtml_Widget_Grid_Column_Renderer_ReturnView
63
  $action['url'] = $this->getUrl('adminhtml/sales_shipment/view',
64
  array(
65
  'shipment_id' => $row->getId(),
66
- 'come_from_postnl' => Mage::helper('core')->urlEncode('postnl_admin/adminhtml_returns')
67
  )
68
  );
69
  }
63
  $action['url'] = $this->getUrl('adminhtml/sales_shipment/view',
64
  array(
65
  'shipment_id' => $row->getId(),
66
+ 'come_from_postnl' => Mage::helper('core')->urlEncode('adminhtml/postnlAdminhtml_returns')
67
  )
68
  );
69
  }
app/code/community/TIG/PostNL/Block/Adminhtml/Widget/Grid/Column/Renderer/Type/Abstract.php CHANGED
@@ -49,6 +49,7 @@ class TIG_PostNL_Block_Adminhtml_Widget_Grid_Column_Renderer_Type_Abstract
49
  const DELIVERY_OPTION_TYPE_COLUMN = 'delivery_option_type';
50
  const PAYMENT_METHOD_COLUMN = 'payment_method';
51
  const OPTIONS_COLUMN = 'options';
 
52
 
53
  /**
54
  * Renders a type column for a shipment type.
@@ -115,6 +116,9 @@ class TIG_PostNL_Block_Adminhtml_Widget_Grid_Column_Renderer_Type_Abstract
115
  $comment = $helper->__('Extra');
116
  }
117
  break;
 
 
 
118
  }
119
 
120
  $renderedValue = "<b id='postnl-shipmenttype-{$row->getId()}' data-product-type='{$type}'>{$label}</b>";
@@ -184,6 +188,8 @@ class TIG_PostNL_Block_Adminhtml_Widget_Grid_Column_Renderer_Type_Abstract
184
  return $this->_getAvondRenderedValue($row);
185
  } elseif ($optionType == 'PGE') {
186
  return $this->_getPgeRenderedValue($row);
 
 
187
  } elseif ($row->getData(self::IS_PAKKETAUTOMAAT_COLUMN)) {
188
  return $this->_getPaRenderedValue($row);
189
  } elseif ($row->getData(self::IS_PAKJE_GEMAK_COLUMN)) {
@@ -193,8 +199,9 @@ class TIG_PostNL_Block_Adminhtml_Widget_Grid_Column_Renderer_Type_Abstract
193
  /**
194
  * Check if this order is domestic.
195
  */
196
- if ($value == 'NL') {
197
- return $this->_getDomesticRenderedValue($row);
 
198
  }
199
 
200
  /**
@@ -309,14 +316,34 @@ class TIG_PostNL_Block_Adminhtml_Widget_Grid_Column_Renderer_Type_Abstract
309
  return $renderedValue;
310
  }
311
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
312
  /**
313
  * Render this column for a domestic shipment.
314
  *
315
  * @param Varien_Object $row
 
316
  *
317
  * @return string
318
  */
319
- protected function _getDomesticRenderedValue(Varien_Object $row)
320
  {
321
  $helper = Mage::helper('postnl');
322
  $deliveryOptionsHelper = Mage::helper('postnl/deliveryOptions');
@@ -328,17 +355,22 @@ class TIG_PostNL_Block_Adminhtml_Widget_Grid_Column_Renderer_Type_Abstract
328
 
329
  if ($isCod) {
330
  $type .= '_cod';
331
- } elseif ($deliveryOptionsHelper->getBuspakjeCalculationMode() == 'automatic') {
332
  /**
333
  * If the buspakje calculation mode is set to automatic and the order fits as a buspakje, we should render
334
  * the column as such.
335
  */
336
  $orderItems = Mage::getResourceModel('sales/order_item_collection')->setOrderFilter($row->getId());
337
  if ($deliveryOptionsHelper->fitsAsBuspakje($orderItems)) {
338
- $label = $helper->__('Letter Box Parcel');
339
- $type = 'buspakje';
 
 
 
 
340
 
341
- return "<b id='postnl-shipmenttype-{$row->getId()}' data-product-type='{$type}'>{$label}</b>";
 
342
  }
343
  }
344
 
@@ -346,14 +378,19 @@ class TIG_PostNL_Block_Adminhtml_Widget_Grid_Column_Renderer_Type_Abstract
346
 
347
  if ($isCod) {
348
  $renderedValue .= '<br /><em>' . $helper->__('COD') . '</em>';
349
- } else {
350
  /**
351
  * If the buspakje calculation mode is set to manual, we can only inform the merchant that this might be a
352
  * buspakje.
353
  */
354
  $orderItems = Mage::getResourceModel('sales/order_item_collection')->setOrderFilter($row->getId());
355
  if (Mage::helper('postnl/deliveryOptions')->fitsAsBuspakje($orderItems)) {
356
- $renderedValue .= '<br /><em>(' . $helper->__('possibly letter box parcel') . ')</em>';
 
 
 
 
 
357
  }
358
  }
359
 
49
  const DELIVERY_OPTION_TYPE_COLUMN = 'delivery_option_type';
50
  const PAYMENT_METHOD_COLUMN = 'payment_method';
51
  const OPTIONS_COLUMN = 'options';
52
+ const DELIVERY_DATE_COLUMN = 'delivery_date';
53
 
54
  /**
55
  * Renders a type column for a shipment type.
116
  $comment = $helper->__('Extra');
117
  }
118
  break;
119
+ case 'sunday':
120
+ $label = $helper->__('Sunday Delivery');
121
+ break;
122
  }
123
 
124
  $renderedValue = "<b id='postnl-shipmenttype-{$row->getId()}' data-product-type='{$type}'>{$label}</b>";
188
  return $this->_getAvondRenderedValue($row);
189
  } elseif ($optionType == 'PGE') {
190
  return $this->_getPgeRenderedValue($row);
191
+ } elseif ($optionType == 'Sunday') {
192
+ return $this->_getSundayRenderedValue($row);
193
  } elseif ($row->getData(self::IS_PAKKETAUTOMAAT_COLUMN)) {
194
  return $this->_getPaRenderedValue($row);
195
  } elseif ($row->getData(self::IS_PAKJE_GEMAK_COLUMN)) {
199
  /**
200
  * Check if this order is domestic.
201
  */
202
+ $domesticCountry = $helper->getDomesticCountry();
203
+ if ($value == $domesticCountry) {
204
+ return $this->_getDomesticRenderedValue($row, $value);
205
  }
206
 
207
  /**
316
  return $renderedValue;
317
  }
318
 
319
+ /**
320
+ * Render this column for a sunday shipment.
321
+ *
322
+ * @param Varien_Object $row
323
+ *
324
+ * @return string
325
+ */
326
+ protected function _getSundayRenderedValue(Varien_Object $row)
327
+ {
328
+ $helper = Mage::helper('postnl');
329
+
330
+ $label = $helper->__('Sunday Delivery');
331
+ $type = 'sunday';
332
+
333
+ $renderedValue = "<b id='postnl-shipmenttype-{$row->getId()}' data-product-type='{$type}'>{$label}</b>";
334
+
335
+ return $renderedValue;
336
+ }
337
+
338
  /**
339
  * Render this column for a domestic shipment.
340
  *
341
  * @param Varien_Object $row
342
+ * @param string $destination
343
  *
344
  * @return string
345
  */
346
+ protected function _getDomesticRenderedValue(Varien_Object $row, $destination)
347
  {
348
  $helper = Mage::helper('postnl');
349
  $deliveryOptionsHelper = Mage::helper('postnl/deliveryOptions');
355
 
356
  if ($isCod) {
357
  $type .= '_cod';
358
+ } elseif ($destination == 'NL' && $deliveryOptionsHelper->getBuspakjeCalculationMode() == 'automatic') {
359
  /**
360
  * If the buspakje calculation mode is set to automatic and the order fits as a buspakje, we should render
361
  * the column as such.
362
  */
363
  $orderItems = Mage::getResourceModel('sales/order_item_collection')->setOrderFilter($row->getId());
364
  if ($deliveryOptionsHelper->fitsAsBuspakje($orderItems)) {
365
+ $deliveryDate = $row->getData(self::DELIVERY_DATE_COLUMN);
366
+ $deliveryDate = DateTime::createFromFormat('Y-m-d H:i:s', $deliveryDate, new DateTimeZone('UTC'));
367
+
368
+ if ($deliveryDate->format('N') !== '0' && $deliveryDate->format('N') !== '1') {
369
+ $label = $helper->__('Letter Box Parcel');
370
+ $type = 'buspakje';
371
 
372
+ return "<b id='postnl-shipmenttype-{$row->getId()}' data-product-type='{$type}'>{$label}</b>";
373
+ }
374
  }
375
  }
376
 
378
 
379
  if ($isCod) {
380
  $renderedValue .= '<br /><em>' . $helper->__('COD') . '</em>';
381
+ } elseif ($destination == 'NL') {
382
  /**
383
  * If the buspakje calculation mode is set to manual, we can only inform the merchant that this might be a
384
  * buspakje.
385
  */
386
  $orderItems = Mage::getResourceModel('sales/order_item_collection')->setOrderFilter($row->getId());
387
  if (Mage::helper('postnl/deliveryOptions')->fitsAsBuspakje($orderItems)) {
388
+ $deliveryDate = $row->getData(self::DELIVERY_DATE_COLUMN);
389
+ $deliveryDate = DateTime::createFromFormat('Y-m-d H:i:s', $deliveryDate, new DateTimeZone('UTC'));
390
+
391
+ if ($deliveryDate->format('N') !== '0' && $deliveryDate->format('N') !== '1') {
392
+ $renderedValue .= '<br /><em>(' . $helper->__('possibly letter box parcel') . ')</em>';
393
+ }
394
  }
395
  }
396
 
app/code/community/TIG/PostNL/Block/DeliveryOptions/Checkout/DeliveryOptions.php CHANGED
@@ -72,6 +72,11 @@ class TIG_PostNL_Block_DeliveryOptions_Checkout_DeliveryOptions extends TIG_Post
72
  */
73
  const POSTNL_MATRIX_RATE_CODE = 'postnl_matrixrate';
74
 
 
 
 
 
 
75
  /**
76
  * Currently selected shipping address.
77
  *
@@ -276,6 +281,30 @@ class TIG_PostNL_Block_DeliveryOptions_Checkout_DeliveryOptions extends TIG_Post
276
  return $postcode;
277
  }
278
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
279
  /**
280
  * Get the earliest possible delivery date.
281
  *
@@ -290,14 +319,16 @@ class TIG_PostNL_Block_DeliveryOptions_Checkout_DeliveryOptions extends TIG_Post
290
  }
291
 
292
  $quote = $this->getQuote();
 
293
  $postcode = $this->getPostcode();
 
294
 
295
  try {
296
- $deliveryDate = $this->_getDeliveryDate($postcode, $quote);
297
  } catch (Exception $e) {
298
  Mage::helper('postnl')->logException($e);
299
 
300
- $deliveryDate = Mage::helper('postnl/deliveryOptions')->getDeliveryDate(null, null, false, true)
301
  ->format('d-m-Y');
302
  }
303
 
@@ -365,6 +396,9 @@ class TIG_PostNL_Block_DeliveryOptions_Checkout_DeliveryOptions extends TIG_Post
365
  case 'evening':
366
  $fee = $this->getEveningFee(false, $includingTax);
367
  break;
 
 
 
368
  case 'express':
369
  $fee = $this->getExpressFee(false, $includingTax);
370
  break;
@@ -392,6 +426,9 @@ class TIG_PostNL_Block_DeliveryOptions_Checkout_DeliveryOptions extends TIG_Post
392
  case 'evening':
393
  $feeText = $this->getEveningFee(true, $includingTax);
394
  break;
 
 
 
395
  case 'express':
396
  $feeText = $this->getExpressFee(true, $includingTax);
397
  break;
@@ -418,6 +455,19 @@ class TIG_PostNL_Block_DeliveryOptions_Checkout_DeliveryOptions extends TIG_Post
418
  return Mage::helper('postnl/deliveryOptions')->getEveningFee($formatted, $includingTax);
419
  }
420
 
 
 
 
 
 
 
 
 
 
 
 
 
 
421
  /**
422
  * Get the fee charged for PakjeGemak Express.
423
  *
@@ -705,6 +755,17 @@ class TIG_PostNL_Block_DeliveryOptions_Checkout_DeliveryOptions extends TIG_Post
705
  return true;
706
  }
707
 
 
 
 
 
 
 
 
 
 
 
 
708
  /**
709
  * Get whether this order is a buspakje order.
710
  *
@@ -770,13 +831,14 @@ class TIG_PostNL_Block_DeliveryOptions_Checkout_DeliveryOptions extends TIG_Post
770
  * get the first possible delivery date from PostNL.
771
  *
772
  * @param string $postcode
 
773
  * @param Mage_Sales_Model_Quote $quote
774
  *
775
  * @throws TIG_PostNL_Exception
776
  *
777
  * @return string
778
  */
779
- protected function _getDeliveryDate($postcode, Mage_Sales_Model_Quote $quote) {
780
  $postcode = str_replace(' ', '', strtoupper($postcode));
781
 
782
  $validator = new Zend_Validate_PostCode('nl_NL');
@@ -791,12 +853,27 @@ class TIG_PostNL_Block_DeliveryOptions_Checkout_DeliveryOptions extends TIG_Post
791
  );
792
  }
793
 
 
 
 
 
 
 
 
 
 
 
794
  $cif = Mage::getModel('postnl_deliveryoptions/cif');
795
  $response = $cif->setStoreId(Mage::app()->getStore()->getId())
796
- ->getDeliveryDate($postcode, $quote);
 
 
 
797
 
798
- $response = Mage::helper('postnl/deliveryOptions')->getValidDeliveryDate($response)->format('d-m-Y');
 
 
799
 
800
- return $response;
801
  }
802
  }
72
  */
73
  const POSTNL_MATRIX_RATE_CODE = 'postnl_matrixrate';
74
 
75
+ /**
76
+ * Default shipping address country.
77
+ */
78
+ const DEFAULT_SHIPPING_COUNTRY = 'NL';
79
+
80
  /**
81
  * Currently selected shipping address.
82
  *
281
  return $postcode;
282
  }
283
 
284
+ /**
285
+ * Get the currently selected shipping address's country.
286
+ *
287
+ * @return string
288
+ */
289
+ public function getCountry()
290
+ {
291
+ /**
292
+ * @todo make dynamic for BE support.
293
+ *
294
+ * Delivery options in Belgium are currently unstable and therefor not yet fully supported. Expect this to be
295
+ * added in a later release.
296
+ */
297
+ return 'NL';
298
+
299
+ // $country = $this->getShippingAddress()->getCountryId();
300
+ //
301
+ // if (!$country) {
302
+ // $country = self::DEFAULT_SHIPPING_COUNTRY;
303
+ // }
304
+ //
305
+ // return $country;
306
+ }
307
+
308
  /**
309
  * Get the earliest possible delivery date.
310
  *
319
  }
320
 
321
  $quote = $this->getQuote();
322
+ $storeId = $quote->getStoreId();
323
  $postcode = $this->getPostcode();
324
+ $country = $this->getCountry();
325
 
326
  try {
327
+ $deliveryDate = $this->_getDeliveryDate($postcode, $country, $quote);
328
  } catch (Exception $e) {
329
  Mage::helper('postnl')->logException($e);
330
 
331
+ $deliveryDate = Mage::helper('postnl/date')->getDeliveryDate('now' ,$storeId)
332
  ->format('d-m-Y');
333
  }
334
 
396
  case 'evening':
397
  $fee = $this->getEveningFee(false, $includingTax);
398
  break;
399
+ case 'sunday':
400
+ $fee = $this->getSundayFee(false, $includingTax);
401
+ break;
402
  case 'express':
403
  $fee = $this->getExpressFee(false, $includingTax);
404
  break;
426
  case 'evening':
427
  $feeText = $this->getEveningFee(true, $includingTax);
428
  break;
429
+ case 'sunday':
430
+ $feeText = $this->getSundayFee(true, $includingTax);
431
+ break;
432
  case 'express':
433
  $feeText = $this->getExpressFee(true, $includingTax);
434
  break;
455
  return Mage::helper('postnl/deliveryOptions')->getEveningFee($formatted, $includingTax);
456
  }
457
 
458
+ /**
459
+ * Get the fee charged for sunday delivery.
460
+ *
461
+ * @param boolean $formatted
462
+ * @param boolean $includingTax
463
+ *
464
+ * @return float
465
+ */
466
+ public function getSundayFee($formatted = false, $includingTax = true)
467
+ {
468
+ return Mage::helper('postnl/deliveryOptions_fee')->getSundayFee($formatted, $includingTax);
469
+ }
470
+
471
  /**
472
  * Get the fee charged for PakjeGemak Express.
473
  *
755
  return true;
756
  }
757
 
758
+ /**
759
+ * Check if the sunday sorting (AKA monday delivery) is allowed.
760
+ *
761
+ * @return bool
762
+ */
763
+ public function canUseSundaySorting()
764
+ {
765
+ $canUseSundaySorting = Mage::helper('postnl/deliveryOptions')->canUseSundaySorting();
766
+ return $canUseSundaySorting;
767
+ }
768
+
769
  /**
770
  * Get whether this order is a buspakje order.
771
  *
831
  * get the first possible delivery date from PostNL.
832
  *
833
  * @param string $postcode
834
+ * @param string $country
835
  * @param Mage_Sales_Model_Quote $quote
836
  *
837
  * @throws TIG_PostNL_Exception
838
  *
839
  * @return string
840
  */
841
+ protected function _getDeliveryDate($postcode, $country, Mage_Sales_Model_Quote $quote) {
842
  $postcode = str_replace(' ', '', strtoupper($postcode));
843
 
844
  $validator = new Zend_Validate_PostCode('nl_NL');
853
  );
854
  }
855
 
856
+ if ($country != 'NL' && $country != 'BE') {
857
+ throw new TIG_PostNL_Exception(
858
+ $this->__(
859
+ 'Invalid country supplied for GetDeliveryDate request: %s. Only "NL" and "BE" are allowed.',
860
+ $postcode
861
+ ),
862
+ 'POSTNL-0235'
863
+ );
864
+ }
865
+
866
  $cif = Mage::getModel('postnl_deliveryoptions/cif');
867
  $response = $cif->setStoreId(Mage::app()->getStore()->getId())
868
+ ->getDeliveryDate($postcode, $country, $quote);
869
+
870
+ /** @var TIG_PostNL_Helper_Date $helper */
871
+ $helper = Mage::helper('postnl/date');
872
 
873
+ $dateObject = new DateTime($response, new DateTimeZone('UTC'));
874
+ $correction = $helper->getDeliveryDateCorrection($dateObject);
875
+ $dateObject->add(new DateInterval("P{$correction}D"));
876
 
877
+ return $dateObject->format('d-m-Y');
878
  }
879
  }
app/code/community/TIG/PostNL/Block/DeliveryOptions/Js.php CHANGED
@@ -78,7 +78,9 @@ class TIG_PostNL_Block_DeliveryOptions_Js extends TIG_PostNL_Block_DeliveryOptio
78
  */
79
  protected function _toHtml()
80
  {
81
- if (!Mage::helper('postnl/deliveryOptions')->isDeliveryOptionsEnabled()) {
 
 
82
  return '';
83
  }
84
 
78
  */
79
  protected function _toHtml()
80
  {
81
+ /** @var TIG_PostNL_Helper_DeliveryOptions $helper */
82
+ $helper = Mage::helper('postnl/deliveryOptions');
83
+ if (!$helper->isDeliveryOptionsEnabled()) {
84
  return '';
85
  }
86
 
app/code/community/TIG/PostNL/Helper/Carrier.php CHANGED
@@ -53,8 +53,7 @@ class TIG_PostNL_Helper_Carrier extends TIG_PostNL_Helper_Data
53
  /**
54
  * Localised track and trace base URL's.
55
  */
56
- const POSTNL_TRACK_AND_TRACE_NL_BASE_URL_XPATH = 'postnl/cif/track_and_trace_nl_base_url';
57
- const POSTNL_TRACK_AND_TRACE_INT_BASE_URL_XPATH = 'postnl/cif/track_and_trace_int_base_url';
58
 
59
  /**
60
  * XML path to rate type setting.
@@ -379,67 +378,75 @@ class TIG_PostNL_Helper_Carrier extends TIG_PostNL_Helper_Data
379
  * @param string $barcode
380
  * @param array|Varien_Object $destination An array or object containing the shipment's destination data.
381
  * @param boolean|string $lang This parameter is no longer used as of v1.4.1.
382
- * @param boolean $forceNl
383
  *
384
  * @return string
385
  */
386
- public function getBarcodeUrl($barcode, $destination, $lang = null, $forceNl = false)
387
  {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
388
  $countryCode = null;
389
  $postcode = null;
390
  if (is_array($destination)) {
391
  if (!isset($destination['countryCode'])) {
392
- throw new InvalidArgumentException("Destination must contain a country code.");
393
  }
394
-
395
  $countryCode = $destination['countryCode'];
396
  $postcode = $destination['postcode'];
397
  } elseif (is_object($destination) && $destination instanceof Varien_Object) {
398
  if (!$destination->getCountry()) {
399
  throw new InvalidArgumentException('Destination must contain a country code.');
400
  }
401
-
402
  $countryCode = $destination->getCountry();
403
  $postcode = str_replace(' ', '', $destination->getPostcode());
404
  } else {
405
  throw new InvalidArgumentException('Destination must be an array or an instance of Varien_Object.');
406
  }
407
 
 
 
 
408
  /**
409
- * Get the dutch track & trace URL for dutch shipments or for the admin.
410
  */
411
- if ($forceNl
412
- || (!empty($countryCode)
413
- && $countryCode == 'NL'
414
- )
415
- ) {
416
- $barcodeUrl = Mage::getStoreConfig(self::POSTNL_TRACK_AND_TRACE_NL_BASE_URL_XPATH)
417
- . '&b=' . $barcode;
418
- /**
419
- * For dutch shipments add the postcode. For international shipments add an 'international' flag.
420
- */
421
- if (!empty($postcode)
422
- && !empty($countryCode)
423
- && $countryCode == 'NL'
424
- ) {
425
- $barcodeUrl .= '&p=' . $postcode;
426
- } else {
427
- $barcodeUrl .= '&i=true';
428
- }
429
-
430
- return $barcodeUrl;
431
  }
432
 
433
  /**
434
- * Get a general track & trace URL for all other destinations.
435
  */
436
- $barcodeUrl = Mage::getStoreConfig(self::POSTNL_TRACK_AND_TRACE_INT_BASE_URL_XPATH)
437
- . '/' . $barcode
438
- . '/' . $countryCode;
439
-
440
- if (!empty($postcode)) {
441
- $barcodeUrl .= '/' . $postcode;
442
- }
443
 
444
  return $barcodeUrl;
445
  }
53
  /**
54
  * Localised track and trace base URL's.
55
  */
56
+ const POSTNL_TRACK_AND_TRACE_BASE_URL_XPATH = 'postnl/cif/track_and_trace_base_url';
 
57
 
58
  /**
59
  * XML path to rate type setting.
378
  * @param string $barcode
379
  * @param array|Varien_Object $destination An array or object containing the shipment's destination data.
380
  * @param boolean|string $lang This parameter is no longer used as of v1.4.1.
381
+ * @param boolean $business
382
  *
383
  * @return string
384
  */
385
+ public function getBarcodeUrl($barcode, $destination, $lang = null, $business = false)
386
  {
387
+ /**
388
+ * Set first L (language) parameter
389
+ */
390
+ $lang = strtoupper($lang);
391
+
392
+ $allowedLanguages = array (
393
+ 'NL', 'DE', 'EN', 'FR', 'ED', 'IT', 'CN'
394
+ );
395
+ if (!in_array($lang, $allowedLanguages)) {
396
+ $lang = 'EN';
397
+ }
398
+ $langParameter = 'L=' . $lang;
399
+
400
+ /**
401
+ * Set second B (barcode) parameter
402
+ */
403
+ if (!empty($barcode)) {
404
+ $barcodeParameter = '&B=' . $barcode;
405
+ } else {
406
+ throw new InvalidArgumentException('Barcode can not be empty.');
407
+ }
408
+
409
+ /**
410
+ * Set third (postcode) and fourth (destination) parameter
411
+ */
412
  $countryCode = null;
413
  $postcode = null;
414
  if (is_array($destination)) {
415
  if (!isset($destination['countryCode'])) {
416
+ throw new InvalidArgumentException('Destination must contain a country code.');
417
  }
 
418
  $countryCode = $destination['countryCode'];
419
  $postcode = $destination['postcode'];
420
  } elseif (is_object($destination) && $destination instanceof Varien_Object) {
421
  if (!$destination->getCountry()) {
422
  throw new InvalidArgumentException('Destination must contain a country code.');
423
  }
 
424
  $countryCode = $destination->getCountry();
425
  $postcode = str_replace(' ', '', $destination->getPostcode());
426
  } else {
427
  throw new InvalidArgumentException('Destination must be an array or an instance of Varien_Object.');
428
  }
429
 
430
+ $postcodeParameter = '&P=' . $postcode;
431
+ $destinationParameter = '&D=' . $countryCode;
432
+
433
  /**
434
+ * Set last and fifth (Consumer or Business) parameter
435
  */
436
+ $businessParameter = '&T=C';
437
+ if ($business) {
438
+ $businessParameter = '&T=B';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
439
  }
440
 
441
  /**
442
+ * Get track & trace URL
443
  */
444
+ $barcodeUrl = Mage::getStoreConfig(self::POSTNL_TRACK_AND_TRACE_BASE_URL_XPATH)
445
+ . $langParameter
446
+ . $barcodeParameter
447
+ . $postcodeParameter
448
+ . $destinationParameter
449
+ . $businessParameter;
 
450
 
451
  return $barcodeUrl;
452
  }
app/code/community/TIG/PostNL/Helper/Cif.php CHANGED
@@ -119,6 +119,7 @@ class TIG_PostNL_Helper_Cif extends TIG_PostNL_Helper_Data
119
  'SE',
120
  'GR',
121
  'MT',
 
122
  );
123
 
124
  /**
@@ -133,6 +134,48 @@ class TIG_PostNL_Helper_Cif extends TIG_PostNL_Helper_Data
133
  '4955' => array(
134
  'BE',
135
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
136
  );
137
 
138
  /**
@@ -208,6 +251,13 @@ class TIG_PostNL_Helper_Cif extends TIG_PostNL_Helper_Data
208
  '4924' => '4954',
209
  '4946' => '4955',
210
  '4944' => '4952',
 
 
 
 
 
 
 
211
  );
212
 
213
  /**
@@ -245,27 +295,35 @@ class TIG_PostNL_Helper_Cif extends TIG_PostNL_Helper_Data
245
  /**
246
  * Get an array of standard product codes.
247
  *
248
- * @param boolean $flat
 
249
  *
250
  * @return array
251
  */
252
- public function getStandardProductCodes($flat = true)
253
  {
254
  $standardProductCodes = Mage::getSingleton('postnl_core/system_config_source_standardProductOptions');
255
- return $standardProductCodes->getAvailableOptions($flat);
 
 
 
256
  }
257
 
258
  /**
259
  * Get an array of standard COD product codes.
260
  *
261
- * @param boolean $flat
 
262
  *
263
  * @return array
264
  */
265
- public function getStandardCodProductCodes($flat = true)
266
  {
267
  $standardProductCodes = Mage::getSingleton('postnl_core/system_config_source_standardProductOptions');
268
- return $standardProductCodes->getAvailableCodOptions($flat);
 
 
 
269
  }
270
 
271
  /**
@@ -400,6 +458,19 @@ class TIG_PostNL_Helper_Cif extends TIG_PostNL_Helper_Data
400
  return $buspakjeProductCodes->getAvailableOptions($flat);
401
  }
402
 
 
 
 
 
 
 
 
 
 
 
 
 
 
403
  /**
404
  * Get an array of possible shipment types
405
  *
@@ -501,7 +572,7 @@ class TIG_PostNL_Helper_Cif extends TIG_PostNL_Helper_Data
501
  */
502
  public function getBarcodeTypeForShipment($shipment)
503
  {
504
- if ($shipment->isDutchShipment() || $shipment->isPakjeGemakShipment()) {
505
  $barcodeType = self::DUTCH_BARCODE_TYPE;
506
  return $barcodeType;
507
  }
@@ -623,22 +694,22 @@ class TIG_PostNL_Helper_Cif extends TIG_PostNL_Helper_Data
623
  *
624
  * @return boolean
625
  *
626
- * @see TIG_PostNL_Model_Core_Shipment::isDutchShipment();
627
  */
628
- public function isDutchShipment($shipment)
629
  {
630
  $postnlShipmentClass = Mage::getConfig()->getModelClassName('postnl_core/shipment');
631
  if ($shipment instanceof $postnlShipmentClass) {
632
  /**
633
  * @var TIG_PostNL_Model_Core_Shipment $shipment
634
  */
635
- return $shipment->isDutchShipment();
636
  }
637
 
638
  $tempPostnlShipment = Mage::getModel('postnl_core/shipment');
639
  $tempPostnlShipment->setShipment($shipment);
640
 
641
- return $tempPostnlShipment->isDutchShipment();
642
  }
643
 
644
  /**
@@ -783,7 +854,7 @@ class TIG_PostNL_Helper_Cif extends TIG_PostNL_Helper_Data
783
  /**
784
  * Only NL shipments support multi-colli shipments.
785
  */
786
- if (!$postnlShipment->isDutchShipment()) {
787
  return 1;
788
  }
789
 
@@ -1002,8 +1073,8 @@ class TIG_PostNL_Helper_Cif extends TIG_PostNL_Helper_Data
1002
  * Retrieves street name, house number and housen umber extension from the shipping address in the multiple street
1003
  * ines configuration.
1004
  *
1005
- * @param int $storeId
1006
- * @param Mage_Sales_Model_Order_Address $address
1007
  *
1008
  * @return array
1009
  *
119
  'SE',
120
  'GR',
121
  'MT',
122
+ 'NL',
123
  );
124
 
125
  /**
134
  '4955' => array(
135
  'BE',
136
  ),
137
+ '4970' => array(
138
+ 'BE',
139
+ ),
140
+ '4971' => array(
141
+ 'BE',
142
+ ),
143
+ '4972' => array(
144
+ 'BE',
145
+ ),
146
+ '4973' => array(
147
+ 'BE',
148
+ ),
149
+ '4974' => array(
150
+ 'BE',
151
+ ),
152
+ '4975' => array(
153
+ 'BE',
154
+ ),
155
+ '4976' => array(
156
+ 'BE',
157
+ ),
158
+ '4960' => array(
159
+ 'BE',
160
+ ),
161
+ '4961' => array(
162
+ 'BE',
163
+ ),
164
+ '4962' => array(
165
+ 'BE',
166
+ ),
167
+ '4963' => array(
168
+ 'BE',
169
+ ),
170
+ '4964' => array(
171
+ 'BE',
172
+ ),
173
+ '4965' => array(
174
+ 'BE',
175
+ ),
176
+ '4966' => array(
177
+ 'BE',
178
+ ),
179
  );
180
 
181
  /**
251
  '4924' => '4954',
252
  '4946' => '4955',
253
  '4944' => '4952',
254
+ '4960' => '4970',
255
+ '4961' => '4971',
256
+ '4962' => '4972',
257
+ '4963' => '4973',
258
+ '4964' => '4974',
259
+ '4965' => '4975',
260
+ '4966' => '4976',
261
  );
262
 
263
  /**
295
  /**
296
  * Get an array of standard product codes.
297
  *
298
+ * @param boolean $flat
299
+ * @param string|false $destination
300
  *
301
  * @return array
302
  */
303
+ public function getStandardProductCodes($flat = true, $destination = false)
304
  {
305
  $standardProductCodes = Mage::getSingleton('postnl_core/system_config_source_standardProductOptions');
306
+
307
+ $productCodes = $standardProductCodes->getAvailableOptions($flat, $destination);
308
+
309
+ return $productCodes;
310
  }
311
 
312
  /**
313
  * Get an array of standard COD product codes.
314
  *
315
+ * @param boolean $flat
316
+ * @param string|false $destination
317
  *
318
  * @return array
319
  */
320
+ public function getStandardCodProductCodes($flat = true, $destination = false)
321
  {
322
  $standardProductCodes = Mage::getSingleton('postnl_core/system_config_source_standardProductOptions');
323
+
324
+ $productCodes = $standardProductCodes->getAvailableCodOptions($flat, $destination);
325
+
326
+ return $productCodes;
327
  }
328
 
329
  /**
458
  return $buspakjeProductCodes->getAvailableOptions($flat);
459
  }
460
 
461
+ /**
462
+ * Get an array of sunday product codes.
463
+ *
464
+ * @param boolean $flat
465
+ *
466
+ * @return array
467
+ */
468
+ public function getSundayProductCodes($flat = true)
469
+ {
470
+ $sundayProductCodes = Mage::getSingleton('postnl_core/system_config_source_sundayProductOptions');
471
+ return $sundayProductCodes->getAvailableOptions($flat);
472
+ }
473
+
474
  /**
475
  * Get an array of possible shipment types
476
  *
572
  */
573
  public function getBarcodeTypeForShipment($shipment)
574
  {
575
+ if ($shipment->isDomesticShipment() || $shipment->isPakjeGemakShipment()) {
576
  $barcodeType = self::DUTCH_BARCODE_TYPE;
577
  return $barcodeType;
578
  }
694
  *
695
  * @return boolean
696
  *
697
+ * @see TIG_PostNL_Model_Core_Shipment::isDomesticShipment();
698
  */
699
+ public function isDomesticShipment($shipment)
700
  {
701
  $postnlShipmentClass = Mage::getConfig()->getModelClassName('postnl_core/shipment');
702
  if ($shipment instanceof $postnlShipmentClass) {
703
  /**
704
  * @var TIG_PostNL_Model_Core_Shipment $shipment
705
  */
706
+ return $shipment->isDomesticShipment();
707
  }
708
 
709
  $tempPostnlShipment = Mage::getModel('postnl_core/shipment');
710
  $tempPostnlShipment->setShipment($shipment);
711
 
712
+ return $tempPostnlShipment->isDomesticShipment();
713
  }
714
 
715
  /**
854
  /**
855
  * Only NL shipments support multi-colli shipments.
856
  */
857
+ if (!$postnlShipment->isDomesticShipment()) {
858
  return 1;
859
  }
860
 
1073
  * Retrieves street name, house number and housen umber extension from the shipping address in the multiple street
1074
  * ines configuration.
1075
  *
1076
+ * @param int $storeId
1077
+ * @param Mage_Customer_Model_Address_Abstract $address
1078
  *
1079
  * @return array
1080
  *
app/code/community/TIG/PostNL/Helper/Data.php CHANGED
@@ -149,6 +149,11 @@ class TIG_PostNL_Helper_Data extends Mage_Core_Helper_Abstract
149
  const XPATH_GUEST_PRINT_LABEL = 'postnl/returns/guest_print_label';
150
  const XPATH_PRINT_RETURN_LABELS_WITH_SHIPPING_LABELS = 'postnl/returns/print_return_and_shipping_label';
151
 
 
 
 
 
 
152
  /**
153
  * Required configuration fields.
154
  *
@@ -261,6 +266,11 @@ class TIG_PostNL_Helper_Data extends Mage_Core_Helper_Abstract
261
  */
262
  protected $_storeTimeZones;
263
 
 
 
 
 
 
264
  /**
265
  * Get required fields array.
266
  *
@@ -455,6 +465,60 @@ class TIG_PostNL_Helper_Data extends Mage_Core_Helper_Abstract
455
  return $this->_storeTimeZones;
456
  }
457
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
458
  /**
459
  * @param string[] $storeTimeZones
460
  *
@@ -737,7 +801,9 @@ class TIG_PostNL_Helper_Data extends Mage_Core_Helper_Abstract
737
  return $cache->getPostnlCoreCanUseBuspakje();
738
  }
739
 
740
- $isBuspakjeActive = Mage::getStoreConfigFlag(self::XPATH_USE_BUSPAKJE);
 
 
741
 
742
  if (!$isBuspakjeActive) {
743
  if ($cache) {
@@ -912,6 +978,15 @@ class TIG_PostNL_Helper_Data extends Mage_Core_Helper_Abstract
912
  $storeId = Mage::app()->getStore()->getId();
913
  }
914
 
 
 
 
 
 
 
 
 
 
915
  $calculationMode = Mage::getStoreConfig(self::XPATH_BUSPAKJE_CALC_MODE, $storeId);
916
 
917
  return $calculationMode;
149
  const XPATH_GUEST_PRINT_LABEL = 'postnl/returns/guest_print_label';
150
  const XPATH_PRINT_RETURN_LABELS_WITH_SHIPPING_LABELS = 'postnl/returns/print_return_and_shipping_label';
151
 
152
+ /**
153
+ * Xpath to the sender country setting.
154
+ */
155
+ const XPATH_SENDER_COUNTRY = 'postnl/cif_address/country';
156
+
157
  /**
158
  * Required configuration fields.
159
  *
266
  */
267
  protected $_storeTimeZones;
268
 
269
+ /**
270
+ * @var string
271
+ */
272
+ protected $_domesticCountry;
273
+
274
  /**
275
  * Get required fields array.
276
  *
465
  return $this->_storeTimeZones;
466
  }
467
 
468
+ /**
469
+ * Get an array of country codes considered to be 'domestic'.
470
+ *
471
+ * @return string
472
+ */
473
+ public function getDomesticCountry()
474
+ {
475
+ $domesticCountry = $this->_domesticCountry;
476
+
477
+ if (!empty($domesticCountry)) {
478
+ return $domesticCountry;
479
+ }
480
+
481
+ /**
482
+ * Try to tget the domestic country array from the cache.
483
+ */
484
+ $cache = $this->getCache();
485
+ if ($cache && $cache->hasDomesticCountry()) {
486
+ $domesticCountry = $cache->getDomesticCountry();
487
+
488
+ $this->setDomesticCountry($cache->getDomesticCountry());
489
+ return $domesticCountry;
490
+ }
491
+
492
+ /**
493
+ * The domestic country array contains the selected sender address country.
494
+ */
495
+ $domesticCountry = Mage::getStoreConfig(self::XPATH_SENDER_COUNTRY, Mage_Core_Model_App::ADMIN_STORE_ID);
496
+
497
+ $this->setDomesticCountry($domesticCountry);
498
+
499
+ /**
500
+ * Attempt to save the array to the PostNL cache.
501
+ */
502
+ if ($cache) {
503
+ $cache->setDomesticCountry($domesticCountry)
504
+ ->saveCache();
505
+ }
506
+
507
+ return $domesticCountry;
508
+ }
509
+
510
+ /**
511
+ * @param array $domesticCountries
512
+ *
513
+ * @return $this
514
+ */
515
+ public function setDomesticCountry($domesticCountries)
516
+ {
517
+ $this->_domesticCountry = $domesticCountries;
518
+
519
+ return $this;
520
+ }
521
+
522
  /**
523
  * @param string[] $storeTimeZones
524
  *
801
  return $cache->getPostnlCoreCanUseBuspakje();
802
  }
803
 
804
+ $storeId = Mage::app()->getStore()->getStoreId();
805
+
806
+ $isBuspakjeActive = Mage::getStoreConfigFlag(self::XPATH_USE_BUSPAKJE, $storeId);
807
 
808
  if (!$isBuspakjeActive) {
809
  if ($cache) {
978
  $storeId = Mage::app()->getStore()->getId();
979
  }
980
 
981
+ /**
982
+ * If buspakje is turned off, return setting 'manual' to prevent extra checks while getting the same
983
+ * functionality.
984
+ */
985
+ $buspakjeActive = $this->canUseBuspakje();
986
+ if(!$buspakjeActive){
987
+ return self::BUSPAKJE_CALCULATION_MODE_MANUAL;
988
+ }
989
+
990
  $calculationMode = Mage::getStoreConfig(self::XPATH_BUSPAKJE_CALC_MODE, $storeId);
991
 
992
  return $calculationMode;
app/code/community/TIG/PostNL/Helper/Date.php ADDED
@@ -0,0 +1,411 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ___________ __ __
4
+ * \__ ___/____ _/ |_ _____ | |
5
+ * | | / _ \\ __\\__ \ | |
6
+ * | | | |_| || | / __ \_| |__
7
+ * |____| \____/ |__| (____ /|____/
8
+ * \/
9
+ * ___ __ __
10
+ * | | ____ _/ |_ ____ _______ ____ ____ _/ |_
11
+ * | | / \\ __\_/ __ \\_ __ \ / \ _/ __ \\ __\
12
+ * | || | \| | \ ___/ | | \/| | \\ ___/ | |
13
+ * |___||___| /|__| \_____>|__| |___| / \_____>|__|
14
+ * \/ \/
15
+ * ________
16
+ * / _____/_______ ____ __ __ ______
17
+ * / \ ___\_ __ \ / _ \ | | \\____ \
18
+ * \ \_\ \| | \/| |_| || | /| |_| |
19
+ * \______ /|__| \____/ |____/ | __/
20
+ * \/ |__|
21
+ *
22
+ * NOTICE OF LICENSE
23
+ *
24
+ * This source file is subject to the Creative Commons License.
25
+ * It is available through the world-wide-web at this URL:
26
+ * http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
27
+ * If you are unable to obtain it through the world-wide-web, please send an email
28
+ * to servicedesk@tig.nl so we can send you a copy immediately.
29
+ *
30
+ * DISCLAIMER
31
+ *
32
+ * Do not edit or add to this file if you wish to upgrade this module to newer
33
+ * versions in the future. If you wish to customize this module for your
34
+ * needs please contact servicedesk@tig.nl for more information.
35
+ *
36
+ * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
+ * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
+ *
39
+ */
40
+ class TIG_PostNL_Helper_Date extends TIG_PostNL_Helper_DeliveryOptions
41
+ {
42
+ /**
43
+ * Constants to define the indices for shipping/delivery day arrays.
44
+ */
45
+ const SUNDAY = 0;
46
+ const MONDAY = 1;
47
+ const TUESDAY = 2;
48
+ const WEDNESDAY = 3;
49
+ const THURSDAY = 4;
50
+ const FRIDAY = 5;
51
+ const SATURDAY = 6;
52
+ const ALTERNATIVE_SUNDAY = 7; // In certain instances sunday is considered the 7th day, rather than the 0th.
53
+
54
+ /**
55
+ * Defines which delivery days are available, used for further calculating shipping and delivery dates.
56
+ *
57
+ * @var array
58
+ */
59
+ protected $_validDeliveryDays = array (
60
+ self::SUNDAY => 0,
61
+ self::MONDAY => 0,
62
+ self::TUESDAY => 0,
63
+ self::WEDNESDAY => 0,
64
+ self::THURSDAY => 0,
65
+ self::FRIDAY => 0,
66
+ self::SATURDAY => 0,
67
+ );
68
+
69
+ /**
70
+ * This can possible be changed to 2. Required for sending from Belgium and defines the delay between
71
+ * offering a parcel to PostNL and PostNL delivering the parcel.
72
+ *
73
+ * @var int
74
+ */
75
+ protected $_postnlDeliveryDelay = 1;
76
+
77
+ /**
78
+ * Build an array of valid delivery dates. Used for calculating delivery and shipping dates.
79
+ *
80
+ * @param $storeId
81
+ *
82
+ * @return array
83
+ *
84
+ * @throws TIG_PostNL_Exception
85
+ */
86
+ public function getValidDeliveryDaysArray($storeId = 0)
87
+ {
88
+ /**
89
+ * Check if the array is available in the cache.
90
+ */
91
+ $cache = $this->getCache();
92
+ if ($cache && $cache->hasValidDeliveryDaysArray()) {
93
+ return $cache->getValidDeliveryDaysArray();
94
+ }
95
+
96
+ /**
97
+ * Retrieves required config values.
98
+ */
99
+ $sundayDelivery = Mage::getStoreConfig(self::XPATH_ENABLE_SUNDAY_DELIVERY, $storeId);
100
+ $sundaySorting = Mage::getStoreConfig(self::XPATH_ALLOW_SUNDAY_SORTING, $storeId);
101
+ $shippingDays = Mage::getStoreConfig(self::XPATH_SHIPPING_DAYS, $storeId);
102
+ $shippingDays = explode(',', $shippingDays);
103
+
104
+ /**
105
+ * Sunday delivery and sunday sorting are not available for letter box parcels.
106
+ */
107
+ if ($this->quoteIsBuspakje(null)) {
108
+ $sundayDelivery = false;
109
+ $sundaySorting = false;
110
+ }
111
+
112
+ /**
113
+ * If a day is configured as shipping day, this day + the PostNL shipping delay is available as delivery day.
114
+ */
115
+ foreach($shippingDays as $shippingDay) {
116
+ $dayToEnable = ($shippingDay + $this->_postnlDeliveryDelay) % 7;
117
+ $this->_validDeliveryDays[$dayToEnable] = 1;
118
+ }
119
+
120
+ /**
121
+ * If sunday delivery is not active, sunday can never be an available delivery date.
122
+ */
123
+ if (!$sundayDelivery) {
124
+ $this->_validDeliveryDays[self::SUNDAY] = 0;
125
+
126
+ /**
127
+ * If sunday sorting is active, but sundaydelivery isn't, and saturday is a valid shipping day, monday is a
128
+ * valid delivery day.
129
+ */
130
+ if ($sundaySorting
131
+ && in_array(self::SATURDAY, $shippingDays)
132
+ ) {
133
+ $this->_validDeliveryDays[self::MONDAY] = 1;
134
+ } elseif (!$sundaySorting
135
+ && in_array(self::SATURDAY, $shippingDays)
136
+ ) {
137
+ /**
138
+ * If sunday sorting is not active, and sunday delivery isn't either, tuesday should be a valid delivery
139
+ * day and monday shouldn't.
140
+ */
141
+ $this->_validDeliveryDays[self::MONDAY] = 0;
142
+ $this->_validDeliveryDays[self::TUESDAY] = 1;
143
+ } else {
144
+ $this->_validDeliveryDays[self::MONDAY] = 0;
145
+ }
146
+ }
147
+
148
+ /**
149
+ * If no valid delivery day is found, throw an Exception
150
+ */
151
+ if (!in_array(1, $this->_validDeliveryDays)) {
152
+ throw new TIG_PostNL_Exception(
153
+ $this->__('No valid delivery day found.'),
154
+ 'POSTNL-0231'
155
+ );
156
+ }
157
+
158
+ /**
159
+ * Save this array in the cache
160
+ */
161
+ if ($cache) {
162
+ $cache->setValidDeliveryDaysArray($this->_validDeliveryDays)
163
+ ->saveCache();
164
+ }
165
+
166
+ return $this->_validDeliveryDays;
167
+ }
168
+
169
+ /**
170
+ * Checks if the current day is a valid day for delivery, using the validDeliveryDay array built beforehand.
171
+ *
172
+ * @param int $weekDay
173
+ * @param Array $validDeliveryDays
174
+ *
175
+ * @return bool
176
+ */
177
+ public function isValidDay($weekDay, $validDeliveryDays)
178
+ {
179
+ return $validDeliveryDays[$weekDay];
180
+ }
181
+
182
+ /**
183
+ * Calculates the date an order should be delivered, based on the order date
184
+ *
185
+ * @param mixed $date
186
+ * @param int $storeId
187
+ *
188
+ * @return DateTime
189
+ */
190
+ public function getDeliveryDate($date, $storeId)
191
+ {
192
+ $orderDateObject = $this->getUtcDateTime($date, $storeId);
193
+
194
+ /**
195
+ * If the time is past the cutoff time of the store, we need to treat this date as the next day
196
+ */
197
+ if ($this->isPastCutOff($orderDateObject, $storeId)) {
198
+ $orderDateObject->add(new DateInterval('P1D'));
199
+ }
200
+
201
+ /**
202
+ * Get the current weekday and configured shipping duration.
203
+ */
204
+ $weekday = $orderDateObject->format('N');
205
+ $shippingDuration = $this->getQuoteShippingDuration();
206
+
207
+ /**
208
+ * Get a possible addition of day(s), if the found deliveryDay is not a valid deliveryday.
209
+ */
210
+ $checkValidDay = ((int) $weekday + $shippingDuration) % 7;
211
+ $correction = $this->getDeliveryDateCorrection($checkValidDay);
212
+ $shippingDuration = $shippingDuration + $correction;
213
+
214
+ /**
215
+ * Add the calculated total shipping duration to the order date, to get the Delivery Date.
216
+ */
217
+ $deliveryDate = $orderDateObject->add(new DateInterval('P'.$shippingDuration.'D'));
218
+ return $deliveryDate;
219
+ }
220
+
221
+ /**
222
+ * Calculates the date an order needs te be shipped, based on the order date.
223
+ *
224
+ * @param mixed $date
225
+ * @param int $storeId
226
+ *
227
+ * @return DateTime
228
+ */
229
+ public function getShippingDate($date, $storeId)
230
+ {
231
+ $dateObject = $this->getDeliveryDate($date, $storeId);
232
+ $sundaySorting = Mage::getStoreConfig(self::XPATH_ALLOW_SUNDAY_SORTING, $storeId);
233
+
234
+ /**
235
+ * If the delivery day is monday, the shipment possibly needs to be sent on saturday, if sundaydelivery is not
236
+ * allowed, and sundaysorting is active.
237
+ */
238
+ if($dateObject->format('N') == self::MONDAY) {
239
+ $validDeliveryDays = $this->getValidDeliveryDaysArray();
240
+ if($sundaySorting && $validDeliveryDays[self::SUNDAY] == 0) {
241
+ $dateObject->sub(new DateInterval("P1D"));
242
+ }
243
+ }
244
+
245
+ /**
246
+ * Substract the delivery delay from PostNL.
247
+ */
248
+ $dateObject->sub(new DateInterval("P{$this->_postnlDeliveryDelay}D"));
249
+ return $dateObject;
250
+ }
251
+
252
+ /**
253
+ * Gets the shipping date calculated from the supplied deliveryDate.
254
+ *
255
+ * @param $deliveryDate
256
+ * @param $storeId
257
+ *
258
+ * @return DateTime
259
+ */
260
+ public function getShippingDateFromDeliveryDate($deliveryDate, $storeId)
261
+ {
262
+ /**
263
+ * Get required config values and date object.
264
+ */
265
+ $sundaySorting = Mage::getStoreConfig(self::XPATH_ALLOW_SUNDAY_SORTING, $storeId);
266
+ $shippingDays = Mage::getStoreConfig(self::XPATH_SHIPPING_DAYS, $storeId);
267
+ $shippingDaysArray = explode(',', $shippingDays);
268
+ $dateObject = $this->getUtcDateTime($deliveryDate, $storeId);
269
+
270
+ /**
271
+ * If the delivery day is monday, the shipment possibly needs to be sent on saturday, if sundaydelivery is not
272
+ * allowed, and sundaysorting is active.
273
+ */
274
+ if($dateObject->format('N') == self::MONDAY) {
275
+ if($sundaySorting && !in_array(self::ALTERNATIVE_SUNDAY, $shippingDaysArray)) {
276
+ $dateObject->sub(new DateInterval("P1D"));
277
+ }
278
+ }
279
+
280
+ $dateObject->sub(new DateInterval("P{$this->_postnlDeliveryDelay}D"));
281
+ return $dateObject;
282
+ }
283
+
284
+ /**
285
+ * Returns an UTC DateTime object built from the orderdate.
286
+ *
287
+ * @param mixed $date
288
+ * @param $storeId
289
+ *
290
+ * @return DateTime
291
+ */
292
+ public function getUtcDateTime($date, $storeId)
293
+ {
294
+ /**
295
+ * If the orderDate is not an object. Make an object using the current store timezone
296
+ */
297
+ if (!is_object($date)) {
298
+ $timeZone = $this->getStoreTimeZone($storeId);
299
+ $date = new DateTime($date, new DateTimeZone($timeZone));
300
+ }
301
+
302
+ /**
303
+ * If the orderDate object is not in UTC, change the timezone to UTC.
304
+ */
305
+ if ($date->getTimeZone()->getName() != 'UTC') {
306
+ $date->setTimeZone(new DateTimeZone('UTC'));
307
+ }
308
+
309
+ return $date;
310
+ }
311
+
312
+ /**
313
+ * Calculates if the orderDate is past the configured cutoff time.
314
+ *
315
+ * @param DateTime $orderDateObject
316
+ * @param int $storeId
317
+ *
318
+ * @return boolean
319
+ */
320
+ public function isPastCutOff($orderDateObject, $storeId)
321
+ {
322
+ $weekDay = $orderDateObject->format('N');
323
+
324
+ /**
325
+ * If the weekday == 7, we need to check for sunday cutoff time instead.
326
+ */
327
+ $forSunday = false;
328
+ if ($weekDay == self::ALTERNATIVE_SUNDAY) {
329
+ $forSunday = true;
330
+ }
331
+
332
+ /**
333
+ * Check if the order time is before the cutoff time, disregarding dates.
334
+ */
335
+ $cutoff = $this->getCutOff($storeId, $forSunday);
336
+ $orderTime = $orderDateObject->format("H:i:s");
337
+
338
+ return ($cutoff < $orderTime);
339
+ }
340
+
341
+ /**
342
+ * Gets the cut off time for the given store. When $forSunday is set to true,
343
+ * will return sunday cut off time instead.
344
+ *
345
+ * @param int $storeId
346
+ * @param bool $forSunday
347
+ *
348
+ * @return DateTime
349
+ */
350
+ public function getCutOff($storeId = 0, $forSunday = false)
351
+ {
352
+ /**
353
+ * If $forSunday is set to true, we need to get the sunday cutoff time.
354
+ */
355
+ $xpathToUse = self::XPATH_CUTOFF_TIME;
356
+ if ($forSunday) {
357
+ $xpathToUse = self::XPATH_SUNDAY_CUTOFF_TIME;
358
+ }
359
+ $cutoff = Mage::getStoreConfig($xpathToUse, $storeId);
360
+ $cutoff = new DateTime($cutoff, new DateTimeZone("Europe/Amsterdam"));
361
+ $correctedCutOff = $this->getUtcDateTime($cutoff, $storeId)->format('H:i:s');
362
+ return $correctedCutOff;
363
+ }
364
+
365
+ /**
366
+ * Checks if the found delivery day is valid. If this is not the case, add a day to the deliverydaycorrection,
367
+ * point to the next found day, and repeat this.
368
+ *
369
+ * @param DateTime|int $checkValidDay
370
+ *
371
+ * @return int
372
+ */
373
+ public function getDeliveryDateCorrection($checkValidDay)
374
+ {
375
+ /**
376
+ * If this is not a DateTime object, nor a string, this will get stuck.
377
+ */
378
+ if(!is_object($checkValidDay) && !is_string($checkValidDay)) {
379
+ return 0;
380
+ }
381
+
382
+ if (is_object($checkValidDay)) {
383
+ $checkValidDay = $checkValidDay->format('N');
384
+ }
385
+
386
+ $checkValidDay = (int) $checkValidDay;
387
+
388
+ /**
389
+ * If the checkValidDay is not found in the valid delivery day array, we will not find what we are looking for.
390
+ */
391
+ $validDeliveryDayArray = $this->getValidDeliveryDaysArray();
392
+ if (!array_key_exists($checkValidDay, $validDeliveryDayArray)) {
393
+ return 0;
394
+ }
395
+
396
+ $deliveryDurationCorrection = 0;
397
+ while (!$this->isValidDay($checkValidDay, $validDeliveryDayArray)) {
398
+ $checkValidDay = ($checkValidDay + 1) % 7;
399
+ $deliveryDurationCorrection++;
400
+
401
+ /**
402
+ * If we get stuck in an infinite loop, just return 0.
403
+ */
404
+ if ($deliveryDurationCorrection > 8) {
405
+ return 0;
406
+ }
407
+ }
408
+
409
+ return $deliveryDurationCorrection;
410
+ }
411
+ }
app/code/community/TIG/PostNL/Helper/DeliveryOptions.php CHANGED
@@ -60,20 +60,32 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
60
  * Xpaths to various business rule settings.
61
  */
62
  const XPATH_STOCK_OPTIONS = 'postnl/delivery_options/stock_options';
63
- const XPATH_ALLOW_SUNDAY_SORTING = 'postnl/cif_labels_and_confirming/allow_sunday_sorting';
64
  const XPATH_SHOW_OPTIONS_FOR_BUSPAKJE = 'postnl/delivery_options/show_options_for_buspakje';
65
  const XPATH_SHOW_ALL_OPTIONS_FOR_BUSPAKJE = 'postnl/delivery_options/show_all_options_for_buspakje';
66
  const XPATH_ENABLE_DELIVERY_DAYS_FOR_BUSPAKJE = 'postnl/delivery_options/enable_delivery_days_for_buspakje';
67
  const XPATH_ENABLE_PAKJEGEMAK_FOR_BUSPAKJE = 'postnl/delivery_options/enable_pakjegemak_for_buspakje';
68
  const XPATH_ENABLE_PAKKETAUTOMAAT_FOR_BUSPAKJE = 'postnl/delivery_options/enable_pakketautomaat_for_buspakje';
69
  const XPATH_STATED_ADDRESS_ONLY_OPTION = 'postnl/delivery_options/stated_address_only_option';
 
70
 
71
  /**
72
  * Xpaths to extra fee config settings.
 
 
 
 
 
 
 
 
73
  */
74
- const XPATH_EVENING_TIMEFRAME_FEE = 'postnl/delivery_options/evening_timeframe_fee';
75
- const XPATH_PAKJEGEMAK_EXPRESS_FEE = 'postnl/delivery_options/pakjegemak_express_fee';
76
- const XPATH_ONLY_STATED_ADDRESS_FEE = 'postnl/delivery_options/stated_address_only_fee';
 
 
 
77
 
78
  /**
79
  * Xpath for shipping duration setting.
@@ -105,6 +117,7 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
105
 
106
  /**
107
  * The maximum fee amount allowed for evening and early delivery options.
 
108
  */
109
  const MAX_FEE = 2;
110
 
@@ -117,6 +130,7 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
117
  'PG',
118
  'PGE',
119
  'PA',
 
120
  );
121
 
122
  /**
@@ -234,43 +248,14 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
234
  * @param boolean $convert
235
  *
236
  * @return float
 
 
 
237
  */
238
  public function getEveningFee($formatted = false, $includingTax = true, $convert = true)
239
  {
240
- $registryKey = 'postnl_evening_fee';
241
-
242
- if ($includingTax) {
243
- $registryKey .= '_incl';
244
- }
245
-
246
- if (Mage::registry($registryKey) !== null) {
247
- $price = Mage::registry($registryKey);
248
- } else {
249
- $storeId = Mage::app()->getStore()->getId();
250
-
251
- $eveningFee = (float) Mage::getStoreConfig(self::XPATH_EVENING_TIMEFRAME_FEE, $storeId);
252
-
253
- $price = $this->getPriceWithTax($eveningFee, $includingTax, false, false);
254
-
255
- if ($price > self::MAX_FEE) {
256
- $price = 0;
257
- }
258
-
259
- Mage::register($registryKey, $price);
260
- }
261
-
262
- if ($convert) {
263
- $quote = $this->getQuote();
264
- $store = $quote->getStore();
265
-
266
- $price = $store->convertPrice($price, false, false);
267
- }
268
-
269
- if ($formatted) {
270
- $price = Mage::app()->getStore()->formatPrice($price, false);
271
- }
272
-
273
- return $price;
274
  }
275
 
276
  /**
@@ -281,43 +266,14 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
281
  * @param boolean $convert
282
  *
283
  * @return float
 
 
 
284
  */
285
  public function getExpressFee($formatted = false, $includingTax = true, $convert = true)
286
  {
287
- $registryKey = 'postnl_express_fee';
288
-
289
- if ($includingTax) {
290
- $registryKey .= '_incl';
291
- }
292
-
293
- if (Mage::registry($registryKey) !== null) {
294
- $price = Mage::registry($registryKey);
295
- } else {
296
- $storeId = Mage::app()->getStore()->getId();
297
-
298
- $expressFee = (float) Mage::getStoreConfig(self::XPATH_PAKJEGEMAK_EXPRESS_FEE, $storeId);
299
-
300
- $price = $this->getPriceWithTax($expressFee, $includingTax, false, false);
301
-
302
- if ($price > self::MAX_FEE) {
303
- $price = 0;
304
- }
305
-
306
- Mage::register($registryKey, $price);
307
- }
308
-
309
- if ($convert) {
310
- $quote = $this->getQuote();
311
- $store = $quote->getStore();
312
-
313
- $price = $store->convertPrice($price, false, false);
314
- }
315
-
316
- if ($formatted) {
317
- $price = Mage::app()->getStore()->formatPrice($price, false);
318
- }
319
-
320
- return $price;
321
  }
322
 
323
  /**
@@ -329,56 +285,14 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
329
  * @param boolean $convert
330
  *
331
  * @return float|int
 
 
 
332
  */
333
  public function getPakjeGemakFee($currentRate, $formatted = false, $includingTax = true, $convert = true)
334
  {
335
- $registryKey = 'postnl_pakje_gemak_fee';
336
-
337
- if ($includingTax) {
338
- $registryKey .= '_incl';
339
- }
340
-
341
- /**
342
- * If the current order is not a buspakje order, the fee is 0.
343
- */
344
- if (!$this->isBuspakjeConfigApplicableToQuote()) {
345
- Mage::register($registryKey, 0);
346
-
347
- return 0;
348
- }
349
-
350
- if (Mage::registry($registryKey) !== null) {
351
- $price = Mage::registry($registryKey);
352
- } else {
353
- $pakjeGemakShippingRates = Mage::helper('postnl/carrier')->getParcelShippingRate($this->getQuote());
354
- if (!$pakjeGemakShippingRates) {
355
- return 0;
356
- }
357
-
358
- $pakjeGemakShippingRate = $pakjeGemakShippingRates->getCheapestRate();
359
- /** @noinspection PhpUndefinedMethodInspection */
360
- $pakjeGemakShippingRate = $pakjeGemakShippingRate->getPrice();
361
-
362
- $difference = $pakjeGemakShippingRate - $currentRate;
363
-
364
- $price = $this->getPriceWithTax($difference, $includingTax, false, false);
365
-
366
- Mage::register($registryKey, $price);
367
- }
368
-
369
- if ($convert) {
370
- $quote = $this->getQuote();
371
- $store = $quote->getStore();
372
-
373
- $price = $store->convertPrice($price, false, false);
374
- }
375
-
376
-
377
- if ($formatted) {
378
- $price = Mage::app()->getStore()->formatPrice($price, false);
379
- }
380
-
381
- return $price;
382
  }
383
 
384
  /**
@@ -390,52 +304,14 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
390
  * @param bool $convert
391
  *
392
  * @return float|int
 
 
 
393
  */
394
- public function getOptionsFee(TIG_PostNL_Model_Core_Order $postnlOrder, $formatted = false, $includingTax = true,
395
- $convert = true)
396
  {
397
- if (!$postnlOrder->hasOptions()) {
398
- return 0;
399
- }
400
-
401
- $options = $postnlOrder->getOptions();
402
- if (empty($options)) {
403
- return 0;
404
- }
405
-
406
- $storeId = Mage::app()->getStore()->getId();
407
-
408
- /**
409
- * For upgradability reasons this is a switch, rather than an if statement.
410
- */
411
- $fee = 0;
412
- foreach ($options as $option => $value) {
413
- if (!$value) {
414
- continue;
415
- }
416
-
417
- switch ($option) {
418
- case 'only_stated_address':
419
- $fee += (float) Mage::getStoreConfig(self::XPATH_ONLY_STATED_ADDRESS_FEE, $storeId);
420
- break;
421
- //no default
422
- }
423
- }
424
-
425
- $price = $this->getPriceWithTax($fee, $includingTax, false, false);
426
-
427
- if ($convert) {
428
- $quote = $this->getQuote();
429
- $store = $quote->getStore();
430
-
431
- $price = $store->convertPrice($price, false, false);
432
- }
433
-
434
- if ($formatted) {
435
- $price = Mage::app()->getStore()->formatPrice($price, false);
436
- }
437
-
438
- return $price;
439
  }
440
 
441
  /**
@@ -447,40 +323,14 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
447
  * @param bool $convert
448
  *
449
  * @return float|int
 
 
 
450
  */
451
  public function getOptionFee($option, $formatted = false, $includingTax = true, $convert = true)
452
  {
453
- $storeId = Mage::app()->getStore()->getId();
454
-
455
- /**
456
- * For upgradability reasons this is a switch, rather than an if statement.
457
- */
458
- $fee = 0;
459
- switch ($option) {
460
- case 'only_stated_address':
461
- $fee = (float) Mage::getStoreConfig(self::XPATH_ONLY_STATED_ADDRESS_FEE, $storeId);
462
- break;
463
- //no default
464
- }
465
-
466
- $price = $this->getPriceWithTax($fee, $includingTax, false, false);
467
-
468
- if ($price > 2) {
469
- $price = 0;
470
- }
471
-
472
- if ($convert) {
473
- $quote = $this->getQuote();
474
- $store = $quote->getStore();
475
-
476
- $price = $store->convertPrice($price, false, false);
477
- }
478
-
479
- if ($formatted) {
480
- $price = Mage::app()->getStore()->formatPrice($price, false);
481
- }
482
-
483
- return $price;
484
  }
485
 
486
  /**
@@ -754,408 +604,31 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
754
  }
755
 
756
  /**
757
- * Check whether the specified order date is past the configured cut-off time.
758
- *
759
- * @param string|DateTime|null $orderDate
760
- * @param null|int $storeId
761
- *
762
- * @return bool
763
- */
764
- public function isPastCutOffTime($orderDate = null, $storeId = null)
765
- {
766
- $utcTimeZone = new DateTimeZone('UTC');
767
-
768
- if (!$orderDate) {
769
- $orderDate = new DateTime(Mage::getSingleton('core/date')->gmtDate('Y-m-d H:i:s'), $utcTimeZone);
770
- }
771
-
772
- if (is_string($orderDate)) {
773
- $orderDate = new DateTime($orderDate, $utcTimeZone);
774
- }
775
-
776
- if ($storeId === null) {
777
- $storeId = Mage::app()->getStore()->getId();
778
- }
779
-
780
- /**
781
- * Get the cut off time.
782
- */
783
- $cutOffTime = explode(':', $this->getCutOffTime($storeId, true, $orderDate));
784
-
785
- /**
786
- * Create a DateTime object for the order date with the cut off time for comparison.
787
- */
788
- $europeBerlinTimeZone = new DateTimeZone('Europe/Berlin');
789
-
790
- /**
791
- * @todo refactor so we don't have to use 'format()' to modify a date.
792
- */
793
- $cutOffDate = new DateTime('now', $europeBerlinTimeZone);
794
- $cutOffDate->setDate($orderDate->format('Y'), $orderDate->format('m'), $orderDate->format('d'))
795
- ->setTime((int) $cutOffTime[0], (int) $cutOffTime[1], (int) $cutOffTime[2])
796
- ->setTimezone($utcTimeZone);
797
-
798
- /**
799
- * Convert the order date to UTC.
800
- */
801
- $orderDate->setTimezone($utcTimeZone);
802
-
803
- /**
804
- * Check if the current time (as His) is greater than the cut-off time.
805
- */
806
- if ($orderDate > $cutOffDate) {
807
- return true;
808
- }
809
-
810
- return false;
811
- }
812
-
813
- /**
814
- * Get the cut off time for the specified store ID.
815
  *
816
- * If $checkForSunday is true, the sunday cut-off time will be checked if the order date is on a sunday. This is
817
- * only done if sunday sorting is enabled.
818
  *
819
- * @param null|int $storeId
820
- * @param bool $checkForSunday
821
- * @param string|DateTime|null $orderDate
822
  *
823
- * @return mixed
824
  */
825
- public function getCutOffTime($storeId = null, $checkForSunday = true, $orderDate = null)
826
- {
827
- if ($checkForSunday && !$orderDate) {
828
- $orderDate = new DateTime(Mage::getSingleton('core/date')->gmtDate('Y-m-d H:i:s'), new DateTimeZone('UTC'));
829
- }
830
-
831
- if ($storeId === null) {
832
- $storeId = Mage::app()->getStore()->getId();
833
- }
834
 
835
- if (is_string($orderDate)) {
836
- $orderDate = new DateTime($orderDate, new DateTimeZone('UTC'));
837
- }
838
 
839
- /**
840
- * Get the cut-off time. This is formatted as H:i:s.
841
- */
842
- if ($checkForSunday
843
- && $orderDate->format('N') == 7
844
- && $this->canUseSundaySorting()
845
- ) {
846
- $cutOffTime = Mage::getStoreConfig(self::XPATH_SUNDAY_CUTOFF_TIME, $storeId);
847
- if (empty($cutOffTime)) {
848
- $cutOffTime = Mage::getStoreConfig(self::XPATH_CUTOFF_TIME, $storeId);
849
  }
850
- } else {
851
- $cutOffTime = Mage::getStoreConfig(self::XPATH_CUTOFF_TIME, $storeId);
852
  }
853
 
854
- return $cutOffTime;
855
- }
856
-
857
- /**
858
- * Get the delivery date for a specified order date.
859
- *
860
- * @param null|string $orderDate
861
- * @param null|int $storeId
862
- * @param boolean $asDays
863
- * @param boolean $asDateTime
864
- * @param boolean $withTime
865
- * @param int|boolean $shippingDuration
866
- * @param boolean $orderDateInUtc
867
- *
868
- * @return string|int|DateTime
869
- */
870
- public function getDeliveryDate($orderDate = null, $storeId = null, $asDays = false, $asDateTime = false,
871
- $withTime = true, $shippingDuration = false, $orderDateInUtc = false
872
- ) {
873
- if (!$orderDate) {
874
- $orderDate = new DateTime(
875
- Mage::getSingleton('core/date')->date('Y-m-d H:i:s'),
876
- $this->getStoreTimeZone($storeId, true)
877
- );
878
- }
879
-
880
- if ($storeId === null) {
881
- $storeId = Mage::app()->getStore()->getId();
882
- }
883
-
884
- if (is_string($orderDate)) {
885
- if (false === $orderDateInUtc) {
886
- $orderDate = new DateTime($orderDate, $this->getStoreTimeZone($storeId, true));
887
- } else {
888
- $utcTimezone = new DateTimeZone('UTC');
889
- $orderDate = new DateTime($orderDate, $utcTimezone);
890
- }
891
- }
892
-
893
- if (false === $shippingDuration) {
894
- /**
895
- * Get the base shipping duration for this order.
896
- */
897
- $shippingDuration = Mage::getStoreConfig(self::XPATH_SHIPPING_DURATION, $storeId);
898
- }
899
-
900
- $deliveryTime = clone $orderDate;
901
- $deliveryTime->add(new DateInterval("P{$shippingDuration}D"));
902
-
903
- /**
904
- * Check if the order time is greater than the cut-off time. We need to take yesterday as the requested date as
905
- * the cut-off time is based on the confirm date and not the delivery date.
906
- */
907
- if ($this->isPastCutOffTime($orderDate, $storeId)) {
908
- $deliveryTime->add(new DateInterval('P1D'));
909
- $shippingDuration++;
910
- }
911
-
912
- /**
913
- * Get the delivery day (1-7).
914
- */
915
- $deliveryDay = $deliveryTime->format('N');
916
-
917
- /**
918
- * Delivery on sunday is not possible.
919
- */
920
- if ($deliveryDay == 7) {
921
- $deliveryDay = 1;
922
- $deliveryTime->add(new DateInterval('P1D'));
923
- $shippingDuration++;
924
- }
925
-
926
- /**
927
- * If the delivery day is a monday, we need to make sure that sunday sorting is allowed. Otherwise delivery on a
928
- * monday is not possible.
929
- */
930
- if ($deliveryDay == 1 && !$this->canUseSundaySorting()) {
931
- $deliveryTime->add(new DateInterval('P1D'));
932
- $shippingDuration++;
933
- }
934
-
935
- if ($asDays) {
936
- return $shippingDuration;
937
- }
938
-
939
- if ($asDateTime) {
940
- if (!$withTime) {
941
- $deliveryTime->setTime(0, 0, 0);
942
- }
943
- return $deliveryTime;
944
- }
945
-
946
- $deliveryDate = $deliveryTime->format('Y-m-d');
947
- return $deliveryDate;
948
- }
949
-
950
- /**
951
- * Check if a given delivery date is available by checking the configured shipping dates.
952
- *
953
- * @param string|DateTime $deliveryDate
954
- *
955
- * @return DateTime
956
- */
957
- public function getValidDeliveryDate($deliveryDate)
958
- {
959
- if (is_string($deliveryDate)) {
960
- $deliveryDate = new DateTime($deliveryDate, new DateTimeZone('Europe/Berlin'));
961
- }
962
-
963
- if (!($deliveryDate instanceof DateTime)) {
964
- throw new InvalidArgumentException('Date parameter must be a valid date string or DateTime object.');
965
- }
966
-
967
- $deliveryDay = $deliveryDate->format('N');
968
-
969
- /**
970
- * Sunday is never allowed as a delivery day.
971
- */
972
- if ($deliveryDay == 7) {
973
- $deliveryDate->add(new DateInterval('P1D'));
974
- $deliveryDay = 1;
975
- }
976
-
977
- /**
978
- * Get the configured shipping days.
979
- */
980
- $shippingDays = Mage::getStoreConfig(self::XPATH_SHIPPING_DAYS, Mage::app()->getStore()->getId());
981
- $shippingDays = explode(',', $shippingDays);
982
-
983
- $shippingDate = clone $deliveryDate;
984
- $shippingDay = (int) $shippingDate->sub(new DateInterval('P1D'))->format('N');
985
-
986
- /**
987
- * If the shipping day is allowed, return the date.
988
- */
989
- if (in_array($shippingDay, $shippingDays)) {
990
- return $deliveryDate;
991
- }
992
-
993
- /**
994
- * If sunday sorting is available, shipping on saturday will result in a monday delivery. it will arrive on
995
- * tuesday otherwise.
996
- */
997
- if ($this->canUseSundaySorting()) {
998
- $saturdayShippingDeliveryDay = 1;
999
- } else {
1000
- $saturdayShippingDeliveryDay = 2;
1001
- }
1002
-
1003
- /**
1004
- * If the delivery day is a tuesday, saturday is a valid shipping day and the first possible delivery day is the
1005
- * date specified or before then, the specified date is allowed. If sunday sorting is available, this applies to
1006
- * monday delivery, rather than tuesday.
1007
- *
1008
- * If we have configured that we do not ship on mondays, the following will take place:
1009
- * - If the order on friday or before, we can ship on saturday and it will be delivered on tuesday.
1010
- * - If we order on saturday and it is before the cut-off time, we can ship on saturday and it will be delivered
1011
- * on tuesday.
1012
- * - If we order on sunday or monday, we can only ship it the next saturday and it will be delivered on tuesday
1013
- * the week after.
1014
- */
1015
- if ($deliveryDay == $saturdayShippingDeliveryDay
1016
- && in_array(6, $shippingDays)
1017
- && $this->getDeliveryDate(null, null, false, true, false) <= $deliveryDate
1018
- ) {
1019
- return $deliveryDate;
1020
- }
1021
-
1022
- $dayArr = array(
1023
- 1 => 'monday',
1024
- 2 => 'tuesday',
1025
- 3 => 'wednesday',
1026
- 4 => 'thursday',
1027
- 5 => 'friday',
1028
- 6 => 'saturday',
1029
- 7 => 'sunday',
1030
- );
1031
-
1032
- /**
1033
- * If a higher day is available, use that. I.e. the requested date is on a thursday and only friday is
1034
- * available.
1035
- */
1036
- natsort($shippingDays);
1037
- foreach ($shippingDays as $availableShippingDay) {
1038
- /**
1039
- * Skip all shipping days that are earlier than the desired shipping day.
1040
- */
1041
- if ($availableShippingDay < $shippingDay) {
1042
- continue;
1043
- }
1044
-
1045
- /**
1046
- * The delivery day is always the day after the shipping day.
1047
- */
1048
- $availableDeliveryDay = $availableShippingDay + 1;
1049
-
1050
- /**
1051
- * Sunday is not available as a delivery day. If sunday sorting is not allowed, monday is not allowed
1052
- * either.
1053
- */
1054
- if ($this->canUseSundaySorting()
1055
- && ($availableDeliveryDay < 1
1056
- || $availableDeliveryDay > 6
1057
- )
1058
- ) {
1059
- $availableDeliveryDay = 1;
1060
- } elseif ($availableDeliveryDay < 2 || $availableDeliveryDay > 6) {
1061
- $availableDeliveryDay = 2;
1062
- }
1063
-
1064
- /**
1065
- * Convert the delivery day of the week to the actual date.
1066
- */
1067
- $availableDeliveryDate = $deliveryDate->modify(
1068
- "next {$dayArr[$availableDeliveryDay]} {$deliveryDate->format('H:i:s')}"
1069
- );
1070
- return $availableDeliveryDate;
1071
- }
1072
-
1073
- /**
1074
- * If no higher value was available, get the first possible shipping day next week.
1075
- *
1076
- * Sort the array and get the first element.
1077
- */
1078
- $availableDeliveryDay = $shippingDays[0] + 1;
1079
-
1080
- /**
1081
- * Sunday is not available as a delivery day. If sunday sorting is not allowed, monday is not allowed either.
1082
- */
1083
- if ($this->canUseSundaySorting()
1084
- && ($availableDeliveryDay < 1
1085
- || $availableDeliveryDay > 6
1086
- )
1087
- ) {
1088
- $availableDeliveryDay = 1;
1089
- } elseif ($availableDeliveryDay < 2 || $availableDeliveryDay > 6) {
1090
- $availableDeliveryDay = 2;
1091
- }
1092
-
1093
- /**
1094
- * Convert the delivery day of the week to the actual date.
1095
- */
1096
- $availableDeliveryDate = $deliveryDate->modify(
1097
- "next {$dayArr[$availableDeliveryDay]} {$deliveryDate->format('H:i:s')}"
1098
- );
1099
- return $availableDeliveryDate;
1100
- }
1101
-
1102
- /**
1103
- * Check if a given confirm date is valid and modify it if not.
1104
- *
1105
- * Currently this method only checks if the confirm date is a monday. If so it may need to be modified to a
1106
- * saturday.
1107
- *
1108
- * @param string|DateTime $date
1109
- * @param string|boolean $timeZone
1110
- *
1111
- * @return DateTime
1112
- */
1113
- public function getValidConfirmDate($date, $timeZone = false)
1114
- {
1115
- if (!is_string($timeZone)) {
1116
- $timeZone = 'UTC';
1117
- }
1118
- $timeZone = new DateTimeZone($timeZone);
1119
-
1120
- if (is_string($date)) {
1121
- $date = new DateTime($date, $timeZone);
1122
- }
1123
-
1124
- /**
1125
- * Convert the date to PostNL's time zone.
1126
- */
1127
- $date->setTimezone(new DateTimeZone('Europe/Berlin'));
1128
-
1129
- if (!($date instanceof DateTime)) {
1130
- throw new InvalidArgumentException('Date parameter must be a valid date string or DateTime object.');
1131
- }
1132
-
1133
- /**
1134
- * Get the configured shipping days.
1135
- */
1136
- $shippingDays = Mage::getStoreConfig(self::XPATH_SHIPPING_DAYS, Mage::app()->getStore()->getId());
1137
- $shippingDays = explode(',', $shippingDays);
1138
- $shippingDate = clone $date;
1139
-
1140
- /**
1141
- * Get the current shipping day of the week (1 through 7).
1142
- */
1143
- $shippingDay = (int) $shippingDate->format('N');
1144
-
1145
- /**
1146
- * Check if the shipping day is a monday. If so, check if monday is allowed. If not, modify it to the previous
1147
- * saturday if saturdays are allowed.
1148
- */
1149
- if (!in_array($shippingDay, $shippingDays)
1150
- && $shippingDay == 1
1151
- && in_array(6, $shippingDays)
1152
- ) {
1153
- $date->modify('last saturday ' . $date->format('H:i:s'));
1154
- }
1155
-
1156
- $date->setTimezone($timeZone);
1157
-
1158
- return $date;
1159
  }
1160
 
1161
  /**
@@ -1297,15 +770,22 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
1297
  /**
1298
  * Gets the shipping duration for the specified order.
1299
  *
1300
- * @param Mage_Sales_Model_Order $order
1301
  *
1302
  * @return int|false
1303
  *
1304
  * @throws TIG_PostNL_Exception
1305
  */
1306
- public function getOrderShippingDuration(Mage_Sales_Model_Order $order)
1307
  {
1308
- $storeId = $order->getStoreId();
 
 
 
 
 
 
 
1309
 
1310
  /**
1311
  * Get the default config duration.
@@ -1318,7 +798,7 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
1318
  * @var Mage_Sales_Model_Resource_Order_Item_Collection $items
1319
  * @var Mage_Sales_Model_Order_Item $item
1320
  */
1321
- $items = $order->getItemsCollection(array(), true);
1322
  $productIds = $items->getColumnValues('product_id');
1323
 
1324
  return $this->_getShippingDuration($configDuration, $productIds, $storeId);
@@ -1447,20 +927,13 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
1447
  *
1448
  * @return float
1449
  *
1450
- * @see Mage_Checkout_Block_Onepage_Shipping_Method_Available::getShippingPrice()
 
1451
  */
1452
  public function getPriceWithTax($price, $includingTax, $formatted = false, $convert = true)
1453
  {
1454
- $quote = $this->getQuote();
1455
- $store = $quote->getStore();
1456
-
1457
- $shippingPrice = Mage::helper('tax')->getShippingPrice($price, $includingTax, $quote->getShippingAddress());
1458
-
1459
- if ($convert) {
1460
- $shippingPrice = $store->convertPrice($shippingPrice, $formatted, false);
1461
- }
1462
-
1463
- return $shippingPrice;
1464
  }
1465
 
1466
  /**
@@ -1684,11 +1157,15 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
1684
  */
1685
  $quoteItems = $quote->getAllItems();
1686
  foreach ($quoteItems as $item) {
1687
- $poLocationsAllowed = Mage::getResourceSingleton('postnl/catalog_product')->getAttributeRawValue(
1688
- $item->getProductId(),
1689
- 'postnl_allow_pakje_gemak',
1690
- $item->getStoreId()
1691
- );
 
 
 
 
1692
 
1693
  if (!is_null($poLocationsAllowed) && !$poLocationsAllowed) {
1694
  Mage::register($registryKey, false);
@@ -1717,10 +1194,18 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
1717
  return false;
1718
  }
1719
 
 
 
 
 
 
 
 
 
1720
  /**
1721
  * The parent canUsePakjeGemak() method will check if any PakjeGemak product options are available.
1722
  */
1723
- $allowed = parent::canUsePakjeGemak($storeId);
1724
 
1725
  return $allowed;
1726
  }
@@ -1920,11 +1405,15 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
1920
  */
1921
  $quoteItems = $quote->getAllItems();
1922
  foreach ($quoteItems as $item) {
1923
- $pakketautomaatAllowed = Mage::getResourceSingleton('postnl/catalog_product')->getAttributeRawValue(
1924
- $item->getProductId(),
1925
- 'postnl_allow_pakketautomaat',
1926
- $item->getStoreId()
1927
- );
 
 
 
 
1928
 
1929
  if (!is_null($pakketautomaatAllowed) && !$pakketautomaatAllowed) {
1930
  Mage::register($registryKey, false);
@@ -1950,6 +1439,14 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
1950
  return false;
1951
  }
1952
 
 
 
 
 
 
 
 
 
1953
  /**
1954
  * Check if any pakketautomaat product options are available.
1955
  */
@@ -2015,9 +1512,13 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
2015
  return $allowed;
2016
  }
2017
 
2018
- $storeId = Mage::app()->getStore()->getId();
 
 
 
2019
 
2020
- $allowed = Mage::getStoreConfigFlag(self::XPATH_ENABLE_DELIVERY_DAYS, $storeId);
 
2021
 
2022
  if ($cache) {
2023
  /**
@@ -2072,11 +1573,19 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
2072
  */
2073
  $quoteItems = $quote->getAllItems();
2074
  foreach ($quoteItems as $item) {
2075
- $deliveryDaysAllowed = Mage::getResourceSingleton('postnl/catalog_product')->getAttributeRawValue(
2076
- $item->getProductId(),
2077
- 'postnl_allow_delivery_days',
2078
- $item->getStoreId()
2079
- );
 
 
 
 
 
 
 
 
2080
 
2081
  if (!is_null($deliveryDaysAllowed) && !$deliveryDaysAllowed) {
2082
  Mage::register($registryKey, false);
@@ -2203,11 +1712,20 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
2203
  */
2204
  $quoteItems = $quote->getAllItems();
2205
  foreach ($quoteItems as $item) {
2206
- $timeframesAllowed = Mage::getResourceSingleton('postnl/catalog_product')->getAttributeRawValue(
2207
- $item->getProductId(),
2208
- 'postnl_allow_timeframes',
2209
- $item->getStoreId()
2210
- );
 
 
 
 
 
 
 
 
 
2211
 
2212
  if (!is_null($timeframesAllowed) && !$timeframesAllowed) {
2213
  Mage::register($registryKey, false);
@@ -2315,7 +1833,11 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
2315
 
2316
  $storeId = Mage::app()->getStore()->getId();
2317
 
2318
- $allowed = Mage::getStoreConfigFlag(self::XPATH_ALLOW_SUNDAY_SORTING, $storeId);
 
 
 
 
2319
 
2320
  if ($cache) {
2321
  /**
@@ -2356,8 +1878,26 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
2356
  Mage::unregister($registryKey);
2357
  Mage::unregister('postnl_delivery_options_can_use_delivery_options_errors');
2358
 
 
 
 
 
 
 
 
 
2359
  $deliveryOptionsEnabled = $this->isDeliveryOptionsEnabled();
2360
  if (!$deliveryOptionsEnabled) {
 
 
 
 
 
 
 
 
 
 
2361
  Mage::register($registryKey, false);
2362
  return false;
2363
  }
@@ -2418,20 +1958,6 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
2418
  return false;
2419
  }
2420
 
2421
- /**
2422
- * Check if the quote has a valid minimum amount
2423
- */
2424
- if (!$quote->validateMinimumAmount()) {
2425
- $errors = array(
2426
- array(
2427
- 'code' => 'POSTNL-0105',
2428
- 'message' => $this->__("The quote's grand total is below the minimum amount required."),
2429
- )
2430
- );
2431
- Mage::register('postnl_delivery_options_can_use_delivery_options_errors', $errors);
2432
- return false;
2433
- }
2434
-
2435
  /**
2436
  * Check if the current quote is a letter box parcel order and if so, if delivery options are allowed for letter
2437
  * box parcel orders.
@@ -2473,11 +1999,37 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
2473
  */
2474
  foreach ($quote->getAllVisibleItems() as $item) {
2475
  $productId = $item->getProductId();
2476
- $allowDeliveryOptions = Mage::getResourceSingleton('postnl/catalog_product')->getAttributeRawValue(
2477
- $productId,
2478
- 'postnl_allow_delivery_options',
2479
- $item->getStoreId()
2480
- );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2481
 
2482
  if (!is_null($allowDeliveryOptions) && !$allowDeliveryOptions) {
2483
  $errors = array(
@@ -2552,9 +2104,19 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
2552
  return true;
2553
  }
2554
 
2555
- /** @var Mage_Sales_Model_Quote_Item[] $quoteItems */
2556
- $quoteItems = $quote->getItemsCollection();
2557
  foreach ($quoteItems as $item) {
 
 
 
 
 
 
 
 
 
 
2558
  $product = $item->getProduct();
2559
 
2560
  /** @var Mage_CatalogInventory_Model_Stock_item $stockItem */
@@ -2672,8 +2234,13 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
2672
 
2673
  /**
2674
  * Delivery options are only available when shipping to the Netherlands.
 
 
 
 
 
2675
  */
2676
- if ($shippingAddress->getCountry() != 'NL') {
2677
  Mage::register($registryKey, false);
2678
  return false;
2679
  }
@@ -3257,4 +2824,35 @@ class TIG_PostNL_Helper_DeliveryOptions extends TIG_PostNL_Helper_Checkout
3257
 
3258
  return true;
3259
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3260
  }
60
  * Xpaths to various business rule settings.
61
  */
62
  const XPATH_STOCK_OPTIONS = 'postnl/delivery_options/stock_options';
63
+ const XPATH_ALLOW_SUNDAY_SORTING = 'postnl/delivery_options/allow_sunday_sorting';
64
  const XPATH_SHOW_OPTIONS_FOR_BUSPAKJE = 'postnl/delivery_options/show_options_for_buspakje';
65
  const XPATH_SHOW_ALL_OPTIONS_FOR_BUSPAKJE = 'postnl/delivery_options/show_all_options_for_buspakje';
66
  const XPATH_ENABLE_DELIVERY_DAYS_FOR_BUSPAKJE = 'postnl/delivery_options/enable_delivery_days_for_buspakje';
67
  const XPATH_ENABLE_PAKJEGEMAK_FOR_BUSPAKJE = 'postnl/delivery_options/enable_pakjegemak_for_buspakje';
68
  const XPATH_ENABLE_PAKKETAUTOMAAT_FOR_BUSPAKJE = 'postnl/delivery_options/enable_pakketautomaat_for_buspakje';
69
  const XPATH_STATED_ADDRESS_ONLY_OPTION = 'postnl/delivery_options/stated_address_only_option';
70
+ const XPATH_ENABLE_SUNDAY_DELIVERY = 'postnl/delivery_options/enable_sunday_delivery';
71
 
72
  /**
73
  * Xpaths to extra fee config settings.
74
+ *
75
+ * @deprecated deprecated since version 1.7.0
76
+ * @see TIG_PostNL_Helper_DeliveryOptions_Fee
77
+ */
78
+ const XPATH_EVENING_TIMEFRAME_FEE = TIG_PostNL_Helper_DeliveryOptions_Fee::XPATH_EVENING_TIMEFRAME_FEE;
79
+ /**
80
+ * @deprecated deprecated since version 1.7.0
81
+ * @see TIG_PostNL_Helper_DeliveryOptions_Fee
82
  */
83
+ const XPATH_PAKJEGEMAK_EXPRESS_FEE = TIG_PostNL_Helper_DeliveryOptions_Fee::XPATH_PAKJEGEMAK_EXPRESS_FEE;
84
+ /**
85
+ * @deprecated deprecated since version 1.7.0
86
+ * @see TIG_PostNL_Helper_DeliveryOptions_Fee
87
+ */
88
+ const XPATH_ONLY_STATED_ADDRESS_FEE = TIG_PostNL_Helper_DeliveryOptions_Fee::XPATH_ONLY_STATED_ADDRESS_FEE;
89
 
90
  /**
91
  * Xpath for shipping duration setting.
117
 
118
  /**
119
  * The maximum fee amount allowed for evening and early delivery options.
120
+ * @deprecated deprecated since version 1.7.0
121
  */
122
  const MAX_FEE = 2;
123
 
130
  'PG',
131
  'PGE',
132
  'PA',
133
+ 'Sunday'
134
  );
135
 
136
  /**
248
  * @param boolean $convert
249
  *
250
  * @return float
251
+ *
252
+ * @deprecated deprecated since version 1.7.0
253
+ * @see TIG_PostNL_Helper_DeliveryOptions_Fee
254
  */
255
  public function getEveningFee($formatted = false, $includingTax = true, $convert = true)
256
  {
257
+ trigger_error('This method is deprecated and may be removed in the future.', E_USER_NOTICE);
258
+ return Mage::helper('postnl/deliveryOptions_fee')->getEveningFee($formatted, $includingTax, $convert);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
259
  }
260
 
261
  /**
266
  * @param boolean $convert
267
  *
268
  * @return float
269
+ *
270
+ * @deprecated deprecated since version 1.7.0
271
+ * @see TIG_PostNL_Helper_DeliveryOptions_Fee
272
  */
273
  public function getExpressFee($formatted = false, $includingTax = true, $convert = true)
274
  {
275
+ trigger_error('This method is deprecated and may be removed in the future.', E_USER_NOTICE);
276
+ return Mage::helper('postnl/deliveryOptions_fee')->getExpressFee($formatted, $includingTax, $convert);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
277
  }
278
 
279
  /**
285
  * @param boolean $convert
286
  *
287
  * @return float|int
288
+ *
289
+ * @deprecated deprecated since version 1.7.0
290
+ * @see TIG_PostNL_Helper_DeliveryOptions_Fee
291
  */
292
  public function getPakjeGemakFee($currentRate, $formatted = false, $includingTax = true, $convert = true)
293
  {
294
+ trigger_error('This method is deprecated and may be removed in the future.', E_USER_NOTICE);
295
+ return Mage::helper('postnl/deliveryOptions_fee')->getPakjeGemakFee($currentRate, $formatted, $includingTax, $convert);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
296
  }
297
 
298
  /**
304
  * @param bool $convert
305
  *
306
  * @return float|int
307
+ *
308
+ * @deprecated deprecated since version 1.7.0
309
+ * @see TIG_PostNL_Helper_DeliveryOptions_Fee
310
  */
311
+ public function getOptionsFee(TIG_PostNL_Model_Core_Order $postnlOrder, $formatted = false, $includingTax = true, $convert = true)
 
312
  {
313
+ trigger_error('This method is deprecated and may be removed in the future.', E_USER_NOTICE);
314
+ return Mage::helper('postnl/deliveryOptions_fee')->getOptionsFee($postnlOrder, $formatted, $includingTax, $convert);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
315
  }
316
 
317
  /**
323
  * @param bool $convert
324
  *
325
  * @return float|int
326
+ *
327
+ * @deprecated deprecated since version 1.7.0
328
+ * @see TIG_PostNL_Helper_DeliveryOptions_Fee
329
  */
330
  public function getOptionFee($option, $formatted = false, $includingTax = true, $convert = true)
331
  {
332
+ trigger_error('This method is deprecated and may be removed in the future.', E_USER_NOTICE);
333
+ return Mage::helper('postnl/deliveryOptions_fee')->getOptionFee($option, $formatted, $includingTax, $convert);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
334
  }
335
 
336
  /**
604
  }
605
 
606
  /**
607
+ * Filters the given timeFrames, only returning the valid ones.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
608
  *
609
+ * $helper TIG_PostNL_Helper_Date
 
610
  *
611
+ * @param $storeId
612
+ * @param StdClass[] $timeframes
 
613
  *
614
+ * @return StdClass[]|false
615
  */
616
+ public function filterTimeFrames($timeframes, $storeId) {
617
+ /** @var TIG_PostNL_Helper_Date $helper */
618
+ $helper = Mage::helper('postnl/date');
 
 
 
 
 
 
619
 
620
+ $deliveryDateArray = $helper->getValidDeliveryDaysArray($storeId);
 
 
621
 
622
+ foreach($timeframes as $key => $timeFrame) {
623
+ $timeFrameDate = new DateTime($timeFrame->Date, new DateTimeZone('UTC'));
624
+ $timeFrameDay = $timeFrameDate->format('N');
625
+ $correctedTimeFrameDay = $timeFrameDay % 7;
626
+ if ($deliveryDateArray[$correctedTimeFrameDay] == 0) {
627
+ unset($timeframes[$key]);
 
 
 
 
628
  }
 
 
629
  }
630
 
631
+ return array_values($timeframes);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
632
  }
633
 
634
  /**
770
  /**
771
  * Gets the shipping duration for the specified order.
772
  *
773
+ * @param Mage_Sales_Model_Order|Mage_Sales_Model_Order_Shipment $entity
774
  *
775
  * @return int|false
776
  *
777
  * @throws TIG_PostNL_Exception
778
  */
779
+ public function getOrderShippingDuration($entity)
780
  {
781
+ if (!($entity instanceof Mage_Sales_Model_Order_Shipment || $entity instanceof Mage_Sales_Model_Order)) {
782
+ throw new TIG_PostNL_Exception(
783
+ $this->__('Parameter 1 needs to be an instance of Mage_Sales_Model_Order_Shipment or
784
+ Mage_Sales_Model_Order, ' . get_class($entity) . ' was given')
785
+ );
786
+ }
787
+
788
+ $storeId = $entity->getStoreId();
789
 
790
  /**
791
  * Get the default config duration.
798
  * @var Mage_Sales_Model_Resource_Order_Item_Collection $items
799
  * @var Mage_Sales_Model_Order_Item $item
800
  */
801
+ $items = $entity->getItemsCollection(array(), true);
802
  $productIds = $items->getColumnValues('product_id');
803
 
804
  return $this->_getShippingDuration($configDuration, $productIds, $storeId);
927
  *
928
  * @return float
929
  *
930
+ * @deprecated deprecated since version 1.7.0
931
+ * @see TIG_PostNL_Helper_DeliveryOptions_Fee
932
  */
933
  public function getPriceWithTax($price, $includingTax, $formatted = false, $convert = true)
934
  {
935
+ trigger_error('This method is deprecated and may be removed in the future.', E_USER_NOTICE);
936
+ return Mage::helper('postnl/deliveryOptions_fee')->getPriceWithTax($price, $includingTax, $formatted, $convert);
 
 
 
 
 
 
 
 
937
  }
938
 
939
  /**
1157
  */
1158
  $quoteItems = $quote->getAllItems();
1159
  foreach ($quoteItems as $item) {
1160
+ if ($item->getProductType() == Mage_Catalog_Model_Product_Type::TYPE_BUNDLE) {
1161
+ $poLocationsAllowed = $this->bundleCheckAllowedForSimpleProducts($item, 'postnl_allow_pakje_gemak');
1162
+ } else {
1163
+ $poLocationsAllowed = Mage::getResourceSingleton('postnl/catalog_product')->getAttributeRawValue(
1164
+ $item->getProductId(),
1165
+ 'postnl_allow_pakje_gemak',
1166
+ $item->getStoreId()
1167
+ );
1168
+ }
1169
 
1170
  if (!is_null($poLocationsAllowed) && !$poLocationsAllowed) {
1171
  Mage::register($registryKey, false);
1194
  return false;
1195
  }
1196
 
1197
+ /**
1198
+ * PakjeGemak is only available when sending from the Netherlands.
1199
+ */
1200
+ $senderCountry = Mage::getStoreConfig(self::XPATH_SENDER_COUNTRY, Mage_Core_Model_App::ADMIN_STORE_ID);
1201
+ if ($senderCountry != 'NL') {
1202
+ return false;
1203
+ }
1204
+
1205
  /**
1206
  * The parent canUsePakjeGemak() method will check if any PakjeGemak product options are available.
1207
  */
1208
+ $allowed = parent::canUsePakjeGemak();
1209
 
1210
  return $allowed;
1211
  }
1405
  */
1406
  $quoteItems = $quote->getAllItems();
1407
  foreach ($quoteItems as $item) {
1408
+ if ($item->getProductType() == Mage_Catalog_Model_Product_Type::TYPE_BUNDLE) {
1409
+ $pakketautomaatAllowed = $this->bundleCheckAllowedForSimpleProducts($item, 'postnl_allow_pakketautomaat');
1410
+ } else {
1411
+ $pakketautomaatAllowed = Mage::getResourceSingleton('postnl/catalog_product')->getAttributeRawValue(
1412
+ $item->getProductId(),
1413
+ 'postnl_allow_pakketautomaat',
1414
+ $item->getStoreId()
1415
+ );
1416
+ }
1417
 
1418
  if (!is_null($pakketautomaatAllowed) && !$pakketautomaatAllowed) {
1419
  Mage::register($registryKey, false);
1439
  return false;
1440
  }
1441
 
1442
+ /**
1443
+ * Pakketautomaat is only available when sending from the Netherlands.
1444
+ */
1445
+ $senderCountry = Mage::getStoreConfig(self::XPATH_SENDER_COUNTRY, Mage_Core_Model_App::ADMIN_STORE_ID);
1446
+ if ($senderCountry != 'NL') {
1447
+ return false;
1448
+ }
1449
+
1450
  /**
1451
  * Check if any pakketautomaat product options are available.
1452
  */
1512
  return $allowed;
1513
  }
1514
 
1515
+ if ($this->getDomesticCountry() != 'NL') {
1516
+ $allowed = false;
1517
+ } else {
1518
+ $storeId = Mage::app()->getStore()->getId();
1519
 
1520
+ $allowed = Mage::getStoreConfigFlag(self::XPATH_ENABLE_DELIVERY_DAYS, $storeId);
1521
+ }
1522
 
1523
  if ($cache) {
1524
  /**
1573
  */
1574
  $quoteItems = $quote->getAllItems();
1575
  foreach ($quoteItems as $item) {
1576
+ /**
1577
+ * If the product is a bundled product, check if the delivey options are allowed for all underlying
1578
+ * simple products. Else just check the given product, since this will point correctly to the simple product.
1579
+ */
1580
+ if ($item->getProductType() == Mage_Catalog_Model_Product_Type::TYPE_BUNDLE) {
1581
+ $deliveryDaysAllowed = $this->bundleCheckAllowedForSimpleProducts($item, 'postnl_allow_delivery_days');
1582
+ } else {
1583
+ $deliveryDaysAllowed = Mage::getResourceSingleton('postnl/catalog_product')->getAttributeRawValue(
1584
+ $item->getProductId(),
1585
+ 'postnl_allow_delivery_days',
1586
+ $item->getStoreId()
1587
+ );
1588
+ }
1589
 
1590
  if (!is_null($deliveryDaysAllowed) && !$deliveryDaysAllowed) {
1591
  Mage::register($registryKey, false);
1712
  */
1713
  $quoteItems = $quote->getAllItems();
1714
  foreach ($quoteItems as $item) {
1715
+
1716
+ /**
1717
+ * If the product is a bundled product, check if the delivey options are allowed for all underlying
1718
+ * simple products. Else just check the given product, since this will point correctly to the simple product.
1719
+ */
1720
+ if ($item->getProductType() == Mage_Catalog_Model_Product_Type::TYPE_BUNDLE) {
1721
+ $timeframesAllowed = $this->bundleCheckAllowedForSimpleProducts($item, 'postnl_allow_timeframes');
1722
+ } else {
1723
+ $timeframesAllowed = Mage::getResourceSingleton('postnl/catalog_product')->getAttributeRawValue(
1724
+ $item->getProductId(),
1725
+ 'postnl_allow_timeframes',
1726
+ $item->getStoreId()
1727
+ );
1728
+ }
1729
 
1730
  if (!is_null($timeframesAllowed) && !$timeframesAllowed) {
1731
  Mage::register($registryKey, false);
1833
 
1834
  $storeId = Mage::app()->getStore()->getId();
1835
 
1836
+ if ($this->getDomesticCountry() != 'NL') {
1837
+ $allowed = false;
1838
+ } else {
1839
+ $allowed = Mage::getStoreConfigFlag(self::XPATH_ALLOW_SUNDAY_SORTING, $storeId);
1840
+ }
1841
 
1842
  if ($cache) {
1843
  /**
1878
  Mage::unregister($registryKey);
1879
  Mage::unregister('postnl_delivery_options_can_use_delivery_options_errors');
1880
 
1881
+ /**
1882
+ * Delivery options are only available when shipping from the Netherlands.
1883
+ */
1884
+ if ($this->getDomesticCountry() != 'NL') {
1885
+ Mage::register($registryKey, false);
1886
+ return false;
1887
+ }
1888
+
1889
  $deliveryOptionsEnabled = $this->isDeliveryOptionsEnabled();
1890
  if (!$deliveryOptionsEnabled) {
1891
+ $errors = array(
1892
+ array(
1893
+ 'code' => 'POSTNL-0237',
1894
+ 'message' => $this->__(
1895
+ 'Delivery options are only available when shipping from the Netherlands.'
1896
+ ),
1897
+ )
1898
+ );
1899
+ Mage::register('postnl_delivery_options_can_use_delivery_options_errors', $errors);
1900
+
1901
  Mage::register($registryKey, false);
1902
  return false;
1903
  }
1958
  return false;
1959
  }
1960
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1961
  /**
1962
  * Check if the current quote is a letter box parcel order and if so, if delivery options are allowed for letter
1963
  * box parcel orders.
1999
  */
2000
  foreach ($quote->getAllVisibleItems() as $item) {
2001
  $productId = $item->getProductId();
2002
+ $option = $item->getOptionByCode('simple_product');
2003
+ if ($option) {
2004
+ $parentProductId = $productId;
2005
+ $productId = $option->getProduct()->getId();
2006
+ }
2007
+
2008
+ /**
2009
+ * If the product is a bundled product, check if the delivey options are allowed for all underlying
2010
+ * simple products. Else just check the given product, since this will point correctly to the simple product.
2011
+ */
2012
+ if ($item->getProductType() == Mage_Catalog_Model_Product_Type::TYPE_BUNDLE) {
2013
+ $allowDeliveryOptions = $this->bundleCheckAllowedForSimpleProducts($item, 'postnl_allow_delivery_options');
2014
+ } else {
2015
+ $allowDeliveryOptions = Mage::getResourceSingleton('postnl/catalog_product')->getAttributeRawValue(
2016
+ $productId,
2017
+ 'postnl_allow_delivery_options',
2018
+ $item->getStoreId()
2019
+ );
2020
+
2021
+ if ($option) {
2022
+ $allowParentDeliveryOptions = Mage::getResourceSingleton('postnl/catalog_product')->getAttributeRawValue(
2023
+ $parentProductId,
2024
+ 'postnl_allow_delivery_options',
2025
+ $item->getStoreId()
2026
+ );
2027
+
2028
+ if (!is_null($allowParentDeliveryOptions) && !$allowParentDeliveryOptions) {
2029
+ $allowDeliveryOptions = $allowParentDeliveryOptions;
2030
+ }
2031
+ }
2032
+ }
2033
 
2034
  if (!is_null($allowDeliveryOptions) && !$allowDeliveryOptions) {
2035
  $errors = array(
2104
  return true;
2105
  }
2106
 
2107
+ /** @var Mage_Sales_Model_Quote_Item $item */
2108
+ $quoteItems = $quote->getAllItems();
2109
  foreach ($quoteItems as $item) {
2110
+ /**
2111
+ * The stock check only applies to simple products.
2112
+ *
2113
+ * @todo add stock check to physicial gift cards.
2114
+ */
2115
+ $productType = $item->getProductType();
2116
+ if ($productType != 'simple') {
2117
+ continue;
2118
+ }
2119
+
2120
  $product = $item->getProduct();
2121
 
2122
  /** @var Mage_CatalogInventory_Model_Stock_item $stockItem */
2234
 
2235
  /**
2236
  * Delivery options are only available when shipping to the Netherlands.
2237
+ *
2238
+ * Delivery options in Belgium are currently unstable and therefor not yet fully supported. Expect this to be
2239
+ * added in a later release.
2240
+ *
2241
+ * @todo add Belgium as a valid country for PostNL delivery options.
2242
  */
2243
+ if ($shippingAddress->getCountry() != 'NL' /*&& $shippingAddress->getCountry() != 'BE'*/) {
2244
  Mage::register($registryKey, false);
2245
  return false;
2246
  }
2824
 
2825
  return true;
2826
  }
2827
+
2828
+ /**
2829
+ * @param Mage_Sales_Model_Quote_Item $item
2830
+ * @param string $attribute
2831
+ *
2832
+ * @return bool
2833
+ */
2834
+ public function bundleCheckAllowedForSimpleProducts($item, $attribute)
2835
+ {
2836
+ $bundleItems = $item->getQtyOptions();
2837
+
2838
+ /**
2839
+ * By default, the delivery options can be shown for the quote, unless a product states otherwise.
2840
+ */
2841
+ $allow = true;
2842
+ /** @var Mage_Sales_Model_Quote_Item_Option $bundleItem */
2843
+ foreach ($bundleItems as $bundleItem) {
2844
+ $productId = $bundleItem->getProductId();
2845
+ $allowDeliveryOptionsForBundleItem = Mage::getResourceSingleton('postnl/catalog_product')->getAttributeRawValue(
2846
+ $productId,
2847
+ $attribute,
2848
+ $item->getStoreId()
2849
+ );
2850
+ if ($allowDeliveryOptionsForBundleItem == 0) {
2851
+ $allow = false;
2852
+ }
2853
+ }
2854
+
2855
+ return $allow;
2856
+
2857
+ }
2858
  }
app/code/community/TIG/PostNL/Helper/DeliveryOptions/Fee.php ADDED
@@ -0,0 +1,487 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ___________ __ __
4
+ * \__ ___/____ _/ |_ _____ | |
5
+ * | | / _ \\ __\\__ \ | |
6
+ * | | | |_| || | / __ \_| |__
7
+ * |____| \____/ |__| (____ /|____/
8
+ * \/
9
+ * ___ __ __
10
+ * | | ____ _/ |_ ____ _______ ____ ____ _/ |_
11
+ * | | / \\ __\_/ __ \\_ __ \ / \ _/ __ \\ __\
12
+ * | || | \| | \ ___/ | | \/| | \\ ___/ | |
13
+ * |___||___| /|__| \_____>|__| |___| / \_____>|__|
14
+ * \/ \/
15
+ * ________
16
+ * / _____/_______ ____ __ __ ______
17
+ * / \ ___\_ __ \ / _ \ | | \\____ \
18
+ * \ \_\ \| | \/| |_| || | /| |_| |
19
+ * \______ /|__| \____/ |____/ | __/
20
+ * \/ |__|
21
+ *
22
+ * NOTICE OF LICENSE
23
+ *
24
+ * This source file is subject to the Creative Commons License.
25
+ * It is available through the world-wide-web at this URL:
26
+ * http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
27
+ * If you are unable to obtain it through the world-wide-web, please send an email
28
+ * to servicedesk@tig.nl so we can send you a copy immediately.
29
+ *
30
+ * DISCLAIMER
31
+ *
32
+ * Do not edit or add to this file if you wish to upgrade this module to newer
33
+ * versions in the future. If you wish to customize this module for your
34
+ * needs please contact servicedesk@tig.nl for more information.
35
+ *
36
+ * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
+ * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
+ */
39
+ class TIG_PostNL_Helper_DeliveryOptions_Fee extends TIG_PostNL_Helper_Data
40
+ {
41
+ /**
42
+ * Xpaths to extra fee config settings.
43
+ */
44
+ const XPATH_EVENING_TIMEFRAME_FEE = 'postnl/delivery_options/evening_timeframe_fee';
45
+ const XPATH_SUNDAY_DELIVERY_FEE = 'postnl/delivery_options/sunday_delivery_fee';
46
+ const XPATH_PAKJEGEMAK_EXPRESS_FEE = 'postnl/delivery_options/pakjegemak_express_fee';
47
+ const XPATH_ONLY_STATED_ADDRESS_FEE = 'postnl/delivery_options/stated_address_only_fee';
48
+
49
+ /**
50
+ * Fee limit types
51
+ */
52
+ const FEE_LIMIT_MIN = 'min';
53
+ const FEE_LIMIT_MAX = 'max';
54
+
55
+ /**
56
+ * Fee types
57
+ */
58
+ const FEE_TYPE_EVENING = 'Evening';
59
+ const FEE_TYPE_SUNDAY = 'Sunday';
60
+ const FEE_TYPE_EXPRESS = 'Express';
61
+
62
+ /**
63
+ * Evening timeframes fee limits
64
+ */
65
+ const EVENING_FEE_MIN = 0;
66
+ const EVENING_FEE_MAX = 2;
67
+
68
+ /**
69
+ * PakjeGemak Express fee limits
70
+ */
71
+ const EXPRESS_FEE_MIN = 0;
72
+ const EXPRESS_FEE_MAX = 2;
73
+
74
+ /**
75
+ * Sunday delivery fee limits
76
+ */
77
+ const SUNDAY_FEE_MIN = 0;
78
+ const SUNDAY_FEE_MAX = 10;
79
+
80
+ /**
81
+ * Get the fee limit, min or max, for the supplied fee type
82
+ *
83
+ * @param string $feeType
84
+ * @param string $limitType
85
+ *
86
+ * @return int
87
+ */
88
+ public function getFeeLimit($feeType, $limitType = self::FEE_LIMIT_MAX)
89
+ {
90
+ switch ($limitType) {
91
+ case self::FEE_LIMIT_MIN:
92
+ $fee = $this->getMinFeeLimit($feeType);
93
+ break;
94
+ case self::FEE_LIMIT_MAX:
95
+ $fee = $this->getMaxFeeLimit($feeType);
96
+ break;
97
+ default:
98
+ $fee = 0;
99
+ }
100
+
101
+ return $fee;
102
+ }
103
+
104
+ /**
105
+ * Get the min fee limit
106
+ *
107
+ * @param string $feeType
108
+ *
109
+ * @return int
110
+ */
111
+ public function getMinFeeLimit($feeType)
112
+ {
113
+ switch ($feeType) {
114
+ case self::FEE_TYPE_EVENING:
115
+ $fee = self::EVENING_FEE_MIN;
116
+ break;
117
+ case self::FEE_TYPE_SUNDAY:
118
+ $fee = self::SUNDAY_FEE_MIN;
119
+ break;
120
+ case self::FEE_TYPE_EXPRESS:
121
+ $fee = self::EXPRESS_FEE_MIN;
122
+ break;
123
+ default:
124
+ $fee = 0;
125
+ }
126
+
127
+ return $fee;
128
+ }
129
+
130
+ /**
131
+ * Get the max fee limit
132
+ *
133
+ * @param string $feeType
134
+ *
135
+ * @return int
136
+ */
137
+ public function getMaxFeeLimit($feeType)
138
+ {
139
+ switch ($feeType) {
140
+ case self::FEE_TYPE_EVENING:
141
+ $fee = self::EVENING_FEE_MAX;
142
+ break;
143
+ case self::FEE_TYPE_SUNDAY:
144
+ $fee = self::SUNDAY_FEE_MAX;
145
+ break;
146
+ case self::FEE_TYPE_EXPRESS:
147
+ $fee = self::EXPRESS_FEE_MAX;
148
+ break;
149
+ default:
150
+ $fee = 0;
151
+ }
152
+
153
+ return $fee;
154
+ }
155
+
156
+ /**
157
+ * Get the fee charged for evening time frames.
158
+ *
159
+ * @param boolean $formatted
160
+ * @param boolean $includingTax
161
+ * @param boolean $convert
162
+ *
163
+ * @return float
164
+ */
165
+ public function getEveningFee($formatted = false, $includingTax = true, $convert = true)
166
+ {
167
+ $feeType = self::FEE_TYPE_EVENING;
168
+
169
+ return $this->_getFee($feeType, $formatted, $includingTax, $convert);
170
+ }
171
+
172
+ /**
173
+ * Get the fee charged for sunday delivery.
174
+ *
175
+ * @param boolean $formatted
176
+ * @param boolean $includingTax
177
+ * @param boolean $convert
178
+ *
179
+ * @return float
180
+ */
181
+ public function getSundayFee($formatted = false, $includingTax = true, $convert = true)
182
+ {
183
+ $feeType = self::FEE_TYPE_SUNDAY;
184
+
185
+ return $this->_getFee($feeType, $formatted, $includingTax, $convert);
186
+ }
187
+
188
+ /**
189
+ * Get the fee charged for PakjeGemak Express.
190
+ *
191
+ * @param boolean $formatted
192
+ * @param boolean $includingTax
193
+ * @param boolean $convert
194
+ *
195
+ * @return float
196
+ */
197
+ public function getExpressFee($formatted = false, $includingTax = true, $convert = true)
198
+ {
199
+ $feeType = self::FEE_TYPE_EXPRESS;
200
+
201
+ return $this->_getFee($feeType, $formatted, $includingTax, $convert);
202
+ }
203
+
204
+ /**
205
+ * Get the fee for the supplied type
206
+ *
207
+ * @param string $feeType
208
+ * @param boolean $formatted
209
+ * @param bool $includingTax
210
+ * @param bool $convert
211
+ *
212
+ * @return float|int|string
213
+ */
214
+ protected function _getFee($feeType, $formatted = false, $includingTax = true, $convert = true)
215
+ {
216
+ $registryKey = $this->_getFeeRegistryKey($feeType);
217
+
218
+ if ($includingTax) {
219
+ $registryKey .= '_incl';
220
+ }
221
+
222
+ if (Mage::registry($registryKey) !== null) {
223
+ $price = Mage::registry($registryKey);
224
+ } else {
225
+ $storeId = Mage::app()->getStore()->getId();
226
+ $xpath = $this->_getFeeConfigXpath($feeType);
227
+ $fee = (float) Mage::getStoreConfig($xpath, $storeId);
228
+
229
+ $price = $this->getPriceWithTax($fee, $includingTax, false, false);
230
+
231
+ if ($price > $this->getFeeLimit($feeType)) {
232
+ $price = 0;
233
+ }
234
+
235
+ Mage::register($registryKey, $price);
236
+ }
237
+
238
+ if ($convert) {
239
+ $quote = $this->getQuote();
240
+ $store = $quote->getStore();
241
+
242
+ $price = $store->convertPrice($price, false, false);
243
+ }
244
+
245
+ if ($formatted) {
246
+ $price = Mage::app()->getStore()->formatPrice($price, false);
247
+ }
248
+
249
+ return $price;
250
+ }
251
+
252
+ /**
253
+ * @param string $feeType
254
+ *
255
+ * @return string
256
+ * @todo add default with throw new exception
257
+ */
258
+ protected function _getFeeRegistryKey($feeType)
259
+ {
260
+ switch ($feeType) {
261
+ case self::FEE_TYPE_EVENING:
262
+ $registryKey = 'postnl_evening_fee';
263
+ break;
264
+ case self::FEE_TYPE_SUNDAY:
265
+ $registryKey = 'postnl_sunday_fee';
266
+ break;
267
+ case self::FEE_TYPE_EXPRESS:
268
+ $registryKey = 'postnl_express_fee';
269
+ break;
270
+ }
271
+
272
+ return $registryKey;
273
+ }
274
+
275
+ /**
276
+ * @param string $feeType
277
+ *
278
+ * @return string
279
+ * @todo add default with throw new exception
280
+ */
281
+ protected function _getFeeConfigXpath($feeType)
282
+ {
283
+ switch ($feeType) {
284
+ case self::FEE_TYPE_EVENING:
285
+ $xpath = self::XPATH_EVENING_TIMEFRAME_FEE;
286
+ break;
287
+ case self::FEE_TYPE_SUNDAY:
288
+ $xpath = self::XPATH_SUNDAY_DELIVERY_FEE;
289
+ break;
290
+ case self::FEE_TYPE_EXPRESS:
291
+ $xpath = self::XPATH_PAKJEGEMAK_EXPRESS_FEE;
292
+ break;
293
+ }
294
+
295
+ return $xpath;
296
+ }
297
+
298
+ /**
299
+ * Get the fee for PakjeGemak locations. This is only applicable to buspakje orders.
300
+ *
301
+ * @param float $currentRate
302
+ * @param boolean $formatted
303
+ * @param boolean $includingTax
304
+ * @param boolean $convert
305
+ *
306
+ * @return float|int
307
+ */
308
+ public function getPakjeGemakFee($currentRate, $formatted = false, $includingTax = true, $convert = true)
309
+ {
310
+ $registryKey = 'postnl_pakje_gemak_fee';
311
+
312
+ if ($includingTax) {
313
+ $registryKey .= '_incl';
314
+ }
315
+
316
+ /**
317
+ * If the current order is not a buspakje order, the fee is 0.
318
+ */
319
+ if (!$this->isBuspakjeConfigApplicableToQuote()) {
320
+ Mage::register($registryKey, 0);
321
+
322
+ return 0;
323
+ }
324
+
325
+ if (Mage::registry($registryKey) !== null) {
326
+ $price = Mage::registry($registryKey);
327
+ } else {
328
+ $pakjeGemakShippingRates = Mage::helper('postnl/carrier')->getParcelShippingRate($this->getQuote());
329
+ if (!$pakjeGemakShippingRates) {
330
+ return 0;
331
+ }
332
+
333
+ $pakjeGemakShippingRate = $pakjeGemakShippingRates->getCheapestRate();
334
+ /** @noinspection PhpUndefinedMethodInspection */
335
+ $pakjeGemakShippingRate = $pakjeGemakShippingRate->getPrice();
336
+
337
+ $difference = $pakjeGemakShippingRate - $currentRate;
338
+
339
+ $price = $this->getPriceWithTax($difference, $includingTax, false, false);
340
+
341
+ Mage::register($registryKey, $price);
342
+ }
343
+
344
+ if ($convert) {
345
+ $quote = $this->getQuote();
346
+ $store = $quote->getStore();
347
+
348
+ $price = $store->convertPrice($price, false, false);
349
+ }
350
+
351
+
352
+ if ($formatted) {
353
+ $price = Mage::app()->getStore()->formatPrice($price, false);
354
+ }
355
+
356
+ return $price;
357
+ }
358
+
359
+ /**
360
+ * Get the fee charged for possible options saved to the PostNL order.
361
+ *
362
+ * @param TIG_PostNL_Model_Core_Order $postnlOrder
363
+ * @param bool $formatted
364
+ * @param bool $includingTax
365
+ * @param bool $convert
366
+ *
367
+ * @return float|int
368
+ */
369
+ public function getOptionsFee(TIG_PostNL_Model_Core_Order $postnlOrder, $formatted = false, $includingTax = true,
370
+ $convert = true)
371
+ {
372
+ if (!$postnlOrder->hasOptions()) {
373
+ return 0;
374
+ }
375
+
376
+ $options = $postnlOrder->getOptions();
377
+ if (empty($options)) {
378
+ return 0;
379
+ }
380
+
381
+ $storeId = Mage::app()->getStore()->getId();
382
+
383
+ /**
384
+ * For upgradability reasons this is a switch, rather than an if statement.
385
+ */
386
+ $fee = 0;
387
+ foreach ($options as $option => $value) {
388
+ if (!$value) {
389
+ continue;
390
+ }
391
+
392
+ switch ($option) {
393
+ case 'only_stated_address':
394
+ $fee += (float) Mage::getStoreConfig(self::XPATH_ONLY_STATED_ADDRESS_FEE, $storeId);
395
+ break;
396
+ //no default
397
+ }
398
+ }
399
+
400
+ $price = $this->getPriceWithTax($fee, $includingTax, false, false);
401
+
402
+ if ($convert) {
403
+ $quote = $this->getQuote();
404
+ $store = $quote->getStore();
405
+
406
+ $price = $store->convertPrice($price, false, false);
407
+ }
408
+
409
+ if ($formatted) {
410
+ $price = Mage::app()->getStore()->formatPrice($price, false);
411
+ }
412
+
413
+ return $price;
414
+ }
415
+
416
+ /**
417
+ * Gets the configured fee for a specified option.
418
+ *
419
+ * @param string $option
420
+ * @param bool $formatted
421
+ * @param bool $includingTax
422
+ * @param bool $convert
423
+ *
424
+ * @return float|int
425
+ */
426
+ public function getOptionFee($option, $formatted = false, $includingTax = true, $convert = true)
427
+ {
428
+ $storeId = Mage::app()->getStore()->getId();
429
+
430
+ /**
431
+ * For upgradability reasons this is a switch, rather than an if statement.
432
+ */
433
+ $fee = 0;
434
+ switch ($option) {
435
+ case 'only_stated_address':
436
+ $fee = (float) Mage::getStoreConfig(self::XPATH_ONLY_STATED_ADDRESS_FEE, $storeId);
437
+ break;
438
+ //no default
439
+ }
440
+
441
+ $price = $this->getPriceWithTax($fee, $includingTax, false, false);
442
+
443
+ if ($price > 2) {
444
+ $price = 0;
445
+ }
446
+
447
+ if ($convert) {
448
+ $quote = $this->getQuote();
449
+ $store = $quote->getStore();
450
+
451
+ $price = $store->convertPrice($price, false, false);
452
+ }
453
+
454
+ if ($formatted) {
455
+ $price = Mage::app()->getStore()->formatPrice($price, false);
456
+ }
457
+
458
+ return $price;
459
+ }
460
+
461
+ /**
462
+ * Convert a value to a formatted price.
463
+ *
464
+ * @param float $price
465
+ * @param boolean $includingTax
466
+ * @param boolean $formatted
467
+ * @param boolean $convert
468
+ *
469
+ * @return float
470
+ *
471
+ * @see Mage_Checkout_Block_Onepage_Shipping_Method_Available::getShippingPrice()
472
+ */
473
+ public function getPriceWithTax($price, $includingTax, $formatted = false, $convert = true)
474
+ {
475
+ $quote = $this->getQuote();
476
+ $store = $quote->getStore();
477
+
478
+ $shippingPrice = Mage::helper('tax')->getShippingPrice($price, $includingTax, $quote->getShippingAddress());
479
+
480
+ if ($convert) {
481
+ $shippingPrice = $store->convertPrice($shippingPrice, $formatted, false);
482
+ }
483
+
484
+ return $shippingPrice;
485
+ }
486
+
487
+ }
app/code/community/TIG/PostNL/Model/Adminhtml/Observer/OrderGrid.php CHANGED
@@ -227,6 +227,19 @@ class TIG_PostNL_Model_Adminhtml_Observer_OrderGrid extends Varien_Object
227
  )
228
  );
229
 
 
 
 
 
 
 
 
 
 
 
 
 
 
230
  $select = $collection->getSelect();
231
 
232
  /**
@@ -406,6 +419,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_OrderGrid extends Varien_Object
406
  'global' => $helper->__('GlobalPack'),
407
  'pakketautomaat' => $helper->__('Parcel Dispenser'),
408
  'avond' => $helper->__('Evening Delivery'),
 
409
  'pakje_gemak_express' => $helper->__('Early Pickup'),
410
  ),
411
  );
@@ -544,18 +558,12 @@ class TIG_PostNL_Model_Adminhtml_Observer_OrderGrid extends Varien_Object
544
  $now = new DateTime($dateModel->gmtDate(), new DateTimeZone('UTC'));
545
 
546
  if (!$origValue) {
547
- $helper = Mage::helper('postnl/deliveryOptions');
548
- $shippingDuration = $helper->getOrderShippingDuration($row);
549
- $deliveryDate = $helper->getDeliveryDate(
550
  $row->getCreatedAt(),
551
- $row->getStoreId(),
552
- false,
553
- true,
554
- true,
555
- $shippingDuration
556
  );
557
- $origDate = new DateTime($deliveryDate, new DateTimeZone('UTC'));
558
- $origDate = $origDate->sub(new DateInterval('P1D'));
559
  } else {
560
  $origDate = new DateTime($origValue, new DateTimeZone('UTC'));
561
  }
@@ -859,7 +867,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_OrderGrid extends Varien_Object
859
  */
860
  $massActionData = array(
861
  'label'=> $helper->__('PostNL - Create Shipments'),
862
- 'url' => Mage::helper('adminhtml')->getUrl('postnl_admin/adminhtml_shipment/massCreateShipments'),
863
  );
864
 
865
  $storeId = Mage_Core_Model_App::ADMIN_STORE_ID;
@@ -921,6 +929,15 @@ class TIG_PostNL_Model_Adminhtml_Observer_OrderGrid extends Varien_Object
921
  );
922
  }
923
 
 
 
 
 
 
 
 
 
 
924
  if (!empty($options['postnl_pg_options'])) {
925
  $config['postnl_pg_options'] = array(
926
  'name' => 'product_options[pg_options]',
@@ -1033,8 +1050,8 @@ class TIG_PostNL_Model_Adminhtml_Observer_OrderGrid extends Varien_Object
1033
  $options = array(
1034
  'postnl_domestic_options' => $optionsModel->getOptions(
1035
  array(
1036
- 'group' => 'standard_options',
1037
- 'isCod' => false,
1038
  ),
1039
  false,
1040
  true
@@ -1081,8 +1098,9 @@ class TIG_PostNL_Model_Adminhtml_Observer_OrderGrid extends Varien_Object
1081
  ),
1082
  'postnl_domestic_cod_options' => $optionsModel->getOptions(
1083
  array(
1084
- 'group' => 'standard_options',
1085
- 'isCod' => true,
 
1086
  ),
1087
  false,
1088
  true
@@ -1126,6 +1144,14 @@ class TIG_PostNL_Model_Adminhtml_Observer_OrderGrid extends Varien_Object
1126
  ),
1127
  false,
1128
  true
 
 
 
 
 
 
 
 
1129
  )
1130
  );
1131
 
@@ -1146,7 +1172,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_OrderGrid extends Varien_Object
1146
  */
1147
  $massActionData = array(
1148
  'label' => $helper->__('PostNL - Create shipments, print labels and confirm'),
1149
- 'url' => Mage::helper('adminhtml')->getUrl('postnl_admin/adminhtml_shipment/massFullPostnlFlow'),
1150
  );
1151
 
1152
  $defaultMassAction = Mage::getStoreConfig(
@@ -1176,7 +1202,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_OrderGrid extends Varien_Object
1176
  $massActionData = array(
1177
  'label' => $helper->__('PostNL - Create shipments, print packing slips and confirm'),
1178
  'url' => Mage::helper('adminhtml')->getUrl(
1179
- 'postnl_admin/adminhtml_shipment/massFullPostnlFlowWithPackingSlip'
1180
  ),
1181
  );
1182
 
@@ -1206,7 +1232,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_OrderGrid extends Varien_Object
1206
  */
1207
  $massActionData = array(
1208
  'label' => $helper->__('PostNL - Print packing slips'),
1209
- 'url' => Mage::helper('adminhtml')->getUrl('postnl_admin/adminhtml_shipment/massPrintPackingslips'),
1210
  );
1211
 
1212
  $defaultMassAction = Mage::getStoreConfig(
@@ -1327,6 +1353,15 @@ class TIG_PostNL_Model_Adminhtml_Observer_OrderGrid extends Varien_Object
1327
  return $this;
1328
  }
1329
 
 
 
 
 
 
 
 
 
 
1330
  /**
1331
  * If the filter condition is PakjeGemak, filter out all non-PakjeGemak orders
1332
  */
@@ -1358,7 +1393,8 @@ class TIG_PostNL_Model_Adminhtml_Observer_OrderGrid extends Varien_Object
1358
  * PakjeGemak Express, evening delivery and pakketautomaat shipments are also shipped to the Netherlands so we
1359
  * need to explicitly filter those as well.
1360
  */
1361
- if ($filterCond == 'nl') {
 
1362
  $collection->addFieldToFilter('country_id', $cond);
1363
  $collection->addFieldToFilter(
1364
  'postnl_order.type',
@@ -1427,8 +1463,12 @@ class TIG_PostNL_Model_Adminhtml_Observer_OrderGrid extends Varien_Object
1427
  return $this;
1428
  }
1429
 
1430
- $field = "IF(`postnl_shipment`.`confirm_date`, `postnl_shipment`.`confirm_date`, "
1431
- . "`postnl_order`.`confirm_date`)";
 
 
 
 
1432
 
1433
  $collection->addFieldToFilter($field , $cond);
1434
 
227
  )
228
  );
229
 
230
+ /**
231
+ * If the order has any PostNl shipments, we can use their delivery_date. Otherwise we can check the
232
+ * delivery_date stored by the tig_postnl_order table.
233
+ */
234
+ $collection->addExpressionFieldToSelect(
235
+ 'delivery_date',
236
+ 'IF({{shipment_delivery_date}}, {{shipment_delivery_date}}, {{order_delivery_date}})',
237
+ array(
238
+ 'shipment_delivery_date' => '`postnl_shipment`.`delivery_date`',
239
+ 'order_delivery_date' => '`postnl_order`.`delivery_date`',
240
+ )
241
+ );
242
+
243
  $select = $collection->getSelect();
244
 
245
  /**
419
  'global' => $helper->__('GlobalPack'),
420
  'pakketautomaat' => $helper->__('Parcel Dispenser'),
421
  'avond' => $helper->__('Evening Delivery'),
422
+ 'sunday' => $helper->__('Sunday Delivery'),
423
  'pakje_gemak_express' => $helper->__('Early Pickup'),
424
  ),
425
  );
558
  $now = new DateTime($dateModel->gmtDate(), new DateTimeZone('UTC'));
559
 
560
  if (!$origValue) {
561
+ /** @var TIG_PostNL_Helper_Date $helper */
562
+ $helper = Mage::helper('postnl/date');
563
+ $origDate = $helper->getShippingDate(
564
  $row->getCreatedAt(),
565
+ $row->getStoreId()
 
 
 
 
566
  );
 
 
567
  } else {
568
  $origDate = new DateTime($origValue, new DateTimeZone('UTC'));
569
  }
867
  */
868
  $massActionData = array(
869
  'label'=> $helper->__('PostNL - Create Shipments'),
870
+ 'url' => Mage::helper('adminhtml')->getUrl('adminhtml/postnlAdminhtml_shipment/massCreateShipments'),
871
  );
872
 
873
  $storeId = Mage_Core_Model_App::ADMIN_STORE_ID;
929
  );
930
  }
931
 
932
+ if (!empty($options['postnl_sunday_options'])) {
933
+ $config['postnl_sunday_options'] = array(
934
+ 'name' => 'product_options[sunday_options]',
935
+ 'type' => 'select',
936
+ 'label' => $optionLabel,
937
+ 'values' => $options['postnl_sunday_options'],
938
+ );
939
+ }
940
+
941
  if (!empty($options['postnl_pg_options'])) {
942
  $config['postnl_pg_options'] = array(
943
  'name' => 'product_options[pg_options]',
1050
  $options = array(
1051
  'postnl_domestic_options' => $optionsModel->getOptions(
1052
  array(
1053
+ 'group' => 'standard_options',
1054
+ 'isCod' => false,
1055
  ),
1056
  false,
1057
  true
1098
  ),
1099
  'postnl_domestic_cod_options' => $optionsModel->getOptions(
1100
  array(
1101
+ 'group' => 'standard_options',
1102
+ 'isCod' => true,
1103
+ 'isBelgiumOnly' => false,
1104
  ),
1105
  false,
1106
  true
1144
  ),
1145
  false,
1146
  true
1147
+ ),
1148
+ 'postnl_sunday_options' => $optionsModel->getOptions(
1149
+ array(
1150
+ 'group' => 'standard_options',
1151
+ 'isSunday' => true,
1152
+ ),
1153
+ false,
1154
+ true
1155
  )
1156
  );
1157
 
1172
  */
1173
  $massActionData = array(
1174
  'label' => $helper->__('PostNL - Create shipments, print labels and confirm'),
1175
+ 'url' => Mage::helper('adminhtml')->getUrl('adminhtml/postnlAdminhtml_shipment/massFullPostnlFlow'),
1176
  );
1177
 
1178
  $defaultMassAction = Mage::getStoreConfig(
1202
  $massActionData = array(
1203
  'label' => $helper->__('PostNL - Create shipments, print packing slips and confirm'),
1204
  'url' => Mage::helper('adminhtml')->getUrl(
1205
+ 'adminhtml/postnlAdminhtml_shipment/massFullPostnlFlowWithPackingSlip'
1206
  ),
1207
  );
1208
 
1232
  */
1233
  $massActionData = array(
1234
  'label' => $helper->__('PostNL - Print packing slips'),
1235
+ 'url' => Mage::helper('adminhtml')->getUrl('adminhtml/postnlAdminhtml_shipment/massPrintPackingslips'),
1236
  );
1237
 
1238
  $defaultMassAction = Mage::getStoreConfig(
1353
  return $this;
1354
  }
1355
 
1356
+ /**
1357
+ * If the filter condition is sunday delivery, filter out all other orders
1358
+ */
1359
+ if ($filterCond == 'sunday') {
1360
+ $collection->addFieldToFilter('postnl_order.type', array('eq' => 'Sunday'));
1361
+
1362
+ return $this;
1363
+ }
1364
+
1365
  /**
1366
  * If the filter condition is PakjeGemak, filter out all non-PakjeGemak orders
1367
  */
1393
  * PakjeGemak Express, evening delivery and pakketautomaat shipments are also shipped to the Netherlands so we
1394
  * need to explicitly filter those as well.
1395
  */
1396
+ $domesticCountry = Mage::helper('postnl')->getDomesticCountry();
1397
+ if ($filterCond == $domesticCountry) {
1398
  $collection->addFieldToFilter('country_id', $cond);
1399
  $collection->addFieldToFilter(
1400
  'postnl_order.type',
1463
  return $this;
1464
  }
1465
 
1466
+ $field = $collection->getConnection()
1467
+ ->getCheckSql(
1468
+ 'postnl_shipment.confirm_date',
1469
+ 'postnl_shipment.confirm_date',
1470
+ 'postnl_order.confirm_date'
1471
+ );
1472
 
1473
  $collection->addFieldToFilter($field , $cond);
1474
 
app/code/community/TIG/PostNL/Model/Adminhtml/Observer/ShipmentGrid.php CHANGED
@@ -403,6 +403,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_ShipmentGrid extends Varien_Object
403
  'global' => $helper->__('GlobalPack'),
404
  'pakketautomaat' => $helper->__('Parcel Dispenser'),
405
  'avond' => $helper->__('Evening Delivery'),
 
406
  'pakje_gemak_express' => $helper->__('Early Pickup'),
407
  'buspakje' => $helper->__('Letter Box Parcel'),
408
  ),
@@ -640,7 +641,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_ShipmentGrid extends Varien_Object
640
  if ($helper->checkIsPostnlActionAllowed('confirm')) {
641
  $actions[] = array(
642
  'caption' => $helper->__('Confirm'),
643
- 'url' => array('base' => 'postnl_admin/adminhtml_shipment/confirm'),
644
  'field' => 'shipment_id',
645
  'is_postnl' => true, //custom flag for renderer
646
  'code' => 'postnl_confirm',
@@ -891,37 +892,37 @@ class TIG_PostNL_Model_Adminhtml_Observer_ShipmentGrid extends Varien_Object
891
  */
892
  $printAndConfirmOptions = array(
893
  'label' => $helper->__('PostNL - Print shipping labels & confirm shipment'),
894
- 'url' => $adminhtmlHelper->getUrl('postnl_admin/adminhtml_shipment/massPrintLabelsAndConfirm'),
895
  );
896
 
897
  $printPackingSlipsAndConfirmOptions = array(
898
  'label' => $helper->__('PostNL - Print packing slips & confirm shipment'),
899
- 'url' => $adminhtmlHelper->getUrl('postnl_admin/adminhtml_shipment/massPrintPackingSlipsAndConfirm'),
900
  );
901
 
902
  $printOptions = array(
903
  'label' => $helper->__('PostNL - Print shipping labels'),
904
- 'url' => $adminhtmlHelper->getUrl('postnl_admin/adminhtml_shipment/massPrintLabels'),
905
  );
906
 
907
  $packingSlipOptions = array(
908
  'label' => $helper->__('PostNL - Print packing slips'),
909
- 'url' => $adminhtmlHelper->getUrl('postnl_admin/adminhtml_shipment/massPrintPackingslips'),
910
  );
911
 
912
  $confirmOptions = array(
913
  'label' => $helper->__('PostNL - Confirm shipments'),
914
- 'url' => $adminhtmlHelper->getUrl('postnl_admin/adminhtml_shipment/massConfirm'),
915
  );
916
 
917
  $parcelWareOptions = array(
918
  'label' => $helper->__('PostNL - Create Parcelware export'),
919
- 'url' => $adminhtmlHelper->getUrl('postnl_admin/adminhtml_shipment/massCreateParcelwareExport')
920
  );
921
 
922
  $updateShippingStatusOptions = array(
923
  'label' => $helper->__('PostNL - Update shipping status'),
924
- 'url' => $adminhtmlHelper->getUrl('postnl_admin/adminhtml_shipment/massUpdateShippingStatus')
925
  );
926
 
927
  /**
403
  'global' => $helper->__('GlobalPack'),
404
  'pakketautomaat' => $helper->__('Parcel Dispenser'),
405
  'avond' => $helper->__('Evening Delivery'),
406
+ 'sunday' => $helper->__('Sunday Delivery'),
407
  'pakje_gemak_express' => $helper->__('Early Pickup'),
408
  'buspakje' => $helper->__('Letter Box Parcel'),
409
  ),
641
  if ($helper->checkIsPostnlActionAllowed('confirm')) {
642
  $actions[] = array(
643
  'caption' => $helper->__('Confirm'),
644
+ 'url' => array('base' => 'adminhtml/postnlAdminhtml_shipment/confirm'),
645
  'field' => 'shipment_id',
646
  'is_postnl' => true, //custom flag for renderer
647
  'code' => 'postnl_confirm',
892
  */
893
  $printAndConfirmOptions = array(
894
  'label' => $helper->__('PostNL - Print shipping labels & confirm shipment'),
895
+ 'url' => $adminhtmlHelper->getUrl('adminhtml/postnlAdminhtml_shipment/massPrintLabelsAndConfirm'),
896
  );
897
 
898
  $printPackingSlipsAndConfirmOptions = array(
899
  'label' => $helper->__('PostNL - Print packing slips & confirm shipment'),
900
+ 'url' => $adminhtmlHelper->getUrl('adminhtml/postnlAdminhtml_shipment/massPrintPackingSlipsAndConfirm'),
901
  );
902
 
903
  $printOptions = array(
904
  'label' => $helper->__('PostNL - Print shipping labels'),
905
+ 'url' => $adminhtmlHelper->getUrl('adminhtml/postnlAdminhtml_shipment/massPrintLabels'),
906
  );
907
 
908
  $packingSlipOptions = array(
909
  'label' => $helper->__('PostNL - Print packing slips'),
910
+ 'url' => $adminhtmlHelper->getUrl('adminhtml/postnlAdminhtml_shipment/massPrintPackingslips'),
911
  );
912
 
913
  $confirmOptions = array(
914
  'label' => $helper->__('PostNL - Confirm shipments'),
915
+ 'url' => $adminhtmlHelper->getUrl('adminhtml/postnlAdminhtml_shipment/massConfirm'),
916
  );
917
 
918
  $parcelWareOptions = array(
919
  'label' => $helper->__('PostNL - Create Parcelware export'),
920
+ 'url' => $adminhtmlHelper->getUrl('adminhtml/postnlAdminhtml_shipment/massCreateParcelwareExport')
921
  );
922
 
923
  $updateShippingStatusOptions = array(
924
  'label' => $helper->__('PostNL - Update shipping status'),
925
+ 'url' => $adminhtmlHelper->getUrl('adminhtml/postnlAdminhtml_shipment/massUpdateShippingStatus')
926
  );
927
 
928
  /**
app/code/community/TIG/PostNL/Model/Adminhtml/Observer/ShipmentView.php CHANGED
@@ -389,7 +389,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_ShipmentView
389
  public function getPrintShippingLabelUrl($shipmentId)
390
  {
391
  $url = Mage::helper('adminhtml')->getUrl(
392
- 'postnl_admin/adminhtml_shipment/printLabel',
393
  array('shipment_id' => $shipmentId)
394
  );
395
 
@@ -406,7 +406,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_ShipmentView
406
  public function getPrintReturnLabelUrl($shipmentId)
407
  {
408
  $url = Mage::helper('adminhtml')->getUrl(
409
- 'postnl_admin/adminhtml_shipment/printReturnLabel',
410
  array('shipment_id' => $shipmentId)
411
  );
412
 
@@ -423,7 +423,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_ShipmentView
423
  public function getPrintPackingSlipUrl($shipmentId)
424
  {
425
  $url = Mage::helper('adminhtml')->getUrl(
426
- 'postnl_admin/adminhtml_shipment/printPackingSlip',
427
  array('shipment_id' => $shipmentId)
428
  );
429
 
@@ -440,7 +440,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_ShipmentView
440
  public function getResetConfirmationUrl($shipmentId)
441
  {
442
  $url = Mage::helper('adminhtml')->getUrl(
443
- 'postnl_admin/adminhtml_shipment/resetConfirmation',
444
  array('shipment_id' => $shipmentId)
445
  );
446
 
@@ -457,7 +457,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_ShipmentView
457
  public function getRemoveLabelsUrl($shipmentId)
458
  {
459
  $url = Mage::helper('adminhtml')->getUrl(
460
- 'postnl_admin/adminhtml_shipment/removeLabels',
461
  array('shipment_id' => $shipmentId)
462
  );
463
 
@@ -474,7 +474,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_ShipmentView
474
  public function getResendTrackAndTraceUrl($shipmentId)
475
  {
476
  $url = Mage::helper('adminhtml')->getUrl(
477
- 'postnl_admin/adminhtml_shipment/sendTrackAndTrace',
478
  array('shipment_id' => $shipmentId)
479
  );
480
 
@@ -491,7 +491,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_ShipmentView
491
  public function getConfirmUrl($shipmentId)
492
  {
493
  $url = Mage::helper('adminhtml')->getUrl(
494
- 'postnl_admin/adminhtml_shipment/confirm',
495
  array(
496
  'shipment_id' => $shipmentId,
497
  'return_to_view' => true,
@@ -511,7 +511,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_ShipmentView
511
  public function getConvertToBuspakjeUrl($shipmentId)
512
  {
513
  $url = Mage::helper('adminhtml')->getUrl(
514
- 'postnl_admin/adminhtml_shipment/convertToBuspakje',
515
  array(
516
  'shipment_id' => $shipmentId,
517
  'return_to_view' => true,
@@ -531,7 +531,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_ShipmentView
531
  public function getConvertToPackageUrl($shipmentId)
532
  {
533
  $url = Mage::helper('adminhtml')->getUrl(
534
- 'postnl_admin/adminhtml_shipment/convertToPackage',
535
  array(
536
  'shipment_id' => $shipmentId,
537
  'return_to_view' => true,
@@ -551,7 +551,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_ShipmentView
551
  public function getSendReturnLabelEmailUrl($shipmentId)
552
  {
553
  $url = Mage::helper('adminhtml')->getUrl(
554
- 'postnl_admin/adminhtml_shipment/sendReturnLabelEmail',
555
  array(
556
  'shipment_id' => $shipmentId,
557
  'return_to_view' => true,
389
  public function getPrintShippingLabelUrl($shipmentId)
390
  {
391
  $url = Mage::helper('adminhtml')->getUrl(
392
+ 'adminhtml/postnlAdminhtml_shipment/printLabel',
393
  array('shipment_id' => $shipmentId)
394
  );
395
 
406
  public function getPrintReturnLabelUrl($shipmentId)
407
  {
408
  $url = Mage::helper('adminhtml')->getUrl(
409
+ 'adminhtml/postnlAdminhtml_shipment/printReturnLabel',
410
  array('shipment_id' => $shipmentId)
411
  );
412
 
423
  public function getPrintPackingSlipUrl($shipmentId)
424
  {
425
  $url = Mage::helper('adminhtml')->getUrl(
426
+ 'adminhtml/postnlAdminhtml_shipment/printPackingSlip',
427
  array('shipment_id' => $shipmentId)
428
  );
429
 
440
  public function getResetConfirmationUrl($shipmentId)
441
  {
442
  $url = Mage::helper('adminhtml')->getUrl(
443
+ 'adminhtml/postnlAdminhtml_shipment/resetConfirmation',
444
  array('shipment_id' => $shipmentId)
445
  );
446
 
457
  public function getRemoveLabelsUrl($shipmentId)
458
  {
459
  $url = Mage::helper('adminhtml')->getUrl(
460
+ 'adminhtml/postnlAdminhtml_shipment/removeLabels',
461
  array('shipment_id' => $shipmentId)
462
  );
463
 
474
  public function getResendTrackAndTraceUrl($shipmentId)
475
  {
476
  $url = Mage::helper('adminhtml')->getUrl(
477
+ 'adminhtml/postnlAdminhtml_shipment/sendTrackAndTrace',
478
  array('shipment_id' => $shipmentId)
479
  );
480
 
491
  public function getConfirmUrl($shipmentId)
492
  {
493
  $url = Mage::helper('adminhtml')->getUrl(
494
+ 'adminhtml/postnlAdminhtml_shipment/confirm',
495
  array(
496
  'shipment_id' => $shipmentId,
497
  'return_to_view' => true,
511
  public function getConvertToBuspakjeUrl($shipmentId)
512
  {
513
  $url = Mage::helper('adminhtml')->getUrl(
514
+ 'adminhtml/postnlAdminhtml_shipment/convertToBuspakje',
515
  array(
516
  'shipment_id' => $shipmentId,
517
  'return_to_view' => true,
531
  public function getConvertToPackageUrl($shipmentId)
532
  {
533
  $url = Mage::helper('adminhtml')->getUrl(
534
+ 'adminhtml/postnlAdminhtml_shipment/convertToPackage',
535
  array(
536
  'shipment_id' => $shipmentId,
537
  'return_to_view' => true,
551
  public function getSendReturnLabelEmailUrl($shipmentId)
552
  {
553
  $url = Mage::helper('adminhtml')->getUrl(
554
+ 'adminhtml/postnlAdminhtml_shipment/sendReturnLabelEmail',
555
  array(
556
  'shipment_id' => $shipmentId,
557
  'return_to_view' => true,
app/code/community/TIG/PostNL/Model/Adminhtml/Observer/SystemConfig.php CHANGED
@@ -79,7 +79,7 @@ class TIG_PostNL_Model_Adminhtml_Observer_SystemConfig
79
  return false;
80
  }
81
 
82
- $onClickUrl = $configEditBlock->getUrl('postnl_admin/adminhtml_config/downloadLogs');
83
  $onClick = "setLocation('{$onClickUrl}')";
84
 
85
  /**
79
  return false;
80
  }
81
 
82
+ $onClickUrl = $configEditBlock->getUrl('adminhtml/postnlAdminhtml_config/downloadLogs');
83
  $onClick = "setLocation('{$onClickUrl}')";
84
 
85
  /**
app/code/community/TIG/PostNL/Model/Carrier/Quote/Address/Total/Shipping.php CHANGED
@@ -209,6 +209,8 @@ class TIG_PostNL_Model_Carrier_Quote_Address_Total_Shipping
209
  $fee = Mage::helper('postnl/deliveryOptions')->getExpressFee(false, $includingTax, false);
210
  } elseif ($type == 'Avond' ) {
211
  $fee = Mage::helper('postnl/deliveryOptions')->getEveningFee(false, $includingTax, false);
 
 
212
  }
213
 
214
  $fee += Mage::helper('postnl/deliveryOptions')->getOptionsFee($postnlOrder, false, $includingTax, false);
209
  $fee = Mage::helper('postnl/deliveryOptions')->getExpressFee(false, $includingTax, false);
210
  } elseif ($type == 'Avond' ) {
211
  $fee = Mage::helper('postnl/deliveryOptions')->getEveningFee(false, $includingTax, false);
212
+ } elseif ($type == TIG_PostNL_Helper_DeliveryOptions_Fee::FEE_TYPE_SUNDAY ) {
213
+ $fee = Mage::helper('postnl/deliveryOptions_fee')->getSundayFee(false, $includingTax, false);
214
  }
215
 
216
  $fee += Mage::helper('postnl/deliveryOptions')->getOptionsFee($postnlOrder, false, $includingTax, false);
app/code/community/TIG/PostNL/Model/Core/Cache.php CHANGED
@@ -62,6 +62,8 @@
62
  * @method boolean hasMatchedPostnlShippingMethods()
63
  * @method boolean hasCanUseResponsiveDeliveryOptions()
64
  * @method boolean hasStoreTimeZones()
 
 
65
  *
66
  * @method boolean getPostnlCoreIsEnabled()
67
  * @method boolean getPostnlCoreIsConfigured()
@@ -89,6 +91,8 @@
89
  * @method array getMatchedPostnlShippingMethods()
90
  * @method boolean getCanUseResponsiveDeliveryOptions()
91
  * @method array getStoreTimeZones()
 
 
92
  *
93
  * @method TIG_PostNL_Model_Core_Cache setPostnlCoreIsEnabled(boolean $value)
94
  * @method TIG_PostNL_Model_Core_Cache setPostnlCoreIsConfigured(boolean $value)
@@ -116,6 +120,8 @@
116
  * @method TIG_PostNL_Model_Core_Cache setMatchedPostnlShippingMethods(array $value)
117
  * @method TIG_PostNL_Model_Core_Cache setCanUseResponsiveDeliveryOptions(boolean $value)
118
  * @method TIG_PostNL_Model_Core_Cache setStoreTimeZones(array $value)
 
 
119
  */
120
  class TIG_PostNL_Model_Core_Cache extends Varien_Object
121
  {
62
  * @method boolean hasMatchedPostnlShippingMethods()
63
  * @method boolean hasCanUseResponsiveDeliveryOptions()
64
  * @method boolean hasStoreTimeZones()
65
+ * @method boolean hasValidDeliveryDaysArray()
66
+ * @method boolean hasDomesticCountry()
67
  *
68
  * @method boolean getPostnlCoreIsEnabled()
69
  * @method boolean getPostnlCoreIsConfigured()
91
  * @method array getMatchedPostnlShippingMethods()
92
  * @method boolean getCanUseResponsiveDeliveryOptions()
93
  * @method array getStoreTimeZones()
94
+ * @method array getValidDeliveryDaysArray()
95
+ * @method array getDomesticCountry()
96
  *
97
  * @method TIG_PostNL_Model_Core_Cache setPostnlCoreIsEnabled(boolean $value)
98
  * @method TIG_PostNL_Model_Core_Cache setPostnlCoreIsConfigured(boolean $value)
120
  * @method TIG_PostNL_Model_Core_Cache setMatchedPostnlShippingMethods(array $value)
121
  * @method TIG_PostNL_Model_Core_Cache setCanUseResponsiveDeliveryOptions(boolean $value)
122
  * @method TIG_PostNL_Model_Core_Cache setStoreTimeZones(array $value)
123
+ * @method TIG_PostNL_Model_Core_Cache setValidDeliveryDaysArray(array $value)
124
+ * @method TIG_PostNL_Model_Core_Cache setDomesticCountry(array $value)
125
  */
126
  class TIG_PostNL_Model_Core_Cache extends Varien_Object
127
  {
app/code/community/TIG/PostNL/Model/Core/Cif.php CHANGED
@@ -247,6 +247,10 @@ class TIG_PostNL_Model_Core_Cif extends TIG_PostNL_Model_Core_Cif_Abstract
247
  'Characteristic' => '118',
248
  'Option' => '006',
249
  ),
 
 
 
 
250
  );
251
 
252
  /**
@@ -667,7 +671,7 @@ class TIG_PostNL_Model_Core_Cif extends TIG_PostNL_Model_Core_Cif_Abstract
667
  $soapParams = array(
668
  'Message' => $message,
669
  'Customer' => $customer,
670
- 'Shipment' => $cifShipment,
671
  );
672
 
673
  $response = $this->call(
@@ -676,8 +680,14 @@ class TIG_PostNL_Model_Core_Cif extends TIG_PostNL_Model_Core_Cif_Abstract
676
  $soapParams
677
  );
678
 
679
- if (!isset($response->Labels)
680
- || !is_object($response->Labels)
 
 
 
 
 
 
681
  ) {
682
  throw new TIG_PostNL_Exception(
683
  Mage::helper('postnl')->__('Invalid generateLabels response: %s', var_export($response, true)),
@@ -758,7 +768,7 @@ class TIG_PostNL_Model_Core_Cif extends TIG_PostNL_Model_Core_Cif_Abstract
758
  $soapParams = array(
759
  'Message' => $message,
760
  'Customer' => $customer,
761
- 'Shipment' => $cifShipment,
762
  );
763
 
764
  $response = $this->call(
@@ -767,8 +777,14 @@ class TIG_PostNL_Model_Core_Cif extends TIG_PostNL_Model_Core_Cif_Abstract
767
  $soapParams
768
  );
769
 
770
- if (!isset($response->Labels)
771
- || !is_object($response->Labels)
 
 
 
 
 
 
772
  ) {
773
  throw new TIG_PostNL_Exception(
774
  Mage::helper('postnl')->__(
@@ -1174,7 +1190,7 @@ class TIG_PostNL_Model_Core_Cif extends TIG_PostNL_Model_Core_Cif_Abstract
1174
  'HouseNr' => $streetData['housenumber'],
1175
  'HouseNrExt' => $streetData['housenumberExtension'],
1176
  'StreetHouseNrExt' => $streetData['fullStreet'],
1177
- 'Zipcode' => str_replace(' ', '', $address->getPostcode()),
1178
  'City' => $address->getCity(),
1179
  'Region' => $address->getRegion(),
1180
  'Countrycode' => $address->getCountry(),
@@ -1397,16 +1413,15 @@ class TIG_PostNL_Model_Core_Cif extends TIG_PostNL_Model_Core_Cif_Abstract
1397
  * address attributes.
1398
  *
1399
  * @param Mage_Sales_Model_Order_Address $address
1400
- * @param boolean $allowFullStreet
1401
  *
1402
  * @return array
1403
  */
1404
- protected function _getStreetData($address, $allowFullStreet = true)
1405
  {
1406
  $helper = Mage::helper('postnl/cif');
1407
  $storeId = $this->getStoreId();
1408
 
1409
- $streetData = $helper->getStreetData($storeId, $address, $allowFullStreet);
1410
 
1411
  return $streetData;
1412
  }
@@ -1715,6 +1730,7 @@ class TIG_PostNL_Model_Core_Cif extends TIG_PostNL_Model_Core_Cif_Abstract
1715
 
1716
  if (empty($customsValue)) {
1717
  $productId = $shipmentItem->getProductId();
 
1718
  throw new TIG_PostNL_Exception(
1719
  Mage::helper('postnl')->__(
1720
  'Missing customs value for product <a href="%s" target="_blank">#%s</a>.',
@@ -1752,6 +1768,7 @@ class TIG_PostNL_Model_Core_Cif extends TIG_PostNL_Model_Core_Cif_Abstract
1752
 
1753
  if (empty($description)) {
1754
  $productId = $shipmentItem->getProductId();
 
1755
  throw new TIG_PostNL_Exception(
1756
  Mage::helper('postnl')->__(
1757
  'Missing customs description for product <a href="%s" target="_blank">#%s</a>.',
247
  'Characteristic' => '118',
248
  'Option' => '006',
249
  ),
250
+ 'Sunday' => array(
251
+ 'Characteristic' => '101',
252
+ 'Option' => '008',
253
+ ),
254
  );
255
 
256
  /**
671
  $soapParams = array(
672
  'Message' => $message,
673
  'Customer' => $customer,
674
+ 'Shipments' => array('Shipment' => $cifShipment),
675
  );
676
 
677
  $response = $this->call(
680
  $soapParams
681
  );
682
 
683
+ /**
684
+ * Since Cif structure has been changed as of version 2.0, $shipment is used as a pointer to the shipment data
685
+ * to reach for the label object.
686
+ */
687
+ $shipment = $response->ResponseShipments->ResponseShipment[0];
688
+
689
+ if (!isset($shipment->Labels)
690
+ || !is_object($shipment->Labels)
691
  ) {
692
  throw new TIG_PostNL_Exception(
693
  Mage::helper('postnl')->__('Invalid generateLabels response: %s', var_export($response, true)),
768
  $soapParams = array(
769
  'Message' => $message,
770
  'Customer' => $customer,
771
+ 'Shipments' => array('Shipment' => $cifShipment),
772
  );
773
 
774
  $response = $this->call(
777
  $soapParams
778
  );
779
 
780
+ /**
781
+ * Since Cif structure has been changed as of version 2.0, $shipment is used as a pointer to the shipment data
782
+ * to reach for the label object.
783
+ */
784
+ $shipment = $response->ResponseShipments->ResponseShipment[0];
785
+
786
+ if (!isset($shipment->Labels)
787
+ || !is_object($shipment->Labels)
788
  ) {
789
  throw new TIG_PostNL_Exception(
790
  Mage::helper('postnl')->__(
1190
  'HouseNr' => $streetData['housenumber'],
1191
  'HouseNrExt' => $streetData['housenumberExtension'],
1192
  'StreetHouseNrExt' => $streetData['fullStreet'],
1193
+ 'Zipcode' => strtoupper(str_replace(' ', '', $address->getPostcode())),
1194
  'City' => $address->getCity(),
1195
  'Region' => $address->getRegion(),
1196
  'Countrycode' => $address->getCountry(),
1413
  * address attributes.
1414
  *
1415
  * @param Mage_Sales_Model_Order_Address $address
 
1416
  *
1417
  * @return array
1418
  */
1419
+ protected function _getStreetData($address)
1420
  {
1421
  $helper = Mage::helper('postnl/cif');
1422
  $storeId = $this->getStoreId();
1423
 
1424
+ $streetData = $helper->getStreetData($storeId, $address, false);
1425
 
1426
  return $streetData;
1427
  }
1730
 
1731
  if (empty($customsValue)) {
1732
  $productId = $shipmentItem->getProductId();
1733
+ /** @noinspection HtmlUnknownTarget */
1734
  throw new TIG_PostNL_Exception(
1735
  Mage::helper('postnl')->__(
1736
  'Missing customs value for product <a href="%s" target="_blank">#%s</a>.',
1768
 
1769
  if (empty($description)) {
1770
  $productId = $shipmentItem->getProductId();
1771
+ /** @noinspection HtmlUnknownTarget */
1772
  throw new TIG_PostNL_Exception(
1773
  Mage::helper('postnl')->__(
1774
  'Missing customs description for product <a href="%s" target="_blank">#%s</a>.',
app/code/community/TIG/PostNL/Model/Core/Observer/Cron.php CHANGED
@@ -176,15 +176,10 @@ class TIG_PostNL_Model_Core_Observer_Cron
176
 
177
  $helper->cronLog('Attempting to read temp label files from %s.', $tempLabelsDirectory);
178
 
179
- /**
180
- * Get all temporary label files in the directory
181
- */
182
- $files = glob($tempLabelsDirectory . DS . '*' . $tempLabelName);
183
-
184
  /**
185
  * If the directory cannot be read, throw an exception.
186
  */
187
- if ($files === false) {
188
  $helper->cronLog('Temporary label storage is unreadable. Exiting cron.');
189
  throw new TIG_PostNL_Exception(
190
  $helper->__('Unable to read directory: %s', $tempLabelsDirectory),
@@ -192,6 +187,11 @@ class TIG_PostNL_Model_Core_Observer_Cron
192
  );
193
  }
194
 
 
 
 
 
 
195
  $fileCount = count($files);
196
  if ($fileCount < 1) {
197
  $helper->cronLog('No temporary labels found. Exiting cron.');
@@ -263,15 +263,10 @@ class TIG_PostNL_Model_Core_Observer_Cron
263
 
264
  $helper->cronLog('Attempting to read lock files from %s.', $locksDirectory);
265
 
266
- /**
267
- * Get all PostNL lock files in the directory
268
- */
269
- $files = glob($locksDirectory . DS . 'postnl_process_*');
270
-
271
  /**
272
  * If the directory cannot be read, throw an exception.
273
  */
274
- if ($files === false) {
275
  $helper->cronLog('Lock storage is unreadable. Exiting cron.');
276
  throw new TIG_PostNL_Exception(
277
  $helper->__('Unable to read directory: %s', $locksDirectory),
@@ -279,6 +274,11 @@ class TIG_PostNL_Model_Core_Observer_Cron
279
  );
280
  }
281
 
 
 
 
 
 
282
  $fileCount = count($files);
283
  if ($fileCount < 1) {
284
  $helper->cronLog('No PostNL locks found. Exiting cron.');
176
 
177
  $helper->cronLog('Attempting to read temp label files from %s.', $tempLabelsDirectory);
178
 
 
 
 
 
 
179
  /**
180
  * If the directory cannot be read, throw an exception.
181
  */
182
+ if (!is_readable($tempLabelsDirectory)) {
183
  $helper->cronLog('Temporary label storage is unreadable. Exiting cron.');
184
  throw new TIG_PostNL_Exception(
185
  $helper->__('Unable to read directory: %s', $tempLabelsDirectory),
187
  );
188
  }
189
 
190
+ /**
191
+ * Get all temporary label files in the directory
192
+ */
193
+ $files = glob($tempLabelsDirectory . DS . '*' . $tempLabelName);
194
+
195
  $fileCount = count($files);
196
  if ($fileCount < 1) {
197
  $helper->cronLog('No temporary labels found. Exiting cron.');
263
 
264
  $helper->cronLog('Attempting to read lock files from %s.', $locksDirectory);
265
 
 
 
 
 
 
266
  /**
267
  * If the directory cannot be read, throw an exception.
268
  */
269
+ if (!is_readable($locksDirectory)) {
270
  $helper->cronLog('Lock storage is unreadable. Exiting cron.');
271
  throw new TIG_PostNL_Exception(
272
  $helper->__('Unable to read directory: %s', $locksDirectory),
274
  );
275
  }
276
 
277
+ /**
278
+ * Get all PostNL lock files in the directory
279
+ */
280
+ $files = glob($locksDirectory . DS . 'postnl_process_*');
281
+
282
  $fileCount = count($files);
283
  if ($fileCount < 1) {
284
  $helper->cronLog('No PostNL locks found. Exiting cron.');
app/code/community/TIG/PostNL/Model/Core/Order.php CHANGED
@@ -105,6 +105,7 @@ class TIG_PostNL_Model_Core_Order extends Mage_Core_Model_Abstract
105
  */
106
  const TYPE_OVERDAG = 'Overdag';
107
  const TYPE_AVOND = 'Avond';
 
108
  const TYPE_PG = 'PG';
109
  const TYPE_PGE = 'PGE';
110
  const TYPE_PA = 'PA';
105
  */
106
  const TYPE_OVERDAG = 'Overdag';
107
  const TYPE_AVOND = 'Avond';
108
+ const TYPE_SUNDAY = 'Sunday';
109
  const TYPE_PG = 'PG';
110
  const TYPE_PGE = 'PGE';
111
  const TYPE_PA = 'PA';
app/code/community/TIG/PostNL/Model/Core/Packingslip/Pdf/Items/Invoice/Default.php CHANGED
@@ -61,14 +61,20 @@ class TIG_PostNL_Model_Core_Packingslip_Pdf_Items_Invoice_Default extends Mage_S
61
  $i = 0;
62
  $feed = 20;
63
  $previousFeed = 0;
64
- $nameFeed = 20;
65
  foreach ($columns as $column) {
66
- if ($i > 0) {
67
  $align = 'right';
68
  } else {
69
  $align = 'left';
70
  }
71
 
 
 
 
 
 
 
72
  $feed += $previousFeed;
73
  $previousFeed = $column['width'];
74
 
@@ -140,7 +146,7 @@ class TIG_PostNL_Model_Core_Packingslip_Pdf_Items_Invoice_Default extends Mage_S
140
  $value = Mage::helper('core/string')->str_split($item->getName(), 60, true, true);
141
  break;
142
  case 'sku':
143
- $value = Mage::helper('core/string')->str_split($this->getSku($item), 25);
144
  break;
145
  case 'price':
146
  $value = $this->getOrder()->formatPriceTxt($item->getPrice());
61
  $i = 0;
62
  $feed = 20;
63
  $previousFeed = 0;
64
+ $nameFeed = 30;
65
  foreach ($columns as $column) {
66
+ if ($i > 1) {
67
  $align = 'right';
68
  } else {
69
  $align = 'left';
70
  }
71
 
72
+ if($i == 1){
73
+ $previousFeed -= 20;
74
+ }else if ($i == 2){
75
+ $previousFeed += 20;
76
+ }
77
+
78
  $feed += $previousFeed;
79
  $previousFeed = $column['width'];
80
 
146
  $value = Mage::helper('core/string')->str_split($item->getName(), 60, true, true);
147
  break;
148
  case 'sku':
149
+ $value = Mage::helper('core/string')->str_split($this->getSku($item), 20);
150
  break;
151
  case 'price':
152
  $value = $this->getOrder()->formatPriceTxt($item->getPrice());
app/code/community/TIG/PostNL/Model/Core/Service/Shipment.php CHANGED
@@ -219,7 +219,7 @@ class TIG_PostNL_Model_Core_Service_Shipment
219
  $shipments = Mage::getResourceModel('postnl_core/shipment_collection')
220
  ->addFieldToFilter('shipment_id', array('in' => $shipmentIds))
221
  ->addFieldToFilter(
222
- '`order`.`shipping_method`',
223
  array(
224
  'regexp' => $postnlShippingMethodsRegex
225
  )
@@ -238,7 +238,7 @@ class TIG_PostNL_Model_Core_Service_Shipment
238
  $shipments = Mage::getResourceModel('sales/order_shipment_collection')
239
  ->addFieldToFilter('main_table.entity_id', array('in' => $shipmentIds))
240
  ->addFieldToFilter(
241
- '`order`.`shipping_method`',
242
  array(
243
  'regexp' => $postnlShippingMethodsRegex
244
  )
219
  $shipments = Mage::getResourceModel('postnl_core/shipment_collection')
220
  ->addFieldToFilter('shipment_id', array('in' => $shipmentIds))
221
  ->addFieldToFilter(
222
+ 'order.shipping_method',
223
  array(
224
  'regexp' => $postnlShippingMethodsRegex
225
  )
238
  $shipments = Mage::getResourceModel('sales/order_shipment_collection')
239
  ->addFieldToFilter('main_table.entity_id', array('in' => $shipmentIds))
240
  ->addFieldToFilter(
241
+ 'order.shipping_method',
242
  array(
243
  'regexp' => $postnlShippingMethodsRegex
244
  )
app/code/community/TIG/PostNL/Model/Core/Shipment.php CHANGED
@@ -76,7 +76,7 @@
76
  * - postnl_shipment_send_return_label_email_before
77
  * - postnl_shipment_send_return_label_email_after
78
  *
79
- * @method boolean getIsDutchShipment()
80
  * @method boolean getIsEuShipment()
81
  * @method boolean getIsGlobalShipment()
82
  * @method int getParcelCount()
@@ -97,6 +97,7 @@
97
  * @method int getLabelsPrinted()
98
  * @method bool|int getIsPakketautomaat()
99
  * @method boolean getIsBuspakjeShipment()
 
100
  * @method int getReturnLabelsPrinted()
101
  * @method string getExpectedDeliveryTimeStart()
102
  * @method string getExpectedDeliveryTimeEnd()
@@ -132,6 +133,7 @@
132
  * @method TIG_PostNL_Model_Core_Shipment setIsBuspakje(int $value)
133
  * @method TIG_PostNL_Model_Core_Shipment setShipmentIncrementId(string $value)
134
  * @method TIG_PostNL_Model_Core_Shipment setIsBuspakjeShipment(bool $value)
 
135
  * @method TIG_PostNL_Model_Core_Shipment setDefaultProductCode(string $value)
136
  * @method TIG_PostNL_Model_Core_Shipment setLabels(mixed $value)
137
  * @method TIG_PostNL_Model_Core_Shipment setProductOption(string $value)
@@ -162,6 +164,7 @@
162
  * @method boolean hasMainBarcode()
163
  * @method boolean hasShipmentIncrementId()
164
  * @method boolean hasIsBuspakjeShipment()
 
165
  * @method boolean hasDefaultProductCode()
166
  * @method boolean hasProductOption()
167
  * @method boolean hasPayment()
@@ -210,6 +213,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
210
  const SHIPMENT_TYPE_EPS = 'eps';
211
  const SHIPMENT_TYPE_GLOBALPACK = 'globalpack';
212
  const SHIPMENT_TYPE_BUSPAKJE = 'buspakje';
 
213
 
214
  /**
215
  * Xpaths to default product options settings.
@@ -231,6 +235,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
231
  const XPATH_ALTERNATIVE_DEFAULT_MAX_AMOUNT = 'postnl/grid/alternative_default_max_amount';
232
  const XPATH_ALTERNATIVE_DEFAULT_OPTION = 'postnl/grid/alternative_default_option';
233
  const XPATH_DEFAULT_STATED_ADDRESS_ONLY_OPTION = 'postnl/grid/default_stated_address_only_product_option';
 
234
 
235
  /**
236
  * Xpath to weight per parcel config setting.
@@ -287,17 +292,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
287
  *
288
  * @var array
289
  */
290
- protected $_extraCoverProductCodes = array(
291
- '3087',
292
- '3094',
293
- '3091',
294
- '3097',
295
- '3536',
296
- '3546',
297
- '3534',
298
- '3544',
299
- '4945',
300
- );
301
 
302
  /**
303
  * Array of labels that need to be saved all at once.
@@ -577,13 +572,14 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
577
  }
578
 
579
  /**
580
- * Gets a PostNL helper object
581
  *
582
  * @param string $type
583
  *
584
- * @return TIG_PosTNL_Helper_Data|TIG_PosTNL_Helper_Cif|TIG_PosTNL_Helper_Carrier|TIG_PosTNL_Helper_DeliveryOptions
585
- * |TIG_PosTNL_Helper_AddressValidation|TIG_PosTNL_Helper_Checkout|TIG_PosTNL_Helper_Mijnpakket
586
- * |TIG_PosTNL_Helper_Parcelware|TIG_PosTNL_Helper_Payment|TIG_PosTNL_Helper_Webservices
 
587
  */
588
  public function getHelper($type = 'data')
589
  {
@@ -598,7 +594,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
598
  }
599
 
600
  /**
601
- * Gets the process used for locking and unlocking this shipment
602
  *
603
  * @return TIG_PostNL_Model_Core_Shipment_Process
604
  */
@@ -619,7 +615,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
619
  }
620
 
621
  /**
622
- * Get an array of labels that have to be saved together
623
  *
624
  * @return array
625
  */
@@ -629,12 +625,20 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
629
  }
630
 
631
  /**
632
- * Get all product codes that have extra cover
633
  *
634
  * @return array
635
  */
636
  public function getExtraCoverProductCodes()
637
  {
 
 
 
 
 
 
 
 
638
  return $this->_extraCoverProductCodes;
639
  }
640
 
@@ -691,6 +695,15 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
691
  return null;
692
  }
693
 
 
 
 
 
 
 
 
 
 
694
  /**
695
  * Get all product options.
696
  */
@@ -755,7 +768,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
755
  return self::SHIPMENT_TYPE_PG_COD;
756
  }
757
 
758
- if ($this->isDutchShipment()) {
759
  return self::SHIPMENT_TYPE_DOMESTIC_COD;
760
  }
761
  }
@@ -780,7 +793,11 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
780
  return self::SHIPMENT_TYPE_BUSPAKJE;
781
  }
782
 
783
- if ($this->isDutchShipment()) {
 
 
 
 
784
  return self::SHIPMENT_TYPE_DOMESTIC;
785
  }
786
 
@@ -1046,7 +1063,9 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
1046
  return false;
1047
  }
1048
 
1049
- $barcodeUrl = $this->_getBarcodeUrl($barcode, $forceNl);
 
 
1050
 
1051
  $this->setBarcodeUrl($barcodeUrl);
1052
  return $barcodeUrl;
@@ -1176,6 +1195,9 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
1176
  case self::SHIPMENT_TYPE_BUSPAKJE:
1177
  $xpath = self::XPATH_DEFAULT_BUSPAKJE_PRODUCT_OPTION;
1178
  break;
 
 
 
1179
  //no default
1180
  }
1181
 
@@ -1533,8 +1555,8 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
1533
  /**
1534
  * Gets allowed product options for the current shipment.
1535
  *
1536
- * @param boolean $flat
1537
- * @param boolean $checkBuspakje
1538
  *
1539
  * @return array
1540
  *
@@ -1582,6 +1604,9 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
1582
  case self::SHIPMENT_TYPE_BUSPAKJE:
1583
  $allowedProductCodes = $cifHelper->getBuspakjeProductCodes($flat);
1584
  break;
 
 
 
1585
  default:
1586
  $allowedProductCodes = array();
1587
  break;
@@ -1613,13 +1638,11 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
1613
  }
1614
 
1615
  /**
1616
- * @var TIG_PostNL_Helper_DeliveryOptions $helper
1617
  */
1618
- $helper = $this->getHelper('deliveryOptions');
1619
  $orderDate = Mage::getSingleton('core/date')->date(null, $this->getOrder()->getCreatedAt());
1620
- $deliveryDate = $helper->getDeliveryDate($orderDate, $this->getStoreId());
1621
-
1622
- $deliveryDate = $helper->getValidDeliveryDate($deliveryDate)->format('Y-m-d H:i:s');
1623
 
1624
  return $deliveryDate;
1625
  }
@@ -1846,10 +1869,10 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
1846
  */
1847
  $deliveryDate = new DateTime($deliveryDate, new DateTimeZone('UTC'));
1848
 
1849
- $confirmDate = clone $deliveryDate;
1850
- $confirmDate = $confirmDate->sub(new DateInterval('P1D'));
1851
-
1852
- $this->getHelper('deliveryOptions')->getValidConfirmDate($confirmDate);
1853
 
1854
  $this->setData('confirm_date', $confirmDate->getTimestamp());
1855
  return $this;
@@ -2035,7 +2058,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
2035
  $readConn = $coreResource->getConnection('core/read');
2036
 
2037
  $select = $readConn->select();
2038
- $select->from($coreResource->getTableName('postnl_core/shipment_label', array('label_id')))
2039
  ->where('`label_type` = ?', $labelType)
2040
  ->where('`parent_id` = ?', $this->getId());
2041
 
@@ -2147,13 +2170,13 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
2147
  }
2148
 
2149
  /**
2150
- * Check if the shipping destination of this shipment is NL
2151
  *
2152
  * @return boolean
2153
  */
2154
- public function isDutchShipment()
2155
  {
2156
- if ($this->getIsDutchShipment()) {
2157
  return true;
2158
  }
2159
 
@@ -2164,7 +2187,8 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
2164
 
2165
  $shippingDestination = $shippingAddress->getCountryId();
2166
 
2167
- if ($shippingDestination == 'NL') {
 
2168
  return true;
2169
  }
2170
 
@@ -2182,6 +2206,13 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
2182
  return true;
2183
  }
2184
 
 
 
 
 
 
 
 
2185
  $shippingAddress = $this->getShippingAddress();
2186
  if (!$shippingAddress) {
2187
  return false;
@@ -2213,7 +2244,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
2213
  return true;
2214
  }
2215
 
2216
- if (!$this->isDutchShipment() && !$this->isEuShipment()) {
2217
  return true;
2218
  }
2219
 
@@ -2365,6 +2396,37 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
2365
  return $isBuspakje;
2366
  }
2367
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2368
  /**
2369
  * Checks if this shipment is a COD shipment.
2370
  *
@@ -2474,7 +2536,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
2474
  /**
2475
  * Return barcodes are only available for Dutch parcel shipments.
2476
  */
2477
- if (!$this->isDutchShipment() || $this->isBuspakjeShipment()) {
2478
  return false;
2479
  }
2480
 
@@ -2866,7 +2928,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
2866
  */
2867
  public function canPrintReturnLabels()
2868
  {
2869
- if (!$this->isDutchShipment() || $this->isBuspakjeShipment()) {
2870
  return false;
2871
  }
2872
 
@@ -2908,7 +2970,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
2908
  return false;
2909
  }
2910
 
2911
- if (!$this->isDutchShipment()) {
2912
  return false;
2913
  }
2914
 
@@ -3222,7 +3284,13 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
3222
  );
3223
  }
3224
 
3225
- if (!isset($result->Labels, $result->Labels->Label)) {
 
 
 
 
 
 
3226
  throw new TIG_PostNL_Exception(
3227
  Mage::helper('postnl')->__(
3228
  'The confirmAndPrintLabel action returned an invalid response: %s',
@@ -3231,13 +3299,13 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
3231
  'POSTNL-0071'
3232
  );
3233
  }
3234
- $labels = $result->Labels->Label;
3235
 
3236
  /**
3237
  * If this is an EU shipment and a non-combi label was returned, the product code needs to be updated.
3238
  */
3239
  if ($this->isEuShipment() && !$this->_isCombiLabel()) {
3240
- $this->setProductCode($result->ProductCodeDelivery);
3241
  }
3242
 
3243
  return $labels;
@@ -4051,10 +4119,11 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
4051
  *
4052
  * @param string $barcode
4053
  * @param boolean $forceNl
 
4054
  *
4055
  * @return string
4056
  */
4057
- protected function _getBarcodeUrl($barcode, $forceNl = false)
4058
  {
4059
  /**
4060
  * @var TIG_PostNL_Helper_Carrier $helper
@@ -4064,7 +4133,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
4064
  $url = '';
4065
  $shippingAddress = $this->getShippingAddress();
4066
  if ($shippingAddress) {
4067
- $url = $helper->getBarcodeUrl($barcode, $shippingAddress, false, $forceNl);
4068
  }
4069
 
4070
  return $url;
@@ -4468,7 +4537,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
4468
  */
4469
  protected function _getIsBuspakje()
4470
  {
4471
- if (!$this->isDutchShipment()
4472
  || $this->isPakketautomaatShipment()
4473
  || $this->isPakjeGemakShipment()
4474
  || $this->isCod()
@@ -4502,9 +4571,62 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
4502
  return false;
4503
  }
4504
 
 
 
 
 
 
 
 
 
4505
  return true;
4506
  }
4507
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4508
  /*******************************************************************************************************************
4509
  * PRODUCT CODE METHODS
4510
  ******************************************************************************************************************/
@@ -4565,6 +4687,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
4565
  && (!isset($codes['is_buspakje'])
4566
  || $codes['is_buspakje'] == '-1'
4567
  )
 
4568
  ) {
4569
  $isBuspakje = $this->_getIsBuspakje();
4570
  } else {
@@ -4578,15 +4701,16 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
4578
  if ($isBuspakje) {
4579
  $shipmentType = self::SHIPMENT_TYPE_BUSPAKJE;
4580
  $this->setShipmentType($shipmentType);
 
 
4581
  }
4582
 
4583
  /**
4584
  * The merchant may choose to use the default product code for this shipment.
4585
  */
4586
- if (array_key_exists('use_default', $codes) && $codes['use_default'] == '1') {
4587
  return $this->getDefaultProductCode();
4588
  }
4589
-
4590
  /**
4591
  * Get the selected product code for the current shipment's shipment type.
4592
  */
@@ -4748,7 +4872,7 @@ class TIG_PostNL_Model_Core_Shipment extends Mage_Core_Model_Abstract
4748
  /**
4749
  * Only Dutch shipments that are not COD support multi-colli shipments.
4750
  */
4751
- if (!$this->isDutchShipment() || $this->isCod()) {
4752
  return 1;
4753
  }
4754
 
76
  * - postnl_shipment_send_return_label_email_before
77
  * - postnl_shipment_send_return_label_email_after
78
  *
79
+ * @method boolean getIsDomesticShipment()
80
  * @method boolean getIsEuShipment()
81
  * @method boolean getIsGlobalShipment()
82
  * @method int getParcelCount()
97
  * @method int getLabelsPrinted()
98
  * @method bool|int getIsPakketautomaat()
99
  * @method boolean getIsBuspakjeShipment()
100
+ * @method boolean getIsSundayShipment()
101
  * @method int getReturnLabelsPrinted()
102
  * @method string getExpectedDeliveryTimeStart()
103
  * @method string getExpectedDeliveryTimeEnd()
133
  * @method TIG_PostNL_Model_Core_Shipment setIsBuspakje(int $value)
134
  * @method TIG_PostNL_Model_Core_Shipment setShipmentIncrementId(string $value)
135
  * @method TIG_PostNL_Model_Core_Shipment setIsBuspakjeShipment(bool $value)
136
+ * @method TIG_PostNL_Model_Core_Shipment setIsSundayShipment(bool $value)
137
  * @method TIG_PostNL_Model_Core_Shipment setDefaultProductCode(string $value)
138
  * @method TIG_PostNL_Model_Core_Shipment setLabels(mixed $value)
139
  * @method TIG_PostNL_Model_Core_Shipment setProductOption(string $value)
164
  * @method boolean hasMainBarcode()
165
  * @method boolean hasShipmentIncrementId()
166
  * @method boolean hasIsBuspakjeShipment()
167
+ * @method boolean hasIsSundayShipment()
168
  * @method boolean hasDefaultProductCode()
169
  * @method boolean hasProductOption()
170
  * @method boolean hasPayment()
213
  const SHIPMENT_TYPE_EPS = 'eps';
214
  const SHIPMENT_TYPE_GLOBALPACK = 'globalpack';
215
  const SHIPMENT_TYPE_BUSPAKJE = 'buspakje';
216
+ const SHIPMENT_TYPE_SUNDAY = 'sunday';
217
 
218
  /**
219
  * Xpaths to default product options settings.
235
  const XPATH_ALTERNATIVE_DEFAULT_MAX_AMOUNT = 'postnl/grid/alternative_default_max_amount';
236
  const XPATH_ALTERNATIVE_DEFAULT_OPTION = 'postnl/grid/alternative_default_option';
237
  const XPATH_DEFAULT_STATED_ADDRESS_ONLY_OPTION = 'postnl/grid/default_stated_address_only_product_option';
238
+ const XPATH_DEFAULT_SUNDAY_PRODUCT_OPTION = 'postnl/grid/default_sunday_product_option';
239
 
240
  /**
241
  * Xpath to weight per parcel config setting.
292
  *
293
  * @var array
294
  */
295
+ protected $_extraCoverProductCodes;
 
 
 
 
 
 
 
 
 
 
296
 
297
  /**
298
  * Array of labels that need to be saved all at once.
572
  }
573
 
574
  /**
575
+ * Gets a PostNL helper object.
576
  *
577
  * @param string $type
578
  *
579
+ * @return TIG_PostNL_Helper_Data|TIG_PostNL_Helper_Cif|TIG_PostNL_Helper_Carrier|TIG_PostNL_Helper_DeliveryOptions
580
+ * |TIG_PostNL_Helper_AddressValidation|TIG_PostNL_Helper_Checkout|TIG_PostNL_Helper_Mijnpakket
581
+ * |TIG_PostNL_Helper_Parcelware|TIG_PostNL_Helper_Payment|TIG_PostNL_Helper_Webservices
582
+ * |TIG_PostNL_Helper_Date
583
  */
584
  public function getHelper($type = 'data')
585
  {
594
  }
595
 
596
  /**
597
+ * Gets the process used for locking and unlocking this shipment.
598
  *
599
  * @return TIG_PostNL_Model_Core_Shipment_Process
600
  */
615
  }
616
 
617
  /**
618
+ * Get an array of labels that have to be saved together.
619
  *
620
  * @return array
621
  */
625
  }
626
 
627
  /**
628
+ * Get all product codes that have extra cover.
629
  *
630
  * @return array
631
  */
632
  public function getExtraCoverProductCodes()
633
  {
634
+ if (!empty($this->_extraCoverProductCodes)) {
635
+ return $this->_extraCoverProductCodes;
636
+ }
637
+
638
+ $productCodes = Mage::getModel('postnl_core/system_config_source_allProductOptions')
639
+ ->getOptions(array('isExtraCover' => true), true);
640
+
641
+ $this->_extraCoverProductCodes = array_keys($productCodes);
642
  return $this->_extraCoverProductCodes;
643
  }
644
 
695
  return null;
696
  }
697
 
698
+ /**
699
+ * If the product code was switched from a combi-label product code to a regular one, switch it back so we can
700
+ * find the product code that was chosen by the merchant.
701
+ */
702
+ $combiLabelProductCodes = Mage::helper('postnl/cif')->getCombiLabelProductCodes();
703
+ if (isset($combiLabelProductCodes[$productCode])) {
704
+ $productCode = $combiLabelProductCodes[$productCode];
705
+ }
706
+
707
  /**
708
  * Get all product options.
709
  */
768
  return self::SHIPMENT_TYPE_PG_COD;
769
  }
770
 
771
+ if ($this->isDomesticShipment()) {
772
  return self::SHIPMENT_TYPE_DOMESTIC_COD;
773
  }
774
  }
793
  return self::SHIPMENT_TYPE_BUSPAKJE;
794
  }
795
 
796
+ if ($this->isSundayShipment()) {
797
+ return self::SHIPMENT_TYPE_SUNDAY;
798
+ }
799
+
800
+ if ($this->isDomesticShipment()) {
801
  return self::SHIPMENT_TYPE_DOMESTIC;
802
  }
803
 
1063
  return false;
1064
  }
1065
 
1066
+ $lang = substr(Mage::getStoreConfig('general/locale/code', $this->getStoreId()), 0, 2);
1067
+
1068
+ $barcodeUrl = $this->_getBarcodeUrl($barcode, $forceNl, $lang);
1069
 
1070
  $this->setBarcodeUrl($barcodeUrl);
1071
  return $barcodeUrl;
1195
  case self::SHIPMENT_TYPE_BUSPAKJE:
1196
  $xpath = self::XPATH_DEFAULT_BUSPAKJE_PRODUCT_OPTION;
1197
  break;
1198
+ case self::SHIPMENT_TYPE_SUNDAY:
1199
+ $xpath = self::XPATH_DEFAULT_SUNDAY_PRODUCT_OPTION;
1200
+ break;
1201
  //no default
1202
  }
1203
 
1555
  /**
1556
  * Gets allowed product options for the current shipment.
1557
  *
1558
+ * @param boolean $flat
1559
+ * @param boolean $checkBuspakje
1560
  *
1561
  * @return array
1562
  *
1604
  case self::SHIPMENT_TYPE_BUSPAKJE:
1605
  $allowedProductCodes = $cifHelper->getBuspakjeProductCodes($flat);
1606
  break;
1607
+ case self::SHIPMENT_TYPE_SUNDAY:
1608
+ $allowedProductCodes = $cifHelper->getSundayProductCodes($flat);
1609
+ break;
1610
  default:
1611
  $allowedProductCodes = array();
1612
  break;
1638
  }
1639
 
1640
  /**
1641
+ * @var TIG_PostNL_Helper_Date $helper
1642
  */
1643
+ $helper = Mage::helper('postnl/date');
1644
  $orderDate = Mage::getSingleton('core/date')->date(null, $this->getOrder()->getCreatedAt());
1645
+ $deliveryDate = $helper->getDeliveryDate($orderDate, $this->getStoreId())->format('Y-m-d H:i:s');
 
 
1646
 
1647
  return $deliveryDate;
1648
  }
1869
  */
1870
  $deliveryDate = new DateTime($deliveryDate, new DateTimeZone('UTC'));
1871
 
1872
+ /** @var TIG_PostNL_Helper_Date $helper */
1873
+ $helper = Mage::helper('postnl/date');
1874
+ $storeId = $postnlOrder->getStoreId();
1875
+ $confirmDate = $helper->getShippingDateFromDeliveryDate($deliveryDate, $storeId);
1876
 
1877
  $this->setData('confirm_date', $confirmDate->getTimestamp());
1878
  return $this;
2058
  $readConn = $coreResource->getConnection('core/read');
2059
 
2060
  $select = $readConn->select();
2061
+ $select->from($coreResource->getTableName('postnl_core/shipment_label'))
2062
  ->where('`label_type` = ?', $labelType)
2063
  ->where('`parent_id` = ?', $this->getId());
2064
 
2170
  }
2171
 
2172
  /**
2173
+ * Check if the shipping destination of this shipment is Domestic.
2174
  *
2175
  * @return boolean
2176
  */
2177
+ public function isDomesticShipment()
2178
  {
2179
+ if ($this->getIsDomesticShipment()) {
2180
  return true;
2181
  }
2182
 
2187
 
2188
  $shippingDestination = $shippingAddress->getCountryId();
2189
 
2190
+ $domesticCountry = $this->getHelper()->getDomesticCountry();
2191
+ if ($shippingDestination == $domesticCountry) {
2192
  return true;
2193
  }
2194
 
2206
  return true;
2207
  }
2208
 
2209
+ /**
2210
+ * It is possible for a shipment to be both domestic and EPS. In this case domestic takes priority.
2211
+ */
2212
+ if ($this->isDomesticShipment()) {
2213
+ return false;
2214
+ }
2215
+
2216
  $shippingAddress = $this->getShippingAddress();
2217
  if (!$shippingAddress) {
2218
  return false;
2244
  return true;
2245
  }
2246
 
2247
+ if (!$this->isDomesticShipment() && !$this->isEuShipment()) {
2248
  return true;
2249
  }
2250
 
2396
  return $isBuspakje;
2397
  }
2398
 
2399
+ /**
2400
+ * Check if this shipment is a Sunday shipment.
2401
+ *
2402
+ * @return boolean
2403
+ */
2404
+ public function isSundayShipment()
2405
+ {
2406
+ if ($this->hasIsSundayShipment()) {
2407
+ return $this->getIsSundayShipment();
2408
+ }
2409
+
2410
+ $isSunday = $this->isSunday();
2411
+
2412
+ $this->setIsSundayShipment($isSunday);
2413
+ return $isSunday;
2414
+ }
2415
+
2416
+ /**
2417
+ * Checks if the order of this shipment is a Sunday order.
2418
+ *
2419
+ * @return bool
2420
+ */
2421
+ public function isSunday()
2422
+ {
2423
+ if ($this->getPostnlOrder()->getType() == 'Sunday') {
2424
+ return true;
2425
+ }
2426
+
2427
+ return false;
2428
+ }
2429
+
2430
  /**
2431
  * Checks if this shipment is a COD shipment.
2432
  *
2536
  /**
2537
  * Return barcodes are only available for Dutch parcel shipments.
2538
  */
2539
+ if (!$this->isDomesticShipment() || $this->isBuspakjeShipment()) {
2540
  return false;
2541
  }
2542
 
2928
  */
2929
  public function canPrintReturnLabels()
2930
  {
2931
+ if (!$this->isDomesticShipment() || $this->isBuspakjeShipment()) {
2932
  return false;
2933
  }
2934
 
2970
  return false;
2971
  }
2972
 
2973
+ if (!$this->isDomesticShipment()) {
2974
  return false;
2975
  }
2976
 
3284
  );
3285
  }
3286
 
3287
+ /**
3288
+ * Since Cif structure has been changed as of version 2.0, $shipment is used as a pointer to the shipment data
3289
+ * to reach for the label object.
3290
+ */
3291
+ $shipment = $result->ResponseShipments->ResponseShipment[0];
3292
+
3293
+ if (!isset($shipment->Labels, $shipment->Labels->Label)) {
3294
  throw new TIG_PostNL_Exception(
3295
  Mage::helper('postnl')->__(
3296
  'The confirmAndPrintLabel action returned an invalid response: %s',
3299
  'POSTNL-0071'
3300
  );
3301
  }
3302
+ $labels = $shipment->Labels->Label;
3303
 
3304
  /**
3305
  * If this is an EU shipment and a non-combi label was returned, the product code needs to be updated.
3306
  */
3307
  if ($this->isEuShipment() && !$this->_isCombiLabel()) {
3308
+ $this->setProductCode($shipment->ProductCodeDelivery);
3309
  }
3310
 
3311
  return $labels;
4119
  *
4120
  * @param string $barcode
4121
  * @param boolean $forceNl
4122
+ * @param string $lang
4123
  *
4124
  * @return string
4125
  */
4126
+ protected function _getBarcodeUrl($barcode, $forceNl = false, $lang)
4127
  {
4128
  /**
4129
  * @var TIG_PostNL_Helper_Carrier $helper
4133
  $url = '';
4134
  $shippingAddress = $this->getShippingAddress();
4135
  if ($shippingAddress) {
4136
+ $url = $helper->getBarcodeUrl($barcode, $shippingAddress, $lang, $forceNl);
4137
  }
4138
 
4139
  return $url;
4537
  */
4538
  protected function _getIsBuspakje()
4539
  {
4540
+ if (!$this->isDomesticShipment()
4541
  || $this->isPakketautomaatShipment()
4542
  || $this->isPakjeGemakShipment()
4543
  || $this->isCod()
4571
  return false;
4572
  }
4573
 
4574
+ /**
4575
+ * Buspakje shipments can't be delivered on a monday or tuesday.
4576
+ */
4577
+ $deliveryDate = DateTime::createFromFormat('Y-m-d H:i:s', $this->getDeliveryDate(), new DateTimeZone('UTC'));
4578
+ if ($deliveryDate->format('N') === '0' || $deliveryDate->format('N') === '1') {
4579
+ return false;
4580
+ }
4581
+
4582
  return true;
4583
  }
4584
 
4585
+ /**
4586
+ * Check if the current confirm and delivery dates are valid for letter box parcel shipments. If not, modify these
4587
+ * dates accordingly.
4588
+ *
4589
+ * @return $this
4590
+ */
4591
+ protected function _checkBuspakjeDates()
4592
+ {
4593
+ /**
4594
+ * Get the current delivery date.
4595
+ */
4596
+ $deliveryDate = $this->getDeliveryDate();
4597
+ $deliveryDate = DateTime::createFromFormat('Y-m-d H:i:s', $deliveryDate, new DateTimeZone('UTC'));
4598
+
4599
+ /**
4600
+ * Letter box parcels cannot be delivered on mondays or tuesdays.
4601
+ */
4602
+ if ($deliveryDate->format('N') === '0' || $deliveryDate->format('N') == '1') {
4603
+ /** @var TIG_PostNL_Helper_Date $helper */
4604
+ $helper = $this->getHelper('date');
4605
+
4606
+ /**
4607
+ * Modify the delivery date to the next tuesday.
4608
+ */
4609
+ $deliveryDate->modify('next tuesday ' . $deliveryDate->format('H:i:s'));
4610
+
4611
+ $this->setDeliveryDate($deliveryDate->format('Y-m-d H:i:s'));
4612
+
4613
+ /**
4614
+ * Also modify the confirm date accordingly.
4615
+ */
4616
+ $confirmDate = $helper->getShippingDateFromDeliveryDate($deliveryDate, $this->getStoreId());
4617
+
4618
+ $this->setConfirmDate($confirmDate->format('Y-m-d H:i:s'));
4619
+ }
4620
+
4621
+ /**
4622
+ * Letter box parcels have no expected delivery times.
4623
+ */
4624
+ $this->setExpectedDeliveryTimeStart(null)
4625
+ ->setExpectedDeliveryTimeEnd(null);
4626
+
4627
+ return $this;
4628
+ }
4629
+
4630
  /*******************************************************************************************************************
4631
  * PRODUCT CODE METHODS
4632
  ******************************************************************************************************************/
4687
  && (!isset($codes['is_buspakje'])
4688
  || $codes['is_buspakje'] == '-1'
4689
  )
4690
+ && false
4691
  ) {
4692
  $isBuspakje = $this->_getIsBuspakje();
4693
  } else {
4701
  if ($isBuspakje) {
4702
  $shipmentType = self::SHIPMENT_TYPE_BUSPAKJE;
4703
  $this->setShipmentType($shipmentType);
4704
+
4705
+ $this->_checkBuspakjeDates();
4706
  }
4707
 
4708
  /**
4709
  * The merchant may choose to use the default product code for this shipment.
4710
  */
4711
+ if (isset($codes['use_default']) && $codes['use_default'] == '1') {
4712
  return $this->getDefaultProductCode();
4713
  }
 
4714
  /**
4715
  * Get the selected product code for the current shipment's shipment type.
4716
  */
4872
  /**
4873
  * Only Dutch shipments that are not COD support multi-colli shipments.
4874
  */
4875
+ if (!$this->isDomesticShipment() || $this->isCod()) {
4876
  return 1;
4877
  }
4878
 
app/code/community/TIG/PostNL/Model/Core/Shipment/Barcode.php CHANGED
@@ -91,6 +91,9 @@ class TIG_PostNL_Model_Core_Shipment_Barcode extends Mage_Core_Model_Abstract
91
  ->addFieldToFilter('barcode_type', array('eq' => $type))
92
  ->addFieldToFilter('barcode_number', array('eq' => $barcodeNumber));
93
 
 
 
 
94
  if ($collection->getSize()) {
95
  $barcode = $collection->getFirstItem();
96
 
91
  ->addFieldToFilter('barcode_type', array('eq' => $type))
92
  ->addFieldToFilter('barcode_number', array('eq' => $barcodeNumber));
93
 
94
+ $collection->getSelect()
95
+ ->limit(1);
96
+
97
  if ($collection->getSize()) {
98
  $barcode = $collection->getFirstItem();
99
 
app/code/community/TIG/PostNL/Model/Core/System/Config/Backend/SenderCountry.php ADDED
@@ -0,0 +1,99 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ___________ __ __
4
+ * \__ ___/____ _/ |_ _____ | |
5
+ * | | / _ \\ __\\__ \ | |
6
+ * | | | |_| || | / __ \_| |__
7
+ * |____| \____/ |__| (____ /|____/
8
+ * \/
9
+ * ___ __ __
10
+ * | | ____ _/ |_ ____ _______ ____ ____ _/ |_
11
+ * | | / \\ __\_/ __ \\_ __ \ / \ _/ __ \\ __\
12
+ * | || | \| | \ ___/ | | \/| | \\ ___/ | |
13
+ * |___||___| /|__| \_____>|__| |___| / \_____>|__|
14
+ * \/ \/
15
+ * ________
16
+ * / _____/_______ ____ __ __ ______
17
+ * / \ ___\_ __ \ / _ \ | | \\____ \
18
+ * \ \_\ \| | \/| |_| || | /| |_| |
19
+ * \______ /|__| \____/ |____/ | __/
20
+ * \/ |__|
21
+ *
22
+ * NOTICE OF LICENSE
23
+ *
24
+ * This source file is subject to the Creative Commons License.
25
+ * It is available through the world-wide-web at this URL:
26
+ * http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
27
+ * If you are unable to obtain it through the world-wide-web, please send an email
28
+ * to servicedesk@tig.nl so we can send you a copy immediately.
29
+ *
30
+ * DISCLAIMER
31
+ *
32
+ * Do not edit or add to this file if you wish to upgrade this module to newer
33
+ * versions in the future. If you wish to customize this module for your
34
+ * needs please contact servicedesk@tig.nl for more information.
35
+ *
36
+ * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
+ * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
+ */
39
+ class TIG_PostNL_Model_Core_System_Config_Backend_SenderCountry extends Mage_Core_Model_Config_Data
40
+ {
41
+ /**
42
+ * Xpath to alternative sender country setting.
43
+ */
44
+ const XPATH_ALTERNATIVE_SENDER_COUNTRY = 'postnl/cif_address/alternative_sender_country';
45
+
46
+ /**
47
+ * @var array
48
+ */
49
+ protected $_validSenderCountries = array(
50
+ 'NL',
51
+ 'BE',
52
+ );
53
+
54
+ /**
55
+ * @return array
56
+ */
57
+ public function getValidSenderCountries()
58
+ {
59
+ return $this->_validSenderCountries;
60
+ }
61
+
62
+ /**
63
+ * Validate the value before saving.
64
+ *
65
+ * @return Mage_Core_Model_Abstract
66
+ *
67
+ * @throws TIG_PostNL_Exception
68
+ */
69
+ protected function _beforeSave()
70
+ {
71
+ $value = $this->getValue();
72
+
73
+ if (!in_array($value, $this->getValidSenderCountries())) {
74
+ throw new TIG_PostNL_Exception(
75
+ Mage::helper('postnl')->__("Only 'NL' and 'BE' are allowed as sender country."),
76
+ 'POSTNL-0236'
77
+ );
78
+ }
79
+
80
+ return parent::_beforeSave();
81
+ }
82
+
83
+ /**
84
+ * When saving the sender country setting, copy it's value to the alternative sender country setting.
85
+ *
86
+ * @return Mage_Core_Model_Abstract
87
+ */
88
+ protected function _afterSave()
89
+ {
90
+ $alternativeSenderCountry = Mage::getModel('core/config_data')
91
+ ->load(self::XPATH_ALTERNATIVE_SENDER_COUNTRY, 'path');
92
+
93
+ $alternativeSenderCountry->setData($this->getData())
94
+ ->setPath(self::XPATH_ALTERNATIVE_SENDER_COUNTRY)
95
+ ->save();
96
+
97
+ return parent::_afterSave();
98
+ }
99
+ }
app/code/community/TIG/PostNL/Model/Core/System/Config/Source/AllProductOptions.php CHANGED
@@ -44,110 +44,136 @@ class TIG_PostNL_Model_Core_System_Config_Source_AllProductOptions
44
  */
45
  protected $_options = array(
46
  '3085' => array(
47
- 'value' => '3085',
48
- 'label' => 'Standard shipment',
49
- 'isExtraCover' => false,
50
- 'isAvond' => false,
51
- 'isCod' => false,
52
- 'group' => 'standard_options',
 
 
53
  ),
54
  '3086' => array(
55
- 'value' => '3086',
56
- 'label' => 'COD',
57
- 'isExtraCover' => false,
58
- 'isAvond' => true,
59
- 'isCod' => true,
60
- 'group' => 'standard_options',
 
 
61
  ),
62
  '3091' => array(
63
- 'value' => '3091',
64
- 'label' => 'COD + Extra cover',
65
- 'isExtraCover' => true,
66
- 'isAvond' => true,
67
- 'isCod' => true,
68
- 'group' => 'standard_options',
 
 
69
  ),
70
  '3093' => array(
71
- 'value' => '3093',
72
- 'label' => 'COD + Return when not home',
73
- 'isExtraCover' => false,
74
- 'isAvond' => true,
75
- 'isCod' => true,
76
- 'group' => 'standard_options',
 
 
77
  ),
78
  '3097' => array(
79
- 'value' => '3097',
80
- 'label' => 'COD + Extra cover + Return when not home',
81
- 'isExtraCover' => true,
82
- 'isAvond' => true,
83
- 'isCod' => true,
84
- 'group' => 'standard_options',
 
 
85
  ),
86
  '3087' => array(
87
- 'value' => '3087',
88
- 'label' => 'Extra Cover',
89
- 'isExtraCover' => true,
90
- 'isAvond' => true,
91
- 'isCod' => false,
92
- 'group' => 'standard_options',
 
 
93
  ),
94
  '3094' => array(
95
- 'value' => '3094',
96
- 'label' => 'Extra cover + Return when not home',
97
- 'isAvond' => true,
98
- 'isExtraCover' => true,
99
- 'isCod' => false,
100
- 'group' => 'standard_options',
 
 
101
  ),
102
  '3189' => array(
103
- 'value' => '3189',
104
- 'label' => 'Signature on delivery',
105
- 'isExtraCover' => false,
106
- 'isAvond' => false,
107
- 'isCod' => false,
108
- 'group' => 'standard_options',
 
 
109
  ),
110
  '3089' => array(
111
  'value' => '3089',
112
  'label' => 'Signature on delivery + Delivery to stated address only',
113
  'isExtraCover' => false,
114
  'isAvond' => true,
 
115
  'isCod' => false,
116
  'statedAddressOnly' => true,
 
117
  'group' => 'standard_options',
118
  ),
119
  '3389' => array(
120
- 'value' => '3389',
121
- 'label' => 'Signature on delivery + Return when not home',
122
- 'isExtraCover' => false,
123
- 'isAvond' => false,
124
- 'isCod' => false,
125
- 'group' => 'standard_options',
 
 
126
  ),
127
  '3096' => array(
128
  'value' => '3096',
129
  'label' => 'Signature on delivery + Deliver to stated address only + Return when not home',
130
  'isExtraCover' => false,
131
  'isAvond' => true,
 
132
  'isCod' => false,
133
  'statedAddressOnly' => true,
 
134
  'group' => 'standard_options',
135
  ),
136
  '3090' => array(
137
- 'value' => '3090',
138
- 'label' => 'Delivery to neighbour + Return when not home',
139
- 'isExtraCover' => false,
140
- 'isAvond' => true,
141
- 'isCod' => false,
142
- 'group' => 'standard_options',
 
 
143
  ),
144
  '3385' => array(
145
  'value' => '3385',
146
  'label' => 'Deliver to stated address only',
147
  'isExtraCover' => false,
148
  'isAvond' => true,
 
149
  'isCod' => false,
150
  'statedAddressOnly' => true,
 
151
  'group' => 'standard_options',
152
  ),
153
  '3390' => array(
@@ -155,79 +181,99 @@ class TIG_PostNL_Model_Core_System_Config_Source_AllProductOptions
155
  'label' => 'Deliver to stated address only + Return when not home',
156
  'isExtraCover' => false,
157
  'isAvond' => true,
 
158
  'isCod' => false,
159
  'statedAddressOnly' => true,
 
160
  'group' => 'standard_options',
161
  ),
162
  '3535' => array(
163
- 'value' => '3535',
164
- 'label' => 'Post Office + COD',
165
- 'isExtraCover' => false,
166
- 'isPge' => false,
167
- 'isCod' => true,
168
- 'group' => 'pakjegemak_options',
 
 
169
  ),
170
  '3545' => array(
171
- 'value' => '3545',
172
- 'label' => 'Post Office + COD + Notification',
173
- 'isExtraCover' => false,
174
- 'isPge' => true,
175
- 'isCod' => true,
176
- 'group' => 'pakjegemak_options',
 
 
177
  ),
178
  '3536' => array(
179
- 'value' => '3536',
180
- 'label' => 'Post Office + COD + Extra Cover',
181
- 'isExtraCover' => false,
182
- 'isPge' => true,
183
- 'isCod' => true,
184
- 'group' => 'pakjegemak_options',
 
 
185
  ),
186
  '3546' => array(
187
- 'value' => '3546',
188
- 'label' => 'Post Office + COD + Extra Cover + Notification',
189
- 'isExtraCover' => true,
190
- 'isPge' => true,
191
- 'isCod' => true,
192
- 'group' => 'pakjegemak_options',
 
 
193
  ),
194
  '3534' => array(
195
- 'value' => '3534',
196
- 'label' => 'Post Office + Extra Cover',
197
- 'isExtraCover' => true,
198
- 'isPge' => false,
199
- 'isCod' => false,
200
- 'group' => 'pakjegemak_options',
 
 
201
  ),
202
  '3544' => array(
203
- 'value' => '3544',
204
- 'label' => 'Post Office + Extra Cover + Notification',
205
- 'isExtraCover' => true,
206
- 'isPge' => true,
207
- 'isCod' => false,
208
- 'group' => 'pakjegemak_options',
 
 
209
  ),
210
  '3533' => array(
211
- 'value' => '3533',
212
- 'label' => 'Post Office + Signature on Delivery',
213
- 'isExtraCover' => false,
214
- 'isPge' => false,
215
- 'isCod' => false,
216
- 'group' => 'pakjegemak_options',
 
 
217
  ),
218
  '3543' => array(
219
- 'value' => '3543',
220
- 'label' => 'Post Office + Signature on Delivery + Notification',
221
- 'isExtraCover' => false,
222
- 'isPge' => true,
223
- 'isCod' => false,
224
- 'group' => 'pakjegemak_options',
 
 
225
  ),
226
  '4952' => array(
227
- 'value' => '4952',
228
- 'label' => 'EU Pack Special Consumer (incl. signature)',
229
- 'isExtraCover' => false,
230
- 'group' => 'eu_options',
 
 
231
  ),
232
  /**
233
  * This option has been removed since v1.1.4.
@@ -249,29 +295,116 @@ class TIG_PostNL_Model_Core_System_Config_Source_AllProductOptions
249
  'label' => $helper->__('EU Pack Special COD (Belgium and Luxembourg only)'),
250
  ),*/
251
  '4945' => array(
252
- 'value' => '4945',
253
- 'label' => 'GlobalPack',
254
- 'isExtraCover' => true,
255
- 'extraCover' => 200,
256
- 'group' => 'global_options',
 
 
257
  ),
258
  '3553' => array(
259
- 'value' => '3553',
260
- 'label' => 'Parcel Dispenser',
261
- 'isExtraCover' => false,
262
- 'group' => 'pakketautomaat_options',
 
 
263
  ),
264
  '2828' => array(
265
- 'value' => '2828',
266
- 'label' => 'Letter Box Parcel',
267
- 'isExtraCover' => false,
268
- 'group' => 'buspakje_options',
 
 
269
  ),
270
  '2928' => array(
271
- 'value' => '2928',
272
- 'label' => 'Letter Box Parcel Extra',
273
- 'isExtraCover' => false,
274
- 'group' => 'buspakje_options',
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
275
  ),
276
  );
277
 
@@ -285,6 +418,7 @@ class TIG_PostNL_Model_Core_System_Config_Source_AllProductOptions
285
  'global_options' => 'Global options',
286
  'pakketautomaat_options' => 'Parcel Dispenser options',
287
  'buspakje_options' => 'Letter Box Parcel options',
 
288
  );
289
 
290
  /**
@@ -298,13 +432,21 @@ class TIG_PostNL_Model_Core_System_Config_Source_AllProductOptions
298
  */
299
  public function getOptions($flags = array(), $asFlatArray = false, $checkAvailable = false)
300
  {
 
 
 
 
 
 
 
 
 
301
  $options = parent::getOptions($flags, $asFlatArray, $checkAvailable);
302
 
303
  /**
304
  * Add the EU EPS BE only option if it's allowed and if either EPS options are requested or if all groups are
305
  * requested.
306
  */
307
- $helper = Mage::helper('postnl');
308
  if ($helper->canUseEpsBEOnlyOption()
309
  && (!isset($flags['group'])
310
  || $flags['group'] == 'eu_options'
44
  */
45
  protected $_options = array(
46
  '3085' => array(
47
+ 'value' => '3085',
48
+ 'label' => 'Standard shipment',
49
+ 'isExtraCover' => false,
50
+ 'isAvond' => false,
51
+ 'isSunday' => false,
52
+ 'isCod' => false,
53
+ 'countryLimitation' => 'NL',
54
+ 'group' => 'standard_options',
55
  ),
56
  '3086' => array(
57
+ 'value' => '3086',
58
+ 'label' => 'COD',
59
+ 'isExtraCover' => false,
60
+ 'isAvond' => true,
61
+ 'isSunday' => false,
62
+ 'isCod' => true,
63
+ 'countryLimitation' => 'NL',
64
+ 'group' => 'standard_options',
65
  ),
66
  '3091' => array(
67
+ 'value' => '3091',
68
+ 'label' => 'COD + Extra cover',
69
+ 'isExtraCover' => true,
70
+ 'isAvond' => true,
71
+ 'isSunday' => false,
72
+ 'isCod' => true,
73
+ 'countryLimitation' => 'NL',
74
+ 'group' => 'standard_options',
75
  ),
76
  '3093' => array(
77
+ 'value' => '3093',
78
+ 'label' => 'COD + Return when not home',
79
+ 'isExtraCover' => false,
80
+ 'isAvond' => true,
81
+ 'isSunday' => false,
82
+ 'isCod' => true,
83
+ 'countryLimitation'=> 'NL',
84
+ 'group' => 'standard_options',
85
  ),
86
  '3097' => array(
87
+ 'value' => '3097',
88
+ 'label' => 'COD + Extra cover + Return when not home',
89
+ 'isExtraCover' => true,
90
+ 'isAvond' => true,
91
+ 'isSunday' => false,
92
+ 'isCod' => true,
93
+ 'countryLimitation'=> 'NL',
94
+ 'group' => 'standard_options',
95
  ),
96
  '3087' => array(
97
+ 'value' => '3087',
98
+ 'label' => 'Extra Cover',
99
+ 'isExtraCover' => true,
100
+ 'isAvond' => true,
101
+ 'isSunday' => true,
102
+ 'isCod' => false,
103
+ 'countryLimitation' => 'NL',
104
+ 'group' => 'standard_options',
105
  ),
106
  '3094' => array(
107
+ 'value' => '3094',
108
+ 'label' => 'Extra cover + Return when not home',
109
+ 'isAvond' => true,
110
+ 'isSunday' => true,
111
+ 'isExtraCover' => true,
112
+ 'isCod' => false,
113
+ 'countryLimitation'=> 'NL',
114
+ 'group' => 'standard_options',
115
  ),
116
  '3189' => array(
117
+ 'value' => '3189',
118
+ 'label' => 'Signature on delivery',
119
+ 'isExtraCover' => false,
120
+ 'isAvond' => false,
121
+ 'isSunday' => false,
122
+ 'isCod' => false,
123
+ 'countryLimitation' => 'NL',
124
+ 'group' => 'standard_options',
125
  ),
126
  '3089' => array(
127
  'value' => '3089',
128
  'label' => 'Signature on delivery + Delivery to stated address only',
129
  'isExtraCover' => false,
130
  'isAvond' => true,
131
+ 'isSunday' => true,
132
  'isCod' => false,
133
  'statedAddressOnly' => true,
134
+ 'isBelgiumOnly' => false,
135
  'group' => 'standard_options',
136
  ),
137
  '3389' => array(
138
+ 'value' => '3389',
139
+ 'label' => 'Signature on delivery + Return when not home',
140
+ 'isExtraCover' => false,
141
+ 'isAvond' => false,
142
+ 'isSunday' => false,
143
+ 'isCod' => false,
144
+ 'countryLimitation' => 'NL',
145
+ 'group' => 'standard_options',
146
  ),
147
  '3096' => array(
148
  'value' => '3096',
149
  'label' => 'Signature on delivery + Deliver to stated address only + Return when not home',
150
  'isExtraCover' => false,
151
  'isAvond' => true,
152
+ 'isSunday' => true,
153
  'isCod' => false,
154
  'statedAddressOnly' => true,
155
+ 'isBelgiumOnly' => false,
156
  'group' => 'standard_options',
157
  ),
158
  '3090' => array(
159
+ 'value' => '3090',
160
+ 'label' => 'Delivery to neighbour + Return when not home',
161
+ 'isExtraCover' => false,
162
+ 'isAvond' => true,
163
+ 'isSunday' => false,
164
+ 'isCod' => false,
165
+ 'countryLimitation' => 'NL',
166
+ 'group' => 'standard_options',
167
  ),
168
  '3385' => array(
169
  'value' => '3385',
170
  'label' => 'Deliver to stated address only',
171
  'isExtraCover' => false,
172
  'isAvond' => true,
173
+ 'isSunday' => true,
174
  'isCod' => false,
175
  'statedAddressOnly' => true,
176
+ 'countryLimitation' => 'NL',
177
  'group' => 'standard_options',
178
  ),
179
  '3390' => array(
181
  'label' => 'Deliver to stated address only + Return when not home',
182
  'isExtraCover' => false,
183
  'isAvond' => true,
184
+ 'isSunday' => true,
185
  'isCod' => false,
186
  'statedAddressOnly' => true,
187
+ 'countryLimitation' => 'NL',
188
  'group' => 'standard_options',
189
  ),
190
  '3535' => array(
191
+ 'value' => '3535',
192
+ 'label' => 'Post Office + COD',
193
+ 'isExtraCover' => false,
194
+ 'isPge' => false,
195
+ 'isSunday' => false,
196
+ 'isCod' => true,
197
+ 'countryLimitation' => 'NL',
198
+ 'group' => 'pakjegemak_options',
199
  ),
200
  '3545' => array(
201
+ 'value' => '3545',
202
+ 'label' => 'Post Office + COD + Notification',
203
+ 'isExtraCover' => false,
204
+ 'isSunday' => false,
205
+ 'isPge' => true,
206
+ 'isCod' => true,
207
+ 'countryLimitation' => 'NL',
208
+ 'group' => 'pakjegemak_options',
209
  ),
210
  '3536' => array(
211
+ 'value' => '3536',
212
+ 'label' => 'Post Office + COD + Extra Cover',
213
+ 'isExtraCover' => false,
214
+ 'isSunday' => false,
215
+ 'isPge' => true,
216
+ 'isCod' => true,
217
+ 'countryLimitation' => 'NL',
218
+ 'group' => 'pakjegemak_options',
219
  ),
220
  '3546' => array(
221
+ 'value' => '3546',
222
+ 'label' => 'Post Office + COD + Extra Cover + Notification',
223
+ 'isExtraCover' => true,
224
+ 'isPge' => true,
225
+ 'isSunday' => false,
226
+ 'isCod' => true,
227
+ 'countryLimitation' => 'NL',
228
+ 'group' => 'pakjegemak_options',
229
  ),
230
  '3534' => array(
231
+ 'value' => '3534',
232
+ 'label' => 'Post Office + Extra Cover',
233
+ 'isExtraCover' => true,
234
+ 'isPge' => false,
235
+ 'isSunday' => false,
236
+ 'isCod' => false,
237
+ 'countryLimitation' => 'NL',
238
+ 'group' => 'pakjegemak_options',
239
  ),
240
  '3544' => array(
241
+ 'value' => '3544',
242
+ 'label' => 'Post Office + Extra Cover + Notification',
243
+ 'isExtraCover' => true,
244
+ 'isPge' => true,
245
+ 'isSunday' => false,
246
+ 'isCod' => false,
247
+ 'countryLimitation' => 'NL',
248
+ 'group' => 'pakjegemak_options',
249
  ),
250
  '3533' => array(
251
+ 'value' => '3533',
252
+ 'label' => 'Post Office + Signature on Delivery',
253
+ 'isExtraCover' => false,
254
+ 'isPge' => false,
255
+ 'isSunday' => false,
256
+ 'isCod' => false,
257
+ 'countryLimitation' => 'NL',
258
+ 'group' => 'pakjegemak_options',
259
  ),
260
  '3543' => array(
261
+ 'value' => '3543',
262
+ 'label' => 'Post Office + Signature on Delivery + Notification',
263
+ 'isExtraCover' => false,
264
+ 'isSunday' => false,
265
+ 'isPge' => true,
266
+ 'isCod' => false,
267
+ 'countryLimitation' => 'NL',
268
+ 'group' => 'pakjegemak_options',
269
  ),
270
  '4952' => array(
271
+ 'value' => '4952',
272
+ 'label' => 'EU Pack Special Consumer (incl. signature)',
273
+ 'isExtraCover' => false,
274
+ 'isSunday' => false,
275
+ 'countryLimitation' => false,
276
+ 'group' => 'eu_options',
277
  ),
278
  /**
279
  * This option has been removed since v1.1.4.
295
  'label' => $helper->__('EU Pack Special COD (Belgium and Luxembourg only)'),
296
  ),*/
297
  '4945' => array(
298
+ 'value' => '4945',
299
+ 'label' => 'GlobalPack',
300
+ 'isExtraCover' => true,
301
+ 'isSunday' => false,
302
+ 'extraCover' => 200,
303
+ 'countryLimitation' => false,
304
+ 'group' => 'global_options',
305
  ),
306
  '3553' => array(
307
+ 'value' => '3553',
308
+ 'label' => 'Parcel Dispenser',
309
+ 'isExtraCover' => false,
310
+ 'isSunday' => false,
311
+ 'countryLimitation' => 'NL',
312
+ 'group' => 'pakketautomaat_options',
313
  ),
314
  '2828' => array(
315
+ 'value' => '2828',
316
+ 'label' => 'Letter Box Parcel',
317
+ 'isExtraCover' => false,
318
+ 'isSunday' => false,
319
+ 'countryLimitation' => 'NL',
320
+ 'group' => 'buspakje_options',
321
  ),
322
  '2928' => array(
323
+ 'value' => '2928',
324
+ 'label' => 'Letter Box Parcel Extra',
325
+ 'isExtraCover' => false,
326
+ 'isSunday' => false,
327
+ 'countryLimitation' => 'NL',
328
+ 'group' => 'buspakje_options',
329
+ ),
330
+ '4970' => array(
331
+ 'value' => '4970',
332
+ 'label' => 'Belgium Deliver to stated address only + Return when not home',
333
+ 'isExtraCover' => false,
334
+ 'isAvond' => false,
335
+ 'isSunday' => false,
336
+ 'isCod' => false,
337
+ 'statedAddressOnly' => true,
338
+ 'countryLimitation' => 'BE',
339
+ 'group' => 'standard_options',
340
+ ),
341
+ '4971' => array(
342
+ 'value' => '4971',
343
+ 'label' => 'Belgium Return when not home',
344
+ 'isExtraCover' => false,
345
+ 'isAvond' => false,
346
+ 'isSunday' => false,
347
+ 'isCod' => false,
348
+ 'statedAddressOnly' => false,
349
+ 'countryLimitation' => 'BE',
350
+ 'group' => 'standard_options',
351
+ ),
352
+ '4972' => array(
353
+ 'value' => '4972',
354
+ 'label' => 'Belgium Signature on delivery + Deliver to stated address only + Return when not home',
355
+ 'isExtraCover' => false,
356
+ 'isAvond' => false,
357
+ 'isSunday' => false,
358
+ 'isCod' => false,
359
+ 'statedAddressOnly' => true,
360
+ 'countryLimitation' => 'BE',
361
+ 'group' => 'standard_options',
362
+ ),
363
+ '4973' => array(
364
+ 'value' => '4973',
365
+ 'label' => 'Belgium Signature on delivery + Return when not home',
366
+ 'isExtraCover' => false,
367
+ 'isAvond' => false,
368
+ 'isSunday' => false,
369
+ 'isCod' => false,
370
+ 'statedAddressOnly' => false,
371
+ 'countryLimitation' => 'BE',
372
+ 'group' => 'standard_options',
373
+ ),
374
+ '4974' => array(
375
+ 'value' => '4974',
376
+ 'label' => 'Belgium COD + Return when not home',
377
+ 'isExtraCover' => false,
378
+ 'isAvond' => false,
379
+ 'isSunday' => false,
380
+ 'isCod' => true,
381
+ 'statedAddressOnly' => false,
382
+ 'countryLimitation' => 'BE',
383
+ 'group' => 'standard_options',
384
+ ),
385
+ '4975' => array(
386
+ 'value' => '4975',
387
+ 'label' => 'Belgium Extra cover (EUR 500)+ Return when not home + Deliver to stated address only',
388
+ 'isExtraCover' => true,
389
+ 'extraCover' => 500,
390
+ 'isAvond' => false,
391
+ 'isSunday' => false,
392
+ 'isCod' => false,
393
+ 'statedAddressOnly' => true,
394
+ 'countryLimitation' => 'BE',
395
+ 'group' => 'standard_options',
396
+ ),
397
+ '4976' => array(
398
+ 'value' => '4976',
399
+ 'label' => 'Belgium COD + Extra cover (EUR 500) + Return when not home',
400
+ 'isExtraCover' => true,
401
+ 'extraCover' => 500,
402
+ 'isAvond' => false,
403
+ 'isSunday' => false,
404
+ 'isCod' => true,
405
+ 'statedAddressOnly' => false,
406
+ 'countryLimitation' => 'BE',
407
+ 'group' => 'standard_options',
408
  ),
409
  );
410
 
418
  'global_options' => 'Global options',
419
  'pakketautomaat_options' => 'Parcel Dispenser options',
420
  'buspakje_options' => 'Letter Box Parcel options',
421
+ 'sunday_options' => 'Sunday options',
422
  );
423
 
424
  /**
432
  */
433
  public function getOptions($flags = array(), $asFlatArray = false, $checkAvailable = false)
434
  {
435
+ $helper = Mage::helper('postnl');
436
+ if (!isset($flags['countryLimitation'])) {
437
+ $domesticCountry = $helper->getDomesticCountry();
438
+ $flags['countryLimitation'] = array(
439
+ $domesticCountry,
440
+ false,
441
+ );
442
+ }
443
+
444
  $options = parent::getOptions($flags, $asFlatArray, $checkAvailable);
445
 
446
  /**
447
  * Add the EU EPS BE only option if it's allowed and if either EPS options are requested or if all groups are
448
  * requested.
449
  */
 
450
  if ($helper->canUseEpsBEOnlyOption()
451
  && (!isset($flags['group'])
452
  || $flags['group'] == 'eu_options'
app/code/community/TIG/PostNL/Model/Core/System/Config/Source/ProductOptions/Abstract.php CHANGED
@@ -141,7 +141,18 @@ abstract class TIG_PostNL_Model_Core_System_Config_Source_ProductOptions_Abstrac
141
  protected function _optionMatchesFlags($option, $flags)
142
  {
143
  foreach($flags as $key => $value) {
144
- if (!array_key_exists($key, $option)) {
 
 
 
 
 
 
 
 
 
 
 
145
  return false;
146
  }
147
 
141
  protected function _optionMatchesFlags($option, $flags)
142
  {
143
  foreach($flags as $key => $value) {
144
+ if (is_array($value)) {
145
+ foreach ($value as $valueOption) {
146
+ $result = $this->_optionMatchesFlags($option, array($key => $valueOption));
147
+ if ($result === true) {
148
+ return true;
149
+ }
150
+ }
151
+
152
+ return false;
153
+ }
154
+
155
+ if (!isset($option[$key])) {
156
  return false;
157
  }
158
 
app/code/community/TIG/PostNL/Model/Core/System/Config/Source/SenderCountry.php ADDED
@@ -0,0 +1,62 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ___________ __ __
4
+ * \__ ___/____ _/ |_ _____ | |
5
+ * | | / _ \\ __\\__ \ | |
6
+ * | | | |_| || | / __ \_| |__
7
+ * |____| \____/ |__| (____ /|____/
8
+ * \/
9
+ * ___ __ __
10
+ * | | ____ _/ |_ ____ _______ ____ ____ _/ |_
11
+ * | | / \\ __\_/ __ \\_ __ \ / \ _/ __ \\ __\
12
+ * | || | \| | \ ___/ | | \/| | \\ ___/ | |
13
+ * |___||___| /|__| \_____>|__| |___| / \_____>|__|
14
+ * \/ \/
15
+ * ________
16
+ * / _____/_______ ____ __ __ ______
17
+ * / \ ___\_ __ \ / _ \ | | \\____ \
18
+ * \ \_\ \| | \/| |_| || | /| |_| |
19
+ * \______ /|__| \____/ |____/ | __/
20
+ * \/ |__|
21
+ *
22
+ * NOTICE OF LICENSE
23
+ *
24
+ * This source file is subject to the Creative Commons License.
25
+ * It is available through the world-wide-web at this URL:
26
+ * http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
27
+ * If you are unable to obtain it through the world-wide-web, please send an email
28
+ * to servicedesk@tig.nl so we can send you a copy immediately.
29
+ *
30
+ * DISCLAIMER
31
+ *
32
+ * Do not edit or add to this file if you wish to upgrade this module to newer
33
+ * versions in the future. If you wish to customize this module for your
34
+ * needs please contact servicedesk@tig.nl for more information.
35
+ *
36
+ * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
+ * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
+ */
39
+ class TIG_PostNL_Model_Core_System_Config_Source_SenderCountry
40
+ {
41
+ /**
42
+ * Returns an option array for sender country options
43
+ *
44
+ * @return array
45
+ */
46
+ public function toOptionArray()
47
+ {
48
+ $helper = Mage::helper('postnl');
49
+ $options = array(
50
+ array(
51
+ 'value' => 'NL',
52
+ 'label' => $helper->__('The Netherlands'),
53
+ ),
54
+ array(
55
+ 'value' => 'BE',
56
+ 'label' => $helper->__('Belgium'),
57
+ ),
58
+ );
59
+
60
+ return $options;
61
+ }
62
+ }
app/code/community/TIG/PostNL/Model/Core/System/Config/Source/StandardProductOptions.php CHANGED
@@ -50,6 +50,7 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
50
  'isAvond' => false,
51
  'isCod' => false,
52
  'statedAddressOnly' => false,
 
53
  ),
54
  array(
55
  'value' => '3087',
@@ -58,6 +59,7 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
58
  'isAvond' => true,
59
  'isCod' => false,
60
  'statedAddressOnly' => false,
 
61
  ),
62
  array(
63
  'value' => '3094',
@@ -66,6 +68,7 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
66
  'isAvond' => true,
67
  'isCod' => false,
68
  'statedAddressOnly' => false,
 
69
  ),
70
  array(
71
  'value' => '3189',
@@ -74,6 +77,7 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
74
  'isAvond' => false,
75
  'isCod' => false,
76
  'statedAddressOnly' => false,
 
77
  ),
78
  array(
79
  'value' => '3089',
@@ -82,6 +86,7 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
82
  'isAvond' => true,
83
  'isCod' => false,
84
  'statedAddressOnly' => true,
 
85
  ),
86
  array(
87
  'value' => '3389',
@@ -90,6 +95,7 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
90
  'isAvond' => false,
91
  'isCod' => false,
92
  'statedAddressOnly' => false,
 
93
  ),
94
  array(
95
  'value' => '3096',
@@ -98,6 +104,7 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
98
  'isAvond' => true,
99
  'isCod' => false,
100
  'statedAddressOnly' => true,
 
101
  ),
102
  array(
103
  'value' => '3090',
@@ -106,6 +113,7 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
106
  'isAvond' => false,
107
  'isCod' => false,
108
  'statedAddressOnly' => false,
 
109
  ),
110
  array(
111
  'value' => '3385',
@@ -114,6 +122,7 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
114
  'isAvond' => true,
115
  'isCod' => false,
116
  'statedAddressOnly' => true,
 
117
  ),
118
  array(
119
  'value' => '3390',
@@ -122,6 +131,7 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
122
  'isAvond' => true,
123
  'isCod' => false,
124
  'statedAddressOnly' => true,
 
125
  ),
126
  array(
127
  'value' => '3086',
@@ -130,6 +140,7 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
130
  'isAvond' => true,
131
  'isCod' => true,
132
  'statedAddressOnly' => false,
 
133
  ),
134
  array(
135
  'value' => '3091',
@@ -138,6 +149,7 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
138
  'isAvond' => true,
139
  'isCod' => true,
140
  'statedAddressOnly' => false,
 
141
  ),
142
  array(
143
  'value' => '3093',
@@ -146,6 +158,7 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
146
  'isAvond' => true,
147
  'isCod' => true,
148
  'statedAddressOnly' => false,
 
149
  ),
150
  array(
151
  'value' => '3097',
@@ -154,6 +167,71 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
154
  'isAvond' => true,
155
  'isCod' => true,
156
  'statedAddressOnly' => false,
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
157
  ),
158
  );
159
 
@@ -194,13 +272,88 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
194
  /**
195
  * Get a list of available options. This is a filtered/modified version of the array supplied by toOptionArray();
196
  *
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
197
  * @param boolean $flat
198
  *
199
  * @return array
200
  */
201
- public function getAvailableOptions($flat = false)
202
  {
203
- return $this->getOptions(array('isCod' => false), $flat, true);
204
  }
205
 
206
  /**
@@ -210,9 +363,9 @@ class TIG_PostNL_Model_Core_System_Config_Source_StandardProductOptions
210
  *
211
  * @return array
212
  */
213
- public function getAvailableCodOptions($flat = false)
214
  {
215
- return $this->getOptions(array('isCod' => true), $flat, true);
216
  }
217
 
218
  /**
50
  'isAvond' => false,
51
  'isCod' => false,
52
  'statedAddressOnly' => false,
53
+ 'countryLimitation' => 'NL',
54
  ),
55
  array(
56
  'value' => '3087',
59
  'isAvond' => true,
60
  'isCod' => false,
61
  'statedAddressOnly' => false,
62
+ 'countryLimitation' => 'NL',
63
  ),
64
  array(
65
  'value' => '3094',
68
  'isAvond' => true,
69
  'isCod' => false,
70
  'statedAddressOnly' => false,
71
+ 'countryLimitation' => 'NL',
72
  ),
73
  array(
74
  'value' => '3189',
77
  'isAvond' => false,
78
  'isCod' => false,
79
  'statedAddressOnly' => false,
80
+ 'countryLimitation' => 'NL',
81
  ),
82
  array(
83
  'value' => '3089',
86
  'isAvond' => true,
87
  'isCod' => false,
88
  'statedAddressOnly' => true,
89
+ 'countryLimitation' => 'NL',
90
  ),
91
  array(
92
  'value' => '3389',
95
  'isAvond' => false,
96
  'isCod' => false,
97
  'statedAddressOnly' => false,
98
+ 'countryLimitation' => 'NL',
99
  ),
100
  array(
101
  'value' => '3096',
104
  'isAvond' => true,
105
  'isCod' => false,
106
  'statedAddressOnly' => true,
107
+ 'countryLimitation' => 'NL',
108
  ),
109
  array(
110
  'value' => '3090',
113
  'isAvond' => false,
114
  'isCod' => false,
115
  'statedAddressOnly' => false,
116
+ 'countryLimitation' => 'NL',
117
  ),
118
  array(
119
  'value' => '3385',
122
  'isAvond' => true,
123
  'isCod' => false,
124
  'statedAddressOnly' => true,
125
+ 'countryLimitation' => 'NL',
126
  ),
127
  array(
128
  'value' => '3390',
131
  'isAvond' => true,
132
  'isCod' => false,
133
  'statedAddressOnly' => true,
134
+ 'countryLimitation' => 'NL',
135
  ),
136
  array(
137
  'value' => '3086',
140
  'isAvond' => true,
141
  'isCod' => true,
142
  'statedAddressOnly' => false,
143
+ 'countryLimitation' => 'NL',
144
  ),
145
  array(
146
  'value' => '3091',
149
  'isAvond' => true,
150
  'isCod' => true,
151
  'statedAddressOnly' => false,
152
+ 'countryLimitation' => 'NL',
153
  ),
154
  array(
155
  'value' => '3093',
158
  'isAvond' => true,
159
  'isCod' => true,
160
  'statedAddressOnly' => false,
161
+ 'countryLimitation' => 'NL',
162
  ),
163
  array(
164
  'value' => '3097',
167
  'isAvond' => true,
168
  'isCod' => true,
169
  'statedAddressOnly' => false,
170
+ 'countryLimitation' => 'NL',
171
+ ),
172
+ array(
173
+ 'value' => '4970',
174
+ 'label' => 'Belgium Deliver to stated address only + Return when not home',
175
+ 'isExtraCover' => false,
176
+ 'isAvond' => false,
177
+ 'isCod' => false,
178
+ 'statedAddressOnly' => true,
179
+ 'countryLimitation' => 'BE',
180
+ ),
181
+ array(
182
+ 'value' => '4971',
183
+ 'label' => 'Belgium Return when not home',
184
+ 'isExtraCover' => false,
185
+ 'isAvond' => false,
186
+ 'isCod' => false,
187
+ 'statedAddressOnly' => false,
188
+ 'countryLimitation' => 'BE',
189
+ ),
190
+ array(
191
+ 'value' => '4972',
192
+ 'label' => 'Belgium Signature on delivery + Deliver to stated address only + Return when not home',
193
+ 'isExtraCover' => false,
194
+ 'isAvond' => false,
195
+ 'isCod' => false,
196
+ 'statedAddressOnly' => true,
197
+ 'countryLimitation' => 'BE',
198
+ ),
199
+ array(
200
+ 'value' => '4973',
201
+ 'label' => 'Belgium Signature on delivery + Return when not home',
202
+ 'isExtraCover' => false,
203
+ 'isAvond' => false,
204
+ 'isCod' => false,
205
+ 'statedAddressOnly' => false,
206
+ 'countryLimitation' => 'BE',
207
+ ),
208
+ array(
209
+ 'value' => '4974',
210
+ 'label' => 'Belgium COD + Return when not home',
211
+ 'isExtraCover' => false,
212
+ 'isAvond' => false,
213
+ 'isCod' => true,
214
+ 'statedAddressOnly' => false,
215
+ 'countryLimitation' => 'BE',
216
+ ),
217
+ array(
218
+ 'value' => '4975',
219
+ 'label' => 'Belgium Extra cover (EUR 500)+ Return when not home + Deliver to stated address only',
220
+ 'isExtraCover' => true,
221
+ 'isAvond' => false,
222
+ 'isCod' => false,
223
+ 'statedAddressOnly' => true,
224
+ 'countryLimitation' => 'BE',
225
+ 'extraCover' => 500,
226
+ ),
227
+ array(
228
+ 'value' => '4976',
229
+ 'label' => 'Belgium COD + Extra cover (EUR 500) + Return when not home',
230
+ 'isExtraCover' => true,
231
+ 'isAvond' => false,
232
+ 'isCod' => true,
233
+ 'statedAddressOnly' => false,
234
+ 'countryLimitation' => 'BE',
235
  ),
236
  );
237
 
272
  /**
273
  * Get a list of available options. This is a filtered/modified version of the array supplied by toOptionArray();
274
  *
275
+ * @param boolean $flat
276
+ * @param string|null|false $country
277
+ *
278
+ * @return array
279
+ */
280
+ public function getAvailableOptions($flat = false, $country = null)
281
+ {
282
+ $flags = array(
283
+ 'isCod' => false,
284
+ );
285
+
286
+ if ($country === null) {
287
+ $country = Mage::helper('postnl')->getDomesticCountry();
288
+ }
289
+
290
+ if ($country) {
291
+ $flags['countryLimitation'] = $country;
292
+ }
293
+
294
+ return $this->getOptions($flags, $flat, true);
295
+ }
296
+
297
+ /**
298
+ * Get a list of available options. This is a filtered/modified version of the array supplied by toOptionArray();
299
+ *
300
+ * @param boolean $flat
301
+ *
302
+ * @return array
303
+ */
304
+ public function getAvailableNlOptions($flat = false)
305
+ {
306
+ return $this->getAvailableOptions($flat, 'NL');
307
+ }
308
+
309
+ /**
310
+ * Get a list of available options. This is a filtered/modified version of the array supplied by toOptionArray();
311
+ *
312
+ * @param boolean $flat
313
+ *
314
+ * @return array
315
+ */
316
+ public function getAvailableBeOptions($flat = false)
317
+ {
318
+ return $this->getAvailableOptions($flat, 'BE');
319
+ }
320
+
321
+ /**
322
+ * Alias for getAvailableOptions() with $cod = true.
323
+ *
324
+ * @param boolean $flat
325
+ * @param string|null $country
326
+ *
327
+ * @return array
328
+ */
329
+ public function getAvailableCodOptions($flat = false, $country = null)
330
+ {
331
+ $flags = array(
332
+ 'isCod' => true,
333
+ );
334
+
335
+ switch ($country) {
336
+ case 'NL':
337
+ $flags['isBelgiumOnly'] = false;
338
+ break;
339
+ case 'BE':
340
+ $flags['isBelgiumOnly'] = true;
341
+ break;
342
+ }
343
+
344
+ return $this->getOptions($flags, $flat, true);
345
+ }
346
+
347
+ /**
348
+ * Alias for getAvailableOptions() with $cod = true.
349
+ *
350
  * @param boolean $flat
351
  *
352
  * @return array
353
  */
354
+ public function getAvailableNlCodOptions($flat = false)
355
  {
356
+ return $this->getOptions(array('isCod' => true, 'isBelgiumOnly' => false), $flat, true);
357
  }
358
 
359
  /**
363
  *
364
  * @return array
365
  */
366
+ public function getAvailableBeCodOptions($flat = false)
367
  {
368
+ return $this->getOptions(array('isCod' => true, 'isBelgiumOnly' => true), $flat, true);
369
  }
370
 
371
  /**
app/code/community/TIG/PostNL/Model/Core/System/Config/Source/SundayProductOptions.php ADDED
@@ -0,0 +1,107 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ___________ __ __
4
+ * \__ ___/____ _/ |_ _____ | |
5
+ * | | / _ \\ __\\__ \ | |
6
+ * | | | |_| || | / __ \_| |__
7
+ * |____| \____/ |__| (____ /|____/
8
+ * \/
9
+ * ___ __ __
10
+ * | | ____ _/ |_ ____ _______ ____ ____ _/ |_
11
+ * | | / \\ __\_/ __ \\_ __ \ / \ _/ __ \\ __\
12
+ * | || | \| | \ ___/ | | \/| | \\ ___/ | |
13
+ * |___||___| /|__| \_____>|__| |___| / \_____>|__|
14
+ * \/ \/
15
+ * ________
16
+ * / _____/_______ ____ __ __ ______
17
+ * / \ ___\_ __ \ / _ \ | | \\____ \
18
+ * \ \_\ \| | \/| |_| || | /| |_| |
19
+ * \______ /|__| \____/ |____/ | __/
20
+ * \/ |__|
21
+ *
22
+ * NOTICE OF LICENSE
23
+ *
24
+ * This source file is subject to the Creative Commons License.
25
+ * It is available through the world-wide-web at this URL:
26
+ * http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
27
+ * If you are unable to obtain it through the world-wide-web, please send an email
28
+ * to servicedesk@totalinternetgroup.nl so we can send you a copy immediately.
29
+ *
30
+ * DISCLAIMER
31
+ *
32
+ * Do not edit or add to this file if you wish to upgrade this module to newer
33
+ * versions in the future. If you wish to customize this module for your
34
+ * needs please contact servicedesk@totalinternetgroup.nl for more information.
35
+ *
36
+ * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.totalinternetgroup.nl)
37
+ * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
+ */
39
+ class TIG_PostNL_Model_Core_System_Config_Source_SundayProductOptions
40
+ extends TIG_PostNL_Model_Core_System_Config_Source_ProductOptions_Abstract
41
+ {
42
+ /**
43
+ * @var array
44
+ */
45
+ protected $_options = array(
46
+ array(
47
+ 'value' => '3087',
48
+ 'label' => 'Extra Cover',
49
+ 'isExtraCover' => true,
50
+ 'isSunday' => true,
51
+ 'statedAddressOnly' => false,
52
+ 'isCod' => false,
53
+ ),
54
+ array(
55
+ 'value' => '3089',
56
+ 'label' => 'Signature on delivery + Deliver to stated address only',
57
+ 'isExtraCover' => false,
58
+ 'isSunday' => true,
59
+ 'statedAddressOnly' => true,
60
+ 'isCod' => false,
61
+ ),
62
+ array(
63
+ 'value' => '3094',
64
+ 'label' => 'Extra cover + Return when not home',
65
+ 'isExtraCover' => true,
66
+ 'isSunday' => true,
67
+ 'statedAddressOnly' => false,
68
+ 'isCod' => false,
69
+ ),
70
+ array(
71
+ 'value' => '3096',
72
+ 'label' => 'Signature on delivery + Deliver to stated address only + Return when not home',
73
+ 'isExtraCover' => false,
74
+ 'isSunday' => true,
75
+ 'statedAddressOnly' => true,
76
+ 'isCod' => false,
77
+ ),
78
+ array(
79
+ 'value' => '3385',
80
+ 'label' => 'Deliver to stated address only',
81
+ 'isExtraCover' => false,
82
+ 'isSunday' => true,
83
+ 'statedAddressOnly' => true,
84
+ 'isCod' => false,
85
+ ),
86
+ array(
87
+ 'value' => '3390',
88
+ 'label' => 'Deliver to stated address only + Return when not home',
89
+ 'isExtraCover' => false,
90
+ 'isSunday' => true,
91
+ 'statedAddressOnly' => true,
92
+ 'isCod' => false,
93
+ ),
94
+ );
95
+
96
+ /**
97
+ * Get available sunday options
98
+ *
99
+ * @param bool $flat
100
+ *
101
+ * @return array
102
+ */
103
+ public function getAvailableOptions($flat = false)
104
+ {
105
+ return $this->getOptions(array('isSunday' => true, 'isCod' => false), $flat, true);
106
+ }
107
+ }
app/code/community/TIG/PostNL/Model/DeliveryOptions/Cif.php CHANGED
@@ -47,15 +47,19 @@ class TIG_PostNL_Model_DeliveryOptions_Cif extends TIG_PostNL_Model_Core_Cif
47
  const PAKJEGEMAK_DELIVERY_OPTION = 'PG';
48
  const PAKJEGEMAK_EXPRESS_DELIVERY_OPTION = 'PGE';
49
  const PAKKETAUTOMAAT_DELIVERY_OPTION = 'PA';
 
 
 
50
 
51
  /**
52
  * Config options used by the getDeliveryDate service.
53
  */
54
- const XPATH_SHIPPING_DURATION = 'postnl/cif_labels_and_confirming/shipping_duration';
55
- const XPATH_CUTOFF_TIME = 'postnl/cif_labels_and_confirming/cutoff_time';
56
- const XPATH_ALLOW_SUNDAY_SORTING = 'postnl/cif_labels_and_confirming/allow_sunday_sorting';
57
- const XPATH_SUNDAY_CUTOFF_TIME = 'postnl/cif_labels_and_confirming/sunday_cutoff_time';
58
- const XPATH_DELIVERY_DAYS_NUMBER = 'postnl/delivery_options/delivery_days_number';
 
59
 
60
  /**
61
  * Check if the module is set to test mode
@@ -77,13 +81,14 @@ class TIG_PostNL_Model_DeliveryOptions_Cif extends TIG_PostNL_Model_Core_Cif
77
  * Gets the delivery date based on the shop's cut-off time.
78
  *
79
  * @param string $postcode
 
80
  * @param Mage_Sales_Model_Quote $quote
81
  *
82
  * @return string
83
  *
84
  * @throws TIG_PostNL_Exception
85
  */
86
- public function getDeliveryDate($postcode, Mage_Sales_Model_Quote $quote)
87
  {
88
  if (empty($postcode)) {
89
  throw new TIG_PostNL_Exception(
@@ -97,14 +102,33 @@ class TIG_PostNL_Model_DeliveryOptions_Cif extends TIG_PostNL_Model_Core_Cif
97
  $date = new DateTime('now', Mage::helper('postnl')->getStoreTimeZone($quote->getStoreId(), true));
98
  $date->setTimezone(new DateTimeZone('Europe/Berlin'));
99
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
100
  $soapParams = array(
101
  'GetDeliveryDate' => array(
102
- 'Postalcode' => $postcode,
103
  'ShippingDate' => $date->format('d-m-Y H:i:s'),
104
  'ShippingDuration' => $shippingDuration,
105
- 'CutOffTime' => $this->_getCutOffTime(),
106
  'AllowSundaySorting' => $this->_getSundaySortingAllowed(),
107
- 'CutOffTimeForSundaySorting' => $this->_getSundaySortingCutOffTime(),
 
 
108
  ),
109
  'Message' => $this->_getMessage('')
110
  );
@@ -161,13 +185,17 @@ class TIG_PostNL_Model_DeliveryOptions_Cif extends TIG_PostNL_Model_Core_Cif
161
  $endDate = new DateTime($startDate, new DateTimeZone('UTC'));
162
  $endDate->add(new DateInterval("P{$maximumNumberOfDeliveryDays}D"));
163
 
 
 
164
  $soapParams = array(
165
  'Timeframe' => array(
166
  'PostalCode' => $data['postcode'],
167
- 'HouseNumber' => $data['housenumber'],
 
168
  'StartDate' => $startDate,
169
  'EndDate' => $endDate->format('d-m-Y'),
170
  'SundaySorting' => $this->_getSundaySortingAllowed(),
 
171
  ),
172
  'Message' => $this->_getMessage('')
173
  );
@@ -177,7 +205,7 @@ class TIG_PostNL_Model_DeliveryOptions_Cif extends TIG_PostNL_Model_Core_Cif
177
  */
178
  $response = $this->call(
179
  'timeframe',
180
- 'GetDeliveryTimeframes',
181
  $soapParams
182
  );
183
 
@@ -218,8 +246,7 @@ class TIG_PostNL_Model_DeliveryOptions_Cif extends TIG_PostNL_Model_Core_Cif
218
  $soapParams = array(
219
  'Location' => $location,
220
  'Message' => $message,
221
- 'Countrycode' => 'NL' // @todo make dynamic
222
-
223
  );
224
 
225
  /**
@@ -267,7 +294,8 @@ class TIG_PostNL_Model_DeliveryOptions_Cif extends TIG_PostNL_Model_Core_Cif
267
  $soapParams = array(
268
  'Location' => $location,
269
  'Message' => $message,
270
- 'Countrycode' => 'NL' // @todo make dynamic
 
271
  );
272
 
273
  /**
@@ -413,6 +441,16 @@ class TIG_PostNL_Model_DeliveryOptions_Cif extends TIG_PostNL_Model_Core_Cif
413
  );
414
  }
415
 
 
 
 
 
 
 
 
 
 
 
416
  return $location;
417
  }
418
 
@@ -440,4 +478,59 @@ class TIG_PostNL_Model_DeliveryOptions_Cif extends TIG_PostNL_Model_Core_Cif
440
 
441
  return $deliveryOptions;
442
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
443
  }
47
  const PAKJEGEMAK_DELIVERY_OPTION = 'PG';
48
  const PAKJEGEMAK_EXPRESS_DELIVERY_OPTION = 'PGE';
49
  const PAKKETAUTOMAAT_DELIVERY_OPTION = 'PA';
50
+ const DOMESTIC_DELIVERY_OPTION = 'Daytime';
51
+ const EVENING_DELIVERY_OPTION = 'Evening';
52
+ const SUNDAY_DELIVERY_OPTION = 'Sunday';
53
 
54
  /**
55
  * Config options used by the getDeliveryDate service.
56
  */
57
+ const XPATH_SHIPPING_DURATION = 'postnl/cif_labels_and_confirming/shipping_duration';
58
+ const XPATH_CUTOFF_TIME = 'postnl/cif_labels_and_confirming/cutoff_time';
59
+ const XPATH_ALLOW_SUNDAY_SORTING = 'postnl/delivery_options/allow_sunday_sorting';
60
+ const XPATH_SUNDAY_CUTOFF_TIME = 'postnl/cif_labels_and_confirming/sunday_cutoff_time';
61
+ const XPATH_DELIVERY_DAYS_NUMBER = 'postnl/delivery_options/delivery_days_number';
62
+ const XPATH_ENABLE_SUNDAY_DELIVERY = 'postnl/delivery_options/enable_sunday_delivery';
63
 
64
  /**
65
  * Check if the module is set to test mode
81
  * Gets the delivery date based on the shop's cut-off time.
82
  *
83
  * @param string $postcode
84
+ * @param string $country
85
  * @param Mage_Sales_Model_Quote $quote
86
  *
87
  * @return string
88
  *
89
  * @throws TIG_PostNL_Exception
90
  */
91
+ public function getDeliveryDate($postcode, $country = 'NL', Mage_Sales_Model_Quote $quote)
92
  {
93
  if (empty($postcode)) {
94
  throw new TIG_PostNL_Exception(
102
  $date = new DateTime('now', Mage::helper('postnl')->getStoreTimeZone($quote->getStoreId(), true));
103
  $date->setTimezone(new DateTimeZone('Europe/Berlin'));
104
 
105
+ /**
106
+ * Build CutOffTimes array
107
+ *
108
+ * Day 00 indicates weekdays and saturday, while day 07 indicates sunday
109
+ */
110
+ $CutOffTimes = array(
111
+ array(
112
+ 'Day' => '00',
113
+ 'Time' => $this->_getCutOffTime()
114
+ ),
115
+ array(
116
+ 'Day' => '07',
117
+ 'Time' => $this->_getSundaySortingCutOffTime()
118
+ )
119
+ );
120
+
121
+ $options = $this->_getDeliveryDateOptionsArray();
122
+
123
  $soapParams = array(
124
  'GetDeliveryDate' => array(
125
+ 'PostalCode' => $postcode,
126
  'ShippingDate' => $date->format('d-m-Y H:i:s'),
127
  'ShippingDuration' => $shippingDuration,
 
128
  'AllowSundaySorting' => $this->_getSundaySortingAllowed(),
129
+ 'CutOffTimes' => $CutOffTimes,
130
+ 'Options' => $options,
131
+ 'CountryCode' => $country,
132
  ),
133
  'Message' => $this->_getMessage('')
134
  );
185
  $endDate = new DateTime($startDate, new DateTimeZone('UTC'));
186
  $endDate->add(new DateInterval("P{$maximumNumberOfDeliveryDays}D"));
187
 
188
+ $options = $this->_getDeliveryTimeframesOptionsArray();
189
+
190
  $soapParams = array(
191
  'Timeframe' => array(
192
  'PostalCode' => $data['postcode'],
193
+ 'HouseNr' => $data['housenumber'],
194
+ 'CountryCode' => $data['country'],
195
  'StartDate' => $startDate,
196
  'EndDate' => $endDate->format('d-m-Y'),
197
  'SundaySorting' => $this->_getSundaySortingAllowed(),
198
+ 'Options' => $options
199
  ),
200
  'Message' => $this->_getMessage('')
201
  );
205
  */
206
  $response = $this->call(
207
  'timeframe',
208
+ 'GetTimeframes',
209
  $soapParams
210
  );
211
 
246
  $soapParams = array(
247
  'Location' => $location,
248
  'Message' => $message,
249
+ 'Countrycode' => $data['country']
 
250
  );
251
 
252
  /**
294
  $soapParams = array(
295
  'Location' => $location,
296
  'Message' => $message,
297
+ 'Countrycode' => $data['country']
298
+
299
  );
300
 
301
  /**
441
  );
442
  }
443
 
444
+ /**
445
+ * Add Options specifying which location timeframes should be returned
446
+ */
447
+ $location['Options'] = array('Daytime', 'Morning');
448
+
449
+ /**
450
+ * Add flag to identify if Sunday Sorting is allowed
451
+ */
452
+ $location['AllowSundaySorting'] = $this->_getSundaySortingAllowed();
453
+
454
  return $location;
455
  }
456
 
478
 
479
  return $deliveryOptions;
480
  }
481
+
482
+ /**
483
+ * Builds array of time frame options, to be sent in the GetTimeframes request.
484
+ * These options determine which delivery timeframes should be requested.
485
+ *
486
+ * @return array
487
+ */
488
+ protected function _getDeliveryTimeframesOptionsArray()
489
+ {
490
+ $storeId = $this->getStoreId();
491
+
492
+ $options = array(self::DOMESTIC_DELIVERY_OPTION);
493
+
494
+ $helper = Mage::helper('postnl/deliveryOptions');
495
+
496
+ if ($helper->canUseEveningTimeframes()) {
497
+ $options[] = self::EVENING_DELIVERY_OPTION;
498
+ }
499
+
500
+ $sundayDelivery = Mage::getStoreConfig($helper::XPATH_ENABLE_SUNDAY_DELIVERY, $storeId);
501
+ if ($sundayDelivery) {
502
+ $options[] = self::SUNDAY_DELIVERY_OPTION;
503
+ }
504
+
505
+ return $options;
506
+ }
507
+
508
+ /**
509
+ * Get the best fitting delivery option for the GetDeliveryDate request. In contract to the
510
+ * _getDeliveryTimeframesOptionsArray method, this method will return the options in a different order. This is
511
+ * important to prevent certain dates from being unavailable. The order used in this method is (depending on the
512
+ * extension's config): sunday > daytime > evening.
513
+ *
514
+ * @return array
515
+ */
516
+ protected function _getDeliveryDateOptionsArray()
517
+ {
518
+ $storeId = $this->getStoreId();
519
+
520
+ $helper = Mage::helper('postnl/deliveryOptions');
521
+
522
+ $options = array();
523
+ $sundayDelivery = Mage::getStoreConfig($helper::XPATH_ENABLE_SUNDAY_DELIVERY, $storeId);
524
+ if ($sundayDelivery) {
525
+ $options[] = self::SUNDAY_DELIVERY_OPTION;
526
+ }
527
+
528
+ $options[] = self::DOMESTIC_DELIVERY_OPTION;
529
+
530
+ if ($helper->canUseEveningTimeframes()) {
531
+ $options[] = self::EVENING_DELIVERY_OPTION;
532
+ }
533
+
534
+ return $options;
535
+ }
536
  }
app/code/community/TIG/PostNL/Model/DeliveryOptions/Observer/UpdatePostnlOrder.php CHANGED
@@ -149,6 +149,9 @@ class TIG_PostNL_Model_DeliveryOptions_Observer_UpdatePostnlOrder
149
  } elseif ($type == $postnlOrder::TYPE_AVOND) {
150
  $fee = Mage::helper('postnl/deliveryOptions')
151
  ->getEveningFee(false, $includingTax, false);
 
 
 
152
  }
153
  }
154
 
@@ -352,12 +355,13 @@ class TIG_PostNL_Model_DeliveryOptions_Observer_UpdatePostnlOrder
352
  }
353
 
354
  /**
355
- * Check if this order is being shipped to the Netherlands.
356
  */
 
357
  $shippingAddress = $order->getShippingAddress();
358
 
359
  if (!$shippingAddress
360
- || $shippingAddress->getCountryId() != 'NL'
361
  ) {
362
  return false;
363
  }
@@ -410,23 +414,15 @@ class TIG_PostNL_Model_DeliveryOptions_Observer_UpdatePostnlOrder
410
  */
411
  protected function _setDates(TIG_PostNL_Model_Core_Order $postnlOrder, Mage_Sales_Model_Order $order)
412
  {
413
- $helper = Mage::helper('postnl/deliveryOptions');
414
- $shippingDuration = $helper->getOrderShippingDuration($order);
415
- $deliveryDate = $helper->getDeliveryDate(
416
- $order->getCreatedAt(),
417
- $order->getStoreId(),
418
- false,
419
- true,
420
- true,
421
- $shippingDuration,
422
- true
423
- );
424
-
425
- $deliveryDate = $helper->getValidDeliveryDate($deliveryDate);
426
-
427
- $confirmDate = clone $deliveryDate;
428
- $confirmDate->sub(new DateInterval('P1D'));
429
- $confirmDate = $helper->getValidConfirmDate($confirmDate);
430
 
431
  $postnlOrder->setDeliveryDate($deliveryDate->getTimestamp())
432
  ->setConfirmDate($confirmDate->getTimestamp());
149
  } elseif ($type == $postnlOrder::TYPE_AVOND) {
150
  $fee = Mage::helper('postnl/deliveryOptions')
151
  ->getEveningFee(false, $includingTax, false);
152
+ } elseif ($type == $postnlOrder::TYPE_SUNDAY) {
153
+ $fee = Mage::helper('postnl/deliveryOptions_fee')
154
+ ->getSundayFee(false, $includingTax, false);
155
  }
156
  }
157
 
355
  }
356
 
357
  /**
358
+ * Check if this order is being shipped to a domestic country.
359
  */
360
+ $domesticCountry = Mage::helper('postnl')->getDomesticCountry();
361
  $shippingAddress = $order->getShippingAddress();
362
 
363
  if (!$shippingAddress
364
+ || $shippingAddress->getCountryId() != $domesticCountry
365
  ) {
366
  return false;
367
  }
414
  */
415
  protected function _setDates(TIG_PostNL_Model_Core_Order $postnlOrder, Mage_Sales_Model_Order $order)
416
  {
417
+ /** @var TIG_PostNL_Helper_Date $helper */
418
+ $helper = Mage::helper('postnl/date');
419
+
420
+ $dateObject = new DateTime($order->getCreatedAt(), new DateTimeZone('UTC'));
421
+ $deliveryDate = clone $dateObject;
422
+ $confirmDate = clone $dateObject;
423
+
424
+ $helper->getDeliveryDate($deliveryDate, $order->getStoreId());
425
+ $helper->getShippingDate($confirmDate, $order->getStoreId());
 
 
 
 
 
 
 
 
426
 
427
  $postnlOrder->setDeliveryDate($deliveryDate->getTimestamp())
428
  ->setConfirmDate($confirmDate->getTimestamp());
app/code/community/TIG/PostNL/Model/DeliveryOptions/Service.php CHANGED
@@ -121,37 +121,6 @@ class TIG_PostNL_Model_DeliveryOptions_Service extends Varien_Object
121
  return $shippingDuration;
122
  }
123
 
124
- /**
125
- * Calculate the confirm date for a specified delivery date.
126
- *
127
- * @param string|DateTime $deliveryDate
128
- * @param string|boolean $timeZone
129
- *
130
- * @return DateTime
131
- */
132
- public function getConfirmDate($deliveryDate, $timeZone = false)
133
- {
134
- if ($this->hasConfirmDate()) {
135
- return $this->_getData('confirm_date');
136
- }
137
-
138
- if (!is_string($timeZone)) {
139
- $timeZone = 'UTC';
140
- }
141
- $timeZone = new DateTimeZone($timeZone);
142
-
143
- if (is_string($deliveryDate)) {
144
- $deliveryDate = new DateTime($deliveryDate, $timeZone);
145
- }
146
-
147
- $confirmDate = $deliveryDate->sub(new DateInterval("P1D"));
148
-
149
- $confirmDate = Mage::helper('postnl/deliveryOptions')->getValidConfirmDate($confirmDate, $timeZone);
150
-
151
- $this->setConfirmDate($confirmDate);
152
- return $confirmDate;
153
- }
154
-
155
  /**
156
  * @param StdClass[] $timeframes
157
  *
@@ -166,63 +135,9 @@ class TIG_PostNL_Model_DeliveryOptions_Service extends Varien_Object
166
  return false;
167
  }
168
 
169
- /**
170
- * Get the configured shipping days.
171
- */
172
- $shippingDays = Mage::getStoreConfig(self::XPATH_SHIPPING_DAYS, Mage::app()->getStore()->getId());
173
- $shippingDays = explode(',', $shippingDays);
174
-
175
  $helper = Mage::helper('postnl/deliveryOptions');
176
 
177
- /**
178
- * Calculate the earliest possible shipping date for comparison.
179
- */
180
- $earliestShippingDate = new DateTime('now', new DateTimeZone('Europe/Berlin'));
181
- $earliestShippingDate->add(new DateInterval("P{$helper->getQuoteShippingDuration()}D"));
182
-
183
- foreach ($timeframes as $key => $timeframe) {
184
- /**
185
- * Get the date of the time frame and calculate the shipping day. The shipping day will be the day before
186
- * the delivery date, but may not be a sunday.
187
- */
188
- $timeframeDate = new DateTime($timeframe->Date, new DateTimeZone('UTC'));
189
- $deliveryDay = (int) $timeframeDate->format('N');
190
-
191
- $shippingDate = clone $timeframeDate;
192
- $shippingDay = (int) $shippingDate->sub(new DateInterval('P1D'))->format('N');
193
-
194
- if (in_array($shippingDay, $shippingDays)) {
195
- continue;
196
- }
197
-
198
- /**
199
- * If the delivery day is tuesday and sunday sorting is not available, shipping the order on saturday will
200
- * also result in a tuesday delivery so we need to validate saturday as a valid shipping date.
201
- *
202
- * If the delivery day is monday and sunday sorting is available, shipping the order on saturday will also
203
- * result in a monday delivery so we need to validate saturday as a valid shipping date.
204
- */
205
- $valid = false;
206
- if (
207
- ($deliveryDay === 2
208
- && !$helper->canUseSundaySorting()
209
- )
210
- || ($deliveryDay === 1
211
- && $helper->canUseSundaySorting()
212
- )
213
- ) {
214
- $valid = $this->_validateSaturdayShipping($shippingDays, $shippingDate, $earliestShippingDate);
215
- }
216
-
217
- if (false === $valid) {
218
- unset($timeframes[$key]);
219
- }
220
- }
221
-
222
- /**
223
- * Only return the values, as otherwise the array will be JSON encoded as an object.
224
- */
225
- return array_values($timeframes);
226
  }
227
 
228
  /**
@@ -307,12 +222,19 @@ class TIG_PostNL_Model_DeliveryOptions_Service extends Varien_Object
307
  */
308
  public function saveDeliveryOption($data)
309
  {
 
 
 
310
  $quote = $this->getQuote();
311
 
312
- $timeZone = Mage::app()->getLocale()->getTimezone();
 
 
 
 
313
 
314
- $deliveryDate = Mage::getSingleton('core/date')->gmtDate('Y-m-d H:i:s', $data['date']);
315
- $confirmDate = $this->getConfirmDate($deliveryDate, $timeZone);
316
 
317
  /**
318
  * @var TIG_PostNL_Model_Core_Order $postnlOrder
@@ -327,7 +249,7 @@ class TIG_PostNL_Model_DeliveryOptions_Service extends Varien_Object
327
  ->setMobilePhoneNumber(false, true)
328
  ->setType($data['type'])
329
  ->setShipmentCosts($data['costs'])
330
- ->setDeliveryDate($deliveryDate)
331
  ->setConfirmDate($confirmDate->format('Y-m-d H:i:s'))
332
  ->setExpectedDeliveryTimeStart(false)
333
  ->setExpectedDeliveryTimeEnd(false);
@@ -344,12 +266,14 @@ class TIG_PostNL_Model_DeliveryOptions_Service extends Varien_Object
344
  * Set the expected delivery timeframe if available.
345
  */
346
  if (isset($data['from'])) {
347
- $from = Mage::getSingleton('core/date')->gmtDate('H:i:s', $data['from']);
348
- $postnlOrder->setExpectedDeliveryTimeStart($from);
 
349
  }
350
  if (isset($data['to'])) {
351
- $to = Mage::getSingleton('core/date')->gmtDate('H:i:s', $data['to']);
352
- $postnlOrder->setExpectedDeliveryTimeEnd($to);
 
353
  }
354
 
355
  /**
121
  return $shippingDuration;
122
  }
123
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
124
  /**
125
  * @param StdClass[] $timeframes
126
  *
135
  return false;
136
  }
137
 
 
 
 
 
 
 
138
  $helper = Mage::helper('postnl/deliveryOptions');
139
 
140
+ return $helper->filterTimeFrames($timeframes, Mage::app()->getStore()->getId());
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
141
  }
142
 
143
  /**
222
  */
223
  public function saveDeliveryOption($data)
224
  {
225
+ /** @var TIG_PostNL_Helper_Date $helper */
226
+ $helper = Mage::helper('postnl/date');
227
+
228
  $quote = $this->getQuote();
229
 
230
+ $amsterdamTimeZone = new DateTimeZone('Europe/Amsterdam');
231
+ $utcTimeZone = new DateTimeZone('UTC');
232
+
233
+ $deliveryDate = DateTime::createFromFormat('d-m-Y', $data['date'], $amsterdamTimeZone);
234
+ $deliveryDate->setTimezone($utcTimeZone);
235
 
236
+ $deliveryDateClone = clone $deliveryDate;
237
+ $confirmDate = $helper->getShippingDateFromDeliveryDate($deliveryDateClone, $quote->getStoreId());
238
 
239
  /**
240
  * @var TIG_PostNL_Model_Core_Order $postnlOrder
249
  ->setMobilePhoneNumber(false, true)
250
  ->setType($data['type'])
251
  ->setShipmentCosts($data['costs'])
252
+ ->setDeliveryDate($deliveryDate->format('Y-m-d H:i:s'))
253
  ->setConfirmDate($confirmDate->format('Y-m-d H:i:s'))
254
  ->setExpectedDeliveryTimeStart(false)
255
  ->setExpectedDeliveryTimeEnd(false);
266
  * Set the expected delivery timeframe if available.
267
  */
268
  if (isset($data['from'])) {
269
+ $from = DateTime::createFromFormat('H:i:s', $data['from'], $amsterdamTimeZone);
270
+ $from->setTimezone($utcTimeZone);
271
+ $postnlOrder->setExpectedDeliveryTimeStart($from->format('H:i:s'));
272
  }
273
  if (isset($data['to'])) {
274
+ $to = DateTime::createFromFormat('H:i:s', $data['to'], $amsterdamTimeZone);
275
+ $to->setTimezone($utcTimeZone);
276
+ $postnlOrder->setExpectedDeliveryTimeEnd($to->format('H:i:s'));
277
  }
278
 
279
  /**
app/code/community/TIG/PostNL/Model/DeliveryOptions/System/Config/Backend/ValidateFee.php CHANGED
@@ -36,19 +36,60 @@
36
  * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
  * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
  *
 
 
 
 
 
 
 
39
  * @method boolean hasIsIncludingTax()
40
  * @method TIG_PostNL_Model_DeliveryOptions_System_Config_Backend_ValidateFee setIsIncludingTax(boolean $value)
41
  * @method boolean hasMockShippingAddress()
42
  * @method TIG_PostNL_Model_DeliveryOptions_System_Config_Backend_ValidateFee setMockShippingAddress(Mage_Customer_Model_Address $value)
 
43
  */
44
  class TIG_PostNL_Model_DeliveryOptions_System_Config_Backend_ValidateFee extends Mage_Core_Model_Config_Data
45
  {
46
  /**
47
  * Min and max values for the fee.
48
  */
 
49
  const FEE_MIN_AMOUNT = 0;
 
50
  const FEE_MAX_AMOUNT = 2;
51
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
52
  /**
53
  * @return boolean
54
  */
@@ -102,18 +143,24 @@ class TIG_PostNL_Model_DeliveryOptions_System_Config_Backend_ValidateFee extends
102
  return true;
103
  }
104
 
 
 
 
105
  /**
106
  * If the fee is including tax, make sure it falls within the specified parameters.
107
  */
108
  $isIncludingTax = $this->getIsIncludingTax();
109
  if ($isIncludingTax
110
- && ($fee > self::FEE_MAX_AMOUNT || $fee < self::FEE_MIN_AMOUNT)
111
  ) {
112
  throw new TIG_PostNL_Exception(
113
  Mage::helper('postnl')->__(
114
- 'Invalid fee amount entered: %s incl. VAT. Please enter a value between 0.00 and 2.00 EUR incl. '
115
  . 'VAT.',
116
- $fee
 
 
 
117
  ),
118
  'POSTNL-0153'
119
  );
@@ -127,12 +174,15 @@ class TIG_PostNL_Model_DeliveryOptions_System_Config_Backend_ValidateFee extends
127
  $shippingAddress = $this->getMockShippingAddress();
128
 
129
  $feeIncludingTax = Mage::helper('tax')->getShippingPrice($fee, true, $shippingAddress, null, 0);
130
- if ($feeIncludingTax > self::FEE_MAX_AMOUNT || $feeIncludingTax < self::FEE_MIN_AMOUNT) {
131
  throw new TIG_PostNL_Exception(
132
  Mage::helper('postnl')->__(
133
- 'Invalid fee amount entered: %s incl. VAT. Please enter a value between 0.00 and 2.00 EUR incl. '
134
  . 'VAT.',
135
- $feeIncludingTax
 
 
 
136
  ),
137
  'POSTNL-0153'
138
  );
36
  * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
  * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
  *
39
+ */
40
+
41
+ /**
42
+ * Class TIG_PostNL_Model_DeliveryOptions_System_Config_Backend_ValidateFee
43
+ *
44
+ * Default class used for Fee limit validation, Evening fee limits are default
45
+ *
46
  * @method boolean hasIsIncludingTax()
47
  * @method TIG_PostNL_Model_DeliveryOptions_System_Config_Backend_ValidateFee setIsIncludingTax(boolean $value)
48
  * @method boolean hasMockShippingAddress()
49
  * @method TIG_PostNL_Model_DeliveryOptions_System_Config_Backend_ValidateFee setMockShippingAddress(Mage_Customer_Model_Address $value)
50
+ *
51
  */
52
  class TIG_PostNL_Model_DeliveryOptions_System_Config_Backend_ValidateFee extends Mage_Core_Model_Config_Data
53
  {
54
  /**
55
  * Min and max values for the fee.
56
  */
57
+ /** @deprecated deprecated since version 1.7.0 */
58
  const FEE_MIN_AMOUNT = 0;
59
+ /** @deprecated deprecated since version 1.7.0 */
60
  const FEE_MAX_AMOUNT = 2;
61
 
62
+ /**
63
+ * @var string
64
+ */
65
+ protected $_feeType = TIG_PostNL_Helper_DeliveryOptions_Fee::FEE_TYPE_EVENING;
66
+
67
+ /**
68
+ * @return int
69
+ */
70
+ protected function _getMinFeeAmount()
71
+ {
72
+ $feeLimit = Mage::helper('postnl/deliveryOptions_fee')->getFeeLimit(
73
+ $this->_feeType,
74
+ TIG_PostNL_Helper_DeliveryOptions_Fee::FEE_LIMIT_MIN
75
+ );
76
+
77
+ return $feeLimit;
78
+ }
79
+
80
+ /**
81
+ * @return int
82
+ */
83
+ protected function _getMaxFeeAmount()
84
+ {
85
+ $feeLimit = Mage::helper('postnl/deliveryOptions_fee')->getFeeLimit(
86
+ $this->_feeType,
87
+ TIG_PostNL_Helper_DeliveryOptions_Fee::FEE_LIMIT_MAX
88
+ );
89
+
90
+ return $feeLimit;
91
+ }
92
+
93
  /**
94
  * @return boolean
95
  */
143
  return true;
144
  }
145
 
146
+ $minFeeAmount = $this->_getMinFeeAmount();
147
+ $maxFeeAmount = $this->_getMaxFeeAmount();
148
+
149
  /**
150
  * If the fee is including tax, make sure it falls within the specified parameters.
151
  */
152
  $isIncludingTax = $this->getIsIncludingTax();
153
  if ($isIncludingTax
154
+ && ($fee > $maxFeeAmount || $fee < $minFeeAmount)
155
  ) {
156
  throw new TIG_PostNL_Exception(
157
  Mage::helper('postnl')->__(
158
+ 'Invalid fee amount entered: %s incl. VAT. Please enter a value between %.2f and %.2f %s incl. '
159
  . 'VAT.',
160
+ $fee,
161
+ $minFeeAmount,
162
+ $maxFeeAmount,
163
+ strtoupper(Mage::app()->getBaseCurrencyCode())
164
  ),
165
  'POSTNL-0153'
166
  );
174
  $shippingAddress = $this->getMockShippingAddress();
175
 
176
  $feeIncludingTax = Mage::helper('tax')->getShippingPrice($fee, true, $shippingAddress, null, 0);
177
+ if ($feeIncludingTax > $maxFeeAmount || $feeIncludingTax < $minFeeAmount) {
178
  throw new TIG_PostNL_Exception(
179
  Mage::helper('postnl')->__(
180
+ 'Invalid fee amount entered: %s incl. VAT. Please enter a value between %.2f and %.2f %s incl. '
181
  . 'VAT.',
182
+ $feeIncludingTax,
183
+ $minFeeAmount,
184
+ $maxFeeAmount,
185
+ strtoupper(Mage::app()->getBaseCurrencyCode())
186
  ),
187
  'POSTNL-0153'
188
  );
app/code/community/TIG/PostNL/Model/DeliveryOptions/System/Config/Backend/ValidateFee/SundayDeliveryFee.php ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ___________ __ __
4
+ * \__ ___/____ _/ |_ _____ | |
5
+ * | | / _ \\ __\\__ \ | |
6
+ * | | | |_| || | / __ \_| |__
7
+ * |____| \____/ |__| (____ /|____/
8
+ * \/
9
+ * ___ __ __
10
+ * | | ____ _/ |_ ____ _______ ____ ____ _/ |_
11
+ * | | / \\ __\_/ __ \\_ __ \ / \ _/ __ \\ __\
12
+ * | || | \| | \ ___/ | | \/| | \\ ___/ | |
13
+ * |___||___| /|__| \_____>|__| |___| / \_____>|__|
14
+ * \/ \/
15
+ * ________
16
+ * / _____/_______ ____ __ __ ______
17
+ * / \ ___\_ __ \ / _ \ | | \\____ \
18
+ * \ \_\ \| | \/| |_| || | /| |_| |
19
+ * \______ /|__| \____/ |____/ | __/
20
+ * \/ |__|
21
+ *
22
+ * NOTICE OF LICENSE
23
+ *
24
+ * This source file is subject to the Creative Commons License.
25
+ * It is available through the world-wide-web at this URL:
26
+ * http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
27
+ * If you are unable to obtain it through the world-wide-web, please send an email
28
+ * to servicedesk@tig.nl so we can send you a copy immediately.
29
+ *
30
+ * DISCLAIMER
31
+ *
32
+ * Do not edit or add to this file if you wish to upgrade this module to newer
33
+ * versions in the future. If you wish to customize this module for your
34
+ * needs please contact servicedesk@tig.nl for more information.
35
+ *
36
+ * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
+ * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
+ */
39
+ class TIG_PostNL_Model_DeliveryOptions_System_Config_Backend_ValidateFee_SundayDeliveryFee
40
+ extends TIG_PostNL_Model_DeliveryOptions_System_Config_Backend_ValidateFee
41
+ {
42
+ /**
43
+ * @var string
44
+ */
45
+ protected $_feeType = TIG_PostNL_Helper_DeliveryOptions_fee::FEE_TYPE_SUNDAY;
46
+ }
app/code/community/TIG/PostNL/Model/ExtensionControl/Webservices.php CHANGED
@@ -555,20 +555,20 @@ class TIG_PostNL_Model_ExtensionControl_Webservices extends TIG_PostNL_Model_Ext
555
 
556
  $postnlShippingMethodsRegex .= '$';
557
  $shipmentCollection->addFieldToFilter(
558
- '`order`.`shipping_method`',
559
  array(
560
  'regexp' => $postnlShippingMethodsRegex
561
  )
562
  )
563
  ->addFieldToFilter(
564
- '`main_table`.`store_id`',
565
  array(
566
  'in' => $storeIds
567
  )
568
  );
569
 
570
  if ($shipmentTypes) {
571
- $shipmentCollection->addFieldToFilter('`shipment_type`', array('in', $shipmentTypes));
572
  }
573
 
574
  return $shipmentCollection;
@@ -616,7 +616,7 @@ class TIG_PostNL_Model_ExtensionControl_Webservices extends TIG_PostNL_Model_Ext
616
  */
617
  $orderCollection = Mage::getResourceModel('sales/order_collection');
618
  $orderCollection->addFieldToSelect('created_at')
619
- ->addFieldToFilter('`main_table`.`store_id`', array('in' => $storeIds));
620
 
621
  $orderCollection->getSelect()
622
  ->order('created_at DESC')
@@ -634,7 +634,9 @@ class TIG_PostNL_Model_ExtensionControl_Webservices extends TIG_PostNL_Model_Ext
634
  *
635
  * @var Mage_Sales_Model_Order $lastOrder
636
  */
 
637
  $lastOrder = $orderCollection->getFirstItem();
 
638
  $createdAt = $lastOrder->getCreatedAt();
639
  $createdAt = Mage::getModel('core/date')->date('Y-m-d H:i:s', $createdAt);
640
 
555
 
556
  $postnlShippingMethodsRegex .= '$';
557
  $shipmentCollection->addFieldToFilter(
558
+ 'order.shipping_method',
559
  array(
560
  'regexp' => $postnlShippingMethodsRegex
561
  )
562
  )
563
  ->addFieldToFilter(
564
+ 'main_table.store_id',
565
  array(
566
  'in' => $storeIds
567
  )
568
  );
569
 
570
  if ($shipmentTypes) {
571
+ $shipmentCollection->addFieldToFilter('shipment_type', array('in', $shipmentTypes));
572
  }
573
 
574
  return $shipmentCollection;
616
  */
617
  $orderCollection = Mage::getResourceModel('sales/order_collection');
618
  $orderCollection->addFieldToSelect('created_at')
619
+ ->addFieldToFilter('main_table.store_id', array('in' => $storeIds));
620
 
621
  $orderCollection->getSelect()
622
  ->order('created_at DESC')
634
  *
635
  * @var Mage_Sales_Model_Order $lastOrder
636
  */
637
+ // @codingStandardsIgnoreStart
638
  $lastOrder = $orderCollection->getFirstItem();
639
+ // @codingStandardsIgnoreEnd
640
  $createdAt = $lastOrder->getCreatedAt();
641
  $createdAt = Mage::getModel('core/date')->date('Y-m-d H:i:s', $createdAt);
642
 
app/code/community/TIG/PostNL/Model/Parcelware/Export.php CHANGED
@@ -353,7 +353,7 @@ class TIG_PostNL_Model_Parcelware_Export extends TIG_PostNL_Model_Core_Cif
353
  protected function _getAddressData($shipment)
354
  {
355
  $address = $shipment->getShippingAddress();
356
- $streetData = $this->_getStreetData($address, false);
357
 
358
  $data = array(
359
  'CompanyName' => $address->getCompany(),
@@ -399,7 +399,7 @@ class TIG_PostNL_Model_Parcelware_Export extends TIG_PostNL_Model_Core_Cif
399
  return $data;
400
  }
401
 
402
- $streetData = $this->_getStreetData($pakjeGemakAddress, false);
403
 
404
  $companyName = $pakjeGemakAddress->getCompany();
405
  if (!$companyName) { //PostNL Checkout stores the company name in the lastname field
353
  protected function _getAddressData($shipment)
354
  {
355
  $address = $shipment->getShippingAddress();
356
+ $streetData = $this->_getStreetData($address);
357
 
358
  $data = array(
359
  'CompanyName' => $address->getCompany(),
399
  return $data;
400
  }
401
 
402
+ $streetData = $this->_getStreetData($pakjeGemakAddress);
403
 
404
  $companyName = $pakjeGemakAddress->getCompany();
405
  if (!$companyName) { //PostNL Checkout stores the company name in the lastname field
app/code/community/TIG/PostNL/Model/Payment/Cod.php CHANGED
@@ -255,6 +255,17 @@ class TIG_PostNL_Model_Payment_Cod extends Mage_Payment_Model_Method_Abstract
255
  return false;
256
  }
257
 
 
 
 
 
 
 
 
 
 
 
 
258
  /**
259
  * Finally, perform Magento's own checks.
260
  */
255
  return false;
256
  }
257
 
258
+ /**
259
+ * Check if the delivery type is not a Sunday Delivery, since COD is not available for Sunday delivery
260
+ */
261
+ $postnlOrder = Mage::getModel('postnl_core/order')->load($quote->getId(), 'quote_id');
262
+ if ($postnlOrder->getType() == 'Sunday') {
263
+ $helper->log(
264
+ $helper->__('PostNL Cod is not available, because COD is not allowed in combination with Sunday Delivery.')
265
+ );
266
+ return false;
267
+ }
268
+
269
  /**
270
  * Finally, perform Magento's own checks.
271
  */
app/code/community/TIG/PostNL/Model/Resource/Setup.php CHANGED
@@ -1681,4 +1681,22 @@ class TIG_PostNL_Model_Resource_Setup extends Mage_Eav_Model_Entity_Setup
1681
 
1682
  return $this;
1683
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1684
  }
1681
 
1682
  return $this;
1683
  }
1684
+
1685
+ /**
1686
+ * Prepare attribute values to save.
1687
+ *
1688
+ * @param array $attr
1689
+ *
1690
+ * @return array
1691
+ */
1692
+ protected function _prepareValues($attr)
1693
+ {
1694
+ $data = parent::_prepareValues($attr);
1695
+ $data = array_merge($data, array(
1696
+ 'apply_to' => $this->_getValue($attr, 'apply_to'),
1697
+ )
1698
+ );
1699
+
1700
+ return $data;
1701
+ }
1702
  }
app/code/community/TIG/PostNL/controllers/DeliveryOptionsController.php CHANGED
@@ -908,7 +908,6 @@ class TIG_PostNL_DeliveryOptionsController extends Mage_Core_Controller_Front_Ac
908
  $countryCodeValidator = new Zend_Validate_InArray(array('haystack' => $countryCodes));
909
  $streetValidator = new Zend_Validate_Regex(array('pattern' => self::STREET_NAME_REGEX));
910
  $housenumberValidator = new Zend_Validate_Digits();
911
- $postcodeValidator = new Zend_Validate_PostCode('nl_NL');
912
 
913
  if (!$cityValidator->isValid($city)) {
914
  throw new TIG_PostNL_Exception(
@@ -950,6 +949,8 @@ class TIG_PostNL_DeliveryOptionsController extends Mage_Core_Controller_Front_Ac
950
  );
951
  }
952
 
 
 
953
  if (!$postcodeValidator->isValid($postcode)) {
954
  throw new TIG_PostNL_Exception(
955
  $this->__(
@@ -1039,6 +1040,17 @@ class TIG_PostNL_DeliveryOptionsController extends Mage_Core_Controller_Front_Ac
1039
  );
1040
  }
1041
 
 
 
 
 
 
 
 
 
 
 
 
1042
  $postcode = $params['postcode'];
1043
  $housenumber = $params['housenumber'];
1044
 
@@ -1052,7 +1064,7 @@ class TIG_PostNL_DeliveryOptionsController extends Mage_Core_Controller_Front_Ac
1052
  /**
1053
  * Get validation classes for the postcode and housenumber values.
1054
  */
1055
- $postcodeValidator = new Zend_Validate_PostCode('nl_NL');
1056
  $housenumberValidator = new Zend_Validate_Digits();
1057
 
1058
  /**
@@ -1111,6 +1123,7 @@ class TIG_PostNL_DeliveryOptionsController extends Mage_Core_Controller_Front_Ac
1111
  $data = array(
1112
  'postcode' => $postcode,
1113
  'housenumber' => $housenumber,
 
1114
  'deliveryDate' => $deliveryDate,
1115
  );
1116
 
@@ -1168,6 +1181,17 @@ class TIG_PostNL_DeliveryOptionsController extends Mage_Core_Controller_Front_Ac
1168
  $deliveryDate = $deliveryDate->format('d-m-Y');
1169
  }
1170
 
 
 
 
 
 
 
 
 
 
 
 
1171
  /**
1172
  * If a postcode was supplied, validate it and return it as an array.
1173
  */
@@ -1175,7 +1199,7 @@ class TIG_PostNL_DeliveryOptionsController extends Mage_Core_Controller_Front_Ac
1175
  $postcode = $postData['postcode'];
1176
  $postcode = strtoupper(str_replace(' ', '', $postcode));
1177
 
1178
- $validator = new Zend_Validate_PostCode('nl_NL');
1179
  if (!$validator->isValid($postcode)) {
1180
  throw new TIG_PostNL_Exception(
1181
  $this->__(
@@ -1188,6 +1212,7 @@ class TIG_PostNL_DeliveryOptionsController extends Mage_Core_Controller_Front_Ac
1188
 
1189
  $data = array(
1190
  'postcode' => $postcode,
 
1191
  'deliveryDate' => $deliveryDate,
1192
  );
1193
  return $data;
@@ -1215,6 +1240,7 @@ class TIG_PostNL_DeliveryOptionsController extends Mage_Core_Controller_Front_Ac
1215
  $data = array(
1216
  'lat' => $postData['lat'],
1217
  'long' => $postData['long'],
 
1218
  'deliveryDate' => $deliveryDate,
1219
  );
1220
 
@@ -1299,6 +1325,17 @@ class TIG_PostNL_DeliveryOptionsController extends Mage_Core_Controller_Front_Ac
1299
  $deliveryDate = $deliveryDate->format('d-m-Y');
1300
  }
1301
 
 
 
 
 
 
 
 
 
 
 
 
1302
  $data = array(
1303
  'northEast' => array(
1304
  'lat' => $northEastLat,
@@ -1308,6 +1345,7 @@ class TIG_PostNL_DeliveryOptionsController extends Mage_Core_Controller_Front_Ac
1308
  'lat' => $southWestLat,
1309
  'long' => $southWestLng,
1310
  ),
 
1311
  'deliveryDate' => $deliveryDate,
1312
  );
1313
 
908
  $countryCodeValidator = new Zend_Validate_InArray(array('haystack' => $countryCodes));
909
  $streetValidator = new Zend_Validate_Regex(array('pattern' => self::STREET_NAME_REGEX));
910
  $housenumberValidator = new Zend_Validate_Digits();
 
911
 
912
  if (!$cityValidator->isValid($city)) {
913
  throw new TIG_PostNL_Exception(
949
  );
950
  }
951
 
952
+ $postcodeValidator = new Zend_Validate_PostCode('nl_' . $countryCode);
953
+
954
  if (!$postcodeValidator->isValid($postcode)) {
955
  throw new TIG_PostNL_Exception(
956
  $this->__(
1040
  );
1041
  }
1042
 
1043
+ $country = $params['country'];
1044
+ if ($country != 'NL' && $country != 'BE') {
1045
+ throw new TIG_PostNL_Exception(
1046
+ $this->__(
1047
+ 'Invalid country supplied for GetDeliveryTimeframes request: %s',
1048
+ $country
1049
+ ),
1050
+ 'POSTNL-0233'
1051
+ );
1052
+ }
1053
+
1054
  $postcode = $params['postcode'];
1055
  $housenumber = $params['housenumber'];
1056
 
1064
  /**
1065
  * Get validation classes for the postcode and housenumber values.
1066
  */
1067
+ $postcodeValidator = new Zend_Validate_PostCode('nl_' . $country);
1068
  $housenumberValidator = new Zend_Validate_Digits();
1069
 
1070
  /**
1123
  $data = array(
1124
  'postcode' => $postcode,
1125
  'housenumber' => $housenumber,
1126
+ 'country' => $country,
1127
  'deliveryDate' => $deliveryDate,
1128
  );
1129
 
1181
  $deliveryDate = $deliveryDate->format('d-m-Y');
1182
  }
1183
 
1184
+ $country = $postData['country'];
1185
+ if ($country != 'NL' && $country != 'BE') {
1186
+ throw new TIG_PostNL_Exception(
1187
+ $this->__(
1188
+ 'Invalid country supplied for getNearestLocations request: %s',
1189
+ $country
1190
+ ),
1191
+ 'POSTNL-0232'
1192
+ );
1193
+ }
1194
+
1195
  /**
1196
  * If a postcode was supplied, validate it and return it as an array.
1197
  */
1199
  $postcode = $postData['postcode'];
1200
  $postcode = strtoupper(str_replace(' ', '', $postcode));
1201
 
1202
+ $validator = new Zend_Validate_PostCode('nl_' . $country);
1203
  if (!$validator->isValid($postcode)) {
1204
  throw new TIG_PostNL_Exception(
1205
  $this->__(
1212
 
1213
  $data = array(
1214
  'postcode' => $postcode,
1215
+ 'country' => $country,
1216
  'deliveryDate' => $deliveryDate,
1217
  );
1218
  return $data;
1240
  $data = array(
1241
  'lat' => $postData['lat'],
1242
  'long' => $postData['long'],
1243
+ 'country' => $country,
1244
  'deliveryDate' => $deliveryDate,
1245
  );
1246
 
1325
  $deliveryDate = $deliveryDate->format('d-m-Y');
1326
  }
1327
 
1328
+ $country = $postData['country'];
1329
+ if ($country != 'NL' && $country != 'BE') {
1330
+ throw new TIG_PostNL_Exception(
1331
+ $this->__(
1332
+ 'Invalid country supplied for getLocationsInArea request: %s',
1333
+ $country
1334
+ ),
1335
+ 'POSTNL-0234'
1336
+ );
1337
+ }
1338
+
1339
  $data = array(
1340
  'northEast' => array(
1341
  'lat' => $northEastLat,
1345
  'lat' => $southWestLat,
1346
  'long' => $southWestLng,
1347
  ),
1348
+ 'country' => $country,
1349
  'deliveryDate' => $deliveryDate,
1350
  );
1351
 
app/code/community/TIG/PostNL/controllers/{Adminhtml → PostnlAdminhtml}/ConfigController.php RENAMED
@@ -36,7 +36,7 @@
36
  * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
  * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
  */
39
- class TIG_PostNL_Adminhtml_ConfigController extends TIG_PostNL_Controller_Adminhtml_Config
40
  {
41
  /**
42
  * Base XML path of config settings that will be checked.
36
  * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
  * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
  */
39
+ class TIG_PostNL_PostnlAdminhtml_ConfigController extends TIG_PostNL_Controller_Adminhtml_Config
40
  {
41
  /**
42
  * Base XML path of config settings that will be checked.
app/code/community/TIG/PostNL/controllers/{Adminhtml → PostnlAdminhtml}/ExtensionControlController.php RENAMED
@@ -36,7 +36,7 @@
36
  * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
  * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
  */
39
- class TIG_PostNL_Adminhtml_ExtensionControlController extends TIG_PostNL_Controller_Adminhtml_Config
40
  {
41
  /**
42
  * XML path to extensioncontrol email setting
36
  * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
  * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
  */
39
+ class TIG_PostNL_PostnlAdminhtml_ExtensionControlController extends TIG_PostNL_Controller_Adminhtml_Config
40
  {
41
  /**
42
  * XML path to extensioncontrol email setting
app/code/community/TIG/PostNL/controllers/{Adminhtml → PostnlAdminhtml}/ReturnsController.php RENAMED
@@ -36,7 +36,7 @@
36
  * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
  * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
  */
39
- class TIG_PostNL_Adminhtml_ReturnsController extends Mage_Adminhtml_Controller_Sales_Shipment
40
  {
41
  /**
42
  * Returns grid.
36
  * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
  * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
  */
39
+ class TIG_PostNL_PostnlAdminhtml_ReturnsController extends Mage_Adminhtml_Controller_Sales_Shipment
40
  {
41
  /**
42
  * Returns grid.
app/code/community/TIG/PostNL/controllers/{Adminhtml → PostnlAdminhtml}/ShipmentController.php RENAMED
@@ -36,7 +36,7 @@
36
  * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
  * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
  */
39
- class TIG_PostNL_Adminhtml_ShipmentController extends TIG_PostNL_Controller_Adminhtml_Shipment
40
  {
41
  /**
42
  * Print a shipping label for a single shipment.
36
  * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
  * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
  */
39
+ class TIG_PostNL_PostnlAdminhtml_ShipmentController extends TIG_PostNL_Controller_Adminhtml_Shipment
40
  {
41
  /**
42
  * Print a shipping label for a single shipment.
app/code/community/TIG/PostNL/data/postnl_setup/data-install-1.5.2.php ADDED
@@ -0,0 +1,159 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ___________ __ __
4
+ * \__ ___/____ _/ |_ _____ | |
5
+ * | | / _ \\ __\\__ \ | |
6
+ * | | | |_| || | / __ \_| |__
7
+ * |____| \____/ |__| (____ /|____/
8
+ * \/
9
+ * ___ __ __
10
+ * | | ____ _/ |_ ____ _______ ____ ____ _/ |_
11
+ * | | / \\ __\_/ __ \\_ __ \ / \ _/ __ \\ __\
12
+ * | || | \| | \ ___/ | | \/| | \\ ___/ | |
13
+ * |___||___| /|__| \_____>|__| |___| / \_____>|__|
14
+ * \/ \/
15
+ * ________
16
+ * / _____/_______ ____ __ __ ______
17
+ * / \ ___\_ __ \ / _ \ | | \\____ \
18
+ * \ \_\ \| | \/| |_| || | /| |_| |
19
+ * \______ /|__| \____/ |____/ | __/
20
+ * \/ |__|
21
+ *
22
+ * NOTICE OF LICENSE
23
+ *
24
+ * This source file is subject to the Creative Commons License.
25
+ * It is available through the world-wide-web at this URL:
26
+ * http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
27
+ * If you are unable to obtain it through the world-wide-web, please send an email
28
+ * to servicedesk@tig.nl so we can send you a copy immediately.
29
+ *
30
+ * DISCLAIMER
31
+ *
32
+ * Do not edit or add to this file if you wish to upgrade this module to newer
33
+ * versions in the future. If you wish to customize this module for your
34
+ * needs please contact servicedesk@tig.nl for more information.
35
+ *
36
+ * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
+ * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
+ *
39
+ * @var TIG_PostNL_Model_Resource_Setup $installer
40
+ */
41
+ $installer = $this;
42
+
43
+ set_time_limit(0);
44
+
45
+ /**
46
+ * This attribute needs to be updated for simple products.
47
+ */
48
+ $simpleAttributesData = array(
49
+ 'postnl_max_qty_for_buspakje' => 0,
50
+ );
51
+
52
+ /**
53
+ * These attributes need to be updated for the product types specified below.
54
+ */
55
+ $attributesData = array(
56
+ 'postnl_allow_pakje_gemak' => 1,
57
+ 'postnl_allow_delivery_days' => 1,
58
+ 'postnl_allow_timeframes' => 1,
59
+ 'postnl_allow_pakketautomaat' => 1,
60
+ 'postnl_allow_delivery_options' => 1,
61
+ );
62
+
63
+ $productTypes = array(
64
+ Mage_Catalog_Model_Product_Type::TYPE_SIMPLE,
65
+ Mage_Catalog_Model_Product_Type::TYPE_CONFIGURABLE,
66
+ Mage_Catalog_Model_Product_Type::TYPE_GROUPED,
67
+ Mage_Catalog_Model_Product_Type::TYPE_BUNDLE,
68
+ );
69
+
70
+ /**
71
+ * Matrix rate data.
72
+ */
73
+ $matrixRateData = array(
74
+ array('NL', '*', '*', '0', '0', '0', 'regular', '5'), // Regular Dutch shipments
75
+ array('NL', '*', '*', '0', '0', '0', 'letter_box', '2.5'), // Dutch buspakje shipments
76
+ array('BE', '*', '*', '0', '0', '0', '*', '5'), // Belgian shipments
77
+ array('BE', '*', '*', '1', '0', '0', '*', '5'),
78
+ array('BE', '*', '*', '2', '0', '0', '*', '5'),
79
+ array('BE', '*', '*', '3', '0', '0', '*', '5'),
80
+ array('BE', '*', '*', '4', '0', '0', '*', '5'),
81
+ array('BE', '*', '*', '5', '0', '0', '*', '5'),
82
+ array('BE', '*', '*', '6', '0', '0', '*', '5'),
83
+ array('BE', '*', '*', '7', '0', '0', '*', '5'),
84
+ array('BE', '*', '*', '8', '0', '0', '*', '5'),
85
+ array('BE', '*', '*', '9', '0', '0', '*', '5'),
86
+ array('BE', '*', '*', '10', '0', '0', '*', '5'),
87
+ array('BE', '*', '*', '11', '0', '0', '*', '5'),
88
+ array('BE', '*', '*', '12', '0', '0', '*', '5'),
89
+ array('BE', '*', '*', '13', '0', '0', '*', '5'),
90
+ array('BE', '*', '*', '14', '0', '0', '*', '5'),
91
+ array('BE', '*', '*', '15', '0', '0', '*', '5'),
92
+ array('BE', '*', '*', '16', '0', '0', '*', '5'),
93
+ array('BE', '*', '*', '17', '0', '0', '*', '5'),
94
+ array('BE', '*', '*', '18', '0', '0', '*', '5'),
95
+ array('BE', '*', '*', '19', '0', '0', '*', '5'),
96
+ array('BE', '*', '*', '20', '0', '0', '*', '5'),
97
+ array('BE', '*', '*', '21', '0', '0', '*', '5'),
98
+ array('BE', '*', '*', '22', '0', '0', '*', '5'),
99
+ array('BE', '*', '*', '23', '0', '0', '*', '5'),
100
+ array('BE', '*', '*', '24', '0', '0', '*', '5'),
101
+ array('BE', '*', '*', '25', '0', '0', '*', '5'),
102
+ array('BE', '*', '*', '26', '0', '0', '*', '5'),
103
+ array('BE', '*', '*', '27', '0', '0', '*', '5'),
104
+ array('BE', '*', '*', '28', '0', '0', '*', '5'),
105
+ array('BE', '*', '*', '29', '0', '0', '*', '5'),
106
+ array('DE', '*', '*', '0', '0', '0', '*', '5'), // German shipments
107
+ array('DE', '*', '*', '1', '0', '0', '*', '5'),
108
+ array('DE', '*', '*', '2', '0', '0', '*', '5'),
109
+ array('DE', '*', '*', '3', '0', '0', '*', '5'),
110
+ array('DE', '*', '*', '4', '0', '0', '*', '5'),
111
+ array('DE', '*', '*', '5', '0', '0', '*', '5'),
112
+ array('DE', '*', '*', '6', '0', '0', '*', '5'),
113
+ array('DE', '*', '*', '7', '0', '0', '*', '5'),
114
+ array('DE', '*', '*', '8', '0', '0', '*', '5'),
115
+ array('DE', '*', '*', '9', '0', '0', '*', '5'),
116
+ array('DE', '*', '*', '10', '0', '0', '*', '5'),
117
+ array('DE', '*', '*', '11', '0', '0', '*', '5'),
118
+ array('DE', '*', '*', '12', '0', '0', '*', '5'),
119
+ array('DE', '*', '*', '13', '0', '0', '*', '5'),
120
+ array('DE', '*', '*', '14', '0', '0', '*', '5'),
121
+ array('DE', '*', '*', '15', '0', '0', '*', '5'),
122
+ array('DE', '*', '*', '16', '0', '0', '*', '5'),
123
+ array('DE', '*', '*', '17', '0', '0', '*', '5'),
124
+ array('DE', '*', '*', '18', '0', '0', '*', '5'),
125
+ array('DE', '*', '*', '19', '0', '0', '*', '5'),
126
+ array('DE', '*', '*', '20', '0', '0', '*', '5'),
127
+ array('DE', '*', '*', '21', '0', '0', '*', '5'),
128
+ array('DE', '*', '*', '22', '0', '0', '*', '5'),
129
+ array('DE', '*', '*', '23', '0', '0', '*', '5'),
130
+ array('DE', '*', '*', '24', '0', '0', '*', '5'),
131
+ array('DE', '*', '*', '25', '0', '0', '*', '5'),
132
+ array('DE', '*', '*', '26', '0', '0', '*', '5'),
133
+ array('DE', '*', '*', '27', '0', '0', '*', '5'),
134
+ array('DE', '*', '*', '28', '0', '0', '*', '5'),
135
+ array('DE', '*', '*', '29', '0', '0', '*', '5'),
136
+ array('*', '*', '*', '0', '0', '0', '*', '5'), // GlobalPack shipments
137
+ );
138
+
139
+ $installer->generateShippingStatusCronExpr()
140
+ ->generateUpdateStatisticsCronExpr()
141
+ ->generateReturnStatusCronExpr()
142
+ ->expandSupportTab()
143
+ ->installTestPassword()
144
+ ->installWebshopId()
145
+ ->installPackingSlipItemColumns()
146
+ ->setProductAttributeUpdateCron(
147
+ array(
148
+ array(
149
+ $simpleAttributesData,
150
+ array(Mage_Catalog_Model_Product_Type::TYPE_SIMPLE),
151
+ ),
152
+ array(
153
+ $attributesData,
154
+ $productTypes,
155
+ )
156
+ )
157
+ )
158
+ ->installMatrixRates($matrixRateData)
159
+ ->clearConfigCache();
app/code/community/TIG/PostNL/data/postnl_setup/data-install-1.7.0.php ADDED
@@ -0,0 +1,159 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ___________ __ __
4
+ * \__ ___/____ _/ |_ _____ | |
5
+ * | | / _ \\ __\\__ \ | |
6
+ * | | | |_| || | / __ \_| |__
7
+ * |____| \____/ |__| (____ /|____/
8
+ * \/
9
+ * ___ __ __
10
+ * | | ____ _/ |_ ____ _______ ____ ____ _/ |_
11
+ * | | / \\ __\_/ __ \\_ __ \ / \ _/ __ \\ __\
12
+ * | || | \| | \ ___/ | | \/| | \\ ___/ | |
13
+ * |___||___| /|__| \_____>|__| |___| / \_____>|__|
14
+ * \/ \/
15
+ * ________
16
+ * / _____/_______ ____ __ __ ______
17
+ * / \ ___\_ __ \ / _ \ | | \\____ \
18
+ * \ \_\ \| | \/| |_| || | /| |_| |
19
+ * \______ /|__| \____/ |____/ | __/
20
+ * \/ |__|
21
+ *
22
+ * NOTICE OF LICENSE
23
+ *
24
+ * This source file is subject to the Creative Commons License.
25
+ * It is available through the world-wide-web at this URL:
26
+ * http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
27
+ * If you are unable to obtain it through the world-wide-web, please send an email
28
+ * to servicedesk@tig.nl so we can send you a copy immediately.
29
+ *
30
+ * DISCLAIMER
31
+ *
32
+ * Do not edit or add to this file if you wish to upgrade this module to newer
33
+ * versions in the future. If you wish to customize this module for your
34
+ * needs please contact servicedesk@tig.nl for more information.
35
+ *
36
+ * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
+ * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
+ *
39
+ * @var TIG_PostNL_Model_Resource_Setup $installer
40
+ */
41
+ $installer = $this;
42
+
43
+ set_time_limit(0);
44
+
45
+ /**
46
+ * This attribute needs to be updated for simple products.
47
+ */
48
+ $simpleAttributesData = array(
49
+ 'postnl_max_qty_for_buspakje' => 0,
50
+ );
51
+
52
+ /**
53
+ * These attributes need to be updated for the product types specified below.
54
+ */
55
+ $attributesData = array(
56
+ 'postnl_allow_pakje_gemak' => 1,
57
+ 'postnl_allow_delivery_days' => 1,
58
+ 'postnl_allow_timeframes' => 1,
59
+ 'postnl_allow_pakketautomaat' => 1,
60
+ 'postnl_allow_delivery_options' => 1,
61
+ );
62
+
63
+ $productTypes = array(
64
+ Mage_Catalog_Model_Product_Type::TYPE_SIMPLE,
65
+ Mage_Catalog_Model_Product_Type::TYPE_CONFIGURABLE,
66
+ Mage_Catalog_Model_Product_Type::TYPE_GROUPED,
67
+ Mage_Catalog_Model_Product_Type::TYPE_BUNDLE,
68
+ );
69
+
70
+ /**
71
+ * Matrix rate data.
72
+ */
73
+ $matrixRateData = array(
74
+ array('NL', '*', '*', '0', '0', '0', 'regular', '5'), // Regular Dutch shipments
75
+ array('NL', '*', '*', '0', '0', '0', 'letter_box', '2.5'), // Dutch buspakje shipments
76
+ array('BE', '*', '*', '0', '0', '0', '*', '5'), // Belgian shipments
77
+ array('BE', '*', '*', '1', '0', '0', '*', '5'),
78
+ array('BE', '*', '*', '2', '0', '0', '*', '5'),
79
+ array('BE', '*', '*', '3', '0', '0', '*', '5'),
80
+ array('BE', '*', '*', '4', '0', '0', '*', '5'),
81
+ array('BE', '*', '*', '5', '0', '0', '*', '5'),
82
+ array('BE', '*', '*', '6', '0', '0', '*', '5'),
83
+ array('BE', '*', '*', '7', '0', '0', '*', '5'),
84
+ array('BE', '*', '*', '8', '0', '0', '*', '5'),
85
+ array('BE', '*', '*', '9', '0', '0', '*', '5'),
86
+ array('BE', '*', '*', '10', '0', '0', '*', '5'),
87
+ array('BE', '*', '*', '11', '0', '0', '*', '5'),
88
+ array('BE', '*', '*', '12', '0', '0', '*', '5'),
89
+ array('BE', '*', '*', '13', '0', '0', '*', '5'),
90
+ array('BE', '*', '*', '14', '0', '0', '*', '5'),
91
+ array('BE', '*', '*', '15', '0', '0', '*', '5'),
92
+ array('BE', '*', '*', '16', '0', '0', '*', '5'),
93
+ array('BE', '*', '*', '17', '0', '0', '*', '5'),
94
+ array('BE', '*', '*', '18', '0', '0', '*', '5'),
95
+ array('BE', '*', '*', '19', '0', '0', '*', '5'),
96
+ array('BE', '*', '*', '20', '0', '0', '*', '5'),
97
+ array('BE', '*', '*', '21', '0', '0', '*', '5'),
98
+ array('BE', '*', '*', '22', '0', '0', '*', '5'),
99
+ array('BE', '*', '*', '23', '0', '0', '*', '5'),
100
+ array('BE', '*', '*', '24', '0', '0', '*', '5'),
101
+ array('BE', '*', '*', '25', '0', '0', '*', '5'),
102
+ array('BE', '*', '*', '26', '0', '0', '*', '5'),
103
+ array('BE', '*', '*', '27', '0', '0', '*', '5'),
104
+ array('BE', '*', '*', '28', '0', '0', '*', '5'),
105
+ array('BE', '*', '*', '29', '0', '0', '*', '5'),
106
+ array('DE', '*', '*', '0', '0', '0', '*', '5'), // German shipments
107
+ array('DE', '*', '*', '1', '0', '0', '*', '5'),
108
+ array('DE', '*', '*', '2', '0', '0', '*', '5'),
109
+ array('DE', '*', '*', '3', '0', '0', '*', '5'),
110
+ array('DE', '*', '*', '4', '0', '0', '*', '5'),
111
+ array('DE', '*', '*', '5', '0', '0', '*', '5'),
112
+ array('DE', '*', '*', '6', '0', '0', '*', '5'),
113
+ array('DE', '*', '*', '7', '0', '0', '*', '5'),
114
+ array('DE', '*', '*', '8', '0', '0', '*', '5'),
115
+ array('DE', '*', '*', '9', '0', '0', '*', '5'),
116
+ array('DE', '*', '*', '10', '0', '0', '*', '5'),
117
+ array('DE', '*', '*', '11', '0', '0', '*', '5'),
118
+ array('DE', '*', '*', '12', '0', '0', '*', '5'),
119
+ array('DE', '*', '*', '13', '0', '0', '*', '5'),
120
+ array('DE', '*', '*', '14', '0', '0', '*', '5'),
121
+ array('DE', '*', '*', '15', '0', '0', '*', '5'),
122
+ array('DE', '*', '*', '16', '0', '0', '*', '5'),
123
+ array('DE', '*', '*', '17', '0', '0', '*', '5'),
124
+ array('DE', '*', '*', '18', '0', '0', '*', '5'),
125
+ array('DE', '*', '*', '19', '0', '0', '*', '5'),
126
+ array('DE', '*', '*', '20', '0', '0', '*', '5'),
127
+ array('DE', '*', '*', '21', '0', '0', '*', '5'),
128
+ array('DE', '*', '*', '22', '0', '0', '*', '5'),
129
+ array('DE', '*', '*', '23', '0', '0', '*', '5'),
130
+ array('DE', '*', '*', '24', '0', '0', '*', '5'),
131
+ array('DE', '*', '*', '25', '0', '0', '*', '5'),
132
+ array('DE', '*', '*', '26', '0', '0', '*', '5'),
133
+ array('DE', '*', '*', '27', '0', '0', '*', '5'),
134
+ array('DE', '*', '*', '28', '0', '0', '*', '5'),
135
+ array('DE', '*', '*', '29', '0', '0', '*', '5'),
136
+ array('*', '*', '*', '0', '0', '0', '*', '5'), // GlobalPack shipments
137
+ );
138
+
139
+ $installer->generateShippingStatusCronExpr()
140
+ ->generateUpdateStatisticsCronExpr()
141
+ ->generateReturnStatusCronExpr()
142
+ ->expandSupportTab()
143
+ ->installTestPassword()
144
+ ->installWebshopId()
145
+ ->installPackingSlipItemColumns()
146
+ ->setProductAttributeUpdateCron(
147
+ array(
148
+ array(
149
+ $simpleAttributesData,
150
+ array(Mage_Catalog_Model_Product_Type::TYPE_SIMPLE),
151
+ ),
152
+ array(
153
+ $attributesData,
154
+ $productTypes,
155
+ )
156
+ )
157
+ )
158
+ ->installMatrixRates($matrixRateData)
159
+ ->clearConfigCache();
app/code/community/TIG/PostNL/data/postnl_setup/data-uninstall-1.5.2.php CHANGED
@@ -83,7 +83,7 @@ foreach($deleteAttributes as $attribute){
83
  } catch (Mage_Core_Exception $e) {
84
  // Log that we couldn't remove the attribute, but do continue
85
  $message = $helper->__('PostNL uninstall failed on removing product attribute: %s', $attribute);
86
- $helper->log($message, Zend_Log::ERR, null, true, 'TIG_PostNL' . DS . 'TIG_Uninstall_Log.log');
87
  }
88
  }
89
 
@@ -97,21 +97,27 @@ if (file_exists($xmlLocation)) {
97
  if ($writable) {
98
  // Load the XML
99
  $xml = simplexml_load_file($xmlLocation);
100
- $xml->modules->TIG_PostNL->active = 'false';
101
- // Suppress errors in case of the file not being writable after all (which should not happen)
102
- $writable = @file_put_contents($xmlLocation, $xml->asXML());
 
 
 
 
 
103
  }
104
- // If either $writable is false due to is_writable or because file_put_contents failed, we're going to log a message
 
105
  if ($writable === false) {
106
  // Log that we really couldn't write the file
107
  $message = $helper->__('PostNL uninstall found but could not write to XML file: %s', $xmlLocation);
108
- $helper->log($message, Zend_Log::ERR, null, true, 'TIG_PostNL' . DS . 'TIG_Uninstall_Log.log');
109
  } else {
110
  $message = $helper->__('PostNL has been uninstalled successfully.');
111
- $helper->log($message, Zend_Log::NOTICE, null, true, 'TIG_PostNL' . DS . 'TIG_Uninstall_Log.log');
112
  }
113
  } else {
114
  // Log that the file doesn't exist or isn't writable
115
  $message = $helper->__('PostNL uninstall could not find or XML file: %s', $xmlLocation);
116
- $helper->log($message, Zend_Log::ERR, null, true, 'TIG_PostNL' . DS . 'TIG_Uninstall_Log.log');
117
  }
83
  } catch (Mage_Core_Exception $e) {
84
  // Log that we couldn't remove the attribute, but do continue
85
  $message = $helper->__('PostNL uninstall failed on removing product attribute: %s', $attribute);
86
+ $helper->log($message, Zend_Log::ERR, 'TIG_PostNL' . DS . 'TIG_Uninstall_Log.log', null, true);
87
  }
88
  }
89
 
97
  if ($writable) {
98
  // Load the XML
99
  $xml = simplexml_load_file($xmlLocation);
100
+ if ($xml) {
101
+ $xml->modules->TIG_PostNL->active = 'false';
102
+ // Suppress errors in case of the file not being writable after all (which should not happen)
103
+ $writable = @file_put_contents($xmlLocation, $xml->asXML());
104
+ } else {
105
+ // simplexml_load_file returned false
106
+ $writable = false;
107
+ }
108
  }
109
+ // If either $writable is false due to is_writable, or because file_put_contents or simplexml_load_file failed,
110
+ // we're going to log a message
111
  if ($writable === false) {
112
  // Log that we really couldn't write the file
113
  $message = $helper->__('PostNL uninstall found but could not write to XML file: %s', $xmlLocation);
114
+ $helper->log($message, Zend_Log::ERR, 'TIG_PostNL' . DS . 'TIG_Uninstall_Log.log', null, true);
115
  } else {
116
  $message = $helper->__('PostNL has been uninstalled successfully.');
117
+ $helper->log($message, Zend_Log::ERR, 'TIG_PostNL' . DS . 'TIG_Uninstall_Log.log', null, true);
118
  }
119
  } else {
120
  // Log that the file doesn't exist or isn't writable
121
  $message = $helper->__('PostNL uninstall could not find or XML file: %s', $xmlLocation);
122
+ $helper->log($message, Zend_Log::ERR, 'TIG_PostNL' . DS . 'TIG_Uninstall_Log.log', null, true);
123
  }
app/code/community/TIG/PostNL/data/postnl_setup/data-upgrade-1.6.0-1.6.1.php ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ___________ __ __
4
+ * \__ ___/____ _/ |_ _____ | |
5
+ * | | / _ \\ __\\__ \ | |
6
+ * | | | |_| || | / __ \_| |__
7
+ * |____| \____/ |__| (____ /|____/
8
+ * \/
9
+ * ___ __ __
10
+ * | | ____ _/ |_ ____ _______ ____ ____ _/ |_
11
+ * | | / \\ __\_/ __ \\_ __ \ / \ _/ __ \\ __\
12
+ * | || | \| | \ ___/ | | \/| | \\ ___/ | |
13
+ * |___||___| /|__| \_____>|__| |___| / \_____>|__|
14
+ * \/ \/
15
+ * ________
16
+ * / _____/_______ ____ __ __ ______
17
+ * / \ ___\_ __ \ / _ \ | | \\____ \
18
+ * \ \_\ \| | \/| |_| || | /| |_| |
19
+ * \______ /|__| \____/ |____/ | __/
20
+ * \/ |__|
21
+ *
22
+ * NOTICE OF LICENSE
23
+ *
24
+ * This source file is subject to the Creative Commons License.
25
+ * It is available through the world-wide-web at this URL:
26
+ * http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
27
+ * If you are unable to obtain it through the world-wide-web, please send an email
28
+ * to servicedesk@tig.nl so we can send you a copy immediately.
29
+ *
30
+ * DISCLAIMER
31
+ *
32
+ * Do not edit or add to this file if you wish to upgrade this module to newer
33
+ * versions in the future. If you wish to customize this module for your
34
+ * needs please contact servicedesk@tig.nl for more information.
35
+ *
36
+ * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
+ * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
+ */
39
+
40
+ /**
41
+ * @var TIG_PostNL_Model_Resource_Setup $installer
42
+ */
43
+ $installer = $this;
44
+
45
+ /**
46
+ * Form an array of config values to be reset.
47
+ * The PostNL COD country config values are no longer available, and therefore need to be reset to default value.
48
+ */
49
+ $codCountryConfig = array(
50
+ 'payment/postnl_cod/allowspecific',
51
+ 'payment/postnl_cod/specificcountry'
52
+ );
53
+
54
+ $installer->resetConfig($codCountryConfig);
app/code/community/TIG/PostNL/data/postnl_setup/data-upgrade-1.6.1-1.7.0.php ADDED
@@ -0,0 +1,71 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ___________ __ __
4
+ * \__ ___/____ _/ |_ _____ | |
5
+ * | | / _ \\ __\\__ \ | |
6
+ * | | | |_| || | / __ \_| |__
7
+ * |____| \____/ |__| (____ /|____/
8
+ * \/
9
+ * ___ __ __
10
+ * | | ____ _/ |_ ____ _______ ____ ____ _/ |_
11
+ * | | / \\ __\_/ __ \\_ __ \ / \ _/ __ \\ __\
12
+ * | || | \| | \ ___/ | | \/| | \\ ___/ | |
13
+ * |___||___| /|__| \_____>|__| |___| / \_____>|__|
14
+ * \/ \/
15
+ * ________
16
+ * / _____/_______ ____ __ __ ______
17
+ * / \ ___\_ __ \ / _ \ | | \\____ \
18
+ * \ \_\ \| | \/| |_| || | /| |_| |
19
+ * \______ /|__| \____/ |____/ | __/
20
+ * \/ |__|
21
+ *
22
+ * NOTICE OF LICENSE
23
+ *
24
+ * This source file is subject to the Creative Commons License.
25
+ * It is available through the world-wide-web at this URL:
26
+ * http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
27
+ * If you are unable to obtain it through the world-wide-web, please send an email
28
+ * to servicedesk@tig.nl so we can send you a copy immediately.
29
+ *
30
+ * DISCLAIMER
31
+ *
32
+ * Do not edit or add to this file if you wish to upgrade this module to newer
33
+ * versions in the future. If you wish to customize this module for your
34
+ * needs please contact servicedesk@tig.nl for more information.
35
+ *
36
+ * @copyright Copyright (c) 2015 Total Internet Group B.V. (http://www.tig.nl)
37
+ * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
+ */
39
+
40
+ /**
41
+ * @var TIG_PostNL_Model_Resource_Setup $installer
42
+ */
43
+ $installer = $this;
44
+
45
+ /**
46
+ * These CIF webservices have been updated.
47
+ */
48
+ $updatedWebservices = array(
49
+ 'cif_version_labelling',
50
+ 'cif_version_timeframe',
51
+ 'cif_version_location',
52
+ 'cif_version_deliverydate',
53
+ );
54
+
55
+ $installer->resetWebserviceVersions($updatedWebservices)
56
+ ->addSupportedProductCode(
57
+ array(
58
+ '4970',
59
+ '4971',
60
+ '4972',
61
+ '4973',
62
+ '4974',
63
+ '4975',
64
+ '4976',
65
+ )
66
+ )
67
+ ->moveConfigSettingInDb(
68
+ 'postnl/cif_labels_and_confirming/allow_sunday_sorting',
69
+ 'postnl/delivery_options/allow_sunday_sorting'
70
+ )
71
+ ->clearConfigCache();
app/code/community/TIG/PostNL/docs/modman ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ app/code/community/TIG/PostNL/
2
+ app/design/adminhtml/default/default/layout/TIG/postnl.xml
3
+ app/design/adminhtml/default/default/template/TIG/PostNL/
4
+ app/design/adminhtml/default/magento2/template/TIG/PostNL/
5
+ app/design/frontend/base/default/layout/TIG/postnl.xml
6
+ app/design/frontend/base/default/template/TIG/PostNL/
7
+ app/design/frontend/enterprise/default/template/TIG/PostNL/
8
+ app/design/frontend/rwd/default/layout/TIG/postnl.xml
9
+ app/design/frontend/rwd/default/template/TIG/PostNL/
10
+ app/etc/modules/TIG_PostNL.xml
11
+ app/locale/en_US/template/email/TIG/PostNL/
12
+ app/locale/en_US/TIG_PostNL.csv
13
+ app/locale/nl_NL/template/email/TIG/PostNL/
14
+ app/locale/nl_NL/TIG_PostNL.csv
15
+ lib/TIG/PostNL/
16
+ skin/adminhtml/default/default/css/TIG/PostNL/
17
+ skin/adminhtml/default/default/images/TIG/PostNL/
18
+ skin/adminhtml/default/default/js/TIG/PostNL/
19
+ skin/adminhtml/default/magento2/css/TIG/PostNL/
20
+ skin/adminhtml/default/magento2/images/TIG/PostNL/
21
+ skin/frontend/base/default/css/TIG/PostNL/
22
+ skin/frontend/base/default/images/TIG/PostNL/
23
+ skin/frontend/base/default/js/TIG/PostNL/
24
+ skin/frontend/enterprise/default/css/TIG/PostNL/
25
+ skin/frontend/enterprise/default/images/TIG/PostNL/
26
+ skin/frontend/rwd/default/css/TIG/PostNL/
27
+
app/code/community/TIG/PostNL/etc/adminhtml.xml CHANGED
@@ -44,7 +44,7 @@
44
  <children>
45
  <postnl_returns translate="title" module="postnl">
46
  <title>PostNL Returns</title>
47
- <action>postnl_admin/adminhtml_returns</action>
48
  <sort_order>35</sort_order>
49
  <depends>
50
  <config>postnl/returns/return_labels_active</config>
44
  <children>
45
  <postnl_returns translate="title" module="postnl">
46
  <title>PostNL Returns</title>
47
+ <action>adminhtml/postnlAdminhtml_returns</action>
48
  <sort_order>35</sort_order>
49
  <depends>
50
  <config>postnl/returns/return_labels_active</config>
app/code/community/TIG/PostNL/etc/config.xml CHANGED
@@ -41,7 +41,7 @@
41
  <config>
42
  <modules>
43
  <TIG_PostNL>
44
- <version>1.6.0</version>
45
  </TIG_PostNL>
46
  </modules>
47
 
@@ -377,13 +377,13 @@
377
 
378
  <admin>
379
  <routers>
380
- <postnl_admin>
381
- <use>admin</use>
382
  <args>
383
- <module>TIG_PostNL</module>
384
- <frontName>postnl_admin</frontName>
 
385
  </args>
386
- </postnl_admin>
387
  </routers>
388
  </admin>
389
 
@@ -840,7 +840,6 @@
840
  <label_size>A4</label_size> <!-- A4 size labels -->
841
  <shipping_duration>1</shipping_duration> <!-- Shipping takes 1 day -->
842
  <cutoff_time>17:00:00</cutoff_time> <!-- Add an extra shipping day if customers order after 17:00 P.M. -->
843
- <allow_sunday_sorting>0</allow_sunday_sorting> <!-- Sunday sorting is disabled -->
844
  <sunday_cutoff_time/>
845
  <shipping_days>1,2,3,4,5,6</shipping_days> <!-- Orders are shipped monday through saturday -->
846
  <checkout_extension>magento_onepagecheckout</checkout_extension> <!-- Use Magento's One Page CHeckout as the default checkout extension -->
@@ -885,6 +884,9 @@
885
  <stated_address_only_option>0</stated_address_only_option> <!-- Do not show the 'stated address only' option -->
886
  <stated_address_only_checked>0</stated_address_only_checked> <!-- The stated address only option is not checked by default -->
887
  <stated_address_only_fee>0.26</stated_address_only_fee> <!-- Charge 26 cents extra -->
 
 
 
888
  <mijnpakket_login_active>1</mijnpakket_login_active> <!-- Enable MijnPakket login -->
889
  <mijnpakket_notification>0</mijnpakket_notification> <!-- Do not show MijnPakket notifications after customers have placed their order -->
890
  <show_create_mijnpakket_account_link>1</show_create_mijnpakket_account_link> <!-- Show the create MijnPakket account link -->
@@ -914,8 +916,7 @@
914
  <public_webshop_id>a98e0769d6bf40a8b49d85e7aff41d7a</public_webshop_id> <!-- Demo public webshop ID -->
915
  <wsdl_base_url>https://service.postnl.com/CIF/</wsdl_base_url> <!-- Base URL of CIF WSDL files -->
916
  <test_wsdl_base_url>https://testservice.postnl.com/CIF_SB/</test_wsdl_base_url> <!-- Base URL of CIF sandbox WSDL files -->
917
- <track_and_trace_nl_base_url>https://mijnpakket.postnl.nl/Inbox/Search?</track_and_trace_nl_base_url> <!-- Base URL for the Dutch track & trace page -->
918
- <track_and_trace_int_base_url>https://www.internationalparceltracking.com/Main.aspx#/track</track_and_trace_int_base_url> <!-- Base URL for the international track & trace page -->
919
  </cif>
920
  <packing_slip>
921
  <shipment_reference_type>shipment_increment_id</shipment_reference_type> <!-- Use the shipment's increment ID as the shipment reference -->
@@ -1056,7 +1057,7 @@
1056
  <order_grid_massaction_default>postnl_create_shipments</order_grid_massaction_default> <!-- Select the create shipments mass action by default -->
1057
  <shipping_grid_columns>shipment_type,confirm_date,confirm_status,labels_printed,barcode,shipping_phase</shipping_grid_columns> <!-- Show the shipping description, shipment type, label-printed and shipping phase columns -->
1058
  <shipping_grid_massaction_default>postnl_print_labels_and_confirm</shipping_grid_massaction_default> <!-- 'Print labels and confirm shipment' massaction -->
1059
- <supported_product_options>3085,3086,3091,3093,3097,3087,3094,3189,3089,3389,3096,3090,3385,3390,3535,3545,3536,3546,3534,3544,3533,3543,4952,4945,3553,2928,2828</supported_product_options> <!-- all possible options except for EPS BE only -->
1060
  <default_product_option>3085</default_product_option> <!-- standard shipment -->
1061
  <use_alternative_default>0</use_alternative_default> <!-- Do not use an alternative default -->
1062
  <alternative_default_max_amount>100</alternative_default_max_amount> <!-- 100 EUR -->
@@ -1066,6 +1067,7 @@
1066
  <default_pge_product_option>3544</default_pge_product_option> <!-- Post Office + Signature on Delivery + Notification -->
1067
  <default_buspakje_product_option>2928</default_buspakje_product_option> <!-- Buspakje Extra -->
1068
  <default_stated_address_only_product_option>3385</default_stated_address_only_product_option> <!-- Deliver to stated address only -->
 
1069
  <default_eu_product_option>4952</default_eu_product_option> <!-- EU Pack Special to consumer (combilabel) -->
1070
  <default_eu_be_product_option>4955</default_eu_be_product_option> <!-- EU Pack Standard (Belgium only, no signature) (combilabel) -->
1071
  </grid>
@@ -1087,12 +1089,12 @@
1087
  <postnl_shipping_methods>postnl_flatrate,postnl_tablerate,postnl_matrixrate</postnl_shipping_methods> <!-- By default only the PostNL shipping methods may be consider to be 'PostNL shipping methods' -->
1088
  <cif_version_shippingstatus>1_4</cif_version_shippingstatus> <!-- v1.4 -->
1089
  <cif_version_confirming>1_5</cif_version_confirming> <!-- v1.5 -->
1090
- <cif_version_labelling>1_6</cif_version_labelling> <!-- v1.6 -->
1091
  <cif_version_barcode>1_1</cif_version_barcode> <!-- v1.1 -->
1092
  <cif_version_checkout>2_2</cif_version_checkout> <!-- v2.2 -->
1093
- <cif_version_deliverydate>1_2</cif_version_deliverydate> <!-- v1.2 -->
1094
- <cif_version_timeframe>1_2</cif_version_timeframe> <!-- v1.2 -->
1095
- <cif_version_location>1_1</cif_version_location> <!-- v1.1 -->
1096
  </advanced>
1097
 
1098
  <!-- Login data for the postcode check functionality. -->
@@ -1118,14 +1120,15 @@
1118
  <!-- Version compatibility per Magento edition as well as PHP version compatibility -->
1119
  <compatibility>
1120
  <postnl>
1121
- <enterprise>1.11,1.12,1.13,1.14</enterprise>
1122
- <community>1.6,1.7,1.8,1.9</community>
1123
  <php>5.3,5.4</php>
1124
  <!-- Compatibility with other extensions -->
1125
  <extensions>
1126
  <Idev_OneStepCheckout>4.0,4.1</Idev_OneStepCheckout>
1127
  <Bpost_ShippingManager>4.2.8</Bpost_ShippingManager>
1128
  <GoMage_Checkout>0.0.5.8</GoMage_Checkout>
 
1129
  </extensions>
1130
  </postnl>
1131
  </compatibility>
@@ -2303,7 +2306,7 @@
2303
  </POSTNL-0221>
2304
  <POSTNL-0222>
2305
  <message>Warning: possible PostNL and GoMage LightCheckout conflict.</message>
2306
- <url/>
2307
  <type>warning</type>
2308
  </POSTNL-0222>
2309
  <POSTNL-0223>
@@ -2313,22 +2316,22 @@
2313
  </POSTNL-0223>
2314
  <POSTNL-0224>
2315
  <message>An error occurred while saving this step of the configuration wizard. Please use the regular "Save Config" button instead.</message>
2316
- <url/>
2317
  <type>error</type>
2318
  </POSTNL-0224>
2319
  <POSTNL-0225>
2320
  <message>No PostNL Shipment found for shipment ID #%s.</message>
2321
- <url/>
2322
  <type>error</type>
2323
  </POSTNL-0225>
2324
  <POSTNL-0226>
2325
  <message>Only A4 or A6 are valid values for the 'labelSize' parameter.</message>
2326
- <url/>
2327
  <type>error</type>
2328
  </POSTNL-0226>
2329
  <POSTNL-0227>
2330
  <message>The 'labelStartPosition' parameter must contain an integer value between 1 and 4.</message>
2331
- <url/>
2332
  <type>error</type>
2333
  </POSTNL-0227>
2334
  <POSTNL-0228>
@@ -2343,9 +2346,44 @@
2343
  </POSTNL-0229>
2344
  <POSTNL-0230>
2345
  <message>Could not create or find a shipment for order #%s.</message>
2346
- <url/>
2347
  <type>error</type>
2348
  </POSTNL-0230>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2349
 
2350
  <!-- These error codes are generated by CIF, not by this extension -->
2351
  <LIRS_0>
41
  <config>
42
  <modules>
43
  <TIG_PostNL>
44
+ <version>1.7.0</version>
45
  </TIG_PostNL>
46
  </modules>
47
 
377
 
378
  <admin>
379
  <routers>
380
+ <adminhtml>
 
381
  <args>
382
+ <modules>
383
+ <postnl_admin after="Mage_Adminhtml">TIG_PostNL</postnl_admin>
384
+ </modules>
385
  </args>
386
+ </adminhtml>
387
  </routers>
388
  </admin>
389
 
840
  <label_size>A4</label_size> <!-- A4 size labels -->
841
  <shipping_duration>1</shipping_duration> <!-- Shipping takes 1 day -->
842
  <cutoff_time>17:00:00</cutoff_time> <!-- Add an extra shipping day if customers order after 17:00 P.M. -->
 
843
  <sunday_cutoff_time/>
844
  <shipping_days>1,2,3,4,5,6</shipping_days> <!-- Orders are shipped monday through saturday -->
845
  <checkout_extension>magento_onepagecheckout</checkout_extension> <!-- Use Magento's One Page CHeckout as the default checkout extension -->
884
  <stated_address_only_option>0</stated_address_only_option> <!-- Do not show the 'stated address only' option -->
885
  <stated_address_only_checked>0</stated_address_only_checked> <!-- The stated address only option is not checked by default -->
886
  <stated_address_only_fee>0.26</stated_address_only_fee> <!-- Charge 26 cents extra -->
887
+ <allow_sunday_sorting>0</allow_sunday_sorting> <!-- Sunday sorting is disabled -->
888
+ <enable_sunday_delivery>0</enable_sunday_delivery> <!-- Sunday Delivery cost 0 {base currency} extra -->
889
+ <sunday_delivery_fee>0</sunday_delivery_fee> <!-- Disable sunday delivery -->
890
  <mijnpakket_login_active>1</mijnpakket_login_active> <!-- Enable MijnPakket login -->
891
  <mijnpakket_notification>0</mijnpakket_notification> <!-- Do not show MijnPakket notifications after customers have placed their order -->
892
  <show_create_mijnpakket_account_link>1</show_create_mijnpakket_account_link> <!-- Show the create MijnPakket account link -->
916
  <public_webshop_id>a98e0769d6bf40a8b49d85e7aff41d7a</public_webshop_id> <!-- Demo public webshop ID -->
917
  <wsdl_base_url>https://service.postnl.com/CIF/</wsdl_base_url> <!-- Base URL of CIF WSDL files -->
918
  <test_wsdl_base_url>https://testservice.postnl.com/CIF_SB/</test_wsdl_base_url> <!-- Base URL of CIF sandbox WSDL files -->
919
+ <track_and_trace_base_url>http://postnl.nl/tracktrace/?</track_and_trace_base_url> <!-- Base URL for track & trace page -->
 
920
  </cif>
921
  <packing_slip>
922
  <shipment_reference_type>shipment_increment_id</shipment_reference_type> <!-- Use the shipment's increment ID as the shipment reference -->
1057
  <order_grid_massaction_default>postnl_create_shipments</order_grid_massaction_default> <!-- Select the create shipments mass action by default -->
1058
  <shipping_grid_columns>shipment_type,confirm_date,confirm_status,labels_printed,barcode,shipping_phase</shipping_grid_columns> <!-- Show the shipping description, shipment type, label-printed and shipping phase columns -->
1059
  <shipping_grid_massaction_default>postnl_print_labels_and_confirm</shipping_grid_massaction_default> <!-- 'Print labels and confirm shipment' massaction -->
1060
+ <supported_product_options>3085,3086,3091,3093,3097,3087,3094,3189,3089,3389,3096,3090,3385,3390,3535,3545,3536,3546,3534,3544,3533,3543,4952,4945,3553,2928,2828,4970,4971,4972,4973,4974,4975,4976</supported_product_options> <!-- all possible options except for EPS BE only -->
1061
  <default_product_option>3085</default_product_option> <!-- standard shipment -->
1062
  <use_alternative_default>0</use_alternative_default> <!-- Do not use an alternative default -->
1063
  <alternative_default_max_amount>100</alternative_default_max_amount> <!-- 100 EUR -->
1067
  <default_pge_product_option>3544</default_pge_product_option> <!-- Post Office + Signature on Delivery + Notification -->
1068
  <default_buspakje_product_option>2928</default_buspakje_product_option> <!-- Buspakje Extra -->
1069
  <default_stated_address_only_product_option>3385</default_stated_address_only_product_option> <!-- Deliver to stated address only -->
1070
+ <default_sunday_product_option>3385</default_sunday_product_option> <!-- Deliver to stated address only -->
1071
  <default_eu_product_option>4952</default_eu_product_option> <!-- EU Pack Special to consumer (combilabel) -->
1072
  <default_eu_be_product_option>4955</default_eu_be_product_option> <!-- EU Pack Standard (Belgium only, no signature) (combilabel) -->
1073
  </grid>
1089
  <postnl_shipping_methods>postnl_flatrate,postnl_tablerate,postnl_matrixrate</postnl_shipping_methods> <!-- By default only the PostNL shipping methods may be consider to be 'PostNL shipping methods' -->
1090
  <cif_version_shippingstatus>1_4</cif_version_shippingstatus> <!-- v1.4 -->
1091
  <cif_version_confirming>1_5</cif_version_confirming> <!-- v1.5 -->
1092
+ <cif_version_labelling>2_0</cif_version_labelling> <!-- v2.0 -->
1093
  <cif_version_barcode>1_1</cif_version_barcode> <!-- v1.1 -->
1094
  <cif_version_checkout>2_2</cif_version_checkout> <!-- v2.2 -->
1095
+ <cif_version_deliverydate>2_0</cif_version_deliverydate> <!-- v2.0 -->
1096
+ <cif_version_timeframe>2_0</cif_version_timeframe> <!-- v2.0 -->
1097
+ <cif_version_location>2_0</cif_version_location> <!-- v2.0 -->
1098
  </advanced>
1099
 
1100
  <!-- Login data for the postcode check functionality. -->
1120
  <!-- Version compatibility per Magento edition as well as PHP version compatibility -->
1121
  <compatibility>
1122
  <postnl>
1123
+ <enterprise>1.12,1.13,1.14</enterprise>
1124
+ <community>1.7,1.8,1.9</community>
1125
  <php>5.3,5.4</php>
1126
  <!-- Compatibility with other extensions -->
1127
  <extensions>
1128
  <Idev_OneStepCheckout>4.0,4.1</Idev_OneStepCheckout>
1129
  <Bpost_ShippingManager>4.2.8</Bpost_ShippingManager>
1130
  <GoMage_Checkout>0.0.5.8</GoMage_Checkout>
1131
+ <Picqer_PostNL>1.0</Picqer_PostNL>
1132
  </extensions>
1133
  </postnl>
1134
  </compatibility>
2306
  </POSTNL-0221>
2307
  <POSTNL-0222>
2308
  <message>Warning: possible PostNL and GoMage LightCheckout conflict.</message>
2309
+ <url>https://kb.tig.nl/topic/94859018</url>
2310
  <type>warning</type>
2311
  </POSTNL-0222>
2312
  <POSTNL-0223>
2316
  </POSTNL-0223>
2317
  <POSTNL-0224>
2318
  <message>An error occurred while saving this step of the configuration wizard. Please use the regular "Save Config" button instead.</message>
2319
+ <url>https://kb.tig.nl/topic/94858988</url>
2320
  <type>error</type>
2321
  </POSTNL-0224>
2322
  <POSTNL-0225>
2323
  <message>No PostNL Shipment found for shipment ID #%s.</message>
2324
+ <url>https://kb.tig.nl/topic/94859048</url>
2325
  <type>error</type>
2326
  </POSTNL-0225>
2327
  <POSTNL-0226>
2328
  <message>Only A4 or A6 are valid values for the 'labelSize' parameter.</message>
2329
+ <url>https://kb.tig.nl/topic/94865547</url>
2330
  <type>error</type>
2331
  </POSTNL-0226>
2332
  <POSTNL-0227>
2333
  <message>The 'labelStartPosition' parameter must contain an integer value between 1 and 4.</message>
2334
+ <url>https://kb.tig.nl/topic/94859068</url>
2335
  <type>error</type>
2336
  </POSTNL-0227>
2337
  <POSTNL-0228>
2346
  </POSTNL-0229>
2347
  <POSTNL-0230>
2348
  <message>Could not create or find a shipment for order #%s.</message>
2349
+ <url>https://kb.tig.nl/topic/94859078</url>
2350
  <type>error</type>
2351
  </POSTNL-0230>
2352
+ <POSTNL-0231>
2353
+ <message>No valid delivery day found.</message>
2354
+ <url>http://servicedesk.tig.nl/hc/nl/articles/211803448</url>
2355
+ <type>error</type>
2356
+ </POSTNL-0231>
2357
+ <POSTNL-0232>
2358
+ <message>Invalid country supplied for getNearestLocations request: %s</message>
2359
+ <url>http://servicedesk.tig.nl/hc/nl/articles/211803468</url>
2360
+ <type>error</type>
2361
+ </POSTNL-0232>
2362
+ <POSTNL-0233>
2363
+ <message>Invalid country supplied for GetDeliveryTimeframes request: %s</message>
2364
+ <url>http://servicedesk.tig.nl/hc/nl/articles/211803478</url>
2365
+ <type>error</type>
2366
+ </POSTNL-0233>
2367
+ <POSTNL-0234>
2368
+ <message>Invalid country supplied for getLocationsInArea request: %s</message>
2369
+ <url>http://servicedesk.tig.nl/hc/nl/articles/211803488</url>
2370
+ <type>error</type>
2371
+ </POSTNL-0234>
2372
+ <POSTNL-0235>
2373
+ <message>Invalid country supplied for GetDeliveryDate request: %s. Only "NL" and "BE" are allowed.</message>
2374
+ <url>http://servicedesk.tig.nl/hc/nl/articles/211803498</url>
2375
+ <type>error</type>
2376
+ </POSTNL-0235>
2377
+ <POSTNL-0236>
2378
+ <message>Only 'NL' and 'BE' are allowed as sender country.</message>
2379
+ <url/>
2380
+ <type>error</type>
2381
+ </POSTNL-0236>
2382
+ <POSTNL-0237>
2383
+ <message>Delivery options are only available when shipping from the Netherlands.</message>
2384
+ <url/>
2385
+ <type>error</type>
2386
+ </POSTNL-0237>
2387
 
2388
  <!-- These error codes are generated by CIF, not by this extension -->
2389
  <LIRS_0>
app/code/community/TIG/PostNL/etc/jstranslator.xml CHANGED
@@ -54,6 +54,9 @@
54
  <evening translate="message" module="postnl">
55
  <message>evening</message>
56
  </evening>
 
 
 
57
  <post_office translate="message" module="postnl">
58
  <message>Post Office</message>
59
  </post_office>
54
  <evening translate="message" module="postnl">
55
  <message>evening</message>
56
  </evening>
57
+ <sunday translate="message" module="postnl">
58
+ <message>sunday</message>
59
+ </sunday>
60
  <post_office translate="message" module="postnl">
61
  <message>Post Office</message>
62
  </post_office>
app/code/community/TIG/PostNL/etc/system.xml CHANGED
@@ -199,35 +199,10 @@
199
  <active>1</active>
200
  </depends>
201
  </instructions>
202
- <allowspecific translate="label" module="postnl">
203
- <label>Payment from applicable countries</label>
204
- <frontend_type>allowspecific</frontend_type>
205
- <sort_order>70</sort_order>
206
- <source_model>adminhtml/system_config_source_payment_allspecificcountries</source_model>
207
- <show_in_default>1</show_in_default>
208
- <show_in_website>1</show_in_website>
209
- <show_in_store>0</show_in_store>
210
- <depends>
211
- <active>1</active>
212
- </depends>
213
- </allowspecific>
214
- <specificcountry translate="label" module="postnl">
215
- <label>Payment from specific countries</label>
216
- <frontend_type>multiselect</frontend_type>
217
- <sort_order>80</sort_order>
218
- <source_model>adminhtml/system_config_source_country</source_model>
219
- <show_in_default>1</show_in_default>
220
- <show_in_website>1</show_in_website>
221
- <show_in_store>0</show_in_store>
222
- <can_be_empty>1</can_be_empty>
223
- <depends>
224
- <active>1</active>
225
- </depends>
226
- </specificcountry>
227
  <min_order_total translate="label" module="postnl">
228
  <label>Minimum order total</label>
229
  <frontend_type>text</frontend_type>
230
- <sort_order>90</sort_order>
231
  <show_in_default>1</show_in_default>
232
  <show_in_website>1</show_in_website>
233
  <show_in_store>0</show_in_store>
@@ -238,7 +213,7 @@
238
  <max_order_total translate="label" module="postnl">
239
  <label>Maximum order total</label>
240
  <frontend_type>text</frontend_type>
241
- <sort_order>100</sort_order>
242
  <show_in_default>1</show_in_default>
243
  <show_in_website>1</show_in_website>
244
  <show_in_store>0</show_in_store>
@@ -251,7 +226,7 @@
251
  <tooltip>Set this option to 'yes' to allow orders placed using a different shipping method than PostNL to use this payment method.</tooltip>
252
  <frontend_type>select</frontend_type>
253
  <source_model>postnl/system_config_source_yesno</source_model>
254
- <sort_order>110</sort_order>
255
  <show_in_default>1</show_in_default>
256
  <show_in_website>1</show_in_website>
257
  <show_in_store>0</show_in_store>
@@ -265,7 +240,7 @@
265
  <tooltip>Letter box parcels cannot be shipped using COD. If an order is a letter box parcel and the customer chooses to pay using PostNL COD, the order will be shipped as a regular parcel instead.</tooltip>
266
  <frontend_type>select</frontend_type>
267
  <source_model>postnl/system_config_source_yesno</source_model>
268
- <sort_order>120</sort_order>
269
  <show_in_default>1</show_in_default>
270
  <show_in_website>1</show_in_website>
271
  <show_in_store>0</show_in_store>
@@ -276,7 +251,7 @@
276
  <sort_order translate="label" module="postnl">
277
  <label>Sort order</label>
278
  <frontend_type>text</frontend_type>
279
- <sort_order>130</sort_order>
280
  <show_in_default>1</show_in_default>
281
  <show_in_website>1</show_in_website>
282
  <show_in_store>0</show_in_store>
@@ -552,7 +527,7 @@
552
  <show_in_store>1</show_in_store>
553
  <fields>
554
  <support>
555
- <sort_order>0</sort_order>
556
  <frontend_model>postnl_adminhtml/system_config_form_field_supportTab</frontend_model>
557
  <show_in_default>1</show_in_default>
558
  <show_in_website>1</show_in_website>
@@ -655,7 +630,7 @@
655
  <only_default_header translate="label" module="postnl">
656
  <label><![CDATA[Extension registration is only available on the 'global' scope.]]></label>
657
  <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
658
- <sort_order>90</sort_order>
659
  <show_in_default>0</show_in_default>
660
  <show_in_website>1</show_in_website>
661
  <show_in_store>1</show_in_store>
@@ -677,13 +652,32 @@
677
  <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
678
  <sort_order>10</sort_order>
679
  <show_in_default>1</show_in_default>
 
 
 
 
 
 
 
 
680
  <show_in_website>1</show_in_website>
681
  <show_in_store>1</show_in_store>
682
- </sender_address_header>
 
 
 
 
 
 
 
 
 
 
 
683
  <firstname translate="label" module="postnl">
684
  <label>First Name</label>
685
  <frontend_type>text</frontend_type>
686
- <sort_order>20</sort_order>
687
  <show_in_default>1</show_in_default>
688
  <show_in_website>1</show_in_website>
689
  <show_in_store>1</show_in_store>
@@ -691,7 +685,7 @@
691
  <lastname translate="label" module="postnl">
692
  <label>Last Name</label>
693
  <frontend_type>text</frontend_type>
694
- <sort_order>30</sort_order>
695
  <show_in_default>1</show_in_default>
696
  <show_in_website>1</show_in_website>
697
  <show_in_store>1</show_in_store>
@@ -700,7 +694,7 @@
700
  <company translate="label" module="postnl">
701
  <label>Company</label>
702
  <frontend_type>text</frontend_type>
703
- <sort_order>40</sort_order>
704
  <show_in_default>1</show_in_default>
705
  <show_in_website>1</show_in_website>
706
  <show_in_store>1</show_in_store>
@@ -709,7 +703,7 @@
709
  <department translate="label" module="postnl">
710
  <label>Department</label>
711
  <frontend_type>text</frontend_type>
712
- <sort_order>50</sort_order>
713
  <show_in_default>1</show_in_default>
714
  <show_in_website>1</show_in_website>
715
  <show_in_store>1</show_in_store>
@@ -717,7 +711,7 @@
717
  <streetname translate="label" module="postnl">
718
  <label>Street</label>
719
  <frontend_type>text</frontend_type>
720
- <sort_order>60</sort_order>
721
  <show_in_default>1</show_in_default>
722
  <show_in_website>1</show_in_website>
723
  <show_in_store>1</show_in_store>
@@ -726,7 +720,7 @@
726
  <housenumber translate="label" module="postnl">
727
  <label>House Nr.</label>
728
  <frontend_type>text</frontend_type>
729
- <sort_order>70</sort_order>
730
  <show_in_default>1</show_in_default>
731
  <show_in_website>1</show_in_website>
732
  <show_in_store>1</show_in_store>
@@ -735,7 +729,7 @@
735
  <housenumber_extension translate="label" module="postnl">
736
  <label>House Nr. Extension</label>
737
  <frontend_type>text</frontend_type>
738
- <sort_order>80</sort_order>
739
  <show_in_default>1</show_in_default>
740
  <show_in_website>1</show_in_website>
741
  <show_in_store>1</show_in_store>
@@ -743,7 +737,7 @@
743
  <postcode translate="label" module="postnl">
744
  <label>Postcode</label>
745
  <frontend_type>text</frontend_type>
746
- <sort_order>90</sort_order>
747
  <show_in_default>1</show_in_default>
748
  <show_in_website>1</show_in_website>
749
  <show_in_store>1</show_in_store>
@@ -752,7 +746,7 @@
752
  <city translate="label" module="postnl">
753
  <label>City</label>
754
  <frontend_type>text</frontend_type>
755
- <sort_order>100</sort_order>
756
  <show_in_default>1</show_in_default>
757
  <show_in_website>1</show_in_website>
758
  <show_in_store>1</show_in_store>
@@ -761,7 +755,7 @@
761
  <region translate="label" module="postnl">
762
  <label>Region</label>
763
  <frontend_type>text</frontend_type>
764
- <sort_order>110</sort_order>
765
  <show_in_default>1</show_in_default>
766
  <show_in_website>1</show_in_website>
767
  <show_in_store>1</show_in_store>
@@ -769,7 +763,7 @@
769
  <alternative_sender_address_header translate="label" module="postnl">
770
  <label>Alternative sender address</label>
771
  <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
772
- <sort_order>120</sort_order>
773
  <show_in_default>1</show_in_default>
774
  <show_in_website>1</show_in_website>
775
  <show_in_store>1</show_in_store>
@@ -779,7 +773,7 @@
779
  <frontend_type>checkbox</frontend_type>
780
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
781
  <source_model>postnl/system_config_source_yesno</source_model>
782
- <sort_order>130</sort_order>
783
  <show_in_default>1</show_in_default>
784
  <show_in_website>1</show_in_website>
785
  <show_in_store>1</show_in_store>
@@ -787,7 +781,7 @@
787
  <alternative_sender_firstname translate="label" module="postnl">
788
  <label>First Name</label>
789
  <frontend_type>text</frontend_type>
790
- <sort_order>140</sort_order>
791
  <show_in_default>1</show_in_default>
792
  <show_in_website>1</show_in_website>
793
  <show_in_store>1</show_in_store>
@@ -799,7 +793,7 @@
799
  <alternative_sender_lastname translate="label" module="postnl">
800
  <label>Last Name</label>
801
  <frontend_type>text</frontend_type>
802
- <sort_order>150</sort_order>
803
  <show_in_default>1</show_in_default>
804
  <show_in_website>1</show_in_website>
805
  <show_in_store>1</show_in_store>
@@ -811,7 +805,7 @@
811
  <alternative_sender_company translate="label" module="postnl">
812
  <label>Company</label>
813
  <frontend_type>text</frontend_type>
814
- <sort_order>160</sort_order>
815
  <show_in_default>1</show_in_default>
816
  <show_in_website>1</show_in_website>
817
  <show_in_store>1</show_in_store>
@@ -822,7 +816,7 @@
822
  <alternative_sender_department translate="label" module="postnl">
823
  <label>Department</label>
824
  <frontend_type>text</frontend_type>
825
- <sort_order>170</sort_order>
826
  <show_in_default>1</show_in_default>
827
  <show_in_website>1</show_in_website>
828
  <show_in_store>1</show_in_store>
@@ -833,7 +827,7 @@
833
  <alternative_sender_streetname translate="label" module="postnl">
834
  <label>Street</label>
835
  <frontend_type>text</frontend_type>
836
- <sort_order>180</sort_order>
837
  <show_in_default>1</show_in_default>
838
  <show_in_website>1</show_in_website>
839
  <show_in_store>1</show_in_store>
@@ -846,7 +840,7 @@
846
  <alternative_sender_housenumber translate="label" module="postnl">
847
  <label>House Nr.</label>
848
  <frontend_type>text</frontend_type>
849
- <sort_order>190</sort_order>
850
  <show_in_default>1</show_in_default>
851
  <show_in_website>1</show_in_website>
852
  <show_in_store>1</show_in_store>
@@ -859,7 +853,7 @@
859
  <alternative_sender_housenumber_extension translate="label" module="postnl">
860
  <label>House Nr. Extension</label>
861
  <frontend_type>text</frontend_type>
862
- <sort_order>200</sort_order>
863
  <show_in_default>1</show_in_default>
864
  <show_in_website>1</show_in_website>
865
  <show_in_store>1</show_in_store>
@@ -870,7 +864,7 @@
870
  <alternative_sender_postcode translate="label" module="postnl">
871
  <label>Postcode</label>
872
  <frontend_type>text</frontend_type>
873
- <sort_order>210</sort_order>
874
  <show_in_default>1</show_in_default>
875
  <show_in_website>1</show_in_website>
876
  <show_in_store>1</show_in_store>
@@ -882,7 +876,7 @@
882
  <alternative_sender_city translate="label" module="postnl">
883
  <label>City</label>
884
  <frontend_type>text</frontend_type>
885
- <sort_order>220</sort_order>
886
  <show_in_default>1</show_in_default>
887
  <show_in_website>1</show_in_website>
888
  <show_in_store>1</show_in_store>
@@ -894,7 +888,7 @@
894
  <alternative_sender_region translate="label" module="postnl">
895
  <label>Region</label>
896
  <frontend_type>text</frontend_type>
897
- <sort_order>230</sort_order>
898
  <show_in_default>1</show_in_default>
899
  <show_in_website>1</show_in_website>
900
  <show_in_store>1</show_in_store>
@@ -905,7 +899,7 @@
905
  <save_and_continue translate="label" module="postnl">
906
  <label>Save and continue</label>
907
  <frontend_model>postnl_adminhtml/system_config_form_field_wizardSaveButton</frontend_model>
908
- <sort_order>240</sort_order>
909
  <show_in_default>1</show_in_default>
910
  <show_in_website>1</show_in_website>
911
  <show_in_store>1</show_in_store>
@@ -983,7 +977,10 @@
983
  <show_in_website>1</show_in_website>
984
  <show_in_store>1</show_in_store>
985
  <depends>
986
- <allow_sunday_sorting>1</allow_sunday_sorting>
 
 
 
987
  </depends>
988
  </sunday_cutoff_time>
989
  <shipping_days translate="label comment" module="postnl">
@@ -1028,7 +1025,7 @@
1028
  <postcode_nl_extension_active>
1029
  <frontend_type>hidden</frontend_type>
1030
  <frontend_model>postnl_adminhtml/system_config_form_field_postcodeNlExtensionActive</frontend_model>
1031
- <sort_order>105</sort_order>
1032
  <show_in_default>1</show_in_default>
1033
  <show_in_website>1</show_in_website>
1034
  <show_in_store>1</show_in_store>
@@ -1036,7 +1033,7 @@
1036
  <postcode_nl_extension_conflict_info translate="comment" module="postnl">
1037
  <comment><![CDATA[You are currently using the Postcode.nl extension. This extension conflicts with the PostNL extension's built-in postcode validator. We recommend you disable the Postcode.nl extension if you wish to use the PostNL extensions' postcode validator.]]></comment>
1038
  <frontend_model>postnl_adminhtml/system_config_form_field_infoBox</frontend_model>
1039
- <sort_order>106</sort_order>
1040
  <show_in_default>1</show_in_default>
1041
  <show_in_website>1</show_in_website>
1042
  <show_in_store>0</show_in_store>
@@ -1051,7 +1048,7 @@
1051
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1052
  <source_model>postnl/system_config_source_yesno</source_model>
1053
  <backend_model>postnl_addressvalidation/system_config_backend_validateAccount</backend_model>
1054
- <sort_order>110</sort_order>
1055
  <show_in_default>1</show_in_default>
1056
  <show_in_website>1</show_in_website>
1057
  <show_in_store>1</show_in_store>
@@ -1068,7 +1065,7 @@
1068
  <frontend_type>checkbox</frontend_type>
1069
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1070
  <source_model>postnl/system_config_source_yesno</source_model>
1071
- <sort_order>120</sort_order>
1072
  <show_in_default>1</show_in_default>
1073
  <show_in_website>1</show_in_website>
1074
  <show_in_store>1</show_in_store>
@@ -1086,7 +1083,7 @@
1086
  <frontend_type>checkbox</frontend_type>
1087
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1088
  <source_model>postnl/system_config_source_yesno</source_model>
1089
- <sort_order>130</sort_order>
1090
  <show_in_default>1</show_in_default>
1091
  <show_in_website>1</show_in_website>
1092
  <show_in_store>1</show_in_store>
@@ -1103,7 +1100,7 @@
1103
  <label>Maximum number of attempts</label>
1104
  <tooltip>After this number of attempts your customer will be prompted to fill in his address manually. Leave this field empty to allow an infinite number of attempts. Please note however that in rare cases a correct address might not be validated, leaving your customer unable to complete the order process. We therefore recommend always filling in a maximum number of attempts.</tooltip>
1105
  <frontend_type>text</frontend_type>
1106
- <sort_order>140</sort_order>
1107
  <show_in_default>1</show_in_default>
1108
  <show_in_website>1</show_in_website>
1109
  <show_in_store>1</show_in_store>
@@ -1121,7 +1118,7 @@
1121
  <label>Connection timeout duration</label>
1122
  <tooltip>After this number of seconds a customer will be prompted to fill in his address manually. Leave this field empty to disable the feature. Please note: if a customer needs to wait too long he might leave the order process.</tooltip>
1123
  <frontend_type>text</frontend_type>
1124
- <sort_order>150</sort_order>
1125
  <show_in_default>1</show_in_default>
1126
  <show_in_website>1</show_in_website>
1127
  <show_in_store>1</show_in_store>
@@ -1138,7 +1135,7 @@
1138
  <gomage_postcode_check_info translate="comment" module="postnl">
1139
  <comment><![CDATA[If you are using the Gomage Lightcheckout extension in combination with the PostNL Postcode check;<br/>Please know that the street-settings from the Gomage Lightcheckout extension will be ignored.<br/> Read more about the settings <a href="##MUST_BE_REPLACED##" target="_blank">here</a>]]></comment>
1140
  <frontend_model>postnl_adminhtml/system_config_form_field_infoBox</frontend_model>
1141
- <sort_order>160</sort_order>
1142
  <show_in_default>1</show_in_default>
1143
  <show_in_website>1</show_in_website>
1144
  <show_in_store>0</show_in_store>
@@ -1150,7 +1147,7 @@
1150
  <address_lines>
1151
  <frontend_type>hidden</frontend_type>
1152
  <frontend_model>postnl_adminhtml/system_config_form_field_addressLines</frontend_model>
1153
- <sort_order>170</sort_order>
1154
  <show_in_default>1</show_in_default>
1155
  <show_in_website>1</show_in_website>
1156
  <show_in_store>0</show_in_store>
@@ -1158,7 +1155,7 @@
1158
  <split_street_unavailable_info translate="comment" module="postnl">
1159
  <comment><![CDATA[You are currently using fewer than 2 address lines. In order to guarantee proper address processing, the PostNL extension requires at least 2 address lines. You can read more on how to configure split address lines <a href="http://kb.tig.nl/topic/55961916" target="_blank">here</a>.]]></comment>
1160
  <frontend_model>postnl_adminhtml/system_config_form_field_infoBox</frontend_model>
1161
- <sort_order>180</sort_order>
1162
  <show_in_default>1</show_in_default>
1163
  <show_in_website>1</show_in_website>
1164
  <show_in_store>0</show_in_store>
@@ -1176,7 +1173,7 @@
1176
  <frontend_type>checkbox</frontend_type>
1177
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1178
  <source_model>postnl/system_config_source_yesno</source_model>
1179
- <sort_order>190</sort_order>
1180
  <show_in_default>1</show_in_default>
1181
  <show_in_website>1</show_in_website>
1182
  <show_in_store>0</show_in_store>
@@ -1193,7 +1190,7 @@
1193
  <label>Streetname field</label>
1194
  <frontend_type>select</frontend_type>
1195
  <source_model>postnl_core/system_config_source_streetField</source_model>
1196
- <sort_order>200</sort_order>
1197
  <show_in_default>1</show_in_default>
1198
  <show_in_website>1</show_in_website>
1199
  <show_in_store>0</show_in_store>
@@ -1212,7 +1209,7 @@
1212
  <label>Housenr. field</label>
1213
  <frontend_type>select</frontend_type>
1214
  <source_model>postnl_core/system_config_source_streetField</source_model>
1215
- <sort_order>210</sort_order>
1216
  <show_in_default>1</show_in_default>
1217
  <show_in_website>1</show_in_website>
1218
  <show_in_store>0</show_in_store>
@@ -1232,7 +1229,7 @@
1232
  <frontend_type>checkbox</frontend_type>
1233
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1234
  <source_model>postnl/system_config_source_yesno</source_model>
1235
- <sort_order>220</sort_order>
1236
  <show_in_default>1</show_in_default>
1237
  <show_in_website>1</show_in_website>
1238
  <show_in_store>0</show_in_store>
@@ -1250,7 +1247,7 @@
1250
  <label>Housenr. extension field</label>
1251
  <frontend_type>select</frontend_type>
1252
  <source_model>postnl_core/system_config_source_streetField</source_model>
1253
- <sort_order>230</sort_order>
1254
  <show_in_default>1</show_in_default>
1255
  <show_in_website>1</show_in_website>
1256
  <show_in_store>0</show_in_store>
@@ -1269,7 +1266,7 @@
1269
  <optional_street_fields_header translate="label" module="postnl">
1270
  <label>Optional address fields</label>
1271
  <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
1272
- <sort_order>240</sort_order>
1273
  <show_in_default>1</show_in_default>
1274
  <show_in_website>1</show_in_website>
1275
  <show_in_store>0</show_in_store>
@@ -1278,7 +1275,7 @@
1278
  <label>Area field</label>
1279
  <frontend_type>select</frontend_type>
1280
  <source_model>postnl_core/system_config_source_streetFieldWithDefault</source_model>
1281
- <sort_order>250</sort_order>
1282
  <show_in_default>1</show_in_default>
1283
  <show_in_website>1</show_in_website>
1284
  <show_in_store>0</show_in_store>
@@ -1287,7 +1284,7 @@
1287
  <label>Building name field</label>
1288
  <frontend_type>select</frontend_type>
1289
  <source_model>postnl_core/system_config_source_streetFieldWithDefault</source_model>
1290
- <sort_order>260</sort_order>
1291
  <show_in_default>1</show_in_default>
1292
  <show_in_website>1</show_in_website>
1293
  <show_in_store>0</show_in_store>
@@ -1296,7 +1293,7 @@
1296
  <label>Department field</label>
1297
  <frontend_type>select</frontend_type>
1298
  <source_model>postnl_core/system_config_source_streetFieldWithDefault</source_model>
1299
- <sort_order>270</sort_order>
1300
  <show_in_default>1</show_in_default>
1301
  <show_in_website>1</show_in_website>
1302
  <show_in_store>0</show_in_store>
@@ -1306,7 +1303,7 @@
1306
  <tooltip>Doorcodes are often used in foreign addresses such as those used in France and Singapore.</tooltip>
1307
  <frontend_type>select</frontend_type>
1308
  <source_model>postnl_core/system_config_source_streetFieldWithDefault</source_model>
1309
- <sort_order>280</sort_order>
1310
  <show_in_default>1</show_in_default>
1311
  <show_in_website>1</show_in_website>
1312
  <show_in_store>0</show_in_store>
@@ -1315,7 +1312,7 @@
1315
  <label>Floor field</label>
1316
  <frontend_type>select</frontend_type>
1317
  <source_model>postnl_core/system_config_source_streetFieldWithDefault</source_model>
1318
- <sort_order>290</sort_order>
1319
  <show_in_default>1</show_in_default>
1320
  <show_in_website>1</show_in_website>
1321
  <show_in_store>0</show_in_store>
@@ -1324,7 +1321,7 @@
1324
  <label>Remark field</label>
1325
  <frontend_type>select</frontend_type>
1326
  <source_model>postnl_core/system_config_source_streetFieldWithDefault</source_model>
1327
- <sort_order>300</sort_order>
1328
  <show_in_default>1</show_in_default>
1329
  <show_in_website>1</show_in_website>
1330
  <show_in_store>0</show_in_store>
@@ -1332,7 +1329,7 @@
1332
  <save_and_continue translate="label" module="postnl">
1333
  <label>Save and continue</label>
1334
  <frontend_model>postnl_adminhtml/system_config_form_field_wizardSaveButton</frontend_model>
1335
- <sort_order>310</sort_order>
1336
  <show_in_default>1</show_in_default>
1337
  <show_in_website>1</show_in_website>
1338
  <show_in_store>1</show_in_store>
@@ -1363,6 +1360,10 @@
1363
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1364
  <separator>||</separator>
1365
  </checkout_extension>
 
 
 
 
1366
  </depends>
1367
  </delivery_options_header>
1368
  <delivery_options_disabled_header translate="label" module="postnl">
@@ -1377,14 +1378,32 @@
1377
  <fieldset>cif_labels_and_confirming</fieldset>
1378
  <value>other</value>
1379
  </checkout_extension>
 
 
 
 
1380
  </depends>
1381
  </delivery_options_disabled_header>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1382
  <delivery_options_active translate="label" module="postnl">
1383
  <label>Enable PostNL delivery options</label>
1384
  <frontend_type>checkbox</frontend_type>
1385
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1386
  <source_model>postnl/system_config_source_yesno</source_model>
1387
- <sort_order>30</sort_order>
1388
  <show_in_default>1</show_in_default>
1389
  <show_in_website>1</show_in_website>
1390
  <show_in_store>1</show_in_store>
@@ -1394,21 +1413,29 @@
1394
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1395
  <separator>||</separator>
1396
  </checkout_extension>
 
 
 
 
1397
  </depends>
1398
  </delivery_options_active>
1399
  <gomage_delivery_date_conflict>
1400
  <frontend_type>hidden</frontend_type>
1401
  <frontend_model>postnl_adminhtml/system_config_form_field_goMageDeliveryDateConflicts</frontend_model>
1402
- <sort_order>40</sort_order>
1403
  <show_in_default>1</show_in_default>
1404
  <show_in_website>1</show_in_website>
1405
  <show_in_store>1</show_in_store>
 
 
 
 
1406
  </gomage_delivery_date_conflict>
1407
  <delivery_options_gomage_conflict_warning translate="comment" module="postnl">
1408
  <label><![CDATA[[POSTNL-0222] Warning: possible PostNL and GoMage LightCheckout conflict. <a href="http://kb.tig.nl/topic/" target="blank">Click here for more information from the TIG knowledgebase.</a>]]></label>
1409
  <comment>You have enabled PostNL delivery options and GoMage LightCheckout's Delivery Date functionality for the same shipping methods. Unfortunately these two functionalities conflict. Please disable one of these features.</comment>
1410
  <frontend_model>postnl_adminhtml/system_config_form_field_warningBox</frontend_model>
1411
- <sort_order>50</sort_order>
1412
  <show_in_default>1</show_in_default>
1413
  <show_in_website>1</show_in_website>
1414
  <show_in_store>1</show_in_store>
@@ -1419,6 +1446,10 @@
1419
  <value>gomage_lightcheckout</value>
1420
  </checkout_extension>
1421
  <gomage_delivery_date_conflict>1</gomage_delivery_date_conflict>
 
 
 
 
1422
  </depends>
1423
  </delivery_options_gomage_conflict_warning>
1424
  <theme translate="label comment" module="postnl">
@@ -1426,7 +1457,7 @@
1426
  <comment><![CDATA[You can view an example of the different themes <a href="http://kb.tig.nl/topic/58787233" target="_blank" title="PostNL delivery option themes">here</a>.]]></comment>
1427
  <frontend_type>select</frontend_type>
1428
  <source_model>postnl_deliveryoptions/system_config_source_themes</source_model>
1429
- <sort_order>60</sort_order>
1430
  <show_in_default>1</show_in_default>
1431
  <show_in_website>1</show_in_website>
1432
  <show_in_store>1</show_in_store>
@@ -1437,6 +1468,10 @@
1437
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1438
  <separator>||</separator>
1439
  </checkout_extension>
 
 
 
 
1440
  </depends>
1441
  </theme>
1442
  <responsive translate="label tooltip" module="postnl">
@@ -1445,7 +1480,7 @@
1445
  <frontend_type>checkbox</frontend_type>
1446
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1447
  <source_model>postnl/system_config_source_yesno</source_model>
1448
- <sort_order>70</sort_order>
1449
  <show_in_default>1</show_in_default>
1450
  <show_in_website>1</show_in_website>
1451
  <show_in_store>1</show_in_store>
@@ -1456,6 +1491,10 @@
1456
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1457
  <separator>||</separator>
1458
  </checkout_extension>
 
 
 
 
1459
  </depends>
1460
  </responsive>
1461
  <stock_options translate="label tooltip" module="postnl">
@@ -1463,7 +1502,7 @@
1463
  <tooltip>Select for which products PostNL delivery options should be available.</tooltip>
1464
  <frontend_type>postnl_radios</frontend_type>
1465
  <source_model>postnl_deliveryoptions/system_config_source_stockOptions</source_model>
1466
- <sort_order>80</sort_order>
1467
  <show_in_default>1</show_in_default>
1468
  <show_in_website>1</show_in_website>
1469
  <show_in_store>1</show_in_store>
@@ -1474,6 +1513,10 @@
1474
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1475
  <separator>||</separator>
1476
  </checkout_extension>
 
 
 
 
1477
  </depends>
1478
  </stock_options>
1479
  <enable_delivery_days translate="label tooltip" module="postnl">
@@ -1482,7 +1525,7 @@
1482
  <frontend_type>checkbox</frontend_type>
1483
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1484
  <source_model>postnl/system_config_source_yesno</source_model>
1485
- <sort_order>90</sort_order>
1486
  <show_in_default>1</show_in_default>
1487
  <show_in_website>1</show_in_website>
1488
  <show_in_store>1</show_in_store>
@@ -1493,6 +1536,10 @@
1493
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1494
  <separator>||</separator>
1495
  </checkout_extension>
 
 
 
 
1496
  </depends>
1497
  </enable_delivery_days>
1498
  <delivery_days_number translate="label tooltip" module="postnl">
@@ -1500,7 +1547,7 @@
1500
  <tooltip>Submit how many days in the future after the first delivery moment your customers can choose to receive their orders.</tooltip>
1501
  <frontend_type>select</frontend_type>
1502
  <source_model>postnl_deliveryoptions/system_config_source_deliveryDaysNumber</source_model>
1503
- <sort_order>100</sort_order>
1504
  <show_in_default>1</show_in_default>
1505
  <show_in_website>1</show_in_website>
1506
  <show_in_store>1</show_in_store>
@@ -1512,6 +1559,10 @@
1512
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1513
  <separator>||</separator>
1514
  </checkout_extension>
 
 
 
 
1515
  </depends>
1516
  </delivery_days_number>
1517
  <enable_timeframes translate="label tooltip" module="postnl">
@@ -1520,7 +1571,7 @@
1520
  <frontend_type>checkbox</frontend_type>
1521
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1522
  <source_model>postnl/system_config_source_yesno</source_model>
1523
- <sort_order>110</sort_order>
1524
  <show_in_default>1</show_in_default>
1525
  <show_in_website>1</show_in_website>
1526
  <show_in_store>1</show_in_store>
@@ -1532,6 +1583,10 @@
1532
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1533
  <separator>||</separator>
1534
  </checkout_extension>
 
 
 
 
1535
  </depends>
1536
  </enable_timeframes>
1537
  <enable_evening_timeframes translate="label tooltip" module="postnl">
@@ -1540,7 +1595,7 @@
1540
  <frontend_type>checkbox</frontend_type>
1541
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1542
  <source_model>postnl/system_config_source_yesno</source_model>
1543
- <sort_order>120</sort_order>
1544
  <show_in_default>1</show_in_default>
1545
  <show_in_website>1</show_in_website>
1546
  <show_in_store>1</show_in_store>
@@ -1553,6 +1608,10 @@
1553
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1554
  <separator>||</separator>
1555
  </checkout_extension>
 
 
 
 
1556
  </depends>
1557
  </enable_evening_timeframes>
1558
  <evening_timeframe_fee translate="label tooltip" module="postnl">
@@ -1560,7 +1619,7 @@
1560
  <tooltip>Additional costs for evening timeframes in the store's base currency. This fee will be added to the shipping costs. This value must be between 0.00 and 2.00 EUR incl. VAT. Leave this field empty to charge no extra fee for evening timeframes.</tooltip>
1561
  <frontend_type>text</frontend_type>
1562
  <backend_model>postnl_deliveryoptions/system_config_backend_validateFee</backend_model>
1563
- <sort_order>130</sort_order>
1564
  <show_in_default>1</show_in_default>
1565
  <show_in_website>1</show_in_website>
1566
  <show_in_store>1</show_in_store>
@@ -1575,6 +1634,10 @@
1575
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1576
  <separator>||</separator>
1577
  </checkout_extension>
 
 
 
 
1578
  </depends>
1579
  </evening_timeframe_fee>
1580
  <enable_pakjegemak translate="label tooltip" module="postnl">
@@ -1583,7 +1646,7 @@
1583
  <frontend_type>checkbox</frontend_type>
1584
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1585
  <source_model>postnl/system_config_source_yesno</source_model>
1586
- <sort_order>140</sort_order>
1587
  <show_in_default>1</show_in_default>
1588
  <show_in_website>1</show_in_website>
1589
  <show_in_store>1</show_in_store>
@@ -1594,6 +1657,10 @@
1594
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1595
  <separator>||</separator>
1596
  </checkout_extension>
 
 
 
 
1597
  </depends>
1598
  </enable_pakjegemak>
1599
  <enable_pakjegemak_express translate="label tooltip" module="postnl">
@@ -1602,7 +1669,7 @@
1602
  <frontend_type>checkbox</frontend_type>
1603
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1604
  <source_model>postnl/system_config_source_yesno</source_model>
1605
- <sort_order>150</sort_order>
1606
  <show_in_default>1</show_in_default>
1607
  <show_in_website>1</show_in_website>
1608
  <show_in_store>1</show_in_store>
@@ -1614,6 +1681,10 @@
1614
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1615
  <separator>||</separator>
1616
  </checkout_extension>
 
 
 
 
1617
  </depends>
1618
  </enable_pakjegemak_express>
1619
  <pakjegemak_express_fee translate="label tooltip" module="postnl">
@@ -1621,7 +1692,7 @@
1621
  <tooltip>Additional costs for early delivery locations in the store's base currency. This fee will be added to the shipping costs. This value must be between 0.00 and 2.00 EUR incl. VAT. Leave this field empty to charge no extra fee for early delivery locations.</tooltip>
1622
  <frontend_type>text</frontend_type>
1623
  <backend_model>postnl_deliveryoptions/system_config_backend_validateFee</backend_model>
1624
- <sort_order>160</sort_order>
1625
  <show_in_default>1</show_in_default>
1626
  <show_in_website>1</show_in_website>
1627
  <show_in_store>1</show_in_store>
@@ -1635,6 +1706,10 @@
1635
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1636
  <separator>||</separator>
1637
  </checkout_extension>
 
 
 
 
1638
  </depends>
1639
  </pakjegemak_express_fee>
1640
  <enable_pakketautomaat_locations translate="label tooltip" module="postnl">
@@ -1643,7 +1718,7 @@
1643
  <frontend_type>checkbox</frontend_type>
1644
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1645
  <source_model>postnl/system_config_source_yesno</source_model>
1646
- <sort_order>170</sort_order>
1647
  <show_in_default>1</show_in_default>
1648
  <show_in_website>1</show_in_website>
1649
  <show_in_store>1</show_in_store>
@@ -1654,6 +1729,10 @@
1654
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1655
  <separator>||</separator>
1656
  </checkout_extension>
 
 
 
 
1657
  </depends>
1658
  </enable_pakketautomaat_locations>
1659
  <allow_streetview translate="label tooltip" module="postnl">
@@ -1662,7 +1741,7 @@
1662
  <frontend_type>checkbox</frontend_type>
1663
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1664
  <source_model>postnl/system_config_source_yesno</source_model>
1665
- <sort_order>180</sort_order>
1666
  <show_in_default>1</show_in_default>
1667
  <show_in_website>1</show_in_website>
1668
  <show_in_store>1</show_in_store>
@@ -1673,6 +1752,10 @@
1673
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1674
  <separator>||</separator>
1675
  </checkout_extension>
 
 
 
 
1676
  </depends>
1677
  </allow_streetview>
1678
  <show_options_for_buspakje translate="label tooltip" module="postnl">
@@ -1681,7 +1764,7 @@
1681
  <frontend_type>checkbox</frontend_type>
1682
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1683
  <source_model>postnl/system_config_source_yesno</source_model>
1684
- <sort_order>190</sort_order>
1685
  <show_in_default>1</show_in_default>
1686
  <show_in_website>1</show_in_website>
1687
  <show_in_store>1</show_in_store>
@@ -1694,6 +1777,10 @@
1694
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1695
  <separator>||</separator>
1696
  </checkout_extension>
 
 
 
 
1697
  </depends>
1698
  </show_options_for_buspakje>
1699
  <show_all_options_for_buspakje translate="label tooltip" module="postnl">
@@ -1702,7 +1789,7 @@
1702
  <frontend_type>checkbox</frontend_type>
1703
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1704
  <source_model>postnl/system_config_source_yesno</source_model>
1705
- <sort_order>200</sort_order>
1706
  <show_in_default>1</show_in_default>
1707
  <show_in_website>1</show_in_website>
1708
  <show_in_store>1</show_in_store>
@@ -1716,6 +1803,10 @@
1716
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1717
  <separator>||</separator>
1718
  </checkout_extension>
 
 
 
 
1719
  </depends>
1720
  </show_all_options_for_buspakje>
1721
  <enable_delivery_days_for_buspakje translate="label" module="postnl">
@@ -1723,7 +1814,7 @@
1723
  <frontend_type>checkbox</frontend_type>
1724
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1725
  <source_model>postnl/system_config_source_yesno</source_model>
1726
- <sort_order>210</sort_order>
1727
  <show_in_default>1</show_in_default>
1728
  <show_in_website>1</show_in_website>
1729
  <show_in_store>1</show_in_store>
@@ -1739,6 +1830,10 @@
1739
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1740
  <separator>||</separator>
1741
  </checkout_extension>
 
 
 
 
1742
  </depends>
1743
  </enable_delivery_days_for_buspakje>
1744
  <enable_pakjegemak_for_buspakje translate="label tooltip" module="postnl">
@@ -1747,7 +1842,7 @@
1747
  <frontend_type>checkbox</frontend_type>
1748
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1749
  <source_model>postnl/system_config_source_yesno</source_model>
1750
- <sort_order>220</sort_order>
1751
  <show_in_default>1</show_in_default>
1752
  <show_in_website>1</show_in_website>
1753
  <show_in_store>1</show_in_store>
@@ -1763,6 +1858,10 @@
1763
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1764
  <separator>||</separator>
1765
  </checkout_extension>
 
 
 
 
1766
  </depends>
1767
  </enable_pakjegemak_for_buspakje>
1768
  <enable_pakketautomaat_for_buspakje translate="label tooltip" module="postnl">
@@ -1771,7 +1870,7 @@
1771
  <frontend_type>checkbox</frontend_type>
1772
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1773
  <source_model>postnl/system_config_source_yesno</source_model>
1774
- <sort_order>230</sort_order>
1775
  <show_in_default>1</show_in_default>
1776
  <show_in_website>1</show_in_website>
1777
  <show_in_store>1</show_in_store>
@@ -1787,12 +1886,16 @@
1787
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1788
  <separator>||</separator>
1789
  </checkout_extension>
 
 
 
 
1790
  </depends>
1791
  </enable_pakketautomaat_for_buspakje>
1792
  <stated_address_header translate="label" module="postnl">
1793
  <label>Only stated address</label>
1794
  <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
1795
- <sort_order>240</sort_order>
1796
  <show_in_default>1</show_in_default>
1797
  <show_in_website>1</show_in_website>
1798
  <show_in_store>1</show_in_store>
@@ -1803,6 +1906,10 @@
1803
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1804
  <separator>||</separator>
1805
  </checkout_extension>
 
 
 
 
1806
  </depends>
1807
  </stated_address_header>
1808
  <stated_address_only_option translate="label tooltip" module="postnl">
@@ -1811,7 +1918,7 @@
1811
  <frontend_type>checkbox</frontend_type>
1812
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1813
  <source_model>postnl/system_config_source_yesno</source_model>
1814
- <sort_order>250</sort_order>
1815
  <show_in_default>1</show_in_default>
1816
  <show_in_website>1</show_in_website>
1817
  <show_in_store>1</show_in_store>
@@ -1822,6 +1929,10 @@
1822
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1823
  <separator>||</separator>
1824
  </checkout_extension>
 
 
 
 
1825
  </depends>
1826
  </stated_address_only_option>
1827
  <stated_address_only_checked>
@@ -1829,7 +1940,7 @@
1829
  <frontend_type>checkbox</frontend_type>
1830
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1831
  <source_model>postnl/system_config_source_yesno</source_model>
1832
- <sort_order>260</sort_order>
1833
  <show_in_default>1</show_in_default>
1834
  <show_in_website>1</show_in_website>
1835
  <show_in_store>1</show_in_store>
@@ -1841,13 +1952,17 @@
1841
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1842
  <separator>||</separator>
1843
  </checkout_extension>
 
 
 
 
1844
  </depends>
1845
  </stated_address_only_checked>
1846
  <stated_address_only_fee>
1847
  <label>Stated address only fee</label>
1848
  <frontend_type>text</frontend_type>
1849
  <source_model>postnl/system_config_source_yesno</source_model>
1850
- <sort_order>270</sort_order>
1851
  <show_in_default>1</show_in_default>
1852
  <show_in_website>1</show_in_website>
1853
  <show_in_store>1</show_in_store>
@@ -1859,12 +1974,133 @@
1859
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1860
  <separator>||</separator>
1861
  </checkout_extension>
 
 
 
 
1862
  </depends>
1863
  </stated_address_only_fee>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1864
  <mijnpakket_header translate="label" module="postnl">
1865
- <label>MijnPakket</label>
1866
  <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
1867
- <sort_order>280</sort_order>
1868
  <show_in_default>1</show_in_default>
1869
  <show_in_website>1</show_in_website>
1870
  <show_in_store>1</show_in_store>
@@ -1875,15 +2111,19 @@
1875
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1876
  <separator>||</separator>
1877
  </checkout_extension>
 
 
 
 
1878
  </depends>
1879
  </mijnpakket_header>
1880
  <mijnpakket_login_active translate="label tooltip" module="postnl">
1881
- <label>Enable MijnPakket login</label>
1882
- <tooltip>MijnPakket login will only be available to customers who have a MijnPakket account. This will be automatically detected.</tooltip>
1883
  <frontend_type>checkbox</frontend_type>
1884
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1885
  <source_model>postnl/system_config_source_yesno</source_model>
1886
- <sort_order>290</sort_order>
1887
  <show_in_default>1</show_in_default>
1888
  <show_in_website>1</show_in_website>
1889
  <show_in_store>1</show_in_store>
@@ -1894,15 +2134,19 @@
1894
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1895
  <separator>||</separator>
1896
  </checkout_extension>
 
 
 
 
1897
  </depends>
1898
  </mijnpakket_login_active>
1899
  <mijnpakket_notification translate="label tooltip" module="postnl">
1900
- <label>Show MijnPakket notification on the order success page</label>
1901
- <tooltip>This will cause a notification to be shown to customers after they have placed their order. The message may either inform the customer about MijnPakket accounts or the MijnPakket app.</tooltip>
1902
  <frontend_type>checkbox</frontend_type>
1903
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1904
  <source_model>postnl/system_config_source_yesno</source_model>
1905
- <sort_order>300</sort_order>
1906
  <show_in_default>1</show_in_default>
1907
  <show_in_website>1</show_in_website>
1908
  <show_in_store>1</show_in_store>
@@ -1913,15 +2157,19 @@
1913
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1914
  <separator>||</separator>
1915
  </checkout_extension>
 
 
 
 
1916
  </depends>
1917
  </mijnpakket_notification>
1918
  <show_create_mijnpakket_account_link translate="label tooltip" module="postnl">
1919
- <label>Show create MijnPakket account link</label>
1920
- <tooltip>If enabled, customers who do not yet have a MijnPakket account will be shown a link through which they can create a MijnPakket account without having to fully fill in the registration form.</tooltip>
1921
  <frontend_type>checkbox</frontend_type>
1922
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1923
  <source_model>postnl/system_config_source_yesno</source_model>
1924
- <sort_order>310</sort_order>
1925
  <show_in_default>1</show_in_default>
1926
  <show_in_website>1</show_in_website>
1927
  <show_in_store>1</show_in_store>
@@ -1933,15 +2181,19 @@
1933
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1934
  <separator>||</separator>
1935
  </checkout_extension>
 
 
 
 
1936
  </depends>
1937
  </show_create_mijnpakket_account_link>
1938
  <show_mijnpakket_app_link translate="label tooltip" module="postnl">
1939
- <label>Show MijnPakket app link</label>
1940
- <tooltip>If enabled, customers who already have a MijnPakket account will be informed about the PostNL MijnPakket app with which they can easily track their order.</tooltip>
1941
  <frontend_type>checkbox</frontend_type>
1942
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1943
  <source_model>postnl/system_config_source_yesno</source_model>
1944
- <sort_order>320</sort_order>
1945
  <show_in_default>1</show_in_default>
1946
  <show_in_website>1</show_in_website>
1947
  <show_in_store>1</show_in_store>
@@ -1953,15 +2205,25 @@
1953
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1954
  <separator>||</separator>
1955
  </checkout_extension>
 
 
 
 
1956
  </depends>
1957
  </show_mijnpakket_app_link>
1958
  <buspakje_header translate="label" module="postnl">
1959
  <label>Letter box parcels</label>
1960
  <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
1961
- <sort_order>330</sort_order>
1962
  <show_in_default>1</show_in_default>
1963
  <show_in_website>0</show_in_website>
1964
  <show_in_store>0</show_in_store>
 
 
 
 
 
 
1965
  </buspakje_header>
1966
  <use_buspakje translate="label tooltip" module="postnl">
1967
  <label>Use letter box parcels</label>
@@ -1969,10 +2231,16 @@
1969
  <frontend_type>checkbox</frontend_type>
1970
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1971
  <source_model>postnl/system_config_source_yesno</source_model>
1972
- <sort_order>340</sort_order>
1973
  <show_in_default>1</show_in_default>
1974
  <show_in_website>0</show_in_website>
1975
  <show_in_store>0</show_in_store>
 
 
 
 
 
 
1976
  </use_buspakje>
1977
  <buspakje_calculation_mode translate="label comment tooltip" module="postnl">
1978
  <label>Calculation mode</label>
@@ -1980,18 +2248,22 @@
1980
  <tooltip>You can let the PostNL extension calculate automatically whether a shipment would fit in a mail slot or you can manually determine this when creating shipments in the backend. If set to 'automatic' the PostNL extension will check the 'Weight' and 'PostNL Max Qty For Letter Box Parcels' of all products in an order to determine whether the shipment would fit through a mail slot. You may always overrule this and manually set whether a shipment is a letter box parcel or not.</tooltip>
1981
  <frontend_type>select</frontend_type>
1982
  <source_model>postnl_core/system_config_source_manualAutomatic</source_model>
1983
- <sort_order>350</sort_order>
1984
  <show_in_default>1</show_in_default>
1985
  <show_in_website>0</show_in_website>
1986
  <show_in_store>0</show_in_store>
1987
  <depends>
1988
  <use_buspakje>1</use_buspakje>
 
 
 
 
1989
  </depends>
1990
  </buspakje_calculation_mode>
1991
  <save_and_continue translate="label" module="postnl">
1992
  <label>Save and continue</label>
1993
  <frontend_model>postnl_adminhtml/system_config_form_field_wizardSaveButton</frontend_model>
1994
- <sort_order>360</sort_order>
1995
  <show_in_default>1</show_in_default>
1996
  <show_in_website>1</show_in_website>
1997
  <show_in_store>1</show_in_store>
@@ -2464,7 +2736,7 @@
2464
  </send_track_and_trace_email>
2465
  <track_and_trace_email_template translate="label tooltip" module="postnl">
2466
  <label>Track &amp; trace email template</label>
2467
- <tooltip>You can customize the track &amp; trace email in system > transactional emails.</tooltip>
2468
  <frontend_type>select</frontend_type>
2469
  <source_model>adminhtml/system_config_source_email_template</source_model>
2470
  <sort_order>30</sort_order>
@@ -2706,7 +2978,7 @@
2706
  </returns>
2707
  <cod translate="label comment" module="postnl">
2708
  <label>PostNL COD</label>
2709
- <comment><![CDATA[Activate an extra payment method with COD shipments.<br/>Please note: In order to offer COD shipments to your customers you will need to complete the fields below and activate an extra payment method <a href="%s" target="_blank">here</a>.]]></comment>
2710
  <comment_url>
2711
  <base>adminhtml/system_config/edit</base>
2712
  <params>
@@ -2775,7 +3047,7 @@
2775
  <tooltip>This setting may be overwritten by manualy creating shipments. This option is only applicable to domestic COD shipments.</tooltip>
2776
  <frontend_type>select</frontend_type>
2777
  <backend_model>postnl_core/system_config_backend_validateDefaultOption</backend_model>
2778
- <source_model>postnl_core/system_config_source_standardProductOptions::getAvailableCodOptions</source_model>
2779
  <multidimensional>true</multidimensional>
2780
  <sort_order>70</sort_order>
2781
  <show_in_default>1</show_in_default>
@@ -3086,8 +3358,8 @@
3086
  <show_in_store>1</show_in_store>
3087
  </active>
3088
  <show_exclusively_for_mijnpakket_users translate="label tooltip" module="postnl">
3089
- <label>Show PostNL Checkout exclusively to MijnPakket users</label>
3090
- <tooltip>Activate the PostNL Checkout only for customers with a MijnPakket account. Please note: The Delivery Options must be activated.</tooltip>
3091
  <frontend_type>checkbox</frontend_type>
3092
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
3093
  <source_model>postnl/system_config_source_yesno</source_model>
@@ -4230,8 +4502,42 @@
4230
  <fieldset>delivery_options</fieldset>
4231
  <value>1</value>
4232
  </enable_evening_timeframes>
 
 
 
 
4233
  </depends>
4234
  </default_evening_product_option>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4235
  <default_pakjegemak_product_option translate="label tooltip" module="postnl">
4236
  <label>Default 'deliver at the Post Office' option</label>
4237
  <tooltip>This setting can be overwritten by manually creating shipments. This option is only applicable to Post Office shipments.</tooltip>
@@ -4239,10 +4545,16 @@
4239
  <backend_model>postnl_core/system_config_backend_validateDefaultOption</backend_model>
4240
  <source_model>postnl_core/system_config_source_pakjeGemakProductOptions::getAvailableOptions</source_model>
4241
  <multidimensional>true</multidimensional>
4242
- <sort_order>160</sort_order>
4243
  <show_in_default>1</show_in_default>
4244
  <show_in_website>0</show_in_website>
4245
  <show_in_store>0</show_in_store>
 
 
 
 
 
 
4246
  </default_pakjegemak_product_option>
4247
  <default_pge_product_option translate="label tooltip" module="postnl">
4248
  <label>Default early post office pickup option</label>
@@ -4251,7 +4563,7 @@
4251
  <backend_model>postnl_core/system_config_backend_validateDefaultOption</backend_model>
4252
  <source_model>postnl_core/system_config_source_pakjeGemakProductOptions::getAvailablePgeOptions</source_model>
4253
  <multidimensional>true</multidimensional>
4254
- <sort_order>170</sort_order>
4255
  <show_in_default>1</show_in_default>
4256
  <show_in_website>0</show_in_website>
4257
  <show_in_store>0</show_in_store>
@@ -4268,6 +4580,10 @@
4268
  <fieldset>delivery_options</fieldset>
4269
  <value>1</value>
4270
  </enable_pakjegemak_express>
 
 
 
 
4271
  </depends>
4272
  </default_pge_product_option>
4273
  <default_buspakje_product_option translate="label tooltip" module="postnl">
@@ -4277,7 +4593,7 @@
4277
  <backend_model>postnl_core/system_config_backend_validateDefaultOption</backend_model>
4278
  <source_model>postnl_core/system_config_source_buspakjeProductOptions::getAvailableOptions</source_model>
4279
  <multidimensional>true</multidimensional>
4280
- <sort_order>180</sort_order>
4281
  <show_in_default>1</show_in_default>
4282
  <show_in_website>0</show_in_website>
4283
  <show_in_store>0</show_in_store>
@@ -4286,6 +4602,10 @@
4286
  <fieldset>delivery_options</fieldset>
4287
  <value>1</value>
4288
  </use_buspakje>
 
 
 
 
4289
  </depends>
4290
  </default_buspakje_product_option>
4291
  <default_stated_address_only_product_option translate="label tooltip" module="postnl">
@@ -4295,7 +4615,7 @@
4295
  <backend_model>postnl_core/system_config_backend_validateDefaultOption</backend_model>
4296
  <source_model>postnl_core/system_config_source_standardProductOptions::getAvailableStatedAddressOnlyOptions</source_model>
4297
  <multidimensional>true</multidimensional>
4298
- <sort_order>190</sort_order>
4299
  <show_in_default>1</show_in_default>
4300
  <show_in_website>0</show_in_website>
4301
  <show_in_store>0</show_in_store>
@@ -4304,6 +4624,10 @@
4304
  <fieldset>delivery_options</fieldset>
4305
  <value>1</value>
4306
  </stated_address_only_option>
 
 
 
 
4307
  </depends>
4308
  </default_stated_address_only_product_option>
4309
  </fields>
@@ -4419,7 +4743,7 @@
4419
  <show_in_store>0</show_in_store>
4420
  </cif_versions_header>
4421
  <cif_versions_infobox translate="comment" module="postnl">
4422
- <label>ONLY CHANGE THESE SETTINGS WITH DIRECT INSTRUCTION FROM POSTNL OR TOTAL INTERNET GROUP</label>
4423
  <frontend_model>postnl_adminhtml/system_config_form_field_warningBox</frontend_model>
4424
  <sort_order>110</sort_order>
4425
  <show_in_default>1</show_in_default>
199
  <active>1</active>
200
  </depends>
201
  </instructions>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
202
  <min_order_total translate="label" module="postnl">
203
  <label>Minimum order total</label>
204
  <frontend_type>text</frontend_type>
205
+ <sort_order>70</sort_order>
206
  <show_in_default>1</show_in_default>
207
  <show_in_website>1</show_in_website>
208
  <show_in_store>0</show_in_store>
213
  <max_order_total translate="label" module="postnl">
214
  <label>Maximum order total</label>
215
  <frontend_type>text</frontend_type>
216
+ <sort_order>80</sort_order>
217
  <show_in_default>1</show_in_default>
218
  <show_in_website>1</show_in_website>
219
  <show_in_store>0</show_in_store>
226
  <tooltip>Set this option to 'yes' to allow orders placed using a different shipping method than PostNL to use this payment method.</tooltip>
227
  <frontend_type>select</frontend_type>
228
  <source_model>postnl/system_config_source_yesno</source_model>
229
+ <sort_order>90</sort_order>
230
  <show_in_default>1</show_in_default>
231
  <show_in_website>1</show_in_website>
232
  <show_in_store>0</show_in_store>
240
  <tooltip>Letter box parcels cannot be shipped using COD. If an order is a letter box parcel and the customer chooses to pay using PostNL COD, the order will be shipped as a regular parcel instead.</tooltip>
241
  <frontend_type>select</frontend_type>
242
  <source_model>postnl/system_config_source_yesno</source_model>
243
+ <sort_order>100</sort_order>
244
  <show_in_default>1</show_in_default>
245
  <show_in_website>1</show_in_website>
246
  <show_in_store>0</show_in_store>
251
  <sort_order translate="label" module="postnl">
252
  <label>Sort order</label>
253
  <frontend_type>text</frontend_type>
254
+ <sort_order>110</sort_order>
255
  <show_in_default>1</show_in_default>
256
  <show_in_website>1</show_in_website>
257
  <show_in_store>0</show_in_store>
527
  <show_in_store>1</show_in_store>
528
  <fields>
529
  <support>
530
+ <sort_order>10</sort_order>
531
  <frontend_model>postnl_adminhtml/system_config_form_field_supportTab</frontend_model>
532
  <show_in_default>1</show_in_default>
533
  <show_in_website>1</show_in_website>
630
  <only_default_header translate="label" module="postnl">
631
  <label><![CDATA[Extension registration is only available on the 'global' scope.]]></label>
632
  <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
633
+ <sort_order>80</sort_order>
634
  <show_in_default>0</show_in_default>
635
  <show_in_website>1</show_in_website>
636
  <show_in_store>1</show_in_store>
652
  <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
653
  <sort_order>10</sort_order>
654
  <show_in_default>1</show_in_default>
655
+ <show_in_website>0</show_in_website>
656
+ <show_in_store>0</show_in_store>
657
+ </sender_address_header>
658
+ <sender_country_missing_header translate="label" module="postnl">
659
+ <label><![CDATA[The sender country setting is only available on the 'global' scope.]]></label>
660
+ <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
661
+ <sort_order>20</sort_order>
662
+ <show_in_default>0</show_in_default>
663
  <show_in_website>1</show_in_website>
664
  <show_in_store>1</show_in_store>
665
+ </sender_country_missing_header>
666
+ <country translate="label tooltip" module="postnl">
667
+ <label>Country</label>
668
+ <tooltip>Please note: the country you select here will be used to determine whether certain shipping options (such as Belgium domestic) are available to you.</tooltip>
669
+ <frontend_model>postnl_adminhtml/system_config_form_field_hidden</frontend_model>
670
+ <source_model>postnl_core/system_config_source_senderCountry</source_model>
671
+ <backend_model>postnl_core/system_config_backend_senderCountry</backend_model>
672
+ <sort_order>30</sort_order>
673
+ <show_in_default>1</show_in_default>
674
+ <show_in_website>0</show_in_website>
675
+ <show_in_store>0</show_in_store>
676
+ </country>
677
  <firstname translate="label" module="postnl">
678
  <label>First Name</label>
679
  <frontend_type>text</frontend_type>
680
+ <sort_order>40</sort_order>
681
  <show_in_default>1</show_in_default>
682
  <show_in_website>1</show_in_website>
683
  <show_in_store>1</show_in_store>
685
  <lastname translate="label" module="postnl">
686
  <label>Last Name</label>
687
  <frontend_type>text</frontend_type>
688
+ <sort_order>50</sort_order>
689
  <show_in_default>1</show_in_default>
690
  <show_in_website>1</show_in_website>
691
  <show_in_store>1</show_in_store>
694
  <company translate="label" module="postnl">
695
  <label>Company</label>
696
  <frontend_type>text</frontend_type>
697
+ <sort_order>60</sort_order>
698
  <show_in_default>1</show_in_default>
699
  <show_in_website>1</show_in_website>
700
  <show_in_store>1</show_in_store>
703
  <department translate="label" module="postnl">
704
  <label>Department</label>
705
  <frontend_type>text</frontend_type>
706
+ <sort_order>70</sort_order>
707
  <show_in_default>1</show_in_default>
708
  <show_in_website>1</show_in_website>
709
  <show_in_store>1</show_in_store>
711
  <streetname translate="label" module="postnl">
712
  <label>Street</label>
713
  <frontend_type>text</frontend_type>
714
+ <sort_order>80</sort_order>
715
  <show_in_default>1</show_in_default>
716
  <show_in_website>1</show_in_website>
717
  <show_in_store>1</show_in_store>
720
  <housenumber translate="label" module="postnl">
721
  <label>House Nr.</label>
722
  <frontend_type>text</frontend_type>
723
+ <sort_order>90</sort_order>
724
  <show_in_default>1</show_in_default>
725
  <show_in_website>1</show_in_website>
726
  <show_in_store>1</show_in_store>
729
  <housenumber_extension translate="label" module="postnl">
730
  <label>House Nr. Extension</label>
731
  <frontend_type>text</frontend_type>
732
+ <sort_order>100</sort_order>
733
  <show_in_default>1</show_in_default>
734
  <show_in_website>1</show_in_website>
735
  <show_in_store>1</show_in_store>
737
  <postcode translate="label" module="postnl">
738
  <label>Postcode</label>
739
  <frontend_type>text</frontend_type>
740
+ <sort_order>110</sort_order>
741
  <show_in_default>1</show_in_default>
742
  <show_in_website>1</show_in_website>
743
  <show_in_store>1</show_in_store>
746
  <city translate="label" module="postnl">
747
  <label>City</label>
748
  <frontend_type>text</frontend_type>
749
+ <sort_order>120</sort_order>
750
  <show_in_default>1</show_in_default>
751
  <show_in_website>1</show_in_website>
752
  <show_in_store>1</show_in_store>
755
  <region translate="label" module="postnl">
756
  <label>Region</label>
757
  <frontend_type>text</frontend_type>
758
+ <sort_order>130</sort_order>
759
  <show_in_default>1</show_in_default>
760
  <show_in_website>1</show_in_website>
761
  <show_in_store>1</show_in_store>
763
  <alternative_sender_address_header translate="label" module="postnl">
764
  <label>Alternative sender address</label>
765
  <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
766
+ <sort_order>140</sort_order>
767
  <show_in_default>1</show_in_default>
768
  <show_in_website>1</show_in_website>
769
  <show_in_store>1</show_in_store>
773
  <frontend_type>checkbox</frontend_type>
774
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
775
  <source_model>postnl/system_config_source_yesno</source_model>
776
+ <sort_order>150</sort_order>
777
  <show_in_default>1</show_in_default>
778
  <show_in_website>1</show_in_website>
779
  <show_in_store>1</show_in_store>
781
  <alternative_sender_firstname translate="label" module="postnl">
782
  <label>First Name</label>
783
  <frontend_type>text</frontend_type>
784
+ <sort_order>160</sort_order>
785
  <show_in_default>1</show_in_default>
786
  <show_in_website>1</show_in_website>
787
  <show_in_store>1</show_in_store>
793
  <alternative_sender_lastname translate="label" module="postnl">
794
  <label>Last Name</label>
795
  <frontend_type>text</frontend_type>
796
+ <sort_order>170</sort_order>
797
  <show_in_default>1</show_in_default>
798
  <show_in_website>1</show_in_website>
799
  <show_in_store>1</show_in_store>
805
  <alternative_sender_company translate="label" module="postnl">
806
  <label>Company</label>
807
  <frontend_type>text</frontend_type>
808
+ <sort_order>180</sort_order>
809
  <show_in_default>1</show_in_default>
810
  <show_in_website>1</show_in_website>
811
  <show_in_store>1</show_in_store>
816
  <alternative_sender_department translate="label" module="postnl">
817
  <label>Department</label>
818
  <frontend_type>text</frontend_type>
819
+ <sort_order>190</sort_order>
820
  <show_in_default>1</show_in_default>
821
  <show_in_website>1</show_in_website>
822
  <show_in_store>1</show_in_store>
827
  <alternative_sender_streetname translate="label" module="postnl">
828
  <label>Street</label>
829
  <frontend_type>text</frontend_type>
830
+ <sort_order>200</sort_order>
831
  <show_in_default>1</show_in_default>
832
  <show_in_website>1</show_in_website>
833
  <show_in_store>1</show_in_store>
840
  <alternative_sender_housenumber translate="label" module="postnl">
841
  <label>House Nr.</label>
842
  <frontend_type>text</frontend_type>
843
+ <sort_order>210</sort_order>
844
  <show_in_default>1</show_in_default>
845
  <show_in_website>1</show_in_website>
846
  <show_in_store>1</show_in_store>
853
  <alternative_sender_housenumber_extension translate="label" module="postnl">
854
  <label>House Nr. Extension</label>
855
  <frontend_type>text</frontend_type>
856
+ <sort_order>220</sort_order>
857
  <show_in_default>1</show_in_default>
858
  <show_in_website>1</show_in_website>
859
  <show_in_store>1</show_in_store>
864
  <alternative_sender_postcode translate="label" module="postnl">
865
  <label>Postcode</label>
866
  <frontend_type>text</frontend_type>
867
+ <sort_order>230</sort_order>
868
  <show_in_default>1</show_in_default>
869
  <show_in_website>1</show_in_website>
870
  <show_in_store>1</show_in_store>
876
  <alternative_sender_city translate="label" module="postnl">
877
  <label>City</label>
878
  <frontend_type>text</frontend_type>
879
+ <sort_order>240</sort_order>
880
  <show_in_default>1</show_in_default>
881
  <show_in_website>1</show_in_website>
882
  <show_in_store>1</show_in_store>
888
  <alternative_sender_region translate="label" module="postnl">
889
  <label>Region</label>
890
  <frontend_type>text</frontend_type>
891
+ <sort_order>250</sort_order>
892
  <show_in_default>1</show_in_default>
893
  <show_in_website>1</show_in_website>
894
  <show_in_store>1</show_in_store>
899
  <save_and_continue translate="label" module="postnl">
900
  <label>Save and continue</label>
901
  <frontend_model>postnl_adminhtml/system_config_form_field_wizardSaveButton</frontend_model>
902
+ <sort_order>260</sort_order>
903
  <show_in_default>1</show_in_default>
904
  <show_in_website>1</show_in_website>
905
  <show_in_store>1</show_in_store>
977
  <show_in_website>1</show_in_website>
978
  <show_in_store>1</show_in_store>
979
  <depends>
980
+ <allow_sunday_sorting>
981
+ <fieldset>delivery_options</fieldset>
982
+ <value>1</value>
983
+ </allow_sunday_sorting>
984
  </depends>
985
  </sunday_cutoff_time>
986
  <shipping_days translate="label comment" module="postnl">
1025
  <postcode_nl_extension_active>
1026
  <frontend_type>hidden</frontend_type>
1027
  <frontend_model>postnl_adminhtml/system_config_form_field_postcodeNlExtensionActive</frontend_model>
1028
+ <sort_order>110</sort_order>
1029
  <show_in_default>1</show_in_default>
1030
  <show_in_website>1</show_in_website>
1031
  <show_in_store>1</show_in_store>
1033
  <postcode_nl_extension_conflict_info translate="comment" module="postnl">
1034
  <comment><![CDATA[You are currently using the Postcode.nl extension. This extension conflicts with the PostNL extension's built-in postcode validator. We recommend you disable the Postcode.nl extension if you wish to use the PostNL extensions' postcode validator.]]></comment>
1035
  <frontend_model>postnl_adminhtml/system_config_form_field_infoBox</frontend_model>
1036
+ <sort_order>120</sort_order>
1037
  <show_in_default>1</show_in_default>
1038
  <show_in_website>1</show_in_website>
1039
  <show_in_store>0</show_in_store>
1048
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1049
  <source_model>postnl/system_config_source_yesno</source_model>
1050
  <backend_model>postnl_addressvalidation/system_config_backend_validateAccount</backend_model>
1051
+ <sort_order>130</sort_order>
1052
  <show_in_default>1</show_in_default>
1053
  <show_in_website>1</show_in_website>
1054
  <show_in_store>1</show_in_store>
1065
  <frontend_type>checkbox</frontend_type>
1066
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1067
  <source_model>postnl/system_config_source_yesno</source_model>
1068
+ <sort_order>140</sort_order>
1069
  <show_in_default>1</show_in_default>
1070
  <show_in_website>1</show_in_website>
1071
  <show_in_store>1</show_in_store>
1083
  <frontend_type>checkbox</frontend_type>
1084
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1085
  <source_model>postnl/system_config_source_yesno</source_model>
1086
+ <sort_order>150</sort_order>
1087
  <show_in_default>1</show_in_default>
1088
  <show_in_website>1</show_in_website>
1089
  <show_in_store>1</show_in_store>
1100
  <label>Maximum number of attempts</label>
1101
  <tooltip>After this number of attempts your customer will be prompted to fill in his address manually. Leave this field empty to allow an infinite number of attempts. Please note however that in rare cases a correct address might not be validated, leaving your customer unable to complete the order process. We therefore recommend always filling in a maximum number of attempts.</tooltip>
1102
  <frontend_type>text</frontend_type>
1103
+ <sort_order>160</sort_order>
1104
  <show_in_default>1</show_in_default>
1105
  <show_in_website>1</show_in_website>
1106
  <show_in_store>1</show_in_store>
1118
  <label>Connection timeout duration</label>
1119
  <tooltip>After this number of seconds a customer will be prompted to fill in his address manually. Leave this field empty to disable the feature. Please note: if a customer needs to wait too long he might leave the order process.</tooltip>
1120
  <frontend_type>text</frontend_type>
1121
+ <sort_order>170</sort_order>
1122
  <show_in_default>1</show_in_default>
1123
  <show_in_website>1</show_in_website>
1124
  <show_in_store>1</show_in_store>
1135
  <gomage_postcode_check_info translate="comment" module="postnl">
1136
  <comment><![CDATA[If you are using the Gomage Lightcheckout extension in combination with the PostNL Postcode check;<br/>Please know that the street-settings from the Gomage Lightcheckout extension will be ignored.<br/> Read more about the settings <a href="##MUST_BE_REPLACED##" target="_blank">here</a>]]></comment>
1137
  <frontend_model>postnl_adminhtml/system_config_form_field_infoBox</frontend_model>
1138
+ <sort_order>180</sort_order>
1139
  <show_in_default>1</show_in_default>
1140
  <show_in_website>1</show_in_website>
1141
  <show_in_store>0</show_in_store>
1147
  <address_lines>
1148
  <frontend_type>hidden</frontend_type>
1149
  <frontend_model>postnl_adminhtml/system_config_form_field_addressLines</frontend_model>
1150
+ <sort_order>190</sort_order>
1151
  <show_in_default>1</show_in_default>
1152
  <show_in_website>1</show_in_website>
1153
  <show_in_store>0</show_in_store>
1155
  <split_street_unavailable_info translate="comment" module="postnl">
1156
  <comment><![CDATA[You are currently using fewer than 2 address lines. In order to guarantee proper address processing, the PostNL extension requires at least 2 address lines. You can read more on how to configure split address lines <a href="http://kb.tig.nl/topic/55961916" target="_blank">here</a>.]]></comment>
1157
  <frontend_model>postnl_adminhtml/system_config_form_field_infoBox</frontend_model>
1158
+ <sort_order>200</sort_order>
1159
  <show_in_default>1</show_in_default>
1160
  <show_in_website>1</show_in_website>
1161
  <show_in_store>0</show_in_store>
1173
  <frontend_type>checkbox</frontend_type>
1174
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1175
  <source_model>postnl/system_config_source_yesno</source_model>
1176
+ <sort_order>210</sort_order>
1177
  <show_in_default>1</show_in_default>
1178
  <show_in_website>1</show_in_website>
1179
  <show_in_store>0</show_in_store>
1190
  <label>Streetname field</label>
1191
  <frontend_type>select</frontend_type>
1192
  <source_model>postnl_core/system_config_source_streetField</source_model>
1193
+ <sort_order>220</sort_order>
1194
  <show_in_default>1</show_in_default>
1195
  <show_in_website>1</show_in_website>
1196
  <show_in_store>0</show_in_store>
1209
  <label>Housenr. field</label>
1210
  <frontend_type>select</frontend_type>
1211
  <source_model>postnl_core/system_config_source_streetField</source_model>
1212
+ <sort_order>230</sort_order>
1213
  <show_in_default>1</show_in_default>
1214
  <show_in_website>1</show_in_website>
1215
  <show_in_store>0</show_in_store>
1229
  <frontend_type>checkbox</frontend_type>
1230
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1231
  <source_model>postnl/system_config_source_yesno</source_model>
1232
+ <sort_order>240</sort_order>
1233
  <show_in_default>1</show_in_default>
1234
  <show_in_website>1</show_in_website>
1235
  <show_in_store>0</show_in_store>
1247
  <label>Housenr. extension field</label>
1248
  <frontend_type>select</frontend_type>
1249
  <source_model>postnl_core/system_config_source_streetField</source_model>
1250
+ <sort_order>250</sort_order>
1251
  <show_in_default>1</show_in_default>
1252
  <show_in_website>1</show_in_website>
1253
  <show_in_store>0</show_in_store>
1266
  <optional_street_fields_header translate="label" module="postnl">
1267
  <label>Optional address fields</label>
1268
  <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
1269
+ <sort_order>260</sort_order>
1270
  <show_in_default>1</show_in_default>
1271
  <show_in_website>1</show_in_website>
1272
  <show_in_store>0</show_in_store>
1275
  <label>Area field</label>
1276
  <frontend_type>select</frontend_type>
1277
  <source_model>postnl_core/system_config_source_streetFieldWithDefault</source_model>
1278
+ <sort_order>270</sort_order>
1279
  <show_in_default>1</show_in_default>
1280
  <show_in_website>1</show_in_website>
1281
  <show_in_store>0</show_in_store>
1284
  <label>Building name field</label>
1285
  <frontend_type>select</frontend_type>
1286
  <source_model>postnl_core/system_config_source_streetFieldWithDefault</source_model>
1287
+ <sort_order>280</sort_order>
1288
  <show_in_default>1</show_in_default>
1289
  <show_in_website>1</show_in_website>
1290
  <show_in_store>0</show_in_store>
1293
  <label>Department field</label>
1294
  <frontend_type>select</frontend_type>
1295
  <source_model>postnl_core/system_config_source_streetFieldWithDefault</source_model>
1296
+ <sort_order>290</sort_order>
1297
  <show_in_default>1</show_in_default>
1298
  <show_in_website>1</show_in_website>
1299
  <show_in_store>0</show_in_store>
1303
  <tooltip>Doorcodes are often used in foreign addresses such as those used in France and Singapore.</tooltip>
1304
  <frontend_type>select</frontend_type>
1305
  <source_model>postnl_core/system_config_source_streetFieldWithDefault</source_model>
1306
+ <sort_order>300</sort_order>
1307
  <show_in_default>1</show_in_default>
1308
  <show_in_website>1</show_in_website>
1309
  <show_in_store>0</show_in_store>
1312
  <label>Floor field</label>
1313
  <frontend_type>select</frontend_type>
1314
  <source_model>postnl_core/system_config_source_streetFieldWithDefault</source_model>
1315
+ <sort_order>310</sort_order>
1316
  <show_in_default>1</show_in_default>
1317
  <show_in_website>1</show_in_website>
1318
  <show_in_store>0</show_in_store>
1321
  <label>Remark field</label>
1322
  <frontend_type>select</frontend_type>
1323
  <source_model>postnl_core/system_config_source_streetFieldWithDefault</source_model>
1324
+ <sort_order>320</sort_order>
1325
  <show_in_default>1</show_in_default>
1326
  <show_in_website>1</show_in_website>
1327
  <show_in_store>0</show_in_store>
1329
  <save_and_continue translate="label" module="postnl">
1330
  <label>Save and continue</label>
1331
  <frontend_model>postnl_adminhtml/system_config_form_field_wizardSaveButton</frontend_model>
1332
+ <sort_order>330</sort_order>
1333
  <show_in_default>1</show_in_default>
1334
  <show_in_website>1</show_in_website>
1335
  <show_in_store>1</show_in_store>
1360
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1361
  <separator>||</separator>
1362
  </checkout_extension>
1363
+ <country>
1364
+ <fieldset>cif_address</fieldset>
1365
+ <value>NL</value>
1366
+ </country>
1367
  </depends>
1368
  </delivery_options_header>
1369
  <delivery_options_disabled_header translate="label" module="postnl">
1378
  <fieldset>cif_labels_and_confirming</fieldset>
1379
  <value>other</value>
1380
  </checkout_extension>
1381
+ <country>
1382
+ <fieldset>cif_address</fieldset>
1383
+ <value>NL</value>
1384
+ </country>
1385
  </depends>
1386
  </delivery_options_disabled_header>
1387
+ <delivery_options_belgium_header translate="label" module="postnl">
1388
+ <label>PostNL delivery options are only available when shipping from the Netherlands.</label>
1389
+ <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
1390
+ <sort_order>30</sort_order>
1391
+ <show_in_default>1</show_in_default>
1392
+ <show_in_website>1</show_in_website>
1393
+ <show_in_store>1</show_in_store>
1394
+ <depends>
1395
+ <country>
1396
+ <fieldset>cif_address</fieldset>
1397
+ <value>BE</value>
1398
+ </country>
1399
+ </depends>
1400
+ </delivery_options_belgium_header>
1401
  <delivery_options_active translate="label" module="postnl">
1402
  <label>Enable PostNL delivery options</label>
1403
  <frontend_type>checkbox</frontend_type>
1404
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1405
  <source_model>postnl/system_config_source_yesno</source_model>
1406
+ <sort_order>40</sort_order>
1407
  <show_in_default>1</show_in_default>
1408
  <show_in_website>1</show_in_website>
1409
  <show_in_store>1</show_in_store>
1413
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1414
  <separator>||</separator>
1415
  </checkout_extension>
1416
+ <country>
1417
+ <fieldset>cif_address</fieldset>
1418
+ <value>NL</value>
1419
+ </country>
1420
  </depends>
1421
  </delivery_options_active>
1422
  <gomage_delivery_date_conflict>
1423
  <frontend_type>hidden</frontend_type>
1424
  <frontend_model>postnl_adminhtml/system_config_form_field_goMageDeliveryDateConflicts</frontend_model>
1425
+ <sort_order>50</sort_order>
1426
  <show_in_default>1</show_in_default>
1427
  <show_in_website>1</show_in_website>
1428
  <show_in_store>1</show_in_store>
1429
+ <country>
1430
+ <fieldset>cif_address</fieldset>
1431
+ <value>NL</value>
1432
+ </country>
1433
  </gomage_delivery_date_conflict>
1434
  <delivery_options_gomage_conflict_warning translate="comment" module="postnl">
1435
  <label><![CDATA[[POSTNL-0222] Warning: possible PostNL and GoMage LightCheckout conflict. <a href="http://kb.tig.nl/topic/" target="blank">Click here for more information from the TIG knowledgebase.</a>]]></label>
1436
  <comment>You have enabled PostNL delivery options and GoMage LightCheckout's Delivery Date functionality for the same shipping methods. Unfortunately these two functionalities conflict. Please disable one of these features.</comment>
1437
  <frontend_model>postnl_adminhtml/system_config_form_field_warningBox</frontend_model>
1438
+ <sort_order>60</sort_order>
1439
  <show_in_default>1</show_in_default>
1440
  <show_in_website>1</show_in_website>
1441
  <show_in_store>1</show_in_store>
1446
  <value>gomage_lightcheckout</value>
1447
  </checkout_extension>
1448
  <gomage_delivery_date_conflict>1</gomage_delivery_date_conflict>
1449
+ <country>
1450
+ <fieldset>cif_address</fieldset>
1451
+ <value>NL</value>
1452
+ </country>
1453
  </depends>
1454
  </delivery_options_gomage_conflict_warning>
1455
  <theme translate="label comment" module="postnl">
1457
  <comment><![CDATA[You can view an example of the different themes <a href="http://kb.tig.nl/topic/58787233" target="_blank" title="PostNL delivery option themes">here</a>.]]></comment>
1458
  <frontend_type>select</frontend_type>
1459
  <source_model>postnl_deliveryoptions/system_config_source_themes</source_model>
1460
+ <sort_order>70</sort_order>
1461
  <show_in_default>1</show_in_default>
1462
  <show_in_website>1</show_in_website>
1463
  <show_in_store>1</show_in_store>
1468
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1469
  <separator>||</separator>
1470
  </checkout_extension>
1471
+ <country>
1472
+ <fieldset>cif_address</fieldset>
1473
+ <value>NL</value>
1474
+ </country>
1475
  </depends>
1476
  </theme>
1477
  <responsive translate="label tooltip" module="postnl">
1480
  <frontend_type>checkbox</frontend_type>
1481
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1482
  <source_model>postnl/system_config_source_yesno</source_model>
1483
+ <sort_order>80</sort_order>
1484
  <show_in_default>1</show_in_default>
1485
  <show_in_website>1</show_in_website>
1486
  <show_in_store>1</show_in_store>
1491
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1492
  <separator>||</separator>
1493
  </checkout_extension>
1494
+ <country>
1495
+ <fieldset>cif_address</fieldset>
1496
+ <value>NL</value>
1497
+ </country>
1498
  </depends>
1499
  </responsive>
1500
  <stock_options translate="label tooltip" module="postnl">
1502
  <tooltip>Select for which products PostNL delivery options should be available.</tooltip>
1503
  <frontend_type>postnl_radios</frontend_type>
1504
  <source_model>postnl_deliveryoptions/system_config_source_stockOptions</source_model>
1505
+ <sort_order>90</sort_order>
1506
  <show_in_default>1</show_in_default>
1507
  <show_in_website>1</show_in_website>
1508
  <show_in_store>1</show_in_store>
1513
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1514
  <separator>||</separator>
1515
  </checkout_extension>
1516
+ <country>
1517
+ <fieldset>cif_address</fieldset>
1518
+ <value>NL</value>
1519
+ </country>
1520
  </depends>
1521
  </stock_options>
1522
  <enable_delivery_days translate="label tooltip" module="postnl">
1525
  <frontend_type>checkbox</frontend_type>
1526
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1527
  <source_model>postnl/system_config_source_yesno</source_model>
1528
+ <sort_order>100</sort_order>
1529
  <show_in_default>1</show_in_default>
1530
  <show_in_website>1</show_in_website>
1531
  <show_in_store>1</show_in_store>
1536
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1537
  <separator>||</separator>
1538
  </checkout_extension>
1539
+ <country>
1540
+ <fieldset>cif_address</fieldset>
1541
+ <value>NL</value>
1542
+ </country>
1543
  </depends>
1544
  </enable_delivery_days>
1545
  <delivery_days_number translate="label tooltip" module="postnl">
1547
  <tooltip>Submit how many days in the future after the first delivery moment your customers can choose to receive their orders.</tooltip>
1548
  <frontend_type>select</frontend_type>
1549
  <source_model>postnl_deliveryoptions/system_config_source_deliveryDaysNumber</source_model>
1550
+ <sort_order>110</sort_order>
1551
  <show_in_default>1</show_in_default>
1552
  <show_in_website>1</show_in_website>
1553
  <show_in_store>1</show_in_store>
1559
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1560
  <separator>||</separator>
1561
  </checkout_extension>
1562
+ <country>
1563
+ <fieldset>cif_address</fieldset>
1564
+ <value>NL</value>
1565
+ </country>
1566
  </depends>
1567
  </delivery_days_number>
1568
  <enable_timeframes translate="label tooltip" module="postnl">
1571
  <frontend_type>checkbox</frontend_type>
1572
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1573
  <source_model>postnl/system_config_source_yesno</source_model>
1574
+ <sort_order>120</sort_order>
1575
  <show_in_default>1</show_in_default>
1576
  <show_in_website>1</show_in_website>
1577
  <show_in_store>1</show_in_store>
1583
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1584
  <separator>||</separator>
1585
  </checkout_extension>
1586
+ <country>
1587
+ <fieldset>cif_address</fieldset>
1588
+ <value>NL</value>
1589
+ </country>
1590
  </depends>
1591
  </enable_timeframes>
1592
  <enable_evening_timeframes translate="label tooltip" module="postnl">
1595
  <frontend_type>checkbox</frontend_type>
1596
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1597
  <source_model>postnl/system_config_source_yesno</source_model>
1598
+ <sort_order>130</sort_order>
1599
  <show_in_default>1</show_in_default>
1600
  <show_in_website>1</show_in_website>
1601
  <show_in_store>1</show_in_store>
1608
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1609
  <separator>||</separator>
1610
  </checkout_extension>
1611
+ <country>
1612
+ <fieldset>cif_address</fieldset>
1613
+ <value>NL</value>
1614
+ </country>
1615
  </depends>
1616
  </enable_evening_timeframes>
1617
  <evening_timeframe_fee translate="label tooltip" module="postnl">
1619
  <tooltip>Additional costs for evening timeframes in the store's base currency. This fee will be added to the shipping costs. This value must be between 0.00 and 2.00 EUR incl. VAT. Leave this field empty to charge no extra fee for evening timeframes.</tooltip>
1620
  <frontend_type>text</frontend_type>
1621
  <backend_model>postnl_deliveryoptions/system_config_backend_validateFee</backend_model>
1622
+ <sort_order>140</sort_order>
1623
  <show_in_default>1</show_in_default>
1624
  <show_in_website>1</show_in_website>
1625
  <show_in_store>1</show_in_store>
1634
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1635
  <separator>||</separator>
1636
  </checkout_extension>
1637
+ <country>
1638
+ <fieldset>cif_address</fieldset>
1639
+ <value>NL</value>
1640
+ </country>
1641
  </depends>
1642
  </evening_timeframe_fee>
1643
  <enable_pakjegemak translate="label tooltip" module="postnl">
1646
  <frontend_type>checkbox</frontend_type>
1647
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1648
  <source_model>postnl/system_config_source_yesno</source_model>
1649
+ <sort_order>150</sort_order>
1650
  <show_in_default>1</show_in_default>
1651
  <show_in_website>1</show_in_website>
1652
  <show_in_store>1</show_in_store>
1657
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1658
  <separator>||</separator>
1659
  </checkout_extension>
1660
+ <country>
1661
+ <fieldset>cif_address</fieldset>
1662
+ <value>NL</value>
1663
+ </country>
1664
  </depends>
1665
  </enable_pakjegemak>
1666
  <enable_pakjegemak_express translate="label tooltip" module="postnl">
1669
  <frontend_type>checkbox</frontend_type>
1670
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1671
  <source_model>postnl/system_config_source_yesno</source_model>
1672
+ <sort_order>160</sort_order>
1673
  <show_in_default>1</show_in_default>
1674
  <show_in_website>1</show_in_website>
1675
  <show_in_store>1</show_in_store>
1681
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1682
  <separator>||</separator>
1683
  </checkout_extension>
1684
+ <country>
1685
+ <fieldset>cif_address</fieldset>
1686
+ <value>NL</value>
1687
+ </country>
1688
  </depends>
1689
  </enable_pakjegemak_express>
1690
  <pakjegemak_express_fee translate="label tooltip" module="postnl">
1692
  <tooltip>Additional costs for early delivery locations in the store's base currency. This fee will be added to the shipping costs. This value must be between 0.00 and 2.00 EUR incl. VAT. Leave this field empty to charge no extra fee for early delivery locations.</tooltip>
1693
  <frontend_type>text</frontend_type>
1694
  <backend_model>postnl_deliveryoptions/system_config_backend_validateFee</backend_model>
1695
+ <sort_order>170</sort_order>
1696
  <show_in_default>1</show_in_default>
1697
  <show_in_website>1</show_in_website>
1698
  <show_in_store>1</show_in_store>
1706
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1707
  <separator>||</separator>
1708
  </checkout_extension>
1709
+ <country>
1710
+ <fieldset>cif_address</fieldset>
1711
+ <value>NL</value>
1712
+ </country>
1713
  </depends>
1714
  </pakjegemak_express_fee>
1715
  <enable_pakketautomaat_locations translate="label tooltip" module="postnl">
1718
  <frontend_type>checkbox</frontend_type>
1719
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1720
  <source_model>postnl/system_config_source_yesno</source_model>
1721
+ <sort_order>180</sort_order>
1722
  <show_in_default>1</show_in_default>
1723
  <show_in_website>1</show_in_website>
1724
  <show_in_store>1</show_in_store>
1729
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1730
  <separator>||</separator>
1731
  </checkout_extension>
1732
+ <country>
1733
+ <fieldset>cif_address</fieldset>
1734
+ <value>NL</value>
1735
+ </country>
1736
  </depends>
1737
  </enable_pakketautomaat_locations>
1738
  <allow_streetview translate="label tooltip" module="postnl">
1741
  <frontend_type>checkbox</frontend_type>
1742
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1743
  <source_model>postnl/system_config_source_yesno</source_model>
1744
+ <sort_order>190</sort_order>
1745
  <show_in_default>1</show_in_default>
1746
  <show_in_website>1</show_in_website>
1747
  <show_in_store>1</show_in_store>
1752
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1753
  <separator>||</separator>
1754
  </checkout_extension>
1755
+ <country>
1756
+ <fieldset>cif_address</fieldset>
1757
+ <value>NL</value>
1758
+ </country>
1759
  </depends>
1760
  </allow_streetview>
1761
  <show_options_for_buspakje translate="label tooltip" module="postnl">
1764
  <frontend_type>checkbox</frontend_type>
1765
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1766
  <source_model>postnl/system_config_source_yesno</source_model>
1767
+ <sort_order>200</sort_order>
1768
  <show_in_default>1</show_in_default>
1769
  <show_in_website>1</show_in_website>
1770
  <show_in_store>1</show_in_store>
1777
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1778
  <separator>||</separator>
1779
  </checkout_extension>
1780
+ <country>
1781
+ <fieldset>cif_address</fieldset>
1782
+ <value>NL</value>
1783
+ </country>
1784
  </depends>
1785
  </show_options_for_buspakje>
1786
  <show_all_options_for_buspakje translate="label tooltip" module="postnl">
1789
  <frontend_type>checkbox</frontend_type>
1790
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1791
  <source_model>postnl/system_config_source_yesno</source_model>
1792
+ <sort_order>210</sort_order>
1793
  <show_in_default>1</show_in_default>
1794
  <show_in_website>1</show_in_website>
1795
  <show_in_store>1</show_in_store>
1803
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1804
  <separator>||</separator>
1805
  </checkout_extension>
1806
+ <country>
1807
+ <fieldset>cif_address</fieldset>
1808
+ <value>NL</value>
1809
+ </country>
1810
  </depends>
1811
  </show_all_options_for_buspakje>
1812
  <enable_delivery_days_for_buspakje translate="label" module="postnl">
1814
  <frontend_type>checkbox</frontend_type>
1815
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1816
  <source_model>postnl/system_config_source_yesno</source_model>
1817
+ <sort_order>220</sort_order>
1818
  <show_in_default>1</show_in_default>
1819
  <show_in_website>1</show_in_website>
1820
  <show_in_store>1</show_in_store>
1830
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1831
  <separator>||</separator>
1832
  </checkout_extension>
1833
+ <country>
1834
+ <fieldset>cif_address</fieldset>
1835
+ <value>NL</value>
1836
+ </country>
1837
  </depends>
1838
  </enable_delivery_days_for_buspakje>
1839
  <enable_pakjegemak_for_buspakje translate="label tooltip" module="postnl">
1842
  <frontend_type>checkbox</frontend_type>
1843
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1844
  <source_model>postnl/system_config_source_yesno</source_model>
1845
+ <sort_order>230</sort_order>
1846
  <show_in_default>1</show_in_default>
1847
  <show_in_website>1</show_in_website>
1848
  <show_in_store>1</show_in_store>
1858
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1859
  <separator>||</separator>
1860
  </checkout_extension>
1861
+ <country>
1862
+ <fieldset>cif_address</fieldset>
1863
+ <value>NL</value>
1864
+ </country>
1865
  </depends>
1866
  </enable_pakjegemak_for_buspakje>
1867
  <enable_pakketautomaat_for_buspakje translate="label tooltip" module="postnl">
1870
  <frontend_type>checkbox</frontend_type>
1871
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1872
  <source_model>postnl/system_config_source_yesno</source_model>
1873
+ <sort_order>240</sort_order>
1874
  <show_in_default>1</show_in_default>
1875
  <show_in_website>1</show_in_website>
1876
  <show_in_store>1</show_in_store>
1886
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1887
  <separator>||</separator>
1888
  </checkout_extension>
1889
+ <country>
1890
+ <fieldset>cif_address</fieldset>
1891
+ <value>NL</value>
1892
+ </country>
1893
  </depends>
1894
  </enable_pakketautomaat_for_buspakje>
1895
  <stated_address_header translate="label" module="postnl">
1896
  <label>Only stated address</label>
1897
  <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
1898
+ <sort_order>250</sort_order>
1899
  <show_in_default>1</show_in_default>
1900
  <show_in_website>1</show_in_website>
1901
  <show_in_store>1</show_in_store>
1906
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1907
  <separator>||</separator>
1908
  </checkout_extension>
1909
+ <country>
1910
+ <fieldset>cif_address</fieldset>
1911
+ <value>NL</value>
1912
+ </country>
1913
  </depends>
1914
  </stated_address_header>
1915
  <stated_address_only_option translate="label tooltip" module="postnl">
1918
  <frontend_type>checkbox</frontend_type>
1919
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1920
  <source_model>postnl/system_config_source_yesno</source_model>
1921
+ <sort_order>260</sort_order>
1922
  <show_in_default>1</show_in_default>
1923
  <show_in_website>1</show_in_website>
1924
  <show_in_store>1</show_in_store>
1929
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1930
  <separator>||</separator>
1931
  </checkout_extension>
1932
+ <country>
1933
+ <fieldset>cif_address</fieldset>
1934
+ <value>NL</value>
1935
+ </country>
1936
  </depends>
1937
  </stated_address_only_option>
1938
  <stated_address_only_checked>
1940
  <frontend_type>checkbox</frontend_type>
1941
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
1942
  <source_model>postnl/system_config_source_yesno</source_model>
1943
+ <sort_order>270</sort_order>
1944
  <show_in_default>1</show_in_default>
1945
  <show_in_website>1</show_in_website>
1946
  <show_in_store>1</show_in_store>
1952
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1953
  <separator>||</separator>
1954
  </checkout_extension>
1955
+ <country>
1956
+ <fieldset>cif_address</fieldset>
1957
+ <value>NL</value>
1958
+ </country>
1959
  </depends>
1960
  </stated_address_only_checked>
1961
  <stated_address_only_fee>
1962
  <label>Stated address only fee</label>
1963
  <frontend_type>text</frontend_type>
1964
  <source_model>postnl/system_config_source_yesno</source_model>
1965
+ <sort_order>280</sort_order>
1966
  <show_in_default>1</show_in_default>
1967
  <show_in_website>1</show_in_website>
1968
  <show_in_store>1</show_in_store>
1974
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1975
  <separator>||</separator>
1976
  </checkout_extension>
1977
+ <country>
1978
+ <fieldset>cif_address</fieldset>
1979
+ <value>NL</value>
1980
+ </country>
1981
  </depends>
1982
  </stated_address_only_fee>
1983
+ <premium_delivery_options_header translate="label" module="postnl">
1984
+ <label>Delivery options based on contractual agreements</label>
1985
+ <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
1986
+ <sort_order>290</sort_order>
1987
+ <show_in_default>1</show_in_default>
1988
+ <show_in_website>1</show_in_website>
1989
+ <show_in_store>1</show_in_store>
1990
+ <depends>
1991
+ <delivery_options_active>1</delivery_options_active>
1992
+ <checkout_extension>
1993
+ <fieldset>cif_labels_and_confirming</fieldset>
1994
+ <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
1995
+ <separator>||</separator>
1996
+ </checkout_extension>
1997
+ <country>
1998
+ <fieldset>cif_address</fieldset>
1999
+ <value>NL</value>
2000
+ </country>
2001
+ </depends>
2002
+ </premium_delivery_options_header>
2003
+ <premium_delivery_options_info translate="comment" module="postnl">
2004
+ <comment>Please note: these delivery options require specific contractual agreements with PostNL. Please contact your PostNL account manager if you wish to use monday and/or sunday delivery.</comment>
2005
+ <frontend_model>postnl_adminhtml/system_config_form_field_infoBox</frontend_model>
2006
+ <sort_order>300</sort_order>
2007
+ <show_in_default>1</show_in_default>
2008
+ <show_in_website>1</show_in_website>
2009
+ <show_in_store>1</show_in_store>
2010
+ <depends>
2011
+ <delivery_options_active>1</delivery_options_active>
2012
+ <checkout_extension>
2013
+ <fieldset>cif_labels_and_confirming</fieldset>
2014
+ <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
2015
+ <separator>||</separator>
2016
+ </checkout_extension>
2017
+ <country>
2018
+ <fieldset>cif_address</fieldset>
2019
+ <value>NL</value>
2020
+ </country>
2021
+ </depends>
2022
+ </premium_delivery_options_info>
2023
+ <allow_sunday_sorting translate="label comment tooltip" module="postnl">
2024
+ <label>Enable monday delivery</label>
2025
+ <comment><![CDATA[You can read more about monday delivery <a href="http://www.postnl.nl/zakelijke-oplossingen/webwinkels/bezorgopties-voor-mijn-klanten/maandagbezorging/" target="_blank" title="monday delivery">here</a>.]]></comment>
2026
+ <tooltip>Activate monday delivery (also known as sunday sorting) for your customers.</tooltip>
2027
+ <frontend_type>checkbox</frontend_type>
2028
+ <backend_model>postnl/system_config_backend_checkbox</backend_model>
2029
+ <source_model>postnl/system_config_source_yesno</source_model>
2030
+ <sort_order>310</sort_order>
2031
+ <show_in_default>1</show_in_default>
2032
+ <show_in_website>1</show_in_website>
2033
+ <show_in_store>1</show_in_store>
2034
+ <depends>
2035
+ <delivery_options_active>1</delivery_options_active>
2036
+ <enable_delivery_days>1</enable_delivery_days>
2037
+ <enable_timeframes>1</enable_timeframes>
2038
+ <checkout_extension>
2039
+ <fieldset>cif_labels_and_confirming</fieldset>
2040
+ <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
2041
+ <separator>||</separator>
2042
+ </checkout_extension>
2043
+ <country>
2044
+ <fieldset>cif_address</fieldset>
2045
+ <value>NL</value>
2046
+ </country>
2047
+ </depends>
2048
+ </allow_sunday_sorting>
2049
+ <enable_sunday_delivery translate="label comment tooltip" module="postnl">
2050
+ <label>Enable sunday delivery</label>
2051
+ <comment><![CDATA[You can read more about sunday delivery <a href="http://www.postnl.nl/zakelijke-oplossingen/webwinkels/bezorgopties-voor-mijn-klanten/zondagbezorging/" target="_blank" title="sunday delivery">here</a>.]]></comment>
2052
+ <tooltip>Activate sunday delivery for your customers.</tooltip>
2053
+ <frontend_type>checkbox</frontend_type>
2054
+ <backend_model>postnl/system_config_backend_checkbox</backend_model>
2055
+ <source_model>postnl/system_config_source_yesno</source_model>
2056
+ <sort_order>320</sort_order>
2057
+ <show_in_default>1</show_in_default>
2058
+ <show_in_website>1</show_in_website>
2059
+ <show_in_store>1</show_in_store>
2060
+ <depends>
2061
+ <delivery_options_active>1</delivery_options_active>
2062
+ <enable_delivery_days>1</enable_delivery_days>
2063
+ <enable_timeframes>1</enable_timeframes>
2064
+ <checkout_extension>
2065
+ <fieldset>cif_labels_and_confirming</fieldset>
2066
+ <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
2067
+ <separator>||</separator>
2068
+ </checkout_extension>
2069
+ <country>
2070
+ <fieldset>cif_address</fieldset>
2071
+ <value>NL</value>
2072
+ </country>
2073
+ </depends>
2074
+ </enable_sunday_delivery>
2075
+ <sunday_delivery_fee translate="label tooltip" module="postnl">
2076
+ <label>Sunday delivery fee</label>
2077
+ <tooltip>Additional costs for sunday delivery in the store's base currency. This fee will be added to the shipping costs. Leave this field empty to charge no extra fee for sunday delivery.</tooltip>
2078
+ <frontend_type>text</frontend_type>
2079
+ <backend_model>postnl_deliveryoptions/system_config_backend_validateFee_sundayDeliveryFee</backend_model>
2080
+ <sort_order>330</sort_order>
2081
+ <show_in_default>1</show_in_default>
2082
+ <show_in_website>1</show_in_website>
2083
+ <show_in_store>1</show_in_store>
2084
+ <validate>validate-number validate-not-negative-number</validate>
2085
+ <depends>
2086
+ <delivery_options_active>1</delivery_options_active>
2087
+ <enable_delivery_days>1</enable_delivery_days>
2088
+ <enable_sunday_delivery>1</enable_sunday_delivery>
2089
+ <checkout_extension>
2090
+ <fieldset>cif_labels_and_confirming</fieldset>
2091
+ <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
2092
+ <separator>||</separator>
2093
+ </checkout_extension>
2094
+ <country>
2095
+ <fieldset>cif_address</fieldset>
2096
+ <value>NL</value>
2097
+ </country>
2098
+ </depends>
2099
+ </sunday_delivery_fee>
2100
  <mijnpakket_header translate="label" module="postnl">
2101
+ <label>PostNL account</label>
2102
  <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
2103
+ <sort_order>340</sort_order>
2104
  <show_in_default>1</show_in_default>
2105
  <show_in_website>1</show_in_website>
2106
  <show_in_store>1</show_in_store>
2111
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
2112
  <separator>||</separator>
2113
  </checkout_extension>
2114
+ <country>
2115
+ <fieldset>cif_address</fieldset>
2116
+ <value>NL</value>
2117
+ </country>
2118
  </depends>
2119
  </mijnpakket_header>
2120
  <mijnpakket_login_active translate="label tooltip" module="postnl">
2121
+ <label>Enable PostNL account login</label>
2122
+ <tooltip>PostNL account login will only be available to customers who have a PostNL account. This will be automatically detected.</tooltip>
2123
  <frontend_type>checkbox</frontend_type>
2124
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
2125
  <source_model>postnl/system_config_source_yesno</source_model>
2126
+ <sort_order>350</sort_order>
2127
  <show_in_default>1</show_in_default>
2128
  <show_in_website>1</show_in_website>
2129
  <show_in_store>1</show_in_store>
2134
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
2135
  <separator>||</separator>
2136
  </checkout_extension>
2137
+ <country>
2138
+ <fieldset>cif_address</fieldset>
2139
+ <value>NL</value>
2140
+ </country>
2141
  </depends>
2142
  </mijnpakket_login_active>
2143
  <mijnpakket_notification translate="label tooltip" module="postnl">
2144
+ <label>Show PostNL account notification on the order success page</label>
2145
+ <tooltip>This will cause a notification to be shown to customers after they have placed their order. The message may either inform the customer about PostNL accounts or the PostNL app.</tooltip>
2146
  <frontend_type>checkbox</frontend_type>
2147
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
2148
  <source_model>postnl/system_config_source_yesno</source_model>
2149
+ <sort_order>360</sort_order>
2150
  <show_in_default>1</show_in_default>
2151
  <show_in_website>1</show_in_website>
2152
  <show_in_store>1</show_in_store>
2157
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
2158
  <separator>||</separator>
2159
  </checkout_extension>
2160
+ <country>
2161
+ <fieldset>cif_address</fieldset>
2162
+ <value>NL</value>
2163
+ </country>
2164
  </depends>
2165
  </mijnpakket_notification>
2166
  <show_create_mijnpakket_account_link translate="label tooltip" module="postnl">
2167
+ <label>Show create PostNL account link</label>
2168
+ <tooltip>If enabled, customers who do not yet have a PostNL account will be shown a link through which they can create a PostNL account without having to fully fill in the registration form.</tooltip>
2169
  <frontend_type>checkbox</frontend_type>
2170
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
2171
  <source_model>postnl/system_config_source_yesno</source_model>
2172
+ <sort_order>370</sort_order>
2173
  <show_in_default>1</show_in_default>
2174
  <show_in_website>1</show_in_website>
2175
  <show_in_store>1</show_in_store>
2181
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
2182
  <separator>||</separator>
2183
  </checkout_extension>
2184
+ <country>
2185
+ <fieldset>cif_address</fieldset>
2186
+ <value>NL</value>
2187
+ </country>
2188
  </depends>
2189
  </show_create_mijnpakket_account_link>
2190
  <show_mijnpakket_app_link translate="label tooltip" module="postnl">
2191
+ <label>Show PostNL app link</label>
2192
+ <tooltip>If enabled, customers who already have a PostNL account will be informed about the PostNL app with which they can easily track their order.</tooltip>
2193
  <frontend_type>checkbox</frontend_type>
2194
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
2195
  <source_model>postnl/system_config_source_yesno</source_model>
2196
+ <sort_order>380</sort_order>
2197
  <show_in_default>1</show_in_default>
2198
  <show_in_website>1</show_in_website>
2199
  <show_in_store>1</show_in_store>
2205
  <value>magento_onepagecheckout||idev_onestepcheckout||gomage_lightcheckout</value>
2206
  <separator>||</separator>
2207
  </checkout_extension>
2208
+ <country>
2209
+ <fieldset>cif_address</fieldset>
2210
+ <value>NL</value>
2211
+ </country>
2212
  </depends>
2213
  </show_mijnpakket_app_link>
2214
  <buspakje_header translate="label" module="postnl">
2215
  <label>Letter box parcels</label>
2216
  <frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
2217
+ <sort_order>390</sort_order>
2218
  <show_in_default>1</show_in_default>
2219
  <show_in_website>0</show_in_website>
2220
  <show_in_store>0</show_in_store>
2221
+ <depends>
2222
+ <country>
2223
+ <fieldset>cif_address</fieldset>
2224
+ <value>NL</value>
2225
+ </country>
2226
+ </depends>
2227
  </buspakje_header>
2228
  <use_buspakje translate="label tooltip" module="postnl">
2229
  <label>Use letter box parcels</label>
2231
  <frontend_type>checkbox</frontend_type>
2232
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
2233
  <source_model>postnl/system_config_source_yesno</source_model>
2234
+ <sort_order>400</sort_order>
2235
  <show_in_default>1</show_in_default>
2236
  <show_in_website>0</show_in_website>
2237
  <show_in_store>0</show_in_store>
2238
+ <depends>
2239
+ <country>
2240
+ <fieldset>cif_address</fieldset>
2241
+ <value>NL</value>
2242
+ </country>
2243
+ </depends>
2244
  </use_buspakje>
2245
  <buspakje_calculation_mode translate="label comment tooltip" module="postnl">
2246
  <label>Calculation mode</label>
2248
  <tooltip>You can let the PostNL extension calculate automatically whether a shipment would fit in a mail slot or you can manually determine this when creating shipments in the backend. If set to 'automatic' the PostNL extension will check the 'Weight' and 'PostNL Max Qty For Letter Box Parcels' of all products in an order to determine whether the shipment would fit through a mail slot. You may always overrule this and manually set whether a shipment is a letter box parcel or not.</tooltip>
2249
  <frontend_type>select</frontend_type>
2250
  <source_model>postnl_core/system_config_source_manualAutomatic</source_model>
2251
+ <sort_order>410</sort_order>
2252
  <show_in_default>1</show_in_default>
2253
  <show_in_website>0</show_in_website>
2254
  <show_in_store>0</show_in_store>
2255
  <depends>
2256
  <use_buspakje>1</use_buspakje>
2257
+ <country>
2258
+ <fieldset>cif_address</fieldset>
2259
+ <value>NL</value>
2260
+ </country>
2261
  </depends>
2262
  </buspakje_calculation_mode>
2263
  <save_and_continue translate="label" module="postnl">
2264
  <label>Save and continue</label>
2265
  <frontend_model>postnl_adminhtml/system_config_form_field_wizardSaveButton</frontend_model>
2266
+ <sort_order>420</sort_order>
2267
  <show_in_default>1</show_in_default>
2268
  <show_in_website>1</show_in_website>
2269
  <show_in_store>1</show_in_store>
2736
  </send_track_and_trace_email>
2737
  <track_and_trace_email_template translate="label tooltip" module="postnl">
2738
  <label>Track &amp; trace email template</label>
2739
+ <tooltip>You can customize the track &amp; trace email in system &gt; transactional emails.</tooltip>
2740
  <frontend_type>select</frontend_type>
2741
  <source_model>adminhtml/system_config_source_email_template</source_model>
2742
  <sort_order>30</sort_order>
2978
  </returns>
2979
  <cod translate="label comment" module="postnl">
2980
  <label>PostNL COD</label>
2981
+ <comment><![CDATA[Activate an extra payment method with COD shipments.<br/>Please note: In order to offer COD shipments to your customers you will need to complete the fields below and activate an extra payment method <a href="%s" target="_blank">here</a>.<br />PostNL COD is only available for Dutch orders.]]></comment>
2982
  <comment_url>
2983
  <base>adminhtml/system_config/edit</base>
2984
  <params>
3047
  <tooltip>This setting may be overwritten by manualy creating shipments. This option is only applicable to domestic COD shipments.</tooltip>
3048
  <frontend_type>select</frontend_type>
3049
  <backend_model>postnl_core/system_config_backend_validateDefaultOption</backend_model>
3050
+ <source_model>postnl_core/system_config_source_standardProductOptions::getAvailableNlCodOptions</source_model>
3051
  <multidimensional>true</multidimensional>
3052
  <sort_order>70</sort_order>
3053
  <show_in_default>1</show_in_default>
3358
  <show_in_store>1</show_in_store>
3359
  </active>
3360
  <show_exclusively_for_mijnpakket_users translate="label tooltip" module="postnl">
3361
+ <label>Show PostNL Checkout exclusively to users with a PostNL account</label>
3362
+ <tooltip>Activate the PostNL Checkout only for customers with a PostNL account. Please note: The Delivery Options must be activated.</tooltip>
3363
  <frontend_type>checkbox</frontend_type>
3364
  <backend_model>postnl/system_config_backend_checkbox</backend_model>
3365
  <source_model>postnl/system_config_source_yesno</source_model>
4502
  <fieldset>delivery_options</fieldset>
4503
  <value>1</value>
4504
  </enable_evening_timeframes>
4505
+ <country>
4506
+ <fieldset>cif_address</fieldset>
4507
+ <value>NL</value>
4508
+ </country>
4509
  </depends>
4510
  </default_evening_product_option>
4511
+ <default_sunday_product_option translate="label tooltip" module="postnl">
4512
+ <label>Default sunday delivery shipping option</label>
4513
+ <tooltip>This setting may be overwritten by manualy creating shipments.</tooltip>
4514
+ <frontend_type>select</frontend_type>
4515
+ <backend_model>postnl_core/system_config_backend_validateDefaultOption</backend_model>
4516
+ <source_model>postnl_core/system_config_source_sundayProductOptions::getAvailableOptions</source_model>
4517
+ <multidimensional>true</multidimensional>
4518
+ <sort_order>160</sort_order>
4519
+ <show_in_default>1</show_in_default>
4520
+ <show_in_website>0</show_in_website>
4521
+ <show_in_store>0</show_in_store>
4522
+ <depends>
4523
+ <delivery_options_active>
4524
+ <fieldset>delivery_options</fieldset>
4525
+ <value>1</value>
4526
+ </delivery_options_active>
4527
+ <enable_timeframes>
4528
+ <fieldset>delivery_options</fieldset>
4529
+ <value>1</value>
4530
+ </enable_timeframes>
4531
+ <enable_sunday_delivery>
4532
+ <fieldset>delivery_options</fieldset>
4533
+ <value>1</value>
4534
+ </enable_sunday_delivery>
4535
+ <country>
4536
+ <fieldset>cif_address</fieldset>
4537
+ <value>NL</value>
4538
+ </country>
4539
+ </depends>
4540
+ </default_sunday_product_option>
4541
  <default_pakjegemak_product_option translate="label tooltip" module="postnl">
4542
  <label>Default 'deliver at the Post Office' option</label>
4543
  <tooltip>This setting can be overwritten by manually creating shipments. This option is only applicable to Post Office shipments.</tooltip>
4545
  <backend_model>postnl_core/system_config_backend_validateDefaultOption</backend_model>
4546
  <source_model>postnl_core/system_config_source_pakjeGemakProductOptions::getAvailableOptions</source_model>
4547
  <multidimensional>true</multidimensional>
4548
+ <sort_order>170</sort_order>
4549
  <show_in_default>1</show_in_default>
4550
  <show_in_website>0</show_in_website>
4551
  <show_in_store>0</show_in_store>
4552
+ <depends>
4553
+ <country>
4554
+ <fieldset>cif_address</fieldset>
4555
+ <value>NL</value>
4556
+ </country>
4557
+ </depends>
4558
  </default_pakjegemak_product_option>
4559
  <default_pge_product_option translate="label tooltip" module="postnl">
4560
  <label>Default early post office pickup option</label>
4563
  <backend_model>postnl_core/system_config_backend_validateDefaultOption</backend_model>
4564
  <source_model>postnl_core/system_config_source_pakjeGemakProductOptions::getAvailablePgeOptions</source_model>
4565
  <multidimensional>true</multidimensional>
4566
+ <sort_order>180</sort_order>
4567
  <show_in_default>1</show_in_default>
4568
  <show_in_website>0</show_in_website>
4569
  <show_in_store>0</show_in_store>
4580
  <fieldset>delivery_options</fieldset>
4581
  <value>1</value>
4582
  </enable_pakjegemak_express>
4583
+ <country>
4584
+ <fieldset>cif_address</fieldset>
4585
+ <value>NL</value>
4586
+ </country>
4587
  </depends>
4588
  </default_pge_product_option>
4589
  <default_buspakje_product_option translate="label tooltip" module="postnl">
4593
  <backend_model>postnl_core/system_config_backend_validateDefaultOption</backend_model>
4594
  <source_model>postnl_core/system_config_source_buspakjeProductOptions::getAvailableOptions</source_model>
4595
  <multidimensional>true</multidimensional>
4596
+ <sort_order>190</sort_order>
4597
  <show_in_default>1</show_in_default>
4598
  <show_in_website>0</show_in_website>
4599
  <show_in_store>0</show_in_store>
4602
  <fieldset>delivery_options</fieldset>
4603
  <value>1</value>
4604
  </use_buspakje>
4605
+ <country>
4606
+ <fieldset>cif_address</fieldset>
4607
+ <value>NL</value>
4608
+ </country>
4609
  </depends>
4610
  </default_buspakje_product_option>
4611
  <default_stated_address_only_product_option translate="label tooltip" module="postnl">
4615
  <backend_model>postnl_core/system_config_backend_validateDefaultOption</backend_model>
4616
  <source_model>postnl_core/system_config_source_standardProductOptions::getAvailableStatedAddressOnlyOptions</source_model>
4617
  <multidimensional>true</multidimensional>
4618
+ <sort_order>200</sort_order>
4619
  <show_in_default>1</show_in_default>
4620
  <show_in_website>0</show_in_website>
4621
  <show_in_store>0</show_in_store>
4624
  <fieldset>delivery_options</fieldset>
4625
  <value>1</value>
4626
  </stated_address_only_option>
4627
+ <country>
4628
+ <fieldset>cif_address</fieldset>
4629
+ <value>NL</value>
4630
+ </country>
4631
  </depends>
4632
  </default_stated_address_only_product_option>
4633
  </fields>
4743
  <show_in_store>0</show_in_store>
4744
  </cif_versions_header>
4745
  <cif_versions_infobox translate="comment" module="postnl">
4746
+ <label>ONLY CHANGE THESE SETTINGS WITH DIRECT INSTRUCTION FROM POSTNL OR TIG</label>
4747
  <frontend_model>postnl_adminhtml/system_config_form_field_warningBox</frontend_model>
4748
  <sort_order>110</sort_order>
4749
  <show_in_default>1</show_in_default>
app/design/adminhtml/default/default/layout/TIG/postnl.xml CHANGED
@@ -288,14 +288,14 @@
288
  </reference>
289
  </adminhtml_sales_order_create_index>
290
 
291
- <postnl_admin_adminhtml_shipment_statushistory>
292
  <block type="core/text_list" name="root" output="toHtml">
293
  <block type="postnl_adminhtml/sales_order_shipment_view_tab_statusHistory" name="sales_order_shipment_status_history" template="TIG/PostNL/sales/order/shipment/view/tab/status_history.phtml"/>
294
  </block>
295
- </postnl_admin_adminhtml_shipment_statushistory>
296
 
297
- <postnl_admin_adminhtml_shipment_statushistorygrid>
298
  <update handle="formkey"/>
299
  <block type="postnl_adminhtml/sales_order_shipment_view_tab_statusHistory" name="sales_order_shipment_status_history" output="toHtml"/>
300
- </postnl_admin_adminhtml_shipment_statushistorygrid>
301
  </layout>
288
  </reference>
289
  </adminhtml_sales_order_create_index>
290
 
291
+ <adminhtml_postnladminhtml_shipment_statushistory>
292
  <block type="core/text_list" name="root" output="toHtml">
293
  <block type="postnl_adminhtml/sales_order_shipment_view_tab_statusHistory" name="sales_order_shipment_status_history" template="TIG/PostNL/sales/order/shipment/view/tab/status_history.phtml"/>
294
  </block>
295
+ </adminhtml_postnladminhtml_shipment_statushistory>
296
 
297
+ <adminhtml_postnladminhtml_shipment_statushistorygrid>
298
  <update handle="formkey"/>
299
  <block type="postnl_adminhtml/sales_order_shipment_view_tab_statusHistory" name="sales_order_shipment_status_history" output="toHtml"/>
300
+ </adminhtml_postnladminhtml_shipment_statushistorygrid>
301
  </layout>
app/design/adminhtml/default/default/template/TIG/PostNL/sales/order/shipment/create/shipment_options.phtml CHANGED
@@ -49,13 +49,13 @@
49
  <?php $_defaultBuspakjeOption = $this->getDefaultBuspakjeOption(); ?>
50
  <?php $_isBelgium = $this->isBelgium(); ?>
51
  <?php $_isGlobalPackShipment = (bool) $_cifHelper->isGlobalShipment($_shipment); ?>
52
- <?php $_isDutchShipment = (bool) $_cifHelper->isDutchShipment($_shipment); ?>
53
  <?php $_isCod = (bool) $_cifHelper->isCodShipment($_shipment);?>
54
  <?php $_isPakjeGemak = (bool) $_cifHelper->isPakjeGemakShipment($_shipment);?>
55
  <?php $_isAvond = (bool) $_cifHelper->isAvondShipment($_shipment); ?>
56
  <?php $_parcelCount = $this->getParcelCount(); ?>
57
  <div id="postnl_product_options">
58
- <?php if(Mage::helper('postnl')->canUseBuspakje() && $_isDutchShipment && !$_isCod && !$_isPakjeGemak && !$_isAvond): ?>
59
  <?php $_fitsAsBuspakje = $this->getFitsAsBuspakje(); ?>
60
  <?php $_buspakjeCalcMode = $this->getBuspakjeCalcMode(); ?>
61
  <div id="postnl_is_buspakje_container" <?php if ($_buspakjeCalcMode == 'automatic'): ?>style="display:none;"<?php endif; ?>>
@@ -104,7 +104,7 @@
104
  <label class="normal" for="postnl_product_option"><?php echo $this->__('PostNL Shipping Options'); ?></label>
105
  <select id="postnl_product_option" class="select required-entry" name="postnl[product_option]">
106
  <?php foreach($_productOptions as $_option): ?>
107
- <?php if (isset($_option['isBelgiumOnly']) && $_isBelgium === false): ?>
108
  <?php continue; ?>
109
  <?php endif; ?>
110
 
@@ -133,7 +133,7 @@
133
  <input type="text" name="postnl[extra_cover_amount]" class="input-text validate-increment-500 validate-not-negative-number" id="postnl_extra_cover" value="500"/>
134
  </p>
135
  <?php endif; ?>
136
- <?php if ($_isDutchShipment && !$_isCod): ?>
137
  <p id="postnl_parcel_count_container" style="display:none;">
138
  <label class="normal" for="postnl_parcel_count"><?php echo $this->__('Number of parcels'); ?></label>
139
  <input type="text" name="postnl[parcel_count]" class="input-text validate-digits validate-not-negative-number required-entry" id="postnl_parcel_count" value="<?php echo $_parcelCount; ?>"/>
49
  <?php $_defaultBuspakjeOption = $this->getDefaultBuspakjeOption(); ?>
50
  <?php $_isBelgium = $this->isBelgium(); ?>
51
  <?php $_isGlobalPackShipment = (bool) $_cifHelper->isGlobalShipment($_shipment); ?>
52
+ <?php $_isDomesticShipment = (bool) $_cifHelper->isDomesticShipment($_shipment); ?>
53
  <?php $_isCod = (bool) $_cifHelper->isCodShipment($_shipment);?>
54
  <?php $_isPakjeGemak = (bool) $_cifHelper->isPakjeGemakShipment($_shipment);?>
55
  <?php $_isAvond = (bool) $_cifHelper->isAvondShipment($_shipment); ?>
56
  <?php $_parcelCount = $this->getParcelCount(); ?>
57
  <div id="postnl_product_options">
58
+ <?php if(Mage::helper('postnl')->canUseBuspakje() && $_isDomesticShipment && !$_isCod && !$_isPakjeGemak && !$_isAvond && !$_isBelgium): ?>
59
  <?php $_fitsAsBuspakje = $this->getFitsAsBuspakje(); ?>
60
  <?php $_buspakjeCalcMode = $this->getBuspakjeCalcMode(); ?>
61
  <div id="postnl_is_buspakje_container" <?php if ($_buspakjeCalcMode == 'automatic'): ?>style="display:none;"<?php endif; ?>>
104
  <label class="normal" for="postnl_product_option"><?php echo $this->__('PostNL Shipping Options'); ?></label>
105
  <select id="postnl_product_option" class="select required-entry" name="postnl[product_option]">
106
  <?php foreach($_productOptions as $_option): ?>
107
+ <?php if (!empty($_option['isBelgiumOnly']) && $_isBelgium === false): ?>
108
  <?php continue; ?>
109
  <?php endif; ?>
110
 
133
  <input type="text" name="postnl[extra_cover_amount]" class="input-text validate-increment-500 validate-not-negative-number" id="postnl_extra_cover" value="500"/>
134
  </p>
135
  <?php endif; ?>
136
+ <?php if ($_isDomesticShipment && !$_isCod): ?>
137
  <p id="postnl_parcel_count_container" style="display:none;">
138
  <label class="normal" for="postnl_parcel_count"><?php echo $this->__('Number of parcels'); ?></label>
139
  <input type="text" name="postnl[parcel_count]" class="input-text validate-digits validate-not-negative-number required-entry" id="postnl_parcel_count" value="<?php echo $_parcelCount; ?>"/>
app/design/adminhtml/default/default/template/TIG/PostNL/sales/order/shipment/view/delivery_options.phtml CHANGED
@@ -54,7 +54,7 @@
54
  <?php $_defaultProductOption = $this->getDefaultProductOption(); ?>
55
  <?php $_isBelgium = $this->isBelgium(); ?>
56
  <?php $_isGlobalPackShipment = (bool) $_cifHelper->isGlobalShipment($_shipment); ?>
57
- <?php $_isDutchShipment = (bool) $_cifHelper->isDutchShipment($_shipment); ?>
58
  <?php $_isCod = (bool) $_cifHelper->isCodShipment($_shipment);?>
59
  <?php $_isPakjeGemak = (bool) $_cifHelper->isPakjeGemakShipment($_shipment);?>
60
  <?php endif; ?>
@@ -157,7 +157,7 @@
157
  open : function(url) {
158
 
159
  html = '<form id="change_product_code_form" method="post" action="' + url + '">'
160
- + '<input type="hidden" name="form_key" value="<? echo Mage::getSingleton('core/session')->getFormKey(); ?>" />'
161
  + '<p id="postnl_product_option_container">'
162
  + '<label class="normal" for="postnl_product_option"><?php echo $this->__('PostNL Shipping Options'); ?></label>'
163
  + '<select id="postnl_product_option" class="select required-entry" name="product_option">';
54
  <?php $_defaultProductOption = $this->getDefaultProductOption(); ?>
55
  <?php $_isBelgium = $this->isBelgium(); ?>
56
  <?php $_isGlobalPackShipment = (bool) $_cifHelper->isGlobalShipment($_shipment); ?>
57
+ <?php $_isDomesticShipment = (bool) $_cifHelper->isDomesticShipment($_shipment); ?>
58
  <?php $_isCod = (bool) $_cifHelper->isCodShipment($_shipment);?>
59
  <?php $_isPakjeGemak = (bool) $_cifHelper->isPakjeGemakShipment($_shipment);?>
60
  <?php endif; ?>
157
  open : function(url) {
158
 
159
  html = '<form id="change_product_code_form" method="post" action="' + url + '">'
160
+ + '<input type="hidden" name="form_key" value="<?php echo Mage::getSingleton('core/session')->getFormKey(); ?>" />'
161
  + '<p id="postnl_product_option_container">'
162
  + '<label class="normal" for="postnl_product_option"><?php echo $this->__('PostNL Shipping Options'); ?></label>'
163
  + '<select id="postnl_product_option" class="select required-entry" name="product_option">';
app/design/adminhtml/default/default/template/TIG/PostNL/sales/shipment/js.phtml CHANGED
@@ -37,7 +37,7 @@
37
  * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
  */
39
  ?>
40
- <?php $_hideNotificationUrl = $this->getUrl('postnl_admin/adminhtml_config/hideNotification'); ?>
41
 
42
  <div id="print_label_spinner" class="waiting-notification" style="display:none;">
43
  <div class="content">
37
  * @license http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US
38
  */
39
  ?>
40
+ <?php $_hideNotificationUrl = $this->getUrl('adminhtml/postnlAdminhtml_config/hideNotification'); ?>
41
 
42
  <div id="print_label_spinner" class="waiting-notification" style="display:none;">
43
  <div class="content">
app/design/adminhtml/default/default/template/TIG/PostNL/system/config/form/field/js.phtml CHANGED
@@ -40,8 +40,8 @@
40
  */
41
  ?>
42
  <?php $_helper = $this->helper('postnl'); ?>
43
- <?php $_activateUrl = $this->getUrl('postnl_admin/adminhtml_extensionControl/activate', array('_secure' => true)); ?>
44
- <?php $_validateUrl = $this->getUrl('postnl_admin/adminhtml_config/validateAccount', array('_secure' => true)); ?>
45
  <?php $_website = Mage::app()->getRequest()->getParam('website'); ?>
46
  <?php $_currentWizardStep = $this->getCurrentWizardStep(); ?>
47
  <?php $_saveWizardStepUrl = $this->getSaveWizardStepUrl(); ?>
40
  */
41
  ?>
42
  <?php $_helper = $this->helper('postnl'); ?>
43
+ <?php $_activateUrl = $this->getUrl('adminhtml/postnlAdminhtml_extensionControl/activate', array('_secure' => true)); ?>
44
+ <?php $_validateUrl = $this->getUrl('adminhtml/postnlAdminhtml_config/validateAccount', array('_secure' => true)); ?>
45
  <?php $_website = Mage::app()->getRequest()->getParam('website'); ?>
46
  <?php $_currentWizardStep = $this->getCurrentWizardStep(); ?>
47
  <?php $_saveWizardStepUrl = $this->getSaveWizardStepUrl(); ?>
app/design/adminhtml/default/default/template/TIG/PostNL/system/config/form/field/support_tab.phtml CHANGED
@@ -68,12 +68,13 @@
68
  <div class="text-box">
69
  <h3><?php echo $this->__('Magento & 3rd party version compatibility');?></h3>
70
  <ul>
71
- <li><?php echo $this->__('Magento Community Edition version');?> v1.6, v1.7, v1.8 &amp; v1.9</li>
72
- <li><?php echo $this->__('Magento Enterprise Edition version');?> v1.11, v1.12, v1.13 &amp; v1.14</li>
73
  </ul>
74
  <ul>
75
  <li><?php echo $this->__("Idev's OneStepCheckout version");?> v4.0 &amp; v4.1</li>
76
  <li><?php echo $this->__("GoMage's Checkout version");?> v0.0.5.8</li>
 
77
  </ul>
78
  <ul>
79
  <li><?php echo $this->__('We cannot guarantee compatibility with non supported extensions and versions of Magento.'); ?></li>
@@ -86,7 +87,7 @@
86
  <td class="col-right">
87
  <div class="text-box">
88
  <h3><?php echo $this->__('Support');?></h3>
89
- <p><?php echo $this->__('The extension is developed by Total Internet Group, commissioned by PostNL.');?></p>
90
  <h4><em><?php echo $this->__('PostNL account information and PostNL services');?></em></h4>
91
  <p><?php echo $this->__('For questions related to your PostNL account and PostNL delivery options, please contact PostNL.');?></p>
92
  <table class="contact">
68
  <div class="text-box">
69
  <h3><?php echo $this->__('Magento & 3rd party version compatibility');?></h3>
70
  <ul>
71
+ <li><?php echo $this->__('Magento Community Edition version');?> v1.7, v1.8 &amp; v1.9</li>
72
+ <li><?php echo $this->__('Magento Enterprise Edition version');?> v1.12, v1.13 &amp; v1.14</li>
73
  </ul>
74
  <ul>
75
  <li><?php echo $this->__("Idev's OneStepCheckout version");?> v4.0 &amp; v4.1</li>
76
  <li><?php echo $this->__("GoMage's Checkout version");?> v0.0.5.8</li>
77
+ <li><?php echo $this->__("Picqer's PostNL add-on version");?> v1.0</li>
78
  </ul>
79
  <ul>
80
  <li><?php echo $this->__('We cannot guarantee compatibility with non supported extensions and versions of Magento.'); ?></li>
87
  <td class="col-right">
88
  <div class="text-box">
89
  <h3><?php echo $this->__('Support');?></h3>
90
+ <p><?php echo $this->__('The extension is developed by TIG, commissioned by PostNL.');?></p>
91
  <h4><em><?php echo $this->__('PostNL account information and PostNL services');?></em></h4>
92
  <p><?php echo $this->__('For questions related to your PostNL account and PostNL delivery options, please contact PostNL.');?></p>
93
  <table class="contact">
app/design/frontend/base/default/template/TIG/PostNL/address_validation/gomage_checkout/postcode_check.phtml CHANGED
@@ -124,6 +124,41 @@
124
  </div>
125
 
126
  <script type="text/javascript">
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
127
  //<![CDATA[
128
  <?php for ($_i = 4, $_n = $this->helper('customer/address')->getStreetLines(); $_i <= $_n; $_i++): ?>
129
  $('virtual_<?php echo $_addressType; ?>_street<?php echo $_i; ?>').observe('change', function(event) {
124
  </div>
125
 
126
  <script type="text/javascript">
127
+
128
+ <?php
129
+
130
+ $observe_billing_items = array('#buy_without_vat');
131
+ $observe_shipping_items = array();
132
+
133
+ if($this->helper('gomage_checkout')->getConfigData('ajax/country')){
134
+ $observe_billing_items[] = '#gcheckout-onepage-address #billing_country_id';
135
+ $observe_shipping_items[] = '#gcheckout-onepage-address .shipping_country_id';
136
+ }
137
+
138
+ if($this->helper('gomage_checkout')->getConfigData('ajax/region')){
139
+ $observe_billing_items[] = '#gcheckout-onepage-address .billing-region select, #gcheckout-onepage-address .billing-region input';
140
+ $observe_shipping_items[] = '#gcheckout-onepage-address .shipping-region input, #gcheckout-onepage-address .shipping-region select';
141
+ }
142
+
143
+ if($this->helper('gomage_checkout')->getConfigData('ajax/postcode')){
144
+ $observe_billing_items[] = '#gcheckout-onepage-address .billing_postcode input';
145
+ $observe_shipping_items[] = '#gcheckout-onepage-address .shipping_postcode input';
146
+ }
147
+
148
+ if($this->helper('gomage_checkout')->getConfigData('ajax/city')){
149
+ $observe_billing_items[] = '#gcheckout-onepage-address .billing_city input';
150
+ $observe_shipping_items[] = '#gcheckout-onepage-address .shipping_city input';
151
+ }
152
+
153
+ if($this->helper('gomage_checkout')->getConfigData('ajax/email')){
154
+ $observe_billing_items[] = '#billing_email';
155
+ }
156
+
157
+ ?>
158
+
159
+ var observe_billing_items = '<?php echo implode(',', $observe_billing_items);?>';
160
+ var observe_shipping_items = '<?php echo implode(',', $observe_shipping_items);?>';
161
+
162
  //<![CDATA[
163
  <?php for ($_i = 4, $_n = $this->helper('customer/address')->getStreetLines(); $_i <= $_n; $_i++): ?>
164
  $('virtual_<?php echo $_addressType; ?>_street<?php echo $_i; ?>').observe('change', function(event) {
app/design/frontend/base/default/template/TIG/PostNL/core/sales/order/email/delivery_options.phtml CHANGED
@@ -44,10 +44,10 @@
44
  <?php $_filteredDeliveryOptions = array_filter($_deliveryOptions); ?>
45
  <?php if (!empty($_filteredDeliveryOptions) && $_helper->canUseDeliveryDays(false)): ?>
46
  <br />
47
- <?php echo $this->formatDate($_deliveryOptions['store_delivery_date']); ?>
48
  <?php if ($_deliveryOptions['store_delivery_time_start'] && $_deliveryOptions['store_delivery_time_end'] && $_helper->canUseTimeframes(false)): ?>
49
- &nbsp;(<?php echo $this->formatTime($_deliveryOptions['store_delivery_time_start']); ?> - <?php echo $this->formatTime($_deliveryOptions['store_delivery_time_end']); ?>)
50
  <?php elseif ($_deliveryOptions['store_delivery_time_start'] && $_helper->canUseTimeframes(false)): ?>
51
- &nbsp;(<?php echo $_helper->__('from')?> <?php echo $this->formatTime($_deliveryOptions['store_delivery_time_start']); ?>)
52
  <?php endif; ?>
53
  <?php endif; ?>
44
  <?php $_filteredDeliveryOptions = array_filter($_deliveryOptions); ?>
45
  <?php if (!empty($_filteredDeliveryOptions) && $_helper->canUseDeliveryDays(false)): ?>
46
  <br />
47
+ <?php echo $_deliveryOptions['store_delivery_date']; ?>
48
  <?php if ($_deliveryOptions['store_delivery_time_start'] && $_deliveryOptions['store_delivery_time_end'] && $_helper->canUseTimeframes(false)): ?>
49
+ &nbsp;(<?php echo $_deliveryOptions['store_delivery_time_start']; ?> - <?php $_deliveryOptions['store_delivery_time_end']; ?>)
50
  <?php elseif ($_deliveryOptions['store_delivery_time_start'] && $_helper->canUseTimeframes(false)): ?>
51
+ &nbsp;(<?php echo $_helper->__('from')?> <?php echo $_deliveryOptions['store_delivery_time_start']; ?>)
52
  <?php endif; ?>
53
  <?php endif; ?>
app/design/frontend/base/default/template/TIG/PostNL/delivery_options/gomage_checkout/deliveryoptions.phtml CHANGED
@@ -46,6 +46,7 @@
46
  <?php $_store = Mage::app()->getStore(); ?>
47
  <?php $_address = $this->getShippingAddress(); ?>
48
  <?php $_postcode = $this->getPostcode(); ?>
 
49
  <?php $_deliveryDate = $this->getDeliveryDate(); ?>
50
  <?php $_streetData = $this->getStreetData(); ?>
51
  <?php $_housenumber = $_streetData['housenumber']; ?>
@@ -54,7 +55,7 @@
54
 
55
  <?php $_canShowSeparateRates = $this->canShowSeparateRates(); ?>
56
 
57
-
58
  <?php $_canUsePakjeGemak = $this->canUsePakjeGemak(); ?>
59
  <?php $_canUsePakjeGemakExpress = false; ?>
60
  <?php if ($_canUsePakjeGemak): ?>
@@ -72,6 +73,8 @@
72
 
73
  <?php $_eveningFeeIncl = $this->getFee('evening', true); ?>
74
  <?php $_eveningFeeExcl = $this->getFee('evening', false); ?>
 
 
75
  <?php $_expressFeeIncl = $this->getFee('express', true); ?>
76
  <?php $_expressFeeExcl = $this->getFee('express', false); ?>
77
  <?php $_pakjeGemakFeeIncl = $this->getFee('pakje_gemak', true); ?>
@@ -310,6 +313,7 @@
310
  locationsInAreaUrl : '<?php echo $this->getUrl('postnl/deliveryOptions/getLocationsInArea', array('_secure' => true)) ?>',
311
  postcode : postcode,
312
  housenumber : housenumber,
 
313
  deliveryDate : '<?php echo $_deliveryDate; ?>',
314
  imageBaseUrl : baseUrl,
315
  fullAddress : fullAddress
@@ -322,16 +326,20 @@
322
  taxDisplayType : <?php echo $this->getTaxDisplayType() ?>,
323
  eveningFeeIncl : <?php echo $_eveningFeeIncl; ?>,
324
  eveningFeeExcl : <?php echo $_eveningFeeExcl; ?>,
 
 
325
  expressFeeIncl : <?php echo $_expressFeeIncl; ?>,
326
  expressFeeExcl : <?php echo $_expressFeeExcl; ?>,
327
  pakjeGemakFeeIncl : <?php echo $_pakjeGemakFeeIncl; ?>,
328
  pakjeGemakFeeExcl : <?php echo $_pakjeGemakFeeExcl; ?>,
329
  eveningFeeText : '<?php echo $this->getFeeText('evening', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
 
330
  expressFeeText : '<?php echo $this->getFeeText('express', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
331
  pakjeGemakFeeText : '<?php echo $this->getFeeText('pakje_gemak', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
332
  allowPg : <?php echo $_canUsePakjeGemak ? 'true' : 'false'; ?>,
333
  allowPge : <?php echo $_canUsePakjeGemakExpress ? 'true' : 'false'; ?>,
334
  allowPa : <?php echo $_canUsePakketAutomaat ? 'true' : 'false'; ?>,
 
335
  allowDeliveryDays : <?php echo $this->canUseDeliveryDays() ? 'true' : 'false'; ?>,
336
  allowTimeframes : <?php echo $this->canUseTimeframes() ? 'true' : 'false'; ?>,
337
  allowEveningTimeframes : <?php echo $this->canUseEveningTimeframes() ? 'true' : 'false'; ?>,
46
  <?php $_store = Mage::app()->getStore(); ?>
47
  <?php $_address = $this->getShippingAddress(); ?>
48
  <?php $_postcode = $this->getPostcode(); ?>
49
+ <?php $_country = $this->getCountry(); ?>
50
  <?php $_deliveryDate = $this->getDeliveryDate(); ?>
51
  <?php $_streetData = $this->getStreetData(); ?>
52
  <?php $_housenumber = $_streetData['housenumber']; ?>
55
 
56
  <?php $_canShowSeparateRates = $this->canShowSeparateRates(); ?>
57
 
58
+ <?php $_canUseSundaySorting = $this->canUseSundaySorting(); ?>
59
  <?php $_canUsePakjeGemak = $this->canUsePakjeGemak(); ?>
60
  <?php $_canUsePakjeGemakExpress = false; ?>
61
  <?php if ($_canUsePakjeGemak): ?>
73
 
74
  <?php $_eveningFeeIncl = $this->getFee('evening', true); ?>
75
  <?php $_eveningFeeExcl = $this->getFee('evening', false); ?>
76
+ <?php $_sundayFeeIncl = $this->getFee('sunday', true); ?>
77
+ <?php $_sundayFeeExcl = $this->getFee('sunday', false); ?>
78
  <?php $_expressFeeIncl = $this->getFee('express', true); ?>
79
  <?php $_expressFeeExcl = $this->getFee('express', false); ?>
80
  <?php $_pakjeGemakFeeIncl = $this->getFee('pakje_gemak', true); ?>
313
  locationsInAreaUrl : '<?php echo $this->getUrl('postnl/deliveryOptions/getLocationsInArea', array('_secure' => true)) ?>',
314
  postcode : postcode,
315
  housenumber : housenumber,
316
+ country : '<?php echo $this->escapeHtml($_country); ?>',
317
  deliveryDate : '<?php echo $_deliveryDate; ?>',
318
  imageBaseUrl : baseUrl,
319
  fullAddress : fullAddress
326
  taxDisplayType : <?php echo $this->getTaxDisplayType() ?>,
327
  eveningFeeIncl : <?php echo $_eveningFeeIncl; ?>,
328
  eveningFeeExcl : <?php echo $_eveningFeeExcl; ?>,
329
+ sundayFeeIncl : <?php echo $_sundayFeeIncl; ?>,
330
+ sundayFeeExcl : <?php echo $_sundayFeeExcl; ?>,
331
  expressFeeIncl : <?php echo $_expressFeeIncl; ?>,
332
  expressFeeExcl : <?php echo $_expressFeeExcl; ?>,
333
  pakjeGemakFeeIncl : <?php echo $_pakjeGemakFeeIncl; ?>,
334
  pakjeGemakFeeExcl : <?php echo $_pakjeGemakFeeExcl; ?>,
335
  eveningFeeText : '<?php echo $this->getFeeText('evening', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
336
+ sundayFeeText : '<?php echo $this->getFeeText('sunday', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
337
  expressFeeText : '<?php echo $this->getFeeText('express', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
338
  pakjeGemakFeeText : '<?php echo $this->getFeeText('pakje_gemak', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
339
  allowPg : <?php echo $_canUsePakjeGemak ? 'true' : 'false'; ?>,
340
  allowPge : <?php echo $_canUsePakjeGemakExpress ? 'true' : 'false'; ?>,
341
  allowPa : <?php echo $_canUsePakketAutomaat ? 'true' : 'false'; ?>,
342
+ allowSundaySorting : <?php echo $_canUseSundaySorting ? 'true' : 'false'; ?>,
343
  allowDeliveryDays : <?php echo $this->canUseDeliveryDays() ? 'true' : 'false'; ?>,
344
  allowTimeframes : <?php echo $this->canUseTimeframes() ? 'true' : 'false'; ?>,
345
  allowEveningTimeframes : <?php echo $this->canUseEveningTimeframes() ? 'true' : 'false'; ?>,
app/design/frontend/base/default/template/TIG/PostNL/delivery_options/onepage/deliveryoptions.phtml CHANGED
@@ -45,6 +45,7 @@
45
  <?php $_store = Mage::app()->getStore(); ?>
46
  <?php $_address = $this->getShippingAddress(); ?>
47
  <?php $_postcode = $this->getPostcode(); ?>
 
48
  <?php $_deliveryDate = $this->getDeliveryDate(); ?>
49
  <?php $_streetData = $this->getStreetData(); ?>
50
  <?php $_housenumber = $_streetData['housenumber']; ?>
@@ -55,6 +56,7 @@
55
  <?php $_canShowSeparateRates = $this->canShowSeparateRates(); ?>
56
 
57
  <?php $_canShowOnlyStatedAddressOption = $this->canShowOnlyStatedAddressOption(); ?>
 
58
  <?php $_canUsePakjeGemak = $this->canUsePakjeGemak(); ?>
59
  <?php $_canUsePakketAutomaat = $this->canUsePakketAutomaat(); ?>
60
  <?php $_canUsePakjeGemakExpress = false; ?>
@@ -68,6 +70,8 @@
68
 
69
  <?php $_eveningFeeIncl = $this->getFee('evening', true); ?>
70
  <?php $_eveningFeeExcl = $this->getFee('evening', false); ?>
 
 
71
  <?php $_expressFeeIncl = $this->getFee('express', true); ?>
72
  <?php $_expressFeeExcl = $this->getFee('express', false); ?>
73
  <?php $_pakjeGemakFeeIncl = $this->getFee('pakje_gemak', true); ?>
@@ -184,6 +188,7 @@
184
  locationsInAreaUrl : '<?php echo $this->getUrl('postnl/deliveryOptions/getLocationsInArea', array('_secure' => true)) ?>',
185
  postcode : '<?php echo $this->escapeHtml($_postcode); ?>',
186
  housenumber : '<?php echo $this->escapeHtml($_housenumber); ?>',
 
187
  deliveryDate : '<?php echo $this->escapeHtml($_deliveryDate); ?>',
188
  imageBaseUrl : baseUrl,
189
  fullAddress : "<?php echo $this->escapeHtml(implode(' ', $_address->getStreet()) . ', ' . $_address->getCity() . ', ' . $_address->getPostcode() . ', ' . $_address->getCountry()); ?>"
@@ -193,16 +198,20 @@
193
  taxDisplayType : <?php echo $this->getTaxDisplayType() ?>,
194
  eveningFeeIncl : <?php echo $_eveningFeeIncl; ?>,
195
  eveningFeeExcl : <?php echo $_eveningFeeExcl; ?>,
 
 
196
  expressFeeIncl : <?php echo $_expressFeeIncl; ?>,
197
  expressFeeExcl : <?php echo $_expressFeeExcl; ?>,
198
  pakjeGemakFeeIncl : <?php echo $_pakjeGemakFeeIncl; ?>,
199
  pakjeGemakFeeExcl : <?php echo $_pakjeGemakFeeExcl; ?>,
200
  eveningFeeText : '<?php echo $this->getFeeText('evening', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
 
201
  expressFeeText : '<?php echo $this->getFeeText('express', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
202
  pakjeGemakFeeText : '<?php echo $this->getFeeText('pakje_gemak', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
203
  allowPg : <?php echo $_canUsePakjeGemak ? 'true' : 'false'; ?>,
204
  allowPge : <?php echo $_canUsePakjeGemakExpress ? 'true' : 'false'; ?>,
205
  allowPa : <?php echo $_canUsePakketAutomaat ? 'true' : 'false'; ?>,
 
206
  allowDeliveryDays : <?php echo $this->canUseDeliveryDays() ? 'true' : 'false'; ?>,
207
  allowTimeframes : <?php echo $this->canUseTimeframes() ? 'true' : 'false'; ?>,
208
  allowEveningTimeframes : <?php echo $this->canUseEveningTimeframes() ? 'true' : 'false'; ?>,
45
  <?php $_store = Mage::app()->getStore(); ?>
46
  <?php $_address = $this->getShippingAddress(); ?>
47
  <?php $_postcode = $this->getPostcode(); ?>
48
+ <?php $_country = $this->getCountry(); ?>
49
  <?php $_deliveryDate = $this->getDeliveryDate(); ?>
50
  <?php $_streetData = $this->getStreetData(); ?>
51
  <?php $_housenumber = $_streetData['housenumber']; ?>
56
  <?php $_canShowSeparateRates = $this->canShowSeparateRates(); ?>
57
 
58
  <?php $_canShowOnlyStatedAddressOption = $this->canShowOnlyStatedAddressOption(); ?>
59
+ <?php $_canUseSundaySorting = $this->canUseSundaySorting(); ?>
60
  <?php $_canUsePakjeGemak = $this->canUsePakjeGemak(); ?>
61
  <?php $_canUsePakketAutomaat = $this->canUsePakketAutomaat(); ?>
62
  <?php $_canUsePakjeGemakExpress = false; ?>
70
 
71
  <?php $_eveningFeeIncl = $this->getFee('evening', true); ?>
72
  <?php $_eveningFeeExcl = $this->getFee('evening', false); ?>
73
+ <?php $_sundayFeeIncl = $this->getFee('sunday', true); ?>
74
+ <?php $_sundayFeeExcl = $this->getFee('sunday', false); ?>
75
  <?php $_expressFeeIncl = $this->getFee('express', true); ?>
76
  <?php $_expressFeeExcl = $this->getFee('express', false); ?>
77
  <?php $_pakjeGemakFeeIncl = $this->getFee('pakje_gemak', true); ?>
188
  locationsInAreaUrl : '<?php echo $this->getUrl('postnl/deliveryOptions/getLocationsInArea', array('_secure' => true)) ?>',
189
  postcode : '<?php echo $this->escapeHtml($_postcode); ?>',
190
  housenumber : '<?php echo $this->escapeHtml($_housenumber); ?>',
191
+ country : '<?php echo $this->escapeHtml($_country); ?>',
192
  deliveryDate : '<?php echo $this->escapeHtml($_deliveryDate); ?>',
193
  imageBaseUrl : baseUrl,
194
  fullAddress : "<?php echo $this->escapeHtml(implode(' ', $_address->getStreet()) . ', ' . $_address->getCity() . ', ' . $_address->getPostcode() . ', ' . $_address->getCountry()); ?>"
198
  taxDisplayType : <?php echo $this->getTaxDisplayType() ?>,
199
  eveningFeeIncl : <?php echo $_eveningFeeIncl; ?>,
200
  eveningFeeExcl : <?php echo $_eveningFeeExcl; ?>,
201
+ sundayFeeIncl : <?php echo $_sundayFeeIncl; ?>,
202
+ sundayFeeExcl : <?php echo $_sundayFeeExcl; ?>,
203
  expressFeeIncl : <?php echo $_expressFeeIncl; ?>,
204
  expressFeeExcl : <?php echo $_expressFeeExcl; ?>,
205
  pakjeGemakFeeIncl : <?php echo $_pakjeGemakFeeIncl; ?>,
206
  pakjeGemakFeeExcl : <?php echo $_pakjeGemakFeeExcl; ?>,
207
  eveningFeeText : '<?php echo $this->getFeeText('evening', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
208
+ sundayFeeText : '<?php echo $this->getFeeText('sunday', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
209
  expressFeeText : '<?php echo $this->getFeeText('express', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
210
  pakjeGemakFeeText : '<?php echo $this->getFeeText('pakje_gemak', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
211
  allowPg : <?php echo $_canUsePakjeGemak ? 'true' : 'false'; ?>,
212
  allowPge : <?php echo $_canUsePakjeGemakExpress ? 'true' : 'false'; ?>,
213
  allowPa : <?php echo $_canUsePakketAutomaat ? 'true' : 'false'; ?>,
214
+ allowSundaySorting : <?php echo $_canUseSundaySorting ? 'true' : 'false'; ?>,
215
  allowDeliveryDays : <?php echo $this->canUseDeliveryDays() ? 'true' : 'false'; ?>,
216
  allowTimeframes : <?php echo $this->canUseTimeframes() ? 'true' : 'false'; ?>,
217
  allowEveningTimeframes : <?php echo $this->canUseEveningTimeframes() ? 'true' : 'false'; ?>,
app/design/frontend/base/default/template/TIG/PostNL/delivery_options/onestepcheckout/deliveryoptions.phtml CHANGED
@@ -46,6 +46,7 @@
46
  <?php $_store = Mage::app()->getStore(); ?>
47
  <?php $_address = $this->getShippingAddress(); ?>
48
  <?php $_postcode = $this->getPostcode(); ?>
 
49
  <?php $_deliveryDate = $this->getDeliveryDate(); ?>
50
  <?php $_streetData = $this->getStreetData(); ?>
51
  <?php $_housenumber = $_streetData['housenumber']; ?>
@@ -54,7 +55,7 @@
54
 
55
  <?php $_canShowSeparateRates = $this->canShowSeparateRates(); ?>
56
 
57
-
58
  <?php $_canUsePakjeGemak = $this->canUsePakjeGemak(); ?>
59
  <?php $_canUsePakjeGemakExpress = false; ?>
60
  <?php if ($_canUsePakjeGemak): ?>
@@ -72,6 +73,8 @@
72
 
73
  <?php $_eveningFeeIncl = $this->getFee('evening', true); ?>
74
  <?php $_eveningFeeExcl = $this->getFee('evening', false); ?>
 
 
75
  <?php $_expressFeeIncl = $this->getFee('express', true); ?>
76
  <?php $_expressFeeExcl = $this->getFee('express', false); ?>
77
  <?php $_pakjeGemakFeeIncl = $this->getFee('pakje_gemak', true); ?>
@@ -318,6 +321,7 @@
318
  locationsInAreaUrl : '<?php echo $this->getUrl('postnl/deliveryOptions/getLocationsInArea', array('_secure' => true)) ?>',
319
  postcode : postcode,
320
  housenumber : housenumber,
 
321
  deliveryDate : '<?php echo $_deliveryDate; ?>',
322
  imageBaseUrl : baseUrl,
323
  fullAddress : fullAddress
@@ -330,16 +334,20 @@
330
  taxDisplayType : <?php echo $this->getTaxDisplayType() ?>,
331
  eveningFeeIncl : <?php echo $_eveningFeeIncl; ?>,
332
  eveningFeeExcl : <?php echo $_eveningFeeExcl; ?>,
 
 
333
  expressFeeIncl : <?php echo $_expressFeeIncl; ?>,
334
  expressFeeExcl : <?php echo $_expressFeeExcl; ?>,
335
  pakjeGemakFeeIncl : <?php echo $_pakjeGemakFeeIncl; ?>,
336
  pakjeGemakFeeExcl : <?php echo $_pakjeGemakFeeExcl; ?>,
337
  eveningFeeText : '<?php echo $this->getFeeText('evening', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
 
338
  expressFeeText : '<?php echo $this->getFeeText('express', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
339
  pakjeGemakFeeText : '<?php echo $this->getFeeText('pakje_gemak', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
340
  allowPg : <?php echo $_canUsePakjeGemak ? 'true' : 'false'; ?>,
341
  allowPge : <?php echo $_canUsePakjeGemakExpress ? 'true' : 'false'; ?>,
342
  allowPa : <?php echo $_canUsePakketAutomaat ? 'true' : 'false'; ?>,
 
343
  allowDeliveryDays : <?php echo $this->canUseDeliveryDays() ? 'true' : 'false'; ?>,
344
  allowTimeframes : <?php echo $this->canUseTimeframes() ? 'true' : 'false'; ?>,
345
  allowEveningTimeframes : <?php echo $this->canUseEveningTimeframes() ? 'true' : 'false'; ?>,
46
  <?php $_store = Mage::app()->getStore(); ?>
47
  <?php $_address = $this->getShippingAddress(); ?>
48
  <?php $_postcode = $this->getPostcode(); ?>
49
+ <?php $_country = $this->getCountry(); ?>
50
  <?php $_deliveryDate = $this->getDeliveryDate(); ?>
51
  <?php $_streetData = $this->getStreetData(); ?>
52
  <?php $_housenumber = $_streetData['housenumber']; ?>
55
 
56
  <?php $_canShowSeparateRates = $this->canShowSeparateRates(); ?>
57
 
58
+ <?php $_canUseSundaySorting = $this->canUseSundaySorting(); ?>
59
  <?php $_canUsePakjeGemak = $this->canUsePakjeGemak(); ?>
60
  <?php $_canUsePakjeGemakExpress = false; ?>
61
  <?php if ($_canUsePakjeGemak): ?>
73
 
74
  <?php $_eveningFeeIncl = $this->getFee('evening', true); ?>
75
  <?php $_eveningFeeExcl = $this->getFee('evening', false); ?>
76
+ <?php $_sundayFeeIncl = $this->getFee('sunday', true); ?>
77
+ <?php $_sundayFeeExcl = $this->getFee('sunday', false); ?>
78
  <?php $_expressFeeIncl = $this->getFee('express', true); ?>
79
  <?php $_expressFeeExcl = $this->getFee('express', false); ?>
80
  <?php $_pakjeGemakFeeIncl = $this->getFee('pakje_gemak', true); ?>
321
  locationsInAreaUrl : '<?php echo $this->getUrl('postnl/deliveryOptions/getLocationsInArea', array('_secure' => true)) ?>',
322
  postcode : postcode,
323
  housenumber : housenumber,
324
+ country : '<?php echo $this->escapeHtml($_country); ?>',
325
  deliveryDate : '<?php echo $_deliveryDate; ?>',
326
  imageBaseUrl : baseUrl,
327
  fullAddress : fullAddress
334
  taxDisplayType : <?php echo $this->getTaxDisplayType() ?>,
335
  eveningFeeIncl : <?php echo $_eveningFeeIncl; ?>,
336
  eveningFeeExcl : <?php echo $_eveningFeeExcl; ?>,
337
+ sundayFeeIncl : <?php echo $_sundayFeeIncl; ?>,
338
+ sundayFeeExcl : <?php echo $_sundayFeeExcl; ?>,
339
  expressFeeIncl : <?php echo $_expressFeeIncl; ?>,
340
  expressFeeExcl : <?php echo $_expressFeeExcl; ?>,
341
  pakjeGemakFeeIncl : <?php echo $_pakjeGemakFeeIncl; ?>,
342
  pakjeGemakFeeExcl : <?php echo $_pakjeGemakFeeExcl; ?>,
343
  eveningFeeText : '<?php echo $this->getFeeText('evening', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
344
+ sundayFeeText : '<?php echo $this->getFeeText('sunday', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
345
  expressFeeText : '<?php echo $this->getFeeText('express', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
346
  pakjeGemakFeeText : '<?php echo $this->getFeeText('pakje_gemak', $this->helper('tax')->displayShippingPriceIncludingTax()); ?>',
347
  allowPg : <?php echo $_canUsePakjeGemak ? 'true' : 'false'; ?>,
348
  allowPge : <?php echo $_canUsePakjeGemakExpress ? 'true' : 'false'; ?>,
349
  allowPa : <?php echo $_canUsePakketAutomaat ? 'true' : 'false'; ?>,
350
+ allowSundaySorting : <?php echo $_canUseSundaySorting ? 'true' : 'false'; ?>,
351
  allowDeliveryDays : <?php echo $this->canUseDeliveryDays() ? 'true' : 'false'; ?>,
352
  allowTimeframes : <?php echo $this->canUseTimeframes() ? 'true' : 'false'; ?>,
353
  allowEveningTimeframes : <?php echo $this->canUseEveningTimeframes() ? 'true' : 'false'; ?>,
app/design/frontend/base/default/template/TIG/PostNL/mijnpakket/account_notification.phtml CHANGED
@@ -43,7 +43,7 @@
43
  <?php $_appLinkTitle = $this->__('Download the PostNL MijnPakket app'); ?>
44
  <div id="postnl_notifications" style="display:none;">
45
  <div id="create_mijnpakket_account" style="display:none;">
46
- <h4><?php echo $this->__('Always stay informed? Click %shere%s to create a MijnPakket account based on your order details.', $_createAccountLink, '</a>'); ?></h4>
47
  <ul class="mijnpakket-usp">
48
  <li><?php echo $this->__("Track your shipment's current status and whereabouts"); ?></li>
49
  <li><?php echo $this->__('Change the delivery time and place if you are not at home'); ?></li>
@@ -51,7 +51,7 @@
51
  </ul>
52
  </div>
53
  <div id="mijnpakket_app" style="display:none;">
54
- <h4><?php echo $this->__('Always stay informed? Download the MijnPakket app.'); ?></h4>
55
  <ul class="mijnpakket-usp">
56
  <li><?php echo $this->__("Track your shipment's current status and whereabouts"); ?></li>
57
  <li><?php echo $this->__('Change the delivery time and place if you are not at home'); ?></li>
43
  <?php $_appLinkTitle = $this->__('Download the PostNL MijnPakket app'); ?>
44
  <div id="postnl_notifications" style="display:none;">
45
  <div id="create_mijnpakket_account" style="display:none;">
46
+ <h4><?php echo $this->__('Always stay informed? Click %shere%s to create a PostNL account based on your order details.', $_createAccountLink, '</a>'); ?></h4>
47
  <ul class="mijnpakket-usp">
48
  <li><?php echo $this->__("Track your shipment's current status and whereabouts"); ?></li>
49
  <li><?php echo $this->__('Change the delivery time and place if you are not at home'); ?></li>
51
  </ul>
52
  </div>
53
  <div id="mijnpakket_app" style="display:none;">
54
+ <h4><?php echo $this->__('Always stay informed? Download the PostNL app.'); ?></h4>
55
  <ul class="mijnpakket-usp">
56
  <li><?php echo $this->__("Track your shipment's current status and whereabouts"); ?></li>
57
  <li><?php echo $this->__('Change the delivery time and place if you are not at home'); ?></li>
app/design/frontend/base/default/template/TIG/PostNL/mijnpakket/gomage_checkout/login_button.phtml CHANGED
@@ -41,32 +41,32 @@
41
  <div id="postnl_mijnpakket" style="display:none;">
42
  <div class="clearfix">
43
  <div id="mijnpakket_text">
44
- <h3><?php echo $this->__('Checkout using MijnPakket') ?></h3>
45
  <div id="postnl_mijnpakket_tooltip" class="postnl-tooltip">
46
- <div><?php echo $this->__('If you have a MijnPakket account you can use the button below to log in to your account. When you log in to your MijnPakket account the webshop will read your preferred address and select it as your billing and shipping address. You can change this address in the forms below.'); ?></div>
47
  </div>
48
- <p><?php echo $this->__('Log in with your MijnPakket account to automatically use your preferred address.') ?></p>
49
  </div>
50
  <div id="mijnpakket_buttons">
51
  <div id="postnl_mijnpakket_login_button" style="display: none;">
52
  <span>
53
- <img src="<?php echo $this->getButtonUrl(); ?>" title="PostNL - MijnPakket" alt="PostNL - MijnPakket"/>
54
  </span>
55
  </div>
56
  <div id="postnl_mijnpakket_login_button_refresh" style="display: none;">
57
  <span>
58
- <img src="<?php echo $this->getButtonUrl(); ?>" title="PostNL - MijnPakket" alt="PostNL - MijnPakket"/>
59
  </span>
60
  </div>
61
  <div id="postnl_mijnpakket_login_button_disabled" style="display: none;">
62
  <span>
63
- <img src="<?php echo $this->getDisabledButtonUrl(); ?>" title="PostNL - MijnPakket" alt="PostNL - MijnPakket"/>
64
  </span>
65
  </div>
66
  </div>
67
  <div id="login-buttons-container">
68
  <span class="please-wait" id="login-please-wait" style="display:none;">
69
- <img src="<?php echo $this->getSkinUrl('images/opc-ajax-loader.gif') ?>" alt="<?php echo $this->__('Loading MijnPakket data...') ?>" title="<?php echo $this->__('Loading MijnPakket data...') ?>" class="v-middle" /> <?php echo $this->__('Loading MijnPakket data...') ?>
70
  </span>
71
  </div>
72
  </div>
41
  <div id="postnl_mijnpakket" style="display:none;">
42
  <div class="clearfix">
43
  <div id="mijnpakket_text">
44
+ <h3><?php echo $this->__('Checkout using PostNL') ?></h3>
45
  <div id="postnl_mijnpakket_tooltip" class="postnl-tooltip">
46
+ <div><?php echo $this->__('If you have a PostNL account you can use the button below to log in to your account. When you log in to your PostNL account the webshop will read your preferred address and select it as your billing and shipping address. You can change this address in the forms below.'); ?></div>
47
  </div>
48
+ <p><?php echo $this->__('Log in with your PostNL account to automatically use your preferred address.') ?></p>
49
  </div>
50
  <div id="mijnpakket_buttons">
51
  <div id="postnl_mijnpakket_login_button" style="display: none;">
52
  <span>
53
+ <img src="<?php echo $this->getButtonUrl(); ?>" title="PostNL" alt="PostNL"/>
54
  </span>
55
  </div>
56
  <div id="postnl_mijnpakket_login_button_refresh" style="display: none;">
57
  <span>
58
+ <img src="<?php echo $this->getButtonUrl(); ?>" title="PostNL" alt="PostNL"/>
59
  </span>
60
  </div>
61
  <div id="postnl_mijnpakket_login_button_disabled" style="display: none;">
62
  <span>
63
+ <img src="<?php echo $this->getDisabledButtonUrl(); ?>" title="PostNL" alt="PostNL"/>
64
  </span>
65
  </div>
66
  </div>
67
  <div id="login-buttons-container">
68
  <span class="please-wait" id="login-please-wait" style="display:none;">
69
+ <img src="<?php echo $this->getSkinUrl('images/opc-ajax-loader.gif') ?>" alt="<?php echo $this->__('Loading PostNL data...') ?>" title="<?php echo $this->__('Loading PostNL data...') ?>" class="v-middle" /> <?php echo $this->__('Loading MijnPakket data...') ?>
70
  </span>
71
  </div>
72
  </div>
app/design/frontend/base/default/template/TIG/PostNL/mijnpakket/onepage/login_button.phtml CHANGED
@@ -41,28 +41,28 @@
41
  <div id="postnl_mijnpakket" style="display:none;">
42
  <div class="clearfix">
43
  <div id="mijnpakket_text">
44
- <h3><?php echo $this->__('Checkout using MijnPakket') ?></h3>
45
  <div id="postnl_mijnpakket_tooltip" class="postnl-tooltip">
46
- <div><?php echo $this->__('If you have a MijnPakket account you can use the button below to log in to your account. When you log in to your MijnPakket account the webshop will read your preferred address and select it as your billing and shipping address. You can change this address in the forms below.'); ?></div>
47
  </div>
48
- <p><?php echo $this->__('Log in with your MijnPakket account to automatically use your preferred address.') ?></p>
49
  </div>
50
  <div id="mijnpakket_buttons">
51
  <div id="postnl_mijnpakket_login"></div>
52
  <div id="postnl_mijnpakket_login_btn" style="display:none;">
53
  <span>
54
- <img src="<?php echo $this->getButtonUrl(); ?>" title="PostNL - MijnPakket" alt="PostNL - MijnPakket"/>
55
  </span>
56
  </div>
57
  <div id="postnl_mijnpakket_login_btn_disabled" style="display:none;">
58
  <span>
59
- <img src="<?php echo $this->getDisabledButtonUrl(); ?>" title="PostNL - MijnPakket" alt="PostNL - MijnPakket"/>
60
  </span>
61
  </div>
62
  </div>
63
  <div id="login-buttons-container">
64
  <span class="please-wait" id="login-please-wait" style="display:none;">
65
- <img src="<?php echo $this->getSkinUrl('images/opc-ajax-loader.gif') ?>" alt="<?php echo $this->__('Loading MijnPakket data...') ?>" title="<?php echo $this->__('Loading MijnPakket data...') ?>" class="v-middle" /> <?php echo $this->__('Loading MijnPakket data...') ?>
66
  </span>
67
  </div>
68
  </div>
41
  <div id="postnl_mijnpakket" style="display:none;">
42
  <div class="clearfix">
43
  <div id="mijnpakket_text">
44
+ <h3><?php echo $this->__('Checkout using PostNL') ?></h3>
45
  <div id="postnl_mijnpakket_tooltip" class="postnl-tooltip">
46
+ <div><?php echo $this->__('If you have a PostNL account you can use the button below to log in to your account. When you log in to your PostNL account the webshop will read your preferred address and select it as your billing and shipping address. You can change this address in the forms below.'); ?></div>
47
  </div>
48
+ <p><?php echo $this->__('Log in with your PostNL account to automatically use your preferred address.') ?></p>
49
  </div>
50
  <div id="mijnpakket_buttons">
51
  <div id="postnl_mijnpakket_login"></div>
52
  <div id="postnl_mijnpakket_login_btn" style="display:none;">
53
  <span>
54
+ <img src="<?php echo $this->getButtonUrl(); ?>" title="PostNL" alt="PostNL"/>
55
  </span>
56
  </div>
57
  <div id="postnl_mijnpakket_login_btn_disabled" style="display:none;">
58
  <span>
59
+ <img src="<?php echo $this->getDisabledButtonUrl(); ?>" title="PostNL" alt="PostNL"/>
60
  </span>
61
  </div>
62
  </div>
63
  <div id="login-buttons-container">
64
  <span class="please-wait" id="login-please-wait" style="display:none;">
65
+ <img src="<?php echo $this->getSkinUrl('images/opc-ajax-loader.gif') ?>" alt="<?php echo $this->__('Loading PostNL data...') ?>" title="<?php echo $this->__('Loading PostNL data...') ?>" class="v-middle" /> <?php echo $this->__('Loading MijnPakket data...') ?>
66
  </span>
67
  </div>
68
  </div>
app/design/frontend/base/default/template/TIG/PostNL/mijnpakket/onestepcheckout/login_button.phtml CHANGED
@@ -40,27 +40,27 @@
40
  <?php $_savedData = $this->getSavedMijnpakketData(); ?>
41
  <div id="postnl_mijnpakket" style="display:none;">
42
  <div id="mijnpakket_text">
43
- <h4><?php echo $this->__('Checkout using MijnPakket') ?></h4>
44
  <div id="postnl_mijnpakket_tooltip" class="postnl-tooltip">
45
- <div><?php echo $this->__('If you have a MijnPakket account you can use the button below to log in to your account. When you log in to your MijnPakket account the webshop will read your preferred address and select it as your billing and shipping address. You can change this address in the forms below.'); ?></div>
46
  </div>
47
- <p><?php echo $this->__('Log in with your MijnPakket account to automatically use your preferred address.') ?></p>
48
  </div>
49
  <div id="mijnpakket_buttons">
50
  <div id="postnl_mijnpakket_login"></div>
51
  <div id="postnl_mijnpakket_login_btn" style="display:none;">
52
  <span>
53
- <img src="<?php echo $this->getButtonUrl(); ?>" title="PostNL - MijnPakket" alt="PostNL - MijnPakket"/>
54
  </span>
55
  </div>
56
  <div id="postnl_mijnpakket_login_btn_disabled" style="display:none;">
57
  <span>
58
- <img src="<?php echo $this->getDisabledButtonUrl(); ?>" title="PostNL - MijnPakket" alt="PostNL - MijnPakket"/>
59
  </span>
60
  </div>
61
  </div>
62
  <span class="please-wait" id="postnl_login_spinner" style="display:none;">
63
- <img src="<?php echo $this->getSkinUrl('images/opc-ajax-loader.gif') ?>" alt="<?php echo $this->__('Loading MijnPakket data...') ?>" title="<?php echo $this->__('Loading MijnPakket data...') ?>" class="v-middle" /> <?php echo $this->__('Loading MijnPakket data...') ?>
64
  </span>
65
  <hr class="mijnpakket_seperator"/>
66
  </div>
40
  <?php $_savedData = $this->getSavedMijnpakketData(); ?>
41
  <div id="postnl_mijnpakket" style="display:none;">
42
  <div id="mijnpakket_text">
43
+ <h4><?php echo $this->__('Checkout using PostNL') ?></h4>
44
  <div id="postnl_mijnpakket_tooltip" class="postnl-tooltip">
45
+ <div><?php echo $this->__('If you have a PostNL account you can use the button below to log in to your account. When you log in to your PostNL account the webshop will read your preferred address and select it as your billing and shipping address. You can change this address in the forms below.'); ?></div>
46
  </div>
47
+ <p><?php echo $this->__('Log in with your PostNL account to automatically use your preferred address.') ?></p>
48
  </div>
49
  <div id="mijnpakket_buttons">
50
  <div id="postnl_mijnpakket_login"></div>
51
  <div id="postnl_mijnpakket_login_btn" style="display:none;">
52
  <span>
53
+ <img src="<?php echo $this->getButtonUrl(); ?>" title="PostNL" alt="PostNL"/>
54
  </span>
55
  </div>
56
  <div id="postnl_mijnpakket_login_btn_disabled" style="display:none;">
57
  <span>
58
+ <img src="<?php echo $this->getDisabledButtonUrl(); ?>" title="PostNL" alt="PostNL"/>
59
  </span>
60
  </div>
61
  </div>
62
  <span class="please-wait" id="postnl_login_spinner" style="display:none;">
63
+ <img src="<?php echo $this->getSkinUrl('images/opc-ajax-loader.gif') ?>" alt="<?php echo $this->__('Loading PostNL data...') ?>" title="<?php echo $this->__('Loading PostNL data...') ?>" class="v-middle" /> <?php echo $this->__('Loading MijnPakket data...') ?>
64
  </span>
65
  <hr class="mijnpakket_seperator"/>
66
  </div>
app/design/frontend/base/default/template/TIG/PostNL/payment/checkout/form/cod.phtml CHANGED
@@ -68,7 +68,9 @@
68
  method = elements[i].value;
69
  }
70
  } else {
71
- elements[i].disabled = true;
 
 
72
  }
73
  elements[i].setAttribute('autocomplete','off');
74
  }
@@ -83,7 +85,7 @@
83
  var postnlCodPaymentForm = $('payment_form_<?php echo $_methodCode; ?>');
84
 
85
  if (postnlCodPaymentMethod && typeof deliveryOptions != 'undefined') {
86
- if (deliveryOptions.selectedType == 'PA') {
87
  postnlCodPaymentMethod.disabled = true;
88
  postnlCodPaymentMethod.up().hide();
89
 
68
  method = elements[i].value;
69
  }
70
  } else {
71
+ if ($$('body')[0].className.indexOf('gomage') == -1) {
72
+ elements[i].disabled = true;
73
+ }
74
  }
75
  elements[i].setAttribute('autocomplete','off');
76
  }
85
  var postnlCodPaymentForm = $('payment_form_<?php echo $_methodCode; ?>');
86
 
87
  if (postnlCodPaymentMethod && typeof deliveryOptions != 'undefined') {
88
+ if (deliveryOptions.selectedType == 'PA' || deliveryOptions.selectedType == 'Sunday') {
89
  postnlCodPaymentMethod.disabled = true;
90
  postnlCodPaymentMethod.up().hide();
91
 
app/locale/en_US/TIG_PostNL.csv CHANGED
@@ -439,12 +439,12 @@ TIG_PostNL::Configure the PostNL sending method under system > config > shipping
439
  "TIG_PostNL::PostNL needs to be able to retrieve a properly formatted address from the checkout process in order to guarantee the order is delivered at the correct address. To do so, you need to enable the postcode validation or configure the appropriate number of street lines in your checkout flow and make sure these have correct labels and validation settings. More info on how to do this, can be found <a href='%s' target='_blank'>here</a>.","PostNL needs to be able to retrieve a properly formatted address from the checkout process in order to guarantee the order is delivered at the correct address. To do so, you need to enable the postcode validation or configure the appropriate number of street lines in your checkout flow and make sure these have correct labels and validation settings. More info on how to do this, can be found <a href='%s' target='_blank'>here</a>."
440
  "TIG_PostNL::We highly recommend you place several 'test' shipments, before you use the extension for real shipments.","We highly recommend you place several 'test' shipments, before you use the extension for real shipments."
441
  TIG_PostNL::We cannot guarantee compatibility with non supported extensions and versions of Magento.,We cannot guarantee compatibility with non supported extensions and versions of Magento.
442
- "TIG_PostNL::The extension is developed by Total Internet Group, commissioned by PostNL.","The extension is developed by Total Internet Group, commissioned by PostNL."
443
  TIG_PostNL::PostNL account information and PostNL services,PostNL account information and PostNL services
444
  "TIG_PostNL::For questions related to your PostNL account and PostNL delivery options, please contact PostNL.","For questions related to your PostNL account and PostNL delivery options, please contact PostNL."
445
  TIG_PostNL::Phone:,Phone:
446
  TIG_PostNL::Extension support and configuration questions,Extension support and configuration questions
447
- "TIG_PostNL::For configuration problems, extension conflicts and bugs, contact Total Internet Group.","For configuration problems, extension conflicts and bugs, contact Total Internet Group."
448
  TIG_PostNL::Online knowledgebase:,Online knowledgebase:
449
  TIG_PostNL::Website:,Website:
450
  TIG_PostNL::Request help directly:,Request help directly:
@@ -485,7 +485,7 @@ TIG_PostNL::Unable to read directory: %s,Unable to read directory: %s
485
  TIG_PostNL::Invalid UpdateOrder response: %s,Invalid UpdateOrder response: %s
486
  "TIG_PostNL::Here you can configure your PostNL account.</p><p>In order to use this extension you need to <a href='http://www.postnl.nl/zakelijk/e-commerce/flexibele-bezorgopties' target='_blank' title='Register'>register</a> yourself with PostNL. You will then receive all necessary information in order to configure the extension. If you cannot find the email containing this information, please contact your PostNL account manager.</p><p>If you want to test the extension, but don't have any test mode credentials you can use the account credentials found <a href=""http://kb.tig.nl/topic/55404467"" title=""Test mode account credentials"" target=""_blank"">here</a>.","Here you can configure your PostNL account.</p><p>In order to use this extension you need to <a href='http://www.postnl.nl/zakelijk/e-commerce/flexibele-bezorgopties' target='_blank' title='Register'>register</a> yourself with PostNL. You will then receive all necessary information in order to configure the extension. If you cannot find the email containing this information, please contact your PostNL account manager.</p><p>If you want to test the extension, but don't have any test mode credentials you can use the account credentials found <a href=""http://kb.tig.nl/topic/55404467"" title=""Test mode account credentials"" target=""_blank"">here</a>."
487
  "TIG_PostNL::You will find these settings in your <a href='https://checkout.postnl.nl/' target='_blank' title='PostNL'>PostNL Checkout account</a>.</p><p><a href='https://checkout.postnl.nl/' target='_blank' title='PostNL Checkout'>PostNL Checkout</a> is a free service, however you do need to <a href='https://checkout.postnl.nl/Consumer/Register?utm_source=magento&utm_medium=referral&utm_campaign=2014' target='_blank' title='Register'>register</a> yourself with PostNL. You will then receive all necessary information in order to configure this feature.","You will find these settings in your <a href='https://checkout.postnl.nl/' target='_blank' title='PostNL'>PostNL Checkout account</a>.</p><p><a href='https://checkout.postnl.nl/' target='_blank' title='PostNL Checkout'>PostNL Checkout</a> is a free service, however you do need to <a href='https://checkout.postnl.nl/Consumer/Register?utm_source=magento&utm_medium=referral&utm_campaign=2014' target='_blank' title='Register'>register</a> yourself with PostNL. You will then receive all necessary information in order to configure this feature."
488
- TIG_PostNL::ONLY CHANGE THESE SETTINGS WITH DIRECT INSTRUCTION FROM POSTNL OR TOTAL INTERNET GROUP,ONLY CHANGE THESE SETTINGS WITH DIRECT INSTRUCTION FROM POSTNL OR TOTAL INTERNET GROUP
489
  TIG_PostNL::Offer customers the possibility to subscribe to your store's newsletter. Please note: This feature might conflict with other extensions that also use Magento's newsletter functionality.,Offer customers the possibility to subscribe to your store's newsletter. Please note: This feature might conflict with other extensions that also use Magento's newsletter functionality.
490
  TIG_PostNL::Doorcodes are often used in foreign addresses such as those used in France and Singapore.,Doorcodes are often used in foreign addresses such as those used in France and Singapore.
491
  "TIG_PostNL::PostNL Checkout is a method alongside your own order process that allows your customers to choose where, when and how to receive their order. Please note: Use the Delivery Options to configure the PostNL settings in your own checkout. Use the settings below to configure the settings for the PostNL Checkout.<br/><br/>Does the PostNL Checkout button stay gray? Click <a href=""http://kb.tig.nl/topic/39102986"" target=""_blank"">here</a> for possible causes and solutions.","PostNL Checkout is a method alongside your own order process that allows your customers to choose where, when and how to receive their order. Please note: Use the Delivery Options to configure the PostNL settings in your own checkout. Use the settings below to configure the settings for the PostNL Checkout.<br/><br/>Does the PostNL Checkout button stay gray? Click <a href=""http://kb.tig.nl/topic/39102986"" target=""_blank"">here</a> for possible causes and solutions."
@@ -606,8 +606,8 @@ TIG_PostNL::Evening pickup available,Evening pickup available
606
  TIG_PostNL::Or pick your own delivery moment,Or pick your own delivery moment
607
  TIG_PostNL::Connection timeout duration,Connection timeout duration
608
  TIG_PostNL::After this number of seconds a customer will be prompted to fill in his address manually. Leave this field empty to disable the feature. Please note: if a customer needs to wait too long he might leave the order process.,After this number of seconds a customer will be prompted to fill in his address manually. Leave this field empty to disable the feature. Please note: if a customer needs to wait too long he might leave the order process.
609
- TIG_PostNL::Show PostNL Checkout exclusively to MijnPakket users,Show PostNL Checkout exclusively to MijnPakket users
610
- TIG_PostNL::Activate the PostNL Checkout only for customers with a MijnPakket account. Please note: The Delivery Options must be activated.,Activate the PostNL Checkout only for customers with a MijnPakket account. Please note: The Delivery Options must be activated.
611
  TIG_PostNL::Delivery Options,Delivery Options
612
  "TIG_PostNL::Your customers choose when, where and how they would like to receive their orders with PostNL's delivery options. Let your customers pick a day and the extension will show the estimated time of delivery. On Tuesdays and Wednesdays PostNL also delivers in the evening. Maybe your customers prefer to pick up their orders from one of the 2000 Post offices? No problem, a growing number of locations even have the orders ready for pickup early in the morning.","Your customers choose when, where and how they would like to receive their orders with PostNL's delivery options. Let your customers pick a day and the extension will show the estimated time of delivery. On Tuesdays and Wednesdays PostNL also delivers in the evening. Maybe your customers prefer to pick up their orders from one of the 2000 Post offices? No problem, a growing number of locations even have the orders ready for pickup early in the morning."
613
  TIG_PostNL::Enable PostNL delivery options,Enable PostNL delivery options
@@ -693,7 +693,7 @@ TIG_PostNL::Invalid arguments supplied. The 'number' parameter is required.,Inva
693
  TIG_PostNL::Invalid mobile phone number supplied: %s.,Invalid mobile phone number supplied: %s.
694
  TIG_PostNL::The quote's total weight is below the miniumum required to use PostNL delivery options.,The quote's total weight is below the miniumum required to use PostNL delivery options.
695
  TIG_PostNL::Invalid arguments supplied. The 'costs' parameter requires an amount incl. and excl. VAT.,Invalid arguments supplied. The 'costs' parameter requires an amount incl. and excl. VAT.
696
- TIG_PostNL::Invalid fee amount entered: %s incl. VAT. Please enter a value between 0.00 and 2.00 EUR incl. VAT.,Invalid fee amount entered: %s incl. VAT. Please enter a value between 0.00 and 2.00 EUR incl. VAT.
697
  TIG_PostNL::The PostNL Extension is currently configured in test mode.,The PostNL Extension is currently configured in test mode.
698
  "TIG_PostNL::You can enter your live username and password in the 'Account Settings' tab. Don't forget to also update your customer number, customer code and BLS (location) code. You can then set the extension to live mode.","You can enter your live username and password in the 'Account Settings' tab. Don't forget to also update your customer number, customer code and BLS (location) code. You can then set the extension to live mode."
699
  "TIG_PostNL::You may test the extension, however you cannot send any shipments in this mode. Any shipments that you confirm or whose labels you print while in this mode will be registered as test shipments and may not be physically shipped. If you attempt to do so, you may incur fines from PostNL. To use the extension in live mode you first need to enter your PostNL account credentials and set the extension to live mode. You can then send shipments using the PostNL extension.","You may test the extension, however you cannot send any shipments in this mode. Any shipments that you confirm or whose labels you print while in this mode will be registered as test shipments and may not be physically shipped. If you attempt to do so, you may incur fines from PostNL. To use the extension in live mode you first need to enter your PostNL account credentials and set the extension to live mode. You can then send shipments using the PostNL extension."
@@ -757,23 +757,23 @@ TIG_PostNL::Delivery options theme,Delivery options theme
757
  "TIG_PostNL::You can view an example of the different themes <a href=""http://kb.tig.nl/topic/58787233"" target=""_blank"" title=""PostNL delivery option themes"">here</a>.","You can view an example of the different themes <a href=""http://kb.tig.nl/topic/58787233"" target=""_blank"" title=""PostNL delivery option themes"">here</a>."
758
  TIG_PostNL::Default PostNL theme,Default PostNL theme
759
  TIG_PostNL::Neutral theme,Neutral theme
760
- TIG_PostNL::MijnPakket,MijnPakket
761
- TIG_PostNL::Show MijnPakket notification on the order success page,Show MijnPakket notification on the order success page
762
- TIG_PostNL::This will cause a notification to be shown to customers after they have placed their order. The message may either inform the customer about MijnPakket accounts or the MijnPakket app.,This will cause a notification to be shown to customers after they have placed their order. The message may either inform the customer about MijnPakket accounts or the MijnPakket app.
763
- TIG_PostNL::Show create MijnPakket account link,Show create MijnPakket account link
764
- "TIG_PostNL::If enabled, customers who do not yet have a MijnPakket account will be shown a link through which they can create a MijnPakket account without having to fully fill in the registration form.","If enabled, customers who do not yet have a MijnPakket account will be shown a link through which they can create a MijnPakket account without having to fully fill in the registration form."
765
- TIG_PostNL::Show MijnPakket app link,Show MijnPakket app link
766
- "TIG_PostNL::If enabled, customers who already have a MijnPakket account will be informed about the PostNL MijnPakket app with which they can easily track their order.","If enabled, customers who already have a MijnPakket account will be informed about the PostNL MijnPakket app with which they can easily track their order."
767
- TIG_PostNL::Loading MijnPakket data...,Loading MijnPakket data...
768
  TIG_PostNL::Your preferred address has been loaded from your MijnPakket account and set as your billing and shipping address. You may now choose a shipping method and complete your order.,Your preferred address has been loaded from your MijnPakket account and set as your billing and shipping address. You may now choose a shipping method and complete your order.
769
- TIG_PostNL::Checkout using MijnPakket,Checkout using MijnPakket
770
- TIG_PostNL::Log in with your MijnPakket account to automatically use your preferred address.,Log in with your MijnPakket account to automatically use your preferred address.
771
- TIG_PostNL::If you have a MijnPakket account you can use the button below to log in to your account. When you log in to your MijnPakket account the webshop will read your preferred address and select it as your billing and shipping address. You can change this address in the forms below.,If you have a MijnPakket account you can use the button below to log in to your account. When you log in to your MijnPakket account the webshop will read your preferred address and select it as your billing and shipping address. You can change this address in the forms below.
772
- TIG_PostNL::MijnPakket login will only be available to customers who have a MijnPakket account. This will be automatically detected.,MijnPakket login will only be available to customers who have a MijnPakket account. This will be automatically detected.
773
  TIG_PostNL::Create a new MijnPakket account.,Create a new MijnPakket account.
774
  TIG_PostNL::Download the PostNL MijnPakket app,Download the PostNL MijnPakket app
775
  TIG_PostNL::Unfortunately MijnPakket login is currently not available. Please use a different checkout method.,Unfortunately MijnPakket login is currently not available. Please use a different checkout method.
776
- TIG_PostNL::Enable MijnPakket login,Enable MijnPakket login
777
  "TIG_PostNL::You can use this button to validate your account settings without saving the configuration. This will send a 'test' request to PostNL. If the above fields are not entered correctly, this will result in an error. Please note that the PostNL extension must be active for the validation to succeed. <br />Please note that the webshop ID and public webshop ID fields will not be validated. Only your CIF credentials will be checked.","You can use this button to validate your account settings without saving the configuration. This will send a 'test' request to PostNL. If the above fields are not entered correctly, this will result in an error. Please note that the PostNL extension must be active for the validation to succeed. <br />Please note that the webshop ID and public webshop ID fields will not be validated. Only your CIF credentials will be checked."
778
  TIG_PostNL::Maximum number of delivery days,Maximum number of delivery days
779
  TIG_PostNL::Submit how many days in the future after the first delivery moment your customers can choose to receive their orders.,Submit how many days in the future after the first delivery moment your customers can choose to receive their orders.
@@ -788,11 +788,11 @@ TIG_PostNL::Idev's OneStepCheckout version,Idev's OneStepCheckout version
788
  TIG_PostNL::choose a different shipping address,choose a different shipping address
789
  TIG_PostNL::Magento & 3rd party version compatibility,Magento & 3rd party version compatibility
790
  TIG_PostNL::PostNL - Confirm Shipment,PostNL - Confirm Shipment
791
- TIG_PostNL::Always stay informed? Click %shere%s to create a MijnPakket account based on your order details.,Always stay informed? Click %shere%s to create a MijnPakket account based on your order details.
792
  TIG_PostNL::Track your shipment's current status and whereabouts,Track your shipment's current status and whereabouts
793
  TIG_PostNL::Change the delivery time and place if you are not at home,Change the delivery time and place if you are not at home
794
  TIG_PostNL::All your shipments available in a single overview,All your shipments available in a single overview
795
- TIG_PostNL::Always stay informed? Download the MijnPakket app.,Always stay informed? Download the MijnPakket app.
796
  TIG_PostNL::The customer was redirected to the cart because the quote was empty.,The customer was redirected to the cart because the quote was empty.
797
  TIG_PostNL::The customer was redirected to the cart because the quote had the following error(s): %s.,The customer was redirected to the cart because the quote had the following error(s): %s.
798
  TIG_PostNL::The customer was redirected to the cart because the quote is multishipping.,The customer was redirected to the cart because the quote is multishipping.
@@ -814,7 +814,7 @@ TIG_PostNL::Unable to create an invoice for this shipment due to the order missi
814
  TIG_PostNL::Unable to create an invoice for this shipment because the order cannot be invoiced.,Unable to create an invoice for this shipment because the order cannot be invoiced.
815
  TIG_PostNL::An error occurred while creating an invoice for this shipment.,An error occurred while creating an invoice for this shipment.
816
  TIG_PostNL::PostNL COD,PostNL COD
817
- "TIG_PostNL::Activate an extra payment method with COD shipments.<br/>Please note: In order to offer COD shipments to your customers you will need to complete the fields below and activate an extra payment method <a href=""%s"" target=""_blank"">here</a>.","Activate an extra payment method with COD shipments.<br/>Please note: In order to offer COD shipments to your customers you will need to complete the fields below and activate an extra payment method <a href=""%s"" target=""_blank"">here</a>."
818
  TIG_PostNL::Bankaccount name,Bankaccount name
819
  TIG_PostNL::Bankaccount IBAN,Bankaccount IBAN
820
  TIG_PostNL::Bankaccount BIC,Bankaccount BIC
@@ -1283,4 +1283,36 @@ TIG_PostNL::GoMage's Checkout version,GoMage's Checkout version
1283
  TIG_PostNL::Print the shipping label on the same page as the packing slip,Print the shipping label on the same page as the packing slip
1284
  TIG_PostNL::Print the shipping label on a separate page,Print the shipping label on a separate page
1285
  TIG_PostNL::Don't print the shipping label,Don't print the shipping label
1286
- TIG_PostNL::Loading available delivery options for your shipping address...,Loading available delivery options for your shipping address...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
439
  "TIG_PostNL::PostNL needs to be able to retrieve a properly formatted address from the checkout process in order to guarantee the order is delivered at the correct address. To do so, you need to enable the postcode validation or configure the appropriate number of street lines in your checkout flow and make sure these have correct labels and validation settings. More info on how to do this, can be found <a href='%s' target='_blank'>here</a>.","PostNL needs to be able to retrieve a properly formatted address from the checkout process in order to guarantee the order is delivered at the correct address. To do so, you need to enable the postcode validation or configure the appropriate number of street lines in your checkout flow and make sure these have correct labels and validation settings. More info on how to do this, can be found <a href='%s' target='_blank'>here</a>."
440
  "TIG_PostNL::We highly recommend you place several 'test' shipments, before you use the extension for real shipments.","We highly recommend you place several 'test' shipments, before you use the extension for real shipments."
441
  TIG_PostNL::We cannot guarantee compatibility with non supported extensions and versions of Magento.,We cannot guarantee compatibility with non supported extensions and versions of Magento.
442
+ "TIG_PostNL::The extension is developed by TIG, commissioned by PostNL.","The extension is developed by TIG, commissioned by PostNL."
443
  TIG_PostNL::PostNL account information and PostNL services,PostNL account information and PostNL services
444
  "TIG_PostNL::For questions related to your PostNL account and PostNL delivery options, please contact PostNL.","For questions related to your PostNL account and PostNL delivery options, please contact PostNL."
445
  TIG_PostNL::Phone:,Phone:
446
  TIG_PostNL::Extension support and configuration questions,Extension support and configuration questions
447
+ "TIG_PostNL::For configuration problems, extension conflicts and bugs, contact TIG.","For configuration problems, extension conflicts and bugs, contact TIG."
448
  TIG_PostNL::Online knowledgebase:,Online knowledgebase:
449
  TIG_PostNL::Website:,Website:
450
  TIG_PostNL::Request help directly:,Request help directly:
485
  TIG_PostNL::Invalid UpdateOrder response: %s,Invalid UpdateOrder response: %s
486
  "TIG_PostNL::Here you can configure your PostNL account.</p><p>In order to use this extension you need to <a href='http://www.postnl.nl/zakelijk/e-commerce/flexibele-bezorgopties' target='_blank' title='Register'>register</a> yourself with PostNL. You will then receive all necessary information in order to configure the extension. If you cannot find the email containing this information, please contact your PostNL account manager.</p><p>If you want to test the extension, but don't have any test mode credentials you can use the account credentials found <a href=""http://kb.tig.nl/topic/55404467"" title=""Test mode account credentials"" target=""_blank"">here</a>.","Here you can configure your PostNL account.</p><p>In order to use this extension you need to <a href='http://www.postnl.nl/zakelijk/e-commerce/flexibele-bezorgopties' target='_blank' title='Register'>register</a> yourself with PostNL. You will then receive all necessary information in order to configure the extension. If you cannot find the email containing this information, please contact your PostNL account manager.</p><p>If you want to test the extension, but don't have any test mode credentials you can use the account credentials found <a href=""http://kb.tig.nl/topic/55404467"" title=""Test mode account credentials"" target=""_blank"">here</a>."
487
  "TIG_PostNL::You will find these settings in your <a href='https://checkout.postnl.nl/' target='_blank' title='PostNL'>PostNL Checkout account</a>.</p><p><a href='https://checkout.postnl.nl/' target='_blank' title='PostNL Checkout'>PostNL Checkout</a> is a free service, however you do need to <a href='https://checkout.postnl.nl/Consumer/Register?utm_source=magento&utm_medium=referral&utm_campaign=2014' target='_blank' title='Register'>register</a> yourself with PostNL. You will then receive all necessary information in order to configure this feature.","You will find these settings in your <a href='https://checkout.postnl.nl/' target='_blank' title='PostNL'>PostNL Checkout account</a>.</p><p><a href='https://checkout.postnl.nl/' target='_blank' title='PostNL Checkout'>PostNL Checkout</a> is a free service, however you do need to <a href='https://checkout.postnl.nl/Consumer/Register?utm_source=magento&utm_medium=referral&utm_campaign=2014' target='_blank' title='Register'>register</a> yourself with PostNL. You will then receive all necessary information in order to configure this feature."
488
+ TIG_PostNL::ONLY CHANGE THESE SETTINGS WITH DIRECT INSTRUCTION FROM POSTNL OR TIG,ONLY CHANGE THESE SETTINGS WITH DIRECT INSTRUCTION FROM POSTNL OR TIG
489
  TIG_PostNL::Offer customers the possibility to subscribe to your store's newsletter. Please note: This feature might conflict with other extensions that also use Magento's newsletter functionality.,Offer customers the possibility to subscribe to your store's newsletter. Please note: This feature might conflict with other extensions that also use Magento's newsletter functionality.
490
  TIG_PostNL::Doorcodes are often used in foreign addresses such as those used in France and Singapore.,Doorcodes are often used in foreign addresses such as those used in France and Singapore.
491
  "TIG_PostNL::PostNL Checkout is a method alongside your own order process that allows your customers to choose where, when and how to receive their order. Please note: Use the Delivery Options to configure the PostNL settings in your own checkout. Use the settings below to configure the settings for the PostNL Checkout.<br/><br/>Does the PostNL Checkout button stay gray? Click <a href=""http://kb.tig.nl/topic/39102986"" target=""_blank"">here</a> for possible causes and solutions.","PostNL Checkout is a method alongside your own order process that allows your customers to choose where, when and how to receive their order. Please note: Use the Delivery Options to configure the PostNL settings in your own checkout. Use the settings below to configure the settings for the PostNL Checkout.<br/><br/>Does the PostNL Checkout button stay gray? Click <a href=""http://kb.tig.nl/topic/39102986"" target=""_blank"">here</a> for possible causes and solutions."
606
  TIG_PostNL::Or pick your own delivery moment,Or pick your own delivery moment
607
  TIG_PostNL::Connection timeout duration,Connection timeout duration
608
  TIG_PostNL::After this number of seconds a customer will be prompted to fill in his address manually. Leave this field empty to disable the feature. Please note: if a customer needs to wait too long he might leave the order process.,After this number of seconds a customer will be prompted to fill in his address manually. Leave this field empty to disable the feature. Please note: if a customer needs to wait too long he might leave the order process.
609
+ TIG_PostNL::Show PostNL Checkout exclusively to users with a PostNL account,Show PostNL Checkout exclusively to users with a PostNL account
610
+ TIG_PostNL::Activate the PostNL Checkout only for customers with a PostNL account. Please note: The Delivery Options must be activated.,Activate the PostNL Checkout only for customers with a PostNL account. Please note: The Delivery Options must be activated.
611
  TIG_PostNL::Delivery Options,Delivery Options
612
  "TIG_PostNL::Your customers choose when, where and how they would like to receive their orders with PostNL's delivery options. Let your customers pick a day and the extension will show the estimated time of delivery. On Tuesdays and Wednesdays PostNL also delivers in the evening. Maybe your customers prefer to pick up their orders from one of the 2000 Post offices? No problem, a growing number of locations even have the orders ready for pickup early in the morning.","Your customers choose when, where and how they would like to receive their orders with PostNL's delivery options. Let your customers pick a day and the extension will show the estimated time of delivery. On Tuesdays and Wednesdays PostNL also delivers in the evening. Maybe your customers prefer to pick up their orders from one of the 2000 Post offices? No problem, a growing number of locations even have the orders ready for pickup early in the morning."
613
  TIG_PostNL::Enable PostNL delivery options,Enable PostNL delivery options
693
  TIG_PostNL::Invalid mobile phone number supplied: %s.,Invalid mobile phone number supplied: %s.
694
  TIG_PostNL::The quote's total weight is below the miniumum required to use PostNL delivery options.,The quote's total weight is below the miniumum required to use PostNL delivery options.
695
  TIG_PostNL::Invalid arguments supplied. The 'costs' parameter requires an amount incl. and excl. VAT.,Invalid arguments supplied. The 'costs' parameter requires an amount incl. and excl. VAT.
696
+ TIG_PostNL::Invalid fee amount entered: %s incl. VAT. Please enter a value between %.2f and %.2f %s incl. VAT.,Invalid fee amount entered: %s incl. VAT. Please enter a value between %.2f and %.2f %s incl. VAT.
697
  TIG_PostNL::The PostNL Extension is currently configured in test mode.,The PostNL Extension is currently configured in test mode.
698
  "TIG_PostNL::You can enter your live username and password in the 'Account Settings' tab. Don't forget to also update your customer number, customer code and BLS (location) code. You can then set the extension to live mode.","You can enter your live username and password in the 'Account Settings' tab. Don't forget to also update your customer number, customer code and BLS (location) code. You can then set the extension to live mode."
699
  "TIG_PostNL::You may test the extension, however you cannot send any shipments in this mode. Any shipments that you confirm or whose labels you print while in this mode will be registered as test shipments and may not be physically shipped. If you attempt to do so, you may incur fines from PostNL. To use the extension in live mode you first need to enter your PostNL account credentials and set the extension to live mode. You can then send shipments using the PostNL extension.","You may test the extension, however you cannot send any shipments in this mode. Any shipments that you confirm or whose labels you print while in this mode will be registered as test shipments and may not be physically shipped. If you attempt to do so, you may incur fines from PostNL. To use the extension in live mode you first need to enter your PostNL account credentials and set the extension to live mode. You can then send shipments using the PostNL extension."
757
  "TIG_PostNL::You can view an example of the different themes <a href=""http://kb.tig.nl/topic/58787233"" target=""_blank"" title=""PostNL delivery option themes"">here</a>.","You can view an example of the different themes <a href=""http://kb.tig.nl/topic/58787233"" target=""_blank"" title=""PostNL delivery option themes"">here</a>."
758
  TIG_PostNL::Default PostNL theme,Default PostNL theme
759
  TIG_PostNL::Neutral theme,Neutral theme
760
+ TIG_PostNL::PostNL account,PostNL account
761
+ TIG_PostNL::Show PostNL account notification on the order success page,Show PostNL account notification on the order success page
762
+ TIG_PostNL::This will cause a notification to be shown to customers after they have placed their order. The message may either inform the customer about PostNL accounts or the PostNL app.,This will cause a notification to be shown to customers after they have placed their order. The message may either inform the customer about PostNL accounts or the PostNL app.
763
+ TIG_PostNL::Show create PostNL account link,Show create PostNL account link
764
+ "TIG_PostNL::If enabled, customers who do not yet have a PostNL account will be shown a link through which they can create a PostNL account without having to fully fill in the registration form.","If enabled, customers who do not yet have a PostNL account will be shown a link through which they can create a PostNL account without having to fully fill in the registration form."
765
+ TIG_PostNL::Show PostNL app link,Show PostNL app link
766
+ "TIG_PostNL::If enabled, customers who already have a PostNL account will be informed about the PostNL app with which they can easily track their order.","If enabled, customers who already have a PostNL account will be informed about the PostNL app with which they can easily track their order."
767
+ TIG_PostNL::Loading PostNL data...,Loading PostNL data...
768
  TIG_PostNL::Your preferred address has been loaded from your MijnPakket account and set as your billing and shipping address. You may now choose a shipping method and complete your order.,Your preferred address has been loaded from your MijnPakket account and set as your billing and shipping address. You may now choose a shipping method and complete your order.
769
+ TIG_PostNL::Checkout using PostNL,Checkout using PostNL
770
+ TIG_PostNL::Log in with your PostNL account to automatically use your preferred address.,Log in with your PostNL account to automatically use your preferred address.
771
+ TIG_PostNL::If you have a PostNL account you can use the button below to log in to your account. When you log in to your PostNL account the webshop will read your preferred address and select it as your billing and shipping address. You can change this address in the forms below.,If you have a PostNL account you can use the button below to log in to your account. When you log in to your PostNL account the webshop will read your preferred address and select it as your billing and shipping address. You can change this address in the forms below.
772
+ TIG_PostNL::PostNL account login will only be available to customers who have a PostNL account. This will be automatically detected.,PostNL account login will only be available to customers who have a PostNL account. This will be automatically detected.
773
  TIG_PostNL::Create a new MijnPakket account.,Create a new MijnPakket account.
774
  TIG_PostNL::Download the PostNL MijnPakket app,Download the PostNL MijnPakket app
775
  TIG_PostNL::Unfortunately MijnPakket login is currently not available. Please use a different checkout method.,Unfortunately MijnPakket login is currently not available. Please use a different checkout method.
776
+ TIG_PostNL::Enable PostNL account login,Enable PostNL account login
777
  "TIG_PostNL::You can use this button to validate your account settings without saving the configuration. This will send a 'test' request to PostNL. If the above fields are not entered correctly, this will result in an error. Please note that the PostNL extension must be active for the validation to succeed. <br />Please note that the webshop ID and public webshop ID fields will not be validated. Only your CIF credentials will be checked.","You can use this button to validate your account settings without saving the configuration. This will send a 'test' request to PostNL. If the above fields are not entered correctly, this will result in an error. Please note that the PostNL extension must be active for the validation to succeed. <br />Please note that the webshop ID and public webshop ID fields will not be validated. Only your CIF credentials will be checked."
778
  TIG_PostNL::Maximum number of delivery days,Maximum number of delivery days
779
  TIG_PostNL::Submit how many days in the future after the first delivery moment your customers can choose to receive their orders.,Submit how many days in the future after the first delivery moment your customers can choose to receive their orders.
788
  TIG_PostNL::choose a different shipping address,choose a different shipping address
789
  TIG_PostNL::Magento & 3rd party version compatibility,Magento & 3rd party version compatibility
790
  TIG_PostNL::PostNL - Confirm Shipment,PostNL - Confirm Shipment
791
+ TIG_PostNL::Always stay informed? Click %shere%s to create a PostNL account based on your order details.,Always stay informed? Click %shere%s to create a PostNL account based on your order details.
792
  TIG_PostNL::Track your shipment's current status and whereabouts,Track your shipment's current status and whereabouts
793
  TIG_PostNL::Change the delivery time and place if you are not at home,Change the delivery time and place if you are not at home
794
  TIG_PostNL::All your shipments available in a single overview,All your shipments available in a single overview
795
+ TIG_PostNL::Always stay informed? Download the PostNL app.,Always stay informed? Download the PostNL app.
796
  TIG_PostNL::The customer was redirected to the cart because the quote was empty.,The customer was redirected to the cart because the quote was empty.
797
  TIG_PostNL::The customer was redirected to the cart because the quote had the following error(s): %s.,The customer was redirected to the cart because the quote had the following error(s): %s.
798
  TIG_PostNL::The customer was redirected to the cart because the quote is multishipping.,The customer was redirected to the cart because the quote is multishipping.
814
  TIG_PostNL::Unable to create an invoice for this shipment because the order cannot be invoiced.,Unable to create an invoice for this shipment because the order cannot be invoiced.
815
  TIG_PostNL::An error occurred while creating an invoice for this shipment.,An error occurred while creating an invoice for this shipment.
816
  TIG_PostNL::PostNL COD,PostNL COD
817
+ "TIG_PostNL::Activate an extra payment method with COD shipments.<br/>Please note: In order to offer COD shipments to your customers you will need to complete the fields below and activate an extra payment method <a href=""%s"" target=""_blank"">here</a>.<br />PostNL COD is only available for Dutch orders.","Activate an extra payment method with COD shipments.<br/>Please note: In order to offer COD shipments to your customers you will need to complete the fields below and activate an extra payment method <a href=""%s"" target=""_blank"">here</a>.<br />PostNL COD is only available for Dutch orders."
818
  TIG_PostNL::Bankaccount name,Bankaccount name
819
  TIG_PostNL::Bankaccount IBAN,Bankaccount IBAN
820
  TIG_PostNL::Bankaccount BIC,Bankaccount BIC
1283
  TIG_PostNL::Print the shipping label on the same page as the packing slip,Print the shipping label on the same page as the packing slip
1284
  TIG_PostNL::Print the shipping label on a separate page,Print the shipping label on a separate page
1285
  TIG_PostNL::Don't print the shipping label,Don't print the shipping label
1286
+ TIG_PostNL::Loading available delivery options for your shipping address...,Loading available delivery options for your shipping address...
1287
+ TIG_PostNL::Picqer's PostNL add-on version,Picqer's PostNL add-on version
1288
+ TIG_PostNL::Default sunday delivery shipping option,Default sunday delivery shipping option
1289
+ TIG_PostNL::Enable sunday delivery,Enable sunday delivery
1290
+ TIG_PostNL::This setting may be overwritten by manualy creating shipments.,This setting may be overwritten by manualy creating shipments.
1291
+ TIG_PostNL::Activate sunday delivery for your customers.,Activate sunday delivery for your customers.
1292
+ TIG_PostNL::Sunday Delivery,Sunday Delivery
1293
+ TIG_PostNL::Sunday,Sunday
1294
+ TIG_PostNL::The sender country setting is only available on the 'global' scope.,The sender country setting is only available on the 'global' scope.
1295
+ TIG_PostNL::Please note: the country you select here will be used to determine whether certain shipping options (such as Belgium domestic) are available to you.,Please note: the country you select here will be used to determine whether certain shipping options (such as Belgium domestic) are available to you.
1296
+ TIG_PostNL::The Netherlands,The Netherlands
1297
+ TIG_PostNL::Belgium,Belgium
1298
+ TIG_PostNL::Belgium Deliver to stated address only + Return when not home,Belgium Deliver to stated address only + Return when not home
1299
+ TIG_PostNL::Belgium Return when not home,Belgium Return when not home
1300
+ TIG_PostNL::Belgium Signature on delivery + Deliver to stated address only + Return when not home,Belgium Signature on delivery + Deliver to stated address only + Return when not home
1301
+ TIG_PostNL::Belgium Signature on delivery + Return when not home,Belgium Signature on delivery + Return when not home
1302
+ TIG_PostNL::Belgium COD + Return when not home,Belgium COD + Return when not home
1303
+ TIG_PostNL::Belgium Extra cover (EUR 500)+ Return when not home + Deliver to stated address only,Belgium Extra cover (EUR 500)+ Return when not home + Deliver to stated address only
1304
+ TIG_PostNL::Belgium COD + Extra cover (EUR 500) + Return when not home,Belgium COD + Extra cover (EUR 500) + Return when not home
1305
+ TIG_PostNL::Default Belgium shipping option,Default Belgium shipping option
1306
+ TIG_PostNL::This setting may be overwritten by manualy creating shipments. This option is only applicable to Belgian domestic shipments.,This setting may be overwritten by manualy creating shipments. This option is only applicable to Belgian domestic shipments.
1307
+ TIG_PostNL::Default Belgium COD shipping option,Default Belgium COD shipping option
1308
+ TIG_PostNL::PostNL delivery options are only available when shipping from the Netherlands.,PostNL delivery options are only available when shipping from the Netherlands.
1309
+ TIG_PostNL::Delivery options are only available when shipping from the Netherlands.,Delivery options are only available when shipping from the Netherlands.
1310
+ TIG_PostNL::Delivery options based on contractual agreements,Delivery options based on contractual agreements
1311
+ TIG_PostNL::Please note: these delivery options require specific contractual agreements with PostNL. Please contact your PostNL account manager if you wish to use monday and/or sunday delivery.,Please note: these delivery options require specific contractual agreements with PostNL. Please contact your PostNL account manager if you wish to use monday and/or sunday delivery.
1312
+ TIG_PostNL::Enable monday delivery,Enable monday delivery
1313
+ TIG_PostNL::Activate monday delivery (also known as sunday sorting) for your customers.,Activate monday delivery (also known as sunday sorting) for your customers.
1314
+ "TIG_PostNL::You can read more about monday delivery <a href=""http://www.postnl.nl/zakelijke-oplossingen/webwinkels/bezorgopties-voor-mijn-klanten/maandagbezorging/"" target=""_blank"" title=""monday delivery"">here</a>.","You can read more about monday delivery <a href=""http://www.postnl.nl/zakelijke-oplossingen/webwinkels/bezorgopties-voor-mijn-klanten/maandagbezorging/"" target=""_blank"" title=""monday delivery"">here</a>."
1315
+ "TIG_PostNL::You can read more about sunday delivery <a href=""http://www.postnl.nl/zakelijke-oplossingen/webwinkels/bezorgopties-voor-mijn-klanten/zondagbezorging/"" target=""_blank"" title=""sunday delivery"">here</a>.","You can read more about sunday delivery <a href=""http://www.postnl.nl/zakelijke-oplossingen/webwinkels/bezorgopties-voor-mijn-klanten/zondagbezorging/"" target=""_blank"" title=""sunday delivery"">here</a>."
1316
+ TIG_PostNL::sunday,sunday
1317
+ TIG_PostNL::Sunday delivery fee, Sunday delivery fee
1318
+ "TIG_PostNL::Additional costs for sunday delivery in the store's base currency. This fee will be added to the shipping costs. Leave this field empty to charge no extra fee for sunday delivery.","Additional costs for sunday delivery in the store's base currency. This fee will be added to the shipping costs. Leave this field empty to charge no extra fee for sunday delivery."
app/locale/nl_NL/TIG_PostNL.csv CHANGED
@@ -289,7 +289,7 @@ TIG_PostNL::Signature on delivery,Handtekening bij ontvangst
289
  TIG_PostNL::Signature on delivery + Delivery to stated address only,Handtekening bij ontvangst + Lever alleen aan opgegeven adres
290
  TIG_PostNL::Signature on delivery + Return when not home,Handtekening bij ontvangst + Retour indien niet thuis
291
  TIG_PostNL::Signature on delivery + Deliver to stated address only + Return when not home,Handtekening bij ontvangst + Lever alleen aan opgegeven adres + Retour indien niet thuis
292
- TIG_PostNL::Delivery to neighbour + Return when not home,Lever bij buren + kom terug indien niet thuis
293
  TIG_PostNL::Deliver to stated address only,Lever alleen aan opgegeven adres
294
  TIG_PostNL::Deliver to stated address only + Return when not home,Lever alleen aan opgegeven adres + Retour indien niet thuis
295
  TIG_PostNL::Print shipping labels & confirm shipment,Print verzendlabels en zending voormelden
@@ -439,12 +439,12 @@ TIG_PostNL::Configure the PostNL sending method under system > config > shipping
439
  "TIG_PostNL::PostNL needs to be able to retrieve a properly formatted address from the checkout process in order to guarantee the order is delivered at the correct address. To do so, you need to enable the postcode validation or configure the appropriate number of street lines in your checkout flow and make sure these have correct labels and validation settings. More info on how to do this, can be found <a href='%s' target='_blank'>here</a>.",Als u gebruik maakt van de postcode check zal de extensie het afrekenproces goed voor u instellen. Als u daar geen gebruik van maakt moet PostNL uit het afrekenproces een correct opgemaakt adres kunnen lezen om een juiste verzending te kunnen garanderen. Om hier zeker van te zijn moet u het goede aantal straat regels aanzetten en deze voorzien van duidelijke labels en validatie. U kunt hier meer lezen over hoe u dit kunt configureren.
440
  "TIG_PostNL::We highly recommend you place several 'test' shipments, before you use the extension for real shipments.",Maak altijd enkele testzendingen aan voordat u de extensie voor echte bestellingen gebruikt.
441
  TIG_PostNL::We cannot guarantee compatibility with non supported extensions and versions of Magento.,De compatibiliteit met niet ondersteunde extensies en versies van Magento wordt niet gegarandeerd.
442
- "TIG_PostNL::The extension is developed by Total Internet Group, commissioned by PostNL.",De extensie is ontwikkeld door Total Internet Group in opdracht van PostNL.
443
  TIG_PostNL::PostNL account information and PostNL services,PostNL account informatie en PostNL diensten
444
  "TIG_PostNL::For questions related to your PostNL account and PostNL delivery options, please contact PostNL.","Voor vragen met betrekking tot uw PostNL account en PostNL bezorgopties, neem a.u.b. contact op met PostNL."
445
  TIG_PostNL::Phone:,Telefoon:
446
  TIG_PostNL::Extension support and configuration questions,Extensie ondersteuning en vragen over de configuratie
447
- "TIG_PostNL::For configuration problems, extension conflicts and bugs, contact Total Internet Group.","Voor vragen met betrekking tot configuratie problemen, extensie conflicten en bugs kunt u contact opnemen met de Total Internet Group."
448
  TIG_PostNL::Online knowledgebase:,Online knowledgebase:
449
  TIG_PostNL::Website:,Website:
450
  TIG_PostNL::Request help directly:,Direct assistentie vragen:
@@ -487,7 +487,7 @@ TIG_PostNL::Invalid UpdateOrder response: %s,Ongeldige UpdateOrder ontvangen: %s
487
  href='http://www.postnl.nl/zakelijk/e-commerce/flexibele-bezorgopties' target='_blank'
488
  title='Aanmelden'>aan te melden</a> bij PostNL. U ontvangt vervolgens de benodigde gegevens voor uw instellingen. Indien u de e-mail die deze gegevens bevat niet meer kunt vinden, neem dan contact op met uw PostNL account manager.</p><p>Indien u de extensie wilt testen, maar geen test modus account gegevens heeft, kunt u de account gegevens gebruiken die <a href=""http://kb.tig.nl/topic/55404467"" title=""Test modus account gegevens"" target=""_blank"">hier</a> genoemd worden."
489
  "TIG_PostNL::You will find these settings in your <a href='https://checkout.postnl.nl/' target='_blank' title='PostNL'>PostNL Checkout account</a>.</p><p><a href='https://checkout.postnl.nl/' target='_blank' title='PostNL Checkout'>PostNL Checkout</a> is a free service, however you do need to <a href='https://checkout.postnl.nl/Consumer/Register?utm_source=magento&utm_medium=referral&utm_campaign=2014' target='_blank' title='Register'>register</a> yourself with PostNL. You will then receive all necessary information in order to configure this feature.","Deze gegevens vindt u in uw <a href='https://checkout.postnl.nl/' target='_blank' title='PostNL'>Checkout instellingen</a> bij PostNL.</p><p><a href='https://checkout.postnl.nl/' target='_blank' title='PostNL Checkout'>PostNL Checkout</a> is een gratis service, wel dient u zich <a href='https://checkout.postnl.nl/Consumer/Register?utm_source=magento&utm_medium=referral&utm_campaign=2014' target='_blank' title='Aanmelden'>aan te melden</a> bij PostNL. U ontvangt vervolgens de benodigde gegevens voor uw instellingen."
490
- TIG_PostNL::ONLY CHANGE THESE SETTINGS WITH DIRECT INSTRUCTION FROM POSTNL OR TOTAL INTERNET GROUP,PAS DEZE INSTELLINGEN ENKEL AAN MET DIRECTE INSTRUCTIES VAN POSTNL OF TOTAL INTERNET GROUP
491
  TIG_PostNL::Offer customers the possibility to subscribe to your store's newsletter. Please note: This feature might conflict with other extensions that also use Magento's newsletter functionality.,Biedt de mogelijkheid om klanten zich te laten aanmelden voor de nieuwsbrief van uw webshop. Let op: Deze functie kan conflicteren met andere extensies die de nieuwsbrief functionaliteit aanpassen.
492
  TIG_PostNL::Doorcodes are often used in foreign addresses such as those used in France and Singapore.,Deurcodes worden veelal gebruikt in buitenlandse addressen zoals addressen uit Frankrijk en Singapore.
493
  "TIG_PostNL::PostNL Checkout is a method alongside your own order process that allows your customers to choose where, when and how to receive their order. Please note: Use the Delivery Options to configure the PostNL settings in your own checkout. Use the settings below to configure the settings for the PostNL Checkout.<br/><br/>Does the PostNL Checkout button stay gray? Click <a href=""http://kb.tig.nl/topic/39102986"" target=""_blank"">here</a> for possible causes and solutions.","De PostNL Checkout is een methode naast uw eigen bestelproces waarmee uw klanten snel en gemakkelijk kunnen kiezen waar, wanneer en hoe ze een bestelling willen ontvangen. Let op: Met de bezorgopties configureert u de PostNL instellingen in uw eigen bestelproces, met de onderstaande instellingen configureert u de instellingen in de PostNL checkout.<br/><br/>Blijft de PostNL Checkout knop grijs? Klik <a href=""http://kb.tig.nl/topic/39102986"" target=""_blank"">hier</a> om de mogelijke oorzaken en oplossingen te bekijken."
@@ -608,8 +608,8 @@ TIG_PostNL::Evening pickup available,'s Avonds ophalen mogelijk
608
  TIG_PostNL::Or pick your own delivery moment,Of kies zelf uw bezorgmoment
609
  TIG_PostNL::Connection timeout duration,Connectie time-out duur
610
  TIG_PostNL::After this number of seconds a customer will be prompted to fill in his address manually. Leave this field empty to disable the feature. Please note: if a customer needs to wait too long he might leave the order process.,Na dit aantal seconden kan uw klant het adres handmatig invullen. Laat dit veld leeg om de functionaliteit uit te schakelen. Let op: als een klant te lang moet wachten verlaat hij wellicht het bestelproces.
611
- TIG_PostNL::Show PostNL Checkout exclusively to MijnPakket users,Toon PostNL Checkout exclusief aan Mijnpakket gebruikers
612
- TIG_PostNL::Activate the PostNL Checkout only for customers with a MijnPakket account. Please note: The Delivery Options must be activated.,Activeer om de PostNL Checkout enkel te tonen aan uw klanten die beschikken over een MijnPakket account. Let op: de bezorgopties moeten geactiveerd zijn.
613
  TIG_PostNL::Delivery Options,Bezorgopties
614
  "TIG_PostNL::Your customers choose when, where and how they would like to receive their orders with PostNL's delivery options. Let your customers pick a day and the extension will show the estimated time of delivery. On Tuesdays and Wednesdays PostNL also delivers in the evening. Maybe your customers prefer to pick up their orders from one of the 2000 Post offices? No problem, a growing number of locations even have the orders ready for pickup early in the morning.","Met de PostNL bezorgopties kunnen uw klanten kiezen waar, wanneer en hoe zij hun bestelling willen ontvangen. Zo kunnen uw klanten de dag van ontvangst kiezen en wordt er direct aangegeven op welk moment ze het pakket kunnen verwachten. Op dinsdag en donderdag bezorgt PostNL zelfs ‘s avonds. Halen uw klanten het pakket liever af op één van de 2000 PostNL pakketpunten? Dit kan vanaf 15:00 uur en op sommige locaties zelfs vanaf 8:30 uur."
615
  TIG_PostNL::Enable PostNL delivery options,Activeer PostNL bezorgopties
@@ -695,7 +695,7 @@ TIG_PostNL::Invalid arguments supplied. The 'number' parameter is required.,Onge
695
  TIG_PostNL::Invalid mobile phone number supplied: %s.,Ongeldig mobiel telefoonnummer opgegeven : %s.
696
  TIG_PostNL::The quote's total weight is below the miniumum required to use PostNL delivery options.,Het totale gewicht van de bestelling is beneden het minimum om gebruik te maken van PostNL bezorgopties.
697
  TIG_PostNL::Invalid arguments supplied. The 'costs' parameter requires an amount incl. and excl. VAT.,Ongeldige parameters opgegeven. De 'costs' parameter moet een bedrag incl. en excl. BTW bevatten.
698
- TIG_PostNL::Invalid fee amount entered: %s incl. VAT. Please enter a value between 0.00 and 2.00 EUR incl. VAT.,"Ongeldige toeslag ingevoerd: %s incl. BTW. Vul s.v.p. een waarde in tussen 0,00 en 2,00 EUR incl. BTW."
699
  TIG_PostNL::The PostNL Extension is currently configured in test mode.,De PostNL extensie is momenteel geconfigureerd in test modus.
700
  "TIG_PostNL::You can enter your live username and password in the 'Account Settings' tab. Don't forget to also update your customer number, customer code and BLS (location) code. You can then set the extension to live mode.","U kunt uw live gebruikersnaam en wachtwoord invullen onder het 'Account Instellingen' tabje. Vergeet hier niet ook uw klantnummer, klantcode en BLS (locatie) code in te vullen. U kunt vervolgens de extensie op live modus zetten."
701
  "TIG_PostNL::You may test the extension, however you cannot send any shipments in this mode. Any shipments that you confirm or whose labels you print while in this mode will be registered as test shipments and may not be physically shipped. If you attempt to do so, you may incur fines from PostNL. To use the extension in live mode you first need to enter your PostNL account credentials and set the extension to live mode. You can then send shipments using the PostNL extension.","U kunt de extensie testen, maar u kunt geen zendingen versturen in test modus. Als u een zending voormeldt of de labels print van een zending terwijl de extensie in test modus staat, zullen deze zendingen gemarkeerd worden als testzendingen. Deze testzendingen kunt u niet versturen. Indien u deze wel verzendt, zult u boetes oplopen bij PostNL. Om de extensie in livemodus te gebruiken, dient u eerst uw PostNL accountgegevens in te voeren en de configuratie op livemodus in te stellen. Vervolgens kunt u zendingen versturen met de PostNL extensie."
@@ -759,23 +759,23 @@ TIG_PostNL::Delivery options theme,Bezorgopties thema
759
  "TIG_PostNL::You can view an example of the different themes <a href=""http://kb.tig.nl/topic/58787233"" target=""_blank"" title=""PostNL delivery option themes"">here</a>.","U kunt een voorbeeld van de verschillende thema's <a href=""http://kb.tig.nl/topic/58787233"" target=""_blank"" title=""PostNL bezorgopties thema's"">hier</a> bekijken."
760
  TIG_PostNL::Default PostNL theme,Standaard PostNL thema
761
  TIG_PostNL::Neutral theme,Neutraal thema
762
- TIG_PostNL::MijnPakket,MijnPakket
763
- TIG_PostNL::Show MijnPakket notification on the order success page,Toon MijnPakket melding op de bestelling success pagina
764
- TIG_PostNL::This will cause a notification to be shown to customers after they have placed their order. The message may either inform the customer about MijnPakket accounts or the MijnPakket app.,"Indien deze instelling aan staat, zal er een melding worden getoond aan klanten nadat zij een bestelling hebben geplaatst. Deze melding zal klanten informeren over de voordelen van een MijnPakket account of over de MijnPakket app."
765
- TIG_PostNL::Show create MijnPakket account link,Toon MijnPakket account aanmaken link
766
- "TIG_PostNL::If enabled, customers who do not yet have a MijnPakket account will be shown a link through which they can create a MijnPakket account without having to fully fill in the registration form.","Indien deze instelling aan staat, zal er aan consumenten die nog geen MijnPakket account hebben een link getoond worden waarmee zij snel een MijnPakket account kunnen aanmaken zonder het gehele registratieformulier in te hoeven vullen."
767
- TIG_PostNL::Show MijnPakket app link,Toon MijnPakket app link
768
- "TIG_PostNL::If enabled, customers who already have a MijnPakket account will be informed about the PostNL MijnPakket app with which they can easily track their order.","Indien deze instelling aan staat, zal er een link naar de MijnPakket app getoond worden aan consumenten die al een MijnPakket account hebben."
769
- TIG_PostNL::Loading MijnPakket data...,MijnPakket data ophalen...
770
  TIG_PostNL::Your preferred address has been loaded from your MijnPakket account and set as your billing and shipping address. You may now choose a shipping method and complete your order.,Het adres dat u in uw MijnPakket account heeft ingesteld als uw voorkeursadres is ingevuld als uw factuur- en verzendadres. U kunt nu een bezorgoptie kiezen en uw bestelling verder afronden.
771
- TIG_PostNL::Checkout using MijnPakket,Afrekenen met MijnPakket
772
- TIG_PostNL::Log in with your MijnPakket account to automatically use your preferred address.,Log in met uw MijnPakket account om automatisch gebruik te maken van uw voorkeursadres.
773
- TIG_PostNL::If you have a MijnPakket account you can use the button below to log in to your account. When you log in to your MijnPakket account the webshop will read your preferred address and select it as your billing and shipping address. You can change this address in the forms below.,"Als u een MijnPakket account heeft, kunt u met deze knop hierop inloggen. Wanneer u dit doet, zal de webshop uw voorkeursadres standaard gebruiken als uw factuur- en verzendadres. Uiteraard kunt u dit aanpassen als het een ander adres moet zijn."
774
- TIG_PostNL::MijnPakket login will only be available to customers who have a MijnPakket account. This will be automatically detected.,MijnPakket login is enkel beschikbaar voor klanten die een MijnPakket account hebben. Dit wordt automatisch gedetecteerd.
775
  TIG_PostNL::Create a new MijnPakket account.,Maak een nieuwe MijnPakket account aan.
776
  TIG_PostNL::Download the PostNL MijnPakket app,Download de MijnPakket app.
777
  TIG_PostNL::Unfortunately MijnPakket login is currently not available. Please use a different checkout method.,MijnPakket login is helaas momenteel niet beschikbaar. Kies s.v.p. een andere afrekenmethode.
778
- TIG_PostNL::Enable MijnPakket login,Activeer MijnPakket login
779
  "TIG_PostNL::You can use this button to validate your account settings without saving the configuration. This will send a 'test' request to PostNL. If the above fields are not entered correctly, this will result in an error. Please note that the PostNL extension must be active for the validation to succeed. <br />Please note that the webshop ID and public webshop ID fields will not be validated. Only your CIF credentials will be checked.","U kunt deze knop gebruiken om uw account gegevens te valideren zonder de configuratie op te slaan. Dit zal een 'test' verzoek sturen naar PostNL. Indien bovenstaande velden niet correct ingevuld zijn, zal dit resulteren in een foutmelding. De PostNL extensie moet hiervoor actief staan. <br />N.B.: uw webshop ID en publiek webshop ID zullen niet gevalideerd worden. Enkel uw CIF account gegevens worden gecontroleerd."
780
  TIG_PostNL::Maximum number of delivery days,Maximum aantal bezorgdagen
781
  TIG_PostNL::Submit how many days in the future after the first delivery moment your customers can choose to receive their orders.,Geef hier aan hoeveel dagen in te toekomst na het eerste bezorgmoment de klant de bestelling mag ontvangen.
@@ -790,11 +790,11 @@ TIG_PostNL::Idev's OneStepCheckout version,Idev's OneStepCheckout versie
790
  TIG_PostNL::choose a different shipping address,kies een ander verzendadres
791
  TIG_PostNL::Magento & 3rd party version compatibility,Magento & 3rd party versie compatibiliteit
792
  TIG_PostNL::PostNL - Confirm Shipment,PostNL - Zending voormelden
793
- TIG_PostNL::Always stay informed? Click %shere%s to create a MijnPakket account based on your order details.,Altijd op de hoogte? Klik %shier%s om direct een mijnpakket account aan te maken op basis van uw bestelling.
794
  TIG_PostNL::Track your shipment's current status and whereabouts,Volg de actuele status van uw pakket
795
  TIG_PostNL::Change the delivery time and place if you are not at home,Wijzig de bezorgplaats- en tijd als u er niet bent
796
  TIG_PostNL::All your shipments available in a single overview,Al uw pakketten in een duidelijk overzicht bij elkaar
797
- TIG_PostNL::Always stay informed? Download the MijnPakket app.,Altijd op de hoogte? Download nu de mijnpakket app.
798
  TIG_PostNL::The customer was redirected to the cart because the quote was empty.,"De klant is doorgestuurd naar de winkelwagen, omdat de quote leeg was."
799
  TIG_PostNL::The customer was redirected to the cart because the quote had the following error(s): %s.,"De klant is doorgestuurd naar de winkelwagen, omdat de quote de volgende errors bevat: %s."
800
  TIG_PostNL::The customer was redirected to the cart because the quote is multishipping.,"De klant is doorgestuurd naar de winkelwagen, omdat de quote voor multishipping bestemd is."
@@ -816,7 +816,7 @@ TIG_PostNL::Unable to create an invoice for this shipment due to the order missi
816
  TIG_PostNL::Unable to create an invoice for this shipment because the order cannot be invoiced.,"Er kan geen factuur aangemaakt worden voor deze zending, omdat de bestelling niet gefactureerd kan worden."
817
  TIG_PostNL::An error occurred while creating an invoice for this shipment.,Er is een fout opgestreden tijdens het aanmaken van een factuur voor deze zending.
818
  TIG_PostNL::PostNL COD,PostNL Rembours
819
- "TIG_PostNL::Activate an extra payment method with COD shipments.<br/>Please note: In order to offer COD shipments to your customers you will need to complete the fields below and activate an extra payment method <a href=""%s"" target=""_blank"">here</a>.","Met rembours activeert u voor uw klanten een extra betalingsmethode.<br/>Let op: als u gebruik wilt maken van rembours moet u naast de onderstaande velden de betaalmethode methode <a href=""%s"" target=""_blank"">hier</a> configureren."
820
  TIG_PostNL::Bankaccount name,Bankrekening naam
821
  TIG_PostNL::Bankaccount IBAN,Bankrekening IBAN
822
  TIG_PostNL::Bankaccount BIC,Bankrekening BIC
@@ -945,7 +945,7 @@ TIG_PostNL::This shipment does not need to be confirmed.,Deze zending hoeft niet
945
  TIG_PostNL::Show letter box parcel option in order grid,Toon brievenbuspakje optie in het besteloverzicht
946
  TIG_PostNL::This will add the option to mark shipments as being letter box parcels when creating shipments from the order grid.,Dit voegt de optie toe om bestellingen te markeren als brievenbuspakjes wanneer u zendingen aanmaakt vanuit het besteloverzicht.
947
  TIG_PostNL::Calculation mode,Berekeningsmodus
948
- TIG_PostNL::You can let the PostNL extension calculate automatically whether a shipment would fit in a mail slot or you can manually determine this when creating shipments in the backend. If set to 'automatic' the PostNL extension will check the 'Weight' and 'PostNL Max Qty For Letter Box Parcels' of all products in an order to determine whether the shipment would fit through a mail slot. You may always overrule this and manually set whether a shipment is a letter box parcel or not.,"U kunt de PostNL extensie automatisch laten bepalen of een zending door de brievenbus past of u kunt dit handmatig aangeven wanneer u zendingen aanmaakt. U kunt de PostNL extensie automatisch laten bepalen of een zending door de brievenbus past of u kunt dit handmatig aangeven wanneer u zendingen aanmaakt.
949
  Indien deze instelling op 'automatisch' staat, zal de extensie de 'Gewicht' en 'PostNL Max Hoeveelheid voor Brievenbuspakjes' productattributen gebruiken om te bepalen of een zending door de brievenbus past. U kunt dit altijd overschrijven door zelf aan te geven of een zending een brievenbuspakje is wanneer u handmatig een zending aanmaakt."
950
  TIG_PostNL::Use letter box parcels,Gebruik brievenbuspakjes
951
  TIG_PostNL::If you disable this field all shipments will be considered regular package shipments.<br/>It is very important that you have correctly configured all products when using letter box parcels. Orders weighing more than <strong>2kg</strong> or are larger than <strong>38 x 26.5 x 3.2 cm</strong> cannot be shipped as letter box parcels.,"Indien u deze instelling uit zet, zullen alle zendingen beschouwd worden als reguliere pakketzendingen.<br/>Het is zeer belangrijk dat u alle producten correct geconfigureerd heeft als u gebruik wilt maken van brievenbuspakjes. Bestellingen die meer wegen dan <strong>2kg</strong> of groter zijn dan <strong>38 x 26,5 x 3,2 cm</strong> kunnen niet verstuurd worden als brievenbuspakjes."
@@ -1285,4 +1285,37 @@ TIG_PostNL::Could not create or find a shipment for order #%s.,"Er kon geen zend
1285
  TIG_PostNL::GoMage's Checkout version,GoMage's Checkout versie
1286
  TIG_PostNL::Print the shipping label on the same page as the packing slip,Print het verzendlabel op dezelfde pagina als de pakbon
1287
  TIG_PostNL::Print the shipping label on a separate page,Print het verzendlabel op een aparte pagina
1288
- TIG_PostNL::Don't print the shipping label,Print het verzendlabel niet
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
289
  TIG_PostNL::Signature on delivery + Delivery to stated address only,Handtekening bij ontvangst + Lever alleen aan opgegeven adres
290
  TIG_PostNL::Signature on delivery + Return when not home,Handtekening bij ontvangst + Retour indien niet thuis
291
  TIG_PostNL::Signature on delivery + Deliver to stated address only + Return when not home,Handtekening bij ontvangst + Lever alleen aan opgegeven adres + Retour indien niet thuis
292
+ TIG_PostNL::Delivery to neighbour + Return when not home,Lever bij buren + Retour indien niet thuis
293
  TIG_PostNL::Deliver to stated address only,Lever alleen aan opgegeven adres
294
  TIG_PostNL::Deliver to stated address only + Return when not home,Lever alleen aan opgegeven adres + Retour indien niet thuis
295
  TIG_PostNL::Print shipping labels & confirm shipment,Print verzendlabels en zending voormelden
439
  "TIG_PostNL::PostNL needs to be able to retrieve a properly formatted address from the checkout process in order to guarantee the order is delivered at the correct address. To do so, you need to enable the postcode validation or configure the appropriate number of street lines in your checkout flow and make sure these have correct labels and validation settings. More info on how to do this, can be found <a href='%s' target='_blank'>here</a>.",Als u gebruik maakt van de postcode check zal de extensie het afrekenproces goed voor u instellen. Als u daar geen gebruik van maakt moet PostNL uit het afrekenproces een correct opgemaakt adres kunnen lezen om een juiste verzending te kunnen garanderen. Om hier zeker van te zijn moet u het goede aantal straat regels aanzetten en deze voorzien van duidelijke labels en validatie. U kunt hier meer lezen over hoe u dit kunt configureren.
440
  "TIG_PostNL::We highly recommend you place several 'test' shipments, before you use the extension for real shipments.",Maak altijd enkele testzendingen aan voordat u de extensie voor echte bestellingen gebruikt.
441
  TIG_PostNL::We cannot guarantee compatibility with non supported extensions and versions of Magento.,De compatibiliteit met niet ondersteunde extensies en versies van Magento wordt niet gegarandeerd.
442
+ "TIG_PostNL::The extension is developed by TIG, commissioned by PostNL.",De extensie is ontwikkeld door TIG in opdracht van PostNL.
443
  TIG_PostNL::PostNL account information and PostNL services,PostNL account informatie en PostNL diensten
444
  "TIG_PostNL::For questions related to your PostNL account and PostNL delivery options, please contact PostNL.","Voor vragen met betrekking tot uw PostNL account en PostNL bezorgopties, neem a.u.b. contact op met PostNL."
445
  TIG_PostNL::Phone:,Telefoon:
446
  TIG_PostNL::Extension support and configuration questions,Extensie ondersteuning en vragen over de configuratie
447
+ "TIG_PostNL::For configuration problems, extension conflicts and bugs, contact TIG.","Voor vragen met betrekking tot configuratie problemen, extensie conflicten en bugs kunt u contact opnemen met TIG."
448
  TIG_PostNL::Online knowledgebase:,Online knowledgebase:
449
  TIG_PostNL::Website:,Website:
450
  TIG_PostNL::Request help directly:,Direct assistentie vragen:
487
  href='http://www.postnl.nl/zakelijk/e-commerce/flexibele-bezorgopties' target='_blank'
488
  title='Aanmelden'>aan te melden</a> bij PostNL. U ontvangt vervolgens de benodigde gegevens voor uw instellingen. Indien u de e-mail die deze gegevens bevat niet meer kunt vinden, neem dan contact op met uw PostNL account manager.</p><p>Indien u de extensie wilt testen, maar geen test modus account gegevens heeft, kunt u de account gegevens gebruiken die <a href=""http://kb.tig.nl/topic/55404467"" title=""Test modus account gegevens"" target=""_blank"">hier</a> genoemd worden."
489
  "TIG_PostNL::You will find these settings in your <a href='https://checkout.postnl.nl/' target='_blank' title='PostNL'>PostNL Checkout account</a>.</p><p><a href='https://checkout.postnl.nl/' target='_blank' title='PostNL Checkout'>PostNL Checkout</a> is a free service, however you do need to <a href='https://checkout.postnl.nl/Consumer/Register?utm_source=magento&utm_medium=referral&utm_campaign=2014' target='_blank' title='Register'>register</a> yourself with PostNL. You will then receive all necessary information in order to configure this feature.","Deze gegevens vindt u in uw <a href='https://checkout.postnl.nl/' target='_blank' title='PostNL'>Checkout instellingen</a> bij PostNL.</p><p><a href='https://checkout.postnl.nl/' target='_blank' title='PostNL Checkout'>PostNL Checkout</a> is een gratis service, wel dient u zich <a href='https://checkout.postnl.nl/Consumer/Register?utm_source=magento&utm_medium=referral&utm_campaign=2014' target='_blank' title='Aanmelden'>aan te melden</a> bij PostNL. U ontvangt vervolgens de benodigde gegevens voor uw instellingen."
490
+ TIG_PostNL::ONLY CHANGE THESE SETTINGS WITH DIRECT INSTRUCTION FROM POSTNL OR TIG,PAS DEZE INSTELLINGEN ENKEL AAN MET DIRECTE INSTRUCTIES VAN POSTNL OF TIG
491
  TIG_PostNL::Offer customers the possibility to subscribe to your store's newsletter. Please note: This feature might conflict with other extensions that also use Magento's newsletter functionality.,Biedt de mogelijkheid om klanten zich te laten aanmelden voor de nieuwsbrief van uw webshop. Let op: Deze functie kan conflicteren met andere extensies die de nieuwsbrief functionaliteit aanpassen.
492
  TIG_PostNL::Doorcodes are often used in foreign addresses such as those used in France and Singapore.,Deurcodes worden veelal gebruikt in buitenlandse addressen zoals addressen uit Frankrijk en Singapore.
493
  "TIG_PostNL::PostNL Checkout is a method alongside your own order process that allows your customers to choose where, when and how to receive their order. Please note: Use the Delivery Options to configure the PostNL settings in your own checkout. Use the settings below to configure the settings for the PostNL Checkout.<br/><br/>Does the PostNL Checkout button stay gray? Click <a href=""http://kb.tig.nl/topic/39102986"" target=""_blank"">here</a> for possible causes and solutions.","De PostNL Checkout is een methode naast uw eigen bestelproces waarmee uw klanten snel en gemakkelijk kunnen kiezen waar, wanneer en hoe ze een bestelling willen ontvangen. Let op: Met de bezorgopties configureert u de PostNL instellingen in uw eigen bestelproces, met de onderstaande instellingen configureert u de instellingen in de PostNL checkout.<br/><br/>Blijft de PostNL Checkout knop grijs? Klik <a href=""http://kb.tig.nl/topic/39102986"" target=""_blank"">hier</a> om de mogelijke oorzaken en oplossingen te bekijken."
608
  TIG_PostNL::Or pick your own delivery moment,Of kies zelf uw bezorgmoment
609
  TIG_PostNL::Connection timeout duration,Connectie time-out duur
610
  TIG_PostNL::After this number of seconds a customer will be prompted to fill in his address manually. Leave this field empty to disable the feature. Please note: if a customer needs to wait too long he might leave the order process.,Na dit aantal seconden kan uw klant het adres handmatig invullen. Laat dit veld leeg om de functionaliteit uit te schakelen. Let op: als een klant te lang moet wachten verlaat hij wellicht het bestelproces.
611
+ TIG_PostNL::Show PostNL Checkout exclusively to users with a PostNL account,Toon PostNL checkout exclusief aan gebruikers met een PostNL account
612
+ TIG_PostNL::Activate the PostNL Checkout only for customers with a PostNL account. Please note: The Delivery Options must be activated.,Activeer om de PostNL Checkout enkel te tonen aan uw klanten die beschikken over een PostNL account. Let op: de bezorgopties moeten geactiveerd zijn.
613
  TIG_PostNL::Delivery Options,Bezorgopties
614
  "TIG_PostNL::Your customers choose when, where and how they would like to receive their orders with PostNL's delivery options. Let your customers pick a day and the extension will show the estimated time of delivery. On Tuesdays and Wednesdays PostNL also delivers in the evening. Maybe your customers prefer to pick up their orders from one of the 2000 Post offices? No problem, a growing number of locations even have the orders ready for pickup early in the morning.","Met de PostNL bezorgopties kunnen uw klanten kiezen waar, wanneer en hoe zij hun bestelling willen ontvangen. Zo kunnen uw klanten de dag van ontvangst kiezen en wordt er direct aangegeven op welk moment ze het pakket kunnen verwachten. Op dinsdag en donderdag bezorgt PostNL zelfs ‘s avonds. Halen uw klanten het pakket liever af op één van de 2000 PostNL pakketpunten? Dit kan vanaf 15:00 uur en op sommige locaties zelfs vanaf 8:30 uur."
615
  TIG_PostNL::Enable PostNL delivery options,Activeer PostNL bezorgopties
695
  TIG_PostNL::Invalid mobile phone number supplied: %s.,Ongeldig mobiel telefoonnummer opgegeven : %s.
696
  TIG_PostNL::The quote's total weight is below the miniumum required to use PostNL delivery options.,Het totale gewicht van de bestelling is beneden het minimum om gebruik te maken van PostNL bezorgopties.
697
  TIG_PostNL::Invalid arguments supplied. The 'costs' parameter requires an amount incl. and excl. VAT.,Ongeldige parameters opgegeven. De 'costs' parameter moet een bedrag incl. en excl. BTW bevatten.
698
+ TIG_PostNL::Invalid fee amount entered: %s incl. VAT. Please enter a value between %.2f and %.2f %s incl. VAT.,"Ongeldige toeslag ingevoerd: %s incl. BTW. Vul s.v.p. een waarde in tussen %.2f and %.2f %s incl. BTW."
699
  TIG_PostNL::The PostNL Extension is currently configured in test mode.,De PostNL extensie is momenteel geconfigureerd in test modus.
700
  "TIG_PostNL::You can enter your live username and password in the 'Account Settings' tab. Don't forget to also update your customer number, customer code and BLS (location) code. You can then set the extension to live mode.","U kunt uw live gebruikersnaam en wachtwoord invullen onder het 'Account Instellingen' tabje. Vergeet hier niet ook uw klantnummer, klantcode en BLS (locatie) code in te vullen. U kunt vervolgens de extensie op live modus zetten."
701
  "TIG_PostNL::You may test the extension, however you cannot send any shipments in this mode. Any shipments that you confirm or whose labels you print while in this mode will be registered as test shipments and may not be physically shipped. If you attempt to do so, you may incur fines from PostNL. To use the extension in live mode you first need to enter your PostNL account credentials and set the extension to live mode. You can then send shipments using the PostNL extension.","U kunt de extensie testen, maar u kunt geen zendingen versturen in test modus. Als u een zending voormeldt of de labels print van een zending terwijl de extensie in test modus staat, zullen deze zendingen gemarkeerd worden als testzendingen. Deze testzendingen kunt u niet versturen. Indien u deze wel verzendt, zult u boetes oplopen bij PostNL. Om de extensie in livemodus te gebruiken, dient u eerst uw PostNL accountgegevens in te voeren en de configuratie op livemodus in te stellen. Vervolgens kunt u zendingen versturen met de PostNL extensie."
759
  "TIG_PostNL::You can view an example of the different themes <a href=""http://kb.tig.nl/topic/58787233"" target=""_blank"" title=""PostNL delivery option themes"">here</a>.","U kunt een voorbeeld van de verschillende thema's <a href=""http://kb.tig.nl/topic/58787233"" target=""_blank"" title=""PostNL bezorgopties thema's"">hier</a> bekijken."
760
  TIG_PostNL::Default PostNL theme,Standaard PostNL thema
761
  TIG_PostNL::Neutral theme,Neutraal thema
762
+ TIG_PostNL::PostNL account,PostNL account
763
+ TIG_PostNL::Show PostNL account notification on the order success page,Toon PostNL account melding op de bestelling success pagina
764
+ TIG_PostNL::This will cause a notification to be shown to customers after they have placed their order. The message may either inform the customer about PostNL accounts or the PostNL app.,"Indien deze instelling aan staat, zal er een melding worden getoond aan klanten nadat zij een bestelling hebben geplaatst. Deze melding zal klanten informeren over de voordelen van een PostNL account of over de PostNL app."
765
+ TIG_PostNL::Show create PostNL account link,Toon PostNL account aanmaken link
766
+ "TIG_PostNL::If enabled, customers who do not yet have a PostNL account will be shown a link through which they can create a PostNL account without having to fully fill in the registration form.","Indien deze instelling aan staat, zal er aan consumenten die nog geen PostNL account hebben een link getoond worden waarmee zij snel een PostNL account kunnen aanmaken zonder het gehele registratieformulier in te hoeven vullen."
767
+ TIG_PostNL::Show PostNL app link,Toon PostNL app link
768
+ "TIG_PostNL::If enabled, customers who already have a PostNL account will be informed about the PostNL app with which they can easily track their order.","Indien deze instelling aan staat, zal er een link naar de PostNL app getoond worden aan consumenten die al een PostNL account hebben."
769
+ TIG_PostNL::Loading PostNL data...,PostNL data ophalen...
770
  TIG_PostNL::Your preferred address has been loaded from your MijnPakket account and set as your billing and shipping address. You may now choose a shipping method and complete your order.,Het adres dat u in uw MijnPakket account heeft ingesteld als uw voorkeursadres is ingevuld als uw factuur- en verzendadres. U kunt nu een bezorgoptie kiezen en uw bestelling verder afronden.
771
+ TIG_PostNL::Checkout using PostNL,Afrekenen met PostNL
772
+ TIG_PostNL::Log in with your PostNL account to automatically use your preferred address.,Log in met uw PostNL account om automatisch gebruik te maken van uw voorkeursadres.
773
+ TIG_PostNL::If you have a PostNL account you can use the button below to log in to your account. When you log in to your PostNL account the webshop will read your preferred address and select it as your billing and shipping address. You can change this address in the forms below.,"Als u een PostNL account heeft, kunt u met deze knop hierop inloggen. Wanneer u dit doet, zal de webshop uw voorkeursadres standaard gebruiken als uw factuur- en verzendadres. Uiteraard kunt u dit aanpassen als het een ander adres moet zijn."
774
+ TIG_PostNL::PostNL account login will only be available to customers who have a PostNL account. This will be automatically detected.,PostNL account login is enkel beschikbaar voor klanten die een PostNL account hebben. Dit wordt automatisch gedetecteerd.
775
  TIG_PostNL::Create a new MijnPakket account.,Maak een nieuwe MijnPakket account aan.
776
  TIG_PostNL::Download the PostNL MijnPakket app,Download de MijnPakket app.
777
  TIG_PostNL::Unfortunately MijnPakket login is currently not available. Please use a different checkout method.,MijnPakket login is helaas momenteel niet beschikbaar. Kies s.v.p. een andere afrekenmethode.
778
+ TIG_PostNL::Enable PostNL account login,Activeer PostNL account login
779
  "TIG_PostNL::You can use this button to validate your account settings without saving the configuration. This will send a 'test' request to PostNL. If the above fields are not entered correctly, this will result in an error. Please note that the PostNL extension must be active for the validation to succeed. <br />Please note that the webshop ID and public webshop ID fields will not be validated. Only your CIF credentials will be checked.","U kunt deze knop gebruiken om uw account gegevens te valideren zonder de configuratie op te slaan. Dit zal een 'test' verzoek sturen naar PostNL. Indien bovenstaande velden niet correct ingevuld zijn, zal dit resulteren in een foutmelding. De PostNL extensie moet hiervoor actief staan. <br />N.B.: uw webshop ID en publiek webshop ID zullen niet gevalideerd worden. Enkel uw CIF account gegevens worden gecontroleerd."
780
  TIG_PostNL::Maximum number of delivery days,Maximum aantal bezorgdagen
781
  TIG_PostNL::Submit how many days in the future after the first delivery moment your customers can choose to receive their orders.,Geef hier aan hoeveel dagen in te toekomst na het eerste bezorgmoment de klant de bestelling mag ontvangen.
790
  TIG_PostNL::choose a different shipping address,kies een ander verzendadres
791
  TIG_PostNL::Magento & 3rd party version compatibility,Magento & 3rd party versie compatibiliteit
792
  TIG_PostNL::PostNL - Confirm Shipment,PostNL - Zending voormelden
793
+ TIG_PostNL::Always stay informed? Click %shere%s to create a PostNL account based on your order details.,Altijd op de hoogte? Klik %shier%s om direct een PostNL account aan te maken op basis van uw bestelling.
794
  TIG_PostNL::Track your shipment's current status and whereabouts,Volg de actuele status van uw pakket
795
  TIG_PostNL::Change the delivery time and place if you are not at home,Wijzig de bezorgplaats- en tijd als u er niet bent
796
  TIG_PostNL::All your shipments available in a single overview,Al uw pakketten in een duidelijk overzicht bij elkaar
797
+ TIG_PostNL::Always stay informed? Download the PostNL app.,Altijd op de hoogte? Download nu de PostNL app.
798
  TIG_PostNL::The customer was redirected to the cart because the quote was empty.,"De klant is doorgestuurd naar de winkelwagen, omdat de quote leeg was."
799
  TIG_PostNL::The customer was redirected to the cart because the quote had the following error(s): %s.,"De klant is doorgestuurd naar de winkelwagen, omdat de quote de volgende errors bevat: %s."
800
  TIG_PostNL::The customer was redirected to the cart because the quote is multishipping.,"De klant is doorgestuurd naar de winkelwagen, omdat de quote voor multishipping bestemd is."
816
  TIG_PostNL::Unable to create an invoice for this shipment because the order cannot be invoiced.,"Er kan geen factuur aangemaakt worden voor deze zending, omdat de bestelling niet gefactureerd kan worden."
817
  TIG_PostNL::An error occurred while creating an invoice for this shipment.,Er is een fout opgestreden tijdens het aanmaken van een factuur voor deze zending.
818
  TIG_PostNL::PostNL COD,PostNL Rembours
819
+ "TIG_PostNL::Activate an extra payment method with COD shipments.<br/>Please note: In order to offer COD shipments to your customers you will need to complete the fields below and activate an extra payment method <a href=""%s"" target=""_blank"">here</a>.<br />PostNL COD is only available for Dutch orders.","Met rembours activeert u voor uw klanten een extra betalingsmethode.<br/>Let op: als u gebruik wilt maken van rembours moet u naast de onderstaande velden de betaalmethode methode <a href=""%s"" target=""_blank"">hier</a> configureren.<br />PostNL Rembours is enkel beschikbaar voor Nederlandse bestellingen."
820
  TIG_PostNL::Bankaccount name,Bankrekening naam
821
  TIG_PostNL::Bankaccount IBAN,Bankrekening IBAN
822
  TIG_PostNL::Bankaccount BIC,Bankrekening BIC
945
  TIG_PostNL::Show letter box parcel option in order grid,Toon brievenbuspakje optie in het besteloverzicht
946
  TIG_PostNL::This will add the option to mark shipments as being letter box parcels when creating shipments from the order grid.,Dit voegt de optie toe om bestellingen te markeren als brievenbuspakjes wanneer u zendingen aanmaakt vanuit het besteloverzicht.
947
  TIG_PostNL::Calculation mode,Berekeningsmodus
948
+ TIG_PostNL::You can let the PostNL extension calculate automatically whether a shipment would fit in a mail slot or you can manually determine this when creating shipments in the backend. If set to 'automatic' the PostNL extension will check the 'Weight' and 'PostNL Max Qty For Letter Box Parcels' of all products in an order to determine whether the shipment would fit through a mail slot. You may always overrule this and manually set whether a shipment is a letter box parcel or not.,"U kunt de PostNL extensie automatisch laten bepalen of een zending door de brievenbus past of u kunt dit handmatig aangeven wanneer u zendingen aanmaakt.
949
  Indien deze instelling op 'automatisch' staat, zal de extensie de 'Gewicht' en 'PostNL Max Hoeveelheid voor Brievenbuspakjes' productattributen gebruiken om te bepalen of een zending door de brievenbus past. U kunt dit altijd overschrijven door zelf aan te geven of een zending een brievenbuspakje is wanneer u handmatig een zending aanmaakt."
950
  TIG_PostNL::Use letter box parcels,Gebruik brievenbuspakjes
951
  TIG_PostNL::If you disable this field all shipments will be considered regular package shipments.<br/>It is very important that you have correctly configured all products when using letter box parcels. Orders weighing more than <strong>2kg</strong> or are larger than <strong>38 x 26.5 x 3.2 cm</strong> cannot be shipped as letter box parcels.,"Indien u deze instelling uit zet, zullen alle zendingen beschouwd worden als reguliere pakketzendingen.<br/>Het is zeer belangrijk dat u alle producten correct geconfigureerd heeft als u gebruik wilt maken van brievenbuspakjes. Bestellingen die meer wegen dan <strong>2kg</strong> of groter zijn dan <strong>38 x 26,5 x 3,2 cm</strong> kunnen niet verstuurd worden als brievenbuspakjes."
1285
  TIG_PostNL::GoMage's Checkout version,GoMage's Checkout versie
1286
  TIG_PostNL::Print the shipping label on the same page as the packing slip,Print het verzendlabel op dezelfde pagina als de pakbon
1287
  TIG_PostNL::Print the shipping label on a separate page,Print het verzendlabel op een aparte pagina
1288
+ TIG_PostNL::Don't print the shipping label,Print het verzendlabel niet
1289
+ TIG_PostNL::Loading available delivery options for your shipping address...,De beschikbare bezorgopties voor uw verzendadres worden opgehaald...
1290
+ TIG_PostNL::Picqer's PostNL add-on version,Picqer's PostNL add-on versie
1291
+ TIG_PostNL::Default sunday delivery shipping option,Standaard zondagbezorging verzendoptie
1292
+ TIG_PostNL::Enable sunday delivery,Activeer zondagbezorging
1293
+ TIG_PostNL::This setting may be overwritten by manualy creating shipments.,Deze instelling kan overschreven worden door handmatig zendingen aan te maken.
1294
+ TIG_PostNL::Activate sunday delivery for your customers.,Activeer zondagbezorging voor uw klanten.
1295
+ TIG_PostNL::Sunday Delivery,Zondagbezorging
1296
+ TIG_PostNL::Sunday,Zondag
1297
+ TIG_PostNL::The sender country setting is only available on the 'global' scope.,De afzenderland instelling is alleen beschikbaar in de 'global' scope.
1298
+ TIG_PostNL::Please note: the country you select here will be used to determine whether certain shipping options (such as Belgium domestic) are available to you.,N.B. het land dat je selecteert zal gebruikt worden om te bepalen of sommige verzendopties (zoals België domestic) beschikbaar zijn.
1299
+ TIG_PostNL::The Netherlands,Nederland
1300
+ TIG_PostNL::Belgium,België
1301
+ TIG_PostNL::Belgium Deliver to stated address only + Return when not home,België lever alleen aan opgegeven adres + Retour indien niet thuis
1302
+ TIG_PostNL::Belgium Return when not home,België Retour indien niet thuis
1303
+ TIG_PostNL::Belgium Signature on delivery + Deliver to stated address only + Return when not home,België Handtekening bij ontvangst + Lever alleen aan opgegeven adres + Retour indien niet thuis
1304
+ TIG_PostNL::Belgium Signature on delivery + Return when not home,België Handtekening bij ontvangst + Retour indien niet thuis
1305
+ TIG_PostNL::Belgium COD + Return when not home,België Extra dekking (EUR 500) + Retour indien niet thuis + Lever alleen aan opgegeven adres
1306
+ TIG_PostNL::Belgium Extra cover (EUR 500)+ Return when not home + Deliver to stated address only,België Extra dekking (EUR 500) + Retour indien niet thuis + Lever alleen aan opgegeven adres
1307
+ TIG_PostNL::Belgium COD + Extra cover (EUR 500) + Return when not home,België Extra dekking (EUR 500) + Retour indien niet thuis + Lever alleen aan opgegeven adres
1308
+ TIG_PostNL::Default Belgium shipping option,Standaard België verzendoptie
1309
+ TIG_PostNL::This setting may be overwritten by manualy creating shipments. This option is only applicable to Belgian domestic shipments.,Deze instelling kan overschreven worden door handmatig zendingen aan te maken. Deze optie is enkel van toepassing op Belgische binnenlandse zendingen.
1310
+ TIG_PostNL::Default Belgium COD shipping option,Standaard België rembours verzendoptie
1311
+ TIG_PostNL::PostNL delivery options are only available when shipping from the Netherlands.,PostNL bezorgopties zijn alleen beschikbaar wanneer ur verstuurd vanuit Nederland.
1312
+ TIG_PostNL::Delivery options are only available when shipping from the Netherlands.,Bezorgopties zijn alleen beschikbaar wanneer u verstuurd vanuit Nederland.
1313
+ TIG_PostNL::Delivery options based on contractual agreements,Bezorgopties op basis van contractafspraken
1314
+ TIG_PostNL::Please note: these delivery options require specific contractual agreements with PostNL. Please contact your PostNL account manager if you wish to use monday and/or sunday delivery.,Let op: voor deze bezorgopties moet u specifieke afspraken maken met PostNL. Neem contact op met uw Account Manager als u gebruik wil maken van maandagbezorging en/of zondagbezorging.
1315
+ TIG_PostNL::Enable monday delivery,Activeer maandagbezorging
1316
+ TIG_PostNL::Activate monday delivery (also known as sunday sorting) for your customers.,Activeer maandagbezorging (ook bekend als zondagsortering) voor uw klanten.
1317
+ "TIG_PostNL::You can read more about monday delivery <a href=""http://www.postnl.nl/zakelijke-oplossingen/webwinkels/bezorgopties-voor-mijn-klanten/maandagbezorging/"" target=""_blank"" title=""monday delivery"">here</a>.","U kunt <a href=""http://www.postnl.nl/zakelijke-oplossingen/webwinkels/bezorgopties-voor-mijn-klanten/maandagbezorging/"" target=""_blank"" title=""maandagbezorging"">hier</a> meer lezen over maandagbezorging."
1318
+ "TIG_PostNL::You can read more about sunday delivery <a href=""http://www.postnl.nl/zakelijke-oplossingen/webwinkels/bezorgopties-voor-mijn-klanten/zondagbezorging/"" target=""_blank"" title=""sunday delivery"">here</a>.","U kunt <a href=""http://www.postnl.nl/zakelijke-oplossingen/webwinkels/bezorgopties-voor-mijn-klanten/zondagbezorging/"" target=""_blank"" title=""zondagbezorging"">hier</a> meer lezen over zondagbezorging."
1319
+ TIG_PostNL::sunday,zondag
1320
+ TIG_PostNL::Sunday delivery fee, Zondagbezorging toeslag
1321
+ "TIG_PostNL::Additional costs for sunday delivery in the store's base currency. This fee will be added to the shipping costs. Leave this field empty to charge no extra fee for sunday delivery.","Additionele kosten voor het gebruik van zondagbezorgin in de basis valuta van de storeview. Deze kosten zullen opgeteld worden bij de verzendkosten. Laat dit veld leeg om geen extra kosten in rekening te brengen voor het gebruik van zondagbezorging."
app/locale/nl_NL/template/email/TIG/PostNL/track_and_trace.html CHANGED
@@ -27,7 +27,7 @@
27
  <td valign="top">
28
  <p style="font-size:11px; font-weight:normal; line-height:1.5em; margin:0 0 11px 0;">Beste heer/mevrouw {{htmlescape var=$order.getCustomerName()}},</p>
29
  <p style="font-size:11px; line-height:1.5em; margin:0 0 8px 0;">Uw bestelling van {{var store.getFrontendName()}}, met barcode {{var barcode}} wordt vandaag verzonden.</p>
30
- <p style="font-size:11px; line-height:1.5em; margin:0;">Volg uw pakket op <a href="{{var barcode_url}}" target="_blank">mijnpakket</a> om te zien wanneer PostNL het pakket bij u bezorgt. <p>
31
  <p style="font-size:11px; line-height:1.5em; margin:0;">Met vriendelijke groet,</p>
32
  <p style="font-size:11px; line-height:1.5em; margin:0;">{{var store.getFrontendName()}}</p>
33
  </td>
27
  <td valign="top">
28
  <p style="font-size:11px; font-weight:normal; line-height:1.5em; margin:0 0 11px 0;">Beste heer/mevrouw {{htmlescape var=$order.getCustomerName()}},</p>
29
  <p style="font-size:11px; line-height:1.5em; margin:0 0 8px 0;">Uw bestelling van {{var store.getFrontendName()}}, met barcode {{var barcode}} wordt vandaag verzonden.</p>
30
+ <p style="font-size:11px; line-height:1.5em; margin:0;">Volg uw pakket op <a href="{{var barcode_url}}" target="_blank">PostNL.nl</a> om te zien wanneer PostNL het pakket bij u bezorgt. <p>
31
  <p style="font-size:11px; line-height:1.5em; margin:0;">Met vriendelijke groet,</p>
32
  <p style="font-size:11px; line-height:1.5em; margin:0;">{{var store.getFrontendName()}}</p>
33
  </td>
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>tig_postnl</name>
4
- <version>1.6.0</version>
5
  <stability>stable</stability>
6
  <license uri="http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US">Creative Commons License</license>
7
  <channel>community</channel>
@@ -20,7 +20,28 @@ Services included:&#xD;
20
  - Viewing detailed shipping status information&#xD;
21
  - PostNL Checkout&#xD;
22
  - Emailing customers track &amp; trace information, allowing them to track their shipment from the moment you confirm it to the moment it arrives at their doorstep</description>
23
- <notes>==== v1.6.0 ====&#xD;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
  ==== New Features ====&#xD;
25
  - PostNL delivery options are now compatible with GoMage LightCheckout.&#xD;
26
  - PostNL MijnPakket login and Postcode check are now compatible with GoMage LightCheckout.&#xD;
@@ -390,9 +411,9 @@ Services included:&#xD;
390
  &#xD;
391
  This is the initial beta release of the extension. If you have any questions, please contact the Total Internet Group Servicedesk</notes>
392
  <authors><author><name>TiG</name><user>supporttotal</user><email>servicedesk@totalinternetgroup.nl</email></author></authors>
393
- <date>2015-08-10</date>
394
- <time>09:04:32</time>
395
- <contents><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><dir name="TIG"><file name="postnl.xml" hash="9e82023fd46f786583dba4afd3b2da48"/></dir></dir><dir name="template"><dir name="TIG"><dir name="PostNL"><dir name="address_validation"><dir name="checkout"><dir name="onepage"><file name="billing.phtml" hash="0cb781955d33fae46da09d62bd6fdaf3"/><file name="postcode_check.phtml" hash="bb41cb9863f2a6a85cf1110c2cab8160"/><file name="shipping.phtml" hash="202f4808d3658d510175c6b975991da5"/></dir></dir><dir name="customer"><dir name="address"><file name="edit.phtml" hash="eb3f3f53d153c42165cf70085e026b60"/><file name="postcode_check.phtml" hash="cbb8bfd76db65041cafacf976312ceb7"/></dir></dir><dir name="gomage_checkout"><file name="billing.phtml" hash="e185cac738b3e9808fb41131e257f2a6"/><file name="postcode_check.phtml" hash="7212456a0406763b4e6a002b00bce841"/><file name="shipping.phtml" hash="13ce6e8d74a737ca25f2e57bcb237b9a"/></dir><dir name="onestepcheckout"><file name="billing_fields.phtml" hash="1e04cda4539618f3738fea300682e8e9"/><file name="postcode_check.phtml" hash="9dd6f336942b9cfcfc1a8b26c283b143"/><file name="shipping_fields.phtml" hash="ed8e95313ca98b83f7acbe94ea39876b"/></dir><file name="validate.phtml" hash="75438f5484ae966f288b7bde7e225b0a"/></dir><dir name="checkout"><dir name="cart"><file name="js.phtml" hash="a9718e822a674ae768bc6a532bbb0e13"/><file name="link.phtml" hash="ecd5c96cb1a46f51270c3784232a5c47"/><file name="spinner.phtml" hash="26b8da7f12ef206b9768b325ad547c1b"/></dir><file name="summary.phtml" hash="0b5ba3d2ef1b1d17eca3c3bc603c265f"/></dir><dir name="core"><dir name="order"><dir name="returns"><file name="info.phtml" hash="1eb800d518ea4ac848c42850c6983b66"/><dir name="shipment"><file name="items.phtml" hash="a6b56265412c3e0f24e4cfc6b44e145d"/></dir></dir></dir><dir name="page"><dir name="html"><file name="js_translate.phtml" hash="3a12ce7789322fd513435101b5763811"/></dir></dir><dir name="sales"><dir name="order"><dir name="email"><file name="delivery_options.phtml" hash="a4bd8b76ba57b12bd56ab29e95f7c332"/><file name="pakjegemak_address.phtml" hash="4d66bc2a22d6916c8fe5388cf12b734a"/></dir><file name="pakje_gemak_address.phtml" hash="9c3f945dc11c6e7ab11c2a801c15617d"/><dir name="shipment"><file name="shipping_status.phtml" hash="e20200a32d1f40f661260e58ded904b9"/></dir></dir></dir></dir><dir name="delivery_options"><file name="addlocation.phtml" hash="8c44b58eb6e2df3909bfe0c460a28e7d"/><file name="addphonenumber.phtml" hash="9d7f5b6f1c25b753c39b9d9a75bf8809"/><dir name="gomage_checkout"><file name="available.phtml" hash="b506f7c4d9c40dfc70f5af2426f2e443"/><file name="deliveryoptions.phtml" hash="b19d0f51aa22ecad2cc8afcad53b32e7"/></dir><file name="js.phtml" hash="1090c61caf8925a6961ce55460246294"/><dir name="onepage"><file name="available.phtml" hash="100e509f0c2cb82e22de0735a4afc144"/><file name="deliveryoptions.phtml" hash="4263a1f9d25d60d485ca866625cc0e5e"/><file name="pickup_notification.phtml" hash="8a2262e00a82aac73f565fbf6ef160c3"/><dir name="progress"><file name="pakje_gemak.phtml" hash="07646cfd17ba8ddb1889ae0c01554440"/><file name="shipping_method.phtml" hash="cc7a33fa2411b444d1a23a053e313d66"/></dir></dir><dir name="onestepcheckout"><file name="available.phtml" hash="0b286aa4c191af9fe3c1cfda510aac71"/><dir name="bpost"><file name="available.phtml" hash="379d301a12d598d164b5afb0fac126b1"/></dir><file name="deliveryoptions.phtml" hash="74c4fa09cb253de0dea4aa58ecf93db3"/></dir><file name="progress.phtml" hash="4e17a7cc24bda609244091b767817cf1"/><dir name="sales"><dir name="order"><file name="delivery_options_info.phtml" hash="263147e3762bbfd2cba230a2d7ec21b5"/></dir></dir><file name="theme.phtml" hash="ae93d3471327a0525388264af2575382"/></dir><dir name="mijnpakket"><file name="account_notification.phtml" hash="0b291ada004cbdae82b41b457601dc59"/><dir name="gomage_checkout"><file name="js.phtml" hash="1c57ff5b07a2c7123c5cc01a41e6853e"/><file name="login_button.phtml" hash="f9ce5669bcc5526d254b294c29976ab6"/></dir><file name="js.phtml" hash="66014d70ce25f90fa651a33537335817"/><dir name="onepage"><file name="login_button.phtml" hash="5cca2265505f598d90d999d521a0e156"/></dir><dir name="onestepcheckout"><file name="login_button.phtml" hash="2df3da89991433c33ee203f14ca86b78"/></dir><file name="order_success_js.phtml" hash="165cf4aa0837bfb5c1034846e58bd17d"/></dir><dir name="payment"><dir name="checkout"><dir name="form"><file name="cod.phtml" hash="9ad838767e13e9babe44d29e5ae10463"/></dir><dir name="total"><file name="cod_fee.phtml" hash="9273dca9058bc1e782ad6750be468d96"/></dir></dir></dir></dir></dir></dir></dir></dir><dir name="enterprise"><dir name="default"><dir name="template"><dir name="TIG"><dir name="PostNL"><dir name="address_validation"><dir name="checkout"><dir name="onepage"><file name="billing.phtml" hash="4a824fb5cc38843fd9a49ec5b147dfd5"/><file name="postcode_check.phtml" hash="3ab00fd57d987610bc05474a1f356bbf"/><file name="shipping.phtml" hash="67b03b9c8fdb37831abe43b1885e9ca4"/></dir></dir><dir name="customer"><dir name="address"><file name="edit.phtml" hash="65c1acf828b35df172c819a742599431"/><file name="postcode_check.phtml" hash="8adb18f5b9788f1485d9bcab2d4fc450"/></dir></dir></dir><dir name="core"><dir name="sales"><dir name="order"><file name="pakje_gemak_address.phtml" hash="d0e64d20f8847cb5d622d3e7ca4ac296"/></dir></dir></dir><dir name="mijnpakket"><dir name="onepage"><file name="login_button.phtml" hash="febc3557ee3228244681f06a74f11e4d"/></dir></dir></dir></dir></dir></dir></dir><dir name="rwd"><dir name="default"><dir name="layout"><dir name="TIG"><file name="postnl.xml" hash="88bc2129c1be42f128e0b081712765ea"/></dir></dir><dir name="template"><dir name="TIG"><dir name="PostNL"><dir><dir name="address_validation"><dir name="checkout"><dir name="onepage"><file name="postcode_check.phtml" hash="db2c4471a2a72231e9e48846827d3af6"/></dir></dir><dir name="customer"><dir name="address"><file name="postcode_check.phtml" hash="9d52ad0c9e9879dbdd9a456bbc26c6b3"/></dir></dir></dir><dir name="checkout"><dir name="cart"><file name="link.phtml" hash="9421d86c9999726b5f4fbeb2bd444ae8"/></dir></dir><dir name="mijnpakket"><dir name="onepage"><file name="login_button.phtml" hash="bfaf1bf82634b1f23dcce616a905f017"/></dir></dir></dir></dir></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><dir name="TIG"><file name="postnl.xml" hash="dbda62719b1b37fd2a93084bf0a987f5"/></dir></dir><dir name="template"><dir name="TIG"><dir name="PostNL"><file name="cron_notification.phtml" hash="67bbd1d6737e958906d0378f4b246387"/><file name="integrity_notification.phtml" hash="f8bb74b367cd4c1d65b203571db5af70"/><file name="log_notification.phtml" hash="b823242d8db7e1f1ccfb603c653922f0"/><dir name="payment"><dir name="checkout"><dir name="form"><file name="cod.phtml" hash="145ff33fea020e3e3148c641c9b98bc6"/></dir></dir></dir><dir name="sales"><dir name="items"><dir name="column"><file name="qty.phtml" hash="ee6a8f8fa3515ae96daa5ab5931b50be"/></dir></dir><dir name="order"><dir name="address"><dir name="form"><file name="container.phtml" hash="c70f2fca642dd867f51c265f5bd24421"/></dir></dir><dir name="create"><file name="js.phtml" hash="45ece3a5af2b5b720158f6f9910ede7c"/><dir name="totals"><file name="cod_fee.phtml" hash="024424c5e3b8f23e8f424fa015ba23b6"/></dir></dir><dir name="creditmemo"><dir name="create"><dir name="totals"><file name="cod_fee.phtml" hash="a35bb3ed9e43e09a5c966c3621566cd9"/></dir></dir></dir><file name="filter_massaction.phtml" hash="5767fd53a9eed4d361332dddd97a12ac"/><file name="js.phtml" hash="18ec1303ae3a85e40107c070c7547461"/><file name="product_options.phtml" hash="fac95293486e5a81d5981b3b717aaa4a"/><dir name="shipment"><dir name="create"><file name="shipment_options.phtml" hash="c7f7cf9ef925b01faddcdac608e5519e"/></dir><file name="filter_massaction.phtml" hash="d4e0379e6a96a5fd92ace380715549b9"/><dir name="view"><file name="delivery_options.phtml" hash="ef96fd7eb13a2ec8a75d9a52d4120cb8"/><file name="pakje_gemak_address.phtml" hash="d9dbf8a4ae4d2c3efccf8696d64b580a"/><file name="shipping_status.phtml" hash="2f7b0378604f69b0da2a4a2b7a642b72"/><dir name="tab"><file name="status_history.phtml" hash="2ffe0b40dea1e06af41498702a066cea"/></dir></dir><file name="view.phtml" hash="00087383abc14dd8400ba17e3aeda003"/></dir><dir name="totals"><file name="tax.phtml" hash="ab09fbdc3a7673ca587d8c6de4c02ffd"/></dir><dir name="view"><file name="delivery_options.phtml" hash="e3bc1515159593c8a5f5545db2ae0789"/><file name="pakje_gemak_address.phtml" hash="dc87c6cfce56eb69ea5e2a86d522212c"/></dir><file name="windows_theme.phtml" hash="55103508fe6bb75628ef0c5901c08666"/></dir><dir name="shipment"><file name="customize_link.phtml" hash="efe9c3208669fe44b15725f86ce22c63"/><file name="js.phtml" hash="6afc95d8ff7da355a4d54a9872d1b672"/><file name="testmode_warning.phtml" hash="def163c3796aae431b07351f03cd6ed0"/></dir></dir><dir name="system"><dir name="config"><file name="edit.phtml" hash="4f073927211c81a65263953cfbe87170"/><dir name="form"><dir name="field"><file name="array.phtml" hash="6bb1f404b24129b198c9c95a28c1bd66"/><file name="config_check.phtml" hash="cf8ab0445473583fcdcc997e30d58164"/><file name="field_header.phtml" hash="5ca62f4d7b2b0817e3416a4c6089e145"/><file name="info_box.phtml" hash="f387052ae039703f04a76ae255aa2508"/><file name="js.phtml" hash="10fabeabced110585d130f53b6cc8224"/><file name="split_address_check.phtml" hash="f23ca53d46419f7438fbd1c5ba164f2e"/><file name="support_tab.phtml" hash="9c60cad3057f18aabe7159314a8af6ac"/><file name="warning_box.phtml" hash="9841c9270a4ec7049ee6a46cc6bcb6e3"/></dir></dir></dir></dir><file name="upgrade_notification.phtml" hash="9e9f1a1331b432c56889cfa4df06f8a7"/><dir name="widget"><dir name="grid"><dir name="massaction"><file name="label_start_pos.phtml" hash="244c60efd2281a12206987dca2f5a73c"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="TIG_PostNL.xml" hash="bc88adf886505eac7c8fd420b5a775a2"/></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="css"><dir name="TIG"><dir name="PostNL"><file name="cart.css" hash="d51ab6c200da5c54eb8e672c9325dbf5"/><file name="default.css" hash="46f2e8f1748e604457cc1b237a0950f5"/><dir name="deliveryoptions"><file name="default.css" hash="e82b48626cd9640e6130e84dcb22a186"/><file name="gomage_checkout.css" hash="5a06cdff83cf7129aefe4bd4614c07b0"/><file name="gomage_checkout_mediaqueries.css" hash="1059ae216e39968ce3122e1485ee0458"/><file name="gomage_checkout_neutral.css" hash="cb2cc910a3e96ed3fc9b23d20a6f34eb"/><file name="ie8.css" hash="1f0e04ca6c7be6572defb3adadafd28a"/><file name="mediaqueries.css" hash="3e8b87e8f0f30cbbe83686fa59bfd482"/><file name="neutral.css" hash="4b3b09545e3395f302e1efd487bf2739"/><file name="onestepcheckout.css" hash="fd7d786cc66c34b81555111e34c062eb"/><file name="onestepcheckout_mediaqueries.css" hash="2eb1086de2c12f7b728794fdf5ae431c"/><file name="onestepcheckout_neutral.css" hash="cb2cc910a3e96ed3fc9b23d20a6f34eb"/></dir><file name="messages.css" hash="19d03101c862b45535bc08344c12716a"/><file name="mijnpakket.css" hash="609c7c1218890f38bb9c4732ee5a0e2c"/><file name="postcodecheck.css" hash="af2e0297ed311d11b7bff818ec7b6d61"/><file name="returns.css" hash="23a6cb90aa662d2f866459e8ddf9a38a"/><file name="shipping_status.css" hash="fcb3fe311d50ee93176dc29ef2d5a0b9"/></dir></dir></dir><dir name="images"><dir name="TIG"><dir name="PostNL"><file name="bkg_progress_small.png" hash="fc6c9f28b6a6aae6f0096d504c0952df"/><file name="bkg_tooltip.png" hash="56cfed3ed8a65b19f8de88946d1a0a01"/><dir name="deliveryoptions"><file name="bkg_add-location.png" hash="a30d4aea73b094df5f434f9856dc626b"/><file name="bkg_add-phonenumber_input.gif" hash="25fa933b55e69a552f7d1cf704a8d6f9"/><file name="bkg_back_link.png" hash="b7bd79383aa89243980329e07b55a300"/><file name="bkg_btn-close.png" hash="5438c768cd63b2476cf14418acb28709"/><file name="bkg_button.png" hash="a1bf9f994f90033e143b7e2023c0e4fb"/><file name="bkg_checkbox.png" hash="71628b28d876482b600755e577132fee"/><file name="bkg_extras.gif" hash="6b374d9759f894962259eb995a3d59f9"/><file name="bkg_info_link.png" hash="0bf3dd9b4d23c7da406fa81ccb38799e"/><file name="bkg_location-search_input.gif" hash="fcee91af0d97e50fcf698eb7485327a8"/><file name="bkg_location-selected.png" hash="efe72719a889f94f4aa24e6f6d6db8df"/><file name="bkg_location.gif" hash="937e1a367cafdcc0d4f62afb572879a1"/><file name="bkg_more-info.png" hash="3681dc9b54011dae7c81d6c4b2e74a2b"/><file name="bkg_option.gif" hash="a3b9a292d28540147bfb034060731cb3"/><file name="bkg_phonenumber_failed.png" hash="8d1a0503bfe7cdfc2e35365bba2a8f7d"/><file name="bkg_phonenumber_verify.png" hash="28f90e0364778463144004ff289d70a7"/><file name="bkg_postnl-logo.png" hash="a34b5d938234a7360e5566df9fb4273f"/><file name="bkg_postnl.png" hash="46c5f6c65f66da09b39496c7cef94e89"/><file name="bkg_radio.png" hash="3cc3ecb77e5ce62511385d59e037b398"/><file name="bkg_rwd_rate-line.png" hash="d7cc800714e0372f2bc991bc50a99ca2"/><file name="bkg_tooltip.png" hash="cbd753cc9cb873468d1bba07e70f0d2f"/><file name="bkg_tooltip_close.png" hash="6b568d6430e21e974f360f4961db9102"/><file name="ie8_bkg_transparent-white.png" hash="a603671f51cb11ed9370bcd3181741c7"/><file name="loader_default.gif" hash="9fec99d885ad6bc45aee40d1c171ca4b"/><file name="loader_mini.gif" hash="f244ab6581d4329e3dbb7e289d47dfb2"/><dir name="locations"><file name="crc_albertheijn.png" hash="57af250f9d59b9074132446e0109ee93"/><file name="crc_automaat.png" hash="e9e94287380f27f6752d89f995b1b7f4"/><file name="crc_bruna.png" hash="326912294c49e8c896a34a28a7c03127"/><file name="crc_c1000.png" hash="8628f2e6328805a84e8eac28511b6857"/><file name="crc_coop.png" hash="0250717148ab776d156371a3e0912b9e"/><file name="crc_default.png" hash="777edf1aa124f6cb13258bb510db809b"/><file name="crc_emte.png" hash="ba7841f22a08d379f1ddabbe708ffa41"/><file name="crc_gamma.png" hash="6dc0ff8b36892af40ce80a36355d311a"/><file name="crc_jumbo.png" hash="061ae156e55e3aee6130cd1beb8d1b9a"/><file name="crc_karwei.png" hash="a7b8ee695b996cb757fd5c1a98e888e4"/><file name="crc_plus.png" hash="e67e871870c87723d835db23af18d4e9"/><file name="crc_primera.png" hash="e367c1e5b3fb4e25303aff57dc1a1259"/><file name="crc_readshop.png" hash="eeef9a98c0cd68f4351154d174bfdda9"/><file name="crc_spar.png" hash="4939d469045e6c7d7e65f172d97e30b1"/><file name="crc_staples.png" hash="94136b2a8d00dfdadcad6c7088920409"/><file name="drp_albertheijn.png" hash="944b90f36d5f225fcc74d360d368e628"/><file name="drp_automaat.png" hash="ce0bd13abc5e6c647c2ac8bc0fb5c150"/><file name="drp_bruna.png" hash="feb3ea92e3d32e98edf04aa22604afe6"/><file name="drp_c1000.png" hash="9e89a865b72d182135226fc72a98e03a"/><file name="drp_coop.png" hash="ddd34926b0a306cb0b28f385a78bd972"/><file name="drp_default.png" hash="d97f2e415e54b5d9fa19893210cedbc0"/><file name="drp_emte.png" hash="34e526c095a080cf92ccf15318a56ba3"/><file name="drp_gamma.png" hash="56da28b8c2e0ad6087eb0c4408f9904c"/><file name="drp_jumbo.png" hash="f191ec9c01b807d32811d9a4f0c3ad19"/><file name="drp_karwei.png" hash="d3da2d8b7f65ddecdf13091094a8fbea"/><file name="drp_plus.png" hash="9bf96ded99d0e47b34256cdc78310754"/><file name="drp_primera.png" hash="095b1ced03087b390b96ee3d525dce7e"/><file name="drp_readshop.png" hash="d2884c0bdd81103e9319469727bc9855"/><file name="drp_spar.png" hash="9ff6bb1fc489ba714d3249c35fb01c77"/><file name="drp_staples.png" hash="2196de7813fa6db34f8b0abb1aedecd5"/><file name="tmb_albertheijn.png" hash="58ae464ff7bb420f075e53cd35d9852f"/><file name="tmb_bruna.png" hash="ff523c258b47be502b335a7e8cc5032c"/><file name="tmb_c1000.png" hash="f96136426d2a2af40ef7b76953ec58b5"/><file name="tmb_coop.png" hash="b1e41c613b1876c787e9d4d5b30ba1a5"/><file name="tmb_default.png" hash="ed65f2da1032b355422db7c86a126668"/><file name="tmb_emte.png" hash="d0e9dc8f785b8db0da8bd233a0d09a11"/><file name="tmb_gamma.png" hash="55ef36ad8aa803469e28f368b7eac536"/><file name="tmb_jumbo.png" hash="3bae16290854122b2b3439de2402c5a1"/><file name="tmb_karwei.png" hash="84e1aaceb9c0ff3864b2b7aead52e033"/><file name="tmb_plus.png" hash="fd3bf32ffb591f79935bb906249ca59e"/><file name="tmb_primera.png" hash="fb32942772b4ca57a45ee0e08406c3bc"/><file name="tmb_readshop.png" hash="6a6826139698fa20e0fd4210d17b50e2"/><file name="tmb_spar.png" hash="89694e10f073619fd944d8c2c7b9e357"/><file name="tmb_staples.png" hash="115af373105f6494c74186657ddca6a6"/></dir><file name="osc_bkg_postnl-logo.png" hash="c23e987598dcd439e54f9d48e9e4777a"/><dir name="unbranded"><file name="bkg_back_link.png" hash="5797c608687a704a935b0ff03b8d3982"/><file name="bkg_checkbox.png" hash="232ad0ec83b32af770481bb1cdd1520e"/><file name="bkg_more-info.png" hash="96a0b80b2907a28489d8d87f845d8a5f"/><file name="bkg_radio.png" hash="430bea179fc0e6570c1cca905b46454e"/><file name="bkg_tooltip_close.png" hash="eac7d71f0cb14f165b6f7af55a6c4c26"/><file name="button_action.png" hash="c297cbc6aa5c44272308b660038b363f"/><file name="button_next.png" hash="768365d31d95bb5c8b1ccebb62920a95"/><file name="loader_default.gif" hash="1645395ddefeab89f51f59b2dbcbd7c0"/><file name="loader_mini.gif" hash="2fd11016727f350b98af17fc76b3a0d3"/></dir></dir><file name="icon-tooltip.png" hash="5767601cd66b23d0b6fe8defc10dd48d"/><dir name="mijnpakket"><file name="app_buttons.png" hash="74f3a4d80dafe1a0979ce7ad0bd70824"/><file name="app_logo.png" hash="e5426bac3d0b4e28ef1f3628503c2365"/><file name="logo.png" hash="6fa95b3a5e83b6887848b5feb7369bf1"/><file name="logo_small.png" hash="c23e987598dcd439e54f9d48e9e4777a"/></dir><file name="opc-ajax-loader.gif" hash="e805ea7eca1f34c75ba0f93780d32d38"/><file name="overlay.png" hash="f08feb852288bea420ba3af68ae34a1f"/><file name="postnl_email_logo.png" hash="8bd358b514e04e7ceca03efb38f8fded"/><file name="postnl_spinner.gif" hash="cef321b68ab934932ee317986823db67"/></dir></dir></dir><dir name="js"><dir name="TIG"><dir name="PostNL"><file name="ajax.js" hash="ac8120be1ff0e421e80b14ad2617d4c1"/><file name="checkout.js" hash="e64437f55f7ccafb205a1d6f55995537"/><file name="deliveryOptions.js" hash="c96ee601cebff3606785aa7d9078daa8"/><dir name="deliveryoptions"><file name="cufon-fonts.js" hash="7605bb17619f1a55e3521a700dfe7b1a"/><file name="cufon-settings.js" hash="9bb0303049c178db309438c26f7def2c"/><file name="cufon-yui.js" hash="2d0f7f2a050cc1a9c9456d97d29f5eda"/></dir><file name="formPopulate.js" hash="668076474b61c5295f82726a3235451a"/><dir name="gomage_checkout"><file name="mijnpakketLogin.js" hash="dcc34351b834646e41a88f5d6a9e6dea"/></dir><file name="livepipe.js" hash="b9f5e38a94ce3f4f6f6ebcabca23d8c3"/><file name="mijnpakketLogin.js" hash="b7a4c400044ba8e9aefd706c0193f778"/><file name="placeholder.min.js" hash="c2824272a822d3fb8429a239e7d20c24"/><file name="postcodecheck.js" hash="864882d849033b308b29181dea7ce09c"/><file name="scrollbar.js" hash="b6780bb325e0ac78bc37e7b9d1bac863"/><file name="slider.js" hash="1679e9ff9a8d3784387040fc7cef9203"/></dir></dir></dir></dir></dir><dir name="enterprise"><dir name="default"><dir name="images"><dir name="TIG"><dir name="PostNL"><dir name="deliveryoptions"><dir name="locations"><file name="crc_albertheijn.png" hash="57af250f9d59b9074132446e0109ee93"/><file name="crc_automaat.png" hash="e9e94287380f27f6752d89f995b1b7f4"/><file name="crc_bruna.png" hash="326912294c49e8c896a34a28a7c03127"/><file name="crc_c1000.png" hash="8628f2e6328805a84e8eac28511b6857"/><file name="crc_coop.png" hash="0250717148ab776d156371a3e0912b9e"/><file name="crc_default.png" hash="777edf1aa124f6cb13258bb510db809b"/><file name="crc_emte.png" hash="ba7841f22a08d379f1ddabbe708ffa41"/><file name="crc_gamma.png" hash="6dc0ff8b36892af40ce80a36355d311a"/><file name="crc_jumbo.png" hash="061ae156e55e3aee6130cd1beb8d1b9a"/><file name="crc_karwei.png" hash="a7b8ee695b996cb757fd5c1a98e888e4"/><file name="crc_plus.png" hash="e67e871870c87723d835db23af18d4e9"/><file name="crc_primera.png" hash="e367c1e5b3fb4e25303aff57dc1a1259"/><file name="crc_readshop.png" hash="eeef9a98c0cd68f4351154d174bfdda9"/><file name="crc_spar.png" hash="4939d469045e6c7d7e65f172d97e30b1"/><file name="crc_staples.png" hash="94136b2a8d00dfdadcad6c7088920409"/><file name="drp_albertheijn.png" hash="944b90f36d5f225fcc74d360d368e628"/><file name="drp_automaat.png" hash="ce0bd13abc5e6c647c2ac8bc0fb5c150"/><file name="drp_bruna.png" hash="feb3ea92e3d32e98edf04aa22604afe6"/><file name="drp_c1000.png" hash="9e89a865b72d182135226fc72a98e03a"/><file name="drp_coop.png" hash="ddd34926b0a306cb0b28f385a78bd972"/><file name="drp_default.png" hash="d97f2e415e54b5d9fa19893210cedbc0"/><file name="drp_emte.png" hash="34e526c095a080cf92ccf15318a56ba3"/><file name="drp_gamma.png" hash="56da28b8c2e0ad6087eb0c4408f9904c"/><file name="drp_jumbo.png" hash="f191ec9c01b807d32811d9a4f0c3ad19"/><file name="drp_karwei.png" hash="d3da2d8b7f65ddecdf13091094a8fbea"/><file name="drp_plus.png" hash="9bf96ded99d0e47b34256cdc78310754"/><file name="drp_primera.png" hash="095b1ced03087b390b96ee3d525dce7e"/><file name="drp_readshop.png" hash="d2884c0bdd81103e9319469727bc9855"/><file name="drp_spar.png" hash="9ff6bb1fc489ba714d3249c35fb01c77"/><file name="drp_staples.png" hash="2196de7813fa6db34f8b0abb1aedecd5"/><file name="tmb_albertheijn.png" hash="58ae464ff7bb420f075e53cd35d9852f"/><file name="tmb_bruna.png" hash="ff523c258b47be502b335a7e8cc5032c"/><file name="tmb_c1000.png" hash="f96136426d2a2af40ef7b76953ec58b5"/><file name="tmb_coop.png" hash="b1e41c613b1876c787e9d4d5b30ba1a5"/><file name="tmb_default.png" hash="ed65f2da1032b355422db7c86a126668"/><file name="tmb_emte.png" hash="d0e9dc8f785b8db0da8bd233a0d09a11"/><file name="tmb_gamma.png" hash="55ef36ad8aa803469e28f368b7eac536"/><file name="tmb_jumbo.png" hash="3bae16290854122b2b3439de2402c5a1"/><file name="tmb_karwei.png" hash="84e1aaceb9c0ff3864b2b7aead52e033"/><file name="tmb_plus.png" hash="fd3bf32ffb591f79935bb906249ca59e"/><file name="tmb_primera.png" hash="fb32942772b4ca57a45ee0e08406c3bc"/><file name="tmb_readshop.png" hash="6a6826139698fa20e0fd4210d17b50e2"/><file name="tmb_spar.png" hash="89694e10f073619fd944d8c2c7b9e357"/><file name="tmb_staples.png" hash="115af373105f6494c74186657ddca6a6"/><file name="tmp_maps.jpg" hash="c8d8e93fe427b236489b2904e276e124"/></dir></dir><file name="opc-ajax-loader.gif" hash="e805ea7eca1f34c75ba0f93780d32d38"/><file name="overlay.png" hash="f08feb852288bea420ba3af68ae34a1f"/><file name="postnl_spinner.gif" hash="c97d0bd9ccc8fa0b460c07caeb63c293"/></dir></dir></dir><dir name="css"><dir name="TIG"><dir name="PostNL"><file name="cart.css" hash="4f8b417defed03e6ae8c4ec292b2e2c3"/><file name="postcodecheck.css" hash="dcc017ca8f6b882c8dd8127ab5eea42a"/></dir></dir></dir></dir></dir><dir name="rwd"><dir name="default"><dir name="css"><dir name="TIG"><dir name="PostNL"><file name="rwd.css" hash="4d14fe3ff05c4bf41a5161b113b15767"/><file name="rwd_osc.css" hash="d3b7cc449980f3dba097db6127a45f0c"/></dir></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="css"><dir name="TIG"><dir name="PostNL"><file name="shipping_status.css" hash="d70f88078aa443807d249b3bf51320bf"/><file name="styles.css" hash="99c3298ef947a3e2d4a8aec7c88248cd"/><file name="system_config_edit.css" hash="103eaeae2d9e2a4a43b48a83ea7f2dad"/><file name="system_config_edit_postnl.css" hash="d25851e44a1d5c9beff046c2c0450ad0"/><file name="system_config_edit_postnl_magento16.css" hash="f9a8479639e2fe8d0da9cf602b1607c3"/></dir></dir></dir><dir name="images"><dir name="TIG"><dir name="PostNL"><file name="bkg_progress_grey.png" hash="8d4d5144292b98a23475367ede717b17"/><file name="bkg_progress_grey_begin.png" hash="6815c9264e78f8f9d2805c595f8800c4"/><file name="bkg_progress_grey_end.png" hash="dae90fdb38adf65e6ccc209b6a80372c"/><file name="bkg_progress_grey_seperator.png" hash="10178e12fd14fb783b4ae0fbd55a4a81"/><file name="bkg_progress_orange.png" hash="8a59f76e36ee0492f5341b8e5e7ee79b"/><file name="bkg_progress_orange_begin.png" hash="ecc84d5252e397f4a783ee7e0c426d63"/><file name="bkg_progress_orange_end.png" hash="d0a81dfea1a3eddc699482a62af01fc9"/><file name="bkg_progress_orange_grey_seperator.png" hash="ab558953ec4c40ef44653ab481084345"/><file name="bkg_progress_orange_seperator.png" hash="a774eb89763d95f2e60d03f8702fba86"/><file name="bkg_progress_sprite.png" hash="3230379a4544f85062a6ba91fa8083e2"/><file name="bkg_progress_sprite_reverse.png" hash="c27c9ac49dd3c82f6351307d7b63f36a"/><file name="bkg_tooltip.png" hash="56cfed3ed8a65b19f8de88946d1a0a01"/><file name="btn_download_icon.png" hash="142d5ebbe43ad09dde97cd32e1ef4303"/><file name="glyph_error.gif" hash="a138b803d772f552aa2e49e1c506edbd"/><file name="glyph_go.png" hash="343996189e35c6685b90993b43059ecd"/><file name="glyph_info.gif" hash="40f72d28be63ecf2b6ef44c7ea730104"/><file name="glyph_manual.png" hash="771db63b6ffc9de1c06da564796adc6e"/><file name="glyph_pdf.png" hash="a5ea929f4014a88d7320d0293913ace3"/><file name="glyph_success.gif" hash="465a056a3ba3d94367f51c3c0b751391"/><file name="glyph_warning.gif" hash="fa817cb6d49efb9855942ef2b739fc6c"/><file name="icon-tooltip.png" hash="5767601cd66b23d0b6fe8defc10dd48d"/><file name="legend.gif" hash="d8fb0642901868d489d31b426f3e3406"/><file name="loader_default.gif" hash="9fec99d885ad6bc45aee40d1c171ca4b"/><file name="logo_postnl.png" hash="10b9ae4ad2c5365312c257dcdac1fc64"/><file name="tig_logo_medium.gif" hash="3e1071908cfdb7b472438482c3331ac7"/></dir></dir></dir><dir name="js"><dir name="TIG"><dir name="PostNL"><file name="configuration.js" hash="6ca6c63dddc579f825ae0a3214a7d59d"/><file name="form.js" hash="4586e90d9f3a1c96531fc9f19c0901d0"/><file name="mass_action_filter.js" hash="7005d1ecd9a6c1e16d14a2aa3cb0b11c"/><file name="validate.js" hash="84a9bc86137c3d2dd488eee8bd2e3fc9"/></dir></dir></dir></dir></dir></dir></target><target name="magelib"><dir name="TIG"><dir name="PostNL"><dir name="Fpdf"><dir name="font"><file name="courier.php" hash="ca6fb483549604fb4a675f9e28a73b02"/><file name="courierb.php" hash="a58d7dadf3cf564ca5d5138cea76a3a9"/><file name="courierbi.php" hash="c0e416771dc56cb2397390978d112dc2"/><file name="courieri.php" hash="419961dbeeb20f08da780dccb427dec8"/><file name="helvetica.php" hash="fc53162b924ddd522bd6cfe86fab48f4"/><file name="helveticab.php" hash="4e9ffda682a131fef2e04ccd94aa342d"/><file name="helveticabi.php" hash="6db8943bd91bf13514b82872cf160d45"/><file name="helveticai.php" hash="13b795df0c33eb93c48621792f2ea12d"/><file name="symbol.php" hash="fbd9250c21af99f6398d6f817511f91f"/><file name="times.php" hash="82bc100f1f3bd8b2d9b7fb5ee8f44b3a"/><file name="timesb.php" hash="3a241a1658bf9ea2062e63f464166c31"/><file name="timesbi.php" hash="bfdd0235a71793becefff778c2b16243"/><file name="timesi.php" hash="17fd69f176915a2113fe28057b43a75e"/><file name="zapfdingbats.php" hash="2848ab2daf3128f310b5cf713ca4acee"/></dir><file name="fpdf.css" hash="84befac49464a9aac54aa511bc1fd754"/><file name="fpdf.php" hash="4ebda2283504bfd34b85753433d7e098"/><file name="helvetica.php" hash="fc53162b924ddd522bd6cfe86fab48f4"/><file name="license.txt" hash="fb784726cfe3615da38bc23a3cac445b"/></dir><file name="Fpdf.php" hash="b98f822c8de60fd72c82bd15c92c5a9a"/><dir name="Fpdi"><dir name="filters"><file name="FilterASCII85.php" hash="c6b756ac5874cc6f6f986349b605af64"/><file name="FilterASCII85_FPDI.php" hash="1240e0c64602864401f886546e09fe7b"/><file name="FilterLZW.php" hash="fcba53a4dd3a1f78e62c7aeac726c7b5"/><file name="FilterLZW_FPDI.php" hash="b11c50e66e20744ad20f176cae4af284"/></dir><file name="fpdf_tpl.php" hash="3966b13c398c94509e2fb6199593b104"/><file name="fpdi.php" hash="abb524d17a2cbdd3c3b7e89184aad443"/><file name="fpdi2tcpdf_bridge.php" hash="bcc317cbcfdd3faeae4a1eb480bded0f"/><file name="fpdi_pdf_parser.php" hash="d7a3bf0153ae9ad57976afb0be5d195d"/><file name="pdf_context.php" hash="0b69a25dbb830f3b68c054c2e43b876e"/><file name="pdf_parser.php" hash="5ff22a8c1ce5b1eee82c8017311a797e"/></dir><file name="Fpdi.php" hash="10e45da64b0e05274dc183680fc41988"/></dir></dir></target><target name="magelocale"><dir name="en_US"><dir name="template"><dir name="email"><dir name="TIG"><dir name="PostNL"><file name="return_label.html" hash="dd2ad306d092b7dd481a0a972733f8bb"/><file name="track_and_trace.html" hash="b77871334fc82d5811954024b3f8058d"/></dir></dir></dir></dir><file name="TIG_PostNL.csv" hash="7fb6b9a7563a703496927ebc3b318f64"/></dir><dir name="nl_NL"><dir name="template"><dir name="email"><dir name="TIG"><dir name="PostNL"><file name="return_label.html" hash="cd54d668b8e1958cb50aa7abf1bc280b"/><file name="track_and_trace.html" hash="cd179f991f38cd735c834abdaa40e1a8"/></dir></dir></dir></dir><file name="TIG_PostNL.csv" hash="5022fd15017db2c08c48fbeaa3a68659"/></dir></target><target name="magecommunity"><dir name="TIG"><dir name="PostNL"><dir name="Block"><dir name="AddressValidation"><dir name="GoMage"><dir name="LightCheckout"><file name="Billing.php" hash="9e4dd285bcccdc2c09a98703df8aba8b"/><file name="Shipping.php" hash="f31e5927754e233953f5ee63e3b79fa0"/></dir></dir></dir><dir name="Adminhtml"><dir name="Carrier"><dir name="Postnl"><dir name="Matrixrate"><file name="Grid.php" hash="719cae84112c3c136655489c3491f8d4"/></dir><dir name="Tablerate"><file name="Grid.php" hash="d4047c8f409212e53ad26edd32bf1f80"/></dir></dir></dir><file name="CronNotification.php" hash="8cee9172939b14a2ccea91f848e77a98"/><file name="IntegrityNotification.php" hash="e6975cdea227b1bc901b4a8b6713bd7c"/><file name="LogNotification.php" hash="924dd0bc38a4a9f09294983cce277efa"/><dir name="Sales"><dir name="Items"><dir name="Column"><file name="Qty.php" hash="053e31cba3678520d680772658580f29"/></dir></dir><dir name="Order"><dir name="Create"><dir name="Totals"><file name="CodFee.php" hash="0911e98f34deef84a130b75c6cee2d51"/></dir></dir><dir name="Creditmemo"><dir name="Create"><file name="CodFee.php" hash="465960a4fd4fe538f8933f6571bdea77"/></dir><dir name="Totals"><file name="CodFee.php" hash="464b958112dec88a08daf3c2f72fdc28"/></dir></dir><dir name="Invoice"><dir name="Totals"><file name="CodFee.php" hash="f92fd67e68d2cc83f3352272365f3ca9"/></dir></dir><file name="ProductOptions.php" hash="50183056ec5ea51bcad55333f65ae32b"/><dir name="Shipment"><dir name="Create"><file name="ShipmentOptions.php" hash="91f24bde0df7a8a45c1e2dd98a9ad117"/></dir><dir name="View"><file name="DeliveryOptions.php" hash="a5ed94f4b9439ece2ce189b4777f0dc2"/><file name="ShippingStatus.php" hash="fce062abeff245502b4b1aa438e36e7d"/><dir name="Tab"><file name="StatusHistory.php" hash="47dc64f36b6d0b35acb566ef95f31a5e"/></dir><file name="Tabs.php" hash="c1eb937b012a2637bb7603f417d9871d"/></dir></dir><dir name="Totals"><file name="CodFee.php" hash="36e884e30294dafaf7cf51d6708e33ee"/></dir><dir name="View"><file name="DeliveryOptions.php" hash="9072fbbefe20200872657d9c4ce5bb36"/></dir></dir><dir name="Returns"><file name="Grid.php" hash="83ab4d837a004861dbfc02b3a1254336"/></dir><file name="Returns.php" hash="8ddbe0855ea557f1f00236fc88c05aae"/></dir><dir name="System"><dir name="Config"><dir name="Form"><dir name="Field"><file name="ActivateButton.php" hash="7accd8c5dece4046b3071250bb976611"/><file name="ActivatedFieldHeader.php" hash="7cd9c3263bc1c6bb88605073bddef3da"/><file name="AddressLines.php" hash="8f0b66d4ac316e3befa3b6253a2acafc"/><file name="Anchor.php" hash="5a20dca71190d8a273425474691c43c1"/><file name="Checkbox.php" hash="124a56f6a5047be8c034fef881c17d03"/><file name="ConfigCheck.php" hash="90cff6426c543dc3d4b0148282754a7a"/><file name="GoMageDeliveryDateConflicts.php" hash="98a8224382e4d3d67675b145b8e6e8e0"/><file name="Hidden.php" hash="0f8e59d81547beed78b764fd97370c70"/><file name="HourMinute.php" hash="4ebd99406f97313083391348c836098e"/><file name="InfoBox.php" hash="1edb3b7e27ca9655c239852a3a66ae0b"/><file name="MatrixrateExport.php" hash="fcb42e762d54acbc172bbf57d1cf214d"/><file name="MatrixrateImport.php" hash="9aaa4ffccfadde72e1a2df9b47a49671"/><file name="Obscure.php" hash="c4ca2e1e738116be5877582212a024f3"/><file name="PackingSlipItemColumns.php" hash="6ac4aed9b10fef8e42150b51df447964"/><file name="PostcodeNlExtensionActive.php" hash="e82cf0a6b545892fb9f23ab37d6fbd90"/><file name="Radios.php" hash="57fe1ef1a58b5702e49b891ad02ae3fc"/><file name="SplitAddressCheck.php" hash="18b4ac122fdbb436c124e7be5453eddd"/><file name="SupportTab.php" hash="edec65cf3bd2c0e7ec6f472ac6cf104e"/><file name="TablerateExport.php" hash="7410838cefe383b3f536174287fe0b35"/><file name="TablerateImport.php" hash="8ef2c6b824a8980f7f8c2b3867c048bf"/><dir name="TextBox"><file name="Abstract.php" hash="79a86dc5182b44267fdf289e0afcc50f"/></dir><dir name="Tooltip"><file name="HourMinute.php" hash="49afc832ba943ae68721287a0cec17d9"/></dir><file name="UninstallButton.php" hash="7aabfcb10cd6293b523800083f6dde3a"/><file name="ValidateButton.php" hash="2e807c355c09975ebdcecc95b3122051"/><file name="WarningBox.php" hash="d10d2b6ac7a48fd2b23e098c4e42a1e5"/><file name="WizardSaveButton.php" hash="c3092c8e2ec3217b0e2c64759052a913"/></dir><file name="Fieldset.php" hash="60e2cde58df3bf31c512d3cddecbd7b8"/></dir><file name="Form.php" hash="92fac83e7c94f90ae629d3c0b6f4079d"/><file name="Js.php" hash="47ca98b1d722819ba66c25b65d0bb636"/></dir></dir><file name="Template.php" hash="698d5aba71928360810108ca499f5d46"/><file name="UpgradeNotification.php" hash="3c345025f1dc2baf1c2703339adedee4"/><dir name="Widget"><dir name="Form"><dir name="Element"><file name="Dependence.php" hash="0fa5334c0d152c8500270c11f833548a"/></dir></dir><dir name="Grid"><dir name="Column"><dir name="Filter"><file name="ConfirmDate.php" hash="de9c6cd4eb3b442631538e4760f9be49"/></dir><dir name="Renderer"><file name="Action.php" hash="257b595de0ae5d7a472c79dffba1b2b4"/><file name="Barcode.php" hash="2e87137f14a4c9ed6f0352b76c0cec68"/><file name="ConfirmDate.php" hash="0b95dc92c7ca017cc0f0ce1624465b16"/><file name="ConfirmStatus.php" hash="76c2c59218a7d970aff1db1645c34173"/><file name="CountryArray.php" hash="e49b3b0de079392f59a3676879cffc72"/><file name="DeliveryDate.php" hash="4050c877c64a6a24ac0a4267fecdcf84"/><file name="OrderConfirmDate.php" hash="1395566110233ede6fb8029710e81cb3"/><file name="OrderConfirmStatus.php" hash="baff31b5b2187eb4f45261f6dc2dd98b"/><file name="OrderType.php" hash="b7af6183f916458253db6c714f5ac705"/><file name="ReturnView.php" hash="860941d6a0eac21cc904aa4ed80f1255"/><file name="ShipmentType.php" hash="2589ca78f7f5e4a6a5ca17332c65b646"/><file name="ShippingDescription.php" hash="ccfc24586ed0a5d050173cb7f807f4c7"/><file name="ShippingPhase.php" hash="17bea1345fbad0c6fc0dd0ee8aa9ae42"/><file name="Time.php" hash="380060629ddf255f88f6c7df8532ab8f"/><file name="Translate.php" hash="71a7a828f7c150d03e06be8da97ce0c5"/><dir name="Type"><file name="Abstract.php" hash="d4d7cae85ff5236a8015c140c1ab349b"/></dir><file name="YesNo.php" hash="0363dd1204d921d715abff853cf38018"/></dir></dir><dir name="Massaction"><dir name="Item"><dir name="Additional"><file name="LabelStartPos.php" hash="e4f5e368259942adb21b1d9acd241bbf"/><file name="ProductOptions.php" hash="5fb0ac3b749d121d48a90d8b443bc628"/></dir></dir></dir></dir></dir><file name="WindowsTheme.php" hash="32aa198b04a15db89e2d85e8fdb366a5"/></dir><dir name="Checkout"><dir name="Cart"><file name="CheckoutLink.php" hash="95962909faf4ceda468c590dd739d12d"/><file name="Js.php" hash="ae3f3270dbfbe73c7b62e22d289fecc4"/></dir><file name="Summary.php" hash="f29a603b634270c755d9fbb51285bb26"/></dir><dir name="Core"><file name="JsTranslate.php" hash="e5e5c1e1945dde3289e558019afcbf9f"/><dir name="Order"><dir name="Returns"><file name="Info.php" hash="8890bc0b803aa27e0390eb0e5bd04f93"/><dir name="Shipment"><file name="Items.php" hash="227aed060faaa753c8bbac4b4b7ef104"/></dir></dir></dir><file name="ShippingStatus.php" hash="00807b7434dadcb81577a0ec9e406f1f"/><file name="Template.php" hash="9fd7d22e913b32c7c79d3f2353714765"/></dir><dir name="DeliveryOptions"><dir name="Checkout"><file name="AddPhoneNumber.php" hash="487d5e0279d440ecb6872712c7bf0bf6"/><file name="DeliveryOptions.php" hash="677c75d9348fc244e060df5ad9a2b088"/><dir name="GoMage"><dir name="LightCheckout"><file name="DeliveryOptions.php" hash="33bc90994ed38e73c893702bf2983cd0"/></dir></dir><file name="Progress.php" hash="ee6b2a989f34c1fbd2888f454e46bd6f"/></dir><file name="Js.php" hash="bf77280545d90b8a8f92c57c275b2b6f"/><file name="PickupNotification.php" hash="517caea38f64e87659db08bd33c23b8f"/><file name="Template.php" hash="4a6119be5cde91551052685e59cac196"/><file name="Theme.php" hash="079727a91336d7ee1730daf2187c5a6b"/></dir><dir name="Mijnpakket"><file name="AccountNotification.php" hash="07165d887a985850fbc5b7feaf153d64"/><file name="Js.php" hash="325d49fd161c9b2f6d2aed7b8e26a226"/><file name="LoginButton.php" hash="9b0cb9bbe39943c9a697ba48cbcca03e"/><file name="OrderSuccessJs.php" hash="6184a29c169e32ea435d29179a6a0a61"/></dir><dir name="Payment"><dir name="Checkout"><dir name="Total"><file name="CodFee.php" hash="58c8b076ab42f123dfdd1d62f87a880a"/></dir></dir><dir name="Form"><file name="Cod.php" hash="8830e5ca6c5141f36e5b043e2af8e130"/></dir><file name="Info.php" hash="9c8a8e8eb81459220bf8730f1a01a5ee"/><dir name="Sales"><dir name="Order"><dir name="Creditmemo"><dir name="Totals"><file name="CodFee.php" hash="45dba926b63c26ea2d10eaa9342fa126"/></dir></dir><dir name="Invoice"><dir name="Totals"><file name="CodFee.php" hash="15b6052badbd7cddab9bbf0cf3f28385"/></dir></dir><dir name="Totals"><file name="CodFee.php" hash="60305f5d74bc7a5f70919b0810f5db83"/></dir></dir></dir></dir></dir><dir name="controllers"><file name="AddressValidationController.php" hash="f0cbb3c5eb7a06a7df87b46f12340f7e"/><dir name="Adminhtml"><file name="ConfigController.php" hash="d67fe9a4c448704673eb6c8396dff3f0"/><file name="ExtensionControlController.php" hash="45eb48588aa1eba5bfe696eea3167616"/><file name="ReturnsController.php" hash="2cb516144dfc99c8c01df9f2081456a4"/><file name="ShipmentController.php" hash="594e37333db3e0a83cde03f88a077cab"/></dir><file name="CheckoutController.php" hash="3cf67af615d9248e3a4c36b3a81aac0f"/><file name="DeliveryOptionsController.php" hash="4cc5908243e477bbe226c03d827e8006"/><file name="GuestController.php" hash="b1fd41520eb6233ea8a592f3ad7f8960"/><file name="MijnpakketController.php" hash="cb21ac1e4a9bd9add17c726e8a4fc8c5"/><file name="OrderController.php" hash="169571ea271e3e8627417cd424265b6f"/></dir><dir name="data"><dir name="postnl_setup"><file name="data-install-1.0.0.php" hash="0f6e51ffdb05c34ee375caa6ed04330a"/><file name="data-install-1.0.3.php" hash="e810f0490e9addecdff1e147038505cf"/><file name="data-install-1.1.4.php" hash="679d2f5045221c9e4a5739ceea6aea5d"/><file name="data-install-1.3.0.php" hash="acb1dba6ea2f9d20fab54f4da8d01b1d"/><file name="data-install-1.4.0.php" hash="aa25ceff90a870a56f91b1e1e1535748"/><file name="data-install-1.4.1.php" hash="aa25ceff90a870a56f91b1e1e1535748"/><file name="data-install-1.5.0.php" hash="f6b92b1e6580b4d27ae59bdaa266f12b"/><file name="data-uninstall-1.5.2.php" hash="06f5dfbf702dff758fa633b26342a7db"/><file name="data-upgrade-1.1.5-1.2.0.php" hash="d42917000f883909039da268d072f12e"/><file name="data-upgrade-1.2.2-1.3.0.php" hash="081f4fe0da30d8d1f17243044788d891"/><file name="data-upgrade-1.2.2-1.4.0.php" hash="ca609ef0963d214fdc73c2c683b6338d"/><file name="data-upgrade-1.3.1-1.4.0.php" hash="3adec6e1e180139c8736c0e38e3d64d0"/><file name="data-upgrade-1.4.0-1.4.1.php" hash="cc24dfba809a3258814cf736ace125c7"/><file name="data-upgrade-1.4.1-1.5.0.php" hash="07add30edfd0134bc5a1c9c3cc714463"/><file name="data-upgrade-1.5.1-1.5.2.php" hash="0a1c7ca7b337f718b2c94ffe6fd9e31d"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="c70746df6a0f988326d1b7f30fa8451d"/><file name="api.xml" hash="06c70ddaedf5f1d80e5f00fed36861b9"/><file name="config.xml" hash="47bb92d32fdb439ce74898d21e81c20c"/><file name="jstranslator.xml" hash="dabeeda934aa6764d6ba60f08b67bead"/><file name="logging.xml" hash="04c82fc7390fe3a2547834f6e52b6777"/><file name="system.xml" hash="90e59d2bacb4bfdc61cc98f5322ef839"/><file name="wsdl.xml" hash="21b79f48351ea629cff7d17c8f65c4ee"/><file name="wsi.xml" hash="ac2aada1c17a03519e02fa7ef93e49ca"/></dir><dir name="Helper"><file name="AddressValidation.php" hash="ba4945afa4f4dc1c33e7efdf87b74fe6"/><file name="Adminhtml.php" hash="948ab2c69eaf1097a52c2a9d5ab44852"/><file name="Carrier.php" hash="87c24e56fdad60275cf477ad15012fab"/><file name="Checkout.php" hash="d4d9c0ad29b2196d78d33e716536d9c8"/><file name="Cif.php" hash="7602f19ed1da791ecadab8f840b23eed"/><file name="Data.php" hash="8832b8bf2caa1659ecda3edca2e1266e"/><file name="DeliveryOptions.php" hash="6c3cbd6710e1c76d0b225752eede4c9f"/><file name="Mijnpakket.php" hash="4e2868c2420ed3ae04f6aa39f1491fd6"/><file name="Parcelware.php" hash="186b41ea5ff5f95f27eee2bdcdc2e554"/><file name="Payment.php" hash="654932a980a34c58fd5b5854ebbf13a8"/><file name="Webservices.php" hash="ed9834c4bb7afa088701c894590e40eb"/></dir><dir name="Model"><dir name="AddressValidation"><dir name="Cendris"><file name="Abstract.php" hash="50c033ec698cede75909218c10407a51"/></dir><file name="Cendris.php" hash="e1f6c7f6b2a3cba3cc7b0202b1112588"/><dir name="Observer"><file name="AddressBook.php" hash="500df77a7d02b3e2beab105f70491d29"/><file name="OneStepCheckout.php" hash="881144684006dee7fd19f3a1ceafda0e"/><file name="Onepage.php" hash="15dce59c220b464341341d9607c7a15b"/></dir><dir name="System"><dir name="Config"><dir name="Backend"><file name="ValidateAccount.php" hash="93e274a7a9d51d180eebcf534c3278ae"/></dir></dir></dir></dir><dir name="Admin"><file name="Inbox.php" hash="ec5296dc861d31e076f68e15f50b8fa3"/><dir name="Logging"><dir name="Handler"><file name="Postnl.php" hash="8d4084fb026faf90aa92db70f014d3f8"/></dir><file name="Observer.php" hash="e510d279768c5c884c112dc1415854c6"/></dir></dir><dir name="Adminhtml"><dir name="Form"><dir name="Element"><file name="Checkbox.php" hash="1d1d599f8f77e689cd99b0a56406c658"/></dir></dir><dir name="Observer"><file name="OrderGrid.php" hash="09c3c19008142fdfc9d46d708ca2ab4f"/><file name="ShipmentGrid.php" hash="b42a8d3b1a6773dd68f680d16d197b95"/><file name="ShipmentView.php" hash="8134f9f098c445c7de572f87030ce7dd"/><file name="SystemConfig.php" hash="f27d4726c82f84512e1887073a2c6cba"/></dir><dir name="Support"><file name="Logs.php" hash="9015b88009cd9fe4272f7e1c515a3c1e"/></dir><dir name="System"><dir name="Config"><dir name="Source"><file name="OrderGridColumns.php" hash="43b606fb5126a37deb932323776ed018"/><file name="OrderGridMassaction.php" hash="fbe0d93e489c33dee7ac78e2b46f71ce"/><file name="ShipmentGridColumns.php" hash="0f454ed444c2b336b679851ba4628315"/><file name="ShipmentGridMassaction.php" hash="cc0020d8889bd2b3b882e1239ca3a5d3"/></dir></dir></dir></dir><dir name="Carrier"><file name="Matrixrate.php" hash="06770348fd20799930fde401f4f13f36"/><file name="Postnl.php" hash="2b3b4fdfb082875f1733710ce19ef87c"/><dir name="Quote"><dir name="Address"><dir name="Total"><file name="Shipping.php" hash="ee3ca199b46c13f6f89540b67813db1f"/></dir></dir></dir><dir name="Resource"><dir name="Matrixrate"><file name="Collection.php" hash="2a1c138a047d05d8e6c60ab6f72b7513"/></dir><file name="Matrixrate.php" hash="32521fef38856bd278e007106a8302f8"/><dir name="Tablerate"><file name="Collection.php" hash="6e88398632a25d1e2764077baeb2bc34"/></dir><file name="Tablerate.php" hash="0c1accf31df8fea3b5957c3ec153e04e"/></dir><dir name="System"><dir name="Config"><dir name="Backend"><file name="Matrixrate.php" hash="b577a98aaf72c2d257b70c90fe3359b7"/><file name="Tablerate.php" hash="350d5ad8dbc4642c57ce43f09b2f0abb"/></dir><dir name="Source"><file name="RateType.php" hash="bf48a14786d0c082c77e5030569e722e"/><file name="TablerateSource.php" hash="c6db35abf67e414753170899e6a32574"/></dir></dir></dir><file name="Tablerate.php" hash="f04830fdd0204e77fd3722a3126e053f"/></dir><dir name="Checkout"><file name="Cif.php" hash="7ccfe830d1014b72dcc4cde189ababeb"/><dir name="Observer"><file name="Order.php" hash="9bc4e68ff3aa044d354a8cfd7c6d2973"/><file name="Shipment.php" hash="d1476ec8b026526652944578f3cdc6e0"/></dir><file name="Order.php" hash="4a6595b1d38ee5e9bb59121217c7d7ec"/><file name="Service.php" hash="643115d26dd7d0fbb0403201821a0d22"/><dir name="System"><dir name="Config"><dir name="Source"><file name="ActivePaymentMethods.php" hash="25641b223a79ae37ef3748b5bcb8ff10"/><file name="CmsPage.php" hash="9fc61473b5b3ad4692c694b0090020d0"/></dir></dir></dir></dir><dir name="Core"><dir name="Api"><file name="V2.php" hash="fcc859d18412537c16dd5a05048fe389"/></dir><file name="Api.php" hash="5713490c5a033f2feb92944cbe710643"/><file name="Cache.php" hash="8ead90582b3fc194dbf47b26a337bebf"/><dir name="Cif"><file name="Abstract.php" hash="0a153e5528029d7ab14c7c3d2bbadb69"/><file name="Exception.php" hash="bc208a7f87f76017f95367791b5a757a"/></dir><file name="Cif.php" hash="762e265fd745e5f5c5c017a76fa0004f"/><file name="Label.php" hash="ffcc5905e8da72c7f98d97f64f8f8be8"/><dir name="Observer"><file name="Barcode.php" hash="ad88f42dae63a5026175ad48c9867496"/><file name="Cache.php" hash="069ebcbb34d8374da85f5215dd62b64c"/><file name="Cron.php" hash="a9336918fafc5f021dfce1e4d94645f4"/><file name="Returns.php" hash="615e291be056343d1b6c2315973ef923"/><file name="SaveShipment.php" hash="a5d68c8d535bd223446eb266be27c64c"/></dir><file name="Order.php" hash="a5800d45f2d7c847bf5bf04a5b7c8bf1"/><file name="PackingSlip.php" hash="8ed61657da450aafa3a1224d06ad75f8"/><dir name="Packingslip"><dir name="Pdf"><dir name="Items"><dir name="Invoice"><file name="Default.php" hash="28d011ffb81a924a5c3f9f7fd59cf3e5"/></dir></dir></dir></dir><dir name="Resource"><dir name="Integrity"><file name="Collection.php" hash="801fef1fa85ce429ad6a183c047d2f30"/></dir><file name="Integrity.php" hash="02fda656ed92340c0cd9ed04cdf4e021"/><dir name="Order"><file name="Collection.php" hash="7833da8c9b02253fa34b3a7f0dfac065"/></dir><file name="Order.php" hash="dc95e51a1246ab1c11edc208fc7033b1"/><dir name="Shipment"><dir name="Barcode"><file name="Collection.php" hash="5b52ea9f06abffc9d3f43a102faf9b66"/></dir><file name="Barcode.php" hash="866e9b9fba53b6b92b91cdee9f54be9d"/><file name="Collection.php" hash="5615baafe4dd845657ad770b9bd20960"/><dir name="Label"><file name="Collection.php" hash="a1db2bb6a3c928a8e5b3ab369a46e49d"/></dir><file name="Label.php" hash="0fb2575b876d9afa43506ef673a07890"/><dir name="Status"><dir name="History"><file name="Collection.php" hash="2a7f814cf8272411106b82290dbe986a"/></dir><file name="History.php" hash="e0b88660d2f70dbb64931267e356887f"/></dir></dir><file name="Shipment.php" hash="aed109e5357ab39a8b787da35cd8adf1"/></dir><dir name="Service"><file name="IntegrityCheck.php" hash="8018c9670c0628cbcffb5a016d69024e"/><file name="InvoiceDummy.php" hash="44685782fb45d538e52fa55af499a98d"/><file name="OrderDummy.php" hash="692f3dbd80474a91e94260b2d7a36093"/><file name="PaymentDummy.php" hash="cbf5cc5602001b04773cbca56638f6ff"/><file name="PaymentMethodDummy.php" hash="fb6c9d1ff9476a7837b12bb2b182deab"/><file name="Shipment.php" hash="02fb6e18609f67cf80571918f6f1441e"/></dir><file name="Service.php" hash="efbc3d15489140ca6467601470bc2677"/><dir name="Shipment"><file name="Barcode.php" hash="6e8145aa9a5d3eb277fb8045f7221554"/><file name="Label.php" hash="c6b66bc313cbf12df5dd03f2030957c3"/><file name="Process.php" hash="dfc7ca384ec53e190d030c77c09ac77c"/><dir name="Status"><file name="History.php" hash="4eb1d2b51250ed211c8d9a3daee7eab5"/></dir></dir><file name="Shipment.php" hash="707ce5afb62c3baa3fed27a2773a7409"/><dir name="System"><dir name="Config"><dir name="Backend"><file name="HourMinute.php" hash="554a64b90a144a2befd5b08910415fe8"/><dir name="Image"><file name="Pdf.php" hash="4bea24f4e50dbed7656cbb16a026b030"/></dir><file name="ValidateDefaultOption.php" hash="13fd85e0856fa4727dd8fd48280497bb"/></dir><dir name="Source"><file name="AllProductOptions.php" hash="1ba913d9cdf405564039ea8b599d66c5"/><file name="Attributes.php" hash="2473c5ea43dc870d0fc8c9ca65ce114f"/><file name="BuspakjeProductOptions.php" hash="61160df0a489706d8aaf667824a4667a"/><file name="CheckoutExtensions.php" hash="11a6a8677dc17953aad9bed4d3255e9e"/><file name="CommentType.php" hash="45f7d07778d18d65985aa27a96bc6435"/><file name="CutOffTime.php" hash="81cee271d87bcfea0e00743a8c0890d8"/><file name="DebugMode.php" hash="523dcaf9a609ac98394fd2b2c08d671f"/><file name="Direction.php" hash="311ab3017a41f2e2b74546f908580e1d"/><file name="EuProductOptions.php" hash="82b22e6dd7216b906ddd75acf1455cd8"/><file name="GlobalProductOptions.php" hash="55a47c89eb97f2818d197c15fd8f75da"/><file name="GlobalpackShipmentType.php" hash="671b24f7531e28a5bdcdae6af132c0a6"/><file name="HourMinute.php" hash="94a06e8e207905706a1dc5f659d1763a"/><file name="LabelSize.php" hash="47c7df3c8be3c4cbc18a9ef3657bfa80"/><file name="ManualAutomatic.php" hash="33e2dc23ad7c1cec65ed399eb503ae2c"/><file name="PackingSlipItemFields.php" hash="8996461b8aa59c4ca4f665f6efc0046b"/><file name="PackingSlipLabel.php" hash="79671ca1c255f5fbdf775598f30a4b7a"/><file name="PakjeGemakProductOptions.php" hash="8ac50f9b9fc670f1112e126f6ce3628a"/><file name="PakketautomaatProductOptions.php" hash="21fd7ca0391391ec70646e8210d0d9b3"/><dir name="ProductOptions"><file name="Abstract.php" hash="eded4e82cb6d2b297a2d97f2bf978b12"/></dir><file name="ReferenceType.php" hash="4f404910f2989464e5b107e15be0c0eb"/><file name="ShippingDays.php" hash="185cd2b5e5fcdc380fb607591b054a3e"/><file name="ShippingDuration.php" hash="1aa01df7274c360143fb0b2963ce9e68"/><file name="ShippingMethods.php" hash="5779b9e9c9af5cb2c6a5d25b761227b0"/><file name="StandardProductOptions.php" hash="bbb1c533bc63c75f6d168d7389774b5d"/><file name="StaticBlocks.php" hash="1c3d2fc026d1afc7a7108b61e76828b7"/><file name="StreetField.php" hash="80123df69368755513c4341306bd2065"/><file name="StreetFieldWithDefault.php" hash="bac4f43be478165ca454d2423f611a77"/><file name="WeightUnit.php" hash="b6bbe9c7c8c2ae76d991963a3f44cd99"/></dir></dir></dir></dir><dir name="DeliveryOptions"><file name="Cif.php" hash="eeb2d96e12feb6ae350e9ce577525af4"/><dir name="Observer"><dir name="GoMage"><dir name="LightCheckout"><file name="Ajax.php" hash="12682d1c78338fbae4ee9739f5096983"/></dir></dir><file name="ShippingMethodAvailable.php" hash="2ad9bf64aee177805a321653610e198f"/><file name="UpdatePostnlOrder.php" hash="2239cc1bdbfcf51dd64b86bf891e6672"/></dir><dir name="Product"><dir name="Attribute"><dir name="Source"><file name="ShippingDuration.php" hash="90349cc22cb674e66ab781a306edf254"/></dir></dir></dir><file name="Service.php" hash="913c19a75d6fac6603b63ad4cf7e5922"/><dir name="System"><dir name="Config"><dir name="Backend"><file name="ValidateFee.php" hash="e8dafb7958bcd1988eecf3b136c17062"/></dir><dir name="Source"><file name="DeliveryDaysNumber.php" hash="1d8efcdf01df2d64f526c9252d1f7b0b"/><file name="StockOptions.php" hash="441c9cefc7338910a2945757f7842366"/><file name="Themes.php" hash="9b9e2ea217313bbc4b426dfa04f74f66"/></dir></dir></dir></dir><dir name="ExtensionControl"><file name="Config.php" hash="f8c7c6f3861226a4b7be138f2931c6d2"/><file name="Feed.php" hash="f4a9f3a94304e2b0232ce7bd6a387d5a"/><dir name="Observer"><file name="Cron.php" hash="4c6cb0450d529f262fc6fd8291b672de"/></dir><dir name="Webservices"><file name="Abstract.php" hash="c76ee8ce49daf8d196831de07c7cd669"/></dir><file name="Webservices.php" hash="2922dc3fae6591fd984e989dba094b49"/></dir><file name="Inbox.php" hash="7b8a986f8015a7b02bda5dd8a62ec142"/><dir name="Mijnpakket"><file name="Cif.php" hash="1b3aee253fd6774eee7e2ff0e16735d3"/><file name="Service.php" hash="8d077e3ec1ab1da2f7546c9164d19fc6"/></dir><dir name="Parcelware"><file name="Export.php" hash="c522314e5c54d5a7a133ee9a7dfd0748"/></dir><dir name="Payment"><file name="Cod.php" hash="129f7913096ebf5cb54df03acb20938b"/><dir name="Observer"><file name="Cod.php" hash="babbb29d7bd51962c0a421a4162806b6"/></dir><dir name="Order"><dir name="Creditmemo"><dir name="Total"><dir name="CodFee"><file name="Abstract.php" hash="d094101edbd45da5014d8da7596aeb42"/></dir><file name="CodFee.php" hash="61649dc792fef11e833d6a6438fb4bd3"/><file name="CodFeeTax.php" hash="2e171923277c33a239e4f0c3eadb3d98"/></dir></dir><dir name="Invoice"><dir name="Total"><file name="CodFee.php" hash="1fba67d2cfbfd26a0a253ca9e83e7f55"/><file name="CodFeeTax.php" hash="a16e2216e8f156edb316fa4d3acdcf65"/><file name="Subtotal.php" hash="4d93dbab0e57076404275983d7ecefb6"/></dir></dir><dir name="Pdf"><dir name="Total"><file name="CodFee.php" hash="73eddd5e61452a2e018dfa6af3c1464b"/><file name="Grandtotal.php" hash="f9baa2ba4d712cbe6ed677d95aaa8a0e"/><file name="Tax.php" hash="5685ecae76e17277736901942f851452"/></dir></dir></dir><dir name="Quote"><dir name="Address"><dir name="Total"><dir name="CodFee"><file name="Abstract.php" hash="183493f74e29e0f01a6550c3cceb07bd"/></dir><file name="CodFee.php" hash="9c6d0e1695f274c06b1d6ecbc41a74cd"/><file name="CodFeeTax.php" hash="227ab37a8fa18162093257bca9235151"/></dir></dir></dir><file name="Service.php" hash="7b2e6ceb6c167bb55cca7b472206cb47"/><dir name="System"><dir name="Config"><dir name="Source"><file name="CodFeeTaxClass.php" hash="44551d5944906bbc3d3228131324b84c"/></dir></dir></dir></dir><dir name="Resource"><dir name="Catalog"><file name="Product.php" hash="42e4000e43176e1d6ee4336781478673"/></dir><dir name="Db"><file name="Abstract.php" hash="5abcdd8977c7000f81157991be5e4254"/><dir name="Collection"><file name="Postnl.php" hash="6d58f3700831f61c51f711f64684b09b"/></dir></dir><dir name="Order"><dir name="Grid"><file name="Collection.php" hash="9014651adaab7bce2b670dba10d97b62"/></dir><dir name="Shipment"><dir name="Grid"><file name="Collection.php" hash="3d1f13f598acbaa561a36f1a91882064"/></dir></dir><file name="Shipment.php" hash="8b9f972ad5b3ae1ccd3a7721ee347120"/></dir><file name="Setup.php" hash="014d519d9e010c4b8aee1f630ecab997"/></dir><dir name="System"><dir name="Config"><dir name="Backend"><file name="Checkbox.php" hash="0406128f26b82124d3b9ac698dfa8b09"/></dir><dir name="Source"><file name="Testlive.php" hash="ddd6fab7b721c4776355c5970df35716"/><file name="Yesno.php" hash="eed431ec0c66f961063b71f7150d8c20"/></dir></dir></dir></dir><dir name="sql"><dir name="postnl_setup"><file name="install-1.0.0.php" hash="0dc89283fefae06eda154b0d24dc01f9"/><file name="upgrade-1.1.5-1.2.0.php" hash="2881d8847c87c32ebfb5803f436cf024"/><file name="upgrade-1.2.2-1.3.0.php" hash="157203a83d21987b05088e2dc826bbc5"/><file name="upgrade-1.3.1-1.4.0.php" hash="5aaa53a0ae8eb13e746f8653f8d3ace1"/><file name="upgrade-1.4.1-1.5.0.php" hash="e1dcb902c674cb23072383b2872e554a"/></dir></dir><file name="Exception.php" hash="4e387d54ace504eb1a3e9dcf683283fa"/><dir name="Controller"><dir name="Adminhtml"><file name="Abstract.php" hash="3a9c4368b6341595a54d0f42674b9d46"/><file name="Config.php" hash="48248ae95f4f8d598c6505cc8555058b"/><file name="Shipment.php" hash="66b4938de6b9c8c2918d3ef6288c5114"/></dir><file name="Sales.php" hash="cb8ae934de6a38903e8ccfc76acf79bd"/></dir></dir></dir></target></contents>
396
  <compatible/>
397
  <dependencies><required><php><min>5.3.0</min><max>6.0.0</max></php></required></dependencies>
398
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>tig_postnl</name>
4
+ <version>1.7.0</version>
5
  <stability>stable</stability>
6
  <license uri="http://creativecommons.org/licenses/by-nc-nd/3.0/nl/deed.en_US">Creative Commons License</license>
7
  <channel>community</channel>
20
  - Viewing detailed shipping status information&#xD;
21
  - PostNL Checkout&#xD;
22
  - Emailing customers track &amp; trace information, allowing them to track their shipment from the moment you confirm it to the moment it arrives at their doorstep</description>
23
+ <notes>==== v1.7.0 ====&#xD;
24
+ ==== New Features ====&#xD;
25
+ - Added support for sunday delivery.&#xD;
26
+ - Added ability to charge a fee for sunday delivery.&#xD;
27
+ &#xD;
28
+ ==== Improvements ====&#xD;
29
+ - Added compatibility with Picqer extension.&#xD;
30
+ - Added the option to disable system.xml fields. This may be useful for other extensions that want to replace PostNL features.&#xD;
31
+ - Updated CIF services used to CIF 1.14.&#xD;
32
+ - Improved delivery date calculation to improve performance and stability.&#xD;
33
+ - Updated Track &amp; Trace URL format to the new PostNL standards&#xD;
34
+ - Delivery options on Idev's OneStepCheckout will not immediately save the first available delivery option, rather than waiting for customer interaction&#xD;
35
+ &#xD;
36
+ ==== Bug Fixes ====&#xD;
37
+ - Fixed an issue where the buspakje configuration modus check ignored the 'isbuspakjeactive' flag.&#xD;
38
+ - Fixed an issue where configurable products never allowed delivery options.&#xD;
39
+ - Fixed a rare problem that could cause an infinite loading spinner in GoMage LightCheckout when saving the selected delivery options.&#xD;
40
+ - Fixed a problem where delivery dates and delivery time estimations are double-corrected for timezone differences.&#xD;
41
+ - Fixed a problem where certain cron jobs would report that a directory is not readable, when actually it is just empty.&#xD;
42
+ - Removed an unnecessary check when determining whether delivery options are available for the current quote.&#xD;
43
+ &#xD;
44
+ ==== v1.6.0 ====&#xD;
45
  ==== New Features ====&#xD;
46
  - PostNL delivery options are now compatible with GoMage LightCheckout.&#xD;
47
  - PostNL MijnPakket login and Postcode check are now compatible with GoMage LightCheckout.&#xD;
411
  &#xD;
412
  This is the initial beta release of the extension. If you have any questions, please contact the Total Internet Group Servicedesk</notes>
413
  <authors><author><name>TiG</name><user>supporttotal</user><email>servicedesk@totalinternetgroup.nl</email></author></authors>
414
+ <date>2015-11-07</date>
415
+ <time>14:50:53</time>
416
+ <contents><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><dir name="TIG"><file name="postnl.xml" hash="9e82023fd46f786583dba4afd3b2da48"/></dir></dir><dir name="template"><dir name="TIG"><dir name="PostNL"><dir name="address_validation"><dir name="checkout"><dir name="onepage"><file name="billing.phtml" hash="0cb781955d33fae46da09d62bd6fdaf3"/><file name="postcode_check.phtml" hash="bb41cb9863f2a6a85cf1110c2cab8160"/><file name="shipping.phtml" hash="202f4808d3658d510175c6b975991da5"/></dir></dir><dir name="customer"><dir name="address"><file name="edit.phtml" hash="eb3f3f53d153c42165cf70085e026b60"/><file name="postcode_check.phtml" hash="cbb8bfd76db65041cafacf976312ceb7"/></dir></dir><dir name="gomage_checkout"><file name="billing.phtml" hash="e185cac738b3e9808fb41131e257f2a6"/><file name="postcode_check.phtml" hash="2b52392607c53b194470edc10a42a47e"/><file name="shipping.phtml" hash="13ce6e8d74a737ca25f2e57bcb237b9a"/></dir><dir name="onestepcheckout"><file name="billing_fields.phtml" hash="1e04cda4539618f3738fea300682e8e9"/><file name="postcode_check.phtml" hash="9dd6f336942b9cfcfc1a8b26c283b143"/><file name="shipping_fields.phtml" hash="ed8e95313ca98b83f7acbe94ea39876b"/></dir><file name="validate.phtml" hash="75438f5484ae966f288b7bde7e225b0a"/></dir><dir name="checkout"><dir name="cart"><file name="js.phtml" hash="a9718e822a674ae768bc6a532bbb0e13"/><file name="link.phtml" hash="ecd5c96cb1a46f51270c3784232a5c47"/><file name="spinner.phtml" hash="26b8da7f12ef206b9768b325ad547c1b"/></dir><file name="summary.phtml" hash="0b5ba3d2ef1b1d17eca3c3bc603c265f"/></dir><dir name="core"><dir name="order"><dir name="returns"><file name="info.phtml" hash="1eb800d518ea4ac848c42850c6983b66"/><dir name="shipment"><file name="items.phtml" hash="a6b56265412c3e0f24e4cfc6b44e145d"/></dir></dir></dir><dir name="page"><dir name="html"><file name="js_translate.phtml" hash="3a12ce7789322fd513435101b5763811"/></dir></dir><dir name="sales"><dir name="order"><dir name="email"><file name="delivery_options.phtml" hash="69ed5e3c4f9c5892e79fc862ae1af977"/><file name="pakjegemak_address.phtml" hash="4d66bc2a22d6916c8fe5388cf12b734a"/></dir><file name="pakje_gemak_address.phtml" hash="9c3f945dc11c6e7ab11c2a801c15617d"/><dir name="shipment"><file name="shipping_status.phtml" hash="e20200a32d1f40f661260e58ded904b9"/></dir></dir></dir></dir><dir name="delivery_options"><file name="addlocation.phtml" hash="8c44b58eb6e2df3909bfe0c460a28e7d"/><file name="addphonenumber.phtml" hash="9d7f5b6f1c25b753c39b9d9a75bf8809"/><dir name="gomage_checkout"><file name="available.phtml" hash="b506f7c4d9c40dfc70f5af2426f2e443"/><file name="deliveryoptions.phtml" hash="5777f05c189bf328ac13d47e5fbfcafa"/></dir><file name="js.phtml" hash="1090c61caf8925a6961ce55460246294"/><dir name="onepage"><file name="available.phtml" hash="100e509f0c2cb82e22de0735a4afc144"/><file name="deliveryoptions.phtml" hash="b5c8896b8c922f89b3124b94c102e9aa"/><file name="pickup_notification.phtml" hash="8a2262e00a82aac73f565fbf6ef160c3"/><dir name="progress"><file name="pakje_gemak.phtml" hash="07646cfd17ba8ddb1889ae0c01554440"/><file name="shipping_method.phtml" hash="cc7a33fa2411b444d1a23a053e313d66"/></dir></dir><dir name="onestepcheckout"><file name="available.phtml" hash="0b286aa4c191af9fe3c1cfda510aac71"/><dir name="bpost"><file name="available.phtml" hash="379d301a12d598d164b5afb0fac126b1"/></dir><file name="deliveryoptions.phtml" hash="f2fa039a3f099f41433c3ebe229e5f42"/></dir><file name="progress.phtml" hash="4e17a7cc24bda609244091b767817cf1"/><dir name="sales"><dir name="order"><file name="delivery_options_info.phtml" hash="263147e3762bbfd2cba230a2d7ec21b5"/></dir></dir><file name="theme.phtml" hash="ae93d3471327a0525388264af2575382"/></dir><dir name="mijnpakket"><file name="account_notification.phtml" hash="8579d5a7735de1831fa58f08e2f5579c"/><dir name="gomage_checkout"><file name="js.phtml" hash="1c57ff5b07a2c7123c5cc01a41e6853e"/><file name="login_button.phtml" hash="32962237f54619e75d098daaebbfab7f"/></dir><file name="js.phtml" hash="66014d70ce25f90fa651a33537335817"/><dir name="onepage"><file name="login_button.phtml" hash="3d4d1b47e88127f431042d30df1d3ef6"/></dir><dir name="onestepcheckout"><file name="login_button.phtml" hash="a5e7ca1d245a33fd262afe44449f7ac6"/></dir><file name="order_success_js.phtml" hash="165cf4aa0837bfb5c1034846e58bd17d"/></dir><dir name="payment"><dir name="checkout"><dir name="form"><file name="cod.phtml" hash="c6d6ca7695a1e423588b876f7c8c6cf4"/></dir><dir name="total"><file name="cod_fee.phtml" hash="9273dca9058bc1e782ad6750be468d96"/></dir></dir></dir></dir></dir></dir></dir></dir><dir name="enterprise"><dir name="default"><dir name="template"><dir name="TIG"><dir name="PostNL"><dir name="address_validation"><dir name="checkout"><dir name="onepage"><file name="billing.phtml" hash="4a824fb5cc38843fd9a49ec5b147dfd5"/><file name="postcode_check.phtml" hash="3ab00fd57d987610bc05474a1f356bbf"/><file name="shipping.phtml" hash="67b03b9c8fdb37831abe43b1885e9ca4"/></dir></dir><dir name="customer"><dir name="address"><file name="edit.phtml" hash="65c1acf828b35df172c819a742599431"/><file name="postcode_check.phtml" hash="8adb18f5b9788f1485d9bcab2d4fc450"/></dir></dir></dir><dir name="core"><dir name="sales"><dir name="order"><file name="pakje_gemak_address.phtml" hash="d0e64d20f8847cb5d622d3e7ca4ac296"/></dir></dir></dir><dir name="mijnpakket"><dir name="onepage"><file name="login_button.phtml" hash="febc3557ee3228244681f06a74f11e4d"/></dir></dir></dir></dir></dir></dir></dir><dir name="rwd"><dir name="default"><dir name="layout"><dir name="TIG"><file name="postnl.xml" hash="88bc2129c1be42f128e0b081712765ea"/></dir></dir><dir name="template"><dir name="TIG"><dir name="PostNL"><dir><dir name="address_validation"><dir name="checkout"><dir name="onepage"><file name="postcode_check.phtml" hash="db2c4471a2a72231e9e48846827d3af6"/></dir></dir><dir name="customer"><dir name="address"><file name="postcode_check.phtml" hash="9d52ad0c9e9879dbdd9a456bbc26c6b3"/></dir></dir></dir><dir name="checkout"><dir name="cart"><file name="link.phtml" hash="9421d86c9999726b5f4fbeb2bd444ae8"/></dir></dir><dir name="mijnpakket"><dir name="onepage"><file name="login_button.phtml" hash="bfaf1bf82634b1f23dcce616a905f017"/></dir></dir></dir></dir></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><dir name="TIG"><file name="postnl.xml" hash="1edaba7a5995edecaee7448cdbe0e97a"/></dir></dir><dir name="template"><dir name="TIG"><dir name="PostNL"><file name="cron_notification.phtml" hash="67bbd1d6737e958906d0378f4b246387"/><file name="integrity_notification.phtml" hash="f8bb74b367cd4c1d65b203571db5af70"/><file name="log_notification.phtml" hash="b823242d8db7e1f1ccfb603c653922f0"/><dir name="payment"><dir name="checkout"><dir name="form"><file name="cod.phtml" hash="145ff33fea020e3e3148c641c9b98bc6"/></dir></dir></dir><dir name="sales"><dir name="items"><dir name="column"><file name="qty.phtml" hash="ee6a8f8fa3515ae96daa5ab5931b50be"/></dir></dir><dir name="order"><dir name="address"><dir name="form"><file name="container.phtml" hash="c70f2fca642dd867f51c265f5bd24421"/></dir></dir><dir name="create"><file name="js.phtml" hash="45ece3a5af2b5b720158f6f9910ede7c"/><dir name="totals"><file name="cod_fee.phtml" hash="024424c5e3b8f23e8f424fa015ba23b6"/></dir></dir><dir name="creditmemo"><dir name="create"><dir name="totals"><file name="cod_fee.phtml" hash="a35bb3ed9e43e09a5c966c3621566cd9"/></dir></dir></dir><file name="filter_massaction.phtml" hash="5767fd53a9eed4d361332dddd97a12ac"/><file name="js.phtml" hash="18ec1303ae3a85e40107c070c7547461"/><file name="product_options.phtml" hash="fac95293486e5a81d5981b3b717aaa4a"/><dir name="shipment"><dir name="create"><file name="shipment_options.phtml" hash="786fd238ba19dc471b5df422215a5927"/></dir><file name="filter_massaction.phtml" hash="d4e0379e6a96a5fd92ace380715549b9"/><dir name="view"><file name="delivery_options.phtml" hash="dad28852823476f3d7a80a1d94371f3e"/><file name="pakje_gemak_address.phtml" hash="d9dbf8a4ae4d2c3efccf8696d64b580a"/><file name="shipping_status.phtml" hash="2f7b0378604f69b0da2a4a2b7a642b72"/><dir name="tab"><file name="status_history.phtml" hash="2ffe0b40dea1e06af41498702a066cea"/></dir></dir><file name="view.phtml" hash="00087383abc14dd8400ba17e3aeda003"/></dir><dir name="totals"><file name="tax.phtml" hash="ab09fbdc3a7673ca587d8c6de4c02ffd"/></dir><dir name="view"><file name="delivery_options.phtml" hash="e3bc1515159593c8a5f5545db2ae0789"/><file name="pakje_gemak_address.phtml" hash="dc87c6cfce56eb69ea5e2a86d522212c"/></dir><file name="windows_theme.phtml" hash="55103508fe6bb75628ef0c5901c08666"/></dir><dir name="shipment"><file name="customize_link.phtml" hash="efe9c3208669fe44b15725f86ce22c63"/><file name="js.phtml" hash="ab44d94f816af3eb1f59ca4044d79214"/><file name="testmode_warning.phtml" hash="def163c3796aae431b07351f03cd6ed0"/></dir></dir><dir name="system"><dir name="config"><file name="edit.phtml" hash="4f073927211c81a65263953cfbe87170"/><dir name="form"><dir name="field"><file name="array.phtml" hash="6bb1f404b24129b198c9c95a28c1bd66"/><file name="config_check.phtml" hash="cf8ab0445473583fcdcc997e30d58164"/><file name="field_header.phtml" hash="5ca62f4d7b2b0817e3416a4c6089e145"/><file name="info_box.phtml" hash="f387052ae039703f04a76ae255aa2508"/><file name="js.phtml" hash="35d5521c921b474e40373e5c7e30c45c"/><file name="split_address_check.phtml" hash="f23ca53d46419f7438fbd1c5ba164f2e"/><file name="support_tab.phtml" hash="308a0962fc31abfe09c6b5a03aabed14"/><file name="warning_box.phtml" hash="9841c9270a4ec7049ee6a46cc6bcb6e3"/></dir></dir></dir></dir><file name="upgrade_notification.phtml" hash="9e9f1a1331b432c56889cfa4df06f8a7"/><dir name="widget"><dir name="grid"><dir name="massaction"><file name="label_start_pos.phtml" hash="244c60efd2281a12206987dca2f5a73c"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="TIG_PostNL.xml" hash="bc88adf886505eac7c8fd420b5a775a2"/></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="css"><dir name="TIG"><dir name="PostNL"><file name="cart.css" hash="d51ab6c200da5c54eb8e672c9325dbf5"/><file name="default.css" hash="46f2e8f1748e604457cc1b237a0950f5"/><dir name="deliveryoptions"><file name="default.css" hash="e82b48626cd9640e6130e84dcb22a186"/><file name="gomage_checkout.css" hash="5a06cdff83cf7129aefe4bd4614c07b0"/><file name="gomage_checkout_mediaqueries.css" hash="1059ae216e39968ce3122e1485ee0458"/><file name="gomage_checkout_neutral.css" hash="cb2cc910a3e96ed3fc9b23d20a6f34eb"/><file name="ie8.css" hash="1f0e04ca6c7be6572defb3adadafd28a"/><file name="mediaqueries.css" hash="3e8b87e8f0f30cbbe83686fa59bfd482"/><file name="neutral.css" hash="4b3b09545e3395f302e1efd487bf2739"/><file name="onestepcheckout.css" hash="fd7d786cc66c34b81555111e34c062eb"/><file name="onestepcheckout_mediaqueries.css" hash="2eb1086de2c12f7b728794fdf5ae431c"/><file name="onestepcheckout_neutral.css" hash="cb2cc910a3e96ed3fc9b23d20a6f34eb"/></dir><file name="messages.css" hash="19d03101c862b45535bc08344c12716a"/><file name="mijnpakket.css" hash="609c7c1218890f38bb9c4732ee5a0e2c"/><file name="postcodecheck.css" hash="af2e0297ed311d11b7bff818ec7b6d61"/><file name="returns.css" hash="23a6cb90aa662d2f866459e8ddf9a38a"/><file name="shipping_status.css" hash="fcb3fe311d50ee93176dc29ef2d5a0b9"/></dir></dir></dir><dir name="images"><dir name="TIG"><dir name="PostNL"><file name="bkg_progress_small.png" hash="fc6c9f28b6a6aae6f0096d504c0952df"/><file name="bkg_tooltip.png" hash="56cfed3ed8a65b19f8de88946d1a0a01"/><dir name="deliveryoptions"><file name="bkg_add-location.png" hash="a30d4aea73b094df5f434f9856dc626b"/><file name="bkg_add-phonenumber_input.gif" hash="25fa933b55e69a552f7d1cf704a8d6f9"/><file name="bkg_back_link.png" hash="b7bd79383aa89243980329e07b55a300"/><file name="bkg_btn-close.png" hash="5438c768cd63b2476cf14418acb28709"/><file name="bkg_button.png" hash="a1bf9f994f90033e143b7e2023c0e4fb"/><file name="bkg_checkbox.png" hash="71628b28d876482b600755e577132fee"/><file name="bkg_extras.gif" hash="6b374d9759f894962259eb995a3d59f9"/><file name="bkg_info_link.png" hash="0bf3dd9b4d23c7da406fa81ccb38799e"/><file name="bkg_location-search_input.gif" hash="fcee91af0d97e50fcf698eb7485327a8"/><file name="bkg_location-selected.png" hash="efe72719a889f94f4aa24e6f6d6db8df"/><file name="bkg_location.gif" hash="937e1a367cafdcc0d4f62afb572879a1"/><file name="bkg_more-info.png" hash="3681dc9b54011dae7c81d6c4b2e74a2b"/><file name="bkg_option.gif" hash="a3b9a292d28540147bfb034060731cb3"/><file name="bkg_phonenumber_failed.png" hash="8d1a0503bfe7cdfc2e35365bba2a8f7d"/><file name="bkg_phonenumber_verify.png" hash="28f90e0364778463144004ff289d70a7"/><file name="bkg_postnl-logo.png" hash="a34b5d938234a7360e5566df9fb4273f"/><file name="bkg_postnl.png" hash="46c5f6c65f66da09b39496c7cef94e89"/><file name="bkg_radio.png" hash="3cc3ecb77e5ce62511385d59e037b398"/><file name="bkg_rwd_rate-line.png" hash="d7cc800714e0372f2bc991bc50a99ca2"/><file name="bkg_tooltip.png" hash="cbd753cc9cb873468d1bba07e70f0d2f"/><file name="bkg_tooltip_close.png" hash="6b568d6430e21e974f360f4961db9102"/><file name="ie8_bkg_transparent-white.png" hash="a603671f51cb11ed9370bcd3181741c7"/><file name="loader_default.gif" hash="9fec99d885ad6bc45aee40d1c171ca4b"/><file name="loader_mini.gif" hash="f244ab6581d4329e3dbb7e289d47dfb2"/><dir name="locations"><file name="crc_albertheijn.png" hash="57af250f9d59b9074132446e0109ee93"/><file name="crc_automaat.png" hash="e9e94287380f27f6752d89f995b1b7f4"/><file name="crc_bruna.png" hash="326912294c49e8c896a34a28a7c03127"/><file name="crc_c1000.png" hash="8628f2e6328805a84e8eac28511b6857"/><file name="crc_coop.png" hash="0250717148ab776d156371a3e0912b9e"/><file name="crc_default.png" hash="777edf1aa124f6cb13258bb510db809b"/><file name="crc_emte.png" hash="ba7841f22a08d379f1ddabbe708ffa41"/><file name="crc_gamma.png" hash="6dc0ff8b36892af40ce80a36355d311a"/><file name="crc_jumbo.png" hash="061ae156e55e3aee6130cd1beb8d1b9a"/><file name="crc_karwei.png" hash="a7b8ee695b996cb757fd5c1a98e888e4"/><file name="crc_plus.png" hash="e67e871870c87723d835db23af18d4e9"/><file name="crc_primera.png" hash="e367c1e5b3fb4e25303aff57dc1a1259"/><file name="crc_readshop.png" hash="eeef9a98c0cd68f4351154d174bfdda9"/><file name="crc_spar.png" hash="4939d469045e6c7d7e65f172d97e30b1"/><file name="crc_staples.png" hash="94136b2a8d00dfdadcad6c7088920409"/><file name="drp_albertheijn.png" hash="944b90f36d5f225fcc74d360d368e628"/><file name="drp_automaat.png" hash="ce0bd13abc5e6c647c2ac8bc0fb5c150"/><file name="drp_bruna.png" hash="feb3ea92e3d32e98edf04aa22604afe6"/><file name="drp_c1000.png" hash="9e89a865b72d182135226fc72a98e03a"/><file name="drp_coop.png" hash="ddd34926b0a306cb0b28f385a78bd972"/><file name="drp_default.png" hash="d97f2e415e54b5d9fa19893210cedbc0"/><file name="drp_emte.png" hash="34e526c095a080cf92ccf15318a56ba3"/><file name="drp_gamma.png" hash="56da28b8c2e0ad6087eb0c4408f9904c"/><file name="drp_jumbo.png" hash="f191ec9c01b807d32811d9a4f0c3ad19"/><file name="drp_karwei.png" hash="d3da2d8b7f65ddecdf13091094a8fbea"/><file name="drp_plus.png" hash="9bf96ded99d0e47b34256cdc78310754"/><file name="drp_primera.png" hash="095b1ced03087b390b96ee3d525dce7e"/><file name="drp_readshop.png" hash="d2884c0bdd81103e9319469727bc9855"/><file name="drp_spar.png" hash="9ff6bb1fc489ba714d3249c35fb01c77"/><file name="drp_staples.png" hash="2196de7813fa6db34f8b0abb1aedecd5"/><file name="tmb_albertheijn.png" hash="58ae464ff7bb420f075e53cd35d9852f"/><file name="tmb_bruna.png" hash="ff523c258b47be502b335a7e8cc5032c"/><file name="tmb_c1000.png" hash="f96136426d2a2af40ef7b76953ec58b5"/><file name="tmb_coop.png" hash="b1e41c613b1876c787e9d4d5b30ba1a5"/><file name="tmb_default.png" hash="ed65f2da1032b355422db7c86a126668"/><file name="tmb_emte.png" hash="d0e9dc8f785b8db0da8bd233a0d09a11"/><file name="tmb_gamma.png" hash="55ef36ad8aa803469e28f368b7eac536"/><file name="tmb_jumbo.png" hash="3bae16290854122b2b3439de2402c5a1"/><file name="tmb_karwei.png" hash="84e1aaceb9c0ff3864b2b7aead52e033"/><file name="tmb_plus.png" hash="fd3bf32ffb591f79935bb906249ca59e"/><file name="tmb_primera.png" hash="fb32942772b4ca57a45ee0e08406c3bc"/><file name="tmb_readshop.png" hash="6a6826139698fa20e0fd4210d17b50e2"/><file name="tmb_spar.png" hash="89694e10f073619fd944d8c2c7b9e357"/><file name="tmb_staples.png" hash="115af373105f6494c74186657ddca6a6"/></dir><file name="osc_bkg_postnl-logo.png" hash="c23e987598dcd439e54f9d48e9e4777a"/><dir name="unbranded"><file name="bkg_back_link.png" hash="5797c608687a704a935b0ff03b8d3982"/><file name="bkg_checkbox.png" hash="232ad0ec83b32af770481bb1cdd1520e"/><file name="bkg_more-info.png" hash="96a0b80b2907a28489d8d87f845d8a5f"/><file name="bkg_radio.png" hash="430bea179fc0e6570c1cca905b46454e"/><file name="bkg_tooltip_close.png" hash="eac7d71f0cb14f165b6f7af55a6c4c26"/><file name="button_action.png" hash="c297cbc6aa5c44272308b660038b363f"/><file name="button_next.png" hash="768365d31d95bb5c8b1ccebb62920a95"/><file name="loader_default.gif" hash="1645395ddefeab89f51f59b2dbcbd7c0"/><file name="loader_mini.gif" hash="2fd11016727f350b98af17fc76b3a0d3"/></dir></dir><file name="icon-tooltip.png" hash="5767601cd66b23d0b6fe8defc10dd48d"/><dir name="mijnpakket"><file name="app_buttons.png" hash="74f3a4d80dafe1a0979ce7ad0bd70824"/><file name="app_logo.png" hash="e5426bac3d0b4e28ef1f3628503c2365"/><file name="logo.png" hash="6fa95b3a5e83b6887848b5feb7369bf1"/><file name="logo_small.png" hash="c23e987598dcd439e54f9d48e9e4777a"/></dir><file name="opc-ajax-loader.gif" hash="e805ea7eca1f34c75ba0f93780d32d38"/><file name="overlay.png" hash="f08feb852288bea420ba3af68ae34a1f"/><file name="postnl_email_logo.png" hash="8bd358b514e04e7ceca03efb38f8fded"/><file name="postnl_spinner.gif" hash="cef321b68ab934932ee317986823db67"/></dir></dir></dir><dir name="js"><dir name="TIG"><dir name="PostNL"><file name="ajax.js" hash="ac8120be1ff0e421e80b14ad2617d4c1"/><file name="checkout.js" hash="e64437f55f7ccafb205a1d6f55995537"/><file name="deliveryOptions.js" hash="944cebd17c363a69dd2daf58dd1fbe44"/><dir name="deliveryoptions"><file name="cufon-fonts.js" hash="7605bb17619f1a55e3521a700dfe7b1a"/><file name="cufon-settings.js" hash="9bb0303049c178db309438c26f7def2c"/><file name="cufon-yui.js" hash="2d0f7f2a050cc1a9c9456d97d29f5eda"/></dir><file name="formPopulate.js" hash="668076474b61c5295f82726a3235451a"/><dir name="gomage_checkout"><file name="mijnpakketLogin.js" hash="dcc34351b834646e41a88f5d6a9e6dea"/></dir><file name="livepipe.js" hash="b9f5e38a94ce3f4f6f6ebcabca23d8c3"/><file name="mijnpakketLogin.js" hash="b7a4c400044ba8e9aefd706c0193f778"/><file name="placeholder.min.js" hash="c2824272a822d3fb8429a239e7d20c24"/><file name="postcodecheck.js" hash="864882d849033b308b29181dea7ce09c"/><file name="scrollbar.js" hash="b6780bb325e0ac78bc37e7b9d1bac863"/><file name="slider.js" hash="1679e9ff9a8d3784387040fc7cef9203"/></dir></dir></dir></dir></dir><dir name="enterprise"><dir name="default"><dir name="images"><dir name="TIG"><dir name="PostNL"><dir name="deliveryoptions"><dir name="locations"><file name="crc_albertheijn.png" hash="57af250f9d59b9074132446e0109ee93"/><file name="crc_automaat.png" hash="e9e94287380f27f6752d89f995b1b7f4"/><file name="crc_bruna.png" hash="326912294c49e8c896a34a28a7c03127"/><file name="crc_c1000.png" hash="8628f2e6328805a84e8eac28511b6857"/><file name="crc_coop.png" hash="0250717148ab776d156371a3e0912b9e"/><file name="crc_default.png" hash="777edf1aa124f6cb13258bb510db809b"/><file name="crc_emte.png" hash="ba7841f22a08d379f1ddabbe708ffa41"/><file name="crc_gamma.png" hash="6dc0ff8b36892af40ce80a36355d311a"/><file name="crc_jumbo.png" hash="061ae156e55e3aee6130cd1beb8d1b9a"/><file name="crc_karwei.png" hash="a7b8ee695b996cb757fd5c1a98e888e4"/><file name="crc_plus.png" hash="e67e871870c87723d835db23af18d4e9"/><file name="crc_primera.png" hash="e367c1e5b3fb4e25303aff57dc1a1259"/><file name="crc_readshop.png" hash="eeef9a98c0cd68f4351154d174bfdda9"/><file name="crc_spar.png" hash="4939d469045e6c7d7e65f172d97e30b1"/><file name="crc_staples.png" hash="94136b2a8d00dfdadcad6c7088920409"/><file name="drp_albertheijn.png" hash="944b90f36d5f225fcc74d360d368e628"/><file name="drp_automaat.png" hash="ce0bd13abc5e6c647c2ac8bc0fb5c150"/><file name="drp_bruna.png" hash="feb3ea92e3d32e98edf04aa22604afe6"/><file name="drp_c1000.png" hash="9e89a865b72d182135226fc72a98e03a"/><file name="drp_coop.png" hash="ddd34926b0a306cb0b28f385a78bd972"/><file name="drp_default.png" hash="d97f2e415e54b5d9fa19893210cedbc0"/><file name="drp_emte.png" hash="34e526c095a080cf92ccf15318a56ba3"/><file name="drp_gamma.png" hash="56da28b8c2e0ad6087eb0c4408f9904c"/><file name="drp_jumbo.png" hash="f191ec9c01b807d32811d9a4f0c3ad19"/><file name="drp_karwei.png" hash="d3da2d8b7f65ddecdf13091094a8fbea"/><file name="drp_plus.png" hash="9bf96ded99d0e47b34256cdc78310754"/><file name="drp_primera.png" hash="095b1ced03087b390b96ee3d525dce7e"/><file name="drp_readshop.png" hash="d2884c0bdd81103e9319469727bc9855"/><file name="drp_spar.png" hash="9ff6bb1fc489ba714d3249c35fb01c77"/><file name="drp_staples.png" hash="2196de7813fa6db34f8b0abb1aedecd5"/><file name="tmb_albertheijn.png" hash="58ae464ff7bb420f075e53cd35d9852f"/><file name="tmb_bruna.png" hash="ff523c258b47be502b335a7e8cc5032c"/><file name="tmb_c1000.png" hash="f96136426d2a2af40ef7b76953ec58b5"/><file name="tmb_coop.png" hash="b1e41c613b1876c787e9d4d5b30ba1a5"/><file name="tmb_default.png" hash="ed65f2da1032b355422db7c86a126668"/><file name="tmb_emte.png" hash="d0e9dc8f785b8db0da8bd233a0d09a11"/><file name="tmb_gamma.png" hash="55ef36ad8aa803469e28f368b7eac536"/><file name="tmb_jumbo.png" hash="3bae16290854122b2b3439de2402c5a1"/><file name="tmb_karwei.png" hash="84e1aaceb9c0ff3864b2b7aead52e033"/><file name="tmb_plus.png" hash="fd3bf32ffb591f79935bb906249ca59e"/><file name="tmb_primera.png" hash="fb32942772b4ca57a45ee0e08406c3bc"/><file name="tmb_readshop.png" hash="6a6826139698fa20e0fd4210d17b50e2"/><file name="tmb_spar.png" hash="89694e10f073619fd944d8c2c7b9e357"/><file name="tmb_staples.png" hash="115af373105f6494c74186657ddca6a6"/><file name="tmp_maps.jpg" hash="c8d8e93fe427b236489b2904e276e124"/></dir></dir><file name="opc-ajax-loader.gif" hash="e805ea7eca1f34c75ba0f93780d32d38"/><file name="overlay.png" hash="f08feb852288bea420ba3af68ae34a1f"/><file name="postnl_spinner.gif" hash="c97d0bd9ccc8fa0b460c07caeb63c293"/></dir></dir></dir><dir name="css"><dir name="TIG"><dir name="PostNL"><file name="cart.css" hash="4f8b417defed03e6ae8c4ec292b2e2c3"/><file name="postcodecheck.css" hash="dcc017ca8f6b882c8dd8127ab5eea42a"/></dir></dir></dir></dir></dir><dir name="rwd"><dir name="default"><dir name="css"><dir name="TIG"><dir name="PostNL"><file name="rwd.css" hash="4d14fe3ff05c4bf41a5161b113b15767"/><file name="rwd_osc.css" hash="d3b7cc449980f3dba097db6127a45f0c"/></dir></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="css"><dir name="TIG"><dir name="PostNL"><file name="shipping_status.css" hash="d70f88078aa443807d249b3bf51320bf"/><file name="styles.css" hash="99c3298ef947a3e2d4a8aec7c88248cd"/><file name="system_config_edit.css" hash="103eaeae2d9e2a4a43b48a83ea7f2dad"/><file name="system_config_edit_postnl.css" hash="d25851e44a1d5c9beff046c2c0450ad0"/><file name="system_config_edit_postnl_magento16.css" hash="f9a8479639e2fe8d0da9cf602b1607c3"/></dir></dir></dir><dir name="images"><dir name="TIG"><dir name="PostNL"><file name="bkg_progress_grey.png" hash="8d4d5144292b98a23475367ede717b17"/><file name="bkg_progress_grey_begin.png" hash="6815c9264e78f8f9d2805c595f8800c4"/><file name="bkg_progress_grey_end.png" hash="dae90fdb38adf65e6ccc209b6a80372c"/><file name="bkg_progress_grey_seperator.png" hash="10178e12fd14fb783b4ae0fbd55a4a81"/><file name="bkg_progress_orange.png" hash="8a59f76e36ee0492f5341b8e5e7ee79b"/><file name="bkg_progress_orange_begin.png" hash="ecc84d5252e397f4a783ee7e0c426d63"/><file name="bkg_progress_orange_end.png" hash="d0a81dfea1a3eddc699482a62af01fc9"/><file name="bkg_progress_orange_grey_seperator.png" hash="ab558953ec4c40ef44653ab481084345"/><file name="bkg_progress_orange_seperator.png" hash="a774eb89763d95f2e60d03f8702fba86"/><file name="bkg_progress_sprite.png" hash="3230379a4544f85062a6ba91fa8083e2"/><file name="bkg_progress_sprite_reverse.png" hash="c27c9ac49dd3c82f6351307d7b63f36a"/><file name="bkg_tooltip.png" hash="56cfed3ed8a65b19f8de88946d1a0a01"/><file name="btn_download_icon.png" hash="142d5ebbe43ad09dde97cd32e1ef4303"/><file name="glyph_error.gif" hash="a138b803d772f552aa2e49e1c506edbd"/><file name="glyph_go.png" hash="343996189e35c6685b90993b43059ecd"/><file name="glyph_info.gif" hash="40f72d28be63ecf2b6ef44c7ea730104"/><file name="glyph_manual.png" hash="771db63b6ffc9de1c06da564796adc6e"/><file name="glyph_pdf.png" hash="a5ea929f4014a88d7320d0293913ace3"/><file name="glyph_success.gif" hash="465a056a3ba3d94367f51c3c0b751391"/><file name="glyph_warning.gif" hash="fa817cb6d49efb9855942ef2b739fc6c"/><file name="icon-tooltip.png" hash="5767601cd66b23d0b6fe8defc10dd48d"/><file name="legend.gif" hash="d8fb0642901868d489d31b426f3e3406"/><file name="loader_default.gif" hash="9fec99d885ad6bc45aee40d1c171ca4b"/><file name="logo_postnl.png" hash="10b9ae4ad2c5365312c257dcdac1fc64"/><file name="tig_logo_medium.gif" hash="3e1071908cfdb7b472438482c3331ac7"/></dir></dir></dir><dir name="js"><dir name="TIG"><dir name="PostNL"><file name="configuration.js" hash="6ca6c63dddc579f825ae0a3214a7d59d"/><file name="form.js" hash="4586e90d9f3a1c96531fc9f19c0901d0"/><file name="mass_action_filter.js" hash="7005d1ecd9a6c1e16d14a2aa3cb0b11c"/><file name="validate.js" hash="84a9bc86137c3d2dd488eee8bd2e3fc9"/></dir></dir></dir></dir></dir></dir></target><target name="magelib"><dir name="TIG"><dir name="PostNL"><dir name="Fpdf"><dir name="font"><file name="courier.php" hash="ca6fb483549604fb4a675f9e28a73b02"/><file name="courierb.php" hash="a58d7dadf3cf564ca5d5138cea76a3a9"/><file name="courierbi.php" hash="c0e416771dc56cb2397390978d112dc2"/><file name="courieri.php" hash="419961dbeeb20f08da780dccb427dec8"/><file name="helvetica.php" hash="fc53162b924ddd522bd6cfe86fab48f4"/><file name="helveticab.php" hash="4e9ffda682a131fef2e04ccd94aa342d"/><file name="helveticabi.php" hash="6db8943bd91bf13514b82872cf160d45"/><file name="helveticai.php" hash="13b795df0c33eb93c48621792f2ea12d"/><file name="symbol.php" hash="fbd9250c21af99f6398d6f817511f91f"/><file name="times.php" hash="82bc100f1f3bd8b2d9b7fb5ee8f44b3a"/><file name="timesb.php" hash="3a241a1658bf9ea2062e63f464166c31"/><file name="timesbi.php" hash="bfdd0235a71793becefff778c2b16243"/><file name="timesi.php" hash="17fd69f176915a2113fe28057b43a75e"/><file name="zapfdingbats.php" hash="2848ab2daf3128f310b5cf713ca4acee"/></dir><file name="fpdf.css" hash="84befac49464a9aac54aa511bc1fd754"/><file name="fpdf.php" hash="4ebda2283504bfd34b85753433d7e098"/><file name="helvetica.php" hash="fc53162b924ddd522bd6cfe86fab48f4"/><file name="license.txt" hash="fb784726cfe3615da38bc23a3cac445b"/></dir><file name="Fpdf.php" hash="b98f822c8de60fd72c82bd15c92c5a9a"/><dir name="Fpdi"><dir name="filters"><file name="FilterASCII85.php" hash="c6b756ac5874cc6f6f986349b605af64"/><file name="FilterASCII85_FPDI.php" hash="1240e0c64602864401f886546e09fe7b"/><file name="FilterLZW.php" hash="fcba53a4dd3a1f78e62c7aeac726c7b5"/><file name="FilterLZW_FPDI.php" hash="b11c50e66e20744ad20f176cae4af284"/></dir><file name="fpdf_tpl.php" hash="3966b13c398c94509e2fb6199593b104"/><file name="fpdi.php" hash="abb524d17a2cbdd3c3b7e89184aad443"/><file name="fpdi2tcpdf_bridge.php" hash="bcc317cbcfdd3faeae4a1eb480bded0f"/><file name="fpdi_pdf_parser.php" hash="d7a3bf0153ae9ad57976afb0be5d195d"/><file name="pdf_context.php" hash="0b69a25dbb830f3b68c054c2e43b876e"/><file name="pdf_parser.php" hash="5ff22a8c1ce5b1eee82c8017311a797e"/></dir><file name="Fpdi.php" hash="10e45da64b0e05274dc183680fc41988"/></dir></dir></target><target name="magelocale"><dir name="en_US"><dir name="template"><dir name="email"><dir name="TIG"><dir name="PostNL"><file name="return_label.html" hash="dd2ad306d092b7dd481a0a972733f8bb"/><file name="track_and_trace.html" hash="b77871334fc82d5811954024b3f8058d"/></dir></dir></dir></dir><file name="TIG_PostNL.csv" hash="355da28851927049d65a4dab3d51b515"/></dir><dir name="nl_NL"><dir name="template"><dir name="email"><dir name="TIG"><dir name="PostNL"><file name="return_label.html" hash="cd54d668b8e1958cb50aa7abf1bc280b"/><file name="track_and_trace.html" hash="35b9b68a9c0232fe4e5ea43b138f580e"/></dir></dir></dir></dir><file name="TIG_PostNL.csv" hash="31dbf339acd01a3016aed9e95d17478b"/></dir></target><target name="magecommunity"><dir name="TIG"><dir name="PostNL"><dir name="Block"><dir name="AddressValidation"><dir name="GoMage"><dir name="LightCheckout"><file name="Billing.php" hash="9e4dd285bcccdc2c09a98703df8aba8b"/><file name="Shipping.php" hash="f31e5927754e233953f5ee63e3b79fa0"/></dir></dir></dir><dir name="Adminhtml"><dir name="Carrier"><dir name="Postnl"><dir name="Matrixrate"><file name="Grid.php" hash="719cae84112c3c136655489c3491f8d4"/></dir><dir name="Tablerate"><file name="Grid.php" hash="d4047c8f409212e53ad26edd32bf1f80"/></dir></dir></dir><file name="CronNotification.php" hash="8cee9172939b14a2ccea91f848e77a98"/><file name="IntegrityNotification.php" hash="e6975cdea227b1bc901b4a8b6713bd7c"/><file name="LogNotification.php" hash="924dd0bc38a4a9f09294983cce277efa"/><dir name="Sales"><dir name="Items"><dir name="Column"><file name="Qty.php" hash="053e31cba3678520d680772658580f29"/></dir></dir><dir name="Order"><dir name="Create"><dir name="Totals"><file name="CodFee.php" hash="0911e98f34deef84a130b75c6cee2d51"/></dir></dir><dir name="Creditmemo"><dir name="Create"><file name="CodFee.php" hash="465960a4fd4fe538f8933f6571bdea77"/></dir><dir name="Totals"><file name="CodFee.php" hash="464b958112dec88a08daf3c2f72fdc28"/></dir></dir><dir name="Invoice"><dir name="Totals"><file name="CodFee.php" hash="f92fd67e68d2cc83f3352272365f3ca9"/></dir></dir><file name="ProductOptions.php" hash="50183056ec5ea51bcad55333f65ae32b"/><dir name="Shipment"><dir name="Create"><file name="ShipmentOptions.php" hash="d9ba85b04953b426560a2525770c5f4a"/></dir><dir name="View"><file name="DeliveryOptions.php" hash="ad21b51e6aa002548b69ed33eb36a345"/><file name="ShippingStatus.php" hash="fce062abeff245502b4b1aa438e36e7d"/><dir name="Tab"><file name="StatusHistory.php" hash="47dc64f36b6d0b35acb566ef95f31a5e"/></dir><file name="Tabs.php" hash="7348554a20e28170a8d4a3d16901cb1e"/></dir></dir><dir name="Totals"><file name="CodFee.php" hash="36e884e30294dafaf7cf51d6708e33ee"/></dir><dir name="View"><file name="DeliveryOptions.php" hash="073485c298d79d2f61f60113a95b9767"/></dir></dir><dir name="Returns"><file name="Grid.php" hash="b8f2c760a91d60ee8f64be58a5482a8c"/></dir><file name="Returns.php" hash="8ddbe0855ea557f1f00236fc88c05aae"/></dir><dir name="System"><dir name="Config"><dir name="Form"><dir name="Field"><file name="ActivateButton.php" hash="7accd8c5dece4046b3071250bb976611"/><file name="ActivatedFieldHeader.php" hash="e616a200961dada2718e427b2ff64d39"/><file name="AddressLines.php" hash="cf78339932dfcdfe00cac15f3d8a4d9c"/><file name="Anchor.php" hash="5a20dca71190d8a273425474691c43c1"/><file name="Checkbox.php" hash="124a56f6a5047be8c034fef881c17d03"/><file name="ConfigCheck.php" hash="90cff6426c543dc3d4b0148282754a7a"/><file name="GoMageDeliveryDateConflicts.php" hash="98a8224382e4d3d67675b145b8e6e8e0"/><file name="Hidden.php" hash="4ddc832e13d9d77a7c5f4a3d7128e2cc"/><file name="HourMinute.php" hash="4ebd99406f97313083391348c836098e"/><file name="InfoBox.php" hash="1edb3b7e27ca9655c239852a3a66ae0b"/><file name="MatrixrateExport.php" hash="92a313da8a920266b3f8a1224e1ddd73"/><file name="MatrixrateImport.php" hash="9aaa4ffccfadde72e1a2df9b47a49671"/><file name="Obscure.php" hash="c4ca2e1e738116be5877582212a024f3"/><file name="PackingSlipItemColumns.php" hash="6ac4aed9b10fef8e42150b51df447964"/><file name="PostcodeNlExtensionActive.php" hash="e82cf0a6b545892fb9f23ab37d6fbd90"/><file name="Radios.php" hash="57fe1ef1a58b5702e49b891ad02ae3fc"/><file name="SplitAddressCheck.php" hash="18b4ac122fdbb436c124e7be5453eddd"/><file name="SupportTab.php" hash="edec65cf3bd2c0e7ec6f472ac6cf104e"/><file name="TablerateExport.php" hash="f9422e88ae49d20e22b52d303ccc4bf8"/><file name="TablerateImport.php" hash="8ef2c6b824a8980f7f8c2b3867c048bf"/><dir name="TextBox"><file name="Abstract.php" hash="79a86dc5182b44267fdf289e0afcc50f"/></dir><dir name="Tooltip"><file name="HourMinute.php" hash="49afc832ba943ae68721287a0cec17d9"/></dir><file name="UninstallButton.php" hash="7e793a5bea3ca2757fa924a070059a76"/><file name="ValidateButton.php" hash="2e807c355c09975ebdcecc95b3122051"/><file name="WarningBox.php" hash="d10d2b6ac7a48fd2b23e098c4e42a1e5"/><file name="WizardSaveButton.php" hash="c3092c8e2ec3217b0e2c64759052a913"/></dir><file name="Fieldset.php" hash="60e2cde58df3bf31c512d3cddecbd7b8"/></dir><file name="Form.php" hash="faea4d8963a40e906fa0e2f75d471999"/><file name="Js.php" hash="fef042173a890a417b379980b04af865"/></dir></dir><file name="Template.php" hash="698d5aba71928360810108ca499f5d46"/><file name="UpgradeNotification.php" hash="3c345025f1dc2baf1c2703339adedee4"/><dir name="Widget"><dir name="Form"><dir name="Element"><file name="Dependence.php" hash="0fa5334c0d152c8500270c11f833548a"/></dir></dir><dir name="Grid"><dir name="Column"><dir name="Filter"><file name="ConfirmDate.php" hash="de9c6cd4eb3b442631538e4760f9be49"/></dir><dir name="Renderer"><file name="Action.php" hash="f9c22f49ccffb03c7a7638af26beb162"/><file name="Barcode.php" hash="2e87137f14a4c9ed6f0352b76c0cec68"/><file name="ConfirmDate.php" hash="bf90b423d7704b85efb8cfcd078308ef"/><file name="ConfirmStatus.php" hash="76c2c59218a7d970aff1db1645c34173"/><file name="CountryArray.php" hash="e49b3b0de079392f59a3676879cffc72"/><file name="DeliveryDate.php" hash="4050c877c64a6a24ac0a4267fecdcf84"/><file name="OrderConfirmDate.php" hash="1395566110233ede6fb8029710e81cb3"/><file name="OrderConfirmStatus.php" hash="baff31b5b2187eb4f45261f6dc2dd98b"/><file name="OrderType.php" hash="b7af6183f916458253db6c714f5ac705"/><file name="ReturnView.php" hash="d95b0b8413c714ebad57773e4f352cbe"/><file name="ShipmentType.php" hash="2589ca78f7f5e4a6a5ca17332c65b646"/><file name="ShippingDescription.php" hash="ccfc24586ed0a5d050173cb7f807f4c7"/><file name="ShippingPhase.php" hash="17bea1345fbad0c6fc0dd0ee8aa9ae42"/><file name="Time.php" hash="380060629ddf255f88f6c7df8532ab8f"/><file name="Translate.php" hash="71a7a828f7c150d03e06be8da97ce0c5"/><dir name="Type"><file name="Abstract.php" hash="91c423dff8145717fbe85c66af6e5276"/></dir><file name="YesNo.php" hash="0363dd1204d921d715abff853cf38018"/></dir></dir><dir name="Massaction"><dir name="Item"><dir name="Additional"><file name="LabelStartPos.php" hash="e4f5e368259942adb21b1d9acd241bbf"/><file name="ProductOptions.php" hash="5fb0ac3b749d121d48a90d8b443bc628"/></dir></dir></dir></dir></dir><file name="WindowsTheme.php" hash="32aa198b04a15db89e2d85e8fdb366a5"/></dir><dir name="Checkout"><dir name="Cart"><file name="CheckoutLink.php" hash="95962909faf4ceda468c590dd739d12d"/><file name="Js.php" hash="ae3f3270dbfbe73c7b62e22d289fecc4"/></dir><file name="Summary.php" hash="f29a603b634270c755d9fbb51285bb26"/></dir><dir name="Core"><file name="JsTranslate.php" hash="e5e5c1e1945dde3289e558019afcbf9f"/><dir name="Order"><dir name="Returns"><file name="Info.php" hash="8890bc0b803aa27e0390eb0e5bd04f93"/><dir name="Shipment"><file name="Items.php" hash="227aed060faaa753c8bbac4b4b7ef104"/></dir></dir></dir><file name="ShippingStatus.php" hash="00807b7434dadcb81577a0ec9e406f1f"/><file name="Template.php" hash="9fd7d22e913b32c7c79d3f2353714765"/></dir><dir name="DeliveryOptions"><dir name="Checkout"><file name="AddPhoneNumber.php" hash="487d5e0279d440ecb6872712c7bf0bf6"/><file name="DeliveryOptions.php" hash="56aa34e084cc20846fea025c24daa469"/><dir name="GoMage"><dir name="LightCheckout"><file name="DeliveryOptions.php" hash="33bc90994ed38e73c893702bf2983cd0"/></dir></dir><file name="Progress.php" hash="ee6b2a989f34c1fbd2888f454e46bd6f"/></dir><file name="Js.php" hash="6986eace90ea7438b0ee7a5dc9062268"/><file name="PickupNotification.php" hash="517caea38f64e87659db08bd33c23b8f"/><file name="Template.php" hash="4a6119be5cde91551052685e59cac196"/><file name="Theme.php" hash="079727a91336d7ee1730daf2187c5a6b"/></dir><dir name="Mijnpakket"><file name="AccountNotification.php" hash="07165d887a985850fbc5b7feaf153d64"/><file name="Js.php" hash="325d49fd161c9b2f6d2aed7b8e26a226"/><file name="LoginButton.php" hash="9b0cb9bbe39943c9a697ba48cbcca03e"/><file name="OrderSuccessJs.php" hash="6184a29c169e32ea435d29179a6a0a61"/></dir><dir name="Payment"><dir name="Checkout"><dir name="Total"><file name="CodFee.php" hash="58c8b076ab42f123dfdd1d62f87a880a"/></dir></dir><dir name="Form"><file name="Cod.php" hash="8830e5ca6c5141f36e5b043e2af8e130"/></dir><file name="Info.php" hash="9c8a8e8eb81459220bf8730f1a01a5ee"/><dir name="Sales"><dir name="Order"><dir name="Creditmemo"><dir name="Totals"><file name="CodFee.php" hash="45dba926b63c26ea2d10eaa9342fa126"/></dir></dir><dir name="Invoice"><dir name="Totals"><file name="CodFee.php" hash="15b6052badbd7cddab9bbf0cf3f28385"/></dir></dir><dir name="Totals"><file name="CodFee.php" hash="60305f5d74bc7a5f70919b0810f5db83"/></dir></dir></dir></dir></dir><dir name="controllers"><file name="AddressValidationController.php" hash="f0cbb3c5eb7a06a7df87b46f12340f7e"/><file name="CheckoutController.php" hash="3cf67af615d9248e3a4c36b3a81aac0f"/><file name="DeliveryOptionsController.php" hash="bba6d64f24f3868bbe395825def69f4c"/><file name="GuestController.php" hash="b1fd41520eb6233ea8a592f3ad7f8960"/><file name="MijnpakketController.php" hash="cb21ac1e4a9bd9add17c726e8a4fc8c5"/><file name="OrderController.php" hash="169571ea271e3e8627417cd424265b6f"/><dir name="PostnlAdminhtml"><file name="ConfigController.php" hash="4be0a654b3587c85cfa407a2efdf7ac3"/><file name="ExtensionControlController.php" hash="8b53f7625d0d785012d583431df9b05e"/><file name="ReturnsController.php" hash="8970672c07d50c0db41d9ead77f85685"/><file name="ShipmentController.php" hash="555f97328eb9e3ca55d77f609773aab3"/></dir></dir><dir name="data"><dir name="postnl_setup"><file name="data-install-1.0.0.php" hash="0f6e51ffdb05c34ee375caa6ed04330a"/><file name="data-install-1.0.3.php" hash="e810f0490e9addecdff1e147038505cf"/><file name="data-install-1.1.4.php" hash="679d2f5045221c9e4a5739ceea6aea5d"/><file name="data-install-1.3.0.php" hash="acb1dba6ea2f9d20fab54f4da8d01b1d"/><file name="data-install-1.4.0.php" hash="aa25ceff90a870a56f91b1e1e1535748"/><file name="data-install-1.4.1.php" hash="aa25ceff90a870a56f91b1e1e1535748"/><file name="data-install-1.5.0.php" hash="f6b92b1e6580b4d27ae59bdaa266f12b"/><file name="data-install-1.5.2.php" hash="f6b92b1e6580b4d27ae59bdaa266f12b"/><file name="data-install-1.7.0.php" hash="f6b92b1e6580b4d27ae59bdaa266f12b"/><file name="data-uninstall-1.5.2.php" hash="936bca5a4d83453ba084eae9222063fd"/><file name="data-upgrade-1.1.5-1.2.0.php" hash="d42917000f883909039da268d072f12e"/><file name="data-upgrade-1.2.2-1.3.0.php" hash="081f4fe0da30d8d1f17243044788d891"/><file name="data-upgrade-1.2.2-1.4.0.php" hash="ca609ef0963d214fdc73c2c683b6338d"/><file name="data-upgrade-1.3.1-1.4.0.php" hash="3adec6e1e180139c8736c0e38e3d64d0"/><file name="data-upgrade-1.4.0-1.4.1.php" hash="cc24dfba809a3258814cf736ace125c7"/><file name="data-upgrade-1.4.1-1.5.0.php" hash="07add30edfd0134bc5a1c9c3cc714463"/><file name="data-upgrade-1.5.1-1.5.2.php" hash="0a1c7ca7b337f718b2c94ffe6fd9e31d"/><file name="data-upgrade-1.6.0-1.6.1.php" hash="e7703a1946197f942e18d580315e1271"/><file name="data-upgrade-1.6.1-1.7.0.php" hash="4e77adb10d70f54ae7f2e38d4abcfe7a"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="56189634cdb92603e2b7c1bb7992b9f2"/><file name="api.xml" hash="06c70ddaedf5f1d80e5f00fed36861b9"/><file name="config.xml" hash="076c308e07dfd4ee972e9d8ad0dba308"/><file name="jstranslator.xml" hash="a59acc314517af3f6b3b3db8d5d7f833"/><file name="logging.xml" hash="04c82fc7390fe3a2547834f6e52b6777"/><file name="system.xml" hash="3e792c7a4ed0ee61912e113b2742783a"/><file name="wsdl.xml" hash="21b79f48351ea629cff7d17c8f65c4ee"/><file name="wsi.xml" hash="ac2aada1c17a03519e02fa7ef93e49ca"/></dir><dir name="Helper"><file name="AddressValidation.php" hash="ba4945afa4f4dc1c33e7efdf87b74fe6"/><file name="Adminhtml.php" hash="948ab2c69eaf1097a52c2a9d5ab44852"/><file name="Carrier.php" hash="a66a1eec4bcb467ba96da214c70acf4c"/><file name="Checkout.php" hash="d4d9c0ad29b2196d78d33e716536d9c8"/><file name="Cif.php" hash="f06024b41e15eb17b48d57e0b3545a4f"/><file name="Data.php" hash="b45df75412993e948d6846f891f2a6fd"/><file name="Date.php" hash="a9d8269fc2f482cbb56d285f1a7e2498"/><dir name="DeliveryOptions"><file name="Fee.php" hash="0bea0d72d07f67e4e81eff2d9cd20460"/></dir><file name="DeliveryOptions.php" hash="4cd080a8fcaee119495ee7a16221766e"/><file name="Mijnpakket.php" hash="4e2868c2420ed3ae04f6aa39f1491fd6"/><file name="Parcelware.php" hash="186b41ea5ff5f95f27eee2bdcdc2e554"/><file name="Payment.php" hash="654932a980a34c58fd5b5854ebbf13a8"/><file name="Webservices.php" hash="ed9834c4bb7afa088701c894590e40eb"/></dir><dir name="Model"><dir name="AddressValidation"><dir name="Cendris"><file name="Abstract.php" hash="50c033ec698cede75909218c10407a51"/></dir><file name="Cendris.php" hash="e1f6c7f6b2a3cba3cc7b0202b1112588"/><dir name="Observer"><file name="AddressBook.php" hash="500df77a7d02b3e2beab105f70491d29"/><file name="OneStepCheckout.php" hash="881144684006dee7fd19f3a1ceafda0e"/><file name="Onepage.php" hash="15dce59c220b464341341d9607c7a15b"/></dir><dir name="System"><dir name="Config"><dir name="Backend"><file name="ValidateAccount.php" hash="93e274a7a9d51d180eebcf534c3278ae"/></dir></dir></dir></dir><dir name="Admin"><file name="Inbox.php" hash="ec5296dc861d31e076f68e15f50b8fa3"/><dir name="Logging"><dir name="Handler"><file name="Postnl.php" hash="8d4084fb026faf90aa92db70f014d3f8"/></dir><file name="Observer.php" hash="e510d279768c5c884c112dc1415854c6"/></dir></dir><dir name="Adminhtml"><dir name="Form"><dir name="Element"><file name="Checkbox.php" hash="1d1d599f8f77e689cd99b0a56406c658"/></dir></dir><dir name="Observer"><file name="OrderGrid.php" hash="93aa40c60c4fc1afefce136f8c3460cc"/><file name="ShipmentGrid.php" hash="88bafd93f9a6130786ee0b8e66f71416"/><file name="ShipmentView.php" hash="b98b741eb1baca0c91a47427873281d3"/><file name="SystemConfig.php" hash="2b230b2332ca8624e702ea2873a4d28f"/></dir><dir name="Support"><file name="Logs.php" hash="9015b88009cd9fe4272f7e1c515a3c1e"/></dir><dir name="System"><dir name="Config"><dir name="Source"><file name="OrderGridColumns.php" hash="43b606fb5126a37deb932323776ed018"/><file name="OrderGridMassaction.php" hash="fbe0d93e489c33dee7ac78e2b46f71ce"/><file name="ShipmentGridColumns.php" hash="0f454ed444c2b336b679851ba4628315"/><file name="ShipmentGridMassaction.php" hash="cc0020d8889bd2b3b882e1239ca3a5d3"/></dir></dir></dir></dir><dir name="Carrier"><file name="Matrixrate.php" hash="06770348fd20799930fde401f4f13f36"/><file name="Postnl.php" hash="2b3b4fdfb082875f1733710ce19ef87c"/><dir name="Quote"><dir name="Address"><dir name="Total"><file name="Shipping.php" hash="4f1b1cac89fe1f5ad3c0005fbe8219e5"/></dir></dir></dir><dir name="Resource"><dir name="Matrixrate"><file name="Collection.php" hash="2a1c138a047d05d8e6c60ab6f72b7513"/></dir><file name="Matrixrate.php" hash="32521fef38856bd278e007106a8302f8"/><dir name="Tablerate"><file name="Collection.php" hash="6e88398632a25d1e2764077baeb2bc34"/></dir><file name="Tablerate.php" hash="0c1accf31df8fea3b5957c3ec153e04e"/></dir><dir name="System"><dir name="Config"><dir name="Backend"><file name="Matrixrate.php" hash="b577a98aaf72c2d257b70c90fe3359b7"/><file name="Tablerate.php" hash="350d5ad8dbc4642c57ce43f09b2f0abb"/></dir><dir name="Source"><file name="RateType.php" hash="bf48a14786d0c082c77e5030569e722e"/><file name="TablerateSource.php" hash="c6db35abf67e414753170899e6a32574"/></dir></dir></dir><file name="Tablerate.php" hash="f04830fdd0204e77fd3722a3126e053f"/></dir><dir name="Checkout"><file name="Cif.php" hash="7ccfe830d1014b72dcc4cde189ababeb"/><dir name="Observer"><file name="Order.php" hash="9bc4e68ff3aa044d354a8cfd7c6d2973"/><file name="Shipment.php" hash="d1476ec8b026526652944578f3cdc6e0"/></dir><file name="Order.php" hash="4a6595b1d38ee5e9bb59121217c7d7ec"/><file name="Service.php" hash="643115d26dd7d0fbb0403201821a0d22"/><dir name="System"><dir name="Config"><dir name="Source"><file name="ActivePaymentMethods.php" hash="25641b223a79ae37ef3748b5bcb8ff10"/><file name="CmsPage.php" hash="9fc61473b5b3ad4692c694b0090020d0"/></dir></dir></dir></dir><dir name="Core"><dir name="Api"><file name="V2.php" hash="fcc859d18412537c16dd5a05048fe389"/></dir><file name="Api.php" hash="5713490c5a033f2feb92944cbe710643"/><file name="Cache.php" hash="6ac64a62771b5a149b2069bbcb207027"/><dir name="Cif"><file name="Abstract.php" hash="0a153e5528029d7ab14c7c3d2bbadb69"/><file name="Exception.php" hash="bc208a7f87f76017f95367791b5a757a"/></dir><file name="Cif.php" hash="cc14265785601a2f3235fa1fe7a84054"/><file name="Label.php" hash="ffcc5905e8da72c7f98d97f64f8f8be8"/><dir name="Observer"><file name="Barcode.php" hash="ad88f42dae63a5026175ad48c9867496"/><file name="Cache.php" hash="069ebcbb34d8374da85f5215dd62b64c"/><file name="Cron.php" hash="5b2624ed83115b047649d2bc328a8438"/><file name="Returns.php" hash="615e291be056343d1b6c2315973ef923"/><file name="SaveShipment.php" hash="a5d68c8d535bd223446eb266be27c64c"/></dir><file name="Order.php" hash="45306091a47ec9ef89c00b9dfb6c90ef"/><file name="PackingSlip.php" hash="8ed61657da450aafa3a1224d06ad75f8"/><dir name="Packingslip"><dir name="Pdf"><dir name="Items"><dir name="Invoice"><file name="Default.php" hash="bcc11102dd46f50b24ab638272f08bec"/></dir></dir></dir></dir><dir name="Resource"><dir name="Integrity"><file name="Collection.php" hash="801fef1fa85ce429ad6a183c047d2f30"/></dir><file name="Integrity.php" hash="02fda656ed92340c0cd9ed04cdf4e021"/><dir name="Order"><file name="Collection.php" hash="7833da8c9b02253fa34b3a7f0dfac065"/></dir><file name="Order.php" hash="dc95e51a1246ab1c11edc208fc7033b1"/><dir name="Shipment"><dir name="Barcode"><file name="Collection.php" hash="5b52ea9f06abffc9d3f43a102faf9b66"/></dir><file name="Barcode.php" hash="866e9b9fba53b6b92b91cdee9f54be9d"/><file name="Collection.php" hash="5615baafe4dd845657ad770b9bd20960"/><dir name="Label"><file name="Collection.php" hash="a1db2bb6a3c928a8e5b3ab369a46e49d"/></dir><file name="Label.php" hash="0fb2575b876d9afa43506ef673a07890"/><dir name="Status"><dir name="History"><file name="Collection.php" hash="2a7f814cf8272411106b82290dbe986a"/></dir><file name="History.php" hash="e0b88660d2f70dbb64931267e356887f"/></dir></dir><file name="Shipment.php" hash="aed109e5357ab39a8b787da35cd8adf1"/></dir><dir name="Service"><file name="IntegrityCheck.php" hash="8018c9670c0628cbcffb5a016d69024e"/><file name="InvoiceDummy.php" hash="44685782fb45d538e52fa55af499a98d"/><file name="OrderDummy.php" hash="692f3dbd80474a91e94260b2d7a36093"/><file name="PaymentDummy.php" hash="cbf5cc5602001b04773cbca56638f6ff"/><file name="PaymentMethodDummy.php" hash="fb6c9d1ff9476a7837b12bb2b182deab"/><file name="Shipment.php" hash="ed78a6f67553fdf2d7fe4189506da367"/></dir><file name="Service.php" hash="efbc3d15489140ca6467601470bc2677"/><dir name="Shipment"><file name="Barcode.php" hash="d832ccbc623866dc4734569bc10904bd"/><file name="Label.php" hash="c6b66bc313cbf12df5dd03f2030957c3"/><file name="Process.php" hash="dfc7ca384ec53e190d030c77c09ac77c"/><dir name="Status"><file name="History.php" hash="4eb1d2b51250ed211c8d9a3daee7eab5"/></dir></dir><file name="Shipment.php" hash="3450a8abc2a4e7ab190c63932d8f4cc5"/><dir name="System"><dir name="Config"><dir name="Backend"><file name="HourMinute.php" hash="554a64b90a144a2befd5b08910415fe8"/><dir name="Image"><file name="Pdf.php" hash="4bea24f4e50dbed7656cbb16a026b030"/></dir><file name="SenderCountry.php" hash="3babb54a85ee385ced4f7c8ecab9e2ec"/><file name="ValidateDefaultOption.php" hash="13fd85e0856fa4727dd8fd48280497bb"/></dir><dir name="Source"><file name="AllProductOptions.php" hash="ced20eddf4d92e33de6a36bebf1e201e"/><file name="Attributes.php" hash="2473c5ea43dc870d0fc8c9ca65ce114f"/><file name="BuspakjeProductOptions.php" hash="61160df0a489706d8aaf667824a4667a"/><file name="CheckoutExtensions.php" hash="11a6a8677dc17953aad9bed4d3255e9e"/><file name="CommentType.php" hash="45f7d07778d18d65985aa27a96bc6435"/><file name="CutOffTime.php" hash="81cee271d87bcfea0e00743a8c0890d8"/><file name="DebugMode.php" hash="523dcaf9a609ac98394fd2b2c08d671f"/><file name="Direction.php" hash="311ab3017a41f2e2b74546f908580e1d"/><file name="EuProductOptions.php" hash="82b22e6dd7216b906ddd75acf1455cd8"/><file name="GlobalProductOptions.php" hash="55a47c89eb97f2818d197c15fd8f75da"/><file name="GlobalpackShipmentType.php" hash="671b24f7531e28a5bdcdae6af132c0a6"/><file name="HourMinute.php" hash="94a06e8e207905706a1dc5f659d1763a"/><file name="LabelSize.php" hash="47c7df3c8be3c4cbc18a9ef3657bfa80"/><file name="ManualAutomatic.php" hash="33e2dc23ad7c1cec65ed399eb503ae2c"/><file name="PackingSlipItemFields.php" hash="8996461b8aa59c4ca4f665f6efc0046b"/><file name="PackingSlipLabel.php" hash="79671ca1c255f5fbdf775598f30a4b7a"/><file name="PakjeGemakProductOptions.php" hash="8ac50f9b9fc670f1112e126f6ce3628a"/><file name="PakketautomaatProductOptions.php" hash="21fd7ca0391391ec70646e8210d0d9b3"/><dir name="ProductOptions"><file name="Abstract.php" hash="c4937117ff0eef9b09cb5c0397286306"/></dir><file name="ReferenceType.php" hash="4f404910f2989464e5b107e15be0c0eb"/><file name="SenderCountry.php" hash="fcba64b64dd4fe76230bbad825ec975e"/><file name="ShippingDays.php" hash="185cd2b5e5fcdc380fb607591b054a3e"/><file name="ShippingDuration.php" hash="1aa01df7274c360143fb0b2963ce9e68"/><file name="ShippingMethods.php" hash="5779b9e9c9af5cb2c6a5d25b761227b0"/><file name="StandardProductOptions.php" hash="e7546057915a3acfcc97c40ee9c78e4c"/><file name="StaticBlocks.php" hash="1c3d2fc026d1afc7a7108b61e76828b7"/><file name="StreetField.php" hash="80123df69368755513c4341306bd2065"/><file name="StreetFieldWithDefault.php" hash="bac4f43be478165ca454d2423f611a77"/><file name="SundayProductOptions.php" hash="22130290e3e05b703e77a0206941c78d"/><file name="WeightUnit.php" hash="b6bbe9c7c8c2ae76d991963a3f44cd99"/></dir></dir></dir></dir><dir name="DeliveryOptions"><file name="Cif.php" hash="54ac1692bd35301f4c9f3fada543e5e1"/><dir name="Observer"><dir name="GoMage"><dir name="LightCheckout"><file name="Ajax.php" hash="12682d1c78338fbae4ee9739f5096983"/></dir></dir><file name="ShippingMethodAvailable.php" hash="2ad9bf64aee177805a321653610e198f"/><file name="UpdatePostnlOrder.php" hash="819b61ef0fbed3f944f8df458e92dd6d"/></dir><dir name="Product"><dir name="Attribute"><dir name="Source"><file name="ShippingDuration.php" hash="90349cc22cb674e66ab781a306edf254"/></dir></dir></dir><file name="Service.php" hash="0bf672ab839bda360794c74b7132552e"/><dir name="System"><dir name="Config"><dir name="Backend"><dir name="ValidateFee"><file name="SundayDeliveryFee.php" hash="a08f2591640c8536ce62b14759f7388b"/></dir><file name="ValidateFee.php" hash="e9be068f77d2c30c9b8ccec5d08c9de2"/></dir><dir name="Source"><file name="DeliveryDaysNumber.php" hash="1d8efcdf01df2d64f526c9252d1f7b0b"/><file name="StockOptions.php" hash="441c9cefc7338910a2945757f7842366"/><file name="Themes.php" hash="9b9e2ea217313bbc4b426dfa04f74f66"/></dir></dir></dir></dir><dir name="ExtensionControl"><file name="Config.php" hash="f8c7c6f3861226a4b7be138f2931c6d2"/><file name="Feed.php" hash="f4a9f3a94304e2b0232ce7bd6a387d5a"/><dir name="Observer"><file name="Cron.php" hash="4c6cb0450d529f262fc6fd8291b672de"/></dir><dir name="Webservices"><file name="Abstract.php" hash="c76ee8ce49daf8d196831de07c7cd669"/></dir><file name="Webservices.php" hash="b8fbe739eba545e6e69d3dd9b82aca01"/></dir><file name="Inbox.php" hash="7b8a986f8015a7b02bda5dd8a62ec142"/><dir name="Mijnpakket"><file name="Cif.php" hash="1b3aee253fd6774eee7e2ff0e16735d3"/><file name="Service.php" hash="8d077e3ec1ab1da2f7546c9164d19fc6"/></dir><dir name="Parcelware"><file name="Export.php" hash="8376fb5198cebb9c37f748cb10b723a9"/></dir><dir name="Payment"><file name="Cod.php" hash="02b89a8c029b61b7d302424b1e6fb719"/><dir name="Observer"><file name="Cod.php" hash="babbb29d7bd51962c0a421a4162806b6"/></dir><dir name="Order"><dir name="Creditmemo"><dir name="Total"><dir name="CodFee"><file name="Abstract.php" hash="d094101edbd45da5014d8da7596aeb42"/></dir><file name="CodFee.php" hash="61649dc792fef11e833d6a6438fb4bd3"/><file name="CodFeeTax.php" hash="2e171923277c33a239e4f0c3eadb3d98"/></dir></dir><dir name="Invoice"><dir name="Total"><file name="CodFee.php" hash="1fba67d2cfbfd26a0a253ca9e83e7f55"/><file name="CodFeeTax.php" hash="a16e2216e8f156edb316fa4d3acdcf65"/><file name="Subtotal.php" hash="4d93dbab0e57076404275983d7ecefb6"/></dir></dir><dir name="Pdf"><dir name="Total"><file name="CodFee.php" hash="73eddd5e61452a2e018dfa6af3c1464b"/><file name="Grandtotal.php" hash="f9baa2ba4d712cbe6ed677d95aaa8a0e"/><file name="Tax.php" hash="5685ecae76e17277736901942f851452"/></dir></dir></dir><dir name="Quote"><dir name="Address"><dir name="Total"><dir name="CodFee"><file name="Abstract.php" hash="183493f74e29e0f01a6550c3cceb07bd"/></dir><file name="CodFee.php" hash="9c6d0e1695f274c06b1d6ecbc41a74cd"/><file name="CodFeeTax.php" hash="227ab37a8fa18162093257bca9235151"/></dir></dir></dir><file name="Service.php" hash="7b2e6ceb6c167bb55cca7b472206cb47"/><dir name="System"><dir name="Config"><dir name="Source"><file name="CodFeeTaxClass.php" hash="44551d5944906bbc3d3228131324b84c"/></dir></dir></dir></dir><dir name="Resource"><dir name="Catalog"><file name="Product.php" hash="42e4000e43176e1d6ee4336781478673"/></dir><dir name="Db"><file name="Abstract.php" hash="5abcdd8977c7000f81157991be5e4254"/><dir name="Collection"><file name="Postnl.php" hash="6d58f3700831f61c51f711f64684b09b"/></dir></dir><dir name="Order"><dir name="Grid"><file name="Collection.php" hash="9014651adaab7bce2b670dba10d97b62"/></dir><dir name="Shipment"><dir name="Grid"><file name="Collection.php" hash="3d1f13f598acbaa561a36f1a91882064"/></dir></dir><file name="Shipment.php" hash="8b9f972ad5b3ae1ccd3a7721ee347120"/></dir><file name="Setup.php" hash="53ef56d50d9681ae5c761d308122bddc"/></dir><dir name="System"><dir name="Config"><dir name="Backend"><file name="Checkbox.php" hash="0406128f26b82124d3b9ac698dfa8b09"/></dir><dir name="Source"><file name="Testlive.php" hash="ddd6fab7b721c4776355c5970df35716"/><file name="Yesno.php" hash="eed431ec0c66f961063b71f7150d8c20"/></dir></dir></dir></dir><dir name="sql"><dir name="postnl_setup"><file name="install-1.0.0.php" hash="0dc89283fefae06eda154b0d24dc01f9"/><file name="upgrade-1.1.5-1.2.0.php" hash="2881d8847c87c32ebfb5803f436cf024"/><file name="upgrade-1.2.2-1.3.0.php" hash="157203a83d21987b05088e2dc826bbc5"/><file name="upgrade-1.3.1-1.4.0.php" hash="5aaa53a0ae8eb13e746f8653f8d3ace1"/><file name="upgrade-1.4.1-1.5.0.php" hash="e1dcb902c674cb23072383b2872e554a"/></dir></dir><file name="Exception.php" hash="4e387d54ace504eb1a3e9dcf683283fa"/><dir name="Controller"><dir name="Adminhtml"><file name="Abstract.php" hash="3a9c4368b6341595a54d0f42674b9d46"/><file name="Config.php" hash="48248ae95f4f8d598c6505cc8555058b"/><file name="Shipment.php" hash="66b4938de6b9c8c2918d3ef6288c5114"/></dir><file name="Sales.php" hash="cb8ae934de6a38903e8ccfc76acf79bd"/></dir><dir name="docs"><file name="modman" hash="1af20fda3c00366cd3bce971af94ec54"/></dir></dir></dir></target></contents>
417
  <compatible/>
418
  <dependencies><required><php><min>5.3.0</min><max>6.0.0</max></php></required></dependencies>
419
  </package>
skin/frontend/base/default/js/TIG/PostNL/deliveryOptions.js CHANGED
@@ -71,6 +71,43 @@ if (typeof Element.triggerEvent == 'undefined') {
71
  };
72
  }
73
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
74
  /**
75
  * PostNL delivery options logic class.
76
  *
@@ -92,6 +129,7 @@ PostnlDeliveryOptions.prototype = {
92
 
93
  postcode : null,
94
  housenumber : null,
 
95
  fullAddress : null,
96
  deliveryDate : null,
97
  imageBaseUrl : null,
@@ -138,6 +176,7 @@ PostnlDeliveryOptions.prototype = {
138
  || !params.locationsInAreaUrl
139
  || !params.postcode
140
  || !params.housenumber
 
141
  || !params.deliveryDate
142
  || !params.imageBaseUrl
143
  || !params.fullAddress
@@ -153,6 +192,7 @@ PostnlDeliveryOptions.prototype = {
153
  this.locationsInAreaUrl = params.locationsInAreaUrl;
154
  this.postcode = params.postcode;
155
  this.housenumber = params.housenumber;
 
156
  this.deliveryDate = params.deliveryDate;
157
  this.imageBaseUrl = params.imageBaseUrl;
158
  this.fullAddress = params.fullAddress;
@@ -168,13 +208,17 @@ PostnlDeliveryOptions.prototype = {
168
  allowPg : true,
169
  allowPge : false,
170
  allowPa : true,
 
171
  isBuspakje : false,
172
  taxDisplayType : 1,
173
  eveningFeeIncl : 0,
174
  eveningFeeExcl : 0,
 
 
175
  expressFeeIncl : 0,
176
  expressFeeExcl : 0,
177
  eveningFeeText : '',
 
178
  expressFeeText : '',
179
  allowStreetview : true,
180
  scrollbarContainer : 'scrollbar_content',
@@ -256,6 +300,11 @@ PostnlDeliveryOptions.prototype = {
256
  return this.housenumber;
257
  },
258
 
 
 
 
 
 
259
  getFullAddress : function() {
260
  return this.fullAddress;
261
  },
@@ -663,7 +712,7 @@ PostnlDeliveryOptions.prototype = {
663
  this.deliveryOptionsMap = new PostnlDeliveryOptions.Map(this.getFullAddress(), this, this.debug);
664
 
665
  if (this.isDeliveryDaysAllowed()) {
666
- this.getTimeframes(this.getPostcode(), this.getHousenumber(), this.getDeliveryDate());
667
  } else {
668
  if (this.debug) {
669
  console.info('Showing default timeframe.');
@@ -672,7 +721,7 @@ PostnlDeliveryOptions.prototype = {
672
  .setParsedTimeframes(true)
673
  .hideSpinner();
674
  }
675
- this.getLocations(this.getPostcode(), this.getHousenumber(), this.getDeliveryDate());
676
 
677
  return this;
678
  },
@@ -682,11 +731,12 @@ PostnlDeliveryOptions.prototype = {
682
  *
683
  * @param {string} postcode
684
  * @param {number} housenumber
 
685
  * @param {string} deliveryDate
686
  *
687
  * @returns {boolean|Array|PostnlDeliveryOptions}
688
  */
689
- getTimeframes : function(postcode, housenumber, deliveryDate) {
690
  if (this.debug) {
691
  console.info('Getting available timeframes.');
692
  }
@@ -715,6 +765,10 @@ PostnlDeliveryOptions.prototype = {
715
  housenumber = this.getHousenumber();
716
  }
717
 
 
 
 
 
718
  if (!deliveryDate) {
719
  deliveryDate = this.getDeliveryDate();
720
  }
@@ -725,6 +779,7 @@ PostnlDeliveryOptions.prototype = {
725
  postcode : postcode,
726
  housenumber : housenumber,
727
  deliveryDate : deliveryDate,
 
728
  isAjax : true
729
  },
730
  onSuccess : this.processGetTimeframesSuccess.bind(this),
@@ -771,6 +826,9 @@ PostnlDeliveryOptions.prototype = {
771
 
772
  if (checkbox.checked) {
773
  selectPostnlShippingMethod = true;
 
 
 
774
  }
775
 
776
  /**
@@ -805,7 +863,7 @@ PostnlDeliveryOptions.prototype = {
805
  for (var i = 0, m = currentTimeframe.Timeframes.TimeframeTimeFrame.length; i < m ; i++, o++) {
806
  var currentSubTimeframe = currentTimeframe.Timeframes.TimeframeTimeFrame[i];
807
  if (this.isEveningTimeframesAllowed() === false
808
- && currentSubTimeframe.TimeframeType == 'Avond'
809
  ) {
810
  continue;
811
  }
@@ -852,6 +910,10 @@ PostnlDeliveryOptions.prototype = {
852
 
853
  if (this.getOptions().isOsc) {
854
  this.timeframes[0].renderAsOsc();
 
 
 
 
855
  }
856
 
857
  if (this.debug) {
@@ -869,7 +931,10 @@ PostnlDeliveryOptions.prototype = {
869
  var fakeTimeframe = {
870
  From : '09:00:00',
871
  To : '18:00:00',
872
- TimeframeType : 'Overdag'
 
 
 
873
  };
874
 
875
  var postnlTimeframe = new PostnlDeliveryOptions.Timeframe(this.getDeliveryDate(), fakeTimeframe, 0, this);
@@ -890,11 +955,12 @@ PostnlDeliveryOptions.prototype = {
890
  *
891
  * @param {string} postcode
892
  * @param {int} housenumber
 
893
  * @param {string} deliveryDate
894
  *
895
  * @return {PostnlDeliveryOptions}
896
  */
897
- getLocations : function(postcode, housenumber, deliveryDate) {
898
  if (this.debug) {
899
  console.info('Getting available delivery locations.');
900
  }
@@ -913,6 +979,7 @@ PostnlDeliveryOptions.prototype = {
913
  postcode : postcode,
914
  housenumber : housenumber,
915
  deliveryDate : deliveryDate,
 
916
  isAjax : true
917
  },
918
  onSuccess : this.processGetLocationsSuccess.bind(this),
@@ -960,8 +1027,12 @@ PostnlDeliveryOptions.prototype = {
960
  /**
961
  * Parse and render the result.
962
  */
963
- this.parseLocations(locations)
964
- .renderLocations();
 
 
 
 
965
 
966
  this.setParsedLocations(true)
967
  .hideSpinner();
@@ -1479,9 +1550,9 @@ PostnlDeliveryOptions.prototype = {
1479
  document.fire('postnl:selectOptionSaveStart');
1480
  },
1481
  onSuccess : function(response) {
1482
- var responseText = response.responseText;
1483
  if (responseText != 'OK') {
1484
- return;
1485
  }
1486
 
1487
  document.fire('postnl:selectOptionSaved');
@@ -1509,6 +1580,8 @@ PostnlDeliveryOptions.prototype = {
1509
  extraCosts = this.getOptions().expressFeeIncl;
1510
  } else if (selectedType == 'Avond') {
1511
  extraCosts = this.getOptions().eveningFeeIncl;
 
 
1512
  }
1513
 
1514
  if (this.debug) {
@@ -1522,6 +1595,8 @@ PostnlDeliveryOptions.prototype = {
1522
  extraCosts = this.getOptions().expressFeeExcl;
1523
  } else if (selectedType == 'Avond') {
1524
  extraCosts = this.getOptions().eveningFeeExcl;
 
 
1525
  }
1526
 
1527
  if (this.debug) {
@@ -2500,12 +2575,13 @@ PostnlDeliveryOptions.Map = new Class.create({
2500
  */
2501
  geocode : function(address, successCallback, failureCallback) {
2502
  var geocoder = new google.maps.Geocoder();
 
2503
  geocoder.geocode(
2504
  {
2505
  address : address,
2506
  bounds : this.map.getBounds(),
2507
  componentRestrictions : {
2508
- country : 'NL'
2509
  }
2510
  },
2511
  function(results, status) {
@@ -2535,6 +2611,8 @@ PostnlDeliveryOptions.Map = new Class.create({
2535
  this.hideSearchErrorDiv();
2536
  var selectedResult = false;
2537
 
 
 
2538
  /**
2539
  * Loop through all results and validate each to find a suitable result to use.
2540
  */
@@ -2556,22 +2634,22 @@ PostnlDeliveryOptions.Map = new Class.create({
2556
  /**
2557
  * Make sure the result is located in the Netherlands.
2558
  */
2559
- var resultIsNl = false;
2560
  var components = result.address_components;
2561
  components.each(function(component) {
2562
  if (selectedResult !== false) {
2563
  return false;
2564
  }
2565
 
2566
- if (component.short_name != 'NL') {
2567
  return false;
2568
  }
2569
 
2570
- resultIsNl = true;
2571
  return true;
2572
  });
2573
 
2574
- if (!resultIsNl) {
2575
  return false;
2576
  }
2577
 
@@ -2729,6 +2807,8 @@ PostnlDeliveryOptions.Map = new Class.create({
2729
  }
2730
  }
2731
 
 
 
2732
  /**
2733
  * Send a new getNearestLocations request.
2734
  */
@@ -2736,7 +2816,8 @@ PostnlDeliveryOptions.Map = new Class.create({
2736
  method : 'post',
2737
  parameters : {
2738
  lat : center.lat(),
2739
- long : center.lng(),
 
2740
  deliveryDate : this.getDeliveryOptions().getDeliveryDate(),
2741
  isAjax : true
2742
  },
@@ -2782,7 +2863,7 @@ PostnlDeliveryOptions.Map = new Class.create({
2782
  },
2783
 
2784
  /**
2785
- * Search for lolcations inside the maps' viewport. Results will contain up to 20 locations of varying types.
2786
  *
2787
  * @returns {PostnlDeliveryOptions.Map}
2788
  */
@@ -2820,6 +2901,8 @@ PostnlDeliveryOptions.Map = new Class.create({
2820
  }
2821
  }
2822
 
 
 
2823
  var locationsInAreaRequestObject = new Ajax.PostnlRequest(this.deliveryOptions.getLocationsInAreaUrl(), {
2824
  method : 'post',
2825
  parameters : {
@@ -2827,6 +2910,7 @@ PostnlDeliveryOptions.Map = new Class.create({
2827
  northEastLng : northEast.lng(),
2828
  southWestLat : southWest.lat(),
2829
  southWestLng : southWest.lng(),
 
2830
  deliveryDate : this.getDeliveryOptions().getDeliveryDate(),
2831
  isAjax : true
2832
  },
@@ -4282,41 +4366,48 @@ PostnlDeliveryOptions.Location = new Class.create({
4282
  if (typeof n == 'undefined') {
4283
  n = 0;
4284
  }
4285
-
4286
  /**
4287
  * If over 7 attempts have been made, return the current date (it should be 1 week after the first attempt).
4288
  */
4289
  if (n > 7) {
4290
  return date;
4291
  }
4292
-
4293
  var openingDays = this.getOpeningHours();
4294
-
4295
  /**
4296
  * Check if the location is open on the specified day of the week.
4297
  */
4298
  var openingHours = false;
4299
  switch (date.getDay()) {
4300
  case 0:
4301
- openingHours = openingDays.Sunday.string;
4302
  break;
4303
  case 1:
4304
- openingHours = openingDays.Monday.string;
4305
  break;
4306
  case 2:
4307
- openingHours = openingDays.Tuesday.string;
 
 
4308
  break;
4309
  case 3:
4310
- openingHours = openingDays.Wednesday.string;
 
 
4311
  break;
4312
  case 4:
4313
- openingHours = openingDays.Thursday.string;
 
 
4314
  break;
4315
  case 5:
4316
- openingHours = openingDays.Friday.string;
 
 
4317
  break;
4318
  case 6:
4319
- openingHours = openingDays.Saturday.string;
 
 
4320
  break;
4321
  }
4322
 
@@ -4330,6 +4421,12 @@ PostnlDeliveryOptions.Location = new Class.create({
4330
  var nextDay = new Date(date);
4331
  nextDay.setDate(date.getDate() + 1);
4332
 
 
 
 
 
 
 
4333
  return this.getDeliveryDate(nextDay, n + 1);
4334
  }
4335
 
@@ -5057,7 +5154,19 @@ PostnlDeliveryOptions.Timeframe = new Class.create({
5057
  this.date = date;
5058
  this.from = timeframe.From;
5059
  this.to = timeframe.To;
5060
- this.type = timeframe.TimeframeType;
 
 
 
 
 
 
 
 
 
 
 
 
5061
 
5062
  this.timeframeIndex = timeframeIndex;
5063
 
@@ -5241,6 +5350,17 @@ PostnlDeliveryOptions.Timeframe = new Class.create({
5241
  comment = '<span class="option-comment">' + Translator.translate('evening') + extraCostHtml + '</span>';
5242
  }
5243
 
 
 
 
 
 
 
 
 
 
 
 
5244
  return comment;
5245
  },
5246
 
@@ -5306,26 +5426,4 @@ PostnlDeliveryOptions.Timeframe = new Class.create({
5306
 
5307
  return this;
5308
  }
5309
- });
5310
-
5311
- if (!Array.prototype.indexOf) {
5312
- Array.prototype.indexOf = function(obj, start) {
5313
- for (var i = (start || 0), j = this.length; i < j; i++) {
5314
- if (this[i] === obj) { return i; }
5315
- }
5316
- return -1;
5317
- }
5318
- }
5319
-
5320
- if (!Number.prototype.formatMoney) {
5321
- Number.prototype.formatMoney = function(c, d, t){
5322
- c = isNaN(c = Math.abs(c)) ? 2 : c;
5323
- d = d == undefined ? "." : d;
5324
- t = t == undefined ? "," : t;
5325
- var n = this,
5326
- s = n < 0 ? "-" : "",
5327
- i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "",
5328
- j = (j = i.length) > 3 ? j % 3 : 0;
5329
- return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
5330
- }
5331
- }
71
  };
72
  }
73
 
74
+ /**
75
+ * Add the 'trim' method to strings for browsers that do not natively support this method.
76
+ */
77
+ if(typeof String.prototype.trim !== 'function') {
78
+ String.prototype.trim = function() {
79
+ return this.replace(/^\s+|\s+$/g, '');
80
+ }
81
+ }
82
+
83
+ /**
84
+ * Add a 'indexOf' method to arrays.
85
+ */
86
+ if (!Array.prototype.indexOf) {
87
+ Array.prototype.indexOf = function(obj, start) {
88
+ for (var i = (start || 0), j = this.length; i < j; i++) {
89
+ if (this[i] === obj) { return i; }
90
+ }
91
+ return -1;
92
+ }
93
+ }
94
+
95
+ /**
96
+ * Add a 'formatMoney' method to numbers.
97
+ */
98
+ if (!Number.prototype.formatMoney) {
99
+ Number.prototype.formatMoney = function(c, d, t){
100
+ c = isNaN(c = Math.abs(c)) ? 2 : c;
101
+ d = d == undefined ? "." : d;
102
+ t = t == undefined ? "," : t;
103
+ var n = this,
104
+ s = n < 0 ? "-" : "",
105
+ i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "",
106
+ j = (j = i.length) > 3 ? j % 3 : 0;
107
+ return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
108
+ }
109
+ }
110
+
111
  /**
112
  * PostNL delivery options logic class.
113
  *
129
 
130
  postcode : null,
131
  housenumber : null,
132
+ country : null,
133
  fullAddress : null,
134
  deliveryDate : null,
135
  imageBaseUrl : null,
176
  || !params.locationsInAreaUrl
177
  || !params.postcode
178
  || !params.housenumber
179
+ || !params.country
180
  || !params.deliveryDate
181
  || !params.imageBaseUrl
182
  || !params.fullAddress
192
  this.locationsInAreaUrl = params.locationsInAreaUrl;
193
  this.postcode = params.postcode;
194
  this.housenumber = params.housenumber;
195
+ this.country = params.country;
196
  this.deliveryDate = params.deliveryDate;
197
  this.imageBaseUrl = params.imageBaseUrl;
198
  this.fullAddress = params.fullAddress;
208
  allowPg : true,
209
  allowPge : false,
210
  allowPa : true,
211
+ allowSundaySorting : false,
212
  isBuspakje : false,
213
  taxDisplayType : 1,
214
  eveningFeeIncl : 0,
215
  eveningFeeExcl : 0,
216
+ sundayFeeIncl : 0,
217
+ sundayFeeExcl : 0,
218
  expressFeeIncl : 0,
219
  expressFeeExcl : 0,
220
  eveningFeeText : '',
221
+ sundayFeeText : '',
222
  expressFeeText : '',
223
  allowStreetview : true,
224
  scrollbarContainer : 'scrollbar_content',
300
  return this.housenumber;
301
  },
302
 
303
+ getCountry : function() {
304
+ return this.country;
305
+ },
306
+
307
+
308
  getFullAddress : function() {
309
  return this.fullAddress;
310
  },
712
  this.deliveryOptionsMap = new PostnlDeliveryOptions.Map(this.getFullAddress(), this, this.debug);
713
 
714
  if (this.isDeliveryDaysAllowed()) {
715
+ this.getTimeframes(this.getPostcode(), this.getHousenumber(), this.getCountry(), this.getDeliveryDate());
716
  } else {
717
  if (this.debug) {
718
  console.info('Showing default timeframe.');
721
  .setParsedTimeframes(true)
722
  .hideSpinner();
723
  }
724
+ this.getLocations(this.getPostcode(), this.getHousenumber(), this.getCountry(), this.getDeliveryDate());
725
 
726
  return this;
727
  },
731
  *
732
  * @param {string} postcode
733
  * @param {number} housenumber
734
+ * @param {string} country
735
  * @param {string} deliveryDate
736
  *
737
  * @returns {boolean|Array|PostnlDeliveryOptions}
738
  */
739
+ getTimeframes : function(postcode, housenumber, country, deliveryDate) {
740
  if (this.debug) {
741
  console.info('Getting available timeframes.');
742
  }
765
  housenumber = this.getHousenumber();
766
  }
767
 
768
+ if (!country) {
769
+ country = this.getCountry();
770
+ }
771
+
772
  if (!deliveryDate) {
773
  deliveryDate = this.getDeliveryDate();
774
  }
779
  postcode : postcode,
780
  housenumber : housenumber,
781
  deliveryDate : deliveryDate,
782
+ country : country,
783
  isAjax : true
784
  },
785
  onSuccess : this.processGetTimeframesSuccess.bind(this),
826
 
827
  if (checkbox.checked) {
828
  selectPostnlShippingMethod = true;
829
+ } else if (this.getOptions().isOsc) {
830
+ checkbox.checked = true;
831
+ selectPostnlShippingMethod = true;
832
  }
833
 
834
  /**
863
  for (var i = 0, m = currentTimeframe.Timeframes.TimeframeTimeFrame.length; i < m ; i++, o++) {
864
  var currentSubTimeframe = currentTimeframe.Timeframes.TimeframeTimeFrame[i];
865
  if (this.isEveningTimeframesAllowed() === false
866
+ && currentSubTimeframe.Options.string[0] == 'Evening'
867
  ) {
868
  continue;
869
  }
910
 
911
  if (this.getOptions().isOsc) {
912
  this.timeframes[0].renderAsOsc();
913
+
914
+ if (selectTimeframe) {
915
+ this.saveSelectedOption();
916
+ }
917
  }
918
 
919
  if (this.debug) {
931
  var fakeTimeframe = {
932
  From : '09:00:00',
933
  To : '18:00:00',
934
+ TimeframeType : 'Overdag',
935
+ Options : {
936
+ string : []
937
+ }
938
  };
939
 
940
  var postnlTimeframe = new PostnlDeliveryOptions.Timeframe(this.getDeliveryDate(), fakeTimeframe, 0, this);
955
  *
956
  * @param {string} postcode
957
  * @param {int} housenumber
958
+ * @param {string} country
959
  * @param {string} deliveryDate
960
  *
961
  * @return {PostnlDeliveryOptions}
962
  */
963
+ getLocations : function(postcode, housenumber, country, deliveryDate) {
964
  if (this.debug) {
965
  console.info('Getting available delivery locations.');
966
  }
979
  postcode : postcode,
980
  housenumber : housenumber,
981
  deliveryDate : deliveryDate,
982
+ country : country,
983
  isAjax : true
984
  },
985
  onSuccess : this.processGetLocationsSuccess.bind(this),
1027
  /**
1028
  * Parse and render the result.
1029
  */
1030
+ this.parseLocations(locations);
1031
+ try {
1032
+ this.renderLocations();
1033
+ } catch (e) {
1034
+ console.log(ed)
1035
+ }
1036
 
1037
  this.setParsedLocations(true)
1038
  .hideSpinner();
1550
  document.fire('postnl:selectOptionSaveStart');
1551
  },
1552
  onSuccess : function(response) {
1553
+ var responseText = response.responseText.trim();
1554
  if (responseText != 'OK') {
1555
+ console.error('Invalid response received: ' + responseText);
1556
  }
1557
 
1558
  document.fire('postnl:selectOptionSaved');
1580
  extraCosts = this.getOptions().expressFeeIncl;
1581
  } else if (selectedType == 'Avond') {
1582
  extraCosts = this.getOptions().eveningFeeIncl;
1583
+ } else if (selectedType == 'Sunday') {
1584
+ extraCosts = this.getOptions().sundayFeeIncl;
1585
  }
1586
 
1587
  if (this.debug) {
1595
  extraCosts = this.getOptions().expressFeeExcl;
1596
  } else if (selectedType == 'Avond') {
1597
  extraCosts = this.getOptions().eveningFeeExcl;
1598
+ } else if (selectedType == 'Sunday') {
1599
+ extraCosts = this.getOptions().sundayFeeExcl;
1600
  }
1601
 
1602
  if (this.debug) {
2575
  */
2576
  geocode : function(address, successCallback, failureCallback) {
2577
  var geocoder = new google.maps.Geocoder();
2578
+ var country = this.getDeliveryOptions().getCountry();
2579
  geocoder.geocode(
2580
  {
2581
  address : address,
2582
  bounds : this.map.getBounds(),
2583
  componentRestrictions : {
2584
+ country : country
2585
  }
2586
  },
2587
  function(results, status) {
2611
  this.hideSearchErrorDiv();
2612
  var selectedResult = false;
2613
 
2614
+ var country = this.getDeliveryOptions().getCountry();
2615
+
2616
  /**
2617
  * Loop through all results and validate each to find a suitable result to use.
2618
  */
2634
  /**
2635
  * Make sure the result is located in the Netherlands.
2636
  */
2637
+ var resultIsDomestic = false;
2638
  var components = result.address_components;
2639
  components.each(function(component) {
2640
  if (selectedResult !== false) {
2641
  return false;
2642
  }
2643
 
2644
+ if (component.short_name != country) {
2645
  return false;
2646
  }
2647
 
2648
+ resultIsDomestic = true;
2649
  return true;
2650
  });
2651
 
2652
+ if (!resultIsDomestic) {
2653
  return false;
2654
  }
2655
 
2807
  }
2808
  }
2809
 
2810
+ var country = this.getDeliveryOptions().getCountry();
2811
+
2812
  /**
2813
  * Send a new getNearestLocations request.
2814
  */
2816
  method : 'post',
2817
  parameters : {
2818
  lat : center.lat(),
2819
+ 'long' : center.lng(),
2820
+ country : country,
2821
  deliveryDate : this.getDeliveryOptions().getDeliveryDate(),
2822
  isAjax : true
2823
  },
2863
  },
2864
 
2865
  /**
2866
+ * Search for locations inside the maps' viewport. Results will contain up to 20 locations of varying types.
2867
  *
2868
  * @returns {PostnlDeliveryOptions.Map}
2869
  */
2901
  }
2902
  }
2903
 
2904
+ var country = this.getDeliveryOptions().getCountry();
2905
+
2906
  var locationsInAreaRequestObject = new Ajax.PostnlRequest(this.deliveryOptions.getLocationsInAreaUrl(), {
2907
  method : 'post',
2908
  parameters : {
2910
  northEastLng : northEast.lng(),
2911
  southWestLat : southWest.lat(),
2912
  southWestLng : southWest.lng(),
2913
+ country : country,
2914
  deliveryDate : this.getDeliveryOptions().getDeliveryDate(),
2915
  isAjax : true
2916
  },
4366
  if (typeof n == 'undefined') {
4367
  n = 0;
4368
  }
 
4369
  /**
4370
  * If over 7 attempts have been made, return the current date (it should be 1 week after the first attempt).
4371
  */
4372
  if (n > 7) {
4373
  return date;
4374
  }
 
4375
  var openingDays = this.getOpeningHours();
 
4376
  /**
4377
  * Check if the location is open on the specified day of the week.
4378
  */
4379
  var openingHours = false;
4380
  switch (date.getDay()) {
4381
  case 0:
4382
+ openingHours = false;
4383
  break;
4384
  case 1:
4385
+ openingHours = false;
4386
  break;
4387
  case 2:
4388
+ if (openingDays.Tuesday) {
4389
+ openingHours = openingDays.Tuesday.string;
4390
+ }
4391
  break;
4392
  case 3:
4393
+ if (openingDays.Wednesday) {
4394
+ openingHours = openingDays.Wednesday.string;
4395
+ }
4396
  break;
4397
  case 4:
4398
+ if (openingDays.Thursday) {
4399
+ openingHours = openingDays.Thursday.string;
4400
+ }
4401
  break;
4402
  case 5:
4403
+ if (openingDays.Friday) {
4404
+ openingHours = openingDays.Friday.string;
4405
+ }
4406
  break;
4407
  case 6:
4408
+ if (openingDays.Saturday) {
4409
+ openingHours = openingDays.Saturday.string;
4410
+ }
4411
  break;
4412
  }
4413
 
4421
  var nextDay = new Date(date);
4422
  nextDay.setDate(date.getDate() + 1);
4423
 
4424
+ /**
4425
+ * If the next day is Monday, get Tuesday as next day.
4426
+ */
4427
+ if (nextDay.getDay() == 1) {
4428
+ nextDay.setDate(date.getDate() + 2);
4429
+ }
4430
  return this.getDeliveryDate(nextDay, n + 1);
4431
  }
4432
 
5154
  this.date = date;
5155
  this.from = timeframe.From;
5156
  this.to = timeframe.To;
5157
+
5158
+ var type = timeframe.Options.string[0];
5159
+ switch (type) {
5160
+ case 'Evening' :
5161
+ this.type = 'Avond';
5162
+ break;
5163
+ case 'Sunday' :
5164
+ this.type = 'Sunday';
5165
+ break;
5166
+ default :
5167
+ this.type = 'Overdag';
5168
+ break;
5169
+ }
5170
 
5171
  this.timeframeIndex = timeframeIndex;
5172
 
5350
  comment = '<span class="option-comment">' + Translator.translate('evening') + extraCostHtml + '</span>';
5351
  }
5352
 
5353
+ if (this.type == 'Sunday') {
5354
+ var sundayCosts = this.getOptions().sundayFeeText;
5355
+ var sundayCostHtml = '';
5356
+
5357
+ if (this.getOptions().sundayFeeIncl) {
5358
+ sundayCostHtml += ' + ' + sundayCosts;
5359
+ }
5360
+
5361
+ comment = '<span class="option-comment">' + Translator.translate('sunday') + sundayCostHtml + '</span>';
5362
+ }
5363
+
5364
  return comment;
5365
  },
5366
 
5426
 
5427
  return this;
5428
  }
5429
+ });