diff --git a/apps/web/app/(app)/environments/[environmentId]/settings/billing/components/PricingTable.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/billing/components/PricingTable.tsx index 61b5994b44..c05bfd0ee1 100644 --- a/apps/web/app/(app)/environments/[environmentId]/settings/billing/components/PricingTable.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/settings/billing/components/PricingTable.tsx @@ -93,6 +93,10 @@ export default function PricingTableComponent({ }; const coreAndWebAppSurveyFeatures = [ + { + title: "Remove Formbricks Branding", + comingSoon: false, + }, { title: "Team Roles", comingSoon: false, diff --git a/apps/web/app/(app)/environments/[environmentId]/settings/lookandfeel/page.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/lookandfeel/page.tsx index d36774410f..e78d781335 100644 --- a/apps/web/app/(app)/environments/[environmentId]/settings/lookandfeel/page.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/settings/lookandfeel/page.tsx @@ -1,6 +1,9 @@ import { getServerSession } from "next-auth"; -import { getIsEnterpriseEdition } from "@formbricks/ee/lib/service"; +import { + getRemoveInAppBrandingPermission, + getRemoveLinkBrandingPermission, +} from "@formbricks/ee/lib/service"; import { authOptions } from "@formbricks/lib/authOptions"; import { DEFAULT_BRAND_COLOR, IS_FORMBRICKS_CLOUD } from "@formbricks/lib/constants"; import { getMembershipByUserIdTeamId } from "@formbricks/lib/membership/service"; @@ -33,12 +36,8 @@ export default async function ProfileSettingsPage({ params }: { params: { enviro throw new Error("Team not found"); } - const isEnterpriseEdition = await getIsEnterpriseEdition(); - - const canRemoveLinkBranding = - team.billing.features.linkSurvey.status !== "inactive" || !IS_FORMBRICKS_CLOUD; - const canRemoveInAppBranding = - team.billing.features.inAppSurvey.status !== "inactive" || isEnterpriseEdition; + const canRemoveInAppBranding = getRemoveInAppBrandingPermission(team); + const canRemoveLinkBranding = getRemoveLinkBrandingPermission(team); const currentUserMembership = await getMembershipByUserIdTeamId(session?.user.id, team.id); const { isDeveloper, isViewer } = getAccessFlags(currentUserMembership?.role); diff --git a/apps/web/app/(app)/environments/[environmentId]/settings/members/components/AddMemberModal.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/members/components/AddMemberModal.tsx index 170a79d452..98f61d30c6 100644 --- a/apps/web/app/(app)/environments/[environmentId]/settings/members/components/AddMemberModal.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/settings/members/components/AddMemberModal.tsx @@ -19,10 +19,19 @@ interface MemberModalProps { open: boolean; setOpen: (v: boolean) => void; onSubmit: (data: { name: string; email: string; role: MembershipRole }) => void; - isEnterpriseEdition: boolean; + canDoRoleManagement: boolean; + isFormbricksCloud: boolean; + environmentId: string; } -export default function AddMemberModal({ open, setOpen, onSubmit, isEnterpriseEdition }: MemberModalProps) { +export default function AddMemberModal({ + open, + setOpen, + onSubmit, + canDoRoleManagement, + isFormbricksCloud, + environmentId, +}: MemberModalProps) { const { register, getValues, handleSubmit, reset, control } = useForm<{ name: string; email: string; @@ -47,11 +56,25 @@ export default function AddMemberModal({ open, setOpen, onSubmit, isEnterpriseEd - {!isEnterpriseEdition && ( -