if (count($tag_old) == count($tag_new)) { $number_tagging_ok = 0; $number_tagging_no = 0; //SOSTITUISCI OGGETTI TAGGATI CON NUOVO TAG foreach ($tag_old as $k => $old) { $c = new Criteria(); $c->add(TaggingPeer::TAG_ID, $old); $results = TaggingPeer::doSelect($c); foreach ($results as $rs) { $obj_tag = TagPeer::retrieveByPk($tag_new[$k]); if ($obj_tag) { $c = new Criteria(); $c->add(TaggingPeer::TAG_ID, $tag_new[$k]); $c->add(TaggingPeer::TAGGABLE_ID, $rs->getTaggableId()); $c->add(TaggingPeer::TAGGABLE_MODEL, $rs->getTaggableModel()); $r = TaggingPeer::doSelectOne($c); if (!$r) { $rs->setTagId($tag_new[$k]); $rs->save(); echo "sostituito " . $old . " con " . $tag_new[$k] . " in " . $rs->getTaggableId() . "\n"; $number_tagging_ok = $number_tagging_ok + 1; } else { $rs->delete(); $number_tagging_no = $number_tagging_no + 1; } } else { echo "non esiste tag con id=" . $tag_new[$k] . "\n"; } } } //SOSTITUISCI TAG MONITORATI CON NUOVO TAG