Caution: This documentation is for eZ Publish legacy, from version 3.x to 5.x.
For 5.x documentation covering Platform see eZ Documentation Center, for difference between legacy and Platform see 5.x Architecture overview.


  1. Install eZ Publish 4.2 or higher.
  2. Install eZ Teamroom by downloading the package.
  3. Unpack the file in the extension directory of your eZ Publish installation. The extension directory should now at a minimum contain ezteamroom, ezlightbox, ezxmlinstaller, ezjscore and ezevent. It is optional to add eZ Multiupload, but this must be installed separately.
  4. Before installing eZ Teamroom, know that eZ Teamroom might modify some content classes in the existing eZ Publish installation. By default these are the following classes:
    • image
    • quicktime
    • real_video
    • window_media
    • user

      If these classes do not already exist, they will be created automatically. Depending on your eZ Publish installation you can do one of the following things:

      • When using eZ Teamroom as an addition to the eZ Website Interface extension:

      By default a separate set of eZ Teamroom classes will be created. But if you prefer to use the existing Website Interface classes you should modify the following template:



      The definition of the content classes that will be created or modified by the eZ Teamroom installation should be adjusted in this template by removing the "teamroom_"-prefix. For example:

      <ContentClass isContainer="false" identifier="teamroom_image"

      should be changed to

      <ContentClass isContainer="false" identifier="image"

      In a similar way, you should modify the ClassIdentifiersMap[] setting in extension/ezteamroom/settings/teamroom.ini.append.php. For example:


      should be changed to



      • When using eZ Teamroom as an addition to an existing custom installation:

      It is possible to install eZ Teamroom on an existing eZ Publish installation, because the extension creates its own set of content classes by default. However, if you would like eZ Teamroom to use existing content classes available in your installation, follow the steps described above for the eZ Webin Interface.

  5. Next enable the eZ Teamroom extension in your eZ Publish installation. In settings/override/site. ini add the following parameters to the [ExtensionSettings] section:


    When using the eZ Website Interface be sure to add the eZ Teamroom extensions before ezwebin in this setting, in order to use the correct templates for all extensions.

  6. In order to have the top menu in the eZ Teamroom extension displayed, merge the "TopIdentifierList" settings in the following file:


    with the ones here:

  7. Regenerate autoloads by running the script:
    php bin/php/ezpgenerateautoloads.php -e
    It is also possible to update the autoloads from the Admin Interface. In the Setup tab, click on the Extensions link in the menu on the left. In the list displayed check the added extensions (ezteamroom, ezevent, ezlightbox, ezxmlinstaller, ezjscore) and press the Regenerate autoload arrays for extensions button.
  8. Make sure you do not already have a siteaccess with the name 'ezteamroom'.
  9. You will also need to import the ezlightbox and the ezevent database tables. You will find them in:
    You can add the tables by running the following command from the root of your eZ Publish directory:
    mysql -u <user> -p <database_name> < extension/ezlightbox/sql/<database>/schema.sql
    Do the same for the eZ Event database table
    Note: Replace the placeholders <USERNAME>, <HOSTNAME> and <DATABASENAME> with the username of your database, the hostname which the MySQL database is running on and the name of the database used by eZ Publish.
    For more information please visit the eZ Event and eZ Lightbox documentation.
  10. Finally, clear the template override cache with the following command:

    php bin/php/ezcache.php --clear-id=template-override

    Or if you prefer, this can be done from the administrator interface. In the Setup tab, click on the Cache Management link in the menu on the right.

  11. To finish the eZ Teamroom installation simply run this command in your eZ publish root directory:

    php extension/ezxmlinstaller/bin/php/xmlinstaller.php --template=teamroom/installezteamroom --siteaccess=<SITEACCESS_NAME>

    Note: Replace the placeholder <SITEACCESS_NAME> with the name of the existing siteaccess that should be used for the installation of eZ Teamroom (this is not called "ezteamroom").
    Also make sure that the site. ini that is active for the selected siteaccess, has correct [DatabaseSettings] settings.

    IMPORTANT Note: Some translations (for example the name of eZ Publish roles) depend on the language and locale settings that are configured in the selected siteaccess. This means if the siteaccess chosen for the installation of eZ Teamroom has English as the primary language, those elements of eZ Teamroom will also be created in this language.If you want to know in detail what will be done when running this script, please read this file


Note regarding Teamroom roles:

Installing eZ Teamroom will also add the following 18 new roles:

  • Teamroom Member
  • Teamroom Moderator
  • Teamroom Read Blog
  • Teamroom Read Calendar
  • Teamroom Read Documents
  • Teamroom Read Forum
  • Teamroom Read Milestones
  • Teamroom Read Tasks
  • Teamroom Read Wiki
  • Teamroom Use Blog
  • Teamroom Use Calendar
  • Teamroom Use Documents
  • Teamroom Use Forum
  • Teamroom Use Milestones
  • Teamroom Use Tasks
  • Teamroom Use Wiki
  • Use Lightbox
  • Use Teamroom

For more information about the policies assigned to these roles, please visit your Administrator Interface and from the User accounts or Setup tab click the Roles and policies link in the menu on the left. Here you can view all your roles and add ones when needed.

Ester Heylen (26/02/2010 2:12 pm)

Ester Heylen (18/05/2010 9:20 am)


  • Wrong names for table installation scripts

    The names of the table installation scripts for ezlightbox and ezevent are schema.sql not as above. So:


    should be:


    and the command for installing the ezlightbox tables should be:

    mysql -u <user> -p <database_name> < extension/ezlightbox/sql/<database>/schema.sql


    mysql -u <user> -p <database_name> < extension/ezlightbox/sql/<database>/lightbox.sql

  • obsolete information ?

    I did not find
    <ContentClass isContainer="false" identifier="teamroom_image"

    as said in step 4 ( for an ezwebin installation )

    is this information obsolete ?
  • Command

    How do I run this command
    "php extension/ezxmlinstaller/bin/php/xmlinstaller.php --template=teamroom/installezteamroom --siteaccess=<SITEACCESS_NAME>"