Browse Source

DIV-963: Updated child support act display logic and wording.

pull/160/head
Charles Shin 6 years ago
parent
commit
57541657cf
5 changed files with 86 additions and 16 deletions
  1. +22
    -0
      edivorce/apps/core/migrations/0019_auto_20191008_2141.py
  2. +38
    -0
      edivorce/apps/core/static/js/main.js
  3. +1
    -1
      edivorce/apps/core/templates/pdf/form38.html
  4. +16
    -13
      edivorce/apps/core/templates/question/06_children_what_for.html
  5. +9
    -2
      edivorce/apps/core/utils/derived.py

+ 22
- 0
edivorce/apps/core/migrations/0019_auto_20191008_2141.py View File

@ -0,0 +1,22 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.11.18 on 2019-10-08 21:41
from __future__ import unicode_literals
from django.db import migrations
def string_to_json(apps, schema_editor):
Responses = apps.get_model('core', 'UserResponse')
for response in Responses.objects.filter(question_id='child_support_act'):
if not (response.value.startswith('["') and response.value.endswith('"]')):
response.value = '["%s"]' % (response.value)
response.save()
class Migration(migrations.Migration):
dependencies = [
('core', '0018_bceiduser_has_accepted_terms'),
]
operations = [
migrations.RunPython(string_to_json),
]

+ 38
- 0
edivorce/apps/core/static/js/main.js View File

