diff --git a/.travis.yml b/.travis.yml index ad95172334c..9eb355b2ab4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -289,16 +289,30 @@ script: - | echo "Unit testing" - # Ensure we catch errors + # Ensure we catch errors. Set this to +e if you want to go to this end to see log file. set -e phpunit -d memory_limit=-1 -c test/phpunit/phpunittest.xml test/phpunit/AllTests.php set +e - echo + +- | + #echo "Output dolibarr.log" + #echo cat documents/dolibarr.log + +after_script: +- | + # Dolibarr log file + #echo "After script" + #cat documents/dolibarr.log + after_success: +- | + echo Success after_failure: - | + echo Failure + # This part of code seems to be never executed, error or not ??? echo "Debugging informations" # Upgrade log files cat *.log @@ -314,5 +328,3 @@ after_failure: echo fi -after_script: - diff --git a/.tx/config b/.tx/config index e6fbdc34190..b2bc84b5071 100644 --- a/.tx/config +++ b/.tx/config @@ -356,6 +356,12 @@ source_file = htdocs/langs/en_US/withdrawals.lang source_lang = en_US type = MOZILLAPROPERTIES +[dolibarr.websites] +file_filter = htdocs/langs//withdrawals.lang +source_file = htdocs/langs/en_US/withdrawals.lang +source_lang = en_US +type = MOZILLAPROPERTIES + [dolibarr.workflow] file_filter = htdocs/langs//workflow.lang source_file = htdocs/langs/en_US/workflow.lang diff --git a/ChangeLog b/ChangeLog index 439ae83b35d..a17879fcbdd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -115,6 +115,7 @@ NEW: Use new select2 component for juridical status, country and state selection NEW: When creating order, proposal or invoice from thirdparty card, the project is asked during creation. A link to create project if it does not exists is also available. NEW: Uniformize form creation of proposal to add public and private notes during creation like for order and invoice. NEW: More robust antiXSS engine. +NEW: Compatibility with Mysql 5.7+ For developers: NEW: The search box and the bookmarks are now rendered by the menu manager. diff --git a/htdocs/accountancy/admin/account.php b/htdocs/accountancy/admin/account.php index 8213fed9d48..8ebaa93d96c 100644 --- a/htdocs/accountancy/admin/account.php +++ b/htdocs/accountancy/admin/account.php @@ -17,17 +17,16 @@ */ /** - * \file htdocs/accountancy/admin/account.php - * \ingroup Accounting Expert - * \brief List accounting account + * \file htdocs/accountancy/admin/account.php + * \ingroup Accounting Expert + * \brief List accounting account */ - require '../../main.inc.php'; - + // Class -require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php'; -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/html.formventilation.class.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingaccount.class.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/html.formventilation.class.php'; // Langs $langs->load("compta"); @@ -44,12 +43,12 @@ $search_pcgtype = GETPOST("search_pcgtype"); $search_pcgsubtype = GETPOST("search_pcgsubtype"); // Security check -if (!$user->admin) - accessforbidden(); +if (! $user->admin) + accessforbidden(); $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'sortorder'); -$limit = GETPOST('limit')?GETPOST('limit','int'):$conf->liste_limit; +$limit = GETPOST('limit') ? GETPOST('limit', 'int') : $conf->liste_limit; $page = GETPOST("page", 'int'); if ($page == - 1) { $page = 0; @@ -90,11 +89,11 @@ if ($action == 'disable') { if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) // Both test are required to be compatible with all browsers { - $search_account=""; - $search_label=""; - $search_accountparent=""; - $search_pcgtype=""; - $search_pcgsubtype=""; + $search_account = ""; + $search_label = ""; + $search_accountparent = ""; + $search_pcgtype = ""; + $search_pcgsubtype = ""; } /* @@ -156,7 +155,7 @@ if ($result) { print_liste_field_titre($langs->trans("Pcgtype"), $_SERVER["PHP_SELF"], "aa.pcg_type", "", $param, "", $sortfield, $sortorder); print_liste_field_titre($langs->trans("Pcgsubtype"), $_SERVER["PHP_SELF"], "aa.pcg_subtype", "", $param, "", $sortfield, $sortorder); print_liste_field_titre($langs->trans("Activated"), $_SERVER["PHP_SELF"], "aa.active", "", $param, "", $sortfield, $sortorder); - print_liste_field_titre($langs->trans("Action"),$_SERVER["PHP_SELF"],"",$param,"",'width="60" align="center"',$sortfield,$sortorder); + print_liste_field_titre($langs->trans("Action"), $_SERVER["PHP_SELF"], "", $param, "", 'width="60" align="center"', $sortfield, $sortorder); print ''; print ''; @@ -167,24 +166,23 @@ if ($result) { print ''; print ' '; print ''; - print ''; + print ''; print ' '; - print ''; + print ''; print ''; print ''; $var = false; - $accountstatic=new AccountingAccount($db); + $accountstatic = new AccountingAccount($db); - while ( $i < min($num, $limit) ) - { + while ( $i < min($num, $limit) ) { $obj = $db->fetch_object($resql); - $accountstatic->id=$obj->rowid; - $accountstatic->label=$obj->label; - $accountstatic->account_number=$obj->account_number; - + $accountstatic->id = $obj->rowid; + $accountstatic->label = $obj->label; + $accountstatic->account_number = $obj->account_number; + print ''; print '' . $accountstatic->getNomUrl(1) . ''; print '' . $obj->label . ''; @@ -217,7 +215,7 @@ if ($result) { print '' . "\n"; print "\n"; - $var=!$var; + $var = ! $var; $i ++; } diff --git a/htdocs/accountancy/admin/card.php b/htdocs/accountancy/admin/card.php index 1440a515794..7810ad4f3ef 100644 --- a/htdocs/accountancy/admin/card.php +++ b/htdocs/accountancy/admin/card.php @@ -18,18 +18,18 @@ */ /** - * \file htdocs/accountancy/admin/card.php - * \ingroup Accounting Expert - * \brief Card accounting account + * \file htdocs/accountancy/admin/card.php + * \ingroup Accounting Expert + * \brief Card accounting account */ require '../../main.inc.php'; // Class -require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php'; -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/html.formventilation.class.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingaccount.class.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/html.formventilation.class.php'; -$error=0; +$error = 0; // Langs $langs->load("bills"); @@ -42,21 +42,20 @@ $rowid = GETPOST('rowid', 'int'); $cancel = GETPOST('cancel'); // Security check -if (!$user->admin) - accessforbidden(); +if (! $user->admin) + accessforbidden(); $accounting = new AccountingAccount($db); // Action -if ($action == 'add') -{ +if ($action == 'add') { if (! $cancel) { $sql = 'SELECT pcg_version FROM ' . MAIN_DB_PREFIX . 'accounting_system WHERE rowid=' . $conf->global->CHARTOFACCOUNTS; - + dol_syslog('accountancy/admin/card.php:: $sql=' . $sql); $result = $db->query($sql); $obj = $db->fetch_object($result); - + $accounting->fk_pcg_version = $obj->pcg_version; $accounting->pcg_type = GETPOST('pcg_type'); $accounting->pcg_subtype = GETPOST('pcg_subtype'); @@ -64,9 +63,9 @@ if ($action == 'add') $accounting->account_parent = GETPOST('account_parent', 'int'); $accounting->label = GETPOST('label', 'alpha'); $accounting->active = 1; - + $res = $accounting->create($user); - + if ($res == 0) { } else { if ($res == - 3) { @@ -80,27 +79,25 @@ if ($action == 'add') } } Header("Location: account.php"); -} -else if ($action == 'edit') -{ +} else if ($action == 'edit') { if (! GETPOST('cancel', 'alpha')) { $result = $accounting->fetch($id); - + $sql = 'SELECT pcg_version FROM ' . MAIN_DB_PREFIX . 'accounting_system WHERE rowid=' . $conf->global->CHARTOFACCOUNTS; - + dol_syslog('accountancy/admin/card.php:: $sql=' . $sql); $result2 = $db->query($sql); $obj = $db->fetch_object($result2); - + $accounting->fk_pcg_version = $obj->pcg_version; $accounting->pcg_type = GETPOST('pcg_type'); $accounting->pcg_subtype = GETPOST('pcg_subtype'); $accounting->account_number = GETPOST('account_number'); $accounting->account_parent = GETPOST('account_parent', 'int'); $accounting->label = GETPOST('label', 'alpha'); - + $result = $accounting->update($user); - + if ($result > 0) { header("Location: " . $_SERVER["PHP_SELF"] . "?id=" . $id); exit(); @@ -111,19 +108,17 @@ else if ($action == 'edit') header("Location: " . $_SERVER["PHP_SELF"] . "?id=" . $id); exit(); } -} -else if ($action == 'delete') -{ +} else if ($action == 'delete') { $result = $accounting->fetch($id); - + if (! empty($accounting->id)) { $result = $accounting->delete($user); - + if ($result > 0) { Header("Location: account.php"); } } - + if ($result < 0) { setEventMessages($accounting->error, $accounting->errors, 'errors'); } @@ -137,16 +132,15 @@ llxheader('', $langs->trans('AccountAccounting')); $form = new Form($db); $htmlacc = new FormVentilation($db); -if ($action == 'create') -{ +if ($action == 'create') { print load_fiche_titre($langs->trans('NewAccount')); - + print '
' . "\n"; print ''; print ''; - + dol_fiche_head(); - + print ''; print ''; @@ -165,45 +159,42 @@ if ($action == 'create') print ''; - + print '
' . $langs->trans("AccountNumber") . ''; print $htmlacc->select_pcgsubtype($accounting->pcg_subtype, 'pcg_subtype'); print '
'; - + dol_fiche_end(); - + print '
'; print ''; print '     '; print ''; print '
'; - + print '
'; -} -else if ($id) -{ +} else if ($id) { $rowid = $id; $account = $accounting->fetch($rowid); - + if ($account > 0) { dol_htmloutput_mesg($mesg); - + $head = accounting_prepare_head($accounting); - - if ($action == 'update') - { + + if ($action == 'update') { $soc = new Societe($db); if ($object->socid) { $soc->fetch($object->socid); } - + dol_fiche_head($head, 'card', $langs->trans('AccountAccounting'), 0, 'billr'); - + print '
' . "\n"; print ''; print ''; print ''; - + print ''; - + print ''; print ''; print ''; @@ -220,86 +211,82 @@ else if ($id) print ''; - + print '
' . $langs->trans("AccountNumber") . '
' . $langs->trans("Label") . ''; print $htmlacc->select_pcgsubtype($accounting->pcg_subtype, 'pcg_subtype'); print '
'; - + dol_fiche_end(); - + print '
'; print ''; print '     '; print ''; print '
'; - + print '
'; - } - else - { + } else { $linkback = '' . $langs->trans("BackToChartofaccounts") . ''; - + dol_fiche_head($head, 'card', $langs->trans('AccountAccounting'), 0, 'billr'); - + print ''; - + // Account number print ''; print ''; print ''; - + print ''; print ''; - + $accp = new AccountingAccount($db); if (! empty($accounting->account_parent)) { $accp->fetch($accounting->account_parent, ''); } print ''; print ''; - + print ''; print ''; - + print ''; print ''; - + print ''; print ''; - + print '
' . $langs->trans("AccountNumber") . '' . $accounting->account_number . '' . $linkback . '
' . $langs->trans("Label") . '' . $accounting->label . '
' . $langs->trans("Accountparent") . '' . $accp->account_number . ' - ' . $accp->label . '
' . $langs->trans("Pcgtype") . '' . $accounting->pcg_type . '
' . $langs->trans("Pcgsubtype") . '' . $accounting->pcg_subtype . '
' . $langs->trans("Activated") . ''; - + if (empty($accounting->active)) { print img_picto($langs->trans("Disabled"), 'switch_off'); } else { print img_picto($langs->trans("Activated"), 'switch_on'); } - + print '
'; - + dol_fiche_end(); - + /* * Barre d'actions */ - + print '
'; - + if ($user->admin) { print '' . $langs->trans('Modify') . ''; } else { print '' . $langs->trans('Modify') . ''; } - + if ($user->admin) { print '' . $langs->trans('Delete') . ''; } else { print '' . $langs->trans('Delete') . ''; } - + print '
'; } - } - else - { + } else { dol_print_error($db); } } diff --git a/htdocs/accountancy/admin/export.php b/htdocs/accountancy/admin/export.php index 9f060179910..0dc1798ef57 100644 --- a/htdocs/accountancy/admin/export.php +++ b/htdocs/accountancy/admin/export.php @@ -21,16 +21,15 @@ */ /** - * \file htdocs/accountancy/admin/export.php - * \ingroup Accounting Expert - * \brief Setup page to configure accounting expert module + * \file htdocs/accountancy/admin/export.php + * \ingroup Accounting Expert + * \brief Setup page to configure accounting expert module */ - require '../../main.inc.php'; // Class -require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/admin.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php'; $langs->load("compta"); $langs->load("bills"); @@ -38,14 +37,14 @@ $langs->load("admin"); $langs->load("accountancy"); // Security check -if (!$user->admin) - accessforbidden(); +if (! $user->admin) + accessforbidden(); $action = GETPOST('action', 'alpha'); // Parameters ACCOUNTING_EXPORT_* $main_option = array ( - 'ACCOUNTING_EXPORT_PREFIX_SPEC' + 'ACCOUNTING_EXPORT_PREFIX_SPEC' ); $model_option = array ( @@ -55,7 +54,7 @@ $model_option = array ( 'ACCOUNTING_EXPORT_GLOBAL_ACCOUNT', 'ACCOUNTING_EXPORT_LABEL', 'ACCOUNTING_EXPORT_AMOUNT', - 'ACCOUNTING_EXPORT_DEVISE' + 'ACCOUNTING_EXPORT_DEVISE' ); /* @@ -63,7 +62,7 @@ $model_option = array ( */ if ($action == 'update') { $error = 0; - + $format = GETPOST('format', 'alpha'); $modelcsv = GETPOST('modelcsv', 'int'); @@ -74,7 +73,7 @@ if ($action == 'update') { } else { $error ++; } - + if (! empty($modelcsv)) { if (! dolibarr_set_const($db, 'ACCOUNTING_EXPORT_MODELCSV', $modelcsv, 'chaine', 0, '', $conf->entity)) { $error ++; @@ -82,23 +81,23 @@ if ($action == 'update') { } else { $error ++; } - - foreach ($main_option as $constname) { + + foreach ( $main_option as $constname ) { $constvalue = GETPOST($constname, 'alpha'); - + if (! dolibarr_set_const($db, $constname, $constvalue, 'chaine', 0, '', $conf->entity)) { $error ++; } } - - foreach ($model_option as $constname) { + + foreach ( $model_option as $constname ) { $constvalue = GETPOST($constname, 'alpha'); - + if (! dolibarr_set_const($db, $constname, $constvalue, 'chaine', 0, '', $conf->entity)) { $error ++; } } - + if (! $error) { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); } else { @@ -114,12 +113,11 @@ llxHeader(); $form = new Form($db); -$linkback=''.$langs->trans("BackToModuleList").''; -print load_fiche_titre($langs->trans('ConfigAccountingExpert'),$linkback,'title_setup'); +$linkback = '' . $langs->trans("BackToModuleList") . ''; +print load_fiche_titre($langs->trans('ConfigAccountingExpert'), $linkback, 'title_setup'); $head = admin_accounting_prepare_head(); - print '
'; print ''; print ''; @@ -140,37 +138,33 @@ $var = ! $var; print ''; print '' . $langs->trans("Selectformat") . ''; -if (! $conf->use_javascript_ajax) -{ +if (! $conf->use_javascript_ajax) { print ''; print $langs->trans("NotAvailableWhenAjaxDisabled"); print ""; -} -else -{ +} else { print ''; - $listformat=array( - 'csv'=>$langs->trans("csv"), - 'txt'=>$langs->trans("txt") + $listformat = array ( + 'csv' => $langs->trans("csv"), + 'txt' => $langs->trans("txt") ); - print $form->selectarray("format",$listformat,$conf->global->ACCOUNTING_EXPORT_FORMAT,0); - + print $form->selectarray("format", $listformat, $conf->global->ACCOUNTING_EXPORT_FORMAT, 0); + print ''; } print ""; $num = count($main_option); -if ($num) -{ - foreach ($main_option as $key) { +if ($num) { + foreach ( $main_option as $key ) { $var = ! $var; - + print ''; - + // Param $label = $langs->trans($key); print '' . $label . ''; - + // Value print ''; print ''; @@ -195,22 +189,19 @@ $var = ! $var; print ''; print '' . $langs->trans("Selectmodelcsv") . ''; -if (! $conf->use_javascript_ajax) -{ +if (! $conf->use_javascript_ajax) { print ''; print $langs->trans("NotAvailableWhenAjaxDisabled"); print ""; -} -else -{ +} else { print ''; - $listmodelcsv=array( - '1'=>$langs->trans("Modelcsv_normal"), - '2'=>$langs->trans("Modelcsv_CEGID"), - '3'=>$langs->trans("Modelcsv_COALA") + $listmodelcsv = array ( + '1' => $langs->trans("Modelcsv_normal"), + '2' => $langs->trans("Modelcsv_CEGID"), + '3' => $langs->trans("Modelcsv_COALA") ); - print $form->selectarray("modelcsv",$listmodelcsv,$conf->global->ACCOUNTING_EXPORT_MODELCSV,0); - + print $form->selectarray("modelcsv", $listmodelcsv, $conf->global->ACCOUNTING_EXPORT_MODELCSV, 0); + print ''; } print ""; @@ -223,29 +214,29 @@ print "
\n"; */ $num2 = count($model_option); -if ($num2) -{ +if ($num2) { print ''; print ''; print ''; print "\n"; - if ($conf->global->ACCOUNTING_EXPORT_MODELCSV > 1) print ''; - - foreach ($model_option as $key) { + if ($conf->global->ACCOUNTING_EXPORT_MODELCSV > 1) + print ''; + + foreach ( $model_option as $key ) { $var = ! $var; - + print ''; - + // Param $label = $langs->trans($key); print ''; - + // Value print ''; } - + print "
' . $langs->trans('OtherOptions') . '
' . $langs->trans('OptionsDeactivatedForThisExportModel') . '
' . $langs->trans('OptionsDeactivatedForThisExportModel') . '
' . $label . ''; print ''; print '
\n"; } diff --git a/htdocs/accountancy/admin/fiscalyear.php b/htdocs/accountancy/admin/fiscalyear.php index 31ec91958c9..75411d6402f 100644 --- a/htdocs/accountancy/admin/fiscalyear.php +++ b/htdocs/accountancy/admin/fiscalyear.php @@ -16,34 +16,37 @@ */ /** - * \file htdocs/accountancy/admin/fiscalyear.php - * \ingroup fiscal year - * \brief Setup page to configure fiscal year + * \file htdocs/accountancy/admin/fiscalyear.php + * \ingroup fiscal year + * \brief Setup page to configure fiscal year */ - require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/fiscalyear.class.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/date.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/class/fiscalyear.class.php'; -$action=GETPOST('action'); +$action = GETPOST('action'); $langs->load("admin"); $langs->load("compta"); -if (! $user->admin) accessforbidden(); +if (! $user->admin) + accessforbidden(); -$error=0; +$error = 0; // List of statut -static $tmpstatut2label=array( - '0'=>'OpenFiscalYear', - '1'=>'CloseFiscalYear' +static $tmpstatut2label = array ( + '0' => 'OpenFiscalYear', + '1' => 'CloseFiscalYear' ); -$statut2label=array(''); -foreach ($tmpstatut2label as $key => $val) $statut2label[$key]=$langs->trans($val); +$statut2label = array ( + '' +); +foreach ( $tmpstatut2label as $key => $val ) + $statut2label[$key] = $langs->trans($val); -$errors=array(); +$errors = array (); $object = new Fiscalyear($db); @@ -55,67 +58,59 @@ $object = new Fiscalyear($db); * View */ -$max=100; +$max = 100; $form = new Form($db); $title = $langs->trans('FiscalYears'); -llxHeader('',$title,LOG_ERR); +llxHeader('', $title, LOG_ERR); print load_fiche_titre($langs->trans('FiscalYears')); $sql = "SELECT f.rowid, f.label, f.date_start, f.date_end, f.statut, f.entity"; -$sql.= " FROM ".MAIN_DB_PREFIX."accounting_fiscalyear as f"; -$sql.= " WHERE f.entity = ".$conf->entity; +$sql .= " FROM " . MAIN_DB_PREFIX . "accounting_fiscalyear as f"; +$sql .= " WHERE f.entity = " . $conf->entity; $result = $db->query($sql); -if ($result) -{ - $var=false; - $num = $db->num_rows($result); - - $i = 0; - +if ($result) { + $var = false; + $num = $db->num_rows($result); + + $i = 0; + // Load attribute_label print ''; print ''; - print ''; - print ''; - print ''; - print ''; - print ''; + print ''; + print ''; + print ''; + print ''; + print ''; print ''; - - if ($num) - { - $fiscalyearstatic=new Fiscalyear($db); - - while ($i < $num && $i < $max) - { - $obj = $db->fetch_object($result); - $fiscalyearstatic->id=$obj->rowid; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - $var=!$var; - $i++; - } - - } - else - { - print ''; - } - + + if ($num) { + $fiscalyearstatic = new Fiscalyear($db); + + while ( $i < $num && $i < $max ) { + $obj = $db->fetch_object($result); + $fiscalyearstatic->id = $obj->rowid; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + $var = ! $var; + $i ++; + } + } else { + print ''; + } + print '
'.$langs->trans("Ref").''.$langs->trans("Label").''.$langs->trans("DateStart").''.$langs->trans("DateEnd").''.$langs->trans("Statut").'' . $langs->trans("Ref") . '' . $langs->trans("Label") . '' . $langs->trans("DateStart") . '' . $langs->trans("DateEnd") . '' . $langs->trans("Statut") . '
'.img_object($langs->trans("ShowFiscalYear"),"technic").' '.$obj->rowid.''.$obj->label.''.dol_print_date($db->jdate($obj->date_start),'day').''.dol_print_date($db->jdate($obj->date_end),'day').''.$fiscalyearstatic->LibStatut($obj->statut,5).'
'.$langs->trans("None").'
' . img_object($langs->trans("ShowFiscalYear"), "technic") . ' ' . $obj->rowid . '' . $obj->label . '' . dol_print_date($db->jdate($obj->date_start), 'day') . '' . dol_print_date($db->jdate($obj->date_end), 'day') . '' . $fiscalyearstatic->LibStatut($obj->statut, 5) . '
' . $langs->trans("None") . '
'; -} -else -{ +} else { dol_print_error($db); } @@ -123,7 +118,7 @@ dol_fiche_end(); // Buttons print ''; llxFooter(); diff --git a/htdocs/accountancy/admin/fiscalyear_card.php b/htdocs/accountancy/admin/fiscalyear_card.php index 45e69c991de..e04cc7132f0 100644 --- a/htdocs/accountancy/admin/fiscalyear_card.php +++ b/htdocs/accountancy/admin/fiscalyear_card.php @@ -16,145 +16,123 @@ */ /** - * \file htdocs/accountancy/admin/fiscalyear_card.php - * \brief Page to show a fiscal year + * \file htdocs/accountancy/admin/fiscalyear_card.php + * \brief Page to show a fiscal year */ - require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/fiscalyear.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/fiscalyear.class.php'; - +require_once DOL_DOCUMENT_ROOT . '/core/lib/fiscalyear.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/class/fiscalyear.class.php'; $langs->load("admin"); $langs->load("compta"); // Security check -if (! $user->admin) accessforbidden(); +if (! $user->admin) + accessforbidden(); -$error=0; +$error = 0; -$action = GETPOST('action','alpha'); -$confirm = GETPOST('confirm','alpha'); -$id = GETPOST('id','int'); +$action = GETPOST('action', 'alpha'); +$confirm = GETPOST('confirm', 'alpha'); +$id = GETPOST('id', 'int'); // List of statut -static $tmpstatut2label=array( - '0'=>'OpenFiscalYear', - '1'=>'CloseFiscalYear' +static $tmpstatut2label = array ( + '0' => 'OpenFiscalYear', + '1' => 'CloseFiscalYear' ); -$statut2label=array(''); -foreach ($tmpstatut2label as $key => $val) $statut2label[$key]=$langs->trans($val); +$statut2label = array ( + '' +); +foreach ( $tmpstatut2label as $key => $val ) + $statut2label[$key] = $langs->trans($val); $object = new Fiscalyear($db); -$date_start=dol_mktime(0,0,0,GETPOST('fiscalyearmonth','int'),GETPOST('fiscalyearday','int'),GETPOST('fiscalyearyear','int')); -$date_end=dol_mktime(0,0,0,GETPOST('fiscalyearendmonth','int'),GETPOST('fiscalyearendday','int'),GETPOST('fiscalyearendyear','int')); - +$date_start = dol_mktime(0, 0, 0, GETPOST('fiscalyearmonth', 'int'), GETPOST('fiscalyearday', 'int'), GETPOST('fiscalyearyear', 'int')); +$date_end = dol_mktime(0, 0, 0, GETPOST('fiscalyearendmonth', 'int'), GETPOST('fiscalyearendday', 'int'), GETPOST('fiscalyearendyear', 'int')); /* * Actions */ -if ($action == 'confirm_delete' && $confirm == "yes") -{ - $result=$object->delete($id); - if ($result >= 0) - { - header("Location: fiscalyear.php"); - exit; - } - else - { - setEventMessages($object->error, $object->errors, 'errors'); - } -} +if ($action == 'confirm_delete' && $confirm == "yes") { + $result = $object->delete($id); + if ($result >= 0) { + header("Location: fiscalyear.php"); + exit(); + } else { + setEventMessages($object->error, $object->errors, 'errors'); + } +} -else if ($action == 'add') -{ - if (! GETPOST('cancel','alpha')) - { - $error=0; - - $object->date_start = $date_start; - $object->date_end = $date_end; - $object->label = GETPOST('label','alpha'); - $object->statut = GETPOST('statut','int'); - $object->datec = dol_now(); - - if (empty($object->date_start) && empty($object->date_end)) - { - setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Date")), null, 'errors'); - $error++; - } - if (empty($object->label)) - { - setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Label")), null, 'errors'); - $error++; - } - - if (! $error) - { +else if ($action == 'add') { + if (! GETPOST('cancel', 'alpha')) { + $error = 0; + + $object->date_start = $date_start; + $object->date_end = $date_end; + $object->label = GETPOST('label', 'alpha'); + $object->statut = GETPOST('statut', 'int'); + $object->datec = dol_now(); + + if (empty($object->date_start) && empty($object->date_end)) { + setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Date")), null, 'errors'); + $error ++; + } + if (empty($object->label)) { + setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Label")), null, 'errors'); + $error ++; + } + + if (! $error) { $db->begin(); - - $id = $object->create($user); - - if ($id > 0) - { - $db->commit(); - - header("Location: " . $_SERVER["PHP_SELF"] . "?id=" . $id); - exit; - } - else - { - $db->rollback(); - - setEventMessages($object->error, $object->errors, 'errors'); - $action='create'; - } - } - else - { - $action='create'; - } - } - else - { - header("Location: ./fiscalyear.php"); - exit; - } -} + + $id = $object->create($user); + + if ($id > 0) { + $db->commit(); + + header("Location: " . $_SERVER["PHP_SELF"] . "?id=" . $id); + exit(); + } else { + $db->rollback(); + + setEventMessages($object->error, $object->errors, 'errors'); + $action = 'create'; + } + } else { + $action = 'create'; + } + } else { + header("Location: ./fiscalyear.php"); + exit(); + } +} // Update record -else if ($action == 'update') -{ - if (! GETPOST('cancel','alpha')) - { - $result = $object->fetch($id); - - $object->date_start = empty($_POST["fiscalyear"])?'':$date_start; - $object->date_end = empty($_POST["fiscalyearend"])?'':$date_end; - $object->label = GETPOST('label','alpha'); - $object->statut = GETPOST('statut','int'); - - $result = $object->update($user); - - if ($result > 0) - { - header("Location: " . $_SERVER["PHP_SELF"] . "?id=" . $id); - exit; - } - else - { - setEventMessages($object->error, $object->errors, 'errors'); - } - } - else - { - header("Location: " . $_SERVER["PHP_SELF"] . "?id=" . $id); - exit; - } +else if ($action == 'update') { + if (! GETPOST('cancel', 'alpha')) { + $result = $object->fetch($id); + + $object->date_start = empty($_POST["fiscalyear"]) ? '' : $date_start; + $object->date_end = empty($_POST["fiscalyearend"]) ? '' : $date_end; + $object->label = GETPOST('label', 'alpha'); + $object->statut = GETPOST('statut', 'int'); + + $result = $object->update($user); + + if ($result > 0) { + header("Location: " . $_SERVER["PHP_SELF"] . "?id=" . $id); + exit(); + } else { + setEventMessages($object->error, $object->errors, 'errors'); + } + } else { + header("Location: " . $_SERVER["PHP_SELF"] . "?id=" . $id); + exit(); + } } /* @@ -167,176 +145,165 @@ $form = new Form($db); /* * Action create -*/ -if ($action == 'create') -{ - print load_fiche_titre($langs->trans("NewFiscalYear")); - - print ''; - print ''; - print ''; - + */ +if ($action == 'create') { + print load_fiche_titre($langs->trans("NewFiscalYear")); + + print ''; + print ''; + print ''; + dol_fiche_head(); - - print ''; - + + print '
'; + // Label - print ''; - + print ''; + // Date start - print ''; - - // Date end - print ''; - + print ''; + + // Date end + print ''; + // Statut - print ''; - print ''; + print ''; + print ''; print ''; - - print '
'.$langs->trans("Label").'
' . $langs->trans("Label") . '
'.$langs->trans("DateStart").''; - print $form->select_date(($date_start?$date_start:''),'fiscalyear'); - print '
'.$langs->trans("DateEnd").''; - print $form->select_date(($date_end?$date_end:-1),'fiscalyearend'); - print '
' . $langs->trans("DateStart") . ''; + print $form->select_date(($date_start ? $date_start : ''), 'fiscalyear'); + print '
' . $langs->trans("DateEnd") . ''; + print $form->select_date(($date_end ? $date_end : - 1), 'fiscalyearend'); + print '
'.$langs->trans("Statut").'
' . $langs->trans("Statut") . ''; - print $form->selectarray('statut',$statut2label,GETPOST('statut')); - print '
'; + print $form->selectarray('statut', $statut2label, GETPOST('statut')); + print ''; + + print ''; dol_fiche_end(); - - print '
'; - print ''; + + print '
'; + print ''; print '     '; - print ''; + print ''; print '
'; - - print ''; -} -else if ($id) -{ - $result = $object->fetch($id); - if ($result > 0) - { - $head = fiscalyear_prepare_head($object); - - if ($action == 'edit') - { - dol_fiche_head($head, 'card', $langs->trans("FiscalYearCard"), 0, 'cron'); - - print '
' . "\n"; - print ''; - print ''; - print ''; - - print ''; - - // Ref - print ""; - print ''; - - // Label - print ''; - - // Date start - print ''; - - // Date end - print ''; - - // Statut - print ''; + + // Date start + print ''; + + // Date end + print ''; + + // Statut + print ''; + + print '
'.$langs->trans("Ref").''; - print $object->rowid; - print '
'.$langs->trans("Label").''; - print ''; - print '
'.$langs->trans("DateStart").''; - print $form->select_date($object->date_start?$object->date_start:-1,'fiscalyear'); - print '
'.$langs->trans("DateEnd").''; - print $form->select_date($object->date_end?$object->date_end:-1,'fiscalyearend'); - print '
'.$langs->trans("Statut").''; - print $form->selectarray('statut',$statut2label,$object->statut); + + print ''; +} else if ($id) { + $result = $object->fetch($id); + if ($result > 0) { + $head = fiscalyear_prepare_head($object); + + if ($action == 'edit') { + dol_fiche_head($head, 'card', $langs->trans("FiscalYearCard"), 0, 'cron'); + + print '
' . "\n"; + print ''; + print ''; + print ''; + + print ''; + + // Ref + print ""; + print ''; - - print '
' . $langs->trans("Ref") . ''; + print $object->rowid; print '
'; - - print '
'; - print ''; + + // Label + print '
' . $langs->trans("Label") . ''; + print ''; + print '
' . $langs->trans("DateStart") . ''; + print $form->select_date($object->date_start ? $object->date_start : - 1, 'fiscalyear'); + print '
' . $langs->trans("DateEnd") . ''; + print $form->select_date($object->date_end ? $object->date_end : - 1, 'fiscalyearend'); + print '
' . $langs->trans("Statut") . ''; + print $form->selectarray('statut', $statut2label, $object->statut); + print '
'; + + print '
'; + print ''; print '     '; - print ''; - print '
'; - - print ''; - - dol_fiche_end(); - } - else - { - /* - * Confirm delete - */ - if ($action == 'delete') - { - print $form->formconfirm($_SERVER["PHP_SELF"]."?id=".$id,$langs->trans("DeleteFiscalYear"),$langs->trans("ConfirmDeleteFiscalYear"),"confirm_delete"); - - } - - dol_fiche_head($head, 'card', $langs->trans("FiscalYearCard"), 0, 'cron'); - - print ''; - - $linkback = ''.$langs->trans("BackToList").''; - - // Ref - print ''; + + // Statut + print ''; + + print "
'.$langs->trans("Ref").''; - print $object->rowid; + print ''; + print ''; + + print ''; + + dol_fiche_end(); + } else { + /* + * Confirm delete + */ + if ($action == 'delete') { + print $form->formconfirm($_SERVER["PHP_SELF"] . "?id=" . $id, $langs->trans("DeleteFiscalYear"), $langs->trans("ConfirmDeleteFiscalYear"), "confirm_delete"); + } + + dol_fiche_head($head, 'card', $langs->trans("FiscalYearCard"), 0, 'cron'); + + print ''; + + $linkback = '' . $langs->trans("BackToList") . ''; + + // Ref + print ''; - + print ''; + // Label - print '"; - - // Date start - print ''; - + print '"; + + // Date start + print ''; + // Date end - print ''; - - // Statut - print ''; - - print "
' . $langs->trans("Ref") . ''; + print $object->rowid; print ''; print $linkback; - print '
'; - print $form->editfieldkey("Label",'label',$object->label,$object,$conf->global->MAIN_EDIT_ALSO_INLINE,'alpha:32'); - print ''; - print $form->editfieldval("Label",'label',$object->label,$object,$conf->global->MAIN_EDIT_ALSO_INLINE,'alpha:32'); - print "
'; - print $form->editfieldkey("Date",'date_start',$object->date_start,$object,$conf->global->MAIN_EDIT_ALSO_INLINE,'datepicker'); - print ''; - print $form->editfieldval("Date",'date_start',$object->date_start,$object,$conf->global->MAIN_EDIT_ALSO_INLINE,'datepicker'); - print '
'; + print $form->editfieldkey("Label", 'label', $object->label, $object, $conf->global->MAIN_EDIT_ALSO_INLINE, 'alpha:32'); + print ''; + print $form->editfieldval("Label", 'label', $object->label, $object, $conf->global->MAIN_EDIT_ALSO_INLINE, 'alpha:32'); + print "
'; + print $form->editfieldkey("Date", 'date_start', $object->date_start, $object, $conf->global->MAIN_EDIT_ALSO_INLINE, 'datepicker'); + print ''; + print $form->editfieldval("Date", 'date_start', $object->date_start, $object, $conf->global->MAIN_EDIT_ALSO_INLINE, 'datepicker'); + print '
'; - print $form->editfieldkey("Date",'date_end',$object->date_end,$object,$conf->global->MAIN_EDIT_ALSO_INLINE,'datepicker'); - print ''; - print $form->editfieldval("Date",'date_end',$object->date_end,$object,$conf->global->MAIN_EDIT_ALSO_INLINE,'datepicker'); - print '
'.$langs->trans("Status").''.$object->getLibStatut(4).'
"; - - dol_fiche_end(); - - /* - * Barre d'actions - */ - - print '
'; - - print ''.$langs->trans('Modify').''; - - print ''.$langs->trans('Delete').''; - - print '
'; - } - } - else - { - dol_print_error($db); - } + print '
'; + print $form->editfieldkey("Date", 'date_end', $object->date_end, $object, $conf->global->MAIN_EDIT_ALSO_INLINE, 'datepicker'); + print ''; + print $form->editfieldval("Date", 'date_end', $object->date_end, $object, $conf->global->MAIN_EDIT_ALSO_INLINE, 'datepicker'); + print '
' . $langs->trans("Status") . '' . $object->getLibStatut(4) . '
"; + + dol_fiche_end(); + + /* + * Barre d'actions + */ + + print '
'; + + print '' . $langs->trans('Modify') . ''; + + print '' . $langs->trans('Delete') . ''; + + print '
'; + } + } else { + dol_print_error($db); + } } llxFooter(); diff --git a/htdocs/accountancy/admin/fiscalyear_info.php b/htdocs/accountancy/admin/fiscalyear_info.php index 00d50d273af..f1f61a1f8d5 100644 --- a/htdocs/accountancy/admin/fiscalyear_info.php +++ b/htdocs/accountancy/admin/fiscalyear_info.php @@ -16,43 +16,41 @@ */ /** - * \file htdocs/accountancy/admin/fiscalyear_card.php - * \brief Page to show info of a fiscal year + * \file htdocs/accountancy/admin/fiscalyear_card.php + * \brief Page to show info of a fiscal year */ - require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/fiscalyear.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/class/fiscalyear.class.php'; - +require_once DOL_DOCUMENT_ROOT . '/core/lib/fiscalyear.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/functions2.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/class/fiscalyear.class.php'; $langs->load("admin"); $langs->load("compta"); // Security check -if (! $user->admin) accessforbidden(); +if (! $user->admin) + accessforbidden(); -$id = GETPOST('id','int'); +$id = GETPOST('id', 'int'); // View llxHeader(); -if ($id) -{ +if ($id) { $object = new Fiscalyear($db); $object->fetch($id); $object->info($id); - + $head = fiscalyear_prepare_head($object); - + dol_fiche_head($head, 'info', $langs->trans("FiscalYearCard"), 0, 'cron'); - - print '
'; - dol_print_object_info($object); - print '
'; - - print '
'; + + print '
'; + dol_print_object_info($object); + print '
'; + + print ''; } llxFooter(); diff --git a/htdocs/accountancy/admin/importaccounts.php b/htdocs/accountancy/admin/importaccounts.php index 7c38617d66c..15bd063bf9c 100644 --- a/htdocs/accountancy/admin/importaccounts.php +++ b/htdocs/accountancy/admin/importaccounts.php @@ -19,17 +19,16 @@ */ /** - * \file htdocs/accountancy/admin/importaccounts.php - * \ingroup Accounting Expert - * \brief Page import accounting account + * \file htdocs/accountancy/admin/importaccounts.php + * \ingroup Accounting Expert + * \brief Page import accounting account */ - require '../../main.inc.php'; - + // Class -require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php'; -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/html.formventilation.class.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingaccount.class.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/html.formventilation.class.php'; // langs $langs->load("compta"); @@ -38,8 +37,8 @@ $langs->load("main"); $langs->load("accountancy"); // Security check -if (!$user->admin) - accessforbidden(); +if (! $user->admin) + accessforbidden(); llxHeader('', $langs->trans("ImportAccount")); @@ -92,9 +91,9 @@ if ($_POST["action"] == 'import') { } /* -* list accounting account from product -* -*/ + * list accounting account from product + * + */ $page = GETPOST("page"); if ($page < 0) $page = 0; diff --git a/htdocs/accountancy/admin/index.php b/htdocs/accountancy/admin/index.php index 67a708f38d2..6a63ad433cb 100644 --- a/htdocs/accountancy/admin/index.php +++ b/htdocs/accountancy/admin/index.php @@ -23,13 +23,12 @@ */ /** - * \file htdocs/accountancy/admin/index.php - * \ingroup Accounting Expert - * \brief Setup page to configure accounting expert module + * \file htdocs/accountancy/admin/index.php + * \ingroup Accounting Expert + * \brief Setup page to configure accounting expert module */ - require '../../main.inc.php'; - + // Class require_once DOL_DOCUMENT_ROOT . '/core/lib/admin.lib.php'; require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php'; @@ -41,18 +40,18 @@ $langs->load("admin"); $langs->load("accountancy"); // Security check -if (!$user->admin) - accessforbidden(); +if (! $user->admin) + accessforbidden(); $action = GETPOST('action', 'alpha'); // Other parameters ACCOUNTING_* $list = array ( 'ACCOUNTING_LIMIT_LIST_VENTILATION', - 'ACCOUNTING_LENGTH_DESCRIPTION', // adjust size displayed for lines description for dol_trunc - 'ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT', // adjust size displayed for select account description for dol_trunc + 'ACCOUNTING_LENGTH_DESCRIPTION', // adjust size displayed for lines description for dol_trunc + 'ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT', // adjust size displayed for select account description for dol_trunc 'ACCOUNTING_LENGTH_GACCOUNT', - 'ACCOUNTING_LENGTH_AACCOUNT' + 'ACCOUNTING_LENGTH_AACCOUNT' ); $list_account = array ( @@ -71,28 +70,27 @@ $list_account = array ( /* * Actions */ - -$accounting_mode = defined('ACCOUNTING_MODE')?ACCOUNTING_MODE:'RECETTES-DEPENSES'; -if ($action == 'update') -{ - $error = 0; +$accounting_mode = defined('ACCOUNTING_MODE') ? ACCOUNTING_MODE : 'RECETTES-DEPENSES'; - $accounting_modes = array( - 'RECETTES-DEPENSES', - 'CREANCES-DETTES' - ); - - $accounting_mode = GETPOST('accounting_mode','alpha'); +if ($action == 'update') { + $error = 0; - if (in_array($accounting_mode,$accounting_modes)) { - - if (!dolibarr_set_const($db, 'ACCOUNTING_MODE', $accounting_mode, 'chaine', 0, '', $conf->entity)) { - $error++; - } - } else { - $error++; - } + $accounting_modes = array ( + 'RECETTES-DEPENSES', + 'CREANCES-DETTES' + ); + + $accounting_mode = GETPOST('accounting_mode', 'alpha'); + + if (in_array($accounting_mode, $accounting_modes)) { + + if (! dolibarr_set_const($db, 'ACCOUNTING_MODE', $accounting_mode, 'chaine', 0, '', $conf->entity)) { + $error ++; + } + } else { + $error ++; + } $chartofaccounts = GETPOST('chartofaccounts', 'int'); @@ -105,30 +103,27 @@ if ($action == 'update') $error ++; } - foreach ($list as $constname) { - $constvalue = GETPOST($constname, 'alpha'); - - if (!dolibarr_set_const($db, $constname, $constvalue, 'chaine', 0, '', $conf->entity)) { - $error++; - } - } - - foreach ($list_account as $constname) { - $constvalue = GETPOST($constname, 'alpha'); - - if (!dolibarr_set_const($db, $constname, $constvalue, 'chaine', 0, '', $conf->entity)) { - $error++; - } - } - - if (! $error) - { - setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); - } - else - { - setEventMessages($langs->trans("Error"), null, 'errors'); - } + foreach ( $list as $constname ) { + $constvalue = GETPOST($constname, 'alpha'); + + if (! dolibarr_set_const($db, $constname, $constvalue, 'chaine', 0, '', $conf->entity)) { + $error ++; + } + } + + foreach ( $list_account as $constname ) { + $constvalue = GETPOST($constname, 'alpha'); + + if (! dolibarr_set_const($db, $constname, $constvalue, 'chaine', 0, '', $conf->entity)) { + $error ++; + } + } + + if (! $error) { + setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); + } else { + setEventMessages($langs->trans("Error"), null, 'errors'); + } } if ($action == 'setlistsorttodo') { @@ -163,16 +158,15 @@ if ($action == 'setlistsortdone') { llxHeader(); $form = new Form($db); -$formaccountancy = New FormVentilation($db); +$formaccountancy = new FormVentilation($db); -$linkback=''.$langs->trans("BackToModuleList").''; -print load_fiche_titre($langs->trans('ConfigAccountingExpert'),$linkback,'title_setup'); +$linkback = '' . $langs->trans("BackToModuleList") . ''; +print load_fiche_titre($langs->trans('ConfigAccountingExpert'), $linkback, 'title_setup'); $head = admin_accounting_prepare_head($accounting); - -print '
'; -print ''; +print ''; +print ''; print ''; dol_fiche_head($head, 'general', $langs->trans("Configuration"), 0, 'cron'); @@ -182,24 +176,24 @@ print ''; // Cas du parametre ACCOUNTING_MODE print ''; -print ''; +print ''; print "\n"; -print ''; -print ''; +print '\n"; -print ''; -print '\n"; +print ''; +print '\n"; print "
'.$langs->trans('OptionMode').''.$langs->trans('Description').'' . $langs->trans('OptionMode') . '' . $langs->trans('Description') . '
'.$langs->trans('OptionModeTrue').''.nl2br($langs->trans('OptionModeTrueDesc')); +print '
' . $langs->trans('OptionModeTrue') . '' . nl2br($langs->trans('OptionModeTrueDesc')); // Write info on way to count VAT -//if (! empty($conf->global->MAIN_MODULE_COMPTABILITE)) -//{ -// // print "
\n"; -// // print nl2br($langs->trans('OptionModeTrueInfoModuleComptabilite')); -//} -//else -//{ -// // print "
\n"; -// // print nl2br($langs->trans('OptionModeTrueInfoExpert')); -//} +// if (! empty($conf->global->MAIN_MODULE_COMPTABILITE)) +// { +// // print "
\n"; +// // print nl2br($langs->trans('OptionModeTrueInfoModuleComptabilite')); +// } +// else +// { +// // print "
\n"; +// // print nl2br($langs->trans('OptionModeTrueInfoExpert')); +// } print "
'.$langs->trans('OptionModeVirtual').''.nl2br($langs->trans('OptionModeVirtualDesc'))."
' . $langs->trans('OptionModeVirtual') . '' . nl2br($langs->trans('OptionModeVirtualDesc')) . "
\n"; @@ -259,32 +253,30 @@ print ''; print '' . $langs->trans('OtherOptions') . ''; print "\n"; -foreach ($list as $key) -{ - $var=!$var; - - print ''; - +foreach ( $list as $key ) { + $var = ! $var; + + print ''; + // Param - $label = $langs->trans($key); - print ''; - + $label = $langs->trans($key); + print ''; + // Value print ''; - print ''; + print ''; print ''; } -foreach ($list_account as $key) -{ - $var=!$var; - - print ''; - +foreach ( $list_account as $key ) { + $var = ! $var; + + print ''; + // Param - $label = $langs->trans($key); - print ''; - + $label = $langs->trans($key); + print ''; + // Value print ''; print $formaccountancy->select_account($conf->global->$key, $key, 1, '', 1, 1); @@ -323,7 +315,7 @@ print "\n"; dol_fiche_end(); -print '
'; +print '
'; print '
'; diff --git a/htdocs/accountancy/admin/journal.php b/htdocs/accountancy/admin/journal.php index 18f01abb082..e1b76273193 100644 --- a/htdocs/accountancy/admin/journal.php +++ b/htdocs/accountancy/admin/journal.php @@ -22,24 +22,23 @@ */ /** - * \file htdocs/accountancy/admin/journal.php - * \ingroup Accounting Expert - * \brief Setup page to configure accounting expert module + * \file htdocs/accountancy/admin/journal.php + * \ingroup Accounting Expert + * \brief Setup page to configure accounting expert module */ - require '../../main.inc.php'; - + // Class -require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/bank.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/admin.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/bank.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/compta/bank/class/account.class.php'; $langs->load("accountancy"); // Security check -if (!$user->admin) - accessforbidden(); +if (! $user->admin) + accessforbidden(); $action = GETPOST('action', 'alpha'); @@ -49,7 +48,7 @@ $list = array ( 'ACCOUNTING_PURCHASE_JOURNAL', 'ACCOUNTING_SOCIAL_JOURNAL', 'ACCOUNTING_MISCELLANEOUS_JOURNAL', - 'ACCOUNTING_EXPENSEREPORT_JOURNAL' + 'ACCOUNTING_EXPENSEREPORT_JOURNAL' ); /* @@ -82,8 +81,8 @@ llxHeader(); $form = new Form($db); -$linkback=''.$langs->trans("BackToModuleList").''; -print load_fiche_titre($langs->trans('ConfigAccountingExpert'),$linkback,'title_setup'); +$linkback = '' . $langs->trans("BackToModuleList") . ''; +print load_fiche_titre($langs->trans('ConfigAccountingExpert'), $linkback, 'title_setup'); $head = admin_accounting_prepare_head(null); @@ -115,10 +114,8 @@ foreach ( $list as $key ) { print "\n"; - print '
'; - print ''; print ''; print ''; @@ -126,39 +123,37 @@ print "\n"; // Bank account $sql = "SELECT rowid, label, accountancy_journal"; -$sql.= " FROM ".MAIN_DB_PREFIX."bank_account"; -$sql.= " WHERE entity = ".$conf->entity; -$sql.= " AND clos = 0"; -$sql.= " ORDER BY label"; +$sql .= " FROM " . MAIN_DB_PREFIX . "bank_account"; +$sql .= " WHERE entity = " . $conf->entity; +$sql .= " AND clos = 0"; +$sql .= " ORDER BY label"; $resql = $db->query($sql); -if ($resql) -{ +if ($resql) { $numr = $db->num_rows($resql); $i = 0; - + if ($numr > 0) - - while ($i < $numr) - { - $objp = $db->fetch_object($resql); - $var = ! $var; - - print ''; - - // Param - print ''; - - // Value - print ''; - - $i++; - } -} -else dol_print_error($db); + while ( $i < $numr ) { + $objp = $db->fetch_object($resql); + + $var = ! $var; + + print ''; + + // Param + print ''; + + // Value + print ''; + + $i ++; + } +} else + dol_print_error($db); $db->free($resql); print "
' . $langs->trans('JournalFinancial') . '
'; - print ''; - print '
'; + print ''; + print '
\n"; @@ -169,6 +164,5 @@ print '
load("main"); $langs->load("accountancy"); // Security check -if (!$user->admin) accessforbidden(); -if (empty($conf->accounting->enabled)) accessforbidden(); - +if (! $user->admin) { + accessforbidden(); +} +if (empty($conf->accounting->enabled)) { + accessforbidden(); +} + // search & action GETPOST $action = GETPOST('action'); $codeventil_buy = GETPOST('codeventil_buy', 'array'); @@ -73,14 +81,16 @@ $pagenext = $page + 1; if (! empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION) && $conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION >= $conf->liste_limit) { $limit = $conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION; } else { - $limit = GETPOST('limit')?GETPOST('limit','int'):$conf->liste_limit; + $limit = GETPOST('limit') ? GETPOST('limit', 'int') : $conf->liste_limit; } $offset = $limit * $page; -if (! $sortfield) +if (! $sortfield) { $sortfield = "p.ref"; -if (! $sortorder) +} +if (! $sortorder) { $sortorder = "ASC"; +} // Sales or Purchase mode ? if ($action == 'update') { @@ -103,7 +113,7 @@ if ($action == 'update') { $error ++; } } - + if (! empty($btn_changeaccount)) { $msg = '
' . $langs->trans("Processing") . '...
'; if (! empty($chk_prod)) { @@ -115,11 +125,11 @@ if ($action == 'update') { $cpt = 0; foreach ( $chk_prod as $productid ) { - $accounting_account_id=GETPOST('codeventil_'.$productid); + $accounting_account_id = GETPOST('codeventil_' . $productid); - $result=$accounting->fetch($accounting_account_id,null,1); - if ($result<0) { - //setEventMessages(null, $accounting->errors, 'errors'); + $result = $accounting->fetch($accounting_account_id, null, 1); + if ($result < 0) { + // setEventMessages(null, $accounting->errors, 'errors'); $msg .= '
' . $langs->trans("ErrorDB") . ' : ' . $langs->trans("Product") . ' ' . $productid . ' ' . $langs->trans("NotVentilatedinAccount") . ' : id=' . $accounting_account_id . '
' . $sql . '
'; } else { @@ -131,7 +141,7 @@ if ($action == 'update') { $sql .= " SET accountancy_code_sell = " . $accounting->account_number; } $sql .= " WHERE rowid = " . $productid; - + dol_syslog("/accountancy/admin/productaccount.php sql=" . $sql, LOG_DEBUG); if ($db->query($sql)) { $msg .= '
' . $langs->trans("Product") . ' ' . $productid . ' ' . $langs->trans("VentilatedinAccount") . ' : ' . length_accountg($accounting->account_number) . '
'; @@ -146,7 +156,6 @@ if ($action == 'update') { $msg .= '
' . $langs->trans("AnyLineVentilate") . '
'; } $msg .= '
' . $langs->trans("EndProcessing") . '
'; - } } @@ -236,12 +245,12 @@ if ($result) { $num_lines = $db->num_rows($result); $i = 0; - print load_fiche_titre($langs->trans("InitAccountancy"),'','title_setup'); + print_barre_liste($langs->trans("ProductAccountingAccountSelect"), $page, $_SERVER["PHP_SELF"], "", $sortfield, $sortorder, '', $num_lines); print '
'; - - print $langs->trans("InitAccountancyDesc").'
'; + + print $langs->trans("InitAccountancyDesc") . '
'; print '
'; - + print '
'; print ''; print ''; @@ -272,14 +281,14 @@ if ($result) { print_liste_field_titre($langs->trans("Label"), $_SERVER["PHP_SELF"], "p.label", "", $param, '', $sortfield, $sortorder); print_liste_field_titre($langs->trans("Description"), $_SERVER["PHP_SELF"], "l.description", "", $param, '', $sortfield, $sortorder); /* - if ($accounting_product_mode == 'ACCOUNTANCY_BUY') { - print_liste_field_titre($langs->trans("Accountancy_code_buy")); - } else { - print_liste_field_titre($langs->trans("Accountancy_code_sell")); - } - */ + if ($accounting_product_mode == 'ACCOUNTANCY_BUY') { + print_liste_field_titre($langs->trans("Accountancy_code_buy")); + } else { + print_liste_field_titre($langs->trans("Accountancy_code_sell")); + } + */ print_liste_field_titre($langs->trans("AccountAccounting")); - print_liste_field_titre($langs->trans("Modify") . '
/ ','','','','','align="center"'); + print_liste_field_titre($langs->trans("Modify") . '
/ ', '', '', '', '', 'align="center"'); print ''; print ''; @@ -345,26 +354,23 @@ if ($result) { print '' . nl2br(dol_trunc($obj->description, $trunclengh)) . ''; // Accounting account buy - if ($accounting_product_mode == 'ACCOUNTANCY_BUY') - { + if ($accounting_product_mode == 'ACCOUNTANCY_BUY') { // print '' . $obj->accountancy_code_buy . ''; // TODO: replace by select // print '' . $compta_prodbuy . ''; // TODO: we shoul set a user defined value to adjust user square / wide screen size // $trunclenghform = defined('ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT') ? ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT : 50; print ''; - print $form->select_account($compta_prodbuy_id, 'codeventil_'.$product_static->id, 1); + print $form->select_account($compta_prodbuy_id, 'codeventil_' . $product_static->id, 1); print ''; - } - else - { + } else { // Accounting account sell // print '' . $obj->accountancy_code_sell . ''; // TODO: replace by select // TODO: we shoul set a user defined value to adjust user square / wide screen size // $trunclenghform = defined('ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT') ? ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT : 50; print ''; - print $form->select_account($compta_prodsell_id, 'codeventil_'.$product_static->id, 1); + print $form->select_account($compta_prodsell_id, 'codeventil_' . $product_static->id, 1); print ''; } diff --git a/htdocs/accountancy/bookkeeping/balancebymonth.php b/htdocs/accountancy/bookkeeping/balancebymonth.php index c1902c16fee..3404ddcc8df 100644 --- a/htdocs/accountancy/bookkeeping/balancebymonth.php +++ b/htdocs/accountancy/bookkeeping/balancebymonth.php @@ -20,16 +20,15 @@ */ /** - * \file htdocs/accountancy/bookkeeping/balancebymonth.php - * \ingroup Accounting Expert - * \brief Balance by month + * \file htdocs/accountancy/bookkeeping/balancebymonth.php + * \ingroup Accounting Expert + * \brief Balance by month */ - require '../../main.inc.php'; - + // Class -require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/date.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php'; // Langs $langs->load("main"); diff --git a/htdocs/accountancy/bookkeeping/card.php b/htdocs/accountancy/bookkeeping/card.php index 86aca8b8af4..2d7242ff225 100644 --- a/htdocs/accountancy/bookkeeping/card.php +++ b/htdocs/accountancy/bookkeeping/card.php @@ -18,15 +18,14 @@ */ /** - * \file htdocs/accountancy/bookkeeping/card.php - * \ingroup Accounting Expert - * \brief Page to show account + * \file htdocs/accountancy/bookkeeping/card.php + * \ingroup Accounting Expert + * \brief Page to show account */ - require '../../main.inc.php'; // Class -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/bookkeeping.class.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/bookkeeping.class.php'; require_once DOL_DOCUMENT_ROOT . '/accountancy/class/html.formventilation.class.php'; // Langs @@ -34,8 +33,9 @@ $langs->load("accountancy"); // Security check $id = GETPOST('id', 'int'); -if ($user->societe_id > 0) - accessforbidden(); +if ($user->societe_id > 0) { + accessforbidden(); +} $action = GETPOST('action'); $piece_num = GETPOST("piece_num"); @@ -44,150 +44,150 @@ $mesg = ''; $account_number = GETPOST('account_number'); $code_tiers = GETPOST('code_tiers'); -if ($code_tiers==-1) { - $code_tiers=null; +if ($code_tiers == - 1) { + $code_tiers = null; } $label_compte = GETPOST('label_compte'); $debit = price2num(GETPOST('debit')); $credit = price2num(GETPOST('credit')); -$save=GETPOST('save'); -if (!empty($save)) { - $action='add'; +$save = GETPOST('save'); +if (! empty($save)) { + $action = 'add'; } -$update=GETPOST('update'); -if (!empty($update)) { - $action='confirm_update'; +$update = GETPOST('update'); +if (! empty($update)) { + $action = 'confirm_update'; } if ($action == "confirm_update") { - - $error = 0; - - if ((floatval($debit)!=0.0) && (floatval($credit)!=0.0)) { - setEventMessages($langs->trans('ErrorDebitCredit'), null, 'errors'); - $error ++; - } - - if (empty($error)) { - $book = new BookKeeping($db); - - $result = $book->fetch($id); - if ($result < 0) { - setEventMessages($book->error, $book->errors, 'errors'); - } else { - $book->numero_compte = $account_number; - $book->code_tiers = $code_tiers; - $book->label_compte = $label_compte; - $book->debit = $debit; - $book->credit = $credit; - - if (floatval($debit)!=0.0) { - $book->montant = $debit; - $book->sens = 'D'; - } - if (floatval($credit)!=0.0) { - $book->montant = $credit; - $book->sens = 'C'; - } - - $result = $book->update($user); - if ($result < 0) { - setEventMessages($book->error, $book->errors, 'errors'); - } else { - setEventMessages($langs->trans('Saved'), null, 'mesgs'); - $action = ''; - } - } - } -} - -else if ($action == "add") { - $error = 0; - + + $error = 0; + if ((floatval($debit) != 0.0) && (floatval($credit) != 0.0)) { setEventMessages($langs->trans('ErrorDebitCredit'), null, 'errors'); $error ++; } + + if (empty($error)) { + $book = new BookKeeping($db); + + $result = $book->fetch($id); + if ($result < 0) { + setEventMessages($book->error, $book->errors, 'errors'); + } else { + $book->numero_compte = $account_number; + $book->code_tiers = $code_tiers; + $book->label_compte = $label_compte; + $book->debit = $debit; + $book->credit = $credit; + + if (floatval($debit) != 0.0) { + $book->montant = $debit; + $book->sens = 'D'; + } + if (floatval($credit) != 0.0) { + $book->montant = $credit; + $book->sens = 'C'; + } + + $result = $book->update($user); + if ($result < 0) { + setEventMessages($book->error, $book->errors, 'errors'); + } else { + setEventMessages($langs->trans('Saved'), null, 'mesgs'); + $action = ''; + } + } + } +} - if (empty($error)) { - $book = new BookKeeping($db); - +else if ($action == "add") { + $error = 0; + + if ((floatval($debit) != 0.0) && (floatval($credit) != 0.0)) { + setEventMessages($langs->trans('ErrorDebitCredit'), null, 'errors'); + $error ++; + } + + if (empty($error)) { + $book = new BookKeeping($db); + $book->numero_compte = $account_number; - $book->code_tiers = $code_tiers; - $book->label_compte = $label_compte; - $book->debit = $debit; - $book->credit = $credit; - $book->doc_date = GETPOST('doc_date'); - $book->doc_type = GETPOST('doc_type'); - $book->piece_num = $piece_num; - $book->doc_ref = GETPOST('doc_ref'); - $book->code_journal = GETPOST('code_journal'); - $book->fk_doc = GETPOST('fk_doc'); - $book->fk_docdet = GETPOST('fk_docdet'); - + $book->code_tiers = $code_tiers; + $book->label_compte = $label_compte; + $book->debit = $debit; + $book->credit = $credit; + $book->doc_date = GETPOST('doc_date'); + $book->doc_type = GETPOST('doc_type'); + $book->piece_num = $piece_num; + $book->doc_ref = GETPOST('doc_ref'); + $book->code_journal = GETPOST('code_journal'); + $book->fk_doc = GETPOST('fk_doc'); + $book->fk_docdet = GETPOST('fk_docdet'); + if (floatval($debit) != 0.0) { - $book->montant = $debit; - $book->sens = 'D'; - } + $book->montant = $debit; + $book->sens = 'D'; + } if (floatval($credit) != 0.0) { - $book->montant = $credit; - $book->sens = 'C'; - } - - $result = $book->createStd($user); - if ($result < 0) { - setEventMessages($book->error, $book->errors, 'errors'); - } else { - setEventMessages($langs->trans('Saved'), null, 'mesgs'); - $action = ''; - } - } -} + $book->montant = $credit; + $book->sens = 'C'; + } + + $result = $book->createStd($user); + if ($result < 0) { + setEventMessages($book->error, $book->errors, 'errors'); + } else { + setEventMessages($langs->trans('Saved'), null, 'mesgs'); + $action = ''; + } + } +} else if ($action == "confirm_delete") { - $book = new BookKeeping($db); - - $result = $book->fetch($id); - - $piece_num = $book->piece_num; - - if ($result < 0) { - setEventMessages($book->error, $book->errors, 'errors'); - } else { - $result = $book->delete($user); - if ($result < 0) { - setEventMessages($book->error, $book->errors, 'errors'); - } - } - $action = ''; -} + $book = new BookKeeping($db); + + $result = $book->fetch($id); + + $piece_num = $book->piece_num; + + if ($result < 0) { + setEventMessages($book->error, $book->errors, 'errors'); + } else { + $result = $book->delete($user); + if ($result < 0) { + setEventMessages($book->error, $book->errors, 'errors'); + } + } + $action = ''; +} else if ($action == "confirm_create") { - $book = new BookKeeping($db); - - $book->label_compte = ''; - $book->debit = 0; - $book->credit = 0; - $book->doc_date = $date_start = dol_mktime(0, 0, 0, GETPOST('doc_datemonth'), GETPOST('doc_dateday'), GETPOST('doc_dateyear')); - $book->doc_type = GETPOST('doc_type'); - $book->piece_num = GETPOST('next_num_mvt'); - $book->doc_ref = GETPOST('doc_ref'); - $book->code_journal = GETPOST('code_journal'); - $book->fk_doc = 0; - $book->fk_docdet = 0; - - $book->montant = 0; - - $result = $book->createStd($user); - if ($result < 0) { - setEventMessages($book->error, $book->errors, 'errors'); - } else { - setEventMessages($langs->trans('Saved'), null, 'mesgs'); - $action = ''; - $piece_num = $book->piece_num; - } + $book = new BookKeeping($db); + + $book->label_compte = ''; + $book->debit = 0; + $book->credit = 0; + $book->doc_date = $date_start = dol_mktime(0, 0, 0, GETPOST('doc_datemonth'), GETPOST('doc_dateday'), GETPOST('doc_dateyear')); + $book->doc_type = GETPOST('doc_type'); + $book->piece_num = GETPOST('next_num_mvt'); + $book->doc_ref = GETPOST('doc_ref'); + $book->code_journal = GETPOST('code_journal'); + $book->fk_doc = 0; + $book->fk_docdet = 0; + + $book->montant = 0; + + $result = $book->createStd($user); + if ($result < 0) { + setEventMessages($book->error, $book->errors, 'errors'); + } else { + setEventMessages($langs->trans('Saved'), null, 'mesgs'); + $action = ''; + $piece_num = $book->piece_num; + } } llxHeader(); @@ -199,115 +199,115 @@ $formventilation = new FormVentilation($db); * Confirmation to delete the command */ if ($action == 'delete') { - $formconfirm = $html->formconfirm($_SERVER["PHP_SELF"] . '?id=' . $id, $langs->trans('DeleteMvt'), $langs->trans('ConfirmDeleteMvt'), 'confirm_delete', '', 0, 1); - print $formconfirm; + $formconfirm = $html->formconfirm($_SERVER["PHP_SELF"] . '?id=' . $id, $langs->trans('DeleteMvt'), $langs->trans('ConfirmDeleteMvt'), 'confirm_delete', '', 0, 1); + print $formconfirm; } if ($action == 'create') { - print load_fiche_titre($langs->trans("CreateMvts")); - - $code_journal_array = array ( - $conf->global->ACCOUNTING_SELL_JOURNAL => $conf->global->ACCOUNTING_SELL_JOURNAL, - $conf->global->ACCOUNTING_PURCHASE_JOURNAL => $conf->global->ACCOUNTING_PURCHASE_JOURNAL, - $conf->global->ACCOUNTING_SOCIAL_JOURNAL => $conf->global->ACCOUNTING_SOCIAL_JOURNAL, - $conf->global->ACCOUNTING_MISCELLANEOUS_JOURNAL => $conf->global->ACCOUNTING_MISCELLANEOUS_JOURNAL, - $conf->global->ACCOUNTING_EXPENSEREPORT_JOURNAL => $conf->global->ACCOUNTING_EXPENSEREPORT_JOURNAL - ); - - $sql = 'SELECT DISTINCT accountancy_journal FROM '.MAIN_DB_PREFIX.'bank_account WHERE clos=0'; - $resql=$db->query($sql); - if (!$resql) { - setEventMessages($db->lasterror,null,'errors'); - } else { - while ($obj_bank=$db->fetch_object($resql)) { - if (!empty($obj_bank->accountancy_journal)) { - $code_journal_array[$obj_bank->accountancy_journal]=$obj_bank->accountancy_journal; - } - } - } - - $book = new BookKeeping($db); - $next_num_mvt = $book->getNextNumMvt(); - - print ''; - print '' . "\n"; - print '' . "\n"; - - dol_fiche_head(); - - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - - print ''; - print ''; - print ''; - - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print '
' . $langs->trans("NumMvts") . '' . $next_num_mvt . '
' . $langs->trans("Docdate") . ''; - print $html->select_date('', 'doc_date', '', '', '', "create_mvt", 1, 1); - print '
' . $langs->trans("Codejournal") . '' . $html->selectarray('code_journal', $code_journal_array) . '
' . $langs->trans("Docref") . '
' . $langs->trans("Doctype") . '
'; - - dol_fiche_end(); - - print '
'; - print '     '; - print '
'; - - print '
'; + print load_fiche_titre($langs->trans("CreateMvts")); + + $code_journal_array = array ( + $conf->global->ACCOUNTING_SELL_JOURNAL => $conf->global->ACCOUNTING_SELL_JOURNAL, + $conf->global->ACCOUNTING_PURCHASE_JOURNAL => $conf->global->ACCOUNTING_PURCHASE_JOURNAL, + $conf->global->ACCOUNTING_SOCIAL_JOURNAL => $conf->global->ACCOUNTING_SOCIAL_JOURNAL, + $conf->global->ACCOUNTING_MISCELLANEOUS_JOURNAL => $conf->global->ACCOUNTING_MISCELLANEOUS_JOURNAL, + $conf->global->ACCOUNTING_EXPENSEREPORT_JOURNAL => $conf->global->ACCOUNTING_EXPENSEREPORT_JOURNAL + ); + + $sql = 'SELECT DISTINCT accountancy_journal FROM ' . MAIN_DB_PREFIX . 'bank_account WHERE clos=0'; + $resql = $db->query($sql); + if (! $resql) { + setEventMessages($db->lasterror, null, 'errors'); + } else { + while ( $obj_bank = $db->fetch_object($resql) ) { + if (! empty($obj_bank->accountancy_journal)) { + $code_journal_array[$obj_bank->accountancy_journal] = $obj_bank->accountancy_journal; + } + } + } + + $book = new BookKeeping($db); + $next_num_mvt = $book->getNextNumMvt(); + + print '
'; + print '' . "\n"; + print '' . "\n"; + + dol_fiche_head(); + + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + + print ''; + print ''; + print ''; + + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print '
' . $langs->trans("NumMvts") . '' . $next_num_mvt . '
' . $langs->trans("Docdate") . ''; + print $html->select_date('', 'doc_date', '', '', '', "create_mvt", 1, 1); + print '
' . $langs->trans("Codejournal") . '' . $html->selectarray('code_journal', $code_journal_array) . '
' . $langs->trans("Docref") . '
' . $langs->trans("Doctype") . '
'; + + dol_fiche_end(); + + print '
'; + print '     '; + print '
'; + + print '
'; } else { - $book = new BookKeeping($db); - $result = $book->fetchPerMvt($piece_num); - if ($result < 0) { - setEventMessages($book->error, $book->errors, 'errors'); - } - if (! empty($book->piece_num)) { - - print load_fiche_titre($langs->trans("UpdateMvts")); - - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print '
' . $langs->trans("NumMvts") . '' . $book->piece_num . '
' . $langs->trans("Docdate") . '' . dol_print_date($book->doc_date, 'daytextshort') . '
' . $langs->trans("Codejournal") . '' . $book->code_journal . '
' . $langs->trans("Docref") . '' . $book->doc_ref . '
' . $langs->trans("Doctype") . '' . $book->doc_type . '
'; - - $result = $book->fetch_all_per_mvt($piece_num); - if ($result < 0) { - setEventMessages($book->error, $book->errors, 'errors'); - } else { - - print load_fiche_titre($langs->trans("ListeMvts")); + $book = new BookKeeping($db); + $result = $book->fetchPerMvt($piece_num); + if ($result < 0) { + setEventMessages($book->error, $book->errors, 'errors'); + } + if (! empty($book->piece_num)) { + + print load_fiche_titre($langs->trans("UpdateMvts"), '' . $langs->trans('BackToList') . ''); + + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print '
' . $langs->trans("NumMvts") . '' . $book->piece_num . '
' . $langs->trans("Docdate") . '' . dol_print_date($book->doc_date, 'daytextshort') . '
' . $langs->trans("Codejournal") . '' . $book->code_journal . '
' . $langs->trans("Docref") . '' . $book->doc_ref . '
' . $langs->trans("Doctype") . '' . $book->doc_type . '
'; + + $result = $book->fetch_all_per_mvt($piece_num); + if ($result < 0) { + setEventMessages($book->error, $book->errors, 'errors'); + } else { + + print load_fiche_titre($langs->trans("ListeMvts")); print '
'; print '' . "\n"; @@ -317,101 +317,104 @@ if ($action == 'create') { print '' . "\n"; print '' . "\n"; - print ""; - if (count($book->linesmvt) > 0) { - - $total_debit=0; - $total_credit=0; + print "
"; + if (count($book->linesmvt) > 0) { - print ''; - - print_liste_field_titre($langs->trans("Numerocompte")); - print_liste_field_titre($langs->trans("Code_tiers")); - print_liste_field_titre($langs->trans("Labelcompte")); - print_liste_field_titre($langs->trans("Debit")); - print_liste_field_titre($langs->trans("Credit")); - print_liste_field_titre($langs->trans("Amount")); - print_liste_field_titre($langs->trans("Sens")); - print_liste_field_titre(''); - - print "\n"; - - foreach ( $book->linesmvt as $line ) { - $var = ! $var; - print ""; - - $total_debit+=$line->debit; - $total_credit+=$line->credit; + $total_debit = 0; + $total_credit = 0; + + print ''; + + print_liste_field_titre($langs->trans("Numerocompte")); + print_liste_field_titre($langs->trans("Code_tiers")); + print_liste_field_titre($langs->trans("Labelcompte")); + print_liste_field_titre($langs->trans("Debit")); + print_liste_field_titre($langs->trans("Credit")); + print_liste_field_titre($langs->trans("Amount")); + print_liste_field_titre($langs->trans("Sens")); + print_liste_field_titre(''); + + print "\n"; + + foreach ( $book->linesmvt as $line ) { + $var = ! $var; + print ""; - if ($action == 'update' && $line->id == $id) { - + $total_debit += $line->debit; + $total_credit += $line->credit; + if ($action == 'update' && $line->id == $id) { + print ''; print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; + print ''; + print ''; + print ''; + print ''; + print ''; - } else { - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - - print ''; + } else { + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + + print ''; - } - print "\n"; - } - - if ($total_debit!=$total_credit) { - setEventMessages(null, array('MvtNotCorrectlyBalanced',$total_credit,$total_debit),'errors'); + print img_delete(); + print ''; + + print ''; + } + print "\n"; } - if ($action == "" || $action == 'add') { - $var = ! $var; - print ""; + if ($total_debit != $total_credit) { + setEventMessages(null, array ( + 'MvtNotCorrectlyBalanced', + $total_credit, + $total_debit + ), 'errors'); + } + + if ($action == "" || $action == 'add') { + $var = ! $var; + print ""; print ''; print ''; - print ''; - print ''; - print ''; - print ''; - print ''; + print ''; + print ''; + print ''; + print ''; + print ''; print ''; - print ''; - } - print '
'; - print $formventilation->select_account($line->numero_compte, 'account_number', 0, array (), 1, 1,''); + print $formventilation->select_account($line->numero_compte, 'account_number', 0, array (), 1, 1, ''); print ''; - print $formventilation->select_auxaccount($line->code_tiers, 'code_tiers',1); + print $formventilation->select_auxaccount($line->code_tiers, 'code_tiers', 1); print '' . $line->montant . '' . $line->sens . ''; + print '' . $line->montant . '' . $line->sens . ''; print '' . "\n"; print ''; - print '' . $line->numero_compte . '' . $line->code_tiers . '' . $line->label_compte . '' . $line->debit . '' . $line->credit . '' . $line->montant . '' . $line->sens . ''; + print '' . $line->numero_compte . '' . $line->code_tiers . '' . $line->label_compte . '' . $line->debit . '' . $line->credit . '' . $line->montant . '' . $line->sens . ''; print ''; - print img_edit(); - print ' '; + print img_edit(); + print ' '; print ''; - print img_delete(); - print ''; - - print '
'; print $formventilation->select_account($account_number, 'account_number', 0, array (), 1, 1, ''); print ''; - print $formventilation->select_auxaccount($code_tiers, 'code_tiers',1); + print $formventilation->select_auxaccount($code_tiers, 'code_tiers', 1); print '
'; - print '
'; - } - } - } else { - print load_fiche_titre($langs->trans("NoRecords")); - } + print ''; + } + print ''; + print ''; + } + } + } else { + print load_fiche_titre($langs->trans("NoRecords")); + } } llxFooter(); -$db->close(); +$db->close(); \ No newline at end of file diff --git a/htdocs/accountancy/bookkeeping/list.php b/htdocs/accountancy/bookkeeping/list.php index c517df2d129..d6925ac1995 100644 --- a/htdocs/accountancy/bookkeeping/list.php +++ b/htdocs/accountancy/bookkeeping/list.php @@ -46,10 +46,10 @@ $search_date_end = dol_mktime(0, 0, 0, GETPOST('date_endmonth', 'int'), GETPOST( $search_doc_date = dol_mktime(0, 0, 0, GETPOST('doc_datemonth', 'int'), GETPOST('doc_dateday', 'int'), GETPOST('doc_dateyear', 'int')); if (GETPOST("button_delmvt_x") || GETPOST("button_delmvt")) { - $action='delbookkeepingyear'; + $action = 'delbookkeepingyear'; } if (GETPOST("button_export_csv_x") || GETPOST("button_export_csv")) { - $action='export_csv'; + $action = 'export_csv'; } $search_accountancy_code = GETPOST("search_accountancy_code"); @@ -79,8 +79,6 @@ $search_ledger_code = GETPOST('search_ledger_code', 'alpha'); $limit = GETPOST('limit') ? GETPOST('limit', 'int') : $conf->liste_limit; - - $offset = $limit * $page; $object = new BookKeeping($db); @@ -114,9 +112,8 @@ if (empty($search_date_start)) { } if ($sortorder == "") $sortorder = "ASC"; - if ($sortfield == "") - $sortfield = "t.rowid"; - +if ($sortfield == "") + $sortfield = "t.rowid"; $options = ''; $filter = array (); @@ -181,7 +178,6 @@ if (! empty($search_mvt_num)) { $options .= '&search_mvt_num=' . $search_mvt_num; } - /* * Action */ @@ -218,18 +214,18 @@ if ($action == 'delbookkeeping') { if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); } - //if (!empty($options)) { - // Header("Location: list.php?".urldecode($options)); - //} else { - Header("Location: list.php"); - //} + // if (!empty($options)) { + // Header("Location: list.php?".urldecode($options)); + // } else { + Header("Location: list.php"); + // } exit(); } } elseif ($action == 'export_csv') { $sep = $conf->global->ACCOUNTING_EXPORT_SEPARATORCSV; $journal = 'bookkepping'; - include DOL_DOCUMENT_ROOT.'/accountancy/tpl/export_journal.tpl.php'; + include DOL_DOCUMENT_ROOT . '/accountancy/tpl/export_journal.tpl.php'; $result = $object->fetchAll($sortorder, $sortfield, 0, 0, $filter); if ($result < 0) { @@ -237,32 +233,30 @@ if ($action == 'delbookkeeping') { } foreach ( $object->lines as $line ) { - - if ($conf->global->ACCOUNTING_EXPORT_MODELCSV == 2) - { + + if ($conf->global->ACCOUNTING_EXPORT_MODELCSV == 2) { $sep = ";"; // Model Cegid Expert Export $date = dol_print_date($line->doc_date, '%d%m%Y'); print $date . $sep; print $line->code_journal . $sep; print length_accountg($line->numero_compte) . $sep; - print ' '. $sep; + print ' ' . $sep; print $line->sens . $sep; print price($line->montant) . $sep; print dol_trunc($line->label_compte, 32) . $sep; print $line->doc_ref . $sep; /*print $line->piece_num . $sep; - print length_accounta($line->code_tiers) . $sep; - print . $sep; - print price($line->debit) . $sep; - print price($line->credit) . $sep;*/ + print length_accounta($line->code_tiers) . $sep; + print . $sep; + print price($line->debit) . $sep; + print price($line->credit) . $sep;*/ print "\n"; - } - elseif ($conf->global->ACCOUNTING_EXPORT_MODELCSV == 1) { + } elseif ($conf->global->ACCOUNTING_EXPORT_MODELCSV == 1) { - //Std export + // Std export $date = dol_print_date($line->doc_date, $conf->global->ACCOUNTING_EXPORT_DATE); print $date . $sep; print $line->doc_ref . $sep; @@ -272,14 +266,14 @@ if ($action == 'delbookkeeping') { print price($line->credit) . $sep; /*print $line->piece_num . $sep; - print $line->label_compte . $sep; - print price($line->montant) . $sep; - print $line->sens . $sep;*/ + print $line->label_compte . $sep; + print price($line->montant) . $sep; + print $line->sens . $sep;*/ print $line->code_journal . $sep; print "\n"; - }elseif ($conf->global->ACCOUNTING_EXPORT_MODELCSV == 3) { + } elseif ($conf->global->ACCOUNTING_EXPORT_MODELCSV == 3) { - //Coala export + // Coala export $date = dol_print_date($line->doc_date, '%d/%m/%Y'); print $date . $sep; print $line->code_journal . $sep; @@ -297,7 +291,7 @@ if ($action == 'delbookkeeping') { else { - $title_page=$langs->trans("Bookkeeping") .' '. dol_print_date($search_date_start).'-'.dol_print_date($search_date_end); + $title_page = $langs->trans("Bookkeeping") . ' ' . dol_print_date($search_date_start) . '-' . dol_print_date($search_date_end); llxHeader('', $title_page); @@ -324,15 +318,21 @@ else { } if ($action == 'delbookkeepingyear') { - $form_question=array(); - $delyear=GETPOST('delyear'); + $form_question = array (); + $delyear = GETPOST('delyear'); if (empty($delyear)) { - $delyear=dol_print_date(dol_now(),'%Y'); + $delyear = dol_print_date(dol_now(), '%Y'); } - $year_array=$formventilation->selectyear_accountancy_bookkepping($delyear, 'delyear',0,'array'); + $year_array = $formventilation->selectyear_accountancy_bookkepping($delyear, 'delyear', 0, 'array'); - $form_question['delyear']=array('name'=>'delyear','type'=>'select','label'=>$langs->trans('DelYear'),'values'=>$year_array,'default'=>$delyear); + $form_question['delyear'] = array ( + 'name' => 'delyear', + 'type' => 'select', + 'label' => $langs->trans('DelYear'), + 'values' => $year_array, + 'default' => $delyear + ); $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"], $langs->trans('DeleteMvt'), $langs->trans('ConfirmDeleteMvt'), 'delbookkeepingyearconfirm', $form_question, 0, 1); print $formconfirm; @@ -351,33 +351,32 @@ else { print '';*/ print '
'; - print '
'."\n"; + print '
' . "\n"; print '
'; print '' . $langs->trans("NewAccountingMvt") . ''; - //print '' . $langs->trans("Export") . ''; + // print '' . $langs->trans("Export") . ''; print '
'; print '
'; - /*print '
'; - print $langs->trans('DateStart') . ': '; - print $form->select_date($search_date_start, 'date_start', 0, 0, 1); - print $langs->trans('DateEnd') . ': '; - print $form->select_date($search_date_end, 'date_end', 0, 0, 1); - print '
'; - print '
'; - print $langs->trans('From') . ' ' . $langs->trans('AccountAccounting') . ': '; - print $formventilation->select_account($search_accountancy_code_start, 'search_accountancy_code_start', 1, array (), 1, 1, ''); - print $langs->trans('To') . ' ' . $langs->trans('AccountAccounting') . ': '; - print $formventilation->select_account($search_accountancy_code_end, 'search_accountancy_code_end', 1, array (), 1, 1, ''); - print '
'; - print '
'; - print $langs->trans('From') . ' ' . $langs->trans('ThirdPartyAccount') . ': '; - print $formventilation->select_auxaccount($search_accountancy_aux_code_start, 'search_accountancy_aux_code_start', 1); - print $langs->trans('To') . ' ' . $langs->trans('ThirdPartyAccount') . ': '; - print $formventilation->select_auxaccount($search_accountancy_aux_code_end, 'search_accountancy_aux_code_end', 1); - print '
';*/ + print $langs->trans('DateStart') . ': '; + print $form->select_date($search_date_start, 'date_start', 0, 0, 1); + print $langs->trans('DateEnd') . ': '; + print $form->select_date($search_date_end, 'date_end', 0, 0, 1); + print '
'; + print '
'; + print $langs->trans('From') . ' ' . $langs->trans('AccountAccounting') . ': '; + print $formventilation->select_account($search_accountancy_code_start, 'search_accountancy_code_start', 1, array (), 1, 1, ''); + print $langs->trans('To') . ' ' . $langs->trans('AccountAccounting') . ': '; + print $formventilation->select_account($search_accountancy_code_end, 'search_accountancy_code_end', 1, array (), 1, 1, ''); + print '
'; + print '
'; + print $langs->trans('From') . ' ' . $langs->trans('ThirdPartyAccount') . ': '; + print $formventilation->select_auxaccount($search_accountancy_aux_code_start, 'search_accountancy_aux_code_start', 1); + print $langs->trans('To') . ' ' . $langs->trans('ThirdPartyAccount') . ': '; + print $formventilation->select_auxaccount($search_accountancy_aux_code_end, 'search_accountancy_aux_code_end', 1); + print '
';*/ print ''; print ''; @@ -389,8 +388,8 @@ else { print_liste_field_titre($langs->trans("Labelcompte"), $_SERVER['PHP_SELF'], "bk_label_compte", "", $options, "", $sortfield, $sortorder); print_liste_field_titre($langs->trans("Debit"), $_SERVER['PHP_SELF'], "t.debit", "", $options, 'align="right"', $sortfield, $sortorder); print_liste_field_titre($langs->trans("Credit"), $_SERVER['PHP_SELF'], "t.credit", "", $options, 'align="right"', $sortfield, $sortorder); - //print_liste_field_titre($langs->trans("Amount"), $_SERVER['PHP_SELF'], "t.montant", "", $options, 'align="center"', $sortfield, $sortorder); - //print_liste_field_titre($langs->trans("Sens"), $_SERVER['PHP_SELF'], "t.sens", "", $options, 'align="center"', $sortfield, $sortorder); + // print_liste_field_titre($langs->trans("Amount"), $_SERVER['PHP_SELF'], "t.montant", "", $options, 'align="center"', $sortfield, $sortorder); + // print_liste_field_titre($langs->trans("Sens"), $_SERVER['PHP_SELF'], "t.sens", "", $options, 'align="center"', $sortfield, $sortorder); print_liste_field_titre($langs->trans("Codejournal"), $_SERVER['PHP_SELF'], "t.code_journal", "", $options, 'align="right"', $sortfield, $sortorder); print_liste_field_titre($langs->trans("Action"), $_SERVER["PHP_SELF"], "", $options, "", 'width="60" align="center"', $sortfield, $sortorder); print "\n"; @@ -404,37 +403,37 @@ else { print '
'; print $langs->trans('To') . ': '; print $form->select_date($search_date_end, 'date_end', 0, 0, 1); - //print $form->select_date($search_doc_date, 'doc_date', 0, 0, 1); + // print $form->select_date($search_doc_date, 'doc_date', 0, 0, 1); print ''; print ''; print ''; - //print ''; + // print ''; print ''; - //print ''; + // print ''; print ''; print ''; print ''; - //print ''; - //print ''; + // print ''; + // print ''; print ''; print '"; @@ -465,12 +464,12 @@ else { print ''; print ''; print ''; - //print ''; - //print ''; + // print ''; + // print ''; print ''; print ''; print "\n"; } diff --git a/htdocs/accountancy/bookkeeping/listbyyear.php b/htdocs/accountancy/bookkeeping/listbyyear.php index ea766c16ef9..d04edae3bf2 100644 --- a/htdocs/accountancy/bookkeeping/listbyyear.php +++ b/htdocs/accountancy/bookkeeping/listbyyear.php @@ -40,30 +40,30 @@ $sortfield = GETPOST("sortfield"); $limit = GETPOST('limit') ? GETPOST('limit', 'int') : $conf->liste_limit; $search_date_start = dol_mktime(0, 0, 0, GETPOST('date_startmonth', 'int'), GETPOST('date_startday', 'int'), GETPOST('date_startyear', 'int')); $search_date_end = dol_mktime(0, 0, 0, GETPOST('date_endmonth', 'int'), GETPOST('date_endday', 'int'), GETPOST('date_endyear', 'int')); -$search_doc_type=GETPOST('search_doc_type','alpha'); -$search_doc_date=dol_mktime(0, 0, 0, GETPOST('doc_datemonth', 'int'), GETPOST('doc_dateday', 'int'), GETPOST('doc_dateyear', 'int')); -$search_doc_ref=GETPOST('search_doc_ref','alpha'); -$search_numero_compte=GETPOST('search_numero_compte','alpha'); -$search_numero_compte_start=GETPOST('search_numero_compte_start','alpha'); -if ($search_numero_compte_start==-1) { - $search_numero_compte_start=''; +$search_doc_type = GETPOST('search_doc_type', 'alpha'); +$search_doc_date = dol_mktime(0, 0, 0, GETPOST('doc_datemonth', 'int'), GETPOST('doc_dateday', 'int'), GETPOST('doc_dateyear', 'int')); +$search_doc_ref = GETPOST('search_doc_ref', 'alpha'); +$search_numero_compte = GETPOST('search_numero_compte', 'alpha'); +$search_numero_compte_start = GETPOST('search_numero_compte_start', 'alpha'); +if ($search_numero_compte_start == - 1) { + $search_numero_compte_start = ''; } -$search_numero_compte_end=GETPOST('search_numero_compte_end','alpha'); -if ($search_numero_compte_end==-1) { - $search_numero_compte_end=''; +$search_numero_compte_end = GETPOST('search_numero_compte_end', 'alpha'); +if ($search_numero_compte_end == - 1) { + $search_numero_compte_end = ''; } -$search_code_tiers=GETPOST('search_code_tiers','alpha'); -$search_code_tiers_start=GETPOST('search_code_tiers_start','alpha'); -if ($search_code_tiers_start==-1) { - $search_code_tiers_start=''; +$search_code_tiers = GETPOST('search_code_tiers', 'alpha'); +$search_code_tiers_start = GETPOST('search_code_tiers_start', 'alpha'); +if ($search_code_tiers_start == - 1) { + $search_code_tiers_start = ''; } -$search_code_tiers_end=GETPOST('search_code_tiers_end','alpha'); -if ($search_code_tiers_end==-1) { - $search_code_tiers_end=''; +$search_code_tiers_end = GETPOST('search_code_tiers_end', 'alpha'); +if ($search_code_tiers_end == - 1) { + $search_code_tiers_end = ''; } -$search_label_compte=GETPOST('search_label_compte','alpha'); -$search_sens=GETPOST('search_sens','alpha'); -$search_code_journal=GETPOST('search_code_journal','alpha'); +$search_label_compte = GETPOST('search_label_compte', 'alpha'); +$search_sens = GETPOST('search_sens', 'alpha'); +$search_code_journal = GETPOST('search_code_journal', 'alpha'); $object = new BookKeeping($db); $form = new Form($db); @@ -74,6 +74,7 @@ if (empty($search_date_start)) { $search_date_start = dol_mktime(0, 0, 0, 1, 1, dol_print_date(dol_now(), '%Y')); $search_date_end = dol_mktime(0, 0, 0, 12, 31, dol_print_date(dol_now(), '%Y')); } + if ($sortorder == "") $sortorder = "ASC"; if ($sortfield == "") @@ -171,7 +172,7 @@ if ($result < 0) { setEventMessages($object->error, $object->errors, 'errors'); } -print_barre_liste($langs->trans("Bookkeeping") .' '. dol_print_date($search_date_start).'-'.dol_print_date($search_date_end), $page, $_SERVER['PHP_SELF'], $options, $sortfield, $sortorder, '', $result, $nbtotalofrecords); +print_barre_liste($langs->trans("Bookkeeping") . ' ' . dol_print_date($search_date_start) . '-' . dol_print_date($search_date_end), $page, $_SERVER['PHP_SELF'], $options, $sortfield, $sortorder, '', $result, $nbtotalofrecords); print ''; print '
'; @@ -181,16 +182,16 @@ print $langs->trans('DateEnd') . ': '; print $form->select_date($search_date_end, 'date_end'); print '
'; print '
'; -print $langs->trans('From').' '.$langs->trans('AccountAccounting') . ': '; -print $formventilation->select_account($search_numero_compte_start,'search_numero_compte_start', 1, array (), 1, 1,''); -print $langs->trans('To').' '.$langs->trans('AccountAccounting') . ': '; -print $formventilation->select_account($search_numero_compte_end,'search_numero_compte_end', 1, array (), 1, 1,''); +print $langs->trans('From') . ' ' . $langs->trans('AccountAccounting') . ': '; +print $formventilation->select_account($search_numero_compte_start, 'search_numero_compte_start', 1, array (), 1, 1, ''); +print $langs->trans('To') . ' ' . $langs->trans('AccountAccounting') . ': '; +print $formventilation->select_account($search_numero_compte_end, 'search_numero_compte_end', 1, array (), 1, 1, ''); print '
'; print '
'; -print $langs->trans('From').' '.$langs->trans('ThirdPartyAccount') . ': '; -print $formventilation->select_auxaccount($search_code_tiers_start,'search_code_tiers_start', 1); -print $langs->trans('To').' '.$langs->trans('ThirdPartyAccount') . ': '; -print $formventilation->select_auxaccount($search_code_tiers_end,'searchcode_tiers_end', 1); +print $langs->trans('From') . ' ' . $langs->trans('ThirdPartyAccount') . ': '; +print $formventilation->select_auxaccount($search_code_tiers_start, 'search_code_tiers_start', 1); +print $langs->trans('To') . ' ' . $langs->trans('ThirdPartyAccount') . ': '; +print $formventilation->select_auxaccount($search_code_tiers_end, 'searchcode_tiers_end', 1); print '
'; print "
'; - //print $langs->trans('From') . ' ' . $langs->trans('AccountAccounting') . ': '; + // print $langs->trans('From') . ' ' . $langs->trans('AccountAccounting') . ': '; print $langs->trans('From'); print $formventilation->select_account($search_accountancy_code_start, 'search_accountancy_code_start', 1, array (), 1, 1, ''); - //print $langs->trans('To') . ' ' . $langs->trans('AccountAccounting') . ': '; + // print $langs->trans('To') . ' ' . $langs->trans('AccountAccounting') . ': '; print '
'; print $langs->trans('To'); print $formventilation->select_account($search_accountancy_code_end, 'search_accountancy_code_end', 1, array (), 1, 1, ''); print '
'; - //print $langs->trans('From') . ' ' . $langs->trans('ThirdPartyAccount') . ': '; + // print $langs->trans('From') . ' ' . $langs->trans('ThirdPartyAccount') . ': '; print $langs->trans('From'); print $formventilation->select_auxaccount($search_accountancy_aux_code_start, 'search_accountancy_aux_code_start', 1); - //print $langs->trans('To') . ' ' . $langs->trans('ThirdPartyAccount') . ': '; + // print $langs->trans('To') . ' ' . $langs->trans('ThirdPartyAccount') . ': '; print '
'; print $langs->trans('To'); print $formventilation->select_auxaccount($search_accountancy_aux_code_end, 'search_accountancy_aux_code_end', 1); print '
'; - print ''; + print ''; print '      '; print ''; @@ -446,14 +445,14 @@ else { $var = True; - $total_debit=0; - $total_credit=0; + $total_debit = 0; + $total_credit = 0; foreach ( $object->lines as $line ) { $var = ! $var; - $total_debit+=$line->debit; - $total_credit+=$line->credit; + $total_debit += $line->debit; + $total_credit += $line->credit; print "
' . $line->label_compte . '' . price($line->debit) . '' . price($line->credit) . '' . price($line->montant) . '' . $line->sens . '' . price($line->montant) . '' . $line->sens . '' . $line->code_journal . ''; print '' . img_edit() . ''; - print '' . img_delete() . ''; + print '' . img_delete() . ''; print '
"; @@ -213,31 +214,31 @@ print "\n"; print ''; print ''; print ''; print ''; print ''; print ''; print ''; print ''; print ''; print ''; print ''; print ''; + $var = ! $var; + print ''; print ''; print ''; print ''; @@ -242,10 +289,10 @@ $resql = $db->query($sql); if ($resql) { $i = 0; $num = $db->num_rows($resql); - + while ( $i < $num ) { $row = $db->fetch_row($resql); - + print ''; print ''; print ''; @@ -286,7 +333,7 @@ if (! empty($conf->margin->enabled)) { print ''; print ''; print ''; - + $sql = "SELECT '" . $langs->trans("Vide") . "' AS 'Marge',"; $sql .= " ROUND(SUM(IF(MONTH(f.datef)=1,(fd.total_ht-(fd.qty * fd.buy_price_ht)),0)),2) AS 'Janvier',"; $sql .= " ROUND(SUM(IF(MONTH(f.datef)=2,(fd.total_ht-(fd.qty * fd.buy_price_ht)),0)),2) AS 'Fevrier',"; @@ -305,7 +352,7 @@ if (! empty($conf->margin->enabled)) { $sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "facture as f ON f.rowid = fd.fk_facture"; $sql .= " WHERE f.datef >= '" . $db->idate(dol_get_first_day($y, 1, false)) . "'"; $sql .= " AND f.datef <= '" . $db->idate(dol_get_last_day($y, 12, false)) . "'"; - + if (! empty($conf->multicompany->enabled)) { $sql .= " AND f.entity IN (" . getEntity("facture", 1) . ")"; } @@ -315,10 +362,10 @@ if (! empty($conf->margin->enabled)) { if ($resql) { $i = 0; $num = $db->num_rows($resql); - + while ( $i < $num ) { $row = $db->fetch_row($resql); - + print ''; print ''; print ''; @@ -346,4 +393,4 @@ print "
'; -print ''; +print ''; print ''; -print ''; +print ''; print ''; -print $form->select_date($search_doc_date,'doc_date',0, 0, 1); +print $form->select_date($search_doc_date, 'doc_date', 0, 0, 1); print ''; -print ''; +print ''; print ''; -print ''; +print ''; print ''; -print ''; +print ''; print ''; -print ''; +print ''; print ''; @@ -250,11 +251,11 @@ print ''; print ''; -print ''; +print ''; print ''; -print ''; +print ''; print ''; diff --git a/htdocs/accountancy/class/accountancysystem.class.php b/htdocs/accountancy/class/accountancysystem.class.php index 86c2e5ed3f2..8a6e1d239d8 100644 --- a/htdocs/accountancy/class/accountancysystem.class.php +++ b/htdocs/accountancy/class/accountancysystem.class.php @@ -18,9 +18,9 @@ */ /** - * \file htdocs/accountancy/class/accountancysystem.class.php - * \ingroup Accounting Expert - * \brief File of class to manage accountancy systems + * \file htdocs/accountancy/class/accountancysystem.class.php + * \ingroup Accounting Expert + * \brief File of class to manage accountancy systems */ /** @@ -37,7 +37,7 @@ class AccountancySystem var $label; var $account_number; var $account_parent; - + /** * Constructor * @@ -46,7 +46,7 @@ class AccountancySystem function __construct($db) { $this->db = $db; } - + /** * Insert accountancy system name into database * @@ -55,16 +55,16 @@ class AccountancySystem */ function create($user) { $now = dol_now(); - + $sql = "INSERT INTO " . MAIN_DB_PREFIX . "accounting_system"; $sql .= " (date_creation, fk_user_author, numero, label)"; $sql .= " VALUES (" . $this->db->idate($now) . "," . $user->id . ",'" . $this->numero . "','" . $this->label . "')"; - + dol_syslog(get_class($this) . "::create sql=" . $sql, LOG_DEBUG); $resql = $this->db->query($sql); if ($resql) { $id = $this->db->last_insert_id(MAIN_DB_PREFIX . "accounting_system"); - + if ($id > 0) { $this->rowid = $id; $result = $this->rowid; @@ -78,7 +78,7 @@ class AccountancySystem $this->error = "AccountancySystem::Create Erreur $result"; dol_syslog($this->error, LOG_ERR); } - + return $result; } } \ No newline at end of file diff --git a/htdocs/accountancy/class/accountingaccount.class.php b/htdocs/accountancy/class/accountingaccount.class.php index 856306c3304..df45f027259 100644 --- a/htdocs/accountancy/class/accountingaccount.class.php +++ b/htdocs/accountancy/class/accountingaccount.class.php @@ -20,9 +20,9 @@ */ /** - * \file htdocs/accountancy/class/accountingaccount.class.php - * \ingroup Accounting Expert - * \brief Fichier de la classe des comptes comptable + * \file htdocs/accountancy/class/accountingaccount.class.php + * \ingroup Accounting Expert + * \brief Fichier de la classe des comptes comptable */ /** @@ -33,10 +33,8 @@ class AccountingAccount extends CommonObject var $db; var $error; var $errors; - var $id; var $rowid; - var $datec; // Creation date var $fk_pcg_version; var $pcg_type; @@ -47,45 +45,43 @@ class AccountingAccount extends CommonObject var $fk_user_author; var $fk_user_modif; var $active; - + /** * Constructor * - * @param DoliDB $db Database handle + * @param DoliDB $db Database handle */ - function __construct($db) - { + function __construct($db) { $this->db = $db; } - + /** * Load record in memory * - * @param int $rowid Id - * @param string $account_number Account number - * @param int $limittocurentchart 1=Do not load record if it is into another accounting system - * @return int <0 if KO, >0 if OK + * @param int $rowid Id + * @param string $account_number Account number + * @param int $limittocurentchart 1=Do not load record if it is into another accounting system + * @return int <0 if KO, >0 if OK */ - function fetch($rowid = null, $account_number = null, $limittocurentchart=0) - { + function fetch($rowid = null, $account_number = null, $limittocurentchart = 0) { global $conf; - + if ($rowid || $account_number) { $sql = "SELECT rowid, datec, tms, fk_pcg_version, pcg_type, pcg_subtype, account_number, account_parent, label, fk_user_author, fk_user_modif, active"; - $sql.= " FROM " . MAIN_DB_PREFIX . "accounting_account WHERE"; + $sql .= " FROM " . MAIN_DB_PREFIX . "accounting_account WHERE"; if ($rowid) { $sql .= " rowid = '" . $rowid . "'"; } elseif ($account_number) { $sql .= " account_number = '" . $account_number . "'"; } - if (!empty($limittocurentchart)) { - $sql .=' AND fk_pcg_version IN (SELECT pcg_version FROM '.MAIN_DB_PREFIX.'accounting_system WHERE rowid='.$conf->global->CHARTOFACCOUNTS.')'; + if (! empty($limittocurentchart)) { + $sql .= ' AND fk_pcg_version IN (SELECT pcg_version FROM ' . MAIN_DB_PREFIX . 'accounting_system WHERE rowid=' . $conf->global->CHARTOFACCOUNTS . ')'; } dol_syslog(get_class($this) . "::fetch sql=" . $sql, LOG_DEBUG); $result = $this->db->query($sql); if ($result) { $obj = $this->db->fetch_object($result); - + if ($obj) { $this->id = $obj->rowid; $this->rowid = $obj->rowid; @@ -100,32 +96,31 @@ class AccountingAccount extends CommonObject $this->fk_user_author = $obj->fk_user_author; $this->fk_user_modif = $obj->fk_user_modif; $this->active = $obj->active; - + return $this->id; } else { return 0; } } else { - $this->error="Error " . $this->db->lasterror(); + $this->error = "Error " . $this->db->lasterror(); $this->errors[] = "Error " . $this->db->lasterror(); } } - return -1; + return - 1; } - + /** * Insert line in accounting_account * - * @param User $user Use making action - * @param int $notrigger Disable triggers - * @return int <0 if KO, >0 if OK + * @param User $user Use making action + * @param int $notrigger Disable triggers + * @return int <0 if KO, >0 if OK */ - function create($user, $notrigger = 0) - { + function create($user, $notrigger = 0) { global $conf; $error = 0; $now = dol_now(); - + // Clean parameters if (isset($this->fk_pcg_version)) $this->fk_pcg_version = trim($this->fk_pcg_version); @@ -143,13 +138,13 @@ class AccountingAccount extends CommonObject $this->fk_user_author = trim($this->fk_user_author); if (isset($this->active)) $this->active = trim($this->active); - - // Check parameters - // Put here code to add control on parameters values - + + // Check parameters + // Put here code to add control on parameters values + // Insert request $sql = "INSERT INTO " . MAIN_DB_PREFIX . "accounting_account("; - + $sql .= "datec"; $sql .= ", entity"; $sql .= ", fk_pcg_version"; @@ -160,9 +155,9 @@ class AccountingAccount extends CommonObject $sql .= ", label"; $sql .= ", fk_user_author"; $sql .= ", active"; - + $sql .= ") VALUES ("; - + $sql .= " '" . $this->db->idate($now) . "'"; $sql .= ", " . $conf->entity; $sql .= ", " . (! isset($this->fk_pcg_version) ? 'NULL' : "'" . $this->db->escape($this->fk_pcg_version) . "'"); @@ -173,34 +168,34 @@ class AccountingAccount extends CommonObject $sql .= ", " . (! isset($this->label) ? 'NULL' : "'" . $this->db->escape($this->label) . "'"); $sql .= ", " . $user->id; $sql .= ", " . (! isset($this->active) ? 'NULL' : "'" . $this->db->escape($this->active) . "'"); - + $sql .= ")"; - + $this->db->begin(); - + dol_syslog(get_class($this) . "::create sql=" . $sql, LOG_DEBUG); $resql = $this->db->query($sql); if (! $resql) { $error ++; $this->errors[] = "Error " . $this->db->lasterror(); } - + if (! $error) { $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX . "accounting_account"); - -// if (! $notrigger) { - // Uncomment this and change MYOBJECT to your own tag if you - // want this action calls a trigger. - - // // Call triggers - // include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php'; - // $interface=new Interfaces($this->db); - // $result=$interface->run_triggers('MYOBJECT_CREATE',$this,$user,$langs,$conf); - // if ($result < 0) { $error++; $this->errors=$interface->errors; } - // // End call triggers -// } + + // if (! $notrigger) { + // Uncomment this and change MYOBJECT to your own tag if you + // want this action calls a trigger. + + // // Call triggers + // include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php'; + // $interface=new Interfaces($this->db); + // $result=$interface->run_triggers('MYOBJECT_CREATE',$this,$user,$langs,$conf); + // if ($result < 0) { $error++; $this->errors=$interface->errors; } + // // End call triggers + // } } - + // Commit or rollback if ($error) { foreach ( $this->errors as $errmsg ) { @@ -214,17 +209,16 @@ class AccountingAccount extends CommonObject return $this->id; } } - + /** * Update record * - * @param User $user Use making update - * @return int <0 if KO, >0 if OK + * @param User $user Use making update + * @return int <0 if KO, >0 if OK */ - function update($user) - { + function update($user) { $this->db->begin(); - + $sql = "UPDATE " . MAIN_DB_PREFIX . "accounting_account "; $sql .= " SET fk_pcg_version = " . ($this->fk_pcg_version ? "'" . $this->db->escape($this->fk_pcg_version) . "'" : "null"); $sql .= " , pcg_type = " . ($this->pcg_type ? "'" . $this->db->escape($this->pcg_type) . "'" : "null"); @@ -234,9 +228,9 @@ class AccountingAccount extends CommonObject $sql .= " , label = " . ($this->label ? "'" . $this->db->escape($this->label) . "'" : "null"); $sql .= " , fk_user_modif = " . $user->id; $sql .= " , active = '" . $this->active . "'"; - + $sql .= " WHERE rowid = " . $this->id; - + dol_syslog(get_class($this) . "::update sql=" . $sql, LOG_DEBUG); $result = $this->db->query($sql); if ($result) { @@ -248,25 +242,24 @@ class AccountingAccount extends CommonObject return - 1; } } - + /** * Check usage of accounting code * - * @return int <0 if KO, >0 if OK + * @return int <0 if KO, >0 if OK */ - function checkUsage() - { + function checkUsage() { global $langs; - + $sql = "(SELECT fk_code_ventilation FROM " . MAIN_DB_PREFIX . "facturedet"; $sql .= " WHERE fk_code_ventilation=" . $this->id . ")"; $sql .= "UNION"; $sql .= "(SELECT fk_code_ventilation FROM " . MAIN_DB_PREFIX . "facture_fourn_det"; $sql .= " WHERE fk_code_ventilation=" . $this->id . ")"; - + dol_syslog(get_class($this) . "::checkUsage sql=" . $sql, LOG_DEBUG); $resql = $this->db->query($sql); - + if ($resql) { $num = $this->db->num_rows($resql); if ($num > 0) { @@ -280,42 +273,41 @@ class AccountingAccount extends CommonObject return - 1; } } - + /** * Delete object in database * - * @param User $user User that deletes - * @param int $notrigger 0=triggers after, 1=disable triggers - * @return int <0 if KO, >0 if OK + * @param User $user User that deletes + * @param int $notrigger 0=triggers after, 1=disable triggers + * @return int <0 if KO, >0 if OK */ - function delete($user, $notrigger = 0) - { + function delete($user, $notrigger = 0) { $error = 0; - + $result = $this->checkUsage(); - + if ($result > 0) { - + $this->db->begin(); - -// if (! $error) { -// if (! $notrigger) { - // Uncomment this and change MYOBJECT to your own tag if you - // want this action calls a trigger. - - // // Call triggers - // include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php'; - // $interface=new Interfaces($this->db); - // $result=$interface->run_triggers('ACCOUNTANCY_ACCOUNT_DELETE',$this,$user,$langs,$conf); - // if ($result < 0) { $error++; $this->errors=$interface->errors; } - // // End call triggers -// } -// } - + + // if (! $error) { + // if (! $notrigger) { + // Uncomment this and change MYOBJECT to your own tag if you + // want this action calls a trigger. + + // // Call triggers + // include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php'; + // $interface=new Interfaces($this->db); + // $result=$interface->run_triggers('ACCOUNTANCY_ACCOUNT_DELETE',$this,$user,$langs,$conf); + // if ($result < 0) { $error++; $this->errors=$interface->errors; } + // // End call triggers + // } + // } + if (! $error) { $sql = "DELETE FROM " . MAIN_DB_PREFIX . "accounting_account"; $sql .= " WHERE rowid=" . $this->id; - + dol_syslog(get_class($this) . "::delete sql=" . $sql); $resql = $this->db->query($sql); if (! $resql) { @@ -323,7 +315,7 @@ class AccountingAccount extends CommonObject $this->errors[] = "Error " . $this->db->lasterror(); } } - + // Commit or rollback if ($error) { foreach ( $this->errors as $errmsg ) { @@ -340,47 +332,48 @@ class AccountingAccount extends CommonObject return - 1; } } - + /** - * Return clicable name (with picto eventually) + * Return clicable name (with picto eventually) * - * @param int $withpicto 0=No picto, 1=Include picto into link, 2=Only picto - * @return string Chaine avec URL + * @param int $withpicto 0=No picto, 1=Include picto into link, 2=Only picto + * @return string Chaine avec URL */ - function getNomUrl($withpicto=0) - { + function getNomUrl($withpicto = 0) { global $langs; - - $result=''; - - $link = ''; - $linkend=''; - - $picto='billr'; - - $label=$langs->trans("Show").': '.$this->account_number.' - '.$this->label; - - if ($withpicto) $result.=($link.img_object($label,$picto).$linkend); - if ($withpicto && $withpicto != 2) $result.=' '; - if ($withpicto != 2) $result.=$link.$this->account_number.$linkend; + + $result = ''; + + $link = ''; + $linkend = ''; + + $picto = 'billr'; + + $label = $langs->trans("Show") . ': ' . $this->account_number . ' - ' . $this->label; + + if ($withpicto) + $result .= ($link . img_object($label, $picto) . $linkend); + if ($withpicto && $withpicto != 2) + $result .= ' '; + if ($withpicto != 2) + $result .= $link . $this->account_number . $linkend; return $result; } - + /** * Information on record * * @param int $id of record * @return void */ - function info($id) - { + function info($id) { $sql = 'SELECT a.rowid, a.datec, a.fk_user_author, a.fk_user_modif, a.tms'; $sql .= ' FROM ' . MAIN_DB_PREFIX . 'accounting_account as a'; $sql .= ' WHERE a.rowid = ' . $id; - + dol_syslog(get_class($this) . '::info sql=' . $sql); $result = $this->db->query($sql); - + if ($result) { if ($this->db->num_rows($result)) { $obj = $this->db->fetch_object($result); @@ -403,27 +396,26 @@ class AccountingAccount extends CommonObject dol_print_error($this->db); } } - + /** * Account desactivate * - * @param int $id Id - * @return int <0 if KO, >0 if OK + * @param int $id Id + * @return int <0 if KO, >0 if OK */ - function account_desactivate($id) - { + function account_desactivate($id) { $result = $this->checkUsage(); - + if ($result > 0) { $this->db->begin(); - + $sql = "UPDATE " . MAIN_DB_PREFIX . "accounting_account "; $sql .= "SET active = '0'"; - $sql .= " WHERE rowid = ".$this->db->escape($id); - + $sql .= " WHERE rowid = " . $this->db->escape($id); + dol_syslog(get_class($this) . "::desactivate sql=" . $sql, LOG_DEBUG); $result = $this->db->query($sql); - + if ($result) { $this->db->commit(); return 1; @@ -436,21 +428,20 @@ class AccountingAccount extends CommonObject return - 1; } } - + /** * Account activate * - * @param int $id Id - * @return int <0 if KO, >0 if OK + * @param int $id Id + * @return int <0 if KO, >0 if OK */ - function account_activate($id) - { + function account_activate($id) { $this->db->begin(); - + $sql = "UPDATE " . MAIN_DB_PREFIX . "accounting_account "; $sql .= "SET active = '1'"; - $sql .= " WHERE rowid = ".$this->db->escape($id); - + $sql .= " WHERE rowid = " . $this->db->escape($id); + dol_syslog(get_class($this) . "::activate sql=" . $sql, LOG_DEBUG); $result = $this->db->query($sql); if ($result) { diff --git a/htdocs/accountancy/class/bookkeeping.class.php b/htdocs/accountancy/class/bookkeeping.class.php index 58c13686d1c..dbca9aeddd9 100644 --- a/htdocs/accountancy/class/bookkeeping.class.php +++ b/htdocs/accountancy/class/bookkeeping.class.php @@ -218,7 +218,7 @@ class BookKeeping extends CommonObject $this->date_create = $now; } - $sql = "INSERT INTO " . MAIN_DB_PREFIX . $this->table_element." ("; + $sql = "INSERT INTO " . MAIN_DB_PREFIX . $this->table_element . " ("; $sql .= "doc_date"; $sql .= ", doc_type"; @@ -291,7 +291,6 @@ class BookKeeping extends CommonObject dol_syslog(__METHOD__ . ' ' . join(',', $this->errors), LOG_ERR); } - if (! $error) { if (! $notrigger) { @@ -320,19 +319,18 @@ class BookKeeping extends CommonObject /** * Create object into database * - * @param User $user User that creates - * @param bool $notrigger false=launch triggers after, true=disable triggers - * + * @param User $user User that creates + * @param bool $notrigger false=launch triggers after, true=disable triggers + * * @return int <0 if KO, Id of created object if OK */ - public function createStd(User $user, $notrigger = false) - { + public function createStd(User $user, $notrigger = false) { dol_syslog(__METHOD__, LOG_DEBUG); - + $error = 0; - + // Clean parameters - + if (isset($this->doc_type)) { $this->doc_type = trim($this->doc_type); } @@ -378,86 +376,82 @@ class BookKeeping extends CommonObject if (isset($this->piece_num)) { $this->piece_num = trim($this->piece_num); } - - - + // Check parameters // Put here code to add control on parameters values - + // Insert request $sql = 'INSERT INTO ' . MAIN_DB_PREFIX . $this->table_element . '('; - - $sql.= 'doc_date,'; - $sql.= 'doc_type,'; - $sql.= 'doc_ref,'; - $sql.= 'fk_doc,'; - $sql.= 'fk_docdet,'; - $sql.= 'code_tiers,'; - $sql.= 'numero_compte,'; - $sql.= 'label_compte,'; - $sql.= 'debit,'; - $sql.= 'credit,'; - $sql.= 'montant,'; - $sql.= 'sens,'; - $sql.= 'fk_user_author,'; - $sql.= 'import_key,'; - $sql.= 'code_journal,'; - $sql.= 'piece_num'; - - + + $sql .= 'doc_date,'; + $sql .= 'doc_type,'; + $sql .= 'doc_ref,'; + $sql .= 'fk_doc,'; + $sql .= 'fk_docdet,'; + $sql .= 'code_tiers,'; + $sql .= 'numero_compte,'; + $sql .= 'label_compte,'; + $sql .= 'debit,'; + $sql .= 'credit,'; + $sql .= 'montant,'; + $sql .= 'sens,'; + $sql .= 'fk_user_author,'; + $sql .= 'import_key,'; + $sql .= 'code_journal,'; + $sql .= 'piece_num'; + $sql .= ') VALUES ('; - - $sql .= ' '.(! isset($this->doc_date) || dol_strlen($this->doc_date)==0?'NULL':"'".$this->db->idate($this->doc_date)."'").','; - $sql .= ' '.(! isset($this->doc_type)?'NULL':"'".$this->db->escape($this->doc_type)."'").','; - $sql .= ' '.(! isset($this->doc_ref)?'NULL':"'".$this->db->escape($this->doc_ref)."'").','; - $sql .= ' '.(empty($this->fk_doc)?'0':$this->fk_doc).','; - $sql .= ' '.(empty($this->fk_docdet)?'0':$this->fk_docdet).','; - $sql .= ' '.(! isset($this->code_tiers)?'NULL':"'".$this->db->escape($this->code_tiers)."'").','; - $sql .= ' '.(! isset($this->numero_compte)?'NULL':"'".$this->db->escape($this->numero_compte)."'").','; - $sql .= ' '.(! isset($this->label_compte)?'NULL':"'".$this->db->escape($this->label_compte)."'").','; - $sql .= ' '.(! isset($this->debit)?'NULL':"'".$this->debit."'").','; - $sql .= ' '.(! isset($this->credit)?'NULL':"'".$this->credit."'").','; - $sql .= ' '.(! isset($this->montant)?'NULL':"'".$this->montant."'").','; - $sql .= ' '.(! isset($this->sens)?'NULL':"'".$this->db->escape($this->sens)."'").','; - $sql .= ' '.$user->id.','; - $sql .= ' '.(! isset($this->import_key)?'NULL':"'".$this->db->escape($this->import_key)."'").','; - $sql .= ' '.(! isset($this->code_journal)?'NULL':"'".$this->db->escape($this->code_journal)."'").','; - $sql .= ' '.(! isset($this->piece_num)?'NULL':$this->piece_num); - - + + $sql .= ' ' . (! isset($this->doc_date) || dol_strlen($this->doc_date) == 0 ? 'NULL' : "'" . $this->db->idate($this->doc_date) . "'") . ','; + $sql .= ' ' . (! isset($this->doc_type) ? 'NULL' : "'" . $this->db->escape($this->doc_type) . "'") . ','; + $sql .= ' ' . (! isset($this->doc_ref) ? 'NULL' : "'" . $this->db->escape($this->doc_ref) . "'") . ','; + $sql .= ' ' . (empty($this->fk_doc) ? '0' : $this->fk_doc) . ','; + $sql .= ' ' . (empty($this->fk_docdet) ? '0' : $this->fk_docdet) . ','; + $sql .= ' ' . (! isset($this->code_tiers) ? 'NULL' : "'" . $this->db->escape($this->code_tiers) . "'") . ','; + $sql .= ' ' . (! isset($this->numero_compte) ? 'NULL' : "'" . $this->db->escape($this->numero_compte) . "'") . ','; + $sql .= ' ' . (! isset($this->label_compte) ? 'NULL' : "'" . $this->db->escape($this->label_compte) . "'") . ','; + $sql .= ' ' . (! isset($this->debit) ? 'NULL' : "'" . $this->debit . "'") . ','; + $sql .= ' ' . (! isset($this->credit) ? 'NULL' : "'" . $this->credit . "'") . ','; + $sql .= ' ' . (! isset($this->montant) ? 'NULL' : "'" . $this->montant . "'") . ','; + $sql .= ' ' . (! isset($this->sens) ? 'NULL' : "'" . $this->db->escape($this->sens) . "'") . ','; + $sql .= ' ' . $user->id . ','; + $sql .= ' ' . (! isset($this->import_key) ? 'NULL' : "'" . $this->db->escape($this->import_key) . "'") . ','; + $sql .= ' ' . (! isset($this->code_journal) ? 'NULL' : "'" . $this->db->escape($this->code_journal) . "'") . ','; + $sql .= ' ' . (! isset($this->piece_num) ? 'NULL' : $this->piece_num); + $sql .= ')'; - + $this->db->begin(); - + $resql = $this->db->query($sql); - if (!$resql) { + if (! $resql) { $error ++; $this->errors[] = 'Error ' . $this->db->lasterror(); dol_syslog(__METHOD__ . ' ' . join(',', $this->errors), LOG_ERR); } - - if (!$error) { + + if (! $error) { $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX . $this->table_element); - - if (!$notrigger) { + + if (! $notrigger) { // Uncomment this and change MYOBJECT to your own tag if you // want this action to call a trigger. - - //// Call triggers - //$result=$this->call_trigger('MYOBJECT_CREATE',$user); - //if ($result < 0) $error++; - //// End call triggers + + // // Call triggers + // $result=$this->call_trigger('MYOBJECT_CREATE',$user); + // if ($result < 0) $error++; + // // End call triggers } } - + // Commit or rollback if ($error) { $this->db->rollback(); - + return - 1 * $error; } else { $this->db->commit(); - + return $this->id; } } @@ -581,12 +575,16 @@ class BookKeeping extends CommonObject $sqlwhere = array (); if (count($filter) > 0) { foreach ( $filter as $key => $value ) { - if ($key=='t.doc_date') { + if ($key == 't.doc_date') { $sqlwhere[] = $key . '=\'' . $this->db->idate($value) . '\''; - } elseif($key=='t.doc_date>=' || $key=='t.doc_date<=') { + } elseif ($key == 't.doc_date>=' || $key == 't.doc_date<=') { $sqlwhere[] = $key . '\'' . $this->db->idate($value) . '\''; - } elseif($key=='t.fk_doc' || $key=='t.fk_docdet' ||$key=='t.piece_num') { + } elseif ($key == 't.numero_compte>=' || $key == 't.numero_compte<=' || $key == 't.code_tiers>=' || $key == 't.code_tiers<=') { + $sqlwhere[] = $key . '\'' . $this->db->escape($value) . '\''; + } elseif ($key == 't.fk_doc' || $key == 't.fk_docdet' || $key == 't.piece_num') { $sqlwhere[] = $key . '=' . $value; + } elseif ($key == 't.code_tiers' || $key == 't.numero_compte') { + $sqlwhere[] = $key . ' LIKE \'' . $this->db->escape($value) . '%\''; } else { $sqlwhere[] = $key . ' LIKE \'%' . $this->db->escape($value) . '%\''; } @@ -815,19 +813,19 @@ class BookKeeping extends CommonObject /** * Delete bookkepping by importkey * - * @param string $importkey Import key - * @return int Result + * @param string $importkey Import key + * @return int Result */ function deleteByImportkey($importkey) { $this->db->begin(); - + // first check if line not yet in bookkeeping $sql = "DELETE"; $sql .= " FROM " . MAIN_DB_PREFIX . $this->table_element; $sql .= " WHERE import_key = '" . $importkey . "'"; - + $resql = $this->db->query($sql); - + if (! $resql) { $this->errors[] = "Error " . $this->db->lasterror(); foreach ( $this->errors as $errmsg ) { @@ -837,7 +835,7 @@ class BookKeeping extends CommonObject $this->db->rollback(); return - 1; } - + $this->db->commit(); return 1; } @@ -845,19 +843,19 @@ class BookKeeping extends CommonObject /** * Delete bookkepping by year * - * @param string $delyear year to delete - * @return int Result + * @param string $delyear year to delete + * @return int Result */ function deleteByYear($delyear) { $this->db->begin(); - + // first check if line not yet in bookkeeping $sql = "DELETE"; $sql .= " FROM " . MAIN_DB_PREFIX . $this->table_element; - $sql .= " WHERE YEAR(doc_date) = ".$delyear; - + $sql .= " WHERE YEAR(doc_date) = " . $delyear; + $resql = $this->db->query($sql); - + if (! $resql) { $this->errors[] = "Error " . $this->db->lasterror(); foreach ( $this->errors as $errmsg ) { @@ -867,7 +865,7 @@ class BookKeeping extends CommonObject $this->db->rollback(); return - 1; } - + $this->db->commit(); return 1; } @@ -875,19 +873,19 @@ class BookKeeping extends CommonObject /** * Delete bookkepping by piece number * - * @param int $piecenum peicenum to delete - * @return int Result + * @param int $piecenum peicenum to delete + * @return int Result */ function deleteMvtNum($piecenum) { $this->db->begin(); - + // first check if line not yet in bookkeeping $sql = "DELETE"; $sql .= " FROM " . MAIN_DB_PREFIX . $this->table_element; - $sql .= " WHERE piece_num = ".$piecenum; - + $sql .= " WHERE piece_num = " . $piecenum; + $resql = $this->db->query($sql); - + if (! $resql) { $this->errors[] = "Error " . $this->db->lasterror(); foreach ( $this->errors as $errmsg ) { @@ -897,7 +895,7 @@ class BookKeeping extends CommonObject $this->db->rollback(); return - 1; } - + $this->db->commit(); return 1; } @@ -997,7 +995,7 @@ class BookKeeping extends CommonObject $this->doc_type = $obj->doc_type; } else { $this->error = "Error " . $this->db->lasterror(); - dol_syslog(get_class($this) . "::".__METHOD__ . $this->error, LOG_ERR); + dol_syslog(get_class($this) . "::" . __METHOD__ . $this->error, LOG_ERR); return - 1; } @@ -1069,7 +1067,7 @@ class BookKeeping extends CommonObject } } else { $this->error = "Error " . $this->db->lasterror(); - dol_syslog(get_class($this) . "::fetch_per_mvt " . $this->error, LOG_ERR); + dol_syslog(get_class($this) . "::fetch_all_per_mvt " . $this->error, LOG_ERR); return - 1; } @@ -1079,30 +1077,29 @@ class BookKeeping extends CommonObject /** * Export bookkeping * - * @param string $model Model - * @return int Result + * @param string $model Model + * @return int Result */ - function export_bookkeping($model = 'ebp') - { + function export_bookkeping($model = 'ebp') { $sql = "SELECT rowid, doc_date, doc_type,"; $sql .= " doc_ref, fk_doc, fk_docdet, code_tiers,"; $sql .= " numero_compte, label_compte, debit, credit,"; $sql .= " montant, sens, fk_user_author, import_key, code_journal, piece_num"; $sql .= " FROM " . MAIN_DB_PREFIX . $this->table_element; - + dol_syslog(get_class($this) . "::export_bookkeping", LOG_DEBUG); - + $resql = $this->db->query($sql); - + if ($resql) { $this->linesexport = array (); - + $num = $this->db->num_rows($resql); while ( $obj = $this->db->fetch_object($resql) ) { $line = new BookKeepingLine(); - + $line->id = $obj->rowid; - + $line->doc_date = $this->db->jdate($obj->doc_date); $line->doc_type = $obj->doc_type; $line->doc_ref = $obj->doc_ref; @@ -1117,15 +1114,13 @@ class BookKeeping extends CommonObject $line->sens = $obj->sens; $line->code_journal = $obj->code_journal; $line->piece_num = $obj->piece_num; - + $this->linesexport[] = $line; } $this->db->free($resql); - + return $num; - } - else - { + } else { $this->error = "Error " . $this->db->lasterror(); dol_syslog(get_class($this) . "::export_bookkeping " . $this->error, LOG_ERR); return - 1; diff --git a/htdocs/accountancy/class/html.formventilation.class.php b/htdocs/accountancy/class/html.formventilation.class.php index 9c5a34f643d..b0b58a7a921 100644 --- a/htdocs/accountancy/class/html.formventilation.class.php +++ b/htdocs/accountancy/class/html.formventilation.class.php @@ -1,7 +1,7 @@ +/* Copyright (C) 2013-2016 Florian Henry * Copyright (C) 2013-2014 Olivier Geffroy - * Copyright (C) 2013-2015 Alexandre Spangaro + * Copyright (C) 2013-2016 Alexandre Spangaro * Copyright (C) 2015 Ari Elbaz (elarifr) * * This program is free software; you can redistribute it and/or modify @@ -19,57 +19,57 @@ */ /** - * \file htdocs/accountancy/class/html.formventilation.class.php - * \ingroup Accounting Expert - * \brief File of class with all html predefined components + * \file htdocs/accountancy/class/html.formventilation.class.php + * \ingroup Accounting Expert + * \brief File of class with all html predefined components */ /** - * Class to manage generation of HTML components for bank module + * Class to manage generation of HTML components for bank module */ class FormVentilation extends Form { var $db; var $error; - + /** - * Constructor - * - * @param DoliDB $db Database handler - */ - public function __construct($db) { - $this->db = $db; - } - - /** - * Return select filter with date of transaction + * Constructor * - * @param string $htmlname Name of select field - * @param string $selectedkey Value - * @return string HTML edit field + * @param DoliDB $db Database handler + */ + public function __construct($db) { + $this->db = $db; + } + + /** + * Return select filter with date of transaction + * + * @param string $htmlname Name of select field + * @param string $selectedkey Value + * @return string HTML edit field */ function select_bookkeeping_importkey($htmlname = 'importkey', $selectedkey = '') { - $sql = 'SELECT DISTINCT import_key from ' . MAIN_DB_PREFIX . 'accounting_bookkeeping'; + $sql = 'SELECT DISTINCT import_key from ' . MAIN_DB_PREFIX . 'accounting_bookkeeping'; $sql .= ' ORDER BY import_key DESC'; - + $out = ''; - + return $out; } - + /** - * Return list of accounts with label by chart of accounts + * Return list of accounts with label by chart of accounts * - * @param string $selectid Preselected chart of accounts - * @param string $htmlname Name of field in html form - * @param int $showempty Add an empty field - * @param array $event Event options - * @param int $select_in $selectid value is a aa.rowid (0 default) or aa.account_number (1) - * @param int $select_out set value returned by select 0=rowid (default), 1=account_number - * @param int $aabase set accounting_account base class to display empty=all or from 1 to 8 will display only account beginning by this number - * - * @return string String with HTML select + * @param string $selectid Preselected chart of accounts + * @param string $htmlname Name of field in html form + * @param int $showempty Add an empty field + * @param array $event Event options + * @param int $select_in $selectid value is a aa.rowid (0 default) or aa.account_number (1) + * @param int $select_out set value returned by select 0=rowid (default), 1=account_number + * @param int $aabase set accounting_account base class to display empty=all or from 1 to 8 will display only account beginning by this number + * + * @return string String with HTML select */ function select_account($selectid, $htmlname = 'account', $showempty = 0, $event = array(), $select_in = 0, $select_out = 0, $aabase = '') { global $conf; - - require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; + + require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php'; $out = ''; - + $sql = "SELECT DISTINCT aa.account_number, aa.label, aa.rowid, aa.fk_pcg_version"; $sql .= " FROM " . MAIN_DB_PREFIX . "accounting_account as aa"; $sql .= " INNER JOIN " . MAIN_DB_PREFIX . "accounting_system as asy ON aa.fk_pcg_version = asy.pcg_version"; $sql .= " AND asy.rowid = " . $conf->global->CHARTOFACCOUNTS; $sql .= " AND aa.active = 1"; $sql .= " ORDER BY aa.account_number"; - + dol_syslog(get_class($this) . "::select_account sql=" . $sql, LOG_DEBUG); $resql = $this->db->query($sql); if ($resql) { - + $out .= ajax_combobox($htmlname, $event); $out .= ''; if ($showempty) $out .= ''; @@ -193,7 +193,7 @@ class FormVentilation extends Form while ( $i < $num ) { $obj = $this->db->fetch_object($resql); $label = $obj->pcg_type; - + if (($selectid != '') && $selectid == $obj->pcg_type) { $out .= ''; } else { @@ -211,34 +211,34 @@ class FormVentilation extends Form $this->db->free($resql); return $out; } - + /** - * Return list of accounts with label by sub_class of accounts + * Return list of accounts with label by sub_class of accounts * - * @param string $selectid Preselected pcg_type - * @param string $htmlname Name of field in html form - * @param int $showempty Add an empty field - * @param array $event Event options - * - * @return string String with HTML select + * @param string $selectid Preselected pcg_type + * @param string $htmlname Name of field in html form + * @param int $showempty Add an empty field + * @param array $event Event options + * + * @return string String with HTML select */ function select_pcgsubtype($selectid, $htmlname = 'pcg_subtype', $showempty = 0, $event = array()) { global $conf; - + $out = ''; - + $sql = "SELECT DISTINCT pcg_subtype "; $sql .= " FROM " . MAIN_DB_PREFIX . "accounting_account as aa"; $sql .= " INNER JOIN " . MAIN_DB_PREFIX . "accounting_system as asy ON aa.fk_pcg_version = asy.pcg_version"; $sql .= " AND asy.rowid = " . $conf->global->CHARTOFACCOUNTS; $sql .= " ORDER BY pcg_subtype"; - + dol_syslog(get_class($this) . "::select_pcgsubtype sql=" . $sql, LOG_DEBUG); $resql = $this->db->query($sql); if ($resql) { - + $out .= ajax_combobox($htmlname, $event); - + $out .= ''; } @@ -371,34 +370,34 @@ class FormVentilation extends Form $out_array[''] = ''; } } - + $sql = "SELECT DISTINCT date_format(doc_date,'%Y') as dtyear"; $sql .= " FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping"; $sql .= " ORDER BY doc_date"; - dol_syslog(get_class($this) . "::".__METHOD__, LOG_DEBUG); + dol_syslog(get_class($this) . "::" . __METHOD__, LOG_DEBUG); $resql = $this->db->query($sql); if ($resql) { while ( $obj = $this->db->fetch_object($resql) ) { $selected_html = ''; if ($selected > 0 && $obj->dtyear == $selected) $selected_html = ' selected'; - if ($output_format == 'html' || $output_format == 'options') { - $out .= ''; - } elseif ($output_format == 'array') { - $out_array[$obj->dtyear] = $obj->dtyear; - } + if ($output_format == 'html' || $output_format == 'options') { + $out .= ''; + } elseif ($output_format == 'array') { + $out_array[$obj->dtyear] = $obj->dtyear; + } } } else { $this->error = "Error " . $this->db->lasterror(); - dol_syslog(get_class($this) . "::".__METHOD__ . $this->error, LOG_ERR); + dol_syslog(get_class($this) . "::" . __METHOD__ . $this->error, LOG_ERR); return - 1; } $this->db->free($resql); - + if ($output_format == 'html') { $out .= "\n"; } - + if ($output_format == 'html' || $output_format == 'options') { return $out; } elseif ($output_format == 'array') { diff --git a/htdocs/accountancy/customer/card.php b/htdocs/accountancy/customer/card.php index 964e39efebf..c49dd7ce78a 100644 --- a/htdocs/accountancy/customer/card.php +++ b/htdocs/accountancy/customer/card.php @@ -18,16 +18,15 @@ */ /** - * \file htdocs/accountancy/customer/card.php - * \ingroup Accountancy - * \brief Card customer ventilation + * \file htdocs/accountancy/customer/card.php + * \ingroup Accountancy + * \brief Card customer ventilation */ - require '../../main.inc.php'; // Class -require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/html.formventilation.class.php'; +require_once DOL_DOCUMENT_ROOT . '/compta/facture/class/facture.class.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/html.formventilation.class.php'; // Langs $langs->load("bills"); @@ -40,17 +39,16 @@ $id = GETPOST('id'); // Security check if ($user->societe_id > 0) accessforbidden(); - -/* + + /* * Actions */ if ($action == 'ventil' && $user->rights->accounting->ventilation->dispatch) { - if (! GETPOST('cancel', 'alpha')) - { + if (! GETPOST('cancel', 'alpha')) { $sql = " UPDATE " . MAIN_DB_PREFIX . "facturedet"; $sql .= " SET fk_code_ventilation = " . $codeventil; $sql .= " WHERE rowid = " . $id; - + dol_syslog("/accounting/customer/card.php sql=" . $sql, LOG_DEBUG); $resql = $db->query($sql); if (! $resql) { @@ -91,35 +89,35 @@ if (! empty($id)) { if (! empty($conf->multicompany->enabled)) { $sql .= " AND f.entity IN (" . getEntity("facture", 1) . ")"; } - + dol_syslog("/accounting/customer/card.php sql=" . $sql, LOG_DEBUG); $result = $db->query($sql); - + if ($result) { $num_lines = $db->num_rows($result); $i = 0; - + if ($num_lines) { - + $objp = $db->fetch_object($result); - + print '' . "\n"; print ''; print ''; - - print load_fiche_titre($langs->trans('CustomersVentilation'),'','title_setup'); - - dol_fiche_head(); - + + print load_fiche_titre($langs->trans('CustomersVentilation'), '', 'title_setup'); + + dol_fiche_head(); + print ''; - + // Ref facture print ''; $facture_static->ref = $objp->facnumber; $facture_static->id = $objp->facid; print ''; print ''; - + print ''; print ''; print ''; print '
' . $langs->trans("Invoice") . '' . $facture_static->getNomUrl(1) . '
' . $langs->trans("Line") . '' . nl2br($objp->description) . '
' . $langs->trans("Account") . ''; @@ -127,14 +125,14 @@ if (! empty($id)) { print '
'; - dol_fiche_end(); - + dol_fiche_end(); + print '
'; print ''; print '     '; print ''; print '
'; - + print ''; } else { print "Error"; diff --git a/htdocs/accountancy/customer/index.php b/htdocs/accountancy/customer/index.php index 0b8b842bb99..06446fdc908 100644 --- a/htdocs/accountancy/customer/index.php +++ b/htdocs/accountancy/customer/index.php @@ -21,16 +21,15 @@ */ /** - * \file htdocs/accountancy/customer/index.php - * \ingroup Accounting Expert - * \brief Home customer ventilation + * \file htdocs/accountancy/customer/index.php + * \ingroup Accounting Expert + * \brief Home customer ventilation */ - require '../../main.inc.php'; // Class -require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/date.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php'; // Langs $langs->load("compta"); @@ -44,8 +43,8 @@ if ($user->societe_id > 0) accessforbidden(); if (! $user->rights->accounting->ventilation->read) accessforbidden(); - -// Filter + + // Filter $year = $_GET["year"]; if ($year == 0) { $year_current = strftime("%Y", time()); @@ -58,10 +57,10 @@ if ($year == 0) { // Validate History $action = GETPOST('action'); if ($action == 'validatehistory') { - + $error = 0; $db->begin(); - + if ($db->type == 'pgsql') { $sql1 = "UPDATE " . MAIN_DB_PREFIX . "facturedet as fd"; $sql1 .= " SET fd.fk_code_ventilation = accnt.rowid"; @@ -78,7 +77,7 @@ if ($action == 'validatehistory') { } dol_syslog("htdocs/accountancy/customer/index.php sql=" . $sql, LOG_DEBUG); - + $resql1 = $db->query($sql1); if (! $resql1) { $error ++; @@ -88,6 +87,50 @@ if ($action == 'validatehistory') { $db->commit(); setEventMessages($langs->trans('Dispatched'), null, 'mesgs'); } +} elseif ($action == 'fixaccountancycode') { + $error = 0; + $db->begin(); + + $sql1 = "UPDATE " . MAIN_DB_PREFIX . "facturedet as fd"; + $sql1 .= " SET fd.fk_code_ventilation = 0"; + $sql1 .= ' WHERE fd.fk_code_ventilation NOT IN '; + $sql1 .= ' (SELECT accnt.rowid '; + $sql1 .= ' FROM ' . MAIN_DB_PREFIX . 'accountingaccount as accnt'; + $sql1 .= ' INNER JOIN ' . MAIN_DB_PREFIX . 'accounting_system as syst'; + $sql1 .= ' ON accnt.fk_pcg_version = syst.pcg_version AND syst.rowid=' . $conf->global->CHARTOFACCOUNTS . ')'; + + dol_syslog("htdocs/accountancy/customer/index.php fixaccountancycode", LOG_DEBUG); + + $resql1 = $db->query($sql1); + if (! $resql1) { + $error ++; + $db->rollback(); + setEventMessage($db->lasterror(), 'errors'); + } else { + $db->commit(); + setEventMessage($langs->trans('Done'), 'mesgs'); + } +} elseif ($action == 'cleanaccountancycode') { + $error = 0; + $db->begin(); + + $sql1 = "UPDATE " . MAIN_DB_PREFIX . "facturedet as fd"; + $sql1 .= " SET fd.fk_code_ventilation = 0"; + $sql1 .= " WHERE fd.fk_facture IN ( SELECT f.rowid FROM " . MAIN_DB_PREFIX . "facture as f"; + $sql1 .= " WHERE f.datef >= '" . $db->idate(dol_get_first_day($year_current, 1, false)) . "'"; + $sql1 .= " AND f.datef <= '" . $db->idate(dol_get_last_day($year_current, 12, false)) . "')"; + + dol_syslog("htdocs/accountancy/customer/index.php fixaccountancycode", LOG_DEBUG); + + $resql1 = $db->query($sql1); + if (! $resql1) { + $error ++; + $db->rollback(); + setEventMessage($db->lasterror(), 'errors'); + } else { + $db->commit(); + setEventMessage($langs->trans('Done'), 'mesgs'); + } } /* @@ -101,7 +144,11 @@ $textnextyear = ' ' . $langs->trans("DescVentilCustomer") . ''; -print ''; +print ''; $sql = "SELECT count(*) FROM " . MAIN_DB_PREFIX . "facturedet as fd"; $sql .= " , " . MAIN_DB_PREFIX . "facture as f"; @@ -169,11 +216,11 @@ $resql = $db->query($sql); if ($resql) { $i = 0; $num = $db->num_rows($resql); - + while ( $i < $num ) { $row = $db->fetch_row($resql); - $var=!$var; - print '
' . length_accountg($row[0]) . '
' . length_accountg($row[0]) . '' . $row[1] . '' . price($row[2]) . '' . price($row[3]) . '
' . $row[0] . '' . price($row[1]) . '' . price($row[2]) . '' . $langs->trans("NovemberMin") . '' . $langs->trans("DecemberMin") . '' . $langs->trans("Total") . '
' . $row[0] . '' . price($row[1]) . '' . price($row[2]) . '
\n"; print ''; llxFooter(); -$db->close(); +$db->close(); \ No newline at end of file diff --git a/htdocs/accountancy/customer/lines.php b/htdocs/accountancy/customer/lines.php index 3c899fcdd85..0d5dbc35668 100644 --- a/htdocs/accountancy/customer/lines.php +++ b/htdocs/accountancy/customer/lines.php @@ -21,17 +21,16 @@ */ /** - * \file htdocs/accountancy/customer/lines.php - * \ingroup Accounting Expert - * \brief Page of detail of the lines of ventilation of invoices customers + * \file htdocs/accountancy/customer/lines.php + * \ingroup Accounting Expert + * \brief Page of detail of the lines of ventilation of invoices customers */ - require '../../main.inc.php'; // Class -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/html.formventilation.class.php'; -require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; -require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/html.formventilation.class.php'; +require_once DOL_DOCUMENT_ROOT . '/compta/facture/class/facture.class.php'; +require_once DOL_DOCUMENT_ROOT . '/product/class/product.class.php'; // Langs $langs->load("bills"); @@ -40,35 +39,36 @@ $langs->load("main"); $langs->load("accountancy"); $account_parent = GETPOST('account_parent'); -$changeaccount = GETPOST('changeaccount'); -//Search Getpost -$search_ref = GETPOST('search_ref','alpha'); -$search_invoice = GETPOST('search_invoice','alpha'); -$search_label = GETPOST('search_label','alpha'); -$search_desc = GETPOST('search_desc','alpha'); -$search_amount = GETPOST('search_amount','alpha'); -$search_account = GETPOST('search_account','alpha'); -$search_vat = GETPOST('search_vat','alpha'); +$changeaccount = GETPOST('changeaccount'); +// Search Getpost +$search_ref = GETPOST('search_ref', 'alpha'); +$search_invoice = GETPOST('search_invoice', 'alpha'); +$search_label = GETPOST('search_label', 'alpha'); +$search_desc = GETPOST('search_desc', 'alpha'); +$search_amount = GETPOST('search_amount', 'alpha'); +$search_account = GETPOST('search_account', 'alpha'); +$search_vat = GETPOST('search_vat', 'alpha'); -//Getpost Order and column and limit page -$sortfield = GETPOST('sortfield','alpha'); -$sortorder = GETPOST('sortorder','alpha'); -$page = GETPOST('page','int'); -if ($page < 0) $page = 0; +// Getpost Order and column and limit page +$sortfield = GETPOST('sortfield', 'alpha'); +$sortorder = GETPOST('sortorder', 'alpha'); +$page = GETPOST('page', 'int'); +if ($page < 0) + $page = 0; $pageprev = $page - 1; $pagenext = $page + 1; if (! empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION)) { $limit = $conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION; } else if ($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION <= 0) { - $limit = GETPOST('limit')?GETPOST('limit','int'):$conf->liste_limit; + $limit = GETPOST('limit') ? GETPOST('limit', 'int') : $conf->liste_limit; } else { - $limit = GETPOST('limit')?GETPOST('limit','int'):$conf->liste_limit; + $limit = GETPOST('limit') ? GETPOST('limit', 'int') : $conf->liste_limit; } $offset = $limit * $page; - -if (! $sortfield) $sortfield="f.datef, f.facnumber, l.rowid"; +if (! $sortfield) + $sortfield = "f.datef, f.facnumber, l.rowid"; if (! $sortorder) { if ($conf->global->ACCOUNTING_LIST_SORT_VENTILATION_DONE > 0) { @@ -87,13 +87,13 @@ $formventilation = new FormVentilation($db); // Purge search criteria if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) // Both test are required to be compatible with all browsers { - $search_ref=''; - $search_invoice=''; - $search_label=''; - $search_desc=''; - $search_amount=''; - $search_account=''; - $search_vat=''; + $search_ref = ''; + $search_invoice = ''; + $search_label = ''; + $search_desc = ''; + $search_amount = ''; + $search_account = ''; + $search_vat = ''; } if (is_array($changeaccount) && count($changeaccount) > 0) { @@ -126,7 +126,7 @@ if (is_array($changeaccount) && count($changeaccount) > 0) { llxHeader('', $langs->trans("CustomersVentilation") . ' - ' . $langs->trans("Dispatched")); -print ''; - + /* * Show result array */ print '

