This commit is contained in:
2026-10-30 17:31:26 +08:00
parent cdbdfa9045
commit 3f84b248e2
7 changed files with 142 additions and 175 deletions

View File

@@ -120,7 +120,7 @@
.login-row .login-get{ width: 35%;}
}
</style>
<link rel="stylesheet" href="/static/home/css/login.css?v=3">
<link rel="stylesheet" href="/static/home/css/login.css?v=4">
<body class="login-bg home-layout-page login-page">
<div class="content login-shell">
{include file="public/home_menu" /}
@@ -134,127 +134,23 @@
<input class="login-text login-text2" type="text" name="code" id="code" placeholder="验证码"/>
<input class="login-get" type="button" id="getcode" value="获取验证码"/>
</div>
<div class="login-row login-agreement" style="border: none;">
<div class="login-row login-agreement">
<label class="checkbox-inline">
<input type="checkbox" class="" name="loginchk" value="" required/></label>
<span class="login-agreement__text">我已阅读并接受<a href="#" class="js-layer-modal"
data-target="#termsAlert">《条款与条件》</a>及<a href="#" class="js-layer-modal"
data-target="#privacyAlert">《隐私政策》</a>。</span>
<input type="checkbox" aria-labelledby="login-agreement-text" name="loginchk" value="" required/></label>
<span id="login-agreement-text" class="login-agreement__text">我已阅读并接受<a href="#" class="js-layer-modal"
data-target="#termsAlert">《{:lang('foot.user_agreement')}》</a>及<a href="#" class="js-layer-modal"
data-target="#privacyAlert">《{:lang('foot.privacy_policy')}》</a>。</span>
</div>
<div class="login-row">
<input class="login-btn" type="button" id="dologin" value="立即登录"/>
</div>
</div>
</div>
<!-- Modal terms -->
<div class="modal fade" id="termsAlert" tabindex="-1" role="dialog"
aria-labelledby="modalTermsAlert">
<div class="modal-dialog modal-txt" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" aria-label="关闭"><span
aria-hidden="true">×</span></button>
<h2 class="modal-title" id="myModalLabel">条款与条件</h2>
</div>
<div class="modal-body alert">
<section class="col-sm-12">
<p>
感谢您选择我们的美国签证办理系统。在使用我们的服务之前,请仔细阅读以下条款与条件:
<p> 1. 用户责任:您必须对您提供的信息的准确性和完整性负责。您必须遵守所有适用法律和规定,并且不得以任何方式滥用我们的服务。 </p>
<p> 2. 服务费用:我们的服务可能会收取一定的费用,具体费用标准将在办理过程中告知。请注意,这些费用可能会根据您的签证类型和申请情况而有所不同。 </p>
<p> 3. 申请流程:您需按照我们提供的指导完成签证申请流程。我们将协助您准备所需的文件和材料,并在必要时向您提供支持和建议。 </p>
<p> 4. 审核和审批:最终签证的审核和批准由美国领事馆或使馆负责。我们无法保证您的签证申请一定会被批准,但我们会尽最大努力帮助您准备充分的申请材料。 </p>
<p> 5. 免责声明:我们对因您的签证申请被拒绝而导致的任何损失或后果概不负责。我们也不对因您提供的不准确或不完整信息而导致的后果承担责任。 </p>
<p> 请注意,这些条款与条件可能会根据实际情况进行调整和变更。如果您有任何疑问或需要进一步的帮助,请随时联系我们的客服团队。感谢您的合作! </p>
<p> 请表明您已阅读并了解上述所提供的信息</p>
</section>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default">关闭</button>
</div>
</div>
</div>
<div id="termsAlert" data-title="{:lang('foot.user_agreement')}" style="display: none;">
{:lang('foot.user_agreement_info')}
</div>
<!-- Modal privacy -->
<div class="modal fade" id="privacyAlert" tabindex="-1" role="dialog"
aria-labelledby="modalTermsAlert">
<div class="modal-dialog modal-txt" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" aria-label="关闭"><span
aria-hidden="true">×</span></button>
<h2 class="modal-title" id="myModalLabel">隐私政策</h2>
</div>
<div class="modal-body alert">
<p>
本应用尊重并保护所有使用服务用户的个人隐私权。为了给您提供更准确、更有个性化的服务,本应用会按照本隐私权政策的规定使用和披露您的个人信息。但本应用将以高度的勤勉、审慎义务对待这些信息。除本隐私权政策另有规定外,在未征得您事先许可的情况下,本应用不会将这些信息对外披露或向第三方提供。本应用会不时更新本隐私权政策。
您在同意本应用服务使用协议之时,即视为您已经同意本隐私权政策全部内容。本隐私权政策属于本应用服务使用协议不可分割的一部分。
<h3>1. 适用范围</h3>
<p>(a) 在您注册本应用帐号时,您根据本应用要求提供的个人注册信息;
(b)
在您使用本应用网络服务,或访问本应用平台网页时,本应用自动接收并记录的您的浏览器和计算机上的信息,包括但不限于您的IP地址、浏览器的类型、使用的语言、访问日期和时间、软硬件特征信息及您需求的网页记录等数据;
(c) 本应用通过合法途径从商业伙伴处取得的用户个人数据。
您了解并同意,以下信息不适用本隐私权政策:
(a) 您在使用本应用平台提供的搜索服务时输入的关键字信息;
(b) 本应用收集到的您在本应用发布的有关信息数据,包括但不限于参与活动、成交信息及评价详情;
(c) 违反法律规定或违反本应用规则行为及本应用已对您采取的措施。</p>
<h3>2. 信息使用</h3>
<p>
(a)本应用不会向任何无关第三方提供、出售、出租、分享或交易您的个人信息,除非事先得到您的许可,或该第三方和本应用(含本应用关联公司)单独或共同为您提供服务,且在该服务结束后,其将被禁止访问包括其以前能够访问的所有这些资料。
(b)
本应用亦不允许任何第三方以任何手段收集、编辑、出售或者无偿传播您的个人信息。任何本应用平台用户如从事上述活动,一经发现,本应用有权立即终止与该用户的服务协议。
(c)
为服务用户的目的,本应用可能通过使用您的个人信息,向您提供您感兴趣的信息,包括但不限于向您发出产品和服务信息,或者与本应用合作伙伴共享信息以便他们向您发送有关其产品和服务的信息(后者需要您的事先同意)</p>
<h3>3. 信息披露</h3>
<p>在如下情况下,本应用将依据您的个人意愿或法律的规定全部或部分的披露您的个人信息:
(a) 经您事先同意,向第三方披露;
(b)为提供您所要求的产品和服务,而必须和第三方分享您的个人信息;
(c) 根据法律的有关规定,或者行政或司法机构的要求,向第三方或者行政、司法机构披露;
(d) 如您出现违反中国有关法律、法规或者本应用服务协议或相关规则的情况,需要向第三方披露;
(e) 如您是适格的知识产权投诉人并已提起投诉,应被投诉人要求,向被投诉人披露,以便双方处理可能的权利纠纷;
(f)
在本应用平台上创建的某一交易中,如交易任何一方履行或部分履行了交易义务并提出信息披露请求的,本应用有权决定向该用户提供其交易对方的联络方式等必要信息,以促成交易的完成或纠纷的解决。
(g) 其它本应用根据法律、法规或者网站政策认为合适的披露。</p>
<h3>4. 信息存储和交换</h3>
<p>
本应用收集的有关您的信息和资料将保存在本应用及(或)其关联公司的服务器上,这些信息和资料可能传送至您所在国家、地区或本应用收集信息和资料所在地的境外并在境外被访问、存储和展示。</p>
<h3>5. Cookie的使用</h3>
<p>(a) 在您未拒绝接受cookies的情况下,本应用会在您的计算机上设定或取用cookies
,以便您能登录或使用依赖于cookies的本应用平台服务或功能。本应用使用cookies可为您提供更加周到的个性化服务,包括推广服务。
(b)
您有权选择接受或拒绝接受cookies。您可以通过修改浏览器设置的方式拒绝接受cookies。但如果您选择拒绝接受cookies,则您可能无法登录或使用依赖于cookies的本应用网络服务或功能。
(c) 通过本应用所设cookies所取得的有关信息,将适用本政策。</p>
<h3>6. 信息安全</h3>
<p>(a)
本应用帐号均有安全保护功能,请妥善保管您的用户名及密码信息。本应用将通过对用户密码进行加密等安全措施确保您的信息不丢失,不被滥用和变造。尽管有前述安全措施,但同时也请您注意在信息网络上不存在“完善的安全措施”。
(b) 在使用本应用网络服务进行网上交易时,您不可避免的要向交易对方或潜在的交易对</p>
<h3>7.本隐私政策的更改</h3>
<p>
(a)如果决定更改隐私政策,我们会在本政策中、本公司网站中以及我们认为适当的位置发布这些更改,以便您了解我们如何收集、使用您的个人信息,哪些人可以访问这些信息,以及在什么情况下我们会透露这些信息。
(b)本公司保留随时修改本政策的权利,因此请经常查看。如对本政策作出重大更改,本公司会通过网站通知的形式告知。
方披露自己的个人信息,如联络方式或者邮政地址。请您妥善保护自己的个人信息,仅在必要的情形下向他人提供。如您发现自己的个人信息泄密,尤其是本应用用户名及密码发生泄露,请您立即联络本应用客服,以便本应用采取相应措施。</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default">关闭</button>
</div>
</div>
</div>
<div id="privacyAlert" data-title="{:lang('foot.privacy_policy')}" style="display: none;">
{:lang('foot.privacy_policy_info')}
</div>
<div class="modal fade" id="loginAlert" tabindex="-1" role="dialog"
aria-labelledby="modaloginAlert">
@@ -284,13 +180,13 @@
<script>
function openLayerModal(target) {
var $target = $(target);
var contentHtml = $target.find('.modal-body').html();
layer.open({
type: 1,
title: $target.find('.modal-title').text() || false,
title: $target.attr('data-title'),
shade: true,
area: window.getAgreementLayerArea(),
skin: window.agreementLayerSkin,
content: '<div class="agreement-layer__body">' + contentHtml + '</div>'
content: $target
});
}

