示例#1
0
        public void SearchForClubWithCountry()
        {
            //Arrange
            ClubSearchCriteria cc = new ClubSearchCriteria();

            cc.Country = "Denmark";

            var playerRepos = new Mock <IPlayerRepository <Player> >();

            playerRepos.Setup(x => x.GetById(1)).Returns(new Player {
                Id = 1
            });

            var clubRepos = new Mock <IClubRepository <Club> >();

            clubRepos.Setup(x => x.GetBySearchCriteriaWithJobPosition("asd"))
            .Returns(new List <Club>
            {
                new Club {
                    Id = 1, Country = "Sweden"
                },
                new Club {
                    Id = 2, Country = "Denmark"
                },
                new Club {
                    Id = 3, Country = "Norway"
                }
            });

            ClubLogic cl = new ClubLogic(clubRepos.Object, playerRepos.Object, null);

            var list = cl.HandleClubSearchAlgorithm(cc, 1);

            Assert.Equal("Denmark", list[0].Country);
        }
示例#2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            var club = ClubLogic.GetClubInfo(ClubID);

            if (club != null && Title.IndexOf("{0}") >= 0)
            {
                Title = string.Format(Title, club.FullName);
            }

            #region SetControlProperty

            ctrlLeftPanel.UserID   = userid;
            ctrlLeftPanel.UserName = username;
            ctrlLeftPanel.UserKey  = userkey;

            ctrlFieldToolBar.UserID   = userid;
            ctrlFieldToolBar.UserName = username;

            ctrlMenuTabBar.CurrentMenu = ClubMenuItem.ClubMemeber;
            ctrlMenuTabBar.ClubID      = ClubID;

            ctrlClubSysHeader.UserID   = userid;
            ctrlClubSysHeader.ClubID   = ClubID;
            ctrlClubSysHeader.UserName = username;

            #endregion

            BindMemberList();
        }
示例#3
0
        protected void btnLeaveClub_Click(object sender, EventArgs e)
        {
            var uct = ClubLogic.GetUserClubStatus(userID, clubID);

            if (uct != UserClubStatus.Member)
            {
                return;
            }

            var script = string.Empty;

            if (UserClubLogic.UserClubAction(userID, userName, clubID, uct))
            {
                script = "window.alert('您已离开该球会!');";
            }
            else
            {
                script = "window.alert('状态异常!');";
            }

            btnJoinClub.Visible  = true;
            btnLeaveClub.Visible = false;

            Page.ClientScript.RegisterClientScriptBlock(typeof(string), "leave", script, true);
        }
示例#4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            var club = ClubLogic.GetClubInfo(ClubID);

            if (club != null && Title.IndexOf("{0}") >= 0)
            {
                Title = string.Format(Title, club.FullName);
            }

            #region SetControlProperty

            ctrlLeftPanel.UserID   = userid;
            ctrlLeftPanel.UserName = username;
            ctrlLeftPanel.UserKey  = userkey;

            ctrlFieldToolBar.UserID   = userid;
            ctrlFieldToolBar.UserName = username;

            ctrlMenuTabBar.CurrentMenu = ClubMenuItem.ClubStrip;
            ctrlMenuTabBar.ClubID      = ClubID;

            ctrlClubSysHeader.UserID   = userid;
            ctrlClubSysHeader.ClubID   = ClubID;
            ctrlClubSysHeader.UserName = username;

            #endregion

            BindStripHistory();

            ltlClubBingoStrip.Text =
                $"<span title=\"抽取装备计数\">今天(累计)尝试:<em>{PlayerStrip.GetClubBingoPlayCountToday(ClubID)}({PlayerStrip.GetClubBingoPlayCount(ClubID).ToString("N0")})</em>次 | 库存:<em>{PlayerStrip.GetClubRemainingEquipment(ClubID)}/{ConfigGlobal.DailyClubEquipmentCount}</em>件装备</span>";
            ltlClubStripCount.Text =
                $"<span class=\"ClubSys_Strip SHIRT\">球衣:</span><em>{ShirtCount}</em><span class=\"ClubSys_Strip SHORTS\">球裤:</span><em>{ShortsCount}</em><span class=\"ClubSys_Strip SOCK\">球袜:</span><em>{SockCount}</em><span class=\"ClubSys_Strip CARD\">球星卡:</span><em>{CardCount}</em><span class=\"ClubSys_Strip VIDEO\">视频卡:</span><em>{VideoCount}</em>";
        }
