Re: FW: Feature Request: Pure JS Input Masks

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: FW: Feature Request: Pure JS Input Masks

tsemachh
Hi
I am back on it today, 

I added everything to ValidationTextBox (attached)

Just trying to emphasize what we want to achieve here:
1. Blocking input keys which will cause the text box to be not a valid sub set
(We rely on ValidationTextbox partial RegExp computing)

2. Automatic completion of place holders upon keying a non valid sequence which by adding the place holder will be a valid sequence.
(Example: keying 020308 on a date text box will auto complete to 02/03/08)

Not covered in this solution:
1. Actual place holders during input , aka have __/__/____  on date text box prior to data entry.
2. Paste events blocking since users sometimes copy more than needed use paste and then remove non valid characters 
- I can do a smart paste here if there will be demand for it - aka filtering the non valid characters.
3. In order to keep it simple the blocking validation only performs checks on the keyed text until the cursor and not ahead , this leaves
place for users to change value ahead as they wish.

This will leave the current validation mechanism for edge cases and non RegExp validations(Such as Range etc.)

Automatic completion of place holders 
I basically added 2 things:
1. automatic parsing of the place holder characters during the the partial Regexp computing
I am assuming place holders will be non alpha numeric single characters , the parsing was o.k. in all the widgets I checked and it parsed the place holder based on the regexp ,which means fully localized.

2. if there's more than 1 place holder character , I will try to check all of them ,if one of them fits it I will perform with it the auto completion.

Now as of tests I would need guidelines of how to do it right:
We can plan tests on dijit using the known widgets who has RegExp such as: Date , Time , Number & Currency.
In addition we can provide Regexp like credit card , ISBN , SSN etc.
I believe we need to test on the different browsers we intend to support in dojo 1.11.

Tsemach

2015-07-12 18:54 GMT+03:00 dylanks [via Dojo Toolkit] <[hidden email]>:
See comments inline.

on 7/12/15, 08:00 (GMT-07:00) tsemachh said the following:
> Just note , that there was no reference in the Web besides this article:
> http://blog.aspnet.sk/xxxmatko/archive/2012/08/31/dojo-masked-input-plugin.aspx
> Which just took from some JQUERY PLUGIN and translated it to Dojo in some
> means.

Right, I think we've done something similar in a few projects, and we
teach something similar in our training workshops.

> The amount of code and the quality of this reference was so bad that I had
> to rewrite it using that code.
>
> It's just one example that demonstrates the strength of the dojo foundation.

Thanks!

> With such minimal code you get to do things in the right way.
> I think it will be good for the PR of Dojo to have this part of the
> foundation.

Agreed, I'm surprised we've never bothered to add it.

> I will do my best to provide tests and documentations.
> but first tell me do you see it as mixin to ValidationTextBox , or toTextBox
> ?

I'm guessing ValidationTextBox, though it would be more convenient if we
didn't need yet another mixin. :) Maybe Bill Keese has some thoughts?

