Activities of "enisn"

Your web application and authentication application seem different. You got this error on your authentication application.

If you have .HttpApi.Host or separated .IdentityServer project, you have to run abp install-libs command for them too.

Yeah, I know. Please check this documentation: https://docs.abp.io/en/abp/latest/UI/AspNetCore/Customization-User-Interface#completely-overriding-a-razor-page

You should create that file in that path to override it. After creating that file and pasting the content which I posted above, you're ready to customize that page. You can make changes however you want in that file.

Hi @gozdeyildirmaz

We've reproduced this problem. This is a bug for pages under Saas. I've created an internal issue and we'll fix it as soon as possible.

You can check the same data in Entity Changes tab in Administration -> Audit Logs page.

Go to that page and type Volo.Saas.Tenant into Entity Type input:

I don't know if it's correct behavior or not, but the reason is the selected menu stays always open because of tree logic in lepon blazor menu tree.

If you navigate to another page that isn't under Administration, then you can expand & collapse the administration menu.

Hi @nhontran

In that version, Saas module is dependent on Payment module because of technical issues. That dependency is removed in v5,

You can remove those tables from migrations if you don't use it. https://support.abp.io/QA/Questions/2509/Remove-Pay-tables-from-Database-through-migrations#answer-81fc4c0a-24eb-af2a-b398-3a01c1e58c5b

But Make sure you haven't disabled the PayPlans table.

Hi @mc86

Your object type is ResponseModelLoadResult. Do you have any special serializer for that class.

As I see that class is from DevExpress. You should consider mapping that data to a DTO and providing it over API.

Have you enabled Global Featues of CmsKit ?

You can apply following code block in your GlobalFeatureConfigurator in Domain.Shared project.

GlobalFeatureManager.Instance.Modules.CmsKit(cmsKit =>
{
    cmsKit.EnableAll();
});

GlobalFeatureManager.Instance.Modules.CmsKitPro(cmsKitPro =>
{
    cmsKitPro.EnableAll();
});

After enabling, re-create and apply migration and you'll see the required tables will be created.

If it still doesn't work, please let us now

My existing project is in webassembly but due to speed issue we are converting into server app. So for this I created server app from abp suite and I can see there is no host project so do we need to add all the pages in blazor project only?

Yes you should do it in your Blazor project if it's blazor-server.


Also I have a fresh server app and added only my connection string in appsettings.json file. I am getting below error If I try to run project.

You have to run following command in your project before run

abp install-libs

Hi @

You can place the following page in your .Web project to customize it.

/Pages/Identity/OrganizationUnits/Index.cshtml

@page
@using System.Net
@using Microsoft.AspNetCore.Authorization
@using Microsoft.AspNetCore.Mvc.Localization
@using Volo.Abp.AspNetCore.Mvc.UI.Layout
@using Volo.Abp.AspNetCore.Mvc.UI.Packages.JsTree
@using Volo.Abp.Identity
@using Volo.Abp.Identity.Localization
@using Volo.Abp.Identity.Web.Navigation
@using Volo.Abp.Identity.Web.Pages.Identity.OrganizationUnits
@model IndexModel
@inject IHtmlLocalizer<IdentityResource> L
@inject IAuthorizationService Authorization
@inject IPageLayout PageLayout
@{
    PageLayout.Content.Title = L["OrganizationUnits"].Value;
    PageLayout.Content.BreadCrumb.Add(L["Menu:IdentityManagement"].Value);
    PageLayout.Content.MenuItemName = IdentityMenuNames.OrganizationUnits;
}

@section styles {
    <abp-style-bundle name="@typeof(IndexModel).FullName">
        <abp-style type="typeof(JsTreeStyleContributor)" />
        <abp-style src="/Pages/AbpPermissionManagement/permission-management-modal.css" />
        <abp-style src="/Pages/Identity/OrganizationUnits/organization-unit.css" />
    </abp-style-bundle>
}