示例#5
0
        public void SearchForClubWithNoCriteria()
        {
            //Arrange
            var clubRepos         = new Mock <IClubRepository <Club> >();
            ClubSearchCriteria cc = new ClubSearchCriteria();

            clubRepos.Setup(x => x.GetAll(""))
            .Returns(new List <Club>
            {
                new Club {
                    Id = 1, Country = "Denmark"
                },
                new Club {
                    Id = 2, Country = "Sweden"
                },
                new Club {
                    Id = 3, Country = "Sweden"
                }
            });

            ClubLogic cl = new ClubLogic(clubRepos.Object, null, null);

            var list = cl.HandleClubSearchAlgorithm(cc, 0);

            Assert.Equal(3, list.Count);
        }
示例#6
0
        protected override void OnPreRender(EventArgs e)
        {
            ltrlMemberCount.Text       = ClubLogic.GetClubMemberCount(ClubID).ToString();
            ltrlTotalContribution.Text = _totalContribution.ToString();

            base.OnPreRender(e);
        }
示例#7
0
        protected void Page_Load(object sender, EventArgs e)
        {
            var club     = ClubLogic.GetClubInfo(ClubID);
            var userInfo = Users.GetUserInfo(ToUserID);

            if (club != null && userInfo != null && Title.IndexOf("{0}") >= 0 && Title.IndexOf("{1}") >= 0)
            {
                Title = string.Format(Title, club.FullName, userInfo.Username.Trim());
            }

            rvMaxCash.MaximumValue = "1";

            #region SetControlProperty

            ctrlLeftPanel.UserID   = userid;
            ctrlLeftPanel.UserName = username;
            ctrlLeftPanel.UserKey  = userkey;

            ctrlFieldToolBar.UserID   = userid;
            ctrlFieldToolBar.UserName = username;

            ctrlManageMenuTabBar.CurrentMenu = ManageClubMenuItem.ManageMember;
            ctrlManageMenuTabBar.UserID      = userid;

            #endregion

            if (!IsPostBack)
            {
                LoadPageData();
            }
        }
示例#8
0
        private void BindData()
        {
            var clubMemberList = ClubLogic.GetClubMembers(ClubID);

            gvClubMemberList.DataSource = clubMemberList;
            gvClubMemberList.DataBind();
        }
示例#9
0
        protected void Page_Load(object sender, EventArgs e)
        {
            var club = ClubLogic.GetClubInfo(ClubID);

            if (club != null && Title.IndexOf("{0}") >= 0)
            {
                Title = string.Format(Title, club.FullName);
            }

            if (!IsPostBack)
            {
                LoadPageData();
            }

            #region SetControlProperty

            ctrlLeftPanel.UserID   = userid;
            ctrlLeftPanel.UserName = username;
            ctrlLeftPanel.UserKey  = userkey;

            ctrlFieldToolBar.UserID   = userid;
            ctrlFieldToolBar.UserName = username;

            ctrlManageMenuTabBar.CurrentMenu = ManageClubMenuItem.ManageClub;
            ctrlManageMenuTabBar.UserID      = userid;

            #endregion
        }
示例#10
0
        public void SearchForClubWithJobPositionAndValues()
        {
            //Arrange Search Criterias
            List <string> values = new List <string>();

            values.Add("Hard working");
            values.Add("Social cohesion");
            ClubSearchCriteria cc = new ClubSearchCriteria();

            cc.ValuesList = values;
            JobPosition jp = new JobPosition {
                Position      = "Left back",
                Height        = 190,
                PreferredHand = " Right hand"
            };
            List <JobPosition> l = new List <JobPosition> {
                jp
            };
            JobPosition jp2 = new JobPosition {
                Position      = "Right back",
                Height        = 200,
                PreferredHand = "Right hand"
            };
            List <JobPosition> l2 = new List <JobPosition> {
                jp2
            };


            //Arrange Player used to match with club jobposition
            var playerRepos = new Mock <IPlayerRepository <Player> >();

            playerRepos.Setup(x => x.GetById(1)).Returns(new Player {
                Id = 1, PrimaryPosition = "Left back", Height = 195, PreferredHand = "Left hand"
            });

            //Arrange Club
            var clubRepos = new Mock <IClubRepository <Club> >();

            clubRepos.Setup(x => x.GetBySearchCriteriaWithJobPoisitionValue(" v.name = 'Hard working' and c.isAvailable = 1  or v.name = 'Social cohesion' and c.isAvailable = 1 ", ""))
            .Returns(new List <Club>
            {
                new Club {
                    Id = 1, Country = "Sweden", League = "First League"
                },
                new Club {
                    Id = 2, Country = "Denmark", League = "Second League", JobPositionsList = l, ValuesList = values
                },
                new Club {
                    Id = 3, Country = "Norway", League = "First League", JobPositionsList = l2, ValuesList = values
                }
            });


            ClubLogic cl = new ClubLogic(clubRepos.Object, playerRepos.Object, null);

            var list = cl.HandleClubSearchAlgorithm(cc, 1);

            Assert.Equal(80, list[0].SearchPercentage);
        }
