Re: CONTRIBUTION: forms-calendar-styling defect when widget disabled

2005-05-23 Thread Joerg Heinicke

On 15.03.2005 23:33, Sylvain Wallez wrote:

Again and again, there is no such readonly attribute. You can set the 
state of a widget to disabled which leads to something similar to what 
you describe: the input is readonly, and the calendar icon is still 
visible but disabled.


There is, but it's pure HTML. It has nothing to do with CForms. Unknown
attributes on fi:styling are just copied to the output, e.g. @class and
also @readonly.

I did not have a look at CForms since the adding of the states, so I 
don't know how much in the meantime is handled automatically and no 
longer in the template.


Joerg





RE: CONTRIBUTION: forms-calendar-styling defect when widget disabled

2005-05-23 Thread Linden H van der (MI)
 There is, but it's pure HTML. It has nothing to do with 
 CForms. Unknown
 attributes on fi:styling are just copied to the output, e.g. 
 @class and also @readonly.
 

This is still true. I had a look at the stylesheets when this topic was
on.

Bye, Helma


RE: CONTRIBUTION: forms-calendar-styling defect when widget disabled

2005-03-29 Thread depub2
Pardon me, but I appreciate all of your discussion about this... I simply
ask that you place
TWO LINES OF CODE in forms-calendar-styling.xsl to support hidden and
disabled widgets associated with calendars.

As an extra convenience to me and other users, I'd also appreciate it if you
also include the passthru readonly test - no direct widget support needed;
security concerns not relevant - just keeping simple users from getting
confused, not trying to protect from hackers. Impact of adding support for
readonly=NONE.

David
Just do it - Nike




The change was simple, in
cocoon/samples/blocks/forms/resources/forms-calendar-styling.xsl
I added:
xsl:if test=not(fi:{at-symbol}disabled='disabled'] or
fi:{at-symbol}readonly='readonly'] or fi:{at-symbol}hidden='hidden'])
around the calendar HTML anchor.The modified code segment in that file now
reads:

   !-- calendar popup --
   xsl:if test=not(fi:{at-symbol}disabled='disabled'] or
fi:{at-symbol}readonly=readonly'] or fi:{at-symbol}hidden='hidden'])
   a href= name={$id} id={$id}
  
 img src= border=0 alt=Calendar/
   /a
   /xsl:ifAll that I added was the surrounding xsl:if block. It works
great!!







 So, to sum it up: readonly as attribute is supported in
 the current
 version of the styling XSL files, but there will be no
 widget support
 for this due to security issues. If treatment of the readonly
 attribute should differ from the current situation, it is up to the
 user to modify the styling XSL files.
 
 

 Exactly. Very good summary!

 Furthermore, the choice between readonly/disabled is IMO really a
 presentation concern, and not an application concern. That's why I
 consider that distinguishing them at the widget level by
 introducing an additional state would be useless.

So there is one action left: where do we put this information to inform
the original requester and to avoid a recycle of this discussion?

Bye, Helma




Re: CONTRIBUTION: forms-calendar-styling defect when widget disabled

2005-03-29 Thread Sylvain Wallez
depub2 wrote:
Pardon me, but I appreciate all of your discussion about this... I simply
ask that you place
TWO LINES OF CODE in forms-calendar-styling.xsl to support hidden and
disabled widgets associated with calendars.
 

We have discussed this issue at length and decided how it would be 
handled to be consistent with the CForms widget model and widget states.

As an extra convenience to me and other users, I'd also appreciate it if you
also include the passthru readonly test - no direct widget support needed;
security concerns not relevant - just keeping simple users from getting
confused, not trying to protect from hackers. Impact of adding support for
readonly=NONE.
 

Yes, confusion. All widgets react to the disabled state and there is 
no readonly state. Adding such a state specifically on the calendar 
popup will just add confusion.

