editSuccess.php 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245
  1. <?php $katao_product = $form->getObject() ?>
  2. <div class="content-add01">
  3. <div class="heading01"><h1><?php echo $katao_product->isNew() ? 'Ajout' : 'Modification' ?> d'un produit</h1></div>
  4. </div>
  5. <form action="<?php echo url_for('kataoProduct/update' . (!$katao_product->isNew() ? '?id=' . $katao_product->getId() : '')) ?>" method="post" <?php $form->isMultipart() and print 'enctype="multipart/form-data" ' ?>>
  6. <table>
  7. <tfoot>
  8. <tr>
  9. <td colspan="2">
  10. <br /><input type="submit" value="Sauver" onclick="if(checkPrices()){computeMaxSolAmount();return true;}else{return false;}" /> ou <a href="<?php echo url_for('kataoProduct/index') ?>">annuler</a><?php if (!$katao_product->isNew()): ?> ou <a href="<?php echo url_for('@katao_product_edit_presentation?id=' . $katao_product->getId()) ?>">modifier sa présentation</a><?php endif ?>
  11. </td>
  12. </tr>
  13. </tfoot>
  14. <tbody>
  15. <?php echo $form->renderGlobalErrors() ?>
  16. <tr valign="top">
  17. <td colspan="2" align="left"><u>Produit</u></td>
  18. </tr>
  19. <tr valign="top">
  20. <th align="left"><?php echo $form['name']->renderLabel() ?></th>
  21. <td>
  22. <?php echo $form['name'] ?>
  23. <?php echo $form['name']->renderError() ?>
  24. </td>
  25. </tr>
  26. <tr valign="top">
  27. <th align="left"><?php echo $form['reference']->renderLabel() ?></th>
  28. <td>
  29. <?php echo $form['reference'] ?>
  30. <?php echo $form['reference']->renderError() ?>
  31. </td>
  32. </tr>
  33. <tr valign="top">
  34. <th align="left"><?php echo $form['katao_product_family_id']->renderLabel() ?></th>
  35. <td>
  36. <?php echo $form['katao_product_family_id'] ?>
  37. <?php echo $form['katao_product_family_id']->renderError() ?>
  38. </td>
  39. </tr>
  40. <tr valign="top">
  41. <th align="left"><?php echo $form['picture']->renderLabel() ?></th>
  42. <td>
  43. <?php echo $form['picture'] ?>
  44. <?php echo $form['picture']->renderError() ?>
  45. </td>
  46. </tr>
  47. <tr valign="top">
  48. <td colspan="2" align="left"><br /><u>Fournisseur</u></td>
  49. </tr>
  50. <?php if (!$sf_user->isJustSupplier()): ?>
  51. <tr valign="top">
  52. <th align="left"><?php echo $form['katao_supplier_id']->renderLabel() ?></th>
  53. <td>
  54. <?php echo $form['katao_supplier_id'] ?>
  55. <?php echo $form['katao_supplier_id']->renderError() ?>
  56. </td>
  57. </tr>
  58. <?php endif ?>
  59. <tr valign="top">
  60. <th align="left"><?php echo $form['min_order_number']->renderLabel() ?></th>
  61. <td>
  62. <?php echo $form['min_order_number'] ?>
  63. <?php echo $form['min_order_number']->renderError() ?>
  64. </td>
  65. </tr>
  66. <tr valign="top">
  67. <th align="left"><?php echo $form['authorize_decimal']->renderLabel() ?></th>
  68. <td>
  69. <?php echo $form['authorize_decimal'] ?>
  70. <?php echo $form['authorize_decimal']->renderError() ?>
  71. </td>
  72. </tr>
  73. <tr valign="top">
  74. <th align="left"><?php echo $form['delivery_delay']->renderLabel() ?></th>
  75. <td>
  76. <?php echo $form['delivery_delay'] ?> jours
  77. <?php echo $form['delivery_delay']->renderError() ?>
  78. </td>
  79. </tr>
  80. <tr valign="top">
  81. <th align="left"><?php echo $form['is_archived']->renderLabel() ?></th>
  82. <td>
  83. <?php echo $form['is_archived'] ?>
  84. <?php echo $form['is_archived']->renderError() ?>
  85. <?php echo $form['id'] ?>
  86. <?php if ($sf_user->isJustSupplier()): ?>
  87. <?php echo input_hidden_tag('katao_product[katao_supplier_id]', $sf_user->getInstance()->getKataoSupplierId()) ?>
  88. <?php echo input_hidden_tag('katao_product[margin]', $form['margin']->getValue()) ?>
  89. <?php echo input_hidden_tag('katao_product[tva_rate]', $form['tva_rate']->getValue()) ?>
  90. <?php endif ?>
  91. </td>
  92. </tr>
  93. <tr valign="top">
  94. <td colspan="2" align="left"><br /><u>Tarification</u></td>
  95. </tr>
  96. <tr valign="top">
  97. <th align="left"><?php echo $form['unit_price_euro']->renderLabel() ?></th>
  98. <td>
  99. <?php echo $form['unit_price_euro'] ?> €
  100. <?php if (!$sf_user->isJustSupplier()): ?>
  101. &nbsp;<a href="javascript://" onclick="computeUnitPriceWithTaxes();" title="Calculer le prix de vente TTC"><?php echo image_tag('actions/calculator.png', array('alt' => 'Calculer le prix de vente TTC', 'align' => 'top')) ?></a>
  102. <?php endif ?>
  103. <?php echo $form['unit_price_euro']->renderError() ?>
  104. </td>
  105. </tr>
  106. <?php if (!$sf_user->isJustSupplier()): ?>
  107. <tr valign="top">
  108. <th align="left"><?php echo $form['margin']->renderLabel() ?></th>
  109. <td>
  110. <?php echo $form['margin'] ?> %
  111. <?php if (!$sf_user->isJustSupplier()): ?>
  112. &nbsp;<a href="javascript://" onclick="computeMargin();" title="Calculer la marge"><?php echo image_tag('actions/calculator.png', array('alt' => 'Calculer la marge', 'align' => 'top')) ?></a>
  113. <?php endif ?>
  114. <?php echo $form['margin']->renderError() ?>
  115. </td>
  116. </tr>
  117. <?php endif ?>
  118. <tr valign="top">
  119. <th align="left"><?php echo $form['tva_rate']->renderLabel() ?></th>
  120. <td>
  121. <?php echo $form['tva_rate'] ?>
  122. <?php echo $form['tva_rate']->renderError() ?>
  123. </td>
  124. </tr>
  125. <?php if (!$sf_user->isJustSupplier()): ?>
  126. <tr valign="top">
  127. <th align="left"><label>Prix de vente TTC</label></th>
  128. <td>
  129. <?php echo input_tag('sell_price', '', array('style' => 'width: 54px')) ?> €
  130. &nbsp;<a href="javascript://" onclick="computeUnitPriceWithoutTaxes();" title="Calculer le prix d'achat HT"><?php echo image_tag('actions/calculator.png', array('alt' => 'Calculer le prix d\'achat HT', 'align' => 'top')) ?></a>
  131. </td>
  132. </tr>
  133. <?php endif ?>
  134. <tr valign="top">
  135. <td colspan="2" align="left"><br /><u>Monnaie complémentaire</u></td>
  136. </tr>
  137. <?php if (!$sf_user->isJustSupplier()): ?>
  138. <tr valign="top">
  139. <th align="left"><label>Pourcentage</label></th>
  140. <td>
  141. <?php echo input_tag('sol_percent', '', array('style' => 'width: 54px')) ?> %
  142. </td>
  143. </tr>
  144. <?php endif ?>
  145. <tr valign="top">
  146. <th align="left"><?php echo $form['max_sol_amount']->renderLabel() ?></th>
  147. <td>
  148. <?php echo $form['max_sol_amount'] ?> <?php echo wpConfig::getAdditionalCurrencyName() ?>
  149. <?php if (!$sf_user->isJustSupplier()): ?>
  150. &nbsp;<a href="javascript://" onclick="computeMaxSolAmount();" title="Calculer le montant maxi de la monnaie complémentaire"><?php echo image_tag('actions/calculator.png', array('alt' => 'Calculer le montant maxi de la monnaie complémentaire', 'align' => 'top')) ?></a>
  151. <?php endif ?>
  152. <?php echo $form['max_sol_amount']->renderError() ?>
  153. </td>
  154. </tr>
  155. <?php if (!$sf_user->isJustSupplier()): ?>
  156. <tr valign="top">
  157. <td colspan="2" align="left"><br /><u>Codes comptables</u></td>
  158. </tr>
  159. <tr valign="top">
  160. <th align="left"><?php echo $form['accounting_code_purchase']->renderLabel() ?></th>
  161. <td>
  162. <?php echo $form['accounting_code_purchase'] ?>
  163. <?php echo $form['accounting_code_purchase']->renderError() ?>
  164. </td>
  165. </tr>
  166. <tr valign="top">
  167. <th align="left"><?php echo $form['accounting_code_sell']->renderLabel() ?></th>
  168. <td>
  169. <?php echo $form['accounting_code_sell'] ?>
  170. <?php echo $form['accounting_code_sell']->renderError() ?>
  171. </td>
  172. </tr>
  173. <tr><td colspan="2"><i>Laisser vide pour utiliser celui du rayon</i></td></tr>
  174. <?php endif ?>
  175. </tbody>
  176. </table>
  177. </form>
  178. <script type="text/javascript" language="JavaScript">
  179. /* <![CDATA[ */
  180. function checkPrices(){
  181. var price_ht_displayed = parseFloat($F('katao_product_unit_price_euro'));
  182. var price_ht_calculated = round3decimals(parseFloat($F('sell_price')) / (1+parseFloat($F('katao_product_margin'))/100) / (1+parseFloat($F('katao_product_tva_rate'))));
  183. if (price_ht_displayed != price_ht_calculated) {
  184. alert('ATTENTION : Le prix d\'achat HT ('+price_ht_displayed+' €) ne correspond pas à celui calculé ('+price_ht_calculated+' €).\n\nMerci de bien vouloir le modifier ou le calculer en cliquant sur la calculette\nà côté du champ "Prix de vente TTC".\n');
  185. return false;
  186. }
  187. return true;
  188. }
  189. function computeUnitPriceWithTaxes(){
  190. $('sell_price').value = round2decimals(parseFloat($F('katao_product_unit_price_euro')) * (1+parseFloat($F('katao_product_margin'))/100) * (1+parseFloat($F('katao_product_tva_rate'))));
  191. }
  192. function computeUnitPriceWithoutTaxes(){
  193. $('katao_product_unit_price_euro').value = round3decimals(parseFloat($F('sell_price')) / (1+parseFloat($F('katao_product_margin'))/100) / (1+parseFloat($F('katao_product_tva_rate'))));
  194. }
  195. function computeMaxSolAmount(){
  196. if (!$F('sol_percent')) {
  197. $('sol_percent').value = 0;
  198. }
  199. if (!$F('sell_price')) {
  200. computeUnitPriceWithTaxes();
  201. }
  202. $('katao_product_max_sol_amount').value = Math.floor(10 * parseFloat($F('sell_price')) * parseFloat($F('sol_percent')) / 100);
  203. }
  204. function computeSolPercent(){
  205. $('sol_percent').value = Math.round(100 * parseFloat($F('katao_product_max_sol_amount')) / parseFloat($F('sell_price')) / 10);
  206. }
  207. function computeMargin(){
  208. $('katao_product_margin').value = Math.round(100 * parseFloat($F('sell_price')) / (parseFloat($F('katao_product_unit_price_euro')) * (parseFloat($F('katao_product_tva_rate')) + 1)) - 100);
  209. }
  210. function round2decimals(value){
  211. return Math.round(value*100)/100;
  212. }
  213. function round3decimals(value){
  214. return Math.round(value*1000)/1000;
  215. }
  216. var margin = parseFloat($F('katao_product_margin'));
  217. if (1 >= margin) {
  218. margin = 100 * margin;
  219. }
  220. $('katao_product_margin').value = margin;
  221. <?php if (!$sf_user->isJustSupplier()): ?>
  222. <?php if ($katao_product->isNew() && !$sf_request->isMethod('post')): ?>
  223. $('sell_price').value = '';
  224. $('sol_percent').value = <?php echo wpConfig::getDefaultProductSolPercent() ?>
  225. <?php else: ?>
  226. computeUnitPriceWithTaxes();
  227. computeSolPercent();
  228. <?php endif ?>
  229. <?php endif ?>
  230. /* ]]> */
  231. </script>