flex-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mark Kessler (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FLEX-16714) Validator. Credit Card Validator does not work properly when property 'required' is false
Date Wed, 17 Apr 2013 01:16:14 GMT

    [ https://issues.apache.org/jira/browse/FLEX-16714?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13633636#comment-13633636
] 

Mark Kessler commented on FLEX-16714:
-------------------------------------

Issue may already be resolved, needs to be tested/confirmed with an uploaded example.  Can
reference original adobe jira issue for more information.
                
> Validator. Credit Card Validator does not work properly when property 'required' is false
> -----------------------------------------------------------------------------------------
>
>                 Key: FLEX-16714
>                 URL: https://issues.apache.org/jira/browse/FLEX-16714
>             Project: Apache Flex
>          Issue Type: Bug
>          Components: Validators
>    Affects Versions: Adobe Flex SDK 3.1 (Release)
>         Environment: Affected OS(s): Windows
> Browser: Internet Explorer 6.x
> Language Found: English
>            Reporter: Adobe JIRA
>              Labels: easyfix
>
>       Steps to reproduce:
> 1. Application code:
> <?xml version="1.0" encoding="utf-8"?>
> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
> 	<mx:Form>
> 		<mx:FormItem label="Account Number">
> 			<mx:TextInput id="ti" width="200"/>
> 		</mx:FormItem>
> 		<mx:FormItem>
> 			<mx:Button id="btn" label="Submit" click="submit(event)"/>
> 		</mx:FormItem>
> 	</mx:Form>	
> 	<mx:CreditCardValidator
> 		id="ccV"
> 		required="false"
> 		cardNumberSource="{ti}"
> 		cardNumberProperty="text"
> 		cardTypeSource="{cardType}"
> 		cardTypeProperty="type"
> 		allowedFormatChars=""
> 		invalid="_valid = false;"
> 		valid="_valid = true;"/>		
> 	
> 	<mx:Script>
> 		<![CDATA[
> 			import mx.controls.Alert;
> 			[Bindable]
> 			private var cardType:Object = {type:"American Express"};
> 			
> 			private var _valid:Boolean;
> 			private function submit(event:MouseEvent):void {
> 				ccV.validate();
> 				Alert.show(_valid.toString());
> 			}		
> 		]]
>       >
> 	</mx:Script>
> </mx:Application>
> 2. Set ccv property 'required' to false. This means that validator should consider empty
input as valid.
> 3. Launch application
> 4. Do not enter any input. Click on Submit button.
> 5. See the value on the Alert box.
>  
>  Actual Results:
>  1. Alert box shows 'false'.
>           
>            The validator.as code in my sdk has a function per below:
>                  public function validate(
>                         value:Object = null,
>                         suppressEvents:Boolean = false):ValidationResultEvent
>                  {   
>                       if (value == null)
>                           value = getValueFromSource();   
>         
>         // if required flag is true and there is no value
>         // we need to generate a required field error
>         if (isRealValue(value) || required)   <<<<<<< ***********
THIS SHOULD BE 'AND' INSTEAD OF 'OR' *****************
>         {
>             return processValidation(value, suppressEvents);
>         }
>         else
>         {
>             // Just return valid
>             return new ValidationResultEvent(ValidationResultEvent.VALID); 
>         }
>     }
>   Because of the existing OR condition, the logic flows to processValidation even though
required is false.
>  Expected Results:
>  1. Alert box should show 'true'.  Since the ccV property 'required' is set to false,
I expect the validator to not validate 'empty' textinput.
>  
>  Workaround (if any):
>     

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message