[INIT]
This commit is contained in:
commit
baa56b6dc3
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
/vendor/
|
30
Classes/Controller/DummyController.php
Normal file
30
Classes/Controller/DummyController.php
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
<?php
|
||||||
|
namespace Cjel\TemplatesAide\Controller;
|
||||||
|
|
||||||
|
/***
|
||||||
|
*
|
||||||
|
* This file is part of the "Templates Aide" Extension for TYPO3 CMS.
|
||||||
|
*
|
||||||
|
* For the full copyright and license information, please read the
|
||||||
|
* LICENSE.txt file that was distributed with this source code.
|
||||||
|
*
|
||||||
|
* (c) 2018 Philipp Dieter <philippdieter@attic-media.net>
|
||||||
|
*
|
||||||
|
***/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* DummyController
|
||||||
|
*/
|
||||||
|
class DummyController extends \TYPO3\CMS\Extbase\Mvc\Controller\ActionController
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* action list
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function listAction()
|
||||||
|
{
|
||||||
|
$dummies = $this->dummyRepository->findAll();
|
||||||
|
$this->view->assign('dummies', $dummies);
|
||||||
|
}
|
||||||
|
}
|
20
Classes/Domain/Model/Dummy.php
Normal file
20
Classes/Domain/Model/Dummy.php
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
<?php
|
||||||
|
namespace Cjel\TemplatesAide\Domain\Model;
|
||||||
|
|
||||||
|
/***
|
||||||
|
*
|
||||||
|
* This file is part of the "Templates Aide" Extension for TYPO3 CMS.
|
||||||
|
*
|
||||||
|
* For the full copyright and license information, please read the
|
||||||
|
* LICENSE.txt file that was distributed with this source code.
|
||||||
|
*
|
||||||
|
* (c) 2018 Philipp Dieter <philippdieter@attic-media.net>
|
||||||
|
*
|
||||||
|
***/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Dummy
|
||||||
|
*/
|
||||||
|
class Dummy extends \TYPO3\CMS\Extbase\DomainObject\AbstractEntity
|
||||||
|
{
|
||||||
|
}
|
46
Classes/Hooks/WizardItems.php
Normal file
46
Classes/Hooks/WizardItems.php
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
<?php
|
||||||
|
namespace Cjel\TemplatesAide\Hooks;
|
||||||
|
|
||||||
|
/***
|
||||||
|
*
|
||||||
|
* This file is part of the "Templates Aide" Extension for TYPO3 CMS.
|
||||||
|
*
|
||||||
|
* For the full copyright and license information, please read the
|
||||||
|
* LICENSE.txt file that was distributed with this source code.
|
||||||
|
*
|
||||||
|
* (c) 2018 Philipp Dieter <philippdieter@attic-media.net>
|
||||||
|
*
|
||||||
|
***/
|
||||||
|
|
||||||
|
//use GridElementsTeam\Gridelements\Backend\LayoutSetup;
|
||||||
|
//use TYPO3\CMS\Backend\Controller\ContentElement\NewContentElementController;
|
||||||
|
//use TYPO3\CMS\Backend\Utility\BackendUtility;
|
||||||
|
use TYPO3\CMS\Backend\Wizard\NewContentElementWizardHookInterface;
|
||||||
|
//use TYPO3\CMS\Core\Imaging\IconProvider\BitmapIconProvider;
|
||||||
|
//use TYPO3\CMS\Core\Imaging\IconProvider\SvgIconProvider;
|
||||||
|
//use TYPO3\CMS\Core\Imaging\IconRegistry;
|
||||||
|
//use TYPO3\CMS\Core\Utility\GeneralUtility;
|
||||||
|
//use TYPO3\CMS\Core\Utility\StringUtility;
|
||||||
|
//use TYPO3\CMS\Lang\LanguageService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class/Function which manipulates the rendering of items within the new content element wizard
|
||||||
|
*
|
||||||
|
* @author Jo Hasenau <info@cybercraft.de>, Tobias Ferger <tobi@tt36.de>
|
||||||
|
* @package TYPO3
|
||||||
|
* @subpackage tx_gridelements
|
||||||
|
*/
|
||||||
|
class WizardItems implements NewContentElementWizardHookInterface
|
||||||
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param array $wizardItems The array containing the current status of the wizard item list before rendering
|
||||||
|
* @param NewContentElementController $parentObject The parent object that triggered this hook
|
||||||
|
*/
|
||||||
|
public function manipulateWizardItems(&$wizardItems, &$parentObject)
|
||||||
|
{
|
||||||
|
\TYPO3\CMS\Core\Utility\DebugUtility::debug($parentObject);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
101
Configuration/ExtensionBuilder/settings.yaml
Normal file
101
Configuration/ExtensionBuilder/settings.yaml
Normal file
@ -0,0 +1,101 @@
|
|||||||
|
#
|
||||||
|
# Extension Builder settings for extension templates_aide
|
||||||
|
# generated 2018-11-29T12:57:00Z
|
||||||
|
#
|
||||||
|
# See http://www.yaml.org/spec/1.2/spec.html
|
||||||
|
#
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
########### Overwrite settings ###########
|
||||||
|
#
|
||||||
|
# These settings only apply, if the roundtrip feature of the extension builder
|
||||||
|
# is enabled in the extension manager
|
||||||
|
#
|
||||||
|
# Usage:
|
||||||
|
# nesting reflects the file structure
|
||||||
|
# a setting applies to a file or recursive to all files and subfolders
|
||||||
|
#
|
||||||
|
# merge:
|
||||||
|
# means for classes: All properties ,methods and method bodies
|
||||||
|
# of the existing class will be modified according to the new settings
|
||||||
|
# but not overwritten
|
||||||
|
#
|
||||||
|
# for locallang xlf files: Existing keys and labels are always
|
||||||
|
# preserved (renaming a property or DomainObject will result in new keys and new labels)
|
||||||
|
#
|
||||||
|
# for other files: You will find a Split token at the end of the file
|
||||||
|
# see: \EBT\ExtensionBuilder\Service\RoundTrip::SPLIT_TOKEN
|
||||||
|
#
|
||||||
|
# After this token you can write whatever you want and it will be appended
|
||||||
|
# everytime the code is generated
|
||||||
|
#
|
||||||
|
# keep:
|
||||||
|
# files are never overwritten
|
||||||
|
# These settings may break the functionality of the extension builder!
|
||||||
|
# Handle with care!
|
||||||
|
#
|
||||||
|
#
|
||||||
|
|
||||||
|
############ extension settings ##############
|
||||||
|
|
||||||
|
overwriteSettings:
|
||||||
|
Classes:
|
||||||
|
Controller: merge
|
||||||
|
Domain:
|
||||||
|
Model: merge
|
||||||
|
Repository: merge
|
||||||
|
|
||||||
|
Configuration:
|
||||||
|
#TCA merge not possible - use overrides directory
|
||||||
|
TypoScript: merge
|
||||||
|
|
||||||
|
Resources:
|
||||||
|
Private:
|
||||||
|
Language: merge
|
||||||
|
Templates: keep
|
||||||
|
|
||||||
|
user_extension.svg: keep
|
||||||
|
|
||||||
|
ext_localconf.php: merge
|
||||||
|
|
||||||
|
ext_tables.php: merge
|
||||||
|
|
||||||
|
ext_tables.sql: merge
|
||||||
|
|
||||||
|
## use static date attribute in xliff files ##
|
||||||
|
#staticDateInXliffFiles: 2018-11-29T12:57:00Z
|
||||||
|
|
||||||
|
## skip docComment (license header) ##
|
||||||
|
#skipDocComment
|
||||||
|
|
||||||
|
## list of error codes for warnings that should be ignored ##
|
||||||
|
#ignoreWarnings:
|
||||||
|
#503
|
||||||
|
|
||||||
|
######### settings for classBuilder #############################
|
||||||
|
#
|
||||||
|
# here you may define default parent classes for your classes
|
||||||
|
# these settings only apply for new generated classes
|
||||||
|
# you may also just change the parent class in the generated class file.
|
||||||
|
# It will be kept on next code generation, if the overwrite settings
|
||||||
|
# are configured to merge it
|
||||||
|
#
|
||||||
|
#################################################################
|
||||||
|
|
||||||
|
classBuilder:
|
||||||
|
|
||||||
|
Controller:
|
||||||
|
parentClass: \TYPO3\CMS\Extbase\Mvc\Controller\ActionController
|
||||||
|
|
||||||
|
Model:
|
||||||
|
AbstractEntity:
|
||||||
|
parentClass: \TYPO3\CMS\Extbase\DomainObject\AbstractEntity
|
||||||
|
|
||||||
|
AbstractValueObject:
|
||||||
|
parentClass: \TYPO3\CMS\Extbase\DomainObject\AbstractValueObject
|
||||||
|
|
||||||
|
Repository:
|
||||||
|
parentClass: \TYPO3\CMS\Extbase\Persistence\Repository
|
||||||
|
|
||||||
|
setDefaultValuesForClassProperties: true
|
119
Configuration/TCA/tx_templatesaide_domain_model_dummy.php
Normal file
119
Configuration/TCA/tx_templatesaide_domain_model_dummy.php
Normal file
@ -0,0 +1,119 @@
|
|||||||
|
<?php
|
||||||
|
return [
|
||||||
|
'ctrl' => [
|
||||||
|
'title' => 'LLL:EXT:templates_aide/Resources/Private/Language/locallang_db.xlf:tx_templatesaide_domain_model_dummy',
|
||||||
|
'label' => 'uid',
|
||||||
|
'tstamp' => 'tstamp',
|
||||||
|
'crdate' => 'crdate',
|
||||||
|
'cruser_id' => 'cruser_id',
|
||||||
|
'versioningWS' => true,
|
||||||
|
'languageField' => 'sys_language_uid',
|
||||||
|
'transOrigPointerField' => 'l10n_parent',
|
||||||
|
'transOrigDiffSourceField' => 'l10n_diffsource',
|
||||||
|
'delete' => 'deleted',
|
||||||
|
'enablecolumns' => [
|
||||||
|
'disabled' => 'hidden',
|
||||||
|
'starttime' => 'starttime',
|
||||||
|
'endtime' => 'endtime',
|
||||||
|
],
|
||||||
|
'searchFields' => '',
|
||||||
|
'iconfile' => 'EXT:templates_aide/Resources/Public/Icons/tx_templatesaide_domain_model_dummy.gif'
|
||||||
|
],
|
||||||
|
'interface' => [
|
||||||
|
'showRecordFieldList' => 'sys_language_uid, l10n_parent, l10n_diffsource, hidden, ',
|
||||||
|
],
|
||||||
|
'types' => [
|
||||||
|
'1' => ['showitem' => 'sys_language_uid, l10n_parent, l10n_diffsource, hidden, , --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access, starttime, endtime'],
|
||||||
|
],
|
||||||
|
'columns' => [
|
||||||
|
'sys_language_uid' => [
|
||||||
|
'exclude' => true,
|
||||||
|
'label' => 'LLL:EXT:lang/locallang_general.xlf:LGL.language',
|
||||||
|
'config' => [
|
||||||
|
'type' => 'select',
|
||||||
|
'renderType' => 'selectSingle',
|
||||||
|
'special' => 'languages',
|
||||||
|
'items' => [
|
||||||
|
[
|
||||||
|
'LLL:EXT:lang/locallang_general.xlf:LGL.allLanguages',
|
||||||
|
-1,
|
||||||
|
'flags-multiple'
|
||||||
|
]
|
||||||
|
],
|
||||||
|
'default' => 0,
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'l10n_parent' => [
|
||||||
|
'displayCond' => 'FIELD:sys_language_uid:>:0',
|
||||||
|
'exclude' => true,
|
||||||
|
'label' => 'LLL:EXT:lang/locallang_general.xlf:LGL.l18n_parent',
|
||||||
|
'config' => [
|
||||||
|
'type' => 'select',
|
||||||
|
'renderType' => 'selectSingle',
|
||||||
|
'default' => 0,
|
||||||
|
'items' => [
|
||||||
|
['', 0],
|
||||||
|
],
|
||||||
|
'foreign_table' => 'tx_templatesaide_domain_model_dummy',
|
||||||
|
'foreign_table_where' => 'AND tx_templatesaide_domain_model_dummy.pid=###CURRENT_PID### AND tx_templatesaide_domain_model_dummy.sys_language_uid IN (-1,0)',
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'l10n_diffsource' => [
|
||||||
|
'config' => [
|
||||||
|
'type' => 'passthrough',
|
||||||
|
],
|
||||||
|
],
|
||||||
|
't3ver_label' => [
|
||||||
|
'label' => 'LLL:EXT:lang/locallang_general.xlf:LGL.versionLabel',
|
||||||
|
'config' => [
|
||||||
|
'type' => 'input',
|
||||||
|
'size' => 30,
|
||||||
|
'max' => 255,
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'hidden' => [
|
||||||
|
'exclude' => true,
|
||||||
|
'label' => 'LLL:EXT:lang/locallang_general.xlf:LGL.hidden',
|
||||||
|
'config' => [
|
||||||
|
'type' => 'check',
|
||||||
|
'items' => [
|
||||||
|
'1' => [
|
||||||
|
'0' => 'LLL:EXT:lang/Resources/Private/Language/locallang_core.xlf:labels.enabled'
|
||||||
|
]
|
||||||
|
],
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'starttime' => [
|
||||||
|
'exclude' => true,
|
||||||
|
'behaviour' => [
|
||||||
|
'allowLanguageSynchronization' => true
|
||||||
|
],
|
||||||
|
'label' => 'LLL:EXT:lang/locallang_general.xlf:LGL.starttime',
|
||||||
|
'config' => [
|
||||||
|
'type' => 'input',
|
||||||
|
'renderType' => 'inputDateTime',
|
||||||
|
'size' => 13,
|
||||||
|
'eval' => 'datetime',
|
||||||
|
'default' => 0,
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'endtime' => [
|
||||||
|
'exclude' => true,
|
||||||
|
'behaviour' => [
|
||||||
|
'allowLanguageSynchronization' => true
|
||||||
|
],
|
||||||
|
'label' => 'LLL:EXT:lang/locallang_general.xlf:LGL.endtime',
|
||||||
|
'config' => [
|
||||||
|
'type' => 'input',
|
||||||
|
'renderType' => 'inputDateTime',
|
||||||
|
'size' => 13,
|
||||||
|
'eval' => 'datetime',
|
||||||
|
'default' => 0,
|
||||||
|
'range' => [
|
||||||
|
'upper' => mktime(0, 0, 0, 1, 1, 2038)
|
||||||
|
],
|
||||||
|
],
|
||||||
|
],
|
||||||
|
|
||||||
|
],
|
||||||
|
];
|
82
Documentation.tmpl/Administrator/Index.rst
Normal file
82
Documentation.tmpl/Administrator/Index.rst
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
.. ==================================================
|
||||||
|
.. FOR YOUR INFORMATION
|
||||||
|
.. --------------------------------------------------
|
||||||
|
.. -*- coding: utf-8 -*- with BOM.
|
||||||
|
|
||||||
|
.. include:: ../Includes.txt
|
||||||
|
|
||||||
|
|
||||||
|
.. _admin-manual:
|
||||||
|
|
||||||
|
Administrator Manual
|
||||||
|
====================
|
||||||
|
|
||||||
|
Target group: **Administrators**
|
||||||
|
|
||||||
|
Describes how to manage the extension from an administrator point of view.
|
||||||
|
That relates to Page/User TSconfig, permissions, configuration etc.,
|
||||||
|
which administrator level users have access to.
|
||||||
|
|
||||||
|
Language should be non / semi-technical, explaining, using small examples.
|
||||||
|
|
||||||
|
|
||||||
|
.. _admin-installation:
|
||||||
|
|
||||||
|
Installation
|
||||||
|
------------
|
||||||
|
|
||||||
|
- How should the extension be installed?
|
||||||
|
- Are they dependencies to resolve?
|
||||||
|
- Is it a static template file to be included?
|
||||||
|
|
||||||
|
To install the extension, perform the following steps:
|
||||||
|
|
||||||
|
#. Go to the Extension Manager
|
||||||
|
#. Install the extension
|
||||||
|
#. Load the static template
|
||||||
|
#. ...
|
||||||
|
|
||||||
|
For a list of configuration options, using a definition list is recommended:
|
||||||
|
|
||||||
|
Some Configuration
|
||||||
|
This option enables...
|
||||||
|
|
||||||
|
Other configuration
|
||||||
|
This other option is for all the rest...
|
||||||
|
|
||||||
|
|
||||||
|
.. figure:: ../Images/AdministratorManual/ExtensionManager.png
|
||||||
|
:alt: Extension Manager
|
||||||
|
|
||||||
|
Extension Manager (caption of the image)
|
||||||
|
|
||||||
|
List of extensions within the Extension Manager also shorten with "EM" (legend of the image)
|
||||||
|
|
||||||
|
|
||||||
|
.. _admin-configuration:
|
||||||
|
|
||||||
|
Configuration
|
||||||
|
-------------
|
||||||
|
|
||||||
|
* Where and how the extension should be configured? TypoScript? PHP?
|
||||||
|
|
||||||
|
* Are there other prerequisite to full fill beforehand?
|
||||||
|
For example, configure a setting in a special way somewhere.
|
||||||
|
|
||||||
|
|
||||||
|
.. _admin-faq:
|
||||||
|
|
||||||
|
FAQ
|
||||||
|
---
|
||||||
|
|
||||||
|
Possible subsection: FAQ
|
||||||
|
|
||||||
|
Subsection
|
||||||
|
^^^^^^^^^^
|
||||||
|
|
||||||
|
Some subsection
|
||||||
|
|
||||||
|
Sub-subsection
|
||||||
|
""""""""""""""
|
||||||
|
|
||||||
|
Deeper into the structure...
|
16
Documentation.tmpl/ChangeLog/Index.rst
Normal file
16
Documentation.tmpl/ChangeLog/Index.rst
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
.. ==================================================
|
||||||
|
.. FOR YOUR INFORMATION
|
||||||
|
.. --------------------------------------------------
|
||||||
|
.. -*- coding: utf-8 -*- with BOM.
|
||||||
|
|
||||||
|
.. include:: ../Includes.txt
|
||||||
|
|
||||||
|
|
||||||
|
.. _changelog:
|
||||||
|
|
||||||
|
ChangeLog
|
||||||
|
=========
|
||||||
|
|
||||||
|
Providing a change log chapter is optional. You can also refer
|
||||||
|
users to the ChangeLog file inside the extension or to some repository's
|
||||||
|
commit listing.
|
106
Documentation.tmpl/Configuration/Index.rst
Normal file
106
Documentation.tmpl/Configuration/Index.rst
Normal file
@ -0,0 +1,106 @@
|
|||||||
|
.. ==================================================
|
||||||
|
.. FOR YOUR INFORMATION
|
||||||
|
.. --------------------------------------------------
|
||||||
|
.. -*- coding: utf-8 -*- with BOM.
|
||||||
|
|
||||||
|
.. include:: ../Includes.txt
|
||||||
|
|
||||||
|
|
||||||
|
.. _configuration:
|
||||||
|
|
||||||
|
Configuration Reference
|
||||||
|
=======================
|
||||||
|
|
||||||
|
Technical information: Installation, Reference of TypoScript options,
|
||||||
|
configuration options on system level, how to extend it, the technical
|
||||||
|
details, how to debug it and so on.
|
||||||
|
|
||||||
|
Language should be technical, assuming developer knowledge of TYPO3.
|
||||||
|
Small examples/visuals are always encouraged.
|
||||||
|
|
||||||
|
Target group: **Developers**
|
||||||
|
|
||||||
|
|
||||||
|
.. _configuration-typoscript:
|
||||||
|
|
||||||
|
TypoScript Reference
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
Possible subsections: Reference of TypoScript options.
|
||||||
|
The construct below show the recommended structure for
|
||||||
|
TypoScript properties listing and description.
|
||||||
|
|
||||||
|
Properties should be listed in the order in which they
|
||||||
|
are executed by your extension, but the first should be
|
||||||
|
alphabetical for easier access.
|
||||||
|
|
||||||
|
When detailing data types or standard TypoScript
|
||||||
|
features, don't hesitate to cross-link to the TypoScript
|
||||||
|
Reference as shown below. See the :file:`Settings.yml`
|
||||||
|
file for the declaration of cross-linking keys.
|
||||||
|
|
||||||
|
|
||||||
|
Properties
|
||||||
|
^^^^^^^^^^
|
||||||
|
|
||||||
|
.. container:: ts-properties
|
||||||
|
|
||||||
|
=========================== ===================================== ======================= ====================
|
||||||
|
Property Data type :ref:`t3tsref:stdwrap` Default
|
||||||
|
=========================== ===================================== ======================= ====================
|
||||||
|
allWrap_ :ref:`t3tsref:data-type-wrap` yes :code:`<div>|</div>`
|
||||||
|
`subst\_elementUid`_ :ref:`t3tsref:data-type-boolean` no 0
|
||||||
|
wrapItemAndSub_ :ref:`t3tsref:data-type-wrap`
|
||||||
|
=========================== ===================================== ======================= ====================
|
||||||
|
|
||||||
|
|
||||||
|
Property details
|
||||||
|
^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
.. only:: html
|
||||||
|
|
||||||
|
.. contents::
|
||||||
|
:local:
|
||||||
|
:depth: 1
|
||||||
|
|
||||||
|
|
||||||
|
.. _ts-plugin-tx-extensionkey-stdwrap:
|
||||||
|
|
||||||
|
allWrap
|
||||||
|
"""""""
|
||||||
|
|
||||||
|
:typoscript:`plugin.tx_extensionkey.allWrap =` :ref:`t3tsref:data-type-wrap`
|
||||||
|
|
||||||
|
Wraps the whole item.
|
||||||
|
|
||||||
|
|
||||||
|
.. _ts-plugin-tx-extensionkey-wrapitemandsub:
|
||||||
|
|
||||||
|
wrapItemAndSub
|
||||||
|
""""""""""""""
|
||||||
|
|
||||||
|
:typoscript:`plugin.tx_extensionkey.wrapItemAndSub =` :ref:`t3tsref:data-type-wrap`
|
||||||
|
|
||||||
|
Wraps the whole item and any submenu concatenated to it.
|
||||||
|
|
||||||
|
|
||||||
|
.. _ts-plugin-tx-extensionkey-substelementUid:
|
||||||
|
|
||||||
|
subst_elementUid
|
||||||
|
""""""""""""""""
|
||||||
|
|
||||||
|
:typoscript:`plugin.tx_extensionkey.subst_elementUid =` :ref:`t3tsref:data-type-boolean`
|
||||||
|
|
||||||
|
If set, all appearances of the string ``{elementUid}`` in the total
|
||||||
|
element html-code (after wrapped in allWrap_) are substituted with the
|
||||||
|
uid number of the menu item. This is useful if you want to insert an
|
||||||
|
identification code in the HTML in order to manipulate properties with
|
||||||
|
JavaScript.
|
||||||
|
|
||||||
|
|
||||||
|
.. _configuration-faq:
|
||||||
|
|
||||||
|
FAQ
|
||||||
|
---
|
||||||
|
|
||||||
|
Possible subsection: FAQ
|
60
Documentation.tmpl/Developer/Index.rst
Normal file
60
Documentation.tmpl/Developer/Index.rst
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
.. ==================================================
|
||||||
|
.. FOR YOUR INFORMATION
|
||||||
|
.. --------------------------------------------------
|
||||||
|
.. -*- coding: utf-8 -*- with BOM.
|
||||||
|
|
||||||
|
.. include:: ../Includes.txt
|
||||||
|
|
||||||
|
|
||||||
|
.. _developer:
|
||||||
|
|
||||||
|
Developer Corner
|
||||||
|
================
|
||||||
|
|
||||||
|
Target group: **Developers**
|
||||||
|
|
||||||
|
Use this section for *providing code examples* or any **useful** information code wise.
|
||||||
|
|
||||||
|
|
||||||
|
.. _developer-hooks:
|
||||||
|
|
||||||
|
Hooks
|
||||||
|
-----
|
||||||
|
|
||||||
|
Possible hook examples. Input parameters are:
|
||||||
|
|
||||||
|
+----------------+---------------+---------------------------------+
|
||||||
|
| Parameter | Data type | Description |
|
||||||
|
+================+===============+=================================+
|
||||||
|
| $table | string | Name of the table |
|
||||||
|
+----------------+---------------+---------------------------------+
|
||||||
|
| $field | string | Name of the field |
|
||||||
|
+----------------+---------------+---------------------------------+
|
||||||
|
|
||||||
|
Use parameter :code:`$table` to retrieve the table name...
|
||||||
|
|
||||||
|
.. _developer-api:
|
||||||
|
|
||||||
|
API
|
||||||
|
---
|
||||||
|
|
||||||
|
How to use the API...
|
||||||
|
|
||||||
|
.. code-block:: php
|
||||||
|
|
||||||
|
$stuff = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(
|
||||||
|
'\\Foo\\Bar\\Utility\\Stuff'
|
||||||
|
);
|
||||||
|
$stuff->do();
|
||||||
|
|
||||||
|
or some other language:
|
||||||
|
|
||||||
|
.. code-block:: javascript
|
||||||
|
:linenos:
|
||||||
|
:emphasize-lines: 2-4
|
||||||
|
|
||||||
|
$(document).ready(
|
||||||
|
function () {
|
||||||
|
doStuff();
|
||||||
|
}
|
||||||
|
);
|
Binary file not shown.
After Width: | Height: | Size: 153 KiB |
BIN
Documentation.tmpl/Images/IntroductionPackage.png
Normal file
BIN
Documentation.tmpl/Images/IntroductionPackage.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 120 KiB |
BIN
Documentation.tmpl/Images/UserManual/BackendView.png
Normal file
BIN
Documentation.tmpl/Images/UserManual/BackendView.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 226 KiB |
21
Documentation.tmpl/Includes.txt
Normal file
21
Documentation.tmpl/Includes.txt
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
.. ==================================================
|
||||||
|
.. FOR YOUR INFORMATION
|
||||||
|
.. --------------------------------------------------
|
||||||
|
.. -*- coding: utf-8 -*- with BOM.
|
||||||
|
|
||||||
|
.. This is 'Includes.txt'. It is included at the very top of each and
|
||||||
|
every ReST source file in this documentation project (= manual).
|
||||||
|
|
||||||
|
|
||||||
|
.. ==================================================
|
||||||
|
.. DEFINE SOME TEXT ROLES
|
||||||
|
.. --------------------------------------------------
|
||||||
|
|
||||||
|
.. role:: typoscript(code)
|
||||||
|
|
||||||
|
.. role:: ts(typoscript)
|
||||||
|
:class: typoscript
|
||||||
|
|
||||||
|
.. role:: php(code)
|
||||||
|
|
||||||
|
.. highlight:: php
|
63
Documentation.tmpl/Index.rst
Normal file
63
Documentation.tmpl/Index.rst
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
.. ==================================================
|
||||||
|
.. FOR YOUR INFORMATION
|
||||||
|
.. --------------------------------------------------
|
||||||
|
.. -*- coding: utf-8 -*- with BOM.
|
||||||
|
|
||||||
|
.. include:: Includes.txt
|
||||||
|
|
||||||
|
.. _start:
|
||||||
|
|
||||||
|
=============================================================
|
||||||
|
Templates Aide
|
||||||
|
=============================================================
|
||||||
|
|
||||||
|
.. only:: html
|
||||||
|
|
||||||
|
:Classification:
|
||||||
|
templates_aide
|
||||||
|
|
||||||
|
:Version:
|
||||||
|
|release|
|
||||||
|
|
||||||
|
:Language:
|
||||||
|
en
|
||||||
|
|
||||||
|
:Description:
|
||||||
|
|
||||||
|
:Keywords:
|
||||||
|
comma,separated,list,of,keywords
|
||||||
|
|
||||||
|
:Copyright:
|
||||||
|
2018
|
||||||
|
|
||||||
|
:Author:
|
||||||
|
Philipp Dieter
|
||||||
|
|
||||||
|
:Email:
|
||||||
|
philippdieter@attic-media.net
|
||||||
|
|
||||||
|
:License:
|
||||||
|
This document is published under the Open Content License
|
||||||
|
available from http://www.opencontent.org/opl.shtml
|
||||||
|
|
||||||
|
:Rendered:
|
||||||
|
|today|
|
||||||
|
|
||||||
|
The content of this document is related to TYPO3,
|
||||||
|
a GNU/GPL CMS/Framework available from `www.typo3.org <http://www.typo3.org/>`_.
|
||||||
|
|
||||||
|
**Table of Contents**
|
||||||
|
|
||||||
|
.. toctree::
|
||||||
|
:maxdepth: 3
|
||||||
|
:titlesonly:
|
||||||
|
|
||||||
|
Introduction/Index
|
||||||
|
User/Index
|
||||||
|
Administrator/Index
|
||||||
|
Configuration/Index
|
||||||
|
Developer/Index
|
||||||
|
KnownProblems/Index
|
||||||
|
ToDoList/Index
|
||||||
|
ChangeLog/Index
|
||||||
|
Links
|
46
Documentation.tmpl/Introduction/Index.rst
Normal file
46
Documentation.tmpl/Introduction/Index.rst
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
.. ==================================================
|
||||||
|
.. FOR YOUR INFORMATION
|
||||||
|
.. --------------------------------------------------
|
||||||
|
.. -*- coding: utf-8 -*- with BOM.
|
||||||
|
|
||||||
|
.. include:: ../Includes.txt
|
||||||
|
|
||||||
|
|
||||||
|
.. _introduction:
|
||||||
|
|
||||||
|
Introduction
|
||||||
|
============
|
||||||
|
|
||||||
|
|
||||||
|
.. _what-it-does:
|
||||||
|
|
||||||
|
What does it do?
|
||||||
|
----------------
|
||||||
|
|
||||||
|
This chapter should give a brief overview of the extension. What does it do? What problems does it solve?
|
||||||
|
Who is interested in this? Basically, this section includes everything people need to know to decide whether they
|
||||||
|
should go on with this extension or not.
|
||||||
|
|
||||||
|
.. important::
|
||||||
|
|
||||||
|
Please don't forget to repeat your extension's version number in the
|
||||||
|
:file:`Settings.yml` file, in the :code:`release` property. It will be
|
||||||
|
automatically picked up on the cover page by the :code:`|release|`
|
||||||
|
substitution.
|
||||||
|
|
||||||
|
|
||||||
|
.. _screenshots:
|
||||||
|
|
||||||
|
Screenshots
|
||||||
|
-----------
|
||||||
|
|
||||||
|
This chapter should help people figure how the extension works. Remove it
|
||||||
|
if not relevant.
|
||||||
|
|
||||||
|
.. figure:: ../Images/IntroductionPackage.png
|
||||||
|
:width: 500px
|
||||||
|
:alt: Introduction Package
|
||||||
|
|
||||||
|
Introduction Package just after installation (caption of the image)
|
||||||
|
|
||||||
|
How the Frontend of the Introduction Package looks like just after installation (legend of the image)
|
17
Documentation.tmpl/KnownProblems/Index.rst
Normal file
17
Documentation.tmpl/KnownProblems/Index.rst
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
.. ==================================================
|
||||||
|
.. FOR YOUR INFORMATION
|
||||||
|
.. --------------------------------------------------
|
||||||
|
.. -*- coding: utf-8 -*- with BOM.
|
||||||
|
|
||||||
|
.. include:: ../Includes.txt
|
||||||
|
|
||||||
|
|
||||||
|
.. _known-problems:
|
||||||
|
|
||||||
|
Known Problems
|
||||||
|
==============
|
||||||
|
|
||||||
|
Say where bugs can be reported / followed up. Is it a
|
||||||
|
`bug tracker <http://forge.typo3.org/projects/typo3cms-doc-official-extension-template/issues>`_?
|
||||||
|
Use this section for informing about any type of of problem
|
||||||
|
that are not necessarily named in the bug tracker such as performance issues, ...
|
24
Documentation.tmpl/Links.rst
Normal file
24
Documentation.tmpl/Links.rst
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
.. ==================================================
|
||||||
|
.. FOR YOUR INFORMATION
|
||||||
|
.. --------------------------------------------------
|
||||||
|
.. -*- coding: utf-8 -*- with BOM.
|
||||||
|
|
||||||
|
.. include:: Includes.txt
|
||||||
|
|
||||||
|
|
||||||
|
.. _links:
|
||||||
|
|
||||||
|
Links
|
||||||
|
-----
|
||||||
|
|
||||||
|
:TER:
|
||||||
|
https://typo3.org/extensions/repository/view/<extension key>
|
||||||
|
|
||||||
|
:Bug Tracker:
|
||||||
|
https://forge.typo3.org/projects/extension-<extension key>/issues
|
||||||
|
|
||||||
|
:Git Repository:
|
||||||
|
https://github.com/<username>/<extension key>
|
||||||
|
|
||||||
|
:Contact:
|
||||||
|
`@<username> <https://twitter.com/your-username>`__
|
65
Documentation.tmpl/Localization.de_DE.tmpl/Index.rst
Normal file
65
Documentation.tmpl/Localization.de_DE.tmpl/Index.rst
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
.. ==================================================
|
||||||
|
.. FOR YOUR INFORMATION
|
||||||
|
.. --------------------------------------------------
|
||||||
|
.. -*- coding: utf-8 -*- with BOM.
|
||||||
|
|
||||||
|
.. include:: ../Includes.txt
|
||||||
|
|
||||||
|
|
||||||
|
.. _start:
|
||||||
|
|
||||||
|
=============================================================
|
||||||
|
###PROJECT_NAME### (Deutsch)
|
||||||
|
=============================================================
|
||||||
|
|
||||||
|
.. only:: html
|
||||||
|
|
||||||
|
:Klassifikation:
|
||||||
|
extension_key
|
||||||
|
|
||||||
|
:Version:
|
||||||
|
|release|
|
||||||
|
|
||||||
|
:Sprache:
|
||||||
|
de
|
||||||
|
|
||||||
|
:Beschreibung:
|
||||||
|
Geben Sie eine Beschreibung ein.
|
||||||
|
|
||||||
|
:Schlüsselwörter:
|
||||||
|
komma-getrennte,Liste,von,Schlüsselwörtern
|
||||||
|
|
||||||
|
:Copyright:
|
||||||
|
###YEAR###
|
||||||
|
|
||||||
|
:Autor:
|
||||||
|
###AUTHOR###
|
||||||
|
|
||||||
|
:E-Mail:
|
||||||
|
author@example.com
|
||||||
|
|
||||||
|
:Lizenz:
|
||||||
|
Dieses Dokument wird unter der Open Publication License, siehe
|
||||||
|
http://www.opencontent.org/openpub/ veröffentlicht.
|
||||||
|
|
||||||
|
:Gerendert:
|
||||||
|
|today|
|
||||||
|
|
||||||
|
Der Inhalt dieses Dokuments bezieht sich auf TYPO3,
|
||||||
|
ein GNU/GPL CMS-Framework auf `www.typo3.org <https://typo3.org/>`__.
|
||||||
|
|
||||||
|
|
||||||
|
**Inhaltsverzeichnis**
|
||||||
|
|
||||||
|
.. toctree::
|
||||||
|
:maxdepth: 3
|
||||||
|
:titlesonly:
|
||||||
|
|
||||||
|
.. Introduction/Index
|
||||||
|
.. UserManual/Index
|
||||||
|
.. AdministratorManual/Index
|
||||||
|
.. Configuration/Index
|
||||||
|
.. DeveloperCorner/Index
|
||||||
|
.. KnownProblems/Index
|
||||||
|
.. ToDoList/Index
|
||||||
|
.. ChangeLog/Index
|
24
Documentation.tmpl/Localization.de_DE.tmpl/README
Normal file
24
Documentation.tmpl/Localization.de_DE.tmpl/README
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
How to translate
|
||||||
|
================
|
||||||
|
|
||||||
|
This directory contains the German translation of your documentation.
|
||||||
|
This is a complete Sphinx project but you may reuse assets from the
|
||||||
|
main documentation under Documentation/.
|
||||||
|
|
||||||
|
If you plan to translate your documentation to German, you should
|
||||||
|
rename this directory and remove the suffix ".tmpl":
|
||||||
|
|
||||||
|
Localization.de_DE.tmpl -> Localization.de_DE
|
||||||
|
|
||||||
|
As this file is not needed either, feel free to delete it as well.
|
||||||
|
|
||||||
|
|
||||||
|
Supported languages
|
||||||
|
===================
|
||||||
|
|
||||||
|
Please visit http://sphinx-doc.org/latest/config.html#intl-options for a
|
||||||
|
list of languages supported by Sphinx.
|
||||||
|
|
||||||
|
Please note however that TYPO3 is using locales so you may need to
|
||||||
|
extend the language code from Sphinx into a proper locale to be used
|
||||||
|
by TYPO3.
|
29
Documentation.tmpl/Localization.de_DE.tmpl/Settings.yml
Normal file
29
Documentation.tmpl/Localization.de_DE.tmpl/Settings.yml
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
# This is the project specific Settings.yml file.
|
||||||
|
# Place Sphinx specific build information here.
|
||||||
|
# Settings given here will replace the settings of 'conf.py'.
|
||||||
|
|
||||||
|
# Below is an example of intersphinx mapping declaration
|
||||||
|
# Add more mappings depending on what manual you want to link to
|
||||||
|
# Remove entirely if you don't need cross-linking
|
||||||
|
|
||||||
|
---
|
||||||
|
conf.py:
|
||||||
|
copyright: 2012-2015
|
||||||
|
project: Extension Name (Deutsch)
|
||||||
|
version: x.y
|
||||||
|
release: x.y.z
|
||||||
|
intersphinx_mapping:
|
||||||
|
t3tsref:
|
||||||
|
- https://docs.typo3.org/typo3cms/TyposcriptReference/
|
||||||
|
- null
|
||||||
|
latex_documents:
|
||||||
|
- - Index
|
||||||
|
- <extension_key>.tex
|
||||||
|
- Extension Name (Français)
|
||||||
|
- Your Name
|
||||||
|
- manual
|
||||||
|
latex_elements:
|
||||||
|
papersize: a4paper
|
||||||
|
pointsize: 10pt
|
||||||
|
preamble: \usepackage{typo3}
|
||||||
|
...
|
65
Documentation.tmpl/Localization.fr_FR.tmpl/Index.rst
Normal file
65
Documentation.tmpl/Localization.fr_FR.tmpl/Index.rst
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
.. ==================================================
|
||||||
|
.. FOR YOUR INFORMATION
|
||||||
|
.. --------------------------------------------------
|
||||||
|
.. -*- coding: utf-8 -*- with BOM.
|
||||||
|
|
||||||
|
.. include:: ../Includes.txt
|
||||||
|
|
||||||
|
|
||||||
|
.. _start:
|
||||||
|
|
||||||
|
=============================================================
|
||||||
|
###PROJECT_NAME### (Français)
|
||||||
|
=============================================================
|
||||||
|
|
||||||
|
.. only:: html
|
||||||
|
|
||||||
|
:Classification:
|
||||||
|
extension_key
|
||||||
|
|
||||||
|
:Version:
|
||||||
|
|release|
|
||||||
|
|
||||||
|
:Langue:
|
||||||
|
fr
|
||||||
|
|
||||||
|
:Description:
|
||||||
|
entrez une description.
|
||||||
|
|
||||||
|
:Mots-clés:
|
||||||
|
list,mots-clés,séparés,par,virgules
|
||||||
|
|
||||||
|
:Copyright:
|
||||||
|
###YEAR###
|
||||||
|
|
||||||
|
:Auteur:
|
||||||
|
###AUTHOR###
|
||||||
|
|
||||||
|
:E-mail:
|
||||||
|
author@example.com
|
||||||
|
|
||||||
|
:Licence:
|
||||||
|
Ce document est publié sous la licence de publication libre
|
||||||
|
disponible sur http://www.opencontent.org/openpub/
|
||||||
|
|
||||||
|
:Généré:
|
||||||
|
|today|
|
||||||
|
|
||||||
|
Le contenu de ce document est en relation avec TYPO3,
|
||||||
|
un CMS/Framework GNU/GPL disponible sur `www.typo3.org <https://typo3.org/>`__.
|
||||||
|
|
||||||
|
|
||||||
|
**Sommaire**
|
||||||
|
|
||||||
|
.. toctree::
|
||||||
|
:maxdepth: 3
|
||||||
|
:titlesonly:
|
||||||
|
|
||||||
|
.. Introduction/Index
|
||||||
|
.. UserManual/Index
|
||||||
|
.. AdministratorManual/Index
|
||||||
|
.. Configuration/Index
|
||||||
|
.. DeveloperCorner/Index
|
||||||
|
.. KnownProblems/Index
|
||||||
|
.. ToDoList/Index
|
||||||
|
.. ChangeLog/Index
|
24
Documentation.tmpl/Localization.fr_FR.tmpl/README
Normal file
24
Documentation.tmpl/Localization.fr_FR.tmpl/README
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
How to translate
|
||||||
|
================
|
||||||
|
|
||||||
|
This directory contains the French translation of your documentation.
|
||||||
|
This is a complete Sphinx project but you may reuse assets from the
|
||||||
|
main documentation under Documentation/.
|
||||||
|
|
||||||
|
If you plan to translate your documentation to French, you should
|
||||||
|
rename this directory and remove the suffix ".tmpl":
|
||||||
|
|
||||||
|
Localization.fr_FR.tmpl -> Localization.fr_FR
|
||||||
|
|
||||||
|
As this file is not needed either, feel free to delete it as well.
|
||||||
|
|
||||||
|
|
||||||
|
Supported languages
|
||||||
|
===================
|
||||||
|
|
||||||
|
Please visit http://sphinx-doc.org/latest/config.html#intl-options for a
|
||||||
|
list of languages supported by Sphinx.
|
||||||
|
|
||||||
|
Please note however that TYPO3 is using locales so you may need to
|
||||||
|
extend the language code from Sphinx into a proper locale to be used
|
||||||
|
by TYPO3.
|
29
Documentation.tmpl/Localization.fr_FR.tmpl/Settings.yml
Normal file
29
Documentation.tmpl/Localization.fr_FR.tmpl/Settings.yml
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
# This is the project specific Settings.yml file.
|
||||||
|
# Place Sphinx specific build information here.
|
||||||
|
# Settings given here will replace the settings of 'conf.py'.
|
||||||
|
|
||||||
|
# Below is an example of intersphinx mapping declaration
|
||||||
|
# Add more mappings depending on what manual you want to link to
|
||||||
|
# Remove entirely if you don't need cross-linking
|
||||||
|
|
||||||
|
---
|
||||||
|
conf.py:
|
||||||
|
copyright: 2012-2015
|
||||||
|
project: Extension Name (Français)
|
||||||
|
version: x.y
|
||||||
|
release: x.y.z
|
||||||
|
intersphinx_mapping:
|
||||||
|
t3tsref:
|
||||||
|
- https://docs.typo3.org/typo3cms/TyposcriptReference/
|
||||||
|
- null
|
||||||
|
latex_documents:
|
||||||
|
- - Index
|
||||||
|
- <extension_key>.tex
|
||||||
|
- Extension Name (Français)
|
||||||
|
- Your Name
|
||||||
|
- manual
|
||||||
|
latex_elements:
|
||||||
|
papersize: a4paper
|
||||||
|
pointsize: 10pt
|
||||||
|
preamble: \usepackage{typo3}
|
||||||
|
...
|
32
Documentation.tmpl/Settings.yml
Normal file
32
Documentation.tmpl/Settings.yml
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
# This is the project specific Settings.yml file.
|
||||||
|
# Place Sphinx specific build information here.
|
||||||
|
# Settings given here will replace the settings of 'conf.py'.
|
||||||
|
|
||||||
|
# Below is an example of intersphinx mapping declaration
|
||||||
|
# Add more mappings depending on what manual you want to link to
|
||||||
|
# Remove entirely if you don't need cross-linking
|
||||||
|
|
||||||
|
---
|
||||||
|
conf.py:
|
||||||
|
copyright: 2018
|
||||||
|
project: Templates Aide
|
||||||
|
version: 0.0.1
|
||||||
|
release: 0.0.1
|
||||||
|
intersphinx_mapping:
|
||||||
|
t3tsref:
|
||||||
|
- http://docs.typo3.org/typo3cms/TyposcriptReference/
|
||||||
|
- null
|
||||||
|
latex_documents:
|
||||||
|
- - Index
|
||||||
|
- templates_aide.tex
|
||||||
|
- Templates Aide
|
||||||
|
- Philipp Dieter
|
||||||
|
- manual
|
||||||
|
latex_elements:
|
||||||
|
papersize: a4paper
|
||||||
|
pointsize: 10pt
|
||||||
|
preamble: \usepackage
|
||||||
|
html_theme_options:
|
||||||
|
github_repository: TYPO3-Documentation/TYPO3CMS-Example-ExtensionManual
|
||||||
|
github_branch: latest
|
||||||
|
...
|
16
Documentation.tmpl/ToDoList/Index.rst
Normal file
16
Documentation.tmpl/ToDoList/Index.rst
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
.. ==================================================
|
||||||
|
.. FOR YOUR INFORMATION
|
||||||
|
.. --------------------------------------------------
|
||||||
|
.. -*- coding: utf-8 -*- with BOM.
|
||||||
|
|
||||||
|
.. include:: ../Includes.txt
|
||||||
|
|
||||||
|
|
||||||
|
.. _todo:
|
||||||
|
|
||||||
|
To-Do list
|
||||||
|
==========
|
||||||
|
|
||||||
|
Give a link pointing to a `roadmap <http://forge.typo3.org/projects/typo3cms-doc-official-extension-template/roadmap>`_.
|
||||||
|
Alternatively, you can dress up a list of things you want to add or fix in this chapter
|
||||||
|
or give a vision about where the extension is heading.
|
67
Documentation.tmpl/User/Index.rst
Normal file
67
Documentation.tmpl/User/Index.rst
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
.. ==================================================
|
||||||
|
.. FOR YOUR INFORMATION
|
||||||
|
.. --------------------------------------------------
|
||||||
|
.. -*- coding: utf-8 -*- with BOM.
|
||||||
|
|
||||||
|
.. include:: ../Includes.txt
|
||||||
|
|
||||||
|
|
||||||
|
.. _user-manual:
|
||||||
|
|
||||||
|
Users Manual
|
||||||
|
============
|
||||||
|
|
||||||
|
Target group: **Editors**
|
||||||
|
|
||||||
|
Here should be described how to use the extension from the editor perspective.
|
||||||
|
|
||||||
|
- How does it work?
|
||||||
|
|
||||||
|
- works well when doing this.
|
||||||
|
|
||||||
|
- does not work so well when doing that
|
||||||
|
but we can live with it.
|
||||||
|
|
||||||
|
- **mind indentation when nesting lists**.
|
||||||
|
|
||||||
|
- How to install the plugin on a web page?
|
||||||
|
|
||||||
|
- What options are available?
|
||||||
|
|
||||||
|
Language should be non-technical, explaining, using small examples.
|
||||||
|
Don't use to many acronyms unless they have been explained.
|
||||||
|
Don't be confusing by putting information targeting administrators.
|
||||||
|
|
||||||
|
.. tip::
|
||||||
|
|
||||||
|
Take a break from time to time.
|
||||||
|
|
||||||
|
Admonitions should be used to warn the users about potential
|
||||||
|
pitfalls, attract their attention to important elements
|
||||||
|
or just add some notes for for information (further reading,
|
||||||
|
for example).
|
||||||
|
|
||||||
|
.. important::
|
||||||
|
|
||||||
|
Remember to always say "please" when asking your software to
|
||||||
|
do something.
|
||||||
|
|
||||||
|
Provide screenshots as needed for making things clear. When creating
|
||||||
|
screenshots, try using the `Introduction Package <http://demo.typo3.org/>`_
|
||||||
|
as a neutral TYPO3 CMS instance.
|
||||||
|
|
||||||
|
.. figure:: ../Images/UserManual/BackendView.png
|
||||||
|
:width: 500px
|
||||||
|
:alt: Backend view
|
||||||
|
|
||||||
|
Default Backend view (caption of the image)
|
||||||
|
|
||||||
|
The Backend view of TYPO3 after the user has clicked on module "Page". (legend of the image)
|
||||||
|
|
||||||
|
|
||||||
|
.. _user-faq:
|
||||||
|
|
||||||
|
FAQ
|
||||||
|
---
|
||||||
|
|
||||||
|
Possible subsection: FAQ
|
80
ExtensionBuilder.json
Normal file
80
ExtensionBuilder.json
Normal file
@ -0,0 +1,80 @@
|
|||||||
|
{
|
||||||
|
"modules": [
|
||||||
|
{
|
||||||
|
"config": {
|
||||||
|
"position": [
|
||||||
|
78,
|
||||||
|
217
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"name": "New Model Object",
|
||||||
|
"value": {
|
||||||
|
"actionGroup": {
|
||||||
|
"_default0_list": true,
|
||||||
|
"_default1_show": false,
|
||||||
|
"_default2_new_create": false,
|
||||||
|
"_default3_edit_update": false,
|
||||||
|
"_default4_delete": false,
|
||||||
|
"customActions": []
|
||||||
|
},
|
||||||
|
"name": "Dummy",
|
||||||
|
"objectsettings": {
|
||||||
|
"addDeletedField": true,
|
||||||
|
"addHiddenField": true,
|
||||||
|
"addStarttimeEndtimeFields": true,
|
||||||
|
"aggregateRoot": false,
|
||||||
|
"categorizable": false,
|
||||||
|
"description": "",
|
||||||
|
"mapToTable": "",
|
||||||
|
"parentClass": "",
|
||||||
|
"skipTypeConfiguration": false,
|
||||||
|
"sorting": false,
|
||||||
|
"type": "Entity",
|
||||||
|
"uid": "902454128297"
|
||||||
|
},
|
||||||
|
"propertyGroup": {
|
||||||
|
"properties": []
|
||||||
|
},
|
||||||
|
"relationGroup": {
|
||||||
|
"relations": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"backendModules": [],
|
||||||
|
"description": "",
|
||||||
|
"emConf": {
|
||||||
|
"category": "plugin",
|
||||||
|
"custom_category": "",
|
||||||
|
"dependsOn": "typo3 => 8.7.0-8.7.99\n",
|
||||||
|
"disableLocalization": false,
|
||||||
|
"disableVersioning": false,
|
||||||
|
"skipGenerateDocumentationTemplate": false,
|
||||||
|
"sourceLanguage": "en",
|
||||||
|
"state": "alpha",
|
||||||
|
"targetVersion": "8.7.0-8.7.99",
|
||||||
|
"version": "0.0.1"
|
||||||
|
},
|
||||||
|
"extensionKey": "templates_aide",
|
||||||
|
"name": "Templates Aide",
|
||||||
|
"originalExtensionKey": "templates_aide",
|
||||||
|
"originalVendorName": "Cjel",
|
||||||
|
"persons": [
|
||||||
|
{
|
||||||
|
"company": "",
|
||||||
|
"email": "philippdieter@attic-media.net",
|
||||||
|
"name": "Philipp Dieter",
|
||||||
|
"role": "Developer"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"plugins": [],
|
||||||
|
"vendorName": "Cjel"
|
||||||
|
},
|
||||||
|
"wires": [],
|
||||||
|
"log": {
|
||||||
|
"last_modified": "2018-11-29 03:46",
|
||||||
|
"extension_builder_version": "8.10.2",
|
||||||
|
"be_user": "Philipp Dieter (1)"
|
||||||
|
}
|
||||||
|
}
|
11
Resources/Private/.htaccess
Normal file
11
Resources/Private/.htaccess
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
# Apache < 2.3
|
||||||
|
<IfModule !mod_authz_core.c>
|
||||||
|
Order allow,deny
|
||||||
|
Deny from all
|
||||||
|
Satisfy All
|
||||||
|
</IfModule>
|
||||||
|
|
||||||
|
# Apache >= 2.3
|
||||||
|
<IfModule mod_authz_core.c>
|
||||||
|
Require all denied
|
||||||
|
</IfModule>
|
11
Resources/Private/Language/locallang.xlf
Normal file
11
Resources/Private/Language/locallang.xlf
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
|
||||||
|
<xliff version="1.0">
|
||||||
|
<file source-language="en" datatype="plaintext" original="messages" date="2018-11-29T15:46:30Z" product-name="templates_aide">
|
||||||
|
<header/>
|
||||||
|
<body>
|
||||||
|
<trans-unit id="tx_templatesaide_domain_model_dummy">
|
||||||
|
<source>Dummy</source>
|
||||||
|
</trans-unit>
|
||||||
|
</body>
|
||||||
|
</file>
|
||||||
|
</xliff>
|
11
Resources/Private/Language/locallang_db.xlf
Normal file
11
Resources/Private/Language/locallang_db.xlf
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
|
||||||
|
<xliff version="1.0">
|
||||||
|
<file source-language="en" datatype="plaintext" original="messages" date="2018-11-29T15:46:30Z" product-name="templates_aide">
|
||||||
|
<header/>
|
||||||
|
<body>
|
||||||
|
<trans-unit id="tx_templatesaide_domain_model_dummy">
|
||||||
|
<source>Dummy</source>
|
||||||
|
</trans-unit>
|
||||||
|
</body>
|
||||||
|
</file>
|
||||||
|
</xliff>
|
14
Resources/Public/Css/backend/dev/visual.css
Normal file
14
Resources/Public/Css/backend/dev/visual.css
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
.topbar-header-site {
|
||||||
|
background: repeating-linear-gradient(
|
||||||
|
45deg,
|
||||||
|
transparent,
|
||||||
|
transparent 10px,
|
||||||
|
#008000 10px,
|
||||||
|
#008000 20px
|
||||||
|
),
|
||||||
|
linear-gradient(
|
||||||
|
to bottom,
|
||||||
|
#565656,
|
||||||
|
#151515
|
||||||
|
)
|
||||||
|
}
|
14
Resources/Public/Css/backend/production-stage/visual.css
Normal file
14
Resources/Public/Css/backend/production-stage/visual.css
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
.topbar-header-site {
|
||||||
|
background: repeating-linear-gradient(
|
||||||
|
45deg,
|
||||||
|
transparent,
|
||||||
|
transparent 10px,
|
||||||
|
#cc9900 10px,
|
||||||
|
#cc9900 20px
|
||||||
|
),
|
||||||
|
linear-gradient(
|
||||||
|
to bottom,
|
||||||
|
#565656,
|
||||||
|
#151515
|
||||||
|
)
|
||||||
|
}
|
263
Resources/Public/Css/editor.css
Normal file
263
Resources/Public/Css/editor.css
Normal file
@ -0,0 +1,263 @@
|
|||||||
|
/****************************************************************************************
|
||||||
|
# Css file for content edited with CKEditor
|
||||||
|
#
|
||||||
|
# Defaults taken from extension CKSource by Frederico Knabben. All rights reserved.
|
||||||
|
# ***************************************************************************************/
|
||||||
|
|
||||||
|
body
|
||||||
|
{
|
||||||
|
/* Font */
|
||||||
|
font-family: sans-serif, Arial, Verdana, "Trebuchet MS";
|
||||||
|
font-size: 12px;
|
||||||
|
|
||||||
|
/* Text color */
|
||||||
|
color: #333;
|
||||||
|
|
||||||
|
/* Remove the background color to make it transparent */
|
||||||
|
background-color: #fff;
|
||||||
|
|
||||||
|
margin: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cke_editable
|
||||||
|
{
|
||||||
|
font-size: 13px;
|
||||||
|
line-height: 1.6;
|
||||||
|
|
||||||
|
/* Fix for missing scrollbars with RTL texts. (#10488) */
|
||||||
|
word-wrap: break-word;
|
||||||
|
}
|
||||||
|
|
||||||
|
blockquote
|
||||||
|
{
|
||||||
|
font-style: italic;
|
||||||
|
font-family: Georgia, Times, "Times New Roman", serif;
|
||||||
|
padding: 2px 0;
|
||||||
|
border-style: solid;
|
||||||
|
border-color: #ccc;
|
||||||
|
border-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cke_contents_ltr blockquote
|
||||||
|
{
|
||||||
|
padding-left: 20px;
|
||||||
|
padding-right: 8px;
|
||||||
|
border-left-width: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cke_contents_rtl blockquote
|
||||||
|
{
|
||||||
|
padding-left: 8px;
|
||||||
|
padding-right: 20px;
|
||||||
|
border-right-width: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
a
|
||||||
|
{
|
||||||
|
color: #0782C1;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol,ul,dl
|
||||||
|
{
|
||||||
|
/* IE7: reset rtl list margin. (#7334) */
|
||||||
|
*margin-right: 0px;
|
||||||
|
/* preserved spaces for list items with text direction other than the list. (#6249,#8049)*/
|
||||||
|
padding: 0 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1,h2,h3,h4,h5,h6
|
||||||
|
{
|
||||||
|
font-weight: normal;
|
||||||
|
line-height: 1.2;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr
|
||||||
|
{
|
||||||
|
border: 0px;
|
||||||
|
border-top: 1px solid #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.right
|
||||||
|
{
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
float: right;
|
||||||
|
margin-left: 15px;
|
||||||
|
padding: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.left
|
||||||
|
{
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
float: left;
|
||||||
|
margin-right: 15px;
|
||||||
|
padding: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre
|
||||||
|
{
|
||||||
|
white-space: pre-wrap; /* CSS 2.1 */
|
||||||
|
word-wrap: break-word; /* IE7 */
|
||||||
|
-moz-tab-size: 4;
|
||||||
|
tab-size: 4;
|
||||||
|
}
|
||||||
|
|
||||||
|
table {
|
||||||
|
border-collapse: collapse;
|
||||||
|
background-color: transparent;
|
||||||
|
width: 100%;
|
||||||
|
max-width: 100%;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
padding-left: 100px;
|
||||||
|
}
|
||||||
|
|
||||||
|
table th,
|
||||||
|
table td {
|
||||||
|
padding: 0.25rem;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
table thead th {
|
||||||
|
vertical-align: bottom;
|
||||||
|
border-bottom: 2px solid #eceeef;
|
||||||
|
}
|
||||||
|
|
||||||
|
.marker
|
||||||
|
{
|
||||||
|
background-color: Yellow;
|
||||||
|
}
|
||||||
|
|
||||||
|
span[lang]
|
||||||
|
{
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
figure
|
||||||
|
{
|
||||||
|
text-align: center;
|
||||||
|
border: solid 1px #ccc;
|
||||||
|
border-radius: 2px;
|
||||||
|
background: rgba(0,0,0,0.05);
|
||||||
|
padding: 10px;
|
||||||
|
margin: 10px 20px;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
figure > figcaption
|
||||||
|
{
|
||||||
|
text-align: center;
|
||||||
|
display: block; /* For IE8 */
|
||||||
|
}
|
||||||
|
|
||||||
|
a > img {
|
||||||
|
padding: 1px;
|
||||||
|
margin: 1px;
|
||||||
|
border: none;
|
||||||
|
outline: 1px solid #0782C1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Widget Styles */
|
||||||
|
.code-featured
|
||||||
|
{
|
||||||
|
border: 5px solid red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.math-featured
|
||||||
|
{
|
||||||
|
padding: 20px;
|
||||||
|
box-shadow: 0 0 2px rgba(200, 0, 0, 1);
|
||||||
|
background-color: rgba(255, 0, 0, 0.05);
|
||||||
|
margin: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.image-clean
|
||||||
|
{
|
||||||
|
border: 0;
|
||||||
|
background: none;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.image-clean > figcaption
|
||||||
|
{
|
||||||
|
font-size: .9em;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
.image-grayscale
|
||||||
|
{
|
||||||
|
background-color: white;
|
||||||
|
color: #666;
|
||||||
|
}
|
||||||
|
|
||||||
|
.image-grayscale img, img.image-grayscale
|
||||||
|
{
|
||||||
|
filter: grayscale(100%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.embed-240p
|
||||||
|
{
|
||||||
|
max-width: 426px;
|
||||||
|
max-height: 240px;
|
||||||
|
margin:0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.embed-360p
|
||||||
|
{
|
||||||
|
max-width: 640px;
|
||||||
|
max-height: 360px;
|
||||||
|
margin:0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.embed-480p
|
||||||
|
{
|
||||||
|
max-width: 854px;
|
||||||
|
max-height: 480px;
|
||||||
|
margin:0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.embed-720p
|
||||||
|
{
|
||||||
|
max-width: 1280px;
|
||||||
|
max-height: 720px;
|
||||||
|
margin:0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.embed-1080p
|
||||||
|
{
|
||||||
|
max-width: 1920px;
|
||||||
|
max-height: 1080px;
|
||||||
|
margin:0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** justify **/
|
||||||
|
.text-left {
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
.text-center {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.text-right {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
.text-justify {
|
||||||
|
text-align: justify;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** custom **/
|
||||||
|
.like-h2 {
|
||||||
|
color: #025093;
|
||||||
|
}
|
||||||
|
.like-h4 {
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
.btn {
|
||||||
|
border: 1px solid black
|
||||||
|
}
|
||||||
|
.smallremark {
|
||||||
|
font-size: 13px;
|
||||||
|
}
|
||||||
|
.header-allowed {
|
||||||
|
color: #8abf6f;
|
||||||
|
}
|
||||||
|
.header-notallowed {
|
||||||
|
color: #b1334a;
|
||||||
|
}
|
BIN
Resources/Public/Icons/relation.gif
Normal file
BIN
Resources/Public/Icons/relation.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 233 B |
BIN
Resources/Public/Icons/tx_templatesaide_domain_model_dummy.gif
Normal file
BIN
Resources/Public/Icons/tx_templatesaide_domain_model_dummy.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 230 B |
@ -0,0 +1,62 @@
|
|||||||
|
/*
|
||||||
|
* This file is part of the TYPO3 CMS project.
|
||||||
|
*
|
||||||
|
* It is free software; you can redistribute it and/or modify it under
|
||||||
|
* the terms of the GNU General Public License, either version 2
|
||||||
|
* of the License, or any later version.
|
||||||
|
*
|
||||||
|
* For the full copyright and license information, please read the
|
||||||
|
* LICENSE.txt file that was distributed with this source code.
|
||||||
|
*
|
||||||
|
* The TYPO3 project - inspiring people to share!
|
||||||
|
*/
|
||||||
|
define(["require", "exports", "jquery"], function (require, exports, $) {
|
||||||
|
"use strict";
|
||||||
|
/**
|
||||||
|
* Module: TYPO3/CMS/Backend/ColorPicker
|
||||||
|
* contains all logic for the color picker used in FormEngine
|
||||||
|
* @exports TYPO3/CMS/Backend/ColorPicker
|
||||||
|
*/
|
||||||
|
var NewContentElementWizardPreview = (function() {
|
||||||
|
|
||||||
|
//console.log('loaded here ==============');
|
||||||
|
$('.media-new-content-element-wizard .t3js-icon').hover(
|
||||||
|
function() {
|
||||||
|
console.log('mouse in');
|
||||||
|
}, function() {
|
||||||
|
console.log('mouse out');
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}());
|
||||||
|
return new NewContentElementWizardPreview();
|
||||||
|
//var ColorPicker = (function () {
|
||||||
|
/**
|
||||||
|
* The constructor, set the class properties default values
|
||||||
|
*/
|
||||||
|
// function ColorPicker() {
|
||||||
|
// this.selector = '.t3js-color-picker';
|
||||||
|
// }
|
||||||
|
/**
|
||||||
|
* Initialize the color picker for the given selector
|
||||||
|
*/
|
||||||
|
// ColorPicker.prototype.initialize = function () {
|
||||||
|
// $(this.selector).minicolors({
|
||||||
|
// format: 'hex',
|
||||||
|
// position: 'bottom left',
|
||||||
|
// theme: 'bootstrap',
|
||||||
|
// });
|
||||||
|
// $(document).on('change', '.t3js-colorpicker-value-trigger', function (event) {
|
||||||
|
// var $element = $(event.target);
|
||||||
|
// if ($element.val() !== '') {
|
||||||
|
// $element.closest('.t3js-formengine-field-item')
|
||||||
|
// .find('.t3js-color-picker')
|
||||||
|
// .val($element.val())
|
||||||
|
// .trigger('paste');
|
||||||
|
// $element.val('');
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
// };
|
||||||
|
// return ColorPicker;
|
||||||
|
//}());
|
||||||
|
//return new ColorPicker();
|
||||||
|
});
|
53
Tests/Unit/Controller/DummyControllerTest.php
Normal file
53
Tests/Unit/Controller/DummyControllerTest.php
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
<?php
|
||||||
|
namespace Cjel\TemplatesAide\Tests\Unit\Controller;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test case.
|
||||||
|
*
|
||||||
|
* @author Philipp Dieter <philippdieter@attic-media.net>
|
||||||
|
*/
|
||||||
|
class DummyControllerTest extends \TYPO3\CMS\Core\Tests\UnitTestCase
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @var \Cjel\TemplatesAide\Controller\DummyController
|
||||||
|
*/
|
||||||
|
protected $subject = null;
|
||||||
|
|
||||||
|
protected function setUp()
|
||||||
|
{
|
||||||
|
parent::setUp();
|
||||||
|
$this->subject = $this->getMockBuilder(\Cjel\TemplatesAide\Controller\DummyController::class)
|
||||||
|
->setMethods(['redirect', 'forward', 'addFlashMessage'])
|
||||||
|
->disableOriginalConstructor()
|
||||||
|
->getMock();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function tearDown()
|
||||||
|
{
|
||||||
|
parent::tearDown();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @test
|
||||||
|
*/
|
||||||
|
public function listActionFetchesAllDummiesFromRepositoryAndAssignsThemToView()
|
||||||
|
{
|
||||||
|
|
||||||
|
$allDummies = $this->getMockBuilder(\TYPO3\CMS\Extbase\Persistence\ObjectStorage::class)
|
||||||
|
->disableOriginalConstructor()
|
||||||
|
->getMock();
|
||||||
|
|
||||||
|
$dummyRepository = $this->getMockBuilder(\::class)
|
||||||
|
->setMethods(['findAll'])
|
||||||
|
->disableOriginalConstructor()
|
||||||
|
->getMock();
|
||||||
|
$dummyRepository->expects(self::once())->method('findAll')->will(self::returnValue($allDummies));
|
||||||
|
$this->inject($this->subject, 'dummyRepository', $dummyRepository);
|
||||||
|
|
||||||
|
$view = $this->getMockBuilder(\TYPO3\CMS\Extbase\Mvc\View\ViewInterface::class)->getMock();
|
||||||
|
$view->expects(self::once())->method('assign')->with('dummies', $allDummies);
|
||||||
|
$this->inject($this->subject, 'view', $view);
|
||||||
|
|
||||||
|
$this->subject->listAction();
|
||||||
|
}
|
||||||
|
}
|
34
Tests/Unit/Domain/Model/DummyTest.php
Normal file
34
Tests/Unit/Domain/Model/DummyTest.php
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
<?php
|
||||||
|
namespace Cjel\TemplatesAide\Tests\Unit\Domain\Model;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test case.
|
||||||
|
*
|
||||||
|
* @author Philipp Dieter <philippdieter@attic-media.net>
|
||||||
|
*/
|
||||||
|
class DummyTest extends \TYPO3\CMS\Core\Tests\UnitTestCase
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @var \Cjel\TemplatesAide\Domain\Model\Dummy
|
||||||
|
*/
|
||||||
|
protected $subject = null;
|
||||||
|
|
||||||
|
protected function setUp()
|
||||||
|
{
|
||||||
|
parent::setUp();
|
||||||
|
$this->subject = new \Cjel\TemplatesAide\Domain\Model\Dummy();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function tearDown()
|
||||||
|
{
|
||||||
|
parent::tearDown();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @test
|
||||||
|
*/
|
||||||
|
public function dummyTestToNotLeaveThisFileEmpty()
|
||||||
|
{
|
||||||
|
self::markTestIncomplete();
|
||||||
|
}
|
||||||
|
}
|
28
composer.json
Normal file
28
composer.json
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
{
|
||||||
|
"name": "cjel/templates-aide",
|
||||||
|
"type": "typo3-cms-extension",
|
||||||
|
"description": "",
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Philipp Dieter",
|
||||||
|
"role": "Developer"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"require": {
|
||||||
|
"typo3/cms-core": "^8.7.1"
|
||||||
|
},
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Cjel\\TemplatesAide\\": "Classes"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"autoload-dev": {
|
||||||
|
"psr-4": {
|
||||||
|
"Cjel\\TemplatesAide\\Tests\\": "Tests"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"replace": {
|
||||||
|
"templates_aide": "self.version",
|
||||||
|
"typo3-ter/templates-aide": "self.version"
|
||||||
|
}
|
||||||
|
}
|
31
ext_emconf.php
Normal file
31
ext_emconf.php
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/***************************************************************
|
||||||
|
* Extension Manager/Repository config file for ext: "templates_aide"
|
||||||
|
*
|
||||||
|
* Auto generated by Extension Builder 2018-11-29
|
||||||
|
*
|
||||||
|
* Manual updates:
|
||||||
|
* Only the data in the array - anything else is removed by next write.
|
||||||
|
* "version" and "dependencies" must not be touched!
|
||||||
|
***************************************************************/
|
||||||
|
|
||||||
|
$EM_CONF[$_EXTKEY] = [
|
||||||
|
'title' => 'Templates Aide',
|
||||||
|
'description' => '',
|
||||||
|
'category' => 'plugin',
|
||||||
|
'author' => 'Philipp Dieter',
|
||||||
|
'author_email' => 'philippdieter@attic-media.net',
|
||||||
|
'state' => 'alpha',
|
||||||
|
'uploadfolder' => 0,
|
||||||
|
'createDirs' => '',
|
||||||
|
'clearCacheOnLoad' => 0,
|
||||||
|
'version' => '0.0.1',
|
||||||
|
'constraints' => [
|
||||||
|
'depends' => [
|
||||||
|
'typo3' => '8.7.0-8.7.99',
|
||||||
|
],
|
||||||
|
'conflicts' => [],
|
||||||
|
'suggests' => [],
|
||||||
|
],
|
||||||
|
];
|
40
ext_tables.php
Normal file
40
ext_tables.php
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
<?php
|
||||||
|
defined('TYPO3_MODE') || die('Access denied.');
|
||||||
|
|
||||||
|
call_user_func(
|
||||||
|
function()
|
||||||
|
{
|
||||||
|
|
||||||
|
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile('templates_aide', 'Configuration/TypoScript', 'Templates Aide');
|
||||||
|
|
||||||
|
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('tx_templatesaide_domain_model_dummy', 'EXT:templates_aide/Resources/Private/Language/locallang_csh_tx_templatesaide_domain_model_dummy.xlf');
|
||||||
|
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_templatesaide_domain_model_dummy');
|
||||||
|
|
||||||
|
}
|
||||||
|
);
|
||||||
|
## EXTENSION BUILDER DEFAULTS END TOKEN - Everything BEFORE this line is overwritten with the defaults of the extension builder
|
||||||
|
|
||||||
|
call_user_func(
|
||||||
|
function()
|
||||||
|
{
|
||||||
|
|
||||||
|
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['cms']['db_new_content_el']['wizardItemsHook'][] =
|
||||||
|
\Cjel\TemplatesAide\Hooks\WizardItems::class;
|
||||||
|
|
||||||
|
if(\TYPO3\CMS\Core\Utility\GeneralUtility::getApplicationContext()->isDevelopment()) {
|
||||||
|
$GLOBALS['TBE_STYLES']['skins']['backend']['stylesheetDirectories']['dev'] =
|
||||||
|
'EXT:templates_aide/Resources/Public/Css/backend/dev';
|
||||||
|
}
|
||||||
|
|
||||||
|
if(\TYPO3\CMS\Core\Utility\GeneralUtility::getApplicationContext()->__toString() === 'Production/Stage') {
|
||||||
|
$GLOBALS['TBE_STYLES']['skins']['backend']['stylesheetDirectories']['dev'] =
|
||||||
|
'EXT:templates_aide/Resources/Public/Css/backend/production-stage';
|
||||||
|
}
|
||||||
|
|
||||||
|
$pageRenderer = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(
|
||||||
|
\TYPO3\CMS\Core\Page\PageRenderer::class
|
||||||
|
);
|
||||||
|
$pageRenderer->loadRequireJsModule('TYPO3/CMS/TemplatesAide/NewContentElementWizardPreview');
|
||||||
|
|
||||||
|
}
|
||||||
|
);
|
39
ext_tables.sql
Normal file
39
ext_tables.sql
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
#
|
||||||
|
# Table structure for table 'tx_templatesaide_domain_model_dummy'
|
||||||
|
#
|
||||||
|
CREATE TABLE tx_templatesaide_domain_model_dummy (
|
||||||
|
|
||||||
|
uid int(11) NOT NULL auto_increment,
|
||||||
|
pid int(11) DEFAULT '0' NOT NULL,
|
||||||
|
|
||||||
|
tstamp int(11) unsigned DEFAULT '0' NOT NULL,
|
||||||
|
crdate int(11) unsigned DEFAULT '0' NOT NULL,
|
||||||
|
cruser_id int(11) unsigned DEFAULT '0' NOT NULL,
|
||||||
|
deleted smallint(5) unsigned DEFAULT '0' NOT NULL,
|
||||||
|
hidden smallint(5) unsigned DEFAULT '0' NOT NULL,
|
||||||
|
starttime int(11) unsigned DEFAULT '0' NOT NULL,
|
||||||
|
endtime int(11) unsigned DEFAULT '0' NOT NULL,
|
||||||
|
|
||||||
|
t3ver_oid int(11) DEFAULT '0' NOT NULL,
|
||||||
|
t3ver_id int(11) DEFAULT '0' NOT NULL,
|
||||||
|
t3ver_wsid int(11) DEFAULT '0' NOT NULL,
|
||||||
|
t3ver_label varchar(255) DEFAULT '' NOT NULL,
|
||||||
|
t3ver_state smallint(6) DEFAULT '0' NOT NULL,
|
||||||
|
t3ver_stage int(11) DEFAULT '0' NOT NULL,
|
||||||
|
t3ver_count int(11) DEFAULT '0' NOT NULL,
|
||||||
|
t3ver_tstamp int(11) DEFAULT '0' NOT NULL,
|
||||||
|
t3ver_move_id int(11) DEFAULT '0' NOT NULL,
|
||||||
|
|
||||||
|
sys_language_uid int(11) DEFAULT '0' NOT NULL,
|
||||||
|
l10n_parent int(11) DEFAULT '0' NOT NULL,
|
||||||
|
l10n_diffsource mediumblob,
|
||||||
|
l10n_state text,
|
||||||
|
|
||||||
|
PRIMARY KEY (uid),
|
||||||
|
KEY parent (pid),
|
||||||
|
KEY t3ver_oid (t3ver_oid,t3ver_wsid),
|
||||||
|
KEY language (l10n_parent,sys_language_uid)
|
||||||
|
|
||||||
|
);
|
||||||
|
|
||||||
|
## EXTENSION BUILDER DEFAULTS END TOKEN - Everything BEFORE this line is overwritten with the defaults of the extension builder
|
Loading…
x
Reference in New Issue
Block a user