Пример #1
0
 public function __construct()
 {
     global $osC_Language, $osC_MessageStack;
     parent::__construct();
     $this->_page_contents = 'zones_delete.php';
     if (isset($_POST['subaction']) && $_POST['subaction'] == 'confirm') {
         if (osC_Countries_Admin::deleteZone($_GET['zID'])) {
             $osC_MessageStack->add($this->_module, $osC_Language->get('ms_success_action_performed'), 'success');
         } else {
             $osC_MessageStack->add($this->_module, $osC_Language->get('ms_error_action_not_performed'), 'error');
         }
         osc_redirect_admin(osc_href_link_admin(FILENAME_DEFAULT, $this->_module . '=' . $_GET[$this->_module]));
     }
 }
Пример #2
0
 public function __construct()
 {
     global $osC_Language, $osC_MessageStack;
     parent::__construct();
     if (isset($_POST['batch']) && is_array($_POST['batch']) && !empty($_POST['batch'])) {
         $this->_page_contents = 'zones_batch_delete.php';
         if (isset($_POST['subaction']) && $_POST['subaction'] == 'confirm') {
             $error = false;
             foreach ($_POST['batch'] as $id) {
                 if (!osC_Countries_Admin::deleteZone($id)) {
                     $error = true;
                     break;
                 }
             }
             if ($error === false) {
                 $osC_MessageStack->add($this->_module, $osC_Language->get('ms_success_action_performed'), 'success');
             } else {
                 $osC_MessageStack->add($this->_module, $osC_Language->get('ms_error_action_not_performed'), 'error');
             }
             osc_redirect_admin(osc_href_link_admin(FILENAME_DEFAULT, $this->_module . '=' . $_GET[$this->_module]));
         }
     }
 }
 function deleteZones()
 {
     global $osC_Language, $toC_Json, $osC_Database;
     $error = false;
     $feedback = array();
     $check_tax_zones_flag = array();
     $check_address_book_flag = array();
     $batch = explode(',', $_REQUEST['batch']);
     $Qzones = $osC_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(array_slice($batch, 0, MAX_DISPLAY_SEARCH_RESULTS), 'is_numeric'))));
     $Qzones->execute();
     while ($Qzones->next()) {
         $Qcheck = $osC_Database->query('select address_book_id 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->numberOfRows() === 1) {
             $error = true;
             $check_address_book_flag[] = $Qzones->value('zone_name');
         }
         $Qcheck = $osC_Database->query('select association_id from :table_zones_to_geo_zones where zone_id = :zone_id limit 1');
         $Qcheck->bindTable(':table_zones_to_geo_zones', TABLE_ZONES_TO_GEO_ZONES);
         $Qcheck->bindInt(':zone_id', $Qzones->valueInt('zone_id'));
         $Qcheck->execute();
         if ($Qcheck->numberOfRows() === 1) {
             $error = true;
             $check_tax_zones_flag[] = $Qzones->value('zone_name');
         }
     }
     if (!empty($check_address_book_flag)) {
         $feedback[] = $osC_Language->get('batch_delete_warning_zone_in_use_address_book') . '<p>' . implode(', ', $check_address_book_flag) . '</p>';
     }
     if (!empty($check_tax_zones_flag)) {
         $feedback[] = $osC_Language->get('batch_delete_warning_zone_in_use_tax_zone') . '<p>' . implode(', ', $check_tax_zones_flag) . '</p>';
     }
     if ($error === false) {
         foreach ($batch as $id) {
             if (!osC_Countries_Admin::deleteZone($id)) {
                 $error = true;
                 break;
             }
         }
         if ($error === false) {
             $response = array('success' => true, 'feedback' => $osC_Language->get('ms_success_action_performed'));
         } else {
             $response = array('success' => false, 'feedback' => $osC_Language->get('ms_error_action_not_performed'));
         }
     } else {
         $response = array('success' => false, 'feedback' => $osC_Language->get('ms_error_action_not_performed') . '<br />' . implode('<br />', $feedback));
     }
     echo $toC_Json->encode($response);
 }