示例#11
0
        private void BindClubHistory()
        {
            if (history == null)
            {
                if (ClubID > 0)
                {
                    history = ClubLogic.GetClubHistory(ClubID);
                }
                else
                {
                    history = ClubLogic.GetClubHistory();
                }

                foreach (var ch in history)
                {
                    var actionType = (ClubHistoryActionType)Enum.Parse(typeof(ClubHistoryActionType), ch.ActionType);
                    switch (actionType)
                    {
                    case ClubHistoryActionType.JoinClub:
                        ch.AdditionalData = "ClubSys_Agree";
                        break;

                    case ClubHistoryActionType.RejectJoinClub:
                        ch.AdditionalData = "ClubSys_Disagree";
                        break;

                    case ClubHistoryActionType.LeaveClub:
                        ch.AdditionalData = "ClubSys_Disagree";
                        break;

                    case ClubHistoryActionType.MandatoryLeaveClub:
                        ch.AdditionalData = "ClubSys_Disagree";
                        break;

                    case ClubHistoryActionType.Nominated:
                        ch.AdditionalData = "ClubSys_Agree";
                        break;

                    case ClubHistoryActionType.Dismiss:
                        ch.AdditionalData = "ClubSys_Disagree";
                        break;

                    case ClubHistoryActionType.LuckyPlayer:
                        ch.AdditionalData = "ClubSys_Disagree";
                        break;

                    default:
                        ch.AdditionalData = "ClubSys_Agree";
                        break;
                    }

                    ch.AdditionalData2 = ClubLogic.TranslateClubHistoryActionType(actionType);
                }
            }

            gvHistory.DataSource = history;
            gvHistory.DataBind();
        }
示例#12
0
        private void BindMemberList()
        {
            if (clubApplicationList == null)
            {
                clubApplicationList = ClubLogic.GetClubApplications(ClubID);
            }

            gvClubMemberList.DataSource = clubApplicationList;
            gvClubMemberList.DataBind();
        }
        protected void Page_PreRender(object sender, EventArgs e)
        {
            if (ConfigGlobal.PluginActive && ConfigGlobal.PluginContainerActive && ProfileUserID != -1)
            {
                //Generator the Style and Javascript
                Response.Write(
                    "document.write('<link href=\"../../App_Themes/Arsenalcn/clubsys.css\" type=\"text/css\" rel=\"stylesheet\" />');");
                Response.Write(
                    "document.write('<script type=\"text/javascript\" src=\"plugin/AcnClub/scripts/ClubSys.js\"></script>');");

                var clubs = ClubLogic.GetActiveUserClubs(ProfileUserID);
                if (clubs.Count != 0)
                {
                    var club = clubs[0];

                    var cClubCSS   = string.Empty;
                    var cClubTitle = string.Empty;
                    if (ConfigGlobal.ChampionsClubID > 0 && club.ID == ConfigGlobal.ChampionsClubID)
                    {
                        cClubCSS   = "ClubSys_ShowTopicCrown";
                        cClubTitle = ConfigGlobal.ChampionsTitle;
                    }
                    else
                    {
                        cClubCSS = "ClubSys_ShowTopic";
                    }

                    var strClub =
                        string.Format(
                            "<div class=\"{4}\" title=\"{5}\"><a href=\"plugin/AcnClub/ClubView.aspx?clubID={0}\" target=\"_blank\">{1}</a><em>LV:{2} | RPos:{3}</em></div>",
                            club.ID.Value, club.FullName, club.RankLevel.Value, club.RankScore.Value, cClubCSS,
                            cClubTitle);
                    Response.Write($"document.write('{strClub}');");
                }

                var player = PlayerStrip.GetPlayerInfo(ProfileUserID);

                if (player != null && player.CurrentGuid != null)
                {
                    var strPlayer =
                        $"GenSwfObject('UserStrip', 'plugin/acnclub/swf/UserStrip.swf?XMLURL=plugin/acnclub/ServerXml.aspx%3FUserID={ProfileUserID}', '180', '120');";
                    //Response.Write(string.Format("document.write('<div style=\"text-align: center;\">');{0};document.write('</div>');", strPlayer.ToString()));
                    Response.Write(strPlayer);
                }

                //if (player != null && UserVideo.GetUserPublicVideo(ProfileUserID).Count > 0)
                //{
                //    string strVideo = string.Format("GenSwfObject('UserVideo', 'plugin/acnclub/swf/UserVideo.swf?XMLURL=plugin/acnclub/ServerXml.aspx%3FUserID={0}', '180', '200');", ProfileUserID.ToString());
                //    //Response.Write(string.Format("document.write('<div style=\"text-align: center;\">');{0};document.write('</div>');", strVideo.ToString()));
                //    Response.Write(strVideo);
                //}
            }

            Response.End();
        }
