dezhou_client/lua_probject/base_project/Game/View/LoginViewNew.lua

598 lines
26 KiB
Lua

local PhoneLoginView = import(".PhoneLoginView")
LoginViewNew = {}
local M = {}
--- Create a new LoginViewNew
function LoginViewNew.new()
setmetatable(M, { __index = BaseView })
local self = setmetatable({}, { __index = M })
self.class = "LoginViewNew"
self._full = true
-- self:init()
return self
end
---
--@function [parent=#LoginViewNew] init
--@param self
function M:init()
-- UIPackage.AddPackage("base/login/ui/Login")
--UIPackage.AddPackage("UI/Card")
ViewUtil.PlaySoundBg()
-- self:InitView("ui://Login/Main")
-- self:InitView("base/prefab/ViewLogin.prefab", "base/prefab/ViewLogin")
local view = self._view
local bg = view.transform:GetComponent(typeof(UnityEngine.UI.Image))
bg.sprite = CommonUISprite:GetSprite("bg1")
self.login = view.transform:Find("login")
self.forget_password = view.transform:Find("forget_password")
self.iphone_message = view.transform:Find("iphone_message")
self.setpassword = view.transform:Find("setpassword");
self.register = view.transform:Find("register")
self.login.position = view.transform.position
self.forget_password.position = view.transform.position
self.iphone_message.position = view.transform.position
self.setpassword.position = view.transform.position
self.register.position = view.transform.position
self.login.gameObject:SetActive(true)
self.forget_password.gameObject:SetActive(false)
self.iphone_message.gameObject:SetActive(false)
self.setpassword.gameObject:SetActive(false)
self.register.gameObject:SetActive(false)
local btnChange = view.transform:Find("btnChange")
btnChange = btnChange:GetComponent(typeof(UnityEngine.UI.Button))
LuaUIHelper:AddButtonClick(btnChange, function()
if LanguageManager.GetLanguageType() == LanguageManager.ChineseSim then
LanguageManager.SetLanaguageType(LanguageManager.English)
elseif LanguageManager.GetLanguageType() == LanguageManager.English then
LanguageManager.SetLanaguageType(LanguageManager.ChineseSim)
end
end)
self.login_btnAgree = {}
self.login_btnAgree.btn = self.login:Find("agreement/btnUserAgreement")
self.login_btnAgree.sprites = self.login_btnAgree.btn:GetComponent("LuaUIHelperSprite")
self.login_btnAgree.sprites = self.login_btnAgree.sprites:GetSprites()
self.login_btnAgree.img = self.login_btnAgree.btn:GetComponent(typeof(UnityEngine.UI.Image))
self.login_agreement = {}
self.login_agreement.sprites = self.login:Find("agreement/Image")
self.login_agreement.img = self.login_agreement.sprites:GetComponent(typeof(UnityEngine.UI.Image))
self.login_agreement.sprites = self.login_agreement.sprites:GetComponent("LuaUIHelperSprite")
self.login_agreement.sprites = self.login_agreement.sprites:GetSprites()
self.login_inputemail = self.login:Find("input_email")
self.login_inputemail = self.login_inputemail:GetComponent(typeof(UnityEngine.UI.InputField))
self.login_inputiphone = self.login:Find("input_iphone")
self.login_inputiphone = self.login_inputiphone:GetComponent(typeof(UnityEngine.UI.InputField))
self.login_inputpassword = self.login:Find("inputpassword")
self.login_inputpassword = self.login_inputpassword:GetComponent(typeof(UnityEngine.UI.InputField))
if PlayerPrefs.HasKey("account") then
self.login_inputiphone.text = PlayerPrefs.GetString("account")
self.login_inputpassword.text = PlayerPrefs.GetString("passwd")
end
self.LoginType = 1
self.arr_btnlogin = {}
self.arr_btnlogin[1] = {}
self.arr_btnlogin[2] = {}
self.arr_btnlogin[1].vec = { [1] = { x = 293, y = 36 }, [2] = { x = 340, y = 36 } }
self.arr_btnlogin[2].vec = { [1] = { x = 293, y = 36 }, [2] = { x = 315, y = 36 } }
local login_btnLoginIphone = self.login:Find("btnLoginIphone")
self.arr_btnlogin[1].Animator = login_btnLoginIphone:GetComponent(typeof(UnityEngine.Animator))
self.arr_btnlogin[1].sprites = login_btnLoginIphone:GetComponent("LuaUIHelperSprite")
self.arr_btnlogin[1].sprites = self.arr_btnlogin[1].sprites:GetSprites()
self.arr_btnlogin[1].rectBar = login_btnLoginIphone:Find("imagebar")
self.arr_btnlogin[1].rectBar = self.arr_btnlogin[1].rectBar:GetComponent(typeof(UnityEngine.RectTransform))
self.arr_btnlogin[1].imagesize = login_btnLoginIphone:Find("imagesize")
self.arr_btnlogin[1].imagesize = self.arr_btnlogin[1].imagesize:GetComponent(typeof(UnityEngine.UI.Image))
login_btnLoginIphone = login_btnLoginIphone:GetComponent(typeof(UnityEngine.UI.Button))
LuaUIHelper:AddButtonClick(login_btnLoginIphone, function()
self.LoginType = 1
self.login_inputemail.gameObject:SetActive(false)
self.login_inputiphone.gameObject:SetActive(true)
local inforTemp1 = LuaUIHelper:GetAnimatorAormalizedTime(self.arr_btnlogin[1].Animator, true)
local inforTemp2 = LuaUIHelper:GetAnimatorAormalizedTime(self.arr_btnlogin[2].Animator, false)
if not LuaUIHelper:GetAnimatorIsName(self.arr_btnlogin[1].Animator, "open") then
if inforTemp1 > 1 then
inforTemp1 = 1
inforTemp2 = 1
end
self.arr_btnlogin[1].Animator:Play("open", -1, 1 - inforTemp1)
self.arr_btnlogin[2].Animator:Play("close", -1, 1 - inforTemp2)
else
self.arr_btnlogin[1].Animator:Play("open", -1, 0.5)
end
end)
local login_btnLoginEmail = self.login:Find("btnLoginEmail")
self.arr_btnlogin[2].Animator = login_btnLoginEmail:GetComponent(typeof(UnityEngine.Animator))
self.arr_btnlogin[2].sprites = login_btnLoginEmail:GetComponent("LuaUIHelperSprite")
self.arr_btnlogin[2].sprites = self.arr_btnlogin[2].sprites:GetSprites()
self.arr_btnlogin[2].rectBar = login_btnLoginEmail:Find("imagebar")
self.arr_btnlogin[2].rectBar = self.arr_btnlogin[2].rectBar:GetComponent(typeof(UnityEngine.RectTransform))
self.arr_btnlogin[2].imagesize = login_btnLoginEmail:Find("imagesize")
self.arr_btnlogin[2].imagesize = self.arr_btnlogin[2].imagesize:GetComponent(typeof(UnityEngine.UI.Image))
login_btnLoginEmail = login_btnLoginEmail:GetComponent(typeof(UnityEngine.UI.Button))
LuaUIHelper:AddButtonClick(login_btnLoginEmail, function()
self.LoginType = 2
self.login_inputemail.gameObject:SetActive(true)
self.login_inputiphone.gameObject:SetActive(false)
local inforTemp1 = LuaUIHelper:GetAnimatorAormalizedTime(self.arr_btnlogin[1].Animator, false)
local inforTemp2 = LuaUIHelper:GetAnimatorAormalizedTime(self.arr_btnlogin[2].Animator, true)
if not LuaUIHelper:GetAnimatorIsName(self.arr_btnlogin[2].Animator, "open") then
if inforTemp2 > 1 then
inforTemp1 = 1
inforTemp2 = 1
end
self.arr_btnlogin[1].Animator:Play("close", -1, 1 - inforTemp1)
self.arr_btnlogin[2].Animator:Play("open", -1, 1 - inforTemp2)
else
if LuaUIHelper:GetAnimatorIsName(self.arr_btnlogin[1].Animator, "open") then
self.arr_btnlogin[1].Animator:Play("close", -1, 1 - inforTemp1)
end
self.arr_btnlogin[2].Animator:Play("open", -1, 0.5)
end
end)
local login_btnRegister = self.login:Find("btnRegister")
login_btnRegister = login_btnRegister:GetComponent(typeof(UnityEngine.UI.Button))
LuaUIHelper:AddButtonClick(login_btnRegister, function()
self.login.gameObject:SetActive(false)
self.forget_password.gameObject:SetActive(false)
self.iphone_message.gameObject:SetActive(false)
self.setpassword.gameObject:SetActive(false)
self.register.gameObject:SetActive(true)
self:SetLanguage()
end)
local login_btnNoRemember = self.login:Find("btnNoRemember")
login_btnNoRemember = login_btnNoRemember:GetComponent(typeof(UnityEngine.UI.Button))
LuaUIHelper:AddButtonClick(login_btnNoRemember, function()
self.login.gameObject:SetActive(false)
self.forget_password.gameObject:SetActive(true)
self.iphone_message.gameObject:SetActive(false)
self.setpassword.gameObject:SetActive(false)
self.register.gameObject:SetActive(false)
end)
local login_btnLogin = self.login:Find("btnLogin")
login_btnLogin = login_btnLogin:GetComponent(typeof(UnityEngine.UI.Button))
LuaUIHelper:AddButtonClick(login_btnLogin, function()
-- ViewManager.ChangeView(ViewManager.View_MainNew)
-- ViewUtil.ShowModalWait(self._root_view,"正在登录游戏...")
local loginCtr = ControllerManager.GetController(LoginController)
local account = self:CheckInputIphone()
if not account then
return
end
local passwd = self:CheckInputPasswd()
if not passwd then
return
end
if self.LoginType == 0 then
elseif self.LoginType == 1 then
PlayerPrefs.SetString("account", account)
PlayerPrefs.SetString("passwd", passwd)
loginCtr:IdPasswordLogin(account, passwd, function(res)
-- ViewUtil.CloseModalWait()
if res.ReturnCode ~= 0 then
ViewUtil.ErrorTip(res.ReturnCode, "ID或者密码错误")
return
end
self:LoginResponse(res)
end)
elseif self.LoginType == 2 then
else
end
end)
local register_btnBack = self.register:Find("btnBack")
local register_btnBackbg = register_btnBack:GetComponent(typeof(UnityEngine.UI.Image))
register_btnBackbg.sprite = CommonUISprite:GetSprite("arrow1")
register_btnBack = register_btnBack:GetComponent(typeof(UnityEngine.UI.Button))
LuaUIHelper:AddButtonClick(register_btnBack, function()
self.login.gameObject:SetActive(true)
self.forget_password.gameObject:SetActive(false)
self.iphone_message.gameObject:SetActive(false)
self.setpassword.gameObject:SetActive(false)
self.register.gameObject:SetActive(false)
self:SetLanguage()
end)
local register_btnNext = self.register:Find("btnNext")
register_btnNext = register_btnNext:GetComponent(typeof(UnityEngine.UI.Button))
LuaUIHelper:AddButtonClick(register_btnNext, function()
self.login.gameObject:SetActive(false)
self.forget_password.gameObject:SetActive(false)
self.iphone_message.gameObject:SetActive(false)
self.setpassword.gameObject:SetActive(true)
self.register.gameObject:SetActive(false)
end)
self.register_inputemail = self.register:Find("input_email")
self.register_inputphone = self.register:Find("input_iphone")
self.RegisterType = 1
self.arr_btnRegister = {}
self.arr_btnRegister[1] = {}
self.arr_btnRegister[2] = {}
self.arr_btnRegister[1].vec = { [1] = { x = 293, y = 36, angle = -7.26 }, [2] = { x = 380, y = 36, angle = -4.66 } }
self.arr_btnRegister[2].vec = { [1] = { x = 293, y = 36, angle = -7.26 }, [2] = { x = 380, y = 36, angle = -4.66 } }
local register_btnPhone = self.register:Find("btnIphone")
self.arr_btnRegister[1].Animator = register_btnPhone:GetComponent(typeof(UnityEngine.Animator))
self.arr_btnRegister[1].sprites = register_btnPhone:GetComponent("LuaUIHelperSprite")
self.arr_btnRegister[1].sprites = self.arr_btnRegister[1].sprites:GetSprites()
self.arr_btnRegister[1].rectBar = register_btnPhone:Find("imagebar")
self.arr_btnRegister[1].rectBar = self.arr_btnRegister[1].rectBar:GetComponent(typeof(UnityEngine.RectTransform))
self.arr_btnRegister[1].imagesize = register_btnPhone:Find("imagesize")
self.arr_btnRegister[1].imagesize = self.arr_btnRegister[1].imagesize:GetComponent(typeof(UnityEngine.UI.Image))
register_btnPhone = register_btnPhone:GetComponent(typeof(UnityEngine.UI.Button))
LuaUIHelper:AddButtonClick(register_btnPhone, function()
self.RegisterType = 1
self.register_inputemail.gameObject:SetActive(false)
self.register_inputphone.gameObject:SetActive(true)
local inforTemp1 = LuaUIHelper:GetAnimatorAormalizedTime(self.arr_btnRegister[1].Animator, true)
local inforTemp2 = LuaUIHelper:GetAnimatorAormalizedTime(self.arr_btnRegister[2].Animator, false)
if not LuaUIHelper:GetAnimatorIsName(self.arr_btnRegister[1].Animator, "open") then
if inforTemp1 > 1 then
inforTemp1 = 1
inforTemp2 = 1
end
self.arr_btnRegister[1].Animator:Play("open", -1, 1 - inforTemp1)
self.arr_btnRegister[2].Animator:Play("close", -1, 1 - inforTemp2)
else
self.arr_btnRegister[1].Animator:Play("open", -1, 0.5)
end
end)
local register_btnEmail = self.register:Find("btnEmail")
self.arr_btnRegister[2].Animator = register_btnEmail:GetComponent(typeof(UnityEngine.Animator))
self.arr_btnRegister[2].sprites = register_btnEmail:GetComponent("LuaUIHelperSprite")
self.arr_btnRegister[2].sprites = self.arr_btnRegister[2].sprites:GetSprites()
self.arr_btnRegister[2].rectBar = register_btnEmail:Find("imagebar")
self.arr_btnRegister[2].rectBar = self.arr_btnRegister[2].rectBar:GetComponent(typeof(UnityEngine.RectTransform))
self.arr_btnRegister[2].imagesize = register_btnEmail:Find("imagesize")
self.arr_btnRegister[2].imagesize = self.arr_btnRegister[2].imagesize:GetComponent(typeof(UnityEngine.UI.Image))
register_btnEmail = register_btnEmail:GetComponent(typeof(UnityEngine.UI.Button))
LuaUIHelper:AddButtonClick(register_btnEmail, function()
self.RegisterType = 2
self.register_inputemail.gameObject:SetActive(true)
self.register_inputphone.gameObject:SetActive(false)
local inforTemp1 = LuaUIHelper:GetAnimatorAormalizedTime(self.arr_btnRegister[1].Animator, false)
local inforTemp2 = LuaUIHelper:GetAnimatorAormalizedTime(self.arr_btnRegister[2].Animator, true)
if not LuaUIHelper:GetAnimatorIsName(self.arr_btnRegister[2].Animator, "open") then
if inforTemp2 > 1 then
inforTemp1 = 1
inforTemp2 = 1
end
self.arr_btnRegister[1].Animator:Play("close", -1, 1 - inforTemp1)
self.arr_btnRegister[2].Animator:Play("open", -1, 1 - inforTemp2)
else
self.arr_btnRegister[2].Animator:Play("open", -1, 0.5)
end
end)
local forget_btnNext = self.forget_password:Find("btnNext")
forget_btnNext = forget_btnNext:GetComponent(typeof(UnityEngine.UI.Button))
LuaUIHelper:AddButtonClick(forget_btnNext, function()
self.login.gameObject:SetActive(false)
self.forget_password.gameObject:SetActive(false)
self.iphone_message.gameObject:SetActive(true)
self.setpassword.gameObject:SetActive(false)
self.register.gameObject:SetActive(false)
end)
local forget_btnBack = self.forget_password:Find("btnBack")
local forget_btnBackbg = forget_btnBack:GetComponent(typeof(UnityEngine.UI.Image))
forget_btnBackbg.sprite = CommonUISprite:GetSprite("arrow1")
forget_btnBack = forget_btnBack:GetComponent(typeof(UnityEngine.UI.Button))
LuaUIHelper:AddButtonClick(forget_btnBack, function()
self.login.gameObject:SetActive(true)
self.forget_password.gameObject:SetActive(false)
self.iphone_message.gameObject:SetActive(false)
self.setpassword.gameObject:SetActive(false)
self.register.gameObject:SetActive(false)
end)
local message_btnBack = self.iphone_message:Find("btnBack")
local message_btnBackbg = message_btnBack:GetComponent(typeof(UnityEngine.UI.Image))
message_btnBackbg.sprite = CommonUISprite:GetSprite("arrow1")
message_btnBack = message_btnBack:GetComponent(typeof(UnityEngine.UI.Button))
LuaUIHelper:AddButtonClick(message_btnBack, function()
self.login.gameObject:SetActive(false)
self.forget_password.gameObject:SetActive(true)
self.iphone_message.gameObject:SetActive(false)
self.setpassword.gameObject:SetActive(false)
self.register.gameObject:SetActive(false)
end)
local setpassword_btnBack = self.setpassword:Find("btnBack")
local setpassword_btnBackbg = setpassword_btnBack:GetComponent(typeof(UnityEngine.UI.Image))
setpassword_btnBackbg.sprite = CommonUISprite:GetSprite("arrow1")
setpassword_btnBack = setpassword_btnBack:GetComponent(typeof(UnityEngine.UI.Button))
LuaUIHelper:AddButtonClick(setpassword_btnBack, function()
self.login.gameObject:SetActive(false)
self.forget_password.gameObject:SetActive(true)
self.iphone_message.gameObject:SetActive(false)
self.setpassword.gameObject:SetActive(false)
self.register.gameObject:SetActive(false)
end)
self:SetLanguage()
EventManager:EventAdd(EventManager.Language, function()
self:ChangeLanguage()
self:SetLanguage()
end)
end
function M:SetLanguage()
if self.LoginType == 1 then
self.arr_btnlogin[1].Animator:Play("open", -1, 0)
self.arr_btnlogin[2].Animator:Play("close", -1, 0)
self.login_inputemail.gameObject:SetActive(false)
self.login_inputiphone.gameObject:SetActive(true)
else
self.arr_btnlogin[1].Animator:Play("close", -1, 0)
self.arr_btnlogin[2].Animator:Play("open", -1, 0)
self.login_inputemail.gameObject:SetActive(true)
self.login_inputiphone.gameObject:SetActive(false)
end
if self.RegisterType == 1 then
self.arr_btnRegister[1].Animator:Play("open", -1, 0)
self.arr_btnRegister[2].Animator:Play("close", -1, 0)
self.register_inputemail.gameObject:SetActive(false)
self.register_inputphone.gameObject:SetActive(true)
else
self.arr_btnRegister[1].Animator:Play("close", -1, 0)
self.arr_btnRegister[2].Animator:Play("open", -1, 0)
self.register_inputemail.gameObject:SetActive(true)
self.register_inputphone.gameObject:SetActive(false)
end
local languageType = LanguageManager.GetLanguageType()
local indexTemp = 1
if languageType == LanguageManager.English then
indexTemp = 2
else
indexTemp = 1
end
self.login_btnAgree.img.sprite = self.login_btnAgree.sprites[indexTemp - 1]
self.login_btnAgree.img:SetNativeSize()
self.login_agreement.img.sprite = self.login_agreement.sprites[indexTemp - 1]
self.login_agreement.img:SetNativeSize()
local vTemp = self.arr_btnlogin[1].vec[indexTemp]
self.arr_btnlogin[1].rectBar.sizeDelta = Vector2.New(vTemp.x, vTemp.y)
self.arr_btnlogin[1].imagesize.sprite = self.arr_btnlogin[1].sprites[indexTemp - 1]
self.arr_btnlogin[1].imagesize:SetNativeSize()
vTemp = self.arr_btnlogin[2].vec[indexTemp]
self.arr_btnlogin[2].rectBar.sizeDelta = Vector2.New(vTemp.x, vTemp.y)
self.arr_btnlogin[2].imagesize.sprite = self.arr_btnlogin[2].sprites[indexTemp - 1]
self.arr_btnlogin[2].imagesize:SetNativeSize()
vTemp = self.arr_btnRegister[1].vec[indexTemp]
self.arr_btnRegister[1].rectBar.sizeDelta = Vector2.New(vTemp.x, vTemp.y)
self.arr_btnRegister[1].rectBar.localEulerAngles = Vector3.New(0, 0, vTemp.angle)
self.arr_btnRegister[1].imagesize.sprite = self.arr_btnRegister[1].sprites[indexTemp - 1]
self.arr_btnRegister[1].imagesize:SetNativeSize()
vTemp = self.arr_btnRegister[2].vec[indexTemp]
self.arr_btnRegister[2].rectBar.sizeDelta = Vector2.New(vTemp.x, vTemp.y)
self.arr_btnRegister[2].rectBar.localEulerAngles = Vector3.New(0, 0, vTemp.angle)
self.arr_btnRegister[2].imagesize.sprite = self.arr_btnRegister[2].sprites[indexTemp - 1]
self.arr_btnRegister[2].imagesize:SetNativeSize()
end
function M:CheckInputIphone()
local tex_iphone = self.login_inputiphone.text
tex_iphone = string.gsub(tex_iphone, " ", "")
if string.len(tex_iphone) < 3 then
ViewUtil.ShowTips("请输入11位的手机号")
return
end
return tex_iphone
end
function M:CheckIputEmail()
local tex_email = self.login_inputemail.text
tex_email = string.gsub(tex_email, " ", "")
if not string.find(tex_email, "@") or string.len(tex_email) < 3 then
ViewUtil.ShowTips("请输入正确的邮箱")
return
end
return tex_email
end
function M:CheckInputPasswd()
local tex_passwd = self.login_inputpassword.text
tex_passwd = string.gsub(tex_passwd, " ", "")
if string.len(tex_passwd) < 6 then
ViewUtil.ShowTips("密码最少六位")
return
end
return tex_passwd
end
function M:Destroy()
if self._agreement then
self._agreement:Destroy()
end
BaseView.Destroy(self)
end
function M:Show()
BaseView.Show(self)
self:QuickLogin()
end
local function __goto_lobby(response)
if response.Data then
local notices = response.Data.notice_list
if notices and #notices > 0 then
local tem = {}
tem.data = notices
tem.auto_show = true
DataManager.SelfUser.notices = tem
end
end
ControllerManager.ChangeController(LoddyController)
-- ViewManager.ChangeView(ViewManager.View_Lobby)
UIManager.ShowUI(UIManager.LobbyView)
end
local function __join_room(roomid, res)
local loddyctr = ControllerManager.GetController(LoddyController)
loddyctr:JoinRoom(roomid, function(res1)
ViewUtil.CloseModalWait()
if res1.ReturnCode == -2 then
__join_room(roomid, res)
elseif res1.ReturnCode == 0 then
ViewManager.ChangeView(ViewManager.View_Main, DataManager.CurrenRoom.game_id)
elseif res1.ReturnCode == 101 or res1.ReturnCode == 6 then
__goto_lobby(res)
else
ViewUtil.ErrorTip(res1.ReturnCode, "登录失败!")
end
end)
end
local function __login_response(self, response)
ViewUtil.CloseModalWait()
local skey = "session_id"
print("申请的表格\n" .. TableToString(response))
if (response.ReturnCode == 0) then
local user = DataManager.SelfUser
-- if (user.guild) then
ExtendManager.Destroy()
local function f_enterLobby(...)
-- body
local _client = ControllerManager.WebClient
PlayerPrefs.SetString(skey, _client:getSession())
PlayerPrefs.Save()
print("游戏列表\n" .. TableToString(user.games))
-- 列表太多,容易报错
-- ExtendManager.Init(t)
local roomid = user.room_id
if (string.len(roomid) > 1) then
if user.group_id == 0 then
ViewUtil.ShowModalWait(self._root_view, "正在加入房间...")
print("正在加入房间----------------")
__join_room(roomid, response)
return
end
end
__goto_lobby(response)
end
print(user.update)
if user.update ~= 0 then
ExtendHotupdate.UpdateGameList(user.games, f_enterLobby)
else
f_enterLobby()
end
-- print("申请的表格\n" .. TableToString(user))
else
if (response.ReturnCode == Table_Error_code.ERR_SERVER or response.ReturnCode == Table_Error_code.ERR_LOGOUT) then
PlayerPrefs.DeleteKey(skey)
PlayerPrefs.Save()
end
ViewUtil.ErrorTip(response.ReturnCode, "登录失败!")
end
end
function M:LoginResponse(response)
__login_response(self, response)
end
function M:PhoneLogin()
local _phoneView = nil
_phoneView = PhoneLoginView.new(function(res)
if res.ReturnCode == 0 then
_phoneView:Destroy()
end
__login_response(self, res)
end)
_phoneView:Show()
end
function M:IDLogin()
local _idView = nil
_idView = IDLoginView.new(function(res)
if res.ReturnCode == 0 then
_idView:Destroy()
end
__login_response(self, res)
end)
_idView:Show()
end
function M:QuickLogin()
if (not GameApplication.Instance.accountTest) then
local session_id = PlayerPrefs.GetString("session_id")
print("session_id:" .. session_id)
if session_id and string.len(session_id) > 3 then
ViewUtil.ShowModalWait(self._root_view, "正在登录游戏...")
local loginCtr = ControllerManager.GetController(LoginController)
loginCtr:QuickLogin(session_id, function(response)
__login_response(self, response)
end)
end
end
end
function M:LoginCallBack(result, data)
self.isWXCallBackMark = true
print("微信登录返回================================================================")
print("jefe:result===>" .. result)
--pt(data)
if (not result) or result ~= 0 then
if result == 10 then
ViewUtil.ShowModalWait(self._root_view)
return
end
ViewUtil.CloseModalWait()
return
end
print("用户登录数据" .. TableToString(data))
if data then
local jd = json.decode(data)
pt(jd)
local headurl = jd["headimgurl"]
local unionid = jd["unionid"]
local sex = jd["sex"]
if (sex == 0) then sex = 1 end
local nickname = jd["nickname"]
DataManager.SelfUser.acc = unionid
DataManager.SelfUser.nick_name = nickname
DataManager.SelfUser.sex = sex
DataManager.SelfUser.head_url = headurl
if not DataManager.SelfUser.acc or string.len(DataManager.SelfUser.acc) < 1 then
ViewUtil.CloseModalWait()
return
end
end
local loginCtr = ControllerManager.GetController(LoginController)
loginCtr:Login(function(response)
__login_response(self, response)
end)
end
function M:Destroy()
BaseView.Destroy(self)
-- UIPackage.RemovePackage("base/embed/ui/Hotupdate")
-- UIPackage.RemovePackage("base/login/ui/Login")
ResourcesManager.UnLoad("base/ui/Login.bytes")
end