Now if you want to use a different rendering and/or behaviour in your 
application, use a locally-modified version of the CForms stylesheets. 
These XSLs are provided in the samples directory and are architected in 
a modular way exactly for this: to allow easy customization if the HTML 
they produce doesn't match your rendering needs.

David
Just do it - Nike
 

Sure, but do it well - Sylvain
--
Sylvain WallezAnyware Technologies
http://apache.org/~sylvainhttp://anyware-tech.com
Apache Software Foundation Member Research  Technology Director


RE: CONTRIBUTION: forms-calendar-styling defect when widget disabled

2005-03-18 Thread Linden H van der (MI)
 Reading the HTML spec [1], the difference between disabled 
 and readonly are:
 - readonly is only available on input and textarea. disabled is 
 available on all controls
 - readonly sends back the value to the server, which is of no 
 use if the 
 widget is not active
 - readonly inputs receive focus and are includes in tab navigation. 
 What's the purpose of this is the value can't be changed?

The only purpose I can think of is accessibility: I can imagine that
reading out loud text vs a readonly input field/textarea is different.
And it can also have a shortcut key, which output widgets displayed as
plain text don't have, for quick(er) navigation.

 The HTML disabled state seems to me to match closely with the CForms 
 disabled state, as it applies to a wider range of controls 
 and doesn't send back the value to the server.

Agreed.

 Now if people want to use HTML readonly, they can do it on active 
 widgets (which won't loose their value because it's sent 
 back) by adding 
 a fi:styling readonly=readonly/. This works because the 
 stylesheets 
 copy verbatim their unknown attributes to the produced HTML element.

Agree. The only point in the discussion was that they liked different
styling based on the presence/absence of the readonly attribute.

 Now from a security POV, using HTML readonly is risky as nothing 
 prevents the value to be modified before being sent back, 
 either by some injected javascript (very hyped nowadays to hack gmail
and 
 google maps) or some forged request.

