233 lines
15 KiB
Plaintext
233 lines
15 KiB
Plaintext
<%@ Page Title="後端管理" Language="C#" MasterPageFile="~/admin/Templates/TBS5ADM001/MasterPage.master" AutoEventWireup="true" CodeFile="reg.aspx.cs" Inherits="admin_user_reg" %>
|
|
|
|
<%@ Register Src="~/admin/_uc/alert.ascx" TagPrefix="uc1" TagName="alert" %>
|
|
|
|
<asp:Content ID="Content1" ContentPlaceHolderID="footer_script" runat="Server">
|
|
<link href="../../App_Script/bootstrap_toggle/css/bootstrap-toggle.min.css" rel="stylesheet" />
|
|
<script src="../../App_Script/bootstrap_toggle/js/bootstrap-toggle.min.js"></script>
|
|
</asp:Content>
|
|
<asp:Content ID="Content3" ContentPlaceHolderID="page_nav" runat="Server">
|
|
<div class="scroll-nav nav nav-tabs mb-2 mb-sm-0 d-none d-sm-flex">
|
|
</div>
|
|
<div class="">
|
|
<asp:Button ID="edit" runat="server" Text="修改" OnClick="edit_Click" CssClass="btn btn-primary" />
|
|
<asp:Button ID="add" runat="server" Text="新增" OnClick="add_Click" CssClass="btn btn-primary" />
|
|
<asp:Button ID="goback" runat="server" Text="回列表" CausesValidation="false" Visible="false" OnClick="goback_Click" CssClass="btn btn-outline-secondary" />
|
|
</div>
|
|
</asp:Content>
|
|
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
|
|
<uc1:alert runat="server" ID="L_msg" Text="" />
|
|
<div id="content" class="container-fluid">
|
|
<div class="row">
|
|
<div class="col-md-7">
|
|
<div class="card shadow-sm my-3">
|
|
<div class="card-header">
|
|
後端使用者資料
|
|
</div>
|
|
<div class="card-body label-sm-right">
|
|
<div>
|
|
<div class="form-text text-muted">以下 * 欄位為必填欄位</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-2 col-form-label">* 帳號</label>
|
|
<div class="col-sm-10">
|
|
<asp:TextBox ID="UserName" MaxLength="25" runat="server" CssClass="form-control" placeholder="請輸入帳號"></asp:TextBox>
|
|
<asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" ControlToValidate="UserName" Display="Dynamic" ErrorMessage="必填!" SetFocusOnError="true"></asp:RequiredFieldValidator>
|
|
<asp:RegularExpressionValidator ControlToValidate="UserName" Display="Dynamic" SetFocusOnError="true" ErrorMessage="請輸入英文或數字!" ID="RegularExpressionValidator2" runat="server" ValidationExpression="^[A-Za-z0-9]+$" />
|
|
|
|
</div>
|
|
</div>
|
|
<asp:PlaceHolder ID="PlaceHolder3" runat="server">
|
|
<div class="row mb-1">
|
|
<label class="col-sm-2 col-form-label">* 密碼</label>
|
|
<div class="col-sm-10">
|
|
<asp:TextBox ID="Password" MaxLength="25" runat="server" TextMode="Password" CssClass="form-control" placeholder="請輸入密碼"></asp:TextBox>
|
|
<asp:RequiredFieldValidator ID="PasswordRequired" runat="server" ControlToValidate="Password" Display="Dynamic" SetFocusOnError="true" ErrorMessage="必填!"></asp:RequiredFieldValidator>
|
|
<asp:RegularExpressionValidator ControlToValidate="Password" Display="Dynamic" ID="psdRule" runat="server" SetFocusOnError="true" />
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-2 col-form-label">* 確認密碼</label>
|
|
<div class="col-sm-10">
|
|
<asp:TextBox ID="ConfirmPassword" MaxLength="25" runat="server" TextMode="Password" CssClass="form-control" placeholder="再次輸入密碼"></asp:TextBox>
|
|
<asp:RequiredFieldValidator ID="ConfirmPasswordRequired" runat="server" ControlToValidate="ConfirmPassword" ErrorMessage="必填!" Display="Dynamic" SetFocusOnError="true"></asp:RequiredFieldValidator>
|
|
<asp:CompareValidator ID="PasswordCompare" runat="server" ControlToCompare="Password" ControlToValidate="ConfirmPassword" ErrorMessage="密碼和確認密碼必須相符。" Display="Dynamic" SetFocusOnError="true"></asp:CompareValidator>
|
|
</div>
|
|
</div>
|
|
</asp:PlaceHolder>
|
|
|
|
<div class="row mb-1">
|
|
<label class="col-sm-2 col-form-label">* 所屬群組</label>
|
|
<div class="col-sm-10">
|
|
<asp:DropDownList ID="group" runat="server" CssClass="form-select">
|
|
</asp:DropDownList>
|
|
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="group" ErrorMessage="必填!" Display="Dynamic" SetFocusOnError="true"></asp:RequiredFieldValidator>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row mb-1">
|
|
<label class="col-sm-2 col-form-label">* 姓名</label>
|
|
<div class="col-sm-10">
|
|
<asp:TextBox ID="user_name" MaxLength="25" runat="server" CssClass="form-control" placeholder="請輸入姓名"></asp:TextBox>
|
|
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="user_name" ErrorMessage="必填!" Display="Dynamic" SetFocusOnError="true"></asp:RequiredFieldValidator>
|
|
</div>
|
|
</div>
|
|
|
|
<asp:PlaceHolder ID="PlaceHolder1" runat="server" Visible="false">
|
|
|
|
<div class="row mb-1">
|
|
<label class="col-sm-2 col-form-label">* 性別</label>
|
|
<div class="col-sm-10">
|
|
<asp:DropDownList ID="sex" runat="server" CssClass="form-select">
|
|
<asp:ListItem Selected="True" Value="男">男</asp:ListItem>
|
|
<asp:ListItem Value="女">女</asp:ListItem>
|
|
</asp:DropDownList>
|
|
<asp:RequiredFieldValidator ID="RequiredFieldValidator6" runat="server" ControlToValidate="sex" ErrorMessage="必填!" Display="Dynamic" SetFocusOnError="true"></asp:RequiredFieldValidator>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row mb-1">
|
|
<label class="col-sm-2 col-form-label">生日</label>
|
|
<div class="col-sm-10">
|
|
<asp:TextBox ID="birthday" CssClass="form-control datepicker" autocomplete="off" runat="server" Style="width: auto" data-date-format="yyyy-mm-dd"></asp:TextBox>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-2 col-form-label">電話</label>
|
|
<div class="col-sm-10">
|
|
<asp:TextBox ID="phone1" MaxLength="25" runat="server" CssClass="form-control"></asp:TextBox>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-2 col-form-label">行動電話</label>
|
|
<div class="col-sm-10">
|
|
<asp:TextBox ID="phone2" MaxLength="25" runat="server" CssClass="form-control"></asp:TextBox>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-2 col-form-label">E-mail</label>
|
|
<div class="col-sm-10">
|
|
<asp:TextBox ID="email" MaxLength="100" runat="server" CssClass="form-control"></asp:TextBox>
|
|
<asp:RegularExpressionValidator ControlToValidate="email" Display="Dynamic" SetFocusOnError="true" ErrorMessage="格式有誤!" ID="RegularExpressionValidator1" runat="server" ValidationExpression="\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" />
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-2 col-form-label">備註說明</label>
|
|
<div class="col-sm-10">
|
|
<asp:TextBox ID="demo" runat="server" CssClass="form-control"></asp:TextBox>
|
|
|
|
</div>
|
|
</div>
|
|
</asp:PlaceHolder>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-2 col-form-label">* 狀態</label>
|
|
<div class="col-sm-10">
|
|
<label class="col-form-control">
|
|
<input type="checkbox" id="online" runat="server"
|
|
data-toggle="toggle" data-on="啟用" data-off="停權" data-onstyle="success" />
|
|
|
|
</label>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-5">
|
|
<asp:PlaceHolder ID="PlaceHolder2" runat="server" Visible="false">
|
|
<div class="card shadow-sm my-3">
|
|
<div class="card-header">
|
|
密碼變更
|
|
</div>
|
|
<div class="card-body">
|
|
<div class="row mb-1">
|
|
<label class="col-sm-3 col-form-label">* 新密碼</label>
|
|
<div class="col-sm-9">
|
|
<asp:TextBox ID="u_password" MaxLength="25" runat="server" TextMode="Password" CssClass="form-control"></asp:TextBox>
|
|
<asp:RequiredFieldValidator ValidationGroup="chpws" ID="RequiredFieldValidator3" runat="server" ControlToValidate="u_password" ErrorMessage="必填!" Display="Dynamic"></asp:RequiredFieldValidator>
|
|
<asp:RegularExpressionValidator ControlToValidate="u_password" Display="Dynamic" ID="psdRule2" runat="server" SetFocusOnError="true" ValidationGroup="chpws" />
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-3 col-form-label">* 確認密碼</label>
|
|
<div class="col-sm-9">
|
|
<asp:TextBox ID="u_password2" MaxLength="25" runat="server" TextMode="Password" CssClass="form-control"></asp:TextBox>
|
|
<asp:RequiredFieldValidator ValidationGroup="chpws" ID="RequiredFieldValidator4" runat="server" ControlToValidate="u_password2" ErrorMessage="必填!" Display="Dynamic"></asp:RequiredFieldValidator>
|
|
<asp:CompareValidator ID="CompareValidator1" runat="server" ControlToCompare="u_password" ControlToValidate="u_password2" ErrorMessage="密碼和確認密碼必須相符。" Display="Dynamic"></asp:CompareValidator>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<div class="col-12">
|
|
<asp:LinkButton ID="chpws_bt" runat="server" ValidationGroup="chpws" OnClick="chpws_bt_Click" CssClass="btn btn-outline-primary"><i class="mdi mdi-key-variant"></i> 變更密碼</asp:LinkButton>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</asp:PlaceHolder>
|
|
</div>
|
|
<div class="col-md-7">
|
|
<div class="card shadow-sm my-3">
|
|
<div class="card-header">
|
|
Google Authenticator 綁定
|
|
</div>
|
|
<div class="card-body">
|
|
<div class="row mb-1">
|
|
<div class="col-md-6">
|
|
<asp:Button ID="btn_bindgen" runat="server" OnClick="btn_bindgen_Click"
|
|
class="btn btn-primary" Text="產生綁定碼"/>
|
|
</div>
|
|
<div class="col-md-6">
|
|
<div class="form-check">
|
|
<asp:CheckBox CssClass=""
|
|
id="chkGauthEnabled" runat="server" Text="啟用"/>
|
|
</div>
|
|
</div>
|
|
<div class="col-12 mt-2">
|
|
<h5>QR-Code</h5>
|
|
<div>
|
|
<asp:Image id="qrcode" runat="server" />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<h5>驗證測試:</h5>
|
|
<label class="col-sm-2 col-form-label">驗證碼</label>
|
|
<div class="col-10">
|
|
<div class="input-group mb-3">
|
|
<asp:TextBox type="text" ID="txtValid" runat="server" CssClass="form-control"
|
|
placeholder="驗證碼" aria-label="驗證碼"/>
|
|
<asp:Button ID="btnValid" runat="server" CssClass="btn btn-primary" Text="驗證" OnClick="btnValid_Click" />
|
|
</div>
|
|
</div>
|
|
<div class="col-12">
|
|
驗證結果:<asp:Label ID="valid_result" runat="server" />
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
|
|
</div>
|
|
<div class="row mb-1">
|
|
<div class="col-12">
|
|
<hr />
|
|
<h5>綁定資訊:</h5>
|
|
<ul>
|
|
<li>使用者帳號: <span> <asp:Literal ID="txtUser" runat="server"></asp:Literal> </span></li>
|
|
<li>網站代號: <span> <asp:Literal ID="txtWebKey" runat="server"></asp:Literal> </span></li>
|
|
<li>使用者密碼: <span> <asp:Literal ID="txtPassword" runat="server"></asp:Literal> </span></li>
|
|
<li>動態密鑰: <span> <asp:Literal ID="txtSecretKey" runat="server"></asp:Literal> </span></li>
|
|
<li>setupCode: <span> <asp:Literal ID="txtSetupCode" runat="server"></asp:Literal> </span></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</asp:Content>
|
|
|