Ejemplo n.º 1
0
 public UserController()
 {
     CntrlAU = DBControllersFactory.Audit();
     CntrlEG = DBControllersFactory.EntitlementGroup();
     CntrlET = DBControllersFactory.Entity();
     CntrlEN = DBControllersFactory.Entitlement();
     CntrlPE = DBControllersFactory.ProfileEntitlement();
 }
Ejemplo n.º 2
0
 private MainView()
 {
     InitializeComponent(); if (DesignMode || (Site != null && Site.DesignMode))
     {
         return;
     }
     CntrlLG = DBControllersFactory.Language();
     CntrlWD = DBControllersFactory.Word();
     CntrlEG = DBControllersFactory.EntitlementGroup();
     CntrlEN = DBControllersFactory.Entitlement();
     CntrlET = DBControllersFactory.Entity();
     CntrlPE = DBControllersFactory.ProfileEntitlement();
     CntrlUS = DBControllersFactory.User();
 }
Ejemplo n.º 3
0
        private void SQLView_Load(object sender, EventArgs e)
        {
            contextMenuStripEntities.Items.Clear();
            Dictionary <char, ToolStripMenuItem> parent = new Dictionary <char, ToolStripMenuItem>();

            foreach (var entity in DBControllersFactory.Entity().Read().OrderBy(x => x.EntityName))
            {
                char pname = entity.EntityName[0];
                if (parent.ContainsKey(pname) == false)
                {
                    parent[pname] = new ToolStripMenuItem($"{pname}");
                    contextMenuStripEntities.Items.Add(parent[pname]);
                }
                parent[pname].DropDownItems.Add(entity.EntityName).Click += (ms, me) => {
                    txtSQL.Text = controller.GetDLL(entity.EntityName);
                };
            }
        }
Ejemplo n.º 4
0
        public PermissionsHelper(BaseView <M, C> view)
        {
            if (view == null)
            {
                throw new ArgumentException("view cannot be null");
            }
            //if(model==default) throw new ArgumentException("model cannot be null");
            var CntrlEN = DBControllersFactory.Entitlement();
            var CntrlPE = DBControllersFactory.ProfileEntitlement();
            var CntrlPR = DBControllersFactory.Profile();
            var CntrlET = DBControllersFactory.Entity();

            var usr = MVCHISSession.Instance.CurrentUser;

            if (usr == null)
            {
                return;
            }
            //var mdl = view?.GetType().GetCustomAttributes().OfType<ForModelAttribute>().FirstOrDefault();
            //if (mdl == null) return;

            var entity = CntrlET.Find(new EntityModel()
            {
                EntityName = $"{typeof(M).Name}".Replace("Model", "")
            }, "EntityName");

            var ent = CntrlEN.Find(new EntitlementModel()
            {
                EntityId = entity.Id
            }, "EntityId");

            if (ent == null)
            {
                return;
            }

            var pen = CntrlPE.Find(new ProfileEntitlementModel()
            {
                ProfileId     = usr.ProfileId,
                EntitlementId = ent.Id
            }, "ProfileId", "EntitlementId");

            if (view.NewButton != null)
            {
                view.SetNewButtonEnabled(view.NewButton.Enabled && pen.AllowCreate);
            }
            if (view.SaveButton != null)
            {
                view.SetSaveButtonEnabled(view.SaveButton.Enabled && pen.AllowUpdate);
            }
            if (view.DeleteButton != null)
            {
                view.SetDeleteButtonEnabled(view.DeleteButton.Enabled && pen.AllowDelete);
            }

            if (!pen.AllowRead)
            {
                FormsHelper.Error($"You don't have enough permissions to open {view}.");
                view.GotFocus += (x, y) => {
                    view.Enabled = false;
                    view.BeginInvoke(new MethodInvoker(view.Hide));
                };
            }
        }