Account Settings

Manage your Discover Keyser WV account

ACCOUNT INFO
👤 ADMIN':''?>
📅Joined
🕐Last login:
',array_map('e',$errors))?>
Optional JPG, PNG, GIF, or WebP. Max MB.

CHANGE PASSWORD (leave blank to keep current)

(function(){ const input = document.getElementById('avatarInput'); const canvas = document.getElementById('avatarCanvas'); if (!input || !canvas) return; const ctx = canvas.getContext('2d'); const zoom = document.getElementById('avatarZoom'); const fx = document.getElementById('avatarFocusX'); const fy = document.getElementById('avatarFocusY'); const cx = document.getElementById('avatarCropX'); const cy = document.getElementById('avatarCropY'); const cs = document.getElementById('avatarCropSize'); let img = null; function drawEmpty(){ ctx.clearRect(0,0,240,240); ctx.fillStyle = '#121f38'; ctx.fillRect(0,0,240,240); ctx.strokeStyle = 'rgba(38,244,255,.35)'; ctx.lineWidth = 2; ctx.beginPath(); ctx.arc(120,120,104,0,Math.PI*2); ctx.stroke(); } function redraw(){ if (!img) { drawEmpty(); return; } const z = parseFloat(zoom.value || '1'); const natural = Math.min(img.naturalWidth, img.naturalHeight); const size = Math.max(1, Math.round(natural / z)); const x = Math.round((img.naturalWidth - size) * (parseInt(fx.value,10) / 100)); const y = Math.round((img.naturalHeight - size) * (parseInt(fy.value,10) / 100)); cx.value = x; cy.value = y; cs.value = size; ctx.clearRect(0,0,240,240); ctx.save(); ctx.beginPath(); ctx.arc(120,120,118,0,Math.PI*2); ctx.clip(); ctx.drawImage(img, x, y, size, size, 0, 0, 240, 240); ctx.restore(); ctx.strokeStyle = 'rgba(255,209,102,.9)'; ctx.lineWidth = 2; ctx.beginPath(); ctx.arc(120,120,118,0,Math.PI*2); ctx.stroke(); } input.addEventListener('change', function(){ const file = input.files && input.files[0]; if (!file) { img = null; redraw(); return; } const reader = new FileReader(); reader.onload = function(){ img = new Image(); img.onload = redraw; img.src = reader.result; }; reader.readAsDataURL(file); }); [zoom, fx, fy].forEach(el => el && el.addEventListener('input', redraw)); drawEmpty(); })(); HTML; ?>