Person bundle

This bundle provides the ability to record people in the software. This bundle is required by other bundle.

Entities provided


describe entities provided by person bundle

Search terms

The class ChillPersonBundleSearchPersonSearch provide the search module.


The search upon “person” is provided by default. The @person domain search may be omitted.

  • @person is the domain search for people.


  • firstname : provide the search on firstname. Example : firstname:Depardieu. May match part of the firstname (firsname:dep will match Depardieu)
  • lastname : provide the search on lastname. May match part of the lastname.
  • birthdate : provide the search on the birthdate. Example : birthdate:1996-01-19
  • gender: performs search on man/woman. The accepted values are man or woman.
  • nationality : performs search on nationality. Value must be a country code as described in ISO 3166. Example : nationality:FR.


The default search is performed on firstname and/or lastname. Both are concatened before search. If values are separated by spaces, the clause AND is used : the search dep ge will match ‘Gérard Depardieu` or ‘Jean Depagelles’, but not ‘Charline Depardieu’ (missing ‘Ge’ in word).

Configuration options

Those options are available under chill_person key.

Example of configuration:

      birthdate_not_after: P15Y
      # note: visible is the default config. This key may be omitted if visible is chosen.
      nationality: hidden
      email: hidden
      place_of_birth: visible
      phonenumber: hidden
      country_of_birth: hidden
      marital_status: visible
      spoken_languages: hidden
      address: visible
birthdate_not_after string

The period duration before today during which encoding birthdate is not possible. The period is a string matching the format of ISO_8601, which is also use to build DateInterval classes.

Example: P1D, P18Y

Default value: P1D which means that birthdate before the current day (= yesterday) are allowed.

person_fields array

This define the visibility of some fields. By default, all fields are visible, but you can choose to hide some of them. Available keys are :

  • nationality
  • country_of_birth
  • place_of_birth
  • phonenumber
  • email
  • marital_status
  • spoken_languages
  • address

Possibles values: hidden or visible (all other value will raise an Exception).

Default value : visible, which means that all fields are visible.


      nationality: hidden
      email: hidden
      phonenumber: hidden


If all the field of a “box” are hidden, the whole box does not appears. Example: if the fields phonenumber and email are hidden, the title Contact information will be hidden in the UI.


If you hide multiple fields, for a better integration you may want to override the template, for a better appeareance. See the symfony documentation about this feature.


Sticker for a person

Macro file
Macro envelope

render(p, withLink=false)

p is an instance of ChillPersonBundleEntityPerson

withLink boolean

When to use this macro ?
When you want to represent a person.
Example usage :
{% import "ChillPersonBundle:Person:macro.html.twig" as person_ %}

{{ person_.render(person, true) }}

Layout events and delegated blocks

chill_block.person_post_vertical_menu event

This event is available to add content below of the vertical menu (on the right).

The context is :


Add a list of person on homepage

The bundle provide a way to add a list of accompanyied person on the homepage:

                order: 10
                widget_alias: person_list
                    # customize the number of items
                    number_of_items: 20

                    # only active
                    only_active: true

                    # you can add some filtering class, which will implements
                    # Chill\PersonBundle\PersonListWidget\PersonFilteringInterface
                    filtering_class: "\Hepc\HomepagePersonFiltering"

                    # when the view is overriden, you can add some custom fields
                    # to the view
                    custom_fields: [school-2fb5440e-192c-11e6-b2fd-74d02b0c9b55]