fixed identifier field

git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@9096 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
devjin 2011-09-07 12:39:59 +00:00
parent f651391051
commit 0245d5553b
7 changed files with 123 additions and 16 deletions

View file

@ -18,10 +18,10 @@
<h1 class="h1">{$lang->msg_update_member}</h1>
<ul>
<li>
<p class="q">{$lang->email_address} <em style="color:red">*</em></p>
<p class="q">{$identifierForm->title} <em style="color:red">*</em></p>
<p class="a">
<input type="hidden" name="email_address" value="{$member_info->email_address}" />
<input type="text" name="email_address" value="{$member_info->email_address}" disabled="disabled" />
<input type="hidden" name="{$identifierForm->name}" value="{$identifierForm->value}" />
<input type="text" name="{$identifierForm->name}" value="{$identifierForm->value}" disabled="disabled" />
</p>
</li>
<li>

View file

@ -154,11 +154,33 @@ jQuery(function($){
});
$('a.modalAnchor._preview').bind('before-open.mw', function(){
var $inputList = $('input[name="usable_list[]"]:checked');
var title = '';
for(var i=0; i<$inputList.length; i++){
title = $($inputList[i]).closest('tr').find('.wrap ._title').html();
$('input[name=identifier]').change(function(){
var $checkedTR = $('input[name=identifier]:checked').closest('tr');
var $notCheckedTR = $('input[name=identifier]:not(:checked)').closest('tr');
var name, notName;
if (!$checkedTR.hasClass('sticky')){
name = $checkedTR.find('input[name="list_order[]"]').val();
if (!$checkedTR.find('input[type=hidden][name="usable_list[]"]').length) $('<input type="hidden" name="usable_list[]" value="'+name+'" />').insertBefore($checkedTR);
if (!$checkedTR.find('input[type=hidden][name='+name+']').length) $('<input type="hidden" name="'+name+'" value="required" />').insertBefore($checkedTR);
$checkedTR.find('th').html('<span class="_title" style="padding-left:20px" >'+$checkedTR.find('th ._title').html()+'</span>');
$checkedTR.find('input[type=checkbox][name="usable_list[]"]').attr('checked', 'checked').attr('disabled', 'disabled');
$checkedTR.find('input[type=radio][name='+name+'][value=required]').attr('checked', 'checked').attr('disabled', 'disabled');
$checkedTR.find('input[type=radio][name='+name+'][value=option]').removeAttr('checked').attr('disabled', 'disabled');
$checkedTR.addClass('sticky');
$checkedTR.parent().prepend($checkedTR);
notName = $notCheckedTR.find('input[name="list_order[]"]').val();
if (notName == 'user_id'){
if ($notCheckedTR.find('input[type=hidden][name="usable_list[]"]').length) $notCheckedTR.find('input[type=hidden][name="usable_list[]"]').remove();
if ($notCheckedTR.find('input[type=hidden][name='+name+']').length) $notCheckedTR.find('input[type=hidden][name='+name+']').remove();
$notCheckedTR.find('input[type=checkbox][name="usable_list[]"]').removeAttr('disabled');
$notCheckedTR.find('input[type=radio][name='+notName+']').removeAttr('disabled');
}
$notCheckedTR.find('th').html('<div class="wrap"><button type="button" class="dragBtn">Move to</button><span class="_title" >'+$notCheckedTR.find('th ._title').html()+'</span></div>');
$notCheckedTR.removeClass('sticky');
// add sticky class
}
});
});

View file

@ -112,6 +112,12 @@
<thead>
<tr>
<th scope="col">{$lang->target}</th>
<th scope="col">{$lang->identifier}
[<a href="#helpDefault" class="tgAnchor">?</a>]
<div class="tgContent layer" id="helpDefault" style="right:0">
<p>로그인시 사용할 필드를 선택합니다.</p>
</div>
</th>
<th scope="col">{$lang->use}</th>
<th scope="col">{$lang->cmd_required}/{$lang->cmd_optional}</th>
<th scope="col" class="text">{$lang->description}</th>
@ -119,17 +125,35 @@
</thead>
<tbody class="uDrag">
<!--@foreach($config->signupForm as $item)-->
<!--@if($item->isDefaultForm)-->
<!--@if($item->isIdentifier)-->
<tr class="sticky">
<input type="hidden" name="list_order[]" value="{$item->name}" />
<input type="hidden" name="usable_list[]" value="{$item->name}"/>
<input type="hidden" name="{$item->name}" value="requierd"/>
<th scope="row">
<span class="_title" style="padding-left:20px">{$item->title}</span>
</th>
<td><input type="radio" name="identifier" value="{$item->name}" checked="checked" /></td>
<td><input type="checkbox" name="usable_list[]" value="{$item->name}" title="{$lang->use}" checked="checked" disabled="disabled" /></td>
<td>
<input type="radio" id="{$item->name}_re" name="{$item->name}" value="requierd" checked="checked" disabled="disabled" /> <label for="{$item->name}_re">{$lang->cmd_required}</label>
<input type="radio" id="{$item->name}_op" name="{$item->name}" value="option" disabled="disabled" /> <label for="{$item->name}_op">{$lang->cmd_optional}</label>
</td>
<td class="text">&nbsp;</td>
<td>&nbsp;</td>
</tr>
<!--@elseif($item->isDefaultForm)-->
<tr class="_imageType"|cond="$item->imageType">
<input type="hidden" name="list_order[]" value="{$item->name}" />
<input type="hidden" name="usable_list[]" value="{$item->name}" cond="$item->mustRequired"/>
<input type="hidden" name="{$item->name}" value="requierd" cond="$item->mustRequired"/>
<th scope="row">
<div class="wrap">
<button type="button" class="dragBtn">Move to</button>
<span class="_title">{$item->title}</span>
</div>
</th>
<input type="hidden" name="usable_list[]" value="{$item->name}" cond="$item->mustRequired"/>
<input type="hidden" name="{$item->name}" value="requierd" cond="$item->mustRequired"/>
<td><input type="radio" name="identifier" value="{$item->name}" cond="$item->name== 'email_address' || $item->name=='user_id'" /></td>
<td><input type="checkbox" name="usable_list[]" value="{$item->name}" title="{$lang->use}" checked="checked"|cond="$item->mustRequired || $item->isUse" disabled="disabled"|cond="$item->mustRequired" /></td>
<td>
<input type="radio" id="{$item->name}_re" name="{$item->name}" value="required" checked="checked"|cond="$item->mustRequired || $item->required" disabled="disabled"|cond="$item->mustRequired || !$item->isUse" /> <label for="{$item->name}_re">{$lang->cmd_required}</label>
@ -153,6 +177,7 @@
<span class="_title">{$item->title}</span>
</div>
</th>
<td></td>
<td><input type="checkbox" name="usable_list[]" value="{$item->name}" title="{$lang->use}" checked="checked"|cond="$item->isUse" /></td>
<td>
<input type="radio" id="{$item->name}_re" name="{$item->name}" value="required" checked="checked"|cond="$item->required" disabled="disabled"|cond="!$item->isUse"/> <label for="{$item->name}_re">{$lang->cmd_required}</label>