Tine2.0

Admins/Install Howto

Installing Tine 2.0 is very easy. Just download the right packages, edit the central configuration file, call setup.php and you are ready for login.

Contents

Preparing the database

Create a database for Tine 2.0. On your mysql system execute the following commands(with your own secret password):

 # mysql
   mysql> CREATE DATABASE  tine20;
   mysql> GRANT ALL PRIVILEGES ON tine20.* TO 'tine20'@'localhost' IDENTIFIED BY 'XXXXXXXX';

Editing the configuration file config.inc.php

Currently we are using the Zend Framework class Zend_Config_Ini, to read the different configuration parameters (for example the database access settings) from the configuration file. This file must be placed in the tine20 folder on your webserver. We provided a sample config file (config.inc.php.dist) that you can use for your own config.inc.php.

The config.inc.php file has the following format:

 <?php
 return array(
# For Developer Modus set:
# 'buildtype' => 'DEVELOPMENT',
   'database' => array(
       'host'  => 'localhost',
       # 'unix_socket' => '/var/run/mysqld/mysqld.sock',
       'dbname' => 'tine20',
       'username' => 'tine20',
       'password' => '********',
       'adapter' => 'pdo_mysql',
       'tableprefix' => 'tine20_'
   ),
   'setupuser' => array(
       'username'      => 'tine20setup',
       'password'      => 'setup' 
   ),
   # 'session.save_path' => '/writeable/path/for/webserver/sessions',
   'logger' => array(
       'filename' => '/var/www/tine20.log',
       'priority' => '7',
       'active' => 1
   ),
   /*
   'login' => array(
       'username'      => 'tine20admin',
       'password'      => 'lars' 
   ),
   'accounts' => array(
       'changepw' => false
   ),
   'pdfexport' => array(
       'fontpath' => '/var/www/tine20/test/unifont.ttf',
       'fontpathbold' => '/var/www/tine20/test/unifont.ttf',
       'fontembed' => true
   ),
   'smtp' => array(
       'hostname' => 'mail.org',
       'ssl' => 'tls',
       'port' => 25
   ),
   'asterisk' => array(
       'managerurl' => 'http://your.asterisk.server:8088/asterisk/mxml',
       'managerusername' => 'manager',
       'managerpassword' => 'password'
   )
   */
 );
 ?>


You can add more config values simply be extending the php array. I'll show more config options (for caching, user registration and more) at the bottom of this page.

Call setup.php

After you have prepared the database and the config.inc.php just point your browser to http://yourwebserver/yourtinepath/setup.php. If everything goes well, you will see a bunch of SQL statements and no error message.

For Tine versions > 2009/02

We now have a new shiny setup tool (available at http://yourwebserver/yourtinepath/setup.php) that requires a login. Just use the credentials from the config.inc.php file (section 'setupuser') to login. You are then able to edit the config file and install, uninstall, or update applications. If you don't have a config file at the beginning of the setup process, the setup tool can create one for you.

Login as admin

After running setup.php you can point your browser to http://yourwebserver/yourtinepath and log into Tine 2.0 using the username "tine20admin" and the password "lars". Later we will improve the setup process to allow you to specify the initial username and password.

User registration (optional)

Note: the user registration is not operational at the moment (August 2009-11-2)

We added the possibility for new users to register themselves. If this option is enabled (in the config.inc.php, more on this later), a new button appears in the login dialog. If you click on this button ("Register"), you have to type in your first- and lastname, email address and username. The dialog will suggest a username, based on the given first- and lastname.

At the end of the registration process an email will be send to the user. In this email he will find his username and password for the tine20 login screen. If the expire option is set (greater than 0), the user has to activate his account by clicking on the link in the email.

Here are the relevant config.inc.php options (with default values):

 'registration' => array(
       'active' => 0,
       'expires' => 0,
       'accountPrimaryGroup' => 'Users',
       'accountStatus' => 'enabled',
       'emailValidation' => 'zend'
 ),
  • active -> is user registration enabled?
  • expires -> 0: account never expires, greater than 0: hours till account is deactivated (it will be enabled again when the email activation is done)
  • accountPrimaryGroup -> primary group name for the new account
  • accountStatus -> enabled/disabled
  • emailValidation -> zend/none/[regexp]?

Caching (optional)

If you want to use the caching functionality, you have to add these lines to your config.inc.php:

 'caching' => array(
       'active' => 1,
       'lifetime' => 3600,
       'backend' => 'File',
       'path' => '/tmp',
 ),
// memcached options:
// 'backend' => 'Memcached',
// 'host' => 'localhost',
// 'port' => 11211

LDAP authentication

Here is a ldap config setting example (it allows to get users and groups from LDAP):

'authentication' => array(
       'backend' => 'ldap',
       'ldap' => array(
         'host' => 'ldap.host.net',
         'username' => "cn=_yourbindcn_",
         'password' => '*****',
         'bindRequiresDn' => true,
         'baseDn' => "_yourbasedn_",
         'accountCanonicalForm' => 2
       ),
   ),
   'accounts' => array(
       'backend' => 'ldap',
       'ldap' => array(
         'host' =>'ldap.host.net',
         'username' => "cn=_yourbindcn_",
         'password' => '*****',
         'bindRequiresDn' => true,
         'userDn' => "_youruserdn_",
         'groupsDn' => "_yourgroupdn_",
        'pwEncType'      => 'SHA',
        //'useRfc2307bis'  => true,
        'minUserId'      => 10000,
        'maxUserId'      => 29999,
        'minGroupId'     => 11000,
        'maxGroupId'     => 11099,
       ),
   ),?>

Felamimail Email default account settings

'imap' => 
 array (
   'host' => 'mail.server.net',
   'user' => 'username',
   'password' => 'password',
   'port' => 143,
   'useAsDefault' => true,
   'name' => 'default',
   'secure_connection' => 'tls',
 ),

If you want to use the Tine 2.0 user credentials for the imap/smtp authentication as well, set the Felamimail preference 'User Email Account' to 'true'. In this case you can omit the user/password/useAsDefault options.

Tine updates

Have a look at the FAQ: http://www.tine20.org/wiki/index.php/FAQ#How_do_I_update_my_Tine_2.0_installation.3F

Short Video Tutorial for XAMPP & Tine20 on Windows (in German)

http://www.jetzt-ansehen.de/tutorials/xampp_tine20_install.htm

Short Video Tutorial for Tine 2.0 ActiveSync installation (in German)

http://www.jetzt-ansehen.de/tutorials/tine20-activesync-installation.htm