Darryl, I have to thank you for the help in this matter. I took your code,
edited it, and it worked once off. Again, thank you SO much.

2009/7/22 Hannes Calitz <[email protected]>

> Awesome thanks. This really has helped a lot.
>
>
> 2009/7/22 Darryl Dixon <[email protected]>
>
>> I created mine as an egg, 'getpaid.gst' which is probably what you also
>> want to do. If I recall correctly, I made the basic structure with Paster's
>> 'basic namespace package' or similar (eg: python-2.4.5/bin/paster create
>> basic_namespace). Then add it to your buildout as a development egg. Erm, if
>> you aren't too familiar with buildout then you may be in for a little bit of
>> a learning curve... :-/
>>
>> D
>>
>>
>>
>>
>> On Wed, Jul 22, 2009 at 5:38 PM, Hannes Calitz <[email protected]> wrote:
>>
>>> Sweet. Thanks Darryl
>>>
>>> As I have never started a plug in from scratch (I have always just copied
>>> an existing plug in and edited it), I don't quite know where to start. Would
>>> I just create a normal Plone Product and add these two files to it?
>>>
>>> 2009/7/22 Darryl Dixon <[email protected]>
>>>
>>> Hi Hannes,
>>>>
>>>> This is/should be relatively straightforward. In NZ we have a flat GST
>>>> regime of 12.5% and I wrote a tax plugin to add this to all orders. It was
>>>> only very small. I don't know if my way was 'right' but It Works For Me(tm)
>>>>
>>>>
>>>> dix...@ganymede:~/src/getpaid.gst/getpaid/gst$ cat overrides.zcml
>>>> <configure xmlns="http://namespaces.zope.org/zope";>
>>>>
>>>>   <!-- Taxes -->
>>>>   <utility factory=".tax.TaxUtility" />
>>>>
>>>> </configure>
>>>>
>>>>
>>>> dix...@ganymede:~/src/getpaid.gst/getpaid/gst$ cat tax.py
>>>> import decimal
>>>> from zope.interface import implements
>>>>
>>>> from getpaid.core.interfaces import ITaxUtility
>>>>
>>>> from getpaid.gst import getpaidgstMessageFactory as _
>>>>
>>>> class TaxUtility(object):
>>>>     implements(ITaxUtility)
>>>>
>>>>     def getCost(self, order):
>>>>         """Calculate GST at 12.5% on the subtotal and any shipping
>>>> costs"""
>>>>         return float(order.getSubTotalPrice() + order.getShippingCost())
>>>> * self.tax_rate
>>>>
>>>>     def getTaxes(self, order):
>>>>         return [{'value' : self.getCost(order), 'name' : self.tax_name}]
>>>>
>>>>
>>>>     def getTaxOnSum(self, sum):
>>>>         """Return the GST value of a price, rounded to the nearest
>>>> cent"""
>>>>         return float('%.2f' % (sum * self.tax_rate))
>>>>
>>>>     @property
>>>>     def tax_rate(self):
>>>>         return 0.125
>>>>
>>>>     @property
>>>>     def tax_name(self):
>>>>         return _(u"GST")
>>>>
>>>>
>>>> dix...@ganymede:~/src/getpaid.gst/getpaid/gst$ cat __init__.py
>>>>
>>>> from zope.i18nmessageid import MessageFactory
>>>>
>>>> getpaidgstMessageFactory = MessageFactory('getpaid.gst')
>>>>
>>>>
>>>>
>>>> Hope this helps,
>>>>
>>>> regards,
>>>> Darryl Dixon
>>>> Winterhouse Consulting Ltd
>>>> http://www.winterhouseconsulting.com
>>>>
>>>>
>>>>
>>>>
>>>> On Wed, Jul 22, 2009 at 5:11 PM, hannesc <[email protected]> wrote:
>>>>
>>>>>
>>>>> I need to start developing some sort of Tax add-on for GetPaid, and by
>>>>> the look of things, it seems that just perhaps I will have to dive
>>>>> into the PloneGetPaid code itself. What I basically need to start
>>>>> developing is a plugin that adds 14% VAT to all orders.
>>>>>
>>>>> Before I start working on such a plugin, I wanted to know if anyone
>>>>> has already started something similar that I could perhaps look at
>>>>> before starting on a something from scratch.
>>>>>
>>>>> Thanks
>>>>> Hannes
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>
>> >>
>>
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"getpaid-dev" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/getpaid-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to