From b9f9a5dc444a66ca138073a0e5229d85569e51b4 Mon Sep 17 00:00:00 2001 From: ivan Date: Sat, 25 Mar 2006 02:23:26 +0000 Subject: successfully correct the spelling of sucessful --- fs_selfservice/FS-SelfService/cgi/agent.cgi | 8 ++++---- fs_selfservice/FS-SelfService/cgi/payment_results.html | 2 +- fs_selfservice/FS-SelfService/cgi/process_svc_acct.html | 2 +- fs_selfservice/FS-SelfService/cgi/process_svc_external.html | 2 +- fs_selfservice/FS-SelfService/cgi/recharge_results.html | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) (limited to 'fs_selfservice') diff --git a/fs_selfservice/FS-SelfService/cgi/agent.cgi b/fs_selfservice/FS-SelfService/cgi/agent.cgi index 695d20e4c..b51938d5c 100644 --- a/fs_selfservice/FS-SelfService/cgi/agent.cgi +++ b/fs_selfservice/FS-SelfService/cgi/agent.cgi @@ -193,7 +193,7 @@ sub process_signup { } else { $action = 'agent_main'; my $agent_info = agent_info( 'session_id' => $session_id ); - $agent_info->{'message'} = 'Signup sucessful'; + $agent_info->{'message'} = 'Signup successful'; $agent_info; } @@ -324,7 +324,7 @@ sub process_svc_acct { $action = 'agent_provision'; return { %{agent_provision()}, - 'message' => $result->{'svc'}. ' setup sucessfully.', + 'message' => $result->{'svc'}. ' setup successfully.', }; } @@ -343,7 +343,7 @@ sub process_svc_external { %{agent_provision()}, 'message' => $result->{'error'} ? ''. $result->{'error'}. '' - : $result->{'svc'}. ' setup sucessfully'. + : $result->{'svc'}. ' setup successfully'. ': serial number '. sprintf('%010d', $result->{'id'}). '-'. $result->{'title'} }; @@ -403,7 +403,7 @@ sub process_order_pkg { #$cgi->delete( grep { $_ ne 'custnum' } $cgi->param ); return { %{view_customer()}, - 'message' => 'Package order sucessful.', + 'message' => 'Package order successful.', }; } diff --git a/fs_selfservice/FS-SelfService/cgi/payment_results.html b/fs_selfservice/FS-SelfService/cgi/payment_results.html index de6c54dae..9fe400faf 100644 --- a/fs_selfservice/FS-SelfService/cgi/payment_results.html +++ b/fs_selfservice/FS-SelfService/cgi/payment_results.html @@ -7,7 +7,7 @@ <%= if ( $error ) { $OUT .= qq!Error processing your payment: $error!; } else { - $OUT .= 'Your payment was processed sucessfully. Thank you.'; + $OUT .= 'Your payment was processed successfully. Thank you.'; } %>
diff --git a/fs_selfservice/FS-SelfService/cgi/process_svc_acct.html b/fs_selfservice/FS-SelfService/cgi/process_svc_acct.html index 200a80dc9..3b812919a 100644 --- a/fs_selfservice/FS-SelfService/cgi/process_svc_acct.html +++ b/fs_selfservice/FS-SelfService/cgi/process_svc_acct.html @@ -4,7 +4,7 @@ <%= include('myaccount_menu') %> -<%= $svc %> setup sucessfully. +<%= $svc %> setup successfully.
diff --git a/fs_selfservice/FS-SelfService/cgi/process_svc_external.html b/fs_selfservice/FS-SelfService/cgi/process_svc_external.html index 2328fa10f..19fec737f 100644 --- a/fs_selfservice/FS-SelfService/cgi/process_svc_external.html +++ b/fs_selfservice/FS-SelfService/cgi/process_svc_external.html @@ -4,7 +4,7 @@ <%= include('myaccount_menu') %> -<%= $svc %> setup sucessfully. +<%= $svc %> setup successfully.

Your serial number is <%= sprintf("%010d-$title", $id) %> diff --git a/fs_selfservice/FS-SelfService/cgi/recharge_results.html b/fs_selfservice/FS-SelfService/cgi/recharge_results.html index ec3ea2c7a..b1eb7cb7a 100644 --- a/fs_selfservice/FS-SelfService/cgi/recharge_results.html +++ b/fs_selfservice/FS-SelfService/cgi/recharge_results.html @@ -7,7 +7,7 @@ <%= if ( $error ) { $OUT .= qq!Error processing your prepaid card: $error!; } else { - $OUT .= 'Prepaid card recharge sucessful!

'; + $OUT .= 'Prepaid card recharge successful!

'; $OUT .= '$'. sprintf('%.2f', $amount). ' added to your account.

' if $amount; -- cgit v1.2.1 From 580330233cbf32c58d9f29dc391bd2ebd83e16d5 Mon Sep 17 00:00:00 2001 From: ivan Date: Sun, 16 Jul 2006 00:55:06 +0000 Subject: odds and ends --- fs_selfservice/FS-SelfService/freeside-selfservice-clientd | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'fs_selfservice') diff --git a/fs_selfservice/FS-SelfService/freeside-selfservice-clientd b/fs_selfservice/FS-SelfService/freeside-selfservice-clientd index ededfa6e9..bdc8e1547 100644 --- a/fs_selfservice/FS-SelfService/freeside-selfservice-clientd +++ b/fs_selfservice/FS-SelfService/freeside-selfservice-clientd @@ -57,8 +57,9 @@ if ( -e $pid_file ) { open(PIDFILE,"<$pid_file"); my $old_pid = ; close PIDFILE; - $old_pid =~ /^(\d+)$/; - kill 'TERM', $1; + if ( $old_pid =~ /^(\d+)$/ ) { + kill 'TERM', $1; + } } open(PIDFILE,">$pid_file"); print PIDFILE "$$\n"; -- cgit v1.2.1 From 5d133672add54fb6bdd6690cdd9ca386d7a44a10 Mon Sep 17 00:00:00 2001 From: ivan Date: Wed, 9 Aug 2006 03:45:00 +0000 Subject: please bleeding-edge debian perl, would you put it in /usr/local/sbin? thanks. --- fs_selfservice/FS-SelfService/Makefile.PL | 1 + 1 file changed, 1 insertion(+) (limited to 'fs_selfservice') diff --git a/fs_selfservice/FS-SelfService/Makefile.PL b/fs_selfservice/FS-SelfService/Makefile.PL index 0b7fc4606..85c92b4fb 100644 --- a/fs_selfservice/FS-SelfService/Makefile.PL +++ b/fs_selfservice/FS-SelfService/Makefile.PL @@ -9,6 +9,7 @@ WriteMakefile( ], 'INSTALLSCRIPT' => '/usr/local/sbin', 'INSTALLSITEBIN' => '/usr/local/sbin', + 'INSTALLSITESCRIPT' => '/usr/local/sbin', #recent deb users this... 'PERM_RWX' => '750', 'PREREQ_PM' => { 'Storable' => 2.09, -- cgit v1.2.1 From b58e61ac7df612f606c3e68371265e790e0be585 Mon Sep 17 00:00:00 2001 From: ivan Date: Wed, 9 Aug 2006 06:34:26 +0000 Subject: self-service interface: move from text to html invoices --- fs_selfservice/FS-SelfService/SelfService.pm | 1 + fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi | 18 ++++++++++++++++++ fs_selfservice/FS-SelfService/cgi/view_invoice.html | 4 +--- 3 files changed, 20 insertions(+), 3 deletions(-) create mode 100644 fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi (limited to 'fs_selfservice') diff --git a/fs_selfservice/FS-SelfService/SelfService.pm b/fs_selfservice/FS-SelfService/SelfService.pm index bfce1287b..16ca48ec8 100644 --- a/fs_selfservice/FS-SelfService/SelfService.pm +++ b/fs_selfservice/FS-SelfService/SelfService.pm @@ -27,6 +27,7 @@ $socket .= '.'.$tag if defined $tag && length($tag); 'customer_info' => 'MyAccount/customer_info', 'edit_info' => 'MyAccount/edit_info', #add to ss cgi! 'invoice' => 'MyAccount/invoice', + 'invoice_logo' => 'MyAccount/invoice_logo', 'list_invoices' => 'MyAccount/list_invoices', #? 'cancel' => 'MyAccount/cancel', #add to ss cgi! 'payment_info' => 'MyAccount/payment_info', diff --git a/fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi b/fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi new file mode 100644 index 000000000..bf82a87e8 --- /dev/null +++ b/fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi @@ -0,0 +1,18 @@ +#!/usr/bin/perl -Tw + +use strict; +use CGI; +use FS::SelfService qw( invoice_logo ); + +$cgi = new CGI; + +my($query) = $cgi->keywords; +$query =~ /^([^\.\/]*)$/ or '' =~ /^()$/; +my $templatename = $1; +invoice_logo($templatename); + +print $cgi->header( '-type' => $content_type, + '-expires' => 'now', + ). + $logo; + diff --git a/fs_selfservice/FS-SelfService/cgi/view_invoice.html b/fs_selfservice/FS-SelfService/cgi/view_invoice.html index 72d061980..ad2f4f419 100644 --- a/fs_selfservice/FS-SelfService/cgi/view_invoice.html +++ b/fs_selfservice/FS-SelfService/cgi/view_invoice.html @@ -4,9 +4,7 @@ <%= include('myaccount_menu') %> -
-<%= $invoice_text %>
-
+<%= $invoice_html %>
-- cgit v1.2.1 From cea76425e837641044923ac3622a2d0a35e4cfb2 Mon Sep 17 00:00:00 2001 From: ivan Date: Wed, 9 Aug 2006 07:03:43 +0000 Subject: this is not my beautiful magic template! (water flowing underground) --- fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'fs_selfservice') diff --git a/fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi b/fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi index bf82a87e8..e353b4489 100644 --- a/fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi +++ b/fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi @@ -4,15 +4,15 @@ use strict; use CGI; use FS::SelfService qw( invoice_logo ); -$cgi = new CGI; +my $cgi = new CGI; my($query) = $cgi->keywords; $query =~ /^([^\.\/]*)$/ or '' =~ /^()$/; my $templatename = $1; -invoice_logo($templatename); +my $hashref = invoice_logo($templatename); -print $cgi->header( '-type' => $content_type, +print $cgi->header( '-type' => $hashref->{'content_type'}, '-expires' => 'now', ). - $logo; + $hashref->{'logo'}; -- cgit v1.2.1 From 95f4195da730f6d40faee94aa7a3108b82823d8d Mon Sep 17 00:00:00 2001 From: ivan Date: Wed, 9 Aug 2006 07:46:09 +0000 Subject: and the days go by... --- fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'fs_selfservice') diff --git a/fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi b/fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi index e353b4489..cade712d1 100644 --- a/fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi +++ b/fs_selfservice/FS-SelfService/cgi/cust_bill-logo.cgi @@ -9,7 +9,7 @@ my $cgi = new CGI; my($query) = $cgi->keywords; $query =~ /^([^\.\/]*)$/ or '' =~ /^()$/; my $templatename = $1; -my $hashref = invoice_logo($templatename); +my $hashref = invoice_logo('templatename' => $templatename); print $cgi->header( '-type' => $hashref->{'content_type'}, '-expires' => 'now', -- cgit v1.2.1 From 97316d268e5751a1d08a0a37e5a0456f2ce4815c Mon Sep 17 00:00:00 2001 From: ivan Date: Wed, 9 Aug 2006 10:47:18 +0000 Subject: self-service interface: add proper password changer and prevent "Setup my services" provisioner from showing broken links for services not handled yet --- fs_selfservice/FS-SelfService/SelfService.pm | 5 +- .../FS-SelfService/cgi/change_password.html | 53 ++++++++++++++++++++++ .../FS-SelfService/cgi/myaccount_menu.html | 10 ++-- .../cgi/process_change_password.html | 13 ++++++ .../FS-SelfService/cgi/provision_list.html | 5 +- fs_selfservice/FS-SelfService/cgi/selfservice.cgi | 38 +++++++++++++++- 6 files changed, 116 insertions(+), 8 deletions(-) create mode 100644 fs_selfservice/FS-SelfService/cgi/change_password.html create mode 100644 fs_selfservice/FS-SelfService/cgi/process_change_password.html (limited to 'fs_selfservice') diff --git a/fs_selfservice/FS-SelfService/SelfService.pm b/fs_selfservice/FS-SelfService/SelfService.pm index 16ca48ec8..c3026fa13 100644 --- a/fs_selfservice/FS-SelfService/SelfService.pm +++ b/fs_selfservice/FS-SelfService/SelfService.pm @@ -33,7 +33,8 @@ $socket .= '.'.$tag if defined $tag && length($tag); 'payment_info' => 'MyAccount/payment_info', 'process_payment' => 'MyAccount/process_payment', 'process_prepay' => 'MyAccount/process_prepay', - 'list_pkgs' => 'MyAccount/list_pkgs', #add to ss cgi! + 'list_pkgs' => 'MyAccount/list_pkgs', #add to ss cgi (added?) + 'list_svcs' => 'MyAccount/list_svcs', #add to ss cgi (added?) 'order_pkg' => 'MyAccount/order_pkg', #add to ss cgi! 'cancel_pkg' => 'MyAccount/cancel_pkg', #add to ss cgi! 'charge' => 'MyAccount/charge', #? @@ -41,6 +42,7 @@ $socket .= '.'.$tag if defined $tag && length($tag); 'provision_acct' => 'MyAccount/provision_acct', 'provision_external' => 'MyAccount/provision_external', 'unprovision_svc' => 'MyAccount/unprovision_svc', + 'myaccount_passwd' => 'MyAccount/myaccount_passwd', 'signup_info' => 'Signup/signup_info', 'new_customer' => 'Signup/new_customer', 'agent_login' => 'Agent/agent_login', @@ -73,6 +75,7 @@ foreach my $autoload ( keys %autoload ) { if ( ref($_[0]) ) { $param = shift; } else { + #warn scalar(@_). ": ". join(" / ", @_); $param = { @_ }; } diff --git a/fs_selfservice/FS-SelfService/cgi/change_password.html b/fs_selfservice/FS-SelfService/cgi/change_password.html new file mode 100644 index 000000000..af7b45313 --- /dev/null +++ b/fs_selfservice/FS-SelfService/cgi/change_password.html @@ -0,0 +1,53 @@ +MyAccount +MyAccount

+<%= $url = "$selfurl?session=$session_id;action="; ''; %> +<%= include('myaccount_menu') %> + + +Change password

+ +<%= if ( $error ) { + $OUT .= qq!$error

!; +} ''; %> + +
+ + + + + + + + + + + + + + + + + + + + +
Change password for account: + +
New password:
Re-enter new password:
+
+ + + +
+ + +
+powered by freeside + diff --git a/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html b/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html index f2e5e998e..aa22e7c9b 100644 --- a/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html +++ b/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html @@ -35,9 +35,9 @@ push @menu, ( { title=>' ' }, { title=>'Change my information', size=>'+1', }, - { title=>'Change payment information*', url=>'change_bill', indent=>2 }, - { title=>'Change service address*', url=>'change_ship', indent=>2 }, - { title=>'Change password(s)*', url=>'hmmmFIXME', indent=>2 }, + { title=>'Change payment information*', url=>'change_bill', indent=>2 }, + { title=>'Change service address*', url=>'change_ship', indent=>2 }, + { title=>'Change password(s)', url=>'change_password', indent=>2 }, { title=>' ' }, @@ -82,8 +82,8 @@ foreach my $item ( @menu ) { %> +

* coming soon + -(tempFIXME) Change password(s)

-* coming soon diff --git a/fs_selfservice/FS-SelfService/cgi/process_change_password.html b/fs_selfservice/FS-SelfService/cgi/process_change_password.html new file mode 100644 index 000000000..4fdee79f3 --- /dev/null +++ b/fs_selfservice/FS-SelfService/cgi/process_change_password.html @@ -0,0 +1,13 @@ +MyAccount +MyAccount

+<%= $url = "$selfurl?session=$session_id;action="; ''; %> +<%= include('myaccount_menu') %> + + +Password changed for <%= $value %> <%= $label %>. + + +
+powered by freeside + + diff --git a/fs_selfservice/FS-SelfService/cgi/provision_list.html b/fs_selfservice/FS-SelfService/cgi/provision_list.html index 0f68dfe3c..cd587f072 100644 --- a/fs_selfservice/FS-SelfService/cgi/provision_list.html +++ b/fs_selfservice/FS-SelfService/cgi/provision_list.html @@ -75,7 +75,10 @@ function areyousure(href, message) { $OUT .= "$td COLSPAN=3 ALIGN=center>". qq!!. 'Setup '. $part_svc->{'svc'}. ' '. '('. $part_svc->{'num_avail'}. ' available)'. - ''; + '' + #self-service only supports these services so far + if grep { $part_svc->{'svcdb'} eq $_ } qw( svc_acct svc_external ); + $col = $col eq $col1 ? $col2 : $col1; } diff --git a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi index 034a684c6..4ab13090f 100644 --- a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi +++ b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi @@ -13,6 +13,7 @@ use FS::SelfService qw( login customer_info invoice list_pkgs part_svc_info provision_acct provision_external unprovision_svc + list_svcs myaccount_passwd ); $template_dir = '.'; @@ -62,7 +63,7 @@ $session_id = $cgi->param('session'); #order|pw_list XXX ??? $cgi->param('action') =~ - /^(myaccount|view_invoice|make_payment|payment_results|recharge_prepay|recharge_results|logout|change_bill|change_ship|provision|provision_svc|process_svc_acct|process_svc_external|delete_svc)$/ + /^(myaccount|view_invoice|make_payment|payment_results|recharge_prepay|recharge_results|logout|change_bill|change_ship|provision|provision_svc|process_svc_acct|process_svc_external|delete_svc|change_password|process_change_password)$/ or die "unknown action ". $cgi->param('action'); my $action = $1; @@ -257,6 +258,41 @@ sub delete_svc { ); } +sub change_password { + list_svcs( + 'session_id' => $session_id, + 'svcdb' => 'svc_acct', + ); +}; + +sub process_change_password { + + my $result = myaccount_passwd( + 'session_id' => $session_id, + map { $_ => $cgi->param($_) } qw( svcnum new_password new_password2 ) + ); + + if ( exists $result->{'error'} && $result->{'error'} ) { + + $action = 'change_password'; + return { + $cgi->Vars, + %{ list_svcs( 'session_id' => $session_id, + 'svcdb' => 'svc_acct', + ) + }, + #'svcnum' => $cgi->param('svcnum'), + 'error' => $result->{'error'} + }; + + } else { + + return $result; + + } + +} + #-- sub do_template { -- cgit v1.2.1 From 9f4696b5f2d5e414580eda21a7d7a5acb4a97160 Mon Sep 17 00:00:00 2001 From: ivan Date: Wed, 9 Aug 2006 21:46:32 +0000 Subject: take "coming soon" options off the menu, its been Soon for too long - they'll get here when they do --- fs_selfservice/FS-SelfService/cgi/myaccount_menu.html | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'fs_selfservice') diff --git a/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html b/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html index aa22e7c9b..6dacc3ef4 100644 --- a/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html +++ b/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html @@ -12,7 +12,7 @@ my @menu = ( { title=>' ' }, { title=>'Purchase', size=>'+1', }, - { title=>'Purchase additional package*', url=>'order', 'indent'=>2 }, +# { title=>'Purchase additional package*', url=>'order', 'indent'=>2 }, ); if ( 1 ) { #XXXFIXME "enable selfservice prepay features" flag or something, eventually per-pkg or something really fancy @@ -35,8 +35,8 @@ push @menu, ( { title=>' ' }, { title=>'Change my information', size=>'+1', }, - { title=>'Change payment information*', url=>'change_bill', indent=>2 }, - { title=>'Change service address*', url=>'change_ship', indent=>2 }, +# { title=>'Change payment information*', url=>'change_bill', indent=>2 }, +# { title=>'Change service address*', url=>'change_ship', indent=>2 }, { title=>'Change password(s)', url=>'change_password', indent=>2 }, { title=>' ' }, @@ -82,7 +82,9 @@ foreach my $item ( @menu ) { %> -

* coming soon + + +



-- cgit v1.2.1 From 0e8a3725a0843c6e38fd5c430d6f1bc4a67d1419 Mon Sep 17 00:00:00 2001 From: lawrence Date: Tue, 29 Aug 2006 17:50:06 +0000 Subject: Signup Enhancements --- fs_selfservice/FS-SelfService/cgi/signup.cgi | 6 +- fs_selfservice/FS-SelfService/cgi/signup.html | 122 ++++++++++++++++++++++---- 2 files changed, 108 insertions(+), 20 deletions(-) (limited to 'fs_selfservice') diff --git a/fs_selfservice/FS-SelfService/cgi/signup.cgi b/fs_selfservice/FS-SelfService/cgi/signup.cgi index d2ad0d64b..a09189270 100755 --- a/fs_selfservice/FS-SelfService/cgi/signup.cgi +++ b/fs_selfservice/FS-SelfService/cgi/signup.cgi @@ -1,7 +1,7 @@ #!/usr/bin/perl -T #!/usr/bin/perl -Tw # -# $Id: signup.cgi,v 1.2 2005-03-12 14:35:12 ivan Exp $ +# $Id: signup.cgi,v 1.3 2006-08-29 17:50:06 lawrence Exp $ use strict; use vars qw( @payby $cgi $init_data @@ -178,6 +178,10 @@ if ( ( defined($cgi->param('magic')) && $cgi->param('magic') eq 'process' ) or $error ||= $init_data->{msgcat}{not_a}. $cgi->param('CARD_type'); } + if ($init_data->{emailinvoiceonly} && (length $cgi->param('invoicing_list') < 1)) { + $error ||= $init_data->{msgcat}{illegal_or_empty_text}; + } + unless ( $error ) { my $rv = new_customer( { map { $_ => scalar($cgi->param($_)) } diff --git a/fs_selfservice/FS-SelfService/cgi/signup.html b/fs_selfservice/FS-SelfService/cgi/signup.html index 2ab07b37e..3e0f32749 100755 --- a/fs_selfservice/FS-SelfService/cgi/signup.html +++ b/fs_selfservice/FS-SelfService/cgi/signup.html @@ -19,6 +19,15 @@ + +<%= + $OUT = join("\n",map { my $method = $_ ; map { qq|| } qw / payinfo payinfo1 payinfo2 payname paycvv month year type / } @payby); +%> + +<%= + $OUT = join("\n", map { qq|| } qw / promo_code reg_code pkgpart username _password _password2 sec_phrase popnum / ); +%> + Where did you hear about our service? - Postal mail invoice + -Email invoice +<%= $OUT = ( $emailinvoiceonly ? q|*| : q|| ) %> Email invoice <%= scalar(@payby) > 1 ? 'Billing type' : '' %> @@ -126,7 +137,7 @@ Contact Information 'DCRD' => qq!Credit card
*$cardselect
*Exp !. expselect("DCRD"). qq!
*Name on card
!, 'CHEK' => qq!Electronic check
${r}Account number
${r}ABA/Routing code
${r}Bank name !, 'DCHK' => qq!Electronic check
${r}Account number
${r}ABA/Routing code
${r}Bank name !, - 'LECB' => qq!Phone bill billing
${r}Phone number !, + 'LECB' => qq!Phone bill billing
${r}Phone number !, 'BILL' => qq!Billing
P.O.
*Exp !. expselect("BILL", "12-2037"). qq!
*Attention
!, 'COMP' => qq!Complimentary
*Approved by
*Exp !. expselect("COMP"), 'PREPAY' => qq!Prepaid card
*!, @@ -155,26 +166,40 @@ Contact Information $paybychecked{$payby} .= qq!
CVV2 (help!; } } +use Tie::IxHash; +use HTML::Widgets::SelectLayers; + + my %payby_index = ( 'CARD' => qq/Credit Card/, + 'DCRD' => qq/Credit Card/, + 'CHEK' => qq/Check/, + 'DCHK' => qq/Check/, + 'LECB' => qq/Phone Bill Billing/, + 'BILL' => qq/Billing/, + 'COMP' => qq/Complimentary/, + 'PREPAY' => qq/Prepaid Card/, + ); + + +tie my %options, 'Tie::IxHash', (); + +foreach my $payby_option ( @payby ) { + $options{$payby_option} = $payby_index{$payby_option}; +} + +HTML::Widgets::SelectLayers->new( + options => \%options, + selected_layer => 'CARD', + form_name => 'dummy', + html_between => '', + form_action => 'dummy.cgi', + layer_callback => sub { my $layer = shift; return $paybychecked{$layer}; }, +)->html; - for (@payby) { - if ( scalar(@payby) == 1) { - $OUT .= ''. - qq!!. - "$paybychecked{$_}"; - } else { - $OUT .= qq! $paybychecked{$_}!; - } else { - $OUT .= qq!> $payby{$_}!; - } - } - } %> * required fields for each billing type -

First package +


First package @@ -233,4 +258,63 @@ ENDOUT %>


+
-- cgit v1.2.1 From 31e226a22c8b357966d6a8825e10022fb065e753 Mon Sep 17 00:00:00 2001 From: ivan Date: Thu, 31 Aug 2006 19:25:04 +0000 Subject: BEGONE $Id$ --- fs_selfservice/FS-SelfService/cgi/signup.cgi | 2 -- 1 file changed, 2 deletions(-) (limited to 'fs_selfservice') diff --git a/fs_selfservice/FS-SelfService/cgi/signup.cgi b/fs_selfservice/FS-SelfService/cgi/signup.cgi index a09189270..3e2f8fdc6 100755 --- a/fs_selfservice/FS-SelfService/cgi/signup.cgi +++ b/fs_selfservice/FS-SelfService/cgi/signup.cgi @@ -1,7 +1,5 @@ #!/usr/bin/perl -T #!/usr/bin/perl -Tw -# -# $Id: signup.cgi,v 1.3 2006-08-29 17:50:06 lawrence Exp $ use strict; use vars qw( @payby $cgi $init_data -- cgit v1.2.1 From 1720200cdbbd73919d3b25e221f3d47cdd12032d Mon Sep 17 00:00:00 2001 From: lawrence Date: Fri, 1 Sep 2006 01:51:46 +0000 Subject: Progress checkpoint on improved signup stuff for additional services --- fs_selfservice/FS-SelfService/cgi/signup.html | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'fs_selfservice') diff --git a/fs_selfservice/FS-SelfService/cgi/signup.html b/fs_selfservice/FS-SelfService/cgi/signup.html index 3e0f32749..1ba3d7702 100755 --- a/fs_selfservice/FS-SelfService/cgi/signup.html +++ b/fs_selfservice/FS-SelfService/cgi/signup.html @@ -257,6 +257,29 @@ ENDOUT } %> + +<%= +if ( @optional_packages ) { + my @html; + foreach my $ii ( 0 .. $#optional_packages) { + my $friendly_index = $ii + 1; + if ($optional_packages[$ii]) { + push @html, qq|Optional Package # $friendly_index
|,'
'; + + push @html, qq||; + + push @html, '
'; + } + $OUT = join("\n", @html); + } +} else { +$OUT = '' +} +%> +

+Purchase replacement package for "<%= $pkg; %>"

+<%= if ( $error ) { + $OUT .= qq!$error

!; +} ''; %> +
+ + + + + + + + +
+ +
+ diff --git a/fs_selfservice/FS-SelfService/cgi/customer_change_pkg.html b/fs_selfservice/FS-SelfService/cgi/customer_change_pkg.html new file mode 100644 index 000000000..d08ab9679 --- /dev/null +++ b/fs_selfservice/FS-SelfService/cgi/customer_change_pkg.html @@ -0,0 +1,10 @@ +MyAccount +MyAccount

+<%= $url = "$selfurl?session=$session_id;action="; ''; %> +<%= include('myaccount_menu') %> + +<%= include('change_pkg') %> + +
+powered by freeside + diff --git a/fs_selfservice/FS-SelfService/cgi/process_change_pkg.html b/fs_selfservice/FS-SelfService/cgi/process_change_pkg.html new file mode 100644 index 000000000..9347434ba --- /dev/null +++ b/fs_selfservice/FS-SelfService/cgi/process_change_pkg.html @@ -0,0 +1,13 @@ +MyAccount +MyAccount

+<%= $url = "$selfurl?session=$session_id;action="; ''; %> +<%= include('myaccount_menu') %> + + +Package change successful. + + +
+powered by freeside + + diff --git a/fs_selfservice/FS-SelfService/cgi/provision_list.html b/fs_selfservice/FS-SelfService/cgi/provision_list.html index cd587f072..88d1c848b 100644 --- a/fs_selfservice/FS-SelfService/cgi/provision_list.html +++ b/fs_selfservice/FS-SelfService/cgi/provision_list.html @@ -16,9 +16,11 @@ function areyousure(href, message) { ) { $OUT .= #''. - ''; + ''; my $col1 = "ffffff"; my $col2 = "dddddd"; diff --git a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi index e2fd7f6a4..1fc2e5f8b 100644 --- a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi +++ b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi @@ -7,13 +7,14 @@ use CGI; use CGI::Carp qw(fatalsToBrowser); use Text::Template; use HTML::Entities; +use Date::Format; use FS::SelfService qw( login customer_info invoice payment_info process_payment process_prepay list_pkgs order_pkg signup_info order_recharge part_svc_info provision_acct provision_external - unprovision_svc - list_svcs myaccount_passwd + unprovision_svc change_pkg + list_svcs list_svc_usage myaccount_passwd ); $template_dir = '.'; @@ -65,7 +66,7 @@ $session_id = $cgi->param('session'); #order|pw_list XXX ??? $cgi->param('action') =~ - /^(myaccount|view_invoice|make_payment|payment_results|recharge_prepay|recharge_results|logout|change_bill|change_ship|customer_order_pkg|process_order_pkg|process_order_recharge|provision|provision_svc|process_svc_acct|process_svc_external|delete_svc|view_usage||change_password|process_change_password)$/ + /^(myaccount|view_invoice|make_payment|payment_results|recharge_prepay|recharge_results|logout|change_bill|change_ship|customer_order_pkg|process_order_pkg|customer_change_pkg|process_change_pkg|process_order_recharge|provision|provision_svc|process_svc_acct|process_svc_external|delete_svc|view_usage|view_usage_details|change_password|process_change_password)$/ or die "unknown action ". $cgi->param('action'); my $action = $1; @@ -123,6 +124,24 @@ sub customer_order_pkg { }; } +sub customer_change_pkg { + my $init_data = signup_info( 'customer_session_id' => $session_id ); + return $init_data if ( $init_data->{'error'} ); + + my $customer_info = customer_info( 'session_id' => $session_id ); + return $customer_info if ( $customer_info->{'error'} ); + + return { + ( map { $_ => $init_data->{$_} } + qw( part_pkg security_phrase svc_acct_pop ), + ), + ( map { $_ => $cgi->param($_) } + qw( pkgnum pkg ) + ), + %$customer_info, + }; +} + sub process_order_pkg { my $results = ''; @@ -160,6 +179,30 @@ sub process_order_pkg { } +sub process_change_pkg { + + my $results = ''; + + $results ||= change_pkg ( + 'session_id' => $session_id, + map { $_ => $cgi->param($_) } + qw( pkgpart pkgnum ) + ); + + + if ( $results->{'error'} ) { + $action = 'customer_change_pkg'; + return { + $cgi->Vars, + %{customer_change_pkg()}, + 'error' => ''. $results->{'error'}. '', + }; + } else { + return $results; + } + +} + sub process_order_recharge { my $results = ''; @@ -356,6 +399,15 @@ sub view_usage { ); } +sub view_usage_details { + list_svc_usage( + 'session_id' => $session_id, + 'svcnum' => $cgi->param('svcnum'), + 'beginning' => $cgi->param('beginning') || '', + 'ending' => $cgi->param('ending') || '', + ); +} + sub change_password { list_svcs( 'session_id' => $session_id, diff --git a/fs_selfservice/FS-SelfService/cgi/view_usage.html b/fs_selfservice/FS-SelfService/cgi/view_usage.html index 73ad1e4af..79d07d4df 100644 --- a/fs_selfservice/FS-SelfService/cgi/view_usage.html +++ b/fs_selfservice/FS-SelfService/cgi/view_usage.html @@ -19,8 +19,10 @@ <%= foreach my $svc ( @svcs ) { + my $link = "${url}view_usage_details;". + "svcnum=$svc->{'svcnum'};beginning=0;ending=0"; $OUT .= '
'. - $pkg->{'pkg'}. - '
'. + $pkg->{'pkg'}. '' . + qq!(! . + 'change)
Total remaining
'; - $OUT .= $svc->{'label'}. ': '. $svc->{'value'}; + $OUT .= qq!!. $svc->{'label'}. ': '. $svc->{'value'}.''; $OUT .= ''; $OUT .= $svc->{'seconds'}; $OUT .= ''; diff --git a/fs_selfservice/FS-SelfService/cgi/view_usage_details.html b/fs_selfservice/FS-SelfService/cgi/view_usage_details.html new file mode 100644 index 000000000..9067755b0 --- /dev/null +++ b/fs_selfservice/FS-SelfService/cgi/view_usage_details.html @@ -0,0 +1,66 @@ +MyAccount +MyAccount

+<%= $url = "$selfurl?session=$session_id;action="; ''; %> +<%= include('myaccount_menu') %> +
+ +Service usage details

+ +<%= if ( $error ) { + $OUT .= qq!$error

!; +} ''; %> + + + + + + +
+<%= if ($previous < $beginning) { + $OUT .= qq!Previous period!; + }else{ + ''; + } %> + +<%= if ($next > $ending) { + $OUT .= qq!Next period!; + }else{ + ''; + }%> +
+ + + + + + +<%= my $total = 0; + foreach my $usage ( @usage ) { + $OUT .= ''; + } + my $h = int($total/3600); + my $m = sprintf("%02d", int(($total % 3600) / 60)); + my $s = sprintf("%02d", $total % 60); + $OUT .= qq!!; + $OUT .= qq!!; %> + +
AccountStart TimeDuration
'; + $OUT .= $usage->{'username'}; + $OUT .= ''; + $OUT .= Date::Format::time2str('%T%P %a %b %o %Y', $usage->{'acctstarttime'}); + $OUT .= ''; + my $duration = $usage->{'acctstoptime'} - $usage->{'acctstarttime'}; + $total += $duration; + my $h = int($duration/3600); + my $m = sprintf("%02d", int(($duration % 3600) / 60)); + my $s = sprintf("%02d", $duration % 60); + $OUT .= "$h:$m:$s"; + $OUT .= '
========
$h:$m:$s
+
+ +
+
+powered by freeside + -- cgit v1.2.1 From 25f6e4198b75ba4299753eceaa96f35739581ed9 Mon Sep 17 00:00:00 2001 From: ivan Date: Mon, 22 Jan 2007 02:42:08 +0000 Subject: accept CVV2 on self-service manual payment screen --- fs_selfservice/FS-SelfService/cgi/make_payment.html | 18 +++++++++++++++++- fs_selfservice/FS-SelfService/cgi/selfservice.cgi | 8 ++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) (limited to 'fs_selfservice') diff --git a/fs_selfservice/FS-SelfService/cgi/make_payment.html b/fs_selfservice/FS-SelfService/cgi/make_payment.html index 1bbbe90b2..64b1e00b5 100644 --- a/fs_selfservice/FS-SelfService/cgi/make_payment.html +++ b/fs_selfservice/FS-SelfService/cgi/make_payment.html @@ -1,5 +1,18 @@ MyAccount -MyAccount

+ + +MyAccount

<%= $url = "$selfurl?session=$session_id;action="; ''; %> <%= include('myaccount_menu') %> @@ -59,6 +72,9 @@ + + CVV2 (help) + Exact name on card diff --git a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi index 1fc2e5f8b..975203dc8 100644 --- a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi +++ b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi @@ -238,6 +238,10 @@ sub payment_results { use Business::CreditCard; + #we should only do basic checking here for DoS attacks and things + #that couldn't be constructed by the web form... let process_payment() do + #the rest, it gives better error messages + $cgi->param('amount') =~ /^\s*(\d+(\.\d{2})?)\s*$/ or die "illegal amount"; #!!! my $amount = $1; @@ -258,6 +262,9 @@ sub payment_results { or die "not a ". $cgi->param('card_type'); } + $cgi->param('paycvv') =~ /^\s*(.{0,4})\s*$/ or die "illegal CVV2"; + my $paycvv = $1; + $cgi->param('month') =~ /^(\d{2})$/ or die "illegal month"; my $month = $1; $cgi->param('year') =~ /^(\d{4})$/ or die "illegal year"; @@ -294,6 +301,7 @@ sub payment_results { 'session_id' => $session_id, 'amount' => $amount, 'payinfo' => $payinfo, + 'paycvv' => $paycvv, 'month' => $month, 'year' => $year, 'payname' => $payname, -- cgit v1.2.1 From 5b30406d72c3f723582af30708352f2e671dc07d Mon Sep 17 00:00:00 2001 From: jeff Date: Tue, 30 Jan 2007 18:52:35 +0000 Subject: additional info available for self-service success (ticket 1420) --- fs_selfservice/FS-SelfService/cgi/signup.cgi | 8 +++++--- fs_selfservice/FS-SelfService/cgi/success-delayed.html | 16 ++++++++++++++++ 2 files changed, 21 insertions(+), 3 deletions(-) create mode 100644 fs_selfservice/FS-SelfService/cgi/success-delayed.html (limited to 'fs_selfservice') diff --git a/fs_selfservice/FS-SelfService/cgi/signup.cgi b/fs_selfservice/FS-SelfService/cgi/signup.cgi index ad98869ec..1514db52a 100755 --- a/fs_selfservice/FS-SelfService/cgi/signup.cgi +++ b/fs_selfservice/FS-SelfService/cgi/signup.cgi @@ -280,9 +280,10 @@ sub print_okay { } #global for template - my $pkg = ( grep { $_->{'pkgpart'} eq $param{'pkgpart'} } - @{ $init_data->{'part_pkg'} } - )[0]->{'pkg'}; + my $part_pkg = ( grep { $_->{'pkgpart'} eq $param{'pkgpart'} } + @{ $init_data->{'part_pkg'} } + )[0]; + my $pkg = $part_pkg->{'pkg'}; if ( $ieak_template && $user_agent->windows && $user_agent->ie ) { #send an IEAK config @@ -299,6 +300,7 @@ sub print_okay { exch => $exch, loc => $loc, pkg => $pkg, + part_pkg => \$part_pkg, }); } } diff --git a/fs_selfservice/FS-SelfService/cgi/success-delayed.html b/fs_selfservice/FS-SelfService/cgi/success-delayed.html new file mode 100644 index 000000000..5eeed5957 --- /dev/null +++ b/fs_selfservice/FS-SelfService/cgi/success-delayed.html @@ -0,0 +1,16 @@ +Signup successful +Signup successful

+Thanks for signing up! +

+Signup information for <%= $email_name %>: +

+Username: <%= $username %>
+Password: <%= $password %>
+Access number: (<%= $ac %>) / <%= $exch %> - <%= $local %>
+Package: <%= $pkg %>
+Charge: <%= sprintf('$%.2f', $part_pkg->{'options'}->{'setup_fee'}) %>
+In <%= $part_pkg->{'options'}->{'free_days'} %> days you will be charged + <%= sprintf('$%.2f', $part_pkg->{'options'}->{'recur_fee'}) %> +and <%= $part_pkg->{'freq_pretty'} %> thereafter.
+ + -- cgit v1.2.1 From 652cdac798eaca38dc43ebafa7074d55b02a86df Mon Sep 17 00:00:00 2001 From: ivan Date: Sun, 11 Feb 2007 08:51:12 +0000 Subject: we're at now now --- fs_selfservice/FS-SelfService/cgi/myaccount_menu.html | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'fs_selfservice') diff --git a/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html b/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html index 92f3e1575..47fcfc127 100644 --- a/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html +++ b/fs_selfservice/FS-SelfService/cgi/myaccount_menu.html @@ -12,7 +12,7 @@ my @menu = ( { title=>' ' }, { title=>'Purchase', size=>'+1', }, - { title=>'Purchase additional package*', + { title=>'Purchase additional package', url=>'customer_order_pkg', 'indent'=>2 }, ); @@ -84,8 +84,6 @@ foreach my $item ( @menu ) { %> - -



-- cgit v1.2.1