@ -21,6 +21,13 @@ $('input[type=number]').each(function() {
$(window).load(function(){ $(window).load(function(){
$('#questions_modal, #terms_modal').modal('show'); $('#questions_modal, #terms_modal').modal('show');
// Load child support act question text if child_suuport_in_order exist on the page and answered before.
var childSupport = $('input[name="child_support_in_order"]:checked');
if (childSupport !== undefined) {
var wantChildSupport = childSupport.val() === 'NO' ? false : true;
updateChildSupportActQuestion(wantChildSupport);
}
}); });
// Temporarily store table row data. // Temporarily store table row data.
@ -1234,3 +1241,34 @@ $(".question-well").click(function () {
$('.no-collapse').on('click', function (e) { $('.no-collapse').on('click', function (e) {
e.stopPropagation(); e.stopPropagation();
}); });
// Handle complicated logic show/hide child support act question with different wordings on Step 6. What are you asking for.
$('input[name="child_support_in_order"]').change(function() {
var wantChildSupport = $(this).val() === 'NO' ? false : true;
updateChildSupportActQuestion(wantChildSupport);
});
var updateChildSupportActQuestion = function (wantChildSupport) {
var wantChildOrder = $('#child_support_act').data('want_child_order') === true ? true : false;
if (!wantChildOrder) {
if (!wantChildSupport) {
$('#child_support_act').hide();
} else {
$('#child_support_act').show();
}
} else {
$('#child_support_act').show();
var childSupportActQuestionText = '';
if (!wantChildSupport) {
childSupportActQuestionText = "Please indicate which act you are asking for an order regarding Arrangements for Parenting or Contact under.";
$('#child_support_act_question').text(childSupportActQuestionText);
} else {
childSupportActQuestionText = "Please indicate which act you are asking for an order regarding Child Support and Arrangements for Parenting or Contact under.";
$('#child_support_act_question').text(childSupportActQuestionText);
}
}
};

+ 1
- 1
edivorce/apps/core/templates/pdf/form38.html View File

@ -177,7 +177,7 @@
{% if responses.children_of_marriage == 'YES' %} {% if responses.children_of_marriage == 'YES' %}
<p> <p>
There are children of the marriage as defined by There are children of the marriage as defined by
{{ responses.child_support_act }}, and
{{ derived.child_support_acts }}, and
</p> </p>
<ol class='parens-list'> <ol class='parens-list'>


+ 16
- 13
edivorce/apps/core/templates/question/06_children_what_for.html View File

@ -379,19 +379,22 @@
</div> </div>
{% endif %} {% endif %}
<div class="question-well">
<h3>Please indicate which act you are asking for child support under.</h3>
<div class="radio">
<label>
{% input_field type="radio" name="child_support_act" class="" autocomplete="off" value="the Divorce Act (Canada) " %} the Divorce Act (Canada) -
<a href="http://laws-lois.justice.gc.ca/eng/acts/D-3.4/index.html" target="_blank">view the Divorce Act</a>
</label>
</div>
<div class="radio">
<label>
{% input_field type="radio" name="child_support_act" class="" autocomplete="off" value="the Family Law Act" %} the Family Law Act -
<a href="http://www.bclaws.ca/civix/document/id/complete/statreg/11025_01" target="_blank">view the Family Law Act</a>
</label>
{# DIV-963: Show/hide logic and text update will be handled by JavaScript function updateChildSupportActQuestion() #}
<div class="question-well" id="child_support_act" {% if 'Child support' in want_which_orders|load_json %}data-want_child_order="true"{% endif %}>
<h3 id="child_support_act_question">Please indicate which act(s) you are asking for child support under.</h3>
<div class="checkbox-group">
<div class="checkbox">
<label>
{% input_field type="checkbox" name="child_support_act" value="the Divorce Act (Canada) " %} the Divorce Act (Canada) -
<a href="http://laws-lois.justice.gc.ca/eng/acts/D-3.4/index.html" target="_blank">view the Divorce Act</a>
</label>
</div>
<div class="checkbox">
<label>
{% input_field type="checkbox" name="child_support_act" value="the Family Law Act" %} the Family Law Act -
<a href="http://www.bclaws.ca/civix/document/id/complete/statreg/11025_01" target="_blank">view the Family Law Act</a>
</label>
</div>
</div> </div>
<div class="collapse-trigger collapsed" data-toggle="collapse" aria-expanded="false" data-target="#collapse_which_act" aria-controls="collapse_which_act"> <div class="collapse-trigger collapsed" data-toggle="collapse" aria-expanded="false" data-target="#collapse_which_act" aria-controls="collapse_which_act">


+ 9
- 2
edivorce/apps/core/utils/derived.py View File

@ -68,6 +68,7 @@ DERIVED_DATA = [
'total_monthly_b', 'total_monthly_b',
'medical_covered_by_1', 'medical_covered_by_1',
'medical_covered_by_2', 'medical_covered_by_2',
'child_support_acts',
'pursuant_parenting_arrangement', 'pursuant_parenting_arrangement',
'pursuant_child_support', 'pursuant_child_support',
] ]
@ -671,13 +672,19 @@ def medical_covered_by_2(responses, derived):
return False return False
def child_support_acts(responses, derived):
""" Strip off unnecessary characters from child_support_act value """
act = responses.get('child_support_act', '').replace('"', '').replace('[', '').replace(']', '').replace(' ,', ' and ')
return act
def pursuant_parenting_arrangement(responses, derived): def pursuant_parenting_arrangement(responses, derived):
""" """
Return a list of parenting arrangement bullet points, prefaced by the Return a list of parenting arrangement bullet points, prefaced by the
correct 'pursuant to' phrase. correct 'pursuant to' phrase.
""" """
act = responses.get('child_support_act', '')
act = derived['child_support_acts']
act = 'Pursuant to %s,' % act if act != '' else act act = 'Pursuant to %s,' % act if act != '' else act
try: try:
arrangements = responses.get('order_respecting_arrangement', '').split('\n') arrangements = responses.get('order_respecting_arrangement', '').split('\n')
@ -694,7 +701,7 @@ def pursuant_child_support(responses, derived):
'pursuant to' phrase. 'pursuant to' phrase.
""" """
act = responses.get('child_support_act', '')
act = derived['child_support_acts']
act = 'Pursuant to %s,' % act if act != '' else act act = 'Pursuant to %s,' % act if act != '' else act
try: try:
arrangements = responses.get('order_for_child_support', '').split('\n') arrangements = responses.get('order_for_child_support', '').split('\n')


Loading…
Cancel
Save