Devise\Templates\TemplatesCleaner::getIdsToDelete PHP Метод

getIdsToDelete() приватный Метод

builds an array of ids that need to be deleted
private getIdsToDelete ( string $view, array $keys, integer $liveVersionId )
$view string
$keys array
$liveVersionId integer
    private function getIdsToDelete($view, $keys, $liveVersionId)
    {
        $liveVersionIds = $this->getAllLivePageVersionIds($view);
        $allIds = DB::table('dvs_fields')->leftJoin('dvs_collection_instances', 'dvs_collection_instances.id', '=', 'dvs_fields.collection_instance_id')->whereIn('dvs_fields.page_version_id', $liveVersionIds)->whereNotIn('key', $keys)->select('dvs_fields.id as dvs_field_id', 'dvs_collection_instances.id as dvs_collection_instance_id', 'dvs_collection_instances.collection_set_id as dvs_collection_set_id')->get();
        $fieldIds = [];
        $collectionInstanceIds = [];
        $collectionIds = [];
        foreach ($allIds as $ids) {
            $fieldIds[] = $ids->dvs_field_id;
            if ($ids->dvs_collection_instance_id) {
                $collectionInstanceIds[] = $ids->dvs_collection_instance_id;
            }
            if ($ids->dvs_collection_set_id) {
                $collectionIds[] = $ids->dvs_collection_set_id;
            }
        }
        return ['fields' => array_unique($fieldIds), 'collection_instances' => array_unique($collectionInstanceIds), 'collections' => array_unique($collectionIds)];
    }