Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
services
t3o sites
typo3.org
typo3.org
Commits
cc27cf89
Commit
cc27cf89
authored
Apr 19, 2019
by
Siddharth Sheth
Browse files
[EXT:t3o_mom complete]
parent
23d7ba07
Pipeline
#6835
failed with stages
in 13 seconds
Changes
28
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
extensions/t3o_mom/.gitignore
0 → 100644
View file @
cc27cf89
/vendor/
\ No newline at end of file
extensions/t3o_mom/Classes/Controller/T3MomController.php
0 → 100644
View file @
cc27cf89
<?php
namespace
T3o\T3oMom\Controller
;
/***
*
* This file is part of the "MOM" 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) 2019
*
***/
/**
* T3MomController
*/
class
T3MomController
extends
\
TYPO3\CMS\Extbase\Mvc\Controller\ActionController
{
/**
* t3MomRepository
*
* @var \T3o\T3oMom\Domain\Repository\T3MomRepository
* @inject
*/
protected
$t3MomRepository
=
null
;
/**
* t3teamsRepository
*
* @var \T3o\T3oJobs\Domain\Repository\T3teamsRepository
* @inject
*/
protected
$t3teamsRepository
=
null
;
/**
* action list
* @param array $result
*/
public
function
listAction
(
$result
=
null
)
{
$this
->
view
->
assign
(
'isDefaultListing'
,
'Yes'
);
// Is it calling team filter?
if
(
!
is_null
(
$result
[
'teamid'
])
&&
$result
[
'teamid'
]
>=
0
)
{
$selTeam
=
$this
->
t3teamsRepository
->
findByUid
(
$result
[
'teamid'
]);
$t3Moms
=
$this
->
t3MomRepository
->
filterByTeam
(
$selTeam
);
$this
->
view
->
assign
(
't3Moms'
,
$t3Moms
);
$this
->
view
->
assign
(
'isDefaultListing'
,
'No'
);
}
// Let's just display default listing screen
else
{
$allTeam
=
$this
->
t3teamsRepository
->
findAll
();
$t3Moms
=
$this
->
t3MomRepository
->
findAll
();
$this
->
view
->
assign
(
't3Moms'
,
$t3Moms
);
$this
->
view
->
assign
(
'allTeam'
,
$allTeam
);
}
}
/**
* action show
*
* @param \T3o\T3oMom\Domain\Model\T3Mom $t3Mom
*/
public
function
showAction
(
\
T3o\T3oMom\Domain\Model\T3Mom
$t3Mom
)
{
$this
->
view
->
assign
(
't3Mom'
,
$t3Mom
);
}
}
extensions/t3o_mom/Classes/Domain/Model/T3Mom.php
0 → 100644
View file @
cc27cf89
<?php
namespace
T3o\T3oMom\Domain\Model
;
/***
*
* This file is part of the "MOM" 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) 2019
*
***/
/**
* T3Mom
*/
class
T3Mom
extends
\
TYPO3\CMS\Extbase\DomainObject\AbstractEntity
{
/**
* title
*
* @var string
*/
protected
$title
=
''
;
/**
* momdate
*
* @var \DateTime
*/
protected
$momdate
=
null
;
/**
* text
*
* @var string
*/
protected
$text
=
''
;
/**
* momauthor
*
* @var string
*/
protected
$momauthor
=
''
;
/**
* t3teams
*
* @var \TYPO3\CMS\Extbase\Persistence\ObjectStorage<\T3o\T3oJobs\Domain\Model\T3teams>
*/
protected
$t3teams
=
null
;
/**
* __construct
*/
public
function
__construct
()
{
//Do not remove the next line: It would break the functionality
$this
->
initStorageObjects
();
}
/**
* Initializes all ObjectStorage properties
* Do not modify this method!
* It will be rewritten on each save in the extension builder
* You may modify the constructor of this class instead
*
* @return void
*/
protected
function
initStorageObjects
()
{
$this
->
t3teams
=
new
\
TYPO3\CMS\Extbase\Persistence\ObjectStorage
();
}
/**
* Returns the title
*
* @return string $title
*/
public
function
getTitle
()
{
return
$this
->
title
;
}
/**
* Sets the title
*
* @param string $title
* @return void
*/
public
function
setTitle
(
$title
)
{
$this
->
title
=
$title
;
}
/**
* Returns the momdate
*
* @return \DateTime $momdate
*/
public
function
getMomdate
()
{
return
$this
->
momdate
;
}
/**
* Sets the momdate
*
* @param \DateTime $momdate
* @return void
*/
public
function
setMomdate
(
\
DateTime
$momdate
)
{
$this
->
momdate
=
$momdate
;
}
/**
* Returns the text
*
* @return string $text
*/
public
function
getText
()
{
return
$this
->
text
;
}
/**
* Sets the text
*
* @param string $text
* @return void
*/
public
function
setText
(
$text
)
{
$this
->
text
=
$text
;
}
/**
* Returns the momauthor
*
* @return string $momauthor
*/
public
function
getMomauthor
()
{
return
$this
->
momauthor
;
}
/**
* Sets the momauthor
*
* @param string $momauthor
* @return void
*/
public
function
setMomauthor
(
$momauthor
)
{
$this
->
momauthor
=
$momauthor
;
}
/**
* Adds a T3teams
*
* @param \T3o\T3oJobs\Domain\Model\T3teams $t3team
* @return void
*/
public
function
addT3team
(
\
T3o\T3oJobs\Domain\Model\T3teams
$t3team
)
{
$this
->
t3teams
->
attach
(
$t3team
);
}
/**
* Removes a T3teams
*
* @param \T3o\T3oJobs\Domain\Model\T3teams $t3teamToRemove The T3teams to be removed
* @return void
*/
public
function
removeT3team
(
\
T3o\T3oJobs\Domain\Model\T3teams
$t3teamToRemove
)
{
$this
->
t3teams
->
detach
(
$t3teamToRemove
);
}
/**
* Returns the t3teams
*
* @return \TYPO3\CMS\Extbase\Persistence\ObjectStorage<\T3o\T3oJobs\Domain\Model\T3teams> $t3teams
*/
public
function
getT3teams
()
{
return
$this
->
t3teams
;
}
/**
* Sets the t3teams
*
* @param \TYPO3\CMS\Extbase\Persistence\ObjectStorage<\T3o\T3oJobs\Domain\Model\T3teams> $t3teams
* @return void
*/
public
function
setT3teams
(
\
TYPO3\CMS\Extbase\Persistence\ObjectStorage
$t3teams
)
{
$this
->
t3teams
=
$t3teams
;
}
}
extensions/t3o_mom/Classes/Domain/Repository/T3MomRepository.php
0 → 100644
View file @
cc27cf89
<?php
namespace
T3o\T3oMom\Domain\Repository
;
/***
*
* This file is part of the "MOM" 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) 2019
*
***/
/**
* The repository for T3Moms
*/
class
T3MomRepository
extends
\
TYPO3\CMS\Extbase\Persistence\Repository
{
public
function
filterByTeam
(
$team
=
null
)
{
$main
=
[];
$query
=
$this
->
createQuery
();
if
(
$team
==
0
)
{
}
else
{
$main
[]
=
$query
->
contains
(
't3teams'
,
$team
);
$query
->
matching
(
$query
->
logicalAnd
(
$main
)
);
}
$result
=
$query
->
execute
();
//debug::var_dump($result);die;
return
$result
;
}
}
extensions/t3o_mom/Configuration/TCA/Overrides/sys_template.php
0 → 100644
View file @
cc27cf89
<?php
defined
(
'TYPO3_MODE'
)
||
die
(
'Access denied.'
);
$extKey
=
't3o_mom'
;
// Adding fields to the tt_content table definition in TCA
\
TYPO3\CMS\Core\Utility\ExtensionManagementUtility
::
addStaticFile
(
$extKey
,
'Configuration/TypoScript'
,
'Typo3 meetingMinutes'
);
\ No newline at end of file
extensions/t3o_mom/Configuration/TCA/Overrides/tt_content.php
0 → 100644
View file @
cc27cf89
<?php
defined
(
'TYPO3_MODE'
)
or
die
();
$_EXTKEY
=
't3o_mom'
;
/***************
* Plugin
*/
\
TYPO3\CMS\Extbase\Utility\ExtensionUtility
::
registerPlugin
(
'T3o.T3oMom'
,
'T3mom'
,
'Meeting'
);
/* Flexform setting */
$pluginSignature
=
't3omom_t3mom'
;
$GLOBALS
[
'TCA'
][
'tt_content'
][
'types'
][
'list'
][
'subtypes_excludelist'
][
$pluginSignature
]
=
'recursive,select_key,pages'
;
extensions/t3o_mom/Configuration/TCA/tx_t3omom_domain_model_t3mom.php
0 → 100644
View file @
cc27cf89
<?php
return
[
'ctrl'
=>
[
'title'
=>
'LLL:EXT:t3o_mom/Resources/Private/Language/locallang_db.xlf:tx_t3omom_domain_model_t3mom'
,
'label'
=>
'title'
,
'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'
=>
'title,momdate,text,momauthor, t3teams'
,
'iconfile'
=>
'EXT:t3o_mom/Resources/Public/Icons/tx_t3omom_domain_model_t3mom.gif'
],
'interface'
=>
[
'showRecordFieldList'
=>
'sys_language_uid, l10n_parent, l10n_diffsource, hidden, title,t3teams, momdate, text, momauthor'
,
],
'types'
=>
[
'1'
=>
[
'showitem'
=>
'sys_language_uid, l10n_parent, l10n_diffsource, hidden, title, t3teams,momdate, text, momauthor, --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_t3omom_domain_model_t3mom'
,
'foreign_table_where'
=>
'AND tx_t3omom_domain_model_t3mom.pid=###CURRENT_PID### AND tx_t3omom_domain_model_t3mom.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
)
],
],
],
'title'
=>
[
'exclude'
=>
true
,
'label'
=>
'LLL:EXT:t3o_mom/Resources/Private/Language/locallang_db.xlf:tx_t3omom_domain_model_t3mom.title'
,
'config'
=>
[
'type'
=>
'input'
,
'size'
=>
30
,
'eval'
=>
'trim,required'
],
],
't3teams'
=>
[
'exclude'
=>
true
,
'label'
=>
'LLL:EXT:t3o_jobs/Resources/Private/Language/locallang_db.xlf:tx_t3ojobs_domain_model_t3jobs.t3teams'
,
'config'
=>
[
'type'
=>
'select'
,
'renderType'
=>
'selectMultipleSideBySide'
,
'foreign_table'
=>
'tx_t3ojobs_domain_model_t3teams'
,
'MM'
=>
'tx_t3omom_t3mom_t3teams_mm'
,
'size'
=>
3
,
'autoSizeMax'
=>
30
,
'minitems'
=>
1
,
'maxitems'
=>
1
,
'multiple'
=>
0
,
'fieldControl'
=>
[
'editPopup'
=>
[
'disabled'
=>
false
,
],
'addRecord'
=>
[
'disabled'
=>
false
,
],
'listModule'
=>
[
'disabled'
=>
true
,
],
],
],
],
'momdate'
=>
[
'exclude'
=>
true
,
'label'
=>
'LLL:EXT:t3o_mom/Resources/Private/Language/locallang_db.xlf:tx_t3omom_domain_model_t3mom.momdate'
,
'config'
=>
[
'dbType'
=>
'date'
,
'type'
=>
'input'
,
'renderType'
=>
'inputDateTime'
,
'size'
=>
7
,
'eval'
=>
'date, required'
,
'default'
=>
null
,
],
],
'text'
=>
[
'exclude'
=>
true
,
'label'
=>
'LLL:EXT:t3o_mom/Resources/Private/Language/locallang_db.xlf:tx_t3omom_domain_model_t3mom.text'
,
'config'
=>
[
'type'
=>
'text'
,
'enableRichtext'
=>
true
,
'richtextConfiguration'
=>
'default'
,
'fieldControl'
=>
[
'fullScreenRichtext'
=>
[
'disabled'
=>
false
,
],
],
'cols'
=>
40
,
'rows'
=>
15
,
'eval'
=>
'trim'
,
],
],
'momauthor'
=>
[
'exclude'
=>
true
,
'label'
=>
'LLL:EXT:t3o_mom/Resources/Private/Language/locallang_db.xlf:tx_t3omom_domain_model_t3mom.momauthor'
,
'config'
=>
[
'type'
=>
'input'
,
'size'
=>
30
,
'eval'
=>
'trim'
],
],
],
];
extensions/t3o_mom/Configuration/TSconfig/ContentElementWizard.txt
0 → 100644
View file @
cc27cf89
mod.wizards.newContentElement.wizardItems.plugins {
elements{
t3mom{
icon = ../typo3conf/ext/t3o_mom/Resources/Public/Icons/t3o_mom-plugin-t3mom.svg
iconIdentifier = t3o_mom-plugin-t3mom
title = LLL:EXT:t3o_mom/Resources/Private/Language/locallang_db.xlf:tx_t3o_mom_t3mom.name
description = LLL:EXT:t3o_mom/Resources/Private/Language/locallang_db.xlf:tx_t3o_mom_t3mom.description
tt_content_defValues {
CType = list
list_type = t3omom_t3mom
}
}
}
}
\ No newline at end of file
extensions/t3o_mom/Configuration/TypoScript/constants.ts
0 → 100644
View file @
cc27cf89
plugin
.
tx_t3omom_t3mom
{
view
{
#
cat
=
plugin
.
tx_t3omom_t3mom
/
file
;
type
=
string
;
label
=
Path
to
template
root
(
FE
)
templateRootPath
=
EXT
:
t3o_mom
/
Resources
/
Private
/
Templates
/
#
cat
=
plugin
.
tx_t3omom_t3mom
/
file
;
type
=
string
;
label
=
Path
to
template
partials
(
FE
)
partialRootPath
=
EXT
:
t3o_mom
/
Resources
/
Private
/
Partials
/
#
cat
=
plugin
.
tx_t3omom_t3mom
/
file
;
type
=
string
;
label
=
Path
to
template
layouts
(
FE
)
layoutRootPath
=
EXT
:
t3o_mom
/
Resources
/
Private
/
Layouts
/
}
persistence
{
#
cat
=
plugin
.
tx_t3omom_t3mom
//a; type=string; label=Default storage PID
storagePid
=
}
}
extensions/t3o_mom/Configuration/TypoScript/setup.ts
0 → 100644
View file @
cc27cf89
plugin
.
tx_t3omom_t3mom
{
view
{
templateRootPaths
.
0
=
EXT
:
t3o_mom
/
Resources
/
Private
/
Templates
/
templateRootPaths
.
1
=
{
$plugin
.
tx_t3omom_t3mom
.
view
.
templateRootPath
}
partialRootPaths
.
0
=
EXT
:
t3o_mom
/
Resources
/
Private
/
Partials
/
partialRootPaths
.
1
=
{
$plugin
.
tx_t3omom_t3mom
.
view
.
partialRootPath
}
layoutRootPaths
.
0
=
EXT
:
t3o_mom
/
Resources
/
Private
/
Layouts
/
layoutRootPaths
.
1
=
{
$plugin
.
tx_t3omom_t3mom
.
view
.
layoutRootPath
}
}
persistence
{
storagePid
=
{
$plugin
.
tx_t3omom_t3mom
.
persistence
.
storagePid
}
#
recursive
=
1
}
features
{
#
skipDefaultArguments
=
1
#
if
set
to
1
,
the
enable
fields
are
ignored
in
BE
context
ignoreAllEnableFieldsInBe
=
0
#
Should
be
on
by
default
,
but
can
be
disabled
if
all
action
in
the
plugin
are
uncached
requireCHashArgumentForActionArguments
=
1
}
mvc
{
#
callDefaultActionIfActionCantBeResolved
=
1
}
}
page
.
includeJS
{
mom
=
typo3conf
/
ext
/
t3o_mom
/
Resources
/
Public
/
mom
.
js
}
#
set
type
for
load
month
using
ajax
filterAction
=
PAGE
filterAction
{
typeNum
=
8574
config
{