summaryrefslogtreecommitdiff
path: root/httemplate/misc
diff options
context:
space:
mode:
authorivan <ivan>2010-06-07 02:40:15 +0000
committerivan <ivan>2010-06-07 02:40:15 +0000
commit0fe2d918669fe77298f95335958edf596a5f9149 (patch)
tree03024ee3d4058554a787822b7ccf4d6ddfd2005e /httemplate/misc
parentd5f11772496be17d55ed3f7f26d19d3576f9d2be (diff)
domain rules based on templates (rules from other domains), RT#7514
Diffstat (limited to 'httemplate/misc')
-rw-r--r--httemplate/misc/clone-cgp_rule.html27
1 files changed, 27 insertions, 0 deletions
diff --git a/httemplate/misc/clone-cgp_rule.html b/httemplate/misc/clone-cgp_rule.html
new file mode 100644
index 000000000..d821a2dff
--- /dev/null
+++ b/httemplate/misc/clone-cgp_rule.html
@@ -0,0 +1,27 @@
+% if ( $error ) {
+% errorpage($error);
+% } else {
+<% $cgi->redirect($p. "browse/cgp_rule.html?svcnum=". $svcnum) %>
+% }
+<%init>
+
+# :/ needs agent-virt so you can't futz with arbitrary rules
+
+#die "access denied"
+# unless $FS::CurrentUser::CurrentUser->access_right('Provision customer service');
+
+#untaint svcnum and clone
+$cgi->param('svcnum') =~ /^(\d+)$/ || die "Illegal svcnum";
+my $svcnum = $1;
+$cgi->param('clone') =~ /^(\d+)$/ || die "Illegal clone";
+my $clone = $1;
+
+my @cgp_rule = qsearch('cgp_rule', { 'svcnum' => $clone } );
+
+my $error = '';
+foreach my $cgp_rule ( @cgp_rule ) {
+ $error = $cgp_rule->clone( $svcnum );
+ last if $error;
+}
+
+</%init>