'; - + $i = 0; print ""; print ""; @@ -613,19 +567,21 @@ else print ""; print ""; print "\n"; - + $var = true; $r = ''; - + foreach ( $tabpay as $key => $val ) { $date = dol_print_date($db->jdate($val["date"]), 'day'); - - if ($val["lib"] == '(SupplierInvoicePayment)') + + if ($val["lib"] == '(SupplierInvoicePayment)') { $reflabel = $langs->trans('SupplierInvoicePayment'); - if ($val["lib"] == '(CustomerInvoicePayment)') + } + if ($val["lib"] == '(CustomerInvoicePayment)') { $reflabel = $langs->trans('CustomerInvoicePayment'); - - // Bank + } + + // Bank foreach ( $tabbq[$key] as $k => $mt ) { print ""; print ""; @@ -637,10 +593,9 @@ else print ""; print ""; } - + // Third party - if (is_array ( $tabtp[$key])) - { + if (is_array($tabtp[$key])) { foreach ( $tabtp[$key] as $k => $mt ) { if ($k != 'type') { print ""; @@ -654,11 +609,8 @@ else print ""; } } - } - else - { - foreach ( $tabbq[$key] as $k => $mt ) - { + } else { + foreach ( $tabbq[$key] as $k => $mt ) { print ""; print ""; print ""; @@ -672,10 +624,9 @@ else } $var = ! $var; } - + print "
" . $langs->trans("PaymentMode") . "" . $langs->trans("Debit") . "" . $langs->trans("Credit") . "
" . $date . "" . ($mt < 0 ? price(- $mt) : '') . "
" . $date . "" . $reflabel . "
"; - + llxFooter(); } - $db->close(); diff --git a/htdocs/accountancy/journal/index.php b/htdocs/accountancy/journal/index.php index c7a57512073..c6905ee531e 100644 --- a/htdocs/accountancy/journal/index.php +++ b/htdocs/accountancy/journal/index.php @@ -19,13 +19,12 @@ */ /** - * \file htdocs/accountancy/journal/index.php - * \ingroup Accounting Expert - * \brief Index + * \file htdocs/accountancy/journal/index.php + * \ingroup Accounting Expert + * \brief Index */ - require '../../main.inc.php'; - + // Langs $langs->load("compta"); $langs->load("bills"); diff --git a/htdocs/accountancy/journal/purchasesjournal.php b/htdocs/accountancy/journal/purchasesjournal.php index dd0c1f3a4c9..86232bb2029 100644 --- a/htdocs/accountancy/journal/purchasesjournal.php +++ b/htdocs/accountancy/journal/purchasesjournal.php @@ -22,21 +22,20 @@ */ /** - * \file htdocs/accountancy/journal/purchasesjournal.php - * \ingroup Accounting Expert - * \brief Page with purchases journal + * \file htdocs/accountancy/journal/purchasesjournal.php + * \ingroup Accounting Expert + * \brief Page with purchases journal */ - require '../../main.inc.php'; // Class -require_once DOL_DOCUMENT_ROOT.'/core/lib/report.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/bookkeeping.class.php'; -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/report.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/date.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/fourn/class/fournisseur.facture.class.php'; +require_once DOL_DOCUMENT_ROOT . '/fourn/class/fournisseur.class.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/bookkeeping.class.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingaccount.class.php'; // Langs $langs->load("compta"); @@ -60,8 +59,6 @@ if ($user->societe_id > 0) $action = GETPOST('action'); - - /* * Actions */ @@ -115,13 +112,13 @@ if ($result) { // les variables $cptfour = (! empty($conf->global->ACCOUNTING_ACCOUNT_SUPPLIER)) ? $conf->global->ACCOUNTING_ACCOUNT_SUPPLIER : $langs->trans("CodeNotDef"); $cpttva = (! empty($conf->global->ACCOUNTING_VAT_SOLD_ACCOUNT)) ? $conf->global->ACCOUNTING_VAT_SOLD_ACCOUNT : $langs->trans("CodeNotDef"); - + $tabfac = array (); $tabht = array (); $tabtva = array (); $tabttc = array (); $tabcompany = array (); - + $i = 0; while ( $i < $num ) { $obj = $db->fetch_object($result); @@ -135,9 +132,9 @@ if ($result) { $compta_prod = (! empty($conf->global->ACCOUNTING_SERVICE_BUY_ACCOUNT)) ? $conf->global->ACCOUNTING_SERVICE_BUY_ACCOUNT : $langs->trans("CodeNotDef"); } $compta_tva = (! empty($obj->account_tva) ? $obj->account_tva : $cpttva); - + $tabfac[$obj->rowid]["date"] = $obj->df; - $tabfac[$obj->rowid]["ref"] = $obj->ref_supplier.' ('.$obj->ref.')'; + $tabfac[$obj->rowid]["ref"] = $obj->ref_supplier . ' (' . $obj->ref . ')'; $tabfac[$obj->rowid]["type"] = $obj->type; $tabfac[$obj->rowid]["description"] = $obj->description; $tabfac[$obj->rowid]["fk_facturefourndet"] = $obj->fdid; @@ -147,9 +144,9 @@ if ($result) { $tabcompany[$obj->rowid] = array ( 'id' => $obj->socid, 'name' => $obj->name, - 'code_fournisseur' => $obj->code_compta_fournisseur + 'code_fournisseur' => $obj->code_compta_fournisseur ); - + $i ++; } } else { @@ -160,11 +157,11 @@ if ($result) { if ($action == 'writebookkeeping') { $now = dol_now(); $error = 0; - + foreach ( $tabfac as $key => $val ) { foreach ( $tabttc[$key] as $k => $mt ) { // get compte id and label - + $bookkeeping = new BookKeeping($db); $bookkeeping->doc_date = $val["date"]; $bookkeeping->doc_ref = $val["ref"]; @@ -181,14 +178,14 @@ if ($action == 'writebookkeeping') { $bookkeeping->credit = ($mt > 0) ? $mt : 0; $bookkeeping->code_journal = $conf->global->ACCOUNTING_PURCHASE_JOURNAL; $bookkeeping->fk_user_author = $user->id; - + $result = $bookkeeping->create($user); if ($result < 0) { $error ++; setEventMessages($object->error, $object->errors, 'errors'); } } - + // Product / Service foreach ( $tabht[$key] as $k => $mt ) { if ($mt) { @@ -211,7 +208,7 @@ if ($action == 'writebookkeeping') { $bookkeeping->credit = ($mt <= 0) ? $mt : 0; $bookkeeping->code_journal = $conf->global->ACCOUNTING_PURCHASE_JOURNAL; $bookkeeping->fk_user_author = $user->id; - + $result = $bookkeeping->create($user); if ($result < 0) { $error ++; @@ -220,7 +217,7 @@ if ($action == 'writebookkeeping') { } } } - + // VAT // var_dump($tabtva); foreach ( $tabtva[$key] as $k => $mt ) { @@ -242,7 +239,7 @@ if ($action == 'writebookkeeping') { $bookkeeping->credit = ($mt <= 0) ? $mt : 0; $bookkeeping->code_journal = $conf->global->ACCOUNTING_PURCHASE_JOURNAL; $bookkeeping->fk_user_author = $user->id; - + $result = $bookkeeping->create($user); if ($result < 0) { $error ++; @@ -251,13 +248,12 @@ if ($action == 'writebookkeeping') { } } } - + if (empty($error)) { setEventMessages($langs->trans("GeneralLedgerIsWritten"), null, 'mesgs'); } } - /* * View */ @@ -265,26 +261,26 @@ if ($action == 'writebookkeeping') { $companystatic = new Fournisseur($db); // Export -if ($action == 'export_csv') -{ +if ($action == 'export_csv') { $sep = $conf->global->ACCOUNTING_EXPORT_SEPARATORCSV; $journal = $conf->global->ACCOUNTING_PURCHASE_JOURNAL; - include DOL_DOCUMENT_ROOT.'/accountancy/tpl/export_journal.tpl.php'; + include DOL_DOCUMENT_ROOT . '/accountancy/tpl/export_journal.tpl.php'; - if ($conf->global->ACCOUNTING_EXPORT_MODELCSV == 2) // Model Cegid Expert Export + // Model Cegid Expert Export + if ($conf->global->ACCOUNTING_EXPORT_MODELCSV == 2) { $sep = ";"; foreach ( $tabfac as $key => $val ) { $date = dol_print_date($db->jdate($val["date"]), '%d%m%Y'); - + // Product / Service foreach ( $tabht[$key] as $k => $mt ) { $companystatic->id = $tabcompany[$key]['id']; $companystatic->name = $tabcompany[$key]['name']; $companystatic->client = $tabcompany[$key]['code_client']; - + if ($mt) { print $date . $sep; print $purchase_journal . $sep; @@ -297,7 +293,7 @@ if ($action == 'export_csv') print "\n"; } } - + // VAT foreach ( $tabtva[$key] as $k => $mt ) { if ($mt) { @@ -312,7 +308,7 @@ if ($action == 'export_csv') print "\n"; } } - + foreach ( $tabttc[$key] as $k => $mt ) { print $date . $sep; print $purchase_journal . $sep; @@ -325,19 +321,19 @@ if ($action == 'export_csv') print "\n"; } } - } else // Model Classic Export - { + } else { + // Model Classic Export foreach ( $tabfac as $key => $val ) { $date = dol_print_date($db->jdate($val["date"]), 'day'); - + $companystatic->id = $tabcompany[$key]['id']; $companystatic->name = $tabcompany[$key]['name']; $companystatic->client = $tabcompany[$key]['code_client']; - + // Product / Service foreach ( $tabht[$key] as $k => $mt ) { - $accountingaccount = new AccountingAccount($db); - $accountingaccount->fetch(null, $k); + $accountingaccount = new AccountingAccount($db); + $accountingaccount->fetch(null, $k); if ($mt) { print '"' . $date . '"' . $sep; print '"' . $val["ref"] . '"' . $sep; @@ -360,7 +356,7 @@ if ($action == 'export_csv') print "\n"; } } - + // Third party foreach ( $tabttc[$key] as $k => $mt ) { print '"' . $date . '"' . $sep; @@ -374,28 +370,32 @@ if ($action == 'export_csv') } } } else { - + llxHeader('', $langs->trans("PurchasesJournal")); - + $form = new Form($db); - + $nom = $langs->trans("PurchasesJournal"); $nomlink = ''; $periodlink = ''; $exportlink = ''; $builddate = time(); $description = $langs->trans("DescPurchasesJournal") . '
'; - if (! empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) + if (! empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) { $description .= $langs->trans("DepositsAreNotIncluded"); - else + } else { $description .= $langs->trans("DepositsAreIncluded"); + } + $period = $form->select_date($date_start, 'date_start', 0, 0, 0, '', 1, 0, 1) . ' - ' . $form->select_date($date_end, 'date_end', 0, 0, 0, '', 1, 0, 1); - report_header($nom, $nomlink, $period, $periodlink, $description, $builddate, $exportlink, array('action' => '')); - + report_header($nom, $nomlink, $period, $periodlink, $description, $builddate, $exportlink, array ( + 'action' => '' + )); + print ''; - + print ''; - + print ' '; - + /* * Show result array */ print '

