Newland:
  Toubiz:
    Poi:
      Neos:
        filter:
          articleType:
            2:
              combine: 'AND'

              join:
                - column: 'entity.categories'
                  alias: 'categories'
                - column: 'entity.mainAddress'
                  alias: 'mainAddress'
                - column: 'entity.cities'
                  alias: 'cities'

              children:
                categories:
                  type: 'section'
                  combine: 'AND'
                  title:
                    id: 'section.categories'
                    source: 'Views/Filter'
                    package: 'Newland.Toubiz.Poi.Neos'
                  children:
                    categories:
                      type: 'checkbox_list'
                      combine: 'OR'
                      title:
                        id: 'group.categories'
                        source: 'Views/Filter'
                        package: 'Newland.Toubiz.Poi.Neos'
                      databaseColumn: 'categories'
                      queryString: 'categories'
                      dataSource: 'newland-toubiz-poi-neos-categories'
                      dataSourceArguments:
                        articleType: 2
                      override:
                        property: preselectedCategories
                        behaviour: 'limit_selectable'
                      searchBoxDisplayLimit: 15

                locations:
                  type: 'section'
                  combine: 'AND'
                  title:
                    id: 'section.cities'
                    source: 'Views/Filter'
                    package: 'Newland.Toubiz.Poi.Neos'
                  children:
                    cities:
                      type: 'Newland\Toubiz\Poi\Neos\Filter\Items\CityList'
                      combine: 'OR'
                      title:
                        id: 'group.tour.startingPoint'
                        source: 'Views/Filter'
                        package: 'Newland.Toubiz.Poi.Neos'
                      databaseColumn: 'cities.Persistence_Object_Identifier'
                      queryString: 'city'
                      dataSource: 'newland-toubiz-poi-neos-pois'
                      dataSourceArguments:
                        mainType: 6
                      override:
                        property: preselectedCities
                        behaviour: 'limit_selectable'
                      searchBoxDisplayLimit: 15
                    regions:
                      type: '\Newland\Toubiz\Poi\Neos\Filter\Items\RegionList'
                      combine: 'OR'
                      title:
                        id: 'group.regions'
                        source: 'Views/Filter'
                        package: 'Newland.Toubiz.Poi.Neos'
                      databaseColumn: 'mainAddress.zip'
                      queryString: 'region'
                      dataSource: 'newland-toubiz-poi-neos-regions'
                      override:
                        property: regions
                        behaviour: 'limit_selectable'
                      searchBoxDisplayLimit: 15

                properties:
                  type: 'section'
                  combine: 'AND'
                  title:
                    id: 'section.properties'
                    source: 'Views/Filter'
                    package: 'Newland.Toubiz.Poi.Neos'
                  children:
                    tourType:
                      type: 'attribute_checkbox_list'
                      combine: 'OR'
                      queryString: 'tourType'
                      databaseColumn: "entity.Persistence_Object_Identifier"
                      title:
                        id: 'group.typeOfTours'
                        source: 'Views/Filter'
                        package: 'Newland.Toubiz.Poi.Neos'
                      dataSource: 'newland-neosfiltering-direct'
                      dataSourceArguments:
                        filterGroup: typesOfTourAll
                      override:
                        property: preselectedProperties
                        behaviour: 'preselect'
                      searchBoxDisplayLimit: 15
                    properties:
                      type: 'attribute_checkbox_list'
                      combine: 'OR'
                      queryString: 'properties'
                      databaseColumn: "entity.Persistence_Object_Identifier"
                      title:
                        id: 'group.properties'
                        source: 'Views/Filter'
                        package: 'Newland.Toubiz.Poi.Neos'
                      dataSource: 'newland-neosfiltering-direct'
                      dataSourceArguments:
                        filterGroup: properties
                      override:
                        property: preselectedProperties
                        behaviour: 'preselect'
                      searchBoxDisplayLimit: 15

                difficulty:
                  type: 'section'
                  combine: 'AND'
                  title:
                    id: 'section.difficulty'
                    source: 'Views/Filter'
                    package: 'Newland.Toubiz.Poi.Neos'
                  children:
                    difficultyRating:
                      type: 'attribute_checkbox_list'
                      combine: 'OR'
                      queryString: 'difficultyRating'
                      databaseColumn: "entity.Persistence_Object_Identifier"
                      title:
                        id: 'group.difficulty'
                        source: 'Views/Filter'
                        package: 'Newland.Toubiz.Poi.Neos'
                      dataSource: 'newland-neosfiltering-direct'
                      dataSourceArguments:
                        filterGroup: difficulty
                      override:
                        property: preselectedProperties
                        behaviour: 'preselect'
                      searchBoxDisplayLimit: 15

                    ascentElevation:
                      type: 'attribute_range'
                      queryString: 'ascentElevation'
                      databaseColumn: 'entity.Persistence_Object_Identifier'
                      title:
                        id: 'group.tour.elevation'
                        source: 'Views/Filter'
                        package: 'Newland.Toubiz.Poi.Neos'
                      attributeName: 'ascentElevation'
                      rangeSource: 'Newland\Toubiz\Poi\Neos\Filter\AttributeRangeSource'
                      rangeSourceArguments:
                        articleType: 2
                        name: 'ascentElevation'
                      unit: 'm'

                    tourLength:
                      type: 'attribute_range'
                      queryString: 'length'
                      databaseColumn: 'entity.Persistence_Object_Identifier'
                      title:
                        id: 'group.tour.distance'
                        source: 'Views/Filter'
                        package: 'Newland.Toubiz.Poi.Neos'
                      attributeName: 'tourLength'
                      rangeSource: 'Newland\Toubiz\Poi\Neos\Filter\AttributeRangeSource'
                      rangeSourceArguments:
                        articleType: 2
                        name: 'tourLength'
                      unit: 'km'
                      steps: 0.1
                      factor: 0.001

                    tourDuration:
                      type: 'attribute_range'
                      queryString: 'duration'
                      databaseColumn: 'entity.Persistence_Object_Identifier'
                      title:
                        id: 'group.tour.duration'
                        source: 'Views/Filter'
                        package: 'Newland.Toubiz.Poi.Neos'
                      attributeName: 'tourDuration'
                      rangeSource: 'Newland\Toubiz\Poi\Neos\Filter\AttributeRangeSource'
                      rangeSourceArguments:
                        articleType: 2
                        name: 'tourDuration'
                      unit: h
                      factor: 0.01667

                pagination:
                  type: 'pagination_input'
                  queryString: 'page'
                  defaultState: 1
                  attributes:
                    'data-toubiz-results-list.page': ''
