page = PAGE page { 10 = FLUIDTEMPLATE 10 { layoutRootPaths { 10 = EXT:carriere/Resources/Private/Layouts/Page } partialRootPaths { 10 = EXT:carriere/Resources/Private/Partials/Page } templateRootPaths { 10 = EXT:carriere/Resources/Private/Templates/Page } } includeCSSLibs { fontawesome = EXT:carriere/Resources/Public/Css/Libs/FontAwesome/fontawesome.css } includeCSS { theme = EXT:carriere/Resources/Public/Css/Libs/theme.min.css global = EXT:carriere/Resources/Public/Scss/global.scss tarteaucitron = EXT:carriere/Resources/Public/Scss/tarteaucitron.scss footer = EXT:carriere/Resources/Public/Scss/footer.scss header = EXT:carriere/Resources/Public/Scss/header.scss scrollTop = EXT:carriere/Resources/Public/Scss/scrollTop.scss carousel = EXT:carriere/Resources/Public/Scss/carousel.scss actusHome = EXT:carriere/Resources/Public/Scss/actusHome.scss blockNumb = EXT:carriere/Resources/Public/Scss/blockNumb.scss filArianne = EXT:carriere/Resources/Public/Scss/filArianne.scss vueDetailleActu = EXT:carriere/Resources/Public/Scss/vueDetailleActu.scss newsTemoignages = EXT:carriere/Resources/Public/Scss/newsTemoignages.scss carteSubpages = EXT:carriere/Resources/Public/Scss/carteSubpages.scss accordion = EXT:carriere/Resources/Public/Scss/accordion.scss globalListMRC = EXT:carriere/Resources/Public/Scss/globalListMRC.scss globalDetailMRC = EXT:carriere/Resources/Public/Scss/globalDetailMRC.scss form = EXT:carriere/Resources/Public/Scss/form.scss overridecolor = EXT:carriere/Resources/Public/Scss/overrideColor.scss } includeJSFooter { main = EXT:carriere/Resources/Public/JavaScript/main.js } includeJSFooterlibs { bootstrap = EXT:carriere/Resources/Public/JavaScript/Lib/bootstrap.min.js bootstrap_accordion = EXT:wseils_usine/Resources/Public/Js/Lib/bootstrap.accordion.js bootstrap_lightbox = EXT:wseils_usine/Resources/Public/Js/Lib/bootstrap.lightbox.js bootstrap_navbar = EXT:wseils_usine/Resources/Public/Js/Lib/bootstrap.navbar.js bootstrap_popover = EXT:wseils_usine/Resources/Public/Js/Lib/bootstrap.popover.js bootstrap_smoothscroll = EXT:wseils_usine/Resources/Public/Js/Lib/bootstrap.smoothscroll.js bootstrap_stickyheader = EXT:wseils_usine/Resources/Public/Js/Lib/bootstrap.stickyheader.js } includeJS { jquery = EXT:carriere/Resources/Public/JavaScript/Lib/jquery.min.js tarteaucitron = EXT:carriere/Resources/Public/JavaScript/tarteaucitron/tarteaucitron.js tarteaucitron.external = 1 } headerData.1803 = TEXT headerData.1803 { value = {$headerTagInsertion} } } #TARTEAUCITRON page.3677 = TEXT page.3677.value ( ) page.3677.value.insertData = 1 page.3678 = TEXT page.3678.value ( ) ['{$gTagManager}' != ''] page.3679 = TEXT page.3679.value ( ) [end] ['{$googleAnalytics}' != ''] page.3680 = TEXT page.3680.value ( ) [end] plugin.tx_news.settings{ categoriesSelect { uidCatTypeJob = {$uidCatTypeJob} uidCatLocal = {$uidCatLocal} uidCatCat = {$uidCatCat} uidCatCorps = {$uidCatCorps} uidCatIntExt = {$uidCatIntExt} uidCatTypeConcours = {$uidCatTypeConcours} } logo = {$page.logo.file} prepareConcours = {$pagePreparerConcours} annales = {$pageAnnales} } #GRIDELEMENT APPEARANCE #On vide le typoscript qui génére le gridelement pour le surcharger lib.bootstrap_grids > lib.bootstrap_grids { # Column grids 2cols < lib.gridelements.defaultGridSetup 2cols { #Si il y a une classe frame alors... wrap.cObject = COA wrap.cObject.10 = COA wrap.cObject.10 { #Si le paramétre parallax est stocké, on met la bonne classe dans un load_register 5 = COA 5 { 5 = LOAD_REGISTER 5.parallax.cObject = TEXT 5.parallax.cObject.value = frame-backgroundimage-parallax if.value.data = flexform:background_image_options:parallax if.equals = 1 } #Si le paramétre fade est stocké, on met la bonne classe dans un load_register 6 = COA 6 { 5 = LOAD_REGISTER 5.fade.cObject = TEXT 5.fade.cObject.value = frame-backgroundimage-fade if.value.data = flexform:background_image_options:fade if.equals = 1 } #Si le paramétre filter est stocké, on met la bonne classe dans un load_register 7 = COA 7 { 5 = LOAD_REGISTER 5.filter.cObject = TEXT 5.filter.cObject.value = frame-backgroundimage-{flexform:background_image_options:filter} 5.filter.cObject.insertData = 1 if.isTrue.data = flexform:background_image_options:filter } #Si il y a un titre 8 = COA 8 { 5 = LOAD_REGISTER 5.headerCol.cObject = CASE 5.headerCol.cObject { key.data = field:header_layout 0 = TEXT 0.value =

