Sfoglia il codice sorgente

cleaned up the extension removing unnecessary comments

jabongwa 2 anni fa
parent
commit
9f6b835fcf

+ 49 - 0
Classes/Controller/DashboardController.php

@@ -0,0 +1,49 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Meramo\Begriffmgt\Controller;
+
+use TYPO3\CMS\Extbase\Mvc\Controller\ActionController;
+use Meramo\Begriffmgt\Domain\Repository\TermRepository;
+use TYPO3\CMS\Extbase\Persistence\QueryInterface;
+use TYPO3\CMS\Extbase\Utility\DebuggerUtility;
+use Meramo\Begriffmgt\Domain\Model\Term;
+
+
+/**
+ * Determines what happens when the Module Buttom/Link is clicked
+ */
+class DashboardController extends ActionController
+{
+  /**
+   * @var TermRepository $termRepository
+   */
+  protected $termRepository;
+
+  /**
+   * Set Sort ordder of Data in List Module
+   */
+  protected $defaultOrderings = ['uid' => QueryInterface::ORDER_ASCENDING];
+
+  /**
+   * @param TermRepository $termRepository
+   */
+  public function injectTermRepository(TermRepository $termRepository): void
+  {
+    $this->termRepository = $termRepository;
+  }
+
+  public function indexAction()
+  {
+
+    $terms = $this->termRepository->findAll();
+    // DebuggerUtility::var_dump($terms);
+    $query = $terms->getQuery();
+    // DebuggerUtility::var_dump($query);
+    $query->setOrderings(['uid' => QueryInterface::ORDER_ASCENDING]);
+
+    $this->view->assign('terms', $query->execute());
+
+  }
+}

+ 0 - 0
Classes/Controller/TermController.php


+ 33 - 33
Classes/Domain/Model/Term.php

@@ -19,119 +19,119 @@ use TYPO3\CMS\Extbase\DomainObject\AbstractEntity;
 /**
  * Table is used to manage chatbot terms
  */
-class ChatbotTerm extends AbstractEntity
+class Term extends AbstractEntity
 {
 
     /**
      * chatbotType
      *
-     * @var int
+     * @var string
      */
-    protected $chatbot_type = 0;
+    protected $type = '';
 
     /**
      * chatbotCategory
      *
-     * @var int
+     * @var string
      */
-    protected $chatbot_category = 0;
+    protected $category = '';
 
     /**
      * chatbotTerms
      *
      * @var string
      */
-    protected $chatbot_terms = '';
+    protected $terms = '';
 
     /**
      * chatbotUrl
      *
      * @var string
      */
-    protected $chatbot_url = '';
+    protected $url = '';
 
     /**
      * Returns the chatbotType
      *
-     * @return int
+     * @return string
      */
-    public function getChatbotType()
+    public function getType()
     {
-        return $this->chatbot_type;
+        return $this->type;
     }
 
     /**
      * Sets the chatbotType
      *
-     * @param int $chatbotType
+     * @param string $type
      * @return void
      */
-    public function setChatbotType(int $chatbot_type)
+    public function setType(int $type)
     {
-        $this->chatbot_type = $chatbot_type;
+        $this->type = $type;
     }
 
     /**
-     * Returns the chatbot_category
+     * Returns the category
      *
-     * @return int
+     * @return string
      */
-    public function getChatbotCategory()
+    public function getCategory()
     {
-        return $this->chatbot_category;
+        return $this->category;
     }
 
     /**
-     * Sets the chatbot_category
+     * Sets the category
      *
-     * @param int $chatbot_category
+     * @param string $category
      * @return void
      */
-    public function setChatbotCategory(int $chatbot_category)
+    public function setCategory(int $category)
     {
-        $this->chatbot_category = $chatbot_category;
+        $this->category = $category;
     }
 
 
     /**
-     * Returns the chatbotTerms
+     * Returns Terms
      *
      * @return string
      */
-    public function getChatbotTerms()
+    public function getTerms()
     {
-        return $this->chatbot_terms;
+        return $this->terms;
     }
 
     /**
      * Sets the chatbotTerms
      *
-     * @param string $chatbot_terms
+     * @param string $terms
      * @return void
      */
-    public function setChatbotTerms(string $chatbot_terms)
+    public function setTerms(string $terms)
     {
-        $this->chatbot_terms = $chatbot_terms;
+        $this->terms = $terms;
     }
 
     /**
-     * Returns the chatbot_url
+     * Returns the url
      *
      * @return string
      */
-    public function getChatbotUrl()
+    public function getUrl()
     {
-        return $this->chatbot_url;
+        return $this->url;
     }
 
     /**
      * Sets the chatbot_url
      *
-     * @param string $chatbotUrl
+     * @param string $Url
      * @return void
      */
-    public function setChatbotUrl(string $chatbot_url)
+    public function setUrl(string $url)
     {
-        $this->chatbot_url = $chatbot_url;
+        $this->url = $url;
     }
 }

