public static void Start() { if (Navigator.Manager.NotDefined(MethodInfo.GetCurrentMethod())) { CultureInfoClient.Start(); Navigator.RegisterArea(typeof(WordClient)); Navigator.AddSettings(new List <EntitySettings> { new EntitySettings <WordTemplateEntity> { PartialViewName = e => ViewPrefix.FormatWith("WordTemplate") }, new EntitySettings <SystemWordTemplateEntity> { }, new EntitySettings <WordTransformerSymbol> { }, new EntitySettings <WordConverterSymbol> { }, }); OperationClient.AddSetting(new EntityOperationSettings <WordTemplateEntity>(WordTemplateOperation.CreateWordReport) { Group = EntityOperationGroup.None, Click = ctx => Module["createWordReportFromTemplate"](ctx.Options(), JsFunction.Event, new FindOptions(ctx.Entity.Query.ToQueryName()).ToJS(ctx.Prefix, "New"), ctx.Url.Action((WordController mc) => mc.CreateWordReport())) }); } }
public static void Start() { if (Navigator.Manager.NotDefined(MethodInfo.GetCurrentMethod())) { Navigator.AddSettings(new List <EntitySettings> { new EntitySettings <SMSMessageEntity> { View = e => new SMSMessage(), Icon = ExtensionsImageLoader.GetImageSortName("sms.png") }, new EntitySettings <SMSTemplateEntity> { View = e => new SMSTemplate(), Icon = ExtensionsImageLoader.GetImageSortName("smstemplate.png") }, new EmbeddedEntitySettings <SMSTemplateMessageEmbedded>() { View = e => new Signum.Windows.SMS.SMSTemplateMessage() }, new EntitySettings <SMSSendPackageEntity> { View = e => new SMSSendPackage(), Icon = ExtensionsImageLoader.GetImageSortName("package.png") }, new EntitySettings <SMSUpdatePackageEntity> { View = e => new SMSUpdatePackage(), Icon = ExtensionsImageLoader.GetImageSortName("package.png") }, new ModelEntitySettings <MultipleSMSModel> { View = e => new MultipleSMS(), Icon = ExtensionsImageLoader.GetImageSortName("package.png") }, }); OperationClient.AddSetting(new EntityOperationSettings <Entity>(SMSMessageOperation.CreateSMSWithTemplateFromEntity) { Click = FindAssociatedTemplates }); OperationClient.AddSetting(new ContextualOperationSettings <Entity>(SMSMessageOperation.SendSMSMessages) { Click = coc => { MultipleSMSModel model = Navigator.View(new MultipleSMSModel()); if (model == null) { return; } var result = new ConstructorContext(coc.SearchControl, coc.OperationInfo).SurroundConstruct(ctx => Server.Return((IOperationServer s) => s.ConstructFromMany(coc.Entities, coc.Type, coc.OperationInfo.OperationSymbol, ctx.Args))); if (result != null) { Navigator.Navigate(result); } } }); } }
public static void Start() { if (Navigator.Manager.NotDefined(MethodInfo.GetCurrentMethod())) { Navigator.AddSettings(new List <EntitySettings>() { new EntitySettings <ScheduledTaskEntity> { View = e => new ScheduledTask(), Icon = Image("clock.png") }, new EntitySettings <SimpleTaskSymbol> { View = e => new SimpleTask(), Icon = Image("simpleTask.png") }, new EntitySettings <ScheduledTaskLogEntity> { View = e => new ScheduledTaskLog(), Icon = Image("scheduledTaskLog.png") }, new EntitySettings <ScheduleRuleMonthsEntity> { View = e => new ScheduleRuleMonths() }, new EntitySettings <ScheduleRuleWeekDaysEntity> { View = e => new ScheduleRuleWeekDays() }, new EntitySettings <ScheduleRuleMinutelyEntity> { View = e => new ScheduleRuleMinutely() }, new EntitySettings <HolidayCalendarEntity> { View = e => new HolidayCalendar() }, }); Server.SetSymbolIds <SimpleTaskSymbol>(); var executeGroup = new EntityOperationGroup { Background = Brushes.Gold, AutomationName = "execute", Text = () => ITaskMessage.Execute.NiceToString() + "...", }; OperationClient.AddSetting(new EntityOperationSettings <ITaskEntity>(ITaskOperation.ExecuteSync) { Icon = Image("execute.png"), Group = executeGroup }); OperationClient.AddSetting(new EntityOperationSettings <ITaskEntity>(ITaskOperation.ExecuteAsync) { Icon = Image("execute.png"), Group = executeGroup }); } }
public static void Start() { if (Navigator.Manager.NotDefined(MethodInfo.GetCurrentMethod())) { QueryClient.Start(); UserAssetsClient.Start(); UserAssetsClient.RegisterExportAssertLink <UserChartEntity>(); LinksClient.RegisterEntityLinks <UserChartEntity>((lite, ctx) => new[] { new QuickLinkAction(ChartMessage.Preview, RouteHelper.New().Action <ChartController>(cc => cc.ViewUserChart(lite, null))) { IsVisible = ChartPermission.ViewCharting.IsAuthorized() } }); Func <SubTokensOptions, Mapping <QueryTokenEmbedded> > qtMapping = ops => ctx => { string tokenStr = UserAssetsHelper.GetTokenString(ctx); string queryKey = ctx.Parent.Parent.Parent.Inputs[TypeContextUtilities.Compose("Query", "Key")]; object queryName = QueryLogic.ToQueryName(queryKey); var chart = ((UserChartEntity)ctx.Parent.Parent.Parent.UntypedValue); QueryDescription qd = DynamicQueryManager.Current.QueryDescription(queryName); return(new QueryTokenEmbedded(QueryUtils.Parse(tokenStr, qd, ops | (chart.GroupResults ? SubTokensOptions.CanAggregate : 0)))); }; Navigator.AddSettings(new List <EntitySettings> { new EntitySettings <UserChartEntity> { PartialViewName = _ => ChartClient.ViewPrefix.FormatWith("UserChart"), IsCreable = EntityWhen.Never } }); Navigator.EntitySettings <UserChartEntity>().MappingMain = Navigator.EntitySettings <UserChartEntity>().MappingLine = new EntityMapping <UserChartEntity>(true) .SetProperty(cb => cb.Columns, new ChartClient.MListCorrelatedOrDefaultMapping <ChartColumnEmbedded>(ChartClient.MappingChartColumn)) .SetProperty(cr => cr.Filters, new MListMapping <QueryFilterEmbedded> { ElementMapping = new EntityMapping <QueryFilterEmbedded>(false) .CreateProperty(a => a.Operation) .CreateProperty(a => a.ValueString) .SetProperty(a => a.Token, qtMapping(SubTokensOptions.CanAnyAll | SubTokensOptions.CanElement)) }) .SetProperty(cr => cr.Orders, new MListMapping <QueryOrderEmbedded> { ElementMapping = new EntityMapping <QueryOrderEmbedded>(false) .CreateProperty(a => a.OrderType) .SetProperty(a => a.Token, qtMapping(SubTokensOptions.CanAnyAll | SubTokensOptions.CanElement)) }) .SetProperty(cb => cb.Parameters, new MListDictionaryMapping <ChartParameterEmbedded, string>(p => p.Name) { OnlyIfPossible = true }); RouteTable.Routes.MapRoute(null, "UC/{webQueryName}/{lite}", new { controller = "Chart", action = "ViewUserChart" }); UserChartEntity.SetConverters(query => QueryLogic.ToQueryName(query.Key), queryName => QueryLogic.GetQueryEntity(queryName)); OperationClient.AddSetting(new EntityOperationSettings <UserChartEntity>(UserChartOperation.Delete) { Click = ctx => ChartClient.Module["deleteUserChart"](ctx.Options(), Finder.FindRoute(((UserChartEntity)ctx.Entity).Query.ToQueryName())), }); LinksClient.RegisterEntityLinks <Entity>((entity, ctrl) => { if (!ChartPermission.ViewCharting.IsAuthorized()) { return(null); } return(UserChartLogic.GetUserChartsEntity(entity.EntityType) .Select(cp => new UserChartQuickLink(cp, entity)).ToArray()); }); } }