{field:header}

0.insertData = 1 1 = TEXT 1.value =

{field:header}

1.insertData = 1 2 = TEXT 2.value =

{field:header}

2.insertData = 1 3 = TEXT 3.value =

{field:header}

3.insertData = 1 4 = TEXT 4.value =

{field:header}

4.insertData = 1 5 = TEXT 5.value =
{field:header}
5.insertData = 1 100 = TEXT 100.value = } if.isTrue.field = header } #On récupére l'url de l'image de fond si il y en a une 10 = CONTENT 10 { table = sys_file_reference select { pidInList = 1 recursive = 99 where = `uid_foreign` = '{field:uid}' where.insertData = 1 } renderObj = FILES renderObj { references { table = tt_content uid.data = field:uid_foreign fieldName = background_image } renderObj = COA renderObj { #On stocke le nom du fichier 5 = LOAD_REGISTER 5.imgBg.data = file:current:identifier #On stocke l'id du domaine où est stocké l'image 6 = LOAD_REGISTER 6.tempDomain.data = file:current:storage #On récupére le nom du domaine dans une variable en fonction de son id 10 = COA 10 { 5 = LOAD_REGISTER 5.domainImg.cObject = TEXT 5.domainImg.cObject.value = {$domainSecond} 5.domainImg.cObject.insertData = 1 if.value.data = register:tempDomain if.equals = 2 } 15 = COA 15 { 5 = LOAD_REGISTER 5.domainImg.cObject = TEXT 5.domainImg.cObject.value = {$domainFirst} 5.domainImg.cObject.insertData = 1 if.value.data = register:tempDomain if.equals = 1 } } } } #On génére le wrap 20 = COA 20 { 10 = TEXT 10 { #Si il n'y a pas d'image value =
{register:headerCol}
|
insertData = 1 #Si il y a une image value.override = frame-layout-{field:layout} frame-background-{field:background_color_class} frame-has-backgroundimage frame-space-before-{field:space_before_class} frame-space-after-{field:space_after_class}">
{register:headerCol}
|
value.override.if.isTrue.field = background_image } } if.value.field = frame_class if.equals = none if.negate = 1 } #Si il n'y a pas une classe frame alors... wrap.cObject.20 = COA wrap.cObject.20 { #Si le paramétre parallax est stocké, on met la bonne classe dans un load_register 5 = COA 5 { 5 = LOAD_REGISTER 5.parallax.cObject = TEXT 5.parallax.cObject.value = frame-backgroundimage-parallax if.value.data = flexform:background_image_options:parallax if.equals = 1 } #Si le paramétre fade est stocké, on met la bonne classe dans un load_register 6 = COA 6 { 5 = LOAD_REGISTER 5.fade.cObject = TEXT 5.fade.cObject.value = frame-backgroundimage-fade if.value.data = flexform:background_image_options:fade if.equals = 1 } #Si le paramétre filter est stocké, on met la bonne classe dans un load_register 7 = COA 7 { 5 = LOAD_REGISTER 5.filter.cObject = TEXT 5.filter.cObject.value = frame-backgroundimage-{flexform:background_image_options:filter} 5.filter.cObject.insertData = 1 if.isTrue.data = flexform:background_image_options:filter } #Si il y a un titre 8 = COA 8 { 5 = LOAD_REGISTER 5.headerCol.cObject = CASE 5.headerCol.cObject { key.data = field:header_layout 0 = TEXT 0.value =

