public static function moveRankUp($structuredUnitId, $rank) { $records = StructuredField::getSortedRecords($structuredUnitId); if (!records) { return; } $lastRank = $rank; foreach ($records as $record) { if ($record[2] == $lastRank) { $lastRank++; $query = "UPDATE structured_field SET rank={$lastRank} WHERE id=" . $record[0] . ";"; $result = mysql_query($query) or die(sqlError(__FILE__, __LINE__, $query)); } else { if ($record[2] > $lastRank) { return; } } } }
$result = "Record {$id} has been updated with rank={$rank}, and name={$name}"; break; case 'moveRankUp': StructuredField::moveRankUp($id, $rank); $result = "rank #{$rank} has been freed"; break; case 'readRecord': $record = StructuredField::readRecord($id); if ($record) { $result = implode(",", $record); } else { $result = "no record found"; } break; case 'getSortedRecords': $recordArray = StructuredField::getSortedRecords($id); if (!$recordArray) { $result = "no record for the unit with id={$id}"; } else { foreach ($recordArray as $record) { $recordFields[] = implode(",", $record); } $result = implode("<br/>", $recordFields); } break; case 'switchRank': StructuredField::switchRank($id, $id2); $result = "record at id={$id2} and id={$id} have switched their ranks"; break; case 'deleteRecord': StructuredField::deleteRecord($id, $rank);
$moveRankDown = $_GET['movedown']; if ($moveRankDown) { StructuredField::switchRank($records[$moveRankDown][0], $records[1 + $moveRankDown][0]); $records = StructuredField::getSortedRecords($id, $isAdmin); } // rename/lock/unlock record if ($save) { $recordName = $_POST['recordName']; $selectedRecord = StructuredField::readRecord($init); if ($isAdmin) { $lockVal = $_POST['lock']; } else { $lockVal = $selectedRecord[4]; } StructuredField::updateRecord($selectedRecord[0], $recordName, $selectedRecord[2], $lockVal); $records = StructuredField::getSortedRecords($id, $isAdmin); } //get default values for the textareas (either from the selecting record, or from the first record) if ($init) { $selectedRecord = StructuredField::readRecord($init); } else { $selectedRecord = $records[0]; $init = $selectedRecord[0]; } if ($init) { $textArray = StructuredFieldValue::getValues($init); $assetArray = StructuredFieldAsset::getAssets($init); $selectedRecordName = displayValue($selectedRecord[3]); // don't show locked record for non-admin users or there is no record name in the URL $lock = $selectedRecord[4]; if (empty($name) || $lock == 1 && !$isAdmin) {