View File

@@ -1,5 +1,6 @@
{php}$footer_section = explode('/', strtolower($menu_url ?? ''))[0];{/php}
<div class="evus-foot">
<a class="evus-a" href="{:url('home/detail/index')}">{:lang('menu_apply')}</a>
<a class="evus-a" href="{:url('home/lookup/index')}">{:lang('menu_search')}</a>
<a class="evus-a" href="{:url('home/user/order')}">{:lang('menu_user')}</a>
<a class="evus-a" href="{:url('home/detail/index')}" {eq name="footer_section" value="detail"}aria-current="page"{/eq}>{:lang('menu_apply')}</a>
<a class="evus-a" href="{:url('home/lookup/index')}" {eq name="footer_section" value="lookup"}aria-current="page"{/eq}>{:lang('menu_search')}</a>
<a class="evus-a" href="{:url('home/user/order')}" {if condition="in_array($footer_section, ['user', 'login'], true)"}aria-current="page"{/if}>{:lang('menu_user')}</a>
</div>

View File

@@ -28,51 +28,7 @@
<script charset="UTF-8" id="LA_COLLECT" src="//sdk.51.la/js-sdk-pro.min.js"></script>
<script>LA.init({id:"3RUd6ZreOhSLFHFI",ck:"3RUd6ZreOhSLFHFI"})</script>
<style>
.agreement-layer {
max-width: calc(100vw - 32px);
border-radius: 10px !important;
overflow: hidden;
}
.agreement-layer .layui-layer-title {
box-sizing: border-box;
height: 48px;
padding: 0 44px 0 22px;
line-height: 48px;
font-weight: 600;
}
.agreement-layer .layui-layer-content {
box-sizing: border-box;
max-height: calc(70vh - 96px);
padding: 18px 22px !important;
overflow-y: auto !important;
-webkit-overflow-scrolling: touch;
line-height: 1.8;
}
.agreement-layer .layui-layer-btn {
padding: 0 16px 16px;
}
@media (max-width: 768px) {
.agreement-layer {
max-width: calc(100vw - 28px);
}
.agreement-layer .layui-layer-title {
height: 44px;
padding: 0 42px 0 16px;
line-height: 44px;
font-size: 16px;
}
.agreement-layer .layui-layer-content {
max-height: calc(76vh - 92px);
padding: 14px 16px !important;
font-size: 14px;
line-height: 1.75;
}
.agreement-layer .layui-layer-btn {
padding: 0 12px 14px;
}
}
</style>
<link rel="stylesheet" href="/static/home/css/agreement-layer.css?v=1">
<script>
window.agreementLayerSkin = 'agreement-layer';