+ 7 - 2
Classes/Domain/Repository/TermRepository.php

@@ -5,9 +5,14 @@
   namespace Meramo\Begriffmgt\Domain\Repository;
 
   use TYPO3\CMS\Extbase\Persistence\Repository;
-  use TYPO3\CMS\Extbase\Persistence\QueryInterface;
+  use TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings;
 
   class TermRepository extends Repository
   { 
-    protected $defaultOrderings = ['uid' => QueryInterface::ORDER_ASCENDING];
+    public function initializeObject() {
+      $querySettings = $this->objectManager->get(Typo3QuerySettings::class);
+      $querySettings->setRespectStoragePage(false);
+      $this->setDefaultQuerySettings($querySettings);
+   }
+
   }

+ 0 - 0
Configuration/TCA/Overrides/pluging.php


+ 40 - 58
Configuration/TCA/tx_begriffmgt_domain_model_term.php

@@ -2,8 +2,8 @@
 return [
     'ctrl' => [
         'title' => 'Chatbot Begriffe Management',
-        'label' => 'Chatbot Begriffe',
-        'label_alt' => 'chatbot_type',
+        'label' => 'Typ',
+        'label_alt' => 'type',
         'label_alt_force' => true,
         'tstamp' => 'tstamp',
         'crdate' => 'crdate',
@@ -14,16 +14,16 @@ return [
             'starttime' => 'starttime',
             'endtime' => 'endtime',
         ],
-        'searchFields' => 'chatbot_terms,chatbot_category,chatbot_subcategory,chatbot_url',
+        'searchFields' => 'type,category,terms,chatbot_url',
         'typeicon_classes' => [
-          'default' => 'mimetypes-x-sys_note',
+          'default' => 'begriffe_list_record_icon',
         ],
-        'iconfile' => 'EXT:begriffmgt/Resources/Public/Icons/book.png'
+        'iconfile' => 'EXT:begriffmgt/Resources/Public/Icons/book1.png'
     ],
     'types' => [
         '0' => [
           'showitem' => '
-              --div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:general,chatbot_type, chatbot_category, chatbot_subcategory,chatbot_terms, chatbot_url,
+              --div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:general,type, category, terms,url,
               --div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:access, hidden, starttime, endtime'
         ],
     ],
@@ -73,7 +73,7 @@ return [
             ],
         ],
 
