문서 편집 권한이 없습니다. 다음 이유를 확인해주세요: 여기에는 다른 사용자의 개인 설정이 포함되어 있기 때문에 이 자바스크립트 문서를 편집할 수 없습니다. 문서의 원본을 보거나 복사할 수 있습니다. // 사용 방법 : 자산의 사용자 자바스크립트 문서에 주석기호 '//'를 빼고 아래 문구를 입력하시면 사용가능합니다. // mw.loader.load('/index.php?title=사용자:Cerulean/userinfo.js&action=raw&ctype=text/javascript'); // Userinfo.js by librewiki [[User:cerulean]] // Original : [[사용자:Utolee90]] //BY-SA-3.0 unported $(document).ready(() => { var wiki_username = mw.config.get('wgTitle').split("/")[0]; var params = { 'action': 'query', list: ['blocks', 'recentchanges', 'users'], utf8: 1, bklimit: '1', rclimit: '1', bkusers: wiki_username, rcuser: wiki_username, ususers: wiki_username, format: 'json', usprop: 'editcount', }, api = new mw.Api(); // api action=query api.get(params).done(function (data) { var bk = data.query.blocks; // 차단 목록 var rc = data.query.recentchanges; //최근 바뀜 목록 var editcount = data.query.users[0].editcount; //편집 횟수 var userinfos = document.createElement('div'); userinfos.id = "user-infos"; userinfos.style.cssText = "display: flex; align-items: center;"; //userinfos.style.opacity = "0"; var image = document.createElement('img'); // image.style.float = "left"; var userinfo = document.createElement('span'); userinfo.style.display = "inline-block"; userinfo.style.padding = "0.4em"; var period = document.createElement('small'); var status = document.createElement('span'); var lastEdit = document.createElement('small'); var userinfoEditCount = document.createElement('span'); document.querySelector('h1').after(userinfos); if (mw.config.get('wgNamespaceNumber') == 2) { if (bk.length != 0) { // 차단 내역이 존재할 때... var bkt = (bk[0].expiry === 'infinity') ? 'infinity' : new Date(bk[0].expiry); var bktstring = (bkt === 'infinity') ? '무기한' : (bkt.getFullYear() + '년 ' + (bkt.getMonth() + 1) + '월 ' + (bkt.getDate()) + '일' + '까지'); image.src = "https://upload.wikimedia.org/wikipedia/commons/thumb/4/42/Stop_x_nuvola.svg/40px-Stop_x_nuvola.svg.png"; image.width = "40"; status.innerText = bktstring + " 차단된 사용자"; period.innerText = ""; } else if (rc.length == 0) { // 최근 바뀜 목록이 없을 때 image.src = "https://image.librewiki.net/f/f9/Ledibug2.png"; image.width = "40"; status.innerText = "3개월 이상 활동하지 않은 사용자"; } else { var x = rc[0].timestamp; // 마지막 편집 시간 확인 var at = new Date(x); //시간 데이터 추출 var now = new Date().getTime(); //현재시간 getTime if (now - at.getTime() <= 3600 * 1000) { // 마지막 편집이 최근 1시간 이후. image.src = "https://image.librewiki.net/4/47/Ledibug-Louis-Fact.png"; image.width = "40"; status.innerText = "편집중 "; lastEdit.innerText = "마지막 편집 : " + at.getHours() + '시 ' + at.getMinutes() + '분 '; } else if (now - at.getTime() <= 24 * 3600 * 1000) { // 마지막 편집이 최근 24시간 이전 image.src = "https://image.librewiki.net/8/8b/Ledibug-Lucy-False.png"; image.width = "40"; status.innerText = "휴식중 "; lastEdit.innerText = "마지막 편집 : " + at.getHours() + '시 ' + at.getMinutes() + '분 '; } else { image.src = "https://image.librewiki.net/8/8b/Ledibug-Lucy-False.png"; image.width = "40"; status.innerText = "휴식중 "; lastEdit.innerText = "마지막 편집 : " + (at.getMonth() + 1) + '월 ' + (at.getDate()) + '일 '; } } userinfoEditCount.className = 'user-info-edit-counter'; userinfoEditCount.style.cssText = 'display: block;'; if (editcount !== undefined) { userinfoEditCount.innerHTML = '편집 횟수 : ' + '<span style="font-style: italic;">' + editcount + '</span> 회'; userinfo.append(userinfoEditCount); //편집 횟수 } userinfo.append(status); //상태 userinfo.append(period); //차단기한 userinfo.append(lastEdit); //마지막 편집 image.onload = function () { userinfos.append(image); // 캐릭터 userinfos.append(userinfo); //유저 정보 문자열 userinfos.animate([{ opacity: 0 }, { opacity: 1 }], 300); }; } }); }) 사용자:하늘/userinfo.js 문서로 돌아갑니다.