Details

    • Type: New Feature
    • Status: Done/Fixed
    • Priority: Major
    • Resolution: Fixed/Completed
    • Affects Version/s: 3.3.7
    • Fix Version/s: 3.3.7
    • Component/s: Core CiviCRM, NYSS
    • Labels:
      None
    • Funding Source:
      Core Team Contract

      Description

      Provide a mechanism for administrators to merge one tag into another. Merge action deletes the tag being merged and assigns the target tag to all entities previously tagged with the merged tag.
      1. Add new 'action' on Manage Tags selector: 'Merge'.

      • 'Merge' action should only be shown / allowed on reserved tags if the user has 'administer reserved tags' permission.
      • 'Merge' action is not shown / allowed on Tags which are Tagsset parents or hierarchical tag parents. Users can directly change parent / child tag relationships via existing edit tag UI.

      2. When clicked, a modal dialog (query) form is displayed:

      • Field label = "Select Tag"
      • Field is an singleton autocomplete which exposes all tags that aren't tagset parent tags (i.e includes "regular" tags) AND which can be assigned to all the record types that the tag being merged is valid for.

      EXAMPLE: If I'm merging a tag which is used for Contacts, Cases - do not show a tag which can NOT be used for Cases AND Contacts.

      • Tags that are part of a tagset, or are a child in a tag hierarchy are prepended with the parent tag title. However, the autocomplete search is on the tag titles themselves.

      EXAMPLE:
      Tagset (parent) = Issues
      Tagset tag = Environment
      Display in autocomplete = Issues :: Environment

      3. Post process:

      • all records (contacts, cases and / or activities) currently tagged with tag A will be tagged with tag B
      • tag A, which the merge is triggered from, will be removed from the system

      4. Logging - Post process NOT in core:

      • extend the nyss_tags module to handle insertion of a civicrm_log record for every contact, case or activity affected by a tag merge.
        Per Brian - "the nyss_tags module outlines how we would want logging implemented"

      Record hours against NYSS Bluebird 3808: http://senatedev.senate.state.ny.us/issues/show/3808

        Attachments

          Activity

            People

            • Assignee:
              lcdweb Brian Shaughnessy
              Reporter:
              dgg David Greenberg
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 1 week, 1 day, 4 hours
                1w 1d 4h