:-( Good point.

So, to sum it up: readonly as attribute is supported in the current
version of the styling XSL files, but there will be no widget support
for this due to security issues. If treatment of the readonly
attribute should differ from the current situation, it is up to the user
to modify the styling XSL files.

WDYT?

Bye, Helma


Re: CONTRIBUTION: forms-calendar-styling defect when widget disabled

2005-03-18 Thread Sylvain Wallez
Linden H van der (MI) wrote:
Reading the HTML spec [1], the difference between disabled and readonly are:
- readonly is only available on input and textarea. disabled is available on all controls
- readonly sends back the value to the server, which is of no use if the widget is not active
- readonly inputs receive focus and are includes in tab navigation. 
What's the purpose of this is the value can't be changed?
   

The only purpose I can think of is accessibility: I can imagine that reading out loud text vs a readonly input field/textarea is different. And it can also have a shortcut key, which output widgets displayed as
plain text don't have, for quick(er) navigation.
 

The HTML disabled state seems to me to match closely with the CForms disabled state, as it applies to a wider range of controls and doesn't send back the value to the server.
   

Agreed.
 

Now if people want to use HTML readonly, they can do it on active widgets (which won't loose their value because it's sent back) by adding a fi:styling readonly=readonly/. This works because the stylesheets copy verbatim their unknown attributes to the produced HTML element.
   

Agree. The only point in the discussion was that they liked different styling based on the presence/absence of the readonly attribute.
 

Now from a security POV, using HTML readonly is risky as nothing 
prevents the value to be modified before being sent back, 
either by some injected javascript (very hyped nowadays to hack gmail and google maps) or some forged request.
   

:-( Good point.
So, to sum it up: readonly as attribute is supported in the current
version of the styling XSL files, but there will be no widget support
for this due to security issues. If treatment of the readonly
attribute should differ from the current situation, it is up to the user
to modify the styling XSL files.
 

Exactly. Very good summary!
Furthermore, the choice between readonly/disabled is IMO really a 
presentation concern, and not an application concern. That's why I 
consider that distinguishing them at the widget level by introducing an 
additional state would be useless.

Sylvain
--
Sylvain WallezAnyware Technologies
http://apache.org/~sylvainhttp://anyware-tech.com
Apache Software Foundation Member Research  Technology Director


RE: CONTRIBUTION: forms-calendar-styling defect when widget disabled

2005-03-18 Thread Linden H van der (MI)
 So, to sum it up: readonly as attribute is supported in 
 the current 
 version of the styling XSL files, but there will be no 
 widget support 
 for this due to security issues. If treatment of the readonly 
 attribute should differ from the current situation, it is up to the 
 user to modify the styling XSL files.
   
 
 
 Exactly. Very good summary!
 
 Furthermore, the choice between readonly/disabled is IMO really a 
 presentation concern, and not an application concern. That's why I 
 consider that distinguishing them at the widget level by 
 introducing an additional state would be useless.

So there is one action left: where do we put this information to inform
the original requester and to avoid a recycle of this discussion? 

Bye, Helma



RE: CONTRIBUTION: forms-calendar-styling defect when widget disabled

2005-03-17 Thread Linden H van der (MI)
 Ok. He can add whatever attribute to his styling, the stylesheets are 

True.

 built for this, but I don't want to see this readonly attribute 
 handled in the stylesheets, as we have other mechanisms for 
 this, namely widget states.

Agree, however, readonly is part of the HTML textarea specification.
IIRC there is a slight difference between disabled and readonly. The
first one is addressed by widget states, the latter is not. 

 It's important to use widget states for this not only for 
 consistency, 
 but also because non-active (i.e. disabled/output/hidden) 
 widget states 
 instruct the widget not to read its value from the request, 
 which would otherwise reset their value.

Agree.

 I am still missing something?

Well... Reading the HTML textarea specs on readonly I get the
impression that it is not covered by any widget state. Of course there
is the artistic freedom to define your own states, but I think that
CForm widgets should at least be able to result in all possible HTML
state variations as they are defined.
Even more so when the general idea of CForms is to overcome the limits
of HTML form fields.

Just my 2 cents.

Bye, Helma


Re: CONTRIBUTION: forms-calendar-styling defect when widget disabled

2005-03-17 Thread Sylvain Wallez
Linden H van der (MI) wrote:
Ok. He can add whatever attribute to his styling, the stylesheets are 
   

True.
 

built for this, but I don't want to see this readonly attribute 
handled in the stylesheets, as we have other mechanisms for 
this, namely widget states.
   

Agree, however, readonly is part of the HTML textarea specification.
IIRC there is a slight difference between disabled and readonly. The
first one is addressed by widget states, the latter is not.
 

Reading the HTML spec [1], the difference between disabled and readonly are:
- readonly is only available on input and textarea. disabled is 
available on all controls
- readonly sends back the value to the server, which is of no use if the 
widget is not active
- readonly inputs receive focus and are includes in tab navigation. 
What's the purpose of this is the value can't be changed?

The HTML disabled state seems to me to match closely with the CForms 
disabled state, as it applies to a wider range of controls and doesn't 
send back the value to the server.

Now if people want to use HTML readonly, they can do it on active 
widgets (which won't loose their value because it's sent back) by adding 
a fi:styling readonly=readonly/. This works because the stylesheets 
copy verbatim their unknown attributes to the produced HTML element.

Now from a security POV, using HTML readonly is risky as nothing 
prevents the value to be modified before being sent back, either by some 
injected javascript (very hyped nowadays to hack gmail and google maps) 
or some forged request.

Sylvain
[1] http://www.w3.org/TR/html401/interact/forms.html#h-17.12
--
Sylvain WallezAnyware Technologies
http://apache.org/~sylvainhttp://anyware-tech.com
Apache Software Foundation Member Research  Technology Director


Re: CONTRIBUTION: forms-calendar-styling defect when widget disabled

2005-03-16 Thread Sylvain Wallez
Linden H van der (MI) wrote:
Sylvain,
I think he means that adding readonly='readonly' as attribute to his
own fi:styling tag is passed through the styling XSL files. IIRC there
is a template that deals with extra attributes in the styling tag.
 

Ok. He can add whatever attribute to his styling, the stylesheets are 
built for this, but I don't want to see this readonly attribute 
handled in the stylesheets, as we have other mechanisms for this, namely 
widget states.

It's important to use widget states for this not only for consistency, 
but also because non-active (i.e. disabled/output/hidden) widget states 
instruct the widget not to read its value from the request, which would 
otherwise reset their value.

I am still missing something?
Sylvain
--
Sylvain WallezAnyware Technologies
http://apache.org/~sylvainhttp://anyware-tech.com
Apache Software Foundation Member Research  Technology Director


RE: Re: CONTRIBUTION: forms-calendar-styling defect when widget disabled WAS repeater-widget (insert row): InsertRowsActionDefinition

2005-03-15 Thread depub2



Well actually, the readonly="readonly" works! Try it!!! And there are 
  some cases where disabled="disabled" is problematic (binding/saving) and I 
  think something else I can't remember right now (pulldown selections? calendar 
  selections? - can't remember). (note {at-symbol} above must be translated to @ 
  - seems that symbol is not allowed on the archives.) 
Sorry, 
but I really don't know what you're talking about. Is this 'readonly' in the 
binding? If so, what's the relation with the styling XSLs??

It is in the template file, 
fi:styling tag. I believe that readonly="readonly" simply gets passed 
along as an attribute to the "input" tag and is valid xhtml which the browser 
then interprets to be like disabled="disabled", but slightly different. Here's 
an example usage:

ft:widget 
id="StatusMessage" fi:styling readonly="readonly" 
type="textarea" rows="4" cols="75" 
wrap="hard"class="DocOrdersStatusMessage"//ft:widget

Anyway, inserting that small code 
segment in the source (see below) and then playing with the samples to disable 
the calendar widget will show you what I mean - and try readonly as a styling 
attribute to see that at work too. Then try disabling the calendar without my 
modifications and you'll notice that the date can be changed, even though the 
widget is disabled.
Sylvain
--
Sylvain Wallez  Anyware Technologies
http://www.apache.org/~sylvain   http://www.anyware-tech.com
{ XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }Also, I have a "2 line" minor tweak to the forms-calendar-styling.xsl that
disables the "calendar icon/popup" when a datetype="date" widget is set to
readonly, disabled, or hidden (in these cases, we don't want an icon or
popup - ESPECIALLY when the widget is supposed to be "hidden").The change was simple, in
cocoon/samples/blocks/forms/resources/forms-calendar-styling.xslI added:
xsl:if test="not(fi:{at-symbol}disabled='disabled'] or
fi:{at-symbol}readonly='readonly'] or fi:{at-symbol}hidden='hidden'])"
around the calendar HTML anchor.The modified code segment in that file now reads:
   !-- calendar popup --
   xsl:if test="not(fi:{at-symbol}disabled='disabled'] or
