oxerptype_category.php

Go to the documentation of this file.
00001 <?php
00002 
00003 require_once 'oxerptype.php';
00004 
00008 class oxERPType_Category extends oxERPType
00009 {
00014     protected $_aFieldListVersions = array(
00015         '1' => array(
00016             'OXID'           => 'OXID',
00017             'OXPARENTID'     => 'OXPARENTID',
00018             'OXORDER'        => 'OXORDER',
00019             'OXACTIV'        => 'OXACTIV',
00020             'OXHIDDEN'       => 'OXHIDDEN',
00021             'OXSHOPID'       => 'OXSHOPID',
00022             'OXSHOPINCL'     => 'OXSHOPINCL',
00023             'OXSHOPEXCL'     => 'OXSHOPEXCL',
00024             'OXTITLE'        => 'OXTITLE',
00025             'OXDESC'         => 'OXDESC',
00026             'OXLONGDESC'     => 'OXLONGDESC',
00027             'OXTHUMB'        => 'OXTHUMB',
00028             'OXEXTLINK'      => 'OXEXTLINK',
00029             'OXTEMPLATE'     => 'OXTEMPLATE',
00030             'OXDEFSORT'      => 'OXDEFSORT',
00031             'OXDEFSORTMODE'  => 'OXDEFSORTMODE',
00032             'OXICON'         => 'OXICON',
00033             'OXSKIPDISCOUNTS'=> 'OXSKIPDISCOUNTS',
00034             'OXACTIV_1'      => 'OXACTIV_1',
00035             'OXTITLE_1'      => 'OXTITLE_1',
00036             'OXDESC_1'       => 'OXDESC_1',
00037             'OXLONGDESC_1'   => 'OXLONGDESC_1',
00038             'OXACTIV_2'      => 'OXACTIV_2',
00039             'OXTITLE_2'      => 'OXTITLE_2',
00040             'OXDESC_2'       => 'OXDESC_2',
00041             'OXLONGDESC_2'   => 'OXLONGDESC_2',
00042             'OXACTIV_3'      => 'OXACTIV_3',
00043             'OXTITLE_3'      => 'OXTITLE_3',
00044             'OXDESC_3'       => 'OXDESC_3',
00045             'OXLONGDESC_3'   => 'OXLONGDESC_3',
00046             'OXPRICEFROM'    => 'OXPRICEFROM',
00047             'OXPRICETO'      => 'OXPRICETO',
00048             'OXTYPE'         => 'OXTYPE',
00049             'OXSEOID'        => 'OXSEOID',
00050             'OXSEOID_1'      => 'OXSEOID_1',
00051             'OXSEOID_2'      => 'OXSEOID_2',
00052             'OXSEOID_3'      => 'OXSEOID_3'
00053         ),
00054         '2' => array(
00055             'OXID' => 'OXID',
00056             'OXPARENTID' => 'OXPARENTID',
00057             'OXLEFT' => 'OXLEFT',
00058             'OXRIGHT' => 'OXRIGHT',
00059             'OXROOTID' => 'OXROOTID',
00060             'OXSORT' => 'OXSORT',
00061             'OXACTIVE' => 'OXACTIVE',
00062             'OXHIDDEN' => 'OXHIDDEN',
00063             'OXSHOPID' => 'OXSHOPID',
00064             'OXSHOPINCL' => 'OXSHOPINCL',
00065             'OXSHOPEXCL' => 'OXSHOPEXCL',
00066             'OXTITLE' => 'OXTITLE',
00067             'OXDESC' => 'OXDESC',
00068             'OXLONGDESC' => 'OXLONGDESC',
00069             'OXTHUMB' => 'OXTHUMB',
00070             'OXEXTLINK' => 'OXEXTLINK',
00071             'OXTEMPLATE' => 'OXTEMPLATE',
00072             'OXDEFSORT' => 'OXDEFSORT',
00073             'OXDEFSORTMODE' => 'OXDEFSORTMODE',
00074             'OXPRICEFROM' => 'OXPRICEFROM',
00075             'OXPRICETO' => 'OXPRICETO',
00076             'OXACTIVE_1' => 'OXACTIVE_1',
00077             'OXTITLE_1' => 'OXTITLE_1',
00078             'OXDESC_1' => 'OXDESC_1',
00079             'OXLONGDESC_1' => 'OXLONGDESC_1',
00080             'OXACTIVE_2' => 'OXACTIVE_2',
00081             'OXTITLE_2' => 'OXTITLE_2',
00082             'OXDESC_2' => 'OXDESC_2',
00083             'OXLONGDESC_2' => 'OXLONGDESC_2',
00084             'OXACTIVE_3' => 'OXACTIVE_3',
00085             'OXTITLE_3' => 'OXTITLE_3',
00086             'OXDESC_3' => 'OXDESC_3',
00087             'OXLONGDESC_3' => 'OXLONGDESC_3',
00088             'OXICON' => 'OXICON',
00089             'OXVAT' => 'OXVAT',
00090             'OXSKIPDISCOUNTS' => 'OXSKIPDISCOUNTS',
00091             'OXSHOWSUFFIX' => 'OXSHOWSUFFIX',
00092         ),
00093     );
00094 
00100     public function __construct()
00101     {
00102         parent::__construct();
00103 
00104         $this->_sTableName = 'oxcategories';
00105         $this->_sShopObjectName = 'oxcategory';
00106     }
00107 
00117     protected function getSqlFieldName($sField, $iLanguage = 0, $iShopID = 1)
00118     {
00119         if ('1' == oxERPBase::getUsedDbFieldsVersion()) {
00120             switch ($sField) {
00121                 case 'OXTYPE':
00122                     return "'0' as $sField";
00123                     break;
00124                 case 'OXSEOID':
00125                 case 'OXSEOID_1':
00126                 case 'OXSEOID_2':
00127                 case 'OXSEOID_3':
00128                     return "'' as $sField";
00129                     break;
00130                 case 'OXACTIV':
00131                     return "OXACTIVE as OXACTIV";
00132                     break;
00133                 case 'OXACTIV_1':
00134                     return "OXACTIVE_1 as OXACTIV_1";
00135                     break;
00136                 case 'OXACTIV_2':
00137                     return "OXACTIVE_2 as OXACTIV_2";
00138                     break;
00139                 case 'OXACTIV_3':
00140                     return "OXACTIVE_3 as OXACTIV_3";
00141                     break;
00142                 case 'OXORDER':
00143                     return "OXSORT as $sField";
00144                     break;
00145             }
00146         }
00147         return parent::getSqlFieldName($sField, $iLanguage, $iShopID);
00148     }
00149 
00159     protected function _preAssignObject($oShopObject, $aData, $blAllowCustomShopId)
00160     {
00161         $aData = parent::_preAssignObject($oShopObject, $aData, $blAllowCustomShopId);
00162         if ('1' == oxERPBase::getUsedDbFieldsVersion()) {
00163             if (!$aData['OXPARENTID']) {
00164                 $aData['OXPARENTID'] = 'oxrootid';
00165             }
00166             $aData['OXSORT'] = $aData['OXORDER'];
00167         }
00168         return $aData;
00169     }
00170 
00171 }