From eac99f9eecf79f2795e93742ba0701e192fbb8eb Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Sat, 4 Aug 2007 10:10:45 +0000 Subject: [PATCH] =?UTF-8?q?Ajax:=20d=E9but=20ajout=20message=20de=20confir?= =?UTF-8?q?mation=20de=20suppression=20ou=20autre=20afin=20d'=E9viter=20de?= =?UTF-8?q?=20recharger=20la=20page?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htdocs/comm/propal.php | 78 ++++++++++-------- htdocs/lib/lib_head.js | 17 ++++ htdocs/main.inc.php | 2 +- htdocs/theme/common/window/alert/bottom.gif | Bin 0 -> 70 bytes .../theme/common/window/alert/bottom_left.gif | Bin 0 -> 49 bytes .../common/window/alert/bottom_right.gif | Bin 0 -> 49 bytes htdocs/theme/common/window/alert/left.gif | Bin 0 -> 84 bytes htdocs/theme/common/window/alert/overlay.png | Bin 0 -> 2829 bytes htdocs/theme/common/window/alert/progress.gif | Bin 0 -> 1542 bytes htdocs/theme/common/window/alert/right.gif | Bin 0 -> 84 bytes htdocs/theme/common/window/alert/top.gif | Bin 0 -> 70 bytes htdocs/theme/common/window/alert/top_left.gif | Bin 0 -> 49 bytes .../theme/common/window/alert/top_right.gif | Bin 0 -> 49 bytes 13 files changed, 63 insertions(+), 34 deletions(-) create mode 100644 htdocs/theme/common/window/alert/bottom.gif create mode 100644 htdocs/theme/common/window/alert/bottom_left.gif create mode 100644 htdocs/theme/common/window/alert/bottom_right.gif create mode 100644 htdocs/theme/common/window/alert/left.gif create mode 100644 htdocs/theme/common/window/alert/overlay.png create mode 100644 htdocs/theme/common/window/alert/progress.gif create mode 100644 htdocs/theme/common/window/alert/right.gif create mode 100644 htdocs/theme/common/window/alert/top.gif create mode 100644 htdocs/theme/common/window/alert/top_left.gif create mode 100644 htdocs/theme/common/window/alert/top_right.gif diff --git a/htdocs/comm/propal.php b/htdocs/comm/propal.php index cb0ab675301..ba445cb2c09 100644 --- a/htdocs/comm/propal.php +++ b/htdocs/comm/propal.php @@ -95,20 +95,39 @@ if ($_POST['action'] == 'confirm_delete' && $_POST['confirm'] == 'yes') exit; } -if ($_POST['action'] == 'confirm_deleteproductline' && $_POST['confirm'] == 'yes' && $conf->global->PRODUIT_CONFIRM_DELETE_LINE) +/* + * Supprime une ligne produit SANS confirmation + */ +if ($_GET['action'] == 'deleteline' && $user->rights->propale->creer && !$conf->global->PRODUIT_CONFIRM_DELETE_LINE) +{ + $propal = new Propal($db); + $propal->fetch($_GET['propalid']); + $propal->delete_product($_GET['ligne']); + if ($_REQUEST['lang_id']) + { + $outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf); + $outputlangs->setDefaultLang($_REQUEST['lang_id']); + } + propale_pdf_create($db, $propal->id, $propal->modelpdf, $outputlangs); +} + +/* + * Supprime une ligne produit AVEC confirmation + */ +if ($_REQUEST['action'] == 'confirm_deleteline' && $_REQUEST['confirm'] == 'yes' && $conf->global->PRODUIT_CONFIRM_DELETE_LINE) { if ($user->rights->propale->creer) + { + $propal = new Propal($db); + $propal->fetch($_GET['propalid']); + $result=$propal->delete_product($_GET['ligne']); + if ($_REQUEST['lang_id']) { - $propal = new Propal($db); - $propal->fetch($_GET['propalid']); - $result=$propal->delete_product($_GET['ligne']); - if ($_REQUEST['lang_id']) - { - $outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf); - $outputlangs->setDefaultLang($_REQUEST['lang_id']); - } - propale_pdf_create($db, $propal->id, $propal->modelpdf, $outputlangs); + $outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf); + $outputlangs->setDefaultLang($_REQUEST['lang_id']); } + propale_pdf_create($db, $propal->id, $propal->modelpdf, $outputlangs); + } Header('Location: '.$_SERVER["PHP_SELF"].'?propalid='.$_GET['propalid']); exit; } @@ -598,23 +617,6 @@ if ($_REQUEST['action'] == 'builddoc' && $user->rights->propale->creer) } } - -if ($_GET['action'] == 'del_ligne' && $user->rights->propale->creer && !$conf->global->PRODUIT_CONFIRM_DELETE_LINE) -{ - /* - * Supprime une ligne produit dans la propale - */ - $propal = new Propal($db); - $propal->fetch($_GET['propalid']); - $propal->delete_product($_GET['ligne']); - if ($_REQUEST['lang_id']) - { - $outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf); - $outputlangs->setDefaultLang($_REQUEST['lang_id']); - } - propale_pdf_create($db, $propal->id, $propal->modelpdf, $outputlangs); -} - if ($_POST['action'] == 'classin') { $propal = new Propal($db); @@ -726,11 +728,11 @@ if ($_GET['propalid'] > 0) } /* - * Confirmation de la suppression d'une ligne produit + * Confirmation de la suppression d'une ligne produit/service */ - if ($_GET['action'] == 'delete_product_line' && $conf->global->PRODUIT_CONFIRM_DELETE_LINE) + if ($_GET['action'] == 'ask_deleteline' && $conf->global->PRODUIT_CONFIRM_DELETE_LINE) { - $html->form_confirm($_SERVER["PHP_SELF"].'?propalid='.$propal->id.'&ligne='.$_GET["ligne"], $langs->trans('DeleteProductLine'), $langs->trans('ConfirmDeleteProductLine'), 'confirm_deleteproductline'); + $html->form_confirm($_SERVER["PHP_SELF"].'?propalid='.$propal->id.'&ligne='.$_GET["ligne"], $langs->trans('DeleteProductLine'), $langs->trans('ConfirmDeleteProductLine'), 'confirm_deleteline'); print '
'; } @@ -1162,13 +1164,23 @@ if ($_GET['propalid'] > 0) print ''; if ($conf->global->PRODUIT_CONFIRM_DELETE_LINE) { - print 'rowid.'">'; + if ($conf->use_ajax) + { + $url = $_SERVER["PHP_SELF"].'?propalid='.$propal->id.'&ligne='.$objp->rowid.'&action=confirm_deleteline&confirm=yes'; + print 'trans("No").'\')">'; + print img_delete(); + } + else + { + print 'rowid.'">'; + print img_delete(); + } } else { - print 'rowid.'">'; + print 'rowid.'">'; + print img_delete(); } - print img_delete(); print ''; if ($num > 1) { diff --git a/htdocs/lib/lib_head.js b/htdocs/lib/lib_head.js index cc2b8a6cb47..52105418761 100644 --- a/htdocs/lib/lib_head.js +++ b/htdocs/lib/lib_head.js @@ -648,4 +648,21 @@ function cleanSerialize(expr) { var liste1 = expr.replace(reg, ","); var liste = liste1.replace(reg2, ""); return liste; +} + +/*================================================================= + Purpose: Affiche un message de confirmation + Input: linkurl,message,ok,cancel + Author: Regis Houssin + Licence: GPL +==================================================================*/ +function confirmDelete(linkurl,message,ok,cancel) { + Dialog.confirm(message, { + width:300, + okLabel: ok, + cancelLabel: cancel, + buttonClass: "button", + cancel:function(win){}, + ok:function(win) {window.location.href=linkurl; return true;} + }); } \ No newline at end of file diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php index e118f6daf42..3eb074a64a0 100644 --- a/htdocs/main.inc.php +++ b/htdocs/main.inc.php @@ -653,6 +653,7 @@ function top_htmlhead($head, $title='', $disablejs=0, $disablehead=0) // Style sheets pour la class Window print ''."\n"; print ''."\n"; + print ''."\n"; // Definition en alternate style sheet des feuilles de styles les plus maintenues // Les navigateurs qui supportent sont rares. Plus aucun connu. @@ -676,7 +677,6 @@ function top_htmlhead($head, $title='', $disablejs=0, $disablehead=0) print ''."\n"; print ''."\n"; print ''."\n"; - //print ''."\n"; print ''."\n"; print ''."\n"; diff --git a/htdocs/theme/common/window/alert/bottom.gif b/htdocs/theme/common/window/alert/bottom.gif new file mode 100644 index 0000000000000000000000000000000000000000..9870f5224ab4a6c73dd6047a53b59b3fc02d4768 GIT binary patch literal 70 zcmZ?wbhEHbjACGAXkcKlWMKIJ|G(l-76uT|0TCb>1}52_{*|ZS@-LpV`3md)8_61||-knwbYVt~)U@SOWkI9SQ~j literal 0 HcmV?d00001 diff --git a/htdocs/theme/common/window/alert/bottom_right.gif b/htdocs/theme/common/window/alert/bottom_right.gif new file mode 100644 index 0000000000000000000000000000000000000000..230ba12bedb5e82cbe13af02c4ea60fac1c7187c GIT binary patch literal 49 xcmZ?wbhEHbWMyDwXkcLY|Np-w1B2pE76uT|0TCb>1||-cqPBzCw;~uBtN{&_3S9sI literal 0 HcmV?d00001 diff --git a/htdocs/theme/common/window/alert/left.gif b/htdocs/theme/common/window/alert/left.gif new file mode 100644 index 0000000000000000000000000000000000000000..4a3fab520239d0d923d95d3128e1b035dbb89381 GIT binary patch literal 84 zcmZ?wbhEHbWMznAXkcKlWMKIJ|G(l-76uT|0TCb>1}1Hnnwc4EWW!oEUHZN0c5r!K jrDDg#q@PO{cdg6gp1;X+^XAz7+vgqs`|j{cE(U7=I!+)L literal 0 HcmV?d00001 diff --git a/htdocs/theme/common/window/alert/overlay.png b/htdocs/theme/common/window/alert/overlay.png new file mode 100644 index 0000000000000000000000000000000000000000..2f3344e5cbba86538a03e06e171d119ac2da0139 GIT binary patch literal 2829 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 literal 0 HcmV?d00001 diff --git a/htdocs/theme/common/window/alert/progress.gif b/htdocs/theme/common/window/alert/progress.gif new file mode 100644 index 0000000000000000000000000000000000000000..529e72f45a2395e2eddb0487edbe79b306c92c3a GIT binary patch literal 1542 zcma)+ZA?>F7{_}rw{MqAdn^?TGVN^(w7}TqO{+3&F9nJ+R*E<<0&OXdX^es|GZF{4 zEl^%(9lp{U!Tk6YH4YyudgpHEiEi8)M~XPNk&IU z<2VigpuIfr-T(i>=Y2DhH)SO$HOVnigb(Dsi9bi^OfNlh;gy9lX!QL;2?>26z1K#P zV&uBmc3ztB!JQGe3%xin-RaY+qK3d98fkvdQN;t{oK0gq+21S5uC5%{i0Rkv4w<&D zJMjZD7~PJ7Ws}GES&9V@nF^RLDT|DSF@(;5sRA*CvH-&fm&e1b*w01Co_GW)!WWmq zeOZb@C}{*uR%lI>L5yacs>LSc&yub>OO|tgQr{&M!Pxk;eM1c&ROwWXCzb>?PAMLC z1GC6JXDUc(-m@u3aTC6;$74tGFI<-5LO#4LoR#vKh>|j7m0)u&+#r4f3us)g0tH^I zt;E*mux|86(!S&sVn}Jx(E{rR@KAZe3V3OQgh*I9umtZKPs|XRegw&V z*XWil!;da!)+BwsQ-QH9Pg^G5XT1P$nS_y40Tsy z{=wwwR=Ec@H0)=_Eu4eUa{DduV&e41fhwT}-kHt$uA zb}g8vv`P8=DavZKF<526AnGep^efD4R7poT41ZImDN+S_C?KFCwamgWUZJk`!~ zT#=Z`F1h2n%sgVJokp-VKc_!QT=Ag>&W4N}ZVs1IETePLkb?bUKWr#oNjnpyd9k)?!4M?%;92?~PwtjZ=-!&#>4sNe7_}r$O zson-Y-4)nvlJpZQC&U&6uKs?SCVNj09n8wAFu|P76)3h_vPe_N8`*{Q?^VX)r(?M%vvE=b?K;_!f8 z85)&S&2)|t3TrI%&F?Itlg^Dg1pG215&^1RM0`E5g%-D^w{1v;Ej@GFf#$mhQ?td50gdL-SzT{X6={H?<9MQh zTO&IDmziQe=nz0T8Ju01Xm47?mb69O*PU)%;OZFgx!P8>>(A#M=fWq3vBN`3q^FtF zv|HfcX=>^}AYVq9-PJrn@MXK6`Md#U4{x3jGJ<^XDaW#fs!Er#ODIP}1U_W7@EKVI zd^M_Eg2^QQ6DZ*yoe{9k_B%akiPtknp;_KPPaEMp_N?@h(ODHk$K`ainr|-+$frDT zQKU?@eheS0B!m-{o=?N*C;UFVSv* literal 0 HcmV?d00001 diff --git a/htdocs/theme/common/window/alert/right.gif b/htdocs/theme/common/window/alert/right.gif new file mode 100644 index 0000000000000000000000000000000000000000..85ba9e2a56a93527dde4f14eccfe386e6af2e2b7 GIT binary patch literal 84 zcmZ?wbhEHbWMznAXkcKlWMKIJ|G(l-76uT|0TCb>1}1Hvg0>lZW=WNNJegg5cgy+y j!UfM-RV};Hs#d+=+P}$ryIJ?~QoH-R?mxcD#b6BpMUEfb literal 0 HcmV?d00001 diff --git a/htdocs/theme/common/window/alert/top.gif b/htdocs/theme/common/window/alert/top.gif new file mode 100644 index 0000000000000000000000000000000000000000..8f6193664b77e0b385df5400b8fe25ef43a24201 GIT binary patch literal 70 zcmZ?wbhEHbjACGAXkcKlWMKIJ|G(l-76uT|0TCb>1}52-{*|ZS@+Z#Na;tmuy*=MK U+8#+%J?mWd>eRM%p$rVx0MDfv9smFU literal 0 HcmV?d00001 diff --git a/htdocs/theme/common/window/alert/top_left.gif b/htdocs/theme/common/window/alert/top_left.gif new file mode 100644 index 0000000000000000000000000000000000000000..fabb33a189bcf331976100f954a125f1a3a10e8c GIT binary patch literal 49 xcmZ?wbhEHbWMyDwXkcLY|Np-w1B2pE76uT|0TCb>1}2Uke$I_2xE&c8tN{qv32XoW literal 0 HcmV?d00001 diff --git a/htdocs/theme/common/window/alert/top_right.gif b/htdocs/theme/common/window/alert/top_right.gif new file mode 100644 index 0000000000000000000000000000000000000000..9fec6fa2b34647940d7aa1143ea58f448667f128 GIT binary patch literal 49 xcmZ?wbhEHbWMyDwXkcLY|Np-w1B2pE76uT|0TCb>1}2UkUQY4ZcVjddtN{pp3AX?M literal 0 HcmV?d00001