diff options
author | ivan <ivan> | 2009-12-31 14:00:35 +0000 |
---|---|---|
committer | ivan <ivan> | 2009-12-31 14:00:35 +0000 |
commit | 5c96d46d56f2066bb40d9a34c4db56f53f43c6f2 (patch) | |
tree | 0ef4d2c590268e347047f0f3c2f1e87ab5f9216c /rt/html/Widgets | |
parent | 63a268637b2d51a8766412617724b9436439deb6 (diff) |
merging 3.8.7!!!
Diffstat (limited to 'rt/html/Widgets')
-rw-r--r-- | rt/html/Widgets/ComboBox | 70 | ||||
-rw-r--r-- | rt/html/Widgets/SavedSearch | 158 | ||||
-rw-r--r-- | rt/html/Widgets/SelectionBox | 243 | ||||
-rw-r--r-- | rt/html/Widgets/TitleBox | 54 | ||||
-rwxr-xr-x | rt/html/Widgets/TitleBoxEnd | 59 | ||||
-rwxr-xr-x | rt/html/Widgets/TitleBoxStart | 86 |
6 files changed, 0 insertions, 670 deletions
diff --git a/rt/html/Widgets/ComboBox b/rt/html/Widgets/ComboBox deleted file mode 100644 index 164749ce8..000000000 --- a/rt/html/Widgets/ComboBox +++ /dev/null @@ -1,70 +0,0 @@ -%# BEGIN BPS TAGGED BLOCK {{{ -%# -%# COPYRIGHT: -%# -%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC -%# <jesse@bestpractical.com> -%# -%# (Except where explicitly superseded by other copyright notices) -%# -%# -%# LICENSE: -%# -%# This work is made available to you under the terms of Version 2 of -%# the GNU General Public License. A copy of that license should have -%# been provided with this software, but in any event can be snarfed -%# from www.gnu.org. -%# -%# This work is distributed in the hope that it will be useful, but -%# WITHOUT ANY WARRANTY; without even the implied warranty of -%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -%# General Public License for more details. -%# -%# You should have received a copy of the GNU General Public License -%# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html. -%# -%# -%# CONTRIBUTION SUBMISSION POLICY: -%# -%# (The following paragraph is not intended to limit the rights granted -%# to you to modify and distribute this software under the terms of -%# the GNU General Public License and is only of importance to you if -%# you choose to contribute your changes and enhancements to the -%# community by submitting them to Best Practical Solutions, LLC.) -%# -%# By intentionally submitting any modifications, corrections or -%# derivatives to this work, or any other work intended for use with -%# Request Tracker, to Best Practical Solutions, LLC, you confirm that -%# you are the copyright holder for those contributions and you grant -%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, -%# royalty-free, perpetual, license to use, copy, create derivative -%# works based on those contributions, and sublicense and distribute -%# those contributions and any derivatives thereof. -%# -%# END BPS TAGGED BLOCK }}} -<nobr> -<script type="text/javascript" src="<%$RT::WebPath%>/NoAuth/js/combobox.js"></script> - -<span id="<% $Name %>_Container" class="combobox"> -<input name="<% $Name %>" id="<% $Name %>" class="combo-text" value="<% $Default %>" type="text" <% $Size ? "size='$Size'" : '' |n %> autocomplete="off" /> -<br style="display: none" /><span id="<% $Name %>_Button" class="combo-button"></span><select name="List-<% $Name %>" id="<% $Name %>_List" class="combo-list" onchange="ComboBox_SimpleAttach(this, this.form['<% $Name %>']); " size="<% $Rows %>"> -<option style="display: none" value="">-</option> -% foreach my $value (@Values) { - <option value="<%$value%>"><% $value%></option> -% } -</select> -</span> -<script language="javascript"><!-- -ComboBox_InitWith('<% $Name %>'); -//--></script> -</nobr> -<%ARGS> -$Name -$Size => undef -$Rows => 5 -$Default => '' -@Values => () -</%ARGS> diff --git a/rt/html/Widgets/SavedSearch b/rt/html/Widgets/SavedSearch deleted file mode 100644 index b3152129e..000000000 --- a/rt/html/Widgets/SavedSearch +++ /dev/null @@ -1,158 +0,0 @@ -%# BEGIN BPS TAGGED BLOCK {{{ -%# -%# COPYRIGHT: -%# -%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC -%# <jesse@bestpractical.com> -%# -%# (Except where explicitly superseded by other copyright notices) -%# -%# -%# LICENSE: -%# -%# This work is made available to you under the terms of Version 2 of -%# the GNU General Public License. A copy of that license should have -%# been provided with this software, but in any event can be snarfed -%# from www.gnu.org. -%# -%# This work is distributed in the hope that it will be useful, but -%# WITHOUT ANY WARRANTY; without even the implied warranty of -%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -%# General Public License for more details. -%# -%# You should have received a copy of the GNU General Public License -%# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html. -%# -%# -%# CONTRIBUTION SUBMISSION POLICY: -%# -%# (The following paragraph is not intended to limit the rights granted -%# to you to modify and distribute this software under the terms of -%# the GNU General Public License and is only of importance to you if -%# you choose to contribute your changes and enhancements to the -%# community by submitting them to Best Practical Solutions, LLC.) -%# -%# By intentionally submitting any modifications, corrections or -%# derivatives to this work, or any other work intended for use with -%# Request Tracker, to Best Practical Solutions, LLC, you confirm that -%# you are the copyright holder for those contributions and you grant -%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, -%# royalty-free, perpetual, license to use, copy, create derivative -%# works based on those contributions, and sublicense and distribute -%# those contributions and any derivatives thereof. -%# -%# END BPS TAGGED BLOCK }}} -<%method new> -<%init> -return \%ARGS; -</%init> -</%method> - -<%method process> - -<%init> -my @actions; -my @Objects = RT::SavedSearches->new( $session{CurrentUser} )->_PrivacyObjects; -push @Objects, RT::System->new($session{'CurrentUser'}) - if $session{'CurrentUser'}->HasRight( Object=> $RT::System, - Right => 'SuperUser'); -$self->{SearchId} ||= 'new'; -my $SearchParams = { map { $_ => $args->{$_} } @{$self->{SearchFields}} }; - -if ( my ( $container_object, $search_id ) = _parse_saved_search( $args->{'LoadSavedSearch'} ) ) { - my $search = $container_object->Attributes->WithId($search_id); - # We have a $search and now; import the others - $self->{SearchId} = $args->{'LoadSavedSearch'}; - $self->{CurrentSearch}{Object} = $search; - $args->{$_} = $search->SubValue($_) for @{ $self->{SearchFields} }; -} - -# look for the current one in the available saved searches -if ($self->{SearchId} eq 'new') { - for my $obj (@Objects) { - for ( $m->comp( "/Search/Elements/SearchesForObject", Object => $obj ) ) { - my ( $desc, $search ) = @$_; - use Data::Dumper; - # FFS - local $Data::Dumper::Sortkeys = 1; - if ( Dumper( $search->Content ) eq - Dumper( { %$SearchParams, SearchType => $self->{SearchType} } ) ) { - $self->{CurrentSearch}{Object} = $search; - $self->{SearchId} = $search->Id; - } - } - } -} - -if ( $args->{Save} ) { - if ( my $search = $self->{CurrentSearch}{Object} ) { - # rename - $search->SetDescription( $args->{Description} ); - push @actions, loc($self->{SearchType}).loc( ' [_1] renamed to [_2].', $self->{CurrentSearch}{Description}, $args->{Description} ); - } - else { - # new saved search - my $saved_search = RT::SavedSearch->new( $session{'CurrentUser'} ); - my ( $ok, $search_msg ) = $saved_search->Save( - Privacy => $args->{'Owner'}, - Name => $args->{'Description'}, - Type => $self->{'SearchType'}, - SearchParams => $SearchParams - ); - if ($ok) { - $self->{CurrentSearch}{Object} = $saved_search->{Attribute}; - push @actions, loc($self->{SearchType}).loc( ' [_1] saved.', $args->{Description} ); - } else { - push @actions, - [ loc("Can't save [_1]", loc($self->{SearchType})) . ': ' . loc($search_msg), 0 ]; - } - } -} - -if ( $args->{Delete} && $self->{CurrentSearch}{Object} ) { - my ($ok, $msg) = $self->{CurrentSearch}{Object}->Delete; - push @actions, $ok ? loc($self->{SearchType}).loc( ' [_1] deleted.', $self->{CurrentSearch}{Object}->Description ) : $msg; - delete $self->{CurrentSearch}{Object}; - delete $self->{SearchId}; - -} - -$self->{CurrentSearch}{Description} = $self->{CurrentSearch}{Object}->Description - if $self->{CurrentSearch}{Object}; - -return @actions; -</%init> -<%ARGS> -$self -$args -</%ARGS> - -</%method> - -<%method show> -<form method="post" action="<% $Action %>" name="SaveSearch"> -<& /Search/Elements/EditSearches, Name => 'Owner', SearchType => $self->{SearchType}, AllowCopy => 0, - CurrentSearch => $self->{CurrentSearch}, SearchId => $self->{SearchId}, Title => $Title &><br /> -<%PERL> -foreach my $field ( @{$self->{SearchFields}} ) { - if ( ref($ARGS{$field}) && ref($ARGS{$field}) ne 'ARRAY' ) { - $RT::Logger->error("Couldn't store '$field'. it's reference to ". ref($ARGS{$field}) ); - next; - } - foreach my $value ( grep defined, ref($ARGS{$field})? @{ $ARGS{$field} } : $ARGS{$field} ) { -</%PERL> -<input type="hidden" class="hidden" name="<% $field %>" value="<% $value %>" /> -% } -% } -</form> -<%ARGS> -$self => undef -$Action => '' -$Title => loc('Saved searches') -</%ARGS> -<%init> -</%init> -</%method> diff --git a/rt/html/Widgets/SelectionBox b/rt/html/Widgets/SelectionBox deleted file mode 100644 index c58a0a1a1..000000000 --- a/rt/html/Widgets/SelectionBox +++ /dev/null @@ -1,243 +0,0 @@ -%# BEGIN BPS TAGGED BLOCK {{{ -%# -%# COPYRIGHT: -%# -%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC -%# <jesse@bestpractical.com> -%# -%# (Except where explicitly superseded by other copyright notices) -%# -%# -%# LICENSE: -%# -%# This work is made available to you under the terms of Version 2 of -%# the GNU General Public License. A copy of that license should have -%# been provided with this software, but in any event can be snarfed -%# from www.gnu.org. -%# -%# This work is distributed in the hope that it will be useful, but -%# WITHOUT ANY WARRANTY; without even the implied warranty of -%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -%# General Public License for more details. -%# -%# You should have received a copy of the GNU General Public License -%# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html. -%# -%# -%# CONTRIBUTION SUBMISSION POLICY: -%# -%# (The following paragraph is not intended to limit the rights granted -%# to you to modify and distribute this software under the terms of -%# the GNU General Public License and is only of importance to you if -%# you choose to contribute your changes and enhancements to the -%# community by submitting them to Best Practical Solutions, LLC.) -%# -%# By intentionally submitting any modifications, corrections or -%# derivatives to this work, or any other work intended for use with -%# Request Tracker, to Best Practical Solutions, LLC, you confirm that -%# you are the copyright holder for those contributions and you grant -%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, -%# royalty-free, perpetual, license to use, copy, create derivative -%# works based on those contributions, and sublicense and distribute -%# those contributions and any derivatives thereof. -%# -%# END BPS TAGGED BLOCK }}} -%# The SelectionBox Widget -%# -%# SYNOPSIS -%# -%# include javascript: -%# <& /Widgets/SelectionBox:header &> -%# -%# <%init>: -%# my $sel = $m->comp ('/Widgets/SelectionBox:new', -%# Action => me.html', -%# Name => 'my-selection', -%# Available => \@items, -%# # you can do things with @{$sel->{Current}} in the -%# # OnSubmit callback -%# OnSubmit => sub { my $sel = shift; }, -%# Selected => \@selected); -%# -%# $m->comp ('/Widgets/SelectionBox:process', %ARGS, self => $sel) -%# -%# where @items is an arrayref, each element is [value, label], -%# and @selected is an arrayref of selected values from @items. -%# -%# and in html: -%# <& /Widgets/SelectionBox:sow, self => $sel &> -%# -%# if the SelectionBox is created with AutoSave option, OnSubmit will be called -%# on every button clicked in non-js mode. -<%method header> -% unless ($nojs) { -<script type="text/javascript" src="<%$RT::WebPath%>/NoAuth/js/class.js"></script> -<script type="text/javascript" src="<%$RT::WebPath%>/NoAuth/js/list.js"></script> -% } -<%ARGS> -$nojs => 0 -</%ARGS> -</%method> - -<%method new> -<%init> -$ARGS{_item_map} = {map {$_->[0] => $_->[1]} @{$ARGS{Available}}}; -return \%ARGS; -</%init> -</%method> - -<%method process> -<%init> -unless ($ARGS{$self->{Name}.'-Submit'}) { - # init - $self->{Current} = $self->{Selected}; - $self->{Selected} = []; - return; -} - -$self->{Selected} = $ARGS{$self->{Name}.'-Selected'}; -if ($self->{Selected} && !ref($self->{Selected})) { - $self->{Selected} = [$self->{Selected}]; -} - -if ($ARGS{fromjs}) { - $self->{Current} = $self->{Selected}; -} -else { - my $current = $self->{Current} = $ARGS{$self->{Name}.'-Current'}; - ++$self->{Modified}; - if ($current && !ref ($current)) { - $current = [$current]; - } - - if ($ARGS{add}) { - my $choosed = $ARGS{$self->{Name}.'-Available'}; - for my $add (ref($choosed) ? @$choosed : $choosed) { - next if grep { $_ eq $add } @$current; - push @$current, $add; - } - } - - if ($ARGS{remove}) { - my $choosed = $ARGS{$self->{Name}.'-Selected'}; - for my $del (ref($choosed) ? @$choosed : $choosed) { - @$current = map { $_ eq $del ? () : $_ } @$current; - } - } - - if ($ARGS{moveup} or $ARGS{movedown}) { - my $offset = $ARGS{moveup} ? 1 : 0; - my $choosed = $ARGS{$self->{Name}.'-Selected'}; - $choosed = [$choosed] unless ref ($choosed); - my $canmove = 0; # not in the cornor - for my $i ($ARGS{moveup} ? 0..$#{$current} : reverse 0..$#{$current}) { - if (grep {$_ eq $current->[$i]} @$choosed) { - if ($canmove) { - splice (@$current, $i-$offset, 2, - @{$current}[$i+1-$offset,$i-$offset]); - } - } - else { - ++$canmove; - } - } - } - - if ($ARGS{clear}) { - $current = []; - } - - $self->{Current} = $current; -} - -@{$self->{Current}} = grep { exists $self->{_item_map}{$_} } @{$self->{Current}}; - -if ($self->{AutoSave} or $ARGS{$self->{Name}.'-Save'}) { - $self->{OnSubmit}->($self); - delete $self->{Modified}; -} - -</%init> -<%ARGS> -$self => undef -</%ARGS> - -</%method> - -<%method current> -% for (@{$self->{Current}}) { -<input type="hidden" class="hidden" name="<% $self->{Name} %>-Current" value="<%$_%>" /> -% } -<%INIT> -</%INIT> -<%ARGS> -$self => undef -</%ARGS> - -</%method> - -<%method show> -<form method="post" action="<%$self->{Action}%>" name="SelectionBox-<% $name %>" id="SelectionBox-<% $name %>" -% unless ($nojs) { -onsubmit="list_<% $name %>.selectAll();" -% } -> -<input type="hidden" class="hidden" name="<% $self->{Name} %>-Submit" value="1" /> -<& SelectionBox:current, self => $self &> -<input type="hidden" class="hidden" name="fromjs" value="0" /> -<&|/l&>Available</&>: -<br /> -<select name="<%$name%>-Available" id="<%$name%>-Available" size="<%$size%>" multiple="multiple"> -% for (@{$self->{Available}}) { -<option value="<% $_->[0] %>"><% $_->[1] %></option> -% } -</select> -<input name="add" type="submit" class="button" value=" → " /> -<select name="<%$name%>-Selected" id="<%$name%>-Selected" size="<%$size%>" multiple="multiple"> -% for (@{$self->{Current}}) { -<option value="<% $_ %>" -% if (exists $selected{$_}) { -selected="selected" -% } -><% $self->{_item_map}{$_} %></option> -% } -</select> -% unless ($ARGS{'NoArrows'}) { - <input name="moveup" type="submit" class="button" value=" ↑ " /> - <input name="movedown" type="submit" class="button" value=" ↓ " /> -% } - <input name="remove" type="submit" class="button" value="<&|/l&>Delete</&>" /> -% if ($ARGS{'Clear'}) { - <input name="clear" type="submit" class="button" value="<&|/l&>Clear</&>" /> -% } - -% my $caption = ""; -% unless ($self->{'AutoSave'}) { -% if ($self->{Modified}) { -% $caption = loc('Selections modified. Please save your changes'); -% } -<& /Elements/Submit, Caption => loc($caption), Label => loc('Save'), Name => $name.'-Save' &> -% } -</form> - -% unless ($nojs) { -<script type="text/javascript"> -//<![CDATA[ -var list_<%$name%> = new list(document.getElementById("SelectionBox-<% $name %>"), 0, "list_<%$name%>"); -//]]> -</script> -% } -<%ARGS> -$self => undef -$size => 10 -$nojs => 0 -</%ARGS> -<%INIT> -my $name = $self->{Name}; -my %selected = map {$_ => 1} @{$self->{Selected}}; -</%INIT> - -</%method> diff --git a/rt/html/Widgets/TitleBox b/rt/html/Widgets/TitleBox deleted file mode 100644 index 3e4afa0b2..000000000 --- a/rt/html/Widgets/TitleBox +++ /dev/null @@ -1,54 +0,0 @@ -%# BEGIN BPS TAGGED BLOCK {{{ -%# -%# COPYRIGHT: -%# -%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC -%# <jesse@bestpractical.com> -%# -%# (Except where explicitly superseded by other copyright notices) -%# -%# -%# LICENSE: -%# -%# This work is made available to you under the terms of Version 2 of -%# the GNU General Public License. A copy of that license should have -%# been provided with this software, but in any event can be snarfed -%# from www.gnu.org. -%# -%# This work is distributed in the hope that it will be useful, but -%# WITHOUT ANY WARRANTY; without even the implied warranty of -%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -%# General Public License for more details. -%# -%# You should have received a copy of the GNU General Public License -%# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html. -%# -%# -%# CONTRIBUTION SUBMISSION POLICY: -%# -%# (The following paragraph is not intended to limit the rights granted -%# to you to modify and distribute this software under the terms of -%# the GNU General Public License and is only of importance to you if -%# you choose to contribute your changes and enhancements to the -%# community by submitting them to Best Practical Solutions, LLC.) -%# -%# By intentionally submitting any modifications, corrections or -%# derivatives to this work, or any other work intended for use with -%# Request Tracker, to Best Practical Solutions, LLC, you confirm that -%# you are the copyright holder for those contributions and you grant -%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, -%# royalty-free, perpetual, license to use, copy, create derivative -%# works based on those contributions, and sublicense and distribute -%# those contributions and any derivatives thereof. -%# -%# END BPS TAGGED BLOCK }}} -<div class="<% $class %>"> - <& TitleBoxStart, %ARGS &><% $m->content | n %><& TitleBoxEnd &> -</div> -<%ARGS> -$class => '' -</%ARGS> - diff --git a/rt/html/Widgets/TitleBoxEnd b/rt/html/Widgets/TitleBoxEnd deleted file mode 100755 index a1f18df1b..000000000 --- a/rt/html/Widgets/TitleBoxEnd +++ /dev/null @@ -1,59 +0,0 @@ -%# BEGIN BPS TAGGED BLOCK {{{ -%# -%# COPYRIGHT: -%# -%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC -%# <jesse@bestpractical.com> -%# -%# (Except where explicitly superseded by other copyright notices) -%# -%# -%# LICENSE: -%# -%# This work is made available to you under the terms of Version 2 of -%# the GNU General Public License. A copy of that license should have -%# been provided with this software, but in any event can be snarfed -%# from www.gnu.org. -%# -%# This work is distributed in the hope that it will be useful, but -%# WITHOUT ANY WARRANTY; without even the implied warranty of -%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -%# General Public License for more details. -%# -%# You should have received a copy of the GNU General Public License -%# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html. -%# -%# -%# CONTRIBUTION SUBMISSION POLICY: -%# -%# (The following paragraph is not intended to limit the rights granted -%# to you to modify and distribute this software under the terms of -%# the GNU General Public License and is only of importance to you if -%# you choose to contribute your changes and enhancements to the -%# community by submitting them to Best Practical Solutions, LLC.) -%# -%# By intentionally submitting any modifications, corrections or -%# derivatives to this work, or any other work intended for use with -%# Request Tracker, to Best Practical Solutions, LLC, you confirm that -%# you are the copyright holder for those contributions and you grant -%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, -%# royalty-free, perpetual, license to use, copy, create derivative -%# works based on those contributions, and sublicense and distribute -%# those contributions and any derivatives thereof. -%# -%# END BPS TAGGED BLOCK }}} - <hr class="clear" /> - </div> -</div> - -% #Manually flush the content buffer after each titlebox is displayed -% $m->flush_buffer(); - -<%ARGS> -$title => undef -$content => undef -</%ARGS> - diff --git a/rt/html/Widgets/TitleBoxStart b/rt/html/Widgets/TitleBoxStart deleted file mode 100755 index 602106e71..000000000 --- a/rt/html/Widgets/TitleBoxStart +++ /dev/null @@ -1,86 +0,0 @@ -%# BEGIN BPS TAGGED BLOCK {{{ -%# -%# COPYRIGHT: -%# -%# This software is Copyright (c) 1996-2009 Best Practical Solutions, LLC -%# <jesse@bestpractical.com> -%# -%# (Except where explicitly superseded by other copyright notices) -%# -%# -%# LICENSE: -%# -%# This work is made available to you under the terms of Version 2 of -%# the GNU General Public License. A copy of that license should have -%# been provided with this software, but in any event can be snarfed -%# from www.gnu.org. -%# -%# This work is distributed in the hope that it will be useful, but -%# WITHOUT ANY WARRANTY; without even the implied warranty of -%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -%# General Public License for more details. -%# -%# You should have received a copy of the GNU General Public License -%# along with this program; if not, write to the Free Software -%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -%# 02110-1301 or visit their web page on the internet at -%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html. -%# -%# -%# CONTRIBUTION SUBMISSION POLICY: -%# -%# (The following paragraph is not intended to limit the rights granted -%# to you to modify and distribute this software under the terms of -%# the GNU General Public License and is only of importance to you if -%# you choose to contribute your changes and enhancements to the -%# community by submitting them to Best Practical Solutions, LLC.) -%# -%# By intentionally submitting any modifications, corrections or -%# derivatives to this work, or any other work intended for use with -%# Request Tracker, to Best Practical Solutions, LLC, you confirm that -%# you are the copyright holder for those contributions and you grant -%# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, -%# royalty-free, perpetual, license to use, copy, create derivative -%# works based on those contributions, and sublicense and distribute -%# those contributions and any derivatives thereof. -%# -%# END BPS TAGGED BLOCK }}} -<div class="titlebox <% $class %>" id="<% $id %>"> - <div class="titlebox-title<% $title_class && " $title_class" %>"> -% if ($hideable) { - <span class="widget"><a href="#" onclick="return rollup('<%$tid%>');" onfocus="this.blur(); return false;" title="Toggle visibility">X</a></span> -% } - <span class="left"><% $title_href && qq[<a href="$title_href">] | n %><% $title |n %><% $title_href && "</a>" |n%></span> - <span class="right"><% $titleright_href && qq[<a href="$titleright_href">] | n %><% $titleright |n %><% $titleright_href && "</a>" |n%></span> - </div> - <div class="titlebox-content <% $bodyclass %>" id="<%$tid%>"> - -<%ARGS> -$width => undef -$class => '' -$bodyclass => '' -$title_href => undef -$title => '' -$title_class => '' -$titleright_href => undef -$titleright => undef -$id => '' -$hideable => 1 -</%ARGS> - -<%init> -# -# This should be pretty bulletproof -# -my $page = $m->request_comp->path; - -my $tid = "TitleBox--$page--" . - join '--', ($class, $bodyclass, $title, $id); - -$tid =~ s{/}{_}g; - -my $i = 0; -$i++ while $m->notes("$tid-$i"); -$m->notes("$tid-$i" => 1); -$tid = "$tid-$i"; -</%init> |