Ejemplo n.º 1
0
        /// <summary>
        /// Üyellik gerçekleştirmek için kullanılır
        /// </summary>
        /// <param name="username"></param>
        /// <param name="password"></param>
        /// <param name="confirmPassword"></param>
        public static BusinessResponse Register(string username, string password, string confirmPassword)
        {
            if (string.IsNullOrEmpty(username) || string.IsNullOrEmpty(password) || string.IsNullOrEmpty(confirmPassword))
            {
                return new BusinessResponse()
                       {
                           isSuccess = false, message = "Geçersiz istek!"
                       }
            }
            ;
            else if (password != confirmPassword)
            {
                return new BusinessResponse()
                       {
                           isSuccess = false, message = "Parolalar eşleşmiyor!"
                       }
            }
            ;
            using (OfflineMessageEntities db = new OfflineMessageEntities())
            {
                DataAccess.User user = (from s in db.User where s.username == username select s).FirstOrDefault();

                if (user != null)
                {
                    return new BusinessResponse()
                           {
                               isSuccess = false, message = "Aynı isimli kullanıcı mevcut!"
                           }
                }
                ;
                else
                {
                    try
                    {
                        user          = new DataAccess.User();
                        user.username = username;
                        user.password = CalculateSha1(password);
                        user.date     = DateTime.Now;
                        user.status   = 1;
                        db.User.Add(user);
                        db.SaveChanges();
                    }
                    catch (Exception ex)
                    {
                        Log.AddLog(ex.Message, "Register");
                        return(new BusinessResponse()
                        {
                            isSuccess = false, message = "İstenmeyen bir hata oluştu! Sistem loglarını kontrol ediniz. " + DateTime.Now.ToString()
                        });
                    }

                    Log.AddLog("Üyelik Gerçekleşti", user.ID, false);

                    return(new BusinessResponse()
                    {
                        isSuccess = true, message = "Ok"
                    });
                }
            }
        }
Ejemplo n.º 2
0
 /// <summary>
 /// System Log Ekleme
 /// </summary>
 /// <param name="exceptionMessage"></param>
 /// <param name="methodName"></param>
 public static void AddLog(string exceptionMessage, string methodName)
 {
     using (OfflineMessageEntities db = new OfflineMessageEntities())
     {
         DataAccess.SystemLog sLog = new SystemLog();
         sLog.date       = DateTime.Now;
         sLog.logMessage = "Method: " + methodName + " Hata Mesajı: " + exceptionMessage;
         db.SystemLog.Add(sLog);
         db.SaveChanges();
     }
 }
Ejemplo n.º 3
0
 /// <summary>
 /// Kullanıcı Log Ekleme
 /// </summary>
 /// <param name="logMessage"></param>
 /// <param name="userID"></param>
 /// <param name="isError"></param>
 public static void AddLog(string logMessage, int userID, bool isError)
 {
     using (OfflineMessageEntities db = new OfflineMessageEntities())
     {
         DataAccess.UserLog uLog = new UserLog();
         uLog.date       = DateTime.Now;
         uLog.logMessage = logMessage;
         uLog.isError    = isError;
         uLog.userID     = userID;
         db.UserLog.Add(uLog);
         db.SaveChanges();
     }
 }
