diff --git a/.github/workflows/code_quality.yml b/.github/workflows/code_quality.yml index 700d9fe64bf..65f350e1b53 100644 --- a/.github/workflows/code_quality.yml +++ b/.github/workflows/code_quality.yml @@ -15,9 +15,11 @@ jobs: steps: - uses: actions/checkout@v3 with: - fetch-depth: 0 - php-version: '7.1' + fetch-depth: 1 + #php-version: '7.1' - name: 'Qodana Scan' uses: JetBrains/qodana-action@v2022.3.0 + #with: + # php-version: '7.1' env: QODANA_TOKEN: ${{ secrets.QODANA_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/doxygen-gh-pages.yml b/.github/workflows/doxygen-gh-pages.yml.disabled similarity index 100% rename from .github/workflows/doxygen-gh-pages.yml rename to .github/workflows/doxygen-gh-pages.yml.disabled diff --git a/.github/workflows/exakat.yml.disabled b/.github/workflows/exakat.yml.disabled index f5ecdb8c614..1e9121a0e00 100644 --- a/.github/workflows/exakat.yml.disabled +++ b/.github/workflows/exakat.yml.disabled @@ -16,6 +16,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 + with: + fetch-depth: 1 - name: Exakat uses: docker://exakat/exakat-ga with: diff --git a/build/doxygen/dolibarr-doxygen.doxyfile b/build/doxygen/dolibarr-doxygen.doxyfile index 20ff102f0a2..6f668ebad7e 100644 --- a/build/doxygen/dolibarr-doxygen.doxyfile +++ b/build/doxygen/dolibarr-doxygen.doxyfile @@ -117,7 +117,7 @@ FULL_PATH_NAMES = YES # If left blank the directory from which doxygen is run is used as the # path to strip. -STRIP_FROM_PATH = "" +STRIP_FROM_PATH = "/home/dolibarr/doxygen.dolibarr.org/" # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of # the path mentioned in the documentation of a class, which tells @@ -1098,7 +1098,7 @@ SEARCHENGINE = YES # full text search. The disadvances is that it is more difficult to setup # and does not have live searching capabilities. -SERVER_BASED_SEARCH = NO +SERVER_BASED_SEARCH = YES #--------------------------------------------------------------------------- # configuration options related to the LaTeX output diff --git a/htdocs/adherents/list.php b/htdocs/adherents/list.php index 0c61f94a93d..50bbbca42d7 100644 --- a/htdocs/adherents/list.php +++ b/htdocs/adherents/list.php @@ -835,14 +835,14 @@ if (!empty($arrayfields['d.tms']['checked'])) { } // Status if (!empty($arrayfields['d.statut']['checked'])) { - print ''; + print ''; $liststatus = array( Adherent::STATUS_DRAFT => $langs->trans("Draft"), Adherent::STATUS_VALIDATED => $langs->trans("Validated"), Adherent::STATUS_RESILIATED => $langs->trans("MemberStatusResiliatedShort"), Adherent::STATUS_EXCLUDED =>$langs->trans("MemberStatusExcludedShort") ); - print $form->selectarray('search_status', $liststatus, $search_status, -3, 0, 0, '', 0, 0, 0, '', 'onrightofpage'); + print $form->selectarray('search_status', $liststatus, $search_status, -3, 0, 0, '', 0, 0, 0, '', 'search_status width100 onrightofpage'); print ''; } if (!empty($arrayfields['d.import_key']['checked'])) { diff --git a/htdocs/adherents/type.php b/htdocs/adherents/type.php index 3796522e70e..f516efdd819 100644 --- a/htdocs/adherents/type.php +++ b/htdocs/adherents/type.php @@ -302,7 +302,13 @@ if (!$rowid && $action != 'create' && $action != 'edit') { $membertype = new AdherentType($db); - while ($i < $num) { + $i = 0; + /*$savnbfield = $totalarray['nbfield']; + $totalarray = array(); + $totalarray['nbfield'] = 0;*/ + + $imaxinloop = ($limit ? min($num, $limit) : $num); + while ($i < $imaxinloop) { $objp = $db->fetch_object($result); $membertype->id = $objp->rowid; @@ -313,7 +319,6 @@ if (!$rowid && $action != 'create' && $action != 'edit') { $membertype->amount = $objp->amount; $membertype->caneditamount = $objp->caneditamount; - if ($mode == 'kanban') { if ($i == 0) { print ''; @@ -321,7 +326,7 @@ if (!$rowid && $action != 'create' && $action != 'edit') { } //output kanban $membertype->label = $objp->label; - $membertype->getKanbanView(''); + print $membertype->getKanbanView(''); if ($i == ($imaxinloop - 1)) { print ''; print ''; diff --git a/htdocs/bom/bom_list.php b/htdocs/bom/bom_list.php index d07a20774f5..3ce0b173fd3 100644 --- a/htdocs/bom/bom_list.php +++ b/htdocs/bom/bom_list.php @@ -562,7 +562,7 @@ foreach ($object->fields as $key => $val) { $cssforfield .= ($cssforfield ? ' ' : '').'right'; } if (!empty($arrayfields['t.'.$key]['checked'])) { - print ''; + print ''; if (!empty($val['arrayofkeyval']) && is_array($val['arrayofkeyval'])) { print $form->selectarray('search_'.$key, $val['arrayofkeyval'], (isset($search[$key]) ? $search[$key] : ''), $val['notnull'], 0, 0, '', 1, 0, 0, '', 'maxwidth100'.($key == 'status' ? ' search_status onrightofpage' : ''), 1); } elseif ((strpos($val['type'], 'integer:') === 0) || (strpos($val['type'], 'sellist:') === 0)) { diff --git a/htdocs/comm/propal/list.php b/htdocs/comm/propal/list.php index 2426abad9f4..0b03fc57c09 100644 --- a/htdocs/comm/propal/list.php +++ b/htdocs/comm/propal/list.php @@ -1386,8 +1386,8 @@ if ($resql) { } if (!empty($arrayfields['u.login']['checked'])) { // Author - print ''; - print ''; + print ''; + print ''; print ''; } if (!empty($arrayfields['sale_representative']['checked'])) { @@ -1443,8 +1443,8 @@ if ($resql) { } // Status if (!empty($arrayfields['p.fk_statut']['checked'])) { - print ''; - $formpropal->selectProposalStatus($search_status, 1, 0, 1, 'customer', 'search_statut', 'search_status maxwidth125 onrightofpage'); + print ''; + $formpropal->selectProposalStatus($search_status, 1, 0, 1, 'customer', 'search_statut', 'search_status width100 onrightofpage'); print ''; } // Action column diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php index 191d3dcde39..8a361d2f302 100644 --- a/htdocs/commande/list.php +++ b/htdocs/commande/list.php @@ -1734,7 +1734,7 @@ if ($resql) { } // Status if (!empty($arrayfields['c.fk_statut']['checked'])) { - print ''; + print ''; $liststatus = array( Commande::STATUS_DRAFT=>$langs->trans("StatusOrderDraftShort"), Commande::STATUS_VALIDATED=>$langs->trans("StatusOrderValidated"), @@ -1744,7 +1744,7 @@ if ($resql) { -2=>$langs->trans("StatusOrderValidatedShort").'+'.$langs->trans("StatusOrderSentShort"), Commande::STATUS_CANCELED=>$langs->trans("StatusOrderCanceledShort") ); - print $form->selectarray('search_status', $liststatus, $search_status, -5, 0, 0, '', 0, 0, 0, '', 'maxwidth125 onrightofpage', 1); + print $form->selectarray('search_status', $liststatus, $search_status, -5, 0, 0, '', 0, 0, 0, '', 'search_status width100 onrightofpage', 1); print ''; } // Action column diff --git a/htdocs/compta/bank/list.php b/htdocs/compta/bank/list.php index 38b666cc2ef..098489e6f7b 100644 --- a/htdocs/compta/bank/list.php +++ b/htdocs/compta/bank/list.php @@ -483,7 +483,7 @@ if (!empty($arrayfields['b.tms']['checked'])) { } // Status if (!empty($arrayfields['b.clos']['checked'])) { - print ''; + print ''; $array = array( 'opened'=>$langs->trans("Opened"), 'closed'=>$langs->trans("Closed") diff --git a/htdocs/compta/facture/list.php b/htdocs/compta/facture/list.php index afc31d7efe3..22f51f3543c 100644 --- a/htdocs/compta/facture/list.php +++ b/htdocs/compta/facture/list.php @@ -1590,9 +1590,9 @@ if ($resql) { } // Status if (!empty($arrayfields['f.fk_statut']['checked'])) { - print ''; + print ''; $liststatus = array('0'=>$langs->trans("BillShortStatusDraft"), '0,1'=>$langs->trans("BillShortStatusDraft").'+'.$langs->trans("BillShortStatusNotPaid"), '1'=>$langs->trans("BillShortStatusNotPaid"), '1,2'=>$langs->trans("BillShortStatusNotPaid").'+'.$langs->trans("BillShortStatusPaid"), '2'=>$langs->trans("BillShortStatusPaid"), '3'=>$langs->trans("BillShortStatusCanceled")); - print $form->selectarray('search_status', $liststatus, $search_status, 1, 0, 0, '', 0, 0, 0, '', 'width100 onrightofpage', 1); + print $form->selectarray('search_status', $liststatus, $search_status, 1, 0, 0, '', 0, 0, 0, '', 'search_status width100 onrightofpage', 1); print ''; } // Action column diff --git a/htdocs/compta/sociales/list.php b/htdocs/compta/sociales/list.php index f70ed44de0c..83690816801 100644 --- a/htdocs/compta/sociales/list.php +++ b/htdocs/compta/sociales/list.php @@ -501,9 +501,9 @@ if (!empty($arrayfields['cs.amount']['checked'])) { // Filter: Status if (!empty($arrayfields['cs.paye']['checked'])) { - print ''; + print ''; $liststatus = array('0'=>$langs->trans("Unpaid"), '1'=>$langs->trans("Paid")); - print $form->selectarray('search_status', $liststatus, $search_status, 1, 0, 0, '', 0, 0, 0, '', 'maxwidth100 onrightofpage', 1); + print $form->selectarray('search_status', $liststatus, $search_status, 1, 0, 0, '', 0, 0, 0, '', 'search_status width100 onrightofpage', 1); print ''; } diff --git a/htdocs/compta/tva/list.php b/htdocs/compta/tva/list.php index 1c70cf93c22..001ef1e7b38 100644 --- a/htdocs/compta/tva/list.php +++ b/htdocs/compta/tva/list.php @@ -398,9 +398,9 @@ if (!empty($arrayfields['t.amount']['checked'])) { // Status if (!empty($arrayfields['t.status']['checked'])) { - print ''; + print ''; $liststatus = array('0' => $langs->trans("Unpaid"), '1' => $langs->trans("Paid")); - print $form->selectarray('search_status', $liststatus, $search_status, 1, 0, 0, '', 0, 0, 0, '', 'onrightofpage'); + print $form->selectarray('search_status', $liststatus, $search_status, 1, 0, 0, '', 0, 0, 0, '', 'search_status width100 onrightofpage'); print ''; } diff --git a/htdocs/contact/list.php b/htdocs/contact/list.php index 49c5fbd1f3f..987c0d3937e 100644 --- a/htdocs/contact/list.php +++ b/htdocs/contact/list.php @@ -1057,8 +1057,8 @@ if (!empty($arrayfields['p.tms']['checked'])) { } // Status if (!empty($arrayfields['p.statut']['checked'])) { - print ''; - print $form->selectarray('search_status', array('-1'=>'', '0'=>$langs->trans('ActivityCeased'), '1'=>$langs->trans('InActivity')), $search_status, 0, 0, 0, '', 0, 0, 0, '', 'minwidth75 onrightofpage'); + print ''; + print $form->selectarray('search_status', array('-1'=>'', '0'=>$langs->trans('ActivityCeased'), '1'=>$langs->trans('InActivity')), $search_status, 0, 0, 0, '', 0, 0, 0, '', 'search_status width100 onrightofpage'); print ''; } if (!empty($arrayfields['p.import_key']['checked'])) { diff --git a/htdocs/core/class/html.formpropal.class.php b/htdocs/core/class/html.formpropal.class.php index 7cce3c839c5..894bedebe00 100644 --- a/htdocs/core/class/html.formpropal.class.php +++ b/htdocs/core/class/html.formpropal.class.php @@ -133,14 +133,16 @@ class FormPropal print ''; $i++; } - //Option for Signed+Billed - if ($selected != '' && $selected == "2,4") { - print ''; } - print ($langs->trans($prefix.'Signed'.($short ? 'Short' : '')).' '.$langs->trans("or").' '.$langs->trans($prefix.'Billed'.($short ? 'Short' : ''))); - print ''; print ''; print ajax_combobox($htmlname, array(), 0, 0, 'resolve', ($showempty < 0 ? (string) $showempty : '-1'), $morecss); diff --git a/htdocs/core/lib/ajax.lib.php b/htdocs/core/lib/ajax.lib.php index 27532c7a820..cacd22269ad 100644 --- a/htdocs/core/lib/ajax.lib.php +++ b/htdocs/core/lib/ajax.lib.php @@ -480,8 +480,11 @@ function ajax_combobox($htmlname, $events = array(), $minLengthToAutocomplete =