       @updateChild()
 
   insertParent: ->
-    KD.remote.api.JIntroSnippet.create @createPostData(), =>
-      @buttons["Save"].hideLoader()
-      @emit "IntroductionFormNeedsReload"
+    data = @createPostData()
+    if not @getOptions().addingToAGroup
+      @destroy()
+      @getDelegate().showForm "Item", data, "Insert", yes
+    else
+      @parentData.snippets.push data
+      KD.remote.api.JIntroSnippet.create @parentData, =>
+        @buttons["Save"].hideLoader()
+        @emit "IntroductionFormNeedsReload"
 
   insertChild: ->
     @parentData.addChild @createPostData(), =>

          delegate: @
        ,snippet

  showForm: (type = "Group", data = @getData(), actionType = "Insert") ->
    @buttonsContainer.hide()
    @container.hide()
    @addSubView @form = new IntroductionAdminForm {
      type
      actionType
      delegate: @
    }
    , data


    super options, data

    @utils.defer => @setAceEditor() if @getOptions().type is "Item"
    if @getOptions().type is "Group"
      @setVisibilityOfOverlayWarning @parentData.overlay is "no" # wtf "no"

  save: ->
    options      = @getOptions()
    {actionType, addingToAGroup} = options

    if @getOptions().type is "Group" or addingToAGroup
      return @insertParent() if actionType is "Insert"
      @updateParent()
    else
