/** * {@inheritdoc} * * @param mixed $data Field data * @param bool $loadExtraData Load extra data flag * @param bool $loadParent Load parent flag * @param bool $fetchTranslations If the translation have to be loaded */ public function __construct($data, $loadExtraData = true, $loadParent = false, $fetchTranslations = false) { parent::__construct($data); $data = new JObject($data); if ($loadParent) { $this->table = $data->get('table') == null ? NenoContentElementTable::load($data->get('tableId'), $loadExtraData, $loadParent) : $data->get('table'); } $this->translations = null; if (!$this->isNew() && $loadExtraData) { $this->getWordCount(); } }
/** * Constructor * * @param mixed $data File data * @param bool $loadExtraData Load extra data flag * @param bool $loadParent Load parent flag */ public function __construct($data, $loadExtraData = true, $loadParent = false) { parent::__construct($data); $data = (array) $data; if (!empty($this->filename)) { $languageFileData = explode('.', $this->filename); $this->language = $languageFileData[0]; } if (!empty($data['groupId'])) { $this->group = NenoContentElementGroup::load($data['groupId'], $loadExtraData); } if ($loadExtraData && !$this->isNew()) { $this->loadExtraData(); } }
/** * Constructor * * @param mixed $data Language string data * @param bool $loadExtraData If extra data should be loaded * @param bool $loadParent If the parent should be loaded */ public function __construct($data, $loadExtraData = false, $loadParent = false) { parent::__construct($data); $this->translations = null; $data = (array) $data; if ($this->isNew()) { $this->timeAdded = new DateTime(); } else { if (!$this->timeAdded instanceof DateTime) { $this->timeAdded = new DateTime($this->timeAdded); } } if ($loadParent) { $this->languageFile = NenoContentElementLanguageFile::load($data['languagefileId'], $loadExtraData, $loadParent); } }
/** * {@inheritdoc} * * @param mixed $data Group data * @param bool $loadExtraData Load extra data flag */ public function __construct($data, $loadExtraData = true) { parent::__construct($data); $this->tables = null; $this->languageFiles = null; $this->assignedTranslationMethods = array(); $this->extensions = array(); $this->elementCount = null; $this->wordCount = null; // Only search for the statistics for existing groups if (!$this->isNew()) { $this->getExtensionIdList(); $this->getElementCount(); $this->calculateExtraData(); if ($loadExtraData) { $this->getWordCount(); } } }
/** * {@inheritdoc} * * @param mixed $data Table data * @param bool $loadExtraData Load Extra data flag * @param bool $loadParent Load parent flag */ public function __construct($data, $loadExtraData = true, $loadParent = false) { parent::__construct($data); $data = (array) $data; // Make sure the name of the table is properly formatted. $this->tableName = NenoHelper::unifyTableName($this->tableName); $this->primaryKey = is_array($this->primaryKey) ? json_encode($this->primaryKey) : json_decode($this->primaryKey); if (!empty($data['groupId']) && $loadParent) { $this->group = NenoContentElementGroup::load($data['groupId'], $loadExtraData); } // Init the field list $this->fields = null; if (!$this->isNew()) { $this->getFields($loadExtraData); if ($loadExtraData) { $this->getWordCount(); $this->getRecordCount(); } } }
/** * {@inheritdoc} * * @param mixed $data Element data * @param bool $loadExtraData Load extra data flag * @param bool $loadParent Load parent flag */ public function __construct($data, $loadExtraData = true, $loadParent = false) { parent::__construct($data); $data = new JObject($data); if ($data->get('content') !== null) { $this->element = $data->get('content'); } elseif ($loadParent) { $contentId = $data->get('content_id') === null ? $data->get('contentId') : $data->get('content_id'); if (!empty($contentId)) { // If it's a language string, let's create a NenoContentElementLangstring if ($this->contentType == self::LANG_STRING) { $this->element = NenoContentElementLanguageString::load($contentId, $loadExtraData, $loadParent); } else { $this->element = NenoContentElementField::load($contentId, $loadExtraData, $loadParent); } } } $this->charactersCounter = mb_strlen($this->getString()); if (!$this->isNew()) { $db = JFactory::getDbo(); $query = $db->getQuery(true); $query->select('tm.*')->from('#__neno_translation_methods AS tm')->innerJoin('#__neno_content_element_translation_x_translation_methods AS tr_x_tm ON tr_x_tm.translation_method_id = tm.id')->where('tr_x_tm.translation_id = ' . (int) $this->id); $db->setQuery($query); $this->translationMethods = $db->loadObjectList(); } }