<?php
//if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
/*****************************************************************************
 * The contents of this file are subject to the RECIPROCAL PUBLIC LICENSE
 * Version 1.1 ("License"); You may not use this file except in compliance
 * with the License. You may obtain a copy of the License at
 * http://opensource.org/licenses/rpl.php. Software distributed under the
 * License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND,
 * either express or implied.
 *
 * You may:
 * a) Use and distribute this code exactly as you received without payment or
 *    a royalty or other fee.
 * b) Create extensions for this code, provided that you make the extensions
 *    publicly available and document your modifications clearly.
 * c) Charge for a fee for warranty or support or for accepting liability
 *    obligations for your customers.
 *
 * You may NOT:
 * a) Charge for the use of the original code or extensions, including in
 *    electronic distribution models, such as ASP (Application Service
 *    Provider).
 * b) Charge for the original source code or your extensions other than a
 *    nominal fee to cover distribution costs where such distribution
 *    involves PHYSICAL media.
 * c) Modify or delete any pre-existing copyright notices, change notices,
 *    or License text in the Licensed Software
 * d) Assert any patent claims against the Licensor or Contributors, or
 *    which would in any way restrict the ability of any third party to use the
 *    Licensed Software.
 *
 * You must:
 * a) Document any modifications you make to this code including the nature of
 *    the change, the authors of the change, and the date of the change.
 * b) Make the source code for any extensions you deploy available via an
 *    Electronic Distribution Mechanism such as FTP or HTTP download.
 * c) Notify the licensor of the availability of source code to your extensions
 *    and include instructions on how to acquire the source code and updates.
 * d) Grant Licensor a world-wide, non-exclusive, royalty-free license to use,
 *    reproduce, perform, modify, sublicense, and distribute your extensions.
 *
 * The Original Code is: CommuniCore
 *                       Olavo Farias
 *                       2006-04-7 olavo.farias@gmail.com
 *
 * The Initial Developer of the Original Code is CommuniCore.
 * Portions created by CommuniCore are Copyright (C) 2005 CommuniCore Ltda
 * All Rights Reserved.
 ********************************************************************************/
