src/Form/FormsType.php line 22

Open in your IDE?
  1. <?php
  2. namespace App\Form;
  3. use App\Entity\Forms;
  4. use Symfony\Component\Form\AbstractType;
  5. use Symfony\Component\Form\Extension\Core\Type\FormType;
  6. use Symfony\Component\Form\Extension\Core\Type\TextType;
  7. use Symfony\Component\Form\Extension\Core\Type\TextareaType;
  8. use Symfony\Component\Form\Extension\Core\Type\IntegerType;
  9. use Symfony\Component\Form\Extension\Core\Type\NumberType;
  10. use Symfony\Component\Form\Extension\Core\Type\FileType;
  11. use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
  12. use Symfony\Component\Form\Extension\Core\Type\HiddenType;
  13. use Symfony\Component\Form\Extension\Core\Type\DateType;
  14. use Symfony\Component\Form\Extension\Core\Type\CollectionType;
  15. use App\Form\BedroomType;
  16. use App\Form\Extension\ImageTypeExtension;
  17. use Symfony\Component\Form\FormBuilderInterface;
  18. use Symfony\Component\OptionsResolver\OptionsResolver;
  19. class FormsType extends AbstractType
  20. {
  21.     public function buildForm(FormBuilderInterface $builder, array $options)
  22.     {
  23.         $builder
  24.             ->add('date'DateType::class, [
  25.                 'label' => 'Date',
  26.                 'html5' => true,
  27.                 'widget' => 'single_text',
  28.                 'format' => 'yyyy-MM-dd',
  29.                 'input_format' => 'yyyy-MM-dd',
  30.                 // 'disabled' => true,
  31.                 'required' => true,
  32.                 ])
  33.             ->add('propname'TextType::class, [
  34.                 'label' => 'Property name',
  35.                 'required' => true,
  36.             ])
  37.             // Hidden fields
  38.             ->add('uuid'HiddenType::class, [
  39.                 'label' => 'UUID',
  40.                 'disabled' => true,
  41.                 ])
  42.             ->add('brand'HiddenType::class, [
  43.                 'label' => 'Brand',
  44.                 'disabled' => true,
  45.             ])
  46.             ->add('version'HiddenType::class, [
  47.                 'label' => 'Version',
  48.                 'disabled' => true,
  49.             ])
  50.         
  51.             ->add(
  52.                 $builder->create('group_external'FormType::class, [
  53.                     'label' => 'Exterior',
  54.                     'inherit_data' => true,
  55.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  56.                     'row_attr' => ['class' => 'mt-5'],
  57.                     'required' => false,
  58.                 ])
  59.             )
  60.             ->add('extbuildappear'ChoiceType::class, [
  61.                 'label'  => 'Appearance of building',
  62.                 'choices'  => [
  63.                     // 'n/a' => '',
  64.                     'Unacceptable' => '0',
  65.                     'Poor' => '1',
  66.                     'Quite Good' => '2',
  67.                     'Good' => '3',
  68.                     'Good to Very Good' => '3.5',
  69.                     'Very Good' => '4',
  70.                     'Very Good to Excellent' => '4.5',
  71.                     'Excellent' => '5',
  72.                 ],
  73.                 'expanded' => true,
  74.                 'multiple' => false,
  75.                 'attr' => ['class' => 'form-check-inline'],
  76.                 'required' => true,
  77.             ])
  78.             ->add('extparkfacility'ChoiceType::class, [
  79.                 'label' => 'Parking, garden and additional facilities',
  80.                 'choices'  => [
  81.                     'n/a' => 'n/a',
  82.                     'Unacceptable' => '0',
  83.                     'Poor' => '1',
  84.                     'Quite Good' => '2',
  85.                     'Good' => '3',
  86.                     'Good to Very Good' => '3.5',
  87.                     'Very Good' => '4',
  88.                     'Very Good to Excellent' => '4.5',
  89.                     'Excellent' => '5',
  90.                 ],
  91.                 'expanded' => true,
  92.                 'multiple' => false,
  93.                 'attr' => ['class' => 'form-check-inline'],
  94.                 'required' => true,
  95.             ])
  96.             ->add('extsiding'ChoiceType::class, [
  97.                 'label' => 'Environment and setting',
  98.                 'choices'  => [
  99.                     // 'n/a' => '',
  100.                     'Unacceptable' => '0',
  101.                     'Poor' => '1',
  102.                     'Quite Good' => '2',
  103.                     'Good' => '3',
  104.                     'Good to Very Good' => '3.5',
  105.                     'Very Good' => '4',
  106.                     'Very Good to Excellent' => '4.5',
  107.                     'Excellent' => '5',
  108.                 ],
  109.                 'expanded' => true,
  110.                 'multiple' => false,
  111.                 'attr' => ['class' => 'form-check-inline'],
  112.                 'required' => true,
  113.             ])
  114.             ->add('exteriorTotal'TextType::class, [
  115.                 'label' => 'Exterior Total',
  116.                 'required' => false,
  117.                 'attr' => ['class' => 'col-2'],
  118.                 'disabled' => true,
  119.                 // 'scale' => 2,
  120.             ])
  121.             ->add(
  122.                 $builder->create('group_external_items'FormType::class, [
  123.                     'label' => 'Exterior items',
  124.                     'inherit_data' => true,
  125.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  126.                     'row_attr' => ['class' => 'mt-5'],
  127.                     'required' => false,
  128.                 ])
  129.             )
  130.             ->add('extwall'ChoiceType::class, [
  131.                 'label' => 'Property well signed',
  132.                 'choices'  => [
  133.                     'n/a' => '',
  134.                     'Unacceptable' => 'Unacceptable',
  135.                     'Poor' => 'Poor',
  136.                     'Quite Good' => 'Quite Good',
  137.                     'Good' => 'Good',
  138.                     'Good to Very Good' => 'Good to Very Good',
  139.                     'Very Good' => 'Very Good',
  140.                     'Very Good to Excellent' => 'Very Good to Excellent',
  141.                     'Excellent' => 'Excellent',
  142.                 ],
  143.                 'expanded' => true,
  144.                 'multiple' => false,
  145.                 'attr' => ['class' => 'form-check-inline'],
  146.                 'required' => false,
  147.             ])
  148.             ->add('extbarbecus'ChoiceType::class, [
  149.                 'label' => 'Barbecue',
  150.                 'choices'  => [
  151.                     'n/a' => '',
  152.                     'Unacceptable' => 'Unacceptable',
  153.                     'Poor' => 'Poor',
  154.                     'Quite Good' => 'Quite Good',
  155.                     'Good' => 'Good',
  156.                     'Good to Very Good' => 'Good to Very Good',
  157.                     'Very Good' => 'Very Good',
  158.                     'Very Good to Excellent' => 'Very Good to Excellent',
  159.                     'Excellent' => 'Excellent',
  160.                 ],
  161.                 'expanded' => true,
  162.                 'multiple' => false,
  163.                 'attr' => ['class' => 'form-check-inline'],
  164.                 'required' => false,
  165.             ])
  166.             ->add('extgarfurniture'ChoiceType::class, [
  167.                 'label' => 'Garden furniture',
  168.                 'choices'  => [
  169.                     'n/a' => '',
  170.                     'Unacceptable' => 'Unacceptable',
  171.                     'Poor' => 'Poor',
  172.                     'Quite Good' => 'Quite Good',
  173.                     'Good' => 'Good',
  174.                     'Good to Very Good' => 'Good to Very Good',
  175.                     'Very Good' => 'Very Good',
  176.                     'Very Good to Excellent' => 'Very Good to Excellent',
  177.                     'Excellent' => 'Excellent',
  178.                 ],
  179.                 'expanded' => true,
  180.                 'multiple' => false,
  181.                 'attr' => ['class' => 'form-check-inline'],
  182.                 'required' => false,
  183.             ])
  184.             ->add('extgates'ChoiceType::class, [
  185.                 'label' => 'Gates',
  186.                 'choices'  => [
  187.                     'n/a' => '',
  188.                     'Unacceptable' => 'Unacceptable',
  189.                     'Poor' => 'Poor',
  190.                     'Quite Good' => 'Quite Good',
  191.                     'Good' => 'Good',
  192.                     'Good to Very Good' => 'Good to Very Good',
  193.                     'Very Good' => 'Very Good',
  194.                     'Very Good to Excellent' => 'Very Good to Excellent',
  195.                     'Excellent' => 'Excellent',
  196.                 ],
  197.                 'expanded' => true,
  198.                 'multiple' => false,
  199.                 'attr' => ['class' => 'form-check-inline'],
  200.                 'required' => false,
  201.             ])
  202.             ->add('extdogs'ChoiceType::class, [
  203.                 'label' => 'Garden fully enclosed for dogs?',
  204.                 'choices' => [
  205.                     'n/a' => '',
  206.                     'Yes' => 'Yes',
  207.                     'No' => 'No',
  208.                     'Partial' => 'Partial'
  209.                 ],
  210.                 'expanded' => true,
  211.                 'multiple' => false,
  212.                 'attr' => ['class' => 'form-check-inline'],
  213.                 // 'row_attr' => ['class' => 'flex-fill'],
  214.                 'required' => false,
  215.             ])
  216.             ->add('extnotes'TextareaType::class, [
  217.                 'label' => 'Exterior notes and suggestions',
  218.                 'required' => false,
  219.             ])
  220.             ->add('extpic1'FileType::class, [
  221.                 'label' => 'Exterior picture 1',
  222.                 'required' => false,
  223.                 'mapped' => false,
  224.                 'show_preview' => true,
  225.             ])
  226.             ->add('extpic2'FileType::class, [
  227.                 'label' => 'Exterior picture 2',
  228.                 'required' => false,
  229.                 'mapped' => false,
  230.                 'show_preview' => true,
  231.             ])
  232.             ->add('extpic3'FileType::class, [
  233.                 'label' => 'Exterior picture 3',
  234.                 'required' => false,
  235.                 'mapped' => false,
  236.                 'show_preview' => true,
  237.             ])
  238.             ->add('extpic4'FileType::class, [
  239.                 'label' => 'Exterior picture 4',
  240.                 'required' => false,
  241.                 'mapped' => false,
  242.                 'show_preview' => true,
  243.             ])
  244.             ->add(
  245.                 $builder->create('group_management'FormType::class, [
  246.                     'label' => 'Management',
  247.                     'inherit_data' => true,
  248.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  249.                     'row_attr' => ['class' => 'mt-5'],
  250.                     'required' => false,
  251.                 ])
  252.             )
  253.             ->add('minfo'ChoiceType::class, [
  254.                 'label' => 'Information for guests',
  255.                 'choices'  => [
  256.                     // 'n/a' => '',
  257.                     'Unacceptable' => '0',
  258.                     'Poor' => '1',
  259.                     'Quite Good' => '2',
  260.                     'Good' => '3',
  261.                     'Good to Very Good' => '3.5',
  262.                     'Very Good' => '4',
  263.                     'Very Good to Excellent' => '4.5',
  264.                     'Excellent' => '5',
  265.                 ],
  266.                 'expanded' => true,
  267.                 'multiple' => false,
  268.                 'attr' => ['class' => 'form-check-inline'],
  269.                 'required' => true,
  270.             ])
  271.             ->add('mwelcome'ChoiceType::class, [
  272.                 'label' => 'Welcome pack',
  273.                 'choices'  => [
  274.                     // 'n/a' => '',
  275.                     'Unacceptable' => '0',
  276.                     'Poor' => '1',
  277.                     'Quite Good' => '2',
  278.                     'Good' => '3',
  279.                     'Good to Very Good' => '3.5',
  280.                     'Very Good' => '4',
  281.                     'Very Good to Excellent' => '4.5',
  282.                     'Excellent' => '5',
  283.                 ],
  284.                 'expanded' => true,
  285.                 'multiple' => false,
  286.                 'attr' => ['class' => 'form-check-inline'],
  287.                 'required' => true,
  288.             ])
  289.             ->add('marrival'ChoiceType::class, [
  290.                 'label' => 'Arrival procedure and emergency key safe',
  291.                 'choices'  => [
  292.                     // 'n/a' => '',
  293.                     'Unacceptable' => '0',
  294.                     'Poor' => '1',
  295.                     'Quite Good' => '2',
  296.                     'Good' => '3',
  297.                     'Good to Very Good' => '3.5',
  298.                     'Very Good' => '4',
  299.                     'Very Good to Excellent' => '4.5',
  300.                     'Excellent' => '5',
  301.                 ],
  302.                 'expanded' => true,
  303.                 'multiple' => false,
  304.                 'attr' => ['class' => 'form-check-inline'],
  305.                 'required' => true,
  306.             ])
  307.             ->add('mwifi'ChoiceType::class, [
  308.                 'label' => 'WiFi',
  309.                 'choices'  => [
  310.                     // 'n/a' => '',
  311.                     'Unacceptable' => '0',
  312.                     'Poor' => '1',
  313.                     'Quite Good' => '2',
  314.                     'Good' => '3',
  315.                     'Good to Very Good' => '3.5',
  316.                     'Very Good' => '4',
  317.                     'Very Good to Excellent' => '4.5',
  318.                     'Excellent' => '5',
  319.                 ],
  320.                 'expanded' => true,
  321.                 'multiple' => false,
  322.                 'attr' => ['class' => 'form-check-inline'],
  323.                 'required' => true,
  324.             ])
  325.             ->add('maccessories'ChoiceType::class, [
  326.                 'label' => 'Accessories and personal touches',
  327.                 'choices'  => [
  328.                     // 'n/a' => '',
  329.                     'Unacceptable' => '0',
  330.                     'Poor' => '1',
  331.                     'Quite Good' => '2',
  332.                     'Good' => '3',
  333.                     'Good to Very Good' => '3.5',
  334.                     'Very Good' => '4',
  335.                     'Very Good to Excellent' => '4.5',
  336.                     'Excellent' => '5',
  337.                 ],
  338.                 'expanded' => true,
  339.                 'multiple' => false,
  340.                 'attr' => ['class' => 'form-check-inline'],
  341.                 'required' => true,
  342.             ])
  343.             ->add('mspace'ChoiceType::class, [
  344.                 'label' => 'Space, comfort and ease of use',
  345.                 'choices'  => [
  346.                     // 'n/a' => '',
  347.                     'Unacceptable' => '0',
  348.                     'Poor' => '1',
  349.                     'Quite Good' => '2',
  350.                     'Good' => '3',
  351.                     'Good to Very Good' => '3.5',
  352.                     'Very Good' => '4',
  353.                     'Very Good to Excellent' => '4.5',
  354.                     'Excellent' => '5',
  355.                 ],
  356.                 'expanded' => true,
  357.                 'multiple' => false,
  358.                 'attr' => ['class' => 'form-check-inline'],
  359.                 'required' => true,
  360.             ])
  361.             ->add('managementEfficiencyScore'TextType::class, [
  362.                 'label' => 'Management Efficiency Score',
  363.                 'required' => false,
  364.                 'attr' => ['class' => 'col-2'],
  365.                 'disabled' => true,
  366.                 // 'scale' => 2,
  367.             ])
  368.             ->add(
  369.                 $builder->create('group_legislation'FormType::class, [
  370.                     'label' => 'Legislation',
  371.                     'inherit_data' => true,
  372.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  373.                     'row_attr' => ['class' => 'mt-5'],
  374.                     'required' => false,
  375.                 ])
  376.             )
  377.             ->add('mfirerisk'ChoiceType::class, [
  378.                 'label' => 'Fire risk assessment',
  379.                 'choices' => [
  380.                     'n/a' => '',
  381.                     'Yes' => 'Yes',
  382.                     'No' => 'No',
  383.                 ],
  384.                 'expanded' => true,
  385.                 'multiple' => false,
  386.                 'attr' => ['class' => 'form-check-inline'],
  387.                 'required' => false,
  388.             ])
  389.             ->add('mfra'ChoiceType::class, [
  390.                 'label' => 'Annual FRA review undertaken',
  391.                 'choices' => [
  392.                     'n/a' => '',
  393.                     'Yes' => 'Yes',
  394.                     'No' => 'No',
  395.                 ],
  396.                 'expanded' => true,
  397.                 'multiple' => false,
  398.                 'attr' => ['class' => 'form-check-inline'],
  399.                 'required' => false,
  400.             ])
  401.             ->add('mboiler'ChoiceType::class, [
  402.                 'label' => 'Boiler safety certificate',
  403.                 'choices' => [
  404.                     'n/a' => '',
  405.                     'Yes' => 'Yes',
  406.                     'No' => 'No',
  407.                 ],
  408.                 'expanded' => true,
  409.                 'multiple' => false,
  410.                 'attr' => ['class' => 'form-check-inline'],
  411.                 'required' => false,
  412.             ])
  413.             ->add('mpat'ChoiceType::class, [
  414.                 'label' => 'PAT',
  415.                 'choices' => [
  416.                     'n/a' => '',
  417.                     'Yes' => 'Yes',
  418.                     'No' => 'No',
  419.                 ],
  420.                 'expanded' => true,
  421.                 'multiple' => false,
  422.                 'attr' => ['class' => 'form-check-inline'],
  423.                 'required' => false,
  424.             ])
  425.             ->add('melectrictest'ChoiceType::class, [
  426.                 'label' => '5 year electrical test',
  427.                 'choices' => [
  428.                     'n/a' => '',
  429.                     'Yes' => 'Yes',
  430.                     'No' => 'No',
  431.                 ],
  432.                 'expanded' => true,
  433.                 'multiple' => false,
  434.                 'attr' => ['class' => 'form-check-inline'],
  435.                 'required' => false,
  436.             ])
  437.             ->add('mlegionela'ChoiceType::class, [
  438.                 'label' => 'Legionella',
  439.                 'choices' => [
  440.                     'n/a' => '',
  441.                     'Yes' => 'Yes',
  442.                     'No' => 'No',
  443.                 ],
  444.                 'expanded' => true,
  445.                 'multiple' => false,
  446.                 'attr' => ['class' => 'form-check-inline'],
  447.                 'required' => false,
  448.             ])
  449.             ->add('minsurrance'ChoiceType::class, [
  450.                 'label' => 'Public liability insurance',
  451.                 'choices' => [
  452.                     'n/a' => '',
  453.                     'Yes' => 'Yes',
  454.                     'No' => 'No',
  455.                 ],
  456.                 'expanded' => true,
  457.                 'multiple' => false,
  458.                 'attr' => ['class' => 'form-check-inline'],
  459.                 'required' => false,
  460.             ])
  461.             ->add('meblindcord'ChoiceType::class, [
  462.                 'label' => 'Blind cords secured',
  463.                 'choices' => [
  464.                     'n/a' => '',
  465.                     'Yes' => 'Yes',
  466.                     'No' => 'No',
  467.                 ],
  468.                 'expanded' => true,
  469.                 'multiple' => false,
  470.                 'attr' => ['class' => 'form-check-inline'],
  471.                 'required' => false,
  472.             ])
  473.             ->add(
  474.                 $builder->create('group_items'FormType::class, [
  475.                     'label' => 'Items',
  476.                     'inherit_data' => true,
  477.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  478.                     'row_attr' => ['class' => 'mt-5'],
  479.                     'required' => false,
  480.                 ])
  481.             )
  482.             ->add('mcot'ChoiceType::class, [
  483.                 'label' => 'Cot',
  484.                 'choices' => [
  485.                     'n/a' => '',
  486.                     'Yes' => 'Yes',
  487.                     'No' => 'No',
  488.                     'Available on request' => 'Available on request',
  489.                 ],
  490.                 'expanded' => true,
  491.                 'multiple' => false,
  492.                 'attr' => ['class' => 'form-check-inline'],
  493.                 'required' => false,
  494.             ])
  495.             ->add('mcotprop'ChoiceType::class, [
  496.                 'label' => 'Is the cot at the property?',
  497.                 'choices' => [
  498.                     'n/a' => '',
  499.                     'Yes' => 'Yes',
  500.                     'No' => 'No',
  501.                     'Available on request' => 'Available on request',
  502.                 ],
  503.                 'expanded' => true,
  504.                 'multiple' => false,
  505.                 'attr' => ['class' => 'form-check-inline'],
  506.                 'required' => false,
  507.             ])
  508.             ->add('mhighchair'ChoiceType::class, [
  509.                 'label' => 'High chair',
  510.                 'choices' => [
  511.                     'n/a' => '',
  512.                     'Yes' => 'Yes',
  513.                     'No' => 'No',
  514.                     'Available on request' => 'Available on request',
  515.                 ],
  516.                 'expanded' => true,
  517.                 'multiple' => false,
  518.                 'attr' => ['class' => 'form-check-inline'],
  519.                 'required' => false,
  520.             ])
  521.             ->add('mhighchairprop'ChoiceType::class, [
  522.                 'label' => 'Is the high chair at the property?',
  523.                 'choices' => [
  524.                     'n/a' => '',
  525.                     'Yes' => 'Yes',
  526.                     'No' => 'No',
  527.                     'Available on request' => 'Available on request',
  528.                 ],
  529.                 'expanded' => true,
  530.                 'multiple' => false,
  531.                 'attr' => ['class' => 'form-check-inline'],
  532.                 'required' => false,
  533.             ])
  534.             ->add('mstairgate'ChoiceType::class, [
  535.                 'label' => 'Stair gate',
  536.                 'choices' => [
  537.                     'n/a' => '',
  538.                     'Yes' => 'Yes',
  539.                     'No' => 'No',
  540.                     'Available on request' => 'Available on request',
  541.                 ],
  542.                 'expanded' => true,
  543.                 'multiple' => false,
  544.                 'attr' => ['class' => 'form-check-inline'],
  545.                 'required' => false,
  546.             ])
  547.             ->add('mstairgateprop'ChoiceType::class, [
  548.                 'label' => 'Is the stair gate at the property?',
  549.                 'choices' => [
  550.                     'n/a' => '',
  551.                     'Yes' => 'Yes',
  552.                     'No' => 'No',
  553.                     'Available on request' => 'Available on request',
  554.                 ],
  555.                 'expanded' => true,
  556.                 'multiple' => false,
  557.                 'attr' => ['class' => 'form-check-inline'],
  558.                 'required' => false,
  559.             ])
  560.             ->add(
  561.                 $builder->create('group_fa'FormType::class, [
  562.                     'label' => 'Fire alarms',
  563.                     'inherit_data' => true,
  564.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  565.                     'row_attr' => ['class' => 'mt-5'],
  566.                     'required' => false,
  567.                 ])
  568.             )
  569.             ->add('faplace'ChoiceType::class, [
  570.                 'label' => 'Fire alarm in place',
  571.                 'choices' => [
  572.                     'n/a' => '',
  573.                     'Yes' => 'Yes',
  574.                     'No' => 'No',
  575.                     'Not tested' => 'Not tested'
  576.                 ],
  577.                 'expanded' => true,
  578.                 'multiple' => false,
  579.                 'attr' => ['class' => 'form-check-inline'],
  580.                 'required' => false,
  581.             ])
  582.             ->add('fadesign'ChoiceType::class, [
  583.                 'label' => 'Fire alarm working as designed',
  584.                 'choices' => [
  585.                     'n/a' => '',
  586.                     'Yes' => 'Yes',
  587.                     'No' => 'No',
  588.                     'Not tested' => 'Not tested'
  589.                 ],
  590.                 'expanded' => true,
  591.                 'multiple' => false,
  592.                 'attr' => ['class' => 'form-check-inline'],
  593.                 'required' => false,
  594.             ])
  595.             ->add('favi'ChoiceType::class, [
  596.                 'label' => 'Fire alarm visual inspection/under 10 years old',
  597.                 'choices' => [
  598.                     'n/a' => '',
  599.                     'Yes' => 'Yes',
  600.                     'No' => 'No',
  601.                     'Not tested' => 'Not tested'
  602.                 ],
  603.                 'expanded' => true,
  604.                 'multiple' => false,
  605.                 'attr' => ['class' => 'form-check-inline'],
  606.                 'required' => false,
  607.             ])
  608.             ->add('facoment'TextType::class, [
  609.                 'label' => 'Fire alarm comments',
  610.                 'required' => false,
  611.             ])
  612.             ->add(
  613.                 $builder->create('group_fc'FormType::class, [
  614.                     'label' => 'Carbon monoxide detectors',
  615.                     'inherit_data' => true,
  616.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  617.                     'row_attr' => ['class' => 'mt-5'],
  618.                     'required' => false,
  619.                 ])
  620.             )
  621.             ->add('fcloc'ChoiceType::class, [
  622.                 'label' => 'Carbon monoxide in appropriate locations',
  623.                 'choices' => [
  624.                     'n/a' => '',
  625.                     'Yes' => 'Yes',
  626.                     'No' => 'No',
  627.                     'Partial' => 'Partial'
  628.                 ],
  629.                 'expanded' => true,
  630.                 'multiple' => false,
  631.                 'attr' => ['class' => 'form-check-inline'],
  632.                 // 'row_attr' => ['class' => 'flex-fill'],
  633.                 'required' => false,
  634.             ])
  635.             ->add('fcdesign'ChoiceType::class, [
  636.                 'label' => 'Carbon monoxide workings as designed',
  637.                 'choices' => [
  638.                     'n/a' => '',
  639.                     'Yes' => 'Yes',
  640.                     'No' => 'No',
  641.                     'Partial' => 'Partial'
  642.                 ],
  643.                 'expanded' => true,
  644.                 'multiple' => false,
  645.                 'attr' => ['class' => 'form-check-inline'],
  646.                 // 'row_attr' => ['class' => 'flex-fill'],
  647.                 'required' => false,
  648.             ])
  649.             ->add('fcvi'ChoiceType::class, [
  650.                 'label' => 'Carbon monoxide visual inspection',
  651.                 'choices' => [
  652.                     'n/a' => '',
  653.                     'Yes' => 'Yes',
  654.                     'No' => 'No',
  655.                     'Partial' => 'Partial'
  656.                 ],
  657.                 'expanded' => true,
  658.                 'multiple' => false,
  659.                 'attr' => ['class' => 'form-check-inline'],
  660.                 // 'row_attr' => ['class' => 'flex-fill'],
  661.                 'required' => false,
  662.             ])
  663.             ->add('fccoment'TextType::class, [
  664.                 'label' => 'Carbon monoxide comments',
  665.                 'required' => false,
  666.             ])
  667.             ->add(
  668.                 $builder->create('group_fe'FormType::class, [
  669.                     'label' => 'Fire Extinguisher',
  670.                     'inherit_data' => true,
  671.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  672.                     'row_attr' => ['class' => 'mt-5'],
  673.                     'required' => false,
  674.                 ])
  675.             )
  676.             ->add('ffeachfloor'ChoiceType::class, [
  677.                 'label' => 'Fire extinguisher on each floor',
  678.                 'choices' => [
  679.                     'n/a' => '',
  680.                     'Yes' => 'Yes',
  681.                     'No' => 'No',
  682.                 ],
  683.                 'expanded' => true,
  684.                 'multiple' => false,
  685.                 'attr' => ['class' => 'form-check-inline'],
  686.                 'required' => false,
  687.             ])
  688.             ->add('ffpressure'ChoiceType::class, [
  689.                 'label' => 'Fire extinguisher showing correct pressure',
  690.                 'choices' => [
  691.                     'Yes' => 'Yes',
  692.                     'No' => 'No',
  693.                     'None provided' => '',
  694.                     'Not tested' => 'Not tested'
  695.                 ],
  696.                 'expanded' => true,
  697.                 'multiple' => false,
  698.                 'attr' => ['class' => 'form-check-inline'],
  699.                 'required' => false,
  700.             ])
  701.             ->add('ffvi'ChoiceType::class, [
  702.                 'label' => 'Fire extinguisher visual inspection/tamper seals in place',
  703.                 'choices' => [
  704.                     'Yes' => 'Yes',
  705.                     'No' => 'No',
  706.                     'None provided' => '',
  707.                     'Not tested' => 'Not tested'
  708.                 ],
  709.                 'expanded' => true,
  710.                 'multiple' => false,
  711.                 'attr' => ['class' => 'form-check-inline'],
  712.                 'required' => false,
  713.             ])
  714.             // ->add('ffseal', ChoiceType::class, [
  715.             //     'label' => 'Fire extinguisher tamper seals in place',
  716.             //     'choices' => [
  717.             //         'Yes' => 'Yes',
  718.             //         'No' => 'No',
  719.             //         'None provided' => '',
  720.             //         'Not tested' => 'Not tested'
  721.             //     ],
  722.             //     'expanded' => true,
  723.             //     'multiple' => false,
  724.             //     'attr' => ['class' => 'form-check-inline'],
  725.             //     'required' => false,
  726.             // ])
  727.             ->add('ffdate'DateType::class, [
  728.                 'label' => 'Fire extinguisher date on device',
  729.                 'html5' => true,
  730.                 'widget' => 'single_text',
  731.                 'format' => 'yyyy-MM-dd',
  732.                 'input_format' => 'yyyy-MM-dd',
  733.                 'required' => false,
  734.             ])
  735.             ->add('ffcoment'TextType::class, [
  736.                 'label' => 'Fire extinguisher comments',
  737.                 'required' => false,
  738.             ])
  739.             ->add(
  740.                 $builder->create('group_fb'FormType::class, [
  741.                     'label' => 'Fire blanket',
  742.                     'inherit_data' => true,
  743.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  744.                     'row_attr' => ['class' => 'mt-5'],
  745.                     'required' => false,
  746.                 ])
  747.             )
  748.             ->add('fbtab'ChoiceType::class, [
  749.                 'label' => 'Fire blanket release tabs available',
  750.                 'choices' => [
  751.                     'Yes' => 'Yes',
  752.                     'No' => 'No',
  753.                     'None provided' => '',
  754.                     'Not tested' => 'Not tested'
  755.                 ],
  756.                 'expanded' => true,
  757.                 'multiple' => false,
  758.                 'attr' => ['class' => 'form-check-inline'],
  759.                 'required' => false,
  760.             ])
  761.             ->add('fbvi'ChoiceType::class, [
  762.                 'label' => 'Fire blanket visual inspection',
  763.                 'choices' => [
  764.                     'Yes' => 'Yes',
  765.                     'No' => 'No',
  766.                     'None provided' => '',
  767.                     'Not tested' => 'Not tested'
  768.                 ],
  769.                 'expanded' => true,
  770.                 'multiple' => false,
  771.                 'attr' => ['class' => 'form-check-inline'],
  772.                 'required' => false,
  773.             ])
  774.             ->add('fbcoment'TextType::class, [
  775.                 'label' => 'Fire blanket comments',
  776.                 'required' => false,
  777.             ])
  778.             ->add(
  779.                 $builder->create('group_fevi'FormType::class, [
  780.                     'label' => 'Emergency Lighting',
  781.                     'inherit_data' => true,
  782.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  783.                     'row_attr' => ['class' => 'mt-5'],
  784.                     'required' => false,
  785.                 ])
  786.             )
  787.             ->add('fevi'ChoiceType::class, [
  788.                 'label' => 'Emergency lighting visual inspection',
  789.                 'choices' => [
  790.                     'n/a' => '',
  791.                     'Yes' => 'Yes',
  792.                     'No' => 'No',
  793.                 ],
  794.                 'expanded' => true,
  795.                 'multiple' => false,
  796.                 'attr' => ['class' => 'form-check-inline'],
  797.                 'required' => false,
  798.             ])
  799.             ->add('fecoment'TextType::class, [
  800.                 'label' => 'Emergency lighting comments',
  801.                 'required' => false,
  802.             ])
  803.             ->add(
  804.                 $builder->create('group_fw'FormType::class, [
  805.                     'label' => 'Boiler/water heater',
  806.                     'inherit_data' => true,
  807.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  808.                     'row_attr' => ['class' => 'mt-5'],
  809.                     'required' => false,
  810.                 ])
  811.             )
  812.             ->add('fwtemp'ChoiceType::class, [
  813.                 'label' => 'Boiler water heater thermostat set to 60 degrees',
  814.                 'choices' => [
  815.                     'n/a' => '',
  816.                     'Yes' => 'Yes',
  817.                     'No' => 'No',
  818.                     'Not tested' => 'Not tested'
  819.                 ],
  820.                 'expanded' => true,
  821.                 'multiple' => false,
  822.                 'attr' => ['class' => 'form-check-inline'],
  823.                 'required' => false,
  824.             ])
  825.             ->add('fwcoment'TextType::class, [
  826.                 'label' => 'Boiler/water heater comments',
  827.                 'required' => false,
  828.             ])
  829.             ->add(
  830.                 $builder->create('group_chimney'FormType::class, [
  831.                     'label' => 'Chimney',
  832.                     'inherit_data' => true,
  833.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  834.                     'row_attr' => ['class' => 'mt-5'],
  835.                     'required' => false,
  836.                 ])
  837.             )
  838.             ->add('chimney'ChoiceType::class, [
  839.                 'label' => 'Chimney swept',
  840.                 'choices' => [
  841.                     'n/a' => '',
  842.                     'Yes' => 'Yes',
  843.                     'No' => 'No',
  844.                 ],
  845.                 'expanded' => true,
  846.                 'multiple' => false,
  847.                 'attr' => ['class' => 'form-check-inline'],
  848.                 'required' => false,
  849.             ])
  850.             ->add('chimneydate'DateType::class, [
  851.                 'label' => 'Date last swept',
  852.                 'html5' => true,
  853.                 'widget' => 'single_text',
  854.                 'format' => 'yyyy-MM-dd',
  855.                 'input_format' => 'yyyy-MM-dd',
  856.                 'required' => false,
  857.             ])
  858.             ->add(
  859.                 $builder->create('group_menotes'FormType::class, [
  860.                     'label' => 'Management and efficiency',
  861.                     'inherit_data' => true,
  862.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  863.                     'row_attr' => ['class' => 'mt-5'],
  864.                     'required' => false,
  865.                 ])
  866.             )
  867.             ->add('mnotes'TextareaType::class, [
  868.                 'label' => 'Management notes and suggestions',
  869.                 'required' => false,
  870.             ])
  871.             
  872.             ->add('mpic1'FileType::class, [
  873.                 'label' => 'Management picture 1',
  874.                 'required' => false,
  875.                 'mapped' => false,
  876.                 'show_preview' => true,
  877.             ])
  878.             ->add('mpic2'FileType::class, [
  879.                 'label' => 'Management picture 2',
  880.                 'required' => false,
  881.                 'mapped' => false,
  882.                 'show_preview' => true,
  883.             ])
  884.             ->add('mpic3'FileType::class, [
  885.                 'label' => 'Management picture 3',
  886.                 'required' => false,
  887.                 'mapped' => false,
  888.                 'show_preview' => true,
  889.             ])
  890.             ->add('mpic4'FileType::class, [
  891.                 'label' => 'Management picture 4',
  892.                 'required' => false,
  893.                 'mapped' => false,
  894.                 'show_preview' => true,
  895.             ])
  896.             ->add(
  897.                 $builder->create('group_cleanliness'FormType::class, [
  898.                     'label' => 'Cleanliness',
  899.                     'inherit_data' => true,
  900.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  901.                     'row_attr' => ['class' => 'mt-5'],
  902.                     'required' => false,
  903.                 ])
  904.             )
  905.             ->add('cliving'ChoiceType::class, [
  906.                 'label' => 'Cleanliness living rooms',
  907.                 'choices'  => [
  908.                     // 'n/a' => '',
  909.                     'Unacceptable' => '0',
  910.                     'Poor' => '1',
  911.                     'Quite Good' => '2',
  912.                     'Good' => '3',
  913.                     'Good to Very Good' => '3.5',
  914.                     'Very Good' => '4',
  915.                     'Very Good to Excellent' => '4.5',
  916.                     'Excellent' => '5',
  917.                 ],
  918.                 'expanded' => true,
  919.                 'multiple' => false,
  920.                 'attr' => ['class' => 'form-check-inline'],
  921.                 'required' => true,
  922.             ])
  923.             ->add('cbed'ChoiceType::class, [
  924.                 'label' => 'Cleanliness bedrooms',
  925.                 'choices'  => [
  926.                     // 'n/a' => '',
  927.                     'Unacceptable' => '0',
  928.                     'Poor' => '1',
  929.                     'Quite Good' => '2',
  930.                     'Good' => '3',
  931.                     'Good to Very Good' => '3.5',
  932.                     'Very Good' => '4',
  933.                     'Very Good to Excellent' => '4.5',
  934.                     'Excellent' => '5',
  935.                 ],
  936.                 'expanded' => true,
  937.                 'multiple' => false,
  938.                 'attr' => ['class' => 'form-check-inline'],
  939.                 'required' => true,
  940.             ])
  941.             ->add('cbath'ChoiceType::class, [
  942.                 'label' => 'Cleanliness bathrooms',
  943.                 'choices'  => [
  944.                     // 'n/a' => '',
  945.                     'Unacceptable' => '0',
  946.                     'Poor' => '1',
  947.                     'Quite Good' => '2',
  948.                     'Good' => '3',
  949.                     'Good to Very Good' => '3.5',
  950.                     'Very Good' => '4',
  951.                     'Very Good to Excellent' => '4.5',
  952.                     'Excellent' => '5',
  953.                 ],
  954.                 'expanded' => true,
  955.                 'multiple' => false,
  956.                 'attr' => ['class' => 'form-check-inline'],
  957.                 'required' => true,
  958.             ])
  959.             ->add('ckit'ChoiceType::class, [
  960.                 'label' => 'Cleanliness kitchens',
  961.                 'choices'  => [
  962.                     // 'n/a' => '',
  963.                     'Unacceptable' => '0',
  964.                     'Poor' => '1',
  965.                     'Quite Good' => '2',
  966.                     'Good' => '3',
  967.                     'Good to Very Good' => '3.5',
  968.                     'Very Good' => '4',
  969.                     'Very Good to Excellent' => '4.5',
  970.                     'Excellent' => '5',
  971.                 ],
  972.                 'expanded' => true,
  973.                 'multiple' => false,
  974.                 'attr' => ['class' => 'form-check-inline'],
  975.                 'required' => true,
  976.             ])
  977.             ->add('cleanlinessScore'TextType::class, [
  978.                 'label' => 'Cleanliness Score',
  979.                 'required' => false,
  980.                 'attr' => ['class' => 'col-2'],
  981.                 'disabled' => true,
  982.                 // 'scale' => 2,
  983.             ])
  984.             ->add(
  985.                 $builder->create('group_cleanliness_items'FormType::class, [
  986.                     'label' => 'Cleanliness notes',
  987.                     'inherit_data' => true,
  988.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  989.                     'row_attr' => ['class' => 'mt-5'],
  990.                     'required' => false,
  991.                 ])
  992.             )
  993.             ->add('cnotes'TextareaType::class, [
  994.                 'label' => 'Cleanliness notes and suggestions',
  995.                 'required' => false,
  996.             ])
  997.             
  998.             ->add('cpic1'FileType::class, [
  999.                 'label' => 'Cleanliness picture 1',
  1000.                 'required' => false,
  1001.                 'mapped' => false,
  1002.                 'show_preview' => true,
  1003.             ])
  1004.             ->add('cpic2'FileType::class, [
  1005.                 'label' => 'Cleanliness picture 2',
  1006.                 'required' => false,
  1007.                 'mapped' => false,
  1008.                 'show_preview' => true,
  1009.             ])
  1010.             ->add('cpic3'FileType::class, [
  1011.                 'label' => 'Cleanliness picture 3',
  1012.                 'required' => false,
  1013.                 'mapped' => false,
  1014.                 'show_preview' => true,
  1015.             ])
  1016.             ->add('cpic4'FileType::class, [
  1017.                 'label' => 'Cleanliness picture 4',
  1018.                 'required' => false,
  1019.                 'mapped' => false,
  1020.                 'show_preview' => true,
  1021.             ])
  1022.             ->add(
  1023.                 $builder->create('group_publicarea'FormType::class, [
  1024.                     'label' => 'Public Area',
  1025.                     'inherit_data' => true,
  1026.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  1027.                     'row_attr' => ['class' => 'mt-5'],
  1028.                     'required' => false,
  1029.                 ])
  1030.             )
  1031.             ->add('pdecor'ChoiceType::class, [
  1032.                 'label' => 'Public area decoration',
  1033.                 'choices'  => [
  1034.                     // 'n/a' => '',
  1035.                     'Unacceptable' => '0',
  1036.                     'Poor' => '1',
  1037.                     'Quite Good' => '2',
  1038.                     'Good' => '3',
  1039.                     'Good to Very Good' => '3.5',
  1040.                     'Very Good' => '4',
  1041.                     'Very Good to Excellent' => '4.5',
  1042.                     'Excellent' => '5',
  1043.                 ],
  1044.                 'expanded' => true,
  1045.                 'multiple' => false,
  1046.                 'attr' => ['class' => 'form-check-inline'],
  1047.                 'required' => true,
  1048.             ])
  1049.             ->add('pfurniture'ChoiceType::class, [
  1050.                 'label' => 'Public area furniture, soft furnishings and fittings',
  1051.                 'choices'  => [
  1052.                     // 'n/a' => '',
  1053.                     'Unacceptable' => '0',
  1054.                     'Poor' => '1',
  1055.                     'Quite Good' => '2',
  1056.                     'Good' => '3',
  1057.                     'Good to Very Good' => '3.5',
  1058.                     'Very Good' => '4',
  1059.                     'Very Good to Excellent' => '4.5',
  1060.                     'Excellent' => '5',
  1061.                 ],
  1062.                 'expanded' => true,
  1063.                 'multiple' => false,
  1064.                 'attr' => ['class' => 'form-check-inline'],
  1065.                 'required' => true,
  1066.             ])
  1067.             ->add('pflooring'ChoiceType::class, [
  1068.                 'label' => 'Public area flooring',
  1069.                 'choices'  => [
  1070.                     // 'n/a' => '',
  1071.                     'Unacceptable' => '0',
  1072.                     'Poor' => '1',
  1073.                     'Quite Good' => '2',
  1074.                     'Good' => '3',
  1075.                     'Good to Very Good' => '3.5',
  1076.                     'Very Good' => '4',
  1077.                     'Very Good to Excellent' => '4.5',
  1078.                     'Excellent' => '5',
  1079.                 ],
  1080.                 'expanded' => true,
  1081.                 'multiple' => false,
  1082.                 'attr' => ['class' => 'form-check-inline'],
  1083.                 'required' => true,
  1084.             ])
  1085.             ->add('plighting'ChoiceType::class, [
  1086.                 'label' => 'Public area lighting, heating and ventilation',
  1087.                 'choices'  => [
  1088.                     // 'n/a' => '',
  1089.                     'Unacceptable' => '0',
  1090.                     'Poor' => '1',
  1091.                     'Quite Good' => '2',
  1092.                     'Good' => '3',
  1093.                     'Good to Very Good' => '3.5',
  1094.                     'Very Good' => '4',
  1095.                     'Very Good to Excellent' => '4.5',
  1096.                     'Excellent' => '5',
  1097.                 ],
  1098.                 'expanded' => true,
  1099.                 'multiple' => false,
  1100.                 'attr' => ['class' => 'form-check-inline'],
  1101.                 'required' => true,
  1102.             ])
  1103.             ->add('publicAreaScore'TextType::class, [
  1104.                 'label' => 'Public Area Score',
  1105.                 'required' => false,
  1106.                 'attr' => ['class' => 'col-2'],
  1107.                 'disabled' => true,
  1108.                 // 'scale' => 2,
  1109.             ])
  1110.             ->add(
  1111.                 $builder->create('group_publicarea_items'FormType::class, [
  1112.                     'label' => 'Public Area items',
  1113.                     'inherit_data' => true,
  1114.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  1115.                     'row_attr' => ['class' => 'mt-5'],
  1116.                     'required' => false,
  1117.                 ])
  1118.             )
  1119.             ->add('piflooring'ChoiceType::class, [
  1120.                 'label' => 'Public area flooring and rugs',
  1121.                 'choices'  => [
  1122.                     'n/a' => '',
  1123.                     'Unacceptable' => 'Unacceptable',
  1124.                     'Poor' => 'Poor',
  1125.                     'Quite Good' => 'Quite Good',
  1126.                     'Good' => 'Good',
  1127.                     'Good to Very Good' => 'Good to Very Good',
  1128.                     'Very Good' => 'Very Good',
  1129.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1130.                     'Excellent' => 'Excellent',
  1131.                 ],
  1132.                 'expanded' => true,
  1133.                 'multiple' => false,
  1134.                 'attr' => ['class' => 'form-check-inline'],
  1135.                 'required' => false,
  1136.             ])
  1137.             ->add('pseating'ChoiceType::class, [
  1138.                 'label' => 'Public area seating',
  1139.                 'choices'  => [
  1140.                     'n/a' => '',
  1141.                     'Unacceptable' => 'Unacceptable',
  1142.                     'Poor' => 'Poor',
  1143.                     'Quite Good' => 'Quite Good',
  1144.                     'Good' => 'Good',
  1145.                     'Good to Very Good' => 'Good to Very Good',
  1146.                     'Very Good' => 'Very Good',
  1147.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1148.                     'Excellent' => 'Excellent',
  1149.                 ],
  1150.                 'expanded' => true,
  1151.                 'multiple' => false,
  1152.                 'attr' => ['class' => 'form-check-inline'],
  1153.                 'required' => false,
  1154.             ])
  1155.             ->add('pcurtain'ChoiceType::class, [
  1156.                 'label' => 'Public area curtains and blinds',
  1157.                 'choices'  => [
  1158.                     'n/a' => '',
  1159.                     'Unacceptable' => 'Unacceptable',
  1160.                     'Poor' => 'Poor',
  1161.                     'Quite Good' => 'Quite Good',
  1162.                     'Good' => 'Good',
  1163.                     'Good to Very Good' => 'Good to Very Good',
  1164.                     'Very Good' => 'Very Good',
  1165.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1166.                     'Excellent' => 'Excellent',
  1167.                 ],
  1168.                 'expanded' => true,
  1169.                 'multiple' => false,
  1170.                 'attr' => ['class' => 'form-check-inline'],
  1171.                 'required' => false,
  1172.             ])
  1173.             ->add('pcoffeetable'ChoiceType::class, [
  1174.                 'label' => 'Public area coffee table',
  1175.                 'choices'  => [
  1176.                     'n/a' => '',
  1177.                     'Unacceptable' => 'Unacceptable',
  1178.                     'Poor' => 'Poor',
  1179.                     'Quite Good' => 'Quite Good',
  1180.                     'Good' => 'Good',
  1181.                     'Good to Very Good' => 'Good to Very Good',
  1182.                     'Very Good' => 'Very Good',
  1183.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1184.                     'Excellent' => 'Excellent',
  1185.                 ],
  1186.                 'expanded' => true,
  1187.                 'multiple' => false,
  1188.                 'attr' => ['class' => 'form-check-inline'],
  1189.                 'required' => false,
  1190.             ])
  1191.             ->add('plamp'ChoiceType::class, [
  1192.                 'label' => 'Public area lamps',
  1193.                 'choices'  => [
  1194.                     'n/a' => '',
  1195.                     'Unacceptable' => 'Unacceptable',
  1196.                     'Poor' => 'Poor',
  1197.                     'Quite Good' => 'Quite Good',
  1198.                     'Good' => 'Good',
  1199.                     'Good to Very Good' => 'Good to Very Good',
  1200.                     'Very Good' => 'Very Good',
  1201.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1202.                     'Excellent' => 'Excellent',
  1203.                 ],
  1204.                 'expanded' => true,
  1205.                 'multiple' => false,
  1206.                 'attr' => ['class' => 'form-check-inline'],
  1207.                 'required' => false,
  1208.             ])
  1209.             ->add('pdintable'ChoiceType::class, [
  1210.                 'label' => 'Public area dining table',
  1211.                 'choices'  => [
  1212.                     'n/a' => '',
  1213.                     'Unacceptable' => 'Unacceptable',
  1214.                     'Poor' => 'Poor',
  1215.                     'Quite Good' => 'Quite Good',
  1216.                     'Good' => 'Good',
  1217.                     'Good to Very Good' => 'Good to Very Good',
  1218.                     'Very Good' => 'Very Good',
  1219.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1220.                     'Excellent' => 'Excellent',
  1221.                 ],
  1222.                 'expanded' => true,
  1223.                 'multiple' => false,
  1224.                 'attr' => ['class' => 'form-check-inline'],
  1225.                 'required' => false,
  1226.             ])
  1227.             ->add('ptablemat'ChoiceType::class, [
  1228.                 'label' => 'Public area table mats',
  1229.                 'choices'  => [
  1230.                     'n/a' => '',
  1231.                     'Unacceptable' => 'Unacceptable',
  1232.                     'Poor' => 'Poor',
  1233.                     'Quite Good' => 'Quite Good',
  1234.                     'Good' => 'Good',
  1235.                     'Good to Very Good' => 'Good to Very Good',
  1236.                     'Very Good' => 'Very Good',
  1237.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1238.                     'Excellent' => 'Excellent',
  1239.                 ],
  1240.                 'expanded' => true,
  1241.                 'multiple' => false,
  1242.                 'attr' => ['class' => 'form-check-inline'],
  1243.                 'required' => false,
  1244.             ])
  1245.             ->add('pbin'ChoiceType::class, [
  1246.                 'label' => 'Public area fireproof waste bin',
  1247.                 'choices'  => [
  1248.                     'n/a' => '',
  1249.                     'Unacceptable' => 'Unacceptable',
  1250.                     'Poor' => 'Poor',
  1251.                     'Quite Good' => 'Quite Good',
  1252.                     'Good' => 'Good',
  1253.                     'Good to Very Good' => 'Good to Very Good',
  1254.                     'Very Good' => 'Very Good',
  1255.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1256.                     'Excellent' => 'Excellent',
  1257.                 ],
  1258.                 'expanded' => true,
  1259.                 'multiple' => false,
  1260.                 'attr' => ['class' => 'form-check-inline'],
  1261.                 'required' => false,
  1262.             ])
  1263.             ->add('pvaccum'ChoiceType::class, [
  1264.                 'label' => 'Public area vacuum',
  1265.                 'choices'  => [
  1266.                     'n/a' => '',
  1267.                     'Unacceptable' => 'Unacceptable',
  1268.                     'Poor' => 'Poor',
  1269.                     'Quite Good' => 'Quite Good',
  1270.                     'Good' => 'Good',
  1271.                     'Good to Very Good' => 'Good to Very Good',
  1272.                     'Very Good' => 'Very Good',
  1273.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1274.                     'Excellent' => 'Excellent',
  1275.                 ],
  1276.                 'expanded' => true,
  1277.                 'multiple' => false,
  1278.                 'attr' => ['class' => 'form-check-inline'],
  1279.                 'required' => false,
  1280.             ])
  1281.             ->add('ptv'ChoiceType::class, [
  1282.                 'label' => 'TV (Recommend Smart TV)',
  1283.                 'choices'  => [
  1284.                     'n/a' => '',
  1285.                     'Unacceptable' => 'Unacceptable',
  1286.                     'Poor' => 'Poor',
  1287.                     'Quite Good' => 'Quite Good',
  1288.                     'Good' => 'Good',
  1289.                     'Good to Very Good' => 'Good to Very Good',
  1290.                     'Very Good' => 'Very Good',
  1291.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1292.                     'Excellent' => 'Excellent',
  1293.                 ],
  1294.                 'expanded' => true,
  1295.                 'multiple' => false,
  1296.                 'attr' => ['class' => 'form-check-inline'],
  1297.                 'required' => false,
  1298.             ])
  1299.             ->add('pnotes'TextareaType::class, [
  1300.                 'label' => 'Public area notes and suggestions',
  1301.                 'required' => false,
  1302.             ])
  1303.             
  1304.             ->add('ppic1'FileType::class, [
  1305.                 'label' => 'Public area picture 1',
  1306.                 'required' => false,
  1307.                 'mapped' => false,
  1308.                 'show_preview' => true,
  1309.             ])
  1310.             ->add('ppic2'FileType::class, [
  1311.                 'label' => 'Public area picture 2',
  1312.                 'required' => false,
  1313.                 'mapped' => false,
  1314.                 'show_preview' => true,
  1315.             ])
  1316.             ->add('ppic3'FileType::class, [
  1317.                 'label' => 'Public area picture 3',
  1318.                 'required' => false,
  1319.                 'mapped' => false,
  1320.                 'show_preview' => true,
  1321.             ])            
  1322.             ->add('ppic4'FileType::class, [
  1323.                 'label' => 'Public area picture 4',
  1324.                 'required' => false,
  1325.                 'mapped' => false,
  1326.                 'show_preview' => true,
  1327.             ])
  1328.             ->add(
  1329.                 $builder->create('group_kitchen'FormType::class, [
  1330.                     'label' => 'Kitchen',
  1331.                     'inherit_data' => true,
  1332.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  1333.                     'row_attr' => ['class' => 'mt-5'],
  1334.                     'required' => false,
  1335.                 ])
  1336.             )
  1337.             ->add('kitdecor'ChoiceType::class, [
  1338.                 'label' => 'Kitchen decoration',
  1339.                 'choices'  => [
  1340.                     // 'n/a' => '',
  1341.                     'Unacceptable' => '0',
  1342.                     'Poor' => '1',
  1343.                     'Quite Good' => '2',
  1344.                     'Good' => '3',
  1345.                     'Good to Very Good' => '3.5',
  1346.                     'Very Good' => '4',
  1347.                     'Very Good to Excellent' => '4.5',
  1348.                     'Excellent' => '5',
  1349.                 ],
  1350.                 'expanded' => true,
  1351.                 'multiple' => false,
  1352.                 'attr' => ['class' => 'form-check-inline'],
  1353.                 'required' => true,
  1354.             ])
  1355.             ->add('kitfurniture'ChoiceType::class, [
  1356.                 'label' => 'Kitchen furniture, fittings and fitments',
  1357.                 'choices'  => [
  1358.                     // 'n/a' => '',
  1359.                     'Unacceptable' => '0',
  1360.                     'Poor' => '1',
  1361.                     'Quite Good' => '2',
  1362.                     'Good' => '3',
  1363.                     'Good to Very Good' => '3.5',
  1364.                     'Very Good' => '4',
  1365.                     'Very Good to Excellent' => '4.5',
  1366.                     'Excellent' => '5',
  1367.                 ],
  1368.                 'expanded' => true,
  1369.                 'multiple' => false,
  1370.                 'attr' => ['class' => 'form-check-inline'],
  1371.                 'required' => true,
  1372.             ])
  1373.             ->add('kitflooring'ChoiceType::class, [
  1374.                 'label' => 'Kitchen flooring',
  1375.                 'choices'  => [
  1376.                     // 'n/a' => '',
  1377.                     'Unacceptable' => '0',
  1378.                     'Poor' => '1',
  1379.                     'Quite Good' => '2',
  1380.                     'Good' => '3',
  1381.                     'Good to Very Good' => '3.5',
  1382.                     'Very Good' => '4',
  1383.                     'Very Good to Excellent' => '4.5',
  1384.                     'Excellent' => '5',
  1385.                 ],
  1386.                 'expanded' => true,
  1387.                 'multiple' => false,
  1388.                 'attr' => ['class' => 'form-check-inline'],
  1389.                 'required' => true,
  1390.             ])
  1391.             ->add('kitlighting'ChoiceType::class, [
  1392.                 'label' => 'Kitchen lighting, heating and ventilation',
  1393.                 'choices'  => [
  1394.                     // 'n/a' => '',
  1395.                     'Unacceptable' => '0',
  1396.                     'Poor' => '1',
  1397.                     'Quite Good' => '2',
  1398.                     'Good' => '3',
  1399.                     'Good to Very Good' => '3.5',
  1400.                     'Very Good' => '4',
  1401.                     'Very Good to Excellent' => '4.5',
  1402.                     'Excellent' => '5',
  1403.                 ],
  1404.                 'expanded' => true,
  1405.                 'multiple' => false,
  1406.                 'attr' => ['class' => 'form-check-inline'],
  1407.                 'required' => true,
  1408.             ])
  1409.             ->add('kitgas'ChoiceType::class, [
  1410.                 'label' => 'Kitchen electrical and gas equipment',
  1411.                 'choices'  => [
  1412.                     // 'n/a' => '',
  1413.                     'Unacceptable' => '0',
  1414.                     'Poor' => '1',
  1415.                     'Quite Good' => '2',
  1416.                     'Good' => '3',
  1417.                     'Good to Very Good' => '3.5',
  1418.                     'Very Good' => '4',
  1419.                     'Very Good to Excellent' => '4.5',
  1420.                     'Excellent' => '5',
  1421.                 ],
  1422.                 'expanded' => true,
  1423.                 'multiple' => false,
  1424.                 'attr' => ['class' => 'form-check-inline'],
  1425.                 'required' => true,
  1426.             ])
  1427.             ->add('kitequipment'ChoiceType::class, [
  1428.                 'label' => 'Kitchen crockery, cutlery and glassware',
  1429.                 'choices'  => [
  1430.                     // 'n/a' => '',
  1431.                     'Unacceptable' => '0',
  1432.                     'Poor' => '1',
  1433.                     'Quite Good' => '2',
  1434.                     'Good' => '3',
  1435.                     'Good to Very Good' => '3.5',
  1436.                     'Very Good' => '4',
  1437.                     'Very Good to Excellent' => '4.5',
  1438.                     'Excellent' => '5',
  1439.                 ],
  1440.                 'expanded' => true,
  1441.                 'multiple' => false,
  1442.                 'attr' => ['class' => 'form-check-inline'],
  1443.                 'required' => true,
  1444.             ])
  1445.             ->add('kitutensils'ChoiceType::class, [
  1446.                 'label' => 'Kitchen pots, pans and utensils',
  1447.                 'choices'  => [
  1448.                     // 'n/a' => '',
  1449.                     'Unacceptable' => '0',
  1450.                     'Poor' => '1',
  1451.                     'Quite Good' => '2',
  1452.                     'Good' => '3',
  1453.                     'Good to Very Good' => '3.5',
  1454.                     'Very Good' => '4',
  1455.                     'Very Good to Excellent' => '4.5',
  1456.                     'Excellent' => '5',
  1457.                 ],
  1458.                 'expanded' => true,
  1459.                 'multiple' => false,
  1460.                 'attr' => ['class' => 'form-check-inline'],
  1461.                 'required' => true,
  1462.             ])
  1463.             ->add('kitchenScore'TextType::class, [
  1464.                 'label' => 'Kitchen Score',
  1465.                 'required' => false,
  1466.                 'attr' => ['class' => 'col-2'],
  1467.                 'disabled' => true,
  1468.                 // 'scale' => 2,
  1469.             ])
  1470.             ->add(
  1471.                 $builder->create('group_kitchen_items'FormType::class, [
  1472.                     'label' => 'Kitchen items',
  1473.                     'inherit_data' => true,
  1474.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  1475.                     'row_attr' => ['class' => 'mt-5'],
  1476.                     'required' => false,
  1477.                 ])
  1478.             )
  1479.             ->add('kiticooker'ChoiceType::class, [
  1480.                 'label' => 'Kitchen cooker',
  1481.                 'choices'  => [
  1482.                     'n/a' => '',
  1483.                     'Unacceptable' => 'Unacceptable',
  1484.                     'Poor' => 'Poor',
  1485.                     'Quite Good' => 'Quite Good',
  1486.                     'Good' => 'Good',
  1487.                     'Good to Very Good' => 'Good to Very Good',
  1488.                     'Very Good' => 'Very Good',
  1489.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1490.                     'Excellent' => 'Excellent',
  1491.                 ],
  1492.                 'expanded' => true,
  1493.                 'multiple' => false,
  1494.                 'attr' => ['class' => 'form-check-inline'],
  1495.                 'required' => false,
  1496.             ])
  1497.             ->add('kitifreezer'ChoiceType::class, [
  1498.                 'label' => 'Kitchen fridge with ice box/separate fridge freezer',
  1499.                 'choices'  => [
  1500.                     'n/a' => '',
  1501.                     'Unacceptable' => 'Unacceptable',
  1502.                     'Poor' => 'Poor',
  1503.                     'Quite Good' => 'Quite Good',
  1504.                     'Good' => 'Good',
  1505.                     'Good to Very Good' => 'Good to Very Good',
  1506.                     'Very Good' => 'Very Good',
  1507.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1508.                     'Excellent' => 'Excellent',
  1509.                 ],
  1510.                 'expanded' => true,
  1511.                 'multiple' => false,
  1512.                 'attr' => ['class' => 'form-check-inline'],
  1513.                 'required' => false,
  1514.             ])
  1515.             ->add('kitwashmachine'ChoiceType::class, [
  1516.                 'label' => 'Kitchen washing machine',
  1517.                 'choices'  => [
  1518.                     'n/a' => '',
  1519.                     'Unacceptable' => 'Unacceptable',
  1520.                     'Poor' => 'Poor',
  1521.                     'Quite Good' => 'Quite Good',
  1522.                     'Good' => 'Good',
  1523.                     'Good to Very Good' => 'Good to Very Good',
  1524.                     'Very Good' => 'Very Good',
  1525.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1526.                     'Excellent' => 'Excellent',
  1527.                 ],
  1528.                 'expanded' => true,
  1529.                 'multiple' => false,
  1530.                 'attr' => ['class' => 'form-check-inline'],
  1531.                 'required' => false,
  1532.             ])
  1533.             ->add('kitdryer'ChoiceType::class, [
  1534.                 'label' => 'Kitchen tumble dryer or drying facilities',
  1535.                 'choices'  => [
  1536.                     'n/a' => '',
  1537.                     'Unacceptable' => 'Unacceptable',
  1538.                     'Poor' => 'Poor',
  1539.                     'Quite Good' => 'Quite Good',
  1540.                     'Good' => 'Good',
  1541.                     'Good to Very Good' => 'Good to Very Good',
  1542.                     'Very Good' => 'Very Good',
  1543.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1544.                     'Excellent' => 'Excellent',
  1545.                 ],
  1546.                 'expanded' => true,
  1547.                 'multiple' => false,
  1548.                 'attr' => ['class' => 'form-check-inline'],
  1549.                 'required' => false,
  1550.             ])
  1551.             ->add('kitiron'ChoiceType::class, [
  1552.                 'label' => 'Kitchen ironing board and iron',
  1553.                 'choices'  => [
  1554.                     'n/a' => '',
  1555.                     'Unacceptable' => 'Unacceptable',
  1556.                     'Poor' => 'Poor',
  1557.                     'Quite Good' => 'Quite Good',
  1558.                     'Good' => 'Good',
  1559.                     'Good to Very Good' => 'Good to Very Good',
  1560.                     'Very Good' => 'Very Good',
  1561.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1562.                     'Excellent' => 'Excellent',
  1563.                 ],
  1564.                 'expanded' => true,
  1565.                 'multiple' => false,
  1566.                 'attr' => ['class' => 'form-check-inline'],
  1567.                 'required' => false,
  1568.             ])
  1569.             ->add('kitwasher'ChoiceType::class, [
  1570.                 'label' => 'Kitchen dishwasher',
  1571.                 'choices'  => [
  1572.                     'n/a' => '',
  1573.                     'Unacceptable' => 'Unacceptable',
  1574.                     'Poor' => 'Poor',
  1575.                     'Quite Good' => 'Quite Good',
  1576.                     'Good' => 'Good',
  1577.                     'Good to Very Good' => 'Good to Very Good',
  1578.                     'Very Good' => 'Very Good',
  1579.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1580.                     'Excellent' => 'Excellent',
  1581.                 ],
  1582.                 'expanded' => true,
  1583.                 'multiple' => false,
  1584.                 'attr' => ['class' => 'form-check-inline'],
  1585.                 'required' => false,
  1586.             ])
  1587.             ->add('kitmicrowave'ChoiceType::class, [
  1588.                 'label' => 'Kitchen microwave',
  1589.                 'choices'  => [
  1590.                     'n/a' => '',
  1591.                     'Unacceptable' => 'Unacceptable',
  1592.                     'Poor' => 'Poor',
  1593.                     'Quite Good' => 'Quite Good',
  1594.                     'Good' => 'Good',
  1595.                     'Good to Very Good' => 'Good to Very Good',
  1596.                     'Very Good' => 'Very Good',
  1597.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1598.                     'Excellent' => 'Excellent',
  1599.                 ],
  1600.                 'expanded' => true,
  1601.                 'multiple' => false,
  1602.                 'attr' => ['class' => 'form-check-inline'],
  1603.                 'required' => false,
  1604.             ])
  1605.             ->add('kitkettle'ChoiceType::class, [
  1606.                 'label' => 'Kitchen kettle',
  1607.                 'choices'  => [
  1608.                     'n/a' => '',
  1609.                     'Unacceptable' => 'Unacceptable',
  1610.                     'Poor' => 'Poor',
  1611.                     'Quite Good' => 'Quite Good',
  1612.                     'Good' => 'Good',
  1613.                     'Good to Very Good' => 'Good to Very Good',
  1614.                     'Very Good' => 'Very Good',
  1615.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1616.                     'Excellent' => 'Excellent',
  1617.                 ],
  1618.                 'expanded' => true,
  1619.                 'multiple' => false,
  1620.                 'attr' => ['class' => 'form-check-inline'],
  1621.                 'required' => false,
  1622.             ])
  1623.             ->add('kittoaster'ChoiceType::class, [
  1624.                 'label' => 'Kitchen toaster',
  1625.                 'choices'  => [
  1626.                     'n/a' => '',
  1627.                     'Unacceptable' => 'Unacceptable',
  1628.                     'Poor' => 'Poor',
  1629.                     'Quite Good' => 'Quite Good',
  1630.                     'Good' => 'Good',
  1631.                     'Good to Very Good' => 'Good to Very Good',
  1632.                     'Very Good' => 'Very Good',
  1633.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1634.                     'Excellent' => 'Excellent',
  1635.                 ],
  1636.                 'expanded' => true,
  1637.                 'multiple' => false,
  1638.                 'attr' => ['class' => 'form-check-inline'],
  1639.                 'required' => false,
  1640.             ])
  1641.             ->add('kitsaucepan'ChoiceType::class, [
  1642.                 'label' => 'Kitchen saucepans',
  1643.                 'choices'  => [
  1644.                     'n/a' => '',
  1645.                     'Unacceptable' => 'Unacceptable',
  1646.                     'Poor' => 'Poor',
  1647.                     'Quite Good' => 'Quite Good',
  1648.                     'Good' => 'Good',
  1649.                     'Good to Very Good' => 'Good to Very Good',
  1650.                     'Very Good' => 'Very Good',
  1651.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1652.                     'Excellent' => 'Excellent',
  1653.                 ],
  1654.                 'expanded' => true,
  1655.                 'multiple' => false,
  1656.                 'attr' => ['class' => 'form-check-inline'],
  1657.                 'required' => false,
  1658.             ])
  1659.             ->add('kitfrypan'ChoiceType::class, [
  1660.                 'label' => 'Kitchen frying pans',
  1661.                 'choices'  => [
  1662.                     'n/a' => '',
  1663.                     'Unacceptable' => 'Unacceptable',
  1664.                     'Poor' => 'Poor',
  1665.                     'Quite Good' => 'Quite Good',
  1666.                     'Good' => 'Good',
  1667.                     'Good to Very Good' => 'Good to Very Good',
  1668.                     'Very Good' => 'Very Good',
  1669.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1670.                     'Excellent' => 'Excellent',
  1671.                 ],
  1672.                 'expanded' => true,
  1673.                 'multiple' => false,
  1674.                 'attr' => ['class' => 'form-check-inline'],
  1675.                 'required' => false,
  1676.             ])
  1677.             ->add('kitiutensils'ChoiceType::class, [
  1678.                 'label' => 'Kitchen utensils',
  1679.                 'choices'  => [
  1680.                     'n/a' => '',
  1681.                     'Unacceptable' => 'Unacceptable',
  1682.                     'Poor' => 'Poor',
  1683.                     'Quite Good' => 'Quite Good',
  1684.                     'Good' => 'Good',
  1685.                     'Good to Very Good' => 'Good to Very Good',
  1686.                     'Very Good' => 'Very Good',
  1687.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1688.                     'Excellent' => 'Excellent',
  1689.                 ],
  1690.                 'expanded' => true,
  1691.                 'multiple' => false,
  1692.                 'attr' => ['class' => 'form-check-inline'],
  1693.                 'required' => false,
  1694.             ])
  1695.             ->add('ktcookware'ChoiceType::class, [
  1696.                 'label' => 'Kitchen cookware (bowls etc)',
  1697.                 'choices'  => [
  1698.                     'n/a' => '',
  1699.                     'Unacceptable' => 'Unacceptable',
  1700.                     'Poor' => 'Poor',
  1701.                     'Quite Good' => 'Quite Good',
  1702.                     'Good' => 'Good',
  1703.                     'Good to Very Good' => 'Good to Very Good',
  1704.                     'Very Good' => 'Very Good',
  1705.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1706.                     'Excellent' => 'Excellent',
  1707.                 ],
  1708.                 'expanded' => true,
  1709.                 'multiple' => false,
  1710.                 'attr' => ['class' => 'form-check-inline'],
  1711.                 'required' => false,
  1712.             ])
  1713.             ->add('kitcutlery'ChoiceType::class, [
  1714.                 'label' => 'Kitchen cutlery',
  1715.                 'choices'  => [
  1716.                     'n/a' => '',
  1717.                     'Unacceptable' => 'Unacceptable',
  1718.                     'Poor' => 'Poor',
  1719.                     'Quite Good' => 'Quite Good',
  1720.                     'Good' => 'Good',
  1721.                     'Good to Very Good' => 'Good to Very Good',
  1722.                     'Very Good' => 'Very Good',
  1723.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1724.                     'Excellent' => 'Excellent',
  1725.                 ],
  1726.                 'expanded' => true,
  1727.                 'multiple' => false,
  1728.                 'attr' => ['class' => 'form-check-inline'],
  1729.                 'required' => false,
  1730.             ])
  1731.             ->add('kitcrockery'ChoiceType::class, [
  1732.                 'label' => 'Kitchen crockery',
  1733.                 'choices'  => [
  1734.                     'n/a' => '',
  1735.                     'Unacceptable' => 'Unacceptable',
  1736.                     'Poor' => 'Poor',
  1737.                     'Quite Good' => 'Quite Good',
  1738.                     'Good' => 'Good',
  1739.                     'Good to Very Good' => 'Good to Very Good',
  1740.                     'Very Good' => 'Very Good',
  1741.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1742.                     'Excellent' => 'Excellent',
  1743.                 ],
  1744.                 'expanded' => true,
  1745.                 'multiple' => false,
  1746.                 'attr' => ['class' => 'form-check-inline'],
  1747.                 'required' => false,
  1748.             ])
  1749.             ->add('kitglasses'ChoiceType::class, [
  1750.                 'label' => 'Kitchen glasses',
  1751.                 'choices'  => [
  1752.                     'n/a' => '',
  1753.                     'Unacceptable' => 'Unacceptable',
  1754.                     'Poor' => 'Poor',
  1755.                     'Quite Good' => 'Quite Good',
  1756.                     'Good' => 'Good',
  1757.                     'Good to Very Good' => 'Good to Very Good',
  1758.                     'Very Good' => 'Very Good',
  1759.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1760.                     'Excellent' => 'Excellent',
  1761.                 ],
  1762.                 'expanded' => true,
  1763.                 'multiple' => false,
  1764.                 'attr' => ['class' => 'form-check-inline'],
  1765.                 'required' => false,
  1766.             ])
  1767.             ->add('kitsaltandpepper'ChoiceType::class, [
  1768.                 'label' => 'Kitchen salt and pepper grinders/condiments',
  1769.                 'choices'  => [
  1770.                     'n/a' => '',
  1771.                     'Unacceptable' => 'Unacceptable',
  1772.                     'Poor' => 'Poor',
  1773.                     'Quite Good' => 'Quite Good',
  1774.                     'Good' => 'Good',
  1775.                     'Good to Very Good' => 'Good to Very Good',
  1776.                     'Very Good' => 'Very Good',
  1777.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1778.                     'Excellent' => 'Excellent',
  1779.                 ],
  1780.                 'expanded' => true,
  1781.                 'multiple' => false,
  1782.                 'attr' => ['class' => 'form-check-inline'],
  1783.                 'required' => false,
  1784.             ])
  1785.             ->add('kitwup'ChoiceType::class, [
  1786.                 'label' => 'Kitchen washing up bowl',
  1787.                 'choices'  => [
  1788.                     'n/a' => '',
  1789.                     'Unacceptable' => 'Unacceptable',
  1790.                     'Poor' => 'Poor',
  1791.                     'Quite Good' => 'Quite Good',
  1792.                     'Good' => 'Good',
  1793.                     'Good to Very Good' => 'Good to Very Good',
  1794.                     'Very Good' => 'Very Good',
  1795.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1796.                     'Excellent' => 'Excellent',
  1797.                 ],
  1798.                 'expanded' => true,
  1799.                 'multiple' => false,
  1800.                 'attr' => ['class' => 'form-check-inline'],
  1801.                 'required' => false,
  1802.             ])
  1803.             ->add('kitclean'ChoiceType::class, [
  1804.                 'label' => 'Kitchen cleaning materials',
  1805.                 'choices'  => [
  1806.                     'n/a' => '',
  1807.                     'Unacceptable' => 'Unacceptable',
  1808.                     'Poor' => 'Poor',
  1809.                     'Quite Good' => 'Quite Good',
  1810.                     'Good' => 'Good',
  1811.                     'Good to Very Good' => 'Good to Very Good',
  1812.                     'Very Good' => 'Very Good',
  1813.                     'Very Good to Excellent' => 'Very Good to Excellent',
  1814.                     'Excellent' => 'Excellent',
  1815.                 ],
  1816.                 'expanded' => true,
  1817.                 'multiple' => false,
  1818.                 'attr' => ['class' => 'form-check-inline'],
  1819.                 'required' => false,
  1820.             ])
  1821.             ->add('kitnotes'TextareaType::class, [
  1822.                 'label' => 'Kitchen notes and suggestions',
  1823.                 'required' => false,
  1824.             ])
  1825.             
  1826.             ->add('kitpic1'FileType::class, [
  1827.                 'label' => 'Kitchen picture 1',
  1828.                 'required' => false,
  1829.                 'mapped' => false,
  1830.                 'show_preview' => true,
  1831.             ])
  1832.             ->add('kitpci2'FileType::class, [
  1833.                 'label' => 'Kitchen picture 2',
  1834.                 'required' => false,
  1835.                 'mapped' => false,
  1836.                 'show_preview' => true,
  1837.             ])
  1838.             ->add('kitpic3'FileType::class, [
  1839.                 'label' => 'Kitchen picture 3',
  1840.                 'required' => false,
  1841.                 'mapped' => false,
  1842.                 'show_preview' => true,
  1843.             ])
  1844.             ->add('kitpic4'FileType::class, [
  1845.                 'label' => 'Kitchen picture 4',
  1846.                 'required' => false,
  1847.                 'mapped' => false,
  1848.                 'show_preview' => true,
  1849.             ])
  1850.             ->add(
  1851.                 $builder->create('group_bedroom'FormType::class, [
  1852.                     'label' => 'Bedroom',
  1853.                     'inherit_data' => true,
  1854.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  1855.                     'row_attr' => ['class' => 'mt-5'],
  1856.                     'required' => false,
  1857.                 ])
  1858.             )
  1859.                 ->add('bedroom'CollectionType::class, [
  1860.                     'label' => false,
  1861.                     'entry_type' => BedroomType::class,
  1862.                     'allow_add' => true,
  1863.                     'prototype' => true,
  1864.                     'required' => true,
  1865.                     'row_attr' => ['class' => 'foldable'],
  1866.                 ])
  1867.                 // ->add('beddecor', ChoiceType::class, [
  1868.                 //     'label' => 'Bedroom decoration',
  1869.                 //     'choices'  => [
  1870.                 //         'n/a' => '',
  1871.                 //         'Unacceptable' => '0',
  1872.                 //         'Poor' => '1',
  1873.                 //         'Quite Good' => '2',
  1874.                 //         'Good' => '3',
  1875.                 //         'Good to Very Good' => '3.5',
  1876.                 //         'Very Good' => '4',
  1877.                 //         'Very Good to Excellent' => '4.5',
  1878.                 //         'Excellent' => '5',
  1879.                 //     ],
  1880.                 //     'expanded' => true,
  1881.                 //     'multiple' => false,
  1882.                 //     'attr' => ['class' => 'form-check-inline'],
  1883.                 //     'required' => false,
  1884.                 // ])
  1885.                 // ->add('bedfurniture', ChoiceType::class, [
  1886.                 //     'label' => 'Bedroom furniture, fittings and soft furnishings',
  1887.                 //     'choices'  => [
  1888.                 //         'n/a' => '',
  1889.                 //         'Unacceptable' => '0',
  1890.                 //         'Poor' => '1',
  1891.                 //         'Quite Good' => '2',
  1892.                 //         'Good' => '3',
  1893.                 //         'Good to Very Good' => '3.5',
  1894.                 //         'Very Good' => '4',
  1895.                 //         'Very Good to Excellent' => '4.5',
  1896.                 //         'Excellent' => '5',
  1897.                 //     ],
  1898.                 //     'expanded' => true,
  1899.                 //     'multiple' => false,
  1900.                 //     'attr' => ['class' => 'form-check-inline'],
  1901.                 //     'required' => false,
  1902.                 // ])
  1903.                 // ->add('bedflooring', ChoiceType::class, [
  1904.                 //     'label' => 'Bedroom flooring',
  1905.                 //     'choices'  => [
  1906.                 //         'n/a' => '',
  1907.                 //         'Unacceptable' => '0',
  1908.                 //         'Poor' => '1',
  1909.                 //         'Quite Good' => '2',
  1910.                 //         'Good' => '3',
  1911.                 //         'Good to Very Good' => '3.5',
  1912.                 //         'Very Good' => '4',
  1913.                 //         'Very Good to Excellent' => '4.5',
  1914.                 //         'Excellent' => '5',
  1915.                 //     ],
  1916.                 //     'expanded' => true,
  1917.                 //     'multiple' => false,
  1918.                 //     'attr' => ['class' => 'form-check-inline'],
  1919.                 //     'required' => false,
  1920.                 // ])
  1921.                 // ->add('bedlight', ChoiceType::class, [
  1922.                 //     'label' => 'Bedroom lighting, heating and ventilation',
  1923.                 //     'choices'  => [
  1924.                 //         'n/a' => '',
  1925.                 //         'Unacceptable' => '0',
  1926.                 //         'Poor' => '1',
  1927.                 //         'Quite Good' => '2',
  1928.                 //         'Good' => '3',
  1929.                 //         'Good to Very Good' => '3.5',
  1930.                 //         'Very Good' => '4',
  1931.                 //         'Very Good to Excellent' => '4.5',
  1932.                 //         'Excellent' => '5',
  1933.                 //     ],
  1934.                 //     'expanded' => true,
  1935.                 //     'multiple' => false,
  1936.                 //     'attr' => ['class' => 'form-check-inline'],
  1937.                 //     'required' => false,
  1938.                 // ])
  1939.                 // ->add('bedbeds', ChoiceType::class, [
  1940.                 //     'label' => 'Bedroom beds and headboards',
  1941.                 //     'choices'  => [
  1942.                 //         'n/a' => '',
  1943.                 //         'Unacceptable' => '0',
  1944.                 //         'Poor' => '1',
  1945.                 //         'Quite Good' => '2',
  1946.                 //         'Good' => '3',
  1947.                 //         'Good to Very Good' => '3.5',
  1948.                 //         'Very Good' => '4',
  1949.                 //         'Very Good to Excellent' => '4.5',
  1950.                 //         'Excellent' => '5',
  1951.                 //     ],
  1952.                 //     'expanded' => true,
  1953.                 //     'multiple' => false,
  1954.                 //     'attr' => ['class' => 'form-check-inline'],
  1955.                 //     'required' => false,
  1956.                 // ])
  1957.                 // ->add('bedbedding', ChoiceType::class, [
  1958.                 //     'label' => 'Bedroom bedding, bed linen and towels',
  1959.                 //     'choices'  => [
  1960.                 //         'n/a' => '',
  1961.                 //         'Unacceptable' => '0',
  1962.                 //         'Poor' => '1',
  1963.                 //         'Quite Good' => '2',
  1964.                 //         'Good' => '3',
  1965.                 //         'Good to Very Good' => '3.5',
  1966.                 //         'Very Good' => '4',
  1967.                 //         'Very Good to Excellent' => '4.5',
  1968.                 //         'Excellent' => '5',
  1969.                 //     ],
  1970.                 //     'expanded' => true,
  1971.                 //     'multiple' => false,
  1972.                 //     'attr' => ['class' => 'form-check-inline'],
  1973.                 //     'required' => false,
  1974.                 // ])
  1975.                 // ->add('bediflooring', ChoiceType::class, [
  1976.                 //     'label' => 'Bedroom flooring and rugs',
  1977.                 //     'choices'  => [
  1978.                 //         'n/a' => '',
  1979.                 //         'Unacceptable' => 'Unacceptable',
  1980.                 //         'Poor' => 'Poor',
  1981.                 //         'Quite Good' => 'Quite Good',
  1982.                 //         'Good' => 'Good',
  1983.                 //         'Good to Very Good' => 'Good to Very Good',
  1984.                 //         'Very Good' => 'Very Good',
  1985.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  1986.                 //         'Excellent' => 'Excellent',
  1987.                 //     ],
  1988.                 //     'expanded' => true,
  1989.                 //     'multiple' => false,
  1990.                 //     'attr' => ['class' => 'form-check-inline'],
  1991.                 //     'required' => false,
  1992.                 // ])
  1993.                 // ->add('bedcurtain', ChoiceType::class, [
  1994.                 //     'label' => 'Bedroom curtains and blinds',
  1995.                 //     'choices'  => [
  1996.                 //         'n/a' => '',
  1997.                 //         'Unacceptable' => 'Unacceptable',
  1998.                 //         'Poor' => 'Poor',
  1999.                 //         'Quite Good' => 'Quite Good',
  2000.                 //         'Good' => 'Good',
  2001.                 //         'Good to Very Good' => 'Good to Very Good',
  2002.                 //         'Very Good' => 'Very Good',
  2003.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2004.                 //         'Excellent' => 'Excellent',
  2005.                 //     ],
  2006.                 //     'expanded' => true,
  2007.                 //     'multiple' => false,
  2008.                 //     'attr' => ['class' => 'form-check-inline'],
  2009.                 //     'required' => false,
  2010.                 // ])
  2011.                 // ->add('bedheadboard', ChoiceType::class, [
  2012.                 //     'label' => 'Bedroom headboards',
  2013.                 //     'choices'  => [
  2014.                 //         'n/a' => '',
  2015.                 //         'Unacceptable' => 'Unacceptable',
  2016.                 //         'Poor' => 'Poor',
  2017.                 //         'Quite Good' => 'Quite Good',
  2018.                 //         'Good' => 'Good',
  2019.                 //         'Good to Very Good' => 'Good to Very Good',
  2020.                 //         'Very Good' => 'Very Good',
  2021.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2022.                 //         'Excellent' => 'Excellent',
  2023.                 //     ],
  2024.                 //     'expanded' => true,
  2025.                 //     'multiple' => false,
  2026.                 //     'attr' => ['class' => 'form-check-inline'],
  2027.                 //     'required' => false,
  2028.                 // ])
  2029.                 // ->add('bedmatress', ChoiceType::class, [
  2030.                 //     'label' => 'Bedroom mattreses',
  2031.                 //     'choices'  => [
  2032.                 //         'n/a' => '',
  2033.                 //         'Unacceptable' => 'Unacceptable',
  2034.                 //         'Poor' => 'Poor',
  2035.                 //         'Quite Good' => 'Quite Good',
  2036.                 //         'Good' => 'Good',
  2037.                 //         'Good to Very Good' => 'Good to Very Good',
  2038.                 //         'Very Good' => 'Very Good',
  2039.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2040.                 //         'Excellent' => 'Excellent',
  2041.                 //     ],
  2042.                 //     'expanded' => true,
  2043.                 //     'multiple' => false,
  2044.                 //     'attr' => ['class' => 'form-check-inline'],
  2045.                 //     'required' => false,
  2046.                 // ])
  2047.                 // ->add('bedmatressp', ChoiceType::class, [
  2048.                 //     'label' => 'Bedroom mattress protectors',
  2049.                 //     'choices'  => [
  2050.                 //         'n/a' => '',
  2051.                 //         'Unacceptable' => 'Unacceptable',
  2052.                 //         'Poor' => 'Poor',
  2053.                 //         'Quite Good' => 'Quite Good',
  2054.                 //         'Good' => 'Good',
  2055.                 //         'Good to Very Good' => 'Good to Very Good',
  2056.                 //         'Very Good' => 'Very Good',
  2057.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2058.                 //         'Excellent' => 'Excellent',
  2059.                 //     ],
  2060.                 //     'expanded' => true,
  2061.                 //     'multiple' => false,
  2062.                 //     'attr' => ['class' => 'form-check-inline'],
  2063.                 //     'required' => false,
  2064.                 // ])
  2065.                 // ->add('bedduvet', ChoiceType::class, [
  2066.                 //     'label' => 'Bedroom duvet/blankets',
  2067.                 //     'choices'  => [
  2068.                 //         'n/a' => '',
  2069.                 //         'Unacceptable' => 'Unacceptable',
  2070.                 //         'Poor' => 'Poor',
  2071.                 //         'Quite Good' => 'Quite Good',
  2072.                 //         'Good' => 'Good',
  2073.                 //         'Good to Very Good' => 'Good to Very Good',
  2074.                 //         'Very Good' => 'Very Good',
  2075.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2076.                 //         'Excellent' => 'Excellent',
  2077.                 //     ],
  2078.                 //     'expanded' => true,
  2079.                 //     'multiple' => false,
  2080.                 //     'attr' => ['class' => 'form-check-inline'],
  2081.                 //     'required' => false,
  2082.                 // ])
  2083.                 // ->add('bedvalances', ChoiceType::class, [
  2084.                 //     'label' => 'Bedroom valances',
  2085.                 //     'choices'  => [
  2086.                 //         'n/a' => '',
  2087.                 //         'Unacceptable' => 'Unacceptable',
  2088.                 //         'Poor' => 'Poor',
  2089.                 //         'Quite Good' => 'Quite Good',
  2090.                 //         'Good' => 'Good',
  2091.                 //         'Good to Very Good' => 'Good to Very Good',
  2092.                 //         'Very Good' => 'Very Good',
  2093.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2094.                 //         'Excellent' => 'Excellent',
  2095.                 //     ],
  2096.                 //     'expanded' => true,
  2097.                 //     'multiple' => false,
  2098.                 //     'attr' => ['class' => 'form-check-inline'],
  2099.                 //     'required' => false,
  2100.                 // ])
  2101.                 // ->add('bedpillow', ChoiceType::class, [
  2102.                 //     'label' => 'Bedroom pillows',
  2103.                 //     'choices'  => [
  2104.                 //         'n/a' => '',
  2105.                 //         'Unacceptable' => 'Unacceptable',
  2106.                 //         'Poor' => 'Poor',
  2107.                 //         'Quite Good' => 'Quite Good',
  2108.                 //         'Good' => 'Good',
  2109.                 //         'Good to Very Good' => 'Good to Very Good',
  2110.                 //         'Very Good' => 'Very Good',
  2111.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2112.                 //         'Excellent' => 'Excellent',
  2113.                 //     ],
  2114.                 //     'expanded' => true,
  2115.                 //     'multiple' => false,
  2116.                 //     'attr' => ['class' => 'form-check-inline'],
  2117.                 //     'required' => false,
  2118.                 // ])
  2119.                 // ->add('bedpillowslips', ChoiceType::class, [
  2120.                 //     'label' => 'Bedroom pillowslips',
  2121.                 //     'choices'  => [
  2122.                 //         'n/a' => '',
  2123.                 //         'Unacceptable' => 'Unacceptable',
  2124.                 //         'Poor' => 'Poor',
  2125.                 //         'Quite Good' => 'Quite Good',
  2126.                 //         'Good' => 'Good',
  2127.                 //         'Good to Very Good' => 'Good to Very Good',
  2128.                 //         'Very Good' => 'Very Good',
  2129.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2130.                 //         'Excellent' => 'Excellent',
  2131.                 //     ],
  2132.                 //     'expanded' => true,
  2133.                 //     'multiple' => false,
  2134.                 //     'attr' => ['class' => 'form-check-inline'],
  2135.                 //     'required' => false,
  2136.                 // ])
  2137.                 // ->add('bedbstable', ChoiceType::class, [
  2138.                 //     'label' => 'Bedroom bedside tables/lamps',
  2139.                 //     'choices'  => [
  2140.                 //         'n/a' => '',
  2141.                 //         'Unacceptable' => 'Unacceptable',
  2142.                 //         'Poor' => 'Poor',
  2143.                 //         'Quite Good' => 'Quite Good',
  2144.                 //         'Good' => 'Good',
  2145.                 //         'Good to Very Good' => 'Good to Very Good',
  2146.                 //         'Very Good' => 'Very Good',
  2147.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2148.                 //         'Excellent' => 'Excellent',
  2149.                 //     ],
  2150.                 //     'expanded' => true,
  2151.                 //     'multiple' => false,
  2152.                 //     'attr' => ['class' => 'form-check-inline'],
  2153.                 //     'required' => false,
  2154.                 // ])
  2155.                 // ->add('bedwardrobe', ChoiceType::class, [
  2156.                 //     'label' => 'Bedroom wardrobes/hanging space',
  2157.                 //     'choices'  => [
  2158.                 //         'n/a' => '',
  2159.                 //         'Unacceptable' => 'Unacceptable',
  2160.                 //         'Poor' => 'Poor',
  2161.                 //         'Quite Good' => 'Quite Good',
  2162.                 //         'Good' => 'Good',
  2163.                 //         'Good to Very Good' => 'Good to Very Good',
  2164.                 //         'Very Good' => 'Very Good',
  2165.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2166.                 //         'Excellent' => 'Excellent',
  2167.                 //     ],
  2168.                 //     'expanded' => true,
  2169.                 //     'multiple' => false,
  2170.                 //     'attr' => ['class' => 'form-check-inline'],
  2171.                 //     'required' => false,
  2172.                 // ])
  2173.                 // ->add('bedhanger', ChoiceType::class, [
  2174.                 //     'label' => 'Bedroom hangers',
  2175.                 //     'choices'  => [
  2176.                 //         'n/a' => '',
  2177.                 //         'Unacceptable' => 'Unacceptable',
  2178.                 //         'Poor' => 'Poor',
  2179.                 //         'Quite Good' => 'Quite Good',
  2180.                 //         'Good' => 'Good',
  2181.                 //         'Good to Very Good' => 'Good to Very Good',
  2182.                 //         'Very Good' => 'Very Good',
  2183.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2184.                 //         'Excellent' => 'Excellent',
  2185.                 //     ],
  2186.                 //     'expanded' => true,
  2187.                 //     'multiple' => false,
  2188.                 //     'attr' => ['class' => 'form-check-inline'],
  2189.                 //     'required' => false,
  2190.                 // ])
  2191.                 // ->add('bedmirror', ChoiceType::class, [
  2192.                 //     'label' => 'Bedroom mirrors',
  2193.                 //     'choices'  => [
  2194.                 //         'n/a' => '',
  2195.                 //         'Unacceptable' => 'Unacceptable',
  2196.                 //         'Poor' => 'Poor',
  2197.                 //         'Quite Good' => 'Quite Good',
  2198.                 //         'Good' => 'Good',
  2199.                 //         'Good to Very Good' => 'Good to Very Good',
  2200.                 //         'Very Good' => 'Very Good',
  2201.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2202.                 //         'Excellent' => 'Excellent',
  2203.                 //     ],
  2204.                 //     'expanded' => true,
  2205.                 //     'multiple' => false,
  2206.                 //     'attr' => ['class' => 'form-check-inline'],
  2207.                 //     'required' => false,
  2208.                 // ])
  2209.                 // ->add('bedbin', ChoiceType::class, [
  2210.                 //     'label' => 'Bedroom waste bins',
  2211.                 //     'choices'  => [
  2212.                 //         'n/a' => '',
  2213.                 //         'Unacceptable' => 'Unacceptable',
  2214.                 //         'Poor' => 'Poor',
  2215.                 //         'Quite Good' => 'Quite Good',
  2216.                 //         'Good' => 'Good',
  2217.                 //         'Good to Very Good' => 'Good to Very Good',
  2218.                 //         'Very Good' => 'Very Good',
  2219.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2220.                 //         'Excellent' => 'Excellent',
  2221.                 //     ],
  2222.                 //     'expanded' => true,
  2223.                 //     'multiple' => false,
  2224.                 //     'attr' => ['class' => 'form-check-inline'],
  2225.                 //     'required' => false,
  2226.                 // ])
  2227.                 // ->add('bednotes', TextareaType::class, [
  2228.                 //     'label' => 'Bedroom note and suggestions',
  2229.                 //     'required' => false
  2230.                 // ])
  2231.             
  2232.             ->add(
  2233.                 $builder->create('group_bedroom_notes'FormType::class, [
  2234.                     'label' => 'Bedroom notes',
  2235.                     'inherit_data' => true,
  2236.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  2237.                     'row_attr' => ['class' => 'mt-5'],
  2238.                     'required' => false,
  2239.                 ])
  2240.             )
  2241.             
  2242.             ->add('bedroomScore'TextType::class, [
  2243.                 'label' => 'Bedroom Score',
  2244.                 'required' => false,
  2245.                 'attr' => ['class' => 'col-2'],
  2246.                 'disabled' => true,
  2247.                 // 'scale' => 2,
  2248.             ])
  2249.             ->add('bedpic1'FileType::class, [
  2250.                 'label' => 'Bedroom picture 1',
  2251.                 'required' => false,
  2252.                 'mapped' => false,
  2253.                 'show_preview' => true,
  2254.             ])
  2255.             ->add('bedpic2'FileType::class, [
  2256.                 'label' => 'Bedroom picture 2',
  2257.                 'required' => false,
  2258.                 'mapped' => false,
  2259.                 'show_preview' => true,
  2260.             ])
  2261.             ->add('bedpic3'FileType::class, [
  2262.                 'label' => 'Bedroom picture 3',
  2263.                 'required' => false,
  2264.                 'mapped' => false,
  2265.                 'show_preview' => true,
  2266.             ])
  2267.             ->add('bedpic4'FileType::class, [
  2268.                 'label' => 'Bedroom picture 4',
  2269.                 'required' => false,
  2270.                 'mapped' => false,
  2271.                 'show_preview' => true,
  2272.             ])
  2273.             ->add(
  2274.                 $builder->create('group_bathroom'FormType::class, [
  2275.                     'label' => 'Bathroom',
  2276.                     'inherit_data' => true,
  2277.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  2278.                     'row_attr' => ['class' => 'mt-5'],
  2279.                     'required' => false,
  2280.                 ])
  2281.             )
  2282.             ->add('bathroom'CollectionType::class, [
  2283.                 'label' => false,
  2284.                 'entry_type' => BathroomType::class,
  2285.                 'allow_add' => true,
  2286.                 'prototype' => true,
  2287.                 'required' => true,
  2288.                 'row_attr' => ['class' => 'foldable'],
  2289.                 ])
  2290.                 // ->add('bathdecor', ChoiceType::class, [
  2291.                 //     'label' => 'Bathroom decoration',
  2292.                 //     'choices'  => [
  2293.                 //         'n/a' => '',
  2294.                 //         'Unacceptable' => '0',
  2295.                 //         'Poor' => '1',
  2296.                 //         'Quite Good' => '2',
  2297.                 //         'Good' => '3',
  2298.                 //         'Good to Very Good' => '3.5',
  2299.                 //         'Very Good' => '4',
  2300.                 //         'Very Good to Excellent' => '4.5',
  2301.                 //         'Excellent' => '5',
  2302.                 //     ],
  2303.                 //     'expanded' => true,
  2304.                 //     'multiple' => false,
  2305.                 //     'attr' => ['class' => 'form-check-inline'],
  2306.                 //     'required' => false,
  2307.                 // ])
  2308.                 // ->add('bathfurniture', ChoiceType::class, [
  2309.                 //     'label' => 'Bathroom furniture, fittings and sanitaryware',
  2310.                 //     'choices'  => [
  2311.                 //         'n/a' => '',
  2312.                 //         'Unacceptable' => '0',
  2313.                 //         'Poor' => '1',
  2314.                 //         'Quite Good' => '2',
  2315.                 //         'Good' => '3',
  2316.                 //         'Good to Very Good' => '3.5',
  2317.                 //         'Very Good' => '4',
  2318.                 //         'Very Good to Excellent' => '4.5',
  2319.                 //         'Excellent' => '5',
  2320.                 //     ],
  2321.                 //     'expanded' => true,
  2322.                 //     'multiple' => false,
  2323.                 //     'attr' => ['class' => 'form-check-inline'],
  2324.                 //     'required' => false,
  2325.                 // ])
  2326.                 // ->add('bathflooring', ChoiceType::class, [
  2327.                 //     'label' => 'Bathroom flooring',
  2328.                 //     'choices'  => [
  2329.                 //         'n/a' => '',
  2330.                 //         'Unacceptable' => '0',
  2331.                 //         'Poor' => '1',
  2332.                 //         'Quite Good' => '2',
  2333.                 //         'Good' => '3',
  2334.                 //         'Good to Very Good' => '3.5',
  2335.                 //         'Very Good' => '4',
  2336.                 //         'Very Good to Excellent' => '4.5',
  2337.                 //         'Excellent' => '5',
  2338.                 //     ],
  2339.                 //     'expanded' => true,
  2340.                 //     'multiple' => false,
  2341.                 //     'attr' => ['class' => 'form-check-inline'],
  2342.                 //     'required' => false,
  2343.                 // ])
  2344.                 // ->add('bathlighting', ChoiceType::class, [
  2345.                 //     'label' => 'Bathroom lighting, heating and ventilation',
  2346.                 //     'choices'  => [
  2347.                 //         'n/a' => '',
  2348.                 //         'Unacceptable' => '0',
  2349.                 //         'Poor' => '1',
  2350.                 //         'Quite Good' => '2',
  2351.                 //         'Good' => '3',
  2352.                 //         'Good to Very Good' => '3.5',
  2353.                 //         'Very Good' => '4',
  2354.                 //         'Very Good to Excellent' => '4.5',
  2355.                 //         'Excellent' => '5',
  2356.                 //     ],
  2357.                 //     'expanded' => true,
  2358.                 //     'multiple' => false,
  2359.                 //     'attr' => ['class' => 'form-check-inline'],
  2360.                 //     'required' => false,
  2361.                 // ])
  2362.                 // ->add('bathbrush', ChoiceType::class, [
  2363.                 //     'label' => 'Bathroom toilet brush',
  2364.                 //     'choices'  => [
  2365.                 //         'n/a' => '',
  2366.                 //         'Unacceptable' => 'Unacceptable',
  2367.                 //         'Poor' => 'Poor',
  2368.                 //         'Quite Good' => 'Quite Good',
  2369.                 //         'Good' => 'Good',
  2370.                 //         'Good to Very Good' => 'Good to Very Good',
  2371.                 //         'Very Good' => 'Very Good',
  2372.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2373.                 //         'Excellent' => 'Excellent',
  2374.                 //     ],
  2375.                 //     'expanded' => true,
  2376.                 //     'multiple' => false,
  2377.                 //     'attr' => ['class' => 'form-check-inline'],
  2378.                 //     'required' => false,
  2379.                 // ])
  2380.                 // ->add('bathmirror', ChoiceType::class, [
  2381.                 //     'label' => 'Bathroom mirror',
  2382.                 //     'choices'  => [
  2383.                 //         'n/a' => '',
  2384.                 //         'Unacceptable' => 'Unacceptable',
  2385.                 //         'Poor' => 'Poor',
  2386.                 //         'Quite Good' => 'Quite Good',
  2387.                 //         'Good' => 'Good',
  2388.                 //         'Good to Very Good' => 'Good to Very Good',
  2389.                 //         'Very Good' => 'Very Good',
  2390.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2391.                 //         'Excellent' => 'Excellent',
  2392.                 //     ],
  2393.                 //     'expanded' => true,
  2394.                 //     'multiple' => false,
  2395.                 //     'attr' => ['class' => 'form-check-inline'],
  2396.                 //     'required' => false,
  2397.                 // ])
  2398.                 // ->add('bathshave', ChoiceType::class, [
  2399.                 //     'label' => 'Bathroom shaver point',
  2400.                 //     'choices'  => [
  2401.                 //         'n/a' => '',
  2402.                 //         'Unacceptable' => 'Unacceptable',
  2403.                 //         'Poor' => 'Poor',
  2404.                 //         'Quite Good' => 'Quite Good',
  2405.                 //         'Good' => 'Good',
  2406.                 //         'Good to Very Good' => 'Good to Very Good',
  2407.                 //         'Very Good' => 'Very Good',
  2408.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2409.                 //         'Excellent' => 'Excellent',
  2410.                 //     ],
  2411.                 //     'expanded' => true,
  2412.                 //     'multiple' => false,
  2413.                 //     'attr' => ['class' => 'form-check-inline'],
  2414.                 //     'required' => false,
  2415.                 // ])
  2416.                 // ->add('bathmat', ChoiceType::class, [
  2417.                 //     'label' => 'Bathroom bath/loo mats',
  2418.                 //     'choices'  => [
  2419.                 //         'n/a' => '',
  2420.                 //         'Unacceptable' => 'Unacceptable',
  2421.                 //         'Poor' => 'Poor',
  2422.                 //         'Quite Good' => 'Quite Good',
  2423.                 //         'Good' => 'Good',
  2424.                 //         'Good to Very Good' => 'Good to Very Good',
  2425.                 //         'Very Good' => 'Very Good',
  2426.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2427.                 //         'Excellent' => 'Excellent',
  2428.                 //     ],
  2429.                 //     'expanded' => true,
  2430.                 //     'multiple' => false,
  2431.                 //     'attr' => ['class' => 'form-check-inline'],
  2432.                 //     'required' => false,
  2433.                 // ])
  2434.                 // ->add('bathbin', ChoiceType::class, [
  2435.                 //     'label' => 'Bathroom waste bins',
  2436.                 //     'choices'  => [
  2437.                 //         'n/a' => '',
  2438.                 //         'Unacceptable' => 'Unacceptable',
  2439.                 //         'Poor' => 'Poor',
  2440.                 //         'Quite Good' => 'Quite Good',
  2441.                 //         'Good' => 'Good',
  2442.                 //         'Good to Very Good' => 'Good to Very Good',
  2443.                 //         'Very Good' => 'Very Good',
  2444.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2445.                 //         'Excellent' => 'Excellent',
  2446.                 //     ],
  2447.                 //     'expanded' => true,
  2448.                 //     'multiple' => false,
  2449.                 //     'attr' => ['class' => 'form-check-inline'],
  2450.                 //     'required' => false,
  2451.                 // ])
  2452.                 // ->add('bathtowelrack', ChoiceType::class, [
  2453.                 //     'label' => 'Bathroom towel rail',
  2454.                 //     'choices'  => [
  2455.                 //         'n/a' => '',
  2456.                 //         'Unacceptable' => 'Unacceptable',
  2457.                 //         'Poor' => 'Poor',
  2458.                 //         'Quite Good' => 'Quite Good',
  2459.                 //         'Good' => 'Good',
  2460.                 //         'Good to Very Good' => 'Good to Very Good',
  2461.                 //         'Very Good' => 'Very Good',
  2462.                 //         'Very Good to Excellent' => 'Very Good to Excellent',
  2463.                 //         'Excellent' => 'Excellent',
  2464.                 //     ],
  2465.                 //     'expanded' => true,
  2466.                 //     'multiple' => false,
  2467.                 //     'attr' => ['class' => 'form-check-inline'],
  2468.                 //     'required' => false,
  2469.                 // ])
  2470.                 // ->add('bathnotes', TextareaType::class, [
  2471.                 //     'label' => 'Bathroom notes and suggestions',
  2472.                 //     'required' => false,
  2473.                 // ])
  2474.             
  2475.             // ->add(
  2476.             //     $builder->create('group_fsvi', FormType::class, [
  2477.             //         'label' => 'Shower head',
  2478.             //         'inherit_data' => true,
  2479.             //         'label_attr' => ['class' => 'font-weight-bold group-heading'],
  2480.             //         'row_attr' => ['class' => 'mt-5'],
  2481.             //         'required' => false,
  2482.             //     ])
  2483.             // )
  2484.             // ->add('fsvi', ChoiceType::class, [
  2485.             //     'label' => 'Shower head visual inspection',
  2486.             //     'choices' => [
  2487.             //         'n/a' => '',
  2488.             //         'Yes' => 'Yes',
  2489.             //         'No' => 'No',
  2490.             //         'Not tested' => 'Not tested'
  2491.             //     ],
  2492.             //     'expanded' => true,
  2493.             //     'multiple' => false,
  2494.             //     'attr' => ['class' => 'form-check-inline'],
  2495.             //     'required' => false,
  2496.             // ])
  2497.             // ->add('fscoment', TextType::class, [
  2498.             //     'label' => 'Shower head comments',
  2499.             //     'required' => false,
  2500.             // ])
  2501.             
  2502.             ->add(
  2503.                 $builder->create('group_bathroom_notes'FormType::class, [
  2504.                     'label' => 'Bathroom notes',
  2505.                     'inherit_data' => true,
  2506.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  2507.                     'row_attr' => ['class' => 'mt-5'],
  2508.                     'required' => false,
  2509.                 ])
  2510.             )
  2511.             ->add('bathroomScore'TextType::class, [
  2512.                 'label' => 'Bathroom Score',
  2513.                 'required' => false,
  2514.                 'attr' => ['class' => 'col-2'],
  2515.                 'disabled' => true,
  2516.                 // 'scale' => 2,
  2517.             ])
  2518.             ->add('bathpic1'FileType::class, [
  2519.                 'label' => 'Bathroom picture 1',
  2520.                 'required' => false,
  2521.                 'mapped' => false,
  2522.                 'show_preview' => true,
  2523.             ])
  2524.             ->add('bathpic2'FileType::class, [
  2525.                 'label' => 'Bathroom picture 2',
  2526.                 'required' => false,
  2527.                 'mapped' => false,
  2528.                 'show_preview' => true,
  2529.             ])
  2530.             ->add('bathpic3'FileType::class, [
  2531.                 'label' => 'Bathroom picture 3',
  2532.                 'required' => false,
  2533.                 'mapped' => false,
  2534.                 'show_preview' => true,
  2535.             ])
  2536.             ->add('bathpic4'FileType::class, [
  2537.                 'label' => 'Bathroom picture 4',
  2538.                 'required' => false,
  2539.                 'mapped' => false,
  2540.                 'show_preview' => true,
  2541.             ])
  2542.             ->add(
  2543.                 $builder->create('group_summary'FormType::class, [
  2544.                     'label' => 'Summary',
  2545.                     'inherit_data' => true,
  2546.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  2547.                     'row_attr' => ['class' => 'mt-5'],
  2548.                     'required' => false,
  2549.                 ])
  2550.             )
  2551.             ->add('summary'TextareaType::class, [
  2552.                 'label' => 'Summary',
  2553.                 'required' => false,
  2554.             ])
  2555.             ->add('miscpic1'FileType::class, [
  2556.                 'label' => 'Miscellaneous picture 1',
  2557.                 'required' => false,
  2558.                 'mapped' => false,
  2559.                 'show_preview' => true,
  2560.             ])
  2561.             ->add('miscpic2'FileType::class, [
  2562.                 'label' => 'Miscellaneous picture 2',
  2563.                 'required' => false,
  2564.                 'mapped' => false,
  2565.                 'show_preview' => true,
  2566.             ])
  2567.             ->add('miscpic3'FileType::class, [
  2568.                 'label' => 'Miscellaneous picture 3',
  2569.                 'required' => false,
  2570.                 'mapped' => false,
  2571.                 'show_preview' => true,
  2572.             ])
  2573.             ->add('miscpic4'FileType::class, [
  2574.                 'label' => 'Miscellaneous picture 4',
  2575.                 'required' => false,
  2576.                 'mapped' => false,
  2577.                 'show_preview' => true,
  2578.             ])
  2579.             ->add(
  2580.                 $builder->create('group_scores'FormType::class, [
  2581.                     'label' => 'Scores',
  2582.                     'inherit_data' => true,
  2583.                     'label_attr' => ['class' => 'font-weight-bold group-heading'],
  2584.                     'row_attr' => ['class' => 'mt-5'],
  2585.                     'required' => false,
  2586.                 ])
  2587.             )
  2588.             ->add('totalScore'TextType::class, [
  2589.                 'label' => 'Total Score',
  2590.                 'required' => false,
  2591.                 'attr' => ['class' => 'col-2'],
  2592.                 'disabled' => true,
  2593.                 // 'scale' => 2,
  2594.             ])
  2595.             ->add('stars'TextType::class, [
  2596.                 'label' => 'Star rating',
  2597.                 'required' => false,
  2598.                 'attr' => ['class' => 'col-2'],
  2599.                 'disabled' => true,
  2600.             ])
  2601.             
  2602.         ;
  2603.     }
  2604.     public function configureOptions(OptionsResolver $resolver)
  2605.     {
  2606.         $resolver->setDefaults([
  2607.             'data_class' => Forms::class,
  2608.             // 'csrf_protection' => false,
  2609.         ]);
  2610.     }
  2611. }