Ajax: dbut ajout message de confirmation de suppression ou autre afin d'viter de recharger la page
@@ -95,20 +95,39 @@ if ($_POST['action'] == 'confirm_delete' && $_POST['confirm'] == 'yes')
|
|||||||
exit;
|
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)
|
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);
|
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
|
||||||
$propal->fetch($_GET['propalid']);
|
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
|
||||||
$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);
|
|
||||||
}
|
}
|
||||||
|
propale_pdf_create($db, $propal->id, $propal->modelpdf, $outputlangs);
|
||||||
|
}
|
||||||
Header('Location: '.$_SERVER["PHP_SELF"].'?propalid='.$_GET['propalid']);
|
Header('Location: '.$_SERVER["PHP_SELF"].'?propalid='.$_GET['propalid']);
|
||||||
exit;
|
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')
|
if ($_POST['action'] == 'classin')
|
||||||
{
|
{
|
||||||
$propal = new Propal($db);
|
$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 '<br>';
|
print '<br>';
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1162,13 +1164,23 @@ if ($_GET['propalid'] > 0)
|
|||||||
print '<td align="center">';
|
print '<td align="center">';
|
||||||
if ($conf->global->PRODUIT_CONFIRM_DELETE_LINE)
|
if ($conf->global->PRODUIT_CONFIRM_DELETE_LINE)
|
||||||
{
|
{
|
||||||
print '<a href="'.$_SERVER["PHP_SELF"].'?propalid='.$propal->id.'&action=delete_product_line&ligne='.$objp->rowid.'">';
|
if ($conf->use_ajax)
|
||||||
|
{
|
||||||
|
$url = $_SERVER["PHP_SELF"].'?propalid='.$propal->id.'&ligne='.$objp->rowid.'&action=confirm_deleteline&confirm=yes';
|
||||||
|
print '<a href="#" onClick="confirmDelete(\''.$url.'\',\''.$langs->trans('ConfirmDeleteProductLine').'\',\''.$langs->trans("Yes").'\',\''.$langs->trans("No").'\')">';
|
||||||
|
print img_delete();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
print '<a href="'.$_SERVER["PHP_SELF"].'?propalid='.$propal->id.'&action=ask_deleteline&ligne='.$objp->rowid.'">';
|
||||||
|
print img_delete();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
print '<a href="'.$_SERVER["PHP_SELF"].'?propalid='.$propal->id.'&action=del_ligne&ligne='.$objp->rowid.'">';
|
print '<a href="'.$_SERVER["PHP_SELF"].'?propalid='.$propal->id.'&action=deleteline&ligne='.$objp->rowid.'">';
|
||||||
|
print img_delete();
|
||||||
}
|
}
|
||||||
print img_delete();
|
|
||||||
print '</a></td>';
|
print '</a></td>';
|
||||||
if ($num > 1)
|
if ($num > 1)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -648,4 +648,21 @@ function cleanSerialize(expr) {
|
|||||||
var liste1 = expr.replace(reg, ",");
|
var liste1 = expr.replace(reg, ",");
|
||||||
var liste = liste1.replace(reg2, "");
|
var liste = liste1.replace(reg2, "");
|
||||||
return liste;
|
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;}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
@@ -653,6 +653,7 @@ function top_htmlhead($head, $title='', $disablejs=0, $disablehead=0)
|
|||||||
// Style sheets pour la class Window
|
// Style sheets pour la class Window
|
||||||
print '<link rel="stylesheet" type="text/css" href="'.DOL_URL_ROOT.'/theme/common/window/default.css">'."\n";
|
print '<link rel="stylesheet" type="text/css" href="'.DOL_URL_ROOT.'/theme/common/window/default.css">'."\n";
|
||||||
print '<link rel="stylesheet" type="text/css" href="'.DOL_URL_ROOT.'/theme/common/window/alphacube.css">'."\n";
|
print '<link rel="stylesheet" type="text/css" href="'.DOL_URL_ROOT.'/theme/common/window/alphacube.css">'."\n";
|
||||||
|
print '<link rel="stylesheet" type="text/css" href="'.DOL_URL_ROOT.'/theme/common/window/alert.css">'."\n";
|
||||||
|
|
||||||
// Definition en alternate style sheet des feuilles de styles les plus maintenues
|
// Definition en alternate style sheet des feuilles de styles les plus maintenues
|
||||||
// Les navigateurs qui supportent sont rares. Plus aucun connu.
|
// Les navigateurs qui supportent sont rares. Plus aucun connu.
|
||||||
@@ -676,7 +677,6 @@ function top_htmlhead($head, $title='', $disablejs=0, $disablehead=0)
|
|||||||
print '<script language="javascript" type="text/javascript" src="'.DOL_URL_ROOT.'/includes/scriptaculous/src/scriptaculous.js"></script>'."\n";
|
print '<script language="javascript" type="text/javascript" src="'.DOL_URL_ROOT.'/includes/scriptaculous/src/scriptaculous.js"></script>'."\n";
|
||||||
print '<script language="javascript" type="text/javascript" src="'.DOL_URL_ROOT.'/includes/scriptaculous/src/effects.js"></script>'."\n";
|
print '<script language="javascript" type="text/javascript" src="'.DOL_URL_ROOT.'/includes/scriptaculous/src/effects.js"></script>'."\n";
|
||||||
print '<script language="javascript" type="text/javascript" src="'.DOL_URL_ROOT.'/includes/scriptaculous/src/controls.js"></script>'."\n";
|
print '<script language="javascript" type="text/javascript" src="'.DOL_URL_ROOT.'/includes/scriptaculous/src/controls.js"></script>'."\n";
|
||||||
//print '<script language="javascript" type="text/javascript" src="'.DOL_URL_ROOT.'/includes/scriptaculous/src/prototip.js"></script>'."\n";
|
|
||||||
print '<script language="javascript" type="text/javascript" src="'.DOL_URL_ROOT.'/includes/scriptaculous/src/window/window.js"></script>'."\n";
|
print '<script language="javascript" type="text/javascript" src="'.DOL_URL_ROOT.'/includes/scriptaculous/src/window/window.js"></script>'."\n";
|
||||||
print '<script language="javascript" type="text/javascript" src="'.DOL_URL_ROOT.'/includes/scriptaculous/src/window/tooltip.js"></script>'."\n";
|
print '<script language="javascript" type="text/javascript" src="'.DOL_URL_ROOT.'/includes/scriptaculous/src/window/tooltip.js"></script>'."\n";
|
||||||
|
|
||||||
|
|||||||
BIN
htdocs/theme/common/window/alert/bottom.gif
Normal file
|
After Width: | Height: | Size: 70 B |
BIN
htdocs/theme/common/window/alert/bottom_left.gif
Normal file
|
After Width: | Height: | Size: 49 B |
BIN
htdocs/theme/common/window/alert/bottom_right.gif
Normal file
|
After Width: | Height: | Size: 49 B |
BIN
htdocs/theme/common/window/alert/left.gif
Normal file
|
After Width: | Height: | Size: 84 B |
BIN
htdocs/theme/common/window/alert/overlay.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
htdocs/theme/common/window/alert/progress.gif
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
htdocs/theme/common/window/alert/right.gif
Normal file
|
After Width: | Height: | Size: 84 B |
BIN
htdocs/theme/common/window/alert/top.gif
Normal file
|
After Width: | Height: | Size: 70 B |
BIN
htdocs/theme/common/window/alert/top_left.gif
Normal file
|
After Width: | Height: | Size: 49 B |
BIN
htdocs/theme/common/window/alert/top_right.gif
Normal file
|
After Width: | Height: | Size: 49 B |