function beforeUpdate($old, $req, $roo)
{
- if (!empty($req['reason'])) {
+
+ if (!empty($req['reason'])) {
$ch = DB_DataObject::factory('mtrack_change');
$ch->beginChange($this, $req['reason']);
$this->_mtrack_change= $ch;
$roo->jok("UPDATED");
}
+ if (isset($req['_before']) || isset($req['_after'])) {
+ $req['_after'] = isset($req['_after']) ? $req['_after'] : 0;
+ $req['_before'] = isset($req['_before']) ? $req['_before'] : 0;
+ $old->updateSequence($req['_before'],$req['_after']);
+
+
+ if ($req['_before']) {
+ $before = DB_DataObject::factory('mtrack_ticket');
+ $before->get($req['_before']);
+ $this->seqid = $before->seqid;
+ } else if ($req['_after']) {
+ $after = DB_DataObject::factory('mtrack_ticket');
+ $after->get($req['_after']);
+ $this->seqid = $after->seqid+1;
+ } else {
+
+
+
+ }
+ }
+
+
}
}
// http://roojs.com/admin.php/Roo/Mtrack_ticket?_post=1&id=733&_reorder=0
- function updateSequence($tbefore)
+ function updateSequence($tbefore, $tafter = 0)
{
+ // fix empty sequences?
+
$tn = $this->tableName();
$t = DB_DataObject::factory('mtrack_ticket');
$tt = clone($t);
$t->autoJoin();
$t->selectAdd();
// we still apply to closed tickets????
- //$t->whereAdd("join_status_id.name != 'closed'");
+ $t->whereAdd("join_status_id.name != 'closed'");
$t->applySort(false, 'old_style', false);
$old_seqid = $this->seqid;
$old_seqid = $t->seqid;
}
+
+
+
+
$before_seq_id = 0;
if ($tbefore) {
$before = DB_DataObject::factory('mtrack_ticket');
$before->get($tbefore);
$before_seq_id = $before->seqid;
+
}
-
+ if ($tafter) {
+ $after = DB_DataObject::factory('mtrack_ticket');
+ $after->get($tafter);
+ $before_seq_id = $after->seqid+1;
+ }
+
$t = DB_DataObject::factory('mtrack_ticket');