<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>foolproof Source Code Rss Feed</title><link>http://foolproof.codeplex.com/SourceControl/list/changesets</link><description>foolproof Source Code Rss Description</description><item><title>Source code checked in, #94877</title><link>http://foolproof.codeplex.com/SourceControl/changeset/changes/94877</link><description>Upgrade&amp;#58; New Version of LabDefaultTemplate.xaml. To upgrade your build definitions, please visit the following link&amp;#58; http&amp;#58;&amp;#47;&amp;#47;go.microsoft.com&amp;#47;fwlink&amp;#47;&amp;#63;LinkId&amp;#61;254563</description><author>Project Collection Service Accounts</author><pubDate>Mon, 01 Oct 2012 22:38:35 GMT</pubDate><guid isPermaLink="false">Source code checked in, #94877 20121001103835P</guid></item><item><title>Source code checked in, #94876</title><link>http://foolproof.codeplex.com/SourceControl/changeset/changes/94876</link><description>Checked in by server upgrade</description><author>Project Collection Service Accounts</author><pubDate>Mon, 01 Oct 2012 22:31:06 GMT</pubDate><guid isPermaLink="false">Source code checked in, #94876 20121001103106P</guid></item><item><title>Patch Uploaded: #12486</title><link>http://foolproof.codeplex.com/SourceControl/list/patches</link><description>
&lt;p&gt;&lt;a href='http://www.codeplex.com/site/users/view/leniel'&gt;leniel&lt;/a&gt; has uploaded a patch.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Description:&lt;/b&gt;&lt;br /&gt;ContingentValidationAttribute.cs&lt;br /&gt;Added&amp;#58;&lt;br /&gt;&lt;br /&gt;        public string DependentPropertyDisplayName &amp;#123; get&amp;#59; set&amp;#59; &amp;#125;&lt;br /&gt;&lt;br /&gt;Changed&amp;#58;&lt;br /&gt;&lt;br /&gt;        public override string FormatErrorMessage&amp;#40;string name&amp;#41;&lt;br /&gt;        &amp;#123;&lt;br /&gt;            if &amp;#40;string.IsNullOrEmpty&amp;#40;ErrorMessageResourceName&amp;#41; &amp;#38;&amp;#38; string.IsNullOrEmpty&amp;#40;ErrorMessage&amp;#41;&amp;#41;&lt;br /&gt;                ErrorMessage &amp;#61; DefaultErrorMessage&amp;#59;&lt;br /&gt;            &lt;br /&gt;            return string.Format&amp;#40;ErrorMessageString, name, DependentPropertyDisplayName &amp;#63;&amp;#63; DependentProperty&amp;#41;&amp;#59;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&lt;br /&gt;In FoolproofValidator.cs&lt;br /&gt;&lt;br /&gt;Changed&amp;#58;&lt;br /&gt;&lt;br /&gt;public override IEnumerable&amp;#60;ModelClientValidationRule&amp;#62; GetClientValidationRules&amp;#40;&amp;#41;&lt;br /&gt;&amp;#123;&lt;br /&gt;    if &amp;#40;Attribute is ContingentValidationAttribute&amp;#41;&lt;br /&gt;    &amp;#123;&lt;br /&gt;        ContingentValidationAttribute attribute &amp;#61; Attribute as ContingentValidationAttribute&amp;#59;&lt;br /&gt;&lt;br /&gt;        PropertyInfo otherPropertyInfo &amp;#61; this.Metadata.ContainerType.GetProperty&amp;#40;attribute.DependentProperty&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;        var displayName &amp;#61; GetAttributeDisplayName&amp;#40;otherPropertyInfo&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;        attribute.DependentPropertyDisplayName &amp;#61; displayName&amp;#59;&lt;br /&gt;    &amp;#125;&lt;br /&gt;&lt;br /&gt;    var result &amp;#61; new ModelClientValidationRule&amp;#40;&amp;#41;&lt;br /&gt;    &amp;#123;&lt;br /&gt;        ValidationType &amp;#61; Attribute.ClientTypeName.ToLower&amp;#40;&amp;#41;,&lt;br /&gt;        ErrorMessage &amp;#61; ErrorMessage &lt;br /&gt;    &amp;#125;&amp;#59;&lt;br /&gt;            &lt;br /&gt;    foreach &amp;#40;var validationParam in Attribute.ClientValidationParameters&amp;#41;&lt;br /&gt;        result.ValidationParameters.Add&amp;#40;validationParam&amp;#41;&amp;#59;&lt;br /&gt;            &lt;br /&gt;    yield return result&amp;#59;&lt;br /&gt;&amp;#125;&lt;br /&gt;&lt;br /&gt;As I&amp;#39;m using EntityFramework with ModelMetadata I had to used these custom functions&amp;#58;&lt;br /&gt;&lt;br /&gt;  private string GetAttributeDisplayName&amp;#40;PropertyInfo property&amp;#41;&lt;br /&gt;        &amp;#123;&lt;br /&gt;            var atts &amp;#61; property.GetCustomAttributes&amp;#40;typeof&amp;#40;DisplayAttribute&amp;#41;, true&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;            if &amp;#40;atts.Length &amp;#61;&amp;#61; 0&amp;#41;&lt;br /&gt;                return null&amp;#59;&lt;br /&gt;&lt;br /&gt;            return &amp;#40;atts&amp;#91;0&amp;#93; as DisplayAttribute&amp;#41;.GetName&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&lt;br /&gt;Hope it helps,&lt;br /&gt;&lt;br /&gt;Leniel&lt;/p&gt;</description><author>leniel</author><pubDate>Mon, 25 Jun 2012 21:49:11 GMT</pubDate><guid isPermaLink="false">Patch Uploaded: #12486 20120625094911P</guid></item><item><title>Source code checked in, #90297</title><link>http://foolproof.codeplex.com/SourceControl/changeset/changes/90297</link><description>added the ability to parse complex object trees with dependent validation. For example EqualTo&amp;#40;&amp;#34;SubObject.Name&amp;#34;, &amp;#34;Test&amp;#34;&amp;#41;</description><author>nickriggs</author><pubDate>Thu, 10 May 2012 19:16:36 GMT</pubDate><guid isPermaLink="false">Source code checked in, #90297 20120510071636P</guid></item><item><title>Patch Uploaded: #11953</title><link>http://foolproof.codeplex.com/SourceControl/list/patches</link><description>
&lt;p&gt;&lt;a href='http://www.codeplex.com/site/users/view/pavelbalas'&gt;pavelbalas&lt;/a&gt; has uploaded a patch.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Description:&lt;/b&gt;&lt;br /&gt;When RequiredIfRegExMatch &amp;#40;or RequiredIfNotRegExMatch&amp;#41; attribute is used and dependency property is int, decimal or bool, then client validation doesn&amp;#8217;t work correctly. The reason is that foolproof.is function tries to convert both sides &amp;#40;value1 and value2&amp;#41; to dependency property type and fails, because value2 is a regular expression pattern.&lt;/p&gt;</description><author>pavelbalas</author><pubDate>Thu, 12 Apr 2012 12:37:14 GMT</pubDate><guid isPermaLink="false">Patch Uploaded: #11953 20120412123714P</guid></item><item><title>Patch Uploaded: #11307</title><link>http://foolproof.codeplex.com/SourceControl/list/patches</link><description>
&lt;p&gt;&lt;a href='http://www.codeplex.com/site/users/view/MehCFL'&gt;MehCFL&lt;/a&gt; has uploaded a patch.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Description:&lt;/b&gt;&lt;br /&gt;Patch to fix issue with option elements without a value explicitly specified.&lt;/p&gt;</description><author>MehCFL</author><pubDate>Thu, 19 Jan 2012 17:12:51 GMT</pubDate><guid isPermaLink="false">Patch Uploaded: #11307 20120119051251P</guid></item><item><title>Patch Uploaded: #11263</title><link>http://foolproof.codeplex.com/SourceControl/list/patches</link><description>
&lt;p&gt;&lt;a href='http://www.codeplex.com/site/users/view/MehCFL'&gt;MehCFL&lt;/a&gt; has uploaded a patch.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Description:&lt;/b&gt;&lt;br /&gt;A patch for the Radio buttons true&amp;#47;false issue that works for &amp;#39;False&amp;#39; as well as &amp;#39;True&amp;#39;. Sorry about submitting two patches for this.&lt;/p&gt;</description><author>MehCFL</author><pubDate>Thu, 12 Jan 2012 14:18:45 GMT</pubDate><guid isPermaLink="false">Patch Uploaded: #11263 20120112021845P</guid></item><item><title>Patch Uploaded: #11262</title><link>http://foolproof.codeplex.com/SourceControl/list/patches</link><description>
&lt;p&gt;&lt;a href='http://www.codeplex.com/site/users/view/MehCFL'&gt;MehCFL&lt;/a&gt; has uploaded a patch.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Description:&lt;/b&gt;&lt;br /&gt;A patch for client side validation not working with radio buttons.&lt;/p&gt;</description><author>MehCFL</author><pubDate>Thu, 12 Jan 2012 12:47:24 GMT</pubDate><guid isPermaLink="false">Patch Uploaded: #11262 20120112124724P</guid></item><item><title>Source code checked in, #83441</title><link>http://foolproof.codeplex.com/SourceControl/changeset/changes/83441</link><description>Added initial support for passing validation when one of the properties is null. This effects all Attrbitures that inherit from IsAttrbiute, such has EqualTo, GreaterThan, ect. Also made changes to the clientside script files to support this - however only the legacy MVC Validation has been tested. JQuery Validation and Onobtrusive needs to be tested. </description><author>nickriggs</author><pubDate>Tue, 29 Nov 2011 16:13:20 GMT</pubDate><guid isPermaLink="false">Source code checked in, #83441 20111129041320P</guid></item><item><title>Patch Uploaded: #10262</title><link>http://foolproof.codeplex.com/SourceControl/list/patches</link><description>
&lt;p&gt;&lt;a href='http://www.codeplex.com/site/users/view/jcruz2us'&gt;jcruz2us&lt;/a&gt; has uploaded a patch.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Description:&lt;/b&gt;&lt;br /&gt;I&amp;#39;ve been meaning to submit this patch. The RequireIf validation does not work property with a list of radio buttons. I&amp;#39;ve replace that code that checks if an item passes the required rule with a call to the required function from the jQuery Validation plugin. I&amp;#39;ve commented the changes so it should be easy to find them.&lt;/p&gt;</description><author>jcruz2us</author><pubDate>Wed, 24 Aug 2011 15:41:20 GMT</pubDate><guid isPermaLink="false">Patch Uploaded: #10262 20110824034120P</guid></item><item><title>Source code checked in, #77989</title><link>http://foolproof.codeplex.com/SourceControl/changeset/changes/77989</link><description>Fixed problems with unobtrusive JS and requiredifempyy and requiredifnotempyy</description><author>nickriggs</author><pubDate>Tue, 09 Aug 2011 14:25:55 GMT</pubDate><guid isPermaLink="false">Source code checked in, #77989 20110809022555P</guid></item><item><title>Source code checked in, #67563</title><link>http://foolproof.codeplex.com/SourceControl/changeset/changes/67563</link><description>Fixed an issue with unobtrusive client-side validation and integers. They were being parsed as dates and then being compared. I had to add a date regex to detect dates instead of simply relaying on Date.parse&amp;#40;&amp;#41;.</description><author>nickriggs</author><pubDate>Sun, 30 Jan 2011 15:15:23 GMT</pubDate><guid isPermaLink="false">Source code checked in, #67563 20110130031523P</guid></item><item><title>Source code checked in, #67390</title><link>http://foolproof.codeplex.com/SourceControl/changeset/changes/67390</link><description>fixed a typo in an error message</description><author>nickriggs</author><pubDate>Tue, 25 Jan 2011 20:16:20 GMT</pubDate><guid isPermaLink="false">Source code checked in, #67390 20110125081620P</guid></item><item><title>Source code checked in, #67360</title><link>http://foolproof.codeplex.com/SourceControl/changeset/changes/67360</link><description>Added ASP.NET MVC 3 unobtrusive JavaScript support.  This may introduce a breaking change to applications that implemented custom foolproof validators with custom client validation. This is due MVC 3 validators requiring that the validator type names and parameter names be lowercase. The fix should be as simple as just changing the case in your custom client script. &amp;#13;&amp;#10;&amp;#13;&amp;#10;Also updated the post build event to use the latest Microsoft Ajax Minifier. &amp;#13;&amp;#10;</description><author>nickriggs</author><pubDate>Mon, 24 Jan 2011 21:16:21 GMT</pubDate><guid isPermaLink="false">Source code checked in, #67360 20110124091621P</guid></item><item><title>Patch Uploaded: #7729</title><link>http://foolproof.codeplex.com/SourceControl/PatchList.aspx</link><description>
&lt;p&gt;&lt;a href='http://www.codeplex.com/site/users/view/andytsui'&gt;andytsui&lt;/a&gt; has uploaded a patch.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Description:&lt;/b&gt;&lt;br /&gt;This is my attempt to make Foolproof MVC3 unobtrusive script supported. &lt;br /&gt;This include&amp;#58; &lt;br /&gt;1. Change all the client validation parameter names to lower case. &lt;br /&gt;2. Client Jquery Script based to add support to work with the jquery.validate.unobtrusive.js &lt;/p&gt;</description><author>andytsui</author><pubDate>Tue, 14 Dec 2010 00:25:32 GMT</pubDate><guid isPermaLink="false">Patch Uploaded: #7729 20101214122532A</guid></item><item><title>Source code checked in, #62493</title><link>http://foolproof.codeplex.com/SourceControl/changeset/changes/62493</link><description>It seems that Comparer&amp;#60;object&amp;#62;.Default.Compare&amp;#40;value, dependentValue&amp;#41; returns difference of the two values when dealing with Int16 instead of simply a 1, -1 or 0. This affected GreaterThan, LessThan, GreaterThanOrEqualTo and LessThanOrEqualTo. Fixed and unit tested. </description><author>nickriggs</author><pubDate>Wed, 20 Oct 2010 14:27:05 GMT</pubDate><guid isPermaLink="false">Source code checked in, #62493 20101020022705P</guid></item><item><title>Source code checked in, #61253</title><link>http://foolproof.codeplex.com/SourceControl/changeset/changes/61253</link><description>Updated the client script libraries to address a problem with using RequireIfFalse&amp;#40;&amp;#41; against check boxes. </description><author>nickriggs</author><pubDate>Mon, 20 Sep 2010 17:07:55 GMT</pubDate><guid isPermaLink="false">Source code checked in, #61253 20100920050755P</guid></item><item><title>Source code checked in, #57274</title><link>http://foolproof.codeplex.com/SourceControl/changeset/changes/57274</link><description>Checked in by server upgrade</description><author>_TFSSERVICE</author><pubDate>Wed, 28 Jul 2010 22:13:23 GMT</pubDate><guid isPermaLink="false">Source code checked in, #57274 20100728101323P</guid></item><item><title>Source code checked in, #48031</title><link>http://foolproof.codeplex.com/SourceControl/changeset/changes/48031</link><description></description><author>nickriggs</author><pubDate>Sun, 02 May 2010 15:51:49 GMT</pubDate><guid isPermaLink="false">Source code checked in, #48031 20100502035149P</guid></item><item><title>Source code checked in, #48029</title><link>http://foolproof.codeplex.com/SourceControl/changeset/changes/48029</link><description></description><author>nickriggs</author><pubDate>Sun, 02 May 2010 15:28:33 GMT</pubDate><guid isPermaLink="false">Source code checked in, #48029 20100502032833P</guid></item></channel></rss>