public bool IsEnable(object Sender, object Element) { bool retval = false; if (Element is CommandParameters) { CommandParameters cp = (CommandParameters)Element; string sid = cp.CommandArguments["primaryKeyId"]; string[] elem = sid.Split(new string[] { "::" }, StringSplitOptions.RemoveEmptyEntries); int id = -1; int.TryParse(elem[0], out id); retval = ListInfoBus.CanAdmin(id); } return(retval); }
public bool IsEnable(object Sender, object Element) { bool retval = false; NameValueCollection qs = ((Control)Sender).Page.Request.QueryString; if (!String.IsNullOrEmpty(qs["ViewName"])) { int listId = ListManager.GetListIdByClassName(qs["ViewName"]); retval = ListInfoBus.CanAdmin(listId); } else if (!String.IsNullOrEmpty(qs["ClassName"])) { int listId = ListManager.GetListIdByClassName(qs["ClassName"]); retval = ListInfoBus.CanAdmin(listId); } return(retval); }
protected void Page_Load(object sender, EventArgs e) { li = ListManager.GetListInfoByMetaClassName(ClassName); if (!IsPostBack) { if (!li.IsTemplate && !ListInfoBus.CanAdmin(li.PrimaryKeyId.Value)) { throw new Mediachase.Ibn.AccessDeniedException(); } BindLists(); BindSavedData(); Page.SetFocus(ListNameTextBox); MainBlockHeader.AddLink("~/images/IbnFramework/cancel.gif", GetGlobalResourceObject("IbnFramework.GlobalMetaInfo", "Back").ToString(), String.Format(CultureInfo.InvariantCulture, "{0}?class={1}", CHelper.ListAdminPage, ClassName)); } CancelButton.Attributes.Add("onclick", String.Format(CultureInfo.InvariantCulture, "window.location.href='ListInfoView.aspx?class={0}';return false;", ClassName)); }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (!ListInfoBus.CanAdmin(_listId)) { throw new AccessDeniedException(); } } rbList.SelectedIndexChanged += new EventHandler(rbList_SelectedIndexChanged); if (!Page.IsPostBack) { BindData(); } btnMove.CustomImage = ResolveUrl("~/layouts/images/upload.gif"); btnMove.ServerClick += new EventHandler(btnSave_ServerClick); btnMove.Text = CHelper.GetResFileString("{IbnFramework.ListInfo:tMove}"); btnMove.Attributes.Add("onclick", "DisableButtons(this);"); btnMoveAssign.CustomImage = ResolveUrl("~/layouts/images/upload.gif"); btnMoveAssign.ServerClick += new EventHandler(btnMoveAssign_ServerClick); btnMoveAssign.Text = CHelper.GetResFileString("{IbnFramework.ListInfo:tMoveAssign}"); btnMoveAssign.Attributes.Add("onclick", "DisableButtons(this);"); ScriptManager sm = ScriptManager.GetCurrent(this.Page); if (sm != null) { sm.RegisterPostBackControl(btnMove); sm.RegisterPostBackControl(btnMoveAssign); } BindToolbar(); }
private void BindList() { int i = 3; grdMain.Columns[i++].HeaderText = CHelper.GetResFileString("{IbnFramework.ListInfo:tName}"); grdMain.Columns[i++].HeaderText = CHelper.GetResFileString("{IbnFramework.ListInfo:Type}"); grdMain.Columns[i++].HeaderText = CHelper.GetResFileString("{IbnFramework.ListInfo:Status}"); grdMain.Columns[i++].HeaderText = CHelper.GetResFileString("{IbnFramework.ListInfo:CreatedBy}"); grdMain.Columns[i++].HeaderText = CHelper.GetResFileString("{IbnFramework.ListInfo:Created}"); foreach (DataGridColumn dgc in grdMain.Columns) { if (dgc.SortExpression == pc["Lists_FV_Sort"].ToString()) { dgc.HeaderText += String.Format(" <img border='0' align='absmiddle' width='9px' height='5px' src='{0}'/>", ResolveUrl("~/layouts/images/upbtnF.jpg")); } else if (dgc.SortExpression + " DESC" == pc["Lists_FV_Sort"].ToString()) { dgc.HeaderText += String.Format(" <img border='0' align='absmiddle' width='9px' height='5px' src='{0}'/>", ResolveUrl("~/layouts/images/downbtnF.jpg")); } } DataTable dt = new DataTable(); dt.Columns.Add(new DataColumn("ObjectId", typeof(int))); dt.Columns.Add(new DataColumn("Type", typeof(string))); dt.Columns.Add(new DataColumn("Icon", typeof(string))); dt.Columns.Add(new DataColumn("Name", typeof(string))); dt.Columns.Add(new DataColumn("TypeName", typeof(string))); dt.Columns.Add(new DataColumn("StatusName", typeof(string))); dt.Columns.Add(new DataColumn("CreatorName", typeof(string))); dt.Columns.Add(new DataColumn("CreationDate", typeof(DateTime))); dt.Columns.Add(new DataColumn("ActionMove", typeof(string))); dt.Columns.Add(new DataColumn("ActionSecurity", typeof(string))); dt.Columns.Add(new DataColumn("ActionEdit", typeof(string))); dt.Columns.Add(new DataColumn("ActionDelete", typeof(string))); dt.Columns.Add(new DataColumn("sortName", typeof(string))); dt.Columns.Add(new DataColumn("sortCreator", typeof(string))); string link = ""; string sPath = ResolveUrl("~/Apps/ListApp/Pages/ListInfoList.aspx?Tab=0"); if (ProjectId > 0) { link = "ProjectId=" + ProjectId.ToString(); sPath = ResolveUrl(String.Format("~/Projects/ProjectView.aspx?{0}", link)); } DataRow dr; DataRow dr_bas = dt.NewRow(); bool fl_UseBas = false; int iParentFolderId = 0; bool IsPrjFolder = false; ListFolder folder = null; if (_folderId == -1) { IsPrjFolder = true; } else { folder = new ListFolder(_folderId); iParentFolderId = (folder.ParentId.HasValue)? (int)folder.ParentId.Value : 0; IsPrjFolder = (folder.FolderType == ListFolderType.Project); } if ((iParentFolderId > 0 || (IsPrjFolder && _folderId != -1)) && (ProjectId < 0 || (ProjectId > 0 && _folderId != ListManager.GetProjectRoot(ProjectId).PrimaryKeyId.Value))) { if (IsPrjFolder && iParentFolderId == 0) { iParentFolderId = -1; } fl_UseBas = true; dr_bas["ObjectId"] = iParentFolderId; dr_bas["Icon"] = ResolveUrl("~/layouts/images/blank.gif"); dr_bas["Name"] = String.Format("<a href='{1}&ListFolderId={0}'>[..]</a>", iParentFolderId.ToString(), sPath); } if (folder == null) { using (IDataReader reader = Project.GetListProjects()) { while (reader.Read()) { AddFolderItem(dt, link, sPath, (int)reader["ProjectId"], reader["Title"].ToString(), (int)reader["CreatorId"], (DateTime)reader["CreationDate"], true); } } } else { foreach (Mediachase.Ibn.Data.Services.TreeNode tN in Mediachase.Ibn.Data.Services.TreeManager.GetChildNodes(folder)) { MetaObject mo = tN.InnerObject; AddFolderItem(dt, link, sPath, mo.PrimaryKeyId.Value, tN.Title, (int)mo.Properties["CreatorId"].Value, (DateTime)mo.Properties["Created"].Value, false); } } string sFilter = pc["Lists_FV_Sort"].ToString(); if (!(sFilter == "sortName") || (sFilter == "sortName DESC")) { sFilter += ",sortName"; } DataRow[] drFolders = dt.Select("", sFilter); DataTable dtLists = dt.Clone(); foreach (ListInfo li in ListManager.GetLists(_folderId)) { int iListId = li.PrimaryKeyId.Value; dr = dtLists.NewRow(); dr["ObjectId"] = iListId; dr["Type"] = "List"; dr["Icon"] = ResolveUrl("~/layouts/images/lists.gif"); dr["Name"] = String.Format("<a href='{3}?ClassName={0}{1}&ListFolderId={4}'>{2}</a>", ListManager.GetListMetaClassName(iListId), (String.IsNullOrEmpty(link) ? link : "&" + link), li.Title, ResolveUrl("~/Apps/MetaUIEntity/Pages/EntityList.aspx"), _folderId); dr["sortName"] = li.Title; dr["sortCreator"] = Mediachase.UI.Web.Util.CommonHelper.GetUserStatusPureName(li.CreatorId); dr["TypeName"] = (li.Properties["ListType"].Value != null) ? CHelper.GetResFileString(MetaEnum.GetFriendlyName(DataContext.Current.MetaModel.RegisteredTypes[ListManager.ListTypeEnumName], (int)li.Properties["ListType"].Value)) : ""; dr["StatusName"] = (li.Properties["Status"].Value != null) ? CHelper.GetResFileString(MetaEnum.GetFriendlyName(DataContext.Current.MetaModel.RegisteredTypes[ListManager.ListStatusEnumName], (int)li.Properties["Status"].Value)) : ""; dr["CreatorName"] = Mediachase.UI.Web.Util.CommonHelper.GetUserStatus(li.CreatorId); dr["CreationDate"] = li.Created; if (ListInfoBus.CanAdmin(iListId)) { if (folder.FolderType != ListFolderType.Private) { string sPrjId = ""; if (ProjectId > 0) { sPrjId = "," + ProjectId.ToString(); } } string className = ListManager.GetListMetaClassName(iListId); string moveLink = String.Format("javascript:OpenSizableWindow(\"{3}?ListId={0}{2}&btn={1}\", {4}, {5});", iListId, btnRefresh.UniqueID, (String.IsNullOrEmpty(link) ? link : "&" + link), ResolveClientUrl("~/Apps/ListApp/Pages/ListInfoMove.aspx"), _dialogWidth, _dialogHeight); dr["ActionMove"] = String.Format("<a href='{0}'><img alt='' src='{2}' width='12' height='12' border='0' align='absmiddle' title='{1}'></a>", moveLink, CHelper.GetResFileString("{IbnFramework.ListInfo:MoveTo}"), ResolveUrl("~/layouts/images/MoveTo.gif")); Dictionary <string, string> prms = new Dictionary <string, string>(); prms.Add("ClassName", className); string securityLink = String.Format("javascript:{{{0}}}", CommandManager.GetCurrent(this.Page).AddCommand("", "", "ListInfoList", "MC_ListApp_Security", prms).Replace("\"", """)); dr["ActionSecurity"] = String.Format("<a href=\"{0}\"><img alt='' src='{1}' width='16' height='16' border='0' align='absmiddle' title='{2}'></a>", securityLink, ResolveUrl("~/Layouts/Images/icon-key.gif"), CHelper.GetResFileString("{IbnFramework.ListInfo:Security}")); dr["ActionEdit"] = String.Format("<a href='{3}?ListFolderId={0}&class={5}{2}'><img alt='' src='{4}' width='16' height='16' border='0' align='absmiddle' title='{1}'></a>", folder.PrimaryKeyId.Value.ToString(), CHelper.GetResFileString("{IbnFramework.ListInfo:ListManagement}"), (String.IsNullOrEmpty(link) ? link : "&" + link), ResolveUrl(CHelper.ListAdminPage), ResolveUrl("~/layouts/images/customize.gif"), className); //dr["ActionDelete"] = "<a href='javascript:DeleteList(" + iListId.ToString() + ")'><img src='../layouts/images/delete.gif' width='16' height='16' border=0 align='absmiddle' title='" + CHelper.GetResFileString("{IbnFramework.ListInfo:Delete}") + "' ></a>"; //dr["ActionDelete"] = String.Format("<img alt='' src='{1}' width='16' height='16' border='0' align='absmiddle' title='{0}'>", // CHelper.GetResFileString("{IbnFramework.ListInfo:Delete}"), // ResolveUrl("~/layouts/images/delete.gif")); dr["ActionDelete"] = String.Format("<a href='javascript:DeleteList({2})'><img alt='' src='{1}' width='16' height='16' border='0' align='absmiddle' title='{0}'></a>", CHelper.GetResFileString("{IbnFramework.ListInfo:Delete}"), ResolveUrl("~/layouts/images/delete.gif"), iListId.ToString()); } dtLists.Rows.Add(dr); } DataRow[] drLists = dtLists.Select("", sFilter); DataTable dtResult = dt.Clone(); if (fl_UseBas) { DataRow _dr = dtResult.NewRow(); _dr.ItemArray = (Object[])dr_bas.ItemArray.Clone(); dtResult.Rows.Add(_dr); } foreach (DataRow dr1 in drFolders) { DataRow _dr = dtResult.NewRow(); _dr.ItemArray = dr1.ItemArray; dtResult.Rows.Add(_dr); } foreach (DataRow dr2 in drLists) { DataRow _dr = dtResult.NewRow(); _dr.ItemArray = dr2.ItemArray; dtResult.Rows.Add(_dr); } DataView dv = dtResult.DefaultView; if (pc["Lists_FV_PageSize"] != null) { grdMain.PageSize = int.Parse(pc["Lists_FV_PageSize"]); } int iPageIndex = 0; if (pc["Lists_FV_Page"] != null) { iPageIndex = int.Parse(pc["Lists_FV_Page"]); } int ppi = dtResult.Rows.Count / grdMain.PageSize; if (dtResult.Rows.Count % grdMain.PageSize == 0) { ppi = ppi - 1; } if (iPageIndex <= ppi) { grdMain.CurrentPageIndex = iPageIndex; } else { grdMain.CurrentPageIndex = 0; } grdMain.DataSource = dv; grdMain.DataBind(); }