fi:{at-symbol}readonly=readonly'] or fi:{at-symbol}hidden='hidden'])"
   a href="" name="{$id}" id="{$id}"
  
 img src="" border="0" alt="Calendar"/
   /a
   /xsl:ifAll that I added was the surrounding xsl:if block. It works great!!Should I move this to a separate CONTRIBUTION thread or is this simpleenough that you would just get it into the cvs archive??


RE: Re: CONTRIBUTION: forms-calendar-styling defect when widget disabled WAS repeater-widget (insert row): InsertRowsActionDefinition

2005-03-15 Thread Linden H van der (MI)
Title: Message



Sounds 
like a good idea. Since I'm working on the styling XSL sheets anyway, should I 
include this?

Bye, 
Helma

  
  -Original Message-From: depub2 
  [mailto:[EMAIL PROTECTED] Sent: Tuesday, 15 March 2005 
  19:58To: CocoonDev; [EMAIL PROTECTED]Subject: RE: Re: 
  CONTRIBUTION: forms-calendar-styling defect when widget disabled WAS 
  repeater-widget (insert row): 
  InsertRowsActionDefinition
  Well actually, the readonly="readonly" works! Try it!!! And there are 
some cases where disabled="disabled" is problematic (binding/saving) and I 
think something else I can't remember right now (pulldown selections? 
calendar selections? - can't remember). (note {at-symbol} above must be 
translated to @ - seems that symbol is not allowed on the archives.) 

  Sorry, but I really don't know what you're talking about. Is this 
  'readonly' in the binding? If so, what's the relation with the styling 
  XSLs??
  
  It is in the template file, 
  fi:styling tag. I believe that readonly="readonly" simply gets passed 
  along as an attribute to the "input" tag and is valid xhtml which the browser 
  then interprets to be like disabled="disabled", but slightly different. Here's 
  an example usage:
  
  ft:widget 
  id="StatusMessage" fi:styling readonly="readonly" 
  type="textarea" rows="4" cols="75" 
  wrap="hard"class="DocOrdersStatusMessage"//ft:widget
  
  Anyway, inserting that small code 
  segment in the source (see below) and then playing with the samples to disable 
  the calendar widget will show you what I mean - and try readonly as a styling 
  attribute to see that at work too. Then try disabling the calendar without my 
  modifications and you'll notice that the date can be changed, even though the 
  widget is disabled.
  Sylvain
  --
