X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Felements%2Fselect-country.html;h=c98147907e70f1b2ecb84e0a72ecb39bbd43a638;hp=e5656dc0c0ce4ab256487e2f580a1ce01c922ab3;hb=11bbf29de447fe39e9d7155fe280a0df70fa8c3c;hpb=0fb307c305e4bc2c9c27dc25a3308beae3a4d33c diff --git a/httemplate/elements/select-country.html b/httemplate/elements/select-country.html index e5656dc0c..c98147907 100644 --- a/httemplate/elements/select-country.html +++ b/httemplate/elements/select-country.html @@ -2,7 +2,7 @@ Example: - include( '/elements/select-country.html', + <& /elements/select-country.html, #recommended country => $current_country, @@ -14,9 +14,15 @@ Example: empty_label => 'all', #label for empty option disable_stateupdate => 0, #bool - disabled update of the select-state.html style => [ 'attribute:value', 'another:value' ], - ); + + state_disable_empty => 1, #defaults to 1, disable the state empty option + state_empty_label => 'all', #label for state empty option + &> +% #maybe this makes more sense in select-state.html? +% # (county update is in select-county... and we wouldn't have to pass "state_" +% # options) % unless ( $opt{'disable_stateupdate'} ) { <% include('/elements/xmlhttp.html', @@ -34,6 +40,8 @@ Example: } function <% $pre %>country_changed(what, callback) { + + what.form.<% $pre %>state.disabled = 'disabled'; country = what.options[what.selectedIndex].value; @@ -45,12 +53,18 @@ Example: // add the new states var statesArray = eval('(' + states + ')' ); +% unless ( $opt{'disable_empty'} ) { + statesArray.unshift('', ''); +% } + for ( var s = 0; s < statesArray.length; s=s+2 ) { var stateLabel = statesArray[s+1]; if ( stateLabel == "" ) - stateLabel = '(n/a)'; + stateLabel = <% $opt{state_empty_label} || '(n/a)' |js_string %>; opt(what.form.<% $pre %>state, statesArray[s], stateLabel); } + + what.form.<% $pre %>state.disabled = ''; //run the callback if ( callback != null ) { @@ -84,7 +98,7 @@ Example: