Exemplo n.º 1
0
        /// <summary>
        /// Выполнить вход пользователя в систему
        /// </summary>
        /// <remarks>Если пароль равен null, то он не проверяется</remarks>
        public bool Login(string username, string password, out string errMsg)
        {
            username = username == null ? "" : username.Trim();
            int roleID;

            AppData.Refresh();

            if (AppData.CheckUser(username, password, password != null, out roleID, out errMsg))
            {
                LoggedOn = true;
                LogonDT  = DateTime.Now;

                // заполнение свойств пользователя
                UserProps          = new UserProps();
                UserProps.UserID   = AppData.DataAccess.GetUserID(username);
                UserProps.UserName = username;
                UserProps.RoleID   = roleID;
                UserProps.RoleName = AppData.DataAccess.GetRoleName(roleID);

                if (password == null)
                {
                    AppData.Log.WriteAction(string.Format(Localization.UseRussian ?
                                                          "Вход в систему без пароля: {0} ({1}). IP-адрес: {2}" :
                                                          "Login without a password: {0} ({1}). IP address: {2}",
                                                          username, UserProps.RoleName, IpAddress));
                }
                else
                {
                    AppData.Log.WriteAction(string.Format(Localization.UseRussian ?
                                                          "Вход в систему: {0} ({1}). IP-адрес: {2}" :
                                                          "Login: {0} ({1}). IP address: {2}",
                                                          username, UserProps.RoleName, IpAddress));
                }

                UserRights userRights = new UserRights();
                userRights.Init(roleID, AppData.DataAccess);
                UserRights = userRights;

                AppData.UserMonitor.AddUser(this);
                UpdateAppDataRefs();
                RaiseOnUserLogin();

                UserMenu = new UserMenu(AppData.Log);
                UserMenu.Init(this);
                UserViews = new UserViews(AppData.Log);
                UserViews.Init(this, AppData.DataAccess);
                UserContent = new UserContent(AppData.Log);
                UserContent.Init(this, AppData.DataAccess);
                return(true);
            }
            else
            {
                Logout();
                AppData.Log.WriteError(string.Format(Localization.UseRussian ?
                                                     "Неудачная попытка входа в систему: {0}{1}. IP-адрес: {2}" :
                                                     "Unsuccessful login attempt: {0}{1}. IP address: {2}",
                                                     username == "" ? "" : username + " - ", errMsg.TrimEnd('.'), IpAddress));
                return(false);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Получить список пар канал/представление по ид. представления
        /// </summary>
        public static List <CnlViewPair> GetCnlViewPairsByView(
            int viewID, DataAccess dataAccess, ViewCache viewCache, UserViews userViews)
        {
            BaseView view = null;

            if (viewID > 0)
            {
                Type viewType = userViews.GetViewType(viewID);
                view = viewCache.GetView(viewType, viewID);
            }

            if (view == null)
            {
                return(null);
            }
            else
            {
                List <CnlViewPair> cnlsByView = new List <CnlViewPair>();
                foreach (int cnlNum in view.CnlList)
                {
                    CnlViewPair pair = new CnlViewPair(cnlNum, 0);
                    pair.FillInfo(dataAccess.GetCnlProps(cnlNum), null);
                    cnlsByView.Add(pair);
                }
                return(cnlsByView);
            }
        }
Exemplo n.º 3
0
        public async void GetTasksForUser()
        {
            var adduser = new UserAdd()
            {
                Email = Guid.NewGuid().ToString()
            };


            var userTrans = new UserTransactions();
            var userView  = new UserViews();


            var user = await userTrans.Add(adduser);

            for (int i = 0; i < 10; i++)
            {
                var taskTrans = new TaskTransactions();
                await taskTrans.Add(new TaskAdd()
                {
                    Name = Guid.NewGuid().ToString(), UserUserId = user.UserId, CompletedDate = new DateTime(1900, 1, 1), DueDate = DateTime.Now.AddDays(30), StartedDate = DateTime.Now
                });
            }

            var taskviews = new TaskViews();

            var tasks = await taskviews.GetTasksForUser(user.UserId);

            tasks.Should().HaveCount(10);
            user.Tasks.Should().HaveCount(10);

            var first = user.Tasks.First();

            user.Tasks.First().User.UserId.Should().Be(user.UserId);
        }
Exemplo n.º 4
0
        public async void UpdateUserTest()
        {
            var adduser = new UserAdd()
            {
                Email = Guid.NewGuid().ToString()
            };


            var userTrans = new UserTransactions();
            var userView  = new UserViews();


            var user = await userTrans.Add(adduser);

            var updateuser = new UserUpdate()
            {
                UserId = user.UserId, Email = user.Email, FirstName = "Daniel"
            };

            await userTrans.Update(updateuser);

            var userview = await userView.Get(user.UserId);

            user.UserId.Should().Be(userview.UserId);
            user.Email.Should().Be(userview.Email);
            userview.FirstName.Should().Be("Daniel");
        }
Exemplo n.º 5
0
        /// <summary>
        /// Заполнить наименование канала и информацию
        /// </summary>
        public void FillInfo(InCnlProps cnlProps, UserViews userViews)
        {
            StringBuilder sbInfo = new StringBuilder();

            if (cnlProps == null)
            {
                CnlName = "";
            }
            else
            {
                CnlName = cnlProps.CnlName;
                if (cnlProps.ObjNum > 0)
                {
                    sbInfo.Append(ChartPhrases.ObjectHint).Append("[").Append(cnlProps.ObjNum).Append("] ")
                    .AppendLine(cnlProps.ObjName);
                }
                if (cnlProps.KPNum > 0)
                {
                    sbInfo.Append(ChartPhrases.DeviceHint).Append("[").Append(cnlProps.KPNum).Append("] ")
                    .AppendLine(cnlProps.KPName);
                }
            }

            if (ViewID > 0 && userViews != null)
            {
                ViewNode viewNode = userViews.GetViewNode(ViewID);
                if (viewNode != null)
                {
                    sbInfo.Append(ChartPhrases.ViewHint).Append(viewNode.Text);
                }
            }

            Info = sbInfo.ToString().TrimEnd();
        }
Exemplo n.º 6
0
        protected void Page_Load(object sender, EventArgs e)
        {
            long id = Convert.ToInt64(Request.QueryString["id"]);

            advId = (int)id;


            ItemLikes    = DataHelper.GetItemLikes(0, advId);
            ItemDislikes = DataHelper.GetItemDisLikes(0, advId);



            if (id == 0)
            {
                Response.Redirect("/");
            }


            AdvertItem  = AdvertsDataHelper.GetAdvert(id);
            AnotherUser = DataHelper.GetUser(AdvertItem.CreatedUserId);

            if (!IsPostBack)
            {
                ViewsCount = DataHelper.GetUserViewsCount((int)id, StructsHelper.ViewedType["product"]);

                if (User != null)
                {
                    // if user didnt authorised, it will be null
                    UserViews userViews = new UserViews()
                    {
                        Date     = DateTime.Now,
                        UserId   = User.UserId,
                        Type     = StructsHelper.ViewedType["product"],
                        ObjectId = (int)id
                    };

                    DataHelper.TryAddUserView(userViews);
                }



                if (User != null)
                {
                    WatchedDataHelper.AddWatched(User.UserId, id);
                }
                else
                {
                    if (Request.Cookies["uid"] != null)
                    {
                        string value = Request.Cookies["uid"].Value;

                        WatchedDataHelper.AddWatchedByCookies(value, id);
                    }
                }
            }
        }
 private void Reset()
 {
     TileService.Current.ResetWideTile(App.SpecificSettings.UseTransparentTile);
     _hasLoaded = false;
     Folders.Clear();
     UserViews.Clear();
     RecentItems.Clear();
     FavouriteItems.Clear();
     InProgressItems.Clear();
 }
Exemplo n.º 8
0
        /// <summary>
        /// Выполнить вход пользователя в систему
        /// </summary>
        /// <remarks>Если пароль равен null, то он не проверяется</remarks>
        public bool Login(string username, string password, out string errMsg)
        {
            username = username == null ? "" : username.Trim();
            AppData.Refresh();

            if (AppData.CheckUser(username, password, password != null, out int roleID, out errMsg))
            {
                LoggedOn = true;
                LogonDT  = DateTime.Now;

                // заполнение свойств пользователя
                UserProps = new UserProps()
                {
                    UserID   = AppData.DataAccess.GetUserID(username),
                    UserName = username,
                    RoleID   = roleID,
                    RoleName = AppData.DataAccess.GetRoleName(roleID)
                };

                if (password == null)
                {
                    AppData.Log.WriteAction(string.Format(Localization.UseRussian ?
                                                          "Вход в систему без пароля: {0} ({1}). IP-адрес: {2}" :
                                                          "Login without a password: {0} ({1}). IP address: {2}",
                                                          username, UserProps.RoleName, IpAddress));
                }
                else
                {
                    AppData.Log.WriteAction(string.Format(Localization.UseRussian ?
                                                          "Вход в систему: {0} ({1}). IP-адрес: {2}" :
                                                          "Login: {0} ({1}). IP address: {2}",
                                                          username, UserProps.RoleName, IpAddress));
                }

                UserRights userRights = new UserRights(AppData.ViewCache);
                userRights.Init(roleID, AppData.DataAccess);
                UserRights = userRights;

                AppData.UserMonitor.AddUser(this);
                StartPage = AppData.WebSettings.StartPage; // set start page by default
                UpdateAppDataRefs();
                RaiseOnUserLogin();

                UserMenu = new UserMenu(AppData.Log);
                UserMenu.Init(this);
                UserViews = new UserViews(AppData.ViewCache, AppData.Log);
                UserViews.Init(this, AppData.DataAccess);
                UserContent = new UserContent(AppData.Log);
                UserContent.Init(this, AppData.DataAccess);
                return(true);
            }
Exemplo n.º 9
0
        public async System.Threading.Tasks.Task GetUsers()
        {
            var Users = new UserViews();

            var temp = await Users.GetAll();

            //Items.Add(temp.First());

            UserViews.Clear();

            foreach (var userView in temp)
            {
                UserViews.Add(userView);
            }
        }
        public override void WireMessages()
        {
            Messenger.Default.Register <PropertyChangedMessage <object> >(this, async m =>
            {
                if (m.PropertyName.Equals("IncludeTrailersInRecent"))
                {
                    await SortRecent(_recentItems);
                }
            });

            Messenger.Default.Register <NotificationMessage>(this, m =>
            {
                if (m.Notification.Equals(Constants.Messages.UseLibraryFoldersMsg))
                {
                    Folders.Clear();
                    UserViews.Clear();
                    GetEverything(true);
                }
            });
        }
        private async Task <bool> GetUserViews()
        {
            try
            {
                var item = await ApiClient.GetUserViews(AuthenticationService.Current.LoggedInUserId);

                if (item != null && !item.Items.IsNullOrEmpty())
                {
                    UserViews.Clear();
                    item.Items.Foreach(UserViews.Add);
                    return(true);
                }
            }
            catch (HttpException ex)
            {
                Utils.HandleHttpException("GetUserViews()", ex, NavigationService, Log);
            }

            return(false);
        }
Exemplo n.º 12
0
        public async void AddUserTest()
        {
            var adduser = new UserAdd()
            {
                Email = Guid.NewGuid().ToString()
            };


            var userTrans = new UserTransactions();
            var userView  = new UserViews();


            var user = await userTrans.Add(adduser);

            var userview = await userView.Get(user.UserId);


            user.UserId.Should().Be(userview.UserId);

            user.Email.Should().Be(userview.Email);
        }
Exemplo n.º 13
0
        /// <summary>
        /// Заполнить выпадающий список представлений
        /// </summary>
        public static void FillViewList(DropDownList ddlView, int preferableViewID, UserViews userViews)
        {
            int             selInd1      = -1; // индекс выбранного элемента, соответствующего непустому представлению
            int             selInd2      = -1; // индекс выбранного элемента, соответствующего предпочтительному представлению
            List <ViewNode> viewNodes    = userViews.GetLinearViewNodes();
            int             viewNodesCnt = viewNodes.Count;

            // заполнение списка представлений и определение индексов выбранного элемента
            ddlView.Items.Clear();
            for (int i = 0; i < viewNodesCnt; i++)
            {
                ViewNode viewNode = viewNodes[i];

                if (selInd1 <= 0 && !viewNode.IsEmpty)
                {
                    selInd1 = i;
                }
                if (selInd2 <= 0 && preferableViewID > 0 && viewNode.ViewID == preferableViewID)
                {
                    selInd2 = i;
                }

                string text = new string('-', viewNode.Level) + " " + viewNode.Text;
                ddlView.Items.Add(new ListItem(text, viewNode.ViewID.ToString()));
            }

            // установка выбранного элемента
            if (selInd2 >= 0)
            {
                ddlView.SelectedIndex = selInd2;
            }
            else if (selInd1 >= 0)
            {
                ddlView.SelectedIndex = selInd1;
            }
        }
Exemplo n.º 14
0
        public async void DeleteUserTest()
        {
            var adduser = new UserAdd()
            {
                Email = Guid.NewGuid().ToString()
            };


            var userTrans = new UserTransactions();
            var userView  = new UserViews();


            var user = await userTrans.Add(adduser);

            await userTrans.Delete(new UserDelete()
            {
                UserId = user.UserId
            });

            var userview = await userView.Get(user.UserId);


            userview.Should().BeNull();
        }
Exemplo n.º 15
0
        public async Task Load(int userId)
        {
            var uv = new UserViews();

            this.UserView = await uv.Get(userId);
        }