mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-04 01:01:41 +09:00
issue 2590 improve member config.
git-svn-id: http://xe-core.googlecode.com/svn/branches/maserati@11742 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
e26413fe4e
commit
ab79cd53c7
29 changed files with 718 additions and 1156 deletions
|
|
@ -22,16 +22,15 @@
|
|||
<action name="dispSavedDocumentList" type="view" standalone="true" />
|
||||
|
||||
<action name="dispMemberAdminList" type="view" standalone="true" index="true" admin_index="true" menu_name="userList" menu_index="true"/>
|
||||
<!--action name="dispMemberAdminConfig" type="view" menu_name="userSetting" menu_index="true" /-->
|
||||
<action name="dispMemberAdminConfig" type="view" menu_name="userSetting" menu_index="true" />
|
||||
<action name="dispMemberAdminSignUpConfig" type="view" menu_name="userSetting" />
|
||||
<action name="dispMemberAdminLoginConfig" type="view" menu_name="userSetting" />
|
||||
<action name="dispMemberAdminDesignConfig" type="view" menu_name="userSetting" />
|
||||
<action name="dispMemberAdminInsert" type="view" menu_name="userList" />
|
||||
<action name="dispMemberAdminDeleteForm" type="view" standalone="true" />
|
||||
<action name="dispMemberAdminGroupList" type="view" menu_name="userGroup" menu_index="true" />
|
||||
<action name="dispMemberAdminJoinFormList" type="view" standalone="true" />
|
||||
<action name="dispMemberAdminInfo" type="view" menu_name="userList" />
|
||||
<action name="dispMemberAdminInsertJoinForm" type="view" standalone="true" />
|
||||
<action name="dispMemberAdminDeniedIDList" type="view" standalone="true" />
|
||||
<action name="dispMemberAdminManageGroup" type="view" standalone="true" />
|
||||
<action name="dispMemberAdminDeleteMembers" type="view" standalone="true" />
|
||||
|
||||
<action name="getMemberMenu" type="model" standalone="true" />
|
||||
<action name="getMemberAdminColorset" type="model" standalone="true" />
|
||||
|
|
@ -72,7 +71,10 @@
|
|||
|
||||
<action name="procMemberAdminInsert" type="controller" standalone="true" ruleset="insertAdminMember" />
|
||||
<action name="procMemberAdminDelete" type="controller" standalone="true" />
|
||||
<action name="procMemberAdminInsertConfig" type="controller" standalone="true" ruleset="insertConfig" />
|
||||
<action name="procMemberAdminInsertDefaultConfig" type="controller" ruleset="insertDefaultConfig" />
|
||||
<action name="procMemberAdminInsertSignupConfig" type="controller" />
|
||||
<action name="procMemberAdminInsertLoginConfig" type="controller" />
|
||||
<action name="procMemberAdminInsertDesignConfig" type="controller" />
|
||||
<action name="procMemberAdminInsertGroup" type="controller" standalone="true" ruleset="insertGroup" />
|
||||
<action name="procMemberAdminUpdateGroup" type="controller" standalone="true" ruleset="updateGroup" />
|
||||
<action name="procMemberAdminDeleteGroup" type="controller" standalone="true" ruleset="deleteGroup" />
|
||||
|
|
|
|||
|
|
@ -729,7 +729,7 @@
|
|||
<value xml:lang="vi"><![CDATA[Xin hãy nhập tên của Webmaster để nhận Email và quản lý. (Mặc định: webmaster)]]></value>
|
||||
</item>
|
||||
<item name="about_webmaster_email">
|
||||
<value xml:lang="ko"><![CDATA[웹마스터의 메일 주소를 입력해주세요.]]></value>
|
||||
<value xml:lang="ko"><![CDATA[인증 메일이나 기타 사이트 관리 시 사용될 웹마스터의 메일 주소를 입력해주세요.]]></value>
|
||||
<value xml:lang="en"><![CDATA[Please enter webmaster's email address.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[ウェブマスターのメールアドレスを入力してください。]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[请输入网站管理员的电子邮件地址。]]></value>
|
||||
|
|
@ -1851,7 +1851,7 @@
|
|||
<value xml:lang="vi"><![CDATA[Cho phép thành viên đăng kí.]]></value>
|
||||
</item>
|
||||
<item name="about_enable_confirm">
|
||||
<value xml:lang="ko"><![CDATA[입력된 메일 주소로 인증 메일을 보내 회원 가입을 확인합니다.]]></value>
|
||||
<value xml:lang="ko"><![CDATA[입력된 메일 주소로 인증 메일을 보내 회원 가입을 확인합니다. 가입자가 인증메일을 통해 인증절차를 완료해야만 정상적으로 로그인이 가능해집니다.]]></value>
|
||||
<value xml:lang="en"><![CDATA[Please check if you want new members to activate their accounts via their emails.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[登録されたメールアドレスに確認メールを送信し、会員登録を確認します。]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[为激活会员注册信息,将向会员输入的邮件地址发送注册认证邮件。]]></value>
|
||||
|
|
@ -1898,7 +1898,7 @@
|
|||
<value xml:lang="vi"><![CDATA[Thành viên không thể đăng nhập nếu quá hạn xác nhận đăng kí.]]></value>
|
||||
</item>
|
||||
<item name="about_after_login_url">
|
||||
<value xml:lang="ko"><![CDATA[로그인 후 이동할 URL을 정하실 수 있습니다. 비어 있으면 해당 페이지가 유지됩니다.]]></value>
|
||||
<value xml:lang="ko"><![CDATA[로그인 후 이동할 URL을 정하실 수 있습니다. 입력 URL이 없는 경우 해당 페이지가 유지됩니다.]]></value>
|
||||
<value xml:lang="en"><![CDATA[You can set a URL after login. Blank means the current page.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[ログイン後表示されるページのURLを指定できます。指定のない場合、現在のページが維持されます。]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[可以指定登录后的页面转向url(留空为当前页面)。]]></value>
|
||||
|
|
@ -1909,7 +1909,7 @@
|
|||
<value xml:lang="vi"><![CDATA[Bạn có thể thiết đặt địa chỉ nào đó sẽ hiển thị sau khi đăng nhập. Để trống nếu không sử dụng.]]></value>
|
||||
</item>
|
||||
<item name="about_after_logout_url">
|
||||
<value xml:lang="ko"><![CDATA[로그아웃 후 이동할 URL을 정하실 수 있습니다. 비어 있으면 해당 페이지가 유지됩니다.]]></value>
|
||||
<value xml:lang="ko"><![CDATA[로그아웃 후 이동할 URL을 정하실 수 있습니다. 입력 URL이 없는 경우 해당 페이지가 유지됩니다.]]></value>
|
||||
<value xml:lang="en"><![CDATA[You can set a URL after logout. Blank means the current page.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[ログアウト後表示されるページのURLを指定できます。指定のない場合、現在のページが維持されます。]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[可以指定退出登录后的页面转向url(留空为当前页面)。]]></value>
|
||||
|
|
@ -1920,7 +1920,7 @@
|
|||
<value xml:lang="vi"><![CDATA[Bạn có thể thiết đặt địa chỉ nào đó sẽ hiển thị sau khi thoát. Để trống nếu không sử dụng.]]></value>
|
||||
</item>
|
||||
<item name="about_redirect_url">
|
||||
<value xml:lang="ko"><![CDATA[회원 가입 후 이동할 url을 입력해 주세요. 비어 있으면 가입 이전 페이지로 돌아갑니다.]]></value>
|
||||
<value xml:lang="ko"><![CDATA[회원 가입 후 이동할 url을 입력해 주세요. 입력 url이 없는 경우 이전 페이지로 돌아갑니다.]]></value>
|
||||
<value xml:lang="en"><![CDATA[Please enter a URL where users will go after sign up. When this is empty, it will be set as the previous page of the sign up page.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[会員登録後、表示されるページのURLを指定できます。指定のない場合は会員登録する前のページに戻ります。]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[请输入注册会员后的页面转向 url。(留空为返回前页)]]></value>
|
||||
|
|
@ -2039,28 +2039,6 @@
|
|||
<value xml:lang="ko"><![CDATA[임시 비밀번호가 정상적으로 발급되었습니다.<br />로그인 후 반드시 비밀번호를 변경하시기 바랍니다.<br/>]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[已發送臨時密碼。<br />請登入後修改密碼。<br/>]]></value>
|
||||
</item>
|
||||
<item name="about_member">
|
||||
<value xml:lang="ko"><![CDATA[회원을 생성/수정/삭제 할 수 있고 그룹관리나 가입 폼 관리 등을 할 수 있는 회원 관리 모듈입니다.
|
||||
기본으로 생성된 그룹외의 그룹을 생성하여 회원 관리가 가능하고 가입 폼 관리를 통한 기본 정보외의 추가 정보를 요구할 수도 있습니다.]]></value>
|
||||
<value xml:lang="en"><![CDATA[Member module will help you create, modify and remove members and manage groups or the sign up form.
|
||||
You can add a custom group to manage members, and also get additional information by modifying the sign up form.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[会員の作成・修正・削除することができ、グループの管理、登録フォームの管理などが行える会員管理モジュールです。
|
||||
デフォルトで作成されたグループにグループを追加作成して会員管理ができるようにし、会員登録フォーム管理では基本情報の他、フォームの入力情報を追加することができます。]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[可以添加/修改/删除会员及管理用户组或注册表单的会员管理模块。
|
||||
此模块不仅可以生成缺省用户组以外的其他用户组来管理会员,并且通过注册表单的管理获得除会员基本信息以外的扩展信息。]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[可以新增/修改/刪除會員及管理群組或註冊表單的會員管理模組。
|
||||
此模組不僅可以建立預設群組以外的其他群組來管理會員,並且通過註冊表單的管理獲得會員基本資料以外的延伸資料。]]></value>
|
||||
<value xml:lang="fr"><![CDATA[C'est le module pour administrer des membres avec lequel vous pouvez créer/modifier/supprimer des membres ou administrer les groupes et la formule d'inscription.
|
||||
Vous pouvez administrer membres par création un nouveau groupe, ou gagner les informations additionnelles par l'administration la formule d'inscrioption.]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Этот модуль служит для создания/изменения/удаления пользователей, управления их группами и формой регистрации.
|
||||
Вы можете управлять пользователями посредством создания новых групп, и получить дополнительную информацию, управляя формой регистрации]]></value>
|
||||
<value xml:lang="es"><![CDATA[Esto es un módulo para crear/modificar/eliminar usuarios y manejar grupos o el formato del registro.
|
||||
Usted puede manejar usuarios creando nuevos grupos, y obtener información adicional manejando el formato del registro]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Üye modülü size; üyeleri oluşturmada, düzenlemede, silmede ve kayıt formunu ya da grupları düzenlemede yardımcı olur.
|
||||
Üyeleri yönetmek için özel gruplar ekleyebilir ve aynı zamanda kayıt formunu değiştirerek üyeler hakkında ek bilgi alabilirsiniz.]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Chức năng của Module này sẽ cho phép bạn tạo, sửa, xóa thành viên và quản lý nhóm hay Form đăng kí.
|
||||
Bạn có thể quản lý thành viên bằng cách tạo những nhóm mới, và thêm những thông tin trong Form đăng kí.]]></value>
|
||||
</item>
|
||||
<item name="about_ssl_port">
|
||||
<value xml:lang="ko"><![CDATA[기본 포트 이외의 보안접속(SSL) 포트를 사용하는 경우 포트번호를 입력해주세요.]]></value>
|
||||
<value xml:lang="en"><![CDATA[Please enter if you are using non-default SSL port]]></value>
|
||||
|
|
@ -2497,7 +2475,7 @@ Bạn có thể quản lý thành viên bằng cách tạo những nhóm mới,
|
|||
<value xml:lang="ko"><![CDATA[회원정보 동기화]]></value>
|
||||
</item>
|
||||
<item name="about_member_sync">
|
||||
<value xml:lang="ko"><![CDATA[회원정보와 게시물과 댓글 정보를 동기화 합니다. 데이터가 많은 경우 시간이 오래 소요될 수 있습니다. 이용자가 많은 경우 반드시 서비스를 중단하시고 진행하시기 바랍니다.]]></value>
|
||||
<value xml:lang="ko"><![CDATA[회원정보와 게시물/댓글 정보를 동기화 합니다. 데이터가 많은 경우 시간이 오래 소요될 수 있습니다. <strong>이용자가 많은 경우 반드시 서비스를 중단하시고 진행하시기 바랍니다.</strong>]]></value>
|
||||
</item>
|
||||
<item name="msg_success_modify_email_address">
|
||||
<value xml:lang="ko"><![CDATA[이메일 주소가 정상적으로 변경되었습니다. 변경된 이메일 주소로 로그인 가능합니다.]]></value>
|
||||
|
|
|
|||
|
|
@ -126,28 +126,35 @@
|
|||
$this->setMessage("success_deleted");
|
||||
}
|
||||
|
||||
/**
|
||||
* Set config of member
|
||||
* @return void|Object (void : success, Object : fail)
|
||||
**/
|
||||
function procMemberAdminInsertConfig(){
|
||||
$input_args = Context::gets(
|
||||
|
||||
public function procMemberAdminInsertDefaultConfig()
|
||||
{
|
||||
$args = Context::gets(
|
||||
'enable_join',
|
||||
'enable_confirm',
|
||||
'webmaster_name',
|
||||
'webmaster_email',
|
||||
'webmaster_email'
|
||||
);
|
||||
|
||||
$oModuleController = getController('module');
|
||||
$output = $oModuleController->updateModuleConfig('member', $args);
|
||||
|
||||
// default setting end
|
||||
$this->setMessage('success_updated');
|
||||
|
||||
$returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispMemberAdminDefaultConfig');
|
||||
$this->setRedirectUrl($returnUrl);
|
||||
}
|
||||
|
||||
public function procMemberAdminInsertSignupConfig()
|
||||
{
|
||||
$oMemberModel = getModel('member');
|
||||
$oModuleController = getController('module');
|
||||
|
||||
$args = Context::gets(
|
||||
'enable_confirm',
|
||||
'limit_day',
|
||||
'change_password_date',
|
||||
'max_error_count','max_error_count_time',
|
||||
'agreement',
|
||||
'after_login_url',
|
||||
'after_logout_url',
|
||||
'redirect_url',
|
||||
'layout_srl',
|
||||
'skin',
|
||||
'colorset',
|
||||
'mlayout_srl',
|
||||
'mskin',
|
||||
'profile_image', 'profile_image_max_width', 'profile_image_max_height',
|
||||
'image_name', 'image_name_max_width', 'image_name_max_height',
|
||||
'image_mark', 'image_mark_max_width', 'image_mark_max_height',
|
||||
|
|
@ -158,99 +165,87 @@
|
|||
$usable_list = Context::get('usable_list');
|
||||
$all_args = Context::getRequestVars();
|
||||
|
||||
$oModuleController = &getController('module');
|
||||
$oMemberModel = &getModel('member');
|
||||
|
||||
// default setting start
|
||||
if($input_args->enable_join != 'Y'){
|
||||
$args->enable_join = 'N';
|
||||
}else{
|
||||
$args = $input_args;
|
||||
$args->enable_join = 'Y';
|
||||
if($args->enable_confirm !='Y') $args->enable_confirm = 'N';
|
||||
$args->limit_day = (int)$args->limit_day;
|
||||
if(!$args->change_password_date) $args->change_password_date = 0;
|
||||
if(!trim(strip_tags($args->agreement)))
|
||||
{
|
||||
$agreement_file = _XE_PATH_.'files/member_extra_info/agreement_' . Context::get('lang_type') . '.txt';
|
||||
FileHandler::removeFile($agreement_file);
|
||||
$args->agreement = null;
|
||||
}
|
||||
if(!trim(strip_tags($args->after_login_url))) $args->after_login_url = null;
|
||||
if(!trim(strip_tags($args->after_logout_url))) $args->after_logout_url = null;
|
||||
if(!trim(strip_tags($args->redirect_url))) $args->redirect_url = null;
|
||||
|
||||
if(!$args->skin) $args->skin = 'default';
|
||||
if(!$args->colorset) $args->colorset = 'white';
|
||||
|
||||
if(!$args->mskin) $args->mskin = 'default';
|
||||
|
||||
$args->profile_image = $args->profile_image?'Y':'N';
|
||||
$args->image_name = $args->image_name?'Y':'N';
|
||||
$args->image_mark = $args->image_mark?'Y':'N';
|
||||
if($args->signature!='Y') $args->signature = 'N';
|
||||
$args->identifier = $all_args->identifier;
|
||||
$args->layout_srl = $args->layout_srl ? $args->layout_srl : null;
|
||||
$args->mlayout_srl = $args->mlayout_srl ? $args->mlayout_srl : null;
|
||||
|
||||
// set default
|
||||
$all_args->is_nick_name_public = 'Y';
|
||||
$all_args->is_find_account_question_public = 'N';
|
||||
|
||||
// signupForm
|
||||
global $lang;
|
||||
$signupForm = array();
|
||||
$items = array('user_id', 'password', 'user_name', 'nick_name', 'email_address', 'find_account_question', 'homepage', 'blog', 'birthday', 'signature', 'profile_image', 'image_name', 'image_mark', 'profile_image_max_width', 'profile_image_max_height', 'image_name_max_width', 'image_name_max_height', 'image_mark_max_width', 'image_mark_max_height');
|
||||
$mustRequireds = array('email_address', 'nick_name', 'password', 'find_account_question');
|
||||
$extendItems = $oMemberModel->getJoinFormList();
|
||||
foreach($list_order as $key){
|
||||
unset($signupItem);
|
||||
$signupItem->isIdentifier = ($key == $all_args->identifier);
|
||||
$signupItem->isDefaultForm = in_array($key, $items);
|
||||
|
||||
$signupItem->name = $key;
|
||||
if(!in_array($key, $items)) $signupItem->title = $key;
|
||||
else $signupItem->title = $lang->{$key};
|
||||
$signupItem->mustRequired = in_array($key, $mustRequireds);
|
||||
$signupItem->imageType = (strpos($key, 'image') !== false);
|
||||
$signupItem->required = ($all_args->{$key} == 'required') || $signupItem->mustRequired || $signupItem->isIdentifier;
|
||||
$signupItem->isUse = in_array($key, $usable_list) || $signupItem->required;
|
||||
|
||||
$signupItem->isPublic = ($all_args->{'is_'.$key.'_public'} == 'Y' && $signupItem->isUse) ? 'Y' : 'N';
|
||||
|
||||
if ($signupItem->imageType){
|
||||
$signupItem->max_width = $all_args->{$key.'_max_width'};
|
||||
$signupItem->max_height = $all_args->{$key.'_max_height'};
|
||||
}
|
||||
|
||||
// set extends form
|
||||
if (!$signupItem->isDefaultForm){
|
||||
$extendItem = $extendItems[$all_args->{$key.'_member_join_form_srl'}];
|
||||
$signupItem->type = $extendItem->column_type;
|
||||
$signupItem->member_join_form_srl = $extendItem->member_join_form_srl;
|
||||
$signupItem->title = $extendItem->column_title;
|
||||
$signupItem->description = $extendItem->description;
|
||||
|
||||
// check usable value change, required/option
|
||||
if ($signupItem->isUse != ($extendItem->is_active == 'Y') || $signupItem->required != ($extendItem->required == 'Y')){
|
||||
unset($update_args);
|
||||
$update_args->member_join_form_srl = $extendItem->member_join_form_srl;
|
||||
$update_args->is_active = $signupItem->isUse?'Y':'N';
|
||||
$update_args->required = $signupItem->required?'Y':'N';
|
||||
|
||||
$update_output = executeQuery('member.updateJoinForm', $update_args);
|
||||
}
|
||||
unset($extendItem);
|
||||
}
|
||||
$signupForm[] = $signupItem;
|
||||
}
|
||||
$args->signupForm = $signupForm;
|
||||
|
||||
// create Ruleset
|
||||
$this->_createSignupRuleset($signupForm, $args->agreement);
|
||||
$this->_createLoginRuleset($args->identifier);
|
||||
$this->_createFindAccountByQuestion($args->identifier);
|
||||
if($args->enable_confirm !='Y')
|
||||
{
|
||||
$args->enable_confirm = 'N';
|
||||
}
|
||||
$args->limit_day = (int)$args->limit_day;
|
||||
if(!trim(strip_tags($args->agreement)))
|
||||
{
|
||||
$agreement_file = _XE_PATH_.'files/member_extra_info/agreement_' . Context::get('lang_type') . '.txt';
|
||||
FileHandler::removeFile($agreement_file);
|
||||
$args->agreement = NULL;
|
||||
}
|
||||
if(!trim(strip_tags($args->redirect_url)))
|
||||
{
|
||||
$args->redirect_url = NULL;
|
||||
}
|
||||
|
||||
$args->profile_image = $args->profile_image ? 'Y' : 'N';
|
||||
$args->image_name = $args->image_name ? 'Y' : 'N';
|
||||
$args->image_mark = $args->image_mark ? 'Y' : 'N';
|
||||
$args->signature = $args->signature != 'Y' ? 'N' : 'Y';
|
||||
$args->identifier = $all_args->identifier;
|
||||
|
||||
// set default
|
||||
$all_args->is_nick_name_public = 'Y';
|
||||
$all_args->is_find_account_question_public = 'N';
|
||||
|
||||
// signupForm
|
||||
global $lang;
|
||||
$signupForm = array();
|
||||
$items = array('user_id', 'password', 'user_name', 'nick_name', 'email_address', 'find_account_question', 'homepage', 'blog', 'birthday', 'signature', 'profile_image', 'image_name', 'image_mark', 'profile_image_max_width', 'profile_image_max_height', 'image_name_max_width', 'image_name_max_height', 'image_mark_max_width', 'image_mark_max_height');
|
||||
$mustRequireds = array('email_address', 'nick_name', 'password', 'find_account_question');
|
||||
$extendItems = $oMemberModel->getJoinFormList();
|
||||
foreach($list_order as $key)
|
||||
{
|
||||
unset($signupItem);
|
||||
$signupItem->isIdentifier = ($key == $all_args->identifier);
|
||||
$signupItem->isDefaultForm = in_array($key, $items);
|
||||
|
||||
$signupItem->name = $key;
|
||||
if(!in_array($key, $items)) $signupItem->title = $key;
|
||||
else $signupItem->title = $lang->{$key};
|
||||
$signupItem->mustRequired = in_array($key, $mustRequireds);
|
||||
$signupItem->imageType = (strpos($key, 'image') !== false);
|
||||
$signupItem->required = ($all_args->{$key} == 'required') || $signupItem->mustRequired || $signupItem->isIdentifier;
|
||||
$signupItem->isUse = in_array($key, $usable_list) || $signupItem->required;
|
||||
|
||||
$signupItem->isPublic = ($all_args->{'is_'.$key.'_public'} == 'Y' && $signupItem->isUse) ? 'Y' : 'N';
|
||||
|
||||
if ($signupItem->imageType){
|
||||
$signupItem->max_width = $all_args->{$key.'_max_width'};
|
||||
$signupItem->max_height = $all_args->{$key.'_max_height'};
|
||||
}
|
||||
|
||||
// set extends form
|
||||
if (!$signupItem->isDefaultForm)
|
||||
{
|
||||
$extendItem = $extendItems[$all_args->{$key.'_member_join_form_srl'}];
|
||||
$signupItem->type = $extendItem->column_type;
|
||||
$signupItem->member_join_form_srl = $extendItem->member_join_form_srl;
|
||||
$signupItem->title = $extendItem->column_title;
|
||||
$signupItem->description = $extendItem->description;
|
||||
|
||||
// check usable value change, required/option
|
||||
if ($signupItem->isUse != ($extendItem->is_active == 'Y') || $signupItem->required != ($extendItem->required == 'Y')){
|
||||
unset($update_args);
|
||||
$update_args->member_join_form_srl = $extendItem->member_join_form_srl;
|
||||
$update_args->is_active = $signupItem->isUse?'Y':'N';
|
||||
$update_args->required = $signupItem->required?'Y':'N';
|
||||
|
||||
$update_output = executeQuery('member.updateJoinForm', $update_args);
|
||||
}
|
||||
unset($extendItem);
|
||||
}
|
||||
$signupForm[] = $signupItem;
|
||||
}
|
||||
$args->signupForm = $signupForm;
|
||||
|
||||
// create Ruleset
|
||||
$this->_createSignupRuleset($signupForm, $args->agreement);
|
||||
$this->_createLoginRuleset($args->identifier);
|
||||
$this->_createFindAccountByQuestion($args->identifier);
|
||||
|
||||
// check agreement value exist
|
||||
if($args->agreement)
|
||||
|
|
@ -265,7 +260,80 @@
|
|||
// default setting end
|
||||
$this->setMessage('success_updated');
|
||||
|
||||
$returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispMemberAdminConfig');
|
||||
$returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispMemberAdminSignUpConfig');
|
||||
$this->setRedirectUrl($returnUrl);
|
||||
}
|
||||
|
||||
public function procMemberAdminInsertLoginConfig()
|
||||
{
|
||||
$oModuleController = getController('module');
|
||||
|
||||
$args = Context::gets(
|
||||
'change_password_date',
|
||||
'enable_login_fail_report',
|
||||
'max_error_count',
|
||||
'max_error_count_time',
|
||||
'after_login_url',
|
||||
'after_logout_url'
|
||||
);
|
||||
|
||||
if(!$args->change_password_date)
|
||||
{
|
||||
$args->change_password_date = 0;
|
||||
}
|
||||
|
||||
if(!trim(strip_tags($args->after_login_url)))
|
||||
{
|
||||
$args->after_login_url = NULL;
|
||||
}
|
||||
if(!trim(strip_tags($args->after_logout_url)))
|
||||
{
|
||||
$args->after_logout_url = NULL;
|
||||
}
|
||||
|
||||
$output = $oModuleController->updateModuleConfig('member', $args);
|
||||
|
||||
// default setting end
|
||||
$this->setMessage('success_updated');
|
||||
|
||||
$returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispMemberAdminLoginConfig');
|
||||
$this->setRedirectUrl($returnUrl);
|
||||
}
|
||||
|
||||
public function procMemberAdminInsertDesignConfig()
|
||||
{
|
||||
$oModuleController = getController('module');
|
||||
|
||||
$args = Context::gets(
|
||||
'layout_srl',
|
||||
'skin',
|
||||
'colorset',
|
||||
'mlayout_srl',
|
||||
'mskin'
|
||||
);
|
||||
|
||||
$args->layout_srl = $args->layout_srl ? $args->layout_srl : NULL;
|
||||
if(!$args->skin)
|
||||
{
|
||||
$args->skin = 'default';
|
||||
}
|
||||
if(!$args->colorset)
|
||||
{
|
||||
$args->colorset = 'white';
|
||||
}
|
||||
|
||||
$args->mlayout_srl = $args->mlayout_srl ? $args->mlayout_srl : NULL;
|
||||
if(!$args->mskin)
|
||||
{
|
||||
$args->mskin = 'default';
|
||||
}
|
||||
|
||||
$output = $oModuleController->updateModuleConfig('member', $args);
|
||||
|
||||
// default setting end
|
||||
$this->setMessage('success_updated');
|
||||
|
||||
$returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispMemberAdminDesignConfig');
|
||||
$this->setRedirectUrl($returnUrl);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -21,25 +21,45 @@
|
|||
**/
|
||||
var $memberInfo = NULL;
|
||||
|
||||
/**
|
||||
* Member module config.
|
||||
*
|
||||
* @var Object
|
||||
**/
|
||||
var $memberConfig = NULL;
|
||||
|
||||
/**
|
||||
* initialization
|
||||
*
|
||||
* @return void
|
||||
**/
|
||||
function init() {
|
||||
function init()
|
||||
{
|
||||
$oMemberModel = &getModel('member');
|
||||
$this->memberConfig = $oMemberModel->getMemberConfig();
|
||||
Context::set('config', $this->memberConfig);
|
||||
|
||||
// if member_srl exists, set memberInfo
|
||||
$member_srl = Context::get('member_srl');
|
||||
if($member_srl) {
|
||||
$this->memberInfo = $oMemberModel->getMemberInfoByMemberSrl($member_srl); if(!$this->memberInfo) Context::set('member_srl',''); else Context::set('member_info',$this->memberInfo); }
|
||||
if($member_srl)
|
||||
{
|
||||
$this->memberInfo = $oMemberModel->getMemberInfoByMemberSrl($member_srl);
|
||||
if(!$this->memberInfo)
|
||||
{
|
||||
Context::set('member_srl','');
|
||||
}
|
||||
else
|
||||
{
|
||||
Context::set('member_info',$this->memberInfo);
|
||||
}
|
||||
}
|
||||
|
||||
// retrieve group list
|
||||
$this->group_list = $oMemberModel->getGroups();
|
||||
Context::set('group_list', $this->group_list);
|
||||
|
||||
$security = new Security();
|
||||
$security->encodeHTML('group_list..');
|
||||
$security->encodeHTML('group_list..', 'config..');
|
||||
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
}
|
||||
|
|
@ -70,7 +90,7 @@
|
|||
$output->data[$key]->group_list = $oMemberModel->getMemberGroups($member->member_srl,0);
|
||||
}
|
||||
}
|
||||
$config = $oMemberModel->getMemberConfig();
|
||||
$config = $this->memberConfig;
|
||||
$memberIdentifiers = array('user_id'=>'user_id', 'user_name'=>'user_name', 'nick_name'=>'nick_name');
|
||||
$usedIdentifiers = array();
|
||||
|
||||
|
|
@ -96,18 +116,100 @@
|
|||
$this->setTemplateFile('member_list');
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the default config.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function dispMemberAdminConfig()
|
||||
{
|
||||
$this->setTemplateFile('default_config');
|
||||
|
||||
}
|
||||
|
||||
public function dispMemberAdminSignUpConfig()
|
||||
{
|
||||
$config = $this->memberConfig;
|
||||
|
||||
$oMemberModel = getModel('member');
|
||||
// retrieve skins of editor
|
||||
$oEditorModel = getModel('editor');
|
||||
Context::set('editor_skin_list', $oEditorModel->getEditorSkinList());
|
||||
|
||||
// get an editor
|
||||
$option->primary_key_name = 'temp_srl';
|
||||
$option->content_key_name = 'agreement';
|
||||
$option->allow_fileupload = false;
|
||||
$option->enable_autosave = false;
|
||||
$option->enable_default_component = true;
|
||||
$option->enable_component = true;
|
||||
$option->resizable = true;
|
||||
$option->height = 300;
|
||||
$editor = $oEditorModel->getEditor(0, $option);
|
||||
Context::set('editor', $editor);
|
||||
|
||||
$signupForm = $config->signupForm;
|
||||
foreach($signupForm as $val)
|
||||
{
|
||||
if($val->name == 'user_id')
|
||||
{
|
||||
$userIdInfo = $val;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if($userIdInfo->isUse)
|
||||
{
|
||||
// get denied ID list
|
||||
Context::set('useUserID', 1);
|
||||
$denied_list = $oMemberModel->getDeniedIDs();
|
||||
Context::set('deniedIDs', $denied_list);
|
||||
}
|
||||
|
||||
// get denied NickName List
|
||||
$deniedNickNames = $oMemberModel->getDeniedNickNames();
|
||||
Context::set('deniedNickNames', $deniedNickNames);
|
||||
$this->setTemplateFile('signup_config');
|
||||
}
|
||||
|
||||
public function dispMemberAdminLoginConfig()
|
||||
{
|
||||
$this->setTemplateFile('login_config');
|
||||
}
|
||||
|
||||
public function dispMemberAdminDesignConfig()
|
||||
{
|
||||
$oModuleModel = getModel('module');
|
||||
// Get a layout list
|
||||
$oLayoutModel = &getModel('layout');
|
||||
$layout_list = $oLayoutModel->getLayoutList();
|
||||
|
||||
Context::set('layout_list', $layout_list);
|
||||
|
||||
$mlayout_list = $oLayoutModel->getLayoutList(0, 'M');
|
||||
|
||||
Context::set('mlayout_list', $mlayout_list);
|
||||
|
||||
// list of skins for member module
|
||||
$skin_list = $oModuleModel->getSkins($this->module_path);
|
||||
Context::set('skin_list', $skin_list);
|
||||
|
||||
// list of skins for member module
|
||||
$mskin_list = $oModuleModel->getSkins($this->module_path, 'm.skins');
|
||||
Context::set('mskin_list', $mskin_list);
|
||||
|
||||
$this->setTemplateFile('design_config');
|
||||
}
|
||||
|
||||
/**
|
||||
* default configuration for member management
|
||||
*
|
||||
* @return void
|
||||
**/
|
||||
function dispMemberAdminConfig()
|
||||
function dispMemberAdminConfigOLD()
|
||||
{
|
||||
$oModuleModel = &getModel('module');
|
||||
$oMemberModel = &getModel('member');
|
||||
$config = $oMemberModel->getMemberConfig();
|
||||
|
||||
Context::set('config',$config);
|
||||
|
||||
// Get a layout list
|
||||
$oLayoutModel = &getModel('layout');
|
||||
|
|
@ -236,7 +338,7 @@
|
|||
|
||||
$formTags = $this->_getMemberInputTag($memberInfo, true);
|
||||
Context::set('formTags', $formTags);
|
||||
$member_config = $oMemberModel->getMemberConfig();
|
||||
$member_config = $this->memberConfig;
|
||||
|
||||
global $lang;
|
||||
$identifierForm->title = $lang->{$member_config->identifier};
|
||||
|
|
@ -260,7 +362,7 @@
|
|||
|
||||
if ($memberInfo)
|
||||
$memberInfo = get_object_vars($memberInfo);
|
||||
$member_config = $oMemberModel->getMemberConfig();
|
||||
$member_config = $this->memberConfig;
|
||||
$formTags = array();
|
||||
global $lang;
|
||||
|
||||
|
|
@ -442,55 +544,19 @@ EOD;
|
|||
return $formTags;
|
||||
}
|
||||
|
||||
/**
|
||||
* display member delete form
|
||||
*
|
||||
* @return void
|
||||
**/
|
||||
function dispMemberAdminDeleteForm() {
|
||||
if(!Context::get('member_srl')) return $this->dispMemberAdminList();
|
||||
$this->setTemplateFile('delete_form');
|
||||
}
|
||||
|
||||
/**
|
||||
* display group list
|
||||
*
|
||||
* @return void
|
||||
**/
|
||||
function dispMemberAdminGroupList() {
|
||||
function dispMemberAdminGroupList()
|
||||
{
|
||||
$oModuleModel = &getModel('module');
|
||||
|
||||
$config = $oModuleModel->getModuleConfig('member');
|
||||
Context::set('config', $config);
|
||||
|
||||
$group_srl = Context::get('group_srl');
|
||||
|
||||
if($group_srl && $this->group_list[$group_srl]) {
|
||||
Context::set('selected_group', $this->group_list[$group_srl]);
|
||||
$this->setTemplateFile('group_update_form');
|
||||
} else {
|
||||
$this->setTemplateFile('group_list');
|
||||
}
|
||||
$output = $oModuleModel->getModuleFileBoxList();
|
||||
Context::set('fileBoxList', $output->data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Display a list of member join form
|
||||
*
|
||||
* @return void
|
||||
**/
|
||||
function dispMemberAdminJoinFormList() {
|
||||
// Create a member model object
|
||||
$oMemberModel = &getModel('member');
|
||||
// Get join form list which is additionally set
|
||||
$form_list = $oMemberModel->getJoinFormList();
|
||||
Context::set('form_list', $form_list);
|
||||
$security = new Security($form_list);
|
||||
$security->encodeHTML('form_list..');
|
||||
|
||||
$this->setTemplateFile('join_form_list');
|
||||
}
|
||||
$this->setTemplateFile('group_list');
|
||||
}
|
||||
|
||||
/**
|
||||
* Display an admin page for memebr join forms
|
||||
|
|
@ -515,62 +581,5 @@ EOD;
|
|||
$this->setTemplateFile('insert_join_form');
|
||||
}
|
||||
|
||||
/**
|
||||
* Display denied ID list
|
||||
*
|
||||
* @return void
|
||||
**/
|
||||
function dispMemberAdminDeniedIDList() {
|
||||
// Create a member model object
|
||||
$oMemberModel = &getModel('member');
|
||||
// Get a denied ID list
|
||||
$output = $oMemberModel->getDeniedIDList();
|
||||
|
||||
Context::set('total_count', $output->total_count);
|
||||
Context::set('total_page', $output->total_page);
|
||||
Context::set('page', $output->page);
|
||||
Context::set('member_list', $output->data);
|
||||
Context::set('page_navigation', $output->page_navigation);
|
||||
|
||||
$security = new Security();
|
||||
$security->encodeHTML('member_list..');
|
||||
$this->setTemplateFile('denied_id_list');
|
||||
}
|
||||
|
||||
/**
|
||||
* Update all the member groups
|
||||
*
|
||||
* @return void
|
||||
**/
|
||||
function dispMemberAdminManageGroup() {
|
||||
// Get a list of the selected member
|
||||
$args->member_srl = trim(Context::get('member_srls'));
|
||||
$output = executeQueryArray('member.getMembers', $args);
|
||||
Context::set('member_list', $output->data);
|
||||
// Get a list of the selected member
|
||||
$oMemberModel = &getModel('member');
|
||||
Context::set('member_groups', $oMemberModel->getGroups());
|
||||
|
||||
$security = new Security();
|
||||
$security->encodeHTML('member_list..');
|
||||
|
||||
$this->setLayoutFile('popup_layout');
|
||||
$this->setTemplateFile('manage_member_group');
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete members
|
||||
*
|
||||
* @return void
|
||||
**/
|
||||
function dispMemberAdminDeleteMembers() {
|
||||
// Get a list of the selected member
|
||||
$args->member_srl = trim(Context::get('member_srls'));
|
||||
$output = executeQueryArray('member.getMembers', $args);
|
||||
Context::set('member_list', $output->data);
|
||||
|
||||
$this->setLayoutFile('popup_layout');
|
||||
$this->setTemplateFile('delete_members');
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
10
modules/member/ruleset/insertDefaultConfig.xml
Normal file
10
modules/member/ruleset/insertDefaultConfig.xml
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<ruleset version="1.5.0">
|
||||
<customrules>
|
||||
</customrules>
|
||||
<fields>
|
||||
<field name="enable_join" required="true" />
|
||||
<field name="webmaster_name" required="true" length="2:40" />
|
||||
<field name="webmaster_email" length="1:200" rule="email" />
|
||||
</fields>
|
||||
</ruleset>
|
||||
|
|
@ -3,8 +3,6 @@
|
|||
<customrules>
|
||||
</customrules>
|
||||
<fields>
|
||||
<field name="webmaster_name" required="true" length="2:40" />
|
||||
<field name="webmaster_email" length="1:200" rule="email" />
|
||||
<field name="max_error_count" length="1:20" rule="number" />
|
||||
<field name="max_error_count_time" length="1:20" rule="number" />
|
||||
</fields>
|
||||
38
modules/member/tpl/default_config.html
Normal file
38
modules/member/tpl/default_config.html
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
<include target="header.html" />
|
||||
<load target="js/default_config.js" />
|
||||
<form action="./" class="x_form-horizontal" ruleset="insertDefaultConfig" method="post">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<input type="hidden" name="act" value="procMemberAdminInsertDefaultConfig" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('', 'module', 'admin', 'act', $act)}" />
|
||||
<div class="x_control-group">
|
||||
<p class="x_control-label">{$lang->enable_join}</p>
|
||||
<div class="x_controls">
|
||||
<label class="x_inline" for="enable_join_yes"><input type="radio" name="enable_join" id="enable_join_yes" value="Y" checked="checked"|cond="$config->enable_join == 'Y'" /> {$lang->cmd_yes}</label>
|
||||
<label class="x_inline" for="enable_join_no"><input type="radio" name="enable_join" id="enable_join_no" value="N" checked="checked"|cond="$config->enable_join != 'Y'" /> {$lang->cmd_no}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="webmaster_name">{$lang->webmaster_name}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="webmaster_name" name="webmaster_name" value="{$config->webmaster_name}" size="20" />
|
||||
<p class="desc">{$lang->about_webmaster_name}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="webmaster_email">{$lang->webmaster_email}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="webmaster_email" name="webmaster_email" value="{$config->webmaster_email}" size="40" />
|
||||
<p class="desc">{$lang->about_webmaster_email}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="member_sync">{$lang->cmd_member_sync}</label>
|
||||
<div class="x_controls">
|
||||
<input id="member_sync" type="button" value="{$lang->cmd_member_sync}" class="__sync x_btn x_btn-warning" />
|
||||
<p class="description">{$lang->about_member_sync}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_clearfix">
|
||||
<span class="x_pull-right"><input class="x_btn x_btn-large x_btn-primary" type="submit" value="{$lang->cmd_save}" /></span>
|
||||
</div>
|
||||
</form>
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
<!--%import("filter/delete_member.xml")-->
|
||||
<load target="js/member_admin.js" usecdn="true" />
|
||||
<!--#include("header.html")-->
|
||||
|
||||
<form action="./" method="get" onsubmit="return procFilter(this, delete_member)">
|
||||
<input type="hidden" name="page" value="{$page}" />
|
||||
<input type="hidden" name="member_srl" value="{$member_info->member_srl}" />
|
||||
<h3 class="h3">{$lang->confirm_delete}</h3>
|
||||
<div class="table">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<tr>
|
||||
<th scope="row">{$lang->user_id}</th>
|
||||
<td>{$member_info->user_id}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->nick_name}</th>
|
||||
<td>{$member_info->nick_name}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->email_address}</th>
|
||||
<td>{$member_info->email_address}</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="btnArea">
|
||||
<span class="btn"><input type="submit" value="{$lang->cmd_delete}" /></span>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
<!--%import("filter/delete_members.xml")-->
|
||||
<load target="js/member_admin.js" usecdn="true" />
|
||||
|
||||
<h1 class="h1">{$lang->cmd_delete} ({$lang->target} : {count($member_list)})</h1>
|
||||
|
||||
<form action="./" method="get" id="fo_management" onsubmit="return procFilter(this, delete_members);">
|
||||
<input type="hidden" name="target_member_srls" value="{$member_srls}" />
|
||||
|
||||
<div class="table">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<tr>
|
||||
<th scope="col">{$lang->user_id}</th>
|
||||
<th scope="col">{$lang->nick_name}</th>
|
||||
<th scope="col">{$lang->signup_date}</th>
|
||||
</tr>
|
||||
<!--@foreach($member_list as $key => $val)-->
|
||||
<tr>
|
||||
<td>{$val->user_id}</td>
|
||||
<td><a href="#popup_menu_area" class="member_{$val->member_srl}">{$val->nick_name}</a></td>
|
||||
<td>{zdate($val->regdate, "Y-m-d H:i")}</td>
|
||||
</tr>
|
||||
<!--@end-->
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!--@if(count($member_list))-->
|
||||
<div class="btnArea">
|
||||
<span class="btn"><input type="submit" value="{$lang->cmd_delete}" /></span>
|
||||
</div>
|
||||
<!--@end-->
|
||||
|
||||
</form>
|
||||
|
|
@ -1,73 +0,0 @@
|
|||
<!--#include("header.html")-->
|
||||
<!--%import("filter/update_denied_id.xml")-->
|
||||
|
||||
<!-- 금지아이디의 삭제와 관련된 form -->
|
||||
<form id="fo_denied_id_info" action="./" method="get">
|
||||
<input type="hidden" name="user_id" value="" />
|
||||
<input type="hidden" name="mode" value="" />
|
||||
</form>
|
||||
|
||||
<!-- 목록 -->
|
||||
<div class="table">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">{$lang->no}</th>
|
||||
<th scope="col">{$lang->user_id}</th>
|
||||
<th scope="col">{$lang->description}</th>
|
||||
<th scope="col">{$lang->regdate}</th>
|
||||
<th scope="col"> </th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!--@foreach($member_list as $no => $val)-->
|
||||
<tr class="row{$cycle_idx}">
|
||||
<td>{$no}</td>
|
||||
<td>{$val->user_id}</td>
|
||||
<td>{$val->description} </td>
|
||||
<td>{zdate($val->regdate,"Y-m-d")}</td>
|
||||
<td><a href="#" onclick="doUpdateDeniedID('{$val->user_id}','delete','{$lang->confirm_delete}');return false;" title="{$lang->cmd_delete}" class="buttonSet buttonDelete"><span>{$lang->cmd_delete}</span></a></td>
|
||||
</tr>
|
||||
<!--@end-->
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!-- 페이지 네비게이션 -->
|
||||
<div class="pagination">
|
||||
<a href="{getUrl('page','','module_srl','')}" class="direction">‹ {$lang->first_page}</a>
|
||||
<!--@while($page_no = $page_navigation->getNextPage())-->
|
||||
<!--@if($page == $page_no)-->
|
||||
<strong>{$page_no}</strong>
|
||||
<!--@else-->
|
||||
<a href="{getUrl('page',$page_no,'module_srl','')}">{$page_no}</a>
|
||||
<!--@end-->
|
||||
<!--@end-->
|
||||
<a href="{getUrl('page',$page_navigation->last_page,'module_srl','')}" class="direction">{$lang->last_page} ›</a>
|
||||
</div>
|
||||
|
||||
<!-- 금지 아이디 추가 -->
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form ruleset="insertDeniedId" action="./" method="post">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<input type="hidden" name="act" value="procMemberAdminInsertDeniedID" />
|
||||
<input type="hidden" name="page" value="{$page}" />
|
||||
|
||||
<div class="table">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<tr>
|
||||
<th scope="row">{$lang->user_id}</th>
|
||||
<td ><input type="text" name="user_id" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->description}</th>
|
||||
<td ><textarea name="description" rows="8" cols="42"></textarea></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="btnArea">
|
||||
<span class="btn"><input type="submit" value="{$lang->cmd_registration}" /></span>
|
||||
</div>
|
||||
</form>
|
||||
51
modules/member/tpl/design_config.html
Normal file
51
modules/member/tpl/design_config.html
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
<include target="header.html" />
|
||||
<load target="js/design_config.js" />
|
||||
<form action="./" class="x_form-horizontal" method="post">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<input type="hidden" name="act" value="procMemberAdminInsertDesignConfig" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('', 'module', 'admin', 'act', $act)}" />
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="layout">{$lang->layout}</label>
|
||||
<div class="x_controls">
|
||||
<select id="layout" name="layout_srl">
|
||||
<option value="0">{$lang->notuse}</option>
|
||||
<option loop="$layout_list => $key,$val" value="{$val->layout_srl}" selected="selected"|cond="$val->layout_srl == $config->layout_srl">{$val->title} ({$val->layout})</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="skin">{$lang->skin}</label>
|
||||
<div class="x_controls">
|
||||
<select id="skin" name="skin" onchange="doGetSkinColorset(this.options[this.selectedIndex].value)">
|
||||
<option loop="$skin_list=>$key,$val" value="{$key}" selected="selected"|cond="$config->skin==$key">{$val->title} ({$key})</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div id="colorset" class="x_control-group" style="display:none"|cond="!$config->colorset">
|
||||
<label class="x_control-label" for="member_colorset">{$lang->colorset}</label>
|
||||
<div class="x_controls"><div id="member_colorset"></div></div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="mlayout">{$lang->mobile_layout}</label>
|
||||
<div class="x_controls">
|
||||
<select id="mlayout" name="mlayout_srl">
|
||||
<option value="0">{$lang->notuse}</option>
|
||||
<option loop="$mlayout_list => $key,$val" value="{$val->layout_srl}" selected="selected"|cond="$val->layout_srl == $config->mlayout_srl">{$val->title} ({$val->layout})</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="mskin">{$lang->mobile_skin}</label>
|
||||
<div class="x_controls">
|
||||
<select id="mskin" name="mskin">
|
||||
<option loop="$mskin_list=>$key,$val" value="{$key}" selected="selected"|cond="$config->mskin==$key">{$val->title} ({$key})</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_clearfix">
|
||||
<span class="x_pull-right"><input class="x_btn x_btn-large x_btn-primary" type="submit" value="{$lang->cmd_save}" /></span>
|
||||
</div>
|
||||
</form>
|
||||
<script>
|
||||
jQuery(function() { doGetSkinColorset("{$config->skin}"); });
|
||||
</script>
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
<!--#include("header.html")-->
|
||||
<!--%load_js_plugin("filebox")-->
|
||||
|
||||
<!-- 그룹 수정 -->
|
||||
<!--@if($selected_group)-->
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form ruleset="updateGroup" action="./" method="post">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<input type="hidden" name="act" value="procMemberAdminUpdateGroup" />
|
||||
<input type="hidden" name="group_srl" value="{$selected_group->group_srl}" />
|
||||
<input type="hidden" name="mode" value="update" />
|
||||
<!--@if($selected_group->is_default=='Y')--><input type="hidden" name="is_default" value="Y" /><!--@end-->
|
||||
<div class="table">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<tr>
|
||||
<th scope="row">{$lang->group_title}</th>
|
||||
<td ><input type="text" name="title" id="title" value="{$selected_group->title}"/></td>
|
||||
</tr>
|
||||
<!--@if($selected_group->is_default!='Y' && $selected_group->is_admin!='Y')-->
|
||||
<tr>
|
||||
<th scope="row">{$lang->is_default}</th>
|
||||
<td ><input type="checkbox" name="is_default" value="Y" class="checkbox" /> {$lang->about_member_default}</td>
|
||||
</tr>
|
||||
<!--@end-->
|
||||
<tr>
|
||||
<th scope="row">{$lang->description}</th>
|
||||
<td ><textarea name="description" rows="8" cols="42">{$selected_group->description}</textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->group_image_mark}</th>
|
||||
<td >
|
||||
<div id="filebox_preview_image_mark" style="width:100px;height:100px;<!--@if(!$selected_group->image_mark)-->display:none<!--@endif-->"></div>
|
||||
<input type="hidden" name="image_mark" value="{$selected_group->image_mark}" />
|
||||
<span class="button black"><button type="button" onclick="XE.filebox.open(jQuery('[name=image_mark]').get(0), 'jpg,jpeg,gif,png')">{$lang->cmd_select}</button></span>
|
||||
<span id="filebox_cancel_image_mark" class="button red"<!--@if(!$selected_group->image_mark)--> style="display:none" <!--@endif-->><button type="button" onclick="XE.filebox.cancel('image_mark')">{$lang->cmd_delete}</button></span>
|
||||
<script>//<![CDATA[
|
||||
XE.filebox.init('image_mark');
|
||||
//]]></script>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="btnArea">
|
||||
<span class="btn"><input type="submit" value="{$lang->cmd_modify}" /></span>
|
||||
</div>
|
||||
</form>
|
||||
<!--@end-->
|
||||
|
|
@ -1,17 +1,19 @@
|
|||
<load target="js/member_admin.js" usecdn="true" />
|
||||
<load target="css/member_admin.css" usecdn="true" />
|
||||
<!--%load_js_plugin("ui")-->
|
||||
|
||||
<h3 class="xeAdmin">{$lang->member} <span class="gray">{$lang->cmd_management}</span></h3>
|
||||
|
||||
<div class="infoText">{nl2br($lang->about_member)}</div>
|
||||
|
||||
<div class="header4">
|
||||
<ul class="localNavigation">
|
||||
<li <!--@if($act=='dispMemberAdminList')-->class="on"<!--@end-->><a href="{getUrl('', 'module', 'admin', 'act','dispMemberAdminList','member_srl','')}">{$lang->cmd_member_list}</a></li>
|
||||
<li <!--@if($act=='dispMemberAdminConfig')-->class="on"<!--@end-->><a href="{getUrl('', 'module', 'admin', 'act','dispMemberAdminConfig')}">{$lang->cmd_module_config}</a></li>
|
||||
<li <!--@if($act=='dispMemberAdminGroupList')-->class="on"<!--@end-->><a href="{getUrl('', 'module', 'admin', 'act','dispMemberAdminGroupList')}">{$lang->cmd_member_group}</a></li>
|
||||
<li <!--@if($act=='dispMemberAdminJoinFormList')-->class="on"<!--@end-->><a href="{getUrl('', 'module', 'admin', 'act','dispMemberAdminJoinFormList')}">{$lang->cmd_manage_form}</a></li>
|
||||
<li <!--@if($act=='dispMemberAdminDeniedIDList')-->class="on"<!--@end-->><a href="{getUrl('', 'module', 'admin', 'act','dispMemberAdminDeniedIDList')}">{$lang->cmd_manage_id}</a></li>
|
||||
</ul>
|
||||
<load target="js/config.js" />
|
||||
<div class="x_page-header">
|
||||
<h1>{$lang->cmd_member_config}</h1>
|
||||
</div>
|
||||
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
|
||||
<ul class="x_nav x_nav-tabs">
|
||||
<li class="x_active"|cond="$act == 'dispMemberAdminConfig'"><a href="{getUrl('', 'module', 'admin', 'act', 'dispMemberAdminConfig')}">{$lang->member_default_info}</a></li>
|
||||
<li id="signupTab" class="x_active"|cond="$act == 'dispMemberAdminSignUpConfig'"><a href="{getUrl('', 'module', 'admin', 'act', 'dispMemberAdminSignUpConfig')}">{$lang->cmd_signup}</a></li>
|
||||
<li class="x_active"|cond="$act == 'dispMemberAdminLoginConfig'"><a href="{getUrl('', 'module', 'admin', 'act', 'dispMemberAdminLoginConfig')}">{$lang->cmd_login}</a></li>
|
||||
<li class="x_active"|cond="$act == 'dispMemberAdminDesignConfig'"><a href="{getUrl('', 'module', 'admin', 'act', 'dispMemberAdminDesignConfig')}">{$lang->cmd_set_design_info}</a></li>
|
||||
</ul>
|
||||
|
||||
<script>
|
||||
enableSignUpTab({$config->enable_join == 'Y' ? 'true' : 'false'});
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
<load target="js/member_admin.js" usecdn="true" />
|
||||
<load target="js/krzip_search.js" usecdn="true" />
|
||||
<!--%load_js_plugin("ui.datepicker")-->
|
||||
<script>
|
||||
|
|
|
|||
|
|
@ -1,46 +0,0 @@
|
|||
<!--#include("header.html")-->
|
||||
<!--%import("filter/update_join_form.xml")-->
|
||||
|
||||
<!-- 가입폼의 위/아래, 삭제와 관련된 form -->
|
||||
<form id="fo_join_form_info" action="./" method="get">
|
||||
<input type="hidden" name="member_join_form_srl" value="" />
|
||||
<input type="hidden" name="mode" value="" />
|
||||
</form>
|
||||
|
||||
<!-- 목록 -->
|
||||
<div class="table even">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">{$lang->column_title}</th>
|
||||
<th scope="col">{$lang->column_name}</th>
|
||||
<th scope="col">{$lang->column_type}</th>
|
||||
<th scope="col">{$lang->is_active}</th>
|
||||
<th scope="col">{$lang->is_required}</th>
|
||||
<th scope="col">{$lang->regdate}</th>
|
||||
<th scope="col" colspan="4"> </th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!--@foreach($form_list as $no => $val)-->
|
||||
<tr>
|
||||
<td>{$val->column_title}</td>
|
||||
<td>{$val->column_name}</td>
|
||||
<td>{$lang->column_type_list[$val->column_type]}</td>
|
||||
<td>{$val->is_active}</td>
|
||||
<td>{$val->required}</td>
|
||||
<td>{zdate($val->regdate,"Y-m-d")}</td>
|
||||
<td>
|
||||
<button type="button" class="text" onclick="doUpdateJoinForm('{$val->member_join_form_srl}','up');return false;">{$lang->cmd_move_up}</button>
|
||||
<button type="button" class="text" onclick="doUpdateJoinForm('{$val->member_join_form_srl}','down');return false;">{$lang->cmd_move_down}</button>
|
||||
<a href="{getUrl('member_join_form_srl',$val->member_join_form_srl,'act','dispMemberAdminInsertJoinForm')}">{$lang->cmd_modify}...</a>
|
||||
<button type="button" class="text" onclick="doUpdateJoinForm('{$val->member_join_form_srl}','delete','{$lang->confirm_delete}');return false;">{$lang->cmd_delete}</button>
|
||||
</td>
|
||||
</tr>
|
||||
<!--@end-->
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="btnArea">
|
||||
<span class="btn"><a href="{getUrl('act','dispMemberAdminInsertJoinForm','member_join_form_srl','')}">{$lang->cmd_make}</a></span>
|
||||
</div>
|
||||
5
modules/member/tpl/js/config.js
Normal file
5
modules/member/tpl/js/config.js
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
function enableSignUpTab(isEnable)
|
||||
{
|
||||
var $ = jQuery;
|
||||
$('#signupTab').toggle(isEnable);
|
||||
}
|
||||
16
modules/member/tpl/js/default_config.js
Normal file
16
modules/member/tpl/js/default_config.js
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
jQuery(function($){
|
||||
$('input[name=enable_join]').click(function(){
|
||||
var checked = $('input[name=enable_join]:checked').val();
|
||||
enableSignUpTab(checked == 'Y');
|
||||
});
|
||||
|
||||
$('.__sync').click(function (){
|
||||
exec_xml(
|
||||
'importer', // module
|
||||
'procImporterAdminSync', // act
|
||||
null,
|
||||
function(ret){if(ret && (!ret.error || ret.error == '0'))alert(ret.message);}, // callback
|
||||
resp = ['error','message'] // response tags
|
||||
);
|
||||
});
|
||||
});
|
||||
24
modules/member/tpl/js/design_config.js
Normal file
24
modules/member/tpl/js/design_config.js
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
/* 멤버 스킨 컬러셋 구해옴 */
|
||||
function doGetSkinColorset(skin) {
|
||||
var params = {skin:skin};
|
||||
var response_tags = ['error','message','tpl'];
|
||||
|
||||
function on_complete(ret) {
|
||||
jQuery('#colorset').show();
|
||||
var $colorset = jQuery('#member_colorset'), old_h, new_h;
|
||||
|
||||
old_h = $colorset.height();
|
||||
$colorset.html(ret.tpl);
|
||||
new_h = $colorset.height();
|
||||
|
||||
try{ fixAdminLayoutFooter(new_h - old_h) }catch(e){ };
|
||||
}
|
||||
|
||||
exec_xml(
|
||||
'member',
|
||||
'getMemberAdminColorset',
|
||||
{skin:skin},
|
||||
on_complete,
|
||||
['error','message','tpl']
|
||||
);
|
||||
}
|
||||
|
|
@ -1,3 +1,7 @@
|
|||
/**
|
||||
* Deprecate this file.
|
||||
*
|
||||
*/
|
||||
/* 사용자 추가 */
|
||||
function completeInsert(ret_obj) {
|
||||
var error = ret_obj['error'];
|
||||
|
|
|
|||
|
|
@ -1,28 +1,3 @@
|
|||
/* 멤버 스킨 컬러셋 구해옴 */
|
||||
function doGetSkinColorset(skin) {
|
||||
var params = {skin:skin};
|
||||
var response_tags = ['error','message','tpl'];
|
||||
|
||||
function on_complete(ret) {
|
||||
jQuery('#colorset').show();
|
||||
var $colorset = jQuery('#member_colorset'), old_h, new_h;
|
||||
|
||||
old_h = $colorset.height();
|
||||
$colorset.html(ret.tpl);
|
||||
new_h = $colorset.height();
|
||||
|
||||
try{ fixAdminLayoutFooter(new_h - old_h) }catch(e){ };
|
||||
}
|
||||
|
||||
exec_xml(
|
||||
'member',
|
||||
'getMemberAdminColorset',
|
||||
{skin:skin},
|
||||
on_complete,
|
||||
['error','message','tpl']
|
||||
);
|
||||
}
|
||||
|
||||
/* 금지아이디 관련 작업들 */
|
||||
function doUpdateDeniedID(user_id, mode, message) {
|
||||
if(typeof(message)!='undefined'&&!confirm(message)) return;
|
||||
|
|
@ -62,25 +37,8 @@ function doUpdateDeniedNickName(nick_name, mode, message)
|
|||
|
||||
jQuery(function($){
|
||||
// hide form if enable_join is setted "No"
|
||||
var suSetting = $('fieldset.suSetting'); // 회원가입 설정
|
||||
var suForm = $('fieldset.suForm'); // 회원가입 양식
|
||||
var isEnable = suSetting.find(':radio[name=enable_join]:checked').val();
|
||||
if (isEnable == 'N'){
|
||||
suSetting.find('>ul>li:gt(0)').hide();
|
||||
suForm.hide();
|
||||
}
|
||||
var suForm = $('table.__join_form'); // 회원가입 양식
|
||||
|
||||
suSetting.find(':radio[name=enable_join]').change(function(){
|
||||
if($('#enable_join_yes').is(':checked')){
|
||||
// 회원 가입을 허용하지 않는 경우 불필요한 항목을 모두 감춘다
|
||||
suSetting.find('>ul>li:gt(0)').slideDown(200);
|
||||
suForm.slideDown(200);
|
||||
} else {
|
||||
// 회원 가입을 허용하는 경우 필요한 항목을 모두 펼친다
|
||||
suSetting.find('>ul>li:gt(0)').slideUp(200);
|
||||
suForm.slideUp(200);
|
||||
}
|
||||
});
|
||||
suForm.find(':checkbox[name="usable_list[]"]').each(function(){
|
||||
var $i = $(this);
|
||||
$i.change(function(){
|
||||
|
|
@ -232,13 +190,4 @@ jQuery(function($){
|
|||
}
|
||||
});
|
||||
|
||||
$('.__sync').click(function (){
|
||||
exec_xml(
|
||||
'importer', // module
|
||||
'procImporterAdminSync', // act
|
||||
null,
|
||||
function(ret){if(ret && (!ret.error || ret.error == '0'))alert(ret.message);}, // callback
|
||||
resp = ['error','message'] // response tags
|
||||
);
|
||||
});
|
||||
});
|
||||
51
modules/member/tpl/login_config.html
Normal file
51
modules/member/tpl/login_config.html
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
<include target="header.html" />
|
||||
<form action="./" class="x_form-horizontal" ruleset="insertLoginConfig" method="post">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<input type="hidden" name="act" value="procMemberAdminInsertLoginConfig" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('', 'module', 'admin', 'act', $act)}" />
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="change_password_date">{$lang->change_password_date}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="change_password_date" name="change_password_date" value="{$config->change_password_date}" style="width:30px" /> {$lang->unit_day}
|
||||
<p class="desc">{$lang->about_change_password_date}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<p class="x_control-label">{$lang->enable_login_fail_report}</p>
|
||||
<div class="x_controls">
|
||||
<label class="x_inline" for="enable_login_fail_report_yes"><input type="radio" name="enable_login_fail_report" id="enable_login_fail_report_yes" value="Y" checked="checked"|cond="$config->enable_login_fail_report != 'N'" /> {$lang->cmd_yes}</label>
|
||||
<label class="x_inline" for="enable_join_no"><input type="radio" name="enable_login_fail_report" id="enable_login_fail_report_no" value="N" checked="checked"|cond="$config->enable_login_fail_report == 'N'" /> {$lang->cmd_no}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="max_error_count">{$lang->login_trial_limit1}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="max_error_count" name="max_error_count" value="{$config->max_error_count}" style="width:30px" /> {$lang->unit_count}
|
||||
<p class="desc">{$lang->about_login_trial_limit1}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="max_error_count_time">{$lang->login_trial_limit2}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="max_error_count_time" name="max_error_count_time" value="{$config->max_error_count_time}" style="width:30px" /> {$lang->unit_sec}
|
||||
<p class="desc">{$lang->about_login_trial_limit2}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="after_login_url">{$lang->after_login_url}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="after_login_url" name="after_login_url" value="{$config->after_login_url}" />
|
||||
<p class="desc">{$lang->about_after_login_url}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="after_logout_url">{$lang->after_logout_url}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="after_logout_url" name="after_logout_url" value="{$config->after_logout_url}" />
|
||||
<p class="desc">{$lang->about_after_logout_url}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_clearfix">
|
||||
<span class="x_pull-right"><input class="x_btn x_btn-large x_btn-primary" type="submit" value="{$lang->cmd_save}" /></span>
|
||||
</div>
|
||||
</form>
|
||||
|
|
@ -1,44 +0,0 @@
|
|||
<load target="./../../../common/js/jquery.min.js" usecdn="true" index="-1000000" />
|
||||
<load target="css/mlogin.css" usecdn="true" />
|
||||
<div class="bd">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<div class="hx h2">
|
||||
<h2>{$lang->cmd_login}</h2>
|
||||
</div>
|
||||
<form action="./" method="POST" class="ff">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<input type="hidden" name="act" value="procMemberLogin" />
|
||||
<input type="hidden" name="redirect_url" value="{getUrl('act','')}" />
|
||||
<ul>
|
||||
<li><label for="id"><!--@if($identifier == 'user_id')-->{$lang->user_id}<!--@else-->{$lang->email_address}<!--@end--></label><input name="user_id" type="text" id="id" value="" /></li>
|
||||
<li><label for="pw">{$lang->password}</label><input name="password" type="password" id="pw" value="" /></li>
|
||||
</ul>
|
||||
<div class="message info" id="keep_msg" style="display:none;">
|
||||
<p>{$lang->about_keep_warning}</p>
|
||||
</div>
|
||||
<div class="bna">
|
||||
<div class="fl"><input name="keep_signed" type="checkbox" value="Y" id="autoLogin" /> <label for="autoLogin">{$lang->keep_signed}</label></div>
|
||||
<div class="fr"><button type="submit" class="bn dark">{$lang->cmd_login}</button></div>
|
||||
</div>
|
||||
<ul class="hp">
|
||||
<li><a href="{getUrl('','act','dispMemberFindAccount')}"><span>{$lang->cmd_find_member_account}</span></a></li>
|
||||
<li><a href="{getUrl('','act','dispMemberSignUpForm')}"><span>{$lang->cmd_signup}</span></a></li>
|
||||
</ul>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
jQuery(function($){
|
||||
var keep_msg = $('#keep_msg');
|
||||
keep_msg.hide();
|
||||
$('#autoLogin').change(function(){
|
||||
if($(this).is(':checked')){
|
||||
keep_msg.slideDown(200);
|
||||
} else {
|
||||
keep_msg.slideUp(200);
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
<script>
|
||||
<!--@if($redirect_url)-->
|
||||
location.href = "{$redirect_url}";
|
||||
<!--@else-->
|
||||
location.href = current_url.setQuery('act','');
|
||||
<!--@end-->
|
||||
</script>
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
<load target="js/member_admin.js" usecdn="true" />
|
||||
<h1 class="h1">{$lang->cmd_member_group} ({$lang->target} : {count($member_list)})</h1>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form ruleset="manageMemberGroup" action="./" method="post" id="fo_management">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<input type="hidden" name="act" value="procMemberAdminUpdateMembersGroup" />
|
||||
<input type="hidden" name="member_srl" value="{$member_srls}" />
|
||||
<div class="table">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<tr>
|
||||
<td>
|
||||
<!--@foreach($group_list as $key => $val)-->
|
||||
<!--@if($val->is_admin != 'Y')-->
|
||||
<input type="checkbox" value="{$key}" name="group_srls[]" id="member_group_{$key}"/> <label for="member_group_{$key}">{$val->title}</label> <br/>
|
||||
<!--@end-->
|
||||
<!--@end-->
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="btnArea" cond="count($member_list)">
|
||||
<span class="btn"><input type="submit" value="{$lang->cmd_apply}" /></span>
|
||||
</div>
|
||||
<div class="table">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">{$lang->user_id}</th>
|
||||
<th scope="col">{$lang->nick_name}</th>
|
||||
<th scope="col">{$lang->signup_date}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<!--@foreach($member_list as $key => $val)-->
|
||||
<tr>
|
||||
<td>{$val->user_id}</td>
|
||||
<td><a href="#popup_menu_area" class="member_{$val->member_srl}">{$val->nick_name}</a></td>
|
||||
<td>{zdate($val->regdate, "Y-m-d H:i")}</td>
|
||||
</tr>
|
||||
<!--@end-->
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
|
@ -1,312 +0,0 @@
|
|||
<load target="js/member_admin_config.js" usecdn="true" />
|
||||
<load target="../../editor/tpl/js/editor_module_config.js" usecdn="true" />
|
||||
<script>
|
||||
xe.lang.msg_delete_extend_form = '{$lang->msg_delete_extend_form}';
|
||||
xe.lang.confirm_delete = '{$lang->confirm_delete}';
|
||||
xe.lang.cmd_delete = '{$lang->cmd_delete}';
|
||||
xe.lang.msg_null_prohibited_id = '{$lang->msg_null_prohibited_id}';
|
||||
xe.lang.msg_null_prohibited_nick_name = '{$lang->msg_null_prohibited_nick_name}';
|
||||
</script>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
|
||||
<div class="x_page-header">
|
||||
<h1>{$lang->cmd_member_config}</h1>
|
||||
</div>
|
||||
|
||||
<form action="./" class="form" ruleset="insertConfig" method="post">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<input type="hidden" name="act" value="procMemberAdminInsertConfig" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('act', $act)}" />
|
||||
<input type="hidden" name="agreement" value="{$config->agreement}" />
|
||||
<section class="section">
|
||||
<h1>{$lang->cmd_module_config}</h1>
|
||||
<div>
|
||||
<div class="x_control-group">
|
||||
<p>{$lang->enable_join}</p>
|
||||
<div class="x_controls">
|
||||
<label class="x_inline" for="enable_join_yes"><input type="radio" name="enable_join" id="enable_join_yes" value="Y" checked="checked"|cond="$config->enable_join == 'Y'" /> {$lang->cmd_yes}</label>
|
||||
<label class="x_inline" for="enable_join_no"><input type="radio" name="enable_join" id="enable_join_no" value="N" checked="checked"|cond="$config->enable_join != 'Y'" /> {$lang->cmd_no}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<p>{$lang->enable_confirm}</p>
|
||||
<div class="x_controls">
|
||||
<label class="x_inline" for="enable_confirm_yes"><input type="radio" name="enable_confirm" id="enable_confirm_yes" value="Y" checked="checked"|cond="$config->enable_confirm == 'Y'" /> {$lang->cmd_yes}</label>
|
||||
<label class="x_inline" for="enable_confirm_no"><input type="radio" name="enable_confirm" id="enable_confirm_no" value="N" checked="checked"|cond="$config->enable_confirm != 'Y'"/> {$lang->cmd_no}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="webmaster_name">{$lang->webmaster_name}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="webmaster_name" name="webmaster_name" value="{$config->webmaster_name}" size="20" />
|
||||
<p class="desc">{$lang->about_webmaster_name}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="webmaster_email">{$lang->webmaster_email}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="webmaster_email" name="webmaster_email" value="{$config->webmaster_email}" size="40" />
|
||||
<p class="desc">{$lang->about_webmaster_email}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="limit_day">{$lang->limit_day}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="limit_day" name="limit_day" value="{$config->limit_day}" style="width:30px" /><span class="desc">{$lang->unit_day}({$lang->about_limit_day})</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="change_password_date">{$lang->change_password_date}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="change_password_date" name="change_password_date" value="{$config->change_password_date}" style="width:30px" /><span class="desc">{$lang->unit_day}({$lang->about_change_password_date})</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<p>{$lang->enable_login_fail_report}</p>
|
||||
<div class="x_controls">
|
||||
<label class="x_inline" for="enable_login_fail_report_yes"><input type="radio" name="enable_login_fail_report" id="enable_login_fail_report_yes" value="Y" checked="checked"|cond="$config->enable_login_fail_report != 'N'" /> {$lang->cmd_yes}</label>
|
||||
<label class="x_inline" for="enable_join_no"><input type="radio" name="enable_login_fail_report" id="enable_login_fail_report_no" value="N" checked="checked"|cond="$config->enable_login_fail_report == 'N'" /> {$lang->cmd_no}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="max_error_count">{$lang->login_trial_limit1}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="max_error_count" name="max_error_count" value="{$config->max_error_count}" style="width:30px" /><span class="desc">{$lang->about_login_trial_limit1}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="max_error_count_time">{$lang->login_trial_limit2}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="max_error_count_time" name="max_error_count_time" value="{$config->max_error_count_time}" style="width:30px" /><span class="desc">{$lang->unit_sec}({$lang->about_login_trial_limit2})</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="agreement">{$lang->agreement}</label>
|
||||
<div class="x_controls">{$editor}</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="after_login_url">{$lang->after_login_url}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="after_login_url" name="after_login_url" value="{$config->after_login_url}" />
|
||||
<p class="desc">{$lang->about_after_login_url}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="after_logout_url">{$lang->after_logout_url}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="after_logout_url" name="after_logout_url" value="{$config->after_logout_url}" />
|
||||
<p class="desc">{$lang->about_after_logout_url}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="redirect_url">{$lang->redirect_url}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="redirect_url" name="redirect_url" value="{$config->redirect_url}" />
|
||||
<p class="desc">{$lang->about_redirect_url}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="prohibited_nick_name">{$lang->cmd_manage_nick_name}({sprintf($lang->count_manage_nick_name, count($deniedNickNames))})</label>
|
||||
<div class="x_controls">
|
||||
<ul class="textList" id="deniedNickNameList">
|
||||
<li loop="$deniedNickNames=>$nicknameInfo" id="denied_{$nicknameInfo->nick_name}">{$nicknameInfo->nick_name} <a href="#" class="side" onclick="doUpdateDeniedNickName('{$nicknameInfo->nick_name}','delete','{$lang->confirm_delete}');return false;">{$lang->delete}</a></li>
|
||||
</ul>
|
||||
<textarea rows="8" cols="42" id="prohibited_nick_name" title="{$lang->add_prohibited_id}"></textarea>
|
||||
<span class="btn"><button type="button" class="_addDeniedNickName">{$lang->add}</button></span>
|
||||
<span class="desc">{$lang->multi_line_input}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group" cond="$useUserID">
|
||||
<label for="prohibited_id">{$lang->cmd_manage_id}({sprintf($lang->count_manage_id, count($deniedIDs))})</label>
|
||||
<div class="x_controls">
|
||||
<ul class="textList" id="deniedList">
|
||||
<li loop="$deniedIDs=>$denied_info" id="denied_{$denied_info->user_id}">{$denied_info->user_id} <a href="#" class="side" onclick="doUpdateDeniedID('{$denied_info->user_id}','delete','{$lang->confirm_delete}');return false;">{$lang->delete}</a></li>
|
||||
</ul>
|
||||
<textarea rows="8" cols="42" id="prohibited_id" title="{$lang->add_prohibited_id}"></textarea>
|
||||
<span class="btn"><button type="button" class="_addDeniedID">{$lang->add}</button></span>
|
||||
<span class="desc">{$lang->multi_line_input}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section class="section">
|
||||
<h1>{$lang->cmd_set_design_info}</h1>
|
||||
<div>
|
||||
<div class="x_control-group">
|
||||
<label for="layout">{$lang->layout}</label>
|
||||
<div class="x_controls">
|
||||
<select id="layout" name="layout_srl">
|
||||
<option value="0">{$lang->notuse}</option>
|
||||
<option loop="$layout_list => $key,$val" value="{$val->layout_srl}" selected="selected"|cond="$val->layout_srl == $config->layout_srl">{$val->title} ({$val->layout})</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="skin">{$lang->skin}</label>
|
||||
<div class="x_controls">
|
||||
<select id="skin" name="skin" onchange="doGetSkinColorset(this.options[this.selectedIndex].value)">
|
||||
<option loop="$skin_list=>$key,$val" value="{$key}" selected="selected"|cond="$config->skin==$key">{$val->title} ({$key})</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div id="colorset" class="x_control-group" style="display:none"|cond="!$config->colorset">
|
||||
<label for="member_colorset">{$lang->colorset}</label>
|
||||
<div class="x_controls"><div id="member_colorset"></div></div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="mlayout">{$lang->mobile_layout}</label>
|
||||
<div class="x_controls">
|
||||
<select id="mlayout" name="mlayout_srl">
|
||||
<option value="0">{$lang->notuse}</option>
|
||||
<option loop="$mlayout_list => $key,$val" value="{$val->layout_srl}" selected="selected"|cond="$val->layout_srl == $config->mlayout_srl">{$val->title} ({$val->layout})</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="mskin">{$lang->mobile_skin}</label>
|
||||
<div class="x_controls">
|
||||
<select id="mskin" name="mskin">
|
||||
<option loop="$mskin_list=>$key,$val" value="{$key}" selected="selected"|cond="$config->mskin==$key">{$val->title} ({$key})</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section class="section">
|
||||
<h1>{$lang->cmd_manage_form}</h1>
|
||||
<div>
|
||||
<table class="sortable x_table x_table-striped x_table-hover">
|
||||
<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>{$lang->about_identifier}</p>
|
||||
</div>
|
||||
</th>
|
||||
<th scope="col">{$lang->use}</th>
|
||||
<th scope="col">{$lang->cmd_required}/{$lang->cmd_optional}</th>
|
||||
<th scope="col">{$lang->public}
|
||||
[<a href="#helpPublic" class="tgAnchor">?</a>]
|
||||
<div class="tgContent layer" id="helpPublic" style="right:0">
|
||||
<p>{$lang->about_public_item}</p>
|
||||
</div>
|
||||
</th>
|
||||
<th scope="col" class="text">{$lang->description}</th>
|
||||
<th scope="col">{$lang->cmd_edit}</th>
|
||||
</thead>
|
||||
<tbody class="uDrag">
|
||||
{@$fixed_public_list = array('nick_name', 'find_account_question', 'password')}
|
||||
<!--@foreach($config->signupForm as $item)-->
|
||||
<!--@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 class="nowr">
|
||||
<label for="{$item->name}_re" class="x_inline"><input type="radio" id="{$item->name}_re" name="{$item->name}" value="requierd" checked="checked" disabled="disabled" /> {$lang->cmd_required}</label>
|
||||
<label for="{$item->name}_op" class="x_inline"><input type="radio" id="{$item->name}_op" name="{$item->name}" value="option" disabled="disabled" /> {$lang->cmd_optional}</label>
|
||||
</td>
|
||||
<td><input type="checkbox" name="is_{$item->name}_public" value="Y" checked="checked"|cond="$item->isPublic == 'Y'"/></td>
|
||||
<td class="text"> </td>
|
||||
<td> </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>
|
||||
<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 class="nowr">
|
||||
<label for="{$item->name}_re" class="x_inline"><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" /> {$lang->cmd_required}</label>
|
||||
<label for="{$item->name}_op" class="x_inline"><input type="radio" id="{$item->name}_op" name="{$item->name}" value="option" checked="checked"|cond="!$item->mustRequired && ($item->isUse && !$item->required)" disabled="disabled"|cond="$item->mustRequired || !$item->isUse" /> {$lang->cmd_optional}</label>
|
||||
<div cond="$item->imageType" class="_subItem">
|
||||
<label for="{$item->name}_max_width" class="x_inline">{$lang->cmd_image_max_width}<input type="text" name="{$item->name}_max_width" id="{$item->name}_max_width" value="{$item->max_width}" style="width:30px" /> px</label>
|
||||
/
|
||||
<label for="{$item->name}_max_height" class="x_inline">{$lang->cmd_image_max_height}<input type="text" name="{$item->name}_max_height" id="{$item->name}_max_height" value="{$item->max_height}" style="width:30px" /> px</label>
|
||||
</div>
|
||||
<div cond="$item->name == 'signature'" style="padding-top:10px">
|
||||
<select id="signature_editor" name="signature_editor_skin" onchange="getEditorSkinColorList(this.value)">
|
||||
<!--@foreach($editor_skin_list as $editor_skin)-->
|
||||
<option value="{$editor_skin}" selected="selected"|cond="$editor_skin==$config->signature_editor_skin">{$editor_skin}</option>
|
||||
<!--@end-->
|
||||
</select>
|
||||
<select name="sel_editor_colorset" id="sel_editor_colorset" style="display:none">
|
||||
</select>
|
||||
<script>//<![CDATA[
|
||||
getEditorSkinColorList('{$config->signature_editor_skin}','{$config->sel_editor_colorset}');
|
||||
//]]></script>
|
||||
</div>
|
||||
</td>
|
||||
<td><input type="checkbox" name="is_{$item->name}_public" value="Y" checked="checked"|cond="$item->isPublic == 'Y'" disabled="disabled"|cond="in_array($item->name, $fixed_public_list) || !$item->isUse" /></td>
|
||||
<td class="text"> </td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<!--@else-->
|
||||
<tr>
|
||||
<input type="hidden" name="list_order[]" value="{$item->name}" />
|
||||
<input type="hidden" name="{$item->name}_member_join_form_srl" value="{$item->member_join_form_srl}" />
|
||||
<th scope="row">
|
||||
<div class="wrap">
|
||||
<button type="button" class="dragBtn">Move to</button>
|
||||
<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 class="nowr">
|
||||
<label for="{$item->name}_re" class="x_inline"><input type="radio" id="{$item->name}_re" name="{$item->name}" value="required" checked="checked"|cond="$item->required" disabled="disabled"|cond="!$item->isUse"/> {$lang->cmd_required}</label>
|
||||
<label for="{$item->name}_op" class="x_inline"><input type="radio" id="{$item->name}_op" name="{$item->name}" value="option" checked="checked"|cond="$item->isUse && !$item->required" disabled="disabled"|cond="!$item->isUse" /> {$lang->cmd_optional}</label>
|
||||
</td>
|
||||
<td><input type="checkbox" name="is_{$item->name}_public" value="Y" checked="checked"|cond="$item->isPublic == 'Y'" disabled="disabled"|cond="!$item->isUse" /></td>
|
||||
<td class="text">{$item->description}</td>
|
||||
<td id="{$item->member_join_form_srl}" class="nowr"><a href="#userDefine" class="modalAnchor _extendFormEdit">{$lang->cmd_edit}</a> | <a href="#" class="_extendFormDelete">{$lang->cmd_delete}</a></td>
|
||||
</tr>
|
||||
<!--@end-->
|
||||
<!--@end-->
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="x_clearfix">
|
||||
<span class="x_pull-right"><a href="#userDefine" class="modalAnchor _extendFormEdit x_btn">{$lang->add_extend_form}...</a></span>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<div class="x_clearfix">
|
||||
<span class="x_pull-right"><input class="x_btn x_btn-large x_btn-primary" type="submit" value="{$lang->cmd_save}" /></span>
|
||||
</div>
|
||||
</form>
|
||||
<section class="section">
|
||||
<h1>{$lang->cmd_member_sync}</h1>
|
||||
<div>
|
||||
<input type="button" value="{$lang->cmd_member_sync}" class="__sync x_btn x_btn-warning" />
|
||||
<p class="description">{$lang->about_member_sync}</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div class="x_modal" id="userDefine">
|
||||
<form action="./" class="x_form-horizontal" ruleset="insertJoinForm" method="post">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<input type="hidden" name="act" value="procMemberAdminInsertJoinForm" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('act', $act)}" />
|
||||
<div id="extendForm">
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<script>
|
||||
jQuery(function() { doGetSkinColorset("{$config->skin}"); });
|
||||
</script>
|
||||
|
|
@ -1,80 +0,0 @@
|
|||
{@ Context::loadFile(array("./common/js/jquery.js", 'head', '', -100000), true) }
|
||||
{@ Context::loadFile(array("./common/js/js_app.js", 'head', '', -100000), true) }
|
||||
{@ Context::loadFile(array("./common/js/common.js", 'head', '', -100000), true) }
|
||||
{@ Context::loadFile(array("./common/js/xml_handler.js", 'head', '', -100000), true) }
|
||||
{@ Context::loadFile(array("./common/js/xml_js_filter.js", 'head', '', -100000), true) }
|
||||
|
||||
|
||||
<load target="css/msignup.css" usecdn="true" />
|
||||
<div class="bd">
|
||||
<h2 class="h2">{$lang->cmd_view_member_info}</h2>
|
||||
<h3 class="h3">{$lang->member_default_info}</h3>
|
||||
<form action="" method="post">
|
||||
<fieldset class="sn">
|
||||
<ul>
|
||||
<li><label for="uname" class="db fb al">{$lang->user_name}</label><div id="uname">{htmlspecialchars($member_info->user_name)}</div></li>
|
||||
<li><label for="nname" class="db fb al">{$lang->nick_name}</label><div id="nname">{htmlspecialchars($member_info->nick_name)}</div></li>
|
||||
<!--@if($member_info->profile_image->src)-->
|
||||
<li><label for="pimage" class="db fb al">{$lang->profile_image}</label><div id="pimage"><img src="{$member_info->profile_image->src}" border="0" alt="profile_image" /></div></li>
|
||||
<!--@end-->
|
||||
<!--@if($member_info->image_name->src)-->
|
||||
<li><label for="image_name" class="db fb al">{$lang->image_name}</label><div id="image_name"><img src="{$member_info->image_name->src}" border="0" alt="image_name" /></div></li>
|
||||
<!--@end-->
|
||||
<!--@if($member_info->image_mark->src)-->
|
||||
<li><label for="image_mark" class="db fb al">{$lang->image_mark}</label><div id="image_mark"><img src="{$member_info->image_mark->src}" border="0" alt="image_mark" /></div></li>
|
||||
<!--@end-->
|
||||
<li><label for="hpage" class="db fb al">{$lang->homepage}</label><div id="hpage">{htmlspecialchars($member_info->homepage)}</div></li>
|
||||
<li><label for="bpage" class="db fb al">{$lang->blog}</label><div id="bpage">{htmlspecialchars($member_info->blog)}</div></li>
|
||||
<li><label for="bday" class="db fb al">{$lang->birthday}</label><div id="bday"><!--@if($member_info->birthday)-->{zdate($member_info->birthday,"Y-m-d")}<!--@end--></div></li>
|
||||
<!--@if($member_info->signature)-->
|
||||
<li><label for="sign" class="db fb al">{$lang->signature}</label><div>{$member_info->signature}</div></li>
|
||||
<!--@end-->
|
||||
<li><label for="group" class="db fb al">{$lang->member_group}</label><div><!--@foreach($member_info->group_list as $key => $val)-->{$val} <!--@end--></div></li>
|
||||
<li><label for="sdate" class="db fb al">{$lang->signup_date}</label><div id="sdate">{zdate($member_info->regdate,"Y-m-d H:i")}</div></li>
|
||||
<!--@if($member_info->member_srl == $logged_info->member_srl || $logged_info->is_admin == 'Y' )-->
|
||||
<li><label for="llogin" class="db fb al">{$lang->last_login}</label><div>{zdate($member_info->last_login,"Y-m-d H:i")}</div></li>
|
||||
<!--@end-->
|
||||
</ul>
|
||||
</fieldset>
|
||||
<!--@if($extend_form_list)-->
|
||||
<h3 class="h3">{$lang->member_extend_info}</h3>
|
||||
<fieldset class="sn">
|
||||
<ul>
|
||||
<!--@foreach($extend_form_list as $key => $val)-->
|
||||
<li><label class="db fb al">{htmlspecialchars($val->column_title)}</label>
|
||||
<!--@if($val->is_private)-->
|
||||
<span class="privateItem">{$lang->private}</span>
|
||||
<!--@else-->
|
||||
<!--@if($val->column_type=='tel' && $val->value[0] && $val->value[1] && $val->value[2])-->
|
||||
{htmlspecialchars($val->value[0])}
|
||||
<!--@if($val->value[1])-->-<!--@end-->
|
||||
{htmlspecialchars($val->value[1])}
|
||||
<!--@if($val->value[2])-->-<!--@end-->
|
||||
{htmlspecialchars($val->value[2])}
|
||||
<!--@elseif($val->column_type=='kr_zip')-->
|
||||
{htmlspecialchars($val->value[0])}<!--@if($val->value[1]&&$val->value[0])--><br /><!--@end-->{htmlspecialchars($val->value[1])}
|
||||
<!--@elseif($val->column_type=='checkbox' && is_array($val->value))-->
|
||||
{htmlspecialchars(implode(", ",$val->value))}
|
||||
<!--@elseif($val->column_type=='date' && $val->value)-->
|
||||
{zdate($val->value, "Y-m-d")}
|
||||
<!--@else-->
|
||||
{nl2br(htmlspecialchars($val->value))}
|
||||
<!--@end-->
|
||||
</li>
|
||||
<!--@end-->
|
||||
<!--@end-->
|
||||
</ul>
|
||||
</fieldset>
|
||||
<!--@end-->
|
||||
<div class="cm">
|
||||
<li>
|
||||
<!--@if($member_info->member_srl == $logged_info->member_srl)-->
|
||||
<a href="{getUrl('act','dispMemberModifyInfo','member_srl','')}" class="bn"><span>{$lang->cmd_modify_member_info}</span></a>
|
||||
<a href="{getUrl('act','dispMemberModifyPassword','member_srl','')}" class="bn"><span>{$lang->cmd_modify_member_password}</span></a>
|
||||
<a href="{getUrl('act','dispMemberLeave','member_srl','')}" class="bn"><span>{$lang->cmd_leave}</span></a>
|
||||
<!--@end-->
|
||||
<a href="{getUrl('act','','member_srl','')}" class="bn"><span>{$lang->cmd_back}</span></a>
|
||||
</li>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
<load target="css/msignup.css" usecdn="true" />
|
||||
<load target="./../../../common/js/jquery.min.js" usecdn="true" index="-1000000" />
|
||||
<load target="./../../../common/js/xe.min.js" usecdn="true" index="-1000000" />
|
||||
<load target="../skins/default/js/member.js" usecdn="true" />
|
||||
<div class="bd">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<h2 class="h2">{$member_title = $lang->cmd_modify_member_password}</h2>
|
||||
<form id="fo_insert_member" action="./" method="post" class="ff" ruleset="modifyPassword">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<input type="hidden" name="act" value="procMemberModifyPassword" />
|
||||
<input type="hidden" name="mid" value="{$mid}" />
|
||||
<input type="hidden" name="document_srl" value="{$document_srl}" />
|
||||
<input type="hidden" name="page" value="{$page}" />
|
||||
<fieldset class="sn">
|
||||
<ul>
|
||||
<li>
|
||||
<label for="uid" class="db fb al"><!--@if($identifier == 'user_id')-->{$lang->user_id}<!--@else-->{$lang->email_address}<!--@end--></label>
|
||||
<div id="uid"><!--@if($identifier == 'user_id')-->{htmlspecialchars($member_info->user_id)}<!--@else-->{htmlspecialchars($member_info->email_address)}<!--@end--></div>
|
||||
</li>
|
||||
<li>
|
||||
<label for="cpw" class="db fb al">{$lang->current_password}</label>
|
||||
<input type="password" name="current_password" id="cpw" class="itx" />
|
||||
</li>
|
||||
<li>
|
||||
<div><label for="npw1" class="db fb al">{$lang->password1}</label><input type="password" name="password1" id="npw1" class="itx" /></div>
|
||||
<div><label for="npw1" class="db fb al">{$lang->password2}</label><input type="password" name="password2" id="npw2" class="itx" /></div>
|
||||
<p style="color:#666">{$lang->about_password}</p>
|
||||
</li>
|
||||
</ul>
|
||||
</fieldset>
|
||||
<div class="cm">
|
||||
<input type="submit" value="{$lang->cmd_registration}" class="bn dark" />
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
191
modules/member/tpl/signup_config.html
Normal file
191
modules/member/tpl/signup_config.html
Normal file
|
|
@ -0,0 +1,191 @@
|
|||
<include target="header.html" />
|
||||
<load target="js/signup_config.js" />
|
||||
<load target="../../editor/tpl/js/editor_module_config.js" usecdn="true" />
|
||||
<script>
|
||||
xe.lang.msg_delete_extend_form = '{$lang->msg_delete_extend_form}';
|
||||
xe.lang.confirm_delete = '{$lang->confirm_delete}';
|
||||
xe.lang.cmd_delete = '{$lang->cmd_delete}';
|
||||
xe.lang.msg_null_prohibited_id = '{$lang->msg_null_prohibited_id}';
|
||||
xe.lang.msg_null_prohibited_nick_name = '{$lang->msg_null_prohibited_nick_name}';
|
||||
</script>
|
||||
<form action="./" class="x_form-horizontal" method="post">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<input type="hidden" name="act" value="procMemberAdminInsertSignupConfig" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('act', $act)}" />
|
||||
<input type="hidden" name="agreement" value="{$config->agreement}" />
|
||||
<div class="x_control-group">
|
||||
<p class="x_control-label">{$lang->enable_confirm}</p>
|
||||
<div class="x_controls">
|
||||
<label class="x_inline" for="enable_confirm_yes"><input type="radio" name="enable_confirm" id="enable_confirm_yes" value="Y" checked="checked"|cond="$config->enable_confirm == 'Y'" /> {$lang->cmd_yes}</label>
|
||||
<label class="x_inline" for="enable_confirm_no"><input type="radio" name="enable_confirm" id="enable_confirm_no" value="N" checked="checked"|cond="$config->enable_confirm != 'Y'"/> {$lang->cmd_no}</label>
|
||||
<p class="desc">{$lang->about_enable_confirm}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="limit_day">{$lang->limit_day}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="limit_day" name="limit_day" value="{$config->limit_day}" style="width:30px" /> {$lang->unit_day}
|
||||
<p class="desc">{$lang->about_limit_day}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="prohibited_nick_name">{$lang->cmd_manage_nick_name}</label>
|
||||
<div class="x_controls">
|
||||
<p>{sprintf($lang->count_manage_nick_name, count($deniedNickNames))}</p>
|
||||
<ul class="textList" id="deniedNickNameList" style="margin-left:0">
|
||||
<li loop="$deniedNickNames=>$nicknameInfo" id="denied_{$nicknameInfo->nick_name}">{$nicknameInfo->nick_name} <a href="#" class="side" onclick="doUpdateDeniedNickName('{$nicknameInfo->nick_name}','delete','{$lang->confirm_delete}');return false;">{$lang->delete}</a></li>
|
||||
</ul>
|
||||
<textarea rows="5" cols="42" id="prohibited_nick_name" title="{$lang->add_prohibited_id}"></textarea>
|
||||
<span class="btn"><button type="button" class="_addDeniedNickName x_btn">{$lang->add}</button></span>
|
||||
<p class="desc">{$lang->multi_line_input}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group" cond="$useUserID">
|
||||
<label class="x_control-label" for="prohibited_id">{$lang->cmd_manage_id}</label>
|
||||
<div class="x_controls">
|
||||
<p>{sprintf($lang->count_manage_id, count($deniedIDs))}</p>
|
||||
<ul class="textList" id="deniedList" style="margin-left:0">
|
||||
<li loop="$deniedIDs=>$denied_info" id="denied_{$denied_info->user_id}">{$denied_info->user_id} <a href="#" class="side" onclick="doUpdateDeniedID('{$denied_info->user_id}','delete','{$lang->confirm_delete}');return false;">{$lang->delete}</a></li>
|
||||
</ul>
|
||||
<textarea rows="5" cols="42" id="prohibited_id" title="{$lang->add_prohibited_id}"></textarea>
|
||||
<span class="btn"><button type="button" class="_addDeniedID x_btn">{$lang->add}</button></span>
|
||||
<p class="desc">{$lang->multi_line_input}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="redirect_url">{$lang->redirect_url}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" id="redirect_url" name="redirect_url" value="{$config->redirect_url}" />
|
||||
<p class="desc">{$lang->about_redirect_url}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="agreement">{$lang->agreement}</label>
|
||||
<div class="x_controls">{$editor}</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<p class="x_control-label">{$lang->cmd_manage_form}</p>
|
||||
<div class="x_controls">
|
||||
<table class="__join_form sortable x_table x_table-striped x_table-hover">
|
||||
<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>{$lang->about_identifier}</p>
|
||||
</div>
|
||||
</th>
|
||||
<th scope="col">{$lang->use}</th>
|
||||
<th scope="col">{$lang->cmd_required}/{$lang->cmd_optional}</th>
|
||||
<th scope="col">{$lang->public}
|
||||
[<a href="#helpPublic" class="tgAnchor">?</a>]
|
||||
<div class="tgContent layer" id="helpPublic" style="right:0">
|
||||
<p>{$lang->about_public_item}</p>
|
||||
</div>
|
||||
</th>
|
||||
<th scope="col" class="text">{$lang->description}</th>
|
||||
<th scope="col">{$lang->cmd_edit}</th>
|
||||
</thead>
|
||||
<tbody class="uDrag">
|
||||
{@$fixed_public_list = array('nick_name', 'find_account_question', 'password')}
|
||||
<!--@foreach($config->signupForm as $item)-->
|
||||
<!--@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 class="nowr">
|
||||
<label for="{$item->name}_re" class="x_inline"><input type="radio" id="{$item->name}_re" name="{$item->name}" value="requierd" checked="checked" disabled="disabled" /> {$lang->cmd_required}</label>
|
||||
<label for="{$item->name}_op" class="x_inline"><input type="radio" id="{$item->name}_op" name="{$item->name}" value="option" disabled="disabled" /> {$lang->cmd_optional}</label>
|
||||
</td>
|
||||
<td><input type="checkbox" name="is_{$item->name}_public" value="Y" checked="checked"|cond="$item->isPublic == 'Y'"/></td>
|
||||
<td class="text"> </td>
|
||||
<td> </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>
|
||||
<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 class="nowr">
|
||||
<label for="{$item->name}_re" class="x_inline"><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" /> {$lang->cmd_required}</label>
|
||||
<label for="{$item->name}_op" class="x_inline"><input type="radio" id="{$item->name}_op" name="{$item->name}" value="option" checked="checked"|cond="!$item->mustRequired && ($item->isUse && !$item->required)" disabled="disabled"|cond="$item->mustRequired || !$item->isUse" /> {$lang->cmd_optional}</label>
|
||||
<div cond="$item->imageType" class="_subItem">
|
||||
<label for="{$item->name}_max_width" class="x_inline">{$lang->cmd_image_max_width}<input type="text" name="{$item->name}_max_width" id="{$item->name}_max_width" value="{$item->max_width}" style="width:30px" /> px</label>
|
||||
/
|
||||
<label for="{$item->name}_max_height" class="x_inline">{$lang->cmd_image_max_height}<input type="text" name="{$item->name}_max_height" id="{$item->name}_max_height" value="{$item->max_height}" style="width:30px" /> px</label>
|
||||
</div>
|
||||
<div cond="$item->name == 'signature'" style="padding-top:10px">
|
||||
<select id="signature_editor" name="signature_editor_skin" onchange="getEditorSkinColorList(this.value)">
|
||||
<!--@foreach($editor_skin_list as $editor_skin)-->
|
||||
<option value="{$editor_skin}" selected="selected"|cond="$editor_skin==$config->signature_editor_skin">{$editor_skin}</option>
|
||||
<!--@end-->
|
||||
</select>
|
||||
<select name="sel_editor_colorset" id="sel_editor_colorset" style="display:none">
|
||||
</select>
|
||||
<script>//<![CDATA[
|
||||
getEditorSkinColorList('{$config->signature_editor_skin}','{$config->sel_editor_colorset}');
|
||||
//]]></script>
|
||||
</div>
|
||||
</td>
|
||||
<td><input type="checkbox" name="is_{$item->name}_public" value="Y" checked="checked"|cond="$item->isPublic == 'Y'" disabled="disabled"|cond="in_array($item->name, $fixed_public_list) || !$item->isUse" /></td>
|
||||
<td class="text"> </td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<!--@else-->
|
||||
<tr>
|
||||
<input type="hidden" name="list_order[]" value="{$item->name}" />
|
||||
<input type="hidden" name="{$item->name}_member_join_form_srl" value="{$item->member_join_form_srl}" />
|
||||
<th scope="row">
|
||||
<div class="wrap">
|
||||
<button type="button" class="dragBtn">Move to</button>
|
||||
<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 class="nowr">
|
||||
<label for="{$item->name}_re" class="x_inline"><input type="radio" id="{$item->name}_re" name="{$item->name}" value="required" checked="checked"|cond="$item->required" disabled="disabled"|cond="!$item->isUse"/> {$lang->cmd_required}</label>
|
||||
<label for="{$item->name}_op" class="x_inline"><input type="radio" id="{$item->name}_op" name="{$item->name}" value="option" checked="checked"|cond="$item->isUse && !$item->required" disabled="disabled"|cond="!$item->isUse" /> {$lang->cmd_optional}</label>
|
||||
</td>
|
||||
<td><input type="checkbox" name="is_{$item->name}_public" value="Y" checked="checked"|cond="$item->isPublic == 'Y'" disabled="disabled"|cond="!$item->isUse" /></td>
|
||||
<td class="text">{$item->description}</td>
|
||||
<td id="{$item->member_join_form_srl}" class="nowr"><a href="#userDefine" class="modalAnchor _extendFormEdit">{$lang->cmd_edit}</a> | <a href="#" class="_extendFormDelete">{$lang->cmd_delete}</a></td>
|
||||
</tr>
|
||||
<!--@end-->
|
||||
<!--@end-->
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="x_clearfix">
|
||||
<span class="x_pull-right"><a href="#userDefine" class="modalAnchor _extendFormEdit x_btn">{$lang->add_extend_form}...</a></span>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<div class="x_clearfix">
|
||||
<span class="x_pull-right"><input class="x_btn x_btn-large x_btn-primary" type="submit" value="{$lang->cmd_save}" /></span>
|
||||
</div>
|
||||
</form>
|
||||
<div class="x_modal" id="userDefine">
|
||||
<form action="./" class="x_form-horizontal" ruleset="insertJoinForm" method="post">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<input type="hidden" name="act" value="procMemberAdminInsertJoinForm" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('act', $act)}" />
|
||||
<div id="extendForm">
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
|
@ -1,78 +0,0 @@
|
|||
<load target="./../../../common/js/jquery.min.js" usecdn="true" index="-1000000" />
|
||||
<load target="./../../../common/js/xe.min.js" usecdn="true" index="-1000000" />
|
||||
<load target="css/msignup.css" usecdn="true" />
|
||||
<load target="js/signup_check.js" usecdn="true" />
|
||||
<!--%load_js_plugin("ui")-->
|
||||
<!--%load_js_plugin("ui.datepicker")-->
|
||||
<div class="bd">
|
||||
<div class="hx h2">
|
||||
<h2>{$lang->cmd_signup}</h2>
|
||||
</div>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form ruleset="@insertMember" id="fo_insert_member" class="ff" action="./" method="post" enctype="multipart/form-data">
|
||||
<input type="hidden" name="module" value="member" />
|
||||
<input type="hidden" name="act" value="procMemberInsert" />
|
||||
<!--@if(!$is_logged && $member_config->agreement)-->
|
||||
<div class="agreement">
|
||||
<div class="text">
|
||||
{$member_config->agreement}
|
||||
</div>
|
||||
<div class="confirm">
|
||||
<input type="checkbox" name="accept_agreement" value="Y" id="accept_agree" />
|
||||
<label for="accept_agree">{$lang->about_accept_agreement}</label>
|
||||
</div>
|
||||
</div>
|
||||
<!--@end-->
|
||||
<ul>
|
||||
<li>
|
||||
<label for="{$identifierForm->name}">{$identifierForm->title} <em style="color:red">*</em></label>
|
||||
<input type="text" name="{$identifierForm->name}" id="{$identifierForm->name}" value="{$identifierForm->value}" />
|
||||
</li>
|
||||
<li>
|
||||
<label for="password">{$lang->password} <em style="color:red">*</em></label>
|
||||
<input type="password" name="password" id="password" value=""/>
|
||||
</li>
|
||||
<li>
|
||||
<label for="password2">{$lang->password3} <em style="color:red">*</em></label>
|
||||
<input type="password" name="password2" id="password2" value=""/>
|
||||
</li>
|
||||
<block loop="$formTags=>$formTag" cond="$formTag->name != 'signature'">
|
||||
<li>
|
||||
<label>{$formTag->title}</label>
|
||||
{$formTag->inputTag}
|
||||
</li>
|
||||
</block>
|
||||
<li>
|
||||
<label>{$lang->allow_mailing}</label>
|
||||
<input type="radio" name="allow_mailing" id="mailingYes" value="Y" checked="checked"|cond="$member_info->allow_mailing == 'Y'" /> <label for="mailingYes">{$lang->cmd_yes}</label>
|
||||
<input type="radio" name="allow_mailing" id="mailingNo" value="N" checked="checked"|cond="$member_info->allow_mailing != 'Y'" /> <label for="mailingNo">{$lang->cmd_no}</label>
|
||||
</li>
|
||||
<li>
|
||||
<label>{$lang->allow_message}</label>
|
||||
<block loop="$lang->allow_message_type=>$key,$val">
|
||||
<input type="radio" name="allow_message" value="{$key}" checked="checked"|cond="$member_info->allow_message == $key || (!$member_info && $key == 'Y')" id="allow_{$key}" /> <label for="allow_{$key}">{$val}</label>
|
||||
</block>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="bna">
|
||||
<input type="submit" class="bn dark" value="{$lang->cmd_registration}" />
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<script>
|
||||
(function($){
|
||||
$(function(){
|
||||
var option = { changeMonth: true, changeYear: true, gotoCurrent: false,yearRange:'-100:+10', dateFormat:'yy-mm-dd', onSelect:function(){
|
||||
|
||||
$(this).prev('input[type="hidden"]').val(this.value.replace(/-/g,""))}
|
||||
};
|
||||
$.extend(option,$.datepicker.regional['{$lang_type}']);
|
||||
$(".inputDate").datepicker(option);
|
||||
$(".dateRemover").click(function() {
|
||||
$(this).parent().prevAll('input').val('');
|
||||
return false;});
|
||||
});
|
||||
})(jQuery);
|
||||
</script>
|
||||
Loading…
Add table
Add a link
Reference in a new issue