X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Felements%2Fpopup_link.html;h=2394681ee2779b19d4e42263021db0be27546d48;hb=816b40df3a9fbc155060842999ff8edc155e91d7;hp=556e19ebe3bcaa15257456e45f7111fe18dc0ad7;hpb=a2649b652a3db877b105b4bea5b34727dbcb914f;p=freeside.git
diff --git a/httemplate/elements/popup_link.html b/httemplate/elements/popup_link.html
index 556e19ebe..2394681ee 100644
--- a/httemplate/elements/popup_link.html
+++ b/httemplate/elements/popup_link.html
@@ -2,35 +2,44 @@
Example:
-
-
+ <& /elements/init_overlib.html &>
- include( '/elements/popup_link.html', { #hashref or a list, either way is fine
+ <& /elements/popup_link.html', { #hashref or a list, either way is fine
#required
'action' => 'content.html', # uri for content of popup
'label' => 'click me', # text of tag
#strongly recommended
- 'actionlabel => 'You clicked', # popup title
+ 'actionlabel' => 'You clicked', # popup title
#opt
- 'width' => '540',
+ 'width' => 540,
+ 'height' => 336,
'color' => '#ff0000',
'closetext' => 'Go Away', # the value '' removes the link
- } )
+ 'title' => 'Hover Text',
+
+ #uncommon opt
+ 'aname' => "target", # link NAME= value, useful for #targets
+ 'target' => '_parent',
+ 'style' => 'css-attribute:value',
+ 'html_label' => '', # overrides label
+ }
+ &>
%doc>
-% if ($action && $label) {
-<% $label %>\
+% if ($params->{'action'} && $label) {
+{'title'} ? 'TITLE="' . $params->{'title'}. '"' : '' |n %>
+ <% $params->{'aname'} ? 'NAME="'. $params->{'aname'}. '"' : '' |n %>
+ <% $params->{'target'} ? 'TARGET="'. $params->{'target'}. '"' : '' |n %>
+ <% $params->{'style'} ? 'STYLE="'. $params->{'style'}. '"' : '' |n %>
+><% $label %>\
% }
<%init>
-my($action, $label, $actionlabel) = ( '', '', '' );
-my $closetext = 'Close';
-my $width = 540;
-my $color = '#333399';
-
my $params;
if (ref($_[0]) eq 'HASH') {
#$params = { %$params, %{ $_[0] } };
@@ -40,17 +49,10 @@ if (ref($_[0]) eq 'HASH') {
$params = { @_ };
}
-$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'};
-
-#stupid safari is caching the "location" of popup iframs, and submitting them
-#instead of displaying them. this should prevent that.
-my $popup_name = 'popup-'.time. "-$$-". rand() * 2**32;
-
-my $onclick = "overlib( OLiframeContent('$action', $width, 336, '$popup_name' ), CAPTION, '$actionlabel', STICKY, AUTOSTATUSCAP, MIDX, 0, MIDY, 0, DRAGGABLE, CLOSECLICK, BGCOLOR, '$color', CGCOLOR, '$color', CLOSETEXT, '$closetext' ); return false;";
+my $label = $params->{'label'};
+$label = encode_entities($label);
+$label =~ s/ / /g;
+$label = $params->{'html_label'} || $label;
+my $onclick = include('/elements/popup_link_onclick.html', $params);
%init>