store.php (26460B)
1 <?php 2 class ControllerSettingStore extends Controller { 3 private $error = array(); 4 5 public function index() { 6 $this->load->language('setting/store'); 7 8 $this->document->setTitle($this->language->get('heading_title')); 9 10 $this->load->model('setting/store'); 11 12 $this->load->model('setting/setting'); 13 14 $this->getList(); 15 } 16 17 public function add() { 18 $this->load->language('setting/store'); 19 20 $this->document->setTitle($this->language->get('heading_title')); 21 22 $this->load->model('setting/store'); 23 24 if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validateForm()) { 25 $store_id = $this->model_setting_store->addStore($this->request->post); 26 27 $this->load->model('setting/setting'); 28 29 $this->model_setting_setting->editSetting('config', $this->request->post, $store_id); 30 31 $this->session->data['success'] = $this->language->get('text_success'); 32 33 $this->response->redirect($this->url->link('setting/store', 'user_token=' . $this->session->data['user_token'], true)); 34 } 35 36 $this->getForm(); 37 } 38 39 public function edit() { 40 $this->load->language('setting/store'); 41 42 $this->document->setTitle($this->language->get('heading_title')); 43 44 $this->load->model('setting/store'); 45 46 if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validateForm()) { 47 $this->model_setting_store->editStore($this->request->get['store_id'], $this->request->post); 48 49 $this->load->model('setting/setting'); 50 51 $this->model_setting_setting->editSetting('config', $this->request->post, $this->request->get['store_id']); 52 53 $this->session->data['success'] = $this->language->get('text_success'); 54 55 $this->response->redirect($this->url->link('setting/store', 'user_token=' . $this->session->data['user_token'] . '&store_id=' . $this->request->get['store_id'], true)); 56 } 57 58 $this->getForm(); 59 } 60 61 public function delete() { 62 $this->load->language('setting/store'); 63 64 $this->document->setTitle($this->language->get('heading_title')); 65 66 $this->load->model('setting/store'); 67 68 if (isset($this->request->post['selected']) && $this->validateDelete()) { 69 $this->load->model('setting/setting'); 70 71 foreach ($this->request->post['selected'] as $store_id) { 72 $this->model_setting_store->deleteStore($store_id); 73 74 $this->model_setting_setting->deleteSetting('config', $store_id); 75 } 76 77 $this->session->data['success'] = $this->language->get('text_success'); 78 79 $this->response->redirect($this->url->link('setting/store', 'user_token=' . $this->session->data['user_token'], true)); 80 } 81 82 $this->getList(); 83 } 84 85 protected function getList() { 86 $url = ''; 87 88 if (isset($this->request->get['page'])) { 89 $url .= '&page=' . $this->request->get['page']; 90 } 91 92 $data['breadcrumbs'] = array(); 93 94 $data['breadcrumbs'][] = array( 95 'text' => $this->language->get('text_home'), 96 'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true) 97 ); 98 99 $data['breadcrumbs'][] = array( 100 'text' => $this->language->get('heading_title'), 101 'href' => $this->url->link('setting/store', 'user_token=' . $this->session->data['user_token'], true) 102 ); 103 104 $data['add'] = $this->url->link('setting/store/add', 'user_token=' . $this->session->data['user_token'], true); 105 $data['delete'] = $this->url->link('setting/store/delete', 'user_token=' . $this->session->data['user_token'], true); 106 107 $data['stores'] = array(); 108 109 $data['stores'][] = array( 110 'store_id' => 0, 111 'name' => $this->config->get('config_name') . $this->language->get('text_default'), 112 'url' => $this->config->get('config_secure') ? HTTPS_CATALOG : HTTP_CATALOG, 113 'edit' => $this->url->link('setting/setting', 'user_token=' . $this->session->data['user_token'], true) 114 ); 115 116 $store_total = $this->model_setting_store->getTotalStores(); 117 118 $results = $this->model_setting_store->getStores(); 119 120 foreach ($results as $result) { 121 $data['stores'][] = array( 122 'store_id' => $result['store_id'], 123 'name' => $result['name'], 124 'url' => $result['url'], 125 'edit' => $this->url->link('setting/store/edit', 'user_token=' . $this->session->data['user_token'] . '&store_id=' . $result['store_id'], true) 126 ); 127 } 128 129 if (isset($this->error['warning'])) { 130 $data['error_warning'] = $this->error['warning']; 131 } else { 132 $data['error_warning'] = ''; 133 } 134 135 if (isset($this->session->data['success'])) { 136 $data['success'] = $this->session->data['success']; 137 138 unset($this->session->data['success']); 139 } else { 140 $data['success'] = ''; 141 } 142 143 if (isset($this->request->post['selected'])) { 144 $data['selected'] = (array)$this->request->post['selected']; 145 } else { 146 $data['selected'] = array(); 147 } 148 149 $data['header'] = $this->load->controller('common/header'); 150 $data['column_left'] = $this->load->controller('common/column_left'); 151 $data['footer'] = $this->load->controller('common/footer'); 152 153 $this->response->setOutput($this->load->view('setting/store_list', $data)); 154 } 155 156 protected function getForm() { 157 $data['text_form'] = !isset($this->request->get['store_id']) ? $this->language->get('text_add') : $this->language->get('text_edit'); 158 159 if (isset($this->error['warning'])) { 160 $data['error_warning'] = $this->error['warning']; 161 } else { 162 $data['error_warning'] = ''; 163 } 164 165 if (isset($this->error['url'])) { 166 $data['error_url'] = $this->error['url']; 167 } else { 168 $data['error_url'] = ''; 169 } 170 171 if (isset($this->error['meta_title'])) { 172 $data['error_meta_title'] = $this->error['meta_title']; 173 } else { 174 $data['error_meta_title'] = ''; 175 } 176 177 if (isset($this->error['name'])) { 178 $data['error_name'] = $this->error['name']; 179 } else { 180 $data['error_name'] = ''; 181 } 182 183 if (isset($this->error['owner'])) { 184 $data['error_owner'] = $this->error['owner']; 185 } else { 186 $data['error_owner'] = ''; 187 } 188 189 if (isset($this->error['address'])) { 190 $data['error_address'] = $this->error['address']; 191 } else { 192 $data['error_address'] = ''; 193 } 194 195 if (isset($this->error['email'])) { 196 $data['error_email'] = $this->error['email']; 197 } else { 198 $data['error_email'] = ''; 199 } 200 201 if (isset($this->error['telephone'])) { 202 $data['error_telephone'] = $this->error['telephone']; 203 } else { 204 $data['error_telephone'] = ''; 205 } 206 207 if (isset($this->error['customer_group_display'])) { 208 $data['error_customer_group_display'] = $this->error['customer_group_display']; 209 } else { 210 $data['error_customer_group_display'] = ''; 211 } 212 213 $data['breadcrumbs'] = array(); 214 215 $data['breadcrumbs'][] = array( 216 'text' => $this->language->get('text_home'), 217 'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true) 218 ); 219 220 $data['breadcrumbs'][] = array( 221 'text' => $this->language->get('heading_title'), 222 'href' => $this->url->link('setting/store', 'user_token=' . $this->session->data['user_token'], true) 223 ); 224 225 if (!isset($this->request->get['store_id'])) { 226 $data['breadcrumbs'][] = array( 227 'text' => $this->language->get('text_settings'), 228 'href' => $this->url->link('setting/store/add', 'user_token=' . $this->session->data['user_token'], true) 229 ); 230 } else { 231 $data['breadcrumbs'][] = array( 232 'text' => $this->language->get('text_settings'), 233 'href' => $this->url->link('setting/store/edit', 'user_token=' . $this->session->data['user_token'] . '&store_id=' . $this->request->get['store_id'], true) 234 ); 235 } 236 237 if (isset($this->session->data['success'])) { 238 $data['success'] = $this->session->data['success']; 239 240 unset($this->session->data['success']); 241 } else { 242 $data['success'] = ''; 243 } 244 245 if (!isset($this->request->get['store_id'])) { 246 $data['action'] = $this->url->link('setting/store/add', 'user_token=' . $this->session->data['user_token'], true); 247 } else { 248 $data['action'] = $this->url->link('setting/store/edit', 'user_token=' . $this->session->data['user_token'] . '&store_id=' . $this->request->get['store_id'], true); 249 } 250 251 $data['cancel'] = $this->url->link('setting/store', 'user_token=' . $this->session->data['user_token'], true); 252 253 if (isset($this->request->get['store_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) { 254 $this->load->model('setting/setting'); 255 256 $store_info = $this->model_setting_setting->getSetting('config', $this->request->get['store_id']); 257 } 258 259 $data['user_token'] = $this->session->data['user_token']; 260 261 if (isset($this->request->post['config_url'])) { 262 $data['config_url'] = $this->request->post['config_url']; 263 } elseif (isset($store_info['config_url'])) { 264 $data['config_url'] = $store_info['config_url']; 265 } else { 266 $data['config_url'] = ''; 267 } 268 269 if (isset($this->request->post['config_ssl'])) { 270 $data['config_ssl'] = $this->request->post['config_ssl']; 271 } elseif (isset($store_info['config_ssl'])) { 272 $data['config_ssl'] = $store_info['config_ssl']; 273 } else { 274 $data['config_ssl'] = ''; 275 } 276 277 if (isset($this->request->post['config_meta_title'])) { 278 $data['config_meta_title'] = $this->request->post['config_meta_title']; 279 } elseif (isset($store_info['config_meta_title'])) { 280 $data['config_meta_title'] = $store_info['config_meta_title']; 281 } else { 282 $data['config_meta_title'] = ''; 283 } 284 285 if (isset($this->request->post['config_meta_description'])) { 286 $data['config_meta_description'] = $this->request->post['config_meta_description']; 287 } elseif (isset($store_info['config_meta_description'])) { 288 $data['config_meta_description'] = $store_info['config_meta_description']; 289 } else { 290 $data['config_meta_description'] = ''; 291 } 292 293 if (isset($this->request->post['config_meta_keyword'])) { 294 $data['config_meta_keyword'] = $this->request->post['config_meta_keyword']; 295 } elseif (isset($store_info['config_meta_keyword'])) { 296 $data['config_meta_keyword'] = $store_info['config_meta_keyword']; 297 } else { 298 $data['config_meta_keyword'] = ''; 299 } 300 301 if (isset($this->request->post['config_theme'])) { 302 $data['config_theme'] = $this->request->post['config_theme']; 303 } elseif (isset($store_info['config_theme'])) { 304 $data['config_theme'] = $store_info['config_theme']; 305 } else { 306 $data['config_theme'] = ''; 307 } 308 309 $data['themes'] = array(); 310 311 // Create a new language container so we don't pollute the current one 312 $language = new Language($this->config->get('config_language')); 313 314 $this->load->model('setting/extension'); 315 316 $extensions = $this->model_setting_extension->getInstalled('theme'); 317 318 foreach ($extensions as $code) { 319 $this->load->language('extension/theme/' . $code, 'extension'); 320 321 $data['themes'][] = array( 322 'text' => $this->language->get('extension')->get('heading_title'), 323 'value' => $code 324 ); 325 } 326 327 if (isset($this->request->post['config_layout_id'])) { 328 $data['config_layout_id'] = $this->request->post['config_layout_id']; 329 } elseif (isset($store_info['config_layout_id'])) { 330 $data['config_layout_id'] = $store_info['config_layout_id']; 331 } else { 332 $data['config_layout_id'] = ''; 333 } 334 335 $this->load->model('design/layout'); 336 337 $data['layouts'] = $this->model_design_layout->getLayouts(); 338 339 if (isset($this->request->post['config_name'])) { 340 $data['config_name'] = $this->request->post['config_name']; 341 } elseif (isset($store_info['config_name'])) { 342 $data['config_name'] = $store_info['config_name']; 343 } else { 344 $data['config_name'] = ''; 345 } 346 347 if (isset($this->request->post['config_owner'])) { 348 $data['config_owner'] = $this->request->post['config_owner']; 349 } elseif (isset($store_info['config_owner'])) { 350 $data['config_owner'] = $store_info['config_owner']; 351 } else { 352 $data['config_owner'] = ''; 353 } 354 355 if (isset($this->request->post['config_address'])) { 356 $data['config_address'] = $this->request->post['config_address']; 357 } elseif (isset($store_info['config_address'])) { 358 $data['config_address'] = $store_info['config_address']; 359 } else { 360 $data['config_address'] = ''; 361 } 362 363 if (isset($this->request->post['config_geocode'])) { 364 $data['config_geocode'] = $this->request->post['config_geocode']; 365 } elseif (isset($store_info['config_geocode'])) { 366 $data['config_geocode'] = $store_info['config_geocode']; 367 } else { 368 $data['config_geocode'] = ''; 369 } 370 371 if (isset($this->request->post['config_email'])) { 372 $data['config_email'] = $this->request->post['config_email']; 373 } elseif (isset($store_info['config_email'])) { 374 $data['config_email'] = $store_info['config_email']; 375 } else { 376 $data['config_email'] = ''; 377 } 378 379 if (isset($this->request->post['config_telephone'])) { 380 $data['config_telephone'] = $this->request->post['config_telephone']; 381 } elseif (isset($store_info['config_telephone'])) { 382 $data['config_telephone'] = $store_info['config_telephone']; 383 } else { 384 $data['config_telephone'] = ''; 385 } 386 387 if (isset($this->request->post['config_fax'])) { 388 $data['config_fax'] = $this->request->post['config_fax']; 389 } elseif (isset($store_info['config_fax'])) { 390 $data['config_fax'] = $store_info['config_fax']; 391 } else { 392 $data['config_fax'] = ''; 393 } 394 395 if (isset($this->request->post['config_image'])) { 396 $data['config_image'] = $this->request->post['config_image']; 397 } elseif (isset($store_info['config_image'])) { 398 $data['config_image'] = $store_info['config_image']; 399 } else { 400 $data['config_image'] = ''; 401 } 402 403 $this->load->model('tool/image'); 404 405 if (isset($this->request->post['config_image']) && is_file(DIR_IMAGE . $this->request->post['config_image'])) { 406 $data['thumb'] = $this->model_tool_image->resize($this->request->post['config_image'], 100, 100); 407 } elseif (isset($store_info['config_image']) && is_file(DIR_IMAGE . $store_info['config_image'])) { 408 $data['thumb'] = $this->model_tool_image->resize($store_info['config_image'], 100, 100); 409 } else { 410 $data['thumb'] = $this->model_tool_image->resize('no_image.png', 100, 100); 411 } 412 413 $data['placeholder'] = $this->model_tool_image->resize('no_image.png', 100, 100); 414 415 if (isset($this->request->post['config_open'])) { 416 $data['config_open'] = $this->request->post['config_open']; 417 } elseif (isset($store_info['config_open'])) { 418 $data['config_open'] = $store_info['config_open']; 419 } else { 420 $data['config_open'] = ''; 421 } 422 423 if (isset($this->request->post['config_comment'])) { 424 $data['config_comment'] = $this->request->post['config_comment']; 425 } elseif (isset($store_info['config_comment'])) { 426 $data['config_comment'] = $store_info['config_comment']; 427 } else { 428 $data['config_comment'] = ''; 429 } 430 431 $this->load->model('localisation/location'); 432 433 $data['locations'] = $this->model_localisation_location->getLocations(); 434 435 if (isset($this->request->post['config_location'])) { 436 $data['config_location'] = $this->request->post['config_location']; 437 } elseif (isset($store_info['config_location'])) { 438 $data['config_location'] = $this->config->get('config_location'); 439 } else { 440 $data['config_location'] = array(); 441 } 442 443 if (isset($this->request->post['config_country_id'])) { 444 $data['config_country_id'] = $this->request->post['config_country_id']; 445 } elseif (isset($store_info['config_country_id'])) { 446 $data['config_country_id'] = $store_info['config_country_id']; 447 } else { 448 $data['config_country_id'] = $this->config->get('config_country_id'); 449 } 450 451 $this->load->model('localisation/country'); 452 453 $data['countries'] = $this->model_localisation_country->getCountries(); 454 455 if (isset($this->request->post['config_zone_id'])) { 456 $data['config_zone_id'] = $this->request->post['config_zone_id']; 457 } elseif (isset($store_info['config_zone_id'])) { 458 $data['config_zone_id'] = $store_info['config_zone_id']; 459 } else { 460 $data['config_zone_id'] = $this->config->get('config_zone_id'); 461 } 462 463 if (isset($this->request->post['config_language'])) { 464 $data['config_language'] = $this->request->post['config_language']; 465 } elseif (isset($store_info['config_language'])) { 466 $data['config_language'] = $store_info['config_language']; 467 } else { 468 $data['config_language'] = $this->config->get('config_language'); 469 } 470 471 $this->load->model('localisation/language'); 472 473 $data['languages'] = $this->model_localisation_language->getLanguages(); 474 475 if (isset($this->request->post['config_currency'])) { 476 $data['config_currency'] = $this->request->post['config_currency']; 477 } elseif (isset($store_info['config_currency'])) { 478 $data['config_currency'] = $store_info['config_currency']; 479 } else { 480 $data['config_currency'] = $this->config->get('config_currency'); 481 } 482 483 $this->load->model('localisation/currency'); 484 485 $data['currencies'] = $this->model_localisation_currency->getCurrencies(); 486 487 if (isset($this->request->post['config_tax'])) { 488 $data['config_tax'] = $this->request->post['config_tax']; 489 } elseif (isset($store_info['config_tax'])) { 490 $data['config_tax'] = $store_info['config_tax']; 491 } else { 492 $data['config_tax'] = ''; 493 } 494 495 if (isset($this->request->post['config_tax_default'])) { 496 $data['config_tax_default'] = $this->request->post['config_tax_default']; 497 } elseif (isset($store_info['config_tax_default'])) { 498 $data['config_tax_default'] = $store_info['config_tax_default']; 499 } else { 500 $data['config_tax_default'] = ''; 501 } 502 503 if (isset($this->request->post['config_tax_customer'])) { 504 $data['config_tax_customer'] = $this->request->post['config_tax_customer']; 505 } elseif (isset($store_info['config_tax_customer'])) { 506 $data['config_tax_customer'] = $store_info['config_tax_customer']; 507 } else { 508 $data['config_tax_customer'] = ''; 509 } 510 511 if (isset($this->request->post['config_customer_group_id'])) { 512 $data['config_customer_group_id'] = $this->request->post['config_customer_group_id']; 513 } elseif (isset($store_info['config_customer_group_id'])) { 514 $data['config_customer_group_id'] = $store_info['config_customer_group_id']; 515 } else { 516 $data['config_customer_group_id'] = ''; 517 } 518 519 $this->load->model('customer/customer_group'); 520 521 $data['customer_groups'] = $this->model_customer_customer_group->getCustomerGroups(); 522 523 if (isset($this->request->post['config_customer_group_display'])) { 524 $data['config_customer_group_display'] = $this->request->post['config_customer_group_display']; 525 } elseif (isset($store_info['config_customer_group_display'])) { 526 $data['config_customer_group_display'] = $store_info['config_customer_group_display']; 527 } else { 528 $data['config_customer_group_display'] = array(); 529 } 530 531 if (isset($this->request->post['config_customer_price'])) { 532 $data['config_customer_price'] = $this->request->post['config_customer_price']; 533 } elseif (isset($store_info['config_customer_price'])) { 534 $data['config_customer_price'] = $store_info['config_customer_price']; 535 } else { 536 $data['config_customer_price'] = ''; 537 } 538 539 if (isset($this->request->post['config_account_id'])) { 540 $data['config_account_id'] = $this->request->post['config_account_id']; 541 } elseif (isset($store_info['config_account_id'])) { 542 $data['config_account_id'] = $store_info['config_account_id']; 543 } else { 544 $data['config_account_id'] = ''; 545 } 546 547 $this->load->model('catalog/information'); 548 549 $data['informations'] = $this->model_catalog_information->getInformations(); 550 551 if (isset($this->request->post['config_cart_weight'])) { 552 $data['config_cart_weight'] = $this->request->post['config_cart_weight']; 553 } elseif (isset($store_info['config_cart_weight'])) { 554 $data['config_cart_weight'] = $store_info['config_cart_weight']; 555 } else { 556 $data['config_cart_weight'] = ''; 557 } 558 559 if (isset($this->request->post['config_checkout_guest'])) { 560 $data['config_checkout_guest'] = $this->request->post['config_checkout_guest']; 561 } elseif (isset($store_info['config_checkout_guest'])) { 562 $data['config_checkout_guest'] = $store_info['config_checkout_guest']; 563 } else { 564 $data['config_checkout_guest'] = ''; 565 } 566 567 if (isset($this->request->post['config_checkout_id'])) { 568 $data['config_checkout_id'] = $this->request->post['config_checkout_id']; 569 } elseif (isset($store_info['config_checkout_id'])) { 570 $data['config_checkout_id'] = $store_info['config_checkout_id']; 571 } else { 572 $data['config_checkout_id'] = ''; 573 } 574 575 if (isset($this->request->post['config_order_status_id'])) { 576 $data['config_order_status_id'] = $this->request->post['config_order_status_id']; 577 } elseif (isset($store_info['config_order_status_id'])) { 578 $data['config_order_status_id'] = $store_info['config_order_status_id']; 579 } else { 580 $data['config_order_status_id'] = ''; 581 } 582 583 $this->load->model('localisation/order_status'); 584 585 $data['order_statuses'] = $this->model_localisation_order_status->getOrderStatuses(); 586 587 if (isset($this->request->post['config_stock_display'])) { 588 $data['config_stock_display'] = $this->request->post['config_stock_display']; 589 } elseif (isset($store_info['config_stock_display'])) { 590 $data['config_stock_display'] = $store_info['config_stock_display']; 591 } else { 592 $data['config_stock_display'] = ''; 593 } 594 595 if (isset($this->request->post['config_stock_checkout'])) { 596 $data['config_stock_checkout'] = $this->request->post['config_stock_checkout']; 597 } elseif (isset($store_info['config_stock_checkout'])) { 598 $data['config_stock_checkout'] = $store_info['config_stock_checkout']; 599 } else { 600 $data['config_stock_checkout'] = ''; 601 } 602 603 if (isset($this->request->post['config_logo'])) { 604 $data['config_logo'] = $this->request->post['config_logo']; 605 } elseif (isset($store_info['config_logo'])) { 606 $data['config_logo'] = $store_info['config_logo']; 607 } else { 608 $data['config_logo'] = ''; 609 } 610 611 if (isset($this->request->post['config_logo']) && is_file(DIR_IMAGE . $this->request->post['config_logo'])) { 612 $data['logo'] = $this->model_tool_image->resize($this->request->post['config_logo'], 100, 100); 613 } elseif (isset($store_info['config_logo']) && is_file(DIR_IMAGE . $store_info['config_logo'])) { 614 $data['logo'] = $this->model_tool_image->resize($store_info['config_logo'], 100, 100); 615 } else { 616 $data['logo'] = $this->model_tool_image->resize('no_image.png', 100, 100); 617 } 618 619 $data['placeholder'] = $this->model_tool_image->resize('no_image.png', 100, 100); 620 621 if (isset($this->request->post['config_icon'])) { 622 $data['config_icon'] = $this->request->post['config_icon']; 623 } elseif (isset($store_info['config_icon'])) { 624 $data['config_icon'] = $store_info['config_icon']; 625 } else { 626 $data['config_icon'] = ''; 627 } 628 629 if (isset($this->request->post['config_icon']) && is_file(DIR_IMAGE . $this->request->post['config_icon'])) { 630 $data['icon'] = $this->model_tool_image->resize($this->request->post['config_icon'], 100, 100); 631 } elseif (isset($store_info['config_icon']) && is_file(DIR_IMAGE . $store_info['config_icon'])) { 632 $data['icon'] = $this->model_tool_image->resize($store_info['config_icon'], 100, 100); 633 } else { 634 $data['icon'] = $this->model_tool_image->resize('no_image.png', 100, 100); 635 } 636 637 if (isset($this->request->post['config_secure'])) { 638 $data['config_secure'] = $this->request->post['config_secure']; 639 } elseif (isset($store_info['config_secure'])) { 640 $data['config_secure'] = $store_info['config_secure']; 641 } else { 642 $data['config_secure'] = ''; 643 } 644 645 $data['header'] = $this->load->controller('common/header'); 646 $data['column_left'] = $this->load->controller('common/column_left'); 647 $data['footer'] = $this->load->controller('common/footer'); 648 649 $this->response->setOutput($this->load->view('setting/store_form', $data)); 650 } 651 652 protected function validateForm() { 653 if (!$this->user->hasPermission('modify', 'setting/store')) { 654 $this->error['warning'] = $this->language->get('error_permission'); 655 } 656 657 if (!$this->request->post['config_url']) { 658 $this->error['url'] = $this->language->get('error_url'); 659 } 660 661 if (!$this->request->post['config_meta_title']) { 662 $this->error['meta_title'] = $this->language->get('error_meta_title'); 663 } 664 665 if (!$this->request->post['config_name']) { 666 $this->error['name'] = $this->language->get('error_name'); 667 } 668 669 if ((utf8_strlen($this->request->post['config_owner']) < 3) || (utf8_strlen($this->request->post['config_owner']) > 64)) { 670 $this->error['owner'] = $this->language->get('error_owner'); 671 } 672 673 if ((utf8_strlen($this->request->post['config_address']) < 3) || (utf8_strlen($this->request->post['config_address']) > 256)) { 674 $this->error['address'] = $this->language->get('error_address'); 675 } 676 677 if ((utf8_strlen($this->request->post['config_email']) > 96) || !filter_var($this->request->post['config_email'], FILTER_VALIDATE_EMAIL)) { 678 $this->error['email'] = $this->language->get('error_email'); 679 } 680 681 if ((utf8_strlen($this->request->post['config_telephone']) < 3) || (utf8_strlen($this->request->post['config_telephone']) > 32)) { 682 $this->error['telephone'] = $this->language->get('error_telephone'); 683 } 684 685 if (!empty($this->request->post['config_customer_group_display']) && !in_array($this->request->post['config_customer_group_id'], $this->request->post['config_customer_group_display'])) { 686 $this->error['customer_group_display'] = $this->language->get('error_customer_group_display'); 687 } 688 689 if ($this->error && !isset($this->error['warning'])) { 690 $this->error['warning'] = $this->language->get('error_warning'); 691 } 692 693 return !$this->error; 694 } 695 696 protected function validateDelete() { 697 if (!$this->user->hasPermission('modify', 'setting/store')) { 698 $this->error['warning'] = $this->language->get('error_permission'); 699 } 700 701 $this->load->model('sale/order'); 702 703 foreach ($this->request->post['selected'] as $store_id) { 704 if (!$store_id) { 705 $this->error['warning'] = $this->language->get('error_default'); 706 } 707 708 $store_total = $this->model_sale_order->getTotalOrdersByStoreId($store_id); 709 710 if ($store_total) { 711 $this->error['warning'] = sprintf($this->language->get('error_store'), $store_total); 712 } 713 } 714 715 return !$this->error; 716 } 717 }