private void Bind()
        {
            //Bind the colors drop down
            var colors = TagColors.GetAllColors();

            ddlColor.Items.Clear();

            var colorList = new List <ListItem>();

            foreach (var color in colors)
            {
                var item = new ListItem(color.ColorName, color.Hex);
                colorList.Add(item);
                ddlColor.Items.Add(item);
            }

            BindTags(Guid.Empty);
        }
        public void btnSaveTagName_Click(object sender, EventArgs e)
        {
            if (Tutorial)
            {
                phPart3.Visible = true;
            }

            if (string.IsNullOrEmpty(txtTagName.Text))
            {
                PromptHelper prompt = new PromptHelper("Please choose a tag to edit");
                Page.RegisterStartupScript(prompt.ScriptName, prompt.GetErrorScript());
            }

            string previousColor = string.Empty;
            var    success       = false;

            try {
                var tagId = (Guid)ViewState["TagId"];

                using (IUnitOfWork uow = UnitOfWork.Begin()) {
                    var tag = _tagService.GetTag(tagId);
                    tag.Name      = txtTagName.Text;
                    tag.Color     = TagColors.GetColorByHex(ddlColor.SelectedValue).CssClass;
                    previousColor = ddlColor.SelectedValue;

                    uow.Commit();
                    success = true;
                }
            }
            catch (Exception ex) {
                _Log.WriteFatal("THERE WAS AN ERROR SAVING A TAG NAME ON TAGS.ASPX with message: " + ex.Message);
                success = false;
            }

            Bind();
            if (!string.IsNullOrEmpty(previousColor))
            {
                ddlColor.SelectedValue = previousColor;
            }

            ValidateSuccess(success, "You have successfully saved the new tag name.", "There was an error saving the new tag name.");
        }
        private void EditTag(Guid tagId)
        {
            var tagService = Ioc.GetInstance <ITagService>();

            var tag = tagService.GetTag(tagId);

            if (tag == null)
            {
                return;
            }

            phEditTag.Visible = true;

            txtTagName.Text = tag.Name;
            var color = TagColors.GetColorByCssClass(tag.Color);

            ddlColor.SelectedIndex = -1;

            var item = ddlColor.Items.FindByValue(color.Hex);

            item.Selected = true;

            ViewState["TagId"] = tag.Id;
        }