public override bool Process(IBase baseObject, Facet facet, IGeneratorConfiguration generatorConfiguration) { var uiAttribute = (UIAttribute)facet.Attribute; var baseElement = (IElement)baseObject; var userFields = new List <IdentityField>(); var parentObject = (IElement)baseObject.Parent; var name = baseElement.GetNavigationName(UIKind.LoginPage); var subFolderName = name.ToLower(); var pagePath = FileSystemObject.PathCombine(generatorConfiguration.ApplicationFolderHierarchy[IonicFileSystemType.Pages], subFolderName); var resourcesHelper = generatorConfiguration.ResourcesHandler.CreateHelper(UIKind.LoginPage, baseObject); IDictionary <string, IEnumerable <ModuleImportDeclaration> > importGroups; IModuleAssembly module; Folder pageFolder = null; string loginTitleTranslationKey; string loginButtonTranslationKey; if (!generatorConfiguration.FileSystem.Exists(pagePath)) { var newPath = generatorConfiguration.FileSystem.CreatePath(pagePath); pageFolder = (Folder)generatorConfiguration.FileSystem[newPath]; } else { pageFolder = (Folder)generatorConfiguration.FileSystem[pagePath]; } if (uiAttribute.UILoadKind == UILoadKind.RootPage) { this.Raise <ApplicationFacetHandler>(); } importGroups = generatorConfiguration.CreateImportGroups(this, baseObject, pageFolder, true); importGroups.AddIndexImport("Page", "MainPage", 1); foreach (var childObject in baseElement.GetIdentityFields(IdentityFieldCategory.Login)) { if (childObject is IAttribute) { userFields.Add(new IdentityField((IAttribute)childObject, generatorConfiguration)); } else { DebugUtils.Break(); } } module = generatorConfiguration.PushModuleAssembly <AngularModule>("Login"); module.UILoadKind = uiAttribute.UILoadKind; loginTitleTranslationKey = resourcesHelper.Get(() => LOGIN_TITLE); loginButtonTranslationKey = resourcesHelper.Get(() => LOGIN_BUTTON); LoginPageGenerator.GeneratePage(baseObject, pagePath, name, generatorConfiguration, module, importGroups, userFields, loginTitleTranslationKey, loginButtonTranslationKey); return(true); }
public override bool Process(IBase baseObject, Facet facet, IGeneratorConfiguration generatorConfiguration) { var uiAttribute = (UIAttribute)facet.Attribute; var baseElement = (IElement)baseObject; var name = baseElement.GetNavigationName(); var formFields = new List <FormField>(); var parentObject = (IElement)baseObject.Parent; var subFolderName = name.ToLower(); var pagePath = FileSystemObject.PathCombine(generatorConfiguration.ApplicationFolderHierarchy[IonicFileSystemType.Pages], subFolderName); IDictionary <string, IEnumerable <ModuleImportDeclaration> > importGroups; IModuleAssembly module; Folder pageFolder = null; if (!generatorConfiguration.FileSystem.Exists(pagePath)) { var newPath = generatorConfiguration.FileSystem.CreatePath(pagePath); pageFolder = (Folder)generatorConfiguration.FileSystem[newPath]; } else { pageFolder = (Folder)generatorConfiguration.FileSystem[pagePath]; } if (uiAttribute.UILoadKind == UILoadKind.RootPage) { this.Raise <ApplicationFacetHandler>(); } importGroups = generatorConfiguration.CreateImportGroups(this, baseObject, pageFolder, true); foreach (var childObject in baseElement.GetFormFields(generatorConfiguration.PartsAliasResolver)) { if (childObject is IAttribute) { formFields.Add(new FormField((IAttribute)childObject, generatorConfiguration)); } else { DebugUtils.Break(); } } module = generatorConfiguration.PushModuleAssembly <AngularModule>("Edit" + name); module.UILoadKind = uiAttribute.UILoadKind; EditPopupPageGenerator.GeneratePage(baseObject, pagePath, name, generatorConfiguration, module, importGroups, formFields); return(true); }