<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://rt-wiki.bestpractical.com/index.php?action=history&amp;feed=atom&amp;title=ConvertMultiSelectToCheckboxes</id>
	<title>ConvertMultiSelectToCheckboxes - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://rt-wiki.bestpractical.com/index.php?action=history&amp;feed=atom&amp;title=ConvertMultiSelectToCheckboxes"/>
	<link rel="alternate" type="text/html" href="https://rt-wiki.bestpractical.com/index.php?title=ConvertMultiSelectToCheckboxes&amp;action=history"/>
	<updated>2026-08-21T18:05:06Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>https://rt-wiki.bestpractical.com/index.php?title=ConvertMultiSelectToCheckboxes&amp;diff=631&amp;oldid=prev</id>
		<title>Admin: 2 revisions imported</title>
		<link rel="alternate" type="text/html" href="https://rt-wiki.bestpractical.com/index.php?title=ConvertMultiSelectToCheckboxes&amp;diff=631&amp;oldid=prev"/>
		<updated>2016-04-06T20:03:34Z</updated>

		<summary type="html">&lt;p&gt;2 revisions imported&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;This has been tested on RT 3.4.4 with scriptactulous.js already loaded in Header.&lt;br /&gt;
&lt;br /&gt;
Replace [[EditCustomFieldSelect]] with the following, or see [http://search.cpan.org/~ruz/RT-Extension-CustomField-Checkbox/ RT::Extension::CustomField::Checkbox]&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;%# BEGIN BPS TAGGED BLOCK {{{&lt;br /&gt;
 %#&lt;br /&gt;
 %# COPYRIGHT:&lt;br /&gt;
 %#&lt;br /&gt;
 %# This software is Copyright (c) 1996-2005 Best Practical Solutions, LLC&lt;br /&gt;
 %#                                          &amp;amp;lt;jesse@bestpractical.com&amp;amp;gt;&lt;br /&gt;
 %#&lt;br /&gt;
 %# (Except where explicitly superseded by other copyright notices)&lt;br /&gt;
 %#&lt;br /&gt;
 %#&lt;br /&gt;
 %# LICENSE:&lt;br /&gt;
 %#&lt;br /&gt;
 %# This work is made available to you under the terms of Version 2 of&lt;br /&gt;
 %# the GNU General Public License. A copy of that license should have&lt;br /&gt;
 %# been provided with this software, but in any event can be snarfed&lt;br /&gt;
 %# from www.gnu.org.&lt;br /&gt;
 %#&lt;br /&gt;
 %# This work is distributed in the hope that it will be useful, but&lt;br /&gt;
 %# WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 %# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU&lt;br /&gt;
 %# General Public License for more details.&lt;br /&gt;
 %#&lt;br /&gt;
 %# You should have received a copy of the GNU General Public License&lt;br /&gt;
 %# along with this program; if not, write to the Free Software&lt;br /&gt;
 %# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.&lt;br /&gt;
 %#&lt;br /&gt;
 %#&lt;br /&gt;
 %# CONTRIBUTION SUBMISSION POLICY:&lt;br /&gt;
 %#&lt;br /&gt;
 %# (The following paragraph is not intended to limit the rights granted&lt;br /&gt;
 %# to you to modify and distribute this software under the terms of&lt;br /&gt;
 %# the GNU General Public License and is only of importance to you if&lt;br /&gt;
 %# you choose to contribute your changes and enhancements to the&lt;br /&gt;
 %# community by submitting them to Best Practical Solutions, LLC.)&lt;br /&gt;
 %#&lt;br /&gt;
 %# By intentionally submitting any modifications, corrections or&lt;br /&gt;
 %# derivatives to this work, or any other work intended for use with&lt;br /&gt;
 %# Request Tracker, to Best Practical Solutions, LLC, you confirm that&lt;br /&gt;
 %# you are the copyright holder for those contributions and you grant&lt;br /&gt;
 %# Best Practical Solutions,  LLC a nonexclusive, worldwide, irrevocable,&lt;br /&gt;
 %# royalty-free, perpetual, license to use, copy, create derivative&lt;br /&gt;
 %# works based on those contributions, and sublicense and distribute&lt;br /&gt;
 %# those contributions and any derivatives thereof.&lt;br /&gt;
 %#&lt;br /&gt;
 %# END BPS TAGGED BLOCK }}}&lt;br /&gt;
 &lt;br /&gt;
       &amp;amp;lt;select name=&amp;quot;&amp;amp;lt;%$NamePrefix%&amp;amp;gt;&amp;amp;lt;%$CustomField-&amp;amp;gt;Id%&amp;amp;gt;-Values&amp;quot;&lt;br /&gt;
         size=&amp;quot;&amp;amp;lt;%$Rows%&amp;amp;gt;&amp;quot;&lt;br /&gt;
         id=&amp;quot;&amp;amp;lt;%$id%&amp;amp;gt;&amp;quot;&lt;br /&gt;
         &amp;amp;lt;% $Multiple &amp;amp;amp;&amp;amp;amp; &amp;#039;MULTIPLE&amp;#039; %&amp;amp;gt;&amp;amp;gt;&lt;br /&gt;
 % my $selected;&lt;br /&gt;
 % my $CFVs = $CustomField-&amp;amp;gt;Values;&lt;br /&gt;
 % while ($CFVs and my $value = $CFVs-&amp;amp;gt;Next ) {&lt;br /&gt;
         &amp;amp;lt;option value=&amp;quot;&amp;amp;lt;%$value-&amp;amp;gt;Name%&amp;amp;gt;&amp;quot;&lt;br /&gt;
 % if ($Values) {&lt;br /&gt;
             &amp;amp;lt;% $Values-&amp;amp;gt;HasEntry($value-&amp;amp;gt;Name) &amp;amp;amp;&amp;amp;amp; ($selected = 1) &amp;amp;amp;&amp;amp;amp; &amp;#039;SELECTED&amp;#039; %&amp;amp;gt;&lt;br /&gt;
 % } elsif ($Default) {&lt;br /&gt;
             &amp;amp;lt;% ($Default eq $value-&amp;amp;gt;Name) &amp;amp;amp;&amp;amp;amp; ($selected = 1) &amp;amp;amp;&amp;amp;amp; &amp;#039;SELECTED&amp;#039; %&amp;amp;gt;&lt;br /&gt;
 % }&lt;br /&gt;
             &amp;amp;gt;&amp;amp;lt;% $value-&amp;amp;gt;Name%&amp;amp;gt;&amp;amp;lt;/option&amp;amp;gt;&lt;br /&gt;
 % }&lt;br /&gt;
         &amp;amp;lt;option value=&amp;quot;&amp;quot; &amp;amp;lt;% !$selected &amp;amp;amp;&amp;amp;amp; &amp;#039;SELECTED&amp;#039; %&amp;amp;gt;&amp;amp;gt;&amp;amp;lt;&amp;amp;amp;|/l&amp;amp;amp;&amp;amp;gt;(no value)&amp;amp;lt;/&amp;amp;amp;&amp;amp;gt;&amp;amp;lt;/option&amp;amp;gt;&lt;br /&gt;
       &amp;amp;lt;/select&amp;amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 %if ($Checkboxes) {&lt;br /&gt;
 % # create a checkbox interface for the selection&lt;br /&gt;
 &lt;br /&gt;
   &amp;amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   Element.hide(&amp;#039;&amp;amp;lt;%$id%&amp;amp;gt;&amp;#039;);&lt;br /&gt;
 &lt;br /&gt;
   $(&amp;#039;&amp;amp;lt;%$id%&amp;amp;gt;&amp;#039;).checbox_interface = Builder.node(&amp;#039;div&amp;#039;);&lt;br /&gt;
   $(&amp;#039;&amp;amp;lt;%$id%&amp;amp;gt;&amp;#039;).parentNode.insertBefore($(&amp;#039;&amp;amp;lt;%$id%&amp;amp;gt;&amp;#039;).checbox_interface, $(&amp;#039;&amp;amp;lt;%$id%&amp;amp;gt;&amp;#039;));&lt;br /&gt;
   for (var idx in $(&amp;#039;&amp;amp;lt;%$id%&amp;amp;gt;&amp;#039;).options) {&lt;br /&gt;
 &lt;br /&gt;
     var option = $(&amp;#039;&amp;amp;lt;%$id%&amp;amp;gt;&amp;#039;).options[idx];&lt;br /&gt;
 &lt;br /&gt;
     if (option.value) {&lt;br /&gt;
       var new_checkbox = Builder.node(&amp;#039;input&amp;#039;,{type:&amp;#039;checkbox&amp;#039;});&lt;br /&gt;
 &lt;br /&gt;
       $(&amp;#039;&amp;amp;lt;%$id%&amp;amp;gt;&amp;#039;).checbox_interface.appendChild(Builder.node(&amp;#039;div&amp;#039;, {}, [&lt;br /&gt;
         new_checkbox,&lt;br /&gt;
         option.value&lt;br /&gt;
       ]));&lt;br /&gt;
 &lt;br /&gt;
       new_checkbox.selected = option.selected;&lt;br /&gt;
 &lt;br /&gt;
       Event.observe(new_checkbox, &amp;#039;click&amp;#039;, function(event) {&lt;br /&gt;
 &lt;br /&gt;
         if (this.selected) {&lt;br /&gt;
           this.selected = false;&lt;br /&gt;
         }&lt;br /&gt;
         else {&lt;br /&gt;
           this.selected = true;&lt;br /&gt;
         }&lt;br /&gt;
 &lt;br /&gt;
       }.bindAsEventListener(option));&lt;br /&gt;
     }&lt;br /&gt;
     else {&lt;br /&gt;
 &lt;br /&gt;
       option.selected = false;&lt;br /&gt;
     }&lt;br /&gt;
   }&lt;br /&gt;
 &lt;br /&gt;
   &amp;amp;lt;/script&amp;amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 % }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &amp;amp;lt;%INIT&amp;amp;gt;&lt;br /&gt;
 my $id = $NamePrefix . $CustomField-&amp;amp;gt;Id;&lt;br /&gt;
 &amp;amp;lt;/%INIT&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;%ARGS&amp;amp;gt;&lt;br /&gt;
 $Object =&amp;amp;gt; undef&lt;br /&gt;
 $CustomField =&amp;amp;gt; undef&lt;br /&gt;
 $NamePrefix =&amp;amp;gt; undef&lt;br /&gt;
 $Default =&amp;amp;gt; undef&lt;br /&gt;
 $Values =&amp;amp;gt; undef&lt;br /&gt;
 $Multiple =&amp;amp;gt; 0&lt;br /&gt;
 $Checkboxes =&amp;amp;gt; undef&lt;br /&gt;
 $Cols&lt;br /&gt;
 $Rows&lt;br /&gt;
 &amp;amp;lt;/%ARGS&amp;amp;gt;&lt;br /&gt;
 &amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>