示例#14
0
        protected void Page_Load(object sender, EventArgs e)
        {
            var clubs = ClubLogic.GetActiveUserClubs(ProfileUserID);

            if (clubs.Count == 0)
            {
                btnClub.Visible       = false;
                btnGetStrip.Visible   = false;
                btnCardFusion.Visible = false;
            }
            else
            {
                var club = clubs[0];

                btnClub.Text        = club.FullName;
                btnClub.PostBackUrl = $"../ClubView.aspx?ClubID={club.ID.Value}";

                if (ProfileUserID != UserID)
                {
                    btnGetStrip.Visible   = false;
                    btnCardFusion.Visible = false;
                }
            }

            var _playerInfo = PlayerStrip.GetPlayerInfo(ProfileUserID);

            if (_playerInfo == null)
            {
                pnlSwf.Visible = false;
            }
            else
            {
                pnlSwf.Visible = true;

                shirtLv  = _playerInfo.Shirt;
                shortsLv = _playerInfo.Shorts;
                sockLv   = _playerInfo.Sock;
            }

            var TotalCount = PlayerStrip.GetUserBingoPlayCount(ProfileUserID);

            if (TotalCount <= 0)
            {
                ltrlRP.Text = "0%";
            }
            else
            {
                ltrlRP.Text = (PlayerStrip.GetUserBingoGainCount(ProfileUserID) * 100 / TotalCount) + "%";
            }

            var _playerLV = Math.Min(PlayerLv, ConfigGlobal.PlayerMaxLv);

            ltrlPlayerLV.Text =
                $"<div class=\"ClubSys_PlayerLV\" style=\"width: {(_playerLV*20)}px;\" title=\"球员等级\"></div>";
        }
示例#15
0
        protected void Page_Load(object sender, EventArgs e)
        {
            #region SetControlProperty

            ctrlLeftPanel.UserID   = userid;
            ctrlLeftPanel.UserName = username;
            ctrlLeftPanel.UserKey  = userkey;

            ctrlFieldToolBar.UserID   = userid;
            ctrlFieldToolBar.UserName = username;

            ctrlMenuTabBar.CurrentMenu = ClubMenuItem.ClubRank;
            ctrlMenuTabBar.ClubID      = ClubID;

            ctrlClubSysHeader.UserID   = userid;
            ctrlClubSysHeader.ClubID   = ClubID;
            ctrlClubSysHeader.UserName = username;

            #endregion

            var currentClub = ClubLogic.GetClubInfo(ClubID);

            if (currentClub != null && Title.IndexOf("{0}") >= 0)
            {
                Title = string.Format(Title, currentClub.FullName);
            }

            if (currentClub != null)
            {
                var memberCount = ClubLogic.GetClubMemberCount(ClubID);
                var memberQuota = ClubLogic.GetClubMemberQuota(ClubID);

                var ra = new RankAlgorithm(currentClub);

                ltrlMemberCount.Text =
                    $"<cite class=\"RankLevel\"><a style=\"width: {(ra.MemberCountRank*2)}px\">{ra.MemberCountRank}%</a></cite><em>{memberCount}//{memberQuota}</em>";

                ltrlClubFortune.Text =
                    $"<cite class=\"RankLevel\"><a style=\"width: {(ra.ClubFortuneRank*2)}px\">{ra.ClubFortuneRank}%</a></cite><em>{Convert.ToInt32(currentClub.Fortune).ToString("N0")}</em>";

                ltrlMemberCredit.Text =
                    $"<cite class=\"RankLevel\"><a style=\"width: {(ra.MemberCreditRank*2)}px\">{ra.MemberCreditRank}%</a></cite><em>{Convert.ToInt32(currentClub.MemberCredit).ToString("N0")}</em>";

                ltrlMemberRP.Text =
                    $"<cite class=\"RankLevel\"><a style=\"width: {(ra.MemberRPRank*2)}px\">{ra.MemberRPRank}%</a></cite><em>{Convert.ToInt32(currentClub.MemberRP).ToString("N0")}</em>";

                ltrlEquipmentCount.Text =
                    $"<cite class=\"RankLevel\"><a style=\"width: {(ra.MemberEquipmentRank*2)}px\">{ra.MemberEquipmentRank}%</a></cite><em>C:{PlayerStrip.GetClubMemberCardCount(currentClub.ID.Value)}|V:{PlayerStrip.GetClubMemberVideoCount(currentClub.ID.Value)}</em>";

                ltrlRankScore.Text = currentClub.RankScore.ToString();
            }
        }
