$flush_query = tep_db_query("TRUNCATE TABLE products_bundle");
$flush_query = tep_db_query("UPDATE products SET products_bundle_id=0");
$pids = array();
$q = tep_db_query("SELECT jc.products_id, jc.price, p.products_brand_id FROM jng_sp_catalog jc LEFT JOIN products p ON p.products_id=jc.products_id WHERE jc.jng_sp_id=2 AND jc.active_status='1'");
while ($r = tep_db_fetch_array($q)) {
    $products[] = $r;
}
$bundles = array();
$jng_sp_id = 2;
$counter = 0;
$products_attached = array();
foreach ($products as $product) {
    if (!in_array($product['products_id'], $products_attached)) {
        $counter++;
        //$list = $class_pl->retrieveList($pid);
        $list = $class_pl->retrieveForCatalog($product, $jng_sp_id, 'C', 7);
        $bundle_nd = 'Auto Set ' . $counter;
        $bundles[$counter] = new products_bundle();
        $bundles[$counter]->create($bundle_nd, $bundle_nd);
        $bundles[$counter]->productAdd($product['products_id']);
        $products_attached[] = $product['products_id'];
        foreach ($list as $l) {
            if (!in_array($l['links_id'], $products_attached)) {
                $bundles[$counter]->productAdd($l['links_id']);
                $products_attached[] = $l['links_id'];
            }
        }
    }
}
echo "{$counter} Bundle is created";
tep_db_close();
 if ($p['use_logo'] == '1') {
     $brand_id = '';
     if ($p['products_brand_id'] == '0') {
         $brand_id = $sp_detail['brand_id'];
     } else {
         if ($p['sp_brand_id'] != '') {
             $brand_id = $p['sp_brand_id'];
         }
     }
     if ($brand_id != '') {
         $xml_content .= writeXMLline('P_BRAND_ID', $brand_id, 1);
         $xml_content .= writeLine();
     }
 }
 //XML PRODUCT LINKS
 $product_links = $class_pl->retrieveForCatalog($p, $jng_sp_id, 'C', 20);
 $xml_content .= generateXMLproductsLink($product_links, 'CROSS');
 $product_links = $class_pl->retrieveForCatalog($p, $jng_sp_id, 'U', 1);
 $xml_content .= generateXMLproductsLink($product_links, 'UPSELLING');
 $product_links = $class_pl->retrieveForCatalog($p, $jng_sp_id, 'A', 5);
 $xml_content .= generateXMLproductsLink($product_links, 'ACCESSORY');
 $product_links = $class_pl->retrieveForCatalog($p, $jng_sp_id, 'D', 5);
 //$xml_content .= generateXMLproductsLink($product_links, 'DEVICE');
 $xml_content .= generateXMLproductsLink($product_links, 'ACCESSORY');
 //XML PRODUCT STRUCTURE (Nav IDs)
 $xml_content .= writeXMLopen('P_STRUCTURE', 1);
 $xml_content .= writeXMLline('STRUCTURE_NAV_ID_PRI', $pri_navid, 2);
 if (isset($sec_navid) && is_array($sec_navid) && count($sec_navid) > 0) {
     foreach ($sec_navid as $navid) {
         $xml_content .= writeXMLline('STRUCTURE_NAV_ID_SEC', $navid, 2);
     }
             if ($p['categories_id'] == '2') {
                 $product_images[] = DIR_FS_SUPPORTS . 'AM.VD-ImageAdditional-Necklace.jpg';
             }
             if (!in_array($p['jng_sp_catalog_id'], $upload_image_log)) {
                 $upload_image_log[] = $p['jng_sp_catalog_id'];
             }
         } else {
             $nousableimage[] = $p['products_id'];
         }
     } else {
         $nousableimage[] = $p['products_id'];
     }
 }
 //FIND ACCESSORIES USED BY PRODUCT
 $product_accessories = array();
 $product_accessories = $class_pl->retrieveForCatalog($p, $jng_sp_id, 'A', 5);
 if (count($product_accessories) > 0) {
     $accessories_data[$p['products_ean']] = $product_accessories;
 }
 //ADD BRAND DESCRIPTION TO PRODUCT DESCRIPTION
 $pdes = nl2br($p['description']);
 //if ($brandlist[$p['products_brand_id']]['brand_description']!='') $pdes .= '<br/ ><br/ ><br/ >'.$brandlist[$p['products_brand_id']]['brand_description'];
 $xmldata = array();
 if ($p['image_uploaded'] == '1' || count($product_images) > 0) {
     //OTHER ARTICLES (ADDITIONAL LENGTH, ETC)
     //$limit_nonarticle = 50;
     //if (!isset($nonarticle)) $nonarticle = 0;
     $articles = $product_articles[$p['products_id']];
     $articles_total = count($articles);
     $total_articles = 1;
     if ($articles_total > 0 && !in_array($p['categories_id'], $category_ignore_articles)) {