示例#1
0
 public static function batchDeleteZones($batch)
 {
     global $lC_Language, $lC_Database;
     $lC_Language->loadIniFile('countries.php');
     $Qzones = $lC_Database->query('select zone_id, zone_name, zone_code from :table_zones where zone_id in (":zone_id") order by zone_name');
     $Qzones->bindTable(':table_zones', TABLE_ZONES);
     $Qzones->bindRaw(':zone_id', implode('", "', array_unique(array_filter($batch, 'is_numeric'))));
     $Qzones->execute();
     $names_string = '';
     while ($Qzones->next()) {
         $Qcheck = $lC_Database->query('select count(address_book_id) as total from :table_address_book where entry_zone_id = :entry_zone_id limit 1');
         $Qcheck->bindTable(':table_address_book', TABLE_ADDRESS_BOOK);
         $Qcheck->bindInt(':entry_zone_id', $Qzones->valueInt('zone_id'));
         $Qcheck->execute();
         if ($Qcheck->valueInt('total') > 0) {
             $names_string .= $Qzones->valueProtected('zone_name') . ' (' . $Qcheck->valueInt('total') . ' ' . $lC_Language->get('address_book_entries') . '), ';
         }
         $Qzcheck = $lC_Database->query('select count(association_id) as total_zones from :table_zones_to_geo_zones where zone_id = :zone_id limit 1');
         $Qzcheck->bindTable(':table_zones_to_geo_zones', TABLE_ZONES_TO_GEO_ZONES);
         $Qzcheck->bindInt(':zone_id', $Qzones->valueInt('zone_id'));
         $Qzcheck->execute();
         if ($Qzcheck->valueInt('total_zones') > 0) {
             $names_string .= $Qzones->valueProtected('zone_name') . ' (' . $Qzcheck->valueInt('total_zones') . ' ' . $lC_Language->get('tax_zones') . '), ';
         }
         if ($Qzcheck->valueInt('total_zones') == 0 && $Qcheck->valueInt('total') == 0) {
             lC_Countries_Admin::deleteZone($Qzones->valueInt('zone_id'));
         }
         $Qcheck->freeResult();
         $Qzcheck->freeResult();
     }
     if (!empty($names_string)) {
         $names_string = substr($names_string, 0, -2);
     }
     $result['namesString'] = $names_string;
     $Qzones->freeResult();
     return $result;
 }
示例#2
0
 public static function batchDeleteZones()
 {
     $result = lC_Countries_Admin::batchDeleteZones($_GET['batch']);
     if (isset($result['namesString']) && $result['namesString'] != null) {
     } else {
         $result['rpcStatus'] = RPC_STATUS_SUCCESS;
     }
     echo json_encode($result);
 }