fisharebest/webtrees

View on GitHub
resources/xml/reports/occupation_report.xml

Summary

Maintainability
Test Coverage
<?xml version="1.0" encoding="UTF-8" ?>
<Report>
    <Title><var var="I18N::translate('Occupations')" /></Title>
    <Description><var var="I18N::translate('A report of individuals who had a given occupation.')" /></Description>
    <Input name="occupation" lookup="OCCU" type="text"><var var="I18N::translate('Occupation')" /> </Input>
    <Input name="sortby" type="select" default="NAME" options="NAME=>I18N::translate('sort by name')|BIRT:DATE=>I18N::translate('sort by date of birth')"><var var="I18N::translate('Sort order')" /></Input>
    <Input name="pageSize" type="select" options="A4=>I18N::translateContext('paper size','A4')|A3=>I18N::translateContext('paper size', 'A3')|US-Letter=>I18N::translateContext('paper size','Letter')|US-Tabloid=>I18N::translateContext('paper size','Tabloid')"><var var="I18N::translate('Page size')" /></Input>
    <!--
    <Input name="fonts" type="select" default="dejavusans" options="arialunicid0=>I18N::translateContext('font name', 'Arial')|dejavusans=>I18N::translateContext('font name', 'DejaVu')|helvetica=>I18N::translateContext('font name', 'Helvetica')"><var var="I18N::translate('Font')"/></Input>
    -->
    <SetVar name="fonts" value="dejavusans" />

    <!-- Header -->
    <Style name="header" font="$fonts" size="16" style="b" />
    <!-- Page numbers text -->
    <Style name="pagenum" font="$fonts" size="8"/>
    <!-- Standard text -->
    <Style name="text" font="$fonts" size="8"/>
    <!-- Column labels -->
    <Style name="label" font="$fonts" size="10" style="b" />
    <!-- Generated by style - required style name by the generator -->
    <Style name="genby" font="$fonts" size="8" />
    <!-- Date text -->
    <Style name="date" font="$fonts" size="8"/>

    <!-- landscape orientation -->
    <SetVar name="namewidth" value="180"/>
    <SetVar name="datewidth" value="95"/>
    <SetVar name="occuwidth" value="130"/>
    <SetVar name="occudatewidth" value="95"/>
    <SetVar name="placewidth" value="100"/>
    <SetVar name="printedoccupation" value="0" />
    <SetVar name="morespaceindi" value="$namewidth + $datewidth" />

    <Doc pageSize="$pageSize" orientation="landscape">
        <Header>
            <Cell align="center" height="20" newline="1" style="header"><var var="I18N::translate('Occupations')" /></Cell>
            <Cell align="rightrtl" newline="1" style="pagenum"><var var="I18N::translate('Page')" /> <PageNum /> <var var="I18N::translate('of')" /> <TotalPages /></Cell>

            <SetVar name="fill" value="" />
            <if condition="$sortby=='NAME'"><SetVar name="fill" value="#AAAAAA" /></if>
            <TextBox bgcolor="$fill" border="1" width="$namewidth">
                <Text style="label"><var var="I18N::translate('Name')" /></Text>
            </TextBox>

            <SetVar name="fill" value="" />
            <if condition="$sortby=='BIRT:DATE'"><SetVar name="fill" value="#AAAAAA" /></if>
            <TextBox bgcolor="$fill" border="1" width="$datewidth">
                <Text style="label"><var var="I18N::translate('Date of birth')" /></Text>
            </TextBox>
            <!-- should print and sort by birth date -->

            <TextBox border="1" width="$occuwidth">
                <Text style="label"><var var="I18N::translate('Occupation')" /></Text>
            </TextBox>
            <TextBox border="1" width="$occudatewidth">
                <Text style="label"><var var="I18N::translate('Date')" /></Text>
            </TextBox>
            <TextBox border="1" width="$placewidth">
                <Text style="label"><var var="I18N::translate('Place')" /></Text>
            </TextBox>

            <TextBox border="1" newline="1">
                <Text style="label"><var var="I18N::translate('Note')" /></Text>
            </TextBox>
        </Header>
        <Body>
            <List list="individual" filter1="OCCU CONTAINS $occupation" sortby="$sortby">
                <SetVar name="moreoccupation" value="0" />
                <!-- Printed List counter -->
                <SetVar name="printedoccupation" value="$printedoccupation + 1" />
                <Cell style="text" width="$namewidth"><GetPersonName id="" />
                </Cell>
                <Cell style="text" width="$datewidth"><GedcomValue tag="BIRT:DATE" newline="1" /></Cell>
                <RepeatTag tag="OCCU">
                    <!-- Intend the fact line if more then one occupation -->
                    <if condition="$moreoccupation==1">
                        <Cell style="text" width="$morespaceindi"> </Cell>
                    </if>
                    <Cell style="text" width="$occuwidth"><GedcomValue tag="OCCU"/></Cell>
                    <!-- Date of the fact -->
                    <Cell style="text" width="$occudatewidth"><GedcomValue tag="OCCU:DATE"/></Cell>
                    <!-- Place of the fact -->
                    <Cell style="text" width="$placewidth"><GedcomValue tag="OCCU:PLAC"/></Cell>
                    <!-- Note text -->
                    <Cell style="text" newline="1">
                        <RepeatTag tag="OCCU">
                            <GedcomValue tag="OCCU:NOTE"/>
                        </RepeatTag>
                    </Cell>
                    <SetVar name="moreoccupation" value="1" />
                </RepeatTag>
            </List>
            <Cell align="rightrtl" newline="1" style="label"><br /><var var="I18N::translate('Total individuals')" />: <ListTotal /></Cell>
        </Body>
        <Footer>
            <Cell align="rightrtl" newline="1" style="date"><Now /></Cell>
        </Footer>
    </Doc>
</Report>