TYPO3.CMS 6.2 Extension entwickeln: Unterschied zwischen den Versionen

Aus Vosp.info
Wechseln zu:Navigation, Suche
(extension sf_register (inkl. fe_users) mit neuer extension um eine Spalte erweitern)
(ext_conf_template.txt - Erweiterung Einstellungens Variablen)
 
(27 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
== extension sf_register (inkl. fe_users) mit neuer extension um eine Spalte erweitern ==
+
== Schnipsel ==
 +
=== Konfigurationen abfangen ===
 +
==== settings ====
  
'''Aufgabe''' ist sf_register zu erweitern so das es eine weitere Spalte in der Tabelle fe_users gibt  
+
<source lang="php">
 +
 
 +
$objectManager = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('Tx_Extbase_Object_ObjectManager');   
 +
 
 +
$configurationManager = $objectManager->get('TYPO3\\CMS\\Extbase\\Configuration\\ConfigurationManager');
 +
 
 +
// CONFIGURATION_TYPE_FULL_TYPOSCRIPT
 +
 
 +
$CONFIGURATION_TYPE_FULL_TYPOSCRIPT = $configurationManager->getConfiguration(\TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface::CONFIGURATION_TYPE_FULL_TYPOSCRIPT);
 +
 
 +
echo '<pre>';
 +
print_r($CONFIGURATION_TYPE_FULL_TYPOSCRIPT['plugin.']['tx_sfregister.']);
 +
echo '</pre>';
 +
echo '<pre>';
 +
print_r($CONFIGURATION_TYPE_FULL_TYPOSCRIPT['plugin.']['tx_extensionname.']);
 +
echo '</pre>';
 +
 
 +
// CONFIGURATION_TYPE_SETTINGS
 +
 
 +
$CONFIGURATION_TYPE_SETTINGS = $configurationManager->getConfiguration(\TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface::CONFIGURATION_TYPE_SETTINGS);
 +
echo '<pre>';
 +
print_r($CONFIGURATION_TYPE_SETTINGS);
 +
echo '</pre>';
 +
 
 +
</source>
 +
* http://stackoverflow.com/questions/30839907/how-to-get-typo3-settings-in-the-utility-files
 +
 
 +
 
 +
=== ext_conf_template.txt - Erweiterung Einstellungens Variablen ===
 +
<source lang=php>
 +
$confArray = unserialize($GLOBALS["TYPO3_CONF_VARS"]["EXT"]["extConf"]['extensionname']);
 +
</source>
 +
 
 +
== extension sf_register um eine Spalte erweitern ==
 +
 
 +
'''Aufgabe''' ist sf_register zu erweitern, so das es eine weitere Spalte in der Tabelle fe_users gibt, die im Frontend (Beim Registrieurungsprozess) und im Backend angezeigt wird
 +
 
 +
'''Achtung'''
 +
* um hier nicht zu viel zu dokumentieren ist ausschließlich der Registrierungsprozess abgebildet, nicht das Bearbeiten eines Users, dies muss analog umgesetzt werden
 +
* '''_source''' muss natürlich '''source''' heißen!!!!!
 +
 
 +
'''Source Code''' [[Datei:Ncregisterplus.vosp.0.0.1.tar.gz]]  Stand 19.09.2015 17:00
  
 
'''Grundlage''' ist typo362 [6.2.15] mit Distribution ''Aimeos web shop distribution''
 
'''Grundlage''' ist typo362 [6.2.15] mit Distribution ''Aimeos web shop distribution''
Zeile 62: Zeile 105:
  
  
=== ext_emconf.php ===
+
=== Configuration/TCA/Overrides/fe_users.php ===
 +
mit TCA Typo3 mitteilen um was es sich für eine Spalte handelt, zusätzlich schon mal die Backend Sprachdatei (locallang_be.xml) angeben, damit ist für die Backendansicht eigentlich auch schon alles getan und siehe da wenn mensch sich nun ein Frontend Benutzer im Backend anschaut, gibts schon unser neues Feld
 
<source lang=php>
 
<source lang=php>
 +
<?php
 +
 +
defined('TYPO3_MODE') or die();
 +
 +
use TYPO3\CMS\Core\Utility\ExtensionManagementUtility;
 +
 +
$temporaryColumns = array(
 +
    'agency' => array(
 +
        'exclude' => 0,
 +
        'label' => 'LLL:EXT:ncregisterplus/Resources/Private/Language/locallang_be.xml:fe_users.agency',
 +
        'config' => array(
 +
            'type' => 'input',
 +
            'size' => '20',
 +
            'max' => '50',
 +
            'eval' => 'trim',
 +
        )
 +
    ),
 +
);
 +
 +
ExtensionManagementUtility::addTCAcolumns('fe_users', $temporaryColumns);
 +
ExtensionManagementUtility::addToAllTCAtypes('fe_users', 'agency', '', 'after:username');
 +
ExtensionManagementUtility::addToAllTCAtypes(
 +
        'fe_users', '--div--;LLL:EXT:ncregisterplus/Resources/Private/Language/locallang_be.xml:fe_users.div.registration,
 +
agency'
 +
);
 +
 +
</source>
  
 +
=== Resources/Private/Language/locallang_be.xlf ===
 +
'''Achtung: _source''' muss natürlich '''source''' heißen!!!!!
 +
<source lang=xml>
 +
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
 +
<!--
 +
    locallang_be - relevant fürs Backend
 +
    netz.coop eG
 +
-->
 +
<xliff version="1.0">
 +
    <file source-language="de" datatype="plaintext" original="messages" date="2015-09-18T11:47:32Z" product-name="ncregisterplus">
 +
        <header/>
 +
        <body>
 +
            <trans-unit id="fe_users.div.registration" xml:space="preserve">
 +
<_source>Registration</_source>
 +
            </trans-unit>                   
 +
            <trans-unit id="fe_users.agency" xml:space="preserve">
 +
<_source>Abteilung</_source>
 +
            </trans-unit>
 +
        </body>
 +
    </file>       
 +
</xliff>
 
</source>
 
</source>
  
 +
'''Achtung: _source''' muss natürlich '''source''' heißen!!!!!
 +
 +
=== Classes/Domain/... ===
 +
damit Typo3 jetzt auch schön auf die Datenbank zu greifen kann ....
 +
==== Classes/Domain/Model/FrontendUser.php ====
 +
* Verknüpfung siehe unten [[TYPO3.CMS_6.2_Extension_entwickeln#ext_typoscript_setup.txt]]
 +
<source lang=php>
 +
<?php
 +
 +
namespace Nc\Ncregisterplus\Domain\Model;
 +
 +
/* * *************************************************************
 +
* Copyright notice
 +
*
 +
* (c) 2015 netz.coop eG <code@netz.coop>
 +
* All rights reserved
 +
*
 +
* ************************************************************* */
 +
 +
/**
 +
* An extended frontend user with more attributes
 +
*/
 +
class FrontendUser extends \Evoweb\SfRegister\Domain\Model\FrontendUser {
  
=== ext_emconf.php ===
+
    /**
 +
    * Agency
 +
    *
 +
    * @var string
 +
    */
 +
    protected $agency;
 +
 
 +
    /**
 +
    * Getter for agency
 +
    *
 +
    * @return string
 +
    */
 +
    public function getAgency() {
 +
        return $this->agency;
 +
    }
 +
 
 +
    /**
 +
    * Setter for agency
 +
    *
 +
    * @param string $agency
 +
    * @return void
 +
    */
 +
    public function setAgency($agency) {
 +
        $this->agency = $agency;
 +
    }
 +
 
 +
}
 +
 
 +
</source>
 +
 
 +
==== Classes/Domain/Repository/FrontendUserRepository.php ====
 
<source lang=php>
 
<source lang=php>
 +
<?php
 +
 +
namespace Nc\Ncregisterplus\Domain\Repository;
 +
 +
/**
 +
* A repository for feusers
 +
*/
 +
class FrontendUserRepository extends \Evoweb\SfRegister\Domain\Repository\FrontendUserRepository {
 +
   
 +
}
 +
 +
</source>
 +
 +
=== Resources/Private/ ===
 +
==== Resources/Private/Language/locallang.xlf ====
 +
'''Achtung: _source''' muss natürlich '''source''' heißen!!!!!
 +
<source lang=xml>
 +
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
 +
<!--
 +
    locallang - relevant fürs Frontend
 +
    netz.coop eG
 +
-->
 +
<xliff version="1.0">
 +
    <file source-language="en" datatype="plaintext" original="messages" date="2015-09-18T11:47:32Z" product-name="ncregisterplus">
 +
        <header/>
 +
        <body>
 +
            <trans-unit id="agency" xml:space="preserve">
 +
<_source>Agency</_source>
 +
            </trans-unit>                   
 +
        </body>
 +
    </file>
 +
</xliff>
 +
</source>
  
 +
'''Achtung: _source''' muss natürlich '''source''' heißen!!!!!
 +
 +
==== Resources/Private/Templates/FeuserCreate/ - Templates ====
 +
 +
jetzt muss nur noch das Frontend angepasst werden, also werden wir jetzt als Vorlage schon mal die Templates von sf_register zu uns kopieren
 +
 +
<source lang=bash>
 +
cp typo3conf/ext/sf_register/Resources/Private/Templates/FeuserCreate/*.html typo3conf/ext/ncregisterplus/Resources/Private/Templates/FeuserCreate/
 +
</source>
 +
 +
'''Achtung'''
 +
* Wir werden hier jetzt nur das Form.html Template anpassen;  Preview.html sollte natürlich auch angepasst werden!!!
 +
* Resources/Private/Templates/'''FeuserEdit'''/Form.html wird wie oben schon angedeutet erstmal einfach ignoriert
 +
* Verknüpfung sie unten [[TYPO3.CMS_6.2_Extension_entwickeln#ext_typoscript_setup.txt]]
 +
 +
===== Resources/Private/Templates/FeuserCreate/Form.html =====
 +
 +
<source lang=xml>
 +
<!-- der namespace bleibt genauso wie er ist, denn wir greifen ja von unserer neuen Extension auf die sf_register ViewHelper drauf zu -->
 +
{namespace register=Evoweb\SfRegister\ViewHelpers}
 +
<?xml version="1.0" encoding="UTF-8" ?>
 +
<html xmlns="http://www.w3.org/1999/xhtml" lang="en"
 +
  xmlns:register="http://www.evoweb.de/ns/SfRegister/ViewHelpers"
 +
  xmlns:f="http://typo3.org/ns/TYPO3/Fluid/ViewHelpers">
 +
<head>
 +
<title>Create form template of registration</title>
 +
</head>
 +
<body>
 +
<f:layout name="Default" />
 +
<f:section name="Main">
 +
<f:form action="preview" name="user" object="{user}" enctype="multipart/form-data">
 +
<f:render partial="FormErrors" section="Main" arguments="{for: 'user'}" />
 +
<f:render partial="FieldError" section="Main" arguments="{field: 'uid'}" />
 +
 +
<dl>
 +
<dt>
 +
<f:translate key="username" />
 +
<f:render partial="Required" section="Main" arguments="{field: 'username'}" />
 +
</dt>
 +
<dd>
 +
<f:render partial="FieldError" section="Main" arguments="{for: 'user', field: 'username'}" />
 +
<f:form.textfield property="username" />
 +
</dd>
 +
 +
<!-- .......... jetzt kommt eigentlich nur unser neues Feld dazu  ..... -->
 +
 +
<dt>
 +
<!-- hier geben wir jetzt unsere Frontend Sprach Datei an -->
 +
<f:translate key="LLL:EXT:ncregisterplus/Resources/Private/Language/locallang.xml:agency" />
 +
<f:render partial="Required" section="Main" arguments="{field: 'agency'}" />
 +
</dt>
 +
<dd>
 +
<f:render partial="FieldError" section="Main" arguments="{for: 'user', field: 'agency'}" />
 +
<f:form.textfield property="agency" />
 +
</dd> 
 +
 +
<!-- .......... alles andere was da noch kommt ..... -->
 +
<dt>&nbsp;</dt>
 +
<dd>
 +
<f:form.submit class="submit" value="{f:translate(key:'submit_create')}" />
 +
</dd>
 +
</dl>
 +
</f:form>
 +
<div class="mandatory">
 +
<f:translate key="info_mandatory_fields" htmlEscape="false" />
 +
</div>
 +
</f:section>
 +
</body>
 +
</html>
 +
 +
</source>
 +
 +
=== ext_typoscript_setup.txt ===
 +
Hier wird jetzt noch unser neuer Code per TypoScript dem System mitgeteilt:
 +
* Templates müssen ersetzt werden:
 +
** dem sf_register Frontend Plugin wird nun hier mitgeteilt das es neue Templates gibt!!!
 +
** siehe [[TYPO3.CMS_6.2_Extension_entwickeln#Resources/Private/Templates/FeuserCreate/ - Templates]]
 +
* Evoweb\SfRegister\Domain\Model\FrontendUser darf jetzt nicht mehr verwendet werden, sondern es soll unsere neue abgeleitete Klasse Nc\Ncregisterplus\Domain\Model\FrontendUser verwendet werden
 +
** siehe [[TYPO3.CMS_6.2_Extension_entwickeln#Classes/Domain/Model/FrontendUser.php]]
 +
<source lang=TypoScript>
 +
// https://docs.typo3.org/typo3cms/extensions/sf_register/Templating/Index.html
 +
plugin.tx_sfregister.view.templateRootPaths.1 = EXT:ncregisterplus/Resources/Private/Templates/
 +
 +
config.tx_extbase {
 +
    objects {
 +
        Evoweb\SfRegister\Domain\Model\FrontendUser {
 +
            className = Nc\Ncregisterplus\Domain\Model\FrontendUser
 +
        }
 +
    }
 +
    persistence {
 +
        classes {
 +
            Nc\Ncregisterplus\Domain\Model\FrontendUser {
 +
                mapping {
 +
                    tableName = fe_users
 +
                }
 +
            }
 +
        }
 +
    }
 +
}
 
</source>
 
</source>

Aktuelle Version vom 20. September 2015, 18:40 Uhr

Schnipsel

Konfigurationen abfangen

settings

$objectManager = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('Tx_Extbase_Object_ObjectManager');    

$configurationManager = $objectManager->get('TYPO3\\CMS\\Extbase\\Configuration\\ConfigurationManager');

// CONFIGURATION_TYPE_FULL_TYPOSCRIPT

$CONFIGURATION_TYPE_FULL_TYPOSCRIPT = $configurationManager->getConfiguration(\TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface::CONFIGURATION_TYPE_FULL_TYPOSCRIPT);

echo '<pre>';
print_r($CONFIGURATION_TYPE_FULL_TYPOSCRIPT['plugin.']['tx_sfregister.']);
echo '</pre>';
echo '<pre>';
print_r($CONFIGURATION_TYPE_FULL_TYPOSCRIPT['plugin.']['tx_extensionname.']);
echo '</pre>';

// CONFIGURATION_TYPE_SETTINGS

$CONFIGURATION_TYPE_SETTINGS = $configurationManager->getConfiguration(\TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface::CONFIGURATION_TYPE_SETTINGS);
echo '<pre>';
print_r($CONFIGURATION_TYPE_SETTINGS);
echo '</pre>';


ext_conf_template.txt - Erweiterung Einstellungens Variablen

$confArray = unserialize($GLOBALS["TYPO3_CONF_VARS"]["EXT"]["extConf"]['extensionname']);

extension sf_register um eine Spalte erweitern

Aufgabe ist sf_register zu erweitern, so das es eine weitere Spalte in der Tabelle fe_users gibt, die im Frontend (Beim Registrieurungsprozess) und im Backend angezeigt wird

Achtung

  • um hier nicht zu viel zu dokumentieren ist ausschließlich der Registrierungsprozess abgebildet, nicht das Bearbeiten eines Users, dies muss analog umgesetzt werden
  • _source muss natürlich source heißen!!!!!

Source Code Datei:Ncregisterplus.vosp.0.0.1.tar.gz Stand 19.09.2015 17:00

Grundlage ist typo362 [6.2.15] mit Distribution Aimeos web shop distribution

ext_emconf.php

Das Übliche, wichtig ist natürlich hier anzugeben das sf_register Voraussetzung ist

<?php

$EM_CONF[$_EXTKEY] = array(
    'title' => 'registerplus',
    'description' => '',
    'category' => 'plugin',
    'author' => 'netz.coop eG',
    'author_email' => 'code[at]netz.coop',
    'state' => 'alpha',
    'internal' => '',
    'uploadfolder' => '0',
    'createDirs' => '',
    'clearCacheOnLoad' => 0,
    'version' => '0.0.1',
    'constraints' => array(
        'depends' => array(
            'typo3' => '6.2',
            'sf_register' => '6.2.7'
        ),
        'conflicts' => array(
        ),
        'suggests' => array(
        ),
    ),
);

ext_tables.sql

Die Spalte als Sql

#
# Table structure for table 'fe_users'
#
CREATE TABLE fe_users (
	agency varchar(50) DEFAULT '',
);


ext_tables.php

hier dem TCA mitteilen das es eine neue Spalte zu zeigen gibt

<?php
if (!defined('TYPO3_MODE')) {
	die('Access denied.');
}

$TCA['fe_users']['interface']['showRecordFieldList'] .= ',agency';


Configuration/TCA/Overrides/fe_users.php

mit TCA Typo3 mitteilen um was es sich für eine Spalte handelt, zusätzlich schon mal die Backend Sprachdatei (locallang_be.xml) angeben, damit ist für die Backendansicht eigentlich auch schon alles getan und siehe da wenn mensch sich nun ein Frontend Benutzer im Backend anschaut, gibts schon unser neues Feld

<?php

defined('TYPO3_MODE') or die();

use TYPO3\CMS\Core\Utility\ExtensionManagementUtility;

$temporaryColumns = array(
    'agency' => array(
        'exclude' => 0,
        'label' => 'LLL:EXT:ncregisterplus/Resources/Private/Language/locallang_be.xml:fe_users.agency',
        'config' => array(
            'type' => 'input',
            'size' => '20',
            'max' => '50',
            'eval' => 'trim',
        )
    ),
);

ExtensionManagementUtility::addTCAcolumns('fe_users', $temporaryColumns);
ExtensionManagementUtility::addToAllTCAtypes('fe_users', 'agency', '', 'after:username');
ExtensionManagementUtility::addToAllTCAtypes(
        'fe_users', '--div--;LLL:EXT:ncregisterplus/Resources/Private/Language/locallang_be.xml:fe_users.div.registration,
		agency'
);

Resources/Private/Language/locallang_be.xlf

Achtung: _source muss natürlich source heißen!!!!!

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<!--
    locallang_be - relevant fürs Backend
    netz.coop eG
-->
<xliff version="1.0">
    <file source-language="de" datatype="plaintext" original="messages" date="2015-09-18T11:47:32Z" product-name="ncregisterplus">
        <header/>
        <body>
            <trans-unit id="fe_users.div.registration" xml:space="preserve">
		<_source>Registration</_source>
            </trans-unit>                    
            <trans-unit id="fe_users.agency" xml:space="preserve">
		<_source>Abteilung</_source>
            </trans-unit>
        </body>
    </file>        
</xliff>

Achtung: _source muss natürlich source heißen!!!!!

Classes/Domain/...

damit Typo3 jetzt auch schön auf die Datenbank zu greifen kann ....

Classes/Domain/Model/FrontendUser.php

<?php

namespace Nc\Ncregisterplus\Domain\Model;

/* * *************************************************************
 * Copyright notice
 *
 * (c) 2015 netz.coop eG <code@netz.coop>
 * All rights reserved
 *
 * ************************************************************* */

/**
 * An extended frontend user with more attributes
 */
class FrontendUser extends \Evoweb\SfRegister\Domain\Model\FrontendUser {

    /**
     * Agency
     *
     * @var string
     */
    protected $agency;

    /**
     * Getter for agency
     *
     * @return string
     */
    public function getAgency() {
        return $this->agency;
    }

    /**
     * Setter for agency
     *
     * @param string $agency
     * @return void
     */
    public function setAgency($agency) {
        $this->agency = $agency;
    }

}

Classes/Domain/Repository/FrontendUserRepository.php

<?php

namespace Nc\Ncregisterplus\Domain\Repository;

/**
 * A repository for feusers
 */
class FrontendUserRepository extends \Evoweb\SfRegister\Domain\Repository\FrontendUserRepository {
    
}

Resources/Private/

Resources/Private/Language/locallang.xlf

Achtung: _source muss natürlich source heißen!!!!!

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<!--
    locallang - relevant fürs Frontend
    netz.coop eG
-->
<xliff version="1.0">
    <file source-language="en" datatype="plaintext" original="messages" date="2015-09-18T11:47:32Z" product-name="ncregisterplus">
        <header/>
        <body>
            <trans-unit id="agency" xml:space="preserve">
		<_source>Agency</_source>
            </trans-unit>                    
        </body>
    </file>
</xliff>

Achtung: _source muss natürlich source heißen!!!!!

Resources/Private/Templates/FeuserCreate/ - Templates

jetzt muss nur noch das Frontend angepasst werden, also werden wir jetzt als Vorlage schon mal die Templates von sf_register zu uns kopieren

cp typo3conf/ext/sf_register/Resources/Private/Templates/FeuserCreate/*.html typo3conf/ext/ncregisterplus/Resources/Private/Templates/FeuserCreate/

Achtung

  • Wir werden hier jetzt nur das Form.html Template anpassen; Preview.html sollte natürlich auch angepasst werden!!!
  • Resources/Private/Templates/FeuserEdit/Form.html wird wie oben schon angedeutet erstmal einfach ignoriert
  • Verknüpfung sie unten TYPO3.CMS_6.2_Extension_entwickeln#ext_typoscript_setup.txt
Resources/Private/Templates/FeuserCreate/Form.html
<!-- der namespace bleibt genauso wie er ist, denn wir greifen ja von unserer neuen Extension auf die sf_register ViewHelper drauf zu -->
{namespace register=Evoweb\SfRegister\ViewHelpers}
<?xml version="1.0" encoding="UTF-8" ?>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en"
	  xmlns:register="http://www.evoweb.de/ns/SfRegister/ViewHelpers"
	  xmlns:f="http://typo3.org/ns/TYPO3/Fluid/ViewHelpers">
<head>
	<title>Create form template of registration</title>
</head>
<body>
<f:layout name="Default" />
<f:section name="Main">
<f:form action="preview" name="user" object="{user}" enctype="multipart/form-data">
	<f:render partial="FormErrors" section="Main" arguments="{for: 'user'}" />
	<f:render partial="FieldError" section="Main" arguments="{field: 'uid'}" />

	<dl>
		<dt>
			<f:translate key="username" />
			<f:render partial="Required" section="Main" arguments="{field: 'username'}" />
		</dt>
		<dd>
			<f:render partial="FieldError" section="Main" arguments="{for: 'user', field: 'username'}" />
			<f:form.textfield property="username" />
		</dd>

<!-- .......... jetzt kommt eigentlich nur unser neues Feld dazu  ..... -->

		<dt>
			<!-- hier geben wir jetzt unsere Frontend Sprach Datei an -->
			<f:translate key="LLL:EXT:ncregisterplus/Resources/Private/Language/locallang.xml:agency" />
			<f:render partial="Required" section="Main" arguments="{field: 'agency'}" />
		</dt>
		<dd>
			<f:render partial="FieldError" section="Main" arguments="{for: 'user', field: 'agency'}" />
			<f:form.textfield property="agency" />
		</dd>  

<!-- .......... alles andere was da noch kommt ..... -->
		<dt>&nbsp;</dt>
		<dd>
			<f:form.submit class="submit" value="{f:translate(key:'submit_create')}" />
		</dd>
	</dl>
</f:form>
<div class="mandatory">
	<f:translate key="info_mandatory_fields" htmlEscape="false" />
</div>
</f:section>
</body>
</html>

ext_typoscript_setup.txt

Hier wird jetzt noch unser neuer Code per TypoScript dem System mitgeteilt:

// https://docs.typo3.org/typo3cms/extensions/sf_register/Templating/Index.html
plugin.tx_sfregister.view.templateRootPaths.1 = EXT:ncregisterplus/Resources/Private/Templates/

config.tx_extbase {
    objects {
        Evoweb\SfRegister\Domain\Model\FrontendUser {
            className = Nc\Ncregisterplus\Domain\Model\FrontendUser
        }
    }
    persistence {
        classes {
            Nc\Ncregisterplus\Domain\Model\FrontendUser {
                mapping {
                    tableName = fe_users
                }
            }
        }
    }
}