/** * This method initializes the `$result`, `$sort` and `$order` variables by using the * `$_REQUEST` array. The `$result` is passed by reference, and is return of calling the * `$object->sort()` method. It is this method that actually invokes the sorting inside * the `$object`. * * @param HTMLPage $object * The object responsible for sorting the items. It must implement a `sort()` method. * @param array $result * This variable stores an array sorted objects. Once set, its value is available * to the client class of Sortable. * @param string $sort * This variable stores the field (or axis) the objects are sorted by. Once set, * its value is available to the client class of `Sortable`. * @param string $order * This variable stores the sort order (i.e. 'asc' or 'desc'). Once set, its value * is available to the client class of Sortable. * @param array $params (optional) * An array of parameters that can be passed to the context-based method. */ public static function initialize(HTMLPage $object, &$result, &$sort, &$order, array $params = array()) { if (isset($_REQUEST['sort'])) { $sort = $_REQUEST['sort']; } else { $sort = null; } if (isset($_REQUEST['order'])) { $order = $_REQUEST['order'] == 'desc' ? 'desc' : 'asc'; } else { $order = null; } $result = $object->sort($sort, $order, $params); }