public function addTagAction(Request $request, $languageCode, Tag $parentTag = null)
    {
        $this->denyAccessUnlessGranted('ez:tags:add', $parentTag);

        $tagCreateStruct = $this->tagsService->newTagCreateStruct(
            $parentTag ? $parentTag->id : 0,
            $languageCode
        );

        $form = $this->createForm(
            TagCreateType::class,
            $tagCreateStruct,
            [
                'action' => $request->getPathInfo(),
            ]
        );

        $form->handleRequest($request);

        if ($form->isSubmitted() && $form->isValid()) {
            $newTag = $this->tagsService->createTag($form->getData());

            $this->addFlashMessage('success', 'tag_added', ['%tagKeyword%' => $newTag->keyword]);

            return $this->redirectToTag($newTag);
        }

        return $this->render(
            '@NetgenTags/admin/tag/add.html.twig',
            [
                'form' => $form->createView(),
                'parentTag' => $parentTag,
            ]
        );
    }