< Back
Print

Configuration

Add SawsConnector Page to TYPO3

Create a new Page an add the folowing Typo Template to it. This Template will avoid the html output of the page.

typotemplatepage

soapServiceWsdl = PAGE
soapServiceWsdl {
  10 = USER
  10 {
 userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
            extensionName = Sawsconnector
            pluginName = Sawsconnector
            vendorName = SAWSGmbHCoKG
            controller = Sawsconnector
            action = update
            switchableControllerActions {
                Sawsconnector {
                    1 = list
                    2 = show
                    3 = update
                    4 = getdata
                }
            }
            view < plugin.tx_sawsconnector_sawsconnector.view
            persistence < plugin.tx_sawsconnector_sawsconnector.persistence
            settings < plugin.tx_sawsconnector_sawsconnector.settings
        }
 
  config {
    disableAllHeaderCode = 1
    xhtml_cleaning = 0
    disablePreviewInfo = 1
    admPanel = 0
    debug = 0
    no_cache = 1
  } 
}

 

Add Root Page with typical Template

This template is only a sample! Your Template can have this own design. The template is independent from the sawsconnector!

 

typo_template

config {
  
  linkVars = L
  sys_language_overlay = 0
  sys_language_mode = strict
  
  sys_language_uid = 0
  language = de  
  }

[globalVar = GP:L  = 0]
config.sys_language_uid = 0
config.language = de
[global]

[globalVar = GP:L  = 1]
config.sys_language_uid = 0
config.language = de
[global]

[globalVar = GP:L  = 2]
config.sys_language_uid = 2
config.language = en
[global]

[globalVar = GP:L  = 3]
config.sys_language_uid = 3
config.language = jp
[global]

#######################
#### LANGUAGE MENU ####
#######################
lib.language = COA
lib.language {
    ###################################################
    #### EXAMPLE FOR TYPOSCRIPT LANGUAGE OVERRIDES ####
    #### its not needed in this example            ####
    ###################################################
    #10 = TEXT
    #10 {
    #    value = Language
    #    value.lang.da = Sprog
    #    value.lang.de = Sprache
    #    noTrimWrap = |<li><span class="glyphicon glyphicon-globe"></span> |</li>|
    #}

    20 = HMENU
    20 {
        special = language
        special.value = 0,1,2,3
        special.normalWhenNoLanguage = 0
        wrap =
        1 = TMENU
        1 {
            noBlur = 1
            NO = 1
            NO {
                linkWrap = <li>|</li>
                stdWrap.override = Deutsch || English || Japan
                doNotLinkIt = 1
                stdWrap {
                    typolink {
                        parameter.data = page:uid
                        additionalParams = &L=0 || &L=2 || &L=3
                        ATagParams = hreflang="de-DE" || hreflang="en-EN" || hreflang="jp-JP"
                        addQueryString = 1
                        addQueryString.exclude = L,id,cHash,no_cache
                        addQueryString.method = GET
                        useCacheHash = 1
                        no_cache = 0
                    }
                }
            }

            ACT < .NO
            ACT.linkWrap = <li class="active">|</li>
            #### NO TRANSLATION AVAILABLE STATES ####
            USERDEF1 < .NO
            USERDEF1 {
                linkWrap = <li class="text-muted">|</li>
                stdWrap.typolink >
            }

            USERDEF2 < .ACT
            USERDEF2 {
                linkWrap = <li class="text-muted">|</li>
                stdWrap.typolink >
            }
        }
    }
    wrap = <ul id="language_menu" class="language-menu">|</ul>
}


