/** * Method to get the data that should be injected in the form. * * @return mixed The data for the form. * @since 2.5 */ protected function loadFormData() { // Check the session for previously entered form data. $data = JFactory::getApplication()->getUserState('com_rstbox.edit.item.data', array()); if (empty($data)) { $data = $this->getItem(); $isNew = !$data->id ? true : false; if (!$isNew) { /* Fetch Menu Items */ if ($data->id) { $data->menuitems = RstboxHelper::getMenuItems($data->id); } /* Check if box is assign to all pages */ if (in_array("-1", $data->menuitems)) { $data->allmenus = true; } /* Append params column values to data */ foreach ($data->params as $key => $value) { $key_new = "prm_" . $key; $data->{$key_new} = $value; } /* Append box settings column values to data */ foreach (json_decode($data->settings) as $key => $value) { $key_new = "bx_" . $key; $data->{$key_new} = $value; } } } return $data; }