- Always display the number of elements (and the number of elements selected) when displaying a list.

- Nicer display of paginated lists

SVN:trunk[1357]
This commit is contained in:
Denis Flaven
2011-07-25 12:25:50 +00:00
parent 6b7687c80b
commit 189b802452
2 changed files with 24 additions and 14 deletions

View File

@@ -442,6 +442,7 @@ function DisplayMultipleSelectionForm($oP, $oFilter, $sNextOperation, $oChecker,
$oP->add("<input type=\"hidden\" name=\"operation\" value=\"$sNextOperation\">\n");
$oP->add("<input type=\"hidden\" name=\"class\" value=\"".$oFilter->GetClass()."\">\n");
$oP->add("<input type=\"hidden\" name=\"filter\" value=\"".$oFilter->Serialize()."\">\n");
$oP->add("<input type=\"hidden\" name=\"transaction_id\" value=\"".utils::GetNewTransactionId()."\">\n");
foreach($aExtraFormParams as $sName => $sValue)
{
$oP->add("<input type=\"hidden\" name=\"$sName\" value=\"$sValue\">\n");
@@ -450,7 +451,15 @@ function DisplayMultipleSelectionForm($oP, $oFilter, $sNextOperation, $oChecker,
$oBlock->Display($oP, 1, $aExtraParams);
$oP->add("<input type=\"button\" value=\"".Dict::S('UI:Button:Cancel')."\" onClick=\"window.history.back()\">&nbsp;&nbsp;<input type=\"submit\" value=\"".Dict::S('UI:Button:Next')."\">\n");
$oP->add("</form>\n");
$oP->add_ready_script("CheckAll('.selectList1:not(:disabled)', true);\n");
$oP->add_ready_script(
<<<EOF
$(':checkbox[name^=selectObject]').change(function() {
var v = $('#1 table.listResults :checkbox[name^=selectObject]:checked').length;
$('#1 .selectedCount').text(v);
});
CheckAll('.selectList1:not(:disabled)', true);
EOF
);
}
/***********************************************************************************
@@ -1212,18 +1221,10 @@ EOF
$oP->add("<h1>".Dict::S('UI:BulkDeleteTitle')."</h1>\n");
// TO DO: limit the search filter by the user context
$oFilter = CMDBSearchFilter::unserialize($sFilter); // TO DO : check that the filter is valid
$oSet = new DBObjectSet($oFilter);
$oBlock = new DisplayBlock($oFilter, 'list', false);
$oP->add("<form method=\"post\">\n");
$oP->add("<input type=\"hidden\" name=\"operation\" value=\"bulk_delete\">\n");
$oP->add("<input type=\"hidden\" name=\"class\" value=\"".$oFilter->GetClass()."\">\n");
$oP->add("<input type=\"hidden\" name=\"filter\" value=\"".$oFilter->Serialize()."\">\n");
$oP->add("<input type=\"hidden\" name=\"transaction_id\" value=\"".utils::GetNewTransactionId()."\">\n");
$oBlock->Display($oP, 1, array('selection_type' => 'multiple', 'selection_mode' => true, 'display_limit' => false, 'menu' => false));
$oP->add("<input type=\"button\" value=\"".Dict::S('UI:Button:Cancel')."\" onClick=\"window.history.back()\">&nbsp;&nbsp;<input type=\"submit\" value=\"".Dict::S('UI:Button:Next')."\">\n");
$oP->add("</form>\n");
$oChecker = new ActionChecker($oFilter, UR_ACTION_BULK_DELETE);
DisplayMultipleSelectionForm($oP, $oFilter, 'bulk_delete', $oChecker);
break;
///////////////////////////////////////////////////////////////////////////////////////////
case 'bulk_delete_confirmed': // Confirm bulk deletion of objects

View File

@@ -67,7 +67,7 @@ try
}
$iStart = utils::ReadParam('start',0);
$iEnd = utils::ReadParam('end',1);
$iSortCol = utils::ReadParam('sort_col',null);
$iSortCol = utils::ReadParam('sort_col','null');
$sSelectMode = utils::ReadParam('select_mode', '');
$bDisplayKey = utils::ReadParam('display_key', 'true') == 'true';
$aList = utils::ReadParam('display_list', array());
@@ -87,7 +87,7 @@ try
if ($bDisplayKey)
{
$aConfig['key'] = array();
if ($iSortIndex == $iSortCol)
if (($iSortCol != 'null') && ($iSortIndex == $iSortCol))
{
$aOrderBy['friendlyname'] = (utils::ReadParam('sort_order', 'asc') == 'asc');
}
@@ -120,6 +120,15 @@ try
}
$iSortIndex++;
}
if (count($aOrderBy) == 0)
{
$aOrderBy['friendlyname'] = true; // By default, sort by name
}
else
{
// $oPage->add("</p>ICI: OrderBy already set to: <pre>'".print_r($aOrderBy, true)."'</pre></p>\n");
}
// Load only the requested columns
$oSet = new DBObjectSet($oFilter, $aOrderBy, $aExtraParams, null, $iEnd-$iStart, $iStart);