﻿//          +++++++++++++++++++++++++++++++++++
//          (C) Copyright 2003 - 2009 Niro Solutions Pty Limited ABN 89 106 967 140
//			+++++++++++++++++++++++++++++++++++
//			Version: July 2009
//			+++++++++++++++++++++++++++++++++++
//			Original author: Miles Glisovic
//			Last update completed by: ZhongBo Sun
//			Modification date: 23/06/09
//			+++++++++++++++++++++++++++++++++++

var COCONTLIMITMIN = 31920;
var COCONTLIMITMAX = COCONTLIMITMIN + 30000;
var CONCONTREDUCT_RATE = 0.03333; //3.333%
var CONCONTMAX_AMOUNT = 1000;
var COCONTAFTERTAX_FACTOR = 1.0;
var CONCONTMIN_AMOUNT = 20;
var AFTERTAX_MIN = 0.05

function getCoConts(grossSalary, afterTax) {
    var ret = 0, max1 = 0

    if ((grossSalary) > COCONTLIMITMAX || afterTax < AFTERTAX_MIN)
        ret = 0
    else {
        if (grossSalary <= COCONTLIMITMIN) {
            ret = Math.min((afterTax * COCONTAFTERTAX_FACTOR), CONCONTMAX_AMOUNT)
        }
        else {
            ret = Math.min((afterTax * COCONTAFTERTAX_FACTOR), (CONCONTMAX_AMOUNT - (grossSalary - COCONTLIMITMIN) * CONCONTREDUCT_RATE))
        }

        if (ret < CONCONTMIN_AMOUNT && ret >= AFTERTAX_MIN) {
            ret = CONCONTMIN_AMOUNT
        }
        else if (ret < AFTERTAX_MIN) {
            ret = 0
        }
    }
    return ret
}

function getCoContMAX(grossSalary, afterTax) {
    var tmp = CONCONTMAX_AMOUNT - (grossSalary - COCONTLIMITMIN) * CONCONTREDUCT_RATE

    if (tmp > CONCONTMAX_AMOUNT)
        tmp = CONCONTMAX_AMOUNT

    if (tmp > 0 && tmp <= CONCONTMIN_AMOUNT)
        tmp = CONCONTMIN_AMOUNT

    if (tmp < 0)
        tmp = 0

    return tmp
}
