diff --git a/htdocs/compta/bank/bankentries.php b/htdocs/compta/bank/bankentries.php
index 42c295b3600..559e16627f8 100644
--- a/htdocs/compta/bank/bankentries.php
+++ b/htdocs/compta/bank/bankentries.php
@@ -1127,7 +1127,16 @@ if ($resql)
// Date ope
if (! empty($arrayfields['b.dateo']['checked']))
{
- print '
'.dol_print_date($db->jdate($objp->do),"day")." | \n";
+ print '';
+ print ''.dol_print_date($db->jdate($objp->do),"day")."";
+ print ' ';
+ print '';
+ print '';
+ print img_edit_remove() . " ";
+ print '';
+ print img_edit_add() ."";
+ print '';
+ print " | \n";
if (! $i) $totalarray['nbfield']++;
}
diff --git a/htdocs/compta/bank/class/account.class.php b/htdocs/compta/bank/class/account.class.php
index 08631abec79..47c3e5122ff 100644
--- a/htdocs/compta/bank/class/account.class.php
+++ b/htdocs/compta/bank/class/account.class.php
@@ -1959,6 +1959,67 @@ class AccountLine extends CommonObject
}
+ /**
+ * Increase/decrease operation date of a rowid
+ *
+ * @param int $rowid Id of line
+ * @param int $sign 1 or -1
+ * @return int >0 if OK, 0 if KO
+ */
+ function dateo_change($rowid,$sign=1)
+ {
+ $sql = "SELECT dateo FROM ".MAIN_DB_PREFIX."bank WHERE rowid = ".$rowid;
+ $resql = $this->db->query($sql);
+ if ($resql)
+ {
+ $obj=$this->db->fetch_object($resql);
+ $newdate=$this->db->jdate($obj->dateo)+(3600*24*$sign);
+
+ $sql = "UPDATE ".MAIN_DB_PREFIX."bank SET";
+ $sql.= " dateo = '".$this->db->idate($newdate)."'";
+ $sql.= " WHERE rowid = ".$rowid;
+
+ $result = $this->db->query($sql);
+ if ($result)
+ {
+ if ($this->db->affected_rows($result))
+ {
+ return 1;
+ }
+ }
+ else
+ {
+ dol_print_error($this->db);
+ return 0;
+ }
+ }
+ else dol_print_error($this->db);
+ return 0;
+ }
+
+ /**
+ * Increase operation date of a rowid
+ *
+ * @param int $id Id of line to change
+ * @return int >0 if OK, 0 if KO
+ */
+ function dateo_next($id)
+ {
+ return $this->dateo_change($id,1);
+ }
+
+ /**
+ * Decrease operation date of a rowid
+ *
+ * @param int $id Id of line to change
+ * @return int >0 if OK, 0 if KO
+ */
+ function dateo_previous($id)
+ {
+ return $this->dateo_change($id,-1);
+ }
+
+
/**
* Load miscellaneous information for tab "Info"
*
diff --git a/htdocs/compta/bank/ligne.php b/htdocs/compta/bank/ligne.php
index 99362167a07..525b7a72e12 100644
--- a/htdocs/compta/bank/ligne.php
+++ b/htdocs/compta/bank/ligne.php
@@ -71,13 +71,20 @@ if ($cancel)
}
}
-if ($user->rights->banque->consolidate && $action == 'dvnext')
+
+if ($user->rights->banque->consolidate && $action == 'donext')
+{
+ $al = new AccountLine($db);
+ $al->dateo_next($_GET["rowid"]);
+}elseif ($user->rights->banque->consolidate && $action == 'doprev')
+{
+ $al = new AccountLine($db);
+ $al->dateo_previous($_GET["rowid"]);
+}elseif ($user->rights->banque->consolidate && $action == 'dvnext')
{
$al = new AccountLine($db);
$al->datev_next($_GET["rowid"]);
-}
-
-if ($user->rights->banque->consolidate && $action == 'dvprev')
+}elseif ($user->rights->banque->consolidate && $action == 'dvprev')
{
$al = new AccountLine($db);
$al->datev_previous($_GET["rowid"]);
@@ -479,6 +486,14 @@ if ($result)
{
print '';
print $form->select_date($db->jdate($objp->do),'dateo','','','','update',1,0,1,$objp->rappro);
+ if (! $objp->rappro)
+ {
+ print ' ';
+ print '';
+ print img_edit_remove() . " ";
+ print '';
+ print img_edit_add() ."";
+ }
print ' | ';
}
else
diff --git a/htdocs/core/ajax/bankconciliate.php b/htdocs/core/ajax/bankconciliate.php
index 65620c5429c..e5bfb674e8f 100644
--- a/htdocs/core/ajax/bankconciliate.php
+++ b/htdocs/core/ajax/bankconciliate.php
@@ -71,3 +71,27 @@ if (($user->rights->banque->modifier || $user->rights->banque->consolidate) && $
exit;
}
+if (($user->rights->banque->modifier || $user->rights->banque->consolidate) && $action == 'donext')
+{
+ // Increase date
+ $al = new AccountLine($db);
+ $al->dateo_next(GETPOST('rowid','int'));
+ $al->fetch(GETPOST('rowid','int'));
+
+ print ''.dol_print_date($db->jdate($al->dateo),"day").'';
+
+ exit;
+}
+
+if (($user->rights->banque->modifier || $user->rights->banque->consolidate) && $action == 'doprev')
+{
+ // Decrease date
+ $al =new AccountLine($db);
+ $al->dateo_previous(GETPOST('rowid','int'));
+ $al->fetch(GETPOST('rowid','int'));
+
+ print ''.dol_print_date($db->jdate($al->dateo),"day").'';
+
+ exit;
+}
+