示例#16
0
        protected void btnCancel_Click(object sender, EventArgs e)
        {
            var club = ClubLogic.GetCreateClubApplicationByUserID(userid);

            if (club != null)
            {
                ClubLogic.ApproveClub(club.ID.Value, false);
            }

            var script = "alert('申请已取消!');";

            ClientScript.RegisterClientScriptBlock(typeof(string), "canceled", script, true);
        }
示例#17
0
        protected void Page_Load(object sender, EventArgs e)
        {
            #region Top Rank Club

            var topRankClubs = ClubLogic.GetTopRankClubs();

            var rank = 1;
            foreach (var topClub in topRankClubs)
            {
                topClub.AdditionalData2 = rank.ToString();
                rank++;
            }

            rptTopClubs.DataSource = topRankClubs;
            rptTopClubs.DataBind();

            #endregion

            #region Top Lv Rank Club

            var topLvClubs = ClubLogic.GetTopLvClubs();

            rank = 1;
            foreach (var topClub in topLvClubs)
            {
                topClub.AdditionalData2 = rank.ToString();
                rank++;
            }

            rptLv.DataSource = topLvClubs;
            rptLv.DataBind();

            #endregion

            #region Top Fortune Rank Club

            var topFortuneClubs = ClubLogic.GetTopFortuneClubs();

            rank = 1;
            foreach (var topClub in topFortuneClubs)
            {
                topClub.AdditionalData2 = rank.ToString();
                rank++;
            }

            rptFortune.DataSource = topFortuneClubs;
            rptFortune.DataBind();

            #endregion
        }
示例#18
0
        public void SearchForClubWithJobPositionWith5OutOf6CriteriaMatch()
        {
            //Arrange Search Criterias
            ClubSearchCriteria cc = new ClubSearchCriteria();

            cc.Country  = "Denmark";
            cc.League   = "Second League";
            cc.Position = "Left back";
            JobPosition jp = new JobPosition {
                Position      = "Left back",
                Height        = 190,
                PreferredHand = " Right hand"
            };
            List <JobPosition> l = new List <JobPosition>();

            l.Add(jp);

            //Arrange Player used to match with club jobposition
            var playerRepos = new Mock <IPlayerRepository <Player> >();

            playerRepos.Setup(x => x.GetById(1)).Returns(new Player {
                Id = 1, PrimaryPosition = "Left back", Height = 191, PreferredHand = "Left hand"
            });

            //Arrange Club
            var clubRepos = new Mock <IClubRepository <Club> >();

            clubRepos.Setup(x => x.GetBySearchCriteriaWithJobPosition(" c.isAvailable = 1  and c.league = 'Second League' " +
                                                                      "and isavailable = 1  and c.country = 'Denmark' and isavailable = 1  and jp.position = 'Left back' and isavailable = 1 "))
            .Returns(new List <Club>
            {
                new Club {
                    Id = 1, Country = "Sweden", League = "First League"
                },
                new Club {
                    Id = 2, Country = "Denmark", League = "Second League", JobPositionsList = l
                },
                new Club {
                    Id = 3, Country = "Norway", League = "First League"
                }
            });


            ClubLogic cl = new ClubLogic(clubRepos.Object, playerRepos.Object, null);

            var list = cl.HandleClubSearchAlgorithm(cc, 1);

            Assert.Equal(83, list[0].SearchPercentage);
        }
