diff --git a/htdocs/adherents/fiche_subscription.php b/htdocs/adherents/fiche_subscription.php index 28fb2268d4c9aecb28d610f79b13f9dd5e2d1127..2e149dbc028b4ea4e3d3e1141cb1fd3d46e8fd9f 100644 --- a/htdocs/adherents/fiche_subscription.php +++ b/htdocs/adherents/fiche_subscription.php @@ -424,7 +424,7 @@ if ($rowid && $action != 'edit') // Show links to link elements /*$linktoelem = $form->showLinkToObjectBlock($object,array('order')); - if ($linktoelem) print '<br>'.$linktoelem; + if ($linktoelem) print ($somethingshown?'':'<br>').$linktoelem; // Link for paypal payment if (! empty($conf->paypal->enabled) && $object->statut != 0) { diff --git a/htdocs/comm/propal/card.php b/htdocs/comm/propal/card.php index 1e580826e964b5b5bc040d6f7a6f77a421cd30ea..0e2a4219e554b3257374a5f4c43e71c2abac6955 100644 --- a/htdocs/comm/propal/card.php +++ b/htdocs/comm/propal/card.php @@ -2324,9 +2324,9 @@ if ($action == 'create') $somethingshown = $form->showLinkedObjectBlock($object); // Show links to link elements - $linktoelem = $form->showLinkToObjectBlock($object); - if ($linktoelem) print '<br>'.$linktoelem; - + $linktoelem = $form->showLinkToObjectBlock($object, null, array('propal')); + if ($linktoelem) print ($somethingshown?'':'<br>').$linktoelem; + print '</div><div class="fichehalfright"><div class="ficheaddleft">'; // print '</td><td valign="top" width="50%">'; diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php index f3240443a6eae462152b37cbffba0eebb583aadf..21a6ed5fc97fa3c188861606ce0e19efea11d6fb 100644 --- a/htdocs/commande/card.php +++ b/htdocs/commande/card.php @@ -2614,9 +2614,9 @@ if ($action == 'create' && $user->rights->commande->creer) $somethingshown = $form->showLinkedObjectBlock($object); // Show links to link elements - //$linktoelem = $form->showLinkToObjectBlock($object); - //if ($linktoelem) print '<br>'.$linktoelem; - + $linktoelem = $form->showLinkToObjectBlock($object, null, array('order')); + if ($linktoelem) print ($somethingshown?'':'<br>').$linktoelem; + print '</div><div class="fichehalfright"><div class="ficheaddleft">'; diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index 6535cee7c98f54a35fb2f86152f970c55114f91a..7a7cb0c8e625d79461f97f8acf998fd084670216 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -134,14 +134,6 @@ if (empty($reshook)) include DOL_DOCUMENT_ROOT.'/core/actions_lineupdown.inc.php'; // Must be include, not include_once - // Link invoice to order - if (GETPOST('linkedOrder') && empty($cancel) && $id > 0) - { - $object->fetch($id); - $object->fetch_thirdparty(); - $result = $object->add_object_linked('commande', GETPOST('linkedOrder')); - } - // Action clone object if ($action == 'confirm_clone' && $confirm == 'yes' && $user->rights->facture->creer) { // if (1 == 0 && empty($_REQUEST["clone_content"]) && empty($_REQUEST["clone_receivers"])) { @@ -4103,9 +4095,9 @@ else if ($id > 0 || ! empty($ref)) $somethingshown = $form->showLinkedObjectBlock($object); // Show links to link elements - $linktoelem = $form->showLinkToObjectBlock($object,array('order')); - if ($linktoelem) print '<br>'.$linktoelem; - + $linktoelem = $form->showLinkToObjectBlock($object, null, array('invoice')); + if ($linktoelem) print ($somethingshown?'':'<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/contrat/card.php b/htdocs/contrat/card.php index 5a87d3b3d517762b828b9151a8941603d9375d05..dfa61513f9eb6aad406ad8aa0ffb441e89387579 100644 --- a/htdocs/contrat/card.php +++ b/htdocs/contrat/card.php @@ -2021,8 +2021,8 @@ else $somethingshown = $form->showLinkedObjectBlock($object); // Show links to link elements - $linktoelem = $form->showLinkToObjectBlock($object); - if ($linktoelem) print '<br>'.$linktoelem; + $linktoelem = $form->showLinkToObjectBlock($object, null, array('contrat')); + if ($linktoelem) print ($somethingshown?'':'<br>').$linktoelem; print '</div><div class="fichehalfright"><div class="ficheaddleft">'; diff --git a/htdocs/core/actions_dellink.inc.php b/htdocs/core/actions_dellink.inc.php index 45fb8c5f9ec2134f178efe0d82bf8f5185673a15..63218dde739c21bfbe7ecf5fa78d1c93a666fae2 100644 --- a/htdocs/core/actions_dellink.inc.php +++ b/htdocs/core/actions_dellink.inc.php @@ -1,5 +1,5 @@ <?php -/* Copyright (C) 2015 Laurent Destailleur <eldy@users.sourceforge.net> +/* Copyright (C) 2015-2016 Laurent Destailleur <eldy@users.sourceforge.net> * * 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 @@ -18,22 +18,29 @@ /** * \file htdocs/core/actions_dellink.inc.php - * \brief Code for actions on deleting link between elements + * \brief Code for actions on linking and deleting link between elements */ // $action must be defined // $object must be defined // $permissiondellink must be defined -// $uploaddir (example $conf->projet->dir_output . "/";) $dellinkid = GETPOST('dellinkid','int'); +$addlinkid = GETPOST('idtolinkto','int'); -// Set public note +// Link invoice to order +if ($action == 'addlink' && ! empty($permissiondellink) && ! GETPOST('cancel') && $id > 0 && $addlinkid > 0) +{ + $object->fetch($id); + $object->fetch_thirdparty(); + $result = $object->add_object_linked(GETPOST('addlink'), $addlinkid); +} + +// Delete link if ($action == 'dellink' && ! empty($permissiondellink) && ! GETPOST('cancel') && $dellinkid > 0) { $result=$object->deleteObjectLinked(0, '', 0, '', $dellinkid); if ($result < 0) setEventMessages($object->error,$object->errors,'errors'); } - diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index 71540cf16d76bce54b750dc4bb071e447e160df2..221e9c8306244c179d12f445211c9a9b82eee3f0 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -2364,6 +2364,10 @@ abstract class CommonObject $origin = (! empty($origin) ? $origin : $this->origin); $origin_id = (! empty($origin_id) ? $origin_id : $this->origin_id); + // Special case + if ($origin == 'order') $origin='commande'; + if ($origin == 'invoice') $origin='facture'; + $this->db->begin(); $sql = "INSERT INTO ".MAIN_DB_PREFIX."element_element ("; @@ -2548,7 +2552,10 @@ abstract class CommonObject // Set classfile $classfile = strtolower($subelement); $classname = ucfirst($subelement); - if ($objecttype == 'invoice_supplier') { + if ($objecttype == 'order') { + $classfile = 'commande'; $classname = 'Commande'; + } + else if ($objecttype == 'invoice_supplier') { $classfile = 'fournisseur.facture'; $classname = 'FactureFournisseur'; } else if ($objecttype == 'order_supplier') { @@ -2568,15 +2575,18 @@ abstract class CommonObject if ($conf->$module->enabled && (($element != $this->element) || $alsosametype)) { dol_include_once('/'.$classpath.'/'.$classfile.'.class.php'); - - foreach($objectids as $i => $objectid) // $i is rowid into llx_element_element + //print '/'.$classpath.'/'.$classfile.'.class.php'; + if (class_exists($classname)) { - $object = new $classname($this->db); - $ret = $object->fetch($objectid); - if ($ret >= 0) - { - $this->linkedObjects[$objecttype][$i] = $object; - } + foreach($objectids as $i => $objectid) // $i is rowid into llx_element_element + { + $object = new $classname($this->db); + $ret = $object->fetch($objectid); + if ($ret >= 0) + { + $this->linkedObjects[$objecttype][$i] = $object; + } + } } } } diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 813e1aa9a12d47d4a92e2a197e155b803c611bf7..ccc6c7b2d0ff4d84cb0f8f3ddd6666a161ff38ed 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -5264,12 +5264,13 @@ class Form /** * Show block with links to link to other objects. - * + * * @param CommonObject $object Object we want to show links to * @param array $restrictlinksto Restrict links to some elements, for exemple array('order') or array('supplier_order'). null or array() if no restriction. + * @param array $excludelinksto Do not show links of this type, for exemple array('order') or array('supplier_order'). null or array() if no exclusion. * @return string <0 if KO, >0 if OK */ - function showLinkToObjectBlock($object, $restrictlinksto=array()) + function showLinkToObjectBlock($object, $restrictlinksto=array(), $excludelinksto=array()) { global $conf, $langs, $hookmanager; global $bc; @@ -5278,201 +5279,90 @@ class Form if (! is_object($object->thirdparty)) $object->fetch_thirdparty(); - if ((empty($restrictlinksto) || in_array('order',$restrictlinksto)) - && ! empty($conf->commande->enabled)) - { - $linktoelem.=($linktoelem?' ':'').'<a href="#linktoorder" id="linktoorder">' . $langs->trans('LinkedOrder') . '</a>'; - - print ' - <script type="text/javascript" language="javascript"> - jQuery(document).ready(function() { - jQuery("#linktoorder").click(function() { - jQuery("#orderlist").toggle(); - jQuery("#linktoorder").toggle(); - }); - }); - </script> - '; - - print '<div id="orderlist"'.(empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)?' 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"; - $sql .= ", " . MAIN_DB_PREFIX . "commande as c"; - $sql .= ' WHERE c.fk_soc = s.rowid AND c.fk_soc = ' . $object->thirdparty->id . ''; - - $resqlorderlist = $this->db->query($sql); - if ($resqlorderlist) - { - $num = $this->db->num_rows($resqlorderlist); - $i = 0; - - print '<br><form action="" method="POST" name="LinkedOrder">'; - print '<table class="noborder">'; - print '<tr class="liste_titre">'; - print '<td class="nowrap"></td>'; - print '<td align="center">' . $langs->trans("Ref") . '</td>'; - print '<td align="left">' . $langs->trans("RefCustomer") . '</td>'; - print '<td align="left">' . $langs->trans("AmountHTShort") . '</td>'; - print '<td align="left">' . $langs->trans("Company") . '</td>'; - print '</tr>'; - while ($i < $num) - { - $objp = $this->db->fetch_object($resqlorderlist); - - $var = ! $var; - print '<tr ' . $bc [$var] . '>'; - print '<td aling="left">'; - print '<input type="radio" name="linkedOrder" value=' . $objp->rowid . '>'; - print '</td>'; - print '<td align="center">' . $objp->ref . '</td>'; - print '<td>' . $objp->ref_client . '</td>'; - print '<td>' . price($objp->total_ht) . '</td>'; - print '<td>' . $objp->name . '</td>'; - print '</tr>'; - - $i ++; - } - print '</table>'; - print '<div class="center"><input type="submit" class="button" value="' . $langs->trans('ToLink') . '"> <input type="submit" class="button" name="cancel" value="' . $langs->trans('Cancel') . '"></div>'; - - print '</form>'; - $this->db->free($resqlorderlist); - } else { - dol_print_error($this->db); - } - - print '</div>'; - } - - if ((empty($restrictlinksto) || (in_array('fichinter',$restrictlinksto))) && ! empty($conf->ficheinter->enabled)) + $possiblelinks=array( + 'propal'=>array('enabled'=>$conf->propale->enabled, 'perms'=>1, 'label'=>'LinkToProposal', 'sql'=>"SELECT s.rowid as socid, s.nom as name, s.client, t.rowid, t.ref, t.ref_client, t.total_ht FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."propal as t WHERE t.fk_soc = s.rowid AND t.fk_soc = ".$object->thirdparty->id), + 'order'=>array('enabled'=>$conf->commande->enabled, 'perms'=>1, 'label'=>'LinkToOrder', 'sql'=>"SELECT s.rowid as socid, s.nom as name, s.client, t.rowid, t.ref, t.ref_client, t.total_ht FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."commande as t WHERE t.fk_soc = s.rowid AND t.fk_soc = ".$object->thirdparty->id), + 'invoice'=>array('enabled'=>$conf->facture->enabled, 'perms'=>1, 'label'=>'LinkToInvoice', 'sql'=>"SELECT s.rowid as socid, s.nom as name, s.client, t.rowid, t.facnumber as ref, t.ref_client, t.total as total_ht FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."facture as t WHERE t.fk_soc = s.rowid AND t.fk_soc = ".$object->thirdparty->id), + 'contrat'=>array('enabled'=>$conf->contrat->enabled , 'perms'=>1, 'label'=>'LinkToContract', 'sql'=>"SELECT s.rowid as socid, s.nom as name, s.client, t.rowid, t.ref, t.ref_supplier, '' as total_ht FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."contrat as t WHERE t.fk_soc = s.rowid AND t.fk_soc = ".$object->thirdparty->id), + 'fichinter'=>array('enabled'=>$conf->ficheinter->enabled, 'perms'=>1, 'label'=>'LinkToIntervention', 'sql'=>"SELECT s.rowid as socid, s.nom as name, s.client, t.rowid, t.ref FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."fichinter as t WHERE t.fk_soc = s.rowid AND t.fk_soc = ".$object->thirdparty->id), + 'supplier_proposal'=>array('enabled'=>$conf->supplier_proposal->enabled , 'perms'=>1, 'label'=>'LinkToSupplierProposal', 'sql'=>"SELECT s.rowid as socid, s.nom as name, s.client, t.rowid, t.ref, '' as ref_supplier, t.total_ht FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."supplier_proposal as t WHERE t.fk_soc = s.rowid AND t.fk_soc = ".$object->thirdparty->id), + 'order_supplier'=>array('enabled'=>$conf->fournisseur->commande->enabled , 'perms'=>1, 'label'=>'LinkToSupplierOrder', 'sql'=>"SELECT s.rowid as socid, s.nom as name, s.client, t.rowid, t.ref, t.ref_supplier, t.total_ht FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."commande_fournisseur as t WHERE t.fk_soc = s.rowid AND t.fk_soc = ".$object->thirdparty->id), + 'invoice_supplier'=>array('enabled'=>$conf->fournisseur->facture->enabled , 'perms'=>1, 'label'=>'LinkToSupplierInvoice', 'sql'=>"SELECT s.rowid as socid, s.nom as name, s.client, t.rowid, t.ref, t.ref_supplier, t.total_ht FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."facture_fourn as t WHERE t.fk_soc = s.rowid AND t.fk_soc = ".$object->thirdparty->id) + ); + + foreach($possiblelinks as $key => $possiblelink) { - $linktoelem.=($linktoelem?' ':'').'<a href="#" id="linktoorder">' . $langs->trans('LinkedFichinter') . '</a>'; - - print ' - <script type="text/javascript" language="javascript"> - jQuery(document).ready(function() { - jQuery("#linktoorder").click(function() { - jQuery("#orderlist").toggle(); - jQuery("#linktoorder").toggle(); - }); - }); - </script> - '; - - print '<div id="orderlist"'.(empty($conf->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 = 0; + + if (! empty($possiblelink['perms']) && (empty($restrictlinksto) || in_array($key, $restrictlinksto)) && (empty($excludelinksto) || ! in_array($key, $excludelinksto))) { - $num = $this->db->num_rows($resqlorderlist); - $i = 0; - - print '<br><form action="" method="POST" name="LinkedFichinter">'; - print '<table class="noborder">'; - print '<tr class="liste_titre">'; - print '<td class="nowrap"></td>'; - print '<td align="center">' . $langs->trans("Ref") . '</td>'; - print '<td align="left">' . $langs->trans("Company") . '</td>'; - print '</tr>'; - while ($i < $num) + print '<div id="'.$key.'list"'.(empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)?' style="display:none"':'').'>'; + $sql = $possiblelink['sql']; + $resqllist = $this->db->query($sql); + if ($resqllist) { - $objp = $this->db->fetch_object($resqlorderlist); - - $var = ! $var; - print '<tr ' . $bc [$var] . '>'; - print '<td aling="left">'; - print '<input type="radio" name="LinkedFichinter" value=' . $objp->rowid . '>'; - print '<td align="center">' . $objp->ref . '</td>'; - print '<td>' . $objp->name . '</td>'; - print '</td>'; + $num = $this->db->num_rows($resqllist); + $i = 0; + + print '<br><form action="'.$_SERVER["PHP_SELF"].'" method="POST" name="formlinked'.$key.'">'; + print '<input type="hidden" name="id" value="'.$object->id.'">'; + print '<input type="hidden" name="action" value="addlink">'; + print '<input type="hidden" name="addlink" value="'.$key.'">'; + print '<table class="noborder">'; + print '<tr class="liste_titre">'; + print '<td class="nowrap"></td>'; + print '<td align="center">' . $langs->trans("Ref") . '</td>'; + print '<td align="left">' . $langs->trans("RefCustomer") . '</td>'; + print '<td align="left">' . $langs->trans("AmountHTShort") . '</td>'; + print '<td align="left">' . $langs->trans("Company") . '</td>'; print '</tr>'; - - $i ++; + while ($i < $num) + { + $objp = $this->db->fetch_object($resqlorderlist); + + $var = ! $var; + print '<tr ' . $bc [$var] . '>'; + print '<td aling="left">'; + print '<input type="radio" name="idtolinkto" value=' . $objp->rowid . '>'; + print '</td>'; + print '<td align="center">' . $objp->ref . '</td>'; + print '<td>' . $objp->ref_client . '</td>'; + print '<td>' . price($objp->total_ht) . '</td>'; + print '<td>' . $objp->name . '</td>'; + print '</tr>'; + $i++; + } + print '</table>'; + print '<div class="center"><input type="submit" class="button" value="' . $langs->trans('ToLink') . '"> <input type="submit" class="button" name="cancel" value="' . $langs->trans('Cancel') . '"></div>'; + + print '</form>'; + $this->db->free($resqllist); + } else { + dol_print_error($this->db); } - print '</table>'; - print '<div class="center"><input type="submit" class="button" value="' . $langs->trans('ToLink') . '"> <input type="submit" class="button" name="cancel" value="' . $langs->trans('Cancel') . '"></div>'; - print '</form>'; - $this->db->free($resqlorderlist); - } else { - dol_print_error($this->db); - } - - print '</div>'; - } - - if ((empty($restrictlinksto) || in_array('supplier_order',$restrictlinksto)) - && ! empty($conf->fournisseur->enabled)) - { - $linktoelem.=($linktoelem?' ':'').'<a href="#linktoorder" id="linktoorder">' . $langs->trans('LinkedOrder') . '</a>'; - - print ' - <script type="text/javascript" language="javascript"> - jQuery(document).ready(function() { - jQuery("#linktoorder").click(function() { - jQuery("#orderlist").toggle(); - jQuery("#linktoorder").toggle(); - }); - }); - </script> - '; - - print '<div id="orderlist"'.(empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)?' 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"; - $sql .= ", " . MAIN_DB_PREFIX . "commande_fournisseur as c"; - $sql .= ' WHERE c.fk_soc = s.rowid AND c.fk_soc = ' . $object->thirdparty->id; - - $resqlorderlist = $this->db->query($sql); - if ($resqlorderlist) - { - $num = $this->db->num_rows($resqlorderlist); - $i = 0; - - print '<br><form action="" method="POST" name="LinkedOrder">'; - print '<table class="noborder">'; - print '<tr class="liste_titre">'; - print '<td class="nowrap"></td>'; - print '<td align="center">' . $langs->trans("Ref") . '</td>'; - print '<td align="left">' . $langs->trans("RefSupplier") . '</td>'; - print '<td align="left">' . $langs->trans("AmountHTShort") . '</td>'; - print '<td align="left">' . $langs->trans("Company") . '</td>'; - print '</tr>'; - while ($i < $num) + print '</div>'; + if ($num > 0) { - $objp = $this->db->fetch_object($resqlorderlist); - - $var = ! $var; - print '<tr ' . $bc [$var] . '>'; - print '<td aling="left">'; - print '<input type="radio" name="linkedOrder" value=' . $objp->rowid . '>'; - print '</td>'; - print '<td align="center">' . $objp->ref . '</td>'; - print '<td>' . $objp->ref_supplier . '</td>'; - print '<td>' . price($objp->total_ht) . '</td>'; - print '<td>' . $objp->name . '</td>'; - print '</tr>'; - - $i ++; - } - print '</table>'; - print '<br><div class="center"><input type="submit" class="button" value="' . $langs->trans('ToLink') . '"> <input type="submit" class="button" name="cancel" value="' . $langs->trans('Cancel') . '"></div>'; - print '</form>'; - $this->db->free($resqlorderlist); - } else { - dol_print_error($this->db); + print ' + <!-- Add js to show linkto box for '.$key.' ('.$num.' records) --> + <script type="text/javascript" language="javascript"> + jQuery(document).ready(function() { + jQuery("#linkto'.$key.'").click(function() { + jQuery("#'.$key.'list").toggle(); + jQuery("#linkto'.$key.'").toggle(); + }); + }); + </script> + '; + } } - print '</div>'; + $linktoelem.=($linktoelem?' ':''); + if ($num > 0) $linktoelem.='<a href="#linkto'.$key.'" id="linkto'.$key.'">' . $langs->trans($possiblelink['label']) .' ('.$num.')</a>'; + //else $linktoelem.=$langs->trans($possiblelink['label']); + else $linktoelem.='<a href="#linkto'.$key.'" class="disabled" id="linkto'.$key.'">' . $langs->trans($possiblelink['label']) . '</a>'; } - return $linktoelem; } diff --git a/htdocs/expedition/card.php b/htdocs/expedition/card.php index e38ebd977e1e07ded2b9533a14ab226bf9b35cf7..cbcee84451f67cf8f1a8edab713cd4a1a3407b36 100644 --- a/htdocs/expedition/card.php +++ b/htdocs/expedition/card.php @@ -1836,8 +1836,8 @@ else if ($id || $ref) // Show links to link elements //$linktoelem = $form->showLinkToObjectBlock($object); - //if ($linktoelem) print '<br>'.$linktoelem; - + //if ($linktoelem) print ($somethingshown?'':'<br>').$linktoelem; + print '</div><div class="fichehalfright"><div class="ficheaddleft">'; // List of actions on element diff --git a/htdocs/expensereport/card.php b/htdocs/expensereport/card.php index e177312a7d6cacdfc441dfeb32b433c6b75b7bb5..1b9bd2592ea886ca8c3d6808f516778138b072f8 100644 --- a/htdocs/expensereport/card.php +++ b/htdocs/expensereport/card.php @@ -2099,11 +2099,9 @@ if ($action != 'create' && $action != 'edit' && ($id || $ref)) // 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 '<br>'.$linktoelem; - + if (! empty($conf->global->EXPENSES_LINK_TO_INTERVENTION)) $linktoelements[]='fichinter'; + $linktoelem = $form->showLinkToObjectBlock($object, $linktoelements, array('expensereport')); + if ($linktoelem) print ($somethingshown?'':'<br>').$linktoelem; } llxFooter(); diff --git a/htdocs/fichinter/card.php b/htdocs/fichinter/card.php index 2a4ec4337f2397bdea1fd01eeed937c77f05d429..833f2140de9b530ba28e1ba1b8cc4d061843e5ec 100644 --- a/htdocs/fichinter/card.php +++ b/htdocs/fichinter/card.php @@ -1667,9 +1667,9 @@ else if ($id > 0 || ! empty($ref)) $somethingshown = $form->showLinkedObjectBlock($object); // Show links to link elements - //$linktoelem = $form->showLinkToObjectBlock($object); - //if ($linktoelem) print '<br>'.$linktoelem; - + $linktoelem = $form->showLinkToObjectBlock($object, null, array('fichinter')); + if ($linktoelem) print ($somethingshown?'':'<br>').$linktoelem; + print '</div><div class="fichehalfright"><div class="ficheaddleft">'; diff --git a/htdocs/fourn/commande/card.php b/htdocs/fourn/commande/card.php index fa93be5020d63c40d5f04014423e9c6286999e82..a642855a241f9a85a3a9219c079051cc7c2ebe12 100644 --- a/htdocs/fourn/commande/card.php +++ b/htdocs/fourn/commande/card.php @@ -2834,8 +2834,8 @@ elseif (! empty($object->id)) $somethingshown = $form->showLinkedObjectBlock($object); // Show links to link elements - //$linktoelem = $form->showLinkToObjectBlock($object); - //if ($linktoelem) print '<br>'.$linktoelem; + $linktoelem = $form->showLinkToObjectBlock($object, null, array('order_supplier')); + if ($linktoelem) print ($somethingshown?'':'<br>').$linktoelem; print '</div><div class="fichehalfright"><div class="ficheaddleft">'; diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php index 280664ea421c709ebddc1aa0da403ad9ae9675aa..b2c823d68fdb330eb3ec8aec23e2349d9958a393 100644 --- a/htdocs/fourn/facture/card.php +++ b/htdocs/fourn/facture/card.php @@ -2239,9 +2239,9 @@ else $somethingshown = $form->showLinkedObjectBlock($object); // Show links to link elements - $linktoelem = $form->showLinkToObjectBlock($object,array('supplier_order')); - if ($linktoelem) print '<br>'.$linktoelem; - + $linktoelem = $form->showLinkToObjectBlock($object, null, array('invoice_supplier')); + if ($linktoelem) print ($somethingshown?'':'<br>').$linktoelem; + print '</div><div class="fichehalfright"><div class="ficheaddleft">'; //print '</td><td valign="top" width="50%">'; diff --git a/htdocs/langs/fr_FR/main.lang b/htdocs/langs/fr_FR/main.lang index 5eb99eb0f4306970c688bd10adc4b7f6bc1ba76f..fd7d8068f15543cc6edfd2feb1125d2a9c755033 100644 --- a/htdocs/langs/fr_FR/main.lang +++ b/htdocs/langs/fr_FR/main.lang @@ -640,6 +640,14 @@ NewAttribute=Nouvel attribut AttributeCode=Code de l'attribut URLPhoto=URL de la photo/logo SetLinkToAnotherThirdParty=Lier vers un autre tiers +LinkToProposal=Link to proposal +LinkToOrder=Link to order +LinkToInvoice=Link to invoice +LinkToSupplierOrder=Link to supplier order +LinkToSupplierProposal=Link to supplier proposal +LinkToSupplierInvoice=Link to supplier invoice +LinkToContract=Link to contract +LinkToIntervention=Link to intervention CreateDraft=Créer brouillon SetToDraft=Retour en brouillon ClickToEdit=Cliquer ici pour éditer diff --git a/htdocs/product/stock/productlot_card.php b/htdocs/product/stock/productlot_card.php index 4af5b8a4d591af2c8abd619c356af08ac7f66858..d13460886925d3c4312d74efc7b77d8519699428 100644 --- a/htdocs/product/stock/productlot_card.php +++ b/htdocs/product/stock/productlot_card.php @@ -366,8 +366,8 @@ print '<tr><td class="fieldrequired">'.$langs->trans("Fieldimport_key").'</td><t // Example 2 : Adding links to objects //$somethingshown=$form->showLinkedObjectBlock($object); //$linktoelem = $form->showLinkToObjectBlock($object); - //if ($linktoelem) print '<br>'.$linktoelem; - + //if ($linktoelem) print ($somethingshown?'':'<br>').$linktoelem; + } diff --git a/htdocs/supplier_proposal/card.php b/htdocs/supplier_proposal/card.php index 3e7871b2c4a175919071948e5b81eb23a4d0d265..16029c5a95e1e089c86edcf3d49c7bf14b428f4a 100644 --- a/htdocs/supplier_proposal/card.php +++ b/htdocs/supplier_proposal/card.php @@ -1809,9 +1809,10 @@ if ($action == 'create') $somethingshown = $form->showLinkedObjectBlock($object); // Show links to link elements - //$linktoelem = $form->showLinkToObjectBlock($object); - //if ($linktoelem) print '<br>'.$linktoelem; + $linktoelem = $form->showLinkToObjectBlock($object, null, array('supplier_proposal')); + if ($linktoelem) print ($somethingshown?'':'<br>').$linktoelem; + print '</div><div class="fichehalfright"><div class="ficheaddleft">'; // List of actions on element