<%doc> Example: include( '/elements/pkg_popup_link.html', { #required 'action' => 'content.html', # uri for content of popup which should # be suitable for appending '&stuff...' 'label' => 'click me', # text of tag 'cust_pkg' => $cust_pkg # a FS::cust_pkg 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, $color, $cust_pkg, $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_pkg = $params->{'cust_pkg'} if exists $params->{'cust_pkg'}; } }else{ # deprecated ($action, $label, $actionlabel, $color, $cust_pkg) = @_; } $action .= '&pkgnum='. $cust_pkg->pkgnum; $actionlabel .= ' package '. $cust_pkg->pkgnum; $width ||= 768; <% $cust_pkg ? include('/elements/popup_link.html', { 'action' => $action, 'label' => $label, 'actionlabel' => $actionlabel, 'color' => $color, 'width' => $width, 'closetext' => $closetext, } ) : '' %>