From 5ea49c83c4a5b71a1e7baf2b6a75fe50816fdce5 Mon Sep 17 00:00:00 2001 From: jeff Date: Sun, 16 Mar 2008 23:05:27 +0000 Subject: componentize conflicting %once subroutines (rt#3250) --- httemplate/elements/popup_link-cust_svc.html | 59 ++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 httemplate/elements/popup_link-cust_svc.html (limited to 'httemplate/elements/popup_link-cust_svc.html') diff --git a/httemplate/elements/popup_link-cust_svc.html b/httemplate/elements/popup_link-cust_svc.html new file mode 100644 index 000000000..decb82d97 --- /dev/null +++ b/httemplate/elements/popup_link-cust_svc.html @@ -0,0 +1,59 @@ +<%doc> + +Example: + + + + + include( '/elements/svc_popup_link.html', { + + #required + 'action' => 'content.html', # uri for content of popup which should + # be suitable for appending '?svcnum=' + 'label' => 'click me', # text of tag + 'cust_svc' => $cust_svc # a FS::cust_svc object + + #strongly recommended (you want a title, right?) + 'actionlabel => 'You clicked', # popup title + + #opt + 'width' => '540', + 'color' => '#ff0000', + 'closetext' => 'Go Away', # the value '' removes the link + ) + + +<%init> +my($params, $action, $label, $actionlabel, $cust_svc, $color, $width); +my $closetext = 'Close'; +if (ref(@_[0]) eq 'HASH') { + $params = shift; + foreach (qw(action label actionlabel width color)) { + $action = $params->{'action'} if exists $params->{'action'}; + $label = $params->{'label'} if exists $params->{'label'}; + $actionlabel = $params->{'actionlabel'} if exists $params->{'actionlabel'}; + $width = $params->{'width'} if exists $params->{'width'}; + $color = $params->{'color'} if exists $params->{'color'}; + $closetext = $params->{'closetext'} if exists $params->{'closetext'}; + $cust_svc = $params->{'cust_svc'} if exists $params->{'cust_svc'}; + } +}else{ # deprecated + ($action, $label, $actionlabel, $cust_svc) = @_; +} + +$action .= '?svcnum='. $cust_svc->svcnum; +$actionlabel .= ' service '. $cust_svc->svcnum; +$width ||= 392; + + +<% $cust_svc + ? include('/elements/popup_link.html', { 'action' => $action, + 'label' => $label, + 'actionlabel' => $actionlabel, + 'color' => $color, + 'width' => $width, + 'closetext' => $closetext, + } + ) + : '' +%> -- cgit v1.2.1