Exemplo n.º 1
0
        public override List <SueetieContentPage> GetSueetieContentPagesToIndex(int contenttypeID, DateTime pubDate)
        {
            List <SueetieContentPage> sueetieContentPages = new List <SueetieContentPage>();

            using (SqlConnection cn = GetSqlConnection())
            {
                using (SqlCommand cmd = new SqlCommand("Sueetie_Search_ContentPages_Get", cn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.Add("@contenttypeID", SqlDbType.Int, 4).Value = contenttypeID;
                    cmd.Parameters.Add("@pubDate", SqlDbType.DateTime, 8).Value  = pubDate == DateTime.MinValue
                        ? new DateTime(1900, 1, 1)
                        : pubDate;
                    cn.Open();
                    using (SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
                    {
                        SueetieContentPage _SueetieContentPage = null;
                        while (dr.Read())
                        {
                            _SueetieContentPage = new SueetieContentPage();
                            PopulateSueetieContentPageList(dr, _SueetieContentPage);
                            sueetieContentPages.Add(_SueetieContentPage);
                        }

                        dr.Close();
                        cn.Close();
                    }
                }
            }
            return(sueetieContentPages);
        }
Exemplo n.º 2
0
        private static SueetieSearchDoc ConvertSueetieContentPageToSearchDoc(SueetieContentPage sueetieContentPage)
        {
            string _body        = DataHelper.StripHtml(sueetieContentPage.SearchBody).TrimStart();
            string _tags        = !string.IsNullOrEmpty(sueetieContentPage.Tags) ? sueetieContentPage.Tags.Replace('|', ' ') : string.Empty;
            string _displayTags = !string.IsNullOrEmpty(sueetieContentPage.Tags) ? SueetieTags.TagUrls(sueetieContentPage.Tags) : string.Empty;

            SueetieSearchDoc doc = new SueetieSearchDoc()
            {
                App               = "CMS",
                ContentID         = sueetieContentPage.ContentID,
                Title             = sueetieContentPage.PageTitle,
                Tags              = _tags,
                DisplayTags       = _displayTags,
                AppID             = sueetieContentPage.ApplicationID,
                IsRestricted      = sueetieContentPage.IsRestricted,
                PublishDate       = sueetieContentPage.LastUpdateDateTime,
                ContainerName     = sueetieContentPage.ApplicationName,
                GroupID           = 0,
                GroupKey          = "na",
                ContentTypeID     = sueetieContentPage.ContentTypeID,
                Categories        = string.Empty,
                ApplicationTypeID = sueetieContentPage.ApplicationTypeID,
                ApplicationKey    = sueetieContentPage.ApplicationKey,
                PermaLink         = sueetieContentPage.Permalink,
                Author            = sueetieContentPage.DisplayName,
                Username          = sueetieContentPage.UserName,
                Body              = _body + RaquoIt(sueetieContentPage.PageTitle) + RaquoIt(_tags) + RaquoIt(sueetieContentPage.UserName)
            };

            return(doc);
        }
 public static void PopulateSueetieContentPageList(IDataReader dr, SueetieContentPage _sueetieContentPage)
 {
     _sueetieContentPage.ContentPageID         = (int)dr["contentpageid"];
     _sueetieContentPage.ContentPageGroupID    = (int)dr["contentpagegroupid"];
     _sueetieContentPage.PageSlug              = dr["pageslug"] as string;
     _sueetieContentPage.PageTitle             = dr["pagetitle"] as string;
     _sueetieContentPage.PageDescription       = dr["pagedescription"] as string;
     _sueetieContentPage.ReaderRoles           = dr["readerroles"] as string;
     _sueetieContentPage.LastUpdateDateTime    = (DateTime)dr["lastupdatedatetime"];
     _sueetieContentPage.LastUpdateUserID      = (int)dr["lastupdateuserid"];
     _sueetieContentPage.PageKey               = dr["pagekey"] as string;
     _sueetieContentPage.EditorRoles           = dr["editorroles"] as string;
     _sueetieContentPage.IsPublished           = (bool)dr["ispublished"];
     _sueetieContentPage.DisplayOrder          = (int)dr["displayorder"];
     _sueetieContentPage.ContentTypeID         = (int)dr["contenttypeid"];
     _sueetieContentPage.Permalink             = dr["permalink"] as string;
     _sueetieContentPage.DateTimeCreated       = (DateTime)dr["datetimecreated"];
     _sueetieContentPage.IsRestricted          = (bool)dr["isrestricted"];
     _sueetieContentPage.ContentID             = (int)dr["contentid"];
     _sueetieContentPage.ApplicationID         = (int)dr["applicationid"];
     _sueetieContentPage.ApplicationKey        = dr["applicationkey"] as string;
     _sueetieContentPage.ContentPageGroupTitle = dr["contentpagegrouptitle"] as string;
     _sueetieContentPage.Tags              = dr["tags"] as string;
     _sueetieContentPage.SearchBody        = dr["searchbody"] as string;
     _sueetieContentPage.ApplicationName   = dr["applicationname"] as string;
     _sueetieContentPage.ApplicationTypeID = (int)dr["applicationtypeid"];
     _sueetieContentPage.UserName          = dr["username"] as string;
     _sueetieContentPage.DisplayName       = dr["displayname"] as string;
 }
Exemplo n.º 4
0
        private bool IsUserTagEditor()
        {
            string _roles       = "ContentAdministrator";
            bool   isAuthorized = false;

            if (SueetieContext.Current.ContentPage != null)
            {
                SueetieContentPage _sueetieContentPage = SueetieContext.Current.ContentPage;
                if (!string.IsNullOrEmpty(_sueetieContentPage.EditorRoles))
                {
                    _roles = _sueetieContentPage.EditorRoles;
                }
            }
            if (TagSueetieForumTopic != null && TagSueetieForumTopic.SueetieUserIDs != null)
            {
                var _userIDs = TagSueetieForumTopic.SueetieUserIDs.Split('|')
                               .Where(n => !string.IsNullOrEmpty(n)).Select(n => int.Parse(n)).ToList();
                foreach (int _userID in _userIDs)
                {
                    if (CurrentSueetieUserID.Equals(_userID))
                    {
                        isAuthorized = true;
                    }
                }
            }
            if (!string.IsNullOrEmpty(Roles))
            {
                _roles = Roles;
            }
            if (SueetieUIHelper.IsUserAuthorized(_roles) || SueetieUIHelper.IsUserAuthorized("ContentAdministrator"))
            {
                isAuthorized = true;
            }
            return(isAuthorized);
        }
Exemplo n.º 5
0
        protected void Page_Load(object sender, EventArgs e)
        {
            SueetieContentPage _currentPage = SueetieContext.Current.ContentPage;
            bool userAuthorized             = SueetieUIHelper.IsUserAuthorized(_currentPage.ReaderRoles) && _currentPage.IsPublished;
            bool userIsEditor = SueetieUIHelper.IsUserAuthorized(_currentPage.EditorRoles);

            if (userAuthorized || userIsEditor)
            {
                // page displays normally
            }
            else
            {
                Response.Redirect("/members/message.aspx?msgid=10");
            }
        }
Exemplo n.º 6
0
        protected override void Render(HtmlTextWriter writer)
        {
            SueetieContentPage _sueetieContentPage = SueetieContext.Current.ContentPage;

            if (_sueetieContentPage != null)
            {
                bool   wrapText = this.Anchor != AnchorHtml.unknown;
                string anchor   = this.Anchor.ToString();
                writer.BeginRender();
                if (wrapText)
                {
                    writer.Write("<{0}", anchor);

                    if (this.DisplayCssID)
                    {
                        writer.Write(" id=\"{0}\"", "cms_" + _sueetieContentPage.PageKey.ToLower() + "_title");
                    }

                    if (!string.IsNullOrEmpty(this.CssClass))
                    {
                        writer.Write(" class=\"{0}\"", this.CssClass);
                    }

                    if (this.Attributes != null && this.Attributes.Count > 0)
                    {
                        foreach (string key in this.Attributes.Keys)
                        {
                            writer.Write(" {0}=\"{1}\"", key, this.Attributes[key]);
                        }
                    }
                    writer.Write(">");
                }

                string _key      = "cms_" + _sueetieContentPage.PageKey.ToLower() + "_title";
                string _resource = SueetieLocalizer.GetString(_key, this.LanguageFile);
                writer.Write(_resource);

                if (wrapText)
                {
                    writer.Write("</{0}>", anchor);
                }
                writer.EndRender();
            }
        }
Exemplo n.º 7
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            SueetieContentPage _page = SueetieContentParts.CurrentContentPage;

            _text.Text = txtEditor.Text;
            _sueetieContentPart.ContentText        = txtEditor.Text;
            _sueetieContentPart.ContentPageID      = _page.ContentPageID;
            _sueetieContentPart.ContentPageGroupID = _page.ContentPageGroupID;
            _sueetieContentPart.Permalink          = "/" + _page.ApplicationKey + "/" + _page.PageSlug + ".aspx";
            _sueetieContentPart.LastUpdateUserID   = this.CurrentSueetieUserID;
            _sueetieContentPart.ApplicationID      = _page.ApplicationID;
            SueetieContentParts.ClearContentPartCache(_sueetieContentPart.ContentName);
            int _contentID = SueetieContentParts.UpdateSueetieContentPart(_sueetieContentPart);

            if (checkBoxLog.Checked)
            {
                SueetieLogs.LogUserEntry(UserLogCategoryType.CMSPageUpdated, _contentID, CurrentSueetieUserID);
            }

            this._panel.Visible = false;
        }
Exemplo n.º 8
0
        protected void ddlContentPages_OnSelectedIndexChanged(object sender, EventArgs e)
        {
            this._contentPage = SueetieContentParts.GetSueetieContentPage(int.Parse(ddlContentPages.SelectedValue));
            if (_contentPage.ContentPageID > 0)
            {
                txtPageTitle.Text    = _contentPage.PageTitle;
                txtPageKey.Text      = _contentPage.PageKey;
                txtPageSlug.Text     = _contentPage.PageSlug;
                txtDescription.Text  = _contentPage.PageDescription;
                txtReaders.Text      = _contentPage.ReaderRoles;
                txtDisplayOrder.Text = _contentPage.DisplayOrder.ToString();
                chkActive.Checked    = _contentPage.IsPublished;
                lblResults.Text      = string.Empty;

                SetButtonState(false);
            }
            else
            {
                SetButtonState(true);
                ClearForm();
            }
        }
Exemplo n.º 9
0
        private bool IsUserCalendarEditor()
        {
            string _roles       = "ContentAdministrator";
            bool   isAuthorized = false;

            if (SueetieContext.Current.ContentPage != null)
            {
                SueetieContentPage _sueetieContentPage = SueetieContext.Current.ContentPage;
                if (!string.IsNullOrEmpty(_sueetieContentPage.EditorRoles))
                {
                    _roles = _sueetieContentPage.EditorRoles;
                }
            }
            if (!string.IsNullOrEmpty(Roles))
            {
                _roles = Roles;
            }
            if (SueetieUIHelper.IsUserAuthorized(_roles) || SueetieUIHelper.IsUserAuthorized("ContentAdministrator"))
            {
                isAuthorized = true;
            }
            return(isAuthorized);
        }
Exemplo n.º 10
0
        protected void btnAddUpdate_OnCommand(object sender, CommandEventArgs e)
        {
            SueetieContentPageGroup _group = SueetieContentParts.GetSueetieContentPageGroup(this.GroupID);
            SueetieContentPage      _page  = new SueetieContentPage
            {
                PageKey            = txtPageKey.Text.Trim(),
                PageTitle          = txtPageTitle.Text,
                PageDescription    = txtDescription.Text,
                ReaderRoles        = txtReaders.Text,
                LastUpdateUserID   = CurrentSueetieUserID,
                IsPublished        = chkActive.Checked,
                DisplayOrder       = DataHelper.IntOrDefault(txtDisplayOrder.Text.Trim(), -1),
                PageSlug           = string.IsNullOrEmpty(txtPageSlug.Text) ? SueetieContentParts.CreatePageSlug(txtPageTitle.Text) : SueetieContentParts.CreatePageSlug(txtPageSlug.Text),
                ContentPageGroupID = this.GroupID
            };

            if (e.CommandName == "Add")
            {
                if (int.Parse(ddlContentPages.SelectedValue) < 0)
                {
                    int            _contentPageID = SueetieContentParts.CreateContentPage(_page);
                    SueetieContent sueetieContent = new SueetieContent
                    {
                        ApplicationID = _group.ApplicationID,
                        ContentTypeID = (int)SueetieContentType.CMSPage,
                        SourceID      = _contentPageID,
                        UserID        = CurrentSueetieUserID,
                        IsRestricted  = !string.IsNullOrEmpty(txtReaders.Text),
                        Permalink     = "/" + _group.ApplicationKey + "/" + _page.PageSlug + ".aspx"
                    };
                    int contentID = SueetieCommon.AddSueetieContent(sueetieContent);
                    SueetieLogs.LogUserEntry(UserLogCategoryType.CMSPageCreated, contentID, CurrentSueetieUserID);
                    lblResults.Text = "Content Page Created!";
                }
                else
                {
                    lblResults.Text = "Content Page dropdown selector must be empty when creating a content page.";
                    return;
                }
            }
            else if (e.CommandName == "Update")
            {
                _page.ContentPageID = int.Parse(ddlContentPages.SelectedValue);

                SueetieContentParts.UpdateSueetieContentPage(_page);
                _page.Permalink = "/" + _group.ApplicationKey + "/" + _page.PageSlug + ".aspx";
                SueetieContentParts.UpdateCmsPermalink(_page);
                SueetieCommon.UpdateSueetieContentIsRestricted(_page.ContentID, !string.IsNullOrEmpty(txtReaders.Text));

                SueetieCommon.ClearUserLogActivityListCache((int)SueetieContentViewType.Unassigned);
                SueetieCommon.ClearUserLogActivityListCache((int)SueetieContentViewType.SyndicatedUserLogActivityList);

                lblResults.Text = "Content Page Updated!";
                SueetieContentParts.ClearSueetieContentPageCache(int.Parse(ddlContentPages.SelectedValue));
            }
            else
            {
                SueetieContentParts.DeleteContentPage(int.Parse(ddlContentPages.SelectedValue));
            }
            SueetieContentParts.ClearSueetieContentPageListCache(this.GroupID);
            SueetieContentParts.ClearSueetieContentPageListCache(-1); // Clear All Pages for ContentPartView Control
            ClearForm();
        }
Exemplo n.º 11
0
        protected override void OnInit(EventArgs e)
        {
            string tagsList = string.Empty;

            this._tags          = new Label();
            this._tags.CssClass = tagsListCssClass;

            if (SueetieContext.Current.ContentPage != null)
            {
                SueetieContentPage _sueetieContentPage = SueetieContext.Current.ContentPage;
                this.ContentID     = _sueetieContentPage.ContentID;
                this.ItemID        = _sueetieContentPage.ContentPageID;
                this.ContentTypeID = _sueetieContentPage.ContentTypeID;
                tagsList           = _sueetieContentPage.Tags;
            }

            if (this.TagSueetieMediaObject != null)
            {
                this.ItemID        = TagSueetieMediaObject.MediaObjectID;
                this.ContentID     = TagSueetieMediaObject.ContentID;
                this.ContentTypeID = TagSueetieMediaObject.ContentTypeID;
                tagsList           = TagSueetieMediaObject.Tags;
            }

            if (this.TagSueetieMediaAlbum != null)
            {
                this.ItemID        = TagSueetieMediaAlbum.AlbumID;
                this.ContentID     = TagSueetieMediaAlbum.ContentID;
                this.ContentTypeID = TagSueetieMediaAlbum.ContentTypeID;
                tagsList           = TagSueetieMediaAlbum.Tags;
            }


            if (this.TagSueetieWikiPage != null)
            {
                this.ItemID        = TagSueetieWikiPage.PageID;
                this.ContentID     = TagSueetieWikiPage.ContentID;
                this.ContentTypeID = (int)SueetieContentType.WikiPage;
                tagsList           = this.TagSueetieWikiPage.Tags;
            }

            if (this.TagSueetieForumTopic != null)
            {
                this.ItemID        = TagSueetieForumTopic.TopicID;
                this.ContentID     = TagSueetieForumTopic.ContentID;
                this.ContentTypeID = (int)SueetieContentType.ForumTopic;
                tagsList           = TagSueetieForumTopic.Tags;

                //   this.Controls.Add(new LiteralControl(TagLibraryScript));
            }

            if (!string.IsNullOrEmpty(tagsList))
            {
                this._tags.Text = SueetieTags.TagUrls(this.ContentID);
            }
            else
            {
                this._tags.Text = SueetieLocalizer.GetString("no_tags");
            }

            this.Controls.Add(_tags);


            if (IsUserTagEditor() && DisplayTagsPanel)
            {
                //if (LoadScriptLibraries)
                //{
                //    bool TagLibraryLoaded = false;
                //    //bool JQueryLibraryLoaded = false;
                //    foreach (Control _control in this.Page.Header.Controls)
                //    {
                //        if (_control.GetType().Name == "LiteralControl")
                //        {
                //            string _js = ((LiteralControl)_control).Text;
                //            if (_js.IndexOf("/scripts/tag.js") > 0)
                //                TagLibraryLoaded = true;
                //            //if (_js.IndexOf("/scripts/jquery.js") > 0)
                //            //    JQueryLibraryLoaded = true;
                //        }
                //    }

                //    //if (!JQueryLibraryLoaded)
                //    //    this.Page.Header.Controls.Add(new LiteralControl(JQueryLibraryScript));

                //    //if (!TagLibraryLoaded)
                //    //    this.Page.Header.Controls.Add(new LiteralControl(TagLibraryScript));
                //}

                this._textbox          = new TextBox();
                this._textbox.CssClass = EditTextBoxCssClass;
                if (!string.IsNullOrEmpty(tagsList))
                {
                    this._textbox.Text = SueetieTags.CommaTags(tagsList);
                }
                else
                {
                    this._textbox.Text = string.Empty;
                }

                //this.Controls.Add(_textbox);

                Literal ltImageButton  = new Literal();
                Literal ltSubmitButton = new Literal();
                Literal ltCancelButton = new Literal();

                this._panel = new HtmlGenericControl("div");
                this._panel.Attributes.Add("class", EditPanelCssClass);

                this.Controls.Add(_panel);
                _panel.Controls.Add(_textbox);
                _panel.Controls.Add(ltSubmitButton);
                _panel.Controls.Add(ltCancelButton);

                this._imageButton               = new ImageButton();
                this._imageButton.ImageUrl      = this.EditImageUrl;
                this._imageButton.CssClass      = this.EditImageCssClass;
                this._imageButton.OnClientClick = string.Format("Toggle{0}_Click();return false;", this._textbox.ClientID);
                this.Controls.Add(_imageButton);

                string _submitText = SueetieLocalizer.GetString("tags_button_add");
                string _cancelText = SueetieLocalizer.GetString("tags_button_cancel");

                ltSubmitButton.Text = string.Format("<div class='{0}'><input type='submit' onclick='Submit{1}_Click({2},{3},{4});return false;' value='{5}' />", this.EditButtonAreaCssClass, this._textbox.ClientID, this.ItemID, this.ContentID, this.ContentTypeID, _submitText);
                ltCancelButton.Text = string.Format("<input type='submit' onclick='Toggle{0}_Click();return false;' value='{1}' /></div>", this._textbox.ClientID, _cancelText);

                string _script = HANDLER_SCRIPT.Replace("{0}", this._textbox.ClientID);
                _script = _script.Replace("{1}", this._panel.ClientID);
                _script = _script.Replace("{2}", this._tags.ClientID);
                _script = _script.Replace("{3}", this._imageButton.ClientID);

                if (UseJqueryPrefix)
                {
                    _script = _script.Replace("$", "jQuery");
                }

                this.Controls.Add(new LiteralControl(_script));
                //this.Page.Header.Controls.Add(new LiteralControl(_script));
            }
        }
Exemplo n.º 12
0
        protected override void OnInit(EventArgs e)
        {
            #region Get SueetieContentPage

            int _contentPageID = DataHelper.GetIntFromQueryString("pg", -1);
            if (_contentPageID == -1)
            {
                return;
            }

            _sueetieContentPage = SueetieContentParts.GetSueetieContentPage(_contentPageID);
            ContentName         = _sueetieContentPage.ApplicationKey + "." + _sueetieContentPage.PageKey + "." + this.ContentName;

            #endregion

            #region Create tinyMCE Script

            bool TinyMCELoaded = false;
            foreach (Control _control in this.Page.Header.Controls)
            {
                if (_control.GetType().Name == "LiteralControl")
                {
                    string _js = ((LiteralControl)_control).Text;
                    if (_js.IndexOf("tinyMCE.init") > 0)
                    {
                        int            _elementPoint        = _js.IndexOf("elements:");
                        int            _endElement          = _js.IndexOf("'", _elementPoint);
                        string         _newJs               = _js.Insert(_endElement + 1, this.ClientID + "_txt" + this.ContentName + ",");
                        LiteralControl _newJsLiteralControl = new LiteralControl(_newJs);
                        this.Page.Header.Controls.Remove(_control);
                        this.Page.Header.Controls.Add(_newJsLiteralControl);
                        TinyMCELoaded = true;
                    }
                }
            }
            if (!TinyMCELoaded)
            {
                this.Page.Header.Controls.Add(new LiteralControl(TinyMCEScript.Replace("{0}", this.ClientID + "_txt" + this.ContentName)));
            }

            #endregion

            #region Load Content Part

            _sueetieContentPart = SueetieContentParts.GetSueetieContentPart(this.ContentName);
            if (string.IsNullOrEmpty(_sueetieContentPart.ContentText) && this.ContentName != "?69?")
            {
                _sueetieContentPart.ContentText = "Empty";
                _sueetieContentPart.ContentName = this.ContentName;
            }
            else if (this.ContentName == "?69?")
            {
                _sueetieContentPart.ContentText = "<b><font color='#FF0000'>No ContentName Specified with Sueetie Content Page Part Control</font></b>";
            }

            #endregion

            #region ImageButton Display Modal Editor

            ImageButton btnOpen = new ImageButton();
            btnOpen.Click   += new ImageClickEventHandler(btnOpen_Click);
            btnOpen.ImageUrl = this.PencilImageUrl;
            btnOpen.CssClass = this.PencilImageCssClass;
            if (IsUserEditor() && this.ContentName != "?69?")
            {
                this.Controls.Add(btnOpen);
            }

            #endregion

            #region Content Text

            _text      = new LiteralControl();
            _text.Text = _sueetieContentPart.ContentText;
            this.Controls.Add(_text);

            #endregion

            #region Panel Creation

            _panel          = new Panel();
            _panel.CssClass = windowClass;
            _panel.ID       = "pnl" + this.ContentName;
            _panel.Height   = 590;
            _panel.Width    = 800;

            #endregion

            #region DragTop Table Row

            // Add the table
            Table table = new Table();
            table.CellSpacing = 0;
            table.CellPadding = 0;
            table.Width       = new Unit("100%");

            // Add the title Row
            TableRow row = new TableRow();
            row.CssClass = titleCssClass;

            // Add th title cell
            TableCell cell = new TableCell();
            cell.Width = 780;
            cell.Attributes.Add("name", "dragger");

            if (iconUrl.Length > 0)
            {
                Image img = new Image();
                img.CssClass   = iconCssClass;
                img.ImageAlign = ImageAlign.AbsMiddle;
                img.ImageUrl   = iconUrl;
                cell.Controls.Add(img);
            }

            cell.Controls.Add(new LiteralControl(this.title));
            row.Controls.Add(cell);

            TableCell   cellClose = new TableCell();
            ImageButton btn       = new ImageButton();
            btn.ImageUrl = closeButtonImageUrl;
            btn.Click   += new ImageClickEventHandler(btn_Click);
            cellClose.Controls.Add(btn);
            cellClose.Attributes.Add("text-align", "right");
            cellClose.Width = 20;
            row.Controls.Add(cellClose);

            table.Controls.Add(row);
            _panel.Controls.AddAt(0, table);

            #endregion

            #region Add Init_Script

            if (this.ID == null)
            {
                this.ID = this.UniqueID;
            }
            _panel.Controls.AddAt(0, new LiteralControl(String.Format(INIT_SCRIPT, this.ClientID + "_pnl" + this.ContentName)));

            #endregion

            #region Editor Row

            txtEditor          = new TextBox();
            txtEditor.ID       = "txt" + this.ContentName;
            txtEditor.Text     = _sueetieContentPart.ContentText;
            txtEditor.Height   = new Unit(500);
            txtEditor.Width    = new Unit("100%");
            txtEditor.CssClass = "EditorFont";
            txtEditor.TextMode = TextBoxMode.MultiLine;

            TableRow  rowbody  = new TableRow();
            TableCell cellbody = new TableCell();
            cellbody.ColumnSpan = 2;
            rowbody.Controls.Add(cellbody);
            cellbody.Controls.Add(txtEditor);
            table.Controls.Add(rowbody);

            #endregion

            #region Button Row

            TableRow rowButtons = new TableRow();

            checkBoxLog          = new CheckBox();
            checkBoxLog.Checked  = true;
            checkBoxLog.Text     = SueetieLocalizer.GetString("modal_contentpage_log");
            checkBoxLog.CssClass = "modalPanelCheckbox";

            TableCell cellButtons = new TableCell();
            cellButtons.ColumnSpan = 2;
            cellButtons.CssClass   = "modalPanelButtonCell";

            Button btnSave = new Button();
            btnSave.Click   += new EventHandler(btnSave_Click);
            btnSave.CssClass = "modalPanelButtonSave";
            btnSave.Text     = SueetieLocalizer.GetString("content_save");

            Button btnCancel = new Button();
            btnCancel.Click   += new EventHandler(btnCancel_Click);
            btnCancel.CssClass = "modalPanelButtonCancel";
            btnCancel.Text     = SueetieLocalizer.GetString("content_cancel");

            cellButtons.Controls.Add(checkBoxLog);
            cellButtons.Controls.Add(btnCancel);
            cellButtons.Controls.Add(btnSave);

            rowButtons.CssClass = "modalPanelButtonRow";
            rowButtons.Controls.Add(cellButtons);
            table.Controls.Add(rowButtons);

            #endregion

            this.Controls.Add(_panel);
            _panel.Visible = false;
            base.OnInit(e);
        }