Ejemplo n.º 4
0
        /// <summary>
        /// Kullanıcı blocklama işlemi yapar
        /// </summary>
        /// <param name="username"></param>
        /// <param name="otherUsername"></param>
        /// <param name="token"></param>
        public static BusinessResponse addBlock(string username, string otherUsername, string token)
        {
            DataAccess.User user      = User.getUser(username, token);
            DataAccess.User otherUser = User.getUser(otherUsername);
            if (user == null || user == null)
            {
                return new BusinessResponse()
                       {
                           isSuccess = false, message = "Kullanıcı bulunamadı!"
                       }
            }
            ;
            using (OfflineMessageEntities db = new OfflineMessageEntities())
            {
                bool isAny = (from s in db.Block where s.blockerID == user.ID && s.blockedID == otherUser.ID select s).Any();

                if (isAny)
                {
                    return new BusinessResponse()
                           {
                               isSuccess = false, message = "Bloklama işlemi daha önce yapılmış"
                           }
                }
                ;
                else
                {
                    try
                    {
                        DataAccess.Block block = new DataAccess.Block();
                        block.blockerID = user.ID;
                        block.blockedID = otherUser.ID;
                        block.date      = DateTime.Now;
                        db.Block.Add(block);
                        db.SaveChanges();
                        Log.AddLog("Bloklandı", user.ID, false);
                        return(new BusinessResponse()
                        {
                            isSuccess = true, message = "Ok"
                        });
                    }
                    catch (Exception ex)
                    {
                        Log.AddLog(ex.Message, "addBlock");
                        return(new BusinessResponse()
                        {
                            isSuccess = false, message = "Kritik Hata"
                        });
                    }
                }
            }
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Var olan bir bloklama kaldırılır
        /// </summary>
        /// <param name="username"></param>
        /// <param name="otherUsername"></param>
        /// <param name="token"></param>
        public static BusinessResponse removeBlock(string username, string otherUsername, string token)
        {
            DataAccess.User user      = User.getUser(username, token);
            DataAccess.User otherUser = User.getUser(otherUsername);
            if (user == null || user == null)
            {
                return new BusinessResponse()
                       {
                           isSuccess = false, message = "Kullanııcı Bulunamadı"
                       }
            }
            ;
            using (OfflineMessageEntities db = new OfflineMessageEntities())
            {
                try
                {
                    List <DataAccess.Block> blocks = (from s in db.Block where s.blockerID == user.ID && s.blockedID == otherUser.ID select s).ToList();

                    if (blocks.Count > 0)
                    {
                        db.Block.RemoveRange(blocks);
                        db.SaveChanges();
                        Log.AddLog("Block Kaldırıldı", user.ID, false);
                        return(new BusinessResponse()
                        {
                            isSuccess = true, message = "Ok"
                        });
                    }
                    else
                    {
                        Log.AddLog("Block Kaldırılamadı: Bloklama yapılmamış", user.ID, false);
                        return(new BusinessResponse()
                        {
                            isSuccess = false, message = "Kaldırılacak bir blok bulunamadı!"
                        });
                    }
                }
                catch (Exception ex)
                {
                    Log.AddLog(ex.Message, "removeBlock");
                    return(new BusinessResponse()
                    {
                        isSuccess = false, message = "Kritik Hata " + DateTime.Now.ToString()
                    });
                }
            }
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Mesaj göndermek için kullanılan method
        /// </summary>
        /// <param name="senderUser"></param>
        /// <param name="recipientUser"></param>
        /// <param name="token"></param>
        /// <param name="message"></param>
        public static BusinessResponse sendMessage(string senderUser, string recipientUser, string token, string message)
        {
            DataAccess.User sender    = User.getUser(senderUser, token);
            DataAccess.User recipient = User.getUser(recipientUser);

            if (sender != null && recipient != null)
            {
                using (OfflineMessageEntities db = new OfflineMessageEntities())
                {
                    try
                    {
                        DataAccess.Message msg = new DataAccess.Message();
                        msg.senderID       = sender.ID;
                        msg.recipientID    = recipient.ID;
                        msg.messageContent = message;
                        msg.date           = DateTime.Now;
                        msg.isRead         = false;
                        db.Message.Add(msg);
                        db.SaveChanges();
                        Log.AddLog("Mesaj Kaydedildi", sender.ID, false);
                        return(new BusinessResponse()
                        {
                            isSuccess = true, message = "Ok"
                        });
                    }
                    catch (Exception ex)
                    {
                        Log.AddLog(ex.Message, "sendMessage");
                        return(new BusinessResponse()
                        {
                            isSuccess = false, message = "Kritik Hata"
                        });
                    }
                }
            }
            else
            {
                return new BusinessResponse()
                       {
                           isSuccess = true, message = "Geçersiz kullanıcı bilgisi!"
                       }
            };
        }
Ejemplo n.º 7
0
        /// <summary>
        /// Giriş yaptıktan sonra token döner
        /// </summary>
        /// <param name="username"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        public static BusinessResponse <DataAccess.UserToken> Login(string username, string password)
        {
            if (string.IsNullOrEmpty(username) || string.IsNullOrEmpty(password))
            {
                return new BusinessResponse <UserToken>()
                       {
                           isSuccess = true, message = "Kullanıcı adı veya şifre yanlış!", Data = null
                       }
            }
            ;
            using (OfflineMessageEntities db = new OfflineMessageEntities())
            {
                DataAccess.User user = User.getUser(username);

                if (user == null)
                {
                    return new BusinessResponse <UserToken>()
                           {
                               isSuccess = true, message = "Kullanıcı adı veya şifre yanlış!", Data = null
                           }
                }
                ;
                else if (user.password == CalculateSha1(password))
                {
                    try
                    {
                        List <UserToken> tokens = (from s in db.UserToken where s.userID == user.ID && s.expireDate > DateTime.Now orderby s.expireDate descending select s).ToList();
                        if (tokens.Count < 5)
                        {
                            UserToken token = new UserToken();
                            token.date       = DateTime.Now;
                            token.userID     = user.ID;
                            token.token      = createToken();
                            token.expireDate = DateTime.Now.AddDays(14);
                            db.UserToken.Add(token);
                            db.SaveChanges();
                            Log.AddLog("Giriş Yapıldı, yeni token alındı.", user.ID, false);
                            return(new BusinessResponse <UserToken>()
                            {
                                isSuccess = true, message = "OK", Data = token
                            });
                        }
                        else
                        {
                            Log.AddLog("Giriş Yapıldı", user.ID, false);
                            return(new BusinessResponse <UserToken>()
                            {
                                isSuccess = true, message = "OK", Data = tokens[0]
                            });
                        }
                    }
                    catch (Exception ex)
                    {
                        Log.AddLog(ex.Message, "Login");
                        return(new BusinessResponse <UserToken>()
                        {
                            isSuccess = false, message = "Kritik Hata! " + DateTime.Now.ToString(), Data = null
                        });
                    }
                }
                else
                {
                    Log.AddLog("Başarısız Giriş", user.ID, false);

                    return(new BusinessResponse <UserToken>()
                    {
                        isSuccess = true, message = "Kullanıcı adı veya şifre yanlış!", Data = null
                    });
                }
            }
        }