diff options
Diffstat (limited to 'rt/html/Admin/Elements/EditCustomFields')
-rw-r--r-- | rt/html/Admin/Elements/EditCustomFields | 34 |
1 files changed, 25 insertions, 9 deletions
diff --git a/rt/html/Admin/Elements/EditCustomFields b/rt/html/Admin/Elements/EditCustomFields index 1cd3df568..9b1176a40 100644 --- a/rt/html/Admin/Elements/EditCustomFields +++ b/rt/html/Admin/Elements/EditCustomFields @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2007 Best Practical Solutions, LLC %# <jesse@bestpractical.com> %# %# (Except where explicitly superseded by other copyright notices) @@ -22,7 +22,9 @@ %# %# 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., 675 Mass Ave, Cambridge, MA 02139, USA. +%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +%# 02110-1301 or visit their web page on the internet at +%# http://www.gnu.org/copyleft/gpl.html. %# %# %# CONTRIBUTION SUBMISSION POLICY: @@ -45,11 +47,11 @@ %# END BPS TAGGED BLOCK }}} <& /Elements/ListActions, actions => \@results &> -<FORM ACTION="<%$RT::WebPath%><% $m->request_comp->path |n %>" METHOD="POST" NAME="EditCustomFields"> -<INPUT TYPE=HIDDEN NAME="id" VALUE="<% $Object->Id %>"/> -<INPUT TYPE=HIDDEN NAME="ObjectType" VALUE="<% $ObjectType %>"/> -<INPUT TYPE=HIDDEN NAME="SubType" VALUE="<% $SubType %>"/> -<INPUT TYPE=HIDDEN NAME="UpdateCFs" VALUE="1"/> +<form action="<%$RT::WebPath%><% $m->request_comp->path |n %>" method="post" name="EditCustomFields"> +<input type="hidden" class="hidden" name="id" value="<% $Object->Id %>" /> +<input type="hidden" class="hidden" name="ObjectType" value="<% $ObjectType %>" /> +<input type="hidden" class="hidden" name="SubType" value="<% $SubType %>" /> +<input type="hidden" class="hidden" name="UpdateCFs" value="1" /> % if ($Object->Id) { <h2><&|/l&>Global Custom Fields</&></h2> @@ -61,7 +63,7 @@ <& PickCustomFields, CustomFields => \@UnassignedCFs, id => $id, SubType => $SubType &> <& /Elements/Submit, CheckAll => 1, ClearAll => 1 &> -</FORM> +</form> <%INIT> @@ -71,7 +73,7 @@ my (@GlobalCFs, @UnassignedCFs); my $id = $Object->Id; if ($id and !$Object->CurrentUserHasRight('AssignCustomFields')) { - $m->out('<P><i>', loc('(No custom fields)'), '</i></P>'); + $m->out('<p><i>', loc('(No custom fields)'), '</i></p>'); return; } @@ -88,6 +90,20 @@ $ObjectCFs->UnLimit; $ObjectCFs->LimitToObjectId($id); $ObjectCFs->LimitToLookupType($lookup); +# Check sanity of SortOrders +my %SortOrders; +$SortOrders{$_->SortOrder}++ + while ($_ = $ObjectCFs->Next); + +# If there are duplicates, run though and squash them +if (grep {$_ > 1} values %SortOrders) { + my $i = 1; + while (my $ObjectCF = $ObjectCFs->Next) { + $ObjectCF->SetSortOrder($i++); + } + $ObjectCFs->GotoFirstItem; +} + # {{{ deal with moving sortorder of custom fields if ($CustomField and $Move) { my $SourceObj = RT::ObjectCustomField->new($session{'CurrentUser'}); |