[Bps-public-commit] rt-extension-formtools branch master updated. 0.60-117-gb08f859

BPS Git Server git at git.bestpractical.com
Fri Dec 1 20:02:46 UTC 2023


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "rt-extension-formtools".

The branch, master has been updated
       via  b08f859ec1e48f9204e93867d047b6b6372a8668 (commit)
       via  58380d8519ed5514d8053913ec8c32fd2ba3d0d0 (commit)
       via  dbac26cd703eed4413436c4ae4107fe6889849ca (commit)
       via  9cf2a2c48a6ba44d0d293430cd533073a34e14d7 (commit)
       via  43f69ba86d5150f8c19bf50068fdd6213425b1e5 (commit)
       via  8546fd74e6ce6a0af6724c4e743f938feb3e06e5 (commit)
       via  8ab7f8e988712a150cb00df9499a6bb9db4ef54a (commit)
       via  dfb49c358a8ac07ad8c241a7b85ceda1158abfa9 (commit)
       via  3228d6ee3f0c1c6a46cecf8d652dae2325919c22 (commit)
       via  985715c0f42a515bc23bf5f55b4719bb62b22202 (commit)
       via  629e58baa0ca1da9d77284a731746f63ede70b3d (commit)
       via  e80f6f64341c944238edd40a45e12bfe4669d178 (commit)
       via  f69de59afbd7fd7db0cbd04983f840c7a7d0b6a1 (commit)
       via  1cab2e2a139638b8e54d0674a6a5ccab93073f90 (commit)
       via  67fb2ac26029c1b57fe30ee1d131f4c0bc9d3bd2 (commit)
       via  e428dbf0fba430514c1f612c2f08d5df9abad232 (commit)
       via  5c053ff9334891570ec0fd6db9a6e3810056e99e (commit)
       via  7673b5c026e1e59292e41e30c84015c3a418b01a (commit)
       via  defce7e7150c69539ca8b9245ca3bf49f098242f (commit)
       via  a0acc982528c2977ecdd311b78baa65fe3a82359 (commit)
       via  f42ab019e8dc72643ea69bab14baa12148502802 (commit)
       via  95e1c8f70eb518c140e558286550260871bbe823 (commit)
       via  e31ac7a3a65576d6cba631310590a922c23e55ea (commit)
       via  928befa210a50e946917e9664b938a5d0fdb4ba7 (commit)
       via  fd4a310b0c2ece4502f5e3cd8ae0a41d167322ed (commit)
       via  926dd962ff78528552da6bf7fa037bb50cee771b (commit)
       via  5ef404606506d5650c58d1ec05bd7bd4c1bf1ac2 (commit)
       via  a1c76fb948f9dd554746a2daccb74b7160705e63 (commit)
       via  6c458acb1ece4259c82fcde3a5507b26a3415da5 (commit)
       via  601c875b961d3b6ae44e896c45ba490d6ffa6993 (commit)
       via  cde5de999199b776c522a84ec060906b06d4a670 (commit)
       via  8c7d1e0b3a3907a4cf64f2cf38d4e950d9bc6172 (commit)
       via  3e1459cc954fd86a1cf68f43eac4870030ce33ba (commit)
       via  1b8d6c7dfb5e1e8d470ac7e689aaf2f0d4238c37 (commit)
       via  598e9389810907c75c951a3602aec0f48315e39c (commit)
       via  9e1a3d1b50b9c557d619e7910c89cdc0e60d9e89 (commit)
       via  47c6e7f3f020cc3fa0a2806f92dd09541c9d9281 (commit)
       via  3efc7e92be58e8eb186cea0c1be90ec4a1bf20b9 (commit)
       via  9086ba9d552dd8742b318a072993194e0c2b15ae (commit)
       via  9087bcd6fd5c67525efea696575ca2c25afe47b1 (commit)
       via  2375ad6e6d72ec1704381b12ad4bf6825c21936c (commit)
       via  02b6bad382915393f208bff115ea708bde799399 (commit)
       via  b98d5ce91e175ec6393b429cff2b2ff775917afe (commit)
       via  f802b0e5ba09eb9731aeed5bac3f013268f1c740 (commit)
       via  0a7c228334241f9e16cdbcffaa556fc9786eb632 (commit)
       via  6b6a77de305e36d28065b7fb112d8c02f6b87b92 (commit)
       via  26ce234391a9b4bb90c9005946c9a51ca2ca29f2 (commit)
       via  6fd892e0adc4eeb4b2d1649e1a4957ad9ea24614 (commit)
       via  1cc6f84783cc8a25d7b2a14d6eeeee02db2a8fd0 (commit)
       via  1f65090fde5b01ca682b7842248ba67d2e38b2dd (commit)
       via  2d612f085fdddf35c84ce2d1bd9fdd9061443c8d (commit)
       via  bf65881a63c2da86eed2bded28411a9a17ce21ab (commit)
       via  827f574bd6d31cd0717bab6bfdd8916bfc7eb97b (commit)
       via  075699f085165988f1316f1cce14704ae155acef (commit)
       via  5de9b38f31ce3e23e80976bd6895f8ef62d4d623 (commit)
       via  adda559a8036236d8743c1c86b1d5a84ab144219 (commit)
       via  00680b2e017c07f7727b1c03f2d00ea8f1b60db5 (commit)
       via  ff3a00c825a38343f01f2b83b2561eff1dc91e6f (commit)
       via  bb18d652f734805b9738da40bb8b54e88c64d421 (commit)
       via  ff0dc2de3b83abd9f78a9151ec832374161af623 (commit)
       via  88aff705bd26edabb8abbc968a54429c33f91fc0 (commit)
       via  5d61baee7d6a89449646f6c8c49a111004c07d19 (commit)
       via  256c760d1427b9cefe191706a63dd098af25e009 (commit)
       via  2fa490ea3b9ac2430b02a4e39de95b33c761ec6d (commit)
       via  85bebb05622ba7610de7ef580913588efe6bcd6d (commit)
       via  f4f6ea00b5f6a972446f83fed6f64c8c37ff31f4 (commit)
       via  7611d1c995ef3b0abc932a5d7ff22d82a9da1505 (commit)
       via  a5121cfe2572bd4343034a07b9c42ae235368fee (commit)
       via  841da6cc08527970a8b84ce88a2858deef7a0636 (commit)
       via  4c3f7620d79e7bb6183fb85e068c36802879eaf6 (commit)
       via  61d6f10fc456a778762a80c430a0b38588ebd5ba (commit)
       via  c5dbf54e18b8e5c8dd845d5252018091ab0e34cb (commit)
       via  863cec90d45c0b691a8dad6fc159ea022e32833e (commit)
       via  ca165b2f231ead2a88b2ae5862463807cc163ad8 (commit)
       via  8ad9f90ad8f85788454ee09d645f8139a1ca08b6 (commit)
       via  523f857c07041523f4ce09c9efd64bc81f34e20f (commit)
       via  37be40da238d22c94e12923089b156d09e5f512a (commit)
       via  745ef34354f4c10e4cb8de0115818cbfad47473e (commit)
       via  489f1a624aa1e94166caa05ae9c941a0d46ec24e (commit)
       via  7ea379bd4854ef3861b459e694ff9d16d9d32fe2 (commit)
       via  84c3dd1278592506cabbbb8e4d55ca047ed737ce (commit)
       via  2dff55212f2f659cbce609bf7a46c78f7657caa7 (commit)
       via  fb77f2726982b6f26f453c2f3ffcb5a3ebcf208c (commit)
       via  a05114f948884441090591afa516417aec4e3f28 (commit)
       via  fb9708c226cf0c435d3cc61165acf8af2da676d5 (commit)
       via  ad058adc128aa77957503d7af08636d82407940c (commit)
       via  d5b67dfec6666e4f0038756995c8a13e02e322c7 (commit)
       via  8b09c335da5af3d0360a727be64bf2cd129c6dbe (commit)
       via  03ce4ee935190e379769071c5542fbabd72327cb (commit)
       via  92009cbf35858819e434ae99d2bd7fc5f4bf8ec0 (commit)
       via  47b3027da90b87b80e09e8af4ec9bb5dbb1fcf4f (commit)
       via  fcea9a6e057a25a0f124502da1496a0719ec1767 (commit)
       via  d32cbe0b52ce78b6e1536370cecfeadac006f3f0 (commit)
       via  1aa048178a00e9dcec566f4232796cdff9c7ead5 (commit)
       via  7bdb20a3ab4b724e7027f0dc4ebedb60b5ff0e78 (commit)
       via  e82b385f37d5b5885fe3dbb347d843bdc235797a (commit)
       via  143c3aaf1c889c6fb7c13f8e6f69afe962879004 (commit)
       via  c8a2ec6d9c733d1270db113ea053d796d65d81fa (commit)
       via  1de8428b9598a7cc49b0d2d8b01ccabc8a6e6aa7 (commit)
       via  85900317dca80df473fbafa8b76418eef036e1fb (commit)
       via  b1e90fe5c3ad0b633fd0580779758ddc67832111 (commit)
       via  8f29becf851b0008f2f5c098468f461b24dd8389 (commit)
       via  733ff241165aa8945bac56918ec04ad7276d651e (commit)
       via  99584f1d93e40808302e43fc70590ea0805d07a1 (commit)
       via  b962fdd43039d9b29d2eb3692f48d8640bdd7843 (commit)
       via  422f6a6bcb2754f64f38c193e8a6c8731f9b1a74 (commit)
       via  e649e992f3c14fae17c00196b452ed0ccb8cd6e8 (commit)
       via  ff6d0ac06a7adfbbfc618e08460f647af2807926 (commit)
       via  8ac4f6caf61aa8dc25c715b5f5a2b21f7cb948e3 (commit)
       via  6e8a44fe07c82304f36b080197c6c7be67a1ddb9 (commit)
       via  f48884ee2b567433d3c288b7e021e67af5ecd8d6 (commit)
       via  9ef88c4a6d6da87bc35d052b4a911f500433369d (commit)
       via  fa89e10fe2e4cc2555d239f838a6a967c1b27185 (commit)
       via  413f78b5e974ee18813fc830e5e1ac07d35a0a08 (commit)
       via  e9989c1119285a42bdf62d74b7e1b16641567c21 (commit)
       via  6e5109aff433e0b96aa7abcf8dba7d44d42693ef (commit)
       via  51d16014358ce63a6afa790f64a311c7e6c41e7e (commit)
      from  07a75b651052ff1ab0ac4225b957f47d17dbeac8 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit b08f859ec1e48f9204e93867d047b6b6372a8668
