let rank_list = []; $(document).ready(() => { fnLoadRanking(1, true); }); // 랭킹 셀렉트 제어 $('.btn_sel_ranking').on('click', function () { $('.sel_ranking').toggle(); $('.icon_arrow').toggleClass('up'); }); function fnLoadRanking(rank_type, first = false) { $.ajax({ dataType: "json", type: "post", data: { "gid": gid, "rank_type": rank_type, "first": first, }, url: "/rank_list", success: function (data) { strHtml = ''; if (data.rank_type == 3) { $('.r_date').text(''); } else { $('.r_date').text(data.start_date + '~' + data.end_date); } $('.sel_ranking li').removeClass('on'); $('#rank_type_'+data.rank_type).addClass('on'); $('.btn_sel_ranking').html($('#rank_type_'+data.rank_type).text()+''); if (!first) { $('.sel_ranking').toggle(); $('.icon_arrow').toggleClass('up'); } rank_list = data.rank_list; if (data.rank_list.length > 1) { // 2등이 먼저 와라.. [data.rank_list[0], data.rank_list[1]] = [data.rank_list[1], data.rank_list[0]]; for (let i = 0; i < 3; i++) { strHtml += '
  • '; if (data.rank_list.length > i) { strHtml += '
    '; strHtml += '
    '; strHtml += '프로필 이미지'; strHtml += '
    '; strHtml += '' + data.rank_list[i].ranking + ''; if (data.rank_list[i].level !== null) { strHtml += ''+data.rank_list[i].level+''; } if (data.rank_list[i].is_mine == 1) { strHtml += 'my'; } strHtml += '
    '; strHtml += '
    '; strHtml += ''+data.rank_list[i].nick+''; if (data.rank_list[i].group !== null) { strHtml += '['+data.rank_list[i].group+']'; } strHtml += '
    '; strHtml += '
    ' + parseInt(data.rank_list[i].score).toLocaleString() + '
    '; } strHtml += '
  • '; } } else if (data.rank_list.length === 1) { // 1등밖에 없으니까 1등 표시. strHtml += '
  • '; strHtml += '
  • '; strHtml += '
    '; strHtml += '
    '; strHtml += '프로필 이미지'; strHtml += '
    '; strHtml += ''+data.rank_list[0].ranking+''; if (data.rank_list[0].level !== null) { strHtml += ''+data.rank_list[0].level+''; } if (data.rank_list[0].is_mine == 1) { strHtml += 'my'; } strHtml += '
    '; strHtml += '
    '; strHtml += ''+data.rank_list[0].nick+''; if (data.rank_list[0].group !== null) { strHtml += '['+data.rank_list[0].group+']'; } strHtml += '
    '; strHtml += '
    '+parseInt(data.rank_list[0].score).toLocaleString()+'
    '; strHtml += '
  • '; strHtml += '
  • '; } else { if (!mobile) { $('.ranking_wrap').addClass('no_result'); } strHtml += '
    '+first_ranking+'
    '; } $('.award_list').html(strHtml); // 4~ 10등 표시. strHtml = ''; for (let i = 3; i < 10; i++) { if (data.rank_list.length > i) { strHtml += '
  • '; strHtml += '
    '+data.rank_list[i].ranking+'
    '; strHtml += '
    '; strHtml += '
    '; strHtml += '
    '; strHtml += ''+data.rank_list[i].nick+''; if (data.rank_list[i].group !== null) { // 모바일 글자 길면 두줄로 나눠서 출력 if (mobile && data.rank_list[i].nick.length + data.rank_list[i].group.length >= 16) { strHtml += '
    '; } strHtml += '['+data.rank_list[i].group+']'; } strHtml += '
    '; // PC 글자 길면 화살표 추가 if (data.rank_list[i].group !== null && !mobile && data.rank_list[i].nick.length + data.rank_list[i].group.length >= 20) { strHtml += ''; } if (data.rank_list[i].is_mine == 1) { strHtml += 'my'; } strHtml += '
    '; strHtml += '
    '; strHtml += '
    '+parseInt(data.rank_list[i].score).toLocaleString()+'
    '; strHtml += '
  • '; } } $('.txt_list').html(strHtml); // 내 랭킹 표시 if (data.my_rank != null) { $('.my_list .ranking').text(data.my_rank.ranking); $('.my_list .name').text(data.my_rank.nick); $('.my_list .group').text('['+data.my_rank.group+']'); $('.my_list .score').text(Number(data.my_rank.point).toLocaleString()); $('.my_list').show(); $('.ranking_wrap .no_result').hide(); } else { $('.my_list').hide(); $('.ranking_wrap .no_result').show(); } } }); } function fnSetFullName(i, obj) { full_name = rank_list[i]['nick']; full_group = rank_list[i]['group']; obj_name = $('#data_rank_'+i+' .nick_inner .name'); obj_group = $('#data_rank_'+i+' .nick_inner .group'); if ($(obj).hasClass('btn_nick_next')) { obj_name.text(obj_name.text().slice(full_group.length - 15)); $(obj).removeClass('btn_nick_next').addClass('btn_nick_prev'); } else { obj_name.text(full_name); $(obj).addClass('btn_nick_next').removeClass('btn_nick_prev'); } }