<?php

/**
 * BaseAbstractDisplayField
 * 
 * This class has been auto-generated by the Doctrine ORM Framework
 * 
 * @property int                   $reportGroupId                               Type: integer
 * @property string                $name                                        Type: string(255)
 * @property string                $label                                       Type: string(255)
 * @property string                $fieldAlias                                  Type: string(255)
 * @property string                $isSortable                                  Type: string(10)
 * @property string                $sortOrder                                   Type: string(255)
 * @property string                $sortField                                   Type: string(255)
 * @property string                $elementType                                 Type: string(255)
 * @property string                $elementProperty                             Type: string(1000)
 * @property string                $width                                       Type: string(255)
 * @property string                $isExportable                                Type: string(10)
 * @property string                $textAlignmentStyle                          Type: string(20)
 * @property bool                  $isValueList                                 Type: boolean
 * @property int                   $display_field_group_id                      Type: integer
 * @property string                $defaultValue                                Type: string(255)
 * @property bool                  $isEncrypted                                 Type: boolean
 * @property bool                  $is_meta                                     Type: boolean
 * @property ReportGroup           $ReportGroup                                 
 * @property DisplayFieldGroup     $DisplayFieldGroup                           
 *  
 * @method int                     getReportgroupid()                           Type: integer
 * @method string                  getName()                                    Type: string(255)
 * @method string                  getLabel()                                   Type: string(255)
 * @method string                  getFieldalias()                              Type: string(255)
 * @method string                  getIssortable()                              Type: string(10)
 * @method string                  getSortorder()                               Type: string(255)
 * @method string                  getSortfield()                               Type: string(255)
 * @method string                  getElementtype()                             Type: string(255)
 * @method string                  getElementproperty()                         Type: string(1000)
 * @method string                  getWidth()                                   Type: string(255)
 * @method string                  getIsexportable()                            Type: string(10)
 * @method string                  getTextalignmentstyle()                      Type: string(20)
 * @method bool                    getIsvaluelist()                             Type: boolean
 * @method int                     getDisplayFieldGroupId()                     Type: integer
 * @method string                  getDefaultvalue()                            Type: string(255)
 * @method bool                    getIsencrypted()                             Type: boolean
 * @method bool                    getIsMeta()                                  Type: boolean
 * @method ReportGroup             getReportGroup()                             
 * @method DisplayFieldGroup       getDisplayFieldGroup()                       
 *  
 * @method AbstractDisplayField    setReportgroupid(int $val)                   Type: integer
 * @method AbstractDisplayField    setName(string $val)                         Type: string(255)
 * @method AbstractDisplayField    setLabel(string $val)                        Type: string(255)
 * @method AbstractDisplayField    setFieldalias(string $val)                   Type: string(255)
 * @method AbstractDisplayField    setIssortable(string $val)                   Type: string(10)
 * @method AbstractDisplayField    setSortorder(string $val)                    Type: string(255)
 * @method AbstractDisplayField    setSortfield(string $val)                    Type: string(255)
 * @method AbstractDisplayField    setElementtype(string $val)                  Type: string(255)
 * @method AbstractDisplayField    setElementproperty(string $val)              Type: string(1000)
 * @method AbstractDisplayField    setWidth(string $val)                        Type: string(255)
 * @method AbstractDisplayField    setIsexportable(string $val)                 Type: string(10)
 * @method AbstractDisplayField    setTextalignmentstyle(string $val)           Type: string(20)
 * @method AbstractDisplayField    setIsvaluelist(bool $val)                    Type: boolean
 * @method AbstractDisplayField    setDisplayFieldGroupId(int $val)             Type: integer
 * @method AbstractDisplayField    setDefaultvalue(string $val)                 Type: string(255)
 * @method AbstractDisplayField    setIsencrypted(bool $val)                    Type: boolean
 * @method AbstractDisplayField    setIsMeta(bool $val)                         Type: boolean
 * @method AbstractDisplayField    setReportGroup(ReportGroup $val)             
 * @method AbstractDisplayField    setDisplayFieldGroup(DisplayFieldGroup $val) 
 *  
 * @package    orangehrm
 * @subpackage model
 * @author     Your name here
 * @version    SVN: $Id: Builder.php 7490 2010-03-29 19:53:27Z jwage $
 */
abstract class BaseAbstractDisplayField extends sfDoctrineRecord
{
    public function setTableDefinition()
    {
        $this->setTableName('abstract_display_field');
        $this->hasColumn('report_group_id as reportGroupId', 'integer', null, array(
             'type' => 'integer',
             'notnull' => true,
             ));
        $this->hasColumn('name', 'string', 255, array(
             'type' => 'string',
             'notnull' => true,
             'length' => 255,
             ));
        $this->hasColumn('label', 'string', 255, array(
             'type' => 'string',
             'notnull' => true,
             'length' => 255,
             ));
        $this->hasColumn('field_alias as fieldAlias', 'string', 255, array(
             'type' => 'string',
             'notnull' => false,
             'length' => 255,
             ));
        $this->hasColumn('is_sortable as isSortable', 'string', 10, array(
             'type' => 'string',
             'notnull' => true,
             'length' => 10,
             ));
        $this->hasColumn('sort_order as sortOrder', 'string', 255, array(
             'type' => 'string',
             'notnull' => false,
             'length' => 255,
             ));
        $this->hasColumn('sort_field as sortField', 'string', 255, array(
             'type' => 'string',
             'notnull' => false,
             'length' => 255,
             ));
        $this->hasColumn('element_type as elementType', 'string', 255, array(
             'type' => 'string',
             'notnull' => true,
             'length' => 255,
             ));
        $this->hasColumn('element_property as elementProperty', 'string', 1000, array(
             'type' => 'string',
             'notnull' => true,
             'length' => 1000,
             ));
        $this->hasColumn('width', 'string', 255, array(
             'type' => 'string',
             'notnull' => true,
             'length' => 255,
             ));
        $this->hasColumn('is_exportable as isExportable', 'string', 10, array(
             'type' => 'string',
             'notnull' => false,
             'length' => 10,
             ));
        $this->hasColumn('text_alignment_style as textAlignmentStyle', 'string', 20, array(
             'type' => 'string',
             'notnull' => false,
             'length' => 20,
             ));
        $this->hasColumn('is_value_list as isValueList', 'boolean', null, array(
             'type' => 'boolean',
             'notnull' => true,
             ));
        $this->hasColumn('display_field_group_id', 'integer', null, array(
             'type' => 'integer',
             'unsigned' => true,
             'notnull' => false,
             ));
        $this->hasColumn('default_value as defaultValue', 'string', 255, array(
             'type' => 'string',
             'notnull' => false,
             'length' => 255,
             ));
        $this->hasColumn('is_encrypted as isEncrypted', 'boolean', null, array(
             'type' => 'boolean',
             'notnull' => true,
             ));
        $this->hasColumn('is_meta', 'boolean', null, array(
             'type' => 'boolean',
             'notnull' => true,
             'default' => false,
             ));
    }

    public function setUp()
    {
        parent::setUp();
        $this->hasOne('ReportGroup', array(
             'local' => 'report_group_id',
             'foreign' => 'reportGroupId',
             'onDelete' => 'cascade'));

        $this->hasOne('DisplayFieldGroup', array(
             'local' => 'display_field_group_id',
             'foreign' => 'id',
             'onDelete' => 'cascade'));
    }
}