Use extravar skin to display member extra input fields

This commit is contained in:
Kijin Sung 2024-04-15 01:21:47 +09:00
parent c1278f2615
commit b0a00c39f2
2 changed files with 9 additions and 25 deletions

View file

@ -911,6 +911,7 @@ class MemberModel extends Member
case 'checkbox' :
if($value && !is_array($value)) $value = array($value);
break;
/*
case 'country' :
$lang_type = Context::get('lang_type');
$country_list = Rhymix\Framework\i18n::listCountries($lang_type === 'ko' ? Rhymix\Framework\i18n::SORT_NAME_KOREAN : Rhymix\Framework\i18n::SORT_NAME_ENGLISH);
@ -921,6 +922,7 @@ class MemberModel extends Member
$supported_lang = Rhymix\Framework\Lang::getSupportedList();
$value = $supported_lang[$value]['name'];
break;
*/
case 'text' :
case 'homepage' :
case 'email_address' :

View file

@ -250,31 +250,13 @@ class MemberView extends Member
else
{
$item->title = $extendFormInfo[$formInfo->member_join_form_srl]->column_title ?? null;
$orgValue = $extendFormInfo[$formInfo->member_join_form_srl]->value ?? null;
if($formInfo->type=='tel' && is_array($orgValue))
{
$item->value = implode('-', $orgValue);
}
elseif($formInfo->type=='kr_zip' && is_array($orgValue))
{
$item->value = implode(' ', $orgValue);
}
elseif($formInfo->type=='checkbox' && is_array($orgValue))
{
$item->value = implode(", ",$orgValue);
}
elseif($formInfo->type=='date')
{
$item->value = is_array($orgValue) ? array_first($orgValue) : $orgValue;
if (preg_match('/^[0-9]{8}/', $item->value))
{
$item->value = sprintf('%s-%s-%s', substr($item->value, 0, 4), substr($item->value, 4, 2), substr($item->value, 6, 2));
}
}
else
{
$item->value = nl2br(is_array($orgValue) ? array_first($orgValue) : $orgValue);
}
$extvalue = new Rhymix\Modules\Extravar\Models\Value(0, 1, '', $formInfo->type);
$extvalue->parent_type = 'member';
$extvalue->input_name = $formInfo->name;
$extvalue->input_id = $formInfo->name;
$extvalue->value = $extendFormInfo[$formInfo->member_join_form_srl]->value ?? null;
$extvalue->default = $extendFormInfo[$formInfo->member_join_form_srl]->default_value ?? null;
$item->value = $extvalue->getValueHTML();
}
$displayDatas[] = $item;