{field:header}

0.insertData = 1 1 = TEXT 1.value =

{field:header}

1.insertData = 1 2 = TEXT 2.value =

{field:header}

2.insertData = 1 3 = TEXT 3.value =

{field:header}

3.insertData = 1 4 = TEXT 4.value =

{field:header}

4.insertData = 1 5 = TEXT 5.value =
{field:header}
5.insertData = 1 100 = TEXT 100.value = } if.isTrue.field = header } #On récupére l'url de l'image de fond si il y en a une 10 = CONTENT 10 { table = sys_file_reference select { pidInList = 1 recursive = 99 where = `uid_foreign` = '{field:uid}' where.insertData = 1 } renderObj = FILES renderObj { references { table = tt_content uid.data = field:uid_foreign fieldName = background_image } renderObj = COA renderObj { #On stocke le nom du fichier 5 = LOAD_REGISTER 5.imgBg.data = file:current:identifier #On stocke l'id du domain où est stocké l'image 6 = LOAD_REGISTER 6.tempDomain.data = file:current:storage #On récupére le nom du domaine dans une variable en fonction de son id 10 = COA 10 { 5 = LOAD_REGISTER 5.domainImg.cObject = TEXT 5.domainImg.cObject.value = {$domainSecond} 5.domainImg.cObject.insertData = 1 if.value.data = register:tempDomain if.equals = 2 } 15 = COA 15 { 5 = LOAD_REGISTER 5.domainImg.cObject = TEXT 5.domainImg.cObject.value = {$domainFirst} 5.domainImg.cObject.insertData = 1 if.value.data = register:tempDomain if.equals = 1 } } } } #On génére le wrap 20 = COA 20 { 10 = TEXT 10 { #Si il n'y a pas d'image value =
{register:headerCol}
|
insertData = 1 #Si il y a une image value.override = frame-background-{field:background_color_class} frame-has-backgroundimage frame-space-before-{field:space_before_class} frame-space-after-{field:space_after_class}">
{register:headerCol}
|
value.override.if.isTrue.field = background_image } } if.value.field = frame_class if.equals = none } columns { 101 < .default 101.dataWrap =
|
# override if none set (supporting drag&drop) 101.dataWrap.override =
|
101.dataWrap.override.if.isNull.field = flexform_xsCol1 101.wrap > 102 < .101 102.dataWrap =
|
102.dataWrap.override.if.isNull.field = flexform_xsCol2 } } 3cols < .2cols 3cols { columns { 101.dataWrap =
|
102.dataWrap =
|
103 < .101 103.dataWrap =
|
102.dataWrap.override.if.isNull.field = flexform_xsCol3 } } 4cols < .3cols 4cols { columns { 101.dataWrap =
|
102.dataWrap =
|
103.dataWrap =
|
104 < .101 104.dataWrap =
|
104.dataWrap.override.if.isNull.field = flexform_xsCol4 } } # Tabs simpleTabs < lib.gridelements.defaultGridSetup simpleTabs { outerWrap =
|
outerWrap.insertData = 1 prepend = CONTENT prepend { table = tt_content select { selectFields = header, uid, tx_gridelements_container, sorting where = tx_gridelements_container={field:uid} where.insertData = 1 orderBy = sorting } wrap = renderObj = COA renderObj { 5 = LOAD_REGISTER 5 { TabCount.cObject = TEXT TabCount.cObject.data = register:TabCount TabCount.cObject.wrap = |+1 TabCount.prioriCalc = intval } 10 = TEXT 10 { field = header insertData = 1 wrap = | outerWrap.cObject = CASE outerWrap.cObject { key.data = register:TabCount default = TEXT default.value = | 1 = TEXT 1.value = | } } } } columns { 101 < .default 101 { wrap =
|
renderObj { 5 = LOAD_REGISTER 5 { TabCount2.cObject = TEXT TabCount2.cObject.data = register:TabCount2 TabCount2.cObject.wrap = |+1 TabCount2.prioriCalc = intval } stdWrap.insertData = 1 stdWrap.outerWrap.cObject = CASE stdWrap.outerWrap.cObject { key.data = register:TabCount2 default = TEXT default.value = 1 = TEXT 1.value = } # don't show headers in tabs #20 =< tt_content 20 < tt_content 20 { text.10 > image.10 > textpic.10 > uploads.10 > table.10 > multimedia.10 > media.10 > mailform.10 > menu.10 > videoce_videocontent.10 > } } } } # Reset tab counts append = COA append { 5 = LOAD_REGISTER 5 { TabCount.cObject = TEXT TabCount.cObject.data = register:TabCount TabCount.cObject.wrap = |*0 TabCount.prioriCalc = intval } 10 = LOAD_REGISTER 10 { TabCount2.cObject = TEXT TabCount2.cObject.data = register:TabCount2 TabCount2.cObject.wrap = |*0 TabCount2.prioriCalc = intval } } } 4tabs < lib.gridelements.defaultGridSetup 4tabs { # style wrap outerWrap =
|
outerWrap.insertData = 1 prepend = COA prepend.wrap = prepend { 10 = TEXT 10.value = 10.insertData = 1 20 < .10 20.value = 20.if.isTrue.field = flexform_tabTitle2 30 < .10 30.value = 30.if.isTrue.field = flexform_tabTitle3 40 < .10 40.value = 40.if.isTrue.field = flexform_tabTitle4 } wrap =
|
columns { 101 < .default 101.wrap = 101.wrap.insertData = 1 102 < .101 102.wrap = 102.if.isTrue.field = flexform_tabTitle2 103 < .101 103.wrap = 103.if.isTrue.field = flexform_tabTitle3 104 < .101 104.wrap = 104.if.isTrue.field = flexform_tabTitle4 } } 6tabs < .4tabs 6tabs { prepend { 50 < .10 50.value = 50.if.isTrue.field = flexform_tabTitle5 60 < .10 60.value = 60.if.isTrue.field = flexform_tabTitle6 } columns { 105 < .101 105.wrap = 105.if.isTrue.field = flexform_tabTitle5 106 < .101 106.wrap = 106.if.isTrue.field = flexform_tabTitle6 } } # Accordion accordion < lib.gridelements.defaultGridSetup accordion { # wrap around all outerWrap.stdWrap.cObject = CASE outerWrap.stdWrap.cObject { key.field = flexform_rowclass default = TEXT default.value =
|
} outerWrap.insertData = 1 columns { 101 < .default 101 { renderObj { #stdWrap.outerWrap =
|
5 = LOAD_REGISTER 5 { AccordionCount.cObject = TEXT AccordionCount.cObject.data = register:AccordionCount AccordionCount.cObject.wrap = |+1 AccordionCount.prioriCalc = intval } 10 = TEXT 10 { field = header insertData = 1 wrap =
wrap.override =
wrap.override.if.value = 1 wrap.override.if.equals.data = register:AccordionCount } # don't show headers in accordion #20 =< tt_content 20 < tt_content 20 { text.10 > image.10 > textpic.10 > uploads.10 > table.10 > multimedia.10 > media.10 > mailform.10 > menu.10 > videoce_videocontent.10 > } 30 = TEXT 30.wrap = |
} } } # Reset accordion count append = COA append { 5 = LOAD_REGISTER 5 { AccordionCount.cObject = TEXT AccordionCount.cObject.data = register:AccordionCount AccordionCount.cObject.wrap = |*0 AccordionCount.prioriCalc = intval } } } # simple row for content elements and usage with ext:bscolwrap simpleRow < lib.gridelements.defaultGridSetup simpleRow { # row wrap wrap =
|
columns { # special 111, used as check for conditional fields 111 < .default 111.wrap = | } } } #On vide le tt_content pour le remplir avec notre nouveau wrap tt_content.gridelements_pi1.20.10.setup > tt_content.gridelements_pi1.20.10.setup { 2cols < lib.bootstrap_grids.2cols 3cols < lib.bootstrap_grids.3cols 4cols < lib.bootstrap_grids.4cols tabs4 < lib.bootstrap_grids.4tabs tabs6 < lib.bootstrap_grids.6tabs xSimpleRow < lib.bootstrap_grids.simpleRow } tt_content.gridelements_pi1.20.10.setup.tabsSimple < lib.gridelements.defaultGridSetup tt_content.gridelements_pi1.20.10.setup.tabsSimple { outerWrap =
|
outerWrap.insertData = 1 prepend = CONTENT prepend { table = tt_content select { selectFields = header, uid, tx_gridelements_container, sorting where = tx_gridelements_container={field:uid} where.insertData = 1 orderBy = sorting } wrap = renderObj = COA renderObj { 5 = LOAD_REGISTER 5 { TabCount.cObject = TEXT TabCount.cObject.data = register:TabCount TabCount.cObject.wrap = |+1 TabCount.prioriCalc = intval } 10 = TEXT 10 { field = header insertData = 1 wrap = | outerWrap.cObject = CASE outerWrap.cObject { key.data = register:TabCount default = TEXT default.value = | 1 = TEXT 1.value = | } } } } columns { 101 < .default 101 { wrap =
|
renderObj { 5 = LOAD_REGISTER 5 { TabCount2.cObject = TEXT TabCount2.cObject.data = register:TabCount2 TabCount2.cObject.wrap = |+1 TabCount2.prioriCalc = intval } stdWrap.insertData = 1 stdWrap.outerWrap.cObject = CASE stdWrap.outerWrap.cObject { key.data = register:TabCount2 default = TEXT default.value = 1 = TEXT 1.value = } # don't show headers in tabs #20 =< tt_content 20 < tt_content 20 { text.10 > image.10 > textpic.10 > uploads.10 > table.10 > multimedia.10 > media.10 > mailform.10 > menu.10 > videoce_videocontent.10 > } } } } # Reset tab counts append = COA append { 5 = LOAD_REGISTER 5 { TabCount.cObject = TEXT TabCount.cObject.data = register:TabCount TabCount.cObject.wrap = |*0 TabCount.prioriCalc = intval } 10 = LOAD_REGISTER 10 { TabCount2.cObject = TEXT TabCount2.cObject.data = register:TabCount2 TabCount2.cObject.wrap = |*0 TabCount2.prioriCalc = intval } } } tt_content.gridelements_pi1.20.10.setup.accordion < lib.gridelements.defaultGridSetup tt_content.gridelements_pi1.20.10.setup.accordion { # wrap around all outerWrap.stdWrap.cObject = CASE outerWrap.stdWrap.cObject { key.field = flexform_rowclass default = TEXT default.value =
|
} outerWrap.insertData = 1 columns { 101 < .default 101 { renderObj { #stdWrap.outerWrap =
|
5 = LOAD_REGISTER 5 { AccordionCount.cObject = TEXT AccordionCount.cObject.data = register:AccordionCount AccordionCount.cObject.wrap = |+1 AccordionCount.prioriCalc = intval } 10 = TEXT 10 { field = header insertData = 1 wrap =
wrap.override =
wrap.override.if.value = 1 wrap.override.if.equals.data = register:AccordionCount } # don't show headers in accordion #20 =< tt_content 20 < tt_content 20 { text.10 > image.10 > textpic.10 > uploads.10 > table.10 > multimedia.10 > media.10 > mailform.10 > menu.10 > videoce_videocontent.10 > } 30 = TEXT 30.wrap = |
} } } # Reset accordion count append = COA append { 5 = LOAD_REGISTER 5 { AccordionCount.cObject = TEXT AccordionCount.cObject.data = register:AccordionCount AccordionCount.cObject.wrap = |*0 AccordionCount.prioriCalc = intval } } } #GRIDELEMENT APPEARANCE #Récupére les catégories pour les champs de catégory lib.champsCategory = COA lib.champsCategory { 5 = LOAD_REGISTER 5 { uidCategory.cObject = TEXT uidCategory.cObject.value.current = 1 firstEle.cObject = TEXT firstEle.cObject.value = 1 } 10 = CONTENT 10 { table = sys_category select { pidInList = 0 uidInList = {register:uidCategory} uidInList.insertData = 1 } renderObj = COA renderObj { 5 = TEXT 5 { field = title wrap = | if { value.data = register:firstEle equals = 1 } } 10 = TEXT 10 { field = title wrap = , | if { value.data = register:firstEle equals = 0 } } 25 = LOAD_REGISTER 25.firstEle.cObject = TEXT 25.firstEle.cObject.value = 0 } } } #Récupére titre page préparer son concours lib.getTitlePreparerConcours = TEXT lib.getTitlePreparerConcours { value = Préparer son concours typolink.parameter = {$pagePreparerConcours} typolink.ATagParams = class="btn btn-primary" } lib.getTitlePreparerConcoursList < lib.getTitlePreparerConcours lib.getTitlePreparerConcoursList.typolink.ATagParams = class="more" #Récupére titre page annales lib.getTitleAnnales = TEXT lib.getTitleAnnales { value = Annales typolink.parameter = {$pageAnnales} typolink.ATagParams = class="more" } lib.getTitleAnnalesDetail = TEXT lib.getTitleAnnalesDetail { value = Voir les annales typolink.parameter = {$pageAnnales} typolink.ATagParams = class="btn btn-secondary" } lib.linkToAdminResults = TEXT lib.linkToAdminResults { wrap =
|
if.isTrue = {$pageAdminResultsEnable} value = Résultats administratifs typolink.parameter = {$pageAdminResults} typolink.ATagParams = class="more" } lib.linkToAdmissionResults = TEXT lib.linkToAdmissionResults { wrap =
|
if.isTrue = {$pageAdmissionResultsEnable} value = Résultats d’admission typolink.parameter = {$pageAdmissionResults} typolink.ATagParams = class="more" } lib.linkToJuryComposition = TEXT lib.linkToJuryComposition { wrap =
|
if.isTrue = {$pageJuryCompositionEnable} value = Composition du jury typolink.parameter = {$pageJuryComposition} typolink.ATagParams = class="more" } lib.toolsSocial = COA_INT lib.toolsSocial { wrap =
    |
# twitter 10 = TEXT 10 { wrap = value = typolink { ATagParams = title="Partager sur twitter" ATagParams = target="_blank" parameter.cObject = COA parameter.cObject { 5 = TEXT 5 { value = https://twitter.com/intent/tweet?url=URLNEWS } } } } # linkedin 20 = TEXT 20 { wrap =
  • |
  • value = typolink { ATagParams = title="Partager sur linkedin" parameter.cObject = COA parameter.cObject { 5 = TEXT 5 { value = https://www.linkedin.com/sharing/share-offsite/?url=URLNEWS } } } } 30 = TEXT 30 { wrap =
  • |
  • value = typolink { ATagParams = title="Partager par mail" parameter.cObject = COA parameter.cObject { wrap = mailto:?body=|URLNEWS 10 = TEXT 10 { value = {$bodyMailPdfViewer} value.rawUrlEncode = 1 value.insertData = 1 } } } } }