diff options
Diffstat (limited to 'httemplate/pref/pref.html')
-rw-r--r-- | httemplate/pref/pref.html | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/httemplate/pref/pref.html b/httemplate/pref/pref.html new file mode 100644 index 000000000..de5bd8270 --- /dev/null +++ b/httemplate/pref/pref.html @@ -0,0 +1,102 @@ +<% include('/elements/header.html', 'Preferences for '. getotaker ) %> + +<FORM METHOD="POST" NAME="pref_form" ACTION="pref-process.html"> + +<% include('/elements/error.html') %> + + +Change password (leave blank for no change) +<% ntable("#cccccc",2) %> + + <TR> + <TH ALIGN="right">Current password: </TH> + <TD><INPUT TYPE="password" NAME="_password"></TD> + </TR> + + <TR> + <TH ALIGN="right">New password: </TH> + <TD><INPUT TYPE="password" NAME="new_password"></TD> + </TR> + + <TR> + <TH ALIGN="right">Re-enter new password: </TH> + <TD><INPUT TYPE="password" NAME="new_password2"></TD> + </TR> + +</TABLE> +<BR> + + +Interface +<% ntable("#cccccc",2) %> + + <TR> + <TH>Menu location: </TH> + <TD> + <INPUT TYPE="radio" NAME="menu_position" VALUE="left" onClick="document.images['menu_example'].src='../images/menu-left-example.png';" <% $menu_position eq 'left' ? ' CHECKED' : ''%>> Left<BR> + <INPUT TYPE="radio" NAME="menu_position" VALUE="top"onClick="document.images['menu_example'].src='../images/menu-top-example.png';" <% $menu_position eq 'top' ? ' CHECKED' : ''%>> Top <BR> + </TD> + <TD><IMG NAME="menu_example" SRC="../images/menu-<% $menu_position %>-example.png"></TD> + </TR> + +</TABLE> +<BR> + + +Email Address +<% ntable("#cccccc",2) %> + + <TR> + <TH>Email Address(es) (comma separated) </TH> + <TD> + <TD><INPUT TYPE="text" NAME="email_address" VALUE="<% $email_address %>"> + </TD> + </TR> + +</TABLE> +<BR> + + +Vonage integration (see <a href="https://secure.click2callu.com/">Click2Call</a>) +<% ntable("#cccccc",2) %> + + <TR> + <TH ALIGN="right">Vonage phone number</TH> + <TD><INPUT TYPE="text" NAME="vonage-fromnumber" VALUE="<% $FS::CurrentUser::CurrentUser->option('vonage-fromnumber') %>"></TD> + </TR> + + <TR> + <TH ALIGN="right">Vonage username</TH> + <TD><INPUT TYPE="text" NAME="vonage-username" VALUE="<% $FS::CurrentUser::CurrentUser->option('vonage-username') %>"></TD> + </TR> + + <TR> + <TH ALIGN="right">Vonage password</TH> + <TD><INPUT TYPE="password" NAME="vonage-password" VALUE="<% $FS::CurrentUser::CurrentUser->option('vonage-password') %>"></TD> + </TR> + +</TABLE> +<BR> + + +% foreach my $prop (qw( height width availHeight availWidth colorDepth )) { + <INPUT TYPE="hidden" NAME="<% $prop %>" VALUE=""> + <SCRIPT TYPE="text/javascript"> + document.pref_form.<% $prop %>.value = screen.<% $prop %>; + </script> +% } + +<INPUT TYPE="submit" VALUE="Update preferences"> + +<% include('/elements/footer.html') %> +<%init> + +# XSS via your own preferences? seems unlikely, but nice try anyway... +( $FS::CurrentUser::CurrentUser->option('menu_position') || 'left' ) + =~ /^(\w+)$/ or die "illegal menu_position"; +my $menu_position = $1; +( $FS::CurrentUser::CurrentUser->option('email_address') ) + =~ /^([,\w\@.]*)$/ or die "illegal email_address"; #too late +my $email_address = $1; + +</%init> |