<?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['EcmDocumentTemplate'] = array (

  'table'             => 'ecmdocumenttemplates',    
  //'audited'           =>  true, 
  'comment'           => 'EcmDocumentTemplates',
  'duplicate_merge'   =>  true,
  'unified_search'    =>  true,

'fields' => array (
  //STANDARD FIELDS SECTION
  'id' => array (
    'name'              => 'id',
    'vname'             => 'LBL_ID',
    'type'              => 'id',
    'required'          =>  true,
    'reportable'        =>  false,
    'comment'           => 'Unique identifier'
  ),
 'name' => array (
    'name'              => 'name',
    'vname'             => 'LBL_NAME',
    'type'              => 'name',
    'required'          =>  true,
    'dbType'            => 'varchar',
    'len'               =>  255,
    'audited'           =>  true,
    'unified_search'    =>  true,
    'comment'           => 'The short description of the record contents',
    'massupdate'        =>  true,
    'merge_filter'      => 'selected',
  ),
  '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_BY',
    '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_BY',
    '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'      => 'ecmdocumenttemplates_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'      => 'ecmdocumenttemplates_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'      => 'ecmdocumenttemplates_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',
    'type'              => 'bool',
    'required'          =>  true,
    'reportable'        =>  false,
    'comment'           => 'Record deletion indicator'
  ),

  //NEW FIELDS SECTION
  'place_of_register' => array (
    'type'               => 'varchar',
    'name'               => 'place_of_register',
    'vname'              => 'LBL_PLACE_OF_REGISTER',
    'comment'            => 'Place of register',
    'required_option'    => 'true',
    'max_size'           => '255',
    'len'                => '255',
  ),
  
  'logo_path' => array (
    'type'               => 'varchar',
    'name'               => 'logo_path',
    'vname'              => 'LBL_LOGO_PATH',
    'comment'            => 'Logo',
    'required_option'    => 'true',
    'max_size'           => '255',
    'len'                => '255',
  ),
  
  'logo_id' => array (
    'name' => 'logo_id',
    'vname' => 'LBL_LOGO_ID',
    'type' => 'varchar',
    'len' => '255',
  ),
  
  'logo_name' => array (
    'name' => 'logo_name',
    'type' => 'file',
    'dbType' => 'varchar',
    'vname' => 'LBL_LOGO_NAME',
    'len' => '255',
    'max_size' => '255',
  ),
  
  'account_id' => 
  array (
    'name' => 'account_id',
    'type' => 'id',
    'group'=>'account_name',
    'reportable'=>false,
  ), 
  'account_name' => 
  array (
    'name' => 'account_name',
    'rname'=>'name',
    //'db_concat_fields'=> array(0=>'name'),
    //'source' => 'non-db',
    'dbType' => 'varchar',
    'len' => '510',
    'group'=>'account_name',
    'vname' => 'LBL_ACCOUNT_NAME',
    'reportable'=>false,
    'id_name' => 'account_id',
    'join_name' => 'accounts',
    'type' => 'relate',
    'module' => 'Accounts',
    'link'=>'accounts',
  ),
  
  'account_number' => array(
   'type'  => 'varchar',
   'name'  => 'account_number',
   'vname'  => 'LBL_ACCOUNT_NUMBER',
   'comment'  => 'Account Number',
   'required_option'  => 'true',
   'max_size'  => '255',
   'len'  => '255',
  ),
  
  'footer_account' => array(
   'type'  => 'varchar',
   'name'  => 'footer_account',
   'vname'  => 'LBL_FOOTER_ACCOUNT',
   'len'  => '255',
  ),
  
  'footer_address' => array(
   'type'  => 'varchar',
   'name'  => 'footer_address',
   'vname'  => 'LBL_FOOTER_ADDRESS',
   'len'  => '255',
  ),
  
  'footer_phone' => array(
   'type'  => 'varchar',
   'name'  => 'footer_phone',
   'vname'  => 'LBL_FOOTER_PHONE',
   'len'  => '255',
  ),
  
  'footer_fax' => array(
   'type'  => 'varchar',
   'name'  => 'footer_fax',
   'vname'  => 'LBL_FOOTER_FAX',
   'len'  => '255',
  ),
  
  'footer_krs' => array(
   'type'  => 'varchar',
   'name'  => 'footer_krs',
   'vname'  => 'LBL_FOOTER_KRS',
   'len'  => '255',
  ),
  
  'footer_nip' => array(
   'type'  => 'varchar',
   'name'  => 'footer_nip',
   'vname'  => 'LBL_FOOTER_NIP',
   'len'  => '255',
  ),
  
  'footer_regon' => array(
   'type'  => 'varchar',
   'name'  => 'footer_regon',
   'vname'  => 'LBL_FOOTER_REGON',
   'len'  => '255',
  ),
  
  'footer_capital' => array(
   'type'  => 'varchar',
   'name'  => 'footer_capital',
   'vname'  => 'LBL_FOOTER_CAPITAL',
   'len'  => '255',
  ),
  
  'footer_management' => array(
   'type'  => 'varchar',
   'name'  => 'footer_management',
   'vname'  => 'LBL_FOOTER_MANAGEMENT',
   'len'  => '255',
  ),

  'footer_swift' => array(
   'type'  => 'varchar',
   'name'  => 'footer_swift',
   'vname'  => 'LBL_FOOTER_SWIFT',
   'len'  => '255',
  ),
  
  'footer_bankname' => array(
   'type'  => 'varchar',
   'name'  => 'footer_bankname',
   'vname'  => 'LBL_FOOTER_BANKNAME',
   'len'  => '255',
  ),

  'footer_vatid' => array(
   'type'  => 'varchar',
   'name'  => 'footer_vatid',
   'vname'  => 'LBL_FOOTER_VATID',
   'len'  => '255',
  ),
  
  'document_number_format_id' => array (
    'name' => 'document_number_format_id',
    'vname' => 'LBL_DOCUMENT_NUMBER_FORMAT_ID',
    'required' => true,
    'type' => 'enum',
    'options' => 'ecmdocumenttemplates_document_number_format_dom',
    'default' => 'YMDNR',
  ),
  
  'documents_per_day_id' => array (
    'name' => 'documents_per_day_id',
    'vname' => 'LBL_DOCUMENTS_PER_DAY_ID',
    'required' => true,
    'type' => 'enum',
    'options' => 'ecmdocumenttemplates_documents_per_day_dom',
    'default' => '3',
  ),
  
	'ecmlanguage' => array(
		'name' => 'ecmlanguage',
		'vname' => 'LBL_ECMLANGUAGE',
		'type' => 'enum',
		'options' => 'ecmlanguages_dom',
		'required' => true,
		'len' => 35,
		'massupdate' => false,
	),
/*
  'document_number_letter' => array(
   'type'  => 'varchar',
   'name'  => 'document_number_letter',
   'vname'  => 'LBL_DOCUMENT_NUMBER_LETTER',
   'len'  => '1',
   'default' => 'F',
   'required' => true,
  ), 

  'correct_number_letter' => array(
   'type'  => 'varchar',
   'name'  => 'correct_number_letter',
   'vname'  => 'LBL_CORRECT_NUMBER_LETTER',
   'len'  => '1',
   'default' => 'K',
   'required' => true,
  ), 
*/  
  'documents_per' => array (
  	'type' => 'enum',
	'name' => 'documents_per',
	'options' => 'ecmdocumenttemplates_documents_per',
	'vname' => 'LBL_DOCUMENTS_PER',
	'default' => 'day',
	'required' => true,
  ),
  
  'footer_text' => array(
    'name' => 'footer_text',
    'vname' => 'LBL_FOOTER_TEXT',
    'type' => 'text',
  ),

  'header_text' => array(
    'name' => 'header_text',
    'vname' => 'LBL_HEADER_TEXT',
    'type' => 'text',
  ),

	'show_header_on_all_pages' => array (
		'massupdate' => false,
		'name' => 'show_header_on_all_pages',
		'vname' => 'LBL_SHOW_HEADER_ON_ALL_PAGES',
		'type' => 'bool',
		'default' => '0',
	),
	
	'show_footer_on_all_pages' => array (
		'massupdate' => false,
		'name' => 'show_footer_on_all_pages',
		'vname' => 'LBL_SHOW_FOOTER_ON_ALL_PAGES',
		'type' => 'bool',
		'default' => '0',
	),

	'change_all_old_records' => array (
		'massupdate' => false,
		'name' => 'change_all_old_records',
		'vname' => 'LBL_CHANGE_ALL_OLD_RECORDS',
		'type' => 'bool',
		'source' => 'non-db',
		'default' => '0',
	),
	'template_files_defs' => array(
		'name' => 'template_files_defs',
		'vname' => 'LBL_TEMPLATE_FILES_DEFS',
		'type' => 'text',
	),

//FOR SUBPANELS


),

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

//RELATIONSHIPS SECTION 
, 'relationships' => array (
     'ecmdocumenttemplates_assigned_user' => array(
       'lhs_module'=> 'Users',           'lhs_table'=> 'users',                  'lhs_key' => 'id',
       'rhs_module'=> 'EcmDocumentTemplates', 'rhs_table'=> 'ecmdocumenttemplates', 'rhs_key' => 'assigned_user_id',
       'relationship_type'=>'one-to-many')
  
    ,'ecmdocumenttemplates_modified_user' => array(
       'lhs_module'=> 'Users',           'lhs_table'=> 'users',                  'lhs_key' => 'id',
       'rhs_module'=> 'EcmDocumentTemplates', 'rhs_table'=> 'ecmdocumenttemplates', 'rhs_key' => 'modified_user_id',
       'relationship_type'=>'one-to-many')
  
    ,'ecmdocumenttemplates_created_by' => array(
       'lhs_module'=> 'Users',           'lhs_table'=> 'users',                  'lhs_key' => 'id',
       'rhs_module'=> 'EcmDocumentTemplates', 'rhs_table'=> 'ecmdocumenttemplates', 'rhs_key' => 'created_by',
       'relationship_type'=>'one-to-many')

),         

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

);
?>
