2 import(
'Dataface/PermissionsTool.php');
6 if ( !isset( $_POST[
'-redirect'] ) and !isset($_POST[
'relatedList-body']) ){
11 $query =&
$app->getQuery();
12 if ( !($record = df_get_selected_records($query)) ){
13 $record =&
$app->getRecord();
23 if ( !@$query[
'-relationship'] ){
27 $relationship =& $record->_table->getRelationship($query[
'-relationship']);
30 $orderColumn = $relationship->getOrderColumn();
32 return PEAR::raiseError(
'Could not reorder records of this relationship because it does not have any order column specified.');
42 if ( isset($_POST[
'relatedList-body']) ){
43 $relatedIds = array_map(
'urldecode', $_POST[
'relatedList-body']);
53 foreach ($relatedIds as $recid ){
55 $records[] = df_get_record_by_id($recid);
57 $start = ( isset($query[
'-related:start']) ? $query[
'-related:start'] : 0);
58 $record->sortRelationship($query[
'-relationship'], $start, $records);
60 echo
'Sorted Successfully';
64 if ( !isset( $_POST[
'-reorder:direction'] ) ){
65 return PEAR::raiseError(
'Cannot reorder related records because no direction was specified.');
68 if ( !isset( $_POST[
'-reorder:index']) ){
69 return PEAR::raiseError(
'Cannot reorder related records because no index was specified.');
72 $index = intval($_POST[
'-reorder:index']);
74 switch ( $_POST[
'-reorder:direction']){
77 $res = $record->moveUp($query[
'-relationship'],
$index);
82 $res = $record->moveDown($query[
'-relationship'],
$index);
86 return PEAR::raiseError(
'Invalid input for direction of reordering. Must be up or down but received "'.$_POST[
'-reorder:direction'].
'"');
89 header(
'Location: '.$_POST[
'-redirect']);