Re: DropDownChoice and Raw Input values (of e.g., textfields)

2008-06-21 Thread Martin Makundi
AjaxFormValidatingBehavior extends AjaxFormSubmitBehavior. I do not
need the feedback update, so I tried AjaxFormSubmitBehavior.

The problem is that AjaxFormSubmitBehavior actually submits the form
(executes my form.onSubmit which actually tries to save the form when
still incomplete!!).

I can work around this by analyzing which button submitted the form
(and if null -> do not save):
myform = new Form(..) {
  protected void onSubmit() {
super.onSubmit();
if (findSubmittingButton() != null) {
   // do actual save here
}
  }
}

It seems like a hack :) Should I just roll with this solution?

**
Martin

2008/6/21 Stefan Lindner <[EMAIL PROTECTED]>:
> Maybe the AjaxFormValidatingBehavior is what you need.
>
> -Ursprüngliche Nachricht-
> Von: Martin Makundi [mailto:[EMAIL PROTECTED]
> Gesendet: Samstag, 21. Juni 2008 10:56
> An: users@wicket.apache.org
> Betreff: DropDownChoice and Raw Input values (of e.g., textfields)
>
> Hi!
>
> Is there a simple way to make DropDownChoice.onChange behave in a manner 
> somewhat similar to an 
> AjaxFallbackButton.setDefaultFormProcessing(false).onClick?
>
> I have a dropDown and a textField. They are both within a PANEL that gets 
> AjaxRefreshed whenever the dropdown choice is changed.
>
> The problem is, that even though I re-use the textField, it does not know its 
> convertedInput (probably because the form has not actually been submitted?) 
> and it resets itself to its original state. I would like it to keep its state 
> as it was when the new dropdown value was selected.
>
> Currently both textField.getConvertedInput and textField.getInput are null... 
> "All I need" is to attach some defaultFormProcessing(false) behavoir to the 
> dropDown (and the form submit, ofcourse) ;)
>
> **
> Martin
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Session end method

2008-06-21 Thread Eyal Golan
Thanks Nino,
That is exactly what I was looking for.

On Fri, Jun 20, 2008 at 10:03 AM, Nino Saturnino Martinez Vazquez Wael <
[EMAIL PROTECTED]> wrote:

> Theres also an unsecure way of doing it, namely this(from
> applicationclass):
>
>   @Override
>   protected ISessionStore newSessionStore() {
>   return new SecondLevelCacheSessionStore(this, new DiskPageStore()) {
>   @Override
>   protected void onBind(Request request, Session newSession) {
>
>   sessionMap.put(newSession.getId(), (ZeuzSession) newSession);
>   super.onBind(request, newSession);
>   }
>
>   @Override
>   protected void onUnbind(String sessionId) {
>   ZeuzSession session = (ZeuzSession)
> sessionMap.get(sessionId);
>   session.onBeforeDestroy();
>   sessionMap.remove(sessionId);
>   super.onUnbind(sessionId);
>   }
>
>   };
>   }
>
>
> Eyal Golan wrote:
>
>> Hello,
>> Is there a method in Session that is called when the Session is ended?
>> Ended = user logs out (invalidate) or time-out (or anything else that can
>> do
>> that)
>>
>> My goal is to keep some information in the session and persist it when the
>> session terminates.
>>
>> Is it "legal" to create a Thread (as a member in the Session /
>> Application)
>> that every X minutes will get information from the Session and "do
>> something
>> with it"?
>>
>>
>>
>
> --
> -Wicket for love
>
> Nino Martinez Wael
> Java Specialist @ Jayway DK
> http://www.jayway.dk
> +45 2936 7684
>
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


-- 
Eyal Golan
[EMAIL PROTECTED]

Visit: http://jvdrums.sourceforge.net/
LinkedIn: http://www.linkedin.com/in/egolan74


Re: Setting HiddenField name attrribute value

2008-06-21 Thread Ritz123

Matthijs,

Those are good suggestions. I would have gone server side myself. There is a
trade off user experience vs. more robust and it just so happened this time
we are going with better user experience hence the use of javascript. The
javascript, I want to use is very basic, thats the reason why I am not doing
AJAX as there is no need to even go to server side partially. Javascript
will be used purely on the client just to update inner html. Just to give
you an idea - this is for the e-commerce checkout where the entire checkout
can be done from 1 page only with very few clicks, it wont be possible
without the use of javascript.