-        'chatbot_type' => [
+        'type' => [
             'exclude' => true,
             'label' => 'Typ',
             'config' => [
@@ -81,30 +81,22 @@ return [
                 'renderType' => 'selectSingle',
                 'items' => [
                     ['Auswählen', 0],
-                    ['Direct', 1],
-                    ['Medical', 2],
-                    ['Bewerbung', 3],
-                    ['Weiterbildung', 4],
-                    ['Reverse', 5],
-                    ['Middlewords', 6],
-                    ['Studiumwords', 7],
-                    ['Ausbildungwords', 8],
-                    ['Unknown', 9],
+                    ['Direct', 'direct'],
+                    ['Medical', 'medical'],
+                    ['Bewerbung', 'bewerbung'],
+                    ['Weiterbildung', 'weiterbildung'],
+                    ['Reverse', 'reverse'],
+                    ['Middlewords', 'middlewords'],
+                    ['Studiumwords', 'studiumword'],
+                    ['Ausbildungwords', 'ausbildungwords'],
+                    ['Unknown', 'unknown'],
                 ],
                 'size' => 1,
                 'maxitems' => 1,
                 'eval' => ''
             ],
         ],
-        'chatbot_url' => [
-           'exclude' => true,
-           'label' => 'Link',
-           'config' => [
-               'type' => 'input',
-               'renderType' => 'inputLink',
-           ],
-       ],
-        'chatbot_category' => [
+        'category' => [
             'exclude' => true,
             'label' => 'Kategorie',
             'config' => [
@@ -112,43 +104,27 @@ return [
                 'renderType' => 'selectSingle',
                 'items' => [
                     ['Auswählen', 0],
-                    ['Ausbildung', 1], 
-                    ['Studium', 2],
-                    ['Adverbien', 3],
-                    ['Verben', 4],
-                    ['Substantiven', 5],
-                    ['Konjuktionen', 6],
-                    ['Pronomen', 7],
-                    ['Relativpronomen', 8],
+                    ['Ausbildung', 'ausbildung'], 
+                    ['Studium', 'studium'],
+                    ['Adverbien', 'adverbien'],
+                    ['Verben', 'verben'],
+                    ['Substantiven', 'substantiven'],
+                    ['Konjuktionen', 'konjuktionen'],
+                    ['Pronomen', 'pronomen'],
+                    ['Relativpronomen', 'relativpronomen'],
+                    ['Indefinitpronomen', 'indefinitpronomen'],
+                    ['Indefinitpronomen', 'indefinitpronomen'],
+                    ['Numerale', 'Numerale'],
+                    ['Nomen', 'nomen'],
+                    ['Adjektive', 'adjektive'],
+                    ['Artikel', 'artikel']
                 ],
                 'size' => 1,
                 'maxitems' => 1,
                 'eval' => ''
             ],
         ],
-      //   'chatbot_subcategory' => [
-      //     'exclude' => true,
-      //     'label' => 'Unterkategorie',
-      //     'config' => [
-      //         'type' => 'select',
-      //         'renderType' => 'selectSingle',
-      //         'items' => [
-      //             ['Auswählen', 0],
-      //             ['Ausbildung', 1],
-      //             ['Studium', 2],
-      //             ['Adverbien', 3],
-      //             ['Verben', 4],
-      //             ['Substantiven', 5],
-      //             ['Konjuktionen', 6],
-      //             ['Pronomen', 7],
-      //             ['Relativpronomen', 8],
-      //         ],
-      //         'size' => 1,
-      //         'maxitems' => 1,
-      //         'eval' => ''
-      //     ],
-      // ],
-        'chatbot_terms' => [
+        'terms' => [
             'exclude' => true,
             'label' => 'Begriffe Einfügen (Komma getrennt)',
             'config' => [
@@ -159,7 +135,13 @@ return [
                 'default' => ''
             ]
         ],
-        
-    
+        'url' => [
+          'exclude' => true,
+          'label' => 'Link',
+          'config' => [
+              'type' => 'input',
+              'renderType' => 'inputLink',
+          ],
+      ],
     ],
 ];

+ 0 - 1
Configuration/Typoscript/constants_typoscript

@@ -9,6 +9,5 @@ module.begriffmgt {
     }
     persistence {
         # cat=module.begriffmgt//a; type=string; label=Default storage PID
-        storagePid =
     }
 }

+ 2 - 2
Configuration/Typoscript/settings.typoscript

@@ -1,14 +1,14 @@
 # Module configuration
 module.begriffmgt {
     persistence {
-        storagePid = {$module.begriffmgt.persistence.storagePid}
+      storagePid = {$storagePid}
     }
     view {
         templateRootPaths.0 = EXT:begriffmgt/Resources/Private/Templates/
         templateRootPaths.1 = {$module.begriffmgt.view.templateRootPath}
         partialRootPaths.0 = EXT:begriffmgt/Resources/Private/Partials/
         partialRootPaths.1 = {$module.begriffmgt.view.partialRootPath}
-        layoutRootPaths.0 = EXT:chatbotsearchterms/Resources/Private/Layouts/
+        layoutRootPaths.0 = EXT:begriffmgt/Resources/Private/Layouts/
         layoutRootPaths.1 = {$module.begriffmgt.view.layoutRootPath}
     }
 }

BIN
Extension.png


+ 0 - 0
README.md


+ 15 - 15
Resources/Language/locallang_mod.xlf

@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<xliff version="1.0" xmlns:t3="http://typo3.org/schemas/xliff">
-    <file t3:id="1551944413" source-language="en" datatype="plaintext" original="messages" date="2023-03-10T00:23:42Z" product-name="begriffmgt">
-        <header/>
-        <body>
-            <trans-unit id="mlang_tabs_tab">
-                <source>Chatbot Management</source>
-            </trans-unit>
-            <trans-unit id="mlang_labels_tablabel">
-                <source>Chatbot Management</source>
-            </trans-unit>
-            <trans-unit id="mlang_labels_tabdescr">
-                <source>Chatbot Management</source>
-            </trans-unit>
-        </body>
-    </file>
+<xliff version="1.2" xmlns:t3="http://typo3.org/schemas/xliff" xmlns="urn:oasis:names:tc:xliff:document:1.2">
+	<file source-language="en" original="EXT:examples/Resources/Private/Language/Module/locallang_mod.xlf" datatype="plaintext" product-name="begriffmgt" date="2023-03-20T18:44:02+02:00">
+		<header></header>
+		<body>
+			<trans-unit id="mlang_labels_tabdescr" resname="mlang_labels_tabdescr">
+				<source>Chatbot Verwaltung</source>
+			</trans-unit>
+			<trans-unit id="mlang_labels_tablabel" resname="mlang_labels_tablabel">
+				<source>Chatbot Verwaltung</source>
+			</trans-unit>
+			<trans-unit id="mlang_tabs_tab" resname="mlang_tabs_tab">
+				<source>Chatbot Verwaltung</source>
+			</trans-unit>
+		</body>
+	</file>
 </xliff>

+ 0 - 1
Resources/Private/Layouts/Default.html

@@ -14,7 +14,6 @@
 
     <be:moduleLayout.menu identifier="BegriffmgtModalMenu">
         <be:moduleLayout.menuItem label="Liste ChatbotBegriffe" uri="{f:uri.action(controller: 'Dashboard', action: 'index')}"/>
-        <be:moduleLayout.menuItem label="Chatbot Begriffe Verwaltung" uri="{f:uri.action(controller: 'Term', action: 'list')}"/>
     </be:moduleLayout.menu>
 
  

BIN
Resources/Public/Icons/book.png


BIN
Resources/Public/Icons/book1.png


+ 15 - 0
Resources/Public/Icons/chatbot.svg

@@ -0,0 +1,15 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
+ width="64.000000pt" height="64.000000pt" viewBox="0 0 64.000000 64.000000"
+ preserveAspectRatio="xMidYMid meet">
+
+<g transform="translate(0.000000,64.000000) scale(0.100000,-0.100000)"
+fill="#000000" stroke="none">
+<path d="M403 630 c-24 -3 -46 -10 -50 -15 -5 -4 10 -5 32 -2 l40 6 -50 -44
+c-41 -36 -52 -41 -61 -30 -9 12 -20 6 -65 -31 -30 -26 -56 -48 -58 -50 -2 -2
+1 -4 7 -4 7 0 29 16 51 35 39 36 61 44 61 24 0 -13 13 -4 81 51 33 26 41 30
+35 15 -18 -45 -19 -50 -8 -40 15 15 42 84 34 88 -4 2 -26 0 -49 -3z"/>
+</g>
+</svg>

BIN
Resources/Public/Icons/plugin.png


+ 2 - 1
composer.json

@@ -18,4 +18,5 @@
       "extension-key": "begriffmgt"
     }
   }
-}
+}
+