$dictionary['EcmCommune'] = array(

'table'             => 'ecmcommunes',    
'comment'           => 'EcmCommunes',
'duplicate_merge'   =>  true,
'unified_search'    =>  true,

'fields' => array (

//STANDARD FIELDS SECTION
    'id' => array (
      'name' => 'id',
      'vname' => 'LBL_ID',
      'type' => 'id',
      'required' => true,
	  'len' => 36,
      'reportable' => false,
      'comment' => 'Unique identifier'
    ),
    'name' => array (
      'name' => 'name',
      'vname' => 'LBL_NAME',
      'type' => 'name',
      'required' => true,
      'dbType' => 'varchar',
      'len' => 255,
      'unified_search' => true,
      'comment' => 'The short description of the record contents',
      'massupdate' => true,
      'merge_filter' => 'selected',
    ),
	/*
    'description' => array (
      'type' => 'text',
      'name' => 'description',
      'vname' => 'LBL_DESCRIPTION',
      'comment' => 'Description',
    ),
	*/
    'date_entered' => array (
      'name' => 'date_entered',
      'vname' => 'LBL_DATE_ENTERED',
      'type' => 'datetime',
      'required' => true,
      'comment' => 'Date record created'
    ),
    'date_modified' => array (
      'name' => 'date_modified',
      'vname' => 'LBL_DATE_MODIFIED',
      'type' => 'datetime',
      'required' => true,
      'comment' => 'Date record last modified'
    ),
    'modified_user_id' => array (
      'name' => 'modified_user_id',
      'rname' => 'user_name',
      'id_name' => 'modified_user_id',
      'vname' => 'LBL_MODIFIED',
      'type' => 'assigned_user_name',
      'table' => 'modified_user_id_users',
      'isnull' => 'false',
      'dbType' => 'varchar',
      'len' => 36,
      'required' => true,
      'reportable' => true,
      'comment' => 'User who last modified record'
    ),
    'assigned_user_id' => array (
      'name' => 'assigned_user_id',
      'rname' => 'user_name',
      'id_name' => 'assigned_user_id',
      'vname' => 'LBL_ASSIGNED_TO_ID',
      'group' => 'assigned_user_name',
      'type' => 'relate',
      'table' => 'users',
      'reportable' => true,
      'Importable' => false,
      'isnull' => 'false',
      'dbType' => 'id',
      'audited' => true,
      'comment' => 'User ID assigned to record',
      'duplicate_merge' => 'disabled',
    ),
    'assigned_user_name' => array (
      'name' => 'assigned_user_name',
      'vname' => 'LBL_ASSIGNED_TO',
      'type' => 'relate',
      'reportable' => false,
      'source' => 'non-db',
      'table' => 'users',
      'id_name' => 'assigned_user_id',
      'module' => 'Users',
      'duplicate_merge' => 'disabled',
    ),
    'created_by' => array (
      'name' => 'created_by',
      'rname' => 'user_name',
      'id_name' => 'created_by',
      'vname' => 'LBL_CREATED',
      'type' => 'assigned_user_name',
      'table' => 'created_by_users',
      'isnull' => 'false',
      'dbType' => 'varchar',
      'len' => 36,
      'comment' => 'User that created the record'
    ),
    'created_by_link' => array (
      'name' => 'created_by_link',
      'type' => 'link',
      'relationship' => 'ecmquestions'.'_created_by',
      'vname' => 'LBL_CREATED_BY_USER',
      'link_type' => 'one',
      'module' => 'Users',
      'bean_name' => 'User',
      'source' => 'non-db',
    ),
    'modified_user_link' => array (
      'name' => 'modified_user_link',
      'type' => 'link',
      'relationship' => 'ecmquestions'.'_modified_user',
      'vname' => 'LBL_MODIFIED_BY_USER',
      'link_type' => 'one',
      'module' => 'Users',
      'bean_name' => 'User',
      'source' => 'non-db',
    ),
    'assigned_user_link' => array (
      'name' => 'assigned_user_link',
      'type' => 'link',
      'relationship' => 'ecmquestions'.'_assigned_user',
      'vname' => 'LBL_ASSIGNED_TO_USER',
      'link_type' => 'one',
      'module' => 'Users',
      'bean_name' => 'User',
      'source' => 'non-db',
      'duplicate_merge' => 'enabled',
      'rname' => 'user_name',
      'id_name' => 'assigned_user_id',
      'table' => 'users', 
    ),
    'deleted' => array (
      'name' => 'deleted',
      'vname' => 'LBL_DELETED_BY',
      'type' => 'bool',
      'required' => true,
      'reportable' => false,
      'comment' => 'Record deletion indicator'
    ),

	'days' => array (
		'name' => 'days',
		'vname' => 'LBL_DAYS',
		'type' => 'int',
		'len' => 4,
		'required' => true,
	),
	
	'discount' => array (
		'name' => 'discount',
		'vname' => 'LBL_DISCOUNT',
		'type' => 'decimal',
		'len' => '15,2',
		'default' => 0,
		'required' => true,
	), 
	
	'discount_days' => array (
		'name' => 'discount_days',
		'vname' => 'LBL_DISCOUNT_DAYS',
		'type' => 'int',
		'len' => 4,
		'required' => true,
	),	
	
	'payment_method' => array (
		'name' => 'payment_method',
		'vname' => 'LBL_PAYMENT_METHOD',
    	'type' => 'enum',
    	'len' => '25',
    	'options' => 'ecmcommunes_payment_method_dom',
		'required' => true,
	),	
	
	'weight_from' => array (
		'name' => 'weight_from',
		'vname' => 'LBL_WEIGHT_FROM',
		'type' => 'decimal',
		'len' => '15,2',
		'default' => 0,
		'required' => true,
	), 
	
	'weight_to' => array (
		'name' => 'weight_to',
		'vname' => 'LBL_WEIGHT_TO',
		'type' => 'decimal',
		'len' => '15,2',
		'default' => 0,
		'required' => true,
	), 
	
	'price' => array (
		'name' => 'price',
		'vname' => 'LBL_PRICE',
		'type' => 'decimal',
		'len' => '15,2',
		'default' => 0,
		'required' => true,
	), 
	
	'translations' => array (
		'name' => 'translations',
		'vname' => 'LBL_TRANSLATIONS',
		'type' => 'text',
	),
	
//NEW FIELDS SECTION

//FOR SUBPANELS

),

//INDICES SECTION 
'indices' => array (
 array('name' =>'ecmcommunesspk',       'type' =>'primary', 'fields'=>array('id')),
 array('name' =>'idx_ecmcommunes_name', 'type' =>'index',   'fields'=>array('name'))
)

//RELATIONSHIPS SECTION 
, 'relationships' => array (
     'ecmcommunes_assigned_user' => array(
       'lhs_module'=> 'Users',
	   'lhs_table'=> 'users',
	   'lhs_key' => 'id',
       'rhs_module'=> 'EcmCommunes',
	   'rhs_table'=> 'ecmcommunes',
	   'rhs_key' => 'assigned_user_id',
       'relationship_type'=>'one-to-many'
	   )
  
    ,'ecmcommunes_modified_user' => array(
       'lhs_module'=> 'Users',
	   'lhs_table'=> 'users',
	   'lhs_key' => 'id',
       'rhs_module'=> 'EcmCommunes',
	   'rhs_table'=> 'ecmcommunes'
	   , 'rhs_key' => 'modified_user_id',
       'relationship_type'=>'one-to-many')
  
    ,'ecmcommunes_created_by' => array(
       'lhs_module'=> 'Users',
	   'lhs_table'=> 'users',
	   'lhs_key' => 'id',
       'rhs_module'=> 'EcmCommunes',
	   'rhs_table'=> 'ecmcommunes',
	   'rhs_key' => 'created_by',
       'relationship_type'=>'one-to-many')

),         
//THIS FLAG ENABLES OPTIMISTIC LOCKING FOR SAVES FROM EDITVIEW
    'optimistic_locking'=>true,                   
);
?>
