fix svc_label_link...? how did this ever work? RT#11331
[freeside.git] / FS / FS / UI / Web.pm
index 2d00d2c..029b02c 100644 (file)
@@ -3,6 +3,7 @@ package FS::UI::Web;
 use strict;
 use vars qw($DEBUG @ISA @EXPORT_OK $me);
 use Exporter;
+use Carp qw( confess );;
 use FS::Conf;
 use FS::Misc::DateTime qw( parse_datetime );
 use FS::Record qw(dbdef);
@@ -134,7 +135,8 @@ sub svc_link {
 
 sub svc_label_link {
   my($m, $part_svc, $cust_svc) = @_ or return '';
-  svc_X_link( ($cust_svc->label)[1], @_ );
+  my($svc, $label, $svcdb) = $cust_svc->label;
+  svc_X_link( $label, @_ );
 }
 
 sub svc_X_link {
@@ -143,6 +145,9 @@ sub svc_X_link {
   return $x
    unless $FS::CurrentUser::CurrentUser->access_right('View customer services');
 
+  confess "svc_X_link called without a service ($x, $m, $part_svc, $cust_svc)\n"
+    unless $cust_svc;
+
   my $ahref = svc_url(
     'ahref'    => 1,
     'm'        => $m,