mirror of
https://github.com/e107inc/e107.git
synced 2025-01-17 12:48:24 +01:00
Fix for custom fields loading in edit mode.
This commit is contained in:
parent
71d531be2d
commit
46cacf5e3f
@ -729,7 +729,7 @@ class page_admin_ui extends e_admin_ui
|
||||
|
||||
if(!empty($row['chapter_fields']))
|
||||
{
|
||||
$this->chapterFields[$cat] = e107::unserialize($row['chapter_fields']);
|
||||
$this->chapterFields[$cat] = ($row['chapter_fields']);
|
||||
}
|
||||
|
||||
|
||||
@ -799,7 +799,7 @@ class page_admin_ui extends e_admin_ui
|
||||
|
||||
if(!empty($this->chapterFields[$chap]))
|
||||
{
|
||||
e107::getCustomFields()->loadConfig($this->chapterFields[$chap])->setTab($tabId, "Additional")->setAdminUIConfig('page_fields',$this);
|
||||
e107::getCustomFields()->setTab($tabId, "Additional")->loadConfig($this->chapterFields[$chap])->setAdminUIConfig('page_fields',$this);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -807,6 +807,19 @@ class page_admin_ui extends e_admin_ui
|
||||
}
|
||||
}
|
||||
|
||||
private function loadCustomFieldsData()
|
||||
{
|
||||
$row = e107::getDb()->retrieve('page', 'page_chapter, page_fields', 'page_id='.$this->getId());
|
||||
|
||||
$cf = e107::getCustomFields();
|
||||
|
||||
$cf->loadData($row['page_fields'])->setAdminUIData('page_fields',$this);
|
||||
|
||||
// e107::getDebug()->log($cf);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
function CreateObserver()
|
||||
{
|
||||
@ -827,7 +840,7 @@ class page_admin_ui extends e_admin_ui
|
||||
$chap = intval($row['page_chapter']);
|
||||
|
||||
$this->initCustomFields($chap);
|
||||
e107::getCustomFields()->loadData($row['page_fields'])->setAdminUIData('page_fields',$this);
|
||||
$this->loadCustomFieldsData();
|
||||
|
||||
}
|
||||
|
||||
|
@ -311,10 +311,11 @@
|
||||
$ui->addTab($tabKey, $this->_tab[$tabKey]);
|
||||
|
||||
|
||||
foreach($this->_config as $key=>$fld)
|
||||
foreach($this->_config as $k=>$fld)
|
||||
{
|
||||
$fld['tab'] = $tabKey;
|
||||
$fld['data'] = false;
|
||||
$key = $fld['key'];
|
||||
|
||||
if($fld['type'] === 'icon')
|
||||
{
|
||||
@ -333,8 +334,6 @@
|
||||
|
||||
$fields[$fieldName.'__'.$key] = $fld;
|
||||
|
||||
//$model->fields[$fieldName.'__'.$key] = $fld;
|
||||
|
||||
}
|
||||
|
||||
$ui->setFieldAttr($fields);
|
||||
@ -352,21 +351,18 @@
|
||||
*/
|
||||
public function setAdminUIData($fieldname, e_admin_ui &$ui)
|
||||
{
|
||||
// $model->getModel()->set($fieldname, null);
|
||||
|
||||
// e107::getCustomFields()->setData($row['page_fields']);
|
||||
|
||||
$ui->getModel()->set($fieldname, null);
|
||||
|
||||
foreach($this->_data as $key=>$value)
|
||||
{
|
||||
$ui->getModel()->set($fieldname.'__'.$key, $value);
|
||||
// e107::getDebug()->log($fieldname.'__'.$key.": ".$value);
|
||||
}
|
||||
|
||||
return $this;
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -424,7 +420,7 @@
|
||||
unset($new_data[$fieldname]); // Reset.
|
||||
|
||||
$len = strlen($fieldname);
|
||||
|
||||
|
||||
foreach($new_data as $k=>$v)
|
||||
{
|
||||
if(substr($k,0,$len) === $fieldname)
|
||||
|
Loading…
x
Reference in New Issue
Block a user