I didnt find any documentation on using templates for javascript - will
appreciate any pointers.

Thanks


Matthijs Wensveen-2 wrote:
> 
> Is there any specific reason you don't want to do this server side? Not 
> using javascript would make the application more accessible, and 
> probable also more robust and secure. Unless you're targeting some very 
> specific user group, I always try not to depend on javascrip / ajax 
> (that's why I love the AjaxFallback stuff in wicket so much).
> 
> Just my 2c.
> Matthijs
> 
> PS. If you must use javascript, why not use the hidden field's id, which 
> can be controlled with setMarkupId. But it might be better not to use 
> setMarkupId (to avoid id collisions). You could write some javascript 
> (with use of templates) that fills in the markupId (getMarkupId) 
> dynamically.
> 
> Ritz123 wrote:
>> Hi,
>>
>> Is it possible to set specific name to the hidden field component?
>>
>> Here is my usage scenario - 
>>
>> 1. I have radio group for shipping options on a page.
>> 2. Depending on the shipping option selected, I need to show the order
>> total
>> changed 
>> 2. radio has associated model which obviously contains more information
>> than
>> just the shipping price
>>
>> The only way I can think of doing this efficiently without going to the
>> server side is by using hidden fields for shipping costs. Using the
>> javascript to update the total on the page. Problem is, seems like hidden
>> field names cannot be specified or controlled and hence cannot be
>> referenced
>> by javascript precisely.
>>
>> Correct me if I am wrong, also let me know if there is a better way of
>> doing
>> this.
>>   
> 
> 
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Setting-HiddenField-name-attrribute-value-tp18037712p18051265.html
Sent from the Wicket - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Inheritance inside a Container

2008-06-21 Thread Maurice Marrink
Sounds Like a bug.
Could you open up a jira request please and attach a quickstart
showing this behavior.

Thanks.

Maurice

On Fri, Jun 20, 2008 at 10:52 PM, smallufo <[EMAIL PROTECTED]> wrote:
> Hi , after a few try and errors , I can conclude how the problem occurs
>
> In the ChildPanel , if my code is as follows :
>
> 
>  
>
>  
>  blah...
> 
>
> and code :
> RadioGroup selectDeselectGroup = new RadioGroup("selectDeselectGroup");
> add(selectDeselectGroup);
>
> Everything goes fine  , no matter the Child Panel is collapsed / expanded ,
> page-reloading is OK
>
> But , if I add something inside the CheckGroup :
>
> 
>  
>select all
>clean
>  
> 
>
> and code :
>
> RadioGroup selectDeselectGroup = new RadioGroup("selectDeselectGroup");
> add(selectDeselectGroup);
> Radio selectAll   = new Radio("selectAll"   , new Model(Boolean.FALSE));
> Radio deselectAll = new Radio("deselectAll" , new Model(Boolean.FALSE));
> selectDeselectGroup.add(selectAll);
> selectDeselectGroup.add(deselectAll);
>
> (Note , I haven't implement any AjaxEventBehavior("onclick") to the 2
> radios)
>
> Here comes the problem :
> If the Child Panel is expanded , page reloading is OK.
> But...
> If the Child Panel is collapsed (folded /hidden) and do page reloading , it
> will throw exception :
>
>
> Root cause:
>
> org.apache.wicket.WicketRuntimeException: The component(s) below failed to
> render. A common problem is that you have added a component in code but
> forgot to reference it in the markup (thus the component will never be
> rendered).
>
> 1. [MarkupContainer [Component id = checkGroup, page =
> destiny.wicket.astrology.HoroscopePage, path =
> 3:selectPlanetsPanel:checkGroup.CheckGroup, isVisible = true, isVersioned =
> false]]
> 2. [MarkupContainer [Component id = selectDeselectGroup, page =
> destiny.wicket.astrology.HoroscopePage, path =
> 3:selectPlanetsPanel:selectDeselectGroup.RadioGroup, isVisible = true,
> isVersioned = false]]
> 3. [MarkupContainer [Component id = selectAll, page =
> destiny.wicket.astrology.HoroscopePage, path =
> 3:selectPlanetsPanel:selectDeselectGroup:selectAll.Radio, isVisible = true,
> isVersioned = false]]
> 4. [MarkupContainer [Component id = deselectAll, page =
> destiny.wicket.astrology.HoroscopePage, path =
> 3:selectPlanetsPanel:selectDeselectGroup:deselectAll.Radio, isVisible =
> true, isVersioned = false]]
>
> at org.apache.wicket.Page.checkRendering(Page.java:1116)
> at org.apache.wicket.Page.renderPage(Page.java:914)
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Setting HiddenField name attrribute value

2008-06-21 Thread Matthijs Wensveen
Is there any specific reason you don't want to do this server side? Not 
using javascript would make the application more accessible, and 
probable also more robust and secure. Unless you're targeting some very 
specific user group, I always try not to depend on javascrip / ajax 
(that's why I love the AjaxFallback stuff in wicket so much).


Just my 2c.
Matthijs

PS. If you must use javascript, why not use the hidden field's id, which 
can be controlled with setMarkupId. But it might be better not to use 
setMarkupId (to avoid id collisions). You could write some javascript 
(with use of templates) that fills in the markupId (getMarkupId) 
dynamically.


Ritz123 wrote:

Hi,

Is it possible to set specific name to the hidden field component?

Here is my usage scenario - 


1. I have radio group for shipping options on a page.
2. Depending on the shipping option selected, I need to show the order total
changed 
2. radio has associated model which obviously contains more information than

just the shipping price

The only way I can think of doing this efficiently without going to the
server side is by using hidden fields for shipping costs. Using the
javascript to update the total on the page. Problem is, seems like hidden
field names cannot be specified or controlled and hence cannot be referenced
by javascript precisely.

Correct me if I am wrong, also let me know if there is a better way of doing
this.
  



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: MarkupResourceStream and classloading

2008-06-21 Thread james yong

Alternatively, may take a look at OsgiClassResolver.java 
in the welo project which is hosted at google code. 
OsgiClassResolver.java is an implementation (improvement needed) 
of IClassResolver to resolve classes that are stored in osgi bundles.


igor.vaynberg wrote:
> 
> nick, have you tried asking on pax wicket mailing list? those guys use
> wicket with osgi all the time. perhaps they have a clean solution.
> 
> -igor
> 

-- 
View this message in context: 
http://www.nabble.com/MarkupResourceStream-and-classloading-tp18029801p18046534.html
Sent from the Wicket - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: MarkupResourceStream and classloading

2008-06-21 Thread Igor Vaynberg
nick, have you tried asking on pax wicket mailing list? those guys use
wicket with osgi all the time. perhaps they have a clean solution.

-igor

On Fri, Jun 20, 2008 at 6:38 AM, Nick Giles <[EMAIL PROTECTED]> wrote:
> We're using Wicket within an OSGi evironment (Equinox 3.3.0), and have run 
> into an issue with MarkupResourceStream. It is given a class the markup is 
> associated with, but it stores that class using only its name. When accessed, 
> it then tries to instantiate that class through Classes.resolveClass.
>
> Unfortunately, despite having our own IClassResolver, without giving in to 
> some bad OSGi practice, it is not permissible for the required class to be 
> visible, only the interfaces. This occurs because of the (helpful) classpath 
> segregation that OSGi encourages, such that a bundle only imports the 
> packages it actually needs, and is not allowed access to anything else.
>
> I have logged this as a bug 
> (https://issues.apache.org/jira/browse/WICKET-1681), but the conclusion there 
> was that there should be a workaround. Without either importing specific 
> implementation packages into the affected bundle (fragile, poor practice) or 
> allowing dynamic imports (evil hack to get around not knowing what classes 
> you'll load, effectively drops the benefits of OSGi's classloader 
> separation), I can't see a solution.
>
> Does anyone have any suggested solutions, or opinions on whether this should 
> be handled by Wicket or our client code?
>
> Thanks,
>
> Nick
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: MarkupResourceStream and classloading

2008-06-21 Thread Igor Vaynberg
we shouldnt have a dependency, but if there is something we can
improve to make this easier we would be all for it.

-igor

On Sat, Jun 21, 2008 at 8:34 AM, james yong <[EMAIL PROTECTED]> wrote:
>
> My take is to implement your own version of IClassResolver.
> Wicket shouldn't have dependency on osgi.
> --
> View this message in context: 
> http://www.nabble.com/MarkupResourceStream-and-classloading-tp18029801p18045590.html
> Sent from the Wicket - User mailing list archive at Nabble.com.
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: MarkupResourceStream and classloading

2008-06-21 Thread james yong

My take is to implement your own version of IClassResolver.
Wicket shouldn't have dependency on osgi.
-- 
View this message in context: 
http://www.nabble.com/MarkupResourceStream-and-classloading-tp18029801p18045590.html
Sent from the Wicket - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Problem: Check within a ListView

2008-06-21 Thread Kai Mütz
I have no idea how to implement such a model. Do you have any hint? I am not
sure where/when exactly the IModel.getObject() method is called and where
the missing values can be inserted.

Regards, Kai

2008/6/5 Igor Vaynberg <[EMAIL PROTECTED]>:

> right, so like that its not going to work. you need a model in between
> that can buffer values and insert missing checked by disabled values.
>
> -igor
>
> On Thu, Jun 5, 2008 at 4:36 AM, Kai Mütz <[EMAIL PROTECTED]> wrote:
> > Igor Vaynberg  wrote:
> >> it is possible, just depends on how you set up your models. it is not
> >> possible by directly reading the collection of checkgroup, but you
> >> can come up with a different way.
> >>
> >
> > The checkgroup is part of a form based on a CompoundPropertyModel
> wrapping a
> > User object which has a "roles" property (List). Nothing special.
> >
> > Kai
> >
> >
> > -
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


Re: [Newbie]Session lost in an AjaxFallbackLink onClick()

2008-06-21 Thread A nono life


Gwyn wrote:
> 
> Try & reproduce it in a QuickStart, so someone else can investigate?
> 

Ok, it's done :  http://www.nabble.com/file/p18044618/issueTest.tar.gz
issueTest.tar.gz .

BTW, it's an Databinder app. Everything will be launched in memory. When you
start, you'll be invited to enter the creature's name, then you'll be
redirected on the creature page where you'll be able to click on a "+" link
to increase its hitpoints... it's the link which fails.

BTW, doing this quickstart, I've noticed that it was working a bit better
when, in the DemoApp init, I was adding manually the creature to the user
(see the TODO). However, in this case, the update I do on the model aren't
kept, so it doesn't work properly neither...

Thanks again

bye
nono

-- 
View this message in context: 
http://www.nabble.com/-Newbie-Session-lost-in-an-AjaxFallbackLink-onClick%28%29-tp18016504p18044618.html
Sent from the Wicket - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: DropDownChoice and Raw Input values (of e.g., textfields)

2008-06-21 Thread Stefan Lindner
Maybe the AjaxFormValidatingBehavior is what you need.

-Ursprüngliche Nachricht-
Von: Martin Makundi [mailto:[EMAIL PROTECTED] 
Gesendet: Samstag, 21. Juni 2008 10:56
An: users@wicket.apache.org
Betreff: DropDownChoice and Raw Input values (of e.g., textfields)

Hi!

Is there a simple way to make DropDownChoice.onChange behave in a manner 
somewhat similar to an 
AjaxFallbackButton.setDefaultFormProcessing(false).onClick?

I have a dropDown and a textField. They are both within a PANEL that gets 
AjaxRefreshed whenever the dropdown choice is changed.

The problem is, that even though I re-use the textField, it does not know its 
convertedInput (probably because the form has not actually been submitted?) and 
it resets itself to its original state. I would like it to keep its state as it 
was when the new dropdown value was selected.

Currently both textField.getConvertedInput and textField.getInput are null... 
"All I need" is to attach some defaultFormProcessing(false) behavoir to the 
dropDown (and the form submit, ofcourse) ;)

**
Martin

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [Newbie]Session lost in an AjaxFallbackLink onClick()

2008-06-21 Thread Gwyn Evans
Try & reproduce it in a QuickStart, so someone else can investigate?

/Gwyn

On Fri, Jun 20, 2008 at 9:36 PM, A nono life <[EMAIL PROTECTED]> wrote:

>
> hi again
>
> A nono life wrote:
> >
> > I did the following try in between :
> > - I rightly get the user and its content. So this part is properly
> working
> > - I've  tried the form's onSubmit, and there I get some part of my
> > creature data but not all of it (I get the name but not others
> > attributes...).
> >
> I'm planning to display messages when my creature data are changed, maybe
> it
> could help. If you've any other ideas of things I could try, let me know !
>
> This issue is very annoying, looking so strange for something normally so
> easy :'(
>
> bye
> nono
> --
> View this message in context:
> http://www.nabble.com/-Newbie-Session-lost-in-an-AjaxFallbackLink-onClick%28%29-tp18016504p18036976.html
> Sent from the Wicket - User mailing list archive at Nabble.com.
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


DropDownChoice and Raw Input values (of e.g., textfields)

2008-06-21 Thread Martin Makundi
Hi!

Is there a simple way to make DropDownChoice.onChange behave in a
manner somewhat similar to an
AjaxFallbackButton.setDefaultFormProcessing(false).onClick?

I have a dropDown and a textField. They are both within a PANEL that
gets AjaxRefreshed whenever the dropdown choice is changed.

The problem is, that even though I re-use the textField, it does not
know its convertedInput (probably because the form has not actually
been submitted?) and it resets itself to its original state. I would
like it to keep its state as it was when the new dropdown value was
selected.

Currently both textField.getConvertedInput and textField.getInput are
null... "All I need" is to attach some defaultFormProcessing(false)
behavoir to the dropDown (and the form submit, ofcourse) ;)

**
Martin

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: DefaultAbstractTree or BaseTree?

2008-06-21 Thread Matej Knopp
DefaultAbstractTree is indeed still deprecated and will be removed in
1.5. Closest to DefaultAbstractTree in the terms of functionality
comes LinkTree, that uses LinkIconPanel as content component.
LinkIconPanel does contain node icons. Look at the LinkTree source
code, it's really short.

-Matej

On Fri, Jun 20, 2008 at 10:24 AM, Kaspar Fischer <[EMAIL PROTECTED]> wrote:
> I've read at
>
>  
> http://markmail.org/message/3247g6jj2kvclmaw?q=list:org.apache.wicket.users+DefaultAbstractTree
>
> that DefaultAbstractTree will be deprecated in the future. Is this
> still the plan?
>
> I am using it to get a tree with folder icons, which none of the
> core subclasses of BaseTree does directly.
>
> Thanks,
> Kaspar
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Session end method

2008-06-21 Thread Johan Compagner
Wicket doea that for you, unbind is called when session is terminarted
by the container

On 6/20/08, Zappaterrini, Larry <[EMAIL PROTECTED]> wrote:
> Assuming this is backed by an HttpSession, wouldn't you also have to
> register an implementation of HttpSessionListener via web.xml to handle
> the situation where the HttpSession times out? Correct me if I'm wrong,
> but in that instance, onUnbind will not be called and the Thread would
> never be stopped.
>
> -Original Message-
> From: Nino Saturnino Martinez Vazquez Wael
> [mailto:[EMAIL PROTECTED]
> Sent: Friday, June 20, 2008 3:03 AM
> To: users@wicket.apache.org
> Subject: Re: Session end method
>
> Theres also an unsecure way of doing it, namely this(from
> applicationclass):
>
> @Override
> protected ISessionStore newSessionStore() {
> return new SecondLevelCacheSessionStore(this, new
> DiskPageStore()) {
> @Override
> protected void onBind(Request request, Session newSession) {
>
> sessionMap.put(newSession.getId(), (ZeuzSession)
> newSession);
> super.onBind(request, newSession);
> }
>
> @Override
> protected void onUnbind(String sessionId) {
> ZeuzSession session = (ZeuzSession)
> sessionMap.get(sessionId);
> session.onBeforeDestroy();
> sessionMap.remove(sessionId);
> super.onUnbind(sessionId);
> }
>
> };
> }
>
>
> Eyal Golan wrote:
>> Hello,
>> Is there a method in Session that is called when the Session is ended?
>> Ended = user logs out (invalidate) or time-out (or anything else that
> can do
>> that)
>>
>> My goal is to keep some information in the session and persist it when
> the
>> session terminates.
>>
>> Is it "legal" to create a Thread (as a member in the Session /
> Application)
>> that every X minutes will get information from the Session and "do
> something
>> with it"?
>>
>>
>
> --
> -Wicket for love
>
> Nino Martinez Wael
> Java Specialist @ Jayway DK
> http://www.jayway.dk
> +45 2936 7684
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
> __
>
> The information contained in this message is proprietary and/or
> confidential. If you are not the
> intended recipient, please: (i) delete the message and all copies; (ii) do
> not disclose,
> distribute or use the message in any manner; and (iii) notify the sender
> immediately. In addition,
> please be aware that any message addressed to our domain is subject to
> archiving and review by
> persons other than the intended recipient. Thank you.
> _
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

-- 
Sent from Gmail for mobile | mobile.google.com

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]