[Rt-commit] rt branch, 4.0/rtx-customfield-checkbox-upgrade, created. rt-4.0.8-350-g5846562

? sunnavy sunnavy at bestpractical.com
Tue Feb 11 20:41:13 EST 2014


The branch, 4.0/rtx-customfield-checkbox-upgrade has been created
        at  58465629fd55bb79db03b3f777cbe0f4e62cb95a (commit)

- Log -----------------------------------------------------------------
commit 58465629fd55bb79db03b3f777cbe0f4e62cb95a
Author: sunnavy <sunnavy at bestpractical.com>
Date:   Tue Jan 15 02:51:22 2013 +0800

    upgrade script/doc for RT-Extension-CustomField-Checkbox
    
    of which functionality is integrated into core

diff --git a/configure.ac b/configure.ac
index ce35320..1877369 100755
--- a/configure.ac
+++ b/configure.ac
@@ -409,6 +409,7 @@ dnl Binaries that should be +x
 AC_CONFIG_FILES([
                  etc/upgrade/3.8-branded-queues-extension
                  etc/upgrade/3.8-ical-extension
+                 etc/upgrade/4.0-customfield-checkbox-extension
                  etc/upgrade/split-out-cf-categories
                  etc/upgrade/generate-rtaddressregexp
                  etc/upgrade/upgrade-articles
diff --git a/docs/UPGRADING-4.0 b/docs/UPGRADING-4.0
index ad8d87b..942ba7f 100644
--- a/docs/UPGRADING-4.0
+++ b/docs/UPGRADING-4.0
@@ -28,6 +28,9 @@ docs/web_deployment.pod for current instructions.  The old `fastcgi_server`,
 `webmux.pl`, and `mason_handler.*` files will not work with RT 4.0, and should
 be removed to reduce confusion.
 
+RT::Extension::CustomField::Checkbox has been integrated into core, so you
+MUST uninstall it before upgrading. In addition, you must run
+etc/upgrade/4.0-customfield-checkbox-extension script to convert old data.
 
 =head2 RT_SiteConfig.pm
 
diff --git a/etc/upgrade/4.0-customfield-checkbox-extension.in b/etc/upgrade/4.0-customfield-checkbox-extension.in
new file mode 100644
index 0000000..9e0d1bf
--- /dev/null
+++ b/etc/upgrade/4.0-customfield-checkbox-extension.in
@@ -0,0 +1,86 @@
+#!@PERL@
+# BEGIN BPS TAGGED BLOCK {{{
+#
+# COPYRIGHT:
+#
+# This software is Copyright (c) 1996-2014 Best Practical Solutions, LLC
+#                                          <sales at 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 }}}
+use strict;
+use warnings;
+
+use lib "@LOCAL_LIB_PATH@";
+use lib "@RT_LIB_PATH@";
+
+use RT;
+RT::LoadConfig();
+RT::Init();
+
+use RT::CustomFields;
+my $cfs = RT::CustomFields->new( RT->SystemUser );
+$cfs->{find_disabled_rows} = 1;
+$cfs->Limit(
+    FIELD => 'Type',
+    VALUE => 'SelectCheckbox',
+);
+
+while ( my $cf = $cfs->Next ) {
+    print 'Processing custom field #' . $cf->id . "\n";
+    my ( $ret, $msg ) = $cf->SetType('Select');
+    unless ($ret) {
+        warn "Failed to set custom field #"
+          . $cf->id
+          . " Type to 'Select': $msg\n";
+    }
+
+    ( $ret, $msg ) = $cf->SetRenderType('List');
+    unless ($ret) {
+        warn "Failed to set custom field #"
+          . $cf->id
+          . " RenderType to 'List': $msg\n";
+    }
+}
+
+print "DONE\n";
+
+exit 0;

-----------------------------------------------------------------------


More information about the rt-commit mailing list