Commit 95388d39 by Hayato Kamimura

【規約同意】利用規約画面、画面遷移

parent c344bc51
...@@ -127,5 +127,10 @@ ...@@ -127,5 +127,10 @@
"errorOccured": "Communication error.", "errorOccured": "Communication error.",
"selectData": "Choice", "selectData": "Choice",
"errorSendMsg": "Send failed.", "errorSendMsg": "Send failed.",
"sitePolicy": "Site Policy" "sitePolicy": "Site Policy",
"agrementToTermsTitle": "Terms of Service",
"TermAgree": "Agree",
"TermDisagree": "Disagree",
"msgDisagreeTerm": "Log out and then go to the login screen. Are you okay?"
} }
\ No newline at end of file
...@@ -125,5 +125,10 @@ ...@@ -125,5 +125,10 @@
"errorOccured": "通信エラーです。", "errorOccured": "通信エラーです。",
"selectData": "選択", "selectData": "選択",
"errorSendMsg": "送信に失敗しました。", "errorSendMsg": "送信に失敗しました。",
"sitePolicy": "サイトポリシー" "sitePolicy": "サイトポリシー",
"agrementToTermsTitle": "利用規約",
"TermAgree": "同意する",
"TermDisagree": "同意しない",
"msgDisagreeTerm": "ログアウトされ、ログイン画面に遷移します。よろしいでしょうか?"
} }
\ No newline at end of file
...@@ -124,5 +124,10 @@ ...@@ -124,5 +124,10 @@
"errorOccured": "통신 오류입니다.", "errorOccured": "통신 오류입니다.",
"selectData": "선택", "selectData": "선택",
"errorSendMsg": "전송에 실패했습니다.", "errorSendMsg": "전송에 실패했습니다.",
"sitePolicy": "사이트 정책" "sitePolicy": "사이트 정책",
"agrementToTermsTitle": "이용규약",
"TermAgree": "동의",
"TermDisagree": "동의 안함",
"msgDisagreeTerm": "로그 아웃되어 로그인 화면으로 이동합니다. 실행 하시겠습니까?"
} }
\ No newline at end of file
/*===========================================================
規約同意 2023.05.01.
=============================================================*/
*, :after, :before {
box-sizing: border-box;
}
html, body {
width: 100%;
height: 100%;
background-color: #EBF4FB;
}
html {
font-family: sans-serif;
line-height: 1.15;
-webkit-text-size-adjust: 100%;
-webkit-tap-highlight-color: rgba(0,0,0,0);
}
body {
display: -ms-flexbox;
display: flex;
-ms-flex-align: center;
align-items: center;
margin: 0;
font-family: Helvetica Neue,Helvetica,Arial,游ゴシック体,Yu Gothic,YuGothic,Hiragino Kaku Gothic ProN,Meiryo,Open Sans,sans-serif;
font-size: 1rem;
font-weight: 400;
line-height: 1.5;
color: #69707A;
text-align: left;
}
::-webkit-scrollbar {
width: 8px;
height: 8px;
}
::-webkit-scrollbar-thumb{
background: #c5c5c563;
border-radius: 2px;
}
::-webkit-scrollbar-thumb:hover{
background: #c5c5c5;
}
.tos-wrapper {
position: relative;
display: flex;
flex-direction: column;
width: 100%;
max-width: 960px;
padding: 2rem;
margin: auto;
word-wrap: break-word;
background: #fff;
background-clip: border-box;
border: 1px solid rgba(0,0,0,.125);
border-radius: .25rem;
box-shadow: 0 2px 10px 0 rgb(0 0 0 / 8%);
}
.tos-wrapper .title {
display: flex;
justify-content: space-between;
align-items: baseline;
margin-bottom: 1rem;
}
.tos-wrapper .title h2 {
margin-bottom: 0;
font-size: 20px;
font-weight: 700;
color: #343a40;
}
.tos-wrapper .title .tos-version {
margin-bottom: 0;
font-size: 12px;
color: #333;
}
.tos-wrapper .tos-text {
position: relative;
margin: 0.5rem auto 2rem;
padding: 1rem 1.5rem;
width: 90%;
height: 480px;
text-align: left;
background: #f8f9fa;
word-break: break-word;
overflow-y: auto;
}
.tos-wrapper .tos-text p {
margin-bottom: 1rem;
font-size: 14px;
line-height: 2;
}
.tos-wrapper .btn-wrapper {
position: relative;
display: flex;
justify-content: space-between;
align-items: center;
width: 100%;
margin: 1rem auto;
}
.tos-wrapper .btn-wrapper button.btn {
display: block;
width: 160px;
height: auto;
margin: 10px auto;
padding: 10px 0;
text-decoration: none;
text-align: center;
font-size: 14px;
font-weight: bold;
line-height: 20px;
-moz-border-radius: 6px;
-webkit-border-radius: 6px;
border-radius: 6px;
}
.tos-wrapper .btn-wrapper button.btn.btn-agree {
color: #fff;
background-color: #0053f0;
border-color: #0053f0
}
.tos-wrapper .btn-wrapper button.btn.btn-agree.focus,
.tos-wrapper .btn-wrapper button.btn.btn-agree:focus,
.tos-wrapper .btn-wrapper button.btn.btn-agree:hover {
color: #fff;
background-color: #0046ca;
border-color: #0041bd
}
.tos-wrapper .btn-wrapper button.btn.btn-agree.focus,
.tos-wrapper .btn-wrapper button.btn.btn-agree:focus {
box-shadow: 0 0 0 .2rem rgba(38,109,242,.5)
}
.tos-wrapper .btn-wrapper button.btn.btn-disagree {
color: #fff;
background-color: #6c757d;
border-color: #6c757d
}
.tos-wrapper .btn-wrapper button.btn.btn-disagree.focus,
.tos-wrapper .btn-wrapper button.btn.btn-disagree:focus,
.tos-wrapper .btn-wrapper button.btn.btn-disagree:hover {
color: #fff;
background-color: #5a6268;
border-color: #545b62
}
.tos-wrapper .btn-wrapper button.btn.btn-disagree.focus,
.tos-wrapper .btn-wrapper button.btn.btn-disagree:focus {
box-shadow: 0 0 0 .2rem rgba(130,138,145,.5)
}
@media screen and (max-width: 576px) {
.tos-wrapper {
width: 95%;
max-width: 480px;
padding: 1rem;
}
.tos-wrapper .tos-text {
margin: 0.5rem auto 1.5rem;
padding: 0.5rem 1rem;
}
.tos-wrapper .btn-wrapper button.btn {
width: 120px;
font-size: 12px;
}
}
\ No newline at end of file
<!DOCTYPE html>
<html lang="ja">
<head>
<meta http-equiv="Content-Language" content="ja">
<meta name="google" content="notranslate">
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-store">
<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Expires" content="-1">
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1">
<title class="lang" lang="dspLogin">利用規約同意画面</title>
<!-- favicons -->
<link href="../common/img/favicon.ico" rel="icon">
<link href="../common/img/apple-touch-icon.png" rel="apple-touch-icon">
<!-- main css -->
<link rel="stylesheet" type="text/css" href="../common/css/app.css">
<link rel="stylesheet" type="text/css" href="../common/css/loading.css">
<link rel="stylesheet" type="text/css" href="../common/css/header.css">
<link rel="stylesheet" type="text/css" href="../common/css/style.css">
<link rel="stylesheet" type="text/css" href="../css/agrementToTerms/agrementToTerms.css">
<!-- vender css -->
<link rel="stylesheet" type="text/css" href="../common/css/fontawesome_relative_path.css">
<script type="text/javascript" src="../common/js/jquery/jquery-3.6.0.min.js?__UPDATEID__"></script>
<script type="text/javascript" src="../common/js/jquery/jquery-ui.min.js?__UPDATEID__"></script>
<script type="text/javascript" src="../common/js/i18n.js?__UPDATEID__"></script>
<script src="https://cdn.jsdelivr.net/npm/gasparesganga-jquery-loading-overlay@2.1.7/dist/loadingoverlay.min.js"></script>
<script type="text/javascript" src="../common/js/constant.js?__UPDATEID__"></script>
<script type="text/javascript" src="../common/js/common.js?__UPDATEID__"></script>
<script type="text/javascript" src="../js/login/login.js?__UPDATEID__"></script>
<script type="text/javascript" src="../js/agrementToTerms/agrementToTerms.js"></script>
<script type="text/javascript">
$(document).ready(function(){
agrementToTerms.initAgrement();
})
</script>
</head>
<body>
<div id="loader"></div>
<div class="tos-wrapper">
<div class="title">
<h2 id="termsTitle">利用規約</h2>
<p class="tos-version" id="termsVersion"></p>
</div>
<div class="tos-text">
<p id="agreement"></p>
</div>
<div class="btn-wrapper">
<button class="btn btn-agree" id="agreeTerm" onclick="agrementToTerms.sendAgreeTerms()">同意する</a>
<button class="btn btn-disagree" id="disagreeTerm" onclick="agrementToTerms.disagreeTerm()">同意しない</a>
</div>
</div>
</body>
</html>
\ No newline at end of file
...@@ -31,6 +31,18 @@ ...@@ -31,6 +31,18 @@
<script src="../js/dashboard/dashboard.js?__UPDATEID__"></script> <script src="../js/dashboard/dashboard.js?__UPDATEID__"></script>
<script src="../js/topPage/topPage.js?__UPDATEID__"></script> <script src="../js/topPage/topPage.js?__UPDATEID__"></script>
<script src="../js/reportForm/reportForm.js?__UPDATEID__"></script> <script src="../js/reportForm/reportForm.js?__UPDATEID__"></script>
<script src="../js/agrementToTerms/agrementToTerms.js"></script>
<script type="text/javascript">
$(document).ready(function(){
if(window.performance){
if(window.performance.navigation.type === 1){
agrementToTerms.destinationHtml();
}
}
})
</script>
</head> </head>
<body> <body>
......
...@@ -35,6 +35,7 @@ ...@@ -35,6 +35,7 @@
<script type="text/javascript" src="../common/js/validation.js?__UPDATEID__"></script> <script type="text/javascript" src="../common/js/validation.js?__UPDATEID__"></script>
<script type="text/javascript" src="../js/login/login.js?__UPDATEID__"></script> <script type="text/javascript" src="../js/login/login.js?__UPDATEID__"></script>
<script type="text/javascript" src="../js/agrementToTerms/agrementToTerms.js"></script>
<script type="text/javascript"> <script type="text/javascript">
......
//サービスオプション「規約同意」
var agrementToTerms = {};
//言語、規約情報読み込み
agrementToTerms.initAgrement = function(){
var data = agrementToTerms.requireTerms();
$("#termsTitle").text(I18N.i18nText("agrementToTermsTitle"));
$("#agreeTerm").text(I18N.i18nText("TermAgree"));
$("#disagreeTerm").text(I18N.i18nText("TermDisagree"));
$("#termsVersion").text(data.termsVersion);
$("#agreement").text(data.agreement);
}
//遷移先の決定
agrementToTerms.destinationHtml = function(){
var data = agrementToTerms.requireTerms();
if(data.httpStatus == CONSTANT.HTTP_STATUS.OK){
//公開中バージョンに未同意の場合
if(data.termsVersion || data.agreement){
//利用規約画面に遷移
COMMON.avwScreenMove("agrementToTerms.html");
}else{
//規約同意が設定されていない or 公開中バージョンに同意している
//ホーム画面に遷移
COMMON.avwScreenMove("index.html");
}
}else if(data.httpStatus == CONSTANT.HTTP_STATUS.UNAUTHORIZED){
//401error
}else if(data.httpStatus == CONSTANT.HTTP_STATUS.FORBIDDEN){
//403error
}else if(data.httpStatus == CONSTANT.HTTP_STATUS.SERVER_ERROR){
//500error
}
}
//利用規約情報の取得
agrementToTerms.requireTerms = function(){
var apiData = {};
var params = {
sid: ClientData.userInfo_sid(),
};
const url = COMMON.format(ClientData.conf_apiUrl(), ClientData.userInfo_accountPath()) + "/requireTerms?sid=" + params.sid;
COMMON.cmsAjax(
url,
params,
false,
function(data){
apiData = data;
},
function(xmlHttpRequest, txtStatus, errorThrown){
if(xmlHttpRequest.errorMessage){
COMMON.showAlert(null, {message: xmlHttpRequest.errorMessage});
}else{
COMMON.showAlert("errorOccured");
}
},
);
return apiData;
};
//利用規約情報同意の送信
agrementToTerms.sendAgreeTerms = function(){
var apiData = agrementToTerms.requireTerms();
params = {
sid: ClientData.userInfo_sid(),
termsVersion: apiData.termsVersion,
};
const url = COMMON.format(ClientData.conf_apiUrl(), ClientData.userInfo_accountPath()) + "/agreeTerms?sid=" + params.sid + "&termsVersion=" + params.termsVersion;
COMMON.cmsAjax(
url,
params,
false,
function(data){
//ホーム画面に遷移
COMMON.avwScreenMove("index.html");
},
function(xmlHttpRequest, txtStatus, errorThrown){
if(xmlHttpRequest.errorMessage){
COMMON.showAlert(null, {message: xmlHttpRequest.errorMessage});
}else{
COMMON.showAlert("errorOccured");
}
}
)
}
//利用規約に同意しない
agrementToTerms.disagreeTerm = function(){
if(confirm(I18N.i18nText("msgDisagreeTerm"))){
//ログアウトし、ログイン画面に遷移する
//HEADER.processLogout();
COMMON.avwScreenMove("login.html");
}
}
\ No newline at end of file
...@@ -218,8 +218,8 @@ LOGIN.processLogin = function () { ...@@ -218,8 +218,8 @@ LOGIN.processLogin = function () {
if (data.requirePasswordChange == 0) { if (data.requirePasswordChange == 0) {
ClientData.userInfo_sid(ClientData.userInfo_sid_local()); ClientData.userInfo_sid(ClientData.userInfo_sid_local());
// move to home.html page //利用規約画面に遷移
COMMON.avwScreenMove('index.html'); agrementToTerms.destinationHtml();
} else if (data.requirePasswordChange == 1) { } else if (data.requirePasswordChange == 1) {
$('#getToken').val(data.token); $('#getToken').val(data.token);
if (LOGIN.force_pw_change_on_login == 2) { if (LOGIN.force_pw_change_on_login == 2) {
...@@ -259,8 +259,8 @@ LOGIN.processLogin = function () { ...@@ -259,8 +259,8 @@ LOGIN.processLogin = function () {
// no need to change password // no need to change password
ClientData.userInfo_sid(ClientData.userInfo_sid_local()); ClientData.userInfo_sid(ClientData.userInfo_sid_local());
// move to home.html page //利用規約画面に遷移
COMMON.avwScreenMove('index.html'); agrementToTerms.destinationHtml();
} }
} else if (data.requirePasswordChange == 2) { } else if (data.requirePasswordChange == 2) {
$('#getToken').val(data.token); $('#getToken').val(data.token);
...@@ -282,8 +282,8 @@ LOGIN.processLogin = function () { ...@@ -282,8 +282,8 @@ LOGIN.processLogin = function () {
if (numDay <= 30) { if (numDay <= 30) {
ClientData.userInfo_sid(ClientData.userInfo_sid_local()); ClientData.userInfo_sid(ClientData.userInfo_sid_local());
// move to home.html page //利用規約画面に遷移
COMMON.avwScreenMove('index.html'); agrementToTerms.destinationHtml();
} else if (numDay > 30) { } else if (numDay > 30) {
LOGIN.OpenChangePasswordDialog(); LOGIN.OpenChangePasswordDialog();
$('.ui-dialog-titlebar').hide(); $('.ui-dialog-titlebar').hide();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment