diff --git a/ChangeLog b/ChangeLog index 9c9c2b8a039d093949bf01a0547de908715799a1..350f5ba7b6d8023c833450b357e20d4b69029290 100644 --- a/ChangeLog +++ b/ChangeLog @@ -5,6 +5,8 @@ English Dolibarr ChangeLog ***** ChangeLog for 3.7 compared to 3.6.* ***** For users: +- New: Feature to link manually an order to an invoice does not disappear once + link has been done. - New: Can set a color on user card (visible into agenda view). - New: extrafields for projects and tasks are exported to ODT documents. - New: Add number of active notification into tab title (like we do for notes and documents) diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index eb4ca29f022f10175afe472881b37b1a4f07032b..27dbcc5c83c0c6c8b27e638ca0bd528a096c4054 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -3579,21 +3579,24 @@ if ($action == 'create') // Linked object block $somethingshown = $object->showLinkedObjectBlock(); - if (empty($somethingshown) && ! empty($conf->commande->enabled)) + $linktoelem=''; + + if (! empty($conf->commande->enabled)) { - print '<br><a href="#" id="linktoorder">' . $langs->trans('LinkedOrder') . '</a>'; + $linktoelem.=($linktoelem?' ':'').'<a href="#" id="linktoorder">' . $langs->trans('LinkedOrder') . '</a>'; print ' <script type="text/javascript" language="javascript"> jQuery(document).ready(function() { jQuery("#linktoorder").click(function() { - jQuery("#commande").toggle(); + jQuery("#orderlist").toggle(); + jQuery("#linktoorder").toggle(); }); }); </script> '; - print '<div id="commande" style="display:none">'; + print '<div id="orderlist" style="display:none">'; $sql = "SELECT s.rowid as socid, s.nom as name, s.client, c.rowid, c.ref, c.ref_client, c.total_ht"; $sql .= " FROM " . MAIN_DB_PREFIX . "societe as s"; @@ -3601,11 +3604,12 @@ if ($action == 'create') $sql .= ' WHERE c.fk_soc = s.rowid AND c.fk_soc = ' . $soc->id . ''; $resqlorderlist = $db->query($sql); - if ($resqlorderlist) { + if ($resqlorderlist) + { $num = $db->num_rows($resqlorderlist); $i = 0; - print '<form action="" method="POST" name="LinkedOrder">'; + print '<br><form action="" method="POST" name="LinkedOrder">'; print '<table class="noborder">'; print '<tr class="liste_titre">'; print '<td class="nowrap"></td>'; @@ -3614,7 +3618,8 @@ if ($action == 'create') print '<td align="left">' . $langs->trans("AmountHTShort") . '</td>'; print '<td align="left">' . $langs->trans("Company") . '</td>'; print '</tr>'; - while ($i < $num) { + while ($i < $num) + { $objp = $db->fetch_object($resqlorderlist); if ($objp->socid == $soc->id) { $var = ! $var; @@ -3632,7 +3637,7 @@ if ($action == 'create') $i ++; } print '</table>'; - print '<br><center><input type="submit" class="button" value="' . $langs->trans('ToLink') . '"></center>'; + print '<br><center><input type="submit" class="button" value="' . $langs->trans('ToLink') . '"> <input type="submit" class="button" name="cancel" value="' . $langs->trans('Cancel') . '"></center>'; print '</form>'; $db->free($resqlorderlist); } else { @@ -3642,6 +3647,9 @@ if ($action == 'create') print '</div>'; } + // Show link to elements + if ($linktoelem) print '<br>'.$linktoelem; + // Link for paypal payment if (! empty($conf->paypal->enabled) && $object->statut != 0) { include_once DOL_DOCUMENT_ROOT . '/paypal/lib/paypal.lib.php'; diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php index c8db601a8d961e4ec263669ca820870c132a742e..7f58e6ddd6e944fddbc6ce8dd7ad5ecd1ad1fd61 100644 --- a/htdocs/fourn/facture/card.php +++ b/htdocs/fourn/facture/card.php @@ -2288,21 +2288,24 @@ else */ $somethingshown=$object->showLinkedObjectBlock(); + $linktoelem=''; + if (empty($somethingshown) && ! empty($conf->fournisseur->enabled)) { - print '<br><a href="#" id="linktoorder">' . $langs->trans('LinkedOrder') . '</a>'; + $linktoelem.=($linktoelem?' ':'').'<a href="#" id="linktoorder">' . $langs->trans('LinkedOrder') . '</a>'; print ' <script type="text/javascript" language="javascript"> jQuery(document).ready(function() { jQuery("#linktoorder").click(function() { - jQuery("#commande").toggle(); - }); + jQuery("#orderlist").toggle(); + jQuery("#linktoorder").toggle(); + }); }); </script> '; - print '<div id="commande" style="display:none">'; + print '<div id="orderlist" style="display:none">'; $sql = "SELECT s.rowid as socid, s.nom as name, s.client, c.rowid, c.ref, c.ref_supplier, c.total_ht"; $sql .= " FROM " . MAIN_DB_PREFIX . "societe as s"; @@ -2314,7 +2317,7 @@ else $num = $db->num_rows($resqlorderlist); $i = 0; - print '<form action="" method="POST" name="LinkedOrder">'; + print '<br><form action="" method="POST" name="LinkedOrder">'; print '<table class="noborder">'; print '<tr class="liste_titre">'; print '<td class="nowrap"></td>'; @@ -2341,7 +2344,7 @@ else $i ++; } print '</table>'; - print '<br><center><input type="submit" class="button" value="' . $langs->trans('ToLink') . '"></center>'; + print '<br><center><input type="submit" class="button" value="' . $langs->trans('ToLink') . '"> <input type="submit" class="button" name="cancel" value="' . $langs->trans('Cancel') . '"></center>'; print '</form>'; $db->free($resqlorderlist); } else { @@ -2351,6 +2354,9 @@ else print '</div>'; } + // Show link to elements + if ($linktoelem) print '<br>'.$linktoelem; + print '</div><div class="fichehalfright"><div class="ficheaddleft">'; //print '</td><td valign="top" width="50%">'; //print '<br>'; diff --git a/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php b/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php index 211d6c4ad8fd2561492cd761b7ed7af98d149df8..a6d9164a91c35883db4dd11aac0a81b94e9b6ed5 100644 --- a/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php +++ b/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php @@ -32,6 +32,7 @@ echo '<br>'; if ($num > 1) print_titre($langs->trans("RelatedBills")); else print_titre($langs->trans("RelatedBill")); ?> + <table class="noborder allwidth"> <tr class="liste_titre"> <td><?php echo $langs->trans("Ref"); ?></td>