1
0
mirror of https://github.com/e107inc/e107.git synced 2025-08-16 19:44:09 +02:00

Fixes #2593, Fixes #1586 User-extended 'database' field options were not being saved.

This commit is contained in:
Cameron
2018-08-26 10:23:55 -07:00
parent 97772a48d9
commit 2bd651c630
3 changed files with 111 additions and 134 deletions

View File

@@ -388,31 +388,36 @@ e107::js('footer-inline', js());
);
/**
* Automatically exectured when edit mode is active.
*/
public function EditObserver()
{
parent::EditObserver();
$parms = e107::getDb()->retrieve('user_extended_struct', 'user_extended_struct_parms',"user_extended_struct_id = ".intval($_GET['id']));
$tmp = explode('^,^', $parms);
$this->fields['field_include']['writeParms']['default'] = $tmp[0];
$this->fields['field_regex']['writeParms']['default'] = $tmp[1];
$this->fields['field_regexfail']['writeParms']['default'] = $tmp[2];
$this->fields['field_userhide']['writeParms']['default'] = $tmp[3];
$this->fields['field_placeholder']['writeParms']['default'] = $tmp[4];
$this->fields['field_helptip']['writeParms']['default'] = $tmp[5];
}
public function init()
{
if($this->getAction() == 'edit' || $this->getAction() == 'create')
{
$this->fields['user_extended_struct_type']['title'] = LAN_TYPE;
}
if($this->getAction() == 'edit')
{
$parms = e107::getDb()->retrieve('user_extended_struct', 'user_extended_struct_parms',"user_extended_struct_id = ".intval($_GET['id']));
$tmp = explode('^,^', $parms);
$this->fields['field_include']['writeParms']['default'] = $tmp[0];
$this->fields['field_regex']['writeParms']['default'] = $tmp[1];
$this->fields['field_regexfail']['writeParms']['default'] = $tmp[2];
$this->fields['field_userhide']['writeParms']['default'] = $tmp[3];
$this->fields['field_placeholder']['writeParms']['default'] = $tmp[4];
$this->fields['field_helptip']['writeParms']['default'] = $tmp[5];
}
$data = e107::getDb()->retrieve("user_extended_struct", "*", "user_extended_struct_type = 0 ORDER BY user_extended_struct_order ASC", true);
$opts = array();
@@ -447,7 +452,7 @@ e107::js('footer-inline', js());
$new_data['user_extended_struct_parms'] = implode('^,^', $parms);
}
if($new_data['user_extended_struct_values']==EUF_DB_FIELD)
if($new_data['user_extended_struct_type'] == EUF_DB_FIELD)
{
$new_data['user_extended_struct_values'] = array($new_data['table_db'],$new_data['field_id'],$new_data['field_value'],$new_data['field_order']);
}