示例#1
0
 private function truncateTables($case)
 {
     switch ((int) $case) {
         case $this->entities[$this->l('Categories')]:
             $categories = Db::getInstance()->ExecuteS('SELECT `id_category` FROM `' . _DB_PREFIX_ . 'category` WHERE id_category != 1');
             foreach ($categories as $category) {
                 $c = new Category((int) $category['id_category']);
                 $c->delete();
             }
             break;
         case $this->entities[$this->l('Products')]:
             $products = Db::getInstance()->ExecuteS('SELECT `id_product` FROM `' . _DB_PREFIX_ . 'product`');
             foreach ($products as $product) {
                 $p = new Product((int) $product['id_product']);
                 $p->delete(true);
             }
             break;
         case $this->entities[$this->l('Customers')]:
             $customers = Db::getInstance()->ExecuteS('SELECT `id_customer` FROM `' . _DB_PREFIX_ . 'customer`');
             foreach ($customers as $customer) {
                 $c = new Customer((int) $customer['id_customer']);
                 $c->delete();
             }
             break;
         case $this->entities[$this->l('Addresses')]:
             $addresses = Db::getInstance()->ExecuteS('SELECT `id_address` FROM `' . _DB_PREFIX_ . 'address`');
             foreach ($addresses as $address) {
                 $a = new Address((int) $address['id_address']);
                 $a->delete();
             }
             break;
         case $this->entities[$this->l('Combinations')]:
             $products = Db::getInstance()->ExecuteS('SELECT `id_product` FROM `' . _DB_PREFIX_ . 'product`');
             foreach ($products as $product) {
                 $p = new Product((int) $product['id_product']);
                 $p->deleteProductAttributes();
             }
             break;
         case $this->entities[$this->l('Manufacturers')]:
             $manufacturers = Db::getInstance()->ExecuteS('SELECT `id_manufacturer` FROM `' . _DB_PREFIX_ . 'manufacturer`');
             foreach ($manufacturers as $manufacturer) {
                 $m = new Manufacturer((int) $manufacturer['id_manufacturer']);
                 $m->delete();
             }
             break;
         case $this->entities[$this->l('Suppliers')]:
             $suppliers = Db::getInstance()->ExecuteS('SELECT `id_supplier` FROM `' . _DB_PREFIX_ . 'supplier`');
             foreach ($suppliers as $supplier) {
                 $m = new Supplier((int) $supplier['id_supplier']);
                 $m->delete();
             }
             break;
     }
     Image::clearTmpDir();
     return true;
 }
示例#2
0
 /**
  * Updates the Manufacturers in the database
  *
  * Stores or deletes records depending on the contents of the
  * current request
  * @return  boolean           True on success, null on noop, false otherwise
  */
 static function update_manufacturers()
 {
     global $_ARRAYLANG;
     // Delete any single manufacturer, if requested to
     if (!empty($_GET['delete'])) {
         $manufacturer_id = intval($_GET['delete']);
         return Manufacturer::delete($manufacturer_id);
     }
     // Multiaction: Only deleting implemented
     if (!empty($_POST['multi_action']) && !empty($_POST['selected_manufacturer_id']) && is_array($_POST['selected_manufacturer_id'])) {
         switch ($_POST['multi_action']) {
             case 'delete':
                 // Delete multiple selected manufacturers
                 return Manufacturer::delete($_POST['selected_manufacturer_id']);
         }
     }
     if (!isset($_POST['bstore'])) {
         return null;
     }
     if (empty($_POST['name'])) {
         return \Message::error($_ARRAYLANG['TXT_SHOP_MANUFACTURER_ERROR_EMPTY_NAME']);
     }
     $manufacturer_id = empty($_POST['id']) ? null : intval($_POST['id']);
     $name = empty($_POST['name']) ? '' : contrexx_input2raw($_POST['name']);
     $url = empty($_REQUEST['url']) ? '' : contrexx_input2raw($_REQUEST['url']);
     //DBG::log("ShopManager::update_manufacturers(): Storing Manufacturer: $name, $url, $manufacturer_id");
     $result = Manufacturer::store($name, $url, $manufacturer_id);
     if ($result) {
         // Do not set up the same Manufacturer for editing again after
         // storing it successfully
         $_REQUEST['id'] = $_POST['name'] = $_POST['url'] = null;
         Manufacturer::flush();
     }
     return $result;
 }
示例#3
0
    } catch (fNotFoundException $e) {
        fMessaging::create('error', fURL::get(), 'The manufacturer requested, ID ' . $id . ', could not be found.');
        fURL::redirect(fURL::get());
    } catch (fExpectedException $e) {
        fMessaging::create('error', fURL::get(), $e->getMessage());
    }
    include 'views/manufacturers/addedit.php';
}
/**
 * Delete a manufacturer
 */
if ($action == 'delete') {
    // Get ID
    $id = fRequest::get('id', 'integer');
    try {
        $m = new Manufacturer($id);
        if (fRequest::isPost()) {
            $m->delete();
            fMessaging::create('success', fURL::get(), 'The manufacturer ' . $m->getName() . ' was successfully deleted.');
            fURL::redirect(fURL::get());
        }
    } catch (fNotFoundException $e) {
        fMessaging::create('error', fURL::get(), 'The manufacturer requested, ID ' . $id . ', could not be found.');
        fURL::redirect($manage_url);
    } catch (fExpectedException $e) {
        fMessaging::create('error', fURL::get(), $e->getMessage());
    } catch (fSQLException $e) {
        fMessaging::create('error', fURL::get(), 'Database error: ' . $e->getMessage());
    }
    include 'views/manufacturers/delete.php';
}
示例#4
0
 /**
  * @param integer $id
  * @return string
  * @throws ManufacturerIDMissingException
  */
 public static function delete($id)
 {
     global $user;
     if (is_numeric($id) and $user->is_admin() == true) {
         $manufacturer = new Manufacturer($id);
         if ($manufacturer->delete() == true) {
             echo 1;
         } else {
             echo 0;
         }
     } else {
         throw new ManufacturerIDMissingException();
     }
 }