From 122b163553846040810e67fcf9de82ff2d6362e6 Mon Sep 17 00:00:00 2001 From: rMalie Date: Thu, 10 Nov 2011 17:32:47 +0000 Subject: [PATCH] [+] Install: new installer reworked from scratch --- install-new/README.txt | 67 + install-new/classes/controllerHttp.php | 410 +++ install-new/classes/exception.php | 30 + install-new/classes/fixtures.php | 1156 ++++++++ install-new/classes/language.php | 122 + install-new/classes/languages.php | 188 ++ install-new/classes/model.php | 58 + install-new/classes/session.php | 66 + install-new/classes/sqlLoader.php | 123 + install-new/classes/xmlLoader.php | 1101 ++++++++ install-new/controllers/http/configure.php | 438 +++ install-new/controllers/http/database.php | 202 ++ install-new/controllers/http/process.php | 219 ++ install-new/controllers/http/system.php | 132 + install-new/controllers/http/welcome.php | 73 + install-new/data/db_structure.sql | 2174 +++++++++++++++ install-new/data/img/genders/Miss.jpg | Bin 0 -> 866 bytes install-new/data/img/genders/Mr.jpg | Bin 0 -> 875 bytes install-new/data/img/genders/Ms.jpg | Bin 0 -> 866 bytes .../data/img/os/Awaiting_PayPal_payment.gif | Bin 0 -> 608 bytes .../img/os/Awaiting_bank_wire_payment.gif | Bin 0 -> 1030 bytes .../data/img/os/Awaiting_cheque_payment.gif | Bin 0 -> 958 bytes install-new/data/img/os/Canceled.gif | Bin 0 -> 379 bytes install-new/data/img/os/Delivered.gif | Bin 0 -> 980 bytes install-new/data/img/os/On_backorder.gif | Bin 0 -> 1071 bytes install-new/data/img/os/Payment_accepted.gif | Bin 0 -> 334 bytes install-new/data/img/os/Payment_error.gif | Bin 0 -> 387 bytes .../data/img/os/Payment_remotely_accepted.gif | Bin 0 -> 976 bytes .../data/img/os/Preparation_in_progress.gif | Bin 0 -> 1046 bytes install-new/data/img/os/Refund.gif | Bin 0 -> 596 bytes install-new/data/img/os/Shipped.gif | Bin 0 -> 615 bytes install-new/data/img/t/AdminAccess.gif | Bin 0 -> 631 bytes install-new/data/img/t/AdminAccounting.gif | Bin 0 -> 891 bytes install-new/data/img/t/AdminAddonsCatalog.gif | Bin 0 -> 1461 bytes .../data/img/t/AdminAddonsMyAccount.gif | Bin 0 -> 1461 bytes install-new/data/img/t/AdminAddresses.gif | Bin 0 -> 604 bytes install-new/data/img/t/AdminAliases.gif | Bin 0 -> 956 bytes install-new/data/img/t/AdminAttachments.gif | Bin 0 -> 1040 bytes .../data/img/t/AdminAttributesGroups.gif | Bin 0 -> 612 bytes install-new/data/img/t/AdminBackup.gif | Bin 0 -> 1052 bytes install-new/data/img/t/AdminCMSContent.gif | Bin 0 -> 1026 bytes install-new/data/img/t/AdminCarriers.gif | Bin 0 -> 583 bytes install-new/data/img/t/AdminCartRules.gif | Bin 0 -> 1019 bytes install-new/data/img/t/AdminCarts.gif | Bin 0 -> 1000 bytes install-new/data/img/t/AdminCatalog.gif | Bin 0 -> 570 bytes install-new/data/img/t/AdminContact.gif | Bin 0 -> 354 bytes install-new/data/img/t/AdminContacts.gif | Bin 0 -> 604 bytes install-new/data/img/t/AdminCountries.gif | Bin 0 -> 1065 bytes install-new/data/img/t/AdminCurrencies.gif | Bin 0 -> 358 bytes .../data/img/t/AdminCustomerThreads.gif | Bin 0 -> 587 bytes install-new/data/img/t/AdminCustomers.gif | Bin 0 -> 587 bytes install-new/data/img/t/AdminDb.gif | Bin 0 -> 279 bytes install-new/data/img/t/AdminDeliverySlip.gif | Bin 0 -> 926 bytes install-new/data/img/t/AdminEmails.gif | Bin 0 -> 582 bytes install-new/data/img/t/AdminEmployees.gif | Bin 0 -> 586 bytes install-new/data/img/t/AdminFeatures.gif | Bin 0 -> 998 bytes install-new/data/img/t/AdminGenders.gif | Bin 0 -> 739 bytes install-new/data/img/t/AdminGenerator.gif | Bin 0 -> 1022 bytes install-new/data/img/t/AdminGeolocation.gif | Bin 0 -> 1064 bytes install-new/data/img/t/AdminGroups.gif | Bin 0 -> 1004 bytes install-new/data/img/t/AdminHome.gif | Bin 0 -> 604 bytes install-new/data/img/t/AdminImages.gif | Bin 0 -> 585 bytes install-new/data/img/t/AdminImport.gif | Bin 0 -> 981 bytes install-new/data/img/t/AdminInformation.gif | Bin 0 -> 617 bytes install-new/data/img/t/AdminInvoices.gif | Bin 0 -> 997 bytes install-new/data/img/t/AdminLanguages.gif | Bin 0 -> 1065 bytes install-new/data/img/t/AdminLocalization.gif | Bin 0 -> 1067 bytes install-new/data/img/t/AdminLogs.gif | Bin 0 -> 1027 bytes install-new/data/img/t/AdminManufacturers.gif | Bin 0 -> 280 bytes install-new/data/img/t/AdminMessages.gif | Bin 0 -> 604 bytes install-new/data/img/t/AdminMeta.gif | Bin 0 -> 991 bytes install-new/data/img/t/AdminModules.gif | Bin 0 -> 365 bytes .../data/img/t/AdminModulesPositions.gif | Bin 0 -> 1033 bytes install-new/data/img/t/AdminOrderMessage.gif | Bin 0 -> 1055 bytes install-new/data/img/t/AdminOrders.gif | Bin 0 -> 265 bytes install-new/data/img/t/AdminPDF.gif | Bin 0 -> 616 bytes install-new/data/img/t/AdminPPreferences.gif | Bin 0 -> 265 bytes install-new/data/img/t/AdminPayment.gif | Bin 0 -> 1042 bytes install-new/data/img/t/AdminPerformance.gif | Bin 0 -> 959 bytes install-new/data/img/t/AdminPreferences.gif | Bin 0 -> 991 bytes install-new/data/img/t/AdminProfiles.gif | Bin 0 -> 932 bytes install-new/data/img/t/AdminQuickAccesses.gif | Bin 0 -> 971 bytes install-new/data/img/t/AdminRangePrice.gif | Bin 0 -> 358 bytes install-new/data/img/t/AdminRangeWeight.gif | Bin 0 -> 1062 bytes install-new/data/img/t/AdminReferrers.gif | Bin 0 -> 1036 bytes install-new/data/img/t/AdminReturn.gif | Bin 0 -> 1062 bytes install-new/data/img/t/AdminScenes.gif | Bin 0 -> 1053 bytes install-new/data/img/t/AdminSearch.gif | Bin 0 -> 989 bytes install-new/data/img/t/AdminSearchConf.gif | Bin 0 -> 355 bytes install-new/data/img/t/AdminSearchEngines.gif | Bin 0 -> 1013 bytes install-new/data/img/t/AdminShipping.gif | Bin 0 -> 583 bytes install-new/data/img/t/AdminShop.gif | Bin 0 -> 1010 bytes install-new/data/img/t/AdminSlip.gif | Bin 0 -> 1027 bytes install-new/data/img/t/AdminStates.gif | Bin 0 -> 1065 bytes install-new/data/img/t/AdminStats.gif | Bin 0 -> 606 bytes install-new/data/img/t/AdminStatsConf.gif | Bin 0 -> 1027 bytes install-new/data/img/t/AdminStatuses.gif | Bin 0 -> 618 bytes install-new/data/img/t/AdminStock.gif | Bin 0 -> 622 bytes .../data/img/t/AdminStockManagement.gif | Bin 0 -> 563 bytes install-new/data/img/t/AdminStockMvt.gif | Bin 0 -> 416 bytes install-new/data/img/t/AdminStores.gif | Bin 0 -> 1006 bytes install-new/data/img/t/AdminSubDomains.gif | Bin 0 -> 1071 bytes install-new/data/img/t/AdminSuppliers.gif | Bin 0 -> 266 bytes install-new/data/img/t/AdminTabs.gif | Bin 0 -> 347 bytes install-new/data/img/t/AdminTags.gif | Bin 0 -> 981 bytes install-new/data/img/t/AdminTaxRulesGroup.gif | Bin 0 -> 383 bytes install-new/data/img/t/AdminTaxes.gif | Bin 0 -> 383 bytes install-new/data/img/t/AdminThemes.gif | Bin 0 -> 1025 bytes install-new/data/img/t/AdminTools.gif | Bin 0 -> 351 bytes install-new/data/img/t/AdminTracking.gif | Bin 0 -> 898 bytes install-new/data/img/t/AdminTranslations.gif | Bin 0 -> 919 bytes install-new/data/img/t/AdminWebservice.gif | Bin 0 -> 613 bytes install-new/data/img/t/AdminZones.gif | Bin 0 -> 1065 bytes install-new/data/iso_to_timezone.xml | 244 ++ install-new/data/xml/.xml | 9 + install-new/data/xml/access.xml | 109 + install-new/data/xml/address_format.xml | 2448 +++++++++++++++++ install-new/data/xml/carrier.xml | 23 + install-new/data/xml/carrier_group.xml | 11 + install-new/data/xml/carrier_zone.xml | 11 + install-new/data/xml/category.xml | 11 + install-new/data/xml/cms.xml | 15 + install-new/data/xml/cms_category.xml | 11 + install-new/data/xml/configuration.xml | 628 +++++ install-new/data/xml/contact.xml | 16 + install-new/data/xml/country.xml | 261 ++ install-new/data/xml/gender.xml | 12 + install-new/data/xml/group.xml | 11 + install-new/data/xml/hook.xml | 13 + install-new/data/xml/hook_alias.xml | 350 +++ install-new/data/xml/image_type.xml | 25 + install-new/data/xml/meta.xml | 84 + install-new/data/xml/operating_system.xml | 21 + install-new/data/xml/order_return_state.xml | 14 + install-new/data/xml/order_state.xml | 28 + install-new/data/xml/profile.xml | 9 + install-new/data/xml/quick_access.xml | 25 + install-new/data/xml/search_engine.xml | 124 + install-new/data/xml/state.xml | 950 +++++++ install-new/data/xml/stock_mvt_reason.xml | 17 + install-new/data/xml/subdomain.xml | 10 + install-new/data/xml/supplier_order_state.xml | 20 + install-new/data/xml/tab.xml | 295 ++ install-new/data/xml/theme.xml | 12 + install-new/data/xml/timezone.xml | 569 ++++ install-new/data/xml/warehouse.xml | 15 + install-new/data/xml/web_browser.xml | 33 + install-new/data/xml/zone.xml | 34 + install-new/dev/index.php | 105 + install-new/dev/index.phtml | 117 + install-new/dev/style.css | 8 + install-new/fixtures/apple/data/access.xml | 373 +++ install-new/fixtures/apple/data/address.xml | 39 + install-new/fixtures/apple/data/alias.xml | 19 + install-new/fixtures/apple/data/attribute.xml | 30 + .../fixtures/apple/data/attribute_group.xml | 13 + install-new/fixtures/apple/data/carrier.xml | 26 + .../fixtures/apple/data/carrier_group.xml | 11 + .../fixtures/apple/data/carrier_zone.xml | 12 + install-new/fixtures/apple/data/cart.xml | 21 + .../fixtures/apple/data/cart_product.xml | 14 + install-new/fixtures/apple/data/category.xml | 13 + .../fixtures/apple/data/category_product.xml | 21 + .../fixtures/apple/data/connections.xml | 15 + install-new/fixtures/apple/data/customer.xml | 28 + install-new/fixtures/apple/data/delivery.xml | 17 + install-new/fixtures/apple/data/feature.xml | 13 + .../fixtures/apple/data/feature_value.xml | 24 + install-new/fixtures/apple/data/guest.xml | 23 + install-new/fixtures/apple/data/image.xml | 36 + .../fixtures/apple/data/manufacturer.xml | 16 + .../fixtures/apple/data/order_detail.xml | 44 + .../fixtures/apple/data/order_history.xml | 12 + .../fixtures/apple/data/order_message.xml | 9 + install-new/fixtures/apple/data/orders.xml | 40 + install-new/fixtures/apple/data/product.xml | 74 + .../fixtures/apple/data/product_attribute.xml | 104 + .../data/product_attribute_combination.xml | 61 + install-new/fixtures/apple/data/profile.xml | 12 + .../fixtures/apple/data/range_price.xml | 12 + .../fixtures/apple/data/range_weight.xml | 12 + install-new/fixtures/apple/data/scene.xml | 12 + .../fixtures/apple/data/stock_available.xml | 43 + install-new/fixtures/apple/data/store.xml | 68 + install-new/fixtures/apple/data/supplier.xml | 16 + install-new/fixtures/apple/data/tag.xml | 9 + .../apple/img/c/Accessories-category.jpg | Bin 0 -> 16989 bytes .../apple/img/c/Accessories-large.jpg | Bin 0 -> 10597 bytes .../apple/img/c/Accessories-medium.jpg | Bin 0 -> 1828 bytes .../apple/img/c/Accessories-small.jpg | Bin 0 -> 1176 bytes .../fixtures/apple/img/c/Accessories.jpg | Bin 0 -> 25492 bytes .../fixtures/apple/img/c/Laptops-category.jpg | Bin 0 -> 15013 bytes .../fixtures/apple/img/c/Laptops-large.jpg | Bin 0 -> 7716 bytes .../fixtures/apple/img/c/Laptops-medium.jpg | Bin 0 -> 1683 bytes .../fixtures/apple/img/c/Laptops-small.jpg | Bin 0 -> 1038 bytes install-new/fixtures/apple/img/c/Laptops.jpg | Bin 0 -> 20201 bytes .../fixtures/apple/img/c/iPods-category.jpg | Bin 0 -> 15328 bytes .../fixtures/apple/img/c/iPods-large.jpg | Bin 0 -> 15694 bytes .../fixtures/apple/img/c/iPods-medium.jpg | Bin 0 -> 2560 bytes .../fixtures/apple/img/c/iPods-small.jpg | Bin 0 -> 1380 bytes install-new/fixtures/apple/img/c/iPods.jpg | Bin 0 -> 21177 bytes .../apple/img/m/Apple_Computer_Inc-large.jpg | Bin 0 -> 4108 bytes .../apple/img/m/Apple_Computer_Inc-medium.jpg | Bin 0 -> 2056 bytes .../apple/img/m/Apple_Computer_Inc-small.jpg | Bin 0 -> 1236 bytes .../apple/img/m/Apple_Computer_Inc.jpg | Bin 0 -> 2680 bytes .../apple/img/m/Shure_Incorporated-large.jpg | Bin 0 -> 4222 bytes .../apple/img/m/Shure_Incorporated-medium.jpg | Bin 0 -> 1369 bytes .../apple/img/m/Shure_Incorporated-small.jpg | Bin 0 -> 1024 bytes .../apple/img/m/Shure_Incorporated.jpg | Bin 0 -> 2596 bytes .../fixtures/apple/img/p/MacBook_Air-home.jpg | Bin 0 -> 3535 bytes .../apple/img/p/MacBook_Air-large.jpg | Bin 0 -> 11546 bytes .../apple/img/p/MacBook_Air-medium.jpg | Bin 0 -> 2043 bytes .../apple/img/p/MacBook_Air-small.jpg | Bin 0 -> 1222 bytes .../apple/img/p/MacBook_Air-thickbox.jpg | Bin 0 -> 31270 bytes .../fixtures/apple/img/p/MacBook_Air.jpg | Bin 0 -> 33661 bytes .../apple/img/p/MacBook_Air_1-home.jpg | Bin 0 -> 2031 bytes .../apple/img/p/MacBook_Air_1-large.jpg | Bin 0 -> 5343 bytes .../apple/img/p/MacBook_Air_1-medium.jpg | Bin 0 -> 1253 bytes .../apple/img/p/MacBook_Air_1-small.jpg | Bin 0 -> 916 bytes .../apple/img/p/MacBook_Air_1-thickbox.jpg | Bin 0 -> 13142 bytes .../fixtures/apple/img/p/MacBook_Air_1.jpg | Bin 0 -> 13867 bytes .../apple/img/p/MacBook_Air_2-home.jpg | Bin 0 -> 3616 bytes .../apple/img/p/MacBook_Air_2-large.jpg | Bin 0 -> 12173 bytes .../apple/img/p/MacBook_Air_2-medium.jpg | Bin 0 -> 1815 bytes .../apple/img/p/MacBook_Air_2-small.jpg | Bin 0 -> 1085 bytes .../apple/img/p/MacBook_Air_2-thickbox.jpg | Bin 0 -> 34087 bytes .../fixtures/apple/img/p/MacBook_Air_2.jpg | Bin 0 -> 36721 bytes .../apple/img/p/MacBook_Air_3-home.jpg | Bin 0 -> 3136 bytes .../apple/img/p/MacBook_Air_3-large.jpg | Bin 0 -> 9889 bytes .../apple/img/p/MacBook_Air_3-medium.jpg | Bin 0 -> 1764 bytes .../apple/img/p/MacBook_Air_3-small.jpg | Bin 0 -> 1121 bytes .../apple/img/p/MacBook_Air_3-thickbox.jpg | Bin 0 -> 27010 bytes .../fixtures/apple/img/p/MacBook_Air_3.jpg | Bin 0 -> 29036 bytes .../apple/img/p/MacBook_Air_4-home.jpg | Bin 0 -> 2476 bytes .../apple/img/p/MacBook_Air_4-large.jpg | Bin 0 -> 7234 bytes .../apple/img/p/MacBook_Air_4-medium.jpg | Bin 0 -> 1372 bytes .../apple/img/p/MacBook_Air_4-small.jpg | Bin 0 -> 932 bytes .../apple/img/p/MacBook_Air_4-thickbox.jpg | Bin 0 -> 18894 bytes .../fixtures/apple/img/p/MacBook_Air_4.jpg | Bin 0 -> 22068 bytes .../img/p/MacBook_Air_SuperDrive-home.jpg | Bin 0 -> 3409 bytes .../img/p/MacBook_Air_SuperDrive-large.jpg | Bin 0 -> 10580 bytes .../img/p/MacBook_Air_SuperDrive-medium.jpg | Bin 0 -> 1823 bytes .../img/p/MacBook_Air_SuperDrive-small.jpg | Bin 0 -> 1155 bytes .../img/p/MacBook_Air_SuperDrive-thickbox.jpg | Bin 0 -> 27873 bytes .../apple/img/p/MacBook_Air_SuperDrive.jpg | Bin 0 -> 30294 bytes ...ing_Earphones_for_iPod_and_iPhone-home.jpg | Bin 0 -> 4169 bytes ...ng_Earphones_for_iPod_and_iPhone-large.jpg | Bin 0 -> 13183 bytes ...g_Earphones_for_iPod_and_iPhone-medium.jpg | Bin 0 -> 2388 bytes ...ng_Earphones_for_iPod_and_iPhone-small.jpg | Bin 0 -> 1371 bytes ...Earphones_for_iPod_and_iPhone-thickbox.jpg | Bin 0 -> 28777 bytes ...solating_Earphones_for_iPod_and_iPhone.jpg | Bin 0 -> 27319 bytes .../p/housse-portefeuille-en-cuir-home.jpg | Bin 0 -> 4217 bytes .../p/housse-portefeuille-en-cuir-large.jpg | Bin 0 -> 15199 bytes .../p/housse-portefeuille-en-cuir-medium.jpg | Bin 0 -> 2235 bytes .../p/housse-portefeuille-en-cuir-small.jpg | Bin 0 -> 1290 bytes .../housse-portefeuille-en-cuir-thickbox.jpg | Bin 0 -> 24333 bytes .../img/p/housse-portefeuille-en-cuir.jpg | Bin 0 -> 21811 bytes .../fixtures/apple/img/p/iPod_Nano-home.jpg | Bin 0 -> 3026 bytes .../fixtures/apple/img/p/iPod_Nano-large.jpg | Bin 0 -> 8818 bytes .../fixtures/apple/img/p/iPod_Nano-medium.jpg | Bin 0 -> 1751 bytes .../fixtures/apple/img/p/iPod_Nano-small.jpg | Bin 0 -> 1091 bytes .../apple/img/p/iPod_Nano-thickbox.jpg | Bin 0 -> 10475 bytes .../fixtures/apple/img/p/iPod_Nano.jpg | Bin 0 -> 7783 bytes .../fixtures/apple/img/p/iPod_Nano_1-home.jpg | Bin 0 -> 3619 bytes .../apple/img/p/iPod_Nano_1-large.jpg | Bin 0 -> 10060 bytes .../apple/img/p/iPod_Nano_1-medium.jpg | Bin 0 -> 2130 bytes .../apple/img/p/iPod_Nano_1-small.jpg | Bin 0 -> 1269 bytes .../apple/img/p/iPod_Nano_1-thickbox.jpg | Bin 0 -> 11716 bytes .../fixtures/apple/img/p/iPod_Nano_1.jpg | Bin 0 -> 9207 bytes .../fixtures/apple/img/p/iPod_Nano_2-home.jpg | Bin 0 -> 3349 bytes .../apple/img/p/iPod_Nano_2-large.jpg | Bin 0 -> 9503 bytes .../apple/img/p/iPod_Nano_2-medium.jpg | Bin 0 -> 1999 bytes .../apple/img/p/iPod_Nano_2-small.jpg | Bin 0 -> 1208 bytes .../apple/img/p/iPod_Nano_2-thickbox.jpg | Bin 0 -> 11099 bytes .../fixtures/apple/img/p/iPod_Nano_2.jpg | Bin 0 -> 8425 bytes .../fixtures/apple/img/p/iPod_Nano_3-home.jpg | Bin 0 -> 3886 bytes .../apple/img/p/iPod_Nano_3-large.jpg | Bin 0 -> 11322 bytes .../apple/img/p/iPod_Nano_3-medium.jpg | Bin 0 -> 2324 bytes .../apple/img/p/iPod_Nano_3-small.jpg | Bin 0 -> 1426 bytes .../apple/img/p/iPod_Nano_3-thickbox.jpg | Bin 0 -> 15634 bytes .../fixtures/apple/img/p/iPod_Nano_3.jpg | Bin 0 -> 8809 bytes .../fixtures/apple/img/p/iPod_Nano_4-home.jpg | Bin 0 -> 3608 bytes .../apple/img/p/iPod_Nano_4-large.jpg | Bin 0 -> 10230 bytes .../apple/img/p/iPod_Nano_4-medium.jpg | Bin 0 -> 2087 bytes .../apple/img/p/iPod_Nano_4-small.jpg | Bin 0 -> 1246 bytes .../apple/img/p/iPod_Nano_4-thickbox.jpg | Bin 0 -> 11816 bytes .../fixtures/apple/img/p/iPod_Nano_4.jpg | Bin 0 -> 9163 bytes .../fixtures/apple/img/p/iPod_Nano_5-home.jpg | Bin 0 -> 3877 bytes .../apple/img/p/iPod_Nano_5-large.jpg | Bin 0 -> 11205 bytes .../apple/img/p/iPod_Nano_5-medium.jpg | Bin 0 -> 2262 bytes .../apple/img/p/iPod_Nano_5-small.jpg | Bin 0 -> 1413 bytes .../apple/img/p/iPod_Nano_5-thickbox.jpg | Bin 0 -> 15497 bytes .../fixtures/apple/img/p/iPod_Nano_5.jpg | Bin 0 -> 8790 bytes .../fixtures/apple/img/p/iPod_Nano_6-home.jpg | Bin 0 -> 3080 bytes .../apple/img/p/iPod_Nano_6-large.jpg | Bin 0 -> 9088 bytes .../apple/img/p/iPod_Nano_6-medium.jpg | Bin 0 -> 1798 bytes .../apple/img/p/iPod_Nano_6-small.jpg | Bin 0 -> 1107 bytes .../apple/img/p/iPod_Nano_6-thickbox.jpg | Bin 0 -> 10797 bytes .../fixtures/apple/img/p/iPod_Nano_6.jpg | Bin 0 -> 8156 bytes .../fixtures/apple/img/p/iPod_Nano_7-home.jpg | Bin 0 -> 3624 bytes .../apple/img/p/iPod_Nano_7-large.jpg | Bin 0 -> 10456 bytes .../apple/img/p/iPod_Nano_7-medium.jpg | Bin 0 -> 2132 bytes .../apple/img/p/iPod_Nano_7-small.jpg | Bin 0 -> 1254 bytes .../apple/img/p/iPod_Nano_7-thickbox.jpg | Bin 0 -> 12172 bytes .../fixtures/apple/img/p/iPod_Nano_7.jpg | Bin 0 -> 9490 bytes .../apple/img/p/iPod_shuffle-home.jpg | Bin 0 -> 4440 bytes .../apple/img/p/iPod_shuffle-large.jpg | Bin 0 -> 6062 bytes .../apple/img/p/iPod_shuffle-medium.jpg | Bin 0 -> 2644 bytes .../apple/img/p/iPod_shuffle-small.jpg | Bin 0 -> 1487 bytes .../apple/img/p/iPod_shuffle-thickbox.jpg | Bin 0 -> 7778 bytes .../fixtures/apple/img/p/iPod_shuffle.jpg | Bin 0 -> 4960 bytes .../apple/img/p/iPod_shuffle_1-home.jpg | Bin 0 -> 4130 bytes .../apple/img/p/iPod_shuffle_1-large.jpg | Bin 0 -> 5675 bytes .../apple/img/p/iPod_shuffle_1-medium.jpg | Bin 0 -> 2486 bytes .../apple/img/p/iPod_shuffle_1-small.jpg | Bin 0 -> 1392 bytes .../apple/img/p/iPod_shuffle_1-thickbox.jpg | Bin 0 -> 7464 bytes .../fixtures/apple/img/p/iPod_shuffle_1.jpg | Bin 0 -> 4670 bytes .../apple/img/p/iPod_shuffle_2-home.jpg | Bin 0 -> 4141 bytes .../apple/img/p/iPod_shuffle_2-large.jpg | Bin 0 -> 5713 bytes .../apple/img/p/iPod_shuffle_2-medium.jpg | Bin 0 -> 2451 bytes .../apple/img/p/iPod_shuffle_2-small.jpg | Bin 0 -> 1390 bytes .../apple/img/p/iPod_shuffle_2-thickbox.jpg | Bin 0 -> 7431 bytes .../fixtures/apple/img/p/iPod_shuffle_2.jpg | Bin 0 -> 4639 bytes .../apple/img/p/iPod_shuffle_3-home.jpg | Bin 0 -> 2746 bytes .../apple/img/p/iPod_shuffle_3-large.jpg | Bin 0 -> 3948 bytes .../apple/img/p/iPod_shuffle_3-medium.jpg | Bin 0 -> 1680 bytes .../apple/img/p/iPod_shuffle_3-small.jpg | Bin 0 -> 1041 bytes .../apple/img/p/iPod_shuffle_3-thickbox.jpg | Bin 0 -> 5645 bytes .../fixtures/apple/img/p/iPod_shuffle_3.jpg | Bin 0 -> 2988 bytes .../fixtures/apple/img/p/iPod_touch-home.jpg | Bin 0 -> 3322 bytes .../fixtures/apple/img/p/iPod_touch-large.jpg | Bin 0 -> 10325 bytes .../apple/img/p/iPod_touch-medium.jpg | Bin 0 -> 1870 bytes .../fixtures/apple/img/p/iPod_touch-small.jpg | Bin 0 -> 1177 bytes .../apple/img/p/iPod_touch-thickbox.jpg | Bin 0 -> 28642 bytes .../fixtures/apple/img/p/iPod_touch.jpg | Bin 0 -> 34942 bytes .../apple/img/p/iPod_touch_1-home.jpg | Bin 0 -> 3079 bytes .../apple/img/p/iPod_touch_1-large.jpg | Bin 0 -> 9486 bytes .../apple/img/p/iPod_touch_1-medium.jpg | Bin 0 -> 1775 bytes .../apple/img/p/iPod_touch_1-small.jpg | Bin 0 -> 1147 bytes .../apple/img/p/iPod_touch_1-thickbox.jpg | Bin 0 -> 25279 bytes .../fixtures/apple/img/p/iPod_touch_1.jpg | Bin 0 -> 28689 bytes .../apple/img/p/iPod_touch_2-home.jpg | Bin 0 -> 3140 bytes .../apple/img/p/iPod_touch_2-large.jpg | Bin 0 -> 11199 bytes .../apple/img/p/iPod_touch_2-medium.jpg | Bin 0 -> 1751 bytes .../apple/img/p/iPod_touch_2-small.jpg | Bin 0 -> 1109 bytes .../apple/img/p/iPod_touch_2-thickbox.jpg | Bin 0 -> 34555 bytes .../fixtures/apple/img/p/iPod_touch_2.jpg | Bin 0 -> 59782 bytes .../apple/img/p/iPod_touch_3-home.jpg | Bin 0 -> 3699 bytes .../apple/img/p/iPod_touch_3-large.jpg | Bin 0 -> 11884 bytes .../apple/img/p/iPod_touch_3-medium.jpg | Bin 0 -> 2127 bytes .../apple/img/p/iPod_touch_3-small.jpg | Bin 0 -> 1184 bytes .../apple/img/p/iPod_touch_3-thickbox.jpg | Bin 0 -> 31419 bytes .../fixtures/apple/img/p/iPod_touch_3.jpg | Bin 0 -> 44471 bytes .../apple/img/p/iPod_touch_4-home.jpg | Bin 0 -> 2480 bytes .../apple/img/p/iPod_touch_4-large.jpg | Bin 0 -> 5924 bytes .../apple/img/p/iPod_touch_4-medium.jpg | Bin 0 -> 1463 bytes .../apple/img/p/iPod_touch_4-small.jpg | Bin 0 -> 977 bytes .../apple/img/p/iPod_touch_4-thickbox.jpg | Bin 0 -> 16029 bytes .../fixtures/apple/img/p/iPod_touch_4.jpg | Bin 0 -> 17755 bytes .../apple/img/p/iPod_touch_5-home.jpg | Bin 0 -> 4131 bytes .../apple/img/p/iPod_touch_5-large.jpg | Bin 0 -> 12135 bytes .../apple/img/p/iPod_touch_5-medium.jpg | Bin 0 -> 2239 bytes .../apple/img/p/iPod_touch_5-small.jpg | Bin 0 -> 1283 bytes .../apple/img/p/iPod_touch_5-thickbox.jpg | Bin 0 -> 33248 bytes .../fixtures/apple/img/p/iPod_touch_5.jpg | Bin 0 -> 38998 bytes .../img/scenes/The_MacBooks-large_scene.jpg | Bin 0 -> 18122 bytes .../apple/img/scenes/The_MacBooks.jpg | Bin 0 -> 16080 bytes .../img/scenes/The_iPods-large_scene.jpg | Bin 0 -> 17003 bytes .../fixtures/apple/img/scenes/The_iPods.jpg | Bin 0 -> 15334 bytes .../img/scenes/The_iPods_Nano-large_scene.jpg | Bin 0 -> 36207 bytes .../apple/img/scenes/The_iPods_Nano.jpg | Bin 0 -> 34152 bytes .../thumbs/The_MacBooks-thumb_scene.jpg | Bin 0 -> 3532 bytes .../scenes/thumbs/The_iPods-thumb_scene.jpg | Bin 0 -> 3412 bytes .../thumbs/The_iPods_Nano-thumb_scene.jpg | Bin 0 -> 6403 bytes .../apple/img/st/Coconut_Grove-medium.jpg | Bin 0 -> 2674 bytes .../fixtures/apple/img/st/Coconut_Grove.jpg | Bin 0 -> 8072 bytes .../apple/img/st/Dade_County-medium.jpg | Bin 0 -> 2674 bytes .../fixtures/apple/img/st/Dade_County.jpg | Bin 0 -> 8072 bytes .../apple/img/st/E_Fort_Lauderdale-medium.jpg | Bin 0 -> 2674 bytes .../apple/img/st/E_Fort_Lauderdale.jpg | Bin 0 -> 8072 bytes .../apple/img/st/N_Miami_Biscayne-medium.jpg | Bin 0 -> 2674 bytes .../apple/img/st/N_Miami_Biscayne.jpg | Bin 0 -> 8072 bytes .../apple/img/st/Pembroke_Pines-medium.jpg | Bin 0 -> 2674 bytes .../fixtures/apple/img/st/Pembroke_Pines.jpg | Bin 0 -> 8072 bytes .../apple/img/su/AppleStore-large.jpg | Bin 0 -> 8179 bytes .../apple/img/su/AppleStore-medium.jpg | Bin 0 -> 3040 bytes .../apple/img/su/AppleStore-small.jpg | Bin 0 -> 1580 bytes .../fixtures/apple/img/su/AppleStore.jpg | Bin 0 -> 4952 bytes .../apple/img/su/Shure_Online_Store-large.jpg | Bin 0 -> 4222 bytes .../img/su/Shure_Online_Store-medium.jpg | Bin 0 -> 1369 bytes .../apple/img/su/Shure_Online_Store-small.jpg | Bin 0 -> 1024 bytes .../apple/img/su/Shure_Online_Store.jpg | Bin 0 -> 2596 bytes install-new/fixtures/apple/install.php | 37 + .../apple/langs/de/data/attribute.xml | 63 + .../apple/langs/de/data/attribute_group.xml | 15 + .../apple/langs/de/data/attributegroup.xml | 21 + .../fixtures/apple/langs/de/data/carrier.xml | 6 + .../fixtures/apple/langs/de/data/category.xml | 27 + .../fixtures/apple/langs/de/data/feature.xml | 18 + .../apple/langs/de/data/feature_value.xml | 45 + .../apple/langs/de/data/featurevalue.xml | 45 + .../fixtures/apple/langs/de/data/image.xml | 81 + .../apple/langs/de/data/manufacturer.xml | 10 + .../apple/langs/de/data/order_message.xml | 11 + .../apple/langs/de/data/ordermessage.xml | 7 + .../fixtures/apple/langs/de/data/product.xml | 135 + .../fixtures/apple/langs/de/data/profile.xml | 15 + .../fixtures/apple/langs/de/data/scene.xml | 12 + .../fixtures/apple/langs/de/data/supplier.xml | 9 + .../fixtures/apple/langs/de/fixtures.php | 121 + .../apple/langs/en/data/attribute.xml | 63 + .../apple/langs/en/data/attribute_group.xml | 15 + .../apple/langs/en/data/attributegroup.xml | 21 + .../fixtures/apple/langs/en/data/carrier.xml | 6 + .../fixtures/apple/langs/en/data/category.xml | 27 + .../fixtures/apple/langs/en/data/feature.xml | 18 + .../apple/langs/en/data/feature_value.xml | 45 + .../apple/langs/en/data/featurevalue.xml | 45 + .../fixtures/apple/langs/en/data/image.xml | 81 + .../apple/langs/en/data/manufacturer.xml | 10 + .../apple/langs/en/data/order_message.xml | 12 + .../apple/langs/en/data/ordermessage.xml | 7 + .../fixtures/apple/langs/en/data/product.xml | 135 + .../fixtures/apple/langs/en/data/profile.xml | 15 + .../fixtures/apple/langs/en/data/scene.xml | 12 + .../fixtures/apple/langs/en/data/supplier.xml | 9 + .../fixtures/apple/langs/en/data/tag.xml | 9 + .../fixtures/apple/langs/en/fixtures.php | 122 + .../apple/langs/es/data/attribute.xml | 63 + .../apple/langs/es/data/attribute_group.xml | 15 + .../apple/langs/es/data/attributegroup.xml | 21 + .../fixtures/apple/langs/es/data/carrier.xml | 6 + .../fixtures/apple/langs/es/data/category.xml | 27 + .../fixtures/apple/langs/es/data/feature.xml | 18 + .../apple/langs/es/data/feature_value.xml | 45 + .../apple/langs/es/data/featurevalue.xml | 45 + .../fixtures/apple/langs/es/data/image.xml | 81 + .../apple/langs/es/data/manufacturer.xml | 10 + .../apple/langs/es/data/order_message.xml | 13 + .../apple/langs/es/data/ordermessage.xml | 7 + .../fixtures/apple/langs/es/data/product.xml | 111 + .../fixtures/apple/langs/es/data/profile.xml | 15 + .../fixtures/apple/langs/es/data/scene.xml | 12 + .../fixtures/apple/langs/es/data/supplier.xml | 9 + .../fixtures/apple/langs/es/data/tag.xml | 9 + .../fixtures/apple/langs/es/fixtures.php | 126 + .../apple/langs/fr/data/attribute.xml | 63 + .../apple/langs/fr/data/attribute_group.xml | 15 + .../apple/langs/fr/data/attributegroup.xml | 21 + .../fixtures/apple/langs/fr/data/carrier.xml | 6 + .../fixtures/apple/langs/fr/data/category.xml | 27 + .../fixtures/apple/langs/fr/data/feature.xml | 18 + .../apple/langs/fr/data/feature_value.xml | 45 + .../apple/langs/fr/data/featurevalue.xml | 45 + .../fixtures/apple/langs/fr/data/image.xml | 81 + .../apple/langs/fr/data/manufacturer.xml | 10 + .../apple/langs/fr/data/order_message.xml | 13 + .../apple/langs/fr/data/ordermessage.xml | 7 + .../fixtures/apple/langs/fr/data/product.xml | 164 ++ .../fixtures/apple/langs/fr/data/profile.xml | 15 + .../fixtures/apple/langs/fr/data/scene.xml | 12 + .../fixtures/apple/langs/fr/data/supplier.xml | 9 + .../fixtures/apple/langs/fr/data/tag.xml | 15 + .../fixtures/apple/langs/fr/fixtures.php | 123 + .../apple/langs/it/data/attribute.xml | 63 + .../apple/langs/it/data/attribute_group.xml | 15 + .../apple/langs/it/data/attributegroup.xml | 21 + .../fixtures/apple/langs/it/data/carrier.xml | 6 + .../fixtures/apple/langs/it/data/category.xml | 27 + .../fixtures/apple/langs/it/data/feature.xml | 18 + .../apple/langs/it/data/feature_value.xml | 45 + .../apple/langs/it/data/featurevalue.xml | 45 + .../fixtures/apple/langs/it/data/image.xml | 81 + .../apple/langs/it/data/manufacturer.xml | 10 + .../apple/langs/it/data/order_message.xml | 12 + .../apple/langs/it/data/ordermessage.xml | 7 + .../fixtures/apple/langs/it/data/product.xml | 135 + .../fixtures/apple/langs/it/data/profile.xml | 15 + .../fixtures/apple/langs/it/data/scene.xml | 12 + .../fixtures/apple/langs/it/data/supplier.xml | 9 + .../fixtures/apple/langs/it/fixtures.php | 121 + install-new/index.php | 38 + install-new/init.php | 52 + install-new/langs/de/data/carrier.xml | 6 + install-new/langs/de/data/category.xml | 11 + install-new/langs/de/data/cms.xml | 45 + install-new/langs/de/data/cms_category.xml | 11 + install-new/langs/de/data/configuration.xml | 21 + install-new/langs/de/data/contact.xml | 9 + install-new/langs/de/data/country.xml | 735 +++++ install-new/langs/de/data/gender.xml | 6 + install-new/langs/de/data/group.xml | 4 + install-new/langs/de/data/meta.xml | 153 ++ .../langs/de/data/order_return_state.xml | 18 + install-new/langs/de/data/order_state.xml | 51 + install-new/langs/de/data/profile.xml | 6 + install-new/langs/de/data/quick_access.xml | 8 + .../langs/de/data/stock_mvt_reason.xml | 27 + .../langs/de/data/supplier_order_state.xml | 21 + install-new/langs/de/data/tab.xml | 98 + install-new/langs/de/flag.jpg | Bin 0 -> 924 bytes .../langs/de/img/de-default-category.jpg | Bin 0 -> 5039 bytes install-new/langs/de/img/de-default-home.jpg | Bin 0 -> 3528 bytes install-new/langs/de/img/de-default-large.jpg | Bin 0 -> 8343 bytes .../langs/de/img/de-default-large_scene.jpg | Bin 0 -> 6770 bytes .../langs/de/img/de-default-medium.jpg | Bin 0 -> 2010 bytes install-new/langs/de/img/de-default-small.jpg | Bin 0 -> 1220 bytes .../langs/de/img/de-default-thickbox.jpg | Bin 0 -> 12500 bytes .../langs/de/img/de-default-thumb_scene.jpg | Bin 0 -> 1584 bytes install-new/langs/de/img/de.jpg | Bin 0 -> 11205 bytes install-new/langs/de/language.xml | 8 + install-new/langs/en/data/carrier.xml | 6 + install-new/langs/en/data/category.xml | 11 + install-new/langs/en/data/cms.xml | 45 + install-new/langs/en/data/cms_category.xml | 11 + install-new/langs/en/data/configuration.xml | 21 + install-new/langs/en/data/contact.xml | 9 + install-new/langs/en/data/country.xml | 735 +++++ install-new/langs/en/data/gender.xml | 6 + install-new/langs/en/data/group.xml | 4 + install-new/langs/en/data/meta.xml | 153 ++ .../langs/en/data/order_return_state.xml | 18 + install-new/langs/en/data/order_state.xml | 51 + install-new/langs/en/data/profile.xml | 6 + install-new/langs/en/data/quick_access.xml | 8 + .../langs/en/data/stock_mvt_reason.xml | 27 + .../langs/en/data/supplier_order_state.xml | 21 + install-new/langs/en/data/tab.xml | 98 + install-new/langs/en/flag.jpg | Bin 0 -> 665 bytes .../langs/en/img/en-default-category.jpg | Bin 0 -> 3928 bytes install-new/langs/en/img/en-default-home.jpg | Bin 0 -> 3026 bytes install-new/langs/en/img/en-default-large.jpg | Bin 0 -> 5919 bytes .../langs/en/img/en-default-large_scene.jpg | Bin 0 -> 4298 bytes .../langs/en/img/en-default-medium.jpg | Bin 0 -> 1845 bytes install-new/langs/en/img/en-default-small.jpg | Bin 0 -> 968 bytes .../langs/en/img/en-default-thickbox.jpg | Bin 0 -> 8219 bytes .../langs/en/img/en-default-thumb_scene.jpg | Bin 0 -> 1119 bytes install-new/langs/en/img/en.jpg | Bin 0 -> 10859 bytes install-new/langs/en/install.php | 23 + install-new/langs/en/language.xml | 8 + install-new/langs/es/data/carrier.xml | 6 + install-new/langs/es/data/category.xml | 11 + install-new/langs/es/data/cms.xml | 53 + install-new/langs/es/data/cms_category.xml | 11 + install-new/langs/es/data/configuration.xml | 21 + install-new/langs/es/data/contact.xml | 9 + install-new/langs/es/data/country.xml | 735 +++++ install-new/langs/es/data/gender.xml | 6 + install-new/langs/es/data/group.xml | 4 + install-new/langs/es/data/meta.xml | 153 ++ .../langs/es/data/order_return_state.xml | 18 + install-new/langs/es/data/order_state.xml | 51 + install-new/langs/es/data/profile.xml | 6 + install-new/langs/es/data/quick_access.xml | 8 + .../langs/es/data/stock_mvt_reason.xml | 27 + .../langs/es/data/supplier_order_state.xml | 21 + install-new/langs/es/data/tab.xml | 98 + install-new/langs/es/flag.jpg | Bin 0 -> 696 bytes .../langs/es/img/es-default-category.jpg | Bin 0 -> 4121 bytes install-new/langs/es/img/es-default-home.jpg | Bin 0 -> 3155 bytes install-new/langs/es/img/es-default-large.jpg | Bin 0 -> 6826 bytes .../langs/es/img/es-default-large_scene.jpg | Bin 0 -> 4298 bytes .../langs/es/img/es-default-medium.jpg | Bin 0 -> 1802 bytes install-new/langs/es/img/es-default-small.jpg | Bin 0 -> 1014 bytes .../langs/es/img/es-default-thickbox.jpg | Bin 0 -> 8105 bytes .../langs/es/img/es-default-thumb_scene.jpg | Bin 0 -> 1119 bytes install-new/langs/es/img/es.jpg | Bin 0 -> 6828 bytes install-new/langs/es/language.xml | 8 + install-new/langs/fr/README.txt | 67 + install-new/langs/fr/data/carrier.xml | 6 + install-new/langs/fr/data/category.xml | 11 + install-new/langs/fr/data/cms.xml | 45 + install-new/langs/fr/data/cms_category.xml | 11 + install-new/langs/fr/data/configuration.xml | 21 + install-new/langs/fr/data/contact.xml | 9 + install-new/langs/fr/data/country.xml | 735 +++++ install-new/langs/fr/data/gender.xml | 6 + install-new/langs/fr/data/group.xml | 4 + install-new/langs/fr/data/meta.xml | 153 ++ .../langs/fr/data/order_return_state.xml | 18 + install-new/langs/fr/data/order_state.xml | 51 + install-new/langs/fr/data/profile.xml | 6 + install-new/langs/fr/data/quick_access.xml | 8 + .../langs/fr/data/stock_mvt_reason.xml | 27 + .../langs/fr/data/supplier_order_state.xml | 21 + install-new/langs/fr/data/tab.xml | 98 + install-new/langs/fr/flag.jpg | Bin 0 -> 679 bytes .../langs/fr/img/fr-default-category.jpg | Bin 0 -> 4938 bytes install-new/langs/fr/img/fr-default-home.jpg | Bin 0 -> 3648 bytes install-new/langs/fr/img/fr-default-large.jpg | Bin 0 -> 7302 bytes .../langs/fr/img/fr-default-large_scene.jpg | Bin 0 -> 6215 bytes .../langs/fr/img/fr-default-medium.jpg | Bin 0 -> 2290 bytes install-new/langs/fr/img/fr-default-small.jpg | Bin 0 -> 1185 bytes .../langs/fr/img/fr-default-thickbox.jpg | Bin 0 -> 10087 bytes .../langs/fr/img/fr-default-thumb_scene.jpg | Bin 0 -> 1734 bytes install-new/langs/fr/img/fr.jpg | Bin 0 -> 13454 bytes install-new/langs/fr/install.php | 10 + install-new/langs/fr/language.xml | 8 + install-new/langs/it/data/carrier.xml | 6 + install-new/langs/it/data/category.xml | 11 + install-new/langs/it/data/cms.xml | 45 + install-new/langs/it/data/cms_category.xml | 11 + install-new/langs/it/data/configuration.xml | 21 + install-new/langs/it/data/contact.xml | 9 + install-new/langs/it/data/country.xml | 735 +++++ install-new/langs/it/data/gender.xml | 6 + install-new/langs/it/data/group.xml | 4 + install-new/langs/it/data/meta.xml | 153 ++ .../langs/it/data/order_return_state.xml | 18 + install-new/langs/it/data/order_state.xml | 51 + install-new/langs/it/data/profile.xml | 6 + install-new/langs/it/data/quick_access.xml | 8 + .../langs/it/data/stock_mvt_reason.xml | 27 + .../langs/it/data/supplier_order_state.xml | 21 + install-new/langs/it/data/tab.xml | 98 + install-new/langs/it/flag.jpg | Bin 0 -> 911 bytes .../langs/it/img/it-default-category.jpg | Bin 0 -> 6438 bytes install-new/langs/it/img/it-default-home.jpg | Bin 0 -> 4601 bytes install-new/langs/it/img/it-default-large.jpg | Bin 0 -> 11828 bytes .../langs/it/img/it-default-large_scene.jpg | Bin 0 -> 8770 bytes .../langs/it/img/it-default-medium.jpg | Bin 0 -> 2607 bytes install-new/langs/it/img/it-default-small.jpg | Bin 0 -> 1454 bytes .../langs/it/img/it-default-thickbox.jpg | Bin 0 -> 15175 bytes .../langs/it/img/it-default-thumb_scene.jpg | Bin 0 -> 1884 bytes install-new/langs/it/img/it.jpg | Bin 0 -> 35628 bytes install-new/langs/it/language.xml | 8 + install-new/models/database.php | 87 + install-new/models/install.php | 629 +++++ install-new/models/mail.php | 73 + install-new/models/system.php | 52 + install-new/theme/img/01-gd100.png | Bin 0 -> 170 bytes install-new/theme/img/01-pt100.png | Bin 0 -> 158 bytes install-new/theme/img/01-pt70.png | Bin 0 -> 157 bytes install-new/theme/img/02-gd100.png | Bin 0 -> 284 bytes install-new/theme/img/02-pt100.png | Bin 0 -> 248 bytes install-new/theme/img/02-pt70.png | Bin 0 -> 279 bytes install-new/theme/img/03-gd100.png | Bin 0 -> 308 bytes install-new/theme/img/03-pt100.png | Bin 0 -> 270 bytes install-new/theme/img/03-pt70.png | Bin 0 -> 292 bytes install-new/theme/img/04-gd100.png | Bin 0 -> 241 bytes install-new/theme/img/04-pt100.png | Bin 0 -> 211 bytes install-new/theme/img/04-pt70.png | Bin 0 -> 217 bytes install-new/theme/img/05-gd100.png | Bin 0 -> 302 bytes install-new/theme/img/05-pt100.png | Bin 0 -> 259 bytes install-new/theme/img/05-pt70.png | Bin 0 -> 259 bytes install-new/theme/img/ajax-loader-small.gif | Bin 0 -> 1849 bytes install-new/theme/img/ajax-loader.gif | Bin 0 -> 11314 bytes install-new/theme/img/bad.gif | Bin 0 -> 594 bytes install-new/theme/img/bg-body.png | Bin 0 -> 143 bytes install-new/theme/img/bg-contentTitle.png | Bin 0 -> 215 bytes install-new/theme/img/bg-ctnr.png | Bin 0 -> 306 bytes install-new/theme/img/bg-input-text.png | Bin 0 -> 141 bytes install-new/theme/img/bg-li-headerLinks.png | Bin 0 -> 233 bytes install-new/theme/img/bg-li-tabs-finished.png | Bin 0 -> 298 bytes install-new/theme/img/bg-li-tabs.png | Bin 0 -> 139 bytes install-new/theme/img/bg-phone_block.png | Bin 0 -> 1006 bytes install-new/theme/img/bg-tab.png | Bin 0 -> 190 bytes install-new/theme/img/bg_blockInfoEnd.png | Bin 0 -> 218 bytes install-new/theme/img/bg_bt_blockInfoEnd.png | Bin 0 -> 885 bytes install-new/theme/img/bg_field.png | Bin 0 -> 126 bytes install-new/theme/img/bg_help.png | Bin 0 -> 908 bytes install-new/theme/img/bg_input_button.png | Bin 0 -> 141 bytes install-new/theme/img/bg_li_stepList.png | Bin 0 -> 2426 bytes install-new/theme/img/bg_li_title.png | Bin 0 -> 204 bytes install-new/theme/img/bg_loaderSpace.png | Bin 0 -> 109 bytes install-new/theme/img/bg_moduleTable_th.png | Bin 0 -> 262 bytes install-new/theme/img/boutonpt-disabled.png | Bin 0 -> 719 bytes install-new/theme/img/boutonpt-on.png | Bin 0 -> 714 bytes install-new/theme/img/boutonpt-over.png | Bin 0 -> 701 bytes install-new/theme/img/bt - Copie.png | Bin 0 -> 772 bytes install-new/theme/img/bt-dsbl - Copie.png | Bin 0 -> 474 bytes install-new/theme/img/bt-dsbl.png | Bin 0 -> 248 bytes install-new/theme/img/bt-hover.png | Bin 0 -> 251 bytes install-new/theme/img/bt.png | Bin 0 -> 251 bytes install-new/theme/img/bt_off.png | Bin 0 -> 251 bytes install-new/theme/img/bt_off_hover.png | Bin 0 -> 251 bytes install-new/theme/img/btn-installeur.png | Bin 0 -> 2330 bytes install-new/theme/img/bullet.png | Bin 0 -> 1265 bytes install-new/theme/img/favicon.ico | Bin 0 -> 1150 bytes install-new/theme/img/ico_help.gif | Bin 0 -> 1246 bytes install-new/theme/img/index.php | 36 + install-new/theme/img/logo.png | Bin 0 -> 4431 bytes install-new/theme/img/noflag.jpg | Bin 0 -> 443 bytes install-new/theme/img/ok.gif | Bin 0 -> 610 bytes install-new/theme/img/ombrage-bas.png | Bin 0 -> 342 bytes install-new/theme/img/ombrage-droit.png | Bin 0 -> 243 bytes install-new/theme/img/phone.png | Bin 0 -> 697 bytes install-new/theme/img/pict_error.png | Bin 0 -> 450 bytes install-new/theme/img/pict_h3_infos.png | Bin 0 -> 453 bytes install-new/theme/img/pict_info.png | Bin 0 -> 584 bytes install-new/theme/img/pict_ok.png | Bin 0 -> 374 bytes install-new/theme/img/puce.gif | Bin 0 -> 683 bytes install-new/theme/img/shadow-left.png | Bin 0 -> 254 bytes install-new/theme/img/visu_boBlock.png | Bin 0 -> 7583 bytes install-new/theme/img/visu_foBlock.png | Bin 0 -> 11338 bytes install-new/theme/js/configure.js | 125 + install-new/theme/js/database.js | 65 + install-new/theme/js/install.js | 15 + install-new/theme/js/jquery-1.4.4.min.js | 167 ++ install-new/theme/js/jquery.ajaxfileupload.js | 53 + install-new/theme/js/process.js | 121 + install-new/theme/js/welcome.js | 23 + install-new/theme/preactivation.css | 52 + install-new/theme/view.css | 756 +++++ install-new/theme/views/configure.phtml | 146 + install-new/theme/views/database.phtml | 123 + install-new/theme/views/footer.phtml | 29 + install-new/theme/views/header.phtml | 84 + install-new/theme/views/partners.phtml | 39 + install-new/theme/views/partners_fields.phtml | 59 + install-new/theme/views/process.phtml | 83 + install-new/theme/views/system.phtml | 33 + install-new/theme/views/welcome.phtml | 102 + install-new/upgrade/classes/AddConfToFile.php | 91 + install-new/upgrade/classes/Language.php | 652 +++++ install-new/upgrade/classes/Module.php | 1057 +++++++ install-new/upgrade/classes/ToolsInstall.php | 208 ++ .../upgrade/functions/add_accounting_tab.php | 20 + .../functions/add_attribute_position.php | 51 + .../functions/add_carrier_position.php | 45 + ...dd_default_restrictions_modules_groups.php | 50 + .../functions/add_feature_position.php | 42 + .../add_group_attribute_position.php | 42 + .../functions/add_missing_rewrite_value.php | 46 + .../upgrade/functions/add_module_to_hook.php | 58 + install-new/upgrade/functions/add_new_tab.php | 65 + .../upgrade/functions/add_order_state.php | 63 + .../add_required_customization_field_flag.php | 44 + .../upgrade/functions/alter_blocklink.php | 36 + .../upgrade/functions/alter_cms_block.php | 40 + .../alter_productcomments_guest_index.php | 39 + .../upgrade/functions/blocknewsletter.php | 33 + .../check_webservice_account_table.php | 44 + install-new/upgrade/functions/cms_block.php | 33 + .../configuration_double_cleaner.php | 48 + .../functions/convert_product_price.php | 50 + .../upgrade/functions/create_multistore.php | 44 + .../upgrade/functions/delivery_number_set.php | 55 + .../functions/desactivate_custom_modules.php | 65 + .../functions/ecotax_tax_application_fix.php | 33 + .../upgrade/functions/editorial_update.php | 73 + .../upgrade/functions/generate_ntree.php | 31 + .../upgrade/functions/generate_tax_rules.php | 87 + .../functions/gridextjs_deprecated.php | 47 + .../functions/group_reduction_column_fix.php | 33 + .../functions/id_currency_country_fix.php | 33 + install-new/upgrade/functions/index.php | 36 + .../upgrade/functions/invoice_number_set.php | 55 + .../functions/latin1_database_to_utf8.php | 133 + .../migrate_block_info_to_cms_block.php | 57 + .../upgrade/functions/moduleReinstaller.php | 37 + .../upgrade/functions/move_crossselling.php | 14 + .../functions/regenerate_level_depth.php | 58 + .../remove_duplicate_category_groups.php | 52 + .../functions/remove_module_from_hook.php | 53 + install-new/upgrade/functions/remove_tab.php | 11 + .../upgrade/functions/reorderpositions.php | 75 + .../functions/setAllGroupsOnHomeCategory.php | 40 + .../functions/set_discount_category.php | 37 + .../upgrade/functions/set_payment_module.php | 54 + .../functions/set_payment_module_group.php | 50 + install-new/upgrade/functions/shop_url.php | 35 + .../upgrade/functions/update_carrier_url.php | 43 + .../update_feature_detachable_cache.php | 38 + .../functions/update_for_13version.php | 16 + .../functions/update_image_size_in_db.php | 42 + .../functions/update_module_followup.php | 37 + .../functions/update_module_loyalty.php | 45 + .../upgrade/functions/update_modules_sql.php | 41 + .../functions/update_order_detail_taxes.php | 45 + .../functions/update_order_details.php | 39 + .../functions/update_products_ecotax_v133.php | 36 + .../functions/updateproductcomments.php | 58 + .../updatetabicon_from_11version.php | 47 + install-new/upgrade/sql/0.9.1.2.sql | 30 + install-new/upgrade/sql/0.9.1.sql | 9 + install-new/upgrade/sql/0.9.5.1.sql | 66 + install-new/upgrade/sql/0.9.5.2.sql | 5 + install-new/upgrade/sql/0.9.6.1.sql | 51 + install-new/upgrade/sql/0.9.6.2.sql | 7 + install-new/upgrade/sql/0.9.7.1.sql | 14 + install-new/upgrade/sql/0.9.7.2.sql | 21 + install-new/upgrade/sql/0.9.sql | 39 + install-new/upgrade/sql/1.0.0.1.sql | 122 + install-new/upgrade/sql/1.0.0.2.sql | 13 + install-new/upgrade/sql/1.0.0.3.sql | 441 +++ install-new/upgrade/sql/1.0.0.4.sql | 88 + install-new/upgrade/sql/1.0.0.5.sql | 35 + install-new/upgrade/sql/1.0.0.6.sql | 11 + install-new/upgrade/sql/1.0.0.7.sql | 21 + install-new/upgrade/sql/1.0.0.8.sql | 17 + install-new/upgrade/sql/1.1.0.1.sql | 629 +++++ install-new/upgrade/sql/1.1.0.2.sql | 3 + install-new/upgrade/sql/1.1.0.3.sql | 10 + install-new/upgrade/sql/1.1.0.4.sql | 28 + install-new/upgrade/sql/1.1.0.5.sql | 20 + install-new/upgrade/sql/1.2.0.1.sql | 1071 ++++++++ install-new/upgrade/sql/1.2.0.2.sql | 610 ++++ install-new/upgrade/sql/1.2.0.3.sql | 33 + install-new/upgrade/sql/1.2.0.4.sql | 10 + install-new/upgrade/sql/1.2.0.5.sql | 17 + install-new/upgrade/sql/1.2.0.6.sql | 14 + install-new/upgrade/sql/1.2.0.7.sql | 12 + install-new/upgrade/sql/1.2.0.8.sql | 10 + install-new/upgrade/sql/1.2.1.0.sql | 16 + install-new/upgrade/sql/1.2.2.0.sql | 6 + install-new/upgrade/sql/1.2.3.0.sql | 3 + install-new/upgrade/sql/1.2.4.0.sql | 1 + install-new/upgrade/sql/1.2.5.0.sql | 1 + install-new/upgrade/sql/1.3.0.1.sql | 92 + install-new/upgrade/sql/1.3.0.10.sql | 5 + install-new/upgrade/sql/1.3.0.2.sql | 147 + install-new/upgrade/sql/1.3.0.3.sql | 15 + install-new/upgrade/sql/1.3.0.4.sql | 83 + install-new/upgrade/sql/1.3.0.5.sql | 1 + install-new/upgrade/sql/1.3.0.6.sql | 1 + install-new/upgrade/sql/1.3.0.7.sql | 3 + install-new/upgrade/sql/1.3.0.8.sql | 5 + install-new/upgrade/sql/1.3.0.9.sql | 1 + install-new/upgrade/sql/1.3.1.1.sql | 1 + install-new/upgrade/sql/1.3.2.1.sql | 3 + install-new/upgrade/sql/1.3.2.2.sql | 27 + install-new/upgrade/sql/1.3.2.3.sql | 1 + install-new/upgrade/sql/1.3.3.0.sql | 8 + install-new/upgrade/sql/1.3.4.0.sql | 1 + install-new/upgrade/sql/1.3.5.0.sql | 1 + install-new/upgrade/sql/1.3.6.0.sql | 3 + install-new/upgrade/sql/1.3.7.0.sql | 1 + install-new/upgrade/sql/1.4.0.1.sql | 2 + install-new/upgrade/sql/1.4.0.10.sql | 20 + install-new/upgrade/sql/1.4.0.11.sql | 35 + install-new/upgrade/sql/1.4.0.12.sql | 7 + install-new/upgrade/sql/1.4.0.13.sql | 1 + install-new/upgrade/sql/1.4.0.14.sql | 24 + install-new/upgrade/sql/1.4.0.15.sql | 41 + install-new/upgrade/sql/1.4.0.16.sql | 38 + install-new/upgrade/sql/1.4.0.17.sql | 22 + install-new/upgrade/sql/1.4.0.2.sql | 694 +++++ install-new/upgrade/sql/1.4.0.3.sql | 67 + install-new/upgrade/sql/1.4.0.4.sql | 21 + install-new/upgrade/sql/1.4.0.5.sql | 73 + install-new/upgrade/sql/1.4.0.6.sql | 12 + install-new/upgrade/sql/1.4.0.7.sql | 10 + install-new/upgrade/sql/1.4.0.8.sql | 35 + install-new/upgrade/sql/1.4.0.9.sql | 16 + install-new/upgrade/sql/1.4.1.0.sql | 43 + install-new/upgrade/sql/1.4.2.0.sql | 20 + install-new/upgrade/sql/1.4.2.1.sql | 3 + install-new/upgrade/sql/1.4.2.2.sql | 11 + install-new/upgrade/sql/1.4.2.3.sql | 30 + install-new/upgrade/sql/1.4.2.4.sql | 10 + install-new/upgrade/sql/1.4.2.5.sql | 4 + install-new/upgrade/sql/1.4.3.0.sql | 16 + install-new/upgrade/sql/1.4.4.0.sql | 79 + install-new/upgrade/sql/1.4.4.1.sql | 1 + install-new/upgrade/sql/1.4.5.0.sql | 55 + install-new/upgrade/sql/1.4.5.1.sql | 1 + install-new/upgrade/sql/1.5.0.0.sql | 324 +++ install-new/upgrade/sql/1.5.0.1.sql | 498 ++++ install-new/upgrade/xml/checkConfig.php | 89 + install-new/upgrade/xml/checkDB.php | 29 + install-new/upgrade/xml/checkMail.php | 44 + install-new/upgrade/xml/checkShopInfos.php | 294 ++ install-new/upgrade/xml/createDB.php | 242 ++ install-new/upgrade/xml/doUpgrade.php | 329 +++ install-new/upgrade/xml/getVersionFromDb.php | 85 + install-new/upgrade/xml/index.php | 36 + 867 files changed, 39069 insertions(+) create mode 100644 install-new/README.txt create mode 100644 install-new/classes/controllerHttp.php create mode 100644 install-new/classes/exception.php create mode 100644 install-new/classes/fixtures.php create mode 100644 install-new/classes/language.php create mode 100644 install-new/classes/languages.php create mode 100644 install-new/classes/model.php create mode 100644 install-new/classes/session.php create mode 100644 install-new/classes/sqlLoader.php create mode 100644 install-new/classes/xmlLoader.php create mode 100644 install-new/controllers/http/configure.php create mode 100644 install-new/controllers/http/database.php create mode 100644 install-new/controllers/http/process.php create mode 100644 install-new/controllers/http/system.php create mode 100644 install-new/controllers/http/welcome.php create mode 100644 install-new/data/db_structure.sql create mode 100644 install-new/data/img/genders/Miss.jpg create mode 100644 install-new/data/img/genders/Mr.jpg create mode 100644 install-new/data/img/genders/Ms.jpg create mode 100644 install-new/data/img/os/Awaiting_PayPal_payment.gif create mode 100644 install-new/data/img/os/Awaiting_bank_wire_payment.gif create mode 100644 install-new/data/img/os/Awaiting_cheque_payment.gif create mode 100644 install-new/data/img/os/Canceled.gif create mode 100644 install-new/data/img/os/Delivered.gif create mode 100644 install-new/data/img/os/On_backorder.gif create mode 100644 install-new/data/img/os/Payment_accepted.gif create mode 100644 install-new/data/img/os/Payment_error.gif create mode 100644 install-new/data/img/os/Payment_remotely_accepted.gif create mode 100644 install-new/data/img/os/Preparation_in_progress.gif create mode 100644 install-new/data/img/os/Refund.gif create mode 100644 install-new/data/img/os/Shipped.gif create mode 100644 install-new/data/img/t/AdminAccess.gif create mode 100644 install-new/data/img/t/AdminAccounting.gif create mode 100644 install-new/data/img/t/AdminAddonsCatalog.gif create mode 100644 install-new/data/img/t/AdminAddonsMyAccount.gif create mode 100644 install-new/data/img/t/AdminAddresses.gif create mode 100644 install-new/data/img/t/AdminAliases.gif create mode 100644 install-new/data/img/t/AdminAttachments.gif create mode 100644 install-new/data/img/t/AdminAttributesGroups.gif create mode 100644 install-new/data/img/t/AdminBackup.gif create mode 100644 install-new/data/img/t/AdminCMSContent.gif create mode 100644 install-new/data/img/t/AdminCarriers.gif create mode 100644 install-new/data/img/t/AdminCartRules.gif create mode 100644 install-new/data/img/t/AdminCarts.gif create mode 100644 install-new/data/img/t/AdminCatalog.gif create mode 100644 install-new/data/img/t/AdminContact.gif create mode 100644 install-new/data/img/t/AdminContacts.gif create mode 100644 install-new/data/img/t/AdminCountries.gif create mode 100644 install-new/data/img/t/AdminCurrencies.gif create mode 100644 install-new/data/img/t/AdminCustomerThreads.gif create mode 100644 install-new/data/img/t/AdminCustomers.gif create mode 100644 install-new/data/img/t/AdminDb.gif create mode 100644 install-new/data/img/t/AdminDeliverySlip.gif create mode 100644 install-new/data/img/t/AdminEmails.gif create mode 100644 install-new/data/img/t/AdminEmployees.gif create mode 100644 install-new/data/img/t/AdminFeatures.gif create mode 100644 install-new/data/img/t/AdminGenders.gif create mode 100644 install-new/data/img/t/AdminGenerator.gif create mode 100644 install-new/data/img/t/AdminGeolocation.gif create mode 100644 install-new/data/img/t/AdminGroups.gif create mode 100644 install-new/data/img/t/AdminHome.gif create mode 100644 install-new/data/img/t/AdminImages.gif create mode 100644 install-new/data/img/t/AdminImport.gif create mode 100644 install-new/data/img/t/AdminInformation.gif create mode 100644 install-new/data/img/t/AdminInvoices.gif create mode 100644 install-new/data/img/t/AdminLanguages.gif create mode 100644 install-new/data/img/t/AdminLocalization.gif create mode 100644 install-new/data/img/t/AdminLogs.gif create mode 100644 install-new/data/img/t/AdminManufacturers.gif create mode 100644 install-new/data/img/t/AdminMessages.gif create mode 100644 install-new/data/img/t/AdminMeta.gif create mode 100644 install-new/data/img/t/AdminModules.gif create mode 100644 install-new/data/img/t/AdminModulesPositions.gif create mode 100644 install-new/data/img/t/AdminOrderMessage.gif create mode 100644 install-new/data/img/t/AdminOrders.gif create mode 100644 install-new/data/img/t/AdminPDF.gif create mode 100644 install-new/data/img/t/AdminPPreferences.gif create mode 100644 install-new/data/img/t/AdminPayment.gif create mode 100644 install-new/data/img/t/AdminPerformance.gif create mode 100644 install-new/data/img/t/AdminPreferences.gif create mode 100644 install-new/data/img/t/AdminProfiles.gif create mode 100644 install-new/data/img/t/AdminQuickAccesses.gif create mode 100644 install-new/data/img/t/AdminRangePrice.gif create mode 100644 install-new/data/img/t/AdminRangeWeight.gif create mode 100644 install-new/data/img/t/AdminReferrers.gif create mode 100644 install-new/data/img/t/AdminReturn.gif create mode 100644 install-new/data/img/t/AdminScenes.gif create mode 100644 install-new/data/img/t/AdminSearch.gif create mode 100644 install-new/data/img/t/AdminSearchConf.gif create mode 100644 install-new/data/img/t/AdminSearchEngines.gif create mode 100644 install-new/data/img/t/AdminShipping.gif create mode 100644 install-new/data/img/t/AdminShop.gif create mode 100644 install-new/data/img/t/AdminSlip.gif create mode 100644 install-new/data/img/t/AdminStates.gif create mode 100644 install-new/data/img/t/AdminStats.gif create mode 100644 install-new/data/img/t/AdminStatsConf.gif create mode 100644 install-new/data/img/t/AdminStatuses.gif create mode 100644 install-new/data/img/t/AdminStock.gif create mode 100644 install-new/data/img/t/AdminStockManagement.gif create mode 100644 install-new/data/img/t/AdminStockMvt.gif create mode 100644 install-new/data/img/t/AdminStores.gif create mode 100644 install-new/data/img/t/AdminSubDomains.gif create mode 100644 install-new/data/img/t/AdminSuppliers.gif create mode 100644 install-new/data/img/t/AdminTabs.gif create mode 100644 install-new/data/img/t/AdminTags.gif create mode 100644 install-new/data/img/t/AdminTaxRulesGroup.gif create mode 100644 install-new/data/img/t/AdminTaxes.gif create mode 100644 install-new/data/img/t/AdminThemes.gif create mode 100644 install-new/data/img/t/AdminTools.gif create mode 100644 install-new/data/img/t/AdminTracking.gif create mode 100644 install-new/data/img/t/AdminTranslations.gif create mode 100644 install-new/data/img/t/AdminWebservice.gif create mode 100644 install-new/data/img/t/AdminZones.gif create mode 100644 install-new/data/iso_to_timezone.xml create mode 100644 install-new/data/xml/.xml create mode 100644 install-new/data/xml/access.xml create mode 100644 install-new/data/xml/address_format.xml create mode 100644 install-new/data/xml/carrier.xml create mode 100644 install-new/data/xml/carrier_group.xml create mode 100644 install-new/data/xml/carrier_zone.xml create mode 100644 install-new/data/xml/category.xml create mode 100644 install-new/data/xml/cms.xml create mode 100644 install-new/data/xml/cms_category.xml create mode 100644 install-new/data/xml/configuration.xml create mode 100644 install-new/data/xml/contact.xml create mode 100644 install-new/data/xml/country.xml create mode 100644 install-new/data/xml/gender.xml create mode 100644 install-new/data/xml/group.xml create mode 100644 install-new/data/xml/hook.xml create mode 100644 install-new/data/xml/hook_alias.xml create mode 100644 install-new/data/xml/image_type.xml create mode 100644 install-new/data/xml/meta.xml create mode 100644 install-new/data/xml/operating_system.xml create mode 100644 install-new/data/xml/order_return_state.xml create mode 100644 install-new/data/xml/order_state.xml create mode 100644 install-new/data/xml/profile.xml create mode 100644 install-new/data/xml/quick_access.xml create mode 100644 install-new/data/xml/search_engine.xml create mode 100644 install-new/data/xml/state.xml create mode 100644 install-new/data/xml/stock_mvt_reason.xml create mode 100644 install-new/data/xml/subdomain.xml create mode 100644 install-new/data/xml/supplier_order_state.xml create mode 100644 install-new/data/xml/tab.xml create mode 100644 install-new/data/xml/theme.xml create mode 100644 install-new/data/xml/timezone.xml create mode 100644 install-new/data/xml/warehouse.xml create mode 100644 install-new/data/xml/web_browser.xml create mode 100644 install-new/data/xml/zone.xml create mode 100644 install-new/dev/index.php create mode 100644 install-new/dev/index.phtml create mode 100644 install-new/dev/style.css create mode 100644 install-new/fixtures/apple/data/access.xml create mode 100644 install-new/fixtures/apple/data/address.xml create mode 100644 install-new/fixtures/apple/data/alias.xml create mode 100644 install-new/fixtures/apple/data/attribute.xml create mode 100644 install-new/fixtures/apple/data/attribute_group.xml create mode 100644 install-new/fixtures/apple/data/carrier.xml create mode 100644 install-new/fixtures/apple/data/carrier_group.xml create mode 100644 install-new/fixtures/apple/data/carrier_zone.xml create mode 100644 install-new/fixtures/apple/data/cart.xml create mode 100644 install-new/fixtures/apple/data/cart_product.xml create mode 100644 install-new/fixtures/apple/data/category.xml create mode 100644 install-new/fixtures/apple/data/category_product.xml create mode 100644 install-new/fixtures/apple/data/connections.xml create mode 100644 install-new/fixtures/apple/data/customer.xml create mode 100644 install-new/fixtures/apple/data/delivery.xml create mode 100644 install-new/fixtures/apple/data/feature.xml create mode 100644 install-new/fixtures/apple/data/feature_value.xml create mode 100644 install-new/fixtures/apple/data/guest.xml create mode 100644 install-new/fixtures/apple/data/image.xml create mode 100644 install-new/fixtures/apple/data/manufacturer.xml create mode 100644 install-new/fixtures/apple/data/order_detail.xml create mode 100644 install-new/fixtures/apple/data/order_history.xml create mode 100644 install-new/fixtures/apple/data/order_message.xml create mode 100644 install-new/fixtures/apple/data/orders.xml create mode 100644 install-new/fixtures/apple/data/product.xml create mode 100644 install-new/fixtures/apple/data/product_attribute.xml create mode 100644 install-new/fixtures/apple/data/product_attribute_combination.xml create mode 100644 install-new/fixtures/apple/data/profile.xml create mode 100644 install-new/fixtures/apple/data/range_price.xml create mode 100644 install-new/fixtures/apple/data/range_weight.xml create mode 100644 install-new/fixtures/apple/data/scene.xml create mode 100644 install-new/fixtures/apple/data/stock_available.xml create mode 100644 install-new/fixtures/apple/data/store.xml create mode 100644 install-new/fixtures/apple/data/supplier.xml create mode 100644 install-new/fixtures/apple/data/tag.xml create mode 100644 install-new/fixtures/apple/img/c/Accessories-category.jpg create mode 100644 install-new/fixtures/apple/img/c/Accessories-large.jpg create mode 100644 install-new/fixtures/apple/img/c/Accessories-medium.jpg create mode 100644 install-new/fixtures/apple/img/c/Accessories-small.jpg create mode 100644 install-new/fixtures/apple/img/c/Accessories.jpg create mode 100644 install-new/fixtures/apple/img/c/Laptops-category.jpg create mode 100644 install-new/fixtures/apple/img/c/Laptops-large.jpg create mode 100644 install-new/fixtures/apple/img/c/Laptops-medium.jpg create mode 100644 install-new/fixtures/apple/img/c/Laptops-small.jpg create mode 100644 install-new/fixtures/apple/img/c/Laptops.jpg create mode 100644 install-new/fixtures/apple/img/c/iPods-category.jpg create mode 100644 install-new/fixtures/apple/img/c/iPods-large.jpg create mode 100644 install-new/fixtures/apple/img/c/iPods-medium.jpg create mode 100644 install-new/fixtures/apple/img/c/iPods-small.jpg create mode 100644 install-new/fixtures/apple/img/c/iPods.jpg create mode 100644 install-new/fixtures/apple/img/m/Apple_Computer_Inc-large.jpg create mode 100644 install-new/fixtures/apple/img/m/Apple_Computer_Inc-medium.jpg create mode 100644 install-new/fixtures/apple/img/m/Apple_Computer_Inc-small.jpg create mode 100644 install-new/fixtures/apple/img/m/Apple_Computer_Inc.jpg create mode 100644 install-new/fixtures/apple/img/m/Shure_Incorporated-large.jpg create mode 100644 install-new/fixtures/apple/img/m/Shure_Incorporated-medium.jpg create mode 100644 install-new/fixtures/apple/img/m/Shure_Incorporated-small.jpg create mode 100644 install-new/fixtures/apple/img/m/Shure_Incorporated.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air-home.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air-large.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air-small.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_1-home.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_1-large.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_1-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_1-small.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_1-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_1.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_2-home.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_2-large.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_2-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_2-small.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_2-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_2.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_3-home.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_3-large.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_3-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_3-small.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_3-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_3.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_4-home.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_4-large.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_4-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_4-small.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_4-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_4.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_SuperDrive-home.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_SuperDrive-large.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_SuperDrive-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_SuperDrive-small.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_SuperDrive-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/MacBook_Air_SuperDrive.jpg create mode 100644 install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone-home.jpg create mode 100644 install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone-large.jpg create mode 100644 install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone-small.jpg create mode 100644 install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone.jpg create mode 100644 install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-home.jpg create mode 100644 install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-large.jpg create mode 100644 install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-small.jpg create mode 100644 install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_1-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_1-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_1-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_1-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_1-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_1.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_2-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_2-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_2-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_2-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_2-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_2.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_3-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_3-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_3-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_3-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_3-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_3.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_4-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_4-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_4-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_4-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_4-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_4.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_5-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_5-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_5-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_5-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_5-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_5.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_6-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_6-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_6-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_6-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_6-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_6.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_7-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_7-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_7-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_7-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_7-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_Nano_7.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_1-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_1-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_1-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_1-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_1-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_1.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_2-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_2-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_2-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_2-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_2-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_2.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_3-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_3-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_3-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_3-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_3-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_shuffle_3.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_1-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_1-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_1-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_1-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_1-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_1.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_2-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_2-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_2-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_2-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_2-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_2.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_3-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_3-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_3-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_3-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_3-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_3.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_4-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_4-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_4-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_4-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_4-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_4.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_5-home.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_5-large.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_5-medium.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_5-small.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_5-thickbox.jpg create mode 100644 install-new/fixtures/apple/img/p/iPod_touch_5.jpg create mode 100644 install-new/fixtures/apple/img/scenes/The_MacBooks-large_scene.jpg create mode 100644 install-new/fixtures/apple/img/scenes/The_MacBooks.jpg create mode 100644 install-new/fixtures/apple/img/scenes/The_iPods-large_scene.jpg create mode 100644 install-new/fixtures/apple/img/scenes/The_iPods.jpg create mode 100644 install-new/fixtures/apple/img/scenes/The_iPods_Nano-large_scene.jpg create mode 100644 install-new/fixtures/apple/img/scenes/The_iPods_Nano.jpg create mode 100644 install-new/fixtures/apple/img/scenes/thumbs/The_MacBooks-thumb_scene.jpg create mode 100644 install-new/fixtures/apple/img/scenes/thumbs/The_iPods-thumb_scene.jpg create mode 100644 install-new/fixtures/apple/img/scenes/thumbs/The_iPods_Nano-thumb_scene.jpg create mode 100644 install-new/fixtures/apple/img/st/Coconut_Grove-medium.jpg create mode 100644 install-new/fixtures/apple/img/st/Coconut_Grove.jpg create mode 100644 install-new/fixtures/apple/img/st/Dade_County-medium.jpg create mode 100644 install-new/fixtures/apple/img/st/Dade_County.jpg create mode 100644 install-new/fixtures/apple/img/st/E_Fort_Lauderdale-medium.jpg create mode 100644 install-new/fixtures/apple/img/st/E_Fort_Lauderdale.jpg create mode 100644 install-new/fixtures/apple/img/st/N_Miami_Biscayne-medium.jpg create mode 100644 install-new/fixtures/apple/img/st/N_Miami_Biscayne.jpg create mode 100644 install-new/fixtures/apple/img/st/Pembroke_Pines-medium.jpg create mode 100644 install-new/fixtures/apple/img/st/Pembroke_Pines.jpg create mode 100644 install-new/fixtures/apple/img/su/AppleStore-large.jpg create mode 100644 install-new/fixtures/apple/img/su/AppleStore-medium.jpg create mode 100644 install-new/fixtures/apple/img/su/AppleStore-small.jpg create mode 100644 install-new/fixtures/apple/img/su/AppleStore.jpg create mode 100644 install-new/fixtures/apple/img/su/Shure_Online_Store-large.jpg create mode 100644 install-new/fixtures/apple/img/su/Shure_Online_Store-medium.jpg create mode 100644 install-new/fixtures/apple/img/su/Shure_Online_Store-small.jpg create mode 100644 install-new/fixtures/apple/img/su/Shure_Online_Store.jpg create mode 100644 install-new/fixtures/apple/install.php create mode 100644 install-new/fixtures/apple/langs/de/data/attribute.xml create mode 100644 install-new/fixtures/apple/langs/de/data/attribute_group.xml create mode 100644 install-new/fixtures/apple/langs/de/data/attributegroup.xml create mode 100644 install-new/fixtures/apple/langs/de/data/carrier.xml create mode 100644 install-new/fixtures/apple/langs/de/data/category.xml create mode 100644 install-new/fixtures/apple/langs/de/data/feature.xml create mode 100644 install-new/fixtures/apple/langs/de/data/feature_value.xml create mode 100644 install-new/fixtures/apple/langs/de/data/featurevalue.xml create mode 100644 install-new/fixtures/apple/langs/de/data/image.xml create mode 100644 install-new/fixtures/apple/langs/de/data/manufacturer.xml create mode 100644 install-new/fixtures/apple/langs/de/data/order_message.xml create mode 100644 install-new/fixtures/apple/langs/de/data/ordermessage.xml create mode 100644 install-new/fixtures/apple/langs/de/data/product.xml create mode 100644 install-new/fixtures/apple/langs/de/data/profile.xml create mode 100644 install-new/fixtures/apple/langs/de/data/scene.xml create mode 100644 install-new/fixtures/apple/langs/de/data/supplier.xml create mode 100644 install-new/fixtures/apple/langs/de/fixtures.php create mode 100644 install-new/fixtures/apple/langs/en/data/attribute.xml create mode 100644 install-new/fixtures/apple/langs/en/data/attribute_group.xml create mode 100644 install-new/fixtures/apple/langs/en/data/attributegroup.xml create mode 100644 install-new/fixtures/apple/langs/en/data/carrier.xml create mode 100644 install-new/fixtures/apple/langs/en/data/category.xml create mode 100644 install-new/fixtures/apple/langs/en/data/feature.xml create mode 100644 install-new/fixtures/apple/langs/en/data/feature_value.xml create mode 100644 install-new/fixtures/apple/langs/en/data/featurevalue.xml create mode 100644 install-new/fixtures/apple/langs/en/data/image.xml create mode 100644 install-new/fixtures/apple/langs/en/data/manufacturer.xml create mode 100644 install-new/fixtures/apple/langs/en/data/order_message.xml create mode 100644 install-new/fixtures/apple/langs/en/data/ordermessage.xml create mode 100644 install-new/fixtures/apple/langs/en/data/product.xml create mode 100644 install-new/fixtures/apple/langs/en/data/profile.xml create mode 100644 install-new/fixtures/apple/langs/en/data/scene.xml create mode 100644 install-new/fixtures/apple/langs/en/data/supplier.xml create mode 100644 install-new/fixtures/apple/langs/en/data/tag.xml create mode 100644 install-new/fixtures/apple/langs/en/fixtures.php create mode 100644 install-new/fixtures/apple/langs/es/data/attribute.xml create mode 100644 install-new/fixtures/apple/langs/es/data/attribute_group.xml create mode 100644 install-new/fixtures/apple/langs/es/data/attributegroup.xml create mode 100644 install-new/fixtures/apple/langs/es/data/carrier.xml create mode 100644 install-new/fixtures/apple/langs/es/data/category.xml create mode 100644 install-new/fixtures/apple/langs/es/data/feature.xml create mode 100644 install-new/fixtures/apple/langs/es/data/feature_value.xml create mode 100644 install-new/fixtures/apple/langs/es/data/featurevalue.xml create mode 100644 install-new/fixtures/apple/langs/es/data/image.xml create mode 100644 install-new/fixtures/apple/langs/es/data/manufacturer.xml create mode 100644 install-new/fixtures/apple/langs/es/data/order_message.xml create mode 100644 install-new/fixtures/apple/langs/es/data/ordermessage.xml create mode 100644 install-new/fixtures/apple/langs/es/data/product.xml create mode 100644 install-new/fixtures/apple/langs/es/data/profile.xml create mode 100644 install-new/fixtures/apple/langs/es/data/scene.xml create mode 100644 install-new/fixtures/apple/langs/es/data/supplier.xml create mode 100644 install-new/fixtures/apple/langs/es/data/tag.xml create mode 100644 install-new/fixtures/apple/langs/es/fixtures.php create mode 100644 install-new/fixtures/apple/langs/fr/data/attribute.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/attribute_group.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/attributegroup.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/carrier.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/category.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/feature.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/feature_value.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/featurevalue.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/image.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/manufacturer.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/order_message.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/ordermessage.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/product.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/profile.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/scene.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/supplier.xml create mode 100644 install-new/fixtures/apple/langs/fr/data/tag.xml create mode 100644 install-new/fixtures/apple/langs/fr/fixtures.php create mode 100644 install-new/fixtures/apple/langs/it/data/attribute.xml create mode 100644 install-new/fixtures/apple/langs/it/data/attribute_group.xml create mode 100644 install-new/fixtures/apple/langs/it/data/attributegroup.xml create mode 100644 install-new/fixtures/apple/langs/it/data/carrier.xml create mode 100644 install-new/fixtures/apple/langs/it/data/category.xml create mode 100644 install-new/fixtures/apple/langs/it/data/feature.xml create mode 100644 install-new/fixtures/apple/langs/it/data/feature_value.xml create mode 100644 install-new/fixtures/apple/langs/it/data/featurevalue.xml create mode 100644 install-new/fixtures/apple/langs/it/data/image.xml create mode 100644 install-new/fixtures/apple/langs/it/data/manufacturer.xml create mode 100644 install-new/fixtures/apple/langs/it/data/order_message.xml create mode 100644 install-new/fixtures/apple/langs/it/data/ordermessage.xml create mode 100644 install-new/fixtures/apple/langs/it/data/product.xml create mode 100644 install-new/fixtures/apple/langs/it/data/profile.xml create mode 100644 install-new/fixtures/apple/langs/it/data/scene.xml create mode 100644 install-new/fixtures/apple/langs/it/data/supplier.xml create mode 100644 install-new/fixtures/apple/langs/it/fixtures.php create mode 100644 install-new/index.php create mode 100644 install-new/init.php create mode 100644 install-new/langs/de/data/carrier.xml create mode 100644 install-new/langs/de/data/category.xml create mode 100644 install-new/langs/de/data/cms.xml create mode 100644 install-new/langs/de/data/cms_category.xml create mode 100644 install-new/langs/de/data/configuration.xml create mode 100644 install-new/langs/de/data/contact.xml create mode 100644 install-new/langs/de/data/country.xml create mode 100644 install-new/langs/de/data/gender.xml create mode 100644 install-new/langs/de/data/group.xml create mode 100644 install-new/langs/de/data/meta.xml create mode 100644 install-new/langs/de/data/order_return_state.xml create mode 100644 install-new/langs/de/data/order_state.xml create mode 100644 install-new/langs/de/data/profile.xml create mode 100644 install-new/langs/de/data/quick_access.xml create mode 100644 install-new/langs/de/data/stock_mvt_reason.xml create mode 100644 install-new/langs/de/data/supplier_order_state.xml create mode 100644 install-new/langs/de/data/tab.xml create mode 100644 install-new/langs/de/flag.jpg create mode 100644 install-new/langs/de/img/de-default-category.jpg create mode 100644 install-new/langs/de/img/de-default-home.jpg create mode 100644 install-new/langs/de/img/de-default-large.jpg create mode 100644 install-new/langs/de/img/de-default-large_scene.jpg create mode 100644 install-new/langs/de/img/de-default-medium.jpg create mode 100644 install-new/langs/de/img/de-default-small.jpg create mode 100644 install-new/langs/de/img/de-default-thickbox.jpg create mode 100644 install-new/langs/de/img/de-default-thumb_scene.jpg create mode 100644 install-new/langs/de/img/de.jpg create mode 100644 install-new/langs/de/language.xml create mode 100644 install-new/langs/en/data/carrier.xml create mode 100644 install-new/langs/en/data/category.xml create mode 100644 install-new/langs/en/data/cms.xml create mode 100644 install-new/langs/en/data/cms_category.xml create mode 100644 install-new/langs/en/data/configuration.xml create mode 100644 install-new/langs/en/data/contact.xml create mode 100644 install-new/langs/en/data/country.xml create mode 100644 install-new/langs/en/data/gender.xml create mode 100644 install-new/langs/en/data/group.xml create mode 100644 install-new/langs/en/data/meta.xml create mode 100644 install-new/langs/en/data/order_return_state.xml create mode 100644 install-new/langs/en/data/order_state.xml create mode 100644 install-new/langs/en/data/profile.xml create mode 100644 install-new/langs/en/data/quick_access.xml create mode 100644 install-new/langs/en/data/stock_mvt_reason.xml create mode 100644 install-new/langs/en/data/supplier_order_state.xml create mode 100644 install-new/langs/en/data/tab.xml create mode 100644 install-new/langs/en/flag.jpg create mode 100644 install-new/langs/en/img/en-default-category.jpg create mode 100644 install-new/langs/en/img/en-default-home.jpg create mode 100644 install-new/langs/en/img/en-default-large.jpg create mode 100644 install-new/langs/en/img/en-default-large_scene.jpg create mode 100644 install-new/langs/en/img/en-default-medium.jpg create mode 100644 install-new/langs/en/img/en-default-small.jpg create mode 100644 install-new/langs/en/img/en-default-thickbox.jpg create mode 100644 install-new/langs/en/img/en-default-thumb_scene.jpg create mode 100644 install-new/langs/en/img/en.jpg create mode 100644 install-new/langs/en/install.php create mode 100644 install-new/langs/en/language.xml create mode 100644 install-new/langs/es/data/carrier.xml create mode 100644 install-new/langs/es/data/category.xml create mode 100644 install-new/langs/es/data/cms.xml create mode 100644 install-new/langs/es/data/cms_category.xml create mode 100644 install-new/langs/es/data/configuration.xml create mode 100644 install-new/langs/es/data/contact.xml create mode 100644 install-new/langs/es/data/country.xml create mode 100644 install-new/langs/es/data/gender.xml create mode 100644 install-new/langs/es/data/group.xml create mode 100644 install-new/langs/es/data/meta.xml create mode 100644 install-new/langs/es/data/order_return_state.xml create mode 100644 install-new/langs/es/data/order_state.xml create mode 100644 install-new/langs/es/data/profile.xml create mode 100644 install-new/langs/es/data/quick_access.xml create mode 100644 install-new/langs/es/data/stock_mvt_reason.xml create mode 100644 install-new/langs/es/data/supplier_order_state.xml create mode 100644 install-new/langs/es/data/tab.xml create mode 100644 install-new/langs/es/flag.jpg create mode 100644 install-new/langs/es/img/es-default-category.jpg create mode 100644 install-new/langs/es/img/es-default-home.jpg create mode 100644 install-new/langs/es/img/es-default-large.jpg create mode 100644 install-new/langs/es/img/es-default-large_scene.jpg create mode 100644 install-new/langs/es/img/es-default-medium.jpg create mode 100644 install-new/langs/es/img/es-default-small.jpg create mode 100644 install-new/langs/es/img/es-default-thickbox.jpg create mode 100644 install-new/langs/es/img/es-default-thumb_scene.jpg create mode 100644 install-new/langs/es/img/es.jpg create mode 100644 install-new/langs/es/language.xml create mode 100644 install-new/langs/fr/README.txt create mode 100644 install-new/langs/fr/data/carrier.xml create mode 100644 install-new/langs/fr/data/category.xml create mode 100644 install-new/langs/fr/data/cms.xml create mode 100644 install-new/langs/fr/data/cms_category.xml create mode 100644 install-new/langs/fr/data/configuration.xml create mode 100644 install-new/langs/fr/data/contact.xml create mode 100644 install-new/langs/fr/data/country.xml create mode 100644 install-new/langs/fr/data/gender.xml create mode 100644 install-new/langs/fr/data/group.xml create mode 100644 install-new/langs/fr/data/meta.xml create mode 100644 install-new/langs/fr/data/order_return_state.xml create mode 100644 install-new/langs/fr/data/order_state.xml create mode 100644 install-new/langs/fr/data/profile.xml create mode 100644 install-new/langs/fr/data/quick_access.xml create mode 100644 install-new/langs/fr/data/stock_mvt_reason.xml create mode 100644 install-new/langs/fr/data/supplier_order_state.xml create mode 100644 install-new/langs/fr/data/tab.xml create mode 100644 install-new/langs/fr/flag.jpg create mode 100644 install-new/langs/fr/img/fr-default-category.jpg create mode 100644 install-new/langs/fr/img/fr-default-home.jpg create mode 100644 install-new/langs/fr/img/fr-default-large.jpg create mode 100644 install-new/langs/fr/img/fr-default-large_scene.jpg create mode 100644 install-new/langs/fr/img/fr-default-medium.jpg create mode 100644 install-new/langs/fr/img/fr-default-small.jpg create mode 100644 install-new/langs/fr/img/fr-default-thickbox.jpg create mode 100644 install-new/langs/fr/img/fr-default-thumb_scene.jpg create mode 100644 install-new/langs/fr/img/fr.jpg create mode 100644 install-new/langs/fr/install.php create mode 100644 install-new/langs/fr/language.xml create mode 100644 install-new/langs/it/data/carrier.xml create mode 100644 install-new/langs/it/data/category.xml create mode 100644 install-new/langs/it/data/cms.xml create mode 100644 install-new/langs/it/data/cms_category.xml create mode 100644 install-new/langs/it/data/configuration.xml create mode 100644 install-new/langs/it/data/contact.xml create mode 100644 install-new/langs/it/data/country.xml create mode 100644 install-new/langs/it/data/gender.xml create mode 100644 install-new/langs/it/data/group.xml create mode 100644 install-new/langs/it/data/meta.xml create mode 100644 install-new/langs/it/data/order_return_state.xml create mode 100644 install-new/langs/it/data/order_state.xml create mode 100644 install-new/langs/it/data/profile.xml create mode 100644 install-new/langs/it/data/quick_access.xml create mode 100644 install-new/langs/it/data/stock_mvt_reason.xml create mode 100644 install-new/langs/it/data/supplier_order_state.xml create mode 100644 install-new/langs/it/data/tab.xml create mode 100644 install-new/langs/it/flag.jpg create mode 100644 install-new/langs/it/img/it-default-category.jpg create mode 100644 install-new/langs/it/img/it-default-home.jpg create mode 100644 install-new/langs/it/img/it-default-large.jpg create mode 100644 install-new/langs/it/img/it-default-large_scene.jpg create mode 100644 install-new/langs/it/img/it-default-medium.jpg create mode 100644 install-new/langs/it/img/it-default-small.jpg create mode 100644 install-new/langs/it/img/it-default-thickbox.jpg create mode 100644 install-new/langs/it/img/it-default-thumb_scene.jpg create mode 100644 install-new/langs/it/img/it.jpg create mode 100644 install-new/langs/it/language.xml create mode 100644 install-new/models/database.php create mode 100644 install-new/models/install.php create mode 100644 install-new/models/mail.php create mode 100644 install-new/models/system.php create mode 100644 install-new/theme/img/01-gd100.png create mode 100644 install-new/theme/img/01-pt100.png create mode 100644 install-new/theme/img/01-pt70.png create mode 100644 install-new/theme/img/02-gd100.png create mode 100644 install-new/theme/img/02-pt100.png create mode 100644 install-new/theme/img/02-pt70.png create mode 100644 install-new/theme/img/03-gd100.png create mode 100644 install-new/theme/img/03-pt100.png create mode 100644 install-new/theme/img/03-pt70.png create mode 100644 install-new/theme/img/04-gd100.png create mode 100644 install-new/theme/img/04-pt100.png create mode 100644 install-new/theme/img/04-pt70.png create mode 100644 install-new/theme/img/05-gd100.png create mode 100644 install-new/theme/img/05-pt100.png create mode 100644 install-new/theme/img/05-pt70.png create mode 100644 install-new/theme/img/ajax-loader-small.gif create mode 100644 install-new/theme/img/ajax-loader.gif create mode 100644 install-new/theme/img/bad.gif create mode 100644 install-new/theme/img/bg-body.png create mode 100644 install-new/theme/img/bg-contentTitle.png create mode 100644 install-new/theme/img/bg-ctnr.png create mode 100644 install-new/theme/img/bg-input-text.png create mode 100644 install-new/theme/img/bg-li-headerLinks.png create mode 100644 install-new/theme/img/bg-li-tabs-finished.png create mode 100644 install-new/theme/img/bg-li-tabs.png create mode 100644 install-new/theme/img/bg-phone_block.png create mode 100644 install-new/theme/img/bg-tab.png create mode 100644 install-new/theme/img/bg_blockInfoEnd.png create mode 100644 install-new/theme/img/bg_bt_blockInfoEnd.png create mode 100644 install-new/theme/img/bg_field.png create mode 100644 install-new/theme/img/bg_help.png create mode 100644 install-new/theme/img/bg_input_button.png create mode 100644 install-new/theme/img/bg_li_stepList.png create mode 100644 install-new/theme/img/bg_li_title.png create mode 100644 install-new/theme/img/bg_loaderSpace.png create mode 100644 install-new/theme/img/bg_moduleTable_th.png create mode 100644 install-new/theme/img/boutonpt-disabled.png create mode 100644 install-new/theme/img/boutonpt-on.png create mode 100644 install-new/theme/img/boutonpt-over.png create mode 100644 install-new/theme/img/bt - Copie.png create mode 100644 install-new/theme/img/bt-dsbl - Copie.png create mode 100644 install-new/theme/img/bt-dsbl.png create mode 100644 install-new/theme/img/bt-hover.png create mode 100644 install-new/theme/img/bt.png create mode 100644 install-new/theme/img/bt_off.png create mode 100644 install-new/theme/img/bt_off_hover.png create mode 100644 install-new/theme/img/btn-installeur.png create mode 100644 install-new/theme/img/bullet.png create mode 100644 install-new/theme/img/favicon.ico create mode 100644 install-new/theme/img/ico_help.gif create mode 100644 install-new/theme/img/index.php create mode 100644 install-new/theme/img/logo.png create mode 100644 install-new/theme/img/noflag.jpg create mode 100644 install-new/theme/img/ok.gif create mode 100644 install-new/theme/img/ombrage-bas.png create mode 100644 install-new/theme/img/ombrage-droit.png create mode 100644 install-new/theme/img/phone.png create mode 100644 install-new/theme/img/pict_error.png create mode 100644 install-new/theme/img/pict_h3_infos.png create mode 100644 install-new/theme/img/pict_info.png create mode 100644 install-new/theme/img/pict_ok.png create mode 100644 install-new/theme/img/puce.gif create mode 100644 install-new/theme/img/shadow-left.png create mode 100644 install-new/theme/img/visu_boBlock.png create mode 100644 install-new/theme/img/visu_foBlock.png create mode 100644 install-new/theme/js/configure.js create mode 100644 install-new/theme/js/database.js create mode 100644 install-new/theme/js/install.js create mode 100644 install-new/theme/js/jquery-1.4.4.min.js create mode 100644 install-new/theme/js/jquery.ajaxfileupload.js create mode 100644 install-new/theme/js/process.js create mode 100644 install-new/theme/js/welcome.js create mode 100644 install-new/theme/preactivation.css create mode 100644 install-new/theme/view.css create mode 100644 install-new/theme/views/configure.phtml create mode 100644 install-new/theme/views/database.phtml create mode 100644 install-new/theme/views/footer.phtml create mode 100644 install-new/theme/views/header.phtml create mode 100644 install-new/theme/views/partners.phtml create mode 100644 install-new/theme/views/partners_fields.phtml create mode 100644 install-new/theme/views/process.phtml create mode 100644 install-new/theme/views/system.phtml create mode 100644 install-new/theme/views/welcome.phtml create mode 100644 install-new/upgrade/classes/AddConfToFile.php create mode 100644 install-new/upgrade/classes/Language.php create mode 100644 install-new/upgrade/classes/Module.php create mode 100644 install-new/upgrade/classes/ToolsInstall.php create mode 100644 install-new/upgrade/functions/add_accounting_tab.php create mode 100644 install-new/upgrade/functions/add_attribute_position.php create mode 100644 install-new/upgrade/functions/add_carrier_position.php create mode 100644 install-new/upgrade/functions/add_default_restrictions_modules_groups.php create mode 100644 install-new/upgrade/functions/add_feature_position.php create mode 100644 install-new/upgrade/functions/add_group_attribute_position.php create mode 100644 install-new/upgrade/functions/add_missing_rewrite_value.php create mode 100644 install-new/upgrade/functions/add_module_to_hook.php create mode 100644 install-new/upgrade/functions/add_new_tab.php create mode 100644 install-new/upgrade/functions/add_order_state.php create mode 100644 install-new/upgrade/functions/add_required_customization_field_flag.php create mode 100644 install-new/upgrade/functions/alter_blocklink.php create mode 100644 install-new/upgrade/functions/alter_cms_block.php create mode 100644 install-new/upgrade/functions/alter_productcomments_guest_index.php create mode 100644 install-new/upgrade/functions/blocknewsletter.php create mode 100644 install-new/upgrade/functions/check_webservice_account_table.php create mode 100644 install-new/upgrade/functions/cms_block.php create mode 100644 install-new/upgrade/functions/configuration_double_cleaner.php create mode 100644 install-new/upgrade/functions/convert_product_price.php create mode 100644 install-new/upgrade/functions/create_multistore.php create mode 100644 install-new/upgrade/functions/delivery_number_set.php create mode 100644 install-new/upgrade/functions/desactivate_custom_modules.php create mode 100644 install-new/upgrade/functions/ecotax_tax_application_fix.php create mode 100644 install-new/upgrade/functions/editorial_update.php create mode 100644 install-new/upgrade/functions/generate_ntree.php create mode 100644 install-new/upgrade/functions/generate_tax_rules.php create mode 100644 install-new/upgrade/functions/gridextjs_deprecated.php create mode 100644 install-new/upgrade/functions/group_reduction_column_fix.php create mode 100644 install-new/upgrade/functions/id_currency_country_fix.php create mode 100644 install-new/upgrade/functions/index.php create mode 100644 install-new/upgrade/functions/invoice_number_set.php create mode 100644 install-new/upgrade/functions/latin1_database_to_utf8.php create mode 100644 install-new/upgrade/functions/migrate_block_info_to_cms_block.php create mode 100644 install-new/upgrade/functions/moduleReinstaller.php create mode 100644 install-new/upgrade/functions/move_crossselling.php create mode 100644 install-new/upgrade/functions/regenerate_level_depth.php create mode 100644 install-new/upgrade/functions/remove_duplicate_category_groups.php create mode 100644 install-new/upgrade/functions/remove_module_from_hook.php create mode 100644 install-new/upgrade/functions/remove_tab.php create mode 100644 install-new/upgrade/functions/reorderpositions.php create mode 100644 install-new/upgrade/functions/setAllGroupsOnHomeCategory.php create mode 100644 install-new/upgrade/functions/set_discount_category.php create mode 100644 install-new/upgrade/functions/set_payment_module.php create mode 100644 install-new/upgrade/functions/set_payment_module_group.php create mode 100644 install-new/upgrade/functions/shop_url.php create mode 100644 install-new/upgrade/functions/update_carrier_url.php create mode 100644 install-new/upgrade/functions/update_feature_detachable_cache.php create mode 100644 install-new/upgrade/functions/update_for_13version.php create mode 100644 install-new/upgrade/functions/update_image_size_in_db.php create mode 100644 install-new/upgrade/functions/update_module_followup.php create mode 100644 install-new/upgrade/functions/update_module_loyalty.php create mode 100644 install-new/upgrade/functions/update_modules_sql.php create mode 100644 install-new/upgrade/functions/update_order_detail_taxes.php create mode 100644 install-new/upgrade/functions/update_order_details.php create mode 100644 install-new/upgrade/functions/update_products_ecotax_v133.php create mode 100644 install-new/upgrade/functions/updateproductcomments.php create mode 100644 install-new/upgrade/functions/updatetabicon_from_11version.php create mode 100644 install-new/upgrade/sql/0.9.1.2.sql create mode 100644 install-new/upgrade/sql/0.9.1.sql create mode 100644 install-new/upgrade/sql/0.9.5.1.sql create mode 100644 install-new/upgrade/sql/0.9.5.2.sql create mode 100644 install-new/upgrade/sql/0.9.6.1.sql create mode 100644 install-new/upgrade/sql/0.9.6.2.sql create mode 100644 install-new/upgrade/sql/0.9.7.1.sql create mode 100644 install-new/upgrade/sql/0.9.7.2.sql create mode 100644 install-new/upgrade/sql/0.9.sql create mode 100644 install-new/upgrade/sql/1.0.0.1.sql create mode 100644 install-new/upgrade/sql/1.0.0.2.sql create mode 100644 install-new/upgrade/sql/1.0.0.3.sql create mode 100644 install-new/upgrade/sql/1.0.0.4.sql create mode 100644 install-new/upgrade/sql/1.0.0.5.sql create mode 100644 install-new/upgrade/sql/1.0.0.6.sql create mode 100644 install-new/upgrade/sql/1.0.0.7.sql create mode 100644 install-new/upgrade/sql/1.0.0.8.sql create mode 100644 install-new/upgrade/sql/1.1.0.1.sql create mode 100644 install-new/upgrade/sql/1.1.0.2.sql create mode 100644 install-new/upgrade/sql/1.1.0.3.sql create mode 100644 install-new/upgrade/sql/1.1.0.4.sql create mode 100644 install-new/upgrade/sql/1.1.0.5.sql create mode 100644 install-new/upgrade/sql/1.2.0.1.sql create mode 100644 install-new/upgrade/sql/1.2.0.2.sql create mode 100644 install-new/upgrade/sql/1.2.0.3.sql create mode 100644 install-new/upgrade/sql/1.2.0.4.sql create mode 100644 install-new/upgrade/sql/1.2.0.5.sql create mode 100644 install-new/upgrade/sql/1.2.0.6.sql create mode 100644 install-new/upgrade/sql/1.2.0.7.sql create mode 100644 install-new/upgrade/sql/1.2.0.8.sql create mode 100644 install-new/upgrade/sql/1.2.1.0.sql create mode 100644 install-new/upgrade/sql/1.2.2.0.sql create mode 100644 install-new/upgrade/sql/1.2.3.0.sql create mode 100644 install-new/upgrade/sql/1.2.4.0.sql create mode 100644 install-new/upgrade/sql/1.2.5.0.sql create mode 100644 install-new/upgrade/sql/1.3.0.1.sql create mode 100644 install-new/upgrade/sql/1.3.0.10.sql create mode 100644 install-new/upgrade/sql/1.3.0.2.sql create mode 100644 install-new/upgrade/sql/1.3.0.3.sql create mode 100644 install-new/upgrade/sql/1.3.0.4.sql create mode 100644 install-new/upgrade/sql/1.3.0.5.sql create mode 100644 install-new/upgrade/sql/1.3.0.6.sql create mode 100644 install-new/upgrade/sql/1.3.0.7.sql create mode 100644 install-new/upgrade/sql/1.3.0.8.sql create mode 100644 install-new/upgrade/sql/1.3.0.9.sql create mode 100644 install-new/upgrade/sql/1.3.1.1.sql create mode 100644 install-new/upgrade/sql/1.3.2.1.sql create mode 100644 install-new/upgrade/sql/1.3.2.2.sql create mode 100644 install-new/upgrade/sql/1.3.2.3.sql create mode 100644 install-new/upgrade/sql/1.3.3.0.sql create mode 100644 install-new/upgrade/sql/1.3.4.0.sql create mode 100644 install-new/upgrade/sql/1.3.5.0.sql create mode 100644 install-new/upgrade/sql/1.3.6.0.sql create mode 100644 install-new/upgrade/sql/1.3.7.0.sql create mode 100644 install-new/upgrade/sql/1.4.0.1.sql create mode 100644 install-new/upgrade/sql/1.4.0.10.sql create mode 100644 install-new/upgrade/sql/1.4.0.11.sql create mode 100644 install-new/upgrade/sql/1.4.0.12.sql create mode 100644 install-new/upgrade/sql/1.4.0.13.sql create mode 100644 install-new/upgrade/sql/1.4.0.14.sql create mode 100644 install-new/upgrade/sql/1.4.0.15.sql create mode 100644 install-new/upgrade/sql/1.4.0.16.sql create mode 100644 install-new/upgrade/sql/1.4.0.17.sql create mode 100644 install-new/upgrade/sql/1.4.0.2.sql create mode 100644 install-new/upgrade/sql/1.4.0.3.sql create mode 100644 install-new/upgrade/sql/1.4.0.4.sql create mode 100644 install-new/upgrade/sql/1.4.0.5.sql create mode 100644 install-new/upgrade/sql/1.4.0.6.sql create mode 100644 install-new/upgrade/sql/1.4.0.7.sql create mode 100644 install-new/upgrade/sql/1.4.0.8.sql create mode 100644 install-new/upgrade/sql/1.4.0.9.sql create mode 100644 install-new/upgrade/sql/1.4.1.0.sql create mode 100644 install-new/upgrade/sql/1.4.2.0.sql create mode 100644 install-new/upgrade/sql/1.4.2.1.sql create mode 100644 install-new/upgrade/sql/1.4.2.2.sql create mode 100644 install-new/upgrade/sql/1.4.2.3.sql create mode 100644 install-new/upgrade/sql/1.4.2.4.sql create mode 100644 install-new/upgrade/sql/1.4.2.5.sql create mode 100644 install-new/upgrade/sql/1.4.3.0.sql create mode 100644 install-new/upgrade/sql/1.4.4.0.sql create mode 100644 install-new/upgrade/sql/1.4.4.1.sql create mode 100644 install-new/upgrade/sql/1.4.5.0.sql create mode 100644 install-new/upgrade/sql/1.4.5.1.sql create mode 100644 install-new/upgrade/sql/1.5.0.0.sql create mode 100644 install-new/upgrade/sql/1.5.0.1.sql create mode 100644 install-new/upgrade/xml/checkConfig.php create mode 100644 install-new/upgrade/xml/checkDB.php create mode 100644 install-new/upgrade/xml/checkMail.php create mode 100644 install-new/upgrade/xml/checkShopInfos.php create mode 100644 install-new/upgrade/xml/createDB.php create mode 100644 install-new/upgrade/xml/doUpgrade.php create mode 100644 install-new/upgrade/xml/getVersionFromDb.php create mode 100644 install-new/upgrade/xml/index.php diff --git a/install-new/README.txt b/install-new/README.txt new file mode 100644 index 000000000..32f78359d --- /dev/null +++ b/install-new/README.txt @@ -0,0 +1,67 @@ +2007-2011 PrestaShop + +NOTICE OF LICENSE + +This source file is subject to the Open Software License (OSL 3.0) +that is bundled with this package in the file LICENSE.txt. +It is also available through the world-wide-web at this URL: +http://opensource.org/licenses/osl-3.0.php +If you did not receive a copy of the license and are unable to +obtain it through the world-wide-web, please send an email +to license@prestashop.com so we can send you a copy immediately. + +DISCLAIMER + +Do not edit or add to this file if you wish to upgrade PrestaShop to newer +versions in the future. If you wish to customize PrestaShop for your +needs please refer to http://www.prestashop.com for more information. + +@author PrestaShop SA +@copyright 2007-2011 PrestaShop SA +@license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +International Registered Trademark & Property of PrestaShop SA + +PREPARATION +=========== + +To install PrestaShop, you need a remote web server or on your computer (MAMP), with access to a database like MySQL. +You'll need access to phpMyAdmin to create a database and to indicate the information in the database in the installer. + +If you do not host and unable to create your store, we offer a turnkey store, which lets you create your online store in less than 10 minutes without any technical knowledge. +We invite you to visit: + http://www.prestabox.com/ + +INSTALLATION +============ + +Simply go to your PrestaShop web directory and use installer :-) + +If you have any PHP error, perhaps you don't have PHP5 or you need to activate it on your web host. +Please go to our forum to find pre-installation settings (PHP 5, htaccess) for certain hosting services (1&1, Free, Lycos, OVH, Infomaniak, Amen, GoDaddy, etc). + +English webhost specifics settings : + http://www.prestashop.com/forums/viewthread/2946/installation_configuration___upgrade/preinstallation_settings_php_5_htaccess_for_certain_hosting_services + +If you don't find any solution to launch installer, please post on our forum : + http://www.prestashop.com/forums/viewforum/7/installation_configuration___upgrade + +There are always solutions for your issues ;-) + +DOCUMENTATION +============= + +For any extra documentation (how-to), please read our wiki : + http://www.prestashop.com/wiki/ + +FORUMS +====== + +You can also discute, help and contribute with PrestaShop community on our forums : + http://www.prestashop.com/forums/ + +Thanks for downloading and using PrestaShop e-commerce open-source solution ! + +========================== += The PrestaTeam' = += www.PrestaShop.com = +========================== diff --git a/install-new/classes/controllerHttp.php b/install-new/classes/controllerHttp.php new file mode 100644 index 000000000..1cb507103 --- /dev/null +++ b/install-new/classes/controllerHttp.php @@ -0,0 +1,410 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +abstract class InstallControllerHttp +{ + /** + * @var array List of installer steps + */ + protected static $steps = array('welcome', 'system', 'database', 'configure', 'process'); + + protected static $instances = array(); + + /** + * @var string Current step + */ + public $step; + + /** + * @var array List of errors + */ + public $errors = array(); + + /** + * @var InstallController + */ + public $controller; + + /** + * @var InstallSession + */ + public $session; + + /** + * @var InstallLanguages + */ + public $language; + + /** + * @var bool If false, disable next button access + */ + public $next_button = true; + + /** + * @var InstallAbstractModel + */ + public $model; + + /** + * @var array Magic vars + */ + protected $__vars = array(); + + /** + * Process form to go to next step + */ + abstract public function processNextStep(); + + /** + * Validate current step + */ + abstract public function validate(); + + /** + * Display current step view + */ + abstract public function display(); + + final public static function execute() + { + // Include all controllers + foreach (self::$steps as $step) + { + if (!file_exists(_PS_INSTALL_CONTROLLERS_PATH_.'http/'.$step.'.php')) + throw new PrestashopInstallerException("Controller file 'http/{$step}.php' not found"); + + require_once _PS_INSTALL_CONTROLLERS_PATH_.'http/'.$step.'.php'; + $classname = 'InstallControllerHttp'.$step; + self::$instances[$step] = new $classname($step); + } + + $session = InstallSession::getInstance(); + if (!$session->last_step || !in_array($session->last_step, self::$steps)) + $session->last_step = self::$steps[0]; + + // Get current step (check first if step is changed, then take it from session) + if (Tools::getValue('step')) + { + $current_step = Tools::getValue('step'); + $session->step = $current_step; + } + else + $current_step = (isset($session->step)) ? $session->step : self::$steps[0]; + + if (!in_array($current_step, self::$steps)) + $current_step = self::$steps[0]; + + // Validate all steps until current step. If a step is not valid, use it as current step. + foreach (self::$steps as $check_step) + { + // Do not validate current step + if ($check_step == $current_step) + break; + + if (!self::$instances[$check_step]->validate()) + { + $current_step = $check_step; + $session->step = $current_step; + $session->last_step = $current_step; + break; + } + } + + // Submit form to go to next step + if (Tools::getValue('submitNext')) + { + self::$instances[$current_step]->processNextStep(); + + // If current step is validated, let's go to next step + if (self::$instances[$current_step]->validate()) + $current_step = self::$instances[$current_step]->findNextStep(); + $session->step = $current_step; + + // Change last step + if (self::getStepOffset($current_step) > self::getStepOffset($session->last_step)) + $session->last_step = $current_step; + } + // Go to previous step + else if (Tools::getValue('submitPrevious') && $current_step != self::$steps[0]) + { + $current_step = self::$instances[$current_step]->findPreviousStep($current_step); + $session->step = $current_step; + } + + self::$instances[$current_step]->process(); + self::$instances[$current_step]->display(); + } + + final public function __construct($step) + { + $this->step = $step; + $this->session = InstallSession::getInstance(); + + // Set current language + $this->language = InstallLanguages::getInstance(); + $lang = (isset($this->session->lang)) ? $this->session->lang : 'en'; + if (!in_array($lang, $this->language->getIsoList())) + $lang = 'en'; + $this->language->setLanguage($lang); + + $this->init(); + } + + /** + * Initialize model + */ + public function init() + { + } + + public function process() + { + } + + /** + * Get steps list + * + * @return array + */ + public function getSteps() + { + return self::$steps; + } + + public function getLastStep() + { + return $this->session->last_step; + } + + /** + * Find offset of a step by name + * + * @param string $step Step name + * @return int + */ + static public function getStepOffset($step) + { + static $flip = null; + + if (is_null($flip)) + $flip = array_flip(self::$steps); + return $flip[$step]; + } + + /** + * Make a HTTP redirection to a step + * + * @param string $step + */ + public function redirect($step) + { + header('location: index.php?step='.$step); + exit; + } + + /** + * Get translated string + * + * @param string $str String to translate + * @param ... All other params will be used with sprintf + * @return string + */ + public function l($str) + { + return call_user_func_array(array($this->language, 'l'), func_get_args()); + } + + /** + * Find previous step + * + * @param string $step + */ + public function findPreviousStep() + { + return (isset(self::$steps[$this->getStepOffset($this->step) - 1])) ? self::$steps[$this->getStepOffset($this->step) - 1] : false; + } + + /** + * Find next step + * + * @param string $step + */ + public function findNextStep() + { + return (isset(self::$steps[$this->getStepOffset($this->step) + 1])) ? self::$steps[$this->getStepOffset($this->step) + 1] : false; + } + + /** + * Check if current step is first step in list of steps + * + * @return bool + */ + public function isFirstStep() + { + return self::getStepOffset($this->step) == 0; + } + + /** + * Check if current step is last step in list of steps + * + * @return bool + */ + public function isLastStep() + { + return self::getStepOffset($this->step) == (count(self::$steps) - 1); + } + + /** + * Check is given step is already finished + * + * @param string $step + * @return bool + */ + public function isStepFinished($step) + { + return self::getStepOffset($step) < self::getStepOffset($this->getLastStep()); + } + + /** + * Get telephone used for this language + * + * @return string + */ + public function getPhone() + { + return $this->language->getInformation('phone', false); + } + + /** + * Get link to documentation for this language + * + * Enter description here ... + */ + public function getDocumentationLink() + { + return $this->language->getInformation('documentation'); + } + + /** + * Get link to forum for this language + * + * Enter description here ... + */ + public function getForumLink() + { + return $this->language->getInformation('forum'); + } + + /** + * Get link to blog for this language + * + * Enter description here ... + */ + public function getBlogLink() + { + return $this->language->getInformation('blog'); + } + + /** + * Get link to support for this language + * + * Enter description here ... + */ + public function getSupportLink() + { + return $this->language->getInformation('support'); + } + + /** + * Send AJAX response in JSON format {success: bool, message: string} + * + * @param bool $success + * @param string $message + */ + public function ajaxJsonAnswer($success, $message = '') + { + die(Tools::jsonEncode(array( + 'success' => (bool)$success, + 'message' => $message, + ))); + } + + /** + * Display a template + * + * @param string $template Template name + * @param bool $get_output Is true, return template html + * @return string + */ + public function displayTemplate($template, $get_output = false, $path = null) + { + if (!$path) + $path = _PS_INSTALL_PATH_.'theme/views/'; + + if (!file_exists($path.$template.'.phtml')) + throw new PrestashopInstallerException("Template '{$template}.phtml' not found"); + + if ($get_output) + ob_start(); + + include($path.$template.'.phtml'); + + if ($get_output) + { + $content = ob_get_contents(); + ob_end_clean(); + return $content; + } + } + + public function &__get($varname) + { + if (isset($this->__vars[$varname])) + $ref = &$this->__vars[$varname]; + else + { + $null = null; + $ref = &$null; + } + return $ref; + } + + public function __set($varname, $value) + { + $this->__vars[$varname] = $value; + } + + public function __isset($varname) + { + return isset($this->__vars[$varname]); + } + + public function __unset($varname) + { + unset($this->__vars[$varname]); + } +} diff --git a/install-new/classes/exception.php b/install-new/classes/exception.php new file mode 100644 index 000000000..5776fc398 --- /dev/null +++ b/install-new/classes/exception.php @@ -0,0 +1,30 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +class PrestashopInstallerException extends PrestashopException +{ +} diff --git a/install-new/classes/fixtures.php b/install-new/classes/fixtures.php new file mode 100644 index 000000000..8c6f77065 --- /dev/null +++ b/install-new/classes/fixtures.php @@ -0,0 +1,1156 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +abstract class InstallFixtures +{ + /** + * @var array List of errors logged during fixtures process + */ + private $errors = array(); + + /** + * @var InstallLanguages + */ + protected $language; + + /** + * @var Db + */ + protected $db; + + /** + * @var array List of installed languages + */ + protected $installed_languages = array(); + + /** + * @var array Store created ids for each object with ID argument + */ + protected $ids = array(); + + /** + * Process fixtures installation + */ + abstract protected function install(); + + public function __construct(InstallLanguages $language) + { + require_once _PS_ROOT_DIR_.'/images.inc.php'; + + $this->db = Db::getInstance(); + $this->language = $language; + Db::getInstance()->delete('prefix_manufacturer'); + Db::getInstance()->delete('prefix_manufacturer_lang'); + Db::getInstance()->delete('prefix_supplier'); + Db::getInstance()->delete('prefix_supplier_lang'); + Db::getInstance()->delete('prefix_address'); + Db::getInstance()->delete('prefix_product'); + Db::getInstance()->delete('prefix_product_lang'); + Db::getInstance()->delete('prefix_category', 'id_category <> 1'); + Db::getInstance()->delete('prefix_category_product'); + Db::getInstance()->delete('prefix_category_lang', 'id_category <> 1'); + Db::getInstance()->delete('prefix_scene'); + Db::getInstance()->delete('prefix_scene_lang'); + Db::getInstance()->delete('prefix_scene_products'); + Db::getInstance()->delete('prefix_scene_category'); + Db::getInstance()->delete('prefix_attribute_group'); + Db::getInstance()->delete('prefix_attribute_group_lang'); + Db::getInstance()->delete('prefix_attribute'); + Db::getInstance()->delete('prefix_attribute_lang'); + Db::getInstance()->delete('prefix_product_attribute'); + Db::getInstance()->delete('prefix_product_attribute_combination'); + Db::getInstance()->delete('prefix_product_attribute_image'); + Db::getInstance()->delete('prefix_order_message'); + Db::getInstance()->delete('prefix_order_message_lang'); + Db::getInstance()->delete('prefix_feature'); + Db::getInstance()->delete('prefix_feature_lang'); + Db::getInstance()->delete('prefix_feature_value'); + Db::getInstance()->delete('prefix_feature_value_lang'); + Db::getInstance()->delete('prefix_feature_product'); + Db::getInstance()->delete('prefix_store'); + Db::getInstance()->delete('prefix_image'); + Db::getInstance()->delete('prefix_image_lang'); + Db::getInstance()->delete('prefix_tag'); + Db::getInstance()->delete('prefix_alias'); + Db::getInstance()->delete('prefix_customer'); + Db::getInstance()->delete('prefix_guest'); + Db::getInstance()->delete('prefix_connections'); + Db::getInstance()->delete('prefix_customer_group'); + Db::getInstance()->delete('prefix_cart'); + Db::getInstance()->delete('prefix_cart_product'); + Db::getInstance()->delete('prefix_orders'); + Db::getInstance()->delete('prefix_order_detail'); + Db::getInstance()->delete('prefix_order_history'); + Db::getInstance()->delete('prefix_range_price'); + Db::getInstance()->delete('prefix_range_weight'); + Db::getInstance()->delete('prefix_delivery'); + Db::getInstance()->delete('prefix_specific_price'); + foreach (Language::getLanguages(false) as $lang) + $this->installed_languages[$lang['id_lang']] = $lang['iso_code']; + } + + /** + * Log an error during fixtures process + */ + protected function setError() + { + } + + /** + * Get list of errors + * + * @return array + */ + public function getErrors() + { + return $this->errors; + } + + /** + * Install fixtures + */ + public function process() + { + $this->loadData(); + $this->install(); + + Search::indexation(true); + } + + protected function getId($entity, $identifier) + { + return isset($this->ids[$entity.':'.$identifier]) ? $this->ids[$entity.':'.$identifier] : 0; + } + + protected function hydrateEntity(ObjectModel $object, array $data, array $mapper) + { + $hydrate_data = $this->getHydratedData($data, $mapper); + $object->hydrate($hydrate_data); + } + + protected function getHydratedData(array $data, array $mapper) + { + $hydrate_data = array(); + foreach ($mapper as $key => $info) + { + $value = (array_key_exists($key, $data)) ? $data[$key] : $info['default']; + switch ($info['type']) + { + case 'bool': + if (strtolower($value) == 'true') + $value = true; + else if (strtolower($value) == 'false') + $value = false; + $hydrate_data[$key] = (bool)$value; + break; + + case 'int': + $hydrate_data[$key] = (int)$value; + break; + + case 'float': + $hydrate_data[$key] = (float)$value; + break; + + case 'string': + $hydrate_data[$key] = (string)$value; + break; + + case 'date': + if (!Validate::isDateFormat($value)) + $value = '0000-00-00'; + $hydrate_data[$key] = $value; + break; + + case 'relation': + if (!isset($data[$info['field']]) && isset($data[$key])) + $hydrate_data[$info['field']] = $this->getId($info['entity'], $value); + break; + + case 'relation_table': + if (!isset($data[$info['field']]) && isset($data[$key])) + $hydrate_data[$info['field']] = $this->db->getValue(' + SELECT '.$info['field'].' + FROM '._DB_PREFIX_.$info['table'].' + WHERE '.$info['target_field'].' = \''.pSQL($data[$key]).'\' + '); + } + } + + return $hydrate_data; + } + + protected function fillTranslation($entity, $id, $tag) + { + $translations = array(); + foreach ($this->installed_languages as $id_lang => $iso) + $translations[$id_lang] = str_replace(array('\n', '\r'), array("\n", "\r"), $this->language->getFixtureTranslation($iso, $entity.'_'.$id.'_'.$tag)); + return $translations; + } + + protected function createEntityImages($entity, $id, $entity_id, $image_type, $target_folder) + { + return; + $path = _PS_INSTALL_FIXTURES_PATH_.'apple/img/'.$entity.'/'; + $dst_path = _PS_INSTALL_FIXTURES_PATH_.'apple/img/TESTS/'.$target_folder.'/'; + if (!@copy($path.$id.'.jpg', $dst_path.$entity_id.'.jpg')) + { + $this->setError($this->language->l('Cannot create image "%s"', $id)); + return; + } + @chmod($dst_path.$entity_id.'.jpg', 0644); + + $types = ImageType::getImagesTypes($image_type); + foreach ($types as $type) + { + $subpath = ''; + if ($type['name'] == 'thumb_scene') + $subpath = 'thumbs/'; + + $origin_file = $path.$subpath.$id.'-'.$type['name'].'.jpg'; + $target_file = $dst_path.$subpath.$entity_id.'-'.$type['name'].'.jpg'; + + // Test if dest folder is writable + if (!is_writable(dirname($target_file))) + $this->setError($this->language->l('Cannot create image "%1$s" (bad permissions on folder "%2$s")', $id.'-'.$type['name'], dirname($target_file))); + // If a file named folder/entity-type.jpg exists just copy it, this is an optimisation in order to prevent to much resize + else if (file_exists($origin_file)) + { + if (!@copy($origin_file, $target_file)) + $this->setError($this->language->l('Cannot create image "%s"', $id.'-'.$type['name'])); + @chmod($target_file, 0644); + } + // Resize the image if no cache was prepared in fixtures + else if (!imageResize($path.$id.'.jpg', $target_file, $type['width'], $type['height'])) + $this->setError($this->language->l('Cannot create image "%s"', $id.'-'.$type['name'])); + } + } + + protected function createProductImages(Image $image, $id, $id_product) + { + return; + $path = _PS_INSTALL_FIXTURES_PATH_.'apple/img/product/'; + $dst_path = $image->getPathForCreation(); + //$dst_path = str_replace(_PS_ROOT_DIR_.'/img/', _PS_INSTALL_FIXTURES_PATH_.'apple/img/TESTS/', $dst_path); + if (!@copy($path.$id.'.jpg', $dst_path.'.'.$image->image_format)) + { + $this->setError($this->language->l('Cannot create image "%s"', $id)); + return; + } + @chmod($dst_path.'.'.$image->image_format, 0644); + + $types = ImageType::getImagesTypes('products'); + foreach ($types as $type) + { + $origin_file = $path.$id.'-'.$type['name'].'.jpg'; + $target_file = $dst_path.'-'.$type['name'].'.'.$image->image_format; + + // Test if dest folder is writable + if (!is_writable(dirname($target_file))) + $this->setError($this->language->l('Cannot create image "%1$s" (bad permissions on folder "%2$s")', $id.'-'.$type['name'], dirname($target_file))); + // If a file named folder/entity-type.jpg exists just copy it, this is an optimisation in order to prevent to much resize + else if (file_exists($origin_file)) + { + if (!@copy($origin_file, $target_file)) + $this->setError($this->language->l('Cannot create image "%s"', $id.'-'.$type['name'])); + @chmod($target_file, 0644); + } + // Resize the image if no cache was prepared in fixtures + else if (!imageResize($path.$id.'.jpg', $target_file, $type['width'], $type['height'])) + $this->setError($this->language->l('Cannot create image "%s"', $id.'-'.$type['name'])); + } + } + + protected function loadData() + { + $this->loadEntity('manufacturer'); + $this->loadEntity('supplier'); + $this->loadEntity('alias'); + $this->loadEntity('ordermessage'); + $this->loadEntity('carrier'); + $this->loadEntity('range'); + $this->loadEntity('delivery'); + $this->loadEntity('customer'); + $this->loadEntity('guest'); + $this->loadEntity('address'); + $this->loadEntity('store'); + $this->loadEntity('category'); + $this->loadEntity('feature'); + $this->loadEntity('featurevalue'); + $this->loadEntity('attributegroup'); + $this->loadEntity('attribute'); + $this->loadEntity('product'); + $this->loadEntity('specificprice'); + $this->loadEntity('image'); + $this->loadEntity('productattribute'); + $this->loadEntity('scene'); + $this->loadEntity('cart'); + $this->loadEntity('order'); + } + + protected function loadEntity($entity) + { + $entity_file = _PS_INSTALL_FIXTURES_PATH_.'apple/data/'.$entity.'.xml'; + if (!file_exists($entity_file)) + return; + + $xml = simplexml_load_file($entity_file); + foreach ($xml->$entity as $node) + { + // Entity identifier + $identifier = (string)$node['id']; + + // Entity data + $data = array(); + foreach ($node->attributes() as $attr_name => $attr_value) + $data[$attr_name] = (string)$attr_value; + + foreach ($node->children() as $child_node) + $data[$child_node->getName()] = $this->parseNode($child_node); + + $method = 'Install'.ucfirst($entity); + $this->$method($identifier, $data); + } + } + + protected function parseNode(SimpleXMLElement $node) + { + $children = $node->children(); + if (!$children) + return (string)$node; + else + { + $data = array(); + foreach ($node->attributes() as $k => $v) + $data[$k] = (string)$v; + + foreach ($children as $child) + if ($child->getName() == 'item') + $data[] = $this->parseNode($child); + else + $data[$child->getName()] = $this->parseNode($child); + return $data; + } + } + + protected function installGenericEntity($classname, $identifier, array $data, array $mapper, array $lang_fields = array()) + { + $entity = strtolower($classname); + $object = new $classname(); + $this->hydrateEntity($object, $data, $mapper); + + foreach ($lang_fields as $field) + $object->$field = $this->fillTranslation($entity, $identifier, $field); + + if (!$object->add()) + { + $this->setError($this->language->l('Cannot create entity "%s" with identifier "%s"', $entity, $identifier)); + return false; + } + + $this->ids[$entity.':'.$identifier] = $object->id; + return $object; + } + + protected function installManufacturer($identifier, array $data) + { + $object = $this->installGenericEntity( + 'Manufacturer', + $identifier, + $data, + array( + 'name' => array('type' => 'string', 'default' => ''), + 'active' => array('type' => 'bool', 'default' => true), + ), + array('description', 'short_description', 'meta_description', 'meta_title', 'meta_keywords') + ); + + if ($object) + $this->createEntityImages('manufacturer', $identifier, $object->id, 'manufacturers', 'm'); + } + + protected function installSupplier($identifier, array $data) + { + $object = $this->installGenericEntity( + 'Supplier', + $identifier, + $data, + array( + 'name' => array('type' => 'string', 'default' => ''), + 'active' => array('type' => 'bool', 'default' => true), + ), + array('description', 'short_description', 'meta_description', 'meta_title', 'meta_keywords') + ); + + if ($object) + $this->createEntityImages('supplier', $identifier, $object->id, 'suppliers', 'su'); + } + + protected function installAlias($identifier, array $data) + { + $object = $this->installGenericEntity( + 'Alias', + $identifier, + $data, + array( + 'alias' => array('type' => 'string', 'default' => ''), + 'search' => array('type' => 'string', 'default' => ''), + 'active' => array('type' => 'bool', 'default' => true), + ) + ); + } + + protected function installOrderMessage($identifier, array $data) + { + $object = $this->installGenericEntity( + 'OrderMessage', + $identifier, + $data, + array(), + array('name', 'message') + ); + } + + protected function installCarrier($identifier, array $data) + { + $object = $this->installGenericEntity( + 'Carrier', + $identifier, + $data, + array( + 'id_tax_rules_group' => array('type' => 'int', 'default' => 0), + 'name' => array('type' => 'string', 'default' => ''), + 'shipping_handling' => array('type' => 'bool', 'default' => false), + 'is_free' => array('type' => 'bool', 'default' => false), + 'active' => array('type' => 'bool', 'default' => true), + ), + array('delay') + ); + + if ($object) + { + // Add zones to carrier + if (isset($data['zones'])) + { + foreach ($data['zones'] as $zone) + $object->addZone(Zone::getIdByName($zone)); + } + + // Add carrier to groups + if (isset($data['groups'])) + { + foreach ($data['groups'] as $id_group) + $this->db->autoExecute(_DB_PREFIX_.'carrier_group', array( + 'id_carrier' => (int)$object->id, + 'id_group' => (int)$id_group, + ), 'INSERT'); + } + } + } + + protected function installCustomer($identifier, array $data) + { + if (isset($data['passwd'])) + $data['passwd'] = Tools::encrypt($data['passwd']); + + $object = $this->installGenericEntity( + 'Customer', + $identifier, + $data, + array( + 'firstname' => array('type' => 'string', 'default' => ''), + 'lastname' => array('type' => 'string', 'default' => ''), + 'email' => array('type' => 'string', 'default' => ''), + 'passwd' => array('type' => 'string', 'default' => ''), + 'birthday' => array('type' => 'date', 'default' => '0000-00-00'), + 'id_gender' => array('type' => 'int', 'default' => 1), + 'id_default_group' => array('type' => 'int', 'default' => 1), + 'is_guest' => array('type' => 'bool', 'default' => false), + 'active' => array('type' => 'bool', 'default' => true), + ) + ); + } + + protected function installGuest($identifier, array $data) + { + $object = $this->installGenericEntity( + 'Guest', + $identifier, + $data, + array( + 'id_operating_system' => array('type' => 'int', 'default' => 0), + 'operating_system' => array('type' => 'relation_table', 'field' => 'id_operating_system', 'table' => 'operating_system', 'target_field' => 'name', 'default' => ''), + 'id_web_browser' => array('type' => 'int', 'default' => 0), + 'web_browser' => array('type' => 'relation_table', 'field' => 'id_web_browser', 'table' => 'web_browser', 'target_field' => 'name', 'default' => ''), + 'id_customer' => array('type' => 'int', 'default' => 0), + 'customer' => array('type' => 'relation', 'field' => 'id_customer', 'entity' => 'customer', 'default' => ''), + 'screen_resolution_x' => array('type' => 'int', 'default' => 0), + 'screen_resolution_y' => array('type' => 'int', 'default' => 0), + 'screen_color' => array('type' => 'int', 'default' => 0), + 'javascript' => array('type' => 'bool', 'default' => true), + 'sun_java' => array('type' => 'bool', 'default' => false), + 'adobe_flash' => array('type' => 'bool', 'default' => false), + 'adobe_director' => array('type' => 'bool', 'default' => false), + 'apple_quicktime' => array('type' => 'bool', 'default' => false), + 'real_player' => array('type' => 'bool', 'default' => false), + 'windows_media' => array('type' => 'bool', 'default' => false), + 'accept_language' => array('type' => 'string', 'default' => ''), + 'id_shop' => array('type' => 'int', 'default' => Context::getContext()->shop->id), + ) + ); + + if (isset($data['connections']) && is_array($data['connections'])) + { + foreach ($data['connections'] as $connection_data) + { + if (isset($connection_data['id'])) + { + $connection_data['id_guest'] = $object->id; + $this->installConnection($connection_data['id'], $connection_data); + } + } + } + } + + protected function installConnection($identifier, array $data) + { + if (isset($data['ip_address'])) + $data['ip_address'] = ip2long($data['ip_address']); + + $object = $this->installGenericEntity( + 'Connection', + $identifier, + $data, + array( + 'id_guest' => array('type' => 'int', 'default' => 0), + 'guest' => array('type' => 'relation', 'field' => 'id_guest', 'entity' => 'guest', 'default' => ''), + 'id_page' => array('type' => 'int', 'default' => 0), + 'ip_address' => array('type' => 'string', 'default' => ''), + 'http_referer' => array('type' => 'string', 'default' => ''), + 'id_shop' => array('type' => 'int', 'default' => Context::getContext()->shop->id), + 'id_group_shop' => array('type' => 'int', 'default' => Context::getContext()->shop->getGroupID()), + ) + ); + } + + protected function installAddress($identifier, array $data) + { + if (isset($data['country'])) + $data['id_country'] = Country::getByIso($data['country']); + + if (isset($data['state'])) + { + $state = $data['state']; + $data['id_state'] = State::getIdByName($state); + if (!$data['id_state']) + $data['id_state'] = State::getIdByIso($state); + } + + $object = $this->installGenericEntity( + 'Address', + $identifier, + $data, + array( + 'firstname' => array('type' => 'string', 'default' => ''), + 'lastname' => array('type' => 'string', 'default' => ''), + 'address1' => array('type' => 'string', 'default' => ''), + 'address2' => array('type' => 'string', 'default' => ''), + 'postcode' => array('type' => 'string', 'default' => ''), + 'city' => array('type' => 'string', 'default' => ''), + 'phone' => array('type' => 'string', 'default' => ''), + 'alias' => array('type' => 'string', 'default' => ''), + 'company' => array('type' => 'string', 'default' => ''), + 'id_country' => array('type' => 'int', 'default' => 0), + 'id_state' => array('type' => 'int', 'default' => 0), + 'id_customer' => array('type' => 'int', 'default' => 0), + 'customer' => array('type' => 'relation', 'field' => 'id_customer', 'entity' => 'customer', 'default' => ''), + 'id_manufacturer' =>array('type' => 'int', 'default' => 0), + 'manufacturer' => array('type' => 'relation', 'field' => 'id_manufacturer', 'entity' => 'manufacturer', 'default' => ''), + 'id_supplier' => array('type' => 'int', 'default' => 0), + 'supplier' => array('type' => 'relation', 'field' => 'id_supplier', 'entity' => 'supplier', 'default' => ''), + 'active' => array('type' => 'bool', 'default' => true), + ) + ); + } + + protected function installStore($identifier, array $data) + { + if (isset($data['country'])) + $data['id_country'] = Country::getByIso($data['country']); + + if (isset($data['state'])) + { + $state = $data['state']; + $data['id_state'] = State::getIdByName($state); + if (!$data['id_state']) + $data['id_state'] = State::getIdByIso($state); + } + + if (isset($data['hours']) && is_array($data['hours'])) + $data['hours'] = serialize($data['hours']); + + $object = $this->installGenericEntity( + 'Store', + $identifier, + $data, + array( + 'id_country' => array('type' => 'int', 'default' => 0), + 'id_state' => array('type' => 'int', 'default' => 0), + 'name' => array('type' => 'string', 'default' => ''), + 'address1' => array('type' => 'string', 'default' => ''), + 'address2' => array('type' => 'string', 'default' => ''), + 'city' => array('type' => 'string', 'default' => ''), + 'postcode' => array('type' => 'string', 'default' => ''), + 'latitude' => array('type' => 'float', 'default' => 0.00), + 'longitude' => array('type' => 'float', 'default' => 0.00), + 'hours' => array('type' => 'string', 'default' => ''), + 'phone' => array('type' => 'string', 'default' => ''), + 'fax' => array('type' => 'string', 'default' => ''), + 'email' => array('type' => 'string', 'default' => ''), + 'note' => array('type' => 'string', 'default' => ''), + 'active' => array('type' => 'bool', 'default' => true), + ) + ); + } + + protected function installCategory($identifier, array $data) + { + $object = $this->installGenericEntity( + 'Category', + $identifier, + $data, + array( + 'id_parent' => array('type' => 'int', 'default' => 1), + 'parent' => array('type' => 'relation', 'field' => 'id_parent', 'entity' => 'category', 'default' => 0), + 'active' => array('type' => 'bool', 'default' => true), + ), + array('name', 'description', 'link_rewrite', 'meta_title', 'meta_keyword', 'meta_description') + ); + + $this->createEntityImages('category', $identifier, $object->id, 'categories', 'c'); + } + + protected function installFeature($identifier, array $data) + { + $object = $this->installGenericEntity( + 'Feature', + $identifier, + $data, + array(), + array('name') + ); + } + + protected function installFeatureValue($identifier, array $data) + { + $object = $this->installGenericEntity( + 'FeatureValue', + $identifier, + $data, + array( + 'id_feature' => array('type' => 'int', 'default' => 1), + 'feature' => array('type' => 'relation', 'field' => 'id_feature', 'entity' => 'feature', 'default' => 0), + 'custom' => array('type' => 'bool', 'default' => false), + ), + array('value') + ); + } + + protected function installAttributeGroup($identifier, array $data) + { + $object = $this->installGenericEntity( + 'AttributeGroup', + $identifier, + $data, + array( + 'group_type' => array('type' => 'string', 'default' => 'select'), + 'is_color_group' => array('type' => 'bool', 'default' => false), + ), + array('name', 'public_name') + ); + } + + protected function installAttribute($identifier, array $data) + { + $object = $this->installGenericEntity( + 'Attribute', + $identifier, + $data, + array( + 'id_attribute_group' => array('type' => 'int', 'default' => 1), + 'attribute_group' => array('type' => 'relation', 'field' => 'id_attribute_group', 'entity' => 'attributegroup', 'default' => 0), + 'color' => array('type' => 'string', 'default' => ''), + ), + array('name', 'public_name') + ); + } + + protected function installProduct($identifier, array $data) + { + $object = $this->installGenericEntity( + 'Product', + $identifier, + $data, + array( + 'id_supplier' => array('type' => 'int', 'default' => 0), + 'supplier' => array('type' => 'relation', 'field' => 'id_supplier', 'entity' => 'supplier', 'default' => 0), + 'id_manufacturer' => array('type' => 'int', 'default' => 0), + 'manufacturer' => array('type' => 'relation', 'field' => 'id_manufacturer', 'entity' => 'manufacturer', 'default' => 0), + 'id_tax_rules_group' => array('type' => 'int', 'default' => 0), + 'id_category_default' =>array('type' => 'int', 'default' => 1), + 'category_default' => array('type' => 'relation', 'field' => 'id_category_default', 'entity' => 'category', 'default' => 0), + 'on_sale' => array('type' => 'int', 'default' => 0), + 'online_only' => array('type' => 'int', 'default' => 0), + 'ecotax' => array('type' => 'float', 'default' => 0.00), + 'price' => array('type' => 'float', 'default' => 0.00), + 'wholesale_price' => array('type' => 'float', 'default' => 0.00), + 'ean13' => array('type' => 'string', 'default' => ''), + 'reference' => array('type' => 'string', 'default' => ''), + 'supplier_reference' => array('type' => 'string', 'default' => ''), + 'weight' => array('type' => 'int', 'default' => 0), + 'out_of_stock' => array('type' => 'int', 'default' => 2), + 'quantity_discount' => array('type' => 'int', 'default' => 0), + 'customizable' => array('type' => 'int', 'default' => 0), + 'uploadable_files' => array('type' => 'int', 'default' => 0), + 'text_fields' => array('type' => 'int', 'default' => 0), + 'available_date' => array('type' => 'date', 'default' => '0000-00-00'), + 'indexed' => array('type' => 'bool', 'default' => true), + 'active' => array('type' => 'bool', 'default' => true), + ), + array('description', 'description_short', 'link_rewrite', 'meta_description', 'meta_keywords', 'meta_title', 'name', 'available_now', 'available_later') + ); + + if ($object) + { + // Add product to categories + if (isset($data['categories']) && is_array($data['categories'])) + { + $categories = array(); + foreach ($data['categories'] as $category) + $categories = (is_array($category)) ? $this->getId('category', $category['id']) : (int)$category; + $object->addToCategories($categories); + } + + // Add features to the product + if (isset($data['features']) && is_array($data['features'])) + { + static $cache_features = array(); + + foreach ($data['features'] as $id_feature_value) + { + $id_feature_value = (is_array($id_feature_value)) ? $this->getId('featurevalue', $id_feature_value['id']) : (int)$id_feature_value; + if (!isset($cache_features[$id_feature_value])) + $cache_features[$id_feature_value] = $this->db->getValue(' + SELECT id_feature + FROM '._DB_PREFIX_.'feature_value + WHERE id_feature_value = '.(int)$id_feature_value + ); + Product::addFeatureProductImport($object->id, $cache_features[$id_feature_value], $id_feature_value); + } + } + + // Add specific price + if (isset($data['specific_prices']) && is_array($data['specific_prices'])) + { + foreach ($data['specific_prices'] as $price_data) + { + $price_data['id_product'] = $object->id; + $this->installSpecificPrice($price_data['id'], $price_data); + } + } + + // Add images + if (isset($data['images']) && is_array($data['images'])) + { + foreach ($data['images'] as $image_data) + { + $image_data['id_product'] = $object->id; + $this->installImage($image_data['id'], $image_data); + } + } + + // Add combinations + if (isset($data['combinations']) && is_array($data['combinations'])) + { + foreach ($data['combinations'] as $combination_data) + { + $combination_data['id_product'] = $object->id; + $this->installCombination($combination_data['id'], $combination_data); + } + } + } + } + + + protected function installSpecificPrice($identifier, array $data) + { + if (isset($data['country'])) + $data['id_country'] = Country::getByIso($data['country']); + + if (isset($data['currency'])) + $data['id_currency'] = Currency::getIdByIsoCode($data['currency']); + + $object = $this->installGenericEntity( + 'SpecificPrice', + $identifier, + $data, + array( + 'id_product' => array('type' => 'int', 'default' => 0), + 'product' => array('type' => 'relation', 'field' => 'id_product', 'entity' => 'product', 'default' => 0), + 'id_shop' => array('type' => 'int', 'default' => 0), + 'id_currency' => array('type' => 'int', 'default' => 0), + 'id_country' => array('type' => 'int', 'default' => 0), + 'id_group' => array('type' => 'int', 'default' => 0), + 'price' => array('type' => 'float', 'default' => 0), + 'from_quantity' => array('type' => 'int', 'default' => 0), + 'reduction' => array('type' => 'float', 'default' => 0), + 'reduction_type' => array('type' => 'string', 'default' => 'percentage'), + 'from' => array('type' => 'date', 'default' => '0000-00-00 00:00:00'), + 'to' => array('type' => 'date', 'default' => '0000-00-00 00:00:00'), + ) + ); + } + + protected function installImage($identifier, array $data) + { + $object = $this->installGenericEntity( + 'Image', + $identifier, + $data, + array( + 'id_product' => array('type' => 'int', 'default' => 0), + 'product' => array('type' => 'relation', 'field' => 'id_product', 'entity' => 'product', 'default' => 0), + 'cover' => array('type' => 'bool', 'default' => false), + ), + array('legend') + ); + + $this->createProductImages($object, $identifier, $object->id_product); + } + + protected function installCombination($identifier, array $data) + { + if (!isset($data['id_product'])) + return; + + $d = $this->getHydratedData($data, array( + 'reference' => array('type' => 'string', 'default' => ''), + 'supplier_reference' => array('type' => 'string', 'default' => ''), + 'ean13' => array('type' => 'string', 'default' => ''), + 'price' => array('type' => 'float', 'default' => 0.000000), + 'ecotax' => array('type' => 'float', 'default' => 0.00), + 'weight' => array('type' => 'float', 'default' => 0), + 'default_on' => array('type' => 'bool', 'default' => false), + 'unit_price_impact' => array('type' => 'float', 'default' => 0.00), + )); + + $product = new Product($data['id_product']); + if (!Validate::isLoadedObject($product)) + return; + + $images = array(); + if (isset($data['images']) && is_array($data['images'])) + { + $images = array(); + foreach ($data['images'] as $image) + $images[] = (is_array($image)) ? $this->getId('image', $image['id']) : (int)$image; + } + + $id_product_attribute = $product->addProductAttribute( + $d['price'], + $d['weight'], + $d['unit_price_impact'], + $d['ecotax'], + $images, + $d['reference'], + $d['supplier_reference'], + $d['ean13'], + $d['default_on'] + ); + + if (!$id_product_attribute) + { + $this->setError($this->language->l('Cannot create product attribute')); + return false; + } + + if (isset($data['attributes']) && is_array($data['attributes'])) + { + $attributes = array(); + foreach ($data['attributes'] as $attribute) + $attributes[] = (is_array($attribute)) ? $this->getId('attribute', $attribute['id']) : (int)$attribute; + $product->addAttributeCombinaison($id_product_attribute, $attributes); + } + + + $this->ids['combination:'.$identifier] = $id_product_attribute; + } + + protected function installScene($identifier, array $data) + { + $object = $this->installGenericEntity( + 'Scene', + $identifier, + $data, + array( + 'active' => array('type' => 'bool', 'default' => true), + ), + array('legend') + ); + + // Add categories to scene + if (isset($data['categories']) && is_array($data['categories'])) + { + $categories = array(); + foreach ($data['categories'] as $category) + $categories[] = (is_array($category)) ? $this->getId('categories', $category['id']) : (int)$category; + $object->addCategories($categories); + } + + // Add products to scene + if (isset($data['zones']) && is_array($data['zones'])) + { + $zones = array(); + foreach ($data['zones'] as $zone) + { + if (isset($zone['product']) && !isset($zone['id_product'])) + $zone['id_product'] = $this->getId('product', $zone['product']); + $zones[] = $zone; + } + $object->addZoneProducts($zones); + } + + $this->createEntityImages('scene', $identifier, $object->id, 'scenes', 'scenes'); + } + + protected function installRange($identifier, array $data) + { + $class = (isset($data) && $data['type'] == 'price') ? 'RangePrice' : 'RangeWeight'; + $object = $this->installGenericEntity( + $class, + $identifier, + $data, + array( + 'id_carrier' => array('type' => 'int', 'default' => 0), + 'carrier' => array('type' => 'relation', 'field' => 'id_carrier', 'entity' => 'carrier', 'default' => 0), + 'delimiter1' => array('type' => 'int', 'default' => 0), + 'delimiter2' => array('type' => 'int', 'default' => 0), + ) + ); + } + + protected function installDelivery($identifier, array $data) + { + if (isset($data['zone'])) + $data['id_zone'] = Zone::getIdByName($data['zone']); + + $object = $this->installGenericEntity( + 'Delivery', + $identifier, + $data, + array( + 'id_range_price' => array('type' => 'int', 'default' => 0), + 'range_price' => array('type' => 'relation', 'field' => 'id_range_price', 'entity' => 'rangeprice', 'default' => 0), + 'id_range_weight' =>array('type' => 'int', 'default' => 0), + 'range_weight' => array('type' => 'relation', 'field' => 'id_range_weight', 'entity' => 'rangeweight', 'default' => 0), + 'id_carrier' => array('type' => 'int', 'default' => 0), + 'carrier' => array('type' => 'relation', 'field' => 'id_carrier', 'entity' => 'carrier', 'default' => 0), + 'id_zone' => array('type' => 'int', 'default' => 0), + 'price' => array('type' => 'float', 'default' => 0.00), + ) + ); + } + + protected function installCart($identifier, array $data) + { + if (isset($data['lang'])) + $data['id_lang'] = Language::getIdByIso($data['lang']); + + if (isset($data['currency'])) + $data['id_currency'] = Currency::getIdByIsoCode($data['currency']); + + $object = $this->installGenericEntity( + 'Cart', + $identifier, + $data, + array( + 'id_carrier' => array('type' => 'int', 'default' => 0), + 'carrier' => array('type' => 'relation', 'field' => 'id_carrier', 'entity' => 'carrier', 'default' => 0), + 'id_lang' => array('type' => 'int', 'default' => Configuration::get('PS_LANG_DEFAULT')), + 'id_address_delivery' => array('type' => 'int', 'default' => 0), + 'address_delivery' => array('type' => 'relation', 'field' => 'id_address_delivery', 'entity' => 'address', 'default' => 0), + 'id_address_invoice' => array('type' => 'int', 'default' => 0), + 'address_invoice' => array('type' => 'relation', 'field' => 'id_address_invoice', 'entity' => 'address', 'default' => 0), + 'id_currency' => array('type' => 'int', 'default' => Configuration::get('PS_CURRENCY_DEFAULT')), + 'id_customer' => array('type' => 'int', 'default' => 0), + 'customer' => array('type' => 'relation', 'field' => 'id_customer', 'entity' => 'customer', 'default' => 0), + 'id_guest' => array('type' => 'int', 'default' => 0), + 'guest' => array('type' => 'relation', 'field' => 'id_guest', 'entity' => 'guest', 'default' => 0), + 'id_shop' => array('type' => 'int', 'default' => Context::getContext()->shop->id), + 'recyclable' => array('type' => 'bool', 'default' => false), + 'gift' => array('type' => 'bool', 'default' => false), + ) + ); + + // Add products to cart + if ($object && $data['products'] && is_array($data['products'])) + { + foreach ($data['products'] as $product) + { + if (isset($product['product'])) + $product['id_product'] = $this->getId('product', $product['product']); + + if (isset($product['combination'])) + $product['id_product_attribute'] = $this->getId('combination', $product['combination']); + + $this->db->autoExecute(_DB_PREFIX_.'cart_product', array( + 'id_product' => (isset($product['id_product'])) ? (int)$product['id_product'] : 0, + 'id_product_attribute' => (isset($product['id_product_attribute'])) ? (int)$product['id_product_attribute'] : 0, + 'id_cart' => (int)$object->id, + 'id_shop' => (isset($product['id_shop'])) ? $product['id_shop'] : Context::getContext()->shop->id, + 'quantity' => (isset($product['quantity'])) ? (int)$product['quantity'] : 1, + 'date_add' => date('Y-m-d H:i:s') + ), 'INSERT'); + } + } + } + + protected function installOrder($identifier, array $data) + { + if (isset($data['currency'])) + $data['id_currency'] = Currency::getIdByIsoCode($data['currency']); + + $object = $this->installGenericEntity( + 'Order', + $identifier, + $data, + array( + 'id_lang' => array('type' => 'int', 'default' => Configuration::get('PS_LANG_DEFAULT')), + 'id_shop' => array('type' => 'int', 'default' => Context::getContext()->shop->id), + 'id_group_shop' => array('type' => 'int', 'default' => Context::getContext()->shop->getGroupID()), + 'id_carrier' => array('type' => 'int', 'default' => Configuration::get('PS_CARRIER_DEFAULT')), + 'carrier' => array('type' => 'relation', 'field' => 'id_carrier', 'entity' => 'carrier', 'default' => 0), + 'id_customer' => array('type' => 'int', 'default' => 0), + 'customer' => array('type' => 'relation', 'field' => 'id_customer', 'entity' => 'customer', 'default' => 0), + 'id_cart' => array('type' => 'int', 'default' => 0), + 'cart' => array('type' => 'relation', 'field' => 'id_cart', 'entity' => 'cart', 'default' => 0), + 'id_currency' => array('type' => 'int', 'default' => Configuration::get('PS_CURRENCY_DEFAULT')), + 'id_address_delivery' => array('type' => 'int', 'default' => 0), + 'address_delivery' => array('type' => 'relation', 'field' => 'id_address_delivery', 'entity' => 'address', 'default' => 0), + 'id_address_invoice' => array('type' => 'int', 'default' => 0), + 'address_invoice' => array('type' => 'relation', 'field' => 'id_address_invoice', 'entity' => 'address', 'default' => 0), + 'secure_key' => array('type' => 'string', 'default' => ''), + 'payment' => array('type' => 'string', 'default' => ''), + 'module' => array('type' => 'string', 'default' => ''), + 'recyclable' => array('type' => 'bool', 'default' => false), + 'gift' => array('type' => 'bool', 'default' => false), + 'gift_message' => array('type' => 'string', 'default' => ''), + 'shipping_number' => array('type' => 'string', 'default' => ''), + 'total_discounts' => array('type' => 'float', 'default' => 0.00), + 'total_paid' => array('type' => 'float', 'default' => 0.00), + 'total_paid_real' => array('type' => 'float', 'default' => 0.00), + 'total_products' => array('type' => 'float', 'default' => 0.00), + 'total_products_wt' => array('type' => 'float', 'default' => 0.00), + 'total_shipping' => array('type' => 'float', 'default' => 0.00), + 'conversion_rate' => array('type' => 'float', 'default' => 1.000000), + 'invoice_number' => array('type' => 'int', 'default' => 0), + 'delivery_number' => array('type' => 'int', 'default' => 0), + 'invoice_date' => array('type' => 'date', 'default' => '0000-00-00 00:00:00'), + 'delivery_date' => array('type' => 'date', 'default' => '0000-00-00 00:00:00'), + 'valid' => array('type' => 'bool', 'default' => false), + ) + ); + + if ($object) + { + // Add order details + if (isset($data['details']) && is_array($data['details'])) + { + foreach ($data['details'] as $detail_data) + { + $detail_data['id_order'] = $object->id; + $this->installOrderDetail($detail_data['id'], $detail_data); + } + } + + // Add order history + if (isset($data['histories']) && is_array($data['histories'])) + { + foreach ($data['histories'] as $history_data) + { + $history_data['id_order'] = $object->id; + $this->installOrderHistory($history_data['id'], $history_data); + } + } + } + } + + protected function installOrderDetail($identifier, array $data) + { + $object = $this->installGenericEntity( + 'OrderDetail', + $identifier, + $data, + array( + 'id_order' => array('type' => 'int', 'default' => 0), + 'order' => array('type' => 'relation', 'field' => 'id_order', 'entity' => 'order', 'default' => 0), + 'product_id' => array('type' => 'int', 'default' => 0), + 'product' => array('type' => 'relation', 'field' => 'product_id', 'entity' => 'product', 'default' => 0), + 'product_attribute_id' => array('type' => 'int', 'default' => 0), + 'combination' => array('type' => 'relation', 'field' => 'product_attribute_id', 'entity' => 'combination', 'default' => 0), + 'product_name' => array('type' => 'string', 'default' => ''), + 'product_quantity' => array('type' => 'int', 'default' => 1), + 'product_quantity_return' => array('type' => 'int', 'default' => 0), + 'product_price' => array('type' => 'float', 'default' => 0.000000), + 'product_quantity_discount' => array('type' => 'float', 'default' => 0.000000), + 'product_ean13' => array('type' => 'string', 'default' => ''), + 'product_reference' => array('type' => 'string', 'default' => ''), + 'product_supplier_reference' => array('type' => 'string', 'default' => ''), + 'product_weight' => array('type' => 'int', 'default' => 0), + 'ecotax' => array('type' => 'float', 'default' => 0.00), + 'download_hash' => array('type' => 'string', 'default' => ''), + 'download_nb' => array('type' => 'int', 'default' => 0), + 'download_deadline' => array('type' => 'date', 'default' => '0000-00-00 00:00:00'), + ) + ); + } + + protected function installOrderHistory($identifier, array $data) + { + $object = $this->installGenericEntity( + 'OrderHistory', + $identifier, + $data, + array( + 'id_order' => array('type' => 'int', 'default' => 0), + 'order' => array('type' => 'relation', 'field' => 'id_order', 'entity' => 'order', 'default' => 0), + 'id_employee' => array('type' => 'int', 'default' => 0), + 'id_order_state' => array('type' => 'int', 'default' => 0), + ) + ); + } +} \ No newline at end of file diff --git a/install-new/classes/language.php b/install-new/classes/language.php new file mode 100644 index 000000000..c54e81a76 --- /dev/null +++ b/install-new/classes/language.php @@ -0,0 +1,122 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +class InstallLanguage +{ + /** + * @var string Current language folder + */ + protected $path; + + /** + * @var string Current language iso + */ + protected $iso; + + /** + * @var array Cache list of installer translations for this language + */ + protected $data; + + protected $fixtures_data; + + /** + * @var array Cache list of informations in language.xml file + */ + protected $meta; + + /** + * @var array Cache list of countries for this language + */ + protected $countries; + + public function __construct($iso) + { + $this->path = _PS_INSTALL_LANGS_PATH_.$iso.'/'; + $this->iso = $iso; + } + + /** + * Get iso for current language + * + * @return string + */ + public function getIso() + { + return $this->iso; + } + + /** + * Get an information from language.xml file (E.g. $this->getMetaInformation('name')) + * + * @param string $key + * @return string + */ + public function getMetaInformation($key) + { + if (!is_array($this->meta)) + { + $this->meta = array(); + $xml = simplexml_load_file($this->path.'language.xml'); + foreach ($xml->children() as $node) + $this->meta[$node->getName()] = (string)$node; + } + + return isset($this->meta[$key]) ? $this->meta[$key] : null; + } + + public function getTranslation($key, $type = 'translations') + { + if (!is_array($this->data)) + $this->data = file_exists($this->path.'install.php') ? include($this->path.'install.php') : array(); + + return isset($this->data[$type][$key]) ? $this->data[$type][$key] : null; + } + + public function getFixtureTranslation($key) + { + if (!is_array($this->fixtures_data)) + $this->fixtures_data = file_exists(_PS_INSTALL_FIXTURES_PATH_.'apple/langs/'.$this->iso.'/fixtures.php') ? include(_PS_INSTALL_FIXTURES_PATH_.'apple/langs/'.$this->iso.'/fixtures.php') : array(); + + return isset($this->fixtures_data[$key]) ? $this->fixtures_data[$key] : null; + } + + public function getCountries() + { + if (!is_array($this->countries)) + { + $this->countries = array(); + if (file_exists($this->path.'data/country.xml')) + { + if ($xml = simplexml_load_file($this->path.'data/country.xml')) + foreach ($xml->country as $country) + $this->countries[strtolower((string)$country['id'])] = (string)$country->name; + } + } + return $this->countries; + } +} diff --git a/install-new/classes/languages.php b/install-new/classes/languages.php new file mode 100644 index 000000000..3c088c131 --- /dev/null +++ b/install-new/classes/languages.php @@ -0,0 +1,188 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +class InstallLanguages +{ + const DEFAULT_ISO = 'en'; + /** + * @var array List of available languages + */ + protected $languages; + + /** + * @var string Current language + */ + protected $language; + + /** + * @var InstallLanguage Default language (english) + */ + protected $default; + + protected static $_instance; + + public static function getInstance() + { + if (!self::$_instance) + self::$_instance = new self(); + return self::$_instance; + } + + public function __construct() + { + // English language is required + if (!file_exists(_PS_INSTALL_LANGS_PATH_.'en/language.xml')) + throw new PrestashopInstallerException('English language is missing'); + + $this->languages = array( + self::DEFAULT_ISO => new InstallLanguage(self::DEFAULT_ISO), + ); + + // Load other languages + foreach (scandir(_PS_INSTALL_LANGS_PATH_) as $lang) + if ($lang[0] != '.' && is_dir(_PS_INSTALL_LANGS_PATH_.$lang) && $lang != self::DEFAULT_ISO) + $this->languages[$lang] = new InstallLanguage($lang); + } + + /** + * Set current language + * + * @param string $iso Language iso + */ + public function setLanguage($iso) + { + if (!in_array($iso, $this->getIsoList())) + throw new PrestashopInstallerException('Language '.$iso.' not found'); + + $this->language = $iso; + } + + /** + * Get current language + * + * @return string + */ + public function getLanguageIso() + { + return $this->language; + } + + /** + * Get current language + * + * @return InstallLanguage + */ + public function getLanguage($iso = null) + { + if (!$iso) + $iso = $this->language; + return $this->languages[$iso]; + } + + public function getIsoList() + { + return array_keys($this->languages); + } + + /** + * Get list of languages iso supported by installer + * + * @return array + */ + public function getLanguages() + { + return $this->languages; + } + + /** + * Get translated string + * + * @param string $str String to translate + * @param ... All other params will be used with sprintf + * @return string + */ + public function l($str) + { + $args = func_get_args(); + $translation = $this->getLanguage()->getTranslation($args[0]); + if (is_null($translation)) + { + $translation = $this->getLanguage(self::DEFAULT_ISO)->getTranslation($args[0]); + if (is_null($translation)) + $translation = $args[0]; + } + + $args[0] = $translation; + return call_user_func_array('sprintf', $args); + } + + /** + * Get an information from language (phone, links, etc.) + * + * @param string $key Information identifier + */ + public function getInformation($key, $with_default = true) + { + $information = $this->getLanguage()->getTranslation($key, 'informations'); + if (is_null($information) && $with_default) + return $this->getLanguage(self::DEFAULT_ISO)->getTranslation($key, 'informations'); + return false; + } + + /** + * Get list of countries for current language + * + * @return array + */ + public function getCountries() + { + static $countries = null; + + if (is_null($countries)) + { + $countries = array(); + $countries_lang = $this->getLanguage()->getCountries(); + $countries_default = $this->getLanguage(self::DEFAULT_ISO)->getCountries(); + $xml = simplexml_load_file(_PS_INSTALL_DATA_PATH_.'xml/country.xml'); + foreach ($xml->entities->country as $country) + { + $iso = strtolower((string)$country['iso_code']); + $countries[$iso] = isset($countries_lang[$iso]) ? $countries_lang[$iso] : $countries_default[$iso]; + } + } + + return $countries; + } + + public function getFixtureTranslation($iso, $key) + { + $translation = $this->getLanguage($iso)->getFixtureTranslation($key); + if (is_null($translation)) + $translation = $this->getLanguage(self::DEFAULT_ISO)->getFixtureTranslation($key); + return $translation; + } +} diff --git a/install-new/classes/model.php b/install-new/classes/model.php new file mode 100644 index 000000000..24789d079 --- /dev/null +++ b/install-new/classes/model.php @@ -0,0 +1,58 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +abstract class InstallAbstractModel +{ + /** + * @var InstallLanguages + */ + public $language; + + /** + * @var array List of errors + */ + protected $errors = array(); + + public function __construct() + { + $this->language = InstallLanguages::getInstance(); + } + + public function setError($errors) + { + if (!is_array($errors)) + $errors = array($errors); + + foreach ($errors as $error) + $this->errors[] = $error; + } + + public function getErrors() + { + return $this->errors; + } +} diff --git a/install-new/classes/session.php b/install-new/classes/session.php new file mode 100644 index 000000000..fd6a10d1c --- /dev/null +++ b/install-new/classes/session.php @@ -0,0 +1,66 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +/** + * Manage session for install script + */ +class InstallSession +{ + protected static $_instance; + + public static function getInstance() + { + if (!self::$_instance) + self::$_instance = new self(); + return self::$_instance; + } + + public function __construct() + { + session_start(); + } + + public function __get($varname) + { + return isset($_SESSION[$varname]) ? $_SESSION[$varname] : null; + } + + public function __set($varname, $value) + { + $_SESSION[$varname] = $value; + } + + public function __isset($varname) + { + return isset($_SESSION[$varname]); + } + + public function __unset($varname) + { + unset($_SESSION[$varname]); + } +} diff --git a/install-new/classes/sqlLoader.php b/install-new/classes/sqlLoader.php new file mode 100644 index 000000000..d9e73a615 --- /dev/null +++ b/install-new/classes/sqlLoader.php @@ -0,0 +1,123 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +class InstallSqlLoader +{ + /** + * @var Db + */ + protected $db; + + /** + * @var array List of keywords which will be replaced in queries + */ + protected $metadata = array(); + + /** + * @var array List of errors during last parsing + */ + protected $errors = array(); + + /** + * @param Db $db + */ + public function __construct(Db $db = null) + { + if (is_null($db)) + $db = Db::getInstance(); + $this->db = $db; + } + + /** + * Set a list of keywords which will be replaced in queries + * + * @param array $data + */ + public function setMetaData(array $data) + { + foreach ($data as $k => $v) + $this->metadata[$k] = $v; + } + + /** + * Parse a SQL file and execute queries + * + * @param string $filename + * @param bool $stop_when_fail + */ + public function parse_file($filename, $stop_when_fail = true) + { + if (!file_exists($filename)) + throw new PrestashopInstallerException("File $filename not found"); + + return $this->parse(file_get_contents($filename), $stop_when_fail); + } + + /** + * Parse and execute a list of SQL queries + * + * @param string $content + * @param bool $stop_when_fail + */ + public function parse($content, $stop_when_fail = true) + { + $this->errors = array(); + + $content = str_replace(array_keys($this->metadata), array_values($this->metadata), $content); + $queries = preg_split('#;\s*[\r\n]+#', $content); + foreach ($queries as $query) + { + $query = trim($query); + if (!$query) + continue; + + if (!$this->db->execute($query)) + { + $this->errors[] = array( + 'errno' => $this->db->getNumberError(), + 'error' => $this->db->getMsgError(), + 'query' => $query, + ); + + if ($stop_when_fail) + return false; + } + } + + return count($this->errors) ? false : true; + } + + /** + * Get list of errors from last parsing + * + * @return array + */ + public function getErrors() + { + return $this->errors; + } +} diff --git a/install-new/classes/xmlLoader.php b/install-new/classes/xmlLoader.php new file mode 100644 index 000000000..ece9a8660 --- /dev/null +++ b/install-new/classes/xmlLoader.php @@ -0,0 +1,1101 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +class InstallXmlLoader +{ + /** + * @var InstallLanguages + */ + protected $language; + + /** + * @var array List of languages stored as array(id_lang => iso) + */ + protected $languages = array(); + + /** + * @var array Store in cache all loaded XML files + */ + protected $cache_xml_entity = array(); + + /** + * @var array List of errors + */ + protected $errors = array(); + + protected $data_path; + protected $lang_path; + protected $img_path; + + protected $ids = array(); + + public function __construct() + { + $this->language = InstallLanguages::getInstance(); + $this->setDefaultPath(); + require_once _PS_ROOT_DIR_.'/images.inc.php'; + } + + /** + * Set list of installed languages + * + * @param array $languages array(id_lang => iso) + */ + public function setLanguages(array $languages) + { + $this->languages = $languages; + } + + public function setDefaultPath() + { + $this->data_path = _PS_INSTALL_DATA_PATH_.'xml/'; + $this->lang_path = _PS_INSTALL_LANGS_PATH_; + $this->img_path = _PS_INSTALL_DATA_PATH_.'img/'; + } + + public function setFixturesPath() + { + $this->data_path = _PS_INSTALL_FIXTURES_PATH_.'apple/data/'; + $this->lang_path = _PS_INSTALL_FIXTURES_PATH_.'apple/langs/'; + $this->img_path = _PS_INSTALL_FIXTURES_PATH_.'apple/img/'; + } + + /** + * Get list of errors + * + * @return array + */ + public function getErrors() + { + return $this->errors; + } + + /** + * Add an error + * + * @param string $error + */ + public function setError($error) + { + $this->errors[] = $error; + } + + /** + * Store an ID related to an entity and its identifier (E.g. we want to save that product with ID "ipod_nano" has the ID 1) + * + * @param string $entity + * @param string $identifier + * @param int $id + */ + public function storeId($entity, $identifier, $id) + { + $this->ids[$entity.':'.$identifier] = $id; + } + + /** + * Retrieve an ID related to an entity and its identifier + * + * @param string $entity + * @param string $identifier + */ + public function retrieveId($entity, $identifier) + { + return isset($this->ids[$entity.':'.$identifier]) ? $this->ids[$entity.':'.$identifier] : 0; + } + + public function getIds() + { + return $this->ids; + } + + public function setIds($ids) + { + $this->ids = $ids; + } + + /** + * Read all XML files from data folder and populate tables + */ + public function populateFromXmlFiles() + { + // Browse all XML files from data/xml directory + $entities = array(); + $dependencies = array(); + $fd = opendir($this->data_path); + while ($file = readdir($fd)) + if (preg_match('#^(.+)\.xml$#', $file, $m)) + { + $entity = $m[1]; + $xml = $this->loadEntity($entity); + + // Store entities dependencies (with field type="relation") + if ($xml->fields) + { + foreach ($xml->fields->field as $field) + { + if ($field['relation'] && $field['relation'] != $entity) + { + if (!isset($dependencies[(string)$field['relation']])) + $dependencies[(string)$field['relation']] = array(); + $dependencies[(string)$field['relation']][] = $entity; + } + } + } + $entities[] = $entity; + } + closedir($fd); + + // Sort entities to populate database in good order (E.g. zones before countries) + do + { + $current = (isset($sort_entities)) ? $sort_entities : array(); + $sort_entities = array(); + foreach ($entities as $key => $entity) + { + if (isset($dependencies[$entity])) + { + $min = count($entities) - 1; + foreach ($dependencies[$entity] as $item) + if (($key = array_search($item, $sort_entities)) !== false) + $min = min($min, $key); + if ($min == 0) + array_unshift($sort_entities, $entity); + else + array_splice($sort_entities, $min, 0, array($entity)); + } + else + $sort_entities[] = $entity; + } + $entities = $sort_entities; + } + while ($current != $sort_entities); + + $start = microtime(true); + + // Populate entities + foreach ($sort_entities as $entity) + { + if (method_exists($this, 'populateEntity'.Tools::toCamelCase($entity))) + $this->{'populateEntity'.Tools::toCamelCase($entity)}(); + else + $this->populateEntity($entity); + } + } + + /** + * Populate an entity + * + * @param string $entity + */ + public function populateEntity($entity) + { + $xml = $this->loadEntity($entity); + + // Read list of fields + if (!$xml->fields) + throw new PrestashopInstallerException('List of fields not found for entity '.$entity); + + if ($this->isMultilang($entity)) + { + $multilang_columns = $this->getColumns($entity, true); + $xml_langs = array(); + $default_lang = null; + foreach ($this->languages as $id_lang => $iso) + { + if ($iso == 'en') + $default_lang = $id_lang; + + try + { + $xml_langs[$id_lang] = $this->loadEntity($entity, $iso); + } + catch (PrestashopInstallerException $e) + { + $xml_langs[$id_lang] = null; + } + } + } + + // Load all row for current entity and prepare data to be populated + foreach ($xml->entities->$entity as $node) + { + $data = array(); + $identifier = (string)$node['id']; + + // Read attributes + foreach ($node->attributes() as $k => $v) + if ($k != 'id') + $data[$k] = (string)$v; + + // Read cdatas + foreach ($node->children() as $child) + $data[$child->getName()] = (string)$child; + + // Load multilang data + $data_lang = array(); + if ($this->isMultilang($entity)) + { + $xpath_query = $entity.'[@id="'.$identifier.'"]'; + foreach ($xml_langs as $id_lang => $xml_lang) + { + if (($node_lang = $xml_lang->xpath($xpath_query)) || ($node_lang = $xml_langs[$default_lang]->xpath($xpath_query))) + { + $node_lang = $node_lang[0]; + foreach ($multilang_columns as $column => $is_text) + { + $value = ''; + if ($node_lang[$column]) + $value = (string)$node_lang[$column]; + + if ($node_lang->$column) + $value = (string)$node_lang->$column; + $data_lang[$column][$id_lang] = $value; + } + } + } + } + + $data = $this->rewriteRelationedData($entity, $data); + $this->createEntity($entity, $identifier, (string)$xml->fields['class'], $data, $data_lang); + if ($xml->fields['image']) + { + if (method_exists($this, 'copyImages'.Tools::toCamelCase($entity))) + $this->{'copyImages'.Tools::toCamelCase($entity)}($identifier, $data); + else + $this->copyImages($entity, $identifier, (string)$xml->fields['image'], $data); + } + } + } + + /** + * Special case for "tag" entity + */ + public function populateEntityTag() + { + foreach ($this->languages as $id_lang => $iso) + { + if (!file_exists($this->lang_path.$iso.'/data/tag.xml')) + continue; + + $xml = $this->loadEntity('tag', $iso); + $tags = array(); + foreach ($xml->tag as $tag_node) + { + $products = trim((string)$tag_node['products']); + if (!$products) + continue; + + foreach (explode(',', $products) as $product) + { + $product = trim($product); + $product_id = $this->retrieveId('product', $product); + if (!isset($tags[$product_id])) + $tags[$product_id] = array(); + $tags[$product_id][] = trim((string)$tag_node['name']); + } + } + + foreach ($tags as $id_product => $tag_list) + Tag::addTags($id_lang, $id_product, $tag_list); + } + } + + /** + * Load an entity XML file + * + * @param string $entity + * @return SimpleXMLElement + */ + protected function loadEntity($entity, $iso = null) + { + $cache_id = $entity; + if ($iso) + $cache_id .= ':'.$iso; + + if (!isset($this->cache_xml_entity[$cache_id])) + { + $path = $this->data_path.$entity.'.xml'; + if ($iso) + $path = $this->lang_path.$iso.'/data/'.$entity.'.xml'; + + if (!file_exists($path)) + throw new PrestashopInstallerException('XML data file '.$entity.'.xml not found'); + + if (!$this->cache_xml_entity[$cache_id] = @simplexml_load_file($path)) + throw new PrestashopInstallerException('XML data file '.$entity.'.xml invalid'); + } + + return $this->cache_xml_entity[$cache_id]; + } + + /** + * Check fields related to an other entity, and replace their values by the ID created by the other entity + * + * @param string $entity + * @param array $data + */ + protected function rewriteRelationedData($entity, array $data) + { + $xml = $this->loadEntity($entity); + foreach ($xml->fields->field as $field) + if ($field['relation']) + $data[(string)$field['name']] = $this->retrieveId((string)$field['relation'], $data[(string)$field['name']]); + + return $data; + } + + /** + * Create a simple entity with all its data and lang data + * If a methode createEntity$entity exists, use it. Else if $classname is given, use it. Else do a simple insert in database. + * + * @param string $entity + * @param string $identifier + * @param string $classname + * @param array $data + * @param array $data_lang + */ + public function createEntity($entity, $identifier, $classname, array $data, array $data_lang = array()) + { + if (method_exists($this, 'createEntity'.Tools::toCamelCase($entity))) + { + // Create entity with custom method in current class + $method = 'createEntity'.Tools::toCamelCase($entity); + $entity_id = $this->$method($data, $data_lang); + } + else if ($classname) + { + // Create entity with ObjectModel class + $object = new $classname(); + $object->hydrate($data); + if ($data_lang) + $object->hydrate($data_lang); + $object->add(); + $entity_id = $object->id; + } + else + { + // Create entity in database); + if (!Db::getInstance()->autoExecute(_DB_PREFIX_.$entity, array_map('pSQL', $data), 'INSERT IGNORE')) + $this->setError($this->language->l('An SQL error occured for entity %1$s: %2$s', $entity, Db::getInstance()->getMsgError())); + $entity_id = Db::getInstance()->Insert_ID(); + + if ($data_lang) + { + $real_data_lang = array(); + foreach ($data_lang as $field => $list) + foreach ($list as $id_lang => $value) + $real_data_lang[$id_lang][$field] = $value; + + foreach ($real_data_lang as $id_lang => $insert_data_lang) + { + $insert_data_lang['id_'.$entity] = $entity_id; + $insert_data_lang['id_lang'] = $id_lang; + if (!Db::getInstance()->autoExecute(_DB_PREFIX_.$entity.'_lang', array_map('pSQL', $insert_data_lang), 'INSERT IGNORE')) + $this->setError($this->language->l('An SQL error occured for entity %1$s: %2$s', $entity, Db::getInstance()->getMsgError())); + } + } + } + + $this->storeId($entity, $identifier, $entity_id); + } + + public function createEntityConfiguration(array $data, array $data_lang = array()) + { + if (!Configuration::get($data['name'])) + Configuration::updateValue($data['name'], ($data_lang) ? $data_lang['value'] : $data['value']); + return Configuration::getIdByName($data['name']); + } + + public function copyImages($entity, $identifier, $path, array $data, $extension = 'jpg') + { + // Get list of image types + $reference = array( + 'product' => 'products', + 'category' => 'categories', + 'manufacturer' => 'manufacturers', + 'supplier' => 'suppliers', + 'scene' => 'scenes', + 'store' => 'stores', + ); + + $types = array(); + if (isset($reference[$entity])) + $types = ImageType::getImagesTypes($reference[$entity]); + + // For each path copy images + $path = array_map('trim', explode(',', $path)); + foreach ($path as $p) + { + $from_path = $this->img_path.$p.'/'; + $dst_path = _PS_IMG_DIR_.$p.'/'; + $entity_id = $this->retrieveId($entity, $identifier); + + if (!copy($from_path.$identifier.'.'.$extension, $dst_path.$entity_id.'.'.$extension)) + { + $this->setError($this->language->l('Cannot create image "%1$s" for entity "%2$s"', $identifier, $entity)); + return; + } + + foreach ($types as $type) + { + $origin_file = $from_path.$identifier.'-'.$type['name'].'.'.$extension; + $target_file = $dst_path.$entity_id.'-'.$type['name'].'.'.$extension; + + // Test if dest folder is writable + if (!is_writable(dirname($target_file))) + $this->setError($this->language->l('Cannot create image "%1$s" (bad permissions on folder "%2$s")', $identifier.'-'.$type['name'], dirname($target_file))); + // If a file named folder/entity-type.extension exists just copy it, this is an optimisation in order to prevent to much resize + else if (file_exists($origin_file)) + { + if (!@copy($origin_file, $target_file)) + $this->setError($this->language->l('Cannot create image "%s"', $identifier.'-'.$type['name'])); + @chmod($target_file, 0644); + } + // Resize the image if no cache was prepared in fixtures + else if (!imageResize($from_path.$identifier.'.'.$extension, $target_file, $type['width'], $type['height'])) + $this->setError($this->language->l('Cannot create image "%1$s" for entity "%2$s"', $identifier.'-'.$type['name'], $entity)); + } + } + } + + public function copyImagesScene($identifier, array $data) + { + $this->copyImages('scene', $identifier, 'scenes', $data); + + $from_path = $this->img_path.'scenes/thumbs/'; + $dst_path = _PS_IMG_DIR_.'scenes/thumbs/'; + $entity_id = $this->retrieveId('scene', $identifier); + + if (!@copy($from_path.$identifier.'-thumb_scene.jpg', $dst_path.$entity_id.'-thumb_scene.jpg')) + { + $this->setError($this->language->l('Cannot create image "%1$s" for entity "%2$s"', $identifier, 'scene')); + return; + } + } + + public function copyImagesOrderState($identifier, array $data) + { + $this->copyImages('order_state', $identifier, 'os', $data, 'gif'); + } + + public function copyImagesTab($identifier, array $data) + { + $from_path = $this->img_path.'t/'; + $dst_path = _PS_IMG_DIR_.'t/'; + if (file_exists($from_path.$data['class_name'].'.gif')) + if (!@copy($from_path.$data['class_name'].'.gif', $dst_path.$data['class_name'].'.gif')) + { + $this->setError($this->language->l('Cannot create image "%1$s" for entity "%2$s"', $identifier, 'tab')); + return; + } + } + + public function copyImagesImage($identifier) + { + $path = $this->img_path.'p/'; + $image = new Image($this->retrieveId('image', $identifier)); + $dst_path = $image->getPathForCreation(); + if (!@copy($path.$identifier.'.jpg', $dst_path.'.'.$image->image_format)) + { + $this->setError($this->language->l('Cannot create image "%1$s" for entity "%2$s"', $identifier, 'product')); + return; + } + @chmod($dst_path.'.'.$image->image_format, 0644); + + $types = ImageType::getImagesTypes('products'); + foreach ($types as $type) + { + $origin_file = $path.$identifier.'-'.$type['name'].'.jpg'; + $target_file = $dst_path.'-'.$type['name'].'.'.$image->image_format; + + // Test if dest folder is writable + if (!is_writable(dirname($target_file))) + $this->setError($this->language->l('Cannot create image "%1$s" (bad permissions on folder "%2$s")', $identifier.'-'.$type['name'], dirname($target_file))); + // If a file named folder/entity-type.jpg exists just copy it, this is an optimisation in order to prevent to much resize + else if (file_exists($origin_file)) + { + if (!@copy($origin_file, $target_file)) + $this->setError($this->language->l('Cannot create image "%1$s" for entity "%2$s"', $identifier.'-'.$type['name'], 'product')); + @chmod($target_file, 0644); + } + // Resize the image if no cache was prepared in fixtures + else if (!imageResize($path.$id.'.jpg', $target_file, $type['width'], $type['height'])) + $this->setError($this->language->l('Cannot create image "%1$s" for entity "%2$s"', $identifier.'-'.$type['name'], 'product')); + } + } + + public function getTables() + { + static $tables = null; + + if (is_null($tables)) + { + $sql = 'SHOW TABLES'; + $tables = array(); + foreach (Db::getInstance()->executeS($sql) as $row) + { + $table = current($row); + if (preg_match('#^'._DB_PREFIX_.'(.+?)(_lang)?$#i', $table, $m) && !preg_match('#(_group_shop|_shop)$#i', $table)) + $tables[$m[1]] = (isset($m[2]) && $m[2]) ? true : false; + } + } + + return $tables; + } + + public function getColumns($table, $multilang = false, array $exclude = array()) + { + static $columns = array(); + + if ($multilang) + return ($this->isMultilang($table)) ? $this->getColumns($table.'_lang', false, array('id_'.$table)) : array(); + + if (!isset($columns[$table])) + { + $columns[$table] = array(); + $sql = 'SHOW COLUMNS FROM `'.bqSQL(_DB_PREFIX_.$table).'`'; + foreach (Db::getInstance()->executeS($sql) as $row) + $columns[$table][$row['Field']] = $this->checkIfTypeIsText($row['Type']); + } + + $exclude = array_merge(array('id_'.$table, 'date_add', 'date_upd', 'position', 'deleted', 'id_lang', 'id_shop', 'id_group_shop'), $exclude); + + $list = array(); + foreach ($columns[$table] as $k => $v) + if (!in_array($k, $exclude)) + $list[$k] = $v; + + return $list; + } + + public function getClasses($path = null) + { + static $cache = null; + + if (!is_null($cache)) + return $cache; + + $dir = $path; + if (is_null($dir)) + $dir = _PS_CLASS_DIR_; + + $classes = array(); + foreach (scandir($dir) as $file) + if ($file[0] != '.' && $file != 'index.php') + { + if (is_dir($dir.$file)) + $classes = array_merge($classes, $this->getClasses($dir.$file.'/')); + else if (preg_match('#^(.+)\.php$#', $file, $m)) + $classes[] = $m[1]; + } + + sort($classes); + if (is_null($path)) + $cache = $classes; + return $classes; + } + + public function checkIfTypeIsText($type) + { + if (preg_match('#^(longtext|text|tinytext)#i', $type)) + return true; + + if (preg_match('#^varchar\(([0-9]+)\)$#i', $type, $m)) + return intval($m[1]) >= 64 ? true : false; + return false; + } + + public function isMultilang($entity) + { + $tables = $this->getTables(); + return isset($tables[$entity]) && $tables[$entity]; + } + + public function entityExists($entity) + { + return file_exists($this->data_path.$entity.'.xml'); + } + + public function getEntityInfo($entity) + { + $info = array( + 'config' => array( + 'id' => '', + 'primary' => '', + 'class' => '', + 'sql' => '', + 'image' => '', + ), + 'fields' => array(), + ); + + if (!$this->entityExists($entity)) + return $info; + + $xml = @simplexml_load_file($this->data_path.$entity.'.xml'); + if (!$xml) + return $info; + + if ($xml->fields['id']) + $info['config']['id'] = (string)$xml->fields['id']; + + if ($xml->fields['primary']) + $info['config']['primary'] = (string)$xml->fields['primary']; + + if ($xml->fields['class']) + $info['config']['class'] = (string)$xml->fields['class']; + + if ($xml->fields['sql']) + $info['config']['sql'] = (string)$xml->fields['sql']; + + if ($xml->fields['image']) + $info['config']['image'] = (string)$xml->fields['image']; + + foreach ($xml->fields->field as $field) + { + $column = (string)$field['name']; + $info['fields'][$column] = array(); + if (isset($field['relation'])) + $info['fields'][$column]['relation'] = (string)$field['relation']; + } + return $info; + } + + /** + * ONLY FOR DEVELOPMENT PURPOSE + */ + public function generateAllEntityFiles() + { + $entities = array(); + foreach (scandir($this->data_path) as $file) + if ($file[0] != '.' && preg_match('#^(.+)\.xml$#', $file, $m)) + $entities[$m[1]] = $this->getEntityInfo($m[1]); + + $this->generateEntityFiles($entities); + } + + /** + * ONLY FOR DEVELOPMENT PURPOSE + */ + public function generateEntityFiles($entities) + { + $dependencies = array(); + $list_entities = array(); + foreach ($entities as $entity => $info) + { + $list_entities[] = $entity; + foreach ($info['fields'] as $field => $info_field) + { + if (isset($info_field['relation']) && $info_field['relation'] != $entity) + { + if (!isset($dependencies[$info_field['relation']])) + $dependencies[$info_field['relation']] = array(); + $dependencies[$info_field['relation']][] = $entity; + } + } + } + + // Sort entities to populate database in good order (E.g. zones before countries) + do + { + $current = (isset($sort_entities)) ? $sort_entities : array(); + $sort_entities = array(); + foreach ($list_entities as $entity) + { + if (isset($dependencies[$entity])) + { + $min = count($entities) - 1; + foreach ($dependencies[$entity] as $item) + if (($key = array_search($item, $sort_entities)) !== false) + $min = min($min, $key); + if ($min == 0) + array_unshift($sort_entities, $entity); + else + array_splice($sort_entities, $min, 0, array($entity)); + } + else + $sort_entities[] = $entity; + } + $list_entities = $sort_entities; + } + while ($current != $sort_entities); + + foreach ($sort_entities as $entity) + $this->generateEntityFile($entity, $entities[$entity]['config'], $entities[$entity]['fields']); + } + + /** + * ONLY FOR DEVELOPMENT PURPOSE + */ + public function generateEntityFile($entity, array $config, array $columns) + { + if (method_exists($this, 'getEntityContents'.Tools::toCamelCase($entity))) + $content = $this->{'getEntityContents'.Tools::toCamelCase($entity)}($config, $columns); + else + $content = $this->getEntityContents($entity, $config, $columns); + + // Generate common XML file + $xml = ''."\n"; + $xml .= ''."\n"; + $xml .= "\t\n"; + foreach ($columns as $column => $info) + if (isset($info['relation'])) + $xml .= "\t\t".''."\n"; + else + $xml .= "\t\t".''."\n"; + $xml .= "\t\n\n"; + $xml .= "\t\n"; + if ($content['nodes']) + $xml .= $this->createXmlEntityNodes($entity, $content['nodes'], 2); + $xml .= "\t\n"; + $xml .= ''; + file_put_contents($this->data_path.$entity.'.xml', $xml); + + // Generate multilang XML files + if ($content['nodes_lang']) + { + foreach ($content['nodes_lang'] as $id_lang => $nodes) + { + if (!isset($this->languages[$id_lang])) + continue; + + $iso = $this->languages[$id_lang]; + if (!is_dir($this->lang_path.$iso.'/data')) + mkdir($this->lang_path.$iso.'/data'); + + $xml = ''."\n"; + $xml .= ''."\n"; + $xml .= $this->createXmlEntityNodes($entity, $nodes); + $xml .= ''; + file_put_contents($this->lang_path.$iso.'/data/'.$entity.'.xml', $xml); + } + } + + if (isset($config['image']) && $config['image']) + { + if (method_exists($this, 'backupImage'.Tools::toCamelCase($entity))) + $this->{'backupImage'.Tools::toCamelCase($entity)}($config['image']); + else + $this->backupImage($entity, $config['image']); + } + } + + /** + * ONLY FOR DEVELOPMENT PURPOSE + */ + public function getEntityContents($entity, array $config, array $columns) + { + $primary = (isset($config['primary']) && $config['primary']) ? $config['primary'] : 'id_'.$entity; + $is_multilang = $this->isMultilang($entity); + + // Check if current table is an association table (if multiple primary keys) + $is_association = false; + if (strpos($primary, ',') !== false) + { + $is_association = true; + $primary = array_map('trim', explode(',', $primary)); + } + + // Build query + $sql = new DbQuery(); + $sql->select('a.*'); + $sql->from($entity.' a'); + if ($is_multilang) + { + $sql->select('b.*'); + $sql->leftJoin($entity.'_lang b ON a.'.$primary.' = b.'.$primary); + } + + if (isset($config['sql']) && $config['sql']) + $sql->where($config['sql']); + + if (!$is_association) + { + $sql->select('a.'.$primary); + $sql->orderBy('a.'.$primary); + } + + if ($is_multilang) + $sql->orderBy('b.id_lang'); + + // Get multilang columns + $alias_multilang = array(); + if ($is_multilang) + { + $multilang_columns = $this->getColumns($entity, true); + + // If some columns from _lang table have same name than original table, rename them (E.g. value in configuration) + foreach ($multilang_columns as $c => $is_text) + if (isset($columns[$c])) + { + $alias = $c.'_alias'; + $alias_multilang[$c] = $alias; + $sql->select('a.'.$c.' as '.$c.', b.'.$c.' as '.$alias); + } + } + + // Get all results + $nodes = $nodes_lang = array(); + $results = Db::getInstance()->executeS($sql); + if (Db::getInstance()->getNumberError()) + $this->setError($this->language->l('SQL error on query %s', $sql)); + else + { + foreach ($results as $row) + { + // Store common columns + if ($is_association) + { + $id = $entity; + foreach ($primary as $key) + $id .= '_'.$row[$key]; + } + else + $id = $this->generateId($entity, $row[$primary], $row, (isset($config['id']) && $config['id']) ? $config['id'] : null); + + if (!isset($nodes[$id])) + { + $node = array(); + foreach ($columns as $column => $info) + { + if (isset($info['relation'])) + { + $sql = 'SELECT `id_'.bqSQL($info['relation']).'` + FROM `'.bqSQL(_DB_PREFIX_.$info['relation']).'` + WHERE `id_'.bqSQL($info['relation']).'` = '.(int)$row[$column]; + $node[$column] = $this->generateId($info['relation'], Db::getInstance()->getValue($sql)); + } + else + $node[$column] = $row[$column]; + } + $nodes[$id] = $node; + } + + // Store multilang columns + if ($is_multilang && $row['id_lang']) + { + $node = array(); + foreach ($multilang_columns as $column => $is_text) + $node[$column] = $row[isset($alias_multilang[$column]) ? $alias_multilang[$column] : $column]; + $nodes_lang[$row['id_lang']][$id] = $node; + } + } + } + + return array( + 'nodes' => $nodes, + 'nodes_lang' => $nodes_lang, + ); + } + + public function getEntityContentsTag() + { + $nodes_lang = array(); + + $sql = 'SELECT t.id_tag, t.id_lang, t.name, pt.id_product + FROM '._DB_PREFIX_.'tag t + LEFT JOIN '._DB_PREFIX_.'product_tag pt ON t.id_tag = pt.id_tag + ORDER BY id_lang'; + foreach (Db::getInstance()->executeS($sql) as $row) + { + $identifier = $this->generateId('tag', $row['id_tag']); + if (!isset($nodes_lang[$row['id_lang']])) + $nodes_lang[$row['id_lang']] = array(); + + if (!isset($nodes_lang[$row['id_lang']][$identifier])) + $nodes_lang[$row['id_lang']][$identifier] = array( + 'name' => $row['name'], + 'products' => '', + ); + + $nodes_lang[$row['id_lang']][$identifier]['products'] .= (($nodes_lang[$row['id_lang']][$identifier]['products']) ? ',' : '').$this->generateId('product', $row['id_product']); + } + + return array( + 'nodes' => array(), + 'nodes_lang' => $nodes_lang, + ); + } + + /** + * ONLY FOR DEVELOPMENT PURPOSE + */ + public function generateId($entity, $primary, array $row = array(), $id_format = null) + { + static $ids = array(); + + if (isset($ids[$entity][$primary])) + return $ids[$entity][$primary]; + + if (!isset($ids[$entity])) + $ids[$entity] = array(); + + if (!$primary) + return ''; + + if (!$id_format || !$row) + $ids[$entity][$primary] = $entity.'_'.$primary; + else + { + $value = $row[$id_format]; + $value = preg_replace('#[^a-z0-9_-]#i', '_', $value); + $value = preg_replace('#_+#', '_', $value); + $value = preg_replace('#^_+#', '', $value); + $value = preg_replace('#_+$#', '', $value); + + $store_identifier = $value; + $i = 1; + while (in_array($store_identifier, $ids[$entity])) + $store_identifier = $value.'_'.$i++; + $ids[$entity][$primary] = $store_identifier; + } + return $ids[$entity][$primary]; + } + + /** + * ONLY FOR DEVELOPMENT PURPOSE + */ + public function createXmlEntityNodes($entity, array $nodes, $tabs = 1) + { + $xml = ''; + $types = array_merge($this->getColumns($entity), $this->getColumns($entity, true)); + foreach ($nodes as $id => $node) + { + $attrs = $cdata = array(); + foreach ($node as $k => $v) + if (isset($types[$k]) && $types[$k]) + $cdata[$k] = $v; + else + $attrs[$k] = $v; + + $xml .= str_repeat("\t", $tabs).'<'.$entity.' id="'.$id.'"'; + if ($attrs) + foreach ($attrs as $k => $v) + $xml .= ' '.$k.'="'.htmlspecialchars($v).'"'; + + if ($cdata) + { + $xml .= ">\n"; + foreach ($cdata as $k => $v) + $xml .= str_repeat("\t", $tabs + 1).'<'.$k.'>'."\n"; + $xml .= str_repeat("\t", $tabs).''."\n"; + } + else + $xml .= " />\n"; + } + + return $xml; + } + + /** + * ONLY FOR DEVELOPMENT PURPOSE + */ + public function backupImage($entity, $path) + { + $reference = array( + 'product' => 'products', + 'category' => 'categories', + 'manufacturer' => 'manufacturers', + 'supplier' => 'suppliers', + 'scene' => 'scenes', + 'store' => 'stores', + ); + + $types = array(); + if (isset($reference[$entity])) + { + $types = array(); + foreach (ImageType::getImagesTypes($reference[$entity]) as $type) + $types[] = $type['name']; + } + + $path_list = array_map('trim', explode(',', $path)); + foreach ($path_list as $p) + { + $backup_path = $this->img_path.$p.'/'; + $from_path = _PS_IMG_DIR_.$p.'/'; + + if (!is_dir($backup_path) && !mkdir($backup_path)) + $this->setError(sprintf('Cannot create directory %s', $backup_path)); + + foreach (scandir($from_path) as $file) + if ($file[0] != '.' && preg_match('#^(([0-9]+)(-('.implode('|', $types).'))?)\.(gif|jpg|jpeg|png)$#i', $file, $m)) + { + $file_id = $m[2]; + $file_type = $m[3]; + $file_extension = $m[5]; + copy($from_path.$file, $backup_path.$this->generateId($entity, $file_id).$file_type.'.'.$file_extension); + } + } + } + + /** + * ONLY FOR DEVELOPMENT PURPOSE + */ + public function backupImageImage() + { + $types = array(); + foreach (ImageType::getImagesTypes('products') as $type) + $types[] = $type['name']; + + $backup_path = $this->img_path.'p/'; + $from_path = _PS_PROD_IMG_DIR_; + if (!is_dir($backup_path) && !mkdir($backup_path)) + $this->setError(sprintf('Cannot create directory %s', $backup_path)); + + foreach (Image::getAllImages() as $image) + { + $image = new Image($image['id_image']); + $image_path = $image->getExistingImgPath(); + copy($from_path.$image_path.'.'.$image->image_format, $backup_path.$this->generateId('image', $image->id).'.'.$image->image_format); + foreach ($types as $type) + copy($from_path.$image_path.'-'.$type.'.'.$image->image_format, $backup_path.$this->generateId('image', $image->id).'-'.$type.'.'.$image->image_format); + } + } + + /** + * ONLY FOR DEVELOPMENT PURPOSE + */ + public function backupImageTab() + { + $backup_path = $this->img_path.'t/'; + $from_path = _PS_IMG_DIR_.'t/'; + if (!is_dir($backup_path) && !mkdir($backup_path)) + $this->setError(sprintf('Cannot create directory %s', $backup_path)); + + $xml = $this->loadEntity('tab'); + foreach ($xml->entities->tab as $tab) + if (file_exists($from_path.$tab->class_name.'.gif')) + copy($from_path.$tab->class_name.'.gif', $backup_path.$tab->class_name.'.gif'); + } +} \ No newline at end of file diff --git a/install-new/controllers/http/configure.php b/install-new/controllers/http/configure.php new file mode 100644 index 000000000..0c6e4b98c --- /dev/null +++ b/install-new/controllers/http/configure.php @@ -0,0 +1,438 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +/** + * Step 4 : configure the shop, admin access and modules preactivations + */ +class InstallControllerHttpConfigure extends InstallControllerHttp +{ + /** + * @see InstallAbstractModel::processNextStep() + */ + public function processNextStep() + { + // Save shop configuration + $this->session->shop_name = trim(Tools::getValue('shop_name')); + $this->session->shop_activity = Tools::getValue('shop_activity'); + $this->session->shop_country = Tools::getValue('shop_country'); + $this->session->shop_timezone = Tools::getValue('shop_timezone'); + + // Save admin configuration + $this->session->admin_firstname = trim(Tools::getValue('admin_firstname')); + $this->session->admin_lastname = trim(Tools::getValue('admin_lastname')); + $this->session->admin_email = trim(Tools::getValue('admin_email')); + $this->session->send_informations = Tools::getValue('send_informations'); + + // If password fields are empty, but are already stored in session, do not fill them again + if (!$this->session->admin_password || trim(Tools::getValue('admin_password'))) + $this->session->admin_password = trim(Tools::getValue('admin_password')); + + if (!$this->session->admin_password_confirm || trim(Tools::getValue('admin_password_confirm'))) + $this->session->admin_password_confirm = trim(Tools::getValue('admin_password_confirm')); + + // Save partners preactivation configuration + $this->session->partners = array(); + $partners = Tools::getValue('partner'); + if (is_array($partners)) + { + // Check all selected partners and store their fields + $session_partners = array(); + foreach ($partners as $partner_id => $state) + $session_partners[$partner_id] = (isset($_POST['partner_fields'][$partner_id])) ? $_POST['partner_fields'][$partner_id] : array(); + $this->session->partners = $session_partners; + } + } + + /** + * @see InstallAbstractModel::validate() + */ + public function validate() + { + // List of required fields + $required_fields = array('shop_name', 'shop_country', 'shop_timezone', 'admin_firstname', 'admin_lastname', 'admin_email', 'admin_password'); + foreach ($required_fields as $field) + if (!$this->session->$field) + $this->errors[$field] = $this->l('Field required'); + + // Check shop name + if ($this->session->shop_name && !Validate::isGenericName($this->session->shop_name)) + $this->errors['shop_name'] = $this->l('Invalid shop name'); + + // Check admin name + if ($this->session->admin_firstname && !Validate::isGenericName($this->session->admin_firstname)) + $this->errors['admin_firstname'] = $this->l('Your firstname contains some invalid characters'); + + if ($this->session->admin_lastname && !Validate::isGenericName($this->session->admin_lastname)) + $this->errors['admin_lastname'] = $this->l('Your lastname contains some invalid characters'); + + // Check passwords + if ($this->session->admin_password) + { + if (!Validate::isPasswdAdmin($this->session->admin_password)) + $this->errors['admin_password'] = $this->l('The password is incorrect (alphanumeric string at least 8 characters)'); + else if ($this->session->admin_password != $this->session->admin_password_confirm) + $this->errors['admin_password'] = $this->l('Password and its confirmation are different'); + } + + // Check email + if ($this->session->admin_email && !Validate::isEmail($this->session->admin_email)) + $this->errors['admin_email'] = $this->l('This e-mail address is invalid'); + + return count($this->errors) ? false : true; + } + + public function process() + { + if (Tools::getValue('uploadLogo')) + $this->processUploadLogo(); + else if (Tools::getValue('timezoneByIso')) + $this->processTimezoneByIso(); + else if (Tools::getValue('getPartners')) + $this->processGetPartners(); + else if (Tools::getValue('getPartnersFields')) + $this->processGetPartnersFields(); + } + + /** + * Process the upload of new logo + */ + public function processUploadLogo() + { + $error = ''; + if (isset($_FILES['fileToUpload'])) + { + $file = $_FILES['fileToUpload']; + + // If error code is not 0, an error occured during upload + if ($file['error'] != 0) + { + $upload_errors = array( + 1 => $this->l('The uploaded file exceeds the upload_max_filesize directive in php.ini'), + 2 => $this->l('The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form'), + 3 => $this->l('The uploaded file was only partially uploaded'), + 4 => $this->l('No file was uploaded'), + 6 => $this->l('Missing a temporary folder'), + 7 => $this->l('Failed to write file to disk'), + 8 => $this->l('File upload stopped by extension'), + ); + + if (isset($upload_errors[$file['error']])) + $error = $upload_errors[$file['error']]; + else + $error = $this->l('No error code available'); + } + // Check if no error during creation of tmp file + else if (!$file['tmp_name'] || $file['tmp_name'] == 'none') + { + $error = $this->l('Missing a temporary folder'); + } + // No error, let's update the file + else + { + list($width, $height, $type) = getimagesize($file['tmp_name']); + + // Check if this is really an image + if ($height == 0) + $error = $this->l('This is not a valid image file'); + // Resize image + else + { + $newheight = ($height > 500) ? 500 : $height; + $percent = $newheight / $height; + $newwidth = $width * $percent; + $newheight = $height * $percent; + $thumb = imagecreatetruecolor($newwidth, $newheight); + switch ($type) + { + case 1: + $source = imagecreatefromgif($file['tmp_name']); + break; + + case 2: + $source = imagecreatefromjpeg($file['tmp_name']); + break; + + case 3: + $source = imagecreatefrompng($file['tmp_name']); + break; + + default: + $error = $this->l('Image type is not supported'); + } + + if (!$error) + { + imagecopyresampled($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); + if (!is_writable(_PS_ROOT_DIR_.'/img/logo.jpg')) + $error = $this->l('Image folder is not writable'); + else if (!imagejpeg($thumb, _PS_ROOT_DIR_.'/img/logo.jpg', 90)) + $error = $this->l('Cannot upload the file'); + } + } + } + } + + $this->ajaxJsonAnswer(($error) ? false : true, $error); + } + + /** + * Obtain the timezone associated to an iso + */ + public function processTimezoneByIso() + { + $timezone = $this->getTimezoneByIso(Tools::getValue('iso')); + $this->ajaxJsonAnswer(($timezone) ? true : false, $timezone); + } + + /** + * Obtain a translation from presintall XML file + * + * @param SimplexmlElement $xml + * @param string $xpath + * @return string + */ + public function getPreinstallXmlLang(SimplexmlElement $xml, $xpath) + { + $lang = $this->language->getLanguageIso(); + $translation = $xml->xpath($xpath.'[@iso="'.$lang.'"]'); + if (!$translation && $lang != 'en') + $translation = $xml->xpath($xpath.'[@iso="en"]'); + if (!$translation) + $translation = $xml->xpath($xpath); + return ($translation) ? (string)$translation[0] : ''; + } + + /** + * Get list of partners from PrestaShop website + */ + public function processGetPartners() + { + $this->iso = Tools::getValue('iso'); + if (!$this->iso) + $this->ajaxJsonAnswer(false); + + // Load partners XML file from prestashop.com + $stream_context = @stream_context_create(array('http' => array('method'=> 'GET', 'timeout' => 3))); + $content = @file_get_contents('http://www.prestashop.com/partner/preactivation/partners.php?version=1.1', false, $stream_context); + if (!$xml = @simplexml_load_string($content)) + $this->ajaxJsonAnswer(false, $this->l('Cannot load partners from PrestaShop website')); + + // Browse all partners + $partners = array(); + foreach ($xml->partner as $partner) + { + // Partner available for current language ? + if (!$partner->xpath('countries[country="'.$this->iso.'"]')) + continue; + + $partner_id = (string)$partner->key; + if (!isset($this->session->shop_name)) + $checked = ($partner->prechecked) ? true : false; + else + $checked = (isset($this->session->partners[$partner_id])) ? true : false; + + $partners[$partner_id] = array( + 'name' => (string)$partner->name, + 'label' => $this->getPreinstallXmlLang($partner, 'labels/label'), + 'description' => $this->getPreinstallXmlLang($partner, 'descriptions/description'), + 'logo' => $partner->logo_medium, + 'checked' => $checked, + ); + } + + // If no partners, don't displayany preactivation HTML + if (!$partners) + $this->ajaxJsonAnswer(false); + + // Render partners + $this->partners = $partners; + $html = $this->displayTemplate('partners', true); + $this->ajaxJsonAnswer(true, $html); + } + + /** + * Get fields of a partner for a country as HTML + */ + public function processGetPartnersFields() + { + $this->partner_id = Tools::getValue('partner_id'); + $this->iso = Tools::getValue('iso'); + if (!$this->partner_id || !$this->iso) + $this->ajaxJsonAnswer(false); + + $this->fields = $this->getPartnersFields($this->partner_id, $this->iso); + + if (!$this->fields) + $this->ajaxJsonAnswer(false); + + // Render fields + $html = $this->displayTemplate('partners_fields', true); + $this->ajaxJsonAnswer(true, $html); + } + + /** + * Get list of fields of a partner for a country + * + * @param string $partner_id + * @param string $iso + * @return array + */ + public function getPartnersFields($partner_id, $iso) + { + // Load partners fields XML file from prestashop.com + $stream_context = @stream_context_create(array('http' => array('method' => 'GET', 'timeout' => 5))); + $content = @file_get_contents('http://www.prestashop.com/partner/preactivation/fields.php?version=1.1&partner='.$partner_id.'&country_iso_code='.$iso, false, $stream_context); + if (!$xml = @simplexml_load_string($content)) + $this->ajaxJsonAnswer(false, $this->l('Cannot load partners fields from PrestaShop website')); + + // Browse all fields + $fields = array(); + foreach ($xml->field as $field) + { + $key = (string)$field->key; + $data = array( + 'type' => (string)$field->type, + 'label' => $this->getPreinstallXmlLang($field, 'labels/label'), + 'help' => $this->getPreinstallXmlLang($field, 'helps/help'), + 'value' => (isset($this->session->partners[$partner_id][$key])) ? $this->session->partners[$partner_id][$key] : (string)$field->default, + ); + + switch ($data['type']) + { + case 'text' : + case 'password' : + $data['size'] = (string)$field->size; + break; + + case 'radio' : + case 'select' : + $data['list'] = array(); + foreach ($field->values as $value) + $data['list'][(string)$value->value] = $this->getPreinstallXmlLang($value, 'labels/label'); + break; + + case 'date' : + if (!is_array($data['value'])) + $data['value'] = array( + 'year' => 0, + 'month' => 0, + 'day' => 0, + ); + break; + } + + $fields[$key] = $data; + } + + return $fields; + } + + /** + * Get list of timezones + * + * @return array + */ + public function getTimezones() + { + if (!is_null($this->cache_timezones)) + return; + + if (!file_exists(_PS_INSTALL_DATA_PATH_.'xml/timezone.xml')) + return array(); + + $xml = simplexml_load_file(_PS_INSTALL_DATA_PATH_.'xml/timezone.xml'); + $timezones = array(); + foreach ($xml->entities->timezone as $timezone) + $timezones[] = (string)$timezone['name']; + return $timezones; + } + + /** + * Get a timezone associated to an iso + * + * @param string $iso + * @return string + */ + public function getTimezoneByIso($iso) + { + if (!file_exists(_PS_INSTALL_DATA_PATH_.'iso_to_timezone.xml')) + return ''; + + $xml = simplexml_load_file(_PS_INSTALL_DATA_PATH_.'iso_to_timezone.xml'); + $timezones = array(); + foreach ($xml->relation as $relation) + $timezones[(string)$relation['iso']] = (string)$relation['zone']; + return isset($timezones[$iso]) ? $timezones[$iso] : ''; + } + + /** + * @see InstallAbstractModel::display() + */ + public function display() + { + // List of activities + $list_activities = array( + $this->l('Lingerie and Adult'), + $this->l('Animals and Pets'), + $this->l('Art and Culture'), + $this->l('Babies'), + $this->l('Beauty and Personal Care'), + $this->l('Cars'), + $this->l('Computer Hardware and Software'), + $this->l('Download'), + $this->l('Fashion and accessories'), + $this->l('Flowers, Gifts and Crafts'), + $this->l('Food and beverage'), + $this->l('HiFi, Photo and Video'), + $this->l('Home and Garden'), + $this->l('Home Appliances'), + $this->l('Jewelry'), + $this->l('Mobile and Telecom'), + $this->l('Services'), + $this->l('Shoes and accessories'), + $this->l('Sports and Entertainment'), + $this->l('Travel'), + ); + sort($list_activities); + $this->list_activities = $list_activities; + + $this->displayTemplate('configure'); + } + + /** + * Helper to display error for a field + * + * @param unknown_type $field + */ + public function displayError($field) + { + if (!isset($this->errors[$field])) + return; + + return ''.$this->errors[$field].''; + } +} diff --git a/install-new/controllers/http/database.php b/install-new/controllers/http/database.php new file mode 100644 index 000000000..3027b9f05 --- /dev/null +++ b/install-new/controllers/http/database.php @@ -0,0 +1,202 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +/** + * Step 3 : configure database and email connection + */ +class InstallControllerHttpDatabase extends InstallControllerHttp +{ + /** + * @var InstallModelDatabase + */ + public $model_database; + + /** + * @var InstallModelMail + */ + public $model_mail; + + public function init() + { + require_once _PS_INSTALL_MODELS_PATH_.'database.php'; + $this->model_database = new InstallModelDatabase(); + + require_once _PS_INSTALL_MODELS_PATH_.'mail.php'; + $this->model_mail = new InstallModelMail(); + } + + /** + * @see InstallAbstractModel::processNextStep() + */ + public function processNextStep() + { + $this->session->install_type = Tools::getValue('db_mode'); + + // Save database config + $this->session->database_server = trim(Tools::getValue('dbServer')); + $this->session->database_name = trim(Tools::getValue('dbName')); + $this->session->database_login = trim(Tools::getValue('dbLogin')); + $this->session->database_password = trim(Tools::getValue('dbPassword')); + $this->session->database_prefix = trim(Tools::getValue('db_prefix')); + $this->session->database_engine = Tools::getValue('dbEngine'); + $this->session->database_clear = Tools::getValue('database_clear'); + + // Save email config + $this->session->use_smtp = (bool)Tools::getValue('smtpChecked'); + $this->session->smtp_server = trim(Tools::getValue('smtpSrv')); + $this->session->smtp_encryption = Tools::getValue('smtpEnc'); + $this->session->smtp_port = (int)Tools::getValue('smtpPort'); + $this->session->smtp_login = trim(Tools::getValue('smtpLogin')); + $this->session->smtp_password = trim(Tools::getValue('smtpPassword')); + } + + /** + * Database configuration must be valid to validate this step + * + * @see InstallAbstractModel::validate() + */ + public function validate() + { + $this->errors = $this->model_database->testDatabaseSettings( + $this->session->database_server, + $this->session->database_name, + $this->session->database_login, + $this->session->database_password, + $this->session->database_prefix, + $this->session->database_engine + ); + + return count($this->errors) ? false : true; + } + + public function process() + { + if (Tools::getValue('checkDb')) + $this->processCheckDb(); + else if (Tools::getValue('sendMail')) + $this->processSendMail(); + } + + /** + * Check if a connection to database is possible with these data + */ + public function processCheckDb() + { + $server = Tools::getValue('dbServer'); + $database = Tools::getValue('dbName'); + $login = Tools::getValue('dbLogin'); + $password = Tools::getValue('dbPassword'); + $prefix = Tools::getValue('db_prefix'); + $engine = Tools::getValue('dbEngine'); + + $errors = $this->model_database->testDatabaseSettings($server, $database, $login, $password, $prefix, $engine); + + $this->ajaxJsonAnswer( + (count($errors)) ? false : true, + (count($errors)) ? implode('
', $errors) : $this->l('Database is connected') + ); + } + + /** + * Send a test email + */ + public function processSendMail() + { + $smtp_checked = (Tools::getValue('smtpChecked') == 'true'); + $server = Tools::getValue('smtpSrv'); + $encryption = Tools::getValue('smtpEnc'); + $port = Tools::getValue('smtpPort'); + $login = Tools::getValue('smtpLogin'); + $password = Tools::getValue('smtpPassword'); + $email = Tools::getValue('testEmail'); + + $result = $this->model_mail->sendTestMail($smtp_checked, $server, $login, $password, $port, $encryption, $email); + + $this->ajaxJsonAnswer( + (bool)$result, + ($result) ? $this->l('A test e-mail has been sent to %s', $email) : $this->l('An error occurred while sending email, please verify your parameters') + ); + } + + /** + * @see InstallAbstractModel::display() + */ + public function display() + { + if (!$this->session->install_type) + { + if (file_exists(_PS_ROOT_DIR_.'/config/settings.inc.php')) + { + include_once _PS_ROOT_DIR_.'/config/settings.inc.php'; + $this->database_server = _DB_SERVER_; + $this->database_name = _DB_NAME_; + $this->database_login = _DB_USER_; + $this->database_password = _DB_PASSWD_; + $this->database_engine = _MYSQL_ENGINE_; + $this->database_prefix = _DB_PREFIX_; + } + else + { + $this->database_server = 'localhost'; + $this->database_name = 'prestashop'; + $this->database_login = 'root'; + $this->database_password = ''; + $this->database_engine = 'InnoDB'; + $this->database_prefix = 'ps_'; + } + + $this->database_clear = true; + $this->install_type = 'full'; + $this->use_smtp = false; + $this->smtp_server = 'smtp.'; + $this->smtp_encryption = 'off'; + $this->smtp_port = 25; + $this->smtp_login = ''; + $this->smtp_password = ''; + } + else + { + $this->database_server = $this->session->database_server; + $this->database_name = $this->session->database_name; + $this->database_login = $this->session->database_login; + $this->database_password = $this->session->database_password; + $this->database_engine = $this->session->database_engine; + $this->database_prefix = $this->session->database_prefix; + $this->database_clear = $this->session->database_clear; + + $this->install_type = $this->session->install_type; + $this->use_smtp = $this->session->use_smtp; + $this->smtp_server = $this->session->smtp_server; + $this->smtp_encryption = $this->session->smtp_encryption; + $this->smtp_port = $this->session->smtp_port; + $this->smtp_login = $this->session->smtp_login; + $this->smtp_password = $this->session->smtp_password; + } + + $this->displayTemplate('database'); + } +} diff --git a/install-new/controllers/http/process.php b/install-new/controllers/http/process.php new file mode 100644 index 000000000..32a9443ec --- /dev/null +++ b/install-new/controllers/http/process.php @@ -0,0 +1,219 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +class InstallControllerHttpProcess extends InstallControllerHttp +{ + const SETTINGS_FILE = 'config/settings.inc.php'; + + public function init() + { + require_once _PS_INSTALL_MODELS_PATH_.'install.php'; + $this->model_install = new InstallModelInstall(); + } + + /** + * @see InstallAbstractModel::processNextStep() + */ + public function processNextStep() + { + } + + /** + * @see InstallAbstractModel::validate() + */ + public function validate() + { + return false; + } + + public function process() + { + if (file_exists(_PS_ROOT_DIR_.'/'.self::SETTINGS_FILE)) + require_once _PS_ROOT_DIR_.'/'.self::SETTINGS_FILE; + + if (Tools::getValue('installDatabase')) + $this->processInstallDatabase(); + else if (Tools::getValue('populateDatabase')) + $this->processPopulateDatabase(); + else if (Tools::getValue('configureShop')) + $this->processConfigureShop(); + else if (Tools::getValue('installModules')) + $this->processInstallModules(); + else if (Tools::getValue('installFixtures')) + $this->processInstallFixtures(); + else if (Tools::getValue('preactivation')) + $this->processPreactivation(); + } + + /** + * PROCESS : installDatabase + * Generate settings file and create database structure + */ + public function processInstallDatabase() + { + $success = $this->model_install->installDatabase( + $this->session->database_server, + $this->session->database_login, + $this->session->database_password, + $this->session->database_name, + $this->session->database_prefix, + $this->session->database_engine, + $this->session->database_clear + ); + + if (!$success || $this->model_install->getErrors()) + $this->ajaxJsonAnswer(false, $this->model_install->getErrors()); + $this->ajaxJsonAnswer(true); + } + + /** + * PROCESS : populateDatabase + * Populate database with default data + */ + public function processPopulateDatabase() + { + $this->initializeContext(); + + if (!$this->model_install->populateDatabase(true) || $this->model_install->getErrors()) + $this->ajaxJsonAnswer(false, $this->model_install->getErrors()); + $this->session->xml_loader_ids = $this->model_install->xml_loader_ids; + $this->ajaxJsonAnswer(true); + } + + /** + * PROCESS : configureShop + * Set default shop configuration + */ + public function processConfigureShop() + { + $this->initializeContext(); + + $success = $this->model_install->configureShop(array( + 'shop_name' => $this->session->shop_name, + 'shop_activity' => $this->session->shop_activity, + 'shop_country' => $this->session->shop_country, + 'shop_timezone' => $this->session->shop_timezone, + 'use_smtp' => $this->session->use_smtp, + 'smtp_server' => $this->session->smtp_server, + 'smtp_login' => $this->session->smtp_login, + 'smtp_password' => $this->session->smtp_password, + 'smtp_encryption' =>$this->session->smtp_encryption, + 'smtp_port' => $this->session->smtp_port, + 'admin_firstname' =>$this->session->admin_firstname, + 'admin_lastname' => $this->session->admin_lastname, + 'admin_password' => $this->session->admin_password, + 'admin_email' => $this->session->admin_email, + )); + + if (!$success || $this->model_install->getErrors()) + $this->ajaxJsonAnswer(false, $this->model_install->getErrors()); + $this->ajaxJsonAnswer(true); + } + + public function initializeContext() + { + global $smarty; + + Context::getContext()->shop = new Shop(1); + Configuration::loadConfiguration(); + Context::getContext()->language = new Language(Configuration::get('PS_LANG_DEFAULT')); + + require_once _PS_ROOT_DIR_.'/config/smarty.config.inc.php'; + Context::getContext()->smarty = $smarty; + } + + /** + * PROCESS : installModules + * Install all modules in ~/modules/ directory + */ + public function processInstallModules() + { + $this->initializeContext(); + + // Remove all modules from module table, just in case + Db::getInstance()->delete(_DB_PREFIX_.'module'); + + if (!$this->model_install->installModules() || $this->model_install->getErrors()) + $this->ajaxJsonAnswer(false, $this->model_install->getErrors()); + $this->ajaxJsonAnswer(true); + } + + /** + * PROCESS : installFixtures + * Install fixtures (E.g. demo products) + */ + public function processInstallFixtures() + { + $this->initializeContext(); + + $this->model_install->xml_loader_ids = $this->session->xml_loader_ids; + if (!$this->model_install->installFixtures() || $this->model_install->getErrors()) + $this->ajaxJsonAnswer(false, $this->model_install->getErrors()); + $this->ajaxJsonAnswer(true); + } + + /** + * PROCESS : preactivation + * (currently not used) + */ + public function processPreactivation() + { + foreach ($this->session->partners as $partner => $data) + { + /*$stream_context = @stream_context_create(array('http' => array('method'=> 'GET', 'timeout' => 5))); + $url = 'http://www.prestashop.com/partner/preactivation/actions.php?version=1.0&partner='.addslashes($_GET['partner']); + + // Protect fields + foreach ($_GET as $key => $value) + $_GET[$key] = strip_tags(str_replace(array('\'', '"'), '', trim($value))); + + // Encore Get, Send It and Get Answers + @require_once('../config/settings.inc.php'); + foreach ($_GET as $key => $val) + $url .= '&'.$key.'='.urlencode($val); + $url .= '&security='.md5($_GET['email']._COOKIE_IV_);*/ + } + + $this->ajaxJsonAnswer(true); + } + + /** + * @see InstallAbstractModel::display() + */ + public function display() + { + $this->process_steps = array( + 'installDatabase', + 'populateDatabase', + 'configureShop', + 'installModules', + 'installFixtures', + //'preactivation', + ); + $this->displayTemplate('process'); + } +} diff --git a/install-new/controllers/http/system.php b/install-new/controllers/http/system.php new file mode 100644 index 000000000..36dfacf84 --- /dev/null +++ b/install-new/controllers/http/system.php @@ -0,0 +1,132 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +/** + * Step 2 : check system configuration (permissions on folders, PHP version, etc.) + */ +class InstallControllerHttpSystem extends InstallControllerHttp +{ + public $tests = array(); + + /** + * @var InstallModelSystem + */ + public $model_system; + + /** + * @see InstallAbstractModel::init() + */ + public function init() + { + require_once _PS_INSTALL_MODELS_PATH_.'system.php'; + $this->model_system = new InstallModelSystem(); + } + + /** + * @see InstallAbstractModel::processNextStep() + */ + public function processNextStep() + { + } + + /** + * Required tests must be passed to validate this step + * + * @see InstallAbstractModel::validate() + */ + public function validate() + { + $this->tests['required'] = $this->model_system->checkRequiredTests(); + + return $this->tests['required']['success']; + } + + /** + * Display system step + */ + public function display() + { + if (!isset($this->tests['required'])) + $this->tests['required'] = $this->model_system->checkRequiredTests(); + + if (!isset($this->tests['optional'])) + $this->tests['optional'] = $this->model_system->checkOptionalTests(); + + // Generate display array + $this->tests_render = array( + 'required' => array( + array( + 'title' => $this->l('PHP parameters:'), + 'checks' => array( + 'phpversion' => $this->l('Is PHP 5.1.0 or later installed ?'), + 'upload' => $this->l('Can upload files allowed ?'), + 'system' => $this->l('Can create new files and folders ?'), + 'gd' => $this->l('Is GD Library installed ?'), + 'mysql_support' => $this->l('Is MySQL support is on ?'), + ) + ), + array( + 'title' => $this->l('Write permissions on files:'), + 'checks' => array( + 'config_dir' => '~/config/', + 'cache_dir' => '~/cache/', + 'log_dir' => '~/log/', + 'img_dir' => '~/img/', + 'mails_dir' => '~/mails/', + 'module_dir' => '~/modules/', + 'theme_lang_dir' => '~/themes/prestashop/lang/', + 'theme_cache_dir' => '~/themes/prestashop/cache/', + 'translations_dir' => '~/translations/', + 'customizable_products_dir' => '~/upload/', + 'virtual_products_dir' => '~/download/', + 'sitemap' => '~/sitemap.xml', + ) + ), + ), + 'optional' => array( + array( + 'title' => $this->l('PHP parameters:'), + 'checks' => array( + 'fopen' => $this->l('Can open external URLs ?'), + 'register_globals' => $this->l('Is PHP register global option desactivated (recommended) ?'), + 'gz' => $this->l('Is GZIP compression activated (recommended) ?'), + 'mcrypt' => $this->l('Is Mcrypt extension available (recommended) ?'), + 'magicquotes' => $this->l('Is PHP magic quotes option desactivated (recommended) ?'), + 'dom' => $this->l('Is Dom extension loaded ?'), + 'pdo_mysql' => $this->l('Is PDO MySQL extension loaded ?'), + ) + ), + ), + ); + + // If required tests failed, disable next button + if (!$this->tests['required']['success']) + $this->next_button = false; + + $this->displayTemplate('system'); + } +} diff --git a/install-new/controllers/http/welcome.php b/install-new/controllers/http/welcome.php new file mode 100644 index 000000000..7e8ec90b2 --- /dev/null +++ b/install-new/controllers/http/welcome.php @@ -0,0 +1,73 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +/** + * Step 1 : display agrement form + */ +class InstallControllerHttpWelcome extends InstallControllerHttp +{ + /** + * Process welcome form + * + * @see InstallAbstractModel::process() + */ + public function processNextStep() + { + $this->session->licence_agrement = Tools::getValue('licence_agrement'); + $this->session->configuration_agrement = Tools::getValue('configuration_agrement'); + } + + /** + * Licence agrement must be checked to validate this step + * + * @see InstallAbstractModel::validate() + */ + public function validate() + { + return $this->session->licence_agrement; + } + + /** + * Change language + */ + public function process() + { + if (Tools::getValue('language')) + { + $this->session->lang = Tools::getValue('language'); + $this->redirect('welcome'); + } + } + + /** + * Display welcome step + */ + public function display() + { + $this->displayTemplate('welcome'); + } +} diff --git a/install-new/data/db_structure.sql b/install-new/data/db_structure.sql new file mode 100644 index 000000000..595339222 --- /dev/null +++ b/install-new/data/db_structure.sql @@ -0,0 +1,2174 @@ +SET NAMES 'utf8'; + +CREATE TABLE `PREFIX_access` ( + `id_profile` int(10) unsigned NOT NULL, + `id_tab` int(10) unsigned NOT NULL, + `view` int(11) NOT NULL, + `add` int(11) NOT NULL, + `edit` int(11) NOT NULL, + `delete` int(11) NOT NULL, + PRIMARY KEY (`id_profile`,`id_tab`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_accessory` ( + `id_product_1` int(10) unsigned NOT NULL, + `id_product_2` int(10) unsigned NOT NULL, + KEY `accessory_product` (`id_product_1`,`id_product_2`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_address` ( + `id_address` int(10) unsigned NOT NULL auto_increment, + `id_country` int(10) unsigned NOT NULL, + `id_state` int(10) unsigned default NULL, + `id_customer` int(10) unsigned NOT NULL default '0', + `id_manufacturer` int(10) unsigned NOT NULL default '0', + `id_supplier` int(10) unsigned NOT NULL default '0', + `alias` varchar(32) NOT NULL, + `company` varchar(32) default NULL, + `lastname` varchar(32) NOT NULL, + `firstname` varchar(32) NOT NULL, + `address1` varchar(128) NOT NULL, + `address2` varchar(128) default NULL, + `postcode` varchar(12) default NULL, + `city` varchar(64) NOT NULL, + `other` text, + `phone` varchar(16) default NULL, + `phone_mobile` varchar(16) default NULL, + `vat_number` varchar(32) default NULL, + `dni` varchar(16) DEFAULT NULL, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + `active` tinyint(1) unsigned NOT NULL default '1', + `deleted` tinyint(1) unsigned NOT NULL default '0', + PRIMARY KEY (`id_address`), + KEY `address_customer` (`id_customer`), + KEY `id_country` (`id_country`), + KEY `id_state` (`id_state`), + KEY `id_manufacturer` (`id_manufacturer`), + KEY `id_supplier` (`id_supplier`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_alias` ( + `id_alias` int(10) unsigned NOT NULL auto_increment, + `alias` varchar(255) NOT NULL, + `search` varchar(255) NOT NULL, + `active` tinyint(1) NOT NULL default '1', + PRIMARY KEY (`id_alias`), + UNIQUE KEY `alias` (`alias`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_attachment` ( + `id_attachment` int(10) unsigned NOT NULL auto_increment, + `file` varchar(40) NOT NULL, + `file_name` varchar(128) NOT NULL, + `mime` varchar(128) NOT NULL, + PRIMARY KEY (`id_attachment`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_attachment_lang` ( + `id_attachment` int(10) unsigned NOT NULL auto_increment, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(32) default NULL, + `description` TEXT, + PRIMARY KEY (`id_attachment`, `id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product_attachment` ( + `id_product` int(10) unsigned NOT NULL, + `id_attachment` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_product`,`id_attachment`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_attribute` ( + `id_attribute` int(10) unsigned NOT NULL auto_increment, + `id_attribute_group` int(10) unsigned NOT NULL, + `color` varchar(32) default NULL, + `position` int(10) unsigned NOT NULL default '0', + PRIMARY KEY (`id_attribute`), + KEY `attribute_group` (`id_attribute_group`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_attribute_group` ( + `id_attribute_group` int(10) unsigned NOT NULL auto_increment, + `is_color_group` tinyint(1) NOT NULL default '0', + `group_type` ENUM('select', 'radio', 'color') NOT NULL DEFAULT 'select', + `position` int(10) unsigned NOT NULL default '0', + PRIMARY KEY (`id_attribute_group`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_attribute_group_lang` ( + `id_attribute_group` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(128) NOT NULL, + `public_name` varchar(64) NOT NULL, + PRIMARY KEY (`id_attribute_group`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_attribute_impact` ( + `id_attribute_impact` int(10) unsigned NOT NULL auto_increment, + `id_product` int(11) unsigned NOT NULL, + `id_attribute` int(11) unsigned NOT NULL, + `weight` float NOT NULL, + `price` decimal(17,2) NOT NULL, + PRIMARY KEY (`id_attribute_impact`), + UNIQUE KEY `id_product` (`id_product`,`id_attribute`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_attribute_lang` ( + `id_attribute` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(128) NOT NULL, + PRIMARY KEY (`id_attribute`,`id_lang`), + KEY `id_lang` (`id_lang`,`name`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_carrier` ( + `id_carrier` int(10) unsigned NOT NULL AUTO_INCREMENT, + `id_reference` int(10) unsigned NOT NULL, + `id_tax_rules_group` int(10) unsigned DEFAULT '0', + `name` varchar(64) NOT NULL, + `url` varchar(255) DEFAULT NULL, + `active` tinyint(1) unsigned NOT NULL DEFAULT '0', + `deleted` tinyint(1) unsigned NOT NULL DEFAULT '0', + `shipping_handling` tinyint(1) unsigned NOT NULL DEFAULT '1', + `range_behavior` tinyint(1) unsigned NOT NULL DEFAULT '0', + `is_module` tinyint(1) unsigned NOT NULL DEFAULT '0', + `is_free` tinyint(1) unsigned NOT NULL DEFAULT '0', + `shipping_external` tinyint(1) unsigned NOT NULL DEFAULT '0', + `need_range` tinyint(1) unsigned NOT NULL DEFAULT '0', + `external_module_name` varchar(64) DEFAULT NULL, + `shipping_method` int(2) NOT NULL DEFAULT '0', + `position` int(10) unsigned NOT NULL default '0', + PRIMARY KEY (`id_carrier`), + KEY `deleted` (`deleted`,`active`), + KEY `id_tax_rules_group` (`id_tax_rules_group`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_carrier_lang` ( + `id_carrier` int(10) unsigned NOT NULL, + `id_shop` int(11) unsigned NOT NULL DEFAULT '1', + `id_lang` int(10) unsigned NOT NULL, + `delay` varchar(128) default NULL, + UNIQUE KEY `shipper_lang_index` (`id_lang`,`id_shop`, `id_carrier`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_carrier_zone` ( + `id_carrier` int(10) unsigned NOT NULL, + `id_zone` int(10) unsigned NOT NULL, + PRIMARY KEY `carrier_zone_index` (`id_carrier`,`id_zone`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_cart` ( + `id_cart` int(10) unsigned NOT NULL auto_increment, + `id_group_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_carrier` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `id_address_delivery` int(10) unsigned NOT NULL, + `id_address_invoice` int(10) unsigned NOT NULL, + `id_currency` int(10) unsigned NOT NULL, + `id_customer` int(10) unsigned NOT NULL, + `id_guest` int(10) unsigned NOT NULL, + `secure_key` varchar(32) NOT NULL default '-1', + `recyclable` tinyint(1) unsigned NOT NULL default '1', + `gift` tinyint(1) unsigned NOT NULL default '0', + `gift_message` text, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_cart`), + KEY `cart_customer` (`id_customer`), + KEY `id_address_delivery` (`id_address_delivery`), + KEY `id_address_invoice` (`id_address_invoice`), + KEY `id_carrier` (`id_carrier`), + KEY `id_lang` (`id_lang`), + KEY `id_currency` (`id_currency`), + KEY `id_guest` (`id_guest`), + KEY `id_group_shop` (`id_group_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_cart_rule` ( + `id_cart_rule` int(10) unsigned NOT NULL auto_increment, + `id_customer` int unsigned NOT NULL default 0, + `date_from` datetime NOT NULL, + `date_to` datetime NOT NULL, + `description` text, + `quantity` int(10) unsigned NOT NULL default 0, + `quantity_per_user` int(10) unsigned NOT NULL default 0, + `priority` int(10) unsigned NOT NULL default 1, + `code` varchar(254) NOT NULL, + `minimum_amount` decimal(17,2) NOT NULL default 0, + `minimum_amount_tax` tinyint(1) NOT NULL default 0, + `minimum_amount_currency` int unsigned NOT NULL default 0, + `minimum_amount_shipping` tinyint(1) NOT NULL default 0, + `country_restriction` tinyint(1) unsigned NOT NULL default 0, + `carrier_restriction` tinyint(1) unsigned NOT NULL default 0, + `group_restriction` tinyint(1) unsigned NOT NULL default 0, + `cart_rule_restriction` tinyint(1) unsigned NOT NULL default 0, + `product_restriction` tinyint(1) unsigned NOT NULL default 0, + `free_shipping` tinyint(1) NOT NULL default 0, + `reduction_percent` decimal(4,2) NOT NULL default 0, + `reduction_amount` decimal(17,2) NOT NULL default 0, + `reduction_tax` tinyint(1) unsigned NOT NULL default 0, + `reduction_currency` int(10) unsigned NOT NULL default 0, + `reduction_product` int(10) NOT NULL default 0, + `gift_product` int(10) unsigned NOT NULL default 0, + `active` tinyint(1) unsigned NOT NULL default 0, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_cart_rule`) +); + +CREATE TABLE `PREFIX_cart_rule_lang` ( + `id_cart_rule` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(254) NOT NULL, + PRIMARY KEY (`id_cart_rule`, `id_lang`) +); + +CREATE TABLE `PREFIX_cart_rule_country` ( + `id_cart_rule` int(10) unsigned NOT NULL, + `id_country` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_cart_rule`, `id_country`) +); + +CREATE TABLE `PREFIX_cart_rule_group` ( + `id_cart_rule` int(10) unsigned NOT NULL, + `id_group` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_cart_rule`, `id_group`) +); + +CREATE TABLE `PREFIX_cart_rule_carrier` ( + `id_cart_rule` int(10) unsigned NOT NULL, + `id_carrier` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_cart_rule`, `id_carrier`) +); + +CREATE TABLE `PREFIX_cart_rule_combination` ( + `id_cart_rule_1` int(10) unsigned NOT NULL, + `id_cart_rule_2` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_cart_rule_1`, `id_cart_rule_2`) +); + +CREATE TABLE `PREFIX_cart_rule_product_rule` ( + `id_product_rule` int(10) unsigned NOT NULL auto_increment, + `id_cart_rule` int(10) unsigned NOT NULL, + `quantity` int(10) unsigned NOT NULL default 1, + `type` ENUM('products', 'categories', 'attributes') NOT NULL, + PRIMARY KEY (`id_product_rule`) +); + +CREATE TABLE `PREFIX_cart_rule_product_rule_value` ( + `id_product_rule` int(10) unsigned NOT NULL, + `id_item` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_product_rule`, `id_item`) +); + +CREATE TABLE `PREFIX_cart_cart_rule` ( + `id_cart` int(10) unsigned NOT NULL, + `id_cart_rule` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_cart`,`id_cart_rule`), + KEY (`id_cart_rule`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_cart_product` ( + `id_cart` int(10) unsigned NOT NULL, + `id_product` int(10) unsigned NOT NULL, + `id_shop` int(10) unsigned NOT NULL DEFAULT '1', + `id_product_attribute` int(10) unsigned default NULL, + `quantity` int(10) unsigned NOT NULL default '0', + `date_add` datetime NOT NULL, + KEY `cart_product_index` (`id_cart`,`id_product`), + KEY `id_product_attribute` (`id_product_attribute`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_category` ( + `id_category` int(10) unsigned NOT NULL auto_increment, + `id_parent` int(10) unsigned NOT NULL, + `level_depth` tinyint(3) unsigned NOT NULL default '0', + `nleft` int(10) unsigned NOT NULL default '0', + `nright` int(10) unsigned NOT NULL default '0', + `active` tinyint(1) unsigned NOT NULL default '0', + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + `position` int(10) unsigned NOT NULL default '0', + PRIMARY KEY (`id_category`), + KEY `category_parent` (`id_parent`), + KEY `nleftright` (`nleft`,`nright`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_category_group` ( + `id_category` int(10) unsigned NOT NULL, + `id_group` int(10) unsigned NOT NULL, + UNIQUE KEY `category_group_index` (`id_category`,`id_group`), + KEY `id_category` (`id_category`), + KEY `id_group` (`id_group`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_category_lang` ( + `id_category` int(10) unsigned NOT NULL, + `id_shop` INT( 11 ) UNSIGNED NOT NULL DEFAULT '1', + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(128) NOT NULL, + `description` text, + `link_rewrite` varchar(128) NOT NULL, + `meta_title` varchar(128) default NULL, + `meta_keywords` varchar(255) default NULL, + `meta_description` varchar(255) default NULL, + UNIQUE KEY `category_lang_index` (`id_category`,`id_shop`, `id_lang`), + KEY `category_name` (`name`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_category_product` ( + `id_category` int(10) unsigned NOT NULL, + `id_product` int(10) unsigned NOT NULL, + `position` int(10) unsigned NOT NULL default '0', + KEY `category_product_index` (`id_category`,`id_product`), + INDEX (`id_product`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_cms` ( + `id_cms` int(10) unsigned NOT NULL AUTO_INCREMENT, + `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_cms_category` int(10) unsigned NOT NULL, + `position` int(10) unsigned NOT NULL DEFAULT '0', + `active` tinyint(1) unsigned NOT NULL default '0', + PRIMARY KEY (`id_cms`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_cms_lang` ( + `id_cms` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `meta_title` varchar(128) NOT NULL, + `meta_description` varchar(255) default NULL, + `meta_keywords` varchar(255) default NULL, + `content` longtext, + `link_rewrite` varchar(128) NOT NULL, + PRIMARY KEY (`id_cms`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_cms_category` ( + `id_cms_category` int(10) unsigned NOT NULL AUTO_INCREMENT, + `id_parent` int(10) unsigned NOT NULL, + `level_depth` tinyint(3) unsigned NOT NULL DEFAULT '0', + `active` tinyint(1) unsigned NOT NULL DEFAULT '0', + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + `position` int(10) unsigned NOT NULL default '0', + PRIMARY KEY (`id_cms_category`), + KEY `category_parent` (`id_parent`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_cms_category_lang` ( + `id_cms_category` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(128) NOT NULL, + `description` text, + `link_rewrite` varchar(128) NOT NULL, + `meta_title` varchar(128) DEFAULT NULL, + `meta_keywords` varchar(255) DEFAULT NULL, + `meta_description` varchar(255) DEFAULT NULL, + UNIQUE KEY `category_lang_index` (`id_cms_category`,`id_lang`), + KEY `category_name` (`name`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_compare_product` ( + `id_compare_product` int(10) unsigned NOT NULL AUTO_INCREMENT, + `id_product` int(10) unsigned NOT NULL, + `id_guest` int(10) unsigned NOT NULL, + `id_customer` int(10) unsigned NOT NULL, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_compare_product`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_configuration` ( + `id_configuration` int(10) unsigned NOT NULL auto_increment, + `id_group_shop` INT(11) UNSIGNED DEFAULT NULL, + `id_shop` INT(11) UNSIGNED DEFAULT NULL, + `name` varchar(32) NOT NULL, + `value` text, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_configuration`), + KEY `name` (`name`), + KEY `id_shop` (`id_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_configuration_lang` ( + `id_configuration` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `value` text, + `date_upd` datetime default NULL, + PRIMARY KEY (`id_configuration`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_connections` ( + `id_connections` int(10) unsigned NOT NULL auto_increment, + `id_group_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_guest` int(10) unsigned NOT NULL, + `id_page` int(10) unsigned NOT NULL, + `ip_address` BIGINT NULL DEFAULT NULL, + `date_add` datetime NOT NULL, + `http_referer` varchar(255) default NULL, + PRIMARY KEY (`id_connections`), + KEY `id_guest` (`id_guest`), + KEY `date_add` (`date_add`), + KEY `id_page` (`id_page`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_connections_page` ( + `id_connections` int(10) unsigned NOT NULL, + `id_page` int(10) unsigned NOT NULL, + `time_start` datetime NOT NULL, + `time_end` datetime default NULL, + PRIMARY KEY (`id_connections`,`id_page`,`time_start`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_connections_source` ( + `id_connections_source` int(10) unsigned NOT NULL auto_increment, + `id_connections` int(10) unsigned NOT NULL, + `http_referer` varchar(255) default NULL, + `request_uri` varchar(255) default NULL, + `keywords` varchar(255) default NULL, + `date_add` datetime NOT NULL, + PRIMARY KEY (`id_connections_source`), + KEY `connections` (`id_connections`), + KEY `orderby` (`date_add`), + KEY `http_referer` (`http_referer`), + KEY `request_uri` (`request_uri`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_contact` ( + `id_contact` int(10) unsigned NOT NULL auto_increment, + `email` varchar(128) NOT NULL, + `customer_service` tinyint(1) NOT NULL DEFAULT 0, + `position` tinyint(2) unsigned NOT NULL default '0', + PRIMARY KEY (`id_contact`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_contact_lang` ( + `id_contact` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(32) NOT NULL, + `description` text, + UNIQUE KEY `contact_lang_index` (`id_contact`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_country` ( + `id_country` int(10) unsigned NOT NULL auto_increment, + `id_zone` int(10) unsigned NOT NULL, + `id_currency` int(10) unsigned NOT NULL default '0', + `iso_code` varchar(3) NOT NULL, + `call_prefix` int(10) NOT NULL default '0', + `active` tinyint(1) unsigned NOT NULL default '0', + `contains_states` tinyint(1) NOT NULL default '0', + `need_identification_number` tinyint(1) NOT NULL default '0', + `need_zip_code` tinyint(1) NOT NULL default '1', + `zip_code_format` varchar(12) NOT NULL default '', + `display_tax_label` BOOLEAN NOT NULL, + PRIMARY KEY (`id_country`), + KEY `country_iso_code` (`iso_code`), + KEY `country_` (`id_zone`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_country_lang` ( + `id_country` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(64) NOT NULL, + UNIQUE KEY `country_lang_index` (`id_country`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_currency` ( + `id_currency` int(10) unsigned NOT NULL auto_increment, + `name` varchar(32) NOT NULL, + `iso_code` varchar(3) NOT NULL default '0', + `iso_code_num` varchar(3) NOT NULL default '0', + `sign` varchar(8) NOT NULL, + `blank` tinyint(1) unsigned NOT NULL default '0', + `format` tinyint(1) unsigned NOT NULL default '0', + `decimals` tinyint(1) unsigned NOT NULL default '1', + `conversion_rate` decimal(13,6) NOT NULL, + `deleted` tinyint(1) unsigned NOT NULL default '0', + `active` tinyint(1) unsigned NOT NULL default '1', + PRIMARY KEY (`id_currency`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_customer` ( + `id_customer` int(10) unsigned NOT NULL auto_increment, + `id_group_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_gender` int(10) unsigned NOT NULL, + `id_default_group` int(10) unsigned NOT NULL DEFAULT '1', + `firstname` varchar(32) NOT NULL, + `lastname` varchar(32) NOT NULL, + `email` varchar(128) NOT NULL, + `passwd` varchar(32) NOT NULL, + `last_passwd_gen` timestamp NOT NULL default CURRENT_TIMESTAMP, + `birthday` date default NULL, + `newsletter` tinyint(1) unsigned NOT NULL default '0', + `ip_registration_newsletter` varchar(15) default NULL, + `newsletter_date_add` datetime default NULL, + `optin` tinyint(1) unsigned NOT NULL default '0', + `secure_key` varchar(32) NOT NULL default '-1', + `note` text, + `active` tinyint(1) unsigned NOT NULL default '0', + `is_guest` tinyint(1) NOT NULL default '0', + `deleted` tinyint(1) NOT NULL default '0', + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_customer`), + KEY `customer_email` (`email`), + KEY `customer_login` (`email`,`passwd`), + KEY `id_customer_passwd` (`id_customer`,`passwd`), + KEY `id_gender` (`id_gender`), + KEY `id_group_shop` (`id_group_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_customer_group` ( + `id_customer` int(10) unsigned NOT NULL, + `id_group` int(10) unsigned NOT NULL, + PRIMARY KEY `customer_group_index` (`id_customer`,`id_group`), + INDEX customer_login(id_group), + KEY `id_customer` (`id_customer`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_customer_message` ( + `id_customer_message` int(10) unsigned NOT NULL auto_increment, + `id_customer_thread` int(11) default NULL, + `id_employee` int(10) unsigned default NULL, + `message` text NOT NULL, + `file_name` varchar(18) DEFAULT NULL, + `ip_address` int(11) default NULL, + `user_agent` varchar(128) default NULL, + `date_add` datetime NOT NULL, + `private` TINYINT NOT NULL DEFAULT '0', + PRIMARY KEY (`id_customer_message`), + KEY `id_customer_thread` (`id_customer_thread`), + KEY `id_employee` (`id_employee`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + + +CREATE TABLE `PREFIX_customer_message_sync_imap` ( + `md5_header` varbinary(32) NOT NULL, + KEY `md5_header_index` (`md5_header`(4)) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_customer_thread` ( + `id_customer_thread` int(11) unsigned NOT NULL auto_increment, + `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_lang` int(10) unsigned NOT NULL, + `id_contact` int(10) unsigned NOT NULL, + `id_customer` int(10) unsigned default NULL, + `id_order` int(10) unsigned default NULL, + `id_product` int(10) unsigned default NULL, + `status` enum('open','closed','pending1','pending2') NOT NULL default 'open', + `email` varchar(128) NOT NULL, + `token` varchar(12) default NULL, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_customer_thread`), + KEY `id_shop` (`id_shop`), + KEY `id_lang` (`id_lang`), + KEY `id_contact` (`id_contact`), + KEY `id_customer` (`id_customer`), + KEY `id_order` (`id_order`), + KEY `id_product` (`id_product`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + + +CREATE TABLE `PREFIX_customization` ( + `id_customization` int(10) unsigned NOT NULL auto_increment, + `id_product_attribute` int(10) unsigned NOT NULL default '0', + `id_cart` int(10) unsigned NOT NULL, + `id_product` int(10) NOT NULL, + `quantity` int(10) NOT NULL, + `quantity_refunded` INT NOT NULL DEFAULT '0', + `quantity_returned` INT NOT NULL DEFAULT '0', + `in_cart` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0', + PRIMARY KEY (`id_customization`,`id_cart`,`id_product`), + KEY `id_product_attribute` (`id_product_attribute`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_customization_field` ( + `id_customization_field` int(10) unsigned NOT NULL auto_increment, + `id_product` int(10) unsigned NOT NULL, + `type` tinyint(1) NOT NULL, + `required` tinyint(1) NOT NULL, + PRIMARY KEY (`id_customization_field`), + KEY `id_product` (`id_product`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_customization_field_lang` ( + `id_customization_field` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(255) NOT NULL, + PRIMARY KEY (`id_customization_field`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_customized_data` ( + `id_customization` int(10) unsigned NOT NULL, + `type` tinyint(1) NOT NULL, + `index` int(3) NOT NULL, + `value` varchar(255) NOT NULL, + PRIMARY KEY (`id_customization`,`type`,`index`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_date_range` ( + `id_date_range` int(10) unsigned NOT NULL auto_increment, + `time_start` datetime NOT NULL, + `time_end` datetime NOT NULL, + PRIMARY KEY (`id_date_range`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_delivery` ( + `id_delivery` int(10) unsigned NOT NULL auto_increment, + `id_shop` INT UNSIGNED NULL DEFAULT NULL, + `id_group_shop` INT UNSIGNED NULL DEFAULT NULL, + `id_carrier` int(10) unsigned NOT NULL, + `id_range_price` int(10) unsigned default NULL, + `id_range_weight` int(10) unsigned default NULL, + `id_zone` int(10) unsigned NOT NULL, + `price` decimal(20,6) NOT NULL, + PRIMARY KEY (`id_delivery`), + KEY `id_zone` (`id_zone`), + KEY `id_carrier` (`id_carrier`,`id_zone`), + KEY `id_range_price` (`id_range_price`), + KEY `id_range_weight` (`id_range_weight`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_employee` ( + `id_employee` int(10) unsigned NOT NULL auto_increment, + `id_profile` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL DEFAULT 0, + `lastname` varchar(32) NOT NULL, + `firstname` varchar(32) NOT NULL, + `email` varchar(128) NOT NULL, + `passwd` varchar(32) NOT NULL, + `last_passwd_gen` timestamp NOT NULL default CURRENT_TIMESTAMP, + `stats_date_from` date default NULL, + `stats_date_to` date default NULL, + `bo_color` varchar(32) default NULL, + `bo_theme` varchar(32) default NULL, + `bo_uimode` ENUM('hover','click') default 'click', + `bo_show_screencast` tinyint(1) NOT NULL default '1', + `active` tinyint(1) unsigned NOT NULL default '0', + `id_last_order` tinyint(1) unsigned NOT NULL default '0', + `id_last_message` tinyint(1) unsigned NOT NULL default '0', + `id_last_customer` tinyint(1) unsigned NOT NULL default '0', + PRIMARY KEY (`id_employee`), + KEY `employee_login` (`email`,`passwd`), + KEY `id_employee_passwd` (`id_employee`,`passwd`), + KEY `id_profile` (`id_profile`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_employee_shop` ( +`id_employee` INT( 11 ) UNSIGNED NOT NULL , +`id_shop` INT( 11 ) UNSIGNED NOT NULL , + PRIMARY KEY ( `id_employee` , `id_shop` ), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_feature` ( + `id_feature` int(10) unsigned NOT NULL auto_increment, + `position` int(10) unsigned NOT NULL default '0', + PRIMARY KEY (`id_feature`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_feature_lang` ( + `id_feature` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(128) default NULL, + PRIMARY KEY (`id_feature`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_feature_product` ( + `id_feature` int(10) unsigned NOT NULL, + `id_product` int(10) unsigned NOT NULL, + `id_feature_value` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_feature`,`id_product`), + KEY `id_feature_value` (`id_feature_value`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_feature_value` ( + `id_feature_value` int(10) unsigned NOT NULL auto_increment, + `id_feature` int(10) unsigned NOT NULL, + `custom` tinyint(3) unsigned default NULL, + PRIMARY KEY (`id_feature_value`), + KEY `feature` (`id_feature`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_feature_value_lang` ( + `id_feature_value` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `value` varchar(255) default NULL, + PRIMARY KEY (`id_feature_value`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_gender` ( + `id_gender` int(11) NOT NULL AUTO_INCREMENT, + `type` tinyint(1) NOT NULL, + PRIMARY KEY (`id_gender`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_gender_lang` ( + `id_gender` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(20) NOT NULL, + PRIMARY KEY (`id_gender`,`id_lang`), + KEY `id_gender` (`id_gender`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_group` ( + `id_group` int(10) unsigned NOT NULL auto_increment, + `reduction` decimal(17,2) NOT NULL default '0.00', + `price_display_method` TINYINT NOT NULL DEFAULT 0, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_group`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_group_lang` ( + `id_group` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(32) NOT NULL, + UNIQUE KEY `attribute_lang_index` (`id_group`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_group_reduction` ( + `id_group_reduction` MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT, + `id_group` INT(10) UNSIGNED NOT NULL, + `id_category` INT(10) UNSIGNED NOT NULL, + `reduction` DECIMAL(4, 3) NOT NULL, + PRIMARY KEY(`id_group_reduction`), + UNIQUE KEY(`id_group`, `id_category`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product_group_reduction_cache` ( + `id_product` INT UNSIGNED NOT NULL, + `id_group` INT UNSIGNED NOT NULL, + `reduction` DECIMAL(4, 3) NOT NULL, + PRIMARY KEY(`id_product`, `id_group`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_guest` ( + `id_guest` int(10) unsigned NOT NULL auto_increment, + `id_operating_system` int(10) unsigned default NULL, + `id_web_browser` int(10) unsigned default NULL, + `id_customer` int(10) unsigned default NULL, + `javascript` tinyint(1) default '0', + `screen_resolution_x` smallint(5) unsigned default NULL, + `screen_resolution_y` smallint(5) unsigned default NULL, + `screen_color` tinyint(3) unsigned default NULL, + `sun_java` tinyint(1) default NULL, + `adobe_flash` tinyint(1) default NULL, + `adobe_director` tinyint(1) default NULL, + `apple_quicktime` tinyint(1) default NULL, + `real_player` tinyint(1) default NULL, + `windows_media` tinyint(1) default NULL, + `accept_language` varchar(8) default NULL, + PRIMARY KEY (`id_guest`), + KEY `id_customer` (`id_customer`), + KEY `id_operating_system` (`id_operating_system`), + KEY `id_web_browser` (`id_web_browser`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_hook` ( + `id_hook` int(10) unsigned NOT NULL auto_increment, + `name` varchar(64) NOT NULL, + `title` varchar(64) NOT NULL, + `description` text, + `position` tinyint(1) NOT NULL default '1', + `live_edit` tinyint(1) NOT NULL default '0', + `is_native` tinyint(1) NOT NULL default '0', + PRIMARY KEY (`id_hook`), + UNIQUE KEY `hook_name` (`name`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_hook_alias` ( + `id_hook_alias` int(10) unsigned NOT NULL auto_increment, + `alias` varchar(64) NOT NULL, + `name` varchar(64) NOT NULL, + PRIMARY KEY (`id_hook_alias`), + UNIQUE KEY `alias` (`alias`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_hook_module` ( + `id_module` int(10) unsigned NOT NULL, + `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_hook` int(10) unsigned NOT NULL, + `position` tinyint(2) unsigned NOT NULL, + PRIMARY KEY (`id_module`,`id_hook`,`id_shop`), + KEY `id_hook` (`id_hook`), + KEY `id_module` (`id_module`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_hook_module_exceptions` ( + `id_hook_module_exceptions` int(10) unsigned NOT NULL auto_increment, + `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_module` int(10) unsigned NOT NULL, + `id_hook` int(10) unsigned NOT NULL, + `file_name` varchar(255) default NULL, + PRIMARY KEY (`id_hook_module_exceptions`), + KEY `id_module` (`id_module`), + KEY `id_hook` (`id_hook`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_image` ( + `id_image` int(10) unsigned NOT NULL auto_increment, + `id_product` int(10) unsigned NOT NULL, + `position` smallint(2) unsigned NOT NULL default '0', + `cover` tinyint(1) unsigned NOT NULL default '0', + PRIMARY KEY (`id_image`), + KEY `image_product` (`id_product`), + KEY `id_product_cover` (`id_product`,`cover`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_image_lang` ( + `id_image` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `legend` varchar(128) default NULL, + UNIQUE KEY `image_lang_index` (`id_image`,`id_lang`), + KEY `id_image` (`id_image`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_image_type` ( + `id_image_type` int(10) unsigned NOT NULL auto_increment, + `name` varchar(16) NOT NULL, + `width` int(10) unsigned NOT NULL, + `height` int(10) unsigned NOT NULL, + `products` tinyint(1) NOT NULL default '1', + `categories` tinyint(1) NOT NULL default '1', + `manufacturers` tinyint(1) NOT NULL default '1', + `suppliers` tinyint(1) NOT NULL default '1', + `scenes` tinyint(1) NOT NULL default '1', + `stores` tinyint(1) NOT NULL default '1', + PRIMARY KEY (`id_image_type`), + KEY `image_type_name` (`name`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_lang` ( + `id_lang` int(10) unsigned NOT NULL auto_increment, + `name` varchar(32) NOT NULL, + `active` tinyint(3) unsigned NOT NULL default '0', + `iso_code` char(2) NOT NULL, + `language_code` char(5) NOT NULL, + `date_format_lite` char(32) NOT NULL DEFAULT 'Y-m-d', + `date_format_full` char(32) NOT NULL DEFAULT 'Y-m-d H:i:s', + `is_rtl` TINYINT(1) NOT NULL default '0', + PRIMARY KEY (`id_lang`), + KEY `lang_iso_code` (`iso_code`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_manufacturer` ( + `id_manufacturer` int(10) unsigned NOT NULL auto_increment, + `name` varchar(64) NOT NULL, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + `active` tinyint(1) NOT NULL default 0, + PRIMARY KEY (`id_manufacturer`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_manufacturer_lang` ( + `id_manufacturer` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `description` text, + `short_description` varchar(254) default NULL, + `meta_title` varchar(128) default NULL, + `meta_keywords` varchar(255) default NULL, + `meta_description` varchar(255) default NULL, + PRIMARY KEY (`id_manufacturer`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_message` ( + `id_message` int(10) unsigned NOT NULL auto_increment, + `id_cart` int(10) unsigned default NULL, + `id_customer` int(10) unsigned NOT NULL, + `id_employee` int(10) unsigned default NULL, + `id_order` int(10) unsigned NOT NULL, + `message` text NOT NULL, + `private` tinyint(1) unsigned NOT NULL default '1', + `date_add` datetime NOT NULL, + PRIMARY KEY (`id_message`), + KEY `message_order` (`id_order`), + KEY `id_cart` (`id_cart`), + KEY `id_customer` (`id_customer`), + KEY `id_employee` (`id_employee`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_message_readed` ( + `id_message` int(10) unsigned NOT NULL, + `id_employee` int(10) unsigned NOT NULL, + `date_add` datetime NOT NULL, + PRIMARY KEY (`id_message`,`id_employee`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_meta` ( + `id_meta` int(10) unsigned NOT NULL auto_increment, + `page` varchar(64) NOT NULL, + PRIMARY KEY (`id_meta`), + KEY `meta_name` (`page`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_meta_lang` ( + `id_meta` int(10) unsigned NOT NULL, + `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_lang` int(10) unsigned NOT NULL, + `title` varchar(128) default NULL, + `description` varchar(255) default NULL, + `keywords` varchar(255) default NULL, + `url_rewrite` varchar(254) NOT NULL, + PRIMARY KEY (`id_meta`, `id_shop`, `id_lang`), + KEY `id_shop` (`id_shop`), + KEY `id_lang` (`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_module` ( + `id_module` int(10) unsigned NOT NULL auto_increment, + `name` varchar(64) NOT NULL, + `active` tinyint(1) unsigned NOT NULL default '0', + PRIMARY KEY (`id_module`), + KEY `name` (`name`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_module_access` ( + `id_profile` int(10) unsigned NOT NULL, + `id_module` int(10) unsigned NOT NULL, + `view` tinyint(1) NOT NULL, + `configure` tinyint(1) NOT NULL, + PRIMARY KEY (`id_profile`,`id_module`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_module_country` ( + `id_module` int(10) unsigned NOT NULL, + `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_country` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_module`,`id_shop`, `id_country`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_module_currency` ( + `id_module` int(10) unsigned NOT NULL, + `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_currency` int(11) NOT NULL, + PRIMARY KEY (`id_module`,`id_shop`, `id_currency`), + KEY `id_module` (`id_module`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_module_group` ( + `id_module` int(10) unsigned NOT NULL, + `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_group` int(11) unsigned NOT NULL, + PRIMARY KEY (`id_module`,`id_shop`, `id_group`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_operating_system` ( + `id_operating_system` int(10) unsigned NOT NULL auto_increment, + `name` varchar(64) default NULL, + PRIMARY KEY (`id_operating_system`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_orders` ( + `id_order` int(10) unsigned NOT NULL auto_increment, + `id_group_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_carrier` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `id_customer` int(10) unsigned NOT NULL, + `id_cart` int(10) unsigned NOT NULL, + `id_currency` int(10) unsigned NOT NULL, + `id_address_delivery` int(10) unsigned NOT NULL, + `id_address_invoice` int(10) unsigned NOT NULL, + `secure_key` varchar(32) NOT NULL default '-1', + `payment` varchar(255) NOT NULL, + `conversion_rate` decimal(13,6) NOT NULL default 1, + `module` varchar(255) default NULL, + `recyclable` tinyint(1) unsigned NOT NULL default '0', + `gift` tinyint(1) unsigned NOT NULL default '0', + `gift_message` text, + `shipping_number` varchar(32) default NULL, + `total_discounts` decimal(17,2) NOT NULL default '0.00', + `total_discounts_tax_incl` decimal(17,2) NOT NULL default '0.00', + `total_discounts_tax_excl` decimal(17,2) NOT NULL default '0.00', + `total_paid` decimal(17,2) NOT NULL default '0.00', + `total_paid_tax_incl` decimal(17,2) NOT NULL default '0.00', + `total_paid_tax_excl` decimal(17,2) NOT NULL default '0.00', + `total_paid_real` decimal(17,2) NOT NULL default '0.00', + `total_products` decimal(17,2) NOT NULL default '0.00', + `total_products_wt` DECIMAL(17, 2) NOT NULL default '0.00', + `total_shipping` decimal(17,2) NOT NULL default '0.00', + `total_shipping_tax_incl` decimal(17,2) NOT NULL default '0.00', + `total_shipping_tax_excl` decimal(17,2) NOT NULL default '0.00', + `carrier_tax_rate` DECIMAL(10, 3) NOT NULL default '0.00', + `total_wrapping` decimal(17,2) NOT NULL default '0.00', + `total_wrapping_tax_incl` decimal(17,2) NOT NULL default '0.00', + `total_wrapping_tax_excl` decimal(17,2) NOT NULL default '0.00', + `invoice_number` int(10) unsigned NOT NULL default '0', + `delivery_number` int(10) unsigned NOT NULL default '0', + `invoice_date` datetime NOT NULL, + `delivery_date` datetime NOT NULL, + `valid` int(1) unsigned NOT NULL default '0', + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_order`), + KEY `id_customer` (`id_customer`), + KEY `id_cart` (`id_cart`), + KEY `invoice_number` (`invoice_number`), + KEY `id_carrier` (`id_carrier`), + KEY `id_lang` (`id_lang`), + KEY `id_currency` (`id_currency`), + KEY `id_address_delivery` (`id_address_delivery`), + KEY `id_address_invoice` (`id_address_invoice`), + KEY `id_group_shop` (`id_group_shop`), + KEY `id_shop` (`id_shop`), + INDEX `date_add`(`date_add`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_order_detail_tax` ( + `id_order_detail` int(11) NOT NULL, + `id_tax` int(11) NOT NULL +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_order_detail` ( + `id_order_detail` int(10) unsigned NOT NULL auto_increment, + `id_order` int(10) unsigned NOT NULL, + `product_id` int(10) unsigned NOT NULL, + `product_attribute_id` int(10) unsigned default NULL, + `product_name` varchar(255) NOT NULL, + `product_quantity` int(10) unsigned NOT NULL default '0', + `product_quantity_in_stock` int(10) NOT NULL default 0, + `product_quantity_refunded` int(10) unsigned NOT NULL default '0', + `product_quantity_return` int(10) unsigned NOT NULL default '0', + `product_quantity_reinjected` int(10) unsigned NOT NULL default 0, + `product_price` decimal(20,6) NOT NULL default '0.000000', + `reduction_percent` DECIMAL(10, 2) NOT NULL default '0.00', + `reduction_amount` DECIMAL(20, 6) NOT NULL default '0.000000', + `group_reduction` DECIMAL(10, 2) NOT NULL default '0.000000', + `product_quantity_discount` decimal(20,6) NOT NULL default '0.000000', + `product_ean13` varchar(13) default NULL, + `product_upc` varchar(12) default NULL, + `product_reference` varchar(32) default NULL, + `product_supplier_reference` varchar(32) default NULL, + `product_weight` float NOT NULL, + `tax_name` varchar(16) NOT NULL, + `tax_rate` DECIMAL(10,3) NOT NULL DEFAULT '0.000', + `tax_computation_method` tinyint(1) unsigned NOT NULL default '0', + `ecotax` decimal(21,6) NOT NULL default '0.00', + `ecotax_tax_rate` DECIMAL(5,3) NOT NULL DEFAULT '0.000', + `discount_quantity_applied` TINYINT(1) NOT NULL DEFAULT 0, + `download_hash` varchar(255) default NULL, + `download_nb` int(10) unsigned default '0', + `download_deadline` datetime default '0000-00-00 00:00:00', + PRIMARY KEY (`id_order_detail`), + KEY `order_detail_order` (`id_order`), + KEY `product_id` (`product_id`), + KEY `product_attribute_id` (`product_attribute_id`), + KEY `id_order_id_order_detail` (`id_order`, `id_order_detail`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_order_cart_rule` ( + `id_order_cart_rule` int(10) unsigned NOT NULL auto_increment, + `id_order` int(10) unsigned NOT NULL, + `id_cart_rule` int(10) unsigned NOT NULL, + `name` varchar(32) NOT NULL, + `value` decimal(17,2) NOT NULL default '0.00', + PRIMARY KEY (`id_order_cart_rule`), + KEY `id_order` (`id_order`), + KEY `id_cart_rule` (`id_cart_rule`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_order_history` ( + `id_order_history` int(10) unsigned NOT NULL auto_increment, + `id_employee` int(10) unsigned NOT NULL, + `id_order` int(10) unsigned NOT NULL, + `id_order_state` int(10) unsigned NOT NULL, + `date_add` datetime NOT NULL, + PRIMARY KEY (`id_order_history`), + KEY `order_history_order` (`id_order`), + KEY `id_employee` (`id_employee`), + KEY `id_order_state` (`id_order_state`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_order_message` ( + `id_order_message` int(10) unsigned NOT NULL auto_increment, + `date_add` datetime NOT NULL, + PRIMARY KEY (`id_order_message`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_order_message_lang` ( + `id_order_message` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(128) NOT NULL, + `message` text NOT NULL, + PRIMARY KEY (`id_order_message`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_order_return` ( + `id_order_return` int(10) unsigned NOT NULL auto_increment, + `id_customer` int(10) unsigned NOT NULL, + `id_order` int(10) unsigned NOT NULL, + `state` tinyint(1) unsigned NOT NULL default '1', + `question` text NOT NULL, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_order_return`), + KEY `order_return_customer` (`id_customer`), + KEY `id_order` (`id_order`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_order_return_detail` ( + `id_order_return` int(10) unsigned NOT NULL, + `id_order_detail` int(10) unsigned NOT NULL, + `id_customization` int(10) unsigned NOT NULL default '0', + `product_quantity` int(10) unsigned NOT NULL default '0', + PRIMARY KEY (`id_order_return`,`id_order_detail`,`id_customization`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_order_return_state` ( + `id_order_return_state` int(10) unsigned NOT NULL auto_increment, + `color` varchar(32) default NULL, + PRIMARY KEY (`id_order_return_state`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_order_return_state_lang` ( + `id_order_return_state` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(64) NOT NULL, + UNIQUE KEY `order_state_lang_index` (`id_order_return_state`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_order_slip` ( + `id_order_slip` int(10) unsigned NOT NULL auto_increment, + `conversion_rate` decimal(13,6) NOT NULL default 1, + `id_customer` int(10) unsigned NOT NULL, + `id_order` int(10) unsigned NOT NULL, + `shipping_cost` tinyint(3) unsigned NOT NULL default '0', + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_order_slip`), + KEY `order_slip_customer` (`id_customer`), + KEY `id_order` (`id_order`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_order_slip_detail` ( + `id_order_slip` int(10) unsigned NOT NULL, + `id_order_detail` int(10) unsigned NOT NULL, + `product_quantity` int(10) unsigned NOT NULL default '0', + PRIMARY KEY (`id_order_slip`,`id_order_detail`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_order_state` ( + `id_order_state` int(10) UNSIGNED NOT NULL auto_increment, + `invoice` tinyint(1) UNSIGNED default '0', + `send_email` tinyint(1) UNSIGNED NOT NULL default '0', + `color` varchar(32) default NULL, + `unremovable` tinyint(1) UNSIGNED NOT NULL, + `hidden` tinyint(1) UNSIGNED NOT NULL default '0', + `logable` tinyint(1) NOT NULL default '0', + `delivery` tinyint(1) UNSIGNED NOT NULL default '0', + `shipped` tinyint(1) UNSIGNED NOT NULL default '0', + PRIMARY KEY (`id_order_state`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_order_state_lang` ( + `id_order_state` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(64) NOT NULL, + `template` varchar(64) NOT NULL, + UNIQUE KEY `order_state_lang_index` (`id_order_state`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_pack` ( + `id_product_pack` int(10) unsigned NOT NULL, + `id_product_item` int(10) unsigned NOT NULL, + `quantity` int(10) unsigned NOT NULL DEFAULT 1, + PRIMARY KEY (`id_product_pack`,`id_product_item`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_page` ( + `id_page` int(10) unsigned NOT NULL auto_increment, + `id_page_type` int(10) unsigned NOT NULL, + `id_object` int(10) unsigned default NULL, + PRIMARY KEY (`id_page`), + KEY `id_page_type` (`id_page_type`), + KEY `id_object` (`id_object`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_page_type` ( + `id_page_type` int(10) unsigned NOT NULL auto_increment, + `name` varchar(255) NOT NULL, + PRIMARY KEY (`id_page_type`), + KEY `name` (`name`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_page_viewed` ( + `id_page` int(10) unsigned NOT NULL, + `id_group_shop` INT UNSIGNED NOT NULL DEFAULT '1', + `id_shop` INT UNSIGNED NOT NULL DEFAULT '1', + `id_date_range` int(10) unsigned NOT NULL, + `counter` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_page`, `id_date_range`, `id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_payment_cc` ( + `id_payment_cc` INT NOT NULL auto_increment, + `id_order` INT UNSIGNED NULL, + `id_currency` INT UNSIGNED NOT NULL, + `amount` DECIMAL(10,2) NOT NULL, + `transaction_id` VARCHAR(254) NULL, + `card_number` VARCHAR(254) NULL, + `card_brand` VARCHAR(254) NULL, + `card_expiration` CHAR(7) NULL, + `card_holder` VARCHAR(254) NULL, + `date_add` DATETIME NOT NULL, + PRIMARY KEY (`id_payment_cc`), + KEY `id_order` (`id_order`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product` ( + `id_product` int(10) unsigned NOT NULL auto_increment, + `id_supplier` int(10) unsigned default NULL, + `id_manufacturer` int(10) unsigned default NULL, + `id_tax_rules_group` int(10) unsigned NOT NULL, + `id_category_default` int(10) unsigned default NULL, + `on_sale` tinyint(1) unsigned NOT NULL default '0', + `online_only` tinyint(1) unsigned NOT NULL default '0', + `ean13` varchar(13) default NULL, + `upc` varchar(12) default NULL, + `ecotax` decimal(17,6) NOT NULL default '0.00', + `quantity` int(10) NOT NULL default '0', + `minimal_quantity` int(10) unsigned NOT NULL default '1', + `price` decimal(20,6) NOT NULL default '0.000000', + `wholesale_price` decimal(20,6) NOT NULL default '0.000000', + `unity` varchar(255) default NULL, + `unit_price_ratio` decimal(20,6) NOT NULL default '0.000000', + `additional_shipping_cost` decimal(20,2) NOT NULL default '0.00', + `reference` varchar(32) default NULL, + `supplier_reference` varchar(32) default NULL, + `location` varchar(64) default NULL, + `width` float NOT NULL default '0', + `height` float NOT NULL default '0', + `depth` float NOT NULL default '0', + `weight` float NOT NULL default '0', + `out_of_stock` int(10) unsigned NOT NULL default '2', + `quantity_discount` tinyint(1) default '0', + `customizable` tinyint(2) NOT NULL default '0', + `uploadable_files` tinyint(4) NOT NULL default '0', + `text_fields` tinyint(4) NOT NULL default '0', + `active` tinyint(1) unsigned NOT NULL default '0', + `available_for_order` tinyint(1) NOT NULL default '1', + `available_date` date NOT NULL, + `condition` ENUM('new', 'used', 'refurbished') NOT NULL DEFAULT 'new', + `show_price` tinyint(1) NOT NULL default '1', + `indexed` tinyint(1) NOT NULL default '0', + `cache_is_pack` tinyint(1) NOT NULL default '0', + `cache_has_attachments` tinyint(1) NOT NULL default '0', + `is_virtual` tinyint(1) NOT NULL default '0', + `cache_default_attribute` int(10) unsigned default NULL, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_product`), + KEY `product_supplier` (`id_supplier`), + KEY `product_manufacturer` (`id_manufacturer`), + KEY `id_category_default` (`id_category_default`), + KEY `date_add` (`date_add`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product_attribute` ( + `id_product_attribute` int(10) unsigned NOT NULL auto_increment, + `id_product` int(10) unsigned NOT NULL, + `reference` varchar(32) default NULL, + `supplier_reference` varchar(32) default NULL, + `location` varchar(64) default NULL, + `ean13` varchar(13) default NULL, + `upc` varchar(12) default NULL, + `wholesale_price` decimal(20,6) NOT NULL default '0.000000', + `price` decimal(20,6) NOT NULL default '0.000000', + `ecotax` decimal(17,6) NOT NULL default '0.00', + `quantity` int(10) NOT NULL default '0', + `weight` float NOT NULL default '0', + `unit_price_impact` decimal(17,2) NOT NULL default '0.00', + `default_on` tinyint(1) unsigned NOT NULL default '0', + `minimal_quantity` int(10) unsigned NOT NULL DEFAULT '1', + `available_date` date NOT NULL, + PRIMARY KEY (`id_product_attribute`), + KEY `product_attribute_product` (`id_product`), + KEY `reference` (`reference`), + KEY `supplier_reference` (`supplier_reference`), + KEY `product_default` (`id_product`,`default_on`), + KEY `id_product_id_product_attribute` (`id_product_attribute` , `id_product`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product_attribute_combination` ( + `id_attribute` int(10) unsigned NOT NULL, + `id_product_attribute` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_attribute`,`id_product_attribute`), + KEY `id_product_attribute` (`id_product_attribute`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product_attribute_image` ( + `id_product_attribute` int(10) unsigned NOT NULL, + `id_image` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_product_attribute`,`id_image`), + KEY `id_image` (`id_image`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product_download` ( + `id_product_download` int(10) unsigned NOT NULL AUTO_INCREMENT, + `id_product` int(10) unsigned NOT NULL, + `id_product_attribute` int(10) unsigned NOT NULL, + `display_filename` varchar(255) DEFAULT NULL, + `filename` varchar(255) DEFAULT NULL, + `date_add` datetime NOT NULL, + `date_expiration` datetime DEFAULT NULL, + `nb_days_accessible` int(10) unsigned DEFAULT NULL, + `nb_downloadable` int(10) unsigned DEFAULT '1', + `active` tinyint(1) unsigned NOT NULL DEFAULT '1', + `is_shareable` tinyint(1) unsigned NOT NULL DEFAULT '0', + PRIMARY KEY (`id_product_download`), + KEY `product_active` (`id_product`,`active`), + KEY `id_product_attribute` (`id_product_attribute`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product_lang` ( + `id_product` int(10) unsigned NOT NULL, + `id_shop` INT( 11 ) UNSIGNED NOT NULL DEFAULT '1', + `id_lang` int(10) unsigned NOT NULL, + `description` text, + `description_short` text, + `link_rewrite` varchar(128) NOT NULL, + `meta_description` varchar(255) default NULL, + `meta_keywords` varchar(255) default NULL, + `meta_title` varchar(128) default NULL, + `name` varchar(128) NOT NULL, + `available_now` varchar(255) default NULL, + `available_later` varchar(255) default NULL, + UNIQUE KEY `product_lang_index` (`id_product`, `id_shop` , `id_lang`), + KEY `id_lang` (`id_lang`), + KEY `name` (`name`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product_sale` ( + `id_product` int(10) unsigned NOT NULL, + `quantity` int(10) unsigned NOT NULL default '0', + `sale_nbr` int(10) unsigned NOT NULL default '0', + `date_upd` date NOT NULL, + PRIMARY KEY (`id_product`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product_tag` ( + `id_product` int(10) unsigned NOT NULL, + `id_tag` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_product`,`id_tag`), + KEY `id_tag` (`id_tag`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_profile` ( + `id_profile` int(10) unsigned NOT NULL auto_increment, + PRIMARY KEY (`id_profile`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_profile_lang` ( + `id_lang` int(10) unsigned NOT NULL, + `id_profile` int(10) unsigned NOT NULL, + `name` varchar(128) NOT NULL, + PRIMARY KEY (`id_profile`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_quick_access` ( + `id_quick_access` int(10) unsigned NOT NULL auto_increment, + `new_window` tinyint(1) NOT NULL default '0', + `link` varchar(128) NOT NULL, + PRIMARY KEY (`id_quick_access`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_quick_access_lang` ( + `id_quick_access` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(32) NOT NULL, + PRIMARY KEY (`id_quick_access`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_range_price` ( + `id_range_price` int(10) unsigned NOT NULL auto_increment, + `id_carrier` int(10) unsigned NOT NULL, + `delimiter1` decimal(20,6) NOT NULL, + `delimiter2` decimal(20,6) NOT NULL, + PRIMARY KEY (`id_range_price`), + UNIQUE KEY `id_carrier` (`id_carrier`,`delimiter1`,`delimiter2`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_range_weight` ( + `id_range_weight` int(10) unsigned NOT NULL auto_increment, + `id_carrier` int(10) unsigned NOT NULL, + `delimiter1` decimal(20,6) NOT NULL, + `delimiter2` decimal(20,6) NOT NULL, + PRIMARY KEY (`id_range_weight`), + UNIQUE KEY `id_carrier` (`id_carrier`,`delimiter1`,`delimiter2`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_referrer` ( + `id_referrer` int(10) unsigned NOT NULL auto_increment, + `name` varchar(64) NOT NULL, + `passwd` varchar(32) default NULL, + `http_referer_regexp` varchar(64) default NULL, + `http_referer_like` varchar(64) default NULL, + `request_uri_regexp` varchar(64) default NULL, + `request_uri_like` varchar(64) default NULL, + `http_referer_regexp_not` varchar(64) default NULL, + `http_referer_like_not` varchar(64) default NULL, + `request_uri_regexp_not` varchar(64) default NULL, + `request_uri_like_not` varchar(64) default NULL, + `base_fee` decimal(5,2) NOT NULL default '0.00', + `percent_fee` decimal(5,2) NOT NULL default '0.00', + `click_fee` decimal(5,2) NOT NULL default '0.00', + `date_add` datetime NOT NULL, + PRIMARY KEY (`id_referrer`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_referrer_cache` ( + `id_connections_source` int(11) unsigned NOT NULL, + `id_referrer` int(11) unsigned NOT NULL, + PRIMARY KEY (`id_connections_source`, `id_referrer`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_referrer_shop` ( + `id_referrer` int(10) unsigned NOT NULL auto_increment, + `id_shop` int(10) unsigned NOT NULL default '1', + `cache_visitors` int(11) default NULL, + `cache_visits` int(11) default NULL, + `cache_pages` int(11) default NULL, + `cache_registrations` int(11) default NULL, + `cache_orders` int(11) default NULL, + `cache_sales` decimal(17,2) default NULL, + `cache_reg_rate` decimal(5,4) default NULL, + `cache_order_rate` decimal(5,4) default NULL, + PRIMARY KEY (`id_referrer`, `id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_request_sql` ( + `id_request_sql` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(200) NOT NULL, + `sql` text NOT NULL, + PRIMARY KEY (`id_request_sql`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_scene` ( + `id_scene` int(10) unsigned NOT NULL auto_increment, + `active` tinyint(1) NOT NULL default '1', + PRIMARY KEY (`id_scene`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_scene_category` ( + `id_scene` int(10) unsigned NOT NULL, + `id_category` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_scene`,`id_category`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_scene_lang` ( + `id_scene` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(100) NOT NULL, + PRIMARY KEY (`id_scene`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_scene_products` ( + `id_scene` int(10) unsigned NOT NULL, + `id_product` int(10) unsigned NOT NULL, + `x_axis` int(4) NOT NULL, + `y_axis` int(4) NOT NULL, + `zone_width` int(3) NOT NULL, + `zone_height` int(3) NOT NULL, + PRIMARY KEY (`id_scene`, `id_product`, `x_axis`, `y_axis`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_search_engine` ( + `id_search_engine` int(10) unsigned NOT NULL auto_increment, + `server` varchar(64) NOT NULL, + `getvar` varchar(16) NOT NULL, + PRIMARY KEY (`id_search_engine`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_search_index` ( + `id_product` int(11) unsigned NOT NULL, + `id_word` int(11) unsigned NOT NULL, + `weight` smallint(4) unsigned NOT NULL default 1, + PRIMARY KEY (`id_word`, `id_product`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_search_word` ( + `id_word` int(10) unsigned NOT NULL auto_increment, + `id_shop` int(11) unsigned NOT NULL default 1, + `id_lang` int(10) unsigned NOT NULL, + `word` varchar(15) NOT NULL, + PRIMARY KEY (`id_word`), + UNIQUE KEY `id_lang` (`id_lang`,`id_shop`, `word`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_specific_price` ( + `id_specific_price` INT UNSIGNED NOT NULL AUTO_INCREMENT, + `id_product` INT UNSIGNED NOT NULL, + `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_currency` INT UNSIGNED NOT NULL, + `id_country` INT UNSIGNED NOT NULL, + `id_group` INT UNSIGNED NOT NULL, + `id_product_attribute` INT UNSIGNED NOT NULL, + `price` DECIMAL(20, 6) NOT NULL, + `from_quantity` SMALLINT UNSIGNED NOT NULL, + `reduction` DECIMAL(20, 6) NOT NULL, + `reduction_type` ENUM('amount', 'percentage') NOT NULL, + `from` DATETIME NOT NULL, + `to` DATETIME NOT NULL, + PRIMARY KEY(`id_specific_price`), + KEY (`id_product`, `id_shop`, `id_currency`, `id_country`, `id_group`, `from_quantity`, `from`, `to`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_state` ( + `id_state` int(10) unsigned NOT NULL auto_increment, + `id_country` int(11) unsigned NOT NULL, + `id_zone` int(11) unsigned NOT NULL, + `name` varchar(64) NOT NULL, + `iso_code` char(4) NOT NULL, + `tax_behavior` smallint(1) NOT NULL default '0', + `active` tinyint(1) NOT NULL default '0', + PRIMARY KEY (`id_state`), + KEY `id_country` (`id_country`), + KEY `id_zone` (`id_zone`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_subdomain` ( + `id_subdomain` int(10) unsigned NOT NULL auto_increment, + `name` varchar(16) NOT NULL, + PRIMARY KEY (`id_subdomain`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_supplier` ( + `id_supplier` int(10) unsigned NOT NULL auto_increment, + `name` varchar(64) NOT NULL, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + `active` tinyint(1) NOT NULL default 0, + PRIMARY KEY (`id_supplier`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_supplier_lang` ( + `id_supplier` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `description` text, + `meta_title` varchar(128) default NULL, + `meta_keywords` varchar(255) default NULL, + `meta_description` varchar(255) default NULL, + PRIMARY KEY (`id_supplier`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_tab` ( + `id_tab` int(10) unsigned NOT NULL auto_increment, + `id_parent` int(11) NOT NULL, + `class_name` varchar(64) NOT NULL, + `module` varchar(64) NULL, + `position` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_tab`), + KEY `class_name` (`class_name`), + KEY `id_parent` (`id_parent`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_tab_lang` ( + `id_tab` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(32) default NULL, + PRIMARY KEY (`id_tab`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_tag` ( + `id_tag` int(10) unsigned NOT NULL auto_increment, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(32) NOT NULL, + PRIMARY KEY (`id_tag`), + KEY `tag_name` (`name`), + KEY `id_lang` (`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_tax` ( + `id_tax` int(10) unsigned NOT NULL auto_increment, + `rate` DECIMAL(10, 3) NOT NULL, + `active` tinyint(1) unsigned NOT NULL default '1', + `deleted` tinyint(1) unsigned NOT NULL default '0', + PRIMARY KEY (`id_tax`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_tax_lang` ( + `id_tax` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(32) NOT NULL, + UNIQUE KEY `tax_lang_index` (`id_tax`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_timezone` ( + id_timezone int(10) unsigned NOT NULL auto_increment, + name VARCHAR(32) NOT NULL, + PRIMARY KEY timezone_index(`id_timezone`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_web_browser` ( + `id_web_browser` int(10) unsigned NOT NULL auto_increment, + `name` varchar(64) default NULL, + PRIMARY KEY (`id_web_browser`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_zone` ( + `id_zone` int(10) unsigned NOT NULL auto_increment, + `name` varchar(64) NOT NULL, + `active` tinyint(1) unsigned NOT NULL default '0', + PRIMARY KEY (`id_zone`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_carrier_group` ( + `id_carrier` int(10) unsigned NOT NULL, + `id_group` int(10) unsigned NOT NULL, + UNIQUE KEY `id_carrier` (`id_carrier`,`id_group`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_store` ( + `id_store` int(10) unsigned NOT NULL AUTO_INCREMENT, + `id_country` int(10) unsigned NOT NULL, + `id_state` int(10) unsigned DEFAULT NULL, + `name` varchar(128) NOT NULL, + `address1` varchar(128) NOT NULL, + `address2` varchar(128) DEFAULT NULL, + `city` varchar(64) NOT NULL, + `postcode` varchar(12) NOT NULL, + `latitude` decimal(10,8) DEFAULT NULL, + `longitude` decimal(10,8) DEFAULT NULL, + `hours` varchar(254) DEFAULT NULL, + `phone` varchar(16) DEFAULT NULL, + `fax` varchar(16) DEFAULT NULL, + `email` varchar(128) DEFAULT NULL, + `note` text, + `active` tinyint(1) unsigned NOT NULL DEFAULT '0', + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_store`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_webservice_account` ( + `id_webservice_account` int(11) NOT NULL AUTO_INCREMENT, + `key` varchar(32) NOT NULL, + `description` text NULL, + `class_name` VARCHAR( 50 ) NOT NULL DEFAULT 'WebserviceRequest', + `is_module` TINYINT( 2 ) NOT NULL DEFAULT '0', + `module_name` VARCHAR( 50 ) NULL DEFAULT NULL, + `active` tinyint(2) NOT NULL, + PRIMARY KEY (`id_webservice_account`), + KEY `key` (`key`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_webservice_permission` ( + `id_webservice_permission` int(11) NOT NULL AUTO_INCREMENT, + `resource` varchar(50) NOT NULL, + `method` enum('GET','POST','PUT','DELETE','HEAD') NOT NULL, + `id_webservice_account` int(11) NOT NULL, + PRIMARY KEY (`id_webservice_permission`), + UNIQUE KEY `resource_2` (`resource`,`method`,`id_webservice_account`), + KEY `resource` (`resource`), + KEY `method` (`method`), + KEY `id_webservice_account` (`id_webservice_account`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_required_field` ( + `id_required_field` int(11) NOT NULL AUTO_INCREMENT, + `object_name` varchar(32) NOT NULL, + `field_name` varchar(32) NOT NULL, + PRIMARY KEY (`id_required_field`), + KEY `object_name` (`object_name`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_memcached_servers` ( +`id_memcached_server` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , +`ip` VARCHAR( 254 ) NOT NULL , +`port` INT(11) UNSIGNED NOT NULL , +`weight` INT(11) UNSIGNED NOT NULL +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product_country_tax` ( + `id_product` int(11) NOT NULL, + `id_country` int(11) NOT NULL, + `id_tax` int(11) NOT NULL, + UNIQUE KEY `id_product` (`id_product`,`id_country`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + + +CREATE TABLE `PREFIX_tax_rule` ( + `id_tax_rule` int(11) NOT NULL AUTO_INCREMENT, + `id_tax_rules_group` int(11) NOT NULL, + `id_country` int(11) NOT NULL, + `id_state` int(11) NOT NULL, + `zipcode_from` INT NOT NULL, + `zipcode_to` INT NOT NULL, + `id_tax` int(11) NOT NULL, + `behavior` int(11) NOT NULL, + `description` VARCHAR( 100 ) NOT NULL, + PRIMARY KEY (`id_tax_rule`), + KEY `id_tax_rules_group` (`id_tax_rules_group`), + KEY `id_tax` (`id_tax`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_tax_rules_group` ( +`id_tax_rules_group` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , +`name` VARCHAR( 50 ) NOT NULL , +`active` INT NOT NULL +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_help_access` ( + `id_help_access` int(11) NOT NULL AUTO_INCREMENT, + `label` varchar(45) NOT NULL, + `version` varchar(8) NOT NULL, + PRIMARY KEY (`id_help_access`), + UNIQUE KEY `label` (`label`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_specific_price_priority` ( + `id_specific_price_priority` INT NOT NULL AUTO_INCREMENT , + `id_product` INT NOT NULL , + `priority` VARCHAR( 80 ) NOT NULL , + PRIMARY KEY ( `id_specific_price_priority` , `id_product` ) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_log` ( + `id_log` int(10) unsigned NOT NULL AUTO_INCREMENT, + `severity` tinyint(1) NOT NULL, + `error_code` int(11) DEFAULT NULL, + `message` text NOT NULL, + `object_type` varchar(32) DEFAULT NULL, + `object_id` int(10) unsigned DEFAULT NULL, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_log`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_import_match` ( + `id_import_match` int(10) NOT NULL AUTO_INCREMENT, + `name` varchar(32) NOT NULL, + `match` text NOT NULL, + `skip` int(2) NOT NULL, + PRIMARY KEY (`id_import_match`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_address_format` ( + `id_country` int(10) unsigned NOT NULL, + `format` varchar(255) NOT NULL DEFAULT '', + KEY `country` (`id_country`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_group_shop` ( + `id_group_shop` int(11) unsigned NOT NULL AUTO_INCREMENT, + `name` varchar(64) CHARACTER SET utf8 NOT NULL, + `share_customer` TINYINT(1) NOT NULL, + `share_order` TINYINT(1) NOT NULL, + `share_stock` TINYINT(1) NOT NULL, + `active` tinyint(1) NOT NULL DEFAULT '1', + `deleted` tinyint(1) NOT NULL DEFAULT '0', + PRIMARY KEY (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_shop` ( + `id_shop` int(11) unsigned NOT NULL AUTO_INCREMENT, + `id_group_shop` int(11) unsigned NOT NULL, + `name` varchar(64) CHARACTER SET utf8 NOT NULL, + `id_category` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_theme` INT(1) UNSIGNED NOT NULL, + `active` tinyint(1) NOT NULL DEFAULT '1', + `deleted` tinyint(1) NOT NULL DEFAULT '0', + PRIMARY KEY (`id_shop`), + KEY `id_group_shop` (`id_group_shop`), + KEY `id_category` (`id_category`), + KEY `id_theme` (`id_theme`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + + CREATE TABLE IF NOT EXISTS `PREFIX_shop_url` ( + `id_shop_url` int(11) unsigned NOT NULL AUTO_INCREMENT, + `id_shop` int(11) unsigned NOT NULL, + `domain` varchar(255) NOT NULL, + `domain_ssl` varchar(255) NOT NULL, + `physical_uri` varchar(64) NOT NULL, + `virtual_uri` varchar(64) NOT NULL, + `main` TINYINT(1) NOT NULL, + `active` TINYINT(1) NOT NULL, + PRIMARY KEY (`id_shop_url`), + KEY `id_shop` (`id_shop`), + UNIQUE KEY `shop_url` (`domain`, `virtual_uri`) + ) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_theme` ( + `id_theme` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(64) NOT NULL, + PRIMARY KEY (`id_theme`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_theme_specific` ( + `id_theme` int(11) unsigned NOT NULL, + `id_shop` INT(11) UNSIGNED NOT NULL, + `entity` int(11) unsigned NOT NULL, + `id_object` int(11) unsigned NOT NULL, + PRIMARY KEY (`id_theme`,`id_shop`, `entity`,`id_object`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_country_shop` ( +`id_country` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL , + PRIMARY KEY (`id_country`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_carrier_shop` ( +`id_carrier` INT( 11 ) UNSIGNED NOT NULL , +`id_shop` INT( 11 ) UNSIGNED NOT NULL , +PRIMARY KEY (`id_carrier`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_cms_shop` ( +`id_cms` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL , + PRIMARY KEY (`id_cms`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_lang_shop` ( +`id_lang` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL, + PRIMARY KEY (`id_lang`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_currency_shop` ( +`id_currency` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL, + PRIMARY KEY (`id_currency`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_contact_shop` ( + `id_contact` INT(11) UNSIGNED NOT NULL, + `id_shop` INT(11) UNSIGNED NOT NULL, + PRIMARY KEY (`id_contact`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_image_shop` ( +`id_image` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL, + PRIMARY KEY (`id_image`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_attribute_group_shop` ( +`id_attribute` INT(11) UNSIGNED NOT NULL, +`id_group_shop` INT(11) UNSIGNED NOT NULL, + PRIMARY KEY (`id_attribute`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_feature_group_shop` ( +`id_feature` INT(11) UNSIGNED NOT NULL, +`id_group_shop` INT(11) UNSIGNED NOT NULL , + PRIMARY KEY (`id_feature`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_group_group_shop` ( +`id_group` INT( 11 ) UNSIGNED NOT NULL, +`id_group_shop` INT( 11 ) UNSIGNED NOT NULL, + PRIMARY KEY (`id_group`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_attribute_group_group_shop` ( +`id_attribute_group` INT( 11 ) UNSIGNED NOT NULL , +`id_group_shop` INT( 11 ) UNSIGNED NOT NULL , + PRIMARY KEY (`id_attribute_group`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_tax_rules_group_group_shop` ( + `id_tax_rules_group` INT( 11 ) UNSIGNED NOT NULL, + `id_group_shop` INT( 11 ) UNSIGNED NOT NULL, + PRIMARY KEY (`id_tax_rules_group`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_zone_group_shop` ( +`id_zone` INT( 11 ) UNSIGNED NOT NULL , +`id_group_shop` INT( 11 ) UNSIGNED NOT NULL , + PRIMARY KEY (`id_zone`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_manufacturer_group_shop` ( +`id_manufacturer` INT( 11 ) UNSIGNED NOT NULL , +`id_group_shop` INT( 11 ) UNSIGNED NOT NULL , + PRIMARY KEY (`id_manufacturer`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_supplier_group_shop` ( +`id_supplier` INT( 11 ) UNSIGNED NOT NULL, +`id_group_shop` INT( 11 ) UNSIGNED NOT NULL, +PRIMARY KEY (`id_supplier`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_store_shop` ( +`id_store` INT( 11 ) UNSIGNED NOT NULL , +`id_shop` INT( 11 ) UNSIGNED NOT NULL, +PRIMARY KEY (`id_store`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product_shop` ( +`id_product` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL, +PRIMARY KEY ( `id_shop` , `id_product` ), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_module_shop` ( +`id_module` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL, +PRIMARY KEY (`id_module` , `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_webservice_account_shop` ( +`id_webservice_account` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL, +PRIMARY KEY (`id_webservice_account` , `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_scene_shop` ( +`id_scene` INT( 11 ) UNSIGNED NOT NULL , +`id_shop` INT( 11 ) UNSIGNED NOT NULL, +PRIMARY KEY (`id_scene`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_group_module_restriction` ( + `id_group` INT(11) UNSIGNED NOT NULL , + `id_module` INT(11) UNSIGNED NOT NULL , + `authorized` tinyint(1) NOT NULL DEFAULT '0', +PRIMARY KEY (`id_group`,`id_module`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_stock_mvt` ( + `id_stock_mvt` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, + `id_stock` INT(11) UNSIGNED NOT NULL, + `id_order` INT(11) UNSIGNED DEFAULT NULL, + `id_supplier_order` INT(11) UNSIGNED DEFAULT NULL, + `id_stock_mvt_reason` INT(11) UNSIGNED NOT NULL, + `id_employee` INT(11) UNSIGNED NOT NULL, + `physical_quantity` INT(11) UNSIGNED NOT NULL, + `date_add` DATETIME NOT NULL, + `sign` tinyint(1) NOT NULL DEFAULT 1, + `price_te` DECIMAL(20,6) DEFAULT '0.000000', + `last_wa` DECIMAL(20,6) DEFAULT '0.000000', + `current_wa` DECIMAL(20,6) DEFAULT '0.000000', + `referer` bigint UNSIGNED DEFAULT NULL, + PRIMARY KEY (`id_stock_mvt`), + KEY `id_stock` (`id_stock`), + KEY `id_stock_mvt_reason` (`id_stock_mvt_reason`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_stock_mvt_reason` ( + `id_stock_mvt_reason` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, + `sign` tinyint(1) NOT NULL DEFAULT 1, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_stock_mvt_reason`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_stock_mvt_reason_lang` ( + `id_stock_mvt_reason` INT(11) UNSIGNED NOT NULL, + `id_lang` INT(11) UNSIGNED NOT NULL, + `name` VARCHAR(255) CHARACTER SET utf8 NOT NULL, + PRIMARY KEY (`id_stock_mvt_reason`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_stock` ( +`id_stock` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, +`id_warehouse` INT(11) UNSIGNED NOT NULL, +`id_product` INT(11) UNSIGNED NOT NULL, +`id_product_attribute` INT(11) UNSIGNED NOT NULL, +`physical_quantity` INT(11) UNSIGNED NOT NULL, +`usable_quantity` INT(11) UNSIGNED NOT NULL, +`price_te` DECIMAL(20,6) DEFAULT '0.000000', + PRIMARY KEY (`id_stock`), + KEY `id_warehouse` (`id_warehouse`), + KEY `id_product` (`id_product`), + KEY `id_product_attribute` (`id_product_attribute`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_warehouse` ( +`id_warehouse` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, +`id_currency` INT(11) UNSIGNED NOT NULL, +`id_address` INT(11) UNSIGNED NOT NULL, +`id_employee` INT(11) UNSIGNED NOT NULL, +`reference` VARCHAR(32) DEFAULT NULL, +`name` VARCHAR(45) NOT NULL, +`management_type` ENUM('WA', 'FIFO', 'LIFO') NOT NULL DEFAULT 'WA', + PRIMARY KEY (`id_warehouse`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_warehouse_product_location` ( +`id_product` INT(11) UNSIGNED NOT NULL, +`id_product_attribute` INT(11) UNSIGNED NOT NULL, +`id_warehouse` INT(11) UNSIGNED NOT NULL, +`location` VARCHAR(64) DEFAULT NULL, + PRIMARY KEY (`id_product`, `id_product_attribute`, `id_warehouse`), + KEY `id_warehouse` (`id_warehouse`), + KEY `id_product` (`id_product`), + KEY `id_product_attribute` (`id_product_attribute`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_warehouse_shop` ( +`id_shop` INT(11) UNSIGNED NOT NULL, +`id_warehouse` INT(11) UNSIGNED NOT NULL, + PRIMARY KEY (`id_warehouse`, `id_shop`), + KEY `id_warehouse` (`id_warehouse`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_warehouse_carrier` ( +`id_carrier` INT(11) UNSIGNED NOT NULL, +`id_warehouse` INT(11) UNSIGNED NOT NULL, + PRIMARY KEY (`id_warehouse`, `id_carrier`), + KEY `id_warehouse` (`id_warehouse`), + KEY `id_carrier` (`id_carrier`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_stock_available` ( +`id_stock_available` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, +`id_product` INT(11) UNSIGNED NOT NULL, +`id_product_attribute` INT(11) UNSIGNED NOT NULL, +`id_shop` INT(11) UNSIGNED NOT NULL, +`quantity` INT(10) NOT NULL DEFAULT '0', +`depends_on_stock` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0', +`out_of_stock` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0', + PRIMARY KEY (`id_stock_available`), + KEY `id_shop` (`id_shop`), + KEY `id_product` (`id_product`), + KEY `id_product_attribute` (`id_product_attribute`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_supplier_order` ( +`id_supplier_order` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, +`id_supplier` INT(11) UNSIGNED NOT NULL, +`id_employee` INT(11) UNSIGNED NOT NULL, +`id_warehouse` INT(11) UNSIGNED NOT NULL, +`id_supplier_order_state` INT(11) UNSIGNED NOT NULL, +`id_currency` INT(11) UNSIGNED NOT NULL, +`id_ref_currency` INT(11) UNSIGNED NOT NULL, +`reference` VARCHAR(32) DEFAULT NULL, +`date_add` DATETIME NOT NULL, +`date_upd` DATETIME NOT NULL, +`date_delivery_expected` DATETIME DEFAULT NULL, +`total_te` DECIMAL(20,6) DEFAULT '0.000000', +`total_with_discount_te` DECIMAL(20,6) DEFAULT '0.000000', +`total_tax` DECIMAL(20,6) DEFAULT '0.000000', +`total_ti` DECIMAL(20,6) DEFAULT '0.000000', +`discount_rate` DECIMAL(20,6) DEFAULT '0.000000', +`discount_value_te` DECIMAL(20,6) DEFAULT '0.000000', + PRIMARY KEY (`id_supplier_order`), + KEY `id_supplier` (`id_supplier`), + KEY `id_warehouse` (`id_warehouse`), + KEY `reference` (`reference`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_supplier_order_detail` ( +`id_supplier_order_detail` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, +`id_supplier_order` INT(11) UNSIGNED NOT NULL, +`id_product` INT(11) UNSIGNED NOT NULL, +`id_product_attribute` INT(11) UNSIGNED NOT NULL, +`id_currency` INT(11) UNSIGNED NOT NULL, +`exchange_rate` DECIMAL(20,6) DEFAULT '0.000000', +`unit_price_te` DECIMAL(20,6) DEFAULT '0.000000', +`quantity_expected` INT(11) UNSIGNED NOT NULL, +`quantity_received` INT(11) UNSIGNED NOT NULL, +`price_te` DECIMAL(20,6) DEFAULT '0.000000', +`discount_rate` DECIMAL(20,6) DEFAULT '0.000000', +`discount_value_te` DECIMAL(20,6) DEFAULT '0.000000', +`price_with_discount_te` DECIMAL(20,6) DEFAULT '0.000000', +`tax_rate` DECIMAL(20,6) DEFAULT '0.000000', +`tax_value` DECIMAL(20,6) DEFAULT '0.000000', +`price_ti` DECIMAL(20,6) DEFAULT '0.000000', +`tax_value_with_order_discount` DECIMAL(20,6) DEFAULT '0.000000', +`price_with_order_discount_te` DECIMAL(20,6) DEFAULT '0.000000', + PRIMARY KEY (`id_supplier_order_detail`), + KEY `id_supplier_order` (`id_supplier_order`), + KEY `id_product` (`id_product`), + KEY `id_product_attribute` (`id_product_attribute`), + KEY `id_product_product_attribute` (`id_product`, `id_product_attribute`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_supplier_order_history` ( +`id_supplier_order_history` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, +`id_supplier_order` INT(11) UNSIGNED NOT NULL, +`id_employee` INT(11) UNSIGNED NOT NULL, +`id_state` INT(11) UNSIGNED NOT NULL, +`date_add` DATETIME NOT NULL, + PRIMARY KEY (`id_supplier_order_history`), + KEY `id_supplier_order` (`id_supplier_order`), + KEY `id_employee` (`id_employee`), + KEY `id_state` (`id_state`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_supplier_order_state` ( +`id_supplier_order_state` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, +`delivery_note` tinyint(1) NOT NULL DEFAULT 0, +`editable` tinyint(1) NOT NULL DEFAULT 0, +`receipt_state` tinyint(1) NOT NULL DEFAULT 0, +`pending_receipt` tinyint(1) NOT NULL DEFAULT 0, +`enclosed` tinyint(1) NOT NULL DEFAULT 0, +`color` VARCHAR(32) DEFAULT NULL, + PRIMARY KEY (`id_supplier_order_state`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_supplier_order_state_lang` ( +`id_supplier_order_state` INT(11) UNSIGNED NOT NULL, +`id_lang` INT(11) UNSIGNED NOT NULL, +`name` VARCHAR(128) DEFAULT NULL, + PRIMARY KEY (`id_supplier_order_state`, `id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_supplier_order_receipt_history` ( +`id_supplier_order_receipt_history` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, +`id_supplier_order_detail` INT(11) UNSIGNED NOT NULL, +`id_employee` INT(11) UNSIGNED NOT NULL, +`id_supplier_order_state` INT(11) UNSIGNED NOT NULL, +`quantity` INT(11) UNSIGNED NOT NULL, +`date_add` DATETIME NOT NULL, + PRIMARY KEY (`id_supplier_order_receipt_history`), + KEY `id_supplier_order_detail` (`id_supplier_order_detail`), + KEY `id_supplier_order_state` (`id_supplier_order_state`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_supplier_rates` ( +`id_product` INT(11) UNSIGNED NOT NULL, +`id_product_attribute` INT(11) UNSIGNED NOT NULL, +`id_supplier` INT(11) UNSIGNED NOT NULL, +`id_currency` INT(11) UNSIGNED NOT NULL, +`quantity_min` INT(11) UNSIGNED NOT NULL, +`quantity_max` INT(11) UNSIGNED NOT NULL, +`price_te` DECIMAL(20,6) DEFAULT '0.000000', + PRIMARY KEY (`id_product`, `id_product_attribute`, `id_supplier`, `quantity_min`, `quantity_max`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_accounting_zone_shop` ( + `id_accounting_zone_shop` int(11) NOT NULL AUTO_INCREMENT, + `id_zone` int(11) NOT NULL, + `id_shop` int(11) NOT NULL, + `account_number` varchar(64) NOT NULL, + PRIMARY KEY (`id_accounting_zone_shop`), + UNIQUE KEY `id_zone` (`id_zone`,`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; diff --git a/install-new/data/img/genders/Miss.jpg b/install-new/data/img/genders/Miss.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a2f7ee3f1b7855a65cc1aac1624247d8a3064150 GIT binary patch literal 866 zcmex=_1P|rX?qqI0P zFI~aY%U!`Mz|~!$%*;qrN1?DZF(6Oj-S5fuR$!pIEN!@|nR z%E~Fi%grl7GWdUhL6Cz%fI)znQHg;`kdaxC@&6G9d7vj*8Nq-73K*GyZe(NU;N;>4 zD%dK(z{JSR%*4VBay3wOEl{3;MUYiU(a@1iI53f2sZhkIapFP_Wv7h?MT0JWP%%y_ zYU1P)6PJ*bQdLve(9|+9H8Z!cv~qTFb#wRd^a>6M4GWKmj7m;PO-s+n%qlJ^Ei136 ztZHs)ZENr7?3y%r%G7DoXUv?nXz`Mz%a*TLxoXqqEnBy3-?4Mop~FXx9y@;G&P778mFHFAhJOVynsO4!g^lvOVTv-zK?TI%;fl zX0pdcO}2PVQIGyP?;lUntP^-$RDUR3Z7Pd=>XvHFb?RF@ZfPt^nHeN0ruIzURI;;w z+qp`%P4(H)y}|w;?)9&TemQN^i)-af(SM^H_SH5TJ8a}QIng7M+iIWak7Ew6y??95 zyxP^@_O<(WuhBJKsdo=fC$4rAKfhlo^ID*ykfF9@NXV(>vW%}|_jKPV{?i|PbN#C7 N_~~E&#T);>2>|M|E0O>J literal 0 HcmV?d00001 diff --git a/install-new/data/img/genders/Mr.jpg b/install-new/data/img/genders/Mr.jpg new file mode 100644 index 0000000000000000000000000000000000000000..14107c32be9f9360ea2c5b06a234d8947898cdb6 GIT binary patch literal 875 zcmex=_1P|rX?qqI0P zFI~aY%U!`Mz|~!$%*;qrN1?DZF(6Oj-S5fuR$!pIEN!@|nR z%E~Fi%grl7GWdUhL6Cz%fI)znQHg;`kdaxC@&6G9d7vj*8Nq-73K*GyZe(NU;N;>4 zD%dK(z{JSR%*4VBay3wOEl{3;MUYiU(a@1iI53f2sZhkIapFP_Wv7h?MT0JWP%%y_ zYU1P)6PJ*bQdLve(9|+9H8Z!cv~qTFb#wRd^a>6M4GWKmj7m;PO-s+n%qlJ^Ei136 ztZHs)ZENr7?3y%r%G7DoXUv?nXz`Mz%a*TLxoXqqEnBy3-?4Mop~FXx9y@;G&P778mFHFAhJOgW>}eRU@tQ4SAo zb4ZzJKA}R9IiZPPq3fe9^CR6`*>-Z9CkJ1d_3~@AwAs|J-aCVwt_!~F?VNln-EjU) z2jxi)$9OBwt*+ERtbJavBKg>?&^^EITzl-laqpF+>1TYGZo7M9s+-X6Cqm|GTn*9h z*VbnL*7=bi{oy~uVX^74+a?`)9lW>t#hT?#lN<&6Oafljy*8f~(|qFoIX>5#C0b#} YuLn$iy7l(u+_JjmQh7_(od16l0NE=u*Z=?k literal 0 HcmV?d00001 diff --git a/install-new/data/img/genders/Ms.jpg b/install-new/data/img/genders/Ms.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a2f7ee3f1b7855a65cc1aac1624247d8a3064150 GIT binary patch literal 866 zcmex=_1P|rX?qqI0P zFI~aY%U!`Mz|~!$%*;qrN1?DZF(6Oj-S5fuR$!pIEN!@|nR z%E~Fi%grl7GWdUhL6Cz%fI)znQHg;`kdaxC@&6G9d7vj*8Nq-73K*GyZe(NU;N;>4 zD%dK(z{JSR%*4VBay3wOEl{3;MUYiU(a@1iI53f2sZhkIapFP_Wv7h?MT0JWP%%y_ zYU1P)6PJ*bQdLve(9|+9H8Z!cv~qTFb#wRd^a>6M4GWKmj7m;PO-s+n%qlJ^Ei136 ztZHs)ZENr7?3y%r%G7DoXUv?nXz`Mz%a*TLxoXqqEnBy3-?4Mop~FXx9y@;G&P778mFHFAhJOVynsO4!g^lvOVTv-zK?TI%;fl zX0pdcO}2PVQIGyP?;lUntP^-$RDUR3Z7Pd=>XvHFb?RF@ZfPt^nHeN0ruIzURI;;w z+qp`%P4(H)y}|w;?)9&TemQN^i)-af(SM^H_SH5TJ8a}QIng7M+iIWak7Ew6y??95 zyxP^@_O<(WuhBJKsdo=fC$4rAKfhlo^ID*ykfF9@NXV(>vW%}|_jKPV{?i|PbN#C7 N_~~E&#T);>2>|M|E0O>J literal 0 HcmV?d00001 diff --git a/install-new/data/img/os/Awaiting_PayPal_payment.gif b/install-new/data/img/os/Awaiting_PayPal_payment.gif new file mode 100644 index 0000000000000000000000000000000000000000..57abc204b26d3135ce3d3d1371b3536abc095ff4 GIT binary patch literal 608 zcmZ?wbhEHb6krfwc*el+|Ns9V|Nnpc@$22szaPJTfAQ`6qxat)zyJE|^@j(q-`{!h z=Kix+7hin5^7QS^Coj(5e|F{0v!f55oxA<;^opTwHVb!urEkHXOLHZ1=^byH3pCd}7w7a|<^fp0WN|@6v63OLle6-`+cK zee1jpRa4g0O<7*nvox=7Np|PFvi6y|jnmRiSHr7B(=%Jnqg2{CUCA*~-9A#$E<(vRM%+4;&oV*WEJW7C zN75*m&n!aRAd=rOoYOE$Kre`2CsIHom{m29K`okD-HTntn?>25LD7>z%8NnLg+a_3 z7%U8Q0g69a7}*(O8FWClf#QULeQ!f-6RV&|TRU4*SChPttBZ^KBu7K;?pWPm1vzOM z8AUxWZ{cnmJBAf28F<|+S(@1V^;XE3XtJ)*ik9q&kzQdI6{WU9HB_oeJDiV!*(1tR zVugNyK$C?7BO`}_j_?Ye0Q07E#;aBeJB5ff2}h`|5S5ixH;oLs)}#`BpTR0Ja$C;J zgMJfv)OYYXylhNzX=UhU`Lm&MRkN7jbdlH!CYQDzg|JVlB8Dj*BI>?nA}2I78e7;6 NR5cn-7zr>~0{~mk+2;TN literal 0 HcmV?d00001 diff --git a/install-new/data/img/os/Awaiting_bank_wire_payment.gif b/install-new/data/img/os/Awaiting_bank_wire_payment.gif new file mode 100644 index 0000000000000000000000000000000000000000..2780d81e7e8126cb795a4400e331a4c2ad4fec98 GIT binary patch literal 1030 zcmd^;?N3s10EI7Esjbu$UlJ-TTc*~mT&c8X4ihU&%vDQQV`j_N)=F!Zt<7bbt;||2 zt(HL+ikX@dSmr=cL_q~{Itj(JM1133xEHv*++X^4boT7o`FcK_l+>ef@oYcH4=RNq zcN8N2manVy)w~E8dQBdw4(fXsr{nnRxc>Uj{)3!&WevTbM<4ze@$1WOeOv zXwF*IS@;kOAIict7Z5euI?Og}uA$oNb`2XJxrC2g!AGyzwK?`*mmOnynD(Y^tiU#L z1JmBe#|rR?n|5uXU3bShe#bFh1F^kvq`Wu7>u zO7ZE(>i_nR3VP7tZM_F!RvxMQRJys@1uW02Hkk>Rs@}i2unZC4>Ya^+(m(-D`t3&Z~ zwN0M&X|H{fLyz2;^f~ovi@I6L`6Qtf*Q{qX=RQb51ECt5?0Q@#-N?5 z%yfB;s{RZw+#QqOEwA!kmoLglp3A7+kbI^>@-mULA@fu0-i#8`)4*-HJ`wNtrj}Pm zUXAcNvN5U4(>Hh6?*)>P2;rJawasV2QC2eVJ;NHmWm(%KlZEIme&2tgzgME?hG CC(m{O literal 0 HcmV?d00001 diff --git a/install-new/data/img/os/Awaiting_cheque_payment.gif b/install-new/data/img/os/Awaiting_cheque_payment.gif new file mode 100644 index 0000000000000000000000000000000000000000..e7c5f3153915ba3acf02926d2b0bbe3ee9356562 GIT binary patch literal 958 zcmZ?wbhEHb6krfwXlG!Ebdu;u)Y@Aqxgt&RkJI{<9Zq{Yy|*kaIojiPvc=)ZbdNJr zBQDHwy*B_>at6M7{%=dl1x9rKukgxZn-k!>Ne!A@4m6~sN zv**s8yJ%X+jwNkNmo8nqcI~E3oA&SDdtiOn>Ah1fZtK6jq2>AhuB)f_|2#hV>CF|- zukU|%W5c)0Yrj6-@a5^ABS(&$IdkU5jqCUCUweJ;%+sfL{yaGR_uIk0-;Y0i`tOQz`~#dG6s|<7&vA#aB|3aY*=uxnS*~{ zM?w>0cMD5QNW#O#N12!`oeFN8_}IWEt{!z`f&+s~kCaB>stX0l%xxU}Wdc78nA?0M zR7@W1C~#zMA@VR-sVFesk%5FV^!g(LATwrMJTWXwrbL-9*Kc7EYId9xt{=9qhCn@Dm zQ_CAYoiE3Zd(3iAlRuZP{0R&B5*PEv$>mQ~ z&7Vh4{^aHSNlW?C)$_*4ffI~*MMfmd;tpPmHbJ|`Tzev12&-elZBCi!Gb{tBnk2p z1KSLTIRzdfVO={|cuq>5?dS~Bbn4OIlkYS5)fBK|N5|^Tg{&z%xKbD2l2MYmo*2w6 z+dKDC)1nn;V>!y5MY+uMrKMFHG(9r;rTO_qq?%l1m{d(9M1<6Or^|_m$g-O-&vTj1 zC1N6_!e*{6#_GIkjg+RQf)JM>&lU@DJ}y3$a!np#MQvVZam8aUnhXkOU38{8X*UB_4FINwp)&vg literal 0 HcmV?d00001 diff --git a/install-new/data/img/os/Delivered.gif b/install-new/data/img/os/Delivered.gif new file mode 100644 index 0000000000000000000000000000000000000000..cbce89abe3087e03ee31d90465c654e557d84006 GIT binary patch literal 980 zcmZ?wbhEHb6krfwXlG!^$;qkuYdASta7v8G)L7B!@!~TQBxfc{%}$n`lOi`SO>us@ z@`4PN#n~Fm@^qHx>#Zy_SY2$qw$yBWx#h-6n=Li=TWg(mG`Q|+^4Qbjy|2yhKu6%A zuHeJnp~w0nk53IbF(KyU#JCgFBTmkYJUJ`+)a;nkbK*|VjXym(;q27p^V8GL%u6^k zKk34Z^h>icFVD`tJUi#=+`O|3lFlwnIkzb7{F3zZOEWJl&%Urc=i-XoODprQtj@i( zy71zPl1r<~F0U@Xyr%fd+L9}4ORugkzr4Eg%G&Cy>uaxWsJyzd^4g}Vs~hUCZ?3t% zrS8Voy2sn2pX`c%u)F5%p^*Pqyw|N;w|)EeYnvLcZ*IQ6rSZnLhMU`gWZTUhO}BP5 z-`d%7dspl2-R-w_cHi37b7ybIoqb(*_V(Z1-*fLk@7)8F?;o0Q_u!QKhi5!EGV|fF zIS-G|eROicMpg_qTu4~msum?8PO zm3x}0IM1>f!EQa%b$li*S(#wqGDkmlgN~(8%NdqtxqCU8lTtV)$R;XDJUNiYDWqsK z&!h3vfdy=)Zl!k$gr0gaH%pxRa3Zmpja%4DOk#@zn|rUMwpWkFqyq}91|}(U6cisF q=4WP8&Da=p)I(6ou1Y|`BbAGVomWD`ptP#3df22)CvM4$ZR`I}gWOhnKw-iLY7j`=(%Dq_SUUfm* z+e7`)GgEg|7j9XI$DzlO7v(4;WWgS1UK}B8;n|S#ys+Wuq#T8Xhoa?Ky7tBXi+x{y zzwbWq9X@+z;N)nK3Q~VjRL{5%%(8Gc0WuO^0QCJ3m__yiW;11@RK`oTouk=o%v~jR z9m)ln6%}JvlByoA(yHSMT20Usims4Vm-z~?1%}Jnaz#)|HFM5{OEtHJL7@h#Y1}4! zflfT`sTJcuhhCMBi9TovY6+=TNolxv6$?2N*LkVLdnFn-4YYtv2O7E&A2$@Mj9VD# zF6o&T_$TAYuYO%VABJ0 z9LUwk3gU9Kw@T!yYcyP;2-Tv=XKlp-<%*4#TwY^FvN5PLMgjBRTSn`2-DvQw&BchkC^E{>?0O4dB)rotBD zT&^ZtK$%0rj4juRVL`MEB@K?uL~w;R>n|B5k5r$SjrPw@pqPSY>z<&bLLf#sIMMl{0FG9&eZfgUaiHU)DriY#i!6wF=4#N8SI`x1469~We zZJ{WQiftB~pP>A0>ip619W%aB7b^S9(5KP)$vu|>hot19Z*O$EYc$-t(V6cY3--R<^D5a9 z?6^Ddwk!YJHlP2KuzxH+^yETBd-H+|!<}G%&$W|bH~D@4XmsrA-=E*>PF`3Z`0!cE zdE9*>Z%#IcJN5xlM1wC61*ZFkQ%~9x$G87<^xMvV-fbEF?qJ{6ZDFoCIdx}$@MCTw a&t;zPJf`is;{4DTwnEf_*ZzY+>eRpe^R^BE literal 0 HcmV?d00001 diff --git a/install-new/data/img/os/Payment_accepted.gif b/install-new/data/img/os/Payment_accepted.gif new file mode 100644 index 0000000000000000000000000000000000000000..192829587502fdeceb1ad545ca52987b6bf04c85 GIT binary patch literal 334 zcmZ?wbhEHb6krfwSjxa)Q)g0hDCfwdJu!Th=h&Q-O))L!YQFsX5;DstWnIjc zYg=6UTwL00YEG40d37aaS;&%8b4vE*^qi~t^XrRElgX4zEjgP~T27VRd3R;asU+|z@WvT12P8WCkD1`hp7b~I#T@}OVp>TxaleQ20z`I<2S+S67wt{7u87y$_hp5 zi~U-aTs)b$7rGl-mK-|N&N4a9MMPblIonx=OGr#YTwFq;Imv}XR-B!^mzjaXU4)ZM cf=_;?CkGGn!dbo|q6`y)Io1XTJ2F@U0G9%BzyJUM literal 0 HcmV?d00001 diff --git a/install-new/data/img/os/Payment_error.gif b/install-new/data/img/os/Payment_error.gif new file mode 100644 index 0000000000000000000000000000000000000000..b16b55530d4418e2bd9115499f7e74c5b5038169 GIT binary patch literal 387 zcmZ?wbhEHb6krfwSjxcghKc3Ru_J%1Y`)0J{0Z}UBP8<2%jS!b$)BWdYTIn=c>*K5xWC{`lE^aRVBz@<&YM3sBiRpy45Z;zIs_ zOt$#~QsDCk=!UeI|Ns9p;0205Sr{1@Oc``Qsz82XU|VotR)L3(nE3Q1MTu)xT8T=v zH#;n`IhxM;Wmc|PQ@fJcl`Mm``mD~1DJQmapKbWLAw}ex`RETUf5YuL8_!SLaAV5mn^QL3nz8lH%x!n( z?7Tl|(}PKyA5Gr!c>1;{^LIU%yZiZ~y$=`ff4XGfqh$vkFFx>M$$=Lu4nALb`01)6 zuht%WvEjtaZD&60z4&_Xr4NS>9|i~QC^6VWK=CIFBLl;K1|5(?L3x6KV=cpfP8pAa z1(WqyIrm8lALE{?Yd%XwWX7?xQbsZJ6lNNH?3OYNo^&SRP~szdi=ZtDoeP`TT3d>` zIAks|wYQ0Ia~#`g)N(?gQOIo0kAMUPX_M3%7D1yA4lFFZY)zTP$GSS|?O8ZvCNw69 z8V7E=v*7}>M?hTw-cv7gpf#(OG!JjaNd)$!3N}QtL!N|Wrg{yxJZzGxO-wn)ENR4^9hm#p&7 z4Ug(9(r>MbtLR^lQ&{B?kzJxPm$cX+qPZU*_eyA91>_kbc@<>O-xZ!=N=yOSAJ)2L zmz~44j=?KFWvLG#`NzvJ6(ux5NsLkw2qmJdvMKA(k*`ps&NlL+T~%*WU5ia#ip^b* zY3pO!>p*`sWvEY?ez1(OmL|FA80LxY~`!z5& zb1SH64ryAPa~!w!H;;}J&~ZHTT|RwRWUeVZ+Y-^WhP7>Lde)k;HED&D=5}Chi|E-= z12<-5CoP=RKiqZ8@80eI<$rA2l@e4rjg5_@D-~mSu zaP}ln{>CyNxCemeKJfI1QQ4Y99I+3_ox>ZB2f#N7yfT121U@;y9s^7P0z*;f2nZ@c zNVyrD03jrS%_IX;8~#}kQpYgeT5ukOCqZ-?L}$V3G+0>xD|)bM1Thm>HG{YX#1}W? z_NQ@sD!%-5-JV)UH`iUMq#LBd0K{?s&%K<$r*D-X+S1l1aD)}yHo_i4LuT$N{H{!R z@M6}BSv9$tNAY7bZ+_H5B)<@8+V}dw52`bE^tP1Tqh34Lb^s62GDrhC-+76zsJh>1 zJkXa2kHW&!U+Q)r|C7NzO#ewzqWc;m3(t0WK2eI9xA&KwZ=!ja`^E+5B_*gxSF>~P z{#+O@ud%^`bD}dh(pGuYXI_J@I2e@-rr@lw^cy~MgUZ>P^U{+%5|sX+y7%1=8y7xf z-6CY|&Mn*pmA02ZIzjy&A!NYM=4Z_hJ>W;D9PEL6V+Z|k2c_n{srma6A}Ob literal 0 HcmV?d00001 diff --git a/install-new/data/img/os/Refund.gif b/install-new/data/img/os/Refund.gif new file mode 100644 index 0000000000000000000000000000000000000000..c3a61298ff7af2434f66bdc7aedde6e45da58671 GIT binary patch literal 596 zcmZ?wbhEHb6krfwIL5#bGRtSpxiu~OYVN$cld>*l&bcW^o*kKUXiCktk~O!MeEIdI z=UC64ds|YLrOdfD<<6%&CEH4BcGYZov}MYnDO+x>Nm&%rbEsv>wK*}1Vplx)hm z^61K(Q&U>C^0o0^-s;X-~c1Idko63sS-dOTuW>_(ECBqUtj?X~o@T_g>Rv^FW)b6B~b*XA_i zlav$@WU*)C(cfvvsx7cyo5RUoL{p!UnM+I1O_pLnVWymsf?Am5IR`0PDNLg#Z8m literal 0 HcmV?d00001 diff --git a/install-new/data/img/os/Shipped.gif b/install-new/data/img/os/Shipped.gif new file mode 100644 index 0000000000000000000000000000000000000000..54a3e55c77b414d1d39404c38fc16eee718737fa GIT binary patch literal 615 zcmYk3Uq};i0LM>Tt!(0-1Zyp8y7iA=e;$rdc3J2zb8>~!^~Z5x>Sa<_YAm(g5V_73 zV~iMw4`bZJJcf-SG>$#UA#oggkmDZK;e*_phYvD(D3J=m^sVpX=ivh%zIXjyt!;y~ zNG(!C5O5U`^B!%U%B}LbNz@gx5%Zdn4}&2wyhIqAnwFuhRgq4kQeJ`~*~8k*m6#{M zlW9yYS^P>6i#jxcEbr`6aZQfksbb8`hViIoE^}OgGM0i?DQ6W^@>&^oKuSRAH?;M0 zH<-mCE29yIrSOJ8lLBTI!q}v0{Vi7>RK6%x{NGMbO0g= zv?Q6+c_L{Tc@7=P(P>O7S}>#n)?u#jARv-yD3{9ozAE0J36vTo@c4dIj4RN_QW&x- z8fmbUlv&{5q(lZtDuZhYl4u7q3#k!`%Twl-Y3aG`zuV$!th^?v>z0uX?(OX%|IPi! zR)HW40uI>0Cx~60W!MkgT;wC?^7$$&$A+EGn>Xgb^tAilyADV5OWT~!-F&C6?$skZ zIeMw4rk@%6#K8M4t@PJh506l1Mg!MQ)eKzddCUwuzMKmk2aWb8-uEYuGR|gusMqgr zeDK11yJFxeGeOopU+k=|_8yzM*j>-`{T?50tHy|_LzltCf}%Iozr~U3eQec<^Jh21 z$oER6spa*0>*&IUp75U5X5EY5dS{)3Kteh<{Ga<-0`LA+zbRZf{LE2hLwx@L&TJS~ literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminAccess.gif b/install-new/data/img/t/AdminAccess.gif new file mode 100644 index 0000000000000000000000000000000000000000..bb0cd495c57077ccb60862ea39195563e4921335 GIT binary patch literal 631 zcmZ?wbhEHb6krfwc*ekRE|+ob+O>B#`qtFc{CKqf+9a)?SBpzaOJBZx`QuE~-o1PO zd^~$+N94?zGgmeGJX&h<|M`^5&62-f?mBbk%)9O8lP6F9|ETlfVz2jGz2EPN{COes zVzuC(4@aLZG3%*K>Fw=ZKEM6{x9dlb9{q6GKBFI8*cg^I8AzS1(<<^lG=# z|92~|FL(WUC-33G_sNojC*k7}{|Eb`|37TLKhN;z{gPXYY<}F#yuIA%&+Y7ohZ5c&jsI~i z<^TWx40HsFKUo;r8KN0~UXGq+5xs)`QHgm{pYIb)n>|tKe9HAg8&%@)+akV z0hNYkF&@bphC+eXP7!HqGY+p$kB&`M@G@HDk#Lxevom^)gr@o#z$mJvlq0cA(T#^8nu(FY8UUt_`~Cm` literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminAccounting.gif b/install-new/data/img/t/AdminAccounting.gif new file mode 100644 index 0000000000000000000000000000000000000000..e133422131133134f1027c03d8801e5d9eb4721d GIT binary patch literal 891 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE(}6TtKSRv1wTBrPnCd-U978NlFP-e|5t1mo7f^?aOuE)m*woW0 z8L{PM|H-i75@9TLxa`!K$+?qh%8{%5rOb^tt}dJyv2)qw1dcq$pY_ToI=|anB!y0K zewWkQ`BG&5uKHQalvi>&doZ^-iav<&Qdqq2)WqersS$TAV)C}-7d<)`cA>=a&Ybjb zb=&9W{1(!T33~9|Zbg@m@2S0qC%dTdPr7?p%3mxwiqC(R+RNX0=Vr|*lx4m&Ut({J zmHTaD+tX_{Y4Eluzu4vGVEQm-qWiKn7cSpC9@X8sPIJTBEu0+s`wm9GKag15mgFnR z)Y9j}h^JxAs>N?kzwo#`sl-nIO7X>K5q%L46@`2^ z+1>A4sGeD2UX@myr?gM&`W;aTe)%@ z$-CR6+Yk47dOhSnwy0cwe|_bh*SpzW8Z|FQsafrJGhj60n4c%Xzx%EA(j%4|a_(}A ziO=K{x8hnGyYSifxOlD$=?{Z+xS{>@7A!_6r;D-;1;7 zJ$K*;cz(DzcTe1fJKtWFdIvhpU6J`yqKA(y-Gig`ULd!=y}O+0zKnV{p6+W#xq;`q zyS+0md7aRY5Z@IRdwI&!Gv9WH=WFn&zqxd~|L<1ub$4uRW9tvpZ%gWq;8>mPxuo^B zMx~eU=FfS|f0P33KQGVq;r^#w$M`c(Zj#R(+bUqXR4s9hC`m3#O)N>(O#u=NMg|6! zx!B{QuORfCZ+NQ04um7x(t!_1R!^MM*9 vK{f>ErbP0l+XkK8~Sl( literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminAddonsCatalog.gif b/install-new/data/img/t/AdminAddonsCatalog.gif new file mode 100644 index 0000000000000000000000000000000000000000..2104e0bed91fad53006e5889705b14bcd36ec799 GIT binary patch literal 1461 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 BAr$}s literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminAttachments.gif b/install-new/data/img/t/AdminAttachments.gif new file mode 100644 index 0000000000000000000000000000000000000000..0fea309c9fd297c8a04cc1f859d16dea19e7daf2 GIT binary patch literal 1040 zcmZ?wbhEHb6krfwXlGzZPYK8>Z%Cc~Bz4A%n#K3)m)JF{6IJ3p({8rmzYaEWO@i@B9HSNWSFb%@zYhKO&f&{DkI$d|KYxk*`Zf0R z=Y-E+Qht2T?d)vn>2B%oZSCvp?Cb08?3>s#X~u;9<_Qy;CQJa5of9VXPoCU6X;R}oxfzs zoSnP2?%%(=dF`uXNA@2&bm-{OqlZtNJ$drvsnaJ#o@I~WodtNBVUko3x!VWo6vhN}I8Bbl4oGFU~GTxu)?9esr4i(j4SWENrW zTq$Ma!O+~|KG&x76+`WWMa=EIYDy)7iw^tEv#DrkTTqbL)Xc^`%i!Qbcm8=tLVnz7 zT-183M^>+D&xcRTi~<@%&M9aFEM;$CV4L@*(SvpCY(|!CDF=;Q4={Fa6^=Ohd9%fQ Un{bx4jZGUYr)noMF)>&J0PYiWr~m)} literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminAttributesGroups.gif b/install-new/data/img/t/AdminAttributesGroups.gif new file mode 100644 index 0000000000000000000000000000000000000000..897dc0a633f63565e65181c5f877dbe21d453458 GIT binary patch literal 612 zcmZ?wbhEHb6krfwc*ekRt&idHfsPmZ(ylLX`Tu6|t%b&)HZlCa*Yf2;`M2XPzdqjm zerM+M<$_-iX#Bbq^YgIctG%KB@AbU8xa#-2GoOwIe0#k6@4cGW>jaNC3I4w~=i3qE zzdzpnx)A+*i_8DpSuZvkKU%8%|90}fce{UG@cDdW=C3m@?{-x z|Gt{~{o$&AFIRm!o%UxR!-w-7x2G`NUE%UuTQTBkrG$#{awM@@S>?yQ{0d?GpTbz2x81wm(;sJ|6V>x|QMo^{5{g zQvQEG_vN7F&&R8No(p)oT=K(a!8hBCzwb4CajfJ2`+I*+D*k`g^Z(h*hjSPnu66l! zqwxFDAO<=D#h)yU>eE*;PY^ol~#fq*;UA#zxz+Sy)(=-@}j_;9-ysUyDgHfxvn46-E@m7|( z9~K^EW0g~9x#DzSNe8D8Q{RdihD!yyW!O6mZUiv4aH(o$2_zkCIK(N@#Px@x$AJ77$Si4U7PT_FfN2(Z>#~*3 z5JW9v8k;lmHb5|-K!Fe;I80Dbj)Nl?k$~e#e?b4BXV16y!@IrPi#?VS7mvdL7@!OQ zc3o*cfd6vn7ArZAm0Z9+_q03Xnc&nj{^b(xX_D~F^Y7y`Q+g|%J19?J-%9&|5lp+UUlb#oKT}6)T-{+${$d* zg>^$kRMkVO=3%|2uwGYG2NqNr3u)R%G;I-G|CphB!Z18-0+Ai25^ly^`3K4E8p$0x zo!->c#AGsAELKZPOKWQ@o6T-(Yiny<9H0xKT}P z21^^j($662lachvRQ`4BO}pj&H>ma-T*HCr+&N(?4{j5Ub`8L6nM-6Z6WPm$-3`N@ z1|E;c=kxpe`UC=jP$=y0?-z^35{X1AmC9tYfq{X+!9lrPu23kHN~KDr8X6i>tJNBf zMyu88bUM9W4}zeaBkN5(Jf8N+wGL{jFSs2f?YQ^S*rd&aP$l+ABE zLF9Xq(5U!K_n0OoS{WXntEM^jTtB{PzM3F;nHOUVuCYkYsjYM zXOCoLgqcYzu|*~hQ*bpkCM06piEAbrmT@po&BI4*`PF=q8jDZ8OB9{hhc~1Vou;Fd zwcFF)C9;z$8T(&F?!C|;TufQLIdP4gzzC*ct3%_CC5zMPhsh}zq9drhVtrh2!r?Vp rOIC!Hr7zOtSgVS+-)p_DD9&CLx?n?C%K3uG(ig$&b_N3&3~=x-){fS- literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminCMSContent.gif b/install-new/data/img/t/AdminCMSContent.gif new file mode 100644 index 0000000000000000000000000000000000000000..176c99a23f6d8391aa7f0629805dde422eeefaa1 GIT binary patch literal 1026 zcmZ?wbhEHb6krfw_|5Zb7=dSLpv@U*>>f`uIC53 z-(73`d3?&xlM^3bTKoRenkSbxe!INx!=)`BA8q{bc-POzn~onpe(KnfGsg~`J$~@? z>CA$L}@A3J?n>TMxPEI~@ z8L9Ky+U{zCh92BX{H(G}s;ZJJ7!3_IjQIJ@1Z36Kot#uu82&S~ qanyWt65wFv)3KPaAmM^zTa%Q5&jEuY3Y}a!=WdbiJDorMOu>YM1vAeT%{pH{?^yAii^X#3SWB+WV@c)@7@$>U7@L=&-NT`(&%*(HWj+rbS$s>vns#|DBm$ z_h$Lrm=$tzX7Y`t5ocE9UtgSjWl`4EZB^HHls;Gx@O)qSlarxe??->V6ZiE_{M%Ex z&rg@Xy-@M)a^<@#wcqb2f4iIW;d152E7hN_RegUL_5D%wk4Lfl*L8L;IM%x6?!+zk zChdH2a_jU{d#9e+JLUGq){EOGTtBwt`GM|t*BXBwpYrqM#P^rhyuP>f+vRm1E^Ybx zY~$BwTYo;@bolV$=hu%szIp!7gCl>x9s2w2$lveBpMt=%XV0EK2Z0waU%q_(=FJ-r ze)A3l-v9de?Ej|+|35$d`0>Ms4Yb zEMIbRvYPOp#|`Y~=UP|nJ28cm)lEe7zuAq*1DDT<+dAyLbHj+;n~S&f)dkOA!T!^= z;#On`8Y?r;SzT~1<1AB4kAR#}+@IYK+IXeSbNAW&3`{#dQOQi;&*Tkl&znp=tEOB` zZ1LbWVEgCju~^M_mZs@37DuBN*EuFE|12$%kM#&k1r8vPi-92X_x%kF)&LP+VUqv= literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminCarts.gif b/install-new/data/img/t/AdminCarts.gif new file mode 100644 index 0000000000000000000000000000000000000000..0fadd3c2b9aad5d546ec6987f8ab004332779e5b GIT binary patch literal 1000 zcmZ?wbhEHb6krfwXlGzZOiWBlN=i*l&C1Hk$;rvj&o3z{DK9Uts;Y|X-jL9?DtY48 zqMl{>a}Vb(I9|HqM9IoC^-GV{Z@K=l^m{`?Lt|rOb8~Y`OG{f@TTf3ezgJ*7}1R_n+Lm|InU;M-Lu6c<9ifBS(%L zJ9g~&@#7~?o;-Ex)alcw&zw1P?%cVH7cXAAbm{Wt%h#@5yMF!pmFqWe-MV$>&YgSr z?wz{%{KTC%C-1&J|M30&r*9rUeE8_mqsNaQKY8-x>C>mro;`d1{P~L)FJ8TR_4@Ve zH*em&ef##^yLa#3zkmAf+lLPyK7Rc8>C>mrpFe;7`t{qlZ{NRv|MBC;&!0d4{Q2|u z@85s_{{8>|pJ5aX%@9!h$->OQAk3fxay}?eFmN1YQ0I`bNbHqr;^4IEOlWqS+`=;7 zp~AqKiA7C7y{1sXnX!+}NXVhFL**EgP)?RkLP2uERAtweCl8Dcv3JSHbX5p^bUY%W z<*?<;jgLxP-KuIaEecJK4$YKLztUj%nDy*5>?1)(8bh1-fp(BSQ zXwgv?g|tf*hLfN2h#7|;i{W%$aH2&^d(je)q(dGZin2{H4+;|!I!$8F1Skr(_DnGd gs)~@1IMmF>BO)N7Vc@{fz#wU~D(>v8QU?ZW0IbwJT>t<8 literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminCatalog.gif b/install-new/data/img/t/AdminCatalog.gif new file mode 100644 index 0000000000000000000000000000000000000000..bc48e2e06d5bc56d0e24584acf037f84d2b1ae5d GIT binary patch literal 570 zcmZ?wbhEHb6krfwc*ekRv)lOF%abp6wthIR`fOv_w}-25FSGjh=fk%L)sGJ+J=h=m z=ktY+mkK{!sr!7{`Rjvu&(GJ~>a+NABl_R3_h0W#{{Q#KtJB%S-(Q*h{c+3x|Nnn~I`i#L_Rklyzg!Q#y~X}`9|;OD;~F}S$({a{pIfR@7G#>zFhqM zVZ(zx;dj>B-`VW&=i7}RPkP^<(|mcL=*5NR@6Yz$o8tBB?WT9<+8KrpQ2fcl$j+e5 zpaXI;C{7sIr#C1!HMg|3wRd#3aB=qbatX6fn$)b(DkVQtUcgDR$yU@}gr9ZdWOh;O zCL3W95neGd2?^b;QnpRfQi^VljLWA;H?b*;9uu|GS2ENSvOA*8CTe7$pk~jZDx}WG zeL<7m)$-ICbrV?~70o77VM}|fr_XhmRZN>)WX#P)jE#ADC2njmJkq>?o5hA9;>3hR N7RD|mFCG>KYXEG{&A9*o literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminContact.gif b/install-new/data/img/t/AdminContact.gif new file mode 100644 index 0000000000000000000000000000000000000000..7f85b96600197d73fbd783c08a64af98ef9b7e17 GIT binary patch literal 354 zcmZ?wbhEHb6krfwxXQrr|NsB*-@m_q|NhytXZP;iyL$ENk8=w?pO|yz%$cJ{kM^GV zbL7zao|8ZJ?%msd@cq`UTYGoE-?3%kmJOTAcYa>Ke*NUFM^kqHFW&m5Va@sCbx$(a zKC4)DrF_--n6=+`&TPzB@np};lIW%X)qmoNfr0?fynv=D0U9>UH`avBmS7O+ z6Y5&5!JsE~k@La_EgQ|NU4bXeZswgl$e_h8*TA2{!oZ^<$gL*K>f6h}-y$s_rmQI0 z)7UhDK~!E$Oje>NAWkUFyO){CWf=oAM~f>ff0_s@2L}TuC-2@y1|bn%uOmks8LR;x C0fcb? literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminContacts.gif b/install-new/data/img/t/AdminContacts.gif new file mode 100644 index 0000000000000000000000000000000000000000..2e0b0e373c7d21176e9d0a72509af5711c9e5ad3 GIT binary patch literal 604 zcmZ?wbhEHb6krfwc*ejG;VAy~e$?Jd$^5Ao4&M6VRCDm+wtm~3E$42%esVHo>XyfM zZ|{Bc@q2Ff^4%BS%-MWx_rVKirbetxS8bWrf9b^fKMxKcneK7z$%*G2ZaDj~ zYsK}b)|1zFmbNEo{X9N-Z>RVFPY=HT{PXU{hCOYrf4?1kzPD^;hm&u|;U{mtE?GGH z{M_`fPdB)h9=v|#LVV4t8&f@>@9)}n{m0e_CooMnZXPc z1I3>#jO+}S3_2i_KykvrzO%uyskx=KtW>_;vIJHH8A)04ps6!A|k75 zXP05%X>?ZRg0EI08z1kb?=;mn_BkPUVgR3?qZqi zh0M4W>pZ*Mnon<8cYWg7=j&EpIGla4|LXgzWowH9mfk8nnzG{E$*vRE{bsvouS&{X zakT$p>zpIAYAzPdzqCJX_wLQNj-+lV51hH9VbhVc+of+lzbQF+I{wDe)z_C^es$sa zi?vNR8qyX;Mz6b-HZ?MJ!rwZn-x-b@SP-Tid5xzP0TBnXG;B85^!o zI9@sBTzAgl&H0OSijQWuZp%-Z*HCb6X6?b^%qP9NO#OGUeG6~Q%-wx7 zV6xBB+gBaCZTk0BTz-3Q%Fz~vkpvWfvM{nU%xBO6c^Z@_7&!hj*mM5*qSndIEheWr z(_llQ7I#Nc30I-ItC$|IeWAjWltbE5O&>%$8M;p%Ftb|rWoAN4sHCL?!`+)r4GUUb zf_P?T1wHOk_U5Z_IKiOKIn~u(@5Bs~m0TQ#?q|+KIv;dya&quGS-|qxrPHEtnt|h% zQ-?&v=5Zu+x*X@?V&$&MXqa$(4Lj!?rJWBJuW}b>V~%pz@R7qwBgDU8M}gqdNezO{ zNj!>&pB~gy37GQ0BDhgxwqRmRpw-+Z3mlYpPjnl+PaE8CFh=;op*lL z%g-;S9GTpGq;1oUHA^nc={?@H=kE5k*OoUQsGWMczjSx;)YFqrK0e-dxar!nb4$-H zs@qq2^#0+UH+Q`L`fBO5rNw)*@4dhF|Nnmm+5p9$ER5_7N(?$6<3WC6U~6`mSTG|{ zL+S96PY(+urUW!C%Dkwv!0DXxp{X_+{A(PA7DTXdF{@ZDt#Fyw|8(t_9??c_S?x_4 zc5EWNyfQU%%)HDZnJqO=l2XDVBEkW3V(iYG5^Nk^+`J;p66`Y40s^e1yaH@uyb>#< fIU{7HdD+;6IhgvCq?wsT_c^gMFz^I8GFSru9^G*O literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminCustomerThreads.gif b/install-new/data/img/t/AdminCustomerThreads.gif new file mode 100644 index 0000000000000000000000000000000000000000..2194c59dbdfb95ed058b5a8a7c7ebbd580f939c8 GIT binary patch literal 587 zcmZ?wbhEHb6krfwc*ejGVkl6u=!|vw8msi_ch@&8&(?W$X4RHSg$u;wc_2`WfKa67S<O)OxmKl} z@Z!RdmbI7XrRrRW^7JZSl3>ced+XstlhV>=9uMx_zy8#t*O#|BR;@c(uJ?9(?TaJx zK7Rd~)3-i<($1b$$GtoEo?TG9CDy6kgFnMU==+s*^Y`A^ykXtkO{d~4L|$zwFKC>4 zzR|eYT+q67MMa?5rFj3iiiM8#n=6){`*CKrSM$~v=Qpoyj99w=#{1n(8M9A3e(`o@ zML@ib)Z3GbY%12Ct5Of|*;}{j;ZJ=K+P5{h@V&pj z=l#}}zSXC)odg!`ybxg_{p{M-+|)BHmWd1c*9>ifi@Ia0)R{;&PQ0)evb;2v-vq=azRca54xAv}g*ja+VE> z;+Jp@S5?u{eB-Ig>&&Rv(i3=Tp@$G}lb?g8;u7XP+g$u;wc_2`WfKa67S<O)OxmKl} z@Z!RdmbI7XrRrRW^7JZSl3>ced+XstlhV>=9uMx_zy8#t*O#|BR;@c(uJ?9(?TaJx zK7Rd~)3-i<($1b$$GtoEo?TG9CDy6kgFnMU==+s*^Y`A^ykXtkO{d~4L|$zwFKC>4 zzR|eYT+q67MMa?5rFj3iiiM8#n=6){`*CKrSM$~v=Qpoyj99w=#{1n(8M9A3e(`o@ zML@ib)Z3GbY%12Ct5Of|*;}{j;ZJ=K+P5{h@V&pj z=l#}}zSXC)odg!`ybxg_{p{M-+|)BHmWd1c*9>ifi@Ia0)R{;&PQ0)evb;2v-vq=azRca54xAv}g*ja+VE> z;+Jp@S5?u{eB-Ig>&&Rv(i3=Tp@$G}lb?g8;u7XP+gsy$-o3qh_by$!w70kS{rmS-RaIxsoJmVd`~Uy{)~#Eo zOqufR*|VcZkADCD{o1u_fq{W**RCxtE}l7aW@~G!r>AFlczAYpHUkcz_>+Z^oq>}< z2P6-&lYw*^fRH%#4wFb0FB>f=7j|)TPp&pM{BsjZs*H zQII3ukH0a4m%D&PfTxy~)s2gZOGHGFN!W;$mw7ca+p<7mCNUc~R$&2lZZ=*~Ax9fA J237^s`nDuvH7P*9>ve4RbMw zbTf(eG>`SRiubj3adC-^jEsqiNk~XYNlD4c$;r>pR|%V=5xqb+aj8-IDzn`6*2P;~ z%C|aH?sTl$=~T1ZrEafl!#?-sgY(i9m*i-zDKXhxZU0yM(XJ-XLtViqCd8bZmU?-1 z&eiobTefVOz31WL1CN#-dc5)Y!(A6&?Y;DR&*gXfue{!W_1(>_t#|iNezJG&qmv7t zonL+S?AiPG?;p7G=Fs)`M{m46b?5!XXaDcN{r~9Qe}+*o8Un81T-9AU}R)*S`fh4 iz{)Ai=66)&HXwA61DpXp4!5RSPiJvV1 literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminEmails.gif b/install-new/data/img/t/AdminEmails.gif new file mode 100644 index 0000000000000000000000000000000000000000..94ba79d858a2395433b01146ec15c269dc9d3ac3 GIT binary patch literal 582 zcmZ?wbhEHb6krfwc*ekBo3mxx^*?RP@4Wf=eZ`Siv7OuQKK~xpyfwDx)TYy~u08oV zb<5+gKmR+`9Q3a_a_-jaXYYRIPrWdI-^;_df5g|UaxFdh^Ur_Zj>Grg{QLO*-<-|Y zp1l9(UAV4g?Y)Su6MOG{Uv>0t^_Capv<5Hay}?d7}ys#C^t2? zw6?XkNEzB28*}u_$(fp}n>vX&ib;yinLAICnN?Aen@v(>g^IK^51Xu!hM<_$Qb~!` zYXo$ZbTy2{w70PF=;?{=vS!??c|co%NnnluleLY_UcLjWoEA&jxGgM%&Gw3laha%U z>kA3#Yu^@T)-d4F;*$8ea>Z={4H;d96p0fH7C5po%gtE8z;LXWjn{9^4u^@0`k6%p NGVh!yOjcm91^^RL!pr~w literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminEmployees.gif b/install-new/data/img/t/AdminEmployees.gif new file mode 100644 index 0000000000000000000000000000000000000000..d1ca455c7f667e9a60e910196f04862560ef45d9 GIT binary patch literal 586 zcmV-Q0=4}|Nk%w1VGsZi0OkMy00030|NrDqP~J{a+D%a2Pg31YQQAyW*iu*6aC5^$ zO1nWw!9`8ePFB1}P_jZzs6R@sMNh0kS*Ar@>a%#$qHXQCe(t)0@4SQf%$)YmrS{OL z=*6Gz&8O*A_f#kP}_Ry&9 z$)oPdruWpZV_sQyJ`8g{42nq)fkh68Ne^>A4sbsaVKxt2H4(>jDav;$UpW<;VlG)Z z9K(}mk4X=9JPc_$5>PM{eLf9(KNG%iH+@YgwUc<7SuC}8OL# zXkAv)Z%Y5#*8W{k{9RD~VpjiYUH@)l{%~afab^E91vGAJ;PeoH_xGB!6jLzqoSD?d3rJ|dVU zAT1mzDjz18NiH56EFK*_m zZ*OdAXJTGjb!c-Df+G}QWo2VvU0GIgR~9;gBo|X_VZLy|LT3w_I~aBh3PHt=nTHSs Y5I9kx&;$ep1{gTdKmw+Zg8~5nJGu`CuK)l5 literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminFeatures.gif b/install-new/data/img/t/AdminFeatures.gif new file mode 100644 index 0000000000000000000000000000000000000000..857f861f642b30ed4b4857c67a0851c967e0dcf9 GIT binary patch literal 998 zcmZ?wbhEHb6krfwXlG#H6OvH>Czd?vUiS3+1=DZl&w5-m=V8&Dr&S9c)h>Oytt)4D zOX7~!ltZlvXZq3)POZ8$yW-*0)W)V;zp3m9!Zo!U+i}$}@arpg);a`~AgRFYi40^z7P^=T}cZzkTlY&2#T>oqTxf%Cq~|-`>Ce4rT|< zpq7rq+U!deJdIM^y2TwE7;ZXU=n#|;H!8RhaFD4@#&QKmOOZ>nkg%#-3&X>QEj&`z z+ai8mT+H1ygMp#KQ5eVnvzJkE*JZQK zTy+#Hwub^0k*q+_gwS51mn;gpK(hD{h161{cEQr1s0THuhbSV5qM!(io{AnKp$mrX zqGs#5vzOV~aT<4KXLdWYRxD-~bl}IF^XEJN^PO+LL#5Mc{Le7Wa37WoxHf$Dk0*5P zyi1u<>C}=2YEnge%c>S)c?&OsVGb!%%aHd0BxqT z^&bYBnwea=cY-0G)QTI+Wq6dQ#g^2nicGV#hUgOrL(cRbA$Ww>AC z+Guf=S7C*{7%VrB4w?`S$` zGtw#|@hM0$kNjLa>=q}&@kvBtEJnTFgsQ4~c6Eeaf_UTP8>>l4D4q3HTWq0OFTycD zCck`zFe}1VU`07o3Ys<}5{*L=rQ4nRFTNlfbRHfae5F*8{vy zU$0cPB(ljAQI-?oFc&B>nN4sMI*mP--5o@~PUt8tUS&)ua}Y&QuX<1~_`*RlP##2C z9x@56tKNjN;>xQ;lPb&B_SIHz$mr1!umAVQnx-L}Oa`Q*`u&r^y%g;z7&X2^V?ztt z>}~|2K8$#uf#(HGjk5vLFXt9(I_mkzEp%UKZ=?*=!$POcVqKPxoIEpRNrAw912-eY z)2Z~f?qh>57jAB<-VJK_?ald@)q6tj(Ki_Tak!0{~l+ VPu68lyr2L8002ovPDHLkV1gbWRSWUBr3yTQFhsBrxNL0nx&?K#|)+B zQl>-^(=H=sc1&H@ydtMN^qsoBy1hHzWAF1kR{ubML0>*Uet!DEclREVaP!eHEDXDY zVTY0vcI-$JiFT!@in0!-Nis9eWgotFUQ%ALar|Z^iYDdvwv?CT)yqyOYx75>@guU; z1Eq;S@2>w~jx^yoO9dQ!w|jVD8f`@AxT*Z->_1Uds_`@(g9V zM456a^JU6>g)(2I&DUu>m!7y;R#{VfUnXy8dZ*^qP8UOFv`nW~V+dc)!oy!x5j^87({0OHU7R z4n1&wfL;yoeCEhL;Q9tUy}+vl)E7v71MU&v8Gw`?(nF9Q2F{<5GD3C`vcr%WMeHbK zjmT#}$Y8VCIdXz?TRE= z0uIQ!5pW_v&m(pofq4Y6|NCbF0UO|tVT-W%zt-PRV7yUm32%R)O2>~)DUW`={$fnr zhD^O-U%=h82!3o-i061Ao>pyjIY zR&m3ML`yRs94JljeQ#4QtZWpXf3yEbbxM&YG6xWHzoO*Qkc z6jv--#mf^4oczUcvb6@eKv`0}NgNZu^hQcDKVs9_!AA;(R<efx*{#&fNE2^IxLiG&9I1rI&w{jjaS0sbz|tN;K2 literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminGeolocation.gif b/install-new/data/img/t/AdminGeolocation.gif new file mode 100644 index 0000000000000000000000000000000000000000..96fbf83790ce264aea6c03b95f23c37601b02d48 GIT binary patch literal 1064 zcmeHGU27aw0G%|UyQvXZ9|ZGJn;1(9wXtOpHCs)|G&W@{sZL8C=E1-ODqNw+eX4^t z@v^}%q-h+Zu9p(RWh~3E$a2X;xGdY{vWDfl=x`Zi7=|{~6o;@#kfJZf?Sucq^K>|z za~=+yccvy^e`7YIWRypWlD(1DwhUacaO`LW6;uomLeq7`t_QX_u2E3rG zu0YE*?V8{*XCbx|Y!sMGBq&R(1a(*D7P7d8%z_DHOC$``C@cvU6XHAS5(7mu+K*_+ z*$&6M%nqquU{2Fg^Qsn@deO2f5H^J4M?8^6NX(KXfwXH#wnXmJthvQ-1(6*Lw}40} zsI=!|&}B5nIB?W_o0~?_+uPqm4IVvabVpL(GuI3f3(JSZ7hsc_WylkchYZ)T8A7xP z?1nTq3_C#HK2?1HOAwX0RR>-`XiJh1dvWA6Z7*QjvIaJV9W!+)XO@Mw#z`m*w_Wbp z&B&=EyJE4B=xzjKq!+kVv1Cgg92_YBysNp(hk|6}jatv9V|SAP2IQ=^re zwd%xVPv^{E;Nvgn?DYALyT{U(H*e*8z618f>hDtnql-629?UE1+SnBMbvyfLeytPc zuir*P%iWiTSBJa5`tYJV@OIbU>Gw8LeXo6X0Uf#W(xLUU6N>)o+-~ag(YKyo8GIi# zj&_WH)6;)>WF<9uYP~vpx-0$iSkG;vm)!rU@9ZI^e_{ETBdGtHa`^h}nNL0#SH}JY D1k$Mg literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminGroups.gif b/install-new/data/img/t/AdminGroups.gif new file mode 100644 index 0000000000000000000000000000000000000000..213f3a2c72ad919fa008c1adc9e88a9b375c0137 GIT binary patch literal 1004 zcmZ?wbhEHb6krfwXlG#14k@;a+iaYFI=W1%~VeR*Pru`3@|2J&e|EOjEV%Pr< z-TXgx|Nqpc6D6GoN+v%^*!I6@-Sf0F|NEmHCdN3mRfJ7VbeWauJu}09a%JwaN{1yy zAuDPV*VZTf)qd2`6x=bnW^P~J>Xw346Kl8kWjCG9Z$Deucdm5Wxw6UUE9PCOzT9GZ zb&kRP#Y#_?N<3X_{A`WYu}NO{rurV9o_%;(*^vcR#}-#yTU>N)Y4x*N-j8MnK3`Mx zY948s#Ib<{feEQ|>x&&f= zJnHS27pSjEwD`a=K`o={&kM)E1%jrTx0VDdFL}(Z<#BCCVshKDLk1dNa|{+Xc}l9g zNC?yvH?{Z+8O=MA(V)uJ(x@A>!{dV|f;lh**UKGxo4BGci~L0C0UEUjP6A literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminHome.gif b/install-new/data/img/t/AdminHome.gif new file mode 100644 index 0000000000000000000000000000000000000000..c5c8f1b7eb3db30aa84f5b817b72a862ab2d7c00 GIT binary patch literal 604 zcmZ?wbhEHb6krfwIL5$GW2X``FQmmwXV0vhC1o~e&Yjs(X0oTtrDRvmkw-^N%1pL2 zxx|#k9GRCgXV#oMr;hX_`7AlKrF|dGhE^Ojpd5tdJvJEqyL^ke0TVE7z{9sq@*=71Oe-#;45X%Cej( zaW+e?Eh$--GiBP8J#{uq@@&3*dUIu6O-foy%B++%tJW+jb2)NtPtCp(n<|?vO+GPo zF-Mk_ELpZ>$+0;(n^LCq^*nj@BxO>}oIIB!eLf+5Ay4kzdGqego;H`7s+ue7O5WT% zvZc;tPhZHCB%3{TF8}}kXBad<@h1x-14AH#4#-8IIALJl*$~*&9B5?J($NyYChFPQ zAu6Sm` zxlSPO+C3gdr)2$IH2fu%6~ugHPoLT+&ZNV@AE?ah80ew+OtD>6;C{3IDMdbgFONV) zrw);QUVMD2U%oZjsCXo*H1Vj~)%?gdJb08}hC|>9gV7TwPH8iZm=hlr**RG?nXUvJ XbnxWl(#SNp5#Y?;<~^N>k--`O#F@u4 literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminImages.gif b/install-new/data/img/t/AdminImages.gif new file mode 100644 index 0000000000000000000000000000000000000000..c33d0e62bcd952d0a38b7bc06386827f035474bc GIT binary patch literal 585 zcmZ?wbhEHb6krfwc*ekxG}Zd$`%h(au4PVLRJ%Ly;GKOlt4w+}U+6tp5Zm8zabEEM z|NrOhdfvPCLD8H;Z5#8BUwmA=)U#?;R^6rr^Uv0F9gMiRF89ON?^8BEK6zqxX=7|_ zuk)<+7Z#kEG-vCzx;^0&j>b$`eW7jJ_VShU-oF31@xZMkm)A8fyYuDi_oWvaCmn2G z*J@X}(s$;Ww6}ON0Mq5-eedwK=CIF13SZi1|5)#KykvrzN~?}skx=K$=pFk zvAd^7Mxe<-MPtg;X^b*WGU5{KuCkh%KGu9prZc$}H6)Z|Ep#1?4Vf+NS15|xxN15o zh>CK!1#WBFVIwSJWNXXf$9Z`BP9?1X78ZFAX7wX0O?jM^`91Z7Obl*szjt3sTH4N^ zm-mjMsg8~yo4dQVl@-HhQ!WmZi3bk}HL@}&#dJ)V%`POat+%&tF!yWl2x#>R>kbT^?jJPQD|}{P)V!eRxgpWZ17lYO zr%#VhnHQI^DlB1rSjy(8w5`$EyW_J~C1$OyLN8b zvuoqt-JAC8-qv}zsq<)K|H<|Vr#q*e>z{Fc!n{jU7hayR^xB+rXAWIFfArFYqtBi_ zd;a|S%a<=-y?XWf_3Jlp-n@PL_Wk?!A3l8e`0?YXPoF-2{`}?3m#<&He*5C^Rx04xHm)XR*P+$)%Nn=ftBghK)`f0_+Sb dPYx{3Zf0TSDDjxl)a=;I%u?bp(LjO08UUyF)1&|Z literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminInformation.gif b/install-new/data/img/t/AdminInformation.gif new file mode 100644 index 0000000000000000000000000000000000000000..c8c2fbc90dd4cbe205228b26b73e5a4bfe16f0a4 GIT binary patch literal 617 zcmb_Z&ui0Q0L?~Qf1tI~NrxTl)OFOl!KOG?mW^V6$RJ3uKd?1U)ZjtFKnWg34{O#A zDOEItA|q5Rp@$NSl+Z)@D6@RzP=W{f@E~D`e0q@LL5ippYxh6+j*s^q@A0mzh8DfI zZG?@`2!f2~GgUCfl^`tu@E&I>I{w;`8iv}&sR|0* zlf^osizrowN()nhPUlqWk=p&)lUqh$O=JZiHw`i=i8Z8XMwC~%B4i6NdSBv7h^m6W-OaF^l=!He<5f@I>q$-%22BT38!#27}k^Lx<0AB`hzG&zkN2>rU&b z5O4O4(6N}~Du|6!2lUKoX zi<08M+K*b>+S}UNL7)QyIy*W$yMUm(ySt~Sx3{;aw+{&V`}-$?z@&+jCQY6^dCHV2 zQ>RXyK7IPknX_ijnl)$cyt#Ad0m1wQ3l}U{uz2y}B}C&akmoHzxe*MOc8@F!Vx_$fhojZ5#-@pIh!GnhnA3l2Y=<(ynPoF-0_Uzg7=g(if zc=7V(%h#`8|Ni~^&!0d4|Nmzg1tT>C6o0ZXGcfQn=zszMlqVQC4lzh`$arjc;2^CR zb)Z90nXN}mJLG}Fk3(HYyCp&eViH*!j`z#0opU2YwV{ELl~2J#;D8rbla`l|!2+Yk zrfC`pVTMjF924a2s@@cM8nlW^N_A~m!O(J$NlTf1)`m+doRgGY+ITpVma;esg=G{Z zC?zusiA${LQII&~C8FUs%OG$POXpMp7VC(ej7(m={Jv=g3m!E-VAT#@=26N0^rW!1 nB!}07h0gAMr)N|~D4a+<#LOY6;WI(tVI#93Td+6}2ZJ>Ly?OaE literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminLanguages.gif b/install-new/data/img/t/AdminLanguages.gif new file mode 100644 index 0000000000000000000000000000000000000000..1d5dcd2fd93629e435424559e2179e0af340159d GIT binary patch literal 1065 zcmZ?wbhEHb6krfw_|Cv!Tx~FOf2~vVwy+gdGoS8Dot>1kb?=;mn_BkPUVgR3?qZqi zh0M4W>pZ*Mnon<8cYWg7=j&EpIGla4|LXgzWowH9mfk8nnzG{E$*vRE{bsvouS&{X zakT$p>zpIAYAzPdzqCJX_wLQNj-+lV51hH9VbhVc+of+lzbQF+I{wDe)z_C^es$sa zi?vNR8qyX;Mz6b-HZ?MJ!rwZn-x-b@SP-Tid5xzP0TBnXG;B85^!o zI9@sBTzAgl&H0OSijQWuZp%-Z*HCb6X6?b^%qP9NO#OGUeG6~Q%-wx7 zV6xBB+gBaCZTk0BTz-3Q%Fz~vkpvWfvM{nU%xBO6c^Z@_7&!hj*mM5*qSndIEheWr z(_llQ7I#Nc30I-ItC$|IeWAjWltbE5O&>%$8M;p%Ftb|rWoAN4sHCL?!`+)r4GUUb zf_P?T1wHOk_U5Z_IKiOKIn~u(@5Bs~m0TQ#?q|+KIv;dya&quGS-|qxrPHEtnt|h% zQ-?&v=5Zu+x*X@?V&$&MXqa$(4Lj!?rJWBJuW}b>V~%pz@R7qwBgDU8M}gqdNezO{ zNj!>&pB~gy37GQ0BDhgxwqRmRpwncV{U+gv=l@V5dnEWMMSc5lK31rJ0Cm$iGA+#`{$=mLSp2*3hB zROR`LRTrS(pznUU{6l>-1Otx8#(qz~mV!@4K29qqr{=b1Bj~v>PFleqh`YluR2RIm z8&SbV776c_4&6ZsixE?01ykik(wt%`ym&0PbPQ1{%R`Obuaw`fR+Rj#Eh%qpK@1K3 zNF7V-P-ZZtnVqtmT@x8>TP8;j=PKbmRYAY3fUn9IO78uo&eswO$LfnrG^AWn3qON_ zg^5rny7NMD?Wt`|F%%{gBPgsFRzKn2?P-jCfdLObOcdg;)vB)7D3Ew@8BU2JtMiC5 z6ir;s5SPdszL8QAHDrj19A_rSY1-mVv{(!6r^)sl3lpkiWSgI58wXJO=g4_c`J6n} zJCp9UXL{|oJQD@;igLHH+M{`}q_6N8sy1e_ebf0X`ifOU<(dh#F?(afmHw~mW&`u# zuY(l22wlTwHNC8_v!ID`Y|CULN!?5xK@)Tsf}xIPBDR@Hv>8&ng_O+D7z=oaf!&1C0{vPUz@o>6xg46G^R z?+!c9CgnR!-Ai(TXGG+b3SJom9>Wy3K`S7LCkSFYOEu3{FL0D^_)7N+y_>IF?4Mp1 z*;hpKV%(;Tv?(Vp>w10qKUZ|T%~yRg$EeJ$k-N3(1&!V_X>e;zOFHAS(dIFj)?|(~ zv3=D#y=q%@J6!AHzrCt0=jgUivh5q)-jFS>z45Fs?yfm^*I#?zdVPEPwsy9*cea85 zk&sRQ{Q#f@&h9n$o&XN+0@On}tRyw)*okO+*kw*u$WaoU86J?R-GB8c)%fAuqJ@*f zf>i8#zf%$eu5Ag4`Yiu=cQPg7+?SF%Yvd7CcruvT^Im7rS>GHQ>HMG_(ihrxn4G9T z92nW0l;wrUus4W1z59G%>5+H9oPYWT&WvNy3nPHHrINTOCvR2Fy1Yr>9!UQb<{wGC z?f=mQ?RaT7xFH4$E!%>gL`#x`?_}ucXjhN;<5>Ldm9Rhwj(09kd2vAt_v0SmeVzm@ z39toU%B6=s2yh1WUx9#TIl6FM(D|g}nnn(cQTNH$J#k#_T*A8vAW#k|=G1Qyr>`6f ZIg}E8D$4It&D_CYSdHH^jGrIy)qlM|F4q76 literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminLogs.gif b/install-new/data/img/t/AdminLogs.gif new file mode 100644 index 0000000000000000000000000000000000000000..e5df19aaf2db300b653d232adaddcc758780a56a GIT binary patch literal 1027 zcmZ?wbhEHb6krfwXlGzx)Qe^|jAJuNWH(LXvPk8&Oyjl5{Tu*(**&k=OU6?G{T zb14vWEt2vmk@6~+^{JHetx^c6RSc|E4zAaWs8b1PQVVaIBP-$rhQ@EwX3W7R-yPo$XY%*tvYEXYFdQy48No8~vL%#I>&u z?%W>Iu`Q}|V{G^4*xs!Xy}Kg%_QXuwm(;yJzh`OMge_T9c4ST6UEIH_WWws0$p;gr z9!i*gG-<}MF{VmoHzra^>pPtJkkzzi{K)#hceJ+`M_=*3FBzZe6-@_r{GIckbM| zckkYPAb9%v&8vHlA3uKn{Q1k5FJHZS_4@VeH*em&ef##^yLa#3zyJ90bZt;<~DY+w7@PX;* zY5S^2AAT~wI6udpSz?2RBa=%zk66WUSu@dqsemBSV>Nkhb4}ekAst$vC6)liHVDgO^G)qMxcvBKz{=B yM3eS*CPuCqycNtWEHQnvganj1*w}c4+c)qr@Ea)!H}EOdXen{C1npO3um%7GB3L{C literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminMessages.gif b/install-new/data/img/t/AdminMessages.gif new file mode 100644 index 0000000000000000000000000000000000000000..2e0b0e373c7d21176e9d0a72509af5711c9e5ad3 GIT binary patch literal 604 zcmZ?wbhEHb6krfwc*ejG;VAy~e$?Jd$^5Ao4&M6VRCDm+wtm~3E$42%esVHo>XyfM zZ|{Bc@q2Ff^4%BS%-MWx_rVKirbetxS8bWrf9b^fKMxKcneK7z$%*G2ZaDj~ zYsK}b)|1zFmbNEo{X9N-Z>RVFPY=HT{PXU{hCOYrf4?1kzPD^;hm&u|;U{mtE?GGH z{M_`fPdB)h9=v|#LVV4t8&f@>@9)}n{m0e_CooMnZXPc z1I3>#jO+}S3_2i_KykvrzO%uyskx=KtW>_;vIJHH8A)04ps6!A|k75 zXP05%X>?ZRg0EI08z!jY^=N3$m%%bR*UZ`z5XnWsu-o-CVlwtVin>ID~S z7hSAhdik&RqjeiMZ`--MY2lgH#b-N~oo`-owRPpSo)s7RS6}Q}ce8)f-6`uXPv3BL z`o^o%x8Iw!`P!T<*XC`zK5yHN`P*+y-Tq+Kp2rJ!++4Kt=Hgv9m+ZQ=Y!49KUcUGC z%6)fM?Z2~n|K0fqp07Q0Z{4AL>w)O-y$y%&Z#Z&)Ird=d@rT<^JluW~h#u`Y`Do{<$Gc8H-g5?sp6omKbmN6jn=gIdcIE5#tKW9t z__6Qyul;v^9X)#V#EBE9PMtb^`t-ST=Pq2haPi{BOP4NPzI^%0l`Ge-T|0Q;>7k3y z4_|tI^z!qgS6&>y`r^dZ7pJbhJazrmnH#Up-FkiS-k%G1-dw!%=F;7_SMI&Na{t|l zM}Mz9cz6BbyBm+*KX~xq`Sa%=fZ+4@KY#u(jDn#M0*XIbm>C#&8FWC71?33_jy(+0 zCJoI?yF@hnS48Z5At+%nA@lI0 zv$IUn&-4fiALAC+6%IS4sr0;kj$~2T2}MQqzKN{9*LXM&Ek4FArr}ldg2CL~I45F@-<0!RbFWVM_UCKBe6Q>+DNV<#3lF43EDLm= zWZ!YBDP?nP&FP}dJ+TElGZx>N;WO1UX-!P^q0*kSEeSh9v-Tu5U8tzsUpVc0pW{T^ zhI6GJ(_E5wMJ&5HyZUH$%&O2S=UNtApBb{)&#~VoYHL8ro*dsf?hMobia%Kx*%??F zbU=oI{KUZ4b)c!hLr2O~=J<(>CpC5)X%mGdd6r1@92S%i^iw~P`0I-h$2G?lFFITV z8e41(14JAdSseep2^ux>E5YqoIeuy*dU@oaYXZguhPaP#l>@SN!AH{C6$%O|kcE2!T)tluwW zl3(~#|B(4U;S&NPrvye$4~(528aX2{c4k=2tdN-5Au)49qL&B8EC^1VADJ{iI(J%H z-qf`G=^42*QuAh~70k>in4M8LFEe3bMADMT)P=FBi(=B3$0e>0&sY|pu{JJkTTIsC z#OxJG*=rJWRwU)ENX=WFlDjrJdrv~af{fyYStU!eOPA&rtWGanmtMFkqhe)V?&>BUDLj|rej-u)A6#F)0J&!DmxC;c5QFy+tV_8&&1jLCiEX{nQ*vu(&6@L zC%R@G@1J?HcjlSi+2{M`9hf}t;Ns>)~tL4&T^*^u~^( zH+LMnwe#flJtuDOK6!i3sT+Gw-`aQL&hC@<_ME=E@6`RhXKwF5dvE{g2m8+6IdJao z!E^Typ1*(S!h^#XA0EE==*XpqM=m`&`snG^C(o`ueSZDf^Bd2f-+cZ8h;F?AqL;TA zMjlZ7$->OQ5X+zg@;WF_FmOC$*v%p1u_0l4&{DTfF4j}Q>b_GoT$N6ooVq$pB64li zQm?BDO*11nxmZs4%iC3ddZ3ux-h04%^}7kbS~4#!cJ1I=Yxu-l?Cv6zsWMKGErD<_+fmG_m$7wv%G`+&^yl8mBs2rTnC+aA? z?9?QA3zwb^2`-I`T;gASX>d|;?-iCaYgiz_+~{E1QsN=GsoAwtK*q?VA<-d0%0M$` zfx<;c=T=TWi7g5aADXAC`%aQsXy|;5Tbzj_X@>&ip(Yj%J`o84hK7TWPfX_K;b5=^ E03CFPcK`qY literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminOrderMessage.gif b/install-new/data/img/t/AdminOrderMessage.gif new file mode 100644 index 0000000000000000000000000000000000000000..fe8e87068617dbd21e81bab80b1234007cd2f2e3 GIT binary patch literal 1055 zcmd_p+fP#m00!_gaHJ;71`&-}oPh_J8=J{c6f$&z;<$9IHAbC0DBau;GKb2@<^-7{ zv<^yv0UL8zC*lPY3$;ZTSTCHGmVzKuMO$kJZE1T->AAG$9C|K0{vG@B%lH00e4iHV z&CDu|2jYQ70NDAhYDc9e`}D{sKWd6j-91{4OUC{qhz~g-r8Z+i+F8`sA-8d3B@t=SK_cLB1ILObixF zz|SS1P^=X;jR~4ef+n+|*(7W>l{A>YmQI{#)0TJ4R&{E>@6!FyJ$mM{;io^1wO7U} zJEyBJThI2)o|BvCwD}jc66q~-kIH`W_I#_t*`;!Is@=a2xjKeJSBG8KG>dYLuSXZU zruFyfeYXt$e$Y2ySWt{ZN|Rs7wZ*TrEU7Jil_j9EEIpVC{5`ciFbNM%z{Aslp{JDN zQm4D2)g$ScZ~o2Q(#;Nm?8uni;m})y;N##!8>D|uXl)c|BaAO8vjd;BBa?P?(n(DJ z%OPhL$XPf2#6?;?^pi#Ush57{f}gn~&pDpRoR^;S(KbJAgBUx+yzny)hg zK@k*%F&x2g6vIQ|D2zvuNEGGZQ8-K?ID_I0hSMm)Vnj4dQel#bkQB~Yp@u&1uJ- zVdw4{USj_oU+3H=JM!W7`u&ov^WgiLC*+6nb(wh=(?wu>v0_~McFJ*kS#^6~{`&OR z!u0}GTw(Y2KQg*<(me?hp!eoI-{?1Q^<>npyR`}%7B bg&1Jf8=3Ob*v2z(=+UK1m)^T~ucxPH+qP}*-@mV_s=9XV+RT|VfByVg zQc|*a@7{Im)}1+XrlqCj`Sa&frcC+&|9@6i76TDL@h1x-JA)8|4oEG?P6pPt1uA_h zne&_`DL9@saJ^&FB%m>2?VB2XiH;WKh6WZk_hSnhGECT&+zuRAAjLJoO)pWvaB6F+ zuwsFL$l_yH7hL61=w#-6C}F{x(jMUFrK-fj!r#oxt**w!T_eQCDA>@%&(7V}ro<;y jHA9()okv(XjhBy!eKI#^U$;^-qY4iLL;GeWMFwjCH11XL literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminPDF.gif b/install-new/data/img/t/AdminPDF.gif new file mode 100644 index 0000000000000000000000000000000000000000..d5d9488f3a535ca01398e602f01db56b75abddee GIT binary patch literal 616 zcmZ?wbhEHb6krfwc*el+|Ns9F|Nnpg{{7v%cTe7ac=qhs`$tb7KYINB)}4Fz?!CBu z`}O5(SFc_@bLPyeJ^PLxJ$m@?>3#c-?cKZg#;nHh#4Q2fclD#F0TpaXI{C{7sIk2Wwh@rbpy zwX!#LF$oC>_KQl$af)#^Nhzpm>FVkm7?>+Ea7s**)i*Y^w6U?ZbI@d1EXJx}WMXEu z*4ExxPF-C|j>p3J*zseIti1d}XS)P>czHQ>I5~NE_<2Mx+?b}#&dkcm%Pw|-os*f% zP@L&859^C2LDo(g7D*ANC!a4cv*{E#Ha2mKYnbsYP*-qr5atu$;c!Se)KUMHXTk}F t^$a_UrYxxaVep_~R}PPgK#&R}!=6I*t!qV865A)twkUkJLV$z88USl4vTy(Z literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminPPreferences.gif b/install-new/data/img/t/AdminPPreferences.gif new file mode 100644 index 0000000000000000000000000000000000000000..be9175d6f9cbd54c6c7346cb43c21edbd97e6cc5 GIT binary patch literal 265 zcmZ?wbhEHb6krfwIKse?mX>z(=+UK1m)^T~ucxPH+qP}*-@mV_s=9XV+RT|VfByVg zQc|*a@7{Im)}1+XrlqCj`Sa&frcC+&|9@6i76TDL@h1x-JA)8|4oEG?P6pPt1uA_h zne&_`DL9@saJ^&FB%m>2?VB2XiH;WKh6WZk_hSnhGECT&+zuRAAjLJoO)pWvaB6F+ zuwsFL$l_yH7hL61=w#-6C}F{x(jMUFrK-fj!r#oxt**w!T_eQCDA>@%&(7V}ro<;y jHA9()okv(XjhBy!eKI#^U$;^-qY4iLL;GeWMFwjCH11XL literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminPayment.gif b/install-new/data/img/t/AdminPayment.gif new file mode 100644 index 0000000000000000000000000000000000000000..de6b152045d7d43764f21c99002b3508025ec8c6 GIT binary patch literal 1042 zcmeH`{V&u39LK*yoH9?-I!lEfre$qy*0g9>Ia13!Ka=ZWnAMy-$2oD_8K#&OC(lIk zoMImCWa#dDT<)18jv_JP__*(d&L7clz4rR~{ljZ}ySO^rUm+PI#z;1TJYjT2=l8_C z?29ex56R=j6|>@BvExey6PTY9%Z3u)3@2$UA10Ry(#i$Nl_TKh2JY_Q;Q^kW;N=D0 z-r(Z{zP{k+2mbyL5CDOJ5EKN#!4MJxp`j2K1|-sYeEbH5vU@>+ex&@OM=jT+0{F&F(8ctSqe<0!c^McWWt_2X>TUE zudlDazdxg5lv*XER*BMUBpG$mjCyHigDkUQlJ;(j)+En*FVAY8&Tg5Zx6aVpzP;|2 z(c5Pk9dkLIb2%RrIbCx(UGp^q^UcFQKJk8{-BeyLZES$CNuw$2>$e*kprvK2w@Hqc zC?!;we2yu~KvB7^sK*o)*g_Sy*vMkB*lhOD&=7~i;c~esit>28@$qqiKp+$f#bU8U zB9Tg^)6>&~!WDFCO|011;&MU4QHn%!8kVitICZP_4bldsoc`A^9S49RH;)cIVqB8IiWvDVxY}VG=1l zxxXhyP{R}9x@{)awN6Ze6(MD*m1K~A{IZa>j@Lu=j4bS!6&^QrbM46ZG)694i)MZ) zxRp?-B3WEBzvx{MrXU_UYQrfyXX5gLu5V(QY1Ls(G`!J~hQFVAi!USQ8tfJvUbrh> LBva)2IOOVIo7Y}zT63>` z-ObkZ_j}ge=-7CxW5fNP%@6ywJe;uY(X{Q4X6<=8XV24l`=2e?|8&Wr=PQo9SaFtReMX54USToA`2$rZ<;GsEEU KVGd>{25SHfncgq} literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminPreferences.gif b/install-new/data/img/t/AdminPreferences.gif new file mode 100644 index 0000000000000000000000000000000000000000..c2e2f68e5ef240f250a9d38b20d736984b8944ec GIT binary patch literal 991 zcmd5*{ZEon6h08dC=csg%POFvW2L&WQX!$`VnP!SD6)hpAL>K!fI=lDooadhNJm+rbM)4v;!xHI0 zhnoP$xeSZ>VQbd9teU}D+d}f4jxj^r+_))L@+d~Eo*HTVsI4=q(}$G2md?S3lz`lN z^Zamvwv2G-6yIlT;);l< z^QFeibwd-amkc?a?#hTynjG7Q21!+~xiWg{UE1tK>sa68q}#8J_u^eYzZE~T*c}Vg z{Zgl0XMNw4sxa6s{k_#G=5l`FslapD6$AH0HgoD|b@Wts#&~}t{2xYAUbq|aK>HBd z&c#rYwuYqn!^U_#ii7ii;CyNEB;bP802t1flUyn@A|EHtk~EI8A4sl_yb}Vu9Uz(o=_Af!!E56V?(HO5fB>yqLm_Cs{>S<0U5C% zJPb!AAiN0TR5-6SqLOncL=vbLC%V~)lS&0x#`a_&zq3V;6KceOdPWVCR1A#)NuSE88jD&E1l@RIrt4^X0k!j!lUP{m-5Sf%wiB2~nsD0C* z!Fdt@U!cJFQz=3Kydrr~^u(}npmUGIL$d|VvTb&-<4*EioIw(6Qj23gHjb!`bv)%z z!(eB9Za~8Dyn`s4`L5`x5HlULWdOfmhg-@0Cjfg1lU{y=W^=gb_7qnAlbVrL>qF#{ z3ml&gc>!aO=<0#=YF&}Htb0RSb*(`W5L7s(5qT7s?Ku;zvdRvw@?#M#X$}%(u=g(3 z<9ph(t19Rgi$#v++-2|!{mqkGZsctXuPjj=8#yi5bfoZLzMR6xFNZ|`!I-5#$gP-# z85S6kvwZEY`ys*YOqo!zVuvP}&h++ql|5--0ZorFcG3tdP-RK$Ja!*aUid0&zYf7^ LC#~ftII!<8C@gYE literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminProfiles.gif b/install-new/data/img/t/AdminProfiles.gif new file mode 100644 index 0000000000000000000000000000000000000000..1b909d4a5259478a4e25517a125d4e7d16221402 GIT binary patch literal 932 zcmZ?wbhEHb6krfwXlGzhu2oQ}Q&6c_jE#*=NlD4g%`Go4cd9$0)~KY`q@>oYtktfj z)uFE6qh-*qV>a2qY>I*HEHnE#7Oo3zJr>*ht#A!kYoM@hQrf<#lrR#32SbuZn##?Kq9{953@T&u--yS;q?&OsZ z45MH)1h9pG;!hT41_mPr9grj_PcU#aGNf|Icx+hUDCyC3q@r+xf`FQLl!*$5v*#pH zVfI}K3m-Wg>*p|EN_;cVO6Kf-%goZ=H zqmGFJOy)d-N{$bhcqLgTXgED-KEP!h(Ml0(G{g#xD*c3u`P4h9B?v)fsj HnHa1AdT^-5 literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminQuickAccesses.gif b/install-new/data/img/t/AdminQuickAccesses.gif new file mode 100644 index 0000000000000000000000000000000000000000..d876e5e9c066ae926e6125ffd1ca9d58de9f2c9b GIT binary patch literal 971 zcmZ?wbhEHb6krfwXlG#f#c=laa-BOXwC}CfzPm!_?rPn8tMu-#*S^0__x?KlyQ>WD zt~R^3*7W`ctA|_kUvJZYu)*-*W~0YDjUVqYeX`s5$u9G!dw~q=C%bK*?zMcj-}>&p#~7e^D{o=$pktm567 zg7+t@-d`yAaHi(txw?<%>px%3`*<_u^Y!{qw@SZ1EP8#W`OW#xkLMabU26Vxx#jcq zwlCK^zTE8mdb{iE?e4F4y1w4&`F6kW>xkS{xCTws>Y&+0y@$5+9VYc2G`qp|jA}idw<|sR-?BJN}a>%XG{8otKr^l=_ z)Fk}4-Y_or5ReF5c3}eN0k@gPPDv{`4kz>Y%jWkme4MzbyO~2kNJL-*g9D#d_N5t& zk6XLNH2h}da42kO-+Z3mlYpPjnl+PaE8CFh=;op*lL z%g-;S9GTpGq;1oUHA^nc={?@H=kE5k*OoUQsGWMczjSx;)YFqrK0e-dxar!nb4$-H zs@qq2^#0+UH+Q`L`fBO5rNw)*@4dhF|Nnmm+5p9$ER5_7N(?$6<3WC6U~6`mSTG|{ zL+S96PY(+urUW!C%Dkwv!0DXxp{X_+{A(PA7DTXdF{@ZDt#Fyw|8(t_9??c_S?x_4 zc5EWNyfQU%%)HDZnJqO=l2XDVBEkW3V(iYG5^Nk^+`J;p66`Y40s^e1yaH@uyb>#< fIU{7HdD+;6IhgvCq?wsT_c^gMFz^I8GFSru9^G*O literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminRangeWeight.gif b/install-new/data/img/t/AdminRangeWeight.gif new file mode 100644 index 0000000000000000000000000000000000000000..3583c03038df3fb1425cc446125327df58db9235 GIT binary patch literal 1062 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 literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminScenes.gif b/install-new/data/img/t/AdminScenes.gif new file mode 100644 index 0000000000000000000000000000000000000000..4221ace66c1768651ef582bbf09c47164fca26f6 GIT binary patch literal 1053 zcmZ?wbhEHb6krfwc;3v=9wFNqCD$Dz-xsGaDN$)^iptD%wb>cEbF(!T=4mZ0)LvPt zyS74qL$%?$T8k}p#@icAcGS7N&^-|eHZ%SLyX-GM$|!`-&pd+iVQ``WB{qP@@l&;;MZ6MYX)_B%4w<;WEOqtgS7 z_D(V0H}&|;;N!D`JPw4Om>YU>Zt%(Z!KW97MDAO8c1ifzrQuO$RijRM#BTo|zvKV; z6_GI~vlDjyKff|6Y1jV?tD-Nij*35>cX4%0%I^OOrwdXK+`PCpDt+(&OY34TuZz08 zE+%8&|I6#6QqGlJ*${nYV|3Pm|5rA~WFLB;eei$oq5s#m#OEFUpL^m)!IA%kNB);w z4JbPLzxdeylH>nNkN>Z};oW}pN!f}2H8*|gZu&Od@^88ou>Qo%&O2ezm2%?iKvFm+<`I znx9YGem(E`^}O%Z%Y*+%!9aw7;y*#>qSVBa)D(sC%#sWRcTe8{2F0H&j9d)=8FUzc z0F+S}IG!^6=ali-@L)d=hj7{khKG*KY}_I$4igl;MKuHF7#JEIVds-J%{XH)A@LMf z3y-YRlotzJ8+m+!N%5ZF`e*RUw#HN9Btrn(Q&bK zJj69s-TTCfo6Zg`4Lptt3YttxE|Zj<8ooR*eBjK$Z7KIh;$dn#pQO1@#RG)}%nTf6 zQX3){tMkt@$v8JdQrLmHf!#zxVqfy|zBv{J_jWKkFgi3#h^r_W1T-9AU}R*FnZeM& p$RnodHATQBy>C9Rgo?`w28Bm1mzD)GOZeSc@bU2pRyGy}YXGt`wVMC{ literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminSearch.gif b/install-new/data/img/t/AdminSearch.gif new file mode 100644 index 0000000000000000000000000000000000000000..6ddb543b821d150f6a9208c6d80097e648014929 GIT binary patch literal 989 zcmZ?wbhEHb6krfw_|5RtP|Z{6e0O;39^KbyGz@x%>JCU1T+W%JW1Tb@qa@@)FHXEU}vo4Mopter3B?0PYG z&x?6`UoP19YSDpLix0kDeCYMk!>^Yed42fs;iE^79zTBk#EBCpPo6w|`t+GIXU?8I zd+yx13l}b2zI^%W)vMR8UAuAP#_ij;@7}$8@7}!!4<0;v^yu;9$4{O-dHVF}vuDp< zym;~R=g(iie*OOa`_G?0fB*gkdwP@@4FOOHDE?$&WMKHupabH7@&p6NE{5qEj!8>S z2q-!>{P=NvL!yv|fU;fXrNxPdl>_Evlw4YJaw1ehkTrfDnFE5|8r{JIyYnPCc*oq?`j8|~3kP}+5<-!-2 zPC+?~9D@ZyOkBdsP9+Z(Bsw*=a7$VpI91lv!ojQ-mU1GYk%@(!OF+Rup}~EEqPtz; kp(83@Q+2Fo*;G2Kp6i^Uel37=J3GIuMb4E4f&vWI0J2~I=l}o! literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminSearchConf.gif b/install-new/data/img/t/AdminSearchConf.gif new file mode 100644 index 0000000000000000000000000000000000000000..63b11643cf20b43ded1dab4a9a302e73504a625a GIT binary patch literal 355 zcmZ?wbhEHb6krfwSjxaKB~E6_raOCXeW_V=<;lB0d-_7|Z0ou5=*yZ@Z_X?#*>dU4 znOk3`Ok48j*Pk_2E=Oji+*OL=l= z&Xs3hwg3f}m2A28WzM2CNA7+3^6tr;G?h8K?zAksvgX{EEtkHWx%cJIzdw80e2&b^ zx%2MNm31w9t^rMZa^}&WBhymeoLY0`*`G7ZYNo6@a^&8h|Ns9p;0B66Sr{1@%oub) zNd*lET?6D3#$I-asHb-KIp zKRhzehef()(hABZI+}XZMHy9? nRpdDhjrl|ZoOwA7r1-@*Y}8_9W7x4#Qb};%#%YHG92u+u%DkrU literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminSearchEngines.gif b/install-new/data/img/t/AdminSearchEngines.gif new file mode 100644 index 0000000000000000000000000000000000000000..d5dd1e7b247369a3f7394fd079fee02bbc954fc9 GIT binary patch literal 1013 zcmZ?wbhEHb6krfw_|57n&Tt@98);%IN-2yKCVs8E7UK3@UCu+D)(es{a z95`Jue1=B!Y|Xg&Rxt}~lIQ9t&o@k+Z?t|jZ+m8<-StN8 zTN4cK&M>;a(DK}5ha)qBkIf0cFvI!k0ury(w|&3f_55}R$c}w= zB>&aXvhPn)zdfw~_N4mzle%dK8>Sy>nsKOk-qDVQ$GVoD=v{GY!m85~*PflS;oP+A z`}^)4oBsNA_qz)dKi}$pdVb;8hfUufwSIrv@cn7y_oq!io_GFu-uwG~>-T5#f4rRX z^Yy%+Zx;T1wffh)HNW0%`0;YjulKwEd|mhZW^M89dJO$Y2X$GI$ zvQs&YQ(l~_@QWvNG1n|5hgU5D6303v6@5(ter$AW;c2s+cSLd#%c)jDzNj-29m*4A zH6;x~CNLzOW@q6kJmC1~u#>o6^p+I|9wi>ImuYw+^D;4oX}XAp&jgJ`)g}hnlBN#{ zLC+ee=|rrXv*MED!B|_DNfRP3DjZ~F7Fbabp-|vHPa`LyLNOwNxw$bp>q5szSH(sK J7G@>}YXFIfOm_eP literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminShipping.gif b/install-new/data/img/t/AdminShipping.gif new file mode 100644 index 0000000000000000000000000000000000000000..482ceea3cddf5a48431d1f910553c60ea5683cb5 GIT binary patch literal 583 zcmZ?wbhEHb6krfwc*elsZK-&DWA(N=7oCJ9)tm3CN6ml!>A$L}@A3J?n>TMxPEI~@ z8L9Ky+U{zCh92BX{H(G}s;ZJJ7!3_IjQIJ@1Z36Kot#uu82&S~ qanyWt65wFv)3KPaAmM^zTa%Q5&jEuY3Y}a!=Wd5+f(RDWa!bSJAavQ){rZQJNQe-ES%d!H z^xzY5m1xB|ZFumMAk{&AVuyw@uuLxsd5c|?;M=SJfOfhshh85+?XEzs28 zh72O)P(b|vgBfUWL-d*@STakr@tjPqEnP_rTn7WQWwh<(ph%So>OvXeeX9^}UgV~tL?99O|7O)r#S)3(U z#0pkpC9AUrtJuJ1Y-Dq`U=sz(C{j)Z)e&^!=AgqJ(TRA1C-X#4?kPOUGd!DTdUns@ zSzh49ywHn#2`};rujZ9r-D`N2H+VB|^yc2en_O_2i!OJCtJCjhTYv!%L^mT6B3UFx z@<jqM75}l>QN)Aq9K|^V>FKz(G)_+LJWB*LRtwz zccUZex_YrkAwkKMsN_naBxNX@GL>C9l%)a{Q=y8hgo;$5YN}Lq)liih)J%YG?zvwr*Hoy+?UZ=8PZ~odG7A1$vuPF zeV@O1dp}2?nRxrbhOaM;J$-uc_{8tOo`2`5Zx6h_dF;8RSB_u)?!}=m=05r0*2u+~ z`ww@V{&4=}?14Y;@7lWas~bP;UwiNDr|Y)wnVnd=z4*e$-6QKKcxU*?-jOQ>FZ~Ni CJm0_o literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminSlip.gif b/install-new/data/img/t/AdminSlip.gif new file mode 100644 index 0000000000000000000000000000000000000000..e5df19aaf2db300b653d232adaddcc758780a56a GIT binary patch literal 1027 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 literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminStock.gif b/install-new/data/img/t/AdminStock.gif new file mode 100644 index 0000000000000000000000000000000000000000..de02a915995d10fbd8fea2b255935cf7e23c5714 GIT binary patch literal 622 zcmZ?wbhEHb6krfwI2ORLx1QxdE8pQRvE%*xC;A0WOaLOmQ-k~-2L~%39WH-9WgbAiCoI<*M74 zYn~sjHGjO``t{y~Pxt12y+85$qu#Gi7XN%Y`^&TaKVPr^`Fg|8*BgJoUibIS(w}cO z{(7_N-`j=1-fsH!cJr^dTYkJf@ax^y-|x2mf4}0_yMzDVul)Uf>+kp5e!t)T@BN0~ zA9nr!u>SX#8-IV?|3Aop;y=;glKkXsg_4ZK5{07t3WcOf1s63Z2F0H&j9d)$3_1)z z0E#RI_Du~8P0cOM_3hk}?%k%+*4^&D{0!|3;>HsUG+ZZmb53>QvYVi%Kf&FKv7W(4 zLTrMos?l=8CQmnZ|6TrmX1jMad3dqe>m1V&Ij-x{!OzMC2hwh2M1PrwYzFU z_cR@DII!5OyigH*sczq7Ys+k}_(f6RtFld#jm;;y|8g=6EEAn4aL9Zz(YSIU;UT-s n6qXAP9~L(s<>S*U+u_K`(9C7-)b>QdNM&hgYY-O~3xhQPIVXil literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminStockManagement.gif b/install-new/data/img/t/AdminStockManagement.gif new file mode 100644 index 0000000000000000000000000000000000000000..d85510bed969ac615af256e8e1113de4a1b07c4c GIT binary patch literal 563 zcmZ?wbhEHb6krfwIOfjKu-3F;i$d>i-JU&Wy?c!(91!f?r{A|#FEq$h4Rdj z31pDc`A4D}2;3_t*iCHX`UTxkYX{4*8rLV82r>?7O(7~gmsiC2%%s7QtMpf;k!jyVW zF*$iTMX9swLee*-CC;+(i9Qe)KFh+*FYrR-EHf+DJ1)Vq3`}3XaGd?o)W~2B05^uz*?Ck9A?d|mR z^#A|=A^r(dbZ=v8AWe3303rDV0SW*=04x9i000mG5C8xMu)v>i*eP~~$fU;S(ob{rSSv3hLJtpbC>sxi z8z^yw4LdL#}%ao)MomJ27c}WbT%v!nIiiThfYlX4dX6 zs@qf6=&d_3)?z}u)$|mLDJeFK3+$Ga*={d4*;#G2v)XERolS3|@ARzD`2{YEO5JzW zIc;vR+tqBnyTN8xi`C9no4t*8dt2=rc2qX)tX|jPyP?5pOS9vycBftK&bvEZ_H;V# z?{wPK60or+W_NGso{6D*XJt1WEIHWjcBtFqaIg1~3BHG>h8>y~er#gEvB`nQCI=mx z5_D{8@Uf{ON2Z4!nI3jzdibF^X(wkV9ba00eogI#Wmy+j=3QDmENjg5^>O--$>t?ljYot>RsU0vPX-M!siJv}`W`+Fx$m@sqZ%sF%B%$qlF z;lhPWmMmGeY}v|{E7z=9(|@XE@$vaf4lY`8ZQ+^Ir!Jg7d-ckt+qZ7sxqb7&y*rN| z-hcGy(bK0--@bkO?%lih@85s;@Zsafk6*rg`S$G_IC4e_+J=DQPZmZ7hW`vYAZtK* zf`Q{S!+%a0j|~eB*6aDqF({g#(4`!?#pLJ35Aj?o(K{+Qjh7xjDB-!wrqR%ubDE+h z*QJC{s$KoI)g>G|nOcqeMRMb# z`8}%oe}0s_`f|QqfSD~UvbiIGiIrPIz-o${tD{*Phi=B>V+W&H+0Kh7U3tJOW0)-{ zvPbZt-$M4nClfSV*qhm`|6Am|n6S`kfno8B8H`UB`U!F|=J@PzSkTaHly+f-WdcJJ NE2EH>91jPBH30b-JO}^) literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminSubDomains.gif b/install-new/data/img/t/AdminSubDomains.gif new file mode 100644 index 0000000000000000000000000000000000000000..8554b38b5d8ef0443b0620522c94c726f7eba902 GIT binary patch literal 1071 zcmd7R?NibR00;12C)ZhelWs20Yipagb=T@e+j-@xyHc3CfrdTU!FTSt8FTUTr&vUar z#lrzO@F%b%2a%J5Kq5ZN$wubBhC-uI=mJ#n7loG!i;9ZSw@^i;n9I~+EUES?sUFX{ zh{NGZ38e%Ap`xOqvbwUWs)|IZCR4~13WdbMGdN@_l}e-0=uA4Zo>^aC&tkDCw}q#8 zC(hhGea6c~^0Lo$=3`pXn9-|P!==mGFLB_NG9muvJw|nV1@Y0f>TzsMe;G+fWc8FY zbhT`#mNP=n^;8vv2nBQHH+(h32!j-1Qf)VBHUiyFtg{nYHVWHG=1kSn7T675I=1;6 zG*_3$GhnrP2A9v^3fO!hadh-TyS+r?xY0XRV(?Y=n9GM|%8f4469>uUs(~!zQ9Jqj zS;{1@#w(#md9+{$$!f%f)wgXB+pE9joaRFf-08ZO2?pq3^Y}b|Q=>p2;5CcHpcn)} zsZ=VH$>ef*cXzj3-K-tx*XeYFgM$zR2`&7_@SO)<0qAT3UH4>ek;LEF9*}efTf0LK zJC|o`2Hggs0_C$=i2olsVUkv5K`*{kTI$- zgdo+**P6|tffuHcAA5|OCb8KmdKzk(4Tz@aB(BIq-+X6yPU&%LmS*}qR{hef%I{Z4 z0{zhiTT4hkgzCG}uvKRhD$eQ)U;X{EqPXXx z`8cg_#fp+=h~Ru!yE7p*+%Sns>)Msc(C*7hun0=tfTdy-inGA(k*wse?r>e5 gC#fg7+zT4_fxXFZ<|p^!@YzYp=|_?AG&peTUjpaoQ~&?~ literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminSuppliers.gif b/install-new/data/img/t/AdminSuppliers.gif new file mode 100644 index 0000000000000000000000000000000000000000..e5cb1f263cafa5c94545520fd8d7dc129be0eef3 GIT binary patch literal 266 zcmZ?wbhEHb6krfwIKsg29|+Ez`G02S|CvCPb_U1;@_A!vh=Dc=Ffg#T zD=74(WX@Ar$m6wI$7{(HuZ9~;N-7>9Lc10?Oq`t3BXodgsild8)KZrw$Fx>_xpP{!W;##QSh{rS*|W!O zx&`08dy%owq<&Mv)C2Wv&Q5;z?C#pNYrUr$8@7oYJ$f{HzIEav*TCsYOHTAS_ls4p z3%Pvxtmj0T{@ul!Hf?(P^l8#u!-h?f*-M=sK73fb%FnEw>&%%m*^6wZ9c*mbni{vj zX~EIX-ko{NPxq_Wvsm|trY><0o38HOFZuufe+EK8@h1x-JA(;>4oD%$PYi4o4zmh8 zbfo%EED7TLB{A>9iWZeA8cH|TOq(pA#xZq6L`|2(9+sm!ilkaB78t*+=9>RbeTv7i z3F=A}8XCNc(t4`K>1>QVy*#`E6ZPbD4AlYy6a{p3wfOin#q`}+^(1w4*fk9~+$ChC WxW)Lzg}qG-w6|>+VQ_I|um%8vSAN+5 literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminTags.gif b/install-new/data/img/t/AdminTags.gif new file mode 100644 index 0000000000000000000000000000000000000000..a01d9ea439b1a44e5e42da66e419728130365bc6 GIT binary patch literal 981 zcmZ?wbhEHb6krfwXlGzZOG_&)E&V6+arW%lbLPyMH*em81q+reS+acj@>Q!=tzNx) z&6+i9*RI{LVZ+9a8#is*w0ZO9ty{Nl+qP}{_U$`%?AW<;=dNA5cJJQ3XV0E}`}XbM zzyH921BVU)(V@eK4<9*l_~;QJdF1HPqsNXNJAVB5$rHygPo6q;>dcul zXV0EJckbNz^XD&LzI^2h5M8-?_3E{2*REf`e&fcCn>TOXx^?T$ojdpL-Mx43-u?Uc zA3S*Q@ZrNpj~+dK{P@X}Cr_U~efI3x^XJcBym;~Q<;z#EUNMY<(GVay1QdU=Ff%YP zG3bDFfbs+b$0i0=4jGRP3l27Our7;eaBw~(ZlShf0b_D=W3#E6N`#>DQ4V1t1(7L* zO>R75ibeq)3ltA9HVG!J@$h7H;^YyHkWnz$;Mgr-p;+)Cu*HLqn}KcB41q;#9sCYW zUtTCaY2#>84!9#>q|(tZYgH!T+0giaRmryO2g4=j_C7i13=fHnrVf5N+qx~Rvz#}&7XgMT7P%dxkqQ0-C7VaH#Bp3+U#@FrX8G8xwWKiU(=TR>lWRZbL#2w zIajCN{d_ZTZPxqm?>1gt*Sx>BX?uOpOuw|XNk9I4?>^Kv@o4wTJBwx>nzrlSwzADd z(euOazq@3XD36`9iv4j4Iu|ISLB- z%DT*&N__GPA`&dplKf&~x<)KQ?3{c|Ox*md#gye)c{JFZ<@H$9)>w)Oo9Vc-F=-l# ZF<7vNs+bzfDsdjXro$s}&B>9$8UUw#}&7XgMT7P%dxkqQ0-C7VaH#Bp3+U#@FrX8G8xwWKiU(=TR>lWRZbL#2w zIajCN{d_ZTZPxqm?>1gt*Sx>BX?uOpOuw|XNk9I4?>^Kv@o4wTJBwx>nzrlSwzADd z(euOazq@3XD36`9iv4j4Iu|ISLB- z%DT*&N__GPA`&dplKf&~x<)KQ?3{c|Ox*md#gye)c{JFZ<@H$9)>w)Oo9Vc-F=-l# ZF<7vNs+bzfDsdjXro$s}&B>9$8UUwot-4PAXRor zj>hs_jb*u7Yl;ommYS}qve{H-vboH3OS#$hDyy9}cDrirKR7ymi;jAm9r>*^|DV{0 zNmFYZw>$K0aht%^UowCeb>nzM^auP-gXwyfgLlJXl%DsC>Rys@n6=E|Bo zE9<|s2fggielRuR(VX;0bF+T0a{RO=_T&EOpPQo}FD!bpsPM^>(r2qHpRK5QzP9f9 zx|-+fYM-yKf4-sq!~XQ&=dAx<)&74~=ig<+-xr;JUyb{JAou^H+;b}%&TpP@ZTFm; zJEq^?HS6x)xnEnG9ZTWnC*Z=?j8Abs(1QdU=Ff%Yn zGw6VLpgh6AagV{ALuLnKkdR6}ht{19&pqb*PJQ)d!^Q$;e(PmtIy8g3MCME9u(5Ro zyS9oLWgNTn^3q8m*2WpnW<(XbvCc3E@niUL;H1YaUOlnIj6+GM#PuSrmT+uvJE!f``Zo|B9vxhr*{9m=$I{NhuI|)y^tAosY+Wfi}Jkr$;Lft>m1{p&+23 zJh92la@vK3Q#jjMq$c`^Jec6l$pckkY9JM*?12v*!! zzI=Jtn#Tc6R~wh!ub6jl_O@qh4!_!T;%)JidlNT2`Tzev166_IPZmaY22}EBI#)}W~M>>Qw?N|gZCb;)9>3co-QMlm5Lx2^&UO87Vp52@_$+7%3$GOq2ZJ>Ldmb%# literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminTranslations.gif b/install-new/data/img/t/AdminTranslations.gif new file mode 100644 index 0000000000000000000000000000000000000000..af91f09a4c9b8f1d5a19ddfef5604e2a3a557cf7 GIT binary patch literal 919 zcmZ?wbhEHb6krfwXlGzxW@ct*XXobT=HcPt=jRs`6ciB=5fc-WkdTm+l$4g1mX(#2 zlao_WP*7G@R#8z=RaI3}Q`6AU(A3n_*4Eb1(b3b>)7RHGG&D3aGBP$cHZd_VH8nLi zH@C2`u(Y(ava+(Vv9YzawX?Icx3_n2aBy;Ra&d8Sb#--fbMx@<@bdEV_V)Ji@$vKX z3knJf4i1iph=`1g3~$?>JMCcQyrV74PR-hOW#jR?d(J;Pe*O8S`)^*p|N8&`e}+*o z8UhrDfZ|UUpc(%ebU-G7@&p4%2}3o9jK_ur2b(#H-#BCxwDmR`CF}@DT$Io!Z7gOa z@?*lW!*V(S6MigcT+kHLziHC~LtsJ}}G8zU9nui2r^n5A~C^RxMF)=Z0@cNeEz+epkgkWV= literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminWebservice.gif b/install-new/data/img/t/AdminWebservice.gif new file mode 100644 index 0000000000000000000000000000000000000000..a37e6ddce98b981a1b72fb78548d2266ae7e82e5 GIT binary patch literal 613 zcmZ?wbhEHb6krfwIL5$W;x(mZ*_kufp14$PS+eg*O z6VtS3$)+ndK`kw-u7m*HaOg=%-6g$t<8Vp2W26S+eVnNzj~- zx;;w{y?OKL&yjOL8~^weZAs}nQnTpF|Ns9PXaE#{vM@3*Bs1uM%m&2?1N)(d8KlZ7J!G$SOrOM2WUS?^6h}r q@v-AFr9>BpO2@;^V$ve)KM!nb<=~c)4_G4O(%9HOb3GFygEat-F$%^2 literal 0 HcmV?d00001 diff --git a/install-new/data/img/t/AdminZones.gif b/install-new/data/img/t/AdminZones.gif new file mode 100644 index 0000000000000000000000000000000000000000..1d5dcd2fd93629e435424559e2179e0af340159d GIT binary patch literal 1065 zcmZ?wbhEHb6krfw_|Cv!Tx~FOf2~vVwy+gdGoS8Dot>1kb?=;mn_BkPUVgR3?qZqi zh0M4W>pZ*Mnon<8cYWg7=j&EpIGla4|LXgzWowH9mfk8nnzG{E$*vRE{bsvouS&{X zakT$p>zpIAYAzPdzqCJX_wLQNj-+lV51hH9VbhVc+of+lzbQF+I{wDe)z_C^es$sa zi?vNR8qyX;Mz6b-HZ?MJ!rwZn-x-b@SP-Tid5xzP0TBnXG;B85^!o zI9@sBTzAgl&H0OSijQWuZp%-Z*HCb6X6?b^%qP9NO#OGUeG6~Q%-wx7 zV6xBB+gBaCZTk0BTz-3Q%Fz~vkpvWfvM{nU%xBO6c^Z@_7&!hj*mM5*qSndIEheWr z(_llQ7I#Nc30I-ItC$|IeWAjWltbE5O&>%$8M;p%Ftb|rWoAN4sHCL?!`+)r4GUUb zf_P?T1wHOk_U5Z_IKiOKIn~u(@5Bs~m0TQ#?q|+KIv;dya&quGS-|qxrPHEtnt|h% zQ-?&v=5Zu+x*X@?V&$&MXqa$(4Lj!?rJWBJuW}b>V~%pz@R7qwBgDU8M}gqdNezO{ zNj!>&pB~gy37GQ0BDhgxwqRmRpw + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/.xml b/install-new/data/xml/.xml new file mode 100644 index 000000000..a87c70177 --- /dev/null +++ b/install-new/data/xml/.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/access.xml b/install-new/data/xml/access.xml new file mode 100644 index 000000000..d4cfe77b3 --- /dev/null +++ b/install-new/data/xml/access.xml @@ -0,0 +1,109 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/address_format.xml b/install-new/data/xml/address_format.xml new file mode 100644 index 000000000..54c70aa7c --- /dev/null +++ b/install-new/data/xml/address_format.xml @@ -0,0 +1,2448 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/carrier.xml b/install-new/data/xml/carrier.xml new file mode 100644 index 000000000..bd85830fb --- /dev/null +++ b/install-new/data/xml/carrier.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/carrier_group.xml b/install-new/data/xml/carrier_group.xml new file mode 100644 index 000000000..7061a1139 --- /dev/null +++ b/install-new/data/xml/carrier_group.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/carrier_zone.xml b/install-new/data/xml/carrier_zone.xml new file mode 100644 index 000000000..852a7ace2 --- /dev/null +++ b/install-new/data/xml/carrier_zone.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/category.xml b/install-new/data/xml/category.xml new file mode 100644 index 000000000..10969f5cf --- /dev/null +++ b/install-new/data/xml/category.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/cms.xml b/install-new/data/xml/cms.xml new file mode 100644 index 000000000..f0c67704a --- /dev/null +++ b/install-new/data/xml/cms.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/cms_category.xml b/install-new/data/xml/cms_category.xml new file mode 100644 index 000000000..d6f61d4b4 --- /dev/null +++ b/install-new/data/xml/cms_category.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/configuration.xml b/install-new/data/xml/configuration.xml new file mode 100644 index 000000000..0b7761c16 --- /dev/null +++ b/install-new/data/xml/configuration.xml @@ -0,0 +1,628 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/contact.xml b/install-new/data/xml/contact.xml new file mode 100644 index 000000000..56d1e19d7 --- /dev/null +++ b/install-new/data/xml/contact.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/country.xml b/install-new/data/xml/country.xml new file mode 100644 index 000000000..954b2ebab --- /dev/null +++ b/install-new/data/xml/country.xml @@ -0,0 +1,261 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/gender.xml b/install-new/data/xml/gender.xml new file mode 100644 index 000000000..08e62efee --- /dev/null +++ b/install-new/data/xml/gender.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/group.xml b/install-new/data/xml/group.xml new file mode 100644 index 000000000..96c02e177 --- /dev/null +++ b/install-new/data/xml/group.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/hook.xml b/install-new/data/xml/hook.xml new file mode 100644 index 000000000..c87bdae66 --- /dev/null +++ b/install-new/data/xml/hook.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/hook_alias.xml b/install-new/data/xml/hook_alias.xml new file mode 100644 index 000000000..03f125cf3 --- /dev/null +++ b/install-new/data/xml/hook_alias.xml @@ -0,0 +1,350 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/image_type.xml b/install-new/data/xml/image_type.xml new file mode 100644 index 000000000..2a31dad33 --- /dev/null +++ b/install-new/data/xml/image_type.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/meta.xml b/install-new/data/xml/meta.xml new file mode 100644 index 000000000..063a07a02 --- /dev/null +++ b/install-new/data/xml/meta.xml @@ -0,0 +1,84 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/operating_system.xml b/install-new/data/xml/operating_system.xml new file mode 100644 index 000000000..c602076e9 --- /dev/null +++ b/install-new/data/xml/operating_system.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/order_return_state.xml b/install-new/data/xml/order_return_state.xml new file mode 100644 index 000000000..83b4b3f3c --- /dev/null +++ b/install-new/data/xml/order_return_state.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/order_state.xml b/install-new/data/xml/order_state.xml new file mode 100644 index 000000000..09002917a --- /dev/null +++ b/install-new/data/xml/order_state.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/profile.xml b/install-new/data/xml/profile.xml new file mode 100644 index 000000000..12c8a9456 --- /dev/null +++ b/install-new/data/xml/profile.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/quick_access.xml b/install-new/data/xml/quick_access.xml new file mode 100644 index 000000000..2455df73b --- /dev/null +++ b/install-new/data/xml/quick_access.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/search_engine.xml b/install-new/data/xml/search_engine.xml new file mode 100644 index 000000000..6ebe2b5d8 --- /dev/null +++ b/install-new/data/xml/search_engine.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/state.xml b/install-new/data/xml/state.xml new file mode 100644 index 000000000..a82003960 --- /dev/null +++ b/install-new/data/xml/state.xml @@ -0,0 +1,950 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/stock_mvt_reason.xml b/install-new/data/xml/stock_mvt_reason.xml new file mode 100644 index 000000000..60eb4b1f7 --- /dev/null +++ b/install-new/data/xml/stock_mvt_reason.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/subdomain.xml b/install-new/data/xml/subdomain.xml new file mode 100644 index 000000000..7e2004623 --- /dev/null +++ b/install-new/data/xml/subdomain.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/supplier_order_state.xml b/install-new/data/xml/supplier_order_state.xml new file mode 100644 index 000000000..67ae15d53 --- /dev/null +++ b/install-new/data/xml/supplier_order_state.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/tab.xml b/install-new/data/xml/tab.xml new file mode 100644 index 000000000..c9b5e0b44 --- /dev/null +++ b/install-new/data/xml/tab.xml @@ -0,0 +1,295 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/theme.xml b/install-new/data/xml/theme.xml new file mode 100644 index 000000000..049f231a1 --- /dev/null +++ b/install-new/data/xml/theme.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/timezone.xml b/install-new/data/xml/timezone.xml new file mode 100644 index 000000000..5a41e90a1 --- /dev/null +++ b/install-new/data/xml/timezone.xml @@ -0,0 +1,569 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/warehouse.xml b/install-new/data/xml/warehouse.xml new file mode 100644 index 000000000..62308e738 --- /dev/null +++ b/install-new/data/xml/warehouse.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/web_browser.xml b/install-new/data/xml/web_browser.xml new file mode 100644 index 000000000..9d56484bb --- /dev/null +++ b/install-new/data/xml/web_browser.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/data/xml/zone.xml b/install-new/data/xml/zone.xml new file mode 100644 index 000000000..48a23cd62 --- /dev/null +++ b/install-new/data/xml/zone.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/dev/index.php b/install-new/dev/index.php new file mode 100644 index 000000000..625959498 --- /dev/null +++ b/install-new/dev/index.php @@ -0,0 +1,105 @@ +type = Tools::getValue('type'); + $this->loader = new InstallXmlLoader(); + $languages = array(); + foreach (Language::getLanguages(false) as $language) + $languages[$language['id_lang']] = $language['iso_code']; + $this->loader->setLanguages($languages); + + if (Tools::getValue('submit')) + $this->synchronizeDatabase(); + + if ($this->type == 'demo') + $this->loader->setFixturesPath(); + $this->displayTemplate('index'); + } + + public function synchronizeDatabase() + { + if ($this->type == 'demo') + { + $this->loader->setDefaultPath(); + $this->loader->generateAllEntityFiles(); + $this->loader->setFixturesPath(); + } + + $tables = isset($_POST['tables']) ? (array)$_POST['tables'] : array(); + $columns = isset($_POST['columns']) ? (array)$_POST['columns'] : array(); + $relations = isset($_POST['relations']) ? (array)$_POST['relations'] : array(); + $ids = isset($_POST['id']) ? (array)$_POST['id'] : array(); + $primaries = isset($_POST['primary']) ? (array)$_POST['primary'] : array(); + $classes = isset($_POST['class']) ? (array)$_POST['class'] : array(); + $sqls = isset($_POST['sql']) ? (array)$_POST['sql'] : array(); + $images = isset($_POST['image']) ? (array)$_POST['image'] : array(); + + $entities = array(); + foreach ($tables as $table) + { + $config = array(); + if (isset($ids[$table]) && $ids[$table]) + $config['id'] = $ids[$table]; + + if (isset($primaries[$table]) && $primaries[$table]) + $config['primary'] = $primaries[$table]; + + if (isset($classes[$table]) && $classes[$table]) + $config['class'] = $classes[$table]; + + if (isset($sqls[$table]) && $sqls[$table]) + $config['sql'] = $sqls[$table]; + + if (isset($images[$table]) && $images[$table]) + $config['image'] = $images[$table]; + + $fields = array(); + if (isset($columns[$table])) + { + foreach ($columns[$table] as $column) + { + $fields[$column] = array(); + if (isset($relations[$table][$column]['check'])) + $fields[$column]['relation'] = $relations[$table][$column]; + } + } + + $entities[$table] = array( + 'config' => $config, + 'fields' => $fields, + ); + } + $this->loader->generateEntityFiles($entities); + + if ($this->type != 'demo') + { + $this->loader->setFixturesPath(); + $this->loader->generateAllEntityFiles(); + $this->loader->setDefaultPath(); + } + + $this->errors = $this->loader->getErrors(); + } +} + +new SynchronizeController('synchronize'); \ No newline at end of file diff --git a/install-new/dev/index.phtml b/install-new/dev/index.phtml new file mode 100644 index 000000000..82285bf3a --- /dev/null +++ b/install-new/dev/index.phtml @@ -0,0 +1,117 @@ + + + The Synchronizator + + + + + + + + errors): ?> +
    + errors as $error): ?> +
  • + +
+ + + + +
+
    + loader->getTables() as $entity => $is_multilang): ?> + loader->getEntityInfo($entity); ?> +
  • + loader->entityExists($entity)): ?>checked="checked" /> + +
      loader->entityExists($entity)): ?>style="display: none"> +
    • + Nom de l'ID + +   + Clef primaire + +   + Classe + +
      + Restriction SQL (WHERE ...) + +
      + Dossier des images + +
    • + loader->getColumns($entity) as $column => $is_text): ?> +
    • + +
      + Relation avec l'entité + +
      +
    • + +
    +
  • + +
+ + +
+ + \ No newline at end of file diff --git a/install-new/dev/style.css b/install-new/dev/style.css new file mode 100644 index 000000000..9e2512bd6 --- /dev/null +++ b/install-new/dev/style.css @@ -0,0 +1,8 @@ +.clear{ + clear: both; +} + +.column_left{ + float: left; + width: 250px; +} \ No newline at end of file diff --git a/install-new/fixtures/apple/data/access.xml b/install-new/fixtures/apple/data/access.xml new file mode 100644 index 000000000..ea5f18d79 --- /dev/null +++ b/install-new/fixtures/apple/data/access.xml @@ -0,0 +1,373 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/address.xml b/install-new/fixtures/apple/data/address.xml new file mode 100644 index 000000000..ad65dad51 --- /dev/null +++ b/install-new/fixtures/apple/data/address.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
+
+ + + + +
+
+
\ No newline at end of file diff --git a/install-new/fixtures/apple/data/alias.xml b/install-new/fixtures/apple/data/alias.xml new file mode 100644 index 000000000..7bc6b2275 --- /dev/null +++ b/install-new/fixtures/apple/data/alias.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/attribute.xml b/install-new/fixtures/apple/data/attribute.xml new file mode 100644 index 000000000..90f478211 --- /dev/null +++ b/install-new/fixtures/apple/data/attribute.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/attribute_group.xml b/install-new/fixtures/apple/data/attribute_group.xml new file mode 100644 index 000000000..eae1001e2 --- /dev/null +++ b/install-new/fixtures/apple/data/attribute_group.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/carrier.xml b/install-new/fixtures/apple/data/carrier.xml new file mode 100644 index 000000000..74ec8285d --- /dev/null +++ b/install-new/fixtures/apple/data/carrier.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/carrier_group.xml b/install-new/fixtures/apple/data/carrier_group.xml new file mode 100644 index 000000000..648e97b66 --- /dev/null +++ b/install-new/fixtures/apple/data/carrier_group.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/carrier_zone.xml b/install-new/fixtures/apple/data/carrier_zone.xml new file mode 100644 index 000000000..3ae37078b --- /dev/null +++ b/install-new/fixtures/apple/data/carrier_zone.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/cart.xml b/install-new/fixtures/apple/data/cart.xml new file mode 100644 index 000000000..d20054356 --- /dev/null +++ b/install-new/fixtures/apple/data/cart.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/cart_product.xml b/install-new/fixtures/apple/data/cart_product.xml new file mode 100644 index 000000000..c71d9c6d0 --- /dev/null +++ b/install-new/fixtures/apple/data/cart_product.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/category.xml b/install-new/fixtures/apple/data/category.xml new file mode 100644 index 000000000..6e7e09e07 --- /dev/null +++ b/install-new/fixtures/apple/data/category.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/category_product.xml b/install-new/fixtures/apple/data/category_product.xml new file mode 100644 index 000000000..e6a2118c6 --- /dev/null +++ b/install-new/fixtures/apple/data/category_product.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/connections.xml b/install-new/fixtures/apple/data/connections.xml new file mode 100644 index 000000000..7c71eb8f8 --- /dev/null +++ b/install-new/fixtures/apple/data/connections.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/customer.xml b/install-new/fixtures/apple/data/customer.xml new file mode 100644 index 000000000..0d0b3084a --- /dev/null +++ b/install-new/fixtures/apple/data/customer.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/delivery.xml b/install-new/fixtures/apple/data/delivery.xml new file mode 100644 index 000000000..d6cc8ef93 --- /dev/null +++ b/install-new/fixtures/apple/data/delivery.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/feature.xml b/install-new/fixtures/apple/data/feature.xml new file mode 100644 index 000000000..2571ee61c --- /dev/null +++ b/install-new/fixtures/apple/data/feature.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/feature_value.xml b/install-new/fixtures/apple/data/feature_value.xml new file mode 100644 index 000000000..ee5a0d291 --- /dev/null +++ b/install-new/fixtures/apple/data/feature_value.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/guest.xml b/install-new/fixtures/apple/data/guest.xml new file mode 100644 index 000000000..199e95179 --- /dev/null +++ b/install-new/fixtures/apple/data/guest.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/image.xml b/install-new/fixtures/apple/data/image.xml new file mode 100644 index 000000000..7812691ef --- /dev/null +++ b/install-new/fixtures/apple/data/image.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/manufacturer.xml b/install-new/fixtures/apple/data/manufacturer.xml new file mode 100644 index 000000000..00af1ef39 --- /dev/null +++ b/install-new/fixtures/apple/data/manufacturer.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/order_detail.xml b/install-new/fixtures/apple/data/order_detail.xml new file mode 100644 index 000000000..33b3b3c71 --- /dev/null +++ b/install-new/fixtures/apple/data/order_detail.xml @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/order_history.xml b/install-new/fixtures/apple/data/order_history.xml new file mode 100644 index 000000000..92dcb493b --- /dev/null +++ b/install-new/fixtures/apple/data/order_history.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/order_message.xml b/install-new/fixtures/apple/data/order_message.xml new file mode 100644 index 000000000..562e4ad61 --- /dev/null +++ b/install-new/fixtures/apple/data/order_message.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/orders.xml b/install-new/fixtures/apple/data/orders.xml new file mode 100644 index 000000000..4b230c0c3 --- /dev/null +++ b/install-new/fixtures/apple/data/orders.xml @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/product.xml b/install-new/fixtures/apple/data/product.xml new file mode 100644 index 000000000..3c0fc911f --- /dev/null +++ b/install-new/fixtures/apple/data/product.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/product_attribute.xml b/install-new/fixtures/apple/data/product_attribute.xml new file mode 100644 index 000000000..317f4e2c7 --- /dev/null +++ b/install-new/fixtures/apple/data/product_attribute.xml @@ -0,0 +1,104 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/product_attribute_combination.xml b/install-new/fixtures/apple/data/product_attribute_combination.xml new file mode 100644 index 000000000..fe2bf8833 --- /dev/null +++ b/install-new/fixtures/apple/data/product_attribute_combination.xml @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/profile.xml b/install-new/fixtures/apple/data/profile.xml new file mode 100644 index 000000000..de42ff03b --- /dev/null +++ b/install-new/fixtures/apple/data/profile.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/range_price.xml b/install-new/fixtures/apple/data/range_price.xml new file mode 100644 index 000000000..7979b5ffc --- /dev/null +++ b/install-new/fixtures/apple/data/range_price.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/range_weight.xml b/install-new/fixtures/apple/data/range_weight.xml new file mode 100644 index 000000000..f110657fb --- /dev/null +++ b/install-new/fixtures/apple/data/range_weight.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/scene.xml b/install-new/fixtures/apple/data/scene.xml new file mode 100644 index 000000000..7ea3f0cc5 --- /dev/null +++ b/install-new/fixtures/apple/data/scene.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/stock_available.xml b/install-new/fixtures/apple/data/stock_available.xml new file mode 100644 index 000000000..d578aba50 --- /dev/null +++ b/install-new/fixtures/apple/data/stock_available.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/store.xml b/install-new/fixtures/apple/data/store.xml new file mode 100644 index 000000000..c7373f47a --- /dev/null +++ b/install-new/fixtures/apple/data/store.xml @@ -0,0 +1,68 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/supplier.xml b/install-new/fixtures/apple/data/supplier.xml new file mode 100644 index 000000000..79f689e53 --- /dev/null +++ b/install-new/fixtures/apple/data/supplier.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/data/tag.xml b/install-new/fixtures/apple/data/tag.xml new file mode 100644 index 000000000..1a9073a88 --- /dev/null +++ b/install-new/fixtures/apple/data/tag.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/img/c/Accessories-category.jpg b/install-new/fixtures/apple/img/c/Accessories-category.jpg new file mode 100644 index 0000000000000000000000000000000000000000..cf93e8c87145d9a12c440a16c7d0fadab73e9cfa GIT binary patch literal 16989 zcmb4qbCe`q^JcYe+qUiL?rGb$ZEM=LZF}1Gv^j0tHn!jQ`+j?N_rJY$Pn}bdRX5|w z8yOi-MAX;v*ERrAQcOY&00aa80DZpzUuysn00=PfKl6Kleort+FfdS1FlYz}a7b8a zSXdZn7#KKsWJEZ4BzPDYM07+X6jU@cG*|=-OmtLCWK=ZNe-;4(`Th+k7!(*76e=7H z9P0n~`058BK>|{M?m>Wv0l-K=AV@%8g8;m5JwZYKQTKljAaDpsU=T1+sPDsAK>r#4 z`{4K2fxjVqtpZ>{fB?XVAc)_RX2S2|#QqdX4~SXNn$I~<-tg&SaK;!H78i}&z?2aY zkd%;lq5eRi9Ikn@S`BEqA!=5q7x zC7sJ1pgp2mP)i!H)m=mv{-Xk@JnzaxyUN^nr0+W79FniGie3((-m8b(85~$-0TgCSKc~& zbR0EVmpAXVy&KQnCKoQ-LO5g&RofO>#Ql-^=u&zA|DGCiMtMakzV>e&{FUBhXuj99 zf`_Z=$*K9?h5HJ3zD-DX%~M^Z5tT^{x3!FpFFNkweIF`P0HOFxGv1HAle^QE(puPG zY`;br7kj{_?#5Aat#8NCbY9(D_Q)lX&inpOryM~vdYJt94P5l>TUEKZG1KDM52L64phG{KSi52C|kvktI9<~Y-H9r^%41#01L)8S`r&~ z`fwVyVfq_|Ovn$hopDEpo31}xCao2FI;9zheQGRmedMAW{mxrHRT=3@xDeLup_q{~ z<%jgOjTg)D+y7lysB zAJdB_yZ6Fu^AwC?(p*87gBkfykR2dQN0k48O`NaQ&PQ&bhs#g57c0lg#n+vS`S8&B zQQ&#h@@$%x*tben1823Ms}XeQHy2b95kN2s3%mM@==;QH7`P6NrcKitquQVYreO-m zEhd3iDLTFaa_${4jgd5F0){b{zW4S?bexHr0;LnEp$o3TDN4GAr`_W8BJ%TBP8N+31f+Fl{H$SsFC4K5^KF2orAQiF$plE0%qgR z>-yBl4e%dJV@XoP#LNG=&;Ved(gX-Q!hb&@2_k-91tdX1B6&)HJP`oxTM7#JwnQKR zmEb=HDe&#ISiXG{I1n%}BsdV*e;wPuP753Y37H5H1r;5Gn2`yMkeQW@U5JE?MOdEn z+nqsv`#>Nt;QJ@^mt;}O?5ZgC5|?6cXU%8@*TXNsBdMe%iJE4i9<26ZDu*FD7rA-t zuV4e|YIgVWnMjlcE>>}9Cv>C_tUH|Aa2CbG@-1W=_8a15_jpU*pUwEBnpe9rc{k)U z=tZjt$Tl1|)HC?SD_6TZWponFaHn*Ym5F8SR(gK)Q5`SNB0Z@jJxhl?AGR<8tuWIy zVe`4`X;%*`F<*dlTR%*1@gykweX^t9X6n^cePnc~$qxsG#x)wj zaeyjGv0SP)jCe((_gR=Mlv}Q^3O%vLE~1%psYCYG?do=!T6b~M1NS+g33b=SI6gzu z#uQ#ld06!K@+Jz{;jv-YDyiVzEM_-S#a(qb+y{RZ4`RU)FmpvG08WQju-!envH#cN6w%FDY}533sOeF`n}eaT_wfbTq3cXU`7K4`bPtkw?wIfq=)aT-hY#hEtM0tDaFkM-VYg0pRD^;a6|D@Mn34@JTE2X8!s{G?)fa%ATyQG ziI%vu6??84MOmlYHjK&8odF9?)W3BRzqeGz6*g&Uh>A|Rsfp|SOscmsCpJ9)?KblV zZ41B(ZN|ga6>uX~Wzk~o2##eiEM+RJI!}*yyS<(Y=UqTvtHPubC9h|zTtlQs z@A5kC6~u4*hViG?@X_3_(mU`sVdAYA13$(}fHz_U8ZRe2)RxJw@zV%zh;>n$#OS>F zzbMh^(sln}?y0om%6QvQjj=Y4H^tsv6ftOuHjNzMN3E$^@Go*4)VWAodC~I0wMZHJ zS<~ng0X9$8r5yXg8QoD22Sb4}pY_?WMf6^qjvR^vPmKG6GmJ{K0ckt|#%Cso8C)yF zH!QSm+k_TrJ+4N(1slb8Tt;2!w=5S{XCN}sSS;s)Q6V)HK7{(#f z8>1V=TiI&KxX-%5Glwgu=+)?=e#uxc=N1PX;-28;GKm7^5Y7`b4DE{ffVaqQ$( zLgypDDkSerxKK!D+;-fPou>J@UhTluI|6#77;~KdCm3tWn8c2b&ah}qZ2z7&~th5 zAp(8Wecd%K(!+bhX(ch5hR8JdWwUvny8N_eA~%ODtd7JR9ndmFC_hirDqB0{^FK^S+g~qY&43XjQ}{w z037yNSo{@#08gV}t{cP30j{_xQ-Vdx;-^azZ@7ajO&fM=^~4hlCcOj>cEgBcnFo_+ zMm(I9ZVuO9d1TK><=nJcFh=DQs?Zi6V=WZDAADnn3yMs;%ky!@a7&Q4y4m_|&FWVC z)P0IK>)pRkmPZv~N_jtY2;{`Ci>;+L2p@Nd58iDC5#m0P_1}kM4PQkG4)j?TMAK;+ z8qQ*VDlv3mDdbYot~M`;_8i%wLbh3`Ayk$_x;U^_e|o^^q*DES!a;o2s$xu34rW~q zq9W#0LY3azu%%jrZuyJvV^wmln|0nYv<5Nzp2n6DvYz1G6R0}i zGbx5LighPWT6&CHvD5rnvNXnqtp#naij>IA8Nqgyu}rgUp(wXFnfbX=az#}YE3baq zFj$%L7HDEhJohKdMxH1s*$T?xcc!uCL6llzLRQ-T*cMR0e3UAeg%e(Pbxl?Q(|DeE zPkU^9GUl4S7(31-%n1|LREf-whD=})&^I5&OlAXF92peKt`r4*8MoRb zvFxa>ZNM>~)VuM<1c#JcM%7A;u`$xgpz@Oq@;!eH8dH9(X6&)3wJLeaKl8 z?|hp^hv@nBRER-SVWxGWHCMBBEJk0ZSayN(LHue@;W9 z$z)PIS#5h#-GUL~x`v*ig#c&sc)hfYp1ykSX<}|PK*O{XoF8uyoR0u&-S7NolKe4i zjd8cmN;!TyO*0!gMDn~ud!rXf`Uwe2{!5oI%jvJbc6ShqWOze%thR&Q7v&Cnnh-B`luzhPqS9yH@k4LI%IKutSH!Kwq7?aWgtZlzImfkCJpUYd3d~MWVBFSVTOzLknsudpfzVT4}iw6|w z|HVUu$jBrJiXyLoO2{Il_%9sbf8cDk(ggl@QYlqEzz--{@bwG7diFq<`w)yS3(ZC5 zFI}*VIE+VuDKxExU@dcVMC(+_dxe5|E(#RyV<;2vW=5f|FAPsZCOEpvM(-(Ax>VT& z2Gt%YS@e{+zxDhisut5lH0nm7&x%Q3w$s0<+tRl){;f<~MhzVdX&{+Qtz7=E=2D2? zJMqo;q2Rzl!TweMdnZ6Zzk^Q{CLu7y?~PC}aHvNmVPq9nG<0+di0_*v4NOSP-(e9^ z>PP!wRCvuM?<}YsRB-d(xD;Ff_&T^5t!ggzK+J(>yIP`cPHLX!y5^%zc=OlFBl%Df zYhs5I#h=eFz}r}Y1rDmwACEfGB*CTeBTK^pGKoNxeW4)&)Ljz$`;9okaTX(Yj7BXN z^HW=G7I@R5zvxZkM?v6{GJNtEx$9kgV)OktFE;rgub=m(*M zX8Fka$Lx(?-&_9f7a-_KeCYOGz{RfdQ|~f1^5EF_*hKDGz@;Mh+V@O_>n*o^QSKRG z(J%F#p#2L#>w9z=i=N9M_@NT&v3cjNA(NP#2+~ldH|MeoA^d(MvTrwW97&>ELbEkJX;@Z9 zXU2ApQa2Xy0>Szs1)GMqpQ3>=f6I3K(jL#aaX++i3t=fB+|<+%>M^mp1)}ogr9i#L zi6@o$OF`+JliwV0k;z`kuTElrtHXQ~VK=3A8KF0&dRbxRWwNKdl~vbJlCf_&m%nv# z`vp)SXqrFztRS!~eIFXip!zutqnkCKm{HjkJ3YX4$!;b3hjCaI;9k{TyJ2CO8*0&Z zK?&{3Hid60{alT!bIEfWOW1K=l*?8zD@KBQspb{=x=`;a^rt#a482Ep{VC?RjCIad z28-a+{20#lI-W(-TfqkC)*^1=--)1%?Zd1-T<+SA)mS~~wZ|=|H z@P~@5o^Rv|?AuS6eKF_F^n@2QFi^O! zpOr4kyjaeKX4>XPytaAs7t%>&>EZM?F2rm5@lJD<4)eO28=GxM zV`^KcU2Z$ivlGUhci2}7p{l*36XZFEI^P!YCpW^YcFi~5$F*Z$rV1m`DRw5s=&X7B z1TSQqRCtZIV3Iy8Tb8{?Le{T@sqk)JDm%!r)c3_**fL?Aqem!q6*g)NTF6C)pRSa7 zMzf>*PV5p|7uV%}-r$K^}904iK>_;JiBu%bIZDw02?tDHrD zymL0mB|sqf^aB?rN36?HR2xSBg+BnQ4EpC@IlGp#OYE9zu85U)Eu%YjtzJS?K6K@- z>ED!nsyXMZd)Mfvs)bSa!~ELRxwtDzx3?nYUz*=H(AU*6w2PP3_ZkhLwtJrBv8QC}H+ z3=Amn;7urUM6jEdSwiq7L#*x=Ve^uPY^rH7B)I%gkR&J@)BdK)c~r)1yOr?jBsLj~ zGW^SC1i%RARV;jvtp3vyt21+)V}HxdA7C`cCYiOH2leli5op0yd9kI;CbIF#*BCuj zY`!x#Ia>j(3O!!{2Vq|lw$!9`yzF3?3Hhabpu&^SvGc-m@V4xmuS+WN z2(7-67%n1y@*hY@OJcn;w-&Ed8LNjF=!oDblM9VTbq|ES1J}Ycsm$Z>!F`)9$t)Rg z0UgmvrE@CX18<=rb7Rp{@PuZjO+L!TrawURguM|Lr9c@b&!g6myBd#pRv{ThvnTR9 zovzf2;<`neNBFh_LxiXO~Jsb&BmjlyqP~oubz2 zc=F1HFs0m!yDipwE8n`x*KudaU@TQ3NW~Tn(lxFoPv2+Mj9R;mnrXB^Gc{H7s&SaS zQn7!odZr@XbZLqi@JY!()8KH+8awrG8pLf@KN76-ve?9pWH@VAvRyPdx%J(~cn#gn zWu(JJ0=Z;x&$rK`q1LYvkVN+g4nuD7Pz(+y?nj%*#P|@UcC~W?>IN!Vk9OkPE(dpY zvM(N_?_^!=Cn(ZZaiVrze&>LF`!wB8{I1JyBg}u2i3*Ox^ zSYk)xbZCW8y;fmago3q;MDW6x+L5&YEflfV6kF5#0_30_OxcHNEUVLNt7xn4_b9B` zR}>z`Z*&Z%{&^j-G{+S)do8&O$mn03!O#RVWilXKF@_QARfu3J$}Ln<5-Ik|C8=TL`8~MzA8 z@FTeq8srw5IuFFQ$e0Qt#@2T1_RwK_v=ThfJB?zknV(GWy0sj9myKVYd?*x$`h6_T z^B$yaa|baUAcF$-yz)Taq7n++&PXq9I{FNAwSm_$=R*Eq$Fx2LukaIoDAcyUYP$jd z9vkJ-#)UK!YKyKk;I0#9CAxhB{7cgVyOQ0{V|`%BNHekyPIm63*|n|&Jq#(8;YV#88oTTh z?zq#qn&a(N^7(-02xt_K`2s zle*%m4|!CShq=Yo%B|82tjGmXe%#_ZjQcJ-z0+gUM|p6wEGs z%Ifd~b@#!wLC)eJs&}u6Zdc8)$cE<2YCfeHi_RCgLgfSKKz&tTfRWFgoeiwjY6X<* z%#}R_agFXlFgDoRSRT00!8|K!qhdQ2&P$y$XELLXm_bVc z(OoolT_UAx=#M^yYnVZ5Pe;hrz`|{`ju78Y>W@AFl@w)`ci=BT=|o3`dq)NymQ_%U z?H6DMy(|BM2U7HAR&c~AY~*9@n-o$Zep4x6;BTS}_Fb6#hv)(UkcgOsz6n)8JY#-6 zB4OX`_0Emp|0MJUh+fsG6a-%7jdX9G!UwKl;rQXbd)XG@D+|SdmVAr901sPV0Cd?eOCG`JRvw0k;AWE4o#~ZK zfhy(5Q#us21iq$UnB)adRF(7e*zy9`32efGvMdXDn`Nj(?~8Wrvg!}yY2J&aZ2k37m414psWOk@Da(8Shgi7jlL+X5G7o?4%Ui@ph_4W zfTq0$ChbW0Q>}cx1rEdWlD=rs0@R#U&2h5Bm4&`g9@kHT;t!Ii#UP!{DwzpheS){h z&FkM8&>N<-fcjIe2mSOVJ)sw0YBFSHVt3Wgn_yI}ZktAWhbuvT!EUnSO?3+BS)VV! zEl4z-^D-X`dq9TM?Zn;~&VCFFo^uW+>-{GZaI1Bd+}0-p=9G^p^tg`5Xvn;o(-L^@!OYU0Kgag|)%$SpHdeus6b{FTiRtIdnBVC)*%)!g9U(XL>&in+i;&AzAT98ii4}Z% z7-(wf@)<;}K$Xs$6bW!_hn|1(QmEXVMVz_QPI7bn4m*HeTUUHZ_YLAf?BL_c9jYoc%w7go~Fu5nZqpv93?&- zrxRitGFis~RohxESm;C8@i_9E3Mw}B0LZQ*{p}ivxr-N0bl}OUG2z}-bqR}Z^bzEAWlAy%=6d` zXAXPPAS+!_nnC}vVk-{kfl8bTcZMB)i6Lp9b1wr~DnyLJ4_yvUhV znt2)S*uXe&N^q#hZmUxQl{*O6-_pqfWywV{61L17>9$I4^E(Ikbwe`MmK!-;!f3nn zR#vQScWwNRM(Cnf^XHOD%=F6S-}|8&0!*K*-tzqq1lBuId0RN!s}XstI(ic%P$bu} zGrbyKkr2HfqIyJEP+o!T$pYV`v0bl^zHs<8;%IW~rHgYxm(EcHKOKzeSrgS9}%nE|0;Y)CUCk;c}pP`ek#? zOa!lTKYYT@3$5#Eb+nKaX>hlG*&1e#Fd5nS$>cE6Uw|3atEWS5nur%~nnnXbsP^6&Q8tGJBj)gJy`s1kB*$aUs zne)-P&?L3L&`nP?^_JKT<2(hl`YS0eW$}rI|2`H+&z#oILOi+o?~T>{_LRJT68A6D==oOD7n|MjU7?wQ(;e9l?dlOjMquyCxY-#(O*2>krH-=rN8!Wnr>6LDh7xF~p2z zjaN!wvA}lHh3GH-JM5u8g^zx_WE-6x^$`W^-o(#*hR}=yxrxbVOIVkkvLVJ*;zp>_ z^3xDX7p`4RA+aKKU0YJg)ciK_T_|HSl^L{7#R=?9i&2`6C^&l>+Nx(MBSM23HdD-s zv$~a*N57z9n@P=yKYJtg+Nw}0toO>xMuUZDx@2oMm=N0VEtn|7#RrQ{={+AxMrplj zCQj$Uz%IZn35wJ(56O7iZXGv(^kcG5?*ewSB4f3yut}3?2NZd*0vpa^&Dm=7Mhlp@ z*kl!x*HFcnFn3;;L|QAw%I{#KkF!7jHaQH}4nSe%D!{^n2~q}>@%R85gV01}W_f@% zfQ+_q7zN?&oIejc;^Fw<{hR`v4BC1h7I$&#(2P(u-g@u_Km$4sf{)rhVgz9rq!%!I z?leSev-8$tZ0TFCJD(Uqv=PS?Kpw}hr|TO8^-l?4b2Q{H@)V(M=XPVOS$v=3ab@Aa zNdK&}Xvit(w^V;nAla-1r4k*tpFr7sWwc^ZxtSPMJ7Je%+(ekDF7I``4V^d9G?%rQn2%PV-)XNCNX#;x^-Bo zWuHpnv^LK3xCR*qsj@q?pvAKs?2?0Oi(D3^iN@~s1Zkxn%NcHjTiH6f%<(B8?Zz`BE)G`jupIWzZq%6M zr1_XOdaq1RA~o!s|5l~OE~i}l)|-)J4$nPRP;8n(l_WTTS1$He_wDCS{_He`t^xzC zEmpYhhF3EhB$ArT2}D4>_6xW13FFs*B-9oew9EKTJg2ACb^9%hr11MKv{Lp6oPq+Y z*%4S+b~b*Z;0#o3KPT_^Tv{UH=IPzhX5KfKM)hKCFzOvrcwqRw3UZ<#62rmdNTk8^ zvJrS#1Rc}84|MVgtT(54e4gZ9H>quEIfCIhE9|%W_`IK94};yNeG)=L!y|lpzPj9> z9s7N=pMSeE0U+N53Gwa^B5@dKZv-Y$beH%ixcJ@brr6Nj^ zZ}}h6dMR9cIb2{`iK|*c24BvYwpWyY)?wV4WHb<=1SpP3K9B>86@%%Dk9 z5g}T|Lz(SNj)i8>8*u`LZ}}8y0T?345N?n_Jl^dSc?vEdR;cu!^&y2pDdi_=4Ppio zhKmK$%Fajk{L2sjse&Tj-jiDapsI34+Ah6v_F~4t@WLq?%!6Audd;mAlcQ34`NGY*Gg21p=R1ajSY$&ady$Q)sM?`3O;TRia-XV2?agomk z0>cKGF^7jt99n0U6c5B_``q*4X|i*mg`gBs(BL#Mu#n@t!&kN|O_@2ztYZ$MQS#5P z6~(q~Emo_|owZPRA|wYAt|)**!n!ykMG989XY0<3F~<<*AI;F_nf;2!;CZk1HT}N9 zk|2HW^Z$(&2#E=iNQjV8@Lyh>|1a8qilm5_+dldLGI##qXNJCehTcqXcXj?E-n6jr zGVM!7J?9v)0SBwHd-8QiQiR*ER`KcA_yA7Kf= zMeJ)cZ&1H01FC7xx9<&{o#Xbrpm3X4uu5JIhwyqtMuHP%?u#6|V4W6!>i*ISn3LG+ z@4II^-Z&qzCxeBWThv9jQ7n+R`$fU-nX7cIS(a!ZTpVP|BPE}nNg#852Sbs6%mMx! z9COkn0g5Pz=6=6jK;>L;`i+?q@q25(69K?LpupdK$p7R4kO2Ra2SEHz1Q1^L&F=h9 z{q!67M-lEBVlf3rm5Ht(u#40)v%D(o+Ps)AW836vnMb@YRa_gm7lj=d1_UaEp8X@VTv$O1<0M#>}&m zt7RB-*y8m1Ji~Josd?lJfDj+P-WU0a^3F3faU3y_ccE&~FG`Fd3Hh$CJ}%2}1S1)Z zYt~6G*cy0AfppaVu20(K@}h+EAoc}F=oc;e0*FTYWB=v^Ehzf}Jk`U9*+Y!=eMc1^9IN6TJv_6Ev%$D;f;(Faf9Q*gd*1!~f6d3^|nogcf|-%oEV1DfdiFeajp z6WPkGQVp+nqhQ^63c*q@7k}Fa#G`=)Rh>`Gk$*bxL1OYIQ_v1p1k5QNF(?veQV+94 zqk<%1<$nP$v3hF$?6fm5_j&0`=RfDubx(^xL3 zQEtEjH%C`hJ)u>=7Qumigchrr9g`%tIP?f`l0QhVTif3%(*wV(DT%c+u$>B&qrU8? z0f_|Gpcnes9Q=kOkE8pZ+9f-|PM$&9$S&(`1a)y>HYsi4?K;*(?Y+P&tEJ8u#(mWY z7DT*KZJ&og^<+GPDRgt-LHK4{OQhf2#80t;^6`K~U8ZETY^Ob0%$P9Ln1+5B)1E|D zF#Hv&BXUD=PG8*`WyW4sko?~_nPaXP9P@MY$ST{x-qmgTf=&+pBP3PSTc5iZDHOjr z+sx94=6y`S2ZemS&)l)%29f$GFtY%J)`?wq;L3t^c8VojB}T01PEP@+lZgoHKobap zm0>HiNj9Rp8xa@n>eOs>KhNWlxT@$t*kSwA$t?CngX6gi+Y61<2 zu)yapz!sF@2BCZ0Ll^>41WKN2X%t=tBQg=k7Cj~>o3M?8T_F-ZCnhVjZqg_7fd{am zu0UsHNp+!CX;rOvNKzOWzY@|M+#65(^;1GKIv!58Q-X3tFYe{m8L7t86CO-VhkHg- zVKdNyNT(ZvGxC5tp?ZgM2RHU8J|I6MNyjO0R~d!(B3E=oSPTlH5wvdm2m)LJMi7YMUE-bIT9aR<0NyCEKTTwdXNo}CwAIPQkE??JucaDpE(`lC&Kn7} zd^Df&;tLXwxr>#N5{Czx^Q!Ki9w%#?fEpp7f+HNv@7*3NFTbXFSO@Bg zRn-tb^pnZ;3eK5XW!}!+1e<)rt2YJUw0DMtZ`C;V3yyqngHd>t7?1z<9*N_KJ#7cn zp1pRCj5FLE1+n|jdXkLSwPRoepsGPTgqU!WNOIQSFg zF|ru0%g*&41+?!C2)jJh&o>blV<^|Q^&x{>&FK7O3XOe6gqkDbUEjf~I;MQW+_-Dc zfvV@=+vZ~tBZWgLR+@DmcZ@s5`~r|nAN!VVBxd+q7jHr08Wcn$SxrswvU0m!;oW{v zoKoYqkLQx%e=<>b!we0faCGTYC+*|2r2to&X60GvSr5-(b*pdnT3rG9NSZ;PdBeBg z`ofuTz=`2!9;~|jW9qgM{kLaxz5wFtC!J@6xsVNlvFVz!P*c48?D89WduQ15l+q}Q zKy5Oe@3Tlx7%+EnbF2tsrF(4JZ13QoRWSl~A#S4ilBn+uk&k7PC`LEon;avWXf7`J z*Z9JM5TtZEG*^h&M`-IbytH0D(;&UTa46*Mru!rJ@t^`bF%3D^;XO6(z7@KtH*1YR z<4WhNO)W9m~(EiH>=Ku7Y3+xW8 zdfbKDR)ux}F)=Wpv?FBy?YB9Z#vDTN13>m%?~!cZk4XM~tt~_o&Pi8dEFiPD(CL znv73Gz!hIR1R|Rk`FtD(JpFL2=>%6{#DE0vzC`VVQ=4l4*s;SsgB%@o=X<0%18nz2 zeLJ8^IR21O|HQb>M_gxR<~f5O6qs688cJ{mJ7L?9OuwoW7W72>Mu3e`OxA3NC%kAfG$9;U1wif(&2;d@Px{zekg((HezsU__hWcmei)wYw@_pZF{XObu zGYW*PeY|jrlqPQj#`DMg4*M8ST-S>6!2pFrnOigUUY)voScvl;cLb=RgP=Z8g>CKu zXR%)iL4p1FxcZL)v!Zl5nzo^Cn9x;IqJ9YD9Phh-XMg3Jb1Mu!-R^+eG`*(z+QQUu zqT1sb)ix4C^-#N>J7C$5tx(%WcQ>4^WEcp}QImWD+@r~G5$z6#fqh}oKZQyBNi)Tj z<=eTmxoIHGm4QHaRvc_mEM#EZwmuwE@9pLDl{)uDBoRbH(bwT=qV?gmjisg7Ld@CU z#^Nx9qcDdzT#ks_W$Z$3A?G^!<6Ho*LkRG$Vr>*AcAhz`4VZCZcppX~aqE5^Kp-}F^IrDF#vrYI z>htHop=#Um=3H51HDrZWhQHnLAt8*UY6H{b8WxZB_jd$M(q}GlfD>9aRy<6jiC<@k z?M%WSrlyx8$v@3~3S8S3NiM3;8@LN*VIjha{h855_LCLB*aZv zw_f8KQO%5@p0{ojp3e|)9y|e2^Xly$Jfl*e=uJ^N;jMJ`Oi_?##Tr1!O(FlX(l*0& z=|75-Ou0G=QKOeE-{02MR0iOW2fh!a`7)6mZtU&pGUX@p%k=m%(;6tq1?rpe`Ab#~ zPEJ(nKq9zEn+*x zg;-6m4hYnZgRnRNH{}n%#!hin>j)S5`0GWHZGg1golWnpzC-9sP5Nw8bLwT}PV9d0 zU_6Ja-{2MKR(n9edCL}i?%VleUSnx4lxN6LJQxGdLqEYHTsuCs4UpI|WT62jnozFq zHz5b~lOBIyuqBT@dxp^$x$mqnSv>cJca>T(#Gxuo{5Nbjy#|o)fj;QGnOf;Tl|2~0 z0E(aW(hTR}m|0Sp{8?D-f{Jn%CekBq%p)jLEzxd-dQ=h z?6K`#mIGmJf0#IDfznzocTxe6qrBUN*jyCj(72qhj$v9{B;{1T`ps_vYTJv$x2Sbsyi z3$#&p-Dlfc0SCqF+iYFAWemJ@e4E31F%%PNa_e0ewp2cu;>>=o9(zsN^V)v_)_Bi>b4C z^Uk>mX;c&f?gdVYVdCZrl(@aV2mGxj7#wI`ydpRx+DmN05R~JJ@JF7^OWjk0FKNts zY^7bm;RO9`V66zM9JygUK5FdL?-PeY%&f(X86~;yn}fgI8xtFVnErm8b5^y1P4H3m zdJg=YW9IQSzCb7i7ycVhS&6tk(`b7e?0JKWj6eW z$Uw~NXx@39Q%C^P&cZ0=@(ho?k)Q|o3zmR>=m4$1Dgr~Iwh?L0<$6(Cv~Abb9`JI^ zkDW7G7No?^6mV*LhPT?zt-dF0JeV`!K~aUjxH7-qyQ3;U`Rfbyt?z2Vvh9v_*Hm+9^y@=adH#AVyT8Cieo#w)>$+ROIa`D}y6UAT{_)Ch03 z2X0}e@38uEbgcav8gSMp3$^5Uh#U@X2qZ9+e@Mp1N`N!NK;=H@UlaPBS_oHh4ZZhM zE&9|G#j=7Qo++SAp@K)n#)00GL8ycqK@l=$UWusXb=AiC0sVQH( zCId&9ul>n&GhENb8_$7CT|3p379#q+sSlVcc{ z3QlIVXc_iBB>nPlv^Ac$;!u-M0ic1KH8p}HXRMrkQYLt&0pSqYIDTC1!GCak@ibzA z6OM5G_TV_tO7Wz1#m4ggd;!!~sGz}10I-elN7n00X~Nk@y7Z(}cU772D(6t{*cnHh zzH7s5G_xw)a2~L!USOG>`hO7KD(+E# z8FbH1{TL#qWwxs&oh>eN2b{u;eeVjsJn|ndf#r%xHAEimhgphs&|X}l zhAN;u@O5Qg_#DAt5{O4<&>Q3rd+?L!oqVZhH%a!~kLqvsEt0@BA$Jck*hTQ0JXfFg zs52_%PksbTOdzPB*O{MD2Hd!(-$hl-HsYW?&AyTsvSBj_oK?_w3=k`+TWsIay(CIG zh=+)^Yvec3Ud1I6kRuLv=+4qqm|bO;nlC_}&(50xyslnUXQ#)MH$}MCv0%QzQ~2f} z59m2+Z6l}eeiD&wpZS&99t~^uPUxR-@7?)%8C3LVy(>sYXmI)Gi;S0;qa{)`jRi7c z!Of)pDS4;(Q5P2`awB3&iQUb|G%H0coIE**tRiZXGdx+Yn*?)qpzI2)cH0K|ndsKo6B1Fd?2=L>79+c56tEM^ITq|lQ_0H`?TudG7p(=UK>#ID97R+Gs$<#p$SX(2Rq|JZ_f$Ii;)gpqE$G!R%bLt?j)aWV zw;(Ma>BJ+)SYG_bk{A#>Df>7=~XU*V}*$Q3PC|Xh?iLTkb=GObze8Oxf}YZf7w1 zYHmxwac(-Y4np#*OQoIURdL#hrQ}|Am`#aFH$gH-G%d<~XZ?dxy=(XDgo-(#eaV1* z$(~$H4T#?=_jb|S)n^;Uvg<;dOyuZoC7*U5pMD}wNaOhCO;2-2eyC(rbIlF&!}JYg z_MT7nt8NOP#_-sViMji!0)nbhr2sYCohke|(TX!uS(Y{x3r8 z?&l){sB$!~PtKv`Lg#M-0BWbRdYT6nJYM+gjv!2r_1@J`LcUVE$Ku4=HT*|5qbT>! z?(3PUvh~}}>eAzgzx#nD*xyzC3Ec}IHIWz72#jEv4*SMp9N_;IfB=90UJjo)D2#ye zab52&Gtr~tY|1LlC3$qN6y<{+kRWlh?GwH5Jo_zahKj7 zwtj{Uz=a#w>l7H#$IaU$)_@Q{K*{Zhf0zH+ce5kn literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/c/Accessories-large.jpg b/install-new/fixtures/apple/img/c/Accessories-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..33f929178b97f2bddea3f5e636fa6dabe2f77cfb GIT binary patch literal 10597 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 D@*$Kp literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/c/Accessories-medium.jpg b/install-new/fixtures/apple/img/c/Accessories-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..45e6dc0b53d91b3c67e80c3469796b272a1b5408 GIT binary patch literal 1828 zcmb7EeKb^Q7{7OBZez?0_l}tclbAu@u|vzQ6{eC5mG8313boEgOSNpfGiS5aNo0v4 zwvTD7P>m2)kC*H= zD1Wp2W(bBM2nG+N`5oE_;c+AF!I~z> z7^FI9&<6u)Aus{>nE!Er6F3;J>4qqH7{Z}=6mT3#1G`2EQd!F~m8E>;RW&>vZ?&be zxJubrkwKS7d5^5hSL@CsXYD_$Gt``~%)Wd;E^K;Ddt0v(7SwqhcKxh%ERE*u)O8Kq zg9kx5C@eF_r%D_W3Xg0hItCpHJ3=nuxpuT`y~o{n%huj`snsQ^TlU|JH|L0B*t?4V{`+TRp_ z%Ng#I9<>?}BzStnv2LAIW-Bz%0`edJS~v!q;n*mLJ4YU;Mcz)dS1xVYa=%PT3I&)? zQ3wYi5P?J@&4+_=5T1b14A>klg3`@D=6RX^#2!g3kv*NS<|1dD zdbCa2lbjS)+hEx)%LznU&+yOH4E4vmXYPdQ7F;l0D95tqqYK^J?e&O|ShGJM~65VQ@6_Zp3fy z$eWT$~zHVtQS zl?P5*rEI>EH5=P132&usYRr&(-kovc`r4)XHs5{ueMjf$$gwx%nF|h4{68&*>Z>Pg z9bBbMzfLCCb27m8ZAMWCvD7x7ww1RsYsDJop2^-9hJKFgGR2aR^-iL9$^>eVw^P+^ z>%{5u>3(0C?=Oz&Q(haKGI&0T4UxsMUEz6_-`Se5t>qWT7|O3xE;YxnXgVJ~9&gAL z?F>8@nbzdC`n>n5xc(gs;={QXTB1N9uvYI2{f8lp&Ec2xO9o_or={< zBxJp*^>;pzPn_c|bMw0L2RrXim)Rs1vta3|vOBL_zM77_YC+Je_O#-CRUVnDN?j~2 zyoYZowUDheS<%2w32rQZ|HTAFWW;(>m}41pTGea*Q@x4AZ;6|QBHXg3$=~&zp~{xp z(SI^^-y?ft2Rspf(=Q5HzM@m;UW+4ji#8y+HMJ+`iMuSTt7`&xpZUCo?_3`Co;b8? z$jsWIf|XI7xx-+V-+HB#VS7P4+4DaRNULo0)o+fk+MJ#S)cwv1wt3Z~{hS+pP&c5O z`56YUxw@fdJny-3X+?vMvBOXWtwhK--L{JSFs6C`<$~()Df-oxY*FP{dv(*X2hT#JDhrY6^I<_%8K*hd zz&hK#5KS|K-i%WY4p4`Uj|oNs*4?l-5ARTT5C^0`8u?u>zTuG57i-~oJagarQ`GUG zU_KHkKxX%*AJ$LGC2S(>yOPhoFyS7@Ur0j+c8K&9m{+KuYHGl!tvi1&1p<)C$Ko!(`-LonHv6 z`H}dfq{+)4!(Qwm?bv&d?&=~>%Z)#sXjX!{t()B+f^PBkH1zwF(oNqGI`tlmfc!7M CU%9pb literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/c/Accessories-small.jpg b/install-new/fixtures/apple/img/c/Accessories-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..981e037f0d768ccffedc6c03531852a3cac902df GIT binary patch literal 1176 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/c/Laptops-large.jpg b/install-new/fixtures/apple/img/c/Laptops-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f752acee91e7baff3d56e909fe9f5cbcef2b39ce GIT binary patch literal 7716 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 UErrWC6k8co!~Rs4?{60V3)OjlI{*Lx literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/c/Laptops-medium.jpg b/install-new/fixtures/apple/img/c/Laptops-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..945480537ce797e6db3f77ed2f0ed613e2e5c110 GIT binary patch literal 1683 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/c/iPods-large.jpg b/install-new/fixtures/apple/img/c/iPods-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3d3d24dd90da3bf4c64996395ea3d44784651d6f GIT binary patch literal 15694 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/c/iPods-medium.jpg b/install-new/fixtures/apple/img/c/iPods-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c9692889a042e174cc092fefb846792d6fda19f1 GIT binary patch literal 2560 zcmb7Fc|4SB8-Cx}3^SO)AWIpOq>&n16Jr_M(BW7jOZKuJNwQ{(vSp8i&KV|$Vq{IH zh$PCsWSt15)TwjImo1U`-qCTszrXu^e!us9?&tU3&vif7{aiP9k~;_Bj+vO503Zke zAoKv-DZmhb!(hAt83GzeG!ltGAO-mNP-v_G7K;(UU<8FkaDqa3Aq)m5j>C(J5eNjV zu!N+zn52jpL5vp!ghT%zko-s_znCCKQ0)IUZaaWS16F_)9FzxOco2>UxgCHE1QG@Z zd3bjW#Roxze9)>CR! zM0t;j>Gw0`NoT)y8cSu?1X^96)&4778N25~$jW`u+5Dr|OhTA~*mvWy3jG@AwGsq} z9h!Bo)ThoqqOt!XpX`q=(uI%hNwvLu)@PGdR=bM>Z2=*Y$87@w5&xosBS07u1@PfT z#6$`D8W1uxgc?M`wroO|lg>)#?S6e#v||IoNb?VZ476I*p=T(QEv*EDsyTZc|R0NU`NgQ zS8*N~TeteCe7dg@yC_Ww`+XjOic!Y>3k%E+?Tc4{FQ?>Dk zXAN&32E?u&_)_L3soB2Qjd@H&M5 zX|-T{V%5bL)Y%o>?SDjQ{L~lY5^%3G!O`+W%Zn>Vk9n#p2o1Hz9YPZBQLii}{L1ts zEmSdH$x&mRZLK{fW}_g8d+-1ZDtQ3@4?w6&U;rL2B1fdi(+#$9!Fae{H*J-h$2;YP z3b88n%z>1!6qPysm}E}&asEVKTVX5e9-EEKup<)ly--kfh{k+(b& zM^dF*i=B(tH?YYWe(n)`o^`Ws@t<-)>A^OXbBvSx>ZQ-bJ#VU26&_q2Rz%9dC)le) z1zmL;NwgCUM=nJdK6|}dp;+ijB}w>@-k@fkh^KPg1swWj+P8|2X&tH*^Y#>mv7WqQ z712q^(ZHOSnSDw0YS8-3H%1F%@xDf+#`W@vsSCaf^kSp5r9T}CCtJOqi!U!%lxr3F zUFi#Jh?yZbo-V$V{Z=Lrp5-s7Rb`(p7R_M{)VdZHeK&R=Ph)KtC z+JqnZDXBld{c!jf%vPwVzM0acpn0VwFaOYv4t-O%PTCD7xna_6;Nj-8V54bTzWV(D zO>qiVKQfV?lA*qm$cg*>o5e^}SLuc=0`tOa>H}GNue+-z0>1gtVKFVw%e(jQi0+%? zJ+44U3>p62jth9!tM&$Ld>+2a9O^EV_O@#wc{Zys3S$?uibkVpm8D)*$^PC$ef5qP zTj%{R?vv#_S!loret`t&L!9s zhqFxob6RG7I!AGD|IT;HU(iE;m9Tx55?}RXL7`3AihVT3?Ux%Sx68VyVgJ!6@jYT* zqt|x5;r5EB)c1(g%8VOTTp*lUAT(V`=2WGZE|0bKiD$~^)lxI4B?y@hnUR^hV%;5J zOD+m^UXP?{W{B}x`ZI-LMFTFzZ^z)hIdlLr;|C zMqXOM{%;vHG*+xzSY;+9bEU(Ysc1@l#ZHr(urg_{xA@Cn%DtYjsVZf`QFDKJNVW!6r|Bl{!UPsvx8 zw&|7b=NfU!T+h)2?ki{bCY^mCk)5bYSOgzD^~NPoi)U;$Uf88h zV;qUZpE~Acj)|On^prt9z^sAL?B=0?8pjS6UWdjLVM^AIf1Q^TK_deEIgLJySV1#u11MHK`iUo(3)R&kGTsOe9^9yRZ%eX8g9zVA8FPO zzFifna-jYr%(s)ywDy#}h}x)O9A+e1JWv?nTa;YM>bo`U(EZjz_s!vWlkg$*zUI}n z{XP}x$dubhB(Z|y74KkNAg$_jK3}7PQdRZZo#It@f_&b{>L*HYshfdH3wk|18u*j+ zepkJ~=4*BR+H#vMnG1t7<&^Y|{FwQ`-zk?VR4-$JciOu5Eq}I!>#VD2m&$9STGw)o z4o_Z<^|sQ@d?Ocxvpad2{ z-9IUk)Iry5u$YVL>_5^%p7@6KlO8%O;2TmKIH1+>O9auT#}Xd*u$sU48d2-urdLJ+ zA_oRDj)+R=@;j>Nj!LMVEr@UiQ2X?gtKpwjZanEJbIcXfF?J5R94+K7%GZ4n%|GSb cZ$yjM)LSA3$0c^XmP`Fe>VkiH)XC-i7bS%IO#lD@ literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/c/iPods-small.jpg b/install-new/fixtures/apple/img/c/iPods-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..76c7df8e783f2e4dd8483f9eff0fd4f74a54df71 GIT binary patch literal 1380 zcmex=``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vTox{#0Q&N)$F}wFrX@yoZ0brSJibj>zsd*%Eo`(9x#F=WbmO(Rn)cN<@U}eY-21n>NUJHnnx_eR_CZ_B5{_ zKV@Fa{FM980JK?AkO3HcjI0Qc0A0__A}D02pi(&T;0LhfK!@2g^6YK>HqXFf%ERVv zuN=V{vunTqKDEx`d{5PmFRS>2mEGEQ)C0|v5(Mc-_yZKzf=oh+3SfhnKnATcOLg42 zVsh}31Fs(gb?5;7&dAIR3|E*V7@3$EfG$up6jl;ZNW91@YUCJL*tl>b#4(HvZ1zl_ zoiDmhd{QfWl_lu5Q(J=9o0il4~FMhpEjzqL=hgrRgs zMu__4+iyLqg;*P9CT%J*zx~U!qIjEw{8@`hx206ya(@?nv@gE+u~n^|Tc2Uj^zC`? z%6W_03f*RXH+gmE<3ATf=Qz#Wwen?ak-SHP zU*u7v;#gh1cI)$!@8qv8G_UVmet;`zuO4^G5@q9git`^b7wvmIy-xJ$ErmBzLcQ0Q+|=_npTS88m^fLOkkSyNAcLY|pktvzV&g<;tbvk{ zz=R2T#;;E(w(I7cbFc$b}5jB(3>!ta6%glFcxECIuRKBzS+uEHOAzKT~?n)hGuqrH`dGF)G zDFtm>Q7)_F4g~UjdXf}8VU_p``=a=5-i#-?_gl2Snc?ns-24Q;^BxJVWQ=0>^?^SQPCS739np~T3Q#B%V@><kzjoa=lko29|7XLs4> RWXAstVlocDZ&%rEo4_ufChwZ7_F-F?m}@4cT> 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

eCGjA#!vUPD!y=tMgx$8_OXs_jr+hkcdtGe&J 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 VFKI>yz^{a7K?39PQN$RZ|Jg5)IavSz literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/m/Apple_Computer_Inc-large.jpg b/install-new/fixtures/apple/img/m/Apple_Computer_Inc-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6000b1be53bb2dabd664cf01121c8441dac63550 GIT binary patch literal 4108 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 D7v8zJ literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/m/Apple_Computer_Inc-medium.jpg b/install-new/fixtures/apple/img/m/Apple_Computer_Inc-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..373c85b7949a8c3509bd22a2c2d621f6261b38af GIT binary patch literal 2056 zcmb7Ec~nz(7Je^#NPzbOVGWoVpdf~wK`EH97=(bbyMVH_fEdKEl}#ZLDb$KYpo1tB zC?Jc1$fBY`5wOBRCyF42itJ_I1a-;)eK0zm`E&03o%1{I-1B|s-tW7=yVmY$a4wit$VlY@KJRV0NOOeSWDH2Iqh5|{;z%nEfqyWKk z@>D97EUT!bAg@G`r^;`UfM^7R!4k1pqP#RoTK@lz&Bp*t0Gt75G`JH$!5|t2H`@Rj z0HDwy62Rv`;Q$O4j|K@yRtW@<Y{{!eqmdA!?k{-N)t_Og$Ry*AIT30x{UR#3lG;?ZEYOquA{ z+S_|7E$ns3Tuc0nv*?YYMaDpoW5nnnkzBujKBu|ZH^_XlF7tX%6Z??g?rNke4F~`+ zh#p7@p8^e{FjxQwQ4s0qR0ReTsgQsa4q{QOc@}5B#ZA`Uh_6`bIN){EJZ{%Fmi+nA zUjH`(;&c5qHQl-s@_&yG;9DMh4_Db~y^g+AR#le#lfPJw=H71Xb=k~2YtXk$O7tK! z_~2O62d>T%FI^A1&r{Q6pZ&^||5mpuBK-I1-)Uzy0h6|5?m~rstVhPRjxzGn5}3bl zj|O^*HuJFNQ-q?4b$Zw&oi?=fV&dKuvF+ziH zRr~Td?P&TXCyL%a?flE#xAPb6Xn~@oeNd*=@HD<>&jyNcq?Kn(g^#p45Uiz9a zIkWb*P%*OP!T_C}-Sncl*QKw2M??J^zbuuwOz>}^JAy*d^qFQ!^4(&7$}@Akm&ZzC z2BEBXuJ~fRi9>?J7{l|TRlk?|prCbWswzp=iJLG*ri(O;%vYSQH6HKZ5v=m=J8OlC zk{Wh`is1&QoDDk+3$g{|+iq#~Cm@446*EsGgFD6EULp6YGJA_@saZO;_OxAx_c?ov zx-W+2u9c7X>fNe$jPZA^cHG!m=BzH@W+g0W`E-r=qzd2+h@y>C?XFrE)F}%G zSaH|QuBM1my^E$>(Wf=_)odhJNP!8fNjG2c^1RF2>=@1UPfwpT>A`+uAhRfU>cr&v zX*e0Lg-dfKb{E|W|0grHStDXLIT$kF##9=;$(mN~<;fis`f3&_5a{qjO3I{^3c#|_ zHj0LXUNcN|a3IyMH+vp)UZ+{@`m6KR!Rlok{(%i1S-LbfH!?Dz#W%LF&stwjzfRC8 zt2|F$|M^IJp#n}`okcuJB3;j~?bcI4iX>erV0Az#gu1*11-QcS0lxPE5lpc>%WG6YvvJ!w>8~*E0D{n zyb~d-U+%mrd96r=F(=8^gCU{=F*%F9yS?3oh;R+^Wz@N05O+f{xq)x5#CxAL4*M7h( zRASJbf71=(!7;YOoaGkg6%}SFE0Be+{_%^xpC>H19U9Sl=E4j-)-WI2!v6SWRY-hE zm(?2jLQGI$efx@AgRAeEe5XBcjnlX(BW4usQ5I%2T=y6woXZ8TeKpLI(dW0kyq8K; z#(vMM(zhK)(2K|@4yBhN`zv)NevrOHJOUY9Y4z)K~ zaPCdEx^%10*}uA(=vsGm+ES??hch$H==hj(qAWS~OzjQE%!Xo|1mIMTYHd77j%=Cq z_6aX}E+$?ao4soBWEZ_>)Tn0~r_iTkR#`pw!^fl8&>y4Dx|^yQM;JeR8f$4DpI%oX z9eY<&wLE$6N>iByniv=-Nld>TkuLl|i2p}$BdUMEOEBoJ=Eo;X4i%W#*hc-qSRb)_ oZWW|s556}{d@d`FhmXki)4HnB%U#`^&RgT-*<40Z;^wb^0<0VTLjV8( literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/m/Apple_Computer_Inc-small.jpg b/install-new/fixtures/apple/img/m/Apple_Computer_Inc-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d3fb7f964199a7671100d60ecfe2c3c1eb7ddb0b GIT binary patch literal 1236 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�z{qOt#$_zqLiBxbV-srdW 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air-home.jpg b/install-new/fixtures/apple/img/p/MacBook_Air-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5af00dd93c018eda426b33c379a360c43fcecd67 GIT binary patch literal 3535 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 YKgCP~@|hdq6Mlm?JO;hK+&LWoA4;>ozW@LL literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air-large.jpg b/install-new/fixtures/apple/img/p/MacBook_Air-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f1c9a858d189d6b2d5ac2be8448c014cc3e58ddd GIT binary patch literal 11546 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air-medium.jpg b/install-new/fixtures/apple/img/p/MacBook_Air-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8ac000dbeb1e0240d6bcae9312e8a7e7d022acb4 GIT binary patch literal 2043 zcmb7Ec{r4N8-Cw+X3SuQccwAaVKRKjKAN#qQkLw}VK_&JX|aY+*@-I&mE}WB!V!t= zYmLHDjxAYI`UsUJYZ%$Hw8{5Q=St__?|FZJyw~-+e)n@f_w(G()~l^i05&%^GX_8q z06^pewgv$M00lw(g9I8m7#s$JMq`AqSOFYf2#*&Q5*8+ikYIucQAAi6rohAE>HCSH%l%# z!Fn@bI;-P`YvyGOaSOAA)}?PrMG+SAND={r5{TL60YZq50;C-jERn1)28+uu^bk%s zqz(`RZJxeuI;=OW_vTCpL6n}9Zc+5LrbnDqTemQ*A79<~Li-(NZ$^3-wk#jcx$76u zH0R=4!Yz_H6w>NjQbn)&?I*#^uE@s@^jL#ePh2GJ`zu?ABv+e#S>{TNt(fQ{8ly6KV5La)o<*&!-u>$!>gWyS#&tV6I*meGwo>Z zyAA|~hQRR0Z(Bh=3=u`5p7oG|V?5T6VYO`;`ZcF4#wHCW@Yw3@p9VJF`R&NZ@iTWF&v`O`OJv$cdlh~c8FwF1cQ`$=1 zq8)+QNEM%*l;>@+=3WB_S*zAQ*Qh+6HT3Ucr4ue24P_d^%d#!I*pPC4oR$eNe>P@U zi~6vSQK7Uz*S-5NH^An^@Sd3^!>E^GJ;nMxU{ce)hD(-cTV~ap4@5n8o|@6CI-7T< zwk~r6@jSnU=+6tk9jfh`OMSgz$1+`T*#ZsD1X|M|v#RXgD=|Hsx5=RE1XXU=iRTiGXB^<3&jTuaCtGds+-FFn^e zQOyjrDW8Znr~X`_iXe-1I2Q9?->qnNB7rL zi24dJqBi2bA4UKHB8{mJvm7HhzB$}(X@*|Y((-pB=+ZXTRHBbXG(0u0FS9&FlD!iR zHq2lyVgjf}>GE|F>spCJT6Z%?e3jno`nr<#)eMy&sReg=t3<5^nQRb@ z3HCfLGwP#UakC_0NZC%}U}sa*+E=nrM!z!YbTo&4zdZ90iT5%{$kCvC^tRXPD5px4 zdD~{p_US@smTYLhuebauURtW2XOP{(>REA%EGhA5v!v>k`M_5CJgdWpYT!+Hp(LA< zcuj5S^U5YxVVCBoiR_KWN19%Lc3uFiZf3bCdo0Gkz5U{ip;h0kgQwzsN|3cKK})`k z!e&Xu=-@I+{B^SA?$wl*er|C(9!aTD9$9ZdWcaqD0RE`L@8dPbTQVxHc6U6$O++&8 zKEnGWitZ-z6-E8nD*#BO0Wfn(nxW5%*!C7YtFi|luOPNd9q-DJtDT^>WGr6X?;1kA zBJ~_Wk>sNwOZ1=KLiz$rGyb+G-&XLfyR55WjG(DPLFR#--cAlfo2j`cZy~Sczjt+e z3vYMTH;2>Iy~K#%j{RsV{KYN#28n)ad4wsNKXo8tapkDkxsRtWpZ~(uCCEyK`!^aL z>1ZytYOF1Ii$5C5?)&0I6Ny1R5@!e3<$e9bS^2O1H+{-VsrG+K_a=(j6A-l|dO?GpZRH^YPs*fDLhFw)A;yuFlsjw<+6mvZbbb0@`x*MA+(CwiSNx=S zX=<@;LU}nEnmrkxO3zR%t@)*PHpb2|;VQ!A`k1-M5*4z*_mX)b+PPyGx z;ej4Gwya>-q3#*Y<_KpkmW*z*psj08J+Qfy-9~c|m|$}sV(W(<+QwCI?E5rzs(0IE zU#Q>=o+?y`;@&7&m`r#Io}9p)NE^An1-Ol-J>gy!e7=9xaS5N)8o-!7uJmiMb-sBD IvZi1E59(+UQ2+n{ literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air-small.jpg b/install-new/fixtures/apple/img/p/MacBook_Air-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6e7b475bcbac9bd9e1b1e51f2f6078049166c75f GIT binary patch literal 1222 zcmex=``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vToxC@1_d3iQ+Q7E_J0$2A9QaOjSZo z3dE!r^Um4yT<6BEO+T}3gI@z}mK6kgm5~*0FVO8w41xl}A_|6qV0(dnwP$3Qw`_7^ z?8Ro4yY>@in^n{UHOdJBos6oHfr(jAQ9wvo!4RyI38a%(?_=&I$%^$Hr#N@H+u8#) z8UX#u42*X!c9^BWP-A8h6jHpX6qv{=0Mu^c*tqDRX<_rkg_j;dJl-%6a9ix(`aq3U|Kcn0fc+v*2ze)p@*uArE2sBPyco7zB_KH8Pt6l{h&APSkY5bfFrHl7&rFO=y$!b0yJo841Wr!K~j2iZU zC0~SIS!<>5bQ159Kh*l%K(sUI{H=&pnrYXoXB!pdiV9pcSKXy-xhXR0sdu=3;IHSW z>NuHh*DicxH-$m-JpMiFQ6CndLFl+@l3bRkT%WMWZRz?u$ScFS~l0e5A zDkugf9t1lR6v+Z^EiPL+dJP54p6s0Iw70UOcj85$Rw+S7VA?}UnGB4A3<3&{kkkQ+ zV}YF?r&SebnwBVs>igpk8OOlFiH!mZ3paj%hm63^qNk^)%N#qn)$b|)mat~-j|$aW zIV0s3{M_l-^+>AuMa6-e-pt&4&2^r0zn-zk>x=l5to7A#3t2>&m{;BXq^CW{@m-Fm zjm}^B8SEOf1bItM&G`yl9g54YOf3_w?c^d!# literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air-thickbox.jpg b/install-new/fixtures/apple/img/p/MacBook_Air-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..876011964216a084c9e84499bac2066dc1c63d00 GIT binary patch literal 31270 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

~_gNQ7BL(1}S| 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 DM+?qI literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air.jpg b/install-new/fixtures/apple/img/p/MacBook_Air.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1960498eeac63b2e4c185e87e439fec659721756 GIT binary patch literal 33661 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_1-large.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_1-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..df53cf7e1b3b0851d0f6ed8c46fe3a504714c303 GIT binary patch literal 5343 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 Brl|k` literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_1-small.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_1-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a9b64a4b3d11031ded2a937570f8e917c62548b8 GIT binary patch literal 916 zcmex=``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vToxv`kSsvAqv^L=cld?i5Gf=mp00ScnBQq<)04AU(SQ*%a z4Fm**L==EVaR4n~WMz7|VdK}HoH(8So!i_RTCFS|-)fTJ&ad1ZFDvun51YK^FF)2M zhl`?Lmz<4BGZYOLe!QI@D&N-S)gxDe`4HhZQg+bmw}-}6h?ZtBS^C1H=)cYU1wA=k#;T4e^$Vs?{w z#ZA6byQ)gwY(H?^y6SAmMXPQ6nm;Uh`99rx*t&i9j{f)d;9vn-0t^UdBufPifmR9_ zEWB8_@dGSa>=oba?Ra|g9qSA(;bJ#cfjz5chW;_s>2AFKDaYlSU)Z`3!5uTIv{LSW zbM+{6QWih`?ds2N?l$I=nK2TN76k|Gx_au=y5m68!12WZvJMz!9D#>*Hsc8!P~Zs= z3Ouj^MFEgMfJp@&3ychcg^GrOiH-{u8Ygaq`$J%7(bLn@wS_in3(T-OoZfT#LYX6% z`4I!_1KJPHygIt@*Kxtc1ry&&uuo{c(6(Ud`fnY%-*;=Ty!d!g#I`HD=FF9|KCHuae79(M^xDW?}v>((`x-pXIPj7P~n?G0Nyi^!r!VX0{fK{3~N{c5}s LvgXf!hW|GKs2KQj literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_1-thickbox.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_1-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ccb830ecf02974e41733ac4fd4ac1cf4a38f2f8d GIT binary patch literal 13142 zcmd6NbzD~6vhaS$hki&AM7p~K>6Q+qyE~LpK)R(HL>ff89#W7l=|(`5mTpk;+vqv( zdG9^BO@UpqobmtKrzuVF)`3FFtD)kU|86=*cccvA{Z_{0U;qFCeA%#A_8JO0z!hj zLLi7B4-zsOGBO$g76ul<|2N!r0Ju;DZ3JyZ2o->U3qiz%+;#yEKp_zjA$Rir6Cenn zj3}s35KH(U5Wfi^w{rj{BFF?ogn>Fz&7Op6J-)%>Nz2>e$~irwLG`8iXmd_`FbvwGtn zr($;_5rp4*|Goo=_m4Y=mZ!GwyJ&XrDOSe>2Q1^^)RMq(=OLkegFU_P(mm= z6aWwcKt=%R^~B`sG#A%H`;-=zG*-R)ta@c-dI_GZL=pIma

(Sw?gBOF=>k06+(s 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_1.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4f0877bac69b713e0d02fabeed7fbd5a1e038f78 GIT binary patch literal 13867 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_2-large.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_2-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..34b5f88bc3f98b5cf7d24d4e6434c271f8c86558 GIT binary patch literal 12173 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_2-medium.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_2-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4f7565101b4fd0eb0d45d7ea0ebe1616b33545e6 GIT binary patch literal 1815 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 H?$Cb$7akYz literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_3-large.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_3-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..25b98137cd178518a50d0bcd43b49b6430f14568 GIT binary patch literal 9889 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_3-small.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_3-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b6a562e157d17aa4c1501be97be42d52f9c80e57 GIT binary patch literal 1121 zcmex=``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vTox=uTEfkaOVx=t6c5Hby3(tOO$i6Ej=_%wS|< zX8C`Mfrl9=CBQ5I)P7ZgA!x;o_e?!o9{G2g^%PwXHx}IO&c9rPS8=ZWkBDW{R-E89 zD||5@Xr7V)10xF)BMZVzCZNAq8Q9o?o;Cn_6=*UC&@qgxOkd*i{X=i7y*Frl`zYJl z)#OcfRqRa{>s>!fJDCoBVs2gk?N3pOyI8;~`{PqL#Z`AF?40ytg-z+1zZLN;=cV*? z3S%OYb_gD@l?PfYC&&P_24N{EZkU(_1ceNR6&%4R-H-&lJ_B`%5KXHD*>(#YSb&t+E7rOE{ zk7%|_>2LNOYd#xo3ulY|vW#7KXPL|nP%tP70KE+ajI1!1F)|1$8af6RPHYrVFi6}8 z3w?XVKb#vI&+zKr(NjC)EMT!EirsCm`=w|0{+s03AB9XRyuaRFFz|NM8KEtTmnFAu zZ#l-mky^FqTS@zrT_XP(0>l44oi}?*UiWpuu$Q&Rdw$QB`N?@@QM0IO?SBTK9pJPB z4pae#kIKd6y2U`pNeVImBLO)bGB64X7%l|62^2j7mdRb3LYgnDI=Yq412sqp0+pj^ z0Q$yI0IVJqF9NM*aSI}vqMQupWxWNeR~7&&1|>IO%7p+%K?X&`z{Enw#)%6RHXghP z_rAc+qNk^)tM|+^*csxq$x30)lS%Wix7E`it8dAm7Rxe)KC zx;Zjc-Og8Be`oLGyJO3t(EeI*b!F4OpXY1#f45k^^FM=;%cZ-n*Voj3z0B0du&_no K;!j}6-2?!V&PV(J literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_3-thickbox.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_3-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..cb56e5a6798bcf9a25ef1cdbeb132f566351f057 GIT binary patch literal 27010 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 YrFvAUQoSlvsa};TRIf_^0P^eq*^f>@UH||9 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_3.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b29f3fe55596270a9d617bfcb8569aa49bf6b910 GIT binary patch literal 29036 zcmeEt_gfRq*LPGDML>#xG!;UxQbH9`dap_7ASLu7UAlOK5~_goCOsr1)KEfG>0Kc7 zCLKbN-j$d8`&{pPJ^(_RP-J#MMs#g_@G865z&-8vvE- zAK+>lAP*oWA|kp?M11=;F$wYYPI`}+_#P?Q{rjZ%?~_rI{f8*Y9#BwHJRp1cke2r0 z!^h0b%#T_BAN^g(jl0CeWTa$|C@3B=&`{DaJpJ#)@?RMimcJ9%$N$j(yZyfsS6=~? zcW*M?{Bi3BCEzCIja!sAuG#=hfE$2Y*R8#A1Mq+8#?4zqx9CkT`WK;K{&CV9*nLvIFVgk+%W|t^ih{jK{tg4_~`Y zPUI8$sRz(){a(7k!_e3??-9)a>MHTN`SO31`oCuG_RakON=xh9ITp;!{s9c48`QQZ zyOfo@b9X=W#hY)BA;beG(GU2F&svH6Tx16X?(P$Uhu*)SDBeCH1>KJrxdNa_MNgG( zz!9fvlppdJBwB{A05?A5-0Pfph7aTz_;!6xR8U_#>wEm1E;<U=NnIq;(#XoDle`8ciYTN z-VIqLQSR836h-D4X7~c3P+$^udLGYbAHzHqHUJgTyPGdR0RY$A?VH!*72qWWk?Gw! z3ZjQzy6gw1Ceyj>=4s*o0tazi+>3*X%y_{~5I7~%<#XuM>!x4hd=Eer`t-VJ6)K_$ z9>Aw};LxXm*&|-BDooU4HDeZCQ2SFKl$kbe%jd;x!-Z?M70iw83!WH|>b8=;k(>F{ z*3rpGooJY5oL%se4{-11OTgbvy|zu)8vt+<@b2l|n*u}+Us4c5A7>ggwUpYb_$wLz z&HD!;4v%U8c{aq8jiz~|%Y9X$0^ECg4fD&V*NJj!*iDay@_R}Rdh^|gRry3S;J-9)a64+K!R_dm_U4~q{V!k@$Je%*|MTe=*exDz|< zuK<0wgCBj}C@i@GTz(DVdX{qqu)YGQ>z`~avO7%rsb0-;_Fq#VY-csqn*v#&l& zk83t5I^PK35(;bZ3{yIa*{iPvR-(*gs05s*`D-s-NudpH&wB1LGP^wgyf54DoG`+A zI{mgr>*$Usa{3Xs!)2boBt3bue=pU%IFT#F19w?U3T3X0^w;M5kVG3#2^o>{0il)7 zCNWtio^?W^7slr)DpUR{a}|;dSAY%)p2CqZM^ZiJN*6hvk;<6$h*%S-ATj$;uyQ(k zmsOI9&AD4jWPFz9+NB1{$3noS`hJkXC!x;`Zz{Sf>Z>DG>tjr`c@srTeAtH>9n)ik zvdrh(RoUY4&5_(J24c|C1SGc4$$WVzQ@2c!!8)(ZzQXZs6;3K}GJ_H5>MJ?uKZ({f zX;(_c(*797znsjfx8ff%u4oYEg%~eeMAt+{igp%%grH&6JP=Bnfh3&6z6VbFVChqN z%;&s^fq_rZp8?BO0cO!T^NBQc{dl4jURydD4>> z4>3@5M8~805?*-HZU|?PPcg~bjaGES$C127%+Cj$SRvqnlV7FjwV_!~%n~)TMKo+0 zNJDD>@fMNS{`n>hSS03jlTgXZ{t0LOK_IytjttD^iI_QobtlJ~S7p}pM3mupc=Gsv zq+1WSi{VfYoS1o24?S=fbta=q;==W=sG?*BE3TSmwLZzwJ*|@ax+jY7#c+GY#*-Ns zoGGquwbf@w?Yygm%E&q}A|-ey2S{U#0YePWjK8+;X;zlB5~w))AwUndw7kf)DIU~Y z*SE9MuVS7xArWoX2`Wg(MV0vmaQY)41gw6f?~C;P>yc%KrG=T;ifxH?CF%fXB~)W# z<5B9oc|85nng?Cp$5q%!=NNQ>SWoSK-!EGbA93Aqs{Gd0v$;2m~jaP#6^zt0DWiov^8QZ+&wk-%~vD z1Oh%1{kelpf=s#Jk>MM(&_Z1SbanrDEPTX-n2rcGwUR34u8s?i1*FX7lPWKAqjF<{ zYal1lrn+FothiDgp4pl zTbr`0>(jrTEgI{rqH0Ve1~1fNWXs}CQjj7(^Ul3*7x5v}RVOKk?pfBY1osZED?p9? zCRe||#sq#TdN{;htCFXQYfCL;TC}C0rOrE%#yrV~MRxnGjL{XKN2;sr!e}Dy5(?V2 zX<6npqG;mZQvSmhweYa_f~ZY*R?t~5WKc5jX~tzfA|Gcp(RKyMNDAa$`Q2KI%-N2! zKGW1|emG25kcvF)tqjb9ww(C}?;j?0rhPn2seBYH4qq%a-mq<(y`MeL;RqDx?}>;? zKTjD+e8P6-b8lMi()&oFm0-csQ?WAy+!R2>%;j-p{PC%xS_#%s)Ejg# zAybC@d+p`vgek}Rz`Wc6FJ0auMMdQzWp9ra^{0m;j6+`E!hYbq{~|#{5W#yr8&+GD zoCvSSPGToExx@U~$liVwxK}VX>YGj$Ws|a6oy~Sk?APMib}D(s=V*qA4)n-h68oIG zREKC~z76SJVjOf?357frlU{L&&vtDjU39vKQ*DJMjmX-vdX@S3){hF}nokCrETqkW zWZqz}@rZ#=WdY**6Tc+OvU;*w#H&-&*NQgcsPc-{9G_EVKVramTF>_&(o%${s~}Au zI9gmLkZ_(F>3gW8h;GM{483CxM3hu15*~taq#=|j%1Q6y3ALMo4X0_zxpT0W|2&|C zo3MX9o21>B3;?fx{}M>2b)gC0`qR5`Bw^K&6jxU1W|CEJLKLxs9$EYH?R2Jz)1~0Z zxisE>49QmQaVBg=NxQM(p?3(XJS-cgJ{`UG)i$gwf_g{2?+u5j&<)qnmN_}R)}Cah zk=+(4P`mQn%N+fKV2 zl>NCZQP6x_A#2n0w4H65zcJqR(xbv)^9pdwJX3_PV5+~?H!Ida@TkW^i!xyxv_&t0gBoiuRQ}}T; zH>m@zN!QO3LzR{M(^j7jCL&E*Io_SG)ylU}XZPALlsg^u6%{k7f>)myG31vHAgRk6 zsVzrE&))Q*aZmW36{hH`Isr?rKJ`|F?mdl@YG*7AsuxPHpE{;w>Sds$nPujT+ zrRHI;KR!);RT@L%S$H@+)a|d787t$D?hpT2=t#6`!Z#1W53*OiUY9?K3#P{UXxt2^ zi-c$`?-@?adn6MtQ?#8uo|s6>Ua8W@f`0h$g}L)nN%N=879 zP|jcrAGC=eypBO3oLRS;EQ977#Zbk%vWnU>(Pph-@%um;aPOOq@XWiInyOcK3o6#Z z9_o+7l|_~+bd%+BKWP-Pmp(&Nh6&lg@I7KS#`IRuE(NM*mNa{(wkyOhUmp3-VBMkFbX29QdnI^x z{kt>q!jrHXMN$ zymO48v3WVXu4w-Ql?!RqlZ;q>qiiDVGp&QlS9=gAQs(5#f~Hu{ukx4&;ZCq+!RC2w zQDQ*<*oah`@rTw*-H(gBv9+o}O4xgbDg52&mlNG+T&^XtKJbSVS6Y^i#Hyuk*D;*} zo4hV#lPa>o^5z-eop{CEWM~&Gtdjj!rG!VV&KSEfV;hiU81qudJ9<&ryJ&_V)(Wnn`c^z$N-6e`AvN)sua59H z{0#yqsC?I0On&T?;aF^HswVVIl%u-xS^DsF(;e)sN184}q_*D7&URo&ZV@km{8;E` zkNR+`_;m_roA@eV%@?I#I-=b+!hN}q=-r6K^>{G`txX1s3}VtokC2#}tY)bs#Os(k z7XbwYo(eyjD0oSP`FG*GFJp#vB77FX3YH09l-x)wyuY^pv_)$L-iV%|d!jt_Tvbq2 zg4f_L+rXU3?%CN ze)aqujzU_fJy;zmEIvC~NTbq?$Si>IMd<-^(LKXFHMkf@1~xyv6^H0Thk+AnNH*&0 zdrT!|nr?rv=`mq$vZ14b&-76e4axUdYhS;zv6hV4DTUXETI%KV3lv zVefKC5fd?5HsoM2xdQkUATkbFJ)3`)t#F8SMFdn7MGQsao>`SfbAX~iVXbsZiF6dl z$L!IIi^(GIRZuKP zIJOAV=z{O5wW4{LHRqkswWAo?%IhU69Fw9iH{d||HXj$}e0&4q$m$zU5xv$GF(z@A zrci&kg3Lr~eb#|ecQ)$FSfZIIIdms~mQ@JtVP=-ry(Vo=x3%m9ee5+%=J;rep!5kx zNmFhM_Jjo9%0!?^k!W7N>{-Bfg*%eVU@~iBE>q}UzF8WL**gEJ6Z*o7;h9H_&`H(} z#SCY{%F5#>g4hwcFpt&K;Gs7^--#Bg<3-wdXNt~fPd2ylYy6`Bg6U%!|5ap2`HTo3 z$@9kv$i|fXJ|BxLmGa`F9hDa6Q6S;{lYXwz7azoi5VfpJLDL!e@wx#IK~Ze5j%1bY zs2FYp4mZ5n)4IrJ8XQ~jbNTiA0qao_|X+n(xPj^CH>6ptOdUf3C zcVM8oS;ku&%i#Q^6r-& z$7)vQDtCHKLZ^abk;aJF{m69t{j%G=97pjRmTwc%yGyZ4`{Gn$W^V37GJoejr+ zU12x2hHdA4L5?E0_l`PCX2+Nni@Q5gNvPE9aL@|WldN1gJ&(SYW<;xmRa`{hw`eo^ zf!D1pnN%?%Q87y~9&0NBzMneHB#8sLNWGQrY}-_9p5E#{kCihb3`YC3iXH)L0E%#ks&w&mZ~Y+ z{33Dv4rK3XOLOTG;hPCfrjn#uU>dHoU-O=c^?WN1IiVl*=vs6vkKfpQ+76LJl$80} zQzn`($sdJ$JI`R}5SJYY5)H{qXgKbF{ztj@@axa0Q0$YQGEcJ|Hq@M>5hCjY!@n3| z`Q(1c*30Lh#iB_PS;j#CXis^u^h#rJP~z|M|i&I zM>F!yX^%^BQgeykio3#NQa}Y>T{7K>0w=QWOjEgbPmz1kHeqewt!2iFo{8H&>xhn< z&@lD>I&dIiT|@iHTWR>wdd!#h{W}%5wUKu!s_0ATnBA+8A9VA|$&DrvOgpZ*#!ABl zX#%-IB(rjS6Q9Y9C@HI~Sw&}0Zm8<>P?}N`a!YOEDb&hIc>QS7%wlFSt^!(2BV(Z- zTpgW4bd5aK3Y7U!R^+PCWu|?5nCY+tsc9G(Hhg);qQC}gHv-ldc5X2feQTIBK9l9P zaMOPpciHauJg)u(=KhLU@uu0Y^O|EcocF=o)|dY*nRa?Lp?_`?M}Jh(e=W;#$y(HS z%FKT`L4bJ#`6}UmE6N1Z^AI8_xQ4~1KtP?1IDO%1+YVSM?Nckv z`*np*>7SLUsdg0c^r=F&`TNT)khjI5nWj!8Jp9ppj}BQhNf)h)#Hi_*b%j){&4w60 zl-j6_=Vzq#BwLp`Id#k&{s2WOKmO8b<8H6e5gWswOX@L5i&X5CYDdsH`xCX5zHY0` zUeR#;OrUq{x*Nj?VBj;-iC8QllaH~6n8fSjenjL?c9W1rl&YYC0)8&AyUVE&%Sm@7 zVZxF&FQ0|D)0l>nOWG6%f ziQ`Y25t2{I8--p71sdkeiSRyn^KVdEns4egG?uIPi1oa@v?wmAZLrfO=Hg;e58~_w z{vME@UFfVv{T!yAz^iRLe)0Z*CjV5~q4ZN}Qe`BMjy`!|n##1TmTZ^}EQ01CxEBd0 zXK&1bQ!N{oi)`szJ?!Xcog}GAee^k5t*mhz^zEHCLXVW?<+=U+wVBp$LcMN?2cP25%{MEFvt2f2X4(NnoM*}#4|e_FNfB!5Z@eSKM!RJTj^?nGFux{ zLT&Y5S^W@_qD{F)I33U(;zC1nnjVR&WDwnwQZ()~1=}t%bP}>2x7JVKXfM~mEz|m( zGav53%==1Cy_1>Yq$c)yl8`5qigeT=z3T=?cL2n8mjuO4m}NK93EU^X0ZyK zrfQ`MwxPTpkNww%_kimL{d`)URnicBTyZys0j{*7Bdt)#P~a7YQkfwglGoWP_JezU z%q2@A_rOb0v3bxte6Fq$z({fw*A!ue(nUEqSt;F{q`a|g->rXy3S_Oabq4Y3>Noa% z*O1O2n}8+xDtLW}{#Xhs)@S|E9aUg6Y)SrM8J3e+LR2XB#eqhwmTO%t;HeeFuoV35 z(+mecd-@1p<5ajogPZ`Ro+nA6Ts~D7O?$f>|Lf?PFj(T05-cnRNG=%>D_NQe(uuWG z!YrB^>RKy+XxwOKc`zRqQLz!+ROh?mG)~NKhBG3uv523JZ$L4MCKXxjUXd-DlN_+g z=e!$wmD<~GoZF9816?g}A+>prUJ>X2#erzi4DPrBP>UJ*ul~#Q!mX%>7DD&IDU{Vl zF@49iSQXiuQ@9+SsXk*@F2YolpoiMBcEtnKQimSnNAhi?x2ZUrhKWaHC?Z)aR3~;c zN!)UbvH_@5CCXMyPB1F zE)(I7Q%f08T((U6SazRMr>%aGRz_umjQ(*EtXNLzl}`ty%a2!2@%A-~-HVzG%4F{a zj`N->ODBqyLOS}bK)Gojne`9&KZ!&y6yjzz@*HV^F7FNs75xbiJDl9jayVc1kG}GF zUDEQUtPKKCcsXr+=$3#TD`O;<#^y+z#+3&tBAgN7#7wE5(SgHRhf|DQpBzhf<(cDx zX!K!YJLQSo?Oe`F8`IEhoOa#~8tcCqi9fo(x7-zcRKh)Z{tWv-2Jji}pN z*%V&LHkUyEFTwTam#V>%)OC2a`pBs7h)Ls>pL3Px*js0lx(7UX>47BQ*u4;=ptbSh zY4UQQvqRxfQ|8^e%BOZzrOHnYZPxE@8X5R@w|T?mMvke?p2DUIT$w)~OsqZIAV0NL z6yg^*ks(DT6y4J0m&jqrOCN2k{OWRZ#huD>+tPWiD}EN;LM-W=)u>_AGZJT&*e}`3 z+f?Ju5WeJEWb9SoPnjGY!O*O!l3rzf51kyVV9jPBbka*0l9!p{bFb~!l*|ho=evCC z|ChHNlh3GJA4+GF{Zo0gRjBD^NkQ^344$=Y_ZXsqJXtq&qBpdJ&)RFK!Z@IN!mY7> zLw9@M`-iQD1 zv0@@hGMA*rq!tUbY`t6~I#?)s;iH_Nz`($jnDuN)h0dxRwq;qv_!7oihi}P_!H$MM zPaOfb#=ngq=aDT=Eum4M2MRs^?4sRR9p@*2@oeQhk`?LUMc;%-!VdBZvo;pv(ak?( zxqKcl8ls)_COrzz-umX~8<*B`erJmM+LUG4%T7Jrg`4J!eT9N69EY`6hDXTf0pASr zn4Z$oUG%)FembcrH!1==IyC)j9+u zZ)|0)eq<2Ge)o_IRugG!y88I{tzXuk>nA69HIg*=HsihLqJQ-A)6<4#nRtYJ z50#P<23*6K2BJhF=SuifLoIva>vwQTMVrYScg(#_2`7elP^{)uNnr;XPTdCQb7Z%s zZnS>DgDi{1T^sDjURARJ-SAl7o=mL1E`+d_?j-0}hcYvAUGoQ))*HM(PLITnR)fbD zy&_z>He%VeZaea<$7X^1dJPGY$uk;#s9efuIiMsVDcyL=0$&)R{BRUC}s>pGy2VOej%Rjp- zevtcq^NWs@a{1lUlGAs3#+&AxGMLmC`1)dkI~kW^s;N#@)~plZhqm-^_4H28Tjbaj zQM_)$domyR8?a?b`+an4teSXjymzT>+MokN9?D(hU(bzyn2(L z%q#^U=%TIVFmw6nqf{qmF2pgxMrpH}4RPurb=;sSJSDd4@2ak}7+gGP zZA`0?0xw@6NhRK-2|}CDf`L-Y=u#U^up%BW*Y;cudD+`BySnG!xHf=UT1`ZH+pM7* zD7>Z00}6bJz=}VY%nWF4=uD8;Z_;H@i)z zw#5S^;DIlxy3((H?VaLZlD#^ctpB1%%aX1uVm*M8#yTx&+PJjt=2rIboiRA4}BoegrM zk|i($UeYcUIyKK@B>f3DlB_Z_Vmu}}2hB~)R9aAc?>jcoA8qO-+LxFy>DQ z1B4?yY6xYlxIQOl5t?O=iC9#)wr*}qmelmB5he?I>v1wPDELVss! z>33{UZO73@YS~HVm#S?-qrR!e#`BH&a0_8gOLa!>y>_ajGxku|IQ(hm&~sd0=*pg6 z!psV;b2E|GS=|UmQq!3iGCLMFkb8myK8xf}&)}F=nYIYVHejGkN`dS4u{lu!Y-dOs z+>O$SmIkUni&p10kNk;=NNRM3=iPyMdr-1`9#p@x5N&@UN!{<8 znN`D6nNdMfzG|#2Gb6yT)l-PC*63%QZGSIj!5ily=9DKbkF`H^-+KW?QF+BKdPn%@ zVIZ04#VBD+=o`l`rY?^gNipIvrJAO%ij#ySsHy3j>wCY}rMBC7?CBdO#4Nb?j6+8G zv}|$pnv*Y@XUN)3ZFl_K$q&p-(LU5*t@wh-aWV0E;3(}tEfeaSvjKMsX;Ki<&b06- z>%MWmTfRk?9=`W?|NQC4jPBa1n3aoHE3a=_t9Rjl$vyazdjW{p?&>%5j?`wN8u@IJu~Cx9B<&hLy+3=zCMv> zhl^Arr1x@8XBOKP$G833h^pztm(tFLw6f4ODrtCRy%tEbqIg7~7#f zx$dRvYzBTMxpa&oJe-C-ShZM9xz{M9G`Nn7@P3J!hhG(g@w9a{0uD9$?c#(q7wE`0YvOl(bzp%To z`qekdvIB=<_9%N|Olr;r9S}+OlhyT@-btUna7TfmGV*xan0Sq)0(GcXi4!%$b-2s| z=$Dp`Q=I*@NXYEdWCq4h(mtDZ$F~jDHTW#XnA@z+7`X{5Q={Brfw@s_spD3A^=j$E zG|*EYQmZk4(JO!h2NTB*!4HC(vwD5RJb-Ep^cERK;6A6~lwT-wr{z}%G$$uiiep7u zcnzZJGHvNoeRK>8w>?Ejr^=uXzi#){wFNY`@S3f}ShpD1K%^)KEJsNr7exe4Df#DM z12!e-qM{fJ-qQChtf2h>`IO7FPEasL(X?%I6Qj0CYt_|!26W|NztqeORdRL-i9hasYI zJRzC_3#3njI8xNL^~9na-9fRQ0)Fmyj?+82t0iG=8B=B+*qMXHm=S?=r;EN5_gY|r zspf1kuScEnfCKMLLR zN}vYz%Db)#oK@&5NvEmH`n_!o@i`uyrWc+ zGOzhD8`^Q!+IwqfrKX@-qJ44@5>L{c--BwK8qZH0&|;5l3Va?{@U@}9;2;v$GVd9i)kqW+9{i_!fq4_W}_y?1K>R89EIud2~UTo|0pas+9UYq@LTxu zgjG?#vDvP<(efvqvq1crn~KD5HU6nfB^2xLhiP5&6%0ga+DT0^!0{GZ0X zwrm7FD;o4pq&aE3*f5~U=4~p2VxU?24o-XOuPS%1U#_44 z@dB8cLbkRxY96DWuj`SAsjalPg$>s@PaW$*N5&Q=t6JkXnw^;U5LvDmG;}_^PrESy zE8fY9M;{0ZO~RMmv?Flh?&bKMV?;%*BqhyTpLl-16ts2(vbwJ|vs=ahqOs`Ij=uiT zBDc|}FgvzqQ5sntt4OFz!8Ab{HZ8JAYU-Pvu=0bkM-A&wQ63}bu_8CCE0r0?lo8)y zS?2f=#X*H-!zHQb8tMfaXejGsvGHz})e~TpO97S~tZeVq6~42_-agMtXwH|3C7d}T z-7D$0X3QX^R>4Oiv%``Pz5U-N))SCZbK)lUHG9k{cw4M1b0Xdt5+AS3n>nhg3qiyx zf-9#>;i$Ks41KdrM5lVKVC-O06`KW|O=VPBJ54nCl0Ny8JYK+OIj1%J$T%&7ZJ!Iv zJ7w1(;^U-aS0#ftir%D#(aJeV<#oZ*l4usPAOoa?$lY{gBL}jKlu#e(bS|=MSFCa_ zg-DXngljCDjtqtd6|)XU2ohyO@tpi_*e7`Np9 zJZ`N&y6jYe66Zex&3cQ=ow)LISRH#s0j0=X1&~d0#}MLgvKO!uS~B zfi>Iot)K~#dgX)LUI>0-*@-H%3ypILe3PG7>|ya9$?VitVb^8g@-S9gTE9qvZ@+*pI~6PW)r z#K?*8JnyeS8q36XY*IR}KO@vLw5YOpHxEBpDsaq3`_XpgS8}q(e)qMmWW+Lu6}VzA z?oWujf~feDX8OOE#+TFyImbcj^Qm#}P->jc49hMrr3ibxx7OhfpSng0HyUi`NanyF z-~0uGGh%HquL=e1HQ{fRqu`4-M`O7_oqt1BsCMkfw77`I35puDn}7PDgn&oEn}QYXkF#S zaGABgenr#0Nyg!<=mn7CClO&}7d_sMf&*E}LJc;ObBy9hxr-`bE(|&^nQC3G)0#$RkJ~?fGJ4r0Tm_b92&<;hw(8GrLGhO4^C-;5)WS|)B~PzxHQ%{$-6&6u?sU(t73R! z3#~j+n%6Fm_f-}_>i7yJ;B$i%sZjdndDSorzq)1S&l1}(rUrsT&chn;AY&4yDxoJu z3;$!2=`Z_=TG4sb9qHVu5^GH+t=$2!IC~+6(SX;^iG0ppm7oYrFXQty+zbPLvB;&{ z(6xFz>4lIkt7Jb83-?8OXwjMXgI8RA@*X>%M$PvvxI(dgRXimf&baVTj*boA8SLuG zoY<|IH6LUVj9#?=hBxmEFR=tEU8kgZBp?x zwWZumzc)ry=WmvCpUvMwiZ5v)_TO&|J=P1`YN9c&W=-4Dv6v z?-zxb&LuaYX6&jA+eg*xDwjYAJs$^1ni7)fXjRle;zysTNJ@E)H)uv{Z{-({+x(Qw ztG7-_tNw=gzJXEeN@U?wqpnLkU3uRmqDI8X%zIp3%CSCreLLu;$n7|){Ro2qkuUoS zAxrn-5!*{?-BIaXO+~)5<7G8<1RiF#xCG_3q=C_ZfE_bW>#VmiR0)DC2vC3jc(b|B zBF)_ufhfN8>`OA5$=hj%0U6==wCiyj|+-0RuVP%fva_3Monn~Owk7_9+l;KH>)TQ z*VilUbn@w?!Y4YNh;kb6Q)DiUqCD^-Au^5o&AA$Q;r4T(;4l}r8G6UtYBEghQhUD* z{*KbaJ|h05?;d8k+`j}IP>0s&5iiSzD*i!Q zYh@IId^PEh#M(1T zfZXXne0Y7mTdild583$BDQhR|7BLV)I2BPw#)qhZ%>w&T#VF47`XsktjteE;l(*A+ z6@$8ry@?Q#y*v?akWM8xolfLv)7X^5TvHg?Qsqhu^rV(GPk?CVc1H~Ac^dnr*<`+_ z@ut(LM^WiGq<0EbVx8&4VVRqX;}pLF$iD)a5A3p&L~U3rVf{f-No8|Fy2wp4&?0)g z!s|YI9f^9X7G9Y4TDfgiBgVh#xz<7cxqXZ1jJklyBhhkA&3CZ7(O>X9)HFr@kbJ`v z^%W-|q-vE=;OAUAJ000zIu7*5lHD)tc%3^m5V#eELh{tF&q}Lu{rOp-6&v0u$gS-_=$knG9W;6h0UgHiFHIn$P( zwCo&DB5;KP>XT9k?5&DX#mw}&lNz9vdr&0`Rn*GE?U1ERrOms^=A{8eRZh~NgNrtd zYFovt4OWhx{UMv>1m_PYcJaWR_F0voGpJEzsh&fZQ4#h&6YCY^ax>3gwiW&}dd1|L zGg^5`uTfb$jT-S7C`{31lz<%ViCO9ll?KJ>+v6lU-Z(-^RF{xW*7GkoutpreBAd_+ zL+fzlrkAF(R>!l+ftZ>L2QJ2lpLO8G1&n90(FHebLcTN6`2ZdTn_ zAJ;N_Ay6KSpF{~up{O@mtdO+9AOK~p9q=6hIU2vPvSb~SeUOk>h{B*^V`Dk-5Ve}v zN9kn&XiSXDcxZA`y5z>17md&h`pLCcUNgp#c1&exMuC&wj>$ttAoD8vLcjc;(W7k7 z_~&56hhE0Uan@5uqE!-8d+Jx}>sC@+iZUY+A}+3=%T)}KOM4V{DV;a^NR z&wTON9hd&k>hA1gfHdGf0P*PnW-IcQ!1JX$w$E$D1BF7>6#dS3@Tj-py|Yyc+_N>X@urnR$LLqUdog+uGk zWB2vrtaTQC92xI4?q7CgtV!=^?aFF@+vR%z+qCnh<}_Thrt(3rn%0_l>k7J#Z2n2y zHtD;#eE!(C-})jrX=rs~;a~w>)O|Wjlu#qNWHX>_>w2upbRtwjbLf)f$0T?%aM56} z{c-Vhsd&;?m`TcK(7=FcxSR9`sy5pUILX#^Xo?PWU^GnG)?ZT}PUqNu@ud1mcb|bb zjh8nb9bn_H4vcq>Vq}U$l;Aw(X7d=Do!45o%Sm#UTa+hUDPmpZTJ_BwD5cVSIzgZd zZMQqh#B6=5&u8MV0D72cwPsD^1X;m%#3&}~(7ir|fQ9nZC7%-_N|2`G;-Vg>N7aE_ zZolqzsur`g=Hy*c<=EOgAhPaf#Tay8K?mPEyBZpM6Q1{t0~w}Q6xA_EkA;P){Ds)Y2eEW7F99z?U;7ZrR3_+2|C z-7m&Jz8b=K`6B1bK$JbVeVXW-k-=(#@TyS=m?LQHp#K9ub8>gPwwvJXx4aDd&f zLQg)5YhAD?8dV)ZAfgqDu|JfiA~?gTrBg9A+mnII9&Z#u>(EP2p$qLxcE2LQIN+D( zoOZ}JYVDZsC62s#UKaHFx1O+?VQ}6l1 zJ^~l4t*Sk-UB^e1l)4ZG-0owt;>OP1Y)EiwO8der)tN1gqCQ{cr4Po~7MQ)9JOGkeq)? z2F!9LyMj@8d7~kZKXC$`n%lPffXg3OQ9bGj)^0pl3_vIH>f$Qb8wZ;Bsdv^)+Vdw@ zoO52Ce&BsyBoYh7(5Qo?2_;XRO}Y!LO|p=eJ!74XnkF;8KYt#*;CSKrdoIAQ(cQ0j z6=*IXQm*y=nPi27nLZn3p0VbbVU?smq6~}O(I*`IiO~{}Hue)6jTy8{{OgE!e-2pC zZnwXbVUwm3d#X;~YQJo4xc0Ry*&*>Q-cuh4#BS}3EckyqpQV(qnt-xsny}wtk9xEqzmUoYBgf%Qch=1r=2Rp}fntMoGMD~20vHoKmg=w%qFCVnRfsQce@-x6}ax8P=2k|MLq>jO1%U$r76KXe%rIO%~Qn8s2GM{icOCO-uSwUELzlEL$#F& zF7>9NdoEak)&V)=*1E>ABZ?MOmSuW(EJZBw+o<$Py5T{+)pqSWXJs~%bf5zvhGl4W z3tjJ_@3ePk#>eJ>r7|+iB&ih1#O^5yio`wO3>@Ws=w3KCKJV4$F}HQr;n#Q_5Zyrg zggi+qrnBhleNN5X`V;9QCMX*}$Ve;oT$#7vy&+_>R?ns(^%yw~uFA+AY2QbwY`&e^ zsXH^5`SnY+mmh9Lxd@82eT*QmZE71H&Yo#>B|BML9VKv>K{wk2K4rV55SEp(z=c3r zx?%Wyfco?V8d?0Uyl$+N%9{a`Et-Dcej??POr`3ed8%rycjU z@jM__=1b?37^u?cT~%fxsM*%J%8^@Y#2nYyNwynsaLTKAZDoD0Q4-x?bRc~@(u%_R zLM7RI>}?f)a&LYe_gM?x*IG7ZcK3k&m(|tv~t3~yM z4nNa$+kujVg-Qd-LR&bKm5i8OnaDHihpV0hYIpw8?~Ft4xz&uGT>)A z>(yZr^C_L_#z0@0rWV=3-MwezQO9PfMNDUfIlLD4kx(P!QDt^)R9{Tj+WO3lV9B9d zzx_q_N4PrW-`U86l|0?i(r zBI4+(^-Zxqc9YrjbFw0ByFm$4v5D?#M~?Cpr=~*PIz3>O#@uea4WFl%=H__m@}aK! zi@AQcnijAvV^#mRK=@|~X?>5fQ|hh-s7-g4@e1@8okq3?3b4)r2`KQidAiPLkH z(;irg4QDITT>`W4P<$GYAR()$h@eq#Bj`<&CimGn?ZXB00kBLl23 zjwtfvE9+0t+)?OB!;SqIK&^^h0rF$QzSUSzwY}*=mFyYQ>0>MU!HMmDMJl5-sQYyN zxV%+y^?-sF5zlzEfgllntM~9+_S?DFSFQ?EJNl>x-e3ojY1^`urj*3Z}S|eA~=gn@1xVWSOgW$63Rr|hp>!#b1drJMO`*C4r z|EIn0j%sRK_YGAPP$>avf}t9kfDu8FsD$1j^Z?Qcy(1mnAVpvY482JW3B7kv=}m#q zt4OcXJHEK@KIgtS#<}<0@y7e}t+B>jbF8ef%KXZ2mhbxoEVp<#EMksg%d!Yq7btES z_|`5Vd>UH98n{;d3-CU`mReAGOsJ^+Ps3u8QxU6>8f(Y}ek#$51%W8NO0$Yags_;8H1JW0v-I zhek@KoDxzpI({rxsx+@(+>bC5OfSzu+SFXv%K6%CT_=%yAOl;OwCmb;@{wb2e-$lE z8QoaXyB~P|m`%z8qL!RgMhHfc+M3qm2pf$WXDx0`-ssUd_6&LvB#f_46zB3kPH4{ zPK8249NpF|qq~aj;tJ5ZQ3+26flJu({Z!aCXj5&zaXmHV>F07vMJ? zL1z)`Y1#2|NU8j2}vbD{E2%!QHG!VH~z$WLY5EbRMaKTj9J>lY8)o#^(bjh{{> zkIft>IMK$<>>G-Q6rOzj{AA)zm6n=jiJL}r??e40tDmDiTQ?g$XT3uu_MC)@-+SJC zNAv{95^SDhR?;m|;~U>qWVm6z)eqW_U3nU(<{hvTrZuef-QL_BCGLW|vx>6E zM+h?Lx+3}g^Z9HqK0Y735(~k93i~R^rXqGXU4ts@qFfF%vE^o;0F(1fb8xb9IV@SN z$*w~qb)w73g$=tu7M@i8)W35)HEIsu^=@wefrglDBT1EcxMnoU$|1Uf+e=2hNpOT) zuHa_uDcU#NH}Rli5<3Rkg{c5-BWKsltm}H@xi5umKM;xJE+V~xH`Omf&W(NnMzvCFs9XPAKTXnK?Dd0x z8cC}MLNnCTIWq!CLjXh^0;J;vu1fY&}?M-9>7Oh8Vtp+)g^UhY#=(D;Zf)&7p*h)}to6p@CxfPgzjrU`G?% z)(7n!{Rhe6)=TJ^nks`(Uau1;b5>3JWxQ7YkH_wPHI8cgY`zk8nsLB}68b_JLrzz# z!!?&jFuw%anH6_Y2xR|zps3pf7rNV!aw%*NVGaZGLepFMQHJAPo(busHX+y1XsTGHaidt)R6x->{ zXvYbja(qf1837U|sWhK-OLmK8hih!d4Y>_ASqowHV7p07AlWF7(T&x<5!J8g^N1%} zIa1Ab@aXm&U)@N{P{#bp&oIz4=4d6kFBzwXQBpY8bj6*BSO$sv=H}xQep{2(6HfDH zvr;^RwlUt;h$$vRn2L&V6+|V});f65iG_2rFg$wDD^NjwgYNw#gCWaxc@n*DL-lOuB)TkHb5cLpN+eT-k4{JvEYlO zLZmfUyi{+-bC8^VnA1If$vTANbsXxog>5R^IGk>66%@Rqz|L$a<}Eze_U&RgSDD(m zKT~ma3TXsmP+d%_mrrkbTpxpS5B1Ql1Cp}WTwTN0m2G7fUZk;#n4IZX1pc9?5cu+b z4ir{!rQgiqgTH^0`)M$ajLqWVU7C*NI~in&J}n;eOp)o9~b3z7IAr!j<=a0a8tu60#BRT(K3mW^lDQwkvm+2V<;hG@DxEg}v$>;Msn? z+I;Ca*tt?@UEZpl)u>E-dU4);t^RA9had3B<0>*-w#%O-mOpFV#!15!jx}qrbFem_AyT7Q21Ru#HGx<>9WdF}GbqYP(5UJH8WL?JX4msi@H0w(|RVC8C0N zJseNYUwO2uz>eY^G<2ipW+f^vpB>va1_ZtcxTZb&r8*h6q98{r{6=}FiSoMeG=2z7 z;}eK(u^ijHak!?5ALKP>*_Nop|7*Rvy;4@-1qOKqzumndd*<~M|Eka=vVB!Vw^MD_ zNX6{J;G-X&pjCwkUF|Dj6R+CZ2u`D=9pW{Tb9!o8^z_yaiA?AW7G`T%T~zKp4yrZ} zaBIr&52{86AS_j-W?M1cv`4}i;^8XB!qI%IYG&SU&`Q3mU`N=V?9pS2Y0;}>!zyC# z`x>)$l{-*uw*pIS&!Uo>3ZT*f$&KpwS|Q4l^TQtn&0LZZH8?$V^$B{9Iw~n8-4z}JUDK3Egf4D1=Kk<0m4kGZc`0Y=OV%4Vs46lCIv9C2$ldjvuOd(}e0tNc4YZG~vGT-eCy7K{&K}2Mfx1Y=C zkp<~dl+u`jT8TlePynb^)tZ;AltE$nln^jPTSW)fN4W2d&0c$o{~&hJ^pMuy+uW-u zr~Nhh33Vx2dY45yr1ua*pfc-vFqWnuk-h%{S< zIpbBDik5VH=@;Ye4*Q!un+P@-!+@4#aynKf*{WH$2fLi7J#sd2yEeuqi=Gm;R$|V! z&2coDWDq|7uhLzKbfw-a)oIW*QkjGeRt&>_%a%RrMY=iA&;4>~J-Pj){beIw_A+s#Jei?I>a} zTjD|%CsPdv=WSMvLAlu&ZD|nu-c9{xdwtlJR&duEO}+fslQkkM0EkrWSeXmG@z1B?|| z3cKUaEU!2az)2qao+bj)haj=5qn1BmCN|VdvPyCc@GX=2F^+m%ZJppO&g}gRcZSst z@QH>!{wUaqKdJ`qo93u8HvQa*uP-eBRJ{*23ALzdjmN?LMyINeh~1zyvKtNz zJRQKrE>~G>Smr$M6YAEEGiG1ccru z$Z66zuQax~?83rCCw*bT4yX&B(OK7ifz9`(Nt*@Oj9a=nCZB-GkdwMDI!`XWZ|jGl znvW`qzMceI#tRAAG44a-zp8zrsq=#lvJ;>2ud560KHW}lr6?`Ab{V87QN7+3Ia5Fi zv5eD}8FU|LO5FrzRbwa1N)9=gu<|YUm8Xcr9Wha|4F_lf8Bo)~#)>tl9G;7U7sbmG zLf3p+2OkT`HEnd$sa0aeiX6C=POkR&pT^b5?}1$mi!SG%J(|1IVLapb`K^h2A8Lm2 z&64(u8!Ot#Ld=rVYE(UUgFq1T39w10u3#ebc>%rcN)uhxy1Ie}Vx*kYZ|vE|rp)|v zzH)@FZ~8@XJh5AUASCIv!Pt!i`CkCBe%B4F)6qjxS&QbfqK4POMuSe$sV&DZif3l( zG1#WmH?%k)O|&NrVc$D983Y@l?L*OZ%qub1RY)53cKZs?1MPd3i+A9Q#pS#eVKC+x zGb=ZPOd?g+>Z>V%t(3mjX$L-f|P$^JeR4ipEx3{@iSkc7cUV* zN)`Rb*XLoJufaat)aS#4>YP0dAKpAI$R)*^GAJgtrtLE(Qgx9Z_>`phz8>saLqp{Z598h(Dr#6JE<7KleRcKcu zo;wNnoc5VF8jx|Lcbb)Cu<;Gh26iPB^Xhc5j8elRY*VI*l<+`ObEW#d{pti^s| z_1WclEvD`85l!&=``$wj@VyF96M`2}T`u-ks|EUSPAfn~>ytcoGGZMQ14F##1NJ3N zhG$Fh7B@4z$Tlv?);OloI2mv(dg(9`5Kzj`)r0Tn99DTa0{4GTnvbr}VT6wuUFvSu zj%XrSMuUwa+X>leuQjOTi#$6DU3XPYtq!ery9K7I*U+dbY5x-pqn(+|kQ~UL>xx6k zD^(w!^aN0SmMvzGlv@0=+#4J0;b1l;nu~I>(7qzouH%&%;tCA9z1&gUu%J9!o+Vx+ zdtvC<*Z{y5s)jS<5lCDmOg;e`7}E52l|~jZe=s_xvSNX3LbjVI4*GVAO1`~JFj=oVX=7$f+NuH)Gmss|Q%{*tR08MD^5H+eQ zIfo69n$%KM_}(U#OX+uPYPDl~n0f#$`kBC=+IyxMfCb0O`&u#o?MYvsL`$g2@oaGB z#2y(HjKHcki?_-Xu8}s#8STV{+(|ojy=-4kUWub`=la1P_XW3I<^p-MbGOC^TY}sL zvs4jx-=X{SdKc*uu|07sfzy?zRp2ka*xb(mdF^SkRwD|1LeMt(ep$^q;Qhch^aiF; za~|2#J&q^PZ^{f3RH89aC=qQCC=o~xyTkjPNs6azR`8DPQdvnFRRAuNVJ{i}gE)W0 zn|kS%MZu;zFLN zgZF!#@AZW@Sz>ka(mhk3P=L<}^OI^(eRUcv1QKNz**g9a8YWJ?wgY|3;r%e7r~)+@ zVlFF0uG7a}X7d{;lGX~I)>E{^EM(~Wc&-twQ5iOyXLW3&ZB?L3SnO-wm~lS`RHPr3 zZz>NgCX~{4<;5X>usNzMZIKv_h*w8$z(ANYwArLGCew6NmD{J2)G=9m0hNX2jra+E zsNmSEJYu*9ufcX_l40J(N?!J4c#}@o(VoUn9u_vwgDa}A@gurvTNlvgy?oINU$_M1 zF>etxB)%lJYPLEUZjjVi#9`M^dXH0qLi&iD4Qcx|k zXtMQQxmSo28>N;m@_D^1UI|2`@Q~>3i@G1%eZK$=N8y(5O8-G%$Sxig*xvmMaHRDM z5FCn)-N`C16VmqNx?Kk`_y0q~#+I$)AxHl>g7)l@P-50Rej2TA`+nw4MO;T>cB!p| z6lFoglj~Sj28}#1qh|$DL|Kt4k}hV!aP#3<^zGluP2e*TA`JnucLOZrS}AmRpOl2r zeF+VM5mXXREJQs2JAA9v==wmW7=~(IEZ8Ec`%_PPsSw(YcR!k=B>{hNev)}hC?Oqo z2-wRp77>BI>+5{fAIaaK0bO>yJQP%zYsl%@Sll0(jlqSnT?Y~)C*ZirqWa5BeY5ai zfPE^jQ5)Jnl~%iHFM})v4e#$Xd6e%~HxGP!)P$@O7z2S3K%EQUKS|xblE5*Y+@tGt z!hznm{t#Y)w50Y@U4xg=Zbv_=sXih}*X0^@+}(GeuOw$U(`}t8@34r$9CXlX7ZBVV28mhs}dFC^GpQ^E4*dUkm)l~3F(Iv z^J)5nQi^jfu<{WQXr~_cRrGQZ7~6a&PG84*Pd3YN@|xu6sMJH*&Opg7GSL~wL)|A; zioDPu1`FZ9g=_g*nqlR*ir{3YpmM?LORUe_a(<=h z_qV{#UFO7#^oRMm0}+QZ{UfS;C7#Kb^g_2Bt%}3@-hRu?v!|-bY1Hnh9RJ&g-AbR7 zkzZ$SDzBOyKZyTPo~#C;%!0-~$k2@tedrdZl&@xt)S?^BW@Amo?qN z(m~kg`NgFdYY{^9sp$|A*yrWNMP@VHJA6KuM&A8J4~ix$!Mbsq@^)rdUq8b@*I*`d z0<-a8_c5R=^3$ftz~#K^vav!S8T6hx`f=54E4XRtb~SOeYAe45v1le$kSKDqK` z!}QWSf9`aNpk1v=L==(n1fDSL+2*&r|Ir@zrFCT7ed*Z@?&9{jVJe_$!vu4pnm zwQ+R5vcMzO(xDvsev?y%9oWt+CZ zNjBYpTLU_bh#$K(X3n+UBkQaSTP7vO9&9k#<#X}r15=}w4{4245nLo;;WU`l}pR+eUWQU4&RBrdJ#zei2 z1NvCI-2LMlo#ZpS!dj2RWq*b z^@t+Cp^*ajTGG`mZj_86Va=qS2AVZkGI#{`jo_;kIxSdthB1T(*fn7?HEfIaFZh|OFR_T{u9lF8tT4UG z<6xbRj-OB*DPZu!urxZZk$OU=ZNI(;<~UxIPr3W5!9(|`N(Z~A zk4t7@I`)bT(jJV)PKo%w9RuE5`sB81;o2LZ9IDOzxhtK^Y-M+?@A%RNNgmrkzU_)8 z+%c1`mH~O|-_{Jk&7g&@p%HJ@;Y}8P^4*9I`Lk#fphNLB;?3xq(E8l8v8e9LW$GrMOvhn?l(#19LJFX)CTla}TZ$v@$}u=_yM| z%Vd@hlY`uf$UtWR4d;4e1+&$dw+_pSi-(v&%I8`=b|>o)ruxv5RpA2i_h~N;QseLs zJ5+P9%Ojc*g_^usnY!8w1gs+cN2C08bF4-uKYEQJ z$Fz!I3$t>50m9ICwv`tSFYx$VlG!#qu1h)Z1W%qJ5bI|C>qbm9*V|pLS>xQ$Er;Gd z*(!j8wMU+@TriY)w5sFxv!~awTYi-vc4vCRI!-vXwmDW#UgTvfK1O$+!q&wm>q`m% z@!ws0i!6E;FH*hC{R3jpM%#wjoQJL*#)!vK*1GguB74$b5AsZFzpn%hG9_GUe; zVYbeY<8IL6Y#OK?WWUw(^}`#h6T)Ns3&{xMKk& z*-$xfnJm_OERn9!l&Xt#mADlUNyJhu%#dG7G2J;%;yOEW6l_&Jji&@pQviYpoeL;{ zfq*D>?HDqh__S%gAgfJDv_DN&^yh+8@JII!yFbL^I`a5xWg1f-b~t`sk88Ba#$dGu zNg!`57Do86Wozy96hzKJzZ>ZWDIf@-$eG%tUCYu5<3Cvi4g;xFMm#uXn4@6Y4x8yt zPF{sK*-{-J*2*|_pff1CR=T-dPRp{>Jli6_f^1#+zm)@7^*-w~^Zm#fh*VczJ?EfB$0yfEXIYkBV%+O<~}zI|$`l zzX3mhW_{Pj^|TMBlzP9GP)C}JoA!49fU*6d)~zA?ekN3hH`^r}l8se+uEj*mf>$ijxs z^q&^?``!O@qcLS5`ase1+uA6)NH}Qz{JY*m?mDC;A0Nw8_be6^+;f@ni7>w9XBM{8 z0$&DMG>CT$uIM@3DYtAw=94-MES7tfORQ4y^*nHIO^@3@Gf zyMto=(_I;e{!6q_-aX6C?EM1P?IWqk9i6CKAsgnW2DVd|1`UT|0F}Iar=A9{OAx=b z{%z`oNoI+s-OM}JKpz~Zb-0%w*d)GJ>Pr+tql6y_#C1-R#mWjl;1%@@=J+iRB97lX zp`u4+(e_|Xqm2PelR&Ugh}yRgkmoQHyOg(6Bc_Ziqj7&h%|eTT*Qlr@B;_ud3j=YcqMm&kh6}mr($|4=C5iQX4Nso@hfnPEMP+Nz8?m!kr)W{7^>m7F z_3gO0xBI2oBwgUu)Uv_9-C{>#%>9n+{ngwW!W!bS$mN-uJ@v~yq2^vXW%ptAp<&RrUQ|nJ<5-h! z#93F-Ua*BJK`xJoq5l-Xzo~#)3E(ao%mgKL--&+9=kJnm2KUjtaXITGleK)_TL$;~ z{yq3sSCH9O(r2kVGwcVhQq4;w;`Y;l{cvr$)2?5DF}eHh8sj%XbFoD&2dJzoY^kR* z+O3EJ*_b)?a1pWw z6jmTUR7b?7Ah11QN&%}1V3E=H;wnNe*Oy*euF*%5(p~K zNpMEwzsnEgP|^5^c&m|ZClvJ;R-0yZ8T>CbN4Bj3@w(K{(I>fTI?VTr_H$&Sq?<7-YY3!*I4N2P6P^pfWr|&0s=@BS_q9677`Z5h=^e^A~+FYVJrcQ6UR$PNT5X} zi3B`R3@?FSRRV#57&t-@fe^%FgfaO4TUK5II26DJ*f5AJ0L4LIILJy3Kmv_~!XT^m zZU_Vcg(G1CC~%hmZv3*ddIADn;Q?qEh{D3K;ODZMhnfL811Yp>*@ z-05Co+ju(vR-KZk$`L6(o#O01*eo){R124=;{xg7#<;xBx9W@YE;lM z6zDGK|F>-fm0tZS`YvOY-?e)XWy0qOT`GkRPGwadP#&UW+ZZD5H(JBR&frEMK59O4 z0>2g5$w{bui!9VW-0&#Id3$uSdTKQLnQ~s!n(WsNZM3(Kdv<)f`P8L82c>GuPMxfr z+69A*o^!ks%diqlPVf5+jycBk1kWt1mfp1g6GQZ(gr2dj&8(x;E|sR1LEOP6lfk)Z zFZ>VPgC=_=uiNlv^(A5LUZjgh<8)89c-v`tA9}49bgSfgKKaF&Q*MIIHKZvyomXLE zPSq-fNm>(=<2CPb-JzieQLRvA%-j^n$z~kr?tcgYiNOI7GL~w+#sruZ`jGKGI1(;h zLzg(c0{jmInF_&D))3HDM3>s>)2>iiS+xsO-ASvrXoJjy$uEcyK&(^0dMQqfqVXCo zuD(;#fF5%TPnK2lqB=3zv8nxrHZFx#>#;!ULl+2VFYR#J@gYC5*1z-D;n%q~ItDA7 zTKl0~=kIB5o(fi>K@SgHk_X_Br)CV?^bd@KC5?TB=i-AVaK-OAmBlB)5Tz#HPW)UH zcJr;oI&rOHIow(KE?W@|(@e(DnFR5Z&x0x#c3DUW1dkDO2+xC3BU`@a_8+dLD|Egr zjJ#he=_yKl;J~;6@FSDY?@*8AM0Kd!(fz{|aUv9fMYL^)V``-MRXnZ5IWl~UzF=Qg z`3Q|+TgPV1S?=~N8@|rYRrI0RET-Ne4cms_?#__lbz>Ia%q+{9TMrtB;`b&LN192M zXEU7*B987ok`}A?{D-tNc23_DIjrOmSv(-A?(lftShi_ z#GYpB)R20iiJ|vS)r(i~wYMKN2v7C8oyt}4ea)y-0VyIkCljwPIGyU`1 zWB23UBD}JR5)%x$vQq%7$=30%#{BnEy9%a*9VNwY1t`9Psm~GG2a8cKzHF@#`EoRD zR2D<}D~uLA3Ua>QRDsp@gq>~E1Lw35_>P~g-HnE!PV~W>&@rP5OIT+V9=VH;p0A20 zc~_z;0f4b~_$Op_T`N;i57?uB5eN=Tru=MitA&l_cN_wR%6Vk&IAn1ipEhZ2+>o)` z4JXL~@mp{p{+Ct>>H+Z-GF468`JYP1eyTGC#ZHZPR*n^fl`d-6e$BBmpHAcSfhyKA z2m%LN?1mky8H80gpgS|!F{!Wn`PPNg8)XjK^F#Pa#{g6J?`)cazqg3yAnhX~qGrl5 zRVV3Fvkv!~?&TxG=a0ilQTMDwuN7AeunMdbX>%hax4NX4n=T7Q0R<*KD9D|#;Ng^V zg{kyKvpY9Z;)4Slzt8B$D4+rxw3X*WZsuz@X#erNS79@2yXv)1B?1WyP5B&ay2t5g ztLaNK^2SEh^QnEzM?@gI^%J9)W$QNy9ri&;8tjzLr3WWF_==h>$oIS^AYWb!3mU+& zM8k!ct)McoCYK5;F+XlyvL^rDlB_3OP+OH0vs7;p+wBn0w%PAybqJuY!!0j0DKrRj z-AXk2{Nle{i}F;z|0Y=4J8EQ)A%2HspewwAlyZpLI$7)8cx||$u)h6lvUak&{KL_{ zk^?+d7asb(&0W~K=YMx zi0>g=P|8F_fiJ@LX=J?~zul~e^8IHc!cfoVYl_3CVi&G1%1mC0SpkZcAY%(@&-?7nfaAKyD+XyJ zZTy088=<@fKi(d(iFY0r!Tt?(f6pip`)an|m6PD;Cgcsi(Gv9|!BhjS{xr4Eh}cZc zk{Zz-JRlH

gTk=(H*~vYs1x6>}>3O0Yahxo(fa`nTk&64&Im?BW6JRdoAIXh}d( z6ptPa2EH}(hw;vR&1l9W*g$&7upxrQL=xJ}8v5Dw(Go#{uK#36YnFIK?=wTDE;pW; LCDQ~}Tlc>KBQo16 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_4-large.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_4-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1726b9711201f6cd7d05b466d00ca0bd5b8235a9 GIT binary patch literal 7234 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_4-thickbox.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_4-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..aa86db11abcae608f1ab4438263a389faef52d59 GIT binary patch literal 18894 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 MKlt_g^7-rk1pxdR`2YX_ literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_SuperDrive-home.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_SuperDrive-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4f45e69d593344629c360d9242f9469dabe83596 GIT binary patch literal 3409 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 Aj{pDw literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_SuperDrive-medium.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_SuperDrive-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..99303fc10f8b7f6ce46ba5ee503f81f3a6753847 GIT binary patch literal 1823 zcmb7EX;>528lIWVkU)UUBw_OjkN~m>v_wF#hD+FDrC5lHR7lyBiu{9Ae$p zpJFIRav#Kd%+zn3oLf=;bUM@O z=604E~;iyr`UGM$dNoNyU_N z+m3PXBIT|{pS#|h7;VdcX_Niv#TnDOOGhPf=~39%nKl`xHkYn>qslE+1RBmi>a|R> zfAywWYTtC)j@zZEdR2B)wyQ;yQ|__8(7PtF!>q`aCGeDV47#;#_>i>=@4H>HUYsT(%+H5Ob8O4gW?Rf%U?K%7UxAf@g75d5JDIy}j>Td7kt?d3;I z{Pdvb&g(MgzL_OC`N}}`j)t9wyaMxQN4Bc4HP0KHH&qJ`i`O*%=uL@CV*e>(hFDamU{+kbdJ8up6M z=c)4)4MBZ+`?kNl4n)5FmzrR?UV0lUlzU>CUP-epO9 z2NGN#oXv?TSq?S+!rz1*xysS6tjd0<{o!b(Amxbrw-;1#fn{R=!<2xv^&Uct!REeg z*Jc@?k~;cDD`$0&=Jz9YzI47akhMH41Vfhzzyt^43UQy9loE-&ch+Tst-QHB zEPPRnOzq9tu{S5C#%jXkwkh_AJpA=Ri zR{?y6@2Y`M?%nX0NW-c-6Ap5GYyH2dSDV*-<(SubO9RCZCW)@~bcPG#Dlb?K1h6KZ z9f$=rO4;q4`&DHgzP)Jcq*n*+?8srav@_wMA+(?Zy9nqRJ!>jMwm#9K#jiW3`G%#1 z@RxKk+4J1I*J!fHC(&M*o);x5nc3~T+vWt+aCu_BRjJ3LU-qY8m|o{eNlaV)bu`!S zVsDTGdk=xDR=d~b$MlKa(b`tM%%>JV6xevKG_~{Dq1v2Seqw5cVw<2co*UeMet|_< z)P+9UBQxd{X`lsK&r-^c;tb2R`o1iwcUxGL$z%9>*}vqv(TF=e$jwG1F^q4@8vj*) z*!nSrnLYLBwQFRRB}-CLG^Y5+@gva4{IE@7``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vToxcIc10ypV6AQb5u!5kFh`1rpY!0B6jI2zb&CBkH#Yr!F zcO<{?UXIpt6?1-XOIr(_#-8q!xLf)86+Rw`X$eV>(uV(>#L94 zpX72$zwh*h(;H4cNRN2@HeVlTwX7fm6B8rCVxY^J7zBj`ghdn_!IlDjYR@=3cbU(! zYely&N^UZ%0=XEd4d`Oz@Bw<9Sx`VoSOMZzCXhCU-A5N5F)EzxH*v{bb!l6Bphisr z2B1e7*%5wa1RBEvvQa@%$rW}dg3-2<%`hvnXi`BZ1WtYeA{*aK5$E{~4s)O*8Q9@z1eBKq6@ab`Oq>XhDgoAvndX6l z%b3H{4bslO&R4SA+ziw!CCCU&KETuo2N1mwjiAU9C{~hNe$z-j?d!B!N8xs$9u)yd zpddvRI8cDr6)yY$43~|FP!ZT!^z`&}?MrIQ9N(-qICS1A%0IxU3 zi9GNAh%GiRzT)Dn886neEM%{03l$9!*%>GGe%85!h}Ou`sT%Kobi`^ePSkpCccHyB zS=8OrN9w{Vn|CP{ol}|K&0UxKOoRFA{O=4c4ofbD{VebMxAwAQj!4Bc1xDwRD?9JJ gWw<`^m*~FqKaGFnGxmmjS^Pxdg5%M@!0@~Y055)FkpKVy literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_SuperDrive-thickbox.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_SuperDrive-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f0f73e88120c8c8ce54e1a4066a2e0115b85b71c GIT binary patch literal 27873 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/MacBook_Air_SuperDrive.jpg b/install-new/fixtures/apple/img/p/MacBook_Air_SuperDrive.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4a53c6814c6213b39c83357acccecd4530d63f16 GIT binary patch literal 30294 zcmeFYcT`hd^Dr7zLh%Q&&=5~=Y0J93*e@Pinva;T0|6k?zO-Qbgkx^1m-nx17784y69n;-^Eo^`PU}O7TAzuF~|7-f+ zmGch(sw)>*E(~2Hp#of>BDqLKa^4PL0gwPL60s#A0sJW>7cO2Ry-aq6*lT?gKyvZI z1=368SINn)Tq7X`0DkvUky2l#VH43KqkW8{V;9v2Te%_Q;)gj5tPw90vMcac=*7ep z6d|_mIo}vKxote(R4W_4LRGeXYUh%WQi6HpRek)r3siX>oJ(AT>95uQ6@kCjAiYfN z6QUvkTp$)A5|=Mr{0l`AsteQ?*=R&Ai9Xh2cO&JndWrm&{k7ub@b38}fPy&Y0@Xz- zfIQ$A^3U`9|M34zfye?!kMc*<|7jqZI86n{9m49rGu$tP_cD=vJ*XIw3_fQO^(PB!WMUw-lL$NWFhO44N+f!9Ne%v6`uhc{JAKRlufV(-YS{vP1> zQMs_H^^%^$=KPPGNLk6IhcA^&r%hC`EF;SB{9!LYW%^p%e6DSc+I@V7TPgFQzruZA5qlXk6? zGva;;Xb8$7e+lr&a-13w?-vw#O<*&2*Xr>E>93na6hevB&m+VRhNH)iKaU+fR!%<$ z9KFvO49rPb>E)5$i?|-x+ICH8|M1sMUH7Gbz34q%={vofuk+CID=EA5$vNN(FZgrP z(PIValZfm7Ij^&XzrA{$RsQW2^1*S?8(Oxy*M?_RUQVVHqH)npG{1LtJ? zl>b1s&+)CU8FJa$ewC|5#q*Oqs`5n4rOyGskvs=PUc26XjUMI)accRfm|vy}9D4QW zAJ+Bgqc`j;XIOI%U*ug!$4RP{!P3K)l;8(P`y@mEhP}t!a(F`n&8;$Hy5dFGbAY!L zMQIo*5`cY?Mk0AZx`}n(=S8OLjpvz9xYIt)awlJ1{^lLNe8H!hb;19G!xQ=oPM5~7 zzNfzQ;ysP^)e41n-K&5L9}J<=$dcp^WKVr`CExLPlKlsmh4F$|gkRYFxIvGOC3RbO zp&@ocA`Tm4`fzKy`K~{dtts2V>#c*Q7emy%Ll~}00ZaA$E!O0F@8}FYSCy|c`01T8 zjtq>Utyxi6F;^eow}q|UHG6C zMgo5Ff=G=^2k6h-F%+R%Ba zb!v%!TK*OICtRJ<`UyR=n}CzPy)JW#c=fVM-Eg^sRHo5fJjT&zx&#I>-M+ihCSFV4 z@&0IIRc;ZKVXY9~F@`0HL=`(MEzYY&fQ?trsxy zb}l#-S^MsH`R4hzOu39KzSpRfLD`#&VSTB6L9eT6N6i9b=&^eRhV|W@==w&pt)9JC z$jivD`{=xDas1x779BNHZu2iaO?P5%43LO{L6PIAl-==T>sN7m}b}N#DN`Km=@v5@W4A&>K zGPrb-^%BC-W^P50wy8l;mBP0to-^QQ=7^4bH&32wUNv=3Nwmq2AH^JW-j*>luk|Xe zH@|__#NqmWLZ2_S#H&>5P1qd)4^kyidEX%|R|B}BZHbi!)F)a@J;f6Se~pD__Hw_n zRL_Orlse?mmg;#UI77|H{tP>JbJcZhS--UUkTPj7P$67{12}1)FR>>4D*W+QFE6*U zl@PcOLObwmRz4>#Aub^+c&4*c?Z8zCYb`!I_`QJZdQiaSfG`ZE%Zoo(&9%&Q*J2nY znYp++Tt&ido#O2^izV8wY(C@Me}xoE&}|Q^z+5tz;KXZQT+ zAVRWUaG|r*mgQj@tnw~3+5QSo6WTh<|JJXV5vv5kEkAyEagywux1{uRSjli8fmY8| z`07$5V_T82qH-`;G*x!V#e1{ARv%}|z4x{f%XD@-yHcXmIg8I21CpR|y(EM&Euma; zrTXOVPC*?*@sky`=hDzH>&-(jEMBs|Sqc@@zN*UJJdut*mTc%w+LySDUMpHkVnv6u zWnInpe_FKY;v-eienQ)Tu6}@-PY`l1z6V!JU+i5{?ZHyHBpn;Tt5c2*+u<aC1{l8zwh)Qt<~^(?Q0eHr!l`od6tm{V^#sv%h52HZ z%GJ*SDtKQ6gR<%IQ(VyS$ZY!SPW^$ULSnlrnAqO=zIAUP|4wdkfHYY&+I;%`nyrqZ zdI-2;t+~u2tmuI=JZmXQL;m+znofA^|J0|gaSx5fa}PYF3fVH4hVgg!Pjp)s*Il(A zqo1xtqB7V$^ra6xO8xYAYxaaZTXt?n(HJ8>_tB$-Jwx%rCkO@=?2~O{@of1XB2K}( zRVBcstiRV`=uFM_vBPBzSO4xPK%WByW%N#D((rFvB%f*<9}w3RE@b15BG~?(@%!l* zhds@uVYuLP0QYY^mGaI30u4HUO&Kf(6$<$NJw3Hb{g+X7)?d>lG~^TIc+Ob0*19E3 zpvN{i)ZddCAo+OI8Sh^m<_vm1PjIoni561rs4Snz%6rC4oM29Q+ui4Jc`RAlWxE?1 z$xa*Wee{*)C8EoLb4>A_PZx%p`CXzlj_;XWi%Wrl9^y2LT{2Fc?7P%+hYOd$^tp-N zx=#+?=k1KjeD=kRb$xgWZ%axz4MbV>DKbxKrKMG>=egTJEkz5X-Fe0BQuGkfriyyy z*&lh<=2BHBrPQK7OL=X$=|4@#SLH#`jDYkcFDe}`O>w3yDSNBTG*R7*j}YYMO-`uj zV*UnKj^QfdaH#}wKqgQRR_zUpr;DtczQUnb^2adSXSNxFJ->Q*S!HDNWguXqxYb_~ zp9D3y%H?DyVM?m&)0h^hi^VHo z%L+0;vi%@i#3ewBPF`a9SVCi|rOMQA`Rm(~8$%beHDvD%Y>RPJNBpA({vLvq+mL&9+UN{>dwRYDR~P$pHP>^Uyp z9&iHRC(SAkefBe93$Sohg_Op~yXGa!>MqNJ$>@;3|6B#lS<-ovHmLW0fhYIe)GhqZPjA+(Cb8 zQR%HER^T_sS?Psq-td;*!1e{E9Sw-xJJZ>Ao{0@|KL^Ap+`(K%@oavQs_T!L=lO>% zmkoj<6nB{quQI*(r{!P3Lz683R&4x+WS{MY89)#ZA|moM$KlR*jQ3Ge1_$mzgO4Rm zRpmr!F;=))fJ#syIyuS%HWkjA1*wD9?P*c&mUwztRqyi&^e8G-qXncH3-Q1m$jxLI}0sCbhR+(f5i^b9n##Z z*-s;}luGgBl0XTVjFoG$(R%bN!Voe)Y(y|_RWL74PVO4WfeDibXK=iNFQ9i4l`(32 zcl7-dqPL?m!L5fWaX7Ku!AZMRGlyD2RNRS8zXAy?bu%t7N+`9p5{!HbwWVDRe}-Eh zBJh>gnLzsaH8XChXg{e&(TkdjU6amE)w4#R*@1+aUN;V5o%aUM-KjNwwqvw5KUvq_ z_dI3C;4U4Fd4Cjh0>#pF!Qo$)-9)OB9Syf~Lst8Ke1GAUN+soSx^X^evT zScS=#!_-qRE4Cky8_{>n$v_90=W($a7Al; z=ZDTwdqU4iB{G3zD)^UP3fuI5=M(mW1HHdj2G~tFy)Xv+GG8LiI{2w3U%e63{@}o7 z&4N!QpV$9Qem*iUCkakkP&8C+%bpfif^^`?Hq^>CRrwYZvUO2~&5)HU8!|LLM5K+W z;jYxXh=y!BFYHCo;<(CJ!}p2!9Ih>~r|ZG5#uK^+M{3HX)2eHvVX=8bB{q{J{Z|^< z8{#_4BCV7p^Rg;}$70-g=+pL~c_{$(k}{Kcr}d zB!|iDVKhhrv&(*|kUVY)miAV(XO${)h_<6U+aYdKKcVMC;d+*P`LXxU!c!Y*k?u2y zS{q=yt(B+$?Kb<1e?%0fdXy(m)vAju`X8D7Q@gm#+ba9h_+gb(?S&6P_Z;?u@H2OR z;W6icoBM<}o|NEjM=d?_TxIdfdkF-AC?IX4kp^V=O-^vI=6Rg?QpLdE0;*^hN7)v9jJ11uatqtnJAcaY^$6ja$tW8IZW1PEYO3m(jFM=}IJE8g%H~a)Z+%m9Fp6K$7nFsF zi6U!Ek_uJfjU385S$pguUagw^yY&SxpRRFeXv!C4%Jcr-| z^P)t4K74eVU&)$2H5hAKP;48OP+eusj@uwdzpV=QfPimfY?^rp|%HL|HRYfagx>{Q=#7>af)#G~0i*)R4^ zm#P>Gv`Eau%&J;C984bYmDQJ}VMD?r9pL$96}24!=oNqZ84Xj9_NVV>$F9H|atm*! z&={WszE#0hmnL`EC|#%eQ8=|jKZ4m0!RZxe2xLAxpYCOfo>BIofguXT5@u-BB*<&5 z#d))Xzp}($*@WKf;`RvQL5Ly*Ylq# z6tNybml#q1tvVO`tn(>Gv-kRUs&Qc-Po|4Sc036{%EN@050*I<+7wW{KA$oK!-KkvSKk)=?FY zNGZsnH0H?@@CE|!#a$F5*G!ZUQD$mP$>xbjQqTkCs)2Jz^=WrryLplx*?@RV91?o*=oFzu&V=>oG(d{!``i%2Eq*-;v#B}^SjoXSnPnh5)g01?oib}A zs12~G=`#^p2EOtVuM4CO76fjw=9*oTsTN<7p+5yH;_UeU8( zI(}8EYz1}L=PB0v9AXc#JC11c$tqht395>Urd#bqpGS$`E&84zsmddwb;%BgY${at ztcEvnq^e$WS33tt3!33(==8jV)f1D|zS^XGz9>abXDFxdq5+~d_A19&( zHZoMpjJ50HTH>4^5x1sJEmUMi;076no*MZc(_plj{br^E|NMsRYEblUxW8E zP$c|Kfp0lgDz8ku7^%ScW{a3O*w%6S(09x05J5sHZc#1s! zupN0tZC-tsZ2vh#sMBPx`60Os%~x3~#@0{qR2}BUoDh}HEN@4B?1O0eF@$6{4HlBQ(A2~b(H{2=_#y7IO=trJrzr(Swx#X8jZ$G zH;zOs2aHf`)rQ8tfar@TtT7f8pJd&oG^}O%wQ&x(RW9H2Q(l|Dx9D~V)v*f9YWBag z!UKP-u*+{N?2L~*JGE(&1seZiTfxs0HI-**`lsAHNkGe7 z$ix8^G_a{fR8MQ|M@n9yzt;FQSLQ3#vs}g3JUG1{RgiPaUUZ|(qHy-EZ%f7?!^Tw(39+pe!-wj(*EkU^ zs?P4|wU9kDvMw}DR;Y$jOic}Fqcp3RSqxFo@HFI4FXqs@$&u)I$xW-NR~qI(#+e6w z5Ek}00tHx z_ls%dsXWcq*WmT4a*av=mu0==<(;Cr3eql6M$oRsu!iUj>*!p}S4!#aPHOPwg6X`C zd5i9VQG%aZU%j{KZrAI36+3UHC8Yulq!PYhHJFiuiYXIwnIYOUD%33=Ma$V#mTX;dPM)I zi=%Hp@N*UT1~r;2_qB^pijnW7Kj)bLhbX{|@JbN;9PmB5at2UIa(Z0w>>PmCbbun} zCA<%J9%eBR?Te0-eng4OO3u##OkrA)izvw2fWH)^5~`M%;zd;lF#$O|Psdo^tjRGy zz_TaLuv@%ggj{^K=ESr0HJ>xPWr4PODK$1*w@)lGLIW19sVSzW!p0-PnO}fp&xwoh z#&1>nMCHq}X;1blWPIy#r@-4k#=T+V1$czK{Z#X@(1z_wOGa}e0&@w!U8;r94q&B1JSTQ)q(IQs&{4H1}(9E~F zAgurs(rKI|XcLdPRCqnx);la>f)^P*N!O+S6Z4jzR^cw@O3xOBh@V<}z1_Hq8Q4uX zMw-fekyg}5cf@*Hq2!JNQ$Y?xOswdP7T#d{RkUCoL87FL&qL8*#Ck1;6e6LGe7z+t z8*T%0KJm2NNw3coo~PRQ*^;lVlbKU=JCVG88D_PLeDsgQE1G+%eeltQ`##0Ruim`se5#@FvIsfy zaa0rveX>Cv9Ip7R45J&ZsFsQ0&^_RV3qaM93U$N`%8)|co7t5b1_){^^s^B?Mtf)$ zPzI|BmdVDDazk-%@(T{ODDML2JG~4-*&K#xUw&oRd zBjYusmXPZF>u>smBK(;g-g%6vbVmE7HW`XH6sBlSC7M;xSk|6aMkL81CAp)$?z)(3 z#w4b=Qgh;uRJotdMG)rpj$dbJ{#?I#5T_~-CvA2(i>7bA?qdQ8Gvx6#$or^U)ak?_ zzCX&XHV>47iAvOR2x)X3+;!-zAXO=4N4JRy*j8Q!_B<#GF;1euIq!y;#W|bSRa~;} zSs#(QIc?qJ2m1{s`8+LN>rr+J6%`MF-Cm>b*D)0=kQs=(SiClvwm#r}Vq_NU(#7?K z@GwiEG8aB9PdvHxU+6z>ZEu;I*(vVWhv>=)(A59lPMm+X(-kF^{CI1w#S4%Ahg*MY zccitBKTr1j8m=*Y$wM}80%bZooZmP({LM7Xr{7F_Kd-{dl#jJ@csi1u%0obszND2= zsxqRxm}kq$(};iS5l)}U2&ilC#sW(uAbbSKR;C4kY13S#%ZuW}fhlqoA20>{n)xnhx-`iBm~ zbgjk_FrkQE4Ud=1)$JvflID3J^NML;BhS0M(?#u~ls>z*2n@)r!C6Fzr7CGTy9KBv z!4eZeU&1TKSK$wzE(4ui3KimwYRqy`E5^q3dALSTMayb?;CNEQYC*y2NDe>K3oL_? zViBt-xJY)&vjLwww$oI3v^AjOL>S7pd!+IL+p^5IX<}-2g>>7?-5jbEgn`EBHfM#f zOiuaBM2AlTgI+uL^9pVRode?aB34)8TrMxrFOV|REV|Wo6n(@~vNIEK_dGi^3v%ff z$ZTo(3W{;}ycHFqXH6Up%lt*ysLfEfQn?X!ut7us0~di`-d1vUGON(&*oIqeMhWsuZw} zWYx-7{q=lY&4Y)|UQb8Ox+4-*TG_GPHHP)96(+?V7l;2y!M{NNCHWQkzqRWGQM(?y zAir#IA+3d{V@oq!mrz}!U$chqR27Ks!P;gCrYveobs40d3&hnJiZoJqSB7hAy zl{f*%B>3h!HPky)mf;iLDb^Vjpzj0Q4Z3mhH&j9b#%8SsGtbC( zY76t?BN-KI)V|*`GhUju*385RG0UzdqGuNglNo#&e3^d)Z`;p*2)rqX0H zi=7*5*m$F?y(Wz~?J@*&P2WeAaLC*g5GBAsAvFksv|qv+KU`4@m#=^}tf*1YySbMS zLC&({eG6nfy=GqxgXE%ZTpA7b}58~kx~AnbHHoy!7^S>$lNkh>ia|s zF07-9wrY2C+4gILktc)%y$LCzM&;KC+1SGI&hh-NKqV$X)IM5wfB9_;-^%cnc*E+{G9ULKSc>yb#r$;Xr86&xzB#> zXmJvq8Cl`WAHqbhNbQeTbbKaOu5r6_F#IB)G_K}aLv4f1bF)=jWn;RU7P}dYs|K26 zd6o7X)EaxM=|B%W?^(Ttggclmy(-{D_K(64?ARZ6XZ2|)*AEZ7|3#wysS@qOIUxP4 zG;50)R!Mv{oOg4Ij2g3?6ARkDf0Ayg8QA0E4OZIEEs(w!PZ{k^Kaj7oP1+C-LCf^*08?p=sZ*cr{!tG|1AW&>Z@BQW1CFlYU7-=Ammnx>JpdV) zsZQ7+?=r+(f4lLj=8SEW6$!DlMvk)Cx5dsh(L`n(B+WJTe~K|G8lR(SbVX`vN`uh! zbG7!KxHoxzMh0V*9w~{yEv2yKsdp@WDR|(i_?0FQ3h(sIO_LWMr%Q8F6-B+~i zKpJ+PrEcqbvlgA4X>IpFOgK}cK=Tjv%;_I}Jg5A!8Js2jKMS4plMiV-J6vJoeQzcT zO1XL)?ls;k8c$s1&=WFRo8j2!wW>p{3(^P#3od?6g-%f7s|6_;Gz!`habA_T_GPV^ zpf4k=i?KBQ8jjFlImgVO1#?1Qi%U{|Zbt^a(SoW7`?}c8F?vcUJ{iFJl>rGhWSR!u zA%E!{@%6^H1gTpx^M%pP!)RB?43xs}CIzsa(;J~;&-HNqZ1Gv2MA`*j37`D|A+?kl zJ{r|DZt)|OfcpFX`F-1y7>(UaC7T(o9C`;Ea-l+I4xgkZ(CNu~1~tuh1d;<^hKXf@@CtR$`<^M4~~%tt4KX0ZW>)nRe9x2B$^CK$=i$kaSB< zTtQCm!EZN5)B%W~%&VA?0s+aDIz-EeDWPMB^leQl7v)w4LQ zvJ)nnSRqy`CZO5CGL_A;m1rs-YUAJHv2vbH&l`5 zJkAvUY^3v;7M~|Z^td5?lAhRvgDCT&G9eMsL574D=&i2lAHq)FQ5Kue3SY|U_cnq` zd@DSnb*wz$_w35uPtz}#p!=<HDku6+nCxOa-N$cDCP}ID z9-GC5{jq9`paR=99k~~M*M|FVT+Q_PHmL&c(=V#xm$c|bhlSTu(e>77z3}}va&sg7 zcc{~rnC0}_pq$d}1Zsf>6g#`;CwLkaD;F{rDf=H=i-XcHR zRFkv}T*d?1!Lqu(VHc#n+93hGxH{0f%4xkpy=n&}$J>OIA>&Th7!VO2;dX12jU6%y z5#NQ?To~n|^lK?N^Bp4y(ssEB7k=HPI9?{^5dJ`7|k;mg4~wqzoFk81qgnQy(B6%l3Aw?fk<>f}klxs>x6?BYPZv$% ztV=EX5z33`i)hc_OhNRT#oIiS@=Z=pM=XZ28YXEC)K|)RUfEo`v$%|{@^OB@@*wu1 zSu9hD8Zcn1G)-Qq*gqv?+}VQZC)%5q2IS^X5Yirg+~_wSg)6go>#VaJAifEX&I? z4yaMj@NG7x?PrB*iI~#ITA!4PtdT`13#9b55ox=;Xzzdv8EjpG{Ivljg<|h~g+7Uq z7EiH%@7YVQ4B_T3&OH!;>Tn9F=Oq~~y}YYr>7g~*H$fGaHnP9x(Y|L8&^mY4tl{vi zUl{9`W@(P=~&9eBc_|^ zRH@$_ykEyGYA-0GeLYd@eZoqKVGlwd{5k7$Ijh*ile$yfHWAJb*8sGe&%aFZ{AVJwyNq8vHdtli33WcLp2L^@T z51D7GuyL7Mc4I1NTIsR{MoMC%&C_(F`fJRT1+mJ~eOE=q7nTJS)9cnn!iFV_3m;U5 zX6VIsriE9mZo)mBDn7DcJbk)M1D z!m)B7b8Iv%-mbBP+Kz9(9YeD0hS)K9=S_2^CW;qz&Q@a(b}`6AlN2g%A>|2XXiHFc z#IyABwR1orOT8-*6nH-GTPZY=p$Fc+-S{Qkt7R$?TJFq#?Db4ZWd7&RB;Kz5>G!YJ zW?1$@1@=4@&KhYuqE^m{D3m8 z(^`%P8;;AH@P@e27ivXqenzTVJI$Ng`4~6ef_tFCm#u{EFHTD$GVNK$`y-E4{9~jM z^?YuZ+^Gk>0_yR(9X7XB1?pK`OAvDo;frqR;}7$nCr=C_tk)6}+xxgR@~nsA*!lRj zv;pDD2D?47i!tI6QhX)W$`F-8--t%TS&^Htc$N-O;MX7gnrm5kIGOGh!E0yU$2-AcNu3uxsLr&`b ziLNZ&m89CR34<+`D6Bfl8#5MOHz1hHZ6M=PGh9_pV_G&~YUt>-z=gqpO{EyI&hW&k zsL6c$sG8Z0d=ody%?8NjTp$jkXbR+KZI@^mC`U^1rde`~etf@aLlu6ghAI5SW@-Q( z5mI9ejGBTBei>zNY)o&yVC3b;-a_M~cf zq@m1PvKXW7z-;Q(Jj1henh{E|jW2#9T3k{Wf8)0Ps>#@ToP=+w1C}`;X~BjzQ5!)1ZRWqziGbq^(GfsNG_Y&5Ww=u@rrbZkjFjx0mQ8CG=wV z*l_p499e7_+N@7tK+x!pnCQl$&-D&>L4r#YX(@tlePhQneod?@4zcAC+(8&98* zfpO5pOMw&})L9c&KL=omQI-xhuP%J1{w{Oc=cWzn73s1t zk8rn4SXn_1xIeuY{#jIS-O(;Ll}Tb9F6JVg?bWR1GVQLg#=a}Gb)20G^QJMaWf>yG zNki@SwnyBnoywSnGYFwL=scZfZuZMVI(@+umZxQi(=a>tf?U*=yVmUwUh^(4{E=Mi zSMHpS0)Mr52{#CT40ir@a@}vx635UzU*5%Eky=!Ly4uY+smN>^cg>6MmkXCM#+9YG z+Ca77TTigrH(Of~iKLLNv6^2SHOJGDjdtyoj9X(uM(&^oI5|sx)Q%3QaUQ&?yU?mwFr-yz2^lmciqzI>Jz8S}`m?cZWzUJcxoP=jP1{bLX@fq2X);W1 z*6a9QJHy)*|6L$cip=w$5D!3nn()ZKqL1ZIF|A zNLxr-j(%sUF*&SvwaC&FJr`nIUAX?H^dsgq>- z-e}9K?ARtT7qP`tnf6~`%lyIR@=wpyz!YtnDKHz>R3H3d$|fPGLrKM-S}9;?2hU25UZd*K2-#y0L_(LdOgD7VxCV3w_=!n%1H6wzgp}WqlyuVSJv)` z7tMw4LEk0p#JI+Gi8uI$Hf&ePFgfB)Ti}Ja+)uRK(`1|09L=`l-z*RIv+5Q~C)D^7 z#9$bV=@zBQK!N~BDfJ`XJ)L%X<+f-V8=NK_4D9Wov%y}em1xLn8?m^z+e3AZ}rd@ z9r)mTB6TGF+Zb(7J^IJB{?DNU-E!AI{LCRa_3MS62%o)RbIbJFYQ6ar0=>D`xKZgoTdn+Y<6HR?42~@D$q3)^+mY6FE#7!+1y1p3 zz^NCBZ;zboZWL;!)G8T@Q18ufTc|DV-J}6*J);MD@ucngCZ7#No?yhb!+)x~G%kv3GwgWDh;hey66!>=cy)P+*b3gWWVU)r6D^KL>S9QK3On{>D9Gtq$+<6a}+4XrFNVKwzE#ZkcQD+om4=d5IN0aCF^L#$KgldsjV#9ky3< zcGV9P-^qsPiPJW~;t*xsW88g1*?1pOE!PnmgJ>(0bQ#VC>}v zcD5?$D1GSJp4iL4|`%}9@M^am4NMJx zt%8iGYN<1?6r&Jbw9ZhuL5mQqWU*)7B}It`tCznAc1LJ8;3hbIZV}k&%U(l|;K1Hv3PB-}ogdN~^i_R;ujxlD0~tvIh_)B}q>%H3xi8{rcI znYQC^tVi?02@)ds%84a}NUecVV`7h|dH7yRulfDmnxj04Tju5#tdiyCG+4xvA@Tk4 zG&FzM9|IPVoPEB&pPy3H$m%f ziEva-jCRl;#?U7UWU#XLNxbUQkUs}>SJx^7!B*;GNd+g_zd^nP*8uI8SH0#SOm}Q&X~aKI=sY?T>GDp-2WlMJ!1Lh@9**^01YIkDZQdW zY9^{@CFVr)))*nL`Osd9AWUP}T(dnEIC647gSQto&Pb2~p)x3zYW!8+n;hkDS)GV( z+x6=(XWVOITTA8T)WnZ)uMe4*#V_#X-mmN5`^749g#V#sm#PfXJe5~v+w>&IbK*;? zi1x40RMeCo`mr-?R=PH&wXZNFzy`lEV=*F};&$Ye74Zz5zAwA5YxO2M_b7b@HF@7E ze%E+Z&cc&0CuzFbvN7H{I84E6w6w<6r#YJ6Yez7LCs3VwlR(_`VGMjgTKXDmboYEr zzbMnS@Y|EU3Hi|#_5HpTpZgECZK}KqoX4bYVWXs3_C+=5L5ytV-0A`lI|E=uUaz_% zOYw~qgJ^B9oCZ1b?S{S|k`u1HjPy{ULx?4#{&4cu{!5h*8)SDQ81AEJ)MqkTU@+2P zw4jC@ZKQ(ef1j+i;IHl%GB!<<8OPJ7|73V3$oL_BzGI;=bF{(_HnT*pfKxewdFYIP z=fn22!hIy^sjcH;_)Io9GO)eq#+q+}G;zk_QOYXPdMqjCu-SBmh)YKtFWqDP8^+ffVG=R3x3QTmZ`{OD0(K{o#L^lU~$%^|w7tg*9pjy$Ism zi`iMbK}-(AI<~eq9ezz(3w<4bhalhhaqyFAK}6}Mf=fkv522z^ZBOcp*ONLg-sl02 zdq-8O*X)an{NnE4wGR^iTy<+Ms=yvqcQm->5vn5Yj%^!G9u-a7y*hE)%N&TmB^w+lEGQNmfQd%L&xW?F#onE64>9cAy$rTH)UyPTJ^YRmh3q)Q}Ke~XQHo89GZl<+=PRgCe|qrL!&0N-njJy+t0zkQbBlWREA?A7 zrh@4s2IKE)l~vxX1q*VZ*PlgQ7}X< zV_I{=jwLlYZ-IOclj4i5_ToKN{}O%(%ZN9bsUswin!eZfmN3vi*G7Dp@byR#w8o|6 z0iouw3Lh{ZbX+oI&$ek*Zt!S~(-IwiaP5I3qqD5T9T~7~h*$sj?&T7^sOV}Ml`rUi zzh8t}FYxOZ8Hqfm$Fg5O7A=*;ajnD~rZHtodGiMGazR1_UoG5{vlQ=e0Ol6g*v8nE zK)?}}*4fr7N0%ekxR3@iSr^}BHmLmYO`Kug&6qCiH3|ors(GlYSGyQ~iut;)+o1gw z<_h2NE(c-#mqtNet2y`<>nopKfm1-}Z)BeF_XRoZ}=eLaBQCLXODSYrgJ>b(=+p+Kx z4Yf)`?1fVI+hL`C6KHtOwt=ze4(FcDB^v>cPmc}?712)$a7+eynfZ~Nn(B;Pofs5L zDU@9}Y*bn)?_=mw`sDfhio2-~B<;UCVb>G;t(V7B+)Lao+dUSDL8Ve_JJ{#=Bo=mi z-lA9+-+^15t5{w=()^5*x@_y*MfW0})9(3*_+k@{5=o$;xW^{PcQZ5X8zfuEO2cB|<|ZX}1=|cl((QQ* z_f~Q~!8cO$PrU4xD+Km(TvaTl?kC!@u>_RUJfa%APH8D24({xqo;TNeV405UtEzTg z0)BVm`ZikmJt!_yKj@L6@13(~TxOtjj*QL=RhGJ0RyhhpnbC|GA{Qk&aTR{}EKv1W zx%2(%E|Y+Wsj8@5VSv(myg+fMWdE{s&w^HnJrDG419v`a>d&!Fvz}P{Q!N{VEYB0~ znkmi6sn+AWOHv1vmN}Wj@4s|abAvp5Q>AyCM16U<0@d}5?Cv07CgsIRmThv4Ef)z(swL1*D)sQ;|HU8Kd^`1h8$vrozgz@8@1|RQ(Id5 zABvXWXfNi6UN0$3WLoB9$Ey+4sVtJJroDAoI$r-v1v*^Y(MvhvglU}>lZVYtO z^8ae@yW^T_x`Y#oNE1PdB2587stAz|QGtN;5;{br7eVPgSdbT<(u;r;0Y!T6 zReBMmSHZmj^m*QWpZ&hw-*5liaLJrG{hYbE$;_RZOBQCE=m3XEa;#-$J!#?<&dA>| zJ|Hyfn3At6hI47sI_E!$F4z^4F_QESP|mZs*L$L)Wvo+pPfKmW{@qsmw!o-W{7Os= zeYHnZ>zb?bT*EKWytM2dTm=Q%wYOWhb&+dn=>Kmnen|bv0emMRF?VDy_~LEgv2{9a zrl!kyBt$ogf0i~G@o>5kA7UV+$Yy>is;~S~_am*Ru_&p!ktSYuo{E%C?x>&uXOcn4?4;zQN+qlQ}%qK#!w1S>8Suv)TD=Z|F<-w-K4`Uh6ZeuNZmV>UG zr){>DK|Bt%DL!w|$c#YVR&qJKPmImBE*6uTg~K~0`c?QLG?NUlaV0~DfVKCOJ&|K| zUl%7=<>){njMq@(m6h9vY15fGjpyQ~NkW^Fhmo3%Nl5K00aLcZah=rnwXVmH4tL3f zXmAG>UGh|9p^=v}zA`5BIjBP8LzKcxC0Odd3GFMDG8WZkN|c2Ums+T?j;My=k>zeS z@`ji=@i#%YIKx>x%W%VG8XDAN_B2h7ZHI#=+1?vMK`GRcM!_{^qsF5nu|!NCI0 zXCmPrkA8uWsCD;`f-ZO8a?2sPKg{|NcejaSzarN8bf1P(y+$;EqjkLcz#5HqJAvWM zymnqj?r+X)GP=Aye70Hj=G#zEklHtPr-y2RkDO$!+7c)aMv`y^@V_ty-0rAG?#Jtn z+DaJO#LgO$T3>9Fg;}r+Y{~1y+;q%ZjU1~grw>2aQYAa4`W)bs(vo=XQncB}A$!|2 z?u?L#XVuNI!)_WG+Y|n8#PImH*bgC_`@pK}J-2A}HwJto;$G5&Z2XsBbUeyhC4U+z zP(15;%T$mi(8<=Y?)qtfe#7hP!wPz1=|AefW`0gmy_4r|)T?Nkq*G8|voWt;%*;mid_xo6j_^ zoAAa?WK`0%M7@HTY~PiQ3oh9+&7=3!45N=*Dq=s% z+ZlI?AlgSiqB4-CHh!HOMYAVrP0IWf2q)|Vq1hwyz^>kh*lsRl=Dot{1BjBqgk?Q9 zQyX#ahNdkSZVnU1O5nyr>vj^07!iy15zK~P`hdIs=BLzpmYAB?t^JGcmp*Y>3k?itxxD%a%__U|h{GH%l zy1AvKfFN4q9T9XON#08|CsP<%pmD0b?R|w1_N#rCVN7zX5!8KRZ$uxqCaNDJrGd3D z;S_O1C~Xd&JP!%!7}Gdw`_lea+V``NH=1+dU&N+$=fx#=5ThqZlDOXJjRfW%IjmRG zJt5)YKRlj1#7?*=n=_o_Xi_wI?YTL{ zkl1zTD$$shk^3?V!l_U5*{=^yURYfuT9}%kp)6cw^3b6O!ug>gXNGT2iieZAyG7b! zVuaXO0{)yiQfjxWI!`L!0v$Et{bJ4x?^c-Emjnans+D2k#q>cYd2fxosp?-N;qU|e z&iF4^c-DLd&GloR?Dq=akP($!oI#JZ;^Gs*xvr%#6k4!6p zjYPp1_xb3>d6qP#DPS$kUKDYx{`g{%=&A{{R|#jB&20ue<-nSxm}lIC=a;1 zSV?H{J*~@A5xo@SEC0GTE!aY^-KZEwX{>l5REzr)QO@jhE;;7UXy*Kk+@OmIj=eo; zvJrv7rIuVl!}AcbV6XQXS*hsI$n*-f8@5GKHpO9{Gs^6dd<~kHHCBhJ1OjerNXvvs zs@}_DI9^#3TjNV@_4x&AizGu--Bt#<2?_4s{+|qX@|;j3N5xn8S{=iIP6fjp;-qgo z=g9Q(FA&9zH;H!ZRa2ae<649fx8~bX8uA2y0 zB!Eu-w4ACw&2v}J_ubbR73a|;QIu_J$Q6Fy+3|cI*efN+A$uaL<4Q3Xj?zn(2{GDv z7LdD>pSLLkoO(2RnjQ_v%i^qA70DzAr-#4U3H`>?R6FmAL_6OmzWFmdAsf#46R!uMCA_`*x2 z^8@bw0QLybZ{k*f7kr!T#Q(?~9MaI#OcAfk={w!quMUIg81_r}hZj6_tZN(Z8Ma;! zRZVZ5r5TG^;Ex|G{q*?_six$;PaAD8l5}?gmF24klrT2VNl*O5Rf)|TgY+Ts23MOh z=@5Z$v?k=x8x}Fk745FgqK~X#El0y*1S}RwH=4pkigs5&H@y*;?M&|LHSBke5JC!M z1?IZx&VBVwWLm12J)pU|>7j@q;nF;GlJQqqu`H_at!}YWG*6@t{QP=?XSlgNQCW5A zd$+k~eAi=g=chzn4L*%g>3TYPkjNuDVaJ^@SDFkuc}GaFS_Rb=bZm-m`PZF2kulq{ z=7ozB9L7ti&U&^R>9IcX>5}w<)=u}iAAR!dzqdM~eWO*!Z@Ql+hlkBaP48}nNlU)k zzJh#C@iW?Jbx{q4L-NLM_895053YTJ&Ft4a`zuBZ+b#A4dlp?kh{0}MRS-DlU7cCj z|LJ0D7>UqzwVif;Wnp1zFKS*kY!-&p7VdO#C1LmJgfwC=7zBWT-6pNE`? zQHA$E)XIOUX1L?~Gxv#6d#^{8O^?g-ET3}r7=1L#+dKxB+#E+}uvJ)DcP>;Tuiq{) z$A-c`NTVpEi^D}b$TrU@eT&VhhN%`iF$q1FvzQlZ;ZLQ~-?rD7eerZ8Zvb!87i3Vq)@zZep<3_>FAeGKa!m zwQjLkcnOzc^JK9@FlwDWw78^GOKE}U>tcUPYih6U+Jt884lwC~kqCLQPjtr|0+-lQ zc&px6R3WSeubeBbl+uzrvb^fMy*(2L(_IiJO_M>7jTOrh1yB~&4l+80-qP$0Aga#4 zb#o^>Gx6So7HLu~S-I9U&L2g&P4!x)xX_myYNEDhi39fhnMJ3pKg8eb7 zym)k@`M&RT|A+UsoGK6trWo3r#X=SE>qbR_11*7LfmrOOd1;N==q30%ywC;gPYiG%=k=h0TS!`b8N=Qg-nb zLkVT`j86I2b^SM!QC(jQihDRYAE?UE4b3Et4WLH#zprW->+eu~RqmG5la-hIdc*I% zpRaG9Mc$9dl?Cjn3XM;XL)B-tty*K-a;;ktc1#Cu5d{0}q4l$cATDg}nuF}P-6_@>xQVmFpu#JUJ7W7yE!ZUl*F z(@L4l$Ttz2qCa#hI^9y?cJVn5aAvlo=6n|V`3{nk{IsLHYIvKb&E*G$uaG&}Vr?b# z%}KW==f4o2uY&{?|>s>Z@+7x3yI1g|6%ojL-JeC*B7h~yT8~U-DQHNZ8YI1Deq)wR-pDbJrNj{am?~=s5JDNgX z4;J$ROlqH)*)##H;Jy4*%JL^!xd}8QbXg?Tf!E}R;FQ25()N_)7q?S|?k3Gva#L-Y zxh7Ld@fkaPvzI*v_;9-4UzZquqkI!Nm$Dq$<73tlC@5^j<>y|~wIiJ+PucxiFB(q3 zeWFg6!m2p&CD1bfbx~&-j zDZLvtZ_z%SvV9Wc0U_#;$8DGG%}RqF22wSpGr&EALo7lVP2B!|6~^~BYE(AYl^QvADYKJ#5W&?vKk zK;g>z#VGHkl;zOK{-c3zWH+BU;r0h*I2~Gpx9wMffA9{Kd=@fv*rBBu7+o>w3 zWY%YwC-?=b#PL`)8(90?tpjYQM50D;{N1c+5zQUS*U~9b@c(1OC}L@#Esx$ebn5HYIKr8epr&I05m)nyBxe34m$>GENhAR?BA*`A;=~ zRTI{B8xUNr-$ugL?IZ5E-wV4Wv$;}{Afk4#iQw{3)p4(g9Gu3}@%KlV(ai^*;Gg^t z#-Yt-Po66!4Pt(*qy#?*B>jpTQm62kg$HYqf*%-d1qL17F1jXR0rvd|$ z51G3Qg_}ndyi8V$bEf98&~#^xwddM+xk3-BPMY*FB?t#hfH`hUfEg&KNTE1zI97_< zML3iVjZ1zLorMcmB4A4f*2%C4kT^+Eu8U(P6MXuAPbQ%AWJ$Z~NXvU8LAOZU7Q(#% zYIBU0s4@(lzzi!JPp{i-F{Frw2Y;$vB&R(qSc;ymD<0zF8HIfkU)=S-GEB0J*mje7 zxS&e(ITU4@rk68oH(JVnJIyNG8RcoY1Px&3VwuwD@Y0EU;)(0NNOAiDGp4GLNxIIy z0OdqCiVz%h;rDCoQ+a?O@DtogD6t;$g;N){24YHY8=Oj(znP5e!Wl`et6c;~B0<2~ zs1Y3Fq&mR*3qjL$l0%U884{c01pEsGB~+ZE-*$s)Bf%`)t6=k=IKYmhxM&effnN&q z3R~RuYF3?MIuuPKUBd|6f3W3Dbqtc6TjxFm>Dyra0wv?lV_=ggj71lB!V@pLl_|tF zSVMaLhu_jX_Pv3|C9+$ktvA=K>+bDgj3?t}{Bb1tVyn0pvg_O%($G}EQ!I!B9bgJp zaVpEI5Z z=t0jDeefidT$@9qjynMqWEkL#yOm6#D^9gexBzAQV9h;6)!_v*N0c->~-bHu=Hw0S5dgU4CGb+GQ;J|$Jxo~uG>*Bm6 z>vZuy5WYAkfP&T6R0y~Ha4#;9IeXc~h(HC~yad}4Z`|)N+5jz(oc@Ce*~1COQl8zK z;=)`(0=zz4InxSM|2i=0*}dM@nck~V9g7dtk4vxfbyy6@Q-jyEGM9m8&3DA!^_%H) z%cllwZVa0=~1?GNB&P#Z#Jx!*mizceKJZ zLg=fT%a*@4SFNj~czdirGxz6fM-6V0 z=_yshyiCo|<)=}}BmT@k3%J6R_LgybEa;Bi>l7+|Y7uuRWwNS(bN!{mw%#vL7tYEe zriQ;juD4GX!RN7l={al?EOe-FvdY$SZ zC1X&_+ecH>BcA&gijsVZjm0lhe--c=P~8A0CixPr11#^JgA*??00kEBr^XA;0$!bX zm#y^`zWOKd~~4FvuZPD>G}<&9~a z6@x$Wr{?~W1%!x=XxA}97y}}->!gX7_AhoSPU7(P?tPNmK3TMOso*CBi1_Ny6b{t4A>a+X()$qOT6z5aR2sH+1i zy>L~r#B|?%{YX1Ck}!0aQ1q;Zfy46GL&lhj_a~uRo?bjh{XGL~xtWNNxso)lAai65 zFlObh^}y^TD)V?gY47-Di`E@cZpF^tlV6|$Em=n@*`J)^2^00-RoqC@C&-d|kZM-S zLkV|&EFH5rNPWqCV&7Dgxjo*0ojj;

-geq6Z_txC|##WxXGnffGbsG4U+aj6Q; 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone-home.jpg b/install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..79f87c5a43651e6486065583d793f647ea485712 GIT binary patch literal 4169 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone-medium.jpg b/install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ad8a49beaf9781158f8d28499f78e2dfc2e50208 GIT binary patch literal 2388 zcmb7Fc|28X7vB2}&dD+C!x0(JL1oPBax%~Jlw_XCRAw^dGvppu0}kpSWXO#}qUcs4 zWV(_eQ^{~p7a@wPk;r006=d zur~qd0!Rd6f5C==7aEI3qflsO42B8I!py>gW5(fF**G9pHar^+2OWm+oCGc|E*5rf zp2Gwl4gwcp{}K=h$Dq)M(C9-1Rvatg|F*q00FMQ%04pRY3?T3z5)bY@2lxR1fdr6n zraugeX2QT!`{!0Y6tsF% zW7$gyn1z?&`K!g1Pbn6WZ)4OwvI8Y%0|qu(Jv*Fq^4DGgw-r^zY4wM$?Ezlc5@nTy z^AWF35G1^AM_5J$9g}EF9&0g0$2f+TENWCWj>aAJ)+GY~JDig!1b`?I1=sWM#Lx&N ziU|ZTL?sRa#D(V+hBL&%d4p)g$mMe6P&|M3B8A?ysTFc>Bav(_Zm(mS?c0BxXT1x@ zZiFl!8Q$7-)2Vo)G9IfXK&tnL6l5x6CsZ^n7RL%aqg5F^^szc>KPX8WYD3sy*xmU?+zV=sZUlp+OSoOC2V6U!dUPU~1HKYHw zyP`lrztl(uwYkuZEc;0t0|CQ4tGaMA#aYX`WMth`&R%A;OZD>`TZBmyQof^dyYRju= zXHYuR)P*86hlbCQ4JK!<&1?z!t+mp%DXHeM*``Vb{9aKijK5m+4awcsJJGxsDm29? zF<;xORvuRIr|kHj(q8VvZ)Nn<4!z4|q?V26i8z}SF}2X{Vy?KQ%ILqbm^>aMm4fN{ z*(G{NTs4h{)8_R#q_eWhtv@5?jN1hQR%hnw?LT>KWPh>!ya!mw?=tjzo;Ns5@|%=p zj)zTJ5`yYyPp)+3YI&t%XHN7Pw$-eVbVX}!A!=5V zx_o#mG?0y^4$q9|?sF9!DHT$3vutcO=Z;_SKIilhX3tRw?n7Ak&_DPH;sFv&oFs@C z>XB7ax5gO!yInO&wT0hmpG^!8c&mQYcz&BT>>4%NdFNswyY>b^_p7^We_SEK&mDl6 z3OjcM3Ximf39>nE+h(=Z(f=jIzjb*%$`*OA*sgtwYHeX{%k9oRxGi#BBOq*qMp_w( za{MET_>;$egK%4M4 z`j##}5t11253MFyrs|BUFZg|Y<1iL`6=E5aWRy^~aq|vpcHV6rYu)N^R9rpNhGd+8 z@!cgY1Dxe8xkZBcl+US5_WWL{;3{*+xtR1OTPRIx$iXFXs^IFGV`oKTOs90nWrBS| z1791uSM%enOpY~R(FN^&#`Ei!{cz0gI)S(%F|Um3TgO|7YL8;ltq37mvp7qdiG`Q{ zD_CpcS|5lvu;2R7roHXwo6d74i|ws(gK_TAQ03d`X%4w4hklL3J zC>DCRz<4M%FL!|vVIyWtqKh*QBH_944^;sHJVb=?K8W0x6==FlbPF}_aYp)jhrN=R z|96fc5b(%>Z~m?@coMMBkt~Sl5n9r^R=56xBT%d6YqRhVU-TWscr3%CJM$B*2HdDm zpH?JH>~v^4Es}Uk5J%4>%5BMs<$Z#K1{Jwtme`Ox)_<1mhNTS_B@UB}!AlCV z0&h9Rj98X~`8b@hm_V(N zN`a@4-Xjv#^bfY#6g_HoCSEZ;Je$?YhcruDS#1e=uj4K(i@Ph^jaOyLbbT@fZ2uyf zVpA%6A4RCN)T*ih?%ua;ms5qm?bqmdZ$!&*4&EekUGrP G*Z&52w6dB2 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone-small.jpg b/install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b52411168323215e59047b065d30987f0d04e722 GIT binary patch literal 1371 zcmex=``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vTox*TRjy=s9O*DiH)Yy5h0;YP>Q z@c63*$uqf1mRQ%V`LH0@?zPR0<*aA&X32R=z3%w>9OxbqL3FPffSth1$Y{?fk4FI$ zOo0K=M~uvjESya2P(Lv;F*C3T3JEJ32C@n$C^;53PTZ($q+;w8lz8zY)PrpHOsn(b zCttlJ-u&t25sk{0kKffd=D+@wal@^;^WKclPqwCSRoT35zk;88%ypNn3+DR9K~GI= zS0)^`smaPMJQ905xK7dH_odYf+bZg&Y?QxrAoy^7q1@!@or`5J?F-#@Ku9^Grg*h> z&f{#g#ZT;S?QeS*Fwu|w?qP-b?|SyiUJ^LX{60`8d*bWfFQK!uZQ5ftZTvlJ$*hNq z=E$CS^&>QXme{XvlMJsb*PAlzYR@CfXLEaJy?Q!%`K_iET#E~sHv)rCMF1F?z{Cy=5?JU6GAJ54CN5M6 zENm2*c<|x}Sd`l zOLUmzE)}f4Hfd7f6zOYwB#Rlg9ZcXms%Gio9npT+OX;L@>%rUxjbF1k_vJp061x}P zSH8uu_m!DkzVpl%dt(@nAGvaHsr^3pHG#J!G?+JD1iBZT^cg^25?J<63{?vX$3TI^LWM?n5DJ{rZ=JZ!G>Ea~_&vo#g-*izA1~vvDC>VD z{&4*d8;PQnpA()puKxD)bgNtQ)$4fyyPh8Ube)mK>cWfs?RTX1Oghx)yJud4*`(V~ zIl3B>q~Dp$;hS*5ux+K_>gD2JOh0f}G{-4-#O}Q(8NZZ|VHuaKi-6i1TZ{haT^(Fr zZry8b4+%erZ&Cne;jbrmdfHlPwYneAJ@mut!U^#r);AFm=1Xrc;p7#$^tWKsJ~^k! z5^GxnR-KVvyW-Zp?-u`-Tsb*e&7$2o_cfc9Wz!MUuKjc4kAG|zT-2t(*1*Yse18A` Fn*fQ+-uM6j literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone-thickbox.jpg b/install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d18acc958d02fd3e70bf7ea14ad13048b94dc6b4 GIT binary patch literal 28777 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone.jpg b/install-new/fixtures/apple/img/p/Shure_SE210_Sound-Isolating_Earphones_for_iPod_and_iPhone.jpg new file mode 100644 index 0000000000000000000000000000000000000000..aaf80c7c155b4809495d9a8810778210cfca3098 GIT binary patch literal 27319 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 Ww$8)pYr?t51^zN^^Zx+ifB)I*b%j&_ literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-home.jpg b/install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1296372bc15c454a0c7526c46dedcf9b209ad3d9 GIT binary patch literal 4217 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-large.jpg b/install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b598030d0035bf64b392899254bf4d13f6b9fbe7 GIT binary patch literal 15199 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-medium.jpg b/install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ed4a6208b6d3f1c380d65524882eda50e08b7944 GIT binary patch literal 2235 zcmb7EYdn@$FSS*ZBD!KEyQ4JwosQ$2FXzK~*7~s4Z~gwydVbIUB7ZC&1t1qEXD0vz z0RV&-Ab$cl0!Rcxv0Ad(EqTLC((6NQ9@ zE&~f7F*p!`Lc_1>paRQJiUWv1%0~bq9D;z55PZL7qJ{6W&}|{UHY?Zc<=$MM&o@c7 zSN(A4)uXb^vc&Ea^k2Pd5E{N3g9m>zG1(YQJb0saSgWn`4DUhA&Ki1YP-C=TH;N(f zTf?|EyEde==CGS5ZOdSA41bIPkq9(; zSsSbig~njX6so$a9&@b~MAK(k!b)+leh`hAt0w-#%KFme-Id)5HWz^y2f(vf^1P1B zeVgl!Ev=%kI>!T|M=nq0d~*@rbzwRj&eI-B5mL0$$>*oXP1%~t=i`6!Xt+n7e);~4 zIo@|nNF~=TOYo8=Y9~8dO>5 zwr!7nkMIljQ}eL9%t%C)V){Ed~jU|k(Q${8{-n}ky zvosHON1F^FU?7*hQDluwVId)u9`m~;ND$QP)PLXSNtH?foOGUM%Gd!$Ev4iF%*GbB)hx zv!QkJn|I%$+j@5LB}3m2sq}6cL3rUIO~QU?b~K#n`-r|dIVZ3ta$NexZYZ$yby62G z2paP@+do=?w!xHHpA&Cq-OpeYry(<*U}IxTk6L8ELcB}=;u78#r-&KEc|Kr&sH>ew zT&(|+wc8?a<%b#$qocRo>`MHCS)&2>_O+MU&n+wNixC%OmulH{Tg3Su(aZ}!N}^Xf zhWxCBlWHA9Tl$@w^=N;jH{8^2m$9nuJ?-!5e-3j7ccIGXvl@C>(={3uZW$w-lDi^gb3Z)e@7^9Y#ujEGN<%hnp-$*GGj2L}XsqrZB&i;c7#lP~2Uan+5KaySX~%81*SeeKq5kUt;J&FmF|3$d&(1wI8eg%~ zYQj%*q)g>uK}pU~L5k=3oJEpB$w|R zMN=uZ246K1CNMUCB?k(%8p6l@B`IoKH%Ox9?sV)xBqe#fm|{xid+;wd1RW_J!|yB| zXUM$V?4CV+<{~m~EvDqUh?LZN&-G)H2H=AIJ`Mpz!$Dtc*>|n~7~F}A3&mg2ZMr$& zBZi%)lNECm@n3^h;XD`O3t7tz34sOi0Zpze`bX!pYAYvnG~bMTv3(!0;>g_|J43Ik z^r7Dgk*ln}W_6lYcP>#X82>Y#|CLN3q`Tak5cleQg6vZ(F*@|@Noz^(%6%N?C~xng zl}sdv6b1%}!#}}HhLA!V3=q9U29g0qSqMclhaqNqRde4`Q-U05v5?Y%dYk}$WEd1@waT01L~K|$!CfMZio-!I1_e*-`+~+mPQQ2 z&+`}lK$2DF0cmaXP2aA8VVlVWG4ASF!1SxnpW2ni1Z<^MYGVZD1oG^<`zrhQwI}-| zyI4>gEG|_U9h@?=dKu^E!fH))_Ssci?w>z-$}=1nmOe8s2h8o=HhR!IzaFDnZZ1)y zKw*1|%D1Txu9(+tqny4ymP;UsxvaRC*lZJ@yk{45b}W8;!0@f|9Pf?kR_e>oGp$Sm z1k-ubCZc@RA7^cCbAmqm=N68=u zvAW}s4WmzoP23x*-yg{`9IaMK83@OTlE*s60uO>ms_!s;cF7v#z|-S%tNnU9T9515 z>x%3JV@M1>`J|N6q<=bBn_9gROc?nJLE`Kx8!<7^djlxr1*2k*C{DyT~YU- nb8h#w2w(e(&?t<5kKogarKQ2tY|*A~thcMu!p_S9`5%7)*M(!` literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-small.jpg b/install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1d81d87046aa220a7830f9b5a68ec9b0ecae1761 GIT binary patch literal 1290 zcmb7CdoWyA96smny>{(G@3nU~Ry=kkv<7Q7LPDg*vLtASX_%OjvFka~R!p;vN2bb( zN1IWK8W9P>L^>fzJWIn?64huKAtEEB(Fh_zUXw7kXHB9>|LgCZKhDfK-*B+rO4;&4bI zN%3icK)`)(lZlWvF{TByo&+)w1}6*&!jR^1c=Z1+ofc3m-~b#L&nMoikH|)kWborA-Y( z9be2^&$W(Mm3%M1V0W5dOr6Ke)dP*mqUpnHAE@SkYMt1@YS&6_Zd40C6$I=li&{xT zU71pV0p2kIK#Ve$iPw8!KKjSM^nj z_g<+Iy_b>z;s9eZi8p>?08IclCit{ud(aQ0%t@Kp*d(^{%qSRo?SO#?R+X<?_8v{p_$hIUtHRT^?&rsk2;J{Y}-y z_-o<YJ)$-{n=|e?aMisoIPF;0arPgZWG?kH*B?KePtZE~pA600b+%=? z&1tRaE~hqa#O0!ozdN62(tO~NpV^0&ijTM;bnR8Edb3$Hydqhfhr1w9}+=RJJ()>^C4n`cR`h}g@ z2J+Kg8j74!pJw1ZPngfcPk(7Kti3XtEmWHCyEOPsc;nIGIF2vB*jz3hw0n$(0){c|rDN)Se$8MsdLZLLXcQY$b dF}5y7+D0AYRv7mACHKvRYibe}R&_vk>mNO^o#y}m literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-thickbox.jpg b/install-new/fixtures/apple/img/p/housse-portefeuille-en-cuir-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..80b3c0f5561b7cae75dd0fd0a515771cc62b60d3 GIT binary patch literal 24333 zcmeFYV|b>`vM~C@&cwED+sVYXF|qATY}*st=ESybXW~qpoXorSTI*f=eAoHTcb%VS z*VEUHzPq}rtMOD_+u_>)I)2uP^U z&zL~}fPa4byaRy%gMxjm0$@QtF%duzK69Q6{`UR1>L#ayy_5z26N-Ge3<{|w_48Yo4|0)asqZe_vE%maW(qcKqsJ(M}kV$AA zlIe7Xb|ze>o!#NiDAe#A;No*^mXjIGn(V|oa_g3?-E^C5jFDwO(qcU{m7}#5$0mDY zDREGLY#Sm@3F&l5+AYUv(k{I6Ry1yySLxjw9mRz zW$v~Kr;ZC%DaGUaPQ2Lka*^)jRZsAnv|H2FQ~cBYe*dkJUM9b72UkuOsWafU_7xC09cHsmUv%=! zpXr{i(G1rT_04;=_U#A2_~wgVO3m%N*2a@FJ@)++>BH-<>gla1{OJ<{ba=miF##ks zgOBx=bRF#B?7VUrO(yLEx;Q}esOX^BXtBE-1vyo{>3%cNdNC*)KF~hpdRm?6GjYa8 zkN&OS4rkCtd+L^dPLFZ2p*1JxP44i`*X7oSU35t&`(WX2l&5>96jO%C*=kWc3?2}L?1;yo}A{lpG$HfL#w(FyM-F5`U$4jo&#V%_41T<@=`G;=M z%`^U79mkGpq=P5sa_1b2Nw2N?%U7H(PC2!Nv1`Y7wvHvqiGV65pHLrHpU@FNi_^c_ z34qoOeH=UAigcW-+#QMF-K7^qOF*(nS(peY%`QyoOOBJtWK>8|W2cG3u%1YOyBjsP zct{?a{Qxk$8PKz@1@+02hjTkW>RO#-xz4|CKUs$EbDWXu@u4(t@#kca9|!Ax-`d@o z{x?BN58~YqKm#Aclx%YZ8O=kPEyiw{7-h$5P@1)rilgQJfh0|fDVimbVe&bV=WzN% zqIc=F+?wKVS%~Dm}lCAE}YPLT7@!O#0lhx>10 zpGys&z~`VleCNLA-W!R@i>obPVw4h6r1r>=NjCRL_!>H>RT@IFb2w?`N=`<7lDRlP zN26!#Wqqk|CyqQOdAAX*2h@M7;Tn3PGxhTe=wfQE)C}uWHu2V!{-us@jp%=yKZ?If z9;wN@UQa@bnd~afk(U^)lxQo_=&Rl9T2YdljO#U1MkX?oe|&9ZowT$tPhw{^^R_?X z2Y>GGmOgv>0MNKRWV^Q>Byq^jXuRgh- zN|Gy5zV-6S=BXzy?0u?u)=`?ki{#nN&VWdpn=|B@x|7zkky%hDM8k<lae7ptC7UCTW7fFy5Py-q^)M^8 zyhYRY{2g7wCKAwpTW_mt2gQ-Ok+~M4T3EG|zWu3qmDREpyxhuyEjZr>UDHLZ!&>IE z$|FU#-=jClaasaJg8lYc#St9I%X8LIvKvdBb5tb%ZD8-U;ws5B!c?qcRmN2=T*zNzei+5t3OgBcQ^l&;`V&jkJ{v>|0Z(AeKN{n zZKYVF$b1|Vj5IMag=nTo`$WUcfX~-GN=8}12nrcvArT2_a5llPL_-rq=Kow>uaeYN z3{-+tQU5nLLV%0=Apu+7n4uBNK?HFaTCm7Ys$9b6q%or`jlE$FsOZv)q+s^FUPq%G(co$KWZz-`yl$#GsMLA{20{1O1!sn2FNn;mU3}NPeW?0)tP#0P3o|+A<9Nh zKYWGskw(tUAXV;+RYzH!Vpf~^bihKfeTZtweZ%0O3HNeiLRfVuTd=Suh#0q_fE_W( z8Am+Mp5aTx`H~fSAOhCHx4>;iC$nShbarv4zQvkUmQynmpu{ zO8V9;6SDACT!WFeZyiUjTJlwA7AU`1^$fkCo8cCqG&eZsACm|~^#-U$N}FUb!`QsM z6pzB1nhN1T-x%}nPV^jq^O`&XZq8fFlR6(!_DqIB<@dk9i>Di06<4z|;i*=VSR#n=CeD-W%KnP5S+X>6n$%J%E@N_g8vcp-{vs!xoYutJ)jMI>jNZ@Nc~nnU|Q_ z(+|L~X2fMLc^aE84P=}l8wo{iE^l*O3S&RTEzNh5W7%7Hcd%#~;QjAzCMdulzgu9< zOq8yNneT$h9=xwfO^*}rhMI^uoa%lv6-vb$gE4X~Goc&@l5- z{YmN!zZ(KY5@**vk?q?D;5&Otu}B(k7;5$TL$HXc8bZ+)jlDcPBVfJhAh-|zOOj(@ z4;*me<2lD&NT1oDUbQ zO1x}&!K>lFK&+RfBDSe<=oy2c(N?AFjxvzoR}HfruW>*jv-hilAe&l#JHQhSon_Qf-+jH0?^P6 zbhYNcz#A$Lx`*+NUc1p=xcnJa(L@m_zkx)fEXUf5Ef})zSn-NZeaub_}R~tJO*bLrm;=8u}C^A-Eygf^Dc#tL< zA52ccq%_D2F3Cb^?lLM>mD-gDvVp63L^w9qTY;mYloFlC26C{+SY=#ZUHk#K9)5GJ zJw1aH_!6)Hm%@5-`Vw5zT<&{H&UF%v7S;+hkh3-)^&?YRW-gY$xpfg?eW@olyFz;G zs07X9yJ-oU=6914R3kaLrA!teiwkLE7G;xlakAraph!myIliivv6$g2Tjp!63{b#@EfLPW%xx2-r zlV%86Nx06N_Hxyn_7AZT#xKjxG5fM@+(fRO3GN z#G~+|akSTRJFIFUpug8usFgz)6wr}B)nyp8;!fd!8FVL3VrJIdZp7cXhH`FE*L984 zYRhDiyB(lI=f5V|(AH81dnQPL;vHGCCq~@S!|}sO5wQMOBKVDGVaY#juK` zQ?F1x@K2Qay1zq49cUkpo8k9+hiF7th(%>hz>9Kn_i8%`SXJw@%dMO4IA`j$QWogE zqn@%Qm|o|P6qHetMNhUKcS&!jBN4&!r`uYOj9S~e> z8k@9JFMElm*3!A@DhR4FO0@#wQ0>$|v(q#V;Q9cZX!1b*7!#Kcy)%*jzR38)Fq5W0 z-&uaKI2EDrn_l7+1W|$ESe=ouR$F%8Y-CsnFKoGX%D&`%XG+;!Ti3X2pd&VN&l;M; z`^3%VRpmP$DBu^62Etk|O@g)$+$m1Jx>6?AhPgVf&IJc|Y{(MN9Vap^zvMX=f6Zw+ zy{&>_?ev!{n=d54CX#|~mI)NJ!$|Wm-`K%MjDMV02szrxJd1q*Ft-mwpr9V(nbU0* zd$Ljv!}^`iX~1_T;jkhUgujCq%7-bY?_MbSYMiHEO0?>JVef1wsHJvPr&uSj@}~LBM^>>hoUMi z^jl*X>6XEQi!KCLWEyVV$p`WHt;ER}4nAh5I%OJt?8LG;e?{fyUGW1zPjY#4^VO>@ zu6xYGU60ln*@LxsqZ4axj*B_gBKvr!(z8MOmE{dnfpC?oK=Tb*(e6S;qH&e3VE-4g zq6ZgQffS31geVtYeu_O6b&E5sXP7)pOCyeFh=QgA}06)NEyHWjL$-)q$?k|K`sy0a{fp8KNbFk zsPakLBz(x~uMELt!5&2Sg~@1tFj25~e{)uD{5PC`A^&*@fZw+se3fX6g8GZ6 z<}>y0Ex$4HF8`|iKT7^PN60$lsUQ6xtesx`u>P{F&7=AWpKbcHQv7L@#-G|$|1{9V zcvIp7;J59r@d<_%83(_SQ2)s2e+AvUb$+iuJVy^eRZKs95rDS zuN~5`nypxf*EzN~U*Xi|k#M|XbV?p>a}n}6a>&bZ@c3FT*B`ug9H(Q_v|=^#7`vub zc+i&|Fs?XYfAu(2!cd_K*%T{2uj3&Li}k@`7g-;|3fmAB=NFl@tT@~=AU3IvxNm) z)X0H6tD=h_C$4soD?_e7s);Yc{d5=7DkLnwzTPZ%L ztb$0$j*8v17iY69o6%s)(F(S};2@=Jq+l+2!^socwSUSjc3u$wm8c4?=K~PBaKmb9 zQ1KEr@A@;n8EoB=Mvy$NddnxjHi{%mD-uD-88`9_tGVfX3H6=k_z0E(DGqy(SrL(Wzv&nwmRknt4PU%WY!suGTSnOp@plau68#qjxgqi>qDfGW=pdpe^14Ihx87iC-bHofteyG1tpV)g zkh8dV<~Z9RMKa$7hm;^ixtA*O`*hJ{cX6u0I2_gXK~9yc)ccy*_S2X%g?;+#Nu{ec zQEjJ5A*Yf{?JjwBSNL%9`H^qEXj_&N*?M&xB*@j~2c+8NV5)g-MMA z43@E=zqws>_M7sQDq@knJB}$tGh{;3xG>|J=fPyLL#z^JPy}*oTDGBWqF%he#FnIu zyg3)Rcnt2*s7|9WssptSVq^M{2*C&kqy|RvCdh{24JQ7U!{=qw0XZlxa6EAHKxKUR z=Z?lGh|Cvqu{r66o-}CsKzWKNGvwMrsUEYwN2MJ22;nl=N=PnRykIh88VVK#ivCQj zA~R(TNAjWRCLA%Y(y}am#k~8d%YEs5+e>+_ca5NM&A6nM;02mROSN(vCDkL&-U#{* z+)*%F@ioJd4Wl{AFV-H@>C~382w0B>i?`KOYRS~zXcqNbU0kEzVJ;3y{bRqy8!AE9 zlPmuwgoMC|Z(SlpBF;i`#Z*Vhi(o`6ZfiHjD#c}7kNz*o#Hh>nXjHR}FHvJjCMofd zw#E6H3~_?Ca%HG{v(7s{b%4v4747X`-Qs17v}_Utgontd+gbo$1Gg3p9|#Dcc0 zz8JoKs^TpnIn=jfM2aHJOd6O*C9aM*r1=kd{8&U8CvA0S7dCLmDA&n14lCO@Wth;v z5eeIo(ky4_@ytF;XVm=K0`WwajffYwl1X_4%SKdIvv#m^kw58KC zhPAsR+$^Zp>(}vX)X2kcGHc#GjX3fwDozPudCaKIn7Ea8!Ma4Y8)XO3ak?d8KdacU zJ!pHF*b7jUpcVw!D{&n*e*KcSL`Jat>U^VMAX2ft(zqa7DH*p2s)Al&>q}&U{9d*i zc!}+IC<14?IXRXjVYA5{_>kf4D>4L_rCP|i2hvBk{Xn zjZObBT-K(8SCQ)yC`@j$zVOkn^uWC{&2I)a3le9*Jg5JdCNY{yrmdDX6~>iLp-gd* zqa%EUW%-%Y&yABkl$)71hrui?Q-uz+eXQXXaaKjRD=o+=&CJiA0!K6`GcLhp&lfKM zhiJkf7jp~@JPp%27l{Iq3Nr^yer`ty1CD{a%BFENHEZxzBJ8tPWl%B03ib-u-kt^( zW+JaF?Pcyq#}+=_M5OV1gQXlL?)X)byjBav09P^)c`~}4z9E3TT#BndA$o?rHJm0~ zNg?~B*JkZDP|u!FD{MrmQvUR7zH9c_hpnJ-!^1VkF^$-Hk*a?@^Tl2y8@oMrd_!16 z6w|<_|Dt(6H;1Qr`IFtU#N5UH={`msB!i+J+EijKQL?U%4F+m51&W#61`w5+)nA^G zNi$(@WjKn1T|6TOZdnSfiiBHI-pWOD6!mr>-s7Q)^N@0$K}paB&H=30e+>q_+ArDO zWd{zeIvIM6+EuERtwowDDHfE=sOD;CX>w6C-Ce6(W5_ zy&+BqHE>HEWp}743G6W=QH?d7k@uECZj~&OUjo}(GGP&ZAN3!M(bfDo9>H0%P~Av< z|0%mK-*l_58bKB_1uCUf{E$O};d3$j7gupgy=zcE7LJYs?i6kO z5}d7X)pBThMZ`vK^CiKsf$c^WI_VVf(&WZR7Gqz%z!%6{$QL#XUyX_F(9b-s!Pc3e zt)g$!85y4rmYcNR5f1qB9qvbE_V@~QKJtrl_OA=bu(&dT;w=gAT7i+=6x~e1L6*?O-BpmPx2zUhd>I z0X}yHx3tEPuY#@3I+XTzkr~qq)pr6O-13-=*LF3$<|mgbKHHmL+Fn}+t1VC6V~s*A z=Vi->IDKByg?uI^oY_Z*Ed$+f_5t1lzYjgb$8)zFZ$)RA^0785%T*m;J(ig2?%>uCEUl^T1e21hoLw!LJ^%&pIV12U z9h>I^vM_h1aH5b3uC<=G6P0CKU&jUq?73-lT|0`QDRHS)Uv0e!T|6SUL@oqcQnJ*k z1{R_%_|-SxMMlX!0N4)6`-ky|3#n@s&1x3uO%f8?)#=QOl@lL;CGxv>2?Lrd7&&kP zWZ^W(TG8~33@_9*m2gpW19x5{P-Oudc&d_i26@~-v4?z`AENx1tdOzU%dr!a2B|zj ziEaICLE}ZyyS-Ja-#+b$D8R&wzmpnt!(EnM6YP>*BzF*nA^aA{kIH%q?S9jf^xfUEt@Mbek*f276v996@m;BA>X*KWm0yu_h z&7!L^dmy2W?md54L(C`JyaElgLM7y_oMytmtGB6~M#jDq77bb>z*fsv_Hzu_$4<^# zT_=M9>h7o)%B}W8#O;xx%ZAu0?u!<8RG*8p+WqpC%~ZY&&|z9Y$^%RG4xkZcvd@!EcCJY>x1MXL2tzn>OmS^ndGmbI+=vf$lo^ zW~o++mombRz&w6S3ljt0H<4|{`o(aERc7rr_0xWNz>j{qQYx#pXR{MK5Y!LGKU?|8 zpPn!8)MgDy)KSQ7I;>E#)w$EhA4=Rwc)r=%)(eX5N{F*qs@*!nq}!Ug504U;j;57i zZM2>?kv+dW-l5k(=Kt%0FWOKN9$ddP?`tg9s2zm+n_m1Z9_SHsYyKZaN9}+LnVSFM zD#QI%5QjU(e$p|L*;^INN>#mb9NtS|u<^ZM&D7*2xeI&Pg=lZGYyi!wf%ew#zM7KJ zf72x=FG0qr#NbrcNe!`9%JHwMF;y@PnXfoem~HePAu1Vo%6tzI@ugDM@konNv3cGP zt*ow5Qb`R}zaC6WUTKTEalM7i_*6worUZD_Tgu;N-Y_elid6N%^Z+cVK2O#EF&xSZ1{jh8E0}%97#Ta%azJPy?kppt8 zZG^n-dtN!Jzz1>IGD_a_I{yLq+PzK3;@hKbiM&(A5_SPLSj#(|!BdPdrmt;^@KQEj zi1JeM$fp=AhKPBmXmnhK*PRy|B8D?5*v7@v#0!+?M`{wIIP)__#+?Gqht-M$;&J{? zo_tQ_&dJvu9a5gW@zj~X^K3+*^28iHKHwUqL7wxh3Ka3x;+Xhx8Zoao2@2TC_j1%F@tmiugxn>Z^ z)&HkQiJ$NTa0>g^t{e@+jvFSg^|wgg6cSJ9V&l2N3BcZcZB;Mp^~+r%1b+T33Z5pJ zH-W$xmG{`jQzPPgkYJw=z${$qlJ5!AqD|5pp*Um5r##(^e)Y|QLa}%0#&>yOeE^sV z%^0uc(YP(&zwve-6}Y-nn*H3^Xu8W7Leha%RSC_ou02pD=+W|wsTfYKJgVUOiB|f) z`(0K1ZBKSop?i~76z=4O)a)JS-fz0i$#XI{@o*fV-p2OaLv;A-&=HYQ?E|1p(*efR zX-My_$7VX;=DTP#v-D>4-4BHFb(G1Zwd{RpQiz^_H&hnJWaX%$b5QdXY?^)ohcdc0 zA_c0Fvwp)o(>U+F3TJ>*6<_UppmO%1=){*q0MkP zcSko$Xq?gS5D_x~CW=aqCr%^G?=UP;9|!4CTXd8IW6X^RfQQHAADjlR?)pU(pl*TS zc3Ftv622-NYU26WtI$&BgAwa)1S^FPxhNGHkWaEkXHgVUQiBKbuxPwxmlRY0$hJB`gHTm>}BxcH?1kkSXXYQ@beIi(ER_0Yd1_W3pdLge`*0 zMWzjkvDS*2+yN5}0V^6ypHLxY)_4dsSRcDd+aJNlqJ{|VQqz- zQ@DC@ZNDq!DqJOxyV#>cdNO2JV?@RgaAwxQbndkXss~0IX=FX#Xizn|WJGT7P`Noj zYzbDCsl^x?ZChqht#jlw#RzU2nI1Z5^DpP0`Ivpi@jqJN;{r60o~?u6c3x~;%J@3^T%4;rsiI*7FpE@5Z_D_aLI(3 z0x?OuwpwFG`_2?AEtLa9WlO$cb-CW7(qSt2Jt_Z-1y%LeyXo^dv}=V*E{4MGZ}>=YXwu(ziv=RvcD=u#D1?e^!1_ zvzywR+~SeM{_2{=Z;ak{{jn;hj>N{r2NH(Ou#3>HaA)^h_KaqQ+gNL-dX&LX!^n3! zFz{E_w8lU^gvULke3HHBrSbk>mA*RoIFcO(&jY= z8R&BB62ul_Gg_EjIsBy2^81Z~ZG*%|OPsbcB^(DTd0z&S5{;d7aSf^iLKnbvQf_Y< zpVYl$7ge-$L0MK6c}>D`5g9e56Rfa^!@duw(Rh$bO4|$;9IwqEn{b({c=zZ+;JU)D z$ob2-S5}3nqV9=k#AZUU*a?G|p{RX9htD{nAh9#IGo5p^ao`pf#HtVF@YctpDXmNY zL2owP1I;hIsBg~jI!G|jJ-O9lySJTYVi{U~A?K$L2453pk|1{d{bE#@;u6eJUEQpI zfw=fA=TI&K9d$?|Np|RKb~-dlmW|RF@TCO1=BC=uFA~vP#yBue^d{2gj|l~?%-d~z zBQvT+FNk4%sEYOaQp*EZ3AU$ZiN6TyH_`k}@`d%XXL}QAgH=0eUMC@U(uZ|3m2H0W z`kp9ETdNq*S__1hYKxOXI&X|F89yMFW>3 z`%@;9hHmvnI+t8g0h$JIFcqpKxXEo2omr)^gq;NQ&niLDT*xU!%k7FMYgrXTYr9F1 zB4L`YVSU+h>Sz*669@UpkqdT;2fft9S1{kaqee5t>5!IeQzNh{q%mjt)6B+u7OyK* zj_6pf>~2H2%>oeIm`CrWj+NWsO`wB1&$yGp#&w419NA>=88|ph*wH~&>A-D;A(S>k zL8s!WV;Wz7(F^z0OOl%qP!xn{^ZDpMY9lS)i>Fwxym=Z~L8VrZtnaMJo>CFU9?pB)7b_$Wue4+&m- zdWDJdpxRZ%Re4VER5Lm-<70^lWz=qh_r3P3B60`jsW{E^`l@$qs*?5m6!KqklFGsn z?uBqy33_mFP6Gu+kPdu5cXU#OR_Ln0$ zA-B|m6DoWSbj(+Vps1fWcSguNT*TeA*K|kUX}TqIE9%u0*7Np4FyxN~a=+JdGix!6 z+A8|jS$4G4HfPV#CEBC@8d;K;9<}$9YIHxEC9O2oWu&DcO}ydOejd{zMc>q|p!<;o z!=hWLAHXa2zy#+)&>iH@p+&*K+A@67DXEh}57dU2JG6fh2NB%v8dyNf(bmV|)G^bv z^6iJ)_-dtOR>4C)u>c0FaO?v~dwL?}Wu)Zd%yJT=$G7pQm-yRRFlX~iM!ldr>!dg_GIeXrp`G;&*m;Z=%jrj`n~a{^VPXd5%|6 zMFB+~o)_ULb}6Sz8pP;j$rZM>Xnq9Bm`lu2QJVF3_TCY7o-BPcj9Y`51e2p{)CBhx zjeZwDnqMUw4tKqZUwmN2d2&(c^NfZB{a9avIn0w$ZqikxmXBp5ZwEy2liqqd+qU#l zK_YcNJ|hi^5B+*zyH5}q6>@WrMao-YFT6}eTz~WRPdpO%)$R{iu}4a0LIg6$fX(Yd z3p=NYgCCTnv&WdFxGe$wS8Ei@Ld2x| zaYyweqSd=0Pz9Hjdc|_Ior1l}Cy(KUgzE)#-}Zn^-g#4@A$ppoXlMoM0HoJC7uM`V z*@a~{FcX{0yRVP#cFEEv<_2i?u+-{b!sJjYpQqr^$9HhwqC=Fw#71~P35_#Q&V@2h zyCubN-9%%^A0EWsXj6d8&%;$@S{V3IN~>QT6*#D93?X7IUfhY4Q&iY!mSDrMgJxz| z)oSt}D?IKUsjsEFafMGbS6S7)KA6aZ zLtd?DM%b(z(4DCP`H34*{kV9Oox_LbqKe;)82bgGuX}oU*o(C){3rup*IQwQQn`Zq zO{iXPeCbb81>%F06@H!i6;EB4o@b1&EJW2dHAJm^N|w~Aa$sWY+;hl;;rLJ!vCd5j zzhAIXHX>}s&|;g>cUi@SOv~Z?Q-qN-E5T--C%r%ma|k2bkL6e z2%T~gB4pOX8|@?r3(t`sUAphY3V0~vSQ07Univ&Ioob-q>Db!Hk`&J z3IM`_+CQi`ZwJzDQsV(|hj@E-z=5hibz?=Moz50zC}^#Z=$leq7ttn4r;aV zQ?@CBws6vuQ7EkU`~`gk6=YC$h}7hJG<@9+oSqw;RvgzD7<)Q0@zqsO&=U0e_%=Cf z5zv<3ogd>9gA|NSbbMpn{5lx*xl0m<9(jR1YmsFIinh7)szwQPn*VOX&*W{{*Wa0O zz5ViEmE%gE1d{8NyGYA=?>_)J;$J-bQaKDDsr@3w>ePf|ek3pbpm;E#bufF{yK`kp zokJY8b{T3FB2{Z%KEZ+29rdcDW2obrUB zX11RdouI*GzP(8sd|pYZ<7i6Hl|Pk8Bkq~Fr76jB6ieY!nrQg+&fOb|v66$7=rr;- z&KHgY%Eb2dLvxO2_}wTk&CpSvwIs#KQWz@TyJNDqk~iDVQU0afDNGDU zn^;i1;~4%*md35RwaNF7t)AqZ*FnOrB5mu#gGa$8ZboT7?AsP%>^KhRo`QhT=y<$X zv`Iqw_!4s(zvabaLi-{?iy<0g>|MyFhm@F-@_hsRI!b67yst|Y%sL(O^2;SRQuDV% z5?8pK=@9uk2T%Ls4L;A3ejK*dZdQBlB{MU#EkWrmcprcp*sOtx(y8zLO_a8n{#SQ? zm`kWjsbAgCC{Q7!mkeaI+t^j{>u2S^MJpLlcZ#N-6_McAyh1YSW#nwO++@&LvENuw zB;o?z4}hbb-YP*U;J6;01A#l}^wu?hIBx`;cz>(k{`?28Q?6m5hJNYXl}?DeVv&QS z%v(G5@6>!HY;i~EM|tTn#s?M1FWx>&GncUCB>-+GkFogz2%q}iy+hp{R5=Tf8K}00-?%@y<3v^Q|}bs7$jL9H)jjf5GZyr6Py%}ueXua4ny3xV z>500r6Pfb@3)m#a&{IDVeuBXu)bdT#F@3pW8l33N3EH!I(vW!;rHQG+cax8u+L6Ht zwna+uWFvR!CQ+a{%9ABbs>X3&vXu;Dcpkms zoADxv#0Tm*;Fj@-@KbR6y^xNW@V$`O&LU^NqSqK@sKB?%{yleHHQiVKxxII(0Irz5 zxU1+}g3h~#UwVG!<}^ae#hX|WU23XzH$~9Wz%LfntJnA`OR5{_tl+L3v0y_Nuj1Ry*%Fr}nulc>!l(hgf zUxZ@(<%w#MRK*7Xl`8Adnn0V)drAVx!`l#tKNe0L+4DK=SuxtTk3A?>;RSW;xi~Y{ z@>N@Hruhatgnw_)BRFKa!uMX^4nl8NeC8cu=92)?@e8Ts^UPiKkzQ~2J=Lczq@q-@ zP%?>1`G0r&JYo>?X$Si2Xc*v+3m)NiisygQZKVAW&VQu8$%OYI(|bwJeGks-Oq!z) zmSJw|ZxY+`F%QNx9JT}I%VqoJ7Uuv6xqNO_|p!{Ah9VafAQZD*QPk4s3w6G zgQ=4zr5B~zy#J2aNva&-&75>)E;vB1Qvp`}cf_sbgZLn6LBG>O8U_XCt@O9QBff?y zs8~WrIa2L}b5)#Y(f=KBb6;%%o`0ahlVaS!kAX4#KM*Uv8o$W^xpaeHdP3%prUdEz zt&MB@J`tWZ>|xAZ54WQfq0RSyr`TNCu1U|mGhUVU2q_SKkNzKsyD@Q{M5(H9m7)kR zz)m+he@DFQ>G`I3y6fLKg045l2r2j)YFU4VCto2^j z;ms*J^NQ~Ofw}3`*N3wwMRSE>Z<=Z_sN?*1lE1@nh^KHA2XLE~yjkYFA^y(m-zD`w zQ{w-f1U~K0WQd>3$e(i!z(8PsnUp^b(1?GIFdS;8EM-f!1dj6Z+XbgFlWG-8=7^~~k+))%Aac}_3! z4fVPu4|ZbhMosk3Ez8KHp6z^@?rOlM(u^VUF#klfPUf<+$O9>&Wt{JV(qc+)k}(_m zlO1*S20eJ(Fr`h8-scwA`iz~CwBtR-wc~&>tr2r)n9yn!G zC&nXOGO+t-3)RG^I4@_q9H{OyjxVhh!7H6(>`A^tUk7m^Zl&C`-9aMPyH5QVus-w| zQc+53&!!|BzS<^UODZ0wqz?-r1QJ62^YSkA0r>13l0TgTfcSIXb@HL8pDC)D?iBHn!MK8aZ3Gxi)nct9`Fm5_=_XnhqB}DDa zCf26hGcfgh(WulLUV?p|4Vxzm>dvnoiqOz()7VRXcM&yqm*aG?>u`Wu@)Bhf|J)OgXgvWojFP<)2V^xuy4 zo+UUC8*Qu56pv`K8;dZT1o@+FXBQm>Ou5OZK!b^5na~9v%MwP|KaAISiABMyZ&iSw z%aUR5P@`C>1-YpOJ$nCm%_-G|+Qjw^*VTHpeEt)!M}_ct5C`~AIOC_2Az|M2qVz3zExi;PT`e`xQB zznLGCIpXZqIg$JI^N5Dyi^mk+oAJxOkKNW2^*gR_Si&pG2LM@PQtoZ!Esf8?_+?i% zr}@~gv`mR5Ts~4AF)FPwTz>2XvsO-7+vRL8G&Faz;nRfAsy_=zEIuFYNyH5~z$YCp zx`$45doWoZ>czT}d;&HVc*{a5oqGlGEpI`^d z_t-rcbDV{n-sw3av`VhD)q_+_b&BE=Wsn)ElV@ zTkd2TOpDmz2}c$4*=MZ@c*4BEyIyU(5bB}-9!d%kE*%)n&V`=qv)+|tlidot`~b98 zD3%X9aE(JQitfyDq#hekP@bZC8`1QdC~)pkYWwunXIhQRFD~K+NzVjw+TxsMRa1Ie zZyj5e6v{S$9PN_RZMZwY2i;Qr`#fiv|mX47_Kr3qD z-tH~vr-bKd{=SG+xjjvfFZy<~uCBHflqfSVsN)y+PXerfpqZZPK}s_sNKbD^E%{iT;Ns{j zTX}CdJ~%sRFg+xhHBP4$ok%Q8#6HAs*d%l2Y*ATa)IT5J>6!8p33FYnbDtJ z_lKs8kPS#@(P>ZR-#<;3HVVbiNK$@|qBEk1x)0T~yw*kvb~|zm)`#*7;vcw)Ui}kf2G8gmO0L_ zU8F2p%d^j`w?4SU@=!0uGw5Hw7)IRB_RXZHh&ZCdwY=jaJb(~geq7qKO?+Sl7T zAu}~Sg42fyvfq4lAmEHbUwLCOy6Z7GMm$#h2-R%P=GpS$X8}yUrJ9}>!myH{wbWBD zLpAlz;Sm>#%MaE-$=sc7Df*~)9BWVw2-`_SiD>N-$FuBOP?gC(NLv=5$k=EZo9=-4 z^ax6M;#@Gk7SiX&_!W2ON{^Pb>3m+mYzDK*0BuQjS2o<9F$>L=4p;Bl;jrTSD>=ij zdA25zqYyBQ5!-;tevg*}TV_sB;cE?_rK-I^_$YQs7H>OLd1Za@qmcEe^>_WQi>!~c9qRRo60ZZTF-Zrfm3erKlt@H)b zi=H>3dHt}zaU!N$_PG1Zp@;x9^>w^%gZ+|=KaWzS#riis*0#hhD`U5_Zfav!p)TIv zzHXDi*BGAqc3|<5>LN|>-v73<0#nA5#o>YU++SLzd$k3nuvkIDJQPfIC0JqM)ztga zjmu(s;~JikNEUJ0!r3}PNZO_YaiFG^Nzu8vZ!9c3N-REgIU)-w zD+r}zIlJY7{u(A$OSLi;L>Ji|q)Qjjp}obmoE6=remIP-tlps+GLqSrYr|`ao)CpX z*j?zw3#*WI2kz)`;o*?+-~gEULgh4AcZ7L#$A&Bp<$OFTlE~I5*W8*>*qA*S+e7dj zOsjVP{fr8jvT%g$AQUXt%RrKC74-7J!io1FuOh$JI94V@9lB+rR9@7)fy2hNOVNxk zuusXZ2Dkva<z4Ebj&IzE3et{UBa*jB^aG0N_2Ba;I=~bySI#ti zPY~LhO<71ynG8%)0=oK(u8ZZsP%lXkn5*-lCA^cOfE1>n%$~Sr9s>oAQbr1vtXZkS z>_Y~uMh<5yV!@;7ujt+T{o7}p(4wTqw;1(8l#C0G>)_mxQgatC?NBXwtm0-^I+BZ7 zeToeu>~pLUsx>fR_3s(J1IDD_2@=A!%CM!ggx3s7qPtKLzh_yG0^_*$YgqKHz%UG0 zd4=-^-nAm1 z|0|s@BZsp%yOrlX_*1PqaBTNGvQd0NT07|SI9gHB)tyvZpxRKO%emImfovnN?9A2Fm`OPC`IF5%|)`N-xy`C)5&KsTlC_nveeuY1j-ZFw|s{;VttNC%9{ zbU4k5nG^&dIOHDyDMNngbMv zP(;{MY$yP+gnj%>r<&IU@O^>3i{uDM8M5I>hmU8!Q4^?B|2wC33wVUs%*Gg)KtECX z(pQhV!zMU3f~G`2B#K))ITq3&7)+{C_$v&>B?g=fY-G#I{*tm%r;PqyP#L!#_Z=b& zTdkkcQb<8uzVvJKmjypYDz}O;G~LBU_^mi{14=q>^z#L5z+CT++^+oouU5|Up9=r| zA5OkV>>Oa2=VM2OLuD6Ki%}C| z0RQa*Y4IwLcm%>Z-bJ%A_xY`nl0}|5+8Tb%HMjq(nrg^Jy7`Bp+7Oh0i@RwZARD(vdH!@`} zoXNHwOojp@wWsqd!u*EXFML62xk0h>*)2Fu*-;Ds?(-dt+q)~K{A?cQ2gW7ucz#x+ z2)#n=og0sl;GMLE(z<|+mV@|l6J9eq{Xxemg;5Q|A;6NkZk>@)Gh^NwO58^-C)UWz z+5Q92$9}^ohY{iYsE4jnf#CGF?@71v~<>ztHQP&5`=SFqpN<q>D!IJrSR17p&=o$h{&-$_U})+!$t zb?^`H-;(|K!6~j<3!`k|8XV248$F6mW#H4^zKAq0DjsDf_XQgN8XebVn+fBMpV${7 zo)ZN0yR9pdlN&XSJww}Sj}!iAWlNY>&Z(#6#(6;udN4}a%vP3YFA5%})WB4;)(*$1 zX}RpiRa-pq@D>8|_aUK0gDyv(T7{Zd#I{(IqeFfXYA4_!*=~c}>Cbuw*4nAZhlfY^_m2EMxHrBcBHTR^&G{`x`Yx8ML$vG#8Gqp)3llaR zQ}oyweI7XU-Mj5#pOe|9XtXLRCe<#7>Xb|XI%bCbIAc}EFbUHapUp+5GCkY`6Uj<` zGHKkv>q`$Wb}MrcH<1vGotg75CoI{Oi?&%aq(DUaFBYV1QhODc`3g3D?{hDN#gL;y z3xZ|97spFO!XJvwp>)ub*a^X#sGBm}5R1@OXS$cBwIM&VH*BZwD$nGZZ~qi zRVBswUT-@bycc|~7RLTA06T&)&KnrL@~ALK)o}-D#oo>X5iSLijuM9%O}mrN3ZUI{2!da`W== z@gSQaci+33z-LV>aO?0wNfps-Tis7q6L)$&-rUMPw=`KMe52u>FvW+RY7Hy$`5)jz zqYaDgH#kBhmb<*?db7}q*28D)$!tp~e91yr9tm-B{<0%ZHc)72r~ zT2AI`;%TO%!S}@WhwvGnIKwP)$!G{Hi=7(i-a}wt7u(cr><%M;6}gRww;R#Qu?AGF z(34iH80*GTk002xIC#a{d8)-5YFwtOWe zq$Mdx+#BVsL8@hMo-aw}MD#eHc^tlfi=}Zfan!sL_mzLI6GLpBmbey?;@^B4$wE~; z9+GsCA=Nw+WsOek<8E0X2*W$evc1AG=52gi=7k@)hb6fA_IpLi0_g-VH2xE158by% zP0sTIo8la+{#J##4{1fv^d_rX4%}JO?UsvK(1MfcTO1rcQTy;j3x``b;&PXW$NQgZ2NwG3FAgMSf@ge+z%pOaJ5Rk8^Ap!Ng`P8_2D$=X8lgEL ztQzz|0sjEjw+U>xlekGPso?VaMySftvU<4$bP?^#y# zE2kGiONnY!E72D}>{n7^znfK-!F#YIE}va9e1`vXEmAEZ=joB4OsaU~xP^S;rAvJK zd<5iDDq0bDwi>~|>%dKhEHhKBE>@r0tx(-x7E?s^E3q1h3dAHq{p2DxpBS69K}+?T*Z*t(7N~Frblx9^iZ~3DO@G_misS#<8`JglX-QxB>hT zMshJGcUUE-!2r=x8|=s2Ekz-D*3 zU-iKgv+4QuMUsl3_R$XViYyHD8nUIY@LW$14e4^2roI6xBcE>k&IYA5c$;5H|MKuF zEllwCNb2zAL?ZaVrYJ@ncU=)Kel*Knjg{4pD`0)0_j|1h=3|1d4QNe(NmQScGWAD0{XfoUZS4 zDY3eq%~>>I@;d*v|01T2kG=t!9GokeR_fxpOXe@I>XLbb>Ga`N$dDCNxm<r6H_`5{jaDg39~PL=awkeoRS|q6hC(MN>B}HPFIlqr%)B_K>veSSuolYuMVP1 zWRoWRDX*it^N!hl-#52|Zju>$#pU@4W65y=?g~rWT+QQ4xYK3|pfU1ta$dxo+cIq0 zw$@iJ(Nga0-C&+*Z>~l^WQ%#$@2b7lNMKvh36AN#W0jDvis|$l?X|N21Lb#i^dgr+ z441apFG>zRU45fU#q=#yUxDs#70=Uy8Djcu28~THpAI=+wVc|qLl<9luI0#^`sAhv z+tXF0&tmsS5?sH`gEK4j2(4z0rk4%tM8xLwC*PMxPF`*_a76-{JdCflX<&6Nk@h3d z3>*7`8df7zMZo_}8FkBR!>xV9oJ6U|E6B&6yO2!Am9!PpcVrFtWxK3r1cp2U z%W!;9CEq5rW_nbm2uf1n0h&{ddEHyz1ZarXd4w;nM^)%Oa(VIL8b;O_;kgYPzew^i z1h^YV*d_%cRy$gDmiv{%EZ$K2>Jc-S6KNhjAm10ib~l@i?V6U(gh6;hh28w&R-=Ql zH0s6D>Fi+i>^QJF@!7dxxUk_J9q)D=b00zyP=>srTopXbOaD*+PwR6>-UK=3$$Ot} zShw9TW<+3Aw_d;|doh0e>`w%-1))2VVY>e3!79nwSiXn9UfGwuVPYZX?#au< zN=c@V(?{bvlpCH$I5q(p!dl54siE#Ih_+~XeVwM_UalFi<0|htw1~EkeTYW31-OuN z4ly&2P7Bc#*uHtJ?7PZPkT1HMfn{lSlcgN`z03OEfL3f%>;%?Tqq;PC{@X>K`z){^ zYc3(eE_DujQMB2paeou&5dW1kpmb1&@Njpn>m@*T1i}*A2ozcR(so^z&P!ogf5DAQ zH-R(}DyfDb^&hwaLNzs(SddK=s)-JV4%#a*F`ecezA2%>o>6VCZd)RqHg9|=>27R{ zpI^YCur&cyfOCY)305w+h9lYVB&=Fuvy>SUbOyx2ia$Hsccc&u$$;CM7oS>43uO15{I=+MKkL~O{FqUN0Z z(F>(-=k%t(p2YU88j(xXb>n>^)@~)mV6As71rt(4T9ze1Qa+#ZTwLs?B@I3f3Et&- z=oMA@0;X6XV*RWbcVS&qp-abLJIMv8-5DmmQMKh}9Y3ZVZf?{&`Gg+E5y+LN3Dr*++YIdMab%sp;Ap-?R*DcVE%a6 z94a{q_eb4Pf1O+++l54HZ3DX}E`yNLdoo$ke4Xc;S3#1S*z56Q1ZKv$!}PYu3EdOY zGcIqw5hyYQ<34AxIOi^=&$4y9U%#BevUUEy!T7U{KEFb%178!pSM6EctS3HAYiC>K zImAK%JWYrWi+K9JVD+0Cb5ha8L)++;=@IzUPqa)zqZS9^OVvzzWkR+D3*BpV>u#v{Qa|V1tsr#CovH8QVaNV;EhLyNDV!Nou8vb{+MIbDtC1!j(k(3r&fff7H44pTo(o_rEsyYvvz3Wqi_`p z9h%VCe*j@V;?Rqa!y?$@pb@H8^_aY)((mPc34?~L=;1A&xcyaXX=uBG_F*rd+~Fvg zf)i98X1)N%jGYXKhXDe>BVI}te10l=FGaPq@bIbT^DP4Jirc)qDpXHJkr$5<+7d4R z2XK_Ygz5~cBnFMR3#(=&Dz}P7wN^x3x`4;S@iQ#Mk`>Zm#t@64}(VZ z4WKLO+Qdqaey1^grHR$(t>4JL_WWt4ma?BQVYu~@d& z^+&=6!%D!aCH@gg^$%?x0t?&J^EPW}0Ut|Nyb7PN65Hj&M67U>SU4J>q8p%cSz2fR q1AO_vZwZVAl=u%YJJ}15(?3kwI2$7u6Qq~z{y)k~IKkxKkN*JYziJeT$$(+o6Kj(eU@4V;xTQz(02gXb1>!a0pl^ zC`f2{Sa^6iSU5NYL{wx1L=;3gIAly@6f|@U3=DWAENo14Y*cg%^uHGY0sE{24gmuJ z0fUYJhk*Y7TmJL|P@q8wK`g;QNC2QHAYdpUe+B{gpZ5t4_V;%GM?gS7?-3Fj3g$B# z2joBUKe>Q^v;V9E;K4uupvYjzpI10D{PN!d|2qU)61$&gHq)XmF#$i_Uhbt?T`sTT zwHSYBo~!9xiCCqt?6o8{9>detSq!r*e=s&(331jj=W4C>h;*Bi1abpOxsKU|;8A}_l z$3&&t<1(NILw(%@mV=mf=?%6TO002bxmtF$X=Y@xEErMDrYX<4E0!?-2 zTkizS?zuA>$tTt{k^lgn74VX$=KBhAM3ZqA!G{&gDqnSj4KV_$u7HI;-lCSd7XCy- zqRH@4TD{_P@nWWN-O9`oht0GdH$9;@4j1=#{M1cfLHXls?+e)%`Hf>OT=y-?xz352 z^pUHDmeV^w1TiT904$bWu0i$gb(Onf^~jhhm4;(Irdl%=`-xq-s$vYGJ?$ZrERrIZ zB#nHW^YzzRBx?H(Ue1%*i(vB0A2n$s)u=& zC#t=EyUp#@jm~Kw74VbP!=cC+(>crFB(6CZ)ynYH?Tcq6HCYq-@NxoPxp+@VwkX{iYv{KH( zSk+Hzj9K%_hdIxI%$)?V!hUm4VwKz>y~6it2fs z2KOIJ8nz-T9F6Q^>j_J8W$Zdy51f%03_<`9_LylJ>vGGq0v*^$M`;^7%yKK`d`p_N zIUA033_T<12~!&SLd`NA;i6?1G2Dd^`dS7?v?dL9*HQ752_wbElG&(00KkNHJI=ad z4Yv3PFfF*;N;>pMg*I%tEe+;ug^qBYm2|mfTZJ|Z1N&L5ixN5%bg`_zd8A@9`h;O7 ztcFA&0GVvBR~9)L9F9q-ff|HK_-~k+>+k6^mXQ3T0+ckUFbEwyxE~n}9DEld#PJh@ z|Fitn^PI>45HK)MFi3C+Fo=J&{ipH<14luHAcjO{MnlIUB4L5TWaq$OW&0{jN=8n> zBr0Yo@~P#aKi>@?5TJhm(`w6KMc{J+3MD8bcvx=G#PvxmCkFZPJ;MuYP}tn|7~(ob z=2jwj_}_)+(j&BaZlEOeiB28~ksFOWg+DXA|JD)NBZyJ>n~5YrQMreY&)cb3tWTw! zeXU1~Fk?WZ&A3ubn7(Rq!L3*Q{SmvuyN9czfi-Cb$AH=~Z|0(7UO=sduaY3QhbFlF@J%uagH8v5xT4>L4m zzk**>nqFJ#lxP0)EsXuZe$IYc0#kfX`&x&rBk~fFA<;dwvXKr{Rw|*8HNtfShw#eA zFes(gi)-``;5$j*p`P|n`|6r{vYj9N-az;9u|c3pGJjz?xvca21S`6#LmJ`*{T6mC zt8Pb%rQ#r#Qz$I-Pb)tc0~UEB2WeBYw^Zbj?GXLoC8yKJ_^4~2RN(KXtupPh^2SUJ$K8ibEEhC;5-Bzs{VR{z;W;Y@~lbV zlWV$O$yS|Sg~=6<^O^iOyXn0^IwsdSp}k^~>xD|kmBCKUbu#aj8!LC}_bArp<+3{x z?pTS5Di@pkISHnk+!Vt5jYn^b#m-J+!9{qxtSg1JGmbBKBoS!Ra|nr{y$QgcOoP@3 zEd2dd9ru{@7U`fVx@Cb)6zk_<&&)z;H?OF(v-3R+p^`;c?dPA`K>kX$^_ttO%2*Al z4e9lxr9uDbZXAn6-%dk?NxD@OGaIb8C9=tw;V%*ha&)1M=*okyKc0xi*kaTlHf)F& zuTHv(Id5N29r^Yvt_Na^mhtfKVEj|u&<>tU^taUG3ar=dH}DCi26}{b;Me~E&Me|< zt32ic;<6tI8L=;GqG@$f@(!%~oPaKo)d{6%52$=+N!dX~QdmK080Ji1!UVu$#M{4TzUadBws-P0*;y^rZD zvo5uN@jUW;MXm;hlD0_(3B~J|$J0Lm#oL?kO`%uD zb{BhIj_RpO$UstS<`9$5AF=g_&6-U6An?{!zu&gnR^Ypg;rexp4}xL0XVYu?qxWW( z-NX6G!Y8mb(ftpdg4(>XQWeN^^V}CJ)Y;@B6m)I~UN-CJCuH7ie*h~lo~?fXWr2;7 zKs6x7iz~j;nya3YGBfgC9#b3>GjGY-z(+SolleRE+PNHY`$57a`x!ZF(} z3EZB1hu9#RO5T_V(4DzKkKUH&QqJWJ~GpAA9nZ~`3(p|AiC>Ssy`u55*liQ zI=#Ael4QPp`H+)ng&VgGA!U)0f6K%$p%X5f|9&dX$gOUz{H_l;wp=o z4ra>~g!LZ&y#uuC>pDTj8F$!TUhV^9$$WmG+&Y9;G7Cwmbd(w$W6-hDpmt{}hWZp1 zWrg4;G!y80xwYp)~n>tHufQ38s}82!b!w*bz#i3QDv~4a+MIiX`9 zp;c}MAby22G2Q!5ppvu|ytHfVt8$d;7x6m5j165RFO=Cx#!j;5Z)j)ci_9O&-IHtU z_?g9#n)^VmcEh2yLY#Sg1)Ca8yo-T)c!BC-Y+z%#h~wj{CA_99 zjL%i?-3AkZO&}aOB@uGCd#;dslc5XP`zXv#p`LMHq*!RgZ778%EOt$8op+Z8eWJz0Eiuw>ej=_yC zh9XbARAqE%m5;NdE9e&=ln8kUqstC_W|~wUDlvNcg=sSq92AA9L$MsYc;=DM2Cn(y z!dXco@1kw>w{cWHhHbHJGrcRb9do@`vz=pu2>Bk=9LB*?gUHDqv{VFTH5IN3g?Y9Y zrQP3jHR-NRw^wQ1dh;t2?bwqnL~*P+|TjPm;| z8jWE%liMk#pa#j8t>7W!I!&NDErwa#<3H!vWjOrHTI+w3)zZMLhnAU-G4&$L&nkW|5Q>TW>lI3C$>?i7spH`r&0*4`=%J7r>?G9NlW+Hx4-p20kkAX&zGUhk1)dk8(1MCs5W81>Lx!y|90D$#hI*0}7L?!qj>E8JXn$wumR)G+Cy?f_QW;d{kgY}%Z6X=QG@GHS4B}& z7P8@PEj|UIs25FlT!7tT^L4Bwjv|E(YD#UFo1Y_1wVi!H=p& zS?28#Pnxl|C|ayw&azRbERXyKmq5y}Te;crNGL0k={_?srb?}VRenDLPnY0!TFXc|n7zH*;cZrEMm zBz!cO8$Fs_a1}gt$LH>Kr|0g4aLIpoP$})cw#Fi&&Ba3chk>-t?Wvu*($Ur#f+eth zm&PV$#2D(e(JpS1PFioFnd?x>DJs$tb+g@$Iq_f|VhrDj>R|{&W2>MW@c>H>1UX3jcq~mBL=fAQ8NyJO>^WPK^TvN*l?q6 zoW7#2?hE&3aM^H^nuGA57WMo<*JAc^lH^@R$O?k#1sn$ndWS<|cOV3xi(ldfSgNKn z=`>UC=JREWINv3$*X512SIiLU2nAQO^+_yK0GW+@=a|>4Z0h7m3S^UL6 z094mM013w>Z;d*E%P7XvJ?zL_PF7FdrTo5Xp8?GiCtL$(yT_&y?YK&xc< z90xo-nkNcTreo}7G{V4l`^^SqO0Yr<%jO|%WgF-(f}2Zj4qppSs2r6oCPry%=Jp*K4TPpF8`Jsa#z4*-1!=PV zWYtF!Br400kCid4K7z4Kb;OQk?};yAi1ygwAa4v&PgCOLwYm$uRj3KY{Nq&(!H@{4 zatp`gaD0GRR|AB8@7rI*i13Gt_e~b~C{-OYQ-fv3FOI7hDp_ap<<+Jc9_W2=Ys=X_ zDQbm{aK-<5;MOXV17amAi8<-0xYgSk8RGY-A6y>quhkB2^{HcE6)FnJ{KPik6YeJ4 zIXYo-Wx0|)DvD$C)noWlTQy06{Ata_nmpI?ei==(F;rS*zcfN-E>?IQaAxcp4&T<|Xsi8V=qvce#!dbC{WU2rQw&0Ali} zj6-%=8;u#EEceapq;I4gVU4?W-lh-!!~EibF2bi;2~!5{OyAjK>Zl zodOWI5Mj>-ZxxMl7$)D&A`m$FlidWsW=hNvNu5{(9tG7NAK!F@*Q*2OG(*g&;Q|M_BR`X@EXQujQmB4>N0ioO+Z6JVWCLx$qj zHi__O^QgYOtl9yW6R}DMh4rKv8=@Q8OvNnh)pA)v_fyQvqq5R%2o4p zM&yQzb!VW5h0?+%;=PsJW3Niq(5XD@RC)c7D#B^UX&88mcYUIwb8CrN2KeDNyE6E^ zm-@@({Q*$#BpvsRdmOY~-{!vjlPcY7%iPe9X5bSgT1sCD;flWd6b!QI)P-#p$Swn6 z37I*XqjxXTrPc9Qsb%D{hGn{$f*))oiQA_^gNIw%_^_)&H(;WQ_dH@ z$sav+We9OQ2rw8!sK}Sav4O>qw-vMMC6Lj4Bxv;om zx(C=hUK{Dlta}rTw$9RyB%;RX`gLjF@Sk*HUF6~>;`iQ{(l#(+!%?ZonleoC`}JI> zL*ib36$wGbQ0Ix*33>UnDpva2(7TDTfYRfN94ZEZC>v$g#3GopQX(p-oWGtUZ*=3Qlc-`pNi&~dd z2C1d3+boDY=p(lR$ogWL$JZy1!51m*lo7#8SQXJ`Bat+yC0oIQO-8nFX(;Y~pzBC-K%#r%!`TnQNZLc3W#BL+v|6J=k5T z&iYct_8{z?XSs#Eu^yes?|+SK^tb#Lu~?fXbvUG;RV^3o%u-NYESoJpBuzgaagq5; zj<=Cgb$Hm1UG#mHbA4e!)IKjb92@IA2`i>KDRu=4zdd<(fHQKi@+#ARq44hjE3thH z>Z-x6y@b8YPY&@yS?8+OH6bZ;_B`B4P&QL?R*>E(Hwu$>JxBtxFY+EMnmw7%vusBf zo-QBK>p3V5C@F@rpyc937zxz&&AoZ zcD4D;CkReLkH=0-!o|2;>KqiOrvRIZKEv9NA6Af;AIF4SKXbu;&kH`Ze40-*$e-pC zC)Ad}zFFOQH$#R3;#zMJG@BD8FDJCbQL)9wWct*odp|}fxEv7z0sx?S zk(#mT&H5;JLhWPrs|VqIR!!nIi2=fU2InxpaRB8tl#tr~?^3;v07ShgE&0U^jG1;vy?7?n zB#cHnRea26yj;H>1SmFY9eRFD7~*cciig0M-66jD$eS6~Sw*dD@Oprsm!_E`$4>Sx z0+=#2#byhG-%<2I99xhLTU3{7s9nxXWSZ@HWJ%{?XF`x7cj=Dm3+^X^5 zRl4_!ImRW!uYxxCzM-?sw>!Goof4zGT}fdo{Kat)!*dKUfk1Rm8&<8jS~~PDts!G( z<`3kC^&=--_CuB-r*iYutgOZ*ta7W^`>e#~^0cP?uE~Q=G4*Eld76m)WeVluFD)*! z4kj*PcREMjgqdkzs2LWXH8Vh8df zYS3NS%4~w?9#h$mI6LKmZ#?fZS=IFckG~3v39wZ5fDr!00Z4RxIc6m!GB7jW5v&-) zZt!-7y@}@M@`UXaOLc1t&t0FCEV7gkX|vW?jZLeLFKp-(064md01DjJ$>D$CGth^s z^ZT1@GlmWfnZA7=T{%4mg>iF}SP5y}c7hAeB;x@PJrT28bb+9oN z3Q}M1)MNb^TM~{hw?5*dd#lsi0V)UWdat<~lh)Sl5WTsIG$cO#K}&@AsC1g^){VfTegxn6~ zqQ!U5>58jMlLEie7`cKg6*-nJWgwws&uA6ho+68bMvqh^&-xj}X1;3vR!ICM%>lfb z-~=*-Nq51e+o5jLYiQ{V$>yJa$F{g$)@^f=;vAkB7!n3Ohn*QV%jjBQ%2Cg|u=6Vu z^I!wg29<(qm!((q?|8)z43@I1efHvoAs)F--i1K4vJJ^P5 zCsJnOqSVxDx?^M^1CFykk@&}TJe7d_Q>z)C2&C}PFf+pYJ94(7Vzw_$c!qw6<${;t zoZZ@a_7)lk9uR(M1GqsV)zm-a`taJq(r%2;Gu@p6yVcX%x>yXxKB5WZ9_jDa+G4*0 zUP#`sfCbgJXMIhlkacncGNRQ*1IIPTU>54&LNk{~frPqSs#!e61W^Zc%I*>1D-697 zv$Pf9PLUk1h1+s3m0zL3{)NNsu?AXX&x9J+fJ|?f#5n$xOMT+qMao#vmVtql#D?du zv<^qrT?b+n`sxJLHW8&IVo%(Y8q5Nw=Oujg{3==<)*pCuSn8T_xy`(h>a(GCst;jc zT6u(%(h{f_m-#+r;k0_sQ1P7R7galkz*dJ7X3Xf-ERgE7Gd8HGkxrnp*UqQ*Q==-F zcUUmf@Qj>@H>+9XTkdn<;2t(WYLl74EWkiZECPod`r3TKk2ZTX*BUQ3&c^MkmEURC=<=`_2^*6$Lt0p2P=3c{ z4Q@q;HFM7dJ4t5R>*wE(EnK?TKz^X6@0C45Y{c&SuP?qbhKG#v$HHOmZ z`jk?iJ&h`$0{2IPA^jXI5hX-dq)45%>%-JUpVU*ll78z`m<8kZ@ zS8{+#{5simru8`8L@g?I%k*=^`=y>lp-|IBv|-TJmx!|acTpboUlMU`&3d`}ki^E9 zRlh`Zwof%ta(4Y|odIWSSq9jJoh5E_>OY@S@#DTHfx!+L6*tlt{s&Ism% zIK`HtIf2a>h(o2P%TrFfO88^x{Q=Nq)DO+ZLVnrQs?h(T8~%V}mii{t(=A_?t0-FsAJB)tkDjOG^yGIX-+RY(|?H^1bm2A)!4+7aBDO~fS`ISF#_)4&z=FO zn8WACLzEnVab|`f>_6fj8UC};l!`d3&7KUZAF`gL#~vv3F#()bu2Bl8tLh*%jWtrW z>>*`$;5NIm4k5LHW((7$N;_Wt`q~0aj)bIh}{zf&#jo8wV-9hUg6BklXR; z$|NJzI6F~T3~J#V5|%CjD)@oE5hvcsg4c{-on(4oNF)>>VLlRphbG#c(zV0o$3S+{ z==8}C=}1ABatvS>SWu0Ao#g1o$7(h6DRX)JU_bA#VqZ*$*%((Vn2I`9DhLj@6p86O z4xQA!BaIT8*FpNcJ4`j)b6g>ei&UD+KDvSmHrRf>TodcLxlnPBdfBjgC)A3(uWctf zx6xLBeB~e`2eP}cfW@W7PV6q+j3bJOw7b;V&acrzpct6f6|Y>3qIJM6>W6^H@dYU`W&XQEidqb~-tj%S%IR zmN0<+VH^Aoguzm87*In zcZ74ErrbB$!?L8?`abnF`?XJ;>pR@p-+3 z;ScEO9N4N_g~zZR$4wKN=4AcJnQ~SG@mtC3no0^mEG7<}R+`kp#d%oE=A*3Av(CnP z`q56gGV+s?>*fvfrZesQxToMwtyxYgL{@A(q9tcf$i8m=B}(RuX=wf~6+!b#Dk)Bk zKRHT0Q(e`)r%*bC3MRyKGVDzw$_dQ2EfWM|;F(>+HG582KYsHI#QM@e9sU-xl`+%p z3s>apDKagkxp$sQ+?@9t#3_XbL*H#YBnlzG-1_){V6NZ>=F>KAFK}Tt)om|bALN)JPTUxI;rC2{2d~*z`3kgIWT3#YzXE6 zKgTj)NWUppqQEEAt~Vyb0n0-uK`F_GJcC$dYF3*0;V+Q$av)DopG38v^aayr+^Jf! z@AvnO!k&dt%IPN`W02&pOF7dD`QJ|oFn5s-(!blR?1-8>6Y1 z_50z}aLq>RP=oAT*hw6t%Jx>F7L^n(iLsF>KDQt{d}4P=06LwO(P<~n4uhDpvqzxC z9g#W_Uf9`kU?j~LDynk335^$T&9N<#>3NRD9gUl=)z0Oe_`^hPmj}kDGUs~@L0y7$ z2A-^rQ5v4`Y?-OCBIMEj@B6r!l~2bVE8o+m-S~;D*Bz8O{O5E(iQ;wc7oi7iA*Cr4 zHZ%*XNp6~?6_ZFGg4v<0xoGDVtqdCH;|witOLAf>Jr(DaZF;!lH0|n?@)9Ht`55bL zzoo$@MAnpfhvv8EgX|RI<^WfwnX3?&XeNXAl&zTC+IAw(N&_yPtn}=NGSlY_~ zI&91!o5l;>b@00&$``1P2mEoCT>{F%PZi93*W@S>+|^^n$#0J^T)OQ($gMPN?UfK< ziGf%U{}tU(bhMBQvEVJn?aE+?l3pEh_1k)`M&9X#KglYxgOy(~qdRcNGK}Wu2U?=1 z(g$|RUC`Jm4$sdKe>K#zfjJ*z6RGsB0h(TXr)zqY_V@1jP%w+Dz#o2DTRwe5H7Oze z1N=~v1I2v~k+}&!fBPBZj09Cqm=wv+DG4KLs%U~&WZiiZgL zKnLx@IU~b`a&^+UZhlbTP8ENrmm}}SAezuP3uFQtO}i4>tI;ZgMhZrH`YCZ0cDgd& z8L9Csy)&DUjEyIa!F<5zt`bP%{7Yv%;xfc9?sdr$66?GrZny(0!b>JU5DSAy?V z`iX&6;%g?3Qwz|`=1(dUob9PyvYt6Nkgf{P$P}chlo9YgxPvxlAbUK4<-Gq?@~RSgmcWT=)ST=jy`qf9xHA6(cCb!Fo4$}EB{29siYyR>h^7E256~#k;q5Mo8R=!pe143s75oh=V+-CI zu%BFRpf>3ID@+3m!4q!h4}kFx;1A$@_qRZ{bn3l8T;ccVXF||`$3OspMz!WWkoj}? z3VyCU|MN`+;O}xh^3#sr|7%AjVXGgo9fw%sHkCgiC2`pi4+g=o&mJS=M3jkm3G=~t zTC#Ncy;3u~=U~F#6s-m==J$lC9U-NN%$30f2G2&}HD};AFzJYCU^eZ}fd-G+{4GLb z#~8AKtSA0LRG=|XqL7YQ?P;mecqkv9T*q&TYe2c~8N=_s8r+mW?u|0kS^{rZ?CJNl zAC(BBt{a&KRkIQ_(``M}@s7ukP)-e0V3}7!9X$9dkK@xk@~2DD3qT)QC;OKe$X6@B zr*n+g?FS2MKR?0Q(mKL0g%A=19Q41A z4=Bh)pL~{)64NK2rI;_&xBEZ-AIKlVSvB(&&p1d{zA`@zz*Y@FpRor0xjFJ*c~biM z5)aB9=9u}zNDH4-a4|LlwA_iKg?Z!lJ0tQWs`0-U)|2y^q_4l9J?^6ASANe&lVZmJ zzk2;`wpzP6I+stnfe2Nis=ohwt4-T$KUdTU&B33VwB|q)FCf#MI186VJ)wB-wwANP zrzXiIZ<_xPpkB#ZQJ>{PQ}jtfXrYe)JZZH&-_@&4$trH$W*+aoB=2ywo_jRJ)g6{O zom9V2MyUl->eob_srXPyu)Or}FB7cNIwQ#8pIiNwwsZs*nP&(^9QgF$wUV*8dqbyl zFygh=7yJ-Lyy`097%qS-DsBdFA=ddf`@h^ylDnS>%r$Y_jaEy;-!|TQb1ZRi%KHrQ%PoLF) zF;oqXh=UVfXc>N>BYwKAJoy-Gq1gm?(AL*(_$E4k1tpltRF%WeMGZb^Ua9jG6kS9w zgzG~xMrGv>r;Fxq?urQqGsgZRJa?%*rC%l;$rdMF=poi+Z@8K|TR)v*2a5!1HvCYz z!X$4LSrGY1DM8gn5FM-ip4Dn0nFaf042Q6^{T+KbFZDvfv^#Cz?!D9$`78M6s|cm; z4}btUOBgwXSg`7^vkKL}Y%AEOC;q4W2SC7Iw)Jyx<`aE#t-p|WZ~n`*B7bTJDusf{ z6Zw_E)M33u#KHnXTVy1Ho?&^}BDIxBp~yvJC1~SFm}PkT;!L;mkR(LtF>2%yA1z3# zd@0~jSlM%UE@fdL@$eV!ThPZ7J;R^0plq$O6$=H~ec;*(m_&)V3a8_%mir%`L$1gc z`w%H{1)IJh&^GtIfhmCMGSMe^GcX}i3+)x8No(?ZhF8M{0*aCAq(=N)&A791)t~xW zrxS!>Fp)$#W6FWjeGH1B1IXEv+tikqG2CWrOsnb8X#0@h9PHe#sHpwM5Qam7D2d!L zM5b)4v;emOzU&|U^0=>hqY0cEmf-jBPz9g^M|!@ys1U~OMXFw9qX+EXG%pYP;3-0) zD8)rh3|+TS2r04@&-w^qEN&Q)G(Y&Bhj*ozi5ETliB=Us_(3Zp-}WWaVJ(U<1a#4o zF>xg1y&dva!7-t!jD=~vAI9SPBTFi%zU%g+*R2Y^X`(`--ma=$^1UAh>ixZTEp7R78 z@rzT=kNUJa^Vw}u+ubabCjRZ!U3;-05_we-{z6!ySWYXG@i+%lt|iTcVeT`!}C%w;$tZsYZ7`n*FHm!$Yi zm7!5F4dEN2vr{W8N|FS$ zPRV(D@%m?SAc}m|=tvorHHDSBLrXfRA~q}ySnr+tYJuW{67zsVmBR59(NBTw=F#9+ zo03^~L{@W^p{O>VVw3AYvD_x&;v~?TPbRIgf0`qU1b5}T4Es+bG4;qw5Tg zsPeNj!Imf`yy&hl#;}5qW9OVS5^}JJ{XFcF1BGX2hn9x~RZpVEz!wz|EaP@!S_X+3 zZSgW%{{z}S%J_IF7NZXL;q!Y_iJ*AMY= zNrcZv8|QXN$F}!SWTU-_@jqJE9Onf+kjP-JvmRSx=nx*X)12NZL5&DW85OF5gq)T_ zNkZPH8;#ue^}8`50$26Iz9DF%wiL3N*`P=7s*)td77mOU({I3DDsW@lGXYqt_R?U6 zse2Fe1nS$r`Vjh}iY8$iY}Jhh)0K$2#1W&idc4#$L#)O!b-XO=3Cq%VJsjsK5~0G3 z*yBM1Gc#MGkHJZ)Lv{$e_MC4IzrfWmmcql83T>7 zu~+Y_=v>0&qF|RXFk#iA?kuCJ(lBbA8`@4K1pTWR$}9;BUSS}XcJ#nvU(pGbb_<-~L|DWqdb z!PiHTV6{IE|%{NDJKy<3vnHxacsIQlbF z8f2>>pke!fu;OIMP{5@4QsT}~fXcUIH)3Xkg(&1RKEm)}(0(nhO^5E=J`&Co%a7}X z+iJ18rhC6y@zL74LCW!GX0npOCF=dcNDF1)y3=fL(O0PjBDxRaz!MlL;@L>$xy8U> zVn6~7JaZ@Po(t-5v{{g`3Hj2Po3oyyWq!6s9uTr)&nWb$LdrpM`L@cigc&|i=>Uur z@4@jAyiN9G$tYHgE(K;5AD72O&v7**b(Kh~%%B^N%)U2i9xU?jEc04_(Vmn+?MDX~G9?O0d z%W_njs~;fZqs}zgbu=zegE4bZOjIk$0(n&|GW)dSJPsB-$x(wo!SD-C)OsM?VMIpX zrL&$X1p#SR1RxGb$pyoN`8+{UM9d36)5&M{JbCP}KpY5JA}Fyzz1}M-CtiA2*-uAG z%2{c!g%=1eL9z{uL`H?hHzD^zTZu7lO+z&Xq{6b$jU~fW(nv}MHWmtreId-63l48(N zw*((lA)D-j9Og;e1qs5JC~0XD*W?9~FYX}l@-l%-o#?I40*=HXV`f4)-pRvMxboR? zIAh+1qzDp9BFh02%2QF?24$|%)V40F)}Ow~nwg*9HsZN2z%!YJ?we||l#i98W08M4 zzFu5~9bSIn9}NMw!okQh&NxlmA|{5MZ%!u2$mhFvbdKOr=lP-Fx+i~93?lZyG!O^7 ziY!ZeKXo~n!l3DhN|_m>^o`d)iHuyv7<^h}4PGbe-SmVZe|-lVTo{Y1Yo!}UaWM#a zpY&%A(k2^GDbRF~oY_3*n{tjjcfm^&h!hqPz5*l@3McvuF*G|-fw^OCN}^SQv$Bd} z?yal>opw7_PdB+cMQKh9c6z1vDCk!iOLJM7d?q5J(BFN@C*L4(YR<=do&BN5Xcho6 z^p-bC8|cj?m+LXFKXZU`(Hkymfs%Ap^CO-_MUr;R`o)j^(YY#m;cR5HCrRs6fQ&WP zBak2fnYrnKEHY`maJ47}2Kg)b5evXQkx&JTo>L4b28u*7quscPP^5#*u}aB5zO-3=!CjFrarxBDsZ&m0h^F1H+ui+3=QC=hAl=yY(Tz z4mqc;r97D|P@4*u94~E9N$b`Hx+_!KMtxF~Z%EPiBVS0A;p6Myf1VLbrK;K&g2aaA zM=hrDKuP#pOmiKc9yXksG*cTUe|!O{#ovW_-`3ov_+0ap6?X(Qa0=dmfKwrKcwHG* zQQ;=uZIG;i2BTZ3^7rdB&`ulZ>9TxM z0DZOa)&zzNwPfg5ICi|UR0Ic=$;CWjq$m#SSVmL{sa5=7DN!wEcCf8D4n8w#Z+=eS zrZ>+?D&6UcWch-+pME!zAh3bG@b$cCAwrt@LR`zJY^S}0?O8--yv8{FhMterg^5=`jA;pM=z-huiX_TN z>$bM!O9CM?AfgfS`eXwd5NJ60azP0wAP?5Cm<*tjIqXr`$#R^4u{9sva(py|B$5%v zQqr>|u7T2){{T1#pJ?v$iA+G^u`A}6(QtVTGEB(=9l#QZ00gN4q;0@%EZ~i$&uj%O zIv_Dni@Ie|tQ_`|Ss2z>7MUwpD5Cfn!7M^ZmLq@Tp{U5Y=HYovuTc*PT`1o2tdPD* z*0Gi>btNXJymOFhH49G83`~<0B^vd~bh@iBG7wjQT0F-4;)Zr!<+JHwL1H+7o5E=b zbr1+6rmz4yCo&IicY?Dqw!B9l*I7!kf?HL8IM*d6g;NpRBUFUUj(S!&1|}~t9<#cnA zF99VerCQ_dgJcmdm(E1iFv>%*)YpW{mCc5pV~EZorIHhGmk?(H3BH^ccp9RXO9$DI zWCNgxLH9nGg@dDz2V}#KXqmY$elbq(*q z-NRg7$&Y?de7{$4Ldi69@7D>rL8K9Sa8ttoJ41c& zBuUQ|Y+#TKAqCMZ(o+^l5wQ~|yY-DQcnjGbAk&UgIwG)h);RPr0t+gSY&N2bl!?>C zR$Y9U+lu>#w~R`-kV@3gOt~c&MZc5a@0!3to?BEB!1=t44ZP{0Fu=Gfgd>3 z(CsI*XE0pSR_J*j%4eV09ez{Bj1lqA+M~z8ipUTFQ{rkT<&88Jnj;Yo=f9>Y z5J<%yd%yDvk^lzQ`;$%e$g<6Wa()>LfVssLjCeu>l61T+I;sh%_A;LMJ=Rl92|6T< z6Y2&J7&d2XT|(ggFhH1D3Ei(&TtNvy#i}Fc-x7$m0BWbCxgGL|LQ{sJaQyp%&xg!C zahlsk&IIJ|ff8zQp_E<>NaUkU1~furLQXmdP{LYCmJm#SjA#baU#ysyJ7?3QLlhvh z9I!;uMwIr(=#~WWcg695KxqVTuZ$9`BPgF9+l#{bC_yoQX~4Z3G^A_BNU)SC6B{2N zjFh$LY`vqbahqUEBiV_nO+%(P?egMyfg%zJ^xj-kg^|Jz=13K701MuF>k;;K|SfbpHT$#$ONzLILM>#(87UC))rA3cjn`p~gl< zk^w5P8AE2oC7*nm1k+-3{v-j_dyefs{AV>mKvF&&D8NZHO@=v(-<~nq&GWhb`{6X@ z)n$}e4PdJa9#KBnr!)Z&F{w^7b26LQwg%pQfMQ&z-3B@_flkFb0UoZLRT3lw%f0eo z@d$#*2hV(Jq*y)_e?~%B8RI1Po-}022r`66rY6w@xpz+*=CF`QD+CCL{^K`60V7io zcbDT50_7kT6JE|v$P2-N2F95YTAJ4e1PzV0C%;^3BE*-st52>!gUAq;m%IX;oc8O^Sl1mFVoUPH^>f-*=B#SRfB zH3$O?RZ(1c#j1UAdxRST#KKY=80GTMShgmw;3+Rn+1V}-I z{NuV&M^f$T&mFMf)5-J_Hu035io_EBoR%A-1tIY}!Uai5Byf1m!IF-W_+fo=&jB-d*L=DItFxo02QOr5Pg@yuOW9(#9p=c?=`!JMjvlR$T9=Gd^V2P0ER{q$7 ziUG+J_iqKAQt1yx`0<7t>#r=%PX7RnV^tyuI>Uf8NQx0V2Xv371OhOS&|iO{-q2<%)Hi@Y1houv zmMmQike?y+AgyQ0>u{^^6b)pmnceeljk6K$c=VE!1@!j(g5L$51|4 z>PncR5=g@!N`5trct9TVe(d@V5O4O;*z#gUqIEG69*~}Ji9k^0QPtoj^)lMBQBKYE zywieND1&KOq1;j-&-ddX0~2QtIUtlW)|-4p9ApRul6fHe=9kJO<^KSfF8w+p$EonZ zIB?k*ToH*1h3*!AhkQbaQVN0x+Yk`Q{S^Foy1I{RuK5|BoPk7#O>IH_XHV{!&X?;)bG1)E)H~#<+>mgbeW#cLop+)bf_gpkH zY-=GFTu!netPpQ6_uCQVP*K=lLO0b6kpPe+m^Bpp;xldNSAOh)G6@DDKb#<75JZXo zkLt<4pn^Io^hiJV2}dX)o2c=noE6BC9G0uZ=-5`M`(z&-F_5wlANqz|q(CwUFEKB@f}679x8d9iFT8I)NxRC^r^ znG5BGUc9&K^dWal+K9Ug@R*<$sF$~@-?mAdAY5@L{_}|nMR1dRW2UL(F5@T+XhI~lxls-Ec`{)Jm@VtmA^{|Oxt{+3+~8esgoj*_=lXFV$xHy$c*9{0L<741 z*^EU%J<2a3$_5FB-)W=6mWowVP6>GE`NRnVM0%Nt#!L zAwZ8Kf{LbVYJk5u62oGKoqP1h3PKr94s;tqRCMm-BHEd39)0(WbO@O)x%2yQ+(>Qk zh&sD+Jc!u|*JsZd0plWyc^5ryZP;h_qDQcTeLq zpq2~fYZa7qZ6g;`^yNn#sh|XRAX;Ckg^CPuJM*aupx-4 zIR5L5ps-8q^O^!GXpY$h4!>Ex2ulc0srtdi00~bkk3Qp!(Bcu{{iu0yhz;Kkft41}m|^O99!J2K_Dob8`ne3=mUAHNu}8Irv4gu4$T9}ap5 zl#~I~A`BKL z7>Jz!Rn|rzxa&DGK%2q68@_wwSTbO-MFd75Ac`nn96I~pu$2xLy?XxuIEOeEO+8+( z7$0;=SE=*PlfxMk62+LGd{erZFf^2|uJSQGz=0CHJIHwVAwAPljrE5P-CnCOP((R+ z$g$A8iV}_5<3}tcL2)KKpqzll86a6C#p4!bpPd}1)eNu*H~H}~m<46S7Z z@krip^o^1#=nQV~bSy(;2_~Y$j0*$^30aB5$jY`5=BWB#B;4MlD6wQIrVHLXW;mz@w;) z1%PfBlR@I|_P`#&2l11K&VOD+?$XEh$P0(B>cIgobDdk~{_+_FRu}Ihr_|O$H-KyY zvJ@nO5_&Ns$6`MQ62gts_Q=#tkc9cg6S_PfI0>c;3O;*c>`in&a;Ro(gYSr=TdH4t zD#kS%^N&DqN^jo~u*?xVeeya=qEYwB1)o5zUwl15N&fPAgYy3Xc{va~zV0jlt2YpZ zJu+Z6EYWQJTkq1X{=4OFInmh+M^VjU0vPXENsm~{nc81mfU;fq!_>Xmj6(-=8X(E0 zlyAME*buF|RlZ{rh0lrEqu4rD1(#7IB-d_(hAxO#I`$X9|-d zO=P&NFJ~2i)L|HO>(eyB=O-G-Ss4|%8XUWvp00lwRQAW;n(N;>DahUnSjj}u)BH-r zL_r-gAV0)SHiz8Dpxe_co*CnhZa}@Ce0TJhpdiEE&c-vv_~$7(cFeo1bK{+HmE#Jg zxy`I&F3x!8j`5hWkd0#(Q;_+|{diF&$N8|re& z@a)btjdhBG7Bi6ToL)t7t^E={`P+CZAjhf2dUDj!p>7F=I%W)Y#nc;cigbuh< zSi_8k)(0MNm{%XhqbMXxi{!Jt zWLL@BpsZ!B&?Z|byteNd@7w$S^ZoOk`@YU~J@+~1ex7rFzw4Z5(S&v^#GXAk2uJ~@{>_2sfE6Rfyi z#!q@^CpxcnlFQUjJq_!bD|o9p_c`+h>@Ir5e|y@9e$vg#?#e?yv@?DTBAu7A6aWAs zm1oV{ePwuDn&IRGOkGbKbFzO2xtxD(4&N7-e;fb$kIazt`lLx}W004Q# z+00aHWpt)DH)w4~x}I@G-D$fb*Uj6bR)! z)$3io+Sk?8$~^^_fP_v1KoCxN2Oa>C@Is(|WsQUrMxg;7vZk;QQIsG;(lC&R3xI*k z0-~UGZ=X+98TBf2b#}{{+VBqacOEvZu#c2%uDny@W6sP=Z;?sp!SxN~YJX8k-f=8F zIQ1^0u4th;r_D#wCnM^Iw2N#)JjF55e_Bn{vd5wed@PMOI^#L2E);rq(3A0IJUuvb zhU!S)Gd59gw`{-g(r+Y9wenW^^wOerY1FYkHNo!|p|OJvR^;0_6yx-5zLq_UhfDdL z_a|pV^*75rG!cpiB7A5f<&5A+IZIAX6V=Yr!8gRtmv%jN*oL=LRY3P$<=k}CI< zO#3Z0*@42+F2}|?bXdn!x-iK5U-DY1uHy<_y%z)YbU#-#Pt{iF8xtlnk~2p}5*BNM zn*Egoi4hJhvLarjoe?Nm^Ni-^^hIJ^NpV?W#NorOyV#lnFVAfNrp@VCow>IkZflIC zSj8MQ)BTobKDxfv^o7+i`=EwaDCAwAYDO1Z-T+`2BnWVEe<8qy2&Ns0Ofj(8tUOFt zeQ?MQRX&}T zqky(U$~hqySu>Kmg9Oj_2e$+_aYk4(eCCmLQbEkpUg)O$ovPN<$&ubrXm3E8kpuK_ zRH7bN@=E@@U0N7>;OWtm9v|6=W!(NV0*j*IAzPUkIk+6kb{i< zjv9+vt8T(=8rTPYbVcL27}c^z$jOC|Yg4h#v~kUkFb{HQ%g%`#>YuaOiwwE>7nKQnurruzY#UyUW&Gn8n$Hb0~7?%^}UD=L&-oJij^5Z|UsQSqY|!MzT$nyuGI- zT1UoDV=AdV&yDjdPlq$wNxBb?^gPbI*VvwyO@2yzgYUCilnXP_GhQ$`*lzuaa?YrG zVHk8OzgoY_&1~OLJjh#7{Zb1+6}8ujKCku&k>pf`J_CJR*GU7)h_hL56MA8lA z(;)4XeU#qa-O{#el%!o-yWII*wqNK}?U#R%vd3F_U1QaBvoUd5&K)4YFUkT062*{C zW@h<^vz{9icglR2{neQCNvq7QS5tuF2iU(A2fEhT-Zm7uFpB=@7zV9b(?zNbQ{Br| z^t28?$g8X!4O$3H_epzKQdIGEw=#`#K+mXnkww9G@?IKEztrw4tx&Ybx zcY^OuBR1oV>&tof!m@S~RFC>aK-oSe)I3^yz+JvgoFgIL{y5?DjvB0Te4^`jl~%qM z3z59)z%JmEIIni<$tZTdK;bjxmGR3%lZkrjUmSuBev>JeJ2m3*UVW)Bm(l1k(TMuq zY+zq^_b1cC^5yGw2GvQ$s1X%yH2O^Fj$6DI?AcG}XDx7n+f$AVd-F?x+LsxY32L~+`OasGk`CS{c zo1bBc`q(J`WX8FxUt@w}cfoI~Z3M3HdKc;BP+6GOG-M|X_HHZvxnhCQ-P2WF2a1;8a5@wX-=h##>LGU%&ZQFf}}&tjD43Qe)|f4^LZQ1UF~vCd&AE z4jTJPcm9>)m%}yluXG>c^I6G*Wza<@L)d=Uq7|#z;TDsxY3g+p`s`CYSzaGyoE~(T1DR z+{TKZB!uFaiE)DrN9trLjU%2#tCqF+suD>3-tR9kXI&0ovmFmpmn;9YbdW#-HmU0$ zUM$1PdOrK%AL8QI{I;CD!X_t8ByX)Ht+Sy|dfM z&Z^$>6^|n8v(f185feAxpc{$zwDE?jo~%=en(pIq$9MtT%)`hB-#}X?U&8Jre{v3C zLewQzhuUqJZEBRX5?X zHk-FVPG}HumsnX8)2F>5}KHlu$0)c9ZbkV}QN7elZ3T?w) zDR14%Za@l{mSfEKxrG=6lWBKpmwz_UU4qy{^euOIlFmql7p@+yD=t!sq&q&6YX2ta znthF+N=vn}bU1K9EUW3@yYaJ+V*?+t(kvcMEj7l!$2*6g8XHkDO;Our-&}I$=&{t# zE1JR02DaB)$2o5wYCv(rE@X|ar|+){@^mjd&B!O-Zg#p$-}6SHZ8ECG$x;dPB!2Kj zNK$ON?x*w6%-5yZvrnOW!<=gqZIV|&L|5+xKBd>IyHCC1DVMS26X1Qd!;R8=b>~G> z_Zfu)U^v0uXt(ec6n0yLTi?Jgz0@NEKPxrnq$%biXpm1fl&RI0@FPxmUEk5cW9>V; vE1h?}IJ$HyI}A{&N{~TiU-CiJEc@?IcdC&j^1Qk6g6bbXr1dBKBhvq0%7WjO literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano-large.jpg b/install-new/fixtures/apple/img/p/iPod_Nano-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7bb9f9b5b6e4abab6939382345672ce01b4c80b2 GIT binary patch literal 8818 zcmb7p1ymf*((f+rEbi{^65Ktw2X}V~1c$|g1}C@#cbDMqZoxgcg@h!$P5w8z_rCMq zch1+-Gt)C&zp9#^>Z+ca=auJe07yYbUIqXJ0suhB26$cvNCKdtpng?Ifq_(51Xx%Y z7+55DcsK+UBoq{6BxGb%G)xdG8U`9NG6)xhfrX8OgM)&OhmVVmkBNL^`=`Jnz`;YqAOfKv z-T1)YsX83&r%r@S5N z`4>Ha{QKpdfXfQi>3bHvHI+a0NLSpcDA}Gd$7zTvDIE&Ie%qP2wmTaPQy&N6APMo zWIUvAF79s-6}0I&lntAcoj4MW6H%u!4lXO=jhpv{L@rtnKU%0t#;$UGn=CB@G3&z^*ZE-wlTK>b4n zxT$XG=mVOBI<2Kax0OEt7{2#EBUSB&X=$Gx{JdWHlLjVZ7{9nn?6+=z+{`V$+lm&ZA7xbb$%Ervc-AB#M`3+SP z8n=z|Dt{`HPgse~&)y$}Prwq>2qZTt@ER;jKcVPY*I9A^=?jc;P&U$F!Mp2zzv_MV zkdOY1Lf}~)*o}<6!84{6cfJf%Fk5*Q*@4l6{6};};aDN=oA?v8|=e&tVq+PPj7-Z1oFw0M?YXjrXxmOZ)O4St+S4@qI?)2Bc zJCk!Us>lMe=%`7)IcLUqZ8{{N#BL{R*S=vUHa)UnK;=50L(|%_tbKgV{EjPeaZ+<# zL95!IcoobjmDWAv-$(4*;U6`Ro_n6_l;BqV#1qjsWYK}ShSG%5;(M=I2K$4+Q?ZWG zbsT$LU2k#pEr$m$Endj9V-|g7U(+0^)|OT6qv}2*(@A~&;)}@igLX8MrP5a)J~!qJ z4-FM;u5wuOF}`Q<&Ul$Juhx|*Io5HuM23)3*Sviic|fCnkK60bvWHY#);?0XyE61D z*a=~ClHzXvlb1a@_!&@?IwT{{)%7ld*-Bndvfh{Qd`sgdRe}735RLAKujE)egc%Y_ zQgoZwAd8WM&2SbG!o-@wY)-E{lPcv0V+)%W&!?ZA^y`jALKW3h8y@nOmA-_1uCK}K zY{={6pvPR`-)%z=l7|j%gUwav(1=`-<=S)%Gs#V;@xG(bhZd;Lv1%<_MIDcbZ6u^Q z6*dd?U?lLGMk$RUqeV&nCZ#KskQx|pl1igt>~dYtbhA}=U)Fa>JKkQqhyDvsLqzaA zkn=uHSI1S9$P_JNFm@%C`-k<(i#Ob2AI)HW&B*!J$fS-VP;WsSC!JD@Lst~uK0AH_H>oDiJF8S=P-;oPly5K{H3|*s7S4g_?x391{hsF@8_a83 zqD9f?$jtdTC!#fN6LW4uEmw98uj`s{D9v#o|8D$o%;g|f_as3U z+&~u6KoJ-*rDK&kPu=2;RU$_ zz+hlfz=E(i#ME3VIl0A6-Gh_r`>-X|-8>TW>t=Vzso1$BLX!)7;dop^uBiXz=HNsj zZjMHjJx@VjTn}2fj}QMv{}DfoA!S15S3k9$vacWMw{zQW;t-#5>9<4gMbvuXPyGr* z0*=P`$u9f~gO+at)B@1xZoAcZ%naQQVt5+Mmzo}JbtPvv&e9vRzt)6(;M2@rfMOGW zkhvQEH2f)j6MqwbBX4k0=ZC5Itfe`BEJsuILrR!1$<%1@5kjhE>AKS*h7N0fkxQAo z_&97qZG8fxMguoZF)wTmP06ELfwxRKcI)t`!Zi0BTI}&j_QtF=EqD8f1#3$piFr#q z7ox&mHx@N$I$vjS%~&^k_fp52Ht5bTmMwRsow$<$AoPDhG{lU0#-dQW47 z#t=i4?}e4+QZ7AiXEl!`76al~nWp~KSN*yThqa9bLNUjq_ihosP08rD(O-teV%h$! zbE5<;z9YkxM^T!DvveTF{%+VPN2o$coSDJKyn!hBS(Kd%eS6+)Gv2GuElEO@Wv0yr zs+hz6E}h9W$@q?qYx)fcrdr0nX3bhORG*U-%m36Cg@c04c|-kIKP6Mzk#FmnEPrzNJ%3CC)A3Q08%?BN+>t?f`v^ca%5X$cyf zr{l!~YYkeop}Zqlt9n)}4CoZ}@<7ct+dMFc9+i~?{Lr*HSNa2D9%1Jgq5BE6s$e|_ zr#R)?Y~P(x9h&pT&SEfIY_LLqx?a%%Hf99_ZPuyPN%+!^8lvH;qvpd9VttFk7wz#- zQ59kpU0zK>#_I7MUL6y#^ZanYYlD6bAQx(@n^QBrmceOk&fzqUjLk8|e+d2BN8@&& zhs?L>lvnK(X^GxqTIQl~n$;_~6R?t%=pHcVP!#;0yD`@_B3nW6C5xqL`K1pPaH_SK zaWKZxLT53D%(nTacp-J9ij`02*aM;ON&nJT<7eEFMW5deiZJVpn`xaRZUYis9K`f= z%d}&HoU6MrpBO1Se(D=hh!b^KmDQu2wiig-run0W1?_lPX)$2BlP{Fj**g=P5-PUq zrFn`gukuQNF($?^$?D;b^2u0iVW8hTu~e)oh|bhsl*>*{HPQ-CGexd)l)+nDexs0k zh_}j~%P(P|{D%8MTtglFZmCScVD;*uk8m_Utjt7TjhgaN1K|@~39uNU*1ijag}P*6 zJlbomcS4LJ^1%hG+P|I52NYcj~ZJK}*D!&mTw65SNW3}tFEUS{xzep|-{ zY6^)-)vUNRS8>0aHw}>~`@4i!Bo@5j9 zYV2T(&OLI+#fK@fWMeT`2+YcSp2s(~H#}zyOgFaZc@p~VWke^~>P^fU)ew~%h+>q_TBYZH zHp!f)l$uuhtM|oKi{}4htG^xvMLWee&f;^7GT|w)1d-;PTheaxeD(3m47Z|Uono;y z)jAdbAM7^g*A&Z zMqYd&KNd_@DcflFA4D{yYSpZ|FhQlQixpOs5t!IHx()AX@3Q3=y!mT?d0ovf?A;Rx zDp{!SCdX*kGG7wAjpEMRT|Wb~F+=^qWY#m{d&uFNPG)*}Et-p@hRLc~TC1oOijv@$ z#cR!WYzKRx|BS|)bYm+R-s;HiN5?60=eOpB1f;G%IVc1s$%k-%S#u7=nuFo8_AkQO z!Lfx#vt+MjDU{R_H2sRLLW&7L9MNI8T&i6Tf}4Lik~Z*ziP;#r6Iy_htu*+R7IR5j zg%&w1by4E0LDm6K?9XG=Lf;%=Yutacj!8mF=N1u<<_FWV`#0swB{n2VXMuV8u=BNO z8k?EpD2P6mtFQ)Y>N#kn840oc3Jt;&Yz>It1P5~OW2#s0T$=xk2Hn}!@AkS4j((=P z*g+A}NKL`xHoB*Ikdi0W|FxsIAjTEBz<;ajF+9QOnN|pjrP^@}zbVG`7CUUZo{L{2 zyXJ$e1{gq)k9!~_SMh5l@_RV|1Yl5bh^v{pUWo-K=7VPIdUvi}$p3uUh*CTQ=9>7~ zCx7YO&S8a+aa7E>$F|=krtqk7ElHd)c-Ie*`h7THk@j13MT=&!$tTMIrA2JK! z*{_5L=hsvX%w+;UNC6nH9G?M{Or#>icRxTO*NrZD?xoW{K3T-br)ryOXhomGiHDu_ zg;e-TD-v!u*khETBXV6ID6mb-lv8tkqXywBE9~6P-KjZ_6wv@RTwh^raoyNtNo?Oy z&A%ktv9#g-IdLnXf>&D6bF;z4w}8mbmy*(KhMiQf(4vw(F28-7F4P?4L#{x&$F6P> zKr$4y_<4@j7n!=)!P_X|E0ziE!@?nqcZ7J3wTh1TQL8DSlZfX;zi~3xCb(387rf6^ z@)4vIgJ8*UQ*oM*L-=i$G?n~S=90$QC)~G;iTLds=H$(E&aEM6!P=-K4?|%^9^V~N zn+c27)m`_!Q>Z*p7+se~`h4CC8-|PE68L5l-xU_hztJ6qSv_F3_=av?X`#)u7+tpc z{^g#(y?1W1Cib^uquZJ0r&KYT^R&fY*R=wUh0ExO7tQ<34Pk`VuXlK%J2k2rH8M=i znOHcceU3ct-AL`jjgd&?3mWjmCQslTh3}ibpt-AMR!ed@AiL%bU44PoId$2pe6w`SJ2b-1Va7(Ar6pHj>GX3%Ua1WgW0eKljs3-1gRdG1VtdL)sw_25Ao8S%9%R9LLKr_+^1-crV4Ihs&osmtMyY0)+D6 zv`}De0z;3fv)&@6IYCn09O!uMj01l2BvK$N%Q6aFQbSvYsaeaY?b4|2+S&(m{YPd8 z+a+yhxp!OE3A3cd9RjmiKx`r3lEz--iXji~6iLM}F+%xtdB7li`p z5i3fD5<@J6<4>sqBksv+(i&AF?ggF!@Tado4v563**N|bU1+bVxF_7b-}o(aUH~P4 zwk1_kKq36Fk?_#Y3No_#){F5Nu1v9ZjTm+aP60#oHX6e=i&&!pwXZ(u2Y_^*xWy}f zgGEt_*m^~=Ju^w}T-PYk`>49~Ju}7e%nJos9iH;Pa_iGKf2L$gj!gE7VxVd~cq@3a zh-&ajC@!al>ol=8zj2A66mEd_hu7gN9rM_80{9)~D05SvHUGv;y&aExpLDOnjFGdz zk3p(XB|(ekRwT+(SghAQT`Kqw8QNWMH6qF$sV?d}xIAtId~4zl*v~OT>we^QM>dza zsD-8`*!t*ydIm&t#tvunc)ZC7E~?THbN)`J<3s;pdq4CjM^;7a`g`7^nOi^hc)ml2 zXvro3GnveH4Z~yK+8_vVHCop~rOTouL;{$V!D34vNheG%G|)TONHu#a?2e5B$Y}_8-;&Jb{I18DD8zh1JiIf5Rz0(S?^s-;#a^zPsuP?3X+u6)^$ki#-qrBEMdMk-vg~}EC$8RmMmp`~> zAeIqdeSiDy$T8ihk&8!FnM9(_4b33P7+4@CA+XDwL}ojHsHo&6q4Ovl{m9un5p;!3 z4HDwNddvWEh<)Mei1vpB(UHd3LJ*twU7~N-zoW_Jr4PiOb1{#1SdIEZUbTNs2 z&xJ(chyq%NR}OX$SLISfEr!#6d#5XMNVV>ylL;5NvYM3!sDvw0AEEP5vCR-QQvCLG z#7sCd%QoF*5`%Dp^NE>mll9lhBPWsPf?gbC&!^zy*!wE#^$3|shcgvZqT=+;?E2-u zqt&hGbZhsK)Qo&pnaR5yc)mfKiKlG2^?o~|d}uXcmL&&Eu`tlu)^a9Ik6sCfxd0&@ z{3)@|wbAB`yjX0#lYbtCJVmNsqd$0*AdZvyW=x^^%q9r_r6(da2H}RPWTNt|Dgqa7 zjvojlwoJ|$M%1a*rMXjH&GoN9oXgJ@>$0Ts#caLG*Q2fq3n{a<%7*~GHz>E;n5$*% zfFM*jn0xE&Wo`@xrIQq1YYL{UfMj1AClIzpi}`1mltbYYLlOAVs|mfPdPpq9dEiD-v?9bH`HuXM$?W=aNu9>;D%wD=+3-b^{>3Uo>dJgvFUi-jGuEhsU#pWWC_`&|q zq%QDm^Jz^g;nKG^Bo?u2uCpm}R8wt5{a2%vvqw~t5mOSM^RffN?N2LQ8@L~1F)FP2 zP+`np_pPq4({#vE7;Px6S6LYNS8K=`ck80TAPG(vpI+|RIK~CAM>iS1c?J-)3hF6y z@aU-A=)`8U@kZPPpdbMITJ9bWW(=nMd7|KX1*SbeHegSFI#!bSG6kyXl<2M=virc% zvPYUycm%+G>Xj+Kqy3q^(+K8?kd>XG#FRD{COwSks8a~CBej88t+Go1+FvLK~qC&Nf{iWsw5@B0k z+r0@_sDS?g4BImxtucVBxVJjLJRKMsHW;UVF~i^4WlzTeYK2>Y=^g(20%xil5u}`Z{Vhu@M`5upOg`3BQ=EQ#d zJWf<=5Jlaze+-v$MJ3s>iTPVd5x<7u8r0TbufL1mlC%3ti zvJ;n_>G>tEsKy$bKw6=C$wRE9@1#xw8}5c_#CxU0l6EH&KJT8)pvv1WzjcmRS0}IQ z=8>OIiJaBg4n-htH7HMLQY{HN$I2!J-BQD-VPz`VBays;Rl0%Yr^BPW4#(zx@OlrQ zE5JE7(~dE8;#nQU(Tv1q)G#d&0KQH`u71(mn^zDT`96K}rGkjRcfX3?zC_AT$q+xb zC0e(5*IH+v#4h}`7z~!VD&kI~STRZ*q@ORy=pS8MC6X)Ms<)g_Jf)4gVzqX<;VWnE z{ciT_+l-spQEQJt{G~=Km`L%$WR+_EvxaXb;Mnp4Hrl2Z2a&n$Hp*TdS`NG2@A2P$ z`Jq?r)aXqHClBvBinYypLCCgwBPr^?O)>C!3Q5?zYl1H7HfHtmGBY6}D@o-DM_3y* ze*sX?sl^vfMrF|dKKp2Sy7pmcH#Zl>AvJe7`R2(Q?(y4H67%J^+6%2Nt_$O7;wl34^yK2((mj4>k4KSQew?pV{K4^XutE3? a*g9J5ACeqW3Ww|&oCKT}xyR_wtN#bA-U(y? literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano-medium.jpg b/install-new/fixtures/apple/img/p/iPod_Nano-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..77c82cc2dd04bbfdc306b0d82cce931e9cb7e3af GIT binary patch literal 1751 zcmb7EdpJ~S9RALki_460X3Q{AxvWYq8Ok(@Tw|%#kV~Q(w@PI*JSCfQE!B3R!IIpH zP@y#$_k=|gsk-}9X3eBb-~zW4Y3-tUNBi24CyYh_~v zAP4{meSoM3SO5$Riw7E5bl@a$I4l+?Eg^xIBuW#B1Ze_6hD1SRNMsU$fXE|cIVz1t zBg!h!<*9TEl|~hB0%6b`EKUlClcLHHWT^i;L^Xgc3D|&*fz$v@hA?DE^Z+P{sbU~8 z-^GxGaCi(>0$r3x=f7JJ10Yz`4Tu;Bzz7CGKX01WdEdR=T3nxXFo{&rK*jRhtOP;b ze!FV}Z9J_y>@;lQ1C^g$djk(O#P^~ToAWc}qE4{#yUSy=W&!rMom|UXqxPIX z)k+7Cb7awT)e!(;VRT>?IpJYcH%LVSP~@lxO`gF-SxBPXARH{r(s`8DP*4|(lPO7B zhI{;^uADM6#M92c(Y`%;zU;Yb1=H{M+T4RNfvfslqfG11E&sGz*RTI}_Fc(c>z9lp-; ztRtqmk8MBe&p%`33=6M-h{)KP4k$P&V)86G zK27OKtxiAZv6Koz$@|vJ#(KJU(suc7&t9#(qozSHx8wL3FFVC?FYHow`@GxXAwJt! zdqPN98jw|R_o0Kk;4{5zLI)=Ch6VG_PQIy9t4_=_-_Vu5RVR1c=R%@zF4d~9n>j@+ zG=3P}I9-&3B<;>GQe*nPtY@TgizoZ|4QiA3d&$8=hv{7+@aSXD$-SB($=Sx5ov~w? zM|CC@H_FdmpiDZbyBTU(RbIN5oQA5s0zpj%L*k3Os5Tj>>ZzD{*mJ`fu^Atb>Sv2q zG*O**+&HW+l(|g^kR5A!rWr-3no_Qy>--6hB6Yrh zYqTWy$B#2L$6oAD@r$eX9;pi^(sFXNo#&2xpx-bmi}sin0mdUrm~k*Eh5NR{lqOf2 zwhl*Xw0p;795#2Cc@sP&u=1+wEi{VY%Gez16b@?i8T~ovX+Yw;I+~5D@M>IA+Xy`m zvL7@ClC4wAyYB1Kx$1jU_5Js)u^w;cpZa29Q}jgy6pZy}%}q#3%I!c|q6P6RJCK7v z?N3)w&KNZm2#o_{)7Xx8`KQLvS{E)q5X*r~3D-|GhkR|;p4($|YgffoPRA6gnc{+( zzc;QM_eF*^YZF34o&Rn|Kb6JkX7~m#*5vLPzr|}$A6LcczN6FqlH^3 zdzj8b6IBgj1ROQiNPk?GcF(fwYyZWHrqLm|jRCjJ zJjn4eXl^9c1PE0Rg~H(<8ZUoZ!G0L-5GQFjIeIBKg=7hI1~>!3{@eaYUgM7mx4cTH zJdvo|p0R~DLCM#EQ=2&^yvFm^i696cUMn0qYx{I%9^_&eYNWMqOHu~WdY9n^DcijL zFK$GX8_oBgjp*qpT^08>K|pN{>ZI{P{LHCabNszxOtZk|x^t|Mr$-NZwr#tfTm==3 z4_B{$S3Hu)gkG?)45sH(wTiKRDq#lS;JANLQM@J_^|D z9CDXUxD$?1!4j!6iW_EXS2!O~NyNt<4Vs7~#i+sb^#x3Y!T39x*&7|Ke?{yOGb||S jFF6#_5LMmYK*mMpD`EX3H%-Ma_rBAMv-f^qE9&|Sf3%8s literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano-small.jpg b/install-new/fixtures/apple/img/p/iPod_Nano-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1db05633685c0d42c54d318748f224228eaa8e8f GIT binary patch literal 1091 zcmex=``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vTox>u_zWl+JQH-`E=UEctEjbf0hBJn2PnxUu$~_6Hm}Y%eU{$*fQ3?P;3u$5&%cx>R!%&_Yo` zbcZVlg6&~uWVB}#_|E`TBQ6N?ISLREQ~;}D0;y8o2~?y5ayb(-8w)#3A&|!)$igb5 zplIk=vPoD(X_A0bU}E9qgHV64*)y$iQ*BIbGn>$O?$DP>m7WtUc3g4TvBr$~w71OU zJF881GS$zPT<)!(xn?t~v7lh6!=vlEr>FCWrp}Yx%~~6G?8cd2k=4G6$xD{*F$($R zo7kr`l{=y|k4z_U`6=cspejMl}MFC*!F|shS!hFQQD5%JwVCXn8 zP$04K!$(+r*ejlW`79zuHob!7gg!sJ!~xZ$G+Bj^yB8TUJ}_6#K6G3?WUsxFvX(28 z^7d_9P6cKk4dyC0GVfvfSHRG$b}RNs)2kP6ZFZh2?6NO+T%1@TFgGP4{ra3~{c$Q? zcR%dg53~oIkidygU~|5X_9?Z`K=+9O;|1?ly=3CPG}jXOpGK?blQP}~U| zQ8tl{2da}70Hy;bVAg|2G@~GcBG9iOuNK06DsVEv(>x$+5qGEY-4CUXZe?j_7P1GJ za7c>&`(R@9y!ies34xTXrHT@hnH*fS?)tO6zb=p|?=kIyyTjhsn@{?>YA~`kGToHV zeNgkmB5bcUr^ckPvV;}UixT~#g=!1$Bt$NZ+Qq1q`RTQEn8B(o_JQ-_xKq|Sy834t UY!qAA?m6>UpGHpne*6D70lEz^S^xk5 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano-thickbox.jpg b/install-new/fixtures/apple/img/p/iPod_Nano-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e378c3b5bd49f2e7dee0595b1f3580488723604f GIT binary patch literal 10475 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano.jpg b/install-new/fixtures/apple/img/p/iPod_Nano.jpg new file mode 100644 index 0000000000000000000000000000000000000000..262687ad67c7df3aba9f14ae569c9ca5c42c3211 GIT binary patch literal 7783 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 KkAR8Cx&H!y7-;eU literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_1-home.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_1-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..483ad0b83113539229b47794751effd438b9c00a GIT binary patch literal 3619 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 KzqjR_bnrhn+Dsh) literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_1-small.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_1-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..fcb9363326d9122e835462f8b5ce24eb0fc60403 GIT binary patch literal 1269 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 OAS3ngLCf@U?tcKB5kk-a literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_1.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6ae301a6c501ec936e3e1a87273b72dd882f3248 GIT binary patch literal 9207 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 PP<9=l?j-zQ=hFWJ{D%bA literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_2-home.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_2-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d01d08f4842b806ccc158ce7e86114253e6e219c GIT binary patch literal 3349 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_2-large.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_2-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..097af0de721d941b4377b959ecdc7c79c964d0fe GIT binary patch literal 9503 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_2-medium.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_2-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f9855ef8cec98a39513da32038a863f36ad8b92c GIT binary patch literal 1999 zcmb7Ec~ld567J5ynS{>4A;=K|4hjr3atxw`B*-Y2Tp|MqqH^dHH3$K5Q3Hq^BN$~+ zgh7rtJBSM54kB_YgM@pU0aySUg_0k{Fv!6wVX+ttRz*=!K?$dV!>OvMs^SSG2u~mqR8=7j zh)AZWtE=PGG_^D+S|o}(MIHo1BX=-ZWh_>if>*^;{%@1D14Jdj3-CgNh5(8PqKTla z6WEG?M4>@B-c3_f0G+;Hr`mo1Ipe2I5gse&=68*oq?9!=G#!f!@H}Ovs12ykwaxWRjh&N(dj@28%)NCx>@*|;5I{x{0Af%e8v9?o z7!(?-02%;_L=r^NpxIg?*p!fRKrCv#-nuCI?d=nl*fvom(M(sL^M+;r+#CFU(5;e+ znSAQQG2PRYJHD=J{@!X|X5h?fC_gkyn6k$tlyK*#W4R{`jm;ki(bBHhkm`3V za3W-P!m8sy+55*SVpyy7J#5sQ@NQsIP|3egn;Vn<{#4BK7i#xbTZZVrqb=w0I@a@| zLo&cy5cg7KF@E$|{=bqI80Ve^@=Y?z%tE8L`}COKWCWnV{oqQx)i_wI6b8&vib`_8Q+6RX(HtvxlQW`2sgh zuy4<36#tisUw58PJF-&o@3UgZ_Q?YMxs*$THa_O6qMpn6s-S?9U7PI+$)@x#ek{gt0uOj=|BEiy49 z{k%(EA5EvAOV@waxhW%N#qUWrZRFHlgg#>kQ8yYR7tbbrM1bmT05jO!lCU<2XDRr* zv&e6B>e>UpK^cI(^9Zl(vTpH&|Sn2oO3Eb_LnC<%Tk~{l|$7-GM5L24J$cR+??V|q;!bpegGe_d^!yQ4Xeuw;l#6NmvZn;ao~iU>e( zSR2)V%^l-h?{%^)WA{Bty5W_pHgv%3r%^)8ysCb&>>Z-AAYPJh4 z8GYsMbR)To+q8AIGLY=;^b|h4pgkScjcv5M_VF7deQS58V!TxMBj+*u+w@$bf2y$8 zLg&@fajh%AZeg(;g&%nO;X^$aqo#`UVD92S)QeU6Q;r3yg47K{yH*QTzL1TY`f$qGv4EEXQHGw%kSZ@pa8^GN_J z1?X7Qlp~`h7^S>-VP$0N0oQU+HDQ-pL6jj=bNGY#?xG9p?&!d#1!zIoDs|!<_cvDy z{rzmKd9+6Py@tqw-pf*#0$shtZckob28v-%Z+u6$WR|%-o6fTJ(r z##@uU3H=%hKXvwM=gHeMB~%+0Q{6hF=z s-TSgR%Rk9IVp*CqJB-Ik7yAKwJ-BO`W^%usRJXUS7jsr0aa1_4FCWD literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_2-small.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_2-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0ea3d1ca8c5f9d49e3d72c780d2136e147278714 GIT binary patch literal 1208 zcmex=``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vTox89zC%!_LL9trgMsy)h4 zm213U2{ckpfPo1Z5=a)ZurjkT2`~zqGKc`pK6`f#$IwdjjNcK|^Lm$Aw_)fKIVzEH!;Q*DPz&R?b-a(Sl={?cJneS+ zUGujqh9=%pM;h4z_iCL~Z&B!fCU8KmGI-PP1%J2lY}YAPc(VA?j%?+uF5guD2W9ak z^4k`6J=eI%!zLdXW2zM6D!0MjdE?{4DTPb=vktWXGMT)@Vyew-dwHNA6a_$m35q_r z9~cA`4FeTEIBpb}`0*et{_GVy4;!+G{&T2fbuT<}|9F7+b;-_fCD(%<6)z%Lb9a>f z_WGx{FoQqfSm-yi9c8~Av(~A^PZhSk+@8JVPo=^v{*_ZxE$fY2{V#9nQqgoP`OG~v z^|4pS&r5&)GXU)Xr#%K{pc@2U)Z4P3p7$B(HaT!a1A`O}7=iJnXy_Q2SO|$NP)rL1 z%nB9WzJA)>m<@autiP?13a>==Q@g%9BYC2-={ zQR8XCL31`ncLoV{ZB#b%IrZD;-hp*znVk0=Hwu}=b8F_~bZ&{1vWd0!do#9a$v*!a z*uc}z+CR-v?xp(qUL|LzCPM~R?S_+wenq+W lv^v&02$w!H;SB%lxJtGwA<&9h{iWXN>>= literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_2-thickbox.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_2-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..782173a2626bf808fa7f1ace75f546147df4dd6d GIT binary patch literal 11099 zcmeHtWmp``w)P-{%i!(~!9BPH2yVd%KEWM=1b4R(+${vR;29)9a7}Oz!68h5;M^g5 z@AI7>$$6gd-oK~1pO&gxZ?E-M^{QIceLr`<1^_9_J(UB%!2tkpunlm(2#^6Fz{5Z6 zu!IQPfha&AA|enC85s!$0}TTM9St2F6AKrFiG_oOjt(LO;o#vD5D;Ks6A=^Q6XW6& z;6H%CA;4r1fv7+rDn2GUCjS3-y6*wtpup?F>mk6=0^o7r5OCn`KLW^MO2Q++J?Q&S zLPCbAhyVu0aW$)%fq_|CWJQR3^x? zy;O2M0JuL8N;6G528k5dOmAq^z8dGv6d1Dsc=ba+YHe}h z_aHz!E1l04oAHwyN1NL&A=KTc$qvn-a#D2(+n?UhbB#;5K$f@Z&W>r$wqB|BuT1iMynRV>P&H6>!St>=+YQ#_SPf;rs?I+hsdz2>oV>0`Ft#eBTzXt(2 zS?ZiwZ2DJhQN$-VtDF6Z7~I&2ZEOC)nMF2KAFdW3d;YB^qu=DYE2puPtEV7g;BRr@ z4Ce{@^ezSv%!)(Cwk?R0?N6xBXSk2esK&V|zuW!D_-O={FxsWb!5q#1EdW55P|Qi^ zF`iph%FU|A#n9MDCWX_n!|pMus12ns$(Nxs{;!dzx}v9oPkh`T-~L_;09y=YO9cf1 zL!5%YRoSvr!}jfy$g$_WRE6zTF?x4r<|X_Bz<`hYg`Jq=VwfH6k1682eyT(V`Awvy zvB?LNyxH@yd$xTH+pZ)?LKXX#jc#_g603`>3j3yYzozl@Tj!lH7ruVBaDYsbIz=0D&F@M%Kg9TOGYyeOV0u=(yso>INM z2Z&inZPA-ye%2FO@%x;E3E$*HmP|9f{Cj1P^NKJ`zQ~M;ieK}b_+nG#ZuWkY!7vF} zq(1wDBltbee{+A&fCOwT;{X8wNN{jK6xe|FcP%)0*l3I-fP;%ippFc}C#2!#<0s;! z>55Iljs9QT4LV>$hmcEuUA5=eF*f*TKDE<8l^JdVr z-rkZOaBA7NkzLH+@I~`{l{uzZ-fXcqE(+A$Ih&Cd&Rn@X8c5w^n@ek4h0wueco8XB%!M5^s~Jsz;0Bx*7EG@xt#u zO0?62M`OO)jg+xrALKvHD?)}nR$}^+Xx_;u=@6GhtK7z6_)P}m9&Qn#CK-)(-lbuD zdg9JKKn}a4?L45Yp0iHmB8ulzI(21^lDN~&$k(SftREcScX(KY$LvIzh=xP0A^+6X znisAtwX>`YRtoK#d6T@TlU(FwXJM-)khJO6N-x^YQt!l&ZdY>ZggkW%Q(|6X%&hDy zl7XL-YsMaq9V8;{&CSs0PRIL+;Kf9>a!#IiCc7cK{+)Td2W3-6B2ffel*<>;^wA^Q z3aEgj1f35b`RD9W?r5yrP!G=oLR)`{kp z$c4a&&f-`)rL%);wSG*>ZWUEk`lqp)C~G+3`s>&(E?VnT-;=rGxF7f@R_{Lff!?Nl zZWizVWo|knZOQzIDkz2CjMSp$#e#Q&y?#7}4LXTG8pkv*Vv$r=+NOE>Q2J^Z-6F~~ z1&ossUrh%UQt~uN;yu9e=H(UppzrL5#(FuN(#NpYDDt(yI$`}}C@buuV2{K`OD+`7 z^D>G6Du+{Y^-z3m;WqTB=O|TsCe>9?;A5pNYfx0@!O}n?2n5L{iESJ7Nf0q+ah6-|`G-Ee<;vVnLtCYsA&oZkv$PghL^ov!So$lJi zL^;8rx6DH1xJVBg`IT89#nR)%6}RAphO5t`|tG)@<7 z=koS6g&uTo%?F-jfU$9t^E+6!V*MehGag%IUM(`=LKe=BnB6Uc$QaH8DAdhbcf|oP zufl`_fQN$zBL2Hm0U+QY;?nS_<8kw9fHY~P0`Y&j6WBaj0`6|s55KE=<7W7SihoIt+BF;$|V&|3${)qSy+<7_~ONR~y2c1UgLOMS4l#!R{Hi6?mN=`?8S#_>r*09&B~k;R*^Qg(x`m-GTA$S7ZosQn$Qb=QYnfgOk?<2z6o(ArZ+oNqDAu0ayr24D2C#8k^r()xW944 z6b4myjy9s|vm)(>x-$?nWgl^G3NKmoxwZ72A5%sZ$4-MQ4g^qi(;beV#Kga z%a^d?TK7f^XOK6tTGFfI#eP5y%cF{XE$anxv9V!nGL;%OKBLh16pDJImgE&I@dvOFC-Rq3Jvghf zZw9TgB;$8i_`(-uSPIdC=Q2}?utJvfS|i>Eu`x(_MIN`39}AcX3>OaSxlqFFVYG zwYDq>01pd}kWfxutw4F|i2y*wZqT5hSjdORL=4Ko+F;N(dlH61S>zqF=nP*O@k zNH;#0dHy=;z5lk9M5Wj^WjGB`h@KGqZ8z> zOX92(;;g&6sFIthN9X0UFXcN8TkE*VC9Vbu^)YeW0EQm2vRr)9!gYA~| z))lhUdkT>Z{Vk?sQ7ib4tg4X+O1$z%a~@l^S_nUySf6VW+a%=pu;_db*r(Tvpq?eJ z(ivO$DPL^RF4HDPJH0?Lx%+;#MWl%FvmJ3cgycigD?|3QhT{Qu?`t*dm(mFvhk+~| z0GG&HTJY|=1j>kk&b|u%XDqMX|A*=wKBHW`Sijfy5^{}i6N@0W$HK2s?8k!DUH}$W zB+fZPpu4Th)|%fuVZ1@s7UYT{GI3~mby`kHY1V|vxY^!Xy4_~1)0c~%n$d=klTDf_ zOl}m*y*}y0HEl+xv&w_02CWpaMI==8$9G$Sb&fyif_251)DO0%+J6pWiC za$b4#KvVo>*7s55x}1j~)cHH3WD5MQX{9o*n~`6sg#eGD{#w*jy9+O8dXw@Xx9%)gQ837a;M zr>kqDK5`+Sxs>ha$>G}!$0LN|b(&H24hw=uY=fYqdYM0KP`$d%e6q6(5fmLpc+$++ zRGBlN|Ik|vQ^XDhEx&2qa6T}I;cEn;OZ;8PGKL&ACR|hlI-U-?XG^#cCS&0EFj(YB z)%ww;)TuxcHtX~6Y!faoBL2k*e_z5n=_W(YI7s!PKLvS8G@4;W(AuUwJLmJ4Se=&j zpZfA-y7axQ?6yxk0zg?+8w~mC%;sP%N3Ze}EX4kDnH-c!JmJuP*=KnX;MMk$_kjP&s$ z>tSPae@hla*sdxDDjZ&`L1Qm$m9sBxlf^z=d@<*^}6*D)6+>LJ6PzhrK#dnatVd+u|5oUP4(O)x$D7%-?p4OnY;l+%W-xkec zpKG;=!QMG5k$=A~^s727DH|sO*Gb9Ym)g%48mQ(PgMxu8)cF1Y9FZ+p51L;;-_eKuefx`w&ALfgORKOC`(PAH#yoDUUl`eg&>r zP!lSauKYR!T|TGNFZnVSRpuEVNuZ*$jk(7cz5f8N!9^scy}q5Z;jZueJWgq~JD@?S zQXf(8w$9w%8z)@*3-WNPv;zs8QSBc>h(5fHrT7Jvv3Q$F6)-fb2c{)_(UcLvf$HX7 zq_rPBFuUkT<(SI9mgGie#J61uu*_GQ`{aQ0Vq@sGLrI=Mmh`D~bG*m`t<~YViub?O z*PdpNzPsQ7f@wO0UrAPN6R+5#Wg4HE)}6up!eWVvm!KeDng~<+PLG~9lklezi*W{_ zU80+><6b+x$#xvi6}Gy6nFMRu?@@RQDRK;MhXL8ZcvCiXegmigYa|9Qju9rUR0a4Y zsW8{v15w9Qr4SI?rRCO`xXWurT^SU>Xqr?Zj~#E4EWQZ?XOvrBUerIB|1<$a@n5Zx z^|(dGPeo1CJcs$#wSNI4Az@g!m(g*^Xnzrq;wx}E^&M&L1NVfzhG5T`{{$_JI=RpwP)rV@`%T0 z_~vNOW%O`RSczxMX*;m9N7aVyCPBSB3F($TI`S>pw*I`Rhqwc|x(63MPmR5M-z5}K z2pm^oEL@d6dAty>Xt;hI)$~+6$ImHIaOmo2CE1Bx-kHkwj&~mJ&d))eMd=;C{wp`W zo{u$FtoxkNwTphHvobln{yCxbkJ=EdI;qc1oHI*TQ%CxxXpp{aGxSk7))nzyCV`t7 zo1T4*PrCZSZ=g7vkTPP0l>xtO_^OVc8Cf2SWXC%LbctUbooI2;tFilx6-$uoijxl@K|M$Sq+hvRxqB235EM>y+EZd{nWwU002o_~kqgBw>#!)L+SD`4eDd-)UMdZBo`)Z@`coQ7*Rewq61k8hid zT{|S43l|BeMQrfh$n6ZdPUDv}I4Kx0J*zOZq^987!Ygz`Z?GxX`m8?9NCKUZm6NAuj}5fzE93?8yooLJOVndm9EYL1c;SfMqIQOV)LW zTNe0r*Mik~%$Bu~OZWiNOOH(b%&fA`Bcx5zgE#b_vOK?w(v&^`R1P3)o`U?BlYO3ND-tg9=`STcU_o!~c zY7%FFb{2N0&$)Dp36$!E)$w&m;*oh6`8JGR$JasWgp98)!Bk>7^|-czjD8{Oj-NZYSmb+ld^{Z;2}OZ7Gpl09 z&Tcxvs2o`}+xig}Uw7gzL%BtxjEHMYUB1!*yQK?k_5xhyeu{PV?MOwbZ<&=Pj0~NH zRnS5ivd@sa17ayqB8n^CY(a_1MZGtSL@!i+z-&h@jzHu`;Hov5x>hvU$d=H;v*lQi zp3*S{;*aZq!9BTUQ><)}r5VS*LG2SV82!4OBVggyO#MRNyEW@Q?S6UIpo2n-~=m`2TF8bg7|H?p!sNkdbe*k&JcQt#K_Xm6_xPlC_sK~Q*|&q@9s@CV7yiGwrce~@H(W`J`J z`Geph4{62mp9IC-Q-CLiC=ZoB~y+qp%rQ(83h=u0dO2w&pIBc08;~0R; z#stU*HZkcnV~6SrS^QHBx5)_S&`g2UBa{*4L0Yg|fI2PB4$dTic18gEJEXZWvJC5urLX z3^{!xx^-vMmh_RdZ;U|=>3JzDgtYwW5!G%W7c(|C$+#>m6s!Y|jLV+YJ+2aV0*RMe zlJoV`)8CBV#ne`E%LjymgBq+Hu%ttqpni|>*Cu-EbnjQ5Wp9L)Q{pH@xU|g zJWFfz5m!TUG9E<$_aJyB6dN$p;RwMS?sKmplM4;Wd=zaN-EYmepNkp|A!4}v=+LV9 zRpfj2PFDAEdnVFo###JQVV^~BBou6;>Jc^~yz~Lgs=dJj&6;(SoNo}mHF?Yi>eBf|en9nXY$Nbv- zggD&#R>TZCu69$q^Z(#(&9q-O?_3l<0VR598RQY~tX z>PCe`YY60}?&Xklnp9*`czOh9k5lYBd!};v;JoauLL|)ul-}j+*8Zo1X0M19w-Cwbusgv9TMpGD7EcnWCaObGu zC2{F+M20gXJ^7E$-P2EOv?g@&t;IK~0b{dFIkg7GjF%%w;Wt*PE1vjeVmaK{@XDJt z6h08;+wq^9hrZv7Tc;P_h(_u~E#f$$p>Pmp%FYEc_q{p^Y`VLUaxZ-YC}Cf-p4gxHKf3Kdo_kr5WD z-M#Ii-a!}klQ=#_fWH-kO79Ls`+fFKWP$T|Hmz(S=+DiYc7bRFfGj>!r%YF5UB$ER z>XrlZ*;Fch(@u1v1&=;4ZNJzBK8z%JZ*?0u3S4|HSqCryUNPgxrG?;JlH#{?!E;Q{ zvPn3GR}UeQE(Vu(D<;S!U8T)~DF+kJBIyINVT(a^uK6()6+ubIaTC2y5Sv!}Y z!8_3z7l)R8f@IfcSv_)G*G7U;ptX~-AUfh0#HkDpE3>~{APK{SI?s|7%13)cPl3_k zbc{`&MWUde!;a-bErs~Jm99}mii)KhXp~HC7D~s;SrkhOb2(;eWMcG8!L3=9K4G ziz{A1_+|;HHa{-}d@!P-r8Xu;V@@mYQ!Z7PM}As;?WRonR4ydL#&|5f{_UMeH5Nev z9pOn_QrsnIBD8ipyLH=%QzQO)i$8nk2_&Bw_eY_q<*N0J*)(WHGD%_iu=h#HGlaUu z3M!!t=<+(c4VrwYLa^?!Tb&-a0mUh^7ulc^g-zdkl`SjhxB@B!h?6}eT3u6pH+0v0 z5|e5GjT%6D5O;;#pCjtTohpM{V=WckmNn$EW2D^AW<%#S>`YtYw#iJ~I4TWrE=G3Z zC7As(HIxKwj9<*iA)PC6XKjxo74+5AP-vTm=#+O_Ptkb=3S7q1V7x@+HMZb!pzBIg3+C+Zd-w3*K?>h1HJ9!-4k^_SMEsVo#qGzp}a?M zvseu1cM%+;(rQSI*b?x@pk~qvyq3){||TGq!Zg2lTh5_(!tr}u(CH1Jl9UnTi0 zy@=!+@E#aAW-8;C%TDoxPNXJVr)^1i!fnk8Kohdp@9d zG7Vx+`+&mdYoTj@82-V%!v_G+^*?>h8xTKd&kfn>yY5*(LIx?`-8hGuzm(=CXX`lS zwo_X~;HMJ8mh>h=e&;WLI{u0<;-ZT+T5|67V2zl>YM2$x?HW0`DFqiry-chK$)UOa ZT3?&xd6y~%UQ5mP?R7sn1gd#I|34_PjOG9U literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_2.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..743b8289a618d2d4d9c52bcc15c4a189a7195030 GIT binary patch literal 8425 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 w#r=cJA+=$NcYrMi_@% literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_3-home.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_3-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..82945fe26b42739fdf5ee66d3865231b15b7774e GIT binary patch literal 3886 zcmbW3cUTkKy2d9247~|bM1z7G1nEUOSReul0wM@Vl-_%9*?@qADphbJLMVzrl&Vq! zNE1{g~S1UL_H8yOfH01yZO zKL_<^+&z=+Y z55DW=9uzLBEvhch3Qhx;04M{)VW9^jy)ZE|F)=bSvBF?SnAus`+1Xgx*f=Tk)XXg?SJjN%;%g4`m_!0<|{tP1%3lkFy9|s!;-~Tzl4uFRlhy`My zkkbGI4+P2s0lNV>9g+$1&j9`-APn>|9)U5lu(HuRG;#wB5Ga&^5qdakdhclZeSndN ziT9Mkg(FAJ?!r#{^C`wYC}9@6__CAVe3&S%R6iAnd9(OKC!xq0~y3kpjy zW#tu>PoGuQ)i*RYHNSfOrt58YPj6rUyMfOmqhH3xCnl#B7V%5VE30ek-!`|lcXmm? z$b0*TTo3^IFD!cfFR*{(;-PafFfu|JVTW80hETeoJd8}I6prv-FoWIoKYCg*mYMJ3 zgOZn>EMiLLM1F^WVb){f$_r;U57GWf_P+y*`+t%BC)j^+O#$ps2;Dp=514CtH zQDf~vv9>Vkd|j(oQyC5a+1<07fbz_M%#bmLpOl^~TX`J}OU zfQJSt+s*P1x7H4l!k^_yqOR~ItM4CTuF}57(-aSkb=qY=fxu3d6tUhtpf|O}1O$Sd zBE!vBa;@jWP=sNj`JqWv_c7J}I(K3mjCw@ecg3@J~QN%Fo-_i_5UVhwr=yQK0Kc?PlX^5~t2q$=!wQyIp%M7!Kj3TW) zUe<10z2EBWUiMZbUF*qugHvprb=9s5UIdyN;qvC1Z^t%S_j2OKhD!Rr(B;k9H_Ei@fuzQFHXG8m2Elpjr(C8g&NC0huN-_B8tm5^M{Hi| zmH+;$sVTysN^U1!ZrUeHZ9{BUUhTS#cVCGQ-<=ps{Ia!BpR7?(VNsK(#g3h&&75t5 z2s;IrHkWn6sj+Xv1xG6 z56>9LOv~M0u+KAOu}ED|amhJ~BrTbyd<;#hrhi3Ed}jL5>f5pZ!{97kq8Zcd!SzW7 zMJ}}R-3;W8+V|ZzI1$u*Rp4<{>QwcUT({k5_1F^z%F9?WdD8igAc~& zDM1+49z?v_Dm_(VB_Sx&lF^SI7tWvUsWv7n4C$;Au^+LV6Jc*w@FtDuuZ}txp}a4` zTPoY!vWo$Bj_Kh&5g_mu$3mWxes>NVrRyEKT4#9lPzW>30_e#Z$EE439{@YXZ62Zh$%H_{UMSlL)VWz_2m)6Yu*r)*^zCGk!lTaa21Y|mL)Znh@}}UVc@14s z2MDlmw!Z$sfdc{I8YgOOlP0(VVQ=gJ;nj{Rh<{Y)M-O zT31g$+V$N)bXAf7q6?>%K9&{&0u+yWU)-HJSXUBF>O^GvWHSihE%!NeJ0YR$xJlt3 z=d%%=Xt%3TAkfM}vs`MI|AeJzhRQs~c#*~dSI?lk-zrN^E;hV>Ib)T3=G<*VeVz92 z$cW2#{91J%>ey+Wp7XXiDA*qF$Vjkp?ZT$CGrb(~`6-qc@-JMP>;UStOZF1`bSW;N+~@^GMY zGAcag>VeMD5qaMO>^5QqUjHlBf!KG?J6H%0yD{o;RP)7(T832oNb1pz=!9S$6>e*hw@rtR? z_p~6EM}!e*%L~qnG{Ii&mv(zAI(9O-!B2mP8H{vV-E!jzw2GOazG-uuk*5iJ#nS~(a}!FP=Y|~mTcpjX>(}$FlBKvy zI)e0V2=Ke4w;z!T)u22<=$R2?&Ege+?>`?vn{G z2t0@f0XE9;F08}!#3eiz(^SV67eQM`C2mnM#^K3bo!|H-10&%-!}BSA&2#O91SvL-_V&mA zO5Pqms7Wz*Hja5d6JhcJshPK_YE>|w2h+IeF+kAN^x9}N#Ziuq^)0DUj+|ZGYR0TJ zTg}>5Y0R-wL`EpOPxYfi{iYJS#g&aLoZQ}G93{jB`S63>8+n*XYTlqYfzXvahunVa65Qdp+@}F*G{Fp+k zNm@Xn(o_|uil{~K@|Zvn;3nzr(3f-~Kh1R#1ZuNDpji4R2>cln(@=}2+R`lZpG}!c zozG`ak7me5mf|Ld_svhJDiN-QMe>2bS2zs{0*t!jhNz+3Um(z-t3u&gC~`oiv_p%6 zo{uHUaZebE$IT8@rQCn#;NJnbs_c8-urf||LO^rxbYZR5gie~&dGMB2eh7`}>v!41 peDLVSWXR;kp(U{xE$+XkqhpYW_pnFf6IDs@*kpTP;vkO literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_3-large.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_3-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e85cebc56176234a2d03d4a63f9ce8639a21dd42 GIT binary patch literal 11322 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 UU%3DG&F_Eo)&I*>hfzlV4Ue^_6#xJL literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_3-medium.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_3-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..cb3762ea12f6b0af16a618d5731ab8b3950cb13c GIT binary patch literal 2324 zcmbV~cU03^7RP^S1VS-^0LmVU6d?oBtH4A-K)^woB1N*&0%icE1c*cwP>~#^3M&FBI;@DDrrPVhJ@jj>>ccs9Gq?Jl!(Uq z7%in6(N}*CiHcLQR5H^=@EL$L00Dy!Lm;RiV8SpM6beJY;X=Y<2r)5Hgs7;vgd|d2 z0wp0Tij+a3q|nmR(qczskIJBrN}{FFhnIjLf-_K<2n;5I78eyq|IgyT0#L$$GvEvX zDFa{>2!aCf`v64&BnSK-Px(E4{Wo(Zd1)%8fb4l`8^{2~%X5HhkykIAW>P}jixU}$7)Vrq8E`mBwu z-8p*)H}{K|JT7~B`3D3B;e$i2MMgyvV`Ae-Ny&Hb-A{RtnwgdTI4AcXPx4BhmzI@R z{8IU%zM-+Hx#ic^wq9D_>o;%v2L?yzqaS}C8=v?zJ2(I3>%!vF@;BDT=GOKOdv}j> z$OQr*e_{#hpJ4yNg%WUqp->1Ee#iv^#|RRFg2ImL2}z!DfnU8LrL2EP7;TmDtgc5y z#lV#*?H4hOkWn?9Rbw5Z{XzEMfhGQ5Wd8#DH`gaX3<4579s~tofql1+I@Y}&?0hQa$6XydPaQqIbvy%_- zUuOR!=|bjG|Wp&9k=^=BaEKCDUyrXj8mvkGH{y6p%f zuja}q6&QOpe5gEq*t{Zey6!E7re*jX&1ma-F+^-`Uz^k@N!@Zn9!`P!0Y@<@nwVy~ zSQ1wv)gKqzpZIF3f?Tdh8|=2N+H{+rDrv*<&_}#7<_ts(F)9=7!3**xm20o41w$Bj zs+D1-=0I~MA81h}E1b>hYu~|fd@cmg;|Ww>tG4VE75Z4nl$X_Na>hoj>AdO&-1pSj zc{W?Np;5*6C(Nj3T&~RKWVmX2aU9vqcabhl^NAhwCf58c+9o0OTL5>Ccrlf{ANL!>b+(?yYEw@%$n=`u)hhiPLB^D(gH^A-)jqZ`wC2WS&~Qj>$hu5I zuXQP{lHz|&dDAmDm|z~iQ5yYveTi{rmfu$E2~81HE0YRifuwqp%u% zCfTAzicx?2CTjumsGyUyO?4ek2$;T4Y8k-KxOb*UToNkiSJ)-pYT&BHn~$7!>;{)* zCkJS)T~AJXMq(qn}Y{av&R?ri*w ziwzp^=q-|pH&drzf5xJg^;*-`3_S0rN4v{7H=x!V<+wFn>a3vl(AjAQ&bPhehJ2Mh z0s6=Z{6I_jbmTagrcO6vb+|Y^^f5xjrrr6Ncq?y`Q=?Ge5WV7*)>k<=)pnV!gCra% z?&69kmIs3ROy6J1StJ)kEC#% zxk*c#y}(fE<#^Ynd%ufC4PCPKH^=Z&sBKkq2@(V%hYzeZ%~nxtCB1Fg&MHaiJ%)SP z`RoCB9@npJ*SA3K^0iSW9{^Vwb{f_dAwN_*Y~j7grQw*$Qc{YY|zdiT#;g< zzU+RvMS$fhAJ}??*oRZKS>dZIGwa7<>$!biceAT2r{Zo!RYod*pO7nIO27w;qo~<) zJ~dt8cQ{@0W!eGT4E)L@$Kt;3^Blj=q=BZO#% zu4P@;&QqqN;`$UHSVnJiWPNe7*om>8LUGo``zcXtW_0&@?W<3|2ZXlI2Qw1Kv6{7C xVyMp4w%M08%`SI1O~m}xr}SYG@kfsz-(!Me%Y0KqJWrBwdxyW&J${xy@lPdwOmYAK literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_3-small.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_3-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..daab5386374ef63e1b720e5c85a6d84c8f0fbb9a GIT binary patch literal 1426 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 C+~3Op literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_3.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..66f4e1147993194b3df61c677d163f8d396f2e74 GIT binary patch literal 8809 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_4-home.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_4-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3f7dc71ce6db78169c0589ec56c3a1f8b22e2330 GIT binary patch literal 3608 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 HhlT$GF@lwq literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_4-medium.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_4-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..32bb8fcf57d47e0309f0064d6705dd101504985a GIT binary patch literal 2087 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_5-home.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_5-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f25953bd37553f68c138ded5970dd4139fad8da7 GIT binary patch literal 3877 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_5-large.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_5-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3e5062ed665d7dd8d88b084cbdbb47d9fa294142 GIT binary patch literal 11205 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_5-medium.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_5-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..38e9e044341fb476fae8c40e0786912aeb9ad647 GIT binary patch literal 2262 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_5-small.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_5-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..92e3b40228cc516e771f7182aa3b3fe8cb882ff6 GIT binary patch literal 1413 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_5.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_5.jpg new file mode 100644 index 0000000000000000000000000000000000000000..331e3b93ca5432e6c89e851243cce08ba7e5371b GIT binary patch literal 8790 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_6-home.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_6-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..daa72999876dcb981b689a17cf06c752bfb6adfd GIT binary patch literal 3080 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_6-large.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_6-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..40feb42311accc1fa5c00fcf77df08b17a9f561a GIT binary patch literal 9088 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 L&L~v*asGb*(t^Z6 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_6-medium.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_6-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d5b387d4d620cf4aed801a951e48b592f28a5e29 GIT binary patch literal 1798 zcmb7Ed0bP+7M^==HWC8&LK0F0O=QQ4M5U}spvn(WDIivCfd~j9i)@O|q7W8El=Xp2 zL%|;f8)*$ykg%0aw%3P%r0_t3CA116QVLjbLDL(pcKPp}nSW;Hd}sO2Iinm=Dgf&4 z;^qP%2mlCQKq&_w0tALt8y5n;i4-D{Kp;}dWD-T4s;*9>(r9!IEtIZ-Y0zjW3&pe< zOeRxZQ-{rBu(cRWhRO(p;1~i?jYw2u&}nqW|1HW}0HXj;;E6zM0gOQi1}QthDpjZm zq>A^gkRc+41S9w(3%~!%gGvE{m7_o%fdGsmD1LmD$16#)gLIx(^SqGcSy@|40{;mp<$&-RtMF|rfr%cqw zB%8MfMjFvNGp-YUE#DzrZ{%ifaP#;{Gk5p-tebPMc1g!;qiX$jhtwT8JV2gy>#eC- zk+)_pi+zS9b;b-IA?Mkgc+GL?s2`y{h;&Y#ERmP4@Yr<;+mZOFu#V|VS4HMhY0U|G z+z@Z)S3~L7nVT|}iktHrGQDFaR@-dbJ^bE){_@!P^e)F@BmeHAdk?oCIXUPOw8x-J zefG)OPqZGnv-10Z_-<34{Oc|~_ak3?J-`U9Q~v2fTDe1aOJ|3fFh(~n+GhW>%XlMZ ztCRa_Fi)miZ=KmN==+W5N)zwjS7ezIO+vNiynr3iGc)|%#)J0+Qa190dF*n_7}c() ztiqwM%9pBrDt9S{FK8}lZ>c3`9TXME+pcKn8Ie*I#tylkx|q>+6pT*ZT#$QSokg-X z6k)z1|0`3&)50r3n2VtE8K&Q=`*_aW?We%-4e!6?Yg$`Jf9rcll$V&kvVYr)ONJjA zyB3=^7L?(6zy2S9iW_ucE@`o+E4kldMhP4gvkr@0dW$%Nt1z6vzfA@NFqFf!bb2=$ zXy?PueRSjp4SUBo033n;JMRPsa8XO%8-Qv^(Cm@oxI{JjPbcqRPO%8+$5GtZg;F{C zvrt?faN>9crsSis6Ypw-zWTTa+b8f7R~Hs3N) zR8OWjmBkti3$p2@-1%QSH;l#K>&$Fb|3asjlPTL8F>m80^EzP5IlN#SQL@=s3mH=E ow9(7&hcA}hZi$0RZL0bA^Gt~U$ra3Y2b5QO1%_VyR#SQRcPd_?{{R30 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_6-small.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_6-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..40e9cedf1f0352a2f40d32818c7d3aa076f66504 GIT binary patch literal 1107 zcmex=``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vToxPe~WlmTcQ2T+2MmFbV`4Vl92f}TrkCpGiE_BZgISLma;)AWAi&(-I88?$`Y zS*O32w|{4vRJY>YarV;w`JZG~+Xwp=P2O#hbi&1JaSwY)?sK4RB7*2{HUL|~%*bfZ z2y%|7Ad*YKo>LG6t6&1D5c$slRHH4xz{teH!otQ3^F0$IGXsmDBCC*slCWX%Mgir( z#KOj+g%_b7V6$gxmyKS)HHCZ8kz+wmH%U(wo5ySt>T0+s+U35-ZkL9xf(eXU?#!Fm zI;qdM@7BJPi}IJmE^M27NH#ZG#Ovqu?MIAQwI1_syLqA8^wqpyYP(!-$xl5LB`34B z=hXE09l2`K4}CYJ@Nv~?FG>e${JBP5d9BZ#*;cvn`=>ToF1MIm%;xrJxyq*h4B?K9 zsxFhdCc4PqQJz`8T=gT+JBk9pAZBJ|Ktwd7AcLZzf@5If2Z6?k2Vt>buec~SmS=%4 zcVkziao46N7n$Opb?^Cp`J$L>h>S(jCR5k<<`-XnUfkAl?u74d)1F^@g|2;h@vSm+ zX3mX*V=f*OrPI1CbGAHv%_*Dlu`=L}S-5Js^g_NL3tLX8J(pkkeNi6c2`ON`dZ}O@~1d4)i@R!7{P{HAB_IeBUULSU3?Dg+PBHbxSmr~MQA`S28 z^L?K8d4KEcZ>@Lzet$ma-nr|}Ip?!K`|f?$-us?&JAJzdfGNr;$N_*r004+O0JmQO z2ml%g^y@@5FzSRrArLSaf`x&B4#mO3!NJDD#>T~i!*KEN@vyOB#4vmULLwp}oI50> z#Dt`9LL$OnLV#!}3>bn5fnXBiV&fA2uiI@q03Qm{25F-KX#pU7AR0dKwi7^!QWB*a zO4ENebSMM^2m+&_MoEFc+rNfTH@`<_0XQfK2!;kjb<|M*`}lwE|NmP6{1^%1Boj_Q z9{+R;&@GHo5*T#a(w=9H3Qm44|0jJB+HXS_5^^(U#aKfORGecGWd@qi`;!zsFKL_0p)?*>cp>CmLuOV786Xcz@@5eN`($SCY@Y zdT>*>nX${KQ{5S)`1g1y+ZHb2SJQ3JsXU7X8*>%$c|9$eSugR#u3fI)9_}&zq*7gE zWU%DlqJbDGQvFsHC*KBiB2PCbdrzakBvq>Kgea`lKD&>-(hsqEK9{Qli1}ME0Or<7 zS;+5LB41MR%~Gc{QGt?V#ba&u7SR9b&|P3cCt2a~E~Ab2pA;AUj-zR*HHmMo$xe0p z!}ZZ?^2;fE0t9%mbsk4NX$QIj-JvM#1@LpBy{QCJhHsIv#Wgzh%MxkZCyZDv(%MA3_D~H7LS;F006rg_kc(FhgNPVLK*LW>pTRA4I}3oKCIKO!TY%|L zAxO4PoY`{BOi7j;#`=)!%us|=cFJZ|8oyJKaV2&PrD~HZ&9~GQi?mO+Q;33+Wo<(o zIeGv=@Ul?xBd7$Gw!L++eVDe<)^<@!Ec*{*q}e0ai@m<}G7;yVpIRFg3~&uPMa}VS zjkZ#r%ivDxl>Ujh-sGi`dQTSKC3Y24`Tlq#{Tb1d9=p1LTJw55(t6Blamp3CG((WS zv`>iI5(i!;KRIID>V!} zZ`!b5nw^^3;N;*DsEmf4(mG;_$p`bh1d~p^>uxl;KbVuRaQ*z(bkCE955J~^d(~}; z2g|63IHEll3t?ZLP?p!q9z!)hnt!7TP-wm!+`P2)GCQ8!Yd>$P(#mts2%ND~|9Rd< zquduH^g{J%aE`j75eF>EL=wy8tHE!vO&CNW>{~`3}5Idj8Vajq%cZCi&cH(k!>5GuHGVC@wQqGFSoztHe*l5YEj zImy1zD0`o`TXP-%fulIrd#x;8}rY|wH>>aoHtIA8}*jBL8zFOzgk~% zqpAHsMd?^i~~wR z<2g!GbQH_nTN`=%%ra$z>}8zwam;+g(Irqez2GQ39Mkq)8WER`b0mcTNLXx=>>vkBt+Gt*&Dkinne?JX-cu?wFLRV@+VJ9oqbys+BWuW*+wYB@8Y;Mw3@ci! zQ|E~tkxj|tCVzR_0CpVT(4TgU2kFebxatYVe=}*!c`%x|xm`wLSO4Va3o+Xr3TKI# za{}KsNAdWBBMAeI>T`Sr-Q}#C{_WgfH1lnEakW{aT``H@r3L`z37hR~PgNAjpKCdd zb!S3hi%As{AMRmL8(oKxO)35|Z<8+-d;lqPh=F4| zzCX`k;9_wm5tgr|JiHxIxBeGXi%f+?x6*}syNsUuYvJKdEsHT84wc+*IPCo5(EbSa zh<~d5Ql2x@zm@X)p#5|nYs6nVP`s4!g0xaj@m)|5b~#L4{c?c0#J8t#Obs9%$pbWo z4k6j&7=ynq2P4}NIMUf6l9Wr7U!%>|{rH9`$9M-N0uuAAQUvdL-vTrwP|=AR9~F)u zkbetmzdGQwYKCY8T;7qt0}?83NdWiyWC`sP79PpPC$r9^lJ7M6W{NE7gbeXvt!NMVH^B9M;- z?AF)sp#&H=W%(7 z`ZP?sw>RFA?)c?MxQ9cArC92;=0Fj;MYj5VMAcUD^!C@0{iADi{gwWXX>}aUN0IN+ zTs@g(rC91el?998Ntiqnn~g$BjXC$m!u5JvQzApOA?T#QUG$ zaKC0`eIn4V_W%5h@Q$aSeRs>aU(tAPRdkDKaK6%*wWdvJE8(@QByVsyO(p#g!Rv6> zQzX3O!gAIy4VljvVrY&Q zijHtx<4i_JXqzJU7NFkmUKE`A-`e2Zm5VwI!P$CPPh*-ygMeo09Sme*X;oqYk)eq8 zFp5<(DdXS)=Y$XO$6bFCy8p3?%=_Zt2w3^!ZJw>jpku9Wvy)V>Sw<1RFg$(iN=XT0k zn^LxB>4%NkcZ@5_b z3z;iZ#Gscs&$7KFOjXL#`$X>)8C%HP{Pv=r*aX7e@5(4v1!KfYiY2SkSgW(6Kn@0p zdr!qj*mCgJPKQMo%SR)4J%?STZlgj&26cEVDOku2DW+-4BOOg^?bv#03bX5Grm2qic)=()Bx2UKtKMuaw z_2{`{JKRC@rQjFuxbYgzn9dKDG@aGS+bNS2S)*vqpy2_%3gNOXTZKL6YQNDmWfiNx zRPU)baT+cOX??pb?QJ?H--G_z38N8h3={F#jG=4QlJEWq?nn0$EC}U?#J*P=m(K-v z#hiudeAer_a`Fb~=QP7)9yJEyv9cner78)DqZG8NPf!L4=ztGpcOYyFUcSA{J@rAE zcP7b-#u}5Qm2oRUKXo$N0ZPQ$c7J{4NH%@6QVE%rhAVJ2+}T-qst}MzuAynBu}nT( z5HQ*_9wp^;-{YR2Fn&FE4ti(^rj0Hrb`WZn9|`AZ%1{<;U$CkDu1JW++-q!&a=Hqh zgoU2i7<4>;8K_+O5ptTJbc_{ihn!-Bu`}m{ww{YsoalY23Xr~er&458nRXUsB6iN5 z=9<$pGIP4duGJ9!dS;1Mb7SS0^(f{;_Qa9l^tVqdT52;=M1hHWuh2>kf@ptqFszMx z=fYSA;~1;E|KX=)qkwT)ppgVAZVmUcWecHG$lW@<-eiw@633JwlWnqyx{Gd;GCXW& z^JI+3o++NR>eo&J+lakWlgWi8)$}o3k~K<~wt|mIjE}5MOcgC1F3FcZwA+W%^qba3 zTHU?Rv7>qSKKnl}48QLFkIU~-X4E`ljYz+D479%VCnoQvr@{j;_QDjOpIwLBPaD37 z%Wa#(=$T2P_IkBMwT{7-CYMw*Yj}6p{VLW{(-g=%z@sqIR$Pf@%T&SZ74N~kA$0or zw=#zx_MN0xR^rsDA82%S?ccmg#mU5Khn3ij-vZ2u;R7#q;r?i+8X7nlSZFT^vs9ek zdnh~Y`0c&C*t(H35I2|;y}CR~qI}a`XTwPYXD1ipSxS?61_2a{FjhM8%|oAbM_RtJI1>H z-W9u|QW)Lap%v9H^Z*E;4w&rLXBA_lZLhAt#Y10Z4K9vdzt1(F7Ar()BP^_Wv)Gvz zc(0-M^Ji?h4SS4ELg`WlT%^Txp+ahAU3b=kpjqVN*MYC5fehXUE|nuy;H20Ml=w&$(F zo_tzoBGXwD{dW0TiBFkz;6t(w>m7xn4%O-b*Jq@My&2Yd|8N1BJx(ng zX}%VCI6s)h^CqY4-7iz#*=OMWmEESj+*q@FHtgm?S!;Bka77TcX!Qh4sfU%ibU(f{ zVb!mQZJzF5urYg4E6Uhl;{T$c2QTV6J%xABR-3T=-0l{DDlk}JsMR@C*#kxcpbCrM zpJV`h8ZIeRO_6zE=o3`|Ya3BpqRu${=l7Td%`M=Qa8j3DdwQ1f`fS9md@z(~>EOD1 zo23_VV-k{xOe%}Cx#AD|gl=`O0JWA8l=&qCW?7J_@nO7VVBw}U?e&^Y(4*CCw^yf7 zh{0WZydZ%2>+;?GBPz`|)q^>$3glAI8U{Q;+h!8^BqA6YJhUt8%?%@autm-^%FkJyxqigWMfCX) zBJiHw^KTwF-2mf_C0(lRwF8LR&^N*k6tHz><{dtJmJKpaSHx)dXmB7Xz>iP2A?S|g zB-u{6UOT!ai-^|4M`If}6zb2fmsyG!C>KsZE<~>$Kft<*@Dp|FZdzp5_RgF2(!?Op z)VEM`Z|C%m(-@~Dw+3S=4n$Plr^h#)y& z4@z$V_62p+1msQV{G)k8q*Xy3teztSYdlnra*`M%J~*pRjtw3TO>Lkt!oXz=K4ni!?{U{* znbpjEVXHHHR)HqI%`7;~TlT_r^xNf9^a(peEDO)dQH zkjG$covo&E2ME@DDBis*#Kr6oYq~#aE?igY=ClqH&&}087qB1D+5{N%q48}6HRW+;qlFstlW*WcTLF-Myh=TFZZ)p)c6~Um86kG zxOhooSR^TR1DkaGD(9xr`ms1om%EA2?-6u*Sw!A+_)#dX```3*y!np#Y~uUcP$UhL zkj~Uv9x_>LXI120244X7@P0v5e23rR!|~h|Pek8Me)5~_#RbjY1(Kw1Zd`WZUXPS- zL_$14>WDt;28)i@H|UpfRolFU)vmt$gG^#%EK_eZth#4#r`+i*HG3HNV=s)cr=Q$V zkq=SzN}pj0wG_-rgl0$w+1~*y9=OEQBlUICgD=BmRn$GkTkiQC3SEFCEHC|&$+-73 zhH5Z#vO=%%FO|Q{+T1L$aKGCNEq|WWwyZwZpU3W~d)w*ZQvP)j^2eGnf{^bG5F33M*sZ`&7F_k+I-vroX;bz`>o zcPcRX6L^9m1qtlyZvllJ@vbg}r{<;ewl{3U3Enj>&~}i~bVS!Z9u3!&1<62Ui7ynJ zz#+VNpV{+%MaTfRGN0^Lm6EH}=a1$+d>`M?B($Z)c3bV}#8Vx==y(Zl&6el42Xs7iFk$2IZHYn!)rnCwbyU&yRXyC$is zXYB&;spD`{nE^ggVtba}x&G^M@8ohya9&{tapB6wVQUVop~9=NFGa!d@(>|JjDA4A#BUfrB)>V-pEJ3nX!0~KL7>XY-QOdR2SD|He|k#6qawkmKLC$fN!2lf{y-^c%s~D1 z5AWd7TT&;*>OTOP9DBitKLC$gAE;-6{s0u^?7*@A6YxL%{~HUSs@l8wzqYCY|Grrb z#OH$1s7V?9+d>}f(x|Rohae3{iN>`Zp-W`%8D$D*6ehBN%Jh=uJ8a%xk0eVyD_|U} zjvaqPeNQeUdpyb15_#V94+d1l{6DtCQ4DG@8We-!?^^lSDj$l0wOeR5>Fy}|_X_dP z)k0L(7c?Ab(sH_l#gznpn{k04`_9Zb{|8VyI;H{Xkzho_7Bn^DGSJLim+9GFoK-r{ zL$@UBv&5hK|E$$Ps0Btaiud>a2@szK@Vi!5^ErshtY|YFpjhhus1ucT(*i zs-7uKU47hMY%IaAzQf}}&Fowk*#-_Y5e!Tjlp>*5Ay>jFL*RM5+sAt{eX~>h(`)8^ z^pWT?Jc1jN_m_SP*Huh?W=g6|dh|#LL^A zPgpRa_-u>)kh*v0d&LEa8ktqtClIi4aL59QAxt=a5_|C4v)O7m=xxue$C5g*569>9 zfWG=k={4sfzO=EE(a}Y>onyoml$R9dAwvcwV=9GEKc=Q35=>w^C$yC;E*&WL^==@c zi`Q_9LvL~7uAWP#b4^8acGRICKkZ{b^!IEL`uT2PYL=LWUTV=;=3_KxK$|x&T2_|u z7rnPZzUF-w*3^F0Ggu4{b=#-YfZE?q9&lT7c)E;-wUa+52;YNd#S%!oUQW^Wc2jz@ z8K;<$F{_!4{s^nnWX|(uhwFfSd)4GVj}&%9o@u7ZNtsG_$K?`BT@V4in`L6dVQ4IX zo}@K+F7?P}tjN2cm?h>Z{`x4EExu= zTfm*X2cUr+S#j3g0C^ME72)P)3qmr`4j-W;$w#@l0T-e|t9A_e zca0u1R@`l-Qv-eIJfR=LdO3j&W{R|Iw+S;cc8ZJCYE^=R0KRfv1An-EB@$j zn+rlpJ}=-&p%3oGA!CwOWr@yESoIq=`;kZDs~lrQet^?aRB(q@*MBUi0{SR+?3*7z zQXYqpO*!D`*@x479YT&|yn&k4lcPLyF|B*H7T;qQCBp)vw* zkA!+2u)&(p+hV#l67b9NxPjAr9a1Yec3Cgv)4`qkc2GUaHbmq`f>rctDTT3Rx36nT zEelTOyO;f}&7w5Qet@9#J5)T#gGH0Ir`z9Ms|>l`8Y@3D-&^!fmG#itj~va`8p)Q` zehw1qByotvA}i3MNHr0n7x4|xW01pF8jVlitCu3!1U)sLaeY8qdX0b5O%_ z&Sb+S;0l-ru;4)pG2^?*;AmTmbSRcRVWETaG5_#uM~v_EdkDvY0Ln5h<6(MCRdvyB zIzwQE|D%xf+K19`rk-NS#8)qcy9;%g0AavtJ{u~o0pqvO?|wd56XFck+I=~agi-bZ zNn&U1NKSx|mk21-ex!Q!{bOPHa(ngt3-Tr!2DiIQqb+p(5T309|*+qDW z0|VMfzMj4zMjQhbcUjtpJ1u$fM9mZt4p;>)w}8!bo`tE-o-`^gBLtmF0H1rQ0=whZ z@_rdxD5WfpBM14vG-7IQH^{bJ zjd@u8aVG6SZZ2AHy5h5r#S;;%{72Q3RyFwuNFx6lYI>rZ^@O{U*f-mtw zZDVgZKxHv!kapCe%LHZ(*P*+4=#v(*?Rl>fkA&S<$7q(D%6^2$+aSg6}&b`$7Vi5?V7- z>D5|h8`JMlDF?RR5KmC6^nHyZF}!g!FZ!|-^Uqe1GgKTm76M>RuxIG&H+9!tGH=Rv z1%v06`Qe^DDLeoGRuFB=IvI3Hq-P&LylYe!v8wojERq6ugXG6D6&qfi@PPTi{jYZ@uWuZ}Co>B^ zffqUKo%|wqup|iqmcFzfCi7Fg;1(9R9dP2egef;!6HAIJ3OJsJEvJ`12T?)Nzn(u8;KCEmxV^K~R2U>Gb_c-@P=KdZ5GFZpGQmx2b3GBfC?rRf;2eoXEtBF)NMT{Zyrsjp zL)?P(+|qe{PTF;JUC!%=gHt9#irUi1R?2eHm>{6BuBCEmF#>?DWJcBGlpS~W1)d&X ze$2V1k2npzsNklh{|w2B8W&=|PPZKlbwg{wR+N70hx}&I&F4yB!W7K~_#D>I=wMyQ z?Vja9_Z3fSsK&--|CHc;DjiG1{)s`eB<2D-#+&ss+{jgj;~31Sui9`D(#WfXy#DR* z3eo_h-dOg5N6X|v>qCzQJC06HC_G5LW6F49AlpHY^51Y~WdkM|*YZJ+mVwjvsoC}g zfgYb|Kh^Ubi8q58mE^rq8_6k>s?_)5acM-BA>zZU`NKD1ir&Z9PA^*?ZWAw^y=>1S z4>yY1OFs>7K4=jXHQR5|+kFh2d(04iaTfWF$6K)VN3U0C$K9FEMnifzxtCsBO1Crr E1$1VU!2kdN literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_6.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_6.jpg new file mode 100644 index 0000000000000000000000000000000000000000..81795b2f9d8132eb34f1cadf190c5bf214568ab8 GIT binary patch literal 8156 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 HUY7n3de!6r literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_7-home.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_7-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f19e48d3916d40e6b72a68f64714ea33f70420be GIT binary patch literal 3624 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 dJobEZ?Ad+n*&7{!WN?B6XDC=GC`d>s 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 NK0JDGe585t^&jX0Rw)1g literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_7-small.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_7-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..47c8f3bfc52884d406209cfb5f2f0b742fccfb3b GIT binary patch literal 1254 zcmex=``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vToxGJ@m~5)2H?tc*-- zEdOsY@Bqb`1egVYzWnNM?zQl2@P5mjExS2*o3u05gnhbu?W3OeZa3zXJz|q;x z&jT%!7i3^!U}Z(}10zs`SwK-p$;fdb*gl|B>=`8uniZqsoOmtW*4~Q{iSdn^7X0o$ zP`?ULH6s%%3p3mVMkZ!KAqG|f#Y7e*Lu04Hi(o^TK!y}&O)`-EE%kZl^XbI2)9bjlMGBdIzUEudBk=}?!uMR$QzqQ9u_3G4b3rpW87!+{c*z;n4)<(B2lZ>-_ zWajDKTP&KgDO#c>>v{P3_N32?{;twg%gK78bztQwvqkpI8_R(PO8Fi-`8teS;*i?< z2XBlFPHi|S+9>|!(y5J)T%Qy_2YN$U02pn|ER3x1*IRgGh%mg}8^14q#zcF0 zd!S|D6v_aKH-Ufgn*Hb9KLed9D+o-sz|;o|YhdyfRAdlv1O_l7F$gI1c``cRkNf&f zVu`T7W7ENpD_W1KG#z162>J>%LrxHsL|KqB2G|Tk$H0jTH^LKxKwS*?XJ;*kKAE4q z-*Ug%o5p^2>@l#=mVCc<&c8t0Sq)7_6P!FwRBTuWN@nr`Kr=xOLkT`ZM}jv5Eh~JuhUY?T<>b@mN9sNbZMFF&fBE~d4!xXjK78y2 pd{*WiqALXp*IzJypgiTM7TezLIVBq;IVK5NwR>Cg@1OtwCIHT(^Y1S1>|(*)-QC@TyIX+Z8rE*j=Dd^{X{EF4^% zUm!qOC=VPwGCVvo4mv72&j0oGGyni2!RW#0!2&4(Fkm1o82B^l;8u+UBrEC?#;_vC-M|6BQg*MO+`Sdf-IN5#ytTNNVu-w+;5W*eS34nxzFq^xXpFl(?Uk& z$r5Q3R$Bji95{pkU_@t9YhcoW0Rwn-G77j{H=fwi{{!r8?Wp^H^RP5&1&rc&zrINP zb`kq=H}n?i_dw*D5FC~@pZT?SOKbBrI>BqMkD+)ktVZjZdHMw=YCQ?^o8k^JbWAxe zljuC-*V80|;C>GT64=4OI~F=HQTl#tW4dnM-2A@8sOG@r$7EeCV#+70?EqoVcIlzefsH-Awj&-7q`5HaoxI1hro^XOz8=ll&+MF~$uZ{ZRDqvod+; z43D^e(LZM~0HZy-H}v;FNYuxusNN(V8=MZY$Rda*k_$=EqSNieKN@LMA54iWH@b@r zs#fquo%PS1_4Ugv9{;4HcNNquYo27u(%S*M$HlWu(a*fwl2ScKEi*U?1BUew>hG> ztr46gm*l_20g%6|U}jkfHO5*Yb@pScRE?@|&p(@K&01GsEx=~2LLY92%*3!fZ~yV> zYw_Fv6HJ(sy>ac3p*6kDVaNCEq}FS$>@}4RQHkW9^Pb4@9?4SYPh7_er^Bx%IQuMV7H5;u$G{MgX5ziW@8Z8j0B*0M zkXH4$D;-IwsA+29WXKTa=kx{qmiE7m|92XIx;9p*-$DQa5#fMvu>WC(x>$Gw7&R~! zHVy|5FCs1;7w8!UX8}2-1k~FhLA@Xl9_Df9ia_`al}4+uQO=m~=V2Ll;`6~gJ@;x1 zAM>di3>i06<@P@QmM&>=`4^~QJTwRf3??|eXUy14=`Ea}IXIj?TeH=L5$9rGfn zb`t1ZG7%vCg8Ke;p9OwVPaJEckoI#kpf?R}p%0|kVZ}&TCdzZX%QC}1#{#@)qRG&VSZwGn#<*-t!9_INv9Xl z+qEim_wl<#WZ9V&`T@CId4d$IS(Vi!HGMvh+32-5sKcI0d=gd+ad3 zN*yh!GJ+k=9P_fT)uS?6NF1SF)68KZiD%|jUtW|E8sRypx9A8s&Z|jV6(l;dA7%a| z4w8RgCl_0&&IxWwzqEwwH^!XIf=J zq4iwSXVx}<{trB9i2~U2J9A9ZyZ~Tjl8$_#dG%u+n@x^P?{}PFF?B2Xz>+ai?T~-y zeSK`|^v=A`RTlYA4R=#zA?f<>L=H8*tjZKE3eT`{6Pup^BujPOkw@1YuRZY{cZvCY zE__`7Dj^p>E=iTxlXC%LE;*T;DU;fR?5=wVx0dgn~375ZWj&zmq8YkyO zMKreio7yQldY9OZ5~2#){^EdXq2LlfVJBwUPZL(Cc6J0+u%So1^JLq|)jjhTH)01Z z*ey4yKSuVxsV+ilMkT#mQXSYR!Snk#Dk{Dt?mz_RON@i2%+N78TJh?t z+vAYsR!VS_pKajKMeCtmJPr+u-NJ4JSC_JId*yPfp>;1iKKV`1TDl@DCke%rTRbTA&a>uA(egNRn*5L<*r* zvn}In!MmDBPj7;BBC5o=r6!irHa^+Cb)sSqr-YdfK7`GomS-UZBg=3_6uy??S771N}69`e9w)UKRJzO0=Fn1j9xGdB{>Vf1AlU7rwVbn1`8a|+; z*=hbwJc^xew_Rao`~alff^!VDtATqe9Qqn2Hq!trqSIcF{Z`;^TD7JPtctRoOVaUF z$uZ%o!^U58WSlu)5DKGywxzd8)f8?bUfmN?AeD_1k7;M8!7vhgwHU`fuC7{IbpM zQhKozqlT1PC9)%SMT)j%A;a@{5@dyYvpvP<+c35U%Ds#9=gIS>4Yx;HdT^8LK5)X@ zuKEoDUxa2&wH4H8b!2>p!sQ)mc?&d2zch^4)=x|TaysiN^l@xh{D(*k^jbe7TNTxW z8mV|9%PToEFp&REliOKO?s-Qg=8E(_UMnBSk^@e@@_Ks#MdgOdy}PiDUwk+A5MA;(ffHa~J;#S{+9s&KbR4Kmh&x^D zqx#7LP5x4sq^nFrVw&*0y3v7!?M;|>nDe%`3C{HMp6h=LMtgx{l1Q9>P?D!`j6R+2 zi&CqO?8}3E{!r9lq5P~sq{<^Q@v>^-??Dq|HFjwjmz(*&;5)2o4@s(KjA`Z{ODo{; z@M>i^wrMl>?v=&#H;@zZ8mi6@BqGywicPAb~YCwbC&q#z2l&U5~2ClsxXE?Kh*EUYcMV&IyPUN4L!fJoXh-o`%Yk!WIrk#GpI>Cw!T^nx)|j_ z03bA3fQX6&U5S66Yn@r}b;wGER- z8Qy$JDh+=m-*jkX@d+RhPf2Ukzc|@Ys?ng+p0(;=$I42kR9Cqwz(P1wZ`$+fA#jGs zLP~uVy>fjzw>qa%kp|Nm*rhzEYbg}k->GiD9mX@X!@BVJ z;7R$GRL_-BQR-*`RkAU)KsMi~F;RHVY>Vj)+XMTkR=+2!;?|nOJ2PGdJaNGQ=Wu2F zoByG7V5_4!9YMbuaV1R8VZ%zC%~_aYRF!>N10!kfYulDpx2t+w{^2j82$ zJ}7kHI`%OaBl&U+>KEo@QLrvgn4J&reaXkT(X_c=(a5_vO`;^msI5j;mq5}`3(#DQ zNigNlIQU2SAF7a4AI|D*Yi67qAs)qqe9cjcmRjBv>k$@#Tt)rIHdZ>gQjIP!{9HI4 z64=*g?v#tud- zC@;Yr)!(qX18=r3@1z}LNMlyflnSp_x6sf)dYApZCaj}w*7)^`3-e65i)2V{>Ytwt zg0>hmUyToFihfuQ#NpWS7W6Wh>2E$r@@cNvh7p)N>wf}xTMP-Wy6-nN;}{xR)s=jE z<8YSR*umOn=yGbUF`)xvn?Sr`M@+V0ArY)vw8OpcbJQhJ759AmyNV zVCsK%`%uI?lq7wWFopU8=|-{PWqIxgydFuiEcGH|2^ndF*OJ)0+piEaG2CX8C8Iba z6D={7N}Z4^-_i~`e5*Bj`on+RdYkYRosE46*LH#oFB435A(u#tGd74FfjndlP z=`(Te6bKu}U958fb-WPQg81& z@WqY>)V=%<9OEV3;_73a?4Pw`3B0o0KablhBFeOBQRB+UkW)+&h?*^DXJDy#COWxn zzN@j*HB{4K=-B!-O}ZNIEPbbgmIu9&sWt$*d+ZlG$V1mKEIfnvDbuCg>x{#{@6~q$ zs7CN3#E6fAxoWjI@LZK;#Nw%IiyKyD5uBG@p>B(Zk$5-Kv9sY3tdmv20cX3Vekc#> z|J;S3b*>7>7?WP8y>D$-u|%+2=))Pj=Wujj*k88DNIGng>G&Og)E;x3!O)WjBI%eK zz0F|2-SjKf<^^hmzN-?|j&fl>E&?KqM}Ok(D0h`ZyaV==O+8gdZxkqMC&kBOC#@PvF z&suzct$~|h-%goh*7n&ZWvurfpw2P5>I{RT(5>#o>KpE1izfimkoJ8P>jQ$_Sogm~ z6Yh!&Dqm^^;Iv++mA?Yn%1Tl$)v)SZ*3t{j{@NmbjoB4zJ-iCj)JI!%XCPo+A2jWk zx<{@Q8s~xXUa8$&MlzNGm-y5|w|+x7@S6&ecg?p@11wS@^=Yw`)?Hv`*GiRlj(1-pmkK1trUC{LhcDZi@vE;zC3ZsBIBLPyy zXO@Bm-{-XV{~&A>%J@h>a%4_%fUxZfQj*01D`nx)O-Z!*4!x3w|1q@l5zYI0sH^?_ zT4Q60pv{KA znqNYjuZ??=E)p<(BCY2OnsRj$Q^Y1apc+)Et9ps-WDtLmd_gK^0hwqL)vg`1qo zui?zu)sVhK@(gC&Tz@I*48g$|8E}k;yMHYeitYlOhtccju)Yaw3T1lfZGdL&TGu6& zHXVRchjtM5$t*I24_4AFlZ}FSk*)jy2l!pY+9NaXn#yhNW#WdUs40XPV`)Ioynt9| z;B^D{0mea}3L%~eJT0E(n=JU%0v-1x!G$brsz(`GYy4~+FcUusO>3^N4BW}GuYZmW zNdvlTU`=53E z5T8G9-OK=5>&|c9Y6(ZlIEUKaM9YUYyhe|~;CpGQr#~58EUG-5h({qU80q9D!hh3i z+C3P5_AO>`mQ^3(F&hY*RAE?TRQYE~8e&3GaTM{zIW#25PLN3k6V z1}~}+#)d&%TA3Ng6VM2e} zIW46{Tv*rNJSN~*2eq_)&T2fq^Yj##HLefS=3kkbS)Z)gV2yM{lgdT2<5<2Rv7l*u zsg~su5j?%}-7JcxuN!;yEvvt<9X3wrs<>Us#bdAEH5ocCP_X3~AJ8;+)mSymoGQ31#vpsA;k4X+?zP9Ma z=5Y)r=9y7p;h*{xBr6m#f=p2IxP3)2^DgfoZT;aL@2D^grD0&b zGMn!mIY?@QurU$1+4$TS z$Ba+ti8rSi!^&bgy@xQ}Y4LO6sQQnpQ~p2YCmk1?Z5;C*!wurI3--w{7h?3=-kJ zgI;}k;wdnVcz%d+D=`iLjA&DFN^`dvhARYDdGQ?|6dIxba5}e`U8mI^zE7O#vhctU|RiH z@&`tiZXFftlixF*FVBhBUHpMjj9MpE@$K&!FS5PWRWkp;$P#Idm|^+{#{ShCxV=9x z3U@!B7XO2c=Y1sKdrJSr7_TR9!}j|T&x0E#V^sdYNdGPpY3>iox%iIR(YW~sM$x80 zw1y|Z?}z*Y&wq)3uK{Q{N(Y8Uqc8~2S9kwpYym(pg&K#1xohF6Iw&}$KcsQy?BDD; z=-Q5#yPcsiwF{HlE`Zd5#p&%_gJy>`GTwyrr)X;=@q$tjb%;O_KfH??9}b0pkbw{) z_bar~nWo?dpTGWuu{0?Qh_L#WvLBBC{a91^F*SnJ*rC_e#U(I$+fr%nZ53n5Yu zQA}%AKq6#6Z!>-kr#>yrOCSkL6{t3mB_*JrmG^Xj4C$r@J>E;NoNb3CJ)}&n)}G8!Q?sFHDoQ7EO(zGJdn6oudqz5mJAt* zbMnoaXsi1-=JNFb)(b1>J!@^y5l#d&m6S(B8)Jc`cNy)mFEbRA-*-G+w1vJ?+_u=oQrkxnSdBLa93BWMMfT%m~ zUJf#2I$%5o#b0rTAHXSdo|$G++j+i18rkd*5fu+dL-x?Q>g_G#P*^zXBQkh!U z_OqzoFgmDf>`~0Q2;M)5*c-P$I$HjD64tjj7Z!yY+6aDsuHAe10h|6{r_YvXJgh?P z2)`JjLgsf?=ZbA_M+tAXU?h>~dDRs0f8t+%e$!Os;8vmy3(+eG2PL^*;UY|FA9Ppt=ofIT;@MTN8uPaY*UyA zg3vt0b$AiZrjOoS{7m{bji8*hMa-jNEYK16mPfDAOg>v_C^OQVK+?MIn_TIF>>3^Kv8|YNFJwTN`RRwWEz6!x6a*9Ek1;PY>x_0kp^<3V_3s4Gei)YNPT4bMYC-(z51ms*)quM8$3y^jZ>i+0M*vLz(a`PC`RBpZ~04HNB{!sP+|SRl=Gd1Rtr(R- z>BQ25!wGwYS0l_-vdqT#_c5sWLULE zJ(M7aYz$)nVc$y-mY57JI|p5G=3)=lCI~C%dHQ(u)sOgqBc+Zvpqf13GeU$A`0NPf z4@wu3mE4RWtO_)g39_)rDJYT>X$D&sT?ojGvSn1>LSK0#g4LLi2>e>`SYTg&{1AgD z9X}K!l&&=dF5-}RSN5|239A5%2Ekqp_$3rv;G4>mqsO+{a1 zs7@SnyS^F3!4t3a!_QGe1$!iddPb1)8w1WD+5p%j;M&p|$F~CWqYyT=Fr}>VDTFew zRQ4bJifIJqz~WN=F8I#T)_$XpEUUw(4gW`t=eW*K9awDT$fg@<{IC?!Q+F#bUIaBH4E zSlLQkVVMz)9V-K75XmrfEkZm#8XfT^ko99|Sj8z%zb1=g7kLaH*oSLsb~*WVY!D57 z48mOU`VMjHTUg!-x#F3L!IPU?pkDSl4svlS|CbRx{IpjV@H`m$kPQv>kaJ<;Gf+*b zRH~^s^?WwlB>9PDv9)4Jd`?Tfx&$){=m&AOj` zW@?3v@^+Mt`FO& zrkE!<_NR|$Uw@K)<}l%kBtUE&kx|h^YeS*Z#T&uCzlB{Z{H_YHOYavHISrW}fX7a8 z?PBvG@d&fwr*cXcp1_$pL^F63Cvo24!<%+K3afU# zpGtlLV7Abf>WMTy0VIMEXoWocRD#J5G9T{Gcx5HXY2ss|rj%1Ft+Fb7Gq!yf(cdQl zae%}0a-N(KT%)8eD65u}r8TX2XDLeJ^lxa7GF6nJA4sYR$Vq!gqLYM*C~P>BXi8#? z+tBtNBg>E64r1TJZo;i%Fguhs^XFG1=4>M(NfZD8F5-dsb|*`!r17z4e#{~Vh|jQs zB0;hYp@{|o3PO*;lt2dQ=y|#Ta}Mc63w0-Jx@OPO8o{ZhX}Ueno#1#WHIz5b{nHb@ z@`G?({+=Six~p|;!x`z9rf*BMEagImZLl;jr00GvihB%+1FQtYRa1AXi?d3$5MWC7 zVEn^E5Il4XL}G?wqhdxS`NQ|+S+bEv2}i~mVw&wq_lK$L_E$i+Vn&&et}s()f5-kh*l;)TQjbD>BC5>Eu6u>gRqOZ17-q9|aeQ3*}{Tl!06DZR=6+NXI0GKY`@7AFT-+Et2=9 za}SH%`M~=fw8&AvU32TMCxBr>q%OB8hOi$XMOtNsjI4J|*18X`fsO#7 TP7-!fPJu6hPk`Ihr{(_zcZ@xi literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_Nano_7.jpg b/install-new/fixtures/apple/img/p/iPod_Nano_7.jpg new file mode 100644 index 0000000000000000000000000000000000000000..96b6abb2ce5e318a1db25414c9a763f05d0ac000 GIT binary patch literal 9490 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle-medium.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..fdff1e7f90d4ddba8854e0404130dd394b17d75b GIT binary patch literal 2644 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 Dv3W$r literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle-small.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0abadf72d096581394630656aeea9a3e1ef6b5a1 GIT binary patch literal 1487 zcmb7DSx{3~7(RDPLK5P=Sy*IC!lITXhP{f=fKowRf})^O4Jo4IFo?<`j38hs6%~U@ zp<*SpD1-{eCaf-qv@%!~3J#)!EGlReg%$;?G`*pUKJ=ykJr8%zne%Pu|MhqD{QwUR z3* zvbbM{4=6;JNnN%CfDjnNX3`+vkkrK?*j%v`bCt-{)1nXv@`KVtE7_lx2Gj@coolQr z>dCX_wdJV7UAD+;LM6Ev#o zF!7;@ZP(*|&eww&`@CHwxQNUb0aOY~eeVP&H&BAj5xXgb5^09I0~dtu)lwQS4=xw*Q#9Vr|h_bjs95|IDDXNsK2$i5913*-#3~yOaSg{u=gBT;+J` zh8&UHFK_lQK4msw`QRT%%;~poky@t51sD|LXkY+C5?*axppCuOW{+w(k1(Cgb?++>jvuDKwQZDw`P>Av&BwlVn0 z*gStjO8<#1kqX4J_>6bhhUUUIPy-%buyprqNS&%{6QP~Se;S2+-I}pa^?dlGL|3?d z$!PG-+-S~f!_eB{2E8z#%=9co>J>|*B&Je5z*mfR%*2j!7JMgE86K4o8pjNbTnjTd2+X zOD+qlH`_1q(StUtBTiz`K93Pzn6N+AE3?4eQF%D=(r=$}rnCZtVHhr~H-}4XYl>1cx literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle-thickbox.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e38056f4621a1e81274026bcf0097a3efe4d5fae GIT binary patch literal 7778 zcmeHsXH=6**LDJg4ki$~^iB}zD2P<)C3FG;0*2m;f`EuLrFRKP73o!^cLjt1(t8J` zixlYsZ#d66=ULzScz?YA&W|&hHA!an-s{RWJG1wm`*PxP0RUD}P*wl{fdBvy^8#E> z1LOeMSXfsb({L~ygbxDY;D8A6@Nn^o35kh`2#JVDNXft?q!3afA}}QwLJp;%pdh|M zMNJ8%CWBHyuZ#e(F*-OP0uYD*N@Y|J7U8;tp-2TFfy|NG&e#lU^% z)Da(!s?D$6C0UjBxP8S!S7Q;KLa`$)I+f$*U>EU=YY;Q|MnArDG5w&F_qb-1_sP5y z`-kcE=qJX5>Ql2{(hg0Fjz#Exa{g}aTFg6XT+|4ZX(~1GtT_vDKrwemryo2DgI{A5 zyT6gq`?GQW6N^)R=R#40Uo)~Ych&E1(cF)c9A%v*rDsx77V~3%I@No;gF9O}Wg@3f zQv=uc>3d3jx9yS_uPnd#Uo6i^xwd00n_pR`UiTE>)Lh5sG0yvSi!+UVBHA{$qUGf9 zS(?ZbM!ec4spha8LNVq2pLgeWYWRGF)Ldq|71pz$nb%;(%cw0K53hl5wPlcAq#(8vX& zudxg8K8x6@ZSW*Zc3YeucC6lXWzi3V?Kw!AgbBoRn{WuN<~?N8?4Uub`}Z9A!TSd( zx9!L0tyFIbnxUBM;?q3`LLOaX7DKVxU=O085toLXVWWi6m|2HmdHS)qq+)9Nd+15? zxvE)BOVnok?}|}2Bfpg6O8}>TJoTKKFQd28dfT-O;8w0qA=tz>9MYG@szpRfUX6|0 zrZQ9+IC8J3Ye>%4bta`6`ze-`wj+)#dhmv>btkB92e(U=OLY~X3&5=d)zyB-bPf1_ zr~c^-Fk*rNALhgd0dYZ?VD=YWOmG5W;o?EaDTKjfl%jAblK?Xd8#}*9IVMivW8w!8 zgmnoZsCt_-5vH7#lrvzbj*A%_I&*t5Lw>Ja#5IG%CslY8gT+zx;2BR#0Ajz&^ z)$fk&AC}c3K99^{sa})yYQ|&Lz>(}*L4yyKz6|5mt_m70q2L`YI7keaq0}DCF+V_iBd|~ zNEs2hcUq3eUsbo%;amFG4Ik?($gtDXrihtTF=d#_I#(hrPmH)&qLiOMtWP3046eMH z0$29j@Yv9__LQt#x&73h;@s18nps#kmfB^K^Hp>C13eQG_TEpei6UZ7;cWT_K)V$o zkd$DmM8S^?3>KSr=YG#;T<)kEs!;I6#&QvKc%`&cc*yJMXO^Epf1|gyi>iGwOlKcb z_)MxvMB`7Zbk+CWq^cG{NhW$+0wSdZr(uN{Q%=Q)&9jMd2;98K`t(fYYX_l<#p06Y zgFU2Ch8}L8-|5rSmamP5Din*0m=6|VRrFXKekpA5p(4qW^A7#!o=9+BXUU6w z4|m2SL{h*D2)C`KKzQEm(&q-# z0p6g1>+eZoxHi>1C*5(EjW z`b!1u+0Xk(`ep%M4(0|ZJ+jMFONN{}h=PaSZ~Q3vMS%E5{S6zR+A>kYGe_2K%eR&j z?h!tut{IQ=Us)4|@jJ9qJIC4EtWqE1QTK_5Y7`0WYkN=;1uyM-N6Jx!Ujm}8d{zRC z;R_3kl;H1E7z>CEfPl$xn3!1wgoI__TCwpJZ6IY| z6xIbnUE`W?_*=A=8ye}q7Mm#4sDwt%u_4udk_lFey{0jyYmX?2TvE{Q++~GXdc`JI zU<4*G0uIjqzW|T5S1h8E3eT|kSO0_4_n*kO<`Ay)6Fe1CS^iHd{A{MqmkR94O&3mV z)58x`gV>w&ai!B%iRxp57W{OYIr$x46EfxIge9tIkCL&;s;d%~;0;MEIpcN}9zUU~ zUwW!C(A2g!EJ?NThUi(^n8IdgAt>nqu%b6XeLSFSrXnF?M?;kyx!@_KGN9Iszl;o~ z6tDUrY+x*Dt8y0jJ@?t|Q9jBc)gqEA*wW!!vp$gJM3Jw?emWzUwxACCr=ll8qTR;A zt+M5!w~`CSZ@bP=G+qLP?~Ihan{xCQE~~w7WSxDkz36C3c=W)&tb?>x@?Z-ut$6Tp z{o~0)o!bFdg%)en;tBMOYYLo4mpvQ$eLQ^VuO3@63p2Y0jtD#1M^?(Nx zh=q{Hg;mpX4G&V?K48Df&j1@_E3@31pcor+|F0Qy%|on6{0;x0&D%+Y`0^w2<=NK3 zaHC3<7O+T?r*@&Y))<+I*GMy$)Bu+-W8I%X9fp^KKghmtp?qX3{L*2loJ?7phqpVf zBfUW$np_U^bvIc43MyC0t&4!AUx{AulKc3} z_9%0e&mVa50_L~by_4#9f~^n~@vY-W_``t6YE)eGJ6mgBi@lul?mxH3Cx#dCUUy#- z<-17vl&j<6xKZ#3Y5`S2h)kO`)eqg)OhT=-=+^q71UE)@C`Q76L`!u+E$F9WpP7^I zA*sgo6kFerjhth4Ta<-$R$17tVDjx!b~Di~_0HtAokrRrB2!cWPRGhc5}SbAg~oo2 z1b*N-SjvF>nsqj6vPda@pDXucvF2o$`!`nx=I_G;24DfPFa`C0i(4RsSpY1fwF5VI z4QPwas@UZpTx9w?f01Io1O!brF|#F}#(kSAn{u4zINx)g=UCozlH%CkbClv3-g9i> zINNi+1aMpe{(5t4VUv#g=SRkLDrwD^(3~iVTE)Bsn#9!w*O)?6ShfU$yG6*mw1lj9T9d3 zSnrBp3te+Ea!uOL`N%ae#;-dRY!#kLUc!u336@9FK7Z*^?9G@(sIptTrN+9hi2n8^ zM8bW_cYG6*jmdcoN7OWdNQG$0Kgc1;5V0PKy)7HFuLFQvW=U^n_IPk|znw*(jitvu zB)Q%{I(3M5F{~Y9?`dj?(z2t?xfh;BGOQsu^D&&~mWxe*Qjf}7;!hATK+(qGjN4MQ zug% zdK?EJKKoOaz=>|GxQs#Is0HL>YII@Jz$BSLC>#n`N5m1?c85h49T04ZIo|1U8w_>n ze5mu(V$&b=kuu_=CxuU20Ye*Vn;w}mm})}7NvRgsLx{_kmmR*Ko0~nV;itjb)jaGl z9C6e{Z4lx0_*~s$O%r+BNI-v5GR4M66?acZBi~D@8lEm|vqHg6d#LL@ z*~7+3?F@oy+fJX0m-r+Psdu#Kud$gOn0#`LxgR3~HPDaCRZgl??*b2jq@rzwHTyr*Z zP2H@sVT&tKek`JP=Xby*z|HTY|5S$OeYD@Nv-QLHEzSwe#tifOOT5uD;fH5^sP$D; zhh%NPlBnFV)UaWW-A?2HyNxB%lW`HvJ}yQRdQ9{~Q--I4n#mnp63N3obKIlzn(-}` z)+K<{9}_+Pxc32E<^JIP{(JxSepcP7xVXahJRnH`0wODoPj@z0L%?Cru4$a`s*eE2*5;P87*_^EZ2b8ww>LWMW%|u zzl$#LZ^+~IrJyrezpVQ^87`W&oD<{$8)|mjU}y3Yq=B|1*r)9$J`jC4M-K7D*#q3U zUjgJA3{NePxL+d{5slA(H*M9jAK}8)dSflwfYk6IUyt<>h=-W|_@ubpWYv0Xoeys6 zOYnS$=ezl$d!_h{6g_ihP{$W{H#45QQE%BgTLQ8lMSSlcqiwBgdOZ_gB|d%ulBLON z2sx!fe8zp>DD!F;W=YT&QlHfc<@;jfuB@z_Y+fVm7W6)X5LQy4{obE2@mK}J7ANG2 ztv_;>zpB(Lw#;2I^=WJtxDAu81jOwAT`_?#AeIqZ>i$;tXF|r4De1jqhgNx&B9f?r zt@dIDVG8RzQE_Q3;)-SEZgcFR#^n{Y0zYx`BXAYDR~wz4?EW%|8`y-6mcsUh!hW$l zOY+mqC)XCY2Y+1Alw5W{igJw}4qVZ-f^B3@Ehi_6!rc~*zj8c}7K_|}x3==_UWOW> znp3}ja@b@>@_~&4ck1sqAr^UYyLG8&Uj_};O(8)Pb9{0}jhn(VRe}o& z6g75*1Wi`Nbgkeb#V=Og7>OEBBrLGG9?FGNA1ZGGXkKiX3_E)MZ-^rKLA1`KD(Cy%R!q@2KI^2j)AV?%yK$n)~7? z)2C$NbFoOM|Cf^U_ZExT&j(gjUcPHDkM5FoRF(E@sS6cgK?)$Z3F%o1LUZ3yGrxh) zG~BpX639yKiWo<~tq@70PmD-+zZmK%XCPbdB2CG2Kp8HT!v~5Un5w~@xBOUP z4b!6Y3M8E$lR`W-799R^j!I}3a=9Bx!Yt+y4k=C}k~D|rW*9}|NTbWEo;5VgBlMCL zZ(DFQ+>|q1<;HD)VlGglQT9p)N3`p^{pa4|VQ?lnY3r_Vgi=Yr(R}b|S#e*2At~l323a^A*uggb_>zt^0~snT?Qsn9G43;$vsGEJ@tIF@|bwdXv{a60-Vvtm`n6-gJ_DFk)5(3Jt9BPS8l~Js@W;QwVPzXe14caf$Oi$Qy0?Ua(a)F z=s`MXnVrF%gXqel8Ny*$&Tv(G6?VBs07Gld^3j+L z&2pDqYv`lUv4klCY`$OqQW5JUBWmT=hS)+?;f}_0Kf9b{W_0I=9-6V{i^?l|dgO{D zit4vJLcEJkfEgP=EVK!qo^9r{Ph_XAv$Nj%3$62{&vZE~DucuVjgGh`1GPNH$_M&R zM+Ie>zk}9yd0kPu4zx;W4t6C}#U#ws4q93445^&B(}R)jq_=bjVB+Q!tF@yQ#qwhr1D?L-u3Umw^7^B?by=70$;` zqw3X&K-ED&k{qdyr7XOu>WiPf{h&j>r7T*O=8m%tJ<3+bkTRdpa@Y0(_!1^jh0#Cj z7gV#52*$FF^h9;jLNJd-+;tB9mV#*6jDK#NWcXcJL}iR8N1SVxtq_?h_Bx+7@AW-z zG5i@ikNSLc+OwlmbMz@S?BU#)Z)AedmML?JYJ@uhj}f?`#lo2YWCx;l9VNCH0E(Cb2e>^^txX7e{5BIqq&T`rvYd`1FD@^6eGR(f0 z^XAOB2q67Vt-)<#$ayoewp^U34ad{vzG)CMWNp_;Cv|2Qb>GM$$=bL&`MoehXDDWH zGF>?o=drEvS#8$y5@1^Jg^)>l|V@=Jhsl*N=x((=^WApJyh z>A^YcAQ<~Fo9sSq-}vtDUkOqD$VDHzOcJZ?*>9YJ4n?Y9M5OxlGZ6TpA3`0$<`$vO z_!9Y<+`X&UEhAcSKWqS~swHnHW$7fSlh+Y38!^K1gX8sd4L0OycjlH2EE6NBYRB2A zw&T3CFO+%AtGVgPnwsxv^ZT>Ey=2E$wpntD{eoY<9CP) z0svm|iU0%v{oN!&d;8%bSHzqzY9rnBAFA8(7Byi+(L-KLy@c$aNHMw)9O>Bjbxz$ zN!o_%lQ^*~J9PNP*R@--brpsf@nBvi*0wd?(fzh>0Dkm(x{t4i^dv76^4Ric+2M;)4v5e&?bXCxR%vb z#8RZW1<2e!U*u=_yR|i!H_aA9OD>t=w|Mo1C(K>B?rzBe8jsfl;4La)Cm#|R_=QF_ z@@!RlmcI<9ZC}uGF$M~c4r~g?cqkzR6VFDy%8`|J^B70(q`naoB_)rEPeyH_y1=a>8v@S&z5!*p^sdhSe)-v1>QwZ5A05 z=~e}k3rNXbqBX|)JnhOn_be0vzi8F4&W0w5#5SM8g^%iWg>O`9$H6y`%qJB2r_J8h zrr{lo6m_$u6Ru2Cwt#EgG((^cNw*ZA3nqsUp7A_KkV!eG9xtWo9d``Ye=@K1*ztVs z%+zZ1b*7hZT->L0uwK)=EMQ0Xxzo#5y&s}NF4y)_UbSdb{oJppZ)lhpoiSB&6rtQY zG7l*)exg*@kUsiKWbYE-qB4ZpFz3N~@kI@1ikjS_jZ@sOj2dn+RQVLAlt1E7XA)X~ z|2kd*Sn#Y8hF+0~fS8Do_&+Bff7A&d)ACE-jv{_MtI^kG0Az>>4T^sk2rM*A= z0s(<&U`x}EgII-ieQdmQikb8EjkAj0)0~Bwq=!ke&Xjv+yqNlw`tn9vtr7c2Ec>^m z(P?}xoHlJMBd#lnpSRD)jO&UL))SR{A2IC1&h^Wm8iw#<^LfA$eHiGKib`9R7f7wuqWPY!-L9)2bB;2A_9ZJ{{V0Lc(&|R^ds>C>?iC*bM=BtcaGi$4JM2LK_j9AfWaW&l>j;^Zu*KYMi0b1P{&` zK5;vCi?PQ$-n!*|wYiN^WwmvBFu6%lqVE4`#9KSzuwx7PHKO#Pa|UQxiIZak%Kc?S zPPpyT_{rS9QaC390Cm8;A68_vT`D@6-s|vA*;l8?^Gn$jW>^n@az1X86Z5bdRx{;$dtfINBB3zcdEHL`i%}s%g1T1MI}x|}n-6k`SbpgzxOwjSE16Z& z1PR?6bh_aFD8!zddQ`etT9fO^P5RaSMWr8oYT!VxgkmxU1E3tq2GW3Izh;fqgbEv= zT0^|r_1#Mc&5twH7vJ)+U06AYjAmJzfu~XS&VQ%(iV5`4w>0*`n4q18R7<_>%tT4@ z2ZW4y8Z_7(T-<0jZbeu&9H;X*D&0R34%)l&{N;9PE)51JP2OqJ>1YC`WOG3rsyF`_ zckfVel%#oQzuG=iYjk=oYd!MH`L(at8scEt%aAP$Zl(wM!92M{HTzESHhMKAm-9|T zp3RRF*0((*YNJKh)H+v37Fo6j-Fx)qU2ZZ3oBo4{q<77MTmo8fo|`w0<(APItce)Jms3*8^A-uWraZ&sher`#I+Tw>YDCoVLmkK^=~ zgLP@?;2Rm($4-|3j$5(cd7CPQGw^e7esk=Gr`**ug3d8=?#9D>m189fl$b~I6E;Rv zyc`NzM6~DVZnW^Jc$p<^G&7HQNanBlDq)$2qtfbTz@jOgR3j~cZ9#vNGXap`ip~FO zC?FJ{k>#}At&*_Sd&uyPk^QCrCTBEj9oo=-8F{{V2`ESVpf`u6bIVzdY%XvY>E5{v z6G1AwL*u!vXakwKz7~UpX;vwwxz6&bhjg2x<6pZ4N+`!G8MPqxc_?T) zc7?v5GkVG3l&U~}eA`?3;I#WSNYOIgsX2&6MF-X|HTc>yt$BssqP=MKb=n^Cec8*P z`_`-Mrq?9b_9eP;a!Km^EgqU`+vY18++B0&eAevoWVs^XmmhPSu%UW4QqV+B!O%7A({l=y1JtV)*mEvBMKZUY1Ee9U zo5pR9jV1d+ELX!~&O4$*WhAVox2bbo)$>Lc%)dO0>i2E|>@lCca(*1o0vCkDC9ZAt9c!A}e2f9|eo9 zO%u9I?rEVqGm)sLv(ayP*caCM#(!3}k#_{GKjRWlj&7Q7dmQ@aSI|LMD4y>(p?HN! z2>4%o2LkYX*Os$#PwEKAR*x(p_xAr)3J?_WlNVK8wxV)|pPb&3|0*mI#<3WQjq8@? zjKADi=D+5O;S|`sP1I{2OfNn@#@K=*Z&N|PNLdY1cFr5<|LGY%lGotrcDl5F_dMmd zv~`4-QxM&+L>YsZk2+>JEzJ?8zWt*z$CyI|hhw*Dkm&b-o6}$N^jjG>WtlY`UhP+ zfs(G+u6M6UN*;HtQw><1d_Xg#M~!g%1gYs2zur-Gbj-s}9iqPqIApO&B)?EEIM(2N zVxXgy%8ri3+{0tUfmZ?eD-;1uS<< zkm1HzA=!f4vWiZREvS|UbQo6(!s(`7)EE2T$m6BCX)!S26NC-p(?O}sV+5ON>|9}k zR9)=_lTn9+5Vji?nj1{i0(3+IharC0XFG>0YQkDBy6V^+aa-V%{rJcY^$H|;hRfP?`w!bHBQa*FaVJD3oXT93;~9dy=8 zNJ|SXYW$+4F^@5BjX)>3I?U2OB?R??F+es`G`kF;I6$wSHFe*jD)=5H0kWZ*F@kqo z$T-k0uY|%Nq^B52b{Ayh_*&I_iekK-v6SJP31U^qpV;riY%l7U(JH|tW>w=RLFZ$C z_0J`eZ1Ae#&+fOOo#N00hW@5itNJ?Sa)oUU+f*(EEnmXSI-yg$76$U!xGndM^ zQV1}p(d&Hv$mngwFVv7&Cb6YmmKR4yzsMGlBuBw5And?g)6O*xlL5ea{ob<%03-%aG*NJb~cJaoa%BU~%04DNk^t(XexRuxPFl@ZLM-0_`zKme5SMI}RT=A<9xI z_y_d7InT*wl)gB^qLw|n*gRnSzIuPOE*DRk#vH#5h4}Qm?RPqc)QX6V9|H4soZ?)Z zQ?li53AaTjX?MR55zT)mI5}F(WFj0Nr5C*ZtlNynCSpRBB?uo6qm$lHE$+A&r>7-mfS+v(SM|T2DRixRXAJT(FA!TscRH07tgMj zRjVWF_u5SL2&@8J;hnvj*0WW@h59xf0rtP|OK`frDAZiwaT^m;i^d`2Ez?3v`p1x0Zuln-AEv_NFv6oZK9BIJKB8S>?Q%)3B8v6+#h$R(M~AZh9zMr5i*w(lwg zHhPv@Z9Gf)m}TLJYE0wt&qw!OB zIp@h{XzXch8zuULztnjtSUEB32;Cj56u``)%in#PaltWm3E(>7lHnLLKfbSZ(h{s5 zs%O~-?KyS9PqcbeOc2E*vM&lkCu)BgiD<*&{F literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle_1-home.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle_1-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..fb63c3e3f7d9f8e81f2bf8705eacb67686544579 GIT binary patch literal 4130 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 K5piGSVB$ZM9uWfo literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle_1-large.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle_1-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..67472a981e6f7ea3c32058047940a915ed1a72cd GIT binary patch literal 5675 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 Qk+6&8x&jDZ0j{S12Wu?E5C8xG literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle_1-medium.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle_1-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c4979c2573474399295512eca842d10b8ddc82ed GIT binary patch literal 2486 zcmb7Fc|4SB8-8cC%#7Y)3>gPw;!MidFxHTLNm<5PmdV({h(E{&;`C`+1)0y6)$C?q~Vc@>>9OwA*Y4z+eCX zgFaySHDC=O;P90J1ri!4NfZi+L`h3Xpe3==SS&^wgTcwjf;btx3qp_h9BEVK#^B0y+^@!u1Mf(oA+B%s)y_HWQR z`ySO$rCI;2Z0Nbv)bfn)G$c6K7r2oB2gw1mur5wL+pPD(gT3*|Fgx9nHZN?WkN0se z0VZ1EBWhjDcw;-w;-X}V(-2p3>Q!@DRt_(1;1KOmk9q#%w5r2pNA4Gry27FwV&gXM zVvUp>_)tDG$S;xl_zYsJ0dbLl?v-p^P&Y@{>2q)WzSo3U-csC??ay!v*F9lT(IMYC7CL#?mkc;TP&)ra!8UKhKq zUs9e)-q=jd+_mpgsOrNVN>P{nXXXxr7rvq|ZR_aJTvuO_wWoVKg3NU!Iaf0lk-eq3 zI@y>HT$PvNV)g27;p~CN=GEByFGH#_*m>Dr&4wOfPpm!iw~U@Li@nhudM6eEhFrjw zRz&&IV>WZP4*TodAAIPSggQ57!kO#2;%{le-#l&U?vt^XS$;$_>GiCGUs9x_V)2s) zk5rUs;$r*sJX55*L`9y_qR!*N>{;=fu;R8q4hnjuC@05pX7&M-%YZplEmb@KM?ho6 zsy_k_nF1+G(6v<4`KL}$&Ky?ZZZkM)RPVD4p!a(ZDwhiGRG!~&Km^Qi866WA#X z4*2%cqfco~eM9(U=H7ZC@dlfM9AyR zJa}2Mj)0KL1Lbw;3^x`>{0}yK1-p!HqHGcNZI-zV)O;#pPSickSXjAn z(!L9V0cdl$rfHQC=3uU$g=k&wZ)Z4^+RuKjqD=|}6aPVubzT3@A8^mLtB|uw23?BA zI}Hj*Oi?Pk^00TJA2FqL!(>6RD&NMSjY+pJbSW|+E8wb4)370w!c=_8wbS#)Y)a7U znV30seU;%iI2j0h&KBuCI*_~9VY~G% z2}XS*^Yo)@1qttR@843E(+KD*d;g&@o7g4f=8Z1{x6igXN!I4Nx52!6CQkFAd9SH| zmD$rS8x#el{img}=93xwT#)Z4ruP}iYi3`#?`d5IBGc9)*%PXQZGCaKoF8tc>`Bh= zN@p^{Ih*E-Ypw$aF3w;F623c7Lc1E?3gq6PfOlyKg|_ z3Ng?v`qjlX^AkxI_aC&)^tjwyS3#A3wtMT@%5vtVs?VN^`(y>B1VfE{3f?@~Mq?Od zARjfnYj+6hbD7ytaGf0eqShvoH~mxAVz37NfKx<6MaGyRZ7W$bcCu&0*=NJ?T$dXh zpYZcC5mJXc{GLNwI>vXb5}BhkFX#F1H+ouS8!VOC0jNuWsOKD1{EIA zIm3}v*Jm#-1ON7LsHXz}NP3#B$6oW#B{N7@xE=PA}1TKa!E;+HJUX{=~7% z?Jhf2Zs5#H)Y>o9jAV{UV@hjx+eM6TxM;hOJ;N2wDJ*R|Bi=}IDTpsrHnh2`ACpJk zIA_G=rYPmcR6-;*!SB_8-tr$!6RHN}MTjL&oLUUlsL}3yCknkV=HSE0ppW#5GJC4q zgoesVj>Z+SXKucB0dcj2eC>9jOV4WcOrb7Km*Hb{x9Llja>`XzP|>Kt5)Nr)py@KudKYt&R@&D4c__R)6#fgB;b?Rus= z-?QGU+bUK(*`%2|XE$j;y-n$YjkDH2phuMYGLEC90aRiWhIfi0d@*lHU@3)f~r)68%TWT!>H8u==dpTOB=^6i#m{C6H za9E^~gl-#D5r2LR$WUdzh;Uh+%+a_+l1JTFo?y6Y{hiJs#x#pG!N#7CejD<> ze}`7&hfx3gwK|)2$+=QN%rr9J>Ua_@C}mSXeA?1_vT(#xOBCN7Hs(3s&t?wLHbhSu zZl_qi+n&i)k29D3=pR$U`b|F^sTRR+U30}nPTQ*0(bLJ{#kTZHb?-Uo67>8H5RKmA literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle_1-small.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle_1-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..47e09a44b4735f5c9e7318fcf78573da9431cffa GIT binary patch literal 1392 zcmb7DeKb^Q9DeV;bFYsX+&dpQjWRQ3MOfEP+pdo^XdIl_L9uLUYAM>iztO?RhCV2vTWPg)9gFi(*C*6`~LTy-}8HZ&+mCPcQs>x z^p<)_0fGR4zymb*fjhuZRC^&9@Z!2S&S2pBIy!_dOP|GJ>NA-JhHTQnkTPU4Nn?`Y zaCtl)%gDskm}|=B^0-#QHbUWFarRE z(!e5c0_dO&1k;7DOW+JRoMI6;Ku`vuqqzrI7y?idBjKPwiG24>uBy}VwrYy-P<>*b z-Z0uQ7$19e(~GS)e{&z=4f6*IIE5m&zbrXN+iv?n;uR!77$|}*lH&-9F#y4(ENC`| zClIZMEp(xc2#!`Lhfh~r|X2Tn< zHQ0AJr~3{L%s(2ksx0?C5J;iv#I9@Ak5u-NcVu7QWNl9`{65djuRoHm9IyL`euA2f zd1jjPTQmS_T1IKD_>UI|%BF;vgd?IC)L;nWip=`C`UC{zby{`!BswikNUlr0{_%=N z>oi3f@K0u` z*gYzTxnh@#SBvz1Hyz>)CGYL;IyrJ>e=O)mK?`r(}sK-ew^1#MX?7E}ZRJ+&lsk-MYU0(ieKVkB4JU>`ryzPK(`Iw2Qd-aZqK&3dec)fDO zc&vBN8V_g8@678AzyzSgJ6=&hNJq=mq(q+8J1!`yeUkxKp+RB3UMo8JKC>!8u!kT@ z`5A3qDUagf?1x=T9HkpT%GnybUniG$p2=Ms9#!z;1I|Nqq&Z@)FSY(0Yj4zmI4EQ=fPNgJzor>g?wgZe2R=Dr!Na-;L^)7k5U zpUy%J3sGO#DQSt@t_dEkfb#hiOeYFI!CN4Jq9yWZ;eu*yR>+u)Cli@w>xfZ?tKtCA3UlTcj35r)Ir% zl_cZKx}Iwc5K` zJ?_@`ngug=`Hl?swe&QLDRHkR`eD83JNI5ALbo?RfL>rGO zf;;6;@2fmO$eoxaA&H)q4@QGGUM3>97c|OxDaPG{hm+ThYw`2N5;%|ujj8lc_hK8LD4;9>z(@|P&4!ox%tpO literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle_1-thickbox.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle_1-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..274784a9929f351320ebc0a43eaebbfc89c73ba0 GIT binary patch literal 7464 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 BU55Yw literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle_1.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle_1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f684926bbea6bdec4df5f4da6d04ad6df7376bc8 GIT binary patch literal 4670 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 H7nA=3XPHwz literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle_2-home.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle_2-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..110006570b23636cce798a4163fad1e65684f15c GIT binary patch literal 4141 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 U1^eS?B~p$~Ra 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 U_m>#mM&5I`oo{hS(cByRH#%b4kN^Mx literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle_2-small.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle_2-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a1b502ab1577e3aeb51d4d40e8a11012358518fc GIT binary patch literal 1390 zcmb7DYfuwc7`?lj%{#c8Y=B81Bp?+PlpqKyNVkD7LUBltL7-4luuLh924CPPh*k?I zL`wz5SCLx93K+qbL8zeETCHGOl<*uBXDYTRRpwshfFW`kCt^g$wj6|$$Kniu@ zHnp>Z1C+sJu`#$Qffn$8?*RrtFr3M<_5ePH0F=N8h;LlwKW2JTzO{69u7G3m&)J%J z(Z?;|r0j-qz>7$Gw7+dEU)^W1c0ruCokM&xb%J3dv^AMNk+G6NpKckDth1 zuJDD2u%R*pN7b(;)YE_NDyk9I#yC7679Y4+8Je_JLSMQv<;2;yL0Hvh-!G3zIxG#O zzS+D{R`8d5b;iEOSyi{*@^>tp>M$SAn) zozKdm{f1H(1YtTu;IW2n>ssc^RnqzgaU&Z}!B;M%myrNP|C=U)l0uO}=|gK~$Wa^l z&&C^0jTIhOS_f;Sn#ec0Grmp;hUg^(6o=qAYc?+w{va7brRK26C(mS7xGtl$x=ezS z`@Z*2aLizoBjW`{bWheYJ1WN$0z41h&i1|*Gg%t8H1gTN2Sep|`0o#dxZlS;|43`P z-_m$K;N`lEMD}je+v}|$q_)$!**~@q{FIz#xO>`t-c9=Za%`+*WuX~QC7!2Qrqj#9 zm>J}qAi94bqKR_BS+ZR9eqFXAV_|;vrB+#2kL*Rm-MUXaJ6-U|qfeTYX1(13Lw&;D zGkwm%Hc##ZKw-elxx^6?C^Sl);V@lcGLQZ)Z+-Z>1HlT>UJr+ZL-Q?tQx%$l2o7@!0DS=Iau-AmPFG4DHin*2$ zQMVE$De6YwCHb*gi%aho6&WFJJ^{7Bj?H!0rbVNqb$J!0QMsYjJQpVs1bW2FWXIa* z&(>ev@lkT%dDUK4OwhM4^Aj(x+$JmGGZ)ZO$68Lb-mOS};=;Y~zJ(7H+)kz6V|iT< zpCZdm6QRi_%DB<8*uv4C?w`0Wb&G#t1YPwxWO+e+;$V#vcQkDHv7upP1 i4^M@78_#LJtb0B+WJwwB+%@hvU8O#oL#5|hyZ;7`e8Nfq literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle_2-thickbox.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle_2-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..82f8d50bc022aee280ddce7e4e8227b921d31326 GIT binary patch literal 7431 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 R!q=|iNThvsDe!#izW^~PRiFR> literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle_2.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle_2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..67cf9de335c5aa81f21deb9b1444aaea1e55fb32 GIT binary patch literal 4639 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 L`bGg*m?QrN8}nZ5 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle_3-large.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle_3-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..15847b08873f5a554fcc45c4b808a23f8e8ebff7 GIT binary patch literal 3948 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle_3-small.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle_3-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c6191a37217ff4196008facb19030914daf75880 GIT binary patch literal 1041 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≪ScszsOXV+vAFz!dcP4N9ohrUnh!RD3+KcX=>#XzZI+AbO5g_w-y@#H z6?TO#>-d#%zR+wwsd8}>E$<6${&|X|Juus=UHAYOm(xW_vcl=6oTZjK`dMaKm1rjZ z?s(icD9fsJ&hblZU8KzIa!hIH!*_mkJ+iAHW;8q9GQOpFzDQ?$4E6Tm^OxFbCDHt` z@kc|QyXbQZo}o5@$@k0(E%DD*R36f*Z_gj6=nKepZ|I*=$|j*4kS2JyWsa^YzYJQ~ zZTPo?l~2`PGg~CKKqJYkn9VO%8|j-havLeNA1qX~RyJGMY${#z6dfPi?(vJo(|HW9 zp;nlwf%3y+^w&*oVuDJ>6wW>5h}jkE9|hU+aW!_2gSr#Ev(5HZ25bge szF;*A9V=8by6{8mwap{Ee>U?5l2@8;j^~au*_`_!gYL+m>e(9oJB*^Ys{jB1 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_shuffle_3.jpg b/install-new/fixtures/apple/img/p/iPod_shuffle_3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..754de07394c213ea82834c4fc74cbe0f9b695cf7 GIT binary patch literal 2988 zcmb7Gc{tQx7yr(N7<|W!oy?FD*|$h`#u7D_@Ix3&wqyy}5)sN0Wl-6&C3{h+C`*xj zk}`HBp$KUtW!|s0_kI6)pXdGD`#kqN-+Ruz=Q-zd&iyim8B+jgVrXm#z+eCXg9gAD z1@r&}9KJmvAfbt3L7|XH6e}|`6APLZjb>wIV`Jyw0@*n*9BgbL4~W6yxVgE}oV+0-#MN4D*ju{AO<) zMNOmVQ5bh(&}?O>Ag!+P1RWjijK50;vQfc?!OFbO$2=dyhj^yzp5(emF{(bgHzLK4f4aP%xx^>6uy}#reC>GJT57SVdi1%y zGpcZE>|qNoBV)p@xD03!yLeOA2ny0}5P%_}?7*R*{00n;Kw_AV!ip z-Rj&@=F&df5w$J`knQ_GJZX+jarx!}8G98)HpYLvF^N8Vu)2fZV; z`)_**3`xJ`?zQ`<6q+T`lqvF6x@C0mgRik;T<&JB!%$uuF)S#gp{qlAZpJ|TMw+mR zo1o!w@D%-7%^5buL~ZYWm!in>h#b*cx6UFr5!Vm=uHl-k1m(*72E6j|TIz(=<7v7Y zXH#q67v7*aKTV&jHN#$8@ml5$yJRerKVN`G5~2Olbf^E!{y-r$4qO7OUOb`o(zKDD z^`iQ#>vd<=(5=~W&MoJd(0tnqoS>*Mt13MF`;+|g?7Qd$kq#)4ILzM!{?4QG&$J<6 zFfAD7e<;BJD9A!ofWvn{b&mSO1OSeZ2QgfDf(|L54yh1?b%_y`3l!5nVo~^;6HHq0 zG(WM)Z>dYcVN~U9D3n@ts#$JxupY+)tLc z8FJkK)I9A-Odp%5Q5E297-cdq5M~D<)v~UolX@IX6+E>%1p?hCESH+S3(Lm!T`TIT z|0H=>lMq3z3mU1jpV@7PEUu&rkYX8tr)w1TiL27085sKODxUAu1hF+>jNvS4=zSa`Y5%GEf;MF_tS=q zjmh2*nS)xB9cB-f%)A<kfweTX`@H zL7oKaq%XS!6w1ZaQSs9&+J8zN_;4UT&@;$ggt$-=vJUwUqXto-R}#ac?N@rIRysQAwH=*D7$}NO8e?R=&!?PXg zDpoa}9YsQGt%PF=(s2UjL#o0aME7+6X9s1An+-}yb7l=5!3e=eR}DoD6wBhTiRafz z?7n4u)Ne_;?+)RieF9%c1;4dVTs`^N400iIKrHwT7hmkV+wP&su4ZpSq0&+uknvoF~v4N^@;rp6{$AbCU;s`me;o_YuGQ{{m4WINWhcsToltUh>b7fT{GL2KL z?Ux`z5WLdJw@RyP%2}^{{Q?^vy{An7ybcm14#K%ak@c}G__RVKsP%Oc%Kgu`3P3>h z2nq!;faX`P$LbjX`GFu->+R0@%^s=#s^!;*)HZ)Cw~t+&Fzdj}=}fkq<%^92fE{SL zHlfviA&6@N7^sl{>n(&~01!|3#jfoR0k)+c#4?i$vl22JkqWxCxvz?lT=RHr@64K7*90m-g>-=iV3Js|YP!nQlfpL<~d#BLpuOF#^m zURc+Hr%o^bo7`Xo4pks2Ezf>BTWj&~`c2MHCiM~XTO}&TR%KT${WJQ|O6bA)~+J)}{%-J6|Inj?Ni~)8()~&P-+w$&pbQ$`NYPLVx8fZ^cYxdtL29vsoYs>I z8yB*$0&d^5q6)sY_0K8CdtMzqU+}DMw?~$_VE($XSI^U&k6+^5>_}H`FFt;u4qra^ zd2g!_;?t@d0PpRN_BE8u&V(Hx-CE%>sX6sNv4y6X{Ud4Lpo$b9d3LYe&Hht?!Rl?& zB{Nj@-Gd%_0vnS3mX|RmC9C089h)L{S=YJ?+#^itCdP?$=W~g^?@4(U?5Cq7HC>qs zN@iIa6q7=LP~bQx70r&uqT)r9OZ67o?z;Np0CpNYtfjVSK@ zpmx4~hHa*TT9bHX&&I2Pw9GcMlMU^@~P%}Ja4keQ++!=qrOYuH>8xMGoG^ZhK>;}oZ5o;_Py4BEc{ D-<{#X literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch-home.jpg b/install-new/fixtures/apple/img/p/iPod_touch-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..61e14a4c6cc8e7ad5fc43d969b87535e8acc39ca GIT binary patch literal 3322 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 Fn*b6tX0!kR literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch-thickbox.jpg b/install-new/fixtures/apple/img/p/iPod_touch-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..868fdd3c52de8f5c269f716080886ed1db9823fb GIT binary patch literal 28642 zcmce81yEei)8OLn?(V_e0|a+>2=4BlkO0Bm-5r8E1b252?iSo{Nq+MG?z^kHtGc?` z*?IH2XQq3mW#sMK*M--g0AwjKNihHj2mk;A`~Y5;0U`h}P|&vs4B)^B0Sy5G4h{he z1qBHW4+{?u2MY&>fQX8WfQW(!2ZxM_jDm)afq?;!goTZXj*W_rf&SJA2pF&qI0Os? z1PnR?90L0Pb$IOppg@CafNFq&kODwaK)_HyUV8upZ)`$YfCd4FfP?}Ag#n`R zfEW+}*ngryK!II=gnC^9z=MGRK#{?afnAL!{=4@7&npOs5C8%kfDU-C@J1FK;w?o6 zfV>BP%b@4Kf4lsKqDws;=~TB+3Vt=Tj{deuZpj5h7~UnJ#xW7&99~PF!l4io7p_8H zXY@X1U{Y9yj2=ckDQMA9t(M@HBMX3z41j?Bg#Hf&bO7#6XV3BcotSpm;*pc#Sp5wz zN$aers*oy#3Wma87j?nPh#E?gLc?Ibe21(zRshJD@xQNtH;(gcVwfW}BXIl75Yj=8 zst=p!SVK5dCjJy)Y?fzU4{o{LI_b~)tI8W2z+NGvBV+9{OD^=5_3?2SA*BP#A-i45 zkG02_zLtZQC_LoTs!9<_DLg0zO~nahvNJS{!g&^VoNb)-XDI-w{ykjC0AL;h{5}lT zm+4T9&s46T=id1YEw!E?Z@1|kJDR!W;Sz4UbBndBDPc=rjCY+wExSXlvId@r`aUJr zS&hSowly}JdC75L%OSAP06^9!&`;2?0AgxlY5)Klz&N5GhvKIhR?j)7Ia}^)?0bQ) zEYP}Q-^6N!MR;{%D|X#-p;x`ZP0HJ5uWL`U-dt#v52q}>r-ZGXWtr})qolXZqx;Q7 zGkKIPa&ZOIscwGov{~%3iM#EI{~`+n1xH_vg zffem3j&$YXg~S^{oy%>3pbE$5LfMrt?l1xU{Z{Xc>+G|Z*x2>%b==<~`C~KaKx2Oo zq~AonxmJT~!*Ie{N~4MXpr5@nV6`T?b$Hj-$7qXhmcMp@7I`TkboUAn`hJ2xJQJOn zMi3NVK7juF!@|xt(W?kos zcem2iQQ^>$^W$XAIYuv+y}i)RzX9DH$q?MaHmKpU?lJb1XFu?Yb(-&AMhEr^00BS- znihxNEC9fE>4v^lmh}y5m+Bl2DT^kP&F(JP)>rx# zuw{@CZ>e)qb$CZQww%16sWq$=AA7$9VCHXsxbOI$!q$1EANmL+xW>BIHXE7dmv!0x z3Xl>xOSpY$=-zZ5OD%KSB`~f^X3Tg7eFYT#S}V+3xVgCL{q0kLA_jVzw;=~|Az)Zr z9I`ZGQ`cNKR#uZFDB^N6<4du0<@E?&uvehFaz;;gIG&2s5nQPkK5A>S_MHP0%0Fb^ zHwB@$@495GJQBWuk&4}C)CFNyJU?B_e+kODhux}p#04PzY5tVocdCdsS2DPTy zMA1DZ>N(qdQ!Nes(E=Iu8okx)m$uZgQ>PX^mm%(3+fClFjViMnKf#(YU4m31n}$@x zSAcfqPJLS6#W))`LP^v(g^`zfn^lZU+hF<0)=3DE%6|z^Bg*m7(m;Ci9E-DYArUPG z4@fzC^^z`JVC1>%sSJCCF8D{vD^>iV16OyEIMIsB6Z>Pf>BF9GLx&rC*R>iuKGM<8 zR8WSGqn8zH9K2ze=b~`ScuTEEX`$b3Wd-estQCHnDk#tazDe@UE5BC|Fbt~*;TdtL zZ>k?FtFQ@FCQHfA_t^O!DDE+N%X&1|^-G%o%YOR!C|!Wou8rX4!J*uYZq=x(?bv0w zO@yRiIHJ$8ufxZ{ThCR1b;&I`{bcU|=#2i1;olwnl;zzEqmNdXbYSCTldkzU7%Rce zWZh=dr{5!)FhgKr0`MsdhysrNp90h>0PmgyBQ%$!qyJjX6(|mmpR2C`k3_w8pzz*m zy@j{g=Fg1d-7{#0dYyD)=V13AbHR{(GKQ7U28srMRgKiSFdV+&M7Z}}6|qyr30V9WWl4r1wKo#5mXoo(r;YsD*| zX|KT66Z6`w?{N?AoX-bUS}d8>IP2!u^&dM$2EeKU#qcKx7`|)%<~icG>_QO9p>UWu z;_85-^W2fT=C#S^@$~fklIwHm>{u_b#+NRL_e9mltL-YCx#uwKr=weeW5vhr)}oU* zCZAaqQax^@%uduo1%G63;b_Y;m?Q7y;ko`72F6Sk4gEr<%AjeI&5_F$d`wFr!1he z{k<@Gv(4WD*6HQThcDjkHvK+kfz38y&0v1GU|A8~`(&9s$a}ZEKlW<(>$rz=XLe8H zxJwHnj1P&--YxJ@P8v!W@>q8Wo4-vPZ)Q*Pdwuq2M)Ag&$KIYie=bQ{0`5eZ%(ia~)Fya15^toX%-@gAs;4X}uj&9Vl{;u`^`RWH;j&lG-1_=OzgaCyA z2QI$f!k^_hDkcgV1}hso6gsnr0x}6H6U%#HVloaPEb=G{;7T1DxPS+N0M2U@m;9fX zHLMXNwb<#+XX$o;xB^sb%rC3 zp5HY!YZ6X9$LZybU(^iUbzd=<^t*_7^zGXQzC|%L#bh!TG2^g7oETPeQ;Cu2|91N< zdgzzR_nU@}o60YB!UB8(ZWy}Q9TL6e4v0qmX{lv-O;%kEH&=|20u(i6201cQGBm$R zXt4lFndUUU1Y`-)&>24t4}EOkfRV=2;%(nGDtWx37wcc`OwVx14y(%3VFaIv2g~`8 z-hXh%{OW&B0XiL0RD0dV?}wI&1T|G55Lk{&SZPYp#e^5aBmfg+0w!W`k^TKn4Lpmb zPs4%BwXXtZaiQ}^t)8~b<$lq-b$R3`t;KKX)X^*D{> zMN-Z0>Xb31041+L89P~W3+~y$)4Wao^6%k(BQd{hT2L({7tzCEO>d27ksZdH8KA#& zfUR3{#LI|4i5l;-D26+hV)_c`K%aWdMfG#U`i4MK%q9I4QfHi`kwtj3iiOcEnr5Nw{%2Xhb9-u9VRlsNG zUP;s2v>98Bg@wwn%W|0HQs%{7RD40OL-Z82-`Z2D%}3^Z!IMK@(Qsq8g*4Gr|2#>+ zImJP4lfbS7uPMKY_>9*hOEIc6V24&8r=v|dd?fAArLs$BGsz*IntWw?UrWN3PpzC3 zpDSCw^e*??GoL^){>{A~w(lR#$%LYr?l3<6R0ABmgAS|5wt`<42&ZypOCLy8Mqt<-y%Y+54smsG=D=9nQd!2(Us_ zX%Nx-c>ZkKU!0v~xQp7`2Nf|BCY;=&z9%H}Xh<*{Kz%;??K@Ltig{q(cdba&g=#&< zp0L$+%!rjTp*=9;&8c5$#u_wD6KdL+{qjhq;`|l*eME&#cB?4U@I0@8_-xBr5H<6K zmJh`mKkM~=?jf`^@)C(1Y`1QO588U5DL{e;+8U7gQ%uSP7S$^6(e>7IqMi?@rY<<4 z9`&bNF69--TxB!(*7LagXnWth*;mHN8}rl~#ZTnZuhW3JEHu=WgQ`x>EH6$@=7;=cn%2Tbxv>GrFA3ii3J6nuItl_tUkEHxA0F4x}+2Arlo%r8hXlR=V9Y5E|Yo>W1IAwrR=X`4~`KN7*GMOgUgp>mC2B z8FS@$`ODP-=0iU9TxAY<^OAen=yGKf@yoZUBhelT>&stGT!*Vn^YUY)T0#;Cu^yf)a&YiRVR(wcpbV@IKi1#;D6;;L^J};NpG^T zhbH?ZgbxZ`^JSap3xX>eiMts*a1sco{d{MkT7!J&vrPv1;LdO4z3cI&$$x}LQqjw9 zztL&PW}MGeA6zhu>C$Lb(lu-xirg5~!~HJKg*vSX+Yfeeyzm{Ivyrea0+cIrI{uLQ zcVQ>PBqw$1c^3Tl`5gCx?^da}!>`Ug`|eL1Uzncxmu+_=lH65EtXh3Zse}X6{gAcp z6D)RGo50|&UF<0&>8K<7TpQpP2LpS=H?)zEUIE?82Ui!F{p zGpa5_^^e5mp~`^@tqxS^7MqpHX;`mB`{y}=)-P@-@)<`xWi~i6yu;lDCg{7H7&Cc; z(fXEyy;V`koMZsMz`|*}={~&%sFtRl7^YNZvKEp7#2=QbTfgidnQ|Dfa|=JuHH=v$ zUIZPSF1xWgck`$yuIZ>sw58J%ee$1A`zh<#td3W?+;;?`uTCu8LyvCo)%(2{q9`M_ z5sKePw9wr!o+)LIBQt*}LvfISkxDiPc5}h(0@qx9UGUvT?l-jQA4l4I?0+do3Xff$ z)h_PGlhSXe6g4~_D`JwIv|9X^11vQ19G9d*DFmg4lP0Y~ zk-H?tYfF5VH5E;K;0h~`qQ~q`Bf|vcU6-433!a;tub-VnpSOMg1LR2eaFw|Ar(@c{ zj;%K^h`QNJ`QdqY0PCsScmY{iPNZyTMDe9;`mGR^PU5nUex@~z(f>dk|AM>%ewPUv ztvi)C=%6kB_RHEjDUz^D+lH-U=*IFf+PC0$8#|SbpRsolSgH!t*oOL&G^Xir4UA;U zECRxr{sUz428s{=t5ot^sW*^DC(niYO6c{Uv7+}%AfT^tgymxxXdMxte6 zp;59JUYBfM6%0C!s#4I7Nnl%uDillnbK$fX64%xVrgL_PA5RAfS{<$=0*ir9RnjMo z1`y@0Ru&jn&TJHr6X*Q}9dl4scc4RA=WQTd=bH@tmyKF5rW}QTQ}wvRLJJFN;+OiXt*?Lcp@$?1kSrs6H2N|CVdO53ej-6E=x#L@S4wh1(@o1 z@J^!79A-ENE14A6tcK}mn$EiMX9oXq#8xZcgKg?oA$Q8_G>6vJ8wmNth_g)?g`zu2cBaE~XuMrMP$1zpv=xgwOQ<&SS_V%cnU(ZVX;d_QYz*J&j}0bt zVUeut4v$UfDs4J`{Ox%JY$_c){k+N-*iL-*wxwbj!iTXoyD67r#?)zJ6HG^Qq&mQg zSP?mIS7G}`Q+6$m6BJ3f$%X35SC;(j_v&5&O2sDV3t>e^T>B=jwCl|YFALY))`u<0 zo_{$uuLP*a^=(WHB(6()s;m^5zHUd8ykI)!cu4_P>R?wEbPP(#ui1O?QKD7RI_zYd z&6^)E)eV;;TDPjxT>M>XyA!$^VnN3&{jD;6R=)HIFIuUt40NEqNkL?H>GmDzW^&`@ zIFi6Q2f6L76Iit|ONYSu|Wi|2h3OeupCAy zwGOPP#;xeFY(XhG7AyN*Vwvn8KzTK8^T2N$_z_l_PVuSVAW)Wc)2nr-`iV6MHJ7wr znU8N4w(q^Hw{tIggTS&KaPHA*u1qI53@m-}Tkt(DA;dYDnebP;4>fK=liUM0xf;fhO=nIB~4h zrV3Q>#DhXX2)Se<`UK=R0SR3LoJOwy8DYY6hod++5EfR$|09Nd?&wh*H|sB|FSb}J z`$9ax0{>S+9-b;Df(I!SWsLJr0xj1|UQf4G4<^4(J;V~0`*-3mzf8^c@9kR-M$jjd zD9(1^fBi8gX(5RUJpSK&^q&ZTdsJ2w00Au&@q(kv#Taag&jUm{obGgpD_u7JdHR18#<`Hhq?^pb1;_6BIF@rSFivzoB+Y;@h@yQ{kmSL%Bq^58FYiJrd7_2T^ZX1Db~- zzM0eyKk&ykOeZwJ`bEozRz>) zF9iQXTY^vsEf@KOC5D)%6VHQdlpnV&Lb)L+mRcJ4q};(O{-fsdwqGef7eGbX10@mt zJRlq5r&i|Ib2dR^7GoDyOk&)DEncWhu>4r`F(SRm2vZYR?R{Wq2URocfR8=jmpwwE z%ShsbDw#zNz8!Sg=C2Z~!biHSiKXOm(eq&)x8&|7Z73JgrKxQoh{2BeIjb z$;KgRp3vxYDr?s!3##FMN^q>y`EGFSwH|FMNfW5M&BRW?^d=5n1ydqoqW;|)aE(Y; zLW&tfT^!8U{L>%#<9q7!XR9|W2z!LlBncbonW6G5XHFW{()%9kp z!*>-7J^SZDgL3D|wV53E1+BS*n?&0ckr5yC_RCI9)-c-2KNeFiXOC%fdDpS>nZa_( z#&=tO))H9+e4l%4n+-?t#9d#-Krz?&1dZI)+SqP25h6R}e0i8M)g92gi8ZC=n~o8Q z+JF?sB=;=X{HPeJ(nW^=*rBI8Zo4-kQH(4)O{G1Vv{cC-O*e4)M00SO@{;9-ZN&0?hNGQIc!|7uhCWs@FThzHx{K`vz>?Te37W#yAegLw#ofb$6{; zCsExxvHX6!xleU)0vD}$l@$@|GH$2kB^X-5#uKL{g4fcAhpL6!k4EEm%QRH4iYD zvJQo*VaR@2)i#)$`?~kRV464b!|b6~4r$RZ=@bJ4Q_Pb@!oudQ8DHgCTc|mkZqLz1 zJIw}ul{XFhqiDQOkSfK>kLy6?l>|P+1_J?ufP;bq0|y0rJLLnqP!w=f5;SH-hiGJ= z(y|FD7&tmrL7zuQ0n&zmDK>pf@8WjWbywYQrqV+tnPy!OLtyH_|sa+ zRdw@O(F*8Qq!F*2P6=7@a9n?#W7189GU4oy(Nfa~FLjzo%N^zuodW*Szfg)m6xly0 zloOpCAWFQ>@!L(sA5=r6RUJADS|jHSSA!vnNVAs+1>vA`Vn8IXB`1z%QN6B^us&xGipNCda+DT0{j!p`L&h@ z+qC}uD%V(-udBMaigV>YN3DLPWj?43Q@GRY&JKS7B_+B04z5vi$)&jwbyjD(o6U*P z49GgfjY9VR%{o{JE$aW5QB|nuQ1MTLQarPjZEhisRs~jsdj@U2DHyOyy)HJi`JtaAa$Lb&wO%2^;N4zS{8+#-hL&NG84PFKevRmJ{FUQ+az4%>$kaD z^TbCnf3Mf1C{T=1_qwh6P%R-tNrr{=g_z9eOfi&TB|);T*(!2CioSMmnp>VZA<-p( zIBbqDyIC#(%L2h7rI{_aTkV#!?R1ScP zdij<5^35(l>?voRty!MSL%xRnUgBE^UPJ&v#&uuX=>$q1*2=hMU%vO+`i$x&<@JNi zkh-Sk?#;IV+qEKI|MeZ%0YV@A_tOXzj*M&Sq|ZCbBM0|G@WDGb9-_PIT!(62bUN53 zF3bJN98q}U9Ezu06(9I>nxJn&m=+B$-L@-h*Y^6I{wt62E8iQQv%rOjU$JcrEx|?C1~gQ>c6eF zI;DSJsfx(m40`wkgONWw1XW#~tdmvFN=Nju6v_M!ebua2+?R7;Zx=yvXbrAcRM`%x z3VT}1weCJnH;=u*a)0WNl4Lev?1!cqVJYV(ybHwyb}MFQl1S?PcQyFA6h;^{%Mb+&27t zSEyQo0ZIL+Xwi?XLrpuvsbsoKjbZYfn$R*61I@rHSoey}$Cima#5 zNNP)Ny7|#RJiMt>#D)BP)9xX-Cqcmgg!`amo5@a1^Ih2i-1n(0bi8CO>;A*0Eju z>t*QJD*$?W&|$(XF9`gI%+MqT>--cq(Z!Yrlf6EanX_7cmtUeOLl)hZ@@Nc>iYg{h z!3hiZj&yo^j=dXRPr01qOFI{Um5oxO+vS8EoKlkgD}Nz;1u;fIK;dP@hjkmhL1={K zpv*T-6JmOE6ZkHr`tE1w&tBh|Z>+OJ(=zgoZp1nO0PasRK0mtVR@wG?PW#ESoHB4h zux=Y+KVp$YLV?nWifcl$wYmCVL$i<0B;mk)v~tJ-Lu+9-MB`9frKc4a7$Bk>m5xYJ zl;>yIA=H;ObH$tB9{&i>`+Nf7P!Qi%U6*@0)p~uQViLs^_}L5g^2ujtSNP~`y`$+q zjz24T38wjv>Go3{t&l?N)3dH%=tS6=ICA^M>$9dVXq-aT4AvJi?UItVTh+Zp>$3w- z;Uu#6)HKVkN8=3el6l!swTKS;mV3RYt)Hvp7~vc8~?~!G?(8le5+OY`cyMLZyG_G9}5ORYpIeM8LSuu7d}Oe?3CBIY2KIN zm=iWtZO$E=jAHG^ie;d7pmtovW(BA1c7$uIp+^WI^dqABdvfhwC;uFL+Nf9M`WQn(X3HZ^KA43!4u_K1A)$rJVpf+%bQF1OEg?ZY84lQ54R-IIZaeE z)1sJo(PEv-o`pp;f<&j(x?@K6C02PZo9Wmiu3vYkoq`d}s_wr1?3H0>5_6JY ziIu8_y5{K>Cs)@DW?gUxHHktU5I#jg%W4?IvA~&^(1O(FC6%I4Wp=O7?4}bwYqK?y zqT%>OT54Qm?pwZUjwCrqZ$P;jH*d72mY5c75KH6USlXo~{;4A?Ep0*(X>jK*q+*Z7 zL|Lr#R~z5EtQ+JT{2m&}JH5#>SF}RgIwM5t6Bmq?Y)h^K(Nv0KmVR4+n;=V2J-Sa;YH4ozl3K-i z;n51B0lobmv~KMXHA4vBPc|}F4?IN~Ld7=o`1yco^)#`guS)H_3wRaz3WN^yAeHc? zYfkhhoI?~nF&<+lb3-@bAcK?lBMrKl-lgObQDK~YEw#oGAIHVw<+&5$3gLIvTQ{|r z?Bdm1Tc5Xd$49bGzK*?_)7S~!Z)t|7Oz3v>u$LT>rHDV2vD029@EY4(r%j6nD(h|= zQl5{^TflsWf<#2i@GZg_YBKw-b>jSRd!X+MT`f5)asQi^Fk&VhOi$Vp&Yx5S6%_`Woy?jYIdH#++5EvKA!MCN?Bl; zddC|$S4>c_f)<0Eb6*8X^!vGP4Z$4uYCKbJnz9%DO~n+viKTK?lr$L7j) zH-NLHX@h8RM7&)Y%{N8C!CxG^6c@4Wmhq!DQ{A#JAky38R9uqewU@yu_E`@l^!h`! ze*K;}VkR0OWuB^H^d0VC*A`fVk2eY>6cJHAYIF9ST4pR90Y;Y}%M z+(1qkXLgLEl7G{}%9a$l(0#2kHJ*CB9sH<}5X5RJA90;_bySsBUI zI9yfVF`jFJU>Kyv7+1l6q{POBMBv&QS0UPMPfYJEA9en^D`ad%;R5k%^3yAz^|4B` zpvHuO<>YK!`H3!~3W^Cg{O1JoEkOwq=ND3~B_99y)l07ra!GpSlb^-}pzG=t`s}`= zM7EsE4QXm3W8{W{bbAFw%p#?VL^o3(!m9rV-vqx$*iYg~^>u0hHHQRH_qd)U6u&?@4f*7V}pt%2Y5#l$GR<703m05WJrd8wi88~6! zD*tKZDGfzy_tJ|sU3^$-71sQ?#^m_K1&5x-otPw+ddcjbxm>fQvk^GKoLEk;VMIeF zM!58I8g8XlIgBne?jGwnxiWCKVBxQZM%ecDBm7SPx9IRn~bGV#`01m^ql{++SV2Cdnl1!mhsaKj&TVb@fJAdslyk99 z=~lIBlXmo*izwZvVQA$73T8=*3$#BpzatD_Zxr@oaZLaM5v>rhW`z`7RpciW*LAH# z_jupG7r`!GuCsf_tHDCF3-KcO5(woe@Z&`_vDGeO%f;D3TnosV(2@X@eJws{bj66p zW@gOia87q|)U51>&nlbdsf)aAo*0X)PPQL*)6mN!v8F+ic^KK97?ELIKUPfW$+iV6 zp`>e#THXxeuwOg8D0-z$IxFq*#D_Z>?{z1$CsqxL`=;1t<(~HcDr?*FRsgCQa4!K= z0y6@$N4f1!DTb{}T>RKvtp(ARO%PmcvSFsSu<4S`5xY2ZT&FvD9WIF1CWXo6rIkD+ zxxyJ@wU|NEpm~X7j+{(h6l+l~)amxsIkm2yG<2^32i0c$ez*#QhfbJx34zl|61I)r zYHDWn7LcTrhIDhvX-|5xmj0p5L_^iL;TM0b8`ytMm&_C1Kxy7U?xihJ;l9il(H_og zED96nWWTP`(Y>@CD5h2W5mkiniX-bSqvlX$hKJThY_fW>cIlLRfTv{;=+Yf&_B;_PiGgjZ+1Hz9EoWsz&xqgK9DNlA zC5rKDH(_I>COnjDA-x0i$j`x=0sW8v7DP&(Ph%SStuAvwrz6FmZ*hh+ z^^f}SYSrG159x*nitn43Y{xuO*PXnx-xZ{Jv$qcPH>cDhHN7lIV;3EGbcAOIf7RYy?vI)y;SKO^KP;(mzr6ng~-TrErdYyqp>K1y>6&{#oI9BTxz z`_^_?heZ_25yKh1JC}WJw4M>!f&2!`Om=w0`E&10PXlSSvK zpj&IquKRC@|0siYroDipD;A`r{nP=%lhWFDZyP0q)K%dQ8cag-W zp}u{7N#E*(vF;{u*-QGwC;w(`>QUdqEOklW=7h2SA87j<)TgqxX87dYugAB78NcsK zcXRa4W4-`4sCFyZ?|6jseOB?3+ryJxD#~GVb5Eb@{o;>Q_Ah@ewre>C2ZZs#r?Y(2RP7#%Cl!Y_*6yzdh;hTy6Q1j?gq0C zHCOjVIe;Ftsw<#sf>v0c+M3a50Gm8Jxh+C3E1~<;)$pgn@+9m?u~qVbv(=h1%{`=Y zWW(LfhHwDa@8ev1Rmzf41T-8qHsnT_6%GtuTDs#~PbcDHdfLO~XiFxp?T%iVhsJRj z@)&nX@)&uT4L+(bn$%ujRvYs!-CVE=fRFPnm%eW_Db%XG0uY*`4XFD3HgC)Y(%yTL zP>#wMtWhZo#yXEb&6S1w?VRX|3C5Nd{aTstFSuDhg-&8v`dtBCw%iz@_l z$iy_XEQL1eNRwEm-=TBJMQ_WcW2m+`T%`NiDBzAAx1^Xk7(WBSG$gK8X{Ghs!%!Tp zy3Uyij1z_MgC(FOG|xll{UGh0mff0Q0Ecllz20z^KZK%4xe>|AOlr{Q^r(!;!9{OR zJ8O;@KMFD48F|dThyMFOjbA|ru#b#XHWvpCSHO2oGQb(tzhd>SBPF%q;Bz<;jM0EQ zDdo|aWV3#=MY!C}&XGz^%h^R*rf%^1IF_^`ee6~d6VrMCy#+-44!E!3Oz+XV0)d=!~k}>O;-4XIIBJk**6KfE91KBjK$SDW)!)fv^LDqR| zdP9G~`h@O!tnmnyu6@Y`w1|q!hkSJ63V7gr6%7{|G3kh$J@QUzkCX-mDSvw;XT}3U zC8yFsAb>-W(UE}CBv;{?$OBQr77?Qg6k%TJ0|tw9;5=i7j#Nw{?1f#N@S9|V+^czQ73h#IfzQv1@-DzJ1cp&sopg z5o)tB_MxKxbGbqM)) z$&Z1fgB#&2lC!E{P3WrWtV-C{lv)5?QM^6#POpN598lR2NC6W>Y@FY8m57 zq|%y=zR$5yaEKG}D(RrCqMxMH&y$37h_TD&?`c2FQ3}cCR_tiUbiu1P^!-h^%oDuHp5$VD6G2i7S;UhE9Xu&{{Xt>~&xh?w8QqFW zUC>e`Jdyl%&=ksnnK=tl?VF7~JT=pkWS+#Y4|djcPcO2etTpzAL@0rUhw_u*HlVGn zxZ6>4@KV;44pw2_mgfUVkB9fkJiO64bfJ1AY5b!04WLD2njB3Fg*uyG z5E{-EKft&=zI9T~(6)*$5!lBGRr%kYgyw71h?X|+s}F_{n5<5eGUPtUmY7v%G2xF2 z5~i+$5T-u$hB;jHj;7K+M=xj;{K@W;7yBXVpri<;>olbd9y~dI+TLx0M+IMcm+Gms z7A?r|YZ1kV_^7Ox+EbPLd1__kS}gRO!Du_hCR63=;^j7um!Q<`vO?1h{(^bqh?4d^ zzdg~kZH8^-sI)QiWLK13-)iF4(droo0)v4XImK_MY|0AR^m{Az{Ao%`h0vAFKLW zYR3`qGDo2`WeV^yjm~ZfKPWJ8?X7pcJm5A5fOI$l- zTRr|zQPu2~#(^Fi|M5|pQ`vhn7Se=TpIpHa7Ymm6!_&&xl$y1s1YJbAr|mvKiT8bH?fhbVG0Tx zo22Q7%%$;&W2Bs{2*oEFcx0c#1|(z=a)R+sZNlZU8x~U4%F&Y>veY1`nC zELEr0D%sE^22J@I;#t_WmVJ}-hnXcfJkD4*pp&7m67LpfuiD(EGhktiiHnavQ8T+z z9B}!5M-KYE89q(t2SC)Il=mk!s0nk5XXL=tBK?JoUccpzD zbp!eIA}2ydFa$~g@yCkOWH{1BqoI;glw)utH`u8hW=2=beWrGlC&`PAiZ{|9-YuhK zBpBsIr!c=yY0O%li2o2R=~(mWnVy$cc>>3wmvYzQJ#BjHPi>Ge^CtXUXj=OeQ4J4! z3wN$UyG+8p_J?=1rdcY#8WxyRRX-%wvI=Hnj@)NStx+WG4{HUj7^*fFFSc=9$a`%s zUh;CnvgCO{2z23`M~jYhQ`PpZhSV(u&xXd1oQPI$2OTE0arX}SOAJi~M7%3Z#S#km zNQ@F#+3kqB6TDK5s_ZA?_po7&0L~)Gi$V$i%_~l}EJXJBf}TGNoW0~U=~Q)C#vu+m z$ws6M{V-zV=Q=B%OYrhD#|6K9tQ~NS2~*xp<&%fp9o9SPZN~8^-N$Ww)e)mD%}rXU z+T{66W%ohmsoO<9MlxiB;^2z*SOg;=_Vee{tHO{B9W;3V3Fd(xigMhsow6keQ!!nh zWk!qHG){*7kY5e-Xz8Kk$P!F6mB9l%yIb8kWrl84dG!m{v7ENofZc|7*KoGx?_ttC zbv;6mGnz)};~x8M!g%q2sLI6iwz$sPS zy(*9cnUxhsh77?coU4io@CQ*6bcz_dHR~YiTz7jhA?ZxWUGO)v>rMufhu;JqyQ6O0*o-lfES>(S#Dy4wH1Slb!{`hCmN)wjwmw&3 zS7%uAa>w`O38z}wt0jtnd}_#H=U=Pz$J4D=qg5UC!1Yd{Tr&u%zv(E}YL`d~2#weN zo>86(o6K?N)>&wxXnq`>=jds(F{kq)#lgP#%Ub@+x+$?cL`(AV%PrI?(hO0fpn~uDv(Q7$ZP43otDvLr z&*#oR*cITdyYIPk)9QifokXprtDS5|*1=m7(S&{s*tT?*Bg@>pwU`&@vbU@xKMT{`?F;ymte!mOmi z>So&+I};7NsC;gKZRZCr?tL!NoC_pr&Z)k=?u3?!(|$W4Wst|m5-rt2wK7|%)FeyCCe}G)KkN5 zR=L|&$hdWH(_|3LMda%ZJ42KS5MIAY(VU%j;TR(3#WN38!Wy%hEPWxJFZ&9j!A-v4 z3Kna(F+m74rejdkwwB7?fm;(49}3ts%0@xn^;WdTbJM>9cGysR$~aqxTvzTC$hW%& zVvKxarZBUm)^1NlZsZZ-k_Q)`fSVV#wT{8|T{diglb>aRu*`f>@oc$EDZ!`ADckmE z)cifw{-=>$L;-k<9E|BFQ8)D>+-i*;u#5hHb7ePSL(A(ny3ETrroI+tyq0uO*^I>WY@bEI|9QNo91k zws6Up+HM^4u9I1Uo6HeXs;_>Vqjbv`j642vGf6o?_W;jzz{EqZ$KNy);KRcKv?x66}b88(2{-Tymue(MNVb_Q`P=73yqF{7n z($n>nQPyx}aHeg8sYFI$`Vn=w`(7}uGd#s8jhDP{lzw>c>Cn=%AftOw;hi>OSEuiM zVX|wj4fjgYd3!#pr>S59PGEYd7`I$DE0p4(3ljZ|qpmo~jPK7NC`IvI{7A)tYy3im zY9Dcm8R?*+SSW?+HgUQco2qDj4cio)w6L!<^-aiGB_$mK)_Pe@-()m~)DGMrU0in3 zDIqfun()^$Cu%(X#03kloOlHPzHk;^`HJuFIr|2rPd;$35@nk@zkItmc*cJLmVVF| z-+qbge1_4uYL6WBL1I1|5Hi>Q%tTFIt#wQxlQQb*uQebs$OT%^Fklm;I4BmJW1d3! zCm9l_$FH@(75kiJjtd!`N8)V4u?RnM3nvoj7iv`w zWo7>@_ZNt!*!&oWv!QU5JBDb4Ixy#l4p;#0=h>&9-*SWwZZU`!z+)t)AB=ez6+XnW zD$KAWi2R+vYNP~K6=z8vTKe;-Gfy5*Rr!TvOuA@Q>3^TcVAqK`xbYX;!dGxaTa&i7T3kKE$#)1_b#0GocrZ| zzWL>moyko8N#@D3n`E+x*l>tAVld+KE;KMMS^LSuA3fRn8H13ZCjpp~b-?olrVXL1 zotX%xN-PB1zVJ!sQ+!qq2f#*m9U((yNJM=dhDss|(}sxstP_?yK=g$$d#@`Bd>@8W z+;Jg5>~p2gf8ZQ z5w2jn@>jh%&j_FD<)45EVAK28jPBrJdBMWJT-cSn{a*`X_%BD%XQcpuz}>%s1s*Wk zbNI(BU|W-PGz^i0i`K#OIedjM;=go20Duy}ChXZtfSjleewAX*qod6M^A*K0n<708RJ5C+KUHVO)Y|`u`L@^Qg-!{{q$pfByyeHg=uD zI8S&fpIERKg9AuFFn_PN3r>&;eRxg|t3Q~b{!?7IE?Ay@WUxHXho70)D3lV2fF2BX z2@FbQ=CcuI6=~+*BSi7Ni0pwF|5o!8#{WO@X#g4rwvrY$0*#3LKlgbU`lkVCY*AGc z=fH#-N|n5xsZ(}ir_JX9=qINH*l4~I=vsW82$6W3AOhx!O8XkZ`A&q6#wR_E;eUbL zj(mmG<5xyxFfycl@ph8ZMt3S&H~YF*Aotf6l5-pvI;P%LQ2R^}lsuPLJ-T9GJc9%s zzy-&}b32fd1eO;zV_D=JF=xl$#a5i3Z@W&{$FR6-Am;Bn?6uH}0dHsEXhPGF_$dwO z-O4|WC#RTIx?Qua1Kj7U3_-!dwiHfUw8y@orqFj?Lq`YqZ)XG3Kph55lnXOF>S zsvV(#=wOVAMVu+cYiv_8(^~bYoVBvpWS#JcUqQhQYNX=c7bzWPWh>t~dbw7`R7k~d zCEo-3N|!cMKcDr&o6dGk2b7$75Zrr|qou+)$8aE7VgC_*F!=}&BveAqHO!*xJ}anj z#L7z#7)mwrtQA~t!3U?Sy4GFq4UJa6a`#6dDfVCIn}6)=QfBV4O~zn)kTxr zae$o&MzAZ{DR+D>(ysCKr#3h@PQg1tTHM{-7$*Y;elLCw-LbRkx0u)JGN;PZB#zrH z+2u-vH8YUJHot;=QwR{o><;XQGv!Xjs(Hi4yZtF|uif{Xlz9V`id@$vsYmvRvy*tw zy~c&l6nbF%U7uQ zm-4XL=bfvqP}${R^M?@lbnYEAVYFm_DY&{DZNXkcS`W7^^+;V^L&C3^Yc@r4DNK=S zMNUW(4^1#bW59vEv0%Lm;*0aDT(mVz8-ecG?rIv~08m6+|+riGJWmg?y$p5?}&&h}QE zalhgZb9br5ADo!bi?uT{YIe{sN+Q8u^0uyfM$$djg+twjeV+8R-%Ai*L zkcu&&Iwho5__j`1#YAyk^VlpwdQ4;?v_GRVdz0&;KWl2?&BF9s*$#Kc)2dJhbki-n z>~Y%PKWR$hTYIR7;s@qgAu>I+U${r!&OK6yTP&?FuZRjRI+<{;ImhhGnzlkj(lA&C z>e|2U2Z~$mgB)`ZaYlu!b+w3pcMg6g#PuecsZze+(WbJC;z;@GI4()G>=`Mn@t~7^ zM==HdsY)cSaK|M=cF`Csy#FJEaz1sr@{fI=iL+wDq$~?+LqR*w+TdW8F4gHVW|k@8 zD?h?sG~4%4j8m#(UwWd{ju@;OS=somxx^(kQnVC{xN2sDO+dI0SyaZ3dgtHXu+lX3 z2hp55O*pbp4Afvcv*EGAhTEo`^=^0`729iJ?eQF~s~ES1Q1$Uw%)kqNL5p7!aluy< zHT8s?lLse# z@t!~_JXNV=RVf07#c%qW4038|o9NR0>$koiqOPAS=8-DaL> z4Q$?SGhXGtSv#0DZ`hBdu^NT_x^~d-!W>E4=p@`|ak(}^Ph$%`ZSi6IG_vXP>$Jt? z7c7-N2zJ0|6Vu+#RY|hyhQce{_n1X~N?jq>^_kaIo10w(IRahyr#^%~$$3X1_#R)F zx8Ov%wPi~{W#j{6QbUR2!~-`TQ`Rk84hpsjqHw1Q!n zIYi$R%Z!`xmv!mMnhLJV*uPUyRh&9*`FzN3Lc7O6!LQ^XD___nSh(|fBdDR8SOgOVZ#>o?g^%a=m%G^kf|{-z(9+rFwx zmn!SF;P(bI-Zh$3cxXo(5j={qg*}q|C{8FQ+4L2%=dp0(zRoFCG1k0=SRI_bBh;Et zAX{8g+^=>V!&zJm6l35?b)n^x=cDCQc)rqnj@-?O+)Z_%%lG;x!YGxd3-$L&l4GjU znd?*0rcnUQh)ilkOf}U4)Tuvynr5RDgabNflc zTZ1f0F(Z3$J+ewJ<1Puqs>#Va%sUKt$*E2{nS)!oz}T)gElQ56rKbpMOcNN+%dvtw zr$?JzOosfYEs#((zaN}Qjq}b&szWpmy$E}!bQ)i1e>zpLkqQhno2s#Tkg){|H#?%r zcC$qjF`FDZKSZ7za?2IVDknUdhhxyl510Ed4gwR7J=4A)Da9*0Tq5m89)wBJ;yzAB zS0$ZFzsF}GHq!Q=) zltRyK>UkMfvJ-U1o2F{g?Sc7@z(A@6%<4sbawU=M+OnHTeyg~BZyP<>{^_2u&(lw= z&mVo`uH*o|^iJ`I!%+D^>KIusDx6MMBFvC`)Ig|dECgs7sllX>zW^7#)b;J` zFNsD`_uAJfo26>yvG>9UmqMLHe*q@@fxdDV;*Ut0it_0peJllqb_3*bJ%|BtI%@0~ zuL00%YVP=#3=4Nj>rB@Q-uHr*KA@XcKZ+GaYel&IRAwmM%m}59ZBT8fstrDg^1K4S zg}0cb$*0)KZ;@lfn)(ASG0Z{J$TW(>rq^=U2;@zkCHcENgBBtDR`{ZYh$Y)w0TJFP zA(Bi%K^3-vxL!@Ntq$5UzoPJ?#u_v64t`=uiNe;jZB*M9!khQ(x%6pTo>b(jg2xn`WgrxEz1nkx35fN{Sd+nQsVm$y329g~Q&vTKfc%k6Ha`Lh;$n{SA`kMEKGWq5;JXX zHVGs-x1X&`>mK7V)Pvkx(=O7~DiI$--p!15j7^h9v3`Cz?l@yZoWi4T~EP=6e>wk zKN1FwKG+9X86I%E_aAT~X3s^~PDzOR4S9qSK}jF?E)TcD_>ko{lpMx{dJV zDoyoXHdl00ASzd~9#A$IN<>0I^`OmBvzpuxJVkYcmT)%Jxc%Y-HjQCpB{7JS(lvms z*~?~Kl_WRK`yy6LxX+YHcv!wCPdQ}0+DJOAU6U#B=X|)VA-r}%;d+>G^lh30O1f9E z&GtsPAzngaAZUQmnejA?tY%Q20$X17Mvk<4|4;S@7Vm)$lkW2I z!~z^PO9HM!cmgeB^VH;eMWz|771;JiRqdKA*Ku;?WzhHh+>ec z;DPk)Op;)rM~DnVXW^|1hFs=Z?&)^ayly<30X(`LLs9(7L~z6oi?d=_FLlBmoCZN( z2m#0yjjk9wi+FfRJ|51OHo=_~m+3A<2wfzWn~!CkjP27H7UAHIuAkz_rXTtb=S?5S zK(?@U;eC@n3E!{2P<`wJ&P_zLe3A~m+H+M(EkFyf|heLW)SYUwo)376(YPiIHg5tD2sD|gh zF=!c1HfPd^OO>(m21&AnG?nnLN@;gRRcceqcgUsX9%ASZP)}q2lE5N`s}@t%?YInJ z28j09dAd@lA&TwyG$5o;3(-bfbxPp76H(P17kcRW$6|B9JfQ?%zI4FyAzu&o;W{-+ zxKdGZ7dp&WIe7SteSq0{OJE*U+4366WtHVoBH}LqU`|>)IU820-&Qio{kgd;Zyu%H zt7v)^SKVjUg@;OP^DZ}ukruB#JzOhq^;+@sgoFc(iJ?7L1t2KF{Pb=%FBglEvL`Z@pKQYjj-1LD zVGn~oel%XIhL^G-fMGhJ(i=wt`vEWTCVDBtz(W#c{DNp5nlmri}`&8Zm{J!WH^sP zWnZ}9aY$}1X}H}u%B!p%EFm^>C1ntXQn4zM=pDX0zW437`#ss%_9MorkH2D|(%e?% zkAzByKO%n*JEu}WVvm7k55pRASv~(Q3r4lh9OB$w`M$9NgO&>0Y2u*NgJZ(6EYu7Xm{#VtK^W-I>jTx0-iv^-k$tV>#9Ly;N z2TS!tT%tfE`!p@#uR9pcmyhx&imY4*D(T_NM+IoeHd; zOVFso-Or( z%BSCgq*G`IGGy5@luqS@He-y{z!1$*d*dHL$LEzHrQ423vE3M01#beDhm&WG(igbM~LKpRG|F9N!ZoW-SURWBkSd0`*0R;x82~B3XHk@VRg7+b|u#XA}F)ualun z2D~utSKF~-V_rM#Vz#Q%Ng1xv(m-aDQ{~K`6zsX8Jk}WfOu%CiZ@mU=jC~)d2&9qF zk#uFxpXD!YqTvlN=G4>;H(lZy8AlYQM9T;9nH0?JAnX_b8uGNkzS=<$)mu6@yVP~q z<^=+D)S({m8s(=N5cEEO#%sr42dLp+d*lf7*T9N9W*gzUzDEjUdB|1uV){IFeCxKA zl4kyW!N;ZF*;x4Z6zVIrD)w#7CB5Q>IJM5;QiFq;-k-P72J#9ZRCoT?hAX)&R@OBK zH)cY!4d>Bi5Yat3<~Uh?kORN;%n1<2Su!+r{RO-&Uf&~nt!?>9s?)wUjmq`4Q8Pb! z*)Bn6ynRno`>0t;69PJ$%xsip8BJJjc0el#=L+`Ah&`#%g(my>)k7EYatpcAUqCP< zp&shj{vw=BF%@N5r1c}Y9|}11hb)g_aJ=vy-mXKmrdi4ug$ld9Ni5plV|SWXuQ^~- zft`xO2_%?0ch}N8cTz z=Ny<4`EeS_?IB(-x;5?`K|8Y^!Jf4DTio)mM6Z=hWS6zF`~@((SA3u}?a{Pl(gl2x z9%>NQ8J$HmSL+(!ec(gQymN@=>Lzww{pj5aMS>sWnKrz}OsF$~FR}Pf<>T1N^(&b1 zsLlEH&@v@A(XI z{m8EVu^dWk&W$%O8ppu~MJWTVG>Ef8*V&T;2|fWZ=%>PJAg#KMw>V6VAx87lFLHnK zh=fo>J_m(Iq7Ji3u^4fHwYZ|~GWh&0!M5VLXmjwltNT*8JAtqI#ELS9%rbpPysnm|fAsh<-5ZsSi2^+i+wZXt5L<`yzZuGW@fIr)lU>?Xu$eKhU#_Hchm#8Q|1VB zBt8r@ok7N+nGc-E%gBeA=$E6Uc;psC3TyiYoSjUbBC{EPdZzWD!;>mDp#gPzREf+q zvD-!2HgAG6mWBvi+F?9J)CHVnY4#L@Zu2W z&i164mYJVLIHJ;nHm8?LtX`cbqoJrlx4Gq0T!HRH)UTGWH!7MR-(eT=b-wI};9k>V zbnp&QHRa zX@Z?+Wot+1jzO%?BzvWUu2nVLvMh5T5Kcwe^vGaA_7{MGgNAo|@9QJI;U&nSZrDhv z*7g?wd&@nFEIvjqcv3nxAk4s{E!n%}tg&^HT*Fp8+`s(V8(E;YD&Q~jl+5L)q);ly zDTc+Byy3yUGPNVMBk_*#d*NvIF}&s}-=f0{jbv(DPjJobiUyD)ufZMS?p zyqNolc%@x;Ho}dDG!Om)B&YsBEy}qck`TNlzR#Swot|uYcst#d+RXE>?WP|2cLf3c zfwoY;NN~qC3B6W9s_fDYx#j6O?>VFO22?w$$oVeP4iz*}X1V$Yrjv2eYV_K^vC~8r&>~L)n9-si~rKeCF={*v(U%t9Y{=EzQ+=9YdW5fpZnTV9EsKZB?N91&y|PIg=rR8X&}y9pmBWS|@e0cxsspb)0qb|x`nN?B zX74_#sB4;cU&?BJLY<{m%+`Pox2IR#UCa=WRiWZ@lW-QyPrK68iMMIA26K)XLZ;GE zEC(RUX`|r$1hm;K<|$tqA8ZhkO9w{RNWX}kN9NzVSWNS~sMu;%^Y4HcQmU3OLi(|{qcS$o6F6TETRB4*4Nrza-8?ip0| zb7_gwpw;W%*S;P(e?!P?^sEqRIIQ8537iJSEpM)*2`etX(t(q%Dvejil@!?=-`LV# zT;)ekTx}J$JW&It7rs%BbTAFMbYh)psbnG~sYQnIDaFCTVh zI|C%-+Z#)rwRgvB#-?Oy@)S`uDQ73S8-auPTCotN-^ibrs-Sd#c7EB|+qkDA4+MY> zzDjOug@VBPnP$^^VPeFU`D1piPJLS6V{>PBGx*HZExF#LE9_k@^>ZS|f|5<*CiM*LQ_gfh?=eaK7se53rsTvYD;va5(%{)31ek zAN;{HudI)q^B2)%4Yj3XswvUEO7X4K(rAn7HRFZzNfA%{yxmac?4lpqy51mEgc736 zYDD6#WqQ=6PUVx4ot4NDDcX8TXYo_Z}&^yYK>*!4s4zD^eGx$mo=2%|)@ zj{50x{Ro~zMxoUHqTii>t%L51Km`4zkFD--smSZq3Xb0T{vAF#C|9kLHuKKsv697( z+i|4B_W(!oeJPZrMS|>AW@&jVLMvvYe{*OsR_c!#*kYRYUSLf$a^U`KK~<#=bVyay z(IX*Yp{``E>?T4PNg9k1z0h#PYvHOMKYL)$Ta3#IFnSQ_YKyEYY{>zk90oIrrc@WP zsJhV=wh$5wN&v8I9BK#Oyd{#T-d#)qI#`wu`cL%Z?O%1(eiW95HJt|p z60MBfsr$o-k!5XC^E~@U4)}_1WoNtL0JL4jO{J#RirzQkU~N6qhsU$CyfsACdq}u) zVrTnHLLQX&Vdf@7XScF+5@Qm+X?0w~OQD;@^jsjPXnQNBKCXg_LcFt8huzF&ZOQ#X z;fQSf)1OC6)|dqC$yTJ>t|Gw`W6`Q@;Jj7av?@FhmKB19@9@$o;lrOJD+2gFalW|DgN!Ls*!AC zhu?-kQl}w~!orX*CkE*gT*w!=>pc|w4bn9I3M{KUVoIKv-}P&CcR69NB5HN0#Mi6f zNs&dnj<&-H=mz;Z=v(MyX-Azb945Fz_$^$$6Iv{V`j%rCUJJ{B>D z$hILDupmOmYmm$2dJS09;UlOMxLvXWn4mOR*U}G+H zi#kw642c3q(9)LG4$gCs-Bhm~!vS4M0QYtwvDdKKUCf$y(o z%oOh8-P_19eX`#jZOjbM5BQ;N`uP30B(=8bvSD&Kkg(|;C{v_*XCR~9t&+%?ni6D% zzO+|%GnTto_9ORCbbi!$f(3UmTmZn1m&Y7mt&o;xE*YQEUQ-)_$Qp7Hp%%4jAk*47 z%oD4oLZg!VThJ*_Z=*Id9TAf!?7fZHIa+pxP9sT~A)<85w3D_JU^VQHnUX*G0rvj8 zM@#8#=Vpp)+Soi0Q4yYB6$s}|r>qwO2Z?k@(kq#4JIF6xDU@;OYdQ*OQx6z2o;Phm zUW`_~49fG}*(YguaaZiReZH&A1otpzGmQ?~2r_a!A}yS8_!%oBijP%HH*&O+B%qi3 zFsj@bH(W(}ZNzc^J(DKGPi4+vWTb~SAc6_W&KV;(vqf(C#MczgJPVBeF`zTSE#0R{ z9WJB+iR>8h1)jfj^qa@hTC`N+EZe)_?8yWD`x>?NNVD5d?1#2iB6S%6a-~OL^WKo5z>UC7 zRT5QDFs7)tPmqQ_-bLEJB!qzwTyB%i-!n2u};* z>`(<)+ZWyT6R&X(*te<*(vNN6K%}KR5vSFY)->KVGUvB#pmoJ03+HU$S4sS=? z1w4CLAWe5Y9YY6j=i4vZNCdiP1+QL$Qdl1MUmQ(lmKUR)dR@DvY*xTV8;U&22fE_V zXa+t7$g2gJ0ZS>2hbS}sVuWcb_$h;yGYS!pa9TDsHdb09K6}MO#Zv<5-$=RA1)9t4 zCuS45z4X%8M6-!s5f#DCf34#_PrYTjwk2XLu4wsc&?pJkU2tyyHo|IW>K#6_9q3`` zuGGoZSWB9Vz-S>E+)MZipmOuWEk6BRx5>BD>oO6tcTXq3$!~z=*YQPY!Q{mONgz4}wnzC}fASoyIwRzE-g9m2 zIi0@SOj02#PUbleyeKKE1eroLh8}Z(FDpn3BKx@@UG9H07?ZL!REQ_-M9EoE{WbEh z)BY~x74VO)l%}ZrE6#xxUP|Mf#iOVA{W&fkg;gqO$`t-l1vY$t-3WLh|HofEN@MxV z!J81C1VP^{4mTQDvfgwv^LJ(IVf&W$>-iWqO75c4gB?c6b@lndEb=GL!R2OCEdSCO zp1i}1lA9PD)Cwy%6AqC3W+q@$!!UPGoiZqFoesnNjZ)Vz_)#5lp6#D}a9?cn>pv=T gbOG#MrkXJD|Hb{kGP(3CUhzzQhOopN;eQwZ5ByAd_5c6? literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch.jpg b/install-new/fixtures/apple/img/p/iPod_touch.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8a3f0cc3c8ec89a93327aaf50e5b937c5d9ccfe7 GIT binary patch literal 34942 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 H^UMDO3SJ;> literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_1-home.jpg b/install-new/fixtures/apple/img/p/iPod_touch_1-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e1801968340ceabb41d003c1a6119046e70fb17f GIT binary patch literal 3079 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 G$bSI)s~8Lb literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_1-large.jpg b/install-new/fixtures/apple/img/p/iPod_touch_1-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0e2357185e545876121a1e71ac5fb8567c1727f5 GIT binary patch literal 9486 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 AW&i*H literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_1-medium.jpg b/install-new/fixtures/apple/img/p/iPod_touch_1-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1d3b8d85073e831c692e8d2e1ea7dafb85c179d3 GIT binary patch literal 1775 zcmb7EYc!Nw82&Ev%?xw#%@{*M!$f5yqNb}UMAV6?CXz}~IuQ{@IhJ&hP?@5R%KZqd zB)OF6f+iuCF(ublbSR|ga?<6Pvu9Rn_4B-Yul4=d`}y|sKF|BUigv|w2zPdHa)4kM zf?%*9MHgfTp$MYfAP8V%WDFw^Fm)1%NT#Y&sT6ezg+^!MG&+M$q2O$sp~=$H(xPf; z>#$imOqLc)`4bog7y_n-VQMTIg~s~dp{Rx!WXKhAMPVZdVZbN@R@{g50ZBkj$#*hf zGLZyWB5L4R8&<~TiRufZh@umsq5y}ZI7qXU1IZRh&xX23+DeUf9EqKt*{*-CHdwy$ z0DBYZa-d1dL1Jv*NC35>Dpdb;i{9W4hjC}bThBSa`>{^)M*lf3uk)jpYY%mF}N3#GARlaf1TZ=`|z?t$geuKHsOO=NeP)KI)&;u--dtw%D!Z>5WWB z&*|xoDQTP0!8Zk`hR=A?PO6LQqIT^Z`LwF3kQO{l8q)B%(R9F4q%R}#&fOp7=@M1xYfiSs{mtWZ&f@3Xo3^ zq?aSF%Ljzdc@oFAa`r??mzW(*%X{Fog#Xo*8%KBSUp~cfYl8!Z*3!+M+0x-J)K<_77dDgGCZ9N%*-?O0T0pLZw!v;6#g z>GhY!(;I2QPD7^hPfimj70>}k&#rI7FIJR}x}h7?meBe*UtWp7dRYu$PnRz16^yJ} zBZ*D!-`m6MVm8}P~%8eN?WzI7G8Zw80)_7*we5}ukn=LOQ)ZJgd&|Jf==9$tdV_ex0 z5Qa`_2RejdXvtYF+!hoq8?}&RR*g;8o51i(=lL70A?dP+=Aoti;>cTH$K?(^qO0AP zGEVfYes*RmN2{<~TJ*#?`H#0_)(fu0Z;npgdU(XjhI&urzOQcf@|aZ$C_m!C%{8@u zSqGs9C2oroK89g0U+x;1ZFJ>B0`EfHuD+`Ig^$?513JMI@ZlyrR4x0s@3ip3&|2&4 zIZ4`y#WVbOPVqHAI8xSeXty!@VqKH&f<3+J1zV==7cmX!RRbHn*adOqT>Bkiw z7O$a2yr8qhE=%4#q2A3U&uwnr2jtQPh5gI;fM5oMa}0l$HJ)ogM_%;3Yq}PBcZRpS z&`pI>jukLNeuN5TX{b_GS=adUHCGcz4m0epRqlW2*?gm0YcMn%AWc;EfN6-TSOL7s z9^lR>&WX;n2r81ue)@xd+sdqP9^sWpjXGl*85M$r@Z7YS-gS4(<{c{2x2d~h9F`W? zzM=Y-@UET4`{40b zyns~0h3VzvtO_J!E5XOWw!XEdkUwTFIE1aemlao`IecJ${y^^ewB6+ETIM6QLt8%Q z2sK5)esK7`(wESE5;w*wj#i%DHn`+z={a6+e|nwU2}e%Uh=eHg@@o}0H#zz2QJ>oU z(dI^R&3>rgAc8t+kG!rM)`L{FTkFWZFrT$Ow~`*8dQ4sY#<+3t8~!A;wZyi;)?crM^r3@r5MCBE4n}jwe-T2A AC;$Ke literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_1-small.jpg b/install-new/fixtures/apple/img/p/iPod_touch_1-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..657960993070093543aa4fb4fef066de5a5304d1 GIT binary patch literal 1147 zcmex=``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vTox=uQ@9phFRWk%^synU#$NC@ang0thJ}i;;=> z|1Aa{pcWXbLo#185y1E7PG(o&xTL+#j{Byk2tloXCR3 z)AI#-r2}RyvTF_S@jNntwXj3-ezu;usoCTGlP4dGuJLnv{ZZcEy2Rn3oT9E|q;ADl zR_}Fl_XBN}5@Y~|J;F|~9~1=y6~MMJGcwvUntYbr>b(6pC^!Te7@1j-6$AY#$Sj~> z=m=KM1X3PkT^`JGO6o9By&lj@%*;&8EZi_XK>r9bum}k&uqqll1{PivP*OHBO>CaL zc+*3u_t@;2zNp09*>W)4*R|2~BX|BTZR_&cwYI8T{SGW+nz}G+s>4Tp0p&!8+uW@yml*|e4I9MhFWd3sUGX zG6({ltq_*L#pESUdb-}%uz98 z@`99g$K5$Z58Uiv+?*`ErsLs4lf%hV=JmbuxO?Z~Y@5q*ACG8%;&a;R_H3hm6vMeV zVHKWdr^LE1tH0n{+H@>xE6_pEWW@lAECHd-0_V5$Zw5yoFb+_XC?kWRfP!Km*ma-? z6le;xievpK(YYL~9HbgK(J~4$2pB3NB2b|7%JV5lZ)h+sj|Zxk696h^W&mn|=>e(- z20~(Epa3L|08^yBz|I1Pqz?9gE{W+y^Nugi=SqHgdcOVS#51!#hG@73^p^#F+t$$P zE%5p9b56EqpCf-Q{mv~pKl8iYBT)~fmmCW<0tHRGSw76V$hg^u;YBJ7ixfxlck|gt zbV?@X>?&T&HZ67KJEfH|AI*)+rsT6N*tzHWGbd4%ez}j*`Kk}Oljb!<#LQz&xHs!j b%GQft%DgrjGGAR+FiY+DbLdf(X`R=`M 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_1.jpg b/install-new/fixtures/apple/img/p/iPod_touch_1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..cf547f5144772de0b16275e753df5a9c76e34233 GIT binary patch literal 28689 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_2-medium.jpg b/install-new/fixtures/apple/img/p/iPod_touch_2-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ab04c2c16a07dca0b74faed4069a30c5fcdc3705 GIT binary patch literal 1751 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 hE13RBt$G$&rr@)+H%ln9X-Yb^2>>O!MRouH literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_2-thickbox.jpg b/install-new/fixtures/apple/img/p/iPod_touch_2-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d05a220394087debecc7a2425053c9956023f560 GIT binary patch literal 34555 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_2.jpg b/install-new/fixtures/apple/img/p/iPod_touch_2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a09ffb56587764e6670db5e1f9461672f655934e GIT binary patch literal 59782 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_3-large.jpg b/install-new/fixtures/apple/img/p/iPod_touch_3-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..fe6b353f9b27f60fe54b71ef3389fee36aaccea2 GIT binary patch literal 11884 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 ysZf{8kP!X4E-)jeANA#F3cgZmi`+Fl{CZv literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_3-small.jpg b/install-new/fixtures/apple/img/p/iPod_touch_3-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4105bcdbaf9e49669bce5a8d6d96a01eaca93cc7 GIT binary patch literal 1184 zcmex=``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vToxw2{1A- zv;4osz{AYQz$Cyd0Q6>-k2bF<)7f2@B|^UKxzM?{%VXxMX_K4p&q{pe7CWcPJUQiP zTv>Pt-@Zy_ppl9K3_!0i0ky*bki*Kr$i^-pA||e205qEeXeA>n({JN+FJr?uFU_Xs zuJF(m@|_U$ifQrV znsRkwcAY%XT4_O`Kang2x|<2;7C|8eu!TTh+B44O*|b@@+d0l2s-Bqv zIb0ZlCI|^A7=qO^fzRD7 zEt-4Oj z64ECmKHk5?^+3Cje($HRSAruArZRVbmrYtIx1`Wfg6;ULYv*t2tn^uP$Sg!m%x3wC zpZUvI9-pv0|M}Oes!Bd5b<7yt_+m`w1o#`O{W*63EUSo^~{0vk6TG?@7C z!$(+T*(=Vo%rpGis5N^aba*-&#CP^+%&KO1V-?aZlUy))ueWoF@L6rHc#&0w22y-|71L(YU8f8(j~ zVy4d9L@w^-2igZtc;JW;U{PEzozGJYjxAtnL`lVr41&P83OopQAt-hQ0(6@`JiGje z%PJG7K~fNy#!!<3gP@`zBr$*@S3s;~zPCh2^R#EF*N+1=$OA)znE_}8JV^j;P&5p5 zOl(w`2(bkiT=oLp)AeF@Y%$Tka&y*V7R_g@AGfo}yFHq#V6WbG{L8_AfmS=^8Xky; zX68ONio6o&wwd+77nkI&c%|7dd;*Ft__4)J^qYQM>HXTiZ|Z5&=Vzt|s~OMSpjmr4 zJ}~+*^QI@8jV7`39&%U}+9Vpuzu0Q-!mU&0<#T3!w^|VM;f9x0)6C_J9g(M|Y?>9^ YIyFY<_oK)uSNJE~;$dJg{`~(Y0JF$qJpcdz literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_3-thickbox.jpg b/install-new/fixtures/apple/img/p/iPod_touch_3-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8c9c7acc94f9dea3f978ce16e2982b47999a698a GIT binary patch literal 31419 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 W@l^U$Mm0vw0?pcg01B~xYyS(I7#P?9 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_3.jpg b/install-new/fixtures/apple/img/p/iPod_touch_3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f77be18d1ea2c875c7018e7c8427eb42119b1132 GIT binary patch literal 44471 zcmeFYWn3Iv(=R%>LvVNZ;O?%0f#4Dt+$Cs$1cJM}1c%`65L^a#cL@?axZKHp-goc) zo^$T`bU)sjp6>PQ>Q(=$>eW@<)vI3@UpE176lE1;0Z`BYfEnZmcwGTV0brn^p<$q5 zAO!d44-X3i0}GD;2L}%ahk%Ii7a<}dBcmWABclFA=zj?FZ~7wy3KkX?0UiMj5fKdw z9Tgo5=MVR<)!&Ex-y5$z08B(^D(DdyC`M{^B?+~4F&xd`*j(B3IhdzegpFc0DyWZ_?!R#H~v5M0E2Y`Q623f{*V8= zRD`Uh-G|iQu?-^uqr)z!`JBpyV_c&%f?Sbvi}+vuU;C0VmL9aG6;oym>6#65Dksp4 zB;Wf$8hIB$8l*H?>%_FUWQ$7cOv?f18eWw6|C1aTFv~^MSZ?qBeL4V6LJ^>b&52sa z0#0EVX4m!UV%^?LQ7VWq4=A!T)9T?Iy|SS)Rbgh>Vg0MOsQQAvl-#vACDI;DMV zwktc#+^~jp`I}%SPA%jb9a4usxrLX2xonK!SOpGvc208pE&Y1ss_v2r*Z;q$Q$ zB=eYsK{G>h;6_U4%7j6~)xsjiQAjTj-^4#$fBRb?0I+p(?vUD-{OxiBrb))=Hs2L^+ONBK}Wo(eRh zA?KTJ+n0Zd?GrUTp2$i+arGGy_F2*rhZASdj#&vQeH3-eJnEavJf84bU(@oI$NHY6 zSf`dqB?HowPb^6+DNuZm7)K@U4;?%$l0$sXu;T@_TM08g7 zk$$WtpKUBCW&R63dP-Bya+mcTI(YZFovqWyuid9@-`B@DOvW}nGz+LI5H68{h2UYY}oeknl$h1r{Z|WJvlj^>ws96wN=q6d{ z?a5*5PGzV?%O7x6Ht&vg)>Y}mVNKH-JJL6f`~v}SQMlSL@($}P<{O|MH3vXx(2aH9 zp44$ff(WWX1p6G(rm4db&L-tdZ{005f*?eNb{NN{GgP3mxs3Ygm? zF4LRqFooqQ^X~6Za+j=b5RNDo!Smj{=n!4~=y0=gmLfAztg@0-I0();nAychxn{x9 z1eTI!P5g|U*ZCKeXNamFilcKBD2LPH3jliShVhyo!lraa8K1v58uYZyrn}Q$UX#o( za{znrUI%&2-#gG7=cv$UwC^|SPiQQ}~VbvIdodN?nA_(wj9q9TH9KGr~Cm*>bNYYu;>d!%6}0W&}VIizXd)b6*k$+>##~OAmykOke&%BC~Aw>31}1C25D@1^@^VmIqrP%&0z=79Po5 z=iB`TulFXdw!rxYMOCebgOQ8?;jk1fIVn8N)Q)3cK?<43uHVWCLAk;seFNBv*l4@wGFIm;j=Yx zv}`c1=@MZ=vh}PfMaj^ME3uIs!n-asRqf*U>MTxhJx=i<j z+rs|&%ko6{=fAL~bT9WWq8FqxuCyF70RV&|`ivYBcfkIQ?6cM;zF=TU$mV<&sKt6<@15b|;v{~yDz@F{(7PZ1LmT=?(N#uG;ty7ay zhauay-!<`)UCAQvFhs0{vpDYETd!R`qK}kC7P7w;GCZF%6d`fnh}cFQ9s zj{6vLQ6H2;+=?Yy*8Y-uc#zn{wS4M5J?eX3Y7WBz3vA++kmMyQY@pI_scG3KE5Cmy zWGOfW@)G6);VYG8u+a9E>r+@XcvXI46C$PY81NKszp=MGZHI{boA%vu;@vU_n$o&B z_m?1%=OjhU@%mz}EJ6F?XZgG+h6HT`h{ZEm0Ua#c|8z%Aa+ zqWW^fQt!&xfmW})^zF)0QCcN2DMwhAKq1fET=7rtk4%3f0brDK-u@os;+e6yQ*Q5r zTw}RnvaOz%cA0Ze-n5XxXXh9sU!c~YXfUb!2JyXi&Kb8{@Ies*dNW6KvU#8yxW7K# z2D~1Tl=OQ+CLzL6g&S5P)_2GCSVR0D3?9qSj|bahZtD9>o%WEE#}(6YyMK-5T0VE; zk)f&Vd%t52M3g}8Yw4MH(@VEM&`+zFFSp)Lx8=W1VO#JzM*O}nGi+m#-q-W}_@jZ3 zW_m#vy_m;fBNae2clH4cxkCS&U@;gDC-(ME@TD@g)4l-!&Az^sDk^3LIX__ z3(+CPInWgcMKGE2dYpxAJYOxk@KgJ{+{RaIi5l!r8i60!I0Aqi5lHSe_^w>0*FRc+ zqzz0ktQ?%)d;wgyeH0D#WtdAFk)ZZNu$RVNMrh{P0=d;Gq;#V%F?R~{2b z&Ufj=s1gXbdM;SzUd+wgFU2T=_YVZ?-F{rPo*eO>U6m?K5VNe%Z12_cBJk19NNCJ1 z6t39{p`Gf9I^Y)@Isu4}#l+F))&4;w*_#;l<%;5&mK$H3hwMi0IXHVK7h{`coP6qL z1NQC*C5%6neYfz_jUVJgP_h2v)M$HQH`e>kcHpEqa&>pls@|86&*zd@crK%*wL>Yr zu_*#2E~r17$mcA6{tI;R3f`yLZ~x$N4_|p0`ML4U4#rtr{0X_HzP4xg>utTh@H~tT zmhL=J?~DvsvlX&e#|uwZrg(k{T>nPBF1^&MAsB4rIb7=e%07Y5oj_>QL1L<ohF;OW0IBSQLF&Y*WkV)K$`@J9duIY;{A&h>#Gna4~{?)jmT zH@db&r-7rYAA9tR`9vdkqY~CKD+`J=A}$+Ccwtgvqb;4v@-bduVV91=@=|R}vN>mW zWF%<(!DDtAK$vvfE1L7K!3nb)-F!97TVcO*FlqxaSA^=|B*!vfw|zHV)K{>yig_a= z`EASXWu@=Mh`vl?tbPF!R&2{$tLj&s6-Po5fz>lG{S#m5OuXXnZczP`GT@sKlU<2!eJE)fOq$T3*4 zdenb#;K7gWv+qmt?A|)C;koqjAZaD*<>^xBV)U$+s|t6#jZcBEaQrvHVa47&313KW zBN%-A^WNj~p;4F0Ezp5&bVGSnr5GuKZ!bH03IH=->35r+`p?-UgKPIBE8_g^a(~K> z1iAP*C-iQ8PLBykcjga78|x~@YxYyJlRDhJFC!qQx%la(!b#xc;MNREjPg4%J5{ns zbi*nYwHBQ+E*^JlNoL$UHQcueOjjfENeL+uy`&z=PtVuB{2u@w4-*@NZFBzsV{py; zeK^cEG8#7|GkTW=c~Ftd^SHY8NWP6x$>uY!n9CfuK+gmj`6UOqFL6RtqE1+*toEvUXK+MKwKtrp!={vJo1k{&>_8s&Xr~hD(nGQ^KT*drBlCz z_LfzQ9MuWK8ali>R0+YEDcV^e8V63`l6{=yeXu-hm;);`D?d7|kcMp0y zVPIB!Krf(T0{+nW9>k_19UwbWev+iCEa2w3ZfKw2kfFCitl?-eiU|Nm`+M*GHdy)c zj|osa4--L-!pOgCf4W>gLD2Crbn0^37FC-a_!;Xvn%$=O_0swsaasEFrp&_HTgGM! zLA0m|c5PDD#2PmCDwv6Cn79eV`5tVid`c~R9GRMg|KnjAX8ghRE_*$7WB*QzCmNE> z@;GhL4Ww)JSmGcfZCtT+xyDdWGQb!usarLS6G_Bikw6vUrHrCENxQ|p2TF1|1TW@u1#We zZiDHTz5>mhpv(x&6n&;q_T*!dMm^R5+B!Gl#h)tI_9>c%r_DU$P>f7MY$Y=q0N`F4X|OK^an<4#H_! z1u7ZD3dH0Qnqe#&&C>UAYVz?0uwgPbK?>OZC^njLz`~x*e;E$oQP|d>2xH6U#ck!g z=nzEwxlkOH3oMk!)QP2##--7Wk~6(qw# z2O$BVfV5cQN{Rk5(BJ-d1OC%dJd6SWz=1;!{2q==_2nDH)lh1h|C`J|JMc!5m>^M* z0ZJ_h`U^l4_x}L>SHCxZS^ez~8|q&<>o4BlE9t+y`M~0Vj*Q&L`X3g z3J&@e@c8!koRX|AE@R-zTnXik_AB6hD_A$OR115rlmT`LeexG<{4}zCyre@V5QVOj zLN{s(_5cqSJFA3RFc>>SlR(u_+N3=^&V+YP5y>m*^VB6t^ST=&qImTPRdumTMiQY} zQy_M-VXUf&4R)Fm(r73>dmwh=Y${85>S(3)D9%GKk_%%TMWj2bJ1VgRvM&@K-Y`;E zr@X3mYymw_8%5-e7xWRLoEk--WnwU9I%ohh5p;~yTB7ElZ2k&x&E7@%YKWUyKZ0nE z7cMt^!Y!Vdhm^!f$=hg+)YVLpnY|j|(uM_>+=-pci^3R)LRH4`d*mxpec4;!CIR(_ zL2Ej+ukZuG8wz>zd$5rS)Z#1)3=|t`E;RApNzV0dB0r*w2M~|m69%`2M3vy#N2J=) zd~@Qn)!K@Sdj)964PUvJyy#P5XY*M+k>K!`IIB&?e9lbFgQJpwuFe*(D3`~b`|_|_ ztsNcEMxo6TQzlKW5eS-)AhW=Xc8kb(0GkV#bGPkoV%Hywi_?|ub<=Mx_Da*>e+%vhPimk1YLM)d^Z!yXohoVGCN zK*J1Pv@vwm&RW8)A=Xljphi$Y2pl>S5y#n;UAO23bQ+7l?l^@ub|~)Z5A6xqjnD=4 zw&rB#4ee`zvsXZv#Vg<$ExT9Jm2Pw+fU5I=lTL_5U&fs@^RCvGLN^`Ti!1&GEM z5O6)`M=$HL#~8CMX6l=sX)NTX+bYeUVVphJHOhzW2*9A*npXh)hMpvuWINyX*T>_c zdoTN?vgRwArmzec=_dMqRSo)P@;q+oG$oF-gNTtUQ7!G%X934?7O!~2_p}#q+WIt% zVZ#V(6pnAM5J|7mFVKIUqF>56c_93?AbKEt^icMQ^oYb-ReSVLLl~~JHZSyc(l=%l zdqDltUTM#o!x;Cr%43OstCUV|I}C*)eS?QV_x+E4>I!zMV%wTkp~^Q&#fA2PSaRXu3vMdGouhsZ0nK)=5#l9$>hidMn>em$IudSRKAayv)f6+L zuPS;icZgF)%!r+7sx&j)%_wMGlyr(+6SnRUa`h0tfhf>R6VZqxtIWJX5wUmb%it@G z)T6dYy~4p}DJx-)_o23o@}bf*Edx*ja#bq_vmbBMZ7)#@&`HK- zb}>?99<$58Q@f%eJuinHxpm8vSTobPI4bRgpQeGK+9Sme60Fh= z53MTFCJPWU{?z03XK37hU&^dTKWd_L zg-@)a^jqIPJaKcSXuZdZZ%%rr;NWY^GeKFj8oEm2;;f~+ix90~NQ-8sB|_Fq_jS+y zndi*CXp>85@fC2exZp@Rv~;;7WHbf<7*H`MJ6wIcCxi9;25txVU6< z#Ns0Yhj)_Tv&-(DyBe)b0{-Zby<9Ofjhr9-DOAxbKf``?iV#LK?ZTALY)^GHxus$aN1pdynKBuBv&3}rap%(zLmPGZf9Wqj* z<-4_pNAzdQL+448R^h8!dZ&M-&t${Og2L{&w{pkR-qH3v-OdzmfWU@tb9v(Z+O`g9 zLr^-N5H{tuUT!xF?g+%tJjugSB1?XW_K%Z9HTRY?;WXsF+%C>0ao71G>sGDJELO`- zZRVe^KM5LJFIPX^m%IX)c|di3(_fJ(?TKs5&rNvAw0^z<;yJox2L_%zwyKqg&)J%0eEX#A!gL@N=nN6j zZ^1uvVMckkkp;@LExF(hjaacOv2ecAf5JT_dawSra1Q!HEV28J-2Z`QY}M8>F^!Gi zBC*)Y-6zEw2o59OopPoquYw~PR&~np?lCZDzv6WE3Cq&^>s3L+T1+}O z@M8H^bO49T^D*RHMl0tq^Yn#%(+J_x@y9b~juJ~ptUGIhIi`Anq2Oo>Tj_Pl%N##7 zA;H^?mwYid_LF6;X|Uw55Jm9pX5fj8Y-pwnP4G_ZQPN3eif(-N)4j551Zq^%qS_F_ znfeo~w`knER{;Hwm>=CQP(N8-z>gnGOXC%KY^L_}Num<0Zeo{Uzl~W;HQKVbrQq`W z{S*ler*fXPQ;?m0(?F}1INCVUAe1_-6Ds)GdT-Cqr~c^uBbh#piFgLRo-=%iD0=3^ z2GCB2cX;nPLUyLFUYR1eemki) z@#}2j;bc$+vMp_$q{X6AVog*>&mei)ercDWi&6(9u(2#^4F^R=i`g7(mc$nsne4U? z`g=0(zO~%kEBL59R4i?PfRl%8)HCF|5JKy$WV4+@VyBWkQwaVQUa7$S3IC<5xP4ca zr{B2$tGAdEdTDX%CmuG*r(>}fwt~JjJKSGI_`fnZN{wNqo>$R5()%T#&)=FK@q7y? z?3Xv}w~<;>kun)wZjL(H6E-u)JL`)QV@>Y6Pi9lpn1J7-U`0*c^=WSl=PfIaDb!D8 zVosngtmbAW_w>aMqbtv#rxq$wj-ojZvrD@5En-<>6Rk{H#uU3BQPj*>ET$)|G_E&~ zY{~xk3Mm;)KPU(}3-d}f2cRoQ26n~GHIj}VW08yjCA>&4zSfOok+_)06fUv&AYOc3oj5$J%MV1~XgLF|!i5WPR9;4%WvsNE+xE$^;c z`86E|k7bRfNJracmaOSwLd=$bo9(Em5XQJWJ=1TL$z-z}-#g?LGwxd-SCJ59Pil0d zeEYqV1aDiDnP$U`tu&d_GSH^&P5RDs=}u|a%x?t*IfGnV(%|Lrr{+3BZ?2!4;`2um zqaVGJfkKCzm7YnAE6`Dl2Pkpn9;mn?#nbdtI?`3N>F>vsV9(Wah#6c>1Z?$1VIv;; zw8umU`1s=|ECuvg39%i^Lq5l8(NQg{Cc0*DcO4caEY|nYdRTV}+I$`z)49B-Mq#a` zt654p2hA*CxqUpkKk?F%;K{v>-f7zxU$fJ%5J}2^+GRDfYBT}0>Ki0pw4X>YqIKZ~ zeQ&V?#qYO1ws$w9O$Am>?5NL{p=V$X^%!u{w8uK;uz2A%5xn=B(J{eiqtklpa45S) zL~=uZRb{)z>?jel_epU@tA88I!MoMoa*chw=7v-yq;FfG{%vkj-AdCPW!YJkgT9;Q zEvhOgcIu9Q$C|#Jd0K0J&SEXfpZ0*I;FhM1VOpc0IZVNea)D~N-vxoW!kMbJe262! z!^{DFlLtLh=Z4eHykKyI+}?SE-aRXpmL^a*K-$}aohC0WqjHUGOg!n);=#@6*e1Cr zCPLoR>A7D{BR)^=q{9)lGw0~Aq1bw2yxM9tC})t78~1p{dG1#l*W+gxrtMQ~@8pt# z@i@{4luwrN3e7r#_utW{8;`J~=3|qzjljAns0ohgdIrUDi+tSZuEFWx#qz1y4V6ki zxXcpHHJ{|eW}I5mUBpH?BB>>}yp!E!*4y??0XlRIe=Nfd-^nI}=@!`fJVyn}R{(Z$ zqF17V-F6<)pqoJ!l~SXXy_3;9d|&>^?6pGfDlYB&>22EORDG$MlwWaNYeje7hD>~O zMg8GBZ>bc&5Vn|4&ZYb8L`ce?=F+K3d95hlk1K?i!KQijAh0k2{YRXkUgI=ICx`FQt08L}-Tc$VyuiFZ zZK6F0yDtO&uI(`NzK$6#J%!58En343Ykx03DsE8BtxQltZS|_e>Gce{kNrg#g z`bNx?Q!Ubui-EzzOicPPw&2bvO=FFW2lt==jb;tX)%;?+$lB@e_IsLz32X|^d*$6F zfwXvw2JdlCKBiO^@n*jQvSty5&CQrjsRVoB*>p~pp57P&-~VoYaOn9?ns8&!Bo*;I zV610m#Ob@BH@#{vI7CcU&x!V-1(e&FZuTANFcR{p7E>Cl(088PVuOvaFF$t_uEuic z5(d+UCXY!w?oHLQ-i+6SB@FYpYFdF4(vqP9)GeYSQ+>`6*Nt_DH;-1Q*?3rF61yDu^*SmEKo4 z+U(T2i13@at}_JDlRvEn@TC@p*ViN_D8_u~2}%$-stQh;z14Sy=4|A@w85`g5S(h` zp6?x`46Fq0&wh0!L9mqlqFo@NE7A?qI%FsnGv?$ziB=yyoO;3#O+~O-KpppO5F2)U z(2lnoo6*vIX;OjO?Zsf#%~{?fR<{2;kz|FukmaaXeXKw@0^_8kAnNEd&zy!u8*&F` zzKmrZ@s)BYm@&Gf*2OHI6Y&VuT81{?L9W|qKbnIg$i1IFDLQ=haT0vBWv`AjG}`to1L~Y+qeVfyGqQOX`_)4NOjOX|ncASy451Va zsLB3ZTKjaKaZc7mNum9~X`NH5O8&7t^He-}>#RBV>8pa(FvZ%W4KThqiMY8CM!PlJ zj?Rk~>9oYl_Klqa<+7PmfY<=VJBAQHHFf@PMWa?Xp)T{pgTLm9`&c5Edtr2_iCVCTRk-^$)sh~aGYJhGoL^v> zm5LkPLMs+q^Q2B06oB%(qrrq-r7AudbU64dzT%-N9}*A*DE0{i9ASKS;0rzF0xElG z<;69_Y~km-Y4Z@R711x_l5k63iykx z95T^N@s7~8kl&6I>%`9UDSw$Iut!5fgP(gwo7EJ+t*;br#KW0!F%_O(_SlT!j{n-I z3%AT~qLKVzuN7Tt08LTMAG3f3S0o3AQdK=4-H95fTwVqj3&y!@1@<13^OU1XNn9x@zEcyA? zku8n6-6G)pqved?1nX~xzf9<-k&?x#<6#1wbLFQ-_em4s2x;}uHBUVCnK zTmMkND(^8G2d5&NVm1X`r}$N6RhVetGDON#q$Z$`i5P8qn*ogvDX-+iupn7)I)YP( z(;!b&PVj%oANI5OmGq96AzykJp{=QuD&jP^`{K4CI`1~_p%Od8a$$oLUxYpb^&1~* z>|ohQ?<`8(xlqJk6p$*)w>8qKRg&)Z0Q7f}@hJN@b*UO>~!b2FZx6D?ak z4rh@MD!xD@LlQ4iDs~Ii*D0s#b*8R090*>^IEg<+urgJEcB1lu5~ zmEMhBDJdzLO(Vez3Xl=eHT{DSax=Dm$DyfN*c$K1Rw?(A3(UuRrmy@(TAQHad%<2( zj%2e5w5i%yMEHw%Ts+YtSS{#fk%$Kv1)!HdalQ0NqfBid&J%RDa&69x$L zL@ISR_mulT#2-!l1tNtSqPUclQ3X03e-zCpwA9XuIW#nM>My^d zVf4+t=!zcK^PKwYf-WnK_b|A5;-ig-p>oEPMByg|E0-)Htl@IA|DnIB0~w%I#3lm@sd!C}1hy za;QnD!->aX)ty5tB?)@1tkXc3aFYp_I#J=>8Kk@0d(7*rG_+JUz||@;=nkP!T`C5c0yg zWLDRzp`*Qw=}kz&*;J!GYkFE~dTLh1M7Q@zWejHM7CsGoD2I>KHGUs{b@T5NlWkdB z;Q9k!XDeQ4$MFxa8*W=fuWNUrb`$%)$<90A+{$eKR)b>odiuw+^eWk|?pr%=d!7f6 zgQsXpX96Sv@5j%eO<{u?9$Ditb6s^QYY)~>$#r>6S`Ui}jEVijcfqW`+ae-*1`_Fx-2@S(-OZctQi!V zR{p5zn<4(CCW=>`;5!GkzMZ25pAB}Qv~3H%EuEm0 z0tQbaY1!%%3O=~r9ZMxEOvRmC);2b)j5}BKV_=_YzuL`GuaF8vNgr_N5^EKGol*=) z!zUig`9x0R)Ei4HjLEHLueUYHGsZaCk>)bdE>R9FH0)42G!$u%44WtXn6HGRXMGoP zIW75S4QX-O?7T0ET9Vmjd=$YdcZ+UR-r6mj2#XU(Z$3sG_*9JOtR0}S;3IWsexv6?!yCG+HgekMGMJrH)@FiZCB0|9XQ zq_-a^OEqhq7hGbB?|b&6d_mD5Tj79mcl{d7Qq#V^f`vt~jK}IhJC@8D6z@lRd$i56 zeVME!S~uJ(+iGemt(I&{n}zAqR0YMdpoHl%{KiYPcj*(07kxwIsa1_+=s=^cSFSnP z7OP?a3nP(pvVvyNmt9K+LwZD~mBX>j? zE!nUp-%QrFntE|_l4Rd*(y$c?dV3-F<1vJhhAE&k1ZdGs9;UnO>za9G1qKF22?v+i zqp8gglB?qx%iO`U6$H^zA~r_JB!_ldR*;vLlo!RD<;$xTCRwzR&d)6xhSc1QT;_$I z89`aJ>cl$R=W*8SBzOrDOU4r)cyX&uwo$hVRn*|w=G|}#J^R3%r5`$zq^=l-HhwNm z*Vz>2W+-5?WnyNy!OnF%=B<;$yWONsKLpWg3F5O^0UH@zX@1U^Cq~j+SEYeQE^9=N z4>ma5=qg!Jp4rpTPfqR;7rgx}Mg zvaW8d<%h=iq?04f9w0UE@*H=^3w@gN+s+tuD`nSsH3lt+Y|6OC2<(g7Q9GERYbdn- z;u|x=Gd&nJ!yP9nrK>KvB7>WRqb|pCVmE8UGOO#=kipm`DOS19p5xnEs}+vLkV{Ef zF%OCHHtftS9m7Prh3P7^xZ4X_LA4B4woJ4`cAY^)y2{hm+TDKqg6yv5 z*9?_WIO;}ZN>#r4gocU?dF{5+uJ3m3YQgM<`YbhGbY-T#D3I=l^D9d-=0+;Hf-8{h zqZ-aoF{_>BTqC&qkf?5aGQz!JSCSXbQ1wV62FZH-e`P&L%7a3Hd~o#NSr3x*VE)Q_ zaMNvQZk{?WRYiOMPzr;;Z0b~Cw=|TS|>5Y#0X)DFa;Hb;s-m|j5`_u54ZKK6e zPaJ{lTIpzu!U^Y0S~bFhIO@;h*HPKmQZ=b1jLa}%&RNIIn5c13B-+!mq+F!In3SfQ zlsIB;rI%W5kS?of{%2AD?pu*Eyd=jZ|3G;vH&u5?$iKIF|2~K+83M(b!>B1po%M=Q`{#Zsu8f;#SCS#w{yQ8e=qiPX0d@rD$og_4Jvs$ML>?twIW z3qt907TX{yMyBye*pG>Py$P z`Y7fO*?>+eA`ZniAIUHZ;%?}B=?V$CM+aQFxY9-;ZS`7 z20tyI%*o`~IFjFfMp$keoHz;EAs!rVxKL@FX5;kp=M@!XC;)OsD&gmE=${~ZcFJ7U z?#SSnS!hu1)qyQ!%`D{3%~HDKjp4P=%|AoG+bq(;(YCqifB25o6I6&+axOf;Shj5u zhF7P~FtbhDGvvHITDCdTi2!$Q&#O?Zq<6w`c!b9qwq4Hxnk^%;jyI6*J87dP#<5kM z7BHJH5beej)A$u=%7TZYI(EU-Oc;WzrO3@I(>@fV%r1LNWPR)#wEfJpS))^d6jtiS zNjn!_pg=om8%BnPX};s>sNTHZ<p1Wu;@pj2i)gr(*xI zLN#pq`_Ua%)K$i+f+q-FP>We+3#XOKT9YrF9k1EeFzzxrX-smmo}plPD8aM1^hoLi zrHDPT#*pH zxlzN9VluT+weQ^(eURj92hMBz?#rrKF(8uIOtHG{PI)C+-RK6Xc~b(_b&4Hgmq7E6 z2#tS$C~daQKf}wiCRoNjL?eBQ9Z5@PUi_qIfY4;;Fi@}SNk?ZvOpqi*KWh-<&`oAD zl@!jR&+El0CKiv=4}qt@suzll`Pn$!A~!4FY6*{8E9;nNQ1pKve|fl~W^(u4P3P^vX8*Dm zU>@(T>(grb)o(D4Zwhm@vFbebyrb@hdb3T-v8|xVivj!?p|8WsD|5c^>v%z8`(90( zh}Pbjn5M7qx`c0vO!@_`)!w*<9DPO1R1~wp%m>}ElpOlr^xQuEarA+7TFhJNdFmO} zccNkyG=-oI+8DXWy*uz4MZ21%IW6VHP$W)#YW4qD?v0?p9j_<}Ta{`S*2BUL@ z?Lwbtr&j-}9G%W$eX$CsD19qUw(+?b@nTgQ#%4;4STEGw>C&~lA6L8B=S@HAcCmrM z_FuGfU8~yX)pxR z-y-#-XD858_)XwFBmi&85JIACFncs4a=Mgv_Tqg4u>pI+`-es?SW`-=Ai^#o`Q+rn z=lDRa8GjU#S{nOf@H*gd)D2$vJ9nEa&|DbuBHO`wj9Wjpf|7N8$G9pX!F{Y2%+jG{ z>;ud#+m6_S1bO4#HZEh0$3G$8_#v=sgjf8~%-Q>FONG&mvLo=1;rErSi&pjaz!()Uia}PeJc{8o4cKvXw#)C$?Gu^U~UI;90!u`Un#;Ni`C zzjyT1(KivBb?moNT=*?7X7`jnexz5SV?@{}s zvd1z;zMK{4y)dq@BH6I~t3qdx_>bo0LP#iz!$&Ry2+@;TK)xC;Aa8@uR=&Mt&lGuu z2{lFm-iL)W^Nze*J`+kS{US&4I53J&c3j8C`>Sv6H92sF-AdE@Pl$S2Iv67C7{6IX z#u3VB#ir{|Fi5q(o}wrcuKcWrJgZwP(D+)AyJ=5^*c!hA!l%{{g^Y;TOG#_-vn_^Z z&UA>LQ*fS=Q_drwsvYVU`3_>AJ#w@ohRv^0kx-BfgtYKN9u`vQ9hePBb4};T`XgCS zN_4t^8OcA)vpVUXha1$KU8i??UXvE@ zmQQxX^1**C`V}w?Wm}zmKM}Oh)nmQh6;zMVY%BfINCf+awADES)VfwRMSASIGz1o= zUg}uPs=xbEBFAP~h|d+^o)(sO2RH7RVKC2H_*O{6qE-4GAJL0q;ErXm!dJHl8A*;2 zQsMzS&s;t5+ZH^f_clp!#^labl)#-l8Pm^%_ z#ZM=}zg7P0l0)FsOxd-wu5w$gwxRnZJ+o1EY&x}dr*wyqr(|Wewr(pBWlTqw7p1Anz(Efq&*ZA(7LeH2jZh74w&n15|Qf7T;GiR)8iwm(>-8QHkpT5Gyd;a?@vs!ud6W8V2 zL%Vk-Q5Bs$t-gwu(u~BJo*YwKnid?$O4QNVO(CIvyqm9p>d(LN_S={>l*>sSAv5x_ zdq+5y*A82@s3fW_yT%1l_~Zg`Fe=!D7Bw7&WLq`I!*xz-@rZ>pNqRI4u|s{|-wYF{ z`y`8MApa~9RAcL+61d6>0A)y+oJm|P2R8bnYL(_XwRYpIR(Nbx#^dQ^v$}z3@lv0% zhOG;$v2t+S8|8;aE8}aE!Cy&3B?k!E6@GB)7nXC9DZ6OY)))t<0_6OHbzvNx zeIo+uBoB9?3nRzBW`SB}Uc$@mxMB`ltaS^?XFR$=!~^rqpHetSSwGZmO!V#7>6Q~2 zD*t4viFjfrcm?!C5kV1LQ3*4cSB>qVd+c?|yaGO)y5%L>SBk65c;iZVN3e~DQ1=5)hCX{T6?H#uvME8E2JM_JR%db&(59#6UR0|{Tx^ss zXALB8%byC+=R@JI>+FXs`pt+MT<^43OtpHWJd7}u_YvJkwbg*hU}8qoQG(gLL2;>K zpKrCloP|!%+`EA>p|@wmZnBm?O$5clsm$Qe8vJom-KXZnEqZ!|3lwyLj#-{*m9pl1 z<%Fy)Vda{ifS{zvAMMSaBX-T6^^7whj z$~suvX5JsY)&Fy5yJi(ASSf}J7d`eN>Vl_&Zvg(SSLnd^Jd#VwQzMzR7%{lrz30!h zBaZs-T0Zm5PB-j6!)#~jD6Mj!vK0D$mur=>bi0wVM7N08jju1=FS8C|YD0O^aC?I7 z`-!KNAH*CwjiXgmI}KKD)X>2Ba3~W*(~-8iQ~}t}$la;u_y~z*$otnJB9S zXt_x)CMBNac~G#yvbZzseZg+M{Y;Zt)m=HC>a^JRv+!QG3bD#Ew7HDNkkzjGRriLF zXXb++zru3h_O?ZYv9%H3jp(M;jcJfdRYe;xoH(g$eTbS4;|GaS?rk;c{Hl;tQb`w* z-eyAxo)y!vHXH@T*U6!Uoj)ZF$hHb(uJqrp_hQRfHLSJt3jUt9aq8vq&uf&hj=4KT zbW2{eIsRs`daq^EzK(4mT3T|VRVL!Xn$0mqG1zv3;^XD)@d~)P?f|>6dbN_#N!1&k z*;vYkoveo&cgB!bTo7zmp)m)FhU7}|ul_`_0GT;_8SW_~9SylI_uyo|UGAy_-8^aE zc#n`(5`WYit>Syszhnd3$ zpYb-bjqv-gZHUH8(@b5idsYW|rL|qRI*WAAaB7QtWd5qq2=TpgfSG{YupgJmxVvjd z3_p`14UaXJAwgUq^Bx0z1S#LFBJCxa^=9S-dI7niC-5U~n^5+Nd9~sJ)btwLxyFx! zl0}bi8K*f?HS07OLU5pg%7AL2N&Ziw@%IJXW~POLQ{3Zqi)H--Z%ZVVgvZ+r<+$6H zQwd-?l@U;1oX4}NLy>l@_f3=QtQIG5ASXsAq3q@Ox(5cz<1$6^=f7hG zI9erK2qL8L1_${c_S!>P(A$U;Cm3Yq5=|QCxR1}r2Ej4xOoYa?5Z~^utC<%36Y#s$ zEs^0VZy{m^(s5TBy64@jkwBw9NsHdZB-uAN{@!O=NnreRnvL(Tu4956hMZ+G^JhEy z2lq@~>G@`f6Wt~w-kwC#G@4g#bk_N=3R@Io^NNcTZEBc=@Pofrfl8-?RjO47!lLodNe& zBOe6~gx;vX9|k=)Ahda^s7b#)c91rA2s3XUc+Lw8Q{wP5qMJ1#KU=0#ntmlEO79wVRF~ z&6olHHAsrI`O3JK$%J6$YhiLn1AO#Pm4)MmNaPt9Mbn| zm)EVRg%*UvNWq>rUCw;vEtb*5aC!W2Z$zA5>X~=+f)kM3l5;fN=qtK|)k}JM;cAIh zmbI#ummG5V6F&JAULeRy*Cdi79$WwT)*Y;6FmYIGvF3=slGby}scbPiEDOe^wO2+Q zAz0Fb3w10-b;LOq!<5aX;1dypQLxddL%tOluZN=^|Ba4Y-Rzwk`ca_!oL(NXwW{`V zxM!yh=YpEfK6*5%O>vrNlmWw+KRU6wgWOi6Vi7y-?hAVR-AVv=Ao22dnA3V$gupd< zGPsp67qNW)hKST??E8`*ReOr zL}A+SLhwrp&tj0Jty?f%^=PDNes&T~*67-|s>bIS=A2D$Sx<+DvIB~m2L5@%^w=U? zB>8Dw-#A}JVTJ5isOY|&WUKZ_@_}GIo-x9o_Ndcc$Sg3a?m1hR1UlU4Rc@<1SbBRT z>D65t7txZ;a!m-{jU9v(BWpF=qzSFbS{q2;#XRA?%|Gn0dKV+X`Fm#T=&`;j!^onR zX1sH}66K=ywN&$JeXAx-;gQ*%MT2i$rwxj-xx{A@lq93A?+B%AO$hJ0#Gug--ao<< zE&h725UTJvMEpRwtN8Vi5>j}*i+~jYULS8h`EaycKypuBaj_d>vi#Q4|J#vtU^i%D zr9d4NWl~r?U8#G~QB7YAk?U=f=y8)(Y-xC@U^!h9Ims~F++ zZig%isP2k!=HX%g+H+2^SINbTnY+k*UZRbsCR(;X0ME%%YxFNXYt^LjBfszKZ|LL9 z5qD5!s2&ZKA@qCQ(AJx?$26CovCM z+%)qN`lI+?T&Dx4gSgzN_i)+53k5@jUw!z0y=KV9zO#C51{FS|tiWpt4A^;+|pF@PCUA>a<&wzkl)7gfU|i!0}1W=Y3>#ZbsHTv=9Z8xv?c-E5IW~CRPr%%Y-9@|ZfE?V$-R(k zg&rxmq$YD?Z)2V?>FBfF=83;>9k(p%t_muqy_NzlD+G~+eR6d6Py>&I z!OSS$UM|9Nkt9_10_{HziLw1gMKy_?91B-)=pe*4KMIb_GgOMOD$lCOHgQ_eBtFn0 zjVKf8LRl$ZwH2JMYsw~lN_90^%f8Uvg)exLTO}#|NIUcJ8^5tVR4aA=ess9P&79*{ zpwL+U>Yz)pqMrlb%bsQ0lbbl+b}9>*0zPGMP_xSa=DKEezs|Y?5$o`Ww({*afnm}Z z7o3Lf%%$xlr@qGt4qma>)(U1QXVMs%CN48|*m?EN=zF{D8=-2pW)MvFiB%p{b)t9$d2wXM1X3GL!h%fKM zUp`ipnYgKf*{p@pJ(X`#$_=B)!MEorPwOaTZ|A6#m7BM7E%a+}ksDD^;=D}2>By)rn zclSjjM7D1BY0^C%*`vcPNijnH+#zAimlWSg4FxOjen=kL%7{dhn>iVKH17Z6Jq=#d zAq%sQ6Kj>D7OkC<^7^{W9jB(*?ijuGL0-%=u`in+zhvf#Jgnci9bPkpN6FrlT5K#q zPkrK-AYxH(>9!;lhLo(`CibCVzF!mXk=~Tw*C})^QKv#l-U0HBfPAYtzc_^7iZ7oD zUXD?8ng?6*lCdoqCkek8yLZNTTDZK`buo?MU9UDMXc8q~H+22IwSfI5dPJtpu(_8; zWs%EP)FX|k_uS&jfG3-ZIjeizX7ISr5losHXnK&TV9AzbYvaOc*HcmLU?<@S{he6#FlYW zuv;y>9@ZxOPI@hbCeNZtubObES#4US_MK=mnR}VAdMaxYG5#@CGAfk?Zf!A7v6XMpz{bp%y4iA$~YtXcUF}@joslURcYo;nK z`qcP!1nXsf+SIMGk#3{fQH4Lb(!+tO1DV1#eX5odaxKPk z3qHnGXk1)ZG6(UMxbWAP@Qrz{x=TAEO7;Rq8%!PD81swh9jN^FM7Ne-o(uI3KHr)c zSY-KtcRf9aTt4fKqY4rcud9Te$!{&en)EH1!YA(m&4e@2)5c_#KPWnLgb6r3!qK$VK!pUp>QWF@Ak-oyK*rYIcL!e)00+*cYCk&*$9fa`3}!YVP3o z{ydd4P&Gd{qOg@1O=`t1)2&&f+AhvPtt>-#13jA{FrW!ZK_o}Rp8dzP@E~PyxT@ul zQ7&*|VMT$TIkwq$4ESA014(^z<>y9IbPhvP@|BL;nP%a-`y0yMlY?RQ2y(;$r-G$t z6Jfsx?j^p?uXRW5&;gg8(ykgxM_^>N13m0ToLj8Z$QA-mbj7HP$v4F$J*`DbTkLqR zj$3+sI-h1*=#i~xJ-tjO`Ly06=72@=9MOXFkn0Cb4Ak}D2-sQJ<4`^4?AA}1ma2YW zM(RAqQwk`}HG7Ajqfxim%SCDm5NFykPBu3bk;L;ZmQq8q7)A~Il?T!wB*l&uW(G2j z_gCQq=e}o+-fDfO;|J}`eN6v(<_|%xlPD9TFkFu=6Ks@a+@IR_>yDj8;#|U>(?WPb>n9S=l!fL7*~SYU-ST-) zS;`=~PbCaP9k-!*)AWj$<|a0FJ3T+k#FIBRra{B#V!xi?e#Kmp z__K|*&&1(MI=SI=&~C6e7I&4rr>gZ@W;9LCPM7UMY%tZ&uw{)+=KYNAl?dWeNhX{@ z%KG2lSXXP`ABmI1c#JqZ;|WH3x=#*YOBX@!05JA`S|aWuN$I%mHaV7lPT)LVc8{Ds z7Hh;i#OwgFGi>1Sgv2}&zO95;s|7J88cS<&P{kMG4iCuP{_y5EBE=P{A7Be^mJ3|;LL1tFZ*TUB4cSWnrssB zxkAsQ*f$BQty&+@_DI({Y04?i#7`@>k~Im4 z)ME^MknT5QnoKsbsSeQpE*(#f0DBnlqy{;i)OEK zj@K)Hk5BJNDQTG7O5pVTMOw#SAvL??NK}iy46G)Ip*jgv*-I56f#0QRyYa+@v0?#G zHjG!zR&9lC4VTh~{W`3}SFAzcse*pg?Ofho)})jDY7XajsG;XJ9E40-tQ?5=qr0l{ zx{1`e1-=@e^l>3lx;nP%XhdsmyNuj1CAHI_;Fck=>L}kN$|YX!K?p!F2ncQw9_n+i z9r^?Kae<&%g3jE~+KBA5X{}F-_evL9!Wvo+F%yuQA;ahPJHvUm;M;QX_MATsPzQxX zRg~(muj=hnD$9zht**{v75=$KN^lJ?ssUNxSQFhZU!z-W9v#bVwWJ%#A9_c{*4;~% z`ZI~P;PVZuHTz9Q(K*rTNu-ql!&m%efzhg1QH*XQ$-!AMsRm731U}6=re#QFT29iG z_1+s#I?G5%(>V8PI5z!8ZuZW<9KZ6v(_4}l;~SlN5S>-7jJJJxk((zhW{`M8dMz6$9_`*)LS2&b33}JL5wL-El@D6 zgajs=cYW(VkBnY$1>>KT7`s`S`vYLdN*;S5_~l3C(2~D^x8tLhc$nCPwA*7txJtft z(Y0e1U7=$`E(536tUUNNw|L#W)ga<(D)>ZyNPRF8(mVpa`Er^QtmtP-(q2 z*JHK5=OKco`93H*Tnl{V4y6OZPblL?F4)5^4Fad3+ZvV?7}ZJz53)zb%$;*Iwcren z7n*?R69jEvrskA}%)@IQAw=u(nB}68;e{vU`)wWD@~9JI+1?u+lUu$IJkCw^xE_zq zpTwT~7xi^_A;=K?7p;x2XiquR8|b#Scv#W)Q})9!NUF`=HK^)Mj#C7Mxud&SLCD`g z9m8`7s+i2?vSP7Wy<%s}lKaJ6FzP@wc2NFS^sCZ1+WMI~E<26`&2<91-EM z;7v)I7vf=7$#j(#u<>melIMO?Ep4{Y(BS#Gry2@FEUK+KBK0$tmE_`8t~)RaJjgjV zf+J0Pq*VvGX8u|@cIBn?drDZ~9{@IEwWG6uKwwdQb51s9FUPHH24w+Y`;OQTD@8o6uuzCTu8Q0_T?M$VNfbcYvNxt2&`gib9^X0L`9B z(ECr=^BpLSZOdt3myh*Wi?}f1%n*&x@gdwy%EB{3v>i*4o1%qA)<^2zc3UTz;^lk5 zZGQGAtHt!I`|>UEGQyRGUmEZ}b*Bb-nVd|!tKRTl`}R=0-c^$DHSlw=os$z4tLmkL zLlyc6VGYxqN}QO5?N{cWr_7|HPW1Ljk#JfI)ym|0^2!KjFZ^0H`F)Ab$-<6#w}A`hFnO*ZI9`p&Nt$ zjWHt#+LQRGE7Y8~90QIQ{G!FDW=ki?tXehq<;Y)mCfQr?S=)+g1F^ocMSyf)-D3X2 z;WjYl+c}LB-Z6(u*lfafJRd91ti?)fzt8A2M_VrUXvxm#bn(LnI!#CK-Cp$Z+;a-F z^1C(B!#=(J8&Xk8wU0g=K?#@cDgLabI>`GkbnK2cak)2cZbU_UCk&w(%K^W-FX_-N zY3<7?lg--Nol(a2DSOVyi=U6?dkG{8E#iQ>DTkOC{?+o5BwXe z{nve14SK)s;+vNjPtdilWUmLk+?x2#4s12{?uA_uA}OZ`zB&i>x+hE`&Dwg51drkw|~2k>~XQHRP)cL{4}=mB2|X)KTFt^Ywk#ExN4aV_+~n!hir1WfyLl1g%3;DdlP_8G*M<@JO>RBW4QFi&ZN%uwTxkO*cj zWYDs>2G_~ed$e4P-_4n{vLU1=d4Gv-JW8;DqOI&dY(Zi%E3Q2=#44nj>F`fN6oIX6 z10%3A$pl~HJq!r5$Lcb|0h*ptXILC(j0j~`$VbisaDDfmoA2TJUlbrF(Gz&-mMm%z zHznx9ngEE}Vv9i37BxeCj4ft%6kd-6Q;hjxn1#l{0QR zQ@&O4$D_HY=z*vB`*a%h#!xy@>z>ts6EUXft*0lsi(W%MdZiBP3$Zg~d?*NHLpRC7 zz#H5c_K*D^k)z_`=Ka2DV20r5pWI`1#R)?<-XDn+G`#?Ea>mYN6Qm4*LU;Qb1ndgJ{Tg+$T(ZP6s&{&BQO0>E3gW12D7z zP?d5_7{!3E>mdchkvNT*`StwWK^a;6t2a2gbw;L<1wI8Nso4Vv7rWF}#U4Rbp2i*y zG7rh#pBA(aGoLi?f9te=$7aepyv>>9Ry&`+n;e*sC)ghMhF#F5WYwQDE>;uM<9Yfh4fTB!a6)s*V!Xfj|=fROX z+^uhDu73b*v8)%M=0N?~9se5EhxhWyossf)_&i^6!tV5j8Tye>M5V?bK!(h-6CRcl z$OtStKvDocg#;2W4x7=;uE3WIwu;ynqhb%ClOmRNYJbnikAsTp+g94)kh?@-+eyvu z2&pt@#w)-UXwRg#sr|OK`e~+Vylf~OF1C!JNz7oQ8W`P)v|6PFSh~7t&Y^{Bp(Uo& z96V`2YY2j~$y|Tk0Nx`)Ebte3XH_NNWJE*o`Yz2zRbgBPrWIx$l(|E*m&9q_3R=o| z(VV({e$M6eHR~3Ep|8J!0p5;lF4^o8%ExXf*u{kN9rRiIdS>5b|Odu`QEBn{KwpJLLZ6)#@nQnrH6yXtnUWu`Sht!gG%`8D}R zt7}bvzX9asok$im!x(EeFprr_oPoxfB`l{X;Tx&Xq(U`r_I|>?6G-p8NZRd*JR`cRy%KO1^jLU~YA>HWS3H!T{~euU zFG{3T_?`?9ol5@&fDY(4TvT)LyTL3ra3Jpt`QcS5i{+d&cX_-dI^?;*66 zxx_tDoM=6%K)ULID@-6Hup^{m_hIvFmK3);jS6g7?eu z;|B5nkgBlC#+$}=46EuY&;Y2`MnaY)e**1iT*F`pp)nW#1SLvGKjMgkArT(J&_nnY zGcY71qiY}1*4WHFjI(*`-WdCOXhC<_so~rQFGrZDx6T|N{^g9gTw_beqhCLs{X_KF zjMQMUs$v3pYVqMY(sS@Fv!4kS%Gj`Cd;dA^2ZU(VO01Fhmm13(eDZbXn>5lrzu1Rw z+lVpKKJmWrhWZrVv)k;%TzS3zTZXw5#Mj7{y_cy&YR!-OQ%{FL(RJi>%CXtB-%$Dq z7F)R+le2O=&L-brw`&geG7=w4_p+7Hf`BM_?50hh(})kkHRTT85 z443EU@4N`0OXDnh8sRPJB;U@^iT+Qiy03T*XN6aWu?KJXS?_{%bQ(xI;38@{E%GRu zMG#(4KJsY4j6fce!nkTDzLX~^eVBJF9a!xv0>}$4DdiJ7En54}kr?X!;$b=>kU^NI zpHM_qzDO(IdY9}@m7z>k=Fv?g0kE{PO_8kNv;1BoEKnRoboX@zr2Gt{#99%U*2iYu zOrqVNKBy}|evhMQ=`3Le(ghZIydP>E;)ZO}7s&y{f_271VOPzxkVj3n5c|41?X6PF z-&F7h*0wbwx7M6r8 zSQ2PrItH;y;UphqaXYD8#$$`h01;h0G{CP5(|0{bcP! zd-Mueg-L0(bD1XDNcd3P-5bp+D}FSG5;)Eq^GLjRY#bc_o-LaW{IpB%KZP4k42J&( zIcLJ&YAcba+Xo)yTn!=JUaorR6g|M$Nrf?@_25TIuMjN7QUMMjvsAtUW0s$v|5*Zp z6|&zou>7%?F*}bqpSNvs$-CE}GGeCLB6~t5A+%e0O+zgy;HkPKRLnk&Ta?Q}fA*w1 z=~+ng4!aUnBJAX&aD;L~*&-eoK!yqohsawpDTRY~lvf-N+UFr))ESlVGqlYtEi#Fd zbQyr^ySIgajZ;PQ>oBz)j7njXp^B3FEK%9gP=-w9i#5E7e)0zLVSc#2_~_&I{R8kb z2-z|9m8PGP>s;rx-m#3mLaNT0Jz1XRFTULfc{zVa>$gMvt>bPp{2d&W!$T~YN(;<2 zgavK|UfS5g9b;-20vkIFQeh~vV8{jYv+eo~K__vRy9QTqXs84~ZD?d(FcpNxajezIgrP2f{kckzt~oUQEuzazBG{UFUhBzq z9pkK~L8NiFh*#{%-8Bu_%pBThdtsgVeGy8(_|L*6^5A66 zUy8Pu?0kiiFfeMhclDUkRJi^=fSA7V{<)ORzyC{ESP7`}79IkI2XCBJ1o3YeyxD0? z2EYq+#tHeLDU9JDrEfWO<|k4_mOqR6?H)2?)^#kkR>7HhhHcWU`a3pv zm_fz_emD7cJX#{{d~ExYt>;Z0Qk{=4kFFtFUj0*Y6XpV5jd)4eg4`60lJZ(~#8Kim zu1}Pnq_aohiJ;N?3&&BIZ>MJYe4tVeEl!s=EezIf7i6y=D=}&^q*2l}*3faZM5ZLK zwE5Q{_8@j5>Ch@#+~%r^@q*{@dJ>{_3L^~F;ji1)?WL%>hN0|SD30q>PmoJ}m!H^u zY&saAc&4Dz^$>{^C@Zi1x`_aSLz~xx*2v}`ufN9_vC427=Ox~UrqjnS0`;Ot`i66X zt)nM?6%ZX)I4s&_-g(0?L>xLAz0v)FSjZ5N2FYk7M;PQKTpj+&9YldCq%id+v@*)m zD9UMwDa7=EPlCgdN+n zm|4n*q6q)zY|-#y^l8CxbrrSbLV(2GDr455X|%2n{wtVN0bFP6aS%`B55{BmwEmyq z(U7|({D#v~NYmeAuo-o!dTF9JahQ$!eh$B5so)gJYQmq%ecq&G2t;M7x0Y=yH%A-Z zcQAvK@nUJwvEeiY3vfl)))YCEb=1OP(>gZG#wsM#lxg`9f38`zqep0(?!+S(@MFH+9UzaN$f0>5d(Yc)PG$a6QbWd9%+9}Yg0(Q%0L+?Vq?qFH zz~K_MuJ_m_THUsn&iuKq?LeP`LpRs={Sh)SwIKRcIADRgUzy5jalz7q{w{zNZtTmi zd+P&xm8rs8t>9<%kg}ux@XX;JEaf2yuRhkDcJl4mpkT`f3N1nm*+5wiEygaX{E7N{ z12P`F0%s~nP1<@?_i4bNk`Sfz#9gki&}x14viss0ace@gJ5DZZNN!h*w}|ujsEu9I;h# z_RutC1*#xB69C*ASej_zoC9_fT+kgTLfy+>ikin%lk2a-dKAwnRnMJznOplMnCMW) zr%_Y7*1kTL*%mwyA4h+j)uxb7%O~rnRr~AO1OgDjqbYJ0aZXnt3#C9l4b-^17U#$` zrce!Rmo9$M^vIfit!t?e;13=aLr3G!T40m~AB8YB-2m@DfE{VpQBli12*h==1o`)C1z5P761rP{S|!;UNK*@vw?|JLdkknkcGopCX!QvBPz37`(YzBAs> zz-bB**;`~L7Lh{Ym2a%^aCE9kv2d*M5-r>;)F2^OY#qVj*kzq83nzZ6Lp!`=9^k}F zW|)f9=cUhUOp1Dz&K9`<&I{Y@wCr0oEmCHOa7gsk ze|>B!J7UEdAz)l09BF>db|(%&Gl`rEYK{^?!8DHD*|m1^cUZOj*xuc zIK8g5-e($WvuZ|74b1By8|eUvPlHY1*A7p_aRsC$QbHekbDrITzj|^eT#HAbii>N# zKkt|@wucAp{^)5)pt?H!(*8nar#vN5E_>JWDo19Uz!(47u0sX&plFnx4&YQIeZ{~g z6VI}AiZ{XCBG&^{UJQ+2`C4Xmzg^CP2a5@FkLfkS)c z)FhP;8ZgqyqD~BTGFstxu7v1`4!zI2Gu7Ts{%{08`|R2hIfaV7g|qCIbjhO)26jYx zQ_2T_H-E~(dg&Zt_7sz^(`|TaFJ|e=GE5Gi+L&6x4xW*BaT14LJSx16F^>MJxJ!nt zfoZ&~!ZMO!QMwcKYd`VydA_{%U9a~EH1W9SG-REx-p=qpwDuv0_dsfxJJCE5_ydqE zu`^u9f#eGI7!k`pRJ}|?u|rTgZigkY2WAM7%IiG!i3Z?D2F#(^6u@kjQ7D9GP!p_| zCTKJ(Jal0@3w4Q-?4y6}vSdsjFM|#L8A2al+1wNJlMD>KWw?yrk=2?@bjE1Rqp!iO zpeZBB!rcyDRmGCd0p6-vX)@I3jN!@EvSJ<{a* z7GcOI1+$Ii@sidLl5mS;rC?P84}6fvC=zFj{He~5%dp8pn6o93p_aqp!xGCtNY2_=o#9r>Z-!auH-`B^yF|>#-!ogcX}8dKV1b z*(5^kNG;MM>=GBiWk&e0VjN!BsCbJx2i>*;67=c-K!;3wAVbz0I`pfZ3;-0Ax11TQ zxN2rG^Sd-5tXBvM{#fd}f~AzM($3a_~I zPSC}JAmN+I2!+@Y-9gIiXb4fyniZj)ZDm|gvx_!Akg;AQ-Kk2LxBo;bf?F?St95|m z_bvhBDT}IgT{R>rO+_GTNOagxq{G=4kxqz3REK2yOLQA_CjN&j%2pFH;~@^19!;}yN4`7T7Z!rG+? zLt;byr|^hy1g7yW9vj?qg4br2Ffc{`<$z+YNW&R8#@ntN>OTMu|DT}Q8HVx1Df<`^ zD742MsvUIaF{9zCt{GOIPn5o3LD)jp<0p|M{_$`La`C09!k9)97^IDqEiu{Q_{_e$ zs6vQ@;sFAM@HB8$(R83UP{BDYO0mkSgyq=h68f!6O1tHS(6l^MG zuqv(fK+SDBN9+*>$|p2{9n3cc^ndud%~CCq%Q$XM=5F=95K4RoLGY^XXE*Yk|CSTC z#iOKd3Pz|ZHd+TLACRuFuBEAsR>&1UPv>bBup^jh$NTbL<*)h_&~-20 z3MX-mzbFQR(>u#ROpA)c)SuiNV+a*`9+EVJdF(3{UDuczo2Te==d?&!67*H42UXeK z8iog|=l;A^+3-XY-$=>52K}7uWQA@GXl*B6Fs!>{sl-JFrUAwaj{tnFM5(vmBd-F# zCsLFl`-ediLK#X;I+$*z>G+gTU8-eEg+bEXm}l`OJTO!$lA|nkZj-(naqO?fo5;ut zZEN##vixrPu@Cn}Zt3gGg5@yd76d8FNM1K&uxhjq!9Xq7Zmtql~L1yo&l{b>A^)FdifpFzZq{LzI4*%)5@M&wijZ2%=Ln%R-Jwo;B)sx9 zj44aBB5_-~WH=3`QRkvanIbt+ol8_`H*iuL4*RVQW&UH{U=-a7y*2}p@LNvPp*i_# zCH>ooeH^Jw*$jbQ6BS10`wWvYYm#ftJLrbnWM(Bp3=1(%Re8I8l_c6VR9czzXr1i< z@Lf6BnwG%uYzG;k+Vmcj^-%BOE5b04e>J+AdZ%xMpSA^G-;o`g8eFNmLfohg*oBYa zl~5!Bna(1zDBdH`BI5m6l+Q@}GMD-*MsZ?Cuf$~DtXNgO11QB`tJBRc8hEBr2-x3DwHkAiTW+4mR>l7H7zHVJz7^ z6KD9VmTf8r+A63<>v|@r?NW)Wpsxn5I+IL@E{x1b_QkMfu$v_4B`(_NZEh5Mw?o=$ zA97GNsoro(P2UuMDGLaSyu()ZS&=?aT|5C^TCrFV)l0|9z~9D=uMGV-0_iT$f*;Xa zAMV}*f&lYlooD;53Jp3RIR=|jQ@@Ye2; zrj}(Go63a43)|#sUd#02TIy$H-^vJ%5QIF!@+IN4qKZ(kL*lRtYz_QV#oBG_P8h62 zQB3c`A8b)6>!CNe^g1ZQfA~wr8F%0F?x6QPAa4?qmLumY8}OqrsvTu2fL&8oisZIw z3(a?WCmOVdmDG12hnETpc{O4owR)oOjq1CZP;oS#6K%1ncqFnh<%2&>733*E@q^P= ztb`ot^DArCG!VNVdH#fwhtj2D*duDBB}O#)oY+^JX`d|miS&dG@E)+CD9z)Dl@A?l z>RkxjY5L}L$;D0~(%jF!px$MAvUu;ggkzLvFcxr{Ho}7nL0TE6<3C0`wS(1wyucoq zYV#Cs0v%0~JnQpukcT;NoIi(?>%?ltdu)?fms!H7_GH?pv!QoNW3VO={~&!T1AGim zJR^UNP(^m4g7*yw3_n`>(M>rI%7Zq1%e2 zy(7#V=R3Qw?!ow$trw)O0X4z3Rfcl`JSI}ZW^L7WR7qUA&B#?+$h?ZoFJu{hbk<+3 zO8d&KeKu_njx^SuAvb$8G8(-=Zjv0IY6bfu`=3j49vI}z>kNfY84tcOJZUPf_#-}} z9+>;`PqO{0`l|0_3|0(wt^y9bb+gi15Tb%^)^9Q2O>-=vdLUa93x65BRxSxY zl7xslADOKj>Bc(Y1w$Cr8hyS5t#LjC6Hem#Zy+bREpGb)+8u>A(Q#1MbJlQ6p@YtT zNh`)&!8GS_Angl&%~;A{zR*aQ-z8R|y=T-7<^>?pPGod?PG?mS`fE!TerVdaz(I%dIP{hij?dss`^GbFavgm`4ZgpI>4`*(dowTPgA3IK=hc@Q6lJ%&%T()s_;wD zY3s&s>Z*8KFY9P4u=*FyDUt>FEpmDrMDrWDQ*8S8qK?V0pVGjwEjVofO>((H{13+b zU&Nl#l)kpwdrgqEU`xiudRS@PY2+&A-GdK#yfhz=SA3y(Gk_=gApa7sD?TIs9)2~& z?t+g_uRjJ65H=Ee486TmcU%a2c$vSZt-Bc18t>)j8Wk#u5Lum5UsmP(3ChV9ao2sp z3(lf@A0`Kw6=*2Am4aQe!dOHHKJ7HCMAXUhRe3rbLbDE?mE+k_&p8j-{oyi)cT~bU zr!l;gk>z2+mQ!qh8LM(ti2gJX+Ha2EDafW-@R~7%d&tmv4eWOcL;AW}*`8bB(?M3kyf=wG`M=$yhd@=u8&BT@Kv;6*W zF}Q_m6h^RJBBnrSL6lnPoi#rqMI!sH`JK2k)zI|Q##ISE+2APN%)TLB=vl7h>QAWO zEL3!@Evc;<7cjJc5gvl&Pwys&CFSAUM(wk1M-BS`7n3Om3mEJXLV{r$!PuT65~Bi!;*CL2dI~*d-9WDazxi;HcUGoz28fi z_`G?ZQcPNVJl`D_yONK5yUHZ+-!{K!F1?2#6BbD-QXR!CbsC5pwp4!r0>DN1ii$C^ z8@j;$QGk-X3#U|1+pknC^B(V}BK8Mx8o;h0{o7T0Nx92ijnDKX-m~0(_Qnwg?h_9Q zOc*HJl{<~P-+uNU&qreGioS?dG7TiCP$rp1{ld_gUEYl=GYXjMwZKPmA@TYV`YQVy z0(oFc5KJi#ls5~5>xeVvfQNJ}sY~`ZD3#T}D!$TphgSwAsv+yo`(6a8rzc=g#e($Y zWA4K>@uGtQNuAL3fH5YO5s}L!bRF~$+C#}C(~k67sK{eZjl%YwzW~@pN4X`KQAZBG zKnVq2GIpR>`xLwKPP&1Ab5GvwB0ITWrBaej|ChdAo5%!k1aFz--yspnXlkZn{b=0< z*3^}!AX1mCv*Ah$*MWtDI>py1*$e*|rBb^Imjw4O`#@~-+>6Ricct@po4P0)|Ak5c z<)Qk=jPJ)2Q{+bfWzatbg?p_L2FbKZJ!lL2|B~|$=F&PjT@RD?x)$%PC7FhT{2%%M zG{O6w?*It&^3O*-cG{<(4__vF@%{jIb3ZIW|9e5vRX#z0yng2;i0{}n?#{hiye$s#hDM&vlQUk!>07?ir zvN#X`K%a*NXW9gg#tjURhWNY5LJ@%g0I6?LcpR8i6kk&u08as%>_3>ma@GNW0G1#W zc%gLilmL)08G;1qqQ8XTEQlI_!+*7H5avb`)BpmYwIGyWKm7$D)7m4egT;IC1Bf{g z8SaOJv91HgNpk*-(Olt@c&yN#AmEPAu$>9nsSRYNT zu>O}86(-PCG*A^hSdTpnSdKMAGO+}qLr~%W97_ZLeNKY77l1J^uL?Ua^6#r47*N^c zzrYMkXsCYh2GS*LrqYmvm(0;vOoBV)o6 zCIb>k0pX}1jR61Aq~Ne1rPxvaw{VbtVAWvEV1772STd)-m`E9e1Oma8;o^i0keDEY z(G&oFWZ>z4Y4OMc0q$XiQQ*jd04z(i6cQ-{6xhT6v6L)9ii$;=ED=19%^yf62e@fS zTZ9z@0-*j4kOqpvktGNTGr^j)BqD)@@IV-lK!TAG|7C2J97rPtE@rD4I%>=2U z|4~7fpdi*DO&0HWM>o841;)SB51HQ=;3Q4{Z-6vJBS?!71X)36Qd}#Oh76@zU9aJpHtk>(inef z2@e5jA?p(Z16r=(@eqn7fU$tO++W6$aDY0P)T9ZDIvCy>3WRi0=I1atvV`YeK z4r1L`Ek8(p1QXCD=&XOp|L-9Y2s%dr`T>AR^Z~s^@FEv}0GPhN0P!3D+@4S@cp~9I zBLJBaXt07E^1b=Dgam1N@PFY0q{)(m01jYWHs9w1{$m6Kx`B)ZVGz2Rr2cVmC47bi z!2T_P%x?`RK^XDP5A;+7-~hmkgaLk#K(xPTBuD_jUd2%0$Z#GulUls&^8hkXh;?y1P1m10EYuW0U$xGkM^H{IALG{EF_u~WPm0p zeXy7x8023R|0PP83?M`XdTu1R0zZub8z2Q4_a6-Z8;l}E z7640yq6LWp2Z{Ed1pZqc05Sm#00~EiA`JNNlK&e_3J7|>p$P#&Wd6?pX)*xlPY96k zew)FjfL2abjx;ES8C(oq|CD`!E#k`^7Oo z?Z%{wMuEqCh3d=Z$fF*0@cidy5F4t$C~epkE`b@Dqe*REqD1yZF~*b-aa>zQhYQUm1xc)Q~9z>jnwAcJ{->56m|Q1z*&Ni-{iA z(qV%b)e`~SKs=`uA4p-4r$QoB2HwB42;16A_BBv*$PgW1GvNhpT5pjIHNR$A^idHSs2;_(7^o=az&Y-0eB+A z+q``QW=2>-qD2HaEJEvWBM?LvfB|`(IWU0?a3MdpM=%t>p6d|Ak4Ol(4L`rtuLwhP zG&DGRsi(VxmMHLnO>nSeD4&z6z=C$Wt_{`!P@mYt0J#FymMAa=#KK?{sK)+a0HXh^ zsV|LcBI~-oRVhLO0g4bHj8Fe~MTQa14Pg}d2U0KS69%<0S@A0|5iH^R((El5`Z%v>9o zna*2%Y&R3qpHKL)edwcN4=|NxkIis+JDcexGMX&n+KJjG23|JEC;G5?l=qgLe1&qX zkc0~-Md74RZjSO*lje$cECV`Qu33~V1rM1UM%=S?Umo`pH?MRcG&GjoKYncngq4q_ zHfM`i1LP?etPFYH z2V`i=1Yq@=`Yaxl`94@jDmZ8~6}-|yfwywO-W4F(Y!Guz4LMHd3m!>eWoO}0uJoI&R-Fz(uA<()vN8sc_H zfbTaC-)G9!4LSR{wGH2^ONJonmViF}QdFN^r>p-BGG%W5eU3Ne`iRcbcpxCo4)5Q* zPV;O?(DFkvv$zzLzC*Nm_j&VobJjL*JvQ*+ zYMs8Jw+=Q-x-;{`!Ssbgliph8r(toOBTuUN+Rm|9DgQsfp4zwOd(PON-I%4+fbo!j zt>vP$_WpMAuFe07)sPiO^5CwQ5m~(&Kt|@TB`J@aVuznOaD3xoCU{uV0*ZZMY=)CE zOkTbC^ct{H+ibSht`gllY1dMJ1VDeZshz$YN2_&ire8fri6mbW^&IGUykd9HpR<5N zz*%kaVYskic@f_oC*eWP!dKg7tA5s=Hue3-?g!wjYaIh8<%QVs;?gsvIg4JKh5r>4 z0(B_`=B<#{6yYZ`%XZrmkHJixA%~bkBU|z@*mia$z#i7OET&Sjs@~LHXlIXuCi@1L z`e(|!YXlf_3Do0r@JB#C>OM%ly3y<7acr)kBjr4vm|84?9W9Q+l5Lw+kWNP9nW&hz zzaFUbXsyiDrXGE5A-B^4K5^8wYZ4ZcD*$3)f-$#4eUq}6Up4D+}>$Ll}(!WVPhHdL<`bBwc|LXQT zyP++|J|GjozgDv4<$9gDnHyXJbVfkg#1^zaR4&WZ0Hi6&>6U1D$HI_^ck4(>R zg>PUWot+=)NSw?Gk1Eq@CbSbc$V+3rfV$FsX4n(S?t%G^xeSjsi2KKGS+c+Goe{6F zBXFCo@2BkD{_D%g$zUzPR0kwBe6%|e_3O|;I7Kg8SZhAEz4{!wC*Yq&dp`YlL!keq z$sh&>klttc|LzF%e~B`(35=(w%1Byo55L3zKc0*}6+GNBith6jyFbja{qS{sX9+wl{bI8@x``+pQ09W4hts7Xn-|l&ZK308wWiyzubZC@Gpy13@1S5jy zC$$Wzj_hZApS;y4_aEbjd2#d7hu7VOWn$J-*6!t5l=QXT&bGjPqcb*+jS}|Yz zOSWSBvp3Sn{j&=Wxz78V8NANa?bVJZ6vGMd!kLXxQfVReAu@@iL)4;ZXae?9KAlG! z2VPu012;-j;$m~Skx0|$RWzX3YjI()_*PNfU;I}IzeT<5yc8K&_m;BHF8Y>XT|%{N zaoG*&z{Ji}*^EB!o4V}s&iX6wko{LIOJX1Qd;QTgV)flS*3O@D`o!GE=5!H?w?&(5=Poa zV?%@L0xhcT#?rjEq*hMbJd0YyF~6ua(1L5GG8mztnAlLaE*=yq4IQtKe^Y*Ahogo= za^6gF&jdU=#s`hz-K{pC2!|wW+iw*Pv3ZjfU4u zUjPC6XzQ(ZYY^mcI{^J*i* zg$4F6=a>Md#iD6$dAGOc7J-^OWiXUzx`T1DB*qhjU5Xe=BZUXCPg^RE4@dybH+JoN zE{iX3{BAs1UWlR{n+E=J2GI+Lctd-o6lO9)#gy?@fCfBuCZ}Wq3Ty-0yaUk5Ul8ih zeSgAwuT$x&@(p9GLr?0ryw`1U#o%EX8MMp3n4{*$dJ!YgTRY!1mGfwP7DdhS$(BDf zZ>UY_ItfVPD{Hs%GfaX!NE7NJ*EIfK!zo|3$jdHtq7QB9Ha`+#o zwIo1`cWzvB5+s6~-TRi5pVc&e<_B|{X3WQ&NWkEkzP<%C=dQyyntFPZE}f;r0Xt?t zPCe4i3JLoY-+I~P@ucA6bncSHAZ4Rgl{!*nQbjy~~izq64#^xNW1lBJN$I6ko4ZJOBtNanTvX=$?ChedBl9^Ug_w zaBB28uD-kvL5v%*{?|r*=gzw01)0d59Ew`iT=AsM{M_K&pa{Flc?2_Mmow91Sm{?d_%y~~P#ZAvtJk%YZ1S*i*LnSG(Fl*e&wKS ztl*?q3zv(aL36aimj>CGb*pwkEH47f=9zHkg3q-Ei~n3E#x0bs(5+wwei93sY(;W-$r@fh=O$Cg^njp zYwZF9!K3O@i1iE2QfUWIMv^4uDXTZfC2#Gtk6c3hy0cgcjPpHW!HwRlscK>5t3f63 z!hua@z@cH5%aijj-S-!GnN-XJkD6j3>gpD6^jJO26s13cd$~V^+0r zg?Wz4Vm8Lk%#EYL$ZS+*lpxXB!#60K2@mHf_q@|mx-Gdfg+FiTrF6yRXw$raD@!Sp z-HXS_Ct}iucSxZDZE{OlltFtS;GOj*u!2Zc9yDxqWnleE*M{DKoX=G7_>!lxG@9Ue zP62eXBX%=2qyjEqRnc!1YZ-K@+}*>?#j^llqZFYOOdG(DHT{g|sK2;b<;;<4eFg>0 zlUgGa2wS^)vQ74QHUVN=jF&)>pCi7N7qI@^0p&h*G2+A_KL#n$C5f|nYKgfxL{2rX zXSQt&1)c6jDfVPMWGgKh>5v<7C_FL1jeP{H88PG2&*sAB$IzLC*5EiuZ;zGGm+ru3 z=}ZUC?@bLoG7k?b4p*gY3JEMKw6&~o5d@f*fTnq6CB-gdF0F&L*Jgf;ZlX9hEa2+| z4&e<0Rl@)`f~PpMCXOCd7k|O#!X3bT7rv+7*dur`kTcOQbb5pttuQACMTLa;1}$U~ zU-OPY-!SW%x5K(5c&JI9c6`}(=te(%NAekOegQNnFS^#V<&|ZrZ${3-8$EQPu~w<6 z+BX|SYyOsEhOq`n6+2e9+5VHcC~}s!`4Z=cj)x15nF%>p+eAH_D*1fUW=E6+n~u`g zioVu`T=}Qo;nd|`YgWuh*t5-gK3&|?IIeb^N`Wd&B7d};UFdQq*5K{)ONBG7^W@~o zZkYier_QF>aY(i!Wpms4ENeG}VHzGUv-atWW!TPrAIaK_o}oZ29G20tFzVsiGT3Yl z|8!^Y7zG3xE#rQ=_Bu|?u~vQWSnZWO{@u+8*_4o{G}2^GX4_i zq(IH+5Zf%G3uY;mCde%|aC#pii3cQXFLx`%l26|qeC5x8{*s?g;0{J_`Vz7{c zF2HF7g)Em+s(`PusFHjxB1W4}fUQuBp!H744*{x1r4aHH-P987H zh%fa~P4eECg2fU8((fU) z7w#RurvP{^hc6 z>j(cz$(rsnPB_3wEvn?ipVcq+O&9bN-Sm+L2iT;?Efh&A!@9KzF~~p| zDQvLPTba>9jR0DJ1DXg`h9Ae&hG-ycy{X{aKE3E=!f4r9!R4QtJo1|zZ~JpUyXz{p z@249*@rj z&m)H10lx~`da*2_vZ|Fc?`?8d&wj^(5~rT-Q&UZX3l=3YA!SE}bmJU1+Ui+5LVLbj zbVw;d7Do0jRtYuhukSVP_*==P-jL4)w>lAg`d1JI33yQ9K~n-){E0hbVYL9Ub4ooN zxu5cT;|zGF)AyCBBx}hnk1JO1b+b>bp^XaPq>-@0ex?h=ClZH0BAEqAPDjfFl1DOP zMfVZ6@S#Z0`k&<_DtxKG=#-M%-n2mTHj3_r%|SF3gpYCHZUKyp8ah#d2sfSd2;$f( zfG`Oh#_k#5QfJ9y?LvU*L-{B{RmCOd7r2#k!r3@Qo00O~V61YSJoZ=6cUX68O5`r9 zl@1-MRqqf9*k>!U`7nR zP!TcVBp}#;79{|L1x(1OY)HN5o+kud#2^w@Fjx4e^2_|%WktLD*E!#r^keKlAl|!n zwVC^(_NtldXRJhlF^O>4C3UP0o9ND-qT@yM2(}i+8r3S1R$4!H@s3I(+J<`(3^jl- zqEt>nDJWsal76LYvB85rfW2pwY)s8pN)42j7#B7W%IGI!K+Y{Q*GN6y%Mn79IyY0T z?^}m}N#v$;ylRhA`Wua9PbFoE+wNL-PLCK3I?w^IHWAP8_}Jrzr%MC8=O59LjG_1d z7DuCpa`hdXy$+)yDbfD{i?b#*pqMo*!yIIT3yf&^2_q8;-Wt#_K|)NJl2A&~M_9&- zNmipY`|dox87hg47Cg}nX(ul0Bxr#@bMcG^I29V9j%*oQ;i6K0s$jl1jvT% zr5i3ql=U?qymR!_A^iY+Ytq)s*>@J5lsNohO?K!nxxDT4sDgR&IEib4qTIa8_Hz{g zhXKtr9>WS?(miH7#KI`i1Rb@)j)P_u#%Bx90hG{E_|49NyNkjhm>;XI;}jp|EujM* zVvI^L+L0pkNJ)z+J%RX;f7PVieoyVv{b->|31&*sptpQ;nv@kG!?+N{>8`GMXD3D0 zKWUuaDLru}=)Cp6WBWui)*k8jzUWe^`b{23ZJ;LEN&mew`_P;HfWBV70Cf4QlW`h3 z5;As$B*a#-{SJWVaatjEqDVkTP&t&K+PHM}lyTPI$ByrfWrt5Z@Cj}t{~d1tGc;zy zXu6{HMnK8~u9`_i8laq2Q9|3EI$Shz?s|=ri8ROR85c39VPYtwJoGIKXqi!nIe_Y! z`uVg%#0way6}|DT;nlS4tQ4RA_jT5aiqx{pK3#kR*o0aOuCI zGT4BusD)S=##|VU&0fOfQ!>zEw>yV1{}M6+lUIc+&pugYCW!J6rwz@NmmFD6v5 z!301!0H(k)32CK$+owL8sZ$?bh;LcpH1A7KT-iC-Tc=!_)(usk&Ha1ocXbTaP1CmH!r%)(dTn{0U6touwxZ^#ItJ_G5kh#Z4H!0D8 zv{wDuf^1cl3 z{lvWYDHp%h1Wuc66Cnfo9TFn*3&Lw%Q#}n>Jie5pwz@@7>+p3N#Dnl8woz;ePnGC6 zAWf0Z1{e;|{WvgP4BBt(qdP0Y?0ZqelpM^I2!RX@P&x|ddM;g6)bA7Mf@+Waq?KYC2j zI5_oSY2V-8uw{V>&?X|m3jjhe_oE1y)YiZkjf0p=i`DJMR1apUy4$!Re?$FSDy%S$ zy6hxo7y-qd7*radVr7k6ma)UrJ@e#sWJr&L+GmSto|&MO(2o(qR2bZge5LB4E2zl1=czmj5?M}9GyJDU;n?6HIhbx7 zwub%PRE~0YN~GV-F<}I_dQX1YRqE%*=*d)alhm9o$62}dYkVy~E<3_GpUMdJ-DgBY zRPBH~7vCz+AQUS1N8+=OWNebp005i^4ZmY53gsEMsNG7nuyz|XWARedbJN0q?^`A& z4wim*ROAc>^oHw;#Tbf#6`XR&=zWAso=YQLNwJ(P;o%hALc`-@JPMySe*$o6DN^Q{ z_jM&ZAT-(<+B%LvG_`o-(1q;keMapc#-)dUrFKQh; zuQo|)CkirfyEO2pVqc4PB7M^G1J5)+4)tNB`$0RJB|Y}RH=98?vTATZtUJi(@lB<0 z;5g5QzDM$M&z2(GVu0dQ=2w1d)6TzAR=jmNE@G763J8;aE)ZQca{_G(IcPh~D= z#3&oD%z`6~uBo0Ena;Ktpvuud(2?W~4nY8>lPRnqur~m`)!{(?h4Y3q3EA`V3%vux>N%UQvzF6C<1?Xo zd#5Pw1XWD>f>M3%+h!!~ioJO@dwbNI^;(nXGFUvtA-ZT!>7gBq&B}p{4opl$Kug2L z8Y+&_3N(Cx>)QYwRYuj&dMqixQ~w;N#=iQS2X{6yM|vz1S_2{4Oy{bwyKzs3 z|FlSrBzwPSJ&2ta+|FgN5WF$Iw>^Cas{zm z$d~X(|BeR81aT`5m-Z9ZtBvI>YI3{_RskI zylCAF+j6m!$=0Xp7X*_&O$B5KP&5!GB4Y$~hTl~LrSrquODeXPb6-C=bt7TpCM8)~ z8cQh+rf!GgK8A<9uGu%OJ+SYxxr`h`0VpCuiu0eY5+AAw+5tL<94&-C=Uj0b?ni2(`goZ>4ZIEQ^1o;{l(ge+++Ujb%ZWFc=5yT)!_PNAFSuS*WcXe& zKT+1BjKJT;s9{)aP#|?PB~)cl{Wunl$;oL;nky{Wd<0G1NF0 z@<{fQ-Ow!cTCm}^rzeXkj$D5&GWX^lze!VfMTR^l{k-2fKA-JnvO{rkjX1QR>cpC# zD)-^_8`OLYnefP|p6PZy7wpADN=Q&Oh(hN8vKc>Ly=YpW&W>tG;_VF2@Y|ThzqoyP zZhwoY+W52I)`DBzUo{LQLt+AnA?h!fWh!^|0;rl|E^{4iWWav#L&2xDW0LCCvBQ6n zPggyZ%_6-CrNelJed&~cI#&kL_Ok{OpXl<6_f(EFTpUXILCFgH+a;^Ea2SndSVK>@qSdgpw|L~^^<93>5mpt{-w(IEd>Bn?LT&H<);|W22u6M6Z?k_ zw*yqy>3ejg*Kwxk?JgD)&X-NQD7~;Gc}Jrgr6q#|fFBqjBI&{@`cW|Oq6%C)Opi+B zffs!uV8-6^44(VIuPIK5l!D<5u1Xxi=(uqPnQ`dB!8GLUsE6LYbuB%(r2D$1=$_?~ z1Hrs@Zh<)!EnR_svL1+LPgMlYy|!E;EsI-|?2YnMDOmnRGj-?T;Ii}up#?KTc}Mbo zEo>Ps{#A3Oy!Q{Z2Duh_G|R0nhc{<}KDim2iOq91>r(e|epUeiUiA}?HB*8?HQ*cI zd=6^EAgl!KKlGBE!9(X|9veOz_Ifq0ys7Fj>HTK(#le<0cYv9BYuOQ1cm}s^a>n76 zb~ejL*^A!91&NK2j}qM`QGM?FX_*UcW3I&7dVl(y7J9($`l`}gBYw=Z0sH*XG0sQ9 zut{b}w2Qx~?a?Qly*}{9EhV!GqAbW6)=|HaV~Vk6#2OSDJD#qYowM(8Y4pWV`yPSv zafkDPl)r6*UDhO@3iBq>Df|Hg0Bgx^1Wke>a}Zn}SpAw6JGcHc!xcKu+(J2v_x zENpwxf~3ZlkOMXO+r#@tWH({mftVHU^DRs#7qILVDap~L(Pl4t;>OoslPkR*(${AV zxhal8wk9!$`26&dM0(?Hqmd`0T&wbLxi#JF=s)>WZ(NOCQX>gIvt2Zvz$+^C?vI8q zmv0}2`KxQR``Irg8|u%Auif*)hpyL`JFTtLgmNRkKM61!2A*84Q_!7; z`uo!4N}Jc&p3qfl@#g5&^V?|`?4EkR?pIVTV9dFh!WT$#wXTWm7k6I9J-oleFt%KFsmd)e*Y)#%}UX z*!$MnYUyVr^3p|zu0R{l`{b^S!9Glb9g3;xv5y)};RxC`)onIirW6=wndB~1Emapd=)6skH1jRpE9;L?xwG zBlym__3hrS!NJFQ9cLA3)wS#E%!t?@4(f$lG`VorgM=+GNMWX#c|qsiW`X(FNbcJKC16Y(|R3 z?M_>b>{1%!wZFe&Ket~UQ2Bzp#+;ncy8f5;&$VnDFJr7bh86fQDS6}Rj@Y0>BJv1sb1|5%x3CMiLs={K25XGd^zPw!=B-P;lN6v zUj>_%y-T5bye2O;9I4gSTHh@duk0*rSmhYBZ<9OKWD062Y8Ay@IT3fN8moyq=+ zEd6dt77}^ J?flQf{{sv*N#+0m literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_4-home.jpg b/install-new/fixtures/apple/img/p/iPod_touch_4-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..fa72ad43171813f12a6f4acaea08ed80f7424d38 GIT binary patch literal 2480 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_4-small.jpg b/install-new/fixtures/apple/img/p/iPod_touch_4-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f7d794a5ef96b37750aadbbd6e9cd7f905caa304 GIT binary patch literal 977 zcmex=``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vToxHjST z9%djdz$^gd|5~DX_3&|-iwB}o1<~=s=65c;{37Y);vn}WJ zuiXW@_sF6pqG;#os>yr2Z1UHbc;8wX5hzi1O6RS=R z!{A^Q5O_Sn++3#^=nzRkP+Ebz0>}^$WMEWqgom|2zvzW#ph5|dLS%IejKI)_r~?JJ zz=}tcfXWmF7=czWvLMtl0z=!;FtM;P@Pop{k8qy}>@0eEdb+Lqk|RM3dCbd;Oly1v zGuv)o?N}GbC>5~FRe0jc<)Ky*I~Qj^wV1bj$Ikk7q1HMs&+ER*?hg|!{G|Tt=e%d9 z<=qP#mitBKzFRE!%jf2N!6;6-T`uSE$a!#|;m!ZTloOJ1dNtQ;xx8MB>PnB##n+$z GzX<^GF%ZE3 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_4-thickbox.jpg b/install-new/fixtures/apple/img/p/iPod_touch_4-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5fa11a9165ca1798112bf08c7ae17c3f569686e2 GIT binary patch literal 16029 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 UAP6=NH{)@v%QYzY_Vw)l0;(9;;{X5v literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_4.jpg b/install-new/fixtures/apple/img/p/iPod_touch_4.jpg new file mode 100644 index 0000000000000000000000000000000000000000..fdd92a611787e82c51585fa2779fe2331a3346b1 GIT binary patch literal 17755 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_5-home.jpg b/install-new/fixtures/apple/img/p/iPod_touch_5-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..88fb3e801acb3e8b47c92d93faa761c28b49bf7c GIT binary patch literal 4131 zcmb7GXH*kgw4Nk{4hax?FCq$P2pvKflz>R+A{{AGM9LK*pdeL1nj&2U5osFfC?F*? zsUp1y2r3sy=uL`wQSZI){e64(nprdZoLT$(c01$=@;m^?=;`YLAP@k6C>KDU26O-j z82n2qLPb$1Efh*c1*NB8H4|8F6;0W7pYI1mm2i2z_05QGIpZU^`&PJ$sIiU9u# zH4O+#O9cVbQOw+w?-c95re9Am1p$aW1u#M=JK+#G1?Wohp9M&6XHh|kxzse}h3}=y z3|Hc-ZdzaY(Bx5#taVG`tTpc5CvXeq471-Tk*uF319}>@?>;6B2l(F*YY5rT4B!tM zJn}XFtnndNuxowSwTD4@vcEgmmD(LQoA=y}?Xn1~oQk$adAQq?v}PH6dU^LicCKP#HL#mFziq`{Goi*lz|TLt zc>P9?vv5L&8@1C`q}w2mKv;>gTD^V4v_Nl}8~YE}9->k5qEXS`eqRZJXbLG`_R)L% zWfkVO7Qs?gJw2CC0EhPjXDEOo?wGvTV^&otV_yX)c-jc$Z19|F49rXEb5Xr+~FQ4P+a!MFl zBzY+GY;opD{1*DK=IaET8@HCSL%nVyuYd?%dNY}C==vv7y|5q8L>6wczJ0(YklXh| zB;7G{IJ1y>*y}b1^f1Y8*yD##(;}O=?WS~JL#Jzer=dbfG zixuel@n7AkgvL_w{?DVi>>*YQLCy~H+@f{q41`Zo7LsL$cbi>y)&np$mWEcnpJqBI zt{Kit9uHW|?>%CC5TFyy)AFc)@?whQ#p7_N_2T8_ODTu9X~i;_o)qXC@}b)OnX9xM zBD*Wvcu~hPeVRlsZ3DV;;urjQcTkk#eCtrd*!pOV$5R!f(~-?gohZbBs_%!HhcV0U zlh!I1p5T{MaNBQoiPq1J2taZWdq#Y3MM=uVfzv9dF^@hMPtN4{AKpmGR(nG-5#wM?R*=rnI2{Nd_THYBtPX|XLzpQ z4l8)CisaB3*G_-Q-1fqsQ{{sOA{skc;EP_N~ zWwo>&!+)coEYtw)d}!%=J)lNxrM3>7b6!s9*=TpY>UYl2K!>qkwzWf{xmqWUCbZ>o z(oW-PDPn$=vL!=CVLt8Paki!78D*`e74$xk6V(WyRxuOsYgO?HUBvp~K9}ESj6uW|s84 zD8Y(oa%srp*1XUDNb>$!1Xq1cFXFZ|@%7UFlHW5F+8LeNN!L$$0iQ>PudnExnUzBO z);gBHDz*?Xs*KRj4(4n0PBiu==C74x#6L{mJBy-|sjrRrAx&A5Chw-Qbmw%Re|?&Ksfh4K-}z?K4qh&4 z(+)qoyw$JC#WAO{p@c@NR$av(55<`$oEbM5vE71a?xI2?$Co;Wq@EC?QmW_vSi@S+snMRf)>rmn!*%Ac zxG9N^-sua-vBc~$45TP_X?`-7D$cTF$;gmUTlp>xz5hzZou|nYv;6!_lho7tp+>u_ zriyh>Up=)S2`#(oD=04L@qU{9DE+7Bpwm6Sld|9Ul3Lcj*0+VCq=Vlr15RlXU=RcX zrOe{r1qT9Hgk`j_j^Vy3`9jEw)(vC$(B{8mLPMAg*f+qzcKnOXtfQjICaQ=j$gJtH zhKw2+@VS$;d)#&FUSbs)U^5^{#r+k_U%*p*PCefnG^^A`Bz3JEw`uvpmK?n=G|XAH z-%3%j-)BmhbJ+GB$xY{^$BQ`Q36e*$^F5#UqdtG|^11H6$8u0f+&L`kRb$eFBov$G z2nP(wEmefMF$*+zPM{~vzYSL~roI?aEOJ@}K-bP^;G1T$((aR7>Q6oyGpA1>RYQ-Q znl-RdoB4kG4@(yJU3E5a{zj+*yn4$u1+VZtzHKEvn466&Cs(Wf<)ExZ=i+n@ZE17~j3wtA)CW zc>bXW#{Hry?I8n7pWV0{NU`#7!W4Ex@+*G6b_pdA*s{-tUb+}GW*BffRo)`aYyZ>& zTQ0%*Oj&P{iYn3|ERoyRNBSniXdFv1oQdV88!SAyv2T9DZhW<<jcdb-}J$?waw z7Tm@|rft2Q$V}2{=vi@nMZNTim!Yjmv||QuP6f&<} z)%@m$FK7=nX3Q(NT3NqVu1xGTc2YiGvahqYVxH;)HQtc>uXL|6(db!CIZ> zAdiwLzt3*JlL@{(h^FXf8#`mA<{dB>ZW^1Y$*B53z$>#w=Hs1V*eRe*kmukL0!;f6 zINtzgL=u?gw-f&C+WtMzeq|>Bq5W^7{mxFTV+vddspXqr(HcJVW#dnF{u*fTjcr{U z>tdzUZ#~Uk7hdJ!b<1s}t!$lFe?()O&c(0n^wInGjUTa=nhOMkc1)eGKB`T!DpNn7 zQD0)!&-10Xkl|I1)X!sr6|SNO9a6wga=gl=RIrsn;GMJ^`i$GrzLP0RJ@!uqa@2r&+LJHKr-FlDE0&?^weTf`GoY#12P8O^Vh^^9@0%V{atm3OF zur)>$uRpIe(BxY5k|5YS?AA9L7;X?-Fl(}0w}PREja|cxr|*N>szO>?3V7^-B>Hre zRl2w$ZuMMg>eZG(877}~E*BqvlnF9y_9D%f!e0Jj`=4GwMPd8@_5wJ?*YK1Lp$g;t zR^*re?FI0k^xt;gr=PQVUw5AM+fHR*UZDDVetOaUvX#mXyTuNE(-1*qZAJ<@9`6p8 zl{+b6nSxo#8H{;X1b3ZmQl%Rre3@#w(^+^Iota)vM@bW>(=2z@*FtC3&)K+|*I@Y+ z5$keTsTzYRoM}}ob>CK2qd$ZGDcbUWrGBq%&KZ-Bdzkkh707^xTqn1WdPWqt?EGD! zR-x3Xm50tdnsxV~IpQmR^BLWQ90_eidgMe_;^lR}RjD(PJRG&ha|Xwty->3v3&U?2 z($`}eg2XzXHiEp0xJO8|>@CI{sP>{P+FHA;?(lWzjt;$@C_4{@oUo~4;U-0E ziDISh`)wpzpq2h2ih$jCO9pOO=so{(VoT38l(8_3Vv8<^rfv>;_J5iz1{v{mb( zMDM_F13uWl4E-W5~7@SbR% zl$&oP;x_yIIN7}R^qA{4$FcgnONz;E#LGX=q9w0v#z%ayP_wrng}GM?1%ElwBLgPY zWr}{Wt5o@{BS5E>UK+Hp=ZBRME2NbBXzAtWf$gN=D1RX6@hkbZW;>9uW|mFp?TQPb zT%CnbmQU8*osw^AB!Kgoaq&#rFW=P%+By|1AtL7A=gBr3omMkNl(*cP{4ibZdRENz zG0-EedMCO^J2BL$C??a^i$I^H^e&^rx=s@3G8p`~;%YG=|xQViPCc{^{xGN!llcwRy-Mqg(<`~`M5YvrExNi}U4+22Ll2yx% zeN1HnG-N=;(=5+!Xd(2Is3G+#1I-=q_ik@VSd+}!NfIXQtXYZ43(RBB7|$MV(Z{7@ n2D?%CPxhn^p23JHy7X8tyyR_%N2Lgh{s(^hTRlHvr`_{Yv zysDnA-m9c{t#7LKu5b72{OdXZT~<;?5S06@KE!0Qq~8~}ud{(HS8n70cA4+6o! zfDqx}VBwJwk&%%Qk&sYOG0;&^!Kg?`=s4(LOe}0{Y-BWCJRB@M3@mJ{zk@&l-}=CS z5I`UVEEFUZtpD%y+6w@~Loq@z0--1X&|oMa80xhjK>Sxt5Y%6N|C2yK7+5%XC}@PY zYJ#^4;Qv(%fQA79pCzv|vf&wbDRHvtXJ z=N36!@AtSjM`+c~o2DB4@r``PEA~@xFs5| z0BJiC;+tIu=Vsl#GSs8bX+5i`$aew@-O25K0mAQ@#wTv~G>qH^DoWyZ{unygn;g7k zcm90J2LLW7eDbu$S3CEXQqLE0d@F~{JPcME6j2AiE3|~HB~ zw%V>KmUP?~VO)@ZYmMY-V&WhZ{erhkQLelNx9Cx25ltt(QwRWnUfjd@BF|UEjng#p zfK2fIW>|B#!mSMZT3!fwfZYPO%!@v`q>IIDi@BPT?>V^K?Ih|&cf~ZD(G=%i@#i6d zrtCEh?^}D)R8#KeKYYy}(1vt61M{K3$?A3O=C1Vvr8d!3*qfsjW4sasu$=w zm900hoeM1j94(NS{ic2OW2zuee?1Vy5BTM zrWAJ#W04b2v27R;7ciOHeVC+gsx~Mmw<+9Uxy0X*0GB$)UAexVrD#qz zg8l`4*7DNMN71@+3->!6D+Di+O~=0XH{b#t>$PJ6SMvuWP{ z)&~HfJ!BdbkB!A9%`{oa(wf1KRvSJF7Nm>5d z#2sT#gQC&84v*6!d*v|$@1pd7x&r`MXL|SJW$*9XzQsHXc@s7jdd$x#J$msm$w=8u zr3pDZHz;!D2$jfR^4?)Zlcm@@-meRAsLkfa3!H91}e(bWHG0C>9aa*VvczABzjtHebJmJ z;%rF1R~@yWO2TFk2?N_^2^!W{j~wy-A(D4W=L9{6RKe47a9=f0pN&puX`8Md=H|Sz zZc5vlxOP@Qz5AA@soZW0S^LFP&CX81yE_$BY@#TL4%3}0j4CZds29nNhcz|&DwjQv zAyKaYMeSzJm|U2~+|8>$q#I49@8sfZgj#m{IUA@XEt~O_f6lr7UUkeNR~2X8{O~?6 zS`~FnK(WbN$2I9CMKl&8ht|rhN2JRRgwS718)1!h@tpbLWSX01H<)bREy%&Q_Uamm zp7&DCyQK2Zf@?PTveq`XjL7je4(pyjZ0w!auVkH{NctVW=lae^($XA7X_RIy5mV+4 z_OM#hT8env8^uprvAE#w{YG(auTtqBBZRp_K97->KE$UsAvrcDeX*H(1u#>3NBp!LhSTq0;q>2T^F{|$dXH>%1+V>|!+*p`$0V?Kq>{;Ul` z`te8cZ+ea0`X$C+awu(K+g004cD8oxnKEnh5@COe(p78m-DnU+^OqrARu1gQ?Tgr+ zu?L54F`HW8tRy7(jC*oY&N9Y1#SP4<*?G4EdCaLQDvD3Pl@$bU^^!(QMVUWcWa`KC zQrn)n;VQISTdM|*e^mTt-^(VRwjk-l#}3|c-YLMHoARx9?NF5coR__({Y(|&vq6P6 zK-)$-og^QI`>CwoPM4cOm3bxekw-3)*}Tl{*QC?#Z-N28Is0j`)-9KCDy?Rj8aLS* z?LRmADWQ>ylqWI{)>p~7f9}091DSY7pS|!H&_>|zyB(RRA|sQzB?P;PNRry3$G4nFn^D=O`j z)kepRRyoUcx8is9hS;b}e7;V056W|hS*euf=#2Vwbr)CJ{u5=~xCA@KXP_kN<4ib+mN)A6G&DPF`Tk5M^F$o8kiU-%}2KVnkmiy*}-gHvN;U5?(Tte_YiRNT2xc;*6AT>^dD~@FX~L=1k_B4Bntg4EiF*7w+ZaL|&sr z$|CAKdQvtzQNL@_wdyA{oz0XsEUnoJ{^?ch`1RNn999Hzvi8Aa;gEbPUed7%8F12! z!FYPSuLiw;hwdFoM-xAzZe5w4dV5c?5jigQn{&-Ks1;!(+fv5J$N$Pl*>tp4)grJ?{dWp#1QPgVhQQHq=%{8RlE7B zU1E`<%1jf*V}osNdu$OD)xy4zQ<6{Ixvxkt=&n#u`p|Zj9?5v(x*W!pW>72Lsyf#7 zB7L&!?p9O^UW7l(zH$^34Sjr!8X@0R@5r0>OzvFCaVluug!+!X1G}oS*U4@vi7-yi zy?YaROpr3U1JpESwlm00S+(v`zX6lC(a(q*jB}Ep3xCGUBa*0WG8=HbKGmQ{kXcM`gxw6M3@y6D5+WV1Lc1zP&}uuIeu zvumXXFQXByhg!PelisBDQ1!F1uWNlCP6_v0%y=q))Mm@Kq?2I(!FC%T#KQ3?nM-Q8xU<>$3TR5n zbBdBKva6|}vRMRvE+Gy&xFMHjZ;w?=5qv*rTU-+P{7dD-ZY+_pQ$mdj)$jfm=`;p{ z9ZJ0_yThzWj9mLo*B;fRrbniSSQrQ1Q=+<1ETgxc1d`bW3@#e8}b-Qe^RZ zHoOAmX9el~swBj7@(H?S$i-h!={}mVi~K1-O<%#nRx{ieloT4_K}cb8Zx5C5tNeny z9CQ9q!|7KUOIpDp`5{uO;6eBeY34ViVE{01C%u3BEN`bXXdoB{9fKSbi;Rtx{S9df z4y8Iu5iu2$e}IPm3-se-HXdWC!d&KaEFI-6{T$6p5}xjIg<82viL9p#zgTag=+P$k z;YAP|9a*O80HrI?myiLgmd@v=aeI!6Eu?5wG?^I%l?s<|S~+K0PRvyAd0GXUVTNrn zE>9gDGQs#2nK=$d^E-gF%yfNvPsyMwi@(B> z#V9pHkH&lWd76%^@qy2z1B;iz0{oL7HiQDchqRuxkvIX*qkVHIN~8V2au|G#7%?@d z7xyfhv`9o7N{U08Y(H(DG>I&+T6ETYq3O`e?0>B)#TeJYfPy)H^m)jiP5e_|dH%H` zPHj51!g>8JNlQ4h@o;7_a@9D)OU8Sn2=O3xq(H=Ws=+@URYEI**rUcr=UweH_|&jL-{m3XE&ch3TP_D?)>K6x*f@P5*XW|3L?@xyOY%NC9k zTxxF{rJLD;lWOrLotl$sO}B{_fz{D(BS)k30v}y%-x*DPJNX5>)B`oBlg+tORy8T7 z8f-b4%0Is>jn`5Gsd>iZ)?M5_)`I=s!H|4gqk5f2cdD=vTvAOZHC0WpkiGE=U|V^f z_zDMU5}QF%W64Z9aFfzusC1KSRLIX?Nvs%#Alw#aO^9xlN4F-QeXn*b5weDeo~QDD zio-Ym*~v_iUfNWOgR(&R3C-KSr2B z8vdTh$H*#}*mozi_3I^=3lAL8vg~IjPc45Eh6<`E^O+9 z5Xvn3Vla5jK?M0FN558^5Zv-DD>~OIOkJSrWH>%BI^gOF>d@I?;BW`Swjo|o_uH1T zbrhqARK?v3af*k;@#1Zj9yrCGamA(cw_2%R>58^H5Fy(06#509YqcIMs}E#<&l6xg z|KsZWYdfRNn8>tQ-XM94SPSQ@`0x9`_+!nO{jmT6p#JZe5QB)sKC*LZ&1xEO{((H( z-ba2lwjmaz@_Jt7wh7l<5#4rd!de9VEvVoi@NDub_5z!Ble0o-h34cjSdPfC(E^=g z$a@=qPc}Tn`BWyNmD5y0w|PQ~B3Z?2)o(0geDDSe~0n zBvTu7SMFD2RK2zuV{ZdowA{^HFZd){Xwl4R1yPgF-7#P|rMxgK62jK}h-&|JGR!SR zhD=$7AEUy|MrOaFvf9oD?xAo?bpzwO(FjX}=n%gc9}!O+YhzSUqZiN>H+HqS} z$GFxz#%>&IWCw^_x2?x9k8$Yq(Mw3qohK$f;0O);5q)XDy7%BMvU!q@0}?~2Qk9Jj z1NKkxPNnem;}E9xSfY*tt&``Z-et5Q^zei?@NL_D7%j&>Pi2E{C#pDea8Q|cs?<`~ z8|1Az;>hl->A%VS_N}4aO9T0{V%pHJ*;qnZc2(FYMboeK`Xdw>Lxi?=EP#uMe<^f1y_`DcFw~yV80{lj9#_%=aL`WH<ULDdPVErsK5L33pU8Xcw*a$ zhwMOK8~*nf?;gS3OQ*r8pbCznwS=mJU#QdUnq4+QVBS3xqSZKTI1`qJO~DX)S~2XY zc$8&TVttk1u;4L{rJNlU+U11ME^kmRZq*Ym9bDBD4#vWx)Ow2zkJTDzSle6S1$%hm zpSyOO!X2~D=%Ra%)2#heCsJyITh5tYQ(EKchGz5M<}mZ6Ow9JPuYd-_H@iiT{${73 z-q_s#Vt=6kU~)E5bY){l*1&{bhs8Cf#ElLSXj10(}>YUr88chZ~j{PIX)6RvRo`$co+3kTf2P^#Xg<}E^{GGT0qM;A$UjeIR8H_snr`;_v zl#ZdgWfdB@93ye}9{EEP4mh@Di3I6<_UHbXcr=oWnD}{%i1B?&0S!Eq9BdwP;2)w| z5f;gvY=?8tRHH{a4Ao(7*Pp+9$mRC1brVQ5+}wK7Be!@EI>tjv&HrS*RPC}hYelA8 z+~km!EH;f4!@+-y=F$=%pb|l0nd%Y6(6YdJC1s$R+~EKDGa3D zteluk>1;E%TVK)P3;F6t+spK#4tXkeJ1=IHoptNyHuUJ!4dDUV_{R?xCn9-KOtc=P zk7@oHHer|)?3WG<{ZP2PB*tytapRXnLiMIUVQfmnwUP-X(_aDBecxQOE2H)}I?4hs zB)kbK$k(Z+q^b(kdK@Z?Cy7g8uhDtMR8`5fuL01k+m!<^?@|-+&K|r{P z8f4p3Ox|~2k_VDpzI|t98|34PTDy-USpc_jarcY#HhiQ$p^>=%YRWt^PxZyfa0iV- z9Z!sLh!Jnf+%Zr3a>C5-Npkfvl7_LhV^=buq}9FOjaFA;O~4MXF1^GY0frY5XZHZi zSXD-E==d13$M>B!D{ZZR9Ixa9)o>B&<166pT`UDc$dZuggjxKrVN7U3@DWzge9S^c zkkD99BbQ*}N^XSGn2$rz&)%f2Upx>*XA%pUkV|KPM{K2S>~?;i6?gphUDD?=csC55 z%}*6-)l7Z>t}`>^%+!zgo;(6B+s9BuV|R&P0fT6^v4_A$Vv3b7DobCj=A`*NwZp1q zK}_Lj6lw+Mj6w^MDm6W3gu|Z~Z4z!PK>Q`I02pS(V_zv*&p~rCDn)ARdeRKnUnWn# zqy!q{e%L-urdbf=PJ+1M>9#y*MDGGUreomK_@5*yK*GDc-V$P_g%_d8v>L%8E-Jz4e6)7F{h@TF>2cP6GGCg zLQUdr?1QUc$q;F`mPrxz;=$obm26tnx#amWZa*W9pK^G;u_}xLyo5im|7`l$)FT>I zP`PUTYwH?2#+-N8bh+|zlqokDJXze>bULabCD^d5#$FXmeKu)_{{EL)vK;9p#_lDO zcGd}slSFNHCAC+hpjh)LgoSLx52<2R5zZ!wtI{)mpgKA?LI~CdHnWl$c5yMxSXKcN zty%2CY#W($Dm&XDnkqxMiR^QgQp+tWcPeQ~w+gkXbJ@*4=Tm5C+3dTMZ&Ik#4{D#7 zRGsPvI2&%V#apK@ey}b=QcPaBPq0HZ?gWd!jA1`Y`b`hp3av%7c6r{VS>2jQ?WMc| zv{enANdJg?DI5jcFGKPb)jlSvhP1_2F(Rrw%x(SbPwn}!3tb=(0;Nt+QO?S|(v16~ zkEo6=j0%@|^G=Of2j4gd|A3J*8M>6C^pix>P?@%L3@Z$qAzsyC*X%b@v27ERVOHzz zv3H!X>OEPTK0-0Hq2S1?uV3_?-TC>(&Zw}MvXJeJeN;b9>_!)-NH?Fga&0kpJjv>L-0d}EV5PUn3xqb+0r;C z23<0d+nv|xKWdl>{>HDV)!gq18pLLH5_EM+-l@{1hQ$x51ba#XF_cl;M*I63FhCOT zR8n)*D(5XcpKwT}VWXvozbQZL2vrgP_DX;%`y@Bw5KC>zXGdG3=|XQ7(gH8ij0;zS zclDq&)tJXiB-o&w!KlH;=M18;GzPcrpOCLDKuI;WsNz8LjTmaR2n<)O45l3&bWWX+ zA{^3cj8ckuS~d@wSb$BrW8QVGIFn3{4q{_xh%J~z3_Cj#d%1>5&p)$mElK>K&hEfh zN#aMp7^KDF7vlgIT+SLtTGnSw$KVX1KwH8nFtD*Ytmser#RWaxjfKJb8`w+ATjaW_0V5aunu@i+P1i%iNee(U=y29m6|JkEI}&Yoz$ zNqy*=hSFyti*jVoXWamR`j3fxZVH3b^}4TQ001W4P4E39X>A_d@mo_EbU(Qa?8nC9 zh{rbxfIODFXNu#ZsD>f^R|Gtg(0I>dV%4H||CLa_%Pwc~94Y6={FMM8;TWh+b}}IH zKN0{yq!5>TA=UG5389^CAD#JY#J@%OA1hg3pW%J}$9(_i-2Zugb4}>L|F|X~n75$$ zzk2@Tnkb`-8apPCu@=+?ZYWKP^ql<{)rJ1zbH#4Q?;kwL#IdH6Nkj4qD9_;WpFUnc z&PiM;=?-qXOL@rkC;3LbSt!<~#boRNJ#Z4!cxc>C7+2*(_}UD$szc z`|Q=|RRB=TD#BC&SHXyAXkBBvT}n*e;AN1#GagB=>a%?V6M{!%g?^nQbkB#mg|4#^ zEP^;lX#$_Zr|v>VjkeC2?5PY;r91QbvWasn36MUnmS$<6R%t$JA*dw|zPBYZFsHne@fIE~8iW%4-gYmn;iKxfj|F~`afmGsAZ?0_UCrF4JT{*5(m$0*16Jn)VC4C!asZSnB7Jje?W_>&8uRFl zxhc4IQTQl{5qQx^W8pckP^DDT}2{?KovGThte z9sle?|Lyw+k|h+>^-P|zifo)K8GZgYEd?d~hRL5a$SdHEFy*{SUrSTxsI%?p$NKb~ z>_LC+uzoG7tuf6y6oK)%7l+z1l87Ttf$mw^7>rKkkqP@54%~AOY-@%Dc ztGDd=xnAdw*>%|^AuYIo0CWQ3di*Omq-$YT8-o5ie$3c67HqnxbXVYsaPNuUVjW`4 zYjtgn*7AYBhYQ+lm^qKQ00s7*Wc)#`_6Fz!h`P_-C-LsABO9WxIxHc(DYs;Dtv&NH zDWamB1~i$0s?Lyk(9-d%zAa95Iq1Edtu^;X$^JRzj+08RUlpoX)uDna^eHBejJRmG zp!X=4)IXF%4QU)n{yqp?Dg^b5o4^FkglEIgwC?6cBGd}8qPZaW1VRl`n@f++B{{1| z2tg}DBBkupAUnfpkgfe@#V05cw-0bIU%k`XtKdfZV!o)agff5xe!DT>;K|h$_~@$> zeBVUK4XS-x(-T9lfcm@#JfC_v^M23LnbtzYnK)wm$`FVU-1>NPEv`xOOj8)dfQ$6XQ*F8~&gxS~fN33KBeCbv&g>-^Y5&JS7|J2d< zufpTzVg(q?(}Yx9zx&crg}z zHjJQ^g(~%Rpv{?~BCT6COL5v}2QN9}8>@a#Vr83mrehNDR5gP7l{1XX$fxdfnq9I^ju@%?APdy;D9Re6 zS?Lx37O|5gyDR!0sLSQkXT+eSOl!x2!qRRQtBotmhtykgchR+9=USuAJdaaNc^~=; zXs;s{=+gkhT}|S!;gq;4S!o8nztjsXr{sc6zssLv?g@%9EfKxzXkA^YgTbyE=qj(- zx@M^7f8NUqUzmCz-tbUCf^ALXV9wdDw#d2{o93UTpfKw3SWvpDtkkV@!89vu`Dvfb z^}!S!Uu&sDxI78*###M##12^tYJa)8n7Z^ly4LJ{T{Ud!wa$-40)@xnescHkC5p(F z2~;tC8B&CdPt$a^P+KEKkdh znJsE$L!E4KeNl`cSLZ)Y)~Utyh&}}KB>9ZUF)gUE2&D}7y}!our}*-D*V)uhZt)}%~+Kt2M;Juf~8 zv?o5b&gY_&S}1P22Q(%s+b2Gz;XrBo)NX2RRa>!tU^{4#-6bnK(xBwcM;u_+kBbPR zYy{!#@|~xsSdKCgMDsJm*x6qIC&UX|O>~~MIA=;!-O1$aiI$UG#rD$mZ&E5aTgNdP z`$4Bb-%Y`c?^~Vo;1Dt!IB};!W4tPrMaFzQgUR)Jt}cuH9!JYMzB~6RVQ8(GEztfw z+ATzY2vjV#aP_63>{?)0wS-XFy$;;&Gcg!TdIfV~f*OudxD(hAI}jm?8LFdORihn; zz5RT77k(RRL~}WU3aeW?EH46}eV_qn|01(-B-F;96pgi7A*y!fp5JhUt#)k-qJ@JW zhJu+Lgj<;4l~dOFSrPQDKu^*cjP7a&n=940{aL8#O8NOMnR+`wc^s4$_+ZVB{DSBPpF5H@@H(F`LBUzi(a z%Z@uIp&LG3N-#9N{c3`yi0Fk$S)DMzo|kUpp=909R$Txw9`Hf_S|8JZ0I!STE<#DR zS^qi2rkhAY!@<@W5M8Tn8KJDnY1ncuj9vxP)nVr0uk48cQeB97r=%f4&o^}}n!Zq# zbWTtxuy$yyC1`kv;*xXu5I1*o6Z8sLddM92eJ0BidId~!T+NYPv%-pAKa=@{jK`EL<-;(K65x*w<0A3K= zcl~5Wk7X-5d+3*q{glC3{0B%X!4=@)=Edp)&+{t)+hSLnEF}Uyza<~W3HuwiQMrBZ zTsyaIw#b+T0b*0EqMb_5M>GVp*_@4> z>y3mMX~GF@w%N8BFD$SpR@O+9|1xe+#k6Sev(~}bC}qG;4ql}pyC29|=vQg|AwR(4 z_6kra8_aFVN?$d?^0;?1naQV>h$^i{W0f_^*~$u-uZkIYsK57&4HB~evarWl?=Vyu z)2HocLshY&AYWo(53i*&ex$VuIA7HWyo~Bcr-vgN{$icHj*V`)cr$Gr0nhb$(rxD8 z<&g^W-GFfEUG5GA>elaFQUbXuiQfE8{HPxsp*LZ;_3EM(X_aZIMu=_My?TaYQ6g`Y1wQ&L4?GaXd<*Dv zxoAnat5jeE{!Cm-3!AS0EFH-c^vtixQsP>f=N}xGd591x%P8XxJK^vo=$ra${WfNK z6LOBHJscILbwwGRu0s$&r1a5zC7qU(PtiS&BKU)qptxGO`$m`%=b9z6!I>&nX4EXf z=I&tDG)8K`Hz$i9?-yb|RJ5)RUcRt&yDamk1efE`yhC!@dKf1zYC^}0P(y9=eC!uX zud-*CG|<-RZwDWF8@9Vb=YcZ_T+s=OA_~tuBQ!LFBSOa=7u2IeR(>2|BetgTHdCBt zr{HXuG|VjH&JojP?UneDJo`Ra)ZUJuj5vA%9EKaYw;kEW4zf>~;>hjKPxnXfulQWjvY&AJJzK^;JKK>f}=NYD({6)&|K zG-XJ$xIqny9BFp#irRfx>)XrsvDPG!3WFVP${p*w4fBv3jQILPbFxL$)-nx?K!6QV z*7;VX2De3pbMw7e+^)@ctsx#apAB+(LD`=2Dsv!+D3)<5!gtAfui@mmyu-hzrYSe% zJDn{_f`ysvvja`+L%&fq0&Y8_QlRf$*c1B_YR1AY#iQVG@_0mGZ)UU+|0y1CwXB@O z3CXllimuTKH!8WOQO-RnE#Yq-3T=9|a(#MD*_5~P?F)ny$lH%~)&}|7^EOgAgkdxA zIw)72hg~$hy|~CF)>Zbg7mxThLo~28%dVjL!+TlGcwPrdesY!Iy37V~E1M%8R&$CQ PTWzZv1j84O*M z00>`zcmOa5kO+k2h64rPXdD`iLZR_kECxrw6A03HX=xc*IY>s9C@U=uDL_Pd5}8aU ztXQe2KvI+=kx7!DfJpco6j}<6mLkbW%aH!>5I+QnIKUBbM1phxK?IRRQ2Yo`0RRLN zl$853a3C6kMWW!O5-3UjOh_J32qYR5_X7m@Jpw{Pu*@J+fLYDq8^c*@CL#8FUcuS^ z*1^lo#Z4jOI}RIqlxobxx>IH7DXzM2@$MdTCD^&PW1cJO&M){570p;AI$Zq zRd+Eu&@ff2j5BLDwc<2LuE4HT@m{a7Hd}9zDiG+FxvwcNylmDtKgek`&4?yiR_Ih; z>-M+7{%K2(oEvm=Z*%}rKUXTwQA$+37qWzB_mxx%Ht%sQ33_dAz|Ag5+q`Ga zu{`*hYMIi4ObHMGZG{TL~YH1e;#nlA^r~b6!#fam|c(W!r6X zY_4owx;Eg@5%46aMzi-&86_&nqHAaq*0EjGsbbJ?7@4U4GMDazQ?6XCQF7^ouZMEw z#>ia-Zd2()C+RgrK8@Hu+M*GGa-b#)>pFca#g*%`Q!NZII5oi?h zM+X2RY(C2eqUy4*#_)yj8#+Jym?#t4d_=N73Xekb${54Rk)=rRpp-uL#7Khy726j-K)`?A=ykfUvEsJ*x$ zC&&2MU`OCXp3a-Gc=MrX^~6lkz0QpDD8`#yT&8l*{^VYf?}4^_&AjoIa@psY`Q7!a zj^4!WR(@XiIQg8}*FXJ-Hk$6AUz5)y#+ijG(N6W+8J!Pk)XO`N zu*boA|DtW)3u3D6#kdL+3p}fuTvNR5^BEKCuaS;E9}is~8acQ<`n+Gjxc0|Z#Ms2x z?X*w+5l=@>ozxRWKWBZ((rW!Ce~`ONUb(J0yqv>@9a-LkfW$Vak*V8g`UO3_rPR|d zTwP1=afsw}(}}RRAOibq#e&P;LM$Kl)z0@+{<5u-frX-PthyK+z~A!r8&$iiZ(OBl z-L(S1d5*b}aKKji`U+m*NZ-Jqw)9~a!A$6(X}`10pBt33bFKu-GuRa_B7@x`)pi(2 zTL!|r@z;ugfe^!t3Iq9_qsu(W$U+H9oPG52`9=IjDoN%8``PoCnOoYUGT7|#iD`YD zb4-0!x@$$QhDdPNF1_8{{Z)Kc6R;;9Myy#rF9iJk}z|2!9J-SG><=dYAL87$E!8?^YhUVD^;*)m0-k4joCEdbq-IM)si> zJ8r&1wpC{&*d<^0;Om29UT>Ftt^eKf@mtmIp)mZtW^-$2bKAwtlL(@_>S*LWEB92_ zumrRh9*ta=gPz39Xf{Zh8l|neRxPZ(@9`}1ck71L9>9d5mr*w-$uckC>}B;KGmDRG zQfJk>(4?%R;rRaG@Sf}vD=gFgeIC&@HoaF{ShQ&pw^xQ4(!VP!^LW-1KrKVSW!1X+ zc13qkK~q)p`~b2Th&}`P9aZ3RQxr@EXKbE%*GmmHRs_2|HWXfp)3x(g_>?6Q8mjT+3Awd<>mBN>?BC;FNI6s% z?ZCU;HGkr{Q)C>YyUwZQsp5h`g3i&!;sxi~>qDkg4QtBqnT1cc_eSV{z%)^(7@l!A zMQg%#U%JuLH0fBTOsUj#DR#ONH!7uv{YI(!SKlo_35t(OeYfRl>U_EDbNjf_l~a$Z NfiRy>-?-ww{{YhwY0Urt literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_5-small.jpg b/install-new/fixtures/apple/img/p/iPod_touch_5-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..61ad554d0f0ce492766143e23c576ae08452c77c GIT binary patch literal 1283 zcmb7@dr(wW9LLYOk9`C8!Y(fn*hK|lh+PC!;?aUZvJh_Zu)zj4YfLm4&`JYMkRYA` zHG#|+596UM@d|LQ;q3sTV-ygw>wvOMkuMAp0;cWk8ZiCY@1DQzx%cz^-tYHZ-Gpu$ zP$5D4g8+m8Ky(3}8Uz9y!}JRcffmUkNrE6bOeTZHM&T6t#)zST^G&_uYt&EE1<`}qKLkX1Cp_pp z(YCWOy)6BL*YeF4YaL+8hU&N0xEA^&sE`5}8c1#kqC^-FV^a2jHWQd5JPV}F_LZ`*o3V}^L1xA3QpZD8nA`hjd)wJ7^H&=ZV~eVd>NzXlM@ki3@mu*`p97Ub zamkK;wD`8HpA+G>FVQw?a`>R~wK)fqS)^@8BW+0F8`1z`05_wB5-CB+4azu#{xD10 zb>K2*%R^=U=#p5X{bT!FzTixx)-xt~`>(S$;fQ2Q1BjFQme)rgBW)&>$SG3;2-AZC zbK15!o^;7i$czYIP4bh0FP-;%aIp~qTu=-UhYW(b0l;uTn-Y{zBypFLX7=)30g9xe z=8=B`VfbT zX6&?Uu9qw^UQ_>)ETvKt@9QDI6R>tG&ZYnL$F?(Ff>)iNUCZ3!-empN+~KJwVKytN zmMJ;QN0*iIfRf+hN7N<7$_a@OY26+_1R@~DKN%G)8y&q-^Gg1Fng_vd{-1Z>G? zarYS6qDF^czbou+rg{M>8V)AV_e&8)Ox|vvR%BI3qi)devst^rsx*y~qkt>#8Jy~S zr>gnlFk$EK6+e&l4|*hMPtX%Jqmikhb0@pb@Kn=jZ$?jP5zmg+pHI~OdUF8MKwrEx zsk!F`OHsi?7Kf^WNj#u`KJ3U=3H$;ehA!D1M7rx|*H2b8= z=ANe;5mKt;+2Il&>DSY1(m*FwZs8@zkb{HXb>lm}3ud+V#aO;OTykz}$WXAI_;~BK z1=?K=k7V6gx+=3fUa|9j$7yC1x24`mQ0N+2)q2CBY^hH?Ir+rul!iVsU>~k3E!Y)Q zJ~lF=GV#sDRgn(8dozq+;97=ecEsaY?Zf@uN-U?qJ5*Zy=-TM&g;U8NA8V-%>^=H& ZVI4NyVf}Z{A*+>%kNCb1zKGS``3D>HoxA`5 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/p/iPod_touch_5-thickbox.jpg b/install-new/fixtures/apple/img/p/iPod_touch_5-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8c6dbc048bd378b377fa611f84f98904c34f90e5 GIT binary patch literal 33248 zcmce-Wk6jq(=d2(cXxLw?(XhxEe;oVr^Vgf-Q69EySsaFic@GQd+GDM`+mFs_Rl7{ znK{YH$t0OfW|G|Zwf8*$s+^Rp6aWki000Ad!22dZ8~_0h{t-Y95)`0dp`aikq2OU) zpkWc=5fKsK5fG4&(NU3*(U1`kP_a?bFfg&OunHqbAR(aNHvotbU;uDb2vkr@UyJ{z@c*xn6de}u5dfs<|LXlF^8vmAAiu$W zAn0DF9{}(#`Qu%H3@C;S1S902lp$ z@#3?-q^RrBGz{lt8%(u9aec;oKlE+xJSs+K7JCqL>sK%NodSiUvrQyz$)y-?Ous{BFqy&%xWd0Eh3(!?8*I-ZF=$V+E#9buOT7NO{W376*nAq(! zxfSyf&i)d+>=TCkmT*6?{ED5I2m1=0mpAHP7VyiX(~~>Q{XWFggU{2A#;GW5!Tpsd z1odj=R}KuYZMd9YQ9vu`)PD7*^j0`OyO550a=oc^U7Dxmrj>PkO4?_lwB{X<2=@)t zga2p&A?U%=UTQqb6q#b5^p?mzx1J~01f>9%!&~GJE?Utx^io<159T^sna2x%tDEQL zx0+wNvH55lY%b7%GdCX~p)OMcJdFBoDCl zDTM@d^RY+*xdNe$CZ144f11*>gC(s^B=bqG$`n>1HHqiH9ix0tpXbiV?yTa7bNUK; z-7jcg z%|@~Wi~X=Ezj0ntEl>bVcb9!v~GV@N)FF*9L zT>G^1f1VMR{PL=;{n&>63ey#oJ9!##bLz%n@)T-ulIlR3she3XP%RY4z~!J@?KI;z z*YU%sXx94f>E`CNPvp<+gN6M}Arn>9&85!dK%c)+&V$FqJ3#IEXq#v~A2iya0Dyz! z+$8dI8185@`@!=L(4Ki9_|+zjoGREmclPI(MBQ4ip9}T!6+73h!&=p57K#wROI(xc zD1YqJjxP;&kEp;EO~}OgeIG+nvxztP?=#}owuEs`e&SfgXZFPPhx;N!n#EfWmka)1 z?|=p0)%F($d!Ou1>7n*lwt_As-_2P{qv0Zdb5nHTl3v@_PeJn1#0l2yt+&d8ysspS zU%CA#c2gYPPXKTq915b=YnH~hZcvJB`lvqoYFjDFt@Ly%?(~_@j!-1xbA#_|tobyz zj?Wu`^kragz1<&S@V^*2nmc~_u1rvG!YO5$(|+R_h(TmKgl~I`qbK<9XSN*AYkEx#7J+QL}yl=P*Y|)8c4tQ}2=a z=PHK^=gQm5^=omj$*XA>4U326H_$W!NkuSH)7#w5(GFKHNHulB{q<$*=T{WlU%gpw zB@084ADv2dthsM@ZPDGTda~TyM!e#FBYzfRec&ApWD0`o%M7oi?x<&csWaMk*`|?> zvn<7OPfOPeP~TsqTod6kTOcTn{yg}#ruJEx&?d7lUw&nPmksK{nx5_H3dxwI_O%oblrD|lKD@}C`D@cPJ-@M+(B<#ni1&$M z;NkAIFaCb3x7KJnW$LHe+XX@BdH0()vH%XuV4*q9p_+rgeOqyy*~yuy)$^vkeXTIz zslac2Lcwn7GPRTuvu-_%DWZ`seiNp;-Ls_5SA>(=j^(^H!O|LqFQ9S%aO&EjZHaEz zcC*_9`-Y2&PBtz&521oJ_oC=M7Po7i$f31Dy*DF`z91Ke>3%&!TsthZX3`(fBhG}?*4`3q;sH;K%m=KA+G{76Le#li`rF^uD>;zOx^))cJjRR36itE;Wh5fI+e#` zEmyVB8<(5fjNV=cHcgMoy=|KHs}#^PN}OlzcJLV$AOg54SBDT@0!2V|f4KWOnA{j) zqMv*__I(+gJz7L*UC6^b7Zj`LSrPYTY+1>fv|X|elg$Gu9K=6Neo)NP-x7Bhn$kaJ z-F^~ynmFswG&#P&lUsDzyyte;>F7-`;*!FuhyV$x#YNqKoDkLs`{O9D?R0Uf`I85; zR3^H$VT3tU0Ofyb2LQZIn`S$ObN%~xq=gcXd9wuCh*hg@&WA16qSlJ2w^&bm%&{4F zTg`Tx)EJ(oRdLEIlg$mA+_a0Qe?NU1T1*1AXJ>cewcU64Z+q16WTdn6@Lk0gwhavQ zMF7`Fx)fes=px6_9?WK-1eb>&yk7vYpz&AxziW?63?mDABb#!0?1&{S(;loSXlh*< zeoSp-od-Vtz8Nl~A7FjM>N&2{oT($;2Q^OAg?>ar@pv)`hwZk}4v%>8xZ)aHiL$|U zQ_(@BMH%Ou zPDdNridmM{<86L$cy21t&miG7OFH?DxB6VY15{1Pvq~i|a8$FB0&>`0$fvcU+fuJi zu91z%YFBMJCv9%-S+4YPU$|=IC=*_Mr5D&35#ORoTSWdd`TpBdv>#D^#|}d#Ih!fw z*Qd`dJ||ZJHEVkd8{LAfOiUryZfN+`eysv}k#|fII!~SO*QQ4qy6Gv?F0~tS_Y-zn zoR_lEf<}XS*#tPZpX6$^FIUHtjg(O;K3zN!=zy{Or-A>|t6)d=^2c_=H{Nl)(`(Bn zm$$sHEn4?hCH394Q~FzmaS6CQ>z)lj+RApF>B4it(kE~aqYEysnyih<1n%nJCN`!J z6wr@tc8XQf&5OX#>t~I0Un{8oB-PlMXbArKXGr`LEdS~g0pyW4_R-l>g)Q;!*!LzL zZ*;u2bjCcD=5`U<9CN<*%+&U#vR|}EaW$&kt2eAnlK9|mOuf`jEM-+?3XGR*>0Rly zyBf3reSpJUwOU5R18Jv3?|@_G>G{bOzcv?bLVyV6#|i*)Al2$Wy?Vz^bJu#HlVg)* zaRGGXYW3=Tc;OKE>7z>iJtbN(wv%|Slqs%u18CvM#-y7*zG8lHrB|oZ#p-s|VqN$) z?4&!S+jl^nVJ1zTnwoq7t4lif(fNZ%{@GyvV`h<}!(>jEB?zQRZ{>IM5$=+> z1PzvC)b`n9yJczOoK6yVJ9PBm#H%B@Y7N#e;nGCu-?1!y;j)&$Icgd_C zvCkg$$6nt7(5L>npT#u8GTOdj{F6TadhkCHNDN58RK6TveRtxIt%~Z)wRxRRZ^IqD zO7(s7^vCgP%*(a&Ly#DqN%fB{TzYAuIE_j&LU8Hx(VlJdS(e>f`TZO=tIdA}{By57 z*DLYoh3ULQ)%K;^S+*pVxL4%=sOkS7lmuj;bAt3sC~(l$00a~O9AuD#9N35bjs}g6 zNrsAn#fnWz&Mrd1p#p?Xx{o>AzKBC*Di$_Rv`DN5&4%2h^iBlR-&M4jD`b)hBQSF=<{!h zR6JuV1!Og0B7pg~oI1obRVbL6qmjVFVYlFHs9Gvtbioo8asj2yQH*aw zZ6fCabf?J582&nhKB)}}{^&@uW$t#;+Kih zBj>Yz;wdz-teRIgaTAjd60Xgh<;(xfjy<`k*1-5ERrUg_ej2Nxf6C?+e|nyIdG7Sx zcT*N-M_zWd+-8X{Fib_|1L2%NC{vUl2A6Gjqb&P zo-|fXbF}fJ#sj@68Q7DK`ASR1&BGNe#qIEl5=|3%sXsii*+@E}O8SfD3Xm%+ z^REHm>wr!|ePaIl>rIu`OO$3PpNp;0U6NpjM1fCKRN&t=Aq|UlF8rpUNhIy@j>n1z zS&b(P6{GMS;sJG5wDIqpT)Q_^R-Wk10&sf7kTodaT44bU;@?vW_T=VFA+_|JaJ8xf z_9M%0hBZ7*Dg{_IQAARQ);T;P;07DDHr>oxlLf-)s;bbD#j}UJ9Kriyi#F7PleS~F z2IG!j=v668v{1)VnIdexe^bobIZF5vsH?W-AgpmA7{r->G~yCDiIsNFK-MQ&mgWy=~V z&;%=)=npu8*AKJOR_(W2Ed3hARvBpba(m4-z>~7egPE5OIxXsdP~Cf_)j}=YXbGcJ zgedq9UnELI49h2h7J1l$t(^v_o%DH~V7a{xYOF}?uva~H$@n$HKu_6D$wyhOpkn-4 z8!hM93-`HV{4W?KE0I*N^bbKJbwL7DQE!ft`bMpsLBbT=K^~@cnCn`0PRK zg^prj<-aQw9Ta3k?FQN#oyMZRh^8dncYA5h8rfP4(fm8VN8Lw5soy@wknv`uc2Ub0 zEML)bH>KQn$59YJ^7MV1^x8@Brr>ix(>HBuLig~F>ie+c1}dcBV_saVpF71Lqq94}?|}0~M-z$Cn~Nxai>PU$ zQtVt-rdKKrU@q56qsT;L=m5d3DT;$Y3CYs{%S+GyreEQ2VW|g|EmwaR{ z#~3IVsQJhs^qdgqosuP%I^LXtS}yfNJPs#u#~?gM%WEJ>(n(ozkXhC)(l%TSq9cE) zLT}|r1)JP>h-nFjRH~|Tez2UAG&A{J3<$@eN%U8q(!Pxuys@*TK*D3MaQoc*px*<7 zLvAQ>p7X-Mz+t#11@?ZlylkbhzFyf|OkpYR;f+ z$++<|6lr#LinHk&E$W3og(AtpW0WQ0^ntS0MnXgCN0MG0)Xs1cdA}BBlkf%g#22VQ z#G{I(dX!CTSD3p921>$w3F`Fcl>KYkw2Qvo(d~h3+gaCjWV%y4IgVCAz~S4^N7sHN zXRBjhMlU-KYfhs%Gm0cD zXlrUIW=TKI8|`wm<@U3dR%wUX67i!@RaU@Ti1OAQ>rXL(20h;ea+!A5h>_xHZ&prb z*T$MrX$7+-IqSCMunn&;3M~V9MXEvWttrAnK`Iuj1@Z~wLe%p5T*DREr{#0Ew74gq@+ar{UhSJ zb9L&35|y}Y`3!I3CwGCGva^M>jFhy3CEI<6zYBdmOkR6`Y(;U`osI1ez$XS&f2uzV zMEle){$VUYP-kZ4wq|BBYiYOn(cv~}IFC23B9}lFY9XS@J6cq{O@(1D6R})rr^+$6 z>BU=A054wsL;gxWd?6!I6WxU&vr+7GR%3?#QKmSAC>|N6nJmg)xDo?)12|(HgZV@G zAJK&1UsFJ)6<4|KCbA`S>c`~-Nf9|AWqjlzElAlgPq;wyQr8n4y(9f63 zAIljWu*F{+%U84!M}2yPYg-@IiO8&xRa3Mm8$nJ?9J-!zC?>bKRBrMUVZh|rMlXw6 z%QJAc2I2@X+q;w&IP0hJA%c5gHE$RWJxYs5rLbrop3P3I`@!?b8ptV5KOn%n&+I?f z-L8mrDbO(~M%z_9KvA5p`2D01y286#FqR((#k6$htskZ-RbpqIv|6&o5iT ze4U~@4lQO}NLzK!Gg9*I@9lEYDxsGPPovV}i&aH?LI2VuOAZ5@2+y=MMHaPrJbu^u zSuCbq&hHb}^h1a(8S_NJ_*ikyCce z2y~9LA?p^MJZBy3{0a)hyq4R98PHA{r6HF(cibsHm0OIFwQt8u|B04%#zKomd^1eK z+`FPK(q(H!h@*|yZc4SCsyMoGY~t-7ISc3UJKMC}H6%Ybt8&m{W z_ZW*~nCMWDq2Yo1@pGtrUf=(i`w-G+kAt2Z8TRN@n^_=IA34I-@ zWS@#6GZDL{udz^Qe=RkzQ~VUEOn0#&Zq!h#vXT+n0NEe&Q_;nw7f{U-nG{as zu5!^Buu7TE2O5l~!Ad^9s-ll*h;MM8^Gp_Qn0*cbZyDBer1Zt?J&kH$MybKkDSR-eOmwu%DLr~9xN|96fbk0mmk<fu&)iV2Yem_toKvD9${rOr+!&1?AjklI6er@(DDSy zh>In`2g>4W1coLQk*bXKi^hXB9-e6e0nIGIPaN;Z|cHjWo1CzGPjIGl3b`^_qm8bbo7#3@?_# zXCJycE@7xieV3QM|MbGTTB9mDCCKj5pg^)N^~iaU`Xz6i!c-2Fa;jb zy#k-mMVC?oPb+SywC&a0Fdw2!}D9Bbe9Rf2`>Qh^EQA!=u_C5$`got<* zQOIJZ`dmCwN^?k2N_?qH8dH`%9mm1Z&UVu0()7W1fa%?Nv%~~lJg=NLkGiqsz zlHVv9>LuhrAm%Y!SvoTJ7c=yD18k9Ob$a<92i4r9ayWO1p7Gjd#d=%lOs1e-EF9=> zUSmtJOD0@n94y5&_9ghK#MTS?OqNO+xsA&n0li-o3<37OlTR2ro@~ic5Hn@I0pha^ z8xAB&11dS5XFiBFbTL>qv3=3+^|wLLh@3kaZ{@abYf^XWHiJ}8g>nTGQzpOi|hE(nkB11tyqtcbqk{I9r=(o3VqZd1% zdtxLq>9@k(OKgK+rbY<_!yyQP3}mL;qT{CsKqZGIjW0rAsc(Vduf}CbP&AA~A=>*3 zHj;Qp@98~EO%>EojlCVm6hLExfZ)gujcMGthTpD(2N`=Xuow2Swg4L_L)l82UtfQ! z8xjN$i}^@w%T_h~2TLq|X`x)rAiAt*?Zv3cO5Xr1o_e*>DOs|V4VcU+1Ksz&3_K%To*I202zw<*`!PT~x=&=sTv#N(z)Kf}tmBp6*uki`mx%{f z+AqO06gj~ZfIHpku_sE2#EtaCOzjR2Vs7yOUqrN@P|z$*UdH}dPwHfy!4$EFHD=rx zP2=^d&^qkeJ$VvZasN2;=HL#j?FquWY+Z@(ck9Sf=H923%>_AipVexxI@+iMl&)p@*t8x zK9>~08(=!`|0OO{rn4LWvfw~IiWR3NkC7DuRpeG|)?n5^tD|pn^*1VzMWl-&z!s4f zRM7a#6!G2yfzm_s`iNiMkS1LS6n;Q<04s`VM8Cqv z3*)Verd~I6IXxRrh0_*@prRI-(h-DB6u^AIo~nhHFjMxIzCz)oWJqU8)C{pr&7ETl zztxU+T((}ZV+Sy@NCU_P(cs87U$B7#zNv8j^a(EAiyX$<(L2=?(vfSzIXHJMj3>5QC?c~-%&eC#rderQG&weu z$cdY)vJl!g9)w3?9y$mL{nUZm^NVQ2;Clwyc)c9cz!RUrRGE0Wi^}Kd@bG^w!*zDc{xs6Q zVW=n;Y>mQU4Vhhe`N^&QTWd8x$_pcpsL1GREhMTobbKNtVs{!eMIC*`08%-xleYfxv!9dje83SX35^Pkqi>Tj=h5K8MKiGqXpO z3ltOVgJ=q#?mPnQSRyys;>5_oC{P0|)kt9C-!bn=+Lrczdnl2#am@d=Q-FKpD=qef z&K0>q5*WRD;{l-pP|Cz$WpSGujyF&OBxjF2qgTf~{yXYHp6Cc-NO0-MUvGp#n|^F) z05Aw}&~+dHG#J#sy++VY90*7>RCF>{3`|lMQF1mBRSI@7HT420aTUjJ3IBHdK=*ir z!QKId56%6rJ@`B|jk)O~uAqAcWvwdNwz&{XOFLrZo6mX+_g@N1Og+@qS*O>D-)>PH z*J>%=0nRh;fR>zhfDOnr{xX@tLN}xJhd;mhvc0ORAcm#cm{Y5B{y9UD;t@<<=~u|C zq&5eQU%I@nu8NCPz7wvv-3j#Wqp`UyV|8`)x3iKzr3H;ucv;&eas0LFl7ThCq2BC- z<1tj_QD4Tk$?6qCYOs}KT9xe8f+7;vme3h%wM>eh5UpYkU@!A3Gcri*j}by`ONde| z>mMXBiv1%NU^nB*2(qux;(|9*5Wk=1QLA)BkKYIm>|^7ab#~E9^&Zpg6Y$FXIl=7- z!iVvOl{VA-vP697@Kr8Q`sk0OzA4`6UUY5<5tq6bMvn2R0gn8&(l-fLWgLZ&5@_Bm z3I^FpTB&3MnSne4OKeB=xn6GF!c*1h-`Y%RVwr4FrjoBo^;KIQbOauTL|97If{1*O zPl3!Txm>3h7R>8B6rBzH6qL6)NkF}KfRD$SFd1bS!+k&k^`$$kh+8oPuo{G1y zf-X|Yq+L`#>Lsu%Dd(RI;c|z(U05?+6Idbzs$Utx{g+aBxoO`4@oxoAIb5mI3RZve z!!=En_NYqtB|l-(C;YN3DBRbY*t-mn$aE9e^g*B@BxwB7q2v~CoU%ffYzMRzp=*vm zls@K$Pu=pc);qZD*8=-4h`M|{f3D}Q*}9KQ1job>Ky^)NfcG`+)d22m@;hJ;1kzp+ z0%-2O%GS$$UHThuFKSb>M6rT4@O6r3{%`RXrQJZhxrcMGg-M06uVfG2A%6(rRn$gV zF0VT*Z@E0l!lC#>4yE+KG|7T(LfgQ>=tJS)NKSJF;3`~e1u_;JdO(v74GsqqsI5szEu1ZaDZmd<)9G~joO`~H2B~@3Yq&P3s zYH3bPbm*$nA^%jw9y!n7QMzK1QkGA-&iUrt@+95hpGAYo>YTLWv-HR-$gIb!Pqf?_ z*@`{%&}B~3{=8Stdg`u7Hdy2z$kHiD1Bit&dj~lELRB)EyUZZpEKC+4^&Ys3g~6`aOclS)1SJ)v@pS_40(-#-m6$YDEgn%~SFy7~ zF#Auj4o-hl-Xkr)D;NQ{{fxW@zlvYO=aGF*{QN z4-A%UGGbg`XKbN;Ai2T%AveIFp+FZA|06a)C$!)YXppGr z7-TG%q^xYBJ3oF1?(znj^F-?4eIL=Ft8hQAwKSosbPxIlY^#LqgAC@xpJjdQJ|`xXlJCV z<)rFAXZq0e07Kqy7?pVNS+%+>XopofsY9&=TupWWf5 zWhsj%%mh~EQRvXCm$<~J`1Gn1MYKpZn>#eYcWLMeVZjU}weJdhbrr^}Z5ochYHEsZ z#oWnJnAi}}4Qa8=SJrY{6^FO!mA0Yj@~Bf;F%a8WsSZQ;Vw$pOR^r~cwO8=RJk{R% zrJs5r(N!h{_NG`~AF+9#KXMkK7GX##*O*RT>4v;wa_EfdWFDvfcrBvUD@P#4bnc|k zDz~e40UpFOqCGOxwl85SF*&q&id}GvchE_z6IW27nj7Y;J|SHBqjpZuT`O_a%s(TGFWc;MHYQZEl8~9jg(RbflfbTnb2)S9 zV&2rF1aER#0v*nFk5mHUy+oF@errcvZiZ<*eW545mUh#^)zc5JNXn$`q}SvurW z4FX2pZ5H}94D*?zRe#w9-ugm^x$B`xLMH}0WKJ6D6y!X4s8s(Lo7-zDDy{xgecHQw zY$^HFmk64peMbcXpB?U^LD&Qh+L`OgoI}v7$#3Ogd+P#4PJ$$SEQ0!OOoyTYU)>;0 zLKMpsaS0QzQ!RyEy6R*%9W%)|24-d0LDst*i<{m2Bg8o*)t!}vsC!%eYq196OyW+2 zc6$9__#B}SzD?_(%4q}09YSKYlL~*nyzp8%ukC2yaF?;ceH<*Tx(wXuPCkK2X(RYk z>K{JSq-vz$8}RD@+rXmK zQAK!?plH-iflMD3?7&hJKQ52NR3&iYhp4(XBrwXc^a!^7X}}Q`n&5cHOmsnZ5$3(W z)9z7A^nnzs1`(^5MgX<#T{$C~+tB8W*B4_)6bg zbHTwl*CaNL@BzRBP?AieZHhIZk>#9>jCY;jekS8rLna9hSYdhh7}aT4E&pN`0WfKv zvsIUIoH}3`EmA~c(QSV*>39F(vVnWy{EeIadBhc4x(eyJnL0oQ9bB!lLljdx`&x3= zbs~?BG_Lqg_piM0xaAAuJAf+hsOeAY*Thi&JJC?e1*i#(9NDabsg`BC7CrTSt@7m=7GU`D82g`Q~1thgXG?S0x|C8Yv;uH z5PZC;sF}1@@)mXJ1|iH7CvIJSKOzAz1epkv4a!P0$2`?eiIrT8QqIH!f|rC!-scQe zwkQLYCdF-st~*+WMaM$EP-u^9T(H>%ISmodxjH>_c{K8W!=IH}0j+;Q#e?iei(6HV zA@D+5Ec};*6kAh^K=@o9nVwce#N?x*XB4s$_U9bBWwm&*#Ib5uQ;Z}`m93_gD1&h{ zPcm@sLurQ}L+}J#E?F8`)><;4KH-#xRyVs=`5N|nufEEb2RwG|e!_JqaB-wlo4%A$ zZF@oG43nETBqrXu0zLk@$%$_6Gto@wp-%HpML&EdUE8%BRP|l>wk8D1Pr9QAMon=; zJ(e;DM$I5-4PyBj5X)zSSf1yP{EBPrf1uN^wCcm#|9QRl7C-)1!rR@2Y7X7gPUYJ< zm9A#;6T?85OaLkyBRf}@v#(XGokvC@&M1Du%@C|!P{**;9uJCI$ks4CLXK3Zfey92 zRs})`v04c9^pylx2vpBXX}GHs+|IqQ8#)?$mD#N%dHi=h7ro;YiJ*ZNTtd379DD+l zW4N2K%APRDK6N z@(lOhvx=EoE>G`3A2U+%ieH;FwWxwrBUA!8M(aAF)ob8H#?CQ9yr-)Ne+nz~&>BZ* z5MJ*5Tap>JKISG|z~*s88dl8}gVHRfnRuoLZT*v?Gt{?+m1#}$Si1sE_7JqT5E`AI zt2f5aFy~I?JH$G3)zmwV`}G^F@L}7-mcXK~i2mWj$%j5j+bcEQSG4OE4;w+rXi&lA zr?DC2`+){6a?(v&4~TrKg5_LEs`aMIljb0;eqg^CZ0kZ@K`eMF{UE*JL2 zHsL5GF7c-zx-6KUd0dJan;25(Z?C@6Fl|e6I4$F3F)O`iUOK0wIMdr$snn-~OjpLR ziDY&eHYzcdw$|EEO_|VPmLk+zR>vkT(eo`+^W_u48sCTr!bq{~bkH606D^&wPQ*uSN1Rn!~N0(d(_h8F0Ef6yASfF74 z8mO4FHj{dFwUNhS|Ld4TbI~x`T!pB>W72_SbkRcTm->w~5i(Q8ODZe#Z|2R$f~IhiZ%8x`9KZ+wX;v6a-`Q0K&A-# zL3cR1FDd;xb=u|8)QbK`Q;j!}!GC!m=uj{G-FF)G(MDZUmhl>jAT(H)N@G#EXbtD5 zbNP}2d7}SA0o3w08Ur8A77LF8q-&eZ&A|F*cc|Q9cA`iVMyhJ|X5C3M)s3I%o|_z_p-Z5?KxtqNDl{jr~_p9^(_O8g8Wr%hb zgSrOZxsB5tW5S#u2ep&{J+lgq)NW{z6uYN#j`D)(0K8@6_3R)zillHoA{9<8YbN_+ zlK{!O@w-yZv<+1W>$inZH1r*l9wvDp;}PsGR6Y2O3ACxM$VV?TJrj(8fU}KWqqP!E{d#cBjK}!8Ua|IS5fzB zuw-J&K39S?hD`z2TZn#OpuyhCYWLHp*Q^CDi4crMv z*l+2x*yY7|frr2zH(E2K(&aO2u-Rv_jlMyZAATo=49=!5+9ly9)G<$o+?}Dc^!lSb zpCA}1EO7m{wA{)@*KpFC6c%YpXfdkOo#g!&Su!4HmvLs7ekN_SqlZNy z#o=@QMVDYtkWBU>)INP(YRWOKoQ)$+(d5j_gSS2G01Q2;Uy3IiI8HPx`Bwf8K$)ZN zO#JnytwnVj!1$`D-rA*=n{J`+_LA1k#cyopYHZKa1FNSJ^HaBYH9o%H1rCF_ zr)g{3I=x1?8%>)@BEMb^(QUzi&9UiJ%tU$d{Km}Nd493#pwER~(QS=I+(=8NFv*kN zG)asNhd*ca{I8W3=|jC`k{Es2A|8*WEZG3&R}ZqMU>?r83e1QaVBDzpiq)U5>!7!V zFH4>yL4_5}zq}|UG7pDry@H4!e4cd39&!OLD z!sM7Rl-XfWt4+s7nNUUi`%ZdZD~g8rJ2tSxY^`a%8+5akc)sMOVDWQ8Id(@mO{}IVqGCo$;^k_Lw@Gy-a zKNAQ!X>Y8lLdp(eKYHm78)+W@ZvYwgDcM>ssV=EL|MgC~!5boR$BV=NR)aQvG+64IwspiH+H8sM!^B{mOd7Hahh1?J4?dL||0DIf|R%+*JpU+XLY} zxq}364X49|YC?2eMb;(1OWkL#+Q`V#mY~p|KX@Q1D|-G>lxFFs)f+tj|+j zF8EhocqR9tKl;Nm|LMUp3|c_pT#e%t?$5>Z#|kGET%7kUW=-qzP8HVPmqi)qgA28H zJRQWwo!sEA^7^Jexcp0DO$?a`*F+r8N9vJL_e&lZEV{Ge8@`D+dcLdt@e~c*4?EXuMbFc9ety$bmGS3#MT{s1&ZF^$Z9=_$7FA!w zg6j$bG+Y>NxZ0fYIs$3wV>tdD*wo`TPc<=vBI&CRhO45*CZAEhXJ;4p7pVW9XorL4q>`&BD9ZD{vQ52%gt zwZytYK=GA{lP021vb6Y?`?Pr}m--DmGihkIa8b=O>;L@)(5nm)eGAP?wbbtbxkkZ{ zaz=zQ#eYqN@_wO$tY$`305~}43M?$>GAzWuy>S2-8X2poDyp#)sYpOV!TimwO2dBt zm;b#7D@^td=r3H`KwnCx0uqx6feWNkOy<)3MO-Qk@P?)ye|4lS4mBndZM44FJxcrv zJ$^FZuhMa&Y?!QILNb( z3Lz%vENM0sWOUnh;c}j;PH{sTC3W={uyHR*5SNdeeolK3{ux^5%1rsATAsLTzemXQ z1uQ=m(;FU0c3L?S(X|cDOwAQgf4P|#Aiu}fOLc`SB^zm;2Zs4AfdVjC0Wy8DP&u3n z{T-RS2CZLO2u53YD6jw}YkOg84h(d1eYtvAOrp?}}%PYnmP9#ym5jQ@_*SPS3{g03E;juS+Pe{UA*E z9Omsi=-(M64~KvM*oHzbF+Z_x1|W$`_H zGZr$j_#VL?>ogH(fBZR*u57m?ot)p}q}cW=NomW=lgM3ZWE^{(naXx_t$WS^CTzy{ zt)%l7)RL#|#2)ma4jM#f!2-ODHY%(3$VTjCTNVgUvhl84vv77ldXh`Yluw8{ZT)#- z<6p7;5QGqDpQW39agVRq&q50zs8}Z-B+xkT90)*;dRVdQ4-%~>8yuCGdTYtf(Kp2v zXy&vhy6Ok?;xdNtzsA@xa^~QtA=Pq(G}x(!hKWi*>_;0+^yz+QG3LpNl@?AM`U&(9 zraS7?@YACacRd1f1k!Lbnt-Bf;?XU^xON{B$0zK;=}W)CwclY4&nU)oI{MrVl*Oys zmoB-zqpTN~F2w)9r^QCQObp-9GK$jTE=|}wQHZjj#IY%A>M5UQDy3p{tK(~`Wh>~A z1JQ?? zAul`fuyhgV>Y8`GWR~ zP_s05s6R*dLXCq#Una)v`NnClc_@F^W6qB2D+zM6{|vbED-nmvdCf1GS2YoX=bx`L zmbZLD9!oD~N{s8^4$lo=3^t)-?Vn!Js7Yfr9l%FwItyDwDJ427~fT?`!;o zojn_$E$tDmf3rW`~HU7xL-^Y+3zuk~IZdT9gnsA5o*>X-f;M5S3N~?Gx z9Lu@OF(Lb*sC6v7h595^%=&Twi1`M2r)7J9cZcnz;#HVkC?*T5hdB?0$JAk}!HEpF zK}8=S!6)BNq3qR#r?4e8O6)l|Ixu?lz@jjyqk_n9K5oW*Ikn$FI~;=zok}oBLcRRt z2Y9Is_OK160Y1-fmWQP_>`%P%e*?; zSSK>;g@@-xAP|S+M(p>b-$Y8Ogqoi^(X}dx<43o%Uh4Q7EjY0u;eG+#zCH4-`hK7n zLp987DwndIfzuKYWgLuj1O2NLRQWHZ0F*NcJbQHUw!9|<*E;B5R9v62L^5>(hmK10 zzMtRcntHM&nPpptA;-D$nA=u&54D&G3pn?wIgz)(7(w$#bBuDV?8GEVD{&_)$=AP) zjczPfV713JOJtAzp}gc!HXggPW9m?ox6&bpjlP0Bs&otUFu8fcpwY9(A6vq@F`b>x zoy{jU{ynFMV6S1Y?;p(L#`GtMA^?s&KDu$Qv$ZHmkG+2DTQ?gq4I5Rt*&THNzo?m% z*b1rmD7lyb`Bzf-c(*}RK}{q?P4klYscv^T&4tW@e!@c0KkXgV`y8JffDCEW+ABS2s z*1e8&{D$tjgQrGPK2L!jWLGO=Q-uF)&!9{sJLCDj zj;^#W*Y?!&kuJDcs3aGrJIkh1iZatbh?!5H2&>ZQ3E3~`5VKF=B-Sg2*|g__{_ZaR zyx@R|s+v>;rf_PZB=Py#X@?P}Fk1A>ZNJ=Ew%vFgBB$*b%ec-3mytYatkb+(VgqFj zudU4HSk9jTL<^YqRJ0XVG3or2(YDL@QmfnRp)s~s=8jSqB+;8s1k85L1`NT4A2DCB zo>Ui)cNbT_WaB42v-}u6t$K-Vlu@&mSy537J#sivu(39LO|;{L7&gMYV%9E~9<@BB zPC5=YC6pvJOdce#>d+_aF6BH>d+kSR{ZAtFyK&A*TmGXdilFLfFG?d!{ZfJSXs1e7 zVXlk5!T6J+AZt+MJ{i7@6bGS-b{_c~tsm^frFNL+;WyKu)X$vMYhLu2-&B@I8lOIi zUzF=48PSle;?BZbR)tAlo_FrI?0EEP?1~^U1K&c|R-GAAU(16Bn#ZZ7WSG6gXIg z6XAhfDWiL4GxCyXU(4Td!WxN-2MZ#~p1n>6tzmcB@ez)G9Puob*ZS^xa!-)+z0I5j zHd95xy0pjzjQ&Y)s3g|^g@Z^@dZY&XITAito)m12o~rd499|+A!G)nonMtqXVx9|= zVLJ_z6G1lbi6^~o;Vsu-8$va0X7Oc6#p1dWI7yei>@GA;5m0=V6hhZf-<$M>x{$PV z_MtN;ujs7`vO57>2mK3T_R>9nm(RNI{Wkg%!q#?=XExx8<&f-$t>3RIts>DfeiNmSk?>33PsBHi*3}i*jrc)2P#xSK3yO`9JV*<82 z@#W1|_q;q9%`4DPzHc+iu!^}SqCBTpzh2tbQO4m_mP;oqrO!n}D>}`s@Wd2fZB0as zS&dm>Hzzq}lJv#Ls7HQ`reWoflg%VBH^T8akW?#i?S@6BFkq{kf6R@RJ$m5LNM+RP zDUg!WiCyF+%8N_7p4zDOS`dm|`NKH_p8msR>xftyROirDQIM~Xg*?tIhASyR8l zX^A|>_Z6p)wZy<-5#h>4GB$|PK43+6z(KkGMrI1&C>JkT@L8wtv(7R-{Eo~LOb@~U zA|nw-OCQM;sk6Stcv4FxxW5?xjw}aaO<4`M=J!Rlm#3F;o|H^mAza2RgYZi!3QIX| z7Z>ld<&`w&Vt;~`R`NJxKhSeChYNm{9jb8hk2bK>#p=Y*9O}jB<^POgSWDJDEG}Dy z{b~^d$mLtaCtukGz!gyfchW zUkFUr;=H@T1GxlmM}6>NF*lo&QWW?|;9PhIEsCxtJ6uR6rG;TDB5i29phcyi#3Hm0 zx4x5Vf0aZ=aHa>yaSOz*`eevZYgiD_P7Fa4FaLOOU6t@^!ICT*p= z)TmT`K#2B7{zzW+ZA$PUNUI1rdFwepSxh$TnSYhh-p`SEZ#OY;H)MF*^)V1{)<->TXf)`9iZ5eu(Mi(pb+3y~X{Zn*;3K{n7 zn+RMmvKV%~@HUWSlcujcZD!2p%rq5gg>hM%^m}44H@SL=tJAmLnWOPe6q0vM2{9)0 zHkmAeg`F}3gzN?*FSQEL=rt_g-em*fW>aA6QXH-Nci6z@pWJYq$V1?!WT-5TJ!1;; zOa=ea%U!m*S9ns9q0y9=lq;6Wqk}3Knlv~RAup3rs!~`DAWQSs%~r#-zpt|u$QQ$M z?45DRx71Z}Vj+=r@LUo?F?lig`e(l%AGvF>9CA=Idoz^D@a{)jN@FWy;k*)-N8 zvn<)zVNU1v6uP!M-%IgIGo!Eh2g=CzDm!mAnHGsfb{q(azeeRfL!q~pazv#<)E-(A zmDW=+8Ux`YSEyX>aQ(`-vi1Tiag7%~WC8^A6sXf$38*!1*3jv)b|Qd3|u>od#6toDSMhg7HHO7A+c zzAz;%k(ouUra_*|HZY5_k8sa%8<8ruNgdr1*$oXwRMy7`l2ROci1XcIKnWzo7|B$g z*5-(4_X@)lqA1$512IU26v!l60$0@qF0p1Xsi#z)0_lN_DV!LwQ^+3n%7nP_5(zX( zjgtFXoS(&+aOfEw2lkLxDAmjN2_tZC?c{qsBR8pql+`@0V^dot30|`Ie5|#3L44mh zjc@2km`#e-(^rctOY$53l4XO_U9jgojRbGfkHRf{jw%-UIjDt^gSND(9B|*kx+9;_ zcPeeriB+DJk=-@^)7UH~1TVN9y(^VpMV3))07RQ|9y{Wki0o+}1eh~qvSpv4IZ~nj z`flF@-rh>wegRIPaG#Km{*IApyV(oYkNhU;2}~lNM=4$o0J@39(}en9t8Ih2tx4vHUZr zdsidRt!^-5bD{)lt4@ z-cUKQ`Y+Wa$TG1GjI>>tLkZaGW2s`{B^jX%q0b99Uo9nz_($&W<*8jH$-tEml=h>yGWwwk@@VmXi$~xza?|B~A8lph3?1=&)r*}}s=*2n`599@Y{i6Kx zi^!rRk+h8pFQfK!si7gRm7T>qDUDWV$H!q!?u#A=ZhkZ1rm2lxAz1_N5$CS+Haw(? zhQ3c8Re(x~8RDlEC|q3j0N!Htk1+mjK$~yG@Yae6*ICLOfh=@B@6KNW$;4NPRznfI zrRI&xrEm^;MfcoUE6QaP`{F!HkcKO+Y*q`v7smHUqtYBZ=4)l?WJ$TA(PjygOV!{c z0ir5yFEtp2E;DFOua;9@ADq2$(3-=d3x5nnoJLFj0U#81{$cC=lV1{CO^N;gza}94 zs*ta7kR4n|KMvyJ|L6ZF{1>?e2#^F2An-N*2~hv}z`wVW2p{}6?yojdFaZ*f00}^V z1S3bpBLP8@h)CdnsL~k!N%QyazYZ4sp8yDIDUAsIE#Yr2EkxeG*T2G%fX|`iVA#Ke zNB~k5-Fifte`ONLRHzZs3yxu(v}DtxPY4ar*<1c?Bm%&U00{{!u@g8RyBXSnUohLq zBk}S-cz}pv0YJ>fj!2iXPF$dcA84CfxD$>7{EO!IuTtZ_#W(F3u{US0bb0tk#EtTX zVAb^qBBC(>v_$h?Qy@KKuRgkF1EjM68Zj1C|9_1^0s^$!hTmLjdZ5>Il(vTX+#eCa zkL-F7jX~51LzO!4nW99Q-#0MZ zzzI=I9+g2v|9t=eARV=DxuNi}g9-y7sYA)Y5@i}`$zK9uTmdj-0-ot;WE|G#Cafec zkDHv9j0=MQ(*8{d$yUk>hw(RRFQt~Z>>AACK-wk$nJ$O~!33T=UT>y*#UJ2WpSXFA zSg-0~h_U;x0}?#mQu!=k4>rU6(|5DVXO;j+!2cjPB2r*%bWT!wQ1RPVn(K!+S&<{E zgZ*pm-v%T3kEF6v;sMhLdH~JL?%==U_CJTDfRgV(lGeNzNR1p$$NHa)|D*CxT2D+S z?+X!lZ)xAOS#h1khwj4GRdYu)$*n9CD5@68N8u0Kp$X z-*teR!b&(icj{It_e7BZ%O*+Qv|@BGB)WA%JvB7-=9?o8+f#$dBIlK#<+soJ?PSxH znx)D~G((0x4J(-~8`Y;MiZiMWC5;B0=}O>?EbD<{TeD8l?Z)dGp_cDIf7jolXDNH& zmf9zLCVj-dORo}n{LCboN45RQtD84okzOb`HCmrJM1PUzW&tY>=fiM?NeZ4NWl&-x zm6Ib^uq*ATn!PpnURj55H!itlh6pcM({E=rUSsi`iJ1Uh^LP$)!v|Q+%y{s1sR4V3 zL_xe=H&;N$j<)b}RdDrXYJViL{@WsTN0)CZJC9&rWxZ7GJ~21V#IYz=JZ!U6rwWb4G@XYC&+i=Rc88x8F4cZeeRg*n!g#mB7XI?X<@l@e_?hT zWv1*3D1BL*QR-%h&JtTkaR|jPq=>?~_JE^vZSmj`62(%XaNk=|bj;5w4z=j^S-#xvb+WF+C52qi#m>eO%h$BPony%yZTe+M9&S50ON*F9Lvrb zm6O(O&U2=k7()#sG!#pA*=mS3Pb6EBk0i>dATK4$Ta}B1rGe@jw;IA>gW+Y|kL@N( zD0%0YF^uSrP`s;fLX=g>AGfk>Zy1n2ZFHjAzkJvi?>T<^L8P7an!yBc>Iyh~2;_CWT;;LTN&M(q~K9<_r z#Hu4KFyk17o|^`b>$)LsVTa}gZRWm3@NUAUC)Wh1l^W(KJ0i-C zZ^)D2AF0n%j0K7p1)Xd=k?w)Os>dq^TN8E2mkzgq%e*!+Se`_wSf0q*oMGtll+*{} zU?~wGqf<#+gU811O)_@Exzxx{#SjBH^$(y!r@}|H%}mGYK6Zw5a{4*);ywR^tlufu zGL_10AEt-Wd5;MAiljg@n2i|2sdwwWDkB(S)Gvmvc*D4nC=KGwA(2klghl^Uo0zJl!k^1C6lnF_HqHneRo+T@C~jnWiD z`&UBWjAwNkPPEaKepO%bYMUS9TtPR8$1&*87XAM1fWh{utdCQ&6zHR@O@jKBjEIs3 zVuRxQ^Ct_0@|Z2*unN;g4%M_Omeh^Vf>jpclJA-@X5K~CiN#E&5oyuUhj(G$b4)Ia zL@Iy?EVL(q0-mMqC@0(`__sL_)+O}ESruiQ2pm;%b^5S|C!A3a# zv5~*nzyHG-`o~5PTqL;=0{h2BdbbdKq~U*70|-XaPnkg)uGRg>Aj@O~k4PfNNcZmq z$Tk*{d^BH@XrIKT**s-idi|coLASpduyjLU2gYb1R)bqD2qkV|HXz@n6{=HW%%>C; z>OsYd$7ITy%`Cn9IW-F%!u(xHodeA&%sGk-&G%Z|@}JE$BOHy=_@H2@tr7QCEuU`h zjpHGw`RG%#&+L&EzYDpx*J`=2Im6Gn_6}{yXJVg5xd}BlRo<7{j%rr=Qyy!tg%&c| zRj>k`_g($~+;cvDu61Pf2N$+w6e-r*(&bw5HgB7sD5XyQ0YH5+%YH%4o6eV5c&WzX zqAIicu}-5MjeX`#dK4`bGAxjDWU7&?bB^JX>j18y<}>|KIC}Ng_|ubIm9|cxNN#u5 zXKi6|MOXq3j?cW!6+sbmF{KvTb|^eHQ$>5&6#>6Dus_y0*vGzQZ^pv)I&fo~+=Uij z;{zSvU2(1RF$fye6}Z!cTs`QjJitz9<@ft`XkrSFZMux!c_PFfARvf%1KxJQXv`}> z6;*@7m3esC`uY-hTitww?#`MV&Z-gA% zeP*?)U&UDxpdS1AMZ5ocPW%yyivb94Eh;>LA$WfLyksnrI~# z)$0^hrF^2=SOpmE>B||0Y3Q864$3v=X?e4@ZV@G|_)el7fHm}P zT_pY2iU8>aVpVUtjAwA0rSILj8h3MzXY6)kUmCXul5M@(yETg#Kkuf>_!~5Cf3=55 z$EB3PZQPB0f1kH5u;Qq_k=PoEkj@O$?f$q`%h3vSYV&iOtP|hJetgFCg!1J{@k%f2 z-YzGfFHv}3Z1pZ*_@?c=Zg(-^(P^@~;8rgu&^0iGr$3*|_xQkRsMC9=oA$SgVh%Gx z2_fd9j=A&sy+C4RKG~%H6|D^qCt~{%m_hse0#Oije>jo$`IXi9aQg4`N1rXvS1~d3 zy;!s?IE3g817OEp#UP@W+**Ng#R9ubw{AmwceTcgNjBqCDTq$&1Y+|H?L9qnqqS?D zH_S07jk;hn?%d|UV-7aiMgZVubp><1Td>FKjeNsymR@>?Pc&Y~Q}@oTk`{BvOtEu* zm(-O(lY{vBNGw%l|2AvW7TS84S%hhWuqa+K*KOI2OvLr|ym@}_1-)ydVyPOCm7JG2 z9hOArXauoqHn3FU+h%@89EBH7r928}T;t=tDdioa`hnr^T@^Mcs-&5$VpB#XkR>B3 zI*4(hwLk!fyYZoWOjE}m51IJ`uzW&gzXBPHFV&7@Mm3`nC=}4vUOp~9DxMGEy0}aW zTYU6I{<2lPPAIpZsb+x`_pRNPT|@ybO_)YeiTed*aglIn%gn=9K)QAZc^^Vh8`tCQmUu!hbxD z-~V}*Sq8z2H4&4O(g4K!vH!=L-R<$C!&A-2F#VPsurp43RLJ3Cu@II+KoNs?)esP*or4)u8 zRKdAIBe(KdGc9p0*Ua@q&&T6vVU6iPJ@&`$uUubxji$w4Lu=b zDdorhN*oGmd%Su`fAywgFhBlRKItET9pA=NgXi|s*8FdAo3yFAC(9p`55ob+K?^TX zet#c9Ji8m7eEqWDZoUVBdcL$~X3La;JnJTR&wQyL&GfIfpT4u~`XmUx5&2Sn=bbMS znOA!SXzK}X}3QceZg;5Y?U=!`oYpF0n z(Fd7z4auN@ycI&p_NrG4VC5~m3a?mpR^ zfnz{gTy?wX78>!LLUPVGQa-nc9m_z3qbi6VvRrd{DuZS?c4@a5l-k`jwBCu%U2tFw z1nc&5hB@fNHN59)ipKZ4E>JJo-l&)?Ah?J?N) zyRD9a_#;9E-rVf7{0b&kW73^6NF>wFsA(1C=`_!!iDVeV+MlALHnfnx>-W4jp9_Dx zpetf#OjFR-XZ<)fQl)aEqoY^BiP~{06mZG92*vXmIE?9T5ykw08R1!BVb-i=stX9G z#?Jjd^qtn|qON+|qS5BsI}*C!Te#nMVgaLBtDA$G@6K&)^!)DAtc1%KBCy6BV|h{R z3qCaY4S?~D&`VAJ0FucK3(X?*g82j^h_IMpUM8qnF-z@=j*9iOE`$|dn3@T7)C=Bn z+W-b?U(2tFNEq_lU*N8}N7Mxj%oK6z6EP-*%BPLCJuOBHKPY0rWud6{5{?wxs*g7>)o2YX)Jn6|xk?gSYnCK|(F zk8b*$Qlk}H0~GO;X<8)zXT0mIQE~oc$bLxF7j~qwkeyGzuzwtgk5Oto-*8 z!rrUQIcyE14EFmV@l@?;uGWy}1Gmo2i^@NM%qO+S;iI7a7g~P+!uL@e2APLVq4mmK zGnQ0ONIIqVMf zpz;hWfMrd^N-Vb&u zSyx+~)M8AN+qZ*5Orno2(INRRSn7*jXJwq=7N(0zX&!A+L8=HAgsLuxDja5nj=kCZ zUfwUE9?0`aT^)}?bDTo6R&bc``6-&^;PY+cRu1)7Lt$w1`Qm>7EK@TKqXiCgQ+10=sYU1$_0g%e2;qxs)FyNmtJHsP}~1W6U`03h>kKzSO7s{jUB{ zGp0o<*D30%F|wvC02iSva&)Z)KuM45)e9b<`KE`1GAeG~4en{1bGW$_nQKPR6cm+TtHEYD^Z_*O64lq zv6}XsNe1d*$dRlpX$Jb5Hx}%Hfo55Q9=v^I!p{QwJ@H}a;8|veby&zLX*ltNaF)3H zl2>p&(goduI`HRfh#q$FPtl)Yc_|O$z7A=*WCOIoqV^nVr)mL=wlf!+lp8jMu2pU6 z&fcmw6Q^0FS?=Uj$VTvmL)*0vNZ@Eo&ucZNw;)Rq-%uGoC5(=r@QU=^^tzYxO^W-` zez)V}F^{zl*aq)iaI3{T_`QSkGR$>W;HbnDH!iEFwq&o_KBp$}!gd1&fgv%(sX^KL zwC*1Gz`d78;KAros5HO!hQlXy_VQ{x|2mkEV-I&x-}^P@F=+is_6l;U>V8oY{;LWd zGYBr)1>2y=cAb3X3ZH?C`87VHRu};(9#7{-j?FfX$ zQ9hpPb%%=HW3p1Z<)BM@qu!@+o-d|m>BkTkm-b;;W=pH%GTiOEy*nMgEUuLgyspu! z@b${x1PLAaoI*1{@LujkOqYv$exR6 zjpxG}E>q~y&k?G$EL&9nN!`nZkL1_Z$JrNLqlb7uCAy%#6Ymal2frM@_fBx-{`&sK z2>VX#tJKn-9fBzfwa(iO9@g8{;ZXX}f{N;PWkV6o)=n;Q7-#1Mlbz^XPQ}KxFty79 zXXCW_=Nt8_a2=sv6Q&B8Ef`!qW~eu*l@Z2{)0ql|*|!Sa<4~k|-puc~voktX>f&Fl zJS?X~_{!KZuxnk2Nl(6-dIo!u3t;MBbwSY|SRytNSqztGkd_YQB0` zY8a1v)wQo^hE)0FW#+mZ&XYWu4A>t$Q*hj2e~B7fHO?l?c8Y_pgp-P5K==aa!DeS) zOda{Qz|%L%b~;YsS7v3ZPO0Rl3K>@Q1MRja(R=1%m=Oi;u{?LNosNlosXXs?&um+zwt|Y}B44ev&i;{4dpB~>-cdN*GO~;C z3*m-DR8IaT_Y7@9Ta1>26FZ4P=fK-DR6;SSTjS1dwgo0swcFmLRI3tf!3zxa^hA+J zY^5gx{D`+X3>BWSu5+b63t*gPBrSw7uSF_ym}!zlBnrq)XTD&_bJf_icu_LBo%f-r zeP*1aq%7tW(><;tMowM5W(olt8E3#MzrP$!t!a2+lJ~wqjqt<^Iv5=)QRNCnMD|y| zVCi_(GR2^u$E(l} zq=(2!o({;~wFp#Z=Hl#JxFB8!>-S_SC9-U}vd1g53^)vPCp3a}P>bn_Y{tNT(x~H+ zs!B5h5{U=H`;?mgt4|-8nb~7{Q0&cv7WmP&lY-~vEhGz93P5#9b@#FITCI+uQ3NTgAZ5&dWT_a^M9kQwYgOS5i43 zRT6Ui8ZNOecqRQoV{X;s0HXqKtMoPja<PMTsUXdWLl48BrL&R+kqnsaz{1W^#5+?Anp*V^)-*h_@*-XqRZq=lG{hI8m%V~l5Z;ka!hZc@d$XsJ? zha28*okyJ7DHlTe&1K>$S&DaOM(_)1P>ylREmvtQh*SRMim6@aYWaKG27e33wEb!f zUF#+(({5vaH)W&Dx%&4-m-;#ezYXvgrHHL@Cb)e;0M94c{GXrpRBpP#_ zn5rumS$(Zh9gSB=s+-E2^*r-8e~bodvy!ZrSDrrk%g-ZuYE)Ls(N>}Vk`NsqKQ}S2 zRp!3Q6b@8na@pAJC=*Z85N>NXY`r0d0+bjDzc`Y3aS$+bgfFiMw$MZ?6<((;jF?y+ zYuxt!Ojo((oI5$9M6$aZcdS`?&roken^LOoT3)3FyOu`UCe4~g3V~acw9J2Q&&2*+ zj{H2DjHY%oPj9HJunye6U=rCar;X%;;`Ea1nANcOE_l;IXOIRwiDmEM>4pT@SzKUG zr+?AYEwIR!`h0$)89CzX#}1`)Rh1-69eX|KIN~i*9_7V^qW%RM#Ev{tT`=A91%UFHmp;MOjp_%Dl|clR zMaj~@OIhmJ6B_fhu9wD=-E6zv0(b8rKJFVYCw<<(?Sec_JYOin#SHQcN?hBUkkBKb z?-@hlKxgzcayzMMe3Tc~4v>C;A!FF`Yv}|;kk15Dj_69SV=CvOeBy_$P_hVHKQBhc z#8y$WH&MdZm(im9bx#NOo27wbg`|1Jor;%;@uM6rnJ#-Wkr7|E*JFbG#$cII02%Xl zR4L9tz!%<+m1;Gh`o&1$;BY%tz0J1P7b0XR0)Y@YRMh^LGhRKSi^St+27YqF!7J#< zyjP|+J~)Qe1oKHAJDy+r1#W)XYK~;@$3$j+8_?fvg6O0P9K`2u?2IQ4Oq3Rvh)fjX z^5I!jCf7XGHFg-rlI$lc5x?#b`ymS zu;KI7X2ipr0`@E#ZLkgWj6J0vZA7M)Fny2_e}s8tD<(|oeUbnQc7({PkV9(M^X#`G zR}%8-&-fE3sKt8d+R_;eNDDmMUW|<7D2hdQ(@Oya;7u;SyDxdJ{s6#3BTJbGc+>L* ztPO8ob#0uy^G*7}*b~_63>&tFU*1To)Cd%*q-pi+^A`Um*ZwsNDo^lr!_tcp2f^zX zTJ5)i1-QSTRSbqLJ*lvC-7^Vz&8z6V72%8|f1dTAwL&TRmZG)eTko^)-Lo!rr}t7Y zENZifJKRa+BY(F-s(z_3DF9`!Vg<^#5+e97g`0FSFcqI~CUSq|p{R`UXVS=nx|bOX zZWF$EJ#()Zsft!|luIsMxiT4H83%b`@Ox!N=}zp+d_a(AQa8=E>V`zUs~K&*shLFM zVo;(!U+Zx7nS{8V$Hg)C?&Gib-&>zluXYxEp3ydS+}^zZHC)}D>f^B{A9QgH`hIaN z`UjA&e}ni!Rby=sZG(i{urG7Y)jH<*_XWN04_VCU`NP%NQ#%VNq*r3$p|Q!Pe*hAV zGu{Y^MSD&QTAd}r{9Pf_Qt&HdxnN8ggg6|gS)0s{?q^*L!jB1+X3%vG_g;=qR(xnu zWBGn-XbISy&l@f#Tse#%?xQ{L-Owi{J!QjURtOyE&j^rrn4VEC48-Xpd<)iZ42+j; zd0Q$bv;sH}Q2t>05&JUA5F8Kp9SVvJc#Yu8G7oBZC&l*HSxoQy zOfMc}KHl!pJ{`oib!=NVzh>u}G{Lgumbf9d?RL;)IaZep0*(cOIE0@t>JB*5ZSI95 zXJXoP-fY5z*x%!8oqv=;!Wthl+C*r_LfMhCFqPlAbFx{XX-KY zlF9v8v0l<+?ccb~#sP89E6^eOXn=`YeizefD?cwArTdCh&5a}a7!{GNH4Sxu``EJi z97nUEjc(1hhU|)0aMLJNQZ$hD0#B`uFiFK``r48!#5YlT@M1BcT!QM}dLuael^AR^ zi4*aulp@MB?o>tYeHDli@p}w`$k7yDX-6=wjR1GuHt&3t9Rc?6yJe7U*E>{y%n90t zVfjkbQqkm~M$*}YVyb=etIRFfAOd)Wc}aX-p`iGb&FW_`AscGI5EL`{SitEMC)-4e z-;EuOn=a*N*9F~lHw{@`n=L5TuH`DDJb}G%q{Z89oJwX{^o19WuL&&8*6K&teOMTA zO#}oUP5jhPQeOz&g%uOBr{*)7waq`|&%(fMH@c#E?^=#&m0g)WW{JTqgc-#nGv7K2=&)<%3IA~4 zFOxOZp6QCRLPA^Gs~ok5%Z_&%B{fOMrYR0aU0!CzY{B_LWfxfxVu5R`jVGd%!~x)H z&gxrt)gPIFiNt;KJ(!3bfptO3Um^oUx5D2t952o@lo6^Q2`wMVAB_;b9XSIGNrtqL z^D_lEN1r9lc+6xGe;yQtR))pY8oZjZv!9QN6Ic<$lX0IvcoxP5v;w*mL zz#kUgMOWKOkrX+Wp8FMFasfH1P?y_WK~8e`*~{~tL+!=)Q@-ZOy|)3f=!@wr8i&xu zQ|cKxXaGETzW^oRn6$T*@LT9m=8Q*ldY97IesRLl4?jpWH+(-5ek=R2Kq-)sX^abF zikl1b;OiZ0t-$uV52N_!mlcJ3I0H!zukRH4u0@BG}a$CD+zm59sN{ zm*F@bVb-jKPF?>oK>7R+0MihSiPEl$x^VJSL}F*DkO$7bja)YGCz`?71>NQTS<9h) zIt2{j&z2U%vuh%ATqh!X#r+$7g*#J;W|ei~w@f8qap^|R{?@S58Pac@#Br__0|qv_ zp9Wp1YLk0)eqecX3v=3#R?ASsENg5ij!Ys~VP#ha;KNANSt0cKS(*fLJ<=_#eHzq8 z!1${%=5730V-Al`td_|2N<<52P}=zx9XUc1#n^Q=rdR;AUG=Y$9?wi=Q*(_uMZcGs z#H1mfl}YDQ16ZPW&vX5R@83%l+iF~F?bN@LvFQ?|Ehf=xQdByL6KCR`@C3kWYnvzo zK~XoLICR3$>7g*Gac74XKBV^zjZ@9*0R<>(ok+@q_JSZWgw3JJCO_YTbw>lc5#E5U zW8;OwN_H@%iY5!X`a~T*k@bczrgs$duw_Xx2+E2$C~w`jRu_plH&za(uTg+is2|r6 zobOD&eO$S8JIpiG=92Aa@z{#I8OAeHJ-ZSxcwDt1%q1+)$8fz@?&JKfhwY5`W-67n zTd8?KnM0v^}CU;C4g~u2Kh19Idt{4;O;?QMjxJcq#qnVnm@&|cTekoMw z^zTtvyb*xx^>auffRSyORIbA~w>iX;idqS<2+Av=BusVkn%O9pF(YEqqjj5ZhgZ9v zD3a5yAQA5P*8wT-Xyi4`P>`%^o(7uDo!jsL+Q)XF9_&u@PEe#8U?mPuY{2!yvcmdK zh|l1-?zTF%wqq&n4}ux-*@8X~^^y7d5hen`RQ5<*JRc8IB@>Y`e22`>^pyjPv^Hqw zADjhvN~Nv%!>VS9Fi7xy?8mf%b&*kNReUdY7iSU2t!Z0@c+n@_^hng7a zx(SUjtot^E+)ZrsAq6Qc)A~>sq@Qw6O#uQAOtKKT~S%6&Sk(#`Ay zN63YTXLAF6%KVfs6Vq!W2Cmq+8i{B-Yp#$`Qrek2$>|ram$^VH>&~agwCncsjj$Vz z-b=msWC%|OZDr6aq~thJ9^XyUpSRq|%PEkwylKOzjOs@AI!~_-40GC0LA10M-Tv&1 zzS;?m{bEli^?2_-sG+BpkV^wU->5p$8rQ)5D#Sn!)D%jfYE#fY zcf@VX!6qs*VuV+(ljf2n@IgAR03Z-`@|(ohb1$%oN;E4PZvLX}u%}*84hu_zX_4^B z<&Ygk)shTWTTtL;6RJw`F;UOrC!Kl5Ix1H6B-T=ffM6xsfI5X=Mz;AX;6UX*F07M3 zjxO-Lj+**?5f?3|u7(}WFI0SeZ$Grs!F5}Uur9@DJ0_XWlpI>OK0Jc}}vKQbxT zx;g$nuN|2b^uVDhRjSdJ?R0{~#0#BbBJ&i}{<;j1lId{f=$4Lt)5!U31y3vIn`)t3 zMk0;xkKz2{sq;)K*+zkdFEkO^^&+}4v+7zY=Iwfz85 zbD?zwOv(%!z!F~dT$G7Q&r!?5_QnxHL}g>FVa{U)ZbB?yTm30b(w+_0!~Lc3mzDyQ zXK{I#y&}5wp*C$RIYXj@pkokXJl) zSg03is>Gb~Ahln|(>{uhLf!IamdbFjN0PiTjW*1>*#C=MsU^O+eKW9&DFbQ{HkiSC zjc=>YKR=6Nd6=nH4RB5aqu{mxeb_h?%@VD-6)uRO1x5t?P>lR+|z zCW?RWy&f54n5ADfYY+5cZa{rx;E?TOrW&862xiAR!+q9vtt$Y(=I4T`=1+jv-T^_+ z34c-#VLK6C3OeFtVde^z`;}<;4>h>-wvDY_M_QLeDtz2amBHenVSoxfgTamnt>D1j zn$GJ7<&U=;SsB7Pmp}SCtLp?G)As8C)hv|}9?K6hhg|V*=p%TcD@M*$pBtogB0<>p zWDCe#nf~udpgas{&0jho$WZIzNSkzK1A~N?@rU%)A*b14r{%Qe520R|P1P5IG-IJ@ zE9Q1?AgosXB7neWOUkZ&@oD9GajVEJbOm!5K%x-s@&4W@=hCe|zdW&E#T?Jv`VT^m8)x56VL#;s?BUw%eLYQ7K2;0uZ+J(F!(Rnj$;>GHvX(4^y0upJ|g~ ztbAA}`hEB~MmP1Zs-IZ&%vM%C_{&Jl5$DxA;0$-VwM&UBEb&V2(MYXFbWZrHomOooqidv~e`Lj?9Fs8|KXEmR2K_Ww9K$_0KQ@NNbbixf9;8l06ZS z@UJ=^W9Uuz5s^@RD2^Q*^YpQ$HWraYCsp)~fRoK6$)TF15I1VP#5Iv4|AtO!I?#xi;K=h&*Gxd{s-d+2m zva9fyy|4t!dRKMzpWz(e;iC04L`(}9ElZiwKD=oks>gfx@wxIw?_zq->jeC&Zs+&w zm_YPQamPx;Zbn2GnDn^IPJmo``3%t#`Dt+`!<$aYK>QM^0#{-9$ZS?}6Sav19txV4 zF&{aWinJ}}3XP(;z9gU|ipC1n*EzKvuDq&tnB=n`}H00Oi4~r4uFIV06-7{@M{qu4M0Qr zO^6f?9Ss!?9pf8fmY@0@V>YN$FS@FdI1er=J`Fgp2S^@KcBMx@#VRX+JiCddi&qq zpps6z8j9?&{!buO($$PLxG=c+jJuri^~m9)j<9T^ z^zvy}548jRONwCWxS(hE5_%FXD#vo?(ZiLkR`Q@@kG0*V8>g9X+OyD<^0m(TLI zDOWkb`q}O@ybs^}TZ&i?uR5w4uw-?~asO3bv#~fi_+`Xm z!}V}rYf)jg8to-wUTdvXs=#lt7~9U37Sn}YbgZaF%D#m~eBa$MF*@^S<`NYb2GxL$ z?x}E$cF+EW+XduT&3vSP)6z0MU-ca;bK~&AsWxN0%v+MF*>%T1z;tLvBHT)p5}^s2 za#Sh2r!08 zQtO5Y=C}D}nT(uzQgq`BuzyLNxbWhfu}IJFoF3R(HU0uXGxxCV>$X{%e(7=KkOn}u zJK*EQ0suMQyl8mgsC@AYKs{C9lp5{&WF;Wd&wsU|yS41EJ^)CAJG*PAm*?IWTb5`1 z0~J=o=OSAp8Ym;%r^o)rHkKE6D^S7g$a7_(=C@eAEoZm)y;MKt@<*c%c5Z$FN=H9T zUu<1P?f*E$coICCa^)@Lu3g*19^}{A`vZpg0WdGox^`Qudd}PC`l4aC^2fcgiPqvj z%kYKw5!Hjdq`F|{jjNddS!l(M_o3^U2H@zJTI#~vH3RO~Rw8_{&~?*uzRmxM)12)` z%R^T7%{?(YzS>Skn~Cs+cSCybgg8}T@%hRu=Zroecod3IB1u~hmn~sCK+?hX#cSfi zX)zPsCHU5k4>94A3GeDkKOON=bb;l zx_bM!Hrp+$(nBYguCq$#J5JG56{brz0`9_rn*`Zw5N%eE9#zsS*58Nu19t=47_6|xwkDwnJq8>QVXrlb3-gp z>qE@l&lnSRajN#Lo)-8NKpfSdEz9u6t#o?3oowso-f-!5P;m4(HU#cn$Lj+Y{kh`b zNSqvhJW#Ty>eFU)+i)(NYuOG(C4Pm<5;c$Z{mq)@(GBCYx!zsZX8< zye1LQn!dR=t`4mZ&e%T?YUG`W&Gq@M(ccpV*m6DG@N1VJ-SLz7RD9vLqSm<24Di8n zyDdyurF!sb_P!Jg=yN^DorH?M*>c&l^l?9L<7~Kaon#*v)>FN#@$6}U`!_7_z#Rq) zch|6uL?~`;9ld`6vd`_{-WJ8AzAKKu0L&YcsV%#Us0$o?1JQZ#7IBHe(I4wp1+d1R zzCw^h?Ea~{$Unyqnf~6k*UxK;+fz$#(Vf!06PJrootKZ=W3qr}zDG%xbqzOp2dePx z>dg3&V)M8*(UFvv%k3{ssjHTTWs3*BffY~L9XiL&MH=_|n|f~c-PXixGVGW_4m-^@ z25!A)++s}ItjWW7y?p#*(-(Wv3iS(ym_QQY`==MTE`QxB099aY{pdOTX31EmC$n+i zM-05|I;{aXG!OU%=>4(F-zrGt)<0~vlQP6uH<{tQ>OS`AIBguprDmAXa^F8$*jq16 zu4)gS6da1+r~)7GCYbSf4-QteQR7^lq)u}R@9-_FEB21>-DMuR*MbkGNcXa2FT9$? zh5yz-POKd#d%N*gNJ~VJ?20TPmWkKTJrN)ZzB=^FY_@EQ$p8r%-L;f&G^clutPQp+ z*=2Sm+bR+m?I_=R-!2Q^I=0wtO{Q;O9-13C*xC^d`ZXy^nW1;>^$vNiZQqNP3JzC8 zHQcnuPT@XWOm&3i2JUE{xw~x@)SeXx%jr+TqLLp(Y#^e}Wz()DJId|JNs}Q}Zy!5l z-uEWV$}}Hd7F=A6knf->r#A2oHGIO0q;q-&E3VBjgedH2@;RE99a-rV65}hnmrc%i z8QnOGI#-nd9u;N4Bx1F;E{JsxUcz>K)V+7leT*O8{M9Maw%@}j>EQH0&{`G~Dlw5R;lH^5fa z3x})y17~@frwCOnF|R)2t{=Iswx0f^wL2iayzyzPU=k(YIonel*_s{83>k4-jUPEk zEd^at3ja8eFdG?Ca~j807wv6>y6YAc8dGAoG#!)=!a^mQ{BB*UCr5AZ_}?PUsa0^v z=bqhO>FGL2?SNaw1Dz!6;5R&ftMPJuBLHXgaC6vtY45g0EInElfW0byPu_bdS6Dh& z4R3Q#dn4rj-5dxuH<(+oEKf|*AsZQ~t}O!^iOs7%)$f%UR}vg08#T-_@LTz`Bm1d2 zrHy#+ZeR)^$}+vR3pX|~ky}M$%?x zn5(5sfID!{mX#E_*5q{H*)KrxxgFq9U512ltn&5+Tou%+Fj4*372FzHIJmUe_xIRk zcB}#r%TDY{QvT86nV0BB(PyN&>dCX^2X!YW^5%97iP#TAg+ywh0fd8!42c#p>=7~< z>HWgxzW|bjR_R8D&ky>$&sN&gzwYhq6agG| ze8H`Rc0$#GSth1i@X`9@$kowJkENYi&&*5b@;k7ytgEkUA*eewfxj}QL8W`Xd2Uw6 zbGXcow28=$x4ih(x8*NLJXRcr9n>v(tk-L`gOt-=?7p&@-3@D2!llw6oW zv22w!J1Vb6QpKFaPtFt1ZK;xqW!@v zN*fYCU`VUEATwb0c~}RJQKdkOkrl~BVW^Qu)n~??|C4ele zB~7QoRkL4ka?)+<$lv&%NdY{PCqG>=@g$~nhuP95&0zE^=@;t}bwPm%&oL6?XjNS? z7!;o>ukXHl#Gk;Dlvu@)HdpQG-PETn({x&5I}c0x;B`SM^s_?m<39=m$mVB1p80w; z9OeNnWK@WhcLHC z^55n~$@1Ho3Fy+xK$0xEH6rbScmv$*we+cFJt{ zqJWrT-`+DoL4ZgMLo;1dnW#QamH6WF>43b{a%*U~wW^_w(gYFxg1Ed|z}57>7Apc5 zscU0(=;q$fxT4OzFUWbO~x+m zQacHR5?)W0;B`w~(erQR007$^W5eMe>*t5L{1tDQ_=9m3;%HwoeE$}&Ni3irA7#J@ zLhW~eGSnG@P-UM28Ov+(1$1SfJIH^Yk%&DwReJkB(6A`5sbaZzE_Rh8f~H@G8_2vv zt)!=AVNFZ{LG`2FLuM?Ars}p2=q;-f%Xtpcpkqn%AcAkstBtqn6`dCU0}23e6}~u= zFmb>;P@U1P%}3G1Y++_tmXsj-x~RZ_ z*r3QVt*qnae5@=iQ1R01>wl?55o2_BoHbpTG0{Xi(`u%=_^F)d8|(9w7YhB)Azx|| zjUb0<3K^SC1| zWf^T#T0kTgMw-eeMaNS6fq_BL`_y7<+o0JJyc~g-j2%B?+5*jY&;M(P05rNG@B5Za zqsI9qHRw&W{eH@f!REJkOt33 z|E(4PX2P{|>FjmOG2`KAJyK*~R#XCdp8r~j=RG4b|kc<85)91@GIt;dE(;~ERHRXW71YA^l6{5TuOVwzla|=sbbmXLh z0rnCah;@SD)`ckIK@WKT-#7pruGI5ec;iJ`i9vn|AsF%vU6yC}sIeQ2+hViRR^UNix z+FBVJ^yubsheqq@b`XLz=x;D-O3WsoLqk{tfdN zgTY&YczSHi^M$9OcEfg-bHlYNHRX7#u5@^%sA!c2NAs_WEI8=p2Fl){lnmiRZ|p~! ziVyEIIamM3&iE%Ba;jf%`gHDSnF6fM9c&00wkd%gq&3tR2jMR+%KJznQ;&0cdz`;C171H+wx9H^G{dqF zWbre*oS$PiV>Ww|r&bLS8HAIHgmz$h~P{eA&(R7qxFo&nX& zCHkWBg*{ur-tAFIE1PKlNJ`@15-5 zSVSYn8!9pKw$mpd&`~63qfMHp?Q7-MglZutF7Y7+hWudDxJu{{L8 zuI-NZDxJ3uo9l_rrsc31MEev!Pnt(=rngu0`HBZs#B1hBh31nc7x=Wxr%&Jd{hx49 z%=^4seLmf;7FR?c43@Ji5gU{!FnH)DO-(u)nl&l&vb--vXR&>ezc38<_x4?N3Vn|7 zyz@N+AR{9oqavfCAS0nX`mNM&&pR$2>N9+T=QP~3JiIS8&H2Vvu^x$o~=H zlYfHn<0GLW{{ozDd(P^g@5#6pL##+E?&TQ|^W!1gYztmD4g{NW-M;{Z!-r8T`T0@y z!D(WC@1wH$8LnAOR8W&+x|s)01@Bqfm6g$K^(=$+5+M#WW@$fvvPV1j4QB-9jpWKn zC`aZTmE4IzE8|=hs;ph*HsxeE*cx(ak_^gBe1&@&Hci;_`tcx4*_{uu-yPeU=&YXA zb!gSe_xM@$_*u>fQS!OPP0FiM@|xyK@VbW_JiR3UAvot$vufJb>0j_u^)mfX1e&3& zmS3njS!^>^vv1(efv7N4D=*ZYEVY?wBs^84QT}$Xet=11&+8)C2bpK|Wk)TL{LWd& zH!E5gXK6yF(|Ag;m$3p|-l9Y#7L+rJ%aDu_#idQkkylF)%I+O!?G+`zSLEd1fkq-5-5sSY zu}z$BYL7Q>Btb;wcNR(MLq-*vO=iU}Vui{jzXl7|+*gvAU>w9brVY*3G&{a4I)@0Sc!O!1Z6$=+MV?30bPlq_f)yd71LmWQl(qS^{2YV0jdtP=7dSyV@ zXIsDdRIuz@50mB!1>!?dy_a;olhn6Qzh3k`wMvL^bdG} zf-#RK8SpsR&92sb7_Js_^rm8J?bn?i0`VVg6T->0PG%LpuWVp%kU~x5mBW@FK-+Ix zYgU5{9mN_#sN|m{<1F54&);hN|3%pCtx5tjiy^ zDBRbFQ`eo+U9QjvEO&)}-;p`w8JVO%edwd!HbW>9h5uyHcjF8f2)u?^?NG6d*<&>?2Rb3{)JcmV8@tyE$|LGd_z?ed` z0W8f`Gp9Zw+F?qL6Sy~=!G;RnytYE|nI$9;P-zl@(M3*v`EJsiJJB$Yem%IzXTFU< z=KpCr>cKbv`bIVdy1NJ6f7muI=`o~Lsf0ee9D0zCef$6ddn&D7+Y&qQUiMOlo`SMX zr^~G6EtI*P_lo6TJgf6N2|Id8x)RqwSzYBp?7_36^_dNmmhAOSe3E`h zjhu7Zx~OGQwM%@QMO|0YaN3zwqt*3D9!N3;ep0&lp*_5u&a$amO`C#i*MG&lz`3n~ zXCKZn{mfEt=Jb2}a1b67ott6e(x^;fsy4^E#ym5SO}6v-(u>k47d9Z2dU8^4ERrFT zkaKckfTIl7OmAksERyTgT^y)sDIu2QOU&F4GVW>Qr8GA;+qRrca%r~98ome0*vBfP z)HQ0Es@J36p554A1>9ANU%PpXUxA2z=&4p6V6wAc&_eE=sIcHey0*TsH1;f&wxxrk zdLn@lhdCcg1(~E_s835^f@fEFw-Wb25+^C)T%8_mxLV?mf^LyL8KRc*%%C!J!$ezo znO)jD&T{_``P1LZ`+^=U^?m_nQ-1*lnJ?F}`fG2Mmt&#S!<_+H%MfL^ zh`$LH@m<7^1-Xt!+J$;-)d)pORinlq6Q<$+YtLHw8=HPQy&GpN9e+iSN==YsUO4 zB^=2fa2m4)?Re<*d${lBsr7n;e*x&GaeW9?)F-Y@+H<=ZI4QAX3SNI zu*Fh3ld?S44ZCCvP41Jj{8u)t_W2zPZy0l*NZD6O;Z04-atMNKmuEzJ37a3pL1Rg} ze%-?L+FAG(^&nSn|1T2cSzSWA`G=g^eoGt&)QxsJ2_>FY=A>NdboQaM`e`A0;l#)c^}|ihn32sAjG?X*U4;1Osp4(D>d5N80!y`4HN=zAD{uGRwu!Ob zu#ZK3GV&xE+81vwP#YvLD$5YK9Pe%7PQoiU0z;UK;!}08%D?vaK1*7QKX01gLuEuN07*D;BS7IB^Xnj1Rb=6iVA znPwVCw@<%anut@g$_9;R zI$`eppfcZZ2i=It646j+Y`Qoy&UIl@48hx;t3sm;50I;sv4Lo>Z`^E@g4Mi{CWsWL ze#{*=FPZ@{!;kA9ydDd5e=c-rb?Q0ffT6p2Dn=>x&a zds4hrCiTw9Ba|7{zt4xoF7?HR@SmQzlJ@I#Yko5K72%j6r+8w5VYXj*Yku&ms6EX{ zvUI}e?{3_H#FDc^1^l85_H$RUSYjc#<_XN`unlF~xLQigdkMopTm+kg>m zDT=F6AvNA6CcPnYynXd(K<=u6!znx9C*?gY;c2TQ&ql*;rw{iV%=fGG_lxxRvwuVc zkEq#UjwS7*>*Dx$exw|F+OK`QF$Y(DC~5fxD5=7^Eu>Fy%|vl8bjl6SE@YDkq@p|< z-03!uk_pErZW9}iG$n45bmfw@Tl&FuSwG>8m}|V9Sdr^#EN`$Nz2etg28Bu%d8WKv z`+cC^23>$Ce=q*$nFIrQ)~9pZcdh~4Q{9Afy9avwZHc1RmOoq#P{(P=@=j^?Xxa?o z<9?5~O}DlxDG$VBpFqxPDK-RhtT=MGVW8~+8=h~=D_)Q9yG@En!GO$tb;UqvS=0e+ zwx^`JNbidgEhXdh8-^$G`3_LAm=$?PH|%iZFHB86#dJzEQ4y!K@_5Wq+KPA|563)X z)nKtx@~ zJm{8N3j2Ngyrpy%yp0Vz35?2VvY4|WotA>jd}%}7djrm6pA=_{S)-%&`u2EpMuK7xCg^VUZ%dR% z1Z%fCo9=h0k6TnYgm@%~3TGtt2J?BiBAC391$hU$y12!@!#s}(Q5(t@#6-W!AaaAa zfhMd}(?LeqY7yFcU;6RlIGt4rBpOZ^<(KEd4l!z?Fs+!NbwzB(kdV+4fdZRRbq+CL z(G7Q+i<$K4Bs3&s(v&QM1#c{lrpo+kOE;eR!?X`qOJ9y)$1Rv*U5QRwZc}`d%*h4GpC*k4!jD2AN$#?!%%p63^ z@xa2Lav_<;WUgZhV+soIH~YEc=_M2j{}T)}Vzs-6IkOrwOmwdvl} z9l;toU2@pIhprl(F?$-kbn%<3q z#bpIaj#$dvJWXszg&$YeNqm%L)ky}VbS&{PF3cye*js+^6=oV9F(Y?8$sOxeXCU=j z)f<9H8|w^64u3ylK8%5<;8}WWP8D;K9triNfa}=VlPhyQpZ?AanF9u-F5oYK(wW&A z_+xOti#aK+G<6V`uJqQOsFE^MD0E_+8G{ZCKb;)*=CqbNF{f8fAgy4Q1Y7FCe*y55 z!pV~o_gJJ~Wp|C4?-W7{a?Zf(G+q*#BsUUoX2BK*I0^x5T!aQnDA~CSYIM{L_%?-1 z>(SmY1#rz7LLEtr2}^pz;IemMzAc(4%a9Lz0&#Mg3dZ&b6kG!#(d%|<3+Fmv zl95K6LPkjsUNz&x>}+qF5u60eBZIW)_?<%jVxl*tZtZ78dgSKrJSD1RWIokuDi0rL znZCFF0#xj3PAJ5|GP!!kro&S__=N`D0%;t8b%I)~c{dV>#vcu$vFy@hG;S0g4xqX8 za+XbJ=A;d?y`;C_=bK{t7PTFtrv@6ivsQw_34N6l8=1p>d|f{dY~|I$Q=8=q9I2T$ zBQj^-CDcSt2gohtx;Yl;DCVkZO3O-<(%Tdl=Ao0hnB!m9!V?(!6`T?_hgD@{U3%*6 zI@-@Xrpa^N@k&%(uGDC6Y6%qM!V3$l1Io;)>HG2c5p*(Vk4Ma`EKPP!byOzF@W(Vv z6xa608(>Y2_s-5e6v!|BgoJQ&$KFq=OXJXV0DUU@mAKRTyOJzFTxAs(c7>lkRH7JY-#Gh_`56!2hM610!RZzJQikP+sqT_*ZQ{Z`)w*vC ztzlaMlu6hUQ4q3O$Gnd{+_B%zute0U>$eLtOB=s)X_PJhe>m@ zM?xWD^G?47S7wCLV^NZe%kClPrbj}PlvDj1W@3we=o%>U92SW1vT!0^g#7JgK{$_* zk^gYAAiONNkDlQ@f5H7y1D}8f$YYA~itsfm?Z>#2Km03*Hzg&JegQfMK3HYbteNXP zfLn5c4#HAICs0F4@(Q9A;Tasy z0Wy#s$5%arp;;WP+t(SgR}Hea{Q?lU8}Krjz~LOvY69mu+fdJ$VKajW*@gipR&2#> zkk5YY$eng|-sqcHmnd(7pJ@W=at&+Kwzb3G1u9`GXES>K?B12}gHPKj)vxD`53Sr! zr+VGbXWL_qh*5s-niAm3Z8{<%*bWw{tB7Z`%^ay~dDpNrDI;SB_WBN#mYJ!JBka04&?`{5`Y1IXHF)DZ zS`Zd)AkLg?$G!30oW3S5`l$r*$cGvZ5_mkdC$4o5PPYzL%$u+27#-;m%AGzKsFPIka8H<7j+;}sTi{B+ z{q80;C}U;0$Pi4jQLiX9lu~LygB;RGf+B$iIauxxkkyT{@4s>0xC?@t$2p`w4O6Jn zTwgJc?@Ha{9}CJ0fg30Zuv^2&Yn&;VVRA?~?@~psyryXob8*lc3k%{Tk(`rTpr-H)8; za43HEDFt2h&&E<4xr!L{>hxR~bX)ff(2x^gFvHZag%L}NB~VH_Jo#)R6e!Nq(JxmM z0}ZBkl!H6T!GEtj*_^Sw=sp$MWEjKnw_aMi7KEE}FYDaT;o}gCjhKKsAuhwyfmrLd z`9tDG@tmJl)h70rc88h6{?+ppb-w(UqyLC%5u(V$loR{CGu=epl*R_3d4?4!zTkqu z!I-i+x$)TNsqsWg1iCd^EQtetiquT~vIGMVLf1E#F*410^c<2O+YfuO3nop!1Qp52 z0HtIJ90bzkADPxH*yAzh+SDvKe6JeZG~MMCfEcYXS(o#6%+k3E^15=Q&o@Fr7S+G` z-;rk?@u2@smxhP_69+BYq_m5`QHc96`!zF~)LC!fwBdAil#TA@m>be+z!1*;3qS!U z-Q^v#stdHLM}*I#uQES~qxoR{S^K-{&roOeJN#ApGyku~e-w$3UnnQ`&bFw9sokJw zD4oP6uKJ?`NllnMgPf8$AMkT{w)AJ;`ZanzQ41SPOu5r;!LpFC3eYqX!*i2nI7{}q zi9fL!N1tn9+g9#il3_9nz&&SL)1rwVJUu%(8N8H}y`J|9>(3!&SMO2omgbtviZnmf z=$A4(h;E{g$>-%nNTT;(6Mbwm`|U(aAnbF;3l0`x~!T)B~%gB#8?ek_T%w?@S8MOJmCz+ zh-%R_Fk3@E`PrAuQk}0qJs`13F|Q<~j~L6nA-gfkTzbn@wpqzq)=@ty+s;|fUr55v z{DmYD#{nziI6y*1L!1PEod&;;1H4Di@Sk&Qym*N?4qlt0@Vxr?=TU(C=TT6YOdqYy zE~9sym?u^uCl%O5r4E6xxWy>6x@&GQ)heiG+d~72BYVUQ2Q!E zxM9>+(rOS>*87vdv|^PtrTY^z&33TwarD^Lr;sz154R`scTox@)NI5EFUPhSNyviwMOiJhYR2HIO;9#+DS_lnj+%UJLm3CdOIx$v2Lj*hG3fv%a$E|LG&B01s{)p|9x7V%Y%T)5xsyAR=9BwIhtAdT9w!Dy zovN&P8`D3?roaYD1ced>S_J0@e~88)ihLRu8cG~MT_0B0i9lm!j=&BM4$j9Q7zlpS z%ck)?@-gy6Y92dlBsw}F{n*y`?o}Lzl4vc67XsSm*;fKbFQ?S=}3SoTQOLX*NN>(L;F8y#yB zLlOqhjKLttj>DoXmwAA|g7j75e8j*Fw`Y#T1_Y`fc+kq4(7`}vfo1TlOC^qUVc)O* zIu`m1fP1#OE@5~lKNuKx6MIU{{Xn*`riB!jMQhup6;1O$)zY5gSJk%7)gddI zk*ng5gGEE^=s;wBe-z51A%94w|&iu;-f{j){Wu0z>23LyFbsO z<(jSGc+v9Ilu8%eyB1{e(V`0HpHQ;+ zV3Fx*Wh}c=BXF)}hUNhSS!{8vp-|#J&8QLc1&LinqRr%*`ypO58pDLC$5Xu6l2$Ci ztGOB_zCB{dID(eV9$(^N8(cinD+%v>(hm86d9rXzS zP<6Gg{tP8gcO`_%HZg0!^LYW#?3WJE4=(G;?`BzW%zZtvg59KEEI#erW zLH;_ix>p#Kh`oT*?R|K%d&&>isn9;I>LIG>PwW2L1F2f9R_uugsv0`hkGTl@KPMyq zEr>eSA33XR_WmRF={ejo_qd2&9B7JL92hF}jN_)7V!rVWyyV?}mY2()w)d<=K&nsr zbyL#BlL^WDWWj!bGkzWqTyIiz;`sffWLP=xb;R$C?K)zj-P=IViB0Kn%f_gsoUZo}x^!tP3B$@{)gX_UxlT|1tq|MWgh?C2u z*so8q#pI6hC~Y1}NLgS?=6x2Fs7js<*zE+y0rzNo@Cb}M9{U#sjpA_tp9^4yzIim4 zef^SXZa_pxryG|f;xq0V32R6Ail@A>&0T%5*CBdgWBljJiqAUEv$a98Zcqp7K8#cxpm ze*31RDZgYHKTxPv_Diw21ja{doZvbwvNsFsFWw)}xga9M1S}!r<#sZqErMRUj2b&v zS(-uaW_6CK%IM!_hu65uptyIU4!>qgy3%KT+b+jCa|Rk`0$G<*KaUl}Rrd5FX5zaV z54DONBp+`Lo?lwS>UnDWt{yDgUjrE*hfa!}Cn=w^E(@>H+h7_F&2%hD(r=GrtIJCG zwNZU_66ARColQjuV-g#=rt@w2e+n`GDl~n1LpUSe(bU_Zr+LxG@5*@eNVst1Q7j8`!y{LRxUoTekvi_wgvx$1|LXWWP2Pq+`q!48<(!rAu`L_JE<8hm*@1j zK-MPp_Nbs=c;)&@)lMoCYAN-NBU5+6C9)`Zqw6zDGlidq1X1oHX1VC(noYYwjJ|xg zWgW}i+PhMhygYMP@=S~uxcW-bIyyN_4K%6)tt8o2pX{T~o*chS23M>2;%Ymd)J-l# z*ZcT!2p$0YQRGhNvh{rlEZ?$4kUJp!pvmu*bP zW7+pxz>d<64_B9XscYm8;$_#XHY?E7i=xe)<;aJ0Ki?^pfe|TWEDR1@+jpAMDQ?@- zzGfwjwQ35$;aBjFRG5c0iubIw!!rRBlJ_aEcDX0C2n z2xCt6Xt0|CViOtJWEn&>3;iT8;WvDv=7pR0Gh56hOr$XySPXt%ohZyk8;A?u5?#Ll z#goOV?H=u<^f|X`2)r20J8P-WW>w zSKT}?IO|aqOiI)eQl##<1f>@-7XYbSObH0T$*yzeA$mL`|^s-ZoWMHk578#zZsxV|b8?+GnDSCF+M_e1)g?x}V6 zFIPPRepFN zV$ZG8@YWGMpa3hEL|PTq+sh(4>jkHoQf`d1Qr%0Ip9J@j)Ri(5Kl6>0gmjaa*_4lx za1kHG5#?3}qOZXCk$`B#qpChQ$Z({e1mt|Tj6}In+Y4+PuUReEjqV9#2$ogF*76iE z((0iR$c*1-O5yGW<5Mc5Jr1in=sN}lT_a zwrZ<9!l1~EoGQY6Kk8h!$q`I7iyH<)^jpeiU_nuN_Y1&)AkEwAAjf_N_QLqb{vV>i zqXgen_B*0pWg;o{*+iiPxhNVJH9}Xm5zYo@V1c(d`8~cv7#HWfQO*I{v<0gFyW0l^ z?zfFSs+gq{Z<3Ju_izr`N;TgkO&1F(?N5DTaJN;%YpP{JH!?{0bF0$LTl=HI=RkCW z$0tdeg?uQhif?o{3r=&}sQd?I4hN;~5pkY5Q1KUldyjfI-O=`O9c~+|(iVyXe=P3f zYn?{Xb{p_A!^n{^ZFV{0??mwgiLMx>>ZxVgWd7^z)ybDG4t+;+{-G8e1 z1>j8@xr&HV$5qSO;wIn<0?##eP!Ie9#AV}Ht?+ezCtQmE;QXMc{dp-cY1&$lU|(Lf zhiMuZkaa;7_YmItM7*d1i9Mejd?2IjPIy^k(MEgm>6B7tN!wfed7hJ-lisGMq%UG~ zezrQJGsP5DjJWv}B6U)OM?Jc4Pm?~2SyEA~&8DFZH=Qt-vL-UFF5Gsq)WSJwNEY{Oe zaQ*0H{S`dQg1ck ze1M7~Ye)}5Uak<@vII~j`!p%GNn7YTN=Ce!7i23e7aX*hb>xcaPeYoF8QuZ?tW$m* zGg7w11ksHt>a=>PRwV8Ap)3EKo6$Y46^g;t?T z7}&=P{NR#|FtkdKiIQWfl4jF8ZI2{9A3~jF6j2j_K*!0F!+mVHz{W!F`6j=(C`>@5jyn7~0xA<;he)1TY?t2M1CU)?u=PT`AzM)%W zec-6P%jHt^nDLIJM%eu9h}R5}kWmok{%`vImLUKMmxlYS2*4u`~?vCa} z#KxuRH4q@Ls<_J?)Rr?Z<*+6E^aa+&qX?X*N@ad{en5d{{!Ogm;3Gk&IhoRU6oogv zJWd!la#sbxrT8VP-V)mX<`IB@vZU!60$F`bH9hEavt8s z0xg+;0i+~f{sKr-@0yo;(>IYv!!%o>8C(I87y1U334;z3Ti000%VOJKvgL z^d7`6QrA)cq`U0hi=Ct{puRP~?A`qmw-yq6|FTOG6rz=nrZAFqr~PpzCn3+Mr3oWG zv6UsK!0#B$P6H_m_o?zsKO@JgCTmINemgx6N#h71ds&=0bRBKskSQ^Gz4o5Kjc+jE z(|zO5^Q*#L^|7o<$=3nj?_b?^UW6XvEKs*ef&+@~aevZX$RET`Q^O>+19lObZCuRX zs@yXMR7-j_oRqMDO+F71s;WwCl#;}vCQ@2$Dn8Y!xVQ_|1M<5i@84-XFCWzqvho@a zCw+x&2q(?ZF-Q+?rFrs$wPe4}15$VJfWspaOH(-bK$@Bw)^A2I+0e7!E$2os3_S_e z!=oTI_%g-Ri`0z4P?9Vp9@rT=dne={*!khl>~~4rWNb0FXgc82W27WlQn8jlUQIad zw-$Ppfe*TZ?>}uSXanDNg)`S$PB5PlUrq(mk;Vxs-khp^v5w&XJW?3e5y~%YJ0S~| zwPtA)WFdgDD52WOgs2!h_*(axuPC3eP{g&awTOsGZJJL!z zn=1mheD6=Pn4U}3oGZ9YlE+&!m^?rQBgov`Kag4zst>j1WO{olgeBbHPV@H1f~>Vc zBl^h_)>gLVn~aix*dO;<^C)a0!8n@y-N^RJT49-a7fi+Ciu;UHj_R5|2~&_S!HRS1 zLLT*8ci0z@<(qsZN|u; zH2z|8aVZDA{M;@~fUy!3udq4OZKKie52vt|VG7rkC14e9n38AKLaXFeUJB>8A-4Xw z9Y$b~t7-7Du}R;;%9xjEWKduhay&0Q$vn?*1g0763rQF!U@Er$)FNyFHL&+xEU*>gOzqsZg zxsWtaWWrNk>JhKDK!#?EBi&E5TEcp_!Ni*9QSIwq9+`W309#XWW!iogSChFfj1p~f zZrDRFKD)9tz%}@qYe`l=MZf4Lomj{(P$OYIkvMCOzZr^>};y ztip>L-my5CtVcfvR*S}Iz?RX0m~r{W<1Ixs0s7@=CK{E9BwuTB>CLEnv`*8sK1HPu zZ&ONM26HW&@2<05MeddL=6{S&@-gbsPdoP0TKQLZ?}J`WF)V)WFV#_}wGfR@w^(tbG&5gl8QQeo zV|l>}8p3OY<5m3FHAIJ7j2jcN2UK^D`lP3oqW9;* z;~TSseUKDstAJN=xS%e+|Bt+{aEq%+`o-Pd-CcsaGdKiych|w)-66O`fZ!G^xCRRZ z4ess^xs!eGzPsPGLBtnvSM>bm3EdC22r5tpLt|Uh<>Mga1oEF9HI|g zsb)icLO%4kgddXVPPun&K-gnm6FR)kvy}8_@`(Y0=kV_d5?GPq`&w&=9vn#vzVE9Snuub<@OeLP07Sg)p2wb@s+Q|$t z1;+E+w3=9B7Stb#KF~#bjplK-Ed^0IwhxBOwbjo;6bW!peUR5V)=Dq(2vwJzL}=?J zzc%N$`a=1mHTE;&sgO!+QF4SUGC7i2sm7o<6E(MARO+B}rnP!T<}cic9k+Y>`qJ?x zvGQ{9?XQXhQR!AC`kEw#)*hcp*bsQ5;^|r4`EjC_2SA#cx(uJux7LycSUw2^B9f8S zp%&ycy%-3&K58bOde6@v^E65uM%~Ncnzku5kmxH5o2|tvD@2>>$5g1ZeDv$klSX?K zV(35okm%K#si?_#5rV=zCbKSW+VhW+9G+`{(H@|yN!!hh`pic&`mszh1Xk06=TO0T zA&o)F;)WKYh3V6yG$Ap?V;Ki#rJ__3xHr7oDPyB2VZ`@==e=wSvnuseP!{6Qz_V7;R4PS-ve!6Ihqn$>$q3;b+xY0>ourSNXQ7}K&o)ByJ0U-!x{!b7+B=5odBgrH?B zmxbkWar3ebf40sI-uTn-YKK>5G;LfI9HXjzhPXF5EQUHc{kQkF26z37W5x`{sLB@+ zklga?))+>`aUto#+c;Szxeqna2&yT9s3IJRk`kHi%YGb{%Ip+){`KC#iSlq)D!|AWe~kl8K$Ca$1L#u75r>bzjWpAXvVl#CXj8 zx-~wki<6{&EJ^+=hY7Ur?*lKQS+O=@z_#(ZPBhu`x?!?+Vz6mM3UWN6j6$ZSEY8&^ zMe&3CO7G7zU+!%-av(v7+_c%*cCA1o5Ux5cozuKi0*djAIUh$~ezhKHvjw4*a>%-nPz8aX#=(3T}TWGoj^DbpEr{7u&!pX(+Yh zo{>i9BhEFUg0|?b)m|4!>##`)!1btPI$T`rS5=?kMdYw*Pb`Jw0lpetIdrT!Ids#; zNr52W3Cc&^!t+u|!^u zM{`mtDr_8AMimY|83C6L;3k~R!`b1dvcFODmIHWQCi(StMnYWFcWsB7h%D3T#V&Ci z;$#=zO%37-)D^m$CzEt(F%{TB8;&ZnyMvYJ(9;-q;Y3#n4mhGASnS76(9%7!$(beZ z9SCH$lc{6m%aw@oo`6H4#I_hi`0;%fTSk#4G6$F08Ph6z1MoEN@{kSGEB?3=pjqyztKF06rJOzt2yp!XY@R`6sw@57sQl_W~NHo&|kNMiBB}54{$@z1S`J@11&T^?g)4 z?kS>ii0!0+>NzpZl<1^v?SXpn)FUv+A2elogR8{SG&fg?8B7*8dECAWvx~-IlrUX@ z*FP#eGJmWl%6u-9XUJq@R6@Mwq`Je6rbC&r2rFOiW7J7uk!VlJ2IvoyAoIwDNkqgO zPq;Io2S-W@SSW-?a%pc$kY{}kDwO_KS@~0(ewE;qtu=rrST_1))hy2&*SeG znqE}q6TL{pQhR9b$%r8g3r5zJg)X^BW0jj<<&KEy+!>8dA{8}|oDdk3b0i@gNGy%@ z)pL}>Zr!O%ibVRDiQ%meWu_%UZ^@)JPCv?WDC#PElpLJ55ze+%)TM()4pQJVrY5A7>4Y^msY{rCX)fA~O1(RBhoLwwtn}Dd@e6)NV)nZJu z;?n5nV6;*^lDlTxAm3K1wu-As{^hM?2Ta#&D|f``DxsOReSAYRcf`!na}MdpRx9J7 zXQ6#In2pals2{D4?GuhbXGdoCW**g^DCeJ!IF*uQZZ>J- z>*!QR^xsis4=so4?s>}-XAA{NDt%3@@f?@sa4E&+e-$pXW0|6fK}Z@0D}~rA#xcMq zlS8SnjLHDZM#hs`P4_aQ|0z}_n0Dv|V`MzfwJS(h26e5LG9 zgg0GwQaBf@k_wL))k4S1fJc)?Vnnj+i>)VUV9JK1#E|+CRLy`MDK?D1NRW*n4OH`D zJloH#dsqt5IjJB06!9gJg2G`N?E{&HiuHx`2h3<1jL@hka%0iSK>#H&!dEzKlGxf*WQaB|`Ko$OyZ^xZtPX@iRqa*Z2o`HQ|* zGwOqj22;S9r-sF6$6}dK9l#@GC95)Jsga3ehfOATv9L|aN4nUHrWo$NO_SGSF=r_?72 zay8?p2%@8&?8a)i5T@06D zO9btcu43C6Z5INCM#Y33Rw;h1GS2MV<$TmpOE%W@7y&MmcH0uC>y}+?8G87Kz+% zFO54i!bC^O+=+~r!hm=Sm)a7AbE+ZYW;CG`4a0-hrtLHFOX|oZPu`q>N)O5H>Vg^5 zS!6?JLMkA$Y+o_Ed%qKxp7 z8{Q8-%|W253sFQ^M7>RdbOf__10^Q9RZKjjI*+j!Ia<90B6$R!y&ZI>lmN0Kr2M_F zw?zN$R}1cr@7d0H{OT*@8a+r-_>jm$u#nFBD#Mb40ytaLgS5f)#H69x3P9Uo&r77i zew?{*^S!TD<&mC0#`AHB^Q8Gy-sN}2<*ZFh#icdcF_ak`cHzgO{~QcO$egx;iDH} zk>Ds*K8JBjqwwwxnztvXLSj|=E*0JaxIV4PVd#3BHzuH_0G3QUWHrNTrPa@pTY2GT zLeRu8F4agr7*~GsBt+1M3z4pG&~E-VGc%f@vMF^O+0VGwMw@xX$rg*yN%UNG7M96wT5fHEC*X$<5tEY;T4UjO^+YBaav{>7$$}_(eCKpo?Zex_vRj#F~LE z87)E+0jt5vOog4zTCOaa!h=C5i;^Cb>JxJMrX`m&2V50D0ISW2l@+Lg_hwfaWjM$J zfgz#Z4NoC@lIi+2jF5d(AC3~+1_y0czlmiY!;+^JWkAJs4KSbb6|p%!daI{V#zZ$%8i;4<9yEZNc-zth3CNidrT~=W%z53fHB+&k#?6*rK_5r*G1GzMh zO|Jes@x}sb!J#c8lF)u&3mKkqnVj~#K5&~VW9K8$BRX6sB0{ljy&R0%lrx7JeF#?# z4}dVap<#FjMt|v;MX4Y2Q5-#0K`oZT-)|@}>DDX+DEJ8jrji^p>?ng*Wmgje4L?yl zSY16EE4k2KT1|bVisP3#wb@4-CVK4QY!jJersUbt{7&^7re}A&r7x(eP~R3&`mvbU zb4W_?j;|t0N1JU^5wp&ZISG}bKZnJ+bTE?a(r8$6*9XHxLykQ|RWamsO$g@>vQdVP z6_fwWx*doqkt}D5Iwix(^1%m&76)H`i_`w7uGGxM8cbsJKjkQmSFydD99H4ND$5GRmWE$IHIrlgKn3^$N7L=YV_Be1De zqZcfHw;b&-9K>I^w63d9kxO1FvTz8qh4@IZRj#c?%$Dn7oOB9+kVKQ_CYT{R<%O=Q zdHueJVJ`Ptyv-lhDISg($-V~_lgywUzdde)g{BugZ&5F%pDU%iDQh+qm!|W`@NT-v z%GtsAbA@$~%$ z=%qHvIPP9L=lYb-ME0%3lQ9sYsS%S*mKN=d=`kS;`VyaI@#>j}rAu4Mlr^sQ-}AYt zY;EAvb&`4g)$__gybKwWkKlgTpm@& zw)r;(S;X2Ko7PmP+5&muwpBf9G87%0@_)5Pl>)QsUr=wJBHy|WZ&_IyB4I}jbNTN8 z-dfk9rJ+&)g<#H5m^eSV^U>N4{=Iz?J%1Ui9RSq|fR=mX#iEK8%KqlxhLbS7yUOH= z-Tw&0NEeTeB=`m^#v$rpSigC(wx8 zQY3d^+MSUlpML*05oEM=P^E7~b?OE}4&JWqao~$mS;Po7{u4p++kHNO_Wd5`I!$!q z3j6H)GXy;T{z&QH2ok45Q)I8nRHve^sW4eTZduN!$mGOu{R=>u)NYD%#? z1S%yfRccKE!#~?k0SM4OQ5Deg-?LiMFH%o3(g6TuX6jEAe={gOumC6%f&5HXP;Al1 z`xmsEV0=ILE&m3PqNkSv!0gk74s5c^TBZq?*aU+Gq{W;6%>W+1n}RBmo@*wm-*F1{ zZbSzLUeL%*`!_ug~u2d`DRC04f{eLy56}GRT>b0BBaQeKtW{M~+%585FP7phSZ(W-(WqUZL!~AFAlB0 z!Oq@6*Pt_ZfZa>eKYIaC4-81zc>rjwWLh2r{Rd=&#BZXNk#_!u0bo?@Zgg;iKDb`T zRC-})eQe+Wqg8MdBj9=#4KJvjU;V-y&h5b(kjp=%pW-djDx-HQ>3iWbEG|Ql%)oQs6+eMcf#b`l)sqA(_Rw{ttvyDeTDH zOdV3(PnvA$yN0k;w}bx!07#DSK=U?`sN=4OHJKQbcj3MNX9obPh*P4rGJxHH@2+S; zgrI4}e{=w#Tng1Ih|aXBr?CGGmfK;I_a8lgvdJAdvO^Aaq1CRFQ_s+)|Ha^Y!JR)( z^m4{_C`7Ro1pl81QUGZ5G2^SvdtTu0qL8)e{~-eqAZ(m5>bsLzLY8k!ge&`M{|S*Q zRf%=u1egu?eM+6{^RD230ieo}q_o>O275)4r=zYimHcl8p%ooVaj&+8IbM8TT$BGs zNcL=dn0DepDt)7ojddUW-wb#OHRaz?sfobof+loc{|jLX04d`^xJfna<9R;6l)J0{9ir= ze>T>^p}_z6n1Mp(|FNn?M>D63K?m?Ejy zn<`%Wh*}2%C70(PQ}DO%)^prMh(M9>{%XKHd4Ad4DV3ymPX{f>@$Ti-}}8T^rfLVX!N;v>DJHhZ;g?34_ov$hnN@r&E-^gffH=S?9Z(Br0 z=f8?20B)Kekc-dsRxo?6sy2ZRWt#n|6_D#3hrHIbXHCcY^w!k{#z8zJb1B;;Gha zGp5OP^mG5&ed5@GSV^f`Irb?WPD@ZW`V`j8t$l~Co5y)I!X|*-DhMFnS!?=w9jIYy+DucVVGxER7_3c{h@^@GYt0{-ifrHvDurwMhW zvLf^Z__$uNsug4`=$&0n>@5_D`(kFcetH8KM(`XtDi}fz`;(Fx0HFVhy{P*k%j5Co zWh#0uHJ1~duS724I;*QTCyu_(6-ns%=J&H}s~|X@L&EO~khx)RE4`X))O!ha$SLxO zbtFRI5$iaHgiaD2{mr}e`!pVHdu$`oTM0`d-oF+qz=ntog(16RB(JuZ{D!U(*JZ{H z=k7DR3UUk53bMKvM_ElEx3Xz~(7PePjly+>K2+w_hmtQpWjxUZu25=_d#qDiN@bc8 zE~9ZBHha5_)>%(*?_ytu-nQQx0)f4y3Q`g(nMyro2ec63PtI>N*A^G(6S(2*FNNDk z>)OY!m<2@4e&3Q1C7p+{Tp{t6mMv0sh;_r!xMDLLPMm1;(5;aAdEXX6TLWh%bt(K^ z98?X77~b;oV`#w;h(woJ`Miy^n#S4<-#GNFf=}26FZrxO&EM7$(P?I`CFc2j376J~ zA4K1cUJCMlgLN8l_c-{ipDeB4KlDEMZoG7VKXr2Rt@Ai{GV`r-`v>zqPeXV7sguX~ z3AA$@Spv5q38~xpgYA!Ot<4>W*46(l1?#g??~@&_>p68MXul1#UV5Eg_#vOOnvk;l zEOvE=gRXoLmkj&waof9xPC=R2HN)-u%;xU0e^KiHq9B4O4}aJ|6uaK6-e(43`44ZnGJe3|GqVLtn3#C&T^^k>UBNdzNFgbIeD;RfiM4QQDx* ztwW3Dm-~PsSxcWtN<$!K638F;8Gc~qHkarN9G?%#V(c?iK#9`NW%J}=onbVpsAtLv zPAet%T&8Q+*6Zn}XI%ecq1qj$Mt)ePReqil+R)sl!vk1EL86*znVegt=BR-#THTCw z&iF(7gb3htp$7{7p%d<{b#s&46vqS&?Gbfu#^oFNUT$u;FzXSz4PJBO1WiEs^=+$5 zo@6&zQ~V+DGEgqG)ITw6jdP&ywiQ3$Ff=V6V3oYLO;&@$)f5Lul49 zQ@sPKI*oA3$C(RCQg2bh@)3Dy_PNoc3iPO9Eo2 zZVylqEgJVMeYCtzx@afG5^yMZfqcLTenUMz=2kH#I%I0N|$3ZmqN&S67}zWKa*m;QbX32NNRVTF?6VNxi80v zaC#ex=h*94oviaAUMJm~tms!vry>t=X4&6jYbnt;f;U^o%%!?8ne>R@d}UzEj;PK| zUKndB2_&2d(I@+cSEpnko4vPoczs4&-g0Wmh}-QYMiaBTjPjwnE|gXWeo8f%Y}`9G zhe@FAHEqKK8E22|UZu%weg=$TmpPfv^rP(P0 z1;zZ+JT@8jp$p3=m#wSjOZbUP2M#;jbb_Q>&&8yvkI6h8hb%@W{^9p%q{MJ{@sB+b&xD7d18wyf#-w7Z zkkG+)C-t{3&iPJn3^wjLfARWQr=i%XUwd`Mneo}jev*^UdcH%iHU0%GG1wht9lE}&g3Lx(UjIM9FjwLUUwtB=~%!>o%SF3!#yf^jD zlo%0Zvu-vF#Y5Z8Oe_pBDyphCZD?LbqNl4Mks#*6PIjj0LY%;_^TkL=<#Db3r(Ar= zR{+~QQZ|r1ZbBKYJ4-prUP#(!*lB+qMW@cI6P#nD@Jd-Tz89SS0)69qd{=D_%EJ|u zXIkSAofQ!Yd#|m@o$dTO5ip^>jMG!& zvB7>;J6`He%0^_-!#wd=$GPP+Qylz)hzkgx*uesHqI|Rbvq+dxL;B;Jb;}#*pjM`G zwXQzn9(C9uuUp)ea%4O*zWc>8|{ytOVHV>8T}veb{3r zZ;C#rN%$^v=QOVzwaJ+8^6;P`HzDS{AuR-D=;RAXa6k%wP{{vr=kJZO=9G5!oGYUt z!-I|6Jg0*slYLNEO;&`1B)=@SJ-)1;ndT+~IT!X~dF@$|yf5s2gDE86ylFqZ7lN$i zH3I^xQ4gL&{}eRcyoo*)wB4Eg$ z^Ka%SDeTABH%%CJcxT=Uhns?8%bhiiDCDrd(}e;!lGELBu=_@Xr4={OAi+3e&UEk7 za|U;PTsYV*5!CU%wojR$Ac_>b-(;dO7nP40F|gQly_Uy6x)2d;5Cn}eLV>XhQi;Tm zaXWzKnef=Ds;B%J?~(A>Y_sJ`1p7`-urC~z5Llr(U`}kYDLJk9GPz}tOgJQ@%kgM# za0V#i$^9mRc|<{DN<)FgO^Xl@DNMWL(1i19i6?|{NtV62orM-zU2f8g0O~PX_m2rS1JT+Ya8gE{MgNm=08T!nFcXV{^W&+-670JJb_sJdC zm_sIA*GFk;s{L@KeIWe%ExoC>iq2n%GUM29gn*9?S7zITZApny4Hg+V0j!lhO^-c| z&xpr8)qkZ!*1|tU|D8gfQCcQcGntOA{MYlwwsfO3p@LXa+y#HF`HheM$ag&R8xsDCf1QwTd1gR4 zP~pN~MH+WTprrl^-&JgB$`8RSw29<^PbGm$*zd4S=;QV4taTs)h!R5b2(^<-gt0n3 zx9Vfa^9u@7Fpsk1;>Leci0~(S|EiO~5s`4A>$Q8r!66c;@T{%MA!~C(AL!4)PtwbI zOGabxxE@(_F}%9abpSX{9+-0n_DWLX^E$DL(c+(w6roSdxO*3rKn>4Q3E_`Uf4=rH zCkDMUB_IhCA1h;Z{+U(Ir_?83=14`siT8?D@7U>!R8K+X(fzrs_p!gjowDN2^d0mb z?K8lkXYf`DRp%jbp86>kZud_6PFaT6ibO;`@QlxVhy1=qrf!c!MC%~H#0vh{N&ZZ_ zxArxx-@j<=$Vq}^deLg_ifS6)s-!3Q)OYoHchx)j+CWIm8OrEqC#BzYjj4N|sPnp$u;r}k}aUG*i(9#7%dJH)+ZA(>O< zbG)viPWFvNOl4N{d#+lAWi>dR_OYj>jHQ^LSuq*qr!Jbcq`pY5vXU?ra9RbBpknqF znBFpe6tSyt6>DnAdx+p2%{~$ee(@uvA3Mz#tjP~usaqo-%w8eB2hh%W(-s~Rbw0gB z+(cbo-Vr0YrwSo&9)kXs8PPyqx&Me#@aL_4|5u*?GEw-4!G2N0W#25?6`82Y*1s9- z|4}IHk0N;Ch3L$MK5&=phuvF66`Eg(JW;EoCnn5{hdVKOk0TMWh#0#HdL_U;2c-W7 z8}(2z8)mSRr*7?~&pzQ~yOB0cb67V~d^SLx{NP~z8!V!qt5fe#e~R!k2fA>n!LRrZ9&k~!AS-(ZaIIMaAY9fJ@wNsz=dk;w-{ zEn2d-ECNh|CWmWI_YqkicC5OlLwTM{ICRg4mJC54vlmR1+UR%2spl@;_Rwk!g4s6u zvDhU(<%Ax|hDtXTJ(}VzPQN$cipX@K_>rDv8lf(_e3`CZw>PX?$ZCD_8M)|X-wdqN zUX)q5!0FYR(s=OSvD&yx{1arSMxOWmb*k>=E^#ry%>OMA?@e#tU+RXm$#1%^_o2YR zZ{$3X{dr{a8+!6@xuNL(u(ic)U3Kebwv-!n1KlmNkAd0uQshd=hAKCZH zlbwNPUC+4t{sK4bTI*M_PA6UkIKO3)z_OJwQcIsn|828+g<-;3;JyiE^iAhJh?oH$r?a#vUCqY9oB?N~%pI|T? zA~nG0tHG)o1M4r5$%y6XE=@Ij&8(^AA$hdi(4PcO z^ZU4Bjr7|hR@-b1fx#y2KMrSKMZs6B+#k}RpT1{8$8;M|)>A(I1`Do4^S-k}AB`Fb z3(DZ;S4aU3nVIKv&BSuJAyC}15I;f-ZD6`mGd$Ygh1t$_q3b?+_GwzjQtE`DdEv;d z>(0vic$@1R;>S`(bmr|~CF?%7{Cul$;TaqKpvF5^1^a(~(>qw1eVpZ{?%ZbQZQ zjlZ^v3b|11uiO)_X>p=Pvs2+d1P-n3GIXe9knq{Zu0F=%Flje6lH91Jd0?lrwJ>W8 z7fRAhjZlUiy}#!JLs+5}Uq@w^AF6-!w_YcP=Z2DODJ;ypHVUid3{q5?nU%g{CAN?z zb8T`aA$XWY=Rl5fI#3izK;p-Y12EC`m>mxQcKyE?sEiQg9kj$u>%Weka}lW$e{Ha* z_@s^wuP}yze+XfD2=6LG)8UFSK>ee5bH7lnxyvs4p%&Au4(_0itttnJhypgv;bGfcA zzq(4TVIK^Wwbm7T4_t2)zm{XcwocA$k6N~kaqT(;TqGp;9G7sxV}bIka>YCC4^Uvi zqu*dr8SfyC-dSId?9E%xtl|OkMdTBc-oka~rL_H_pHwE^Z!qE`;nB)YVd}x08|?nt z3+xO|p&YUUW7unvwXxeH<-qyERrUdf+6l{R8JO|qOVftcSLu_4S}AKay#u75O9>e? zh7r-ZsCbuh4H!g-P2~_77#)s0=s+U1z!(Nfa@tl@T)~F=5_uPnJ=HCq5gv?bH^rE^ zAqn_dk%;F89r%HgAtH>V^3T0v#nQzY27~Kw+jg!IONFZ#6Yj4v)kRmVk7lo$f!jF| z4{(BGW7+gswVvs4=B+82WtJZd!#~beQs`8?eHqN0Gmv)>Ov2)1-Y_|B=)^vYwR|q%}hP(MZ*PTVNuJa%K68fzp*(o@TTZa|@9) znBrSMORmzd%lF0%QHT~vn?a0^o^;+7OtuTENW_ML!#GG;G{01HMY)R@V14H)Uj5$% z_5n2$fzXtRu&R%VGr}SnA|qYGc}~BPsRtAv%|DB(`n6o8&r#!&+u{$@ zsCrfn>K1Ko!)1a;z*Q@CB)B<=WE z(zR5~N>f4}J~=>K2=U7vWh85ean$a+t7ug(EN9Qg-?RA0UsqtQUqBNC7_ z`V=*BFY)ReH7fBP%AVUUyGb{ed7?#oilyT=RLX?SIq4GyWUN~P=lk-Wl~${A7n0>f zd}IJF{R+YI4~ER)7gF-qP)N&}X*JxcHWR%o$SQCj z%xc=Def2IN-rzK8DZ9Wzm(`z>+MMvRD8Hn{pJzmMUH^;`_-Ps$A$IOYl$0K(R9^Uf z#g(N!JeX`AN5+~FC$vSKi!m{t)vChU12Z!0(5M3+e2(Zhm`WwwakjNT5-;NhC%fNo zFzg?XHd$}5+rG+?pf|q>Up@xswPjSU5x-g@*V0wGDoC12wHOX%m_nWD2DX+M`=H7+ z5qxRMQYx8r3{m5#uDT%2sul1H+>O-eT%n39Y(Mn9%Pwum&qE25CS$JE-2?wbEEA1> zi~Zfd!yBakqoYXr;cwB9*H}A-ea%Hjqy^be=9AvM7DJb9M#a~N(Y+)eLGuNY5ryXi zl?!^1BECKl<685B^YMUbLOUu9zP7e_@=Z*XlnRHt$%v2Nu zi+|-n-7J7hn4F{J>cp2t|EMscb1IK^Zcg5~tPUonBGnhsqpJv%QE|*4 z@DG6}sbDh-ddwpgvCE_cYkf+ni0|*m?r~FL`wmc=+8eBd(@bOk_5N##$(6qysG9AQ z4+|S+(%eEAY!`D=WEns@@-F_~Ju8Mb5UuF3&MPWpLWitcU77SH2r}Q3+Bu{esq9&Z zJT&}!y++$)Ng)ZI5M?d=U>{dspo-_BTPck({zOzz4c__ORDXmucP~{OI*<*Eqyi2n zy9BTsp=b~!6ah$m7gooGo2|gL%*vUFLdf3c1Vsq&C?nIIu+dK_zO8X_-OBmFPKlsc zvK);^Jg7*4xZhW4vZeYWf_Z*r#YTxjr?;})g|q8P?S2CyvbV4Rcw32m! zT*L8NjTQyiL&y;S;3^+i*iL2*Y%2+2`e0biJ@vcEB_ByHELw%TGl-*x&WRAGyufC- zCF7sAhBAzqxl)Y`j#k+o1N+JrSAm(XX@^!??d{s*M2gi+9J+Fu%1G&xsFoa%wHlKK zp<H-c1>^scPbS~0M zh+dYRdd!TLV6+Kj9~F36HE!=?N=y%I8(2U62D8R&kZ6i})m9*Z{bX<;sm?tg;GBh5RpU;LkaV)(o%pEC=eUrk zE;HddUL=%UU=a7TEbbUhKM$lbw7KY>g9KZU^?`LMOvgGT3%EgWsx{jr#D+A(gcIP3 zPJ}MtA&x_kc=kI?qfDjQ;Y2Zl+K2l!*~I3u3>>RRYARhCiF)EMdZ4{eHVXdumjSzv zDo`v{T0#}yeuJ?VyH7TJ)*4G=HsIVLcIUrE>Z|5&ytBB~aGBJZ$LiYv=+tZu#|#BF zj~j3p$%x;2-)#%9V^sjX&*c+R!K>6x2-|yRR6Ieei&0%Sat_TmN?`?G0+#7P!#$G& zRQWU|=B_&I#31^Okc?>2NkS5=a%H;dU7-A!?i+UfG}!`99RX7V^NYp49V0|s^?Vp zD<~Wws)q{`UVbk{ZD_r{MIPy)L`8<64A-W@Y&Gty9QzH_vPtDi;*6MJikD*-3fNyPSD#CwBG1+RvAXF6d)T zj=LeZ*J*suQx`v(bX2Wv zoY-d*!45qWov~DT++7@JhL0t%^1Q3V)|KJ$hZme7=L}TF+=;6{Vn122HIU3p_z;_5 zYDEfv+<7J4bviW(=^SLg(LU@5Ur1L_u*yzja^MRpvjKM7(xramF-VPxRR7jglKNI1 z?NL6~I6l9cIbrsrR1Jn-E@IT?D!{7g&zG5EmowPQHV=*0%5Yi!-4e{3k4C>)1sWE?o0hsh=C9D3rd_BHLJRMzX0+i=|qD5-U8)cSnr&&;EtF^bK!p z5Rkox;Sf%Nv%*J@p`RpNS0HNL$uy)jQ0va!+Bwp;}>V1g}|Y7g&4ibMxXMxA0yPQ?J#xE7=V;b{!SDTK7+z@hUPA&s$$Laq?dUP^-u7EIYZ)cw(C`N^7=yY8!6Ui3@_u8f@uLAn;QtcC+7Z429VETsBb$NZ~b!&%ZEP2w2{EwtrSmRk*H zQVCpXy_4&4B(nDS=o#pdQS}CQpj@e`#-g&MHL`>7giHwYH@2wc^nG~4*6?^HK6ce|gUQk~EWqk~JfGNbiW4Xis}67tA?weu2I6rgWg7wv8GWO2ECTY)b-8QIHk7I)}&@0__VcFgq<+Bz& zd0*9+h^;`~=4UB}R2ij!99z-k@`dc<#HkcQTvL~L2y_uydm9undk|38IuA5{n?5J) zc>D1n(j0K`FunHv^ir@P;`Rd4qWZl}Uleq_l{|OmybwfDZ4f+Y|s@*ku#P=iemB3%Io_t9_L$S-JtYas!P=Ygi6T7m7Z&l_v>N}C!_ zCUZx|6gb9qHQS>|a-5MIi{6>=z<36>w)pYw(`5+cCrjOUT1UKFJpFvFibIiAumROl z6EOQ*;$Nfn>;sH+3EWm)`dcfM3VM-UyS_=k@FRL@VOvlk4t1_T8p)w8>lt6EA9ckc5Er{?Fl4peG&x)Fgj#Bku&F@oU*Wq#J z_+9fKinqrXs7Ueo-I!eP=g}vx*QS(2;y$qQU{Tk0O#pl?_Z>|jGHglF5tOz0tvU%W zgo-~w@a?hAC3@S2qS+CgV4{j~yhzbis=){-xEhy?Yq0ZOCT95zrO=u?FtI~=ZsU1$ zFx)h?afHNcrF*1$%mr$L8=V(n49xflWpzbLZe@PDF-erEX~?#bVH@ZvQOu5SWBA%{ z6RROng8Du=U@mV7YmS@B<}$yADk5bCy1K5vYLE~$?V1}TzpTBJI(Z}j5wC7}`Wg`2rK}wrF zgor$hmK(bDlK3gCwbFDV+j0{b=XtFnx(m!H5*<(f%^Y!8gbM_IvO`6NlJCs+StlxO zZURGd#;WL^=Y$SfpNW(9*&thuBrwVPgNE18Y@=06SjF*HI}Y2!7cUrKv|ZrD%M^I$ zZO<^H28M7joO*36e{e!`vt*01+Ey(RkX&L_Ht`r27hICSp^QFTvbWACB%=p8AARBq zVXGT-Gi%=oMelI_z?WzCSjF{P5eBkil&R^K7-oe-JDwy+-@Fbs_bZal!Rs8`g4)OZ z!MSg+l%+Ai!u1o!QILma_zOW8S`+c+ZDx?}iwu}D1-^MnmoI_qH$1WvXRn=B1YZ|? z0kIOEvlRihgamkM(|mTb zeKUVtKf=XJW~P!QAzC@e_luy#I#}~b5}LCmLU1ZU?ldGDjwsAKlWnabbsXLwWAFow zal0F_^jEgd3TyakZ(G&iJ$6FI02l1l(&5hrA2!h9#j7i^z@ibf!}0DyRleP{3WJ@n zq#2vZ;pI`lN|$}-gyTZMvqPCvrKriSO!kv9R6W}^t|KlZn#?mrD}`+An;^Nt*ysE3 zE3m%>zQjs3+l49)b;Ej&?Y@NQK3mGvSVq5bQu{-OrIPWmNU*O#qWm^}tG2D0*`r3e zWnLlQn$73jhm)V$8dlMOYD-y8+eAp0b|Qyhaju`Ve4b?I?(mM`a;G@d+3!iHrZ^r~ z;pg2Zp(s4KD=rDSn z;%9G3hqKX^)xu+fCIl+3Vmw1|)}^GZI3U)Vl^2ZSBX97dP}tPM9nL00jS~z^u>kgl znL~3lsx9c)viCFcC zmLNkN=dA@j=Jg2XGYAFp{G%9Sjlne0{{R$Tj*=)Pn+bi9`G%T2;Tfu83A2V+@g-pk zYldK=`IdvML#Ox$A}zS-FM}kZt;*;*mJD$!kKnDmMT?dviIS297M8&bJjJ0z(_T?B zbNH8VG^-gL}Fnai3BiNU3vci5ox-Bq(0okW=n&X&KP)w6G^9_3w z5p#(u&l7~q-m$AOQ(`-buZV`dCHmaN-gdGW`?DKxB~?_Y9E0os03D%DR=cy*kMivr z*Jq;#6@*WaF^E%Ot4JSquO8_ij?-58JH0zU16bblet=Kn%xKO!>!H06RP2|>jtN^IdnTYup=D;Op3Eb30P_C;m?O9k z!}AA6R6#a9`@&Z}Dk#y3oaA)k4iz0b%opyNO=>Y=xUPBWF2NcRZeidLn3hDU)iIGl zTV*0=c#f4(E+I^n-0KV&=HdXi1JRoEg%~}|3Qs6iW}#|Up*K@9Gg9^5J?C+^R}waA z3q&A|y(KWhO z!(xUV>o|-kueUIq%i3Btz-UXHakg2gx(b$J&jikuUej~lQnkbY)XKh)q?qPA4=(dA z&Jll5DNX7)pz%A*CxlU`^s_K4=^eTeR3mX5w*Wo5L(q%j9GmGX3c4IjJwzMm+wuPZ zKIdAVM}&ioyoSD;imiFK1qqQxht?}fgrV-eUw1-MjQB$i0MRSQ64l}6QHg=0 znPTEAGpLB7dqpd(8FfqyRxZy35ZzY!K@Y?nk)4niB9#`&nC&UAr1d6fT8$So9GjW2 z2bh#xzGb<%@g*Yy@ZbKUA)*gpW8eOTk%v5;LS(77dVnfc0;b66F{se)0jNUx2xZFW z!Uq_b&rHEM4+!CNjq5IM8)gz_*e{7HS)+3ItxGd=h>EsK9&(s;<~lw!%t+JBNo{z< znR4=-OpVM8)fiH=$}Ow#l&d!`^m`@vJ%`F%h&ya*q5io}pr^in=-F6v$hwmPEslp$ zGHL>54qY)W(WrGN2j*{O(rO!MjL#DFU=yV>?i4Z48Iw5XC|yQ^!r3Cz(g=q!JC73U z*g&(2doZ6G%wpWs7}_l}yLTZD^9?voW73*;6~)So=Gcp>^p6U&w&K@;(_~J{$l+&r z5fY7H7CQ>s4<|{e*7+~~h(+A@)F!T34=_!h8Gwg*e;V8_PV&aON?!gBku49K;dNmc zNk!BatW||qryk7 z^7Fqk(w%TlSB=3!9KhXd!O#OUucR=AkWsjYl`K9Ise^H{(T7fF3dg*$uG=_`HSHBzb2En6p{jG`9-0DI_6}W2I-|RkfN4&_?*zXW3tD3D{5L5Fkh_%ct@=8m^j99fv9JTgktP+7M%0wRB zqJU^?Emuf5gC*|%kOn{LB<~AnQeFUZ8ak4mfr2q^O+&K*nu;i4(FU%O2|BiNnV!*0 z9n<1y=!Q#Lnh!WReDK+frsF(nEIApPu;At{sk}nSJo5y}q}|4o#;?X+uu3*>i21=b z$>}L)d6yi@RW`&ytn`f@GT9SS-4(%c{{W~r{{TwzZk|_Bls__~3DM}v6B^vfFA!MP zdP=Wc!W=1Hvjc9BF1hImD{u#d#Z=FD!xtB<$sJ-0XPCrvr;IYml^K>hO9J{pbIh&A zD#6stEVo)g6moPJ{4Rf1Tn)*BCj5n6!vH`Iz%fJEef>47{oM+CN1&u8|S z^{R?}3^oIN^oreP`~(Y|3`4yk-xCyaU!)e9*HfO;&Jh4TSoc#Cd_q+ouvdI(i+7j^ z`$va!p0iI&iy?ice|k*EW?^FZ?*%V|5}sTUH=hZ-RS^1dGH=og#6cWD3OVe4v6{f; z-*1x@pY+fOmN-T@17hJm5i@8CNSnJmjZUUrpob=y(bU-}DAc^Ebc}VC4y)CMmEDs{ zAYJZVD9k8DR}8C?Sy#+GjJwBt#x%1L!259lS{jryub2v9Y)-rB#147aVV4|Z@dFL} z#HRh@m@2jj*=WAehA1FSYG9gJmOY>PxZfQoohzPLIz5QO1we1Jo^cwx-JM~w+P3k8 zlwkV8C~Jwqo{9@D{2!dco7ap+*c)jX76>|LFriNah^^i(S9vNU)@-p!vY0E`od1^AR zcW5e%HUq)d6fY6uQELQ7#PpJZdzWySG{uVIQK!6WJ!Rz=klbY+Lg3JCfF9i<@n!G03 zPYQ1QO&Zsf(>6{s@t>U5AHdX{{{RzX%TVxsHy!y-UyV)txYv~Y^M`@qHDd(jn!Fm^ M{C~YQH2#18+0?9`^8f$< literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/scenes/The_MacBooks-large_scene.jpg b/install-new/fixtures/apple/img/scenes/The_MacBooks-large_scene.jpg new file mode 100644 index 0000000000000000000000000000000000000000..56f034133b537d7cf3bdbe580f9bef4f39f6c785 GIT binary patch literal 18122 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/scenes/The_MacBooks.jpg b/install-new/fixtures/apple/img/scenes/The_MacBooks.jpg new file mode 100644 index 0000000000000000000000000000000000000000..16de52e68817086c02a7b7328f170ff79e7c8589 GIT binary patch literal 16080 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 vVAgTdx#i{d8j5b)4 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/scenes/The_iPods.jpg b/install-new/fixtures/apple/img/scenes/The_iPods.jpg new file mode 100644 index 0000000000000000000000000000000000000000..19ba0dfc804dcc4f5e57155617b0cce4576a4305 GIT binary patch literal 15334 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 (?d5dHwl5inUo;}*sU;oHnK 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/scenes/The_iPods_Nano.jpg b/install-new/fixtures/apple/img/scenes/The_iPods_Nano.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d5ece377f908ccb0149a06ccbd3acc8fbb66bc65 GIT binary patch literal 34152 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/su/Shure_Online_Store-large.jpg b/install-new/fixtures/apple/img/su/Shure_Online_Store-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ee4eb5fa8140bc6e8b240caa89dc6068a2b197fc GIT binary patch literal 4222 zcmcguXIN8Nw?1j~l13Fm@8Hm)0mTrJP$bfe6d@ETihy(rO(cl4P()M^5eOZFbWs5j zX$n%MC`E=M0s)*6m2!hK&iCB=+(q4$-5AWRu3j2#AJM{{#>qyOL7YXcB$AZ3s;1SAQ75g-TxwAT)Z?z;+x z01)6GFx>(}VIT-QbDJN;#6LSfUqIl!aexcLl!8Ox%�z{qOt#$_zqLiBxbV-srdW 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/install.php b/install-new/fixtures/apple/install.php new file mode 100644 index 000000000..aaa4362cd --- /dev/null +++ b/install-new/fixtures/apple/install.php @@ -0,0 +1,37 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +/** + * This class is only here to show the possibility of extending InstallXmlLoader, which is the + * class parsing all XML files, copying all images, etc. + * + * Please read documentation in ~/install/dev/ folder if you want to customize PrestaShop install / fixtures. + */ +class InstallFixturesApple extends InstallXmlLoader +{ + +} diff --git a/install-new/fixtures/apple/langs/de/data/attribute.xml b/install-new/fixtures/apple/langs/de/data/attribute.xml new file mode 100644 index 000000000..7f0b7e6d6 --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/attribute.xml @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/de/data/attribute_group.xml b/install-new/fixtures/apple/langs/de/data/attribute_group.xml new file mode 100644 index 000000000..2719d0ad4 --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/attribute_group.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/de/data/attributegroup.xml b/install-new/fixtures/apple/langs/de/data/attributegroup.xml new file mode 100644 index 000000000..6e3d46f37 --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/attributegroup.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/install-new/fixtures/apple/langs/de/data/carrier.xml b/install-new/fixtures/apple/langs/de/data/carrier.xml new file mode 100644 index 000000000..f2f26ca73 --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/carrier.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/de/data/category.xml b/install-new/fixtures/apple/langs/de/data/category.xml new file mode 100644 index 000000000..3ffd0f05c --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/category.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/de/data/feature.xml b/install-new/fixtures/apple/langs/de/data/feature.xml new file mode 100644 index 000000000..8dd5408a0 --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/feature.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/de/data/feature_value.xml b/install-new/fixtures/apple/langs/de/data/feature_value.xml new file mode 100644 index 000000000..68e1c4975 --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/feature_value.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/de/data/featurevalue.xml b/install-new/fixtures/apple/langs/de/data/featurevalue.xml new file mode 100644 index 000000000..ce6a363ca --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/featurevalue.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/install-new/fixtures/apple/langs/de/data/image.xml b/install-new/fixtures/apple/langs/de/data/image.xml new file mode 100644 index 000000000..414d8f564 --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/image.xml @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/de/data/manufacturer.xml b/install-new/fixtures/apple/langs/de/data/manufacturer.xml new file mode 100644 index 000000000..621ff2471 --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/manufacturer.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/de/data/order_message.xml b/install-new/fixtures/apple/langs/de/data/order_message.xml new file mode 100644 index 000000000..f89d5e3bd --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/order_message.xml @@ -0,0 +1,11 @@ + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/de/data/ordermessage.xml b/install-new/fixtures/apple/langs/de/data/ordermessage.xml new file mode 100644 index 000000000..14917657b --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/ordermessage.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/install-new/fixtures/apple/langs/de/data/product.xml b/install-new/fixtures/apple/langs/de/data/product.xml new file mode 100644 index 000000000..2b071ec62 --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/product.xml @@ -0,0 +1,135 @@ + + + + Immer eine Kurve voraus.

+

Für all die, die gleich losrocken wollen, gibt es jetzt neun tolle Farben zur Auswahl. Aber das ist nur ein Teil der Geschichte. Mit seinem runden Design, das komplett aus Aluminium und Glas besteht, werden Sie den iPod nano nicht mehr weglegen wollen.

+

Tolles Design. Und viel Köpfchen.

+

Die neue Genius-Funktion verwandelt den iPod nano in Ihren hoch intelligenten, persönlichen DJ. Es erstellt Abspiellisten aus den Songs in Ihrer Sammlung, die gut zusammenpassen.

+

Passt sich Ihren Bewegungen an.

+

Der iPod nano jetzt mit Beschleunigungsmesser. Einmal schütteln, und Ihre Musik wird neu sortiert. Kippen Sie es zur Seite für die Cover Flow-Ansicht. Und spielen Sie mit den Bewegungen, an die Sie denken.

]]> + New design. New features. Now in 8GB and 16GB. iPod nano rocks like never before.

]]>
+ + + + + + + + + + style="font-size: small;">Gleich festmachen.

+

Tragen Sie bis zu 500 Songs am Ärmel. Oder an Ihrem Gürtel. Oder an Ihrer Sporthose. iPod shuffle ist ein Erkennungszeichen echter Musikfans. Jetzt in neuen, noch leuchtenderen Farben.

+

style="font-size: small;">Füttern Sie Ihren iPod shuffle.

+

iTunes ist Ihr Super-Store für Unterhaltung. Es ist Ihre optimal organisierte Musik-Sammlung und Jukebox. Und Sie können Ihren iPod shuffle mit einem Klick laden.

+

style="font-size: small;">Die Schöne und der Beat.

+

Das farbintensive eloxierte Aluminium ergänzt das schlichte Design des iPod shuffle. Jetzt in Blau, Grün, Rosa, Rot und klassischem Silber.

]]>
+ iPod shuffle, the world’s most wearable music player, now clips on in more vibrant blue, green, pink, and red.

]]>
+ + + + + + + +
+ + MacBook Air ist kaum dicker als Ihr Zeigefinger. Nahezu jedes Detail wurde abgeflacht. Und dabei hat es immer noch einen 13,3-Zoll-Widescreen-LED-Display, eine Tastatur in voller Größe und einen großen Multi-Touch-Trackpad. Es besitzt eine unvergleichliche Tragbarkeit, ohne die üblichen Kompromisse für ultraportable Bildschirme und Tastaturen.

Der unglaublich dünne MacBook Air ist das Ergebnis zahlreicher Innovationen zur Größen- und Gewichtsoptimierung. Die flachere Festplatte, die strategisch versteckten I/O-Ports und eine noch flachere Batterie: Alles wurde immer wieder überdacht, immer mit dem Ziel, es noch dünner zu gestalten.

Das Design und Konzept von MacBook Air ist voll auf die Vorteile der Kabelfreiheit ausgerichtet. Eine Welt, in der 802.11n WLAN heutzutage so schnell und so leicht verfügbar ist, dass die Menschen heute grenzenlos Filme online kaufen oder mieten, Software downloaden und Dateien über das Internet teilen oder speichern können.

]]>
+ + + + + + + + +
+ +
Die 2,4 GHz MacBook-Modelle haben nun 2 GB Standard-Arbeitsspeicher - ideal zum reibungslosen Abspielen Ihrer Lieblings-Anwendungen.]]>
+ + + + + + + + +
+ + Fünf neue Hands-on-Anwendungen +

Rich-HTML-E-Mails mit Fotos anzeigen sowie PDF-, Word-und Excel-Anhänge. Holen Sie sich Karten, Wegbeschreibungen und Echtzeit-Verkehrsinformationen. Sie können sich Notizen machen und Börsen- und Wetterberichte lesen.

+

Berühren Sie Ihre Musik, Filme und vieles mehr

+

Mit der revolutionären, in den wunderschönen 3,5-Zoll-Display integrierten Multi-Touch-Technologie können Sie zuziehen, zoomen, scrollen und streichen.

+

Internet in Ihrer Tasche

+

Mit dem Safari-Webbrowser sehen Sie Webseiten so, wie sie gesehen werden sollten und vergrößern und verkleinern sie mit einer Berührung.2Fügen Sie Web-Clips zu Ihrer Startseite hinzu für den Schnellzugriff auf Ihre bevorzugten Webseiten.

+

Zum Set gehören/h3> +
    +
  • der iPod touch
  • +
  • Ohrhörer
  • +
  • USB 2.0-Kabel
  • +
  • Anschluss-Adapter
  • +
  • Poliertuch
  • +
  • Basis
  • +
  • Quick Start Guide
  • +
]]> + +
  • Revolutionary Multi-Touch interface
  • +
  • 3.5-inch widescreen color display
  • +
  • Wi-Fi (802.11b/g)
  • +
  • 8 mm thin
  • +
  • Safari, YouTube, Mail, Stocks, Weather, Notes, iTunes Wi-Fi Music Store, Maps
  • +]]>
    + + + + + + + + + + Lorem ipsum

    ]]>
    + Lorem ipsum

    ]]>
    + + + + + + + +
    + + Mit ihren hochauflösenden Micro-Lautsprechern, die vollen Klang liefern und ihrem ergonomischen, leichten Design sind die SE210 Ohrhörer ideal zum mobilen Extraklasse-Musik hören auf Ihrem iPod oder iPhone. Sie bieten die genaueste Tonwiedergabe, sowohl aus tragbaren als auch aus Home-Stereo-Audio-Quellen - für ultimative präzisen Höhen und kraftvolle Bässe. Darüber hinaus ermöglicht das flexible Design optimalen Tragekomfort durch eine Vielzahl von Tragemöglichkeiten.

    Funktionen
    +
      +
    • Klangisolierendes Design
    • +
    • Hochauflösende Micro-Lautsprecher mit Single Balanced Armature-Treiber
    • +
    • Abnehmbare modulare Kabel, die Sie je nach Aktivität länger oder kürzer einstellen können
    • +
    • Kompatibler Stecker mit Kopfhörer-Anschlüssen für iPod und iPhone
    • +
    +Daten
    +
      +
    • Lautsprecher-Typ: Hochauflösende Micro-Lautsprecher
    • +
    • Frequenzbereich: 25Hz-18.5kHz
    • +
    • Impedanz (1kHz): 26 Ohm
    • +
    • Empfindlichkeit (1mW): 114 dB SPL/mW
    • +
    • Kabellänge (mit Erweiterung): 18,0 Zoll/45,0 cm (54,0 Zoll/137,1 cm)
    • +
    +Im Set enthalten
    +
      +
    • Shure SE210 Ohrhörer
    • +
    • Verlängerungskabel (36,0 Zoll/91,4 cm)
    • +
    • Drei Paar Schaumstoff-Hörmuschelhüllen (klein, mittel, groß)
    • +
    • Drei Paar weiche Flex-Hörmuschelhüllen (klein, mittel, groß)
    • +
    • Ein Paar Triple-Flange-Hörmuschelhüllen
    • +
    • Trage-Etui
    • +
    +Garantie
    Zwei Jahre
    (Einzelheiten hierzu finden Sie auf
    www.shure.com/PersonalAudio/CustomerSupport/ProductReturnsAndWarranty/index.htm).

    Mfr. Teilenummer: SE210-A-EFS

    Hinweis: Für Produkte auf dieser Website, die nicht den Markennamen Apple tragen, werden Service und Support ausschließlich von den Herstellern gemäß der den Produkten beiliegenden Nutzungsbedingungen übernommen. Die von Apple angebotene Garantiezeit gilt nicht für Produkte, die kein Apple-Markenzeichen tragen, selbst wenn diese zusammen mit Apple-Produkten verpackt oder verkauft wurden. Bitte wenden Sie sich direkt an den Hersteller für den technischen Support und Kundendienst.]]>
    + Evolved from personal monitor technology road-tested by pro musicians and perfected by Shure engineers, the lightweight and stylish SE210 delivers full-range audio that's free from outside noise.

    ]]>
    + + + + + + + +
    + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/de/data/profile.xml b/install-new/fixtures/apple/langs/de/data/profile.xml new file mode 100644 index 000000000..f2c3054d4 --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/profile.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/de/data/scene.xml b/install-new/fixtures/apple/langs/de/data/scene.xml new file mode 100644 index 000000000..ae8a1db98 --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/scene.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/de/data/supplier.xml b/install-new/fixtures/apple/langs/de/data/supplier.xml new file mode 100644 index 000000000..07f36aeb6 --- /dev/null +++ b/install-new/fixtures/apple/langs/de/data/supplier.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/de/fixtures.php b/install-new/fixtures/apple/langs/de/fixtures.php new file mode 100644 index 000000000..56cc6986e --- /dev/null +++ b/install-new/fixtures/apple/langs/de/fixtures.php @@ -0,0 +1,121 @@ + '

    Immer eine Kurve voraus.

    \r\n

    Für all die, die gleich losrocken wollen, gibt es jetzt neun tolle Farben zur Auswahl. Aber das ist nur ein Teil der Geschichte. Mit seinem runden Design, das komplett aus Aluminium und Glas besteht, werden Sie den iPod nano nicht mehr weglegen wollen.

    \r\n

    Tolles Design. Und viel Köpfchen.

    \r\n

    Die neue Genius-Funktion verwandelt den iPod nano in Ihren hoch intelligenten, persönlichen DJ. Es erstellt Abspiellisten aus den Songs in Ihrer Sammlung, die gut zusammenpassen.

    \r\n

    Passt sich Ihren Bewegungen an.

    \r\n

    Der iPod nano jetzt mit Beschleunigungsmesser. Einmal schütteln, und Ihre Musik wird neu sortiert. Kippen Sie es zur Seite für die Cover Flow-Ansicht. Und spielen Sie mit den Bewegungen, an die Sie denken.

    ', + 'product_ipod_nano_description_short' => '

    New design. New features. Now in 8GB and 16GB. iPod nano rocks like never before.

    ', + 'product_ipod_nano_link_rewrite' => 'ipod-nano', + 'product_ipod_nano_name' => 'iPod Nano', + 'product_ipod_nano_available_now' => 'In stock', + 'product_ipod_shuffle_description' => '

    style="font-size: small;">Gleich festmachen.

    \r\n

    Tragen Sie bis zu 500 Songs am Ärmel. Oder an Ihrem Gürtel. Oder an Ihrer Sporthose. iPod shuffle ist ein Erkennungszeichen echter Musikfans. Jetzt in neuen, noch leuchtenderen Farben.

    \r\n

    style="font-size: small;">Füttern Sie Ihren iPod shuffle.

    \r\n

    iTunes ist Ihr Super-Store für Unterhaltung. Es ist Ihre optimal organisierte Musik-Sammlung und Jukebox. Und Sie können Ihren iPod shuffle mit einem Klick laden.

    \r\n

    style="font-size: small;">Die Schöne und der Beat.

    \r\n

    Das farbintensive eloxierte Aluminium ergänzt das schlichte Design des iPod shuffle. Jetzt in Blau, Grün, Rosa, Rot und klassischem Silber.

    ', + 'product_ipod_shuffle_description_short' => '

    iPod shuffle, the world’s most wearable music player, now clips on in more vibrant blue, green, pink, and red.

    ', + 'product_ipod_shuffle_link_rewrite' => 'ipod-shuffle', + 'product_ipod_shuffle_name' => 'iPod shuffle', + 'product_ipod_shuffle_available_now' => 'In stock', + 'product_macbook_air_description' => '

    MacBook Air ist kaum dicker als Ihr Zeigefinger. Nahezu jedes Detail wurde abgeflacht. Und dabei hat es immer noch einen 13,3-Zoll-Widescreen-LED-Display, eine Tastatur in voller Größe und einen großen Multi-Touch-Trackpad. Es besitzt eine unvergleichliche Tragbarkeit, ohne die üblichen Kompromisse für ultraportable Bildschirme und Tastaturen.

    Der unglaublich dünne MacBook Air ist das Ergebnis zahlreicher Innovationen zur Größen- und Gewichtsoptimierung. Die flachere Festplatte, die strategisch versteckten I/O-Ports und eine noch flachere Batterie: Alles wurde immer wieder überdacht, immer mit dem Ziel, es noch dünner zu gestalten.

    Das Design und Konzept von MacBook Air ist voll auf die Vorteile der Kabelfreiheit ausgerichtet. Eine Welt, in der 802.11n WLAN heutzutage so schnell und so leicht verfügbar ist, dass die Menschen heute grenzenlos Filme online kaufen oder mieten, Software downloaden und Dateien über das Internet teilen oder speichern können.

    ', + 'product_macbook_air_description_short' => 'MacBook Air is ultrathin, ultraportable, and ultra unlike anything else. But you don’t lose inches and pounds overnight. It’s the result of rethinking conventions. Of multiple wireless innovations. And of breakthrough design. With MacBook Air, mobile computing suddenly has a new standard.', + 'product_macbook_air_link_rewrite' => 'macbook-Air', + 'product_macbook_air_name' => 'MacBook Air', + 'product_macbook_description' => 'Jedes MacBook verfügt über eine größere Festplatte, bis zu 250GB, zum Speichern immer größer werdender Mediensammlungen und wertvoller Daten.

    Die 2,4 GHz MacBook-Modelle haben nun 2 GB Standard-Arbeitsspeicher - ideal zum reibungslosen Abspielen Ihrer Lieblings-Anwendungen.', + 'product_macbook_description_short' => 'MacBook makes it easy to hit the road thanks to its tough polycarbonate case, built-in wireless technologies, and innovative MagSafe Power Adapter that releases automatically if someone accidentally trips on the cord.', + 'product_macbook_link_rewrite' => 'macbook', + 'product_macbook_name' => 'MacBook', + 'product_ipod_touch_description' => '

    Fünf neue Hands-on-Anwendungen

    \r\n

    Rich-HTML-E-Mails mit Fotos anzeigen sowie PDF-, Word-und Excel-Anhänge. Holen Sie sich Karten, Wegbeschreibungen und Echtzeit-Verkehrsinformationen. Sie können sich Notizen machen und Börsen- und Wetterberichte lesen.

    \r\n

    Berühren Sie Ihre Musik, Filme und vieles mehr

    \r\n

    Mit der revolutionären, in den wunderschönen 3,5-Zoll-Display integrierten Multi-Touch-Technologie können Sie zuziehen, zoomen, scrollen und streichen.

    \r\n

    Internet in Ihrer Tasche

    \r\n

    Mit dem Safari-Webbrowser sehen Sie Webseiten so, wie sie gesehen werden sollten und vergrößern und verkleinern sie mit einer Berührung.2Fügen Sie Web-Clips zu Ihrer Startseite hinzu für den Schnellzugriff auf Ihre bevorzugten Webseiten.

    \r\n

    Zum Set gehören/h3>\r\n
      \r\n
    • der iPod touch
    • \r\n
    • Ohrhörer
    • \r\n
    • USB 2.0-Kabel
    • \r\n
    • Anschluss-Adapter
    • \r\n
    • Poliertuch
    • \r\n
    • Basis
    • \r\n
    • Quick Start Guide
    • \r\n
    ', + 'product_ipod_touch_description_short' => '
      \r\n
    • Revolutionary Multi-Touch interface
    • \r\n
    • 3.5-inch widescreen color display
    • \r\n
    • Wi-Fi (802.11b/g)
    • \r\n
    • 8 mm thin
    • \r\n
    • Safari, YouTube, Mail, Stocks, Weather, Notes, iTunes Wi-Fi Music Store, Maps
    • \r\n
    ', + 'product_ipod_touch_link_rewrite' => 'iPod-Touch', + 'product_ipod_touch_name' => 'iPod touch', + 'product_folio_ipod_description' => '

    Lorem ipsum

    ', + 'product_folio_ipod_description_short' => '

    Lorem ipsum

    ', + 'product_folio_ipod_link_rewrite' => 'lederhulle-belkin-fur-ipod-nano-schwarz-schokolade', + 'product_folio_ipod_name' => 'Lederhülle Belkin für ipod nano - Schwarz/Schokolade', + 'product_earpiece_description' => '
    Mit ihren hochauflösenden Micro-Lautsprechern, die vollen Klang liefern und ihrem ergonomischen, leichten Design sind die SE210 Ohrhörer ideal zum mobilen Extraklasse-Musik hören auf Ihrem iPod oder iPhone. Sie bieten die genaueste Tonwiedergabe, sowohl aus tragbaren als auch aus Home-Stereo-Audio-Quellen - für ultimative präzisen Höhen und kraftvolle Bässe. Darüber hinaus ermöglicht das flexible Design optimalen Tragekomfort durch eine Vielzahl von Tragemöglichkeiten.

    Funktionen
    \r\n
      \r\n
    • Klangisolierendes Design
    • \r\n
    • Hochauflösende Micro-Lautsprecher mit Single Balanced Armature-Treiber
    • \r\n
    • Abnehmbare modulare Kabel, die Sie je nach Aktivität länger oder kürzer einstellen können
    • \r\n
    • Kompatibler Stecker mit Kopfhörer-Anschlüssen für iPod und iPhone
    • \r\n
    \r\nDaten
    \r\n
      \r\n
    • Lautsprecher-Typ: Hochauflösende Micro-Lautsprecher
    • \r\n
    • Frequenzbereich: 25Hz-18.5kHz
    • \r\n
    • Impedanz (1kHz): 26 Ohm
    • \r\n
    • Empfindlichkeit (1mW): 114 dB SPL/mW
    • \r\n
    • Kabellänge (mit Erweiterung): 18,0 Zoll/45,0 cm (54,0 Zoll/137,1 cm)
    • \r\n
    \r\nIm Set enthalten
    \r\n
      \r\n
    • Shure SE210 Ohrhörer
    • \r\n
    • Verlängerungskabel (36,0 Zoll/91,4 cm)
    • \r\n
    • Drei Paar Schaumstoff-Hörmuschelhüllen (klein, mittel, groß)
    • \r\n
    • Drei Paar weiche Flex-Hörmuschelhüllen (klein, mittel, groß)
    • \r\n
    • Ein Paar Triple-Flange-Hörmuschelhüllen
    • \r\n
    • Trage-Etui
    • \r\n
    \r\nGarantie
    Zwei Jahre
    (Einzelheiten hierzu finden Sie auf
    www.shure.com/PersonalAudio/CustomerSupport/ProductReturnsAndWarranty/index.htm).

    Mfr. Teilenummer: SE210-A-EFS

    Hinweis: Für Produkte auf dieser Website, die nicht den Markennamen Apple tragen, werden Service und Support ausschließlich von den Herstellern gemäß der den Produkten beiliegenden Nutzungsbedingungen übernommen. Die von Apple angebotene Garantiezeit gilt nicht für Produkte, die kein Apple-Markenzeichen tragen, selbst wenn diese zusammen mit Apple-Produkten verpackt oder verkauft wurden. Bitte wenden Sie sich direkt an den Hersteller für den technischen Support und Kundendienst.
    ', + 'product_earpiece_description_short' => '

    Evolved from personal monitor technology road-tested by pro musicians and perfected by Shure engineers, the lightweight and stylish SE210 delivers full-range audio that\'s free from outside noise.

    ', + 'product_earpiece_link_rewrite' => 'klangisolierte-ohrhorer-shure-se210-weib', + 'product_earpiece_name' => 'Shure SE210 Klangisolierte Ohrhörer für iPod und iPhone', + 'category_ipods_name' => 'iPods', + 'category_ipods_description' => 'Now that you can buy movies from the iTunes Store and sync them to your iPod, the whole world is your theater.', + 'category_ipods_link_rewrite' => 'musik-iPods', + 'category_accessories_name' => 'Zubehör', + 'category_accessories_description' => 'Wonderful accessories for your iPod', + 'category_accessories_link_rewrite' => 'zubehor-ipod', + 'category_laptops_name' => 'Laptops', + 'category_laptops_description' => 'The latest Intel processor, a bigger hard drive, plenty of memory, and even more new features all fit inside just one liberating inch. The new Mac laptops have the performance, power, and connectivity of a desktop computer. Without the desk part.', + 'category_laptops_link_rewrite' => 'laptops', + 'category_laptops_meta_title' => 'Apple laptops', + 'category_laptops_meta_keywords' => 'Apple MacBook Air-Laptops', + 'category_laptops_meta_description' => 'Powerful and chic Apple laptops', + 'scene_ipods1_name' => 'Die iPods Nano', + 'scene_ipods2_name' => 'Die iPods', + 'scene_laptops_name' => 'Die MacBooks', + 'attributegroup_capacity_name' => 'Speicherplatz', + 'attributegroup_capacity_public_name' => 'Disk space', + 'attributegroup_color_name' => 'Farbe', + 'attributegroup_color_public_name' => 'Color', + 'attributegroup_processor_name' => 'ICU', + 'attributegroup_processor_public_name' => 'Processor', + 'attribute_capacity_2gb_name' => '2GB', + 'attribute_capacity_4gb_name' => '4GB', + 'attribute_color_metal_name' => 'Metallic', + 'attribute_color_blue_name' => 'Blau', + 'attribute_color_pink_name' => 'Pink', + 'attribute_color_green_name' => 'Grün', + 'attribute_color_orange_name' => 'Orange', + 'attribute_capacity_64gb_dd_name' => 'Optionale 64 GB Solid-State-Drive', + 'attribute_capacity_80gb_dd_name' => 'Parallele ATA 80GB Drive @ 4200 rpm', + 'attribute_processor_160ghz_name' => '1.60GHz Intel Core 2 Duo', + 'attribute_processor_180ghz_name' => '1.80GHz Intel Core 2 Duo', + 'attribute_capacity_80gb_name' => '80GB: 20.000 Songs', + 'attribute_capacity_160gb_name' => '160GB: 40.000 Songs', + 'attribute_color_black_name' => 'Schwarz', + 'attribute_capacity_8gb_name' => '8Go', + 'attribute_capacity_16gb_name' => '16Go', + 'attribute_capacity_32gb_name' => '32Go', + 'attribute_color_purple_name' => 'Violett', + 'attribute_color_yellow_name' => 'Gelb', + 'attribute_color_red_name' => 'Rot', + 'ordermessage_delay_name' => 'Frist', + 'ordermessage_delay_message' => 'Hi,\n\nLeider ist einer der Artikel aus Ihrer Bestellung momentan nicht auf Lager. Dies kann zu einer leichten Lieferverzögerung führen. Wir entschuldigen uns hierfür und bemühen uns schnellstens um Abhilfe.\n\nMit freundlichen Grüßen,', + 'feature_height_name' => 'Höhe', + 'feature_width_name' => 'Breite', + 'feature_depth_name' => 'Tiefe', + 'feature_weight_name' => 'Gewicht', + 'feature_headphone_name' => 'Kopfhörer', + 'featurevalue_jack_stereo_value' => 'Jack stereo', + 'featurevalue_mini_jack_stereo_value' => 'Mini-jack stéréo', + 'featurevalue_2.75in_value' => '69.8 mm', + 'featurevalue_2.06in_value' => '52.3 mm', + 'featurevalue_49.2g_value' => '49.2 g', + 'featurevalue_0.26in_value' => '6,5 mm', + 'featurevalue_1.07in_value' => '27.3 mm', + 'featurevalue_1.62in_value' => '41.2 mm', + 'featurevalue_15.5g_value' => '15.5 g', + 'featurevalue_0.41in_value' => '10,5 mm', + 'featurevalue_4.33in_value' => '4.33 in', + 'featurevalue_2.76in_value' => '70 mm', + 'featurevalue_120g_value' => '120g', + 'featurevalue_0.31in_value' => '8 mm', + 'image_macbook_air_10_legend' => 'macbook-air-1', + 'image_macbook_air_11_legend' => 'macbook-air-2', + 'image_macbook_air_12_legend' => 'macbook-air-3', + 'image_macbook_10_legend' => 'macbook-air-4', + 'image_macbook_11_legend' => 'macbook-air-5', + 'image_macbook_12_legend' => 'superdrive-pour-macbook-air-1', + 'image_ipod_touch_19_legend' => 'iPod touch', + 'image_ipod_touch_20_legend' => 'iPod touch', + 'image_ipod_touch_21_legend' => 'iPod touch', + 'image_ipod_touch_22_legend' => 'iPod touch', + 'image_ipod_touch_23_legend' => 'iPod touch', + 'image_ipod_touch_24_legend' => 'iPod touch', + 'image_folio_ipod_4_legend' => 'housse-portefeuille-en-cuir', + 'image_earpiece_4_legend' => 'Shure SE210 Sound-Isolating Earphones for iPod and iPhone', + 'image_ipod_nano_25_legend' => 'iPod Nano', + 'image_ipod_nano_26_legend' => 'iPod Nano', + 'image_ipod_nano_27_legend' => 'iPod Nano', + 'image_ipod_nano_28_legend' => 'iPod Nano', + 'image_ipod_nano_29_legend' => 'iPod Nano', + 'image_ipod_nano_30_legend' => 'iPod Nano', + 'image_ipod_nano_31_legend' => 'iPod Nano', + 'image_ipod_nano_32_legend' => 'iPod Nano', + 'image_ipod_shuffle_13_legend' => 'iPod shuffle', + 'image_ipod_shuffle_14_legend' => 'iPod shuffle', + 'image_ipod_shuffle_15_legend' => 'iPod shuffle', + 'image_ipod_shuffle_16_legend' => 'iPod shuffle', + 'carrier_custom_delay' => 'Zustellung am nächsten Tag!', +); \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/data/attribute.xml b/install-new/fixtures/apple/langs/en/data/attribute.xml new file mode 100644 index 000000000..350a52948 --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/attribute.xml @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/data/attribute_group.xml b/install-new/fixtures/apple/langs/en/data/attribute_group.xml new file mode 100644 index 000000000..dc2c4a94c --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/attribute_group.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/data/attributegroup.xml b/install-new/fixtures/apple/langs/en/data/attributegroup.xml new file mode 100644 index 000000000..977fceeb7 --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/attributegroup.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/install-new/fixtures/apple/langs/en/data/carrier.xml b/install-new/fixtures/apple/langs/en/data/carrier.xml new file mode 100644 index 000000000..07d723522 --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/carrier.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/data/category.xml b/install-new/fixtures/apple/langs/en/data/category.xml new file mode 100644 index 000000000..0b0f6c90b --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/category.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/data/feature.xml b/install-new/fixtures/apple/langs/en/data/feature.xml new file mode 100644 index 000000000..c6de30b39 --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/feature.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/data/feature_value.xml b/install-new/fixtures/apple/langs/en/data/feature_value.xml new file mode 100644 index 000000000..574f41d70 --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/feature_value.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/data/featurevalue.xml b/install-new/fixtures/apple/langs/en/data/featurevalue.xml new file mode 100644 index 000000000..d101bed96 --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/featurevalue.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/install-new/fixtures/apple/langs/en/data/image.xml b/install-new/fixtures/apple/langs/en/data/image.xml new file mode 100644 index 000000000..cce2d987a --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/image.xml @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/data/manufacturer.xml b/install-new/fixtures/apple/langs/en/data/manufacturer.xml new file mode 100644 index 000000000..621ff2471 --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/manufacturer.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/data/order_message.xml b/install-new/fixtures/apple/langs/en/data/order_message.xml new file mode 100644 index 000000000..f61aca05a --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/order_message.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/data/ordermessage.xml b/install-new/fixtures/apple/langs/en/data/ordermessage.xml new file mode 100644 index 000000000..e743f5d97 --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/ordermessage.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/install-new/fixtures/apple/langs/en/data/product.xml b/install-new/fixtures/apple/langs/en/data/product.xml new file mode 100644 index 000000000..85d13c691 --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/product.xml @@ -0,0 +1,135 @@ + + + + Curved ahead of the curve.

    +

    For those about to rock, we give you nine amazing colors. But that's only part of the story. Feel the curved, all-aluminum and glass design and you won't want to put iPod nano down.

    +

    Great looks. And brains, too.

    +

    The new Genius feature turns iPod nano into your own highly intelligent, personal DJ. It creates playlists by finding songs in your library that go great together.

    +

    Made to move with your moves.

    +

    The accelerometer comes to iPod nano. Give it a shake to shuffle your music. Turn it sideways to view Cover Flow. And play games designed with your moves in mind.

    ]]>
    + New design. New features. Now in 8GB and 16GB. iPod nano rocks like never before.

    ]]>
    + + + + + + + +
    + + Instant attachment.

    +

    Wear up to 500 songs on your sleeve. Or your belt. Or your gym shorts. iPod shuffle is a badge of musical devotion. Now in new, more brilliant colors.

    +

    Feed your iPod shuffle.

    +

    iTunes is your entertainment superstore. It’s your ultra-organized music collection and jukebox. And it’s how you load up your iPod shuffle in one click.

    +

    Beauty and the beat.

    +

    Intensely colorful anodized aluminum complements the simple design of iPod shuffle. Now in blue, green, pink, red, and original silver.

    ]]>
    + iPod shuffle, the world’s most wearable music player, now clips on in more vibrant blue, green, pink, and red.

    ]]>
    + + + + + + + +
    + + MacBook Air is nearly as thin as your index finger. Practically every detail that could be streamlined has been. Yet it still has a 13.3-inch widescreen LED display, full-size keyboard, and large multi-touch trackpad. It’s incomparably portable without the usual ultraportable screen and keyboard compromises.

    The incredible thinness of MacBook Air is the result of numerous size- and weight-shaving innovations. From a slimmer hard drive to strategically hidden I/O ports to a lower-profile battery, everything has been considered and reconsidered with thinness in mind.

    MacBook Air is designed and engineered to take full advantage of the wireless world. A world in which 802.11n Wi-Fi is now so fast and so available, people are truly living untethered — buying and renting movies online, downloading software, and sharing and storing files on the web.

    ]]>
    + + + + + + + + +
    + +
    The 2.4GHz MacBook models now include 2GB of memory standard — perfect for running more of your favorite applications smoothly.]]>
    + + + + + + + + +
    + + Five new hands-on applications

    +

    View rich HTML email with photos as well as PDF, Word, and Excel attachments. Get maps, directions, and real-time traffic information. Take notes and read stock and weather reports.

    +

    Touch your music, movies, and more

    +

    The revolutionary Multi-Touch technology built into the gorgeous 3.5-inch display lets you pinch, zoom, scroll, and flick with your fingers.

    +

    Internet in your pocket

    +

    With the Safari web browser, see websites the way they were designed to be seen and zoom in and out with a tap.2 And add Web Clips to your Home screen for quick access to favorite sites.

    +

    What's in the box

    +
      +
    • iPod touch
    • +
    • Earphones
    • +
    • USB 2.0 cable
    • +
    • Dock adapter
    • +
    • Polishing cloth
    • +
    • Stand
    • +
    • Quick Start guide
    • +
    ]]>
    + +
  • Revolutionary Multi-Touch interface
  • +
  • 3.5-inch widescreen color display
  • +
  • Wi-Fi (802.11b/g)
  • +
  • 8 mm thin
  • +
  • Safari, YouTube, Mail, Stocks, Weather, Notes, iTunes Wi-Fi Music Store, Maps
  • +]]>
    + + + + + + + +
    + + Lorem ipsum

    ]]>
    + Lorem ipsum

    ]]>
    + + + + + + + +
    + + Using Hi-Definition MicroSpeakers to deliver full-range audio, the ergonomic and lightweight design of the SE210 earphones is ideal for premium on-the-go listening on your iPod or iPhone. They offer the most accurate audio reproduction from both portable and home stereo audio sources--for the ultimate in precision highs and rich low end. In addition, the flexible design allows you to choose the most comfortable fit from a variety of wearing positions.

    Features
    +
      +
    • Sound-isolating design
    • +
    • Hi-Definition MicroSpeaker with a single balanced armature driver
    • +
    • Detachable, modular cable so you can make the cable longer or shorter depending on your activity
    • +
    • Connector compatible with earphone ports on both iPod and iPhone
    • +
    +Specifications
    +
      +
    • Speaker type: Hi-Definition MicroSpeaker
    • +
    • Frequency range: 25Hz-18.5kHz
    • +
    • Impedance (1kHz): 26 Ohms
    • +
    • Sensitivity (1mW): 114 dB SPL/mW
    • +
    • Cable length (with extension): 18.0 in./45.0 cm (54.0 in./137.1 cm)
    • +
    +In the box
    +
      +
    • Shure SE210 earphones
    • +
    • Extension cable (36.0 in./91.4 cm)
    • +
    • Three pairs foam earpiece sleeves (small, medium, large)
    • +
    • Three pairs soft flex earpiece sleeves (small, medium, large)
    • +
    • One pair triple-flange earpiece sleeves
    • +
    • Carrying case
    • +
    +Warranty
    Two-year limited
    (For details, please visit
    www.shure.com/PersonalAudio/CustomerSupport/ProductReturnsAndWarranty/index.htm.)

    Mfr. Part No.: SE210-A-EFS

    Note: Products sold through this website that do not bear the Apple Brand name are serviced and supported exclusively by their manufacturers in accordance with terms and conditions packaged with the products. Apple's Limited Warranty does not apply to products that are not Apple-branded, even if packaged or sold with Apple products. Please contact the manufacturer directly for technical support and customer service.]]>
    + Evolved from personal monitor technology road-tested by pro musicians and perfected by Shure engineers, the lightweight and stylish SE210 delivers full-range audio that's free from outside noise.

    ]]>
    + + + + + + + +
    + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/data/profile.xml b/install-new/fixtures/apple/langs/en/data/profile.xml new file mode 100644 index 000000000..017ff63fe --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/profile.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/data/scene.xml b/install-new/fixtures/apple/langs/en/data/scene.xml new file mode 100644 index 000000000..a42697b43 --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/scene.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/data/supplier.xml b/install-new/fixtures/apple/langs/en/data/supplier.xml new file mode 100644 index 000000000..07f36aeb6 --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/supplier.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/data/tag.xml b/install-new/fixtures/apple/langs/en/data/tag.xml new file mode 100644 index 000000000..38f6904b1 --- /dev/null +++ b/install-new/fixtures/apple/langs/en/data/tag.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/en/fixtures.php b/install-new/fixtures/apple/langs/en/fixtures.php new file mode 100644 index 000000000..e861e47f2 --- /dev/null +++ b/install-new/fixtures/apple/langs/en/fixtures.php @@ -0,0 +1,122 @@ + '

    Curved ahead of the curve.

    \r\n

    For those about to rock, we give you nine amazing colors. But that\'s only part of the story. Feel the curved, all-aluminum and glass design and you won\'t want to put iPod nano down.

    \r\n

    Great looks. And brains, too.

    \r\n

    The new Genius feature turns iPod nano into your own highly intelligent, personal DJ. It creates playlists by finding songs in your library that go great together.

    \r\n

    Made to move with your moves.

    \r\n

    The accelerometer comes to iPod nano. Give it a shake to shuffle your music. Turn it sideways to view Cover Flow. And play games designed with your moves in mind.

    ', + 'product_ipod_nano_description_short' => '

    New design. New features. Now in 8GB and 16GB. iPod nano rocks like never before.

    ', + 'product_ipod_nano_link_rewrite' => 'ipod-nano', + 'product_ipod_nano_name' => 'iPod Nano', + 'product_ipod_nano_available_now' => 'In stock', + 'product_ipod_shuffle_description' => '

    Instant attachment.

    \r\n

    Wear up to 500 songs on your sleeve. Or your belt. Or your gym shorts. iPod shuffle is a badge of musical devotion. Now in new, more brilliant colors.

    \r\n

    Feed your iPod shuffle.

    \r\n

    iTunes is your entertainment superstore. It?s your ultra-organized music collection and jukebox. And it?s how you load up your iPod shuffle in one click.

    \r\n

    Beauty and the beat.

    \r\n

    Intensely colorful anodized aluminum complements the simple design of iPod shuffle. Now in blue, green, pink, red, and original silver.

    ', + 'product_ipod_shuffle_description_short' => '

    iPod shuffle, the world?s most wearable music player, now clips on in more vibrant blue, green, pink, and red.

    ', + 'product_ipod_shuffle_link_rewrite' => 'ipod-shuffle', + 'product_ipod_shuffle_name' => 'iPod shuffle', + 'product_ipod_shuffle_available_now' => 'In stock', + 'product_macbook_air_description' => '

    MacBook Air is nearly as thin as your index finger. Practically every detail that could be streamlined has been. Yet it still has a 13.3-inch widescreen LED display, full-size keyboard, and large multi-touch trackpad. It?s incomparably portable without the usual ultraportable screen and keyboard compromises.

    The incredible thinness of MacBook Air is the result of numerous size- and weight-shaving innovations. From a slimmer hard drive to strategically hidden I/O ports to a lower-profile battery, everything has been considered and reconsidered with thinness in mind.

    MacBook Air is designed and engineered to take full advantage of the wireless world. A world in which 802.11n Wi-Fi is now so fast and so available, people are truly living untethered ? buying and renting movies online, downloading software, and sharing and storing files on the web.

    ', + 'product_macbook_air_description_short' => 'MacBook Air is ultrathin, ultraportable, and ultra unlike anything else. But you don?t lose inches and pounds overnight. It?s the result of rethinking conventions. Of multiple wireless innovations. And of breakthrough design. With MacBook Air, mobile computing suddenly has a new standard.', + 'product_macbook_air_link_rewrite' => 'macbook-air', + 'product_macbook_air_name' => 'MacBook Air', + 'product_macbook_description' => 'Every MacBook has a larger hard drive, up to 250GB, to store growing media collections and valuable data.

    The 2.4GHz MacBook models now include 2GB of memory standard ? perfect for running more of your favorite applications smoothly.', + 'product_macbook_description_short' => 'MacBook makes it easy to hit the road thanks to its tough polycarbonate case, built-in wireless technologies, and innovative MagSafe Power Adapter that releases automatically if someone accidentally trips on the cord.', + 'product_macbook_link_rewrite' => 'macbook', + 'product_macbook_name' => 'MacBook', + 'product_ipod_touch_description' => '

    Five new hands-on applications

    \r\n

    View rich HTML email with photos as well as PDF, Word, and Excel attachments. Get maps, directions, and real-time traffic information. Take notes and read stock and weather reports.

    \r\n

    Touch your music, movies, and more

    \r\n

    The revolutionary Multi-Touch technology built into the gorgeous 3.5-inch display lets you pinch, zoom, scroll, and flick with your fingers.

    \r\n

    Internet in your pocket

    \r\n

    With the Safari web browser, see websites the way they were designed to be seen and zoom in and out with a tap.2 And add Web Clips to your Home screen for quick access to favorite sites.

    \r\n

    What\'s in the box

    \r\n
      \r\n
    • iPod touch
    • \r\n
    • Earphones
    • \r\n
    • USB 2.0 cable
    • \r\n
    • Dock adapter
    • \r\n
    • Polishing cloth
    • \r\n
    • Stand
    • \r\n
    • Quick Start guide
    • \r\n
    ', + 'product_ipod_touch_description_short' => '
      \r\n
    • Revolutionary Multi-Touch interface
    • \r\n
    • 3.5-inch widescreen color display
    • \r\n
    • Wi-Fi (802.11b/g)
    • \r\n
    • 8 mm thin
    • \r\n
    • Safari, YouTube, Mail, Stocks, Weather, Notes, iTunes Wi-Fi Music Store, Maps
    • \r\n
    ', + 'product_ipod_touch_link_rewrite' => 'ipod-touch', + 'product_ipod_touch_name' => 'iPod touch', + 'product_folio_ipod_description' => '

    Lorem ipsum

    ', + 'product_folio_ipod_description_short' => '

    Lorem ipsum

    ', + 'product_folio_ipod_link_rewrite' => 'belkin-leather-folio-for-ipod-nano-black-chocolate', + 'product_folio_ipod_name' => 'Belkin Leather Folio for iPod nano - Black / Chocolate', + 'product_earpiece_description' => '
    Using Hi-Definition MicroSpeakers to deliver full-range audio, the ergonomic and lightweight design of the SE210 earphones is ideal for premium on-the-go listening on your iPod or iPhone. They offer the most accurate audio reproduction from both portable and home stereo audio sources--for the ultimate in precision highs and rich low end. In addition, the flexible design allows you to choose the most comfortable fit from a variety of wearing positions.

    Features
    \r\n
      \r\n
    • Sound-isolating design
    • \r\n
    • Hi-Definition MicroSpeaker with a single balanced armature driver
    • \r\n
    • Detachable, modular cable so you can make the cable longer or shorter depending on your activity
    • \r\n
    • Connector compatible with earphone ports on both iPod and iPhone
    • \r\n
    \r\nSpecifications
    \r\n
      \r\n
    • Speaker type: Hi-Definition MicroSpeaker
    • \r\n
    • Frequency range: 25Hz-18.5kHz
    • \r\n
    • Impedance (1kHz): 26 Ohms
    • \r\n
    • Sensitivity (1mW): 114 dB SPL/mW
    • \r\n
    • Cable length (with extension): 18.0 in./45.0 cm (54.0 in./137.1 cm)
    • \r\n
    \r\nIn the box
    \r\n
      \r\n
    • Shure SE210 earphones
    • \r\n
    • Extension cable (36.0 in./91.4 cm)
    • \r\n
    • Three pairs foam earpiece sleeves (small, medium, large)
    • \r\n
    • Three pairs soft flex earpiece sleeves (small, medium, large)
    • \r\n
    • One pair triple-flange earpiece sleeves
    • \r\n
    • Carrying case
    • \r\n
    \r\nWarranty
    Two-year limited
    (For details, please visit
    www.shure.com/PersonalAudio/CustomerSupport/ProductReturnsAndWarranty/index.htm.)

    Mfr. Part No.: SE210-A-EFS

    Note: Products sold through this website that do not bear the Apple Brand name are serviced and supported exclusively by their manufacturers in accordance with terms and conditions packaged with the products. Apple\'s Limited Warranty does not apply to products that are not Apple-branded, even if packaged or sold with Apple products. Please contact the manufacturer directly for technical support and customer service.
    ', + 'product_earpiece_description_short' => '

    Evolved from personal monitor technology road-tested by pro musicians and perfected by Shure engineers, the lightweight and stylish SE210 delivers full-range audio that\'s free from outside noise.

    ', + 'product_earpiece_link_rewrite' => 'ecouteurs-a-isolation-sonore-shure-se210-blanc', + 'product_earpiece_name' => 'Shure SE210 Sound-Isolating Earphones for iPod and iPhone', + 'category_ipods_name' => 'iPods', + 'category_ipods_description' => 'Now that you can buy movies from the iTunes Store and sync them to your iPod, the whole world is your theater.', + 'category_ipods_link_rewrite' => 'music-ipods', + 'category_accessories_name' => 'Accessories', + 'category_accessories_description' => 'Wonderful accessories for your iPod', + 'category_accessories_link_rewrite' => 'accessories-ipod', + 'category_laptops_name' => 'Laptops', + 'category_laptops_description' => 'The latest Intel processor, a bigger hard drive, plenty of memory, and even more new features all fit inside just one liberating inch. The new Mac laptops have the performance, power, and connectivity of a desktop computer. Without the desk part.', + 'category_laptops_link_rewrite' => 'laptops', + 'category_laptops_meta_title' => 'Apple laptops', + 'category_laptops_meta_keywords' => 'Apple laptops MacBook Air', + 'category_laptops_meta_description' => 'Powerful and chic Apple laptops', + 'scene_ipods1_name' => 'The iPods Nano', + 'scene_ipods2_name' => 'The iPods', + 'scene_laptops_name' => 'The MacBooks', + 'attributegroup_capacity_name' => 'Disk space', + 'attributegroup_capacity_public_name' => 'Disk space', + 'attributegroup_color_name' => 'Color', + 'attributegroup_color_public_name' => 'Color', + 'attributegroup_processor_name' => 'ICU', + 'attributegroup_processor_public_name' => 'Processor', + 'attribute_capacity_2gb_name' => '2GB', + 'attribute_capacity_4gb_name' => '4GB', + 'attribute_color_metal_name' => 'Metal', + 'attribute_color_blue_name' => 'Blue', + 'attribute_color_pink_name' => 'Pink', + 'attribute_color_green_name' => 'Green', + 'attribute_color_orange_name' => 'Orange', + 'attribute_capacity_64gb_dd_name' => 'Optional 64GB solid-state drive', + 'attribute_capacity_80gb_dd_name' => '80GB Parallel ATA Drive @ 4200 rpm', + 'attribute_processor_160ghz_name' => '1.60GHz Intel Core 2 Duo', + 'attribute_processor_180ghz_name' => '1.80GHz Intel Core 2 Duo', + 'attribute_capacity_80gb_name' => '80GB: 20,000 Songs', + 'attribute_capacity_160gb_name' => '160GB: 40,000 Songs', + 'attribute_color_black_name' => 'Black', + 'attribute_capacity_8gb_name' => '8Go', + 'attribute_capacity_16gb_name' => '16Go', + 'attribute_capacity_32gb_name' => '32Go', + 'attribute_color_purple_name' => 'Purple', + 'attribute_color_yellow_name' => 'Yellow', + 'attribute_color_red_name' => 'Red', + 'ordermessage_delay_name' => 'Delay', + 'ordermessage_delay_message' => 'Hi,\n\nUnfortunately, an item on your order is currently out of stock. This may cause a slight delay in delivery.\nPlease accept our apologies and rest assured that we are working hard to rectify this.\n\nBest regards,', + 'feature_height_name' => 'Height', + 'feature_width_name' => 'Width', + 'feature_depth_name' => 'Depth', + 'feature_weight_name' => 'Weight', + 'feature_headphone_name' => 'Headphone', + 'featurevalue_jack_stereo_value' => 'Jack stereo', + 'featurevalue_mini_jack_stereo_value' => 'Mini-jack stereo', + 'featurevalue_2.75in_value' => '2.75 in', + 'featurevalue_2.06in_value' => '2.06 in', + 'featurevalue_49.2g_value' => '49.2 g', + 'featurevalue_0.26in_value' => '0.26 in', + 'featurevalue_1.07in_value' => '1.07 in', + 'featurevalue_1.62in_value' => '1.62 in', + 'featurevalue_15.5g_value' => '15.5 g', + 'featurevalue_0.41in_value' => '0.41 in (clip included)', + 'featurevalue_4.33in_value' => '4.33 in', + 'featurevalue_2.76in_value' => '2.76 in', + 'featurevalue_120g_value' => '120g', + 'featurevalue_0.31in_value' => '0.31 in', + 'image_macbook_air_1_legend' => 'MacBook Air', + 'image_macbook_air_2_legend' => 'MacBook Air', + 'image_macbook_air_3_legend' => 'MacBook Air', + 'image_macbook_1_legend' => 'MacBook Air', + 'image_macbook_2_legend' => 'MacBook Air', + 'image_macbook_3_legend' => ' MacBook Air SuperDrive', + 'image_ipod_touch_1_legend' => 'iPod touch', + 'image_ipod_touch_2_legend' => 'iPod touch', + 'image_ipod_touch_3_legend' => 'iPod touch', + 'image_ipod_touch_4_legend' => 'iPod touch', + 'image_ipod_touch_5_legend' => 'iPod touch', + 'image_ipod_touch_6_legend' => 'iPod touch', + 'image_folio_ipod_1_legend' => 'housse-portefeuille-en-cuir', + 'image_earpiece_1_legend' => 'Shure SE210 Sound-Isolating Earphones for iPod and iPhone', + 'image_ipod_nano_1_legend' => 'iPod Nano', + 'image_ipod_nano_2_legend' => 'iPod Nano', + 'image_ipod_nano_3_legend' => 'iPod Nano', + 'image_ipod_nano_4_legend' => 'iPod Nano', + 'image_ipod_nano_5_legend' => 'iPod Nano', + 'image_ipod_nano_6_legend' => 'iPod Nano', + 'image_ipod_nano_7_legend' => 'iPod Nano', + 'image_ipod_nano_8_legend' => 'iPod Nano', + 'image_ipod_shuffle_1_legend' => 'iPod shuffle', + 'image_ipod_shuffle_2_legend' => 'iPod shuffle', + 'image_ipod_shuffle_3_legend' => 'iPod shuffle', + 'image_ipod_shuffle_4_legend' => 'iPod shuffle', + 'carrier_custom_delay' => 'Delivery next day!', +); \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/data/attribute.xml b/install-new/fixtures/apple/langs/es/data/attribute.xml new file mode 100644 index 000000000..8c2d16be6 --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/attribute.xml @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/data/attribute_group.xml b/install-new/fixtures/apple/langs/es/data/attribute_group.xml new file mode 100644 index 000000000..ef264772a --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/attribute_group.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/data/attributegroup.xml b/install-new/fixtures/apple/langs/es/data/attributegroup.xml new file mode 100644 index 000000000..b529d1f45 --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/attributegroup.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/install-new/fixtures/apple/langs/es/data/carrier.xml b/install-new/fixtures/apple/langs/es/data/carrier.xml new file mode 100644 index 000000000..6b914666c --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/carrier.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/data/category.xml b/install-new/fixtures/apple/langs/es/data/category.xml new file mode 100644 index 000000000..ab963d66a --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/category.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/data/feature.xml b/install-new/fixtures/apple/langs/es/data/feature.xml new file mode 100644 index 000000000..4f185108b --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/feature.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/data/feature_value.xml b/install-new/fixtures/apple/langs/es/data/feature_value.xml new file mode 100644 index 000000000..ad4fff239 --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/feature_value.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/data/featurevalue.xml b/install-new/fixtures/apple/langs/es/data/featurevalue.xml new file mode 100644 index 000000000..ed80139f7 --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/featurevalue.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/install-new/fixtures/apple/langs/es/data/image.xml b/install-new/fixtures/apple/langs/es/data/image.xml new file mode 100644 index 000000000..5a3a17132 --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/image.xml @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/data/manufacturer.xml b/install-new/fixtures/apple/langs/es/data/manufacturer.xml new file mode 100644 index 000000000..621ff2471 --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/manufacturer.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/data/order_message.xml b/install-new/fixtures/apple/langs/es/data/order_message.xml new file mode 100644 index 000000000..a1a558c24 --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/order_message.xml @@ -0,0 +1,13 @@ + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/data/ordermessage.xml b/install-new/fixtures/apple/langs/es/data/ordermessage.xml new file mode 100644 index 000000000..97a1ad7bc --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/ordermessage.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/install-new/fixtures/apple/langs/es/data/product.xml b/install-new/fixtures/apple/langs/es/data/product.xml new file mode 100644 index 000000000..ba7b98bcf --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/product.xml @@ -0,0 +1,111 @@ + + + + Curvas aerodinámicas.

    +

    Para los aficionados a las sensaciones fuertes, os presentamos nueve nuevos colores. ¡ Y eso no es todo ! Experimenta el diseño elíptico de aluminio y vidrio. ¡ No querrás separarte de él nunca más !

    +


    Estético e inteligente.

    +

    La nueva aplicación Genius hace de iPod nano tu discjockey personal. Genuis crea listas de lectura buscando en tu biblioteca las canciones que combinan entre si.

    +


    Hecho para moverse contigo.

    iPod nano está equipado de un acelerómetro. Muévelo para mezclar tu música. Voltéalo para mostrar Cover Flow. Y descubre juegos adaptados a tus movimientos.

    ]]>
    + Nuevo diseño. Nuevas aplicaciones. Ahora disponible en 8 y 16 Go. iPod nano, más rock que nunca.

    ]]>
    + + + + + + + +
    + + Un enlace inmediato.

    Lleva hasta 500 canciones colgadas de tu manga, de tu cinturón o de tu pantalón. Presume con tu iPod shuffle como signo exterior de tu pasión por la música. Ahora ya existen cuatro nuevos colores más llamativos.

    Llena tu iPod shuffle.

    iTunes es una enorme tienda dedicada a la diversión, una colección de música organizada perfectamente y un jukebox. Con tan solo un clic puedes llenar tu iPod shuffle con canciones.

    La música en tecnicolor.

    iPod shuffle presenta nuevos colores vivos que realzan su diseño estilizado en aluminio anodizado. Elige entre azul, verde, rosa, rojo y el plateado de origen.

    ]]>
    + iPod shuffle, el walkman más portátil del mundo, ahora en azul, verde, rosa y rojo.

    ]]>
    + + + + + + + +
    + + MacBook Air es casi tan fino como tu dedo. Se ha simplificado al máximo y a pesar de ello dispone de una pantalla panorámica de 13,3 pulgadas, de un teclado completo y de un amplio trackpad multi-touch. Portátil al 100%, te evitará tener que hacer un compromiso en lo que concierne a la pantalla y al teclado.

    La increíble sutileza de MacBook Air es el resultado de un gran número de innovaciones en materia de reducción de tamaño y peso. Desde un disco duro más fino hasta puertos E/S disimulados hábilmente pasando por una batería más plana, cada detalle se consideró para que el resultado fuera lo más fino posible.

    MacBook Air fue creado y elaborado para disfrutar plenamente del mundo inalámbrico. Un mundo en el que la norma Wi-Fi 802.11n es tan rápida y accesible que permite liberarse completamente de cualquier atadura para comprar videos en línea, descargar programas, almacenar y compartir archivos en la Red.

    ]]>
    + MacBook Air es ultra fino, ultra portátil y ultra diferente de todo el resto. Pero no se pierden kilos y centímetros en tan solo una noche. Todo esto es el resultado de un nuevo invento de normas. De un sinfín de novedades sin cable. Y de una revolución en el diseño. Con MacBook Air, la informática móvil adquiere una nueva dimensión.

    ]]>
    + + + + + + + +
    + + Cada MacBook está equipado de un disco duro más espacioso, de una capacidad de hasta 250 Go, para almacenar tus colecciones multimedia en expansión y tus datos más preciados.
    El modelo MacBook de 2,4 GHz integra 2 Go de memoria en estándar. Lo ideal para realizar sin dificultad tus aplicaciones preferidas.

    ]]>
    + MacBook te ofrece una gran libertad de movimientos gracias a su exterior resistente en policarbonato, a su tecnología sin cable y a su adaptador cargador sector innovador que se desconecta automáticamente si alguien se engancha en el cable.

    ]]>
    + + + + + + + +
    + + Cinco nuevas aplicaciones a mano

    +


    Consulta tu correo en formato HTML enriquecido, con fotos y ficheros adjuntos en formato PDF, Word y Excel. Consigue mapas, itinerarios e información sobre el estado de la carreteras en tiempo real. Escribe notas y consulta la bolsa y el tiempo.
    Alcanza con un dedo tu música y tus videos, entre otras cosas.
    La tecnología multi-touch revolucionaria integrada a la magnífica pantalla de 3,5 pulgadas te permitirá efectuar zoom hacia adelante y hacia atrás, y pasar y ojear las páginas solo con la ayuda de tus dedos.

    +

    Internet en tu bolsillo

    +

    Con el navegador Safari, podrás consultar sitios web en su compaginación de origen y efectuar un zoom hacia adelante y hacia atrás con la simple presión de un dedo en la pantalla.

    +

    Contenido del estuche
    * iPod touch
    * Auriculares
    * Cable USB 2.0
    * Adaptador Dock
    * Paño de limpieza
    * Base
    * Guía de inicio rápido
    Título
    Párrafo

    ]]>
    + Interfaz multi-touch revolucionaria
    Pantalla panorámica color de 3,5 pulgadas
    Wi-Fi (802.11b/g)
    8 mm de espesor
    Safari, YouTube, iTunes Wi-Fi Music Store, Correo, Mapas, Bolsa, El tiempo, Notas

    ]]>
    + + + + + + + +
    + + Características

    +
      +
    • Cuero suave resistente
    • +
    • Acceso a la tecla Hold
    • +
    • Cierre magnético
    • +
    • Acceso al Dock Conector
    • +
    • Salva pantallas
    • +
    ]]>
    + Este estuche de cuero de última moda garantiza una completa protección contra los arañazos y los pequeños contratiempos de la vida diaria. Su diseño elegante y compacto te permite meter tu Ipod directamente en tu bolsillo o en tu bolso.

    ]]>
    + + + + + + + +
    + + Los auriculares SE210, ligeros y elegantes, están basados en la tecnología de los monitores personales que los músicos profesionales utilizan en carretera y que los ingenieros de Shure han perfeccionado. También están provistos de una salida audio de gama extendida exenta de todo ruido exterior.

    Creado para un aislamiento sonoro

    +

    Las almohadillas provistas de un aislamiento sonoro bloquean más del 90% del ruido ambiente. Combinadas con un diseño ergonómico atractivo y un cable modular, minimizan las intrusiones del mundo exterior y te permiten concentrarte en tu música. Creados para los apasionados por la música que quieren que su aparato audio móvil evolucione, los auriculares SE210 te permitirán llevar la tecnología allí donde tú vayas.

    Micro-transductor alta definición
    Desarrollados para poder tener una audición de calidad durante los desplazamientos, los auriculares SE210 utilizan un único transductor con un armazón equilibrado para poder disfrutar de una gama audio extendida. ¿El resultado ? Un confort audio increíble que restituye cada detalle de un espectáculo en directo.

    El kit universal Deluxe incluye los siguientes elementos :
    - Almohadillas para aislamiento sonoro
    Las almohadillas para el aislamiento sonoro tienen una doble función : bloquear el ruido ambiente y garantizar una estabilidad y un confort personalizados. Como cada oreja es diferente el kit universal Deluxe incluye tres tallas (S, M, L) de almohadillas de espuma y flexibles. Elige la talla y el estilo de almohadilla que mejor te convenga : un buen aislamiento es un factor clave tanto para optimizar el aislamiento sonoro y la respuesta de los bajos como para aumentar el confort durante una audición prolongada.

    - Cable modular

    +

    Basándose en los comentarios de los numerosos usuarios, los ingenieros de Shure han creado una solución de cable separable para permitir un grado de personalización sin precedentes. El cable de 1 metro te permite adaptar el confort en función de la actividad del momento y de la aplicación.

    - Estuche para el transporte

    +

    Además de las almohadillas de aislamiento sonoro y del cable modular, los auriculares SE210 están provistos de un estuche de transporte compacto y resistente para guardar los auriculares de manera práctica y sin dificultad.
    - Garantía límite de dos años
    Cada solución SE210 tiene una garantía piezas y mano de obra de dos años.

    +


    Características técnicas

    +
      +
    • Tipo de transductor : micro-transductor alta definición
    • +
    • Sensibilidad (1 mW) : presión acústica de 114 dB/mW
    • +
    • Impedancia : (à 1 kHz) : 26 W
    • +
    • Gama de frecuencias : 25 Hz ˆ 18,5 kHz
    • +
    • Longitud del cable / con alargador : 45 cm / 136 cm
    • +
    +


    Contenido de la caja

    +
      +
    • Altavoces Shure SE210
    • +
    • Kit universal Deluxe (almohadillas de aislamiento sonoro, cable modular, estuche de transporte)
    • +
    ]]>
    + Los auriculares con aislamiento ergonómicos y ligeros ofrecen la reproducción más fiel proveniente de fuentes audio estéreo móviles o de salón.

    ]]>
    + + + + + + + +
    +
    \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/data/profile.xml b/install-new/fixtures/apple/langs/es/data/profile.xml new file mode 100644 index 000000000..2c2a082e7 --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/profile.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/data/scene.xml b/install-new/fixtures/apple/langs/es/data/scene.xml new file mode 100644 index 000000000..e392878f7 --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/scene.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/data/supplier.xml b/install-new/fixtures/apple/langs/es/data/supplier.xml new file mode 100644 index 000000000..07f36aeb6 --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/supplier.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/data/tag.xml b/install-new/fixtures/apple/langs/es/data/tag.xml new file mode 100644 index 000000000..9d6294e02 --- /dev/null +++ b/install-new/fixtures/apple/langs/es/data/tag.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/es/fixtures.php b/install-new/fixtures/apple/langs/es/fixtures.php new file mode 100644 index 000000000..71d9b446e --- /dev/null +++ b/install-new/fixtures/apple/langs/es/fixtures.php @@ -0,0 +1,126 @@ + '

    Curvas aerodinámicas.

    \r\n

    Para los aficionados a las sensaciones fuertes, os presentamos nueve nuevos colores. ¡ Y eso no es todo ! Experimenta el diseño elíptico de aluminio y vidrio. ¡ No querrás separarte de él nunca más !

    \r\n


    Estético e inteligente.

    \r\n

    La nueva aplicación Genius hace de iPod nano tu discjockey personal. Genuis crea listas de lectura buscando en tu biblioteca las canciones que combinan entre si.

    \r\n


    Hecho para moverse contigo.

    iPod nano está equipado de un acelerómetro. Muévelo para mezclar tu música. Voltéalo para mostrar Cover Flow. Y descubre juegos adaptados a tus movimientos.

    ', + 'product_ipod_nano_description_short' => '

    Nuevo diseño. Nuevas aplicaciones. Ahora disponible en 8 y 16 Go. iPod nano, más rock que nunca.

    ', + 'product_ipod_nano_link_rewrite' => 'ipod-nano', + 'product_ipod_nano_name' => 'iPod Nano', + 'product_ipod_nano_available_now' => 'Disponible', + 'product_ipod_shuffle_description' => '

    Un enlace inmediato.

    Lleva hasta 500 canciones colgadas de tu manga, de tu cinturón o de tu pantalón. Presume con tu iPod shuffle como signo exterior de tu pasión por la música. Ahora ya existen cuatro nuevos colores más llamativos.

    Llena tu iPod shuffle.

    iTunes es una enorme tienda dedicada a la diversión, una colección de música organizada perfectamente y un jukebox. Con tan solo un clic puedes llenar tu iPod shuffle con canciones.

    La música en tecnicolor.

    iPod shuffle presenta nuevos colores vivos que realzan su diseño estilizado en aluminio anodizado. Elige entre azul, verde, rosa, rojo y el plateado de origen.

    ', + 'product_ipod_shuffle_description_short' => '

    iPod shuffle, el walkman más portátil del mundo, ahora en azul, verde, rosa y rojo.

    ', + 'product_ipod_shuffle_link_rewrite' => 'ipod-shuffle', + 'product_ipod_shuffle_name' => 'iPod shuffle', + 'product_ipod_shuffle_available_now' => 'Disponible', + 'product_macbook_air_description' => '

    MacBook Air es casi tan fino como tu dedo. Se ha simplificado al máximo y a pesar de ello dispone de una pantalla panorámica de 13,3 pulgadas, de un teclado completo y de un amplio trackpad multi-touch. Portátil al 100%, te evitará tener que hacer un compromiso en lo que concierne a la pantalla y al teclado.

    La increíble sutileza de MacBook Air es el resultado de un gran número de innovaciones en materia de reducción de tamaño y peso. Desde un disco duro más fino hasta puertos E/S disimulados hábilmente pasando por una batería más plana, cada detalle se consideró para que el resultado fuera lo más fino posible.

    MacBook Air fue creado y elaborado para disfrutar plenamente del mundo inalámbrico. Un mundo en el que la norma Wi-Fi 802.11n es tan rápida y accesible que permite liberarse completamente de cualquier atadura para comprar videos en línea, descargar programas, almacenar y compartir archivos en la Red.

    ', + 'product_macbook_air_description_short' => '

    MacBook Air es ultra fino, ultra portátil y ultra diferente de todo el resto. Pero no se pierden kilos y centímetros en tan solo una noche. Todo esto es el resultado de un nuevo invento de normas. De un sinfín de novedades sin cable. Y de una revolución en el diseño. Con MacBook Air, la informática móvil adquiere una nueva dimensión.

    ', + 'product_macbook_air_link_rewrite' => 'macbook-air', + 'product_macbook_air_name' => 'MacBook Air', + 'product_macbook_air_available_now' => 'Disponible', + 'product_macbook_description' => '

    Cada MacBook está equipado de un disco duro más espacioso, de una capacidad de hasta 250 Go, para almacenar tus colecciones multimedia en expansión y tus datos más preciados.
    El modelo MacBook de 2,4 GHz integra 2 Go de memoria en estándar. Lo ideal para realizar sin dificultad tus aplicaciones preferidas.

    ', + 'product_macbook_description_short' => '

    MacBook te ofrece una gran libertad de movimientos gracias a su exterior resistente en policarbonato, a su tecnología sin cable y a su adaptador cargador sector innovador que se desconecta automáticamente si alguien se engancha en el cable.

    ', + 'product_macbook_link_rewrite' => 'macbook', + 'product_macbook_name' => 'MacBook', + 'product_macbook_available_now' => 'Disponible', + 'product_ipod_touch_description' => '

    Cinco nuevas aplicaciones a mano

    \r\n


    Consulta tu correo en formato HTML enriquecido, con fotos y ficheros adjuntos en formato PDF, Word y Excel. Consigue mapas, itinerarios e información sobre el estado de la carreteras en tiempo real. Escribe notas y consulta la bolsa y el tiempo.
    Alcanza con un dedo tu música y tus videos, entre otras cosas.
    La tecnología multi-touch revolucionaria integrada a la magnífica pantalla de 3,5 pulgadas te permitirá efectuar zoom hacia adelante y hacia atrás, y pasar y ojear las páginas solo con la ayuda de tus dedos.

    \r\n

    Internet en tu bolsillo

    \r\n

    Con el navegador Safari, podrás consultar sitios web en su compaginación de origen y efectuar un zoom hacia adelante y hacia atrás con la simple presión de un dedo en la pantalla.

    \r\n

    Contenido del estuche
    * iPod touch
    * Auriculares
    * Cable USB 2.0
    * Adaptador Dock
    * Paño de limpieza
    * Base
    * Guía de inicio rápido
    Título
    Párrafo

    ', + 'product_ipod_touch_description_short' => '

    Interfaz multi-touch revolucionaria
    Pantalla panorámica color de 3,5 pulgadas
    Wi-Fi (802.11b/g)
    8 mm de espesor
    Safari, YouTube, iTunes Wi-Fi Music Store, Correo, Mapas, Bolsa, El tiempo, Notas

    ', + 'product_ipod_touch_link_rewrite' => 'ipod-touch', + 'product_ipod_touch_name' => 'iPod touch', + 'product_ipod_touch_available_now' => 'Disponible', + 'product_folio_ipod_description' => '

    Características

    \r\n
      \r\n
    • Cuero suave resistente
    • \r\n
    • Acceso a la tecla Hold
    • \r\n
    • Cierre magnético
    • \r\n
    • Acceso al Dock Conector
    • \r\n
    • Salva pantallas
    • \r\n
    ', + 'product_folio_ipod_description_short' => '

    Este estuche de cuero de última moda garantiza una completa protección contra los arañazos y los pequeños contratiempos de la vida diaria. Su diseño elegante y compacto te permite meter tu Ipod directamente en tu bolsillo o en tu bolso.

    ', + 'product_folio_ipod_link_rewrite' => 'funda-cuero-ipod-nano-negro-chocolate', + 'product_folio_ipod_name' => 'Leather Case (iPod nano) - Negro / Chocolate', + 'product_folio_ipod_available_now' => 'Disponible', + 'product_earpiece_description' => '

    Los auriculares SE210, ligeros y elegantes, están basados en la tecnología de los monitores personales que los músicos profesionales utilizan en carretera y que los ingenieros de Shure han perfeccionado. También están provistos de una salida audio de gama extendida exenta de todo ruido exterior.

    Creado para un aislamiento sonoro

    \r\n

    Las almohadillas provistas de un aislamiento sonoro bloquean más del 90% del ruido ambiente. Combinadas con un diseño ergonómico atractivo y un cable modular, minimizan las intrusiones del mundo exterior y te permiten concentrarte en tu música. Creados para los apasionados por la música que quieren que su aparato audio móvil evolucione, los auriculares SE210 te permitirán llevar la tecnología allí donde tú vayas.

    Micro-transductor alta definición
    Desarrollados para poder tener una audición de calidad durante los desplazamientos, los auriculares SE210 utilizan un único transductor con un armazón equilibrado para poder disfrutar de una gama audio extendida. ¿El resultado ? Un confort audio increíble que restituye cada detalle de un espectáculo en directo.

    El kit universal Deluxe incluye los siguientes elementos :
    - Almohadillas para aislamiento sonoro
    Las almohadillas para el aislamiento sonoro tienen una doble función : bloquear el ruido ambiente y garantizar una estabilidad y un confort personalizados. Como cada oreja es diferente el kit universal Deluxe incluye tres tallas (S, M, L) de almohadillas de espuma y flexibles. Elige la talla y el estilo de almohadilla que mejor te convenga : un buen aislamiento es un factor clave tanto para optimizar el aislamiento sonoro y la respuesta de los bajos como para aumentar el confort durante una audición prolongada.

    - Cable modular

    \r\n

    Basándose en los comentarios de los numerosos usuarios, los ingenieros de Shure han creado una solución de cable separable para permitir un grado de personalización sin precedentes. El cable de 1 metro te permite adaptar el confort en función de la actividad del momento y de la aplicación.

    - Estuche para el transporte

    \r\n

    Además de las almohadillas de aislamiento sonoro y del cable modular, los auriculares SE210 están provistos de un estuche de transporte compacto y resistente para guardar los auriculares de manera práctica y sin dificultad.
    - Garantía límite de dos años
    Cada solución SE210 tiene una garantía piezas y mano de obra de dos años.

    \r\n


    Características técnicas

    \r\n
      \r\n
    • Tipo de transductor : micro-transductor alta definición
    • \r\n
    • Sensibilidad (1 mW) : presión acústica de 114 dB/mW
    • \r\n
    • Impedancia : (à 1 kHz) : 26 W
    • \r\n
    • Gama de frecuencias : 25 Hz ? 18,5 kHz
    • \r\n
    • Longitud del cable / con alargador : 45 cm / 136 cm
    • \r\n
    \r\n


    Contenido de la caja

    \r\n
      \r\n
    • Altavoces Shure SE210
    • \r\n
    • Kit universal Deluxe (almohadillas de aislamiento sonoro, cable modular, estuche de transporte)
    • \r\n
    ', + 'product_earpiece_description_short' => '

    Los auriculares con aislamiento ergonómicos y ligeros ofrecen la reproducción más fiel proveniente de fuentes audio estéreo móviles o de salón.

    ', + 'product_earpiece_link_rewrite' => 'auriculares-aislantes-del-sonido-shure-se210', + 'product_earpiece_name' => 'Auriculares aislantes del sonido Shure SE210', + 'product_earpiece_available_now' => 'Disponible', + 'category_ipods_name' => 'iPods', + 'category_ipods_description' => 'Es hora de que el mejor jugador de la música, al escenario para hacer un bis. Con el nuevo iPod, el mundo es tu escenario.', + 'category_ipods_link_rewrite' => 'musica-ipods', + 'category_accessories_name' => 'Accesorios', + 'category_accessories_description' => 'Todos los accesorios de moda para tu iPod', + 'category_accessories_link_rewrite' => 'ipod-accesorios', + 'category_laptops_name' => 'Portátiles', + 'category_laptops_description' => 'El último procesador Intel, un disco duro más grande, con profusión de memoria y otras novedades. Todo en sólo 2,59 cm libres de cualquier obstrucción. Las nuevas portátiles Mac cumplir rendimiento, potencia y conectividad de una computadora de escritorio. Sin la parte del escritorio.', + 'category_laptops_link_rewrite' => 'portatiles-apple', + 'category_laptops_meta_title' => 'Portátiles Apple', + 'category_laptops_meta_keywords' => 'portátiles apple macbook air', + 'category_laptops_meta_description' => 'portátiles apple poderoso y el diseño', + 'scene_ipods1_name' => 'El iPod Nano', + 'scene_ipods2_name' => 'El iPod', + 'scene_laptops_name' => 'El MacBook', + 'attributegroup_capacity_name' => 'Capacidad', + 'attributegroup_capacity_public_name' => 'Capacidad', + 'attributegroup_color_name' => 'Color', + 'attributegroup_color_public_name' => 'Color', + 'attributegroup_processor_name' => 'ICU', + 'attributegroup_processor_public_name' => 'Procesador', + 'attribute_capacity_2gb_name' => '2Go', + 'attribute_capacity_4gb_name' => '4Go', + 'attribute_color_metal_name' => 'Metal', + 'attribute_color_blue_name' => 'Azul', + 'attribute_color_pink_name' => 'Rosa', + 'attribute_color_green_name' => 'Verde', + 'attribute_color_orange_name' => 'Naranja', + 'attribute_capacity_64gb_dd_name' => 'SSD (solid-state drive) 64 Go ', + 'attribute_capacity_80gb_dd_name' => 'Disco duro PATA 80 Go 4 200 tr/min', + 'attribute_processor_160ghz_name' => 'Intel Core 2 Duo para 1,6 GHz', + 'attribute_processor_180ghz_name' => 'Intel Core 2 Duo para 1,8 GHz', + 'attribute_capacity_80gb_name' => '80 Go : 20 000 canciones', + 'attribute_capacity_160gb_name' => '160 Go : 40 000 canciones', + 'attribute_color_black_name' => 'Negro', + 'attribute_capacity_8gb_name' => '8Go', + 'attribute_capacity_16gb_name' => '16Go', + 'attribute_capacity_32gb_name' => '32Go', + 'attribute_color_purple_name' => 'Violeta', + 'attribute_color_yellow_name' => 'Amarillo', + 'attribute_color_red_name' => 'Rojo', + 'ordermessage_delay_name' => 'Plazo', + 'ordermessage_delay_message' => 'Hola,\n\nUno de los elementos de su solicitud se encuentra actualmente la reposición, el cual poco puede retrasar el envío.\n\nGracias por su comprensión.\n\nSaludos cordiales,', + 'feature_height_name' => 'Alto', + 'feature_width_name' => 'Ancho', + 'feature_depth_name' => 'Profundo', + 'feature_weight_name' => 'Peso', + 'feature_headphone_name' => 'Toma auriculares', + 'featurevalue_jack_stereo_value' => 'Jack stereo', + 'featurevalue_mini_jack_stereo_value' => 'Mini-jack stéréo', + 'featurevalue_2.75in_value' => '69.8 mm', + 'featurevalue_2.06in_value' => '52.3 mm', + 'featurevalue_49.2g_value' => '49,2 g', + 'featurevalue_0.26in_value' => '6,5 mm', + 'featurevalue_1.07in_value' => '27.3 mm', + 'featurevalue_1.62in_value' => '41.2 mm', + 'featurevalue_15.5g_value' => '15.5 g', + 'featurevalue_0.41in_value' => '10,5 mm (clip incluyendo)', + 'featurevalue_4.33in_value' => '110 mm', + 'featurevalue_2.76in_value' => '70 mm', + 'featurevalue_120g_value' => '120g', + 'featurevalue_0.31in_value' => '8 mm', + 'image_macbook_air_7_legend' => 'macbook-air-1', + 'image_macbook_air_8_legend' => 'macbook-air-2', + 'image_macbook_air_9_legend' => 'macbook-air-3', + 'image_macbook_7_legend' => 'macbook-air-4', + 'image_macbook_8_legend' => 'macbook-air-5', + 'image_macbook_9_legend' => 'superdrive-pour-macbook-air-1', + 'image_ipod_touch_13_legend' => 'iPod touch', + 'image_ipod_touch_14_legend' => 'iPod touch', + 'image_ipod_touch_15_legend' => 'iPod touch', + 'image_ipod_touch_16_legend' => 'iPod touch', + 'image_ipod_touch_17_legend' => 'iPod touch', + 'image_ipod_touch_18_legend' => 'iPod touch', + 'image_folio_ipod_3_legend' => 'housse-portefeuille-en-cuir', + 'image_earpiece_3_legend' => 'Auriculares aislantes del sonido Shure SE210', + 'image_ipod_nano_17_legend' => 'iPod Nano', + 'image_ipod_nano_18_legend' => 'iPod Nano', + 'image_ipod_nano_19_legend' => 'iPod Nano', + 'image_ipod_nano_20_legend' => 'iPod Nano', + 'image_ipod_nano_21_legend' => 'iPod Nano', + 'image_ipod_nano_22_legend' => 'iPod Nano', + 'image_ipod_nano_23_legend' => 'iPod Nano', + 'image_ipod_nano_24_legend' => 'iPod Nano', + 'image_ipod_shuffle_9_legend' => 'iPod shuffle', + 'image_ipod_shuffle_10_legend' => 'iPod shuffle', + 'image_ipod_shuffle_11_legend' => 'iPod shuffle', + 'image_ipod_shuffle_12_legend' => 'iPod shuffle', + 'carrier_custom_delay' => '¡Entrega día siguiente!', +); \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/data/attribute.xml b/install-new/fixtures/apple/langs/fr/data/attribute.xml new file mode 100644 index 000000000..9a3dd9060 --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/attribute.xml @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/data/attribute_group.xml b/install-new/fixtures/apple/langs/fr/data/attribute_group.xml new file mode 100644 index 000000000..eda19821a --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/attribute_group.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/data/attributegroup.xml b/install-new/fixtures/apple/langs/fr/data/attributegroup.xml new file mode 100644 index 000000000..6266c5d9a --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/attributegroup.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/install-new/fixtures/apple/langs/fr/data/carrier.xml b/install-new/fixtures/apple/langs/fr/data/carrier.xml new file mode 100644 index 000000000..b8612d40a --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/carrier.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/data/category.xml b/install-new/fixtures/apple/langs/fr/data/category.xml new file mode 100644 index 000000000..5198da1b2 --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/category.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/data/feature.xml b/install-new/fixtures/apple/langs/fr/data/feature.xml new file mode 100644 index 000000000..d3f81071e --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/feature.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/data/feature_value.xml b/install-new/fixtures/apple/langs/fr/data/feature_value.xml new file mode 100644 index 000000000..2f7043dad --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/feature_value.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/data/featurevalue.xml b/install-new/fixtures/apple/langs/fr/data/featurevalue.xml new file mode 100644 index 000000000..2a09407c2 --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/featurevalue.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/install-new/fixtures/apple/langs/fr/data/image.xml b/install-new/fixtures/apple/langs/fr/data/image.xml new file mode 100644 index 000000000..24d096650 --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/image.xml @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/data/manufacturer.xml b/install-new/fixtures/apple/langs/fr/data/manufacturer.xml new file mode 100644 index 000000000..621ff2471 --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/manufacturer.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/data/order_message.xml b/install-new/fixtures/apple/langs/fr/data/order_message.xml new file mode 100644 index 000000000..1e620210f --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/order_message.xml @@ -0,0 +1,13 @@ + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/data/ordermessage.xml b/install-new/fixtures/apple/langs/fr/data/ordermessage.xml new file mode 100644 index 000000000..1b0faba13 --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/ordermessage.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/install-new/fixtures/apple/langs/fr/data/product.xml b/install-new/fixtures/apple/langs/fr/data/product.xml new file mode 100644 index 000000000..478c581cd --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/product.xml @@ -0,0 +1,164 @@ + + + + Des courbes avantageuses.

    +

    Pour les amateurs de sensations, voici neuf nouveaux coloris. Et ce n'est pas tout ! Faites l'expérience du design elliptique en aluminum et verre. Vous ne voudrez plus le lâcher.

    +

    Beau et intelligent.

    +

    La nouvelle fonctionnalité Genius fait d'iPod nano votre DJ personnel. Genius crée des listes de lecture en recherchant dans votre bibliothèque les chansons qui vont bien ensemble.

    +

    Fait pour bouger avec vous.

    +

    iPod nano est équipé de l'accéléromètre. Secouez-le pour mélanger votre musique. Basculez-le pour afficher Cover Flow. Et découvrez des jeux adaptés à vos mouvements.

    ]]>
    + Nouveau design. Nouvelles fonctionnalités. Désormais en 8 et 16 Go. iPod nano, plus rock que jamais.

    ]]>
    + + + + + + + +
    + + Un lien immédiat.

    +

    Portez jusqu'à 500 chansons accrochées à votre manche, à votre ceinture ou à votre short. Arborez votre iPod shuffle comme signe extérieur de votre passion pour la musique. Existe désormais en quatre nouveaux coloris encore plus éclatants.

    +

    Emplissez votre iPod shuffle.

    +

    iTunes est un immense magasin dédié au divertissement, une collection musicale parfaitement organisée et un jukebox. Vous pouvez en un seul clic remplir votre iPod shuffle de chansons.

    +

    La musique en technicolor.

    +

    iPod shuffle s'affiche désormais dans de nouveaux coloris intenses qui rehaussent le design épuré du boîtier en aluminium anodisé. Choisissez parmi le bleu, le vert, le rose, le rouge et l'argenté d'origine.

    ]]>
    + iPod shuffle, le baladeur le plus portable du monde, se clippe maintenant en bleu, vert, rose et rouge.

    ]]>
    + + + + + + + +
    + + MacBook Air est presque aussi fin que votre index. Pratiquement tout ce qui pouvait être simplifié l'a été. Il n'en dispose pas moins d'un écran panoramique de 13,3 pouces, d'un clavier complet et d'un vaste trackpad multi-touch. Incomparablement portable il vous évite les compromis habituels en matière d'écran et de clavier ultra-portables.

    L'incroyable finesse de MacBook Air est le résultat d'un grand nombre d'innovations en termes de réduction de la taille et du poids. D'un disque dur plus fin à des ports d'E/S habilement dissimulés en passant par une batterie plus plate, chaque détail a été considéré et reconsidéré avec la finesse à l'esprit.

    MacBook Air a été conçu et élaboré pour profiter pleinement du monde sans fil. Un monde dans lequel la norme Wi-Fi 802.11n est désormais si rapide et si accessible qu'elle permet véritablement de se libérer de toute attache pour acheter des vidéos en ligne, télécharger des logicééééiels, stocker et partager des fichiers sur le Web.

    ]]>
    + + + + + + + + +
    + +
    Le modèle MacBook à 2,4 GHz intègre désormais 2 Go de mémoire en standard. L'idéal pour exécuter en souplesse vos applications préférées.]]>
    + + + + + + + + +
    + + Titre 1 +

    Titre 2

    +

    Titre 3

    +

    Titre 4

    +
    Titre 5
    +
    Titre 6
    +
      +
    • UL
    • +
    • UL
    • +
    • UL
    • +
    • UL
    • +
    +
      +
    1. OL
    2. +
    3. OL
    4. +
    5. OL
    6. +
    7. OL
    8. +
    +

    paragraphe...

    +

    paragraphe...

    +

    paragraphe...

    + + + + + + + + + + + + + + + + + + +
    th th th
    tdtdtd
    tdtdtd
    +

    Cinq nouvelles applications sous la main

    +

    Consultez vos e-mails au format HTML enrichi, avec photos et pieces jointes au format PDF, Word et Excel. Obtenez des cartes, des itinéraires et des informations sur l'état de la circulation en temps réel. Rédigez des notes et consultez les cours de la Bourse et les bulletins météo.

    +

    Touchez du doigt votre musique et vos vidéos. Entre autres.

    +

    La technologie multi-touch révolutionnaire intégrée au superbe écran de 3,5 pouces vous permet d'effectuer des zooms avant et arrière, de faire défiler et de feuilleter des pages à l'aide de vos seuls doigts.

    +

    Internet dans votre poche

    +

    Avec le navigateur Safari, vous pouvez consulter des sites web dans leur mise en page d'origine et effectuer un zoom avant et arrière d'une simple pression sur l'écran.

    +

    Contenu du coffret

    +
      +
    • iPod touch
    • +
    • Écouteurs
    • +
    • Câble USB 2.0
    • +
    • Adaptateur Dock
    • +
    • Chiffon de nettoyage
    • +
    • Support
    • +
    • Guide de démarrage rapide
    • +
    +

     

    ]]>
    + Interface multi-touch révolutionnaire
    Écran panoramique couleur de 3,5 pouces
    Wi-Fi (802.11b/g)
    8 mm d'épaisseur
    Safari, YouTube, iTunes Wi-Fi Music Store, Courrier, Cartes, Bourse, Météo, Notes

    ]]>
    + + + + + + + +
    + + Caractéristiques

    +
  • Cuir doux résistant
  • +
  • Accès au bouton Hold
  • +
  • Fermeture magnétique
  • +
  • Accès au Dock Connector
  • +
  • Protège-écran
  • ]]>
    + Cet étui en cuir tendance assure une protection complète contre les éraflures et les petits aléas de la vie quotidienne. Sa conception élégante et compacte vous permet de glisser votre iPod directement dans votre poche ou votre sac à main.

    ]]>
    + + + + + + + +
    + + Basés sur la technologie des moniteurs personnels testée sur la route par des musiciens professionnels et perfectionnée par les ingénieurs Shure, les écouteurs SE210, légers et élégants, fournissent une sortie audio à gamme étendue exempte de tout bruit externe.


    Conception à isolation sonore
    Les embouts à isolation sonore fournis bloquent plus de 90 % du bruit ambiant. Combinés à un design ergonomique séduisant et un câble modulaire, ils minimisent les intrusions du monde extérieur, vous permettant de vous concentrer sur votre musique. Conçus pour les amoureux de la musique qui souhaitent faire évoluer leur appareil audio portable, les écouteurs SE210 vous permettent d'emmener la performance avec vous.

    Micro-transducteur haute définition
    Développés pour une écoute de qualité supérieure en déplacement, les écouteurs SE210 utilisent un seul transducteur à armature équilibrée pour bénéficier d'une gamme audio étendue. Le résultat ? Un confort d'écoute époustouflant qui restitue tous les détails d'un spectacle live.

    +

    Le kit universel Deluxe comprend les éléments suivants :
    - Embouts à isolation sonore
    Les embouts à isolation sonore inclus ont un double rôle : bloquer les bruits ambiants et garantir un maintien et un confort personnalisés. Comme chaque oreille est différente, le kit universel Deluxe comprend trois tailles (S, M, L) d'embouts mousse et flexibles. Choisissez la taille et le style d'embout qui vous conviennent le mieux : une bonne étanchéité est un facteur clé pour optimiser l'isolation sonore et la réponse des basses, ainsi que pour accroître le confort en écoute prolongée.

    - Câble modulaire
    En se basant sur les commentaires de nombreux utilisateurs, les ingénieurs de Shure ont développé une solution de câble détachable pour permettre un degré de personnalisation sans précédent. Le câble de 1 mètre fourni vous permet d'adapter votre confort en fonction de l'activité et de l'application.

    - Étui de transport
    Outre les embouts à isolation sonore et le câble modulaire, un étui de transport compact et résistant est fourni avec les écouteurs SE210 pour vous permettre de ranger vos écouteurs de manière pratique et sans encombres.

    - Garantie limitée de deux ans
    Chaque solution SE210 achetée est couverte par une garantie pièces et main-d'œuvre de deux ans.

    Caractéristiques techniques

    +
      +
    • Type de transducteur : micro-transducteur haute définition
    • +
    • Sensibilité (1 mW) : pression acoustique de 114 dB/mW
    • +
    • Impédance (à 1 kHz) : 26 W
    • +
    • Gamme de fréquences : 25 Hz – 18,5 kHz
    • +
    • Longueur de câble / avec rallonge : 45 cm / 136 cm
    • +
    +

    Contenu du coffret

    +
      +
    • Écouteurs Shure SE210
    • +
    • Kit universel Deluxe (embouts à isolation sonore, câble modulaire, étui de transport)
    • +
    ]]>
    + Les écouteurs à isolation sonore ergonomiques et légers offrent la reproduction audio la plus fidèle en provenance de sources audio stéréo portables ou de salon.

    ]]>
    + + + + + + + +
    +
    \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/data/profile.xml b/install-new/fixtures/apple/langs/fr/data/profile.xml new file mode 100644 index 000000000..73ef67b1a --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/profile.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/data/scene.xml b/install-new/fixtures/apple/langs/fr/data/scene.xml new file mode 100644 index 000000000..931f79e2d --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/scene.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/data/supplier.xml b/install-new/fixtures/apple/langs/fr/data/supplier.xml new file mode 100644 index 000000000..07f36aeb6 --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/supplier.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/data/tag.xml b/install-new/fixtures/apple/langs/fr/data/tag.xml new file mode 100644 index 000000000..e8583cab2 --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/data/tag.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/fr/fixtures.php b/install-new/fixtures/apple/langs/fr/fixtures.php new file mode 100644 index 000000000..f71fed856 --- /dev/null +++ b/install-new/fixtures/apple/langs/fr/fixtures.php @@ -0,0 +1,123 @@ + '

    Des courbes avantageuses.

    \r\n

    Pour les amateurs de sensations, voici neuf nouveaux coloris. Et ce n\'est pas tout ! Faites l\'expérience du design elliptique en aluminum et verre. Vous ne voudrez plus le lâcher.

    \r\n

    Beau et intelligent.

    \r\n

    La nouvelle fonctionnalité Genius fait d\'iPod nano votre DJ personnel. Genius crée des listes de lecture en recherchant dans votre bibliothèque les chansons qui vont bien ensemble.

    \r\n

    Fait pour bouger avec vous.

    \r\n

    iPod nano est équipé de l\'accéléromètre. Secouez-le pour mélanger votre musique. Basculez-le pour afficher Cover Flow. Et découvrez des jeux adaptés à vos mouvements.

    ', + 'product_ipod_nano_description_short' => '

    Nouveau design. Nouvelles fonctionnalités. Désormais en 8 et 16 Go. iPod nano, plus rock que jamais.

    ', + 'product_ipod_nano_link_rewrite' => 'ipod-nano', + 'product_ipod_nano_name' => 'iPod Nano', + 'product_ipod_nano_available_now' => 'En stock', + 'product_ipod_shuffle_description' => '

    Un lien immédiat.

    \r\n

    Portez jusqu\'à 500 chansons accrochées à votre manche, à votre ceinture ou à votre short. Arborez votre iPod shuffle comme signe extérieur de votre passion pour la musique. Existe désormais en quatre nouveaux coloris encore plus éclatants.

    \r\n

    Emplissez votre iPod shuffle.

    \r\n

    iTunes est un immense magasin dédié au divertissement, une collection musicale parfaitement organisée et un jukebox. Vous pouvez en un seul clic remplir votre iPod shuffle de chansons.

    \r\n

    La musique en technicolor.

    \r\n

    iPod shuffle s\'affiche désormais dans de nouveaux coloris intenses qui rehaussent le design épuré du boîtier en aluminium anodisé. Choisissez parmi le bleu, le vert, le rose, le rouge et l\'argenté d\'origine.

    ', + 'product_ipod_shuffle_description_short' => '

    iPod shuffle, le baladeur le plus portable du monde, se clippe maintenant en bleu, vert, rose et rouge.

    ', + 'product_ipod_shuffle_link_rewrite' => 'ipod-shuffle', + 'product_ipod_shuffle_name' => 'iPod shuffle', + 'product_ipod_shuffle_available_now' => 'En stock', + 'product_macbook_air_description' => '

    MacBook Air est presque aussi fin que votre index. Pratiquement tout ce qui pouvait être simplifié l\'a été. Il n\'en dispose pas moins d\'un écran panoramique de 13,3 pouces, d\'un clavier complet et d\'un vaste trackpad multi-touch. Incomparablement portable il vous évite les compromis habituels en matière d\'écran et de clavier ultra-portables.

    L\'incroyable finesse de MacBook Air est le résultat d\'un grand nombre d\'innovations en termes de réduction de la taille et du poids. D\'un disque dur plus fin à des ports d\'E/S habilement dissimulés en passant par une batterie plus plate, chaque détail a été considéré et reconsidéré avec la finesse à l\'esprit.

    MacBook Air a été conçu et élaboré pour profiter pleinement du monde sans fil. Un monde dans lequel la norme Wi-Fi 802.11n est désormais si rapide et si accessible qu\'elle permet véritablement de se libérer de toute attache pour acheter des vidéos en ligne, télécharger des logicééééiels, stocker et partager des fichiers sur le Web.

    ', + 'product_macbook_air_description_short' => 'MacBook Air est ultra fin, ultra portable et ultra différent de tout le reste. Mais on ne perd pas des kilos et des centimètres en une nuit. C\'est le résultat d\'une réinvention des normes. D\'une multitude d\'innovations sans fil. Et d\'une révolution dans le design. Avec MacBook Air, l\'informatique mobile prend soudain une nouvelle dimension.', + 'product_macbook_air_link_rewrite' => 'macbook-air', + 'product_macbook_air_name' => 'MacBook Air', + 'product_macbook_description' => 'Chaque MacBook est équipé d\'un disque dur plus spacieux, d\'une capacité atteignant 250 Go, pour stocker vos collections multimédia en expansion et vos données précieuses.

    Le modèle MacBook à 2,4 GHz intègre désormais 2 Go de mémoire en standard. L\'idéal pour exécuter en souplesse vos applications préférées.', + 'product_macbook_description_short' => 'MacBook vous offre la liberté de mouvement grâce à son boîtier résistant en polycarbonate, à ses technologies sans fil intégrées et à son adaptateur secteur MagSafe novateur qui se déconnecte automatiquement si quelqu\'un se prend les pieds dans le fil.', + 'product_macbook_link_rewrite' => 'macbook', + 'product_macbook_name' => 'MacBook', + 'product_ipod_touch_description' => '

    Titre 1

    \r\n

    Titre 2

    \r\n

    Titre 3

    \r\n

    Titre 4

    \r\n
    Titre 5
    \r\n
    Titre 6
    \r\n
      \r\n
    • UL
    • \r\n
    • UL
    • \r\n
    • UL
    • \r\n
    • UL
    • \r\n
    \r\n
      \r\n
    1. OL
    2. \r\n
    3. OL
    4. \r\n
    5. OL
    6. \r\n
    7. OL
    8. \r\n
    \r\n

    paragraphe...

    \r\n

    paragraphe...

    \r\n

    paragraphe...

    \r\n\r\n \r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
    th th th
    tdtdtd
    tdtdtd
    \r\n

    Cinq nouvelles applications sous la main

    \r\n

    Consultez vos e-mails au format HTML enrichi, avec photos et pieces jointes au format PDF, Word et Excel. Obtenez des cartes, des itinéraires et des informations sur l\'état de la circulation en temps réel. Rédigez des notes et consultez les cours de la Bourse et les bulletins météo.

    \r\n

    Touchez du doigt votre musique et vos vidéos. Entre autres.

    \r\n

    La technologie multi-touch révolutionnaire intégrée au superbe écran de 3,5 pouces vous permet d\'effectuer des zooms avant et arrière, de faire défiler et de feuilleter des pages à l\'aide de vos seuls doigts.

    \r\n

    Internet dans votre poche

    \r\n

    Avec le navigateur Safari, vous pouvez consulter des sites web dans leur mise en page d\'origine et effectuer un zoom avant et arrière d\'une simple pression sur l\'écran.

    \r\n

    Contenu du coffret

    \r\n
      \r\n
    • iPod touch
    • \r\n
    • Écouteurs
    • \r\n
    • Câble USB 2.0
    • \r\n
    • Adaptateur Dock
    • \r\n
    • Chiffon de nettoyage
    • \r\n
    • Support
    • \r\n
    • Guide de démarrage rapide
    • \r\n
    \r\n

    ', + 'product_ipod_touch_description_short' => '

    Interface multi-touch révolutionnaire
    Écran panoramique couleur de 3,5 pouces
    Wi-Fi (802.11b/g)
    8 mm d\'épaisseur
    Safari, YouTube, iTunes Wi-Fi Music Store, Courrier, Cartes, Bourse, Météo, Notes

    ', + 'product_ipod_touch_link_rewrite' => 'ipod-touch', + 'product_ipod_touch_name' => 'iPod touch', + 'product_ipod_touch_available_now' => 'En stock', + 'product_folio_ipod_description' => '

    Caractéristiques

    \r\n
  • Cuir doux résistant
  • \r\n
  • Accès au bouton Hold
  • \r\n
  • Fermeture magnétique
  • \r\n
  • Accès au Dock Connector
  • \r\n
  • Protège-écran
  • ', + 'product_folio_ipod_description_short' => '

    Cet étui en cuir tendance assure une protection complète contre les éraflures et les petits aléas de la vie quotidienne. Sa conception élégante et compacte vous permet de glisser votre iPod directement dans votre poche ou votre sac à main.

    ', + 'product_folio_ipod_link_rewrite' => 'housse-portefeuille-en-cuir-ipod-nano-noir-chocolat', + 'product_folio_ipod_name' => 'Housse portefeuille en cuir (iPod nano) - Noir/Chocolat', + 'product_earpiece_description' => '

    Basés sur la technologie des moniteurs personnels testée sur la route par des musiciens professionnels et perfectionnée par les ingénieurs Shure, les écouteurs SE210, légers et élégants, fournissent une sortie audio à gamme étendue exempte de tout bruit externe.


    Conception à isolation sonore
    Les embouts à isolation sonore fournis bloquent plus de 90 % du bruit ambiant. Combinés à un design ergonomique séduisant et un câble modulaire, ils minimisent les intrusions du monde extérieur, vous permettant de vous concentrer sur votre musique. Conçus pour les amoureux de la musique qui souhaitent faire évoluer leur appareil audio portable, les écouteurs SE210 vous permettent d\'emmener la performance avec vous.

    Micro-transducteur haute définition
    Développés pour une écoute de qualité supérieure en déplacement, les écouteurs SE210 utilisent un seul transducteur à armature équilibrée pour bénéficier d\'une gamme audio étendue. Le résultat ? Un confort d\'écoute époustouflant qui restitue tous les détails d\'un spectacle live.

    \r\n

    Le kit universel Deluxe comprend les éléments suivants :
    - Embouts à isolation sonore
    Les embouts à isolation sonore inclus ont un double rôle : bloquer les bruits ambiants et garantir un maintien et un confort personnalisés. Comme chaque oreille est différente, le kit universel Deluxe comprend trois tailles (S, M, L) d\'embouts mousse et flexibles. Choisissez la taille et le style d\'embout qui vous conviennent le mieux : une bonne étanchéité est un facteur clé pour optimiser l\'isolation sonore et la réponse des basses, ainsi que pour accroître le confort en écoute prolongée.

    - Câble modulaire
    En se basant sur les commentaires de nombreux utilisateurs, les ingénieurs de Shure ont développé une solution de câble détachable pour permettre un degré de personnalisation sans précédent. Le câble de 1 mètre fourni vous permet d\'adapter votre confort en fonction de l\'activité et de l\'application.

    - Étui de transport
    Outre les embouts à isolation sonore et le câble modulaire, un étui de transport compact et résistant est fourni avec les écouteurs SE210 pour vous permettre de ranger vos écouteurs de manière pratique et sans encombres.

    - Garantie limitée de deux ans
    Chaque solution SE210 achetée est couverte par une garantie pièces et main-d\'?uvre de deux ans.

    Caractéristiques techniques

    \r\n
      \r\n
    • Type de transducteur : micro-transducteur haute définition
    • \r\n
    • Sensibilité (1 mW) : pression acoustique de 114 dB/mW
    • \r\n
    • Impédance (à 1 kHz) : 26 W
    • \r\n
    • Gamme de fréquences : 25 Hz ? 18,5 kHz
    • \r\n
    • Longueur de câble / avec rallonge : 45 cm / 136 cm
    • \r\n
    \r\n

    Contenu du coffret

    \r\n
      \r\n
    • Écouteurs Shure SE210
    • \r\n
    • Kit universel Deluxe (embouts à isolation sonore, câble modulaire, étui de transport)
    • \r\n
    ', + 'product_earpiece_description_short' => '

    Les écouteurs à isolation sonore ergonomiques et légers offrent la reproduction audio la plus fidèle en provenance de sources audio stéréo portables ou de salon.

    ', + 'product_earpiece_link_rewrite' => 'ecouteurs-a-isolation-sonore-shure-se210', + 'product_earpiece_name' => 'Écouteurs à isolation sonore Shure SE210', + 'category_ipods_name' => 'iPods', + 'category_ipods_description' => 'Il est temps, pour le meilleur lecteur de musique, de remonter sur scène pour un rappel. Avec le nouvel iPod, le monde est votre scène.', + 'category_ipods_link_rewrite' => 'musique-ipods', + 'category_accessories_name' => 'Accessoires', + 'category_accessories_description' => 'Tous les accessoires à la mode pour votre iPod', + 'category_accessories_link_rewrite' => 'accessoires-ipod', + 'category_laptops_name' => 'Portables', + 'category_laptops_description' => 'Le tout dernier processeur Intel, un disque dur plus spacieux, de la mémoire à profusion et d\'autres nouveautés. Le tout, dans à peine 2,59 cm qui vous libèrent de toute entrave. Les nouveaux portables Mac réunissent les performances, la puissance et la connectivité d\'un ordinateur de bureau. Sans la partie bureau.', + 'category_laptops_link_rewrite' => 'portables-apple', + 'category_laptops_meta_title' => 'Portables Apple', + 'category_laptops_meta_keywords' => 'portables apple macbook air', + 'category_laptops_meta_description' => 'portables apple puissants et design', + 'scene_ipods1_name' => 'Les iPods Nano', + 'scene_ipods2_name' => 'Les iPods', + 'scene_laptops_name' => 'Les MacBooks', + 'attributegroup_capacity_name' => 'Capacité', + 'attributegroup_capacity_public_name' => 'Capacité', + 'attributegroup_color_name' => 'Couleur', + 'attributegroup_color_public_name' => 'Couleur', + 'attributegroup_processor_name' => 'ICU', + 'attributegroup_processor_public_name' => 'Processeur', + 'attribute_capacity_2gb_name' => '2Go', + 'attribute_capacity_4gb_name' => '4Go', + 'attribute_color_metal_name' => 'Metal', + 'attribute_color_blue_name' => 'Bleu', + 'attribute_color_pink_name' => 'Rose', + 'attribute_color_green_name' => 'Vert', + 'attribute_color_orange_name' => 'Orange', + 'attribute_capacity_64gb_dd_name' => 'Disque dur SSD (solid-state drive) de 64 Go ', + 'attribute_capacity_80gb_dd_name' => 'Disque dur PATA de 80 Go à 4 200 tr/min', + 'attribute_processor_160ghz_name' => 'Intel Core 2 Duo à 1,6 GHz', + 'attribute_processor_180ghz_name' => 'Intel Core 2 Duo à 1,8 GHz', + 'attribute_capacity_80gb_name' => '80 Go : 20 000 chansons', + 'attribute_capacity_160gb_name' => '160 Go : 40 000 chansons', + 'attribute_color_black_name' => 'Noir', + 'attribute_capacity_8gb_name' => '8Go', + 'attribute_capacity_16gb_name' => '16Go', + 'attribute_capacity_32gb_name' => '32Go', + 'attribute_color_purple_name' => 'Violet', + 'attribute_color_yellow_name' => 'Jaune', + 'attribute_color_red_name' => 'Rouge', + 'ordermessage_delay_name' => 'Délai', + 'ordermessage_delay_message' => 'Bonjour,\n\nUn des éléments de votre commande est actuellement en réapprovisionnement, ce qui peut légèrement retarder son envoi.\n\nMerci de votre compréhension.\n\nCordialement,', + 'feature_height_name' => 'Hauteur', + 'feature_width_name' => 'Largeur', + 'feature_depth_name' => 'Profondeur', + 'feature_weight_name' => 'Poids', + 'feature_headphone_name' => 'Prise casque', + 'featurevalue_jack_stereo_value' => 'Jack stéréo', + 'featurevalue_mini_jack_stereo_value' => 'Mini-jack stéréo', + 'featurevalue_2.75in_value' => '69,8 mm', + 'featurevalue_2.06in_value' => '52,3 mm', + 'featurevalue_49.2g_value' => '49,2 g', + 'featurevalue_0.26in_value' => '6,5 mm', + 'featurevalue_1.07in_value' => '27,3 mm', + 'featurevalue_1.62in_value' => '41,2 mm', + 'featurevalue_15.5g_value' => '15,5 g', + 'featurevalue_0.41in_value' => '10,5 mm (clip compris)', + 'featurevalue_4.33in_value' => '110 mm', + 'featurevalue_2.76in_value' => '70 mm', + 'featurevalue_120g_value' => '120g', + 'featurevalue_0.31in_value' => '8 mm', + 'image_macbook_air_4_legend' => 'macbook-air-1', + 'image_macbook_air_5_legend' => 'macbook-air-2', + 'image_macbook_air_6_legend' => 'macbook-air-3', + 'image_macbook_4_legend' => 'macbook-air-4', + 'image_macbook_5_legend' => 'macbook-air-5', + 'image_macbook_6_legend' => 'superdrive-pour-macbook-air-1', + 'image_ipod_touch_7_legend' => 'iPod touch', + 'image_ipod_touch_8_legend' => 'iPod touch', + 'image_ipod_touch_9_legend' => 'iPod touch', + 'image_ipod_touch_10_legend' => 'iPod touch', + 'image_ipod_touch_11_legend' => 'iPod touch', + 'image_ipod_touch_12_legend' => 'iPod touch', + 'image_folio_ipod_2_legend' => 'housse-portefeuille-en-cuir-ipod-nano', + 'image_earpiece_2_legend' => 'Écouteurs à isolation sonore Shure SE210', + 'image_ipod_nano_9_legend' => 'iPod Nano', + 'image_ipod_nano_10_legend' => 'iPod Nano', + 'image_ipod_nano_11_legend' => 'iPod Nano', + 'image_ipod_nano_12_legend' => 'iPod Nano', + 'image_ipod_nano_13_legend' => 'iPod Nano', + 'image_ipod_nano_14_legend' => 'iPod Nano', + 'image_ipod_nano_15_legend' => 'iPod Nano', + 'image_ipod_nano_16_legend' => 'iPod Nano', + 'image_ipod_shuffle_5_legend' => 'iPod shuffle', + 'image_ipod_shuffle_6_legend' => 'iPod shuffle', + 'image_ipod_shuffle_7_legend' => 'iPod shuffle', + 'image_ipod_shuffle_8_legend' => 'iPod shuffle', + 'carrier_custom_delay' => 'Livraison le lendemain !', +); \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/it/data/attribute.xml b/install-new/fixtures/apple/langs/it/data/attribute.xml new file mode 100644 index 000000000..99e257c0e --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/attribute.xml @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/it/data/attribute_group.xml b/install-new/fixtures/apple/langs/it/data/attribute_group.xml new file mode 100644 index 000000000..99984fbb6 --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/attribute_group.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/it/data/attributegroup.xml b/install-new/fixtures/apple/langs/it/data/attributegroup.xml new file mode 100644 index 000000000..90908e630 --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/attributegroup.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/install-new/fixtures/apple/langs/it/data/carrier.xml b/install-new/fixtures/apple/langs/it/data/carrier.xml new file mode 100644 index 000000000..0304df8e2 --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/carrier.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/it/data/category.xml b/install-new/fixtures/apple/langs/it/data/category.xml new file mode 100644 index 000000000..8ee9be136 --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/category.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/it/data/feature.xml b/install-new/fixtures/apple/langs/it/data/feature.xml new file mode 100644 index 000000000..65c44265a --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/feature.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/it/data/feature_value.xml b/install-new/fixtures/apple/langs/it/data/feature_value.xml new file mode 100644 index 000000000..bcd12e1f1 --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/feature_value.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/it/data/featurevalue.xml b/install-new/fixtures/apple/langs/it/data/featurevalue.xml new file mode 100644 index 000000000..fe99e073e --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/featurevalue.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/install-new/fixtures/apple/langs/it/data/image.xml b/install-new/fixtures/apple/langs/it/data/image.xml new file mode 100644 index 000000000..414d8f564 --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/image.xml @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/it/data/manufacturer.xml b/install-new/fixtures/apple/langs/it/data/manufacturer.xml new file mode 100644 index 000000000..621ff2471 --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/manufacturer.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/it/data/order_message.xml b/install-new/fixtures/apple/langs/it/data/order_message.xml new file mode 100644 index 000000000..8cef0bcff --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/order_message.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/it/data/ordermessage.xml b/install-new/fixtures/apple/langs/it/data/ordermessage.xml new file mode 100644 index 000000000..d5e9fbe51 --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/ordermessage.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/install-new/fixtures/apple/langs/it/data/product.xml b/install-new/fixtures/apple/langs/it/data/product.xml new file mode 100644 index 000000000..ba83eac96 --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/product.xml @@ -0,0 +1,135 @@ + + + + Curve mozzafiato.

    +

    Per te che ami le sensazioni forti, ecco nove fantastici colori. Ma non è finito qui. Accarezza il design sinuoso fatto di vetro e alluminio dell'iPod nano, e non lo lascerai più.

    +

    Bello e intelligente.

    +

    La nuova funzione Genius trasforma l'iPod nano nel tuo DJ personale. Sa creare delle playlist andando a cercare nella libreria musicale le canzoni che stanno bene insieme.

    +

    Fatto per muoversi con te.

    +

    L'accelerometro è integrato all'iPod nano. Scuotilo per dare uno shuffle alla tua musica. Ruotalo di lato per vedere il Cover Flow. E divertiti con i giochi adattati alle tue movenze.

    ]]>
    + Nuovo design. Nuove funzioni. Adesso in 8GB e 16GB. iPod nano, forte come non mai.

    ]]>
    + + + + + + + +
    + + Sempre attaccato.

    +

    Metti 500 canzoni in tasca. O nella cintura. O nei pantaloncini. iPod shuffle ti fa avere le canzoni sempre addosso. Adesso in colori più nuovi e brillanti.

    +

    Ricarica il tuo iPod shuffle.

    +

    iTunes è il tuo superstore del divertimento. La tua raccolta musicale super organizzata, il tuo juke-box. E puoi ricaricare il tuo iPod shuffle con un click.

    +

    Musica coloratissima.

    +

    Complementi dai colori intensi in alluminio anodizzato: questo è il design semplice di iPod shuffle. Adesso in blu, verde rosa, rosso, e argento originale.

    ]]>
    + iPod shuffle, il lettore musicale più indossabile del mondo, adesso anche nelle tonalità più vibranti di blu, verde, rosa e rosso.

    ]]>
    + + + + + + + +
    + + MacBook Air è sottile quasi come il tuo indice. Praticamente ogni dettaglio è stato semplificato al massimo. Eppure riesce ad avere uno schermo LED di 13,3 pollici, tastiera completa, e un ampio track-pad multi-touch. Incredibilmente portatile, non soffre dei compromessi tra schermo e tastiera.

    La sottigliezza incredibile di MacBook Air è il risultato di moltissime innovazioni nel campo della riduzione di dimensioni e peso. Un hard drive più sottile, porte I/O strategicamente nascoste, batteria più piatta: tutto è stato ben calibrato pensando sempre alla sottigliezza.

    MacBook Air è stato progettato e realizzato per godere a pieno dell'universo del wireless. In un mondo in cui la norma 802.11n Wi-Fi è ormai rapida e disponibile, le persone vivono connesse - acquistano e noleggiano film online, scaricano programmi, condividono e conservano file nel web.

    ]]>
    + + + + + + + + +
    + +
    I modelli MacBook a 2,4GHz ora includono 2GB di memoria standard — ideale per le tue applicazioni preferite.]]>
    + + + + + + + + +
    + + Cinque nuove applicazioni sotto mano +

    Consulta le tue e-mail in formato rich HTML con foto e allegati PDF, Word, e Excel. Ottieni mappe, indicazioni stradali e sul traffico in tempo reale. Prendi appunti e consulta la Borsa e le previsioni meteo.

    +

    Tocca la musica, i film e altro ancora

    +

    La rivoluzionaria tecnologia Multi-Touch integrata al bellissimo schermo da 3,5 pollici ti permette di zoomare avanti e indietro, sfogliare e far scorrere le pagine con le dita.

    +

    Internet in tasca

    +

    Con il web browser Safari, consulta i siti web nella loro impaginazione originale e usa lo zoom avanti e indietro con la sola pressione delle dita.2 Aggiungi Web Clips al tuo schermo per accedere subito ai siti preferiti.

    +

    Nella confezione

    +
      +
    • iPod touch
    • +
    • Auricolari
    • +
    • Cavo USB 2.0
    • +
    • Adattatore Dock
    • +
    • Panno per la pulizia
    • +
    • Supporto
    • +
    • Guida installazione rapida
    • +
    ]]>
    + +
  • Interfaccia Multi-Touch rivoluzionaria
  • +
  • Schermo widescreen a colori da 3,5 pollici
  • +
  • Wi-Fi (802.11b/g)
  • +
  • 8 mm di spessore
  • +
  • Safari, YouTube, Mail, Borsa, Meteo, Appunti, iTunes Wi-Fi Music Store, Mappe
  • +]]>
    + + + + + + + +
    + + Lorem ipsum

    ]]>
    + Lorem ipsum

    ]]>
    + + + + + + + +
    + + L'ascolto con la tecnologia dei Micro-Auricolari ad Alta Definizione permette l'ascolto ideale del tuo iPod o iPhone. E' quanto ti offre il design leggero, ergonomico ed elegante degli auricolari SE210. Ti garantiscono un rendimento audio ad alto livello di stereo portatili e fissi, per un livello di precisione mai raggiunto prima. Inoltre, la forma flessibile ti peremtte di scegliere la posizione migliore per indossarli.

    Caratteristiche
    +
      +
    • Design di isolamento del suono
    • +
    • Micro-speaker ad alta definizione con driver singolo ad armatura bilanciata
    • +
    • Cavo staccabile e regolabile in modo da poterlo allungare o accorciare in base alle tue attività
    • +
    • Connettore compatibile con porte auricolari sia su iPod che iPhone
    • +
    +Specifiche tecniche
    +
      +
    • Tipo speaker: MicroSpeaker ad alta definizione
    • +
    • Gamma di frequenza: 25Hz-18.5kHz
    • +
    • Impedenza (1kHz): 26 Ohms
    • +
    • Sensibilità (1mW): 114 dB SPL/mW
    • +
    • Lunghezza cavo (con prolunga): 18.0 in./45,0 cm (54.0 in./137,1 cm)
    • +
    +Nella confezione
    +
      +
    • Auricolari Shure SE210
    • +
    • Cavo prolunga (36.0 in./91,4 cm)
    • +
    • Tre paia di imbuti in spugna (small, medium, large)
    • +
    • Tre paia di imbuti morbidi (small, medium, large)
    • +
    • Un paio di imbuti a tripla aletta
    • +
    • Custodia da viaggio
    • +
    +Garanzia
    Due anni limitata
    (Per informazioni, visitare
    www.shure.com/PersonalAudio/CustomerSupport/ProductReturnsAndWarranty/index.htm.)

    Mfr. Parte N.: SE210-A-EFS

    Nota: I prodotti venduti tramite questo sito web e che non hanno il marchio Apple ricevono assistenza esclusivamente dai loro produttori con i termini e le condizioni contenute nella confezione del prodotto. La Garanzia Limitata di Apple non si applica ai prodotti che non appartengono al marchio Apple, anche se imballati o venduti con i prodotti Apple . Contatta direttamente il produttore per supporto tecnico e servizio clienti.]]>
    + Basati sulla tecnologia all'avanguardia, testati da musicisti professionisti, e messi a punto da ingegneri Shure, i leggeri ed eleganti SE210 offrono un suono nitido e privo di rumori di fondo.

    ]]>
    + + + + + + + +
    +
    \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/it/data/profile.xml b/install-new/fixtures/apple/langs/it/data/profile.xml new file mode 100644 index 000000000..19e069803 --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/profile.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/it/data/scene.xml b/install-new/fixtures/apple/langs/it/data/scene.xml new file mode 100644 index 000000000..cb0b6bd42 --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/scene.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/it/data/supplier.xml b/install-new/fixtures/apple/langs/it/data/supplier.xml new file mode 100644 index 000000000..07f36aeb6 --- /dev/null +++ b/install-new/fixtures/apple/langs/it/data/supplier.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/fixtures/apple/langs/it/fixtures.php b/install-new/fixtures/apple/langs/it/fixtures.php new file mode 100644 index 000000000..2fc02743b --- /dev/null +++ b/install-new/fixtures/apple/langs/it/fixtures.php @@ -0,0 +1,121 @@ + '

    Curve mozzafiato.

    \r\n

    Per te che ami le sensazioni forti, ecco nove fantastici colori. Ma non è finito qui. Accarezza il design sinuoso fatto di vetro e alluminio dell\'iPod nano, e non lo lascerai più.

    \r\n

    Bello e intelligente.

    \r\n

    La nuova funzione Genius trasforma l\'iPod nano nel tuo DJ personale. Sa creare delle playlist andando a cercare nella libreria musicale le canzoni che stanno bene insieme.

    \r\n

    Fatto per muoversi con te.

    \r\n

    L\'accelerometro è integrato all\'iPod nano. Scuotilo per dare uno shuffle alla tua musica. Ruotalo di lato per vedere il Cover Flow. E divertiti con i giochi adattati alle tue movenze.

    ', + 'product_ipod_nano_description_short' => '

    Nuovo design. Nuove funzioni. Adesso in 8GB e 16GB. iPod nano, forte come non mai.

    ', + 'product_ipod_nano_link_rewrite' => 'ipod-nano', + 'product_ipod_nano_name' => 'iPod Nano', + 'product_ipod_nano_available_now' => 'In magazzino', + 'product_ipod_shuffle_description' => '

    Sempre attaccato.

    \r\n

    Metti 500 canzoni in tasca. O nella cintura. O nei pantaloncini. iPod shuffle ti fa avere le canzoni sempre addosso. Adesso in colori più nuovi e brillanti.

    \r\n

    Ricarica il tuo iPod shuffle.

    \r\n

    iTunes è il tuo superstore del divertimento. La tua raccolta musicale super organizzata, il tuo juke-box. E puoi ricaricare il tuo iPod shuffle con un click.

    \r\n

    Musica coloratissima.

    \r\n

    Complementi dai colori intensi in alluminio anodizzato: questo è il design semplice di iPod shuffle. Adesso in blu, verde rosa, rosso, e argento originale.

    ', + 'product_ipod_shuffle_description_short' => '

    iPod shuffle, il lettore musicale più indossabile del mondo, adesso anche nelle tonalità più vibranti di blu, verde, rosa e rosso.

    ', + 'product_ipod_shuffle_link_rewrite' => 'ipod-shuffle', + 'product_ipod_shuffle_name' => 'iPod shuffle', + 'product_ipod_shuffle_available_now' => 'In magazzino', + 'product_macbook_air_description' => '

    MacBook Air è sottile quasi come il tuo indice. Praticamente ogni dettaglio è stato semplificato al massimo. Eppure riesce ad avere uno schermo LED di 13,3 pollici, tastiera completa, e un ampio track-pad multi-touch. Incredibilmente portatile, non soffre dei compromessi tra schermo e tastiera.

    La sottigliezza incredibile di MacBook Air è il risultato di moltissime innovazioni nel campo della riduzione di dimensioni e peso. Un hard drive più sottile, porte I/O strategicamente nascoste, batteria più piatta: tutto è stato ben calibrato pensando sempre alla sottigliezza.

    MacBook Air è stato progettato e realizzato per godere a pieno dell\'universo del wireless. In un mondo in cui la norma 802.11n Wi-Fi è ormai rapida e disponibile, le persone vivono connesse - acquistano e noleggiano film online, scaricano programmi, condividono e conservano file nel web.

    ', + 'product_macbook_air_description_short' => 'MacBook Air è ultra-piatto, ultra-portatile, e ultra come nient\'altro al mondo. Ma non si perdono chili e centimetri in una notte. E\' il risultato di una rielaborazione degli standard. Di moltissime innovazioni sul wireless. E di un design rivoluzionario. Con MacBook Air, l\'informatica mobile acquista una nuova dimensione.', + 'product_macbook_air_link_rewrite' => 'macbook-air', + 'product_macbook_air_name' => 'MacBook Air', + 'product_macbook_description' => 'Tutti i MacBook hanno un hard drive più ampio, fino a 250GB, per conservare le tue raccolte multimediali e i dati importanti.

    I modelli MacBook a 2,4GHz ora includono 2GB di memoria standard ? ideale per le tue applicazioni preferite.', + 'product_macbook_description_short' => 'MacBook ti offre il massimo della libertà di movimento grazie alla sua struttura resistente in policarbonato, alle tecnologie integrate wireless, e all\'innovativo MagSafe Power Adapter che si stacca automaticamente se qualcuno accidentalmente inciampa nel cavo.', + 'product_macbook_link_rewrite' => 'macbook', + 'product_macbook_name' => 'MacBook', + 'product_ipod_touch_description' => '

    Cinque nuove applicazioni sotto mano

    \r\n

    Consulta le tue e-mail in formato rich HTML con foto e allegati PDF, Word, e Excel. Ottieni mappe, indicazioni stradali e sul traffico in tempo reale. Prendi appunti e consulta la Borsa e le previsioni meteo.

    \r\n

    Tocca la musica, i film e altro ancora

    \r\n

    La rivoluzionaria tecnologia Multi-Touch integrata al bellissimo schermo da 3,5 pollici ti permette di zoomare avanti e indietro, sfogliare e far scorrere le pagine con le dita.

    \r\n

    Internet in tasca

    \r\n

    Con il web browser Safari, consulta i siti web nella loro impaginazione originale e usa lo zoom avanti e indietro con la sola pressione delle dita.2 Aggiungi Web Clips al tuo schermo per accedere subito ai siti preferiti.

    \r\n

    Nella confezione

    \r\n
      \r\n
    • iPod touch
    • \r\n
    • Auricolari
    • \r\n
    • Cavo USB 2.0
    • \r\n
    • Adattatore Dock
    • \r\n
    • Panno per la pulizia
    • \r\n
    • Supporto
    • \r\n
    • Guida installazione rapida
    • \r\n
    ', + 'product_ipod_touch_description_short' => '
      \r\n
    • Interfaccia Multi-Touch rivoluzionaria
    • \r\n
    • Schermo widescreen a colori da 3,5 pollici
    • \r\n
    • Wi-Fi (802.11b/g)
    • \r\n
    • 8 mm di spessore
    • \r\n
    • Safari, YouTube, Mail, Borsa, Meteo, Appunti, iTunes Wi-Fi Music Store, Mappe
    • \r\n
    ', + 'product_ipod_touch_link_rewrite' => 'ipod-touch', + 'product_ipod_touch_name' => 'iPod touch', + 'product_folio_ipod_description' => '

    Lorem ipsum

    ', + 'product_folio_ipod_description_short' => '

    Lorem ipsum

    ', + 'product_folio_ipod_link_rewrite' => 'custodia-portafoglio-in-pelle-belkin-per-ipod-nano-nero-cioccolato', + 'product_folio_ipod_name' => 'Custodia portafoglio in pelle Belkin per iPod nano - Nero/Cioccolato', + 'product_earpiece_description' => '
    L\'ascolto con la tecnologia dei Micro-Auricolari ad Alta Definizione permette l\'ascolto ideale del tuo iPod o iPhone. E\' quanto ti offre il design leggero, ergonomico ed elegante degli auricolari SE210. Ti garantiscono un rendimento audio ad alto livello di stereo portatili e fissi, per un livello di precisione mai raggiunto prima. Inoltre, la forma flessibile ti peremtte di scegliere la posizione migliore per indossarli.

    Caratteristiche
    \r\n
      \r\n
    • Design di isolamento del suono
    • \r\n
    • Micro-speaker ad alta definizione con driver singolo ad armatura bilanciata
    • \r\n
    • Cavo staccabile e regolabile in modo da poterlo allungare o accorciare in base alle tue attività
    • \r\n
    • Connettore compatibile con porte auricolari sia su iPod che iPhone
    • \r\n
    \r\nSpecifiche tecniche
    \r\n
      \r\n
    • Tipo speaker: MicroSpeaker ad alta definizione
    • \r\n
    • Gamma di frequenza: 25Hz-18.5kHz
    • \r\n
    • Impedenza (1kHz): 26 Ohms
    • \r\n
    • Sensibilità (1mW): 114 dB SPL/mW
    • \r\n
    • Lunghezza cavo (con prolunga): 18.0 in./45,0 cm (54.0 in./137,1 cm)
    • \r\n
    \r\nNella confezione
    \r\n
      \r\n
    • Auricolari Shure SE210
    • \r\n
    • Cavo prolunga (36.0 in./91,4 cm)
    • \r\n
    • Tre paia di imbuti in spugna (small, medium, large)
    • \r\n
    • Tre paia di imbuti morbidi (small, medium, large)
    • \r\n
    • Un paio di imbuti a tripla aletta
    • \r\n
    • Custodia da viaggio
    • \r\n
    \r\nGaranzia
    Due anni limitata
    (Per informazioni, visitare
    www.shure.com/PersonalAudio/CustomerSupport/ProductReturnsAndWarranty/index.htm.)

    Mfr. Parte N.: SE210-A-EFS

    Nota: I prodotti venduti tramite questo sito web e che non hanno il marchio Apple ricevono assistenza esclusivamente dai loro produttori con i termini e le condizioni contenute nella confezione del prodotto. La Garanzia Limitata di Apple non si applica ai prodotti che non appartengono al marchio Apple, anche se imballati o venduti con i prodotti Apple . Contatta direttamente il produttore per supporto tecnico e servizio clienti.
    ', + 'product_earpiece_description_short' => '

    Basati sulla tecnologia all\'avanguardia, testati da musicisti professionisti, e messi a punto da ingegneri Shure, i leggeri ed eleganti SE210 offrono un suono nitido e privo di rumori di fondo.

    ', + 'product_earpiece_link_rewrite' => 'ecouteurs-a-isolation-sonore-shure-se210-blanc', + 'product_earpiece_name' => 'auricolari-sound-isolating-shure-se210-per-ipod-e-iphone', + 'category_ipods_name' => 'iPods', + 'category_ipods_description' => 'Adesso che puoi acquistare film dall\'iTunes Store e inserirli nel tuo iPod, il tuo mondo è un palcoscenico.', + 'category_ipods_link_rewrite' => 'musica-ipods', + 'category_accessories_name' => 'Accessori', + 'category_accessories_description' => 'Fantastici accessori per il tuo iPod', + 'category_accessories_link_rewrite' => 'accessori-ipod', + 'category_laptops_name' => 'Laptop', + 'category_laptops_description' => 'L\'ultimissimo processore Intel, hard drive più ampio, moltissima memoria, e ancora più funzioni tutte inserite in 2,54 centimetri. I nuovi laptop Mac offrono le prestazioni, la potenza e la connettività di un computer da tavolo. Senza bisogno del tavolo.', + 'category_laptops_link_rewrite' => 'laptop', + 'category_laptops_meta_title' => 'laptop Apple', + 'category_laptops_meta_keywords' => 'laptot Apple MacBook Air', + 'category_laptops_meta_description' => 'Laptop Apple potenti ed eleganti', + 'scene_ipods1_name' => 'Gli iPod Nano', + 'scene_ipods2_name' => 'Gli iPod', + 'scene_laptops_name' => 'I MacBook', + 'attributegroup_capacity_name' => 'Spazio disco', + 'attributegroup_capacity_public_name' => 'Spazio disco', + 'attributegroup_color_name' => 'Colore', + 'attributegroup_color_public_name' => 'Colore', + 'attributegroup_processor_name' => 'ICU', + 'attributegroup_processor_public_name' => 'Processore', + 'attribute_capacity_2gb_name' => '2GB', + 'attribute_capacity_4gb_name' => '4GB', + 'attribute_color_metal_name' => 'Metallico', + 'attribute_color_blue_name' => 'Blu', + 'attribute_color_pink_name' => 'Rosa', + 'attribute_color_green_name' => 'Verde', + 'attribute_color_orange_name' => 'Arancio', + 'attribute_capacity_64gb_dd_name' => 'Opzionale solid-state drive 64GB', + 'attribute_capacity_80gb_dd_name' => '80GB Parallel ATA Drive @ 4200 rpm', + 'attribute_processor_160ghz_name' => '1.60GHz Intel Core 2 Duo', + 'attribute_processor_180ghz_name' => '1.80GHz Intel Core 2 Duo', + 'attribute_capacity_80gb_name' => '80GB: 20.000 canzoni', + 'attribute_capacity_160gb_name' => '160GB: 40,000 canzoni', + 'attribute_color_black_name' => 'Nero', + 'attribute_capacity_8gb_name' => '8Go', + 'attribute_capacity_16gb_name' => '16Go', + 'attribute_capacity_32gb_name' => '32Go', + 'attribute_color_purple_name' => 'Viola', + 'attribute_color_yellow_name' => 'Giallo', + 'attribute_color_red_name' => 'Rosso', + 'ordermessage_delay_name' => 'Ritardo', + 'ordermessage_delay_message' => 'Salve,\n\npurtroppo un articolo che hai ordinato non è al momento in magazzino. Questo potrebbe provocare un leggero ritardo nella consegna.\nTi preghiamo di scusarci; ci stiamo organizzando per ovviare a questo inconveniente.\n\nCordialmente,', + 'feature_height_name' => 'Altezza', + 'feature_width_name' => 'Larghezza', + 'feature_depth_name' => 'Profondità', + 'feature_weight_name' => 'Peso', + 'feature_headphone_name' => 'Auricolare', + 'featurevalue_jack_stereo_value' => 'Jack stereo', + 'featurevalue_mini_jack_stereo_value' => 'Mini-jack stéréo', + 'featurevalue_2.75in_value' => '69.8 mm', + 'featurevalue_2.06in_value' => '52.3 mm', + 'featurevalue_49.2g_value' => '49.2 g', + 'featurevalue_0.26in_value' => '6,5 mm', + 'featurevalue_1.07in_value' => '27.3 mm', + 'featurevalue_1.62in_value' => '41.2 mm', + 'featurevalue_15.5g_value' => '15.5 g', + 'featurevalue_0.41in_value' => '10,5 mm)', + 'featurevalue_4.33in_value' => '4.33 in', + 'featurevalue_2.76in_value' => '70 mm', + 'featurevalue_120g_value' => '120g', + 'featurevalue_0.31in_value' => '8 mm', + 'image_macbook_air_13_legend' => 'macbook-air-1', + 'image_macbook_air_14_legend' => 'macbook-air-2', + 'image_macbook_air_15_legend' => 'macbook-air-3', + 'image_macbook_13_legend' => 'macbook-air-4', + 'image_macbook_14_legend' => 'macbook-air-5', + 'image_macbook_15_legend' => 'superdrive-pour-macbook-air-1', + 'image_ipod_touch_25_legend' => 'iPod touch', + 'image_ipod_touch_26_legend' => 'iPod touch', + 'image_ipod_touch_27_legend' => 'iPod touch', + 'image_ipod_touch_28_legend' => 'iPod touch', + 'image_ipod_touch_29_legend' => 'iPod touch', + 'image_ipod_touch_30_legend' => 'iPod touch', + 'image_folio_ipod_5_legend' => 'housse-portefeuille-en-cuir', + 'image_earpiece_5_legend' => 'Shure SE210 Sound-Isolating Earphones for iPod and iPhone', + 'image_ipod_nano_33_legend' => 'iPod Nano', + 'image_ipod_nano_34_legend' => 'iPod Nano', + 'image_ipod_nano_35_legend' => 'iPod Nano', + 'image_ipod_nano_36_legend' => 'iPod Nano', + 'image_ipod_nano_37_legend' => 'iPod Nano', + 'image_ipod_nano_38_legend' => 'iPod Nano', + 'image_ipod_nano_39_legend' => 'iPod Nano', + 'image_ipod_nano_40_legend' => 'iPod Nano', + 'image_ipod_shuffle_17_legend' => 'iPod shuffle', + 'image_ipod_shuffle_18_legend' => 'iPod shuffle', + 'image_ipod_shuffle_19_legend' => 'iPod shuffle', + 'image_ipod_shuffle_20_legend' => 'iPod shuffle', + 'carrier_custom_delay' => 'Consegna il giorno dopo!', +); \ No newline at end of file diff --git a/install-new/index.php b/install-new/index.php new file mode 100644 index 000000000..9ac8d9c95 --- /dev/null +++ b/install-new/index.php @@ -0,0 +1,38 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +require_once 'init.php'; + +try +{ + require_once _PS_INSTALL_PATH_.'classes/controllerHttp.php'; + InstallControllerHttp::execute(); +} +catch (PrestashopInstallerException $e) +{ + $e->displayMessage(); +} \ No newline at end of file diff --git a/install-new/init.php b/install-new/init.php new file mode 100644 index 000000000..53f0382ff --- /dev/null +++ b/install-new/init.php @@ -0,0 +1,52 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +define('_PS_INSTALL_VERSION_', '1.5.0.0'); + +// Generate common constants +define('_PS_INSTALL_PATH_', dirname(__FILE__).'/'); +define('_PS_INSTALL_DATA_PATH_', _PS_INSTALL_PATH_.'data/'); +define('_PS_INSTALL_CONTROLLERS_PATH_', _PS_INSTALL_PATH_.'controllers/'); +define('_PS_INSTALL_MODELS_PATH_', _PS_INSTALL_PATH_.'models/'); +define('_PS_INSTALL_LANGS_PATH_', _PS_INSTALL_PATH_.'langs/'); +define('_PS_INSTALL_FIXTURES_PATH_', _PS_INSTALL_PATH_.'fixtures/'); +define('__PS_BASE_URI__', dirname(substr($_SERVER['REQUEST_URI'], 0, strrpos($_SERVER['REQUEST_URI'], '/'))).'/'); +define('_THEME_NAME_', 'prestashop'); +require_once dirname(_PS_INSTALL_PATH_).'/config/defines.inc.php'; +require_once dirname(_PS_INSTALL_PATH_).'/config/defines_uri.inc.php'; + +// PrestaShop autoload is used to load some helpfull classes like Tools. +// Add classes used by installer bellow. +require_once _PS_ROOT_DIR_.'/config/autoload.php'; +require_once _PS_ROOT_DIR_.'/config/alias.php'; +require_once _PS_INSTALL_PATH_.'classes/exception.php'; +require_once _PS_INSTALL_PATH_.'classes/languages.php'; +require_once _PS_INSTALL_PATH_.'classes/language.php'; +require_once _PS_INSTALL_PATH_.'classes/model.php'; +require_once _PS_INSTALL_PATH_.'classes/session.php'; +require_once _PS_INSTALL_PATH_.'classes/sqlLoader.php'; +require_once _PS_INSTALL_PATH_.'classes/xmlLoader.php'; diff --git a/install-new/langs/de/data/carrier.xml b/install-new/langs/de/data/carrier.xml new file mode 100644 index 000000000..874b3763f --- /dev/null +++ b/install-new/langs/de/data/carrier.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/category.xml b/install-new/langs/de/data/category.xml new file mode 100644 index 000000000..0e14379d6 --- /dev/null +++ b/install-new/langs/de/data/category.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/cms.xml b/install-new/langs/de/data/cms.xml new file mode 100644 index 000000000..5b37800e3 --- /dev/null +++ b/install-new/langs/de/data/cms.xml @@ -0,0 +1,45 @@ + + + + + + + Versand und Rücknahme

    Ihre Versandverpackung

    Pakete werden normalerweise 2 Tage nach Zahlungseingang mit UPS mit Bestellverfolgemöglichkeit und Ablieferung ohne Unterschrift geliefert. Wenn Sie lieber eine UPS-Sendung per Einschreiben erhalten möchten, entstehen zusätzliche Kosten. Bitte kontaktieren Sie uns, bevor Sie dieses Liefermethode wählen. Wir senden Ihnen einen Link für die Bestellverfolgung unabhängig davon, welche Liefermethode Sie wählen.

    Die Versandkosten beinhalten Lade- und Verpackungsgebühren sowie die Portokosten. Die Verladegebühren stehen fest, wobei Transportkosten schwanken, je nach Gesamtgewicht des Pakets. Wir raten Ihnen, mehrere Artikel in einer Bestellung zusammenzufassen. Wir können zwei verschiedene Bestellungen nicht zusammenlegen, und die Versandkosten werden separat für jede Bestellung gerechnet. Ihr Paket wird auf Ihr Risiko versandt, aber zerbrechliche Ware wird besonders sorgsam behandelt.

    Die Versandschachteln sind weit geschnitten und ihre Ware wird gut geschützt verpackt.

    ]]>
    + +
    + + + + + Legal

    Credits

    Konzept und Gestaltung:

    ]]> + + + + + + + Your terms and conditions of use

    Rule 1

    Here is the rule 1 content

    +

    Rule 2

    Here is the rule 2 content

    +

    Rule 3

    Here is the rule 3 content

    ]]>
    + +
    + + + + + About us +

    Our company

    Our company

    +

    Our team

    Our team

    +

    Informations

    Informations

    ]]>
    + +
    + + + + + Secure payment +

    Our secure payment

    With SSL

    +

    Using Visa/Mastercard/Paypal

    About this services

    ]]>
    + +
    + \ No newline at end of file diff --git a/install-new/langs/de/data/cms_category.xml b/install-new/langs/de/data/cms_category.xml new file mode 100644 index 000000000..8900bb4cb --- /dev/null +++ b/install-new/langs/de/data/cms_category.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/configuration.xml b/install-new/langs/de/data/configuration.xml new file mode 100644 index 000000000..c9cdfd5fd --- /dev/null +++ b/install-new/langs/de/data/configuration.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/contact.xml b/install-new/langs/de/data/contact.xml new file mode 100644 index 000000000..12a9fcc54 --- /dev/null +++ b/install-new/langs/de/data/contact.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/country.xml b/install-new/langs/de/data/country.xml new file mode 100644 index 000000000..dd283ed95 --- /dev/null +++ b/install-new/langs/de/data/country.xml @@ -0,0 +1,735 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/gender.xml b/install-new/langs/de/data/gender.xml new file mode 100644 index 000000000..cb01d320f --- /dev/null +++ b/install-new/langs/de/data/gender.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/group.xml b/install-new/langs/de/data/group.xml new file mode 100644 index 000000000..ec8411b7c --- /dev/null +++ b/install-new/langs/de/data/group.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/meta.xml b/install-new/langs/de/data/meta.xml new file mode 100644 index 000000000..25b609ffd --- /dev/null +++ b/install-new/langs/de/data/meta.xml @@ -0,0 +1,153 @@ + + + + <![CDATA[Fehler 404]]> + + + + + + <![CDATA[Verkaufshits]]> + + + + + + <![CDATA[Kontaktieren Sie uns]]> + + + + + + <![CDATA[]]> + + + + + + <![CDATA[Hersteller]]> + + + + + + <![CDATA[Neue Produkte]]> + + + + + + <![CDATA[Kennwort vergessen]]> + + + + + + <![CDATA[Angebote]]> + + + + + + <![CDATA[Sitemap]]> + + + + + + <![CDATA[Zulieferer]]> + + + + + + <![CDATA[Adresse]]> + + + + + + <![CDATA[Adressen]]> + + + + + + <![CDATA[Authentifizierung]]> + + + + + + <![CDATA[Warenkorb]]> + + + + + + <![CDATA[Discount]]> + + + + + + <![CDATA[Bestellungsverlauf]]> + + + + + + <![CDATA[Kennung]]> + + + + + + <![CDATA[Mein Konto]]> + + + + + + <![CDATA[Bestellungsverfolgung]]> + + + + + + <![CDATA[Bestellschein]]> + + + + + + <![CDATA[Bestellung]]> + + + + + + <![CDATA[Suche]]> + + + + + + <![CDATA[Shops]]> + + + + + + <![CDATA[Bestellung]]> + + + + + + <![CDATA[Auftragsverfolgung Gast]]> + + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/order_return_state.xml b/install-new/langs/de/data/order_return_state.xml new file mode 100644 index 000000000..e9d2d2ed9 --- /dev/null +++ b/install-new/langs/de/data/order_return_state.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/order_state.xml b/install-new/langs/de/data/order_state.xml new file mode 100644 index 000000000..6e1e8d491 --- /dev/null +++ b/install-new/langs/de/data/order_state.xml @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/profile.xml b/install-new/langs/de/data/profile.xml new file mode 100644 index 000000000..5f24905b3 --- /dev/null +++ b/install-new/langs/de/data/profile.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/quick_access.xml b/install-new/langs/de/data/quick_access.xml new file mode 100644 index 000000000..e353401be --- /dev/null +++ b/install-new/langs/de/data/quick_access.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/stock_mvt_reason.xml b/install-new/langs/de/data/stock_mvt_reason.xml new file mode 100644 index 000000000..3205fa402 --- /dev/null +++ b/install-new/langs/de/data/stock_mvt_reason.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/supplier_order_state.xml b/install-new/langs/de/data/supplier_order_state.xml new file mode 100644 index 000000000..2aab81395 --- /dev/null +++ b/install-new/langs/de/data/supplier_order_state.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/de/data/tab.xml b/install-new/langs/de/data/tab.xml new file mode 100644 index 000000000..de547bfe7 --- /dev/null +++ b/install-new/langs/de/data/tab.xml @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/de/flag.jpg b/install-new/langs/de/flag.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5abbc8cfa91a2d677274b4740634818a40ec3165 GIT binary patch literal 924 zcmex=Jq?U}9uuW@2Fmx*ZrGjI}^{1{Oh9Aw@$+HsQcTcBMiQqsEB~Ih36?9uy6__(8=u zsi=vQOH5osQc6`#T|-mL#MI2(!qUpw#nsK-!_zA`Bs45MA~GsDB{eNQBQvYGq_nKO zqOz*FrM0cSqqA$$M%n)zEeTL>QL7=~wSXh`@ z*g^hcWGV+@WL##!=?ELHy&R6vPoC%%H-6%qq9A_+|mp+lOk5C zO!9oTWA=OQJ12F|6x}#1yZ`1oiK!PK^=ArNvKIunaj;vyjobO3ft&kC*~f#qatl}t z6?#K%A1PS1fN|2!HMQQy_bKe$zN0Dnso`m9w+GQjIKzTCPQ>(SKit1 literal 0 HcmV?d00001 diff --git a/install-new/langs/de/img/de-default-category.jpg b/install-new/langs/de/img/de-default-category.jpg new file mode 100644 index 0000000000000000000000000000000000000000..27daddad2aaccd3becceea1441c4ca9e01d19b1d GIT binary patch literal 5039 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 KL+(qgxBmehbb%rO literal 0 HcmV?d00001 diff --git a/install-new/langs/de/img/de-default-home.jpg b/install-new/langs/de/img/de-default-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2a3f86bfb8d72c55355e1abcefc3cc260aa71d41 GIT binary patch literal 3528 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 H`uu+bgPCz+ literal 0 HcmV?d00001 diff --git a/install-new/langs/de/img/de-default-large_scene.jpg b/install-new/langs/de/img/de-default-large_scene.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c99cfc7a6740cc99af028d12de976141cd5021e6 GIT binary patch literal 6770 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 YC1-!5?Cfc?)wQy}|AyawNN{uTPg1vHga7~l literal 0 HcmV?d00001 diff --git a/install-new/langs/de/img/de-default-small.jpg b/install-new/langs/de/img/de-default-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..11e9c36886bc33382cc8a795c4f7d4ab4863facc GIT binary patch literal 1220 zcmex=_1P|rX?qqI0P zFI~aY%U!`Mz|~!$%*;qrN1?DZF(6Oj-S5fuR$!pIEN!@|nR z%E~Fi%grl7GWdUhL6Cz%mqC}AQHg;`kdaxC@&6G9d7vj*8Nq-73K*GyZe(NU;N;>4 zD%dK(z{JSR%*4VBay3wOEl{3;MUYiU(a@1iI53f2sZhkIapFP_Wv7h?MT0JWP%%y_ zYU1P)6PJ*bQdLve(9|+9H8Z!cv~qTFb#wRd^a>6M4GWKmj7m;PO-s+n%qlJ^Ei136 ztZHs)ZENr7?3y%r%G7DoXUv?nXz`Mz%a*TLxoXqqEnBy3-?4Mop~FXx9y@;G&P778mFHFAhJOi*hHi=1j?9ZhleV_)E}1i1ED_o0f%I-y=hnAeD{tdU_|+OZD8l z-EpSvkwTNd#>T?l-`n1vUsrK_y$EBnh~TV7eT5kgK^1fSc0ba3@Uy$;X{{Sy#mbHa zJoS<YL{ziZKCa(AdkAx^4_VQ4?b|p_7;4f&ue;O-P#3PuRNRV+f@0q z_vnqj2Yc2E|J-EQdDv*f3?_rJ9WuqS{XJjKMh9L_{C9Mh+4hS*9J-1jDXAGZwpqR9 zf5v!saopVOi5otccl>AA@>D!(-hyjutKx$HE;yLle74M?q2@40pr6Ni9b`Xpwm#+XPSW^zL(Y+g@I3uW7`i zd6I#7%ZKp8Z<8Iae(7A_yXACp{*$ezVs@sK!Xt99*|4jh7%h`?q literal 0 HcmV?d00001 diff --git a/install-new/langs/de/img/de-default-thickbox.jpg b/install-new/langs/de/img/de-default-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c37db26802e3267a1cb4b278991ed9d4dffd9df5 GIT binary patch literal 12500 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 K-Hni^t^Wl!0L!ib literal 0 HcmV?d00001 diff --git a/install-new/langs/de/language.xml b/install-new/langs/de/language.xml new file mode 100644 index 000000000..95dce5b3b --- /dev/null +++ b/install-new/langs/de/language.xml @@ -0,0 +1,8 @@ + + + + de + d.m.Y + d.m.Y H:i:s + false + \ No newline at end of file diff --git a/install-new/langs/en/data/carrier.xml b/install-new/langs/en/data/carrier.xml new file mode 100644 index 000000000..8dc896a3b --- /dev/null +++ b/install-new/langs/en/data/carrier.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/category.xml b/install-new/langs/en/data/category.xml new file mode 100644 index 000000000..175fdd6c5 --- /dev/null +++ b/install-new/langs/en/data/category.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/cms.xml b/install-new/langs/en/data/cms.xml new file mode 100644 index 000000000..5539d9ad3 --- /dev/null +++ b/install-new/langs/en/data/cms.xml @@ -0,0 +1,45 @@ + + + + + + + Shipments and returns

    Your pack shipment

    Packages are generally dispatched within 2 days after receipt of payment and are shipped via UPS with tracking and drop-off without signature. If you prefer delivery by UPS Extra with required signature, an additional cost will be applied, so please contact us before choosing this method. Whichever shipment choice you make, we will provide you with a link to track your package online.

    Shipping fees include handling and packing fees as well as postage costs. Handling fees are fixed, whereas transport fees vary according to total weight of the shipment. We advise you to group your items in one order. We cannot group two distinct orders placed separately, and shipping fees will apply to each of them. Your package will be dispatched at your own risk, but special care is taken to protect fragile objects.

    Boxes are amply sized and your items are well-protected.

    ]]>
    + +
    + + + + + Legal

    Credits

    Concept and production:

    This Web site was created using PrestaShop™ open-source software.

    ]]>
    + +
    + + + + + Your terms and conditions of use

    Rule 1

    Here is the rule 1 content

    +

    Rule 2

    Here is the rule 2 content

    +

    Rule 3

    Here is the rule 3 content

    ]]>
    + +
    + + + + + About us +

    Our company

    Our company

    +

    Our team

    Our team

    +

    Informations

    Informations

    ]]>
    + +
    + + + + + Secure payment +

    Our secure payment

    With SSL

    +

    Using Visa/Mastercard/Paypal

    About this services

    ]]>
    + +
    +
    \ No newline at end of file diff --git a/install-new/langs/en/data/cms_category.xml b/install-new/langs/en/data/cms_category.xml new file mode 100644 index 000000000..1b5fde073 --- /dev/null +++ b/install-new/langs/en/data/cms_category.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/configuration.xml b/install-new/langs/en/data/configuration.xml new file mode 100644 index 000000000..c4cd24478 --- /dev/null +++ b/install-new/langs/en/data/configuration.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/contact.xml b/install-new/langs/en/data/contact.xml new file mode 100644 index 000000000..d56e32aa8 --- /dev/null +++ b/install-new/langs/en/data/contact.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/country.xml b/install-new/langs/en/data/country.xml new file mode 100644 index 000000000..dd283ed95 --- /dev/null +++ b/install-new/langs/en/data/country.xml @@ -0,0 +1,735 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/gender.xml b/install-new/langs/en/data/gender.xml new file mode 100644 index 000000000..487c50fe1 --- /dev/null +++ b/install-new/langs/en/data/gender.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/group.xml b/install-new/langs/en/data/group.xml new file mode 100644 index 000000000..ec8411b7c --- /dev/null +++ b/install-new/langs/en/data/group.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/meta.xml b/install-new/langs/en/data/meta.xml new file mode 100644 index 000000000..d1e0f843e --- /dev/null +++ b/install-new/langs/en/data/meta.xml @@ -0,0 +1,153 @@ + + + + <![CDATA[404 error]]> + + + + + + <![CDATA[Best sales]]> + + + + + + <![CDATA[Contact us]]> + + + + + + <![CDATA[]]> + + + + + + <![CDATA[Manufacturers]]> + + + + + + <![CDATA[New products]]> + + + + + + <![CDATA[Forgot your password]]> + + + + + + <![CDATA[Prices drop]]> + + + + + + <![CDATA[Sitemap]]> + + + + + + <![CDATA[Suppliers]]> + + + + + + <![CDATA[Address]]> + + + + + + <![CDATA[Addresses]]> + + + + + + <![CDATA[Authentication]]> + + + + + + <![CDATA[Cart]]> + + + + + + <![CDATA[Discount]]> + + + + + + <![CDATA[Order history]]> + + + + + + <![CDATA[Identity]]> + + + + + + <![CDATA[My account]]> + + + + + + <![CDATA[Order follow]]> + + + + + + <![CDATA[Order slip]]> + + + + + + <![CDATA[Order]]> + + + + + + <![CDATA[Search]]> + + + + + + <![CDATA[Stores]]> + + + + + + <![CDATA[Order]]> + + + + + + <![CDATA[Guest tracking]]> + + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/order_return_state.xml b/install-new/langs/en/data/order_return_state.xml new file mode 100644 index 000000000..36435976a --- /dev/null +++ b/install-new/langs/en/data/order_return_state.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/order_state.xml b/install-new/langs/en/data/order_state.xml new file mode 100644 index 000000000..d80e83f67 --- /dev/null +++ b/install-new/langs/en/data/order_state.xml @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/profile.xml b/install-new/langs/en/data/profile.xml new file mode 100644 index 000000000..5f24905b3 --- /dev/null +++ b/install-new/langs/en/data/profile.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/quick_access.xml b/install-new/langs/en/data/quick_access.xml new file mode 100644 index 000000000..d992e2919 --- /dev/null +++ b/install-new/langs/en/data/quick_access.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/stock_mvt_reason.xml b/install-new/langs/en/data/stock_mvt_reason.xml new file mode 100644 index 000000000..d7fd8d5f4 --- /dev/null +++ b/install-new/langs/en/data/stock_mvt_reason.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/supplier_order_state.xml b/install-new/langs/en/data/supplier_order_state.xml new file mode 100644 index 000000000..dfc4ce42e --- /dev/null +++ b/install-new/langs/en/data/supplier_order_state.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/en/data/tab.xml b/install-new/langs/en/data/tab.xml new file mode 100644 index 000000000..9208e2667 --- /dev/null +++ b/install-new/langs/en/data/tab.xml @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/en/flag.jpg b/install-new/langs/en/flag.jpg new file mode 100644 index 0000000000000000000000000000000000000000..72b962fa68b3be1b7052090dbbcfcd50f468cea9 GIT binary patch literal 665 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 literal 0 HcmV?d00001 diff --git a/install-new/langs/en/img/en-default-large.jpg b/install-new/langs/en/img/en-default-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..83f20252e1df995424cce5269fac77d43a3a7c83 GIT binary patch literal 5919 zcmbtYbyQW~w%(`cI0ukMQd&BtyO9tHK`8+NNdZCWZlpn^yQI4tq@)fV0)m8qgrvN~ z@5Z}-ym8-n_kDYhvG-VOuDR!0bIotfxo>B0R{^-PyplWs0s#OBbpf{vfD8bIK<;i7 zU@#~Q9UC1T4GkR+3kw4qj)y?N@!!O z6aofepn8e^rTOpOxAOoF1O$NL5IAazD;@tB^`AV;=9rm0+ewi_WnUgnK7RV{+{#`; zx^Zc2UXl68BDtW8{8?<>v$@u(I9;2duLouko^Q-mb()F#!lH_w&^RV6d60Lr@^YdI{;=bo9-VGh z&Y{($M`OuLuZe1mndBqb|B9e{r@KeySeRCzy|s;!E|GV0q!eYtbos*MrJg*x0{O|s z7cr(f{6*H%4bhFn9 zWN6B5AkE`R9ZUP4j~M)z&Ol1B;94)9J;i{_**n zR2kbHH9NC_OO*1uxDwjwK3hFO$B%UNdOWes0@0EA=MCJ!Y$nX9Ce}ytuLS8|vGH57 zB8fhH+bAji)<2c>=P8!|9D}GCT5i-~xw_!;jogcH#M;3S?h=-)cP^%@O@bz75f)6gp#;$ zwizrNwjn7`@#o58x*F=}bhOcLp80hA!JBN{e6!ku0NgK zRgEghO(Qn8rR&%|da1rf%7mG&>gNj-h?$TFGQm|%vrlbyjwKIF5n+3}wUi~D6byK- z`ZIEArKY&4N!r4hZq+tt4$r^NM3k~x_0- zL{Vf$m+z`=DHmM$R-0Y%3yNGg`t+Vg&jrcvj?mi)v|AEPo$RGBFCe-YeGHPc{xtNw zb*qMSsLubFDWgfW$N@HYweKFC${SA-@^}00u_E5vu9kwqb}8tqvV5> z7k@4DsmSY%JhL|y*!-1hHLr4H8Q2gRuUByRWHPMbj7=v=;Xw`+?b zYm~kEyOGqzLAiLosCe8>G+nJnYzNfm{_}Q73%p2YJxWJ|UO8@3mEOJL^-o!)0WlA2 z=gRC;3^GF7dohpuoTlxYZ1S_a3G1G(@mP&Xt&v+9znP5uLU}@JwjoWZFc1afBVJEf zASJGQ!8Ffl9hq(+YbU^oZaSmvx@R^2w2qVM8d;M){HSrEHh5fS`7JZ8$lB{@$jb-N zIpN$y|EoaFksYDnc@YWIz(}&hrKP;bj%ly^@UiJ8&+KWes8*k}Cp-z2XRJMNX)XHN z@Wzlm@56p$2o7tmkgXlV&q0hEKc0c@_1@ZkwjxvB6+*>2f@1mIKuE!<5ygwEUd11; zOS)5wB(%OQ-U4-+b(z;a0`0vXleYjkGd=#~`FH<>x(!dL*p^@J&yRMBdO^Qgbq zb7eqUc_>L;e$ym|oS*jmk#1{wb}%tJ7^ywI>xjwy=5^0@{I27A-7bqsYh@i$J!CNI zXYV_G_a2^POEnjlXInO|yiV~pj_acAx#lS{u(Q_!Y=uXIgHw(JFE9lp@@C34tIdMO zD>^sP1;oK?SSgn8C-L)Ai&;*!8W#O3QU^NLZ!jkszw0lZwuLRdZ{W5a+J@U<#mM*9 zqc30J#>zK#_AT9`EZb?#>bf*XRPJ~FZWW+<^R~g1oGTc|kTa970i6n|%Z6qrRb-lOSY0)ci7l~*Vab^Byuj4m3tsc=t zhAH^HmJhCYk&&<{!20##y$*Hz>c>GHC+n~lUP^Z(lYBqj(fvr;C!wBp=%!l^D25@V zDGMD9TSBk*i^6)lIBQ_xRGB@UllX)Vdm?n>6lP|JLte#o@>Fb=+6^R zVm>FVtCQzlm+W#~+ckoT5q%LsQQ_pmFwb3nOF+T8S`tz%FC(|u7dJ04bw{zRa8&*Q zhN6K%u)ni02m#QdsM7@Q==&k-u(FejM$+f&(b_+96$#ouw0n%p`qo6I^z|4nhQ1f= z+KH<*G@EMd5oFw^i#cb@XFCM8j8E65t_oS`931ZPMT8Ch;yLHaAvKQ`OypA@fk4+d zF;xAIZ?uC3{kc_p<&{GdIkTH=Tbt5n^TBUG^?*1ZhClQwVsaaCOv zWp4rXYsz^kB$-GrwGVEgiiUYLU-^0ds0Y^ALid!_Aw~V;)qJlL%cN@SxI~CgwKtJ1 zS>K=sx&v?HZ|xd=kiz$9`4-nr#nH<39JMLKx46u;(w{r&v10Qr$1TDMrg}En>}jP^ z#8b4f?1m1q&c*hpf1b=x$p$H)7ulZ$o**dmgFF4UgbMhBVn1Ih>P$wsmODAFlcy#%qDjk^`WR&zR|27|bvz!{ZGlA*QWp*W$+<_s@3d`&|5S83~4k z#L%t<;%KaZEXuJS7QM_AzFcO;VTPY_LR@q|{3r~w6O1<`c9Fh^A#!cH`CVvU&I@JR zO)0=fu7a;A(0qJ+(2>rzV3u+(bTE%rO2CB4iKWw*L=`^2iP|?^X;l-rao;QGbJ!wk zsf+6`LUR+g1@ncmWN9iO@#93iKwB^4Nx-jRzSfK$?yQbAHp+R@CJP+*>v0Wk9Ez~; z7Yx;>^KJd2(fQeJ3N`Mj_&$1wQ2%@v`jg~_p7%N)xZ7qjzFkj+Yq;MGlOA7WW}1=; z-aD}S?3Ujc?CAmFKTK>zI{{~Mg-NvC=PYr;>Cz1TriJu?);ux@T&T_T5X^LC7tF#?;CruPZBz4eJe`17n=lWx9fm+OTXPwUAloVsQ?cBAzjVVNW=9P1yY78p zAB_j$-Csi5p^~cd(SB(Gnmj<7X_m3sbAlMc2rVV``ZQx^7+9|c2P9a;t&hoOK}560 z0ut)S9e1b!fzVcZ>`}z=S8)s6IqKFufqSU+oTo#d%N!^^ybLnH73OO5VA}Kfb z&y(9)Fp9TC3+<9pwnubV*99cW9X+T-qr3gs*rtgT7RECva%qjcIiPT55^^tYI_Ha) zhq~!KEAJuspRjvkGc30lEh>U&@_wfy!%LTSqtWj%o=}tavfCwewS+{+LH5~X0e}TD z?mSBB2il+{kowI{s8%dS^BjbFoH%RpSnECH&s{K!cx7#U3Fh&QrF0)+~8a7 zXJe|UlAJx!+T+D4rUCsja^N8w_I=rcbgvMe2XBQHmbbc6rb+;}14Q)p?|w^D54H=E zK8iP%^mL~S_<%*tU=LPwOmrK~Naa^Q&l~0T$eV^&J;ING9j8wwE~RP#yie4*cs-y6Cq%dRRPp?BlQ`2@4xxLyLHmq-wc@K{~<9o3 znBs6AMZND!GV&*=>Cb*MqVOxw)%UUUX18rt&0{&lYWg|nfG8*vFF3QKI=)Nk@gHuA zLUG-e(ycbQ1}uL$(XsE^1N$T>fpy>hN7`h@gx1iDHa^IBcGI9Ye$zU0NVLHE5jT!bBPq;0d6_|#ZA8jOpZ2MGrIP0EyNIh;~S zK$0k^B&l(`x+D)ZAHIRxp4|d=?I0>yOw;**g-Lz+MuUDI-BC7f1*{4kolX9u=0ACC zI`MdV<0~AnH8EM{4AT9~E@^4)YxsTftYWJvu4N?vie}V5y&x435Ku79j8*Zdaf4y^ z{>X(`k72qnvgl#y+;T*+69wD*O9VvBx-Z;*d(Zynte? z|5yU_82oNsO_?}!bdxE#`6B|yvE#!1oJ$swgJeFnIAl7I@Ph8Vk`#yvJCK{y#>$rw zG5`{l9p5^*D{i98%tRI?#>S+jzJF}3h37_&+hjFg7bbWU|y09ZoAf#H7NwobQ#r%z{9^`N%GH>vdJh{8GjI z#r)Ox3RjlJtI#XeRz}-Tl38W(-5xW7=}F@sAO5*~sSZQN;SHL)CAUnqv~(9;dRHl%3{eOA*>DABsYv$a$>z4mkaQoK!B`CBFv+n9GQ z<4&g8q`IWs?mJ`UfftSnvlMB`ZwCFO8fF@w^M8PUY@omD8qsKm7^lM}AigtWJ3efi zNsw<4KU_+@4;y&rSyv!IWmvx}p3XXU^6uiw1V8mpQtgi~n(6F{(Zu*RpwH{;prwJo zi9CH92ZL3U87Lxc64sylY`=W@M57R3EIf==>ZLbuk&)E9XEOpAsr=@G9hb6A}3lI|U2 jgdVPG-^ZXv&m*wzVB4A;b?9H>^6~ePL>&k#w{!mm^I<0a literal 0 HcmV?d00001 diff --git a/install-new/langs/en/img/en-default-large_scene.jpg b/install-new/langs/en/img/en-default-large_scene.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0c8b30dbe1def114bf933c4a6b0d1b58d2d16bb0 GIT binary patch literal 4298 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 Q_e@hrw$tjCa^r*F0bzN*$N&HU literal 0 HcmV?d00001 diff --git a/install-new/langs/en/img/en-default-small.jpg b/install-new/langs/en/img/en-default-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8cb9417b6f37f4d3290d585930de0e41f2a29663 GIT binary patch literal 968 zcmex=Ur0nsOh{Nlm|s9lUR*+2T2@w8P)tEdUPehuMpg!72qP;iD?1xIFFQN0jF5nk z49VdCAqGJX23-bSW=16jCP7AKLB{__7^H!YWMX1wKmyFHj7%(S>_ABokT+1l|62?^ z%s?#y%mP3ket$O8ELlN@>vdI8u0lum_6zY13?PlN0t`Sik&R_!Vqj(wQVCL&-jJ%BO%hvomv0nC6{;_YHlef>c)Z4VPUNLCy9;eLA$B|RlP2K()<^vt9BmfLW zMqs*tdyG*~k-^Y0P$98#qCw%pi?DFASA6v(nPYm7k-#ON0FG61cZIq+@}4@Ci_|0? z43+R}ym9=y!V|VV6Rx*fc!V$)2>YIV9AhOVzSDDSy3J;b$ygaxm|FOX|%}Kj*_Dl>w9v1U~y)82a0M#uKQZP!}K+>R<)(0>G#S zr7w62V-#diG;~x5Y&1wLgnLoolaGp<=@s$me)}W0bzSz-m@jCT65lBoko-}8AA?Y$ z@ydBThk0gC5S3^wHOXT*9K9xV%{hy55#NvO_6bd<89eeyJqKUct~Us=*k$S}p&)ba z&gHg7hDI;7u9K0xXPOw4Zq@{3UA$2yQK7++xc%Rpy>GT_x%^;R%J6Q2-Z-wP%lu|9=wzV%Y&7 literal 0 HcmV?d00001 diff --git a/install-new/langs/en/img/en-default-thickbox.jpg b/install-new/langs/en/img/en-default-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6bd5603f7ef665c7008db59c466a49fecbf5f517 GIT binary patch literal 8219 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 T@Uq{`&V9IOyE+`^FDL&8dq?EY literal 0 HcmV?d00001 diff --git a/install-new/langs/en/img/en-default-thumb_scene.jpg b/install-new/langs/en/img/en-default-thumb_scene.jpg new file mode 100644 index 0000000000000000000000000000000000000000..47d2def484969677bee63af5fb29986e82a47a2b GIT binary patch literal 1119 zcmex=O8CaQFSXh`@fdnfnD;qlx2Rjh(b8~a@2=WUF3GxdH3X92z3yVmJ3JOXnN=V7d z%FD|Oiz}%p$*IW5$;*KZVFYSrXJhB%;NX)J5fqUl8T>!MAjrXB#juc>QHg;`kdaxC z@&6G98KD0en3$L$UImkE%4FvQZ;Yr3la%GyoD6#1y^7zymalNsw8P!Jgr_o|1x+5)*#HICI4_k7C=s zWU{Xs#HWWhTSkhiR1mI z`Uh#tR~o#1GFc$`Y1f*QHBq0s_+8&Q+&#hfdz-aHP6KBU^wa&Zy z)$wI>s%)R$+g2+S?IN)J{1*QG&r*)R+!IwPa#FG~*R?V%^=ikNeN)Tr%ZvN-3qQRp ziD-!U@#DImci+PmPxntbd;VATw1cxk--b%9+O}p}$NdbkO8ZF)C6BGPb5BUv@}S5o zu3K+Kq(^Z6vV%FH-|LsAF}!#9+bNf3_S()OaqsE&Ip40Qu1vGyI=y^Z zrv~SKi?|<|TiU+s>PmrSD^sqm{_*Di?t?#BG&EoHX`T6H@LS()>#H@J%d&RsIK1ew z-o8n)rXf6q_mrmn(J!}?Q?H+hKM{3vnr{9q?Ntk7zw2hT9=ot9e@jIe^MSwbnlNLG z{Ydxgo^?_CvZeN!%TMBIm%Vn&_iS);*_xmgOZg_`OjkZA_4!#8N8|c;`&X>8{PEMI zXnNqW`L1%?Hu44R`l_9f!aDoX3WlSOcF}QlHatsT$()@iZ6+I7=rWk1tByy~CnoV2S6DLZrW!?zen1uQgQpYXf(+3^m+TBbWsXC6Bj xt*#UM<&DwDx62;P+g|Xg=YazA9g}t!fx6q%+SJ(}u^S393JM4kAejH(1OT{xko5on literal 0 HcmV?d00001 diff --git a/install-new/langs/en/img/en.jpg b/install-new/langs/en/img/en.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7d07b871d2d2968a7d8e6a169fe808e4fe1f86e8 GIT binary patch literal 10859 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 literal 0 HcmV?d00001 diff --git a/install-new/langs/en/install.php b/install-new/langs/en/install.php new file mode 100644 index 000000000..788314d35 --- /dev/null +++ b/install-new/langs/en/install.php @@ -0,0 +1,23 @@ + array( + 'phone' => '+1 (888) 947-6543', + 'documentation' => 'http://doc.prestashop.com/display/PS14/English+documentation', + 'forum' => 'http://www.prestashop.com/forums/', + 'blog' => 'http://www.prestashop.com/blog/', + 'support' => 'http://www.prestashop.com/', + ), + 'translations' => array( + 'menu_welcome' => 'Welcome!', + 'menu_system' => 'System Compatibility', + 'menu_database' => 'System Configuration', + 'menu_configure' => 'Shop Configuration', + 'menu_process' => 'Installation process', + 'process_step_installDatabase' => 'Create database tables', + 'process_step_populateDatabase' => 'Populate database tables', + 'process_step_configureShop' => 'Configure shop informations', + 'process_step_installModules' => 'Install default modules', + 'process_step_installFixtures' => 'Install demonstration data', + 'process_step_preactivation' => 'Preactivate modules', + ), +); \ No newline at end of file diff --git a/install-new/langs/en/language.xml b/install-new/langs/en/language.xml new file mode 100644 index 000000000..611650cef --- /dev/null +++ b/install-new/langs/en/language.xml @@ -0,0 +1,8 @@ + + + + en-us + m/j/Y + m/j/Y H:i:s + false + \ No newline at end of file diff --git a/install-new/langs/es/data/carrier.xml b/install-new/langs/es/data/carrier.xml new file mode 100644 index 000000000..1626a66f1 --- /dev/null +++ b/install-new/langs/es/data/carrier.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/category.xml b/install-new/langs/es/data/category.xml new file mode 100644 index 000000000..bbaf19116 --- /dev/null +++ b/install-new/langs/es/data/category.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/cms.xml b/install-new/langs/es/data/cms.xml new file mode 100644 index 000000000..546e1c1d7 --- /dev/null +++ b/install-new/langs/es/data/cms.xml @@ -0,0 +1,53 @@ + + + + + + + shipping & Returns +

    El transporte de su paquete

    +

    Los paquetes son generalmente enviados en 48 horas después de la recepción de su pago. La moda es el estándar expédition Colissimo seguido, entrega sin firma. Si desea una entrega con la firma, un cargo adicional, gracias al contacto con nosotros. Sea cual sea el método de envío seleccionado, vamos a presentar lo antes posible, un vínculo que le permite rastrear el envío en línea de su paquete.

    Gastos de envío incluyen el embalaje, la manipulación y envío. Pueden contener un fijo y una parte variable basado en el precio o el peso de su solicitud. Le recomendamos que para consolidar sus compras en un solo comando. No podemos grupo de dos órdenes distintos y hay que pagar gastos de envío para cada uno. Su paquete es enviado a su propio riesgo, se presta especial atención a las parcelas que contienen objetos frágiles ..

    Los paquetes son de gran tamaño y protegidas.

    ]]>
    + +
    + + + + + Pie de imprenta +

    Créditos

    +

    +


    Concepto y producción:

    Este sitio web fue creado utilizando la solución de código abierto PrestaShop™.

    ]]>
    + +
    + + + + + Sus condiciones de venta +

    Regla N º 1

    +

    Contenido de la Regla Número 1

    +

    Regla N º 2

    +

    Contenido de la Regla N º 2

    +

    Regla N º 3

    +

    Contenido de la Regla Número 3

    ]]>
    + +
    + + + + + Sobre]]> + + + + + + + Pago seguro +

    Ofrecemos pago seguro

    +

    SSL

    +

    Utilice Visa / Mastercard / Paypal

    +

    Acerca de estos servicios

    ]]>
    + +
    +
    \ No newline at end of file diff --git a/install-new/langs/es/data/cms_category.xml b/install-new/langs/es/data/cms_category.xml new file mode 100644 index 000000000..0e89969f2 --- /dev/null +++ b/install-new/langs/es/data/cms_category.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/configuration.xml b/install-new/langs/es/data/configuration.xml new file mode 100644 index 000000000..5d3d59cbc --- /dev/null +++ b/install-new/langs/es/data/configuration.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/contact.xml b/install-new/langs/es/data/contact.xml new file mode 100644 index 000000000..20b913c52 --- /dev/null +++ b/install-new/langs/es/data/contact.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/country.xml b/install-new/langs/es/data/country.xml new file mode 100644 index 000000000..c2d1791cf --- /dev/null +++ b/install-new/langs/es/data/country.xml @@ -0,0 +1,735 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/gender.xml b/install-new/langs/es/data/gender.xml new file mode 100644 index 000000000..387147a42 --- /dev/null +++ b/install-new/langs/es/data/gender.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/group.xml b/install-new/langs/es/data/group.xml new file mode 100644 index 000000000..44605400c --- /dev/null +++ b/install-new/langs/es/data/group.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/meta.xml b/install-new/langs/es/data/meta.xml new file mode 100644 index 000000000..b874ebe4f --- /dev/null +++ b/install-new/langs/es/data/meta.xml @@ -0,0 +1,153 @@ + + + + <![CDATA[Error 404]]> + + + + + + <![CDATA[Los más vendidos]]> + + + + + + <![CDATA[Contáctenos]]> + + + + + + <![CDATA[]]> + + + + + + <![CDATA[Fabricantes]]> + + + + + + <![CDATA[Nuevos Productos]]> + + + + + + <![CDATA[Olvidaste tu contraseña]]> + + + + + + <![CDATA[Promociones]]> + + + + + + <![CDATA[Mapa del sitio]]> + + + + + + <![CDATA[Proveedores]]> + + + + + + <![CDATA[Dirección]]> + + + + + + <![CDATA[Direcciones]]> + + + + + + <![CDATA[Autenticación]]> + + + + + + <![CDATA[Carro de la compra]]> + + + + + + <![CDATA[Descuento]]> + + + + + + <![CDATA[Historial de pedidos]]> + + + + + + <![CDATA[Identidad]]> + + + + + + <![CDATA[Mi Cuenta]]> + + + + + + <![CDATA[Devolución de productos]]> + + + + + + <![CDATA[Vales]]> + + + + + + <![CDATA[Carrito]]> + + + + + + <![CDATA[Buscar]]> + + + + + + <![CDATA[Tiendas]]> + + + + + + <![CDATA[Carrito]]> + + + + + + <![CDATA[Estado del pedido]]> + + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/order_return_state.xml b/install-new/langs/es/data/order_return_state.xml new file mode 100644 index 000000000..029cd50f9 --- /dev/null +++ b/install-new/langs/es/data/order_return_state.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/order_state.xml b/install-new/langs/es/data/order_state.xml new file mode 100644 index 000000000..483581b89 --- /dev/null +++ b/install-new/langs/es/data/order_state.xml @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/profile.xml b/install-new/langs/es/data/profile.xml new file mode 100644 index 000000000..5f24905b3 --- /dev/null +++ b/install-new/langs/es/data/profile.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/quick_access.xml b/install-new/langs/es/data/quick_access.xml new file mode 100644 index 000000000..1c0c6f82a --- /dev/null +++ b/install-new/langs/es/data/quick_access.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/stock_mvt_reason.xml b/install-new/langs/es/data/stock_mvt_reason.xml new file mode 100644 index 000000000..95bc378f4 --- /dev/null +++ b/install-new/langs/es/data/stock_mvt_reason.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/supplier_order_state.xml b/install-new/langs/es/data/supplier_order_state.xml new file mode 100644 index 000000000..2aab81395 --- /dev/null +++ b/install-new/langs/es/data/supplier_order_state.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/es/data/tab.xml b/install-new/langs/es/data/tab.xml new file mode 100644 index 000000000..bf02564b4 --- /dev/null +++ b/install-new/langs/es/data/tab.xml @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/es/flag.jpg b/install-new/langs/es/flag.jpg new file mode 100644 index 0000000000000000000000000000000000000000..adb6dc5d93202a1178d81d4e32c324f871e1c47f GIT binary patch literal 696 zcmex=``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vToxW?^Fx5&^2`0Gh(c%9NMJdG^K+j@tLHLN@FKX%Pg9 zqS(sFz{2XX@F7?WGb5utqapv%J+FXDr3D#)A&0D%k%`%mfkkm4SS=Gs?c})fP)Oy-4T=IlE18+t5$<7RVh}W9R%8(pcAT{7BGgrE_Dm1I?8@>usazj5E$wc{pG7uD zn{G_qRWTK4hKv9M6EnzHaKI?YplF!bco1SM&<1-&nLu?FyMFBxR^~_95$;=okPzF;QSTlrKDP%e2Zj#ZW)MS> zfl<(~5bj}toJE3J8vB7tB?N#bqr?=*WJ9PQ8SMq)ZpJL0x_Wm&AlDINuF}0G-op2s WBYiF~X!|htmY#G{DLGdD|0V#DpM^>Q literal 0 HcmV?d00001 diff --git a/install-new/langs/es/img/es-default-category.jpg b/install-new/langs/es/img/es-default-category.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4bf610f5562e2526ab9e50883c89d1ca57ea3180 GIT binary patch literal 4121 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 literal 0 HcmV?d00001 diff --git a/install-new/langs/es/img/es-default-large_scene.jpg b/install-new/langs/es/img/es-default-large_scene.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0c8b30dbe1def114bf933c4a6b0d1b58d2d16bb0 GIT binary patch literal 4298 zcmcgu2{e>#-@j)w7|V=(XJpAznu%mzvSyhf`GjOC`&y(F;UU?_nk8gO2-&hlktJlE zu@y$h7$wOPh4JZmpZC1yJayjheCK@c_q*-t~k{$0QSbufAG9zdSeGt>h> zAP``1IDmsG;0yqRK%r0w?C=GH!RX*j^zcKlA`lErC{{K$6e|kF&LzOj&cVltLh+z^ z_yh%og@xI%~I!uMr!CC0(S%f%H976wV9J~Th^gs_-76K9lz$g#| z1v=;i_tK ze-LTeBk4Ej?1t_eW)FNJ;yzv8%?k?Np`=rsGk(oKwA{g%)Qufg#raUUzRGNqs&4%z z3a*HgQkv~;bKjlc&w8t36=|nIHh9}TftC7j)KD$&CHt%opmIa^#;>WoeDfL~8*$f0 zqj3mye2#_q?I)dTTvdAqK-r{e;79t3_~BoZ{?iutArWMd02p$}6c`-#*K!aj2n?eG zI5;s1coe&+81@ta$tHrfKja7fA!|S|@SfQ0l`yKM)FZz+8N;z1)%hd^$4xsf|oY8_`F1ZeY6qCe^u3;@X<(sa0aq^|~C##N)K= zKoh$!L2fZ~Ji?`pH!HhjQ@(STp8CADURkYv%r0*?C1poHitopFxrwTkVwT=VeqZk_ z`+JUE09VxJ_sm}z{NhtSP3yj7K4=izJna5z=X->~kIc1M^B27`xerNj<05SjPceN_ zRVQMY&4c zT_@vehk7^iKC4@aZ>Ef4Ky&YT1FmfNn6-FBON#eM@@AuIR80GI+ZqpSM=I*wgk?-t zxm?1sO;yOJ;3(;HD#iD8TTlX)R*||7iJ#XKkL62q(2Zv&J^0S}y0kt>wsD&1*m7rk zJ61!o$M*ZcKKGpA@bO1U3pBIt7ghV?w5Ue)cKPz~7lvIe&r@%y4T-JilxDP>2jt^R zwzgVv7d=kJe0Ck?iN(SL)1FJcFLw{9tQD*%ptig?x+>ex+0V~#P5;O+L}YY0hkM*M zu+r3blfc?^&2UhgEeBlj?xf|ZWQf5~#sLuV^rt4E{;mn3fBtg_2&4gWIspDn2>4$i zDo6kX0YkxbbZ~}$FzQfKAW#$=I~s%4f+0n<@n#$+&Hb*nJ6sDRBvro>QLuLkPtLCy z`HNt58sObzyVrL!toI~!=qJmv0#RYvZo8Of$uJYLkOmQ->w*g=l`L)%XlJYSbqzli zEq$nND9XLOULW0`VQn>#GiJhm86DxysZ!u4*s4j1KT}qd^V|_Jl5s|WtYl%5{&0vX zD(jh)hn?vXK~IZ_!!mn$p#~Nls@2_{_3`%MN4y6Yb&ZzS9a19uPMvH}*%jFvcUb0y zl5JBK^2R$oL-N=wxA#Vak06J$4a#z7&P2ZAX=0^$$w09*X`4Q^e>XU}XPs%-p(t-3Ffh(!WkPANwzNO>}^|RIb z7T@)SCgmC^tMCeZLX_BWs$YJ}m#gJs!eJWc<87Ft=mI-UP^|idkb1#NMBYu#;}zW* zY-f-zh#z6EJSqz76MRp=sGh9DZFhuLqQq z%T$}DXt&KshOfplar!(CQ~YVp_MpAC?Gnl=F5gURI>PblWv{q5GCS5BO?AUHs>9URNz2s}{zE0-C50)Rpf64%Cl`d1y_)8l<8%ep znU1iODffl3`^E}Lb_uedZeXaJ52eW4@G48+w@{32r94Hp#3?db$D}98MrGZt&&*6n zy#83H&-m_Coo(O`4zr%=JV`SGL3&6EOg7}6(#LvY3GTl zp-WA2hlf-ed3fSLU??5A}Xs%d)U_sy_{z~H*P^Q+K#qZ6xw-Zk_~%v>0ajjf!?BUI)eo=k(8|0 zfzsRU&W#-Hnk$FJb#C9xo26t)iuvp(CH4uFCy*tcf60pyG;OsLdM&j3RjqDU&}DKN zGQkj~^$!E|)J%Jpi=C5Nw%&v)r}>m7O;3CWY0TzW)|D8>QgStQZvd;lY<}AzrZJq48$h)6T-;y>aNdQ;_dLqJyd&N zyAmfGwdzzZ1p4oh=$2-cX~lJr^Rng@@3+=ERswRn_(1#+t#OEyC;3FhQmy6*gy${f znnmT4%1ajLVOE`TTt;2VRh{V=T%NoicyYIw#DX9B^rH*q{~_>3DBI1fmXP%fTO6m! zGdLG|^d@(bu%-X#KwQ^U_qd1-y1MJ@F@i-CvEb#yN(HKp76WsC^S}n6vl94|~R6mrCF#6OkK3s{hZ=L!3ORUw$L;H|vsMvRA`o zM{vJ!Z49a|=m`8;>UzTIk+UL6Z+?@q_C|K?clKW=`MxEBjfQ^V44&y0Hy72=5C*3dk&Uif=Zcb=JFhmlKAl*8=$ny`9T{<{> zD69!?droR6Q}_LTi?sYWn#Ul1b3WfB)(vw~!YqiZTugx4)xBo?Nq3}bxD82baHqjP zUMYIb;l{Jipv{Ms{IK6@jD_8+k$b<&%zhqJrX4BO>gvQ12{(qpbOTC`wz*Sa>eQ#VXvmTwJdXR**5 zPiAKpsE)m2c(EfW!{y0AfZeo zZ}IXl?Ub0aIbC1zyv-ghJ0OqZQz$+!)|ti=_O6H-DA2lO1Z^UaqjiJDk{#jhCsTy< z9%jpnUl~yUgU-b39A@gt5iEC%>UF$Vz_|%QDvL;Ij$ZeophS}=R~7`}I5p4Dc14f$=4q2bDzht>6uPE?XD!>!w<=9369 z;Vb&zhU2+zRo^K{*L@lw!@lhFjUxe&Vlq?g$NSq@c0XIB<)v~JrGc@lhVxk~7y><*qVnLwCKRU@fU|Ftxka=wQL0EdTQ z0-&mBYB5oYDfS!@0|61>(VqSzXN%kI5(ZkbGwSqvWxL;Vyn@2YPZljIq2{*QgwQiB zbmvF%Dz5O? zo&L0Sjq5|yIFTxpzTwlpI$36n*Eq5IOw=VLGsn}%EV-+xLpn42kY$9|=HCp+!(WFi zvW!#cl2fta2iB(U_ABdZx9%KvTou9Eo1GO&(4bq-q8+?{B#Rdc9vF+$!bkgeRY%27 zBW^3%*!6x+!iRf-)-jCL+|2 zub~aC_2igTQ9GnHz+c`S^A4`oxlC>90Gf3Tx%|cUi^_-eOBxfxWBf}rc0`1PKsFYn zsE@UE|MZ9$S3d{e>hLqn7o5pxUYa*WZ{tvN|Gb52N8$==s!}Q0L-2Nii5t1%iXt{JtIrhTod8$gQS*k|4`M%d@P7{$jSW@ctgledg_YFO-HfH#7Y;!PZTdi z21a&n0c%jEe>6WcZ$d!G)#%GeQ2t5Pz-lM6SeliZ{-K8vsiV!OEw75xk@FcI_4WI7 z`zD#&n8abX&b8e24}X#ja`3optfLu z12#Dx^j*58_*%utc^>2-yB)ooRXI0N68psd>*ln+(x&-`?s(q@Q;tMg#~*ak(={YL z9yB@UE_AQDNfW!jWiPWyT*K5qxl(Y&*7H0>{&-wxnxrOvTg&yM9Tz-_-dh>0veM(> zH*2mB_S6~lY!2u3OS@Ou7eI&XA2dF{pT9cj34zgfG=978&@9V&a)D8v&l1|4m)|zH z`AX)Rd(D?kWuMWDsO_$|-#V+1O=AmvlFV+keHhW07$QJP94de0EN@`Q571yWtKoWQ zbWSxVWNYJWYzA2z4;j6}B6A zU!5*$vSqa=CnBb#rm{=RqNNQ^2r^<`SU$Uvux_<%Ufv6;cPG0%%Dw%fHAjkL3wcTDLWGk`J9rhide>-n zBQ@+$H?y;ybDhQxN3K1$oBPy&)feQ(^xx-a%9B-cjEUl~7Tf!2h7$S)!_?vdsg7B> zbP5x{qTy<>zek*kj@yq!dpXq%{bTTDyH(Z$@e&7 z{3kr@;LYD!hp0c1umo*;_6%QW^}3iDoVaP1T}TlUXt1(3!^a(*)~?SJ52U7865Z`B MY0Qmd$%<$H0_qf|3jhEB literal 0 HcmV?d00001 diff --git a/install-new/langs/es/img/es-default-small.jpg b/install-new/langs/es/img/es-default-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b3118b097d6e8cc4d6576824d79d203337d28f71 GIT binary patch literal 1014 zcmex=``2_j6xdp@o1cgOJMMZh|#U;coyG6VInuyV4pa*FVB^NNrR z{vToxlccbI#jOlU5{m6Wz48JKj4VJuBaCHcWMW|zQ4kao zRx$t@!vQp$k(KFYT*upVr!zqpKA9{tl;>M6(zo;*!ym;BiE-*&hcpC=cMGXJ=lu9) z-+hpK1X0`xG#X+M(Eav|@^}<5!4&8UFfaj~!OY4Da~C6%AcGLIqLQJ4W1_He;KYT> z21Y@JlP+F*2z4WyJ<}s@tG>gX#teE7KA)-6oXor7g4v^!Kldj-_3PzQ_#I?@*5Ubl zFZUhd>=jQ_Tw|<_bt0!;bAERF@4cyQ(_^z53!i%#th*oJ#MohHo3u2A<#0|*h5S># zPq(+6*6H1+AG?~z^hdk1S+?<%<5Rs1gX&to%=!Br=o>`=U_gTaJP;WL6&Va26BPmr z4;oDT01HHW#ZU1};Wwo}y)+W$RQ`F++fzu8S?UGL zP2Bsk`j1oZyC3!Du()Rcxkq3jht8sN28Z#4Iw)EM2t^B6fr0=qF@QV@PjHNa42p)0 zj)ek&6B8BS9u@e{;A$68mh2z$_xzbZr;kh4rhe_NW@&P*QZhIruN-u96{8u0psK~+ zRfcS_&J4>qTrMA9xyo5rU25s+OOFB>c$H=gsx3FlQ{}3UtUmNXJkKQ~WAfhic>=aa zKVMa?VEbaACBpr;t4sU+``Fh#sc@^hA N@A-A^bA9Fin*g)37PtTa literal 0 HcmV?d00001 diff --git a/install-new/langs/es/img/es-default-thickbox.jpg b/install-new/langs/es/img/es-default-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3db0c85b31976681d993e19baba88af2e33e7bd6 GIT binary patch literal 8105 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 literal 0 HcmV?d00001 diff --git a/install-new/langs/es/img/es-default-thumb_scene.jpg b/install-new/langs/es/img/es-default-thumb_scene.jpg new file mode 100644 index 0000000000000000000000000000000000000000..47d2def484969677bee63af5fb29986e82a47a2b GIT binary patch literal 1119 zcmex=O8CaQFSXh`@fdnfnD;qlx2Rjh(b8~a@2=WUF3GxdH3X92z3yVmJ3JOXnN=V7d z%FD|Oiz}%p$*IW5$;*KZVFYSrXJhB%;NX)J5fqUl8T>!MAjrXB#juc>QHg;`kdaxC z@&6G98KD0en3$L$UImkE%4FvQZ;Yr3la%GyoD6#1y^7zymalNsw8P!Jgr_o|1x+5)*#HICI4_k7C=s zWU{Xs#HWWhTSkhiR1mI z`Uh#tR~o#1GFc$`Y1f*QHBq0s_+8&Q+&#hfdz-aHP6KBU^wa&Zy z)$wI>s%)R$+g2+S?IN)J{1*QG&r*)R+!IwPa#FG~*R?V%^=ikNeN)Tr%ZvN-3qQRp ziD-!U@#DImci+PmPxntbd;VATw1cxk--b%9+O}p}$NdbkO8ZF)C6BGPb5BUv@}S5o zu3K+Kq(^Z6vV%FH-|LsAF}!#9+bNf3_S()OaqsE&Ip40Qu1vGyI=y^Z zrv~SKi?|<|TiU+s>PmrSD^sqm{_*Di?t?#BG&EoHX`T6H@LS()>#H@J%d&RsIK1ew z-o8n)rXf6q_mrmn(J!}?Q?H+hKM{3vnr{9q?Ntk7zw2hT9=ot9e@jIe^MSwbnlNLG z{Ydxgo^?_CvZeN!%TMBIm%Vn&_iS);*_xmgOZg_`OjkZA_4!#8N8|c;`&X>8{PEMI zXnNqW`L1%?Hu44R`l_9f!aDoX3WlSOcF}QlHatsT$()@iZ6+I7=rWk1tByy~CnoV2S6DLZrW!?zen1uQgQpYXf(+3^m+TBbWsXC6Bj xt*#UM<&DwDx62;P+g|Xg=YazA9g}t!fx6q%+SJ(}u^S393JM4kAejH(1OT{xko5on literal 0 HcmV?d00001 diff --git a/install-new/langs/es/img/es.jpg b/install-new/langs/es/img/es.jpg new file mode 100644 index 0000000000000000000000000000000000000000..28d7b8c81516e80cfc3027882a806825d27fc2f0 GIT binary patch literal 6828 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 Ax&QzG literal 0 HcmV?d00001 diff --git a/install-new/langs/es/language.xml b/install-new/langs/es/language.xml new file mode 100644 index 000000000..184b6905d --- /dev/null +++ b/install-new/langs/es/language.xml @@ -0,0 +1,8 @@ + + + + es + d/m/Y + d/m/Y H:i:s + false + \ No newline at end of file diff --git a/install-new/langs/fr/README.txt b/install-new/langs/fr/README.txt new file mode 100644 index 000000000..9cca756de --- /dev/null +++ b/install-new/langs/fr/README.txt @@ -0,0 +1,67 @@ +2007-2011 PrestaShop + +NOTICE OF LICENSE + +This source file is subject to the Open Software License (OSL 3.0) +that is bundled with this package in the file LICENSE.txt. +It is also available through the world-wide-web at this URL: +http://opensource.org/licenses/osl-3.0.php +If you did not receive a copy of the license and are unable to +obtain it through the world-wide-web, please send an email +to license@prestashop.com so we can send you a copy immediately. + +DISCLAIMER + +Do not edit or add to this file if you wish to upgrade PrestaShop to newer +versions in the future. If you wish to customize PrestaShop for your +needs please refer to http://www.prestashop.com for more information. + +@author PrestaShop SA +@copyright 2007-2011 PrestaShop SA +@license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +International Registered Trademark & Property of PrestaShop SA + +PREPARATION +=========== + +Pour installer PrestaShop, vous avez besoin d'un serveur web distant ou sur votre ordinateur (MAMP), avec un acc�s � une base de donn�es de type MySQL. +Vous aurez besoin d'un acc�s � PhpMyAdmin afin de cr�er un base de donn�es, et d'indiquer les informations de la base de donn�es dans l'installeur. + +Si vous n'avez pas d'h�bergeur et pas la possibilit� de cr�er votre boutique, nous vous proposons un service de boutique cl� en main, qui vous permet de cr�er votre boutique en ligne en moins de 10 minutes sans aucunes notions techniques. +Nous vous invitons � vous rendre sur: + http://www.prestabox.com/ + +INSTALLATION +============ + +Il suffit d'aller dans votre r�pertoire web PrestaShop et de lancer l'installateur (dans /install) :-) + +Si vous avez des erreurs de PHP, peut-�tre que vous n'avez pas PHP5 ou peut �tre devez vous l'activer via votre h�bergeur. +Merci de vous rendre sur notre forum pour trouver les param�tres de pr�-installation (PHP 5, htaccess) pour certains services d'h�bergement (1 & 1, Free, Lycos, OVH, Infomaniak, Amen, GoDaddy, etc.) + +Topic fran�ais sur notre forum officiel : + http://www.prestashop.com/forums/viewthread/446/installation_configuration_et_mise_a_jour/preinstallation_settings_php_5_htaccess_for_certain_hosting_services + +Si vous ne trouvez pas de solution pour lancer l'installateur, merci de vous rendre � cette adresse: + http://www.prestashop.com/forums/viewforum/7/installation_configuration___upgrade + +Il ya toujours des solutions pour vos questions ;-) + +DOCUMENTATION +============= + +Pour toute documentation suppl�mentaire (how-to), vous trouverez notre wiki � cette adresse: + http://www.prestashop.com/wiki/ + +FORUMS +====== + +Vous pouvez �galement discuter, aider et contribuer avec la communaut� PrestaShop sur nos forums: + http://www.prestashop.com/forums/ + +Merci d'avoir t�l�charger et d'utiliser PrestaShop, solution e-commerce open-source ! + +========================== += The PrestaTeam' = += www.PrestaShop.com = +========================== diff --git a/install-new/langs/fr/data/carrier.xml b/install-new/langs/fr/data/carrier.xml new file mode 100644 index 000000000..33a596d24 --- /dev/null +++ b/install-new/langs/fr/data/carrier.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/category.xml b/install-new/langs/fr/data/category.xml new file mode 100644 index 000000000..a627f818a --- /dev/null +++ b/install-new/langs/fr/data/category.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/cms.xml b/install-new/langs/fr/data/cms.xml new file mode 100644 index 000000000..b28b694ba --- /dev/null +++ b/install-new/langs/fr/data/cms.xml @@ -0,0 +1,45 @@ + + + + + + + Livraisons et retours

    Le transport de votre colis

    Les colis sont généralement expédiés en 48h après réception de votre paiement. Le mode d'expédition standard est le Colissimo suivi, remis sans signature. Si vous souhaitez une remise avec signature, un coût supplémentaire s'applique, merci de nous contacter. Quel que soit le mode d'expédition choisi, nous vous fournirons dès que possible un lien qui vous permettra de suivre en ligne la livraison de votre colis.

    Les frais d'expédition comprennent l'emballage, la manutention et les frais postaux. Ils peuvent contenir une partie fixe et une partie variable en fonction du prix ou du poids de votre commande. Nous vous conseillons de regrouper vos achats en une unique commande. Nous ne pouvons pas grouper deux commandes distinctes et vous devrez vous acquitter des frais de port pour chacune d'entre elles. Votre colis est expédié à vos propres risques, un soin particulier est apporté au colis contenant des produits fragiles..

    Les colis sont surdimensionnés et protégés.

    ]]>
    + +
    + + + + + Mentions légales

    Crédits

    Concept et production :

    Ce site internet a été réalisé en utilisant la solution open-source PrestaShop™ .

    ]]>
    + +
    + + + + + Vos conditions de ventes

    Règle n°1

    Contenu de la règle numéro 1

    +

    Règle n°2

    Contenu de la règle numéro 2

    +

    Règle n°3

    Contenu de la règle numéro 3

    ]]>
    + +
    + + + + + A propos +

    Notre entreprise

    Notre entreprise

    +

    Notre équipe

    Notre équipe

    +

    Informations

    Informations

    ]]>
    + +
    + + + + + Paiement sécurisé +

    Notre offre de paiement sécurisé

    Avec SSL

    +

    Utilisation de Visa/Mastercard/Paypal

    A propos de ces services

    ]]>
    + +
    +
    \ No newline at end of file diff --git a/install-new/langs/fr/data/cms_category.xml b/install-new/langs/fr/data/cms_category.xml new file mode 100644 index 000000000..cab20e3ae --- /dev/null +++ b/install-new/langs/fr/data/cms_category.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/configuration.xml b/install-new/langs/fr/data/configuration.xml new file mode 100644 index 000000000..708a483f5 --- /dev/null +++ b/install-new/langs/fr/data/configuration.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/contact.xml b/install-new/langs/fr/data/contact.xml new file mode 100644 index 000000000..657905e5e --- /dev/null +++ b/install-new/langs/fr/data/contact.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/country.xml b/install-new/langs/fr/data/country.xml new file mode 100644 index 000000000..c75cce793 --- /dev/null +++ b/install-new/langs/fr/data/country.xml @@ -0,0 +1,735 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/gender.xml b/install-new/langs/fr/data/gender.xml new file mode 100644 index 000000000..76cb44988 --- /dev/null +++ b/install-new/langs/fr/data/gender.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/group.xml b/install-new/langs/fr/data/group.xml new file mode 100644 index 000000000..822aa29af --- /dev/null +++ b/install-new/langs/fr/data/group.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/meta.xml b/install-new/langs/fr/data/meta.xml new file mode 100644 index 000000000..ef210b0ab --- /dev/null +++ b/install-new/langs/fr/data/meta.xml @@ -0,0 +1,153 @@ + + + + <![CDATA[Erreur 404]]> + + + + + + <![CDATA[Meilleures ventes]]> + + + + + + <![CDATA[Contactez-nous]]> + + + + + + <![CDATA[]]> + + + + + + <![CDATA[Fabricants]]> + + + + + + <![CDATA[Nouveaux produits]]> + + + + + + <![CDATA[Mot de passe oublié]]> + + + + + + <![CDATA[Promotions]]> + + + + + + <![CDATA[Plan du site]]> + + + + + + <![CDATA[Fournisseurs]]> + + + + + + <![CDATA[Adresse]]> + + + + + + <![CDATA[Adresses]]> + + + + + + <![CDATA[Authentification]]> + + + + + + <![CDATA[Panier]]> + + + + + + <![CDATA[Bons de réduction]]> + + + + + + <![CDATA[Historique des commandes]]> + + + + + + <![CDATA[Identité]]> + + + + + + <![CDATA[Mon compte]]> + + + + + + <![CDATA[Détails de la commande]]> + + + + + + <![CDATA[Avoirs]]> + + + + + + <![CDATA[Commande]]> + + + + + + <![CDATA[Recherche]]> + + + + + + <![CDATA[Magasins]]> + + + + + + <![CDATA[Commande]]> + + + + + + <![CDATA[Suivi de commande invité]]> + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/order_return_state.xml b/install-new/langs/fr/data/order_return_state.xml new file mode 100644 index 000000000..156255468 --- /dev/null +++ b/install-new/langs/fr/data/order_return_state.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/order_state.xml b/install-new/langs/fr/data/order_state.xml new file mode 100644 index 000000000..169c486ba --- /dev/null +++ b/install-new/langs/fr/data/order_state.xml @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/profile.xml b/install-new/langs/fr/data/profile.xml new file mode 100644 index 000000000..5f24905b3 --- /dev/null +++ b/install-new/langs/fr/data/profile.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/quick_access.xml b/install-new/langs/fr/data/quick_access.xml new file mode 100644 index 000000000..7aa1bea7e --- /dev/null +++ b/install-new/langs/fr/data/quick_access.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/stock_mvt_reason.xml b/install-new/langs/fr/data/stock_mvt_reason.xml new file mode 100644 index 000000000..567b5fe62 --- /dev/null +++ b/install-new/langs/fr/data/stock_mvt_reason.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/supplier_order_state.xml b/install-new/langs/fr/data/supplier_order_state.xml new file mode 100644 index 000000000..5ab2e5f0f --- /dev/null +++ b/install-new/langs/fr/data/supplier_order_state.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/data/tab.xml b/install-new/langs/fr/data/tab.xml new file mode 100644 index 000000000..03f57b413 --- /dev/null +++ b/install-new/langs/fr/data/tab.xml @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/fr/flag.jpg b/install-new/langs/fr/flag.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4cd7f380692228159cb36d7f22b21fa2af2dcc27 GIT binary patch literal 679 zcmex=~j5ev@{~-oJ4hC)p0cJ))1|~s9WPorsHvgw`;@jXerr=KwyGZmCQtN(u!0HqIu AiU0rr literal 0 HcmV?d00001 diff --git a/install-new/langs/fr/img/fr-default-category.jpg b/install-new/langs/fr/img/fr-default-category.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5c77b7622e867a956a9184806b60a563250b38b8 GIT binary patch literal 4938 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 SogA+3MeOqwe|b@NI{iPZ8*3&2 literal 0 HcmV?d00001 diff --git a/install-new/langs/fr/img/fr-default-home.jpg b/install-new/langs/fr/img/fr-default-home.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b69c6bb700a9e3d7e7d3bc92e5aef60a825d4a59 GIT binary patch literal 3648 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 literal 0 HcmV?d00001 diff --git a/install-new/langs/fr/img/fr-default-large.jpg b/install-new/langs/fr/img/fr-default-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a1fb7b9e6d1c052ba75d45a60934217fcf9dbbd6 GIT binary patch literal 7302 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 literal 0 HcmV?d00001 diff --git a/install-new/langs/fr/img/fr-default-large_scene.jpg b/install-new/langs/fr/img/fr-default-large_scene.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b68f5ddca45ffac46d6a9eef80ec6a6feb09bfb2 GIT binary patch literal 6215 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 literal 0 HcmV?d00001 diff --git a/install-new/langs/fr/img/fr-default-medium.jpg b/install-new/langs/fr/img/fr-default-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..485a36c72001bb4cd7317d1ac603ee609958aab9 GIT binary patch literal 2290 zcmb7FdpMNo8~(mIXT&!%4pTl1615nIa!N5yp=emOjf6=$poB1K zhpba1g;36N4k!$Tqj0we;762&%35J_Z`C?p{(NtTk5mX;<+ zP~>G{`HiqNy!Hr)Mx(J9?0PJAJxqj%@c)g~T7ZB98~_I-C=VbAAd&#C)&Wuil1NYh z;2(f!3<`ljYt_P7~bZu z`#Wn|4p{IVw~pff>f)(HnmH}5J!WC*JN}z0p@d5v@G@QJd^So4M5A)8^;m zH5KtmJC{~Y`0u^shIQ$SP4Com3L3M5vWJbodMP@YWFNNKs8GTyo9S6(yi6Vf|XM3IFQBw>j~X#{Y-jC|oqW@}p#B4*idVS}UIo)59gPXU9b2k! z+A$y5YN_Hw$~?CFQU7Po2geb~4VF@und68K{d(aNKqj5DI8A?E_=271sp(f@aNx3k z-}YPUB*y#>Jk&d6FY(K!Q=4h5RX{9~>LxK!+x!Z#Y*!*bvdo9;q@XMO1L4~7M)?_y zY!A0y4r#fretuTmrobpT@y+ydO^kS%TdcUvR%of|3CIrX%j&$gcPWa2FC})ze#&GN zj88T`(p`uwq0F2lQ@@RUez7YiFG$uf2~llgOq%?|OoX8-3^c z*bKXW?DlE>v&SwYe3D%5rMOla!Y&_Tp4_PB=9L;Z_-4$W&vw3%0p}{f#QwnM<2Y_= zRh$^qx^;;e3Ie8I?>(!9B076^Y_p~64C*}h85Z8xhdzFCU3UjH8BRZ+wcC~SY>$(R zh(}NX1|0?)wc`hax1z)f$ie1UVnrC|=lvEmB)r(&9Zw$>o!wPbA=G(iJ1>*3c?r1O zJyV8^8Yg|^%sB!Nlro?3sLcLne8u->gNkCVIX@Bwy}Wl9be zw)^*yFX+Zrv2@D@JV`a)om5q6oRg@G7VYAZ#{FM3;kO3*SC^KFbr)>dItb;7%!^#L zp<{ME5s0}2>s?I%PbTo@M8M>*lX!dXs1B~_eF7n`-4FW#^&Ii0t!EU~r&n>8G#!4o zLteIOX7Gp20&7izMqla9UN@MfQD$)}wZiH&Q{}mr!jG;S%)L_n4_{a_4(NXw$F~4^ zfhYvufWSS_-#rK<$N_7jfG9@Ztefip=mA=3b=|37B$_rTyBQVE3Aq!>)#&J_pdH)b z5%pGb4+|ekV#SMam<)|oz(!S#qO!$D;dM}{!+Mhy!nP$CpgAa2-5;Hr3bp$Q6(4A@ z%WDs%hG8$W2&zk7#l8uqk|*%h_y=q|(MG!D)f{C-7~C}7;C5YDaj&tX6)k76Wx~n@ zM-dXEDD8OK{|H{+tuI%m$;w!rOBF?)N+-%c7wWB8Hc3BPKW3}tjN??z#H+k;tXCK-o98qQZ`W?iDSzpRyoRk ge3woqr72l<@>sQ-jW9V+`nh>4yahw*(8OxbUxyu)-~a#s literal 0 HcmV?d00001 diff --git a/install-new/langs/fr/img/fr-default-small.jpg b/install-new/langs/fr/img/fr-default-small.jpg new file mode 100644 index 0000000000000000000000000000000000000000..335ddd86fb08d99c16a9cc4816bc3d7689a975f0 GIT binary patch literal 1185 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 literal 0 HcmV?d00001 diff --git a/install-new/langs/fr/img/fr-default-thumb_scene.jpg b/install-new/langs/fr/img/fr-default-thumb_scene.jpg new file mode 100644 index 0000000000000000000000000000000000000000..91d22f97f0069cfe5fb63f00e0a69c0a57333b7e GIT binary patch literal 1734 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 literal 0 HcmV?d00001 diff --git a/install-new/langs/fr/install.php b/install-new/langs/fr/install.php new file mode 100644 index 000000000..cfd5ddf27 --- /dev/null +++ b/install-new/langs/fr/install.php @@ -0,0 +1,10 @@ + array( + 'phone' => '+33 (0)1.40.18.30.04', + 'documentation' => 'http://doc.prestashop.com/pages/viewpage.action?pageId=2424836', + ), + 'translations' => array( + 'Choose the installer language:' => 'Choisissez votre langue pour l\'installation', + ), +); \ No newline at end of file diff --git a/install-new/langs/fr/language.xml b/install-new/langs/fr/language.xml new file mode 100644 index 000000000..65808606b --- /dev/null +++ b/install-new/langs/fr/language.xml @@ -0,0 +1,8 @@ + + + + fr + d/m/Y + d/m/Y H:i:s + false + \ No newline at end of file diff --git a/install-new/langs/it/data/carrier.xml b/install-new/langs/it/data/carrier.xml new file mode 100644 index 000000000..7b93a6cc2 --- /dev/null +++ b/install-new/langs/it/data/carrier.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/category.xml b/install-new/langs/it/data/category.xml new file mode 100644 index 000000000..997d877a4 --- /dev/null +++ b/install-new/langs/it/data/category.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/cms.xml b/install-new/langs/it/data/cms.xml new file mode 100644 index 000000000..02239d87f --- /dev/null +++ b/install-new/langs/it/data/cms.xml @@ -0,0 +1,45 @@ + + + + + + + Spedizioni e resi

    Spedizione del tuo pacco

    I pacchi sono solitamente spediti entro 2 giorni dopo il ricevimento del pagamento e inviati tramite UPS con controllo e consegna senza firma. Se preferisci una consegna con UPS Extra con richiesta di firma, sarà applicato un costo aggiuntivo, pertanto contattaci prima di scegliere questo mezzo. Qualunque tipo di spedizione tu scelga, ti garantiremo un link per controllare online il percorso del tuo pacco.

    Le spese di spedizione comprendono le spese di imballaggio e affrancatura. Le spese di imballaggio sono fisse, mentre quelle di trasporto variano in base al peso totale della spedizione. Ti consigliamo di raggruppare i tuoi articoli in un unico ordine. Non possiamo raggruppare due ordini distinti eseguiti separatamente, e ad ognuno di esso saranno applicate le spese di spedizione. Il tuo pacco sarà inviato sotto la tua responsabilità, ma un'attenzione particolare è riservata agli oggetti fragili.

    Le scatole hanno dimensioni ragionevoli e i tuoi articoli sono ben protetti.

    ]]>
    + +
    + + + + + Legale

    Crediti

    Creazione e produzione:

    Questo sito web è stato realizzato usando un software open-sourcePrestaShop™.

    ]]>
    + +
    + + + + + I tuoi termini e condizioni d'uso

    Regola 1

    Ecco il contenuto della regola 1

    +

    Regola 2

    Ecco il contenuto della regola 2

    +

    Regola 3

    Ecco il contenuto della regola 3

    ]]>
    + +
    + + + + + Chi siamo +

    La nostra azienda

    La nostra azienda

    +

    Il nostro team

    Il nostro team

    +

    Informazioni

    Informazioni

    ]]>
    + +
    + + + + + Pagamento sicuro +

    Il nostro pagamento sicuro

    Con SSL

    +

    Usando Visa/Mastercard/Paypal

    Cosa sono questi servizi

    ]]>
    + +
    +
    \ No newline at end of file diff --git a/install-new/langs/it/data/cms_category.xml b/install-new/langs/it/data/cms_category.xml new file mode 100644 index 000000000..1b5fde073 --- /dev/null +++ b/install-new/langs/it/data/cms_category.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/configuration.xml b/install-new/langs/it/data/configuration.xml new file mode 100644 index 000000000..3a44fa49a --- /dev/null +++ b/install-new/langs/it/data/configuration.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/contact.xml b/install-new/langs/it/data/contact.xml new file mode 100644 index 000000000..4e0b55c85 --- /dev/null +++ b/install-new/langs/it/data/contact.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/country.xml b/install-new/langs/it/data/country.xml new file mode 100644 index 000000000..dd283ed95 --- /dev/null +++ b/install-new/langs/it/data/country.xml @@ -0,0 +1,735 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/gender.xml b/install-new/langs/it/data/gender.xml new file mode 100644 index 000000000..e1974fc87 --- /dev/null +++ b/install-new/langs/it/data/gender.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/group.xml b/install-new/langs/it/data/group.xml new file mode 100644 index 000000000..ec8411b7c --- /dev/null +++ b/install-new/langs/it/data/group.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/meta.xml b/install-new/langs/it/data/meta.xml new file mode 100644 index 000000000..494ca526e --- /dev/null +++ b/install-new/langs/it/data/meta.xml @@ -0,0 +1,153 @@ + + + + <![CDATA[errore 404]]> + + + + + + <![CDATA[Vendite migliori]]> + + + + + + <![CDATA[Contattaci]]> + + + + + + <![CDATA[]]> + + + + + + <![CDATA[Produttori]]> + + + + + + <![CDATA[Nuovi prodotti]]> + + + + + + <![CDATA[Hai dimenticato la password]]> + + + + + + <![CDATA[Riduzioni prezzi]]> + + + + + + <![CDATA[Mappa del sito]]> + + + + + + <![CDATA[Fornitori]]> + + + + + + <![CDATA[Indirizzo]]> + + + + + + <![CDATA[Indirizzi]]> + + + + + + <![CDATA[Autenticazione]]> + + + + + + <![CDATA[Carrello]]> + + + + + + <![CDATA[Sconto]]> + + + + + + <![CDATA[Storico ordine]]> + + + + + + <![CDATA[Identità]]> + + + + + + <![CDATA[Il mio account]]> + + + + + + <![CDATA[Seguito ordine]]> + + + + + + <![CDATA[Nota di ordine]]> + + + + + + <![CDATA[Ordine]]> + + + + + + <![CDATA[Cerca]]> + + + + + + <![CDATA[Negozi]]> + + + + + + <![CDATA[Ordine]]> + + + + + + <![CDATA[Ospite di monitoraggio]]> + + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/order_return_state.xml b/install-new/langs/it/data/order_return_state.xml new file mode 100644 index 000000000..508d73ab5 --- /dev/null +++ b/install-new/langs/it/data/order_return_state.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/order_state.xml b/install-new/langs/it/data/order_state.xml new file mode 100644 index 000000000..308520a7b --- /dev/null +++ b/install-new/langs/it/data/order_state.xml @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/profile.xml b/install-new/langs/it/data/profile.xml new file mode 100644 index 000000000..5f24905b3 --- /dev/null +++ b/install-new/langs/it/data/profile.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/quick_access.xml b/install-new/langs/it/data/quick_access.xml new file mode 100644 index 000000000..4189e6e77 --- /dev/null +++ b/install-new/langs/it/data/quick_access.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/stock_mvt_reason.xml b/install-new/langs/it/data/stock_mvt_reason.xml new file mode 100644 index 000000000..d398fb6d6 --- /dev/null +++ b/install-new/langs/it/data/stock_mvt_reason.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/supplier_order_state.xml b/install-new/langs/it/data/supplier_order_state.xml new file mode 100644 index 000000000..2aab81395 --- /dev/null +++ b/install-new/langs/it/data/supplier_order_state.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/it/data/tab.xml b/install-new/langs/it/data/tab.xml new file mode 100644 index 000000000..0c313495b --- /dev/null +++ b/install-new/langs/it/data/tab.xml @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/install-new/langs/it/flag.jpg b/install-new/langs/it/flag.jpg new file mode 100644 index 0000000000000000000000000000000000000000..744eb0eef5a1b2bd02aa947f06785ee349d68406 GIT binary patch literal 911 zcmex=Jq?U}9uuW@2Fmx*ZrGjI}^{1{Oh9Aw@$+HsQcTcBMiQqsEB~Ih36?9uy6__(8=u zsi=vQOH5osQc6`#T|-mL#MI2(!qUpw#nsK-!_zA`Bs45MA~GsDB{eNQBQvYGq_nKO zqOz*FrM0cSqqA$$M%n)zEeTL>QL7=~wSXh`@ z*g^hcWGV+@WL##!`JmU58d{cx}&O-D;9p?;yl+@=Z$JYo;fK` zKA$a`zco9`^>K7Y>)LJ4E|#->3NNsJevHq^QuNrrGyjaQ-9BD^E$vI~y!-B@y)`pF zF`edWoV(MeYS#MS-mkZRuQT8Hd0Du+x6Aoy4G&K1xjB4aKc_17KZEfL8@1k#7vh5K H|K9`v{=pZ{ literal 0 HcmV?d00001 diff --git a/install-new/langs/it/img/it-default-category.jpg b/install-new/langs/it/img/it-default-category.jpg new file mode 100644 index 0000000000000000000000000000000000000000..add52ebb9866dec260ef650995e0b6657fc51af2 GIT binary patch literal 6438 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 literal 0 HcmV?d00001 diff --git a/install-new/langs/it/img/it-default-large.jpg b/install-new/langs/it/img/it-default-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..97bf6f2f08d6cd8c84070bfc470dc5a22dbb5347 GIT binary patch literal 11828 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 literal 0 HcmV?d00001 diff --git a/install-new/langs/it/img/it-default-large_scene.jpg b/install-new/langs/it/img/it-default-large_scene.jpg new file mode 100644 index 0000000000000000000000000000000000000000..be32f833b2de480b7c62788bfeafd2974de4df56 GIT binary patch literal 8770 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 JLI?T(Hvtr}PZR(E literal 0 HcmV?d00001 diff --git a/install-new/langs/it/img/it-default-thickbox.jpg b/install-new/langs/it/img/it-default-thickbox.jpg new file mode 100644 index 0000000000000000000000000000000000000000..96fc64a4ef431d6003e3f329b69541edebafe655 GIT binary patch literal 15175 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 literal 0 HcmV?d00001 diff --git a/install-new/langs/it/img/it-default-thumb_scene.jpg b/install-new/langs/it/img/it-default-thumb_scene.jpg new file mode 100644 index 0000000000000000000000000000000000000000..72fddf890c6b68f245243a2b2d3175deae9bdae5 GIT binary patch literal 1884 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 Ksl9)th5rG(VF{}M literal 0 HcmV?d00001 diff --git a/install-new/langs/it/language.xml b/install-new/langs/it/language.xml new file mode 100644 index 000000000..048769a38 --- /dev/null +++ b/install-new/langs/it/language.xml @@ -0,0 +1,8 @@ + + + + it + d/m/Y + d/m/Y H:i:s + false + \ No newline at end of file diff --git a/install-new/models/database.php b/install-new/models/database.php new file mode 100644 index 000000000..71cb4f621 --- /dev/null +++ b/install-new/models/database.php @@ -0,0 +1,87 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +class InstallModelDatabase extends InstallAbstractModel +{ + /** + * Check database configuration and try a connection + * + * @param string $server + * @param string $database + * @param string $login + * @param string $password + * @param string $prefix + * @param string $engine + * @return array List of errors + */ + public function testDatabaseSettings($server, $database, $login, $password, $prefix, $engine) + { + $errors = array(); + + // Check if fields are correctly typed + if (!$server || !Validate::isUrl($server)) + $errors[] = $this->language->l('Server name is not valid'); + + if (!$database) + $errors[] = $this->language->l('You must enter a database name'); + + if (!$login) + $errors[] = $this->language->l('You must enter a database login'); + + if (!$prefix || !Validate::isTablePrefix($prefix)) + $errors[] = $this->language->l('Tables prefix is invalid'); + + if (!Validate::isMySQLEngine($engine)) + $errors[] = $this->language->l('Wrong engine chosen for MySQL'); + + if (!$errors) + { + // Try to connect to database + switch (Db::checkConnection($server, $login, $password, $database, true, $engine)) + { + case 0: + if (!Db::checkEncoding($server, $login, $password)) + $errors[] = $this->language->l('Cannot convert database data to utf-8'); + break; + + case 1: + $errors[] = $this->language->l('Database Server is not found. Please verify the login, password and server fields'); + break; + + case 2: + $errors[] = $this->language->l('Connection to MySQL server succeeded, but database "%s" not found', $database); + break; + + case 4: + $errors[] = $this->language->l('Engine innoDB is not supported by your MySQL server, please use MyISAM'); + break; + } + } + + return $errors; + } +} diff --git a/install-new/models/install.php b/install-new/models/install.php new file mode 100644 index 000000000..4e2e1bc35 --- /dev/null +++ b/install-new/models/install.php @@ -0,0 +1,629 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +class InstallModelInstall extends InstallAbstractModel +{ + const SETTINGS_FILE = 'config/settings.inc.php'; + + /** + * PROCESS : installDatabase + * Generate settings file and create database structure + */ + public function installDatabase($database_server, $database_login, $database_password, $database_name, $database_prefix, $database_engine, $clear_database = false) + { + // Generate settings file + $this->generateSettingsFile($database_server, $database_login, $database_password, $database_name, $database_prefix, $database_engine); + + // Clear database (only tables with same prefix) + require_once _PS_ROOT_DIR_.'/'.self::SETTINGS_FILE; + if ($clear_database) + $this->clearDatabase(); + + // Install database structure + $sql_loader = new InstallSqlLoader(); + $sql_loader->setMetaData(array( + 'PREFIX_' => _DB_PREFIX_, + 'ENGINE_TYPE' => _MYSQL_ENGINE_, + )); + + try + { + $sql_loader->parse_file(_PS_INSTALL_DATA_PATH_.'db_structure.sql'); + } + catch (PrestashopInstallerException $e) + { + $this->setError($this->language->l('Database structure file not found')); + return false; + } + + if ($errors = $sql_loader->getErrors()) + { + foreach ($errors as $error) + $this->setError($this->language->l('An SQL error occured: %1$s', $error['error'])); + return false; + } + + return true; + } + + /** + * Generate settings file + */ + public function generateSettingsFile($database_server, $database_login, $database_password, $database_name, $database_prefix, $database_engine) + { + // Check permissions for settings file + if (file_exists(_PS_ROOT_DIR_.'/'.self::SETTINGS_FILE) && !is_writable(_PS_ROOT_DIR_.'/'.self::SETTINGS_FILE)) + { + $this->setError($this->language->l('%s file is not writable (check permissions)', self::SETTINGS_FILE)); + return false; + } + else if (!file_exists(_PS_ROOT_DIR_.'/'.self::SETTINGS_FILE) && !is_writable(_PS_ROOT_DIR.'/'.dirname(self::SETTINGS_FILE))) + { + $this->setError($this->language->l('%s folder is not writable (check permissions)', dirname(self::SETTINGS_FILE))); + return false; + } + + // Generate settings content and write file + $settings_constants = array( + '_DB_SERVER_' => $database_server, + '_DB_NAME_' => $database_name, + '_DB_USER_' => $database_login, + '_DB_PASSWD_' => $database_password, + '_DB_PREFIX_' => $database_prefix, + '_MYSQL_ENGINE_' => $database_engine, + '_PS_CACHING_SYSTEM_' => 'CacheMemcache', + '_PS_CACHE_ENABLED_' => '0', + '_MEDIA_SERVER_1_' => '', + '_MEDIA_SERVER_2_' => '', + '_MEDIA_SERVER_3_' => '', + '_COOKIE_KEY_' => Tools::passwdGen(56), + '_COOKIE_IV_' => Tools::passwdGen(8), + '_PS_CREATION_DATE_' => date('Y-m-d'), + '_PS_VERSION_' => _PS_INSTALL_VERSION_, + ); + + // If mcrypt is activated, add Rijndael 128 configuration + if (function_exists('mcrypt_encrypt')) + { + $settings_constants['_RIJNDAEL_KEY_'] = Tools::passwdGen(mcrypt_get_key_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB)); + $settings_constants['_RIJNDAEL_IV_'] = base64_encode(mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB), MCRYPT_RAND)); + } + + $settings_content = " $value) + $settings_content .= "define('$constant', '$value');\n"; + if (!@file_put_contents(_PS_ROOT_DIR_.'/'.self::SETTINGS_FILE, $settings_content)) + { + $this->setError($this->language->l('Cannot write settings file')); + return false; + } + return true; + } + + /** + * Clear database (only tables with same prefix) + * + * @param bool $truncate If true truncate the table, if false drop the table + */ + public function clearDatabase($truncate = false) + { + foreach (Db::getInstance()->executeS('SHOW TABLES') as $row) + { + $table = current($row); + if (preg_match('#^'._DB_PREFIX_.'#i', $table)) + Db::getInstance()->execute((($truncate) ? 'TRUNCATE' : 'DROP TABLE').' '.$table); + } + } + + /** + * PROCESS : populateDatabase + * Populate database with default data + */ + public function populateDatabase($clear_database = false) + { + if ($clear_database) + $this->clearDatabase(true); + + // Install first shop + if (!$this->createShop()) + return false; + + // Install languages + try + { + $languages = $this->installLanguages(); + } + catch (PrestashopInstallerException $e) + { + $this->setError($e->getMessage()); + return false; + } + + $flip_languages = array_flip($languages); + Configuration::updateGlobalValue('PS_LANG_DEFAULT', $flip_languages[$this->language->getLanguageIso()]); + + // Install XML data (data/xml/ folder) + $xml_loader = new InstallXmlLoader(); + $xml_loader->setLanguages($languages); + $xml_loader->populateFromXmlFiles(); + if ($errors = $xml_loader->getErrors()) + { + $this->setError($errors); + return false; + } + + // IDS from xmlLoader are stored in order to use them for fixtures + $this->xml_loader_ids = $xml_loader->getIds(); + + // Install custom SQL data (db_data.sql file) + if (file_exists(_PS_INSTALL_DATA_PATH_.'db_data.sql')) + { + $sql_loader = new InstallSqlLoader(); + $sql_loader->setMetaData(array( + 'PREFIX_' => _DB_PREFIX_, + 'ENGINE_TYPE' => _MYSQL_ENGINE_, + )); + + $sql_loader->parse_file(_PS_INSTALL_DATA_PATH_.'db_data.sql', false); + if ($errors = $sql_loader->getErrors()) + { + $this->setError($errors); + return false; + } + } + + // Copy language default images (we do this action after database in populated because we need image types informations) + foreach ($languages as $iso) + $this->copyLanguageImages($iso); + + return true; + } + + public function createShop() + { + // Create default group shop + $group_shop = new GroupShop(); + $group_shop->name = 'Default'; + $group_shop->active = true; + if (!$group_shop->add()) + { + $this->setError($this->language->l('Cannot create group shop')); + return false; + } + + // Create default shop + $shop = new Shop(); + $shop->active = true; + $shop->id_group_shop = $group_shop->id; + $shop->id_category = 1; + $shop->id_theme = 1; + $shop->name = 'Default'; + if (!$shop->add()) + { + $this->setError($this->language->l('Cannot create shop')); + return false; + } + Context::getContext()->shop = $shop; + + // Create default shop URL + $shop_url = new ShopUrl(); + $shop_url->domain = Tools::getHttpHost(); + $shop_url->domain_ssl = Tools::getHttpHost(); + $shop_url->physical_uri = __PS_BASE_URI__; + $shop_url->id_shop = $shop->id; + $shop_url->main = true; + $shop_url->active = true; + if (!$shop_url->add()) + { + $this->setError($this->language->l('Cannot create shop URL')); + return false; + } + + return true; + } + + /** + * Install languages + * + * @return array Association between ID and iso array(id_lang => iso, ...) + */ + public function installLanguages() + { + $languages = array(); + foreach ($this->language->getIsoList() as $iso) + { + if (!file_exists(_PS_INSTALL_LANGS_PATH_.$iso.'/language.xml')) + throw new PrestashopInstallerException($this->language->l('File "language.xml" not found for language iso "%s"', $iso)); + + if (!$xml = @simplexml_load_file(_PS_INSTALL_LANGS_PATH_.$iso.'/language.xml')) + throw new PrestashopInstallerException($this->language->l('File "language.xml" not valid for language iso "%s"', $iso)); + + // Add language in database + $language = new Language(); + $language->iso_code = $iso; + $language->active = ($iso == $this->language->getLanguageIso()) ? true : false; + $language->name = ($xml->name) ? (string)$xml->name : 'Unknown (Unknown)'; + $language->language_code = ($xml->language_code) ? (string)$xml->language_code : $iso; + $language->date_format_lite = ($xml->date_format_lite) ? (string)$xml->date_format_lite : 'm/j/Y'; + $language->date_format_full = ($xml->date_format_full) ? (string)$xml->date_format_full : 'm/j/Y H:i:s'; + $language->is_rtl = ($xml->is_rtl && ($xml->is_rtl == 'true' || $xml->is_rtl == '1')) ? 1 : 0; + if (!$language->add()) + throw new PrestashopInstallerException($this->language->l('Cannot install language "%s"', ($xml->name) ? $xml->name : $iso)); + $languages[$language->id] = $iso; + + // Copy language flag + if (is_writable(_PS_IMG_DIR_.'l/')) + copy(_PS_INSTALL_LANGS_PATH_.$iso.'/flag.jpg', _PS_IMG_DIR_.'l/'.$language->id.'.jpg'); + } + + return $languages; + } + + public function copyLanguageImages($iso) + { + $img_path = _PS_INSTALL_LANGS_PATH_.$iso.'/img/'; + if (!is_dir($img_path)) + return; + + $list = array( + 'products' => _PS_PROD_IMG_DIR_, + 'categories', _PS_CAT_IMG_DIR_, + 'manufacturers' => _PS_MANU_IMG_DIR_, + 'suppliers' => _PS_SUPP_IMG_DIR_, + 'scenes' => _PS_SCENE_IMG_DIR_, + 'stores' => _PS_STORE_IMG_DIR_, + null => _PS_IMG_DIR_.'l/', // Little trick to copy images in img/l/ path with all types + ); + + foreach ($list as $cat => $dst_path) + { + if (!is_writable($dst_path)) + continue; + + copy($img_path.$iso.'.jpg', $dst_path.$iso.'.jpg'); + + $types = ImageType::getImagesTypes($cat); + foreach ($types as $type) + { + if (file_exists($img_path.$iso.'-default-'.$type['name'].'.jpg')) + copy($img_path.$iso.'-default-'.$type['name'].'.jpg', $dst_path.$iso.'-default-'.$type['name'].'.jpg'); + else + imageResize($img_path.$iso.'.jpg', $dst_path.$iso.'-default-'.$type['name'].'.jpg', $type['width'], $type['height']); + } + } + } + + /** + * PROCESS : configureShop + * Set default shop configuration + */ + public function configureShop(array $data = array()) + { + // Clear smarty cache + $this->clearSmartyCache(); + + $default_data = array( + 'shop_name' => 'My Shop', + 'shop_activity' => '', + 'shop_country' => 'us', + 'shop_timezone' => 'US/Eastern', + 'use_smtp' => false, + 'smtp_server' => '', + 'smtp_login' => '', + 'smtp_password' => '', + 'smtp_encryption' =>'off', + 'smtp_port' => 25, + ); + + foreach ($default_data as $k => $v) + if (!isset($data[$k])) + $data[$k] = $v; + + Context::getContext()->shop = new Shop(1); + Configuration::loadConfiguration(); + + // Set default configuration + Configuration::updateGlobalValue('PS_SHOP_DOMAIN', Tools::getHttpHost()); + Configuration::updateGlobalValue('PS_SHOP_DOMAIN_SSL', Tools::getHttpHost()); + Configuration::updateGlobalValue('PS_INSTALL_VERSION', _PS_INSTALL_VERSION_); + Configuration::updateGlobalValue('PS_LOCALE_LANGUAGE', $this->language->getLanguageIso()); + Configuration::updateGlobalValue('PS_SHOP_NAME', $data['shop_name']); + Configuration::updateGlobalValue('PS_SHOP_ACTIVITY', $data['shop_activity']); + Configuration::updateGlobalValue('PS_COUNTRY_DEFAULT', Country::getByIso($data['shop_country'])); + Configuration::updateGlobalValue('PS_LOCALE_COUNTRY', $data['shop_country']); + Configuration::updateGlobalValue('PS_TIMEZONE', $data['shop_timezone']); + + // Set mails configuration + Configuration::updateGlobalValue('PS_MAIL_METHOD', ($data['use_smtp']) ? 2 : 1); + Configuration::updateGlobalValue('PS_MAIL_SERVER', $data['smtp_server']); + Configuration::updateGlobalValue('PS_MAIL_USER', $data['smtp_login']); + Configuration::updateGlobalValue('PS_MAIL_PASSWD', $data['smtp_password']); + Configuration::updateGlobalValue('PS_MAIL_SMTP_ENCRYPTION', $data['smtp_encryption']); + Configuration::updateGlobalValue('PS_MAIL_SMTP_PORT', $data['smtp_port']); + + // Activate rijndael 128 encrypt algorihtm if mcrypt is activated + if (function_exists('mcrypt_encrypt')) + Configuration::updateGlobalValue('PS_CIPHER_ALGORITHM', 1); + + // Set logo configuration + if (file_exists(_PS_IMG_DIR_.'logo.jpg')) + { + list($width, $height) = getimagesize(_PS_IMG_DIR_.'logo.jpg'); + Configuration::updateGlobalValue('SHOP_LOGO_WIDTH', round($width)); + Configuration::updateGlobalValue('SHOP_LOGO_HEIGHT', round($height)); + } + + // Set localization configuration + $localization_file = _PS_ROOT_DIR_.'/localization/default.xml'; + if (file_exists(_PS_ROOT_DIR_.'/localization/'.$data['shop_country'].'.xml')) + $localization_file = _PS_ROOT_DIR_.'/localization/'.$data['shop_country'].'.xml'; + + $locale = new LocalizationPackCore(); + $locale->loadLocalisationPack(file_get_contents($localization_file), '', true); + + // Create default employee + if (isset($data['admin_firstname']) && isset($data['admin_lastname']) && isset($data['admin_password']) && isset($data['admin_email'])) + { + $employee = new Employee(); + $employee->firstname = Tools::ucfirst($data['admin_firstname']); + $employee->lastname = Tools::ucfirst($data['admin_lastname']); + $employee->email = $data['admin_email']; + $employee->passwd = md5(_COOKIE_KEY_.$data['admin_password']); + $employee->last_passwd_gen = date('Y-m-d h:i:s', strtotime('-360 minutes')); + $employee->bo_theme = 'oldschool'; + $employee->active = true; + $employee->id_profile = 1; + $employee->id_lang = Configuration::get('PS_LANG_DEFAULT'); + $employee->bo_show_screencast = 1; + if (!$employee->add()) + { + $this->setError($this->language->l('Cannot create admin account')); + return false; + } + } + else + { + $this->setError($this->language->l('Cannot create admin account')); + return false; + } + + // Create default contact + if (isset($data['admin_email'])) + { + Configuration::updateGlobalValue('PS_SHOP_EMAIL', $data['admin_email']); + + $contact = new Contact(); + $contact->email = $data['admin_email']; + $contact->customer_service = true; + if (!$contact->add()) + { + $this->setError($this->language->l('Cannot create default contact')); + return false; + } + } + + return true; + } + + /** + * Clear smarty cache folders + */ + public function clearSmartyCache() + { + foreach (array(_PS_CACHE_DIR_.'smarty/cache', _PS_CACHE_DIR_.'smarty/compile') as $dir) + if (file_exists($dir)) + foreach (scandir($dir) as $file) + if ($file[0] != '.' && $file != 'index.php') + @unlink($dir.$file); + } + + /** + * PROCESS : installModules + * Install all modules in ~/modules/ directory + */ + public function installModules() + { + // @todo REMOVE DEV MODE + $modules = array(); + if (false) + { + foreach (scandir(_PS_MODULE_DIR_) as $module) + if ($module[0] != '.' && is_dir(_PS_MODULE_DIR_.$module) && file_exists(_PS_MODULE_DIR_.$module.'/'.$module.'.php')) + $modules[] = $module; + } + else + { + // @todo THIS CODE NEED TO BE REMOVED WHEN MODULES API IS COMMITED + $modules = array( + 'bankwire', + 'blockadvertising', + 'blockbestsellers', + 'blockcart', + 'blockcategories', + 'blockcms', + 'blockcurrencies', + 'blocklanguages', + 'blockmanufacturer', + 'blockmyaccount', + 'blocknewproducts', + 'blockpaymentlogo', + 'blockpermanentlinks', + 'blocksearch', + 'blockspecials', + 'blockstore', + 'blocktags', + 'blockuserinfo', + 'blockviewed', + 'cheque', + 'editorial', + 'graphartichow', + 'graphgooglechart', + 'graphvisifire', + 'graphxmlswfcharts', + 'gridhtml', + 'gsitemap', + 'homefeatured', + 'moneybookers', + 'pagesnotfound', + 'sekeywords', + 'statsbestcategories', + 'statsbestcustomers', + 'statsbestproducts', + 'statsbestsuppliers', + 'statsbestvouchers', + 'statscarrier', + 'statscatalog', + 'statscheckup', + 'statsdata', + 'statsequipment', + 'statsforecast', + 'statslive', + 'statsnewsletter', + 'statsorigin', + 'statspersonalinfos', + 'statsproduct', + 'statsregistrations', + 'statssales', + 'statssearch', + 'statsstock', + 'statsvisits', + ); + } + + $errors = array(); + foreach ($modules as $module_name) + { + $module = Module::getInstanceByName($module_name); + if (!$module->install()) + $errors[] = $this->language->l('Cannot install module "%s"', $module_name); + } + + if ($errors) + { + $this->setError($errors); + return false; + } + return true; + } + + /** + * PROCESS : installFixtures + * Install fixtures (E.g. demo products) + */ + public function installFixtures() + { + Db::getInstance()->delete('prefix_manufacturer'); + Db::getInstance()->delete('prefix_manufacturer_lang'); + Db::getInstance()->delete('prefix_supplier'); + Db::getInstance()->delete('prefix_supplier_lang'); + Db::getInstance()->delete('prefix_address'); + Db::getInstance()->delete('prefix_product'); + Db::getInstance()->delete('prefix_product_lang'); + Db::getInstance()->delete('prefix_category', 'id_category <> 1'); + Db::getInstance()->delete('prefix_category_product'); + Db::getInstance()->delete('prefix_category_lang', 'id_category <> 1'); + Db::getInstance()->delete('prefix_scene'); + Db::getInstance()->delete('prefix_scene_lang'); + Db::getInstance()->delete('prefix_scene_products'); + Db::getInstance()->delete('prefix_scene_category'); + Db::getInstance()->delete('prefix_attribute_group'); + Db::getInstance()->delete('prefix_attribute_group_lang'); + Db::getInstance()->delete('prefix_attribute'); + Db::getInstance()->delete('prefix_attribute_lang'); + Db::getInstance()->delete('prefix_product_attribute'); + Db::getInstance()->delete('prefix_product_attribute_combination'); + Db::getInstance()->delete('prefix_product_attribute_image'); + Db::getInstance()->delete('prefix_order_message'); + Db::getInstance()->delete('prefix_order_message_lang'); + Db::getInstance()->delete('prefix_feature'); + Db::getInstance()->delete('prefix_feature_lang'); + Db::getInstance()->delete('prefix_feature_value'); + Db::getInstance()->delete('prefix_feature_value_lang'); + Db::getInstance()->delete('prefix_feature_product'); + Db::getInstance()->delete('prefix_store'); + Db::getInstance()->delete('prefix_image'); + Db::getInstance()->delete('prefix_image_lang'); + Db::getInstance()->delete('prefix_tag'); + Db::getInstance()->delete('prefix_alias'); + Db::getInstance()->delete('prefix_customer'); + Db::getInstance()->delete('prefix_guest'); + Db::getInstance()->delete('prefix_connections'); + Db::getInstance()->delete('prefix_customer_group'); + Db::getInstance()->delete('prefix_cart'); + Db::getInstance()->delete('prefix_cart_product'); + Db::getInstance()->delete('prefix_orders'); + Db::getInstance()->delete('prefix_order_detail'); + Db::getInstance()->delete('prefix_order_history'); + Db::getInstance()->delete('prefix_range_price'); + Db::getInstance()->delete('prefix_range_weight'); + Db::getInstance()->delete('prefix_delivery'); + Db::getInstance()->delete('prefix_specific_price'); + Db::getInstance()->delete('prefix_tag'); + + // Load class (use fixture class if one exists, or use InstallXmlLoader) + if (file_exists(_PS_INSTALL_FIXTURES_PATH_.'apple/install.php')) + { + require_once _PS_INSTALL_FIXTURES_PATH_.'apple/install.php'; + $class = 'InstallFixtures'.Tools::toCamelCase('apple'); + if (!class_exists($class, false)) + { + $this->setError($this->language->l('Fixtures class "%s" not found', $class)); + return false; + } + + $xml_loader = new $class(); + if (!$xml_loader instanceof InstallXmlLoader) + { + $this->setError($this->language->l('"%s" must be an instane of "InstallXmlLoader"', $class)); + return false; + } + } + else + $xml_loader = new InstallXmlLoader(); + + // Install XML data (data/xml/ folder) + $xml_loader->setFixturesPath(); + if (isset($this->xml_loader_ids) && $this->xml_loader_ids) + $xml_loader->setIds($this->xml_loader_ids); + + $languages = array(); + foreach (Language::getLanguages(false) as $lang) + $languages[$lang['id_lang']] = $lang['iso_code']; + $xml_loader->setLanguages($languages); + $xml_loader->populateFromXmlFiles(); + if ($errors = $xml_loader->getErrors()) + { + $this->setError($errors); + return false; + } + + // Index products in search tables + Search::indexation(true); + + return true; + } +} diff --git a/install-new/models/mail.php b/install-new/models/mail.php new file mode 100644 index 000000000..93673e3f7 --- /dev/null +++ b/install-new/models/mail.php @@ -0,0 +1,73 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +class InstallModelMail extends InstallAbstractModel +{ + /** + * Send a test email + */ + public function sendTestMail($smtp_checked, $server, $login, $password, $port, $encryption, $email) + { + require_once(_PS_INSTALL_PATH_.'../tools/swift/Swift.php'); + require_once(_PS_INSTALL_PATH_.'../tools/swift/Swift/Connection/SMTP.php'); + require_once(_PS_INSTALL_PATH_.'../tools/swift/Swift/Connection/NativeMail.php'); + + try + { + // Test with custom SMTP connection + if ($smtp_checked) + { + + $smtp = new Swift_Connection_SMTP($server, $port, ($encryption == "off") ? Swift_Connection_SMTP::ENC_OFF : (($encryption == "tls") ? Swift_Connection_SMTP::ENC_TLS : Swift_Connection_SMTP::ENC_SSL)); + $smtp->setUsername($login); + $smtp->setpassword($password); + $smtp->setTimeout(5); + $swift = new Swift($smtp); + } + else + // Test with normal PHP mail() call + $swift = new Swift(new Swift_Connection_NativeMail()); + + $subject = $this->language->l('Test message from PrestaShop'); + $content = $this->language->l('This is a test message, your server is now available to send email'); + $message = new Swift_Message($subject, $content, 'text/html'); + + if (@$swift->send($message, $email, 'no-reply@'.Tools::getHttpHost())) + $result = true; + else + $result = 999; + + $swift->disconnect(); + } + catch (Swift_Exception $e) + { + $result = $e->getCode(); + } + + return $result; + } +} diff --git a/install-new/models/system.php b/install-new/models/system.php new file mode 100644 index 000000000..6c8608cf6 --- /dev/null +++ b/install-new/models/system.php @@ -0,0 +1,52 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +class InstallModelSystem extends InstallAbstractModel +{ + public function checkRequiredTests() + { + return self::checkTests(ConfigurationTest::getDefaultTests(), 'required'); + } + + public function checkOptionalTests() + { + return self::checkTests(ConfigurationTest::getDefaultTestsOp(), 'optional'); + } + + public function checkTests($list, $type) + { + $tests = ConfigurationTest::check($list); + $success = true; + foreach ($tests as $result) + $success &= ($result == 'ok') ? true : false; + + return array( + 'checks' => $tests, + 'success' => $success, + ); + } +} diff --git a/install-new/theme/img/01-gd100.png b/install-new/theme/img/01-gd100.png new file mode 100644 index 0000000000000000000000000000000000000000..9734819977ea19856c5b9d9c44778afb2e9a5b48 GIT binary patch literal 170 zcmeAS@N?(olHy`uVBq!ia0vp^oIotd!3HGxMcSSLDajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_d9MLwP`jv*DdlK%YvZ_h0Dfa%E7fNxoB6O?o+zSpy89AB33 ztUe^*9FvJ3XNU8|3`d^Rjasq)9wmC9V-A!TD(=<%vb942~)JNvR5+ zxryniL8*x;m4zo$ZGeg#JY5_^DsCnH`TyUZSxSR_vI3_{%s+W9iN+fe8tYk(=sC<` zyUsr4#$S2v1jbWyU5(;7y9#d~Jkr3- CCNF{j literal 0 HcmV?d00001 diff --git a/install-new/theme/img/01-pt70.png b/install-new/theme/img/01-pt70.png new file mode 100644 index 0000000000000000000000000000000000000000..ad00a8ee0d6c5dc8fcbaf17a3749045051cfeff7 GIT binary patch literal 157 zcmeAS@N?(olHy`uVBq!ia0vp^Y#=rVi0tB)?*>wmC9V-A!TD(=<%vb942~)JNvR5+ zxryniL8*x;m4zo$ZGejGJzX3_DsCnH`TyUZS&D;EuqQ)E;b6s#7On}?7?NrgzBR05 z@HAo0WG?v}(eQ&$D4waS@b`)J BF0cRq literal 0 HcmV?d00001 diff --git a/install-new/theme/img/02-gd100.png b/install-new/theme/img/02-gd100.png new file mode 100644 index 0000000000000000000000000000000000000000..48eb1bb30fe99332e21d5fa35f7ab07223610949 GIT binary patch literal 284 zcmeAS@N?(olHy`uVBq!ia0vp@KrF<;1|%D@LyUlwWQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8eV#6kAr-fh{`~)M&n%|EapYLQw@8J$ekJZpEiJu`72oT9 z7=(%&S2|x4_%+|a!}*#D$C39NX4J8DyQ$7tR%F7NtRlW-;mOhiDieI?bUyPJ*w_7r zNiCy7Lb>&@&%7)X4DlOTpq#cJ*RZRabf1Dj=hJM zG0s*Cs9Eb2{D)8KBhL*J$;GU1>sK%~z0f;2UFlN6Pw`_neAlqeP<#A;31dN5L85}7 ff#C#31|}Yc>HQ(o+~-Gw{LbL%>gTe~DWM4fW5{cq literal 0 HcmV?d00001 diff --git a/install-new/theme/img/02-pt100.png b/install-new/theme/img/02-pt100.png new file mode 100644 index 0000000000000000000000000000000000000000..ab6a27c007b6105f1e24f7556ab0804788ea9654 GIT binary patch literal 248 zcmeAS@N?(olHy`uVBq!ia0vp^U^WLEkTt>lKP!-uEOCt}3C>R|DNig)WpGT%PfAtr z%uP&B4N6T+sVqF1Y6Da>%hSa%q~cc6kN^MenMI_TKd$=EQNY%5I`Pwqu6uuv^Q9?i z-|1DE$aX|8KsfP$#1aoq&jrjUHBUTx>chjsi#v1}ph7KL5K5{^v{$M3Nw3H+7o txV+GW*^6U=rHnX3`(g!VK?a2b3~ZdPrzJP3&jY%W!PC{xWt~$(69BW|Ro(yq literal 0 HcmV?d00001 diff --git a/install-new/theme/img/02-pt70.png b/install-new/theme/img/02-pt70.png new file mode 100644 index 0000000000000000000000000000000000000000..d84e1b7ec756ba229bfc3de95b43e24e548e108e GIT binary patch literal 279 zcmeAS@N?(olHy`uVBq!ia0vp^U^WLEkTt>lKP!-uEOCt}3C>R|DNig)WpGT%PfAtr z%uP&B4N6T+sVqF1Y6DcX)6>NwSrQu> zwH`IzG7`;_V&3G$ze0&k#k}6}I}iV)YKKYL3k4f^;u@0JZa&;`z$w6@$XI}pfr*EK Y_q7)5e?K`dpeGnSUHx3vIVCg!05^DAM*si- literal 0 HcmV?d00001 diff --git a/install-new/theme/img/03-gd100.png b/install-new/theme/img/03-gd100.png new file mode 100644 index 0000000000000000000000000000000000000000..b4a20bafbc7eedcbd496e3209f49673538d887e6 GIT binary patch literal 308 zcmeAS@N?(olHy`uVBq!ia0vp@KrF<;1|%D@LyUlwWQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8Yo0ESAr-fJf*A!58SwB}^IUP#J#%ORgHYB&u{1{Rh!-k6 zoC=8^94|fGICP)B|F>xs zR-RJ62WIn`G_h=H%P47DDe?Wop}8{+9l2Yhz4N%l)}Ac-@idP8|6|85KhwAW`qwLC zBP3hDw`*?HtOoOk$<8T!ot9xji^Z-Nax)u;e6h%`%#Z0}z5TT-_DIK(sSdmqkGKwo zSY>Q9-X{3wazT#E%SsiwA647Tmd9-^d3rFfg3Ew`?}^FnsPb|Xpbr^5UHx3vIVCg! E08zbkJOBUy literal 0 HcmV?d00001 diff --git a/install-new/theme/img/03-pt100.png b/install-new/theme/img/03-pt100.png new file mode 100644 index 0000000000000000000000000000000000000000..1b74f7d6a789bfc3612415afe82f9bc88348f5c3 GIT binary patch literal 270 zcmeAS@N?(olHy`uVBq!ia0vp^AT}Qd8;}%R+`Ae`NtU=qlmzFem6RtIr7}3Cm{gP5<_9|I?zJ|L+PlTfQt`xqhovhJc!4(q8V>0l!wMas}_b)|qc>_`o$-Oz4D` z<&7-nvI37~$E;B%iZJaMo25jysuYO?jB}aEK={{((0s#)E{vBc*>k)cVgh$nNQWTIn2MPB0BiJ62Oc$7{( z*zO6xnVHty?+MSWRLiOw69y(0y4D%rj0ZDwXB9INv$p?B2fjdhnJP1tFy;#{qr${x))GGR;c(SHXYeWq{QB zWqd02ArC%rZ(0_x;(6k~8Alx$HZW`y61p$ZQLg-PpCNIAvEq^( n$MngQzDaPj%GH`MvPdv+{>eJ})h?C==sX5bS3j3^P6lKP!-uEOCt}3C>R|DNig)WpGT%PfAtr z%uP&B4N6T+sVqF1Y6DbM>gnPbQgJKk&;S4S%whsuN4x^c)Mv10x*R^{@aLU9Q^V1V zqMS@0XZ~Nou=>!<0M9*Y%N$i5)TTWS;wTp9&`u0K!StnHL12B;r9_7s{%8XO#zJ-z z4TpmpW-*F0NbUY@pSWRmXJbTz>H*0Om2DZqonagT2@IPPe;zh7xzG%B0E4HipUXO@ GgeCy&Vn^%% literal 0 HcmV?d00001 diff --git a/install-new/theme/img/04-pt70.png b/install-new/theme/img/04-pt70.png new file mode 100644 index 0000000000000000000000000000000000000000..5bcd74e8ca174ce6416167d980920d36182f3b9e GIT binary patch literal 217 zcmeAS@N?(olHy`uVBq!ia0vp^U^WLEkTt>lKP!-uEOCt}3C>R|DNig)WpGT%PfAtr z%uP&B4N6T+sVqF1Y6DbM?djqeQgJKk&;S4S%wh@5M}z{tNeLWma-GN}kj`w#zsX6> z#MLIF>j6V-qRo{f`aeXf96rh_#C3ZwXbXmSADVoXO1g=K+&2^TY;0_cJXHb6J@7-8dwut`Mc@(7?zbRVDt=?5x8*pfeae MUHx3vIVCg!0ENUw^#A|> literal 0 HcmV?d00001 diff --git a/install-new/theme/img/05-gd100.png b/install-new/theme/img/05-gd100.png new file mode 100644 index 0000000000000000000000000000000000000000..7613288415a96fc25bf1d1616042542d35dbb476 GIT binary patch literal 302 zcmV+}0nz@6P)>4o1i4U6h)AJ#S zQ&tcCv3m>0a4>?+m1?+SslL(AP5Lyku?fCF!uHo*WKo<1V-%z%3*m%UPZmTo3EMp7 zK~03Oc;xv%LWPnibAddAcZX9>;%=$Z0saaw0C>a^$Me+xEdT%j07*qoM6N<$g4q9g A1ONa4 literal 0 HcmV?d00001 diff --git a/install-new/theme/img/05-pt100.png b/install-new/theme/img/05-pt100.png new file mode 100644 index 0000000000000000000000000000000000000000..efede94542af85d487e9679a44c5bb54f3baf805 GIT binary patch literal 259 zcmV+e0sQ`nP)@D9LMoqL>w61Ii4P2$o%{f`YXl2y6Nq%R2?%% z*^$^ESR8MxZ`|+fU-YVD!f}-&^fgyLBPQca9r>iri`#K&KPo2?BoYnEzOoJKzRt~-b3;-xc@`BhrPObm|002ov JPDHLkV1kN9XaxWO literal 0 HcmV?d00001 diff --git a/install-new/theme/img/05-pt70.png b/install-new/theme/img/05-pt70.png new file mode 100644 index 0000000000000000000000000000000000000000..97b6180de5fca3f8179459a2e4a348fcbf56826b GIT binary patch literal 259 zcmeAS@N?(olHy`uVBq!ia0vp^AT}Qd8;}%R+`Ae`NtU=qlmzFem6RtIr7}3CCgZF_RJzJ1`pV>B^Gj3HdI*3weHgiXycml zkLgJE#+5GN73?XzcCC**xEyEkEcnA6V8}K@diKIe`VA3GXE(H-n0K@1$uZf0ZR}Sj zD+F){onRJq*~pdkDMzE4T{*}iiP=CsHlcA=8t-N%U&S-8^nC)_7)6wi_pt|Uh;7-q zQBqgu;^A!qmRye~+ORTPFF5#_^{%l^hFWc-Cj*NF!}2hzl5?TA?12tu@O1TaS?83{ F1OSY_S;_za literal 0 HcmV?d00001 diff --git a/install-new/theme/img/ajax-loader-small.gif b/install-new/theme/img/ajax-loader-small.gif new file mode 100644 index 0000000000000000000000000000000000000000..5b33f7e54f4e55b6b8774d86d96895db9af044b4 GIT binary patch literal 1849 zcma*odr(tX9tZI2z31lM+(&YVk%mZ}5P~KlG2s=WSbGzm0!x7^P##Mnh7t-jP!X0Q zk_SQ}Po-L1tlDK;6l?(>v)e5ZBQx4|Y-Q?nr@Px3?9h(3ZWr3^tj=`TP57gKr87N$ zp2wWee1GRRCwo_xahnw)5cxNPJbCg2L6DV|6`#+yw6v6!mDS$f9-JvFD^n;GQ&UrZ zzh5jCkByB101O60U0q#p_1BM>Cv-vP?&s4@g_((4_1L=L$(a91)0=J91Gas#R{McE znYG^9*0A5YZ>#;~+Wkn(W5B0^yELIYLP!K}mB~<)AM@1&nqekynuaEGqPrzoH|KodRXJy)%+w_fu3nE5>@Bd_b zqC$EQ;{c`T&?EsNO|igL9gC7Ygxv?aQUEXMq?~>wg{EyW;VcJ37CUF#HjrT=KQO_* zS>M9yydXk18D(+QDJ1>r);Lav_uYKp$T?4vr{Q$lTo&pKv^?(>L-)G2*lwH!Ah7k? z7oH<8h-(KTKt5V6$8gF)C7Io&P5=SjTh)=zV=E2EUhQZP##L8S{d%UK>>+y82>+FV+#^BzW7u3F)Bb>=lYQ%%j`F>ASe zo*cw@V#u6T`A2He;70mR(V&iV&-7{qP~=SRf&jm9-T{*ZeZ}$rd0#6c&fLG^xJcf5 z+p<`wJYgW+_s*V{uI$nMB;%8`S_3>PfGOj3Rq}@Cx^+j?rk92fANSFDBYnOqQ>Vdj z)(|$AhP4t&Lb=Gvo2#3Gl%9<=Gv`Mz?Po@P4iLF!x}GUWJICDlFk-hS^Whyh7x~VH z@0vD1>HYD4&e+~yzS*-sFR{9`{QEEZO1zg7>R&7cHts-6j!xHVdA8eI+ZlVzd%`es zJT@$#GX(gvCJ1oJN%yLBK}{V=V;seo;!w|Yte!W1%5qLNFWqvZW>h&IiH+oPT=b@E zPhGzv5=(Un*X>v`>%8h_nj^NdYcE6NHS_ifkCV$*D)Tqrbu`s;<=t<4 zAHNqNV?6(g<1PY-w@#I-WYFViz?9TrkMr)u0g`O`u|>T;k|2sV*YF^punvT;$SuTy{j3Gv)yqD!R_CF>yR)MzmmYS5v+~R zXAdD%ng9?df;wd8GxR#%3O+gz};Vo;)sK%Bj-q>Oq%R7JU-KD?vYu>#2UjaDo z&8$>5xW~?KPD_#XFToU1hIb*VOMidUr6iYiO0N|i-7s`T8!cFT`rN!^1Pt78J93i6 z5HI1wIM$94m{3SLDvISDe6$ZG1;eq_D9RTaaC>=cO{@Bs>$IlPCPJJ$h$)-3vzNUQ6OsN#_zWxey!_9%hxwH2_dEJi=yY|1c7nDm2_Lm!Cof8-R_+9UkS zcBE(o47yE)oMR(Q=dp1a2wTX5KvvGyLqlWTa7V&!A*|w|)ax~1_~aJ0=_Lilg*0iQk7#ZD EAHN$8j{pDw literal 0 HcmV?d00001 diff --git a/install-new/theme/img/ajax-loader.gif b/install-new/theme/img/ajax-loader.gif new file mode 100644 index 0000000000000000000000000000000000000000..d2afc328e189bcbcf1111052902cc7e68f95dc16 GIT binary patch literal 11314 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 T_TOo7@5}E`Ez5`Z%JKgKG4VEy literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bad.gif b/install-new/theme/img/bad.gif new file mode 100644 index 0000000000000000000000000000000000000000..adcfa44bb1c0c5e7d25234940b80213f892cf80f GIT binary patch literal 594 zcmZ?wbhEHb6krfwc*el+|NsBruU~(E{`Bj!hkx(f_;cm#&&y}Noj?Ec^x;3pcfLP$ z?A?jOKMw7Eeq`s*9qWE*JiMzh<_5pH%yHQtyWebzgcLesq_9?5%v)-SDBi>_bcbyXKm2 z&DpP-Y97_qJg%#GQCae`D*tmu(xcxZq=1!OvqNuEhtROALM%8F)Cw`+7{kvvBX*pbr6`Ga8Gt$SbKTD5%VE=w}enW|dV?*V?CL zAml62q$?z%?s)37p|YM+lNFzWMw_RloL`fT$i8cKH=B&q6ihsyzwp#Fa&Hp$61TN| z>FFlvFVnv)rDTVWq=ARyM0xR`9}<(2n1wWWxpWy09dYdtFkPh6nc=~}rszFK P=AnbYBu}SC1_o;YGXm6g literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bg-body.png b/install-new/theme/img/bg-body.png new file mode 100644 index 0000000000000000000000000000000000000000..ce9aa4c976a3ad579dd4251357bc21cd59f3bda7 GIT binary patch literal 143 zcmeAS@N?(olHy`uVBq!ia0vp^AT}ol6Oe2{( zJaZG%Q-e|yQz{EjrrH1%8G5=nhE&{2veA$}dHCqhr?<=5BpjX@J)Fqw`FJ98(aaAg p7DSr z1<%~X^wgl##FWaylc_d9MV0|RA+BG(eEIzO^V_#?fBg9I^XJcR-@bkP`0@Ae-(SCe z{q*V6`}gnv{Q2|Y!-v0r|Ni>*>-+cb|Ni}Z_wL>Q|NoD$H}U`tG4XV945_%KbC6T4 zL4m`;@sQZ|OMCt&w*H?nQMK;a^j?1Zd1f~co=)3!SnS@LHGdX&!>s`;Z_b@WQx}80FKzAUzDmwS?JU03+W)@y zB!1`Wi^Dg@Q|8n0=(|$tMcQLeFPi(U`h)pKUU0TB=-;cX9s8YGvuAmZu|9ilcndSN zoYRT6pF07*qoM6N<$ Eg4R-r>;M1& literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bg-input-text.png b/install-new/theme/img/bg-input-text.png new file mode 100644 index 0000000000000000000000000000000000000000..777517706da020db945c673a245be14d94936397 GIT binary patch literal 141 zcmeAS@N?(olHy`uVBq!ia0vp^j6lrF!3-ofN0qGwQj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>JiueP3LR|m-`}g9-i*Mh)efaR<*RNk8Zy%HZr9?bk978H@ mB_*UJq$MOJBqlI$7%(u{F>sgEzjy$YXYh3Ob6Mw<&;$U(zA$D0 literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bg-li-headerLinks.png b/install-new/theme/img/bg-li-headerLinks.png new file mode 100644 index 0000000000000000000000000000000000000000..da414a8dd1cee6ba61bc069c0ffa9eab6a5669e9 GIT binary patch literal 233 zcmeAS@N?(olHy`uVBq!ia0vp^OhC-X!3-pgR@vqPDajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_d9MScN3A+7--5dpyw60!=(DJfd|X5o=B$;l}KB4XTp{EF(@ zEbQzKZhjF_vF3Je?mj`BJiKh2TwZ=5tQ;H$=5{g)szPECs@jIm9{zFhiD_wRI|@!+ z0-9{->Eaktaf{_3J5z%K55q=hhqgtVZvU^p(z5BLDErA`j)R}Hd{3&+7sy|hXtU;M1&U`a$lRCwA<$X6DFFc3r0F~tS~ zgiatq+W#(@m}2zv&Xw@7?<@h^w3tAbqUOzZ#E;6#Kea`t5wm6*W0C(~Nq|^-i|FM^ wbs7N!4>E%;=0(1N!UeKJ!v|S@PVNE>00CqX5dI`GtpET307*qoM6N<$g38l~DgXcg literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bg-li-tabs.png b/install-new/theme/img/bg-li-tabs.png new file mode 100644 index 0000000000000000000000000000000000000000..621237b7b3071edb45b29243b90c7b82cce7f1f7 GIT binary patch literal 139 zcmeAS@N?(olHy`uVBq!ia0vp^EI`c8!3-oNcFQ~hQj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>Jir4~tLR|m<{|{t_9=coyq@+Dv978H@B_*UVFuA!I9OO`w hNYt4iA;8Qc!NBOsAlR#Ubq-J&gQu&X%Q~loCIB=-BuW4P literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bg-phone_block.png b/install-new/theme/img/bg-phone_block.png new file mode 100644 index 0000000000000000000000000000000000000000..df8088484e6b8ec234fd73fda02849accd6c449b GIT binary patch literal 1006 zcmV;Am)Q*4EaKkB^Ryjy*j+SXfv=K|%8J^7{Jv@9*zdS65?W zW6jOYS6N(te}7?NVQp<~?(Xj5;^J0TR>Q-?US3{(eSOT#%s)Rr_4W1m`1tel^Zot( zT3TA!+1XiHS*@+DK156$ASBh*)$#H1Wo2b+Yiqi?x?y5tUteF7laqUUdpgwv|=H}7S(PCm^udlDDsHkdcYVGaqhlht_V`R$8 z%DcO}rlzKvnwn>4XN-)Dva+&>h=}Ls=arR}zP`Spp`qpF<%5HR($dm+czB$goJ&ki zw6wIhx3^MKQv3V+e0+RKN=i6AMD+CZ@bK{I>FG*KOwP{Eb#-+;LP@T!uBoZ1SXy1= zAsi-N&r&z9K*D7b8` z#DL&B30Ur{01H^aI&)atH(oqe)gb3QsH*D1=Ys^0#8|#--Mq1_NGF(@u{u+hPT{^U z^GlZH^X2SNpEZ*LR|D2&q;@Cya^Ay>)@bF(TKgu7j!`D`uh0g^l0u`frE*a(jHJ>+3BeJZH_vKvjmg8`SPf_N#OxrYIsaK+d9-(FBCD4Zy#F2z&L;F3 zNS(y$@dt>Wm~X1kSbKFj955)5PM$0?7euykPR=eVS^tc?amuX!VGwK}n1?UE5WSu-HQO!~5C=&N>cQ zY2Mrfl*Cv;0oGe6iLtmSC;*T!|^KcQTM@S?1MuX_+a?d`YUHR!OCK c>R7dH<`2YX_07*qoM6N<$f^R_fKL7v# literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bg-tab.png b/install-new/theme/img/bg-tab.png new file mode 100644 index 0000000000000000000000000000000000000000..20d2f2c1ab4236edfc72ef6fb3f5920720d56da3 GIT binary patch literal 190 zcmeAS@N?(olHy`uVBq!ia0vp^Oh9bS0V3}$JR=6ABuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrH1%C3w0xhE&{2nzP{9=>rE29ARJ!SsEdcDAIB8P|KlaPNPMq z8a2~qu!(dD&OFYuSVE!6Cqb@jQvUXN3ae96oE~jlFzXP?&t;ucLK6VD6h#IA literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bg_blockInfoEnd.png b/install-new/theme/img/bg_blockInfoEnd.png new file mode 100644 index 0000000000000000000000000000000000000000..fcc8d9a2ad96f0cf9195e61767ee87cd256567ed GIT binary patch literal 218 zcmeAS@N?(olHy`uVBq!ia0vp^j6l4NgBeKbvxt`gDajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_d9MV0|RA+F!QfB*93%m4rXfBg9I_3PJc)C>(HgG*kvx&6UA>g&EMA7BvYV&{91 S>~jlf1cRrmpUXO@geCx;WN3W= literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bg_bt_blockInfoEnd.png b/install-new/theme/img/bg_bt_blockInfoEnd.png new file mode 100644 index 0000000000000000000000000000000000000000..b23dd7c65f5a6d9759fba5124dad104469d52860 GIT binary patch literal 885 zcmV-*1B(2KP)001Ef0{{R37>ucq0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUzfKW_SMHYSr8=eV-w1GgZ6BCOD42J_5 zp%<{;uOpfYHl`5G>BGq8!Z(C6!PvkanhFt@1@QLo33vj|>BPg^zzdNB3UdPvoCH6w z6A_&SJgyQJp9eOp5IL<86P^YjqY5mj4Ku0_CZ!A+pa?0Z3^1t<9H9v#qznK5|01Ib zFsTm}o(Day5)PXL5u61Lm;`6QG8LN#@%Qj^#d7ia@Ckkc3zP#4kOK{f1n>3l6P*U9 z+K3FA11XdYFsT_9lm{rF48-EWoYaU6a0J2Fzgf9FV7fp0{rWDZ4bkkyQl~oL^50;+ zEJdp~2yFsAt{#fIgH5MIqt}(o<-_Oo;lbCyJFODI+`z`(!H>*^!r8!k$#;6kTn>8# zB$5h6i$OD~4=kMxq}hfeq#-}96FICAVzEjUg9aUl2uQO+Wxhab!AM-RJv^!sGo}wX zkupM@HA1iy44VT1mjG3`8UvRB1(*R+w;5Eo8V8vIQMMRGu@y|T7YUjJO0yPEwHQaT z7DKY!Q~&@0i%CR5RCwC#*I8fEK^VpHBLWh!2tlPSmStEVDzXH$VS#CwORJQ&FQAB8 zn%cr!mzh5by@hAa_i8@B+jB89DCNd~kV(dK`0$HNgC~1r8XS;u@Q;jx-((#8CF7t; z#=#*O2U{duwGa%t3&q|}!8sDG8jM($*Ec@38wNSpb6`}OYm>QfmbBv;Ra|NiOTX?u^#7$(8WlUDSr z1<%~X^wgl##FWaylc_d9MQi~+A+G=b|37o)jK!-}%|H=8PZ!6Kid#tuDG3Z51`G`B W3{0HMmrel6FnGH9xvXuJ$KMP(B4t2M4#|f^wT- zs@&$fsVw*ILZ(0Z!jzM%i1YiAK`19*^Gx#18o!*}TP2F)wQ@PR%s1pO-}Z8HlX1vj zt+3_fz7;XYI24on4$fVUxz|Ll_CIc}C-+pibC#8=n0yjq9fmAS#~>QMuAUQ@#PmFW-Wrmv6$c z%X605uq-nt`|i|{2hPPxU5vKIvr@)HvIZsf4MgNhbu{B^0+>`Uw5gv$m7=WyPg;<^0+PkzRv-Re2#%XT#X@-$CR~CEipLcF%8rDsh0*=o$-~ z+&9gaGh(@~@z^QM^5nk8=5o*0@6M>@L)t7yARklvj+@Ip<<^<1T$7bcR4V~ zZpq38%US-<$PHP!WI3I%oaHQMIm=o8pUb&!VL8iL&T^KsoaHQMIm=nj@>F@tyl?)2 i#b@A?7dh4Z6kq^ZpkntGQ?_>i00008U}fi7AzZCsS>JiueP3LR|m-`}g9-i*Mh)efaR<*RNk8Zy%HZr9?bk978H@ mB_*UJq$MOJBqlI$7%(u{F>sgEzjy$YXYh3Ob6Mw<&;$U(zA$D0 literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bg_li_stepList.png b/install-new/theme/img/bg_li_stepList.png new file mode 100644 index 0000000000000000000000000000000000000000..98615f41dfde439e681a8b365ee13aebff7b78d3 GIT binary patch literal 2426 zcmcgt`9BkmAD%0s6#0If^+^#T_Z1Q$N78I2)yF4fiss6ZBgd!uI7-NUCM3&Mj4?F# z9Lv3#nH|o}u(_wXKK_dD^Ljnc^Ljl$KJWMI^&|ovtWOKe2m=6s)3!F2pku#!%swH$ zWBvB=4ei*ZgRNYG!Tw&sFWp~20p_0m9?*-nzV1(c+lwzs$0Z1&>f;_B+^^78WV@bLcr{_O1R*4EaiL2D|NN^nac5{cB<&%b~F zW>&OQS)EHuOH3wnXJ==6dU`(d$NmCDW`7M@DNiMHp;&Y27^PTbD3-siImlENH1y{85yC`XuG?+dwYBH z^Yb_yjzA#H&CPXnbffXj=sLW-q{Qag|aa~7#bRCYisN6?Ikel1_uY( zZNmct0}BfaEiElQJw5b|(Sw77>5v=@1~WN1$>DIu$Hxy352vQ4+S}VZJ3GIQ-p69G zKY#x0@9*#K?na~0jg5^ze*9=^YHDt7Mj#Nat*tdRHKU`WNF=hMp`pIMzOJq=x>Xnl zi9I?x`t|GAag#(zQta^o0)jyf;N$TB2|%N}#~1)0XlZL{?i4n)lCyMQ#`bJ`Bx^-kS(h7?paWOYmaNY+;oG))$|d0O5Invo)j8#? zl`{8z6y>EOaaJa0*7c514O|&Ymr@jYoqd2!v%`AxfX#zUh59xW#n zaVlOyA(oS>Yzv+7b&3USY`154))?G@Cf7t;_UfMw`#1qX;=D&v}*MElXGod{Kb4#dkype zJ(&XHo6k~p07}AePaCNOP?rWY% ztfG(^QOnB_0TwG2-+PA*LQsu9y%!+0J?*90q4JHL}aA>)@{u;b{xzG86EIn+GJUPc zl3uo63(J-L3I`3g>o)!=_w@_$GFaOdpXR&}e4aP?_z3{XxsJh7@+g5mgScYoN|23y zFs#~N8n}33o^%2z@=)P#!Y)H%u*^I1k!s&p?2bt;d{}&Psa~96lLNTh8wZ7bgiZ6< z>%|R-t!jS)#HD|*s>JTfXM{>`e0K6KPclQ^Ts|w6e7hFgWI7$!Go!q!eYL#pI;i_D z?+keU*yUm6%w3)e z-ln#S5w)9uXoP&O7pBy^84rcUbo#mFefJq34Ij_S)J;eWX=-4OBQ85C@h$Z9m>Fx0 zrvk&X&1e5bfMegIQ3-Ts{YXIs77mLx*Qe%-fUUz8=ygNtrFFk&+>-sf#8h=n&f$z& zl3W-&7;6p)xzsMkT_)FRkRb08B}{G@muk+JGA2b9=U(DplT!>?yo%|q`)f{PzU5bN zdv}X0xfD%1ucMjqj`x9?_N;6Z%tF>Zr5a9FNo6IzI-Yw=CAigfw2wwgRnEJRa_2!H z?##Xc91eZ|e9L;~FGG0|794)(Fc~bB^+=tnt?fh}qp-pdL^&$?QD?cqq3N?7naFr2 zPb4vmXd`@0tho)!FkN}GgUKt@M$&<>!s^{aBegc)odFUwU+*5w1SNXs$zZfLviku- z)TB8rDeCb&JXE78J;}8Z7^rvh8}Vz)udlSiL}z9YP=|gGXH)>m*CbSQ$acWa@3`mw zBw87CzP;-}1N#&lwAkZ4mIL&jekga*MPVs*8Ohp>$7F+B4)-3sV`t6zKw70%BIcB7uhPM7+==X zH}yMeOUiyV^M_Yn7xaW|+Tifb1mPp`ht0J&+}PK|6AeQ>!_5?mZ<1=hoDA|PBBUoG zjlEPN_Q4p3kF_=xa{=X-o`fkAd7Pjzv5kk7;llHT62}qjtl4W zi4BtE!eWh`s%=HJ15S)5Ez?Rp#Luh1`LxlFuqVzAS%lVXm>@ZX3*c@dRuFvNwr66X z@aIZiK2iG*@^e2sY~NX#EApp5jhzB;2mmJpb_9u*8PdUDJGbgDt?=a4oo0lMoiqiS zfZlwZ?x#;<1{N`PQ9;(kbV{?<`@rPySCj4FRi9#X3jPV^kHB9FkAl3yuyal^rd%CT zRzc-<0!3qxh93JR8VPmV0;T)L*3g1azyqGKw5pwuu~~5ND(E{gyiD$9u literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bg_li_title.png b/install-new/theme/img/bg_li_title.png new file mode 100644 index 0000000000000000000000000000000000000000..86b2c833cc6cd5941f51335d88cc3803a5c9a10f GIT binary patch literal 204 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{O!3-pi`)%{( zJaZG%Q-e|yQz{EjrrH1%nFaWSxPJfs{mYjxA3uKl{rmTiA3wf+{rc(Cr}yvQ|NQy$ z^XJch|Ni~;>({@3|Ni{>^X=QW4gna094l_ST~LQ3-d#6y4QF)%Yo)-f`!s$_Zr)W_iI>gTe~DWM4f D*d<^< literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bg_loaderSpace.png b/install-new/theme/img/bg_loaderSpace.png new file mode 100644 index 0000000000000000000000000000000000000000..f9da304b50c7a75870fead62ff4acbf2aa283add GIT binary patch literal 109 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx1|;Q0k8}bl$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1G{GKk3Ar-fhHk5q0!y}Nu!1Ru>Y?;lXhd?O?Pgg&ebxsLQ E09i906#xJL literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bg_moduleTable_th.png b/install-new/theme/img/bg_moduleTable_th.png new file mode 100644 index 0000000000000000000000000000000000000000..3c5db2d44852e0827d21af1e6f8889d389eaa465 GIT binary patch literal 262 zcmV+h0r~!kP))&CSi)+S={y?ep{V>gwv&*4F9i>Ez_(@$vED;o+8k~= z>SQJwi8A#;!I&9i<{KtH>@V;i)Hn7f8Z|MFnHVLS8I6X`DGbJ7vn_4u^;{G-O?-s% zaK3N?EpOkC@0@$NWyP5S9MO5K9M(y!IFQDn4%T<9a-mWDG`PwCyc<||W7)Gg^VTA? ze;$BsJJ9odvTcM?H4dg}#1pZpxc#D%Sxw$6RCF5wSf^g!_} zTkmZC&|yB+p1!z{$K+HMIa7=~SD>@K6D26&NqWDJ45G_d<>hq=X13LAf$zAS>dg7gVz^x9xH^zU z3SW{#FaV=sQZyhi6S22J7DF%+icVlALXw3y1cUKuK7G?9Tf*1z2Zh5KBhzAHh)CgU z(7A@K%wPm&Qd-$xU`(L><-~!}amJXGn8|2m>?jznfvIW$fgoqX6l0*PdKOws$Gu8yxnd3_d=8 z4Hyu4=3na1oBuo|a~f-koEwV{u)e`RPs#ieU;tpY#8ev7&R+lk002ovPDHLkV1iI= BM_~W} literal 0 HcmV?d00001 diff --git a/install-new/theme/img/boutonpt-on.png b/install-new/theme/img/boutonpt-on.png new file mode 100644 index 0000000000000000000000000000000000000000..17106acfd54af76f8285909d9c96d2eb19a0fe68 GIT binary patch literal 714 zcmV;*0yX`KP){D)P$b%7tgW zNr}L4APyhjOU+KXRyG5#UW4y95q1J$+W@6#DlE%{lNy5ms)YK7^*o=x!vT5f{(tVK z7caTnT8OPrU%-Npn1QiKxHmval8hP{%Bq6l%ml`!C*AVn7i9jDR2a?O#|yb-P>Kqqfq z{R@WL#}pltn5FCh7z?U!C23%EzOGrKV-g|#K*p#VEJXt%CY*`&;4eW})IJzb)pf_x z4X|cMm=h-#LxX0TG^`Pr_ZYFWsbixEHg<$Nai03e(}<3C!4wHhe&hLS_VoNLTEE^Q z+VzD)F-SgQ!I+=H+R9sc%=fOA?@wJ{xP2nD(RsawXxjs8v_$3%oQ4F+HXx5V&@N8n zyVAh=qm>7_a$%{rM_%R=ikCU%PA<-2xWS+{10WDr%Y$9JWCW&)-?oI$FN>&_zS5ol wayM`O^Onp7UgN^KL(vajtN7WPXGV_ literal 0 HcmV?d00001 diff --git a/install-new/theme/img/boutonpt-over.png b/install-new/theme/img/boutonpt-over.png new file mode 100644 index 0000000000000000000000000000000000000000..851be19fe9e14d395149ed2d81e703f1b026111a GIT binary patch literal 701 zcmV;u0z& zxql^hb80v{fbHNLloGAKDsr!*vUZ-9gB0sSrThtV3y&UXFt@Dn+x87zDYN-&fEQs6|%VSaiF_l(o+UZTG||fn|>$BosegabbXVgS+k6SK!+e-!f$90*3O%73yf+8 zDFSFLwF`_;2nb9xz}UONa0SU}zC^ELbhT90O5{oeG%`5(FBtAoD~m+M1bZrm`_#%J z2Sx@Gfk$AXAj5(xCh8TVq}|;4D@Aa^-S_LAzh=<}Q?-<8Nar^qT$zQ=5%_dST+)|Bo1~R!O-!n9wh?LU(YsAFj?z2 zGkU=}(LY=`H4gP|;@IG*cJ2Sh(!{NQd%&6kQDRgmJS6z=j*bjoBoq-84C?z9kw3CCsy|HUWP;sm;Q)FUH zNN#&8v?aEcf}=;g_3=w~g&4*0>(hIgIHfGO%4S!HQHZyD66>+-ff5tLB*y;|a}pDiC6;Hzj1$DT zja~P1V#Wz#ew5`wPOz1ky&XI)iL)Rj@ex4%y6JP*l5yP}ZvsV%T0000RCwC#o6SnYP!NUhO(uV>Hd;jt zN)b2i)UDvE2=ys^6J7W&`V6k(rqG?}(p?E^Koqfx(W=!Mdmq4M2F?ekxpaB>7>4H7 z9-2+#SmW$)GEU0?P%lQDk~28|xf;qB*2%k@%(wQ_PL@Qo4f4alLsy_qe2+gTA1`lT z&qY~PPopyyxKA>1lXlw6wl`8#1nP#I%F1GM0L?TWlh zK{Fv#0<_?KT^4y`&-W}U0a|dr#^f7oJOg)uvK^S6rNDZIEaU~sRtNDm;JND?{4xfV z$;-}C$R7dL2B3`aPhRUA;@Jy;DtX1*hz))?zj#C)KojCEMHW*R=!9ad3_z{Cn7lx% zyjU9m)&>BuHURM7wE>eCDBgMB`5B`Mpp3D+q`2op2VDSV+{x?VoDT;a+|B`7m~e8r zRW_6ZXAhkKCFG0MX+bo-QP$_&nCV~NS2#212h@yL&Mjv!SDnbfHNOH300hQ5dTOk| Q0000007*qoM6N<$f(ba#U;qFB literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bt-dsbl.png b/install-new/theme/img/bt-dsbl.png new file mode 100644 index 0000000000000000000000000000000000000000..4be0c2aef1967d9a29a94236bdd94405e9a517e1 GIT binary patch literal 248 zcmVMc3EY&CSi{=jZ9^>E`C<)6>(? z(9r7Y>e|}c+1c6P;NaZc+}76C(0*3+uPgd=;-C; z<<-^I($do3-{0))?9b27?d|O_eq^oy001;eL_t(|+62Lc0e~<703hskcJKc;1yS@` yRWgTE?lc-qT8~9%S8LF_1clqI^w}i800RI!*a6Wgp{0BP0000aI zwo4kUaI zwo4kUFVdQ&MBb@0O`g|^8f$< literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bt_off.png b/install-new/theme/img/bt_off.png new file mode 100644 index 0000000000000000000000000000000000000000..9de735db7da53c3e22a6f921dadb7b5b029ef466 GIT binary patch literal 251 zcmVgwv#)6?MK;OXh<%*@Q^=jY_)mTzV z2wtm7>(I-c28BuEvB>NasYvWHs@-O#&xY<7U;snc0q}&l)aL*I002ovPDHLkV1kXE BhGhT% literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bt_off_hover.png b/install-new/theme/img/bt_off_hover.png new file mode 100644 index 0000000000000000000000000000000000000000..a8507e95d156700971cede3e444c204a027aac90 GIT binary patch literal 251 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 literal 0 HcmV?d00001 diff --git a/install-new/theme/img/bullet.png b/install-new/theme/img/bullet.png new file mode 100644 index 0000000000000000000000000000000000000000..1da7af138e3986c3cdb20c0ceaf3147dde4e3e03 GIT binary patch literal 1265 zcmVPx#1ZP1_K>z@;j|==^1poj5AY({UO#lFTCIA3{ga82g0001h=l}q9FaQARU;qF* zm;eA5aGbhPJOBUy7<5HgbW?9;ba!ELWdKlNX>N2bPDNB8b~7$BH8Ae8p8x;^OG!jQ zR5(v%l#5RkR}_b*is8>_+JZb5ide;(f&$f6Tcb9OtraE31tM=2$bty+SfB{Hi;ION z3&^sI3xWu^`q&79Nq)nSNC7@sLodi>LlF7{6Ilu2b?m733`T2R2 zSFY#JpDQaXE6UQ+lCr$KtUP=6Oj)~jt+H<2I>p`HU2$`BQ`W3m^QufyBy9D5`0ydq z)6?9(eVeYH78={jscp-_(wd5;MUSbWqSiDNV!$5!4^qjwyfa&^| zl=SSOsCO47eY-K<*pFp2lB)hg!`eOh?5;* zq&YT`Y}+920MeZs$-K0Qyzf4s?AmTjefvl=2h!Hrpz77y%cw?2M@3z9I0We24+qI< z4<@xSkh3l=ZQ~`Bw?z?Kr6KwJyJWO%-@-Q4kWvMGpG7LBGaWLfrhhNTFKrR&1rTS^P~o#{O!N0G%VwC=&&eSj0qTSylkQ|dItp7kQ4z=JIF0TzCr zR6#Qf6BN`RBv!zZYc*sxZRAv^gl$$gK^Y$($58VH#?JlZINv8#cucDCCC2DQj^#6c zd-_NP{qkgvr1Eegi#<4I_9jKZj*HeQZQIF-%1@9S<^KKqSR5xY*u%(g4nb$t5P!}K zZJ7t7Ke|}vU!E*3kX5;li2S#RKE0lVZ@oyh`jY1irobM|Iook0N12_S<@!KBsir`R zo5Ru9i?*orCg!v!XD(yc?QADRJ%)knJRyd@wg;sP?O%mtd1{Y7(GSzdy-ZWq(;--*TKDe_g(_M29pai_nDa))mZk<(9jTrgM;c*e#`X-4<5XB bFiP!z&_mQfi~x>_00000NkvXXu0mjfzA|AG literal 0 HcmV?d00001 diff --git a/install-new/theme/img/favicon.ico b/install-new/theme/img/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..883937325c4b6ac99389725577f2043aa60a20a2 GIT binary patch literal 1150 zcmb7?-7AAp9LIk{b7@6Vlgtfw+FwA)g)3Js6jx%F3m4ud5~U;&iVJpQxzG|Zv$VV= zgwfKNZC<7pt-M8~u;Y6kJ6hW_&3XDfzs~pf`}CYT50L_oN=10*Qhf?hCJ_|?L`Z&e z6e>pVKkMe|S$Sv=I&4P&#ilv1>^pkw`Hz3L_b}dDvCq28_aqj_E`xvhSra;i=zEUu z8;0wgA>r~m)#d&QcwaKaOmxj&YS)8X&vTGXwz@uMhkU=^=Ke&piy04gwK=B7q-dA# z;r0Q>{k5Q%nFqXVMCWAvRSt%;u<1TGTe&@Dm??|no4C*6zOn6u?O1QvmMy?+cAu1m z``S4Es_Daxu0;j+GXZ~F*0&f65^(t$%yK^Rk_7$XIDU14ev6#1wiuM~^FS@=08L;J z%z$%n0bW6+oG&u;HJ~D5Ux>Z*zv14JoMb}Uo5$7(I$e$d` O268!G@`>Jyh`s^lVQd8e literal 0 HcmV?d00001 diff --git a/install-new/theme/img/ico_help.gif b/install-new/theme/img/ico_help.gif new file mode 100644 index 0000000000000000000000000000000000000000..511538f8ecbee4bc19127abe59ec4f3dcff1254a GIT binary patch literal 1246 zcmV<41R?uJNk%w1VITk?0OkMyG;nTltQS_A)mfa@9cH$o)A`u%67-I~qxn!@EVe#MKz@J*D_X{g+c!t6GK$a%Eo zcC#An^ZG=M&RdHVWTo3ijL*pN|6QQiVxQSyqS|w-+cSa3SBfP|j96`~;2&+fON-5( z(D!bp7Hg&6N|De+k zut9{%DR{v_ip)@!(^r?#8(^EX;{QX8%|wdLFMh_o>Hp#F_hY2nEPBI7kI!MG+_2yM zxa9vXc*LB}`%jV4d$s2+b-z}f*bP>zVxruq+W$<=4W;ZDugprbiJvRnZ4G=9-6A%_JdOkNjlapv|1}|Ap zNg}Qb3rSBc76JxsXr+S(L_1PYA`l}LE5$2F0~t^)4OM*yy1XO_3po`sGC)k*+dwjG z5D9fGThNly2_j-LOkGG7@bO(0Ofn!vRC>>mr#o39OMp~hLoi-Ef^6uGcv3?FE6w0UBN zSgL#fYE(&qCXJ34P*lt?V&q5=4K^dhWH83;pA$hm^bG^T!j2nh)R?ibz=n|~m_r0H zLE+8}4`CQYu&LoPW+N9095J9KfEhU=!oZk4yNQR}P55@OsboeI+AyrH4&a)y5iJ*z zCr1tg^KP4SnjlZ!yuc3w#Letk(8Pw2??P;Nzu@6{2M{qXfDaF&00Zo<5iEcq1dRRr zLN1uF*#Y_e|27oB27G30ki-ZABsf5V2@2tWO?;FA27>}DD8K^~bm0SWItUQQ1{Xdc z;s7EFfQL;cTu7pb4-7Cs4OA#_LjY=Uv4b2F3^2luJdQ9x88O6Ah7~>X_`n`u5Wt21 z8fm=YLjzENFhU7bQaOSZ5B}i*kyTnL0R$Spkp>zr=)i&;IZV04njm0dg;Q3Pz~&NI zlwbh~E9l@tE^46Q0|{{;u!IDJN&vzGPCWoZp&)>e2LcNCfPxw*xd4Cy5+s0t1Q>LR zffHFe;6$fhbV>!71OVWIIeu`k1{phKx`!8Dh#`g-AUNTK1hlH4f){l_zy<+!tO3a& zXas-*tQaz*0uRvg;A;&v@X)|dQ4otm0J#uyfU;z)5W)rpK!Cso)Hcw-1_)RH!2>J! zV8^zsdaEn|K6DWR76`OZKmjeZ06_y&$UuM(0MHvv0BfM2g8?g4(M1>D$e_SG3J2?e z!Wse8YYGQ0;P3$#5Bp%U$vSZH0S+#3(5)`JsNsSeB7b1B%{aK>f*KyfjBI4Y1x@3a IFb4tvJ2E36-v9sr literal 0 HcmV?d00001 diff --git a/install-new/theme/img/index.php b/install-new/theme/img/index.php new file mode 100644 index 000000000..4e2611d37 --- /dev/null +++ b/install-new/theme/img/index.php @@ -0,0 +1,36 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); +header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); + +header("Cache-Control: no-store, no-cache, must-revalidate"); +header("Cache-Control: post-check=0, pre-check=0", false); +header("Pragma: no-cache"); + +header("Location: ../"); +exit; \ No newline at end of file diff --git a/install-new/theme/img/logo.png b/install-new/theme/img/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..8275cd8762cc8c982f24ff4b6c141c8e2692696d GIT binary patch literal 4431 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 literal 0 HcmV?d00001 diff --git a/install-new/theme/img/ombrage-bas.png b/install-new/theme/img/ombrage-bas.png new file mode 100644 index 0000000000000000000000000000000000000000..0451e3be52db1d686177f106c056d5368dcfdb4f GIT binary patch literal 342 zcmV-c0jd6pP)10000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUy_(?=TRCwC#+`Uf2Fcbz*CoSbil^B?K z|A*_uPzeDEA?056M#?+*9O-l7!Hc&~aXhrvUMp{r_j>01CGyY!008>&8~KV{BOj4V zJ+H?YZjryp5}6}YB&GW0%Xzu_3 zfR5zJyzQ5!pDIy#jBg&QByD+Y_e&xUmBHQt0014??u5wX%Ra40BHR?xu-spBme*a07*qoM6N<$fEaktaqG=FU#>$20u2|ptZaI4iMfI)TyM|+m48-V zm6X`PvF`4kM*RskLYJbmXJ_=ZX{Eo|_-66H-pYa%(R*v3O`ZMt)y_Gp-WF>UR?g#m ze)ZwvS;Bf>kI2L>j(#L^T5p&8?Tl6aJjuDs-s|_jJr1-IFZjol&&bBmyiLUTipU}z OkWx=qKbLh*2~7ZBuTwPu literal 0 HcmV?d00001 diff --git a/install-new/theme/img/phone.png b/install-new/theme/img/phone.png new file mode 100644 index 0000000000000000000000000000000000000000..862e85be933076c3fcf555727b1c8640012bcb76 GIT binary patch literal 697 zcmV;q0!ICbP)gqbQ00wF@&i@QA*QHP1$jb z4lp=kq4)D^IzF~BH0|=s7eXLRRYLL-%YwJF_s~r$c4iU!&$W$UX|3j3a|2&zrKQ9& zjhWNc%@jq?huhjKx!p60T%pA6n!)95N+?ju1+F;>t)Z5RR2=|wU#@Vju7<8jH$n)H z#v+QWl1DyL09|4X{k=cQFS$$#!`PfwY)&gqS zIP~$Fd5_CV*ZaG?Y=4MIK2N+d9z*FH%zo{EB5VCPP4yK_WS3z|%OnEOuFF6xf6J5` zuM`4xtQlkE2p@U|Sd)8;Gy9K_5CqKjVYR*B`h5#I1`S%{C5&1PDuBsOTARzb(P1ZH z%MMl#J>#8y0s@BzGQtgw)Rz~{Ct|1V`6-%4cX6WNI0-W?JbqG(Bkc}nv-KVwzw@dt ziK{(h_{QMV*oP1{W$yEk0?tO-#uC|Mt|TQwOIYktO7nA&4LqRR?G1{=n7)mmfVUDr ztVFF2UNGh1#3iL6`!VBljX725lQ*MYl&J~{S+Z#gKT8ChhVDk!Re;6qV!Ur0wKUAH zRo`fLm^qNaviQqNM`1d7k90=^EuGyU8>HWTj0?rt$d^wHsQ8ap>&Yv8N}k6wFB`l7 f@!$P!D@Obqdg{q6o(owq00000NkvXXu0mjf(ZD=O literal 0 HcmV?d00001 diff --git a/install-new/theme/img/pict_error.png b/install-new/theme/img/pict_error.png new file mode 100644 index 0000000000000000000000000000000000000000..1995f45235d5350010c7174e6a5227199105ef18 GIT binary patch literal 450 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbL!WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8_5hy{*KG_8`x6pg&zyNYE$wt#+RX(EZltAso;mYQTG|f= zhMzNMew;b;+sv8g)6(9~oOwAd?f!xVzvj>XGk^ZagoNJ-33nDOIFgWXG9lqxLc;&~ z^ZzF#e4ju6HUq+@Ykb&VN1H(}UhL;QsD;OBoGcY`2VEE6#Fq47d z43Gf^TLQ#@YzEzuAirRU2yrCC()Zkdff{Fcx;TbZ+_LHS6lyl$VNrLuq4>LR?uMI; zum8XA_6hltxMZG|EQ?ZAO{+S0N8e5N6X*6>lvJuexjXlR)TzX!GJYF6w_c0vJhDi0 z)-g-x%L?O_a6^yukiF%Mx#N|==kxgd&*Jnph0b@e z^&+kr}+wt-7 z)YR0sx3`*_ny06yMw8di&(A`T)jo~W>gwvCprBEm-HeQk`1tt$|Nnvd?&AOe0Jcd) zK~#9!WRKYrf-nq4!y>DIA`0TZ(n3W+n*aYa6UHY!4`(`eCe00KqE!Q-T7HApUEfH7 zC}h)j9CT)l;WSC6A=YL`L0_Y1S=*~+d06)v+6Du|FfMmefK3ZZI&Wsra-@Pm%&Mxo z?T+MXCI%QV2Y|!*M1~wWh#o{7vm*|~;z?{a>;;V|>Ar~NlI_x`w03UWewO*RJ?FJt vtXxfqRXG+Ls~72dofhBff5-it{}EsSdvYY~70VLr00000NkvXXu0mjf3&!mU literal 0 HcmV?d00001 diff --git a/install-new/theme/img/pict_info.png b/install-new/theme/img/pict_info.png new file mode 100644 index 0000000000000000000000000000000000000000..4f8f7839a40cec773ba8ed11ed00442418311fb3 GIT binary patch literal 584 zcmV-O0=NB%P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!~g&e!~vBn4jTXf02y>eSaefwW^{L9 za%BKPWN%_+AW3auXJt}lVPtu6$z?nM00Fp3L_t(2Q(clxYZFlvhM&1Jb*f`))ikNl z(wg9=2!eGHMTvH&8!4Dg7ve8)Fa8UEfw+weSCVd`L8)0OqIA`SmSz*%se#TUllkej;&>v4@D!5_?j0RoWpTAJ6-KShGqdd>kaGTAIhy3IkFPbiW_k`_TmzP_| zxh9@4!WzwHGpj5w@;$Bas&#;E89cszfpM79+V$}D`h0zf8>&lpzmIYc2iV1{y!$%9 znS#Yxi!e?x$jH)^*)vA&2_vk^(u6@^^V<*gr&7o=HrFn4bID;eiE~XnVT4tN&PJ-C zFic4F$v^rY-wsB^8k}e?jP%s2Fv2R7$$~v$TEBgw%}58O8jkcn(4c7I2_vj3%$JDV zJvMGF=dbPoF&E_0Cy7>DSr z1<%~X^wgl##FWaylc_d9MWq2gA+A%mM$JE5G<91{`(m5?7WOq)`a738Y(Y8O^_m>*InuE*}lq@ z{{Q#I<#&SsrrTd=raY6%Sf<@oq1auk%~z-0Uzpf0;Ejm0PJwhfD z2X$~`DJVN2JUT!P1Q$aI0bK_SSpybD1PwqZ1qK&e39cY{!r)IBEG!HZIKj`~y8vJW z{JAsdp28CkHuULcVv2}APRNwo@n*vV4huXm^PvTbhyl~8d060p#*8W%c(uu)Bp8bu z8Pv?6;fKSSCV05Gf(2tm5;kWz45F}L1b`z}N|Yer0Ye%JjT}^1f&q;iF&LIqaL`DQ R3JOLDT*x&-K?S2g06Wl5Bn$um literal 0 HcmV?d00001 diff --git a/install-new/theme/img/shadow-left.png b/install-new/theme/img/shadow-left.png new file mode 100644 index 0000000000000000000000000000000000000000..f3122811fdbe6ca82162cd4689c03fd98a64f1fe GIT binary patch literal 254 zcmeAS@N?(olHy`uVBq!ia0vp^>#P)`zV*y-u%?d|R9_26Nz&!fp>00$2Cs2R1*kJi@KSC9y=j)>y@ z*(|0%O8@rCn5cc(u#@iV-IJxUrC)H{+uH*rIQH-Hq@<-vjjJDuwYht%?!`IH4tLEnBa&vYLPHz4E{sxuE-rnESx5NAP_l=pQ#?jZe zyusz8S95`j?U1wk(OR-}h2guH1!+q>ETGDL#<*b&|={j(U*Y(ZS$fn@n z;Op47y_Th%o1MN|1c|oFQEGWHRAvA6;qv_b+vVsBda9Dd*rcnp0TUi9KuqlGu zr@X+kpa1^*^YH6IPF5qD$p7oj>gMBuf`Qk=#$=fkZ@FOJ;^UVBDe>*!@&4@G=A%eX=fT_D-SYPIy@;CH+1CMDi1qmQIbd_m+Pk%;y&o+zn3a;> z($d)2*z4x%;pFDx;N6JBFaP`a>+9=oq`nJ4TXn7+(bd=X^zr@w*Xru(-QV8W+T6S3 zwaFD{@$&Vv+lkQQz~0QUui@eM)ZN(V@c!z@+0v?6Hb$D~^xX;v=iuL#iGlKycF5c!RhSH$Iz|#^7h`_+1=gUa8yFs+}rZ<^32W6*x}D1 zd7tg_(Rq@QiNkf~=jeh}T<_`h`}_OT%iz!8=diG_GkO5*-Pc>30LsVf*VotR>*?s@ z;}jqxIwc;Dk(2$OzhGo(UP@3;o;_QoO-r1<;?~;a@bmA>(HCET?eysE|K-2flf>ks zzuxgki2$9`n%3>-+wJJ@@9+Qr|0X3y*Z=?;HAzH4RCwCVoC`n`SGvb-rkjB_Q(%n> z>RLocQ!+|I1W6i2?W)*Fs?VN~B;fK}hg{tM2}jnK_&}Gru|Cd3|SQLO%~D+Dy@6 zih?x-8@dhi+=80dH?Lpc+}ympva<59VBTRG;)r>bA@cYVR0>*9Vx;8+cYHtZSp-6h zct?W7+C~Y4&U0{zTYxW5z*b_-ErM!{1-0XK6dZSWSx>Q3U)w&9U?Jea9ee)tmp`HJ z&=-T)F22FU7)(Z7L%MaONzu?j-4so~Mw%Klx(c-$N2eAx97k*q8>%B|kq)%=xOIC( z*-K_ES(5#yU^cbaXmpSkJ*nWE7~CSnRTP(TjK(kz2I}4B%jxCK%bS}I9|n^iUe4JZ z3ZjRamoIN#zx*)lUU@v_KA)bS7sSRWmy4CLtQfA3E|tk-F0&X!jTuww61(8m*^?HZn_vMitMymri z@^yTS?lteXR4K2M)W;?&kEiGv#)#v_9Ui^@9KTKvr7-5xPdjj(4kC>>?K5U`w^5sE zZbJuR=%9T;w)Y2Vx_5TmobCMxPrrWs1d{Dzoc%ogEd4Cb?Q_;mX(NcXHUcA7$8F!f zeKpdY)vLV$)oK*EI>q+fbE}qGva&M;1@a>Wauj{0KwkFahY)#2 z{`u!+qBCU$XU@pwI2=*{smkO(LNXB~JOc^m$mQ_YnbziB*z2bpnRq0vqN2i}6qV&F z3p9obrKo^U%E`Qnw7d$Xrp)^3)3B{bbIauea}_7uQl&fo%+iSW)zUoCb3gx1)RpH} zR>%v6y&{6sz(ED_2S1L_Q!4Y)+<67^CGy-nLxjjV9>apFn~%NSsxK=B$;-;*@+HM{ zAXp|Z5S0}}EZQM2*w*nON>E$?HbHv}AkvX5UxyOPMRT~FWpe$h;yG{-SWnKEe>i6y zI#IC|?8F^fO$azSEkW$I_Sfb;40`d!7t!iruL1$2c@Osxx9`O#Ukph&?>qR*`*-jG zzWuNHWygZp4?cWH^x`e1lLWI{Uwil->a}1tU3dJ!dnpwb+^@0sR0Pq@_So6`?xA|J zx3km!@X_-_pC5|8zSYp79}Vrf9qQlr(I5U5O=B$~?B{1jmd`AYoLLxIUVb3*@yG)Z zK2TWxIQ;qikXv!Vc zx-p?`tX(ZCkc+I=Tt0k6I*~}khf!pT!dhlktedj#4r;}#WSUgjAU!En zMx;qaa>tc4GPfda%9T5s@9m-NIaiQ%ufQ7YK8DkjIqTK|^~#lXbMB;y!}2ZWJkuUB zi_H{;+|@g)8gVH5o+_lC%l?gQT%%4a$4$C1x&|x5DEJMcyU)gaY?ZOAqR`MKm6KA9 z(O^&*=?IrHS(@$d{4HGm5sk=+W4PjbJ|0R@0cizxV|iu zw{PiYt2}oyW3<32xsIGRdnjAn*x6Zsht%2G!P02jMblWg2tg=YrjNOUI>);5y{ZYj z2Ve;1Q5 zZiyX}(-~&Tocf+yP-ne2SqQt81#@$?4&5n|QLIc%VYkkfUd-&u$*J$m>4YzQfOjer z>LXm!H;JbpGN-GkQ+x6C^cdLJ+4I<#c9u39NkfAgZy?>q2JnXt?KSs-Jt1-Fgv5)9 z6X0`k>FbFX>%Y0k1rxQOz^;oEmL?`nNJ?5dA!)+Wi%WaJQNA&=p0DHc9elpdq0D?JCVukGDXA1)MG|83l9DD&m=MCQW-+Qx zhZ_}EBVVY~@r`1(FE&Tz-O1IaPP7NDy#QYUd*iqi+FE}#?DVk(EGFjTBtxPbWDG-U zD7Mt)yFYk~^&F`_yv_kJq!Rj%Ey~IH`s=SdbGAdiQ~F74rHA8a^Lb3>v8i@g_j z(6d6_>pB#9NIKgv5AxkAAzYYvWu3t5m58t3xA@te(2S%NYK=mnb2#{l+<4`#{&ZAM#Wcc-Jp!vdNLwwc2?GGkTh>pRl{;I5Cbz$%yUz=ue@g~EArxVMRNIA9b)Ic zG5N%(o!L=Qv$C_HTC%c7Lq_CfjTka+^jxITCnirm zG5L+F8M~4*!1kyWW^LU%J0c?DQG@OF*d-;>ym*ED%O4(ExUioH*mF;eo*VUJ)bt;x zPcN!xS?#XD)3dX|2uo&Nnw7mIy9%;jFe^U(WM0+~ZB|yv?2L#*UAB#VWV#JFIt3_2RK1^0n&;Uw?4359R(7irSQEr=cb{`=DhFY2M#*aeHG z51u~wQa04OY}D3gW%#=J`Vl#|!{)435}`~RyDxged+#O9$R*Rp#ZLch*`8^i5B6mn zWt@Y@!s4xPqoKdcsNy<#)XC)_zopMM2R8UAvm^2}^0oKB_udCray4lS9{9^=pY7Q^ z@xLDEmM`ZEypUlZ<`%ap%LkKT>H(o@4htV#xEE=ZRpTxn_nBSoXLlBrpn(viM2dh8b+9Qj`+?XVJxgq$ ziGf#fV$`Urs;cB&$q`wc6O+?=8~Fyua0K|ioH*w?FYH%4xwymOSAytMeVw0JUJ z1BwTMUywZ=AtY-H@|%zxbc4rH_++piwI+@Bm%+t^Mdo-3hBBx!2eaLoT2QLbJm1&)p6~r z_SW|H*4B>pgu5l7EiB)9eFrZSKD^9SbPG7MQI&FcbWRe=t`_PWRdw6y>Jl2;>*^X| zU44)8Z3lK;U0nw!@22sb@a{-23A?BHZ+J#U`<~6+dp7+az_znu%H;}v!Y^Yf?zw+J zV%CgaSPl~Ff+SRrBy9f8Bt{Q2LfAHo%_bpQ1U^Y9v4F69x+4SvR^Y@e&Y&b>%1H=_ z7Jo#GQ^m5+{PHH6_UbR6_SQ8&Tf(+fn;4SwWz%cqCwwP7n3_}FYOc1O`uXCt^ z*=8z%^mO0BBA~VW`iUn1;9q=tqNk38v7HRFI=_alG1t`8(1`6cDvUJx%M5=bHqqhi zXfva|Ubf5S#2K9#C8??Lu@6joeA2K<-5Q28sfUJL2xUtS5}4;8K{p-r5Enc&un%6q zEMRL3aiOV+=JI{{!odqo5JCIdmoLzQro%17h024N*XH^26Ipit%ct4-^XH%b&FT3Y zWg9~^9}8vMYoRl*<)zlv*79l>n_I*zua?I{k*T$rtIUXfI5V?0vo@)gXU1sww76I} zAPHt;NNt#x{mLH`+1H2HCS}5jYSYs{=*7ttgtDEUk;f=;^ZN1Qo7Ptn806bRjfWxo z@Ott3CIaK~-E>S$HIJmm%Uog^mN3k-={afdEf*T82fiV(Am8Yf8&U$4gVDXzSCG^k0vPVKhyZyUYn4QS5pF-v-zig{LRMKGf`orLJ6U7 zs@MMCZn-Yot|LthqZ2V|rh(+%tkE+lg3nYlaxup~sK6C`#$?jzanh|3dt9v1L^6t1 zCcaLsCK(FzmiMRZ2d}^U^0)AL{q>h2^Z{%kaD(!eI2=Yrfq#+6gZ>z+WZ1z)xosIh%Shlo>#4@&2+%t+x zvN7mD7t5}l_UfKJGr5i&zB8wB+ewoiA2xH+u*jKSc4a904(YRrzudfM<}jZo9hl?` z3`3!rdwOSo+5aZ8vHNe9qy@@*&rKEH#`>TAV)rl52XyuewB}X;ojuA%pY=!W{)IPT zPo4b|>iN4rLmPYZk^M8ELNA=LaL}MzXk-0<+SLF1=;&y4{ky-9-n6fO|4nDT+8w>>{)4eThVJ~b!ID5c=7Y4wBR$QoC zFF@o^i0w_$9o-|a{%KBa;0GLQX=AC= z$DmHnN9j=AMxkTABuFEh+JJrS+KfThdR2fO*2db78{BDX$LZ&S)W)s*U2br@)%`qd zse^1_+zK~Is!5VGsqtL(-edl>r}b$~9XB=2 z0=FEo3(Jp2dbe;L3$M>6pr>|G1nMIFT^Z)xS}3!bYO%0rfC(1N1_)0eHPI{~kj>X# z1Dmhqth{!uKXgNz%Ltffu-Qd9t?JGV+)NAJ|7$>exv_3Po2bHPi-?vkG9w zxL0DA*lm(JyY09tC6FW~LEldF={G&yY>&fjKyO)eDHV4A`2_xeN^giGSh3L{ZIF`E zibGO^p+Z{W?rM-YtE<~N+4)M_?Xp{JHmAiRXgTk+sX*KvA%XwakV<7&wXmMLYW+EV zqfoDR==IifR-r@R>d$v|dxG#du+tyAxfX}D@1AW}hT04`qrO?anWYGp#(X`*=ZUV= zV9>rR8>9xj0`KCx0!<;%zNzDC#LgVvt@PeCd|N16LUY#S?2UdI3{D^s=wv)tDJEbs ztW+i|m6fto_s@R)N#H8R6X3Vx-$G5R3AMRcEDM&)73>wdTrP1b>k%LZ_bPQjK|zZE zF5hC#PfyZkW(wGOMxo8t5f@i&6?UArJDd)F`wp(2cv|j~uL$f{(!t&^gCe2RXN(G* zL~oF(`3z}th=cE8ce80|UKRn$$#rzo-#HTk7>z7X!=lC|VNwdR#nm;kdEGI_O&lQMZQ2~N%ACGjAb$|I;=**`@u{Nac1_w9?` z_kHy4-J6h8xO-nT=LB*N;tjF8QIcP9>x~5n5-v+#}8=S%yHtpUGp5fUS2An;MyulZcr^q>ry=Z_xmP_oNxp z7h^mQ&e$my7Pz=E9d=dg)hwbq8Pi)l2@U8;VPE9N1LN|BZPH zlwXP7KTll+-^H-3;-%Kq^n6~@&2IYZU*8(rXZ_^5{R(*m6*vVpM93cuEZJm2o-#sY1J_%HAChyYQ|(Dw-cf4wpO zH=73n3CPi4y!l?aW)0-~IE!_(T3WZO;`VkpJ65-vW#~76oUiBUrLHwXd8_ndA)*o{xJ_7(vE=^+7yxBl*`LP0jr#xq002ovPDHLkV1g2_ B!gT-u literal 0 HcmV?d00001 diff --git a/install-new/theme/img/visu_foBlock.png b/install-new/theme/img/visu_foBlock.png new file mode 100644 index 0000000000000000000000000000000000000000..8c09791dc2f7cdb829bd76960a11d95b9c5f10b1 GIT binary patch literal 11338 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.currentTarget=f.elem;a.data=f.handleObj.data;a.handleObj=f.handleObj;A=f.handleObj.origHandler.apply(f.elem,arguments);if(A===false||a.isPropagationStopped()){d=f.level;if(A===false)b=false;if(a.isImmediatePropagationStopped())break}}return b}}function Y(a,b){return(a&&a!=="*"?a+".":"")+b.replace(La, +"`").replace(Ma,"&")}function ma(a,b,d){if(c.isFunction(b))return c.grep(a,function(f,h){return!!b.call(f,h,f)===d});else if(b.nodeType)return c.grep(a,function(f){return f===b===d});else if(typeof b==="string"){var e=c.grep(a,function(f){return f.nodeType===1});if(Na.test(b))return c.filter(b,e,!d);else b=c.filter(b,e)}return c.grep(a,function(f){return c.inArray(f,b)>=0===d})}function na(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var e=c.data(a[d++]),f=c.data(this, +e);if(e=e&&e.events){delete f.handle;f.events={};for(var h in e)for(var l in e[h])c.event.add(this,h,e[h][l],e[h][l].data)}}})}function Oa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function oa(a,b,d){var e=b==="width"?a.offsetWidth:a.offsetHeight;if(d==="border")return e;c.each(b==="width"?Pa:Qa,function(){d||(e-=parseFloat(c.css(a,"padding"+this))||0);if(d==="margin")e+=parseFloat(c.css(a, +"margin"+this))||0;else e-=parseFloat(c.css(a,"border"+this+"Width"))||0});return e}function da(a,b,d,e){if(c.isArray(b)&&b.length)c.each(b,function(f,h){d||Ra.test(a)?e(a,h):da(a+"["+(typeof h==="object"||c.isArray(h)?f:"")+"]",h,d,e)});else if(!d&&b!=null&&typeof b==="object")c.isEmptyObject(b)?e(a,""):c.each(b,function(f,h){da(a+"["+f+"]",h,d,e)});else e(a,b)}function S(a,b){var d={};c.each(pa.concat.apply([],pa.slice(0,b)),function(){d[this]=a});return d}function qa(a){if(!ea[a]){var b=c("<"+ +a+">").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d==="")d="block";ea[a]=d}return ea[a]}function fa(a){return c.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var t=E.document,c=function(){function a(){if(!b.isReady){try{t.documentElement.doScroll("left")}catch(j){setTimeout(a,1);return}b.ready()}}var b=function(j,s){return new b.fn.init(j,s)},d=E.jQuery,e=E.$,f,h=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,l=/\S/,k=/^\s+/,o=/\s+$/,x=/\W/,r=/\d/,A=/^<(\w+)\s*\/?>(?:<\/\1>)?$/, +C=/^[\],:{}\s]*$/,J=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,w=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,I=/(?:^|:|,)(?:\s*\[)+/g,L=/(webkit)[ \/]([\w.]+)/,g=/(opera)(?:.*version)?[ \/]([\w.]+)/,i=/(msie) ([\w.]+)/,n=/(mozilla)(?:.*? rv:([\w.]+))?/,m=navigator.userAgent,p=false,q=[],u,y=Object.prototype.toString,F=Object.prototype.hasOwnProperty,M=Array.prototype.push,N=Array.prototype.slice,O=String.prototype.trim,D=Array.prototype.indexOf,R={};b.fn=b.prototype={init:function(j, +s){var v,z,H;if(!j)return this;if(j.nodeType){this.context=this[0]=j;this.length=1;return this}if(j==="body"&&!s&&t.body){this.context=t;this[0]=t.body;this.selector="body";this.length=1;return this}if(typeof j==="string")if((v=h.exec(j))&&(v[1]||!s))if(v[1]){H=s?s.ownerDocument||s:t;if(z=A.exec(j))if(b.isPlainObject(s)){j=[t.createElement(z[1])];b.fn.attr.call(j,s,true)}else j=[H.createElement(z[1])];else{z=b.buildFragment([v[1]],[H]);j=(z.cacheable?z.fragment.cloneNode(true):z.fragment).childNodes}return b.merge(this, +j)}else{if((z=t.getElementById(v[2]))&&z.parentNode){if(z.id!==v[2])return f.find(j);this.length=1;this[0]=z}this.context=t;this.selector=j;return this}else if(!s&&!x.test(j)){this.selector=j;this.context=t;j=t.getElementsByTagName(j);return b.merge(this,j)}else return!s||s.jquery?(s||f).find(j):b(s).find(j);else if(b.isFunction(j))return f.ready(j);if(j.selector!==B){this.selector=j.selector;this.context=j.context}return b.makeArray(j,this)},selector:"",jquery:"1.4.4",length:0,size:function(){return this.length}, +toArray:function(){return N.call(this,0)},get:function(j){return j==null?this.toArray():j<0?this.slice(j)[0]:this[j]},pushStack:function(j,s,v){var z=b();b.isArray(j)?M.apply(z,j):b.merge(z,j);z.prevObject=this;z.context=this.context;if(s==="find")z.selector=this.selector+(this.selector?" ":"")+v;else if(s)z.selector=this.selector+"."+s+"("+v+")";return z},each:function(j,s){return b.each(this,j,s)},ready:function(j){b.bindReady();if(b.isReady)j.call(t,b);else q&&q.push(j);return this},eq:function(j){return j=== +-1?this.slice(j):this.slice(j,+j+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(N.apply(this,arguments),"slice",N.call(arguments).join(","))},map:function(j){return this.pushStack(b.map(this,function(s,v){return j.call(s,v,s)}))},end:function(){return this.prevObject||b(null)},push:M,sort:[].sort,splice:[].splice};b.fn.init.prototype=b.fn;b.extend=b.fn.extend=function(){var j,s,v,z,H,G=arguments[0]||{},K=1,Q=arguments.length,ga=false; +if(typeof G==="boolean"){ga=G;G=arguments[1]||{};K=2}if(typeof G!=="object"&&!b.isFunction(G))G={};if(Q===K){G=this;--K}for(;K0))if(q){var s=0,v=q;for(q=null;j=v[s++];)j.call(t,b);b.fn.trigger&&b(t).trigger("ready").unbind("ready")}}},bindReady:function(){if(!p){p=true;if(t.readyState==="complete")return setTimeout(b.ready,1);if(t.addEventListener){t.addEventListener("DOMContentLoaded",u,false);E.addEventListener("load",b.ready,false)}else if(t.attachEvent){t.attachEvent("onreadystatechange",u);E.attachEvent("onload", +b.ready);var j=false;try{j=E.frameElement==null}catch(s){}t.documentElement.doScroll&&j&&a()}}},isFunction:function(j){return b.type(j)==="function"},isArray:Array.isArray||function(j){return b.type(j)==="array"},isWindow:function(j){return j&&typeof j==="object"&&"setInterval"in j},isNaN:function(j){return j==null||!r.test(j)||isNaN(j)},type:function(j){return j==null?String(j):R[y.call(j)]||"object"},isPlainObject:function(j){if(!j||b.type(j)!=="object"||j.nodeType||b.isWindow(j))return false;if(j.constructor&& +!F.call(j,"constructor")&&!F.call(j.constructor.prototype,"isPrototypeOf"))return false;for(var s in j);return s===B||F.call(j,s)},isEmptyObject:function(j){for(var s in j)return false;return true},error:function(j){throw j;},parseJSON:function(j){if(typeof j!=="string"||!j)return null;j=b.trim(j);if(C.test(j.replace(J,"@").replace(w,"]").replace(I,"")))return E.JSON&&E.JSON.parse?E.JSON.parse(j):(new Function("return "+j))();else b.error("Invalid JSON: "+j)},noop:function(){},globalEval:function(j){if(j&& +l.test(j)){var s=t.getElementsByTagName("head")[0]||t.documentElement,v=t.createElement("script");v.type="text/javascript";if(b.support.scriptEval)v.appendChild(t.createTextNode(j));else v.text=j;s.insertBefore(v,s.firstChild);s.removeChild(v)}},nodeName:function(j,s){return j.nodeName&&j.nodeName.toUpperCase()===s.toUpperCase()},each:function(j,s,v){var z,H=0,G=j.length,K=G===B||b.isFunction(j);if(v)if(K)for(z in j){if(s.apply(j[z],v)===false)break}else for(;H
    a";var f=d.getElementsByTagName("*"),h=d.getElementsByTagName("a")[0],l=t.createElement("select"), +k=l.appendChild(t.createElement("option"));if(!(!f||!f.length||!h)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(h.getAttribute("style")),hrefNormalized:h.getAttribute("href")==="/a",opacity:/^0.55$/.test(h.style.opacity),cssFloat:!!h.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:k.selected,deleteExpando:true,optDisabled:false,checkClone:false, +scriptEval:false,noCloneEvent:true,boxModel:null,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableHiddenOffsets:true};l.disabled=true;c.support.optDisabled=!k.disabled;b.type="text/javascript";try{b.appendChild(t.createTextNode("window."+e+"=1;"))}catch(o){}a.insertBefore(b,a.firstChild);if(E[e]){c.support.scriptEval=true;delete E[e]}try{delete b.test}catch(x){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function r(){c.support.noCloneEvent= +false;d.detachEvent("onclick",r)});d.cloneNode(true).fireEvent("onclick")}d=t.createElement("div");d.innerHTML="";a=t.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var r=t.createElement("div");r.style.width=r.style.paddingLeft="1px";t.body.appendChild(r);c.boxModel=c.support.boxModel=r.offsetWidth===2;if("zoom"in r.style){r.style.display="inline";r.style.zoom= +1;c.support.inlineBlockNeedsLayout=r.offsetWidth===2;r.style.display="";r.innerHTML="

    ";c.support.shrinkWrapBlocks=r.offsetWidth!==2}r.innerHTML="
    t
    ";var A=r.getElementsByTagName("td");c.support.reliableHiddenOffsets=A[0].offsetHeight===0;A[0].style.display="";A[1].style.display="none";c.support.reliableHiddenOffsets=c.support.reliableHiddenOffsets&&A[0].offsetHeight===0;r.innerHTML="";t.body.removeChild(r).style.display= +"none"});a=function(r){var A=t.createElement("div");r="on"+r;var C=r in A;if(!C){A.setAttribute(r,"return;");C=typeof A[r]==="function"}return C};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=f=h=null}})();var ra={},Ja=/^(?:\{.*\}|\[.*\])$/;c.extend({cache:{},uuid:0,expando:"jQuery"+c.now(),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},data:function(a,b,d){if(c.acceptData(a)){a=a==E?ra:a;var e=a.nodeType,f=e?a[c.expando]:null,h= +c.cache;if(!(e&&!f&&typeof b==="string"&&d===B)){if(e)f||(a[c.expando]=f=++c.uuid);else h=a;if(typeof b==="object")if(e)h[f]=c.extend(h[f],b);else c.extend(h,b);else if(e&&!h[f])h[f]={};a=e?h[f]:h;if(d!==B)a[b]=d;return typeof b==="string"?a[b]:a}}},removeData:function(a,b){if(c.acceptData(a)){a=a==E?ra:a;var d=a.nodeType,e=d?a[c.expando]:a,f=c.cache,h=d?f[e]:e;if(b){if(h){delete h[b];d&&c.isEmptyObject(h)&&c.removeData(a)}}else if(d&&c.support.deleteExpando)delete a[c.expando];else if(a.removeAttribute)a.removeAttribute(c.expando); +else if(d)delete f[e];else for(var l in a)delete a[l]}},acceptData:function(a){if(a.nodeName){var b=c.noData[a.nodeName.toLowerCase()];if(b)return!(b===true||a.getAttribute("classid")!==b)}return true}});c.fn.extend({data:function(a,b){var d=null;if(typeof a==="undefined"){if(this.length){var e=this[0].attributes,f;d=c.data(this[0]);for(var h=0,l=e.length;h-1)return true;return false},val:function(a){if(!arguments.length){var b=this[0];if(b){if(c.nodeName(b,"option")){var d=b.attributes.value;return!d||d.specified?b.value:b.text}if(c.nodeName(b,"select")){var e=b.selectedIndex;d=[];var f=b.options;b=b.type==="select-one"; +if(e<0)return null;var h=b?e:0;for(e=b?e+1:f.length;h=0;else if(c.nodeName(this,"select")){var A=c.makeArray(r);c("option",this).each(function(){this.selected=c.inArray(c(this).val(),A)>=0});if(!A.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true}, +attr:function(a,b,d,e){if(!a||a.nodeType===3||a.nodeType===8)return B;if(e&&b in c.attrFn)return c(a)[b](d);e=a.nodeType!==1||!c.isXMLDoc(a);var f=d!==B;b=e&&c.props[b]||b;var h=Ta.test(b);if((b in a||a[b]!==B)&&e&&!h){if(f){b==="type"&&Ua.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");if(d===null)a.nodeType===1&&a.removeAttribute(b);else a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&& +b.specified?b.value:Va.test(a.nodeName)||Wa.test(a.nodeName)&&a.href?0:B;return a[b]}if(!c.support.style&&e&&b==="style"){if(f)a.style.cssText=""+d;return a.style.cssText}f&&a.setAttribute(b,""+d);if(!a.attributes[b]&&a.hasAttribute&&!a.hasAttribute(b))return B;a=!c.support.hrefNormalized&&e&&h?a.getAttribute(b,2):a.getAttribute(b);return a===null?B:a}});var X=/\.(.*)$/,ia=/^(?:textarea|input|select)$/i,La=/\./g,Ma=/ /g,Xa=/[^\w\s.|`]/g,Ya=function(a){return a.replace(Xa,"\\$&")},ua={focusin:0,focusout:0}; +c.event={add:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(c.isWindow(a)&&a!==E&&!a.frameElement)a=E;if(d===false)d=U;else if(!d)return;var f,h;if(d.handler){f=d;d=f.handler}if(!d.guid)d.guid=c.guid++;if(h=c.data(a)){var l=a.nodeType?"events":"__events__",k=h[l],o=h.handle;if(typeof k==="function"){o=k.handle;k=k.events}else if(!k){a.nodeType||(h[l]=h=function(){});h.events=k={}}if(!o)h.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem, +arguments):B};o.elem=a;b=b.split(" ");for(var x=0,r;l=b[x++];){h=f?c.extend({},f):{handler:d,data:e};if(l.indexOf(".")>-1){r=l.split(".");l=r.shift();h.namespace=r.slice(0).sort().join(".")}else{r=[];h.namespace=""}h.type=l;if(!h.guid)h.guid=d.guid;var A=k[l],C=c.event.special[l]||{};if(!A){A=k[l]=[];if(!C.setup||C.setup.call(a,e,r,o)===false)if(a.addEventListener)a.addEventListener(l,o,false);else a.attachEvent&&a.attachEvent("on"+l,o)}if(C.add){C.add.call(a,h);if(!h.handler.guid)h.handler.guid= +d.guid}A.push(h);c.event.global[l]=true}a=null}}},global:{},remove:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(d===false)d=U;var f,h,l=0,k,o,x,r,A,C,J=a.nodeType?"events":"__events__",w=c.data(a),I=w&&w[J];if(w&&I){if(typeof I==="function"){w=I;I=I.events}if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(f in I)c.event.remove(a,f+b)}else{for(b=b.split(" ");f=b[l++];){r=f;k=f.indexOf(".")<0;o=[];if(!k){o=f.split(".");f=o.shift();x=RegExp("(^|\\.)"+ +c.map(o.slice(0).sort(),Ya).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(A=I[f])if(d){r=c.event.special[f]||{};for(h=e||0;h=0){a.type=f=f.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[f]&&c.each(c.cache,function(){this.events&&this.events[f]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType=== +8)return B;a.result=B;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(e=d.nodeType?c.data(d,"handle"):(c.data(d,"__events__")||{}).handle)&&e.apply(d,b);e=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+f]&&d["on"+f].apply(d,b)===false){a.result=false;a.preventDefault()}}catch(h){}if(!a.isPropagationStopped()&&e)c.event.trigger(a,b,e,true);else if(!a.isDefaultPrevented()){var l;e=a.target;var k=f.replace(X,""),o=c.nodeName(e,"a")&&k=== +"click",x=c.event.special[k]||{};if((!x._default||x._default.call(d,a)===false)&&!o&&!(e&&e.nodeName&&c.noData[e.nodeName.toLowerCase()])){try{if(e[k]){if(l=e["on"+k])e["on"+k]=null;c.event.triggered=true;e[k]()}}catch(r){}if(l)e["on"+k]=l;c.event.triggered=false}}},handle:function(a){var b,d,e,f;d=[];var h=c.makeArray(arguments);a=h[0]=c.event.fix(a||E.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;if(!b){e=a.type.split(".");a.type=e.shift();d=e.slice(0).sort();e=RegExp("(^|\\.)"+ +d.join("\\.(?:.*\\.)?")+"(\\.|$)")}a.namespace=a.namespace||d.join(".");f=c.data(this,this.nodeType?"events":"__events__");if(typeof f==="function")f=f.events;d=(f||{})[a.type];if(f&&d){d=d.slice(0);f=0;for(var l=d.length;f-1?c.map(a.options,function(e){return e.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},Z=function(a,b){var d=a.target,e,f;if(!(!ia.test(d.nodeName)||d.readOnly)){e=c.data(d,"_change_data");f=xa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",f);if(!(e===B||f===e))if(e!=null||f){a.type="change";a.liveFired= +B;return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:Z,beforedeactivate:Z,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return Z.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return Z.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,"_change_data",xa(a))}},setup:function(){if(this.type=== +"file")return false;for(var a in V)c.event.add(this,a+".specialChange",V[a]);return ia.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return ia.test(this.nodeName)}};V=c.event.special.change.filters;V.focus=V.beforeactivate}t.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(e){e=c.event.fix(e);e.type=b;return c.event.trigger(e,null,e.target)}c.event.special[b]={setup:function(){ua[b]++===0&&t.addEventListener(a,d,true)},teardown:function(){--ua[b]=== +0&&t.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,e,f){if(typeof d==="object"){for(var h in d)this[b](h,e,d[h],f);return this}if(c.isFunction(e)||e===false){f=e;e=B}var l=b==="one"?c.proxy(f,function(o){c(this).unbind(o,l);return f.apply(this,arguments)}):f;if(d==="unload"&&b!=="one")this.one(d,e,f);else{h=0;for(var k=this.length;h0?this.bind(b,d,e):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});E.attachEvent&&!E.addEventListener&&c(E).bind("unload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}}); +(function(){function a(g,i,n,m,p,q){p=0;for(var u=m.length;p0){F=y;break}}y=y[g]}m[p]=F}}}var d=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e=0,f=Object.prototype.toString,h=false,l=true;[0,0].sort(function(){l=false;return 0});var k=function(g,i,n,m){n=n||[];var p=i=i||t;if(i.nodeType!==1&&i.nodeType!==9)return[];if(!g||typeof g!=="string")return n;var q,u,y,F,M,N=true,O=k.isXML(i),D=[],R=g;do{d.exec("");if(q=d.exec(R)){R=q[3];D.push(q[1]);if(q[2]){F=q[3]; +break}}}while(q);if(D.length>1&&x.exec(g))if(D.length===2&&o.relative[D[0]])u=L(D[0]+D[1],i);else for(u=o.relative[D[0]]?[i]:k(D.shift(),i);D.length;){g=D.shift();if(o.relative[g])g+=D.shift();u=L(g,u)}else{if(!m&&D.length>1&&i.nodeType===9&&!O&&o.match.ID.test(D[0])&&!o.match.ID.test(D[D.length-1])){q=k.find(D.shift(),i,O);i=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]}if(i){q=m?{expr:D.pop(),set:C(m)}:k.find(D.pop(),D.length===1&&(D[0]==="~"||D[0]==="+")&&i.parentNode?i.parentNode:i,O);u=q.expr?k.filter(q.expr, +q.set):q.set;if(D.length>0)y=C(u);else N=false;for(;D.length;){q=M=D.pop();if(o.relative[M])q=D.pop();else M="";if(q==null)q=i;o.relative[M](y,q,O)}}else y=[]}y||(y=u);y||k.error(M||g);if(f.call(y)==="[object Array]")if(N)if(i&&i.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&k.contains(i,y[g])))n.push(u[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&n.push(u[g]);else n.push.apply(n,y);else C(y,n);if(F){k(F,p,n,m);k.uniqueSort(n)}return n};k.uniqueSort=function(g){if(w){h= +l;g.sort(w);if(h)for(var i=1;i0};k.find=function(g,i,n){var m;if(!g)return[];for(var p=0,q=o.order.length;p":function(g,i){var n,m=typeof i==="string",p=0,q=g.length;if(m&&!/\W/.test(i))for(i=i.toLowerCase();p=0))n||m.push(u);else if(n)i[q]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},CHILD:function(g){if(g[1]==="nth"){var i=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=i[1]+(i[2]||1)-0;g[3]=i[3]-0}g[0]=e++;return g},ATTR:function(g,i,n, +m,p,q){i=g[1].replace(/\\/g,"");if(!q&&o.attrMap[i])g[1]=o.attrMap[i];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,i,n,m,p){if(g[1]==="not")if((d.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,i);else{g=k.filter(g[3],i,n,true^p);n||m.push.apply(m,g);return false}else if(o.match.POS.test(g[0])||o.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled=== +true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,i,n){return!!k(n[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"=== +g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},setFilters:{first:function(g,i){return i===0},last:function(g,i,n,m){return i===m.length-1},even:function(g,i){return i%2===0},odd:function(g,i){return i%2===1},lt:function(g,i,n){return in[3]-0},nth:function(g,i,n){return n[3]- +0===i},eq:function(g,i,n){return n[3]-0===i}},filter:{PSEUDO:function(g,i,n,m){var p=i[1],q=o.filters[p];if(q)return q(g,n,i,m);else if(p==="contains")return(g.textContent||g.innerText||k.getText([g])||"").indexOf(i[3])>=0;else if(p==="not"){i=i[3];n=0;for(m=i.length;n=0}},ID:function(g,i){return g.nodeType===1&&g.getAttribute("id")===i},TAG:function(g,i){return i==="*"&&g.nodeType===1||g.nodeName.toLowerCase()=== +i},CLASS:function(g,i){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(i)>-1},ATTR:function(g,i){var n=i[1];n=o.attrHandle[n]?o.attrHandle[n](g):g[n]!=null?g[n]:g.getAttribute(n);var m=n+"",p=i[2],q=i[4];return n==null?p==="!=":p==="="?m===q:p==="*="?m.indexOf(q)>=0:p==="~="?(" "+m+" ").indexOf(q)>=0:!q?m&&n!==false:p==="!="?m!==q:p==="^="?m.indexOf(q)===0:p==="$="?m.substr(m.length-q.length)===q:p==="|="?m===q||m.substr(0,q.length+1)===q+"-":false},POS:function(g,i,n,m){var p=o.setFilters[i[2]]; +if(p)return p(g,n,i,m)}}},x=o.match.POS,r=function(g,i){return"\\"+(i-0+1)},A;for(A in o.match){o.match[A]=RegExp(o.match[A].source+/(?![^\[]*\])(?![^\(]*\))/.source);o.leftMatch[A]=RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[A].source.replace(/\\(\d+)/g,r))}var C=function(g,i){g=Array.prototype.slice.call(g,0);if(i){i.push.apply(i,g);return i}return g};try{Array.prototype.slice.call(t.documentElement.childNodes,0)}catch(J){C=function(g,i){var n=0,m=i||[];if(f.call(g)==="[object Array]")Array.prototype.push.apply(m, +g);else if(typeof g.length==="number")for(var p=g.length;n";n.insertBefore(g,n.firstChild);if(t.getElementById(i)){o.find.ID=function(m,p,q){if(typeof p.getElementById!=="undefined"&&!q)return(p=p.getElementById(m[1]))?p.id===m[1]||typeof p.getAttributeNode!=="undefined"&&p.getAttributeNode("id").nodeValue===m[1]?[p]:B:[]};o.filter.ID=function(m,p){var q=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&q&&q.nodeValue===p}}n.removeChild(g); +n=g=null})();(function(){var g=t.createElement("div");g.appendChild(t.createComment(""));if(g.getElementsByTagName("*").length>0)o.find.TAG=function(i,n){var m=n.getElementsByTagName(i[1]);if(i[1]==="*"){for(var p=[],q=0;m[q];q++)m[q].nodeType===1&&p.push(m[q]);m=p}return m};g.innerHTML="";if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")o.attrHandle.href=function(i){return i.getAttribute("href",2)};g=null})();t.querySelectorAll&& +function(){var g=k,i=t.createElement("div");i.innerHTML="

    ";if(!(i.querySelectorAll&&i.querySelectorAll(".TEST").length===0)){k=function(m,p,q,u){p=p||t;m=m.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!u&&!k.isXML(p))if(p.nodeType===9)try{return C(p.querySelectorAll(m),q)}catch(y){}else if(p.nodeType===1&&p.nodeName.toLowerCase()!=="object"){var F=p.getAttribute("id"),M=F||"__sizzle__";F||p.setAttribute("id",M);try{return C(p.querySelectorAll("#"+M+" "+m),q)}catch(N){}finally{F|| +p.removeAttribute("id")}}return g(m,p,q,u)};for(var n in g)k[n]=g[n];i=null}}();(function(){var g=t.documentElement,i=g.matchesSelector||g.mozMatchesSelector||g.webkitMatchesSelector||g.msMatchesSelector,n=false;try{i.call(t.documentElement,"[test!='']:sizzle")}catch(m){n=true}if(i)k.matchesSelector=function(p,q){q=q.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(p))try{if(n||!o.match.PSEUDO.test(q)&&!/!=/.test(q))return i.call(p,q)}catch(u){}return k(q,null,null,[p]).length>0}})();(function(){var g= +t.createElement("div");g.innerHTML="
    ";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){o.order.splice(1,0,"CLASS");o.find.CLASS=function(i,n,m){if(typeof n.getElementsByClassName!=="undefined"&&!m)return n.getElementsByClassName(i[1])};g=null}}})();k.contains=t.documentElement.contains?function(g,i){return g!==i&&(g.contains?g.contains(i):true)}:t.documentElement.compareDocumentPosition? +function(g,i){return!!(g.compareDocumentPosition(i)&16)}:function(){return false};k.isXML=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false};var L=function(g,i){for(var n,m=[],p="",q=i.nodeType?[i]:i;n=o.match.PSEUDO.exec(g);){p+=n[0];g=g.replace(o.match.PSEUDO,"")}g=o.relative[g]?g+"*":g;n=0;for(var u=q.length;n0)for(var h=d;h0},closest:function(a,b){var d=[],e,f,h=this[0];if(c.isArray(a)){var l,k={},o=1;if(h&&a.length){e=0;for(f=a.length;e-1:c(h).is(e))d.push({selector:l,elem:h,level:o})}h= +h.parentNode;o++}}return d}l=cb.test(a)?c(a,b||this.context):null;e=0;for(f=this.length;e-1:c.find.matchesSelector(h,a)){d.push(h);break}else{h=h.parentNode;if(!h||!h.ownerDocument||h===b)break}d=d.length>1?c.unique(d):d;return this.pushStack(d,"closest",a)},index:function(a){if(!a||typeof a==="string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var d=typeof a==="string"?c(a,b||this.context): +c.makeArray(a),e=c.merge(this.get(),d);return this.pushStack(!d[0]||!d[0].parentNode||d[0].parentNode.nodeType===11||!e[0]||!e[0].parentNode||e[0].parentNode.nodeType===11?e:c.unique(e))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a, +2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a, +b){c.fn[a]=function(d,e){var f=c.map(this,b,d);Za.test(a)||(e=d);if(e&&typeof e==="string")f=c.filter(e,f);f=this.length>1?c.unique(f):f;if((this.length>1||ab.test(e))&&$a.test(a))f=f.reverse();return this.pushStack(f,a,bb.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return b.length===1?c.find.matchesSelector(b[0],a)?[b[0]]:[]:c.find.matches(a,b)},dir:function(a,b,d){var e=[];for(a=a[b];a&&a.nodeType!==9&&(d===B||a.nodeType!==1||!c(a).is(d));){a.nodeType===1&& +e.push(a);a=a[b]}return e},nth:function(a,b,d){b=b||1;for(var e=0;a;a=a[d])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var za=/ jQuery\d+="(?:\d+|null)"/g,$=/^\s+/,Aa=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Ba=/<([\w:]+)/,db=/\s]+\/)>/g,P={option:[1, +""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]};P.optgroup=P.option;P.tbody=P.tfoot=P.colgroup=P.caption=P.thead;P.th=P.td;if(!c.support.htmlSerialize)P._default=[1,"div
    ","
    "];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d= +c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==B)return this.empty().append((this[0]&&this[0].ownerDocument||t).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this}, +wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})}, +prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b, +this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,e;(e=this[d])!=null;d++)if(!a||c.filter(a,[e]).length){if(!b&&e.nodeType===1){c.cleanData(e.getElementsByTagName("*"));c.cleanData([e])}e.parentNode&&e.parentNode.removeChild(e)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild); +return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,e=this.ownerDocument;if(!d){d=e.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(za,"").replace(fb,'="$1">').replace($,"")],e)[0]}else return this.cloneNode(true)});if(a===true){na(this,b);na(this.find("*"),b.find("*"))}return b},html:function(a){if(a===B)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(za,""):null; +else if(typeof a==="string"&&!Ca.test(a)&&(c.support.leadingWhitespace||!$.test(a))&&!P[(Ba.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Aa,"<$1>");try{for(var b=0,d=this.length;b0||e.cacheable||this.length>1?h.cloneNode(true):h)}k.length&&c.each(k,Oa)}return this}});c.buildFragment=function(a,b,d){var e,f,h;b=b&&b[0]?b[0].ownerDocument||b[0]:t;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===t&&!Ca.test(a[0])&&(c.support.checkClone||!Da.test(a[0]))){f=true;if(h=c.fragments[a[0]])if(h!==1)e=h}if(!e){e=b.createDocumentFragment();c.clean(a,b,e,d)}if(f)c.fragments[a[0]]=h?e:1;return{fragment:e,cacheable:f}};c.fragments={};c.each({appendTo:"append", +prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var e=[];d=c(d);var f=this.length===1&&this[0].parentNode;if(f&&f.nodeType===11&&f.childNodes.length===1&&d.length===1){d[b](this[0]);return this}else{f=0;for(var h=d.length;f0?this.clone(true):this).get();c(d[f])[b](l);e=e.concat(l)}return this.pushStack(e,a,d.selector)}}});c.extend({clean:function(a,b,d,e){b=b||t;if(typeof b.createElement==="undefined")b=b.ownerDocument|| +b[0]&&b[0].ownerDocument||t;for(var f=[],h=0,l;(l=a[h])!=null;h++){if(typeof l==="number")l+="";if(l){if(typeof l==="string"&&!eb.test(l))l=b.createTextNode(l);else if(typeof l==="string"){l=l.replace(Aa,"<$1>");var k=(Ba.exec(l)||["",""])[1].toLowerCase(),o=P[k]||P._default,x=o[0],r=b.createElement("div");for(r.innerHTML=o[1]+l+o[2];x--;)r=r.lastChild;if(!c.support.tbody){x=db.test(l);k=k==="table"&&!x?r.firstChild&&r.firstChild.childNodes:o[1]===""&&!x?r.childNodes:[];for(o=k.length- +1;o>=0;--o)c.nodeName(k[o],"tbody")&&!k[o].childNodes.length&&k[o].parentNode.removeChild(k[o])}!c.support.leadingWhitespace&&$.test(l)&&r.insertBefore(b.createTextNode($.exec(l)[0]),r.firstChild);l=r.childNodes}if(l.nodeType)f.push(l);else f=c.merge(f,l)}}if(d)for(h=0;f[h];h++)if(e&&c.nodeName(f[h],"script")&&(!f[h].type||f[h].type.toLowerCase()==="text/javascript"))e.push(f[h].parentNode?f[h].parentNode.removeChild(f[h]):f[h]);else{f[h].nodeType===1&&f.splice.apply(f,[h+1,0].concat(c.makeArray(f[h].getElementsByTagName("script")))); +d.appendChild(f[h])}return f},cleanData:function(a){for(var b,d,e=c.cache,f=c.event.special,h=c.support.deleteExpando,l=0,k;(k=a[l])!=null;l++)if(!(k.nodeName&&c.noData[k.nodeName.toLowerCase()]))if(d=k[c.expando]){if((b=e[d])&&b.events)for(var o in b.events)f[o]?c.event.remove(k,o):c.removeEvent(k,o,b.handle);if(h)delete k[c.expando];else k.removeAttribute&&k.removeAttribute(c.expando);delete e[d]}}});var Ea=/alpha\([^)]*\)/i,gb=/opacity=([^)]*)/,hb=/-([a-z])/ig,ib=/([A-Z])/g,Fa=/^-?\d+(?:px)?$/i, +jb=/^-?\d/,kb={position:"absolute",visibility:"hidden",display:"block"},Pa=["Left","Right"],Qa=["Top","Bottom"],W,Ga,aa,lb=function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){if(arguments.length===2&&b===B)return this;return c.access(this,a,b,true,function(d,e,f){return f!==B?c.style(d,e,f):c.css(d,e)})};c.extend({cssHooks:{opacity:{get:function(a,b){if(b){var d=W(a,"opacity","opacity");return d===""?"1":d}else return a.style.opacity}}},cssNumber:{zIndex:true,fontWeight:true,opacity:true, +zoom:true,lineHeight:true},cssProps:{"float":c.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,d,e){if(!(!a||a.nodeType===3||a.nodeType===8||!a.style)){var f,h=c.camelCase(b),l=a.style,k=c.cssHooks[h];b=c.cssProps[h]||h;if(d!==B){if(!(typeof d==="number"&&isNaN(d)||d==null)){if(typeof d==="number"&&!c.cssNumber[h])d+="px";if(!k||!("set"in k)||(d=k.set(a,d))!==B)try{l[b]=d}catch(o){}}}else{if(k&&"get"in k&&(f=k.get(a,false,e))!==B)return f;return l[b]}}},css:function(a,b,d){var e,f=c.camelCase(b), +h=c.cssHooks[f];b=c.cssProps[f]||f;if(h&&"get"in h&&(e=h.get(a,true,d))!==B)return e;else if(W)return W(a,b,f)},swap:function(a,b,d){var e={},f;for(f in b){e[f]=a.style[f];a.style[f]=b[f]}d.call(a);for(f in b)a.style[f]=e[f]},camelCase:function(a){return a.replace(hb,lb)}});c.curCSS=c.css;c.each(["height","width"],function(a,b){c.cssHooks[b]={get:function(d,e,f){var h;if(e){if(d.offsetWidth!==0)h=oa(d,b,f);else c.swap(d,kb,function(){h=oa(d,b,f)});if(h<=0){h=W(d,b,b);if(h==="0px"&&aa)h=aa(d,b,b); +if(h!=null)return h===""||h==="auto"?"0px":h}if(h<0||h==null){h=d.style[b];return h===""||h==="auto"?"0px":h}return typeof h==="string"?h:h+"px"}},set:function(d,e){if(Fa.test(e)){e=parseFloat(e);if(e>=0)return e+"px"}else return e}}});if(!c.support.opacity)c.cssHooks.opacity={get:function(a,b){return gb.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var d=a.style;d.zoom=1;var e=c.isNaN(b)?"":"alpha(opacity="+b*100+")",f= +d.filter||"";d.filter=Ea.test(f)?f.replace(Ea,e):d.filter+" "+e}};if(t.defaultView&&t.defaultView.getComputedStyle)Ga=function(a,b,d){var e;d=d.replace(ib,"-$1").toLowerCase();if(!(b=a.ownerDocument.defaultView))return B;if(b=b.getComputedStyle(a,null)){e=b.getPropertyValue(d);if(e===""&&!c.contains(a.ownerDocument.documentElement,a))e=c.style(a,d)}return e};if(t.documentElement.currentStyle)aa=function(a,b){var d,e,f=a.currentStyle&&a.currentStyle[b],h=a.style;if(!Fa.test(f)&&jb.test(f)){d=h.left; +e=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;h.left=b==="fontSize"?"1em":f||0;f=h.pixelLeft+"px";h.left=d;a.runtimeStyle.left=e}return f===""?"auto":f};W=Ga||aa;if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=a.offsetHeight;return a.offsetWidth===0&&b===0||!c.support.reliableHiddenOffsets&&(a.style.display||c.css(a,"display"))==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var mb=c.now(),nb=/)<[^<]*)*<\/script>/gi, +ob=/^(?:select|textarea)/i,pb=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,qb=/^(?:GET|HEAD)$/,Ra=/\[\]$/,T=/\=\?(&|$)/,ja=/\?/,rb=/([?&])_=[^&]*/,sb=/^(\w+:)?\/\/([^\/?#]+)/,tb=/%20/g,ub=/#.*$/,Ha=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!=="string"&&Ha)return Ha.apply(this,arguments);else if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var f=a.slice(e,a.length);a=a.slice(0,e)}e="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b=== +"object"){b=c.param(b,c.ajaxSettings.traditional);e="POST"}var h=this;c.ajax({url:a,type:e,dataType:"html",data:b,complete:function(l,k){if(k==="success"||k==="notmodified")h.html(f?c("
    ").append(l.responseText.replace(nb,"")).find(f):l.responseText);d&&h.each(d,[l.responseText,k,l])}});return this},serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&& +!this.disabled&&(this.checked||ob.test(this.nodeName)||pb.test(this.type))}).map(function(a,b){var d=c(this).val();return d==null?null:c.isArray(d)?c.map(d,function(e){return{name:b.name,value:e}}):{name:b.name,value:d}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:e})}, +getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:e})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return new E.XMLHttpRequest},accepts:{xml:"application/xml, text/xml",html:"text/html", +script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},ajax:function(a){var b=c.extend(true,{},c.ajaxSettings,a),d,e,f,h=b.type.toUpperCase(),l=qb.test(h);b.url=b.url.replace(ub,"");b.context=a&&a.context!=null?a.context:b;if(b.data&&b.processData&&typeof b.data!=="string")b.data=c.param(b.data,b.traditional);if(b.dataType==="jsonp"){if(h==="GET")T.test(b.url)||(b.url+=(ja.test(b.url)?"&":"?")+(b.jsonp||"callback")+"=?");else if(!b.data|| +!T.test(b.data))b.data=(b.data?b.data+"&":"")+(b.jsonp||"callback")+"=?";b.dataType="json"}if(b.dataType==="json"&&(b.data&&T.test(b.data)||T.test(b.url))){d=b.jsonpCallback||"jsonp"+mb++;if(b.data)b.data=(b.data+"").replace(T,"="+d+"$1");b.url=b.url.replace(T,"="+d+"$1");b.dataType="script";var k=E[d];E[d]=function(m){if(c.isFunction(k))k(m);else{E[d]=B;try{delete E[d]}catch(p){}}f=m;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);r&&r.removeChild(A)}}if(b.dataType==="script"&&b.cache===null)b.cache= +false;if(b.cache===false&&l){var o=c.now(),x=b.url.replace(rb,"$1_="+o);b.url=x+(x===b.url?(ja.test(b.url)?"&":"?")+"_="+o:"")}if(b.data&&l)b.url+=(ja.test(b.url)?"&":"?")+b.data;b.global&&c.active++===0&&c.event.trigger("ajaxStart");o=(o=sb.exec(b.url))&&(o[1]&&o[1].toLowerCase()!==location.protocol||o[2].toLowerCase()!==location.host);if(b.dataType==="script"&&h==="GET"&&o){var r=t.getElementsByTagName("head")[0]||t.documentElement,A=t.createElement("script");if(b.scriptCharset)A.charset=b.scriptCharset; +A.src=b.url;if(!d){var C=false;A.onload=A.onreadystatechange=function(){if(!C&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){C=true;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);A.onload=A.onreadystatechange=null;r&&A.parentNode&&r.removeChild(A)}}}r.insertBefore(A,r.firstChild);return B}var J=false,w=b.xhr();if(w){b.username?w.open(h,b.url,b.async,b.username,b.password):w.open(h,b.url,b.async);try{if(b.data!=null&&!l||a&&a.contentType)w.setRequestHeader("Content-Type", +b.contentType);if(b.ifModified){c.lastModified[b.url]&&w.setRequestHeader("If-Modified-Since",c.lastModified[b.url]);c.etag[b.url]&&w.setRequestHeader("If-None-Match",c.etag[b.url])}o||w.setRequestHeader("X-Requested-With","XMLHttpRequest");w.setRequestHeader("Accept",b.dataType&&b.accepts[b.dataType]?b.accepts[b.dataType]+", */*; q=0.01":b.accepts._default)}catch(I){}if(b.beforeSend&&b.beforeSend.call(b.context,w,b)===false){b.global&&c.active--===1&&c.event.trigger("ajaxStop");w.abort();return false}b.global&& +c.triggerGlobal(b,"ajaxSend",[w,b]);var L=w.onreadystatechange=function(m){if(!w||w.readyState===0||m==="abort"){J||c.handleComplete(b,w,e,f);J=true;if(w)w.onreadystatechange=c.noop}else if(!J&&w&&(w.readyState===4||m==="timeout")){J=true;w.onreadystatechange=c.noop;e=m==="timeout"?"timeout":!c.httpSuccess(w)?"error":b.ifModified&&c.httpNotModified(w,b.url)?"notmodified":"success";var p;if(e==="success")try{f=c.httpData(w,b.dataType,b)}catch(q){e="parsererror";p=q}if(e==="success"||e==="notmodified")d|| +c.handleSuccess(b,w,e,f);else c.handleError(b,w,e,p);d||c.handleComplete(b,w,e,f);m==="timeout"&&w.abort();if(b.async)w=null}};try{var g=w.abort;w.abort=function(){w&&Function.prototype.call.call(g,w);L("abort")}}catch(i){}b.async&&b.timeout>0&&setTimeout(function(){w&&!J&&L("timeout")},b.timeout);try{w.send(l||b.data==null?null:b.data)}catch(n){c.handleError(b,w,null,n);c.handleComplete(b,w,e,f)}b.async||L();return w}},param:function(a,b){var d=[],e=function(h,l){l=c.isFunction(l)?l():l;d[d.length]= +encodeURIComponent(h)+"="+encodeURIComponent(l)};if(b===B)b=c.ajaxSettings.traditional;if(c.isArray(a)||a.jquery)c.each(a,function(){e(this.name,this.value)});else for(var f in a)da(f,a[f],b,e);return d.join("&").replace(tb,"+")}});c.extend({active:0,lastModified:{},etag:{},handleError:function(a,b,d,e){a.error&&a.error.call(a.context,b,d,e);a.global&&c.triggerGlobal(a,"ajaxError",[b,a,e])},handleSuccess:function(a,b,d,e){a.success&&a.success.call(a.context,e,d,b);a.global&&c.triggerGlobal(a,"ajaxSuccess", +[b,a])},handleComplete:function(a,b,d){a.complete&&a.complete.call(a.context,b,d);a.global&&c.triggerGlobal(a,"ajaxComplete",[b,a]);a.global&&c.active--===1&&c.event.trigger("ajaxStop")},triggerGlobal:function(a,b,d){(a.context&&a.context.url==null?c(a.context):c.event).trigger(b,d)},httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===1223}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"), +e=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(e)c.etag[b]=e;return a.status===304},httpData:function(a,b,d){var e=a.getResponseHeader("content-type")||"",f=b==="xml"||!b&&e.indexOf("xml")>=0;a=f?a.responseXML:a.responseText;f&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b==="json"||!b&&e.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&e.indexOf("javascript")>=0)c.globalEval(a);return a}}); +if(E.ActiveXObject)c.ajaxSettings.xhr=function(){if(E.location.protocol!=="file:")try{return new E.XMLHttpRequest}catch(a){}try{return new E.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}};c.support.ajax=!!c.ajaxSettings.xhr();var ea={},vb=/^(?:toggle|show|hide)$/,wb=/^([+\-]=)?([\d+.\-]+)(.*)$/,ba,pa=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b,d){if(a||a===0)return this.animate(S("show", +3),a,b,d);else{d=0;for(var e=this.length;d=0;e--)if(d[e].elem===this){b&&d[e](true);d.splice(e,1)}});b||this.dequeue();return this}});c.each({slideDown:S("show",1),slideUp:S("hide",1),slideToggle:S("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){c.fn[a]=function(d,e,f){return this.animate(b, +d,e,f)}});c.extend({speed:function(a,b,d){var e=a&&typeof a==="object"?c.extend({},a):{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};e.duration=c.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in c.fx.speeds?c.fx.speeds[e.duration]:c.fx.speeds._default;e.old=e.complete;e.complete=function(){e.queue!==false&&c(this).dequeue();c.isFunction(e.old)&&e.old.call(this)};return e},easing:{linear:function(a,b,d,e){return d+e*a},swing:function(a,b,d,e){return(-Math.cos(a* +Math.PI)/2+0.5)*e+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||c.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a=parseFloat(c.css(this.elem,this.prop));return a&&a>-1E4?a:0},custom:function(a,b,d){function e(l){return f.step(l)} +var f=this,h=c.fx;this.startTime=c.now();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;this.pos=this.state=0;e.elem=this.elem;if(e()&&c.timers.push(e)&&!ba)ba=setInterval(h.tick,h.interval)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true; +this.custom(this.cur(),0)},step:function(a){var b=c.now(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var e in this.options.curAnim)if(this.options.curAnim[e]!==true)d=false;if(d){if(this.options.overflow!=null&&!c.support.shrinkWrapBlocks){var f=this.elem,h=this.options;c.each(["","X","Y"],function(k,o){f.style["overflow"+o]=h.overflow[k]})}this.options.hide&&c(this.elem).hide();if(this.options.hide|| +this.options.show)for(var l in this.options.curAnim)c.style(this.elem,l,this.options.orig[l]);this.options.complete.call(this.elem)}return false}else{a=b-this.startTime;this.state=a/this.options.duration;b=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||b](this.state,a,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a= +c.timers,b=0;b-1;e={};var x={};if(o)x=f.position();l=o?x.top:parseInt(l,10)||0;k=o?x.left:parseInt(k,10)||0;if(c.isFunction(b))b=b.call(a,d,h);if(b.top!=null)e.top=b.top-h.top+l;if(b.left!=null)e.left=b.left-h.left+k;"using"in b?b.using.call(a, +e):f.css(e)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),e=Ia.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.css(a,"marginTop"))||0;d.left-=parseFloat(c.css(a,"marginLeft"))||0;e.top+=parseFloat(c.css(b[0],"borderTopWidth"))||0;e.left+=parseFloat(c.css(b[0],"borderLeftWidth"))||0;return{top:d.top-e.top,left:d.left-e.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||t.body;a&&!Ia.test(a.nodeName)&& +c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(e){var f=this[0],h;if(!f)return null;if(e!==B)return this.each(function(){if(h=fa(this))h.scrollTo(!a?e:c(h).scrollLeft(),a?e:c(h).scrollTop());else this[d]=e});else return(h=fa(f))?"pageXOffset"in h?h[a?"pageYOffset":"pageXOffset"]:c.support.boxModel&&h.document.documentElement[d]||h.document.body[d]:f[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase(); +c.fn["inner"+b]=function(){return this[0]?parseFloat(c.css(this[0],d,"padding")):null};c.fn["outer"+b]=function(e){return this[0]?parseFloat(c.css(this[0],d,e?"margin":"border")):null};c.fn[d]=function(e){var f=this[0];if(!f)return e==null?null:this;if(c.isFunction(e))return this.each(function(l){var k=c(this);k[d](e.call(this,l,k[d]()))});if(c.isWindow(f))return f.document.compatMode==="CSS1Compat"&&f.document.documentElement["client"+b]||f.document.body["client"+b];else if(f.nodeType===9)return Math.max(f.documentElement["client"+ +b],f.body["scroll"+b],f.documentElement["scroll"+b],f.body["offset"+b],f.documentElement["offset"+b]);else if(e===B){f=c.css(f,d);var h=parseFloat(f);return c.isNaN(h)?f:h}else return this.css(d,typeof e==="string"?e:e+"px")}})})(window); diff --git a/install-new/theme/js/jquery.ajaxfileupload.js b/install-new/theme/js/jquery.ajaxfileupload.js new file mode 100644 index 000000000..edff89456 --- /dev/null +++ b/install-new/theme/js/jquery.ajaxfileupload.js @@ -0,0 +1,53 @@ +/* + * this file come from: + * http://www.phpletter.com/Demo/AjaxFileUpload-Demo/ + * v 1.0 + */ + +jQuery.extend({createUploadIframe:function(id,uri) +{var frameId='jUploadFrame'+id;if(window.ActiveXObject){var io=document.createElement(' + + +
    + +displayTemplate('footer') ?> \ No newline at end of file diff --git a/install-new/theme/views/system.phtml b/install-new/theme/views/system.phtml new file mode 100644 index 000000000..2c8679930 --- /dev/null +++ b/install-new/theme/views/system.phtml @@ -0,0 +1,33 @@ +displayTemplate('header') ?> + +

    l('Required set-up. Please verify the following checklist items are true.') ?>

    + +

    l('If you have any questions, please visit our documentation and community forum.', $this->getDocumentationLink(), $this->getForumLink()); ?>

    + + +tests_render as $type => $categories): ?> + + tests['required']['success']): ?> +

    l('Your configuration is valid, click next to continue!') ?>

    + +

    l('Your configuration is invalid. Please fix the issues below:') ?>

    + + +

    l('Optional set-up') ?>

    + + +
      + +
    • + $lang): ?> +
    • + +
    • + + +
    + + +

    + +displayTemplate('footer') ?> \ No newline at end of file diff --git a/install-new/theme/views/welcome.phtml b/install-new/theme/views/welcome.phtml new file mode 100644 index 000000000..7e52f4623 --- /dev/null +++ b/install-new/theme/views/welcome.phtml @@ -0,0 +1,102 @@ +displayTemplate('header') ?> + +

    l('Welcome to the PrestaShop %s Installer.', _PS_INSTALL_VERSION_) ?>

    +

    l('Please allow 5-15 minutes to complete the installation process.') ?>

    +

    l('The installation should only take a few minutes: if you need help, do not hesitate to check our documentation or to contact our support team: %2$s', $this->getDocumentationLink(), $this->getPhone()) ?> + + +language->getIsoList()) > 1): ?> +

    l('Choose the installer language:') ?>

    +
      + language->getIsoList() as $iso): ?> +
    • + +
    • + +
    + + + +

    l('Did you know?'); ?>

    +

    l('PrestaShop and community offers over 40 different languages for free directly accessible from your back-office in tools tab'); ?>

    + + +

    l('Licenses Agreement') ?>

    +
    +

    l('PrestaShop core is released under the OSL 3.0 while PrestaShop modules and themes are released under the AFL 3.0.') ?>

    +

    Core: Open Software License ("OSL") v. 3.0

    +

    This Open Software License (the "License") applies to any original work of authorship (the "Original Work") whose owner (the "Licensor") has placed the following licensing notice adjacent to the copyright notice for the Original Work:

    +

    Licensed under the Open Software License version 3.0

    +

    1. Grant of Copyright License. Licensor grants You a worldwide, royalty-free, non-exclusive, sublicensable license, for the duration of the copyright, to do the following:

    +
      +
    1. to reproduce the Original Work in copies, either alone or as part of a collective work
    2. +
    3. to translate, adapt, alter, transform, modify, or arrange the Original Work, thereby creating derivative works ("Derivative Works") based upon the Original Work
    4. +
    5. to distribute or communicate copies of the Original Work and Derivative Works to the public, with the proviso that copies of Original Work or Derivative Works that You distribute or communicate shall be licensed under this Open Software License
    6. +
    7. to perform the Original Work publicly
    8. +
    9. to display the Original Work publicly
    10. +
    +

    2. Grant of Patent License. Licensor grants You a worldwide, royalty-free, non-exclusive, sublicensable license, under patent claims owned or controlled by the Licensor that are embodied in the Original Work as furnished by the Licensor, for the duration of the patents, to make, use, sell, offer for sale, have made, and import the Original Work and Derivative Works.

    +

    3. Grant of Source Code License. The term "Source Code" means the preferred form of the Original Work for making modifications to it and all available documentation describing how to modify the Original Work. Licensor agrees to provide a machine-readable copy of the Source Code of the Original Work along with each copy of the Original Work that Licensor distributes. Licensor reserves the right to satisfy this obligation by placing a machine-readable copy of the Source Code in an information repository reasonably calculated to permit inexpensive and convenient access by You for as long as Licensor continues to distribute the Original Work.

    +

    4. Exclusions From License Grant. Neither the names of Licensor, nor the names of any contributors to the Original Work, nor any of their trademarks or service marks, may be used to endorse or promote products derived from this Original Work without express prior permission of the Licensor. Except as expressly stated herein, nothing in this License grants any license to Licensor's trademarks, copyrights, patents, trade secrets or any other intellectual property. No patent license is granted to make, use, sell, offer for sale, have made, or import embodiments of any patent claims other than the licensed claims defined in Section 2. No license is granted to the trademarks of Licensor even if such marks are included in the Original Work. Nothing in this License shall be interpreted to prohibit Licensor from licensing under terms different from this License any Original Work that Licensor otherwise would have a right to license.

    +

    5. External Deployment. The term "External Deployment" means the use, distribution, or communication of the Original Work or Derivative Works in any way such that the Original Work or Derivative Works may be used by anyone other than You, whether those works are distributed or communicated to those persons or made available as an application intended for use over a network. As an express condition for the grants of license hereunder, You must treat any External Deployment by You of the Original Work or a Derivative Work as a distribution under section 1(c).

    +

    6. Attribution Rights. You must retain, in the Source Code of any Derivative Works that You create, all copyright, patent, or trademark notices from the Source Code of the Original Work, as well as any notices of licensing and any descriptive text identified therein as an "Attribution Notice." You must cause the Source Code for any Derivative Works that You create to carry a prominent Attribution Notice reasonably calculated to inform recipients that You have modified the Original Work.

    +

    7. Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that the copyright in and to the Original Work and the patent rights granted herein by Licensor are owned by the Licensor or are sublicensed to You under the terms of this License with the permission of the contributor(s) of those copyrights and patent rights. Except as expressly stated in the immediately preceding sentence, the Original Work is provided under this License on an "AS IS" BASIS and WITHOUT WARRANTY, either express or implied, including, without limitation, the warranties of non-infringement, merchantability or fitness for a particular purpose. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU. This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No license to the Original Work is granted by this License except under this disclaimer.

    +

    8. Limitation of Liability. Under no circumstances and under no legal theory, whether in tort (including negligence), contract, or otherwise, shall the Licensor be liable to anyone for any indirect, special, incidental, or consequential damages of any character arising as a result of this License or the use of the Original Work including, without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses. This limitation of liability shall not apply to the extent applicable law prohibits such limitation.

    +

    9. Acceptance and Termination. If, at any time, You expressly assented to this License, that assent indicates your clear and irrevocable acceptance of this License and all of its terms and conditions. If You distribute or communicate copies of the Original Work or a Derivative Work, You must make a reasonable effort under the circumstances to obtain the express assent of recipients to the terms of this License. This License conditions your rights to undertake the activities listed in Section 1, including your right to create Derivative Works based upon the Original Work, and doing so without honoring these terms and conditions is prohibited by copyright law and international treaty. Nothing in this License is intended to affect copyright exceptions and limitations (including 'fair use' or 'fair dealing'). This License shall terminate immediately and You may no longer exercise any of the rights granted to You by this License upon your failure to honor the conditions in Section 1(c).

    +

    10. Termination for Patent Action. This License shall terminate automatically and You may no longer exercise any of the rights granted to You by this License as of the date You commence an action, including a cross-claim or counterclaim, against Licensor or any licensee alleging that the Original Work infringes a patent. This termination provision shall not apply for an action alleging patent infringement by combinations of the Original Work with other software or hardware.

    +

    11. Jurisdiction, Venue and Governing Law. Any action or suit relating to this License may be brought only in the courts of a jurisdiction wherein the Licensor resides or in which Licensor conducts its primary business, and under the laws of that jurisdiction excluding its conflict-of-law provisions. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any use of the Original Work outside the scope of this License or after its termination shall be subject to the requirements and penalties of copyright or patent law in the appropriate jurisdiction. This section shall survive the termination of this License.

    +

    12. Attorneys Fees. In any action to enforce the terms of this License or seeking damages relating thereto, the prevailing party shall be entitled to recover its costs and expenses, including, without limitation, reasonable attorneys' fees and costs incurred in connection with such action, including any appeal of such action. This section shall survive the termination of this License.

    +

    13. Miscellaneous. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable.

    +

    14. Definition of "You" in This License. "You" throughout this License, whether in upper or lower case, means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License. For legal entities, "You" includes any entity that controls, is controlled by, or is under common control with you. For purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.

    +

    15. Right to Use. You may use the Original Work in all ways not otherwise restricted or conditioned by this License or by law, and Licensor promises not to interfere with or be responsible for such uses by You.

    +

    16. Modification of This License. This License is Copyright © 2005 Lawrence Rosen. Permission is granted to copy, distribute, or communicate this License without modification. Nothing in this License permits You to modify this License as applied to the Original Work or to Derivative Works. However, You may modify the text of this License and copy, distribute or communicate your modified version (the "Modified License") and apply it to other original works of authorship subject to the following conditions: (i) You may not indicate in any way that your Modified License is the "Open Software License" or "OSL" and you may not use those names in the name of your Modified License; (ii) You must replace the notice specified in the first paragraph above with the notice "Licensed under Open Software License ("OSL") v. 3.0" or with a notice of your own that is not confusingly similar to the notice in this License; and (iii) You may not claim that your original works are open source software unless your Modified License has been approved by Open Source Initiative (OSI) and You comply with its license review and certification process.

    + +

    Modules and Themes: Academic Free License ("AFL") v. 3.0

    +

    This Academic Free License (the "License") applies to any original work of authorship (the "Original Work") whose owner (the "Licensor") has placed the following licensing notice adjacent to the copyright notice for the Original Work:

    +

    Licensed under the Academic Free License version 3.0

    +

    1. Grant of Copyright License. Licensor grants You a worldwide, royalty-free, non-exclusive, sublicensable license, for the duration of the copyright, to do the following:

    +
      +
    1. to reproduce the Original Work in copies, either alone or as part of a collective work;
    2. +
    3. to translate, adapt, alter, transform, modify, or arrange the Original Work, thereby creating derivative works ("Derivative Works") based upon the Original Work;
    4. +
    5. to distribute or communicate copies of the Original Work and Derivative Works to the public, under any license of your choice that does not contradict the terms and conditions, including Licensor's reserved rights and remedies, in this Academic Free License;
    6. +
    7. to perform the Original Work publicly; and
    8. +
    9. to display the Original Work publicly.
    10. +
    +

    2. Grant of Patent License. Licensor grants You a worldwide, royalty-free, non-exclusive, sublicensable license, under patent claims owned or controlled by the Licensor that are embodied in the Original Work as furnished by the Licensor, for the duration of the patents, to make, use, sell, offer for sale, have made, and import the Original Work and Derivative Works.

    +

    3. Grant of Source Code License. The term "Source Code" means the preferred form of the Original Work for making modifications to it and all available documentation describing how to modify the Original Work. Licensor agrees to provide a machine-readable copy of the Source Code of the Original Work along with each copy of the Original Work that Licensor distributes. Licensor reserves the right to satisfy this obligation by placing a machine-readable copy of the Source Code in an information repository reasonably calculated to permit inexpensive and convenient access by You for as long as Licensor continues to distribute the Original Work.

    +

    4. Exclusions From License Grant. Neither the names of Licensor, nor the names of any contributors to the Original Work, nor any of their trademarks or service marks, may be used to endorse or promote products derived from this Original Work without express prior permission of the Licensor. Except as expressly stated herein, nothing in this License grants any license to Licensor's trademarks, copyrights, patents, trade secrets or any other intellectual property. No patent license is granted to make, use, sell, offer for sale, have made, or import embodiments of any patent claims other than the licensed claims defined in Section 2. No license is granted to the trademarks of Licensor even if such marks are included in the Original Work. Nothing in this License shall be interpreted to prohibit Licensor from licensing under terms different from this License any Original Work that Licensor otherwise would have a right to license.

    +

    5. External Deployment. The term "External Deployment" means the use, distribution, or communication of the Original Work or Derivative Works in any way such that the Original Work or Derivative Works may be used by anyone other than You, whether those works are distributed or communicated to those persons or made available as an application intended for use over a network. As an express condition for the grants of license hereunder, You must treat any External Deployment by You of the Original Work or a Derivative Work as a distribution under section 1(c).

    +

    6. Attribution Rights. You must retain, in the Source Code of any Derivative Works that You create, all copyright, patent, or trademark notices from the Source Code of the Original Work, as well as any notices of licensing and any descriptive text identified therein as an "Attribution Notice." You must cause the Source Code for any Derivative Works that You create to carry a prominent Attribution Notice reasonably calculated to inform recipients that You have modified the Original Work.

    +

    7. Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that the copyright in and to the Original Work and the patent rights granted herein by Licensor are owned by the Licensor or are sublicensed to You under the terms of this License with the permission of the contributor(s) of those copyrights and patent rights. Except as expressly stated in the immediately preceding sentence, the Original Work is provided under this License on an "AS IS" BASIS and WITHOUT WARRANTY, either express or implied, including, without limitation, the warranties of non-infringement, merchantability or fitness for a particular purpose. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU. This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No license to the Original Work is granted by this License except under this disclaimer.

    +

    8. Limitation of Liability. Under no circumstances and under no legal theory, whether in tort (including negligence), contract, or otherwise, shall the Licensor be liable to anyone for any indirect, special, incidental, or consequential damages of any character arising as a result of this License or the use of the Original Work including, without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses. This limitation of liability shall not apply to the extent applicable law prohibits such limitation.

    +

    9. Acceptance and Termination. If, at any time, You expressly assented to this License, that assent indicates your clear and irrevocable acceptance of this License and all of its terms and conditions. If You distribute or communicate copies of the Original Work or a Derivative Work, You must make a reasonable effort under the circumstances to obtain the express assent of recipients to the terms of this License. This License conditions your rights to undertake the activities listed in Section 1, including your right to create Derivative Works based upon the Original Work, and doing so without honoring these terms and conditions is prohibited by copyright law and international treaty. Nothing in this License is intended to affect copyright exceptions and limitations (including "fair use" or "fair dealing"). This License shall terminate immediately and You may no longer exercise any of the rights granted to You by this License upon your failure to honor the conditions in Section 1(c).

    +

    10. Termination for Patent Action. This License shall terminate automatically and You may no longer exercise any of the rights granted to You by this License as of the date You commence an action, including a cross-claim or counterclaim, against Licensor or any licensee alleging that the Original Work infringes a patent. This termination provision shall not apply for an action alleging patent infringement by combinations of the Original Work with other software or hardware.

    +

    11. Jurisdiction, Venue and Governing Law. Any action or suit relating to this License may be brought only in the courts of a jurisdiction wherein the Licensor resides or in which Licensor conducts its primary business, and under the laws of that jurisdiction excluding its conflict-of-law provisions. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any use of the Original Work outside the scope of this License or after its termination shall be subject to the requirements and penalties of copyright or patent law in the appropriate jurisdiction. This section shall survive the termination of this License.

    +

    12. Attorneys' Fees. In any action to enforce the terms of this License or seeking damages relating thereto, the prevailing party shall be entitled to recover its costs and expenses, including, without limitation, reasonable attorneys' fees and costs incurred in connection with such action, including any appeal of such action. This section shall survive the termination of this License.

    +

    13. Miscellaneous. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable.

    +

    14. Definition of "You" in This License. "You" throughout this License, whether in upper or lower case, means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License. For legal entities, "You" includes any entity that controls, is controlled by, or is under common control with you. For purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.

    +

    15. Right to Use. You may use the Original Work in all ways not otherwise restricted or conditioned by this License or by law, and Licensor promises not to interfere with or be responsible for such uses by You.

    +

    16. Modification of This License. This License is Copyright © 2005 Lawrence Rosen. Permission is granted to copy, distribute, or communicate this License without modification. Nothing in this License permits You to modify this License as applied to the Original Work or to Derivative Works. However, You may modify the text of this License and copy, distribute or communicate your modified version (the "Modified License") and apply it to other original works of authorship subject to the following conditions: (i) You may not indicate in any way that your Modified License is the "Academic Free License" or "AFL" and you may not use those names in the name of your Modified License; (ii) You must replace the notice specified in the first paragraph above with the notice "Licensed under " or with a notice of your own that is not confusingly similar to the notice in this License; and (iii) You may not claim that your original works are open source software unless your Modified License has been approved by Open Source Initiative (OSI) and You comply with its license review and certification process.

    +
    + +

    + +
    + +

    + +displayTemplate('footer') ?> \ No newline at end of file diff --git a/install-new/upgrade/classes/AddConfToFile.php b/install-new/upgrade/classes/AddConfToFile.php new file mode 100644 index 000000000..86b044004 --- /dev/null +++ b/install-new/upgrade/classes/AddConfToFile.php @@ -0,0 +1,91 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +class AddConfToFile +{ + public $fd; + public $file; + public $mode; + public $error = false; + + public function __construct($file, $mode = 'r+') + { + $this->file = $file; + $this->mode = $mode; + $this->checkFile($file); + if ($mode == 'w' AND !$this->error) + if (!$res = @fwrite($this->fd, 'error = 6; + } + + public function __destruct() + { + if (!$this->error) + @fclose($this->fd); + } + + private function checkFile($file) + { + if (!$fd = @fopen($this->file, $this->mode)) + $this->error = 5; + elseif (!is_writable($this->file)) + $this->error = 6; + $this->fd = $fd; + } + + public function writeInFile($name, $data) + { + if (!$res = @fwrite($this->fd, + 'define(\''.$name.'\', \''.$this->checkString($data).'\');'."\n")) + { + $this->error = 6; + return false; + } + return true; + } + + public function writeEndTagPhp() + { + if (!$res = @fwrite($this->fd, '?>'."\n")) { + $this->error = 6; + return false; + } + return true; + } + + public function checkString($string) + { + if (get_magic_quotes_gpc()) + $string = stripslashes($string); + if (!is_numeric($string)) + { + $string = addslashes($string); + $string = strip_tags(nl2br($string)); + } + return $string; + } +} diff --git a/install-new/upgrade/classes/Language.php b/install-new/upgrade/classes/Language.php new file mode 100644 index 000000000..56fb7e91c --- /dev/null +++ b/install-new/upgrade/classes/Language.php @@ -0,0 +1,652 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +class Language extends ObjectModel +{ + public $id; + + /** @var string Name */ + public $name; + + /** @var string 2-letter iso code */ + public $iso_code; + + /** @var string 5-letter iso code */ + public $language_code; + + /** @var bool true if this language is right to left language */ + public $is_rtl = false; + + /** @var boolean Status */ + public $active = true; + + protected $fieldsRequired = array('name', 'iso_code'); + protected $fieldsSize = array('name' => 32, 'iso_code' => 2, 'language_code' => 5); + protected $fieldsValidate = array('name' => 'isGenericName', 'iso_code' => 'isLanguageIsoCode', 'language_code' => 'isLanguageCode', 'active' => 'isBool', 'is_rtl' => 'isBool'); + + protected $table = 'lang'; + protected $identifier = 'id_lang'; + + /** @var array Languages cache */ + protected static $_checkedLangs; + protected static $_LANGUAGES; + protected static $countActiveLanguages; + + protected $webserviceParameters = array( + 'objectNodeName' => 'language', + 'objectsNodeName' => 'languages', + ); + + public function __construct($id = NULL, $id_lang = NULL) + { + parent::__construct($id); + } + + public function getFields() + { + parent::validateFields(); + $fields['name'] = pSQL($this->name); + $fields['iso_code'] = pSQL(strtolower($this->iso_code)); + $fields['language_code'] = pSQL(strtolower($this->language_code)); + $fields['is_rtl'] = (int)$this->is_rtl; + if (empty($fields['language_code'])) + $fields['language_code'] = $fields['iso_code']; + $fields['active'] = (int)$this->active; + return $fields; + } + + public function add($autodate = true, $nullValues = false) + { + if (!parent::add($autodate)) + return false; + + $translationsFiles = array( + 'fields' => '_FIELDS', + 'errors' => '_ERRORS', + 'admin' => '_LANGADM', + 'pdf' => '_LANGPDF', + ); + if (!file_exists(_PS_TRANSLATIONS_DIR_.$this->iso_code)) + mkdir(_PS_TRANSLATIONS_DIR_.$this->iso_code); + foreach ($translationsFiles as $file => $var) + if (!file_exists(_PS_TRANSLATIONS_DIR_.$this->iso_code.'/'.$file.'.php')) + file_put_contents(_PS_TRANSLATIONS_DIR_.$this->iso_code.'/'.$file.'.php', ''); + + $resUpdateSQL = $this->loadUpdateSQL(); + // If url_rewrite is not enabled, we don't need to regenerate .htaccess + if(!Configuration::get('PS_REWRITING_SETTINGS')) + return $resUpdateSQL; + + return ($resUpdateSQL AND Tools::generateHtaccess(dirname(__FILE__).'/../.htaccess', + (int)(Configuration::get('PS_REWRITING_SETTINGS')), + (int)(Configuration::get('PS_HTACCESS_CACHE_CONTROL')), + '' + )); + } + + public function toggleStatus() + { + if (!parent::toggleStatus()) + return false; + + // If url_rewrite is not enabled, we don't need to regenerate .htaccess + if(!Configuration::get('PS_REWRITING_SETTINGS')) + return true; + return (Tools::generateHtaccess(dirname(__FILE__).'/../.htaccess', + (int)(Configuration::get('PS_REWRITING_SETTINGS')), + (int)(Configuration::get('PS_HTACCESS_CACHE_CONTROL')), + '' + )); + } + + public function checkFiles() + { + return self::checkFilesWithIsoCode($this->iso_code); + } + + + /** + * This functions checks if every files exists for the language $iso_code. + * Concerned files are theses located in translations/$iso_code/ + * and translations/mails/$iso_code . + * + * @param mixed $iso_code + * @returntrue if all files exists + */ + public static function checkFilesWithIsoCode($iso_code) + { + if (isset(self::$_checkedLangs[$iso_code]) AND self::$_checkedLangs[$iso_code]) + return true; + foreach (array_keys(self::getFilesList($iso_code, _THEME_NAME_, false, false, false, true)) as $key) + if (!file_exists($key)) + return false; + self::$_checkedLangs[$iso_code] = true; + return true; + } + + public static function getFilesList($iso_from, $theme_from, $iso_to = false, $theme_to = false, $select = false, $check = false, $modules = false) + { + if (empty($iso_from)) + die(Tools::displayError()); + + $copy = ($iso_to AND $theme_to) ? true : false; + + $lPath_from = _PS_TRANSLATIONS_DIR_.(string)$iso_from.'/'; + $tPath_from = _PS_ROOT_DIR_.'/themes/'.(string)$theme_from.'/'; + $mPath_from = _PS_MAIL_DIR_.(string)$iso_from.'/'; + + if ($copy) + { + $lPath_to = _PS_TRANSLATIONS_DIR_.(string)$iso_to.'/'; + $tPath_to = _PS_ROOT_DIR_.'/themes/'.(string)$theme_to.'/'; + $mPath_to = _PS_MAIL_DIR_.(string)$iso_to.'/'; + } + + $lFiles = array('admin'.'.php', 'errors'.'.php', 'fields'.'.php', 'pdf'.'.php'); + $mFiles = array( + 'account.html', 'account.txt', + 'bankwire.html', 'bankwire.txt', + 'cheque.html', 'cheque.txt', + 'contact.html', 'contact.txt', + 'contact_form.html', 'contact_form.txt', + 'credit_slip.html', 'credit_slip.txt', + 'download_product.html', 'download_product.txt', + 'download-product.tpl', + 'employee_password.html', 'employee_password.txt', + 'forward_msg.html', 'forward_msg.txt', + 'guest_to_customer.html', 'guest_to_customer.txt', + 'in_transit.html', 'in_transit.txt', + 'newsletter.html', 'newsletter.txt', + 'order_canceled.html', 'order_canceled.txt', + 'order_conf.html', 'order_conf.txt', + 'order_customer_comment.html', 'order_customer_comment.txt', + 'order_merchant_comment.html', 'order_merchant_comment.txt', + 'order_return_state.html', 'order_return_state.txt', + 'outofstock.html', 'outofstock.txt', + 'password.html', 'password.txt', + 'password_query.html', 'password_query.txt', + 'payment.html', 'payment.txt', + 'payment_error.html', 'payment_error.txt', + 'preparation.html', 'preparation.txt', + 'refund.html', 'refund.txt', + 'reply_msg.html', 'reply_msg.txt', + 'shipped.html', 'shipped.txt', + 'test.html', 'test.txt', + 'voucher.html', 'voucher.txt', + ); + + $number = -1; + + $files = array(); + $files_tr = array(); + $files_theme = array(); + $files_mail = array(); + $files_modules = array(); + + + // When a copy is made from a theme in specific language + // to an other theme for the same language, + // it's avoid to copy Translations, Mails files + // and modules files which are not override by theme. + if (!$copy OR $iso_from != $iso_to) + { + // Translations files + if (!$check OR ($check AND (string)$iso_from != 'en')) + foreach ($lFiles as $file) + $files_tr[$lPath_from.$file] = ($copy ? $lPath_to.$file : ++$number); + if ($select == 'tr') + return $files_tr; + $files = array_merge($files, $files_tr); + + // Mail files + if (!$check OR ($check AND (string)$iso_from != 'en')) + $files_mail[$mPath_from.'lang.php'] = ($copy ? $mPath_to.'lang.php' : ++$number); + foreach ($mFiles as $file) + $files_mail[$mPath_from.$file] = ($copy ? $mPath_to.$file : ++$number); + if ($select == 'mail') + return $files_mail; + $files = array_merge($files, $files_mail); + + // Modules + if ($modules) + { + $modList = Module::getModulesDirOnDisk(); + foreach ($modList as $mod) + { + $modDir = _PS_MODULE_DIR_.$mod; + // Lang file + if (file_exists($modDir.'/'.(string)$iso_from.'.php')) + $files_modules[$modDir.'/'.(string)$iso_from.'.php'] = ($copy ? $modDir.'/'.(string)$iso_to.'.php' : ++$number); + // Mails files + $modMailDirFrom = $modDir.'/mails/'.(string)$iso_from; + $modMailDirTo = $modDir.'/mails/'.(string)$iso_to; + if (file_exists($modMailDirFrom)) + { + $dirFiles = scandir($modMailDirFrom); + foreach ($dirFiles as $file) + if (file_exists($modMailDirFrom.'/'.$file) AND $file != '.' AND $file != '..' AND $file != '.svn') + $files_modules[$modMailDirFrom.'/'.$file] = ($copy ? $modMailDirTo.'/'.$file : ++$number); + } + } + if ($select == 'modules') + return $files_modules; + $files = array_merge($files, $files_modules); + } + } + else if ($select == 'mail' OR $select == 'tr') + { + return $files; + } + + // Theme files + if (!$check OR ($check AND (string)$iso_from != 'en')) + { + $files_theme[$tPath_from.'lang/'.(string)$iso_from.'.php'] = ($copy ? $tPath_to.'lang/'.(string)$iso_to.'.php' : ++$number); + $module_theme_files = (file_exists($tPath_from.'modules/') ? scandir($tPath_from.'modules/') : array()); + foreach ($module_theme_files as $module) + if ($module !== '.' AND $module != '..' AND $module !== '.svn' AND file_exists($tPath_from.'modules/'.$module.'/'.(string)$iso_from.'.php')) + $files_theme[$tPath_from.'modules/'.$module.'/'.(string)$iso_from.'.php'] = ($copy ? $tPath_to.'modules/'.$module.'/'.(string)$iso_to.'.php' : ++$number); + } + if ($select == 'theme') + return $files_theme; + $files = array_merge($files, $files_theme); + + // Return + return $files; + } + + /** + * loadUpdateSQL will create default lang values when you create a new lang, based on default id lang + * + * @return boolean true if succeed + */ + public function loadUpdateSQL() + { + $tables = Db::getInstance()->executeS('SHOW TABLES LIKE \''._DB_PREFIX_.'%_lang\' '); + $langTables = array(); + + foreach($tables as $table) + foreach($table as $t) + $langTables[] = $t; + + Db::getInstance()->execute('SET @id_lang_default = (SELECT c.`value` FROM `'._DB_PREFIX_.'configuration` c WHERE c.`name` = \'PS_LANG_DEFAULT\' LIMIT 1)'); + $return = true; + foreach($langTables as $name) + { + $fields = ''; + $columns = Db::getInstance()->executeS('SHOW COLUMNS FROM `'.$name.'`'); + foreach($columns as $column) + $fields .= $column['Field'].', '; + $fields = rtrim($fields, ', '); + $identifier = 'id_'.str_replace('_lang', '', str_replace(_DB_PREFIX_, '', $name)); + + $sql = 'INSERT IGNORE INTO `'.$name.'` ('.$fields.') (SELECT '; + foreach($columns as $column) { + if ($identifier != $column['Field'] and $column['Field'] != 'id_lang') + $sql .= '(SELECT `'.$column['Field'].'` FROM `'.$name.'` tl WHERE tl.`id_lang` = @id_lang_default AND tl.`'.$identifier.'` = `'.str_replace('_lang', '', $name).'`.`'.$identifier.'`), '; + else + $sql.= '`'.$column['Field'].'`, '; + } + $sql = rtrim($sql, ', '); + $sql .= ' FROM `'._DB_PREFIX_.'lang` CROSS JOIN `'.str_replace('_lang', '', $name).'`) ;'; + $return &= Db::getInstance()->execute(pSQL($sql)); + } + return $return; + } + + public static function recurseDeleteDir($dir) + { + if (!is_dir($dir)) + return false; + if ($handle = @opendir($dir)) + { + while (false !== ($file = readdir($handle))) + if ($file != '.' && $file != '..') + { + if (is_dir($dir.'/'.$file)) + self::recurseDeleteDir($dir.'/'.$file); + elseif (file_exists($dir.'/'.$file)) + @unlink($dir.'/'.$file); + } + closedir($handle); + } + rmdir($dir); + } + + public function delete() + { + if (empty($this->iso_code)) + $this->iso_code = self::getIsoById($this->id); + + // Database translations deletion + $result = Db::getInstance()->executeS('SHOW TABLES FROM `'._DB_NAME_.'`'); + foreach ($result AS $row) + if (preg_match('/_lang/', $row['Tables_in_'._DB_NAME_])) + if (!Db::getInstance()->execute('DELETE FROM `'.$row['Tables_in_'._DB_NAME_].'` WHERE `id_lang` = '.(int)($this->id))) + return false; + + // Delete tags + Db::getInstance()->execute('DELETE FROM '._DB_PREFIX_.'tag WHERE id_lang = '.(int)($this->id)); + + // Delete search words + Db::getInstance()->execute('DELETE FROM '._DB_PREFIX_.'search_word WHERE id_lang = '.(int)($this->id)); + + // Files deletion + foreach (self::getFilesList($this->iso_code, _THEME_NAME_, false, false, false, true, true) as $key => $file) + if (file_exists($key)) + unlink($key); + $modList = scandir(_PS_MODULE_DIR_); + foreach ($modList as $mod) + { + self::recurseDeleteDir(_PS_MODULE_DIR_.$mod.'/mails/'.$this->iso_code); + $files = @scandir(_PS_MODULE_DIR_.$mod.'/mails/'); + if (count($files) <= 2) + self::recurseDeleteDir(_PS_MODULE_DIR_.$mod.'/mails/'); + + if(file_exists(_PS_MODULE_DIR_.$mod.'/'.$this->iso_code.'.php')) + { + unlink(_PS_MODULE_DIR_.$mod.'/'.$this->iso_code.'.php'); + $files = @scandir(_PS_MODULE_DIR_.$mod); + if (count($files) <= 2) + self::recurseDeleteDir(_PS_MODULE_DIR_.$mod); + } + } + + if (file_exists(_PS_MAIL_DIR_.$this->iso_code)) + self::recurseDeleteDir(_PS_MAIL_DIR_.$this->iso_code); + if (file_exists(_PS_TRANSLATIONS_DIR_.$this->iso_code)) + self::recurseDeleteDir(_PS_TRANSLATIONS_DIR_.$this->iso_code); + if (!parent::delete()) + return false; + + // delete images + $files_copy = array('/en.jpg', '/en-default-thickbox.jpg', '/en-default-home.jpg', '/en-default-large.jpg', '/en-default-medium.jpg', '/en-default-small.jpg', '/en-default-large_scene.jpg'); + $tos = array(_PS_CAT_IMG_DIR_, _PS_MANU_IMG_DIR_, _PS_PROD_IMG_DIR_, _PS_SUPP_IMG_DIR_); + foreach($tos AS $to) + foreach($files_copy AS $file) + { + $name = str_replace('/en', ''.$this->iso_code, $file); + + if (file_exists($to.$name)) + unlink($to.$name); + if (file_exists(dirname(__FILE__).'/../img/l/'.$this->id.'.jpg')) + unlink(dirname(__FILE__).'/../img/l/'.$this->id.'.jpg'); + } + + // If url_rewrite is not enabled, we don't need to regenerate .htaccess + if(!Configuration::get('PS_REWRITING_SETTINGS')) + return true; + + return Tools::generateHtaccess(dirname(__FILE__).'/../.htaccess', + (int)(Configuration::get('PS_REWRITING_SETTINGS')), + (int)(Configuration::get('PS_HTACCESS_CACHE_CONTROL')), + '' + ); + } + + + public function deleteSelection($selection) + { + if (!is_array($selection) OR !Validate::isTableOrIdentifier($this->identifier) OR !Validate::isTableOrIdentifier($this->table)) + die(Tools::displayError()); + $result = true; + foreach ($selection AS $id) + { + $this->id = (int)($id); + $result = $result AND $this->delete(); + } + + // If url_rewrite is not enabled, we don't need to regenerate .htaccess + if(!Configuration::get('PS_REWRITING_SETTINGS')) + return true; + + Tools::generateHtaccess(dirname(__FILE__).'/../.htaccess', + (int)(Configuration::get('PS_REWRITING_SETTINGS')), + (int)(Configuration::get('PS_HTACCESS_CACHE_CONTROL')), + '' + ); + + return $result; + } + + /** + * Return available languages + * + * @param boolean $active Select only active languages + * @return array Languages + */ + public static function getLanguages($active = true) + { + if(!self::$_LANGUAGES) + self::loadLanguages(); + + $languages = array(); + foreach (self::$_LANGUAGES AS $language) + { + if ($active AND !$language['active']) + continue; + $languages[] = $language; + } + return $languages; + } + + public static function getLanguage($id_lang) + { + if (!array_key_exists((int)($id_lang), self::$_LANGUAGES)) + return false; + return self::$_LANGUAGES[(int)($id_lang)]; + } + + /** + * Return iso code from id + * + * @param integer $id_lang Language ID + * @return string Iso code + */ + public static function getIsoById($id_lang) + { + if (isset(self::$_LANGUAGES[(int)$id_lang]['iso_code'])) + return self::$_LANGUAGES[(int)$id_lang]['iso_code']; + return false; + } + + /** + * Return id from iso code + * + * @param string $iso_code Iso code + * @return integer Language ID + */ + public static function getIdByIso($iso_code) + { + if (!Validate::isLanguageIsoCode($iso_code)) + die(Tools::displayError('Fatal error : iso code is not correct : ').$iso_code); + + return Db::getInstance()->getValue('SELECT `id_lang` FROM `'._DB_PREFIX_.'lang` WHERE `iso_code` = \''.pSQL(strtolower($iso_code)).'\''); + } + + public static function getLanguageCodeByIso($iso_code) + { + if (!Validate::isLanguageIsoCode($iso_code)) + die(Tools::displayError('Fatal error : iso code is not correct : ').$iso_code); + + return Db::getInstance()->getValue('SELECT `language_code` FROM `'._DB_PREFIX_.'lang` WHERE `iso_code` = \''.pSQL(strtolower($iso_code)).'\''); + } + + /** + * Return array (id_lang, iso_code) + * + * @param string $iso_code Iso code + * @return array Language (id_lang, iso_code) + */ + public static function getIsoIds($active = true) + { + return Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS('SELECT `id_lang`, `iso_code` FROM `'._DB_PREFIX_.'lang` '.($active ? 'WHERE active = 1' : '')); + } + + public static function copyLanguageData($from, $to) + { + $result = Db::getInstance()->executeS('SHOW TABLES FROM `'._DB_NAME_.'`'); + foreach ($result AS $row) + if (preg_match('/_lang/', $row['Tables_in_'._DB_NAME_]) AND $row['Tables_in_'._DB_NAME_] != _DB_PREFIX_.'lang') + { + $result2 = Db::getInstance()->executeS('SELECT * FROM `'.$row['Tables_in_'._DB_NAME_].'` WHERE `id_lang` = '.(int)($from)); + if (!sizeof($result2)) + continue; + Db::getInstance()->execute('DELETE FROM `'.$row['Tables_in_'._DB_NAME_].'` WHERE `id_lang` = '.(int)($to)); + $query = 'INSERT INTO `'.$row['Tables_in_'._DB_NAME_].'` VALUES '; + foreach ($result2 AS $row2) + { + $query .= '('; + $row2['id_lang'] = $to; + foreach ($row2 AS $field) + $query .= '\''.pSQL($field, true).'\','; + $query = rtrim($query, ',').'),'; + } + $query = rtrim($query, ','); + Db::getInstance()->execute($query); + } + return true; + } + + /** + * Load all languages in memory for caching + */ + public static function loadLanguages() + { + self::$_LANGUAGES = array(); + + $result = Db::getInstance()->executeS(' + SELECT `id_lang`, `name`, `iso_code`, `active` + FROM `'._DB_PREFIX_.'lang`'); + + foreach ($result AS $row) + self::$_LANGUAGES[(int)$row['id_lang']] = array('id_lang' => (int)$row['id_lang'], 'name' => $row['name'], 'iso_code' => $row['iso_code'], 'active' => (int)$row['active']); + } + + public function update($nullValues = false) + { + if (!parent::update($nullValues)) + return false; + + // If url_rewrite is not enabled, we don't need to regenerate .htaccess + if(!Configuration::get('PS_REWRITING_SETTINGS')) + return true; + + return Tools::generateHtaccess(dirname(__FILE__).'/../.htaccess', + (int)(Configuration::get('PS_REWRITING_SETTINGS')), + (int)(Configuration::get('PS_HTACCESS_CACHE_CONTROL')), + '' + ); + } + + public static function checkAndAddLanguage($iso_code) + { + if (Language::getIdByIso($iso_code)) + return true; + else + { + if(@fsockopen('www.prestashop.com', 80)) + { + $lang = new Language(); + $lang->iso_code = $iso_code; + $lang->active = true; + + if ($lang_pack = Tools::jsonDecode(Tools::file_get_contents('http://www.prestashop.com/download/lang_packs/get_language_pack.php?version='._PS_VERSION_.'&iso_lang='.$iso_code))) + { + if (isset($lang_pack->name) + && isset($lang_pack->version) + && isset($lang_pack->iso_code)) + $lang->name = $lang_pack->name; + } + if (!$lang->name OR !$lang->add()) + return false; + $insert_id = (int)($lang->id); + + if ($lang_pack) + { + $flag = Tools::file_get_contents('http://www.prestashop.com/download/lang_packs/flags/jpeg/'.$iso_code.'.jpg'); + if ($flag != NULL && !preg_match('//', $flag)) + { + $file = fopen(dirname(__FILE__).'/../img/l/'.$insert_id.'.jpg', 'w'); + if ($file) + { + fwrite($file, $flag); + fclose($file); + } + else + self::_copyNoneFlag($insert_id); + } + else + self::_copyNoneFlag($insert_id); + } + else + self::_copyNoneFlag($insert_id); + + $files_copy = array('/en.jpg', '/en-default-thickbox.jpg', '/en-default-home.jpg', '/en-default-large.jpg', '/en-default-medium.jpg', '/en-default-small.jpg', '/en-default-large_scene.jpg'); + $tos = array(_PS_CAT_IMG_DIR_, _PS_MANU_IMG_DIR_, _PS_PROD_IMG_DIR_, _PS_SUPP_IMG_DIR_); + foreach($tos AS $to) + foreach($files_copy AS $file) + { + $name = str_replace('/en', '/'.$iso_code, $file); + copy(dirname(__FILE__).'/../img/l'.$file, $to.$name); + } + return true; + } + else + return false; + } + } + + protected static function _copyNoneFlag($id) + { + return copy(dirname(__FILE__).'/../img/l/none.jpg', dirname(__FILE__).'/../img/l/'.$id.'.jpg'); + } + + private static $_cache_language_installation = null; + public static function isInstalled($iso_code) + { + if (self::$_cache_language_installation === null) + { + self::$_cache_language_installation = array(); + $result = Db::getInstance()->executeS('SELECT `id_lang`, `iso_code` FROM `'._DB_PREFIX_.'lang`'); + foreach ($result as $row) + self::$_cache_language_installation[$row['iso_code']] = $row['id_lang']; + } + return (isset(self::$_cache_language_installation[$iso_code]) ? self::$_cache_language_installation[$iso_code] : false); + } + + public static function countActiveLanguages() + { + if (!self::$countActiveLanguages) + self::$countActiveLanguages = Db::getInstance()->getValue('SELECT COUNT(*) FROM `'._DB_PREFIX_.'lang` WHERE `active` = 1'); + return self::$countActiveLanguages; + } +} + diff --git a/install-new/upgrade/classes/Module.php b/install-new/upgrade/classes/Module.php new file mode 100644 index 000000000..181bfa992 --- /dev/null +++ b/install-new/upgrade/classes/Module.php @@ -0,0 +1,1057 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +abstract class Module +{ + /** @var integer Module ID */ + public $id = NULL; + + /** @var float Version */ + public $version; + + /** @var string Unique name */ + public $name; + + /** @var string Human name */ + public $displayName; + + /** @var string A little description of the module */ + public $description; + + /** @var string author of the module */ + public $author; + + /** @var int need_instance */ + public $need_instance = 1; + + /** @var string Admin tab correponding to the module */ + public $tab = NULL; + + /** @var boolean Status */ + public $active = false; + + /** @var array current language translations */ + protected $_lang = array(); + + /** @var string Module web path (eg. '/shop/modules/modulename/') */ + protected $_path = NULL; + + /** @var string Fill it if the module is installed but not yet set up */ + public $warning; + + /** @var string Message display before uninstall a module */ + public $beforeUninstall = NULL; + + public $_errors = false; + + protected $table = 'module'; + + protected $identifier = 'id_module'; + + static public $_db; + + /** @var array to store the limited country */ + public $limited_countries = array(); + + /** + * Constructor + * + * @param string $name Module unique name + */ + protected static $modulesCache; + protected static $_hookModulesCache; + + protected static $_INSTANCE = array(); + + protected static $_generateConfigXmlMode = false; + + protected static $l_cache = array(); + + /** + * @var array used by AdminTab to determine which lang file to use (admin.php or module lang file) + */ + public static $classInModule = array(); + + public function __construct($name = NULL) + { + if ($this->name == NULL) + $this->name = $this->id; + if ($this->name != NULL) + { + if (self::$modulesCache == NULL AND !is_array(self::$modulesCache)) + { + self::$modulesCache = array(); + $result = Db::getInstance()->executeS('SELECT * FROM `'.pSQL(_DB_PREFIX_.$this->table).'`'); + foreach ($result as $row) + self::$modulesCache[$row['name']] = $row; + } + if (isset(self::$modulesCache[$this->name])) + { + $this->active = true; + $this->id = self::$modulesCache[$this->name]['id_module']; + foreach (self::$modulesCache[$this->name] AS $key => $value) + if (key_exists($key, $this)) + $this->{$key} = $value; + $this->_path = __PS_BASE_URI__.'modules/'.$this->name.'/'; + } + } + } + + /** + * Insert module into datable + */ + public function install() + { + if (!Validate::isModuleName($this->name)) + die(Tools::displayError()); + $result = Db::getInstance()->getRow(' + SELECT `id_module` + FROM `'._DB_PREFIX_.'module` + WHERE `name` = \''.pSQL($this->name).'\''); + if ($result) + return false; + $result = Db::getInstance()->AutoExecute(_DB_PREFIX_.$this->table, array('name' => $this->name, 'active' => 1), 'INSERT'); + if (!$result) + return false; + $this->id = Db::getInstance()->Insert_ID(); + return true; + } + + /** + * Delete module from datable + * + * @return boolean result + */ + public function uninstall() + { + if (!Validate::isUnsignedId($this->id)) + return false; + $result = Db::getInstance()->executeS(' + SELECT `id_hook` + FROM `'._DB_PREFIX_.'hook_module` hm + WHERE `id_module` = '.(int)($this->id)); + foreach ($result AS $row) + { + Db::getInstance()->execute(' + DELETE FROM `'._DB_PREFIX_.'hook_module` + WHERE `id_module` = '.(int)($this->id).' + AND `id_hook` = '.(int)($row['id_hook'])); + $this->cleanPositions($row['id_hook']); + } + return Db::getInstance()->execute(' + DELETE FROM `'._DB_PREFIX_.'module` + WHERE `id_module` = '.(int)($this->id)); + } + + /** + * This function enable module $name. If an $name is an array, + * this will enable all of them + * + * @param array|string $name + * @return true if succeed + * @since 1.4.1 + */ + public static function enableByName($name) + { + if (!is_array($name)) + $name = array($name); + + foreach ($name as $k=>$v) + $name[$k] = '"'.pSQL($v).'"'; + + return Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'module` + SET `active`= 1 + WHERE `name` IN ('.implode(',',$name).')'); + } + /** + * Called when module is set to active + */ + public function enable() + { + return Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'module` + SET `active`= 1 + WHERE `name` = \''.pSQL($this->name).'\''); + } + + /** + * This function disable module $name. If an $name is an array, + * this will disable all of them + * + * @param array|string $name + * @return true if succeed + * @since 1.4.1 + */ + public static function disableByName($name) + { + if (!is_array($name)) + $name = array($name); + + foreach ($name as $k=>$v) + $name[$k] = '"'.pSQL($v).'"'; + + return Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'module` + SET `active`= 0 + WHERE `name` IN ('.implode(',',$name).')'); + } + + /** + * Called when module is set to deactive + */ + public function disable() + { + return Module::disableByName($this->name); + } + + /** + * Connect module to a hook + * + * @param string $hook_name Hook name + * @return boolean result + */ + public function registerHook($hook_name) + { + if (!Validate::isHookName($hook_name)) + die(Tools::displayError()); + if (!isset($this->id) OR !is_numeric($this->id)) + return false; + + // Check if already register + $result = Db::getInstance()->getRow(' + SELECT hm.`id_module` FROM `'._DB_PREFIX_.'hook_module` hm, `'._DB_PREFIX_.'hook` h + WHERE hm.`id_module` = '.(int)($this->id).' + AND h.`name` = \''.pSQL($hook_name).'\' + AND h.`id_hook` = hm.`id_hook`'); + if ($result) + return true; + + // Get hook id + $result = Db::getInstance()->getRow(' + SELECT `id_hook` + FROM `'._DB_PREFIX_.'hook` + WHERE `name` = \''.pSQL($hook_name).'\''); + if (!isset($result['id_hook'])) + return false; + + // Get module position in hook + $result2 = Db::getInstance()->getRow(' + SELECT MAX(`position`) AS position + FROM `'._DB_PREFIX_.'hook_module` + WHERE `id_hook` = '.(int)($result['id_hook'])); + if (!$result2) + return false; + + // Register module in hook + $return = Db::getInstance()->execute(' + INSERT INTO `'._DB_PREFIX_.'hook_module` (`id_module`, `id_hook`, `position`) + VALUES ('.(int)($this->id).', '.(int)($result['id_hook']).', '.(int)($result2['position'] + 1).')'); + + $this->cleanPositions((int)($result['id_hook'])); + + return $return; + } + + /** + * Display flags in forms for translations + * + * @param array $languages All languages available + * @param integer $defaultLanguage Default language id + * @param string $ids Multilingual div ids in form + * @param string $id Current div id] + * #param boolean $return define the return way : false for a display, true for a return + */ + public function displayFlags($languages, $defaultLanguage, $ids, $id, $return = false) + { + if (sizeof($languages) == 1) + return false; + $output = ' +
    + +
    +
    + '.$this->l('Choose language:').'

    '; + foreach ($languages as $language) + $output .= ''.$language['name'].' '; + $output .= '
    '; + + if ($return) + return $output; + echo $output; + } + + /** + * Unregister module from hook + * + * @param int $id_hook Hook id + * @return boolean result + */ + public function unregisterHook($hook_id) + { + return Db::getInstance()->execute(' + DELETE + FROM `'._DB_PREFIX_.'hook_module` + WHERE `id_module` = '.(int)($this->id).' + AND `id_hook` = '.(int)($hook_id)); + } + + /** + * Unregister exceptions linked to module + * + * @param int $id_hook Hook id + * @return boolean result + */ + public function unregisterExceptions($hook_id) + { + return Db::getInstance()->execute(' + DELETE + FROM `'._DB_PREFIX_.'hook_module_exceptions` + WHERE `id_module` = '.(int)($this->id).' + AND `id_hook` = '.(int)($hook_id)); + } + + /** + * Add exceptions for module->Hook + * + * @param int $id_hook Hook id + * @param array $excepts List of file name + * @return boolean result + */ + public function registerExceptions($id_hook, $excepts) + { + foreach ($excepts AS $except) + { + if (!empty($except)) + { + $result = Db::getInstance()->execute(' + INSERT INTO `'._DB_PREFIX_.'hook_module_exceptions` (`id_module`, `id_hook`, `file_name`) + VALUES ('.(int)($this->id).', '.(int)($id_hook).', \''.pSQL(strval($except)).'\')'); + if (!$result) + return false; + } + } + return true; + } + + public function editExceptions($id_hook, $excepts) + { + // Cleaning... + Db::getInstance()->execute(' + DELETE FROM `'._DB_PREFIX_.'hook_module_exceptions` + WHERE `id_module` = '.(int)($this->id).' AND `id_hook` ='.(int)($id_hook)); + return $this->registerExceptions($id_hook, $excepts); + } + + + /** + * This function is used to determine the module name + * of an AdminTab which belongs to a module, in order to keep translation + * related to a module in its directory (instead of $_LANGADM) + * + * @param mixed $currentClass the + * @return boolean|string if the class belongs to a module, will return the module name. Otherwise, return false. + */ + public static function getModuleNameFromClass($currentClass) + { + // Module can now define AdminTab keeping the module translations method, + // i.e. in modules/[module name]/[iso_code].php + if (!isset(self::$classInModule[$currentClass])) + { + global $_MODULES; + $_MODULE = array(); + $reflectionClass = new ReflectionClass($currentClass); + $filePath = realpath($reflectionClass->getFileName()); + $realpathModuleDir = realpath(_PS_MODULE_DIR_); + if (substr(realpath($filePath), 0, strlen($realpathModuleDir)) == $realpathModuleDir) + { + self::$classInModule[$currentClass] = substr(dirname($filePath), strlen($realpathModuleDir)+1); + + $id_lang = (!isset($cookie) OR !is_object($cookie)) ? (int)(Configuration::get('PS_LANG_DEFAULT')) : (int)($cookie->id_lang); + $file = _PS_MODULE_DIR_.self::$classInModule[$currentClass].'/'.Language::getIsoById($id_lang).'.php'; + if (Tools::file_exists_cache($file) AND include_once($file)) + $_MODULES = !empty($_MODULES) ? array_merge($_MODULES, $_MODULE) : $_MODULE; + } + else + self::$classInModule[$currentClass] = false; + } + // return name of the module, or false + return self::$classInModule[$currentClass]; + } + + /** + * Return an instance of the specified module + * + * @param string $moduleName Module name + * @return Module instance + */ + static public function getInstanceByName($moduleName) + { + if (!Tools::file_exists_cache(_PS_MODULE_DIR_.$moduleName.'/'.$moduleName.'.php')) + return false; + include_once(_PS_MODULE_DIR_.$moduleName.'/'.$moduleName.'.php'); + if (!class_exists($moduleName, false)) + return false; + + if (!isset(self::$_INSTANCE[$moduleName])) + self::$_INSTANCE[$moduleName] = new $moduleName; + return self::$_INSTANCE[$moduleName]; + } + + /** + * Load modules Ids from Ids + * + * @param array|int $ids Modules ID + * @return Array of module name + */ + static public function preloadModuleNameFromId($ids) + { + static $preloadedModuleNameFromId; + if(!isset($preloadedModuleNameFromId)) { + $preloadedModuleNameFromId = array(); + } + + if(is_array($ids)) + { + foreach($ids as $id) + $preloadedModuleNameFromId[$id] = false; + + $results = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS(' + SELECT `name`,`id_module` + FROM `'._DB_PREFIX_.'module` + WHERE `id_module` IN ('.join(',',$ids) .');'); + foreach($results as $result) + $preloadedModuleNameFromId[$result['id_module']] = $result['name']; + } + elseif(!isset($preloadedModuleNameFromId[$ids])) + { + $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->getRow(' + SELECT `name` + FROM `'._DB_PREFIX_.'module` + WHERE `id_module` = '.(int)($ids)); + if($result) + $preloadedModuleNameFromId[$ids] = $result['name']; + else + $preloadedModuleNameFromId[$ids] = false; + } + + + if(is_array($ids)) { + return $preloadedModuleNameFromId; + } else { + if(!isset($preloadedModuleNameFromId[$ids])) + return false; + return $preloadedModuleNameFromId[$ids]; + } + } + + /** + * Return an instance of the specified module + * + * @param integer $id_module Module ID + * @return Module instance + */ + static public function getInstanceById($id_module) + { + $moduleName = Module::preloadModuleNameFromId($id_module); + return ($moduleName ? Module::getInstanceByName($moduleName) : false); + } + + /** + * Return available modules + * + * @param boolean $useConfig in order to use config.xml file in module dir + * @return array Modules + */ + public static function getModulesOnDisk($useConfig = false) + { + global $cookie, $_MODULES; + + $moduleList = array(); + $moduleListCursor = 0; + $moduleNameList = array(); + $modulesNameToCursor = array(); + $errors = array(); + $modules_dir = self::getModulesDirOnDisk(); + foreach ($modules_dir AS $module) + { + $configFile = _PS_MODULE_DIR_.$module.'/config.xml'; + $xml_exist = file_exists($configFile); + if ($xml_exist) + $needNewConfigFile = (filemtime($configFile) < filemtime(_PS_MODULE_DIR_.$module.'/'.$module.'.php')); + else + $needNewConfigFile = true; + if ($useConfig AND $xml_exist) + { + libxml_use_internal_errors(true); + $xml_module = simplexml_load_file($configFile); + foreach (libxml_get_errors() as $error) + $errors[] = '['.$module.'] '.Tools::displayError('Error found in config file:').' '.htmlentities($error->message); + libxml_clear_errors(); + + if (!count($errors) AND (int)$xml_module->need_instance == 0 AND !$needNewConfigFile) + { + $file = _PS_MODULE_DIR_.$module.'/'.Language::getIsoById($cookie->id_lang).'.php'; + if (Tools::file_exists_cache($file) AND include_once($file)) + if(isset($_MODULE) AND is_array($_MODULE)) + $_MODULES = !empty($_MODULES) ? array_merge($_MODULES, $_MODULE) : $_MODULE; + + $xml_module->displayName = Module::findTranslation($xml_module->name, $xml_module->displayName, (string)$xml_module->name); + $xml_module->description = Module::findTranslation($xml_module->name, $xml_module->description, (string)$xml_module->name); + $xml_module->author = Module::findTranslation($xml_module->name, $xml_module->author, (string)$xml_module->name); + + if(isset($xml_module->confirmUninstall)) + $xml_module->confirmUninstall = Module::findTranslation($xml_module->name, $xml_module->confirmUninstall, (string)$xml_module->name); + + + $moduleList[$moduleListCursor] = $xml_module; + $moduleNameList[$moduleListCursor] = '\''.strval($xml_module->name).'\''; + $modulesNameToCursor[strval($xml_module->name)] = $moduleListCursor; + $moduleListCursor++; + } + } + if (!$useConfig OR !$xml_exist OR (isset($xml_module->need_instance) AND (int)$xml_module->need_instance == 1) OR $needNewConfigFile) + { + $file = trim(file_get_contents(_PS_MODULE_DIR_.$module.'/'.$module.'.php')); + if (substr($file, 0, 5) == '') + $file = substr($file, 0, -2); + if (class_exists($module, false) OR eval($file) !== false) + { + $moduleList[$moduleListCursor++] = new $module; + if (!$xml_exist OR $needNewConfigFile) + { + self::$_generateConfigXmlMode = true; + $tmpModule = new $module; + $tmpModule->_generateConfigXml(); + self::$_generateConfigXmlMode = false; + } + } + else + $errors[] = $module; + } + } + + // Get modules information from database + if(!empty($moduleNameList)) + { + $results = Db::getInstance()->executeS('SELECT `id_module`, `active`, `name` FROM `'._DB_PREFIX_.'module` WHERE `name` IN ('.join(',',$moduleNameList).')'); + foreach($results as $result) + { + $moduleCursor = $modulesNameToCursor[$result['name']]; + if (isset($result['active']) AND $result['active']) + $moduleList[$moduleCursor]->active = $result['active']; + if (isset($result['id_module']) AND $result['id_module']) + $moduleList[$moduleCursor]->id = $result['id_module']; + } + } + + if (sizeof($errors)) + { + echo '

    '.Tools::displayError('Parse error(s) in module(s)').'

      '; + foreach ($errors AS $error) + echo '
    1. '.$error.'
    2. '; + echo '
    '; + } + + return $moduleList; + } + + public static function getModulesDirOnDisk() + { + $moduleList = array(); + $modules = scandir(_PS_MODULE_DIR_); + foreach ($modules AS $name) + { + if (Tools::file_exists_cache(_PS_MODULE_DIR_.$name.'/'.$name.'.php')) + { + if (!Validate::isModuleName($name)) + die(Tools::displayError().' (Module '.$name.')'); + $moduleList[] = $name; + } + } + return $moduleList; + } + + /** + * Return non native module + * + * @param int $position Take only positionnables modules + * @return array Modules + */ + public static function getNonNativeModuleList() + { + $db = Db::getInstance(); + + $module_list_xml = _PS_ROOT_DIR_.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATOR.'modules_list.xml'; + $nativeModules = simplexml_load_file($module_list_xml); + $nativeModules = $nativeModules->modules; + foreach ($nativeModules as $nativeModulesType) + if (in_array($nativeModulesType['type'],array('native','partner'))) + { + $arrNativeModules[] = '""'; + foreach ($nativeModulesType->module as $module) + $arrNativeModules[] = '"'.pSQL($module['name']).'"'; + } + + return $db->executeS(' + SELECT * + FROM `'._DB_PREFIX_.'module` m + WHERE name NOT IN ('.implode(',',$arrNativeModules).') '); + } + + /** + * Return installed modules + * + * @param int $position Take only positionnables modules + * @return array Modules + */ + public static function getModulesInstalled($position = 0) + { + return Db::getInstance()->executeS(' + SELECT * + FROM `'._DB_PREFIX_.'module` m + '.($position ? ' + LEFT JOIN `'._DB_PREFIX_.'hook_module` hm ON m.`id_module` = hm.`id_module` + LEFT JOIN `'._DB_PREFIX_.'hook` k ON hm.`id_hook` = k.`id_hook` + WHERE k.`position` = 1' : '')); + } + + /* + * Execute modules for specified hook + * + * @param string $hook_name Hook Name + * @param array $hookArgs Parameters for the functions + * @return string modules output + */ + public static function hookExec($hook_name, $hookArgs = array(), $id_module = NULL) + { + global $cookie; + if ((!empty($id_module) AND !Validate::isUnsignedId($id_module)) OR !Validate::isHookName($hook_name)) + die(Tools::displayError()); + + global $cart, $cookie; + $live_edit = false; + if (!isset($hookArgs['cookie']) OR !$hookArgs['cookie']) + $hookArgs['cookie'] = $cookie; + if (!isset($hookArgs['cart']) OR !$hookArgs['cart']) + $hookArgs['cart'] = $cart; + $hook_name = strtolower($hook_name); + + if (!isset(self::$_hookModulesCache)) + { + $db = Db::getInstance(_PS_USE_SQL_SLAVE_); + $result = $db->executeS(' + SELECT h.`name` as hook, m.`id_module`, h.`id_hook`, m.`name` as module, h.`live_edit` + FROM `'._DB_PREFIX_.'module` m + LEFT JOIN `'._DB_PREFIX_.'hook_module` hm ON hm.`id_module` = m.`id_module` + LEFT JOIN `'._DB_PREFIX_.'hook` h ON hm.`id_hook` = h.`id_hook` + AND m.`active` = 1 + ORDER BY hm.`position`', false); + self::$_hookModulesCache = array(); + + if ($result) + while ($row = $db->nextRow()) + { + $row['hook'] = strtolower($row['hook']); + if (!isset(self::$_hookModulesCache[$row['hook']])) + self::$_hookModulesCache[$row['hook']] = array(); + self::$_hookModulesCache[$row['hook']][] = array('id_hook' => $row['id_hook'], 'module' => $row['module'], 'id_module' => $row['id_module'], 'live_edit' => $row['live_edit']); + } + } + + if (!isset(self::$_hookModulesCache[$hook_name])) + return; + + $altern = 0; + $output = ''; + foreach (self::$_hookModulesCache[$hook_name] AS $array) + { + if ($id_module AND $id_module != $array['id_module']) + continue; + if (!($moduleInstance = Module::getInstanceByName($array['module']))) + continue; + + $exceptions = $moduleInstance->getExceptions((int)$array['id_hook'], (int)$array['id_module']); + foreach ($exceptions AS $exception) + if (strstr(basename($_SERVER['PHP_SELF']).'?'.$_SERVER['QUERY_STRING'], $exception['file_name']) && !strstr($_SERVER['QUERY_STRING'], $exception['file_name'])) + continue 2; + + if (is_callable(array($moduleInstance, 'hook'.$hook_name))) + { + $hookArgs['altern'] = ++$altern; + + $display = call_user_func(array($moduleInstance, 'hook'.$hook_name), $hookArgs); + if ($array['live_edit'] && ((Tools::isSubmit('live_edit') AND Tools::getValue('ad') AND (Tools::getValue('liveToken') == sha1(Tools::getValue('ad')._COOKIE_KEY_))))) + { + $live_edit = true; + $output .= ' +
    + ' + .$moduleInstance->displayName.' + + + + + '.$display.'
    '; + } + else + $output .= $display; + } + } + return ($live_edit ? '
    ' : '').$output.($live_edit ? '
    ' : ''); + } + + public static function hookExecPayment() + { + global $cart, $cookie; + $hookArgs = array('cookie' => $cookie, 'cart' => $cart); + $id_customer = (int)($cookie->id_customer); + $billing = new Address((int)($cart->id_address_invoice)); + $output = ''; + + $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS(' + SELECT DISTINCT h.`id_hook`, m.`name`, hm.`position` + FROM `'._DB_PREFIX_.'module_country` mc + LEFT JOIN `'._DB_PREFIX_.'module` m ON m.`id_module` = mc.`id_module` + INNER JOIN `'._DB_PREFIX_.'module_group` mg ON (m.`id_module` = mg.`id_module`) + INNER JOIN `'._DB_PREFIX_.'customer_group` cg on (cg.`id_group` = mg.`id_group` AND cg.`id_customer` = '.(int)($id_customer).') + LEFT JOIN `'._DB_PREFIX_.'hook_module` hm ON hm.`id_module` = m.`id_module` + LEFT JOIN `'._DB_PREFIX_.'hook` h ON hm.`id_hook` = h.`id_hook` + WHERE h.`name` = \'payment\' + AND mc.id_country = '.(int)($billing->id_country).' + AND m.`active` = 1 + ORDER BY hm.`position`, m.`name` DESC'); + if ($result) + foreach ($result AS $module) + if (($moduleInstance = Module::getInstanceByName($module['name'])) AND is_callable(array($moduleInstance, 'hookpayment'))) + if (!$moduleInstance->currencies OR ($moduleInstance->currencies AND sizeof(Currency::checkPaymentCurrencies($moduleInstance->id)))) + $output .= call_user_func(array($moduleInstance, 'hookpayment'), $hookArgs); + return $output; + } + + /** + * find translation from $_MODULES and put it in self::$l_cache if not already exist + * and return it. + * + * @param string $name name of the module + * @param string $string term to find + * @param string $source additional param for building translation key + * @return string + */ + public static function findTranslation($name, $string, $source) + { + global $_MODULES; + + $cache_key = $name . '|' . $string . '|' . $source; + + if (!isset(self::$l_cache[$cache_key])) + { + if (!is_array($_MODULES)) + return str_replace('"', '"', $string); + // set array key to lowercase for 1.3 compatibility + $_MODULES = array_change_key_case($_MODULES); + $currentKey = '<{'.strtolower($name).'}'.strtolower(_THEME_NAME_).'>'.strtolower($source).'_'.md5($string); + $defaultKey = '<{'.strtolower($name).'}prestashop>'.strtolower($source).'_'.md5($string); + + if (isset($_MODULES[$currentKey])) + $ret = stripslashes($_MODULES[$currentKey]); + elseif (isset($_MODULES[Tools::strtolower($currentKey)])) + $ret = stripslashes($_MODULES[Tools::strtolower($currentKey)]); + elseif (isset($_MODULES[$defaultKey])) + $ret = stripslashes($_MODULES[$defaultKey]); + elseif (isset($_MODULES[Tools::strtolower($defaultKey)])) + $ret = stripslashes($_MODULES[Tools::strtolower($defaultKey)]); + else + $ret = stripslashes($string); + + self::$l_cache[$cache_key] = str_replace('"', '"', $ret); + } + return self::$l_cache[$cache_key]; + } + /** + * Get translation for a given module text + * + * Note: $specific parameter is mandatory for library files. + * Otherwise, translation key will not match for Module library + * when module is loaded with eval() Module::getModulesOnDisk() + * + * @param string $string String to translate + * @param boolean|string $specific filename to use in translation key + * @return string Translation + */ + public function l($string, $specific = false) + { + if (self::$_generateConfigXmlMode) + return $string; + + global $_MODULES, $_MODULE, $cookie; + + $id_lang = (!isset($cookie) OR !is_object($cookie)) ? (int)(Configuration::get('PS_LANG_DEFAULT')) : (int)($cookie->id_lang); + $file = _PS_MODULE_DIR_.$this->name.'/'.Language::getIsoById($id_lang).'.php'; + if (Tools::file_exists_cache($file) AND include_once($file)) + $_MODULES = !empty($_MODULES) ? array_merge($_MODULES, $_MODULE) : $_MODULE; + + $source = $specific ? $specific : $this->name; + $string = str_replace('\'', '\\\'', $string); + $ret = $this->findTranslation($this->name, $string, $source); + return $ret; + } + + /* + * Reposition module + * + * @param boolean $id_hook Hook ID + * @param boolean $way Up (1) or Down (0) + * @param intger $position + */ + public function updatePosition($id_hook, $way, $position = NULL) + { + if (!$res = Db::getInstance()->executeS(' + SELECT hm.`id_module`, hm.`position`, hm.`id_hook` + FROM `'._DB_PREFIX_.'hook_module` hm + WHERE hm.`id_hook` = '.(int)($id_hook).' + ORDER BY hm.`position` '.((int)($way) ? 'ASC' : 'DESC'))) + return false; + foreach ($res AS $key => $values) + if ((int)($values[$this->identifier]) == (int)($this->id)) + { + $k = $key ; + break ; + } + if (!isset($k) OR !isset($res[$k]) OR !isset($res[$k + 1])) + return false; + $from = $res[$k]; + $to = $res[$k + 1]; + + if (isset($position) and !empty($position)) + $to['position'] = (int)($position); + + return (Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'hook_module` + SET `position`= position '.($way ? '-1' : '+1').' + WHERE position between '.(int)(min(array($from['position'], $to['position']))) .' AND '.(int)(max(array($from['position'], $to['position']))).' + AND `id_hook`='.(int)($from['id_hook'])) + AND + Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'hook_module` + SET `position`='.(int)($to['position']).' + WHERE `'.pSQL($this->identifier).'` = '.(int)($from[$this->identifier]).' AND `id_hook`='.(int)($to['id_hook'])) + ); + } + + /* + * Reorder modules position + * + * @param boolean $id_hook Hook ID + */ + public function cleanPositions($id_hook) + { + $result = Db::getInstance()->executeS(' + SELECT `id_module` + FROM `'._DB_PREFIX_.'hook_module` + WHERE `id_hook` = '.(int)($id_hook).' + ORDER BY `position`'); + $sizeof = sizeof($result); + for ($i = 0; $i < $sizeof; ++$i) + Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'hook_module` + SET `position` = '.(int)($i + 1).' + WHERE `id_hook` = '.(int)($id_hook).' + AND `id_module` = '.(int)($result[$i]['id_module'])); + return true; + } + + /* + * Return module position for a given hook + * + * @param boolean $id_hook Hook ID + * @return integer position + */ + public function getPosition($id_hook) + { + if(isset(Hook::$preloadModulesFromHooks)) + if(isset(Hook::$preloadModulesFromHooks[$id_hook])) + if(isset(Hook::$preloadModulesFromHooks[$id_hook]['module_position'][$this->id])) + return Hook::$preloadModulesFromHooks[$id_hook]['module_position'][$this->id]; + else + return 0; + $result = Db::getInstance()->getRow(' + SELECT `position` + FROM `'._DB_PREFIX_.'hook_module` + WHERE `id_hook` = '.(int)($id_hook).' + AND `id_module` = '.(int)($this->id)); + return $result['position']; + } + + public function displayError($error) + { + $output = ' +
    + '.$error.' +
    '; + $this->error = true; + return $output; + } + + public function displayConfirmation($string) + { + $output = ' +
    + '.$string.' +
    '; + return $output; + } + + /* + * Return exceptions for module in hook + * + * @param int $id_hook Hook ID + * @return array Exceptions + */ + protected static $exceptionsCache = NULL; + public function getExceptions($id_hook) + { + if (self::$exceptionsCache == NULL AND !is_array(self::$exceptionsCache)) + { + self::$exceptionsCache = array(); + $result = Db::getInstance()->executeS(' + SELECT CONCAT(id_hook, \'-\', id_module) as `key`, `file_name` as value + FROM `'._DB_PREFIX_.'hook_module_exceptions`'); + foreach ($result as $row) + { + if (empty($row['value'])) + continue; + if (!array_key_exists($row['key'], self::$exceptionsCache)) + self::$exceptionsCache[$row['key']] = array(); + self::$exceptionsCache[$row['key']][] = array('file_name' => $row['value']); + } + } + return (array_key_exists((int)($id_hook).'-'.(int)($this->id), self::$exceptionsCache) ? self::$exceptionsCache[(int)($id_hook).'-'.(int)($this->id)] : array()); + } + + public static function isInstalled($moduleName) + { + Db::getInstance()->executeS('SELECT `id_module` FROM `'._DB_PREFIX_.'module` WHERE `name` = \''.pSQL($moduleName).'\''); + return (bool)Db::getInstance()->NumRows(); + } + + public function isRegisteredInHook($hook) + { + if (!$this->id) + return false; + + return Db::getInstance()->getValue(' + SELECT COUNT(*) + FROM `'._DB_PREFIX_.'hook_module` hm + LEFT JOIN `'._DB_PREFIX_.'hook` h ON (h.`id_hook` = hm.`id_hook`) + WHERE h.`name` = \''.pSQL($hook).'\' + AND hm.`id_module` = '.(int)($this->id) + ); + } + + /* + ** Template management (display, overload, cache) + */ + protected static function _isTemplateOverloadedStatic($moduleName, $template) + { + if (Tools::file_exists_cache(_PS_THEME_DIR_.'modules/'.$moduleName.'/'.$template)) + return true; + elseif (Tools::file_exists_cache(_PS_MODULE_DIR_.$moduleName.'/'.$template)) + return false; + return NULL; + } + + protected function _isTemplateOverloaded($template) + { + return self::_isTemplateOverloadedStatic($this->name, $template); + } + + public static function display($file, $template, $cacheId = NULL, $compileId = NULL) + { + global $smarty; + + $smarty->assign('module_dir', __PS_BASE_URI__.'modules/'.basename($file, '.php').'/'); + if (($overloaded = self::_isTemplateOverloadedStatic(basename($file, '.php'), $template)) === NULL) + $result = Tools::displayError('No template found for module').' '.basename($file,'.php'); + else + { + $smarty->assign('module_template_dir', ($overloaded ? _THEME_DIR_ : __PS_BASE_URI__).'modules/'.basename($file, '.php').'/'); + $result = $smarty->fetch(($overloaded ? _PS_THEME_DIR_.'modules/'.basename($file, '.php') : _PS_MODULE_DIR_.basename($file, '.php')).'/'.$template, $cacheId, $compileId); + } + return $result; + } + + protected function _getApplicableTemplateDir($template) + { + return $this->_isTemplateOverloaded($template) ? _PS_THEME_DIR_ : _PS_MODULE_DIR_.$this->name.'/'; + } + + public function isCached($template, $cacheId = NULL, $compileId = NULL) + { + global $smarty; + + return $smarty->isCached($this->_getApplicableTemplateDir($template).$template, $cacheId, $compileId); + } + + protected function _clearCache($template, $cacheId = NULL, $compileId = NULL) + { + global $smarty; + + return $smarty->clearCache($template ? $this->_getApplicableTemplateDir($template).$template : NULL, $cacheId, $compileId); + } + + protected function _generateConfigXml() + { + $xml = ' + + '.$this->name.' + displayName).']]> + version.']]> + description).']]> + author).']]> + tab).']]>'.(isset($this->confirmUninstall) ? "\n\t".''.$this->confirmUninstall.'' : '').' + '.(int)method_exists($this, 'getContent').' + '.(int)$this->need_instance.''.(isset($this->limited_countries) ? "\n\t".''.(sizeof($this->limited_countries) == 1 ? $this->limited_countries[0] : '').'' : '').' +'; + if (is_writable(_PS_MODULE_DIR_.$this->name.'/')) + file_put_contents(_PS_MODULE_DIR_.$this->name.'/config.xml', utf8_encode($xml)); + } + + /** + * @param string $hook_name + * @return bool if module can be transplanted on hook + */ + public function isHookableOn($hook_name) + { + return is_callable(array($this, 'hook'.ucfirst($hook_name))); + } +} + diff --git a/install-new/upgrade/classes/ToolsInstall.php b/install-new/upgrade/classes/ToolsInstall.php new file mode 100644 index 000000000..a46753a3a --- /dev/null +++ b/install-new/upgrade/classes/ToolsInstall.php @@ -0,0 +1,208 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ +class ToolsInstall +{ + /** + * checkDB will call to the + * + * @param string $srv + * @param string $login + * @param string $password + * @param string $name + * @param string $posted + * @return void + */ + public static function checkDB ($srv, $login, $password, $name, $posted = true) + { + // Don't include theses files if classes are already defined + if (!class_exists('Validate', false)) + { + include_once(INSTALL_PATH.'/../classes/Validate.php'); + eval('class Validate extends ValidateCore{}'); + } + + if (!class_exists('Db', false)) + { + include_once(INSTALL_PATH.'/../classes/db/Db.php'); + eval('abstract class Db extends DbCore{}'); + } + + if (!class_exists('MySQL', false)) + { + include_once(INSTALL_PATH.'/../classes/db/MySQL.php'); + eval('class MySQL extends MySQLCore{}'); + } + + if ($posted) + { + // Check POST data... + $data_check = array( + !isset($_GET['server']) OR empty($_GET['server']) OR !Validate::isUrl($_GET['server']), + !isset($_GET['engine']) OR empty($_GET['engine']) OR !Validate::isMySQLEngine($_GET['engine']), + !isset($_GET['name']) OR empty($_GET['name']) OR !Validate::isUnixName($_GET['name']), + !isset($_GET['login']) OR empty($_GET['login']) OR !Validate::isUnixName($_GET['login']), + !isset($_GET['password']), + (!isset($_GET['tablePrefix']) OR !Validate::isTablePrefix($_GET['tablePrefix'])) && !empty($_GET['tablePrefix']), + ); + + foreach ($data_check AS $data) + if ($data) + return 8; + } + + switch (Db::checkConnection(trim($srv), trim($login), trim($password), trim($name))) + { + case 0: + if (Db::checkEncoding(trim($srv), trim($login), trim($password))) + return true; + return 49; + break; + case 1: + return 25; + break; + case 2: + return 24; + break; + case 3: + return 50; + break; + } + } + + public static function getHttpHost($http = false, $entities = false, $ignore_port = false) + { + $host = (isset($_SERVER['HTTP_X_FORWARDED_HOST']) ? $_SERVER['HTTP_X_FORWARDED_HOST'] : $_SERVER['HTTP_HOST']); + if ($ignore_port && $pos = strpos($host, ':')) + $host = substr($host, 0, $pos); + if ($entities) + $host = htmlspecialchars($host, ENT_COMPAT, 'UTF-8'); + if ($http) + $host = 'http://'.$host; + return $host; + } + + public static function sendMail($smtpChecked, $smtpServer, $content, $subject, $type, $to, $from, $smtpLogin, $smtpPassword, $smtpPort = 25, $smtpEncryption) + { + require_once(INSTALL_PATH.'/../tools/swift/Swift.php'); + require_once(INSTALL_PATH.'/../tools/swift/Swift/Connection/SMTP.php'); + require_once(INSTALL_PATH.'/../tools/swift/Swift/Connection/NativeMail.php'); + + $swift = NULL; + $result = NULL; + try + { + if($smtpChecked) + { + + $smtp = new Swift_Connection_SMTP($smtpServer, $smtpPort, ($smtpEncryption == "off") ? Swift_Connection_SMTP::ENC_OFF : (($smtpEncryption == "tls") ? Swift_Connection_SMTP::ENC_TLS : Swift_Connection_SMTP::ENC_SSL)); + $smtp->setUsername($smtpLogin); + $smtp->setpassword($smtpPassword); + $smtp->setTimeout(5); + $swift = new Swift($smtp); + } + else + $swift = new Swift(new Swift_Connection_NativeMail()); + + $message = new Swift_Message($subject, $content, $type); + + if ($swift->send($message, $to, $from)) + $result = true; + else + $result = 999; + + $swift->disconnect(); + } + catch (Swift_Connection_Exception $e) + { + $result = $e->getCode(); + } + catch (Swift_Message_MimeException $e) + { + $result = $e->getCode(); + } + return $result; + } + + public static function getNotificationMail($shopName, $shopUrl, $shopLogo, $firstname, $lastname, $password, $email) + { + $iso_code = $_GET['isoCodeLocalLanguage']; + $pathTpl = INSTALL_PATH.'/../mails/en/employee_password.html'; + $pathTplLocal = INSTALL_PATH.'/../mails/'.$iso_code.'/employee_password.html'; + + $content = (file_exists($pathTplLocal)) ? file_get_contents($pathTplLocal) : file_get_contents($pathTpl); + $content = str_replace('{shop_name}', $shopName, $content); + $content = str_replace('{shop_url}', $shopUrl, $content); + $content = str_replace('{shop_logo}', $shopLogo, $content); + $content = str_replace('{firstname}', $firstname, $content); + $content = str_replace('{lastname}', $lastname, $content); + $content = str_replace('{passwd}', $password, $content); + $content = str_replace('{email}', $email, $content); + return $content; + } + + public static function getLangString($idLang) + { + switch ($idLang) + { + case 'en' : return 'English (English)'; + case 'fr' : return 'Français (French)'; + } + } + + static function strtolower($str) + { + if (function_exists('mb_strtolower')) + return mb_strtolower($str, 'utf-8'); + return strtolower($str); + } + + static function strtoupper($str) + { + if (function_exists('mb_strtoupper')) + return mb_strtoupper($str, 'utf-8'); + return strtoupper($str); + } + + static function ucfirst($str) + { + return self::strtoupper(self::substr($str, 0, 1)).self::substr($str, 1); + } + + static function substr($str, $start, $length = false, $encoding = 'utf-8') + { + if (function_exists('mb_substr')) + return mb_substr($str, $start, ($length === false ? self::strlen($str) : $length), $encoding); + return substr($str, $start, $length); + } + + static function strlen($str) + { + if (function_exists('mb_strlen')) + return mb_strlen($str, 'utf-8'); + return strlen($str); + } +} diff --git a/install-new/upgrade/functions/add_accounting_tab.php b/install-new/upgrade/functions/add_accounting_tab.php new file mode 100644 index 000000000..31ff6ef63 --- /dev/null +++ b/install-new/upgrade/functions/add_accounting_tab.php @@ -0,0 +1,20 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function add_attribute_position() +{ + $groups = Db::getInstance()->executeS(' + SELECT `id_attribute_group` + FROM `'._DB_PREFIX_.'attribute`'); + if (sizeof($groups) && is_array($groups)) + foreach ($groups as $group) + { + $attributes = Db::getInstance()->executeS(' + SELECT * + FROM `'._DB_PREFIX_.'attribute` + WHERE `id_attribute_group` = '. (int)($group['id_attribute_group'])); + $i = 0; + if (sizeof($attributes) && is_array($attributes)) + foreach ($attributes as $attribute) + { + Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'attribute` + SET `position` = '.$i++.' + WHERE `id_attribute` = '.(int)$attribute['id_attribute'].' + AND `id_attribute_group` = '.(int)$attribute['id_attribute_group']); + } + } +} \ No newline at end of file diff --git a/install-new/upgrade/functions/add_carrier_position.php b/install-new/upgrade/functions/add_carrier_position.php new file mode 100644 index 000000000..f42a465e4 --- /dev/null +++ b/install-new/upgrade/functions/add_carrier_position.php @@ -0,0 +1,45 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function add_carrier_position() +{ + $carriers = Db::getInstance()->executeS(' + SELECT `id_carrier` + FROM `'._DB_PREFIX_.'carrier` + WHERE `deleted` = 0'); + if (count($carriers) && is_array($carriers)) + { + $i = 0; + foreach ($carriers as $carrier) + { + Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'carrier` + SET `position` = '.$i++.' + WHERE `id_carrier` = '.(int)$carrier['id_carrier']); + } + } +} \ No newline at end of file diff --git a/install-new/upgrade/functions/add_default_restrictions_modules_groups.php b/install-new/upgrade/functions/add_default_restrictions_modules_groups.php new file mode 100644 index 000000000..780a576c2 --- /dev/null +++ b/install-new/upgrade/functions/add_default_restrictions_modules_groups.php @@ -0,0 +1,50 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function add_default_restrictions_modules_groups() +{ + $groups = Db::getInstance()->executeS(' + SELECT `id_group` + FROM `'._DB_PREFIX_.'group`'); + $modules = Db::getInstance()->executeS(' + SELECT m.* + FROM `'._DB_PREFIX_.'module` m'); + foreach ($groups as $group) + { + if (!is_array($modules)) + return false; + else + { + $sql = 'INSERT INTO `'._DB_PREFIX_.'group_module_restriction` (`id_group`, `id_module`, `authorized`) VALUES '; + foreach ($modules as $mod) + $sql .= '("'.(int)$group['id_group'].'", "'.(int)$mod['id_module'].'", "1"),'; + // removing last comma to avoid SQL error + $sql = substr($sql, 0, strlen($sql) - 1); + Db::getInstance()->execute($sql); + } + } +} \ No newline at end of file diff --git a/install-new/upgrade/functions/add_feature_position.php b/install-new/upgrade/functions/add_feature_position.php new file mode 100644 index 000000000..6b241ae71 --- /dev/null +++ b/install-new/upgrade/functions/add_feature_position.php @@ -0,0 +1,42 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function add_feature_position() +{ + $features = Db::getInstance()->executeS(' + SELECT `id_feature` + FROM `'._DB_PREFIX_.'feature`'); + $i = 0; + if (sizeof($features) && is_array($features)) + foreach ($features as $feature) + { + Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'feature` + SET `position` = '.$i++.' + WHERE `id_feature` = '.(int)$feature['id_feature']); + } +} \ No newline at end of file diff --git a/install-new/upgrade/functions/add_group_attribute_position.php b/install-new/upgrade/functions/add_group_attribute_position.php new file mode 100644 index 000000000..414b45671 --- /dev/null +++ b/install-new/upgrade/functions/add_group_attribute_position.php @@ -0,0 +1,42 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function add_group_attribute_position() +{ + $groups = Db::getInstance()->executeS(' + SELECT * + FROM `'._DB_PREFIX_.'attribute_group`'); + $i = 0; + if (sizeof($groups) && is_array($groups)) + foreach ($groups as $group) + { + Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'attribute_group` + SET `position` = '.$i++.' + WHERE `id_attribute_group` = '.(int)$group['id_attribute_group']); + } +} \ No newline at end of file diff --git a/install-new/upgrade/functions/add_missing_rewrite_value.php b/install-new/upgrade/functions/add_missing_rewrite_value.php new file mode 100644 index 000000000..d7024cc60 --- /dev/null +++ b/install-new/upgrade/functions/add_missing_rewrite_value.php @@ -0,0 +1,46 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function add_missing_rewrite_value() +{ + $pages = Db::getInstance()->executeS(' + SELECT * + FROM `'._DB_PREFIX_.'meta` m + LEFT JOIN `'._DB_PREFIX_.'meta_lang` ml ON (m.`id_meta` = ml.`id_meta`) + WHERE ml.`url_rewrite` = \'\' + AND m.`page` != "index" + '); + if (sizeof($pages) && is_array($pages)) + foreach ($pages as $page) + { + Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'meta_lang` + SET `url_rewrite` = "'.pSQL(Tools::str2url($page['title'])).'" + WHERE `id_meta` = '.(int)$page['id_meta'].' + AND `id_lang` = '.(int)$page['id_lang']); + } +} \ No newline at end of file diff --git a/install-new/upgrade/functions/add_module_to_hook.php b/install-new/upgrade/functions/add_module_to_hook.php new file mode 100644 index 000000000..1bca72d69 --- /dev/null +++ b/install-new/upgrade/functions/add_module_to_hook.php @@ -0,0 +1,58 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function add_module_to_hook($module_name, $hook_name) +{ + $result = false; + + $id_module = Db::getInstance()->getValue(' + SELECT `id_module` FROM `'._DB_PREFIX_.'module` + WHERE `name` = \''.pSQL($module_name).'\'' + ); + + if ((int)$id_module > 0) + { + $id_hook = Db::getInstance()->getValue(' + SELECT `id_hook` FROM `'._DB_PREFIX_.'hook` WHERE `name` = \''.pSQL($hook_name).'\' + '); + + if ((int)$id_hook > 0) + { + $result = Db::getInstance()->execute(' + INSERT IGNORE INTO `'._DB_PREFIX_.'hook_module` (`id_module`, `id_hook`, `position`) + VALUES ( + '.(int)$id_module.', + '.(int)$id_hook.', + (SELECT IFNULL( + (SELECT max_position from (SELECT MAX(position)+1 as max_position FROM `'._DB_PREFIX_.'hook_module` WHERE `id_hook` = '.(int)$id_hook.') AS max_position), 1)) + )'); + } + } + + return $result; +} + diff --git a/install-new/upgrade/functions/add_new_tab.php b/install-new/upgrade/functions/add_new_tab.php new file mode 100644 index 000000000..7b3781f31 --- /dev/null +++ b/install-new/upgrade/functions/add_new_tab.php @@ -0,0 +1,65 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function add_new_tab($className, $name, $id_parent, $returnId = false) +{ + $array = array(); + foreach (explode('|', $name) AS $item) + { + $temp = explode(':', $item); + $array[$temp[0]] = $temp[1]; + } + + if (!(int)Db::getInstance()->getValue('SELECT count(id_tab) FROM `'._DB_PREFIX_.'tab` WHERE `class_name` = \''.pSQL($className).'\' ')) + Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'tab` (`id_parent`, `class_name`, `module`, `position`) VALUES ('.(int)$id_parent.', \''.pSQL($className).'\', \'\', + (SELECT IFNULL(MAX(t.position),0)+ 1 FROM `'._DB_PREFIX_.'tab` t WHERE t.id_parent = '.(int)$id_parent.'))'); + + foreach (Language::getLanguages() AS $lang) + { + Db::getInstance()->execute(' + INSERT IGNORE INTO `'._DB_PREFIX_.'tab_lang` (`id_lang`, `id_tab`, `name`) + VALUES ('.(int)$lang['id_lang'].', ( + SELECT `id_tab` + FROM `'._DB_PREFIX_.'tab` + WHERE `class_name` = \''.pSQL($className).'\' LIMIT 0,1 + ), \''.pSQL(isset($array[$lang['iso_code']]) ? $array[$lang['iso_code']] : $array['en']).'\') + '); + } + + Db::getInstance()->execute('INSERT IGNORE INTO `'._DB_PREFIX_.'access` (`id_profile`, `id_tab`, `view`, `add`, `edit`, `delete`) + (SELECT `id_profile`, ( + SELECT `id_tab` + FROM `'._DB_PREFIX_.'tab` + WHERE `class_name` = \''.pSQL($className).'\' LIMIT 0,1 + ), 1, 1, 1, 1 FROM `'._DB_PREFIX_.'profile` )'); + + if($returnId) { + return (int)Db::getInstance()->getValue('SELECT `id_tab` + FROM `'._DB_PREFIX_.'tab` + WHERE `class_name` = \''.pSQL($className).'\''); + } +} diff --git a/install-new/upgrade/functions/add_order_state.php b/install-new/upgrade/functions/add_order_state.php new file mode 100644 index 000000000..2cf0c6a69 --- /dev/null +++ b/install-new/upgrade/functions/add_order_state.php @@ -0,0 +1,63 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function add_order_state($conf_name, $name, $invoice, $send_email, $color, $unremovable, $logable, $delivery, $template = null) +{ + $name_lang = array(); + $template_lang = array(); + foreach (explode('|', $name) AS $item) + { + $temp = explode(':', $item); + $name_lang[$temp[0]] = $temp[1]; + } + + if ($template) + foreach (explode('|', $template) AS $item) + { + $temp = explode(':', $item); + $template_lang[$temp[0]] = $temp[1]; + } + + Db::getInstance()->execute(' + INSERT INTO `'._DB_PREFIX_.'order_state` (`invoice`, `send_email`, `color`, `unremovable`, `logable`, `delivery`) + VALUES ('.(int)$invoice.', '.(int)$send_email.', \''.pSQL($color).'\', '.(int)$unremovable.', '.(int)$logable.', '.(int)$delivery.')'); + + $id_order_state = Db::getInstance()->getValue(' + SELECT MAX(`id_order_state`) + FROM `'._DB_PREFIX_.'order_state` + '); + + foreach (Language::getLanguages() AS $lang) + { + Db::getInstance()->execute(' + INSERT IGNORE INTO `'._DB_PREFIX_.'order_state_lang` (`id_lang`, `id_order_state`, `name`, `template`) + VALUES ('.(int)$lang['id_lang'].', '.(int)$id_order_state.', \''.pSQL(isset($name_lang[$lang['iso_code']]) ? $name_lang[$lang['iso_code']] : $name_lang['en']).'\', \''.pSQL(isset($template_lang[$lang['iso_code']]) ? $template_lang[$lang['iso_code']] : (isset($template_lang['en']) ? $template_lang['en'] : '')).'\') + '); + } + + Configuration::updateValue($conf_name, $id_order_state); +} \ No newline at end of file diff --git a/install-new/upgrade/functions/add_required_customization_field_flag.php b/install-new/upgrade/functions/add_required_customization_field_flag.php new file mode 100644 index 000000000..aa2869849 --- /dev/null +++ b/install-new/upgrade/functions/add_required_customization_field_flag.php @@ -0,0 +1,44 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +define('_CONTAINS_REQUIRED_FIELD_', 2); + +function add_required_customization_field_flag() +{ + if (($result = Db::getInstance()->executeS('SELECT `id_product` FROM `'._DB_PREFIX_.'customization_field` WHERE `required` = 1')) === false) + return false; + if (Db::getInstance()->numRows()) + { + $productIds = array(); + foreach ($result AS $row) + $productIds[] = (int)($row['id_product']); + if (!Db::getInstance()->execute('UPDATE `'._DB_PREFIX_.'product` SET `customizable` = '._CONTAINS_REQUIRED_FIELD_.' WHERE `id_product` IN ('.implode(', ', $productIds).')')) + return false; + } + return true; +} + diff --git a/install-new/upgrade/functions/alter_blocklink.php b/install-new/upgrade/functions/alter_blocklink.php new file mode 100644 index 000000000..6fa44b672 --- /dev/null +++ b/install-new/upgrade/functions/alter_blocklink.php @@ -0,0 +1,36 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function alter_blocklink() +{ + // No one will know if the table does not exist :] Thanks Damien for your solution ;) + DB::getInstance()->Execute('ALTER TABLE `'._DB_PREFIX_.'blocklink_lang` CHANGE `id_link` `id_blocklink` INT( 10 ) UNSIGNED NOT NULL'); + + DB::getInstance()->Execute('ALTER TABLE `'._DB_PREFIX_.'blocklink` CHANGE `id_link` `id_blocklink` INT( 10 ) UNSIGNED NOT NULL'); + +} + diff --git a/install-new/upgrade/functions/alter_cms_block.php b/install-new/upgrade/functions/alter_cms_block.php new file mode 100644 index 000000000..ecf0f5909 --- /dev/null +++ b/install-new/upgrade/functions/alter_cms_block.php @@ -0,0 +1,40 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function alter_cms_block() +{ + // No one will know if the table does not exist :] Thanks Damien for your solution ;) + DB::getInstance()->Execute('ALTER TABLE `'._DB_PREFIX_.'cms_block_lang` CHANGE `id_block_cms` `id_cms_block` INT( 10 ) UNSIGNED NOT NULL'); + + DB::getInstance()->Execute('ALTER TABLE `'._DB_PREFIX_.'cms_block` CHANGE `id_block_cms` `id_cms_block` INT( 10 ) UNSIGNED NOT NULL'); + + DB::getInstance()->Execute('ALTER TABLE `'._DB_PREFIX_.'cms_block_page` CHANGE `id_block_cms` `id_cms_block` INT( 10 ) UNSIGNED NOT NULL'); + + DB::getInstance()->Execute('ALTER TABLE `'._DB_PREFIX_.'cms_block_page` CHANGE `id_block_cms_page` `id_cms_block_page` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT'); + +} + diff --git a/install-new/upgrade/functions/alter_productcomments_guest_index.php b/install-new/upgrade/functions/alter_productcomments_guest_index.php new file mode 100644 index 000000000..56324547b --- /dev/null +++ b/install-new/upgrade/functions/alter_productcomments_guest_index.php @@ -0,0 +1,39 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function alter_productcomments_guest_index() +{ + Configuration::loadConfiguration(); + $productcomments = Module::getInstanceByName('productcomments'); + if (!$productcomments->id) + return; + + DB::getInstance()->Execute(' + ALTER TABLE `'._DB_PREFIX_.'product_comment` + DROP INDEX `id_guest`, ADD INDEX `id_guest` (`id_guest`);'); +} + diff --git a/install-new/upgrade/functions/blocknewsletter.php b/install-new/upgrade/functions/blocknewsletter.php new file mode 100644 index 000000000..f337bbe21 --- /dev/null +++ b/install-new/upgrade/functions/blocknewsletter.php @@ -0,0 +1,33 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function blocknewsletter() +{ + // No one will know if the table does not exist :] + DB::getInstance()->Execute('ALTER TABLE '._DB_PREFIX_.'newsletter ADD `http_referer` VARCHAR(255) NULL'); +} + diff --git a/install-new/upgrade/functions/check_webservice_account_table.php b/install-new/upgrade/functions/check_webservice_account_table.php new file mode 100644 index 000000000..30df841ec --- /dev/null +++ b/install-new/upgrade/functions/check_webservice_account_table.php @@ -0,0 +1,44 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +/** + * Check if all needed columns in webservice_account table exists. + * These columns are used for the WebserviceRequest overriding. + * + * @return void + */ +function check_webservice_account_table() +{ + $sql = 'SHOW COLUMNS FROM '._DB_PREFIX_.'webservice_account'; + $return = DB::getInstance()->executeS($sql); + if (count($return) < 7) + { + $sql = 'ALTER TABLE `'._DB_PREFIX_.'webservice_account` ADD `is_module` TINYINT( 2 ) NOT NULL DEFAULT \'0\' AFTER `class_name` , + ADD `module_name` VARCHAR( 50 ) NULL DEFAULT NULL AFTER `is_module`'; + DB::getInstance()->executeS($sql); + } +} \ No newline at end of file diff --git a/install-new/upgrade/functions/cms_block.php b/install-new/upgrade/functions/cms_block.php new file mode 100644 index 000000000..a988dbd55 --- /dev/null +++ b/install-new/upgrade/functions/cms_block.php @@ -0,0 +1,33 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ +function cms_block() +{ + if (!Db::getInstance()->execute('SELECT `display_store` FROM `'._DB_PREFIX_.'cms_block` LIMIT 1')) + return Db::getInstance()->execute('ALTER TABLE `'._DB_PREFIX_.'cms_block` ADD `display_store` TINYINT NOT NULL DEFAULT \'1\''); + return true; +} + diff --git a/install-new/upgrade/functions/configuration_double_cleaner.php b/install-new/upgrade/functions/configuration_double_cleaner.php new file mode 100644 index 000000000..d67cd15a4 --- /dev/null +++ b/install-new/upgrade/functions/configuration_double_cleaner.php @@ -0,0 +1,48 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function configuration_double_cleaner() +{ + $result = Db::getInstance()->executeS(' + SELECT name, MIN(id_configuration) AS minid + FROM '._DB_PREFIX_.'configuration + GROUP BY name + HAVING count(name) > 1'); + foreach ($result as $row) + { + DB::getInstance()->Execute(' + DELETE FROM '._DB_PREFIX_.'configuration + WHERE name = \''.addslashes($row['name']).'\' + AND id_configuration != '.(int)($row['minid'])); + } + DB::getInstance()->Execute(' + DELETE FROM '._DB_PREFIX_.'configuration_lang + WHERE id_configuration NOT IN ( + SELECT id_configuration + FROM '._DB_PREFIX_.'configuration)'); +} + diff --git a/install-new/upgrade/functions/convert_product_price.php b/install-new/upgrade/functions/convert_product_price.php new file mode 100644 index 000000000..34e4ca3fa --- /dev/null +++ b/install-new/upgrade/functions/convert_product_price.php @@ -0,0 +1,50 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +/* Convert product prices from the PS < 1.3 wrong rounding system to the new 1.3 one */ +function convert_product_price() +{ + $taxes = Tax::getTaxes(); + $taxRates = array(); + foreach ($taxes as $data) + $taxRates[$data['id_tax']] = (float)($data['rate']) / 100; + $resource = DB::getInstance()->executeS('SELECT `id_product`, `price`, `id_tax` FROM `'._DB_PREFIX_.'product`', false); + if (!$resource) + die(Db::getInstance()->getMsgError()); + while ($row = DB::getInstance()->nextRow($resource)) + if ($row['id_tax']) + { + $price = $row['price'] * (1 + $taxRates[$row['id_tax']]); + $decimalPart = $price - (int)$price; + if ($decimalPart < 0.000001) + { + $newPrice = (float)(number_format($price, 6, '.', '')); + $newPrice = Tools::floorf($newPrice / (1 + $taxRates[$row['id_tax']]), 6); + DB::getInstance()->Execute('UPDATE `'._DB_PREFIX_.'product` SET `price` = '.$newPrice.' WHERE `id_product` = '.(int)$row['id_product']); + } + } +} diff --git a/install-new/upgrade/functions/create_multistore.php b/install-new/upgrade/functions/create_multistore.php new file mode 100644 index 000000000..89e9bbe91 --- /dev/null +++ b/install-new/upgrade/functions/create_multistore.php @@ -0,0 +1,44 @@ +execute('INSERT INTO '._DB_PREFIX_.'theme (`id_theme`, `name`) VALUES(\'\', \''.pSQL($theme).'\')'); + $res &= Db::getInstance()->execute('UPDATE '._DB_PREFIX_.'shop SET id_theme = (SELECT id_theme FROM '._DB_PREFIX_.'theme WHERE name=\''.pSQL(_THEME_NAME_).'\') WHERE id_shop = 1'); + $shop_domain = Db::getInstance()->getValue('SELECT `value` + FROM `'._DB_PREFIX_.'_configuration` + WHERE `name`=\'PS_SHOP_DOMAIN\''); + $shop_domain_ssl = Db::getInstance()->getValue('SELECT `value` + FROM `'._DB_PREFIX_.'_configuration` + WHERE `name`=\'PS_SHOP_DOMAIN_SSL\''); + if(empty($shop_domain)) + { + $shop_domain = Tools::getHttpHost(); + $shop_domain_ssl = Tools::getHttpHost(); + } + + $_PS_DIRECTORY_ = trim(str_replace(' ', '%20', INSTALLER__PS_BASE_URI), '/'); + $_PS_DIRECTORY_ = ($_PS_DIRECTORY_) ? '/'.$_PS_DIRECTORY_.'/' : '/'; + $res &= Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'shop_url` (`id_shop`, `domain`, `domain_ssl`, `physical_uri`, `virtual_uri`, `main`, `active`) + VALUES(1, \''.pSQL($shop_domain).'\', \''.pSQL($shop_domain_ssl).'\', \''.pSQL($_PS_DIRECTORY_).'\', \'\', 1, 1)'); + + // Stock conversion + $sql = 'INSERT INTO `'._DB_PREFIX_.'.stock` (`id_product`, `id_product_attribute`, `id_group_shop`, `id_shop`, `quantity`) + VALUES (SELECT `p.id_product`, 0, 1, 1, `p.quantity` FROM `'._DB_PREFIX_.'.product` p);'; + $res &= Db::getInstance()->execute($sql); + + $sql = 'INSERT INTO `'._DB_PREFIX_.'.stock` (`id_product`, `id_product_attribute`, `id_group_shop`, `id_shop`, `quantity`) + VALUES (SELECT `id_product`, `id_product_attribute`, 1, 1, `quantity` FROM `'._DB_PREFIX_.'product_attribute` p);'; + $res &= Db::getInstance()->execute($sql); + + // Add admin tabs + $shopTabId = add_new_tab('AdminShop', 'it:Shops|es:Shops|fr:Boutiques|de:Shops|en:Shops', 0, true); + add_new_tab('AdminGroupShop', 'it:Group Shops|es:Group Shops|fr:Groupes de boutique|de:Group Shops|en:Group Shops', $shopTabId); + add_new_tab('AdminShopUrl', 'it:Shop Urls|es:Shop Urls|fr:URLs de boutique|de:Shop Urls|en:Shop Urls', $shopTabId); + + return $res; +} diff --git a/install-new/upgrade/functions/delivery_number_set.php b/install-new/upgrade/functions/delivery_number_set.php new file mode 100644 index 000000000..21bb104c8 --- /dev/null +++ b/install-new/upgrade/functions/delivery_number_set.php @@ -0,0 +1,55 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function delivery_number_set() +{ + Configuration::loadConfiguration(); + $number = 1; + + // Update each order with a number + $result = Db::getInstance()->executeS(' + SELECT id_order + FROM '._DB_PREFIX_.'orders + ORDER BY id_order'); + foreach ($result as $row) + { + $order = new Order((int)($row['id_order'])); + $history = $order->getHistory(false); + foreach ($history as $row2) + { + $oS = new OrderState((int)($row2['id_order_state']), Configuration::get('PS_LANG_DEFAULT')); + if ($oS->delivery) + { + Db::getInstance()->execute('UPDATE '._DB_PREFIX_.'orders SET delivery_number = '.(int)($number++).', `delivery_date` = `date_add` WHERE id_order = '.(int)($order->id)); + break ; + } + } + } + // Add configuration var + Configuration::updateValue('PS_DELIVERY_NUMBER', (int)($number)); +} + diff --git a/install-new/upgrade/functions/desactivate_custom_modules.php b/install-new/upgrade/functions/desactivate_custom_modules.php new file mode 100644 index 000000000..d448eef0d --- /dev/null +++ b/install-new/upgrade/functions/desactivate_custom_modules.php @@ -0,0 +1,65 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function desactivate_custom_modules() +{ + $db = Db::getInstance(); + $modulesDirOnDisk = Module::getModulesDirOnDisk(); + + $module_list_xml = _PS_ROOT_DIR_.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATOR.'modules_list.xml'; + $nativeModules = simplexml_load_file($module_list_xml); + $nativeModules = $nativeModules->modules; + foreach ($nativeModules as $nativeModulesType) + if (in_array($nativeModulesType['type'],array('native','partner'))) + { + $arrNativeModules[] = '""'; + foreach ($nativeModulesType->module as $module) + $arrNativeModules[] = '"'.pSQL($module['name']).'"'; + } + + $arrNonNative = $db->executeS(' + SELECT * + FROM `'._DB_PREFIX_.'module` m + WHERE name NOT IN ('.implode(',',$arrNativeModules).') '); + + $uninstallMe = array("undefined-modules"); + if (is_array($arrNonNative)) + foreach($arrNonNative as $aModule) + $uninstallMe[] = $aModule['name']; + + if (!is_array($uninstallMe)) + $uninstallMe = array($uninstallMe); + + foreach ($uninstallMe as $k=>$v) + $uninstallMe[$k] = '"'.pSQL($v).'"'; + + return Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'module` + SET `active`= 0 + WHERE `name` IN ('.implode(',',$uninstallMe).')'); +} + diff --git a/install-new/upgrade/functions/ecotax_tax_application_fix.php b/install-new/upgrade/functions/ecotax_tax_application_fix.php new file mode 100644 index 000000000..f78b26841 --- /dev/null +++ b/install-new/upgrade/functions/ecotax_tax_application_fix.php @@ -0,0 +1,33 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function ecotax_tax_application_fix() +{ + if (!Db::getInstance()->execute('SELECT `ecotax_tax_rate` FROM `'._DB_PREFIX_.'order_detail` LIMIT 1')) + return Db::getInstance()->execute('ALTER TABLE `'._DB_PREFIX_.'order_detail` ADD `ecotax_tax_rate` DECIMAL(5, 3) NOT NULL AFTER `ecotax`'); + return true; +} \ No newline at end of file diff --git a/install-new/upgrade/functions/editorial_update.php b/install-new/upgrade/functions/editorial_update.php new file mode 100644 index 000000000..8e7c05779 --- /dev/null +++ b/install-new/upgrade/functions/editorial_update.php @@ -0,0 +1,73 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function editorial_update() +{ + /*Table creation*/ + + if (Db::getInstance()->getValue('SELECT `id_module` FROM `'._DB_PREFIX_.'module` WHERE `name`="editorial"')) + { + Db::getInstance()->execute(' + CREATE TABLE `'._DB_PREFIX_.'editorial` ( + `id_editorial` int(10) unsigned NOT NULL auto_increment, + `body_home_logo_link` varchar(255) NOT NULL, + PRIMARY KEY (`id_editorial`)) + ENGINE=MyISAM DEFAULT CHARSET=utf8'); + + Db::getInstance()->execute(' + CREATE TABLE `'._DB_PREFIX_.'editorial_lang` ( + `id_editorial` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `body_title` varchar(255) NOT NULL, + `body_subheading` varchar(255) NOT NULL, + `body_paragraph` text NOT NULL, + `body_logo_subheading` varchar(255) NOT NULL, + PRIMARY KEY (`id_editorial`, `id_lang`)) + ENGINE=MyISAM DEFAULT CHARSET=utf8'); + + if (file_exists(dirname(__FILE__).'/../../modules/editorial/editorial.xml')) + { + $xml = simplexml_load_file(dirname(__FILE__).'/../../modules/editorial/editorial.xml'); + Db::getInstance()->execute(' + INSERT INTO `'._DB_PREFIX_.'editorial`(`id_editorial`, `body_home_logo_link`) VALUES(1, "'.(isset($xml->body->home_logo_link) ? pSQL($xml->body->home_logo_link) : '').'")'); + + + $languages = Db::getInstance()->executeS('SELECT * FROM `'._DB_PREFIX_.'lang`'); + foreach ($languages as $language) + Db::getInstance()->execute(' + INSERT INTO `'._DB_PREFIX_.'editorial_lang` (`id_editorial`, `id_lang`, `body_title`, `body_subheading`, `body_paragraph`, `body_logo_subheading`) + VALUES (1, '.(int)($language['id_lang']).', + "'.(isset($xml->body->{'title_'.$language['id_lang']}) ? pSQL($xml->body->{'title_'.$language['id_lang']}) : '').'", + "'.(isset($xml->body->{'subheading_'.$language['id_lang']}) ? pSQL($xml->body->{'subheading_'.$language['id_lang']}) : '').'", + "'.(isset($xml->body->{'paragraph_'.$language['id_lang']}) ? pSQL($xml->body->{'paragraph_'.$language['id_lang']}, true) : '').'", + "'.(isset($xml->body->{'logo_subheading_'.$language['id_lang']}) ? pSQL($xml->body->{'logo_subheading_'.$language['id_lang']}) : '').'")'); + + unlink(dirname(__FILE__).'/../../modules/editorial/editorial.xml'); + } + } +} + diff --git a/install-new/upgrade/functions/generate_ntree.php b/install-new/upgrade/functions/generate_ntree.php new file mode 100644 index 000000000..b988e93cc --- /dev/null +++ b/install-new/upgrade/functions/generate_ntree.php @@ -0,0 +1,31 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function generate_ntree() +{ + Category::regenerateEntireNtree(); +} diff --git a/install-new/upgrade/functions/generate_tax_rules.php b/install-new/upgrade/functions/generate_tax_rules.php new file mode 100644 index 000000000..a107d12ce --- /dev/null +++ b/install-new/upgrade/functions/generate_tax_rules.php @@ -0,0 +1,87 @@ +active = 1; + $group->name = 'Rule '.$tax['rate'].'%'; + $group->save(); + $id_tax_rules_group = $group->id; + + + $countries = Db::getInstance()->executeS(' + SELECT * FROM `'._DB_PREFIX_.'country` c + LEFT JOIN `'._DB_PREFIX_.'zone` z ON (c.`id_zone` = z.`id_zone`) + LEFT JOIN `'._DB_PREFIX_.'tax_zone` tz ON (tz.`id_zone` = z.`id_zone`) + WHERE `id_tax` = '.(int)$id_tax + ); + if ($countries) + { + foreach ($countries AS $country) + { + $res = Db::getInstance()->execute(' + INSERT INTO `'._DB_PREFIX_.'tax_rule` (`id_tax_rules_group`, `id_country`, `id_state`, `state_behavior`, `id_tax`) + VALUES ( + '.(int)$group->id.', + '.(int)$country['id_country'].', + 0, + 0, + '.(int)$id_tax. + ')'); + + } + } + + $states = Db::getInstance()->executeS(' + SELECT * FROM `'._DB_PREFIX_.'states s + LEFT JOIN `'._DB_PREFIX_.'tax_state ts ON (ts.`id_state` = s.`id_state`) + WHERE `id_tax` = '.(int)$id_tax + ); + + if ($states) + { + foreach ($states AS $state) + { + if (!in_array($state['tax_behavior'], array(PS_PRODUCT_TAX, PS_STATE_TAX, PS_BOTH_TAX))) + $tax_behavior = PS_PRODUCT_TAX; + else + $tax_behavior = $state['tax_behavior']; + + $res = Db::getInstance()->execute(' + INSERT INTO `'._DB_PREFIX_.'tax_rule` (`id_tax_rules_group`, `id_country`, `id_state`, `state_behavior`, `id_tax`) + VALUES ( + '.(int)$group->id.', + '.(int)$state['id_country'].', + '.(int)$state['id_state'].', + '.(int)$tax_behavior.', + '.(int)$id_tax. + ')'); + } + } + + Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'product` + SET `id_tax_rules_group` = '.(int)$group->id.' + WHERE `id_tax` = '.(int)$id_tax + ); + + Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'carrier` + SET `id_tax_rules_group` = '.(int)$group->id.' + WHERE `id_tax` = '.(int)$id_tax + ); + + + if (Configuration::get('SOCOLISSIMO_OVERCOST_TAX') == $id_tax) + Configuration::updateValue('SOCOLISSIMO_OVERCOST_TAX', $group->id); + } +} + diff --git a/install-new/upgrade/functions/gridextjs_deprecated.php b/install-new/upgrade/functions/gridextjs_deprecated.php new file mode 100644 index 000000000..1f21b8e35 --- /dev/null +++ b/install-new/upgrade/functions/gridextjs_deprecated.php @@ -0,0 +1,47 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +/** remove the uncompatible module gridextjs (1.4.0.8 upgrade) + */ +function gridextjs_deprecated() +{ + // if exists, use _PS_MODULE_DIR_ or _PS_ROOT_DIR_ + // instead of guessing the modules dir + if (defined('_PS_MODULE_DIR_')) + $gridextjs_path = _PS_MODULE_DIR_ . 'gridextjs'; + else + if (defined('_PS_ROOT_DIR_')) + $gridextjs_path = _PS_ROOT_DIR_ . '/modules/gridextjs'; + else + $gridextjs_path = dirname(__FILE__).'/../../modules/gridextjs'; + + if (file_exists($gridextjs_path)) + return rename($gridextjs_path, str_replace('gridextjs', 'gridextjs.deprecated', $gridextjs_path)); + + return true; +} + diff --git a/install-new/upgrade/functions/group_reduction_column_fix.php b/install-new/upgrade/functions/group_reduction_column_fix.php new file mode 100644 index 000000000..07f6eea80 --- /dev/null +++ b/install-new/upgrade/functions/group_reduction_column_fix.php @@ -0,0 +1,33 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function group_reduction_column_fix() +{ + if (!Db::getInstance()->execute('SELECT `group_reduction` FROM `'._DB_PREFIX_.'order_detail` LIMIT 1')) + return Db::getInstance()->execute('ALTER TABLE `'._DB_PREFIX_.'order_detail` ADD `group_reduction` DECIMAL(10, 2) NOT NULL AFTER `reduction_amount`'); + return true; +} \ No newline at end of file diff --git a/install-new/upgrade/functions/id_currency_country_fix.php b/install-new/upgrade/functions/id_currency_country_fix.php new file mode 100644 index 000000000..80029a9e9 --- /dev/null +++ b/install-new/upgrade/functions/id_currency_country_fix.php @@ -0,0 +1,33 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function id_currency_country_fix() +{ + if (!Db::getInstance()->execute('SELECT `id_currency` FROM `'._DB_PREFIX_.'country` LIMIT 1')) + return Db::getInstance()->execute('ALTER TABLE `'._DB_PREFIX_.'country` ADD `id_currency` INT NOT NULL DEFAULT \'0\' AFTER `id_zone`'); + return true; +} \ No newline at end of file diff --git a/install-new/upgrade/functions/index.php b/install-new/upgrade/functions/index.php new file mode 100644 index 000000000..4e2611d37 --- /dev/null +++ b/install-new/upgrade/functions/index.php @@ -0,0 +1,36 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); +header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); + +header("Cache-Control: no-store, no-cache, must-revalidate"); +header("Cache-Control: post-check=0, pre-check=0", false); +header("Pragma: no-cache"); + +header("Location: ../"); +exit; \ No newline at end of file diff --git a/install-new/upgrade/functions/invoice_number_set.php b/install-new/upgrade/functions/invoice_number_set.php new file mode 100644 index 000000000..3032fc3c8 --- /dev/null +++ b/install-new/upgrade/functions/invoice_number_set.php @@ -0,0 +1,55 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function invoice_number_set() +{ + Configuration::loadConfiguration(); + $number = 1; + + // Update each order with a number + $result = Db::getInstance()->executeS(' + SELECT id_order + FROM '._DB_PREFIX_.'orders + ORDER BY id_order'); + foreach ($result as $row) + { + $order = new Order((int)($row['id_order'])); + $history = $order->getHistory(false); + foreach ($history as $row2) + { + $oS = new OrderState((int)($row2['id_order_state']), Configuration::get('PS_LANG_DEFAULT')); + if ($oS->invoice) + { + Db::getInstance()->execute('UPDATE '._DB_PREFIX_.'orders SET invoice_number = '.(int)($number++).', `invoice_date` = `date_add` WHERE id_order = '.(int)($order->id)); + break ; + } + } + } + // Add configuration var + Configuration::updateValue('PS_INVOICE_NUMBER', (int)($number)); +} + diff --git a/install-new/upgrade/functions/latin1_database_to_utf8.php b/install-new/upgrade/functions/latin1_database_to_utf8.php new file mode 100644 index 000000000..b772a1904 --- /dev/null +++ b/install-new/upgrade/functions/latin1_database_to_utf8.php @@ -0,0 +1,133 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function latin1_database_to_utf8() +{ + global $requests, $warningExist; + + $tables = array( + array('name' => 'address', 'id' => 'id_address', 'fields' => array('alias', 'company', 'name', 'surname', 'address1', 'address2', 'postcode', 'city', 'other', 'phone', 'phone_mobile')), + array('name' => 'alias', 'id' => 'id_alias', 'fields' => array('alias', 'search')), + array('name' => 'attribute_group_lang', 'id' => 'id_attribute_group', 'lang' => true, 'fields' => array('name', 'public_name')), + array('name' => 'attribute_lang', 'id' => 'id_attribute', 'lang' => true, 'fields' => array('name')), + array('name' => 'carrier', 'id' => 'id_carrier', 'fields' => array('name', 'url')), + array('name' => 'carrier_lang', 'id' => 'id_carrier', 'lang' => true, 'fields' => array('delay')), + array('name' => 'cart', 'id' => 'id_cart', 'fields' => array('gift_message')), + array('name' => 'category_lang', 'id' => 'id_category', 'lang' => true, 'fields' => array('name', 'description', 'link_rewrite', 'meta_title', 'meta_keywords', 'meta_description')), + array('name' => 'configuration', 'id' => 'id_configuration', 'fields' => array('name', 'value')), + array('name' => 'configuration_lang', 'id' => 'id_configuration', 'lang' => true, 'fields' => array('value')), + array('name' => 'contact', 'id' => 'id_contact', 'fields' => array('email')), + array('name' => 'contact_lang', 'id' => 'id_contact', 'lang' => true, 'fields' => array('name', 'description')), + array('name' => 'country', 'id' => 'id_country', 'fields' => array('iso_code')), + array('name' => 'country_lang', 'id' => 'id_country', 'lang' => true, 'fields' => array('name')), + array('name' => 'currency', 'id' => 'id_currency', 'fields' => array('name', 'iso_code', 'sign')), + array('name' => 'customer', 'id' => 'id_customer', 'fields' => array('email', 'passwd', 'name', 'surname')), + array('name' => 'discount', 'id' => 'id_discount', 'fields' => array('name')), + array('name' => 'discount_lang', 'id' => 'id_discount', 'lang' => true, 'fields' => array('description')), + array('name' => 'discount_type_lang', 'id' => 'id_discount_type', 'lang' => true, 'fields' => array('name')), + array('name' => 'employee', 'id' => 'id_employee', 'fields' => array('name', 'surname', 'email', 'passwd')), + array('name' => 'feature_lang', 'id' => 'id_feature', 'lang' => true, 'fields' => array('name')), + array('name' => 'feature_value_lang', 'id' => 'id_feature_value', 'lang' => true, 'fields' => array('value')), + array('name' => 'hook', 'id' => 'id_hook', 'fields' => array('name', 'title', 'description')), + array('name' => 'hook_module_exceptions', 'id' => 'id_hook_module_exceptions', 'fields' => array('file_name')), + array('name' => 'image_lang', 'id' => 'id_image', 'lang' => true, 'fields' => array('legend')), + array('name' => 'image_type', 'id' => 'id_image_type', 'fields' => array('name')), + array('name' => 'lang', 'id' => 'id_lang', 'fields' => array('name', 'iso_code')), + array('name' => 'manufacturer', 'id' => 'id_manufacturer', 'fields' => array('name')), + array('name' => 'message', 'id' => 'id_message', 'fields' => array('message')), + array('name' => 'module', 'id' => 'id_module', 'fields' => array('name')), + array('name' => 'orders', 'id' => 'id_order', 'fields' => array('payment', 'module', 'gift_message', 'shipping_number')), + array('name' => 'order_detail', 'id' => 'id_order_detail', 'fields' => array('product_name', 'product_reference', 'tax_name', 'download_hash')), + array('name' => 'order_discount', 'id' => 'id_order_discount', 'fields' => array('name')), + array('name' => 'order_state', 'id' => 'id_order_state', 'fields' => array('color')), + array('name' => 'order_state_lang', 'id' => 'id_order_state', 'lang' => true, 'fields' => array('name', 'template')), + array('name' => 'product', 'id' => 'id_product', 'fields' => array('ean13', 'reference')), + array('name' => 'product_attribute', 'id' => 'id_product_attribute', 'fields' => array('reference', 'ean13')), + array('name' => 'product_download', 'id' => 'id_product_download', 'fields' => array('display_filename', 'filename')), + array('name' => 'product_lang', 'id' => 'id_product', 'lang' => true, 'fields' => array('description', 'description_short', 'link_rewrite', 'meta_description', 'meta_keywords', 'meta_title', 'name', 'availability')), + array('name' => 'profile_lang', 'id' => 'id_profile', 'lang' => true, 'fields' => array('name')), + array('name' => 'quick_access', 'id' => 'id_quick_access', 'fields' => array('link')), + array('name' => 'quick_access_lang', 'id' => 'id_quick_access', 'lang' => true, 'fields' => array('name')), + array('name' => 'supplier', 'id' => 'id_supplier', 'fields' => array('name')), + array('name' => 'tab', 'id' => 'id_tab', 'fields' => array('class_name')), + array('name' => 'tab_lang', 'id' => 'id_tab', 'lang' => true, 'fields' => array('name')), + array('name' => 'tag', 'id' => 'id_tag', 'fields' => array('name')), + array('name' => 'tax_lang', 'id' => 'id_tax', 'lang' => true, 'fields' => array('name')), + array('name' => 'zone', 'id' => 'id_zone', 'fields' => array('name')) + ); + + foreach ($tables AS $table) + { + /* Latin1 datas' selection */ + if (!Db::getInstance()->execute('SET NAMES latin1')) + echo 'Cannot change the sql encoding to latin1!'; + $query = 'SELECT `'.$table['id'].'`'; + foreach ($table['fields'] AS $field) + $query .= ', `'.$field.'`'; + if (isset($table['lang']) AND $table['lang']) + $query .= ', `id_lang`'; + $query .= ' FROM `'._DB_PREFIX_.$table['name'].'`'; + $latin1Datas = Db::getInstance()->executeS($query); + if ($latin1Datas === false) + { + $warningExist = true; + $requests .= ' + + + getMsgError()).']]> + getNumberError()).']]> + '."\n"; + } + + if (Db::getInstance()->NumRows()) + { + /* Utf-8 datas' restitution */ + if (!Db::getInstance()->execute('SET NAMES utf8')) + echo 'Cannot change the sql encoding to utf8!'; + foreach ($latin1Datas AS $latin1Data) + { + $query = 'UPDATE `'._DB_PREFIX_.$table['name'].'` SET'; + foreach ($table['fields'] AS $field) + $query .= ' `'.$field.'` = \''.pSQL($latin1Data[$field]).'\','; + $query = rtrim($query, ','); + $query .= ' WHERE `'.$table['id'].'` = '.(int)($latin1Data[$table['id']]); + if (isset($table['lang']) AND $table['lang']) + $query .= ' AND `id_lang` = '.(int)($latin1Data['id_lang']); + if (!Db::getInstance()->execute($query)) + { + $warningExist = true; + $requests .= ' + + + getMsgError()).']]> + getNumberError()).']]> + '."\n"; + } + } + } + } +} diff --git a/install-new/upgrade/functions/migrate_block_info_to_cms_block.php b/install-new/upgrade/functions/migrate_block_info_to_cms_block.php new file mode 100644 index 000000000..faed1b848 --- /dev/null +++ b/install-new/upgrade/functions/migrate_block_info_to_cms_block.php @@ -0,0 +1,57 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function migrate_block_info_to_cms_block() +{ + //get ids cms of block information + $id_blockinfos = Db::getInstance()->getValue('SELECT id_module FROM `'._DB_PREFIX_.'module` WHERE name = \'blockinfos\''); + //get ids cms of block information + $ids_cms = Db::getInstance()->executeS('SELECT * FROM `'._DB_PREFIX_.'block_cms` WHERE `id_block` = '.(int)$id_blockinfos); + //check if block info is installed and active + if (sizeof($ids_cms)) + { + //install module blockcms + if (Module::getInstanceByName('blockcms')->install()) + { + //add new block in new cms block + Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'cms_block` (`id_cms_category`, `name`, `location`, `position`) VALUES( 1, \'\', 0, 0)'); + $id_block = Db::getInstance()->Insert_ID(); + + $languages = Language::getLanguages(false); + foreach($languages AS $language) + Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'cms_block_lang` (`id_cms_block`, `id_lang`, `name`) VALUES ('.(int)$id_block.', '.(int)$language['id_lang'].', \'Information\')'); + + //save ids cms of block information in new module cms bloc + foreach($ids_cms AS $id_cms) + Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'cms_block_page` (`id_cms_block`, `id_cms`, `is_category`) VALUES ('.(int)$id_block.', '.(int)$id_cms['id_cms'].', 0)'); + } + else + return true; + } + else + return true; +} \ No newline at end of file diff --git a/install-new/upgrade/functions/moduleReinstaller.php b/install-new/upgrade/functions/moduleReinstaller.php new file mode 100644 index 000000000..d54c5dbfd --- /dev/null +++ b/install-new/upgrade/functions/moduleReinstaller.php @@ -0,0 +1,37 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function moduleReinstaller($moduleName, $force = false) +{ + $module = Module::getInstanceByName($moduleName); + if (!is_object($module)) + die(Tools::displayError()); + if ($module->uninstall() OR $force) + return $module->install(); + return false; +} + diff --git a/install-new/upgrade/functions/move_crossselling.php b/install-new/upgrade/functions/move_crossselling.php new file mode 100644 index 000000000..53d37601d --- /dev/null +++ b/install-new/upgrade/functions/move_crossselling.php @@ -0,0 +1,14 @@ +executeS('SELECT FROM `'._DB_PREFIX_.'module` WHERE `name` = \'crossselling\'')) +{ +Db::getInstance()->execute(' +INSERT INTO `'._DB_PREFIX_.'hook_module` (`id_module`, `id_hook`, `position`) +VALUES ((SELECT `id_module` FROM `'._DB_PREFIX_.'module` WHERE `name` = \'crossselling\'), 9, (SELECT max_position FROM (SELECT MAX(position)+1 as max_position FROM `'._DB_PREFIX_.'hook_module` WHERE `id_hook` = 9) tmp))'); +} + +} + diff --git a/install-new/upgrade/functions/regenerate_level_depth.php b/install-new/upgrade/functions/regenerate_level_depth.php new file mode 100644 index 000000000..23d47cfc6 --- /dev/null +++ b/install-new/upgrade/functions/regenerate_level_depth.php @@ -0,0 +1,58 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +/** + * Regenerate the entire category tree level_depth + */ +function regenerate_level_depth() +{ + Db::getInstance()->execute('UPDATE `'._DB_PREFIX_.'category` SET `level_depth` = 0 WHERE `id_category` = 1'); + regenerate_children_categories(1, 0); +} + +/** + * Recursively regenerate the level_depth of this category's children + * + * @param int $id_category + * @param int $level_depth + */ +function regenerate_children_categories($id_category, $level_depth) + { + $categories = Db::getInstance()->executeS('SELECT `id_category` FROM `'._DB_PREFIX_.'category` WHERE `id_parent` = '.(int)$id_category); + if (!$categories) + return; + $new_depth = (int)$level_depth + 1; + $cat_ids = ""; + foreach($categories as $category) + { + $cat_ids .= (string)$category['id_category'].','; + regenerate_children_categories($category['id_category'], $new_depth); + } + $cat_ids = substr($cat_ids, 0, -1); + + Db::getInstance()->execute('UPDATE `'._DB_PREFIX_.'category` SET `level_depth` = '.(int)$new_depth.' WHERE `id_category` IN ('.$cat_ids.')'); + } diff --git a/install-new/upgrade/functions/remove_duplicate_category_groups.php b/install-new/upgrade/functions/remove_duplicate_category_groups.php new file mode 100644 index 000000000..9cdfb1468 --- /dev/null +++ b/install-new/upgrade/functions/remove_duplicate_category_groups.php @@ -0,0 +1,52 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +/** + * Removes duplicates from table category_group caused by a bug in category importing in PS < 1.4.2 + */ +function remove_duplicate_category_groups() +{ + $result = Db::getInstance()->executeS(' + SELECT `id_category`, `id_group`, COUNT(*) as `count` + FROM `'._DB_PREFIX_.'category_group` + GROUP BY `id_category`, `id_group` + ORDER BY `count` DESC'); + + foreach($result as $row) + { + if ((int)$row['count'] > 1) + { + $limit = (int)$row['count'] - 1; + $result = Db::getInstance()->execute(' + DELETE FROM `'._DB_PREFIX_.'category_group` + WHERE `id_category` = '.$row['id_category'].' AND `id_group` = '.$row['id_group'].' + LIMIT '.$limit); + } + else + return; + } +} \ No newline at end of file diff --git a/install-new/upgrade/functions/remove_module_from_hook.php b/install-new/upgrade/functions/remove_module_from_hook.php new file mode 100644 index 000000000..6a70c7be4 --- /dev/null +++ b/install-new/upgrade/functions/remove_module_from_hook.php @@ -0,0 +1,53 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function remove_module_from_hook($module_name, $hook_name) +{ + $result = false; + + $id_module = Db::getInstance()->getValue(' + SELECT `id_module` FROM `'._DB_PREFIX_.'module` + WHERE `name` = \''.pSQL($module_name).'\'' + ); + + if ((int)$id_module > 0) + { + $id_hook = Db::getInstance()->getValue(' + SELECT `id_hook` FROM `'._DB_PREFIX_.'hook` WHERE `name` = \''.pSQL($hook_name).'\' + '); + + if ((int)$id_hook > 0) + { + $result = Db::getInstance()->execute(' + DELETE FROM `'._DB_PREFIX_.'hook_module` + WHERE `id_module` = '.(int)$id_module.' AND `id_hook` = '.(int)$id_hook); + } + } + + return $result; +} + diff --git a/install-new/upgrade/functions/remove_tab.php b/install-new/upgrade/functions/remove_tab.php new file mode 100644 index 000000000..40697d0b8 --- /dev/null +++ b/install-new/upgrade/functions/remove_tab.php @@ -0,0 +1,11 @@ +execute(' + DELETE t, l + FROM `ps_tab` t LEFT JOIN `PREFIX_tab_lang` l ON (t.id_tab = l.id_tab) + WHERE t.`class_name` = '.pSQL($tabname)); +} + diff --git a/install-new/upgrade/functions/reorderpositions.php b/install-new/upgrade/functions/reorderpositions.php new file mode 100644 index 000000000..6ac69e63a --- /dev/null +++ b/install-new/upgrade/functions/reorderpositions.php @@ -0,0 +1,75 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function reorderpositions() +{ + /* Clean products positions */ + if ($cat = Category::getCategories(1, false, false)) + foreach($cat AS $i => $categ) + Product::cleanPositions((int)$categ['id_category']); + + //clean Category position and delete old position system + Language::loadLanguages(); + $language = Language::getLanguages(); + $cat_parent = Db::getInstance()->executeS('SELECT DISTINCT c.id_parent FROM `'._DB_PREFIX_.'category` c WHERE id_category != 1'); + foreach($cat_parent AS $parent) + { + $result = Db::getInstance()->executeS(' + SELECT DISTINCT c.*, cl.* + FROM `'._DB_PREFIX_.'category` c + LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (c.`id_category` = cl.`id_category` AND `id_lang` = '.(int)(Configuration::get('PS_LANG_DEFAULT')).') + WHERE c.id_parent = '.(int)($parent['id_parent']).' + ORDER BY name ASC'); + foreach($result AS $i => $categ) + { + Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'category` + SET `position` = '.(int)($i).' + WHERE `id_parent` = '.(int)($categ['id_parent']).' + AND `id_category` = '.(int)($categ['id_category'])); + } + + $result = Db::getInstance()->executeS(' + SELECT DISTINCT c.*, cl.* + FROM `'._DB_PREFIX_.'category` c + LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (c.`id_category` = cl.`id_category`) + WHERE c.id_parent = '.(int)($parent['id_parent']).' + ORDER BY name ASC'); + + // Remove number from category name + foreach($result AS $i => $categ) + Db::getInstance()->execute('UPDATE `'._DB_PREFIX_.'category` c + LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (c.`id_category` = cl.`id_category`) + SET `name` = \''.preg_replace('/^[0-9]+\./', '',$categ['name']).'\' + WHERE c.id_category = '.(int)($categ['id_category']).' AND id_lang = \''.(int)($categ['id_lang']).'\''); + } + + /* Clean CMS positions */ + if ($cms_cat = CMSCategory::getCategories(1, false, false)) + foreach($cms_cat AS $i => $categ) + CMS::cleanPositions((int)($categ['id_cms_category'])); +} \ No newline at end of file diff --git a/install-new/upgrade/functions/setAllGroupsOnHomeCategory.php b/install-new/upgrade/functions/setAllGroupsOnHomeCategory.php new file mode 100644 index 000000000..4e250903e --- /dev/null +++ b/install-new/upgrade/functions/setAllGroupsOnHomeCategory.php @@ -0,0 +1,40 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function setAllGroupsOnHomeCategory() +{ + $results = Group::getGroups(Configuration::get('PS_LANG_DEFAULT')); + $groups = array(); + foreach ($results AS $result) + $groups[] = $result['id_group']; + if (is_array($groups) && sizeof($groups)) + { + $category = new Category(1); + $category->cleanGroups(); + $category->addGroups($groups); + } +} diff --git a/install-new/upgrade/functions/set_discount_category.php b/install-new/upgrade/functions/set_discount_category.php new file mode 100644 index 000000000..aa54b5367 --- /dev/null +++ b/install-new/upgrade/functions/set_discount_category.php @@ -0,0 +1,37 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function set_discount_category() +{ + $discounts = Db::getInstance()->executeS('SELECT `id_discount` FROM `'._DB_PREFIX_.'discount`'); + $categories = Db::getInstance()->executeS('SELECT `id_category` FROM `'._DB_PREFIX_.'category`'); + foreach ($discounts AS $discount) + foreach ($categories AS $category) + Db::getInstance()->execute('INSERT INTO `'._DB_PREFIX_.'discount_category` (`id_discount`,`id_category`) VALUES ('.(int)($discount['id_discount']).','.(int)($category['id_category']).')'); +} + + diff --git a/install-new/upgrade/functions/set_payment_module.php b/install-new/upgrade/functions/set_payment_module.php new file mode 100644 index 000000000..85d9ec478 --- /dev/null +++ b/install-new/upgrade/functions/set_payment_module.php @@ -0,0 +1,54 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function set_payment_module() +{ + // Get all modules then select only payment ones + $modules = Module::getModulesInstalled(); + foreach ($modules AS $module) + { + $file = _PS_MODULE_DIR_.$module['name'].'/'.$module['name'].'.php'; + if (!file_exists($file)) + continue; + $fd = fopen($file, 'r'); + if (!$fd) + continue ; + $content = fread($fd, filesize($file)); + if (preg_match_all('/extends PaymentModule/U', $content, $matches)) + { + Db::getInstance()->execute(' + INSERT INTO `'._DB_PREFIX_.'module_country` (id_module, id_country) + SELECT '.(int)($module['id_module']).', id_country FROM `'._DB_PREFIX_.'country` WHERE active = 1'); + Db::getInstance()->execute(' + INSERT INTO `'._DB_PREFIX_.'module_currency` (id_module, id_currency) + SELECT '.(int)($module['id_module']).', id_currency FROM `'._DB_PREFIX_.'currency` WHERE deleted = 0'); + } + fclose($fd); + } +} + + diff --git a/install-new/upgrade/functions/set_payment_module_group.php b/install-new/upgrade/functions/set_payment_module_group.php new file mode 100644 index 000000000..4747e1415 --- /dev/null +++ b/install-new/upgrade/functions/set_payment_module_group.php @@ -0,0 +1,50 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function set_payment_module_group() +{ + // Get all modules then select only payment ones + $modules = Module::getModulesInstalled(); + foreach ($modules AS $module) + { + $file = _PS_MODULE_DIR_.$module['name'].'/'.$module['name'].'.php'; + if (!file_exists($file)) + continue; + $fd = @fopen($file, 'r'); + if (!$fd) + continue ; + $content = fread($fd, filesize($file)); + if (preg_match_all('/extends PaymentModule/U', $content, $matches)) + { + Db::getInstance()->execute(' + INSERT INTO `'._DB_PREFIX_.'module_group` (id_module, id_group) + SELECT '.(int)($module['id_module']).', id_group FROM `'._DB_PREFIX_.'group`'); + } + fclose($fd); + } +} + diff --git a/install-new/upgrade/functions/shop_url.php b/install-new/upgrade/functions/shop_url.php new file mode 100644 index 000000000..d24cd5338 --- /dev/null +++ b/install-new/upgrade/functions/shop_url.php @@ -0,0 +1,35 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function shop_url() +{ + if (!($host = Configuration::get('CANONICAL_URL'))) + $host = Tools::getHttpHost(); + Configuration::updateValue('PS_SHOP_DOMAIN', $host); + Configuration::updateValue('PS_SHOP_DOMAIN_SSL', $host); + return true; +} \ No newline at end of file diff --git a/install-new/upgrade/functions/update_carrier_url.php b/install-new/upgrade/functions/update_carrier_url.php new file mode 100644 index 000000000..05d1d152b --- /dev/null +++ b/install-new/upgrade/functions/update_carrier_url.php @@ -0,0 +1,43 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function update_carrier_url() +{ + // Get all carriers + $sql = ' + SELECT c.`id_carrier`, c.`url` + FROM `'._DB_PREFIX_.'carrier` c'; + $carriers = Db::getInstance()->executeS($sql); + + // Check each one and erase carrier URL if not correct URL + foreach ($carriers as $carrier) + if (!Validate::isAbsoluteUrl($carrier['url'])) + Db::getInstance()->execute(' + UPDATE `'._DB_PREFIX_.'carrier` + SET `url` = \'\' + WHERE `id_carrier`= '.(int)($carrier['id_carrier'])); +} diff --git a/install-new/upgrade/functions/update_feature_detachable_cache.php b/install-new/upgrade/functions/update_feature_detachable_cache.php new file mode 100644 index 000000000..5076cbf1a --- /dev/null +++ b/install-new/upgrade/functions/update_feature_detachable_cache.php @@ -0,0 +1,38 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function update_feature_detachable_cache() +{ + Configuration::updateGlobalValue('PS_SPECIFIC_PRICE_FEATURE_ACTIVE', (int)SpecificPrice::isCurrentlyUsed('specific_price')); + Configuration::updateGlobalValue('PS_SCENE_FEATURE_ACTIVE', (int)Scene::isCurrentlyUsed('scene', true)); + Configuration::updateGlobalValue('PS_VIRTUAL_PROD_FEATURE_ACTIVE', (int)ProductDownload::isCurrentlyUsed('product_download', true)); + Configuration::updateGlobalValue('PS_CUSTOMIZATION_FEATURE_ACTIVE', (int)Customization::isCurrentlyUsed()); + Configuration::updateGlobalValue('PS_DISCOUNT_FEATURE_ACTIVE', (int)Discount::isCurrentlyUsed('discount', true)); + Configuration::updateGlobalValue('PS_GROUP_FEATURE_ACTIVE', (int)Group::isCurrentlyUsed()); + Configuration::updateGlobalValue('PS_PACK_FEATURE_ACTIVE', (int)Pack::isCurrentlyUsed()); + Configuration::updateGlobalValue('PS_ALIAS_FEATURE_ACTIVE', (int)Alias::isCurrentlyUsed('alias', true)); +} diff --git a/install-new/upgrade/functions/update_for_13version.php b/install-new/upgrade/functions/update_for_13version.php new file mode 100644 index 000000000..488be28e2 --- /dev/null +++ b/install-new/upgrade/functions/update_for_13version.php @@ -0,0 +1,16 @@ += 0) + return; // if the old version is a 1.4 version + + // Disable the Smarty 3 + Configuration::updateValue('PS_FORCE_SMARTY_2', 1); + // Disable the URL rewritting + Configuration::updateValue('PS_REWRITING_SETTINGS', 0); + // Disable Canonical redirection + Configuration::updateValue('PS_CANONICAL_REDIRECT', 0); +} \ No newline at end of file diff --git a/install-new/upgrade/functions/update_image_size_in_db.php b/install-new/upgrade/functions/update_image_size_in_db.php new file mode 100644 index 000000000..396895e6c --- /dev/null +++ b/install-new/upgrade/functions/update_image_size_in_db.php @@ -0,0 +1,42 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function update_image_size_in_db() +{ + if (file_exists(realpath(INSTALL_PATH.'/../img').'/logo.jpg')) + { + list($width, $height, $type, $attr) = getimagesize(realpath(INSTALL_PATH.'/../img').'/logo.jpg'); + Configuration::updateValue('SHOP_LOGO_WIDTH', (int)round($width)); + Configuration::updateValue('SHOP_LOGO_HEIGHT', (int)round($height)); + } + if (file_exists(realpath(INSTALL_PATH.'/../modules/editorial').'/homepage_logo.jpg')) + { + list($width, $height, $type, $attr) = getimagesize(realpath(INSTALL_PATH.'/../modules/editorial').'/homepage_logo.jpg'); + Configuration::updateValue('EDITORIAL_IMAGE_WIDTH', (int)round($width)); + Configuration::updateValue('EDITORIAL_IMAGE_HEIGHT', (int)round($height)); + } +} diff --git a/install-new/upgrade/functions/update_module_followup.php b/install-new/upgrade/functions/update_module_followup.php new file mode 100644 index 000000000..950e2a31e --- /dev/null +++ b/install-new/upgrade/functions/update_module_followup.php @@ -0,0 +1,37 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function update_module_followup() +{ + Configuration::loadConfiguration(); + $followup = Module::getInstanceByName('followup'); + if (!$followup->id) + return; + + Db::getInstance()->execute('ALTER TABLE `'._DB_PREFIX_.'log_email` ADD INDEX `date_add`(`date_add`), ADD INDEX `id_cart`(`id_cart`);'); +} + diff --git a/install-new/upgrade/functions/update_module_loyalty.php b/install-new/upgrade/functions/update_module_loyalty.php new file mode 100644 index 000000000..3eb22d93b --- /dev/null +++ b/install-new/upgrade/functions/update_module_loyalty.php @@ -0,0 +1,45 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +// backward compatibility vouchers should be available in all categories +function update_module_loyalty() +{ + if (Configuration::get('PS_LOYALTY_POINT_VALUE') !== false) + { + $category_list = ''; + + foreach(Category::getSimpleCategories(Configuration::get('PS_LANG_DEFAULT')) as $category) + $category_list .= $category['id_category'].','; + + if (!empty($category_list)) + { + $category_list = rtrim($category_list, ','); + Configuration::updateValue('PS_LOYALTY_VOUCHER_CATEGORY', $category_list); + } + } +} + diff --git a/install-new/upgrade/functions/update_modules_sql.php b/install-new/upgrade/functions/update_modules_sql.php new file mode 100644 index 000000000..0ea304207 --- /dev/null +++ b/install-new/upgrade/functions/update_modules_sql.php @@ -0,0 +1,41 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function update_modules_sql() +{ + Configuration::loadConfiguration(); + $blocklink = Module::getInstanceByName('blocklink'); + if ($blocklink->id) + Db::getInstance()->execute('ALTER IGNORE TABLE `'._DB_PREFIX_.'blocklink_lang` ADD PRIMARY KEY (`id_link`, `id_lang`);'); + $productComments = Module::getInstanceByName('productcomments'); + if ($productComments->id) + { + Db::getInstance()->execute('ALTER IGNORE TABLE `'._DB_PREFIX_.'product_comment_grade` ADD PRIMARY KEY (`id_product_comment`, `id_product_comment_criterion`);'); + Db::getInstance()->execute('ALTER IGNORE TABLE `'._DB_PREFIX_.'product_comment_criterion` DROP PRIMARY KEY, ADD PRIMARY KEY (`id_product_comment_criterion`, `id_lang`);'); + Db::getInstance()->execute('ALTER IGNORE TABLE `'._DB_PREFIX_.'product_comment_criterion_product` ADD PRIMARY KEY(`id_product`, `id_product_comment_criterion`);'); + } +} diff --git a/install-new/upgrade/functions/update_order_detail_taxes.php b/install-new/upgrade/functions/update_order_detail_taxes.php new file mode 100644 index 000000000..2ae5f856f --- /dev/null +++ b/install-new/upgrade/functions/update_order_detail_taxes.php @@ -0,0 +1,45 @@ +executeS(' + SELECT `id_order_detail`, `tax_name`, `tax_rate` FROM `'._DB_PREFIX_.'order_detail` + '); + + foreach ($order_detail_taxes as $order_detail_tax) + { + if ($order_detail_tax['tax_rate'] == '0.000') + continue; + + $alternative_tax_name = 'Tax '.$order_detail_tax['tax_rate']; + $create_tax = true; + + if ($id_tax = (int)Tax::getTaxIdByName($order_detail_tax['tax_name'], false) || $id_tax = (int)Tax::getTaxIdByName($alternative_tax_name, false)) + { + $tax = new Tax($id_tax); + if (Validate::isLoadedObject($tax)) + if ((string)$tax->rate == (string)$order_detail_tax['tax_rate']) + $create_tax = false; + else + echo (string)$tax->rate.'!='.(string)$order_detail_tax['tax_rate']; + } + + if ($create_tax) + { + $tax = new Tax(); + $tax->rate = (float)$order_detail_tax['tax_rate']; + $tax->name[Configuration::get('PS_LANG_DEFAULT')] = (isset($order_detail_tax['tax_name']) ? $order_detail_tax['tax_name'] : $alternative_tax_name); + $tax->deleted = true; + $tax->active = false; + $tax->save(); + + $id_tax = $tax->id; + } + + Db::getInstance()->execute(' + INSERT INTO `'._DB_PREFIX_.'order_detail_tax` (`id_order_detail`, `id_tax`) + VALUES ('.(int)$order_detail_tax['id_order_detail'].','.$id_tax.') + '); + + } +} \ No newline at end of file diff --git a/install-new/upgrade/functions/update_order_details.php b/install-new/upgrade/functions/update_order_details.php new file mode 100644 index 000000000..e55ed28e9 --- /dev/null +++ b/install-new/upgrade/functions/update_order_details.php @@ -0,0 +1,39 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function update_order_details() +{ + $res = Db::getInstance()->executeS('SHOW COLUMNS FROM `'._DB_PREFIX_.'order_detail` LIKE \'reduction_percent\''); + + if (sizeof($res) == 0) + { + Db::getInstance()->execute('ALTER TABLE `'._DB_PREFIX_.'order_detail` ADD `reduction_percent` DECIMAL(10, 2) NOT NULL default \'0.00\' AFTER `product_price`'); + Db::getInstance()->execute('ALTER TABLE `'._DB_PREFIX_.'order_detail` ADD `reduction_amount` DECIMAL(20, 6) NOT NULL default \'0.000000\' AFTER `reduction_percent`'); + } +} + + diff --git a/install-new/upgrade/functions/update_products_ecotax_v133.php b/install-new/upgrade/functions/update_products_ecotax_v133.php new file mode 100644 index 000000000..a15717dc9 --- /dev/null +++ b/install-new/upgrade/functions/update_products_ecotax_v133.php @@ -0,0 +1,36 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function update_products_ecotax_v133() +{ + global $oldversion; + if($oldversion < '1.3.3.0') + { + Db::getInstance()->execute('UPDATE `'._DB_PREFIX_.'product` SET `ecotax` = \'0\' WHERE 1'); + Db::getInstance()->execute('UPDATE `'._DB_PREFIX_.'order_detail` SET `ecotax` = \'0\' WHERE 1;'); + } +} \ No newline at end of file diff --git a/install-new/upgrade/functions/updateproductcomments.php b/install-new/upgrade/functions/updateproductcomments.php new file mode 100644 index 000000000..8a933b323 --- /dev/null +++ b/install-new/upgrade/functions/updateproductcomments.php @@ -0,0 +1,58 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +function updateproductcomments() +{ + if (Db::getInstance()->executeS('SELECT * FROM '._DB_PREFIX_.'product_comment') !== false) + { + Db::getInstance()->execute('CREATE TABLE IF NOT EXISTS '._DB_PREFIX_.'product_comment_criterion_lang ( + `id_product_comment_criterion` INT( 11 ) UNSIGNED NOT NULL , + `id_lang` INT(11) UNSIGNED NOT NULL , + `name` VARCHAR(64) NOT NULL , + PRIMARY KEY ( `id_product_comment_criterion` , `id_lang` ) + ) ENGINE='._MYSQL_ENGINE_.' DEFAULT CHARSET=utf8'); + Db::getInstance()->execute('CREATE TABLE IF NOT EXISTS '._DB_PREFIX_.'product_comment_criterion_category ( + `id_product_comment_criterion` int(10) unsigned NOT NULL, + `id_category` int(10) unsigned NOT NULL, + PRIMARY KEY(`id_product_comment_criterion`, `id_category`), + KEY `id_category` (`id_category`) + ) ENGINE='._MYSQL_ENGINE_.' DEFAULT CHARSET=utf8'); + Db::getInstance()->execute('ALTER TABLE '._DB_PREFIX_.'product_comment ADD `id_guest` INT(11) NULL AFTER `id_customer`'); + Db::getInstance()->execute('ALTER TABLE '._DB_PREFIX_.'product_comment ADD `customer_name` varchar(64) NULL AFTER `content`'); + Db::getInstance()->execute('ALTER TABLE '._DB_PREFIX_.'product_comment ADD `deleted` tinyint(1) NOT NULL AFTER `validate`'); + Db::getInstance()->execute('ALTER TABLE '._DB_PREFIX_.'product_comment ADD INDEX (id_customer)'); + Db::getInstance()->execute('ALTER TABLE '._DB_PREFIX_.'product_comment ADD INDEX (id_guest)'); + Db::getInstance()->execute('ALTER TABLE '._DB_PREFIX_.'product_comment ADD INDEX (id_product)'); + Db::getInstance()->execute('ALTER TABLE '._DB_PREFIX_.'product_comment_criterion DROP `id_lang`'); + Db::getInstance()->execute('ALTER TABLE '._DB_PREFIX_.'product_comment_criterion DROP `name`'); + Db::getInstance()->execute('ALTER TABLE '._DB_PREFIX_.'product_comment_criterion ADD `id_product_comment_criterion_type` tinyint(1) NOT NULL AFTER `id_product_comment_criterion`'); + Db::getInstance()->execute('ALTER TABLE '._DB_PREFIX_.'product_comment_criterion ADD `active` tinyint(1) NOT NULL AFTER `id_product_comment_criterion_type`'); + Db::getInstance()->execute('ALTER IGNORE TABLE `'._DB_PREFIX_.'product_comment` ADD `title` VARCHAR(64) NULL AFTER `id_guest`;'); + } +} + + diff --git a/install-new/upgrade/functions/updatetabicon_from_11version.php b/install-new/upgrade/functions/updatetabicon_from_11version.php new file mode 100644 index 000000000..13a2854ca --- /dev/null +++ b/install-new/upgrade/functions/updatetabicon_from_11version.php @@ -0,0 +1,47 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ +function updatetabicon_from_11version() +{ + global $oldversion; + if (version_compare($oldversion,'1.5.0.0','<')) + { + + $rows = Db::getInstance()->executeS('SELECT `id_tab`,`class_name` FROM '._DB_PREFIX_.'tab'); + if (sizeof($rows)) + { + $img_dir = scandir(_PS_IMG_DIR_.'/t/'); + $result = true; + foreach ($rows as $tab) + { + if (file_exists(_PS_IMG_DIR_.'/t/'.$tab['id_tab'].'.gif') + AND !file_exists(_PS_IMG_DIR_.'/t/'.$tab['class_name'].'.gif')) + $result &= rename(_PS_IMG_DIR_.'/t/'.$tab['id_tab'].'.gif',_PS_IMG_DIR_.'/t/'.$tab['class_name'].'.gif'); + } + } + } + return true; +} diff --git a/install-new/upgrade/sql/0.9.1.2.sql b/install-new/upgrade/sql/0.9.1.2.sql new file mode 100644 index 000000000..4ff1333c6 --- /dev/null +++ b/install-new/upgrade/sql/0.9.1.2.sql @@ -0,0 +1,30 @@ +/* STRUCTURE */ +CREATE TABLE `PREFIX_product_sale` ( +`id_product` INT( 10 ) UNSIGNED NOT NULL , +`quantity` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0', +`nb_vente` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0', +`date_upd` DATE NOT NULL , +PRIMARY KEY ( `id_product` ) +) ENGINE = MYISAM DEFAULT CHARSET=utf8; + +ALTER TABLE `PREFIX_image_type` + ADD `manufacturers` BOOL NOT NULL DEFAULT '1' AFTER `categories`; + +ALTER TABLE `PREFIX_address` + ADD `id_manufacturer` INT( 10 ) UNSIGNED NOT NULL AFTER `id_customer` ; + +ALTER TABLE `PREFIX_address` + ADD `id_supplier` INT( 10 ) UNSIGNED NOT NULL AFTER `id_manufacturer` ; + +ALTER TABLE `PREFIX_order_discount` + ADD `id_discount` INT( 10 ) UNSIGNED NOT NULL AFTER `id_order` ; + +ALTER TABLE `PREFIX_discount` + ADD `quantity_per_user` INT( 10 ) UNSIGNED NOT NULL DEFAULT '1' AFTER `quantity` ; + +ALTER TABLE `PREFIX_contact` CHANGE `position` `position` TINYINT( 2 ) UNSIGNED NOT NULL DEFAULT '0'; + +/* CONTENTS */ + +/* CONFIGURATION VARIABLE */ + diff --git a/install-new/upgrade/sql/0.9.1.sql b/install-new/upgrade/sql/0.9.1.sql new file mode 100644 index 000000000..5b0fabb09 --- /dev/null +++ b/install-new/upgrade/sql/0.9.1.sql @@ -0,0 +1,9 @@ +/* STRUCTURE */ +ALTER TABLE `PREFIX_product` CHANGE `price` `price` DECIMAL(13,6) NOT NULL DEFAULT '0.000000'; + +/* CONTENTS */ +DELETE FROM `PREFIX_carrier_lang` WHERE `id_carrier` = (SELECT c.`id_carrier` FROM `PREFIX_carrier` c WHERE c.`name` = 'My download manager' LIMIT 1); +DELETE FROM `PREFIX_carrier` WHERE `name` = 'My download manager'; + +/* Conf vars */ +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_TAX_NO', '0', NOW(), NOW()); \ No newline at end of file diff --git a/install-new/upgrade/sql/0.9.5.1.sql b/install-new/upgrade/sql/0.9.5.1.sql new file mode 100644 index 000000000..31bc41c99 --- /dev/null +++ b/install-new/upgrade/sql/0.9.5.1.sql @@ -0,0 +1,66 @@ +/* STRUCTURE */ +ALTER TABLE `PREFIX_order_state` + ADD `logable` TINYINT(1) NOT NULL DEFAULT 0; +ALTER TABLE `PREFIX_product_sale` + CHANGE `nb_vente` `sale_nbr` INT(10) UNSIGNED NOT NULL DEFAULT 0; +ALTER TABLE `PREFIX_carrier` + CHANGE `tax` `id_tax` INT(10) UNSIGNED NULL DEFAULT 0 AFTER `id_carrier`; +ALTER TABLE `PREFIX_carrier` + ADD `shipping_handling` TINYINT(1) UNSIGNED NOT NULL DEFAULT 1 AFTER `deleted`; +ALTER TABLE `PREFIX_address` + CHANGE `id_country` `id_country` INT(10) UNSIGNED NOT NULL DEFAULT 0, + CHANGE `id_customer` `id_customer` INT(10) UNSIGNED NOT NULL DEFAULT 0, + CHANGE `id_manufacturer` `id_manufacturer` INT(10) UNSIGNED NOT NULL DEFAULT 0; +RENAME TABLE `PREFIX_product_attribute_combinaison` TO `PREFIX_product_attribute_combination`; +ALTER TABLE `PREFIX_product_attribute_combination` + DROP INDEX `product_attribute_combinaison_index`, + ADD PRIMARY KEY (`id_attribute`, `id_product_attribute`); + +CREATE TABLE `PREFIX_carrier_zone` ( + id_carrier int(10) unsigned NOT NULL, + id_zone int(10) unsigned NOT NULL, + INDEX carrier_zone_index(id_carrier, id_zone) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_tax_zone` ( + id_tax int(10) unsigned NOT NULL, + id_zone int(10) unsigned NOT NULL, + INDEX tax_zone_index(id_tax, id_zone) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + + +/* CONTENTS */ + +/* Rename old tab */ +UPDATE `PREFIX_tab_lang` SET `name` = 'Produits' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminPPreferences') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +UPDATE `PREFIX_tab_lang` SET `name` = 'Emails' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminEmails') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +UPDATE `PREFIX_tab_lang` SET `name` = 'Images' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminImages') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); + +/* New BankWire state */ +UPDATE `PREFIX_order_state` SET `logable` = 1 WHERE `id_order_state` < 6 AND `id_order_state` > 1; +INSERT INTO `PREFIX_order_state` (`id_order_state`, `invoice`, `send_email`, `color`, `unremovable`, `logable`) VALUES (10, 0, 1, 'lightblue', 1, 0); +INSERT INTO `PREFIX_order_state_lang` (`id_order_state`, `id_lang`, `name`, `template`) VALUES +(10, 1, 'Awaiting bank wire payment', 'bankwire'), +(10, 2, 'En attente du paiement par virement bancaire', 'bankwire'); + +/* New hook */ +INSERT INTO `PREFIX_hook` (`name`, `title`, `description`, `position`) VALUES ('updateOrderStatus', 'Order''s status update event', 'Launch modules when the order''s status of an order change.', 0); + +/* Adding zones for tax/carrier */ +INSERT INTO `PREFIX_tax_zone` (id_tax, id_zone) (SELECT id_tax, id_zone FROM `PREFIX_tax` CROSS JOIN `PREFIX_zone`); +INSERT INTO `PREFIX_carrier_zone` (id_carrier, id_zone) (SELECT id_carrier, id_zone FROM `PREFIX_carrier` CROSS JOIN `PREFIX_zone`); + +/* CONFIGURATION VARIABLE */ + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PREFIX_PURCHASE_MINIMUM', '0', NOW(), NOW()), +('PREFIX_SHOP_ENABLE', '1', NOW(), NOW()); + +/* Adding tab Contact */ +/* PHP:add_new_tab(AdminContact, fr:Coordonnées|es:Datos|en:Contact Information|de:Kontaktinformation|it:Informazioni di contatto, 8); */; \ No newline at end of file diff --git a/install-new/upgrade/sql/0.9.5.2.sql b/install-new/upgrade/sql/0.9.5.2.sql new file mode 100644 index 000000000..57f9b765c --- /dev/null +++ b/install-new/upgrade/sql/0.9.5.2.sql @@ -0,0 +1,5 @@ +/* STRUCTURE */ + +/* CONTENTS */ + +/* CONFIGURATION VARIABLE */ \ No newline at end of file diff --git a/install-new/upgrade/sql/0.9.6.1.sql b/install-new/upgrade/sql/0.9.6.1.sql new file mode 100644 index 000000000..fa371d9b9 --- /dev/null +++ b/install-new/upgrade/sql/0.9.6.1.sql @@ -0,0 +1,51 @@ +/* STRUCTURE */ + +CREATE TABLE `PREFIX_alias` ( + alias varchar(255) NOT NULL, + search varchar(255) NOT NULL, + active tinyint(1) NOT NULL default 1, + id_alias int(10) NOT NULL auto_increment, + PRIMARY KEY (id_alias), + UNIQUE KEY alias (alias) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +ALTER TABLE `PREFIX_configuration` + ADD UNIQUE `name` (`name`); +ALTER TABLE `PREFIX_product` + ADD `wholesale_price` DECIMAL( 13, 6 ) NOT NULL AFTER `price`; +ALTER TABLE `PREFIX_range_weight` + CHANGE `delimiter1` `delimiter1` DECIMAL( 13, 6 ) NOT NULL DEFAULT '0.000000'; +ALTER TABLE `PREFIX_range_weight` + CHANGE `delimiter2` `delimiter2` DECIMAL( 13, 6 ) NOT NULL DEFAULT '0.000000'; + ALTER TABLE `PREFIX_discount_type_lang` + CHANGE `name` `name` VARCHAR(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL; + ALTER TABLE `PREFIX_product` + CHANGE `bargain` `on_sale` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0; +ALTER TABLE `PREFIX_image_type` + ADD `suppliers` BOOL NOT NULL DEFAULT 1; + +/* CONTENTS */ + +/* Adding tab alias */ +INSERT INTO `PREFIX_tab` (`id_parent`, `class_name`, `position`) VALUES ((SELECT tmp.id_tab FROM (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminTools' LIMIT 1) AS tmp), 'AdminAliases', 9); +INSERT INTO `PREFIX_tab_lang` (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminAliases' LIMIT 1), + 'Alias' FROM `PREFIX_lang`); +INSERT INTO `PREFIX_access` (`id_profile`, `id_tab`, `view`, `add`, `edit`, `delete`) + VALUES ('1', (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminAliases' LIMIT 1), '1', '1', '1', '1'); + +/* Adding tab import */ +INSERT INTO `PREFIX_tab` (`id_parent`, `class_name`, `position`) VALUES ((SELECT tmp.id_tab FROM (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminTools' LIMIT 1) AS tmp), 'AdminImport', 10); +INSERT INTO `PREFIX_tab_lang` (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminImport' LIMIT 1), + 'Import' FROM `PREFIX_lang`); +INSERT INTO `PREFIX_access` (`id_profile`, `id_tab`, `view`, `add`, `edit`, `delete`) + VALUES ('1', (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminImport' LIMIT 1), '1', '1', '1', '1'); + +INSERT INTO `PREFIX_hook` (`name`, `title`, `description`) +VALUES ('adminOrder', 'Display in Back-Office, tab AdminOrder', 'Launch modules when the tab AdminOrder is displayed on back-office.'); + + +/* CONFIGURATION VARIABLE */ \ No newline at end of file diff --git a/install-new/upgrade/sql/0.9.6.2.sql b/install-new/upgrade/sql/0.9.6.2.sql new file mode 100644 index 000000000..c55fefbb8 --- /dev/null +++ b/install-new/upgrade/sql/0.9.6.2.sql @@ -0,0 +1,7 @@ +/* STRUCTURE */ + +ALTER TABLE `PREFIX_product` CHANGE `wholesale_price` `wholesale_price` DECIMAL(13, 6) NULL; + +/* CONTENTS */ + +/* CONFIGURATION VARIABLE */ \ No newline at end of file diff --git a/install-new/upgrade/sql/0.9.7.1.sql b/install-new/upgrade/sql/0.9.7.1.sql new file mode 100644 index 000000000..5a8ded7f5 --- /dev/null +++ b/install-new/upgrade/sql/0.9.7.1.sql @@ -0,0 +1,14 @@ +/* STRUCTURE */ + +ALTER TABLE `PREFIX_module` ADD INDEX (`name`); + +/* CONTENTS */ + +INSERT INTO `PREFIX_hook` (`name` , `title`, `description`, `position`) VALUES +('footer', 'Footer', 'Add block in footer', 1), +('PDFInvoice', 'PDF Invoice', 'Allow the display of extra informations into the PDF invoice', 0); +UPDATE `PREFIX_hook` SET `description` = 'Add blocks in the header', `position` = '1' WHERE `name` = 'header' LIMIT 1 ; +UPDATE `PREFIX_currency` SET `iso_code` = 'XXX' WHERE `iso_code` IS NULL; + + +/* CONFIGURATION VARIABLE */ \ No newline at end of file diff --git a/install-new/upgrade/sql/0.9.7.2.sql b/install-new/upgrade/sql/0.9.7.2.sql new file mode 100644 index 000000000..c0ebf4949 --- /dev/null +++ b/install-new/upgrade/sql/0.9.7.2.sql @@ -0,0 +1,21 @@ +/* STRUCTURE */ + +CREATE TABLE `PREFIX_discount_quantity` ( + id_discount_quantity INT UNSIGNED NOT NULL auto_increment, + id_discount_type INT UNSIGNED NOT NULL, + id_product INT UNSIGNED NOT NULL, + id_product_attribute INT UNSIGNED NULL, + quantity INT UNSIGNED NOT NULL, + value DECIMAL(10,2) UNSIGNED NOT NULL, + PRIMARY KEY (id_discount_quantity) +) ENGINE=MYISAM DEFAULT CHARSET=utf8; + +ALTER TABLE `PREFIX_product` ADD quantity_discount BOOL NULL DEFAULT 0 AFTER out_of_stock; + +/* CONTENTS */ + + +/* CONFIGURATION VARIABLE */ + +UPDATE `PREFIX_configuration` SET name = 'PS_TAX', value = 1 WHERE name = 'PS_TAX_NO' AND value = 0; +UPDATE `PREFIX_configuration` SET name = 'PS_TAX', value = 0 WHERE name = 'PS_TAX_NO' AND value = 1; \ No newline at end of file diff --git a/install-new/upgrade/sql/0.9.sql b/install-new/upgrade/sql/0.9.sql new file mode 100644 index 000000000..abef1ee07 --- /dev/null +++ b/install-new/upgrade/sql/0.9.sql @@ -0,0 +1,39 @@ +/* STRUCTURE */ + +ALTER TABLE `PREFIX_currency` ADD `iso_code` VARCHAR( 3 ) NOT NULL DEFAULT '0' AFTER `name`; +ALTER TABLE `PREFIX_product_attribute` ADD `default_on` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0' AFTER `weight`; +ALTER TABLE `PREFIX_carrier` ADD `tax` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0' AFTER `deleted`; + +ALTER TABLE `PREFIX_order_detail` + ADD `download_hash` VARCHAR(255) default NULL AFTER `tax_rate`, + ADD `download_nb` INT(10) unsigned default 0 AFTER `tax_rate`, + ADD `download_deadline` DATETIME DEFAULT NULL AFTER `tax_rate`; + +CREATE TABLE `PREFIX_product_download` ( + `id_product_download` INT(10) unsigned NOT NULL auto_increment, + `id_product` INT(10) unsigned NOT NULL, + `display_filename` VARCHAR(255) default NULL, + `physically_filename` VARCHAR(255) default NULL, + `date_deposit` DATETIME NOT NULL, + `date_expiration` DATETIME default NULL, + `nb_days_accessible` int(10) unsigned default NULL, + `nb_downloadable` int(10) unsigned default 1, + PRIMARY KEY (`id_product_download`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + + +/* CONTENTS */ + +/* Adding tab Appearance */ +UPDATE `PREFIX_tab` SET `class_name` = 'AdminAppearance' WHERE class_name = 'AdminHomepage'; +UPDATE `PREFIX_tab_lang` SET `name` = 'Appearance' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminAppearance'); +UPDATE `PREFIX_tab_lang` SET `name` = 'Apparence' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminAppearance') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); + +/* Adding iso_code to currency */ +UPDATE `PREFIX_currency` SET `iso_code` = 'XXX'; + +/* Conf vars */ +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_DISPLAY_QTIES', '1', NOW(), NOW()); \ No newline at end of file diff --git a/install-new/upgrade/sql/1.0.0.1.sql b/install-new/upgrade/sql/1.0.0.1.sql new file mode 100644 index 000000000..1aafc5d8f --- /dev/null +++ b/install-new/upgrade/sql/1.0.0.1.sql @@ -0,0 +1,122 @@ +/* PHP */ +/* PHP:latin1_database_to_utf8(); */; + +/* STRUCTURE */ +SET NAMES 'utf8'; + +CREATE TABLE PREFIX_attribute_impact ( + id_attribute_impact int(11) NOT NULL AUTO_INCREMENT, + id_product int(11) NOT NULL, + id_attribute int(11) NOT NULL, + weight float NOT NULL, + price decimal(10,2) NOT NULL, + PRIMARY KEY (id_attribute_impact), + UNIQUE KEY id_product (id_product,id_attribute) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_supplier_lang ( + id_supplier INTEGER UNSIGNED NOT NULL, + id_lang INTEGER UNSIGNED NOT NULL, + description TEXT NULL, + INDEX supplier_lang_index(id_supplier, id_lang) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_manufacturer_lang ( + id_manufacturer INTEGER UNSIGNED NOT NULL, + id_lang INTEGER UNSIGNED NOT NULL, + description TEXT NULL, + INDEX manufacturer_lang_index(id_manufacturer, id_lang) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_state ( + id_state int(10) unsigned NOT NULL AUTO_INCREMENT, + id_country int(11) NOT NULL, + name varchar(64) NOT NULL, + iso_code varchar(3) NOT NULL, + active tinyint(1) NOT NULL default 0, + PRIMARY KEY (id_state) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +ALTER TABLE PREFIX_customer ADD secure_key VARCHAR(32) NOT NULL DEFAULT '-1' AFTER id_gender; +ALTER TABLE PREFIX_orders ADD secure_key VARCHAR(32) NOT NULL DEFAULT '-1' AFTER id_address_invoice; +ALTER TABLE PREFIX_product ADD id_category_default INT NULL AFTER id_tax; +ALTER TABLE PREFIX_category_product ADD position INTEGER UNSIGNED NOT NULL DEFAULT 0 AFTER id_product; +ALTER TABLE PREFIX_product ADD INDEX (id_category_default); +ALTER TABLE PREFIX_order_detail ADD ecotax DECIMAL(10, 2) NOT NULL DEFAULT 0 AFTER tax_rate; +ALTER TABLE PREFIX_employee + CHANGE name lastname VARCHAR(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + CHANGE surname firstname VARCHAR(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL; +ALTER TABLE PREFIX_address + CHANGE name lastname VARCHAR(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + CHANGE surname firstname VARCHAR(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL; +ALTER TABLE PREFIX_customer + CHANGE name lastname VARCHAR(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL , + CHANGE surname firstname VARCHAR(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL; +ALTER TABLE PREFIX_quick_access ADD new_window TINYINT( 1 ) NOT NULL DEFAULT 0 AFTER id_quick_access; + +/* CONTENTS */ +UPDATE PREFIX_hook_module SET id_hook = 14 WHERE id_hook = 9; +UPDATE PREFIX_quick_access SET new_window = 1 WHERE id_quick_access = 2 LIMIT 1; +INSERT INTO PREFIX_hook (name, title, description, position) VALUES ('orderConfirmation', 'Order confirmation page', 'Called on order confirmation page', 0); +UPDATE PREFIX_order_detail odt + SET product_price = ( + odt.product_price * ( + SELECT conversion_rate FROM PREFIX_currency c, PREFIX_orders o WHERE o.id_order = odt.id_order AND c.id_currency = o.id_currency + ) +); +UPDATE PREFIX_product p SET p.id_category_default = (SELECT id_category FROM PREFIX_category_product cp WHERE cp.id_product = p.id_product GROUP BY id_product ORDER BY cp.id_category ASC); +UPDATE PREFIX_category_product cp SET cp.position= cp.id_product; + +/* NEW TABS */ + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminOrders' LIMIT 1) AS tmp), 'AdminPrintPDF', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminOrders' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminPrintPDF' LIMIT 1), + 'Print invoices' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Impression factures' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminPrintPDF') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminPrintPDF' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES (-1, 'AdminSearch', 2); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminSearch' LIMIT 1), + 'Search' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Recherche' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminSearch') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminSearch' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminPreferences' LIMIT 1) AS tmp), 'AdminLocalization', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminPreferences' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminLocalization' LIMIT 1), + 'Localization' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Localisation' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminLocalization') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminLocalization' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminShipping' LIMIT 1) AS tmp), 'AdminStates', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminShipping' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminStates' LIMIT 1), + 'States' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Etats' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminStates') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (`id_profile`, `id_tab`, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminStates' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_image_type (`name`, `width`, `height`, `products`, `categories`, `manufacturers`, `suppliers`) VALUES ('home', 129, 129, 1, 0, 0, 0); + +/* CONFIGURATION VARIABLE */ +INSERT INTO PREFIX_configuration (name, value, date_add, date_upd) VALUES ('PS_NB_DAYS_NEW_PRODUCT', 20, NOW(), NOW()); +INSERT INTO PREFIX_configuration (name, value, date_add, date_upd) VALUES ('PS_WEIGHT_UNIT', 'kg', NOW(), NOW()); +INSERT INTO PREFIX_configuration (name, value, date_add, date_upd) VALUES ('PS_BLOCK_CART_AJAX', '1', NOW(), NOW()); +INSERT INTO PREFIX_configuration (name, value, date_add, date_upd) VALUES ('PS_FO_PROTOCOL', 'http://', NOW(), NOW()); +UPDATE PREFIX_configuration SET name = 'PS_MAIL_SMTP_PORT', value = 25 WHERE name = 'PS_MAIL_SMTP_PORT' AND value = 'default'; +UPDATE PREFIX_configuration SET name = 'PS_MAIL_SMTP_PORT', value = 465 WHERE name = 'PS_MAIL_SMTP_PORT' AND value = 'secure'; + +/* PHP:add_new_tab(AdminPDF, fr:PDF|es:PDF|en:PDF|de:PDF|it:PDF, 3); */; \ No newline at end of file diff --git a/install-new/upgrade/sql/1.0.0.2.sql b/install-new/upgrade/sql/1.0.0.2.sql new file mode 100644 index 000000000..fb0c72687 --- /dev/null +++ b/install-new/upgrade/sql/1.0.0.2.sql @@ -0,0 +1,13 @@ + +/* STRUCTURE */ +SET NAMES 'utf8'; + +ALTER TABLE PREFIX_currency CHANGE COLUMN conversion_rate conversion_rate DECIMAL(10,6) NOT NULL; + +/* CONTENTS */ + +INSERT INTO PREFIX_image_type (`name`, `width`, `height`, `products`, `categories`, `manufacturers`, `suppliers`) VALUES ('thickbox', 600, 600, 1, 0, 0, 0); +INSERT INTO PREFIX_image_type (`name`, `width`, `height`, `products`, `categories`, `manufacturers`, `suppliers`) VALUES ('category', 600, 150, 0, 1, 0, 0); +INSERT INTO PREFIX_image_type (`name`, `width`, `height`, `products`, `categories`, `manufacturers`, `suppliers`) VALUES ('thickbox', 129, 129, 1, 0, 0, 0); + +/* CONFIGURATION VARIABLE */ diff --git a/install-new/upgrade/sql/1.0.0.3.sql b/install-new/upgrade/sql/1.0.0.3.sql new file mode 100644 index 000000000..e82995b59 --- /dev/null +++ b/install-new/upgrade/sql/1.0.0.3.sql @@ -0,0 +1,441 @@ +/* STRUCTURE */ +SET NAMES 'utf8'; + +ALTER TABLE PREFIX_attribute_group_lang DROP INDEX attribute_group_lang_index, ADD PRIMARY KEY (id_attribute_group, id_lang); +ALTER TABLE PREFIX_discount_lang DROP INDEX discount_lang_index, ADD PRIMARY KEY (id_discount, id_lang); +ALTER TABLE PREFIX_discount_type_lang DROP INDEX discount_type_lang_index, ADD PRIMARY KEY (id_discount_type, id_lang); +ALTER TABLE PREFIX_manufacturer_lang DROP INDEX manufacturer_lang_index, ADD PRIMARY KEY (id_manufacturer, id_lang); +ALTER TABLE PREFIX_supplier_lang DROP INDEX supplier_lang_index, ADD PRIMARY KEY (id_supplier, id_lang); +ALTER TABLE PREFIX_profile_lang DROP INDEX profile_lang_index, ADD PRIMARY KEY (id_profile, id_lang); +ALTER TABLE PREFIX_configuration_lang DROP INDEX configuration_lang_index, ADD PRIMARY KEY (id_configuration, id_lang); +ALTER TABLE PREFIX_tab_lang DROP INDEX tab_lang, ADD PRIMARY KEY (id_tab, id_lang); + +ALTER TABLE PREFIX_product ADD id_color_default INT UNSIGNED NULL AFTER id_category_default; +ALTER TABLE PREFIX_attribute_group ADD is_color_group TINYINT(1) NOT NULL DEFAULT 0; +ALTER TABLE PREFIX_attribute ADD color VARCHAR(32) NULL DEFAULT NULL; +ALTER TABLE PREFIX_currency CHANGE conversion_rate conversion_rate DECIMAL(13, 6) NOT NULL ; +ALTER TABLE PREFIX_address ADD id_state INT NULL AFTER id_country; +ALTER TABLE PREFIX_state ADD id_zone INT NULL AFTER id_country; +ALTER TABLE PREFIX_country ADD contains_states tinyint(1) NOT NULL DEFAULT 0; + +UPDATE PREFIX_customer SET secure_key = MD5(RAND()) WHERE secure_key = '-1'; +UPDATE PREFIX_orders o SET secure_key = (SELECT secure_key FROM PREFIX_customer c WHERE c.id_customer = o.id_customer); + +CREATE TABLE PREFIX_order_return ( + id_order_return INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, + id_customer INTEGER UNSIGNED NOT NULL, + id_order INTEGER UNSIGNED NOT NULL, + state tinyint(1) unsigned NOT NULL DEFAULT 0, + question TEXT NOT NULL, + date_add DATETIME NOT NULL, + date_upd DATETIME NOT NULL, + PRIMARY KEY(id_order_return), + INDEX order_return_customer(id_customer) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_order_return_detail ( + id_order_return INTEGER UNSIGNED NOT NULL, + id_order_detail INTEGER UNSIGNED NOT NULL, + product_quantity int(10) unsigned NOT NULL DEFAULT 1, + PRIMARY KEY (id_order_return,id_order_detail) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_order_return_state ( + id_order_return_state int(10) unsigned NOT NULL auto_increment, + color varchar(32) default NULL, + PRIMARY KEY (`id_order_return_state`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_order_return_state_lang ( + id_order_return_state int(10) unsigned NOT NULL, + id_lang int(10) unsigned NOT NULL, + name varchar(64) NOT NULL, + UNIQUE KEY `order_state_lang_index` (`id_order_return_state`,`id_lang`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_order_slip ( + id_order_slip INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, + id_customer INTEGER UNSIGNED NOT NULL, + id_order INTEGER UNSIGNED NOT NULL, + date_add DATETIME NOT NULL, + date_upd DATETIME NOT NULL, + PRIMARY KEY(id_order_slip), + INDEX order_slip_customer(id_customer) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_order_slip_detail ( + id_order_slip INTEGER UNSIGNED NOT NULL, + id_order_detail INTEGER UNSIGNED NOT NULL, + product_quantity int(10) unsigned NOT NULL DEFAULT 0, + PRIMARY KEY (`id_order_slip`,`id_order_detail`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_tax_state ( + id_tax int(10) unsigned NOT NULL, + id_state int(10) unsigned NOT NULL, + INDEX tax_state_index(id_tax, id_state) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +/* CONTENTS */ + +INSERT INTO PREFIX_order_return_state (`id_order_return_state`, `color`) VALUES +(1, '#ADD8E6'), +(2, '#EEDDFF'), +(3, '#DDFFAA'), +(4, '#FFD3D3'), +(5, '#FFFFBB'); + +INSERT INTO PREFIX_order_return_state_lang (`id_order_return_state`, `id_lang`, `name`) VALUES +(1, 1, 'Waiting for confirmation'), +(2, 1, 'Waiting for package'), +(3, 1, 'Package received'), +(4, 1, 'Return denied'), +(5, 1, 'Return completed'), +(1, 2, 'En attente de confirmation'), +(2, 2, 'En attente du colis'), +(3, 2, 'Colis reçu'), +(4, 2, 'Retour refusé'), +(5, 2, 'Retour terminé'); + +UPDATE PREFIX_country SET contains_states = 1 WHERE id_country = 21; + +INSERT INTO `PREFIX_state` (`id_state`, `id_country`, `id_zone`, `name`, `iso_code`, `active`) VALUES +(1, 21, 2, 'Alabama', 'AL', 1), +(2, 21, 2, 'Alaska', 'AK', 1), +(3, 21, 2, 'Arizona', 'AZ', 1), +(4, 21, 2, 'Arkansas', 'AR', 1), +(5, 21, 2, 'California', 'CA', 1), +(6, 21, 2, 'Colorado', 'CO', 1), +(7, 21, 2, 'Connecticut', 'CT', 1), +(8, 21, 2, 'Delaware', 'DE', 1), +(9, 21, 2, 'Florida', 'FL', 1), +(10, 21, 2, 'Georgia', 'GA', 1), +(11, 21, 2, 'Hawaii', 'HI', 1), +(12, 21, 2, 'Idaho', 'ID', 1), +(13, 21, 2, 'Illinois', 'IL', 1), +(14, 21, 2, 'Indiana', 'IN', 1), +(15, 21, 2, 'Iowa', 'IA', 1), +(16, 21, 2, 'Kansas', 'KS', 1), +(17, 21, 2, 'Kentucky', 'KY', 1), +(18, 21, 2, 'Louisiana', 'LA', 1), +(19, 21, 2, 'Maine', 'ME', 1), +(20, 21, 2, 'Maryland', 'MD', 1), +(21, 21, 2, 'Massachusetts', 'MA', 1), +(22, 21, 2, 'Michigan', 'MI', 1), +(23, 21, 2, 'Minnesota', 'MN', 1), +(24, 21, 2, 'Mississippi', 'MS', 1), +(25, 21, 2, 'Missouri', 'MO', 1), +(26, 21, 2, 'Montana', 'MT', 1), +(27, 21, 2, 'Nebraska', 'NE', 1), +(28, 21, 2, 'Nevada', 'NV', 1), +(29, 21, 2, 'New Hampshire', 'NH', 1), +(30, 21, 2, 'New Jersey', 'NJ', 1), +(31, 21, 2, 'New Mexico', 'NM', 1), +(32, 21, 2, 'New York', 'NY', 1), +(33, 21, 2, 'North Carolina', 'NC', 1), +(34, 21, 2, 'North Dakota', 'ND', 1), +(35, 21, 2, 'Ohio', 'OH', 1), +(36, 21, 2, 'Oklahoma', 'OK', 1), +(37, 21, 2, 'Oregon', 'OR', 1), +(38, 21, 2, 'Pennsylvania', 'PA', 1), +(39, 21, 2, 'Rhode Island', 'RI', 1), +(40, 21, 2, 'South Carolina', 'SC', 1), +(41, 21, 2, 'South Dakota', 'SD', 1), +(42, 21, 2, 'Tennessee', 'TN', 1), +(43, 21, 2, 'Texas', 'TX', 1), +(44, 21, 2, 'Utah', 'UT', 1), +(45, 21, 2, 'Vermont', 'VT', 1), +(46, 21, 2, 'Virginia', 'VA', 1), +(47, 21, 2, 'Washington', 'WA', 1), +(48, 21, 2, 'West Virginia', 'WV', 1), +(49, 21, 2, 'Wisconsin', 'WI', 1), +(50, 21, 2, 'Wyoming', 'WY', 1), +(51, 21, 2, 'Puerto Rico', 'PR', 1), +(52, 21, 2, 'US Virgin Islands', 'VI', 1); + +INSERT INTO `PREFIX_lang` (`name`, `active`, `iso_code`) VALUES +('Deutsch (German)', 1, 'de'), +('Español (Spanish)', 1, 'es'), +('Nederlands (Dutch)', 1, 'nl'), +('Bahasa Indonesia (Indonesian)', 1, 'id'), +('Italiano (Italian)', 1, 'it'), +('Język polski (Polish)', 1, 'pl'), +('Português (Portuguese)', 1, 'pt'), +('Čeština (Czech)', 1, 'cs'), +('Pусский язык (Russian)', 0, 'ru'), +('Türkçe (Turkish)', 0, 'tr'), +('Tiếng Việt (Vietnamese)', 0, 'vn'); + +/* NEW LANGS */ + +INSERT IGNORE INTO `PREFIX_tab_lang` (`id_tab`, `id_lang`, `name`) + (SELECT `id_tab`, id_lang, (SELECT tl.`name` + FROM `PREFIX_tab_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_tab`=`PREFIX_tab`.`id_tab`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_tab`); + +INSERT IGNORE INTO `PREFIX_country_lang` (`id_country`, `id_lang`, `name`) + (SELECT `id_country`, id_lang, (SELECT tl.`name` + FROM `PREFIX_country_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_country`=`PREFIX_country`.`id_country`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_country`); + +INSERT IGNORE INTO `PREFIX_quick_access_lang` (`id_quick_access`, `id_lang`, `name`) + (SELECT `id_quick_access`, id_lang, (SELECT tl.`name` + FROM `PREFIX_quick_access_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_quick_access`=`PREFIX_quick_access`.`id_quick_access`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_quick_access`); + +INSERT IGNORE INTO `PREFIX_attribute_group_lang` (`id_attribute_group`, `id_lang`, `name`, `public_name`) + (SELECT `id_attribute_group`, id_lang, (SELECT tl.`name` + FROM `PREFIX_attribute_group_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_attribute_group`=`PREFIX_attribute_group`.`id_attribute_group`), + (SELECT tl.`public_name` + FROM `PREFIX_attribute_group_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_attribute_group`=`PREFIX_attribute_group`.`id_attribute_group`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_attribute_group`); + +INSERT IGNORE INTO `PREFIX_attribute_lang` (`id_attribute`, `id_lang`, `name`) + (SELECT `id_attribute`, id_lang, (SELECT tl.`name` + FROM `PREFIX_attribute_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_attribute`=`PREFIX_attribute`.`id_attribute`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_attribute`); + +INSERT IGNORE INTO `PREFIX_carrier_lang` (`id_carrier`, `id_lang`, `delay`) + (SELECT `id_carrier`, id_lang, (SELECT tl.`delay` + FROM `PREFIX_carrier_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_carrier`=`PREFIX_carrier`.`id_carrier`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_carrier`); + +INSERT IGNORE INTO `PREFIX_contact_lang` (`id_contact`, `id_lang`, `name`, `description`) + (SELECT `id_contact`, id_lang, (SELECT tl.`name` + FROM `PREFIX_contact_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_contact`=`PREFIX_contact`.`id_contact`), + (SELECT tl.`description` + FROM `PREFIX_contact_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_contact`=`PREFIX_contact`.`id_contact`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_contact`); + +INSERT IGNORE INTO `PREFIX_discount_lang` (`id_discount`, `id_lang`, `description`) + (SELECT `id_discount`, id_lang, (SELECT tl.`description` + FROM `PREFIX_discount_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_discount`=`PREFIX_discount`.`id_discount`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_discount`); + +INSERT IGNORE INTO `PREFIX_discount_type_lang` (`id_discount_type`, `id_lang`, `name`) + (SELECT `id_discount_type`, id_lang, (SELECT tl.`name` + FROM `PREFIX_discount_type_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_discount_type`=`PREFIX_discount_type`.`id_discount_type`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_discount_type`); + +INSERT IGNORE INTO `PREFIX_feature_lang` (`id_feature`, `id_lang`, `name`) + (SELECT `id_feature`, id_lang, (SELECT tl.`name` + FROM `PREFIX_feature_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_feature`=`PREFIX_feature`.`id_feature`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_feature`); + +INSERT IGNORE INTO `PREFIX_feature_value_lang` (`id_feature_value`, `id_lang`, `value`) + (SELECT `id_feature_value`, id_lang, (SELECT tl.`value` + FROM `PREFIX_feature_value_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_feature_value`=`PREFIX_feature_value`.`id_feature_value`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_feature_value`); + +INSERT IGNORE INTO `PREFIX_image_lang` (`id_image`, `id_lang`, `legend`) + (SELECT `id_image`, id_lang, (SELECT tl.`legend` + FROM `PREFIX_image_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_image`=`PREFIX_image`.`id_image`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_image`); + +INSERT IGNORE INTO `PREFIX_manufacturer_lang` (`id_manufacturer`, `id_lang`, `description`) + (SELECT `id_manufacturer`, id_lang, (SELECT tl.`description` + FROM `PREFIX_manufacturer_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_manufacturer`=`PREFIX_manufacturer`.`id_manufacturer`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_manufacturer`); + +INSERT IGNORE INTO `PREFIX_order_return_state_lang` (`id_order_return_state`, `id_lang`, `name`) + (SELECT `id_order_return_state`, id_lang, (SELECT tl.`name` + FROM `PREFIX_order_return_state_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_order_return_state`=`PREFIX_order_return_state`.`id_order_return_state`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_order_return_state`); + +INSERT IGNORE INTO `PREFIX_order_state_lang` (`id_order_state`, `id_lang`, `name`, `template`) + (SELECT `id_order_state`, id_lang, (SELECT tl.`name` + FROM `PREFIX_order_state_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_order_state`=`PREFIX_order_state`.`id_order_state`), + (SELECT tl.`template` + FROM `PREFIX_order_state_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_order_state`=`PREFIX_order_state`.`id_order_state`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_order_state`); + +INSERT IGNORE INTO `PREFIX_profile_lang` (`id_profile`, `id_lang`, `name`) + (SELECT `id_profile`, id_lang, (SELECT tl.`name` + FROM `PREFIX_profile_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_profile`=`PREFIX_profile`.`id_profile`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_profile`); + +INSERT IGNORE INTO `PREFIX_supplier_lang` (`id_supplier`, `id_lang`, `description`) + (SELECT `id_supplier`, id_lang, (SELECT tl.`description` + FROM `PREFIX_supplier_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_supplier`=`PREFIX_supplier`.`id_supplier`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_supplier`); + +INSERT IGNORE INTO `PREFIX_tax_lang` (`id_tax`, `id_lang`, `name`) + (SELECT `id_tax`, id_lang, (SELECT tl.`name` + FROM `PREFIX_tax_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_tax`=`PREFIX_tax`.`id_tax`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_tax`); + +/* products */ +INSERT IGNORE INTO `PREFIX_product_lang` (`id_product`, `id_lang`, `description`, `description_short`, `link_rewrite`, `meta_description`, `meta_keywords`, `meta_title`, `name`, `availability`) + (SELECT `id_product`, id_lang, + (SELECT tl.`description` + FROM `PREFIX_product_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_product`=`PREFIX_product`.`id_product`), + (SELECT tl.`description_short` + FROM `PREFIX_product_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_product`=`PREFIX_product`.`id_product`), + (SELECT tl.`link_rewrite` + FROM `PREFIX_product_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_product`=`PREFIX_product`.`id_product`), + (SELECT tl.`meta_description` + FROM `PREFIX_product_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_product`=`PREFIX_product`.`id_product`), + (SELECT tl.`meta_keywords` + FROM `PREFIX_product_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_product`=`PREFIX_product`.`id_product`), + (SELECT tl.`meta_title` + FROM `PREFIX_product_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_product`=`PREFIX_product`.`id_product`), + (SELECT tl.`name` + FROM `PREFIX_product_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_product`=`PREFIX_product`.`id_product`), + (SELECT tl.`availability` + FROM `PREFIX_product_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_product`=`PREFIX_product`.`id_product`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_product`); + +/* categories */ +INSERT IGNORE INTO `PREFIX_category_lang` (`id_category`, `id_lang`, `description`, `link_rewrite`, `meta_description`, `meta_keywords`, `meta_title`, `name`) + (SELECT `id_category`, id_lang, + (SELECT tl.`description` + FROM `PREFIX_category_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_category`=`PREFIX_category`.`id_category`), + (SELECT tl.`link_rewrite` + FROM `PREFIX_category_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_category`=`PREFIX_category`.`id_category`), + (SELECT tl.`meta_description` + FROM `PREFIX_category_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_category`=`PREFIX_category`.`id_category`), + (SELECT tl.`meta_keywords` + FROM `PREFIX_category_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_category`=`PREFIX_category`.`id_category`), + (SELECT tl.`meta_title` + FROM `PREFIX_category_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_category`=`PREFIX_category`.`id_category`), + (SELECT tl.`name` + FROM `PREFIX_category_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_category`=`PREFIX_category`.`id_category`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_category`); + + + +/* NEW TABS */ + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminOrders' LIMIT 1) AS tmp), 'AdminReturn', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminOrders' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminReturn' LIMIT 1), + 'Merchandise returns (RMAs)' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Retours produit' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminReturn') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminReturn' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminOrders' LIMIT 1) AS tmp), 'AdminSlip', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminOrders' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminSlip' LIMIT 1), + 'Credit slips' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Avoirs' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminSlip') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminSlip' LIMIT 1), 1, 1, 1, 1); + + +/* CONFIGURATION VARIABLE */ +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_ORDER_RETURN', '0', NOW(), NOW()); +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_ORDER_RETURN_NB_DAYS', '7', NOW(), NOW()); +UPDATE PREFIX_configuration SET name = 'PS_SSL_ENABLED' WHERE name = 'PS_FO_PROTOCOL'; +UPDATE PREFIX_configuration SET name = 'PS_SSL_ENABLED', value = 0 WHERE name = 'PS_SSL_ENABLED' AND value = 'http://'; +UPDATE PREFIX_configuration SET name = 'PS_SSL_ENABLED', value = 1 WHERE name = 'PS_SSL_ENABLED' AND value = 'https://'; + diff --git a/install-new/upgrade/sql/1.0.0.4.sql b/install-new/upgrade/sql/1.0.0.4.sql new file mode 100644 index 000000000..1d5697ce5 --- /dev/null +++ b/install-new/upgrade/sql/1.0.0.4.sql @@ -0,0 +1,88 @@ +/* STRUCTURE */ +SET NAMES 'utf8'; + +ALTER TABLE PREFIX_order_detail + ADD product_ean13 VARCHAR(13) CHARACTER SET utf8 COLLATE utf8_general_ci NULL AFTER product_price; +ALTER TABLE PREFIX_order_detail + ADD product_quantity_return INT(10) UNSIGNED NOT NULL DEFAULT 0 AFTER product_quantity; + +ALTER TABLE PREFIX_state + ADD tax_behavior SMALLINT(1) NOT NULL DEFAULT 0 AFTER iso_code; + +ALTER TABLE PREFIX_product + ADD reduction_from DATE NOT NULL AFTER reduction_percent; +ALTER TABLE PREFIX_product + ADD reduction_to DATE NOT NULL AFTER reduction_from; + +ALTER TABLE PREFIX_range_weight + ADD id_carrier INTEGER UNSIGNED DEFAULT NULL AFTER id_range_weight; +ALTER TABLE PREFIX_range_weight + DROP INDEX range_weight_index, + ADD UNIQUE range_weight_unique (delimiter1, delimiter2, id_carrier); +ALTER TABLE PREFIX_range_price + ADD id_carrier INTEGER UNSIGNED DEFAULT NULL AFTER id_range_price; +ALTER TABLE PREFIX_range_price + DROP INDEX range_price_index, + ADD UNIQUE range_price_unique (delimiter1, delimiter2, id_carrier); + +/* CONTENTS */ +/* One request per insert, if one die, other can be inserted */ +INSERT INTO PREFIX_hook (`name`, `title`, `description`, `position`) VALUES ('adminCustomers', 'Display in Back-Office, tab AdminCustomers', 'Launch modules when the tab AdminCustomers is displayed on back-office.', 0); +INSERT INTO PREFIX_hook (`name`, `title`, `description`, `position`) VALUES ('createAccount', 'Successful customer create account', 'Called when new customer create account successfuled', 0); +INSERT INTO PREFIX_hook (`name`, `title`, `description`, `position`) VALUES ('customerAccount', 'Customer account page display in front office', 'Called when a customer access to his account.', 1); +INSERT INTO PREFIX_hook (`name`, `title`, `description`, `position`) VALUES ('orderSlip', 'Called when a order slip is created', 'Called when a quantity of one product change in an order.', 0); +INSERT INTO PREFIX_hook (`name`, `title`, `description`, `position`) VALUES ('productTab', 'Tabs on product page', 'Called on order product page tabs', 0); +INSERT INTO PREFIX_hook (`name`, `title`, `description`, `position`) VALUES ('productTabContent', 'Content of tabs on product page', 'Called on order product page tabs', 0); +INSERT INTO PREFIX_hook (`name`, `title`, `description`, `position`) VALUES ('shoppingCart', 'Shopping cart footer', 'Display some specific informations on the shopping cart page', 0); + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_MAIL_TYPE', '3', NOW(), NOW()); + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_TOKEN_ENABLE', '0', NOW(), NOW()); + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_GIFT_WRAPPING_PRICE', '0', NOW(), NOW()); + +/* NEW RANGES */ + +INSERT IGNORE INTO PREFIX_range_price ( id_carrier, delimiter1, delimiter2 ) + (SELECT c.id_carrier, rp.delimiter1, rp.delimiter2 + FROM PREFIX_range_price rp + CROSS JOIN PREFIX_carrier c + WHERE c.deleted = 0 + AND c.active = 1 + ); + +UPDATE `PREFIX_delivery` d SET d.`id_range_price` = ( + SELECT rw.`id_range_price` FROM `PREFIX_range_price` rw WHERE + rw.`id_carrier` = d.`id_carrier` AND + rw.`delimiter1` = ( + SELECT `delimiter1` FROM `PREFIX_range_price` rw2 WHERE rw2.`id_range_price` = d.`id_range_price` LIMIT 1 + ) AND + rw.`delimiter2` = ( + SELECT `delimiter2` FROM `PREFIX_range_price` rw3 WHERE rw3.`id_range_price` = d.`id_range_price` LIMIT 1 + ) +); + +INSERT IGNORE INTO PREFIX_range_weight ( id_carrier, delimiter1, delimiter2 ) + (SELECT c.id_carrier, rp.delimiter1, rp.delimiter2 + FROM PREFIX_range_weight rp + CROSS JOIN PREFIX_carrier c + WHERE c.deleted = 0 + AND c.active = 1 + ); + +UPDATE `PREFIX_delivery` d SET d.`id_range_weight` = ( + SELECT rw.`id_range_weight` FROM `PREFIX_range_weight` rw WHERE + rw.`id_carrier` = d.`id_carrier` AND + rw.`delimiter1` = ( + SELECT `delimiter1` FROM `PREFIX_range_weight` rw2 WHERE rw2.`id_range_weight` = d.`id_range_weight` LIMIT 1 + ) AND + rw.`delimiter2` = ( + SELECT `delimiter2` FROM `PREFIX_range_weight` rw3 WHERE rw3.`id_range_weight` = d.`id_range_weight` LIMIT 1 + ) +); + +DELETE FROM PREFIX_range_price WHERE id_carrier IS NULL; +DELETE FROM PREFIX_range_weight WHERE id_carrier IS NULL; + +/* CONFIGURATION VARIABLE */ + diff --git a/install-new/upgrade/sql/1.0.0.5.sql b/install-new/upgrade/sql/1.0.0.5.sql new file mode 100644 index 000000000..de1edb4bd --- /dev/null +++ b/install-new/upgrade/sql/1.0.0.5.sql @@ -0,0 +1,35 @@ +/* STRUCTURE */ +SET NAMES 'utf8'; + +ALTER TABLE PREFIX_orders + ADD total_wrapping DECIMAL(10,2) NOT NULL DEFAULT 0 AFTER total_shipping; + +ALTER TABLE PREFIX_carrier + ADD range_behavior TINYINT(1) UNSIGNED NOT NULL DEFAULT 0 AFTER shipping_handling; + +ALTER TABLE PREFIX_order_detail + ADD product_supplier_reference VARCHAR(32) NULL AFTER product_reference; + +ALTER TABLE PREFIX_product + ADD supplier_reference VARCHAR(32) NULL AFTER reference; + +ALTER TABLE PREFIX_product_attribute + ADD supplier_reference VARCHAR(32) NULL AFTER reference; + +ALTER TABLE PREFIX_customer + ADD UNIQUE customer_email(email(128)); + +ALTER TABLE PREFIX_product_download + ADD active TINYINT(1) UNSIGNED NOT NULL DEFAULT 1 AFTER nb_downloadable; + + +/* CONTENTS */ +INSERT INTO PREFIX_hook (`name`, `title`, `description`, `position`) VALUES ('createAccountForm', 'Customer account creation form', 'Display some information on the form to create a customer account', 1); + +INSERT INTO PREFIX_lang (`name`, `active`, `iso_code`) VALUES +('Română (Romanian)', 0, 'ro'), +('Νεοελληνική (Greek)', 0, 'gr'), +('Slovenčina (Slovak)', 0, 'sk'); + +/* CONFIGURATION VARIABLE */ + diff --git a/install-new/upgrade/sql/1.0.0.6.sql b/install-new/upgrade/sql/1.0.0.6.sql new file mode 100644 index 000000000..b2eb0806c --- /dev/null +++ b/install-new/upgrade/sql/1.0.0.6.sql @@ -0,0 +1,11 @@ +/* STRUCTURE */ +SET NAMES 'utf8'; + +ALTER TABLE PREFIX_order_detail + CHANGE product_price product_price DECIMAL(13, 6) NOT NULL DEFAULT '0.000000'; + + +/* CONTENTS */ + +/* CONFIGURATION VARIABLE */ + diff --git a/install-new/upgrade/sql/1.0.0.7.sql b/install-new/upgrade/sql/1.0.0.7.sql new file mode 100644 index 000000000..d7b148ca6 --- /dev/null +++ b/install-new/upgrade/sql/1.0.0.7.sql @@ -0,0 +1,21 @@ +/* PHP */ +/* PHP:AttributeGroup::cleanDeadCombinations(); */; + +/* STRUCTURE */ +SET NAMES 'utf8'; + +ALTER TABLE PREFIX_order_detail + ADD product_quantity_discount DECIMAL(13,6) NOT NULL DEFAULT 0 AFTER product_price; +ALTER TABLE PREFIX_country + ADD deleted TINYINT(1) NOT NULL DEFAULT 0; + + +/* CONTENTS */ + +INSERT INTO PREFIX_lang (`name`, `active`, `iso_code`) VALUES +('Norsk (Norwegian)', 0, 'no'), +('ภาษาไทย (Thai)', 0, 'th'), +('Dansk (Danish)', 0, 'dk'); + +/* CONFIGURATION VARIABLE */ + diff --git a/install-new/upgrade/sql/1.0.0.8.sql b/install-new/upgrade/sql/1.0.0.8.sql new file mode 100644 index 000000000..254c4f0dc --- /dev/null +++ b/install-new/upgrade/sql/1.0.0.8.sql @@ -0,0 +1,17 @@ +/* PHP */ +/* PHP:AttributeGroup::cleanDeadCombinations(); */; + +/* STRUCTURE */ +SET NAMES 'utf8'; + +/* CONTENTS */ + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PS_DISP_UNAVAILABLE_ATTR', '1', NOW(), NOW()); + +INSERT INTO PREFIX_lang (`name`, `active`, `iso_code`) VALUES +('Svenska (Swedish)', 0, 'se'), +('עברית (Hebrew)', 0, 'he'); + +/* CONFIGURATION VARIABLE */ + diff --git a/install-new/upgrade/sql/1.1.0.1.sql b/install-new/upgrade/sql/1.1.0.1.sql new file mode 100644 index 000000000..c00a3176e --- /dev/null +++ b/install-new/upgrade/sql/1.1.0.1.sql @@ -0,0 +1,629 @@ +/* PHP */ +/* PHP:AttributeGroup::cleanDeadCombinations(); */; +/* PHP:configuration_double_cleaner(); */; + +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ +DROP TABLE IF EXISTS PREFIX_gender; +DROP TABLE IF EXISTS PREFIX_search; +ALTER TABLE PREFIX_category_lang + ADD INDEX category_name (name); +ALTER TABLE PREFIX_order_detail + MODIFY COLUMN product_name VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL; +ALTER TABLE PREFIX_order_detail + ADD deleted TINYINT(3) UNSIGNED NOT NULL DEFAULT 0; +ALTER TABLE PREFIX_configuration + MODIFY COLUMN name VARCHAR(32) NOT NULL UNIQUE; +ALTER TABLE PREFIX_orders + ADD invoice_number INTEGER(10) UNSIGNED NOT NULL DEFAULT 0 AFTER total_wrapping; +ALTER TABLE PREFIX_orders + ADD delivery_number INTEGER(10) UNSIGNED NOT NULL DEFAULT 0 AFTER invoice_number; +ALTER TABLE PREFIX_orders + ADD invoice_date DATETIME NOT NULL AFTER delivery_number; +ALTER TABLE PREFIX_orders + ADD delivery_date DATETIME NOT NULL AFTER invoice_date; +ALTER TABLE PREFIX_order_detail + CHANGE product_price product_price DECIMAL(13, 6) NOT NULL DEFAULT 0.000000; +ALTER TABLE PREFIX_order_slip + ADD shipping_cost TINYINT UNSIGNED NOT NULL DEFAULT 0 AFTER id_order; +ALTER TABLE PREFIX_order_state + ADD delivery TINYINT(1) UNSIGNED NOT NULL DEFAULT 0 AFTER logable; +ALTER TABLE PREFIX_country + DROP deleted; +ALTER TABLE PREFIX_product + ADD customizable BOOL NOT NULL DEFAULT 0 AFTER quantity_discount; +ALTER TABLE PREFIX_product + ADD uploadable_files TINYINT NOT NULL DEFAULT 0 AFTER customizable; +ALTER TABLE PREFIX_product + ADD text_fields TINYINT NOT NULL DEFAULT 0 AFTER uploadable_files; +ALTER TABLE PREFIX_product_lang + CHANGE availability available_now VARCHAR(255) NULL; +ALTER TABLE PREFIX_product_lang + ADD available_later VARCHAR(255) NULL AFTER available_now; +ALTER TABLE PREFIX_access + DROP id_access; +ALTER TABLE PREFIX_access + DROP INDEX access_profile; +ALTER TABLE PREFIX_access + DROP INDEX access_tab; +ALTER TABLE PREFIX_access + ADD PRIMARY KEY(id_profile, id_tab); +ALTER TABLE PREFIX_currency + ADD blank TINYINT(1) UNSIGNED NOT NULL DEFAULT 0 AFTER sign; +ALTER TABLE PREFIX_currency + ADD decimals TINYINT(1) UNSIGNED NOT NULL DEFAULT 1 AFTER format; +ALTER TABLE PREFIX_product_attribute + ADD wholesale_price decimal(13,6) NOT NULL DEFAULT 0.000000 AFTER ean13; +ALTER TABLE PREFIX_employee + ADD last_passwd_gen TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP AFTER passwd; +ALTER TABLE PREFIX_customer + ADD last_passwd_gen TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP AFTER passwd; +ALTER TABLE PREFIX_customer + ADD ip_registration_newsletter VARCHAR(15) NULL DEFAULT NULL AFTER newsletter; +ALTER TABLE PREFIX_image_type + ADD scenes TINYINT(1) NOT NULL DEFAULT 1; +ALTER TABLE PREFIX_image_lang + CHANGE legend legend VARCHAR(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; + +/* CMS */ +CREATE TABLE PREFIX_cms ( + id_cms INTEGER UNSIGNED NOT NULL auto_increment, + PRIMARY KEY (id_cms) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_cms_lang ( + id_cms INTEGER UNSIGNED NOT NULL auto_increment, + id_lang INTEGER UNSIGNED NOT NULL, + meta_title VARCHAR(128) NOT NULL, + meta_description VARCHAR(255) DEFAULT NULL, + meta_keywords VARCHAR(255) DEFAULT NULL, + content longtext NULL, + link_rewrite VARCHAR(128) NOT NULL, + PRIMARY KEY (id_cms, id_lang) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_block_cms ( + id_block INTEGER(10) NOT NULL, + id_cms INTEGER(10) NOT NULL +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +/* PAYMENT MODULE RESTRICTIONS */ +CREATE TABLE `PREFIX_module_country` ( + `id_module` INTEGER UNSIGNED NOT NULL, + `id_country` INTEGER UNSIGNED NOT NULL, + PRIMARY KEY (`id_module`, `id_country`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_module_currency` ( + `id_module` INTEGER UNSIGNED NOT NULL, + `id_currency` INTEGER NOT NULL, + PRIMARY KEY (`id_module`, `id_currency`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +/* ORDER-MESSAGE */ +CREATE TABLE PREFIX_order_message +( + id_order_message int(10) unsigned NOT NULL auto_increment, + date_add datetime NOT NULL, + PRIMARY KEY (id_order_message) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_order_message_lang +( + id_order_message int(10) unsigned NOT NULL, + id_lang int(10) unsigned NOT NULL, + name varchar(128) NOT NULL, + message text NOT NULL, + PRIMARY KEY (id_order_message,id_lang) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +/* SUB-DOMAINS */ +CREATE TABLE PREFIX_subdomain ( + id_subdomain INTEGER(10) NOT NULL AUTO_INCREMENT, + name VARCHAR(16) NOT NULL, + PRIMARY KEY(id_subdomain) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +/* META-CLASS */ +CREATE TABLE PREFIX_meta ( + id_meta INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, + page VARCHAR(64) NOT NULL, + PRIMARY KEY(id_meta), + KEY `meta_name` (`page`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_meta_lang ( + id_meta INTEGER UNSIGNED NOT NULL, + id_lang INTEGER UNSIGNED NOT NULL, + title VARCHAR(255) NULL, + description VARCHAR(255) NULL, + keywords VARCHAR(255) NULL, + PRIMARY KEY (id_meta, id_lang) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_discount_category ( + id_discount INTEGER(11) NOT NULL, + id_category INTEGER(11) NOT NULL +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +/* Customized products */ +CREATE TABLE PREFIX_customization ( + id_customization int(10) NOT NULL AUTO_INCREMENT, + id_product_attribute int(10) NOT NULL DEFAULT 0, + id_cart int(10) NOT NULL, + id_product int(10) NOT NULL, + PRIMARY KEY(id_customization, id_cart, id_product) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_customized_data ( + id_customization int(10) NOT NULL, + `type` tinyint(1) NOT NULL, + `index` int(3) NOT NULL, + `value` varchar(255) NOT NULL, + PRIMARY KEY(id_customization, `type`, `index`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_customization_field ( + id_customization_field int(10) NOT NULL AUTO_INCREMENT, + id_product int(10) NOT NULL, + type tinyint(1) NOT NULL, + required tinyint(1) NOT NULL, + PRIMARY KEY(id_customization_field) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_customization_field_lang ( + id_customization_field int(10) NOT NULL, + id_lang int(10) NOT NULL, + name varchar(255) NOT NULL, + PRIMARY KEY(id_customization_field, id_lang) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +/* Product location */ +ALTER TABLE `PREFIX_product_attribute` ADD `location` VARCHAR(64) NULL AFTER `supplier_reference`; +ALTER TABLE `PREFIX_product` ADD `location` VARCHAR(64) NULL AFTER `supplier_reference`; + +/* Paypal default e-mail fix */ +UPDATE `PREFIX_configuration` SET value = 'paypal@prestashop.com' WHERE name = 'PAYPAL_BUSINESS' AND value = 'your-address@paypal.com'; + +/* ##################################### */ +/* CONTENTS */ +/* ##################################### */ +INSERT INTO PREFIX_subdomain (id_subdomain, name) VALUES (NULL, 'www'); +UPDATE PREFIX_currency SET blank = 1 WHERE iso_code = 'EUR'; +UPDATE PREFIX_order_state SET delivery = 1 WHERE id_order_state = 3; +UPDATE PREFIX_order_state SET delivery = 1 WHERE id_order_state = 4; +UPDATE PREFIX_order_state SET delivery = 1 WHERE id_order_state = 5; + +/* IMAGE MAPPING */ +UPDATE PREFIX_image_type SET scenes = 0; +INSERT INTO `PREFIX_image_type` (`name` ,`width` ,`height` ,`products` ,`categories` ,`manufacturers` ,`suppliers` ,`scenes`) VALUES ('large_scene', '556', '200', '0', '0', '0', '0', '1'); +INSERT INTO `PREFIX_image_type` (`name` ,`width` ,`height` ,`products` ,`categories` ,`manufacturers` ,`suppliers` ,`scenes`) VALUES ('thumb_scene', '161', '58', '0', '0', '0', '0', '1'); + +/* CONFIGURATION VARIABLE */ +INSERT INTO PREFIX_configuration (name, value, date_add, date_upd) VALUES ('PS_INVOICE', '1', NOW(), NOW()); +INSERT INTO PREFIX_configuration (name, value, date_add, date_upd) VALUES ('PS_INVOICE_PREFIX', 'IN', NOW(), NOW()); +INSERT INTO PREFIX_configuration (name, value, date_add, date_upd) VALUES ('PS_DELIVERY_PREFIX', 'DE', NOW(), NOW()); +INSERT INTO PREFIX_configuration (name, value, date_add, date_upd) VALUES ('PS_PRODUCT_PICTURE_MAX_SIZE', '131072', NOW(), NOW()); +INSERT INTO PREFIX_configuration (name, value, date_add, date_upd) VALUES ('PS_PRODUCT_PICTURE_WIDTH', '64', NOW(), NOW()); +INSERT INTO PREFIX_configuration (name, value, date_add, date_upd) VALUES ('PS_PRODUCT_PICTURE_HEIGHT', '64', NOW(), NOW()); +INSERT INTO PREFIX_configuration (name, value, date_add, date_upd) VALUES ('PS_PASSWD_TIME_BACK', '360', NOW(), NOW()); +INSERT INTO PREFIX_configuration (name, value, date_add, date_upd) VALUES ('PS_PASSWD_TIME_FRONT', '360', NOW(), NOW()); + +INSERT INTO `PREFIX_configuration_lang` (`id_configuration`, `id_lang`, `value`, `date_upd`) VALUES ((SELECT id_configuration FROM PREFIX_configuration c WHERE c.name = 'PS_INVOICE_PREFIX' LIMIT 1), 1, 'IN', NOW()); +INSERT INTO `PREFIX_configuration_lang` (`id_configuration`, `id_lang`, `value`, `date_upd`) VALUES ((SELECT id_configuration FROM PREFIX_configuration c WHERE c.name = 'PS_INVOICE_PREFIX' LIMIT 1), 2, 'FA', NOW()); +INSERT INTO `PREFIX_configuration_lang` (`id_configuration`, `id_lang`, `value`, `date_upd`) VALUES ((SELECT id_configuration FROM PREFIX_configuration c WHERE c.name = 'PS_DELIVERY_PREFIX' LIMIT 1), 1, 'DE', NOW()); +INSERT INTO `PREFIX_configuration_lang` (`id_configuration`, `id_lang`, `value`, `date_upd`) VALUES ((SELECT id_configuration FROM PREFIX_configuration c WHERE c.name = 'PS_DELIVERY_PREFIX' LIMIT 1), 2, 'LI', NOW()); + +/* HOOKS/MODULES */ +UPDATE PREFIX_hook SET description = 'This hook is called when a product is deleted' WHERE name = 'deleteProduct' LIMIT 1; +UPDATE PREFIX_hook SET name = 'extraLeft', title = 'Extra actions on the product page (left column).' WHERE name = 'extra' LIMIT 1; +INSERT INTO PREFIX_hook (name, title, position, description) VALUES ('orderReturn', 'Product returned', 0, 'When an order return is made'); +INSERT INTO PREFIX_hook (name, title, position, description) VALUES ('postUpdateOrderStatus', 'Post Order\'s status update event', 0, 'Launch modules when the order\'s status was changed (enables automated workflow).'); +INSERT INTO PREFIX_hook (name, title, position, description) VALUES ('productActions', 'Product actions', 1, 'Put new action buttons on product page'); +INSERT INTO PREFIX_hook (name, title, position, description) VALUES ('cancelProduct', 'Product cancelled', 0, 'This hook is called when you cancel a product in an order'); +INSERT INTO PREFIX_hook (name, title, position) VALUES ('backOfficeHome', 'Administration panel homepage', 1); +INSERT INTO PREFIX_hook (name, title, position, description) VALUES ('extraRight', 'Extra actions on the product page (right column).', 0, NULL); +UPDATE PREFIX_hook SET position = 1 WHERE name = 'top'; +UPDATE PREFIX_hook SET position = 0 WHERE name = 'header'; + +/* ORDER MESSAGES */ +INSERT INTO `PREFIX_order_message` (`id_order_message`, `date_add`) VALUES (1, NOW()); +INSERT INTO `PREFIX_order_message_lang` (`id_order_message`, `id_lang`, `name`, `message`) VALUES +(1, 1, 'Delay', 'Hi, + +Unfortunately, an item on your order is currently out of stock. This may cause a slight delay in delivery. +Please accept our apologies and rest assured that we are working hard to rectify this. + +Best regards, +'); +INSERT INTO `PREFIX_order_message_lang` (`id_order_message`, `id_lang`, `name`, `message`) VALUES +(1, 2, 'Délai', 'Bonjour, + +Un des éléments de votre commande est actuellement en réapprovisionnement, ce qui peut légèrement retarder son envoi. + +Merci de votre compréhension. + +Cordialement, +'); + +/* META */ +INSERT INTO `PREFIX_meta` (`id_meta`, `page`) VALUES +(1, '404'), +(2, 'best-sales'), +(3, 'contact-form'), +(4, 'index'), +(5, 'manufacturer'), +(6, 'new-products'), +(7, 'password'), +(8, 'prices-drop'), +(9, 'sitemap'), +(10, 'supplier'); + +INSERT INTO `PREFIX_meta_lang` (`id_meta`, `id_lang`, `title`, `description`, `keywords`) VALUES +(1, 1, '404 error', 'This page cannot be found', 'error, 404, not found'), +(1, 2, 'Erreur 404', 'Cette page est introuvable', 'erreur, 404, introuvable'), +(2, 1, 'Best sales', 'Our best sales', 'best sales'), +(2, 2, 'Meilleurs ventes', 'Liste de nos produits les mieux vendus', 'meilleurs ventes'), +(3, 1, 'Contact us', 'Use our form to contact us', 'contact, form, e-mail'), +(3, 2, 'Contactez-nous', 'Utilisez notre formulaire pour nous contacter', 'contact, formulaire, e-mail'), +(4, 1, '', 'Shop powered by PrestaShop', 'shop, prestashop'), +(4, 2, '', 'Boutique propulsé par PrestaShop', 'boutique, prestashop'), +(5, 1, 'Manufacturers', 'Manufacturers list', 'manufacturer'), +(5, 2, 'Fabricants', 'Liste de nos fabricants', 'fabricants'), +(6, 1, 'New products', 'Our new products', 'new, products'), +(6, 2, 'Nouveaux produits', 'Liste de nos nouveaux produits', 'nouveau, produit'), +(7, 1, 'Forgot your password', 'Enter your e-mail address used to register in goal to get e-mail with your new password', 'forgot, password, e-mail, new, reset'), +(7, 2, 'Mot de passe oublié', 'Renseignez votre adresse e-mail afin de recevoir votre nouveau mot de passe.', 'mot de passe, oublié, e-mail, nouveau, regénération'), +(8, 1, 'Specials', 'Our special products', 'special, prices drop'), +(8, 2, 'Promotions', 'Nos produits en promotion', 'promotion, réduction'), +(9, 1, 'Sitemap', 'Lost ? Find what your are looking for', 'sitemap'), +(9, 2, 'Plan du site', 'Perdu ? Trouvez ce que vous cherchez', 'plan, site'), +(10, 1, 'Suppliers', 'Suppliers list', 'supplier'), +(10, 2, 'Fournisseurs', 'Liste de nos fournisseurs', 'fournisseurs'); + +/* CMS */ +INSERT INTO `PREFIX_cms` VALUES (1),(2),(3),(4),(5); +INSERT INTO `PREFIX_cms_lang` (`id_cms`, `id_lang`, `meta_title`, `meta_description`, `meta_keywords`, `content`, `link_rewrite`) VALUES +(1, 1, 'Delivery', 'Our terms and conditions of delivery', 'conditions, delivery, delay, shipment, pack', '

    Shipments and returns

    Your pack shipment

    Packages are generally dispatched within 2 days after receipt of payment and are shipped via Colissimo with tracking and drop-off without signature. If you prefer delivery by Colissimo Extra with required signature, an additional cost will be applied, so please contact us before choosing this method. Whichever shipment choice you make, we will provide you with a link to track your package online.

    Shipping fees include handling and packing fees as well as postage costs. Handling fees are fixed, whereas transport fees vary according to total weight of the shipment. We advise you to group your items in one order. We cannot group two distinct orders placed separately, and shipping fees will apply to each of them. Your package will be dispatched at your own risk, but special care is taken to protect fragile objects.

    Boxes are amply sized and your items are well-protected.

    ', 'delivery'); +INSERT INTO `PREFIX_cms_lang` (`id_cms`, `id_lang`, `meta_title`, `meta_description`, `meta_keywords`, `content`, `link_rewrite`) VALUES +(1, 2, 'Livraison', 'Nos conditions générales de livraison', 'conditions, livraison, délais, transport, colis', '

    Livraisons et retours

    Le transport de votre colis

    Les colis sont généralement expédiés en 48h après réception de votre paiement. Le mode d''expédidition standard est le Colissimo suivi, remis sans signature. Si vous souhaitez une remise avec signature, un coût supplémentaire s''applique, merci de nous contacter. Quel que soit le mode d''expédition choisi, nous vous fournirons dès que possible un lien qui vous permettra de suivre en ligne la livraison de votre colis.

    Les frais d''expédition comprennent l''emballage, la manutention et les frais postaux. Ils peuvent contenir une partie fixe et une partie variable en fonction du prix ou du poids de votre commande. Nous vous conseillons de regrouper vos achats en une unique commande. Nous ne pouvons pas grouper deux commandes distinctes et vous devrez vous acquitter des frais de port pour chacune d''entre elles. Votre colis est expédié à vos propres risques, un soin particulier est apporté au colis contenant des produits fragiles..

    Les colis sont surdimensionnés et protégés.

    ', 'livraison'); +INSERT INTO `PREFIX_cms_lang` (`id_cms`, `id_lang`, `meta_title`, `meta_description`, `meta_keywords`, `content`, `link_rewrite`) VALUES +(2, 1, 'Legal Notice', 'Legal notice', 'notice, legal, credits', '

    Legal

    Credits

    Concept and production:

    This Web site was created using PrestaShop™ open-source software.

    ', 'legal-notice'); +INSERT INTO `PREFIX_cms_lang` (`id_cms`, `id_lang`, `meta_title`, `meta_description`, `meta_keywords`, `content`, `link_rewrite`) VALUES +(2, 2, 'Mentions légales', 'Mentions légales', 'mentions, légales, crédits', '

    Mentions légales

    Crédits

    Concept et production :

    Ce site internet a été réalisé en utilisant la solution open-source PrestaShop™ .

    ', 'mentions-legales'); +INSERT INTO `PREFIX_cms_lang` (`id_cms`, `id_lang`, `meta_title`, `meta_description`, `meta_keywords`, `content`, `link_rewrite`) VALUES +(3, 1, 'Terms and conditions of use', 'Our terms and conditions of use', 'conditions, terms, use, sell', '

    Your terms and conditions of use

    Rule 1

    Here is the rule 1 content

    \r\n

    Rule 2

    Here is the rule 2 content

    \r\n

    Rule 3

    Here is the rule 3 content

    ', 'terms-and-conditions-of-use'); +INSERT INTO `PREFIX_cms_lang` (`id_cms`, `id_lang`, `meta_title`, `meta_description`, `meta_keywords`, `content`, `link_rewrite`) VALUES +(3, 2, 'Conditions d''utilisation', 'Nos conditions générales de ventes', 'conditions, utilisation, générales, ventes', '

    Vos conditions de ventes

    Règle n°1

    Contenu de la règle numéro 1

    \r\n

    Règle n°2

    Contenu de la règle numéro 2

    \r\n

    Règle n°3

    Contenu de la règle numéro 3

    ', 'conditions-generales-de-ventes'); +INSERT INTO `PREFIX_cms_lang` (`id_cms`, `id_lang`, `meta_title`, `meta_description`, `meta_keywords`, `content`, `link_rewrite`) VALUES +(4, 1, 'About us', 'Learn more about us', 'about us, informations', '

    About us

    \r\n

    Our company

    Our company

    \r\n

    Our team

    Our team

    \r\n

    Informations

    Informations

    ', 'about-us'); +INSERT INTO `PREFIX_cms_lang` (`id_cms`, `id_lang`, `meta_title`, `meta_description`, `meta_keywords`, `content`, `link_rewrite`) VALUES +(4, 2, 'A propos', 'Apprenez-en d''avantage sur nous', 'à propos, informations', '

    A propos

    \r\n

    Notre entreprise

    Notre entreprise

    \r\n

    Notre équipe

    Notre équipe

    \r\n

    Informations

    Informations

    ', 'a-propos'); +INSERT INTO `PREFIX_cms_lang` (`id_cms`, `id_lang`, `meta_title`, `meta_description`, `meta_keywords`, `content`, `link_rewrite`) VALUES +(5, 1, 'Secure payment', 'Our secure payment mean', 'secure payment, ssl, visa, mastercard, paypal', '

    Secure payment

    \r\n

    Our secure payment

    With SSL

    \r\n

    Using Visa/Mastercard/Paypal

    About this services

    ', 'secure-payment'); +INSERT INTO `PREFIX_cms_lang` (`id_cms`, `id_lang`, `meta_title`, `meta_description`, `meta_keywords`, `content`, `link_rewrite`) VALUES +(5, 2, 'Paiement sécurisé', 'Notre offre de paiement sécurisé', 'paiement sécurisé, ssl, visa, mastercard, paypal', '

    Paiement sécurisé

    \r\n

    Notre offre de paiement sécurisé

    Avec SSL

    \r\n

    Utilisation de Visa/Mastercard/Paypal

    A propos de ces services

    ', 'paiement-securise'); + +INSERT INTO PREFIX_block_cms (`id_block`, `id_cms`) VALUES (IFNULL((SELECT id_module FROM PREFIX_module m WHERE m.name = 'blockvariouslinks' LIMIT 1), 0), 3); +INSERT INTO PREFIX_block_cms (`id_block`, `id_cms`) VALUES (IFNULL((SELECT id_module FROM PREFIX_module m WHERE m.name = 'blockvariouslinks' LIMIT 1), 0), 4); +INSERT INTO PREFIX_block_cms (`id_block`, `id_cms`) VALUES (IFNULL((SELECT id_module FROM PREFIX_module m WHERE m.name = 'blockinfos' LIMIT 1), 0), 1); +INSERT INTO PREFIX_block_cms (`id_block`, `id_cms`) VALUES (IFNULL((SELECT id_module FROM PREFIX_module m WHERE m.name = 'blockinfos' LIMIT 1), 0), 2); +INSERT INTO PREFIX_block_cms (`id_block`, `id_cms`) VALUES (IFNULL((SELECT id_module FROM PREFIX_module m WHERE m.name = 'blockinfos' LIMIT 1), 0), 3); +INSERT INTO PREFIX_block_cms (`id_block`, `id_cms`) VALUES (IFNULL((SELECT id_module FROM PREFIX_module m WHERE m.name = 'blockinfos' LIMIT 1), 0), 4); +DELETE FROM PREFIX_block_cms WHERE id_block = 0; + +/* NEW TABS */ +UPDATE PREFIX_tab_lang + SET name = 'Vouchers' + WHERE id_lang = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'en' LIMIT 1) + AND id_tab = (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminDiscounts' LIMIT 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminTools' LIMIT 1) AS tmp), 'AdminCMS', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminTools' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminCMS' LIMIT 1), + 'CMS' FROM PREFIX_lang); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminCMS' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminTools' LIMIT 1) AS tmp), 'AdminSubDomains', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminTools' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminSubDomains' LIMIT 1), + 'Subdomains' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Sous domaines' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminSubDomains') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminSubDomains' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminOrders' LIMIT 1) AS tmp), 'AdminOrderMessage', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminOrders' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminOrderMessage' LIMIT 1), + 'Order messages' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Messages prédéfinis' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminOrderMessage') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminOrderMessage' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminOrders' LIMIT 1) AS tmp), 'AdminDeliverySlip', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminOrders' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminDeliverySlip' LIMIT 1), + 'Delivery slips' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Bons de livraison' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminDeliverySlip') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminDeliverySlip' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminTools' LIMIT 1) AS tmp), 'AdminBackup', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminTools' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminBackup' LIMIT 1), + 'Database backup' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Sauvegarde BDD' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminBackup') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminBackup' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminPreferences' LIMIT 1) AS tmp), 'AdminMeta', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminPreferences' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminMeta' LIMIT 1), + 'Meta-tags' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Méta-Tags' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminMeta') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminMeta' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminCatalog' LIMIT 1) AS tmp), 'AdminScenes', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminCatalog' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminScenes' LIMIT 1), + 'Image mapping' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Scènes' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminScenes') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminScenes' LIMIT 1), 1, 1, 1, 1); + +/* NEW TEAM TAB */ +UPDATE PREFIX_tab SET position = 10 WHERE class_name = 'AdminTools'; +UPDATE PREFIX_tab SET position = 9 WHERE class_name = 'AdminPreferences'; +UPDATE PREFIX_tab SET position = 8, id_parent = 0 WHERE class_name = 'AdminEmployees'; +UPDATE PREFIX_tab SET position = 1, id_parent = 29 WHERE class_name = 'AdminProfiles'; +UPDATE PREFIX_tab SET position = 2, id_parent = 29 WHERE class_name = 'AdminAccess'; +UPDATE PREFIX_tab SET position = 3, id_parent = 29 WHERE class_name = 'AdminContacts'; +UPDATE PREFIX_tab SET position = 1 WHERE class_name = 'AdminLanguages'; +UPDATE PREFIX_tab SET position = 2 WHERE class_name = 'AdminTranslations'; +UPDATE PREFIX_tab SET position = 3 WHERE class_name = 'AdminTabs'; +UPDATE PREFIX_tab SET position = 4 WHERE class_name = 'AdminQuickAccesses'; +UPDATE PREFIX_tab SET position = 5 WHERE class_name = 'AdminAliases'; +UPDATE PREFIX_tab SET position = 6 WHERE class_name = 'AdminImport'; +UPDATE PREFIX_tab SET position = 7 WHERE class_name = 'AdminSubDomains'; + +/* UPDATE ORDER TABS */ +UPDATE PREFIX_tab SET class_name = 'AdminInvoices' WHERE class_name = 'AdminPrintPDF'; +UPDATE PREFIX_tab SET position = 1 WHERE class_name = 'AdminInvoices'; +UPDATE PREFIX_tab SET position = 2 WHERE class_name = 'AdminReturn'; +UPDATE PREFIX_tab SET position = 3 WHERE class_name = 'AdminSlip'; +UPDATE PREFIX_tab SET position = 4 WHERE class_name = 'AdminOrdersStates'; +UPDATE PREFIX_tab_lang SET name = 'Invoices' WHERE name = 'PDF Invoice'; +UPDATE PREFIX_tab_lang SET name = 'Factures' WHERE name = 'Facture PDF'; + +/* ##################################### */ +/* STATS */ +/* ##################################### */ +CREATE TABLE PREFIX_web_browser ( + id_web_browser INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, + name VARCHAR(64) NULL, + PRIMARY KEY(id_web_browser) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_operating_system ( + id_operating_system INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, + name VARCHAR(64) NULL, + PRIMARY KEY(id_operating_system) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_page_type ( + id_page_type INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, + name VARCHAR(256) NOT NULL, + PRIMARY KEY(id_page_type) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_date_range ( + id_date_range INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, + time_start DATETIME NOT NULL, + time_end DATETIME NOT NULL, + PRIMARY KEY(id_date_range) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_page ( + id_page INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, + id_page_type INTEGER(10) UNSIGNED NOT NULL, + id_object VARCHAR(256) NULL, + PRIMARY KEY(id_page) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_page_viewed ( + id_page INTEGER(10) UNSIGNED NOT NULL, + id_date_range INTEGER UNSIGNED NOT NULL, + counter INTEGER UNSIGNED NOT NULL, + PRIMARY KEY(id_page, id_date_range) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_guest ( + id_guest INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, + id_operating_system INTEGER(10) UNSIGNED NULL DEFAULT NULL, + id_web_browser INTEGER(10) UNSIGNED NULL DEFAULT NULL, + id_customer INTEGER(10) UNSIGNED NULL DEFAULT NULL, + javascript BOOL NULL DEFAULT 0, + screen_resolution_x SMALLINT UNSIGNED NULL DEFAULT NULL, + screen_resolution_y SMALLINT UNSIGNED NULL DEFAULT NULL, + screen_color TINYINT UNSIGNED NULL DEFAULT NULL, + sun_java BOOL NULL DEFAULT NULL, + adobe_flash BOOL NULL DEFAULT NULL, + adobe_director BOOL NULL DEFAULT NULL, + apple_quicktime BOOL NULL DEFAULT NULL, + real_player BOOL NULL DEFAULT NULL, + windows_media BOOL NULL DEFAULT NULL, + accept_language VARCHAR(8) NULL DEFAULT NULL, + PRIMARY KEY(id_guest) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_scene` ( + `id_scene` int(10) NOT NULL auto_increment, + `active` tinyint(1) NOT NULL default '1', + PRIMARY KEY (`id_scene`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_scene_category` ( + `id_scene` int(10) NOT NULL, + `id_category` int(10) NOT NULL, + PRIMARY KEY (`id_scene`,`id_category`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_scene_lang` ( + `id_scene` int(10) NOT NULL, + `id_lang` int(10) NOT NULL, + `name` varchar(100) NOT NULL, + PRIMARY KEY (`id_scene`,`id_lang`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_scene_products` ( + `id_scene` int(10) NOT NULL, + `id_product` int(10) NOT NULL, + `x_axis` int(4) NOT NULL, + `y_axis` int(4) NOT NULL, + `zone_width` int(3) NOT NULL, + `zone_height` int(3) NOT NULL +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +INSERT INTO PREFIX_guest (id_customer) SELECT id_customer FROM PREFIX_customer; + +ALTER TABLE PREFIX_connections ADD id_guest INTEGER(10) UNSIGNED NULL AFTER id_connections; +ALTER TABLE PREFIX_connections ADD id_page INTEGER(10) UNSIGNED NOT NULL AFTER id_guest; +ALTER TABLE PREFIX_connections ADD http_referer VARCHAR(256) NULL; +ALTER TABLE PREFIX_connections CHANGE date date_add DATETIME NOT NULL; + +UPDATE PREFIX_connections, PREFIX_guest SET PREFIX_connections.id_guest=PREFIX_guest.id_guest WHERE PREFIX_connections.id_customer=PREFIX_guest.id_customer; +ALTER TABLE PREFIX_connections CHANGE id_guest id_guest INTEGER(10) UNSIGNED NOT NULL; +ALTER TABLE PREFIX_connections DROP id_customer; + +CREATE TABLE PREFIX_connections_page ( + id_connections INTEGER(10) UNSIGNED NOT NULL, + id_page INTEGER(10) UNSIGNED NOT NULL, + time_start DATETIME NOT NULL, + time_end DATETIME NULL, + PRIMARY KEY(id_connections, id_page, time_start) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +INSERT INTO `PREFIX_operating_system` (`name`) VALUES ('Windows XP'),('Windows Vista'),('MacOsX'),('Linux'); +INSERT INTO `PREFIX_web_browser` (`name`) VALUES ('Safari'),('Firefox 2.x'),('Firefox 3.x'),('Opera'),('IE 6.x'),('IE 7.x'),('IE 8.x'),('Google Chrome'); +INSERT INTO `PREFIX_page_type` (`name`) VALUES ('product.php'),('category.php'),('order.php'),('manufacturer.php'); + +INSERT INTO `PREFIX_hook` (`name`, `title`, `position`) VALUES +('AdminStatsModules', 'Stats - Modules', 1), +('GraphEngine', 'Graph Engines', 0), +('GridEngine', 'Grid Engines', 0); + +/* Temporary configuration variable used in the following query */ +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('TMP_ID_TAB_STATS', (SELECT `id_tab` FROM `PREFIX_tab` WHERE `class_name` = 'AdminStats'), NOW(), NOW()); +INSERT INTO `PREFIX_tab` (`id_parent`, `class_name`, `position`) VALUES + ((SELECT `value` FROM `PREFIX_configuration` WHERE `name` = 'TMP_ID_TAB_STATS'), 'AdminStatsModules', 1); +INSERT INTO `PREFIX_tab` (`id_parent`, `class_name`, `position`) VALUES + ((SELECT `value` FROM `PREFIX_configuration` WHERE `name` = 'TMP_ID_TAB_STATS'), 'AdminStatsConf', 2); +INSERT INTO `PREFIX_tab_lang` (`id_lang`, `id_tab`, `name`) VALUES + (1, (SELECT `id_tab` FROM `PREFIX_tab` WHERE `class_name` = 'AdminStatsModules'), 'Modules'); +INSERT INTO `PREFIX_tab_lang` (`id_lang`, `id_tab`, `name`) VALUES + (2, (SELECT `id_tab` FROM `PREFIX_tab` WHERE `class_name` = 'AdminStatsModules'), 'Modules'); +INSERT INTO `PREFIX_tab_lang` (`id_lang`, `id_tab`, `name`) VALUES + (1, (SELECT `id_tab` FROM `PREFIX_tab` WHERE `class_name` = 'AdminStatsConf'), 'Settings'); +INSERT INTO `PREFIX_tab_lang` (`id_lang`, `id_tab`, `name`) VALUES + (2, (SELECT `id_tab` FROM `PREFIX_tab` WHERE `class_name` = 'AdminStatsConf'), 'Configuration'); +INSERT INTO `PREFIX_access` (`id_profile`, `id_tab`, `view`, `add`, `edit`, `delete`) VALUES + (1, (SELECT `id_tab` FROM `PREFIX_tab` WHERE `class_name` = 'AdminStatsModules'), 1, 1, 1, 1); +INSERT INTO `PREFIX_access` (`id_profile`, `id_tab`, `view`, `add`, `edit`, `delete`) VALUES + (1, (SELECT `id_tab` FROM `PREFIX_tab` WHERE `class_name` = 'AdminStatsConf'), 1, 1, 1, 1); +DELETE FROM `PREFIX_configuration` WHERE `name` = 'TMP_ID_TAB_STATS'; + +/* ##################################### */ +/* DOUBLE LANGUAGE */ +/* ##################################### */ +INSERT IGNORE INTO `PREFIX_discount_type_lang` (`id_discount_type`, `id_lang`, `name`) + (SELECT `id_discount_type`, id_lang, (SELECT tl.`name` + FROM `PREFIX_discount_type_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_discount_type`=`PREFIX_discount_type`.`id_discount_type`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_discount_type`); + +INSERT IGNORE INTO `PREFIX_cms_lang` (`id_cms`, `id_lang`, `link_rewrite`, `meta_description`, `meta_keywords`, `meta_title`, `content`) + (SELECT `id_cms`, id_lang, + (SELECT tl.`link_rewrite` + FROM `PREFIX_cms_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_cms`=`PREFIX_cms`.`id_cms`), + (SELECT tl.`meta_description` + FROM `PREFIX_cms_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_cms`=`PREFIX_cms`.`id_cms`), + (SELECT tl.`meta_keywords` + FROM `PREFIX_cms_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_cms`=`PREFIX_cms`.`id_cms`), + (SELECT tl.`meta_title` + FROM `PREFIX_cms_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_cms`=`PREFIX_cms`.`id_cms`), + (SELECT tl.`content` + FROM `PREFIX_cms_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_cms`=`PREFIX_cms`.`id_cms`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_cms`); + +INSERT IGNORE INTO `PREFIX_meta_lang` (`id_meta`, `id_lang`, `description`, `keywords`, `title`) + (SELECT `id_meta`, id_lang, + (SELECT tl.`description` + FROM `PREFIX_meta_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_meta`=`PREFIX_meta`.`id_meta`), + (SELECT tl.`keywords` + FROM `PREFIX_meta_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_meta`=`PREFIX_meta`.`id_meta`), + (SELECT tl.`title` + FROM `PREFIX_meta_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_meta`=`PREFIX_meta`.`id_meta`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_meta`); + +INSERT IGNORE INTO `PREFIX_order_message_lang` (`id_order_message`, `id_lang`, `name`, `message`) + (SELECT `id_order_message`, id_lang, + (SELECT tl.`name` + FROM `PREFIX_order_message_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_order_message`=`PREFIX_order_message`.`id_order_message`), + (SELECT tl.`message` + FROM `PREFIX_order_message_lang` tl + WHERE tl.`id_lang` = (SELECT c.`value` + FROM `PREFIX_configuration` c + WHERE c.`name` = 'PS_LANG_DEFAULT' LIMIT 1) AND tl.`id_order_message`=`PREFIX_order_message`.`id_order_message`) + FROM `PREFIX_lang` CROSS JOIN `PREFIX_order_message`); + +/* PHP */ +/* PHP:invoice_number_set(); */; +/* PHP:delivery_number_set(); */; +/* PHP:set_payment_module(); */; +/* PHP:set_discount_category(); */; diff --git a/install-new/upgrade/sql/1.1.0.2.sql b/install-new/upgrade/sql/1.1.0.2.sql new file mode 100644 index 000000000..ee56776c5 --- /dev/null +++ b/install-new/upgrade/sql/1.1.0.2.sql @@ -0,0 +1,3 @@ +SET NAMES 'utf8'; + +/* ##################################### */ diff --git a/install-new/upgrade/sql/1.1.0.3.sql b/install-new/upgrade/sql/1.1.0.3.sql new file mode 100644 index 000000000..5fb70c0ab --- /dev/null +++ b/install-new/upgrade/sql/1.1.0.3.sql @@ -0,0 +1,10 @@ +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ + +DROP TABLE IF EXISTS PREFIX_product_picture; + +/* PHP */ +/* PHP:moduleReinstaller('blockmyaccount'); */; diff --git a/install-new/upgrade/sql/1.1.0.4.sql b/install-new/upgrade/sql/1.1.0.4.sql new file mode 100644 index 000000000..1bd039324 --- /dev/null +++ b/install-new/upgrade/sql/1.1.0.4.sql @@ -0,0 +1,28 @@ +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ + +ALTER TABLE PREFIX_order_detail + DROP `deleted`, + ADD product_quantity_cancelled INT(10) UNSIGNED NOT NULL AFTER product_quantity_return; + +ALTER TABLE PREFIX_customization ADD quantity INT(10) NOT NULL; + +ALTER TABLE PREFIX_order_return_detail ADD id_customization INT(10) NOT NULL DEFAULT 0 AFTER id_order_detail; +ALTER TABLE PREFIX_order_return_detail DROP PRIMARY KEY; +ALTER TABLE PREFIX_order_return_detail ADD PRIMARY KEY (id_order_return, id_order_detail, id_customization); + + +ALTER TABLE PREFIX_orders + CHANGE payment payment VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, + CHANGE module module VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; + +/* ################################# */ +/* CONTENTS */ +/* ################################# */ + +INSERT INTO PREFIX_hook (`name`, `title`, `description`, `position`) VALUES + ('productOutOfStock', 'Product out of stock', 'Make action while product is out of stock', 1), + ('updateProductAttribute', 'Product attribute update', NULL, 1); diff --git a/install-new/upgrade/sql/1.1.0.5.sql b/install-new/upgrade/sql/1.1.0.5.sql new file mode 100644 index 000000000..08b08b3a5 --- /dev/null +++ b/install-new/upgrade/sql/1.1.0.5.sql @@ -0,0 +1,20 @@ +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ + +ALTER TABLE PREFIX_product + CHANGE customizable customizable TINYINT(2) NOT NULL DEFAULT 0; +ALTER TABLE PREFIX_connections + CHANGE ip_address ip_address VARCHAR(16) NULL; +ALTER TABLE PREFIX_customer + ADD newsletter_date_add DATETIME NULL; +ALTER TABLE PREFIX_cart_product + ADD date_add DATETIME NOT NULL; + +/* ################################# */ +/* CONTENTS */ +/* ################################# */ + +/* PHP:add_required_customization_field_flag(); */; diff --git a/install-new/upgrade/sql/1.2.0.1.sql b/install-new/upgrade/sql/1.2.0.1.sql new file mode 100644 index 000000000..b4fef836e --- /dev/null +++ b/install-new/upgrade/sql/1.2.0.1.sql @@ -0,0 +1,1071 @@ +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ + +DROP TABLE IF EXISTS PREFIX_order_customization_return; + +ALTER TABLE PREFIX_cart + ADD id_guest INT UNSIGNED NULL AFTER id_customer; + +ALTER TABLE PREFIX_tab + ADD `module` varchar(64) NULL AFTER class_name; + +ALTER TABLE PREFIX_product + ADD `indexed` tinyint(1) NOT NULL default '0' AFTER `active`; + +ALTER TABLE PREFIX_orders + DROP INDEX `orders_customer`; +ALTER TABLE PREFIX_orders + ADD INDEX id_customer (id_customer); +ALTER TABLE PREFIX_orders + ADD valid INTEGER(1) UNSIGNED NOT NULL DEFAULT '0' AFTER delivery_date; +ALTER TABLE PREFIX_orders + ADD INDEX `id_cart` (`id_cart`); + +ALTER TABLE PREFIX_customer + ADD deleted TINYINT(1) NOT NULL DEFAULT '0' AFTER active; + +ALTER TABLE PREFIX_employee + ADD stats_date_to DATE NULL DEFAULT NULL AFTER last_passwd_gen; +ALTER TABLE PREFIX_employee + ADD stats_date_from DATE NULL DEFAULT NULL AFTER last_passwd_gen; + +ALTER TABLE PREFIX_order_state + ADD hidden TINYINT(1) UNSIGNED NOT NULL DEFAULT '0' AFTER unremovable; + +ALTER TABLE PREFIX_carrier + ADD is_module TINYINT(1) UNSIGNED NOT NULL DEFAULT '0' AFTER range_behavior; +ALTER TABLE PREFIX_carrier + ADD INDEX deleted (`deleted`, `active`); + +ALTER TABLE PREFIX_state + CHANGE iso_code `iso_code` char(4) NOT NULL; + +ALTER TABLE PREFIX_order_detail + CHANGE product_quantity_cancelled product_quantity_refunded INT(10) UNSIGNED NOT NULL DEFAULT '0'; +ALTER TABLE PREFIX_order_detail + ADD INDEX product_id (product_id); + +ALTER TABLE PREFIX_attribute_lang + ADD INDEX id_lang (`id_lang`, `name`); +ALTER TABLE PREFIX_attribute_lang + ADD INDEX id_lang_2 (`id_lang`); +ALTER TABLE PREFIX_attribute_lang + ADD INDEX id_attribute (`id_attribute`); + +ALTER TABLE PREFIX_block_cms + ADD PRIMARY KEY (`id_block`, `id_cms`); + +/* IGNORE because can raise error data truncated */ +ALTER IGNORE TABLE PREFIX_connections + CHANGE `http_referer` `http_referer` VARCHAR(255) DEFAULT NULL; + +ALTER TABLE PREFIX_connections + ADD INDEX `date_add` (`date_add`); + +ALTER TABLE PREFIX_customer + DROP INDEX `customer_email`; +ALTER TABLE PREFIX_customer + ADD UNIQUE `customer_email` (`email`); + +ALTER TABLE PREFIX_delivery + ADD INDEX id_zone (`id_zone`); +ALTER TABLE PREFIX_delivery + ADD INDEX id_carrier (`id_carrier`, `id_zone`); + +ALTER TABLE PREFIX_feature_product + ADD INDEX `id_feature` (`id_feature`); + +ALTER TABLE PREFIX_hook_module + DROP INDEX `hook_module_index`; +ALTER TABLE PREFIX_hook_module + ADD PRIMARY KEY (id_module,id_hook); +ALTER TABLE PREFIX_hook_module + ADD INDEX id_module (`id_module`); +ALTER TABLE PREFIX_hook_module + ADD INDEX id_hook (`id_hook`); + +ALTER TABLE PREFIX_module + CHANGE `active` `active` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0'; + +ALTER TABLE PREFIX_page + CHANGE `id_object` `id_object` INT UNSIGNED NULL DEFAULT NULL; +ALTER TABLE PREFIX_page + ADD INDEX `id_page_type` (`id_page_type`); +ALTER TABLE PREFIX_page + ADD INDEX `id_object` (`id_object`); + +ALTER TABLE PREFIX_page_type + CHANGE `name` `name` VARCHAR(255) NOT NULL; +ALTER TABLE PREFIX_page_type + ADD INDEX `name` (`name`); + +ALTER TABLE PREFIX_product_attribute + ADD INDEX reference (reference); +ALTER TABLE PREFIX_product_attribute + ADD INDEX supplier_reference (supplier_reference); + +ALTER TABLE PREFIX_product_lang + ADD INDEX id_product (id_product); +ALTER TABLE PREFIX_product_lang + ADD INDEX id_lang (id_lang); +ALTER TABLE PREFIX_product_lang + ADD INDEX `name` (`name`); +ALTER TABLE PREFIX_product_lang + ADD FULLTEXT KEY ftsname (`name`); + +ALTER TABLE PREFIX_cart_discount + ADD INDEX `id_discount` (`id_discount`); + +ALTER TABLE PREFIX_discount_category + ADD PRIMARY KEY (`id_category`,`id_discount`); + +ALTER TABLE PREFIX_image_lang + ADD INDEX id_image (id_image); + +ALTER TABLE PREFIX_range_price + CHANGE `delimiter1` `delimiter1` DECIMAL(13, 6) NOT NULL; +ALTER TABLE PREFIX_range_price + CHANGE `delimiter2` `delimiter2` DECIMAL(13, 6) NOT NULL; +ALTER TABLE PREFIX_range_price + CHANGE `id_carrier` `id_carrier` INT(10) UNSIGNED NOT NULL; +ALTER TABLE PREFIX_range_price + DROP INDEX `range_price_unique`; +ALTER TABLE PREFIX_range_price + ADD UNIQUE KEY `id_carrier` (`id_carrier`,`delimiter1`,`delimiter2`); + +ALTER TABLE PREFIX_range_weight + CHANGE `delimiter1` `delimiter1` DECIMAL(13, 6) NOT NULL; +ALTER TABLE PREFIX_range_weight + CHANGE `delimiter2` `delimiter2` DECIMAL(13, 6) NOT NULL; +ALTER TABLE PREFIX_range_weight + CHANGE `id_carrier` `id_carrier` INT(10) UNSIGNED NOT NULL; +ALTER TABLE PREFIX_range_weight + DROP INDEX `range_weight_unique`; +ALTER TABLE PREFIX_range_weight + ADD UNIQUE KEY `id_carrier` (`id_carrier`,`delimiter1`,`delimiter2`); + +ALTER TABLE PREFIX_scene_products + ADD PRIMARY KEY (`id_scene`, `id_product`, `x_axis`, `y_axis`); + +ALTER TABLE PREFIX_product_lang DROP INDEX fts; +ALTER TABLE PREFIX_product_lang DROP INDEX ftsname ; + +/* KEY management */ +ALTER TABLE PREFIX_attribute_lang DROP INDEX `id_lang_2`; +ALTER TABLE PREFIX_attribute_lang DROP INDEX `id_attribute`; +ALTER TABLE PREFIX_attribute_lang DROP INDEX `attribute_lang_index`, ADD PRIMARY KEY (`id_attribute`, `id_lang`); +ALTER TABLE PREFIX_carrier_zone DROP INDEX `carrier_zone_index`, ADD PRIMARY KEY (`id_carrier`, `id_zone`); +ALTER TABLE PREFIX_discount_category CHANGE `id_discount` `id_discount` int(11) NOT NULL AFTER `id_category`; +ALTER TABLE PREFIX_feature_product DROP INDEX `id_feature`; +ALTER TABLE PREFIX_hook_module DROP INDEX `id_module`; +ALTER TABLE PREFIX_image_lang DROP INDEX `id_image`; +ALTER TABLE PREFIX_product_lang DROP INDEX `id_product`; + +/* ############################################################ */ + +CREATE TABLE `PREFIX_customer_group` ( + `id_customer` int(10) unsigned NOT NULL, + `id_group` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_customer`,`id_group`), + INDEX customer_login(id_group) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_category_group ( + id_category INTEGER UNSIGNED NOT NULL, + id_group INTEGER UNSIGNED NOT NULL, + INDEX category_group_index(id_category, id_group) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_group` ( + id_group INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, + reduction DECIMAL(10,2) NOT NULL DEFAULT 0, + date_add DATETIME NOT NULL, + date_upd DATETIME NOT NULL, + PRIMARY KEY(id_group) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_group_lang ( + id_group INTEGER UNSIGNED NOT NULL, + id_lang INTEGER UNSIGNED NOT NULL, + name VARCHAR(32) NOT NULL, + UNIQUE INDEX attribute_lang_index(id_group, id_lang) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_message_readed ( + id_message INTEGER UNSIGNED NOT NULL, + id_employee INTEGER UNSIGNED NOT NULL, + date_add DATETIME NOT NULL, + PRIMARY KEY (id_message,id_employee) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_attachment` ( + `id_attachment` int(10) unsigned NOT NULL auto_increment, + `file` varchar(40) NOT NULL, + `mime` varchar(32) NOT NULL, + PRIMARY KEY (`id_attachment`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_attachment_lang` ( + `id_attachment` int(10) unsigned NOT NULL auto_increment, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(32) default NULL, + `description` TEXT, + PRIMARY KEY (`id_attachment`, `id_lang`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product_attachment` ( + `id_product` int(10) NOT NULL, + `id_attachment` int(10) NOT NULL, + PRIMARY KEY (`id_product`,`id_attachment`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_connections_source` ( + id_connections_source INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, + id_connections INTEGER UNSIGNED NOT NULL, + http_referer VARCHAR(255) NULL, + request_uri VARCHAR(255) NULL, + keywords VARCHAR(255) NULL, + date_add DATETIME NOT NULL, + PRIMARY KEY (id_connections_source), + INDEX connections (id_connections), + INDEX orderby (date_add), + INDEX http_referer (`http_referer`), + INDEX request_uri(`request_uri`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_referrer` ( + `id_referrer` int(10) unsigned NOT NULL auto_increment, + `name` varchar(64) NOT NULL, + `passwd` varchar(32) default NULL, + `http_referer_regexp` varchar(64) default NULL, + `http_referer_like` varchar(64) default NULL, + `request_uri_regexp` varchar(64) default NULL, + `request_uri_like` varchar(64) default NULL, + `http_referer_regexp_not` varchar(64) default NULL, + `http_referer_like_not` varchar(64) default NULL, + `request_uri_regexp_not` varchar(64) default NULL, + `request_uri_like_not` varchar(64) default NULL, + `base_fee` decimal(5,2) NOT NULL default '0.00', + `percent_fee` decimal(5,2) NOT NULL default '0.00', + `click_fee` decimal(5,2) NOT NULL default '0.00', + `cache_visitors` int(11) default NULL, + `cache_visits` int(11) default NULL, + `cache_pages` int(11) default NULL, + `cache_registrations` int(11) default NULL, + `cache_orders` int(11) default NULL, + `cache_sales` decimal(10,2) default NULL, + `cache_reg_rate` decimal(5,4) default NULL, + `cache_order_rate` decimal(5,4) default NULL, + `date_add` datetime NOT NULL, + PRIMARY KEY (`id_referrer`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_referrer_cache` ( + `id_connections_source` int(11) NOT NULL, + `id_referrer` int(11) NOT NULL, + PRIMARY KEY (`id_connections_source`, `id_referrer`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_search_engine` ( + id_search_engine INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, + server VARCHAR(64) NOT NULL, + getvar VARCHAR(16) NOT NULL, + PRIMARY KEY(id_search_engine) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_module_group` ( + `id_module` INTEGER UNSIGNED NOT NULL, + `id_group` INTEGER NOT NULL, + PRIMARY KEY (`id_module`, `id_group`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product_attribute_image` ( + `id_product_attribute` int(10) NOT NULL, + `id_image` int(10) NOT NULL, + PRIMARY KEY (`id_product_attribute`,`id_image`), + KEY `id_image` (`id_image`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_search_index` ( + `id_product` int(11) NOT NULL, + `id_word` int(11) NOT NULL, + `weight` tinyint(4) NOT NULL default '1', + PRIMARY KEY (`id_word`, `id_product`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_search_word` ( + `id_word` int(10) unsigned NOT NULL auto_increment, + `id_lang` int(10) unsigned NOT NULL, + `word` varchar(15) NOT NULL, + PRIMARY KEY (`id_word`), + UNIQUE KEY `id_lang` (`id_lang`,`word`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE PREFIX_timezone ( + id_timezone INTEGER UNSIGNED NOT NULL auto_increment, + name VARCHAR(32) NOT NULL, + PRIMARY KEY timezone_index(`id_timezone`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +/* ##################################### */ +/* CONTENTS */ +/* ##################################### */ + +INSERT INTO `PREFIX_order_state` (`id_order_state`, `invoice`, `send_email`, `color`, `unremovable`, `logable`, `delivery`) VALUES + (11, 0, 0, 'lightblue', 1, 0, 0); + +INSERT INTO `PREFIX_order_state_lang` (`id_order_state`, `id_lang`, `name`, `template`) VALUES + (11, 1, 'Awaiting PayPal payment', ''); +INSERT INTO `PREFIX_order_state_lang` (`id_order_state`, `id_lang`, `name`, `template`) VALUES + (11, 2, 'En attente du paiement par PayPal', ''); + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES + ('PS_SEARCH_MINWORDLEN', '3', NOW(), NOW()); +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES + ('PS_SEARCH_WEIGHT_PNAME', '6', NOW(), NOW()); +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES + ('PS_SEARCH_WEIGHT_REF', '10', NOW(), NOW()); +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES + ('PS_SEARCH_WEIGHT_SHORTDESC', '1', NOW(), NOW()); +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES + ('PS_SEARCH_WEIGHT_DESC', '1', NOW(), NOW()); +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES + ('PS_SEARCH_WEIGHT_CNAME', '3', NOW(), NOW()); +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES + ('PS_SEARCH_WEIGHT_MNAME', '3', NOW(), NOW()); +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES + ('PS_SEARCH_WEIGHT_TAG', '4', NOW(), NOW()); +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES + ('PS_SEARCH_WEIGHT_ATTRIBUTE', '2', NOW(), NOW()); +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES + ('PS_SEARCH_WEIGHT_FEATURE', '2', NOW(), NOW()); +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES + ('PS_SEARCH_AJAX', '1', NOW(), NOW()); +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES + ('PS_TIMEZONE', '374', NOW(), NOW()); +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES + ('BLOCKTAGS_NBR', '10', NOW(), NOW()); + +INSERT INTO PREFIX_hook (`name`, `title`, `description`, `position`) VALUES + ('extraCarrier', 'Extra carrier (module mode)', NULL, 0); +INSERT INTO PREFIX_hook (`name`, `title`, `description`, `position`) VALUES + ('shoppingCartExtra', 'Shopping cart extra button', 'Display some specific informations', 1); +INSERT INTO PREFIX_hook (`name`, `title`, `description`, `position`) VALUES + ('search', 'Search', NULL, 0); +INSERT INTO PREFIX_hook (`name`, `title`, `description`, `position`) VALUES + ('backBeforePayment', 'Redirect in order process', 'Redirect user to the module instead of displaying payment modules', 0); + +UPDATE PREFIX_orders o SET o.valid = IFNULL(( + SELECT os.logable + FROM PREFIX_order_history oh + LEFT JOIN PREFIX_order_state os ON os.id_order_state = oh.id_order_state + WHERE oh.id_order = o.id_order + ORDER BY oh.date_add DESC, oh.id_order_history DESC + LIMIT 1 +), 0); + +INSERT INTO `PREFIX_search_engine` (`id_search_engine`, `server`,`getvar`) VALUES + (1, 'google','q'), + (2, 'search.aol','query'), + (3, 'yandex.ru','text'), + (4, 'ask.com','q'), + (5, 'nhl.com','q'), + (6, 'search.yahoo','p'), + (7, 'baidu.com','wd'), + (8, 'search.lycos','query'), + (9, 'exalead','q'), + (10, 'search.live.com','q'), + (11, 'search.ke.voila','rdata'), + (12, 'altavista','q') + ON DUPLICATE KEY UPDATE server = server; + +/* GROUPS, CUSTOMERS GROUPS, & CATEGORY GROUPS */ +INSERT INTO `PREFIX_group` (`reduction`, `date_add`, `date_upd`) VALUES (0, NOW(), NOW()); +INSERT INTO `PREFIX_group_lang` (`id_lang`, `id_group`, `name`) ( + SELECT `id_lang`, + (SELECT `id_group` FROM `PREFIX_group` LIMIT 1), + 'Default' FROM `PREFIX_lang`); +UPDATE `PREFIX_group_lang` SET `name` = 'Défaut' + WHERE `id_group` = (SELECT `id_group` FROM `PREFIX_group` LIMIT 1) + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO `PREFIX_customer_group` (`id_customer`, `id_group`) + (SELECT `id_customer`, + (SELECT `id_group` FROM `PREFIX_group` LIMIT 1) FROM `PREFIX_customer`); +INSERT INTO `PREFIX_category_group` (`id_category`, `id_group`) + (SELECT `id_category`, + (SELECT `id_group` FROM `PREFIX_group` LIMIT 1) FROM `PREFIX_category`); + +/* NEW TABS */ +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminOrders' LIMIT 1) AS tmp), 'AdminMessages', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminOrders' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminMessages' LIMIT 1), + 'Customer messages' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Messages clients' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminMessages') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminMessages' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminCatalog' LIMIT 1) AS tmp), 'AdminTracking', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminCatalog' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminTracking' LIMIT 1), + 'Tracking' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Suivi' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminTracking') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminTracking' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminStats' LIMIT 1) AS tmp), 'AdminSearchEngines', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminStats' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminSearchEngines' LIMIT 1), + 'Search Engines' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Moteurs de recherche' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminSearchEngines') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminSearchEngines' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminStats' LIMIT 1) AS tmp), 'AdminReferrers', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminStats' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminReferrers' LIMIT 1), + 'Referrers' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Sites affluents' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminReferrers') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminReferrers' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminCustomers' LIMIT 1) AS tmp), 'AdminGroups', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminCustomers' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminGroups' LIMIT 1), + 'Groups' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Groupes' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminGroups') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminGroups' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminCustomers' LIMIT 1) AS tmp), 'AdminCarts', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminCustomers' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminCarts' LIMIT 1), + 'Carts' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Paniers' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminCarts') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminCarts' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminCatalog' LIMIT 1) AS tmp), 'AdminTags', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminCatalog' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminTags' LIMIT 1), + 'Tags' FROM PREFIX_lang); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminTags' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminPreferences' LIMIT 1) AS tmp), 'AdminSearchConf', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminPreferences' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminSearchConf' LIMIT 1), + 'Search' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Recherche' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminSearchConf') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminSearchConf' LIMIT 1), 1, 1, 1, 1); + +INSERT INTO PREFIX_tab (id_parent, class_name, position) VALUES ((SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminCatalog' LIMIT 1) AS tmp), 'AdminAttachments', (SELECT tmp.max FROM (SELECT MAX(position) max FROM `PREFIX_tab` WHERE id_parent = (SELECT tmp.`id_tab` FROM (SELECT `id_tab` FROM PREFIX_tab t WHERE t.class_name = 'AdminCatalog' LIMIT 1) AS tmp )) AS tmp)); +INSERT INTO PREFIX_tab_lang (id_lang, id_tab, name) ( + SELECT id_lang, + (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminAttachments' LIMIT 1), + 'Attachments' FROM PREFIX_lang); +UPDATE `PREFIX_tab_lang` SET `name` = 'Documents joints' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminAttachments') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); +INSERT INTO PREFIX_access (id_profile, id_tab, `view`, `add`, edit, `delete`) VALUES ('1', (SELECT id_tab FROM PREFIX_tab t WHERE t.class_name = 'AdminAttachments' LIMIT 1), 1, 1, 1, 1); + +/* CHANGE TABS */ +UPDATE `PREFIX_tab` SET `class_name` = 'AdminStatuses' WHERE `class_name` = 'AdminOrdersStates'; +UPDATE `PREFIX_tab_lang` SET `name` = 'Statuses' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminStatuses') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'en'); +UPDATE `PREFIX_tab_lang` SET `name` = 'Statuts' + WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` t WHERE t.class_name = 'AdminStatuses') + AND `id_lang` = (SELECT `id_lang` FROM `PREFIX_lang` l WHERE l.iso_code = 'fr'); + +INSERT IGNORE INTO PREFIX_product_attribute_image (id_image, id_product_attribute) + (SELECT id_image, id_product_attribute FROM PREFIX_product_attribute WHERE id_image IS NOT NULL); +/* ALTER query must stay here (right after the INSERT INTO PREFIX_product_attribute_image)! */ +ALTER TABLE PREFIX_product_attribute DROP id_image; + +UPDATE PREFIX_category_lang SET link_rewrite = 'home' WHERE id_category = 1; + +/* TIMEZONES */ + +INSERT INTO `PREFIX_timezone` (`id_timezone`, `name`) VALUES +(1, 'Africa/Abidjan'), +(2, 'Africa/Accra'), +(3, 'Africa/Addis_Ababa'), +(4, 'Africa/Algiers'), +(5, 'Africa/Asmara'), +(6, 'Africa/Asmera'), +(7, 'Africa/Bamako'), +(8, 'Africa/Bangui'), +(9, 'Africa/Banjul'), +(10, 'Africa/Bissau'), +(11, 'Africa/Blantyre'), +(12, 'Africa/Brazzaville'), +(13, 'Africa/Bujumbura'), +(14, 'Africa/Cairo'), +(15, 'Africa/Casablanca'), +(16, 'Africa/Ceuta'), +(17, 'Africa/Conakry'), +(18, 'Africa/Dakar'), +(19, 'Africa/Dar_es_Salaam'), +(20, 'Africa/Djibouti'), +(21, 'Africa/Douala'), +(22, 'Africa/El_Aaiun'), +(23, 'Africa/Freetown'), +(24, 'Africa/Gaborone'), +(25, 'Africa/Harare'), +(26, 'Africa/Johannesburg'), +(27, 'Africa/Kampala'), +(28, 'Africa/Khartoum'), +(29, 'Africa/Kigali'), +(30, 'Africa/Kinshasa'), +(31, 'Africa/Lagos'), +(32, 'Africa/Libreville'), +(33, 'Africa/Lome'), +(34, 'Africa/Luanda'), +(35, 'Africa/Lubumbashi'), +(36, 'Africa/Lusaka'), +(37, 'Africa/Malabo'), +(38, 'Africa/Maputo'), +(39, 'Africa/Maseru'), +(40, 'Africa/Mbabane'), +(41, 'Africa/Mogadishu'), +(42, 'Africa/Monrovia'), +(43, 'Africa/Nairobi'), +(44, 'Africa/Ndjamena'), +(45, 'Africa/Niamey'), +(46, 'Africa/Nouakchott'), +(47, 'Africa/Ouagadougou'), +(48, 'Africa/Porto-Novo'), +(49, 'Africa/Sao_Tome'), +(50, 'Africa/Timbuktu'), +(51, 'Africa/Tripoli'), +(52, 'Africa/Tunis'), +(53, 'Africa/Windhoek'), +(54, 'America/Adak'), +(55, 'America/Anchorage '), +(56, 'America/Anguilla'), +(57, 'America/Antigua'), +(58, 'America/Araguaina'), +(59, 'America/Argentina/Buenos_Aires'), +(60, 'America/Argentina/Catamarca'), +(61, 'America/Argentina/ComodRivadavia'), +(62, 'America/Argentina/Cordoba'), +(63, 'America/Argentina/Jujuy'), +(64, 'America/Argentina/La_Rioja'), +(65, 'America/Argentina/Mendoza'), +(66, 'America/Argentina/Rio_Gallegos'), +(67, 'America/Argentina/Salta'), +(68, 'America/Argentina/San_Juan'), +(69, 'America/Argentina/San_Luis'), +(70, 'America/Argentina/Tucuman'), +(71, 'America/Argentina/Ushuaia'), +(72, 'America/Aruba'), +(73, 'America/Asuncion'), +(74, 'America/Atikokan'), +(75, 'America/Atka'), +(76, 'America/Bahia'), +(77, 'America/Barbados'), +(78, 'America/Belem'), +(79, 'America/Belize'), +(80, 'America/Blanc-Sablon'), +(81, 'America/Boa_Vista'), +(82, 'America/Bogota'), +(83, 'America/Boise'), +(84, 'America/Buenos_Aires'), +(85, 'America/Cambridge_Bay'), +(86, 'America/Campo_Grande'), +(87, 'America/Cancun'), +(88, 'America/Caracas'), +(89, 'America/Catamarca'), +(90, 'America/Cayenne'), +(91, 'America/Cayman'), +(92, 'America/Chicago'), +(93, 'America/Chihuahua'), +(94, 'America/Coral_Harbour'), +(95, 'America/Cordoba'), +(96, 'America/Costa_Rica'), +(97, 'America/Cuiaba'), +(98, 'America/Curacao'), +(99, 'America/Danmarkshavn'), +(100, 'America/Dawson'), +(101, 'America/Dawson_Creek'), +(102, 'America/Denver'), +(103, 'America/Detroit'), +(104, 'America/Dominica'), +(105, 'America/Edmonton'), +(106, 'America/Eirunepe'), +(107, 'America/El_Salvador'), +(108, 'America/Ensenada'), +(109, 'America/Fort_Wayne'), +(110, 'America/Fortaleza'), +(111, 'America/Glace_Bay'), +(112, 'America/Godthab'), +(113, 'America/Goose_Bay'), +(114, 'America/Grand_Turk'), +(115, 'America/Grenada'), +(116, 'America/Guadeloupe'), +(117, 'America/Guatemala'), +(118, 'America/Guayaquil'), +(119, 'America/Guyana'), +(120, 'America/Halifax'), +(121, 'America/Havana'), +(122, 'America/Hermosillo'), +(123, 'America/Indiana/Indianapolis'), +(124, 'America/Indiana/Knox'), +(125, 'America/Indiana/Marengo'), +(126, 'America/Indiana/Petersburg'), +(127, 'America/Indiana/Tell_City'), +(128, 'America/Indiana/Vevay'), +(129, 'America/Indiana/Vincennes'), +(130, 'America/Indiana/Winamac'), +(131, 'America/Indianapolis'), +(132, 'America/Inuvik'), +(133, 'America/Iqaluit'), +(134, 'America/Jamaica'), +(135, 'America/Jujuy'), +(136, 'America/Juneau'), +(137, 'America/Kentucky/Louisville'), +(138, 'America/Kentucky/Monticello'), +(139, 'America/Knox_IN'), +(140, 'America/La_Paz'), +(141, 'America/Lima'), +(142, 'America/Los_Angeles'), +(143, 'America/Louisville'), +(144, 'America/Maceio'), +(145, 'America/Managua'), +(146, 'America/Manaus'), +(147, 'America/Marigot'), +(148, 'America/Martinique'), +(149, 'America/Mazatlan'), +(150, 'America/Mendoza'), +(151, 'America/Menominee'), +(152, 'America/Merida'), +(153, 'America/Mexico_City'), +(154, 'America/Miquelon'), +(155, 'America/Moncton'), +(156, 'America/Monterrey'), +(157, 'America/Montevideo'), +(158, 'America/Montreal'), +(159, 'America/Montserrat'), +(160, 'America/Nassau'), +(161, 'America/New_York'), +(162, 'America/Nipigon'), +(163, 'America/Nome'), +(164, 'America/Noronha'), +(165, 'America/North_Dakota/Center'), +(166, 'America/North_Dakota/New_Salem'), +(167, 'America/Panama'), +(168, 'America/Pangnirtung'), +(169, 'America/Paramaribo'), +(170, 'America/Phoenix'), +(171, 'America/Port-au-Prince'), +(172, 'America/Port_of_Spain'), +(173, 'America/Porto_Acre'), +(174, 'America/Porto_Velho'), +(175, 'America/Puerto_Rico'), +(176, 'America/Rainy_River'), +(177, 'America/Rankin_Inlet'), +(178, 'America/Recife'), +(179, 'America/Regina'), +(180, 'America/Resolute'), +(181, 'America/Rio_Branco'), +(182, 'America/Rosario'), +(183, 'America/Santarem'), +(184, 'America/Santiago'), +(185, 'America/Santo_Domingo'), +(186, 'America/Sao_Paulo'), +(187, 'America/Scoresbysund'), +(188, 'America/Shiprock'), +(189, 'America/St_Barthelemy'), +(190, 'America/St_Johns'), +(191, 'America/St_Kitts'), +(192, 'America/St_Lucia'), +(193, 'America/St_Thomas'), +(194, 'America/St_Vincent'), +(195, 'America/Swift_Current'), +(196, 'America/Tegucigalpa'), +(197, 'America/Thule'), +(198, 'America/Thunder_Bay'), +(199, 'America/Tijuana'), +(200, 'America/Toronto'), +(201, 'America/Tortola'), +(202, 'America/Vancouver'), +(203, 'America/Virgin'), +(204, 'America/Whitehorse'), +(205, 'America/Winnipeg'), +(206, 'America/Yakutat'), +(207, 'America/Yellowknife'), +(208, 'Antarctica/Casey'), +(209, 'Antarctica/Davis'), +(210, 'Antarctica/DumontDUrville'), +(211, 'Antarctica/Mawson'), +(212, 'Antarctica/McMurdo'), +(213, 'Antarctica/Palmer'), +(214, 'Antarctica/Rothera'), +(215, 'Antarctica/South_Pole'), +(216, 'Antarctica/Syowa'), +(217, 'Antarctica/Vostok'), +(218, 'Arctic/Longyearbyen'), +(219, 'Asia/Aden'), +(220, 'Asia/Almaty'), +(221, 'Asia/Amman'), +(222, 'Asia/Anadyr'), +(223, 'Asia/Aqtau'), +(224, 'Asia/Aqtobe'), +(225, 'Asia/Ashgabat'), +(226, 'Asia/Ashkhabad'), +(227, 'Asia/Baghdad'), +(228, 'Asia/Bahrain'), +(229, 'Asia/Baku'), +(230, 'Asia/Bangkok'), +(231, 'Asia/Beirut'), +(232, 'Asia/Bishkek'), +(233, 'Asia/Brunei'), +(234, 'Asia/Calcutta'), +(235, 'Asia/Choibalsan'), +(236, 'Asia/Chongqing'), +(237, 'Asia/Chungking'), +(238, 'Asia/Colombo'), +(239, 'Asia/Dacca'), +(240, 'Asia/Damascus'), +(241, 'Asia/Dhaka'), +(242, 'Asia/Dili'), +(243, 'Asia/Dubai'), +(244, 'Asia/Dushanbe'), +(245, 'Asia/Gaza'), +(246, 'Asia/Harbin'), +(247, 'Asia/Ho_Chi_Minh'), +(248, 'Asia/Hong_Kong'), +(249, 'Asia/Hovd'), +(250, 'Asia/Irkutsk'), +(251, 'Asia/Istanbul'), +(252, 'Asia/Jakarta'), +(253, 'Asia/Jayapura'), +(254, 'Asia/Jerusalem'), +(255, 'Asia/Kabul'), +(256, 'Asia/Kamchatka'), +(257, 'Asia/Karachi'), +(258, 'Asia/Kashgar'), +(259, 'Asia/Kathmandu'), +(260, 'Asia/Katmandu'), +(261, 'Asia/Kolkata'), +(262, 'Asia/Krasnoyarsk'), +(263, 'Asia/Kuala_Lumpur'), +(264, 'Asia/Kuching'), +(265, 'Asia/Kuwait'), +(266, 'Asia/Macao'), +(267, 'Asia/Macau'), +(268, 'Asia/Magadan'), +(269, 'Asia/Makassar'), +(270, 'Asia/Manila'), +(271, 'Asia/Muscat'), +(272, 'Asia/Nicosia'), +(273, 'Asia/Novosibirsk'), +(274, 'Asia/Omsk'), +(275, 'Asia/Oral'), +(276, 'Asia/Phnom_Penh'), +(277, 'Asia/Pontianak'), +(278, 'Asia/Pyongyang'), +(279, 'Asia/Qatar'), +(280, 'Asia/Qyzylorda'), +(281, 'Asia/Rangoon'), +(282, 'Asia/Riyadh'), +(283, 'Asia/Saigon'), +(284, 'Asia/Sakhalin'), +(285, 'Asia/Samarkand'), +(286, 'Asia/Seoul'), +(287, 'Asia/Shanghai'), +(288, 'Asia/Singapore'), +(289, 'Asia/Taipei'), +(290, 'Asia/Tashkent'), +(291, 'Asia/Tbilisi'), +(292, 'Asia/Tehran'), +(293, 'Asia/Tel_Aviv'), +(294, 'Asia/Thimbu'), +(295, 'Asia/Thimphu'), +(296, 'Asia/Tokyo'), +(297, 'Asia/Ujung_Pandang'), +(298, 'Asia/Ulaanbaatar'), +(299, 'Asia/Ulan_Bator'), +(300, 'Asia/Urumqi'), +(301, 'Asia/Vientiane'), +(302, 'Asia/Vladivostok'), +(303, 'Asia/Yakutsk'), +(304, 'Asia/Yekaterinburg'), +(305, 'Asia/Yerevan'), +(306, 'Atlantic/Azores'), +(307, 'Atlantic/Bermuda'), +(308, 'Atlantic/Canary'), +(309, 'Atlantic/Cape_Verde'), +(310, 'Atlantic/Faeroe'), +(311, 'Atlantic/Faroe'), +(312, 'Atlantic/Jan_Mayen'), +(313, 'Atlantic/Madeira'), +(314, 'Atlantic/Reykjavik'), +(315, 'Atlantic/South_Georgia'), +(316, 'Atlantic/St_Helena'), +(317, 'Atlantic/Stanley'), +(318, 'Australia/ACT'), +(319, 'Australia/Adelaide'), +(320, 'Australia/Brisbane'), +(321, 'Australia/Broken_Hill'), +(322, 'Australia/Canberra'), +(323, 'Australia/Currie'), +(324, 'Australia/Darwin'), +(325, 'Australia/Eucla'), +(326, 'Australia/Hobart'), +(327, 'Australia/LHI'), +(328, 'Australia/Lindeman'), +(329, 'Australia/Lord_Howe'), +(330, 'Australia/Melbourne'), +(331, 'Australia/North'), +(332, 'Australia/NSW'), +(333, 'Australia/Perth'), +(334, 'Australia/Queensland'), +(335, 'Australia/South'), +(336, 'Australia/Sydney'), +(337, 'Australia/Tasmania'), +(338, 'Australia/Victoria'), +(339, 'Australia/West'), +(340, 'Australia/Yancowinna'), +(341, 'Europe/Amsterdam'), +(342, 'Europe/Andorra'), +(343, 'Europe/Athens'), +(344, 'Europe/Belfast'), +(345, 'Europe/Belgrade'), +(346, 'Europe/Berlin'), +(347, 'Europe/Bratislava'), +(348, 'Europe/Brussels'), +(349, 'Europe/Bucharest'), +(350, 'Europe/Budapest'), +(351, 'Europe/Chisinau'), +(352, 'Europe/Copenhagen'), +(353, 'Europe/Dublin'), +(354, 'Europe/Gibraltar'), +(355, 'Europe/Guernsey'), +(356, 'Europe/Helsinki'), +(357, 'Europe/Isle_of_Man'), +(358, 'Europe/Istanbul'), +(359, 'Europe/Jersey'), +(360, 'Europe/Kaliningrad'), +(361, 'Europe/Kiev'), +(362, 'Europe/Lisbon'), +(363, 'Europe/Ljubljana'), +(364, 'Europe/London'), +(365, 'Europe/Luxembourg'), +(366, 'Europe/Madrid'), +(367, 'Europe/Malta'), +(368, 'Europe/Mariehamn'), +(369, 'Europe/Minsk'), +(370, 'Europe/Monaco'), +(371, 'Europe/Moscow'), +(372, 'Europe/Nicosia'), +(373, 'Europe/Oslo'), +(374, 'Europe/Paris'), +(375, 'Europe/Podgorica'), +(376, 'Europe/Prague'), +(377, 'Europe/Riga'), +(378, 'Europe/Rome'), +(379, 'Europe/Samara'), +(380, 'Europe/San_Marino'), +(381, 'Europe/Sarajevo'), +(382, 'Europe/Simferopol'), +(383, 'Europe/Skopje'), +(384, 'Europe/Sofia'), +(385, 'Europe/Stockholm'), +(386, 'Europe/Tallinn'), +(387, 'Europe/Tirane'), +(388, 'Europe/Tiraspol'), +(389, 'Europe/Uzhgorod'), +(390, 'Europe/Vaduz'), +(391, 'Europe/Vatican'), +(392, 'Europe/Vienna'), +(393, 'Europe/Vilnius'), +(394, 'Europe/Volgograd'), +(395, 'Europe/Warsaw'), +(396, 'Europe/Zagreb'), +(397, 'Europe/Zaporozhye'), +(398, 'Europe/Zurich'), +(399, 'Indian/Antananarivo'), +(400, 'Indian/Chagos'), +(401, 'Indian/Christmas'), +(402, 'Indian/Cocos'), +(403, 'Indian/Comoro'), +(404, 'Indian/Kerguelen'), +(405, 'Indian/Mahe'), +(406, 'Indian/Maldives'), +(407, 'Indian/Mauritius'), +(408, 'Indian/Mayotte'), +(409, 'Indian/Reunion'), +(410, 'Pacific/Apia'), +(411, 'Pacific/Auckland'), +(412, 'Pacific/Chatham'), +(413, 'Pacific/Easter'), +(414, 'Pacific/Efate'), +(415, 'Pacific/Enderbury'), +(416, 'Pacific/Fakaofo'), +(417, 'Pacific/Fiji'), +(418, 'Pacific/Funafuti'), +(419, 'Pacific/Galapagos'), +(420, 'Pacific/Gambier'), +(421, 'Pacific/Guadalcanal'), +(422, 'Pacific/Guam'), +(423, 'Pacific/Honolulu'), +(424, 'Pacific/Johnston'), +(425, 'Pacific/Kiritimati'), +(426, 'Pacific/Kosrae'), +(427, 'Pacific/Kwajalein'), +(428, 'Pacific/Majuro'), +(429, 'Pacific/Marquesas'), +(430, 'Pacific/Midway'), +(431, 'Pacific/Nauru'), +(432, 'Pacific/Niue'), +(433, 'Pacific/Norfolk'), +(434, 'Pacific/Noumea'), +(435, 'Pacific/Pago_Pago'), +(436, 'Pacific/Palau'), +(437, 'Pacific/Pitcairn'), +(438, 'Pacific/Ponape'), +(439, 'Pacific/Port_Moresby'), +(440, 'Pacific/Rarotonga'), +(441, 'Pacific/Saipan'), +(442, 'Pacific/Samoa'), +(443, 'Pacific/Tahiti'), +(444, 'Pacific/Tarawa'), +(445, 'Pacific/Tongatapu'), +(446, 'Pacific/Truk'), +(447, 'Pacific/Wake'), +(448, 'Pacific/Wallis'), +(449, 'Pacific/Yap'), +(450, 'Brazil/Acre'), +(451, 'Brazil/DeNoronha'), +(452, 'Brazil/East'), +(453, 'Brazil/West'), +(454, 'Canada/Atlantic'), +(455, 'Canada/Central'), +(456, 'Canada/East-Saskatchewan'), +(457, 'Canada/Eastern'), +(458, 'Canada/Mountain'), +(459, 'Canada/Newfoundland'), +(460, 'Canada/Pacific'), +(461, 'Canada/Saskatchewan'), +(462, 'Canada/Yukon'), +(463, 'CET'), +(464, 'Chile/Continental'), +(465, 'Chile/EasterIsland'), +(466, 'CST6CDT'), +(467, 'Cuba'), +(468, 'EET'), +(469, 'Egypt'), +(470, 'Eire'), +(471, 'EST'), +(472, 'EST5EDT'), +(473, 'Etc/GMT'), +(474, 'Etc/GMT+0'), +(475, 'Etc/GMT+1'), +(476, 'Etc/GMT+10'), +(477, 'Etc/GMT+11'), +(478, 'Etc/GMT+12'), +(479, 'Etc/GMT+2'), +(480, 'Etc/GMT+3'), +(481, 'Etc/GMT+4'), +(482, 'Etc/GMT+5'), +(483, 'Etc/GMT+6'), +(484, 'Etc/GMT+7'), +(485, 'Etc/GMT+8'), +(486, 'Etc/GMT+9'), +(487, 'Etc/GMT-0'), +(488, 'Etc/GMT-1'), +(489, 'Etc/GMT-10'), +(490, 'Etc/GMT-11'), +(491, 'Etc/GMT-12'), +(492, 'Etc/GMT-13'), +(493, 'Etc/GMT-14'), +(494, 'Etc/GMT-2'), +(495, 'Etc/GMT-3'), +(496, 'Etc/GMT-4'), +(497, 'Etc/GMT-5'), +(498, 'Etc/GMT-6'), +(499, 'Etc/GMT-7'), +(500, 'Etc/GMT-8'), +(501, 'Etc/GMT-9'), +(502, 'Etc/GMT0'), +(503, 'Etc/Greenwich'), +(504, 'Etc/UCT'), +(505, 'Etc/Universal'), +(506, 'Etc/UTC'), +(507, 'Etc/Zulu'), +(508, 'Factory'), +(509, 'GB'), +(510, 'GB-Eire'), +(511, 'GMT'), +(512, 'GMT+0'), +(513, 'GMT-0'), +(514, 'GMT0'), +(515, 'Greenwich'), +(516, 'Hongkong'), +(517, 'HST'), +(518, 'Iceland'), +(519, 'Iran'), +(520, 'Israel'), +(521, 'Jamaica'), +(522, 'Japan'), +(523, 'Kwajalein'), +(524, 'Libya'), +(525, 'MET'), +(526, 'Mexico/BajaNorte'), +(527, 'Mexico/BajaSur'), +(528, 'Mexico/General'), +(529, 'MST'), +(530, 'MST7MDT'), +(531, 'Navajo'), +(532, 'NZ'), +(533, 'NZ-CHAT'), +(534, 'Poland'), +(535, 'Portugal'), +(536, 'PRC'), +(537, 'PST8PDT'), +(538, 'ROC'), +(539, 'ROK'), +(540, 'Singapore'), +(541, 'Turkey'), +(542, 'UCT'), +(543, 'Universal'), +(544, 'US/Alaska'), +(545, 'US/Aleutian'), +(546, 'US/Arizona'), +(547, 'US/Central'), +(548, 'US/East-Indiana'), +(549, 'US/Eastern'), +(550, 'US/Hawaii'), +(551, 'US/Indiana-Starke'), +(552, 'US/Michigan'), +(553, 'US/Mountain'), +(554, 'US/Pacific'), +(555, 'US/Pacific-New'), +(556, 'US/Samoa'), +(557, 'UTC'), +(558, 'W-SU'), +(559, 'WET'), +(560, 'Zulu'); + +/* PHP:blocknewsletter(); */; +/* PHP:set_payment_module_group(); */; +/* PHP:add_new_tab(AdminGenerator, fr:Générateurs|es:Generadores|en:Generators|de:Generatoren|it:Generatori, 9); */; diff --git a/install-new/upgrade/sql/1.2.0.2.sql b/install-new/upgrade/sql/1.2.0.2.sql new file mode 100644 index 000000000..605edb065 --- /dev/null +++ b/install-new/upgrade/sql/1.2.0.2.sql @@ -0,0 +1,610 @@ +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ + +CREATE TABLE `PREFIX_pack` ( + `id_product_pack` int(10) unsigned NOT NULL, + `id_product_item` int(10) unsigned NOT NULL, + `quantity` int(10) unsigned NOT NULL DEFAULT 1, + PRIMARY KEY (`id_product_pack`,`id_product_item`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +ALTER TABLE `PREFIX_manufacturer_lang` + ADD `short_description` VARCHAR( 254 ) NULL DEFAULT NULL; +ALTER TABLE `PREFIX_manufacturer_lang` + ADD `meta_title` VARCHAR( 254 ) NULL DEFAULT NULL; +ALTER TABLE `PREFIX_manufacturer_lang` + ADD `meta_keywords` VARCHAR( 254 ) NULL DEFAULT NULL; +ALTER TABLE `PREFIX_manufacturer_lang` + ADD `meta_description` VARCHAR( 254 ) NULL DEFAULT NULL; + +ALTER TABLE `PREFIX_supplier_lang` + ADD `meta_title` VARCHAR( 254 ) NULL DEFAULT NULL; +ALTER TABLE `PREFIX_supplier_lang` + ADD `meta_keywords` VARCHAR( 254 ) NULL DEFAULT NULL; +ALTER TABLE `PREFIX_supplier_lang` + ADD `meta_description` VARCHAR( 254 ) NULL DEFAULT NULL; + +/* ##################################### */ +/* CONTENTS */ +/* ##################################### */ + +TRUNCATE TABLE `PREFIX_timezone`; +INSERT INTO `PREFIX_timezone` (`name`) VALUES + ('Africa/Abidjan'), + ('Africa/Accra'), + ('Africa/Addis_Ababa'), + ('Africa/Algiers'), + ('Africa/Asmara'), + ('Africa/Asmera'), + ('Africa/Bamako'), + ('Africa/Bangui'), + ('Africa/Banjul'), + ('Africa/Bissau'), + ('Africa/Blantyre'), + ('Africa/Brazzaville'), + ('Africa/Bujumbura'), + ('Africa/Cairo'), + ('Africa/Casablanca'), + ('Africa/Ceuta'), + ('Africa/Conakry'), + ('Africa/Dakar'), + ('Africa/Dar_es_Salaam'), + ('Africa/Djibouti'), + ('Africa/Douala'), + ('Africa/El_Aaiun'), + ('Africa/Freetown'), + ('Africa/Gaborone'), + ('Africa/Harare'), + ('Africa/Johannesburg'), + ('Africa/Kampala'), + ('Africa/Khartoum'), + ('Africa/Kigali'), + ('Africa/Kinshasa'), + ('Africa/Lagos'), + ('Africa/Libreville'), + ('Africa/Lome'), + ('Africa/Luanda'), + ('Africa/Lubumbashi'), + ('Africa/Lusaka'), + ('Africa/Malabo'), + ('Africa/Maputo'), + ('Africa/Maseru'), + ('Africa/Mbabane'), + ('Africa/Mogadishu'), + ('Africa/Monrovia'), + ('Africa/Nairobi'), + ('Africa/Ndjamena'), + ('Africa/Niamey'), + ('Africa/Nouakchott'), + ('Africa/Ouagadougou'), + ('Africa/Porto-Novo'), + ('Africa/Sao_Tome'), + ('Africa/Timbuktu'), + ('Africa/Tripoli'), + ('Africa/Tunis'), + ('Africa/Windhoek'), + ('America/Adak'), + ('America/Anchorage '), + ('America/Anguilla'), + ('America/Antigua'), + ('America/Araguaina'), + ('America/Argentina/Buenos_Aires'), + ('America/Argentina/Catamarca'), + ('America/Argentina/ComodRivadavia'), + ('America/Argentina/Cordoba'), + ('America/Argentina/Jujuy'), + ('America/Argentina/La_Rioja'), + ('America/Argentina/Mendoza'), + ('America/Argentina/Rio_Gallegos'), + ('America/Argentina/Salta'), + ('America/Argentina/San_Juan'), + ('America/Argentina/San_Luis'), + ('America/Argentina/Tucuman'), + ('America/Argentina/Ushuaia'), + ('America/Aruba'), + ('America/Asuncion'), + ('America/Atikokan'), + ('America/Atka'), + ('America/Bahia'), + ('America/Barbados'), + ('America/Belem'), + ('America/Belize'), + ('America/Blanc-Sablon'), + ('America/Boa_Vista'), + ('America/Bogota'), + ('America/Boise'), + ('America/Buenos_Aires'), + ('America/Cambridge_Bay'), + ('America/Campo_Grande'), + ('America/Cancun'), + ('America/Caracas'), + ('America/Catamarca'), + ('America/Cayenne'), + ('America/Cayman'), + ('America/Chicago'), + ('America/Chihuahua'), + ('America/Coral_Harbour'), + ('America/Cordoba'), + ('America/Costa_Rica'), + ('America/Cuiaba'), + ('America/Curacao'), + ('America/Danmarkshavn'), + ('America/Dawson'), + ('America/Dawson_Creek'), + ('America/Denver'), + ('America/Detroit'), + ('America/Dominica'), + ('America/Edmonton'), + ('America/Eirunepe'), + ('America/El_Salvador'), + ('America/Ensenada'), + ('America/Fort_Wayne'), + ('America/Fortaleza'), + ('America/Glace_Bay'), + ('America/Godthab'), + ('America/Goose_Bay'), + ('America/Grand_Turk'), + ('America/Grenada'), + ('America/Guadeloupe'), + ('America/Guatemala'), + ('America/Guayaquil'), + ('America/Guyana'), + ('America/Halifax'), + ('America/Havana'), + ('America/Hermosillo'), + ('America/Indiana/Indianapolis'), + ('America/Indiana/Knox'), + ('America/Indiana/Marengo'), + ('America/Indiana/Petersburg'), + ('America/Indiana/Tell_City'), + ('America/Indiana/Vevay'), + ('America/Indiana/Vincennes'), + ('America/Indiana/Winamac'), + ('America/Indianapolis'), + ('America/Inuvik'), + ('America/Iqaluit'), + ('America/Jamaica'), + ('America/Jujuy'), + ('America/Juneau'), + ('America/Kentucky/Louisville'), + ('America/Kentucky/Monticello'), + ('America/Knox_IN'), + ('America/La_Paz'), + ('America/Lima'), + ('America/Los_Angeles'), + ('America/Louisville'), + ('America/Maceio'), + ('America/Managua'), + ('America/Manaus'), + ('America/Marigot'), + ('America/Martinique'), + ('America/Mazatlan'), + ('America/Mendoza'), + ('America/Menominee'), + ('America/Merida'), + ('America/Mexico_City'), + ('America/Miquelon'), + ('America/Moncton'), + ('America/Monterrey'), + ('America/Montevideo'), + ('America/Montreal'), + ('America/Montserrat'), + ('America/Nassau'), + ('America/New_York'), + ('America/Nipigon'), + ('America/Nome'), + ('America/Noronha'), + ('America/North_Dakota/Center'), + ('America/North_Dakota/New_Salem'), + ('America/Panama'), + ('America/Pangnirtung'), + ('America/Paramaribo'), + ('America/Phoenix'), + ('America/Port-au-Prince'), + ('America/Port_of_Spain'), + ('America/Porto_Acre'), + ('America/Porto_Velho'), + ('America/Puerto_Rico'), + ('America/Rainy_River'), + ('America/Rankin_Inlet'), + ('America/Recife'), + ('America/Regina'), + ('America/Resolute'), + ('America/Rio_Branco'), + ('America/Rosario'), + ('America/Santarem'), + ('America/Santiago'), + ('America/Santo_Domingo'), + ('America/Sao_Paulo'), + ('America/Scoresbysund'), + ('America/Shiprock'), + ('America/St_Barthelemy'), + ('America/St_Johns'), + ('America/St_Kitts'), + ('America/St_Lucia'), + ('America/St_Thomas'), + ('America/St_Vincent'), + ('America/Swift_Current'), + ('America/Tegucigalpa'), + ('America/Thule'), + ('America/Thunder_Bay'), + ('America/Tijuana'), + ('America/Toronto'), + ('America/Tortola'), + ('America/Vancouver'), + ('America/Virgin'), + ('America/Whitehorse'), + ('America/Winnipeg'), + ('America/Yakutat'), + ('America/Yellowknife'), + ('Antarctica/Casey'), + ('Antarctica/Davis'), + ('Antarctica/DumontDUrville'), + ('Antarctica/Mawson'), + ('Antarctica/McMurdo'), + ('Antarctica/Palmer'), + ('Antarctica/Rothera'), + ('Antarctica/South_Pole'), + ('Antarctica/Syowa'), + ('Antarctica/Vostok'), + ('Arctic/Longyearbyen'), + ('Asia/Aden'), + ('Asia/Almaty'), + ('Asia/Amman'), + ('Asia/Anadyr'), + ('Asia/Aqtau'), + ('Asia/Aqtobe'), + ('Asia/Ashgabat'), + ('Asia/Ashkhabad'), + ('Asia/Baghdad'), + ('Asia/Bahrain'), + ('Asia/Baku'), + ('Asia/Bangkok'), + ('Asia/Beirut'), + ('Asia/Bishkek'), + ('Asia/Brunei'), + ('Asia/Calcutta'), + ('Asia/Choibalsan'), + ('Asia/Chongqing'), + ('Asia/Chungking'), + ('Asia/Colombo'), + ('Asia/Dacca'), + ('Asia/Damascus'), + ('Asia/Dhaka'), + ('Asia/Dili'), + ('Asia/Dubai'), + ('Asia/Dushanbe'), + ('Asia/Gaza'), + ('Asia/Harbin'), + ('Asia/Ho_Chi_Minh'), + ('Asia/Hong_Kong'), + ('Asia/Hovd'), + ('Asia/Irkutsk'), + ('Asia/Istanbul'), + ('Asia/Jakarta'), + ('Asia/Jayapura'), + ('Asia/Jerusalem'), + ('Asia/Kabul'), + ('Asia/Kamchatka'), + ('Asia/Karachi'), + ('Asia/Kashgar'), + ('Asia/Kathmandu'), + ('Asia/Katmandu'), + ('Asia/Kolkata'), + ('Asia/Krasnoyarsk'), + ('Asia/Kuala_Lumpur'), + ('Asia/Kuching'), + ('Asia/Kuwait'), + ('Asia/Macao'), + ('Asia/Macau'), + ('Asia/Magadan'), + ('Asia/Makassar'), + ('Asia/Manila'), + ('Asia/Muscat'), + ('Asia/Nicosia'), + ('Asia/Novosibirsk'), + ('Asia/Omsk'), + ('Asia/Oral'), + ('Asia/Phnom_Penh'), + ('Asia/Pontianak'), + ('Asia/Pyongyang'), + ('Asia/Qatar'), + ('Asia/Qyzylorda'), + ('Asia/Rangoon'), + ('Asia/Riyadh'), + ('Asia/Saigon'), + ('Asia/Sakhalin'), + ('Asia/Samarkand'), + ('Asia/Seoul'), + ('Asia/Shanghai'), + ('Asia/Singapore'), + ('Asia/Taipei'), + ('Asia/Tashkent'), + ('Asia/Tbilisi'), + ('Asia/Tehran'), + ('Asia/Tel_Aviv'), + ('Asia/Thimbu'), + ('Asia/Thimphu'), + ('Asia/Tokyo'), + ('Asia/Ujung_Pandang'), + ('Asia/Ulaanbaatar'), + ('Asia/Ulan_Bator'), + ('Asia/Urumqi'), + ('Asia/Vientiane'), + ('Asia/Vladivostok'), + ('Asia/Yakutsk'), + ('Asia/Yekaterinburg'), + ('Asia/Yerevan'), + ('Atlantic/Azores'), + ('Atlantic/Bermuda'), + ('Atlantic/Canary'), + ('Atlantic/Cape_Verde'), + ('Atlantic/Faeroe'), + ('Atlantic/Faroe'), + ('Atlantic/Jan_Mayen'), + ('Atlantic/Madeira'), + ('Atlantic/Reykjavik'), + ('Atlantic/South_Georgia'), + ('Atlantic/St_Helena'), + ('Atlantic/Stanley'), + ('Australia/ACT'), + ('Australia/Adelaide'), + ('Australia/Brisbane'), + ('Australia/Broken_Hill'), + ('Australia/Canberra'), + ('Australia/Currie'), + ('Australia/Darwin'), + ('Australia/Eucla'), + ('Australia/Hobart'), + ('Australia/LHI'), + ('Australia/Lindeman'), + ('Australia/Lord_Howe'), + ('Australia/Melbourne'), + ('Australia/North'), + ('Australia/NSW'), + ('Australia/Perth'), + ('Australia/Queensland'), + ('Australia/South'), + ('Australia/Sydney'), + ('Australia/Tasmania'), + ('Australia/Victoria'), + ('Australia/West'), + ('Australia/Yancowinna'), + ('Europe/Amsterdam'), + ('Europe/Andorra'), + ('Europe/Athens'), + ('Europe/Belfast'), + ('Europe/Belgrade'), + ('Europe/Berlin'), + ('Europe/Bratislava'), + ('Europe/Brussels'), + ('Europe/Bucharest'), + ('Europe/Budapest'), + ('Europe/Chisinau'), + ('Europe/Copenhagen'), + ('Europe/Dublin'), + ('Europe/Gibraltar'), + ('Europe/Guernsey'), + ('Europe/Helsinki'), + ('Europe/Isle_of_Man'), + ('Europe/Istanbul'), + ('Europe/Jersey'), + ('Europe/Kaliningrad'), + ('Europe/Kiev'), + ('Europe/Lisbon'), + ('Europe/Ljubljana'), + ('Europe/London'), + ('Europe/Luxembourg'), + ('Europe/Madrid'), + ('Europe/Malta'), + ('Europe/Mariehamn'), + ('Europe/Minsk'), + ('Europe/Monaco'), + ('Europe/Moscow'), + ('Europe/Nicosia'), + ('Europe/Oslo'), + ('Europe/Paris'), + ('Europe/Podgorica'), + ('Europe/Prague'), + ('Europe/Riga'), + ('Europe/Rome'), + ('Europe/Samara'), + ('Europe/San_Marino'), + ('Europe/Sarajevo'), + ('Europe/Simferopol'), + ('Europe/Skopje'), + ('Europe/Sofia'), + ('Europe/Stockholm'), + ('Europe/Tallinn'), + ('Europe/Tirane'), + ('Europe/Tiraspol'), + ('Europe/Uzhgorod'), + ('Europe/Vaduz'), + ('Europe/Vatican'), + ('Europe/Vienna'), + ('Europe/Vilnius'), + ('Europe/Volgograd'), + ('Europe/Warsaw'), + ('Europe/Zagreb'), + ('Europe/Zaporozhye'), + ('Europe/Zurich'), + ('Indian/Antananarivo'), + ('Indian/Chagos'), + ('Indian/Christmas'), + ('Indian/Cocos'), + ('Indian/Comoro'), + ('Indian/Kerguelen'), + ('Indian/Mahe'), + ('Indian/Maldives'), + ('Indian/Mauritius'), + ('Indian/Mayotte'), + ('Indian/Reunion'), + ('Pacific/Apia'), + ('Pacific/Auckland'), + ('Pacific/Chatham'), + ('Pacific/Easter'), + ('Pacific/Efate'), + ('Pacific/Enderbury'), + ('Pacific/Fakaofo'), + ('Pacific/Fiji'), + ('Pacific/Funafuti'), + ('Pacific/Galapagos'), + ('Pacific/Gambier'), + ('Pacific/Guadalcanal'), + ('Pacific/Guam'), + ('Pacific/Honolulu'), + ('Pacific/Johnston'), + ('Pacific/Kiritimati'), + ('Pacific/Kosrae'), + ('Pacific/Kwajalein'), + ('Pacific/Majuro'), + ('Pacific/Marquesas'), + ('Pacific/Midway'), + ('Pacific/Nauru'), + ('Pacific/Niue'), + ('Pacific/Norfolk'), + ('Pacific/Noumea'), + ('Pacific/Pago_Pago'), + ('Pacific/Palau'), + ('Pacific/Pitcairn'), + ('Pacific/Ponape'), + ('Pacific/Port_Moresby'), + ('Pacific/Rarotonga'), + ('Pacific/Saipan'), + ('Pacific/Samoa'), + ('Pacific/Tahiti'), + ('Pacific/Tarawa'), + ('Pacific/Tongatapu'), + ('Pacific/Truk'), + ('Pacific/Wake'), + ('Pacific/Wallis'), + ('Pacific/Yap'), + ('Brazil/Acre'), + ('Brazil/DeNoronha'), + ('Brazil/East'), + ('Brazil/West'), + ('Canada/Atlantic'), + ('Canada/Central'), + ('Canada/East-Saskatchewan'), + ('Canada/Eastern'), + ('Canada/Mountain'), + ('Canada/Newfoundland'), + ('Canada/Pacific'), + ('Canada/Saskatchewan'), + ('Canada/Yukon'), + ('CET'), + ('Chile/Continental'), + ('Chile/EasterIsland'), + ('CST6CDT'), + ('Cuba'), + ('EET'), + ('Egypt'), + ('Eire'), + ('EST'), + ('EST5EDT'), + ('Etc/GMT'), + ('Etc/GMT+0'), + ('Etc/GMT+1'), + ('Etc/GMT+10'), + ('Etc/GMT+11'), + ('Etc/GMT+12'), + ('Etc/GMT+2'), + ('Etc/GMT+3'), + ('Etc/GMT+4'), + ('Etc/GMT+5'), + ('Etc/GMT+6'), + ('Etc/GMT+7'), + ('Etc/GMT+8'), + ('Etc/GMT+9'), + ('Etc/GMT-0'), + ('Etc/GMT-1'), + ('Etc/GMT-10'), + ('Etc/GMT-11'), + ('Etc/GMT-12'), + ('Etc/GMT-13'), + ('Etc/GMT-14'), + ('Etc/GMT-2'), + ('Etc/GMT-3'), + ('Etc/GMT-4'), + ('Etc/GMT-5'), + ('Etc/GMT-6'), + ('Etc/GMT-7'), + ('Etc/GMT-8'), + ('Etc/GMT-9'), + ('Etc/GMT0'), + ('Etc/Greenwich'), + ('Etc/UCT'), + ('Etc/Universal'), + ('Etc/UTC'), + ('Etc/Zulu'), + ('Factory'), + ('GB'), + ('GB-Eire'), + ('GMT'), + ('GMT+0'), + ('GMT-0'), + ('GMT0'), + ('Greenwich'), + ('Hongkong'), + ('HST'), + ('Iceland'), + ('Iran'), + ('Israel'), + ('Jamaica'), + ('Japan'), + ('Kwajalein'), + ('Libya'), + ('MET'), + ('Mexico/BajaNorte'), + ('Mexico/BajaSur'), + ('Mexico/General'), + ('MST'), + ('MST7MDT'), + ('Navajo'), + ('NZ'), + ('NZ-CHAT'), + ('Poland'), + ('Portugal'), + ('PRC'), + ('PST8PDT'), + ('ROC'), + ('ROK'), + ('Singapore'), + ('Turkey'), + ('UCT'), + ('Universal'), + ('US/Alaska'), + ('US/Aleutian'), + ('US/Arizona'), + ('US/Central'), + ('US/East-Indiana'), + ('US/Eastern'), + ('US/Hawaii'), + ('US/Indiana-Starke'), + ('US/Michigan'), + ('US/Mountain'), + ('US/Pacific'), + ('US/Pacific-New'), + ('US/Samoa'), + ('UTC'), + ('W-SU'), + ('WET'), + ('Zulu'); + +DELETE FROM `PREFIX_discount_category` +WHERE `id_discount` IN ( + SELECT `id_discount` FROM ( + SELECT dc.`id_discount` + FROM `PREFIX_discount_category` dc + LEFT JOIN `PREFIX_discount`d ON (d.`id_discount` = dc.`id_discount`) + WHERE d.`id_discount` IS NULL + GROUP BY dc.`id_discount`) discount_category_tmp + ); + +DELETE FROM `PREFIX_configuration` WHERE `name` = 'PS_DISPLAY_WITHOUT_TAX'; + +INSERT INTO PREFIX_hook (`name`, `title`, `description`, `position`) VALUES + ('updateCarrier', 'Carrier update', 'This hook is called when a carrier is updated', 0); diff --git a/install-new/upgrade/sql/1.2.0.3.sql b/install-new/upgrade/sql/1.2.0.3.sql new file mode 100644 index 000000000..9f6f078ee --- /dev/null +++ b/install-new/upgrade/sql/1.2.0.3.sql @@ -0,0 +1,33 @@ +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ + +ALTER TABLE `PREFIX_customization` + ADD `quantity_refunded` INT NOT NULL DEFAULT '0'; +ALTER TABLE `PREFIX_customization` + ADD `quantity_returned` INT NOT NULL DEFAULT '0'; + +ALTER TABLE `PREFIX_alias` + CHANGE `id_alias` `id_alias` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT; +ALTER TABLE `PREFIX_attribute_impact` + CHANGE `id_attribute_impact` `id_attribute_impact` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT; +ALTER TABLE `PREFIX_customization` + CHANGE `id_customization` `id_customization` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT; +ALTER TABLE `PREFIX_customization_field` + CHANGE `id_customization_field` `id_customization_field` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT; +ALTER TABLE `PREFIX_subdomain` + CHANGE `id_subdomain` `id_subdomain` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT; + + +/* ##################################### */ +/* CONTENTS */ +/* ##################################### */ + +INSERT INTO `PREFIX_search_engine` (`server`,`getvar`) VALUES + ('bing.com','q'); + +INSERT INTO `PREFIX_hook_module` (`id_module`, `id_hook`, `position`) VALUES + (19, 9, 1); + diff --git a/install-new/upgrade/sql/1.2.0.4.sql b/install-new/upgrade/sql/1.2.0.4.sql new file mode 100644 index 000000000..2b4f66a32 --- /dev/null +++ b/install-new/upgrade/sql/1.2.0.4.sql @@ -0,0 +1,10 @@ +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ + +/* ##################################### */ +/* CONTENTS */ +/* ##################################### */ + diff --git a/install-new/upgrade/sql/1.2.0.5.sql b/install-new/upgrade/sql/1.2.0.5.sql new file mode 100644 index 000000000..7512ab24a --- /dev/null +++ b/install-new/upgrade/sql/1.2.0.5.sql @@ -0,0 +1,17 @@ +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ + +/* ##################################### */ +/* CONTENTS */ +/* ##################################### */ + +UPDATE `PREFIX_order_state_lang` +SET `name` = 'Shipped' +WHERE `id_order_state` = 4 AND `id_lang` = 1; + +UPDATE `PREFIX_order_state_lang` SET `template` = 'shipped' WHERE `id_order_state` = 4 AND `template` = 'shipping'; + +/* PHP:reorderpositions(); */; \ No newline at end of file diff --git a/install-new/upgrade/sql/1.2.0.6.sql b/install-new/upgrade/sql/1.2.0.6.sql new file mode 100644 index 000000000..fc88820b8 --- /dev/null +++ b/install-new/upgrade/sql/1.2.0.6.sql @@ -0,0 +1,14 @@ +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ + +ALTER TABLE `PREFIX_configuration` DROP INDEX `configuration_name`; +ALTER TABLE `PREFIX_order_detail` ADD `product_quantity_in_stock` INT(10) NOT NULL DEFAULT 0 AFTER `product_quantity`; +ALTER TABLE `PREFIX_order_detail` ADD `product_quantity_reinjected` INT(10) UNSIGNED NOT NULL DEFAULT 0 AFTER `product_quantity_return`; + +/* ##################################### */ +/* CONTENTS */ +/* ##################################### */ +UPDATE `PREFIX_product` SET `out_of_stock` = 0 WHERE `id_product` IN ((SELECT `id_product` FROM `PREFIX_product_download`)); diff --git a/install-new/upgrade/sql/1.2.0.7.sql b/install-new/upgrade/sql/1.2.0.7.sql new file mode 100644 index 000000000..5cd1d4109 --- /dev/null +++ b/install-new/upgrade/sql/1.2.0.7.sql @@ -0,0 +1,12 @@ +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ + + +/* ##################################### */ +/* CONTENTS */ +/* ##################################### */ + +/* PHP:update_modules_sql(); */; diff --git a/install-new/upgrade/sql/1.2.0.8.sql b/install-new/upgrade/sql/1.2.0.8.sql new file mode 100644 index 000000000..eeda18cd2 --- /dev/null +++ b/install-new/upgrade/sql/1.2.0.8.sql @@ -0,0 +1,10 @@ +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ + + +/* ##################################### */ +/* CONTENTS */ +/* ##################################### */ diff --git a/install-new/upgrade/sql/1.2.1.0.sql b/install-new/upgrade/sql/1.2.1.0.sql new file mode 100644 index 000000000..d11032a29 --- /dev/null +++ b/install-new/upgrade/sql/1.2.1.0.sql @@ -0,0 +1,16 @@ +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ + + +/* ##################################### */ +/* CONTENTS */ +/* ##################################### */ + +INSERT INTO PREFIX_configuration (name, value, date_add, date_upd) VALUES ('PS_THEME_V11', 0, NOW(), NOW()); + +/* PHP */ +/* PHP:update_carrier_url(); */; +/* PHP:moduleReinstaller('blocksearch'); */; diff --git a/install-new/upgrade/sql/1.2.2.0.sql b/install-new/upgrade/sql/1.2.2.0.sql new file mode 100644 index 000000000..27e0498df --- /dev/null +++ b/install-new/upgrade/sql/1.2.2.0.sql @@ -0,0 +1,6 @@ +SET NAMES 'utf8'; + +ALTER TABLE `PREFIX_discount_category` ADD INDEX ( `id_discount` ); + +DELETE FROM `PREFIX_delivery` WHERE `id_range_weight` != NULL AND `id_range_weight` NOT IN (SELECT `id_range_weight` FROM `PREFIX_range_weight`); +DELETE FROM `PREFIX_delivery` WHERE `id_range_price` != NULL AND `id_range_weight` NOT IN (SELECT `id_range_price` FROM `PREFIX_range_price`); diff --git a/install-new/upgrade/sql/1.2.3.0.sql b/install-new/upgrade/sql/1.2.3.0.sql new file mode 100644 index 000000000..3f288763f --- /dev/null +++ b/install-new/upgrade/sql/1.2.3.0.sql @@ -0,0 +1,3 @@ +SET NAMES 'utf8'; + +ALTER TABLE `PREFIX_category_product` ADD INDEX (`id_product`); diff --git a/install-new/upgrade/sql/1.2.4.0.sql b/install-new/upgrade/sql/1.2.4.0.sql new file mode 100644 index 000000000..0b4cf1b2f --- /dev/null +++ b/install-new/upgrade/sql/1.2.4.0.sql @@ -0,0 +1 @@ +SET NAMES 'utf8'; diff --git a/install-new/upgrade/sql/1.2.5.0.sql b/install-new/upgrade/sql/1.2.5.0.sql new file mode 100644 index 000000000..0b4cf1b2f --- /dev/null +++ b/install-new/upgrade/sql/1.2.5.0.sql @@ -0,0 +1 @@ +SET NAMES 'utf8'; diff --git a/install-new/upgrade/sql/1.3.0.1.sql b/install-new/upgrade/sql/1.3.0.1.sql new file mode 100644 index 000000000..b043fd51b --- /dev/null +++ b/install-new/upgrade/sql/1.3.0.1.sql @@ -0,0 +1,92 @@ +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ + +ALTER TABLE `PREFIX_product` +CHANGE `reduction_from` `reduction_from` DATE NOT NULL DEFAULT '1970-01-01', +CHANGE `reduction_to` `reduction_to` DATE NOT NULL DEFAULT '1970-01-01'; + +ALTER TABLE `PREFIX_order_detail` CHANGE `tax_rate` `tax_rate` DECIMAL(10, 3) NOT NULL DEFAULT '0.000'; +ALTER TABLE `PREFIX_group` ADD `price_display_method` TINYINT NOT NULL DEFAULT 0 AFTER `reduction`; + +CREATE TABLE `PREFIX_carrier_group` ( + `id_carrier` int(10) unsigned NOT NULL, + `id_group` int(10) unsigned NOT NULL, + UNIQUE KEY `id_carrier` (`id_carrier`,`id_group`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +ALTER TABLE `PREFIX_country` ADD `need_identification_number` TINYINT( 1 ) NOT NULL; +ALTER TABLE `PREFIX_customer` ADD `dni` VARCHAR( 16 ) NULL AFTER `firstname`; + +ALTER TABLE `PREFIX_image` ADD INDEX `product_position` (`id_product`, `position`); +ALTER TABLE `PREFIX_hook_module` ADD INDEX `id_module` (`id_module`); +ALTER TABLE `PREFIX_customer` ADD INDEX `id_customer_passwd` (`id_customer`, `passwd`); +ALTER TABLE `PREFIX_tag` ADD INDEX `id_lang` (`id_lang`); +ALTER TABLE `PREFIX_customer_group` ADD INDEX `id_customer` (`id_customer`); +ALTER TABLE `PREFIX_category_group` ADD INDEX `id_category` (`id_category`); +ALTER TABLE `PREFIX_image` ADD INDEX `id_product_cover` (`id_product`, `cover`); +ALTER TABLE `PREFIX_employee` ADD INDEX `id_employee_passwd` (`id_employee`, `passwd`); +ALTER TABLE `PREFIX_product_attribute` ADD INDEX `product_default` (`id_product`, `default_on`); +ALTER TABLE `PREFIX_product_download` ADD INDEX `product_active` (`id_product`, `active`); +ALTER TABLE `PREFIX_tab` ADD INDEX `class_name` (`class_name`); +ALTER TABLE `PREFIX_module_currency` ADD INDEX `id_module` (`id_module`); +ALTER TABLE `PREFIX_product_attribute_combination` ADD INDEX `id_product_attribute` (`id_product_attribute`); +ALTER TABLE `PREFIX_orders` ADD INDEX `invoice_number` (`invoice_number`); +ALTER TABLE `PREFIX_product_tag` ADD INDEX `id_tag` (`id_tag`); +ALTER TABLE `PREFIX_cms_lang` CHANGE `id_cms` `id_cms` INT(10) UNSIGNED NOT NULL; +ALTER TABLE `PREFIX_tax` CHANGE `rate` `rate` DECIMAL(10, 3) NOT NULL; + +ALTER TABLE `PREFIX_order_detail` ADD `discount_quantity_applied` TINYINT(1) NOT NULL DEFAULT 0 AFTER `ecotax`; +ALTER TABLE `PREFIX_orders` ADD `total_products_wt` DECIMAL(10, 2) NOT NULL AFTER `total_products`; + +/* ##################################### */ +/* CONTENTS */ +/* ##################################### */ + +UPDATE IGNORE `PREFIX_group` SET `price_display_method` = IFNULL((SELECT `value` FROM `PREFIX_configuration` WHERE `name` = 'PS_PRICE_DISPLAY'), 0); + +UPDATE `PREFIX_configuration` +SET `value` = ROUND(value / (1 + ( + SELECT rate FROM ( + SELECT t.`rate`, COUNT(*) n + FROM `PREFIX_orders` o + LEFT JOIN `PREFIX_carrier` c ON (o.`id_carrier` = c.`id_carrier`) + LEFT JOIN `PREFIX_tax` t ON (t.`id_tax` = c.`id_tax`) + WHERE c.`deleted` = 0 + AND c.`shipping_handling` = 1 + GROUP BY o.`id_carrier` + ORDER BY n DESC + LIMIT 1 + ) myrate +) / 100), 6) +WHERE `name` = 'PS_SHIPPING_HANDLING'; + +DELETE FROM `PREFIX_configuration` WHERE `name` = 'PS_PRICE_DISPLAY'; +DELETE FROM `PREFIX_product_attachment` WHERE `id_product` NOT IN (SELECT `id_product` FROM `PREFIX_product`); +DELETE FROM `PREFIX_discount_quantity` WHERE `id_product` NOT IN (SELECT `id_product` FROM `PREFIX_product`); +DELETE FROM `PREFIX_pack` WHERE `id_product_pack` NOT IN (SELECT `id_product` FROM `PREFIX_product`) OR `id_product_item` NOT IN (SELECT `id_product` FROM `PREFIX_product`); +DELETE FROM `PREFIX_product_sale` WHERE `id_product` NOT IN (SELECT `id_product` FROM `PREFIX_product`); +DELETE FROM `PREFIX_scene_products` WHERE `id_product` NOT IN (SELECT `id_product` FROM `PREFIX_product`); +DELETE FROM `PREFIX_search_index` WHERE `id_product` NOT IN (SELECT `id_product` FROM `PREFIX_product`); +DELETE FROM `PREFIX_search_word` WHERE `id_word` NOT IN (SELECT `id_word` FROM `PREFIX_search_index`); +DELETE FROM `PREFIX_tag` WHERE `id_lang` NOT IN (SELECT `id_lang` FROM `PREFIX_lang`); +DELETE FROM `PREFIX_search_word` WHERE `id_lang` NOT IN (SELECT `id_lang` FROM `PREFIX_lang`); + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PRESTASTORE_LIVE', 1, NOW(), NOW()), +('PS_SHOW_ALL_MODULES', 0, NOW(), NOW()), +('PS_BACKUP_ALL', 0, NOW(), NOW()), +('PS_1_3_UPDATE_DATE', NOW(), NOW(), NOW()), +('PS_PRICE_ROUND_MODE', 2, NOW(), NOW()); +INSERT INTO `PREFIX_hook` (`name`, `title`, `description`, `position`) VALUES +('createAccountTop', 'Block above the form for create an account', NULL , '1'), +('backOfficeHeader', 'Administration panel header', NULL , '0'), +('backOfficeTop', 'Administration panel top hover the tabs', NULL , '1'), +('backOfficeFooter', 'Administration panel footer', NULL , '1'); + +INSERT INTO `PREFIX_carrier_group` (id_carrier, id_group) (SELECT id_carrier, id_group FROM `PREFIX_carrier` c, `PREFIX_group` g WHERE c.active = 1); + +/* PHP */ +/* PHP:convert_product_price(); */; diff --git a/install-new/upgrade/sql/1.3.0.10.sql b/install-new/upgrade/sql/1.3.0.10.sql new file mode 100644 index 000000000..5354e7131 --- /dev/null +++ b/install-new/upgrade/sql/1.3.0.10.sql @@ -0,0 +1,5 @@ +SET NAMES 'utf8'; + +ALTER TABLE `PREFIX_order_detail` ADD INDEX `id_order_id_order_detail` (`id_order`, `id_order_detail`); +ALTER TABLE `PREFIX_category_group` ADD INDEX `id_group` (`id_group`); +ALTER TABLE `PREFIX_product` ADD INDEX `date_add` (`date_add`); \ No newline at end of file diff --git a/install-new/upgrade/sql/1.3.0.2.sql b/install-new/upgrade/sql/1.3.0.2.sql new file mode 100644 index 000000000..9069781e8 --- /dev/null +++ b/install-new/upgrade/sql/1.3.0.2.sql @@ -0,0 +1,147 @@ +SET NAMES 'utf8'; + +/* ##################################### */ +/* STRUCTURE */ +/* ##################################### */ + +ALTER TABLE `PREFIX_product_attachment` +CHANGE `id_product` `id_product` INT(10) UNSIGNED NOT NULL, +CHANGE `id_attachment` `id_attachment` INT(10) UNSIGNED NOT NULL; + +ALTER TABLE `PREFIX_attribute_impact` +CHANGE `id_product` `id_product` INT(11) UNSIGNED NOT NULL, +CHANGE `id_attribute` `id_attribute` INT(11) UNSIGNED NOT NULL; + +ALTER TABLE `PREFIX_block_cms` +CHANGE `id_block` `id_block` INT(10) UNSIGNED NOT NULL, +CHANGE `id_cms` `id_cms` INT(10) UNSIGNED NOT NULL; + +ALTER TABLE `PREFIX_customization` +CHANGE `id_cart` `id_cart` int(10) unsigned NOT NULL, +CHANGE `id_product_attribute` `id_product_attribute` int(10) unsigned NOT NULL default '0'; + +ALTER TABLE `PREFIX_customization_field` +CHANGE `id_product` `id_product` int(10) unsigned NOT NULL; + +ALTER TABLE `PREFIX_customization_field_lang` +CHANGE `id_customization_field` `id_customization_field` int(10) unsigned NOT NULL, +CHANGE `id_lang` `id_lang` int(10) unsigned NOT NULL; + +ALTER TABLE `PREFIX_customized_data` +CHANGE `id_customization` `id_customization` int(10) unsigned NOT NULL; + +ALTER TABLE `PREFIX_discount_category` +CHANGE `id_category` `id_category` int(11) unsigned NOT NULL, +CHANGE `id_discount` `id_discount` int(11) unsigned NOT NULL; + +ALTER TABLE `PREFIX_module_group` +CHANGE `id_group` `id_group` int(11) unsigned NOT NULL; + +ALTER TABLE `PREFIX_order_return_detail` +CHANGE `id_customization` `id_customization` int(10) unsigned NOT NULL default '0'; + +ALTER TABLE `PREFIX_product_attribute_image` +CHANGE `id_product_attribute` `id_product_attribute` int(10) unsigned NOT NULL, +CHANGE `id_image` `id_image` int(10) unsigned NOT NULL; + +ALTER TABLE `PREFIX_referrer_cache` +CHANGE `id_connections_source` `id_connections_source` int(11) unsigned NOT NULL, +CHANGE `id_referrer` `id_referrer` int(11) unsigned NOT NULL; + +ALTER TABLE `PREFIX_scene_category` +CHANGE `id_scene` `id_scene` int(10) unsigned NOT NULL, +CHANGE `id_category` `id_category` int(10) unsigned NOT NULL; + +ALTER TABLE `PREFIX_scene_lang` +CHANGE `id_scene` `id_scene` int(10) unsigned NOT NULL, +CHANGE `id_lang` `id_lang` int(10) unsigned NOT NULL; + +ALTER TABLE `PREFIX_scene_products` +CHANGE `id_scene` `id_scene` int(10) unsigned NOT NULL, +CHANGE `id_product` `id_product` int(10) unsigned NOT NULL; + +ALTER TABLE `PREFIX_search_index` +CHANGE `id_product` `id_product` int(11) unsigned NOT NULL, +CHANGE `id_word` `id_word` int(11) unsigned NOT NULL; + +ALTER TABLE `PREFIX_state` +CHANGE `id_country` `id_country` int(11) unsigned NOT NULL, +CHANGE `id_zone` `id_zone` int(11) unsigned NOT NULL; + +ALTER TABLE `PREFIX_category_lang` +CHANGE `meta_keywords` `meta_keywords` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, +CHANGE `meta_description` `meta_description` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ; + +ALTER TABLE `PREFIX_supplier_lang` +CHANGE `meta_title` `meta_title` VARCHAR( 128 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, +CHANGE `meta_keywords` `meta_keywords` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, +CHANGE `meta_description` `meta_description` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ; + +ALTER TABLE `PREFIX_manufacturer_lang` +CHANGE `meta_title` `meta_title` VARCHAR( 128 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, +CHANGE `meta_keywords` `meta_keywords` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, +CHANGE `meta_description` `meta_description` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ; + +ALTER TABLE `PREFIX_meta_lang` +CHANGE `title` `title` VARCHAR( 128 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ; + +/* ##################################### */ +/* PRICE RANGE */ +/* ##################################### */ + +ALTER TABLE `PREFIX_attribute_impact` CHANGE `price` `price` DECIMAL(17, 2) NOT NULL; + +ALTER TABLE `PREFIX_delivery` CHANGE `price` `price` DECIMAL(17, 2) NOT NULL; + +ALTER TABLE `PREFIX_discount` CHANGE `value` `value` DECIMAL(17, 2) NOT NULL DEFAULT '0.00', +CHANGE `minimal` `minimal` DECIMAL(17, 2) NULL DEFAULT NULL; + +ALTER TABLE `PREFIX_discount_quantity` CHANGE `value` `value` DECIMAL(17, 2) UNSIGNED NOT NULL; + +ALTER TABLE `PREFIX_group` CHANGE `reduction` `reduction` DECIMAL(17, 2) NOT NULL DEFAULT '0.00'; + +ALTER TABLE `PREFIX_orders` CHANGE `total_discounts` `total_discounts` DECIMAL(17, 2) NOT NULL DEFAULT '0.00', +CHANGE `total_paid` `total_paid` DECIMAL(17, 2) NOT NULL DEFAULT '0.00', +CHANGE `total_paid_real` `total_paid_real` DECIMAL(17, 2) NOT NULL DEFAULT '0.00', +CHANGE `total_products` `total_products` DECIMAL(17, 2) NOT NULL DEFAULT '0.00', +CHANGE `total_products_wt` `total_products_wt` DECIMAL(17, 2) NOT NULL DEFAULT '0.00', +CHANGE `total_shipping` `total_shipping` DECIMAL(17, 2) NOT NULL DEFAULT '0.00', +CHANGE `total_wrapping` `total_wrapping` DECIMAL(17, 2) NOT NULL DEFAULT '0.00'; + +ALTER TABLE `PREFIX_order_detail` CHANGE `product_price` `product_price` DECIMAL(20, 6) NOT NULL DEFAULT '0.000000', +CHANGE `product_quantity_discount` `product_quantity_discount` DECIMAL(20, 6) NOT NULL DEFAULT '0.000000', +CHANGE `ecotax` `ecotax` decimal(17,2) NOT NULL default '0.00'; + +ALTER TABLE `PREFIX_order_discount` CHANGE `value` `value` DECIMAL(17, 2) NOT NULL DEFAULT '0.00'; + +ALTER TABLE `PREFIX_product` CHANGE `price` `price` DECIMAL(20, 6) NOT NULL DEFAULT '0.000000', +CHANGE `wholesale_price` `wholesale_price` DECIMAL(20, 6) NOT NULL DEFAULT '0.000000', +CHANGE `ecotax` `ecotax` DECIMAL(17, 2) NOT NULL DEFAULT '0.00', +CHANGE `reduction_price` `reduction_price` DECIMAL(17, 2) NULL DEFAULT NULL; + +ALTER TABLE `PREFIX_product_attribute` CHANGE `wholesale_price` `wholesale_price` DECIMAL(20, 6) NOT NULL DEFAULT '0.000000', +CHANGE `price` `price` DECIMAL(17, 2) NOT NULL DEFAULT '0.00', +CHANGE `ecotax` `ecotax` DECIMAL(17, 2) NOT NULL DEFAULT '0.00'; + +ALTER TABLE `PREFIX_range_price` CHANGE `delimiter1` `delimiter1` DECIMAL(20, 6) NOT NULL, +CHANGE `delimiter2` `delimiter2` DECIMAL(20, 6) NOT NULL; + +ALTER TABLE `PREFIX_range_weight` CHANGE `delimiter1` `delimiter1` DECIMAL(20, 6) NOT NULL, +CHANGE `delimiter2` `delimiter2` DECIMAL(20, 6) NOT NULL; + +ALTER TABLE `PREFIX_referrer` CHANGE `cache_sales` `cache_sales` DECIMAL(17, 2) NULL DEFAULT NULL; + +UPDATE `PREFIX_configuration` +SET `value` = IFNULL(ROUND(value / (1 + ( + SELECT `rate` + FROM `PREFIX_tax` + WHERE `id_tax` = ( + SELECT `value` + FROM ( + SELECT `value` + FROM `PREFIX_configuration` + WHERE `name` = 'PS_GIFT_WRAPPING_TAX' + )tmp + ) +) / 100), 2), 0) +WHERE `name` = 'PS_GIFT_WRAPPING_PRICE'; diff --git a/install-new/upgrade/sql/1.3.0.3.sql b/install-new/upgrade/sql/1.3.0.3.sql new file mode 100644 index 000000000..7adb283eb --- /dev/null +++ b/install-new/upgrade/sql/1.3.0.3.sql @@ -0,0 +1,15 @@ +SET NAMES 'utf8'; + +ALTER TABLE `PREFIX_tab` CHANGE `id_parent` `id_parent` INT(11) NOT NULL; +INSERT INTO `PREFIX_tab` (`id_tab`, `class_name`, `id_parent`, `position`) +VALUES (43, 'AdminSearch', -1, 0) +ON DUPLICATE KEY +UPDATE `id_parent` = -1; + +ALTER TABLE `PREFIX_search_engine` ADD UNIQUE (`server`,`getvar`); +REPLACE INTO `PREFIX_search_engine` (`server`,`getvar`) +VALUES ('google','q'),('aol','q'),('yandex','text'),('ask.com','q'),('nhl.com','q'),('yahoo','p'),('baidu','wd'), +('lycos','query'),('exalead','q'),('search.live','q'),('voila','rdata'),('altavista','q'),('bing','q'),('daum','q'), +('eniro','search_word'),('naver','query'),('msn','q'),('netscape','query'),('cnn','query'),('about','terms'),('mamma','query'), +('alltheweb','q'),('virgilio','qs'),('alice','qs'),('najdi','q'),('mama','query'),('seznam','q'),('onet','qt'),('szukacz','q'), +('yam','k'),('pchome','q'),('kvasir','q'),('sesam','q'),('ozu','q'),('terra','query'),('mynet','q'),('ekolay','q'),('rambler','words'); \ No newline at end of file diff --git a/install-new/upgrade/sql/1.3.0.4.sql b/install-new/upgrade/sql/1.3.0.4.sql new file mode 100644 index 000000000..46ad8ccb4 --- /dev/null +++ b/install-new/upgrade/sql/1.3.0.4.sql @@ -0,0 +1,83 @@ +SET NAMES 'utf8'; + +DELETE FROM `PREFIX_tax_state` WHERE `id_tax` NOT IN (SELECT `id_tax` FROM `PREFIX_tax`); + +ALTER TABLE `PREFIX_product` CHANGE `reduction_from` `reduction_from` DATETIME NOT NULL DEFAULT '1970-01-01 00:00:00', +CHANGE `reduction_to` `reduction_to` DATETIME NOT NULL DEFAULT '1970-01-01 00:00:00'; + +UPDATE `PREFIX_product` +SET `reduction_to` = DATE_ADD(reduction_to, INTERVAL 1 DAY) +WHERE `reduction_from` != `reduction_to`; + +ALTER TABLE `PREFIX_discount` ADD `id_currency` INT UNSIGNED NOT NULL DEFAULT 0 AFTER `id_customer`; +UPDATE `PREFIX_discount` SET `id_currency` = (SELECT `value` FROM `PREFIX_configuration` WHERE `name` = 'PS_CURRENCY_DEFAULT' LIMIT 1) WHERE `id_discount_type` = 2; + +ALTER TABLE `PREFIX_address` ADD INDEX (id_country); +ALTER TABLE `PREFIX_address` ADD INDEX (id_state); +ALTER TABLE `PREFIX_address` ADD INDEX (id_manufacturer); +ALTER TABLE `PREFIX_address` ADD INDEX (id_supplier); +ALTER TABLE `PREFIX_carrier` ADD INDEX (id_tax); +ALTER TABLE `PREFIX_cart` ADD INDEX (id_address_delivery); +ALTER TABLE `PREFIX_cart` ADD INDEX (id_address_invoice); +ALTER TABLE `PREFIX_cart` ADD INDEX (id_carrier); +ALTER TABLE `PREFIX_cart` ADD INDEX (id_lang); +ALTER TABLE `PREFIX_cart` ADD INDEX (id_currency); +ALTER TABLE `PREFIX_cart_product` ADD INDEX (id_product_attribute); +ALTER TABLE `PREFIX_connections` ADD INDEX (id_page); +ALTER TABLE `PREFIX_customer` ADD INDEX (id_gender); +ALTER TABLE `PREFIX_customization` ADD INDEX (id_product_attribute); +ALTER TABLE `PREFIX_customization_field` ADD INDEX (id_product); +ALTER TABLE `PREFIX_delivery` ADD INDEX (id_range_price); +ALTER TABLE `PREFIX_delivery` ADD INDEX (id_range_weight); +ALTER TABLE `PREFIX_discount` ADD INDEX (id_discount_type); +ALTER TABLE `PREFIX_discount_quantity` ADD INDEX (id_discount_type); +ALTER TABLE `PREFIX_discount_quantity` ADD INDEX (id_product); +ALTER TABLE `PREFIX_discount_quantity` ADD INDEX (id_product_attribute); +ALTER TABLE `PREFIX_employee` ADD INDEX (id_profile); +ALTER TABLE `PREFIX_feature_product` ADD INDEX (id_feature_value); +ALTER TABLE `PREFIX_guest` ADD INDEX (id_operating_system); +ALTER TABLE `PREFIX_guest` ADD INDEX (id_web_browser); +ALTER TABLE `PREFIX_hook_module_exceptions` ADD INDEX (id_module); +ALTER TABLE `PREFIX_hook_module_exceptions` ADD INDEX (id_hook); +ALTER TABLE `PREFIX_message` ADD INDEX (id_cart); +ALTER TABLE `PREFIX_message` ADD INDEX (id_customer); +ALTER TABLE `PREFIX_message` ADD INDEX (id_employee); +ALTER TABLE `PREFIX_order_detail` ADD INDEX (product_attribute_id); +ALTER TABLE `PREFIX_order_discount` ADD INDEX (id_discount); +ALTER TABLE `PREFIX_order_history` ADD INDEX (id_employee); +ALTER TABLE `PREFIX_order_history` ADD INDEX (id_order_state); +ALTER TABLE `PREFIX_order_return` ADD INDEX (id_order); +ALTER TABLE `PREFIX_order_slip` ADD INDEX (id_order); +ALTER TABLE `PREFIX_orders` ADD INDEX (id_carrier); +ALTER TABLE `PREFIX_orders` ADD INDEX (id_lang); +ALTER TABLE `PREFIX_orders` ADD INDEX (id_currency); +ALTER TABLE `PREFIX_orders` ADD INDEX (id_address_delivery); +ALTER TABLE `PREFIX_orders` ADD INDEX (id_address_invoice); +ALTER TABLE `PREFIX_product` ADD INDEX (id_tax); +ALTER TABLE `PREFIX_product` ADD INDEX (id_category_default); +ALTER TABLE `PREFIX_product` ADD INDEX (id_color_default); +ALTER TABLE `PREFIX_state` ADD INDEX (id_country); +ALTER TABLE `PREFIX_state` ADD INDEX (id_zone); +ALTER TABLE `PREFIX_tab` ADD INDEX (id_parent); +ALTER TABLE `PREFIX_cart` ADD INDEX (id_guest); + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) +( + SELECT 'MA_LAST_QTIES', '3', NOW(), NOW() + FROM `PREFIX_module` WHERE `name` = 'mailalerts' +); + +ALTER TABLE `PREFIX_customer` ADD `id_default_group` INT UNSIGNED NOT NULL DEFAULT '1' AFTER `id_gender`; + +UPDATE `PREFIX_customer` c SET `id_default_group` = ( + SELECT ( + IFNULL( + (SELECT g.`id_group` + FROM `PREFIX_group` g + LEFT JOIN `PREFIX_customer_group` cg ON (cg.`id_group` = g.`id_group`) + WHERE g.`reduction` > 0 AND cg.`id_customer` = c.`id_customer` + ORDER BY g.`reduction` + LIMIT 1) + , 1) + ) +); diff --git a/install-new/upgrade/sql/1.3.0.5.sql b/install-new/upgrade/sql/1.3.0.5.sql new file mode 100644 index 000000000..0b4cf1b2f --- /dev/null +++ b/install-new/upgrade/sql/1.3.0.5.sql @@ -0,0 +1 @@ +SET NAMES 'utf8'; diff --git a/install-new/upgrade/sql/1.3.0.6.sql b/install-new/upgrade/sql/1.3.0.6.sql new file mode 100644 index 000000000..0b4cf1b2f --- /dev/null +++ b/install-new/upgrade/sql/1.3.0.6.sql @@ -0,0 +1 @@ +SET NAMES 'utf8'; diff --git a/install-new/upgrade/sql/1.3.0.7.sql b/install-new/upgrade/sql/1.3.0.7.sql new file mode 100644 index 000000000..158212ef5 --- /dev/null +++ b/install-new/upgrade/sql/1.3.0.7.sql @@ -0,0 +1,3 @@ +SET NAMES 'utf8'; + +/* PHP:setAllGroupsOnHomeCategory(); */; diff --git a/install-new/upgrade/sql/1.3.0.8.sql b/install-new/upgrade/sql/1.3.0.8.sql new file mode 100644 index 000000000..e988c8279 --- /dev/null +++ b/install-new/upgrade/sql/1.3.0.8.sql @@ -0,0 +1,5 @@ +SET NAMES 'utf8'; + +ALTER TABLE `PREFIX_product_attribute` ADD INDEX `id_product_id_product_attribute` (`id_product_attribute` , `id_product`); +ALTER TABLE `PREFIX_image_lang` ADD INDEX `id_image` (`id_image`); + diff --git a/install-new/upgrade/sql/1.3.0.9.sql b/install-new/upgrade/sql/1.3.0.9.sql new file mode 100644 index 000000000..0b4cf1b2f --- /dev/null +++ b/install-new/upgrade/sql/1.3.0.9.sql @@ -0,0 +1 @@ +SET NAMES 'utf8'; diff --git a/install-new/upgrade/sql/1.3.1.1.sql b/install-new/upgrade/sql/1.3.1.1.sql new file mode 100644 index 000000000..0b4cf1b2f --- /dev/null +++ b/install-new/upgrade/sql/1.3.1.1.sql @@ -0,0 +1 @@ +SET NAMES 'utf8'; diff --git a/install-new/upgrade/sql/1.3.2.1.sql b/install-new/upgrade/sql/1.3.2.1.sql new file mode 100644 index 000000000..da21b32f2 --- /dev/null +++ b/install-new/upgrade/sql/1.3.2.1.sql @@ -0,0 +1,3 @@ +SET NAMES 'utf8'; + + diff --git a/install-new/upgrade/sql/1.3.2.2.sql b/install-new/upgrade/sql/1.3.2.2.sql new file mode 100644 index 000000000..180ac77b6 --- /dev/null +++ b/install-new/upgrade/sql/1.3.2.2.sql @@ -0,0 +1,27 @@ +SET NAMES 'utf8'; + +ALTER TABLE `PREFIX_order_detail` ADD `reduction_percent` DECIMAL(10, 2) NOT NULL AFTER `product_price`; +ALTER TABLE `PREFIX_order_detail` ADD `reduction_amount` DECIMAL(20, 6) NOT NULL AFTER `reduction_percent`; + +ALTER TABLE `PREFIX_country` CHANGE `need_identification_number` `need_identification_number` TINYINT(1) NOT NULL DEFAULT '0'; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PS_1_3_2_UPDATE_DATE', NOW(), NOW(), NOW()); + +ALTER TABLE `PREFIX_search_index` CHANGE `weight` `weight` SMALLINT(4) unsigned NOT NULL DEFAULT '1'; + +ALTER TABLE `PREFIX_image` DROP INDEX `product_position`, ADD UNIQUE `product_position` (`id_product`, `position`); + +ALTER TABLE `PREFIX_zone` DROP `enabled`; + +SET @id_hook = (SELECT id_hook FROM PREFIX_hook WHERE name = 'backOfficeHeader'); +SET @position = (SELECT IFNULL(MAX(position),0)+1 FROM PREFIX_hook_module WHERE id_hook = @id_hook); +INSERT IGNORE INTO PREFIX_hook_module (id_hook, id_module, position) VALUES (@id_hook, (SELECT id_module FROM PREFIX_module WHERE name = 'statsbestcustomers'), @position); +SET @position = @position + 1; +INSERT IGNORE INTO PREFIX_hook_module (id_hook, id_module, position) VALUES (@id_hook, (SELECT id_module FROM PREFIX_module WHERE name = 'statsbestproducts'), @position); +SET @position = @position + 1; +INSERT IGNORE INTO PREFIX_hook_module (id_hook, id_module, position) VALUES (@id_hook, (SELECT id_module FROM PREFIX_module WHERE name = 'statsbestvouchers'), @position); +SET @position = @position + 1; +INSERT IGNORE INTO PREFIX_hook_module (id_hook, id_module, position) VALUES (@id_hook, (SELECT id_module FROM PREFIX_module WHERE name = 'statsbestcategories'), @position); +SET @position = @position + 1; +INSERT IGNORE INTO PREFIX_hook_module (id_hook, id_module, position) VALUES (@id_hook, (SELECT id_module FROM PREFIX_module WHERE name = 'statsbestcarriers'), @position); diff --git a/install-new/upgrade/sql/1.3.2.3.sql b/install-new/upgrade/sql/1.3.2.3.sql new file mode 100644 index 000000000..0b4cf1b2f --- /dev/null +++ b/install-new/upgrade/sql/1.3.2.3.sql @@ -0,0 +1 @@ +SET NAMES 'utf8'; diff --git a/install-new/upgrade/sql/1.3.3.0.sql b/install-new/upgrade/sql/1.3.3.0.sql new file mode 100644 index 000000000..a8c43bb44 --- /dev/null +++ b/install-new/upgrade/sql/1.3.3.0.sql @@ -0,0 +1,8 @@ +SET NAMES 'utf8'; + +ALTER TABLE `PREFIX_order_detail` ADD `group_reduction` DECIMAL(10, 2) NOT NULL AFTER `reduction_amount`; +ALTER TABLE `PREFIX_order_detail` ADD `ecotax_tax_rate` DECIMAL(5, 3) NOT NULL AFTER `ecotax`; +ALTER TABLE `PREFIX_product` CHANGE `ecotax` `ecotax` DECIMAL(21, 6) NOT NULL DEFAULT '0.00'; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) SELECT 'PS_LOCALE_LANGUAGE', l.`iso_code`, NOW(), NOW() FROM `PREFIX_configuration` c INNER JOIN `PREFIX_lang` l ON (l.`id_lang` = c.`value`) WHERE c.`name` = 'PS_LANG_DEFAULT'; +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) SELECT 'PS_LOCALE_COUNTRY', co.`iso_code`, NOW(), NOW() FROM `PREFIX_configuration` c INNER JOIN `PREFIX_country` co ON (co.`id_country` = c.`value`) WHERE c.`name` = 'PS_COUNTRY_DEFAULT'; diff --git a/install-new/upgrade/sql/1.3.4.0.sql b/install-new/upgrade/sql/1.3.4.0.sql new file mode 100644 index 000000000..22c382dd4 --- /dev/null +++ b/install-new/upgrade/sql/1.3.4.0.sql @@ -0,0 +1 @@ +SET NAMES 'utf8'; \ No newline at end of file diff --git a/install-new/upgrade/sql/1.3.5.0.sql b/install-new/upgrade/sql/1.3.5.0.sql new file mode 100644 index 000000000..22c382dd4 --- /dev/null +++ b/install-new/upgrade/sql/1.3.5.0.sql @@ -0,0 +1 @@ +SET NAMES 'utf8'; \ No newline at end of file diff --git a/install-new/upgrade/sql/1.3.6.0.sql b/install-new/upgrade/sql/1.3.6.0.sql new file mode 100644 index 000000000..083171282 --- /dev/null +++ b/install-new/upgrade/sql/1.3.6.0.sql @@ -0,0 +1,3 @@ +SET NAMES 'utf8'; + +/* PHP:update_products_ecotax_v133(); */; diff --git a/install-new/upgrade/sql/1.3.7.0.sql b/install-new/upgrade/sql/1.3.7.0.sql new file mode 100644 index 000000000..0b4cf1b2f --- /dev/null +++ b/install-new/upgrade/sql/1.3.7.0.sql @@ -0,0 +1 @@ +SET NAMES 'utf8'; diff --git a/install-new/upgrade/sql/1.4.0.1.sql b/install-new/upgrade/sql/1.4.0.1.sql new file mode 100644 index 000000000..525c317c0 --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.1.sql @@ -0,0 +1,2 @@ +SET NAMES 'utf8'; + diff --git a/install-new/upgrade/sql/1.4.0.10.sql b/install-new/upgrade/sql/1.4.0.10.sql new file mode 100644 index 000000000..64833005c --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.10.sql @@ -0,0 +1,20 @@ +SET NAMES 'utf8'; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_CATALOG_MODE', '0', NOW(), NOW()); + +ALTER TABLE `PREFIX_specific_price` DROP `priority`; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PS_GEOLOCATION_WHITELIST', '209.185.108;209.185.253;209.85.238;209.85.238.11;209.85.238.4;216.239.33.96;216.239.33.97;216.239.33.98;216.239.33.99;216.239.37.98;216.239.37.99;216.239.39.98;216.239.39.99;216.239.41.96;216.239.41.97;216.239.41.98;216.239.41.99;216.239.45.4;216.239.46;216.239.51.96;216.239.51.97;216.239.51.98;216.239.51.99;216.239.53.98;216.239.53.99;216.239.57.96;216.239.57.97;216.239.57.98;216.239.57.99;216.239.59.98;216.239.59.99;216.33.229.163;64.233.173.193;64.233.173.194;64.233.173.195;64.233.173.196;64.233.173.197;64.233.173.198;64.233.173.199;64.233.173.200;64.233.173.201;64.233.173.202;64.233.173.203;64.233.173.204;64.233.173.205;64.233.173.206;64.233.173.207;64.233.173.208;64.233.173.209;64.233.173.210;64.233.173.211;64.233.173.212;64.233.173.213;64.233.173.214;64.233.173.215;64.233.173.216;64.233.173.217;64.233.173.218;64.233.173.219;64.233.173.220;64.233.173.221;64.233.173.222;64.233.173.223;64.233.173.224;64.233.173.225;64.233.173.226;64.233.173.227;64.233.173.228;64.233.173.229;64.233.173.230;64.233.173.231;64.233.173.232;64.233.173.233;64.233.173.234;64.233.173.235;64.233.173.236;64.233.173.237;64.233.173.238;64.233.173.239;64.233.173.240;64.233.173.241;64.233.173.242;64.233.173.243;64.233.173.244;64.233.173.245;64.233.173.246;64.233.173.247;64.233.173.248;64.233.173.249;64.233.173.250;64.233.173.251;64.233.173.252;64.233.173.253;64.233.173.254;64.233.173.255;64.68.80;64.68.81;64.68.82;64.68.83;64.68.84;64.68.85;64.68.86;64.68.87;64.68.88;64.68.89;64.68.90.1;64.68.90.10;64.68.90.11;64.68.90.12;64.68.90.129;64.68.90.13;64.68.90.130;64.68.90.131;64.68.90.132;64.68.90.133;64.68.90.134;64.68.90.135;64.68.90.136;64.68.90.137;64.68.90.138;64.68.90.139;64.68.90.14;64.68.90.140;64.68.90.141;64.68.90.142;64.68.90.143;64.68.90.144;64.68.90.145;64.68.90.146;64.68.90.147;64.68.90.148;64.68.90.149;64.68.90.15;64.68.90.150;64.68.90.151;64.68.90.152;64.68.90.153;64.68.90.154;64.68.90.155;64.68.90.156;64.68.90.157;64.68.90.158;64.68.90.159;64.68.90.16;64.68.90.160;64.68.90.161;64.68.90.162;64.68.90.163;64.68.90.164;64.68.90.165;64.68.90.166;64.68.90.167;64.68.90.168;64.68.90.169;64.68.90.17;64.68.90.170;64.68.90.171;64.68.90.172;64.68.90.173;64.68.90.174;64.68.90.175;64.68.90.176;64.68.90.177;64.68.90.178;64.68.90.179;64.68.90.18;64.68.90.180;64.68.90.181;64.68.90.182;64.68.90.183;64.68.90.184;64.68.90.185;64.68.90.186;64.68.90.187;64.68.90.188;64.68.90.189;64.68.90.19;64.68.90.190;64.68.90.191;64.68.90.192;64.68.90.193;64.68.90.194;64.68.90.195;64.68.90.196;64.68.90.197;64.68.90.198;64.68.90.199;64.68.90.2;64.68.90.20;64.68.90.200;64.68.90.201;64.68.90.202;64.68.90.203;64.68.90.204;64.68.90.205;64.68.90.206;64.68.90.207;64.68.90.208;64.68.90.21;64.68.90.22;64.68.90.23;64.68.90.24;64.68.90.25;64.68.90.26;64.68.90.27;64.68.90.28;64.68.90.29;64.68.90.3;64.68.90.30;64.68.90.31;64.68.90.32;64.68.90.33;64.68.90.34;64.68.90.35;64.68.90.36;64.68.90.37;64.68.90.38;64.68.90.39;64.68.90.4;64.68.90.40;64.68.90.41;64.68.90.42;64.68.90.43;64.68.90.44;64.68.90.45;64.68.90.46;64.68.90.47;64.68.90.48;64.68.90.49;64.68.90.5;64.68.90.50;64.68.90.51;64.68.90.52;64.68.90.53;64.68.90.54;64.68.90.55;64.68.90.56;64.68.90.57;64.68.90.58;64.68.90.59;64.68.90.6;64.68.90.60;64.68.90.61;64.68.90.62;64.68.90.63;64.68.90.64;64.68.90.65;64.68.90.66;64.68.90.67;64.68.90.68;64.68.90.69;64.68.90.7;64.68.90.70;64.68.90.71;64.68.90.72;64.68.90.73;64.68.90.74;64.68.90.75;64.68.90.76;64.68.90.77;64.68.90.78;64.68.90.79;64.68.90.8;64.68.90.80;64.68.90.9;64.68.91;64.68.92;66.249.64;66.249.65;66.249.66;66.249.67;66.249.68;66.249.69;66.249.70;66.249.71;66.249.72;66.249.73;66.249.78;66.249.79;72.14.199;8.6.48', NOW(), NOW()); + +ALTER TABLE `PREFIX_address` ADD `dni` VARCHAR(16) NULL AFTER `vat_number`; + +UPDATE `PREFIX_address` a SET `dni` = ( + SELECT `dni` + FROM `PREFIX_customer` c + WHERE c.`id_customer` = a.`id_customer` +); + +ALTER TABLE `PREFIX_customer` DROP `dni`; + +INSERT INTO `PREFIX_hook` (`name`, `title`, `description`, `position`) VALUES ('paymentTop', 'Top of payment page', 'Top of payment page', 0); diff --git a/install-new/upgrade/sql/1.4.0.11.sql b/install-new/upgrade/sql/1.4.0.11.sql new file mode 100644 index 000000000..f0ea8d56a --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.11.sql @@ -0,0 +1,35 @@ +CREATE TEMPORARY TABLE `PREFIX_tab_tmp` ( + `position` int(10) +); + +INSERT INTO `PREFIX_tab_tmp` (SELECT * FROM (SELECT `position` FROM `PREFIX_tab` WHERE `class_name` = 'AdminTaxes') AS tmp); +UPDATE `PREFIX_tab` SET `position` = (SELECT position FROM PREFIX_tab_tmp tmp) + 1 WHERE `class_name` = 'AdminTaxRulesGroup'; +DROP TABLE PREFIX_tab_tmp; + +DELETE FROM `PREFIX_configuration` WHERE `name` = 'PS_INVOICE_NUMBER'; + +CREATE TABLE `PREFIX_log` ( + `id_log` int(10) unsigned NOT NULL AUTO_INCREMENT, + `severity` tinyint(1) NOT NULL, + `error_code` int(11) DEFAULT NULL, + `message` text NOT NULL, + `object_type` varchar(32) DEFAULT NULL, + `object_id` int(10) unsigned DEFAULT NULL, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_log`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_LOGS_BY_EMAIL', '5', NOW(), NOW()); + +ALTER TABLE `PREFIX_tax_rules_group` CHANGE `name` `name` VARCHAR( 50 ) NOT NULL; + +CREATE TABLE `PREFIX_import_match` ( + `id_import_match` int(10) NOT NULL AUTO_INCREMENT, + `name` varchar(32) NOT NULL, + `match` text NOT NULL, + `skip` int(2) NOT NULL, + PRIMARY KEY (`id_import_match`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +/* PHP:add_new_tab(AdminLogs, en:Log|fr:Log|es:Log|de:Log|it:Log, 9); */; diff --git a/install-new/upgrade/sql/1.4.0.12.sql b/install-new/upgrade/sql/1.4.0.12.sql new file mode 100644 index 000000000..9af34e070 --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.12.sql @@ -0,0 +1,7 @@ +ALTER TABLE `PREFIX_product` CHANGE `ecotax` `ecotax` DECIMAL( 17, 6 ) NOT NULL DEFAULT '0.00'; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_LAST_SHOP_UPDATE', NOW(), NOW(), NOW()); + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_STORES_DISPLAY_SITEMAP', 1, NOW(), NOW()); + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_COOKIE_CHECKIP', 1, NOW(), NOW()); \ No newline at end of file diff --git a/install-new/upgrade/sql/1.4.0.13.sql b/install-new/upgrade/sql/1.4.0.13.sql new file mode 100644 index 000000000..22c382dd4 --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.13.sql @@ -0,0 +1 @@ +SET NAMES 'utf8'; \ No newline at end of file diff --git a/install-new/upgrade/sql/1.4.0.14.sql b/install-new/upgrade/sql/1.4.0.14.sql new file mode 100644 index 000000000..959066ac0 --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.14.sql @@ -0,0 +1,24 @@ +SET NAMES 'utf8'; + +ALTER TABLE `PREFIX_tax_rule` DROP PRIMARY KEY ; +ALTER TABLE `PREFIX_tax_rule` ADD `id_tax_rule` INT NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST ; +ALTER TABLE `PREFIX_tax_rule` ADD INDEX ( `id_tax` ) ; +ALTER TABLE `PREFIX_tax_rule` ADD INDEX ( `id_tax_rules_group` ) ; + +ALTER TABLE `PREFIX_address` MODIFY `dni` VARCHAR(16) NULL AFTER `vat_number`; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('BLOCKSTORE_IMG', 'store.jpg', NOW(), NOW()), +('PS_STORES_CENTER_LAT', '25.948969', NOW(), NOW()), +('PS_STORES_CENTER_LONG', '-80.226439', NOW(), NOW()); + +/* PHP:add_new_tab(AdminInformation, en:Configuration Information|fr:Informations|es:Informations|it:Informazioni di configurazione|de:Konfigurationsinformationen, 9); */; +/* PHP:add_new_tab(AdminPerformance, de:Leistung|en:Performance|it:Performance|fr:Performances|es:Rendimiento, 8); */; +/* PHP:add_new_tab(AdminCustomerThreads, en:Customer Service|de:Kundenservice|fr:SAV|es:Servicio al cliente|it:Servizio clienti, 29); */; +/* PHP:add_new_tab(AdminWebservice, fr:Service web|es:Web service|en:Webservice|de:Webservice|it:Webservice, 9); */; +/* PHP:add_new_tab(AdminAddonsCatalog, fr:Catalogue de modules et thèmes|de:Module und Themenkatalog|en:Modules & Themes Catalog|it:Moduli & Temi catalogo, 7); */; +/* PHP:add_new_tab(AdminAddonsMyAccount, it:Il mio Account|de:Mein Konto|fr:Mon compte|en:My Account, 7); */; +/* PHP:add_new_tab(AdminThemes, es:Temas|it:Temi|de:Themen|en:Themes|fr:Thèmes, 7); */; +/* PHP:add_new_tab(AdminGeolocation, es:Geolocalización|it:Geolocalizzazione|en:Geolocation|de:Geotargeting|fr:Géolocalisation, 8); */; +/* PHP:add_new_tab(AdminTaxRulesGroup, it:Regimi fiscali|es:Reglas de Impuestos|fr:Règles de taxes|de:Steuerregeln|en:Tax Rules, 4); */; +/* PHP:add_new_tab(AdminLogs, en:Log|fr:Log|es:Log|de:Log|it:Log, 9); */; diff --git a/install-new/upgrade/sql/1.4.0.15.sql b/install-new/upgrade/sql/1.4.0.15.sql new file mode 100644 index 000000000..f58669a52 --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.15.sql @@ -0,0 +1,41 @@ +/* PHP:add_new_tab(AdminCounty, fr:Comtés|es:Condados|en:Counties|de:Counties|it:Counties, 5); */; + +ALTER TABLE `PREFIX_tax_rule` ADD `county_behavior` INT NOT NULL AFTER `state_behavior`; +ALTER TABLE `PREFIX_tax_rule` ADD `id_county` INT NOT NULL AFTER `id_country`; + +ALTER TABLE `PREFIX_tax_rule` ADD UNIQUE ( +`id_tax_rules_group` , +`id_country` , +`id_state` , +`id_county` +); + +CREATE TABLE `PREFIX_county` ( + `id_county` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(64) NOT NULL, + `id_state` int(11) NOT NULL, + `active` tinyint(1) NOT NULL, + PRIMARY KEY (`id_county`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8 ; + + +CREATE TABLE `PREFIX_county_zip_code` ( + `id_county` INT NOT NULL , + `from_zip_code` INT NOT NULL , + `to_zip_code` INT NOT NULL , + PRIMARY KEY ( `id_county` , `from_zip_code` , `to_zip_code` ) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_HOMEPAGE_PHP_SELF', 'index.php', NOW(), NOW()); + + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) +VALUES ('PS_USE_ECOTAX', + (SELECT IF((SELECT `ecotax` FROM `PREFIX_product` WHERE `ecotax` != 0 LIMIT 1),'1','0')), + NOW(), + NOW()); + +ALTER TABLE `PREFIX_hook` ADD `live_edit` TINYINT NOT NULL DEFAULT '0'; + +UPDATE `PREFIX_hook` SET `live_edit` = '1' WHERE `PREFIX_hook`.`name` IN ('rightColumn', 'leftColumn', 'home'); diff --git a/install-new/upgrade/sql/1.4.0.16.sql b/install-new/upgrade/sql/1.4.0.16.sql new file mode 100644 index 000000000..ed45cf3d2 --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.16.sql @@ -0,0 +1,38 @@ +INSERT INTO `PREFIX_hook` (`id_hook`, `name`, `title`, `description`, `position`) +VALUES (NULL, 'afterCreateHtaccess', 'After htaccess creation', 'After htaccess creation', 0); + +UPDATE `PREFIX_meta_lang` SET `url_rewrite` = 'kontaktieren-sie-uns' WHERE id_meta = 3 AND id_lang = 4 AND url_rewrite = 'Kontaktieren Sie uns'; +UPDATE `PREFIX_meta_lang` SET `url_rewrite` = 'kennwort-wiederherstellung' WHERE id_meta = 7 AND id_lang = 4 AND url_rewrite = 'Kennwort Wiederherstellung'; +UPDATE `PREFIX_meta_lang` SET `url_rewrite` = 'il-mio-account' WHERE id_meta = 18 AND id_lang = 5 AND url_rewrite = 'il mio-account'; +UPDATE `PREFIX_meta_lang` SET `url_rewrite` = 'nota-di-ordine' WHERE id_meta = 20 AND id_lang = 5 AND url_rewrite = 'nota di-ordine'; + +INSERT INTO `PREFIX_meta` (`page`) VALUES ('order-opc'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) +( + SELECT `id_lang`, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'order-opc'), 'Order', 'quick-order' + FROM `PREFIX_lang` +); +INSERT INTO `PREFIX_meta` (`page`) VALUES ('guest-tracking'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) +( + SELECT `id_lang`, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'guest-tracking'), 'Guest tracking', 'guest-tracking' + FROM `PREFIX_lang` +); + +UPDATE `PREFIX_hook` SET `live_edit` = '1' WHERE `PREFIX_hook`.`name` IN ('productfooter', 'payment'); + +UPDATE `PREFIX_configuration` SET name = 'PS_GEOLOCATION_ENABLED' WHERE name = 'PS_GEOLOCALIZATION_ENABLED'; +UPDATE `PREFIX_configuration` SET name = 'PS_GEOLOCATION_BEHAVIOR' WHERE name = 'PS_GEOLOCALIZATION_BEHAVIOR'; +UPDATE `PREFIX_configuration` SET name = 'PS_GEOLOCATION_WHITELIST' WHERE name = 'PS_GEOLOCALIZATION_WHITELIST'; +UPDATE `PREFIX_tab` SET class_name = 'AdminGeolocation' WHERE class_name = 'AdminGeolocalization'; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PS_CANONICAL_REDIRECT', '0', NOW(), NOW()); + +ALTER TABLE `PREFIX_webservice_account` ADD `class_name` VARCHAR( 50 ) NOT NULL DEFAULT 'WebserviceRequest' AFTER `key`; +ALTER TABLE `PREFIX_webservice_account` ADD `description` text NULL AFTER `key`; + +/* PHP:add_new_tab(AdminHome, en:Home|fr:Accueil|es:Home|de:Home|it:Home, -1); */; +/* PHP:add_new_tab(AdminStockMvt, de:Lagerbewegungen|fr:Mouvements de Stock|it:Movimenti magazzino|en:Stock Movements, 1); */; +/* PHP:update_for_13version(); */; + diff --git a/install-new/upgrade/sql/1.4.0.17.sql b/install-new/upgrade/sql/1.4.0.17.sql new file mode 100644 index 000000000..bf8cb320f --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.17.sql @@ -0,0 +1,22 @@ +SET NAMES 'utf8'; + +ALTER TABLE `PREFIX_stock_mvt_reason` ADD `sign` TINYINT(1) NOT NULL DEFAULT '1' AFTER `id_stock_mvt_reason`; +UPDATE `PREFIX_stock_mvt_reason` SET `sign`=-1; +UPDATE `PREFIX_stock_mvt_reason` SET `sign`=1 WHERE `id_stock_mvt_reason`=3; +UPDATE `PREFIX_stock_mvt_reason` SET `id_stock_mvt_reason`=`id_stock_mvt_reason`+2 ORDER BY `id_stock_mvt_reason` DESC; +UPDATE `PREFIX_stock_mvt` SET `id_stock_mvt_reason`=`id_stock_mvt_reason`+2; +UPDATE `PREFIX_stock_mvt_reason_lang` SET `id_stock_mvt_reason`=`id_stock_mvt_reason`+2 ORDER BY `id_stock_mvt_reason` DESC; +INSERT INTO `PREFIX_stock_mvt_reason` (`id_stock_mvt_reason` ,`sign` ,`date_add` ,`date_upd`) VALUES ('1', '1', NOW(), NOW()), ('2', '-1', NOW(), NOW()); + +INSERT INTO `PREFIX_stock_mvt_reason_lang` (`id_stock_mvt_reason` ,`id_lang` ,`name`) VALUES +('1', '1', 'Increase'), +('1', '2', 'Augmenter'), +('1', '3', 'Aumentar'), +('1', '4', 'Erhöhen'), +('1', '5', 'Aumento'), +('2', '1', 'Decrease'), +('2', '2', 'Diminuer'), +('2', '3', 'Disminuir'), +('2', '4', 'Reduzieren'), +('2', '5', 'Diminuzione'); + diff --git a/install-new/upgrade/sql/1.4.0.2.sql b/install-new/upgrade/sql/1.4.0.2.sql new file mode 100644 index 000000000..b3f9ab89f --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.2.sql @@ -0,0 +1,694 @@ +SET NAMES 'utf8'; + +ALTER TABLE `PREFIX_employee` ADD `bo_color` varchar(32) default NULL AFTER `stats_date_to`; +ALTER TABLE `PREFIX_employee` ADD `bo_theme` varchar(32) default NULL AFTER `bo_color`; +ALTER TABLE `PREFIX_employee` ADD `bo_uimode` ENUM('hover','click') default 'click' AFTER `bo_theme`; +ALTER TABLE `PREFIX_employee` ADD `id_lang` int(10) unsigned NOT NULL default 0 AFTER `id_profile`; + +ALTER TABLE `PREFIX_cms` ADD `id_cms_category` int(10) unsigned NOT NULL default '0' AFTER `id_cms`; +ALTER TABLE `PREFIX_cms` ADD `position` int(10) unsigned NOT NULL default '0' AFTER `id_cms_category`; + +CREATE TABLE `PREFIX_cms_category` ( + `id_cms_category` int(10) unsigned NOT NULL AUTO_INCREMENT, + `id_parent` int(10) unsigned NOT NULL, + `level_depth` tinyint(3) unsigned NOT NULL DEFAULT '0', + `active` tinyint(1) unsigned NOT NULL DEFAULT '0', + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + `position` int(10) unsigned NOT NULL default '0', + PRIMARY KEY (`id_cms_category`), + KEY `category_parent` (`id_parent`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_cms_category_lang` ( + `id_cms_category` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(128) NOT NULL, + `description` text, + `link_rewrite` varchar(128) NOT NULL, + `meta_title` varchar(128) DEFAULT NULL, + `meta_keywords` varchar(255) DEFAULT NULL, + `meta_description` varchar(255) DEFAULT NULL, + UNIQUE KEY `category_lang_index` (`id_cms_category`,`id_lang`), + KEY `category_name` (`name`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +INSERT INTO `PREFIX_cms_category_lang` VALUES(1, 1, 'Home', '', 'home', NULL, NULL, NULL); +INSERT INTO `PREFIX_cms_category_lang` VALUES(1, 2, 'Accueil', '', 'home', NULL, NULL, NULL); +INSERT INTO `PREFIX_cms_category_lang` VALUES(1, 3, 'Inicio', '', 'home', NULL, NULL, NULL); + +INSERT INTO `PREFIX_cms_category` VALUES(1, 0, 0, 1, NOW(), NOW(),0); + +UPDATE `PREFIX_cms_category` SET `position` = 0; +UPDATE `PREFIX_cms` SET `position` = 0; +UPDATE `PREFIX_cms` SET `id_cms_category` = 0; + +ALTER TABLE `PREFIX_category` ADD `position` int(10) unsigned NOT NULL default '0' AFTER `date_upd`; + +UPDATE `PREFIX_employee` SET `id_lang` = (SELECT `value` FROM `PREFIX_configuration` WHERE `name` LIKE "PS_LANG_DEFAULT"); + +ALTER TABLE `PREFIX_customer` ADD `note` text AFTER `secure_key`; + +ALTER TABLE `PREFIX_contact` ADD `customer_service` tinyint(1) NOT NULL DEFAULT 0 AFTER `email`; + +CREATE TABLE `PREFIX_customer_thread` ( + `id_customer_thread` int(11) unsigned NOT NULL auto_increment, + `id_lang` int(10) unsigned NOT NULL, + `id_contact` int(10) unsigned NOT NULL, + `id_customer` int(10) unsigned default NULL, + `id_order` int(10) unsigned default NULL, + `id_product` int(10) unsigned default NULL, + `status` enum('open','closed','pending1','pending2') NOT NULL default 'open', + `email` varchar(128) NOT NULL, + `token` varchar(12) default NULL, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_customer_thread`), + KEY `id_customer_thread` (`id_customer_thread`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_customer_message` ( + `id_customer_message` int(10) unsigned NOT NULL auto_increment, + `id_customer_thread` int(11) default NULL, + `id_employee` int(10) unsigned default NULL, + `message` text NOT NULL, + `file_name` varchar(18) DEFAULT NULL, + `ip_address` int(11) default NULL, + `user_agent` varchar(128) default NULL, + `date_add` datetime NOT NULL, + PRIMARY KEY (`id_customer_message`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_payment_cc` ( + `id_payment_cc` INT NOT NULL auto_increment, + `id_order` INT UNSIGNED NULL, + `id_currency` INT UNSIGNED NOT NULL, + `amount` DECIMAL(10,2) NOT NULL, + `transaction_id` VARCHAR(254) NULL, + `card_number` VARCHAR(254) NULL, + `card_brand` VARCHAR(254) NULL, + `card_expiration` CHAR(7) NULL, + `card_holder` VARCHAR(254) NULL, + `date_add` DATETIME NOT NULL, + PRIMARY KEY (`id_payment_cc`), + KEY `id_order` (`id_order`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_specific_price` ( + `id_specific_price` INT UNSIGNED NOT NULL AUTO_INCREMENT, + `id_product` INT UNSIGNED NOT NULL, + `id_shop` TINYINT UNSIGNED NOT NULL, + `id_currency` INT UNSIGNED NOT NULL, + `id_country` INT UNSIGNED NOT NULL, + `id_group` INT UNSIGNED NOT NULL, + `priority` SMALLINT UNSIGNED NOT NULL, + `price` DECIMAL(20, 6) NOT NULL, + `from_quantity` SMALLINT UNSIGNED NOT NULL, + `reduction` DECIMAL(20, 6) NOT NULL, + `reduction_type` ENUM('amount', 'percentage') NOT NULL, + `from` DATETIME NOT NULL, + `to` DATETIME NOT NULL, + PRIMARY KEY(`id_specific_price`), + KEY (`id_product`, `id_shop`, `id_currency`, `id_country`, `id_group`, `from_quantity`, `from`, `to`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +INSERT INTO `PREFIX_specific_price` (`id_product`, `id_shop`, `id_currency`, `id_country`, `id_group`, `priority`, `price`, `from_quantity`, `reduction`, `reduction_type`, `from`, `to`) + ( SELECT dq.`id_product`, 1, 1, 0, 1, 0, 0.00, dq.`quantity`, IF(dq.`id_discount_type` = 2, dq.`value`, dq.`value` / 100), IF (dq.`id_discount_type` = 2, 'amount', 'percentage'), '0000-00-00 00:00:00', '0000-00-00 00:00:00' + FROM `PREFIX_discount_quantity` dq + INNER JOIN `PREFIX_product` p ON (p.`id_product` = dq.`id_product`) + ); +DROP TABLE `PREFIX_discount_quantity`; + +INSERT INTO `PREFIX_specific_price` (`id_product`, `id_shop`, `id_currency`, `id_country`, `id_group`, `priority`, `price`, `from_quantity`, `reduction`, `reduction_type`, `from`, `to`) ( + SELECT + p.`id_product`, + 1, + 0, + 0, + 0, + 0, + 0.00, + 1, + IF(p.`reduction_price` > 0, p.`reduction_price`, p.`reduction_percent` / 100), + IF(p.`reduction_price` > 0, 'amount', 'percentage'), + IF (p.`reduction_from` = p.`reduction_to`, '0000-00-00 00:00:00', p.`reduction_from`), + IF (p.`reduction_from` = p.`reduction_to`, '0000-00-00 00:00:00', p.`reduction_to`) + FROM `PREFIX_product` p + WHERE p.`reduction_price` OR p.`reduction_percent` +); +ALTER TABLE `PREFIX_product` + DROP `reduction_price`, + DROP `reduction_percent`, + DROP `reduction_from`, + DROP `reduction_to`; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PS_SPECIFIC_PRICE_PRIORITIES', 'id_shop;id_currency;id_country;id_group', NOW(), NOW()), +('PS_TAX_DISPLAY', 0, NOW(), NOW()), +('PS_SMARTY_FORCE_COMPILE', 1, NOW(), NOW()), +('PS_DISTANCE_UNIT', 'km', NOW(), NOW()), +('PS_STORES_DISPLAY_CMS', 0, NOW(), NOW()), +('PS_STORES_DISPLAY_FOOTER', 0, NOW(), NOW()), +('PS_STORES_SIMPLIFIED', 0, NOW(), NOW()), +('PS_STATSDATA_CUSTOMER_PAGESVIEWS', 1, NOW(), NOW()), +('PS_STATSDATA_PAGESVIEWS', 1, NOW(), NOW()), +('PS_STATSDATA_PLUGINS', 1, NOW(), NOW()); + +CREATE TABLE `PREFIX_group_reduction` ( + `id_group_reduction` MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT, + `id_group` INT(10) UNSIGNED NOT NULL, + `id_category` INT(10) UNSIGNED NOT NULL, + `reduction` DECIMAL(4, 3) NOT NULL, + PRIMARY KEY(`id_group_reduction`), + UNIQUE KEY(`id_group`, `id_category`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_product_group_reduction_cache` ( + `id_product` INT UNSIGNED NOT NULL, + `id_group` INT UNSIGNED NOT NULL, + `reduction` DECIMAL(4, 3) NOT NULL, + PRIMARY KEY(`id_product`, `id_group`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +ALTER TABLE `PREFIX_currency` ADD `iso_code_num` varchar(3) NOT NULL default '0' AFTER `iso_code`; +UPDATE `PREFIX_currency` SET iso_code_num = '978' WHERE iso_code LIKE 'EUR' LIMIT 1; +UPDATE `PREFIX_currency` SET iso_code_num = '840' WHERE iso_code LIKE 'USD' LIMIT 1; +UPDATE `PREFIX_currency` SET iso_code_num = '826' WHERE iso_code LIKE 'GBP' LIMIT 1; + +ALTER TABLE `PREFIX_country` ADD `call_prefix` int(10) NOT NULL default '0' AFTER `iso_code`; + +UPDATE `PREFIX_country` SET `call_prefix` = 49 WHERE `iso_code` = 'DE' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 43 WHERE `iso_code` = 'AT' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 32 WHERE `iso_code` = 'BE' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 1 WHERE `iso_code` = 'CA' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 86 WHERE `iso_code` = 'CN' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 34 WHERE `iso_code` = 'ES' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 358 WHERE `iso_code` = 'FI' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 33 WHERE `iso_code` = 'FR' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 30 WHERE `iso_code` = 'GR' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 39 WHERE `iso_code` = 'IT' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 81 WHERE `iso_code` = 'JP' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 352 WHERE `iso_code` = 'LU' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 31 WHERE `iso_code` = 'NL' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 48 WHERE `iso_code` = 'PL' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 351 WHERE `iso_code` = 'PT' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 420 WHERE `iso_code` = 'CZ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 44 WHERE `iso_code` = 'GB' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 46 WHERE `iso_code` = 'SE' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 41 WHERE `iso_code` = 'CH' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 45 WHERE `iso_code` = 'DK' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 1 WHERE `iso_code` = 'US' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 852 WHERE `iso_code` = 'HK' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 47 WHERE `iso_code` = 'NO' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 61 WHERE `iso_code` = 'AU' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 65 WHERE `iso_code` = 'SG' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 353 WHERE `iso_code` = 'IE' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 64 WHERE `iso_code` = 'NZ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 82 WHERE `iso_code` = 'KR' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 972 WHERE `iso_code` = 'IL' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 27 WHERE `iso_code` = 'ZA' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 234 WHERE `iso_code` = 'NG' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 225 WHERE `iso_code` = 'CI' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 228 WHERE `iso_code` = 'TG' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 591 WHERE `iso_code` = 'BO' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 230 WHERE `iso_code` = 'MU' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 40 WHERE `iso_code` = 'RO' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 421 WHERE `iso_code` = 'SK' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 213 WHERE `iso_code` = 'DZ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 376 WHERE `iso_code` = 'AD' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 244 WHERE `iso_code` = 'AO' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 54 WHERE `iso_code` = 'AR' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 374 WHERE `iso_code` = 'AM' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 297 WHERE `iso_code` = 'AW' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 994 WHERE `iso_code` = 'AZ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 973 WHERE `iso_code` = 'BH' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 880 WHERE `iso_code` = 'BD' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 501 WHERE `iso_code` = 'BZ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 229 WHERE `iso_code` = 'BJ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 975 WHERE `iso_code` = 'BT' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 267 WHERE `iso_code` = 'BW' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 55 WHERE `iso_code` = 'BR' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 673 WHERE `iso_code` = 'BN' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 226 WHERE `iso_code` = 'BF' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 95 WHERE `iso_code` = 'MM' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 257 WHERE `iso_code` = 'BI' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 855 WHERE `iso_code` = 'KH' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 237 WHERE `iso_code` = 'CM' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 238 WHERE `iso_code` = 'CV' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 236 WHERE `iso_code` = 'CF' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 235 WHERE `iso_code` = 'TD' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 56 WHERE `iso_code` = 'CL' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 57 WHERE `iso_code` = 'CO' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 269 WHERE `iso_code` = 'KM' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 242 WHERE `iso_code` = 'CD' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 243 WHERE `iso_code` = 'CG' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 506 WHERE `iso_code` = 'CR' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 385 WHERE `iso_code` = 'HR' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 53 WHERE `iso_code` = 'CU' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 357 WHERE `iso_code` = 'CY' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 253 WHERE `iso_code` = 'DJ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 670 WHERE `iso_code` = 'TL' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 593 WHERE `iso_code` = 'EC' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 20 WHERE `iso_code` = 'EG' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 503 WHERE `iso_code` = 'SV' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 240 WHERE `iso_code` = 'GQ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 291 WHERE `iso_code` = 'ER' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 372 WHERE `iso_code` = 'EE' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 251 WHERE `iso_code` = 'ET' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 298 WHERE `iso_code` = 'FO' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 679 WHERE `iso_code` = 'FJ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 241 WHERE `iso_code` = 'GA' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 220 WHERE `iso_code` = 'GM' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 995 WHERE `iso_code` = 'GE' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 233 WHERE `iso_code` = 'GH' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 299 WHERE `iso_code` = 'GL' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 350 WHERE `iso_code` = 'GI' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 590 WHERE `iso_code` = 'GP' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 502 WHERE `iso_code` = 'GT' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 224 WHERE `iso_code` = 'GN' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 245 WHERE `iso_code` = 'GW' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 592 WHERE `iso_code` = 'GY' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 509 WHERE `iso_code` = 'HT' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 379 WHERE `iso_code` = 'VA' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 504 WHERE `iso_code` = 'HN' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 354 WHERE `iso_code` = 'IS' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 91 WHERE `iso_code` = 'IN' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 62 WHERE `iso_code` = 'ID' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 98 WHERE `iso_code` = 'IR' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 964 WHERE `iso_code` = 'IQ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 962 WHERE `iso_code` = 'JO' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 7 WHERE `iso_code` = 'KZ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 254 WHERE `iso_code` = 'KE' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 686 WHERE `iso_code` = 'KI' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 850 WHERE `iso_code` = 'KP' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 965 WHERE `iso_code` = 'KW' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 996 WHERE `iso_code` = 'KG' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 856 WHERE `iso_code` = 'LA' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 371 WHERE `iso_code` = 'LV' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 961 WHERE `iso_code` = 'LB' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 266 WHERE `iso_code` = 'LS' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 231 WHERE `iso_code` = 'LR' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 218 WHERE `iso_code` = 'LY' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 423 WHERE `iso_code` = 'LI' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 370 WHERE `iso_code` = 'LT' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 853 WHERE `iso_code` = 'MO' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 389 WHERE `iso_code` = 'MK' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 261 WHERE `iso_code` = 'MG' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 265 WHERE `iso_code` = 'MW' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 60 WHERE `iso_code` = 'MY' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 960 WHERE `iso_code` = 'MV' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 223 WHERE `iso_code` = 'ML' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 356 WHERE `iso_code` = 'MT' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 692 WHERE `iso_code` = 'MH' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 596 WHERE `iso_code` = 'MQ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 222 WHERE `iso_code` = 'MR' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 36 WHERE `iso_code` = 'HU' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 262 WHERE `iso_code` = 'YT' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 52 WHERE `iso_code` = 'MX' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 691 WHERE `iso_code` = 'FM' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 373 WHERE `iso_code` = 'MD' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 377 WHERE `iso_code` = 'MC' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 976 WHERE `iso_code` = 'MN' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 382 WHERE `iso_code` = 'ME' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 212 WHERE `iso_code` = 'MA' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 258 WHERE `iso_code` = 'MZ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 264 WHERE `iso_code` = 'NA' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 674 WHERE `iso_code` = 'NR' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 977 WHERE `iso_code` = 'NP' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 599 WHERE `iso_code` = 'AN' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 687 WHERE `iso_code` = 'NC' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 505 WHERE `iso_code` = 'NI' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 227 WHERE `iso_code` = 'NE' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 683 WHERE `iso_code` = 'NU' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 968 WHERE `iso_code` = 'OM' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 92 WHERE `iso_code` = 'PK' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 680 WHERE `iso_code` = 'PW' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 507 WHERE `iso_code` = 'PA' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 675 WHERE `iso_code` = 'PG' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 595 WHERE `iso_code` = 'PY' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 51 WHERE `iso_code` = 'PE' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 63 WHERE `iso_code` = 'PH' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 974 WHERE `iso_code` = 'QA' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 262 WHERE `iso_code` = 'RE' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 7 WHERE `iso_code` = 'RU' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 250 WHERE `iso_code` = 'RW' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 508 WHERE `iso_code` = 'PM' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 685 WHERE `iso_code` = 'WS' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 378 WHERE `iso_code` = 'SM' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 239 WHERE `iso_code` = 'ST' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 966 WHERE `iso_code` = 'SA' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 221 WHERE `iso_code` = 'SN' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 381 WHERE `iso_code` = 'RS' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 248 WHERE `iso_code` = 'SC' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 232 WHERE `iso_code` = 'SL' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 386 WHERE `iso_code` = 'SI' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 677 WHERE `iso_code` = 'SB' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 252 WHERE `iso_code` = 'SO' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 94 WHERE `iso_code` = 'LK' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 249 WHERE `iso_code` = 'SD' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 597 WHERE `iso_code` = 'SR' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 268 WHERE `iso_code` = 'SZ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 963 WHERE `iso_code` = 'SY' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 886 WHERE `iso_code` = 'TW' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 992 WHERE `iso_code` = 'TJ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 255 WHERE `iso_code` = 'TZ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 66 WHERE `iso_code` = 'TH' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 690 WHERE `iso_code` = 'TK' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 676 WHERE `iso_code` = 'TO' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 216 WHERE `iso_code` = 'TN' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 90 WHERE `iso_code` = 'TR' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 993 WHERE `iso_code` = 'TM' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 688 WHERE `iso_code` = 'TV' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 256 WHERE `iso_code` = 'UG' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 380 WHERE `iso_code` = 'UA' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 971 WHERE `iso_code` = 'AE' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 598 WHERE `iso_code` = 'UY' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 998 WHERE `iso_code` = 'UZ' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 678 WHERE `iso_code` = 'VU' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 58 WHERE `iso_code` = 'VE' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 84 WHERE `iso_code` = 'VN' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 681 WHERE `iso_code` = 'WF' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 967 WHERE `iso_code` = 'YE' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 260 WHERE `iso_code` = 'ZM' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 263 WHERE `iso_code` = 'ZW' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 355 WHERE `iso_code` = 'AL' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 93 WHERE `iso_code` = 'AF' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 387 WHERE `iso_code` = 'BA' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 359 WHERE `iso_code` = 'BG' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 682 WHERE `iso_code` = 'CK' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 594 WHERE `iso_code` = 'GF' LIMIT 1; +UPDATE `PREFIX_country` SET `call_prefix` = 689 WHERE `iso_code` = 'PF' LIMIT 1; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_CONDITIONS_CMS_ID', IFNULL((SELECT `id_cms` FROM `PREFIX_cms` WHERE `id_cms` = 3), 0), NOW(), NOW()); +CREATE TEMPORARY TABLE `PREFIX_configuration_tmp` ( + `value` text +); +INSERT INTO `PREFIX_configuration_tmp` (SELECT value FROM (SELECT `value` FROM `PREFIX_configuration` WHERE `name` = 'PREFIX_CONDITIONS_CMS_ID') AS tmp); + +UPDATE `PREFIX_configuration` SET `value` = IF((SELECT value FROM PREFIX_configuration_tmp), 1, 0) WHERE `name` = 'PREFIX_CONDITIONS'; +DROP TABLE PREFIX_configuration_tmp; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_CIPHER_ALGORITHM', 0, NOW(), NOW()); +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_ORDER_PROCESS_TYPE', 0, NOW(), NOW()); + +ALTER TABLE `PREFIX_product` ADD `minimal_quantity` INT NOT NULL DEFAULT '1' AFTER `quantity`; +ALTER TABLE `PREFIX_product` ADD `cache_default_attribute` int(10) unsigned default NULL AFTER `indexed`; +ALTER TABLE `PREFIX_product` ADD `cache_has_attachments` TINYINT(1) NOT NULL default '0' AFTER `indexed`; +ALTER TABLE `PREFIX_product` ADD `cache_is_pack` TINYINT(1) NOT NULL default '0' AFTER `indexed`; +ALTER TABLE `PREFIX_product` ADD `available_for_order` TINYINT(1) NOT NULL DEFAULT '1' AFTER `active`; +ALTER TABLE `PREFIX_product` ADD `show_price` TINYINT(1) NOT NULL DEFAULT '1' AFTER `available_for_order`; +ALTER TABLE `PREFIX_product` ADD `online_only` TINYINT(1) NOT NULL DEFAULT '0' AFTER `on_sale`; +ALTER TABLE `PREFIX_product` ADD `condition` ENUM('new', 'used', 'refurbished') NOT NULL DEFAULT 'new' AFTER `available_for_order`; +ALTER TABLE `PREFIX_product` ADD `upc` VARCHAR( 12 ) NULL AFTER `ean13`; + +ALTER TABLE `PREFIX_product_attribute` ADD `upc` VARCHAR( 12 ) NULL AFTER `ean13`; + +SET @defaultOOS = (SELECT value FROM `PREFIX_configuration` WHERE name = 'PS_ORDER_OUT_OF_STOCK'); +/* Set 0 for every non-attribute product */ +UPDATE `PREFIX_product` p SET `cache_default_attribute` = 0 WHERE `id_product` NOT IN (SELECT `id_product` FROM `PREFIX_product_attribute`); +/* First default attribute in stock */ +UPDATE `PREFIX_product` p SET `cache_default_attribute` = (SELECT `id_product_attribute` FROM `PREFIX_product_attribute` WHERE `id_product` = p.`id_product` AND default_on = 1 AND quantity > 0 LIMIT 1) WHERE `cache_default_attribute` IS NULL; +/* Then default attribute without stock if we don't care */ +UPDATE `PREFIX_product` p SET `cache_default_attribute` = (SELECT `id_product_attribute` FROM `PREFIX_product_attribute` WHERE `id_product` = p.`id_product` AND default_on = 1 LIMIT 1) WHERE `cache_default_attribute` IS NULL AND `out_of_stock` = 1 OR `out_of_stock` = IF(@defaultOOS = 1, 2, 1); +/* Next, the default attribute can be any attribute with stock */ +UPDATE `PREFIX_product` p SET `cache_default_attribute` = (SELECT `id_product_attribute` FROM `PREFIX_product_attribute` WHERE `id_product` = p.`id_product` AND quantity > 0 LIMIT 1) WHERE `cache_default_attribute` IS NULL; +/* If there is still no default attribute, then we go back to the default one */ +UPDATE `PREFIX_product` p SET `cache_default_attribute` = (SELECT `id_product_attribute` FROM `PREFIX_product_attribute` WHERE `id_product` = p.`id_product` AND default_on = 1 LIMIT 1) WHERE `cache_default_attribute` IS NULL; + +UPDATE `PREFIX_product` p SET +cache_is_pack = (SELECT IF(COUNT(*) > 0, 1, 0) FROM `PREFIX_pack` pp WHERE pp.`id_product_pack` = p.`id_product`), +cache_has_attachments = (SELECT IF(COUNT(*) > 0, 1, 0) FROM `PREFIX_product_attachment` pa WHERE pa.`id_product` = p.`id_product`); + +INSERT INTO `PREFIX_hook` (`name`, `title`, `description`, `position`) VALUES ('deleteProductAttribute', 'Product Attribute Deletion', NULL, 0); +INSERT INTO `PREFIX_hook` (`name` ,`title` ,`description` ,`position`) VALUES ('beforeCarrier', 'Before carrier list', 'This hook is display before the carrier list on Front office', 1); +INSERT INTO `PREFIX_hook` (`name`, `title`, `description`, `position`) VALUES ('orderDetailDisplayed', 'Order detail displayed', 'Displayed on order detail on front office', 1); + +INSERT INTO `PREFIX_hook_module` (`id_module`, `id_hook`, `position`) VALUES +((SELECT IFNULL((SELECT `id_module` FROM `PREFIX_module` WHERE `name` = 'mailalerts'), 0)), +(SELECT `id_hook` FROM `PREFIX_hook` WHERE `name` = 'deleteProductAttribute'), 1); + +DELETE FROM `PREFIX_hook_module` WHERE `id_module` = 0; + +ALTER TABLE `PREFIX_country` ADD `need_zip_code` TINYINT(1) NOT NULL DEFAULT '1'; +ALTER TABLE `PREFIX_country` ADD `zip_code_format` VARCHAR(12) NOT NULL DEFAULT ''; + +ALTER TABLE `PREFIX_product` ADD `unit_price` DECIMAL(20,6) NOT NULL DEFAULT '0.000000' AFTER `wholesale_price`; +ALTER TABLE `PREFIX_product` ADD `unity` VARCHAR(10) NOT NULL DEFAULT '0.000000' AFTER `unit_price` ; +ALTER TABLE `PREFIX_product_attribute` ADD `unit_price_impact`DECIMAL(17,2) NOT NULL DEFAULT '0.00' AFTER `weight`; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_VOLUME_UNIT', 'cl', NOW(), NOW()); + +ALTER TABLE `PREFIX_carrier` ADD `shipping_external` TINYINT( 1 ) UNSIGNED NOT NULL; +ALTER TABLE `PREFIX_carrier` ADD `external_module_name` varchar(64) DEFAULT NULL; +ALTER TABLE `PREFIX_carrier` ADD `need_range` TINYINT( 1 ) UNSIGNED NOT NULL; + +INSERT INTO `PREFIX_hook` (`name`, `title`, `description`, `position`) VALUES ('processCarrier', 'Carrier Process', NULL, 0); +INSERT INTO `PREFIX_hook` (`name`, `title`, `description`, `position`) VALUES ('orderDetail', 'Order Detail', 'To set the follow-up in smarty when order detail is called', 0); +INSERT INTO `PREFIX_hook` (`name`, `title`, `description`, `position`) VALUES ('paymentCCAdded', 'Payment CC added', 'Payment CC added', '0'); +INSERT INTO `PREFIX_hook` (`name`, `title`, `description`, `position`) VALUES ('extraProductComparison', 'Extra Product Comparison', 'Extra Product Comparison', '0'); + +ALTER TABLE `PREFIX_address` ADD `vat_number` varchar(32) NULL DEFAULT NULL AFTER `phone_mobile`; +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_TAX_ADDRESS_TYPE', 'id_address_delivery', NOW(), NOW()); + + +/* PHP:add_module_to_hook(blockpaymentlogo, header); */; +/* PHP:add_module_to_hook(blockpermanentlinks, header); */; +/* PHP:add_module_to_hook(blockviewed, header); */; +/* PHP:add_module_to_hook(blockcart, header); */; +/* PHP:add_module_to_hook(editorial, header); */; +/* PHP:add_module_to_hook(blockbestsellers, header); */; +/* PHP:add_module_to_hook(blockcategories, header); */; +/* PHP:add_module_to_hook(blockspecials, header); */; +/* PHP:add_module_to_hook(blockcurrencies, header); */; +/* PHP:add_module_to_hook(blocknewproducts, header); */; +/* PHP:add_module_to_hook(blockuserinfo, header); */; +/* PHP:migrate_block_info_to_cms_block(); */; +/* PHP:add_module_to_hook(blockcms, header); */; +/* PHP:add_module_to_hook(blocklanguages, header); */; +/* PHP:add_module_to_hook(blockmanufacturer, header); */; +/* PHP:add_module_to_hook(blockadvertising, header); */; +/* PHP:add_module_to_hook(blocktags, header); */; +/* PHP:add_module_to_hook(blockmyaccount, header); */; + +ALTER TABLE `PREFIX_product` ADD `additional_shipping_cost` DECIMAL(20,2) NOT NULL DEFAULT '0.000000' AFTER `unit_price`; + +ALTER TABLE `PREFIX_currency` ADD `active` TINYINT(1) NOT NULL DEFAULT '1'; +ALTER TABLE `PREFIX_tax` ADD `active` TINYINT(1) NOT NULL DEFAULT '1'; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_ATTRIBUTE_CATEGORY_DISPLAY', 1, NOW(), NOW()); + +ALTER TABLE `PREFIX_discount` ADD `cart_display` TINYINT( 4 ) NOT NULL AFTER `active` , ADD `date_add` DATETIME NOT NULL AFTER `cart_display` , ADD `date_upd` DATETIME NOT NULL AFTER `date_add` ; + +ALTER TABLE `PREFIX_carrier` ADD `shipping_method` INT( 2 ) NOT NULL DEFAULT '0'; + +CREATE TABLE `PREFIX_stock_mvt` ( + `id_stock_mvt` int(11) unsigned NOT NULL AUTO_INCREMENT, + `id_product` int(11) unsigned DEFAULT NULL, + `id_product_attribute` int(11) unsigned DEFAULT NULL, + `id_order` int(11) unsigned DEFAULT NULL, + `id_stock_mvt_reason` int(11) unsigned NOT NULL, + `id_employee` int(11) unsigned NOT NULL, + `quantity` int(11) NOT NULL, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_stock_mvt`), + KEY `id_order` (`id_order`), + KEY `id_product` (`id_product`), + KEY `id_product_attribute` (`id_product_attribute`), + KEY `id_stock_mvt_reason` (`id_stock_mvt_reason`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_stock_mvt_reason` ( + `id_stock_mvt_reason` int(11) NOT NULL AUTO_INCREMENT, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_stock_mvt_reason`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + + +ALTER TABLE `PREFIX_product` CHANGE `quantity` `quantity` INT( 10 ) NOT NULL DEFAULT '0'; +ALTER TABLE `PREFIX_product_attribute` CHANGE `quantity` `quantity` INT( 10 ) NOT NULL DEFAULT '0'; + +CREATE TABLE `PREFIX_stock_mvt_reason_lang` ( + `id_stock_mvt_reason` int(11) NOT NULL, + `id_lang` int(11) NOT NULL, + `name` varchar(255) CHARACTER SET utf8 NOT NULL, + PRIMARY KEY (`id_stock_mvt_reason`,`id_lang`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +INSERT INTO `PREFIX_stock_mvt_reason` (`id_stock_mvt_reason`, `date_add`, `date_upd`) VALUES +(1, NOW(), NOW()), (2, NOW(), NOW()), (3, NOW(), NOW()); + +INSERT INTO `PREFIX_stock_mvt_reason_lang` (`id_stock_mvt_reason`, `id_lang`, `name`) VALUES +(1, 1, 'Order'), +(1, 2, 'Commande'), +(2, 1, 'Missing Stock Movement'), +(2, 2, 'Mouvement de stock manquant'), +(3, 1, 'Restocking'), +(3, 2, 'Réassort'); + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_COMPARATOR_MAX_ITEM', 0, NOW(), NOW()); + +ALTER TABLE `PREFIX_meta_lang` ADD `url_rewrite` VARCHAR( 255 ) NOT NULL , ADD INDEX ( `url_rewrite` ); +INSERT INTO `PREFIX_meta` (`page`) VALUES ('address'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) VALUES +(1, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'address'), 'Address', 'address'), +(2, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'address'), 'Adresse', 'adresse'), +(3, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'address'), 'Dirección', 'direccion'); +INSERT INTO `PREFIX_meta` (`page`) VALUES ('addresses'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) VALUES +(1, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'addresses'), 'Addresses', 'addresses'), +(2, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'addresses'), 'Adresses', 'adresses'), +(3, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'addresses'), 'Direcciones', 'direcciones'); +INSERT INTO `PREFIX_meta` (`page`) VALUES ('authentication'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) VALUES +(1, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'authentication'), 'Authentication', 'authentication'), +(2, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'authentication'), 'Authentification', 'authentification'), +(3, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'authentication'), 'Autenticación', 'autenticacion'); +INSERT INTO `PREFIX_meta` (`page`) VALUES ('cart'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) VALUES +(1, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'cart'), 'Cart', 'cart'), +(2, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'cart'), 'Panier', 'panier'), +(3, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'cart'), 'Carro de la compra', 'carro-de-la-compra'); +INSERT INTO `PREFIX_meta` (`page`) VALUES ('discount'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) VALUES +(1, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'discount'), 'Discount', 'discount'), +(2, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'discount'), 'Bons de réduction', 'bons-de-reduction'), +(3, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'discount'), 'Descuento', 'descuento'); +INSERT INTO `PREFIX_meta` (`page`) VALUES ('history'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) VALUES +(1, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'history'), 'Order history', 'order-history'), +(2, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'history'), 'Historique des commandes', 'historique-des-commandes'), +(3, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'history'), 'Historial de pedidos', 'historial-de-pedidos'); +INSERT INTO `PREFIX_meta` (`page`) VALUES ('identity'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) VALUES +(1, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'identity'), 'Identity', 'identity'), +(2, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'identity'), 'Identité', 'identite'), +(3, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'identity'), 'Identidad', 'identidad'); +INSERT INTO `PREFIX_meta` (`page`) VALUES ('my-account'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) VALUES +(1, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'my-account'), 'My account', 'my-account'), +(2, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'my-account'), 'Mon compte', 'mon-compte'), +(3, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'my-account'), 'Mi Cuenta', 'mi-cuenta'); +INSERT INTO `PREFIX_meta` (`page`) VALUES ('order-follow'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) VALUES +(1, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'order-follow'), 'Order follow', 'order-follow'), +(2, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'order-follow'), 'Détails de la commande', 'details-de-la-commande'), +(3, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'order-follow'), 'Devolución de productos', 'devolucion-de-productos'); +INSERT INTO `PREFIX_meta` (`page`) VALUES ('order-slip'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) VALUES +(1, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'order-slip'), 'Order slip', 'order-slip'), +(2, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'order-slip'), 'Avoirs', 'avoirs'), +(3, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'order-slip'), 'Vales', 'vales'); +INSERT INTO `PREFIX_meta` (`page`) VALUES ('order'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) VALUES +(1, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'order'), 'Order', 'order'), +(2, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'order'), 'Commande', 'commande'), +(3, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'order'), 'Carrito', 'carrito'); +INSERT INTO `PREFIX_meta` (`page`) VALUES ('search'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) VALUES +(1, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'search' LIMIT 1), 'Search', 'search'), +(2, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'search' LIMIT 1), 'Recherche', 'recherche'), +(3, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'search' LIMIT 1), 'Buscar', 'buscar'); +INSERT INTO `PREFIX_meta` (`page`) VALUES ('stores'); +INSERT INTO `PREFIX_meta_lang` (`id_lang`, `id_meta`, `title`, `url_rewrite`) VALUES +(1, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'stores'), 'Stores', 'stores'), +(2, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'stores'), 'Magagins', 'magasins'), +(3, (SELECT `id_meta` FROM `PREFIX_meta` WHERE `page` = 'stores'), 'Tiendas', 'tiendas'); + +ALTER TABLE `PREFIX_manufacturer` ADD `active` tinyint(1) NOT NULL default 0; +ALTER TABLE `PREFIX_supplier` ADD `active` tinyint(1) NOT NULL default 0; +UPDATE `PREFIX_manufacturer` SET `active` = 1; +UPDATE `PREFIX_supplier` SET `active` = 1; +ALTER TABLE `PREFIX_cms` ADD `active` tinyint(1) unsigned NOT NULL default 0; +UPDATE `PREFIX_cms` SET `active` = 1; + +ALTER TABLE `PREFIX_cart` ADD `secure_key` varchar(32) NOT NULL default '-1' AFTER `id_guest`; + +ALTER TABLE `PREFIX_order_detail` ADD `product_upc` varchar(12) default NULL AFTER `product_ean13`; + +ALTER TABLE `PREFIX_discount` ADD `id_group` int(10) unsigned NOT NULL default 0; + +CREATE TABLE `PREFIX_store` ( + `id_store` int(10) unsigned NOT NULL AUTO_INCREMENT, + `id_country` int(10) unsigned NOT NULL, + `id_state` int(10) unsigned DEFAULT NULL, + `name` varchar(128) NOT NULL, + `address1` varchar(128) NOT NULL, + `address2` varchar(128) DEFAULT NULL, + `city` varchar(64) NOT NULL, + `postcode` varchar(12) NOT NULL, + `latitude` float(10,6) DEFAULT NULL, + `longitude` float(10,6) DEFAULT NULL, + `hours` varchar(254) DEFAULT NULL, + `phone` varchar(16) DEFAULT NULL, + `fax` varchar(16) DEFAULT NULL, + `email` varchar(128) DEFAULT NULL, + `note` text, + `active` tinyint(1) unsigned NOT NULL DEFAULT '0', + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_store`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +INSERT INTO `PREFIX_hook` (`name`, `title`, `description`, `position`) VALUES +('categoryAddition', '', 'Temporary hook. Must NEVER be used. Will soon be replaced by a generic CRUD hook system.', 0), +('categoryUpdate', '', 'Temporary hook. Must NEVER be used. Will soon be replaced by a generic CRUD hook system.', 0), +('categoryDeletion', '', 'Temporary hook. Must NEVER be used. Will soon be replaced by a generic CRUD hook system.', 0); + + +/* PHP:add_module_to_hook(blockcategories, categoryAddition); */; +/* PHP:add_module_to_hook(blockcategories, categoryUpdate); */; +/* PHP:add_module_to_hook(blockcategories, categoryDeletion); */; + +DELETE FROM `PREFIX_hook_module` WHERE `id_module` = 0; + +CREATE TABLE `PREFIX_required_field` ( + `id_required_field` int(11) NOT NULL AUTO_INCREMENT, + `object_name` varchar(32) NOT NULL, + `field_name` varchar(32) NOT NULL, + PRIMARY KEY (`id_required_field`), + KEY `object_name` (`object_name`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_memcached_servers` ( +`id_memcached_server` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , +`ip` VARCHAR( 254 ) NOT NULL , +`port` INT(11) UNSIGNED NOT NULL , +`weight` INT(11) UNSIGNED NOT NULL +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_webservice_account` ( + `id_webservice_account` int(11) NOT NULL AUTO_INCREMENT, + `key` varchar(32) NOT NULL, + `active` tinyint(2) NOT NULL, + PRIMARY KEY (`id_webservice_account`), + KEY `key` (`key`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_webservice_permission` ( + `id_webservice_permission` int(11) NOT NULL AUTO_INCREMENT, + `resource` varchar(50) NOT NULL, + `method` enum('GET','POST','PUT','DELETE') NOT NULL, + `id_webservice_account` int(11) NOT NULL, + PRIMARY KEY (`id_webservice_permission`), + UNIQUE KEY `resource_2` (`resource`,`method`,`id_webservice_account`), + KEY `resource` (`resource`), + KEY `method` (`method`), + KEY `id_webservice_account` (`id_webservice_account`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + + +/* PHP */ +/* PHP:editorial_update(); */; +/* PHP:reorderpositions(); */; +/* PHP:update_image_size_in_db(); */; +/* PHP:update_order_details(); */; +/* PHP:add_new_tab(AdminInformation, en:Configuration Information|fr:Informations|es:Informations|it:Informazioni di configurazione|de:Konfigurationsinformationen, 9); */; +/* PHP:add_new_tab(AdminCustomerThreads, en:Customer Service|de:Kundenservice|fr:SAV|es:Servicio al cliente|it:Servizio clienti, 29); */; +/* PHP:add_new_tab(AdminAddonsCatalog, fr:Catalogue de modules et thèmes|de:Module und Themenkatalog|en:Modules & Themes Catalog|it:Moduli & Temi catalogo, 7); */; +/* PHP:add_new_tab(AdminAddonsMyAccount, it:Il mio Account|de:Mein Konto|fr:Mon compte|en:My Account, 7); */; +/* PHP:add_new_tab(AdminPerformance, de:Leistung|en:Performance|it:Performance|fr:Performances|es:Rendimiento, 8); */; +/* PHP:add_new_tab(AdminThemes, es:Temas|it:Temi|de:Themen|en:Themes|fr:Thèmes, 7); */; +/* PHP:add_new_tab(AdminWebservice, fr:Service web|es:Web service|en:Webservice|de:Webservice|it:Webservice, 9); */; + diff --git a/install-new/upgrade/sql/1.4.0.3.sql b/install-new/upgrade/sql/1.4.0.3.sql new file mode 100644 index 000000000..1df6fd470 --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.3.sql @@ -0,0 +1,67 @@ +SET NAMES 'utf8'; + +CREATE TABLE IF NOT EXISTS `PREFIX_country_tax` ( + `id_country_tax` int(11) NOT NULL AUTO_INCREMENT, + `id_country` int(11) NOT NULL, + `id_tax` int(11) NOT NULL, + PRIMARY KEY (`id_country_tax`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_product_country_tax` ( + `id_product` int(11) NOT NULL, + `id_country` int(11) NOT NULL, + `id_tax` int(11) NOT NULL, + UNIQUE KEY `id_product` (`id_product`,`id_country`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +DELETE FROM `PREFIX_tab` WHERE `class_name` = 'AdminStatsModules' LIMIT 1; +DELETE FROM `PREFIX_tab_lang` WHERE `id_tab` NOT IN (SELECT id_tab FROM `PREFIX_tab`); +DELETE FROM `PREFIX_access` WHERE `id_tab` NOT IN (SELECT id_tab FROM `PREFIX_tab`); + +INSERT INTO `PREFIX_module` (`name`, `active`) VALUES ('statsforecast', 1); +INSERT INTO `PREFIX_hook_module` (`id_module`, `id_hook` , `position`) (SELECT id_module, 32, (SELECT max_position from (SELECT MAX(position)+1 as max_position FROM `PREFIX_hook_module` WHERE `id_hook` = 32) tmp) FROM `PREFIX_module` WHERE `name` = 'statsforecast'); + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PS_GEOLOCATION_ENABLED', '0', NOW(), NOW()), +('PS_ALLOWED_COUNTRIES', +'AF;ZA;AX;AL;DZ;DE;AD;AO;AI;AQ;AG;AN;SA;AR;AM;AW;AU;AT;AZ;BS;BH;BD;BB;BY;BE;BZ;BJ;BM;BT;BO;BA;BW;BV;BR;BN;BG;BF;MM;BI;KY;KH;CM;CA;CV;CF;CL;CN;CX;CY;CC;CO;KM;CG;CD;CK;KR;KP;CR;CI;HR;CU;DK;DJ;DM;EG;IE;SV;AE;EC;ER;ES;EE;ET;FK;FO;FJ;FI;FR;GA;GM;GE;GS;GH;GI;GR;GD;GL;GP;GU;GT;GG;GN;GQ;GW;GY;GF;HT;HM;HN;HK;HU;IM;MU;VG;VI;IN;ID;IR;IQ;IS;IL;IT;JM;JP;JE;JO;KZ;KE;KG;KI;KW;LA;LS;LV;LB;LR;LY;LI;LT;LU;MO;MK;MG;MY;MW;MV;ML;MT;MP;MA;MH;MQ;MR;YT;MX;FM;MD;MC;MN;ME;MS;MZ;NA;NR;NP;NI;NE;NG;NU;NF;NO;NC;NZ;IO;OM;UG;UZ;PK;PW;PS;PA;PG;PY;NL;PE;PH;PN;PL;PF;PR;PT;QA;DO;CZ;RE;RO;UK;RU;RW;EH;BL;KN;SM;MF;PM;VA;VC;LC;SB;WS;AS;ST;SN;RS;SC;SL;SG;SK;SI;SO;SD;LK;SE;CH;SR;SJ;SZ;SY;TJ;TW;TZ;TD;TF;TH;TL;TG;TK;TO;TT;TN;TM;TC;TR;TV;UA;UY;US;VU;VE;VN;WF;YE;ZM;ZW', NOW(), NOW()), +('PS_GEOLOCATION_BEHAVIOR', '0', NOW(), NOW()); + +ALTER TABLE `PREFIX_orders` ADD `conversion_rate` decimal(13,6) NOT NULL default 1 AFTER `payment`; +UPDATE `PREFIX_orders` o SET o.`conversion_rate` = IFNULL(( + SELECT c.`conversion_rate` + FROM `PREFIX_currency` c + WHERE c.`id_currency` = o.`id_currency` + LIMIT 1), 0 +); + +ALTER TABLE `PREFIX_order_slip` ADD `conversion_rate` decimal(13,6) NOT NULL default 1 AFTER `id_order`; +UPDATE `PREFIX_order_slip` os SET os.`conversion_rate` = IFNULL(( + SELECT o.`conversion_rate` + FROM `PREFIX_orders` o + WHERE os.`id_order` = o.`id_order` + LIMIT 1), 0 +); + +UPDATE `PREFIX_configuration` SET `value` = 'gridhtml' WHERE `name` = 'PS_STATS_GRID_RENDER' LIMIT 1; +UPDATE `PREFIX_module` SET `name` = 'gridhtml' WHERE `name` = 'gridextjs' LIMIT 1; + +ALTER TABLE `PREFIX_attachment` CHANGE `mime` `mime` varchar(64) NOT NULL; +ALTER TABLE `PREFIX_attachment` ADD `file_name` varchar(128) NOT NULL default '' AFTER `file`; +UPDATE `PREFIX_attachment` a SET `file_name` = ( + SELECT `name` FROM `PREFIX_attachment_lang` al WHERE al.`id_attachment` = a.`id_attachment` AND al.`id_lang` = ( + SELECT `value` FROM `PREFIX_configuration` WHERE `name` = 'PS_LANG_DEFAULT') + ); + +UPDATE `PREFIX_tab` SET `class_name` = 'AdminCMSContent' WHERE `class_name` = 'AdminCMS' LIMIT 1; + +SET @id_timezone = (SELECT `name` FROM `PREFIX_timezone` WHERE `id_timezone` = (SELECT `value` FROM `PREFIX_configuration` WHERE `name` = 'PS_TIMEZONE' LIMIT 1) LIMIT 1); +UPDATE `PREFIX_configuration` SET `value` = @id_timezone WHERE `name` = "PS_TIMEZONE" LIMIT 1; + +ALTER TABLE `PREFIX_country` ADD `id_currency` INT NOT NULL DEFAULT '0' AFTER `id_zone`; + +/* PHP */ +/* PHP:group_reduction_column_fix(); */; +/* PHP:ecotax_tax_application_fix(); */; +/* PHP:cms_block(); */; +/* PHP:add_new_tab(AdminGeolocation, es:Geolocalización|it:Geolocalizzazione|en:Geolocation|de:Geotargeting|fr:Géolocalisation, 8); */; diff --git a/install-new/upgrade/sql/1.4.0.4.sql b/install-new/upgrade/sql/1.4.0.4.sql new file mode 100644 index 000000000..4ad45113c --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.4.sql @@ -0,0 +1,21 @@ +SET NAMES 'utf8'; +ALTER TABLE `PREFIX_product` CHANGE `ecotax` `ecotax` DECIMAL(21, 6) NOT NULL DEFAULT '0.00'; +/* PHP:move_crossselling(); */; + +UPDATE `PREFIX_cms` SET `id_cms_category` = 1; + +/* PHP:add_new_tab(AdminStores, fr:Magasins|es:Tiendas|en:Stores|de:Shops|it:Negozi, 9); */; + +INSERT IGNORE INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) SELECT 'PS_LOCALE_LANGUAGE', l.`iso_code`, NOW(), NOW() FROM `PREFIX_configuration` c INNER JOIN `PREFIX_lang` l ON (l.`id_lang` = c.`value`) WHERE c.`name` = 'PS_LANG_DEFAULT'; +INSERT IGNORE INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) SELECT 'PS_LOCALE_COUNTRY', co.`iso_code`, NOW(), NOW() FROM `PREFIX_configuration` c INNER JOIN `PREFIX_country` co ON (co.`id_country` = c.`value`) WHERE c.`name` = 'PS_COUNTRY_DEFAULT'; +/* PHP:reorderpositions(); */; + +ALTER TABLE `PREFIX_webservice_permission` CHANGE `method` `method` ENUM( 'GET', 'POST', 'PUT', 'DELETE', 'HEAD' ) NOT NULL; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PS_ATTACHMENT_MAXIMUM_SIZE', '2', NOW(), NOW()), +('PS_SMARTY_CACHE', '1', NOW(), NOW()); + +ALTER TABLE `PREFIX_product_attribute` CHANGE `price` `price` decimal(20,6) NOT NULL default '0.000000'; +UPDATE `PREFIX_product_attribute` pa SET pa.`price` = pa.`price` / (1 + IFNULL((SELECT t.`rate` FROM `PREFIX_tax` t INNER JOIN `PREFIX_product` p ON (p.`id_tax` = t.`id_tax`) WHERE p.`id_product` = pa.`id_product`) ,0) / 100); + diff --git a/install-new/upgrade/sql/1.4.0.5.sql b/install-new/upgrade/sql/1.4.0.5.sql new file mode 100644 index 000000000..42a62d345 --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.5.sql @@ -0,0 +1,73 @@ +SET NAMES 'utf8'; + +SET @alias = (SELECT IFNULL((SELECT `id_tab` FROM `PREFIX_tab` WHERE `class_name` = "AdminAliases" LIMIT 1), '0')); +UPDATE `PREFIX_tab` SET `id_parent` = 8 WHERE `id_tab` = @alias LIMIT 1; +SET @stores = (SELECT IFNULL((SELECT `id_tab` FROM `PREFIX_tab` WHERE `class_name` = "AdminStores" LIMIT 1), '0')); +UPDATE `PREFIX_tab` SET `id_parent` = 9 WHERE `id_tab` = @stores LIMIT 1; +SET @pdf = (SELECT IFNULL((SELECT `id_tab` FROM `PREFIX_tab` WHERE `class_name` = "AdminPDF" LIMIT 1), '0')); +UPDATE `PREFIX_tab` SET `id_parent` = 3 WHERE `id_tab` = @pdf LIMIT 1; +SET @tabs = (SELECT IFNULL((SELECT `id_tab` FROM `PREFIX_tab` WHERE `class_name` = "AdminTabs" LIMIT 1), '0')); +UPDATE `PREFIX_tab` SET `id_parent` = 29 WHERE `id_tab` = @tabs LIMIT 1; + +ALTER TABLE `PREFIX_image_type` ADD `stores` tinyint(1) NOT NULL default '1'; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PS_FORCE_SMARTY_2', '0', NOW(), NOW()), +('PS_DIMENSION_UNIT', 'cm', NOW(), NOW()); + +ALTER TABLE `PREFIX_product` +ADD `width` FLOAT NOT NULL AFTER `location`, +ADD `height` FLOAT NOT NULL AFTER `width`, +ADD `depth` FLOAT NOT NULL AFTER `height`; + +SET @id_module = (SELECT IFNULL((SELECT `id_module` FROM `PREFIX_module` WHERE `name` = "statshome" LIMIT 1), '0')); +DELETE FROM `PREFIX_module` WHERE `id_module` = @id_module; +DELETE FROM `PREFIX_hook_module` WHERE `id_module` = @id_module; + +ALTER TABLE `PREFIX_customer` ADD `is_guest` TINYINT(1) NOT NULL DEFAULT '0' AFTER `deleted`; +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_GUEST_CHECKOUT_ENABLED', '0', NOW(), NOW()); + +ALTER TABLE `PREFIX_category` ADD `nleft` INT UNSIGNED NOT NULL DEFAULT '0' AFTER `level_depth`; +ALTER TABLE `PREFIX_category` ADD `nright` INT UNSIGNED NOT NULL DEFAULT '0' AFTER `nleft`; +ALTER TABLE `PREFIX_category` ADD INDEX `nleftright` (`nleft`, `nright`); + +ALTER TABLE `PREFIX_product` ADD `id_tax_rules_group` int(10) unsigned NOT NULL AFTER `id_tax`; +ALTER TABLE `PREFIX_carrier` ADD `id_tax_rules_group` int(10) unsigned NOT NULL AFTER `id_tax`; +ALTER TABLE `PREFIX_carrier` ADD INDEX ( `id_tax_rules_group` ) ; + +CREATE TABLE `PREFIX_tax_rule` ( +`id_tax_rules_group` INT NOT NULL , +`id_country` INT NOT NULL , +`id_state` INT NOT NULL , +`id_tax` INT NOT NULL , +`state_behavior` INT NOT NULL , +PRIMARY KEY ( `id_tax_rules_group`, `id_country` , `id_state` ) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_tax_rules_group` ( +`id_tax_rules_group` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , +`name` VARCHAR( 32 ) NOT NULL , +`active` INT NOT NULL +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_help_access` ( + `id_help_access` int(11) NOT NULL AUTO_INCREMENT, + `label` varchar(45) NOT NULL, + `version` varchar(8) NOT NULL, + PRIMARY KEY (`id_help_access`), + UNIQUE KEY `label` (`label`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +/* PHP:add_new_tab(AdminTaxRulesGroup, it:Regimi fiscali|es:Reglas de Impuestos|fr:Règles de taxes|de:Steuerregeln|en:Tax Rules, 4); */; +/* PHP:generate_ntree(); */; +/* PHP:generate_tax_rules(); */; +/* PHP:id_currency_country_fix(); */; +/* PHP:update_modules_sql(); */; + +ALTER TABLE `PREFIX_product` DROP `id_tax`; +ALTER TABLE `PREFIX_carrier` DROP `id_tax`; + +DROP TABLE `PREFIX_tax_state`, `PREFIX_tax_zone`, `PREFIX_country_tax`; +ALTER TABLE `PREFIX_orders` ADD `carrier_tax_rate` DECIMAL(10, 3) NOT NULL default '0.00' AFTER `total_shipping`; + +INSERT INTO `PREFIX_hook` (`id_hook`, `name`, `title`, `description`, `position`) VALUES (NULL, 'beforeAuthentication', 'Before Authentication', 'Before authentication', 0); diff --git a/install-new/upgrade/sql/1.4.0.6.sql b/install-new/upgrade/sql/1.4.0.6.sql new file mode 100644 index 000000000..f3b33b76d --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.6.sql @@ -0,0 +1,12 @@ +SET NAMES 'utf8'; + +ALTER TABLE `PREFIX_customer` DROP INDEX `customer_email`; +ALTER TABLE `PREFIX_customer` ADD INDEX `customer_email` (`email`); + +ALTER TABLE `PREFIX_lang` ADD `language_code` char(5) NULL AFTER `iso_code`; +UPDATE `PREFIX_lang` SET language_code = iso_code; +ALTER TABLE `PREFIX_lang` MODIFY `language_code` char(5) NOT NULL; + +DELETE FROM `PREFIX_module` WHERE `name` = 'gridextjs' LIMIT 1; +DELETE FROM `PREFIX_hook_module` WHERE `id_module` NOT IN (SELECT id_module FROM `PREFIX_module`); +UPDATE `PREFIX_configuration` SET `value` = 'gridhtml' WHERE `name` = 'PS_STATS_GRID_RENDER' AND `value` = 'gridextjs' LIMIT 1; diff --git a/install-new/upgrade/sql/1.4.0.7.sql b/install-new/upgrade/sql/1.4.0.7.sql new file mode 100644 index 000000000..1edfbdac1 --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.7.sql @@ -0,0 +1,10 @@ +SET NAMES 'utf8'; + +ALTER TABLE `PREFIX_product_attribute` ADD `minimal_quantity` int(10) unsigned NOT NULL DEFAULT '1' AFTER `default_on`; + +ALTER TABLE `PREFIX_orders` ADD `reference` VARCHAR(14) NOT NULL AFTER `id_address_invoice`; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES('PS_DISPLAY_SUPPLIERS', '1', NOW(), NOW()); + +/* PHP:update_products_ecotax_v133(); */; + diff --git a/install-new/upgrade/sql/1.4.0.8.sql b/install-new/upgrade/sql/1.4.0.8.sql new file mode 100644 index 000000000..da0a17fcf --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.8.sql @@ -0,0 +1,35 @@ +SET NAMES 'utf8'; + +CREATE TEMPORARY TABLE `PREFIX_tab_tmp1` ( + `id_parent` int(11) +); +INSERT INTO `PREFIX_tab_tmp1` (SELECT * FROM (SELECT `id_parent` FROM `PREFIX_tab` WHERE `class_name` = 'AdminTaxes') AS tmp); + +CREATE TEMPORARY TABLE `PREFIX_tab_tmp2` ( + `position` int(10) +); + +INSERT INTO `PREFIX_tab_tmp2` (SELECT * FROM (SELECT `position` FROM `PREFIX_tab` WHERE `class_name` = 'AdminTaxes') AS tmp2); + +UPDATE `PREFIX_tab` SET `position` = `position` + 1 WHERE `id_parent` = (SELECT id_parent FROM PREFIX_tab_tmp1 AS tmp) AND `position` > (SELECT position FROM PREFIX_tab_tmp2 AS tmp2); +DROP TABLE PREFIX_tab_tmp1; +DROP TABLE PREFIX_tab_tmp2; + +CREATE TEMPORARY TABLE `PREFIX_tab_tmp` ( + `position` int(10) +); + +INSERT INTO `PREFIX_tab_tmp` (SELECT * FROM (SELECT `position` FROM `PREFIX_tab` WHERE `class_name` = 'AdminTaxes') AS tmp); +UPDATE `PREFIX_tab` SET `position` = (SELECT position FROM PREFIX_tab_tmp tmp) + 1 WHERE `class_name` = 'AdminTaxRulesGroup'; +DROP TABLE PREFIX_tab_tmp; + +UPDATE `PREFIX_hook` SET `title` = 'Category creation', description = '' WHERE `name` = 'categoryAddition' LIMIT 1; +UPDATE `PREFIX_hook` SET `title` = 'Category modification', description = '' WHERE `name` = 'categoryUpdate' LIMIT 1; +UPDATE `PREFIX_hook` SET `title` = 'Category removal', description = '' WHERE `name` = 'categoryDeletion' LIMIT 1; + +DELETE FROM `PREFIX_module` WHERE `name` = 'canonicalurl' LIMIT 1; +DELETE FROM `PREFIX_hook_module` WHERE `id_module` NOT IN (SELECT id_module FROM `PREFIX_module`); + +/* PHP:gridextjs_deprecated(); */; +/* PHP:shop_url(); */; +/* PHP:updateproductcomments(); */; \ No newline at end of file diff --git a/install-new/upgrade/sql/1.4.0.9.sql b/install-new/upgrade/sql/1.4.0.9.sql new file mode 100644 index 000000000..a975b0927 --- /dev/null +++ b/install-new/upgrade/sql/1.4.0.9.sql @@ -0,0 +1,16 @@ +SET NAMES 'utf8'; + +CREATE TABLE `PREFIX_specific_price_priority` ( +`id_specific_price_priority` INT NOT NULL AUTO_INCREMENT , +`id_product` INT NOT NULL , +`priority` VARCHAR( 80 ) NOT NULL , +PRIMARY KEY ( `id_specific_price_priority` , `id_product` ) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +ALTER TABLE `PREFIX_product` ADD `unit_price_ratio` DECIMAL(20, 6) NOT NULL default '0.00' AFTER `unit_price`; + +UPDATE `PREFIX_product` SET `unit_price_ratio` = IF (`unit_price` != 0, `price` / `unit_price`, 0); + +ALTER TABLE `PREFIX_product` DROP `unit_price`; + +ALTER TABLE `PREFIX_discount` ADD `behavior_not_exhausted` TINYINT(3) DEFAULT '1' AFTER `id_discount_type`; diff --git a/install-new/upgrade/sql/1.4.1.0.sql b/install-new/upgrade/sql/1.4.1.0.sql new file mode 100644 index 000000000..fb914c24a --- /dev/null +++ b/install-new/upgrade/sql/1.4.1.0.sql @@ -0,0 +1,43 @@ +SET NAMES 'utf8'; + +INSERT INTO `PREFIX_hook` (`name`, `title`, `description`, `position`, `live_edit`) VALUES ('afterSaveAdminMeta', 'After save configuration in AdminMeta', 'After save configuration in AdminMeta', 0, 0); + +ALTER TABLE `PREFIX_webservice_account` ADD `is_module` TINYINT( 2 ) NOT NULL DEFAULT '0' AFTER `class_name` , +ADD `module_name` VARCHAR( 50 ) NULL DEFAULT NULL AFTER `is_module`; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PS_IMG_UPDATE_TIME', UNIX_TIMESTAMP(), NOW(), NOW()); + +UPDATE `PREFIX_cms_lang` set link_rewrite = "uber-uns" where link_rewrite like "%ber-uns"; + +ALTER TABLE `PREFIX_connections` CHANGE `ip_address` `ip_address` BIGINT NULL DEFAULT NULL; + + +UPDATE `PREFIX_meta_lang` +SET `title` = 'Angebote', `keywords` = 'besonders, Angebote', `url_rewrite` = 'angebote' WHERE url_rewrite = 'preise-fallen'; + +ALTER TABLE `PREFIX_country` ADD `display_tax_label` BOOLEAN NOT NULL DEFAULT '1'; +DROP TABLE IF EXISTS `PREFIX_country_tax`; + +ALTER TABLE `PREFIX_order_detail` +CHANGE `product_quantity_in_stock` `product_quantity_in_stock` INT(10) NOT NULL DEFAULT '0'; + +CREATE TABLE `PREFIX_address_format` ( + `id_country` int(10) unsigned NOT NULL, + `format` varchar(255) NOT NULL DEFAULT '', + KEY `country` (`id_country`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +INSERT INTO `PREFIX_address_format` (`id_country`, `format`) +(SELECT `id_country` as id_country, 'firstname lastname\ncompany\nvat_number\naddress1\naddress2\npostcode city\ncountry\nphone' as format FROM PREFIX_country); + +UPDATE `PREFIX_address_format` set `format`='firstname lastname +company +address1 +address2 +city State:name postcode +country +phone' where `id_country`=21; + +/* PHP:alter_cms_block(); */; +/* PHP:add_module_to_hook(blockcategories, afterSaveAdminMeta); */; diff --git a/install-new/upgrade/sql/1.4.2.0.sql b/install-new/upgrade/sql/1.4.2.0.sql new file mode 100644 index 000000000..b4920b207 --- /dev/null +++ b/install-new/upgrade/sql/1.4.2.0.sql @@ -0,0 +1,20 @@ +SET NAMES 'utf8'; + +ALTER TABLE `PREFIX_tab_lang` MODIFY `id_lang` int(10) unsigned NOT NULL AFTER `id_tab`; +ALTER TABLE `PREFIX_carrier` ADD `is_free` tinyint(1) unsigned NOT NULL DEFAULT '0' AFTER `is_module`; + +UPDATE `PREFIX_address_format` SET `format`=REPLACE(REPLACE(`format`, 'state_iso', 'State:name'), 'country', 'Country:name'); + +ALTER TABLE `PREFIX_orders` ADD INDEX `date_add`(`date_add`); + +/* PHP:update_module_followup(); */; + +INSERT IGNORE INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PS_STOCK_MVT_REASON_DEFAULT', 3, NOW(), NOW()); + +/* PHP:add_order_state(PS_OS_WS_PAYMENT, en:Payment remotely accepted|fr:Paiement à distance accepté, 1, 0, #DDEEFF, 1, 1, 0); */; +/* PHP:alter_blocklink(); */; +/* PHP:update_module_loyalty(); */; +/* PHP:remove_module_from_hook(blockcategories, afterCreateHtaccess); */; +/* PHP:updatetabicon_from_11version(); */; + diff --git a/install-new/upgrade/sql/1.4.2.1.sql b/install-new/upgrade/sql/1.4.2.1.sql new file mode 100644 index 000000000..bb1503351 --- /dev/null +++ b/install-new/upgrade/sql/1.4.2.1.sql @@ -0,0 +1,3 @@ +SET NAMES 'utf8'; + +DELETE FROM `PREFIX_configuration_lang` WHERE 1 AND `value` is NULL AND `date_upd` is NULL; diff --git a/install-new/upgrade/sql/1.4.2.2.sql b/install-new/upgrade/sql/1.4.2.2.sql new file mode 100644 index 000000000..35f908ba5 --- /dev/null +++ b/install-new/upgrade/sql/1.4.2.2.sql @@ -0,0 +1,11 @@ +SET NAMES 'utf8'; + +UPDATE `PREFIX_country` SET `display_tax_label` = '1' WHERE `id_country` = 21; + +/* PHP:check_webservice_account_table(); */; +/* PHP:add_module_to_hook(blockcms, leftColumn); */; +/* PHP:add_module_to_hook(blockcms, rightColumn); */; +/* PHP:add_module_to_hook(blockcms, footer); */; + +UPDATE `PREFIX_cart` ca SET `secure_key` = IFNULL((SELECT `secure_key` from `PREFIX_customer` `cu` WHERE `cu`.`id_customer` = `ca`.`id_customer`), -1) WHERE `ca`.`secure_key` = -1; + diff --git a/install-new/upgrade/sql/1.4.2.3.sql b/install-new/upgrade/sql/1.4.2.3.sql new file mode 100644 index 000000000..6022be885 --- /dev/null +++ b/install-new/upgrade/sql/1.4.2.3.sql @@ -0,0 +1,30 @@ +SET NAMES 'utf8'; + +UPDATE `PREFIX_address_format` SET `format`=REPLACE(`format`, 'state', 'State:name'); + +SET @defaultOOS = (SELECT value FROM `PREFIX_configuration` WHERE name = 'PS_ORDER_OUT_OF_STOCK'); +/* Set 0 for every non-attribute product */ +UPDATE `PREFIX_product` p SET `cache_default_attribute` = 0 WHERE `id_product` NOT IN (SELECT `id_product` FROM `PREFIX_product_attribute`); +/* First default attribute in stock */ +UPDATE `PREFIX_product` p SET `cache_default_attribute` = (SELECT `id_product_attribute` FROM `PREFIX_product_attribute` WHERE `id_product` = p.`id_product` AND default_on = 1 AND quantity > 0 LIMIT 1) WHERE `cache_default_attribute` IS NULL; +/* Then default attribute without stock if we don't care */ +UPDATE `PREFIX_product` p SET `cache_default_attribute` = (SELECT `id_product_attribute` FROM `PREFIX_product_attribute` WHERE `id_product` = p.`id_product` AND default_on = 1 LIMIT 1) WHERE `cache_default_attribute` IS NULL AND `out_of_stock` = 1 OR `out_of_stock` = IF(@defaultOOS = 1, 2, 1); +/* Next, the default attribute can be any attribute with stock */ +UPDATE `PREFIX_product` p SET `cache_default_attribute` = (SELECT `id_product_attribute` FROM `PREFIX_product_attribute` WHERE `id_product` = p.`id_product` AND quantity > 0 LIMIT 1) WHERE `cache_default_attribute` IS NULL; +/* If there is still no default attribute, then we go back to the default one */ +UPDATE `PREFIX_product` p SET `cache_default_attribute` = (SELECT `id_product_attribute` FROM `PREFIX_product_attribute` WHERE `id_product` = p.`id_product` AND default_on = 1 LIMIT 1) WHERE `cache_default_attribute` IS NULL; + +UPDATE `PREFIX_order_state_lang` SET `name` = 'Zahlung eingegangen' WHERE `PREFIX_order_state_lang`.`id_order_state` =2 AND `PREFIX_order_state_lang`.`id_lang` = (SELECT id_lang FROM `PREFIX_lang` WHERE `iso_code` = 'de'); +UPDATE `PREFIX_order_state_lang` SET `name` = 'Bestellung eingegangen' WHERE `PREFIX_order_state_lang`.`id_order_state` =3 AND `PREFIX_order_state_lang`.`id_lang` = (SELECT id_lang FROM `PREFIX_lang` WHERE `iso_code` = 'de'); +UPDATE `PREFIX_order_state_lang` SET `name` = 'Versendet' WHERE `PREFIX_order_state_lang`.`id_order_state` =4 AND `PREFIX_order_state_lang`.`id_lang` = (SELECT id_lang FROM `PREFIX_lang` WHERE `iso_code` = 'de'); +UPDATE `PREFIX_order_state_lang` SET `name` = 'Erfolgreich abgeschlossen' WHERE `PREFIX_order_state_lang`.`id_order_state` =5 AND `PREFIX_order_state_lang`.`id_lang` = (SELECT id_lang FROM `PREFIX_lang` WHERE `iso_code` = 'de'); +UPDATE `PREFIX_order_state_lang` SET `name` = 'Storniert' WHERE `PREFIX_order_state_lang`.`id_order_state` =6 AND `PREFIX_order_state_lang`.`id_lang` = (SELECT id_lang FROM `PREFIX_lang` WHERE `iso_code` = 'de'); +UPDATE `PREFIX_order_state_lang` SET `name` = 'Fehler bei der Bezahlung' WHERE `PREFIX_order_state_lang`.`id_order_state` =8 AND `PREFIX_order_state_lang`.`id_lang` = (SELECT id_lang FROM `PREFIX_lang` WHERE `iso_code` = 'de'); +UPDATE `PREFIX_order_state_lang` SET `name` = 'Artikel erwartet' WHERE `PREFIX_order_state_lang`.`id_order_state` =9 AND `PREFIX_order_state_lang`.`id_lang` = (SELECT id_lang FROM `PREFIX_lang` WHERE `iso_code` = 'de'); +UPDATE `PREFIX_order_state_lang` SET `name` = 'Warten auf Zahlungseingang' WHERE `PREFIX_order_state_lang`.`id_order_state` =10 AND `PREFIX_order_state_lang`.`id_lang` = (SELECT id_lang FROM `PREFIX_lang` WHERE `iso_code` = 'de'); +UPDATE `PREFIX_order_state_lang` SET `name` = 'Warten auf Zahlungseingang von PayPal' WHERE `PREFIX_order_state_lang`.`id_order_state` =11 AND `PREFIX_order_state_lang`.`id_lang` = (SELECT id_lang FROM `PREFIX_lang` WHERE `iso_code` = 'de'); +UPDATE `PREFIX_order_state_lang` SET `name` = 'PayPal Anmeldung erfolgreich' WHERE `PREFIX_order_state_lang`.`id_order_state` =12 AND `PREFIX_order_state_lang`.`id_lang` = (SELECT id_lang FROM `PREFIX_lang` WHERE `iso_code` = 'de'); + +UPDATE `PREFIX_meta_lang` SET `url_rewrite` = 'identita' WHERE `url_rewrite` = 'Identità'; + +/* PHP:add_missing_rewrite_value(); */; diff --git a/install-new/upgrade/sql/1.4.2.4.sql b/install-new/upgrade/sql/1.4.2.4.sql new file mode 100644 index 000000000..1d5c1fd1c --- /dev/null +++ b/install-new/upgrade/sql/1.4.2.4.sql @@ -0,0 +1,10 @@ +SET NAMES 'utf8'; + +INSERT IGNORE INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES ('PS_BACKUP_DROP_TABLE', 1, NOW(), NOW()); + +UPDATE `PREFIX_tab_lang` SET `name` = 'SEO & URLs' WHERE `id_tab` = (SELECT `id_tab` FROM `PREFIX_tab` WHERE `class_name` = 'AdminMeta' LIMIT 1) AND `id_lang` IN (SELECT `id_lang` FROM `PREFIX_lang` WHERE `iso_code` IN ('en','fr','es','de','it')); + +/* These 3 lines (remove_duplicate, drop index, add unique) MUST stay together in this order */ +/* PHP:remove_duplicate_category_groups(); */; +ALTER TABLE `PREFIX_category_group` DROP INDEX `category_group_index`; +ALTER TABLE `PREFIX_category_group` ADD UNIQUE `category_group_index` (`id_category`,`id_group`); \ No newline at end of file diff --git a/install-new/upgrade/sql/1.4.2.5.sql b/install-new/upgrade/sql/1.4.2.5.sql new file mode 100644 index 000000000..a5787c654 --- /dev/null +++ b/install-new/upgrade/sql/1.4.2.5.sql @@ -0,0 +1,4 @@ +SET NAMES 'utf8'; + +/* Fix wrong category level_depth caused by bug in 1.4.0.13 upgrade script */ +/* PHP:regenerate_level_depth(); */; \ No newline at end of file diff --git a/install-new/upgrade/sql/1.4.3.0.sql b/install-new/upgrade/sql/1.4.3.0.sql new file mode 100644 index 000000000..e5be50568 --- /dev/null +++ b/install-new/upgrade/sql/1.4.3.0.sql @@ -0,0 +1,16 @@ +SET NAMES 'utf8'; + +UPDATE `PREFIX_address_format` SET `format`='firstname lastname +company +address1 +address2 +city +State:name +postcode +Country:name' +WHERE `id_country` = (SELECT `id_country` FROM `PREFIX_country` WHERE `iso_code`='GB'); + +UPDATE `PREFIX_country` SET `contains_states` = 1 WHERE `id_country` = 145; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PS_LEGACY_IMAGES', '1', NOW(), NOW()); \ No newline at end of file diff --git a/install-new/upgrade/sql/1.4.4.0.sql b/install-new/upgrade/sql/1.4.4.0.sql new file mode 100644 index 000000000..1c632dd83 --- /dev/null +++ b/install-new/upgrade/sql/1.4.4.0.sql @@ -0,0 +1,79 @@ +SET NAMES 'utf8'; + +ALTER TABLE `PREFIX_image` MODIFY COLUMN `position` SMALLINT(2) UNSIGNED NOT NULL DEFAULT 0; + +INSERT IGNORE INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PS_OS_CHEQUE', '1', NOW(), NOW()), +('PS_OS_PAYMENT', '2', NOW(), NOW()), +('PS_OS_PREPARATION', '3', NOW(), NOW()), +('PS_OS_SHIPPING', '4', NOW(), NOW()), +('PS_OS_DELIVERED', '5', NOW(), NOW()), +('PS_OS_CANCELED', '6', NOW(), NOW()), +('PS_OS_REFUND', '7', NOW(), NOW()), +('PS_OS_ERROR', '8', NOW(), NOW()), +('PS_OS_OUTOFSTOCK', '9', NOW(), NOW()), +('PS_OS_BANKWIRE', '10', NOW(), NOW()), +('PS_OS_PAYPAL', '11', NOW(), NOW()), +('PS_OS_WS_PAYMENT', '12', NOW(), NOW()), +('PS_IMAGE_QUALITY', 'jpg', NOW(), NOW()), +('PS_PNG_QUALITY', '7', NOW(), NOW()), +('PS_JPEG_QUALITY', '90', NOW(), NOW()), +('PS_COOKIE_LIFETIME_FO', '480', NOW(), NOW()), +('PS_COOKIE_LIFETIME_BO', '480', NOW(), NOW()); + +ALTER TABLE `PREFIX_lang` ADD `is_rtl` TINYINT(1) NOT NULL DEFAULT '0'; + +UPDATE `PREFIX_country_lang` +SET `name` = 'United States' +WHERE `name` = 'USA' +AND `id_lang` = ( + SELECT `id_lang` + FROM `PREFIX_lang` + WHERE `iso_code` = 'en' + LIMIT 1 +); + +UPDATE `PREFIX_hook` +SET `live_edit` = 1 +WHERE `name` = 'leftColumn' +OR `name` = 'home' +OR `name` = 'rightColumn' +OR `name` = 'productfooter' +OR `name` = 'payment'; + +ALTER TABLE `PREFIX_stock_mvt_reason` MODIFY `sign` TINYINT(1) NOT NULL DEFAULT '1' AFTER `id_stock_mvt_reason`; + +UPDATE `PREFIX_tab_lang` +SET `name` = 'Geolocation' +WHERE `name` = 'Geolocalization'; + +UPDATE `PREFIX_tab_lang` +SET `name` = 'Counties' +WHERE `name` = 'County'; + +ALTER TABLE `PREFIX_tax_rule` MODIFY `id_county` INT NOT NULL AFTER `id_country`; + +UPDATE `PREFIX_address_format` set `format`='firstname lastname +company +address1 address2 +city, State:name postcode +Country:name +phone' +WHERE `id_country` = (SELECT `id_country` FROM `PREFIX_country` WHERE `iso_code`='US'); + +ALTER TABLE `PREFIX_attachment` CHANGE `mime` `mime` VARCHAR(128) NOT NULL; + +CREATE TABLE IF NOT EXISTS `PREFIX_compare_product` ( + `id_compare_product` int(10) unsigned NOT NULL AUTO_INCREMENT, + `id_product` int(10) unsigned NOT NULL, + `id_guest` int(10) unsigned NOT NULL, + `id_customer` int(10) unsigned NOT NULL, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_compare_product`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +DELETE FROM `PREFIX_configuration` WHERE name = 'PS_LAYERED_NAVIGATION_CHECKBOXES' LIMIT 1; + +/* PHP:alter_productcomments_guest_index(); */; + diff --git a/install-new/upgrade/sql/1.4.4.1.sql b/install-new/upgrade/sql/1.4.4.1.sql new file mode 100644 index 000000000..0b4cf1b2f --- /dev/null +++ b/install-new/upgrade/sql/1.4.4.1.sql @@ -0,0 +1 @@ +SET NAMES 'utf8'; diff --git a/install-new/upgrade/sql/1.4.5.0.sql b/install-new/upgrade/sql/1.4.5.0.sql new file mode 100644 index 000000000..f5d05001a --- /dev/null +++ b/install-new/upgrade/sql/1.4.5.0.sql @@ -0,0 +1,55 @@ +SET NAMES 'utf8'; + +INSERT IGNORE INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PS_RESTRICT_DELIVERED_COUNTRIES', '0', NOW(), NOW()); + +UPDATE `PREFIX_country_lang` SET `name` = 'United States' WHERE `name` = 'United State'; + +ALTER TABLE `PREFIX_discount` ADD `include_tax` TINYINT(1) NOT NULL DEFAULT '0'; + +UPDATE `PREFIX_order_detail` SET `product_price` = `product_price` /( 1-(`group_reduction`/100)); + +DELETE FROM `PREFIX_configuration` WHERE name IN ('PS_LAYERED_BITLY_USERNAME', 'PS_LAYERED_BITLY_API_KEY', 'PS_LAYERED_SHARE') LIMIT 3; + +ALTER TABLE `PREFIX_delivery` CHANGE `price` `price` DECIMAL(20, 6) NOT NULL; + +ALTER TABLE `PREFIX_store` CHANGE `latitude` `latitude` DECIMAL(10, 8) NULL DEFAULT NULL; +ALTER TABLE `PREFIX_store` CHANGE `longitude` `longitude` DECIMAL(10, 8) NULL DEFAULT NULL; + +INSERT INTO `PREFIX_hook` (`name`, `title`, `description`, `position`, `live_edit`) VALUES +('attributeGroupForm', 'Add fields to the form "attribute group"', 'Add fields to the form "attribute group"', 0, 0), +('afterSaveAttributeGroup', 'On saving attribute group', 'On saving attribute group', 0, 0), +('afterDeleteAttributeGroup', 'On deleting attribute group', 'On deleting "attribute group', 0, 0), +('featureForm', 'Add fields to the form "feature"', 'Add fields to the form "feature"', 0, 0), +('afterSaveFeature', 'On saving attribute feature', 'On saving attribute feature', 0, 0), +('afterDeleteFeature', 'On deleting attribute feature', 'On deleting attribute feature', 0, 0), +('afterSaveProduct', 'On saving products', 'On saving products', 0, 0), +('productListAssign', 'Assign product list to a category', 'Assign product list to a category', 0, 0), +('postProcessAttributeGroup', 'On post-process in admin attribute group', 'On post-process in admin attribute group', 0, 0), +('postProcessFeature', 'On post-process in admin feature', 'On post-process in admin feature', 0, 0), +('featureValueForm', 'Add fields to the form "feature value"', 'Add fields to the form "feature value"', 0, 0), +('postProcessFeatureValue', 'On post-process in admin feature value', 'On post-process in admin feature value', 0, 0), +('afterDeleteFeatureValue', 'On deleting attribute feature value', 'On deleting attribute feature value', 0, 0), +('afterSaveFeatureValue', 'On saving attribute feature value', 'On saving attribute feature value', 0, 0), +('attributeForm', 'Add fields to the form "feature value"', 'Add fields to the form "feature value"', 0, 0), +('postProcessAttribute', 'On post-process in admin feature value', 'On post-process in admin feature value', 0, 0), +('afterDeleteAttribute', 'On deleting attribute feature value', 'On deleting attribute feature value', 0, 0), +('afterSaveAttribute', 'On saving attribute feature value', 'On saving attribute feature value', 0, 0); + +ALTER TABLE `PREFIX_employee` ADD `bo_show_screencast` TINYINT(1) NOT NULL DEFAULT '1' AFTER `bo_uimode`; + +UPDATE `PREFIX_country` SET id_zone = (SELECT id_zone FROM `PREFIX_zone` WHERE name = 'Oceania' LIMIT 1) WHERE iso_code = 'KI' LIMIT 1; + +ALTER TABLE `PREFIX_lang` ADD `date_format_lite` char(32) NOT NULL DEFAULT 'Y-m-d' AFTER language_code; +ALTER TABLE `PREFIX_lang` ADD `date_format_full` char(32) NOT NULL DEFAULT 'Y-m-d H:i:s' AFTER date_format_lite; +UPDATE `PREFIX_lang` SET `date_format_lite` = 'd/m/Y' WHERE `iso_code` IN ('fr', 'es', 'it'); +UPDATE `PREFIX_lang` SET `date_format_full` = 'd/m/Y H:i:s' WHERE `iso_code` IN ('fr', 'es', 'it'); +UPDATE `PREFIX_lang` SET `date_format_lite` = 'd.m.Y' WHERE `iso_code` = 'de'; +UPDATE `PREFIX_lang` SET `date_format_full` = 'd.m.Y H:i:s' WHERE `iso_code` = 'de'; +UPDATE `PREFIX_lang` SET `date_format_lite` = 'm/d/Y' WHERE `iso_code` = 'en'; +UPDATE `PREFIX_lang` SET `date_format_full` = 'm/d/Y H:i:s' WHERE `iso_code` = 'en'; + +ALTER IGNORE TABLE `PREFIX_specific_price_priority` ADD UNIQUE ( +`id_product` +); + diff --git a/install-new/upgrade/sql/1.4.5.1.sql b/install-new/upgrade/sql/1.4.5.1.sql new file mode 100644 index 000000000..0b4cf1b2f --- /dev/null +++ b/install-new/upgrade/sql/1.4.5.1.sql @@ -0,0 +1 @@ +SET NAMES 'utf8'; diff --git a/install-new/upgrade/sql/1.5.0.0.sql b/install-new/upgrade/sql/1.5.0.0.sql new file mode 100644 index 000000000..c96d511aa --- /dev/null +++ b/install-new/upgrade/sql/1.5.0.0.sql @@ -0,0 +1,324 @@ +SET NAMES 'utf8'; +CREATE TABLE IF NOT EXISTS `PREFIX_group_shop` ( + `id_group_shop` int(11) unsigned NOT NULL AUTO_INCREMENT, + `name` varchar(64) CHARACTER SET utf8 NOT NULL, + `share_customer` TINYINT(1) NOT NULL, + `share_order` TINYINT(1) NOT NULL, + `share_stock` TINYINT(1) NOT NULL, + `active` tinyint(1) NOT NULL DEFAULT '1', + `deleted` tinyint(1) NOT NULL DEFAULT '0', + PRIMARY KEY (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_group_shop` (`id_group_shop`, `name`, `active`, `deleted`, `share_stock`, `share_customer`, `share_order`) VALUES (1, 'Default', 1, 0, 0, 0, 0); + +CREATE TABLE IF NOT EXISTS `PREFIX_shop` ( + `id_shop` int(11) unsigned NOT NULL AUTO_INCREMENT, + `id_group_shop` int(11) unsigned NOT NULL, + `name` varchar(64) CHARACTER SET utf8 NOT NULL, + `id_category` INT(11) UNSIGNED NOT NULL DEFAULT '1', + `id_theme` INT(1) UNSIGNED NOT NULL, + `active` tinyint(1) NOT NULL DEFAULT '1', + `deleted` tinyint(1) NOT NULL DEFAULT '0', + PRIMARY KEY (`id_shop`), + KEY `id_group_shop` (`id_group_shop`), + KEY `id_category` (`id_category`), + KEY `id_theme` (`id_theme`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_shop` (`id_shop`, `id_group_shop`, `name`, `id_category`, `active`) VALUES (1, 1, 'Default', 1, 1); + +ALTER TABLE `PREFIX_configuration` ADD `id_group_shop` INT(11) UNSIGNED DEFAULT NULL AFTER `id_configuration` , ADD `id_shop` INT(11) UNSIGNED DEFAULT NULL AFTER `id_group_shop`; +ALTER TABLE `PREFIX_configuration` DROP INDEX `name` , ADD INDEX `name` ( `name` ) ; +ALTER TABLE `PREFIX_configuration` ADD INDEX (`id_group_shop`); +ALTER TABLE `PREFIX_configuration` ADD INDEX (`id_shop`); +INSERT INTO `PREFIX_configuration` (`id_configuration`, `name`, `value`, `date_add`, `date_upd`) VALUES (NULL, 'PS_SHOP_DEFAULT', '1', NOW(), NOW()); + +CREATE TABLE IF NOT EXISTS `PREFIX_shop_url` ( + `id_shop_url` int(11) unsigned NOT NULL AUTO_INCREMENT, + `id_shop` int(11) unsigned NOT NULL, + `domain` varchar(255) NOT NULL, + `domain_ssl` varchar(255) NOT NULL, + `physical_uri` varchar(64) NOT NULL, + `virtual_uri` varchar(64) NOT NULL, + `main` TINYINT(1) NOT NULL, + `active` TINYINT(1) NOT NULL, + PRIMARY KEY (`id_shop_url`), + KEY `id_shop` (`id_shop`), + UNIQUE KEY `shop_url` (`domain`, `virtual_uri`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_theme` ( + `id_theme` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(64) NOT NULL, + PRIMARY KEY (`id_theme`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_theme` (`id_theme`, `name`) VALUES (1, 'prestashop'); + +CREATE TABLE IF NOT EXISTS `PREFIX_theme_specific` ( + `id_theme` int(11) unsigned NOT NULL, + `id_shop` INT(11) UNSIGNED NOT NULL, + `entity` int(11) unsigned NOT NULL, + `id_object` int(11) unsigned NOT NULL, + PRIMARY KEY (`id_theme`,`id_shop`, `entity`,`id_object`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE `PREFIX_stock` ( +`id_stock` INT( 11 ) UNSIGNED NOT NULL AUTO_INCREMENT, +`id_product` INT( 11 ) UNSIGNED NOT NULL, +`id_product_attribute` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT(11) UNSIGNED NOT NULL, +`quantity` INT(11) NOT NULL, + PRIMARY KEY (`id_stock`), + KEY `id_product` (`id_product`), + KEY `id_product_attribute` (`id_product_attribute`), + KEY `id_shop` (`id_shop`), + UNIQUE KEY `product_stock` (`id_product` ,`id_product_attribute` ,`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +INSERT INTO `PREFIX_stock` (id_product, id_product_attribute, id_shop, quantity) (SELECT id_product, id_product_attribute, 1, quantity FROM PREFIX_product_attribute); +INSERT INTO `PREFIX_stock` (id_product, id_product_attribute, id_shop, quantity) (SELECT id_product, 0, 1, IF( + (SELECT COUNT(*) FROM PREFIX_product_attribute pa WHERE p.id_product = pa.id_product) > 0, + (SELECT SUM(pa2.quantity) FROM PREFIX_product_attribute pa2 WHERE p.id_product = pa2.id_product), + quantity +) FROM PREFIX_product p); + +ALTER TABLE PREFIX_stock_mvt ADD id_stock INT UNSIGNED NOT NULL AFTER id_stock_mvt; +UPDATE PREFIX_stock_mvt sm SET sm.id_stock = (SELECT s.id_stock FROM PREFIX_stock s WHERE s.id_product = sm.id_product AND s.id_product_attribute = sm.id_product_attribute ORDER BY s.id_shop LIMIT 1); +ALTER TABLE PREFIX_stock_mvt DROP id_product, DROP id_product_attribute; + +CREATE TABLE `PREFIX_country_shop` ( +`id_country` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL , + PRIMARY KEY (`id_country`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_country_shop` (id_shop, id_country) (SELECT 1, id_country FROM PREFIX_country); + +CREATE TABLE `PREFIX_carrier_shop` ( +`id_carrier` INT( 11 ) UNSIGNED NOT NULL , +`id_shop` INT( 11 ) UNSIGNED NOT NULL , + PRIMARY KEY (`id_carrier`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_carrier_shop` (id_shop, id_carrier) (SELECT 1, id_carrier FROM PREFIX_carrier); + +CREATE TABLE `PREFIX_cms_shop` ( +`id_cms` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL , + PRIMARY KEY (`id_cms`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_cms_shop` (id_shop, id_cms) (SELECT 1, id_cms FROM PREFIX_cms); + +ALTER TABLE `PREFIX_cms_block` ADD `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_cms_block`; + +CREATE TABLE `PREFIX_lang_shop` ( +`id_lang` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL, + PRIMARY KEY (`id_lang`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_lang_shop` (id_shop, id_lang) (SELECT 1, id_lang FROM PREFIX_lang); + +CREATE TABLE `PREFIX_currency_shop` ( +`id_currency` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL, + PRIMARY KEY (`id_currency`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_currency_shop` (id_shop, id_currency) (SELECT 1, id_currency FROM PREFIX_currency); + +ALTER TABLE `PREFIX_cart` ADD `id_group_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_cart` , ADD `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_group_shop`, ADD INDEX `id_group_shop` (`id_group_shop`), ADD INDEX `id_shop` (`id_shop`); + +ALTER TABLE `PREFIX_customer` ADD `id_group_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_customer` , ADD `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_group_shop`, ADD INDEX `id_group_shop` (`id_group_shop`), ADD INDEX `id_shop` (`id_shop`); + +ALTER TABLE `PREFIX_orders` ADD `id_group_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_order` , ADD `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_group_shop`, ADD INDEX `id_group_shop` (`id_group_shop`), ADD INDEX `id_shop` (`id_shop`); + +ALTER TABLE `PREFIX_customer_thread` ADD `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_customer_thread`; +ALTER TABLE `PREFIX_customer_thread` ADD INDEX `id_shop` (`id_shop`), ADD INDEX `id_lang` (`id_lang`), ADD INDEX `id_contact` (`id_contact`), ADD INDEX `id_customer` (`id_customer`), ADD INDEX `id_order` (`id_order`), ADD INDEX `id_product` (`id_product`); + +ALTER TABLE `PREFIX_customer_message` ADD INDEX `id_employee` (`id_employee`); + +ALTER TABLE `PREFIX_meta_lang` ADD `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_meta`; +ALTER TABLE `PREFIX_meta_lang` DROP PRIMARY KEY, ADD PRIMARY KEY (`id_meta`, `id_shop`, `id_lang`), ADD INDEX `id_shop` (`id_shop`), ADD INDEX `id_lang` (`id_lang`); + +CREATE TABLE `PREFIX_contact_shop` ( + `id_contact` INT(11) UNSIGNED NOT NULL, + `id_shop` INT(11) UNSIGNED NOT NULL, + PRIMARY KEY (`id_contact`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_contact_shop` (id_shop, id_contact) (SELECT 1, id_contact FROM `PREFIX_contact`); + +CREATE TABLE `PREFIX_image_shop` ( +`id_image` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL, + PRIMARY KEY (`id_image`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_image_shop` (id_shop, id_image) (SELECT 1, id_image FROM PREFIX_image); + +CREATE TABLE `PREFIX_attribute_group_shop` ( +`id_attribute` INT(11) UNSIGNED NOT NULL, +`id_group_shop` INT(11) UNSIGNED NOT NULL, + PRIMARY KEY (`id_attribute`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_attribute_group_shop` (id_group_shop, id_attribute) (SELECT 1, id_attribute FROM PREFIX_attribute); + +CREATE TABLE `PREFIX_feature_group_shop` ( +`id_feature` INT(11) UNSIGNED NOT NULL, +`id_group_shop` INT(11) UNSIGNED NOT NULL , + PRIMARY KEY (`id_feature`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_feature_group_shop` (id_group_shop, id_feature) (SELECT 1, id_feature FROM PREFIX_feature); + +CREATE TABLE `PREFIX_group_group_shop` ( +`id_group` INT( 11 ) UNSIGNED NOT NULL, +`id_group_shop` INT( 11 ) UNSIGNED NOT NULL, + PRIMARY KEY (`id_group`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_group_group_shop` (id_group_shop, id_group) (SELECT 1, id_group FROM PREFIX_group); + +CREATE TABLE `PREFIX_attribute_group_group_shop` ( +`id_attribute_group` INT( 11 ) UNSIGNED NOT NULL , +`id_group_shop` INT( 11 ) UNSIGNED NOT NULL , + PRIMARY KEY (`id_attribute_group`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_attribute_group_group_shop` (id_group_shop, id_attribute_group) (SELECT 1, id_attribute_group FROM PREFIX_attribute_group); + +CREATE TABLE `PREFIX_tax_rules_group_group_shop` ( + `id_tax_rules_group` INT( 11 ) UNSIGNED NOT NULL, + `id_group_shop` INT( 11 ) UNSIGNED NOT NULL, + PRIMARY KEY (`id_tax_rules_group`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_tax_rules_group_group_shop` (`id_tax_rules_group`, `id_group_shop`) (SELECT `id_tax_rules_group`, 1 FROM `PREFIX_tax_rules_group`); + +CREATE TABLE `PREFIX_zone_group_shop` ( +`id_zone` INT( 11 ) UNSIGNED NOT NULL , +`id_group_shop` INT( 11 ) UNSIGNED NOT NULL , + PRIMARY KEY (`id_zone`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_zone_group_shop` (id_group_shop, id_zone) (SELECT 1, id_zone FROM PREFIX_zone); + +CREATE TABLE `PREFIX_manufacturer_group_shop` ( +`id_manufacturer` INT( 11 ) UNSIGNED NOT NULL , +`id_group_shop` INT( 11 ) UNSIGNED NOT NULL , + PRIMARY KEY (`id_manufacturer`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_manufacturer_group_shop` (id_group_shop, id_manufacturer) (SELECT 1, id_manufacturer FROM PREFIX_manufacturer); + +CREATE TABLE `PREFIX_supplier_group_shop` ( +`id_supplier` INT( 11 ) UNSIGNED NOT NULL, +`id_group_shop` INT( 11 ) UNSIGNED NOT NULL, +PRIMARY KEY (`id_supplier`, `id_group_shop`), + KEY `id_group_shop` (`id_group_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_supplier_group_shop` (id_group_shop, id_supplier) (SELECT 1, id_supplier FROM PREFIX_supplier); + +CREATE TABLE `PREFIX_store_shop` ( +`id_store` INT( 11 ) UNSIGNED NOT NULL , +`id_shop` INT( 11 ) UNSIGNED NOT NULL, +PRIMARY KEY (`id_store`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_store_shop` (id_shop, id_store) (SELECT 1, id_store FROM PREFIX_store); + +CREATE TABLE `PREFIX_product_shop` ( +`id_product` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL, +PRIMARY KEY ( `id_shop` , `id_product` ), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_product_shop` (id_shop, id_product) (SELECT 1, id_product FROM PREFIX_product); + +ALTER TABLE `PREFIX_category_lang` ADD `id_shop` INT( 11 ) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_category`; +ALTER TABLE `PREFIX_category_lang` DROP INDEX `category_lang_index`; +ALTER TABLE `PREFIX_category_lang` ADD UNIQUE KEY( `id_category`, `id_shop`, `id_lang`); + +ALTER TABLE `PREFIX_product_lang` ADD `id_shop` INT( 11 ) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_product`; +ALTER TABLE `PREFIX_product_lang` DROP INDEX `product_lang_index` ; +ALTER TABLE `PREFIX_product_lang` ADD UNIQUE KEY ( `id_product`, `id_shop` , `id_lang`); + +ALTER TABLE `PREFIX_specific_price` CHANGE `id_shop` `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1'; + +ALTER TABLE `PREFIX_hook_module` ADD `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_hook`; +ALTER TABLE `PREFIX_hook_module` DROP PRIMARY KEY; +ALTER TABLE `PREFIX_hook_module` ADD PRIMARY KEY (`id_module`,`id_hook`,`id_shop` ); +ALTER TABLE `PREFIX_hook_module_exceptions` ADD `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_hook`; + +ALTER TABLE `PREFIX_connections` ADD `id_group_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1', ADD `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1'; +ALTER TABLE `PREFIX_page_viewed` ADD `id_group_shop` INT UNSIGNED NOT NULL DEFAULT '1' AFTER `id_page`, ADD `id_shop` INT UNSIGNED NOT NULL DEFAULT '1' AFTER `id_group_shop`; +ALTER TABLE `PREFIX_page_viewed` DROP PRIMARY KEY, ADD PRIMARY KEY (`id_page`, `id_date_range`, `id_shop`); + +CREATE TABLE `PREFIX_module_shop` ( +`id_module` INT( 11 ) UNSIGNED NOT NULL, +`id_shop` INT( 11 ) UNSIGNED NOT NULL, +PRIMARY KEY (`id_module` , `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_module_shop` (`id_module`, `id_shop`) (SELECT `id_module`, 1 FROM `PREFIX_module`); + +ALTER TABLE `PREFIX_module_currency` ADD `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_module`; +ALTER TABLE `PREFIX_module_currency` DROP PRIMARY KEY; +ALTER TABLE `PREFIX_module_currency` ADD PRIMARY KEY (`id_module`, `id_shop`, `id_currency`); + +ALTER TABLE `PREFIX_module_country` ADD `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_module`; +ALTER TABLE `PREFIX_module_country` DROP PRIMARY KEY; +ALTER TABLE `PREFIX_module_country` ADD PRIMARY KEY (`id_module`, `id_shop`, `id_country`); + +ALTER TABLE `PREFIX_module_group` ADD `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_module`; +ALTER TABLE `PREFIX_module_group` DROP PRIMARY KEY; +ALTER TABLE `PREFIX_module_group` ADD PRIMARY KEY (`id_module`, `id_shop`, `id_group`); + +ALTER TABLE `PREFIX_carrier_lang` ADD `id_shop` INT(11) UNSIGNED NOT NULL DEFAULT '1' AFTER `id_carrier`; +ALTER TABLE `PREFIX_carrier_lang` DROP INDEX `shipper_lang_index`; +ALTER TABLE `PREFIX_carrier_lang` ADD UNIQUE `shipper_lang_index` (`id_carrier`, `id_shop`, `id_lang`); + +ALTER TABLE `PREFIX_search_word` ADD `id_shop` INT(11) NOT NULL DEFAULT '1' AFTER `id_word`; +ALTER TABLE `PREFIX_search_word` DROP INDEX `id_lang`, ADD UNIQUE `id_lang` (`id_lang`,`id_shop`,`word`); + +CREATE TABLE `PREFIX_referrer_shop` ( + `id_referrer` int(10) unsigned NOT NULL auto_increment, + `id_shop` int(10) unsigned NOT NULL default '1', + `cache_visitors` int(11) default NULL, + `cache_visits` int(11) default NULL, + `cache_pages` int(11) default NULL, + `cache_registrations` int(11) default NULL, + `cache_orders` int(11) default NULL, + `cache_sales` decimal(17,2) default NULL, + `cache_reg_rate` decimal(5,4) default NULL, + `cache_order_rate` decimal(5,4) default NULL, + PRIMARY KEY (`id_referrer`, `id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_referrer_shop` (`id_referrer`, `id_shop`) SELECT `id_referrer`, 1 FROM `PREFIX_referrer`; +ALTER TABLE `PREFIX_referrer` DROP `cache_visitors`, DROP `cache_visits`, DROP `cache_pages`, DROP `cache_registrations`, DROP `cache_orders`, DROP `cache_sales`, DROP `cache_reg_rate`, DROP `cache_order_rate`; + +ALTER TABLE `PREFIX_cart_product` ADD `id_shop` INT NOT NULL DEFAULT '1' AFTER `id_product`; + +ALTER TABLE `PREFIX_customization` ADD `in_cart` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0'; + +CREATE TABLE `PREFIX_scene_shop` ( +`id_scene` INT( 11 ) UNSIGNED NOT NULL , +`id_shop` INT( 11 ) UNSIGNED NOT NULL, +PRIMARY KEY (`id_scene`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_scene_shop` (id_shop, id_scene) (SELECT 1, id_scene FROM PREFIX_scene); + +CREATE TABLE `PREFIX_discount_shop` ( +`id_discount` INT( 11 ) UNSIGNED NOT NULL , +`id_shop` INT( 11 ) UNSIGNED NOT NULL, +PRIMARY KEY (`id_discount`, `id_shop`), + KEY `id_shop` (`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; +INSERT INTO `PREFIX_discount_shop` (id_shop, id_discount) (SELECT 1, id_discount FROM PREFIX_discount); + +ALTER TABLE `PREFIX_delivery` ADD `id_shop` INT UNSIGNED NULL DEFAULT NULL AFTER `id_delivery`, ADD `id_group_shop` INT UNSIGNED NULL DEFAULT NULL AFTER `id_shop`; + +/* PHP:create_multistore(); */; diff --git a/install-new/upgrade/sql/1.5.0.1.sql b/install-new/upgrade/sql/1.5.0.1.sql new file mode 100644 index 000000000..41a35141d --- /dev/null +++ b/install-new/upgrade/sql/1.5.0.1.sql @@ -0,0 +1,498 @@ +SET NAMES 'utf8'; + +CREATE TABLE IF NOT EXISTS `PREFIX_accounting_zone_shop` ( + `id_accounting_zone_shop` int(11) NOT NULL AUTO_INCREMENT, + `id_zone` int(11) NOT NULL, + `id_shop` int(11) NOT NULL, + `account_number` varchar(64) NOT NULL, + PRIMARY KEY (`id_accounting_zone_shop`), + UNIQUE KEY `id_zone` (`id_zone`,`id_shop`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_accounting_product_zone_shop` ( + `id_accounting_product_zone_shop` int(11) NOT NULL AUTO_INCREMENT, + `id_product` int(11) NOT NULL, + `id_shop` int(11) NOT NULL, + `id_zone` int(11) NOT NULL, + `account_number` varchar(64) NOT NULL, + PRIMARY KEY (`id_accounting_product_zone_shop`), + UNIQUE KEY `id_product` (`id_product`,`id_shop`,`id_zone`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +/* PHP:add_accounting_tab(); */; + +CREATE TABLE IF NOT EXISTS `PREFIX_module_access` ( + `id_profile` int(10) unsigned NOT NULL, + `id_module` int(10) unsigned NOT NULL, + `view` tinyint(1) NOT NULL, + `configure` tinyint(1) NOT NULL, + PRIMARY KEY (`id_profile`,`id_module`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +INSERT INTO `PREFIX_module_access` (`id_profile`, `id_module`, `configure`, `view`) ( + SELECT id_profile, id_module, 0, 1 + FROM PREFIX_access a, PREFIX_module m + WHERE id_tab = (SELECT `id_tab` FROM PREFIX_tab WHERE class_name = 'AdminModules' LIMIT 1) + AND a.`view` = 0 +); + +INSERT INTO `PREFIX_module_access` (`id_profile`, `id_module`, `configure`, `view`) ( + SELECT id_profile, id_module, 1, 1 + FROM PREFIX_access a, PREFIX_module m + WHERE id_tab = (SELECT `id_tab` FROM PREFIX_tab WHERE class_name = 'AdminModules' LIMIT 1) + AND a.`view` = 1 +); + +UPDATE `PREFIX_tab` SET `class_name` = 'AdminThemes' WHERE `class_name` = 'AdminAppearance'; + +INSERT INTO `PREFIX_hook` ( +`name` , +`title` , +`description` , +`position` , +`live_edit` +) +VALUES ('taxmanager', 'taxmanager', NULL , '1', '0'); + +ALTER TABLE `PREFIX_tax_rule` + ADD `zipcode_from` INT NOT NULL AFTER `id_state` , + ADD `zipcode_to` INT NOT NULL AFTER `zipcode_from` , + ADD `behavior` INT NOT NULL AFTER `zipcode_to`, + ADD `description` VARCHAR( 100 ) NOT NULL AFTER `id_tax`; + +ALTER TABLE `PREFIX_tax_rule` DROP INDEX tax_rule; + +INSERT INTO `PREFIX_tax_rule` (`id_tax_rules_group`, `id_country`, `id_state`, `id_tax`, `behavior`, `zipcode_from`, `zipcode_to`) + SELECT r.`id_tax_rules_group`, r.`id_country`, r.`id_state`, r.`id_tax`, 0, z.`from_zip_code`, z.`to_zip_code` + FROM `PREFIX_tax_rule` r INNER JOIN `PREFIX_county_zip_code` z ON (z.`id_county` = r.`id_county`); + +UPDATE `PREFIX_tax_rule` SET `behavior` = GREATEST(`state_behavior`, `county_behavior`); + +DELETE FROM `PREFIX_tax_rule` +WHERE `id_county` != 0 +AND `zipcode_from` = 0; + +ALTER TABLE `PREFIX_tax_rule` + DROP `id_county`, + DROP `state_behavior`, + DROP `county_behavior`; + +/* PHP:remove_tab(AdminCounty); */; +DROP TABLE `PREFIX_county_zip_code`; +DROP TABLE `PREFIX_county`; + +ALTER TABLE `PREFIX_employee` + ADD `id_last_order` tinyint(1) unsigned NOT NULL default '0', + ADD `id_last_message` tinyint(1) unsigned NOT NULL default '0', + ADD `id_last_customer` tinyint(1) unsigned NOT NULL default '0'; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) VALUES +('PS_SHOW_NEW_ORDERS', '1', NOW(), NOW()), +('PS_SHOW_NEW_CUSTOMERS', '1', NOW(), NOW()), +('PS_SHOW_NEW_MESSAGES', '1', NOW(), NOW()), +('PS_FEATURE_FEATURE_ACTIVE', '1', NOW(), NOW()), +('PS_COMBINATION_FEATURE_ACTIVE', '1', NOW(), NOW()), +('PS_ADMINREFRESH_NOTIFICATION', '1', NOW(), NOW()); + +/* PHP:update_feature_detachable_cache(); */; + +ALTER TABLE `PREFIX_product` ADD `available_date` DATE NOT NULL AFTER `available_for_order`; + +ALTER TABLE `PREFIX_product_attribute` ADD `available_date` DATE NOT NULL; + +/* Index was only used by deprecated function Image::positionImage() */ +ALTER TABLE `PREFIX_image` DROP INDEX `product_position`; + +CREATE TABLE IF NOT EXISTS `PREFIX_gender` ( + `id_gender` int(11) NOT NULL AUTO_INCREMENT, + `type` tinyint(1) NOT NULL, + PRIMARY KEY (`id_gender`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `PREFIX_gender_lang` ( + `id_gender` int(10) unsigned NOT NULL, + `id_lang` int(10) unsigned NOT NULL, + `name` varchar(20) NOT NULL, + PRIMARY KEY (`id_gender`,`id_lang`), + KEY `id_gender` (`id_gender`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +INSERT INTO `PREFIX_gender` (`id_gender`, `type`) VALUES +(1, 0), +(2, 1), +(3, 1); + +INSERT INTO `PREFIX_gender_lang` (`id_gender`, `id_lang`, `name`) VALUES +(1, 1, 'Mr.'), +(1, 2, 'M.'), +(1, 3, 'Sr.'), +(1, 4, 'Herr'), +(1, 5, 'Sig.'), +(2, 1, 'Ms.'), +(2, 2, 'Mme'), +(2, 3, 'Sra.'), +(2, 4, 'Frau'), +(2, 5, 'Sig.ra'), +(3, 1, 'Miss'), +(3, 2, 'Melle'), +(3, 3, 'Miss'), +(3, 4, 'Miss'), +(3, 5, 'Miss'); + +DELETE FROM `PREFIX_configuration` WHERE `name` = 'PS_FORCE_SMARTY_2'; + +CREATE TABLE IF NOT EXISTS `PREFIX_order_detail_tax` ( +`id_order_detail` INT NOT NULL , +`id_tax` INT NOT NULL +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +ALTER TABLE `PREFIX_tax` ADD `deleted` INT NOT NULL AFTER `active`; + +/* PHP:update_order_detail_taxes(); */; + +ALTER TABLE `PREFIX_order_detail` + DROP `tax_name`, + DROP `tax_rate`; + +CREATE TABLE `PREFIX_customer_message_sync_imap` ( + `md5_header` varbinary(32) NOT NULL, + KEY `md5_header_index` (`md5_header`(4)) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +ALTER TABLE `PREFIX_customer_message` ADD `private` TINYINT NOT NULL DEFAULT '0' AFTER `user_agent`; + +/* PHP:add_new_tab(AdminGenders, fr:Genres|es:Genders|en:Genders|de:Genders|it:Genders, 2); */; + +ALTER TABLE `PREFIX_attribute` ADD `position` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0'; + +/* PHP:add_attribute_position(); */; + +ALTER TABLE `PREFIX_product_download` CHANGE `date_deposit` `date_add` DATETIME NOT NULL ; +ALTER TABLE `PREFIX_product_download` CHANGE `physically_filename` `filename` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; +ALTER TABLE `PREFIX_product_download` ADD `id_product_attribute` INT( 10 ) UNSIGNED NOT NULL AFTER `id_product` , ADD INDEX ( `id_product_attribute` ); +ALTER TABLE `PREFIX_product_download` ADD `is_shareable` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0' AFTER `active`; + +ALTER TABLE `PREFIX_attribute_group` ADD `position` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0'; + +ALTER TABLE `PREFIX_attribute_group` ADD `group_type` ENUM('select', 'radio', 'color') NOT NULL DEFAULT 'select'; +UPDATE `PREFIX_attribute_group` SET `group_type`='color' WHERE `is_color_group` = 1; +ALTER TABLE `PREFIX_product` DROP `id_color_default`; + +/* PHP:add_group_attribute_position(); */; + +ALTER TABLE `PREFIX_feature` ADD `position` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0'; + +/* PHP:add_feature_position(); */; + +CREATE TABLE IF NOT EXISTS `PREFIX_request_sql` ( + `id_request_sql` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(200) NOT NULL, + `sql` text NOT NULL, + PRIMARY KEY (`id_request_sql`) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +/* PHP:add_new_tab(AdminRequestSql, fr:SQL Manager|es:SQL Manager|en:SQL Manager|de:Wunsh|it:SQL Manager, 9); */; + + +ALTER TABLE `PREFIX_carrier` ADD COLUMN `id_reference` int(10) NOT NULL AFTER `id_carrier`; +UPDATE `PREFIX_carrier` SET id_reference = id_carrier; + +ALTER TABLE `PREFIX_product` ADD `is_virtual` TINYINT( 1 ) NOT NULL DEFAULT '0' AFTER `cache_has_attachments`; + +/* PHP:add_new_tab(AdminProducts, fr:Products|es:Products|en:Products|de:Products|it:Products, 1); */; +/* PHP:add_new_tab(AdminCategories, fr:Categories|es:Categories|en:Categories|de:Categories|it:Categories, 1); */; +/* PHP:add_new_tab(AdminStocks, fr:Stocks|es:Stocks|en:Stocks|de:Stocks|it:Stocks, 1); */; +/* PHP:add_default_restrictions_modules_groups(); */; + + + +CREATE TABLE IF NOT EXISTS `PREFIX_employee_shop` ( +`id_employee` INT( 11 ) UNSIGNED NOT NULL , +`id_shop` INT( 11 ) UNSIGNED NOT NULL , +PRIMARY KEY ( `id_employee` , `id_shop` ) +) ENGINE=ENGINE_TYPE DEFAULT CHARSET=utf8; + +INSERT INTO `PREFIX_employee_shop` (`id_employee`, `id_shop`) (SELECT `id_employee`, 1 FROM `PREFIX_employee`); + +UPDATE `PREFIX_access` SET `view` = 0, `add` = 0, `edit` = 0, `delete` = 0 WHERE `id_tab` = 88 AND `id_profile` != 1; + +INSERT INTO `PREFIX_profile` (`id_profile`) VALUES (5); + +UPDATE `PREFIX_profile_lang` SET `id_profile` = 5 WHERE `id_profile` = 4; +UPDATE `PREFIX_profile_lang` SET `id_profile` = 4 WHERE `id_profile` = 3; +UPDATE `PREFIX_profile_lang` SET `id_profile` = 3 WHERE `id_profile` = 2; +UPDATE `PREFIX_profile_lang` SET `id_profile` = 2 WHERE `id_profile` = 1; + +INSERT INTO `PREFIX_profile_lang` (`id_profile`, `id_lang`, `name`) VALUES (1, 1, 'SuperAdmin'),(1, 2, 'SuperAdmin'),(1, 3, 'SuperAdmin'),(1, 4, 'SuperAdmin'),(1, 5, 'SuperAdmin'); + +UPDATE `PREFIX_access` SET `id_profile` = 5 WHERE `id_profile` = 4; +UPDATE `PREFIX_access` SET `id_profile` = 4 WHERE `id_profile` = 3; +UPDATE `PREFIX_access` SET `id_profile` = 3 WHERE `id_profile` = 2; +UPDATE `PREFIX_access` SET `id_profile` = 2 WHERE `id_profile` = 1; + +UPDATE `PREFIX_module_access` SET `id_profile` = 5 WHERE `id_profile` = 4; +UPDATE `PREFIX_module_access` SET `id_profile` = 4 WHERE `id_profile` = 3; +UPDATE `PREFIX_module_access` SET `id_profile` = 3 WHERE `id_profile` = 2; +UPDATE `PREFIX_module_access` SET `id_profile` = 2 WHERE `id_profile` = 1; + +INSERT INTO `PREFIX_module_access` (`id_profile`, `id_module`, `configure`, `view`) (SELECT 1, `id_module`, 1, 1 FROM `PREFIX_module`); + +ALTER TABLE `PREFIX_carrier` ADD `position` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0'; + +/* PHP:add_carrier_position();*/ + +ALTER TABLE `PREFIX_order_state` ADD COLUMN `shipped` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0 AFTER `delivery`; +UPDATE `PREFIX_order_state` SET `shipped` = 1 WHERE id_order_states IN (4, 5); + + +CREATE TABLE `PREFIX_cart_rule` ( + `id_cart_rule` int(10) unsigned NOT NULL auto_increment, + `id_customer` int unsigned NOT NULL default 0, + `date_from` datetime NOT NULL, + `date_to` datetime NOT NULL, + `description` text, + `quantity` int(10) unsigned NOT NULL default 0, + `quantity_per_user` int(10) unsigned NOT NULL default 0, + `priority` int(10) unsigned NOT NULL default 1, + `code` varchar(254) NOT NULL, + `minimum_amount` decimal(17,2) NOT NULL default 0, + `minimum_amount_tax` tinyint(1) NOT NULL default 0, + `minimum_amount_currency` int unsigned NOT NULL default 0, + `minimum_amount_shipping` tinyint(1) NOT NULL default 0, + `country_restriction` tinyint(1) unsigned NOT NULL default 0, + `carrier_restriction` tinyint(1) unsigned NOT NULL default 0, + `group_restriction` tinyint(1) unsigned NOT NULL default 0, + `cart_rule_restriction` tinyint(1) unsigned NOT NULL default 0, + `product_restriction` tinyint(1) unsigned NOT NULL default 0, + `free_shipping` tinyint(1) NOT NULL default 0, + `reduction_percent` decimal(4,2) NOT NULL default 0, + `reduction_amount` decimal(17,2) NOT NULL default 0, + `reduction_tax` tinyint(1) unsigned NOT NULL default 0, + `reduction_currency` int(10) unsigned NOT NULL default 0, + `reduction_product` int(10) NOT NULL default 0, + `gift_product` int(10) unsigned NOT NULL default 0, + `active` tinyint(1) unsigned NOT NULL default 0, + `date_add` datetime NOT NULL, + `date_upd` datetime NOT NULL, + PRIMARY KEY (`id_cart_rule`) +); + +CREATE TABLE `PREFIX_cart_rule_country` ( + `id_cart_rule` int(10) unsigned NOT NULL, + `id_country` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_cart_rule`, `id_country`) +); + +CREATE TABLE `PREFIX_cart_rule_group` ( + `id_cart_rule` int(10) unsigned NOT NULL, + `id_group` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_cart_rule`, `id_group`) +); + +CREATE TABLE `PREFIX_cart_rule_carrier` ( + `id_cart_rule` int(10) unsigned NOT NULL, + `id_carrier` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_cart_rule`, `id_carrier`) +); + +CREATE TABLE `PREFIX_cart_rule_combination` ( + `id_cart_rule_1` int(10) unsigned NOT NULL, + `id_cart_rule_2` int(10) unsigned NOT NULL, + PRIMARY KEY (`id_cart_rule_1`, `id_cart_rule_2`) +); + +CREATE TABLE `PREFIX_cart_rule_product_rule` ( + `id_product_rule` int(10) unsigned NOT NULL auto_increment, + `id_cart_rule` int(10) unsigned NOT NULL, + `quantity` int(10) unsigned NOT NULL default 1, + `type` ENUM('products', 'categories', 'attributes') NOT NULL, + PRIMARY KEY (`id_product_rule`) +); + +SET @id_currency_default = (SELECT value FROM `PREFIX_configuration` WHERE name = 'PS_CURRENCY_DEFAULT' LIMIT 1); +INSERT INTO `PREFIX_cart_rule` ( + `id_cart_rule`, + `id_customer`, + `date_from`, + `date_to`, + `description`, + `quantity`, + `quantity_per_user`, + `priority`, + `code`, + `minimum_amount`, + `minimum_amount_tax`, + `minimum_amount_currency`, + `minimum_amount_shipping`, + `country_restriction`, + `carrier_restriction`, + `group_restriction`, + `cart_rule_restriction`, + `product_restriction`, + `free_shipping`, + `reduction_percent`, + `reduction_amount`, + `reduction_tax`, + `reduction_currency`, + `reduction_product`, + `gift_product`, + `active`, + `date_add`, + `date_upd` +) ( + SELECT + `id_discount`, + `id_customer`, + `date_from`, + `date_to`, + `name`, + `quantity`, + `quantity_per_user`, + 1, + `name`, + `minimal`, + 1, + @id_currency_default, + 1, + 0, + 0, + IF(id_group = 0, 0, 1), + IF(cumulable = 1, 0, 1), + 0, + IF(id_discount_type = 3, 1, 0), + IF(id_discount_type = 1, value, 0), + IF(id_discount_type = 2, value, 0), + 1, + `id_currency`, + 0, + 0, + `active`, + `date_add`, + `date_upd` + FROM `PREFIX_discount` +); + +RENAME TABLE `PREFIX_discount_lang` TO `PREFIX_cart_rule_lang`; +ALTER TABLE `PREFIX_discount_lang` CHANGE `id_discount` `id_cart_rule` int(10) unsigned NOT NULL; +ALTER TABLE `PREFIX_discount_lang` CHANGE `description` `name` varchar(254) NOT NULL; +RENAME TABLE `PREFIX_discount_category` TO `PREFIX_cart_rule_product_rule_value`; +ALTER TABLE `PREFIX_cart_rule_product_rule_value` CHANGE `id_category` `id_item` int(10) unsigned NOT NULL; +ALTER TABLE `PREFIX_cart_rule_product_rule_value` CHANGE `id_discount` `id_product_rule` int(10) unsigned NOT NULL; +INSERT INTO `PREFIX_cart_rule_product_rule` (`id_product_rule`, `id_cart_rule`, `quantity`, `type`) ( + SELECT DISTINCT `id_product_rule`, `id_product_rule`, 1, 'categories' FROM `PREFIX_cart_rule_product_rule_value` +); +UPDATE `PREFIX_cart_rule` SET product_restriction = 1 WHERE `id_cart_rule` IN (SELECT `id_cart_rule` FROM `PREFIX_cart_rule_product_rule`); + +ALTER TABLE `PREFIX_cart_discount` CHANGE `id_discount` `id_cart_rule` int(10) unsigned NOT NULL; +ALTER TABLE `PREFIX_order_discount` CHANGE `id_discount` `id_cart_rule` int(10) unsigned NOT NULL; +ALTER TABLE `PREFIX_order_discount` CHANGE `id_order_discount` `id_order_cart_rule` int(10) unsigned NOT NULL; + +RENAME TABLE `PREFIX_order_discount` TO `PREFIX_order_cart_rule`; +RENAME TABLE `PREFIX_cart_discount` TO `PREFIX_cart_cart_rule`; + +CREATE VIEW `PREFIX_order_discount` AS SELECT *, id_cart_rule as id_discount FROM `PREFIX_order_cart_rule`; +CREATE VIEW `PREFIX_cart_discount` AS SELECT *, id_cart_rule as id_discount FROM `PREFIX_cart_cart_rule`; + +INSERT INTO `PREFIX_configuration` (`name`, `value`, `date_add`, `date_upd`) ( + SELECT 'PS_CART_RULE_FEATURE_ACTIVE', `value`, NOW(), NOW() FROM `PREFIX_configuration` WHERE `name` = 'PS_DISCOUNT_FEATURE_ACTIVE' LIMIT 1 +); + +UPDATE `PREFIX_tab` SET class_name = 'AdminCartRules' WHERE class_name = 'AdminDiscounts'; + + + + + +UPDATE `PREFIX_hook` SET `name` = 'displayPayment' WHERE `name` = 'payment'; +UPDATE `PREFIX_hook` SET `name` = 'actionValidateOrder' WHERE `name` = 'newOrder'; +UPDATE `PREFIX_hook` SET `name` = 'actionPaymentConfirmation' WHERE `name` = 'paymentConfirm'; +UPDATE `PREFIX_hook` SET `name` = 'displayPaymentReturn' WHERE `name` = 'paymentReturn'; +UPDATE `PREFIX_hook` SET `name` = 'actionUpdateQuantity' WHERE `name` = 'updateQuantity'; +UPDATE `PREFIX_hook` SET `name` = 'displayRightColumn' WHERE `name` = 'rightColumn'; +UPDATE `PREFIX_hook` SET `name` = 'displayLeftColumn' WHERE `name` = 'leftColumn'; +UPDATE `PREFIX_hook` SET `name` = 'displayHome' WHERE `name` = 'home'; +UPDATE `PREFIX_hook` SET `name` = 'displayHeader' WHERE `name` = 'header'; +UPDATE `PREFIX_hook` SET `name` = 'actionCartSave' WHERE `name` = 'cart'; +UPDATE `PREFIX_hook` SET `name` = 'actionAuthentication' WHERE `name` = 'authentication'; +UPDATE `PREFIX_hook` SET `name` = 'actionProductAdd' WHERE `name` = 'addproduct'; +UPDATE `PREFIX_hook` SET `name` = 'actionProductUpdate' WHERE `name` = 'updateproduct'; +UPDATE `PREFIX_hook` SET `name` = 'displayTop' WHERE `name` = 'top'; +UPDATE `PREFIX_hook` SET `name` = 'displayRightColumnProduct' WHERE `name` = 'extraRight'; +UPDATE `PREFIX_hook` SET `name` = 'actionProductDelete' WHERE `name` = 'deleteproduct'; +UPDATE `PREFIX_hook` SET `name` = 'displayFooterProduct' WHERE `name` = 'productfooter'; +UPDATE `PREFIX_hook` SET `name` = 'displayInvoice' WHERE `name` = 'invoice'; +UPDATE `PREFIX_hook` SET `name` = 'actionOrderStatusUpdate' WHERE `name` = 'updateOrderStatus'; +UPDATE `PREFIX_hook` SET `name` = 'displayAdminOrder' WHERE `name` = 'adminOrder'; +UPDATE `PREFIX_hook` SET `name` = 'displayFooter' WHERE `name` = 'footer'; +UPDATE `PREFIX_hook` SET `name` = 'displayPDFInvoice' WHERE `name` = 'PDFInvoice'; +UPDATE `PREFIX_hook` SET `name` = 'displayAdminCustomers' WHERE `name` = 'adminCustomers'; +UPDATE `PREFIX_hook` SET `name` = 'displayOrderConfirmation' WHERE `name` = 'orderConfirmation'; +UPDATE `PREFIX_hook` SET `name` = 'actionCustomerAccountAdd' WHERE `name` = 'createAccount'; +UPDATE `PREFIX_hook` SET `name` = 'displayCustomerAccount' WHERE `name` = 'customerAccount'; +UPDATE `PREFIX_hook` SET `name` = 'actionOrderSlipAdd' WHERE `name` = 'orderSlip'; +UPDATE `PREFIX_hook` SET `name` = 'displayProductTab' WHERE `name` = 'productTab'; +UPDATE `PREFIX_hook` SET `name` = 'displayProductTabContent' WHERE `name` = 'productTabContent'; +UPDATE `PREFIX_hook` SET `name` = 'displayShoppingCartFooter' WHERE `name` = 'shoppingCart'; +UPDATE `PREFIX_hook` SET `name` = 'displayCustomerAccountForm' WHERE `name` = 'createAccountForm'; +UPDATE `PREFIX_hook` SET `name` = 'displayAdminStatsModules' WHERE `name` = 'AdminStatsModules'; +UPDATE `PREFIX_hook` SET `name` = 'displayAdminStatsGraphEngine' WHERE `name` = 'GraphEngine'; +UPDATE `PREFIX_hook` SET `name` = 'actionOrderReturn' WHERE `name` = 'orderReturn'; +UPDATE `PREFIX_hook` SET `name` = 'displayProductButtons' WHERE `name` = 'productActions'; +UPDATE `PREFIX_hook` SET `name` = 'displayBackOfficeHome' WHERE `name` = 'backOfficeHome'; +UPDATE `PREFIX_hook` SET `name` = 'displayAdminStatsGridEngine' WHERE `name` = 'GridEngine'; +UPDATE `PREFIX_hook` SET `name` = 'actionWatermark' WHERE `name` = 'watermark'; +UPDATE `PREFIX_hook` SET `name` = 'actionProductCancel' WHERE `name` = 'cancelProduct'; +UPDATE `PREFIX_hook` SET `name` = 'displayLeftColumnProduct' WHERE `name` = 'extraLeft'; +UPDATE `PREFIX_hook` SET `name` = 'actionProductOutOfStock' WHERE `name` = 'productOutOfStock'; +UPDATE `PREFIX_hook` SET `name` = 'actionProductAttributeUpdate' WHERE `name` = 'updateProductAttribute'; +UPDATE `PREFIX_hook` SET `name` = 'displayCarrierList' WHERE `name` = 'extraCarrier'; +UPDATE `PREFIX_hook` SET `name` = 'displayShoppingCart' WHERE `name` = 'shoppingCartExtra'; +UPDATE `PREFIX_hook` SET `name` = 'actionSearch' WHERE `name` = 'search'; +UPDATE `PREFIX_hook` SET `name` = 'displayBeforePayment' WHERE `name` = 'backBeforePayment'; +UPDATE `PREFIX_hook` SET `name` = 'actionCarrierUpdate' WHERE `name` = 'updateCarrier'; +UPDATE `PREFIX_hook` SET `name` = 'actionOrderStatusPostUpdate' WHERE `name` = 'postUpdateOrderStatus'; +UPDATE `PREFIX_hook` SET `name` = 'displayCustomerAccountFormTop' WHERE `name` = 'createAccountTop'; +UPDATE `PREFIX_hook` SET `name` = 'displayBackOfficeHeader' WHERE `name` = 'backOfficeHeader'; +UPDATE `PREFIX_hook` SET `name` = 'displayBackOfficeTop' WHERE `name` = 'backOfficeTop'; +UPDATE `PREFIX_hook` SET `name` = 'displayBackOfficeFooter' WHERE `name` = 'backOfficeFooter'; +UPDATE `PREFIX_hook` SET `name` = 'actionProductAttributeDelete' WHERE `name` = 'deleteProductAttribute'; +UPDATE `PREFIX_hook` SET `name` = 'actionCarrierProcess' WHERE `name` = 'processCarrier'; +UPDATE `PREFIX_hook` SET `name` = 'actionOrderDetail' WHERE `name` = 'orderDetail'; +UPDATE `PREFIX_hook` SET `name` = 'displayBeforeCarrier' WHERE `name` = 'beforeCarrier'; +UPDATE `PREFIX_hook` SET `name` = 'displayOrderDetail' WHERE `name` = 'orderDetailDisplayed'; +UPDATE `PREFIX_hook` SET `name` = 'actionPaymentCCAdd' WHERE `name` = 'paymentCCAdded'; +UPDATE `PREFIX_hook` SET `name` = 'displayProductComparison' WHERE `name` = 'extraProductComparison'; +UPDATE `PREFIX_hook` SET `name` = 'actionCategoryAdd' WHERE `name` = 'categoryAddition'; +UPDATE `PREFIX_hook` SET `name` = 'actionCategoryUpdate' WHERE `name` = 'categoryUpdate'; +UPDATE `PREFIX_hook` SET `name` = 'actionCategoryDelete' WHERE `name` = 'categoryDeletion'; +UPDATE `PREFIX_hook` SET `name` = 'actionBeforeAuthentication' WHERE `name` = 'beforeAuthentication'; +UPDATE `PREFIX_hook` SET `name` = 'displayPaymentTop' WHERE `name` = 'paymentTop'; +UPDATE `PREFIX_hook` SET `name` = 'actionHtaccessCreate' WHERE `name` = 'afterCreateHtaccess'; +UPDATE `PREFIX_hook` SET `name` = 'actionAdminMetaSave' WHERE `name` = 'afterSaveAdminMeta'; +UPDATE `PREFIX_hook` SET `name` = 'displayAttributeGroupForm' WHERE `name` = 'attributeGroupForm'; +UPDATE `PREFIX_hook` SET `name` = 'actionAttributeGroupSave' WHERE `name` = 'afterSaveAttributeGroup'; +UPDATE `PREFIX_hook` SET `name` = 'actionAttributeGroupDelete' WHERE `name` = 'afterDeleteAttributeGroup'; +UPDATE `PREFIX_hook` SET `name` = 'displayFeatureForm' WHERE `name` = 'featureForm'; +UPDATE `PREFIX_hook` SET `name` = 'actionFeatureSave' WHERE `name` = 'afterSaveFeature'; +UPDATE `PREFIX_hook` SET `name` = 'actionFeatureDelete' WHERE `name` = 'afterDeleteFeature'; +UPDATE `PREFIX_hook` SET `name` = 'actionProductSave' WHERE `name` = 'afterSaveProduct'; +UPDATE `PREFIX_hook` SET `name` = 'actionProductListOverride' WHERE `name` = 'productListAssign'; +UPDATE `PREFIX_hook` SET `name` = 'displayAttributeGroupPostProcess' WHERE `name` = 'postProcessAttributeGroup'; +UPDATE `PREFIX_hook` SET `name` = 'displayFeaturePostProcess' WHERE `name` = 'postProcessFeature'; +UPDATE `PREFIX_hook` SET `name` = 'displayFeatureValueForm' WHERE `name` = 'featureValueForm'; +UPDATE `PREFIX_hook` SET `name` = 'displayFeatureValuePostProcess' WHERE `name` = 'postProcessFeatureValue'; +UPDATE `PREFIX_hook` SET `name` = 'actionFeatureValueDelete' WHERE `name` = 'afterDeleteFeatureValue'; +UPDATE `PREFIX_hook` SET `name` = 'actionFeatureValueSave' WHERE `name` = 'afterSaveFeatureValue'; +UPDATE `PREFIX_hook` SET `name` = 'displayAttributeForm' WHERE `name` = 'attributeForm'; +UPDATE `PREFIX_hook` SET `name` = 'actionAttributePostProcess' WHERE `name` = 'postProcessAttribute'; +UPDATE `PREFIX_hook` SET `name` = 'actionAttributeDelete' WHERE `name` = 'afterDeleteAttribute'; +UPDATE `PREFIX_hook` SET `name` = 'actionAttributeSave' WHERE `name` = 'afterSaveAttribute'; +UPDATE `PREFIX_hook` SET `name` = 'actionTaxManager' WHERE `name` = 'taxManager'; + +ALTER TABLE `PREFIX_specific_price` ADD `id_product_attribute` INT UNSIGNED NOT NULL AFTER `id_product`; +ALTER TABLE `PREFIX_specific_price` DROP INDEX `id_product`; +ALTER TABLE `PREFIX_specific_price` ADD INDEX `id_product` (`id_product`, `id_product_attribute`, `id_shop`, `id_currency`, `id_country`, `id_group`, `from_quantity`, `from`, `to`); + +ALTER TABLE `PREFIX_hook` ADD `is_native` TINYINT( 1 ) NOT NULL DEFAULT '0'; + +/* PHP:add_new_tab(AdminAttributeGenerator, fr:Générateur de combinaisons|es:Combinations generator|en:Combinations generator|de:Combinations generator|it:Combinations generator, 1); */; diff --git a/install-new/upgrade/xml/checkConfig.php b/install-new/upgrade/xml/checkConfig.php new file mode 100644 index 000000000..f1d6240b1 --- /dev/null +++ b/install-new/upgrade/xml/checkConfig.php @@ -0,0 +1,89 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ +header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 +header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date dans le passé +if (!class_exists('ConfigurationTest',false)) + require_once(INSTALL_PATH.'/../classes/ConfigurationTest.php'); + +// Functions list to test with 'test_system' +$funcs = array('fopen', 'fclose', 'fread', 'fwrite', 'rename', 'file_exists', 'unlink', 'rmdir', 'mkdir', 'getcwd', 'chdir', 'chmod'); + +// Test list to execute (function/args) +$tests = array( + 'phpversion' => false, + 'upload' => false, + 'system' => $funcs, + 'gd' => false, + 'mysql_support' => false, + 'config_dir' => 'config', + 'cache_dir' => 'cache', + 'sitemap' => 'sitemap.xml', + 'log_dir' => 'log', + 'img_dir' => 'img', + 'mails_dir' => 'mails/', + 'module_dir' => 'modules/', + 'theme_lang_dir' => 'themes/prestashop/lang', + 'theme_cache_dir' => 'themes/prestashop/cache', + 'translations_dir' => 'translations', + 'customizable_products_dir' => 'upload', + 'virtual_products_dir' => 'download', +); +$tests_op = array( + 'fopen' => false, + 'register_globals' => false, + 'gz' => false, + 'mcrypt' => false, + 'magicquotes' => false, + 'dom' => false, +); + +// Execute tests +$res = ConfigurationTest::check($tests); +$res_op = ConfigurationTest::check($tests_op); + +$has_error = false; + +// Building XML Tree... +echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + foreach ($res AS $key => $line) + { + if ($line == 'fail') $has_error = true; + echo ''."\n"; + } + echo ''."\n"; + echo ''."\n"; + foreach ($res_op AS $key => $line) + { + if ($line == 'fail') $has_error = true; + echo ''."\n"; + } + echo ''."\n"; +echo ''; + + diff --git a/install-new/upgrade/xml/checkDB.php b/install-new/upgrade/xml/checkDB.php new file mode 100644 index 000000000..3c35a9760 --- /dev/null +++ b/install-new/upgrade/xml/checkDB.php @@ -0,0 +1,29 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ +include_once(INSTALL_PATH.'/classes/ToolsInstall.php'); +$resultDB = ToolsInstall::checkDB($_GET['server'], $_GET['login'], $_GET['password'], $_GET['name'], true, $_GET['engine']); +die("\n"); diff --git a/install-new/upgrade/xml/checkMail.php b/install-new/upgrade/xml/checkMail.php new file mode 100644 index 000000000..52d8d42bb --- /dev/null +++ b/install-new/upgrade/xml/checkMail.php @@ -0,0 +1,44 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +include_once(INSTALL_PATH.'/classes/ToolsInstall.php'); + +$smtpChecked = (trim($_GET['mailMethod']) == 'smtp'); +$smtpServer = $_GET['smtpSrv']; +$content = $_GET['testMsg']; +$subject = $_GET['testSubject']; +$type = 'text/html'; +$to = $_GET['testEmail']; +$from = 'no-reply@'.ToolsInstall::getHttpHost(false, true, true); +$smtpLogin = $_GET['smtpLogin']; +$smtpPassword = $_GET['smtpPassword']; +$smtpPort = $_GET['smtpPort']; +$smtpEncryption = $_GET['smtpEnc']; + +$result = ToolsInstall::sendMail($smtpChecked, $smtpServer, $content, $subject, $type, $to, $from, $smtpLogin, $smtpPassword, $smtpPort, $smtpEncryption); +die($result ? '' : ''); + diff --git a/install-new/upgrade/xml/checkShopInfos.php b/install-new/upgrade/xml/checkShopInfos.php new file mode 100644 index 000000000..1ddfa0afc --- /dev/null +++ b/install-new/upgrade/xml/checkShopInfos.php @@ -0,0 +1,294 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +if (function_exists('date_default_timezone_set')) + date_default_timezone_set('Europe/Paris'); + +define('_PS_MAGIC_QUOTES_GPC_', get_magic_quotes_gpc()); + +require_once(INSTALL_PATH.'/classes/AddConfToFile.php'); +require_once(INSTALL_PATH.'/../classes/Validate.php'); +require_once(INSTALL_PATH.'/../classes/db/Db.php'); +require_once(INSTALL_PATH.'/../classes/Tools.php'); +require_once(INSTALL_PATH.'/../config/settings.inc.php'); + +Context::getContext()->shop = Shop::initialize(); +define('_THEME_NAME_', Context::getContext()->shop->getTheme()); +define('__PS_BASE_URI__', Context::getContext()->shop->getBaseURI()); + +function isFormValid() +{ + global $error; + + foreach ($error as $anError) + if ($anError != '') + return false; + return true; +} + +$error = array(); +foreach ($_GET AS &$var) +{ + if (is_string($var)) + $var = html_entity_decode($var, ENT_COMPAT, 'UTF-8'); + elseif (is_array($var)) + foreach ($var AS &$row) + $row = html_entity_decode($row, ENT_COMPAT, 'UTF-8'); +} + +if(!isset($_GET['infosShop']) OR empty($_GET['infosShop'])) + $error['infosShop'] = '0'; +else + $error['infosShop'] = ''; + +if(!isset($_GET['infosFirstname']) OR empty($_GET['infosFirstname'])) + $error['infosFirstname'] = '0'; +else + $error['infosFirstname'] = ''; + +if(!isset($_GET['infosName']) OR empty($_GET['infosName'])) + $error['infosName'] = '0'; +else + $error['infosName'] = ''; + +if(isset($_GET['infosEmail']) AND !Validate::isEmail($_GET['infosEmail'])) + $error['infosEmail'] = '3'; +else + $error['infosEmail'] = ''; + +if (isset($_GET['infosShop']) AND !Validate::isGenericName($_GET['infosShop'])) + $error['validateShop'] = '46'; +else + $error['validateShop'] = ''; + +if (!isset($_GET['infosCountry']) OR empty($_GET['infosCountry'])) + $error['infosCountry'] = '0'; +else + $error['infosCountry'] = ''; + +if (!isset($_GET['infosTimezone']) OR empty($_GET['infosTimezone'])) + $error['infosTimezone'] = '0'; +else + $error['infosTimezone'] = ''; + +if (isset($_GET['infosFirstname']) AND !Validate::isName($_GET['infosFirstname'])) + $error['validateFirstname'] = '47'; +else + $error['validateFirstname'] = ''; + +if (isset($_GET['infosName']) AND !Validate::isName($_GET['infosName'])) + $error['validateName'] = '48'; +else + $error['validateName'] = ''; + +if (isset($_GET['catalogMode']) AND !Validate::isInt($_GET['catalogMode'])) + $error['validateCatalogMode'] = '52'; +else + $error['validateCatalogMode'] = ''; + +if(!isset($_GET['infosEmail']) OR empty($_GET['infosEmail'])) + $error['infosEmail'] = '0'; + +if (!isset($_GET['infosPassword']) OR empty($_GET['infosPassword'])) + $error['infosPassword'] = '0'; +else + $error['infosPassword'] = ''; + +if (!isset($_GET['infosPasswordRepeat']) OR empty($_GET['infosPasswordRepeat'])) + $error['infosPasswordRepeat'] = '0'; +else + $error['infosPasswordRepeat'] = ''; + +if($error['infosPassword'] == '' AND $_GET['infosPassword'] != $_GET['infosPasswordRepeat']) + $error['infosPassword'] = '2'; + +if($error['infosPassword'] == '' AND (Tools::strlen($_GET['infosPassword']) < 8 OR !Validate::isPasswdAdmin($_GET['infosPassword']))) + $error['infosPassword'] = '12'; + +///////////////////////////// +// IF ALL IS OK DO THE NEXT// +///////////////////////////// + +include_once(INSTALL_PATH.'/classes/ToolsInstall.php'); +$dbInstance = Db::getInstance(); +// set Languages +$error['infosLanguages'] = ''; +if(isFormValid()) +{ + /*$idDefault = array_search($_GET['infosDL'][0], $_GET['infosWL']) + 1; + //prepare the requests + $sqlLanguages = array(); + + $sqlLanguages[] = "UPDATE `"._DB_PREFIX_."configuration` SET `value` = '".$idDefault."' WHERE `"._DB_PREFIX_."configuration`.`id_configuration` =1"; + $sqlLanguages[] = "TRUNCATE TABLE `"._DB_PREFIX_."lang`"; + + foreach ($_GET['infosWL'] AS $wl) + $sqlLanguages[] = "INSERT INTO `"._DB_PREFIX_."lang` (`id_lang` ,`name` ,`active` ,`iso_code`)VALUES (NULL , '".ToolsInstall::getLangString($wl)."', '1', '".pSQL($wl)."')"; + foreach($sqlLanguages AS $query) + if(!Db::getInstance()->execute($query)) + $error['infosLanguages'] = '11'; + + // Flags copy + if(!$languagesId = Db::getInstance()->executeS('SELECT `id_lang`, `iso_code` FROM `'._DB_PREFIX_.'lang`')) + $error['infosLanguages'] = '11'; + + unset($dbInstance);*/ +} + +// Mail Notification +$error['infosNotification'] = ''; +if (isFormValid()) +{ + if (isset($_GET['infosNotification']) AND $_GET['infosNotification'] == 'on') { + include_once(INSTALL_PATH.'/classes/ToolsInstall.php'); + $smtpChecked = (trim($_GET['infosMailMethod']) == 'smtp'); + $smtpServer = $_GET['smtpSrv']; + $subject = $_GET['infosShop']." - " . $_GET['mailSubject']; + $type = 'text/html'; + $to = $_GET['infosEmail']; + $from = "no-reply@".ToolsInstall::getHttpHost(false, true, true); + $smtpLogin = $_GET['smtpLogin']; + $smtpPassword = $_GET['smtpPassword']; + $smtpPort = $_GET['smtpPort'];//'default','secure' + $smtpEncryption = $_GET['smtpEnc'];//"tls","ssl","off" + $content = ToolsInstall::getNotificationMail($_GET['infosShop'], INSTALLER__PS_BASE_URI_ABSOLUTE, INSTALLER__PS_BASE_URI_ABSOLUTE."img/logo.jpg", ToolsInstall::strtoupper($_GET['infosFirstname']), $_GET['infosName'], $_GET['infosPassword'], $_GET['infosEmail']); + + $result = @ToolsInstall::sendMail($smtpChecked, $smtpServer, $content, $subject, $type, $to, $from, $smtpLogin, $smtpPassword, $smtpPort, $smtpEncryption); + } +} + +//Insert configuration parameters into the database +$error['infosInsertSQL'] = ''; +if (isFormValid()) +{ + $sqlParams = array(); + $sqlParams[] = "INSERT IGNORE INTO "._DB_PREFIX_."configuration (name, value, date_add, date_upd) VALUES ('PS_SHOP_DOMAIN', '".Tools::getHttpHost()."', NOW(), NOW())"; + $sqlParams[] = "INSERT IGNORE INTO "._DB_PREFIX_."configuration (name, value, date_add, date_upd) VALUES ('PS_SHOP_DOMAIN_SSL', '".Tools::getHttpHost()."', NOW(), NOW())"; + $sqlParams[] = "INSERT IGNORE INTO "._DB_PREFIX_."configuration (name, value, date_add, date_upd) VALUES ('PS_INSTALL_VERSION', '".pSQL(INSTALL_VERSION)."', NOW(), NOW())"; + $sqlParams[] = "INSERT IGNORE INTO "._DB_PREFIX_."configuration (name, value, date_add, date_upd) VALUES ('PS_SHOP_NAME', '".pSQL($_GET['infosShop'])."', NOW(), NOW())"; + $sqlParams[] = "INSERT IGNORE INTO "._DB_PREFIX_."configuration (name, value, date_add, date_upd) VALUES ('PS_SHOP_EMAIL', '".pSQL($_GET['infosEmail'])."', NOW(), NOW())"; + $sqlParams[] = "INSERT IGNORE INTO "._DB_PREFIX_."configuration (name, value, date_add, date_upd) VALUES ('PS_MAIL_METHOD', '".pSQL($_GET['infosMailMethod'] == "smtp" ? "2": "1")."', NOW(), NOW())"; + $sqlParams[] = 'UPDATE '._DB_PREFIX_.'configuration SET value = \''.pSQL($_GET['isoCode']).'\' WHERE name = \'PS_LOCALE_LANGUAGE\''; + $sqlParams[] = 'UPDATE '._DB_PREFIX_.'configuration SET value = \''.(int)$_GET['catalogMode'].'\' WHERE name = \'PS_CATALOG_MODE\''; + $sqlParams[] = "INSERT IGNORE INTO "._DB_PREFIX_."configuration (name, value, date_add, date_upd) VALUES ('PS_SHOP_ACTIVITY', '".(int)($_GET['infosActivity'])."', NOW(), NOW())"; + if ((int)($_GET['infosCountry']) != 0) + { + $sqlParams[] = 'UPDATE '._DB_PREFIX_.'configuration SET value = '.(int)($_GET['infosCountry']).' WHERE name = \'PS_COUNTRY_DEFAULT\''; + $sqlParams[] = 'UPDATE '._DB_PREFIX_.'configuration SET value = "'.pSQL($_GET['infosTimezone']).'" WHERE name = \'PS_TIMEZONE\''; + $sql_isocode = Db::getInstance()->getValue('SELECT `iso_code` FROM `'._DB_PREFIX_.'country` WHERE `id_country` = '.(int)($_GET['infosCountry'])); + $sqlParams[] = 'UPDATE '._DB_PREFIX_.'configuration SET value = \''.pSQL($sql_isocode).'\' WHERE name = \'PS_LOCALE_COUNTRY\''; + + } + Language::loadLanguages(); + Configuration::loadConfiguration(); + require_once(DEFINES_FILE); + require_once(INSTALL_PATH.'/../classes/LocalizationPack.php'); + + + $stream_context = @stream_context_create(array('http' => array('timeout' => 5))); + $localization_file = @Tools::file_get_contents('http://www.prestashop.com/download/localization_pack.php?country='.$_GET['countryName'], false, $stream_context); + if (!$localization_file AND file_exists(dirname(__FILE__).'/../../localization/'.strtolower($_GET['countryName']).'.xml')) + $localization_file = @file_get_contents(dirname(__FILE__).'/../../localization/'.strtolower($_GET['countryName']).'.xml'); + if ($localization_file) + { + $localizationPack = new LocalizationPackCore(); + $localizationPack->loadLocalisationPack($localization_file, '', true); + + if (Configuration::get('PS_LANG_DEFAULT') == 1) + { + $sqlParams[] = 'UPDATE `'._DB_PREFIX_.'configuration` SET `value` = (SELECT id_lang FROM '._DB_PREFIX_.'lang WHERE iso_code = \''.pSQL($_GET['isoCode']).'\') WHERE name = \'PS_LANG_DEFAULT\''; + // This request is used when _PS_MODE_DEV_ is set to true + $sqlParams[] = 'UPDATE `'._DB_PREFIX_.'lang` SET `active` = 0 WHERE `iso_code` != \''.pSQL($_GET['isoCode']).'\''; + } + else + $sqlParams[] = 'UPDATE `'._DB_PREFIX_.'lang` SET `active` = 0 WHERE `id_lang` != '.Configuration::get('PS_LANG_DEFAULT'); + } + if (isset($_GET['infosMailMethod']) AND $_GET['infosMailMethod'] == "smtp") + { + $sqlParams[] = "INSERT INTO "._DB_PREFIX_."configuration (name, value, date_add, date_upd) VALUES ('PS_MAIL_SERVER', '".pSQL($_GET['smtpSrv'])."', NOW(), NOW())"; + $sqlParams[] = "INSERT INTO "._DB_PREFIX_."configuration (name, value, date_add, date_upd) VALUES ('PS_MAIL_USER', '".pSQL($_GET['smtpLogin'])."', NOW(), NOW())"; + $sqlParams[] = "INSERT INTO "._DB_PREFIX_."configuration (name, value, date_add, date_upd) VALUES ('PS_MAIL_PASSWD', '".pSQL($_GET['smtpPassword'])."', NOW(), NOW())"; + $sqlParams[] = "INSERT INTO "._DB_PREFIX_."configuration (name, value, date_add, date_upd) VALUES ('PS_MAIL_SMTP_ENCRYPTION', '".pSQL($_GET['smtpEnc'])."', NOW(), NOW())"; + $sqlParams[] = "INSERT INTO "._DB_PREFIX_."configuration (name, value, date_add, date_upd) VALUES ('PS_MAIL_SMTP_PORT', '".pSQL($_GET['smtpPort'])."', NOW(), NOW())"; + } + $sqlParams[] = 'INSERT INTO '._DB_PREFIX_.'employee (id_employee, lastname, firstname, email, passwd, last_passwd_gen, bo_theme, active, id_profile, id_lang, bo_show_screencast) VALUES (NULL, \''.pSQL(ToolsInstall::ucfirst($_GET['infosName'])).'\', \''.pSQL(ToolsInstall::ucfirst($_GET['infosFirstname'])).'\', \''.pSQL($_GET['infosEmail']).'\', \''.md5(pSQL(_COOKIE_KEY_.$_GET['infosPassword'])).'\', \''.date('Y-m-d h:i:s', strtotime('-360 minutes')).'\', \'oldschool\', 1, 1, (SELECT `value` FROM `'._DB_PREFIX_.'configuration` WHERE `name` = \'PS_LANG_DEFAULT\' LIMIT 1), 1)'; + $sqlParams[] = 'INSERT INTO '._DB_PREFIX_.'employee_shop (id_employee, id_shop) VALUES (1 ,1)'; + $sqlParams[] = 'INSERT INTO '._DB_PREFIX_.'contact (id_contact, email, customer_service) VALUES (NULL, \''.pSQL($_GET['infosEmail']).'\', 1), (NULL, \''.pSQL($_GET['infosEmail']).'\', 1)'; + + if (function_exists('mcrypt_encrypt')) + { + $settings = file_get_contents(dirname(__FILE__).'/../../config/settings.inc.php'); + if (!strstr($settings, '_RIJNDAEL_KEY_')) + { + $key_size = mcrypt_get_key_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB); + $key = Tools::passwdGen($key_size); + $settings = preg_replace('/define\(\'_COOKIE_KEY_\', \'([a-z0-9=\/+-_]+)\'\);/i', 'define(\'_COOKIE_KEY_\', \'\1\');'."\n".'define(\'_RIJNDAEL_KEY_\', \''.$key.'\');', $settings); + } + if (!strstr($settings, '_RIJNDAEL_IV_')) + { + $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB); + $iv = base64_encode(mcrypt_create_iv($iv_size, MCRYPT_RAND)); + $settings = preg_replace('/define\(\'_COOKIE_IV_\', \'([a-z0-9=\/+-_]+)\'\);/i', 'define(\'_COOKIE_IV_\', \'\1\');'."\n".'define(\'_RIJNDAEL_IV_\', \''.$iv.'\');', $settings); + } + if (file_put_contents(dirname(__FILE__).'/../../config/settings.inc.php', $settings)) + $sqlParams[] = 'UPDATE '._DB_PREFIX_.'configuration SET value = 1 WHERE name = \'PS_CIPHER_ALGORITHM\''; + } + + if (file_exists(realpath(INSTALL_PATH.'/../img').'/logo.jpg')) + { + list($width, $height, $type, $attr) = getimagesize(realpath(INSTALL_PATH.'/../img').'/logo.jpg'); + $sqlParams[] = 'UPDATE '._DB_PREFIX_.'configuration SET value = '.(int)round($width).' WHERE name = \'SHOP_LOGO_WIDTH\''; + $sqlParams[] = 'UPDATE '._DB_PREFIX_.'configuration SET value = '.(int)round($height).' WHERE name = \'SHOP_LOGO_HEIGHT\''; + } + + if ((int)$_GET['catalogMode'] == 1) + { + $sqlParams[] = 'DELETE c, cl FROM `'._DB_PREFIX_.'cms` AS c LEFT JOIN `'._DB_PREFIX_.'cms_lang` AS cl ON c.id_cms = cl.id_cms WHERE 1 AND c.`id_cms` IN (1, 5)'; + } + + $dbInstance = Db::getInstance(); + foreach($sqlParams as $query) + if(!$dbInstance->Execute($query)) + $error['infosInsertSQL'] = '11'; + unset($dbInstance); +} + +////////////////////////// +// Building XML Response// +////////////////////////// + +global $logger; +echo ''."\n"; +foreach ($error AS $key => $line) +{ + if ($line != '') + $logger->logError($key.' => '.$line); + + echo ''."\n"; +} +echo ''; + diff --git a/install-new/upgrade/xml/createDB.php b/install-new/upgrade/xml/createDB.php new file mode 100644 index 000000000..d41b815e2 --- /dev/null +++ b/install-new/upgrade/xml/createDB.php @@ -0,0 +1,242 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +if (!defined('_PS_MAGIC_QUOTES_GPC_')) + define('_PS_MAGIC_QUOTES_GPC_', get_magic_quotes_gpc()); + +if (function_exists('date_default_timezone_set')) + date_default_timezone_set('Europe/Paris'); + +//delete settings file if it exist +if (file_exists(SETTINGS_FILE)) + if (!unlink(SETTINGS_FILE)) + die(''."\n"); + +require_once(INSTALL_PATH.'/classes/AddConfToFile.php'); +require_once(INSTALL_PATH.'/../classes/Validate.php'); +require_once(INSTALL_PATH.'/../classes/db/Db.php'); +require_once(INSTALL_PATH.'/../classes/Tools.php'); + +global $logger; + +//check db access +include_once(INSTALL_PATH.'/classes/ToolsInstall.php'); +$resultDB = ToolsInstall::checkDB($_GET['server'], $_GET['login'], $_GET['password'], $_GET['name'], true); +if ($resultDB !== true) +{ + $logger->logError('Invalid database configuration'); + die("\n"); +} + +if (!isset($_GET['mode']) OR ($_GET['mode'] != "full" AND $_GET['mode'] != "lite")) + die(''."\n"); + +// Writing data in settings file +$oldLevel = error_reporting(E_ALL); +$_PS_DIRECTORY_ = trim(str_replace(' ', '%20', INSTALLER__PS_BASE_URI), '/'); +$_PS_DIRECTORY_ = ($_PS_DIRECTORY_) ? '/'.$_PS_DIRECTORY_.'/' : '/'; +$datas = array( + array('_DB_SERVER_', trim($_GET['server'])), + array('_DB_TYPE_', 'MySQL'), + array('_DB_NAME_', trim($_GET['name'])), + array('_DB_USER_', trim($_GET['login'])), + array('_DB_PASSWD_', trim($_GET['password'])), + array('_DB_PREFIX_', trim($_GET['tablePrefix'])), + array('_MYSQL_ENGINE_', trim($_GET['engine'])), + array('_PS_CACHING_SYSTEM_', 'CacheMemcache'), + array('_PS_CACHE_ENABLED_', '0'), + array('_MEDIA_SERVER_1_', ''), + array('_MEDIA_SERVER_2_', ''), + array('_MEDIA_SERVER_3_', ''), + array('_COOKIE_KEY_', Tools::passwdGen(56)), + array('_COOKIE_IV_', Tools::passwdGen(8)), + array('_PS_CREATION_DATE_', date('Y-m-d')), + array('_PS_VERSION_', INSTALL_VERSION) +); +error_reporting($oldLevel); +$confFile = new AddConfToFile(SETTINGS_FILE, 'w'); +if ($confFile->error) + die(''."\n"); + +foreach ($datas AS $data){ + $confFile->writeInFile($data[0], $data[1]); +} +$confFile->writeEndTagPhp(); + +// Settings updated, compile and cache directories must be emptied +foreach (array(INSTALL_PATH.'/../tools/smarty/cache/', INSTALL_PATH.'/../tools/smarty/compile/', INSTALL_PATH.'/../tools/smarty_v2/cache/', INSTALL_PATH.'/../tools/smarty_v2/compile/') as $dir) + if (file_exists($dir)) + foreach (scandir($dir) as $file) + if ($file[0] != '.' AND $file != 'index.php') + unlink($dir.$file); + +if ($confFile->error != false) + die(''."\n"); + +//load new settings, and fatal error if you can't +require_once(SETTINGS_FILE); + +//----------- +//import SQL data +//----------- +switch (_DB_TYPE_) +{ + case 'MySQL': + + $filePrefix = 'PREFIX_'; + $engineType = 'ENGINE_TYPE'; + //send the SQL structure file requests + $structureFile = dirname(__FILE__).'/../sql/db.sql'; + if(!file_exists($structureFile)) + { + $logger->logError('Impossible to access to a MySQL content file. ('.$structureFile.')'); + die(''."\n"); + } + $db_structure_settings = ''; + if ( !$db_structure_settings .= file_get_contents($structureFile) ) + { + $logger->logError('Impossible to read the content of a MySQL content file. ('.$structureFile.')'); + die(''."\n"); + } + $db_structure_settings = str_replace(array($filePrefix, $engineType), array($_GET['tablePrefix'], $_GET['engine']), $db_structure_settings); + $db_structure_settings = preg_split("/;\s*[\r\n]+/",$db_structure_settings); + if (isset($_GET['dropAndCreate']) && $_GET['dropAndCreate'] == 'true') + { + array_unshift($db_structure_settings, 'USE `'.trim($_GET['name']).'`;'); + array_unshift($db_structure_settings, 'CREATE DATABASE `'.trim($_GET['name']).'`;'); + array_unshift($db_structure_settings, 'DROP DATABASE `'.trim($_GET['name']).'`;'); + } + foreach ($db_structure_settings as $query) + { + $query = trim($query); + if (!empty($query)) + { + if (!Db::getInstance()->Execute($query)) + { + if (Db::getInstance()->getNumberError() == 1050) + { + $logger->logError('A Prestashop database already exists, please drop it or change the prefix.'); + die(''."\n"); + } + else + { + $logger->logError('SQL query: '."\r\n".$query); + $logger->logError('SQL error: '."\r\n".Db::getInstance()->getMsgError()); + die( + '' + ); + } + } + } + } + + //send the SQL data file requests + $db_data_settings = ''; + + $liteFile = dirname(__FILE__).'/../sql/db_settings_lite.sql'; + if(!file_exists($liteFile)) + die(''."\n"); + if ( !$db_data_settings .= file_get_contents( $liteFile ) ) + die(''."\n"); + + if ($_GET['mode'] == 'full') + { + $fullFile = dirname(__FILE__).'/../sql/db_settings_extends.sql'; + if(!file_exists($fullFile)) + { + $logger->logError('Impossible to access to a MySQL content file. ('.$fullFile.')'); + die(''."\n"); + } + if (!$db_data_settings .= file_get_contents($fullFile)) + { + $logger->logError('Impossible to read the content of a MySQL content file. ('.$fullFile.')'); + die(''."\n"); + } + } + $db_data_settings .= "\n".'INSERT INTO `PREFIX_shop_url` (`id_shop`, `domain`, `domain_ssl`, `physical_uri`, `virtual_uri`, `main`, `active`) VALUES(1, \''.pSQL(Tools::getHttpHost()).'\', \''.pSQL(Tools::getHttpHost()).'\', \''.pSQL($_PS_DIRECTORY_).'\', \'\', 1, 1);'; + $db_data_settings .= "\n".'UPDATE `PREFIX_customer` SET `passwd` = \''.md5(_COOKIE_KEY_.'123456789').'\' WHERE `id_customer` =1;'; + $db_data_settings .= "\n".'INSERT INTO `PREFIX_configuration` (name, value, date_add, date_upd) VALUES (\'PS_VERSION_DB\', \'' . INSTALL_VERSION . '\', NOW(), NOW());'; + $db_data_settings = str_replace(array($filePrefix, $engineType), array($_GET['tablePrefix'], $_GET['engine']), $db_data_settings); + $db_data_settings = preg_split("/;\s*[\r\n]+/",$db_data_settings); + /* UTF-8 support */ + array_unshift($db_data_settings, 'SET NAMES \'utf8\';'); + foreach ($db_data_settings as $query) + { + $query = trim($query); + if (!empty($query)) + { + if (!Db::getInstance()->Execute($query)) + { + if (Db::getInstance()->getNumberError() == 1050) + die(''."\n"); + else + { + $logger->logError('SQL query: '."\r\n".$query); + $logger->logError('SQL error: '."\r\n".Db::getInstance()->getMsgError()); + die( + '' + ); + } + } + } + } + break; +} + +$xml = ''."\n"; + +$countries = Db::getInstance()->executeS(' +SELECT c.`id_country`, cl.`name`, c.`iso_code` FROM `'.$_GET['tablePrefix'].'country` c +INNER JOIN `'.$_GET['tablePrefix'].'country_lang` cl ON (c.`id_country` = cl.`id_country`) +WHERE cl.`id_lang` = '.(int)($_GET['language'] + 1).' +ORDER BY cl.`name`'); + +$timezones = Db::getInstance()->executeS(' +SELECT * FROM `'.$_GET['tablePrefix'].'timezone` +ORDER BY `name`'); + +$xml .= ''."\n"; +foreach ($countries as $country) + $xml .= "\t".''."\n"; +$xml .= ''."\n".''."\n"; +foreach ($timezones as $timezone) + $xml .= "\t".''."\n"; +$xml .= ''."\n"; + +die($xml); \ No newline at end of file diff --git a/install-new/upgrade/xml/doUpgrade.php b/install-new/upgrade/xml/doUpgrade.php new file mode 100644 index 000000000..57ae16e84 --- /dev/null +++ b/install-new/upgrade/xml/doUpgrade.php @@ -0,0 +1,329 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +define('UPGRADE_PATH', INSTALL_PATH.'/upgrade/'); + +$filePrefix = 'PREFIX_'; +$engineType = 'ENGINE_TYPE'; + +if (function_exists('date_default_timezone_set')) + date_default_timezone_set('Europe/Paris'); + +// if _PS_ROOT_DIR_ is defined, use it instead of "guessing" the module dir. +if (defined('_PS_ROOT_DIR_') AND !defined('_PS_MODULE_DIR_')) + define('_PS_MODULE_DIR_', _PS_ROOT_DIR_.'/modules/'); +else if (!defined('_PS_MODULE_DIR_')) + define('_PS_MODULE_DIR_', INSTALL_PATH.'/../modules/'); + +if(!defined('_PS_INSTALLER_PHP_UPGRADE_DIR_')) + define('_PS_INSTALLER_PHP_UPGRADE_DIR_', UPGRADE_PATH.'functions/'); + +// No more infinite require_once on functions ! +foreach (scandir(_PS_INSTALLER_PHP_UPGRADE_DIR_) as $file) + if ($file[0] != '.' && $file != 'index.php' && preg_match('#\.php$#i', $file)) + require_once _PS_INSTALLER_PHP_UPGRADE_DIR_.$file; + +//old version detection +global $oldversion, $logger; +$oldversion = false; +if (file_exists(SETTINGS_FILE) AND file_exists(DEFINES_FILE)) +{ + include_once(SETTINGS_FILE); + include_once(DEFINES_FILE); + $oldversion = _PS_VERSION_; +} +else +{ + $logger->logError('The config/settings.inc.php file was not found.'); + die(''."\n"); +} + +if (!file_exists(DEFINES_FILE)) +{ + $logger->logError('The config/settings.inc.php file was not found.'); + die(''."\n"); +} +include_once(SETTINGS_FILE); + +if (!defined('_THEMES_DIR_')) + define('_THEMES_DIR_', __PS_BASE_URI__.'themes/'); +if (!defined('_PS_IMG_')) + define('_PS_IMG_', __PS_BASE_URI__.'img/'); +if (!defined('_PS_JS_DIR_')) + define('_PS_JS_DIR_', __PS_BASE_URI__.'js/'); +if (!defined('_PS_CSS_DIR_')) + define('_PS_CSS_DIR_', __PS_BASE_URI__.'css/'); +include_once(DEFINES_FILE); + +$oldversion = _PS_VERSION_; + +$versionCompare = version_compare(INSTALL_VERSION, $oldversion); + +if ($versionCompare == '-1') +{ + $logger->logError('This installer is too old.'); + die(''."\n"); +} +elseif ($versionCompare == 0) +{ + $logger->logError(sprintf('You already have the %s version.',INSTALL_VERSION)); + die(''."\n"); +} +elseif ($versionCompare === false) +{ + $logger->logError('There is no older version. Did you delete or rename the config/settings.inc.php file?'); + die(''."\n"); +} + +//check DB access +include_once(UPGRADE_PATH.'classes/ToolsInstall.php'); +$resultDB = ToolsInstall::checkDB(_DB_SERVER_, _DB_USER_, _DB_PASSWD_, _DB_NAME_, false); +if ($resultDB !== true) +{ + $logger->logError('Invalid database configuration.'); + die("\n"); +} + +//custom sql file creation +$upgradeFiles = array(); +if ($handle = opendir(UPGRADE_PATH.'sql')) +{ + while (false !== ($file = readdir($handle))) + if ($file != '.' AND $file != '..') + $upgradeFiles[] = str_replace(".sql", "", $file); + closedir($handle); +} +if (empty($upgradeFiles)) +{ + $logger->logError('Can\'t find the sql upgrade files. Please verify that the /install/sql/upgrade folder is not empty)'); + die(''."\n"); +} +natcasesort($upgradeFiles); +$neededUpgradeFiles = array(); + +// fix : complete version number if there is not all 4 numbers +// for example replace 1.4.3 by 1.4.3.0 +// consequences : file 1.4.3.0.sql will be skipped if oldversion = 1.4.3 +// @since 1.4.4.0 +$arrayVersion = preg_split('#\.#', $oldversion); +$versionNumbers = sizeof($arrayVersion); + +if ($versionNumbers != 4) + $arrayVersion = array_pad($arrayVersion, 4, '0'); + +$oldversion = implode('.', $arrayVersion); +// end of fix + +foreach ($upgradeFiles AS $version) +{ + + if (version_compare($version, $oldversion) == 1 AND version_compare(INSTALL_VERSION, $version) != -1) + $neededUpgradeFiles[] = $version; +} + +if (empty($neededUpgradeFiles)) +{ + $logger->logError('No upgrade is possible.'); + die(''."\n"); +} + + +//refresh conf file +require_once(UPGRADE_PATH.'classes/AddConfToFile.php'); +$oldLevel = error_reporting(E_ALL); +$mysqlEngine = (defined('_MYSQL_ENGINE_') ? _MYSQL_ENGINE_ : 'MyISAM'); +$datas = array( + array('_DB_SERVER_', _DB_SERVER_), + array('_DB_TYPE_', _DB_TYPE_), + array('_DB_NAME_', _DB_NAME_), + array('_DB_USER_', _DB_USER_), + array('_DB_PASSWD_', _DB_PASSWD_), + array('_DB_PREFIX_', _DB_PREFIX_), + array('_MYSQL_ENGINE_', $mysqlEngine), + array('_PS_CACHING_SYSTEM_', (defined('_PS_CACHING_SYSTEM_') AND _PS_CACHING_SYSTEM_ != 'CacheMemcache') ? _PS_CACHING_SYSTEM_ : 'CacheMemcache'), + array('_PS_CACHE_ENABLED_', defined('_PS_CACHE_ENABLED_') ? _PS_CACHE_ENABLED_ : '0'), + array('_MEDIA_SERVER_1_', defined('_MEDIA_SERVER_1_') ? _MEDIA_SERVER_1_ : ''), + array('_MEDIA_SERVER_2_', defined('_MEDIA_SERVER_2_') ? _MEDIA_SERVER_2_ : ''), + array('_MEDIA_SERVER_3_', defined('_MEDIA_SERVER_3_') ? _MEDIA_SERVER_3_ : ''), + array('_PS_DIRECTORY_', __PS_BASE_URI__), + array('_COOKIE_KEY_', _COOKIE_KEY_), + array('_COOKIE_IV_', _COOKIE_IV_), + array('_PS_CREATION_DATE_', defined("_PS_CREATION_DATE_") ? _PS_CREATION_DATE_ : date('Y-m-d')), + array('_PS_VERSION_', INSTALL_VERSION) +); +if (defined('_RIJNDAEL_KEY_')) + $datas[] = array('_RIJNDAEL_KEY_', _RIJNDAEL_KEY_); +if (defined('_RIJNDAEL_IV_')) + $datas[] = array('_RIJNDAEL_IV_', _RIJNDAEL_IV_); +if(!defined('_PS_CACHE_ENABLED_')) + define('_PS_CACHE_ENABLED_', '0'); +if(!defined('_MYSQL_ENGINE_')) + define('_MYSQL_ENGINE_', 'MyISAM'); + +$sqlContent = ''; +if(isset($_GET['customModule']) AND $_GET['customModule'] == 'desactivate') + desactivate_custom_modules(); + +foreach($neededUpgradeFiles AS $version) +{ + $file = UPGRADE_PATH.'sql/'.$version.'.sql'; + if (!file_exists($file)) + { + $logger->logError('Error while loading sql upgrade file.'); + die(''."\n"); + } + if (!$sqlContent .= file_get_contents($file)) + { + $logger->logError('Error while loading sql upgrade file.'); + die(''."\n"); + } + $sqlContent .= "\n"; +} + +$sqlContent = str_replace(array($filePrefix, $engineType), array(_DB_PREFIX_, $mysqlEngine), $sqlContent); +$sqlContent = preg_split("/;\s*[\r\n]+/",$sqlContent); + +error_reporting($oldLevel); +$confFile = new AddConfToFile(SETTINGS_FILE, 'w'); +if ($confFile->error) +{ + $logger->logError($confFile->error); + die(''."\n"); +} + +foreach ($datas AS $data){ + $confFile->writeInFile($data[0], $data[1]); +} + +if ($confFile->error != false) +{ + $logger->logError($confFile->error); + die(''."\n"); +} + +// Settings updated, compile and cache directories must be emptied +$arrayToClean = array( + _PS_CACHE_DIR_.'smarty/cache/', + _PS_CACHE_DIR_.'smarty/compile/', +); +foreach ($arrayToClean as $dir) + if (!file_exists($dir)) + $logger->logError('directory '.$dir." doesn't exist and can't be emptied.\r\n"); + else + foreach (scandir($dir) as $file) + if ($file[0] != '.' AND $file != 'index.php' AND $file != '.htaccess') + unlink($dir.$file); + +// delete cache filesystem if activated +$depth = Configuration::get('PS_CACHEFS_DIRECTORY_DEPTH'); +if($depth) +{ + CacheFs::deleteCacheDirectory(); + CacheFs::createCacheDirectories((int)$depth); +} + +//sql file execution +global $requests, $warningExist; +$requests = ''; +$warningExist = false; + +Configuration::loadConfiguration(); + +foreach($sqlContent as $query) +{ + $query = trim($query); + if(!empty($query)) + { + /* If php code have to be executed */ + if (strpos($query, '/* PHP:') !== false) + { + /* Parsing php code */ + $pos = strpos($query, '/* PHP:') + strlen('/* PHP:'); + $phpString = substr($query, $pos, strlen($query) - $pos - strlen(' */;')); + $php = explode('::', $phpString); + preg_match('/\((.*)\)/', $phpString, $pattern); + $paramsString = trim($pattern[0], '()'); + preg_match_all('/([^,]+),? ?/', $paramsString, $parameters); + if (isset($parameters[1])) + $parameters = $parameters[1]; + else + $parameters = array(); + if (is_array($parameters)) + foreach ($parameters AS &$parameter) + $parameter = str_replace('\'', '', $parameter); + + /* Call a simple function */ + if (strpos($phpString, '::') === false) + $phpRes = call_user_func_array(str_replace($pattern[0], '', $php[0]), $parameters); + /* Or an object method */ + else + $phpRes = call_user_func_array(array($php[0], str_replace($pattern[0], '', $php[1])), $parameters); + if ((is_array($phpRes) AND !empty($phpRes['error'])) OR $phpRes === false ) + { + $logger->logError('PHP error: '.$query."\r\n".(empty($phpRes['msg'])?'':' - '.$phpRes['msg'])); + $logger->logError(empty($phpRes['error'])?'':$phpRes['error']); + if (!isset($request)) + $request = ''; + $request .= +' + + + + '."\n"; + } + else + $requests .= +' + + '."\n"; + } + elseif(!Db::getInstance()->execute($query)) + { + $logger->logError('SQL query: '."\r\n".$query); + $logger->logError('SQL error: '."\r\n".Db::getInstance()->getMsgError()); + $warningExist = true; + $requests .= +' + + getMsgError()).']]> + getNumberError()).']]> + '."\n"; + } + else + $requests .= +' + + '."\n"; + } +} +Configuration::updateValue('PS_HIDE_OPTIMIZATION_TIPS', 0); +Configuration::updateValue('PS_NEED_REBUILD_INDEX', 1); +Configuration::updateValue('PS_VERSION_DB', INSTALL_VERSION); +$result = $warningExist ? ''."\n" : ''."\n"; +$result .= $requests; +die($result.''."\n"); + diff --git a/install-new/upgrade/xml/getVersionFromDb.php b/install-new/upgrade/xml/getVersionFromDb.php new file mode 100644 index 000000000..7cdac1c2f --- /dev/null +++ b/install-new/upgrade/xml/getVersionFromDb.php @@ -0,0 +1,85 @@ + +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +require_once(SETTINGS_FILE); +require_once(INSTALL_PATH.'/classes/GetVersionFromDb.php'); + +require_once(INSTALL_PATH.'/classes/LanguagesManager.php'); +$lm = new LanguageManager(INSTALL_PATH.'/langs/list.xml'); +$_LANG = array(); +$_LIST_WORDS = array(); +function lang($txt) { + global $_LANG , $_LIST_WORDS; + return (isset($_LANG[$txt]) ? $_LANG[$txt] : $txt); +} +if ($lm->getIncludeTradFilename()) + include_once($lm->getIncludeTradFilename()); + +$dbVersion = new GetVersionFromDb(); +$versions = $dbVersion->getVersions(); +$psVersionDb = Configuration::get('PS_VERSION_DB'); + +// Usefull debug +/* echo ''; +print_r($versions); +print_r($dbVersion->getErrors()); +exit;*/ + +if (!$versions) +{ + // Desactivate this case temporary + die('<action result="ok" />'); + + $message = lang('Warning, the installer was unable to detect what is your current PrestaShop version from a database structure analysis. This means some fields or tables are missing, and upgrade is under your own risk.'); + if ($psVersionDb) + { + $message .= '<br /><br />' . sprintf(lang('However the installer has detected that the version stored in your configuration table is %1$s'), '<span class="versionInfo">' . $psVersionDb . '</span>'); + } + die('<action result="ko" lang="' . htmlspecialchars($message) . '" />'); +} + +foreach ($versions as $version) +{ + if (version_compare(_PS_VERSION_, $version) == 0) + { + die('<action result="ok" />'); + } +} + +if (count($versions) == 1) +{ + die('<action result="ko" lang="' . htmlspecialchars(sprintf(lang('Warning, we detected that the version specified in your config/settings.inc.php does not match your SQL database structure.<br />File config/settings.inc.php indicates: %1$s<br />Our automatic detection tool has detected version: %2$s<br /><br />You should edit your config/settings.inc.php file to replace %1$s by %2$s.<br />Failure to fix this issue before upgrading may result in severe complications.<br />Do not forget to relaunch the installer after this modification by pressing F5 on your web browser.'), '<span class="versionInfo">' . _PS_VERSION_ . '</span>', '<span class="versionInfo">' . $versions[0] . '</span>')) . '" />'); +} + +if ($psVersionDb && in_array($psVersionDb, $versions)) +{ + die('<action result="ko" lang="' . htmlspecialchars(sprintf(lang('Warning, we detected that the version specified in your config/settings.inc.php does not match your SQL database structure.<br />File config/settings.inc.php indicates: %1$s<br />Our automatic detection tool has detected version: %2$s<br /><br />You should edit your config/settings.inc.php file to replace %1$s by %2$s.<br />Failure to fix this issue before upgrading may result in severe complications.<br />Do not forget to relaunch the installer after this modification by pressing F5 on your web browser.'), '<span class="versionInfo">' . _PS_VERSION_ . '</span>', '<span class="versionInfo">' . $psVersionDb . '</span>')) . '" />'); +} +else +{ + die('<action result="ko" lang="' . htmlspecialchars(sprintf(lang('Warning, we detected that the version specified in your config/settings.inc.php does not match your SQL database structure.<br />File config/settings.inc.php indicates: %1$s<br />Our automatic detection tool has detected a version between %2$s and %3$s<br /><br />You should edit your config/settings.inc.php file to replace %1$s by your real shop version.<br />Failure to fix this issue before upgrading may result in severe complications.<br />Do not forget to relaunch the installer after this modification by pressing F5 on your web browser.'), '<span class="versionInfo">' . _PS_VERSION_ . '</span>', '<span class="versionInfo">' . $versions[count($versions) - 1] . '</span>', '<span class="versionInfo">' . $versions[0] . '</span>')) . '" />'); +} diff --git a/install-new/upgrade/xml/index.php b/install-new/upgrade/xml/index.php new file mode 100644 index 000000000..4e2611d37 --- /dev/null +++ b/install-new/upgrade/xml/index.php @@ -0,0 +1,36 @@ +<?php +/* +* 2007-2011 PrestaShop +* +* NOTICE OF LICENSE +* +* This source file is subject to the Open Software License (OSL 3.0) +* that is bundled with this package in the file LICENSE.txt. +* It is also available through the world-wide-web at this URL: +* http://opensource.org/licenses/osl-3.0.php +* If you did not receive a copy of the license and are unable to +* obtain it through the world-wide-web, please send an email +* to license@prestashop.com so we can send you a copy immediately. +* +* DISCLAIMER +* +* Do not edit or add to this file if you wish to upgrade PrestaShop to newer +* versions in the future. If you wish to customize PrestaShop for your +* needs please refer to http://www.prestashop.com for more information. +* +* @author PrestaShop SA <contact@prestashop.com> +* @copyright 2007-2011 PrestaShop SA +* @version Release: $Revision$ +* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) +* International Registered Trademark & Property of PrestaShop SA +*/ + +header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); +header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); + +header("Cache-Control: no-store, no-cache, must-revalidate"); +header("Cache-Control: post-check=0, pre-check=0", false); +header("Pragma: no-cache"); + +header("Location: ../"); +exit; \ No newline at end of file

    Diese Webseite wurde hergestellt unter Verwendung von PrestaShop™ open-source software.

    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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/scenes/thumbs/The_MacBooks-thumb_scene.jpg b/install-new/fixtures/apple/img/scenes/thumbs/The_MacBooks-thumb_scene.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3efcb3b5929f75d6de2a681521a7f31a14738682 GIT binary patch literal 3532 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 F{{uwqhIRk| literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/st/Dade_County-medium.jpg b/install-new/fixtures/apple/img/st/Dade_County-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ad01d54a345ff630e031ee26adce3a5e22bab615 GIT binary patch literal 2674 zcmb7Fc|26>8$V|@+hE2FY3xfTYBZKRxC#jokx?Q|lBGnsCXqx4u@nMldn zjAn>mc%jIp)WxH`%tCWyrkj&5d4;7|mrsKlfmPYm`07Qi`i2%~u8+%uGWUy%RdTh` zqp^P2eS@}^cIj{%N)Lzh;gCSwBUSgg>wclLZ$Ek?iyt%Hlfs>Hb}qa<%EXmC1ul|J z6k?Nrn*G-=Lr7II0Eh%&kimaog##cAfka8+B(W08WW16#gjo=}3y6e$qy427=-WFK zzpI~}`EG=2|1w{X5(A7Z$9?(a@Ie?oY7XX!ns`T*9)US1s^+X}HTIm8byQh0ZpN3t z={FtDnjq@56LuKf&YfI&XdnNCR9KlEKJ8+pg!Db48*JS}3X;3n-WBoj)H1KXl71(@ zr~e+6Rk_9Ma9JxeU)EkSbX)Rsk0dwIYvEaEsk>sE%f?!6_ANVO_UdYMGq$hc(o@iL zo|XydkS(Wp!-S}cea}Zyv$qk>Og%9EvS-Zik{@|MMq1u(PA$NY>S1UZreFPNvX}!7 z81%9f?NCCMn!dX^{)a6e?{DO#1*}H)(hu9W(X7=2R-gPpm;3n{!vZjf%>NPw z=T=zaT|i&h7I-O{5oQn++BC zsADCnVkR7K9MGT`AKE*mC+YP*4}K%#ZGE$Tf#12~k$w@{0#a#t4+#X0QpAiR3l zuiBM23T~8A`j5^sjjV4P1S<|&X9d%vzdagVaZUN)Z}in8ccDspJhJu*ou=kuNNHfI zZO`sBz3en|dn@A(>k?;gIeOt{z0H-vfEQ)H0nN&DD=!U7sm!dY?R9B0FQ|J(HA5L@ zTIv1TU86c4eXlwO4%y)|lCHq^W^BTqHGlK+uM;5}orI%LX(2{4%ouvCdS=_S8F72c z;qI zixKDbx6`GM!Ig2;vW{8>@hSJRhk_($@=HZ2i9OXro6MI_uecv-MR&WTGC;!hG?p8w zPi(j?^ghOSrT^R(`sTZlI(K>Uie8T zXsooh!v%9^f@2^`B<5Xt7Z?*h8bWL?ypvI2y&wdqx4K$h{PUTzXPb>f^l7PJ!^kk_ z8?W?+b;pw};e+OwR`NixYs?^*NB*YsntJ?K_Y2X}UN^nZbzF~n%jWb}H%`w!^?w)s zt#hd(B3QwxgzbO6BYNbB=ak)$YLSbucSmSW6YMu|=sud&{Ruzp5+ygI^R z549PZMEC@Kngb2YS4twYG$~E;Q$^z5AtzJ!`f6PH6`z&dSjbM2U3fUFU9}Ea_*yVz z_SMbuaK?A)Mjtpjc853cgcxzGoiSy%UcYe`l^xIYtjTG0%%>$}-V&u4{|<5Tqg?>} z;*5D-yEa2#EEGJ8B4|nP3|#s$Uk#C_jD<)8|EC^pkmi<%@we}0G<+wFUyU&1fwsmT zY{}W!E`_w#**I$HQNP{*{VAd2(!5lg_&IlDG(bIvbUZZk%frNS@1dZ>dEJHYBSzBm zKgXVEb$yzL(<}W9<`mW>%uFao8muTYH~;-y>X~PqF$6VvQ6FyF+Oc$e@m|#VquQ&)G!x-@8JWdo>7H135+zKfR=N3VR7M6*ACSz} zevK-Tqrbn)*5_IoDjqaJc%^g2expk}AL&l1P``1; zU<;R)YBY}cOR9nwrA%Y4iO+9)6`(K@g~Ai;-eV~bxd0v2-oe^Pn8{hp_q~XwKBWQ4cP@e-M-YgsmJzQkefr?74qdE< zfTO!p4GCF@NRBAkwX?~$LA*rU&!(~V<{+7Ht*x;g-&tkeW!|?uTp!L1RD`D$i|e;q zDV^%*9?^IZV~*r>5Y~ZW;LN^5(u0BAd;!{m*F7mSe2jeBpS_MK%?dZCRJ}Yv*SWta zSTB3a1^-+ggH34kE9r?^19v=bA%RqJ;rOr3dj?aItUupwSz2xVq9q`=c#6o1s4lW{ z!JhGnlApdVwNh?)>yl@|eg=5dWUl8_+=q`N~xknRBmk?xjG3F$_V5~RBu326|JMnH*+ z=XcJz_usp}{m=L8{k_kA)_(U|d%fTN{QW8bsvs*b3jhKE0N}#|xL*WF1JFRAzx|d>kAoDU^_y1O|iQ5|ELTl8_UTz)1cE z0ir#81BPHhAXp@LICv!g?{?n_AjAZ?0V>ge3;+-z5RDLc-wmL8SSJMdce(#*5C9q& z9Rmc!d>Eww0zhd0cku5k7y>}Q{|3NCdl-bGK_3FdFKzALbjvZdK)X{mi#J4h6*3^# z%O!!$OzN-J)?InecLgeZ=JM(N>sYv8J8HSch1^KL$4PU>9$RjVC8o-4XFuFrMc*i| z^-(Gs#jBL(t?bT?n6mBO8l!CzviZ&mIAt#zJ}YqB`j9VJ-4Ct~oE-2Hi_)o&<}lF} zC3c;0&&?eB+WtJnD%+LIk?r#ug!84HVX5*&YEy#r=@wS;aPYjO)_6LZG@1G5E&~3q zziCB<;AOZ23-xkkZ}d~BF&>FXncPOBm*jqR^W&GUx=52jRz%=4bnV**oPNc0ue8-+ z&Wb>R%ZT)UsXl$ws2}Br>$4st(0?XZix<;8G3C%@Dl9U45|XDe16Z|57v8aVmz~yO z$RE*~0w07ONos_gon$1TArkkl%YMrP4~Rb$h)kL=Uo0klvLxK{^mLSW z8S{N&J+E2B3A`DBmKwNl_M(Jj};V z*W1U7)(YJz-8=$aroPukeRZ#0Ln|9IELj(*_wei4XD!|eAo(1^Wq29az~NM zT_y((X+$rQQzklw$Yy=WfC_}2Ug3~$#6DswcFD!ki4uv|in4s&WE88~IVko-QhmIN zV(jxA|Jgg%mrCLBwZjD0dCz{+PB#F$IMNUIpOew|>mHS%1UM~9Tq)70bbhv7l@ZB% zFpZAHUDyV+dX#Z(a+gQXwup1YPk=@ZnBLgM#4?)6$Dw9y^uNC5%t8tHWx94Q&tlNJ zKbafYhjh zmyo^E%bE%Q?ExQP)En+=ZDr-lN@zRLYcen+e+&znVfHJ+4=Pko@K7>Iy=w2FDZ#x#4hwKQmOL2D@u}46!n7Sv{UpZSs26w&FT9Wf*v1BiKC-9;}>96JoTje<9h59~`%?O+`%M(?^X zC0f{t2c8i&G^IIIE#~M`*6K#cTX=?xB_vGMp>)NR_UxbGqc}5iew@z=Yc;Eq58{cP zWg1AclbcMvA=5A`1nUhM;wjSkv_vKOlDH@>ZDu!RgUW;7Ik4L?v)M?M@Q}5JyGq$a zW99M_$1x;Sj;Z9*1({2`-YCwV=0x&Y_nyBWVRfo4qxqo4{sU=}%+bl_1z5M8@(#bf z)7f_)4d!b$cb}w>N0F(|sk^${t$AwlJ^u;!(w5%{W03aRRMI~vV_@C$Sr~67LbVj4 zn!k4?RH_7jf2TUMMHV!A4|wHN7xVSu{4x;&Kp-IaL0|qu;y@4pjSx&kOwS_;C1K=M z=l<8hec*8k;1v|XP^qMaEfR~cNOjMjNYQgO7r(XyPT{(Xh*R^(!O1ZHLL&gRP=iN0H1VFZp3{CY>?OSPwk{qID$qbpRhN z(LJD>%$~H)^y`bao7R={hq}K5AJMO^RHqhu$hLR4% zlf)FL2>J_E@o!!aFGHf*aCdwUw(g2Ehkk-bWOj&8Xx(gS@$No6pu_%v&I7rDz!?A0 zHvkZXMo0vvmn7zak}#Mta`W=3YsCKxBG6xm7CWNs-Q`~3H4(PQeYD*6|St3=elsB3B)7-cCen6Rc+X;!Zp7;myQXrlKN z1;B(kv3!&wTDaF3}pjT>7DP8xy%LlONuUq-|um zqVyz`Z(7-0Lw%~jcvko%HHqFM(>T2K8+El(R5{zme1gw`xQ_Ub{-ToLpRaCMh3}B6 zbMcW(X&Ri{T!m&0(UIi&Bo>G6w`0Z?u9HI7e?gFcp!mPK4Z+3*;rt7Szqp3)z7wO1O=@`=x4X zl<2b17f!ZqRPousaZ=4I>17J_b){Qoljzd~uTJ#7?%)b0hc%7*BGy3NDNmwGZuL4$ zdSVkEvd(3#zip2xU_BmL)6z4J{FsXpaWj~Fen^7Tv2vQJQ%)G$nSb_fvgkCl z=Y}4W77KKi~dqt-@;Suqo)~(%tiZ#{(4ahu?lsyLpJst4qPSOp{>iAo!h~T5DsK`iamdc*ssBGT5@UxdHLS8z!Q7G7j#c>rj26_oMnjmTfAIUgkAccEy}7w z@=CbAz{m2`&8}J9#mvraz&7yDJz&~MZ%zF?Kq&g;3tas!(S;%E3n`EMO~;`LNOe1Q zFg*D-s|9a=clTN+REuI2No+*%5@WaVPco_Xz>?8Dzzc2F1^a63re9|aMzDZib(2sK zDa~^?Dm>tPQNo5UpiX9GoyBwzCrhcZ+rKyFuN2d{A*LVCNy7Gg7wjq7%!R?fFBfcG(BJ$ zTakKdn@;Qo;K*uJrT;d^n;c6?yT zP*r{I!7+@RXl`p}l|MeAXUN95>p!`=5^nI!ea=^gVe=NXtyyG7l`<2Q&xVko`C5o*Z2z{dxcy_-4)f{@m@-G= z@*BH8%A3aYBlF$?JTLf4CmGAW5{>!f_OBUNofK^=iw#x+0z2^?$>D*8usR3o{Q2`dRwt8>%!t*=> zu|nCz<2qY#^!b0Zk|MRk(r~PzvfMD4-@_`bYl{jX@kacSf~(as){YallQS}kT?8SH zG`Rxk8`=Q?06C`qZ=M^XcZ3q0d^tupqr7)S`>R_hAbDll60GZ|;7W8-v*7a;w5-!f zhbrurXvPsfxc$d8K?+pjM<;EaOqLQkkH8wiIut>1ENy6%>X_ys!8l}g`EKjwfMB1^ zI@VW?Z@!V%-^uB}=C4=?PbMc_nx&HMce-2oSf;*b@C*18C18Wpno{o=mJiD7ZMB%) z&ykI3ph%A{lye#Ra+=(0n?%`NnD2@OOO9KxrWtfUhOhBh%^F*1QN^Su2`39@Sj+_ zV9wrFteCDvv5CMKHvb(PSZH?C!0HNHVAk$abMVq@2n8|W0zhjaRLFtbpYnbG;Es05 z3Mb38TA9vdFJr`japY{}S1WdkajLR+Tgmekqb%g4oj40&bzuOVY@Co4JY|D*jn~MZ zAF=Xu)*~^H&d(ow#2!I>+Ig2@C?r2ekt6z?dbjyz&NjOvqueBlchY0Gvu-h#I; z2+KFK#4Y-MwXQ+!X-4hMtu8%ybRiTLc^X%SN;4`7dm}c8+GwXD%*rB3MeR_ZD;bq) z_;{WtawRqB_2j%u>Pjqh@X7jEYMm_!K^U~d`q-MrLb@~VNe!Uzh`dIc#OAY7GyP`c zpK$LUJ^wc*aX+zMa({D@jZNL^Hnzi+<6Gm88%|njCY87D9JusUEvlAk$-iW$743yz5w@Xa;9=zdw}q{@ut7ADX!bh03x zTMS$6gI+ehiYy<^lRT={I+Qyjbbdt`1$YXC4pA*&q_Q;Eym(r^{36X`sAvLj-6d0I z2f4vz&~fOu;zpOOSHMLqYvFFrJ_KLWiSM9BeR#Nx{;LE9_*=DrqRp+$oChoWNI3k_ zs9E%~L%;C-+IX~o_UwhosEy(o?Yx=jsv)h|2d-PYP*Ga^dw_ug!NwX0>n%sGa2~am{o&tHkdaKD!Nv=$~jqWLf%r|xrk{VREzxURCwcpt5* z7D^tO2_aB$$Ft; zCxjMBUqW3`X8WzyH{n%>E#zP<_& zc=L{KUDKE{c?iR%spjVoy8MpxAka_>h{aOU5eEWR-ewhOaJ>icy?y0(qb0;9dpuUu z{q*^XZ{yv>2fmbCtfBGD{QU=nSRN31@SA^2ng4cF|0ovpL9+bg>1x)F9~{Jg-4ql? zu~aSzv|ushE2)82;R+6m=iqkq4Aua4{Xw}gdP}N`VUq=Iz&p#Jk=*Ym7)Asb`|!c* zruX9R`q`{+5*^Z?H=^gW7n>k{#mLbx*Og0U7ti2+>GqP+KX7}p7|Px8$yti?k%~4^ zV*c0#dZ3#5ayJG!oc9Rqq_c7i@-0^wcFKs}V|7-?p9z5zI%7JSn88`AZ`1MwPYc7` zu402(nP8bkM=J&bTvL3OPg9fFi4HklCfOPWb8h-_qxUIXjr0&AtGu!ab594A zPRRjS&7aW5y_haqZeRCI$+b0|WRQ*L=6^f(?kuJ#M_0~J)fj7e)Is9fDZf#OI1Jq%rPuq$bTL~)HXjg{F5~fx+m7xc^OXVmLCT{~wJt%dho|%%AXGW8 zWO_HN8&UsK#$ z3B&Pb^U~Unn%L=a)KBn)A?hUYqfmtgX?UB>zKyMXJ-o`;TTkc8Cx`Lp{90z=SdE%DR4ThM8=gmy z2IiU-aS03MbI=Vw*%-}In%p=9beE*jZY7JM=I&Q+3ZTaH>sKg+NBr!JY69$RJhljW z*T~kPnbgP9@KD{;;Wdof*UO{sZQ_wZY+e z)y}F7A~IoVf_8}}826(jn5}Wk4&f^qRwc->@gvMbsVS@7r0zo;cEm^L3u1Gu=>aEH zC>&i6s?3C>O8HbZYM|A|yMiwAGku<^otOd8p#a0j@{C8YG|IX2sMPJe2#~>41COIu z>Ed6G(6L&6H;Iub$ulFfkwjorROqMjw*vA?{b1wdgr=U)e?2*0U;na|drW`*ev*o- z4td+Z-45_TlO@gY=tQl#JqmJMZKXcvv*yYzCn9=+-)NX8TNAp1p$U~gya&AITc-o& z?b3-0c~5RTgR`)udXVWIs>V#JOcji4BuKmiP>z7$XocG-c-}OQ4e1QTGi>sE3Q%jQ zQS({t6E?s@tlC!Zx^R1PBVZJWkgK%;Cquv6uPaCP29yYp)@Vn_Xjef~#K$dO@St)r5 zL$|0lR64N#sw>UuwJ#sQ()Ihb@F#;KPygc={Qyd z5O8sU=`!Y;A!c&^fumsB zT{$Ic9N);EE#VIwyP8HQkr(GYPnYDE30W?`HhpivBdfq&Ub4yzru?`Ij+`TUIn5tX z1G(wS(oi59-)PgIVW=>}s*q)WU5E)t1p?9i6%z5u6d4&CsS)ttvpJ9{Ho%(uN5Gyy zUab`VZW*RMv>q`PrXjn`Te#l)r`RX#$;u3pG6NqwgoRz9%iOt8yzWE3hV!X5nb&IH zh?>D;t>vZ6lTqaLnp9BnNO5rCGC6&*A5bQlWW(^x&A1Fbh-h%^rjyDvEMPE835e5P zziPG;3AaXAGqYoju5WU3CV-bdg7~L*$j^8{@Q64A9;xHCudYbVwm-M+&wGT$fBYF~ z>}4Ab+urSOlnM*0v1I$@j8mJ42K*5snLDmy*a}!Q4x#v4brk@R*;LlFlK9=A%IP>zl4psr9qx=-*=s!Q4!U zb=-v+Ts%#=Xttq6GzbzWEb{Zg14VhumhF`{ih2i7A&;X{2L z=Im1@V~;#P`n3>gqZQY@eH`RzzWej;sU9Ht4-550doU;?OLHF=jt4X;Ntd9w2i%HV zkb0>QQWNHdO^~m%i<$VrumIRO=okef?bk$K%7iuD3%!v(ESTlEIijk+g-1Hpgx(h8 zU3QLtYzG}QxdTdDOX=T+AixZC)W&=1M&ZgAXb3bpw7Bhh*=r(NM-4@67}I>FMffqK z&$zt*w{t4cK<}iNC(55f3E6BTzM7P{sDKX`aSN0~&WNU}Q`9P0Vq%x#ei6*8n?ojGGykgKVtN`NGi4jn%Y4=tD#Uw#wrJ27i*cx@iDtw zi=mhM`3G&h5lg=we&_I%Ga4wq(5t+z!FwxgiM2*2ibTbH{+Y8=I(A4Zxc0r8bz3oe z>PPrPfy=f-Ccl>Ax>3IOE?xakPbBAMvPo|r31LQ8$_g$B^W{wwuiQKC_a@BWJm>IB zlD`$i_S%IIM}dy+0Z&<;G&j9=Oz$Xq@@2iE#l6Fj|MU$nLrNfK&X4Hlh1rcdMH2T5 F{{uwqhIRk| literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/st/E_Fort_Lauderdale-medium.jpg b/install-new/fixtures/apple/img/st/E_Fort_Lauderdale-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ad01d54a345ff630e031ee26adce3a5e22bab615 GIT binary patch literal 2674 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 F{{uwqhIRk| literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/st/N_Miami_Biscayne-medium.jpg b/install-new/fixtures/apple/img/st/N_Miami_Biscayne-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ad01d54a345ff630e031ee26adce3a5e22bab615 GIT binary patch literal 2674 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 F{{uwqhIRk| literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/st/Pembroke_Pines-medium.jpg b/install-new/fixtures/apple/img/st/Pembroke_Pines-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ad01d54a345ff630e031ee26adce3a5e22bab615 GIT binary patch literal 2674 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 F{{uwqhIRk| literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/su/AppleStore-large.jpg b/install-new/fixtures/apple/img/su/AppleStore-large.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f4bbc33c2ea0ecd23c25b89fda656a03f309f0c8 GIT binary patch literal 8179 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 literal 0 HcmV?d00001 diff --git a/install-new/fixtures/apple/img/su/AppleStore-medium.jpg b/install-new/fixtures/apple/img/su/AppleStore-medium.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3f22b458258784e4c96e055c77d1e3cb6ee610a8 GIT binary patch literal 3040 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�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