|
- -- http://120.76.238.236:8999/wiki/index.php?title=%E9%82%80%E8%AF%B7%E6%B4%BB%E5%8A%A8
-
- local MainInviteNewFriend = class("MainInviteNewFriend", cc.UIView)
-
-
-
- function MainInviteNewFriend:ctor()
- MainInviteNewFriend.super.ctor(self)
- local ui = loadUI("res/ui/ui_dating/ui_laxin.ui")
- self.ui = ui
- self:addChild(ui)
- self:init()
- end
-
- function MainInviteNewFriend:init()
-
- loadSpriteFrameFile("res/ui/zy_dating/invite/hall_invite.plist")
-
- self.ui.Items.Button:registerClick(function ()
- self:onClickClose()
- end)
-
- --隐藏要拷贝的对象
- self.ui.Items.Layout_People_Item:setVisible(false)
- self.ui.Items.Layout_RecordItem:setVisible(false)
-
- --分享界面隐藏
- self.ui.Items.ImageView_Share:setVisible(false)
- --隐藏bar
- self.ui.Items.ScrollView:hideAllBar()
- self.ui.Items.ScrollView_Record:hideAllBar()
-
- self.ui.Items.ScrollView:getInnerContainer():setAutoSize(true)
- self.ui.Items.ScrollView_Record:getInnerContainer():setAutoSize(true)
-
- --分享
- self.ui.Items.Button_Share:registerClick(handler(self,self.onClickShare))
- --好友群分享
- self.ui.Items.Button_3:registerClick(handler(self,self.onClickFriend))
- --朋友圈分享
- self.ui.Items.Button_4:registerClick(handler(self,self.onClickFriendCircle))
-
- --兑换
- self.ui.Items.Button_DuiHuan:registerClick(handler(self,self.onClickDuiHuan))
- self.ui.Items.Button_DuiHuan:setEnabled(false)
- --提现
- self.ui.Items.Button_TiXian:registerClick(handler(self,self.onClickTiXian))
- self.ui.Items.Button_TiXian:setEnabled(false)
- --空白点击
- self.ui.Items.Layout_1:registerClick(handler(self,self.onClickBlank))
-
- self.ui.Items.Button_Teach:registerClick(handler(self,self.onClickTeach))
-
- self:initLeft();
-
- app.php:requestLaXinInitData()
-
- self:bindEvent(app , "HallInviteNewFirend" , handler(self , self.updateView));
- end
-
- function MainInviteNewFriend:shareCallback(data)
- logD("分享成功")
- local code = data.code;
- local err = data.error;
- local result = data.result;
- local add = result.add;
- local card = result.card;
- local atype = result.atype;
- local wallet = result.wallet;
-
- if code == 200 then
- --显示金币奖励
- local info = {}
- if atype == 1 then
- info.isUserBox = true
- info.fileName = "invite_icon.png"
- info.tip = "恭喜您获得房卡"..toNumber(add).."张"
- --修改房卡
- app.user.loginInfo.curCardNum = tostring(card)
- elseif atype == 4 then
- info.fileName = "invite_hongbao2.png"
- info.tip = "恭喜您获得1元红包"
- --更新红包数据
- self:updateMoney(wallet)
- else
- info.fileName = "invite_icon.png"
- end
- --刷新数据
- app.php:requestLaXinInitData()
- info.normal = true
-
- showFuLiConfirm(info)
- else
- showTooltip(err)
- end
- end
-
- function MainInviteNewFriend:playAni(node)
- --绑定手机的动画
- local seq2 = cc.Sequence:create(
- cc.RotateTo:create(0.15,6),
- cc.RotateTo:create(0.15,-6),
- cc.RotateTo:create(0.16,6),
- cc.RotateTo:create(0.16,0),
- cc.DelayTime:create(1.5)
- )
- if node then
- node:runAction(cc.RepeatForever:create(seq2))
- end
- end
-
- function MainInviteNewFriend:initLeft()
- self.leftItems = {};
- for i = 1,10 do
- local people = self.ui.Items.Layout_People_Item:getCopied();
- people.Items = getUIItems(people);
- people.Items.Layout_3:setVisible(false)
- people.Items.ImageView_LQ_1:setVisible(false)
- people.Items.ImageView_LQ_2:setVisible(false)
- people.Items.ImageView_old_player:setVisible(false)
- people.Items.Button_1:setEnabled(false)
- people.Items.Button_2:setEnabled(false)
- people.Items.Button_1:registerClick(function ()
- local id = people.Items.Button_1:getParent():getParent().id ;
- logD("id:",id);
- app.php:requestLaXinRigisterShare(1,id,handler(self,self.shareCallback))
- end)
- people.Items.Button_2:registerClick(function ()
- local id = people.Items.Button_2:getParent():getParent().id ;
- logD("id:",id);
- app.php:requestLaXinRigisterShare(2,id,handler(self,self.shareCallback))
- end)
- table.insert(self.leftItems,people);
- self.ui.Items.ScrollView:addChild(people);
- end
- self.ui.Items.ScrollView:requestDoLayout();
- self.ui.Items.ScrollView:doLayout();
- self.ui.Items.ScrollView:jumpToTopOnSizeChanged();
- end
-
- function MainInviteNewFriend:updateView(data)
- self.ui.Items.ScrollView_Record:removeAllChildren()
- local response = data.ret;
- logD("MainInviteNewFriend response:",table.tostring(response));
- self.wallet = response.wallet;
- self.tasksEndTime = response.tasksEndTime;
- self.shareLink = response.shareLink;
- self.inviteAwards = response.inviteAwards;
- self.invites = response.invites;
- self.exchange = toNumber(response.exchange.card);
- self.pictureLink = response.shareImg;
-
- --下载图片
- if string.len(self.pictureLink) > 0 then
- self:downLoadSharePic()
- else
- --没有给就去拉取
- app.php:requestLaXinDownPic(function (url)
- self.pictureLink = url;
- self:downLoadSharePic()
- end);
- end
-
- if self.tasksEndTime then
- local function updateTime()
- local disTimeInfo = timediff(self.tasksEndTime,os.time());
- if disTimeInfo.day == 0 and disTimeInfo.month == 0 and disTimeInfo.hour == 0 and disTimeInfo.min == 0 and disTimeInfo.sec == 0 then
- self.ui.Items.Text_EndTime:stopAllActions()
- self.ui.Items.Text_EndTime:setText("活动已到期");
- self.ui.Items.Button_Share:setEnabled(false)
- else
- self.ui.Items.Text_EndTime:setString(string.format("活动倒计时:%d天%d时%d分%d秒",disTimeInfo.day + disTimeInfo.month * 30,disTimeInfo.hour,disTimeInfo.min,disTimeInfo.sec))
- end
- end
- self.ui.Items.Text_EndTime:stopAllActions()
- self.ui.Items.Text_EndTime:runActions(cc.RepeatForever:create(cc.Sequence:create(cc.DelayTime:create(1),cc.CallFunc:create(function()
- updateTime()
- end))))
- end
-
- --更新奖励记录
- if self.inviteAwards then
- local tt = {};
- for k,v in pairs(self.inviteAwards) do
- tt[v.time] = v.content;
- end
- for k,v in pairsByKeysEx(tt) do
- local recordItem = self.ui.Items.Layout_RecordItem:getCopied();
- recordItem:setVisible(true)
- recordItem.Items = getUIItems(recordItem);
- recordItem.Items.Text_report:setText(os.date("%m月%d日",k).." "..tostring(v))
- self.ui.Items.ScrollView_Record:addChild(recordItem);
- end
- self.ui.Items.ScrollView_Record:jumpToTopOnSizeChanged();
- self.ui.Items.ScrollView_Record:requestDoLayout();
- self.ui.Items.ScrollView_Record:doLayout();
- end
-
- --更新左边玩家
- if self.invites then
- for k,v in ipairs(self.invites) do
- local people = self.leftItems[k];
- people.id = v.id;
- people.Items.Text_name:setText(getSubStringNickname(v.nick));
- local nodeHead = people.Items.ImageView_head;
- setPlayerHeadImage(v.uid, v.head, nodeHead, false)
- local regStatus = toNumber(v.reg_status);
- local playStatus = toNumber(v.play_status);
-
- people.Items.ImageView_old_player:setVisible(false)
- people.Items.Button_1:stopAllActions();
- people.Items.Button_2:stopAllActions();
- --红包1状态
- if INVITE_NEW_FRIEND.NOENOUGH_ADDITION == regStatus then
- people.Items.ImageView_LQ_1:setVisible(false)
- people.Items.Button_1:setEnabled(false)
- elseif INVITE_NEW_FRIEND.ENOUGH_ADDITION == regStatus then
- people.Items.ImageView_LQ_1:setVisible(false)
- people.Items.Button_1:setEnabled(true)
- self:playAni(people.Items.Button_1)
- elseif INVITE_NEW_FRIEND.HAVED_PRIZED == regStatus then
- people.Items.ImageView_LQ_1:setVisible(true)
- people.Items.Button_1:setEnabled(false)
- elseif INVITE_NEW_FRIEND.OLD_PLAYER == regStatus then
- people.Items.ImageView_LQ_1:setVisible(false)
- people.Items.ImageView_old_player:setVisible(true)
- people.Items.Button_1:setEnabled(false)
- end
-
- --红包2状态
- if INVITE_NEW_FRIEND.NOENOUGH_ADDITION == playStatus then
- people.Items.ImageView_LQ_2:setVisible(false)
- people.Items.Button_2:setEnabled(false)
- elseif INVITE_NEW_FRIEND.ENOUGH_ADDITION == playStatus then
- people.Items.ImageView_LQ_2:setVisible(false)
- people.Items.Button_2:setEnabled(true)
- self:playAni(people.Items.Button_2)
- elseif INVITE_NEW_FRIEND.HAVED_PRIZED == playStatus then
- people.Items.ImageView_LQ_2:setVisible(true)
- people.Items.Button_2:setEnabled(false)
- elseif INVITE_NEW_FRIEND.OLD_PLAYER == playStatus then
- people.Items.ImageView_LQ_2:setVisible(false)
- people.Items.Button_2:setEnabled(false)
- end
- end
- end
-
- --更新红包数据
- self:updateMoney(self.wallet)
-
- --更新按钮状态
- --兑换
- self.ui.Items.Button_DuiHuan:setEnabled(self.wallet > 0)
- --提现
- self.ui.Items.Button_TiXian:setEnabled(self.wallet > 0)
- end
-
- function MainInviteNewFriend:downLoadSharePic()
- self.file = getImageNameFromUrl(self.pictureLink)
- getImageFromUrlWithTime(self.pictureLink, self.file, nil, function()
- logD("拉新分享的图片下载完成")
- end)
- end
-
- function MainInviteNewFriend:onClickClose()
- playBtnCloseEffect()
- app:dispatchEvent({name = GAME_EVENT.ACTIVITY_CLOSE})
- self:removeFromParent()
- end
-
- function MainInviteNewFriend:onClickBlank()
- self.ui.Items.ImageView_Share:setVisible(false)
- end
-
- function MainInviteNewFriend:onClickTeach()
- local view = import("luaScript.Views.Main.MainInviteNewFriendTeach"):new()
- view:setAnchorPoint(cc.p(0.5, 0.5))
- app:showWaitDialog(view,255)
- end
-
- function MainInviteNewFriend:onClickShare()
- playBtnEffect()
- if not app.plugin:isSupportWeiXin() then
- showTooltip("您还未安装微信!请安装后重试!")
- return
- end
- self.ui.Items.ImageView_Share:setVisible(not self.ui.Items.ImageView_Share:isVisible())
- end
-
- function MainInviteNewFriend:onClickFriend()
- playBtnEffect()
- self.ui.Items.ImageView_Share:setVisible(false)
- self:share("talk")
- end
-
- function MainInviteNewFriend:onClickFriendCircle()
- playBtnEffect()
- self.ui.Items.ImageView_Share:setVisible(false)
- self:share("scene")
- end
-
- function MainInviteNewFriend:share(mode)
- local info = {}
- info.image = cc.FileUtils:getInstance():getWritablePath()..tostring(self.file)
- logD("self.file:",self.file)
- logD("info.image:",info.image)
- if not cc.FileSystem:fileExists(info.image) then
- logD("图片还未开始下载或者是在下载中")
- showTooltip("当前网络不稳定,请稍候重试!");
- return;
- end
- info.scene = mode
- info.contentType = "image"
- info.title = self.shareLink.title or ""
- info.description = self.shareLink.desc or ""
-
- info.imageWidth = 550
- info.thumbWidth = 50
- info.url = self.shareLink.link or ""
- app.plugin:shareGame(info, function ()
- if cc.Application:getInstance():getTargetPlatform() == 3 then
- if mode == "scene" then
- app.php:requestLaXinFirstShare(handler(self,self.shareCallback))
- end
- end
- end);
- if cc.Application:getInstance():getTargetPlatform() == 4 or cc.Application:getInstance():getTargetPlatform() == 5 then
- if mode == "scene" then
- app.php:requestLaXinFirstShare(handler(self,self.shareCallback))
- end
- end
- end
-
- function MainInviteNewFriend:onClickDuiHuan()
- playBtnEffect()
- local function btnOk()
- app.php:requestLaXinExchange(1,function (data)
- local code = data.code;
- local err = data.error;
- local result = data.result;
- if code == 200 then
- self:updateMoney(result.wallet)
- self:shareCallback(data)
- else
- showTooltip(err)
- end
- end)
- end
- local function btnCancel()
-
- end
-
- local content2 = "你将用"..tostring(self.wallet).."元红包兑换"..tostring(self.exchange * self.wallet).."张房卡,确认兑换?";
- if self.wallet and self.wallet > 0 then
- showConfirmDialog(content2, btnOk,btnCancel)
- end
- end
-
- function MainInviteNewFriend:onClickTiXian()
- playBtnEffect()
- app.php:requestLaXinGetMoney(5005,function (data)
- local code = data.code;
- local err = data.error;
- local result = data.result;
- local content = result.content;
- if code == 200 then
- self:updateMoney(result.wallet)
- local function btnOk()
-
- end
- showConfirmDialog(content, btnOk)
- else
- showTooltip(err)
- end
- end)
- end
-
- function MainInviteNewFriend:updateMoney(wallet)
- --更新红包数据
- self.wallet = toNumber(wallet)
- --提现
- self.ui.Items.Button_DuiHuan:setEnabled(self.wallet > 0)
- --提现
- self.ui.Items.Button_TiXian:setEnabled(self.wallet > 0)
- self.ui.Items.Text_num:setText(tostring(self.wallet));
- self.ui.Items.Layout_2:requestDoLayout();
- self.ui.Items.Layout_2:doLayout();
- end
-
- return MainInviteNewFriend
|