var ajaxAction = function(data, url) {
var returnValue;
$.ajax({ type: "POST", url: "//ad4star.co.kr/action/" + url, data: data, async: false, dataType: 'json' }).done(function(response) { returnValue = response; });
return returnValue;
};
var loading = function(msg){
var html = '
'+
'
'+
'
'+
'
'+msg+'
'+
'
'+
'
'+
'
';
$("body").append(html);
}
var noti = function(title){
}
//인풋체크
var check_input = function(target,msg){
var val = "";
var type = "";
var ret = false;
var tagname = target.prop("tagName").toLowerCase();
if(tagname == "select"){
type = tagname;
}else{
var typename = target.prop("type").toLowerCase();
type = typename;
}
if(type == "text"){
val = target.val();
if(val != "") ret = true;
}else if(type == "select"){
val = target.find("option:selected").val()
if(val != "") ret = true;
}else if(type == "radio"){
target.each(function(i){
if($(this).prop('checked')) ret = true;
});
}else if(type == "checkbox"){
target.each(function(i){
if($(this).prop('checked')) ret = true;
});
}else{
val = target.val();
if(val != "") ret = true;
}
if(ret == false){
$.alert({
title : false,
content: msg,
buttons: { confirm: { text : 'OK', action : function(){ target.focus();} } }
});
return false;
}else{
return true;
}
}
//로그인버튼
$( document ).on( "click", "#login_btn", function() {
var back_url = $("#back_url").val();
if ($("#user_id").val() == "") {
$.alert("이메일 주소를 입력하세요.");
return false;
}
if (validateEmail($("#user_id").val()) == false) {
$.alert("잘못된 이메일입니다.");
return false;
}
if ($("#user_pw").val() == "") {
$.alert("비밀번호를 입력하세요.");
return false;
}
var data = {
"user_id": $("#user_id").val(),
"user_pw": $("#user_pw").val(),
"return_url" : $("#returnUrl").val(),
"login_auto_login" : $("input:checkbox[id=login_auto_login]:checked").val(),
"mode": "login"
};
var res = ajaxAction(data, "loginAction");
if (res.code == "OK") {
//console.log("login "+ $("input:checkbox[id=login_auto_login]:checked").val());
if($("input:checkbox[id=login_auto_login]:checked").val() == "Y"){
localStorage.setItem("auto_login_id", $("#user_id").val());
localStorage.setItem("auto_login_key", res.key);
}
if(res.back_url) location.replace(res.back_url);
// else location.replace('');
} else {
$.alert({
title: false,
content: res.msg,
confirmButtonClass: 'btn-info btn_block',
confirmButton: '확인',
});
}
});
//비밀번호에서 엔터 입력시 로그인처리
$("#user_pw").keypress(function(e) {
if (e.keyCode == 13) $("#login_btn").click();
});
//이메일확인
function validateEmail(txtEmail){
var a = txtEmail;
var filter = /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9]+[a-zA-Z0-9.-]+[a-zA-Z0-9]+.[a-z]{1,4}$/;
if(filter.test(a)){
return true;
}else{
return false;
}
}
//비밀번호체크
function validatePass(id, pass, new_pass, new_pass_re) {
var userID = id;
var password = pass;
var newPassword1 = new_pass;
var newPassword2 = new_pass_re;
var addText = "";
if(pass != "") addText = "새로운";
else addText = "";
if(newPassword1.length == 0){
$.alert({ title: false, content: addText+" 비밀번호를 입력하세요." }); //비밀번호를 입력하세요.
return false;
}
if(newPassword2.length == 0){
$.alert({ title: false, content: addText+" 비밀번호 확인을 입력하세요." }); //비밀번호 확인을 입력하세요.
return false;
}
// 재입력 일치 여부
if (newPassword1 != newPassword2) {
$.alert({ title: false, content: "입력한 두 개의 비밀번호가 서로 일치하지 않습니다." }); //입력한 두 개의 비밀번호가 서로 일치하지 않습니다.
return false;
}
// 길이
if(!/^[a-zA-Z0-9!@#$%^&*()?_~]{6,15}$/.test(newPassword1))
{
$.alert({ title: false, content: "비밀번호는 숫자, 영문, 특수문자 조합으로 6~15자리를 사용해야 합니다." }); //비밀번호는 숫자, 영문, 특수문자 조합으로 6~15자리를 사용해야 합니다.
return false;
}
// 영문, 숫자, 특수문자 2종 이상 혼용
var chk = 0;
if(newPassword1.search(/[0-9]/g) != -1 ) chk ++;
if(newPassword1.search(/[a-z]/ig) != -1 ) chk ++;
if(newPassword1.search(/[!@#$%^&*()?_~]/g) != -1 ) chk ++;
if(chk < 2)
{
$.alert({ title: false, content: "비밀번호는 숫자, 영문, 특수문자를 두가지 이상 혼용하여야 합니다." }); //비밀번호는 숫자, 영문, 특수문자를 두가지이상 혼용하여야 합니다.
return false;
}
// 동일한 문자/숫자 4이상, 연속된 문자
if(/(\w)\1\1\1/.test(newPassword1) || isContinuedValue(newPassword1))
{
$.alert({ title: false, content: "비밀번호에 4자 이상의 연속 또는 반복 문자 및 숫자를 사용하실 수 없습니다." }); //비밀번호에 4자 이상의 연속 또는 반복 문자 및 숫자를 사용하실 수 없습니다.
return false;
}
// 아이디 포함 여부
//if(newPassword1.search(userID)>-1)
//{
// $.alert({ title: false, content: "이메일이 포함된 비밀번호는 사용하실 수 없습니다." }); //이메일이 포함된 비밀번호는 사용하실 수 없습니다.
// return false;
// }
//
if(pass != ""){
// 기존 비밀번호와 새 비밀번호 일치 여부
if (password == newPassword2) {
$.alert({ title: false, content: "기존 비밀번호와 새 비밀번호가 일치합니다." }); //기존 비밀번호와 새 비밀번호가 일치합니다.
return false;
}
}
return true;
}
function setCookie( name, value, expiredays ) { var todayDate = new Date(); todayDate.setDate( todayDate.getDate() + expiredays ); document.cookie = name + "=" + escape( value ) + "; path=/; expires=" + todayDate.toGMTString() + ";" }
function isContinuedValue(value) {
var intCnt1 = 0;
var intCnt2 = 0;
var temp0 = "";
var temp1 = "";
var temp2 = "";
var temp3 = "";
for (var i = 0; i < value.length-3; i++) {
temp0 = value.charAt(i);
temp1 = value.charAt(i + 1);
temp2 = value.charAt(i + 2);
temp3 = value.charAt(i + 3);
if (temp0.charCodeAt(0) - temp1.charCodeAt(0) == 1
&& temp1.charCodeAt(0) - temp2.charCodeAt(0) == 1
&& temp2.charCodeAt(0) - temp3.charCodeAt(0) == 1) {
intCnt1 = intCnt1 + 1;
}
if (temp0.charCodeAt(0) - temp1.charCodeAt(0) == -1
&& temp1.charCodeAt(0) - temp2.charCodeAt(0) == -1
&& temp2.charCodeAt(0) - temp3.charCodeAt(0) == -1) {
intCnt2 = intCnt2 + 1;
}
}
return (intCnt1 > 0 || intCnt2 > 0);
}
//공통 모달경고창
$.fn.alertModal = function(title, mode) {
//
if(mode == "wait"){
var data = { backdrop: 'static', keyboard: false };
$("#btn-check").hide();
$("#alertModal").find(".modal-body").append('');
}else if(mode == 'confirm'){
var data = { show: true };
$('#btn-cancel').show();
$('.btn-check').attr('id', 'btn-check');
$("#alertModalOkBtn").show();
}else{
var data = { show: true };
$('.btn-check').attr('id', '');
$("#alertModalOkBtn").show();
}
$("#alertModal").modal(data);
$("#alertModal").find('.modal-dialog').css({
'margin-top': function () { return (($(window).outerHeight() / 3) - ($(this).outerHeight() / 2)); }
});
$("#alertModalTitle").html(title);
$('#alertModal').on('shown.bs.modal', function (e) {
$(".btn-check").focus();
})
};
var panelBodyShow = function(obj) {
var iconBtn = obj.find(".panelBodyShow").children();
var target = obj.siblings();
if ( target.is( ":hidden" ) ) {
target.slideDown( "fast", function() {
iconBtn.removeClass("icon-down-circle").addClass("icon-up-circle");
});
}else{
target.slideUp( "fast", function() {
iconBtn.removeClass("icon-up-circle").addClass("icon-down-circle");
});
}
};
$( document ).on( "click", ".panelBodyShow", function() {
var obj = $(this).parent().parent();
panelBodyShow(obj);
});
var panelFooterShow = function(obj) {
var target = obj.find(".panel-btn-area");
if(obj.find(".panel-body").is(":hidden")){
obj.find(".panel-body").slideDown( "fast", function() {
obj.find(".panelBodyShow").children().removeClass("icon-down-circle").addClass("icon-up-circle");
});
}
if ( target.is(":hidden") ) {
target.slideDown( "fast", function() {
});
}else{
target.slideUp( "fast", function() {
});
}
};
$( document ).on( "click", ".panelBtn2", function() {
var obj = $(this).parent().parent().parent();
panelFooterShow(obj);
});
//태그제거
var strip_tag = function(str){
return str.replace(/(<([^>]+)>)/ig,"");
};
//배열 중복제거
function unique(array) {
var result = [];
$.each(array, function(index, element) { //배열의 원소수만큼 반복
if ($.inArray(element, result) == -1) { //result 에서 값을 찾는다. //값이 없을경우(-1)
result.push(element); //result 배열에 값을 넣는다.
}
});
return result;
}
//popup
function openPop(url,winnm,width,height,etc_options)
{
var options = "width="+width+",height="+height;
if(etc_options) options += ","+etc_options;
var oWindow = window.open(url,winnm,options);
return oWindow;
}