示例#19
0
        protected void gvClubMemberList_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            try
            {
                if (e.CommandName == "KickUser")
                {
                    var _kickUserID = Convert.ToInt32(e.CommandArgument.ToString());

                    var club     = ClubLogic.GetClubInfo(ClubID);
                    var userClub = ClubLogic.GetActiveUserClub(userid, ClubID);

                    if (userClub != null && club != null)
                    {
                        if (userClub.Responsibility.HasValue &&
                            (userClub.Responsibility.Equals((int)Responsibility.Manager) ||
                             userClub.Responsibility.Equals((int)Responsibility.Executor)))
                        {
                            if (club.ManagerUid == _kickUserID)
                            {
                                throw new Exception("您没有权限解约此会员");
                            }

                            //kick user logic
                            UserClubLogic.LeaveClub(_kickUserID, ClubID, true, username);

                            ClientScript.RegisterClientScriptBlock(typeof(string), "success", "alert('球会已与此会员成功解约');",
                                                                   true);

                            BindData();
                        }
                        else
                        {
                            throw new Exception("您没有权限解约此会员");
                        }
                    }
                    else
                    {
                        throw new Exception("该用户已不是该球会会员");
                    }
                }
            }
            catch (Exception ex)
            {
                ClientScript.RegisterClientScriptBlock(typeof(string), "failed",
                                                       $"alert('{ex.Message}');", true);
            }
        }
示例#20
0
        protected void Page_Load(object sender, EventArgs e)
        {
            var club = ClubLogic.GetClubInfo(ClubID);

            if (club != null && Title.IndexOf("{0}") >= 0)
            {
                Title = string.Format(Title, club.FullName);
            }

            #region SetControlProperty

            ctrlLeftPanel.UserID   = userid;
            ctrlLeftPanel.UserName = username;
            ctrlLeftPanel.UserKey  = userkey;

            ctrlFieldToolBar.UserID   = userid;
            ctrlFieldToolBar.UserName = username;

            ctrlMenuTabBar.CurrentMenu = ClubMenuItem.ClubPlayer;
            ctrlMenuTabBar.ClubID      = ClubID;

            ctrlClubSysHeader.UserID   = userid;
            ctrlClubSysHeader.ClubID   = ClubID;
            ctrlClubSysHeader.UserName = username;

            #endregion

            ClubPlayerLvCount = new Dictionary <int, int>();

            for (var i = 0; i <= (ConfigGlobal.PlayerMaxLv + 1); i++)
            {
                ClubPlayerLvCount[i] = 0;
            }
            BindPlayers();

            ltlPlayerCount.Text =
                $"<span>本球会正式/总球员数:<em>{FormalPlayerCount}/{PlayerStrip.GetClubPlayerCount(ClubID)}</em></span>";
            ltlPlayerLv.Text = $"<span>&gt;LV5:{ClubPlayerLvCount[ConfigGlobal.PlayerMaxLv + 1]}</span>";

            for (var j = ConfigGlobal.PlayerMaxLv; j > 0; j--)
            {
                ltlPlayerLv.Text += string.Format(" <span class=\"ClubSys_PlayerLV{0}\">LV{0}:{1}</span>", j,
                                                  ClubPlayerLvCount[j]);
            }
        }
示例#21
0
        protected void LoadPageData()
        {
            //UserClub ucFrom = ClubLogic.GetActiveUserClubs(this.userid);
            //UserClub ucTo = ClubLogic.GetActiveUserClub(ToUserID, ClubID);

            var userFrom = Users.GetUserInfo(userid);
            var userTo   = Users.GetUserInfo(ToUserID);

            if (userid != ToUserID)
            {
                var list = ClubLogic.GetUserManagedClubs(userid);

                if (list != null && list.Count > 0)
                {
                    pnlInaccessible.Visible = false;
                    phContent.Visible       = true;

                    var club = ClubLogic.GetClubInfo(ClubID);
                    lblTransferInfo.Text = string.Format("<em>{1}</em>转账给会员<em>{0} {2}</em>,您现拥有枪手币<em>{3}</em>",
                                                         club.FullName, userFrom.Username.Trim(), userTo.Username.Trim(),
                                                         userFrom.Extcredits2.ToString("N2"));

                    ltrlFromUserInfo.Text =
                        $"<em>{userFrom.Username.Trim()}</em>(金钱:{userFrom.Extcredits2.ToString("N2")} | RP:{userFrom.Extcredits4})";
                    ltrlToUserInfo.Text =
                        $"<em>{userTo.Username.Trim()}</em>(金钱:{userTo.Extcredits2.ToString("N2")} | RP:{userTo.Extcredits4})";

                    lblMaxTransfer.Text    = $" *最多为可转账<em>{(userFrom.Extcredits2*0.5f).ToString("N0")}</em>枪手币 ";
                    rvMaxCash.MaximumValue = Convert.ToInt32(userFrom.Extcredits2 * 0.5f).ToString();
                }
                else
                {
                    pnlInaccessible.Visible = true;
                    lblTips.Text            = "您没有转帐权限。";
                    phContent.Visible       = false;
                }
            }
            else
            {
                pnlInaccessible.Visible = true;
                lblTips.Text            = "您不能对自己转账。";
                phContent.Visible       = false;
            }
        }