@section scripts {
    <abp-script-bundle name="@typeof(IndexModel).FullName">
        <abp-script src="/client-proxies/identity-proxy.js" />
        <abp-script type="typeof(JsTreeScriptContributor)" />
        <abp-script src="/Pages/AbpPermissionManagement/permission-management-modal.js" />
        <abp-script src="/Pages/Identity/OrganizationUnits/index.js"></abp-script>
        <abp-script src="/Pages/Identity/OrganizationUnits/addMemberModal.js"></abp-script>
        <abp-script src="/Pages/Identity/OrganizationUnits/addRoleModal.js"></abp-script>
    </abp-script-bundle>
}

@section content_toolbar {
}

<div id="OrganizationUnitsWrapper">
    <abp-row>
        <abp-column size-md="_12" size-lg="_6">
            <abp-card>
                <abp-card-body>
                    <abp-card-title>
                        <abp-row h-align="Between">
                            <abp-column>
                                <span style="font-size:initial"> @L["OrganizationTree"]</span>
                            </abp-column>
                            <abp-column>
                                @if (await Authorization.IsGrantedAsync(IdentityPermissions.OrganizationUnits.ManageOU))
                                {
                                    <abp-button class="float-end" button-type="Primary" size="Small" name="CreateOrganizationUnit" text="@L["AddRootUnit"].Value" icon="plus" />
                                }
                            </abp-column>
                        </abp-row>
                    </abp-card-title>
                    <div id="OrganizationUnitEditTree"></div>
                    <div id="OrganizationUnitTreeEmptyInfo" class="text-muted">@L["NoOrganizationUnits"]</div>
                </abp-card-body>
            </abp-card>
        </abp-column>
        <abp-column size-md="_12" size-lg="_6">
            <abp-card>
                <abp-card-header>
                    <h3 class="selected-organizationunit-name"></h3>
                </abp-card-header>
                <abp-card-body class="p-0">
                    <abp-tabs>
                        <abp-tab name="Members" title="@L["Members"].Value">
                            <div id="OuMembersTable" style="display:none">
                                @if (await Authorization.IsGrantedAsync(IdentityPermissions.OrganizationUnits.ManageUsers))
                                {
                                    <div class="text-end mb-3">
                                        <abp-button button-type="Primary" size="Small" name="AddMember" text="@L["AddMember"].Value" icon="plus" />
                                    </div>
                                }
                                <abp-table striped-rows="true" class="nowrap"></abp-table>
                            </div>
                            <div id="OuMembersEmptyInfo" class="text-muted">
                                @L["SelectAnOrganizationUnitToSeeMembers"]
                            </div>
                        </abp-tab>
                        <abp-tab name="Roles" title="@L["Roles"].Value">
                            <div id="OuRolesTable" style="display:none">
                                @if (await Authorization.IsGrantedAsync(IdentityPermissions.OrganizationUnits.ManageRoles))
                                {
                                    <div class="text-end mb-3">
                                        <abp-button button-type="Primary" size="Small" name="AddRole" text="@L["AddRole"].Value" icon="plus" />
                                    </div>
                                }
                                <abp-table striped-rows="true" class="nowrap"></abp-table>
                            </div>
                            <div id="OuRolesEmptyInfo" class="text-muted">
                                @L["SelectAnOrganizationUnitToSeeRoles"]
                            </div>
                        </abp-tab>
                    </abp-tabs>
                </abp-card-body>
            </abp-card>
        </abp-column>
    </abp-row>
</div>

You can follow this documentation for overriding razor pages: https://docs.abp.io/en/abp/latest/UI/AspNetCore/Customization-User-Interface#completely-overriding-a-razor-page

Both Blazor Wasm and Server don't have login UI, so you're redirected to authentication server UI to log in. So the authentication server is built with MVC UI. You can customize the login page like in a regular MVC application template: https://docs.abp.io/en/abp/latest/UI/AspNetCore/Customization-User-Interface#overriding-a-page

Please note that:

  • If you're using separated IdentityServer, you should do it in your IdentityServer Project
  • If you're using Blazor Webassembly and not separated IdentityServer or tiered solution, you should to that in your HttpApi.Host project.

Also, you can follow this article for a more detailed explanation: https://community.abp.io/posts/how-to-customize-the-login-page-of-an-abp-blazor-application-by4o9yms

Showing 261 to 270 of 496 entries
Made with ❤️ on ABP v9.1.0-preview. Updated on November 11, 2024, 11:11