//プロフ編集 //文字系 function profedit() { var acct_id = $('#his-data').attr('use-acct') todo('Updating...') var domain = localStorage.getItem('domain_' + acct_id) var at = localStorage.getItem('acct_' + acct_id + '_at') var start = 'https://' + domain + '/api/v1/accounts/update_credentials' var name = $('#his-name-val').val() var des = $('#his-des-val').val() var httpreq = new XMLHttpRequest() httpreq.open('PATCH', start, true) httpreq.setRequestHeader('Content-Type', 'application/json') httpreq.setRequestHeader('Authorization', 'Bearer ' + at) httpreq.responseType = 'json' httpreq.send( JSON.stringify({ display_name: name, note: des, }) ) httpreq.onreadystatechange = function () { if (httpreq.readyState === 4) { $('#his-data').modal('close') todc() } } } //画像系 function imgChange(imgfile, target) { var acct_id = $('#his-data').attr('use-acct') todo('アップロードしています') if (!imgfile.files.length) { console.warn('No Image to upload') return } var file = imgfile.files[0] var fr = new FileReader() fr.onload = function (evt) { var b64 = this.result var blob = toBlob(b64, 'image/png') var fd = new FormData() fd.append(target, blob) var domain = localStorage.getItem('domain_' + acct_id) var at = localStorage.getItem('acct_' + acct_id + '_at') var start = 'https://' + domain + '/api/v1/accounts/update_credentials' var httpreq = new XMLHttpRequest() httpreq.open('PATCH', start, true) httpreq.upload.addEventListener('progress', progshow, false) httpreq.setRequestHeader('Authorization', 'Bearer ' + at) httpreq.responseType = 'json' httpreq.send(fd) httpreq.onreadystatechange = function () { if (httpreq.readyState === 4) { var json = httpreq.response if (this.status !== 200) { setLog(start, this.status, this.response) } $('#his-data').modal('close') todc() } } } $('#prof-change').html($('#prof-change').html()) $('#header-change').html($('#header-change').html()) fr.readAsDataURL(file) }