I can give you commit rights. Just send me a private email containing
your gmail address.
You can commit to the trunk

Thanks
Lucie
--
S i x  F e e t  U p ,  I n c .  |  http://www.sixfeetup.com
Phone: +1 (317) 861-5948 x605
ANNOUNCING the first Plone Immersive Training Experience | Sept. 10-11-12, 2009
http://www.sixfeetup.com/immerse



On Wed, Apr 29, 2009 at 11:58 AM, Ilja Everilä
<[email protected]> wrote:
>
> I've included this among other template i18n additions. Also it turned
> out that the table heading rendering that caused my first issue
> manifested elsewhere. Fixed those too.
>
> Where can I request commit rights and what are the usual practices in
> committing new changes. First to some branch or so?
>
> On 29 huhti, 17:56, danielle davout <[email protected]> wrote:
>> this one is easy :
>>
>>               <input type="submit"
>>                      i18n:translate="label_add_to_cart"
>>                      value="Add to Cart"
>>                      i18n:attributes="value" />
>>
>> the attribute value is not translated unless you put
>>                      i18n:attributes="value"
>>
>> On Wed, Apr 29, 2009 at 4:09 PM, rafael <[email protected]> wrote:
>> >   I have noticed another i18n problem about the add to cart button in the
>> > portlet not being properly translated. I didn't try to fix it cause I am
>> > illetrate in i18n... Will this hack fix it?
>>
>> > Thanks
>>
>> > rafael
>>
>> > Lucie Lejard escreveu:
>>
>> > It doesn't seem too much of a hack to me.
>> > If you don't get any feedback, just go ahead and commit your changes.
>>
>> > thanks
>> > Lucie
>> > --
>> > S i x  F e e t  U p ,  I n c .  |  http://www.sixfeetup.com
>> > Phone: +1 (317) 861-5948 x605
>> > ANNOUNCING the first Plone Immersive Training Experience | Sept. 10-11-12,
>> > 2009
>> >http://www.sixfeetup.com/immerse
>>
>> > On Wed, Apr 29, 2009 at 3:07 AM, Ilja Everilä <[email protected]>
>> > wrote:
>>
>> > Hello,
>>
>> > I've been translating GetPaid (0.7) core and some plugins to Finnish
>> > and encountered some issues. For example when rendering cart contents
>> > table headings wouldn't localize. After some digging it turned out
>> > that these strings were rendered in python and not in template
>> > context.
>>
>> > The problematic classes were
>> > Products.PloneGetPaid.browser.cart.CartFormatter and
>> > Products.PloneGetPaid.browser.cart.ShoppingCartListing. Now, I tried
>> > to use context.translate to wrap these messages, but it turned out
>> > that the cart context was missing this method. Finally I used (ugly)
>> > hacks and used zope.app.component.hooks.getSite method to fetch site
>> > object and used its translate method.
>>
>> > As commented in the diff, these feel like ugly hacks and that's why
>> > I'm asking what would be the correct way of fixing these messages. I'm
>> > new to Plone and haven't gotten familiar with its possibilities yet.
>>
>> > Here's the diff on cart.py:
>>
>> > Index: browser/
>> > cart.py
>> > ===================================================================
>> > --- browser/cart.py     (revision
>> > 2446)
>> > +++ browser/cart.py     (working
>> > copy)
>> > @@ -11,6 +11,9
>> > @@
>> >  from zope.formlib import
>> > form
>> >  from zc.table import column,
>> > table
>>
>> > +# FIXME: this is here for translation
>> > hacks
>> > +from zope.app.component.hooks import
>> > getSite
>> > +
>> >  from ore.viewlet.container import ContainerViewlet
>> >  from ore.viewlet.core import FormViewlet
>>
>> > @@ -196,6 +199,11 @@
>> >         return interfaces.ILineContainerTotals( self.context )
>>
>> >     def renderExtra( self ):
>> > +
>> > +        # FIXME: This is an ugly hack that fixes certain strings not
>> > translating since
>> > +        # they're never rendered in template context
>> > +        translate = lambda msg: getSite().translate(msgid=msg,
>> > domain='plonegetpaid')
>> > +
>> >         if not len( self.context ):
>> >             return super( CartFormatter, self).renderExtra()
>>
>> > @@ -206,16 +214,22 @@
>> >         subtotal_price = totals.getSubTotalPrice()
>> >         total_price = totals.getTotalPrice()
>>
>> > -        buffer = [ '<div class="getpaid-totals"><table
>> > class="listing">']
>> > -        buffer.append( '<tr><th>SubTotal</th><td style="border-top:
>> > 1px solid #8CACBB;">%0.2f</td></tr>'%( subtotal_price ) )
>> > +        buffer = [ u'<div class="getpaid-totals"><table
>> > class="listing">']
>> > +        buffer.append('<tr><th>')
>> > +        buffer.append( translate(_(u"SubTotal")) )
>> > +        buffer.append( '</th><td style="border-top:1px solid
>> > #8CACBB;">%0.2f</td></tr>'%( subtotal_price ) )
>>
>> > -        buffer.append( "<tr><th>Shipping</th><td>%0.2f</td></tr>"%
>> > ( shipping_price ) )
>> > +        buffer.append( "<tr><th>" )
>> > +        buffer.append( translate(_(u"Shipping")) )
>> > +        buffer.append( "</th><td>%0.2f</td></tr>"%
>> > ( shipping_price ) )
>>
>> >         for tax in tax_list:
>> >             buffer.append( "<tr><th>%s</th><td>%0.2f</td></tr>"%( tax
>> > ['name'], tax['value'] ) )
>> > -        buffer.append( "<tr><th>Total</th><td>%0.2f</td></tr>"%
>> > ( total_price ) )
>> > +        buffer.append( "<tr><th>" )
>> > +        buffer.append( translate(_(u"Total")) )
>> > +        buffer.append( "</th><td>%0.2f</td></tr>"%( total_price ) )
>> >         buffer.append('</table></div>')
>> > -
>> > +
>> >         return u''.join( buffer) + super( CartFormatter,
>> > self).renderExtra()
>>
>> >  class ShoppingCartListing( ContainerViewlet ):
>> > @@ -240,6 +254,11 @@
>> >     def __init__( self, *args, **kw):
>> >         super( ShoppingCartListing, self ).__init__( *args, **kw )
>>
>> > +        # FIXME: Translation hacks, should not use something like
>> > this
>> > +        for column in self.columns:
>> > +            if hasattr(column, 'title'):
>> > +                column.title = getSite().translate
>> > (msgid=column.title, domain='plonegetpaid')
>> > +
>> >     def getContainerContext( self ):
>> >         return self.__parent__.cart
> >
>

--~--~---------~--~----~------------~-------~--~----~
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