示例#22
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            var club = ClubLogic.GetCreateClubApplicationByUserID(userid);

            var sameNameClub = ClubLogic.GetClubInfo(tbFullName.Text);

            if (club != null)
            {
                if (club.FullName == tbFullName.Text)
                {
                    ClubLogic.UpdateApplyClub(club.ID.Value, tbFullName.Text, tbShortName.Text, tbSlogan.Text,
                                              tbDesc.Text, userid, username);
                }
                else
                {
                    if (sameNameClub != null)
                    {
                        var script = "alert('该球会名已被使用!');";
                        ClientScript.RegisterClientScriptBlock(typeof(string), "name_used", script, true);
                    }
                    else
                    {
                        ClubLogic.UpdateApplyClub(club.ID.Value, tbFullName.Text, tbShortName.Text, tbSlogan.Text,
                                                  tbDesc.Text, userid, username);
                    }
                }
            }
            else
            {
                if (sameNameClub != null)
                {
                    var script = "alert('该球会名已被使用!');";
                    ClientScript.RegisterClientScriptBlock(typeof(string), "name_used", script, true);
                }
                else
                {
                    ClubLogic.ApplyClub(tbFullName.Text, tbShortName.Text, tbSlogan.Text, tbDesc.Text, userid, username);
                }
            }

            var scriptSaved = "alert('申请已提交!'); window.location.href = window.location.href;";

            ClientScript.RegisterClientScriptBlock(typeof(string), "saved", scriptSaved, true);
        }
示例#23
0
        protected void gvHistoryLog_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                var ch = (Entity.ClubHistory)e.Row.DataItem;

                var club = ClubLogic.GetClubInfo(ch.ClubID);

                if (club != null)
                {
                    var ltrlClubName = e.Row.FindControl("ltrlClubName") as Literal;

                    if (ltrlClubName != null)
                    {
                        ltrlClubName.Text = club.FullName;
                    }
                }
            }
        }
示例#24
0
        protected void Page_Load(object sender, EventArgs e)
        {
            var club = ClubLogic.GetClubInfo(ClubID);

            if (club != null)
            {
                if (club.ManagerUid.Value != UserID)
                {
                    liManageClub.Visible = false;
                }
                else
                {
                    liManageClub.Visible = true;
                }
            }
            else
            {
                Response.Redirect("ClubPortal.aspx");
            }
        }
示例#25
0
        protected void Page_Load(object sender, EventArgs e)
        {
            var item = new ListItem("--请选择球会--", Guid.Empty.ToString());

            ddlClub.DataSource     = ClubLogic.GetActiveClubs();
            ddlClub.DataTextField  = "FullName";
            ddlClub.DataValueField = "ID";
            ddlClub.DataBind();

            ddlClub.Items.Insert(0, item);

            if (ClubID != -1)
            {
                ddlClub.SelectedValue = ClubID.ToString();
            }

            ctrlAdminFieldToolBar.AdminUserName = username;

            BindClubHistory();
        }
示例#26
0
        public string GetCallbackResult()
        {
            if (applyHistoryID > 0)
            {
                var ah = ClubLogic.GetApplyHistory(applyHistoryID);
                if (ah != null && ah.IsAccepted == null)
                {
                    var count = ClubLogic.GetClubMemberCount(ClubID);
                    var quota = ClubLogic.GetClubMemberQuota(ClubID);

                    if (!approved)
                    {
                        UserClubLogic.ApproveJoinClub(ah.ID.Value, approved, username);
                        return("false");
                    }
                    if (approved && count >= quota)
                    {
                        return(string.Empty);
                    }

                    UserClubLogic.ApproveJoinClub(ah.ID.Value, approved, username);

                    //check if user joined clubs count has reached max count, if true, cancel all applications of this user
                    var myClubs = ClubLogic.GetActiveUserClubs(userid);
                    if (myClubs.Count >= ConfigGlobal.SingleUserMaxClubCount)
                    {
                        //cancel
                        var applications = ClubLogic.GetActiveUserApplications(ah.Userid);

                        foreach (var apply in applications)
                        {
                            UserClubLogic.ApproveJoinClub(apply.ID.Value, false, ClubSysPrivateMessage.ClubSysAdminName);
                        }
                    }

                    return("true");
                }
                return(string.Empty);
            }
            return(string.Empty);
        }
