zoukankan      html  css  js  c++  java
  • CodingSouls团队项目冲刺-个人概况(6)

    团队冲刺第六天:

    制作修改个人资料功能:

    • user_edit.ejs
    <% this.title = '修改资料'; %>
    <% include header %>
    <div class="padding">
        <div class="ui <% if (error_info === '') { %>success<% } else { %>error<% } %> message" id="error" <% if (error_info === null) { %>hidden<% } %>>
          <% if (error_info !== null) {
              if (error_info === '') error_info = '修改成功。';
          %>
          	<p id="error_info"><%= error_info %></p>
          <% } %>
        </div>
    		<form id="form" action="<%= syzoj.utils.makeUrl(['user', edited_user.id, 'edit']) %>" method="post" onsubmit="return check()">
          <div class="ui form">
          <div class="field">
    	    	<label for="username">用户名</label>
    	    	<input type="text" id="username" name="username" value="<%= edited_user.username %>"<% if (!user.allowedManage) { %> readonly<% } %>>
    	    </div>
          <div class="field">
    	    	<label for="sex">性别</label>
    	    	<select class="ui dropdown" name="sex">
              <option value="0" <%= edited_user.sex == 0 ? 'selected': '' %>>其它</option>
              <option value="1" <%= edited_user.sex == 1 ? 'selected': '' %>>男</option>
              <option value="-1" <%= edited_user.sex == -1 ? 'selected': '' %>>女</option>
            </select>
    	    </div>
    	    <div class="field">
    	    	<label for="email">Email</label>
    	    	<input class="font-content" type="email" id="email" name="email" value="<%= edited_user.email %>"<% if (!user.allowedManage) { %> readonly<% } %>>
    	    </div>
          <div class="inline field">
            <label class="ui header">公开 Email</label>
            <div class="ui toggle checkbox">
              <input id="public_email" name="public_email" type="checkbox" <% if (edited_user.public_email) { %> checked<% } %>>
              <label> </label>
            </div>
    	    </div>
          <div class="inline field">
            <label class="ui header">默认显示格式化后的代码(如果可用)</label>
            <div class="ui toggle checkbox">
              <input id="prefer_formatted_code" name="prefer_formatted_code" type="checkbox" <% if (edited_user.prefer_formatted_code) { %> checked<% } %>>
              <label> </label>
            </div>
          </div>
          <div class="field">
          <label for="information">个性签名</label>
            <textarea class="markdown-edit" rows="5" id="information" name="information"><%= edited_user.information %></textarea>
          </div>
          <div class="field">
          <label class="ui header">密码</label>
            <input type="password" placeholder="原密码(留空则不修改)" name="old_password" id="old_password">
          </div>
          <div class="two fields" id="new_password_field">
            <div class="field">
              <input type="password" placeholder="新密码" name="new_password" id="password1">
            </div>
            <div class="field">
              <input type="password" placeholder="确认密码" id="password2">
            </div>
          </div>
          <%
          let allowedManagePrivilege = user && user.is_admin;
          %>
          <div class="inline field">
            <label class="ui header">权限</label>
            <div class="ui toggle disabled checkbox" style="margin-right: 20px; ">
              <input disabled="disabled" type="checkbox" <% if (edited_user.is_admin) { %> checked<% } %>>
              <label>管理员</label>
            </div>
           
          </div>
          <div style="text-align: center; margin-top: 30px; ">
            <button id="submit_button" type="submit" class="ui blue labeled icon button"><i class="ui icon edit"></i>修改</button>
            <a href="<%= syzoj.utils.makeUrl(['user', edited_user.id]) %>" class="ui labeled icon button"><i class="ui icon angle left"></i>返回</a>
          </div>
          </div>
    		</form>
    	</div>
    </div>
    <script>
    var bakDefine = define;
    define = undefined;
    </script>
    <script src="<%- lib('blueimp-md5/2.10.0/js/md5.min.js') %>"></script>
    <script>
    define = bakDefine;
    </script>
    <script type="text/javascript">
    function make_md5(tag) {
    	if (tag.val()) {
    		tag.val(md5(tag.val() + "syzoj2_xxx"));
    	}
    }
    function check() {
    	old_password = $("#old_password");
    	password1 = $("#password1");
    	password2 = $("#password2");
    	if ($("#old_password").val() && password1.val() != password2.val()) {
    		$("#error").removeClass("success");
    		$("#error").removeClass("error");
    		$("#error").addClass("error");
    		$("#error_info").html("两次输入的密码不一致。");
    		$("#error").show();
    		return false;
    	}
    	make_md5(old_password);
    	make_md5(password1);
    	make_md5(password2);
    
    <% if (allowedManagePrivilege) { %>
      $('.checkbox_privilege').each(function () {
        if ($(this).checkbox('is checked')) {
          var name = $(this).data('name');
    
          var elem = document.createElement('input');
          elem.type = 'hidden';
          elem.value = name;
          elem.name = 'privileges';
          document.getElementById('form').appendChild(elem);
        }
      });
    <% } %>
    
    	return true;
    }
    </script>
    <script>
    $(function () {
    	$('.ui.dropdown:not(.simple)').dropdown();
    });
    </script>
    <% include footer %>
    

    未完待续。。。

  • 相关阅读:
    C# 模拟浏览器请求
    关于获取时间后,时间格式为几天前,几小时前格式转化
    关于通用的C#后台获取前台页面的标签的正则表达式
    关于getHTML()方法和getHtmlAjax()方法 GetHttpLength, 清除HTML标签
    性能测试术语
    聚合报告中90% Line涉及到百分位数的概念
    使用Windows的cmd运行(或通过批处理启动)Python项目(多目录项目)提示找不到模块的解决办法
    OSError: [WinError 6] 句柄无效的解决办法
    python中日志输出重复的解决办法
    截图方法get_screenshot_as_file()注意点
  • 原文地址:https://www.cnblogs.com/52bb/p/12782151.html
Copyright © 2011-2022 走看看