* @copyright 2007-2011 PrestaShop SA * @version Release: $Revision$ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) * International Registered Trademark & Property of PrestaShop SA */ /** * @since 1.5.0 */ class GenderCore extends ObjectModel { public $id_gender; public $name; public $type; protected $fieldsRequired = array('type'); protected $fieldsSize = array(); protected $fieldsValidate = array(); protected $fieldsRequiredLang = array('name'); protected $fieldsSizeLang = array('name' => 20); protected $fieldsValidateLang = array('name' => 'isString'); public static $definition = array( 'table' => 'gender', 'primary' => 'id_gender', 'multilang' => true, ); public function __construct($id = null, $id_lang = null, $id_shop = null) { parent::__construct($id, $id_lang, $id_shop); $this->image_dir = _PS_GENDERS_DIR_; } public function getFields() { $this->validateFields(); $fields['id_gender'] = (int)$this->id_gender; $fields['type'] = (int)$this->type; return $fields; } /** * Check then return multilingual fields for database interaction * * @return array Multilingual fields */ public function getTranslationsFieldsChild() { $this->validateFieldsLang(); return $this->getTranslationsFields(array( 'name', )); } public static function getGenders($id_lang = null) { if (is_null($id_lang)) $id_lang = Context::getContext()->language->id; $genders = new Collection('Gender', $id_lang); return $genders; } public function getImage($use_unknown = false) { if (!file_exists(_PS_GENDERS_DIR_.$this->id.'.jpg')) return ($use_unknown) ? _PS_ADMIN_IMG_.'unknown.gif' : false; return _THEME_GENDERS_DIR_.$this->id.'.jpg'; } }