> (What's the use of it there if it has no validation constrains ?)
> As I didn't write tests before is there any reference to tests I can start
> with ?

To be fair, tests with Dijit are still somewhat painful because they
require using DOH rather than Intern like Dojo core. Perhaps Bill can
provide some guidance here?

> thanks
> tsemach.
>
>
>
>
> --
> View this message in context: http://dojo-toolkit.33424.n3.nabble.com/FW-Feature-Request-Pure-JS-Input-Masks-tp154391p4006182.html
> Sent from the Dojo Toolkit mailing list archive at Nabble.com.

--
Dylan Schiemann
SitePen, Inc.
Dojo workshops in the US, Canada, and Europe:
http://www.sitepen.com/workshops/
http://www.sitepen.com/

--
Dojo Toolkit: http://dojotoolkit.org/
Tutorials: http://dojotoolkit.org/documentation/

[hidden email]
To unsubscribe, visit: http://mail.dojotoolkit.org/mailman/listinfo/dojo-interest
Co-Founder, Dojo Toolkit
CEO, SitePen, Inc.  http://www.sitepen.com/



If you reply to this email, your message will be added to the discussion below:
http://dojo-toolkit.33424.n3.nabble.com/FW-Feature-Request-Pure-JS-Input-Masks-tp154391p4006183.html
To unsubscribe from FW: Feature Request: Pure JS Input Masks, click here.
NAML


ValidationTextBox.txt (21K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: FW: Feature Request: Pure JS Input Masks

dylanks
For Dijit, we currently write the tests using DOH (though I would love
to convert them all to Intern at this time, that's a lot of work that
won't happen for the 1.11 release). Once you get the tests setup with
DOH, it's fairly easy for everyone to run them on the browsers they have
available, so we can spot any regressions before we land this.

Could you open a pull request with your current work in progress? This
will get more people looking at your proposed patch. See
https://github.com/dojo/dijit/blob/master/CONTRIBUTING.md for details.

Regards,
-Dylan

on 7/21/15, 23:37 (GMT-07:00) tsemachh said the following:

> Hi
> I am back on it today,
>
> I added everything to ValidationTextBox (attached)
>
> Just trying to emphasize what we want to achieve here:
> 1. Blocking input keys which will cause the text box to be not a valid
> sub set
> (We rely on ValidationTextbox partial RegExp computing)
>
> 2. Automatic completion of place holders upon keying a non valid
> sequence which by adding the place holder will be a valid sequence.
> (Example: keying 020308 on a date text box will auto complete to 02/03/08)
>
> *_Not covered in this solution:_*
> 1. Actual place holders during input , aka have __/__/____  on date text
> box prior to data entry.
> 2. Paste events blocking since users sometimes copy more than needed use
> paste and then remove non valid characters
> - I can do a smart paste here if there will be demand for it - aka
> filtering the non valid characters.
> 3. In order to keep it simple the blocking validation only performs
> checks on the keyed text until the cursor and not ahead , this leaves
> place for users to change value ahead as they wish.
>
> This will leave the current validation mechanism for edge cases and non
> RegExp validations(Such as Range etc.)
>
> *_Automatic completion of place holders _*
> I basically added 2 things:
> 1. automatic parsing of the place holder characters during the the
> partial Regexp computing
> I am assuming place holders will be non alpha numeric single characters
> , the parsing was o.k. in all the widgets I checked and it parsed the
> place holder based on the regexp ,which means fully localized.
>
> 2. if there's more than 1 place holder character , I will try to check
> all of them ,if one of them fits it I will perform with it the auto
> completion.
>
> Now as of tests I would need guidelines of how to do it right:
> We can plan tests on dijit using the known widgets who has RegExp such
> as: Date , Time , Number & Currency.
> In addition we can provide Regexp like credit card , ISBN , SSN etc.
> I believe we need to test on the different browsers we intend to support
> in dojo 1.11.
>
> Tsemach
>
> 2015-07-12 18:54 GMT+03:00 dylanks [via Dojo Toolkit] <[hidden email]
> </user/SendEmail.jtp?type=node&node=4006252&i=0>>:
>
>     See comments inline.
>
>     on 7/12/15, 08:00 (GMT-07:00) tsemachh said the following:
>     > Just note , that there was no reference in the Web besides this
>     article:
>     >
>     http://blog.aspnet.sk/xxxmatko/archive/2012/08/31/dojo-masked-input-plugin.aspx
>     > Which just took from some JQUERY PLUGIN and translated it to Dojo
>     in some
>     > means.
>
>     Right, I think we've done something similar in a few projects, and we
>     teach something similar in our training workshops.
>
>     > The amount of code and the quality of this reference was so bad
>     that I had
>     > to rewrite it using that code.
>     >
>     > It's just one example that demonstrates the strength of the dojo
>     foundation.
>
>     Thanks!
>
>     > With such minimal code you get to do things in the right way.
>     > I think it will be good for the PR of Dojo to have this part of the
>     > foundation.
>
>     Agreed, I'm surprised we've never bothered to add it.
>
>     > I will do my best to provide tests and documentations.
>     > but first tell me do you see it as mixin to ValidationTextBox , or
>     toTextBox
>     > ?
>
>     I'm guessing ValidationTextBox, though it would be more convenient
>     if we
>     didn't need yet another mixin. :) Maybe Bill Keese has some thoughts?
>
>     > (What's the use of it there if it has no validation constrains ?)
>     > As I didn't write tests before is there any reference to tests I
>     can start
>     > with ?
>
>     To be fair, tests with Dijit are still somewhat painful because they
>     require using DOH rather than Intern like Dojo core. Perhaps Bill can
>     provide some guidance here?
>
>     > thanks
>     > tsemach.
>     >
>     >
>     >
>     >
>     > --
>     > View this message in context:
>     http://dojo-toolkit.33424.n3.nabble.com/FW-Feature-Request-Pure-JS-Input-Masks-tp154391p4006182.html
>     > Sent from the Dojo Toolkit mailing list archive at Nabble.com.
>
>     --
>     Dylan Schiemann
>     SitePen, Inc.
>     Dojo workshops in the US, Canada, and Europe:
>     http://www.sitepen.com/workshops/
>     http://www.sitepen.com/
>
>     --
>     Dojo Toolkit: http://dojotoolkit.org/
>     Tutorials: http://dojotoolkit.org/documentation/
>
>     [hidden email] <http:///user/SendEmail.jtp?type=node&node=4006183&i=0>
>     To unsubscribe, visit:
>     http://mail.dojotoolkit.org/mailman/listinfo/dojo-interest
>     Co-Founder, Dojo Toolkit
>     CEO, SitePen, Inc.  http://www.sitepen.com/
>
>
>     ------------------------------------------------------------------------
>     If you reply to this email, your message will be added to the
>     discussion below:
>     http://dojo-toolkit.33424.n3.nabble.com/FW-Feature-Request-Pure-JS-Input-Masks-tp154391p4006183.html
>
>     To unsubscribe from FW: Feature Request: Pure JS Input Masks, click
>     here.
>     NAML
>     <http://dojo-toolkit.33424.n3.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>
>
>
>
> *ValidationTextBox.txt* (21K) Download Attachment
> <http://dojo-toolkit.33424.n3.nabble.com/attachment/4006252/0/ValidationTextBox.txt>
>
> ------------------------------------------------------------------------
> View this message in context: Re: FW: Feature Request: Pure JS Input
> Masks
> <http://dojo-toolkit.33424.n3.nabble.com/Re-FW-Feature-Request-Pure-JS-Input-Masks-tp4006252.html>
> Sent from the Dojo Toolkit mailing list archive
> <http://dojo-toolkit.33424.n3.nabble.com/> at Nabble.com.
>

--
Dylan Schiemann
SitePen, Inc.
Dojo workshops in the US, Canada, and Europe:
http://www.sitepen.com/workshops/
http://www.sitepen.com/

--
Dojo Toolkit: http://dojotoolkit.org/
Tutorials: http://dojotoolkit.org/documentation/

[hidden email]
To unsubscribe, visit: http://mail.dojotoolkit.org/mailman/listinfo/dojo-interest
Co-Founder, Dojo Toolkit
CEO, SitePen, Inc.  http://www.sitepen.com/