//サービスオプション「規約同意」
var agrementToTerms = {};
agrementToTerms.baseApiUrl = COMMON.format(ClientData.conf_apiUrl(), ClientData.userInfo_accountPath());

//言語、規約情報読み込み
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 {
        COMMON.closeLoading();
        COMMON.showAlert('errorOccurred');
    }
}

//利用規約情報の取得
agrementToTerms.requireTerms = function(){
    var apiData = {};
    var params = {
        sid: COMMON.getSid(),
    };

    const url = agrementToTerms.baseApiUrl + "/requireTerms/";
    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: COMMON.getSid(),
        termsVersion: apiData.termsVersion,
    };
    const url = agrementToTerms.baseApiUrl + "/agreeTerms/";
    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();
    }
}