XE Tips 는 제가 XE 공홈에 쓴 XE 관련 유용한 팁들입니다. 기능개선은 공홈에 안 적어둔 XE 유용 개선팁들입니다.
유용정보는 외부 검색을 통해 알아낸 소스등을 기재해둔 곳입니다.
버그 신고내역들은 XE 사용하다가 발견한 버그 패치방법들로, Core Issue 에 기록해뒀기에 XE 에 적용이 되었을 가능성이 있겠죠
제가 쓴 글들에 대해 퍼가실때는 꼭 출처를남겨주시고.. (다만 플래시뷰 기반이기에 퍼가기는조금 힘들 수 있겠죠 ^^;)
타회원의 글들도 적혀있는 출처를 같이 꼭 기재해주세요
출처 | sejin7940 |
---|
XE Core Github 에 Full Request 해둔 사항이여서..
해당 Tips 를 여기에 공개해두면...
------------------------------------
서명기능은 XE 에서 원칙적으로..
회원가입 후, 회원정보 수정시에 입력받을 수 있게 되어있습니다.
원인은 서명기능에는 member_srl 값이라는 회원번호가 필요한데
회원가입단계에는이 번호가 배정되지 않아서 생긴 현상이죠
그런데, 이 부분 제가 XE Core 를 수정해서..
회원가입시부터 바로 서명을 입력할 수 있게 수정을 해뒀습니다.
이 변경내역은 XE 측에다가 보고를 해서 XE Core 에 반영되도록 해둬야겠군요 ^^
암튼, 이제 서명기능 사용 가능할겁니다.
서명 기능 회원가입시 부터 바로 가능하도록..
1. member/member.view.php 에서
function dispMemberSignUpForm() 함수내에
Context::set('formTags', $formTags); 하단에 추가
// Editor of the module set for signing by calling getEditor
foreach($formTags as $formTag) {
if($formTag->name=='signature') {
$oEditorModel = getModel('editor');
$option = new stdClass();
$option->primary_key_name = 'member_srl';
$option->content_key_name = 'signature';
$option->allow_fileupload = false;
$option->enable_autosave = false;
$option->enable_default_component = true;
$option->enable_component = false;
$option->resizable = false;
$option->disable_html = true;
$option->height = 100;
$option->skin = $member_config->signature_editor_skin;
$option->colorset = $member_config->sel_editor_colorset;
$editor = $oEditorModel->getEditor($member_info->member_srl, $option);
Context::set('editor', $editor);
}
}
2. member/skins/스킨/signup_form.html 에서
<div class="control-group" loop="$formTags=>$formTag" cond="$formTag->name != 'signature'">
<label for="{$formTag->name}" class="control-label">{$formTag->title}</label>
<div class="controls">{$formTag->inputTag}</div>
</div>
를 변경
<block loop="$formTags=>$formTag">
<div class="control-group" >
<label for="{$formTag->name}" class="control-label">{$formTag->title}</label>
<div class="controls" cond="$formTag->name != 'signature'">{$formTag->inputTag}</div>
<div class="controls" cond="$formTag->name =='signature'">
<input type="hidden" name="signature" value="" />
{$editor}
<style scoped>
.xpress-editor>#smart_content,
.xpress-editor>#smart_content>.tool{clear:none}
</style>
</div>
</div>
</block>
3. member/member.controller.php 에서
function procMemberInsert() 함수에서
$this->insertImageName($args->member_srl, $image_name['tmp_name']);
}
아래에다가 추가
// Save Signature
$signature = Context::get('signature');
$this->putSignature($args->member_srl, $signature);