+ 0 - 0
ext_emconf.php


+ 57 - 2
ext_localconf.php

@@ -6,6 +6,61 @@
 
 use TYPO3\CMS\Core\Utility\GeneralUtility;
 
-$iconRegistry = GeneralUtility::makeInstance(\TYPO3\CMS\Core\Imaging\IconRegistry::class);
 
-$iconRegistry->registerIcon('begriffe_list_record_icon', \TYPO3\CMS\Core\Imaging\IconProvider\SvgIconProvider::class, ['source' => 'EXT:begriffmgt/Resources/Public/Icons/book.png']);
+// $iconRegistry = GeneralUtility::makeInstance(\TYPO3\CMS\Core\Imaging\IconRegistry::class);
+
+// $iconRegistry->registerIcon('begriffe_list_record_icon', \TYPO3\CMS\Core\Imaging\IconProvider\SvgIconProvider::class, ['source' => 'EXT:begriffmgt/Resources/Public/Icons/book.png']);
+
+
+call_user_func(
+  function () {
+      // \TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
+      //     'Meramo.Begriffemgt',
+      //     'Termlisting',
+      //     [
+      //       \Meramo\Begriffmgt\Controller\DashboardController::class => 'list',
+      //     ],
+      //     // non-cacheable actions
+      //     [
+      //       \Meramo\Begriffmgt\Controller\DashboardController::class => 'list',
+              
+      //     ]
+      // );
+
+      // Add PageTSConfig (chapter 6)
+      //$languageFile = 'begriffmgt/Resources/Private/Language/locallang_db.xlf';
+      // \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPageTSConfig(
+      //     'mod {
+      //     wizards.newContentElement.wizardItems.plugins {
+      //       elements {
+      //         Termlisting {
+      //           iconIdentifier = begriffmgt-plugin-bloglisting
+      //           title = Auflistung der Chatbot Gegriffe
+      //           description = Verwaltung von Chatbot Begriffe
+      //           tt_content_defValues {
+      //             CType = list
+      //             list_type = Begriffmgt_termlisting
+      //           }
+      //         }
+      //       }
+      //       show = *
+      //     }
+      //   }'
+      // );
+
+      // Register extension icon (chapter 6)
+      $iconRegistry = GeneralUtility::makeInstance(\TYPO3\CMS\Core\Imaging\IconRegistry::class);
+      
+      $iconRegistry->registerIcon(
+          'begriffe_list_record_icon',
+          \TYPO3\CMS\Core\Imaging\IconProvider\SvgIconProvider::class,
+          ['source' => 'EXT:begriffmgt/Resources/Public/Icons/book.png']
+      );
+
+      $iconRegistry->registerIcon(
+        'begriffe_module_icon',
+        \TYPO3\CMS\Core\Imaging\IconProvider\SvgIconProvider::class,
+        ['source' => 'EXT:begriffmgt/Resources/Public/Icons/chatbot.svg']
+    );
+  }
+);

