/*
* @author Mike Taylor
* @copyright Copyright (c) 2009 Mike Taylor
* @license http://www.opensource.org/licenses/mit-license.php
* @version 0.1
*
* Checks the current browser for html5 input attribute support, with Modernizr's help.
*/
var _MT=_MT||{};_MT.AttrSupport=function(){var j=true,r=false,g=g;var t="#ua";var c=document.getElementById("text"),k=document.getElementById("url"),l=document.getElementById("tel"),u=document.getElementById("search"),d=document.getElementById("email"),e=document.getElementById("password"),f=document.getElementById("datetime"),p=document.getElementById("date"),n=document.getElementById("month"),i=document.getElementById("week"),w=document.getElementById("time"),v=document.getElementById("datetime-local"),m=document.getElementById("number"),b=document.getElementById("range"),h=document.getElementById("color"),s=document.getElementById("checkbox"),a=document.getElementById("radio"),o=document.getElementById("file");var q={init:function(){$(t).text(navigator.userAgent);q.testSupport();q.colorResults()},testSupport:function(){q.testText();q.testSearch();q.testUrl();q.testTel();q.testEmail();q.testPassword();q.testDateTime();q.testDate();q.testMonth();q.testWeek();q.testTime();q.testDateTimeLocal();q.testNumber();q.testRange();q.testColor();q.testCheckBox();q.testRadioButton();q.testFile()},testText:function(){$("#t_placeholder").text(q.attrTests.testPlaceholder(c));$("#t_autocomplete").text(q.attrTests.testAutocomplete(c));$("#t_autofocus").text(q.attrTests.testAutofocus(c));$("#t_list").text(q.attrTests.testList(c));$("#t_maxlength").text(q.attrTests.testMaxlength(c));$("#t_pattern").text(q.attrTests.testPattern(c));$("#t_readonly").text(q.attrTests.testReadOnly(c));$("#t_required").text(q.attrTests.testRequired(c));$("#t_size").text(q.attrTests.testSize(c))},testSearch:function(){if(Modernizr.inputtypes.search){$("#s_placeholder").text(q.attrTests.testPlaceholder(u));$("#s_autocomplete").text(q.attrTests.testAutocomplete(u));$("#s_autofocus").text(q.attrTests.testAutofocus(u));$("#s_list").text(q.attrTests.testList(u));$("#s_maxlength").text(q.attrTests.testMaxlength(u));$("#s_pattern").text(q.attrTests.testPattern(u));$("#s_readonly").text(q.attrTests.testReadOnly(u));$("#s_required").text(q.attrTests.testRequired(u));$("#s_size").text(q.attrTests.testSize(u))}else{$("#search-row th").addClass("strike red");$("#search-row td").text(":(")}},testUrl:function(){if(Modernizr.inputtypes.url){$("#u_placeholder").text(q.attrTests.testPlaceholder(k));$("#u_autocomplete").text(q.attrTests.testAutocomplete(k));$("#u_autofocus").text(q.attrTests.testAutofocus(k));$("#u_list").text(q.attrTests.testList(k));$("#u_maxlength").text(q.attrTests.testMaxlength(k));$("#u_pattern").text(q.attrTests.testPattern(k));$("#u_readonly").text(q.attrTests.testReadOnly(k));$("#u_required").text(q.attrTests.testRequired(k));$("#u_size").text(q.attrTests.testSize(k))}else{$("#url-row th").addClass("strike red");$("#url-row td").text(":(")}},testTel:function(){if(Modernizr.inputtypes.tel){$("#te_placeholder").text(q.attrTests.testPlaceholder(l));$("#te_autocomplete").text(q.attrTests.testAutocomplete(l));$("#te_autofocus").text(q.attrTests.testAutofocus(l));$("#te_list").text(q.attrTests.testList(l));$("#te_maxlength").text(q.attrTests.testMaxlength(l));$("#te_pattern").text(q.attrTests.testPattern(l));$("#te_readonly").text(q.attrTests.testReadOnly(l));$("#te_required").text(q.attrTests.testRequired(l));$("#te_size").text(q.attrTests.testSize(l))}else{$("#tel-row th").addClass("strike red");$("#tel-row td").text(":(")}},testEmail:function(){if(Modernizr.inputtypes.email){$("#e_placeholder").text(q.attrTests.testPlaceholder(d));$("#e_autocomplete").text(q.attrTests.testAutocomplete(d));$("#e_autofocus").text(q.attrTests.testAutofocus(d));$("#e_list").text(q.attrTests.testList(d));$("#e_maxlength").text(q.attrTests.testMaxlength(d));$("#e_multiple").text(q.attrTests.testMultiple(d));$("#e_pattern").text(q.attrTests.testPattern(d));$("#e_readonly").text(q.attrTests.testReadOnly(d));$("#e_required").text(q.attrTests.testRequired(d));$("#e_size").text(q.attrTests.testSize(d))}else{$("#email-row th").addClass("strike red");$("#email-row td").text(":(")}},testPassword:function(){$("#p_autocomplete").text(q.attrTests.testAutocomplete(e));$("#p_autofocus").text(q.attrTests.testAutofocus(e));$("#p_maxlength").text(q.attrTests.testMaxlength(e));$("#p_pattern").text(q.attrTests.testPattern(e));$("#p_placeholder").text(q.attrTests.testPlaceholder(e));$("#p_readonly").text(q.attrTests.testReadOnly(e));$("#p_required").text(q.attrTests.testRequired(e));$("#p_size").text(q.attrTests.testSize(e))},testDateTime:function(){if(Modernizr.inputtypes.datetime){$("#dt_autocomplete").text(q.attrTests.testAutocomplete(f));$("#dt_autofocus").text(q.attrTests.testAutofocus(f));$("#dt_list").text(q.attrTests.testList(f));$("#dt_max").text(q.attrTests.testMax(f));$("#dt_min").text(q.attrTests.testMin(f));$("#dt_readonly").text(q.attrTests.testReadOnly(f));$("#dt_required").text(q.attrTests.testRequired(f));$("#dt_step").text(q.attrTests.testStep(f))}else{$("#datetime-row th").addClass("strike red");$("#datetime-row td").text(":(")}},testDate:function(){if(Modernizr.inputtypes.date){$("#d_autocomplete").text(q.attrTests.testAutocomplete(p));$("#d_autofocus").text(q.attrTests.testAutofocus(p));$("#d_list").text(q.attrTests.testList(p));$("#d_max").text(q.attrTests.testMax(p));$("#d_min").text(q.attrTests.testMin(p));$("#d_readonly").text(q.attrTests.testReadOnly(p));$("#d_required").text(q.attrTests.testRequired(p));$("#d_step").text(q.attrTests.testStep(p))}else{$("#date-row th").addClass("strike red");$("#date-row td").text(":(")}},testMonth:function(){if(Modernizr.inputtypes.month){$("#m_autocomplete").text(q.attrTests.testAutocomplete(n));$("#m_autofocus").text(q.attrTests.testAutofocus(n));$("#m_list").text(q.attrTests.testList(n));$("#m_max").text(q.attrTests.testMax(n));$("#m_min").text(q.attrTests.testMin(n));$("#m_readonly").text(q.attrTests.testReadOnly(n));$("#m_required").text(q.attrTests.testRequired(n));$("#m_step").text(q.attrTests.testStep(n))}else{$("#month-row th").addClass("strike red");$("#month-row td").text(":(")}},testWeek:function(){if(Modernizr.inputtypes.week){$("#w_autocomplete").text(q.attrTests.testAutocomplete(i));$("#w_autofocus").text(q.attrTests.testAutofocus(i));$("#w_list").text(q.attrTests.testList(i));$("#w_max").text(q.attrTests.testMax(i));$("#w_min").text(q.attrTests.testMin(i));$("#w_readonly").text(q.attrTests.testReadOnly(i));$("#w_required").text(q.attrTests.testRequired(i));$("#w_step").text(q.attrTests.testStep(i))}else{$("#week-row th").addClass("strike red");$("#week-row td").text(":(")}},testTime:function(){if(Modernizr.inputtypes.time){$("#ti_autocomplete").text(q.attrTests.testAutocomplete(w));$("#ti_autofocus").text(q.attrTests.testAutofocus(w));$("#ti_list").text(q.attrTests.testList(w));$("#ti_max").text(q.attrTests.testMax(w));$("#ti_min").text(q.attrTests.testMin(w));$("#ti_readonly").text(q.attrTests.testReadOnly(w));$("#ti_required").text(q.attrTests.testRequired(w));$("#ti_step").text(q.attrTests.testStep(w))}else{$("#time-row th").addClass("strike red");$("#time-row td").text(":(")}},testDateTimeLocal:function(){if(Modernizr.inputtypes["datetime-local"]){$("#dtl_autocomplete").text(q.attrTests.testAutocomplete(v));$("#dtl_autofocus").text(q.attrTests.testAutofocus(v));$("#dtl_list").text(q.attrTests.testList(v));$("#dtl_max").text(q.attrTests.testMax(v));$("#dtl_min").text(q.attrTests.testMin(v));$("#dtl_readonly").text(q.attrTests.testReadOnly(v));$("#dtl_required").text(q.attrTests.testRequired(v));$("#dtl_step").text(q.attrTests.testStep(v))}else{$("#datetimelocal-row th").addClass("strike red");$("#datetimelocal-row td").text(":(")}},testNumber:function(){if(Modernizr.inputtypes.number){$("#n_autocomplete").text(q.attrTests.testAutocomplete(m));$("#n_autofocus").text(q.attrTests.testAutofocus(m));$("#n_list").text(q.attrTests.testList(m));$("#n_max").text(q.attrTests.testMax(m));$("#n_min").text(q.attrTests.testMin(m));$("#n_readonly").text(q.attrTests.testReadOnly(m));$("#n_required").text(q.attrTests.testRequired(m));$("#n_step").text(q.attrTests.testStep(m))}else{$("#number-row th").addClass("strike red");$("#number-row td").text(":(")}},testRange:function(){if(Modernizr.inputtypes.range){$("#r_autocomplete").text(q.attrTests.testAutocomplete(b));$("#r_autofocus").text(q.attrTests.testAutofocus(b));$("#r_list").text(q.attrTests.testList(b));$("#r_max").text(q.attrTests.testMax(b));$("#r_min").text(q.attrTests.testMin(b));$("#r_step").text(q.attrTests.testStep(b))}else{$("#range-row th").addClass("strike red");$("#range-row td").text(":(")}},testColor:function(){if(Modernizr.inputtypes.color){$("#c_autocomplete").text(q.attrTests.testAutocomplete(h));$("#c_autofocus").text(q.attrTests.testAutofocus(h));$("#c_list").text(q.attrTests.testList(h));$("#c_max").text(q.attrTests.testMax(h));$("#c_min").text(q.attrTests.testMin(h));$("#c_step").text(q.attrTests.testStep(h))}else{$("#color-row th").addClass("strike red");$("#color-row td").text(":(")}},testCheckBox:function(){$("#cb_autofocus").text(q.attrTests.testAutofocus(s));$("#cb_checked").text(q.attrTests.testChecked(s));$("#cb_required").text(q.attrTests.testRequired(s))},testRadioButton:function(){$("#rb_autofocus").text(q.attrTests.testAutofocus(a));$("#rb_checked").text(q.attrTests.testChecked(a));$("#rb_required").text(q.attrTests.testRequired(a))},testFile:function(){$("#f_accept").text(q.attrTests.testAccept(o));$("#f_autofocus").text(q.attrTests.testAutofocus(o));$("#f_multiple").text(q.attrTests.testMultiple(o));$("#f_required").text(q.attrTests.testRequired(o))},attrTests:{testAccept:function(y){return !!(y.accept==="")&&!!(y.accept!=="undefined")},testAutocomplete:function(y){return !!(y.autocomplete==="")&&!!(y.autocomplete!=="undefined")},testAutofocus:function(y){return !!(y.autofocus===false)&&!!(y.autofocus!=="undefined")},testChecked:function(y){return !!(y.checked===false)&&!!(y.checked!=="undefined")},testList:function(y){return !!(typeof y.list==="object")&&!!(y.list!=="undefined")},testMax:function(y){if(typeof y.validity==="object"){return !!(y.validity.rangeOverflow===false)}else{return false}},testMaxlength:function(y){return(!!(y.maxLength===-1)||!!(y.maxLength===524288))&&!!(y.maxLength!=="undefined")},testMin:function(y){if(typeof y.validity==="object"){return !!(y.validity.rangeUnderflow===false)}else{return false}},testMultiple:function(y){return(!!(y.multiple===false)&&!!(y.multiple!=="undefined"))},testPattern:function(y){return !!(y.pattern==="")&&!!(y.pattern!=="undefined")},testPlaceholder:function(y){return !!(y.placeholder==="")&&!!(y.placeholder!=="undefined")},testReadOnly:function(y){return !!(y.readOnly===false)&&!!(y.readOnly!=="undefined")},testRequired:function(y){return !!(y.required===false)&&!!(y.required!=="undefined")},testSize:function(y){return(!!(y.size===0)||!!(y.size===20))&&!!(c.size!=="undefined")},testStep:function(y){if(typeof y.validity==="object"){return !!(y.validity.stepMismatch===false)}else{return false}}},setYesGreen:function(){$('td:contains("true")').addClass("supported")},setNoRed:function(){$('td:contains("false")').addClass("not-supported")},colorResults:function(){q.setYesGreen();q.setNoRed()}};q.init();return q};(function(b){var a=function(){x=new _MT.AttrSupport()};b(document).ready(a)})(jQuery);