'; - + $i = 0; print ""; print ""; @@ -424,25 +424,25 @@ if ($action == 'export_csv') print ""; print ""; print "\n"; - + $var = true; $r = ''; - + $invoicestatic = new FactureFournisseur($db); - + foreach ( $tabfac as $key => $val ) { $invoicestatic->id = $key; $invoicestatic->ref = $val["ref"]; $invoicestatic->type = $val["type"]; $invoicestatic->description = html_entity_decode(dol_trunc($val["description"], 32)); - + $date = dol_print_date($db->jdate($val["date"]), 'day'); - + // Product / Service foreach ( $tabht[$key] as $k => $mt ) { - $accountingaccount = new AccountingAccount($db); - $accountingaccount->fetch(null, $k); - + $accountingaccount = new AccountingAccount($db); + $accountingaccount->fetch(null, $k); + if ($mt) { print ""; print ""; @@ -467,7 +467,7 @@ if ($action == 'export_csv') } } print ""; - + // Third party foreach ( $tabttc[$key] as $k => $mt ) { print ""; @@ -482,10 +482,10 @@ if ($action == 'export_csv') print '"; } print ""; - + $var = ! $var; } - + print "
" . $langs->trans("Account") . "" . $langs->trans("Type") . "" . $langs->trans("Debit") . "" . $langs->trans("Credit") . "
" . $date . "
" . $date . "' . ($mt >= 0 ? price($mt) : '') . "
"; // End of page diff --git a/htdocs/accountancy/journal/sellsjournal.php b/htdocs/accountancy/journal/sellsjournal.php index 1c7ef749e33..4678a677597 100644 --- a/htdocs/accountancy/journal/sellsjournal.php +++ b/htdocs/accountancy/journal/sellsjournal.php @@ -24,21 +24,20 @@ */ /** - * \file htdocs/accountancy/journal/sellsjournal.php - * \ingroup Accounting Expert - * \brief Page with sells journal + * \file htdocs/accountancy/journal/sellsjournal.php + * \ingroup Accounting Expert + * \brief Page with sells journal */ - require '../../main.inc.php'; // Class -require_once DOL_DOCUMENT_ROOT.'/core/lib/report.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; -require_once DOL_DOCUMENT_ROOT.'/societe/class/client.class.php'; -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/bookkeeping.class.php'; -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/report.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/date.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/compta/facture/class/facture.class.php'; +require_once DOL_DOCUMENT_ROOT . '/societe/class/client.class.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/bookkeeping.class.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingaccount.class.php'; // Langs $langs->load("compta"); @@ -62,8 +61,6 @@ if ($user->societe_id > 0) $action = GETPOST('action'); - - /* * View */ @@ -105,10 +102,9 @@ if (! empty($conf->multicompany->enabled)) { } $sql .= " AND f.fk_statut > 0"; if (! empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) { - $sql.= " AND f.type IN (".Facture::TYPE_STANDARD.",".Facture::TYPE_REPLACEMENT.",".Facture::TYPE_CREDIT_NOTE.",".Facture::TYPE_SITUATION.")"; -} -else { - $sql.= " AND f.type IN (".Facture::TYPE_STANDARD.",".Facture::TYPE_STANDARD.",".Facture::TYPE_CREDIT_NOTE.",".Facture::TYPE_DEPOSIT.",".Facture::TYPE_SITUATION.")"; + $sql .= " AND f.type IN (" . Facture::TYPE_STANDARD . "," . Facture::TYPE_REPLACEMENT . "," . Facture::TYPE_CREDIT_NOTE . "," . Facture::TYPE_SITUATION . ")"; +} else { + $sql .= " AND f.type IN (" . Facture::TYPE_STANDARD . "," . Facture::TYPE_STANDARD . "," . Facture::TYPE_CREDIT_NOTE . "," . Facture::TYPE_DEPOSIT . "," . Facture::TYPE_SITUATION . ")"; } $sql .= " AND fd.product_type IN (0,1)"; if ($date_start && $date_end) @@ -123,16 +119,16 @@ if ($result) { $tabtva = array (); $tabttc = array (); $tabcompany = array (); - + $num = $db->num_rows($result); $i = 0; - + while ( $i < $num ) { $obj = $db->fetch_object($result); // les variables $cptcli = (! empty($conf->global->ACCOUNTING_ACCOUNT_CUSTOMER)) ? $conf->global->ACCOUNTING_ACCOUNT_CUSTOMER : $langs->trans("CodeNotDef"); $compta_soc = (! empty($obj->code_compta)) ? $obj->code_compta : $cptcli; - + $compta_prod = $obj->compte; if (empty($compta_prod)) { if ($obj->product_type == 0) @@ -142,12 +138,12 @@ if ($result) { } $cpttva = (! empty($conf->global->ACCOUNTING_VAT_SOLD_ACCOUNT)) ? $conf->global->ACCOUNTING_VAT_SOLD_ACCOUNT : $langs->trans("CodeNotDef"); $compta_tva = (! empty($obj->account_tva) ? $obj->account_tva : $cpttva); - + // Situation invoices handling $line = new FactureLigne($db); $line->fetch($obj->rowid); $prev_progress = $line->get_prev_progress(); - if ($obj->type==Facture::TYPE_SITUATION) { + if ($obj->type == Facture::TYPE_SITUATION) { // Avoid divide by 0 if ($obj->situation_percent == 0) { $situation_ratio = 0; @@ -157,7 +153,7 @@ if ($result) { } else { $situation_ratio = 1; } - + // Invoice lines $tabfac[$obj->rowid]["date"] = $obj->df; $tabfac[$obj->rowid]["ref"] = $obj->facnumber; @@ -176,9 +172,9 @@ if ($result) { $tabcompany[$obj->rowid] = array ( 'id' => $obj->socid, 'name' => $obj->name, - 'code_client' => $obj->code_compta + 'code_client' => $obj->code_compta ); - + $i ++; } } else { @@ -191,15 +187,12 @@ if ($result) { */ // Bookkeeping Write -if ($action == 'writebookkeeping') -{ +if ($action == 'writebookkeeping') { $now = dol_now(); $error = 0; - - foreach ($tabfac as $key => $val) - { - foreach ($tabttc[$key] as $k => $mt) - { + + foreach ( $tabfac as $key => $val ) { + foreach ( $tabttc[$key] as $k => $mt ) { $bookkeeping = new BookKeeping($db); $bookkeeping->doc_date = $val["date"]; $bookkeeping->doc_ref = $val["ref"]; @@ -216,16 +209,16 @@ if ($action == 'writebookkeeping') $bookkeeping->credit = ($mt < 0) ? $mt : 0; $bookkeeping->code_journal = $conf->global->ACCOUNTING_SELL_JOURNAL; $bookkeeping->fk_user_author = $user->id; - + $result = $bookkeeping->create($user); if ($result < 0) { $error ++; setEventMessages($object->error, $object->errors, 'errors'); } } - + // Product / Service - foreach ($tabht[$key] as $k => $mt) { + foreach ( $tabht[$key] as $k => $mt ) { if ($mt) { // get compte id and label $accountingaccount = new AccountingAccount($db); @@ -246,7 +239,7 @@ if ($action == 'writebookkeeping') $bookkeeping->credit = ($mt >= 0) ? $mt : 0; $bookkeeping->code_journal = $conf->global->ACCOUNTING_SELL_JOURNAL; $bookkeeping->fk_user_author = $user->id; - + $result = $bookkeeping->create($user); if ($result < 0) { $error ++; @@ -255,13 +248,11 @@ if ($action == 'writebookkeeping') } } } - + // VAT // var_dump($tabtva); - foreach ($tabtva[$key] as $k => $mt) - { - if ($mt) - { + foreach ( $tabtva[$key] as $k => $mt ) { + if ($mt) { $bookkeeping = new BookKeeping($db); $bookkeeping->doc_date = $val["date"]; $bookkeeping->doc_ref = $val["ref"]; @@ -278,7 +269,7 @@ if ($action == 'writebookkeeping') $bookkeeping->credit = ($mt >= 0) ? $mt : 0; $bookkeeping->code_journal = $conf->global->ACCOUNTING_SELL_JOURNAL; $bookkeeping->fk_user_author = $user->id; - + $result = $bookkeeping->create($user); if ($result < 0) { $error ++; @@ -287,33 +278,33 @@ if ($action == 'writebookkeeping') } } } - + if (empty($error)) { setEventMessages($langs->trans("GeneralLedgerIsWritten"), null, 'mesgs'); } } // Export -if ($action == 'export_csv') -{ +if ($action == 'export_csv') { $sep = $conf->global->ACCOUNTING_EXPORT_SEPARATORCSV; - $journal = $conf->global->ACCOUNTING_SELL_JOURNAL; - - include DOL_DOCUMENT_ROOT.'/accountancy/tpl/export_journal.tpl.php'; - + $sell_journal = $conf->global->ACCOUNTING_SELL_JOURNAL; + + include DOL_DOCUMENT_ROOT . '/accountancy/tpl/export_journal.tpl.php'; + $companystatic = new Client($db); - - if ($conf->global->ACCOUNTING_EXPORT_MODELCSV == 2) // Model Cegid Expert Export + + // Model Cegid Expert Export + if ($conf->global->ACCOUNTING_EXPORT_MODELCSV == 2) { $sep = ";"; - + foreach ( $tabfac as $key => $val ) { $companystatic->id = $tabcompany[$key]['id']; $companystatic->name = $tabcompany[$key]['name']; $companystatic->client = $tabcompany[$key]['code_client']; - + $date = dol_print_date($db->jdate($val["date"]), '%d%m%Y'); - + foreach ( $tabttc[$key] as $k => $mt ) { print $date . $sep; print $sell_journal . $sep; @@ -325,22 +316,23 @@ if ($action == 'export_csv') print $val["ref"]; print "\n"; } - + // Product / Service foreach ( $tabht[$key] as $k => $mt ) { - if ($mt) { + $accountingaccount_static = new AccountingAccount($db); + if ($accountingaccount_static->fetch(null, $k)) { print $date . $sep; print $sell_journal . $sep; print length_accountg(html_entity_decode($k)) . $sep; print $sep; print ($mt < 0 ? 'D' : 'C') . $sep; print ($mt <= 0 ? price(- $mt) : $mt) . $sep; - print dol_trunc($val["description"], 32) . $sep; + print dol_trunc($accountingaccount_static->label, 32) . $sep; print $val["ref"]; print "\n"; } } - + // TVA foreach ( $tabtva[$key] as $k => $mt ) { if ($mt) { @@ -356,17 +348,15 @@ if ($action == 'export_csv') } } } - } - else // Model Classic Export - { - foreach ($tabfac as $key => $val) - { + } else { + // Model Classic Export + foreach ( $tabfac as $key => $val ) { $companystatic->id = $tabcompany[$key]['id']; $companystatic->name = $tabcompany[$key]['name']; $companystatic->client = $tabcompany[$key]['code_client']; - + $date = dol_print_date($db->jdate($val["date"]), 'day'); - + foreach ( $tabttc[$key] as $k => $mt ) { print '"' . $date . '"' . $sep; print '"' . $val["ref"] . '"' . $sep; @@ -376,13 +366,12 @@ if ($action == 'export_csv') print '"' . ($mt < 0 ? price(- $mt) : '') . '"'; print "\n"; } - + // Product / Service - foreach ($tabht[$key] as $k => $mt) - { + foreach ( $tabht[$key] as $k => $mt ) { $accountingaccount = new AccountingAccount($db); $accountingaccount->fetch(null, $k); - + if ($mt) { print '"' . $date . '"' . $sep; print '"' . $val["ref"] . '"' . $sep; @@ -393,10 +382,9 @@ if ($action == 'export_csv') print "\n"; } } - + // VAT - foreach ($tabtva[$key] as $k => $mt) - { + foreach ( $tabtva[$key] as $k => $mt ) { if ($mt) { print '"' . $date . '"' . $sep; print '"' . $val["ref"] . '"' . $sep; @@ -410,11 +398,11 @@ if ($action == 'export_csv') } } } else { - + $form = new Form($db); - + llxHeader('', $langs->trans("SellsJournal")); - + $nom = $langs->trans("SellsJournal"); $nomlink = ''; $periodlink = ''; @@ -426,12 +414,14 @@ if ($action == 'export_csv') else $description .= $langs->trans("DepositsAreIncluded"); $period = $form->select_date($date_start, 'date_start', 0, 0, 0, '', 1, 0, 1) . ' - ' . $form->select_date($date_end, 'date_end', 0, 0, 0, '', 1, 0, 1); - report_header($nom, $nomlink, $period, $periodlink, $description, $builddate, $exportlink, array('action' => '')); - + report_header($nom, $nomlink, $period, $periodlink, $description, $builddate, $exportlink, array ( + 'action' => '' + )); + print ''; - + print ''; - + print ' '; - + /* * Show result array */ print '

