Source / pinned edition
BMWSB: Wohngeld-Plus-Rechner (ab 1. Januar 2025), Modul gsb_wohngeldrechner2025 der Datei global.js
Source of package de.social.wohngeld
- work
- urn:de:social:clir:wohngeld#BMWSB_WOHNGELDRECHNER_2025
- kind
- urn:de:social:clir:wohngeld#calculator
global.js?v=12, Abschnitt „Start gsb_wohngeldrechner2025“ bis „Ende gsb_wohngeldrechner2025“
- edition
- urn:de:social:clir:wohngeld#BMWSB_WOHNGELDRECHNER_2025_ED
- language
- de
- officiality
- official
- materialisation
- PINNED_OFFICIAL_BYTES
- life cycle
- in_force: [object Object]
Publications
| URI | Type | documentHash | Retrieved |
|---|---|---|---|
| https://www.bmwsb.bund.de/SiteGlobals/Frontend/JavaScript/init/global.js?v=12 | text/javascript; charset=utf-8 | sha256:75c997d2bb540b1d72df63865509e62faff95b282089a0b4bad753e49d279445 | 2026-09-15T00:00:00Z |
Fragments — 1
function/calculateWohngeld · other
de · official · sha256:b436056051c36c3bbfc42364514241eeabda5e3301cf1623d4a6ef3c4f484bc6DE
const maximumValue = totalHouseholdMembers < 6 ? calc.hoechstbetrag[totalHouseholdMembers][rentLevel] + calc.klimakomponente[totalHouseholdMembers] : calc.hoechstbetrag[5][rentLevel] + calc.klimakomponente[totalHouseholdMembers] + calc.hoechstbetrag.mehrAlsFuenf[rentLevel] * (totalHouseholdMembers - 5);
const rent = base.$homeResident.is(':checked') ? maximumValue : base.localizedParseFloat(base.$rent.val());
const monthlyTotalExpenditure = (rent < maximumValue ? rent : maximumValue) * eligibleHouseholdMembers / totalHouseholdMembers;
const a = calc.a[eligibleHouseholdMembers];
const b = calc.b[eligibleHouseholdMembers];
const c = calc.c[eligibleHouseholdMembers];
const M = base.max(monthlyTotalExpenditure + calc.heizkostenEntlastung[totalHouseholdMembers] * eligibleHouseholdMembers / totalHouseholdMembers, calc.M[totalHouseholdMembers]);
const Y = base.max(monthlyTotalIncome, calc.Y[eligibleHouseholdMembers]);
//Fix rounding
const massiveNumber = 100000000;
const z1 = massiveNumber * a + massiveNumber * b * M + massiveNumber * c * Y;
const z2 = z1 / massiveNumber * Y;
const z3 = M - z2;
const z4 = 1.15 * z3;
const result = Math.round(z4);
base.$result.val(result < 10 ? 0 : result);The hash beside the text is the sha256 of its exact bytes. It is the check that the text shown matches the one pinned in the package: a divergence fails the oracle’s static analysis.