From dcae6e644d7b42b2ebfabc5cf30093998e5548bf Mon Sep 17 00:00:00 2001 From: aspangaro Date: Wed, 11 Jan 2017 05:12:48 +0100 Subject: [PATCH] New : Loan - Add control and edit mode more complete --- htdocs/loan/card.php | 172 +++++++++++++++++++++++++++---------------- 1 file changed, 110 insertions(+), 62 deletions(-) diff --git a/htdocs/loan/card.php b/htdocs/loan/card.php index 6dd6b17ccff..eae1120e80c 100644 --- a/htdocs/loan/card.php +++ b/htdocs/loan/card.php @@ -90,17 +90,7 @@ if ($action == 'add' && $user->rights->loan->write) $dateend = dol_mktime(12, 0, 0, GETPOST('endmonth','int'), GETPOST('endday','int'), GETPOST('endyear','int')); $capital = price2num(GETPOST('capital')); - if (! $datestart) - { - setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("DateStart")), null, 'errors'); - $action = 'create'; - } - elseif (! $dateend) - { - setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("DateEnd")), null, 'errors'); - $action = 'create'; - } - elseif (! $capital) + if (! $capital) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("LoanCapital")), null, 'errors'); $action = 'create'; @@ -145,14 +135,32 @@ else if ($action == 'update' && $user->rights->loan->write) if (! $cancel) { $result = $object->fetch($id); + $object->fetch($id); - if ($object->fetch($id)) + $datestart = dol_mktime(12, 0, 0, GETPOST('startmonth','int'), GETPOST('startday','int'), GETPOST('startyear','int')); + $dateend = dol_mktime(12, 0, 0, GETPOST('endmonth','int'), GETPOST('endday','int'), GETPOST('endyear','int')); + $capital = price2num(GETPOST('capital')); + + if (! $capital) { - $object->datestart = dol_mktime(12, 0, 0, GETPOST('startmonth','int'), GETPOST('startday','int'), GETPOST('startyear','int')); - $object->dateend = dol_mktime(12, 0, 0, GETPOST('endmonth','int'), GETPOST('endday','int'), GETPOST('endyear','int')); - $object->capital = price2num(GETPOST("capital")); + setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("LoanCapital")), null, 'errors'); + $action = 'edit'; + } + else + { + $object->datestart = $datestart; + $object->dateend = $dateend; + $object->capital = $capital; $object->nbterm = GETPOST("nbterm"); $object->rate = GETPOST("rate"); + + $accountancy_account_capital = GETPOST('accountancy_account_capital'); + $accountancy_account_insurance = GETPOST('accountancy_account_insurance'); + $accountancy_account_interest = GETPOST('accountancy_account_interest'); + + if ($accountancy_account_capital <= 0) { $object->account_capital = ''; } else { $object->account_capital = $accountancy_account_capital; } + if ($accountancy_account_insurance <= 0) { $object->account_insurance = ''; } else { $object->account_insurance = $accountancy_account_insurance; } + if ($accountancy_account_interest <= 0) { $object->account_interest = ''; } else { $object->account_interest = $accountancy_account_interest; } } $result = $object->update($user); @@ -234,21 +242,21 @@ if ($action == 'create') // Date Start print ""; - print ''.$langs->trans("DateStart").''; + print ''.$langs->trans("DateStart").''; print $form->select_date($datestart?$datestart:-1,'start','','','','add',1,1,1); print ''; // Date End print ""; - print ''.$langs->trans("DateEnd").''; + print ''.$langs->trans("DateEnd").''; print $form->select_date($dateend?$dateend:-1,'end','','','','add',1,1,1); print ''; // Number of terms - print ''.$langs->trans("Nbterms").''; + print ''.$langs->trans("Nbterms").''; // Rate - print ''.$langs->trans("Rate").' %'; + print ''.$langs->trans("Rate").' %'; // Note Private print ''; @@ -272,19 +280,19 @@ if ($action == 'create') if (! empty($conf->accounting->enabled)) { // Accountancy_account_capital - print ''.$langs->trans("LoanAccountancyCapitalCode").''; + print ''.$langs->trans("LoanAccountancyCapitalCode").''; print ''; print $formaccountancy->select_account($object->accountancy_account_capital, 'accountancy_account_capital', 1, '', 0, 1); print ''; // Accountancy_account_insurance - print ''.$langs->trans("LoanAccountancyInsuranceCode").''; + print ''.$langs->trans("LoanAccountancyInsuranceCode").''; print ''; print $formaccountancy->select_account($object->accountancy_account_insurance, 'accountancy_account_insurance', 1, '', 0, 1); print ''; // Accountancy_account_interest - print ''.$langs->trans("LoanAccountancyInterestCode").''; + print ''.$langs->trans("LoanAccountancyInterestCode").''; print ''; print $formaccountancy->select_account($object->accountancy_account_interest, 'accountancy_account_interest', 1, '', 0, 1); print ''; @@ -292,17 +300,17 @@ if ($action == 'create') else // For external software { // Accountancy_account_capital - print ''.$langs->trans("LoanAccountancyCapitalCode").''; + print ''.$langs->trans("LoanAccountancyCapitalCode").''; print ''; print ''; // Accountancy_account_insurance - print ''.$langs->trans("LoanAccountancyInsuranceCode").''; + print ''.$langs->trans("LoanAccountancyInsuranceCode").''; print ''; print ''; // Accountancy_account_interest - print ''.$langs->trans("LoanAccountancyInterestCode").''; + print ''.$langs->trans("LoanAccountancyInterestCode").''; print ''; print ''; } @@ -372,29 +380,10 @@ if ($id > 0) print ''; - /* - // Ref - print '"; - - // Label - if ($action == 'edit') - { - print ''; - } - else - { - print ''; - } - */ - // Capital if ($action == 'edit') { - print ''; print ''; } @@ -430,19 +419,53 @@ if ($id > 0) print ""; // Nbterms - print ''; + print ''; + print ''; // Rate - print ''; + print ''; + print ''; // Accountancy account capital print ''; @@ -450,10 +473,24 @@ if ($id > 0) print ''; @@ -461,16 +498,27 @@ if ($id > 0) print ''; - // Status - // print ''; - print '
'.$langs->trans("Ref").''; - print $form->showrefnav($object,'id'); - print "
'.$langs->trans("Label").''; - print ''; - print '
'.$langs->trans("Label").''.$object->label.'
'.$langs->trans("LoanCapital").''; + print '
'.$langs->trans("LoanCapital").''; print '
'.$langs->trans("Nbterms").''.$object->nbterm.'
'.$langs->trans("Nbterms").''; + if ($action == 'edit') + { + print ''; + } + else + { + print $object->nbterm; + } + print '
'.$langs->trans("Rate").''.$object->rate.' %
'.$langs->trans("Rate").''; + if ($action == 'edit') + { + print '%'; + } + else + { + print $object->rate . '%'; + } + print '
'; print $langs->trans("LoanAccountancyCapitalCode"); print ''; - if (! empty($conf->accounting->enabled)) { - print length_accountg($object->account_capital); - } else { - print $object->account_capital; + if ($action == 'edit') + { + if (! empty($conf->accounting->enabled)) + { + print $formaccountancy->select_account($object->account_capital, 'accountancy_account_capital', 1, '', 0, 1); + } + else + { + print ''; + } + } + else + { + if (! empty($conf->accounting->enabled)) { + print length_accountg($object->account_capital); + } else { + print $object->account_capital; + } } print '
'; print $langs->trans("LoanAccountancyInsuranceCode"); print ''; - if (! empty($conf->accounting->enabled)) { - print length_accountg($object->account_insurance); - } else { - print $object->account_insurance; + if ($action == 'edit') + { + if (! empty($conf->accounting->enabled)) + { + print $formaccountancy->select_account($object->account_insurance, 'accountancy_account_insurance', 1, '', 0, 1); + } + else + { + print ''; + } + } + else + { + if (! empty($conf->accounting->enabled)) { + print length_accountg($object->account_insurance); + } else { + print $object->account_insurance; + } } print '
'; print $langs->trans("LoanAccountancyInterestCode"); print ''; - if (! empty($conf->accounting->enabled)) { - print length_accountg($object->account_interest); - } else { - print $object->account_interest; + if ($action == 'edit') + { + if (! empty($conf->accounting->enabled)) + { + print $formaccountancy->select_account($object->account_interest, 'accountancy_account_interest', 1, '', 0, 1); + } + else + { + print ''; + } + } + else + { + if (! empty($conf->accounting->enabled)) { + print length_accountg($object->account_interest); + } else { + print $object->account_interest; + } } print '
'.$langs->trans("Status").''.$object->getLibStatut(4, $totalpaye).'
'; print '';