Revision history for RT-Extension-ConditionalCustomFields 1.15 2024-05-16 - Fix errors on admin CF where there is no ContextObect 1.15 2024-05-13 - Fix conflict with bootsrap collapse - Replace trigger() by triggerHandler() also for change events - Fix errors when user has no right on CFs but on queue 1.14 2023-11-09 - Fix unneeded patches for RT up to 5.0.5. 1.13 2023-10-13 - Do NOT Limit to Dropdown CF retriggering change on Condition CF after inline form has been made visible - No need to play with collapse - Detect visibility of inline form from form input rather than .ticket-info-cfs div which is not unique with multiple groupings - Process dynamically HTML Condition CF 1.12 2023-10-12 - Fix Mason filters, should be not filtered, not html not js - Add some doc about sort order on cascaded CF - Limit to inline editing retriggering change on Dropdown Condition CF after inline form has been made visible - Fix bad variable name - Fix triggering show needed for cascaded CFs (wrongly deleted by commit #fcf12c1) 1.11 2023-10-11 - Retrigger change on Dropdown Condition CF after bootstrap dropdown has made it visible - Retrigger change on Dropdown Condition CF after inline form has been made visible - Check whether condition is met for inline editing 1.10 2023-10-10 - Really avoid JS error raised by bootstrap when triggering show on radio button (commit #62c0528 still raised error with chromium) - Update links to 5.0.4 RT docs - Process HTML Condition CF, only in a static way for now 1.09 2023-06-01 - Add patch for RT 5.0.4 - Update copyright year to 2023 1.08 2022-12-14 - Update copyright date 1.07 2022-12-14 - Update author's name 1.06 2022-12-12 - Update selector to hide/show queues/article according to RT5 upgrades - Update computing selector to Combobox/Date/DateTime according to RT5 upgrades - Fix test that cascaded List child CF is hidden when parent conditioned is changed to failed - Fix event listeners for cascaded List child CF which shoul be on HTML container not on radio buttons - Avoid JS error raised by bootstrap when triggering show on radio button - Show bootstrap collapse box when CF is shown - Increase LWP timeout and add some sleeps to please phantomjs - Skip some tests since phantomjs randomly messes up with bootstrap - Add call to RT->Config->PostLoadCheck when changing CustomFieldGroupings to comply with update to 5.0.3 - Fix jQuery selector - Update test to take into account builtin attributes according to RT version - Add patch for RT 5.0 - Upgrade to RT 5.0.3 - Update parsing of CustomFieldGroupings config option to comply with update to 5.0.3 1.05 2022-12-08 - Add a second ticket in tests so ticket id is distinct from queue id - Fix checking whether condition cf is applied to current object 1.04 2019-12-19 - Add SelfServiceCustomFieldGroupings configuration variable to allow cfs groupings in SelfService 1.03 2019-12-03 - huggyb: When edit ignore cf grouping in selfservice - Fix #8 mandatory ConditionalCF: in creation, object is null Ticket, not Queue 1.02 2019-06-21 - Replace non alphabetic chars by underscores in alternative_selector for chosen select CFs 1.01 2019-02-12 - Add tests with condition on empty value - Add BoolanCustomField as eligible condition CF - Update number of unitary tests 1.00 2019-02-11 - Update Changes for version 0.99 0.99 2019-02-11 - Add ConditionalOp in ConditionedBy attribute - Add javascript function condition_is_met - Add setting of ConditionedBy operation and CF with anytype - Add ConditionedBy operation in Ajax return - Update show/edit to handle any ConditionedBy CF type - Upgrade version - Configure DevelMode for tests - Adapt tests for Select ConditionedBy CF and 'is' operation - Default ConditionedBy operation to 'is' (backward compatibility for ConditionedBy attribute) - Use jQuery.ajax with async=false instead of jQuery.getJSON (avoid unsync with phantomjs) - Fix deleting attribute - Fix default ConditionedBy operation to 'is' - Update admin_cfs tests - Fix storing attribute when only operation is changed - Update admin_cfs test: test storing every operation for ConditionFreeformSingle CF - Update admin_cfs test: test order with ConditionFreeformSingle as numbers - Update admin_cfs test: test storing every operation for ConditionFreeformMultiple CF - Make search insensitive for "matches"/"doesn't match" condition - Update admin_cfs test: test every operation for ConditionTextSingle and ConditionalWikitextSingle CFs - Update admin_cfs test: test every operation for ConditionImageSingle and ConditionalImageMultiple CFs - Update admin_cfs test: test every operation for ConditionBinarySingle and ConditionalBinaryMultiple CFs - Update admin_cfs test: test every operation for ConditionComboboxSingle CF - Update admin_cfs test: test every operation for ConditionAutocompleteSingle ans ConditionalAutocompleteMultiple CFs - Fix distinctive features between Date and DateTime CF - Fix conversion from Current User Timezone to UTC only for DateTime, not Date - Fix javascript variable 'res' undefined in scope where it was used - Update admin_cfs test: test every operation for ConditionDateSingle CF - Update admin_cfs test: test for ConditionDateTimeSingle with timezone shift - Normalize IpAddresses to sort them as strings - Update admin_cfs test: test for ConditionIPAddressSingle - Update admin_cfs test: test for ConditionIPAddressMultiple - Exclude IPAddressRange CFs from available Conditional CFs - Use RT::ObjectCustomFieldValue->ParseIP to canonicalize IPAdresses - Increase LWP timeout to please Selenium::Remote::Driver - Fix Binary/Image/textarea CF conditionned by - Add tests for Binary/Image/textarea CF conditionned by - Rename edit tests for select/is - Fix tests for adm Conbobox and Autocomplete - Rename display tests for select/is - Add tests for ticket display with Select condition and all operators - Move sorting values for 'between' operator to SetConditionedBy - Provide naturalSort as an alternative to Intl.Collator.compare to please phantomJS - Add tests for ticket display with Freeform condition and all operators - Make naturalSort case insensitive, as Intl.Collator.compare - Add tests for ticket display with Text condition and all operators - Add tests for ticket display with Wikitext condition and all operators - Add tests for ticket display with Image condition and all operators - Fix matches/doesn't match js processing (String.search returns -1 if not found) - Add tests for ticket display with Binary condition and all operators - Add tests for ticket display with Combobox condition and all operators - Add tests for ticket display with Autocomplete condition and all operators - Fix display of date without time for Date CF - Add tests for ticket display with Date condition and all operators - Fix user timezone for condition when checking whether condition is met for DateTime CF - Add tests for ticket display with DateTime condition and all operators - Fix sorting values for 'between' operator and IPAddress CFs - Add tests for ticket display with IPAddress condition and all operators - Fix assigning whole array for each elements - Move normalizing IpAddresses and DateTime to SetConditionedBy - Fix wrong variables names after factorization - Fix timezone for tests on datetime CF - Remove condition on IPAddressRange since this type is excluded - Rename variables to have more explicit names - Fix timezone for tests on admin datetime CFs - Fix CondionedBy to return DateTime CFs in local timezone - Add tests for IPv6 IPAddress CFs - Add javascript rewriting of RT::ObjectCustomFieldValue::ParseIP() - Use javascript ParseIP instead of converting IP to number - Add tests for javascript rewriting of RT::ObjectCustomFieldValue::ParseIP() - Replace js String.search(regex) by RegExp.test(string) - Add tests for ticket modify with Select condition and all operators - Add tests for ticket modify with Freeform condition and all operators - Fix jQuery selector for Text CF - Add tests for ticket modify with Text condition and all operators - Factorize js function get_selector() - Add tests for ticket modify with Wikitext condition and all operators - Factorize js get_cf_current_form_values() - Add tests for ticket modify with Image condition and all operators - Try to upload image with phantomJS/ghostdriver/Selenium - Do not use Selenium upload_file when phantomJS set file input locally - Add tests for dynamically editing 'chosen' select CF - Sync MANIFEST - Fix trim text value for existing current values of Image/Binary CF - Add tests for ticket modify with Binary condition and all operators - Use symbolic links for image tested - Add tests for ticket modify with Combobox condition and all operators - Add tests for ticket modify with Autocomplete condition and all operators - Add tests for ticket modify with Date condition and all operators - Add tests for ticket modify with DateTime condition and all operators - Add tests for ticket modify with IPAddress condition and all operators - Add isn't operator for Date and Datetime CFs - Add tests for isn't operator for Date and Datetime CFs - Backward compatibility for ConditionedBy attribute (without operator defined, default to 'is') - Add tests for backward compatibility for ConditionedBy attribute (without operator defined, default to 'is') - Add tests for editing all types of conditioned by CFs - Add tests for operation in initialdata - Update pod 0.16 2019-02-09 - Fix check visibility of 'chosen' widget for Select CF - Add tests for 'chosen' select CF 0.15 2019-01-24 - Fix textarea CF conditionned byFix textarea CF conditionned by - Add tests for textarea CF conditionned by 0.14 2019-01-22 - Add tests for display of cascaded conditioned CFs - Add tests for edit of cascaded conditioned CFs - Really fix edit of cascaded conditioned CFs 0.13 2019-01-20 - Fix Binary/Image CF conditionned by - Add tests for Binary/Image CF conditionned by - Fix edit of cascaded conditioned CFs by adding hide/show events - Fix display of cascaded conditioned CFs 0.12 2018-07-02 - Fix editing with two conditions having the same value - Prevent Error Message 0.11 2018-06-12 - Fix show conditioned CF when condition CF does not apply to current object 0.10 2018-05-29 - Use MaxValues instead of deprecated Single suffix for tests on CFs - Fix test for ConditionedBy CF with pattern matching - Remove unnecessary array since _findGrouping returns a scalar value - Fix RT::CustomField::MatchPattern overriding to pass parameters to original method - Handle multivalued select for condition CF - Add tests for multivalued select for condition CF 0.09 2018-05-23 - Allow validation (matching pattern) on ConditionedBy CF only when condition is fulfilled 0.08 2018-05-13 - Fix editing by when condition CF and conditioned_by CF are not in the same CF grouping 0.07 2018-05-08 - Extend condition to handle multiple values - Complete redesign of ConditionalCustomFields storage and API 0.06 2017-11-09 - Upgrade Module::Install and cie - Add patch for RT 4.4.2 (no need anymore to add callback for Group Modify) - Rename patch 4.4 to 4.4.1 - Fixed license meta name. - Fixed abstract in pod as suggested by CPANTS. 0.05 2017-03-31 - Fix reload of Config, avoid duplicating plugins 0.04 2017-03-31 - Test and submit form for admin CF with WWW:Mechanize::PhantomJS - Add AJAX handler to select values available for selected CF - Use CurrentUserHasRight instead of CurrentUserCanSee for RT 4.2 compatibility - Format pod 0.03 2017-03-29 - Add some tests for assets with WWW:Mechanize::PhantomJS - Add some tests for articles with WWW:Mechanize::PhantomJS - Add Child tests for user summary - Add some tests for modifying queue with WWW:Mechanize::PhantomJS - Add some tests for user summary with WWW:Mechanize::PhantomJS - Add some tests for modifying user with WWW:Mechanize::PhantomJS - Remove bad copy/paste - Extend ConditionalCustomField to user displayed (via $UserSummaryExtraInfo) - Fix mispelled method - Add some tests for groups with WWW::Mechanize::PhantomJS - Add some tests for modifying tickets with WWW::Mechanize::PhantomJS - Remove unused params in call to RT::Attribute->Delete - Rename CF with name already taken - Remove unneeded undefs - Move tests from subdirectory - Add some tests for ticket with WWW::Mechanize::PhantomJS 0.02 2017-03-25 - Add a linefeed to please PAUSE 0.01 2017-03-25 - Initial commit