コード例 #1
0
        public MasterInitModel(Guid token, CryptxServiceClient cryptx, AuthorizeServiceClient authorize, string files,
                               OperationType?type)
        {
            UserInfoResponse curUser = authorize.GetUserData(token);

            ProfileResponse      blankProfileResponse = cryptx.GetBlankProfile();
            UserProfilesResponse response             = cryptx.GetUserProfiles(Guid.Empty, token);

            OperationType    = (type == null) ? 0 : (OperationType)type;
            FilesJSON        = string.IsNullOrEmpty(files) ? "[]" : files;
            BlankProfileJSON = JsonConvert.SerializeObject(blankProfileResponse.Settings, Formatting.Indented);

            if (response.UserProfileList.Count == 0)
            {
                response.UserProfileList.Add(new UserProfileListElement
                {
                    Name = "Стандартные"
                });
            }

            SettingsJSON = JsonConvert.SerializeObject(response.UserProfileList, Formatting.Indented);
            UserInfo     = curUser.User;
        }
コード例 #2
0
        public ActionResult Index(Name?name, SignText?signText, EncText?encText, Guid?userId)
        {
            Guid token = CheckSessionAuthState(CurrentUser, _authService);

            if (token == Guid.Empty)
            {
                return(RedirectToAction("LogOff", "Account"));
            }

            var navigation = new MyNavigation();

            if (userId != null && userId != Guid.Empty)
            {
                navigation.Navigations.Add(new NavElement
                {
                    Depth      = 1,
                    Name       = "Администрирование",
                    Action     = "Index",
                    Controller = "Administration",
                    IsUrl      = true
                });
                UserInfoResponse responseUser = _authService.GetUserDataByID((Guid)userId);
                navigation.Navigations.Add(new NavElement
                {
                    Depth = 3,
                    Name  = responseUser.User.Name,
                    IsUrl = false
                });
                navigation.Navigations.Add(new NavElement
                {
                    Depth = 4,
                    Name  = "Шаблоны настроек",
                    IsUrl = false
                });
            }
            else
            {
                navigation.Navigations.Add(new NavElement
                {
                    Depth      = 1,
                    Name       = "Шаблоны настроек",
                    Action     = "Index",
                    Controller = "Settings",
                    IsUrl      = false
                });
            }

            ViewBag.nav = navigation.Navigations.OrderBy(x => x.Depth).ToList();
            var userInfo = (UserInfo)Session["userInfo"];

            ViewBag.userInfo = userInfo;

            UserProfilesResponse response = _cryptxService.GetUserProfiles(userId == null ? Guid.Empty : (Guid)userId,
                                                                           token);


            if (response.Exception != null)
            {
                throw response.Exception;
            }

            switch (name)
            {
            case Name.ASC:
                signText                 = null;
                encText                  = null;
                ViewBag.name             = name;
                ViewBag.signText         = null;
                ViewBag.encText          = null;
                response.UserProfileList = response.UserProfileList.OrderBy(x => x.Name).ToList();
                break;

            case Name.DESC:
                signText = null;
                encText  = null;

                ViewBag.name             = name;
                ViewBag.signText         = null;
                ViewBag.encText          = null;
                response.UserProfileList = response.UserProfileList.OrderByDescending(x => x.Name).ToList();
                break;
            }

            switch (signText)
            {
            case SignText.ASC:
                name                     = null;
                encText                  = null;
                ViewBag.name             = null;
                ViewBag.signText         = signText;
                ViewBag.encText          = null;
                response.UserProfileList = response.UserProfileList.OrderBy(x => x.SignText).ToList();
                break;

            case SignText.DESC:
                name    = null;
                encText = null;

                ViewBag.name             = null;
                ViewBag.signText         = signText;
                ViewBag.encText          = null;
                response.UserProfileList = response.UserProfileList.OrderByDescending(x => x.SignText).ToList();
                break;
            }

            switch (encText)
            {
            case EncText.ASC:
                name                     = null;
                signText                 = null;
                ViewBag.name             = null;
                ViewBag.signText         = null;
                ViewBag.encText          = encText;
                response.UserProfileList = response.UserProfileList.OrderBy(x => x.EncryptionText).ToList();
                break;

            case EncText.DESC:
                name     = null;
                signText = null;

                ViewBag.name             = null;
                ViewBag.signText         = null;
                ViewBag.encText          = encText;
                response.UserProfileList =
                    response.UserProfileList.OrderByDescending(x => x.EncryptionText).ToList();
                break;
            }
            ViewBag.UserId = userId == null ? Guid.Empty : (Guid)userId;
            return(View(response.UserProfileList));
        }
