Example #1
0
		protected void Page_Load(object sender, System.EventArgs e)
		{
			const string defaultHeading = "Administration Files";
			string stHeading = defaultHeading;			

			const string defaultTitle = "RetailPlus System Security Administration";
			SiteTitle.Title = defaultTitle;

			const SearchCategoryID defaultSearchIndex = SearchCategoryID.AccessGroups;
			SearchCategoryID SearchIndex = defaultSearchIndex;			

			HorizontalNavBar.PageNavigatorid = HorizontalNavID.AdministrationFiles;
			
			if (Request.QueryString["task"]!=null)
			{
				string task = Common.Decrypt(Request.QueryString["task"].ToString(),Session.SessionID);
				switch(task)
				{
					case "add":
						stHeading = "Create New Access Group";	
						SearchIndex = SearchCategoryID.AccessGroups;
						ctrlInsert.Visible = true;
						break;
					case "edit":
						stHeading = "Modify Access Group";
						SearchIndex = SearchCategoryID.AccessGroups;
						ctrlUpdate.Visible = true;
						break;   
					case "list":
						stHeading = "Access Group List";		
						SearchIndex = SearchCategoryID.AccessGroups;
						ctrlList.Visible = true;
						break;	
					case "accessrights":
						Int32 iID = Convert.ToInt32(Common.Decrypt(Request.QueryString["id"],Session.SessionID));
						AccessGroup clsAccessGroup = new AccessGroup();
						AccessGroupDetails clsDetails = clsAccessGroup.Details(iID);
						clsAccessGroup.CommitAndDispose();

						stHeading = "Update access rights of <b>" + clsDetails.GroupName + "</b>";

						SearchIndex = SearchCategoryID.AccessGroups;
						ctrlAccessRights.Visible = true;
						break;
                    case "details":
                        stHeading = "Access Group Details";
                        SearchIndex = SearchCategoryID.AccessGroups;
                        ctrlDetails.Visible = true;
                        break;  
					default:	
						break;
				}

				LargeHeading.Text = stHeading;
				RightBodySectionSearch.SearchIDSelectedItem = SearchIndex;
			}
		}
Example #2
0
		private void LoadRecord()
		{
			int iID = int.Parse(Common.Decrypt(Request.QueryString["id"],Session.SessionID));
			AccessGroup clsAccessGroup = new AccessGroup();
			AccessGroupDetails clsDetails = clsAccessGroup.Details(iID);
			clsAccessGroup.CommitAndDispose();

			lblGroupID.Text = clsDetails.GroupID.ToString();
			txtGroupName.Text = clsDetails.GroupName;
			txtRemarks.Text = clsDetails.Remarks;
		}
Example #3
0
		private void SaveRecord()
		{
			AccessGroup clsAccessGroup = new AccessGroup();
			AccessGroupDetails clsDetails = new AccessGroupDetails();

			clsDetails.GroupID = Convert.ToInt16(lblGroupID.Text);
			clsDetails.GroupName = txtGroupName.Text;
			clsDetails.Remarks = txtRemarks.Text;

			clsAccessGroup.Update(clsDetails);
			clsAccessGroup.CommitAndDispose();
		}
        public bool CanAccess(AccessGroup group)
        {
            bool returnValue = false;

            // A banned or inactive user can't access anything
            if (IsActive && IsLoggedOn && !IsBanned)
            {
                // Super Admins and Master Admins can access everything
                // however the master admin is restricted to what he can edit.
                if (IsSuperAdmin || IsMasterAdmin)
                {
                    returnValue = true;
                }
                else
                {
                    switch (group)
                    {
                        case AccessGroup.Administration:
                            returnValue = HasAdminRights;
                            break;
                        case AccessGroup.MemberManagement:
                            returnValue = IsMemberAdmin;
                            break;
                        case AccessGroup.CategoryManagement:
                            returnValue = IsCategoryAdmin;
                            break;
                        case AccessGroup.ArticleManagement:
                            returnValue = IsArticleAdmin;
                            break;
                        case AccessGroup.ConversationManagement:
                            returnValue = IsMemberAdmin;
                            break;
                    }
                }
            }

            return returnValue;
        }
Example #5
0
		private Int32 SaveRecord()
		{
			AccessGroup clsAccessGroup = new AccessGroup();
			AccessGroupDetails clsDetails = new AccessGroupDetails();

			clsDetails.GroupName = txtGroupName.Text;
			clsDetails.Remarks = txtRemarks.Text;

			int id = clsAccessGroup.Insert(clsDetails);
			
			clsAccessGroup.CommitAndDispose();

			return id;
		}
