X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Felements%2Fselect-phonenum.html;h=18abe3dea29068f44cd07c874cc2bb71fd970aa8;hb=a72a10f754f7465121d6137bb3dcee0a21ea6443;hp=b98d140e4ca74cf064ca47c7643d765e57348a5a;hpb=40a7b3dc653e099f7bd0bd762b649b04c4432db2;p=freeside.git diff --git a/httemplate/elements/select-phonenum.html b/httemplate/elements/select-phonenum.html index b98d140e4..18abe3dea 100644 --- a/httemplate/elements/select-phonenum.html +++ b/httemplate/elements/select-phonenum.html @@ -12,7 +12,7 @@ what.options[length] = optionName; } - function <% $opt{'prefix'} %>exchange_changed(what, callback) { + function <% $opt{'prefix'} %><% $previous %>_changed(what, callback) { what.form.<% $opt{'prefix'} %>phonenum.disabled = 'disabled'; what.form.<% $opt{'prefix'} %>phonenum.style.display = 'none'; @@ -21,7 +21,7 @@ var phonenumerror = document.getElementById('<% $opt{'prefix'} %>phonenumerror'); phonenumerror.style.display = 'none'; - exchange = what.options[what.selectedIndex].value; + var thing = "<% $previous eq 'region' ? '_REGION ' : '' %>" + what.options[what.selectedIndex].value; function <% $opt{'prefix'} %>update_phonenums(phonenums) { @@ -30,7 +30,9 @@ what.form.<% $opt{'prefix'} %>phonenum.options[i] = null; % if ($opt{empty}) { - opt(what.form.<% $opt{'prefix'} %>phonenum, '', '<% $opt{empty} %>'); + if ( what.form.<% $opt{'prefix'} %>phonenum.type != 'select-multiple' ){ + opt(what.form.<% $opt{'prefix'} %>phonenum, '', '<% $opt{empty} %>'); + } % } // add the new phonenums @@ -58,21 +60,84 @@ //run the callback if ( callback != null ) callback(); + + var phonenum_sel = what.form.<% $opt{'prefix'} %>phonenum; + var bulkdid = document.getElementById('bulkdid'); + if ( bulkdid != null ) { + var numCheckboxes = Math.min(phonenum_sel.options.length-1,<% $opt{'bulknum'} %>); + var i; + for(i = 0; i < numCheckboxes; i++){ + document.getElementById('bulkdid_'+i).style.display = 'block'; + document.getElementById('checkbox_bulkdid_'+i).checked = false; + var tn = phonenum_sel.options[i+1].value; + document.getElementById('checkbox_bulkdid_'+i).value = tn; + document.getElementById('label_bulkdid_'+i).innerHTML = tn; + } + for(i = numCheckboxes; i < <% $opt{'bulknum'} %>; i++){ + document.getElementById('bulkdid_'+i).style.display = 'none'; + document.getElementById('checkbox_bulkdid_'+i).value = ''; + document.getElementById('checkbox_bulkdid_'+i).checked = false; + document.getElementById('label_bulkdid_'+i).innerHTML = ''; + } + } + } // go get the new phonenums - <% $opt{'prefix'} %>get_phonenums( exchange, <% $opt{'svcpart'} %>, <% $opt{'prefix'} %>update_phonenums ); + <% $opt{'prefix'} %>get_phonenums( thing, <% $opt{'svcpart'} %>, <% $opt{'prefix'} %>update_phonenums ); } +% if ( $opt{'tollfree'} ) { + function <% $opt{'prefix'} %>update_phonenums(phonenums) { + // lame hack so I can copy the code from above + what = document.getElementById('<% $opt{prefix} %>phonenum'); + + // blank the current phonenum + for ( var i = what.form.<% $opt{'prefix'} %>phonenum.length; i >= 0; i-- ) + what.form.<% $opt{'prefix'} %>phonenum.options[i] = null; + +% if ($opt{empty}) { + opt(what.form.<% $opt{'prefix'} %>phonenum, '', '<% $opt{empty} %>'); +% } + + // add the new phonenums + var phonenumArray = eval('(' + phonenums + ')' ); + for ( var s = 0; s < phonenumArray.length; s++ ) { + var phonenumLabel = phonenumArray[s]; + if ( phonenumLabel == "" ) + phonenumLabel = '(n/a)'; + opt(what.form.<% $opt{'prefix'} %>phonenum, phonenumArray[s], phonenumLabel); + } + + what.form.<% $opt{'prefix'} %>phonenum.disabled = ''; + + if ( phonenumArray.length >= 1 ) { + what.form.<% $opt{'prefix'} %>phonenum.disabled = ''; + what.form.<% $opt{'prefix'} %>phonenum.style.display = ''; + } + + } + <% $opt{'prefix'} %>get_phonenums( 'tollfree', <% $opt{'svcpart'} %>, <% $opt{'prefix'} %>update_phonenums ); +% } + +% unless ( $opt{'tollfree'} ) { - - - + ID = "<% $opt{'prefix'} %>phonenum" + NAME = "<% $opt{'prefix'} %>phonenum" + <% $opt{'disabled'} %> +%# notonChange="<% $opt{'prefix'} %>phonenum_changed(this); <% $opt{'onchange'} %>" +> +% unless ( $opt{multiple} ) { + +% } <%init> @@ -81,4 +146,6 @@ my %opt = @_; $opt{disabled} = 'disabled' unless exists $opt{disabled}; +my $previous = $opt{'region'} ? 'region' : 'exchange'; +