+ 23 - 0
ext_tables.php

@@ -0,0 +1,23 @@
+<?php 
+
+call_user_func(function()
+{
+  \TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerModule(
+    'begriffmgt',
+    'tools',
+    'ChatbotBegriffManagement',
+    'top',
+    [
+      \Meramo\Begriffmgt\Controller\DashboardController::class => 'index',
+    ],
+    [
+      'access' => 'user,admin',
+      'icon' => 'EXT:begriffmgt/Resources/Public/Icons/chatbot.png',
+      'labels' => 'LLL:EXT:begriffmgt/Resources/Private/Language/locallang_mod.xlf:mlang_tabs_tab',
+    ]
+
+  );
+});
+
+// Add Static file
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile('begriffmgt', 'Configuration/TypoScript', 'Chatbot Management');

+ 4 - 4
ext_tables.sql

@@ -1,6 +1,6 @@
 CREATE TABLE tx_begriffmgt_domain_model_term (
-	chatbot_type VARCHAR(255) DEFAULT '' NOT NULL,
-	chatbot_category VARCHAR(255) DEFAULT '',
-	chatbot_terms text NOT NULL DEFAULT '',
-	chatbot_url varchar(255) DEFAULT ''
+	type VARCHAR(255) DEFAULT '' NOT NULL,
+	category VARCHAR(255) DEFAULT '',
+	terms text NOT NULL DEFAULT '',
+	url varchar(255) DEFAULT ''
 );