// Basically rewrite this to get an ordered list of nid, vid, delta from the content type or field that is insufficient.
$deltas = db_query("SELECT cfgi.nid, cfgi.vid, cfgi.delta FROM content_field_gallery_item cfgi INNER JOIN node n ON cfgi.vid = n.vid WHERE AND cfgi.nid NOT IN (SELECT nid FROM og_ancestry WHERE group_nid IN (1020, 1552, 964)) ORDER BY cfgi.vid, cfgi.delta");
$nid = 0;
$delta = 0;
$items = array();
while($row = db_fetch_object($deltas)){
// Same nid, increment delta and update.
if($row->nid == $nid){
$delta += 1;
if($delta!= $row->delta){
// Only update if they are different.
db_query("UPDATE content_field_gallery_item SET delta = %d WHERE vid = %d AND delta = %d", $delta, $row->vid, $row->delta);
// This is so we have some reporting.
$items[] = $row->nid .'|'. $row->delta;
}
}
else{
// New nid, set delta to 0.
if($row->delta!= 0){
// Only update if they are different.
db_query("UPDATE content_field_gallery_item SET delta = %d WHERE vid = %d AND delta = %d", 0, $row->vid, $row->delta);