Merge: 07a75b6 58380d8
Author: sunnavy <sunnavy at bestpractical.com>
Date:   Fri Dec 1 14:22:23 2023 -0500

    Merge branch 'version-1-docs'

diff --cc Changes
index 198109e,3d2b9e3..00b2975
--- a/Changes
+++ b/Changes
@@@ -1,8 -1,50 +1,46 @@@
  Revision history for RT-Extension-FormTools
  
 -0.56 2023-11-30
++1.0 2023-12-01
++ - Save queue name instead of id for better portability
+  - Show a message to indicate there are pending changes to save
+  - Correctly show the first page after a page deletion
+  - Make sure there is always room to drop new form fields on a page
+  - Display an alert when leaving a page with pending changes
+  - Label Core Fields separately from Custom Fields in the editor
+  - Fix bugs saving hr and textarea elements
 - - Name "Next" button to make sure the form has data to submit, avoiding
 -   a data truncated error on form POST
++ - Name "Next" button to make sure the form has data to submit, avoiding a data truncated error on form POST
+  - Fix handling of internal validation arguments
+  - Allow customization of alignment of <p> elements
+  - Fix bug causing duplicate checkbox IDs when adding new items
 - - Allow fields to be marked as hidden (allows form admins to set values
 -   that form users can't edit)
++ - Allow fields to be marked as hidden (allows form admins to set values that form users can't edit)
+  - Fix badge and text alignment in field list
 - - Allow client side validation (fields on forms may be required, but
 -   not required when creating/editing a ticket)
++ - Allow client side validation (fields on forms may be required, but not required when creating/editing a ticket)
+  - Grant all users the right to see/set custom field values on forms
+  - Always enable core CF validations
 - - Support dependent fields based on selection of values in select/radio
 -   inputs
++ - Support dependent fields based on selection of values in select/radio inputs
+  - Fix browser-related bugs in selectpicker controls
+  - Skip check for required fields when pressing Back button on form
+  - Clear CF invalid CF values when pressing Back button
+  - Abort in advance if form user lacks rights to create tickets
+  - Remove label from content fields
+  - Show Required for fields marked required in form
+  - Allow checkboxes to be fully clickable
 -
 -0.55 2023-10-31
+  - Make core and custom fields consistent with other HTML elements
+  - Sync page name and tab text on name update
+  - Remove duplicate form tag
+  - Put Select and Create under one menu (for consistency)
+  - Make placeholders appear lighter than other text elements
+  - Validate errors in real time
+  - Fix HTML element IDs for custom fields
+  - On form edit page, show label text next to CF names
+  - Rename Save button on modal popups to Update
+  - Fix edit link for newly added items
+  - Center paragraph content on form pages
 -
 -0.54 2023-10-30
+  - Create a graphical editor for forms
+ 
 +0.60 2022-07-06
 + - Migrate to RT 5
 +
  0.53 2022-05-03
  
   - Update example to render radio using RT core feature
diff --cc META.yml
index 5420ff8,ff39525..a549372
--- a/META.yml
+++ b/META.yml
@@@ -23,6 -25,6 +25,6 @@@ requires
  resources:
    license: http://opensource.org/licenses/gpl-license.php
    repository: https://github.com/bestpractical/rt-extension-formtools
- version: '0.60'
 -version: '0.56'
++version: '1.0'
  x_module_install_rtx_version: '0.43'
  x_requires_rt: 5.0.0
diff --cc README
index 2e3d8ff,6c8627a..d27f80e
--- a/README
+++ b/README
@@@ -1,13 -1,16 +1,12 @@@
  NAME
-     RT-Extension-FormTools - Help write multi-page ticket creation wizards
+     RT-Extension-FormTools - Create multi-page ticket creation wizards for
+     RT
  
  DESCRIPTION
-     This extension provides scaffolding to make it simpler to create guided
-     multi-page ticket creation wizards. It merely provides useful Mason
-     components to accomplish this task; it does not provide any UI.
-     Administrators may use this extension as a base upon which to write
-     their own forms in Mason.
+     Starting in version 1.00, this extension provides a full UI for RT
+     administrators to create multi-page form wizards to collect information
+     and create a ticket.
  
 -    <p><img
 -    src="http://static.bestpractical.com/images/formtools/formtools-modify-p
 -    age-example-shadow.png" alt="FormTools Modify Page" /></p>
 -
  RT VERSION
      Works with RT 5.
  
@@@ -27,7 -30,75 +26,75 @@@ INSTALLATIO
  
      Restart your webserver
  
- COMPONENTS
+ USAGE
+   Creating Forms
+    Modify
+     Once installed and activated, users with the SuperUser or AdminForms
+     right can go to Admin > FormTools > Create to build new forms. Use
+     Select to view a list of existing forms.
+ 
+     When you initially create a form, you select the queue that the ticket
+     will be created in after a user fills out the form. The selected queue
+     will also determine which custom fields are available in the form
+     builder.
+ 
+     The Modify page allows you to configure all of the pages for the
+     selected form. The Components bar on the left lists HTML elements, Core
+     RT fields, and all custom fields available to the queue selected for the
+     current form. To build pages in your form, drag elements from the left
+     into the Content area in the FormTools Pages section on the right.
+ 
+     You can drag elements up and down to arrange content for each page. To
+     configure elements or add text content, click the pencil icon.
+ 
+     Click the plus (+) to create new pages. To change the order of the
+     pages, click the gearbox and update the sort order.
+ 
+    Description
+     Your forms will be made available to users on a dedicated Forms page in
 -    the RT web UI. Forms can be access by privileged users in the main RT
++    the RT web UI. Forms can be accessed by privileged users in the main RT
+     interface and by unprivilged users in the self service interface.
+ 
+     The Description tab allows you to upload an icon and provide text to
+     show on this forms page. Include an icon that represents what the form
+     is intended for and include a description to help users pick the right
+     form for the right task.
+ 
+    Advanced
+     The advanced page shows the raw JSON representation of the configured
+     pages in your form. We recommend no editing the JSON directly. However,
+     you can copy the content and paste it into another page if you want to
+     migrate a form from development to production. You can also save the
+     JSON to a file and use the rt-insert-formtools-config utility to load it
+     into another RT.
+ 
+    Rights
+     You can control access to forms by granting the ShowForm right for
+     groups or users. By default, only SuperUsers can see forms, so you need
+     to grant ShowForm to users or groups for them to be visible.
+ 
+   Using Forms
+     Privileged and unprivileged users can find a list of available forms at
+     Home > Forms. Users need to have the ShowForm right to see forms listed.
+ 
+     Once the form is filled out, it will create a ticket, so form users also
+     need CreateTicket in the queue where the form will be created. FormTools
+     checks this at the beginning of a form and shows the user a message if
+     they don't have sufficient rights.
+ 
+ Internals
+     In earlier versions, this extension provided code-level Mason templates
+     as helpers to manually code forms. We believe pages created with these
+     earlier versions will continue to work, but it's possible they may stop
+     working at some point as we continue to work on FormTools. If you have
 -    older FormTools code, it's safest to run with version 0.55. Going
++    older FormTools code, it's safest to run with version 0.60. Going
+     forward, we recommend converting your forms to the new interface using
+     the new UI.
+ 
+     The documentation below is retained as the components are all still
+     available.
+ 
+   Mason Components
      See ex/RT-Example-FormTools/ for an example extension written using this
      module.
  
diff --cc lib/RT/Extension/FormTools.pm
index ee2de35,7121373..0f1ecf5
--- a/lib/RT/Extension/FormTools.pm
+++ b/lib/RT/Extension/FormTools.pm
@@@ -3,7 -3,92 +3,92 @@@ use strict
  
  package RT::Extension::FormTools;
  
- our $VERSION = '0.60';
 -our $VERSION = '0.56';
++our $VERSION = '1.0';
+ 
+ RT->AddStyleSheets('rt-extension-formtools.css');
+ RT->AddJavaScript('rt-extension-formtools.js');
+ 
+ RT::System->AddRight( Admin => AdminForm => 'Create, modify and disable forms' ); # loc
+ 
+ use Time::HiRes 'time';
+ use Digest::SHA 'sha1_hex';
+ 
+ # page ids are based on current time, keep 100 recent ids in case CPU is really fast
+ my @recent_page_ids;
+ 
+ sub GeneratePageId {
+     shift if ( $_[0] // '' ) eq __PACKAGE__;
+     my $form = shift;
+     my %current;
+     if ($form) {
+         %current = map { $_ => 1 } keys %{ $form->{'formtools-pages'} };
+     }
+ 
+     my %skip = (
+         map { $_ => 1 } @recent_page_ids,
+         $form && $form->{'formtools-pages'} ? keys %{ $form->{'formtools-pages'} } : ()
+     );
+ 
+     my $page_id = _GeneratePageId();
+ 
+     for ( 1 .. 100 ) {
+         if ( $skip{$page_id} ) {
+             $page_id = _GeneratePageId();
+         }
+         else {
+             push @recent_page_ids, $page_id;
+             shift @recent_page_ids while @recent_page_ids > 100;
+             return $page_id;
+         }
+     }
+     RT->Logger->error("Could not generate a new page id");
+     return;
+ }
+ 
+ sub _GeneratePageId {
+     return substr( sha1_hex( time . int rand 10000 ), 0, 8 );
+ }
+ 
+ {
+     package RT::Attribute;
+     no warnings 'redefine';
+     use Role::Basic 'with';
+     with "RT::Record::Role::Rights";
+ 
+     my $orig_available_rights = RT::Attribute->can('AvailableRights');
+     *AvailableRights = sub {
+         my $self = shift;
+ 
+         if ( $self->__Value('Name') eq 'FormTools Form' ) {
+             return { ShowForm => 'View forms' };
+         }
+         return $orig_available_rights->($self, @_);
+     };
+ 
+     my $orig_right_categories = RT::Attribute->can('RightCategories');
+     *RightCategories = sub {
+         my $self = shift;
+ 
+         if ( $self->__Value('Name') eq 'FormTools Form' ) {
+             return { ShowForm => 'General' };
+         }
+         return $orig_right_categories->($self, @_);
+     };
+ 
+     my $orig_current_user_has_right = RT::Attribute->can('CurrentUserHasRight');
+     *CurrentUserHasRight = sub {
+         my $self  = shift;
+         my $right = shift;
+         if ( $self->__Value('Name') eq 'FormTools Form' ) {
+             return 1 if $self->CurrentUser->HasRight( Object => RT->System, Right => 'AdminForm' );
+             $right = 'ShowForm' if $right eq 'display';
+             return $self->CurrentUser->HasRight( Object => $self, Right => $right );
+         }
+         return $orig_current_user_has_right->( $self, $right, @_ );
+     };
+ 
+     RT::Attribute->AddRight( General => ShowForm => 'View forms' ); # loc
+ }
  
  =head1 NAME
  
@@@ -11,11 -96,12 +96,11 @@@ RT-Extension-FormTools - Create multi-p
  
  =head1 DESCRIPTION
  
- This extension provides scaffolding to make it simpler to create guided
- multi-page ticket creation wizards.  It merely provides useful Mason
- components to accomplish this task; it does not provide any UI.
- Administrators may use this extension as a base upon which to write
- their own forms in Mason.
+ Starting in version 1.00, this extension provides a full UI for
+ RT administrators to create multi-page form wizards to collect
+ information and create a ticket.
+ 
 -<p><img src="http://static.bestpractical.com/images/formtools/formtools-modify-page-example-shadow.png"
 -alt="FormTools Modify Page" /></p>
++=for html <p><img src="http://static.bestpractical.com/images/formtools/formtools-modify-page-example-shadow.png" alt="FormTools Modify Page" /></p>
  
  =head1 RT VERSION
  
@@@ -47,7 -133,84 +132,84 @@@ Add this line
  
  =back
  
- =head1 COMPONENTS
+ =head1 USAGE
+ 
+ =head2 Creating Forms
+ 
+ =head3 Modify
+ 
+ Once installed and activated, users with the SuperUser or
+ AdminForms right can go to Admin > FormTools > Create to build
+ new forms. Use Select to view a list of existing forms.
+ 
+ When you initially create a form, you select the queue that the ticket
+ will be created in after a user fills out the form. The selected
+ queue will also determine which custom fields are available in the
+ form builder.
+ 
+ The Modify page allows you to configure all of the pages for the
+ selected form. The Components bar on the left lists HTML elements,
+ Core RT fields, and all custom fields available to the queue selected
+ for the current form. To build pages in your form, drag elements from
+ the left into the Content area in the FormTools Pages section on the
+ right.
+ 
+ You can drag elements up and down to arrange content for each page.
+ To configure elements or add text content, click the pencil icon.
+ 
+ Click the plus (+) to create new pages. To change the order of the pages,
+ click the gearbox and update the sort order.
+ 
+ =head3 Description
+ 
+ Your forms will be made available to users on a dedicated Forms page in
 -the RT web UI. Forms can be access by privileged users in the main RT
++the RT web UI. Forms can be accessed by privileged users in the main RT
+ interface and by unprivilged users in the self service interface.
+ 
+ The Description tab allows you to upload an icon and provide text to show
+ on this forms page. Include an icon that represents what the form is
+ intended for and include a description to help users pick the right form
+ for the right task.
+ 
+ =head3 Advanced
+ 
+ The advanced page shows the raw JSON representation of the configured pages
+ in your form. We recommend no editing the JSON directly. However, you can
+ copy the content and paste it into another page if you want to migrate
+ a form from development to production. You can also save the JSON to a file
+ and use the C<rt-insert-formtools-config> utility to load it into another RT.
+ 
+ =head3 Rights
+ 
+ You can control access to forms by granting the ShowForm right for groups
+ or users. By default, only SuperUsers can see forms, so you need to grant
+ ShowForm to users or groups for them to be visible.
+ 
+ =head2 Using Forms
+ 
+ Privileged and unprivileged users can find a list of available forms
+ at Home > Forms. Users need to have the ShowForm right to see forms
+ listed.
+ 
+ Once the form is filled out, it will create a ticket, so form users
+ also need CreateTicket in the queue where the form will be created.
+ FormTools checks this at the beginning of a form and shows the user a
+ message if they don't have sufficient rights.
+ 
+ =head1 Internals
+ 
+ In earlier versions, this extension provided code-level Mason templates
+ as helpers to manually code forms. We believe pages created with these
+ earlier versions will continue to work, but it's possible they may stop
+ working at some point as we continue to work on FormTools. If you have
 -older FormTools code, it's safest to run with version 0.55. Going forward,
++older FormTools code, it's safest to run with version 0.60. Going forward,
+ we recommend converting your forms to the new interface using the
+ new UI.
+ 
+ The documentation below is retained as the components are all still
+ available.
+ 
+ =head2 Mason Components
  
  See F<ex/RT-Example-FormTools/> for an example extension written using
  this module.

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

Summary of changes:
 .gitignore                                         |   1 +
 Changes                                            |  38 ++
 MANIFEST                                           |  26 +
 META.yml                                           |   8 +-
 Makefile.PL                                        |  24 +
 README                                             | 108 ++-
 bin/rt-insert-formtools-config.in                  |  84 +++
 etc/sample_form.json                               | 106 +++
 html/Admin/Elements/FormToolsHelp                  |  54 ++
 html/Admin/FormTools/Advanced.html                 | 119 ++++
 html/Admin/FormTools/Create.html                   |  78 +++
 html/Admin/FormTools/Describe.html                 | 114 ++++
 html/Admin/FormTools/GroupRights.html              |  37 ++
 html/Admin/FormTools/Modify.html                   | 738 +++++++++++++++++++++
 html/Admin/FormTools/UserRights.html               |  37 ++
 html/Admin/FormTools/index.html                    | 138 ++++
 html/Callbacks/FormTools/Elements/Tabs/Privileged  |  53 ++
 html/Callbacks/FormTools/Elements/Tabs/SelfService |  11 +
 html/Elements/Forms/ListForms                      |  35 +
 html/Elements/Forms/ShowFormGraphic                |  31 +
 html/Elements/Forms/ShowFormIcon                   |  28 +
 html/FormTools/Field                               |  94 ++-
 html/FormTools/Form                                |  46 +-
 html/FormTools/ShowChoices                         |  18 +-
 html/Forms.html                                    |   4 +
 html/Forms/dhandler                                | 345 ++++++++++
 html/NoAuth/Helpers/FormLogo/dhandler              |  17 +
 html/SelfService/Forms.html                        |   4 +
 html/SelfService/Forms/dhandler                    |   2 +
 inc/Module/Install.pm                              |   2 +-
 inc/Module/Install/Base.pm                         |   2 +-
 inc/Module/Install/Can.pm                          |   2 +-
 inc/Module/Install/Fetch.pm                        |   2 +-
 inc/Module/Install/Include.pm                      |   2 +-
 inc/Module/Install/Makefile.pm                     |   2 +-
 inc/Module/Install/Metadata.pm                     |  12 +-
 inc/Module/Install/Substitute.pm                   | 131 ++++
 inc/Module/Install/Win32.pm                        |   2 +-
 inc/Module/Install/WriteAll.pm                     |   2 +-
 inc/YAML/Tiny.pm                                   |   4 +-
 lib/RT/Extension/FormTools.pm                      | 231 ++++++-
 lib/RT/Interface/Web_Vendor.pm                     |  26 +
 ...rt-custom-labels-for-ValidateCustomFields.patch |  63 ++
 static/css/rt-extension-formtools.css              |  92 +++
 static/js/rt-extension-formtools.js                | 284 ++++++++
 45 files changed, 3153 insertions(+), 104 deletions(-)
 create mode 100755 bin/rt-insert-formtools-config.in
 create mode 100644 etc/sample_form.json
 create mode 100644 html/Admin/Elements/FormToolsHelp
 create mode 100644 html/Admin/FormTools/Advanced.html
 create mode 100644 html/Admin/FormTools/Create.html
 create mode 100644 html/Admin/FormTools/Describe.html
 create mode 100644 html/Admin/FormTools/GroupRights.html
 create mode 100644 html/Admin/FormTools/Modify.html
 create mode 100644 html/Admin/FormTools/UserRights.html
 create mode 100644 html/Admin/FormTools/index.html
 create mode 100644 html/Callbacks/FormTools/Elements/Tabs/Privileged
 create mode 100644 html/Callbacks/FormTools/Elements/Tabs/SelfService
 create mode 100644 html/Elements/Forms/ListForms
 create mode 100644 html/Elements/Forms/ShowFormGraphic
 create mode 100644 html/Elements/Forms/ShowFormIcon
 create mode 100644 html/Forms.html
 create mode 100644 html/Forms/dhandler
 create mode 100644 html/NoAuth/Helpers/FormLogo/dhandler
 create mode 100644 html/SelfService/Forms.html
 create mode 100644 html/SelfService/Forms/dhandler
 create mode 100644 inc/Module/Install/Substitute.pm
 create mode 100644 lib/RT/Interface/Web_Vendor.pm
 create mode 100644 patches/Support-custom-labels-for-ValidateCustomFields.patch
 create mode 100644 static/css/rt-extension-formtools.css
 create mode 100644 static/js/rt-extension-formtools.js


hooks/post-receive
-- 
rt-extension-formtools


More information about the Bps-public-commit mailing list