Sylvain Wallez  Anyware Technologies
http://www.apache.org/~sylvain   http://www.anyware-tech.com
{ XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }Also, I have a "2 line" minor tweak to the forms-calendar-styling.xsl that
disables the "calendar icon/popup" when a datetype="date" widget is set to
readonly, disabled, or hidden (in these cases, we don't want an icon or
popup - ESPECIALLY when the widget is supposed to be "hidden").The change was simple, in
cocoon/samples/blocks/forms/resources/forms-calendar-styling.xslI added:
xsl:if test="not(fi:{at-symbol}disabled='disabled'] or
fi:{at-symbol}readonly='readonly'] or fi:{at-symbol}hidden='hidden'])"
around the calendar HTML anchor.The modified code segment in that file now reads:
   !-- calendar popup --
   xsl:if test="not(fi:{at-symbol}disabled='disabled'] or
fi:{at-symbol}readonly=readonly'] or fi:{at-symbol}hidden='hidden'])"
   a href="" name="{$id}" id="{$id}"
  
 img src="" border="0" alt="Calendar"/
   /a
   /xsl:ifAll that I added was the surrounding xsl:if block. It works great!!Should I move this to a separate CONTRIBUTION thread or is this simpleenough that you would just get it into the cvs archive??


Re: CONTRIBUTION: forms-calendar-styling defect when widget disabled

2005-03-15 Thread Sylvain Wallez
depub2 wrote:

