public static int CreateInviteCode(ShortUserInfo userInfo) { InvitationConfigInfo config = InvitationConfigInfo.Current; InviteCodeInfo inviteCodeInfo = new InviteCodeInfo(); inviteCodeInfo.CreatorId = userInfo.Uid; inviteCodeInfo.Creator = userInfo.Username; inviteCodeInfo.Code = Invitation.BuildInviteCode(); while (Invitation.IsInviteCodeExist(inviteCodeInfo.Code)) { inviteCodeInfo.Code = Invitation.BuildInviteCode(); } inviteCodeInfo.CreateTime = Utils.GetDateTime(); inviteCodeInfo.InviteType = GeneralConfigInfo.Current.Regstatus; inviteCodeInfo.ExpireTime = Utils.GetDateTime(config.InviteCodeExpireTime); if (inviteCodeInfo.InviteType == 3) { inviteCodeInfo.MaxCount = ((config.InviteCodeMaxCount > 1) ? config.InviteCodeMaxCount : 1); } else { inviteCodeInfo.MaxCount = config.InviteCodeMaxCount; } return(Discuz.Data.Invitation.CreateInviteCode(inviteCodeInfo)); }
/// <summary> /// 创建邀请码信息 /// </summary> /// <param name="userInfo">创建用户信息</param> /// <returns></returns> public static int CreateInviteCode(ShortUserInfo userInfo) { InvitationConfigInfo configInfo = InvitationConfigs.GetConfig(); InviteCodeInfo inviteCode = new InviteCodeInfo(); inviteCode.CreatorId = userInfo.Uid; inviteCode.Creator = userInfo.Username; inviteCode.Code = BuildInviteCode(); while (IsInviteCodeExist(inviteCode.Code))//生成的邀请码code是否存在于数据库中 { inviteCode.Code = BuildInviteCode(); } inviteCode.CreateTime = Utils.GetDateTime(); inviteCode.InviteType = GeneralConfigs.GetConfig().Regstatus; inviteCode.ExpireTime = Utils.GetDateTime(configInfo.InviteCodeExpireTime); if (inviteCode.InviteType == 3) { inviteCode.MaxCount = configInfo.InviteCodeMaxCount > 1 ? configInfo.InviteCodeMaxCount : 1; } else { inviteCode.MaxCount = configInfo.InviteCodeMaxCount; } return(Data.Invitation.CreateInviteCode(inviteCode)); }
public void LoadConfigInfo() { #region 加载配置信息 GeneralConfigInfo configInfo = GeneralConfigs.GetConfig(); InvitationConfigInfo invitationConfigInfo = InvitationConfigs.GetConfig(); regstatus.SelectedValue = configInfo.Regstatus.ToString(); censoruser.Text = configInfo.Censoruser; doublee.SelectedValue = configInfo.Doublee.ToString(); emaillogin.SelectedValue = configInfo.Emaillogin.ToString(); regverify.SelectedValue = configInfo.Regverify.ToString(); accessemail.Text = configInfo.Accessemail; censoremail.Text = configInfo.Censoremail; hideprivate.SelectedValue = configInfo.Hideprivate.ToString(); ipdenyaccess.Text = configInfo.Ipdenyaccess; ipaccess.Text = configInfo.Ipaccess; regctrl.Text = configInfo.Regctrl.ToString(); ipregctrl.Text = configInfo.Ipregctrl; adminipaccess.Text = configInfo.Adminipaccess; welcomemsg.SelectedValue = configInfo.Welcomemsg.ToString(); welcomemsgtxt.Text = configInfo.Welcomemsgtxt; rules.SelectedValue = configInfo.Rules.ToString(); rulestxt.Text = configInfo.Rulestxt; newbiespan.Text = configInfo.Newbiespan.ToString(); realnamesystem.SelectedValue = configInfo.Realnamesystem.ToString(); invitecodeexpiretime.Text = invitationConfigInfo.InviteCodeExpireTime.ToString(); invitecodemaxcount.Text = invitationConfigInfo.InviteCodeMaxCount.ToString(); addextcreditsline.Text = invitationConfigInfo.InviteCodePayCount.ToString(); invitationuserdescription.Text = invitationConfigInfo.InvitationLoginUserDescription;//配置项赋值给textarea的innnerhtml能保证显示出来的是所见即所得的效果 invitationvisitordescription.Text = invitationConfigInfo.InvitationVisitorDescription; invitationemailmodel.Text = invitationConfigInfo.InvitationEmailTemplate; invitecodeusermaxbuy.Text = invitationConfigInfo.InviteCodeMaxCountToBuy.ToString(); invitecodeusercreateperday.Text = invitationConfigInfo.InviteCodeUserCreatePerDay.ToString(); passwordmode.SelectedValue = configInfo.Passwordmode.ToString(); CookieDomain.Text = configInfo.CookieDomain.ToString(); string[] extCredits = Utils.SplitString(invitationConfigInfo.InviteCodePrice, ","); extCreditsUnits = Scoresets.GetValidScoreUnit(); DataTable extCreditsTable = Scoresets.GetScorePaySet(0); //初始化邀请码价格显示界面,全部为隐藏 for (int count = 0; count < 8; count++) { extCreditsName[count] = ""; TextBox textbox = this.FindControl("invitecodeprice" + count.ToString()) as TextBox; textbox.Text = extCredits[count]; textbox.Visible = false; } //根据邀请码相关信息,将有效的信息显示在界面中 foreach (DataRow dr in extCreditsTable.Rows) { extCreditsName[Utils.StrToInt(dr["id"].ToString(), 0) - 1] = dr["name"].ToString() + ":"; TextBox textbox = this.FindControl("invitecodeprice" + (Utils.StrToInt(dr[0].ToString(), 0) - 1).ToString()) as TextBox; textbox.Visible = true; } #endregion }
public void LoadConfigInfo() { GeneralConfigInfo config = GeneralConfigInfo.Current; InvitationConfigInfo config2 = InvitationConfigInfo.Current; this.regstatus.SelectedValue = config.Regstatus.ToString(); this.censoruser.Text = config.Censoruser; this.doublee.SelectedValue = config.Doublee.ToString(); this.emaillogin.SelectedValue = config.Emaillogin.ToString(); this.regverify.SelectedValue = config.Regverify.ToString(); this.accessemail.Text = config.Accessemail; this.censoremail.Text = config.Censoremail; this.hideprivate.SelectedValue = config.Hideprivate.ToString(); this.ipdenyaccess.Text = config.Ipdenyaccess; this.ipaccess.Text = config.Ipaccess; this.regctrl.Text = config.Regctrl.ToString(); this.ipregctrl.Text = config.Ipregctrl; this.adminipaccess.Text = config.Adminipaccess; this.welcomemsg.SelectedValue = config.Welcomemsg.ToString(); this.welcomemsgtxt.Text = config.Welcomemsgtxt; this.rules.SelectedValue = config.Rules.ToString(); this.rulestxt.Text = config.Rulestxt; this.newbiespan.Text = config.Newbiespan.ToString(); this.realnamesystem.SelectedValue = config.Realnamesystem.ToString(); this.invitecodeexpiretime.Text = config2.InviteCodeExpireTime.ToString(); this.invitecodemaxcount.Text = config2.InviteCodeMaxCount.ToString(); this.addextcreditsline.Text = config2.InviteCodePayCount.ToString(); this.invitationuserdescription.Text = config2.InvitationLoginUserDescription; this.invitationvisitordescription.Text = config2.InvitationVisitorDescription; this.invitationemailmodel.Text = config2.InvitationEmailTemplate; this.invitecodeusermaxbuy.Text = config2.InviteCodeMaxCountToBuy.ToString(); this.invitecodeusercreateperday.Text = config2.InviteCodeUserCreatePerDay.ToString(); this.passwordmode.SelectedValue = config.Passwordmode.ToString(); this.CookieDomain.Text = config.CookieDomain; this.verifyregisterexpired.Text = config.Verifyregisterexpired.ToString(); this.verifyemailtemp.text = config.Verifyregisteremailtemp; string[] array = Utils.SplitString(config2.InviteCodePrice, ","); this.extCreditsUnits = Scoresets.GetValidScoreUnit(); var scorePaySet = Scoresets.GetScorePaySet(0); for (int i = 0; i < 8; i++) { this.extCreditsName[i] = ""; var textBox = this.FindControl("invitecodeprice" + i) as BBX.Control.TextBox; textBox.Text = array[i]; textBox.Visible = false; } foreach (DataRow dataRow in scorePaySet.Rows) { this.extCreditsName[dataRow["id"].ToString().ToInt(0) - 1] = dataRow["name"] + ":"; var textBox2 = this.FindControl("invitecodeprice" + (dataRow[0].ToString().ToInt(0) - 1).ToString()) as BBX.Control.TextBox; textBox2.Visible = true; } }
private void SaveInfo_Click(object sender, EventArgs e) { #region 保存设置信息 if (this.CheckCookie()) { GeneralConfigInfo configInfo = GeneralConfigs.GetConfig(); InvitationConfigInfo invitationConfigInfo = InvitationConfigs.GetConfig(); if (Convert.ToInt16(regverify.SelectedValue) == 1 && DNTRequest.GetString("verifyemailtempmessage_hidden").IndexOf("{1}") == -1) { base.RegisterStartupScript("erro", "<script>alert('验证请求信息邮件内容模板中必须包含\"{1}\"');</script>"); return; } configInfo.Regstatus = Convert.ToInt16(regstatus.SelectedValue); configInfo.Censoruser = DelNullRowOrSpace(censoruser.Text); configInfo.Doublee = Convert.ToInt16(doublee.SelectedValue); configInfo.Emaillogin = Convert.ToInt16(emaillogin.SelectedValue); configInfo.Regverify = Convert.ToInt16(regverify.SelectedValue); configInfo.Accessemail = accessemail.Text; configInfo.Censoremail = censoremail.Text; configInfo.Hideprivate = Convert.ToInt16(hideprivate.SelectedValue); configInfo.Ipdenyaccess = ipdenyaccess.Text; configInfo.Ipaccess = ipaccess.Text; configInfo.Regctrl = Convert.ToInt16(regctrl.Text); configInfo.Ipregctrl = ipregctrl.Text; configInfo.Adminipaccess = adminipaccess.Text; configInfo.Welcomemsg = Convert.ToInt16(welcomemsg.SelectedValue); configInfo.Welcomemsgtxt = welcomemsgtxt.Text; configInfo.Rules = Convert.ToInt16(rules.SelectedValue); configInfo.Rulestxt = rulestxt.Text; configInfo.Newbiespan = Convert.ToInt16(newbiespan.Text); configInfo.Realnamesystem = Convert.ToInt16(realnamesystem.SelectedValue); configInfo.Passwordmode = Convert.ToInt16(passwordmode.SelectedValue); configInfo.CookieDomain = CookieDomain.Text; configInfo.Verifyregisterexpired = Convert.ToInt16(verifyregisterexpired.Text); configInfo.Verifyregisteremailtemp = RepairEmailTemplateCodeParameter(DNTRequest.GetString("verifyemailtempmessage_hidden")); invitationConfigInfo.InviteCodePayCount = Utils.StrToInt(addextcreditsline.Text, 0); invitationConfigInfo.InviteCodeExpireTime = Utils.StrToInt(invitecodeexpiretime.Text, 0); invitationConfigInfo.InviteCodeMaxCount = Utils.StrToInt(invitecodemaxcount.Text, 0); invitationConfigInfo.InviteCodePrice = CreateInviteCodePriceString(); invitationConfigInfo.InvitationLoginUserDescription = DNTRequest.GetString("invitationuserdescriptionmessage_hidden");//保存的时候取textarea的value值可以保证前台显示正常 invitationConfigInfo.InvitationVisitorDescription = DNTRequest.GetString("invitationvisitordescriptionmessage_hidden"); invitationConfigInfo.InvitationEmailTemplate = RepairEmailTemplateCodeParameter(DNTRequest.GetString("invitationemailmodelmessage_hidden")); invitationConfigInfo.InviteCodeMaxCountToBuy = Convert.ToInt16(invitecodeusermaxbuy.Text); invitationConfigInfo.InviteCodeUserCreatePerDay = Convert.ToInt16(invitecodeusercreateperday.Text); Hashtable IPHash = new Hashtable(); IPHash.Add("特殊 IP 注册限制", ipregctrl.Text); IPHash.Add("IP 禁止访问列表", ipdenyaccess.Text); IPHash.Add("IP 访问列表", ipaccess.Text); IPHash.Add("管理员后台IP访问列表", adminipaccess.Text); string ipkey = ""; if (Utils.IsRuleTip(IPHash, "ip", out ipkey) == false) { base.RegisterStartupScript("erro", "<script>alert('" + ipkey.ToString() + ",IP格式错误');</script>"); return; } Hashtable Emailhash = new Hashtable(); Emailhash.Add("Email 允许地址", accessemail.Text); Emailhash.Add("Email 禁止地址", censoremail.Text); string key = ""; if (Utils.IsRuleTip(Emailhash, "email", out key) == false) { base.RegisterStartupScript("erro", "<script>alert('" + key.ToString() + ",Email格式错误');</script>"); return; } GeneralConfigs.Serialiaze(configInfo, Server.MapPath("../../config/general.config")); InvitationConfigs.Serialiaze(invitationConfigInfo, Server.MapPath("../../config/invitation.config")); AdminVistLogs.InsertLog(this.userid, this.username, this.usergroupid, this.grouptitle, this.ip, "注册与访问控制设置", ""); base.RegisterStartupScript("PAGE", "window.location.href='global_registerandvisit.aspx';"); } #endregion }