setup.txt 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209
  1. # TODO: carousel: gérer les cas où pas d'image (ne rien mettre), une seule image (pas de carousel), ou plusieurs
  2. # -- après déploiement beta
  3. # TODO: Placer tous les mots utilisés dans le fichier de traduction
  4. # TODO: obtenir les infos suivantes via l'API: is_network, email, name, twitter, logo, network_logo, network_name, network_url
  5. # TODO: filtrer les pages sans contenu (en option dans les constants?)
  6. # TODO: rédiger une doc dev
  7. # TODO: Rédiger une doc utilisateurs
  8. # TODO: permettre de mettre en avant des évènements (appraissent plus longtemps à l'avance)
  9. # TODO: ajouter un plugin "réseaux sociaux"
  10. # TODO: tester l'intégration matomo
  11. # TODO: permettre d'ajouter du contenu de type fichier
  12. # TODO: permettre d'ajouter du contenu de type vidéos
  13. # TODO: ajouter une recherche fulltext sur le site
  14. # TODO: Faire des sites de demo / de test pour chaque thème avec un compte bidon mais représentatif
  15. # TODO: trouver un système pour garder à jour les mentions légales
  16. # TODO: Réflechir à un système pour pouvoir afficher un message sur tous les minisites, type 'Maintenance prévue le...' ou autre
  17. [applicationContext = Development*]
  18. config.debug = 1
  19. config.contentObjectExceptionHandler = 0
  20. config.no_cache = 1
  21. config.admPanel = 0
  22. plugin.tx_vhs.settings.debug = 0
  23. plugin.tx_vhs.settings.asset.debug = 0
  24. [end]
  25. [applicationContext = Testing*]
  26. config.debug = 1
  27. config.contentObjectExceptionHandler = 1
  28. [end]
  29. # **** Configuration générale ****
  30. config.language = fr
  31. config.locale_all = fr_FR.utf-8
  32. config.concatenateCss = 1
  33. config.compressCss = 1
  34. config.compressJs = 1
  35. plugin.tx_vhs.assets.mergedAssetsUseHashedFilename = 1
  36. # **** Déclaration des plugins
  37. lib.auth = USER
  38. lib.auth {
  39. userFunc = Opentalent\OtConnect\OtAuthenticationService->logout
  40. }
  41. # Overrides fluid_styled_content contents (builtin contents)
  42. #lib.contentElement.templateRootPaths.10 = EXT:ot_templating/Resources/Private/Templates/Ext/fluid_styled_content/Default/Templates/
  43. # **** Page: configuration générale de la page courante ****
  44. page = PAGE
  45. page {
  46. typeNum = 0
  47. 5 = USER
  48. 5 {
  49. userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
  50. extensionName = Flux
  51. vendorName = FluidTYPO3
  52. pluginName = Page
  53. }
  54. 10 >
  55. }
  56. page.config.doctype=html5
  57. page.meta {
  58. keywords.field = keywords
  59. description.field = description
  60. author.field = author
  61. robots = index,follow,archive
  62. viewport = width=device-width
  63. }
  64. # **** Configuration des extensions ****
  65. plugin.tx_flux {
  66. # Allow pages which have is_siteroot = 1 to inherit chosen template from parent.
  67. # Disable this to prevent subsites in a multisite environment from using the same template as the immediate parent of that site root.
  68. siteRootInheritance = 0
  69. }
  70. plugin.tx_ottemplating {
  71. view {
  72. templateRootPaths.0 = {$templateRootPath}
  73. partialRootPaths.0 = {$partialRootPath}
  74. layoutRootPaths.0 = {$layoutRootPath}
  75. }
  76. settings {
  77. opentalentWebsite = {$plugin.tx_ottemplating.settings.opentalent.website}
  78. opentalentLogoPath = {$plugin.tx_ottemplating.settings.opentalent.logoPath}
  79. opentalentFileStorageUrl = {$plugin.tx_ottemplating.settings.opentalent.fileStorageUrl}
  80. opentalentDashboardUrl = {$plugin.tx_ottemplating.settings.opentalent.dashboardUrl}
  81. opentalentLogoutUrl = {$plugin.tx_ottemplating.settings.opentalent.logoutUrl}
  82. structureId = {$plugin.tx_ottemplating.settings.organization.id}
  83. structureLogoId = {$plugin.tx_ottemplating.settings.organization.logoid}
  84. structureName = {$plugin.tx_ottemplating.settings.organization.name}
  85. structureEmail = {$plugin.tx_ottemplating.settings.organization.email}
  86. structureIsNetwork = {$plugin.tx_ottemplating.settings.organization.is_network}
  87. networkLogo = {$plugin.tx_ottemplating.settings.network.logo}
  88. networkName = {$plugin.tx_ottemplating.settings.network.name}
  89. networkUrl = {$plugin.tx_ottemplating.settings.network.url}
  90. cmfUrl = {$plugin.tx_ottemplating.settings.network.cmfUrl}
  91. # aliases
  92. organizationId = {$plugin.tx_ottemplating.settings.organization.id}
  93. organizationIsNetwork = {$plugin.tx_ottemplating.settings.organization.is_network}
  94. # computed
  95. structureLogoUrl = {$plugin.tx_ottemplating.settings.opentalent.fileStorageUrl}{$plugin.tx_ottemplating.settings.organization.logoid}/0x60
  96. networkLogoUrl = /typo3conf/ext/ot_templating/Resources/Public/media/{$plugin.tx_ottemplating.settings.network.logo}
  97. # Default values for flux parameters
  98. template = Classic
  99. themeColor = light-blue
  100. displayCarousel = {$plugin.tx_ottemplating.settings.appearance.carousel}
  101. staticDonors = {$plugin.tx_ottemplating.settings.donors.static}
  102. eventsLimit = {$plugin.tx_ottemplating.settings.events.limit}
  103. eventsPeriod = {$plugin.tx_ottemplating.settings.events.period}
  104. }
  105. }
  106. # * Form extension
  107. # @see https://docs.typo3.org/c/typo3/cms-form/9.5/en-us/Introduction/Index.html
  108. # -- BE integration
  109. module.tx_form {
  110. settings {
  111. yamlConfigurations {
  112. 100 = EXT:ot_templating/Configuration/Form/CustomFormSetup.yaml
  113. }
  114. }
  115. }
  116. # -- FE integration
  117. plugin.tx_form {
  118. settings {
  119. yamlConfigurations {
  120. 100 = EXT:ot_templating/Configuration/Form/CustomFormSetup.yaml
  121. }
  122. formDefinitionOverrides {
  123. ContactForm {
  124. finishers {
  125. 0 {
  126. options {
  127. recipientAddress = {$plugin.tx_ottemplating.settings.organization.email}
  128. }
  129. }
  130. }
  131. }
  132. }
  133. }
  134. }
  135. # Create the form object to render with:
  136. # <f:cObject typoscriptObjectPath="lib.tx_ottemplating.widgets.contact"/>
  137. lib.tx_ottemplating.widgets.contact = USER_INT
  138. lib.tx_ottemplating.widgets.contact {
  139. userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
  140. extensionName = Form
  141. pluginName = Formframework
  142. vendorName = TYPO3\CMS
  143. switchableControllerActions {
  144. FormFrontend {
  145. 1 = perform
  146. }
  147. }
  148. settings.persistenceIdentifier = EXT:ot_templating/Resources/Private/Forms/Contact.form.yaml
  149. }
  150. # * News extension integration
  151. # Disable error handling to allow displaying both list ans detail on the same page
  152. plugin.tx_news.settings {
  153. detail.errorHandling =
  154. }
  155. # Create the news list and news details objects to render with:
  156. # <f:cObject typoscriptObjectPath="lib.tx_ottemplating.widgets.listnews"/>
  157. # <f:cObject typoscriptObjectPath="lib.tx_ottemplating.widgets.detailnews"/>
  158. lib.tx_ottemplating.widgets {
  159. listnews = USER
  160. listnews {
  161. userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
  162. extensionName = News
  163. pluginName = Pi1
  164. vendorName = GeorgRinger
  165. action = list
  166. switchableControllerActions {
  167. News {
  168. 1 = list
  169. }
  170. }
  171. settings < plugin.tx_news.settings
  172. settings {
  173. limit = {$settings.news.limit}
  174. }
  175. }
  176. detailnews < lib.tx_ottemplating.widgets.listnews
  177. detailnews {
  178. action = detail
  179. switchableControllerActions.News.1 = detail
  180. }
  181. }