local scene={} local function _setPW() local code=scene.widgetList.code:getText():upper() local password= scene.widgetList.password:getText() local password2=scene.widgetList.password2:getText() if #code~=8 then MES.new('error',text.wrongCode) elseif #password==0 or #password2==0 then MES.new('error',text.noPassword) elseif password~=password2 then MES.new('error',text.diffPassword) else NET.setPW(code,password) end end local function _paste() local t=CLIPBOARD.get() if t then t=STRING.trim(t) if #t==8 and t:match("[0-9]+") then scene.widgetList.code:setText(t) return end end MES.new('warn',text.wrongCode) end function scene.enter() if SCN.args[1] then scene.widgetList.code:setText(SCN.args[1]) end end function scene.keyDown(key,rep) if key=='escape' and not rep then SCN.back() elseif key=='return' or key=='kpenter' then if #scene.widgetList.code:getText()==0 then NET.getCode(USER.email) else _setPW() end elseif key=='v' and love.keyboard.isDown('lctrl','rctrl') then _paste() else return true end end scene.widgetList={ WIDGET.newText{name='title', x=80, y=50,font=70,align='L'}, WIDGET.newInputBox{name='code', x=380, y=170,w=626,h=60,regex="[0-9a-zA-Z]",limit=8}, WIDGET.newKey{name='send', x=640, y=300,w=300,h=80,font=40,code=function() NET.getCode(USER.email) end}, WIDGET.newInputBox{name='password', x=380, y=370,w=626,h=60,secret=true,regex="[ -~]",limit=64}, WIDGET.newInputBox{name='password2',x=380, y=470,w=626,h=60,secret=true,regex="[ -~]",limit=64}, WIDGET.newKey{name='setPW', x=640, y=600,w=350,h=80,font=40,code=_setPW}, WIDGET.newKey{name='paste', x=850, y=300,w=80,font=40,fText=CHAR.icon.import,code=_paste}, WIDGET.newButton{name='back', x=1140,y=640,w=170,h=80,sound='back',font=60,fText=CHAR.icon.back,code=pressKey'escape'}, } return scene