####################
#### NAVIGATION ####
####################
lib.navigation.main = COA
lib.navigation.main {
    10 = HMENU
    10 {
        1 = TMENU
        1 {
            wrap = <ul class="nav navbar-nav navbar-main">|</ul>
            expAll = 1
            noBlur = 1
            NO = 1
            NO {
                ATagTitle.field = abstract // description // title
                ATagBeforeWrap = 1
                linkWrap = |<span class="bar"></span>
                wrapItemAndSub = <li>|</li>
                wrapItemAndSub.override.cObject = COA
                wrapItemAndSub.override.cObject {
                    if {
                        value = 4
                        equals.field = doktype
                        isTrue = 1
                        isTrue.if {
                            value.data = TSFE:page|uid
                            equals.field = shortcut
                        }
                    }

                    10 = TEXT
                    10.value = <li class="active">|</li>
                }
            }

            ACT < .NO
            ACT {
                wrapItemAndSub = <li class="active">|</li>
            }

            CUR < .ACT
            IFSUB < .NO
            IFSUB {
                doNotLinkIt = 1
                allWrap = <a href="#" class="dropdown-toggle" data-toggle="dropdown">|<b class="caret"></b></a>
                wrapItemAndSub = <li class="dropdown">|</li>
            }

            ACTIFSUB < .IFSUB
            ACTIFSUB {
                wrapItemAndSub = <li class="active dropdown">|</li>
            }

            CURIFSUB < .ACTIFSUB
        }

        2 < .1
        2 {
            wrap = <ul class="dropdown-menu">|</ul>
            SPC = 1
            SPC {
                wrapItemAndSub = <li class="divider"></li><li class="dropdown-header">|</li>
            }

            IFSUB >
            ACTIFSUB >
            CURIFSUB >
        }
    }
}

lib.navigation.subnavigation = COA
lib.navigation.subnavigation {
    10 = HMENU
    10 {
        entryLevel = 1
        wrap = <nav class="hidden-print hidden-xs hidden-sm" role="complementary">|</nav>
        1 = TMENU
        1 {
            wrap = <ul class="nav nav-sidebar">|</ul>
            expAll = 0
            noBlur = 1
            NO = 1
            NO {
                ATagTitle.field = abstract // description // title
                wrapItemAndSub = <li>|</li>
                wrapItemAndSub.override.cObject = COA
                wrapItemAndSub.override.cObject {
                    if {
                        value = 4
                        equals.field = doktype
                        isTrue = 1
                        isTrue.if {
                            value.data = TSFE:page|uid
                            equals.field = shortcut
                        }
                    }

                    10 = TEXT
                    10.value = <li class="active">|</li>
                }
            }
            ACT < .NO
            ACT {
                wrapItemAndSub = <li class="active">|</li>
            }
            CUR < .ACT
        }
        2 < .1
        2 {
            wrap = <ul>|</ul>
        }
        3 < .2
    }
}

lib.contentCol1 = CONTENT
lib.contentCol1 < styles.content.get
lib.contentCol1 {
table = tt_content
select {
  where = colPos = 20
  orderBy  = sorting
  languageField = sys_language_uid
  }
}
lib.contentCol2 = CONTENT
lib.contentCol2 < styles.content.get
lib.contentCol2 {
table = tt_content
select {
  where = colPos = 21
  orderBy  = sorting
  languageField = sys_language_uid
  }
}
lib.contentCol3 = CONTENT
lib.contentCol3 < styles.content.get
lib.contentCol3 {
table = tt_content
select {
  where = colPos = 22
  orderBy  = sorting
  languageField = sys_language_uid
  }
}

lib.contentCol4 = CONTENT
lib.contentCol4 < styles.content.get
lib.contentCol4 {
table = tt_content
select {
  where = colPos = 23
  orderBy  = sorting
  languageField = sys_language_uid
  }
}

page = PAGE
page.10 = FLUIDTEMPLATE

page.10.file.stdWrap.cObject = CASE
page.10.file.stdWrap.cObject {

key.data = levelfield:-1, backend_layout_next_level, slide
key.override.field = backend_layout

default = TEXT
default.value = fileadmin/saws_4col.html

1 = TEXT
1.value = fileadmin/saws_4col.html

3 = TEXT
3.value = fileadmin/saws_2col.html

2= TEXT
2.value = fileadmin/saws_3col.html

}

page.10.variables {
contentCol1 < lib.contentCol1
contentCol2 < lib.contentCol2
contentCol3 < lib.contentCol3
contentCol4 < lib.contentCol4

}

