RT#18834: Cacti integration [agent access]
authorJonathan Prykop <jonathan@freeside.biz>
Thu, 9 Apr 2015 03:16:12 +0000 (22:16 -0500)
committerJonathan Prykop <jonathan@freeside.biz>
Thu, 9 Apr 2015 03:16:12 +0000 (22:16 -0500)
httemplate/misc/cacti_graphs.html
httemplate/misc/process/cacti_graphs.cgi

index 90a4350..9a90b89 100644 (file)
@@ -43,6 +43,21 @@ die "access denied"
   unless $FS::CurrentUser::CurrentUser->access_right('View customer services');
 
 my $svcnum    = $cgi->param('svcnum') or die 'Illegal svcnum';
+
+# false laziness with view/elements/svc_Common.html
+# only doing this to check agent access, don't actually use $svc_x
+my $svc_x = qsearchs({
+  'select'    => 'svc_broadband.*',
+  'table'     => 'svc_broadband',
+  'addl_from' => ' LEFT JOIN cust_svc  USING ( svcnum  ) '.
+                 ' LEFT JOIN cust_pkg  USING ( pkgnum  ) '.
+                 ' LEFT JOIN cust_main USING ( custnum ) ',
+  'hashref'   => { 'svcnum' => $svcnum },
+  'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql(
+                            'null_right' => 'View/link unlinked services'
+                          ),
+}) or die "Unknown svcnum $svcnum in svc_broadband table\n";
+
 my $load      = $cgi->param('load');
 my $graphnum  = $cgi->param('graphnum') || '';
 
index f2baeb4..a4df722 100644 (file)
@@ -4,6 +4,22 @@
 die "access denied"
   unless $FS::CurrentUser::CurrentUser->access_right('View customer services');
 
+# false laziness with view/elements/svc_Common.html
+# only doing this to check agent access, don't actually use $svc_x
+my %param = $cgi->param('arg');
+my $svcnum = $param{'svcnum'};
+my $svc_x = qsearchs({
+  'select'    => 'svc_broadband.*',
+  'table'     => 'svc_broadband',
+  'addl_from' => ' LEFT JOIN cust_svc  USING ( svcnum  ) '.
+                 ' LEFT JOIN cust_pkg  USING ( pkgnum  ) '.
+                 ' LEFT JOIN cust_main USING ( custnum ) ',
+  'hashref'   => { 'svcnum' => $svcnum },
+  'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql(
+                            'null_right' => 'View/link unlinked services'
+                          ),
+}) or die "Unknown svcnum $svcnum in svc_broadband table\n";
+
 my $server = FS::UI::Web::JSRPC->new('FS::part_export::cacti::process_graphs', $cgi);
 </%init>