Example #6
0
		private void LoadList()
		{	
			AccessGroup clsAccessGroup = new AccessGroup();
			DataClass clsDataClass = new DataClass();
			Common Common = new Common();

			string SortField = "GroupID";
			if (Request.QueryString["sortfield"]!=null)
			{	SortField = Common.Decrypt(Request.QueryString["sortfield"].ToString(), Session.SessionID);	}
			
			SortOption sortoption = SortOption.Ascending;
			if (Request.QueryString["sortoption"]!=null)
			{	sortoption = (SortOption) Enum.Parse(typeof(SortOption), Common.Decrypt(Request.QueryString["sortoption"], Session.SessionID), true);	}

			if (Request.QueryString["Search"]==null)
			{
				PageData.DataSource = clsDataClass.DataReaderToDataTable(clsAccessGroup.List(SortField,sortoption)).DefaultView;
			}
			else
			{						
				string SearchKey = Common.Decrypt((string)Request.QueryString["search"],Session.SessionID);
				PageData.DataSource = clsDataClass.DataReaderToDataTable(clsAccessGroup.Search(SearchKey, SortField, sortoption)).DefaultView;
			}

			clsAccessGroup.CommitAndDispose();

			int iPageSize = Convert.ToInt16(Session["PageSize"]) ;
			
			PageData.AllowPaging = true;
			PageData.PageSize = iPageSize;
			try
			{
				PageData.CurrentPageIndex = Convert.ToInt16(cboCurrentPage.SelectedItem.Value) - 1;				
				lstItem.DataSource = PageData;
				lstItem.DataBind();
			}
			catch
			{
				PageData.CurrentPageIndex = 1;
				lstItem.DataSource = PageData;
				lstItem.DataBind();
			}			
			
			cboCurrentPage.Items.Clear();
			for (int i=0; i < PageData.PageCount;i++)
			{
				int iValue = i + 1;
				cboCurrentPage.Items.Add(new ListItem(iValue.ToString(),iValue.ToString()));
				if (PageData.CurrentPageIndex == i)
				{	cboCurrentPage.Items[i].Selected = true;}
				else
				{	cboCurrentPage.Items[i].Selected = false;}
			}
			lblDataCount.Text = " of " + " " + PageData.PageCount;
		}
Example #7
0
		private bool Delete()
		{
			bool boRetValue = false;
			string stIDs = "";

			foreach(DataListItem item in lstItem.Items)
			{
				HtmlInputCheckBox chkList = (HtmlInputCheckBox) item.FindControl("chkList");
				if (chkList!=null)
				{
					if (chkList.Checked == true)
					{
						stIDs += chkList.Value + ",";		
						boRetValue = true;
					}
				}
			}
			if (boRetValue)
			{
				AccessGroup clsAccessGroup = new AccessGroup();
				clsAccessGroup.Delete( stIDs.Substring(0,stIDs.Length-1));
				clsAccessGroup.CommitAndDispose();
			}

			return boRetValue;
		}
Example #8
0
        protected void lstItem_ItemCommand(object sender, DataListCommandEventArgs e)
        {
            HtmlInputCheckBox chkList = (HtmlInputCheckBox)e.Item.FindControl("chkList");
            string stParam = string.Empty;
            switch (e.CommandName)
            {
                case "imgItemDelete":
                    AccessGroup clsAccessGroup = new AccessGroup();
                    clsAccessGroup.Delete(chkList.Value);
                    clsAccessGroup.CommitAndDispose();

                    LoadList();
                    break;
                case "imgItemEdit":
                    stParam = "?task=" + Common.Encrypt("edit", Session.SessionID) + "&id=" + Common.Encrypt(chkList.Value, Session.SessionID);
                    Response.Redirect("Default.aspx" + stParam);
                    break;
                case "imgItemAccessRights":
                    stParam = "?task=" + Common.Encrypt("accessrights", Session.SessionID) + "&id=" + Common.Encrypt(chkList.Value, Session.SessionID);
                    Response.Redirect("Default.aspx" + stParam);
                    break;
            }
        }
Example #9
0
        public void Render()
        {
            DropTables(this.regex);

            Assert.IsFalse(Ns.TableExists("test-1"));

            var schema = new TableSchema { AccessGroups = new List<AccessGroup>() };

            var accessGroup = new AccessGroup { Name = "default", ColumnFamilies = new List<ColumnFamily>() };
            accessGroup.ColumnFamilies.Add(new ColumnFamily { Name = "a" });
            accessGroup.ColumnFamilies.Add(new ColumnFamily { Name = "b", Options = new ColumnFamilyOptions { MaxVersions = 5, MaxVersionsSpecified = true } });
            schema.AccessGroups.Add(accessGroup);

            accessGroup = new AccessGroup { Name = "other", ColumnFamilies = new List<ColumnFamily>() };
            accessGroup.ColumnFamilies.Add(new ColumnFamily { Name = "c" });
            schema.AccessGroups.Add(accessGroup);

            var xml = schema.ToString();

            schema = TableSchema.Parse(xml);
            Assert.IsNotNull(schema);
            Assert.IsFalse(schema.GenerationSpecified);

            Assert.IsNotNull(schema.AccessGroups);
            Assert.AreEqual(2, schema.AccessGroups.Count);

            accessGroup = schema.AccessGroups[0];
            Assert.AreEqual("default", accessGroup.Name);
            Assert.IsNotNull(accessGroup.ColumnFamilies);
            Assert.AreEqual(2, accessGroup.ColumnFamilies.Count);

            var columnFamily = accessGroup.ColumnFamilies[0];
            Assert.AreEqual("a", columnFamily.Name);

            columnFamily = accessGroup.ColumnFamilies[1];
            Assert.AreEqual("b", columnFamily.Name);
            Assert.IsNotNull(columnFamily.Options);
            Assert.IsTrue(columnFamily.Options.MaxVersionsSpecified);
            Assert.AreEqual(5, columnFamily.Options.MaxVersions);

            accessGroup = schema.AccessGroups[1];
            Assert.AreEqual("other", accessGroup.Name);
            Assert.IsNotNull(accessGroup.ColumnFamilies);
            Assert.AreEqual(1, accessGroup.ColumnFamilies.Count);

            columnFamily = accessGroup.ColumnFamilies[0];
            Assert.AreEqual("c", columnFamily.Name);

            Ns.CreateTable("test-1", xml);
            Assert.IsTrue(Ns.TableExists("test-1"));
        }
Example #10
0
		public AccessLevelAttribute(AccessGroup group) {

			this.group = group;

		}