'; - + $i = 0; print ""; print ""; @@ -461,24 +451,22 @@ if ($action == 'export_csv') print ""; print ""; print "\n"; - + $var = true; $r = ''; - + $invoicestatic = new Facture($db); $companystatic = new Client($db); - - foreach ($tabfac as $key => $val) - { + + foreach ( $tabfac as $key => $val ) { $invoicestatic->id = $key; $invoicestatic->ref = $val["ref"]; $invoicestatic->type = $val["type"]; - + $date = dol_print_date($db->jdate($val["date"]), 'day'); - + // Third party - foreach ($tabttc[$key] as $k => $mt) - { + foreach ( $tabttc[$key] as $k => $mt ) { print ""; print ""; print ""; @@ -492,13 +480,12 @@ if ($action == 'export_csv') print ""; } print ""; - + // Product / Service - foreach ($tabht[$key] as $k => $mt) - { + foreach ( $tabht[$key] as $k => $mt ) { $accountingaccount = new AccountingAccount($db); $accountingaccount->fetch(null, $k); - + if ($mt) { print ""; print ""; @@ -510,10 +497,9 @@ if ($action == 'export_csv') print ""; } } - + // VAT - foreach ($tabtva[$key] as $k => $mt) - { + foreach ( $tabtva[$key] as $k => $mt ) { if ($mt) { print ""; print ""; @@ -525,12 +511,12 @@ if ($action == 'export_csv') print ""; } } - + $var = ! $var; } - + print "
" . $langs->trans("Debit") . "" . $langs->trans("Credit") . "
" . $date . "" . $invoicestatic->getNomUrl(1) . "" . ($mt < 0 ? price(- $mt) : '') . "
" . $date . "
" . $date . "
"; - + // End of page llxFooter(); } diff --git a/htdocs/accountancy/supplier/card.php b/htdocs/accountancy/supplier/card.php index d11d72951dc..e0eb900b1c1 100644 --- a/htdocs/accountancy/supplier/card.php +++ b/htdocs/accountancy/supplier/card.php @@ -22,16 +22,15 @@ * */ /** - * \file htdocs/accountancy/supplier/card.php - * \ingroup Accountancy - * \brief Card supplier ventilation + * \file htdocs/accountancy/supplier/card.php + * \ingroup Accountancy + * \brief Card supplier ventilation */ - require '../../main.inc.php'; - + // Class -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/html.formventilation.class.php'; +require_once DOL_DOCUMENT_ROOT . '/fourn/class/fournisseur.facture.class.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/html.formventilation.class.php'; // Langs $langs->load("bills"); @@ -46,8 +45,7 @@ if ($user->societe_id > 0) accessforbidden(); if ($action == 'ventil' && $user->rights->accounting->ventilation->dispatch) { - if (! GETPOST('cancel', 'alpha')) - { + if (! GETPOST('cancel', 'alpha')) { $sql = " UPDATE " . MAIN_DB_PREFIX . "facture_fourn_det"; $sql .= " SET fk_code_ventilation = " . $codeventil; $sql .= " WHERE rowid = " . $id; @@ -94,7 +92,7 @@ if (! empty($id)) { dol_syslog("/accounting/supplier/card.php sql=" . $sql, LOG_DEBUG); $result = $db->query($sql); - + if ($result) { $num_lines = $db->num_rows($result); $i = 0; @@ -106,9 +104,9 @@ if (! empty($id)) { print ''; print ''; - print load_fiche_titre($langs->trans('SuppliersVentilation'),'','title_setup'); - - dol_fiche_head(); + print load_fiche_titre($langs->trans('SuppliersVentilation'), '', 'title_setup'); + + dol_fiche_head(); print ''; @@ -127,15 +125,15 @@ if (! empty($id)) { print $formventilation->select_account($objp->fk_code_ventilation, 'codeventil', 1); print ''; print '
'; - - dol_fiche_end(); - + + dol_fiche_end(); + print '
'; print ''; print '     '; print ''; print '
'; - + print ''; } else { print "Error"; diff --git a/htdocs/accountancy/supplier/index.php b/htdocs/accountancy/supplier/index.php index ec18d8b1e23..747943575b9 100644 --- a/htdocs/accountancy/supplier/index.php +++ b/htdocs/accountancy/supplier/index.php @@ -19,16 +19,15 @@ */ /** - * \file htdocs/accountancy/supplier/index.php - * \ingroup Accounting Expert - * \brief Home supplier ventilation + * \file htdocs/accountancy/supplier/index.php + * \ingroup Accounting Expert + * \brief Home supplier ventilation */ - require '../../main.inc.php'; - + // Class -require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/date.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/accounting.lib.php'; // Langs $langs->load("compta"); @@ -43,7 +42,7 @@ if ($user->societe_id > 0) if (! $user->rights->accounting->ventilation->read) accessforbidden(); -// Filter + // Filter $year = $_GET["year"]; if ($year == 0) { $year_current = strftime("%Y", time()); @@ -84,6 +83,50 @@ if ($action == 'validatehistory') { $db->commit(); setEventMessages($langs->trans('Dispatched'), null, 'mesgs'); } +} elseif ($action == 'fixaccountancycode') { + $error = 0; + $db->begin(); + + $sql1 = "UPDATE " . MAIN_DB_PREFIX . "facture_fourn_det as fd"; + $sql1 .= " SET fd.fk_code_ventilation = 0"; + $sql1 .= ' WHERE fd.fk_code_ventilation NOT IN '; + $sql1 .= ' (SELECT accnt.rowid '; + $sql1 .= ' FROM ' . MAIN_DB_PREFIX . 'accountingaccount as accnt'; + $sql1 .= ' INNER JOIN ' . MAIN_DB_PREFIX . 'accounting_system as syst'; + $sql1 .= ' ON accnt.fk_pcg_version = syst.pcg_version AND syst.rowid=' . $conf->global->CHARTOFACCOUNTS . ')'; + + dol_syslog("htdocs/accountancy/customer/index.php fixaccountancycode", LOG_DEBUG); + + $resql1 = $db->query($sql1); + if (! $resql1) { + $error ++; + $db->rollback(); + setEventMessage($db->lasterror(), 'errors'); + } else { + $db->commit(); + setEventMessage($langs->trans('Done'), 'mesgs'); + } +} elseif ($action == 'cleanaccountancycode') { + $error = 0; + $db->begin(); + + $sql1 = "UPDATE " . MAIN_DB_PREFIX . "facture_fourn_det as fd"; + $sql1 .= " SET fd.fk_code_ventilation = 0"; + $sql1 .= " WHERE fd.fk_facture_fourn IN ( SELECT f.rowid FROM " . MAIN_DB_PREFIX . "facture_fourn as f"; + $sql1 .= " WHERE f.datef >= '" . $db->idate(dol_get_first_day($year_current, 1, false)) . "'"; + $sql1 .= " AND f.datef <= '" . $db->idate(dol_get_last_day($year_current, 12, false)) . "')"; + + dol_syslog("htdocs/accountancy/customer/index.php fixaccountancycode", LOG_DEBUG); + + $resql1 = $db->query($sql1); + if (! $resql1) { + $error ++; + $db->rollback(); + setEventMessage($db->lasterror(), 'errors'); + } else { + $db->commit(); + setEventMessage($langs->trans('Done'), 'mesgs'); + } } /* @@ -98,7 +141,11 @@ $textnextyear = ' ' . $langs->trans("DescVentilSupplier") . ''; -print ''; +print ''; $y = $year_current; @@ -158,8 +205,8 @@ if ($resql) { while ( $i < $num ) { $row = $db->fetch_row($resql); - $var=!$var; - print '' . length_accountg($row[0]) . ''; + $var = ! $var; + print '' . length_accountg($row[0]) . ''; print '' . $row[1] . ''; print '' . price($row[2]) . ''; print '' . price($row[3]) . ''; diff --git a/htdocs/accountancy/supplier/lines.php b/htdocs/accountancy/supplier/lines.php index e77c98aae3d..6736c6a30d6 100644 --- a/htdocs/accountancy/supplier/lines.php +++ b/htdocs/accountancy/supplier/lines.php @@ -20,18 +20,17 @@ */ /** - * \file htdocs/accountancy/supplier/lines.php - * \ingroup Accounting Expert - * \brief Page of detail of the lines of ventilation of invoices suppliers + * \file htdocs/accountancy/supplier/lines.php + * \ingroup Accounting Expert + * \brief Page of detail of the lines of ventilation of invoices suppliers */ - require '../../main.inc.php'; // Class -require_once DOL_DOCUMENT_ROOT.'/accountancy/class/html.formventilation.class.php'; -require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; -require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; -require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/html.formventilation.class.php'; +require_once DOL_DOCUMENT_ROOT . '/fourn/class/fournisseur.facture.class.php'; +require_once DOL_DOCUMENT_ROOT . '/product/class/product.class.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/date.lib.php'; // Langs $langs->load("compta"); @@ -41,43 +40,38 @@ $langs->load("main"); $langs->load("accountancy"); $account_parent = GETPOST('account_parent'); -$changeaccount = GETPOST('changeaccount'); -//Search Getpost -$search_ref = GETPOST('search_ref','alpha'); -$search_invoice = GETPOST('search_invoice','alpha'); -$search_label = GETPOST('search_label','alpha'); -$search_desc = GETPOST('search_desc','alpha'); -$search_amount = GETPOST('search_amount','alpha'); -$search_account = GETPOST('search_account','alpha'); -$search_vat = GETPOST('search_vat','alpha'); +$changeaccount = GETPOST('changeaccount'); +// Search Getpost +$search_ref = GETPOST('search_ref', 'alpha'); +$search_invoice = GETPOST('search_invoice', 'alpha'); +$search_label = GETPOST('search_label', 'alpha'); +$search_desc = GETPOST('search_desc', 'alpha'); +$search_amount = GETPOST('search_amount', 'alpha'); +$search_account = GETPOST('search_account', 'alpha'); +$search_vat = GETPOST('search_vat', 'alpha'); -//Getpost Order and column and limit page -$sortfield = GETPOST('sortfield','alpha'); -$sortorder = GETPOST('sortorder','alpha'); -$page = GETPOST('page','int'); +// Getpost Order and column and limit page +$sortfield = GETPOST('sortfield', 'alpha'); +$sortorder = GETPOST('sortorder', 'alpha'); +$page = GETPOST('page', 'int'); -if ($page < 0) $page = 0; +if ($page < 0) + $page = 0; $offset = $conf->liste_limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; -if (! empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION)) -{ +if (! empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION)) { $limit = $conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION; -} -else if ($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION <= 0) -{ - $limit = GETPOST('limit')?GETPOST('limit','int'):$conf->liste_limit; -} -else -{ - $limit = GETPOST('limit')?GETPOST('limit','int'):$conf->liste_limit; +} else if ($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION <= 0) { + $limit = GETPOST('limit') ? GETPOST('limit', 'int') : $conf->liste_limit; +} else { + $limit = GETPOST('limit') ? GETPOST('limit', 'int') : $conf->liste_limit; } -if (! $sortfield) $sortfield="f.datef, f.ref, l.rowid"; +if (! $sortfield) + $sortfield = "f.datef, f.ref, l.rowid"; -if (! $sortorder) -{ - if ($conf->global->ACCOUNTING_LIST_SORT_VENTILATION_DONE > 0) - { +if (! $sortorder) { + if ($conf->global->ACCOUNTING_LIST_SORT_VENTILATION_DONE > 0) { $sortorder = " DESC "; } } @@ -93,13 +87,13 @@ $formventilation = new FormVentilation($db); // Purge search criteria if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) // Both test are required to be compatible with all browsers { - $search_ref=''; - $search_invoice=''; - $search_label=''; - $search_desc=''; - $search_amount=''; - $search_account=''; - $search_vat=''; + $search_ref = ''; + $search_invoice = ''; + $search_label = ''; + $search_desc = ''; + $search_amount = ''; + $search_account = ''; + $search_vat = ''; } if (is_array($changeaccount) && count($changeaccount) > 0) { @@ -132,7 +126,7 @@ if (is_array($changeaccount) && count($changeaccount) > 0) { llxHeader('', $langs->trans("SuppliersVentilation") . ' - ' . $langs->trans("Dispatched")); -print ''; - /* * Supplier Invoice lines */ @@ -179,15 +172,14 @@ if (strlen(trim($search_amount))) { if (strlen(trim($search_account))) { $sql .= " AND aa.account_number like '%" . $search_account . "%'"; } -if (strlen(trim($search_vat))) -{ +if (strlen(trim($search_vat))) { $sql .= " AND (l.tva_tx like '" . $search_vat . "%')"; } if (! empty($conf->multicompany->enabled)) { $sql .= " AND f.entity IN (" . getEntity("facture_fourn", 1) . ")"; } -$sql.= $db->order($sortfield,$sortorder); -$sql.= $db->plimit($limit + 1,$offset); +$sql .= $db->order($sortfield, $sortorder); +$sql .= $db->plimit($limit + 1, $offset); dol_syslog('accountancy/supplier/lines.php::list sql= ' . $sql1); $result = $db->query($sql); @@ -203,23 +195,23 @@ if ($result) { print '
'; print ''; - print '
'. $langs->trans("ChangeAccount") . '
'; + print '
' . $langs->trans("ChangeAccount") . '
'; print $formventilation->select_account(GETPOST('account_parent'), 'account_parent', 1); print '
'; print '
'; - print_liste_field_titre($langs->trans("Invoice"), $_SERVER["PHP_SELF"],"f.ref","",$param,'',$sortfield,$sortorder); - print_liste_field_titre($langs->trans("Ref"), $_SERVER["PHP_SELF"],"p.ref","",$param,'',$sortfield,$sortorder); - print_liste_field_titre($langs->trans("Label"), $_SERVER["PHP_SELF"],"p.label","",$param,'',$sortfield,$sortorder); - print_liste_field_titre($langs->trans("Description"), $_SERVER["PHP_SELF"],"l.description","",$param,'',$sortfield,$sortorder); - print_liste_field_titre($langs->trans("Amount"), $_SERVER["PHP_SELF"],"l.total_ht","",$param,'align="center"',$sortfield,$sortorder); - print_liste_field_titre($langs->trans("VATRate"), $_SERVER["PHP_SELF"],"l.tva_tx","",$param,'align="center"',$sortfield,$sortorder); - print_liste_field_titre($langs->trans("Account"), $_SERVER["PHP_SELF"],"aa.account_number","",$param,'align="center"',$sortfield,$sortorder); + print_liste_field_titre($langs->trans("Invoice"), $_SERVER["PHP_SELF"], "f.ref", "", $param, '', $sortfield, $sortorder); + print_liste_field_titre($langs->trans("Ref"), $_SERVER["PHP_SELF"], "p.ref", "", $param, '', $sortfield, $sortorder); + print_liste_field_titre($langs->trans("Label"), $_SERVER["PHP_SELF"], "p.label", "", $param, '', $sortfield, $sortorder); + print_liste_field_titre($langs->trans("Description"), $_SERVER["PHP_SELF"], "l.description", "", $param, '', $sortfield, $sortorder); + print_liste_field_titre($langs->trans("Amount"), $_SERVER["PHP_SELF"], "l.total_ht", "", $param, 'align="center"', $sortfield, $sortorder); + print_liste_field_titre($langs->trans("VATRate"), $_SERVER["PHP_SELF"], "l.tva_tx", "", $param, 'align="center"', $sortfield, $sortorder); + print_liste_field_titre($langs->trans("Account"), $_SERVER["PHP_SELF"], "aa.account_number", "", $param, 'align="center"', $sortfield, $sortorder); print_liste_field_titre(''); print_liste_field_titre(''); - print_liste_field_titre($langs->trans("Ventilate").'
/','','','','','align="center"'); + print_liste_field_titre($langs->trans("Ventilate") . '
/', '', '', '', '', 'align="center"'); print "\n"; - + print ''; print ''; print ''; @@ -228,9 +220,9 @@ if ($result) { print ''; print ''; print ''; - print '\n"; + print '\n"; $facturefournisseur_static = new FactureFournisseur($db); $product_static = new Product($db); @@ -278,7 +270,6 @@ if ($result) { print $db->error(); } - print "
% '; - print ''; - print "
'; + print ''; + print "
"; llxFooter(); diff --git a/htdocs/accountancy/supplier/list.php b/htdocs/accountancy/supplier/list.php index bb57fa0999f..e0f0c390a02 100644 --- a/htdocs/accountancy/supplier/list.php +++ b/htdocs/accountancy/supplier/list.php @@ -20,9 +20,9 @@ */ /** - * \file htdocs/accountancy/supplier/list.php - * \ingroup Accountancy - * \brief Ventilation page from suppliers invoices + * \file htdocs/accountancy/supplier/list.php + * \ingroup Accountancy + * \brief Ventilation page from suppliers invoices */ require '../../main.inc.php'; @@ -66,9 +66,9 @@ if ($page < 0) if (! empty($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION)) { $limit = $conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION; } else if ($conf->global->ACCOUNTING_LIMIT_LIST_VENTILATION <= 0) { - $limit = GETPOST('limit')?GETPOST('limit','int'):$conf->liste_limit; + $limit = GETPOST('limit') ? GETPOST('limit', 'int') : $conf->liste_limit; } else { - $limit = GETPOST('limit')?GETPOST('limit','int'):$conf->liste_limit; + $limit = GETPOST('limit') ? GETPOST('limit', 'int') : $conf->liste_limit; } $offset = $limit * $page; @@ -94,8 +94,8 @@ $formventilation = new FormVentilation($db); $accounting = new AccountingAccount($db); // TODO: we should need to check if result is a really exist accountaccount rowid..... -$aarowid_s = $accounting->fetch('', $conf->global->ACCOUNTING_SERVICE_BUY_ACCOUNT,1); -$aarowid_p = $accounting->fetch('', $conf->global->ACCOUNTING_PRODUCT_BUY_ACCOUNT,1); +$aarowid_s = $accounting->fetch('', $conf->global->ACCOUNTING_SERVICE_BUY_ACCOUNT, 1); +$aarowid_p = $accounting->fetch('', $conf->global->ACCOUNTING_PRODUCT_BUY_ACCOUNT, 1); // Purge search criteria if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) // Both test are required to be compatible with all browsers @@ -133,7 +133,7 @@ print ''."\n"; } @@ -750,11 +752,14 @@ else }); $("#copyaddressfromsoc").click(function() { - $(\'textarea[name="address"]\').text("'.dol_escape_js($objsoc->address).'"); + $(\'textarea[name="address"]\').val("'.dol_escape_js($objsoc->address).'"); $(\'input[name="zipcode"]\').val("'.dol_escape_js($objsoc->zip).'"); $(\'input[name="town"]\').val("'.dol_escape_js($objsoc->town).'"); - $(\'select[name="country_id"]\').val("'.dol_escape_js($objsoc->country_id).'"); - $(\'select[name="state_id"]\').val("'.dol_escape_js($objsoc->state_id).'"); + console.log("Set state_id to '.dol_escape_js($objsoc->state_id).'"); + $(\'select[name="state_id"]\').val("'.dol_escape_js($objsoc->state_id).'").trigger("change"); + /* set country at end because it will trigger page refresh */ + console.log("Set country id to '.dol_escape_js($objsoc->country_id).'"); + $(\'select[name="country_id"]\').val("'.dol_escape_js($objsoc->country_id).'").trigger("change"); /* trigger required to update select2 components */ }); })'."\n"; print ''."\n"; diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index b27f6965e86..e60883c7149 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -5100,7 +5100,68 @@ class Form print '
'; } - if (((! is_array($restrictlinksto)) || in_array('supplier_order',$restrictlinksto)) + if ((in_array('fichinter',$restrictlinksto)) && ! empty($conf->ficheinter->enabled)) + { + $linktoelem.=($linktoelem?'   ':'').'' . $langs->trans('LinkedFichinter') . ''; + + print ' + + '; + + print '
global->MAIN_OPTIMIZEFORTEXTBROWSER)?' style="display:none"':'').'>'; + + $sql = "SELECT s.rowid as socid, s.nom as name, s.client, f.rowid, f.ref"; + $sql .= " FROM " . MAIN_DB_PREFIX . "societe as s"; + $sql .= ", " . MAIN_DB_PREFIX . "fichinter as f"; + $sql .= ' WHERE f.fk_soc = s.rowid'; + + $resqlorderlist = $this->db->query($sql); + if ($resqlorderlist) + { + $num = $this->db->num_rows($resqlorderlist); + $i = 0; + + print '
'; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + while ($i < $num) + { + $objp = $this->db->fetch_object($resqlorderlist); + + $var = ! $var; + print ''; + print ''; + print ''; + print ''; + print ''; + + $i ++; + } + print '
' . $langs->trans("Ref") . '' . $langs->trans("Company") . '
'; + print ''; + print '' . $objp->ref . '' . $objp->name . '
'; + print '
     
'; + print '
'; + $this->db->free($resqlorderlist); + } else { + dol_print_error($this->db); + } + + print '
'; + } + + if (((! is_array($restrictlinksto)) || in_array('supplier_order',$restrictlinksto)) && ! empty($conf->fournisseur->enabled)) { $linktoelem.=($linktoelem?'   ':'').'' . $langs->trans('LinkedOrder') . ''; diff --git a/htdocs/core/class/menu.class.php b/htdocs/core/class/menu.class.php index 0715c2fafdc..58e93ec5544 100644 --- a/htdocs/core/class/menu.class.php +++ b/htdocs/core/class/menu.class.php @@ -55,7 +55,7 @@ class Menu * @param string $titre Label of menu to add * @param integer $level Level of menu to add * @param int $enabled Menu active or not (0=Not active, 1=Active, 2=Active but grey) - * @param string $target Target lien + * @param string $target Target link * @param string $mainmenu Main menu ('home', 'companies', 'products', ...) * @param string $leftmenu Left menu ('setup', 'system', 'admintools', ...) * @param int $position Position (not used yet) @@ -74,7 +74,7 @@ class Menu * @param string $titre Label of menu to add * @param integer $level Level of menu to add * @param int $enabled Menu active or not - * @param string $target Target lien + * @param string $target Target link * @param string $mainmenu Main menu ('home', 'companies', 'products', ...) * @param string $leftmenu Left menu ('setup', 'system', 'admintools', ...) * @param int $position Position (not used yet) diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index acdf123e4ce..17a1a575a97 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -5113,21 +5113,24 @@ function printCommonFooter($zone='private') if (! empty($conf->global->MAIN_HTML_FOOTER)) print $conf->global->MAIN_HTML_FOOTER."\n"; print "\n"; - print ''."\n"; + if (! empty($conf->use_javascript_ajax)) + { + print ''."\n"; + } // Google Analytics (need Google module) if (! empty($conf->google->enabled) && ! empty($conf->global->MAIN_GOOGLE_AN_ID)) diff --git a/htdocs/core/lib/functions2.lib.php b/htdocs/core/lib/functions2.lib.php index f2b13d79d0f..35c2810d47b 100644 --- a/htdocs/core/lib/functions2.lib.php +++ b/htdocs/core/lib/functions2.lib.php @@ -894,7 +894,7 @@ function get_next_value($db,$mask,$table,$field,$where='',$objsoc='',$date='',$m if ($where) $sql.=$where; if ($sqlwhere) $sql.=' AND '.$sqlwhere; - dol_syslog("functions2::get_next_value", LOG_DEBUG); + dol_syslog("functions2::get_next_value mode=".$mode."", LOG_DEBUG); $resql=$db->query($sql); if ($resql) { diff --git a/htdocs/core/menus/init_menu_auguria.sql b/htdocs/core/menus/init_menu_auguria.sql index b54e9a560ac..6c0f30c6b6c 100644 --- a/htdocs/core/menus/init_menu_auguria.sql +++ b/htdocs/core/menus/init_menu_auguria.sql @@ -208,22 +208,40 @@ insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, left insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS) && $leftmenu=="tax_vat"', __HANDLER__, 'left', 2302__+MAX_llx_menu__, 'accountancy', '', 2300__+MAX_llx_menu__, '/compta/tva/reglement.php?leftmenu=tax_vat', 'List', 2, 'companies', '$user->rights->tax->charges->lire', '', 0, 1, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS) && $leftmenu=="tax_vat"', __HANDLER__, 'left', 2303__+MAX_llx_menu__, 'accountancy', '', 2300__+MAX_llx_menu__, '/compta/tva/clients.php?leftmenu=tax_vat', 'ReportByCustomers', 2, 'companies', '$user->rights->tax->charges->lire', '', 0, 2, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS) && $leftmenu=="tax_vat"', __HANDLER__, 'left', 2304__+MAX_llx_menu__, 'accountancy', '', 2300__+MAX_llx_menu__, '/compta/tva/quadri_detail.php?leftmenu=tax_vat', 'ReportByQuarter', 2, 'companies', '$user->rights->tax->charges->lire', '', 0, 3, __ENTITY__); --- Ventilation (accounting) -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled', __HANDLER__, 'left', 2400__+MAX_llx_menu__, 'accountancy', 'ventil_customer', 6__+MAX_llx_menu__, '/accountancy/customer/index.php?leftmenu=ventil_customer', 'CustomersVentilation', 0, 'accountancy', '$user->rights->accounting->ventilation->read', '', 0, 8, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $leftmenu=="ventil_customer"', __HANDLER__, 'left', 2401__+MAX_llx_menu__, 'accountancy', '', 2400__+MAX_llx_menu__, '/accountancy/customer/list.php', 'ToDispatch', 1, 'accountancy', '$user->rights->accounting->ventilation->dispatch', '', 0, 0, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $leftmenu=="ventil_customer"', __HANDLER__, 'left', 2402__+MAX_llx_menu__, 'accountancy', '', 2400__+MAX_llx_menu__, '/accountancy/customer/lines.php', 'Dispatched', 1, 'accountancy', '$user->rights->accounting->ventilation->read', '', 0, 1, __ENTITY__); - -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $conf->supplier_invoice->enabled', __HANDLER__, 'left', 2410__+MAX_llx_menu__, 'accountancy', 'ventil_supplier', 6__+MAX_llx_menu__, '/accountancy/supplier/index.php?leftmenu=ventil_supplier', 'SuppliersVentilation', 0, 'accountancy', '$user->rights->accounting->ventilation->read', '', 0, 9, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $conf->supplier_invoice->enabled && $leftmenu=="ventil_supplier"', __HANDLER__, 'left', 2411__+MAX_llx_menu__, 'accountancy', '', 2410__+MAX_llx_menu__, '/accountancy/supplier/list.php', 'ToDispatch', 1, 'accountancy', '$user->rights->accounting->ventilation->dispatch', '', 0, 0, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $conf->supplier_invoice->enabled && $leftmenu=="ventil_supplier"', __HANDLER__, 'left', 2412__+MAX_llx_menu__, 'accountancy', '', 2410__+MAX_llx_menu__, '/accountancy/supplier/lines.php', 'Dispatched', 1, 'accountancy', '$user->rights->accounting->ventilation->read', '', 0, 1, __ENTITY__); --- Rapports -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled || $conf->accounting->enabled', __HANDLER__, 'left', 2700__+MAX_llx_menu__, 'accountancy', 'ca', 6__+MAX_llx_menu__, '/compta/resultat/index.php?leftmenu=ca&mainmenu=accountancy', 'Reportings', 0, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 11, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled || $conf->accounting->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2701__+MAX_llx_menu__, 'accountancy', '', 2700__+MAX_llx_menu__, '/compta/resultat/index.php?leftmenu=ca', 'ReportInOut', 1, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 0, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled || $conf->accounting->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2702__+MAX_llx_menu__, 'accountancy', '', 2701__+MAX_llx_menu__, '/compta/resultat/clientfourn.php?leftmenu=ca', 'ByCompanies', 2, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 0, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled || $conf->accounting->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2703__+MAX_llx_menu__, 'accountancy', '', 2700__+MAX_llx_menu__, '/compta/stats/index.php?leftmenu=ca', 'ReportTurnover', 1, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 1, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled || $conf->accounting->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2704__+MAX_llx_menu__, 'accountancy', '', 2703__+MAX_llx_menu__, '/compta/stats/casoc.php?leftmenu=ca', 'ByCompanies', 2, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 0, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled || $conf->accounting->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2705__+MAX_llx_menu__, 'accountancy', '', 2703__+MAX_llx_menu__, '/compta/stats/cabyuser.php?leftmenu=ca', 'ByUsers', 2, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 1, __ENTITY__); -insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled || $conf->accounting->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2708__+MAX_llx_menu__, 'accountancy', '', 2703__+MAX_llx_menu__, '/compta/stats/cabyprodserv.php?leftmenu=ca', 'ByProductsAndServices', 2, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 1, __ENTITY__); +-- Accounting Expert +insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled', __HANDLER__, 'left', 2400__+MAX_llx_menu__, 'accountancy', 'accounting', 6__+MAX_llx_menu__, '/accountancy/customer/index.php?leftmenu=accounting', 'MenuAccountancy', 0, 'accountancy', '(! empty($conf->accounting->enabled) || $user->rights->accounting->ventilation->read || $user->rights->accounting->ventilation->dispatch || $user->rights->compta->resultat->lire', '', 0, 7, __ENTITY__); + -- Dispatch + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled', __HANDLER__, 'left', 2401__+MAX_llx_menu__, 'accountancy', 'dispatch_customer', 2400__+MAX_llx_menu__, '/accountancy/customer/index.php?leftmenu=dispatch_customer', 'CustomersVentilation', 1, 'accountancy', '$user->rights->accounting->ventilation->read', '', 0, 1, __ENTITY__); + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $leftmenu=="dispatch_customer"', __HANDLER__, 'left', 2402__+MAX_llx_menu__, 'accountancy', '', 2401__+MAX_llx_menu__, '/accountancy/customer/list.php', 'ToDispatch', 2, 'accountancy', '$user->rights->accounting->ventilation->dispatch', '', 0, 2, __ENTITY__); + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $leftmenu=="dispatch_customer"', __HANDLER__, 'left', 2403__+MAX_llx_menu__, 'accountancy', '', 2401__+MAX_llx_menu__, '/accountancy/customer/lines.php', 'Dispatched', 2, 'accountancy', '$user->rights->accounting->ventilation->read', '', 0, 3, __ENTITY__); + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $conf->fournisseur->enabled', __HANDLER__, 'left', 2410__+MAX_llx_menu__, 'accountancy', 'ventil_supplier', 2400__+MAX_llx_menu__, '/accountancy/supplier/index.php?leftmenu=dispatch_supplier', 'SuppliersVentilation', 1, 'accountancy', '$user->rights->accounting->ventilation->read', '', 0, 4, __ENTITY__); + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $conf->fournisseur->enabled && $leftmenu=="dispatch_supplier"', __HANDLER__, 'left', 2411__+MAX_llx_menu__, 'accountancy', '', 2410__+MAX_llx_menu__, '/accountancy/supplier/list.php', 'ToDispatch', 2, 'accountancy', '$user->rights->accounting->ventilation->dispatch', '', 0, 5, __ENTITY__); + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $conf->fournisseur->enabled && $leftmenu=="dispatch_supplier"', __HANDLER__, 'left', 2412__+MAX_llx_menu__, 'accountancy', '', 2410__+MAX_llx_menu__, '/accountancy/supplier/lines.php', 'Dispatched', 2, 'accountancy', '$user->rights->accounting->ventilation->read', '', 0, 6, __ENTITY__); + -- Journals + -- insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled', __HANDLER__, 'left', 2420__+MAX_llx_menu__, 'accountancy', 'journal', 2400__+MAX_llx_menu__, '/accountancy/journal/index.php?leftmenu=journal', 'Journaux', 1, 'accountancy', '$user->rights->accounting->comptarapport->lire', '', 0, 7, __ENTITY__); + -- General Ledger + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled', __HANDLER__, 'left', 2430__+MAX_llx_menu__, 'accountancy', 'bookkeeping', 2400__+MAX_llx_menu__, '/accountancy/bookkeeping/list.php?leftmenu=bookkeeping', 'Bookkeeping', 1, 'accountancy', '$user->rights->accounting->mouvements->lire', '', 0, 15, __ENTITY__); + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $leftmenu=="bookkeeping"', __HANDLER__, 'left', 2431__+MAX_llx_menu__, 'accountancy', '', 2430__+MAX_llx_menu__, '/accountancy/bookkeeping/listbyyear.php', 'ByYear', 2, 'accountancy', '$user->rights->accounting->mouvements->lire', '', 0, 16, __ENTITY__); + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $leftmenu=="bookkeeping"', __HANDLER__, 'left', 2432__+MAX_llx_menu__, 'accountancy', '', 2430__+MAX_llx_menu__, '/accountancy/bookkeeping/balancebymonth.php', 'AccountBalanceByMonth', 2, 'accountancy', '$user->rights->accounting->mouvements->lire', '', 0, 16, __ENTITY__); + -- Reports + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled', __HANDLER__, 'left', 2440__+MAX_llx_menu__, 'accountancy', 'report', 2400__+MAX_llx_menu__, '/compta/resultat/index.php?leftmenu=ca&mainmenu=accountancy', 'Reportings', 1, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 17, __ENTITY__); + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2441__+MAX_llx_menu__, 'accountancy', '', 2440__+MAX_llx_menu__, '/compta/resultat/index.php?leftmenu=ca', 'ReportInOut', 2, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 18, __ENTITY__); + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2442__+MAX_llx_menu__, 'accountancy', '', 2440__+MAX_llx_menu__, '/compta/resultat/clientfourn.php?leftmenu=ca', 'ByCompanies', 3, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 19, __ENTITY__); + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2443__+MAX_llx_menu__, 'accountancy', '', 2440__+MAX_llx_menu__, '/compta/stats/index.php?leftmenu=ca', 'ReportTurnover', 2, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 20, __ENTITY__); + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2444__+MAX_llx_menu__, 'accountancy', '', 2440__+MAX_llx_menu__, '/compta/stats/casoc.php?leftmenu=ca', 'ByCompanies', 3, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 21, __ENTITY__); + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2445__+MAX_llx_menu__, 'accountancy', '', 2440__+MAX_llx_menu__, '/compta/stats/cabyuser.php?leftmenu=ca', 'ByUsers', 3, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 22, __ENTITY__); + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2446__+MAX_llx_menu__, 'accountancy', '', 2440__+MAX_llx_menu__, '/compta/stats/cabyprodserv.php?leftmenu=ca', 'ByProductsAndServices', 3, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 23, __ENTITY__); + -- Admin + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled', __HANDLER__, 'left', 2450__+MAX_llx_menu__, 'home', '', 2400__+MAX_llx_menu__, '/accountancy/admin/fiscalyear.php?leftmenu=setup', 'Fiscalyear', 1, 'admin', '$user->rights->accounting->fiscalyear', '', 0, 24, __ENTITY__); + insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled', __HANDLER__, 'left', 2451__+MAX_llx_menu__, 'home', '', 2400__+MAX_llx_menu__, '/accountancy/admin/account.php?mainmenu=accountancy', 'Chartofaccounts', 1, 'admin', '$user->rights->accounting->chartofaccount', '', 0, 25, __ENTITY__); +-- Rapports compta simple +insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled', __HANDLER__, 'left', 2700__+MAX_llx_menu__, 'accountancy', 'ca', 6__+MAX_llx_menu__, '/compta/resultat/index.php?leftmenu=ca&mainmenu=accountancy', 'Reportings', 0, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 11, __ENTITY__); +insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2701__+MAX_llx_menu__, 'accountancy', '', 2700__+MAX_llx_menu__, '/compta/resultat/index.php?leftmenu=ca', 'ReportInOut', 1, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 0, __ENTITY__); +insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2702__+MAX_llx_menu__, 'accountancy', '', 2701__+MAX_llx_menu__, '/compta/resultat/clientfourn.php?leftmenu=ca', 'ByCompanies', 2, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 0, __ENTITY__); +insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2703__+MAX_llx_menu__, 'accountancy', '', 2700__+MAX_llx_menu__, '/compta/stats/index.php?leftmenu=ca', 'ReportTurnover', 1, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 1, __ENTITY__); +insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2704__+MAX_llx_menu__, 'accountancy', '', 2703__+MAX_llx_menu__, '/compta/stats/casoc.php?leftmenu=ca', 'ByCompanies', 2, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 0, __ENTITY__); +insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2705__+MAX_llx_menu__, 'accountancy', '', 2703__+MAX_llx_menu__, '/compta/stats/cabyuser.php?leftmenu=ca', 'ByUsers', 2, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 1, __ENTITY__); +insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2708__+MAX_llx_menu__, 'accountancy', '', 2703__+MAX_llx_menu__, '/compta/stats/cabyprodserv.php?leftmenu=ca', 'ByProductsAndServices', 2, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 1, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2706__+MAX_llx_menu__, 'accountancy', '', 2700__+MAX_llx_menu__, '/compta/journal/sellsjournal.php?leftmenu=ca', 'SellsJournal', 1, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 1, __ENTITY__); insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->comptabilite->enabled && $leftmenu=="ca"', __HANDLER__, 'left', 2707__+MAX_llx_menu__, 'accountancy', '', 2700__+MAX_llx_menu__, '/compta/journal/purchasesjournal.php?leftmenu=ca', 'PurchasesJournal', 1, 'main', '$user->rights->compta->resultat->lire || $user->rights->accounting->comptarapport->lire', '', 0, 1, __ENTITY__); -- Book Keeping diff --git a/htdocs/core/menus/standard/auguria.lib.php b/htdocs/core/menus/standard/auguria.lib.php index 9623958188d..a24a2d32baa 100644 --- a/htdocs/core/menus/standard/auguria.lib.php +++ b/htdocs/core/menus/standard/auguria.lib.php @@ -294,38 +294,34 @@ function print_left_auguria_menu($db,$menu_array_before,$menu_array_after,&$tabM if (! empty($conf->accounting->enabled) && !empty($user->rights->accounting->mouvements->lire) && $mainmenu == 'accountancy') // Entry in accountancy journal for each bank account { - $newmenu->add('/accountancy/journal/index.php?leftmenu=journal',$langs->trans("Journaux"),0,$user->rights->banque->lire); + $newmenu->add('',$langs->trans("Journaux"),0,$user->rights->accounting->comptarapport->lire,'','accountancy','accounting'); - if ($leftmenu == 'journal') + $sql = "SELECT rowid, label, accountancy_journal"; + $sql.= " FROM ".MAIN_DB_PREFIX."bank_account"; + $sql.= " WHERE entity = ".$conf->entity; + $sql.= " AND clos = 0"; + $sql.= " ORDER BY label"; + + $resql = $db->query($sql); + if ($resql) { - $sql = "SELECT rowid, label, accountancy_journal"; - $sql.= " FROM ".MAIN_DB_PREFIX."bank_account"; - $sql.= " WHERE entity = ".$conf->entity; - $sql.= " AND clos = 0"; - $sql.= " ORDER BY label"; + $numr = $db->num_rows($resql); + $i = 0; - $resql = $db->query($sql); - if ($resql) + if ($numr > 0) + while ($i < $numr) { - $numr = $db->num_rows($resql); - $i = 0; - - if ($numr > 0) - - while ($i < $numr) - { - $objp = $db->fetch_object($resql); - $newmenu->add('/accountancy/journal/bankjournal.php?id_account='.$objp->rowid,$langs->trans("Journal").' - '.$objp->label,1,$user->rights->accounting->comptarapport->lire); - $i++; - } + $objp = $db->fetch_object($resql); + $newmenu->add('/accountancy/journal/bankjournal.php?id_account='.$objp->rowid,$langs->trans("Journal").' - '.$objp->label,1,$user->rights->accounting->comptarapport->lire,'','accountancy','accounting'); + $i++; } - else dol_print_error($db); - $db->free($resql); - - // Add other journal - $newmenu->add("/accountancy/journal/sellsjournal.php?leftmenu=journal",$langs->trans("SellsJournal"),1,$user->rights->accounting->comptarapport->lire); - $newmenu->add("/accountancy/journal/purchasesjournal.php?leftmenu=journal",$langs->trans("PurchasesJournal"),1,$user->rights->accounting->comptarapport->lire); } + else dol_print_error($db); + $db->free($resql); + + // Add other journal + $newmenu->add("/accountancy/journal/sellsjournal.php?leftmenu=journal",$langs->trans("SellsJournal"),1,$user->rights->accounting->comptarapport->lire); + $newmenu->add("/accountancy/journal/purchasesjournal.php?leftmenu=journal",$langs->trans("PurchasesJournal"),1,$user->rights->accounting->comptarapport->lire); } if ($conf->ftp->enabled && $mainmenu == 'ftp') // Entry for FTP diff --git a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php index 0731b803ca3..1513892b766 100644 --- a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php +++ b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php @@ -109,16 +109,21 @@ class pdf_standard extends ModeleExpenseReport $this->posxtype=105; $this->posxprojet=125; $this->posxtva=145; - $this->posxup=162; - $this->posxqty=176; - $this->postotalttc=186; - if ($this->page_largeur < 210) // To work with US executive format - { - $this->posxdate-=20; - $this->posxtype-=20; - $this->posxprojet-=20; - $this->posxtva-=20; - $this->posxup-=20; + $this->posxup = 162; + $this->posxqty = 176; + $this->postotalttc = 186; + if (empty($conf->projet->enabled)) { + $this->posxtva-=20; + $this->posxup-=20; + $this->posxqty-=20; + $this->postotalttc-=20; + } + if ($this->page_largeur < 210) { // To work with US executive format + $this->posxdate-=20; + $this->posxtype-=20; + $this->posxprojet-=20; + $this->posxtva-=20; + $this->posxup-=20; $this->posxqty-=20; $this->postotalttc-=20; } @@ -335,10 +340,12 @@ class pdf_standard extends ModeleExpenseReport $pdf->SetXY($this->posxtype, $curY); $pdf->MultiCell($this->posxprojet-$this->posxtype-1, 3,$outputlangs->transnoentities($object->lines[$i]->type_fees_code), 0, 'C'); - // Project - $pdf->SetFont('','', $default_font_size - 1); - $pdf->SetXY($this->posxprojet, $curY); - $pdf->MultiCell($this->posxtva-$this->posxprojet-1, 3,$object->lines[$i]->projet_ref, 0, 'C'); + if (! empty($conf->projet->enabled)) { + // Project + $pdf->SetFont('','', $default_font_size - 1); + $pdf->SetXY($this->posxprojet, $curY); + $pdf->MultiCell($this->posxtva-$this->posxprojet-1, 3,$object->lines[$i]->projet_ref, 0, 'C'); + } // VAT Rate if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) @@ -765,23 +772,24 @@ class pdf_standard extends ModeleExpenseReport // Type $pdf->line($this->posxtype-1, $tab_top, $this->posxtype-1, $tab_top + $tab_height); - $pdf->SetXY($this->posxtype-1, $tab_top+1); - $pdf->MultiCell($this->posxprojet-$this->posxtype-1,2, $outputlangs->transnoentities("Type"),'','C'); + $pdf->SetXY($this->posxtype - 1, $tab_top + 1); + $pdf->MultiCell($this->posxprojet - $this->posxtype - 1, 2, $outputlangs->transnoentities("Type"), '', 'C'); - // Project - $pdf->line($this->posxprojet-1, $tab_top, $this->posxprojet-1, $tab_top + $tab_height); - $pdf->SetXY($this->posxprojet-1, $tab_top+1); - $pdf->MultiCell($this->posxtva-$this->posxprojet-1,2, $outputlangs->transnoentities("Project"),'','C'); + if (!empty($conf->projet->enabled)) { + // Project + $pdf->line($this->posxprojet - 1, $tab_top, $this->posxprojet - 1, $tab_top + $tab_height); + $pdf->SetXY($this->posxprojet - 1, $tab_top + 1); + $pdf->MultiCell($this->posxtva - $this->posxprojet - 1, 2, $outputlangs->transnoentities("Project"), '', 'C'); + } - // VAT - if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) - { - $pdf->line($this->posxtva-1, $tab_top, $this->posxtva-1, $tab_top + $tab_height); - $pdf->SetXY($this->posxtva-1, $tab_top+1); - $pdf->MultiCell($this->posxup-$this->posxtva-1,2, $outputlangs->transnoentities("VAT"),'','C'); - } + // VAT + if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) { + $pdf->line($this->posxtva - 1, $tab_top, $this->posxtva - 1, $tab_top + $tab_height); + $pdf->SetXY($this->posxtva - 1, $tab_top + 1); + $pdf->MultiCell($this->posxup - $this->posxtva - 1, 2, $outputlangs->transnoentities("VAT"), '', 'C'); + } - // Unit price + // Unit price $pdf->line($this->posxup-1, $tab_top, $this->posxup-1, $tab_top + $tab_height); $pdf->SetXY($this->posxup-1, $tab_top+1); $pdf->MultiCell($this->posxqty-$this->posxup-1,2, $outputlangs->transnoentities("PriceU"),'','C'); diff --git a/htdocs/core/modules/modProductBatch.class.php b/htdocs/core/modules/modProductBatch.class.php index 5557104c7f6..ed38edd5250 100644 --- a/htdocs/core/modules/modProductBatch.class.php +++ b/htdocs/core/modules/modProductBatch.class.php @@ -118,8 +118,9 @@ class modProductBatch extends DolibarrModules $sql = array(); - if(! empty($conf->cashdesk->enabled)) { - if (!$conf->global->CASHDESK_NO_DECREASE_STOCK) { + if (! empty($conf->cashdesk->enabled)) { + if (empty($conf->global->CASHDESK_NO_DECREASE_STOCK)) { + include_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; $res = dolibarr_set_const($db,"CASHDESK_NO_DECREASE_STOCK",1,'chaine',0,'',$conf->entity); } } diff --git a/htdocs/core/modules/modUser.class.php b/htdocs/core/modules/modUser.class.php index 02a085c4a8b..48de5a48a6c 100644 --- a/htdocs/core/modules/modUser.class.php +++ b/htdocs/core/modules/modUser.class.php @@ -210,9 +210,9 @@ class modUser extends DolibarrModules $this->export_code[$r]=$this->rights_class.'_'.$r; $this->export_label[$r]='Liste des utilisateurs Dolibarr et attributs'; $this->export_permission[$r]=array(array("user","user","export")); - $this->export_fields_array[$r]=array('u.rowid'=>"Id",'u.login'=>"Login",'u.lastname'=>"Lastname",'u.firstname'=>"Firstname",'u.office_phone'=>'Phone','u.office_fax'=>'Fax','u.email'=>'EMail','u.datec'=>"DateCreation",'u.tms'=>"DateLastModification",'u.admin'=>"Administrator",'u.statut'=>'Status','u.note'=>"Note",'u.datelastlogin'=>'LastConnexion','u.datepreviouslogin'=>'PreviousConnexion','u.fk_socpeople'=>"IdContact",'u.fk_soc'=>"IdCompany",'u.fk_member'=>"MemberId"); - $this->export_TypeFields_array[$r]=array('u.login'=>"Text",'u.lastname'=>"Text",'u.firstname'=>"Text",'u.office_phone'=>'Text','u.office_fax'=>'Text','u.email'=>'Text','u.datec'=>"Date",'u.tms'=>"Date",'u.admin'=>"Boolean",'u.statut'=>'Status','u.note'=>"Text",'u.datelastlogin'=>'Date','u.datepreviouslogin'=>'Date','u.fk_soc'=>"List:societe:nom:rowid",'u.fk_member'=>"List:adherent:firstname"); - $this->export_entities_array[$r]=array('u.rowid'=>"user",'u.login'=>"user",'u.lastname'=>"user",'u.firstname'=>"user",'u.office_phone'=>'user','u.office_fax'=>'user','u.email'=>'user','u.datec'=>"user",'u.tms'=>"user",'u.admin'=>"user",'u.statut'=>'user','u.note'=>"user",'u.datelastlogin'=>'user','u.datepreviouslogin'=>'user','u.fk_socpeople'=>"contact",'u.fk_soc'=>"company",'u.fk_member'=>"member"); + $this->export_fields_array[$r]=array('u.rowid'=>"Id",'u.login'=>"Login",'u.lastname'=>"Lastname",'u.firstname'=>"Firstname",'u.accountancy_code'=>"UserAccountancyCode",'u.office_phone'=>'Phone','u.office_fax'=>'Fax','u.email'=>'EMail','u.datec'=>"DateCreation",'u.tms'=>"DateLastModification",'u.admin'=>"Administrator",'u.statut'=>'Status','u.note'=>"Note",'u.datelastlogin'=>'LastConnexion','u.datepreviouslogin'=>'PreviousConnexion','u.fk_socpeople'=>"IdContact",'u.fk_soc'=>"IdCompany",'u.fk_member'=>"MemberId"); + $this->export_TypeFields_array[$r]=array('u.login'=>"Text",'u.lastname'=>"Text",'u.firstname'=>"Text",'u.accountancy_code'=>'Text','u.office_phone'=>'Text','u.office_fax'=>'Text','u.email'=>'Text','u.datec'=>"Date",'u.tms'=>"Date",'u.admin'=>"Boolean",'u.statut'=>'Status','u.note'=>"Text",'u.datelastlogin'=>'Date','u.datepreviouslogin'=>'Date','u.fk_soc'=>"List:societe:nom:rowid",'u.fk_member'=>"List:adherent:firstname"); + $this->export_entities_array[$r]=array('u.rowid'=>"user",'u.login'=>"user",'u.lastname'=>"user",'u.firstname'=>"user",'u.accountancy_code'=>'user','u.office_phone'=>'user','u.office_fax'=>'user','u.email'=>'user','u.datec'=>"user",'u.tms'=>"user",'u.admin'=>"user",'u.statut'=>'user','u.note'=>"user",'u.datelastlogin'=>'user','u.datepreviouslogin'=>'user','u.fk_socpeople'=>"contact",'u.fk_soc'=>"company",'u.fk_member'=>"member"); if (empty($conf->adherent->enabled)) { unset($this->export_fields_array[$r]['u.fk_member']); diff --git a/htdocs/core/tpl/objectline_edit.tpl.php b/htdocs/core/tpl/objectline_edit.tpl.php index 4de0bfd1743..7c75e0ae49b 100644 --- a/htdocs/core/tpl/objectline_edit.tpl.php +++ b/htdocs/core/tpl/objectline_edit.tpl.php @@ -252,6 +252,10 @@ if (! empty($conf->margin->enabled)) jQuery("input[name='np_marginRate']:first").val(''); jQuery("input[name='np_markRate']:first").val(''); }); + jQuery("#remise_percent").keyup(function() { + jQuery("input[name='np_marginRate']:first").val(''); + jQuery("input[name='np_markRate']:first").val(''); + }); jQuery("#buying_price").keyup(function() { jQuery("input[name='np_marginRate']:first").val(''); jQuery("input[name='np_markRate']:first").val(''); diff --git a/htdocs/expensereport/card.php b/htdocs/expensereport/card.php index a14e006fd7c..be9d8ab49bd 100644 --- a/htdocs/expensereport/card.php +++ b/htdocs/expensereport/card.php @@ -1652,7 +1652,7 @@ else print ''; print ''.$langs->trans('Piece').''; print ''.$langs->trans('Date').''; - print ''.$langs->trans('Project').''; + if (! empty($conf->projet->enabled)) print ''.$langs->trans('Project').''; print ''.$langs->trans('Type').''; print ''.$langs->trans('Description').''; print ''.$langs->trans('VAT').''; @@ -1680,14 +1680,17 @@ else print img_picto($langs->trans("Document"), "object_generic"); print ' '.$piece_comptable.''; print ''.dol_print_date($db->jdate($objp->date), 'day').''; - print ''; - if ($objp->projet_id > 0) + if (! empty($conf->projet->enabled)) { - $projecttmp->id=$objp->projet_id; - $projecttmp->ref=$objp->projet_ref; - print $projecttmp->getNomUrl(1); + print ''; + if ($objp->projet_id > 0) + { + $projecttmp->id=$objp->projet_id; + $projecttmp->ref=$objp->projet_ref; + print $projecttmp->getNomUrl(1); + } + print ''; } - print ''; print ''.$langs->trans("TF_".strtoupper($objp->type_fees_libelle)).''; print ''.$objp->comments.''; print ''.vatrate($objp->vatrate,true).''; @@ -1729,10 +1732,13 @@ else print ''; // Select project - print ''; - $formproject->select_projects(-1, $objp->fk_projet,'fk_projet', 0, 0, 1, 1); - print ''; - + if (! empty($conf->projet->enabled)) + { + print ''; + $formproject->select_projects(-1, $objp->fk_projet,'fk_projet', 0, 0, 1, 1); + print ''; + } + // Select type print ''; select_type_fees_id($objp->type_fees_code,'fk_c_type_fees'); @@ -1790,7 +1796,7 @@ else print ''; print ''; //print ''.$langs->trans('Date').''; - print ''.$langs->trans('Project').''; + if (! empty($conf->projet->enabled)) print ''.$langs->trans('Project').''; print ''.$langs->trans('Type').''; print ''.$langs->trans('Description').''; print ''.$langs->trans('VAT').''; @@ -1810,10 +1816,13 @@ else print ''; // Select project - print ''; - $formproject->select_projects(-1, $fk_projet, 'fk_projet', 0, 0, 1, 1); - print ''; - + if (! empty($conf->projet->enabled)) + { + print ''; + $formproject->select_projects(-1, $fk_projet, 'fk_projet', 0, 0, 1, 1); + print ''; + } + // Select type print ''; select_type_fees_id($fk_c_type_fees,'fk_c_type_fees',1); @@ -1829,7 +1838,6 @@ else $defaultvat=-1; if (! empty($conf->global->EXPENSEREPORT_NO_DEFAULT_VAT)) $conf->global->MAIN_VAT_DEFAULT_IF_AUTODETECT_FAILS = 'none'; print ''; print ''; @@ -2087,7 +2095,28 @@ if($user->rights->expensereport->export && $object->fk_statut>0 && $action != 'e print ''; +if ($action != 'create' && $action != 'edit' && ($id || $ref)) +{ + $permissiondellink=$user->rights->facture->creer; // Used by the include of actions_dellink.inc.php + include DOL_DOCUMENT_ROOT.'/core/actions_dellink.inc.php'; // Must be include, not include_once + // Link invoice to intervention + if (GETPOST('LinkedFichinter')) { + $object->fetch($id); + $object->fetch_thirdparty(); + $result = $object->add_object_linked('fichinter', GETPOST('LinkedFichinter')); + } + // Linked object block + $somethingshown = $form->showLinkedObjectBlock($object); + + // Show links to link elements + $linktoelements=array(); + if($conf->global->EXPENSES_LINK_TO_INTERVENTION) $linktoelements[]='fichinter'; + $linktoelem=''; + $linktoelem = $form->showLinkToObjectBlock($object,$linktoelements); + if ($linktoelem) print '
'.$linktoelem; + +} llxFooter(); $db->close(); diff --git a/htdocs/fichinter/info.php b/htdocs/fichinter/info.php index 5be4af71d27..9f951dfe2d3 100644 --- a/htdocs/fichinter/info.php +++ b/htdocs/fichinter/info.php @@ -35,7 +35,7 @@ $id = GETPOST('id','int'); // Security check if ($user->societe_id) $socid=$user->societe_id; -$result = restrictedArea($user, 'ficheinter', $fichinterid, 'fichinter'); +$result = restrictedArea($user, 'ficheinter', $id, 'fichinter'); $object = new Fichinter($db); diff --git a/htdocs/install/mysql/migration/3.8.0-3.9.0.sql b/htdocs/install/mysql/migration/3.8.0-3.9.0.sql index e561c50f890..fe18aca4e5e 100644 --- a/htdocs/install/mysql/migration/3.8.0-3.9.0.sql +++ b/htdocs/install/mysql/migration/3.8.0-3.9.0.sql @@ -584,8 +584,3 @@ ALTER TABLE llx_accounting_bookkeeping MODIFY COLUMN doc_ref varchar(300) NOT NU ALTER TABLE llx_holiday ADD COLUMN tms timestamp; ALTER TABLE llx_holiday ADD COLUMN entity integer DEFAULT 1 NOT NULL; --- VAT rates Luxembourg -UPDATE llx_c_tva SET taux='17' WHERE rowid=1401 AND fk_pays=140; -UPDATE llx_c_tva SET taux='14' WHERE rowid=1402 AND fk_pays=140; -UPDATE llx_c_tva SET taux='8' WHERE rowid=1403 AND fk_pays=140; -UPDATE llx_c_tva SET note='VAT intermediary rate' WHERE rowid=1403 AND fk_pays=140; diff --git a/htdocs/install/mysql/migration/3.9.0-4.0.0.sql b/htdocs/install/mysql/migration/3.9.0-4.0.0.sql index 3ffb260f415..9ac450b90f8 100644 --- a/htdocs/install/mysql/migration/3.9.0-4.0.0.sql +++ b/htdocs/install/mysql/migration/3.9.0-4.0.0.sql @@ -40,4 +40,43 @@ ALTER TABLE llx_cronjob ADD COLUMN test varchar(255) DEFAULT '1'; ALTER TABLE llx_facture ADD INDEX idx_facture_fk_statut (fk_statut); UPDATE llx_projet as p set p.opp_percent = (SELECT percent FROM llx_c_lead_status as cls WHERE cls.rowid = p.fk_opp_status) WHERE p.opp_percent IS NULL AND p.fk_opp_status IS NOT NULL; + + + +CREATE TABLE llx_website +( + rowid integer AUTO_INCREMENT NOT NULL PRIMARY KEY, + entity integer DEFAULT 1, + shortname varchar(24) NOT NULL, + description varchar(255), + status integer, + date_creation datetime, + date_modification datetime, + tms timestamp +) ENGINE=innodb; + +ALTER TABLE llx_website ADD UNIQUE INDEX uk_website_shortname (shortname, entity); + +CREATE TABLE llx_website_page +( + rowid integer AUTO_INCREMENT NOT NULL PRIMARY KEY, + fk_website integer, + pageurl varchar(16) NOT NULL, + title varchar(255), + description varchar(255), + keywords varchar(255), + content text, + status integer, + date_creation datetime, + date_modification datetime, + tms timestamp +) ENGINE=innodb; + +ALTER TABLE llx_website_page ADD UNIQUE INDEX uk_website_page_url (fk_website,pageurl); + +ALTER TABLE llx_website_page ADD CONSTRAINT fk_website_page_website FOREIGN KEY (fk_website) REFERENCES llx_website (rowid); + + + + \ No newline at end of file diff --git a/htdocs/install/mysql/tables/llx_website.key.sql b/htdocs/install/mysql/tables/llx_website.key.sql index cdaa38079b3..d25a0009dbe 100644 --- a/htdocs/install/mysql/tables/llx_website.key.sql +++ b/htdocs/install/mysql/tables/llx_website.key.sql @@ -16,8 +16,5 @@ -- -- =========================================================================== -ALTER TABLE llx_website_page ADD UNIQUE INDEX uk_website_page_url (fk_website,pageurl); - -ALTER TABLE llx_website_page ADD CONSTRAINT fk_website_page_website FOREIGN KEY (fk_website) REFERENCES llx_website (rowid); - +ALTER TABLE llx_website ADD UNIQUE INDEX uk_website_shortname (shortname, entity); diff --git a/htdocs/install/mysql/tables/llx_website.sql b/htdocs/install/mysql/tables/llx_website.sql index e24a68b514b..81be6720d88 100644 --- a/htdocs/install/mysql/tables/llx_website.sql +++ b/htdocs/install/mysql/tables/llx_website.sql @@ -20,7 +20,7 @@ CREATE TABLE llx_website ( rowid integer AUTO_INCREMENT NOT NULL PRIMARY KEY, - entity integer, + entity integer DEFAULT 1, shortname varchar(24) NOT NULL, description varchar(255), status integer, diff --git a/htdocs/install/mysql/tables/llx_website_pages.key.sql b/htdocs/install/mysql/tables/llx_website_pages.key.sql index cdaa38079b3..095dffabc95 100644 --- a/htdocs/install/mysql/tables/llx_website_pages.key.sql +++ b/htdocs/install/mysql/tables/llx_website_pages.key.sql @@ -20,4 +20,3 @@ ALTER TABLE llx_website_page ADD UNIQUE INDEX uk_website_page_url (fk_website,pa ALTER TABLE llx_website_page ADD CONSTRAINT fk_website_page_website FOREIGN KEY (fk_website) REFERENCES llx_website (rowid); - diff --git a/htdocs/install/upgrade2.php b/htdocs/install/upgrade2.php index 60f6e082f50..01e58299fc5 100644 --- a/htdocs/install/upgrade2.php +++ b/htdocs/install/upgrade2.php @@ -395,6 +395,21 @@ if (! GETPOST("action") || preg_match('/upgrade/i',GETPOST('action'))) // Reload menus (this must be always and only into last targeted version) migrate_reload_menu($db,$langs,$conf,$versionto); } + + // Scripts for last version + $afterversionarray=explode('.','3.9.9'); + $beforeversionarray=explode('.','4.0.9'); + if (versioncompare($versiontoarray,$afterversionarray) >= 0 && versioncompare($versiontoarray,$beforeversionarray) <= 0) + { + // Reload modules (this must be always and only into last targeted version) + $listofmodule=array( + 'MAIN_MODULE_FACTURE'=>'newboxdefonly', + ); + migrate_reload_modules($db,$langs,$conf,$listofmodule); + + // Reload menus (this must be always and only into last targeted version) + migrate_reload_menu($db,$langs,$conf,$versionto); + } print '
'.$langs->trans("MigrationFinished").''; diff --git a/htdocs/langs/en_US/compta.lang b/htdocs/langs/en_US/compta.lang index 14cacf57022..964a7c30678 100644 --- a/htdocs/langs/en_US/compta.lang +++ b/htdocs/langs/en_US/compta.lang @@ -220,4 +220,5 @@ AddExtraReport=Extra reports OtherCountriesCustomersReport=Foreign customers report BasedOnTwoFirstLettersOfVATNumberBeingDifferentFromYourCompanyCountry=Based on the two first letters of the VAT number being different from your own company's country code SameCountryCustomersWithVAT=National customers report -BasedOnTwoFirstLettersOfVATNumberBeingTheSameAsYourCompanyCountry=Based on the two first letters of the VAT number being the same as your own company's country code \ No newline at end of file +BasedOnTwoFirstLettersOfVATNumberBeingTheSameAsYourCompanyCountry=Based on the two first letters of the VAT number being the same as your own company's country code +LinkedFichinter=Link to an intervention diff --git a/htdocs/langs/en_US/users.lang b/htdocs/langs/en_US/users.lang index 8a7dfcfe787..47cddfa433f 100644 --- a/htdocs/langs/en_US/users.lang +++ b/htdocs/langs/en_US/users.lang @@ -122,3 +122,4 @@ LoginUsingOpenID=Use OpenID to login WeeklyHours=Weekly hours ColorUser=Color of the user DisabledInMonoUserMode=Disabled in maintenance mode +UserAccountancyCode=User accountancy code \ No newline at end of file diff --git a/htdocs/langs/en_US/website.lang b/htdocs/langs/en_US/website.lang new file mode 100644 index 00000000000..58765929b6c --- /dev/null +++ b/htdocs/langs/en_US/website.lang @@ -0,0 +1,5 @@ +# Dolibarr language file - Source file is en_US - website +Shortname=Code +WebsiteSetupDesc=Create here as much entry as number of different websites you need. Then go into menu Websites to edit them. +DeleteWebsite=Delete website +ConfirmDeleteWebsite=Are you sure you want to delete this web site. All its pages and content will also be removed. \ No newline at end of file diff --git a/htdocs/langs/en_US/workflow.lang b/htdocs/langs/en_US/workflow.lang index 14be1a6ade6..1c59a3651ec 100644 --- a/htdocs/langs/en_US/workflow.lang +++ b/htdocs/langs/en_US/workflow.lang @@ -1,4 +1,4 @@ -# Dolibarr language file - Source file is en_US - admin +# Dolibarr language file - Source file is en_US - workflow WorkflowSetup=Workflow module setup WorkflowDesc=This module is designed to modify the behaviour of automatic actions into application. By default, workflow is open (you can do things in the order you want). You can activate the automatic actions you are interested in. ThereIsNoWorkflowToModify=There is no workflow modifications available with the activated modules. diff --git a/htdocs/langs/fr_FR/compta.lang b/htdocs/langs/fr_FR/compta.lang index dd7ca2fc4cc..96cc123c2c6 100644 --- a/htdocs/langs/fr_FR/compta.lang +++ b/htdocs/langs/fr_FR/compta.lang @@ -221,3 +221,4 @@ OtherCountriesCustomersReport=Rapport client étranger BasedOnTwoFirstLettersOfVATNumberBeingDifferentFromYourCompanyCountry=Basé sur les deux premières lettres du numéro de TVA étant différent du code de pays de votre propre entreprise SameCountryCustomersWithVAT=Rapport clients nationaux BasedOnTwoFirstLettersOfVATNumberBeingTheSameAsYourCompanyCountry=Basé sur les deux premières lettres du numéro de TVA étant les mêmes que le code pays de votre propre entreprise +LinkedFichinter=Lier à une intervention diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php index 8dc0b65da2b..349e2c3cabd 100644 --- a/htdocs/main.inc.php +++ b/htdocs/main.inc.php @@ -1943,12 +1943,15 @@ if (! function_exists("llxFooter")) if (! empty($delayedhtmlcontent)) print $delayedhtmlcontent; // Wrapper to show tooltips - print "\n\n"; - print '' . "\n"; + if ($conf->use_javascript_ajax) + { + print "\n\n"; + print '' . "\n"; + } // A div for the address popup print "\n\n"; diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 79bb7900edc..9ccb295406a 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -4068,8 +4068,7 @@ class Product extends CommonObject { global $conf, $db; - // FIXME USing * into select is forbidden - $sql = "SELECT * FROM ".MAIN_DB_PREFIX."product_pricerules"; + $sql = "SELECT rowid, level, fk_level, var_percent, var_min_percent FROM ".MAIN_DB_PREFIX."product_pricerules"; $query = $db->query($sql); $rules = array(); diff --git a/htdocs/product/list.php b/htdocs/product/list.php index 97283b4b2bc..6451f8bdde5 100644 --- a/htdocs/product/list.php +++ b/htdocs/product/list.php @@ -314,6 +314,7 @@ else setEventMessages($langs->trans("ProductDeleted", GETPOST('delprod')), null, 'mesgs'); } + if ($search_categ > 0) $param.="&search_categ=".$search_categ; if ($sref) $param="&sref=".$sref; if ($search_ref_supplier) $param="&search_ref_supplier=".$search_ref_supplier; if ($sbarcode) $param.=($sbarcode?"&sbarcode=".$sbarcode:""); diff --git a/htdocs/websites/frametop.php b/htdocs/websites/frametop.php index f33c8ae61a2..9001691b72c 100644 --- a/htdocs/websites/frametop.php +++ b/htdocs/websites/frametop.php @@ -23,9 +23,16 @@ */ require ("../main.inc.php"); +//require_once (DOL_DOCUMENT_ROOT."/websites/class/website.class.php"); $langs->load("externalsite"); top_htmlhead("",""); top_menu("","","_top"); + +/* +$website = new Website($db); +$listofwebsites = $website->fetchAll(); +*/ +print 'rrr'; diff --git a/htdocs/websites/index.php b/htdocs/websites/index.php index b007725ec3c..7c52b440f44 100644 --- a/htdocs/websites/index.php +++ b/htdocs/websites/index.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2004-2012 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -13,59 +13,154 @@ * * You should have received a copy of the GNU General Public License * along with this program. If not, see . - * */ /** - * \file htdocs/externalsite/frames.php - * \ingroup externalsite - * \brief Page that build two frames: One for menu, the other for the target page to show - * \author Laurent Destailleur + * \file htdocs/admin/website.php + * \ingroup website + * \brief Page to setup the module Website */ require '../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; -$langs->load("externalsite"); +$langs->load("admin"); +$langs->load("other"); +$langs->load("website"); -if (empty($conf->global->EXTERNALSITE_URL)) +if (! $user->admin) accessforbidden(); + +$action = GETPOST('action','alpha'); + +$conf->dol_hide_leftmenu = 1; + + +$website='website1'; + + + +/* + * Actions + */ + +// Action mise a jour ou ajout d'une constante +if ($action == 'update') { - llxHeader(); - print '
'.$langs->trans('ExternalSiteModuleNotComplete').'
'; - llxFooter(); + + + + if (! $res > 0) $error++; + + if (! $error) + { + setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); + } + else + { + setEventMessages($langs->trans("Error"), null, 'errors'); + } } -$mainmenu=GETPOST('mainmenu', 'alpha'); -$leftmenu=GETPOST('leftmenu', 'alpha'); -$idmenu=GETPOST('idmenu', 'int'); -$theme=GETPOST('theme', 'alpha'); -$codelang=GETPOST('lang', 'alpha'); - -print " - - -Dolibarr frame for external web site - - -global->MAIN_MENU_INVERT)?"rows":"cols")."=\"".($heightforframes+50).",*\" border=0 framespacing=0 frameborder=0> - - global->EXTERNALSITE_URL."\"> - - <body> - - </body> - - - - -<body> - <br><div class=\"center\"> - Sorry, your browser is too old or not correctly configured to view this area.<br> - Your browser must support frames.<br> - </div> -</body> - - - -"; + +/* + * View + */ + +$_SESSION['website_mode'] = 'edit'; + + +$form = new Form($db); + +$help_url=''; + +llxHeader('',$langs->trans("WebsiteSetup"),$help_url); + + +$linkback=''.$langs->trans("BackToModuleList").''; +print load_fiche_titre($langs->trans("WebsiteSetup"),$linkback,'title_setup'); + + +$head = array(); + + +/* + * Edit mode + */ + +if ($_SESSION['website_mode'] == 'edit') +{ + print "\n".'
'; + print ''; + print ''; + + dol_fiche_head($head, 'general', $langs->trans("Page").': '.$langs->trans("Home"), 0, 'globe'); + + print load_fiche_titre($langs->trans("SEO"),'',''); + + print ''; + print ''; + print ''; + print ''; + print "\n"; + + print ''; + + print ''; + + print ''; + + print ''; + + print '
'.$langs->trans("Description").''.$langs->trans("Value").'
'; + print $langs->trans('WEBSITE_PAGEURL'); + print ''; + print '/public/websites/'.$website.'/index.php?page=home'; + print '
'; + print $langs->trans('WEBSITE_TITLE'); + print ''; + print ''; + print '
'; + print $langs->trans('WEBSITE_DESCRIPTION'); + print ''; + print ''; + print '
'; + print $langs->trans('WEBSITE_KEYWORDS'); + print ''; + print ''; + print '
'; + + print '
'; + + + /* + * Editing global variables not related to a specific theme + */ + + print load_fiche_titre($langs->trans("Other"),'',''); + + require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; + $doleditor=new DolEditor('WEBSITE_HEADER',$obj->value,'',160,'dolibarr_notes','',false,false,$conf->fckeditor->enabled,5,60); + $doleditor->Create(); + + require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; + $doleditor=new DolEditor('WEBSITE_CONTENT',$obj->value,'',160,'dolibarr_notes','',false,false,$conf->fckeditor->enabled,5,60); + $doleditor->Create(); + + require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; + $doleditor=new DolEditor('WEBSITE_FOOTER',$obj->value,'',160,'dolibarr_notes','',false,false,$conf->fckeditor->enabled,5,60); + $doleditor->Create(); + + dol_fiche_end(); + + print '
'; + + print '
'; +} + + + +llxFooter(); + +$db->close(); diff --git a/htdocs/websites/indexold.php b/htdocs/websites/indexold.php new file mode 100644 index 00000000000..db7b69e1bdd --- /dev/null +++ b/htdocs/websites/indexold.php @@ -0,0 +1,65 @@ + + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +/** + * \file htdocs/externalsite/frames.php + * \ingroup externalsite + * \brief Page that build two frames: One for menu, the other for the target page to show + * \author Laurent Destailleur + */ + +require '../main.inc.php'; + +$langs->load("website"); + + +$mainmenu=GETPOST('mainmenu', 'alpha'); +$leftmenu=GETPOST('leftmenu', 'alpha'); +$idmenu=GETPOST('idmenu', 'int'); +$theme=GETPOST('theme', 'alpha'); +$codelang=GETPOST('lang', 'alpha'); + +print " + + +Dolibarr frame for web site menu + + +global->MAIN_MENU_INVERT)?"rows":"cols")."=\"".($heightforframes+50).",*\" border=0 framespacing=0 frameborder=0> + + + + <body> + + </body> + + + + +<body> + <br><div class=\"center\"> + Sorry, your browser is too old or not correctly configured to view this area.<br> + Your browser must support frames.<br> + </div> +</body> + + + +"; + + diff --git a/test/phpunit/FunctionsLibTest.php b/test/phpunit/FunctionsLibTest.php index 49400c119a5..79bcc931c84 100644 --- a/test/phpunit/FunctionsLibTest.php +++ b/test/phpunit/FunctionsLibTest.php @@ -853,8 +853,8 @@ class FunctionsLibTest extends PHPUnit_Framework_TestCase // Test RULE ES-ES $vat1=get_default_localtax($companyes,$companyes,1,0); $vat2=get_default_localtax($companyes,$companyes,2,0); - $this->assertEquals(5.2,$vat1); - $this->assertEquals(-19,$vat2); + $this->assertEquals($vat1, 5.2); + $this->assertStringStartsWith((string) $vat2, '-19:-15:-9'); // Can be -19 (old version) or '-19:-15:-9' (new setup) // Test RULE ES-IT $vat1=get_default_localtax($companyes,$companyit,1,0); diff --git a/test/phpunit/ModulesTest.php b/test/phpunit/ModulesTest.php index 9210ae1a46a..e769ce9dd51 100755 --- a/test/phpunit/ModulesTest.php +++ b/test/phpunit/ModulesTest.php @@ -130,10 +130,10 @@ class ModulesTest extends PHPUnit_Framework_TestCase $modulelist=array('Accounting','Adherent','Agenda','Banque','Barcode','Bookmark', 'CashDesk','Categorie','ClickToDial','Commande','Comptabilite','Contrat','Cron','Deplacement','DocumentGeneration','Don','DynamicPrices', 'ECM','Expedition','Export','ExternalRss','ExternalSite', - 'Facture','Fckeditor','Ficheinter','Fournisseur','FTP','GeoIPMaxmind','Gravatar','Holiday','Import','Label','Ldap', + 'Facture','Fckeditor','Ficheinter','Fournisseur','FTP','GeoIPMaxmind','Gravatar','Holiday','HRM','Import','Incoterm','Label','Ldap','Loan', 'Mailing','MailmanSpip','Margin', - 'Notification','OpenSurvey','Paybox','Paypal','Prelevement','Product','ProductBatch','Projet','Propale', - 'Salaries','Service','Skype','Societe','Stock','WebServicesClient','Syslog','Tax','User','WebServices','Workflow'); + 'Notification','Oauth','OpenSurvey','Paybox','Paypal','Prelevement','Product','ProductBatch','Projet','Propale','ReceiptPrinter','Resource', + 'Salaries','Service','Skype','Societe','Stock','SupplierProposal','Syslog','Tax','User','WebServices','WebServicesClient','Websites','Workflow'); foreach($modulelist as $modlabel) { require_once(DOL_DOCUMENT_ROOT.'/core/modules/mod'.$modlabel.'.class.php'); @@ -142,7 +142,7 @@ class ModulesTest extends PHPUnit_Framework_TestCase $result=$mod->remove(); $result=$mod->init(); $this->assertLessThan($result, 0, $modlabel); - print __METHOD__." result=".$result."\n"; + print __METHOD__." test remove/init for module ".$modlabel.", result=".$result."\n"; } return 0;