Well actually, the readonly=readonly works! Try it!!! And there
are some cases where disabled=disabled is problematic
(binding/saving) and I think something else I can't remember right
now (pulldown selections? calendar selections? - can't remember).
(note {at-symbol} above must be translated to @ - seems that
symbol is not allowed on the archives.) 


Sorry, but I really don't know what you're talking about. Is this 
'readonly' in the binding? If so, what's the relation with the styling 
XSLs??
 
It is in the template file, fi:styling tag. I believe that 
readonly=readonly simply gets passed along as an attribute to the 
input tag and is valid xhtml which the browser then interprets to be 
like disabled=disabled, but slightly different. Here's an example usage:
 
ft:widget id=StatusMessage
  fi:styling readonly=readonly type=textarea rows=4 cols=75 
wrap=hard
 class=DocOrdersStatusMessage/
/ft:widget

Again, I can't find it. If the forms/samples directory:
$ find . -type f | xargs grep readonly
./forms/binding/01value-bind.xml:  fb:value id=readonly  
./forms/binding/01value-def.xml:fd:field id=readonly 

The only readonly in the whole CForms samples (which include the XSLs) 
is the name of a widget.

Can you please give me the URL of the relevant file under 
http://svn.apache.org/repos/asf/cocoon/branches/BRANCH_2_1_X/src/blocks/forms/


Anyway, inserting that small code segment in the source (see below) 
and then playing with the samples to disable the calendar widget will 
show you what I mean - and try readonly as a styling attribute to see 
that at work too. Then try disabling the calendar without my 
modifications and you'll notice that the date can be changed, even 
though the widget is disabled.

Again and again, there is no such readonly attribute. You can set the 
state of a widget to disabled which leads to something similar to what 
you describe: the input is readonly, and the calendar icon is still 
visible but disabled.

Sylvain
--
Sylvain WallezAnyware Technologies
http://apache.org/~sylvainhttp://anyware-tech.com
Apache Software Foundation Member Research  Technology Director


RE: CONTRIBUTION: forms-calendar-styling defect when widget disabled

2005-03-15 Thread Linden H van der (MI)
Sylvain,

I think he means that adding readonly='readonly' as attribute to his
own fi:styling tag is passed through the styling XSL files. IIRC there
is a template that deals with extra attributes in the styling tag.

HTH.

Bye, Helma


 -Original Message-
 From: Sylvain Wallez [mailto:[EMAIL PROTECTED] 
 Sent: Tuesday, 15 March 2005 23:33
 To: dev@cocoon.apache.org; [EMAIL PROTECTED]
 Subject: Re: CONTRIBUTION: forms-calendar-styling defect when 
 widget disabled
 
 
 depub2 wrote:
 
 
  
 
  Well actually, the readonly=readonly works! Try it!!! 
 And there
  are some cases where disabled=disabled is problematic
  (binding/saving) and I think something else I can't 
 remember right
  now (pulldown selections? calendar selections? - can't 
 remember).
  (note {at-symbol} above must be translated to @ - seems that
  symbol is not allowed on the archives.) 
 
 
 
  Sorry, but I really don't know what you're talking about. Is this 
  'readonly' in the binding? If so, what's the relation with 
 the styling 
  XSLs??
   
  It is in the template file, fi:styling tag. I believe that 
  readonly=readonly simply gets passed along as an attribute to the 
  input tag and is valid xhtml which the browser then 
 interprets to be 
  like disabled=disabled, but slightly different. Here's an 
 example usage:
   
  ft:widget id=StatusMessage
fi:styling readonly=readonly type=textarea rows=4 
 cols=75 
  wrap=hard
   class=DocOrdersStatusMessage/
  /ft:widget
 
 
 Again, I can't find it. If the forms/samples directory:
 $ find . -type f | xargs grep readonly
 ./forms/binding/01value-bind.xml:  fb:value id=readonly  
 ./forms/binding/01value-def.xml:fd:field id=readonly 
 
 The only readonly in the whole CForms samples (which 
 include the XSLs) 
 is the name of a widget.
 
 Can you please give me the URL of the relevant file under 
 http://svn.apache.org/repos/asf/cocoon/branches/BRANCH_2_1_X/s
rc/blocks/forms/
 

 Anyway, inserting that small code segment in the source (see below) 
 and then playing with the samples to disable the calendar widget will 
 show you what I mean - and try readonly as a styling attribute to see 
 that at work too. Then try disabling the calendar without my 
 modifications and you'll notice that the date can be changed, even 
 though the widget is disabled.


Again and again, there is no such readonly attribute. You can set the 
state of a widget to disabled which leads to something similar to what

you describe: the input is readonly, and the calendar icon is still 
visible but disabled.

Sylvain

-- 
Sylvain WallezAnyware Technologies
http://apache.org/~sylvainhttp://anyware-tech.com
Apache Software Foundation Member Research  Technology Director