View File

@@ -1,4 +1,4 @@
<link rel="stylesheet" href="/static/home/css/site-shell.css?v=20261030-2">
<link rel="stylesheet" href="/static/home/css/site-shell.css?v=20261030-3">
{php}$ac_section = explode('/', strtolower($menu_url ?? ''))[0];{/php}
<div class="ac-topline"><div class="ac-wrap">EVUS 中文登记服务 <span>独立商业服务平台 · 非美国政府网站</span></div></div>
<header class="ac-header{notempty name="ac_legacy_links"} ac-header-services{/notempty}">

View File

@@ -0,0 +1,87 @@
/* Shared by registration, lookup and login agreement dialogs. */
.layui-layer.agreement-layer {
max-width: calc(100vw - 24px);
border: 1px solid #dbe4ed;
border-radius: 16px;
overflow: hidden;
background: #fff;
box-shadow: 0 24px 80px rgba(15, 39, 61, .24);
}
.agreement-layer .layui-layer-title {
box-sizing: border-box;
height: 64px;
padding: 0 68px 0 28px;
border-bottom: 1px solid #e2e9f0;
background: #f5f8fc;
color: #173f62;
font-size: 19px;
font-weight: 600;
line-height: 64px;
}
.agreement-layer .layui-layer-setwin { top: 16px; right: 16px; }
.agreement-layer .layui-layer-setwin .layui-layer-close1 {
width: 32px;
height: 32px;
margin: 0;
border-radius: 50%;
background: #e8eef5;
transition: background .15s;
}
.agreement-layer .layui-layer-close1::before,
.agreement-layer .layui-layer-close1::after {
content: '';
position: absolute;
left: 8px;
top: 15px;
width: 16px;
height: 2px;
border-radius: 1px;
background: #35516b;
transform: rotate(45deg);
}
.agreement-layer .layui-layer-close1::after { transform: rotate(-45deg); }
.agreement-layer .layui-layer-setwin .layui-layer-close1:hover { background: #d8e3ef; }
.agreement-layer a:focus-visible { outline: 2px solid #1677c8; outline-offset: 3px; }
.agreement-layer .layui-layer-content {
box-sizing: border-box;
padding: 24px 28px !important;
overflow-y: auto !important;
overscroll-behavior: contain;
-webkit-overflow-scrolling: touch;
scrollbar-width: thin;
scrollbar-color: #bccbd9 #f6f8fb;
color: #42556a;
font-size: 15px;
line-height: 1.9;
overflow-wrap: anywhere;
}
/* Language entries already wrap their text in a padded div. Avoid doubled margins. */
.agreement-layer .layui-layer-content > div > div[style*="padding"],
.agreement-layer .agreement-layer__body > div[style*="padding"] { padding: 0 !important; }
.agreement-layer .layui-layer-content p { margin: 0 0 16px; line-height: inherit; }
.agreement-layer .layui-layer-content h2,
.agreement-layer .layui-layer-content h3,
.agreement-layer .layui-layer-content h4 {
margin: 24px 0 12px;
color: #173f62;
font-size: 16px;
font-weight: 600;
line-height: 1.6;
}
.agreement-layer .layui-layer-content ul,
.agreement-layer .layui-layer-content ol { margin: 12px 0 20px; padding-left: 24px; }
.agreement-layer .layui-layer-content li { margin: 8px 0; }
.agreement-layer .layui-layer-content a { color: #1768a6; text-decoration: underline; }
.agreement-layer .layui-layer-btn { padding: 12px 24px 16px; border-top: 1px solid #e2e9f0; background: #f8fafc; }
.agreement-layer .layui-layer-btn a { height: 36px; border-radius: 7px; line-height: 36px; }
.agreement-layer .layui-layer-btn .layui-layer-btn0 { border-color: #173f62; background: #173f62; }
@media (max-width: 768px) {
.layui-layer.agreement-layer { border-radius: 12px; }
.agreement-layer .layui-layer-title { height: 58px; padding-left: 20px; font-size: 17px; line-height: 58px; }
.agreement-layer .layui-layer-setwin { top: 13px; right: 14px; }
.agreement-layer .layui-layer-content { padding: 20px !important; font-size: 14px; line-height: 1.85; }
.agreement-layer .layui-layer-content h2,
.agreement-layer .layui-layer-content h3,
.agreement-layer .layui-layer-content h4 { margin-top: 20px; font-size: 15px; }
.agreement-layer .layui-layer-btn { padding: 10px 16px 14px; }
}

View File

@@ -169,15 +169,20 @@
display: flex;
min-height: 0;
align-items: flex-start;
gap: 4px;
gap: 8px;
padding: 8px 0;
border-bottom: 0 !important;
line-height: 1.7;
overflow: visible;
}
.login-page .login-agreement .checkbox-inline {
flex: 0 0 auto;
margin: 3px 0 0;
display: flex;
align-items: center;
height: 24px;
padding: 0;
margin: 0;
line-height: 1;
}
@@ -185,7 +190,7 @@
min-width: 0;
color: #666;
font-size: 14px;
line-height: 1.7;
line-height: 24px;
}
.login-page .login-agreement a {
@@ -194,13 +199,35 @@
white-space: normal;
}
.login-page .checkbox-inline input[type="checkbox"]:checked:before {
border-color: var(--login-blue) !important;
background: var(--login-blue) !important;
.login-page .login-agreement input[type="checkbox"] {
position: relative;
display: block;
width: 20px;
height: 20px;
margin: 0;
padding: 0;
cursor: pointer;
}
.login-page .checkbox-inline input[type="checkbox"]:checked:after {
top: 7px;
.login-page .login-agreement input[type="checkbox"]::before {
position: absolute;
inset: 0;
margin: 0;
border-radius: 3px;
}
.login-page .login-agreement input[type="checkbox"]:checked::before {
border-color: var(--login-blue);
background: var(--login-blue);
}
.login-page .login-agreement input[type="checkbox"]:checked::after {
top: 6px;
}
.login-page .login-agreement input[type="checkbox"]:focus-visible {
outline: 2px solid var(--login-blue);
outline-offset: 3px;
}
.login-page .modal-txt {

View File

@@ -58,7 +58,7 @@ body:has(.ac-header) .evus-foot { display: none; }
body:has(.ac-header) .evus-foot { display: flex; position: fixed; inset: auto 0 0; z-index: 1000; height: auto; padding: 8px 12px calc(8px + env(safe-area-inset-bottom, 0px)); background: #fff; border-top: 1px solid #d8e1e8; }
body:has(.ac-header) .evus-foot::before, body:has(.ac-header) .evus-foot::after { display: none; }
body:has(.ac-header) .evus-foot a { display: flex; justify-content: center; align-items: center; flex: 1; width: auto; height: 42px; margin: 0; padding: 0 8px; color: #23445e; background: #fff; font-size: 13px; line-height: 1.5; border: 0; }
body:has(.ac-header) .evus-foot a:first-child { color: #fff; background: #173f62; border-radius: 4px; }
body:has(.ac-header) .evus-foot a[aria-current="page"] { color: #fff; background: #173f62; border-radius: 4px; }
}
.ac-header-services .ac-brand img { width: 180px; }
.ac-header-services .ac-header-inner { gap: 20px; }