본문으로 건너뛰기

마이앱 단독 발송 시 미리보기 인증번호 입력·수신거부회원 안내 생략

PHP 8 · GODO26
변경 파일 수: 1개
변경 파일 목록
총 1개
변경 파일 코드
추가삭제
Admin/crm/layer_preview_mobile_send.php+45-41
변경 전layer_preview_mobile_send.php
<?php if ($showAdWarningText === 'y'): ?>
<p class="caution-ad-message">(광고)성 메시지에는 080 수신거부 문구가 필수입니다.</p>
<?php endif; ?>
<div class="message-auth-code-container">
<p class="ncua-modal-content-title">
메시지 인증번호
</p>
<div class="ncua-table ncua-table--vertical">
<table>
<tbody>
<tr>
<th class="ncua-required"><div>인증번호</div></th>
<td>
<div>
<div class="ncua-input ncua-input--xs ncua-input-full-width">
<div class="ncua-input__content">
<div class="ncua-input__field ncua-input__field--xs">
<input name="sendPassword" type="text" value="" placeholder="발송 시에 발급된 인증번호를 입력해 주세요." />
 
 
</div>
</div>
</div>
</div>
</td>
</tr>
</tbody>
</table>
 
 
 
 
</div>
<ul>
<li class="ncua-caution-text">무단으로 메시지 포인트가 사용되지 않도록 메시지 인증번호로 인증 후 발송할 수 있습니다.</li>
<li class="ncua-notice-info">메시지 인증번호는 <a class="ncua-btn ncua-btn--xs ncua-btn--text has-underline" href="https://www.nhn-commerce.com/mygodo/myGodo_shopMain.php" target="_blank">[마이페이지 > 쇼핑몰 관리]</a> 에서 확인할 수 있습니다.</li>
</ul>
</div>
</article>
</div>
<div class="modal-dialog__footer">
</div>
<script type="text/javascript">
const previewPayload = <?= $payloadJson ?>;
 
 
$(document).on('shown.bs.modal', '.modal', function() {
const $slider = $('.js-layer-mobile-preview');
});
 
async function sendMessage() {
// 인증번호 입력 검증
const sendPassword = document.querySelector('input[name="sendPassword"]')?.value?.trim() || '';
if (!sendPassword) {
NCDSValidator.highlight(document.querySelector('input[name="sendPassword"]'));
NCDSAlert({
message: '메시지 인증번호를 입력해 주세요.',
iconType: 'error'
});
return;
}
 
const smsPasswordValidate = await validateSendPassword(sendPassword);
if (!smsPasswordValidate.success) {
NCDSAlert({ message: smsPasswordValidate.message, subMessage: smsPasswordValidate.subMessage, iconType: 'error' });
layer_close();
return;
 
}
 
// 레시피 신규 모드(기존 CRM 그룹 미선택)는 발송 시 그룹이 새로 생성되므로 20개 초과 차단
const isOnlyAgreed = previewPayload.isOnlyAgreeSMSMember ?? true;
 
const targetCounts = getExpectTargetCountSeparated()
if (isOnlyAgreed || targetCounts.rejectedCount === 0) {
await postSendMessage();
} else {
$.post('./layer_reject_recipient_member_info.php', targetCounts)
 
변경 후layer_preview_mobile_send.php
<?php if ($showAdWarningText === 'y'): ?>
<p class="caution-ad-message">(광고)성 메시지에는 080 수신거부 문구가 필수입니다.</p>
<?php endif; ?>
<?php if (!$isPushOnly): ?>
<div class="message-auth-code-container">
<p class="ncua-modal-content-title">
메시지 인증번호
</p>
<div class="ncua-table ncua-table--vertical">
<table>
<tbody>
<tr>
<th class="ncua-required"><div>인증번호</div></th>
<td>
<div>
<div class="ncua-input ncua-input--xs ncua-input-full-width">
<div class="ncua-input__content">
<div class="ncua-input__field ncua-input__field--xs">
<input name="sendPassword" type="text" value="" placeholder="발송 시에 발급된 인증번호를 입력해 주세요." />
</div>
</div>
</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<ul>
<li class="ncua-caution-text">무단으로 메시지 포인트가 사용되지 않도록 메시지 인증번호로 인증 후 발송할 수 있습니다.</li>
<li class="ncua-notice-info">메시지 인증번호는 <a class="ncua-btn ncua-btn--xs ncua-btn--text has-underline" href="https://www.nhn-commerce.com/mygodo/myGodo_shopMain.php" target="_blank">[마이페이지 > 쇼핑몰 관리]</a> 에서 확인할 수 있습니다.</li>
</ul>
</div>
<?php endif; ?>
 
 
 
 
</article>
</div>
<div class="modal-dialog__footer">
</div>
<script type="text/javascript">
const previewPayload = <?= $payloadJson ?>;
const isPushOnly = <?= json_encode($isPushOnly) ?>;
 
$(document).on('shown.bs.modal', '.modal', function() {
const $slider = $('.js-layer-mobile-preview');
});
 
async function sendMessage() {
if (!isPushOnly) {
const sendPassword = document.querySelector('input[name="sendPassword"]')?.value?.trim() || '';
if (!sendPassword) {
NCDSValidator.highlight(document.querySelector('input[name="sendPassword"]'));
NCDSAlert({
message: '메시지 인증번호를 입력해 주세요.',
iconType: 'error'
});
return;
}
 
const smsPasswordValidate = await validateSendPassword(sendPassword);
if (!smsPasswordValidate.success) {
NCDSAlert({ message: smsPasswordValidate.message, subMessage: smsPasswordValidate.subMessage, iconType: 'error' });
layer_close();
return;
}
}
 
// 레시피 신규 모드(기존 CRM 그룹 미선택)는 발송 시 그룹이 새로 생성되므로 20개 초과 차단
const isOnlyAgreed = previewPayload.isOnlyAgreeSMSMember ?? true;
 
const targetCounts = getExpectTargetCountSeparated()
if (isPushOnly || isOnlyAgreed || targetCounts.rejectedCount === 0) {
await postSendMessage();
} else {
$.post('./layer_reject_recipient_member_info.php', targetCounts)