public IActionResult ListSelect(DataSourceRequest command, PluginListModel model) { var pluginInfos = PluginManager.ReferencedPlugins.ToList(); var loadMode = (LoadPluginsStatus)model.SearchLoadModeId; if (loadMode == LoadPluginsStatus.InstalledOnly) { pluginInfos = pluginInfos.Where(x => x.Installed).ToList(); } if (loadMode == LoadPluginsStatus.NotInstalledOnly) { pluginInfos = pluginInfos.Where(x => !x.Installed).ToList(); } var items = new List <PluginModel>(); foreach (var item in pluginInfos.OrderBy(x => x.Group)) { items.Add(PreparePluginModel(item)); } var gridModel = new DataSourceResult { Data = items, Total = pluginInfos.Count() }; return(Json(gridModel)); }
public ActionResult List() { if (!_permissionService.Authorize(StandardPermissionProvider.ManagePlugins)) { return(AccessDeniedView()); } var model = new PluginListModel(); //load modes model.AvailableLoadModes = LoadPluginsMode.All.ToSelectList(false).ToList(); //groups model.AvailableGroups.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Common.All"), Value = "" }); foreach (var g in _pluginFinder.GetPluginGroups()) { model.AvailableGroups.Add(new SelectListItem { Text = g, Value = g }); } return(View(model)); }
public IActionResult List() { var model = new PluginListModel { //load modes AvailableLoadModes = LoadPluginsStatus.All.ToSelectList(HttpContext, false).ToList() }; return(View(model)); }
public JsonResult List(PluginListModel model) { var loadMode = (LoadPluginsMode)model.SearchLoadModeId; var pluginDescriptors = _pluginFinder.GetPluginDescriptors(loadMode, group: model.SearchGroup).ToList(); var data = pluginDescriptors.Select(x => { return(PreparePluginModel(x)); }); return(Json(new { data = data })); }
public ActionResult List() { var model = new PluginListModel(); model.AvailableLoadModes = LoadPluginsMode.InstalledOnly.ToSelectList(false).ToList(); foreach (var g in _pluginFinder.GetPluginGroups()) { model.AvailableGroups.Add(new SelectListItem { Text = g, Value = g }); } return(View(model)); }
/// <summary> /// 插件列表 /// </summary> /// <param name="type">插件类型</param> public ActionResult List(int type = -1) { PluginType pluginType = (PluginType)type; PluginListModel model = new PluginListModel(); model.PluginType = pluginType; model.InstalledPluginList = AdminPlugins.GetInstalledPluginList(pluginType); model.UninstalledPluginList = AdminPlugins.GetUnInstalledPluginList(pluginType); MallUtils.SetAdminRefererCookie(string.Format("{0}?type={1}", Url.Action("list"), type)); return(View(model)); }
public IActionResult ListSelect(DataSourceRequest command, PluginListModel model) { var loadMode = (LoadPluginsMode)model.SearchLoadModeId; var pluginDescriptors = _pluginFinder.GetPluginDescriptors(loadMode, "", model.SearchGroup).ToList(); var gridModel = new DataSourceResult { Data = pluginDescriptors.Select(x => PreparePluginModel(x, false, false)) .OrderBy(x => x.Group) .ToList(), Total = pluginDescriptors.Count() }; return(Json(gridModel)); }
public ActionResult ListSelect(DataSourceRequest command, PluginListModel model) { //if (!_permissionService.Authorize(StandardPermissionProvider.ManagePlugins)) //return AccessDeniedView(); var loadMode = (LoadPluginsMode)model.SearchLoadModeId; var pluginDescriptors = _pluginFinder.GetPluginDescriptors(loadMode, "", model.SearchGroup).ToList(); var gridModel = new DataSourceResult { Data = pluginDescriptors.Select(x => PreparePluginModel(x, false, false)) .OrderBy(x => x.Group) .ToList(), Total = pluginDescriptors.Count() }; return(Json(gridModel)); }
public async Task <IActionResult> ListSelect(DataSourceRequest command, PluginListModel model) { var loadMode = (LoadPluginsMode)model.SearchLoadModeId; var pluginDescriptors = _pluginFinder.GetPluginDescriptors(loadMode, "", model.SearchGroup).ToList(); var items = new List <PluginModel>(); foreach (var item in pluginDescriptors.OrderBy(x => x.Group)) { items.Add(await PreparePluginModel(item, false, false)); } var gridModel = new DataSourceResult { Data = items, Total = pluginDescriptors.Count() }; return(Json(gridModel)); }
public IActionResult List() { var model = new PluginListModel(); //load modes model.AvailableLoadModes = LoadPluginsMode.All.ToSelectList(false).ToList(); //groups model.AvailableGroups.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Common.All"), Value = "" }); foreach (var g in _pluginFinder.GetPluginGroups()) { model.AvailableGroups.Add(new SelectListItem { Text = g, Value = g }); } return(View(model)); }
/// <summary> /// Prepare paged plugin list model /// </summary> /// <param name="searchModel">Plugin search model</param> /// <returns>Plugin list model</returns> public virtual PluginListModel PreparePluginListModel(PluginSearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //get parameters to filter plugins var group = string.IsNullOrEmpty(searchModel.SearchGroup) || searchModel.SearchGroup.Equals("0") ? null : searchModel.SearchGroup; var loadMode = (LoadPluginsMode)searchModel.SearchLoadModeId; //filter visible plugins var plugins1 = _pluginService.GetPluginDescriptors <IPlugin>(group: group, loadMode: loadMode) //.Where(p => p.ShowInPluginsList) .OrderBy(plugin => plugin.Group).ToList() .ToPagedList(searchModel); var plugins = _pluginService.GetPluginDescriptors <IPlugin>(group: group, loadMode: loadMode) .Where(p => p.ShowInPluginsList) .OrderBy(plugin => plugin.Group).ToList() .ToPagedList(searchModel); //prepare list model var model = new PluginListModel().PrepareToGrid(searchModel, plugins, () => { return(plugins.Select(pluginDescriptor => { //fill in model values from the entity var pluginModel = pluginDescriptor.ToPluginModel <PluginModel>(); //fill in additional values (not existing in the entity) pluginModel.LogoUrl = _pluginService.GetPluginLogoUrl(pluginDescriptor); if (pluginDescriptor.Installed) { PrepareInstalledPluginModel(pluginModel, pluginDescriptor.Instance <IPlugin>()); } return pluginModel; })); }); return(model); }
/// <summary> /// Prepare paged plugin list model /// </summary> /// <param name="searchModel">Plugin search model</param> /// <returns>Plugin list model</returns> public virtual PluginListModel PreparePluginListModel(PluginSearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //get parameters to filter plugins var group = string.IsNullOrEmpty(searchModel.SearchGroup) || searchModel.SearchGroup.Equals("0") ? null : searchModel.SearchGroup; var loadMode = (LoadPluginsMode)searchModel.SearchLoadModeId; //get plugins var plugins = _pluginFinder.GetPluginDescriptors(group: group, loadMode: loadMode) .OrderBy(plugin => plugin.Group).ToList(); //prepare list model var model = new PluginListModel { Data = plugins.PaginationByRequestModel(searchModel).Select(pluginDescriptor => { //fill in model values from the entity var pluginModel = pluginDescriptor.ToPluginModel <PluginModel>(); //fill in additional values (not existing in the entity) pluginModel.LogoUrl = PluginManager.GetLogoUrl(pluginDescriptor); if (pluginDescriptor.Installed) { PrepareInstalledPluginModel(pluginModel, pluginDescriptor.Instance()); } return(pluginModel); }), Total = plugins.Count }; return(model); }