示例#27
0
        protected void LoadPageData()
        {
            // Administrators could enter this page
            if (ConfigAdmin.IsPluginAdmin(userid))
            {
                pnlInaccessible.Visible = false;
                phContent.Visible       = true;

                //init gridview
                BindMemberList();
            }
            else
            {
                var userClub = ClubLogic.GetActiveUserClub(userid, ClubID);

                if (userClub != null && userClub.Responsibility.HasValue)
                {
                    if (userClub.Responsibility.Value.Equals((int)Responsibility.Executor) ||
                        userClub.Responsibility.Value.Equals((int)Responsibility.Manager))
                    {
                        pnlInaccessible.Visible = false;
                        phContent.Visible       = true;

                        //init gridview
                        BindMemberList();
                    }
                    else
                    {
                        pnlInaccessible.Visible = true;
                        phContent.Visible       = false;
                    }
                }
                else
                {
                    pnlInaccessible.Visible = true;
                    phContent.Visible       = false;
                }
            }
        }
示例#28
0
        private void BindClubListData()
        {
            if (clubList == null)
            {
                clubList = ClubLogic.GetActiveClubs();
            }

            //if (userid == -1)
            //{
            //    //hide func button
            //    gvClubList.Columns[gvClubList.Columns.Count - 1].Visible = false;
            //}
            //else if (ClubLogic.GetActiveUserClubs(userid).Count != 0)
            //{
            //    gvClubList.Columns[gvClubList.Columns.Count - 1].Visible = false;
            //}

            //clubList.Sort(new ClubComparer());

            gvClubList.DataSource = clubList;
            gvClubList.DataBind();
        }
示例#29
0
        protected void Page_Load(object sender, EventArgs e)
        {
            #region SetControlProperty

            ctrlLeftPanel.UserID   = userid;
            ctrlLeftPanel.UserName = username;
            ctrlLeftPanel.UserKey  = userkey;

            ctrlFieldToolBar.UserID   = userid;
            ctrlFieldToolBar.UserName = username;

            ctrlManageMenuTabBar.CurrentMenu = ManageClubMenuItem.ManageApplication;
            ctrlManageMenuTabBar.UserID      = userid;

            #endregion

            #region Callback Reference

            var callbackReference = Page.ClientScript.GetCallbackEventReference(this, "arg", "GetResult", "context");

            var callbackScript = $"function ApproveJoin(arg, context){{ {callbackReference} }};";

            Page.ClientScript.RegisterClientScriptBlock(typeof(string), "action", callbackScript, true);

            #endregion

            var club = ClubLogic.GetClubInfo(ClubID);

            if (club != null && Title.IndexOf("{0}") >= 0)
            {
                Title = string.Format(Title, club.FullName);
            }

            if (!IsPostBack)
            {
                LoadPageData();
            }
        }
示例#30
0
        public void SearchForClubWithCountryLeague()
        {
            //Arrange Search Criterias
            ClubSearchCriteria cc = new ClubSearchCriteria();

            cc.Country = "Denmark";
            cc.League  = "Second League";

            //Arrange Player used to match with club jobposition
            var playerRepos = new Mock <IPlayerRepository <Player> >();

            playerRepos.Setup(x => x.GetById(1)).Returns(new Player {
                Id = 1
            });

            //Arrange Club
            var clubRepos = new Mock <IClubRepository <Club> >();

            clubRepos.Setup(x => x.GetBySearchCriteriaWithJobPosition(" c.isAvailable = 1  and c.league = 'Second League' and isavailable = 1  and c.country = 'Denmark' and isavailable = 1 "))
            .Returns(new List <Club>
            {
                new Club {
                    Id = 1, Country = "Sweden", League = "First League"
                },
                new Club {
                    Id = 2, Country = "Denmark", League = "Second League"
                },
                new Club {
                    Id = 3, Country = "Norway", League = "First League"
                }
            });

            ClubLogic cl = new ClubLogic(clubRepos.Object, playerRepos.Object, null);

            var list = cl.HandleClubSearchAlgorithm(cc, 1);

            Assert.Equal(2, list[0].Id);
        }