Merge branch 'master' of github.com:UndefinedOffset/SortableGridField

This commit is contained in:
UndefinedOffset 2012-09-06 12:28:01 -03:00
commit cd0013a8eb
2 changed files with 3 additions and 2 deletions

View File

@ -13,7 +13,7 @@ Adds drag and drop functionality to SilverStripe 3.0's GridField
* Upon entering the cms and using GridFieldSortableRows component for the first time you make need to add ?flush=all to the end of the address to force the templates to regenerate
## Usage
To enable sorting on a has_many relationship set up an interger field on your data object. Also for has_many relationships make sure to set the $default_sort on the dataobject to this new interger field to ensure that the sort order is applied when the relationship is requested. For many_many relationships you must add a $many_many_extraFields static to the data object defining the relationship, see the SilverStripe documentation for more information on this. If you are using a many_many relationship you will need to do a custom getter to set the sort order of this relationship for use on the front end see bellow for an example.
To enable sorting on a has_many relationship set up an interger field on your data object. Also for has_many relationships make sure to set the $default_sort on the dataobject to this new interger field to ensure that the sort order is applied when the relationship is requested. For many_many relationships you must add a $many_many_extraFields static to the data object defining the relationship, see the SilverStripe documentation for more information on this. If you are using a many_many relationship you will need to do a custom getter to set the sort order of this relationship for use on the front end see bellow for an example. For new DataObjects you do not need to increment the Sort order yourself in your DataObject GridFieldSortableRows will automatically do this the next time the grid is displayed.
:::php
public function getMyManyManyRelationship() {

View File

@ -211,7 +211,8 @@ class GridFieldSortableRows implements GridField_HTMLProvider, GridField_ActionP
if ($paginator = $gridField->getConfig()->getComponentsByType('GridFieldPaginator')->First()) {
$pageState = $gridField->State->GridFieldPaginator;
if($pageState->currentPage && $pageState->currentPage>1) {
if($pageState->currentPage && is_int($pageState->currentPage) && $pageState->currentPage>1) {
$pageOffset = $paginator->getItemsPerPage() * ($pageState->currentPage - 1);
}
}