Files
SMANAGE/backup/Manage/PersonalCenter.html

258 lines
13 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html class="x-admin-sm">
<head>
<meta charset="UTF-8">
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<link rel="stylesheet" href="/css/font.css">
<link rel="stylesheet" href="/css/xadmin.css">
<link rel="stylesheet" href="/css/win10ui.css">
<link rel="stylesheet" href="/css/fold.css">
<link rel="stylesheet" href="/css/theme.css">
<script type="text/javascript" src="/js/i18n.js"></script>
<script type="text/javascript" src="https://www.gvsds.com/assets/js/i18n.lib.js"></script>
<script type="text/javascript" src="/lib/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="/js/xadmin.js"></script>
<script>window.breadcrumbs = [{ name: i18n("Home"), url: "" }, { name: i18n("Manage"), url: "" }, { name: i18n("PersonalCenter") }];</script>
<script src="/js/address.bar.js"></script>
<!--<script type="text/javascript" src="./js/fold.js"></script>-->
<!-- 让IE8/9支持媒体查询,从而兼容栅格 -->
<!--[if lt IE 9]>
<script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
<script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<div class="layui-fluid layui-container">
<div class="layui-col-space15">
<div class="layui-col-md10 layui-col-md-offset1">
<h1 data-i18n="PersonalCenter">个人中心</h1>
</div>
</div>
<div class="layui-col-space15">
<div class="layui-col-md10 layui-col-md-offset1">
<div class="layui-card layui-card-round">
<div class="layui-card-header" data-i18n="PersonalInformation">
个人信息
</div>
<div class="layui-card-body">
<div class="layui-col-md4">
<div class="avatar-container">
<img src="https://ugm.gvsds.com/GetCookiesUserHeadPng.api"
class="layui-circle avatar-img" id="Head">
<div class="avatar-overlay" id="UpdateHead" data-i18n="ModifyPicture">修改头像</div>
<input type="file" id="fileInput" style="display: none;" accept="image/*">
</div>
</div>
<div class="layui-col-md7" style="margin: 30px;">
<table class="layui-table">
<tbody>
<tr>
<th><span data-i18n="Name">名称</span>:</th>
<td name="UserName"></td>
</tr>
<tr>
<th><span data-i18n="RealName">真名</span>:</th>
<td name="UserRealName"></td>
</tr>
<tr>
<th><span data-i18n="IdentificationCode">身份标识代码(UUID)</span>:</th>
<td name="UserUUID"></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
<div class="layui-col-space15">
<div class="layui-col-md10 layui-col-md-offset1">
<div class="layui-card layui-card-round">
<details>
<summary class="collapse-name" tabindex="-1">
<div class="layui-card-header">
<span data-i18n="PersonalInformation">个人信息</span>
<i class="show-icon iconfont"></i>
</div>
</summary>
<div class="layui-card-body">
<ul class="layui-row">
<li class="layui-col-md12">
<table class="layui-table">
<tbody>
<tr>
<th><span data-i18n="Permissions">权限</span>:</th>
<td name="UserPermissions"></td>
</tr>
<tr>
<th><span data-i18n="PermissionsDescription">权限描述</span>:</th>
<td name="UserStrPermissions"></td>
</tr>
<tr>
<th><span data-i18n="Office">职务</span>:</th>
<td name="UserJob"></td>
</tr>
<tr>
<th><span data-i18n="Position">职务情况</span>:</th>
<td name="UserPosition"></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
</details>
</div>
</div>
</div>
<div class="layui-col-space15">
<div class="layui-col-md10 layui-col-md-offset1">
<div class="layui-card layui-card-round">
<details>
<summary class="collapse-name" tabindex="-1">
<div class="layui-card-header">
<span data-i18n="PointsInformation">积分信息</span>
<i class="show-icon iconfont"></i>
</div>
</summary>
<div class="layui-card-body">
<table class="layui-table">
<tbody>
<tr>
<th><span data-i18n="Integral">积分</span>:</th>
<td name="UserMoneyIntegral"></td>
</tr>
<tr>
<th><span data-i18n="LightCoin">光币</span>:</th>
<td name="UserMoneyLightCoin"></td>
</tr>
<tr>
<th><span data-i18n="BrightCoin">星光币</span>:</th>
<td name="UserMoneyBrightCoin"></td>
</tr>
<tr>
<th><span data-i18n="DarkCoin">暗黑币</span>:</th>
<td name="UserMoneyDarkCoin"></td>
</tr>
</tbody>
</table>
</div>
</details>
</div>
</div>
</div>
<!--<div class="layui-col-md12">
<div class="layui-col-md6">
<div class="layui-card layui-card-round">
<div class="layui-card-header">修改密码</div>
<div class="layui-card-body">
<form class="layui-form" method="post" action="/api/gerp/user/modify-password/">
<div class="layui-form-item">
<label for="old_passwd" class="layui-form-label">
<span class="x-red"></span>旧密码</label>
<div class="layui-input-inline">
<input type="text" id="old_passwd" name="old_passwd" required=""
lay-verify="nikename" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label for="passwd" class="layui-form-label">
<span class="x-red"></span>新密码</label>
<div class="layui-input-inline">
<input type="text" id="passwd1" name="passwd1" required="" lay-verify="nikename"
autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label for="passwd2" class="layui-form-label">
<span class="x-red"></span>确认密码</label>
<div class="layui-input-inline">
<input type="text" id="passwd2" name="passwd2" required="" lay-verify="nikename"
autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label for="L_repass" class="layui-form-label"></label>
<input type="submit" class="layui-btn" lay-filter="add" lay-submit="" text="修改" />
</div>
</form>
<!--<div class="layui-upload">
<button type="button" class="layui-btn" id="test1">上传图片</button>
<div class="layui-upload-list">
<img class="layui-upload-img" id="demo1" width="200px" height="200px"
src="/api/ugm/user-avatar/">
<p id="demoText"></p>
</div>
</div>
</div>
</div>
</div>
</div>-->
<script>
TempLate("/api/gerp/user/idcard/");
TempLate("/api/gerp/user/money/");
document.getElementById('UpdateHead').addEventListener('click', function () {
document.getElementById('fileInput').click();
});
document.getElementById('fileInput').addEventListener('change', async function (e) {
var loadIndex = layer.load(2);
try {
const file = e.target.files[0];
if (!file) return;
if (file.size > 5 * 1024 * 1024) {
throw new Error(i18n('NoMore5MB'));
}
const allowedTypes = ['image/jpeg', 'image/png', 'image/gif'];
if (!allowedTypes.includes(file.type)) {
throw new Error(i18n('OnlyJPEGPNGIF'));
}
await uploadFile(file);
} catch (error) {
Toast.error(i18n('ModifyPictureFailed'), error.message, 5000);
e.target.value = '';
}
reloadImage("Head", "/api/ugm/user-avatar/");
layer.close(loadIndex);
});
async function uploadFile(file) {
try {
const formData = new FormData();
formData.append('file', file);
const headers = {};
const response = await fetch('/api/ugm/modify-avatar/', {
method: 'POST',
body: formData,
headers: headers,
credentials: 'include'
});
if (!response.ok) {
const errorData = await response.json().catch(() => ({}));
throw new Error(errorData.message || i18n('ServerBackStatus') + `: ${response.status}`);
}
const data = await response.json();
if (data.code == 1) {
Toast.success(i18n('ModifyPictureSuccess'), data.msg, 5000);
} else {
Toast.error(i18n('ModifyPictureFailed'), data.msg, 5000);
}
return data;
} catch (error) {
Toast.error(i18n('ModifyPictureFailed'), error, 5000);
throw error;
}
}
function reloadImage(imgId, imgUrl) {
document.getElementById(imgId).src = imgUrl + '?t=' + new Date().getTime();
window.parent.document.getElementById('side-nav-img').src = imgUrl + '?t=' + new Date().getTime();
}
</script>
<style name="welcome_style"></style>
</div>
</body>
</html>