BY-15 El orden de las categorias en Gmail no se rodena alfabeticamente
some fixings
This commit is contained in:
@@ -338,12 +338,8 @@ class Cases
|
|||||||
$c->addJoinMC($aConditions, Criteria::LEFT_JOIN);
|
$c->addJoinMC($aConditions, Criteria::LEFT_JOIN);
|
||||||
$c->add(TaskPeer::TAS_UID, $tasks, Criteria::IN);
|
$c->add(TaskPeer::TAS_UID, $tasks, Criteria::IN);
|
||||||
|
|
||||||
if ($typeView == 'category') {
|
$c->addAscendingOrderByColumn('PRO_TITLE');
|
||||||
$c->addDescendingOrderByColumn('PRO_CATEGORY');
|
$c->addAscendingOrderByColumn('TAS_TITLE');
|
||||||
} else {
|
|
||||||
$c->addAscendingOrderByColumn('PRO_TITLE');
|
|
||||||
$c->addAscendingOrderByColumn('TAS_TITLE');
|
|
||||||
}
|
|
||||||
|
|
||||||
$rs = TaskPeer::doSelectRS($c);
|
$rs = TaskPeer::doSelectRS($c);
|
||||||
$rs->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
$rs->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||||
@@ -378,7 +374,13 @@ class Cases
|
|||||||
$rs->next();
|
$rs->next();
|
||||||
$row = $rs->getRow();
|
$row = $rs->getRow();
|
||||||
}
|
}
|
||||||
return $rows;
|
|
||||||
|
$rowsToReturn = $rows;
|
||||||
|
if ($typeView === 'category') {
|
||||||
|
$rowsToReturn = $this->orderStartCasesByCategoryAndName($rows);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $rowsToReturn;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -7305,5 +7307,35 @@ class Cases
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private function orderStartCasesByCategoryAndName ($rows) {
|
||||||
|
//now we order in category, proces_name order:
|
||||||
|
$comparatorSequence = array(
|
||||||
|
function($a, $b) {
|
||||||
|
$retval = 0;
|
||||||
|
if(array_key_exists('catname', $a) && array_key_exists('catname', $b)) {
|
||||||
|
$retval = strcmp($a['catname'], $b['catname']);
|
||||||
|
}
|
||||||
|
return $retval;
|
||||||
|
}
|
||||||
|
, function($a, $b) {
|
||||||
|
$retval = 0;
|
||||||
|
if(array_key_exists('value', $a) && array_key_exists('value', $b)) {
|
||||||
|
$retval = strcmp($a['value'], $b['value']);
|
||||||
|
}
|
||||||
|
return $retval;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
usort($rows, function($a, $b) use ($comparatorSequence) {
|
||||||
|
foreach ($comparatorSequence as $cmpFn) {
|
||||||
|
$diff = call_user_func($cmpFn, $a, $b);
|
||||||
|
if ($diff !== 0) {
|
||||||
|
return $diff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
});
|
||||||
|
return $rows;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user