林雨其蒙吧 关注:4贴子:141
  • 3回复贴,共1

论坛整合类

只看楼主收藏回复

using System;
using System.Collections.Generic;
using System.Text;

using Discuz.Common;
using Discuz.Forum;
using Discuz.Config;
using Discuz.Entity;


public static void Login(string username, string password)
        {
            try
            {
                Discuz.Config.GeneralConfigInfo config = Discuz.Config.GeneralConfigs.GetConfig();
                int uid = Users.GetUserID(username);
                if (uid == -1 || !Users.Exists(uid))
                {
                    Regedit(username, password);
                    uid = Users.GetUserID(username);
                }

                //删除之前的错误登录信息
                LoginLogs.DeleteLoginLog(DNTRequest.GetIP());
                //根据积分公式刷新用户总积分
                UserCredits.UpdateUserCredits(uid);
                //写入用户登录后的cookie
                ForumUtils.WriteUserCookie(uid, Utils.StrToInt(DNTRequest.GetString("expires"), -1), config.Passwordkey, DNTRequest.GetInt("templateid", 0), DNTRequest.GetInt("loginmode", -1));
                //更新用户最后动作,如不需要可不执行
                //OnlineUsers.UpdateAction(olid, UserAction.Login.ActionID, 0, config.Onlinetimeout);
                //更新该用户最后访问时间
                Users.UpdateUserLastvisit(uid, DNTRequest.GetIP());
            }
            catch
            {
            }

        }



IP属地:广西1楼2008-10-24 11:05回复
    public static void Logout(string username)
     {
     try
     {
     int uid = Users.GetUserID(username);
     int olid = OnlineUsers.GetOlidByUid(uid);
     OnlineUsers.DeleteRows(olid);
     ForumUtils.ClearUserCookie();
     }
     catch
     {
     }
     }


    IP属地:广西2楼2008-10-24 11:05
    回复
      public static bool Delete(string userName)
       {
       int uid = Users.GetUserID(userName);
       if (Convert.ToInt32(uid) > 1) //判断是不是当前UID是不是系统初始化时生成的UID
       {
       int deluserid = Convert.ToInt32(uid);
       AdminUsers.DelUserAllInf(deluserid, true, true);
       return true;
       }
       return false;
       
       }

       public static bool ChangePassword(string userName, string password)
       {
       try
       {
       int uid = Users.GetUserID(userName);
       return Users.UpdateUserPassword(uid, password);
       }
       catch
       {
       return false;
       }

       //UserFactory.UpdateUserPassword(uid, newpassword);
       //ForumUtils.WriteCookie("password", ForumUtils.SetCookiePassword(Utils.MD5(newpassword), config.Passwordkey));
       //OnlineUserFactory.UpdatePassword(olid, Utils.MD5(newpassword)); 
       }


      IP属地:广西3楼2008-10-24 11:06
      回复
        public static bool Regedit(string tmpUsername, string password)
         {
         try
         {
         //以下为用户注册代码
         Discuz.Config.GeneralConfigInfo config = Discuz.Config.GeneralConfigs.GetConfig();

         UserGroupInfo usergroupinfo = new UserGroupInfo();
         usergroupinfo.Groupid = 10; //新手上路

         //如果用户名符合注册规则, 则判断是否已存在
         if (Users.Exists(tmpUsername))
         {
         //
         // 这里提示错误信息"用户名已经存在!"
         //
         return false;
         }

         UserInfo __userinfo = new UserInfo();
         __userinfo.Username = Utils.HtmlEncode(tmpUsername);
         __userinfo.Nickname = Utils.HtmlEncode(DNTRequest.GetString(""));
         __userinfo.Password = Utils.MD5(password);
         __userinfo.Secques = "";// ForumUtils.GetUserSecques(DNTRequest.GetInt("question", 0), DNTRequest.GetString("answer"));
         __userinfo.Gender = DNTRequest.GetInt("gender", 0);
         __userinfo.Adminid = 0;
         __userinfo.Groupexpiry = 0;
         __userinfo.Extgroupids = "";
         __userinfo.Regip = DNTRequest.GetIP();
         __userinfo.Joindate = Utils.GetDateTime();
         __userinfo.Lastip = DNTRequest.GetIP();
         __userinfo.Lastvisit = Utils.GetDateTime();
         __userinfo.Lastactivity = Utils.GetDateTime();
         __userinfo.Lastpost = Utils.GetDateTime();
         __userinfo.Lastpostid = 0;
         __userinfo.Lastposttitle = "";
         __userinfo.Posts = 0;
         __userinfo.Digestposts = 0;
         __userinfo.Oltime = 0;
         __userinfo.Pageviews = 0;
         __userinfo.Credits = 0;
         __userinfo.Extcredits1 = Scoresets.GetScoreSet(1).Init;
         __userinfo.Extcredits2 = Scoresets.GetScoreSet(2).Init;
         __userinfo.Extcredits3 = Scoresets.GetScoreSet(3).Init;
         __userinfo.Extcredits4 = Scoresets.GetScoreSet(4).Init;
         __userinfo.Extcredits5 = Scoresets.GetScoreSet(5).Init;
         __userinfo.Extcredits6 = Scoresets.GetScoreSet(6).Init;
         __userinfo.Extcredits7 = Scoresets.GetScoreSet(7).Init;
         __userinfo.Extcredits8 = Scoresets.GetScoreSet(8).Init;
         __userinfo.Avatarshowid = 0;
         __userinfo.Email = "";
         __userinfo.Bday = "";
         __userinfo.Sigstatus = DNTRequest.GetInt("sigstatus", 0);

         if (__userinfo.Sigstatus != 0)
         {
         __userinfo.Sigstatus = 1;
         }
         __userinfo.Tpp = DNTRequest.GetInt("tpp", 0);
         __userinfo.Ppp = DNTRequest.GetInt("ppp", 0);
         __userinfo.Templateid = DNTRequest.GetInt("templateid", 1);
         __userinfo.Pmsound = DNTRequest.GetInt("pmsound", 0);
         __userinfo.Showemail = DNTRequest.GetInt("showemail", 0);


        IP属地:广西4楼2008-10-24 11:06
        回复