lib.langMenu = HMENU
lib.langMenu {

   special = language
   special.value = 0,1,2,3
   special.normalWhenNoLanguage = 1
   wrap = |
   1 = TMENU
   1 {
     NO = 1
     NO {
       doNotLinkIt = 1
       stdWrap.override = Default || Deutsch || Englisch || Japanisch
       linkWrap = <li>|</li>
       stdWrap.typolink.parameter.data = page:uid
       stdWrap.typolink.addQueryString = 1
       stdWrap.typolink.addQueryString.method = GET
       stdWrap.typolink.additionalParams = &L=0 || &L=1 || &L=2 || &L=3
           
     }
     ACT <.NO
     ACT.linkWrap = <li class="active">|</li>
   
   }
}

lib.mainMenu = HMENU
lib.mainMenu {
  entryLevel = 0

  1 = TMENU
  1 {
    
    wrap = <ul class="navi">|</ul>
    NO {
     wrapItemAndSub = <li>|</li>
     expAll = 1
     linkWrap = |&nbsp;
      }
     ACT <.NO
     ACT = 1
     ACT.ATagParams = class="active"
     ACT.wrapItemAndSub = <li class="current">|</li>
    
    CUR = <.NO
    CUR.wrapItemAndSub = <li class="current">|</li>
   }
  
   2 <.1
   2.ACT.wrapItemAndSub = <li class="current level2">|</li>
   2.CUR.wrapItemAndSub = <li class="current level2">|</li>
   2.NO.wrapItemAndSub = <li class="inactive">|</li>
   3 <.1
   3.ACT.wrapItemAndSub = <li class="current level3">|</li>
   3.CUR.wrapItemAndSub = <li class="current level3">|</li>
   3.NO.wrapItemAndSub = <li class="inactive">|</li>
   4 <.1
   5 <.1
  
  }

page {
  
    includeCSS {
        # bootstrap will be included in the themes.less file
        # for standalone usage just uncomment the following line
        # bootstrap = EXT:bootstrap_package/Resources/Public/Less/Bootstrap/bootstrap.less
        theme = EXT:bootstrap_package/Resources/Public/Less/Theme/theme.less
    }

    includeJSLibs {
        modernizr = {$page.includePath.javascript}Libs/modernizr-2.8.3.min.js
        modernizr.forceOnTop = 1
        wpfix = {$page.includePath.javascript}Libs/windowsphone-viewportfix.min.js
    }

    includeJSFooterlibs {
        jquery = {$page.includePath.javascript}Libs/jquery.min.js
        jquery.forceOnTop = 1
        bootstrap = {$page.includePath.javascript}Libs/bootstrap.min.js
        responsiveimages = {$page.includePath.javascript}Libs/jquery.responsiveimages.min.js

        #### Add swipe support for boostrap components
        hammerjs = {$page.includePath.javascript}Libs/hammer.min.js
        bootstrap_swipe = {$page.includePath.javascript}Libs/bootstrap.swipe.min.js
        #### Basic lightbox implementation for bootstrap
        bootstrap_lightbox = {$page.includePath.javascript}Libs/bootstrap.lightbox.min.js
        #### Toggle collapsed CSS class on the navbar toggle button
        bootstrap_navbartoggle = {$page.includePath.javascript}Libs/bootstrap.navbartoggle.min.js

        ##################################################################
        #### INCLUDE JS FOR IE DINOSAURS                              ####
        #### NOTE : add conditional comment to cope with static cache ####
        ##################################################################
        #### selectivizr to add css pseudo class selectors
        selectivizr = {$page.includePath.javascript}Libs/selectivizr.min.js
        selectivizr.allWrap = <!--[if IE 8 ]>|<![endif]-->
        selectivizr.excludeFromConcatenation = 1
        selectivizr.disableCompression = 1
        #### respond to add media query support
        respond = {$page.includePath.javascript}Libs/respond.min.js
        respond.allWrap = <!--[if IE 8 ]>|<![endif]-->
        respond.excludeFromConcatenation = 1
        respond.disableCompression = 1
    }
  
    stylesheet = fileadmin/saws.css
  
  }

 

Was this article helpful?
How can we improve this article?
Please submit the reason for your vote so that we can improve the article.
Table of Contents