コード例 #3
0
        public ActionResult Edit(Guid?Id, Guid?userId)
        {
            Guid token = CheckSessionAuthState(CurrentUser, _authService);

            if (token == Guid.Empty)
            {
                return(RedirectToAction("LogOff", "Account"));
            }

            ViewBag.canDelete = false;
            ProfileResponse response;

            var settings = new Settings();

            if (Id == null || Id == Guid.Empty)
            {
                ViewBag.Title = "Шаблоны настроек";
                response      = _cryptxService.GetBlankProfile();
                if (response.Exception == null)
                {
                    settings = response.Settings;
                }
                else
                {
                    throw response.Exception;
                }
            }
            else
            {
                UserProfilesResponse responses =
                    _cryptxService.GetUserProfiles(userId == null ? Guid.Empty : (Guid)userId, token);
                if (responses.UserProfileList.Count == 1)
                {
                    ViewBag.canDelete = false;
                }
                else
                {
                    ViewBag.canDelete = true;
                }
                response = _cryptxService.GetProfile((Guid)Id, (userId == null ? Guid.Empty : (Guid)userId), token);
                if (response.Exception == null)
                {
                    settings = response.Settings;
                }
                else
                {
                    throw response.Exception;
                }
            }


            if (response.Exception == null)
            {
                Settings model      = settings;
                var      navigation = new MyNavigation();

                if (userId != null && userId != Guid.Empty)
                {
                    navigation.Navigations.Add(new NavElement
                    {
                        Depth      = 1,
                        Name       = "Администрирование",
                        Action     = "Index",
                        Controller = "Administration",
                        IsUrl      = true
                    });
                    UserInfoResponse responseUser = _authService.GetUserDataByID((Guid)userId);
                    navigation.Navigations.Add(new NavElement
                    {
                        Depth = 3,
                        Name  = responseUser.User.Name,
                        IsUrl = false
                    });
                    navigation.Navigations.Add(new NavElement
                    {
                        Depth = 4,
                        Name  =
                            "Шаблон: " +
                            (string.IsNullOrEmpty(model._MainSettings.Name) ? "Новый" : model._MainSettings.Name),
                        IsUrl = false
                    });
                }
                else
                {
                    navigation.Navigations.Add(new NavElement
                    {
                        Depth      = 1,
                        Name       = "Шаблоны настроек",
                        Action     = "Index",
                        Controller = "Settings",
                        IsUrl      = true
                    });
                    navigation.Navigations.Add(new NavElement
                    {
                        Depth      = 2,
                        Name       = model._MainSettings.Name,
                        Action     = "Edit",
                        Controller = "Settings",
                        IsUrl      = false
                    });
                }

                ViewBag.nav = navigation.Navigations.OrderBy(x => x.Depth).ToList();
                var userInfo = (UserInfo)Session["userInfo"];
                ViewBag.userInfo = userInfo;
                ViewBag.UserId   = userId == null ? Guid.Empty : (Guid)userId;

                return(View(model));
            }
            throw response.Exception;
        }
コード例 #4
0
        public ActionResult Index(Guid?userId)
        {
            Guid token = CheckSessionAuthState(CurrentUser, _authService);

            if (token == Guid.Empty)
            {
                return(RedirectToAction("LogOff", "Account"));
            }

            var navigation = new MyNavigation();

            if (userId != null && userId != Guid.Empty)
            {
                navigation.Navigations.Add(new NavElement
                {
                    Depth      = 1,
                    Name       = "Администрирование",
                    Action     = "Index",
                    Controller = "Administration",
                    IsUrl      = true
                });
                UserInfoResponse responseUser = _authService.GetUserDataByID((Guid)userId);
                navigation.Navigations.Add(new NavElement
                {
                    Depth = 3,
                    Name  = responseUser.User.Name,
                    IsUrl = false
                });
                navigation.Navigations.Add(new NavElement
                {
                    Depth = 4,
                    Name  = "Шаблоны настроек",
                    IsUrl = false
                });
            }
            else
            {
                navigation.Navigations.Add(new NavElement
                {
                    Depth      = 1,
                    Name       = "Шаблоны настроек",
                    Action     = "Index",
                    Controller = "Settings",
                    IsUrl      = false
                });
            }

            ViewBag.nav = navigation.Navigations.OrderBy(x => x.Depth).ToList();
            var userInfo = (UserInfo)Session["userInfo"];

            ViewBag.userInfo = userInfo;
            var response = new UserProfilesResponse();

            response = _cryptxService.GetUserProfiles(userId == null ? Guid.Empty : (Guid)userId, token);
            if (response.Exception != null)
            {
                throw response.Exception;
            }
            response.UserProfileList = response.UserProfileList.OrderBy(x => x.Name).ToList();
            ViewBag.name             = Name.ASC;
            ViewBag.UserId           = userId == null ? Guid.Empty : (Guid)userId;
            return(View(response.UserProfileList));
        }