From 695e87c676ac68f89084533f659bfc9a1bc43a35 Mon Sep 17 00:00:00 2001 From: cvs2svn Date: Fri, 6 Oct 2000 01:36:57 +0000 Subject: [PATCH 001/569] This commit was manufactured by cvs2svn to create branch 'unlabeled-1.2.2'. --- .cvsignore | 11 - LICENSE | 340 - MANIFEST | 802 - MANIFEST.SKIP | 60 - Makefile.PL | 859 - QuickStart | 753 - README | 200 - README.rpm | 111 - SPECS/interchange-4.5.6.spec | 208 - SPECS/interchange-4.5.7.spec | 208 - UPGRADE_FROM_MV3 | 146 - WHATSNEW | 184 - configure | 105 - dist/barry/backup/.empty | 0 dist/barry/catalog.cfg | 491 - dist/barry/config/additional_fields | 103 - dist/barry/config/additional_help | 83 - dist/barry/config/copyright | 17 - dist/barry/config/leftonly | 152 - dist/barry/config/leftside | 164 - dist/barry/config/logobar | 25 - dist/barry/config/menubar | 28 - dist/barry/config/menubottom | 0 dist/barry/config/no_left | 8 - dist/barry/config/no_right | 13 - dist/barry/config/postcopy_commands | 3 - dist/barry/config/precopy_commands | 13 - dist/barry/config/rightside | 40 - dist/barry/etc/area.recordnumber | 2 - dist/barry/etc/cat.recordnumber | 2 - dist/barry/etc/log_entry | 151 - dist/barry/etc/log_transaction | 115 - dist/barry/etc/mail_receipt | 114 - dist/barry/etc/profiles.login | 22 - dist/barry/etc/profiles.order | 121 - dist/barry/etc/receipt.html | 289 - dist/barry/etc/report | 95 - dist/barry/etc/ship_notice | 139 - dist/barry/html/index.html | 125 - dist/barry/images/about.gif | Bin 430 -> 0 bytes dist/barry/images/addtocart.gif | Bin 994 -> 0 bytes dist/barry/images/addtocart2.gif | Bin 1262 -> 0 bytes dist/barry/images/admin/b-configure2.gif | Bin 420 -> 0 bytes dist/barry/images/admin/b-help2.gif | Bin 256 -> 0 bytes dist/barry/images/admin/b-items2.gif | Bin 450 -> 0 bytes dist/barry/images/admin/b-orders2.gif | Bin 534 -> 0 bytes dist/barry/images/admin/b-pages2.gif | Bin 469 -> 0 bytes dist/barry/images/admin/b-regenerate2.gif | Bin 456 -> 0 bytes dist/barry/images/admin/b-statistics2.gif | Bin 389 -> 0 bytes dist/barry/images/admin/back.sm.gif | Bin 48617 -> 0 bytes dist/barry/images/admin/bg.gif | Bin 43 -> 0 bytes dist/barry/images/admin/bluedot.gif | Bin 846 -> 0 bytes dist/barry/images/admin/cleardot.gif | Bin 43 -> 0 bytes dist/barry/images/admin/coinlogo.jpg | Bin 18365 -> 0 bytes dist/barry/images/admin/curve_left.gif | Bin 85 -> 0 bytes dist/barry/images/admin/curve_right.gif | Bin 86 -> 0 bytes dist/barry/images/admin/delete.gif | Bin 126 -> 0 bytes dist/barry/images/admin/delsm.gif | Bin 79 -> 0 bytes dist/barry/images/admin/down.gif | Bin 163 -> 0 bytes dist/barry/images/admin/folder.gif | Bin 225 -> 0 bytes dist/barry/images/admin/folder.open.gif | Bin 242 -> 0 bytes dist/barry/images/admin/greendot.gif | Bin 846 -> 0 bytes dist/barry/images/admin/icon_config.gif | Bin 153 -> 0 bytes dist/barry/images/admin/icon_error.gif | Bin 105 -> 0 bytes dist/barry/images/admin/icon_help.gif | Bin 563 -> 0 bytes dist/barry/images/admin/icon_item.gif | Bin 178 -> 0 bytes dist/barry/images/admin/icon_orders.gif | Bin 262 -> 0 bytes dist/barry/images/admin/icon_pages.gif | Bin 152 -> 0 bytes dist/barry/images/admin/icon_people.gif | Bin 990 -> 0 bytes dist/barry/images/admin/icon_regen.gif | Bin 617 -> 0 bytes dist/barry/images/admin/icon_regen_anim.gif | Bin 742 -> 0 bytes dist/barry/images/admin/icon_stats.gif | Bin 313 -> 0 bytes dist/barry/images/admin/index.gif | Bin 268 -> 0 bytes dist/barry/images/admin/layout.gif | Bin 276 -> 0 bytes dist/barry/images/admin/left.gif | Bin 172 -> 0 bytes dist/barry/images/admin/plus.gif | Bin 125 -> 0 bytes dist/barry/images/admin/red_logo.gif | Bin 2676 -> 0 bytes dist/barry/images/admin/reddot.gif | Bin 846 -> 0 bytes dist/barry/images/admin/right.gif | Bin 172 -> 0 bytes dist/barry/images/admin/tallyman_logo.gif | Bin 6516 -> 0 bytes dist/barry/images/admin/up.gif | Bin 164 -> 0 bytes dist/barry/images/admin/widgets.gif | Bin 91 -> 0 bytes dist/barry/images/banner.gif | Bin 5199 -> 0 bytes dist/barry/images/bg.gif | Bin 45 -> 0 bytes dist/barry/images/bikeparts.gif | Bin 1917 -> 0 bytes dist/barry/images/bikes.gif | Bin 1719 -> 0 bytes dist/barry/images/bookpick.gif | Bin 776 -> 0 bytes dist/barry/images/books.gif | Bin 1615 -> 0 bytes dist/barry/images/clamps.gif | Bin 5522 -> 0 bytes dist/barry/images/clear.gif | Bin 45 -> 0 bytes dist/barry/images/cleardot.gif | Bin 45 -> 0 bytes dist/barry/images/contactus.gif | Bin 635 -> 0 bytes dist/barry/images/cranky.gif | Bin 5694 -> 0 bytes dist/barry/images/create.gif | Bin 545 -> 0 bytes dist/barry/images/customer.gif | Bin 838 -> 0 bytes dist/barry/images/download.png | Bin 2175 -> 0 bytes dist/barry/images/front_collage.gif | Bin 15972 -> 0 bytes dist/barry/images/go.gif | Bin 262 -> 0 bytes dist/barry/images/header_about.gif | Bin 2262 -> 0 bytes dist/barry/images/header_bikes.gif | Bin 1949 -> 0 bytes dist/barry/images/header_books.gif | Bin 1771 -> 0 bytes dist/barry/images/header_contactus.gif | Bin 2037 -> 0 bytes dist/barry/images/header_customerservice.gif | Bin 2346 -> 0 bytes dist/barry/images/header_feedback.gif | Bin 2037 -> 0 bytes dist/barry/images/header_help.gif | Bin 1238 -> 0 bytes dist/barry/images/header_login.gif | Bin 1351 -> 0 bytes dist/barry/images/header_multi/basket.gif | Bin 2288 -> 0 bytes dist/barry/images/header_new_account.gif | Bin 2210 -> 0 bytes dist/barry/images/header_newaccount.gif | Bin 2210 -> 0 bytes dist/barry/images/header_ord/basket.gif | Bin 2288 -> 0 bytes dist/barry/images/header_parts.gif | Bin 2116 -> 0 bytes dist/barry/images/header_sandals.gif | Bin 1784 -> 0 bytes dist/barry/images/header_search.gif | Bin 1488 -> 0 bytes dist/barry/images/header_shoes.gif | Bin 1647 -> 0 bytes dist/barry/images/help.gif | Bin 514 -> 0 bytes dist/barry/images/home.gif | Bin 578 -> 0 bytes dist/barry/images/items/KHS.soft99.jpg | Bin 5911 -> 0 bytes dist/barry/images/items/RST.381R.jpg | Bin 2953 -> 0 bytes dist/barry/images/items/aspen.gif | Bin 3680 -> 0 bytes dist/barry/images/items/avid.arch50.jpg | Bin 3927 -> 0 bytes dist/barry/images/items/barbntrini.gif | Bin 11712 -> 0 bytes dist/barry/images/items/charlesnfox.gif | Bin 19083 -> 0 bytes dist/barry/images/items/chrono.deepV.jpg | Bin 17314 -> 0 bytes dist/barry/images/items/george.gif | Bin 24242 -> 0 bytes dist/barry/images/items/housefelt.gif | Bin 19083 -> 0 bytes dist/barry/images/items/jurassic.gif | Bin 20761 -> 0 bytes dist/barry/images/items/kore.elite.stem.jpg | Bin 2832 -> 0 bytes dist/barry/images/items/man.99sxti.GIF | Bin 20035 -> 0 bytes dist/barry/images/items/manhattan.gif | Bin 15250 -> 0 bytes dist/barry/images/items/mystery.gif | Bin 20217 -> 0 bytes dist/barry/images/items/oklahoma.gif | Bin 22937 -> 0 bytes dist/barry/images/items/panaracer.mach.gif | Bin 16135 -> 0 bytes dist/barry/images/items/pedal.jpg | Bin 3946 -> 0 bytes dist/barry/images/items/racing.gif | Bin 22937 -> 0 bytes dist/barry/images/items/rf.lpcrank.jpg | Bin 3183 -> 0 bytes dist/barry/images/items/rf.system.jpg | Bin 2340 -> 0 bytes dist/barry/images/items/river.gif | Bin 21487 -> 0 bytes dist/barry/images/items/shimano.pedal.434.JPG | Bin 2491 -> 0 bytes dist/barry/images/items/shimano.pedal.jpg | Bin 2684 -> 0 bytes dist/barry/images/items/shimano.xtr.jpg | Bin 18788 -> 0 bytes dist/barry/images/items/shoebox.gif | Bin 21668 -> 0 bytes dist/barry/images/items/shoeleather.gif | Bin 18583 -> 0 bytes dist/barry/images/items/spinergy.spox.jpg | Bin 21151 -> 0 bytes dist/barry/images/items/terry.men.gif | Bin 16725 -> 0 bytes dist/barry/images/items/tire.conti.gif | Bin 10239 -> 0 bytes dist/barry/images/items/women.gif | Bin 22915 -> 0 bytes dist/barry/images/items/xtr.cassette.jpg | Bin 4458 -> 0 bytes dist/barry/images/items/xtrcrank.jpg | Bin 3312 -> 0 bytes dist/barry/images/items/zinn.gif | Bin 22757 -> 0 bytes dist/barry/images/leftside.gif | Bin 134 -> 0 bytes dist/barry/images/leftside_b.gif | Bin 133 -> 0 bytes dist/barry/images/login.gif | Bin 262 -> 0 bytes dist/barry/images/mvlogo.png | Bin 1435 -> 0 bytes dist/barry/images/mvlogo_dark.png | Bin 1197 -> 0 bytes dist/barry/images/new.png | Bin 213 -> 0 bytes dist/barry/images/next.gif | Bin 326 -> 0 bytes dist/barry/images/order.gif | Bin 309 -> 0 bytes dist/barry/images/poweredby.gif | Bin 2031 -> 0 bytes dist/barry/images/rightside.gif | Bin 133 -> 0 bytes dist/barry/images/rightside_b.gif | Bin 133 -> 0 bytes dist/barry/images/sandals.gif | Bin 1859 -> 0 bytes dist/barry/images/satisfied.gif | Bin 3292 -> 0 bytes dist/barry/images/search.gif | Bin 580 -> 0 bytes dist/barry/images/shoes.gif | Bin 1750 -> 0 bytes dist/barry/images/shoppingcart.gif | Bin 799 -> 0 bytes dist/barry/images/smallamex.png | Bin 1137 -> 0 bytes dist/barry/images/smalldisc.png | Bin 1309 -> 0 bytes dist/barry/images/smallmc.png | Bin 913 -> 0 bytes dist/barry/images/smallvisa.png | Bin 929 -> 0 bytes dist/barry/images/space.gif | Bin 49 -> 0 bytes dist/barry/images/specials.gif | Bin 2797 -> 0 bytes dist/barry/images/tan_line.gif | Bin 35 -> 0 bytes dist/barry/images/thumb/KHS.soft99.jpg | Bin 4940 -> 0 bytes dist/barry/images/thumb/RST.381R.jpg | Bin 1686 -> 0 bytes dist/barry/images/thumb/aspen.gif | Bin 2492 -> 0 bytes dist/barry/images/thumb/avid.arch50.jpg | Bin 2534 -> 0 bytes dist/barry/images/thumb/barbntrini.gif | Bin 7268 -> 0 bytes dist/barry/images/thumb/charlesnfox.gif | Bin 11689 -> 0 bytes dist/barry/images/thumb/chrono.deepV.jpg | Bin 10556 -> 0 bytes dist/barry/images/thumb/george.gif | Bin 10103 -> 0 bytes dist/barry/images/thumb/housefelt.gif | Bin 11689 -> 0 bytes dist/barry/images/thumb/jurassic.gif | Bin 8515 -> 0 bytes dist/barry/images/thumb/kore.elite.stem.jpg | Bin 2101 -> 0 bytes dist/barry/images/thumb/man.99sxti.GIF | Bin 8288 -> 0 bytes dist/barry/images/thumb/manhattan.gif | Bin 9309 -> 0 bytes dist/barry/images/thumb/mystery.gif | Bin 8401 -> 0 bytes dist/barry/images/thumb/oklahoma.gif | Bin 9536 -> 0 bytes dist/barry/images/thumb/panaracer.mach.gif | Bin 9876 -> 0 bytes dist/barry/images/thumb/pedal.jpg | Bin 2903 -> 0 bytes dist/barry/images/thumb/racing.gif | Bin 9421 -> 0 bytes dist/barry/images/thumb/rf.lpcrank.jpg | Bin 2296 -> 0 bytes dist/barry/images/thumb/rf.system.jpg | Bin 1666 -> 0 bytes dist/barry/images/thumb/river.gif | Bin 8855 -> 0 bytes dist/barry/images/thumb/shimano.pedal.434.JPG | Bin 1851 -> 0 bytes dist/barry/images/thumb/shimano.pedal.jpg | Bin 1916 -> 0 bytes dist/barry/images/thumb/shimano.xtr.jpg | Bin 11463 -> 0 bytes dist/barry/images/thumb/shoebox.gif | Bin 8969 -> 0 bytes dist/barry/images/thumb/shoeleather.gif | Bin 7722 -> 0 bytes dist/barry/images/thumb/spinergy.spox.jpg | Bin 8770 -> 0 bytes dist/barry/images/thumb/terry.men.gif | Bin 10215 -> 0 bytes dist/barry/images/thumb/tire.conti.gif | Bin 6361 -> 0 bytes dist/barry/images/thumb/women.gif | Bin 10669 -> 0 bytes dist/barry/images/thumb/xtr.cassette.jpg | Bin 3035 -> 0 bytes dist/barry/images/thumb/xtrcrank.jpg | Bin 2196 -> 0 bytes dist/barry/images/thumb/zinn.gif | Bin 9421 -> 0 bytes dist/barry/images/white_line.gif | Bin 35 -> 0 bytes dist/barry/logs/.empty | 0 dist/barry/mysql/affiliate.mysql | 9 - dist/barry/mysql/area.mysql | 11 - dist/barry/mysql/cat.mysql | 12 - dist/barry/mysql/country.mysql | 11 - dist/barry/mysql/inventory.mysql | 14 - dist/barry/mysql/merchandising.mysql | 12 - dist/barry/mysql/orderline.mysql | 27 - dist/barry/mysql/pricing.mysql | 19 - dist/barry/mysql/products.mysql | 26 - dist/barry/mysql/transactions.mysql | 54 - dist/barry/mysql/userdb.mysql | 56 - dist/barry/orders/.empty | 1 - dist/barry/pages/about.html | 35 - dist/barry/pages/account.html | 402 - dist/barry/pages/action/get_password.html | 88 - dist/barry/pages/browse.html | 119 - dist/barry/pages/browse1.html | 157 - dist/barry/pages/canceled.html | 55 - dist/barry/pages/contact.html | 42 - dist/barry/pages/deliver.html | 34 - dist/barry/pages/examples/test_banner.html | 12 - dist/barry/pages/flypage.html | 143 - dist/barry/pages/help.html | 54 - dist/barry/pages/index.html | 118 - dist/barry/pages/last_search.html | 14 - dist/barry/pages/login.html | 120 - dist/barry/pages/logout.html | 33 - dist/barry/pages/multi/b_address.html | 73 - dist/barry/pages/multi/basket.html | 269 - dist/barry/pages/multi/checkout.html | 216 - dist/barry/pages/multi/final.html | 232 - dist/barry/pages/multi/nobasket.html | 5 - dist/barry/pages/multi/shipping.html | 86 - dist/barry/pages/new_account.html | 279 - dist/barry/pages/news.html | 348 - dist/barry/pages/no_cookie.html | 28 - dist/barry/pages/nothing.html | 0 dist/barry/pages/ord/basket.html | 317 - dist/barry/pages/ord/checkout.html | 583 - dist/barry/pages/ord/nobasket.html | 5 - dist/barry/pages/privacy.html | 37 - dist/barry/pages/quantity.html | 93 - dist/barry/pages/query/check_orders.html | 196 - dist/barry/pages/query/order_detail.html | 185 - dist/barry/pages/results.html | 105 - dist/barry/pages/special/feedback.html | 76 - dist/barry/pages/special/needfield.html | 46 - dist/barry/pages/splash.html | 46 - dist/barry/pages/srchform.html | 273 - dist/barry/pages/subcat.html | 97 - dist/barry/pgsql/area.pgsql | 14 - dist/barry/pgsql/cat.pgsql | 13 - dist/barry/pgsql/country.pgsql | 12 - dist/barry/pgsql/inventory.pgsql | 12 - dist/barry/pgsql/merchandising.pgsql | 12 - dist/barry/pgsql/orderline.pgsql | 28 - dist/barry/pgsql/pricing.pgsql | 20 - dist/barry/pgsql/products.pgsql | 25 - dist/barry/pgsql/transactions.pgsql | 52 - dist/barry/pgsql/userdb.pgsql | 60 - dist/barry/products/2ndDayAir.csv | 152 - dist/barry/products/2ndDayAirAM.csv | 152 - dist/barry/products/3DaySelect.csv | 151 - dist/barry/products/3DaySelectRes.csv | 151 - dist/barry/products/450.csv | 153 - dist/barry/products/Ground.csv | 151 - dist/barry/products/GroundComm.csv | 151 - dist/barry/products/GroundRes.csv | 151 - dist/barry/products/NextDayAir.csv | 152 - dist/barry/products/NextDayAirSaver.csv | 152 - dist/barry/products/access.asc | 6 - dist/barry/products/affiliate.txt | 9 - dist/barry/products/area.txt | 12 - dist/barry/products/banner.txt | 8 - dist/barry/products/cat.txt | 5 - dist/barry/products/country.txt | 197 - dist/barry/products/inventory.txt | 1 - dist/barry/products/locale.txt | 26 - dist/barry/products/merchandising.txt | 6 - dist/barry/products/mv_metadata.asc | 120 - dist/barry/products/orderline.txt | 1 - dist/barry/products/pricing.txt | 1 - dist/barry/products/products.txt | 34 - dist/barry/products/route.txt | 1 - dist/barry/products/salestax.asc | 1 - dist/barry/products/shipping.asc | 45 - dist/barry/products/state.txt | 183 - dist/barry/products/transactions.txt | 1 - dist/barry/products/ups_zone.asc | 153 - dist/barry/products/userdb.txt | 2 - dist/barry/products/variable.txt | 59 - dist/barry/session/.empty | 1 - dist/barry/special_pages/badsearch.html | 16 - dist/barry/special_pages/canceled.html | 19 - dist/barry/special_pages/cc_not_valid.html | 22 - dist/barry/special_pages/confirmation.html | 16 - dist/barry/special_pages/failed.html | 22 - dist/barry/special_pages/interact.html | 62 - dist/barry/special_pages/missing.html | 17 - dist/barry/special_pages/needfield.html | 49 - dist/barry/special_pages/nomatch.html | 14 - dist/barry/special_pages/noproduct.html | 17 - dist/barry/special_pages/notfound.html | 16 - dist/barry/special_pages/order_security.html | 26 - dist/barry/special_pages/reconfig.html | 14 - dist/barry/special_pages/sec_faq.html | 138 - dist/barry/special_pages/security.html | 34 - dist/barry/special_pages/violation.html | 74 - dist/barry/templates/fullwidth | 12 - dist/barry/templates/leftonly | 12 - dist/barry/templates/standard | 14 - dist/barry/tmp/.empty | 1 - dist/barry/upload/.empty | 1 - dist/basic/etc/ship_notice | 139 - dist/build/makecat.redhat | 83 - dist/build/makedirs.redhat | 154 - dist/catalog_after.cfg | 50 - dist/catalog_before.cfg | 269 - dist/compat/backend/AsciiBackend | 36 - dist/compat/body | 53 - dist/compat/buttonbar | 45 - dist/compat/form_mail.cfg | 35 - dist/compat/help | 51 - dist/compat/random_rotate | 61 - dist/construct/backup/.empty | 0 dist/construct/catalog.cfg | 464 - dist/construct/config/additional_fields | 63 - dist/construct/config/additional_help | 78 - dist/construct/config/postcopy_commands | 5 - dist/construct/config/precopy_commands | 13 - .../construct/dbconf/default_db/2ndDayAir.dbm | 2 - dist/construct/dbconf/default_db/Ground.dbm | 2 - .../dbconf/default_db/NextDayAir.dbm | 2 - dist/construct/dbconf/default_db/access.dbm | 1 - .../construct/dbconf/default_db/affiliate.dbm | 1 - dist/construct/dbconf/default_db/area.dbm | 2 - dist/construct/dbconf/default_db/banner.dbm | 2 - dist/construct/dbconf/default_db/cat.dbm | 1 - dist/construct/dbconf/default_db/country.dbm | 1 - .../dbconf/default_db/gift_certs.dbm | 1 - .../construct/dbconf/default_db/inventory.dbm | 1 - dist/construct/dbconf/default_db/locale.dbm | 1 - .../dbconf/default_db/merchandising.dbm | 1 - .../dbconf/default_db/mv_metadata.dbm | 1 - .../dbconf/default_db/order_returns.dbm | 1 - .../construct/dbconf/default_db/orderline.dbm | 1 - dist/construct/dbconf/default_db/pricing.dbm | 3 - dist/construct/dbconf/default_db/products.dbm | 3 - .../dbconf/default_db/recurring_items.dbm | 1 - .../dbconf/default_db/recurring_orders.dbm | 1 - .../dbconf/default_db/ship_addresses.dbm | 1 - .../dbconf/default_db/transactions.dbm | 1 - dist/construct/dbconf/default_db/userdb.dbm | 1 - dist/construct/dbconf/default_db/variable.dbm | 1 - dist/construct/dbconf/mysql/2ndDayAir.dbm | 2 - dist/construct/dbconf/mysql/Ground.dbm | 2 - dist/construct/dbconf/mysql/NextDayAir.dbm | 2 - dist/construct/dbconf/mysql/access.dbm | 1 - dist/construct/dbconf/mysql/affiliate.mysql | 9 - dist/construct/dbconf/mysql/area.mysql | 11 - dist/construct/dbconf/mysql/banner.dbm | 2 - dist/construct/dbconf/mysql/cat.mysql | 12 - dist/construct/dbconf/mysql/country.mysql | 11 - dist/construct/dbconf/mysql/gift_certs.mysql | 17 - dist/construct/dbconf/mysql/inventory.mysql | 13 - dist/construct/dbconf/mysql/locale.dbm | 1 - dist/construct/dbconf/mysql/mv_metadata.dbm | 1 - .../dbconf/mysql/order_returns.mysql | 16 - dist/construct/dbconf/mysql/orderline.mysql | 27 - dist/construct/dbconf/mysql/pricing.mysql | 19 - dist/construct/dbconf/mysql/products.mysql | 26 - .../dbconf/mysql/recurring_items.mysql | 13 - .../dbconf/mysql/recurring_orders.mysql | 16 - .../dbconf/mysql/ship_addresses.mysql | 20 - .../construct/dbconf/mysql/transactions.mysql | 54 - dist/construct/dbconf/mysql/userdb.mysql | 58 - dist/construct/dbconf/mysql/variable.dbm | 1 - dist/construct/dbconf/pgsql/2ndDayAir.dbm | 2 - dist/construct/dbconf/pgsql/Ground.dbm | 2 - dist/construct/dbconf/pgsql/NextDayAir.dbm | 2 - dist/construct/dbconf/pgsql/access.dbm | 1 - dist/construct/dbconf/pgsql/affiliate.pgsql | 9 - dist/construct/dbconf/pgsql/area.pgsql | 14 - dist/construct/dbconf/pgsql/banner.dbm | 2 - dist/construct/dbconf/pgsql/cat.pgsql | 13 - dist/construct/dbconf/pgsql/country.pgsql | 12 - dist/construct/dbconf/pgsql/gift_certs.pgsql | 17 - dist/construct/dbconf/pgsql/inventory.pgsql | 12 - dist/construct/dbconf/pgsql/locale.dbm | 1 - dist/construct/dbconf/pgsql/mv_metadata.dbm | 1 - .../dbconf/pgsql/order_returns.pgsql | 17 - dist/construct/dbconf/pgsql/orderline.pgsql | 28 - dist/construct/dbconf/pgsql/pricing.pgsql | 20 - dist/construct/dbconf/pgsql/products.pgsql | 25 - .../dbconf/pgsql/recurring_items.pgsql | 13 - .../dbconf/pgsql/recurring_orders.pgsql | 16 - .../dbconf/pgsql/ship_addresses.pgsql | 14 - .../construct/dbconf/pgsql/transactions.pgsql | 52 - dist/construct/dbconf/pgsql/userdb.pgsql | 60 - dist/construct/dbconf/pgsql/variable.dbm | 1 - dist/construct/etc/log_entry | 151 - dist/construct/etc/log_transaction | 123 - dist/construct/etc/mail_receipt | 114 - dist/construct/etc/profiles.login | 22 - dist/construct/etc/profiles.order | 122 - dist/construct/etc/receipt.html | 124 - dist/construct/etc/ship_notice | 139 - dist/construct/html/index.html | 166 - dist/construct/images/admin/b-configure2.gif | Bin 420 -> 0 bytes dist/construct/images/admin/b-help2.gif | Bin 256 -> 0 bytes dist/construct/images/admin/b-items2.gif | Bin 450 -> 0 bytes dist/construct/images/admin/b-orders2.gif | Bin 534 -> 0 bytes dist/construct/images/admin/b-pages2.gif | Bin 469 -> 0 bytes dist/construct/images/admin/b-regenerate2.gif | Bin 456 -> 0 bytes dist/construct/images/admin/b-statistics2.gif | Bin 389 -> 0 bytes dist/construct/images/admin/back.sm.gif | Bin 48617 -> 0 bytes dist/construct/images/admin/bg.gif | Bin 43 -> 0 bytes dist/construct/images/admin/bluedot.gif | Bin 846 -> 0 bytes dist/construct/images/admin/cleardot.gif | Bin 43 -> 0 bytes dist/construct/images/admin/coinlogo.jpg | Bin 18365 -> 0 bytes dist/construct/images/admin/curve_left.gif | Bin 85 -> 0 bytes dist/construct/images/admin/curve_right.gif | Bin 86 -> 0 bytes dist/construct/images/admin/delete.gif | Bin 126 -> 0 bytes dist/construct/images/admin/delsm.gif | Bin 79 -> 0 bytes dist/construct/images/admin/down.gif | Bin 163 -> 0 bytes dist/construct/images/admin/folder.gif | Bin 225 -> 0 bytes dist/construct/images/admin/folder.open.gif | Bin 242 -> 0 bytes dist/construct/images/admin/greendot.gif | Bin 846 -> 0 bytes dist/construct/images/admin/icon_config.gif | Bin 153 -> 0 bytes dist/construct/images/admin/icon_error.gif | Bin 105 -> 0 bytes dist/construct/images/admin/icon_help.gif | Bin 563 -> 0 bytes dist/construct/images/admin/icon_item.gif | Bin 178 -> 0 bytes dist/construct/images/admin/icon_orders.gif | Bin 262 -> 0 bytes dist/construct/images/admin/icon_pages.gif | Bin 152 -> 0 bytes dist/construct/images/admin/icon_people.gif | Bin 990 -> 0 bytes dist/construct/images/admin/icon_regen.gif | Bin 617 -> 0 bytes .../images/admin/icon_regen_anim.gif | Bin 742 -> 0 bytes dist/construct/images/admin/icon_stats.gif | Bin 313 -> 0 bytes dist/construct/images/admin/index.gif | Bin 268 -> 0 bytes dist/construct/images/admin/layout.gif | Bin 276 -> 0 bytes dist/construct/images/admin/left.gif | Bin 172 -> 0 bytes dist/construct/images/admin/plus.gif | Bin 125 -> 0 bytes dist/construct/images/admin/red_logo.gif | Bin 2676 -> 0 bytes dist/construct/images/admin/reddot.gif | Bin 846 -> 0 bytes dist/construct/images/admin/right.gif | Bin 172 -> 0 bytes dist/construct/images/admin/tallyman_logo.gif | Bin 6516 -> 0 bytes dist/construct/images/admin/up.gif | Bin 164 -> 0 bytes dist/construct/images/admin/widgets.gif | Bin 91 -> 0 bytes dist/construct/images/affiliate/hardhat.gif | Bin 2377 -> 0 bytes dist/construct/images/bg.gif | Bin 45 -> 0 bytes dist/construct/images/clear.gif | Bin 45 -> 0 bytes dist/construct/images/gift_certificate.gif | Bin 2532 -> 0 bytes .../images/gift_certificate_large.gif | Bin 3549 -> 0 bytes .../images/items/gift_certificate.gif | Bin 2532 -> 0 bytes .../images/items/gift_certificate_large.gif | Bin 3549 -> 0 bytes dist/construct/images/items/os28004.gif | Bin 8916 -> 0 bytes dist/construct/images/items/os28005.gif | Bin 7103 -> 0 bytes dist/construct/images/items/os28006.gif | Bin 5339 -> 0 bytes dist/construct/images/items/os28007.gif | Bin 4337 -> 0 bytes dist/construct/images/items/os28008.gif | Bin 5229 -> 0 bytes dist/construct/images/items/os28009.gif | Bin 5752 -> 0 bytes dist/construct/images/items/os28011.gif | Bin 5036 -> 0 bytes dist/construct/images/items/os28044.gif | Bin 4181 -> 0 bytes dist/construct/images/items/os28057a.gif | Bin 5550 -> 0 bytes dist/construct/images/items/os28057b.gif | Bin 5406 -> 0 bytes dist/construct/images/items/os28057c.gif | Bin 4788 -> 0 bytes dist/construct/images/items/os28062.gif | Bin 4294 -> 0 bytes dist/construct/images/items/os28064.gif | Bin 6189 -> 0 bytes dist/construct/images/items/os28065.gif | Bin 3014 -> 0 bytes dist/construct/images/items/os28066.gif | Bin 3485 -> 0 bytes dist/construct/images/items/os28068.gif | Bin 5845 -> 0 bytes dist/construct/images/items/os28068a.gif | Bin 7605 -> 0 bytes dist/construct/images/items/os28068b.gif | Bin 5761 -> 0 bytes dist/construct/images/items/os28069.gif | Bin 9353 -> 0 bytes dist/construct/images/items/os28070.gif | Bin 14209 -> 0 bytes dist/construct/images/items/os28072.gif | Bin 5243 -> 0 bytes dist/construct/images/items/os28073.gif | Bin 3271 -> 0 bytes dist/construct/images/items/os28074.gif | Bin 4160 -> 0 bytes dist/construct/images/items/os28075.gif | Bin 3630 -> 0 bytes dist/construct/images/items/os28076.gif | Bin 4059 -> 0 bytes dist/construct/images/items/os28077.gif | Bin 14856 -> 0 bytes dist/construct/images/items/os28080.gif | Bin 5613 -> 0 bytes dist/construct/images/items/os28081.gif | Bin 7780 -> 0 bytes dist/construct/images/items/os28082.gif | Bin 2925 -> 0 bytes dist/construct/images/items/os28084.gif | Bin 3536 -> 0 bytes dist/construct/images/items/os28085.gif | Bin 5093 -> 0 bytes dist/construct/images/items/os28086.gif | Bin 5428 -> 0 bytes dist/construct/images/items/os28087.gif | Bin 8286 -> 0 bytes dist/construct/images/items/os28108.gif | Bin 5419 -> 0 bytes dist/construct/images/items/os28109.gif | Bin 3095 -> 0 bytes dist/construct/images/items/os28110.gif | Bin 4280 -> 0 bytes dist/construct/images/items/os28111.gif | Bin 3463 -> 0 bytes dist/construct/images/items/os28112.gif | Bin 3979 -> 0 bytes dist/construct/images/items/os28113.gif | Bin 2720 -> 0 bytes dist/construct/images/items/os29000.gif | Bin 3737 -> 0 bytes dist/construct/images/navigation/a1.gif | Bin 3776 -> 0 bytes dist/construct/images/navigation/a2.gif | Bin 9286 -> 0 bytes dist/construct/images/navigation/a3.gif | Bin 11362 -> 0 bytes dist/construct/images/navigation/b1.gif | Bin 296 -> 0 bytes dist/construct/images/navigation/b1_b.gif | Bin 296 -> 0 bytes dist/construct/images/navigation/b2.gif | Bin 1301 -> 0 bytes dist/construct/images/navigation/b2_b.gif | Bin 1425 -> 0 bytes dist/construct/images/navigation/b3.gif | Bin 333 -> 0 bytes dist/construct/images/navigation/b3_b.gif | Bin 334 -> 0 bytes dist/construct/images/navigation/b4.gif | Bin 392 -> 0 bytes dist/construct/images/navigation/b4_b.gif | Bin 392 -> 0 bytes dist/construct/images/navigation/b5.gif | Bin 542 -> 0 bytes dist/construct/images/navigation/b5_b.gif | Bin 542 -> 0 bytes dist/construct/images/navigation/b6.gif | Bin 374 -> 0 bytes dist/construct/images/navigation/b6_b.gif | Bin 374 -> 0 bytes dist/construct/images/navigation/b7.gif | Bin 2296 -> 0 bytes dist/construct/images/navigation/buy_now.gif | Bin 1879 -> 0 bytes dist/construct/images/navigation/c.gif | Bin 2187 -> 0 bytes .../images/navigation/checkout_button.gif | Bin 2328 -> 0 bytes .../images/navigation/continue_shopping.gif | Bin 2255 -> 0 bytes .../images/navigation/coupon_item.gif | Bin 1794 -> 0 bytes dist/construct/images/navigation/d.gif | Bin 97 -> 0 bytes dist/construct/images/navigation/d1.gif | Bin 481 -> 0 bytes dist/construct/images/navigation/d2.gif | Bin 118 -> 0 bytes dist/construct/images/navigation/d3.gif | Bin 103 -> 0 bytes .../construct/images/navigation/default_a.gif | Bin 51141 -> 0 bytes .../construct/images/navigation/default_b.gif | Bin 54689 -> 0 bytes dist/construct/images/navigation/go.gif | Bin 184 -> 0 bytes dist/construct/images/navigation/go_b.gif | Bin 184 -> 0 bytes .../images/navigation/header_handtools.gif | Bin 331 -> 0 bytes .../images/navigation/header_ladders.gif | Bin 281 -> 0 bytes .../navigation/header_measuringtools.gif | Bin 414 -> 0 bytes .../navigation/header_paintingsupplies.gif | Bin 449 -> 0 bytes .../navigation/header_safetyequipment.gif | Bin 448 -> 0 bytes .../images/navigation/header_toolstorage.gif | Bin 361 -> 0 bytes dist/construct/images/navigation/logout.gif | Bin 362 -> 0 bytes dist/construct/images/navigation/logout_b.gif | Bin 364 -> 0 bytes dist/construct/images/navigation/minime1.gif | Bin 91 -> 0 bytes dist/construct/images/navigation/minime2.gif | Bin 91 -> 0 bytes .../images/navigation/orangespacer.gif | Bin 807 -> 0 bytes .../construct/images/navigation/poweredby.gif | Bin 949 -> 0 bytes .../images/navigation/recalculate_button.gif | Bin 1553 -> 0 bytes dist/construct/images/navigation/whitey.gif | Bin 77 -> 0 bytes dist/construct/images/poweredby.gif | Bin 2031 -> 0 bytes dist/construct/images/thumb/os28004_b.gif | Bin 3574 -> 0 bytes dist/construct/images/thumb/os28005_b.gif | Bin 3972 -> 0 bytes dist/construct/images/thumb/os28006_b.gif | Bin 3073 -> 0 bytes dist/construct/images/thumb/os28007_b.gif | Bin 2606 -> 0 bytes dist/construct/images/thumb/os28008_b.gif | Bin 2256 -> 0 bytes dist/construct/images/thumb/os28009_b.gif | Bin 3636 -> 0 bytes dist/construct/images/thumb/os28011_b.gif | Bin 2336 -> 0 bytes dist/construct/images/thumb/os28044_b.gif | Bin 2469 -> 0 bytes dist/construct/images/thumb/os28057a_b.gif | Bin 2980 -> 0 bytes dist/construct/images/thumb/os28057b_b.gif | Bin 2940 -> 0 bytes dist/construct/images/thumb/os28057c_b.gif | Bin 2569 -> 0 bytes dist/construct/images/thumb/os28062_b.gif | Bin 2406 -> 0 bytes dist/construct/images/thumb/os28064_b.gif | Bin 3219 -> 0 bytes dist/construct/images/thumb/os28065_b.gif | Bin 2015 -> 0 bytes dist/construct/images/thumb/os28066_b.gif | Bin 1954 -> 0 bytes dist/construct/images/thumb/os28068_b.gif | Bin 3114 -> 0 bytes dist/construct/images/thumb/os28068a_b.gif | Bin 3943 -> 0 bytes dist/construct/images/thumb/os28068b_b.gif | Bin 3081 -> 0 bytes dist/construct/images/thumb/os28069_b.gif | Bin 4933 -> 0 bytes dist/construct/images/thumb/os28070_b.gif | Bin 5247 -> 0 bytes dist/construct/images/thumb/os28072_b.gif | Bin 2915 -> 0 bytes dist/construct/images/thumb/os28073_b.gif | Bin 2112 -> 0 bytes dist/construct/images/thumb/os28074_b.gif | Bin 2363 -> 0 bytes dist/construct/images/thumb/os28075_b.gif | Bin 2091 -> 0 bytes dist/construct/images/thumb/os28076_b.gif | Bin 2116 -> 0 bytes dist/construct/images/thumb/os28077_b.gif | Bin 5535 -> 0 bytes dist/construct/images/thumb/os28080_b.gif | Bin 3198 -> 0 bytes dist/construct/images/thumb/os28081_b.gif | Bin 4003 -> 0 bytes dist/construct/images/thumb/os28082_b.gif | Bin 1369 -> 0 bytes dist/construct/images/thumb/os28084_b.gif | Bin 1676 -> 0 bytes dist/construct/images/thumb/os28085_b.gif | Bin 2262 -> 0 bytes dist/construct/images/thumb/os28086_b.gif | Bin 2833 -> 0 bytes dist/construct/images/thumb/os28087_b.gif | Bin 4424 -> 0 bytes dist/construct/images/thumb/os28108_b.gif | Bin 2829 -> 0 bytes dist/construct/images/thumb/os28109_b.gif | Bin 1636 -> 0 bytes dist/construct/images/thumb/os28110_b.gif | Bin 2441 -> 0 bytes dist/construct/images/thumb/os28111_b.gif | Bin 2056 -> 0 bytes dist/construct/images/thumb/os28112_b.gif | Bin 1845 -> 0 bytes dist/construct/images/thumb/os28113_b.gif | Bin 1759 -> 0 bytes dist/construct/images/thumb/os29000_b.gif | Bin 2789 -> 0 bytes dist/construct/logs/.empty | 0 dist/construct/orders/.empty | 1 - dist/construct/pages/aboutus.html | 68 - dist/construct/pages/account.html | 427 - .../admin/report_def/Order%20Status.html | 28 - .../report_def/Products%20to%20edit.html | 51 - .../admin/reports/Products%20to%20edit.html | 55 - dist/construct/pages/browse.html | 147 - dist/construct/pages/flypage.html | 159 - dist/construct/pages/help.html | 57 - dist/construct/pages/index.html | 87 - dist/construct/pages/new_account.html | 124 - dist/construct/pages/ord/basket.html | 299 - dist/construct/pages/ord/checkout.html | 866 - dist/construct/pages/quantity.html | 176 - dist/construct/pages/recurring_add.html | 211 - dist/construct/pages/recurring_orders.html | 289 - .../pages/recurring_orders_added.html | 109 - dist/construct/pages/results.html | 168 - dist/construct/pages/ship_addresses.html | 275 - .../construct/pages/ship_addresses_added.html | 105 - dist/construct/pages/splash.html | 82 - dist/construct/pages/stock-alert.html | 197 - dist/construct/products/2ndDayAir.csv | 152 - dist/construct/products/2ndDayAirAM.csv | 152 - dist/construct/products/3DaySelect.csv | 151 - dist/construct/products/3DaySelectRes.csv | 151 - dist/construct/products/450.csv | 153 - dist/construct/products/Ground.csv | 151 - dist/construct/products/GroundComm.csv | 151 - dist/construct/products/GroundRes.csv | 151 - dist/construct/products/NextDayAir.csv | 152 - dist/construct/products/NextDayAirSaver.csv | 152 - dist/construct/products/access.asc | 6 - dist/construct/products/banner.txt | 8 - dist/construct/products/cat.txt | 26 - dist/construct/products/country.txt | 197 - dist/construct/products/gift_certs.txt | 1 - dist/construct/products/inventory.txt | 40 - dist/construct/products/locale.txt | 26 - dist/construct/products/merchandising.txt | 23 - dist/construct/products/mv_metadata.asc | 124 - dist/construct/products/order_returns.txt | 1 - dist/construct/products/orderline.txt | 1 - dist/construct/products/pricing.txt | 40 - dist/construct/products/recurring_items.txt | 1 - dist/construct/products/recurring_orders.txt | 1 - dist/construct/products/route.txt | 1 - dist/construct/products/salestax.asc | 1 - dist/construct/products/ship_addresses.txt | 4 - dist/construct/products/shipping.asc | 45 - dist/construct/products/state.txt | 183 - dist/construct/products/transactions.txt | 11 - dist/construct/products/ups_zone.asc | 153 - dist/construct/products/userdb.txt | 13 - dist/construct/products/variable.txt | 58 - dist/construct/session/.empty | 1 - dist/construct/special_pages/badsearch.html | 12 - dist/construct/special_pages/canceled.html | 15 - .../construct/special_pages/cc_not_valid.html | 18 - .../construct/special_pages/confirmation.html | 12 - dist/construct/special_pages/failed.html | 18 - dist/construct/special_pages/interact.html | 58 - dist/construct/special_pages/missing.html | 13 - dist/construct/special_pages/needfield.html | 45 - dist/construct/special_pages/nomatch.html | 10 - dist/construct/special_pages/noproduct.html | 13 - dist/construct/special_pages/notfound.html | 12 - .../special_pages/order_security.html | 22 - dist/construct/special_pages/reconfig.html | 10 - dist/construct/special_pages/sec_faq.html | 138 - dist/construct/special_pages/security.html | 30 - dist/construct/special_pages/violation.html | 70 - dist/construct/templates/components/random | 54 - dist/construct/templates/components/specials | 86 - .../templates/components/upsell_horiz_2 | 56 - .../templates/components/upsell_horiz_3 | 56 - dist/construct/templates/leftonly | 40 - .../templates/regions/LEFTONLY_BOTTOM | 20 - .../templates/regions/LEFTRIGHT_BOTTOM | 113 - .../construct/templates/regions/LEFTRIGHT_TOP | 212 - .../construct/templates/regions/NOLEFT_BOTTOM | 18 - dist/construct/templates/regions/NOLEFT_TOP | 106 - dist/construct/tmp/.empty | 1 - dist/construct/upload/.empty | 1 - dist/error.log | 1 - dist/etc/.empty | 1 - dist/interchange.cfg.dist | 60 - dist/lib/UI/Primitive.pm | 890 - dist/lib/UI/pages/admin/access.html | 139 - .../UI/pages/admin/access_permissions.html | 377 - dist/lib/UI/pages/admin/advanced.html | 116 - dist/lib/UI/pages/admin/affiliates.html | 208 - dist/lib/UI/pages/admin/build_related.html | 84 - dist/lib/UI/pages/admin/button_builder.html | 277 - dist/lib/UI/pages/admin/change_t.pl | 12 - dist/lib/UI/pages/admin/compedit.html | 238 - dist/lib/UI/pages/admin/config.html | 106 - dist/lib/UI/pages/admin/customer.html | 301 - dist/lib/UI/pages/admin/customer_bill.html | 38 - .../UI/pages/admin/customer_change_pass.html | 113 - dist/lib/UI/pages/admin/customer_pref.html | 38 - dist/lib/UI/pages/admin/customer_select.html | 270 - dist/lib/UI/pages/admin/customer_ship.html | 37 - dist/lib/UI/pages/admin/customer_view.html | 255 - dist/lib/UI/pages/admin/dbdownload.html | 114 - dist/lib/UI/pages/admin/dbinfo.html | 189 - dist/lib/UI/pages/admin/do_upload.html | 35 - dist/lib/UI/pages/admin/do_upload_page.html | 44 - dist/lib/UI/pages/admin/do_view.html | 49 - dist/lib/UI/pages/admin/entry.html | 614 - dist/lib/UI/pages/admin/entry_select.html | 105 - dist/lib/UI/pages/admin/env_vars.html | 20 - dist/lib/UI/pages/admin/error.html | 45 - dist/lib/UI/pages/admin/error_item.html | 39 - dist/lib/UI/pages/admin/export_table.html | 304 - dist/lib/UI/pages/admin/flex_editor.html | 38 - dist/lib/UI/pages/admin/flex_select.html | 381 - dist/lib/UI/pages/admin/flex_select_box.html | 257 - dist/lib/UI/pages/admin/format_meta.html | 408 - dist/lib/UI/pages/admin/fr_index.html | 12 - dist/lib/UI/pages/admin/genconfig.html | 180 - dist/lib/UI/pages/admin/genreport.html | 53 - dist/lib/UI/pages/admin/genstats.html | 45 - dist/lib/UI/pages/admin/gentable.html | 118 - dist/lib/UI/pages/admin/genupload.html | 52 - dist/lib/UI/pages/admin/genxport.html | 65 - dist/lib/UI/pages/admin/group.html | 114 - dist/lib/UI/pages/admin/group_edit.html | 101 - dist/lib/UI/pages/admin/import_table.html | 85 - dist/lib/UI/pages/admin/index.html | 277 - dist/lib/UI/pages/admin/item.html | 241 - dist/lib/UI/pages/admin/item_edit.html | 58 - dist/lib/UI/pages/admin/layout.html | 1082 -- dist/lib/UI/pages/admin/login.html | 130 - dist/lib/UI/pages/admin/logout.html | 74 - dist/lib/UI/pages/admin/merchandising.html | 131 - dist/lib/UI/pages/admin/order.html | 344 - dist/lib/UI/pages/admin/order_status.html | 300 - dist/lib/UI/pages/admin/order_view.html | 388 - dist/lib/UI/pages/admin/orderstats.html | 72 - dist/lib/UI/pages/admin/page.html | 43 - dist/lib/UI/pages/admin/page_edit.html | 336 - dist/lib/UI/pages/admin/page_new.html | 116 - dist/lib/UI/pages/admin/page_preview.html | 44 - dist/lib/UI/pages/admin/page_save.html | 64 - dist/lib/UI/pages/admin/payment.html | 153 - dist/lib/UI/pages/admin/preferences.html | 79 - dist/lib/UI/pages/admin/quicklinks.html | 291 - dist/lib/UI/pages/admin/reconfig.html | 39 - dist/lib/UI/pages/admin/regen.html | 10 - dist/lib/UI/pages/admin/regenerate.html | 94 - dist/lib/UI/pages/admin/report.html | 522 - dist/lib/UI/pages/admin/report_results.html | 446 - dist/lib/UI/pages/admin/report_save.html | 6 - .../admin/reports/order/ByAffiliate.html | 194 - .../UI/pages/admin/reports/order/Detail.html | 167 - .../UI/pages/admin/reports/order/Monthly.html | 205 - .../admin/reports/traffic/ByAffiliate.html | 270 - dist/lib/UI/pages/admin/search_wizard.html | 405 - dist/lib/UI/pages/admin/search_wizard2.html | 388 - dist/lib/UI/pages/admin/search_wizard3.html | 228 - .../UI/pages/admin/search_wizard_results.html | 204 - dist/lib/UI/pages/admin/ship.html | 141 - dist/lib/UI/pages/admin/ship_data.html | 336 - dist/lib/UI/pages/admin/ship_edit.html | 422 - dist/lib/UI/pages/admin/ship_range.html | 88 - .../UI/pages/admin/special/key_violation.html | 48 - dist/lib/UI/pages/admin/spread.html | 282 - dist/lib/UI/pages/admin/spread_control.html | 123 - dist/lib/UI/pages/admin/tablereport.html | 167 - dist/lib/UI/pages/admin/tax.html | 134 - dist/lib/UI/pages/admin/trafficstats.html | 103 - dist/lib/UI/pages/admin/upload_config.html | 19 - dist/lib/UI/pages/admin/upload_file.html | 141 - dist/lib/UI/pages/admin/upload_image.html | 23 - dist/lib/UI/pages/admin/upload_other.html | 20 - dist/lib/UI/pages/admin/upload_pages.html | 20 - dist/lib/UI/pages/admin/user_change_pass.html | 183 - dist/lib/UI/pages/admin/user_edit.html | 143 - dist/lib/UI/profiles/login | 19 - dist/lib/UI/profiles/order_button_build | 114 - dist/lib/UI/ui.cfg | 96 - dist/lib/UI/usertag/available_ups_internal | 13 - dist/lib/UI/usertag/available_www_shipping | 47 - dist/lib/UI/usertag/backup_database | 134 - dist/lib/UI/usertag/backup_file | 36 - dist/lib/UI/usertag/base_url | 1 - dist/lib/UI/usertag/button | 182 - dist/lib/UI/usertag/check_upload | 19 - dist/lib/UI/usertag/db_columns | 53 - dist/lib/UI/usertag/db_hash | 45 - dist/lib/UI/usertag/dbinfo | 93 - dist/lib/UI/usertag/directive_value | 15 - dist/lib/UI/usertag/display | 91 - dist/lib/UI/usertag/dump_session | 36 - dist/lib/UI/usertag/e | 8 - dist/lib/UI/usertag/export_database | 37 - dist/lib/UI/usertag/field_label | 37 - dist/lib/UI/usertag/file_info | 55 - dist/lib/UI/usertag/file_navigator | 182 - dist/lib/UI/usertag/global_value | 9 - dist/lib/UI/usertag/grep_mm | 16 - dist/lib/UI/usertag/if_key_exists | 19 - dist/lib/UI/usertag/if_mm | 171 - dist/lib/UI/usertag/if_sql | 13 - dist/lib/UI/usertag/ifdef | 8 - dist/lib/UI/usertag/ifndef | 8 - dist/lib/UI/usertag/import_fields | 95 - dist/lib/UI/usertag/list_databases | 35 - dist/lib/UI/usertag/list_glob | 9 - dist/lib/UI/usertag/list_keys | 68 - dist/lib/UI/usertag/list_pages | 15 - dist/lib/UI/usertag/mm_value | 46 - dist/lib/UI/usertag/newer | 30 - dist/lib/UI/usertag/quick_table | 25 - dist/lib/UI/usertag/read_serial | 15 - dist/lib/UI/usertag/read_shipping | 20 - dist/lib/UI/usertag/read_ui_template | 113 - dist/lib/UI/usertag/regenerate | 322 - dist/lib/UI/usertag/return_to | 44 - dist/lib/UI/usertag/rotate_database | 16 - dist/lib/UI/usertag/rotate_file | 9 - dist/lib/UI/usertag/rotate_table | 58 - dist/lib/UI/usertag/row_edit | 125 - dist/lib/UI/usertag/send_help | 19 - dist/lib/UI/usertag/set_alias | 13 - dist/lib/UI/usertag/set_click | 18 - dist/lib/UI/usertag/setvar | 9 - dist/lib/UI/usertag/substitute | 11 - dist/lib/UI/usertag/title_bar | 19 - dist/lib/UI/usertag/unconfigure | 10 - dist/lib/UI/usertag/uneval | 9 - dist/lib/UI/usertag/unlink_file | 15 - dist/lib/UI/usertag/version | 118 - dist/lib/UI/usertag/widget | 47 - dist/lib/UI/usertag/with | 3 - dist/lib/UI/usertag/write_relative_file | 30 - dist/lib/UI/usertag/write_shipping | 32 - dist/lib/UI/vars/UI_EDIT_LINK | 1 - dist/lib/UI/vars/UI_STD_DBEDIT_HEAD | 69 - dist/lib/UI/vars/UI_STD_DBEDIT_TABLE | 320 - dist/lib/UI/vars/UI_STD_FILE_NAV | 52 - dist/lib/UI/vars/UI_STD_FOOTER | 43 - dist/lib/UI/vars/UI_STD_HEAD | 227 - dist/locale.error | 221 - dist/simple/.cvsignore | 1 - dist/simple/backup/.empty | 0 dist/simple/catalog.cfg | 525 - dist/simple/config/.empty | 1 - dist/simple/config/additional_fields | 116 - dist/simple/config/additional_help | 118 - dist/simple/config/blue1/copyright | 0 dist/simple/config/blue1/leftside | 71 - dist/simple/config/blue1/logobar | 168 - dist/simple/config/blue1/menubar | 0 dist/simple/config/blue1/menubottom | 26 - dist/simple/config/blue1/no_right | 3 - dist/simple/config/blue1/only_logo | 48 - dist/simple/config/blue1/rightside | 3 - dist/simple/config/brown1/copyright | 0 dist/simple/config/brown1/leftside | 71 - dist/simple/config/brown1/logobar | 168 - dist/simple/config/brown1/menubar | 0 dist/simple/config/brown1/menubottom | 26 - dist/simple/config/brown1/no_right | 3 - dist/simple/config/brown1/only_logo | 48 - dist/simple/config/brown1/rightside | 3 - dist/simple/config/postcopy_commands | 3 - dist/simple/config/precopy_commands | 13 - dist/simple/config/yellow1/copyright | 0 dist/simple/config/yellow1/leftside | 71 - dist/simple/config/yellow1/logobar | 168 - dist/simple/config/yellow1/menubar | 0 dist/simple/config/yellow1/menubottom | 26 - dist/simple/config/yellow1/no_right | 3 - dist/simple/config/yellow1/only_logo | 48 - dist/simple/config/yellow1/rightside | 3 - dist/simple/etc/area.recordnumber | 2 - dist/simple/etc/cat.recordnumber | 2 - dist/simple/etc/log_transaction | 115 - dist/simple/etc/mail_receipt | 114 - dist/simple/etc/profiles.login | 22 - dist/simple/etc/profiles.order | 121 - dist/simple/etc/receipt.html | 99 - dist/simple/etc/report | 95 - dist/simple/etc/ship_notice | 139 - dist/simple/html/.empty | 1 - dist/simple/html/index.html | 214 - dist/simple/images/admin/b-configure2.gif | Bin 420 -> 0 bytes dist/simple/images/admin/b-help2.gif | Bin 256 -> 0 bytes dist/simple/images/admin/b-items2.gif | Bin 450 -> 0 bytes dist/simple/images/admin/b-orders2.gif | Bin 534 -> 0 bytes dist/simple/images/admin/b-pages2.gif | Bin 469 -> 0 bytes dist/simple/images/admin/b-regenerate2.gif | Bin 456 -> 0 bytes dist/simple/images/admin/b-statistics2.gif | Bin 389 -> 0 bytes dist/simple/images/admin/back.sm.gif | Bin 48617 -> 0 bytes dist/simple/images/admin/bg.gif | Bin 43 -> 0 bytes dist/simple/images/admin/bluedot.gif | Bin 846 -> 0 bytes dist/simple/images/admin/cleardot.gif | Bin 43 -> 0 bytes dist/simple/images/admin/coinlogo.jpg | Bin 18365 -> 0 bytes dist/simple/images/admin/curve_left.gif | Bin 85 -> 0 bytes dist/simple/images/admin/curve_right.gif | Bin 86 -> 0 bytes dist/simple/images/admin/delete.gif | Bin 126 -> 0 bytes dist/simple/images/admin/delsm.gif | Bin 79 -> 0 bytes dist/simple/images/admin/down.gif | Bin 163 -> 0 bytes dist/simple/images/admin/folder.gif | Bin 225 -> 0 bytes dist/simple/images/admin/folder.open.gif | Bin 242 -> 0 bytes dist/simple/images/admin/greendot.gif | Bin 846 -> 0 bytes dist/simple/images/admin/icon_config.gif | Bin 153 -> 0 bytes dist/simple/images/admin/icon_error.gif | Bin 105 -> 0 bytes dist/simple/images/admin/icon_help.gif | Bin 563 -> 0 bytes dist/simple/images/admin/icon_item.gif | Bin 178 -> 0 bytes dist/simple/images/admin/icon_orders.gif | Bin 262 -> 0 bytes dist/simple/images/admin/icon_pages.gif | Bin 152 -> 0 bytes dist/simple/images/admin/icon_people.gif | Bin 990 -> 0 bytes dist/simple/images/admin/icon_regen.gif | Bin 617 -> 0 bytes dist/simple/images/admin/icon_regen_anim.gif | Bin 742 -> 0 bytes dist/simple/images/admin/icon_stats.gif | Bin 313 -> 0 bytes dist/simple/images/admin/index.gif | Bin 268 -> 0 bytes dist/simple/images/admin/layout.gif | Bin 276 -> 0 bytes dist/simple/images/admin/left.gif | Bin 172 -> 0 bytes dist/simple/images/admin/plus.gif | Bin 125 -> 0 bytes dist/simple/images/admin/red_logo.gif | Bin 2676 -> 0 bytes dist/simple/images/admin/reddot.gif | Bin 846 -> 0 bytes dist/simple/images/admin/right.gif | Bin 172 -> 0 bytes dist/simple/images/admin/tallyman_logo.gif | Bin 6516 -> 0 bytes dist/simple/images/admin/up.gif | Bin 164 -> 0 bytes dist/simple/images/admin/widgets.gif | Bin 91 -> 0 bytes dist/simple/images/bg.gif | Bin 43 -> 0 bytes dist/simple/images/blue1/cart.png | Bin 288 -> 0 bytes dist/simple/images/blue1/go.png | Bin 443 -> 0 bytes dist/simple/images/blue1/logo.png | Bin 17467 -> 0 bytes dist/simple/images/blue1/menu.png | Bin 4825 -> 0 bytes dist/simple/images/blue1/submit.png | Bin 222 -> 0 bytes dist/simple/images/brown1/cart.png | Bin 288 -> 0 bytes dist/simple/images/brown1/go.png | Bin 443 -> 0 bytes dist/simple/images/brown1/logo.png | Bin 17467 -> 0 bytes dist/simple/images/brown1/menu.png | Bin 3769 -> 0 bytes dist/simple/images/brown1/submit.png | Bin 222 -> 0 bytes dist/simple/images/clear.gif | Bin 43 -> 0 bytes dist/simple/images/download.png | Bin 2175 -> 0 bytes dist/simple/images/items/00-0011.jpg | Bin 2574 -> 0 bytes dist/simple/images/items/00-0011a.png | Bin 8525 -> 0 bytes dist/simple/images/items/00-341.jpg | Bin 2621 -> 0 bytes dist/simple/images/items/00-342.jpg | Bin 2929 -> 0 bytes dist/simple/images/items/00-343.jpg | Bin 2546 -> 0 bytes dist/simple/images/items/19-203.jpg | Bin 6333 -> 0 bytes dist/simple/images/items/19-204.jpg | Bin 6233 -> 0 bytes dist/simple/images/items/21-221.jpg | Bin 4184 -> 0 bytes dist/simple/images/items/34-101.png | Bin 2743 -> 0 bytes dist/simple/images/items/chair_car.jpg | Bin 3495 -> 0 bytes dist/simple/images/items/golconde.jpg | Bin 4154 -> 0 bytes .../images/items/illumined_pleasures.jpg | Bin 3228 -> 0 bytes dist/simple/images/items/irises.jpg | Bin 5058 -> 0 bytes dist/simple/images/items/lastsupp.jpg | Bin 3626 -> 0 bytes dist/simple/images/items/loose_hair.jpg | Bin 5015 -> 0 bytes dist/simple/images/items/magnificat.jpg | Bin 4416 -> 0 bytes dist/simple/images/items/my_gems.jpg | Bin 3087 -> 0 bytes dist/simple/images/items/okeefe1.jpg | Bin 2612 -> 0 bytes dist/simple/images/items/okeeffe6.jpg | Bin 4023 -> 0 bytes dist/simple/images/items/paul_harlequin.jpg | Bin 4289 -> 0 bytes dist/simple/images/items/pol1.jpg | Bin 5045 -> 0 bytes dist/simple/images/items/pol2.jpg | Bin 4506 -> 0 bytes dist/simple/images/items/poweredby.gif | Bin 2031 -> 0 bytes dist/simple/images/items/tshirt.jpg | Bin 3756 -> 0 bytes dist/simple/images/items/two_fridas.jpg | Bin 4168 -> 0 bytes dist/simple/images/items/womanfan.jpg | Bin 4011 -> 0 bytes dist/simple/images/items/young_man.jpg | Bin 3550 -> 0 bytes dist/simple/images/mvlogo.png | Bin 1435 -> 0 bytes dist/simple/images/mvlogo_dark.png | Bin 1197 -> 0 bytes dist/simple/images/new.png | Bin 213 -> 0 bytes dist/simple/images/perl_id_313c.png | Bin 3155 -> 0 bytes dist/simple/images/poweredby.gif | Bin 2031 -> 0 bytes dist/simple/images/smallamex.png | Bin 1137 -> 0 bytes dist/simple/images/smalldisc.png | Bin 1309 -> 0 bytes dist/simple/images/smallmc.png | Bin 913 -> 0 bytes dist/simple/images/smallvisa.png | Bin 929 -> 0 bytes dist/simple/images/yellow1/cart.png | Bin 288 -> 0 bytes dist/simple/images/yellow1/go.png | Bin 443 -> 0 bytes dist/simple/images/yellow1/logo.png | Bin 17467 -> 0 bytes dist/simple/images/yellow1/menu.png | Bin 3769 -> 0 bytes dist/simple/images/yellow1/submit.png | Bin 222 -> 0 bytes dist/simple/logs/.empty | 0 dist/simple/mysql/affiliate.mysql | 9 - dist/simple/mysql/area.mysql | 11 - dist/simple/mysql/cat.mysql | 12 - dist/simple/mysql/country.mysql | 11 - dist/simple/mysql/inventory.mysql | 14 - dist/simple/mysql/merchandising.mysql | 12 - dist/simple/mysql/orderline.mysql | 27 - dist/simple/mysql/pricing.mysql | 19 - dist/simple/mysql/products.mysql | 25 - dist/simple/mysql/transactions.mysql | 54 - dist/simple/mysql/userdb.mysql | 56 - dist/simple/orders/.empty | 1 - dist/simple/pages/about.html | 43 - dist/simple/pages/account.html | 404 - dist/simple/pages/action/get_password.html | 100 - dist/simple/pages/browse.html | 120 - dist/simple/pages/browse1.html | 157 - dist/simple/pages/canceled.html | 55 - dist/simple/pages/deliver.html | 34 - dist/simple/pages/examples/test_banner.html | 12 - dist/simple/pages/feedback.html | 98 - dist/simple/pages/flypage.html | 215 - dist/simple/pages/index.html | 136 - dist/simple/pages/last_search.html | 14 - dist/simple/pages/login.html | 118 - dist/simple/pages/logout.html | 33 - dist/simple/pages/multi/b_address.html | 73 - dist/simple/pages/multi/basket.html | 281 - dist/simple/pages/multi/checkout.html | 216 - dist/simple/pages/multi/final.html | 232 - dist/simple/pages/multi/nobasket.html | 5 - dist/simple/pages/multi/shipping.html | 86 - dist/simple/pages/new_account.html | 266 - dist/simple/pages/news.html | 254 - dist/simple/pages/no_cookie.html | 28 - dist/simple/pages/nothing.html | 0 dist/simple/pages/ord/basket.html | 281 - dist/simple/pages/ord/checkout.html | 583 - dist/simple/pages/ord/nobasket.html | 5 - dist/simple/pages/privacy.html | 32 - dist/simple/pages/quantity.html | 94 - dist/simple/pages/query/check_orders.html | 207 - dist/simple/pages/query/order_detail.html | 196 - dist/simple/pages/results.html | 122 - dist/simple/pages/special/feedback.html | 88 - dist/simple/pages/special/needfield.html | 59 - dist/simple/pages/splash.html | 34 - dist/simple/pages/srchform.html | 273 - dist/simple/pgsql/area.pgsql | 14 - dist/simple/pgsql/cat.pgsql | 13 - dist/simple/pgsql/country.pgsql | 12 - dist/simple/pgsql/inventory.pgsql | 12 - dist/simple/pgsql/merchandising.pgsql | 12 - dist/simple/pgsql/orderline.pgsql | 28 - dist/simple/pgsql/pricing.pgsql | 20 - dist/simple/pgsql/products.pgsql | 25 - dist/simple/pgsql/transactions.pgsql | 52 - dist/simple/pgsql/userdb.pgsql | 60 - dist/simple/products/2ndDayAir.csv | 152 - dist/simple/products/2ndDayAirAM.csv | 152 - dist/simple/products/3DaySelect.csv | 151 - dist/simple/products/3DaySelectRes.csv | 151 - dist/simple/products/450.csv | 153 - dist/simple/products/Ground.csv | 151 - dist/simple/products/GroundComm.csv | 151 - dist/simple/products/GroundRes.csv | 151 - dist/simple/products/NextDayAir.csv | 152 - dist/simple/products/NextDayAirSaver.csv | 152 - dist/simple/products/access.asc | 6 - dist/simple/products/affiliate.txt | 9 - dist/simple/products/area.txt | 4 - dist/simple/products/banner.txt | 8 - dist/simple/products/cat.txt | 12 - dist/simple/products/country.txt | 197 - dist/simple/products/inventory.txt | 32 - dist/simple/products/locale.txt | 26 - dist/simple/products/merchandising.txt | 6 - dist/simple/products/mv_metadata.asc | 122 - dist/simple/products/orderline.txt | 1 - dist/simple/products/pricing.txt | 30 - dist/simple/products/products.txt | 30 - dist/simple/products/route.txt | 1 - dist/simple/products/salestax.asc | 1 - dist/simple/products/shipping.asc | 78 - dist/simple/products/state.txt | 183 - dist/simple/products/transactions.txt | 1 - dist/simple/products/ups_zone.asc | 153 - dist/simple/products/userdb.txt | 2 - dist/simple/products/variable.txt | 59 - dist/simple/session/.empty | 1 - dist/simple/special_pages/badsearch.html | 14 - dist/simple/special_pages/canceled.html | 17 - dist/simple/special_pages/cc_not_valid.html | 20 - dist/simple/special_pages/confirmation.html | 14 - dist/simple/special_pages/failed.html | 20 - dist/simple/special_pages/interact.html | 60 - dist/simple/special_pages/missing.html | 15 - dist/simple/special_pages/needfield.html | 47 - dist/simple/special_pages/nomatch.html | 12 - dist/simple/special_pages/noproduct.html | 15 - dist/simple/special_pages/notfound.html | 14 - dist/simple/special_pages/order_security.html | 24 - dist/simple/special_pages/reconfig.html | 12 - dist/simple/special_pages/sec_faq.html | 138 - dist/simple/special_pages/security.html | 32 - dist/simple/special_pages/violation.html | 72 - dist/simple/templates/standalone | 12 - dist/simple/templates/standard | 12 - dist/simple/tmp/.empty | 1 - dist/simple/upload/.empty | 1 - dist/src/compile.pl | 5 - dist/src/config.h.in | 45 - dist/src/configure | 1265 -- dist/src/mvctl.c | 80 - dist/src/syscfg.in | 4 - dist/src/testcgi | 10 - dist/src/tlink.pl | 198 - dist/test/catalog.cfg | 123 - dist/test/config/.empty | 0 dist/test/etc/order.number | 2 - dist/test/etc/order.profiles | 105 - dist/test/etc/search.profiles | 8 - dist/test/pages/basket1.html | 148 - dist/test/pages/basket2.html | 159 - dist/test/pages/checkout2.html | 307 - dist/test/pages/flypage.html | 20 - dist/test/pages/harness.html | 12 - dist/test/pages/index.html | 10 - dist/test/pages/indextest.html | 39 - dist/test/pages/locale_test | 1 - dist/test/pages/mvasp.html | 58 - dist/test/pages/oldtest.html | 1125 -- dist/test/pages/ord/basket.html | 132 - dist/test/pages/ord/checkout.html | 307 - dist/test/pages/ord/receipt.html | 104 - dist/test/pages/ord/report.html | 94 - dist/test/pages/quantity.html | 67 - dist/test/pages/results.html | 38 - dist/test/pages/sort.html | 31 - dist/test/pages/srchform.html | 146 - dist/test/pages/test.html | 10 - dist/test/pages/test_specific.html | 3 - dist/test/products/inventory.asc | Bin 375 -> 0 bytes dist/test/products/mv_metadata.asc | 129 - dist/test/products/number_tests.pl | 6 - dist/test/products/pricing.asc | 11 - dist/test/products/products.asc | 12 - dist/test/products/products.notes | 159 - dist/test/products/products2.asc | 10 - dist/test/products/randgen | 7 - dist/test/products/salestax.asc | 52 - dist/test/products/shipping.asc | 15 - dist/test/products/sort.asc | 1001 -- dist/test/products/sqltest.asc | 4 - dist/test/products/tests.asc | 3906 ----- dist/usertag/bar_button | 16 - dist/usertag/button | 173 - dist/usertag/convert_date | 53 - dist/usertag/db_date | 32 - dist/usertag/email | 45 - dist/usertag/email_raw | 42 - dist/usertag/fcounter | 13 - dist/usertag/loc | 25 - dist/usertag/rand | 14 - dist/usertag/reconfig | 22 - dist/usertag/reconfig_time | 11 - dist/usertag/reconfig_wait | 21 - dist/usertag/summary | 35 - dist/usertag/title_bar | 20 - dist/usertag/ups_query | 30 - dist/usertag/usertrack | 3 - dist/usertag/var | 18 - dist/usertag/xml_generator | 277 - eg/compact | 85 - eg/globalsub/signio | 207 - eg/grant.sql | 4 - eg/ifdef | 89 - eg/make_gnumeric.sh | 19 - extensions/quickbooks/README | 284 - extensions/quickbooks/etc/trans_quickbooks | 233 - extensions/quickbooks/ic_qb.pod | 284 - .../quickbooks/pages/admin/export_coa.html | 94 - .../quickbooks/pages/admin/export_items.html | 102 - .../quickbooks/pages/admin/import_items.html | 137 - extensions/quickbooks/pages/admin/index.html | 59 - extensions/quickbooks/qb.catalog.cfg | 18 - .../quickbooks/usertag/export_quicken_coa | 137 - .../quickbooks/usertag/export_quicken_items | 155 - .../quickbooks/usertag/import_quicken_items | 141 - extra/Business/UPS.pm | 394 - extra/File/CounterFile.pm | 325 - extra/File/Spec.pm | 116 - extra/File/Spec/OS2.pm | 40 - extra/File/Spec/Unix.pm | 166 - extra/File/Spec/VMS.pm | 147 - extra/File/Spec/Win32.pm | 103 - extra/HTML/Entities.pm | 219 - extra/IniConf.pm | 617 - extra/URI/URL.pm | 936 - hints.pl | 38 - lib/.cvsignore | 4 - lib/Vend/Config.pm | 2951 ---- lib/Vend/Control.pm | 234 - lib/Vend/Data.pm | 1340 -- lib/Vend/DbSearch.pm | 355 - lib/Vend/Error.pm | 137 - lib/Vend/External.pm | 46 - lib/Vend/Glimpse.pm | 400 - lib/Vend/Interpolate.pm | 5501 ------ lib/Vend/MakeCat.pm | 780 - lib/Vend/Misc/Static.pm | 456 - lib/Vend/Order.pm | 1912 -- lib/Vend/Page.pm | 171 - lib/Vend/Parse.pm | 1560 -- lib/Vend/Scan.pm | 935 - lib/Vend/Search.pm | 1027 -- lib/Vend/Server.pm | 1391 -- lib/Vend/Session.pm | 515 - lib/Vend/SessionFile.pm | 231 - lib/Vend/Table/Common.pm | 1203 -- lib/Vend/Table/DBI.pm | 949 - lib/Vend/Table/DB_File.pm | 140 - lib/Vend/Table/GDBM.pm | 146 - lib/Vend/Table/InMemory.pm | 222 - lib/Vend/Table/LDAP.pm | 626 - lib/Vend/Tagref.pm | 3568 ---- lib/Vend/TextSearch.pm | 434 - lib/Vend/Track.pm | 143 - lib/Vend/UserDB.pm | 1365 -- lib/Vend/Util.pm | 1628 -- perl/Interchange.pm | 579 - pod/QuickStart.pod | 649 - pod/deprecated.sdf | 120 - pod/mv_metadata.pod | 138 - pod/mvdocs.pod | 14454 ---------------- pod/mvfaq.pod | 2256 --- pod/mvrpm.pod | 126 - scripts/.cvsignore | 14 - scripts/compile_link.PL | 399 - scripts/config_prog.PL | 179 - scripts/configdump.PL | 212 - scripts/dump.PL | 270 - scripts/expire.PL | 332 - scripts/expireall.PL | 166 - scripts/interchange.PL | 2473 --- scripts/localize.PL | 433 - scripts/makecat.PL | 2663 --- scripts/offline.PL | 295 - scripts/restart.PL | 192 - scripts/update.PL | 349 - share/akopia/ui/admin/b-configure2.gif | Bin 420 -> 0 bytes share/akopia/ui/admin/b-help2.gif | Bin 256 -> 0 bytes share/akopia/ui/admin/b-items2.gif | Bin 450 -> 0 bytes share/akopia/ui/admin/b-orders2.gif | Bin 534 -> 0 bytes share/akopia/ui/admin/b-pages2.gif | Bin 469 -> 0 bytes share/akopia/ui/admin/b-regenerate2.gif | Bin 456 -> 0 bytes share/akopia/ui/admin/b-statistics2.gif | Bin 389 -> 0 bytes share/akopia/ui/admin/back.sm.gif | Bin 48617 -> 0 bytes share/akopia/ui/admin/bg.gif | Bin 43 -> 0 bytes share/akopia/ui/admin/bluedot.gif | Bin 846 -> 0 bytes share/akopia/ui/admin/cleardot.gif | Bin 43 -> 0 bytes share/akopia/ui/admin/coinlogo.jpg | Bin 18365 -> 0 bytes share/akopia/ui/admin/curve_left.gif | Bin 85 -> 0 bytes share/akopia/ui/admin/curve_right.gif | Bin 86 -> 0 bytes share/akopia/ui/admin/delete.gif | Bin 126 -> 0 bytes share/akopia/ui/admin/delsm.gif | Bin 79 -> 0 bytes share/akopia/ui/admin/down.gif | Bin 163 -> 0 bytes share/akopia/ui/admin/folder.gif | Bin 225 -> 0 bytes share/akopia/ui/admin/folder.open.gif | Bin 242 -> 0 bytes share/akopia/ui/admin/greendot.gif | Bin 846 -> 0 bytes share/akopia/ui/admin/icon_config.gif | Bin 153 -> 0 bytes share/akopia/ui/admin/icon_design.gif | Bin 242 -> 0 bytes share/akopia/ui/admin/icon_error.gif | Bin 105 -> 0 bytes share/akopia/ui/admin/icon_help.gif | Bin 563 -> 0 bytes share/akopia/ui/admin/icon_item.gif | Bin 266 -> 0 bytes share/akopia/ui/admin/icon_merch.gif | Bin 178 -> 0 bytes share/akopia/ui/admin/icon_orders.gif | Bin 262 -> 0 bytes share/akopia/ui/admin/icon_pages.gif | Bin 152 -> 0 bytes share/akopia/ui/admin/icon_people.gif | Bin 587 -> 0 bytes share/akopia/ui/admin/icon_regen.gif | Bin 617 -> 0 bytes share/akopia/ui/admin/icon_regen_anim.gif | Bin 742 -> 0 bytes share/akopia/ui/admin/icon_stats.gif | Bin 324 -> 0 bytes share/akopia/ui/admin/index.gif | Bin 268 -> 0 bytes share/akopia/ui/admin/layout.gif | Bin 276 -> 0 bytes share/akopia/ui/admin/left.gif | Bin 172 -> 0 bytes share/akopia/ui/admin/plus.gif | Bin 125 -> 0 bytes share/akopia/ui/admin/red_logo.gif | Bin 2676 -> 0 bytes share/akopia/ui/admin/reddot.gif | Bin 846 -> 0 bytes share/akopia/ui/admin/right.gif | Bin 172 -> 0 bytes share/akopia/ui/admin/tallyman_logo.gif | Bin 6516 -> 0 bytes share/akopia/ui/admin/up.gif | Bin 164 -> 0 bytes share/akopia/ui/admin/widgets.gif | Bin 91 -> 0 bytes share/akopia/ui/help/help.css | 4 - share/akopia/ui/help/help_check.pl | 45 - share/akopia/ui/help/help_make.pl | 131 - share/akopia/ui/help/images/cleardot.gif | Bin 45 -> 0 bytes .../akopia/ui/help/images/curve.left.help.gif | Bin 118 -> 0 bytes .../ui/help/images/curve.right.help.gif | Bin 111 -> 0 bytes .../akopia/ui/help/images/help.background.gif | Bin 75 -> 0 bytes share/akopia/ui/help/src/404.html | 7 - share/akopia/ui/help/src/access.main.html | 18 - .../ui/help/src/access.permissions.html | 16 - share/akopia/ui/help/src/affiliate.edit.html | 33 - share/akopia/ui/help/src/affiliates.main.html | 78 - share/akopia/ui/help/src/button.builder.html | 21 - share/akopia/ui/help/src/dbdownload.main.html | 2 - share/akopia/ui/help/src/dbupload.main.html | 4 - share/akopia/ui/help/src/env_vars.html | 5 - share/akopia/ui/help/src/export.main.html | 26 - share/akopia/ui/help/src/faq.html | 12 - share/akopia/ui/help/src/flex.meta.html | 48 - share/akopia/ui/help/src/flex.select.html | 5 - share/akopia/ui/help/src/genexport.main.html | 20 - share/akopia/ui/help/src/gensql.main.html | 4 - share/akopia/ui/help/src/genstats.main.html | 9 - share/akopia/ui/help/src/gentable.html | 5 - share/akopia/ui/help/src/glossary.main.html | 156 - share/akopia/ui/help/src/group.main.html | 6 - share/akopia/ui/help/src/import.main.html | 12 - share/akopia/ui/help/src/index.html | 12 - share/akopia/ui/help/src/item.edit.html | 20 - share/akopia/ui/help/src/item.main.html | 22 - share/akopia/ui/help/src/knar.main.html | 11 - share/akopia/ui/help/src/layout.main.html | 41 - .../ui/help/src/layoutdownload.main.html | 4 - .../akopia/ui/help/src/layoutupload.main.html | 4 - share/akopia/ui/help/src/license.html | 14 - share/akopia/ui/help/src/logout.main.html | 4 - .../ui/help/src/order.main.archived.html | 38 - .../ui/help/src/order.main.pending.html | 39 - .../akopia/ui/help/src/order_entry.main.html | 26 - share/akopia/ui/help/src/orderstats.view.html | 5 - share/akopia/ui/help/src/payment.main.html | 13 - share/akopia/ui/help/src/prefs.main.html | 4 - share/akopia/ui/help/src/reconfig.html | 4 - share/akopia/ui/help/src/regen.main.html | 4 - share/akopia/ui/help/src/search_builder.html | 28 - share/akopia/ui/help/src/shipping.data.html | 12 - share/akopia/ui/help/src/shipping.html | 11 - share/akopia/ui/help/src/shipping.main.html | 48 - share/akopia/ui/help/src/shipping.price.html | 8 - .../akopia/ui/help/src/shipping.quantity.html | 12 - share/akopia/ui/help/src/shipping.ups.html | 16 - share/akopia/ui/help/src/stats.order.html | 4 - share/akopia/ui/help/src/stats.traffic.html | 4 - share/akopia/ui/help/src/tax.main.html | 31 - share/akopia/ui/help/src/upload.main.html | 12 - share/akopia/ui/navigation/A1.gif | Bin 712 -> 0 bytes share/akopia/ui/navigation/A1_b.gif | Bin 377 -> 0 bytes share/akopia/ui/navigation/A2.gif | Bin 1036 -> 0 bytes share/akopia/ui/navigation/A2_b.gif | Bin 771 -> 0 bytes share/akopia/ui/navigation/A3.gif | Bin 317 -> 0 bytes share/akopia/ui/navigation/A3_b.gif | Bin 640 -> 0 bytes share/akopia/ui/navigation/B1.gif | Bin 52 -> 0 bytes share/akopia/ui/navigation/B10.gif | Bin 94 -> 0 bytes share/akopia/ui/navigation/B2.gif | Bin 362 -> 0 bytes share/akopia/ui/navigation/B2_b.gif | Bin 310 -> 0 bytes share/akopia/ui/navigation/B2_c.gif | Bin 310 -> 0 bytes share/akopia/ui/navigation/B3.gif | Bin 551 -> 0 bytes share/akopia/ui/navigation/B3_b.gif | Bin 381 -> 0 bytes share/akopia/ui/navigation/B3_c.gif | Bin 381 -> 0 bytes share/akopia/ui/navigation/B4.gif | Bin 464 -> 0 bytes share/akopia/ui/navigation/B4_b.gif | Bin 297 -> 0 bytes share/akopia/ui/navigation/B4_c.gif | Bin 297 -> 0 bytes share/akopia/ui/navigation/B5.gif | Bin 388 -> 0 bytes share/akopia/ui/navigation/B5_b.gif | Bin 330 -> 0 bytes share/akopia/ui/navigation/B5_c.gif | Bin 330 -> 0 bytes share/akopia/ui/navigation/B6.gif | Bin 378 -> 0 bytes share/akopia/ui/navigation/B6_b.gif | Bin 315 -> 0 bytes share/akopia/ui/navigation/B6_c.gif | Bin 315 -> 0 bytes share/akopia/ui/navigation/B7.gif | Bin 523 -> 0 bytes share/akopia/ui/navigation/B7_b.gif | Bin 454 -> 0 bytes share/akopia/ui/navigation/B7_c.gif | Bin 454 -> 0 bytes share/akopia/ui/navigation/B8.gif | Bin 450 -> 0 bytes share/akopia/ui/navigation/B8_b.gif | Bin 373 -> 0 bytes share/akopia/ui/navigation/B8_c.gif | Bin 373 -> 0 bytes share/akopia/ui/navigation/B9.gif | Bin 550 -> 0 bytes share/akopia/ui/navigation/B9_b.gif | Bin 457 -> 0 bytes share/akopia/ui/navigation/B9_c.gif | Bin 457 -> 0 bytes share/akopia/ui/navigation/akopia_logo.gif | Bin 1203 -> 0 bytes share/akopia/ui/navigation/cellbackground.gif | Bin 32820 -> 0 bytes share/akopia/ui/navigation/spacer1.gif | Bin 41 -> 0 bytes share/akopia/ui/navigation/spacer2.gif | Bin 35 -> 0 bytes share/akopia/ui/navigation/spacer3.gif | Bin 41 -> 0 bytes share/akopia/ui/navigation/spacer4.gif | Bin 41 -> 0 bytes share/akopia/ui/navigation/spacer_tall.gif | Bin 47 -> 0 bytes test.pl | 293 - win/minivend.pif | Bin 967 -> 0 bytes win/setup.bat | 0 win/tlink.exe | Bin 23443 -> 0 bytes 1360 files changed, 131687 deletions(-) delete mode 100644 .cvsignore delete mode 100644 LICENSE delete mode 100644 MANIFEST delete mode 100644 MANIFEST.SKIP delete mode 100644 Makefile.PL delete mode 100644 QuickStart delete mode 100644 README delete mode 100644 README.rpm delete mode 100644 SPECS/interchange-4.5.6.spec delete mode 100644 SPECS/interchange-4.5.7.spec delete mode 100644 UPGRADE_FROM_MV3 delete mode 100644 WHATSNEW delete mode 100755 configure delete mode 100644 dist/barry/backup/.empty delete mode 100644 dist/barry/catalog.cfg delete mode 100644 dist/barry/config/additional_fields delete mode 100644 dist/barry/config/additional_help delete mode 100644 dist/barry/config/copyright delete mode 100644 dist/barry/config/leftonly delete mode 100644 dist/barry/config/leftside delete mode 100644 dist/barry/config/logobar delete mode 100644 dist/barry/config/menubar delete mode 100644 dist/barry/config/menubottom delete mode 100644 dist/barry/config/no_left delete mode 100644 dist/barry/config/no_right delete mode 100644 dist/barry/config/postcopy_commands delete mode 100644 dist/barry/config/precopy_commands delete mode 100644 dist/barry/config/rightside delete mode 100644 dist/barry/etc/area.recordnumber delete mode 100644 dist/barry/etc/cat.recordnumber delete mode 100644 dist/barry/etc/log_entry delete mode 100644 dist/barry/etc/log_transaction delete mode 100644 dist/barry/etc/mail_receipt delete mode 100644 dist/barry/etc/profiles.login delete mode 100644 dist/barry/etc/profiles.order delete mode 100644 dist/barry/etc/receipt.html delete mode 100644 dist/barry/etc/report delete mode 100644 dist/barry/etc/ship_notice delete mode 100644 dist/barry/html/index.html delete mode 100644 dist/barry/images/about.gif delete mode 100644 dist/barry/images/addtocart.gif delete mode 100644 dist/barry/images/addtocart2.gif delete mode 100644 dist/barry/images/admin/b-configure2.gif delete mode 100644 dist/barry/images/admin/b-help2.gif delete mode 100644 dist/barry/images/admin/b-items2.gif delete mode 100644 dist/barry/images/admin/b-orders2.gif delete mode 100644 dist/barry/images/admin/b-pages2.gif delete mode 100644 dist/barry/images/admin/b-regenerate2.gif delete mode 100644 dist/barry/images/admin/b-statistics2.gif delete mode 100644 dist/barry/images/admin/back.sm.gif delete mode 100644 dist/barry/images/admin/bg.gif delete mode 100644 dist/barry/images/admin/bluedot.gif delete mode 100644 dist/barry/images/admin/cleardot.gif delete mode 100644 dist/barry/images/admin/coinlogo.jpg delete mode 100644 dist/barry/images/admin/curve_left.gif delete mode 100644 dist/barry/images/admin/curve_right.gif delete mode 100644 dist/barry/images/admin/delete.gif delete mode 100644 dist/barry/images/admin/delsm.gif delete mode 100644 dist/barry/images/admin/down.gif delete mode 100644 dist/barry/images/admin/folder.gif delete mode 100644 dist/barry/images/admin/folder.open.gif delete mode 100644 dist/barry/images/admin/greendot.gif delete mode 100644 dist/barry/images/admin/icon_config.gif delete mode 100644 dist/barry/images/admin/icon_error.gif delete mode 100644 dist/barry/images/admin/icon_help.gif delete mode 100644 dist/barry/images/admin/icon_item.gif delete mode 100644 dist/barry/images/admin/icon_orders.gif delete mode 100644 dist/barry/images/admin/icon_pages.gif delete mode 100644 dist/barry/images/admin/icon_people.gif delete mode 100644 dist/barry/images/admin/icon_regen.gif delete mode 100644 dist/barry/images/admin/icon_regen_anim.gif delete mode 100644 dist/barry/images/admin/icon_stats.gif delete mode 100644 dist/barry/images/admin/index.gif delete mode 100644 dist/barry/images/admin/layout.gif delete mode 100644 dist/barry/images/admin/left.gif delete mode 100644 dist/barry/images/admin/plus.gif delete mode 100644 dist/barry/images/admin/red_logo.gif delete mode 100644 dist/barry/images/admin/reddot.gif delete mode 100644 dist/barry/images/admin/right.gif delete mode 100644 dist/barry/images/admin/tallyman_logo.gif delete mode 100644 dist/barry/images/admin/up.gif delete mode 100644 dist/barry/images/admin/widgets.gif delete mode 100644 dist/barry/images/banner.gif delete mode 100644 dist/barry/images/bg.gif delete mode 100644 dist/barry/images/bikeparts.gif delete mode 100644 dist/barry/images/bikes.gif delete mode 100644 dist/barry/images/bookpick.gif delete mode 100644 dist/barry/images/books.gif delete mode 100644 dist/barry/images/clamps.gif delete mode 100644 dist/barry/images/clear.gif delete mode 100644 dist/barry/images/cleardot.gif delete mode 100644 dist/barry/images/contactus.gif delete mode 100644 dist/barry/images/cranky.gif delete mode 100644 dist/barry/images/create.gif delete mode 100644 dist/barry/images/customer.gif delete mode 100644 dist/barry/images/download.png delete mode 100644 dist/barry/images/front_collage.gif delete mode 100644 dist/barry/images/go.gif delete mode 100644 dist/barry/images/header_about.gif delete mode 100644 dist/barry/images/header_bikes.gif delete mode 100644 dist/barry/images/header_books.gif delete mode 100644 dist/barry/images/header_contactus.gif delete mode 100644 dist/barry/images/header_customerservice.gif delete mode 100644 dist/barry/images/header_feedback.gif delete mode 100644 dist/barry/images/header_help.gif delete mode 100644 dist/barry/images/header_login.gif delete mode 100644 dist/barry/images/header_multi/basket.gif delete mode 100644 dist/barry/images/header_new_account.gif delete mode 100644 dist/barry/images/header_newaccount.gif delete mode 100644 dist/barry/images/header_ord/basket.gif delete mode 100644 dist/barry/images/header_parts.gif delete mode 100644 dist/barry/images/header_sandals.gif delete mode 100644 dist/barry/images/header_search.gif delete mode 100644 dist/barry/images/header_shoes.gif delete mode 100644 dist/barry/images/help.gif delete mode 100644 dist/barry/images/home.gif delete mode 100644 dist/barry/images/items/KHS.soft99.jpg delete mode 100644 dist/barry/images/items/RST.381R.jpg delete mode 100644 dist/barry/images/items/aspen.gif delete mode 100644 dist/barry/images/items/avid.arch50.jpg delete mode 100644 dist/barry/images/items/barbntrini.gif delete mode 100644 dist/barry/images/items/charlesnfox.gif delete mode 100644 dist/barry/images/items/chrono.deepV.jpg delete mode 100644 dist/barry/images/items/george.gif delete mode 100644 dist/barry/images/items/housefelt.gif delete mode 100644 dist/barry/images/items/jurassic.gif delete mode 100644 dist/barry/images/items/kore.elite.stem.jpg delete mode 100644 dist/barry/images/items/man.99sxti.GIF delete mode 100644 dist/barry/images/items/manhattan.gif delete mode 100644 dist/barry/images/items/mystery.gif delete mode 100644 dist/barry/images/items/oklahoma.gif delete mode 100644 dist/barry/images/items/panaracer.mach.gif delete mode 100644 dist/barry/images/items/pedal.jpg delete mode 100644 dist/barry/images/items/racing.gif delete mode 100644 dist/barry/images/items/rf.lpcrank.jpg delete mode 100644 dist/barry/images/items/rf.system.jpg delete mode 100644 dist/barry/images/items/river.gif delete mode 100644 dist/barry/images/items/shimano.pedal.434.JPG delete mode 100644 dist/barry/images/items/shimano.pedal.jpg delete mode 100644 dist/barry/images/items/shimano.xtr.jpg delete mode 100644 dist/barry/images/items/shoebox.gif delete mode 100644 dist/barry/images/items/shoeleather.gif delete mode 100644 dist/barry/images/items/spinergy.spox.jpg delete mode 100644 dist/barry/images/items/terry.men.gif delete mode 100644 dist/barry/images/items/tire.conti.gif delete mode 100644 dist/barry/images/items/women.gif delete mode 100644 dist/barry/images/items/xtr.cassette.jpg delete mode 100644 dist/barry/images/items/xtrcrank.jpg delete mode 100644 dist/barry/images/items/zinn.gif delete mode 100644 dist/barry/images/leftside.gif delete mode 100644 dist/barry/images/leftside_b.gif delete mode 100644 dist/barry/images/login.gif delete mode 100644 dist/barry/images/mvlogo.png delete mode 100644 dist/barry/images/mvlogo_dark.png delete mode 100644 dist/barry/images/new.png delete mode 100644 dist/barry/images/next.gif delete mode 100644 dist/barry/images/order.gif delete mode 100644 dist/barry/images/poweredby.gif delete mode 100644 dist/barry/images/rightside.gif delete mode 100644 dist/barry/images/rightside_b.gif delete mode 100644 dist/barry/images/sandals.gif delete mode 100644 dist/barry/images/satisfied.gif delete mode 100644 dist/barry/images/search.gif delete mode 100644 dist/barry/images/shoes.gif delete mode 100644 dist/barry/images/shoppingcart.gif delete mode 100644 dist/barry/images/smallamex.png delete mode 100644 dist/barry/images/smalldisc.png delete mode 100644 dist/barry/images/smallmc.png delete mode 100644 dist/barry/images/smallvisa.png delete mode 100644 dist/barry/images/space.gif delete mode 100644 dist/barry/images/specials.gif delete mode 100644 dist/barry/images/tan_line.gif delete mode 100644 dist/barry/images/thumb/KHS.soft99.jpg delete mode 100644 dist/barry/images/thumb/RST.381R.jpg delete mode 100644 dist/barry/images/thumb/aspen.gif delete mode 100644 dist/barry/images/thumb/avid.arch50.jpg delete mode 100644 dist/barry/images/thumb/barbntrini.gif delete mode 100644 dist/barry/images/thumb/charlesnfox.gif delete mode 100644 dist/barry/images/thumb/chrono.deepV.jpg delete mode 100644 dist/barry/images/thumb/george.gif delete mode 100644 dist/barry/images/thumb/housefelt.gif delete mode 100644 dist/barry/images/thumb/jurassic.gif delete mode 100644 dist/barry/images/thumb/kore.elite.stem.jpg delete mode 100644 dist/barry/images/thumb/man.99sxti.GIF delete mode 100644 dist/barry/images/thumb/manhattan.gif delete mode 100644 dist/barry/images/thumb/mystery.gif delete mode 100644 dist/barry/images/thumb/oklahoma.gif delete mode 100644 dist/barry/images/thumb/panaracer.mach.gif delete mode 100644 dist/barry/images/thumb/pedal.jpg delete mode 100644 dist/barry/images/thumb/racing.gif delete mode 100644 dist/barry/images/thumb/rf.lpcrank.jpg delete mode 100644 dist/barry/images/thumb/rf.system.jpg delete mode 100644 dist/barry/images/thumb/river.gif delete mode 100644 dist/barry/images/thumb/shimano.pedal.434.JPG delete mode 100644 dist/barry/images/thumb/shimano.pedal.jpg delete mode 100644 dist/barry/images/thumb/shimano.xtr.jpg delete mode 100644 dist/barry/images/thumb/shoebox.gif delete mode 100644 dist/barry/images/thumb/shoeleather.gif delete mode 100644 dist/barry/images/thumb/spinergy.spox.jpg delete mode 100644 dist/barry/images/thumb/terry.men.gif delete mode 100644 dist/barry/images/thumb/tire.conti.gif delete mode 100644 dist/barry/images/thumb/women.gif delete mode 100644 dist/barry/images/thumb/xtr.cassette.jpg delete mode 100644 dist/barry/images/thumb/xtrcrank.jpg delete mode 100644 dist/barry/images/thumb/zinn.gif delete mode 100644 dist/barry/images/white_line.gif delete mode 100644 dist/barry/logs/.empty delete mode 100644 dist/barry/mysql/affiliate.mysql delete mode 100644 dist/barry/mysql/area.mysql delete mode 100644 dist/barry/mysql/cat.mysql delete mode 100644 dist/barry/mysql/country.mysql delete mode 100644 dist/barry/mysql/inventory.mysql delete mode 100644 dist/barry/mysql/merchandising.mysql delete mode 100644 dist/barry/mysql/orderline.mysql delete mode 100644 dist/barry/mysql/pricing.mysql delete mode 100644 dist/barry/mysql/products.mysql delete mode 100644 dist/barry/mysql/transactions.mysql delete mode 100644 dist/barry/mysql/userdb.mysql delete mode 100644 dist/barry/orders/.empty delete mode 100644 dist/barry/pages/about.html delete mode 100644 dist/barry/pages/account.html delete mode 100644 dist/barry/pages/action/get_password.html delete mode 100644 dist/barry/pages/browse.html delete mode 100644 dist/barry/pages/browse1.html delete mode 100644 dist/barry/pages/canceled.html delete mode 100644 dist/barry/pages/contact.html delete mode 100644 dist/barry/pages/deliver.html delete mode 100644 dist/barry/pages/examples/test_banner.html delete mode 100644 dist/barry/pages/flypage.html delete mode 100644 dist/barry/pages/help.html delete mode 100644 dist/barry/pages/index.html delete mode 100644 dist/barry/pages/last_search.html delete mode 100644 dist/barry/pages/login.html delete mode 100644 dist/barry/pages/logout.html delete mode 100644 dist/barry/pages/multi/b_address.html delete mode 100644 dist/barry/pages/multi/basket.html delete mode 100644 dist/barry/pages/multi/checkout.html delete mode 100644 dist/barry/pages/multi/final.html delete mode 100644 dist/barry/pages/multi/nobasket.html delete mode 100644 dist/barry/pages/multi/shipping.html delete mode 100644 dist/barry/pages/new_account.html delete mode 100644 dist/barry/pages/news.html delete mode 100644 dist/barry/pages/no_cookie.html delete mode 100644 dist/barry/pages/nothing.html delete mode 100644 dist/barry/pages/ord/basket.html delete mode 100644 dist/barry/pages/ord/checkout.html delete mode 100644 dist/barry/pages/ord/nobasket.html delete mode 100644 dist/barry/pages/privacy.html delete mode 100644 dist/barry/pages/quantity.html delete mode 100644 dist/barry/pages/query/check_orders.html delete mode 100644 dist/barry/pages/query/order_detail.html delete mode 100644 dist/barry/pages/results.html delete mode 100644 dist/barry/pages/special/feedback.html delete mode 100644 dist/barry/pages/special/needfield.html delete mode 100644 dist/barry/pages/splash.html delete mode 100644 dist/barry/pages/srchform.html delete mode 100644 dist/barry/pages/subcat.html delete mode 100644 dist/barry/pgsql/area.pgsql delete mode 100644 dist/barry/pgsql/cat.pgsql delete mode 100644 dist/barry/pgsql/country.pgsql delete mode 100644 dist/barry/pgsql/inventory.pgsql delete mode 100644 dist/barry/pgsql/merchandising.pgsql delete mode 100644 dist/barry/pgsql/orderline.pgsql delete mode 100644 dist/barry/pgsql/pricing.pgsql delete mode 100644 dist/barry/pgsql/products.pgsql delete mode 100644 dist/barry/pgsql/transactions.pgsql delete mode 100644 dist/barry/pgsql/userdb.pgsql delete mode 100644 dist/barry/products/2ndDayAir.csv delete mode 100644 dist/barry/products/2ndDayAirAM.csv delete mode 100644 dist/barry/products/3DaySelect.csv delete mode 100644 dist/barry/products/3DaySelectRes.csv delete mode 100644 dist/barry/products/450.csv delete mode 100644 dist/barry/products/Ground.csv delete mode 100644 dist/barry/products/GroundComm.csv delete mode 100644 dist/barry/products/GroundRes.csv delete mode 100644 dist/barry/products/NextDayAir.csv delete mode 100644 dist/barry/products/NextDayAirSaver.csv delete mode 100644 dist/barry/products/access.asc delete mode 100644 dist/barry/products/affiliate.txt delete mode 100644 dist/barry/products/area.txt delete mode 100644 dist/barry/products/banner.txt delete mode 100644 dist/barry/products/cat.txt delete mode 100644 dist/barry/products/country.txt delete mode 100644 dist/barry/products/inventory.txt delete mode 100644 dist/barry/products/locale.txt delete mode 100644 dist/barry/products/merchandising.txt delete mode 100644 dist/barry/products/mv_metadata.asc delete mode 100644 dist/barry/products/orderline.txt delete mode 100644 dist/barry/products/pricing.txt delete mode 100644 dist/barry/products/products.txt delete mode 100644 dist/barry/products/route.txt delete mode 100644 dist/barry/products/salestax.asc delete mode 100644 dist/barry/products/shipping.asc delete mode 100644 dist/barry/products/state.txt delete mode 100644 dist/barry/products/transactions.txt delete mode 100644 dist/barry/products/ups_zone.asc delete mode 100644 dist/barry/products/userdb.txt delete mode 100644 dist/barry/products/variable.txt delete mode 100644 dist/barry/session/.empty delete mode 100644 dist/barry/special_pages/badsearch.html delete mode 100644 dist/barry/special_pages/canceled.html delete mode 100644 dist/barry/special_pages/cc_not_valid.html delete mode 100644 dist/barry/special_pages/confirmation.html delete mode 100644 dist/barry/special_pages/failed.html delete mode 100644 dist/barry/special_pages/interact.html delete mode 100644 dist/barry/special_pages/missing.html delete mode 100644 dist/barry/special_pages/needfield.html delete mode 100644 dist/barry/special_pages/nomatch.html delete mode 100644 dist/barry/special_pages/noproduct.html delete mode 100644 dist/barry/special_pages/notfound.html delete mode 100644 dist/barry/special_pages/order_security.html delete mode 100644 dist/barry/special_pages/reconfig.html delete mode 100644 dist/barry/special_pages/sec_faq.html delete mode 100644 dist/barry/special_pages/security.html delete mode 100644 dist/barry/special_pages/violation.html delete mode 100644 dist/barry/templates/fullwidth delete mode 100644 dist/barry/templates/leftonly delete mode 100644 dist/barry/templates/standard delete mode 100644 dist/barry/tmp/.empty delete mode 100644 dist/barry/upload/.empty delete mode 100644 dist/basic/etc/ship_notice delete mode 100644 dist/build/makecat.redhat delete mode 100644 dist/build/makedirs.redhat delete mode 100644 dist/catalog_after.cfg delete mode 100644 dist/catalog_before.cfg delete mode 100644 dist/compat/backend/AsciiBackend delete mode 100644 dist/compat/body delete mode 100644 dist/compat/buttonbar delete mode 100644 dist/compat/form_mail.cfg delete mode 100644 dist/compat/help delete mode 100644 dist/compat/random_rotate delete mode 100644 dist/construct/backup/.empty delete mode 100644 dist/construct/catalog.cfg delete mode 100644 dist/construct/config/additional_fields delete mode 100644 dist/construct/config/additional_help delete mode 100644 dist/construct/config/postcopy_commands delete mode 100644 dist/construct/config/precopy_commands delete mode 100644 dist/construct/dbconf/default_db/2ndDayAir.dbm delete mode 100644 dist/construct/dbconf/default_db/Ground.dbm delete mode 100644 dist/construct/dbconf/default_db/NextDayAir.dbm delete mode 100644 dist/construct/dbconf/default_db/access.dbm delete mode 100644 dist/construct/dbconf/default_db/affiliate.dbm delete mode 100644 dist/construct/dbconf/default_db/area.dbm delete mode 100644 dist/construct/dbconf/default_db/banner.dbm delete mode 100644 dist/construct/dbconf/default_db/cat.dbm delete mode 100644 dist/construct/dbconf/default_db/country.dbm delete mode 100644 dist/construct/dbconf/default_db/gift_certs.dbm delete mode 100644 dist/construct/dbconf/default_db/inventory.dbm delete mode 100644 dist/construct/dbconf/default_db/locale.dbm delete mode 100644 dist/construct/dbconf/default_db/merchandising.dbm delete mode 100644 dist/construct/dbconf/default_db/mv_metadata.dbm delete mode 100644 dist/construct/dbconf/default_db/order_returns.dbm delete mode 100644 dist/construct/dbconf/default_db/orderline.dbm delete mode 100644 dist/construct/dbconf/default_db/pricing.dbm delete mode 100644 dist/construct/dbconf/default_db/products.dbm delete mode 100644 dist/construct/dbconf/default_db/recurring_items.dbm delete mode 100644 dist/construct/dbconf/default_db/recurring_orders.dbm delete mode 100644 dist/construct/dbconf/default_db/ship_addresses.dbm delete mode 100644 dist/construct/dbconf/default_db/transactions.dbm delete mode 100644 dist/construct/dbconf/default_db/userdb.dbm delete mode 100644 dist/construct/dbconf/default_db/variable.dbm delete mode 100644 dist/construct/dbconf/mysql/2ndDayAir.dbm delete mode 100644 dist/construct/dbconf/mysql/Ground.dbm delete mode 100644 dist/construct/dbconf/mysql/NextDayAir.dbm delete mode 100644 dist/construct/dbconf/mysql/access.dbm delete mode 100644 dist/construct/dbconf/mysql/affiliate.mysql delete mode 100644 dist/construct/dbconf/mysql/area.mysql delete mode 100644 dist/construct/dbconf/mysql/banner.dbm delete mode 100644 dist/construct/dbconf/mysql/cat.mysql delete mode 100644 dist/construct/dbconf/mysql/country.mysql delete mode 100644 dist/construct/dbconf/mysql/gift_certs.mysql delete mode 100644 dist/construct/dbconf/mysql/inventory.mysql delete mode 100644 dist/construct/dbconf/mysql/locale.dbm delete mode 100644 dist/construct/dbconf/mysql/mv_metadata.dbm delete mode 100644 dist/construct/dbconf/mysql/order_returns.mysql delete mode 100644 dist/construct/dbconf/mysql/orderline.mysql delete mode 100644 dist/construct/dbconf/mysql/pricing.mysql delete mode 100644 dist/construct/dbconf/mysql/products.mysql delete mode 100644 dist/construct/dbconf/mysql/recurring_items.mysql delete mode 100644 dist/construct/dbconf/mysql/recurring_orders.mysql delete mode 100644 dist/construct/dbconf/mysql/ship_addresses.mysql delete mode 100644 dist/construct/dbconf/mysql/transactions.mysql delete mode 100644 dist/construct/dbconf/mysql/userdb.mysql delete mode 100644 dist/construct/dbconf/mysql/variable.dbm delete mode 100644 dist/construct/dbconf/pgsql/2ndDayAir.dbm delete mode 100644 dist/construct/dbconf/pgsql/Ground.dbm delete mode 100644 dist/construct/dbconf/pgsql/NextDayAir.dbm delete mode 100644 dist/construct/dbconf/pgsql/access.dbm delete mode 100644 dist/construct/dbconf/pgsql/affiliate.pgsql delete mode 100644 dist/construct/dbconf/pgsql/area.pgsql delete mode 100644 dist/construct/dbconf/pgsql/banner.dbm delete mode 100644 dist/construct/dbconf/pgsql/cat.pgsql delete mode 100644 dist/construct/dbconf/pgsql/country.pgsql delete mode 100644 dist/construct/dbconf/pgsql/gift_certs.pgsql delete mode 100644 dist/construct/dbconf/pgsql/inventory.pgsql delete mode 100644 dist/construct/dbconf/pgsql/locale.dbm delete mode 100644 dist/construct/dbconf/pgsql/mv_metadata.dbm delete mode 100644 dist/construct/dbconf/pgsql/order_returns.pgsql delete mode 100644 dist/construct/dbconf/pgsql/orderline.pgsql delete mode 100644 dist/construct/dbconf/pgsql/pricing.pgsql delete mode 100644 dist/construct/dbconf/pgsql/products.pgsql delete mode 100644 dist/construct/dbconf/pgsql/recurring_items.pgsql delete mode 100644 dist/construct/dbconf/pgsql/recurring_orders.pgsql delete mode 100644 dist/construct/dbconf/pgsql/ship_addresses.pgsql delete mode 100644 dist/construct/dbconf/pgsql/transactions.pgsql delete mode 100644 dist/construct/dbconf/pgsql/userdb.pgsql delete mode 100644 dist/construct/dbconf/pgsql/variable.dbm delete mode 100644 dist/construct/etc/log_entry delete mode 100644 dist/construct/etc/log_transaction delete mode 100644 dist/construct/etc/mail_receipt delete mode 100644 dist/construct/etc/profiles.login delete mode 100644 dist/construct/etc/profiles.order delete mode 100644 dist/construct/etc/receipt.html delete mode 100644 dist/construct/etc/ship_notice delete mode 100644 dist/construct/html/index.html delete mode 100644 dist/construct/images/admin/b-configure2.gif delete mode 100644 dist/construct/images/admin/b-help2.gif delete mode 100644 dist/construct/images/admin/b-items2.gif delete mode 100644 dist/construct/images/admin/b-orders2.gif delete mode 100644 dist/construct/images/admin/b-pages2.gif delete mode 100644 dist/construct/images/admin/b-regenerate2.gif delete mode 100644 dist/construct/images/admin/b-statistics2.gif delete mode 100644 dist/construct/images/admin/back.sm.gif delete mode 100644 dist/construct/images/admin/bg.gif delete mode 100644 dist/construct/images/admin/bluedot.gif delete mode 100644 dist/construct/images/admin/cleardot.gif delete mode 100644 dist/construct/images/admin/coinlogo.jpg delete mode 100644 dist/construct/images/admin/curve_left.gif delete mode 100644 dist/construct/images/admin/curve_right.gif delete mode 100644 dist/construct/images/admin/delete.gif delete mode 100644 dist/construct/images/admin/delsm.gif delete mode 100644 dist/construct/images/admin/down.gif delete mode 100644 dist/construct/images/admin/folder.gif delete mode 100644 dist/construct/images/admin/folder.open.gif delete mode 100644 dist/construct/images/admin/greendot.gif delete mode 100644 dist/construct/images/admin/icon_config.gif delete mode 100644 dist/construct/images/admin/icon_error.gif delete mode 100644 dist/construct/images/admin/icon_help.gif delete mode 100644 dist/construct/images/admin/icon_item.gif delete mode 100644 dist/construct/images/admin/icon_orders.gif delete mode 100644 dist/construct/images/admin/icon_pages.gif delete mode 100644 dist/construct/images/admin/icon_people.gif delete mode 100644 dist/construct/images/admin/icon_regen.gif delete mode 100644 dist/construct/images/admin/icon_regen_anim.gif delete mode 100644 dist/construct/images/admin/icon_stats.gif delete mode 100644 dist/construct/images/admin/index.gif delete mode 100644 dist/construct/images/admin/layout.gif delete mode 100644 dist/construct/images/admin/left.gif delete mode 100644 dist/construct/images/admin/plus.gif delete mode 100644 dist/construct/images/admin/red_logo.gif delete mode 100644 dist/construct/images/admin/reddot.gif delete mode 100644 dist/construct/images/admin/right.gif delete mode 100644 dist/construct/images/admin/tallyman_logo.gif delete mode 100644 dist/construct/images/admin/up.gif delete mode 100644 dist/construct/images/admin/widgets.gif delete mode 100644 dist/construct/images/affiliate/hardhat.gif delete mode 100644 dist/construct/images/bg.gif delete mode 100644 dist/construct/images/clear.gif delete mode 100644 dist/construct/images/gift_certificate.gif delete mode 100644 dist/construct/images/gift_certificate_large.gif delete mode 100644 dist/construct/images/items/gift_certificate.gif delete mode 100644 dist/construct/images/items/gift_certificate_large.gif delete mode 100644 dist/construct/images/items/os28004.gif delete mode 100644 dist/construct/images/items/os28005.gif delete mode 100644 dist/construct/images/items/os28006.gif delete mode 100644 dist/construct/images/items/os28007.gif delete mode 100644 dist/construct/images/items/os28008.gif delete mode 100644 dist/construct/images/items/os28009.gif delete mode 100644 dist/construct/images/items/os28011.gif delete mode 100644 dist/construct/images/items/os28044.gif delete mode 100644 dist/construct/images/items/os28057a.gif delete mode 100644 dist/construct/images/items/os28057b.gif delete mode 100644 dist/construct/images/items/os28057c.gif delete mode 100644 dist/construct/images/items/os28062.gif delete mode 100644 dist/construct/images/items/os28064.gif delete mode 100644 dist/construct/images/items/os28065.gif delete mode 100644 dist/construct/images/items/os28066.gif delete mode 100644 dist/construct/images/items/os28068.gif delete mode 100644 dist/construct/images/items/os28068a.gif delete mode 100644 dist/construct/images/items/os28068b.gif delete mode 100644 dist/construct/images/items/os28069.gif delete mode 100644 dist/construct/images/items/os28070.gif delete mode 100644 dist/construct/images/items/os28072.gif delete mode 100644 dist/construct/images/items/os28073.gif delete mode 100644 dist/construct/images/items/os28074.gif delete mode 100644 dist/construct/images/items/os28075.gif delete mode 100644 dist/construct/images/items/os28076.gif delete mode 100644 dist/construct/images/items/os28077.gif delete mode 100644 dist/construct/images/items/os28080.gif delete mode 100644 dist/construct/images/items/os28081.gif delete mode 100644 dist/construct/images/items/os28082.gif delete mode 100644 dist/construct/images/items/os28084.gif delete mode 100644 dist/construct/images/items/os28085.gif delete mode 100644 dist/construct/images/items/os28086.gif delete mode 100644 dist/construct/images/items/os28087.gif delete mode 100644 dist/construct/images/items/os28108.gif delete mode 100644 dist/construct/images/items/os28109.gif delete mode 100644 dist/construct/images/items/os28110.gif delete mode 100644 dist/construct/images/items/os28111.gif delete mode 100644 dist/construct/images/items/os28112.gif delete mode 100644 dist/construct/images/items/os28113.gif delete mode 100644 dist/construct/images/items/os29000.gif delete mode 100644 dist/construct/images/navigation/a1.gif delete mode 100644 dist/construct/images/navigation/a2.gif delete mode 100644 dist/construct/images/navigation/a3.gif delete mode 100644 dist/construct/images/navigation/b1.gif delete mode 100644 dist/construct/images/navigation/b1_b.gif delete mode 100644 dist/construct/images/navigation/b2.gif delete mode 100644 dist/construct/images/navigation/b2_b.gif delete mode 100644 dist/construct/images/navigation/b3.gif delete mode 100644 dist/construct/images/navigation/b3_b.gif delete mode 100644 dist/construct/images/navigation/b4.gif delete mode 100644 dist/construct/images/navigation/b4_b.gif delete mode 100644 dist/construct/images/navigation/b5.gif delete mode 100644 dist/construct/images/navigation/b5_b.gif delete mode 100644 dist/construct/images/navigation/b6.gif delete mode 100644 dist/construct/images/navigation/b6_b.gif delete mode 100644 dist/construct/images/navigation/b7.gif delete mode 100644 dist/construct/images/navigation/buy_now.gif delete mode 100644 dist/construct/images/navigation/c.gif delete mode 100644 dist/construct/images/navigation/checkout_button.gif delete mode 100644 dist/construct/images/navigation/continue_shopping.gif delete mode 100644 dist/construct/images/navigation/coupon_item.gif delete mode 100644 dist/construct/images/navigation/d.gif delete mode 100644 dist/construct/images/navigation/d1.gif delete mode 100644 dist/construct/images/navigation/d2.gif delete mode 100644 dist/construct/images/navigation/d3.gif delete mode 100644 dist/construct/images/navigation/default_a.gif delete mode 100644 dist/construct/images/navigation/default_b.gif delete mode 100644 dist/construct/images/navigation/go.gif delete mode 100644 dist/construct/images/navigation/go_b.gif delete mode 100644 dist/construct/images/navigation/header_handtools.gif delete mode 100644 dist/construct/images/navigation/header_ladders.gif delete mode 100644 dist/construct/images/navigation/header_measuringtools.gif delete mode 100644 dist/construct/images/navigation/header_paintingsupplies.gif delete mode 100644 dist/construct/images/navigation/header_safetyequipment.gif delete mode 100644 dist/construct/images/navigation/header_toolstorage.gif delete mode 100644 dist/construct/images/navigation/logout.gif delete mode 100644 dist/construct/images/navigation/logout_b.gif delete mode 100644 dist/construct/images/navigation/minime1.gif delete mode 100644 dist/construct/images/navigation/minime2.gif delete mode 100644 dist/construct/images/navigation/orangespacer.gif delete mode 100644 dist/construct/images/navigation/poweredby.gif delete mode 100644 dist/construct/images/navigation/recalculate_button.gif delete mode 100644 dist/construct/images/navigation/whitey.gif delete mode 100644 dist/construct/images/poweredby.gif delete mode 100644 dist/construct/images/thumb/os28004_b.gif delete mode 100644 dist/construct/images/thumb/os28005_b.gif delete mode 100644 dist/construct/images/thumb/os28006_b.gif delete mode 100644 dist/construct/images/thumb/os28007_b.gif delete mode 100644 dist/construct/images/thumb/os28008_b.gif delete mode 100644 dist/construct/images/thumb/os28009_b.gif delete mode 100644 dist/construct/images/thumb/os28011_b.gif delete mode 100644 dist/construct/images/thumb/os28044_b.gif delete mode 100644 dist/construct/images/thumb/os28057a_b.gif delete mode 100644 dist/construct/images/thumb/os28057b_b.gif delete mode 100644 dist/construct/images/thumb/os28057c_b.gif delete mode 100644 dist/construct/images/thumb/os28062_b.gif delete mode 100644 dist/construct/images/thumb/os28064_b.gif delete mode 100644 dist/construct/images/thumb/os28065_b.gif delete mode 100644 dist/construct/images/thumb/os28066_b.gif delete mode 100644 dist/construct/images/thumb/os28068_b.gif delete mode 100644 dist/construct/images/thumb/os28068a_b.gif delete mode 100644 dist/construct/images/thumb/os28068b_b.gif delete mode 100644 dist/construct/images/thumb/os28069_b.gif delete mode 100644 dist/construct/images/thumb/os28070_b.gif delete mode 100644 dist/construct/images/thumb/os28072_b.gif delete mode 100644 dist/construct/images/thumb/os28073_b.gif delete mode 100644 dist/construct/images/thumb/os28074_b.gif delete mode 100644 dist/construct/images/thumb/os28075_b.gif delete mode 100644 dist/construct/images/thumb/os28076_b.gif delete mode 100644 dist/construct/images/thumb/os28077_b.gif delete mode 100644 dist/construct/images/thumb/os28080_b.gif delete mode 100644 dist/construct/images/thumb/os28081_b.gif delete mode 100644 dist/construct/images/thumb/os28082_b.gif delete mode 100644 dist/construct/images/thumb/os28084_b.gif delete mode 100644 dist/construct/images/thumb/os28085_b.gif delete mode 100644 dist/construct/images/thumb/os28086_b.gif delete mode 100644 dist/construct/images/thumb/os28087_b.gif delete mode 100644 dist/construct/images/thumb/os28108_b.gif delete mode 100644 dist/construct/images/thumb/os28109_b.gif delete mode 100644 dist/construct/images/thumb/os28110_b.gif delete mode 100644 dist/construct/images/thumb/os28111_b.gif delete mode 100644 dist/construct/images/thumb/os28112_b.gif delete mode 100644 dist/construct/images/thumb/os28113_b.gif delete mode 100644 dist/construct/images/thumb/os29000_b.gif delete mode 100644 dist/construct/logs/.empty delete mode 100644 dist/construct/orders/.empty delete mode 100644 dist/construct/pages/aboutus.html delete mode 100644 dist/construct/pages/account.html delete mode 100644 dist/construct/pages/admin/report_def/Order%20Status.html delete mode 100644 dist/construct/pages/admin/report_def/Products%20to%20edit.html delete mode 100644 dist/construct/pages/admin/reports/Products%20to%20edit.html delete mode 100644 dist/construct/pages/browse.html delete mode 100644 dist/construct/pages/flypage.html delete mode 100644 dist/construct/pages/help.html delete mode 100644 dist/construct/pages/index.html delete mode 100644 dist/construct/pages/new_account.html delete mode 100644 dist/construct/pages/ord/basket.html delete mode 100644 dist/construct/pages/ord/checkout.html delete mode 100644 dist/construct/pages/quantity.html delete mode 100644 dist/construct/pages/recurring_add.html delete mode 100644 dist/construct/pages/recurring_orders.html delete mode 100644 dist/construct/pages/recurring_orders_added.html delete mode 100644 dist/construct/pages/results.html delete mode 100644 dist/construct/pages/ship_addresses.html delete mode 100644 dist/construct/pages/ship_addresses_added.html delete mode 100644 dist/construct/pages/splash.html delete mode 100644 dist/construct/pages/stock-alert.html delete mode 100644 dist/construct/products/2ndDayAir.csv delete mode 100644 dist/construct/products/2ndDayAirAM.csv delete mode 100644 dist/construct/products/3DaySelect.csv delete mode 100644 dist/construct/products/3DaySelectRes.csv delete mode 100644 dist/construct/products/450.csv delete mode 100644 dist/construct/products/Ground.csv delete mode 100644 dist/construct/products/GroundComm.csv delete mode 100644 dist/construct/products/GroundRes.csv delete mode 100644 dist/construct/products/NextDayAir.csv delete mode 100644 dist/construct/products/NextDayAirSaver.csv delete mode 100644 dist/construct/products/access.asc delete mode 100644 dist/construct/products/banner.txt delete mode 100644 dist/construct/products/cat.txt delete mode 100644 dist/construct/products/country.txt delete mode 100644 dist/construct/products/gift_certs.txt delete mode 100644 dist/construct/products/inventory.txt delete mode 100644 dist/construct/products/locale.txt delete mode 100644 dist/construct/products/merchandising.txt delete mode 100644 dist/construct/products/mv_metadata.asc delete mode 100644 dist/construct/products/order_returns.txt delete mode 100644 dist/construct/products/orderline.txt delete mode 100644 dist/construct/products/pricing.txt delete mode 100644 dist/construct/products/recurring_items.txt delete mode 100644 dist/construct/products/recurring_orders.txt delete mode 100644 dist/construct/products/route.txt delete mode 100644 dist/construct/products/salestax.asc delete mode 100644 dist/construct/products/ship_addresses.txt delete mode 100644 dist/construct/products/shipping.asc delete mode 100644 dist/construct/products/state.txt delete mode 100644 dist/construct/products/transactions.txt delete mode 100644 dist/construct/products/ups_zone.asc delete mode 100644 dist/construct/products/userdb.txt delete mode 100644 dist/construct/products/variable.txt delete mode 100644 dist/construct/session/.empty delete mode 100644 dist/construct/special_pages/badsearch.html delete mode 100644 dist/construct/special_pages/canceled.html delete mode 100644 dist/construct/special_pages/cc_not_valid.html delete mode 100644 dist/construct/special_pages/confirmation.html delete mode 100644 dist/construct/special_pages/failed.html delete mode 100644 dist/construct/special_pages/interact.html delete mode 100644 dist/construct/special_pages/missing.html delete mode 100644 dist/construct/special_pages/needfield.html delete mode 100644 dist/construct/special_pages/nomatch.html delete mode 100644 dist/construct/special_pages/noproduct.html delete mode 100644 dist/construct/special_pages/notfound.html delete mode 100644 dist/construct/special_pages/order_security.html delete mode 100644 dist/construct/special_pages/reconfig.html delete mode 100644 dist/construct/special_pages/sec_faq.html delete mode 100644 dist/construct/special_pages/security.html delete mode 100644 dist/construct/special_pages/violation.html delete mode 100644 dist/construct/templates/components/random delete mode 100644 dist/construct/templates/components/specials delete mode 100644 dist/construct/templates/components/upsell_horiz_2 delete mode 100644 dist/construct/templates/components/upsell_horiz_3 delete mode 100644 dist/construct/templates/leftonly delete mode 100644 dist/construct/templates/regions/LEFTONLY_BOTTOM delete mode 100644 dist/construct/templates/regions/LEFTRIGHT_BOTTOM delete mode 100644 dist/construct/templates/regions/LEFTRIGHT_TOP delete mode 100644 dist/construct/templates/regions/NOLEFT_BOTTOM delete mode 100644 dist/construct/templates/regions/NOLEFT_TOP delete mode 100644 dist/construct/tmp/.empty delete mode 100644 dist/construct/upload/.empty delete mode 100644 dist/error.log delete mode 100644 dist/etc/.empty delete mode 100644 dist/interchange.cfg.dist delete mode 100644 dist/lib/UI/Primitive.pm delete mode 100644 dist/lib/UI/pages/admin/access.html delete mode 100644 dist/lib/UI/pages/admin/access_permissions.html delete mode 100644 dist/lib/UI/pages/admin/advanced.html delete mode 100644 dist/lib/UI/pages/admin/affiliates.html delete mode 100644 dist/lib/UI/pages/admin/build_related.html delete mode 100644 dist/lib/UI/pages/admin/button_builder.html delete mode 100644 dist/lib/UI/pages/admin/change_t.pl delete mode 100644 dist/lib/UI/pages/admin/compedit.html delete mode 100644 dist/lib/UI/pages/admin/config.html delete mode 100644 dist/lib/UI/pages/admin/customer.html delete mode 100644 dist/lib/UI/pages/admin/customer_bill.html delete mode 100644 dist/lib/UI/pages/admin/customer_change_pass.html delete mode 100644 dist/lib/UI/pages/admin/customer_pref.html delete mode 100644 dist/lib/UI/pages/admin/customer_select.html delete mode 100644 dist/lib/UI/pages/admin/customer_ship.html delete mode 100644 dist/lib/UI/pages/admin/customer_view.html delete mode 100644 dist/lib/UI/pages/admin/dbdownload.html delete mode 100644 dist/lib/UI/pages/admin/dbinfo.html delete mode 100644 dist/lib/UI/pages/admin/do_upload.html delete mode 100644 dist/lib/UI/pages/admin/do_upload_page.html delete mode 100644 dist/lib/UI/pages/admin/do_view.html delete mode 100644 dist/lib/UI/pages/admin/entry.html delete mode 100644 dist/lib/UI/pages/admin/entry_select.html delete mode 100644 dist/lib/UI/pages/admin/env_vars.html delete mode 100644 dist/lib/UI/pages/admin/error.html delete mode 100644 dist/lib/UI/pages/admin/error_item.html delete mode 100644 dist/lib/UI/pages/admin/export_table.html delete mode 100644 dist/lib/UI/pages/admin/flex_editor.html delete mode 100644 dist/lib/UI/pages/admin/flex_select.html delete mode 100644 dist/lib/UI/pages/admin/flex_select_box.html delete mode 100644 dist/lib/UI/pages/admin/format_meta.html delete mode 100644 dist/lib/UI/pages/admin/fr_index.html delete mode 100644 dist/lib/UI/pages/admin/genconfig.html delete mode 100644 dist/lib/UI/pages/admin/genreport.html delete mode 100644 dist/lib/UI/pages/admin/genstats.html delete mode 100644 dist/lib/UI/pages/admin/gentable.html delete mode 100644 dist/lib/UI/pages/admin/genupload.html delete mode 100644 dist/lib/UI/pages/admin/genxport.html delete mode 100644 dist/lib/UI/pages/admin/group.html delete mode 100644 dist/lib/UI/pages/admin/group_edit.html delete mode 100644 dist/lib/UI/pages/admin/import_table.html delete mode 100644 dist/lib/UI/pages/admin/index.html delete mode 100644 dist/lib/UI/pages/admin/item.html delete mode 100644 dist/lib/UI/pages/admin/item_edit.html delete mode 100644 dist/lib/UI/pages/admin/layout.html delete mode 100644 dist/lib/UI/pages/admin/login.html delete mode 100644 dist/lib/UI/pages/admin/logout.html delete mode 100644 dist/lib/UI/pages/admin/merchandising.html delete mode 100644 dist/lib/UI/pages/admin/order.html delete mode 100644 dist/lib/UI/pages/admin/order_status.html delete mode 100644 dist/lib/UI/pages/admin/order_view.html delete mode 100644 dist/lib/UI/pages/admin/orderstats.html delete mode 100644 dist/lib/UI/pages/admin/page.html delete mode 100644 dist/lib/UI/pages/admin/page_edit.html delete mode 100644 dist/lib/UI/pages/admin/page_new.html delete mode 100644 dist/lib/UI/pages/admin/page_preview.html delete mode 100644 dist/lib/UI/pages/admin/page_save.html delete mode 100644 dist/lib/UI/pages/admin/payment.html delete mode 100644 dist/lib/UI/pages/admin/preferences.html delete mode 100644 dist/lib/UI/pages/admin/quicklinks.html delete mode 100644 dist/lib/UI/pages/admin/reconfig.html delete mode 100644 dist/lib/UI/pages/admin/regen.html delete mode 100644 dist/lib/UI/pages/admin/regenerate.html delete mode 100644 dist/lib/UI/pages/admin/report.html delete mode 100644 dist/lib/UI/pages/admin/report_results.html delete mode 100644 dist/lib/UI/pages/admin/report_save.html delete mode 100644 dist/lib/UI/pages/admin/reports/order/ByAffiliate.html delete mode 100644 dist/lib/UI/pages/admin/reports/order/Detail.html delete mode 100644 dist/lib/UI/pages/admin/reports/order/Monthly.html delete mode 100644 dist/lib/UI/pages/admin/reports/traffic/ByAffiliate.html delete mode 100644 dist/lib/UI/pages/admin/search_wizard.html delete mode 100644 dist/lib/UI/pages/admin/search_wizard2.html delete mode 100644 dist/lib/UI/pages/admin/search_wizard3.html delete mode 100644 dist/lib/UI/pages/admin/search_wizard_results.html delete mode 100644 dist/lib/UI/pages/admin/ship.html delete mode 100644 dist/lib/UI/pages/admin/ship_data.html delete mode 100644 dist/lib/UI/pages/admin/ship_edit.html delete mode 100644 dist/lib/UI/pages/admin/ship_range.html delete mode 100644 dist/lib/UI/pages/admin/special/key_violation.html delete mode 100644 dist/lib/UI/pages/admin/spread.html delete mode 100644 dist/lib/UI/pages/admin/spread_control.html delete mode 100644 dist/lib/UI/pages/admin/tablereport.html delete mode 100644 dist/lib/UI/pages/admin/tax.html delete mode 100644 dist/lib/UI/pages/admin/trafficstats.html delete mode 100644 dist/lib/UI/pages/admin/upload_config.html delete mode 100644 dist/lib/UI/pages/admin/upload_file.html delete mode 100644 dist/lib/UI/pages/admin/upload_image.html delete mode 100644 dist/lib/UI/pages/admin/upload_other.html delete mode 100644 dist/lib/UI/pages/admin/upload_pages.html delete mode 100644 dist/lib/UI/pages/admin/user_change_pass.html delete mode 100644 dist/lib/UI/pages/admin/user_edit.html delete mode 100644 dist/lib/UI/profiles/login delete mode 100644 dist/lib/UI/profiles/order_button_build delete mode 100644 dist/lib/UI/ui.cfg delete mode 100644 dist/lib/UI/usertag/available_ups_internal delete mode 100644 dist/lib/UI/usertag/available_www_shipping delete mode 100644 dist/lib/UI/usertag/backup_database delete mode 100644 dist/lib/UI/usertag/backup_file delete mode 100644 dist/lib/UI/usertag/base_url delete mode 100644 dist/lib/UI/usertag/button delete mode 100644 dist/lib/UI/usertag/check_upload delete mode 100644 dist/lib/UI/usertag/db_columns delete mode 100644 dist/lib/UI/usertag/db_hash delete mode 100644 dist/lib/UI/usertag/dbinfo delete mode 100644 dist/lib/UI/usertag/directive_value delete mode 100644 dist/lib/UI/usertag/display delete mode 100644 dist/lib/UI/usertag/dump_session delete mode 100644 dist/lib/UI/usertag/e delete mode 100644 dist/lib/UI/usertag/export_database delete mode 100644 dist/lib/UI/usertag/field_label delete mode 100644 dist/lib/UI/usertag/file_info delete mode 100644 dist/lib/UI/usertag/file_navigator delete mode 100644 dist/lib/UI/usertag/global_value delete mode 100644 dist/lib/UI/usertag/grep_mm delete mode 100644 dist/lib/UI/usertag/if_key_exists delete mode 100644 dist/lib/UI/usertag/if_mm delete mode 100644 dist/lib/UI/usertag/if_sql delete mode 100644 dist/lib/UI/usertag/ifdef delete mode 100644 dist/lib/UI/usertag/ifndef delete mode 100644 dist/lib/UI/usertag/import_fields delete mode 100644 dist/lib/UI/usertag/list_databases delete mode 100644 dist/lib/UI/usertag/list_glob delete mode 100644 dist/lib/UI/usertag/list_keys delete mode 100644 dist/lib/UI/usertag/list_pages delete mode 100644 dist/lib/UI/usertag/mm_value delete mode 100644 dist/lib/UI/usertag/newer delete mode 100644 dist/lib/UI/usertag/quick_table delete mode 100644 dist/lib/UI/usertag/read_serial delete mode 100644 dist/lib/UI/usertag/read_shipping delete mode 100644 dist/lib/UI/usertag/read_ui_template delete mode 100644 dist/lib/UI/usertag/regenerate delete mode 100644 dist/lib/UI/usertag/return_to delete mode 100644 dist/lib/UI/usertag/rotate_database delete mode 100644 dist/lib/UI/usertag/rotate_file delete mode 100644 dist/lib/UI/usertag/rotate_table delete mode 100644 dist/lib/UI/usertag/row_edit delete mode 100644 dist/lib/UI/usertag/send_help delete mode 100644 dist/lib/UI/usertag/set_alias delete mode 100644 dist/lib/UI/usertag/set_click delete mode 100644 dist/lib/UI/usertag/setvar delete mode 100644 dist/lib/UI/usertag/substitute delete mode 100644 dist/lib/UI/usertag/title_bar delete mode 100644 dist/lib/UI/usertag/unconfigure delete mode 100644 dist/lib/UI/usertag/uneval delete mode 100644 dist/lib/UI/usertag/unlink_file delete mode 100644 dist/lib/UI/usertag/version delete mode 100644 dist/lib/UI/usertag/widget delete mode 100644 dist/lib/UI/usertag/with delete mode 100644 dist/lib/UI/usertag/write_relative_file delete mode 100644 dist/lib/UI/usertag/write_shipping delete mode 100644 dist/lib/UI/vars/UI_EDIT_LINK delete mode 100644 dist/lib/UI/vars/UI_STD_DBEDIT_HEAD delete mode 100644 dist/lib/UI/vars/UI_STD_DBEDIT_TABLE delete mode 100644 dist/lib/UI/vars/UI_STD_FILE_NAV delete mode 100644 dist/lib/UI/vars/UI_STD_FOOTER delete mode 100644 dist/lib/UI/vars/UI_STD_HEAD delete mode 100644 dist/locale.error delete mode 100644 dist/simple/.cvsignore delete mode 100644 dist/simple/backup/.empty delete mode 100644 dist/simple/catalog.cfg delete mode 100644 dist/simple/config/.empty delete mode 100644 dist/simple/config/additional_fields delete mode 100644 dist/simple/config/additional_help delete mode 100644 dist/simple/config/blue1/copyright delete mode 100644 dist/simple/config/blue1/leftside delete mode 100644 dist/simple/config/blue1/logobar delete mode 100644 dist/simple/config/blue1/menubar delete mode 100644 dist/simple/config/blue1/menubottom delete mode 100644 dist/simple/config/blue1/no_right delete mode 100644 dist/simple/config/blue1/only_logo delete mode 100644 dist/simple/config/blue1/rightside delete mode 100644 dist/simple/config/brown1/copyright delete mode 100644 dist/simple/config/brown1/leftside delete mode 100644 dist/simple/config/brown1/logobar delete mode 100644 dist/simple/config/brown1/menubar delete mode 100644 dist/simple/config/brown1/menubottom delete mode 100644 dist/simple/config/brown1/no_right delete mode 100644 dist/simple/config/brown1/only_logo delete mode 100644 dist/simple/config/brown1/rightside delete mode 100644 dist/simple/config/postcopy_commands delete mode 100644 dist/simple/config/precopy_commands delete mode 100644 dist/simple/config/yellow1/copyright delete mode 100644 dist/simple/config/yellow1/leftside delete mode 100644 dist/simple/config/yellow1/logobar delete mode 100644 dist/simple/config/yellow1/menubar delete mode 100644 dist/simple/config/yellow1/menubottom delete mode 100644 dist/simple/config/yellow1/no_right delete mode 100644 dist/simple/config/yellow1/only_logo delete mode 100644 dist/simple/config/yellow1/rightside delete mode 100644 dist/simple/etc/area.recordnumber delete mode 100644 dist/simple/etc/cat.recordnumber delete mode 100644 dist/simple/etc/log_transaction delete mode 100644 dist/simple/etc/mail_receipt delete mode 100644 dist/simple/etc/profiles.login delete mode 100644 dist/simple/etc/profiles.order delete mode 100644 dist/simple/etc/receipt.html delete mode 100644 dist/simple/etc/report delete mode 100644 dist/simple/etc/ship_notice delete mode 100644 dist/simple/html/.empty delete mode 100644 dist/simple/html/index.html delete mode 100644 dist/simple/images/admin/b-configure2.gif delete mode 100644 dist/simple/images/admin/b-help2.gif delete mode 100644 dist/simple/images/admin/b-items2.gif delete mode 100644 dist/simple/images/admin/b-orders2.gif delete mode 100644 dist/simple/images/admin/b-pages2.gif delete mode 100644 dist/simple/images/admin/b-regenerate2.gif delete mode 100644 dist/simple/images/admin/b-statistics2.gif delete mode 100644 dist/simple/images/admin/back.sm.gif delete mode 100644 dist/simple/images/admin/bg.gif delete mode 100644 dist/simple/images/admin/bluedot.gif delete mode 100644 dist/simple/images/admin/cleardot.gif delete mode 100644 dist/simple/images/admin/coinlogo.jpg delete mode 100644 dist/simple/images/admin/curve_left.gif delete mode 100644 dist/simple/images/admin/curve_right.gif delete mode 100644 dist/simple/images/admin/delete.gif delete mode 100644 dist/simple/images/admin/delsm.gif delete mode 100644 dist/simple/images/admin/down.gif delete mode 100644 dist/simple/images/admin/folder.gif delete mode 100644 dist/simple/images/admin/folder.open.gif delete mode 100644 dist/simple/images/admin/greendot.gif delete mode 100644 dist/simple/images/admin/icon_config.gif delete mode 100644 dist/simple/images/admin/icon_error.gif delete mode 100644 dist/simple/images/admin/icon_help.gif delete mode 100644 dist/simple/images/admin/icon_item.gif delete mode 100644 dist/simple/images/admin/icon_orders.gif delete mode 100644 dist/simple/images/admin/icon_pages.gif delete mode 100644 dist/simple/images/admin/icon_people.gif delete mode 100644 dist/simple/images/admin/icon_regen.gif delete mode 100644 dist/simple/images/admin/icon_regen_anim.gif delete mode 100644 dist/simple/images/admin/icon_stats.gif delete mode 100644 dist/simple/images/admin/index.gif delete mode 100644 dist/simple/images/admin/layout.gif delete mode 100644 dist/simple/images/admin/left.gif delete mode 100644 dist/simple/images/admin/plus.gif delete mode 100644 dist/simple/images/admin/red_logo.gif delete mode 100644 dist/simple/images/admin/reddot.gif delete mode 100644 dist/simple/images/admin/right.gif delete mode 100644 dist/simple/images/admin/tallyman_logo.gif delete mode 100644 dist/simple/images/admin/up.gif delete mode 100644 dist/simple/images/admin/widgets.gif delete mode 100644 dist/simple/images/bg.gif delete mode 100644 dist/simple/images/blue1/cart.png delete mode 100644 dist/simple/images/blue1/go.png delete mode 100644 dist/simple/images/blue1/logo.png delete mode 100644 dist/simple/images/blue1/menu.png delete mode 100644 dist/simple/images/blue1/submit.png delete mode 100644 dist/simple/images/brown1/cart.png delete mode 100644 dist/simple/images/brown1/go.png delete mode 100644 dist/simple/images/brown1/logo.png delete mode 100644 dist/simple/images/brown1/menu.png delete mode 100644 dist/simple/images/brown1/submit.png delete mode 100644 dist/simple/images/clear.gif delete mode 100644 dist/simple/images/download.png delete mode 100644 dist/simple/images/items/00-0011.jpg delete mode 100644 dist/simple/images/items/00-0011a.png delete mode 100644 dist/simple/images/items/00-341.jpg delete mode 100644 dist/simple/images/items/00-342.jpg delete mode 100644 dist/simple/images/items/00-343.jpg delete mode 100755 dist/simple/images/items/19-203.jpg delete mode 100755 dist/simple/images/items/19-204.jpg delete mode 100644 dist/simple/images/items/21-221.jpg delete mode 100644 dist/simple/images/items/34-101.png delete mode 100644 dist/simple/images/items/chair_car.jpg delete mode 100644 dist/simple/images/items/golconde.jpg delete mode 100644 dist/simple/images/items/illumined_pleasures.jpg delete mode 100644 dist/simple/images/items/irises.jpg delete mode 100644 dist/simple/images/items/lastsupp.jpg delete mode 100644 dist/simple/images/items/loose_hair.jpg delete mode 100644 dist/simple/images/items/magnificat.jpg delete mode 100644 dist/simple/images/items/my_gems.jpg delete mode 100644 dist/simple/images/items/okeefe1.jpg delete mode 100644 dist/simple/images/items/okeeffe6.jpg delete mode 100644 dist/simple/images/items/paul_harlequin.jpg delete mode 100644 dist/simple/images/items/pol1.jpg delete mode 100644 dist/simple/images/items/pol2.jpg delete mode 100644 dist/simple/images/items/poweredby.gif delete mode 100755 dist/simple/images/items/tshirt.jpg delete mode 100644 dist/simple/images/items/two_fridas.jpg delete mode 100644 dist/simple/images/items/womanfan.jpg delete mode 100644 dist/simple/images/items/young_man.jpg delete mode 100644 dist/simple/images/mvlogo.png delete mode 100644 dist/simple/images/mvlogo_dark.png delete mode 100644 dist/simple/images/new.png delete mode 100644 dist/simple/images/perl_id_313c.png delete mode 100644 dist/simple/images/poweredby.gif delete mode 100644 dist/simple/images/smallamex.png delete mode 100644 dist/simple/images/smalldisc.png delete mode 100644 dist/simple/images/smallmc.png delete mode 100644 dist/simple/images/smallvisa.png delete mode 100644 dist/simple/images/yellow1/cart.png delete mode 100644 dist/simple/images/yellow1/go.png delete mode 100644 dist/simple/images/yellow1/logo.png delete mode 100644 dist/simple/images/yellow1/menu.png delete mode 100644 dist/simple/images/yellow1/submit.png delete mode 100644 dist/simple/logs/.empty delete mode 100644 dist/simple/mysql/affiliate.mysql delete mode 100644 dist/simple/mysql/area.mysql delete mode 100644 dist/simple/mysql/cat.mysql delete mode 100644 dist/simple/mysql/country.mysql delete mode 100644 dist/simple/mysql/inventory.mysql delete mode 100644 dist/simple/mysql/merchandising.mysql delete mode 100644 dist/simple/mysql/orderline.mysql delete mode 100644 dist/simple/mysql/pricing.mysql delete mode 100644 dist/simple/mysql/products.mysql delete mode 100644 dist/simple/mysql/transactions.mysql delete mode 100644 dist/simple/mysql/userdb.mysql delete mode 100644 dist/simple/orders/.empty delete mode 100644 dist/simple/pages/about.html delete mode 100644 dist/simple/pages/account.html delete mode 100644 dist/simple/pages/action/get_password.html delete mode 100644 dist/simple/pages/browse.html delete mode 100644 dist/simple/pages/browse1.html delete mode 100644 dist/simple/pages/canceled.html delete mode 100644 dist/simple/pages/deliver.html delete mode 100644 dist/simple/pages/examples/test_banner.html delete mode 100644 dist/simple/pages/feedback.html delete mode 100644 dist/simple/pages/flypage.html delete mode 100644 dist/simple/pages/index.html delete mode 100644 dist/simple/pages/last_search.html delete mode 100644 dist/simple/pages/login.html delete mode 100644 dist/simple/pages/logout.html delete mode 100644 dist/simple/pages/multi/b_address.html delete mode 100644 dist/simple/pages/multi/basket.html delete mode 100644 dist/simple/pages/multi/checkout.html delete mode 100644 dist/simple/pages/multi/final.html delete mode 100644 dist/simple/pages/multi/nobasket.html delete mode 100644 dist/simple/pages/multi/shipping.html delete mode 100644 dist/simple/pages/new_account.html delete mode 100644 dist/simple/pages/news.html delete mode 100644 dist/simple/pages/no_cookie.html delete mode 100644 dist/simple/pages/nothing.html delete mode 100644 dist/simple/pages/ord/basket.html delete mode 100644 dist/simple/pages/ord/checkout.html delete mode 100644 dist/simple/pages/ord/nobasket.html delete mode 100644 dist/simple/pages/privacy.html delete mode 100644 dist/simple/pages/quantity.html delete mode 100644 dist/simple/pages/query/check_orders.html delete mode 100644 dist/simple/pages/query/order_detail.html delete mode 100644 dist/simple/pages/results.html delete mode 100644 dist/simple/pages/special/feedback.html delete mode 100644 dist/simple/pages/special/needfield.html delete mode 100644 dist/simple/pages/splash.html delete mode 100644 dist/simple/pages/srchform.html delete mode 100644 dist/simple/pgsql/area.pgsql delete mode 100644 dist/simple/pgsql/cat.pgsql delete mode 100644 dist/simple/pgsql/country.pgsql delete mode 100644 dist/simple/pgsql/inventory.pgsql delete mode 100644 dist/simple/pgsql/merchandising.pgsql delete mode 100644 dist/simple/pgsql/orderline.pgsql delete mode 100644 dist/simple/pgsql/pricing.pgsql delete mode 100644 dist/simple/pgsql/products.pgsql delete mode 100644 dist/simple/pgsql/transactions.pgsql delete mode 100644 dist/simple/pgsql/userdb.pgsql delete mode 100644 dist/simple/products/2ndDayAir.csv delete mode 100644 dist/simple/products/2ndDayAirAM.csv delete mode 100644 dist/simple/products/3DaySelect.csv delete mode 100644 dist/simple/products/3DaySelectRes.csv delete mode 100644 dist/simple/products/450.csv delete mode 100644 dist/simple/products/Ground.csv delete mode 100644 dist/simple/products/GroundComm.csv delete mode 100644 dist/simple/products/GroundRes.csv delete mode 100644 dist/simple/products/NextDayAir.csv delete mode 100644 dist/simple/products/NextDayAirSaver.csv delete mode 100644 dist/simple/products/access.asc delete mode 100644 dist/simple/products/affiliate.txt delete mode 100644 dist/simple/products/area.txt delete mode 100644 dist/simple/products/banner.txt delete mode 100644 dist/simple/products/cat.txt delete mode 100644 dist/simple/products/country.txt delete mode 100644 dist/simple/products/inventory.txt delete mode 100644 dist/simple/products/locale.txt delete mode 100644 dist/simple/products/merchandising.txt delete mode 100644 dist/simple/products/mv_metadata.asc delete mode 100644 dist/simple/products/orderline.txt delete mode 100644 dist/simple/products/pricing.txt delete mode 100644 dist/simple/products/products.txt delete mode 100644 dist/simple/products/route.txt delete mode 100644 dist/simple/products/salestax.asc delete mode 100644 dist/simple/products/shipping.asc delete mode 100644 dist/simple/products/state.txt delete mode 100644 dist/simple/products/transactions.txt delete mode 100644 dist/simple/products/ups_zone.asc delete mode 100644 dist/simple/products/userdb.txt delete mode 100644 dist/simple/products/variable.txt delete mode 100644 dist/simple/session/.empty delete mode 100644 dist/simple/special_pages/badsearch.html delete mode 100644 dist/simple/special_pages/canceled.html delete mode 100644 dist/simple/special_pages/cc_not_valid.html delete mode 100644 dist/simple/special_pages/confirmation.html delete mode 100644 dist/simple/special_pages/failed.html delete mode 100644 dist/simple/special_pages/interact.html delete mode 100644 dist/simple/special_pages/missing.html delete mode 100644 dist/simple/special_pages/needfield.html delete mode 100644 dist/simple/special_pages/nomatch.html delete mode 100644 dist/simple/special_pages/noproduct.html delete mode 100644 dist/simple/special_pages/notfound.html delete mode 100644 dist/simple/special_pages/order_security.html delete mode 100644 dist/simple/special_pages/reconfig.html delete mode 100644 dist/simple/special_pages/sec_faq.html delete mode 100644 dist/simple/special_pages/security.html delete mode 100644 dist/simple/special_pages/violation.html delete mode 100644 dist/simple/templates/standalone delete mode 100644 dist/simple/templates/standard delete mode 100644 dist/simple/tmp/.empty delete mode 100644 dist/simple/upload/.empty delete mode 100755 dist/src/compile.pl delete mode 100644 dist/src/config.h.in delete mode 100755 dist/src/configure delete mode 100644 dist/src/mvctl.c delete mode 100644 dist/src/syscfg.in delete mode 100755 dist/src/testcgi delete mode 100755 dist/src/tlink.pl delete mode 100644 dist/test/catalog.cfg delete mode 100644 dist/test/config/.empty delete mode 100644 dist/test/etc/order.number delete mode 100644 dist/test/etc/order.profiles delete mode 100644 dist/test/etc/search.profiles delete mode 100644 dist/test/pages/basket1.html delete mode 100644 dist/test/pages/basket2.html delete mode 100644 dist/test/pages/checkout2.html delete mode 100644 dist/test/pages/flypage.html delete mode 100644 dist/test/pages/harness.html delete mode 100644 dist/test/pages/index.html delete mode 100644 dist/test/pages/indextest.html delete mode 100644 dist/test/pages/locale_test delete mode 100644 dist/test/pages/mvasp.html delete mode 100644 dist/test/pages/oldtest.html delete mode 100644 dist/test/pages/ord/basket.html delete mode 100644 dist/test/pages/ord/checkout.html delete mode 100644 dist/test/pages/ord/receipt.html delete mode 100644 dist/test/pages/ord/report.html delete mode 100644 dist/test/pages/quantity.html delete mode 100644 dist/test/pages/results.html delete mode 100644 dist/test/pages/sort.html delete mode 100644 dist/test/pages/srchform.html delete mode 100644 dist/test/pages/test.html delete mode 100644 dist/test/pages/test_specific.html delete mode 100644 dist/test/products/inventory.asc delete mode 100644 dist/test/products/mv_metadata.asc delete mode 100644 dist/test/products/number_tests.pl delete mode 100644 dist/test/products/pricing.asc delete mode 100644 dist/test/products/products.asc delete mode 100644 dist/test/products/products.notes delete mode 100644 dist/test/products/products2.asc delete mode 100644 dist/test/products/randgen delete mode 100644 dist/test/products/salestax.asc delete mode 100644 dist/test/products/shipping.asc delete mode 100644 dist/test/products/sort.asc delete mode 100644 dist/test/products/sqltest.asc delete mode 100644 dist/test/products/tests.asc delete mode 100644 dist/usertag/bar_button delete mode 100644 dist/usertag/button delete mode 100644 dist/usertag/convert_date delete mode 100644 dist/usertag/db_date delete mode 100644 dist/usertag/email delete mode 100644 dist/usertag/email_raw delete mode 100644 dist/usertag/fcounter delete mode 100644 dist/usertag/loc delete mode 100644 dist/usertag/rand delete mode 100644 dist/usertag/reconfig delete mode 100644 dist/usertag/reconfig_time delete mode 100644 dist/usertag/reconfig_wait delete mode 100644 dist/usertag/summary delete mode 100644 dist/usertag/title_bar delete mode 100644 dist/usertag/ups_query delete mode 100644 dist/usertag/usertrack delete mode 100644 dist/usertag/var delete mode 100644 dist/usertag/xml_generator delete mode 100755 eg/compact delete mode 100644 eg/globalsub/signio delete mode 100644 eg/grant.sql delete mode 100755 eg/ifdef delete mode 100755 eg/make_gnumeric.sh delete mode 100644 extensions/quickbooks/README delete mode 100644 extensions/quickbooks/etc/trans_quickbooks delete mode 100644 extensions/quickbooks/ic_qb.pod delete mode 100644 extensions/quickbooks/pages/admin/export_coa.html delete mode 100644 extensions/quickbooks/pages/admin/export_items.html delete mode 100644 extensions/quickbooks/pages/admin/import_items.html delete mode 100644 extensions/quickbooks/pages/admin/index.html delete mode 100644 extensions/quickbooks/qb.catalog.cfg delete mode 100644 extensions/quickbooks/usertag/export_quicken_coa delete mode 100644 extensions/quickbooks/usertag/export_quicken_items delete mode 100644 extensions/quickbooks/usertag/import_quicken_items delete mode 100644 extra/Business/UPS.pm delete mode 100644 extra/File/CounterFile.pm delete mode 100644 extra/File/Spec.pm delete mode 100644 extra/File/Spec/OS2.pm delete mode 100644 extra/File/Spec/Unix.pm delete mode 100644 extra/File/Spec/VMS.pm delete mode 100644 extra/File/Spec/Win32.pm delete mode 100644 extra/HTML/Entities.pm delete mode 100644 extra/IniConf.pm delete mode 100644 extra/URI/URL.pm delete mode 100644 hints.pl delete mode 100644 lib/.cvsignore delete mode 100644 lib/Vend/Config.pm delete mode 100644 lib/Vend/Control.pm delete mode 100644 lib/Vend/Data.pm delete mode 100644 lib/Vend/DbSearch.pm delete mode 100644 lib/Vend/Error.pm delete mode 100644 lib/Vend/External.pm delete mode 100644 lib/Vend/Glimpse.pm delete mode 100644 lib/Vend/Interpolate.pm delete mode 100644 lib/Vend/MakeCat.pm delete mode 100644 lib/Vend/Misc/Static.pm delete mode 100644 lib/Vend/Order.pm delete mode 100644 lib/Vend/Page.pm delete mode 100644 lib/Vend/Parse.pm delete mode 100644 lib/Vend/Scan.pm delete mode 100644 lib/Vend/Search.pm delete mode 100644 lib/Vend/Server.pm delete mode 100644 lib/Vend/Session.pm delete mode 100644 lib/Vend/SessionFile.pm delete mode 100644 lib/Vend/Table/Common.pm delete mode 100644 lib/Vend/Table/DBI.pm delete mode 100644 lib/Vend/Table/DB_File.pm delete mode 100644 lib/Vend/Table/GDBM.pm delete mode 100644 lib/Vend/Table/InMemory.pm delete mode 100644 lib/Vend/Table/LDAP.pm delete mode 100644 lib/Vend/Tagref.pm delete mode 100644 lib/Vend/TextSearch.pm delete mode 100644 lib/Vend/Track.pm delete mode 100644 lib/Vend/UserDB.pm delete mode 100644 lib/Vend/Util.pm delete mode 100644 perl/Interchange.pm delete mode 100644 pod/QuickStart.pod delete mode 100644 pod/deprecated.sdf delete mode 100644 pod/mv_metadata.pod delete mode 100644 pod/mvdocs.pod delete mode 100644 pod/mvfaq.pod delete mode 100644 pod/mvrpm.pod delete mode 100644 scripts/.cvsignore delete mode 100644 scripts/compile_link.PL delete mode 100644 scripts/config_prog.PL delete mode 100644 scripts/configdump.PL delete mode 100644 scripts/dump.PL delete mode 100644 scripts/expire.PL delete mode 100644 scripts/expireall.PL delete mode 100644 scripts/interchange.PL delete mode 100644 scripts/localize.PL delete mode 100644 scripts/makecat.PL delete mode 100644 scripts/offline.PL delete mode 100644 scripts/restart.PL delete mode 100644 scripts/update.PL delete mode 100644 share/akopia/ui/admin/b-configure2.gif delete mode 100644 share/akopia/ui/admin/b-help2.gif delete mode 100644 share/akopia/ui/admin/b-items2.gif delete mode 100644 share/akopia/ui/admin/b-orders2.gif delete mode 100644 share/akopia/ui/admin/b-pages2.gif delete mode 100644 share/akopia/ui/admin/b-regenerate2.gif delete mode 100644 share/akopia/ui/admin/b-statistics2.gif delete mode 100644 share/akopia/ui/admin/back.sm.gif delete mode 100644 share/akopia/ui/admin/bg.gif delete mode 100644 share/akopia/ui/admin/bluedot.gif delete mode 100644 share/akopia/ui/admin/cleardot.gif delete mode 100644 share/akopia/ui/admin/coinlogo.jpg delete mode 100644 share/akopia/ui/admin/curve_left.gif delete mode 100644 share/akopia/ui/admin/curve_right.gif delete mode 100644 share/akopia/ui/admin/delete.gif delete mode 100644 share/akopia/ui/admin/delsm.gif delete mode 100644 share/akopia/ui/admin/down.gif delete mode 100644 share/akopia/ui/admin/folder.gif delete mode 100644 share/akopia/ui/admin/folder.open.gif delete mode 100644 share/akopia/ui/admin/greendot.gif delete mode 100644 share/akopia/ui/admin/icon_config.gif delete mode 100644 share/akopia/ui/admin/icon_design.gif delete mode 100644 share/akopia/ui/admin/icon_error.gif delete mode 100644 share/akopia/ui/admin/icon_help.gif delete mode 100644 share/akopia/ui/admin/icon_item.gif delete mode 100644 share/akopia/ui/admin/icon_merch.gif delete mode 100644 share/akopia/ui/admin/icon_orders.gif delete mode 100644 share/akopia/ui/admin/icon_pages.gif delete mode 100644 share/akopia/ui/admin/icon_people.gif delete mode 100644 share/akopia/ui/admin/icon_regen.gif delete mode 100644 share/akopia/ui/admin/icon_regen_anim.gif delete mode 100644 share/akopia/ui/admin/icon_stats.gif delete mode 100644 share/akopia/ui/admin/index.gif delete mode 100644 share/akopia/ui/admin/layout.gif delete mode 100644 share/akopia/ui/admin/left.gif delete mode 100644 share/akopia/ui/admin/plus.gif delete mode 100644 share/akopia/ui/admin/red_logo.gif delete mode 100644 share/akopia/ui/admin/reddot.gif delete mode 100644 share/akopia/ui/admin/right.gif delete mode 100644 share/akopia/ui/admin/tallyman_logo.gif delete mode 100644 share/akopia/ui/admin/up.gif delete mode 100644 share/akopia/ui/admin/widgets.gif delete mode 100644 share/akopia/ui/help/help.css delete mode 100755 share/akopia/ui/help/help_check.pl delete mode 100755 share/akopia/ui/help/help_make.pl delete mode 100644 share/akopia/ui/help/images/cleardot.gif delete mode 100644 share/akopia/ui/help/images/curve.left.help.gif delete mode 100644 share/akopia/ui/help/images/curve.right.help.gif delete mode 100644 share/akopia/ui/help/images/help.background.gif delete mode 100644 share/akopia/ui/help/src/404.html delete mode 100644 share/akopia/ui/help/src/access.main.html delete mode 100644 share/akopia/ui/help/src/access.permissions.html delete mode 100644 share/akopia/ui/help/src/affiliate.edit.html delete mode 100644 share/akopia/ui/help/src/affiliates.main.html delete mode 100644 share/akopia/ui/help/src/button.builder.html delete mode 100644 share/akopia/ui/help/src/dbdownload.main.html delete mode 100644 share/akopia/ui/help/src/dbupload.main.html delete mode 100644 share/akopia/ui/help/src/env_vars.html delete mode 100644 share/akopia/ui/help/src/export.main.html delete mode 100644 share/akopia/ui/help/src/faq.html delete mode 100644 share/akopia/ui/help/src/flex.meta.html delete mode 100644 share/akopia/ui/help/src/flex.select.html delete mode 100644 share/akopia/ui/help/src/genexport.main.html delete mode 100644 share/akopia/ui/help/src/gensql.main.html delete mode 100644 share/akopia/ui/help/src/genstats.main.html delete mode 100644 share/akopia/ui/help/src/gentable.html delete mode 100644 share/akopia/ui/help/src/glossary.main.html delete mode 100644 share/akopia/ui/help/src/group.main.html delete mode 100644 share/akopia/ui/help/src/import.main.html delete mode 100644 share/akopia/ui/help/src/index.html delete mode 100644 share/akopia/ui/help/src/item.edit.html delete mode 100644 share/akopia/ui/help/src/item.main.html delete mode 100644 share/akopia/ui/help/src/knar.main.html delete mode 100644 share/akopia/ui/help/src/layout.main.html delete mode 100644 share/akopia/ui/help/src/layoutdownload.main.html delete mode 100644 share/akopia/ui/help/src/layoutupload.main.html delete mode 100644 share/akopia/ui/help/src/license.html delete mode 100644 share/akopia/ui/help/src/logout.main.html delete mode 100644 share/akopia/ui/help/src/order.main.archived.html delete mode 100644 share/akopia/ui/help/src/order.main.pending.html delete mode 100644 share/akopia/ui/help/src/order_entry.main.html delete mode 100644 share/akopia/ui/help/src/orderstats.view.html delete mode 100644 share/akopia/ui/help/src/payment.main.html delete mode 100644 share/akopia/ui/help/src/prefs.main.html delete mode 100644 share/akopia/ui/help/src/reconfig.html delete mode 100644 share/akopia/ui/help/src/regen.main.html delete mode 100644 share/akopia/ui/help/src/search_builder.html delete mode 100644 share/akopia/ui/help/src/shipping.data.html delete mode 100644 share/akopia/ui/help/src/shipping.html delete mode 100644 share/akopia/ui/help/src/shipping.main.html delete mode 100644 share/akopia/ui/help/src/shipping.price.html delete mode 100644 share/akopia/ui/help/src/shipping.quantity.html delete mode 100644 share/akopia/ui/help/src/shipping.ups.html delete mode 100644 share/akopia/ui/help/src/stats.order.html delete mode 100644 share/akopia/ui/help/src/stats.traffic.html delete mode 100644 share/akopia/ui/help/src/tax.main.html delete mode 100644 share/akopia/ui/help/src/upload.main.html delete mode 100644 share/akopia/ui/navigation/A1.gif delete mode 100644 share/akopia/ui/navigation/A1_b.gif delete mode 100644 share/akopia/ui/navigation/A2.gif delete mode 100644 share/akopia/ui/navigation/A2_b.gif delete mode 100644 share/akopia/ui/navigation/A3.gif delete mode 100644 share/akopia/ui/navigation/A3_b.gif delete mode 100644 share/akopia/ui/navigation/B1.gif delete mode 100644 share/akopia/ui/navigation/B10.gif delete mode 100644 share/akopia/ui/navigation/B2.gif delete mode 100644 share/akopia/ui/navigation/B2_b.gif delete mode 100644 share/akopia/ui/navigation/B2_c.gif delete mode 100644 share/akopia/ui/navigation/B3.gif delete mode 100644 share/akopia/ui/navigation/B3_b.gif delete mode 100644 share/akopia/ui/navigation/B3_c.gif delete mode 100644 share/akopia/ui/navigation/B4.gif delete mode 100644 share/akopia/ui/navigation/B4_b.gif delete mode 100644 share/akopia/ui/navigation/B4_c.gif delete mode 100644 share/akopia/ui/navigation/B5.gif delete mode 100644 share/akopia/ui/navigation/B5_b.gif delete mode 100644 share/akopia/ui/navigation/B5_c.gif delete mode 100644 share/akopia/ui/navigation/B6.gif delete mode 100644 share/akopia/ui/navigation/B6_b.gif delete mode 100644 share/akopia/ui/navigation/B6_c.gif delete mode 100644 share/akopia/ui/navigation/B7.gif delete mode 100644 share/akopia/ui/navigation/B7_b.gif delete mode 100644 share/akopia/ui/navigation/B7_c.gif delete mode 100644 share/akopia/ui/navigation/B8.gif delete mode 100644 share/akopia/ui/navigation/B8_b.gif delete mode 100644 share/akopia/ui/navigation/B8_c.gif delete mode 100644 share/akopia/ui/navigation/B9.gif delete mode 100644 share/akopia/ui/navigation/B9_b.gif delete mode 100644 share/akopia/ui/navigation/B9_c.gif delete mode 100644 share/akopia/ui/navigation/akopia_logo.gif delete mode 100644 share/akopia/ui/navigation/cellbackground.gif delete mode 100644 share/akopia/ui/navigation/spacer1.gif delete mode 100644 share/akopia/ui/navigation/spacer2.gif delete mode 100644 share/akopia/ui/navigation/spacer3.gif delete mode 100644 share/akopia/ui/navigation/spacer4.gif delete mode 100644 share/akopia/ui/navigation/spacer_tall.gif delete mode 100644 test.pl delete mode 100755 win/minivend.pif delete mode 100644 win/setup.bat delete mode 100644 win/tlink.exe diff --git a/.cvsignore b/.cvsignore deleted file mode 100644 index f17fcf4fb..000000000 --- a/.cvsignore +++ /dev/null @@ -1,11 +0,0 @@ -CVS -_uid -blib -build -Makefile -pm_to_blib -build-stamp -*.pdf -.cpan.tried -install-stamp -*.tar.gz diff --git a/LICENSE b/LICENSE deleted file mode 100644 index 60549be51..000000000 --- a/LICENSE +++ /dev/null @@ -1,340 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) 19yy - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) 19yy name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. diff --git a/MANIFEST b/MANIFEST deleted file mode 100644 index 1278249ec..000000000 --- a/MANIFEST +++ /dev/null @@ -1,802 +0,0 @@ -LICENSE -MANIFEST -MANIFEST.SKIP -Makefile.PL -QuickStart -README -README.cvs -README.rpm -SPECS/interchange-4.5.7.spec -UPGRADE_FROM_MV3 -WHATSNEW -configure -dist/build/makecat.redhat -dist/build/makedirs.redhat -dist/catalog_after.cfg -dist/catalog_before.cfg -dist/construct/backup/.empty -dist/construct/catalog.cfg -dist/construct/config/additional_fields -dist/construct/config/additional_help -dist/construct/config/postcopy_commands -dist/construct/config/precopy_commands -dist/construct/dbconf/default_db/2ndDayAir.dbm -dist/construct/dbconf/default_db/Ground.dbm -dist/construct/dbconf/default_db/NextDayAir.dbm -dist/construct/dbconf/default_db/access.dbm -dist/construct/dbconf/default_db/affiliate.dbm -dist/construct/dbconf/default_db/area.dbm -dist/construct/dbconf/default_db/banner.dbm -dist/construct/dbconf/default_db/cat.dbm -dist/construct/dbconf/default_db/country.dbm -dist/construct/dbconf/default_db/gift_certs.dbm -dist/construct/dbconf/default_db/inventory.dbm -dist/construct/dbconf/default_db/locale.dbm -dist/construct/dbconf/default_db/merchandising.dbm -dist/construct/dbconf/default_db/mv_metadata.dbm -dist/construct/dbconf/default_db/order_returns.dbm -dist/construct/dbconf/default_db/orderline.dbm -dist/construct/dbconf/default_db/pricing.dbm -dist/construct/dbconf/default_db/products.dbm -dist/construct/dbconf/default_db/recurring_items.dbm -dist/construct/dbconf/default_db/recurring_orders.dbm -dist/construct/dbconf/default_db/ship_addresses.dbm -dist/construct/dbconf/default_db/transactions.dbm -dist/construct/dbconf/default_db/userdb.dbm -dist/construct/dbconf/default_db/variable.dbm -dist/construct/dbconf/mysql/2ndDayAir.dbm -dist/construct/dbconf/mysql/Ground.dbm -dist/construct/dbconf/mysql/NextDayAir.dbm -dist/construct/dbconf/mysql/access.dbm -dist/construct/dbconf/mysql/affiliate.mysql -dist/construct/dbconf/mysql/area.mysql -dist/construct/dbconf/mysql/banner.dbm -dist/construct/dbconf/mysql/cat.mysql -dist/construct/dbconf/mysql/country.mysql -dist/construct/dbconf/mysql/gift_certs.mysql -dist/construct/dbconf/mysql/inventory.mysql -dist/construct/dbconf/mysql/locale.dbm -dist/construct/dbconf/mysql/merchandising.mysql -dist/construct/dbconf/mysql/mv_metadata.dbm -dist/construct/dbconf/mysql/order_returns.mysql -dist/construct/dbconf/mysql/orderline.mysql -dist/construct/dbconf/mysql/pricing.mysql -dist/construct/dbconf/mysql/products.mysql -dist/construct/dbconf/mysql/recurring_items.mysql -dist/construct/dbconf/mysql/recurring_orders.mysql -dist/construct/dbconf/mysql/ship_addresses.mysql -dist/construct/dbconf/mysql/transactions.mysql -dist/construct/dbconf/mysql/userdb.mysql -dist/construct/dbconf/mysql/variable.dbm -dist/construct/dbconf/pgsql/2ndDayAir.dbm -dist/construct/dbconf/pgsql/Ground.dbm -dist/construct/dbconf/pgsql/NextDayAir.dbm -dist/construct/dbconf/pgsql/access.dbm -dist/construct/dbconf/pgsql/affiliate.pgsql -dist/construct/dbconf/pgsql/area.pgsql -dist/construct/dbconf/pgsql/banner.dbm -dist/construct/dbconf/pgsql/cat.pgsql -dist/construct/dbconf/pgsql/country.pgsql -dist/construct/dbconf/pgsql/gift_certs.pgsql -dist/construct/dbconf/pgsql/inventory.pgsql -dist/construct/dbconf/pgsql/locale.dbm -dist/construct/dbconf/pgsql/merchandising.pgsql -dist/construct/dbconf/pgsql/mv_metadata.dbm -dist/construct/dbconf/pgsql/order_returns.pgsql -dist/construct/dbconf/pgsql/orderline.pgsql -dist/construct/dbconf/pgsql/pricing.pgsql -dist/construct/dbconf/pgsql/products.pgsql -dist/construct/dbconf/pgsql/recurring_items.pgsql -dist/construct/dbconf/pgsql/recurring_orders.pgsql -dist/construct/dbconf/pgsql/ship_addresses.pgsql -dist/construct/dbconf/pgsql/transactions.pgsql -dist/construct/dbconf/pgsql/userdb.pgsql -dist/construct/dbconf/pgsql/variable.dbm -dist/construct/etc/log_entry -dist/construct/etc/log_transaction -dist/construct/etc/mail_receipt -dist/construct/etc/profiles.login -dist/construct/etc/profiles.order -dist/construct/etc/receipt.html -dist/construct/etc/report -dist/construct/etc/ship_notice -dist/construct/html/index.html -dist/construct/images/admin/b-configure2.gif -dist/construct/images/admin/b-help2.gif -dist/construct/images/admin/b-items2.gif -dist/construct/images/admin/b-orders2.gif -dist/construct/images/admin/b-pages2.gif -dist/construct/images/admin/b-regenerate2.gif -dist/construct/images/admin/b-statistics2.gif -dist/construct/images/admin/back.sm.gif -dist/construct/images/admin/bg.gif -dist/construct/images/admin/bluedot.gif -dist/construct/images/admin/cleardot.gif -dist/construct/images/admin/coinlogo.jpg -dist/construct/images/admin/curve_left.gif -dist/construct/images/admin/curve_right.gif -dist/construct/images/admin/delete.gif -dist/construct/images/admin/delsm.gif -dist/construct/images/admin/down.gif -dist/construct/images/admin/folder.gif -dist/construct/images/admin/folder.open.gif -dist/construct/images/admin/greendot.gif -dist/construct/images/admin/icon_config.gif -dist/construct/images/admin/icon_error.gif -dist/construct/images/admin/icon_help.gif -dist/construct/images/admin/icon_item.gif -dist/construct/images/admin/icon_orders.gif -dist/construct/images/admin/icon_pages.gif -dist/construct/images/admin/icon_people.gif -dist/construct/images/admin/icon_regen.gif -dist/construct/images/admin/icon_regen_anim.gif -dist/construct/images/admin/icon_stats.gif -dist/construct/images/admin/index.gif -dist/construct/images/admin/layout.gif -dist/construct/images/admin/left.gif -dist/construct/images/admin/plus.gif -dist/construct/images/admin/red_logo.gif -dist/construct/images/admin/reddot.gif -dist/construct/images/admin/right.gif -dist/construct/images/admin/tallyman_logo.gif -dist/construct/images/admin/up.gif -dist/construct/images/admin/widgets.gif -dist/construct/images/affiliate/hardhat.gif -dist/construct/images/bg.gif -dist/construct/images/clear.gif -dist/construct/images/gift_certificate.gif -dist/construct/images/gift_certificate_large.gif -dist/construct/images/items/gift_certificate.gif -dist/construct/images/items/gift_certificate_large.gif -dist/construct/images/items/os28004.gif -dist/construct/images/items/os28005.gif -dist/construct/images/items/os28006.gif -dist/construct/images/items/os28007.gif -dist/construct/images/items/os28008.gif -dist/construct/images/items/os28009.gif -dist/construct/images/items/os28011.gif -dist/construct/images/items/os28044.gif -dist/construct/images/items/os28057a.gif -dist/construct/images/items/os28057b.gif -dist/construct/images/items/os28057c.gif -dist/construct/images/items/os28062.gif -dist/construct/images/items/os28064.gif -dist/construct/images/items/os28065.gif -dist/construct/images/items/os28066.gif -dist/construct/images/items/os28068.gif -dist/construct/images/items/os28068a.gif -dist/construct/images/items/os28068b.gif -dist/construct/images/items/os28069.gif -dist/construct/images/items/os28070.gif -dist/construct/images/items/os28072.gif -dist/construct/images/items/os28073.gif -dist/construct/images/items/os28074.gif -dist/construct/images/items/os28075.gif -dist/construct/images/items/os28076.gif -dist/construct/images/items/os28077.gif -dist/construct/images/items/os28080.gif -dist/construct/images/items/os28081.gif -dist/construct/images/items/os28082.gif -dist/construct/images/items/os28084.gif -dist/construct/images/items/os28085.gif -dist/construct/images/items/os28086.gif -dist/construct/images/items/os28087.gif -dist/construct/images/items/os28108.gif -dist/construct/images/items/os28109.gif -dist/construct/images/items/os28110.gif -dist/construct/images/items/os28111.gif -dist/construct/images/items/os28112.gif -dist/construct/images/items/os28113.gif -dist/construct/images/items/os29000.gif -dist/construct/images/navigation/a1.gif -dist/construct/images/navigation/a2.gif -dist/construct/images/navigation/a3.gif -dist/construct/images/navigation/b1.gif -dist/construct/images/navigation/b1_b.gif -dist/construct/images/navigation/b2.gif -dist/construct/images/navigation/b2_b.gif -dist/construct/images/navigation/b3.gif -dist/construct/images/navigation/b3_b.gif -dist/construct/images/navigation/b4.gif -dist/construct/images/navigation/b4_b.gif -dist/construct/images/navigation/b5.gif -dist/construct/images/navigation/b5_b.gif -dist/construct/images/navigation/b6.gif -dist/construct/images/navigation/b6_b.gif -dist/construct/images/navigation/b7.gif -dist/construct/images/navigation/buy_now.gif -dist/construct/images/navigation/c.gif -dist/construct/images/navigation/checkout_button.gif -dist/construct/images/navigation/continue_shopping.gif -dist/construct/images/navigation/coupon_item.gif -dist/construct/images/navigation/d.gif -dist/construct/images/navigation/d1.gif -dist/construct/images/navigation/d2.gif -dist/construct/images/navigation/d3.gif -dist/construct/images/navigation/default_a.gif -dist/construct/images/navigation/default_b.gif -dist/construct/images/navigation/go.gif -dist/construct/images/navigation/go_b.gif -dist/construct/images/navigation/header_handtools.gif -dist/construct/images/navigation/header_ladders.gif -dist/construct/images/navigation/header_measuringtools.gif -dist/construct/images/navigation/header_paintingsupplies.gif -dist/construct/images/navigation/header_safetyequipment.gif -dist/construct/images/navigation/header_toolstorage.gif -dist/construct/images/navigation/logout.gif -dist/construct/images/navigation/logout_b.gif -dist/construct/images/navigation/minime1.gif -dist/construct/images/navigation/minime2.gif -dist/construct/images/navigation/orangespacer.gif -dist/construct/images/navigation/poweredby.gif -dist/construct/images/navigation/recalculate_button.gif -dist/construct/images/navigation/whitey.gif -dist/construct/images/poweredby.gif -dist/construct/images/thumb/os28004_b.gif -dist/construct/images/thumb/os28005_b.gif -dist/construct/images/thumb/os28006_b.gif -dist/construct/images/thumb/os28007_b.gif -dist/construct/images/thumb/os28008_b.gif -dist/construct/images/thumb/os28009_b.gif -dist/construct/images/thumb/os28011_b.gif -dist/construct/images/thumb/os28044_b.gif -dist/construct/images/thumb/os28057a_b.gif -dist/construct/images/thumb/os28057b_b.gif -dist/construct/images/thumb/os28057c_b.gif -dist/construct/images/thumb/os28062_b.gif -dist/construct/images/thumb/os28064_b.gif -dist/construct/images/thumb/os28065_b.gif -dist/construct/images/thumb/os28066_b.gif -dist/construct/images/thumb/os28068_b.gif -dist/construct/images/thumb/os28068a_b.gif -dist/construct/images/thumb/os28068b_b.gif -dist/construct/images/thumb/os28069_b.gif -dist/construct/images/thumb/os28070_b.gif -dist/construct/images/thumb/os28072_b.gif -dist/construct/images/thumb/os28073_b.gif -dist/construct/images/thumb/os28074_b.gif -dist/construct/images/thumb/os28075_b.gif -dist/construct/images/thumb/os28076_b.gif -dist/construct/images/thumb/os28077_b.gif -dist/construct/images/thumb/os28080_b.gif -dist/construct/images/thumb/os28081_b.gif -dist/construct/images/thumb/os28082_b.gif -dist/construct/images/thumb/os28084_b.gif -dist/construct/images/thumb/os28085_b.gif -dist/construct/images/thumb/os28086_b.gif -dist/construct/images/thumb/os28087_b.gif -dist/construct/images/thumb/os28108_b.gif -dist/construct/images/thumb/os28109_b.gif -dist/construct/images/thumb/os28110_b.gif -dist/construct/images/thumb/os28111_b.gif -dist/construct/images/thumb/os28112_b.gif -dist/construct/images/thumb/os28113_b.gif -dist/construct/images/thumb/os29000_b.gif -dist/construct/logs/.empty -dist/construct/orders/.empty -dist/construct/pages/aboutus.html -dist/construct/pages/account.html -dist/construct/pages/admin/report_def/Order%20Status.html -dist/construct/pages/admin/report_def/Products%20to%20edit.html -dist/construct/pages/admin/reports/Order%20Status.html -dist/construct/pages/admin/reports/Products%20to%20edit.html -dist/construct/pages/browse.html -dist/construct/pages/canceled.html -dist/construct/pages/contact.html -dist/construct/pages/customerservice.html -dist/construct/pages/flypage.html -dist/construct/pages/help.html -dist/construct/pages/index.html -dist/construct/pages/login.html -dist/construct/pages/logout.html -dist/construct/pages/new_account.html -dist/construct/pages/ord/basket.html -dist/construct/pages/ord/checkout.html -dist/construct/pages/privacypolicy.html -dist/construct/pages/process_return.html -dist/construct/pages/quantity.html -dist/construct/pages/query/check_orders.html -dist/construct/pages/query/order_detail.html -dist/construct/pages/query/order_return.html -dist/construct/pages/recurring_add.html -dist/construct/pages/recurring_orders.html -dist/construct/pages/recurring_orders_added.html -dist/construct/pages/recurring_orders_removed.html -dist/construct/pages/results.html -dist/construct/pages/returns.html -dist/construct/pages/ship_addresses.html -dist/construct/pages/ship_addresses_added.html -dist/construct/pages/ship_addresses_removed.html -dist/construct/pages/splash.html -dist/construct/pages/stock-alert-added.html -dist/construct/pages/stock-alert.html -dist/construct/products/2ndDayAir.csv -dist/construct/products/2ndDayAirAM.csv -dist/construct/products/3DaySelect.csv -dist/construct/products/3DaySelectRes.csv -dist/construct/products/450.csv -dist/construct/products/Ground.csv -dist/construct/products/GroundComm.csv -dist/construct/products/GroundRes.csv -dist/construct/products/NextDayAir.csv -dist/construct/products/NextDayAirSaver.csv -dist/construct/products/access.asc -dist/construct/products/affiliate.txt -dist/construct/products/area.txt -dist/construct/products/banner.txt -dist/construct/products/cat.txt -dist/construct/products/country.txt -dist/construct/products/gift_certs.txt -dist/construct/products/inventory.txt -dist/construct/products/locale.txt -dist/construct/products/merchandising.txt -dist/construct/products/mv_metadata.asc -dist/construct/products/order_returns.txt -dist/construct/products/orderline.txt -dist/construct/products/pricing.txt -dist/construct/products/products.txt -dist/construct/products/recurring_items.txt -dist/construct/products/recurring_orders.txt -dist/construct/products/route.txt -dist/construct/products/salestax.asc -dist/construct/products/ship_addresses.txt -dist/construct/products/shipping.asc -dist/construct/products/state.txt -dist/construct/products/transactions.txt -dist/construct/products/ups_zone.asc -dist/construct/products/userdb.txt -dist/construct/products/variable.txt -dist/construct/session/.empty -dist/construct/special_pages/badsearch.html -dist/construct/special_pages/canceled.html -dist/construct/special_pages/cc_not_valid.html -dist/construct/special_pages/confirmation.html -dist/construct/special_pages/failed.html -dist/construct/special_pages/interact.html -dist/construct/special_pages/missing.html -dist/construct/special_pages/needfield.html -dist/construct/special_pages/nomatch.html -dist/construct/special_pages/noproduct.html -dist/construct/special_pages/notfound.html -dist/construct/special_pages/order_security.html -dist/construct/special_pages/reconfig.html -dist/construct/special_pages/sec_faq.html -dist/construct/special_pages/security.html -dist/construct/special_pages/violation.html -dist/construct/templates/components/random -dist/construct/templates/components/specials -dist/construct/templates/components/upsell_horiz_2 -dist/construct/templates/components/upsell_horiz_3 -dist/construct/templates/fullwidth -dist/construct/templates/leftonly -dist/construct/templates/leftright -dist/construct/templates/regions/LEFTONLY_BOTTOM -dist/construct/templates/regions/LEFTONLY_TOP -dist/construct/templates/regions/LEFTRIGHT_BOTTOM -dist/construct/templates/regions/LEFTRIGHT_TOP -dist/construct/templates/regions/NOLEFT_BOTTOM -dist/construct/templates/regions/NOLEFT_TOP -dist/construct/tmp/.empty -dist/construct/upload/.empty -dist/error.log -dist/etc/.empty -dist/interchange.cfg.dist -dist/lib/UI/Primitive.pm -dist/lib/UI/pages/admin/access.html -dist/lib/UI/pages/admin/access_permissions.html -dist/lib/UI/pages/admin/advanced.html -dist/lib/UI/pages/admin/affiliates.html -dist/lib/UI/pages/admin/build_related.html -dist/lib/UI/pages/admin/button_builder.html -dist/lib/UI/pages/admin/change_t.pl -dist/lib/UI/pages/admin/compedit.html -dist/lib/UI/pages/admin/config.html -dist/lib/UI/pages/admin/customer.html -dist/lib/UI/pages/admin/customer_bill.html -dist/lib/UI/pages/admin/customer_change_pass.html -dist/lib/UI/pages/admin/customer_pref.html -dist/lib/UI/pages/admin/customer_select.html -dist/lib/UI/pages/admin/customer_ship.html -dist/lib/UI/pages/admin/customer_view.html -dist/lib/UI/pages/admin/dbdownload.html -dist/lib/UI/pages/admin/dbinfo.html -dist/lib/UI/pages/admin/do_upload.html -dist/lib/UI/pages/admin/do_upload_page.html -dist/lib/UI/pages/admin/do_view.html -dist/lib/UI/pages/admin/entry.html -dist/lib/UI/pages/admin/entry_select.html -dist/lib/UI/pages/admin/env_vars.html -dist/lib/UI/pages/admin/error.html -dist/lib/UI/pages/admin/error_item.html -dist/lib/UI/pages/admin/export_table.html -dist/lib/UI/pages/admin/flex_editor.html -dist/lib/UI/pages/admin/flex_select.html -dist/lib/UI/pages/admin/flex_select_box.html -dist/lib/UI/pages/admin/format_meta.html -dist/lib/UI/pages/admin/fr_index.html -dist/lib/UI/pages/admin/genconfig.html -dist/lib/UI/pages/admin/genreport.html -dist/lib/UI/pages/admin/genstats.html -dist/lib/UI/pages/admin/gentable.html -dist/lib/UI/pages/admin/genupload.html -dist/lib/UI/pages/admin/genxport.html -dist/lib/UI/pages/admin/group.html -dist/lib/UI/pages/admin/group_edit.html -dist/lib/UI/pages/admin/import_table.html -dist/lib/UI/pages/admin/index.html -dist/lib/UI/pages/admin/item.html -dist/lib/UI/pages/admin/item_cross.html -dist/lib/UI/pages/admin/item_edit.html -dist/lib/UI/pages/admin/item_feature.html -dist/lib/UI/pages/admin/item_inventory.html -dist/lib/UI/pages/admin/item_price.html -dist/lib/UI/pages/admin/item_up.html -dist/lib/UI/pages/admin/layout.html -dist/lib/UI/pages/admin/login.html -dist/lib/UI/pages/admin/logout.html -dist/lib/UI/pages/admin/merchandising.html -dist/lib/UI/pages/admin/order.html -dist/lib/UI/pages/admin/order_status.html -dist/lib/UI/pages/admin/order_view.html -dist/lib/UI/pages/admin/orderstats.html -dist/lib/UI/pages/admin/page.html -dist/lib/UI/pages/admin/page_edit.html -dist/lib/UI/pages/admin/page_new.html -dist/lib/UI/pages/admin/page_preview.html -dist/lib/UI/pages/admin/page_save.html -dist/lib/UI/pages/admin/payment.html -dist/lib/UI/pages/admin/preferences.html -dist/lib/UI/pages/admin/quicklinks.html -dist/lib/UI/pages/admin/reconfig.html -dist/lib/UI/pages/admin/regen.html -dist/lib/UI/pages/admin/regenerate.html -dist/lib/UI/pages/admin/report.html -dist/lib/UI/pages/admin/report_results.html -dist/lib/UI/pages/admin/report_save.html -dist/lib/UI/pages/admin/reports/order/ByAffiliate.html -dist/lib/UI/pages/admin/reports/order/Detail.html -dist/lib/UI/pages/admin/reports/order/Monthly.html -dist/lib/UI/pages/admin/reports/traffic/ByAffiliate.html -dist/lib/UI/pages/admin/search_wizard.html -dist/lib/UI/pages/admin/search_wizard2.html -dist/lib/UI/pages/admin/search_wizard3.html -dist/lib/UI/pages/admin/search_wizard_results.html -dist/lib/UI/pages/admin/ship.html -dist/lib/UI/pages/admin/ship_data.html -dist/lib/UI/pages/admin/ship_edit.html -dist/lib/UI/pages/admin/ship_range.html -dist/lib/UI/pages/admin/special/key_violation.html -dist/lib/UI/pages/admin/spread.html -dist/lib/UI/pages/admin/spread_control.html -dist/lib/UI/pages/admin/tablereport.html -dist/lib/UI/pages/admin/tax.html -dist/lib/UI/pages/admin/trafficstats.html -dist/lib/UI/pages/admin/upload_config.html -dist/lib/UI/pages/admin/upload_file.html -dist/lib/UI/pages/admin/upload_image.html -dist/lib/UI/pages/admin/upload_other.html -dist/lib/UI/pages/admin/upload_pages.html -dist/lib/UI/pages/admin/user_change_pass.html -dist/lib/UI/pages/admin/user_edit.html -dist/lib/UI/profiles/login -dist/lib/UI/profiles/order_button_build -dist/lib/UI/ui.cfg -dist/lib/UI/usertag/available_ups_internal -dist/lib/UI/usertag/available_www_shipping -dist/lib/UI/usertag/backup_database -dist/lib/UI/usertag/backup_file -dist/lib/UI/usertag/base_url -dist/lib/UI/usertag/button -dist/lib/UI/usertag/check_upload -dist/lib/UI/usertag/component -dist/lib/UI/usertag/db_columns -dist/lib/UI/usertag/db_hash -dist/lib/UI/usertag/dbinfo -dist/lib/UI/usertag/directive_value -dist/lib/UI/usertag/display -dist/lib/UI/usertag/dump_session -dist/lib/UI/usertag/e -dist/lib/UI/usertag/export_database -dist/lib/UI/usertag/field_label -dist/lib/UI/usertag/file_info -dist/lib/UI/usertag/file_navigator -dist/lib/UI/usertag/global_value -dist/lib/UI/usertag/grep_mm -dist/lib/UI/usertag/if_key_exists -dist/lib/UI/usertag/if_mm -dist/lib/UI/usertag/if_sql -dist/lib/UI/usertag/ifdef -dist/lib/UI/usertag/ifndef -dist/lib/UI/usertag/import_fields -dist/lib/UI/usertag/list_databases -dist/lib/UI/usertag/list_glob -dist/lib/UI/usertag/list_keys -dist/lib/UI/usertag/list_pages -dist/lib/UI/usertag/mm_value -dist/lib/UI/usertag/newer -dist/lib/UI/usertag/quick_table -dist/lib/UI/usertag/read_serial -dist/lib/UI/usertag/read_shipping -dist/lib/UI/usertag/read_ui_template -dist/lib/UI/usertag/regenerate -dist/lib/UI/usertag/return_to -dist/lib/UI/usertag/rotate_database -dist/lib/UI/usertag/rotate_file -dist/lib/UI/usertag/rotate_table -dist/lib/UI/usertag/row_edit -dist/lib/UI/usertag/send_help -dist/lib/UI/usertag/set_alias -dist/lib/UI/usertag/set_click -dist/lib/UI/usertag/setvar -dist/lib/UI/usertag/substitute -dist/lib/UI/usertag/title_bar -dist/lib/UI/usertag/unconfigure -dist/lib/UI/usertag/uneval -dist/lib/UI/usertag/unlink_file -dist/lib/UI/usertag/version -dist/lib/UI/usertag/widget -dist/lib/UI/usertag/with -dist/lib/UI/usertag/write_relative_file -dist/lib/UI/usertag/write_shipping -dist/lib/UI/vars/UI_EDIT_LINK -dist/lib/UI/vars/UI_STD_DBEDIT_HEAD -dist/lib/UI/vars/UI_STD_DBEDIT_TABLE -dist/lib/UI/vars/UI_STD_FILE_NAV -dist/lib/UI/vars/UI_STD_FOOTER -dist/lib/UI/vars/UI_STD_HEAD -dist/locale.error -dist/src/compile.pl -dist/src/config.h.in -dist/src/configure -dist/src/mod_perl_tlink.pl -dist/src/mvctl.c -dist/src/syscfg.in -dist/src/testcgi -dist/src/tlink.c -dist/src/tlink.pl -dist/src/vlink.c -dist/src/vlink.pl -dist/usertag/bar_button -dist/usertag/button -dist/usertag/convert_date -dist/usertag/db_date -dist/usertag/email -dist/usertag/email_raw -dist/usertag/fcounter -dist/usertag/loc -dist/usertag/rand -dist/usertag/reconfig -dist/usertag/reconfig_time -dist/usertag/reconfig_wait -dist/usertag/summary -dist/usertag/title_bar -dist/usertag/ups_query -dist/usertag/usertrack -dist/usertag/var -dist/usertag/xml_generator -eg/compact -eg/globalsub/signio -eg/grant.sql -eg/ifdef -eg/make_gnumeric.sh -extensions/quickbooks/README -extensions/quickbooks/etc/trans_quickbooks -extensions/quickbooks/ic_qb.pod -extensions/quickbooks/pages/admin/export_coa.html -extensions/quickbooks/pages/admin/export_items.html -extensions/quickbooks/pages/admin/import_items.html -extensions/quickbooks/pages/admin/index.html -extensions/quickbooks/qb.catalog.cfg -extensions/quickbooks/usertag/export_quicken_coa -extensions/quickbooks/usertag/export_quicken_items -extensions/quickbooks/usertag/import_quicken_items -extra/Business/UPS.pm -extra/File/CounterFile.pm -extra/File/Spec.pm -extra/File/Spec/OS2.pm -extra/File/Spec/Unix.pm -extra/File/Spec/VMS.pm -extra/File/Spec/Win32.pm -extra/HTML/Entities.pm -extra/IniConf.pm -extra/URI/URL.pm -hints.pl -lib/Vend/Cart.pm -lib/Vend/Config.pm -lib/Vend/Control.pm -lib/Vend/Data.pm -lib/Vend/DbSearch.pm -lib/Vend/Document.pm -lib/Vend/ECML.pm -lib/Vend/Error.pm -lib/Vend/External.pm -lib/Vend/Glimpse.pm -lib/Vend/Imagemap.pm -lib/Vend/Interpolate.pm -lib/Vend/MakeCat.pm -lib/Vend/Misc/Static.pm -lib/Vend/Order.pm -lib/Vend/Page.pm -lib/Vend/Parse.pm -lib/Vend/Parser.pm -lib/Vend/Scan.pm -lib/Vend/Search.pm -lib/Vend/Server.pm -lib/Vend/Session.pm -lib/Vend/SessionDB.pm -lib/Vend/SessionFile.pm -lib/Vend/Table/Common.pm -lib/Vend/Table/DBI.pm -lib/Vend/Table/DB_File.pm -lib/Vend/Table/GDBM.pm -lib/Vend/Table/InMemory.pm -lib/Vend/Table/LDAP.pm -lib/Vend/Tagref.pm -lib/Vend/Tags.pm -lib/Vend/TextSearch.pm -lib/Vend/Track.pm -lib/Vend/UserDB.pm -lib/Vend/Util.pm -perl/Interchange.pm -pod/deprecated.sdf -pod/mvdocs.pod -pod/mvfaq.pod -scripts/compile_link.PL -scripts/config_prog.PL -scripts/configdump.PL -scripts/dump.PL -scripts/expire.PL -scripts/expireall.PL -scripts/interchange.PL -scripts/localize.PL -scripts/makecat.PL -scripts/offline.PL -scripts/restart.PL -scripts/update.PL -share/akopia/ui/admin/b-configure2.gif -share/akopia/ui/admin/b-help2.gif -share/akopia/ui/admin/b-items2.gif -share/akopia/ui/admin/b-orders2.gif -share/akopia/ui/admin/b-pages2.gif -share/akopia/ui/admin/b-regenerate2.gif -share/akopia/ui/admin/b-statistics2.gif -share/akopia/ui/admin/back.sm.gif -share/akopia/ui/admin/bg.gif -share/akopia/ui/admin/bluedot.gif -share/akopia/ui/admin/cleardot.gif -share/akopia/ui/admin/coinlogo.jpg -share/akopia/ui/admin/curve_left.gif -share/akopia/ui/admin/curve_right.gif -share/akopia/ui/admin/delete.gif -share/akopia/ui/admin/delsm.gif -share/akopia/ui/admin/down.gif -share/akopia/ui/admin/folder.gif -share/akopia/ui/admin/folder.open.gif -share/akopia/ui/admin/greendot.gif -share/akopia/ui/admin/icon_config.gif -share/akopia/ui/admin/icon_design.gif -share/akopia/ui/admin/icon_error.gif -share/akopia/ui/admin/icon_help.gif -share/akopia/ui/admin/icon_item.gif -share/akopia/ui/admin/icon_merch.gif -share/akopia/ui/admin/icon_orders.gif -share/akopia/ui/admin/icon_pages.gif -share/akopia/ui/admin/icon_people.gif -share/akopia/ui/admin/icon_regen.gif -share/akopia/ui/admin/icon_regen_anim.gif -share/akopia/ui/admin/icon_stats.gif -share/akopia/ui/admin/index.gif -share/akopia/ui/admin/layout.gif -share/akopia/ui/admin/left.gif -share/akopia/ui/admin/plus.gif -share/akopia/ui/admin/red_logo.gif -share/akopia/ui/admin/reddot.gif -share/akopia/ui/admin/right.gif -share/akopia/ui/admin/tallyman_logo.gif -share/akopia/ui/admin/up.gif -share/akopia/ui/admin/widgets.gif -share/akopia/ui/help/help.css -share/akopia/ui/help/help_check.pl -share/akopia/ui/help/help_make.pl -share/akopia/ui/help/images/cleardot.gif -share/akopia/ui/help/images/curve.left.help.gif -share/akopia/ui/help/images/curve.right.help.gif -share/akopia/ui/help/images/help.background.gif -share/akopia/ui/help/src/404.html -share/akopia/ui/help/src/access.main.html -share/akopia/ui/help/src/access.permissions.html -share/akopia/ui/help/src/affiliate.edit.html -share/akopia/ui/help/src/affiliates.main.html -share/akopia/ui/help/src/button.builder.html -share/akopia/ui/help/src/customer.html -share/akopia/ui/help/src/customer.view.html -share/akopia/ui/help/src/dbdownload.main.html -share/akopia/ui/help/src/dbupload.main.html -share/akopia/ui/help/src/env_vars.html -share/akopia/ui/help/src/export.main.html -share/akopia/ui/help/src/faq.html -share/akopia/ui/help/src/flex.meta.html -share/akopia/ui/help/src/flex.select.html -share/akopia/ui/help/src/genconfig.main.html -share/akopia/ui/help/src/genexport.main.html -share/akopia/ui/help/src/gensql.main.html -share/akopia/ui/help/src/genstats.main.html -share/akopia/ui/help/src/gentable.html -share/akopia/ui/help/src/glossary.main.html -share/akopia/ui/help/src/group.main.html -share/akopia/ui/help/src/help_template.txt -share/akopia/ui/help/src/import.main.html -share/akopia/ui/help/src/index.html -share/akopia/ui/help/src/item.edit.html -share/akopia/ui/help/src/item.main.html -share/akopia/ui/help/src/knar.main.html -share/akopia/ui/help/src/layout.edit.html -share/akopia/ui/help/src/layout.main.html -share/akopia/ui/help/src/layoutdownload.main.html -share/akopia/ui/help/src/layoutupload.main.html -share/akopia/ui/help/src/license.html -share/akopia/ui/help/src/logout.main.html -share/akopia/ui/help/src/matrix.main.html -share/akopia/ui/help/src/merch.build_related.html -share/akopia/ui/help/src/order.main.archived.html -share/akopia/ui/help/src/order.main.pending.html -share/akopia/ui/help/src/order.view.html -share/akopia/ui/help/src/order_entry.main.html -share/akopia/ui/help/src/orderstats.view.html -share/akopia/ui/help/src/payment.main.html -share/akopia/ui/help/src/prefs.main.html -share/akopia/ui/help/src/reconfig.html -share/akopia/ui/help/src/regen.main.html -share/akopia/ui/help/src/search_builder.html -share/akopia/ui/help/src/shipping.data.html -share/akopia/ui/help/src/shipping.edit.html -share/akopia/ui/help/src/shipping.html -share/akopia/ui/help/src/shipping.main.html -share/akopia/ui/help/src/shipping.price.html -share/akopia/ui/help/src/shipping.quantity.html -share/akopia/ui/help/src/shipping.ups.html -share/akopia/ui/help/src/shipping.weight.html -share/akopia/ui/help/src/stats.order.html -share/akopia/ui/help/src/stats.traffic.html -share/akopia/ui/help/src/tax.main.html -share/akopia/ui/help/src/upload.main.html -share/akopia/ui/navigation/A1.gif -share/akopia/ui/navigation/A1_b.gif -share/akopia/ui/navigation/A2.gif -share/akopia/ui/navigation/A2_b.gif -share/akopia/ui/navigation/A3.gif -share/akopia/ui/navigation/A3_b.gif -share/akopia/ui/navigation/B1.gif -share/akopia/ui/navigation/B10.gif -share/akopia/ui/navigation/B2.gif -share/akopia/ui/navigation/B2_b.gif -share/akopia/ui/navigation/B2_c.gif -share/akopia/ui/navigation/B3.gif -share/akopia/ui/navigation/B3_b.gif -share/akopia/ui/navigation/B3_c.gif -share/akopia/ui/navigation/B4.gif -share/akopia/ui/navigation/B4_b.gif -share/akopia/ui/navigation/B4_c.gif -share/akopia/ui/navigation/B5.gif -share/akopia/ui/navigation/B5_b.gif -share/akopia/ui/navigation/B5_c.gif -share/akopia/ui/navigation/B6.gif -share/akopia/ui/navigation/B6_b.gif -share/akopia/ui/navigation/B6_c.gif -share/akopia/ui/navigation/B7.gif -share/akopia/ui/navigation/B7_b.gif -share/akopia/ui/navigation/B7_c.gif -share/akopia/ui/navigation/B8.gif -share/akopia/ui/navigation/B8_b.gif -share/akopia/ui/navigation/B8_c.gif -share/akopia/ui/navigation/B9.gif -share/akopia/ui/navigation/B9_b.gif -share/akopia/ui/navigation/B9_c.gif -share/akopia/ui/navigation/akopia_logo.gif -share/akopia/ui/navigation/cellbackground.gif -share/akopia/ui/navigation/spacer1.gif -share/akopia/ui/navigation/spacer2.gif -share/akopia/ui/navigation/spacer3.gif -share/akopia/ui/navigation/spacer4.gif -share/akopia/ui/navigation/spacer_tall.gif -test.pl diff --git a/MANIFEST.SKIP b/MANIFEST.SKIP deleted file mode 100644 index 303e749d1..000000000 --- a/MANIFEST.SKIP +++ /dev/null @@ -1,60 +0,0 @@ -(^|/)_ -(^|/)\.# -,v$ -(^|/)\.cvs -(^|/)configure.in$ -/session/[^.] -/session\. -/tmp/[^.] -\.bak$ -\.gz$ -\.old -\.swp$ -\.zip$ -_$ -~$ -^MANIFEST\.bak -^Makefile$ -^Makefile.old$ -\.linux.warned -\bCVS\b -\bRCS\b -^lib/Business -^lib/File -^lib/HTML -^lib/IniConf.pm -^lib/URI -^test(/|$) -^pod/.*\.pdf -^bin(/|$) -^blib(/|$) -^catalogs/[^.].* -^control(/|$) -^custom(/|$) -^dev(/|$) -^dist/compat(/|$) -^dist/barry(/|$) -^dist/basic(/|$) -^dist/books(/|$) -^dist/test(/|$) -^dist/etc/[^.] -^dist/lib/MiniMate(/|$) -^dist/mvmall(/|$) -^dist/simple(/|$) -^doc/.*[^d] -^help(/|$) -^lib/src/config.cache$ -^lib/src/config.h$ -^lib/src/config.log$ -^lib/src/config.status$ -^lib/src/syscfg$ -^pm_to_blib$ -^pod/mvtags.pod$ -^pod/QuickStart.pod$ -^pod/mvrpm.pod$ -^run(/|$) -^scripts/.*[a-z]$ -^scripts/initp.PL$ -^win(/|$) -^windows(/|$) -^work(/|$) diff --git a/Makefile.PL b/Makefile.PL deleted file mode 100644 index 2fe1173e3..000000000 --- a/Makefile.PL +++ /dev/null @@ -1,859 +0,0 @@ -use ExtUtils::MakeMaker; -require ExtUtils::Install; - -BEGIN { - eval { - require FindBin; - chdir $FindBin::RealBin; - }; -} - -use Config; - -use File::Copy; -use File::Path; -use File::Basename; -use File::Find; -use Data::Dumper; -use Cwd; -require 5.005; - -use strict; - -use vars (qw($VERSION $DOWARN)); - -my $TermRead; -my $Prompt_sub; -my @mods_to_get; -my @remove_old; -my $Lock_troubles; - -$VERSION = '4.5.7'; - -# See if we have the CPAN module -my $Cpan = 0; -my $CpanInit; -eval { - die if $^O =~ /win32/i; - unless( -f ".cpan.tried") { - open TMP, ">.cpan.tried" and close TMP; - require CPAN::Config; - require CPAN; - import CPAN; - } - unlink ".cpan.tried"; -}; -unless($@) { - $Cpan = 1; -} - -my @os_hints; -eval { - # gets package 'mvhints' - require 'hints.pl'; - @os_hints = mvhints::get_hints(); -}; - -my @chown_files = qw/ - error.log - etc - /; - -# Now we can use the libraries -use lib './lib'; - - -my $origdir = fastcwd(); - -# See if we have Term::ReadLine::Perl -eval { - require Term::ReadLine; - require Term::ReadLine::Perl; - require Term::ReadKey; - $TermRead = 1; -}; -unless($@) { - $ENV{PERL_RL} = 'Perl'; -} -elsif ($Cpan) { - push @mods_to_get, 'Term::ReadKey', 'Term::ReadLine::Perl'; -} - -my $term; -if($TermRead) { - $term = new Term::ReadLine 'MakeFile'; - $Prompt_sub = sub { - my($prompt, $default) = @_; - $prompt .= "[$default] " - if defined $default && !$ENV{PERL_RL}; - return $term->readline($prompt, $default); - }; -} - -my $Windows = $^O =~ /win32/i ? 1 : 0; - -sub compare_file { - my($first,$second) = @_; - return 0 unless -s $first == -s $second; - local $/; - open(FIRST, $first) or return undef; - open(SECOND, $second) or (close FIRST and return undef); - binmode(FIRST); - binmode(SECOND); - $first = ''; - $second = ''; - while($first eq $second) { - read(FIRST, $first, 1024); - read(SECOND, $second, 1024); - last if length($first) < 1024; - } - close FIRST; - close SECOND; - $first eq $second; -} - -sub get_rename { - my ($bn, $extra) = @_; - $bn =~ s:(.*/)::; - my $dn = $1; - $extra = '~' if ! $extra; - return $dn . "/.$extra." . $bn; -} - -sub install_file { - my ($srcdir, $targdir, $filename) = @_; - my $srcfile = $srcdir . '/' . $filename; - my $targfile = $targdir . '/' . $filename; - my $mkdir = File::Basename::dirname($targfile); - my $extra; - my $perms; - - if(! -d $mkdir) { - File::Path::mkpath($mkdir) - or die "Couldn't make directory $mkdir: $!\n"; - } - - if (! -f $srcfile) { - die "Source file $srcfile missing.\n"; - } - else { - $perms = (stat(_))[2] & 0777; - } - - if( -f $targfile and ! compare_file($srcfile, $targfile) ) { - open (GETVER, $targfile) - or die "Couldn't read $targfile for version update: $!\n"; - while() { - /VERSION\s+=.*?\s+([\d.]+)/ or next; - $extra = $1; - $extra =~ tr/0-9//cd; - last; - } - $extra = '~' unless $extra; - my $rename = get_rename($targfile, $extra); - while (-f $rename ) { - push @remove_old, $rename; - $extra .= '~'; - $rename = get_rename($targfile, $extra); - } - push @remove_old, $rename; - rename $targfile, $rename - or die "Couldn't rename $targfile to $rename: $!\n"; - } - - File::Copy::copy($srcfile, $targfile) - or die "Copy of $srcfile to $targfile failed: $!\n"; - chmod $perms, $targfile; - -} - -sub copyright_prompt { - - print < - - Interchange is free under the terms of the GNU General Public License. - -EOF -} - -sub my_prompt { - return $_[1] if $MV::Default{force}; - return &$Prompt_sub(@_) - if defined $Prompt_sub; - my($pr) = shift || '? '; - my($def) = shift; - my($ans); - - print $pr; - print "[$def] " if $def; - chomp($ans = ); - $ans ? $ans : $def; -} - -sub cpan_get { - my($module, $libdir, $prompt) = @_; - - print <{makepl_arg} = "INSTALLPRIVLIB=$libdir/lib INSTALLARCHLIB=$libdir/lib INSTALLSITELIB=$libdir/lib INSTALLMAN1DIR=none INSTALLMAN3DIR=none INSTALLSITEARCH=$libdir/lib INSTALLDIRS=perl"; - $CPAN::Config->{keep_source_where} = "$libdir/src" - unless -w $CPAN::Config->{keep_source_where}; - $CPAN::Config->{cpan_home} = "$libdir/src" - unless -w $CPAN::Config->{cpan_home}; - $CPAN::Config->{build_dir} = "$libdir/src" - unless -w $CPAN::Config->{build_dir}; - return CPAN::install($module); -} - -sub extra_libs { - - my ($realdir) = @_; - # Do the extra library checks - - my @extra_lib_dirs; - my @extra_lib_files; - # We will use our own version of File::CounterFile always - push @extra_lib_dirs, 'File'; - push @extra_lib_files, 'File/CounterFile.pm'; - - eval { - require IniConf; - }; - if ($@) { - push @extra_lib_files, 'IniConf.pm'; - } - - eval { - require HTML::Entities; - }; - if ($@) { - push @extra_lib_dirs, 'HTML'; - push @extra_lib_files, 'HTML/Entities.pm'; - } - - eval { - require Business::UPS; - }; - if ($@) { - push @extra_lib_dirs, 'Business'; - push @extra_lib_files, 'Business/UPS.pm'; - } - - eval { - require Storable; - }; - unless ($@) { - my $def = 's'; - print <_db_storable") - or die "creat _db_storable: $!\n"; - print TSTORABLE "REMOVE THIS FILE TO STOP USING Storable\n"; - close TSTORABLE; - } - if ($ask =~ /^\s*(y|s)/i) { - open(TSTORABLE, ">_session_storable") - or die "creat _session_storable: $!\n"; - print TSTORABLE "REMOVE THIS FILE TO STOP USING Storable\n"; - close TSTORABLE; - } - } - - COPYEXTRA: { - my $cpdir = '.'; - mkdir $cpdir, 0777 unless -d $cpdir; - mkdir "$cpdir/lib", 0777 unless -d "$cpdir/lib"; - for(@extra_lib_dirs) { - next if -d "$cpdir/lib/$_"; - mkdir "$cpdir/lib/$_", 0777 or die "mkdir $cpdir/lib/$_: $!\n"; - } - for(@extra_lib_files) { - File::Copy::copy ("extra/$_", "lib/$_") - or die "Couldn't copy $_: $!\n"; - } - } -} - -sub mk_initp { - my ($ref) = @_; - local($Data::Dumper::Terse); - $Data::Dumper::Terse = 1; - open (INITP, ">scripts/initp.pl") - or die "Can't write initp.pl: $!\n"; - print INITP '$MV::Self = '; - print INITP Dumper($ref); - print INITP ";\n1;"; - close INITP; -} - -sub initialize { - my %X; -#warn "Got to initialize\n"; - $X{INSTALLDIRS} = "perl"; - $X{EXE_FILES} = [qw( - scripts/compile_link - scripts/config_prog - scripts/configdump - scripts/dump - scripts/expire - scripts/expireall - scripts/localize - scripts/makecat - scripts/interchange - scripts/offline - scripts/restart - scripts/update - )]; - $X{PL_FILES} = {qw( - scripts/compile_link.PL scripts/compile_link - scripts/config_prog.PL scripts/config_prog - scripts/configdump.PL scripts/configdump - scripts/dump.PL scripts/dump - scripts/expire.PL scripts/expire - scripts/expireall.PL scripts/expireall - scripts/localize.PL scripts/localize - scripts/makecat.PL scripts/makecat - scripts/interchange.PL scripts/interchange - scripts/offline.PL scripts/offline - scripts/restart.PL scripts/restart - scripts/update.PL scripts/update - )}; - - if(! $MV::Default{force} and ! $MV::Default{PREFIX}) { - if($> == 0) { - $MV::Default{PREFIX} = '/usr/local/interchange'; - } - else { - $MV::Default{PREFIX} = "$ENV{HOME}/interchange"; - } - } - if($MV::Default{rpmbuilddir} or $MV::Default{RPMBUILDDIR}) { - $X{RPMBUILDDIR} = $MV::Default{rpmbuilddir} || $MV::Default{RPMBUILDDIR}; - $MV::Default{RPMBUILDDIR} = $X{RPMBUILDDIR}; - } - - return %X if $MV::Default{nocopy}; - - my $uid = $MV::Default{INTERCHANGE_USER}; - if(-f "_uid") { - open UID, '_uid' - or die "Cannot read _uid file: $!\n"; - chomp($uid = ); - close UID; - } - -#warn "Got past open UID file , uid=$uid user=$> Windows=$Windows\n"; - - GETUID: { - if($> == 0 and ! $MV::Default{INTERCHANGE_USER} and ! $Windows) { - $uid = my_prompt( - qq{Interchange cannot be run as root. Which user should run Interchange? }, - ($uid || 'interch'), - ); - my $name = getpwnam($uid); - if(! $name) { - my $ans = my_prompt("User name $uid doesn't exist. Use anyway? ", 'n'); - last GETUID if $ans =~ /^\s*y/i; - redo GETUID; - } - } - elsif ($uid = $MV::Default{INTERCHANGE_USER}) { - # do nothing - } - elsif (! $Windows) { - eval { - $uid = scalar getpwuid($>); - }; - } - } -#warn "Got past GETUID\n" ; #if $X{RPMBUILDDIR}; - if($uid) { - open(UID, ">_uid") - or die "Can't write uid file: $!\n"; - print UID "$uid"; - close UID; - } - - for(@Config{ - qw/ - archlib - archlibexp - privlib - privlibexp - sitearch - sitearchexp - sitelib - sitelibexp - / - }) - { - die "Can't install in Perl library!\n" if $MV::Default{PREFIX} eq $_; - } - - my $realdir; - - if(! $MV::Default{final}) { - ©right_prompt(); - - $realdir = my_prompt( - "Where is your Interchange to be installed? ", - $MV::Default{PREFIX}, - ); - print "\n"; - $realdir =~ s:[\\/]\s*$::; - $MV::Default{final} = $realdir if $Windows; - } - else { - $realdir = $MV::Default{final}; - } - -#warn "Got past realdir prompt\n" ; #if $X{RPMBUILDDIR}; - - $X{INSTALLSCRIPT} = "$realdir/bin"; - $X{INSTALLBIN} = "$realdir/bin"; - $X{INSTALLARCHLIB} = "$realdir"; - $X{INSTALLPRIVLIB} = "$realdir/lib"; - if(! $MV::Default{final}) { - $X{INSTALLMAN1DIR} = "$realdir/doc" - if ! $MV::Default{INSTALLMAN1DIR}; - $X{INSTALLMAN3DIR} = "$realdir/doc" - if ! $MV::Default{INSTALLMAN3DIR}; - } - - if (! -f 'pod/mvtags.pod') { - chdir 'lib' - or die "Cannot chdir to ./lib: $!\n"; - system("$^X Vend/Tagref.pm > ../pod/mvtags.pod"); - chdir '..' - or die "Cannot chdir back to ..: $!\n"; - } - my @re_link = qw( interchange bin/minivend ); - my @re_dir = qw( simple/download ); - my @re_copy = qw( - ../pod/mvtags.pod simple/download/mvtags.pod - ../pod/mvdocs.pod simple/download/mvdocs.pod - ../pod/mvfaq.pod simple/download/mvfaq.pod - ); - -#warn "Got past mvtags build\n" ; #if $X{RPMBUILDDIR}; - - if($Windows) { - mk_initp(\%X); - my ($in, $out); - my $ref = delete $X{PL_FILES}; - if(! -d 'bin') { - File::Path::mkpath('bin'); - } - my (@f); - while ( ($in, $out) = each %$ref) { - system "$^X $in"; - if($?) { - die "Error making $in into $out: $!\n"; - } - my $targ = $out; - $targ =~ s:.*/::; - File::Copy::copy($out, 'bin'); - push @f, "bin/$targ"; - system "pl2bat.bat $out"; - if($?) { - warn "PL2BAT did not succeed for $out.\n"; - } - else { - File::Copy::copy("$out.bat", 'bin'); - push @f, "bin/$targ.bat"; - } - } - # Check for extra needed libraries - extra_libs($realdir); - my $wanted = sub { - return unless -f $_; - push @f, $File::Find::name; - }; - File::Find::find($wanted, 'lib'); - for (@f) { - install_file('.', $realdir, $_); - } - } -#warn "Got past Windows stuff\n" ; #if $X{RPMBUILDDIR}; - if($MV::Default{final}) { - $ = 0; - for(glob "_*") { - File::Copy::copy($_, $realdir); - } - open(MANI, "MANIFEST") - or die "No MANIFEST?\n"; - my (@files) = ; - close MANI; - -#warn "Got past open MANIFEST\n" ; #if $X{RPMBUILDDIR}; - - # install share/ files from MANIFEST - chomp(my @sharefiles = grep m:^share/:, @files); - install_file('.', $realdir, $_) for @sharefiles; - -#warn "Got past install SHAREFILES\n" ; #if $X{RPMBUILDDIR}; - - # build context-sensitive admin help files - my $sourcedir = cwd(); - BUILD_HELP_HTML: { - chdir "$realdir/share/akopia/ui/help" or last BUILD_HELP_HTML; - local $/; - open HELP_MAKE, "help_make.pl" or - warn("Unimportant: Unable to open help_make.pl\n"), last BUILD_HELP_HTML; - my $help_make = ; - close HELP_MAKE; - print "Generating admin help HTML\n"; - eval $help_make; - warn("Unimportant: Error generating admin help HTML\n") if $@; - } - chdir $sourcedir; - -#warn "Got past install Helpfiles\n" ; #if $X{RPMBUILDDIR}; - - # install dist/ files from MANIFEST - @files = grep m:^dist/:, @files; - chomp(@files); - @files = map { s:^dist/::; $_} @files; - - # New install_file routine - chdir 'dist'; - for (@re_dir) { - mkdir $_, 0777 - or @re_copy = (); - } - while ($_ = shift @re_copy ) { - my $from = $_; - my $to = shift @re_copy; - push @files, $to; - File::Copy::copy($from, $to); - } - for (@files) { - install_file('.', $realdir, $_); - } - chdir '..'; - -#warn "Got past install all files\n" ; #if $X{RPMBUILDDIR}; - - for(@os_hints) { - my ($condition, $routine) = @$_; - unless (ref($condition) =~ /CODE/ and ref($routine) =~ /CODE/) { - warn <(); - my $odir = cwd(); - chdir $realdir - or die "Cannot chdir to $realdir: $!\n"; - $routine->(); - - } - while ($_ = shift @re_link ) { - my $from = $_; - my $to = shift @re_link; - push @files, $to; - my $odir = cwd(); - chdir $realdir - or die "Cannot chdir to $realdir: $!\n"; - eval { - symlink($from, $to); - }; - chdir $odir; - } - if(-f "$realdir/_uid" and $> == 0) { - open(UID, "$realdir/_uid") - or die "Can't open uid file: $!\n"; - my $uid = ; - close UID; - $MV::Default{INTERCHANGE_UID} = getpwnam($uid); - $MV::Default{INTERCHANGE_GID} = getgrnam($uid); - for(@chown_files) { - chown $MV::Default{INTERCHANGE_UID}, - $MV::Default{INTERCHANGE_GID}, - "$realdir/$_"; - } - } - chdir '..'; - if(@remove_old) { - my $msg = <MM::install; - s/\ninstall :.*/$new/; - $_; -} - - my %mv_specific = qw/ - PREFIX 1 FORCE 1 FINAL 1 RPMBUILDDIR 1 INTERCHANGE_USER 1 - /; - my %delete; - use Getopt::Long; - my @saveargs = @ARGV; - my %optctl = ( - 'junk' => sub { 1 }, - '<>' => sub { - my ($arg) = @_; - #warn "checking option $arg\n"; - my ($opt, $val); - if($arg !~ /=/) { - $opt = $arg; - $val = 1; - } - else { - ($opt, $val) = split /=/, $arg, 2; - } - - $delete{$arg} = 1 if $mv_specific{uc $opt}; - - $MV::Default{$opt} = $val; - return; - }, - ); - - my @options = ( qw/ - junk - <> - / ); - - Getopt::Long::config(qw/permute/); - GetOptions(\%optctl, @options) - or die "Bad option get\n"; - -# use Data::Dumper; -# $Data::Dumper::Terse = $Data::Dumper::Indent = 2; -# print "ARGV: " . Dumper(\@ARGV); -# print "OPT: " . Dumper(\%MV::Default); - - @ARGV = grep ! $delete{$_}, @saveargs; - -if($Windows) { - &initialize; -} -else { - WriteMakefile( - NAME => "Interchange", - MAN3PODS => { - 'pod/mvdocs.pod' => 'blib/man3/mvdocs.8', - 'pod/mvtags.pod' => 'blib/man3/mvtags.8', - 'pod/mvfaq.pod' => 'blib/man3/mvfaq.8', - }, - DISTNAME => "interchange", - clean => { - FILES=> "lib/IniConf.pm _uid _db_storable _session_storable lib/File/CounterFile.pm scripts/initp.pl scripts/compile_link scripts/config_prog scripts/configdump scripts/dump scripts/expire scripts/localize scripts/expireall scripts/makecat scripts/interchange scripts/offline scripts/restart scripts/update dist/simple/download/mvdocs.pod dist/simple/download/mvtags.pod dist/simple/download/mvfaq.pod pod/mvtags.pod", - }, - - dist => { - CI => "ci -l -t-Initial", - SUFFIX => ".gz", - DIST_DEFAULT => 'all tardist', - COMPRESS => "gzip -9f", - ZIP_FLAGS => '-pr9', - }, - VERSION_FROM => "scripts/interchange.PL", - EXE_FILES => [], - CONFIGURE => \&initialize, - ); -} diff --git a/QuickStart b/QuickStart deleted file mode 100644 index 2d5f9d840..000000000 --- a/QuickStart +++ /dev/null @@ -1,753 +0,0 @@ -Interchange V4.5.7 - -Copyright (C) 1996-2000 Akopia, Inc. - -This program is free software; you can redistribute it -and/or modify it under the terms of the GNU General Public -License as published by the Free Software Foundation; either -version 2 of the License, or (at your option) any later -version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public -License along with this program; if not, write to the Free -Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, -MA 02111-1307 USA. - - -Welcome to Interchange! - --------------------------------------------------------------- - - QUICK START - -Intro - This document is a subset of the complete Interchange documentation. - Most of the information contained here is is duplicated in the general - Interchange documentation. This document is designed to give you a - starting point. Interchange is fairly complex and can take a lot of - time and effort to master. Don't Panic. - -What happened to Minivend and Tallyman? - First there was Minivend, the open source ecommerce system begun by - Mike Heins about five years ago. Thousands of sites are using it, - and it has evolved into a powerful and versatile tool over the years. - Separately, Akopia was started by an experienced ecommerce development - team with the goal of making a sophisticated open source ecommerce - system that's intuitive and easy to use. Minivend was very feature - rich, but difficult to learn and use. Tallyman was intuitive, and - had great content management features, but lacked many of Minivend's - capabilities. So we joined forces, and Interchange is the result. - Interchange 4.5 replaces both Tallyman and Minivend. Minivend users - will find the upgrade to Interchange relatively painless. Tallyman - users will not be as lucky. Keep an eye on the web site and the - mailing list for more details. In order to preserve compatibility, - the name "minivend", and prefixes like "mv_" and "MVC_" will still - appear in source code and configuration files. - -Requirements: - - Perl 5.005 or higher - Interchange is written (almost) entirely in Perl. No extra - modules are required to work, but some may be necessary to - extend Interchange's functionality. - - Web Server - Any web server with which you are familiar and has CGI - capabilities should work. Apache is most commonly used. - The install scripts assume Apache is installed and running. - -Install Walkthrough - - Make sure that you have user permissions to do the following: - Write on the catalog install directory - Read on the Apache config file (if possible) - Write on the cgi-bin for the web server - - Unpack the distribution: - gzip -dc interchange-4.5.x.tar.gz | tar xvf - - - Run the configuration script: - ./configure - - You will be asked to enter the path for the install directory - for the Interchange distribution. If you have the Storable - module installed, you may be asked how you would like to use - it. Choose the default. - -Demo Store Install Walkthrough - - We'll be walking the whole install and setup process. The text - that you'll see during the install will be displayed with <-- next - to it. What's marked with --> is what you'll need to enter in. - - In order to begin, you will need permissions on your server for - the following: - Write on the catalog install directory - Write on the Interchange install directory - Write on the cgi-bin directory - Write on the httpd document root - - If you don't know what any of this means, you might as well - stop now. Akopia can set you up with a server with Interchange - pre-installed and you won't have to know anything about server - permissions or root access. See the web site for more details. - - To begin: - - Change to the directory in which Interchange is installed: - cd /home/user/interchange - Run the makecat script - bin/makecat - - You will be asked a series of questions at this point. If you - want to change the answers to any of these questions later, it - can be done through the editing of the configuration scripts. - The installer does its best to pick defaults that will work best - with your configuration. Most of the time the default responses - will work just fine. - -<--Select a short, mnemonic name for the catalog. This will be -<--used to set the defaults for naming the catalog, executable, -<--and directory, so you will have to type in this name frequently. - -<--NOTE: This will be the name of 'vlink' or 'tlink', the link CGI -<--program. Depending on your CGI setup, it may also have the -<--extension .cgi added. - -<--If you are doing the demo for the first time, you might use "construct". - - This will be the name of your catalog. The installer will use this - name as the unique identifier for this catalog. This will be the - name of the cgi script that intercepts interchange requests. It - will also be used as the default for the directory in which to - store catalog files. - -<--Catalog name? --->construct - - I chose "construct" as the catalog name in this case. - -<--makecat -- Interchange catalog installation program. - -<--*** We will be making a catalog named 'construct'. *** - - -<--New configuration file '/home/sonny/akopia/tmp/interchange/etc/makecat.cfg' - -<--If you are using the Apache or NCSA web server, Interchange can set -<--some of the default parameters for you by reading the file. - -<--If you use the Netscape Enterprise server or other non-NCSA HTTP server, -<--enter 'none' -- the information, if any, will not be useful. - - -<--Try using the UP arrow at some of the prompts -- you have the -<--Term::ReadLine module installed, and Interchange may find some -<--default values in your HTTP server configuration file. You can -<--cycle among them with the UP and DOWN arrows. - -<--Enter path to httpd.conf file: /usr/local/apache/conf/httpd.conf --->/usr/local/apache/conf/httpd.conf - -<--This demo configuration sometimes requires root permissions, -<--depending on your ISP. It needs to copy a few files to the CGI -<--and HTML directories. - -<--You must either have your own CGI directory, or be able to run -<--a CGI with an extension like '.cgi'. - -<--If you will be operating only on directories owned by the -<--user you are running this as, you will be able to do -<--everything. - - -<--Since there was no master configuration file, we will ask -<--some questions to help set initial defaults for making this -<--and future catalogs. - -<--Interchange can set many of the defaults for you if it knows the server -<--name that is going to be used. - -<--Enter the default server that should be used. This is only a default, to -<--determine the *first* one that will be looked at -- you will be given -<--a choice of all available servers. - -<--There is a "history" mechanism that will allow you to use the up -<--and down arrows on your terminal (assuming you have a standard terminal) -<--to cycle between possible choices. This should contain the available -<--servers. - -<--Default server? localhost --->localhost - - It is the name at which the web server is receiving connections. - Interchange will also be running on this server. - - -<--We need to know if all of your CGI programs are run as a file ending -<--in .cgi or some other extension, or whether you have your own personal -<--CGI directory. - -<--Do you have a CGI directory? y --->y - -<--# The location of the normal CGI directory. This is a -<--# file path, not a script alias. -<--# -<--# If all of your CGI programs must end in .cgi, this is -<--# should be the same as your HTML directory. -<--# - -<--CgiDir? [/usr/local/httpd/cgi-bin] --->/usr/local/httpd/cgi-bin - -<--# -<--# The URL-style location of the normal CGI directory. -<--# Only used to set the default for the CgiUrl setting. -<--# -<--# DO NOT PUT A TRAILING /. -<--# -<--# http://www.virtual.com/cgi-bin/prog -<--# ^^^^^^^^ -<--# -<--# If you have no CGI-bin directory, (your CGI programs end -<--# in .cgi), leave this blank. -<--# - - -<--CgiBase? /cgi-bin --->/cgi-bin - - This is the URL to the cgi program for your catalog (example in - this case). This would be the script-alias in the httpd.conf set - up for your cgi-bin. - - -<--# The base directory for HTML for this (possibly virtual) domain. -<--# This is a directory path name, not a URL -- it is your HTML -<--# directory. -<--# - -<--DocumentRoot? /home/ic_user/public_html --->/home/ic_user/public_html - - This is the directory path to your html document root. A number of - static elements of your catalog will be stored here. - - -<--# This is a directory path name (not a URL) where the administration user -<--# interface images from share/ should be copied to. These will normally be -<--# shared by all catalogs. Often this is the same as your DocumentRoot. -<--# - -<--ShareDir? /home/ic_user/public_html --->/home/ic_user/public_html - - If you wish to use the same admin interface for all of your catalogs, the - common files can be shared in this directory. - -<--# The URL base for the administration user interface images. Sets the -<--# Variable UI_IMG directive in the UI configuration file, ui.cfg. -<--# This is a URL fragment, not an entire URL. If you set ShareDir to be -<--# the same as DocumentRoot, this would just be a '/'. -<--# -<--# -<--# ^ -<--# - -<--ShareUrl? / --->/ - -<--# The directory where the Interchange software is installed. -<--# - - -<--VendRoot? /home/ic_user/interchange --->/home/ic_user/interchange - -<--# -<--# DIRECTORY where the Interchange catalog directories will go. These -<--# are the catalog files, such as the ASCII database source, -<--# Interchange page files, and catalog.cfg file. Catalogs will -<--# be an individual subdirectory of this directory. -<--# - -<--BaseDir? /home/ic_user/catalogs --->/home/ic_user/catalogs - -<--# The user name the Interchange server runs under on this machine. This -<--# should not be the same as the user that runs the HTTP server (i.e. -<--# NOT nobody). -<--# - - -<--InterchangeUser? ic_user --->ic_user - -<--######### END BASE CONFIGURATION ######### -<-- -<--######### BEGINNING CATALOG CONFIGURATION ######### - -<--During many of the following operations, defaults are placed in -<--a buffer for you. You may use the up and down arrows to toggle -<--between the defaults. - -<--If you made a mistake on a *previous* entry and realize that -<--in a later one, if you enter ONLY an @ sign and press return you -<--should be returned to the previous step. - -<--# The server name, something like: www.company.com -<--# www.company.com:8000 -<--# www.company.com/~yourname -<--# -<--Server name? [localhost] --->localhost - -<--# The type of demo catalog to use. Standard types -<--# distributed are: -<--# -<--# simple -- database-based catalog, not really simple 8-) -<--# barry -- Barry's Books version of "simple" -<--# -<--# If you have defined your own custom template catalog, -<--# you can enter it's name. -<--# -<--# If you are new to Interchange and not a sophisticated web designer, -<--# use "barry" to start with. - -<--DemoType? [construct] --->construct - - Currently "Construct Something" ('construct') is the only included - demo. The Interchange Developer Resource at http://developer.akopia.com/ - has others, and a future release of Interchange will include the - 'foundation' demo which will be much simplified to assist you in building - your own store. - - -<--# The email address where orders for this catalog should go. -<--# To have a secure catalog, either this should be a local user name and -<--# not go over the Internet -- or use the PGP option. -<--# - - -<--MailOrderTo? ic_user --->orders@construct.net - - The construct catalog is designed to email the orders once they are - made to the person responsible for handling orders. - -<--# Where the Interchange files for this catalog will go, pages, -<--# products, config and all. This should not be in HTML document -<--# space! Usually a 'catalogs' directory below your home directory -<--# works well. Remember, you will want a test catalog and an online -<--# catalog. -<--# - - -<--CatRoot? [/home/ic_user/catalogs/example] --->/home/ic_user/catalogs/example - - This is where the catalog config files and working data go. The - default location is a good place for this. - - -<--# The location of the normal CGI directory. This is a -<--# file path, not a script alias. -<--# -<--# If all of your CGI programs must end in .cgi, this is -<--# should be the same as your HTML directory. -<--# - -<--CgiDir? /home/ic_user/public_html/cgi-bin - - A file with your store's name will go into the cgi-bin dir. This - program (vlink or tlink) will provide the bridge between the web - server and the Interchange server. - - -<--# The URL location of the CGI program, without the http:// -<--# or server name. -<--# -<--# http://www.virtual.com/cgi-bin/prog -<--# ^^^^^^^^^^^^^ -<--# -<--# http://www.virtual.com/program.cgi -<--# ^^^^^^^^^^^^ -<--# - - -<--CgiUrl? /cgi-bin/construct --->/cgi-bin/construct - - This is the URL to the cgi program for your catalog (construct in - this case). This would be the script-alias in the httpd.conf set - up for your cgi-bin. - -<--# -<--# Additional URL locations for the CGI program, as with CgiUrl. -<--# This is used when calling the catalog from more than one place, -<--# perhaps because your secure server is not the same name as the -<--# non-secure one. -<--# -<--# http://www.secure.domain/secure-bin/prog -<--# ^^^^^^^^^^^^^^^^ -<--# -<--# We set it to the name of the catalog by default to enable the -<--# internal HTTP server. -<--# - - -<--Aliases? /construct --->/construct - - This one is "beyond the scope of this document." For the purposes - of getting started, this option can be safely ignored. For those - who really want to know what it is for right now, see the - documentation for interchange.cfg. - - -<--# The base directory for HTML for this (possibly virtual) domain. -<--# This is a directory path name, not a URL -- it is your HTML -<--# directory. -<--# - - -<--DocumentRoot? [/usr/local/httpd/htdocs] --->/usr/local/httpd/htdocs - -<--# Where the sample HTML files (not Interchange pages) should be -<--# installed. There is a difference. Usually a subdirectory of -<--# your HTML directory. -<--# - - -<--SampleHtml? [/usr/local/httpd/htdocs/construct] --->/usr/local/httpd/htdocs/construct - - Interchange will create a directory under the html document root in - order to store the static html pages for the demo catalog. - -<--# Where the image files should be copied. A directory path -<--# name, not a URL. -<--# - - -<--ImageDir? [/home/sonny/public_html/construct/images] --->/home/sonny/public_html/construct/images - - Additionally, a place for the images. - -<--# The URL base for the sample images. Sets the ImageDir -<--# directive in the catalog configuration file. This is a URL -<--# fragment, not a directory or file name. -<--# -<--# -<--# ^^^^^^^^^^^^^^ -<--# - - -<--ImageUrl? [/construct/images] - - This is the URL for the images stored in the directory created - above. Interchange needs this in order to create tags - for the catalog's dynamic pages. - - -<--Interchange can use either UNIX- or internet-domain sockets. -<--Most ISPs would prefer UNIX mode, and it is more secure. - -<--If you already have a program there, or use a common program -<--and the FullURL directive, select NONE. You will then need -<--to copy the program by hand or otherwise ensure its presence. - -<--INET or UNIX mode? [UNIX] --->UNIX - - Again, this is outside of this document's scope. UNIX sockets - will work just fine. - -<--Do you use CGIWRAP or SUEXEC? [n] --->n - - If you don't know the answer, no should be the right answer. - - Does some stuff. - -<--Your company name: .....................Construct Something - -<--Interchange has a workable internal database, but many things will -<--work better (and a few worse) if you use a SQL database. Interchange -<--can configure MySQL and Postgres in a test configuration. - -<--Set to 1 if you want to use MySQL or Postgres: .. --->0 - - For the purposes of this document, we are going to use the - Interchange internal database. Consult the documentation for - information about using your SQL database of choice. - -<--You can use Interchange's companion configuration -<--interface, to do upload/download of files, manipulation of -<--the database, reconfiguration of the catalog, and much more. - -<--To enable the UI, you will need a "super-user" account -<--name that has full access. - -<--The initial password is "pass". CHANGE IT! You can do this -<--by going to the admin menu and selecting the superuser and -<--then "Change password". - -<--Account name that will control this catalog: ..ic_user --->ic_user -<--Administrative password: ...............pass --->pass - - -<--Found system commands to run. - - does some more stuff - -<--Found additional system commands to run. - -<--To enable image upload feature, you need to make a symbolic -<--link of the image base directory into your catalog directory. - -<--uct/images /home/sonny/akopia/catalogs/construct1"? ..y --->y - - Say yes here if you would like to be able to upload images - into Interchange. - -<--Add catalog to interchange.cfg? y - - This will make your catalog available to the interchange server. - Now you're done with the catalog configuration. - - - That's it. The demo store should be installed and ready to go. Now - you want to start the Interchange server: - - /home/user/interchange/bin/interchange - - You should see something like this: - -Low traffic settings. -Calling UI.... -....UI is loaded.... -Interchange V4.5.7 -Configuring catalog example...done. -Interchange server started in INET and UNIX mode(s) (process id 22200) - - At this point the Interchange server should be running and waiting - for connections. - -Show off demo store - Some day we will expand this section. - -The administrative side - The administrative site has built-in context sensitive help. If - you want more detailed information on how a particular section - works, click on the "help" link in the upper right hand corner of - the screen. A help window will pop up and explain what's going on - in that particular area. - - How to get there - Go to http://localhost/cgi-bin/construct/admin/login.html - changing whatever is necessary for your setup. If you see an - Akopia Interchange login prompt, that's a very good sign it - worked. If not, that is a good sign that it didn't work. - - Logging In - When you installed the store, you set up a "super-user" and - password for control of the administrative section. This is - it; enter the correct information and click login. - - The main page - This is the front admin page. From here you can access the - other pages of the admin section. - - Orders - From here you can view a summary of all of the orders as - well as select a particular order to view in complete - detail. This is the command center for viewing and - managing the site's transaction information. - - Archive Orders - Archive (remove from the active list, but store for future - reference) orders which have been processed. - - Enter Order - Enter a new order into the Interchange system. - - Customers - Customer information can be managed from this interface. - You can deactivate accounts or delete customers as well as - view and modify information about each one. - - Active Customers - Show active customers - - Inactive Customers - Show inactive customers - - Create New Customer - Enter a new customer into the Interchange system. - - Items - From this page, you can manipulate your product data, as well - as merchandising and inventory. - - Item List - List items in product database. - - Create New Item - Add an item to the Interchange system. - - Content - This section allows you to upload, download, edit, and create - site content. - - Page Edit - Edit an existing page. - - File Transfer - Upload and download Interchange and catalog files. - Page Edit - Edit an existing page. - - Design - Configure the site design for your catalog. - - Site Layout - This is the layout editor which allows you some control over the - layout of the site, allowing you to organize logical categories - for pages and items. - - Search Builder - Interchange searches can be constructed and executed from - this interface. This can be used for generating actual - code for searches or just doing something you thought up - but don't have an interface for. - - Button Builder - This interface is for generating buttons and links to - Interchange components. - - Generate Static - Interchange can be configured to generate any of your catalog - pages statically so that they are not parsed each time they - are requested. - - File Transfer - Upload and download Interchange and catalog files. - - Page Edit - Edit an existing page. - - Merchandising - Allows you to set up and manipulate quantity pricing, up-sell, - promotions, and affiliates. - - Product Merchandising - Control merchandising parameters for products. - - Affiliates - The affiliates feature lets referral orders from other web - sites be flagged and recorded for the purposes of reimbursing - the affiliate or simply for research purposes. Here, you - can add or remove affiliates. - - Generate "Others who" . . . - Generate links for "Others who bought this product" products. - - Reporting - Interchange keeps statistics on both order information and - web site traffic. - - Orders - Report on order stats - - Traffic - Report site traffic stats - - Custom - Run custom reports on your catalog. - - Administration - Various site/catalog administration tools. - - Info - Interchange system information - - Tax - Tax definitions can be set up here. - - Shipping - Shipping options and tables are configured and manipulated - from this interface. - - Payment - From this interface, you set whether your accept or don't - accept each payment method. - - Access - Control administrative access for Interchange users with - varying degrees of granularity. - - Preferences - A high-level interface to some Interchange system variables - used to control the environment. - - Knar Editor - The Knar is an acronym for "Knar's not a registry." That - is in fact exactly what it is: a random collection of - Interchange system variables and flags. This is a low level - interface to control the environment. - - Edit - Modify Knar variables. - - Import Data - Import data into the Interchange tables. - - Export - Export data from the Interchange tables. - - Spreadsheet - A spreadsheet-format editor for Knar variables. - - New Entry - Create a new variable. - - Re-Select Table - Link to the table configurator. - - Table - Tables can be imported into or exported from the interchange - database, as well as viewed and edited. Some of the tables - you might want to import or export: inventory, pricing, - shipping info. - - Apply Changes - Updates the Interchange system to apply your changes. If - you change a tax rate or a shipping option, for example, it - won't affect the live site until you apply changes. - - - -Interesting files - interchange.cfg - catalog.cfg - -In future versions of this document: - -Where everything went -What's going on underneath the hood? -Anatomy of a catalog -Anatomy of an Interchange page diff --git a/README b/README deleted file mode 100644 index d6533356a..000000000 --- a/README +++ /dev/null @@ -1,200 +0,0 @@ -Interchange V4.5.7 (BETA) - -Copyright (C) 1996-2000 Akopia, Inc. - -Originally based on Vend 0.2 -Copyright 1995 by Andrew M. Wilcox - -Portions from Vend 0.3 -Copyright 1995,1996 by Andrew M. Wilcox - -This program is free software; you can redistribute it -and/or modify it under the terms of the GNU General Public -License as published by the Free Software Foundation; either -version 2 of the License, or (at your option) any later -version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public -License along with this program; if not, write to the Free -Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, -MA 02111-1307 USA. - - -Welcome to Interchange! This program is completely unsupported, without -warranty of any kind. The author is interested in problems, suggestions, -or comments, but does not have time to offer free individual support -in most cases. See the Interchange website at http://www.akopia.com/ -for more information. - -------------------------------------------------------------------- - - I N T E R C H A N G E - -Interchange is a full-featured electronic catalog system (commonly known -as a shopping cart) with online ordering capability. It is a high-end -database access and retrieval system with SQL support via the Perl DBI. - -A full list of its features is available at: - - http://www.akopia.com/ - -IMPORTANT NOTE: Interchange 4.5.7 absolutely REQUIRES Perl 5.005 or Perl 5.6. - -The information you need is in the following files: - - README This file: Copyright info, roadmap to installation - and pointers to support system - - LICENSE Your Interchange license -- please read. - - QuickStart Document to help you install Interchange - - WHATSNEW Change information for all versions in this - version family. - - MANIFEST List of all core distribution files. - -Major files/directories in the distribution: - - Makefile.PL The installation script. - - dist/ The distribution files, exclusive of executable - files and modules. Includes: - - interchange.cfg.dist Distribution interchange.cfg - construct/ The new catalog demo application - src/ C and Perl code for CGI links - lib/ User interface - usertag/ Some fairly-standard usertags - - extra/ Some not-always-needed Perl libraries. - - lib/ The library modules needed to run Interchange. - - pod/ Manual pages, viewable with perldoc. - - scripts/ The executable files, relocated to bin/ in the run - directory. - - test.pl The installation test script. - -------------------------------------------------------------------- - -UNIX INSTALLATION ------------------- -Here is the short version: - - gzip -dc interchange-4.5.7.tar.gz | tar xvf - - cd interchange-4.5.7 - ./configure - -The 'configure' script is basically a shortcut for: - - perl Makefile.PL - make - make test && make install - -Then you will need to make your first Interchange catalog. See the -section 'DEMO' below. - -Remember to check http://developer.akopia.com/ for documentation and -help from other users if you have any trouble. - -PLEASE NOTE: -After making configuration changes, make sure to restart the server. -It won't take but a few seconds, and changes in configurable options -don't take effect until it is done. You may even change a page and not -see the effect until the server is restarted. - -WINDOWS INSTALLATION --------------------- -Interchange will not yet run reliably on Windows. - -------------------------------------------------------------------- - - D E M O - -There is a demo application included called "construct". - -To install the demo, go to the directory where you installed Interchange -(default is "interchange" in your home directory, /usr/local/interchange -for root installations, or /usr/lib/interchange for RPM installations) -and run: - - bin/makecat construct - - or - - bin/makecat any_id_you_pick - -Follow the prompts and after restarting the Interchange server you -should be able to access the demo catalog. - -Please note that some functionality (notably the reporting features) -may not be available if you are not using an SQL database such as -MySQL or PostgreSQL. - -Visit http://demo.akopia.com/ to see a live demo on our servers. - -------------------------------------------------------------------- - - D O C U M E N T A T I O N - -The documentation is in several man pages and HTML files in the doc/ -subdirectory of the main Interchange directory. - -There is extended documentation available at -http://developer.akopia.com/ -which includes user-annotated documentation, HTML versions of the manual, -and a user-contributed code library. - -------------------------------------------------------------------- - - A V A I L A B I L I T Y - A N D - C O M P A T I B I L I T Y - -Interchange 4 has been tested on Linux, FreeBSD, Solaris 2.x, and Digital -UNIX/Tru64. Its predecessor Minivend 3 also reportedly runs on SCO, AIX, -and other Unix ports. It should work on any UNIX or Win32 OS with Perl -5.005 or higher. - -IMPORTANT NOTE FOR BSD USERS: Interchange has been known to segfault when -reading sockets on Perl. This occurs more frequently on a busy system. -The workaround is to set in minivend.cfg: - - MaxServers 0 - Housekeeping 1 - -Windows does not support fork(), so the server runs in the foreground. There -are other differences, and there may be portablity problems. Interchange is -not yet tested to run on Windows; the canonical installation is UNIX. - -------------------------------------------------------------------- - - K N O W N P R O B L E M S - -BSDI, FreeBSD, Net BSD: - You will need to make sure the following are in effect - in minivend.cfg: - - MaxServers 0 - Housekeeping 1 - - Expect lots of crashes if you don't do this. - -Apache with SUEXEC: - VLINK/UNIX socket mode will not work well unless you do the - install as a normal user. If you are going to support multiple - users, you must use TLINK/INET mode. - -Windows: - Interchange will not work properly with Windows. No strategy - has been yet developed for providing reliable operation on Windows. - -------------------------------------------------------------------- diff --git a/README.rpm b/README.rpm deleted file mode 100644 index daaf25a0c..000000000 --- a/README.rpm +++ /dev/null @@ -1,111 +0,0 @@ -NAME - icrpm - Interchange RPM for Redhat Systems - - VERSION - - 4.5.7 - -SYNOPSIS - rpm -Uvh interchange-4.5.7-1.rpm - -DESCRIPTION - The Interchange 4 RPM is designed to integrate Interchange with a stock - Redhat installation. It places logs and run files in fairly standard - locations, i.e.: - - Configuration - Configuration file is /etc/interchange.cfg. It is only writable by - root. - - Data - Catalog directories, at least the demos, are located in - /var/lib/interchange. - - Invocation - Invocation is the normal /etc/rc.d startup method. Interchange - installs to be active in run levels 3, 4, and 5; to be killed in - all. - - IMPORTANT NOTE: Do not expect /usr/lib/interchange/bin/restart to - work! - - Interchange uses a special invocation script, located at - /usr/lib/bin/interchange, to start the Interchange server. This is - called by /etc/rc.d/init.d/interchange. - - Run Run files go in /var/run/interchange/*. The subdirectory is needed - to allow the Interchange user ID to write/create files. - - Logs - Logs go in /var/log/interchange/*. The subdirectory is needed to - allow the Interchange user ID to write/create files. - -ASSUMPTIONS - The Interchange RPM makes several assumptions: - - Stock Apache - Interchange relies upon the following things in the Apache - installation: - - For Red Hat Linux 6.x: - -- Server root in /home/httpd - -- ScriptAlias /cgi-bin/ /home/httpd/cgi-bin/ - - For Red Hat Linux 7.x: - -- Server root in /var/www - -- ScriptAlias /cgi-bin/ /var/www/cgi-bin/ - - In general: - -- Hostname as revealed by `hostname` is the ServerName - -- SuExec not enabled - - If you have SuExec enabled, you are responsible for changing - permissions and running parameters appropriately. You can typically - disable SuEXEC by running `chmod u-s /usr/bin/suexec'. - - If you want to continue to user suexec, you will have to compile the - appropriate INET mode link program and use it instead of VLINK. - - Logs - Logs are located in /var/log/interchange. Interchange drops a file - in /etc/logrotate.d to do log rotation. - - Run files - To place the logs, configuration, and run files in standard - Red Hat/LSB locations, Interchange relies on a special invocation - from /usr/lib/bin/interchange. In other words, don't expect - /usr/lib/interchange/bin/restart to work. - - Interchange will be started by this command: - - /etc/rc.d/init.d/interchange start - - and will be re-started by this command: - - /etc/rc.d/init.d/interchange restart - - or possibly: - - /usr/lib/bin/interchange -r - - The run files, i.e. UNIX-domain socket, catalog status files, will - be placed in /var/run/interchange. That directory must be - owned/writable by the interchange user ID. - -USING INTERCHANGE - When the installation finishes, you should be able to access the - installed demo catalog: - - http://localhost/construct/ - - The initial user name is "interchange", and the password is "pass". - CHANGE IT. - -SEE ALSO - Documentation and other information on Interchange is at: - - http://developer.akopia.com/ - -AUTHOR - Mike Heins, . Questions should be directed to the - Interchange user list, . diff --git a/SPECS/interchange-4.5.6.spec b/SPECS/interchange-4.5.6.spec deleted file mode 100644 index f48c8324c..000000000 --- a/SPECS/interchange-4.5.6.spec +++ /dev/null @@ -1,208 +0,0 @@ -%define interchange_version 4.5.6 -%define interchange_package interchange -%define interchange_user interch -%define build_cats construct - -%define see_base For a description of Interchange see http://www.akopia.com/ - -Name: interchange -Summary: Interchange is a powerful database access and HTML templating daemon focused on e-commerce. -Group: Applications/Internet -Version: 4.5.6 -Copyright: GNU General Public License -Release: 5 -URL: http://developer.akopia.com/ -Packager: Mike Heins -Distribution: Red Hat Linux Applications CD -Vendor: Akopia, Inc. -Source: http://ftp.minivend.com/interchange/beta/interchange-4.5.6.tar.gz -Provides: interchange -Obsoletes: interchange - -BuildRoot: /var/tmp/interchange - -# From the manual -%description -Interchange is the most powerful free shopping cart system available today. Its features -and power rival the costliest commercial systems. - -%prep -%setup - -%build -mkdir -p $RPM_BUILD_ROOT -perl Makefile.PL \ - rpmbuilddir=$RPM_BUILD_ROOT \ - INTERCHANGE_USER=%{interchange_user} \ - PREFIX=$RPM_BUILD_ROOT/usr/lib/interchange \ - INSTALLMAN1DIR=$RPM_BUILD_ROOT/usr/man/man1 \ - INSTALLMAN3DIR=$RPM_BUILD_ROOT/usr/man/man8 \ - force=1 -make > /dev/null -make test -RBR=$RPM_BUILD_ROOT -MBD=$RPM_BUILD_DIR/%{interchange_package}-%{version} -if test -z "$RBR" -o "$RBR" = "/" -then - echo "RPM_BUILD_ROOT has stupid value" - exit 1 -fi -rm -rf $RBR -mkdir -p $RBR -mkdir -p $RBR/usr/doc/%{interchange_package}-%{version} -make install -gzip $RBR/usr/man/man*/* 2>/dev/null -cp extra/HTML/Entities.pm $RBR/usr/lib/interchange/build -cp extra/IniConf.pm $RBR/usr/lib/interchange/build -cp QuickStart WHATSNEW README README.rpm README.cvs $RBR/usr/doc/%{interchange_package}-%{version} -chown -R root.root $RBR -cd $RBR/usr/lib/interchange -export PERL5LIB=$RBR/usr/lib/interchange/lib -export MINIVEND_ROOT=$RBR/usr/lib/interchange -perl -pi -e 's:^\s+LINK_FILE\s+=>.*: LINK_FILE => "/var/run/interchange/socket",:' bin/compile_link -bin/compile_link -build src -sh build/makedirs.redhat -sh build/makecat.redhat %{build_cats} 2>/dev/null -find $RBR/var/lib/interchange -type d | xargs chmod 755 -find $RBR/usr/lib/interchange/bin -type f | xargs chmod 755 - -#mkdir $RBR/var/log/interchange -for i in %{build_cats} -do - touch $RBR/var/log/interchange/$i.error.log - ln -s ../../../log/$i.error.log $RBR/var/lib/interchange/$i/error.log -done -mv interchange.cfg $RBR/etc/interchange.cfg -ln -s /etc/interchange.cfg . -rm -f error.log -ln -s /var/log/interchange/error.log . -chmod +r $RBR/etc/interchange.cfg - -%install - -%pre -if test -x /etc/rc.d/init.d/interchange -then - /etc/rc.d/init.d/interchange stop > /dev/null 2>&1 - #echo "Giving interchange a couple of seconds to exit nicely" - sleep 5 -fi - -# Create an interch user. Do not report any problems if it already -# exists. We do it first so it won't error on chmod -useradd -M -r -d /var/lib/interchange -s /bin/bash -c "Interchange server" %{interchange_user} 2> /dev/null || true - -%files -%config(noreplace) /etc/interchange.cfg -%config(noreplace) /etc/logrotate.d/interchange -%config /etc/rc.d/init.d/interchange -/home/httpd/cgi-bin/construct -/home/httpd/html/construct -/home/httpd/html/akopia -/var/lib/interchange/construct -/usr/sbin/interchange -/usr/lib/interchange -/usr/man/man1 -/usr/man/man8 -/usr/doc/%{interchange_package}-%{version} -%dir /var/lib/interchange -/var/log/interchange -/var/run/interchange - -%post -# Make Interchange start/shutdown automatically when the machine does it. -/sbin/chkconfig --add interchange - -# Change permissions so that the user that will run the Interchange daemon -# owns all database files. -chown -R %{interchange_user}.%{interchange_user} /var/lib/interchange -chown -R %{interchange_user}.%{interchange_user} /var/log/interchange -chown -R %{interchange_user}.%{interchange_user} /var/run/interchange - -for i in %{build_cats} -do - ln -s /home/httpd/html/$i/images /var/lib/interchange/$i - chown %{interchange_user}.%{interchange_user} /home/httpd/cgi-bin/$i - chmod 4755 /home/httpd/cgi-bin/$i -done - -# Set the hostname -HOST=`hostname` -perl -pi -e "s/RPM_CHANGE_HOST/$HOST/g" /var/lib/interchange/*/catalog.cfg /var/lib/interchange/*/products/variable.txt /home/httpd/html/construct/index.html - -# Get to a place where no random Perl libraries should be found -cd /usr - -status=`perl -e "require HTML::Entities and print 1;" 2>/dev/null` -if test "x$status" != x1 -then - mkdir -p /usr/lib/interchange/lib/HTML 2>/dev/null - cp /usr/lib/interchange/build/Entities.pm /usr/lib/interchange/lib/HTML 2>/dev/null -fi - -status=`perl -e "require IniConf and print 1;" 2>/dev/null` -if test "x$status" != x1 -then - cp /usr/lib/interchange/build/IniConf.pm /usr/lib/interchange/lib 2>/dev/null -fi - -status=`perl -e "require Storable and print 1;" 2>/dev/null` -if test "x$status" != x1 -then - rm -f /usr/lib/interchange/_*storable -fi - -missing= -for i in MD5 MIME::Base64 URI::URL SQL::Statement Safe::Hole -do - status=`perl -e "require $i and print 1;" 2>/dev/null` - if test "x$status" = x1 - then - echo > /dev/null - else - missing="$missing $i" - fi -done - -WARNDEST=/usr/doc/%{interchange_package}-%{version}/WARNING_YOU_ARE_MISSING_SOMETHING -if test -n "$missing" -then - echo "" >> $WARNDEST - echo "MISSING Perl modules:" >> $WARNDEST - echo "" >> $WARNDEST - echo "$missing" >> $WARNDEST - echo "" >> $WARNDEST - echo "Interchange catalogs will work without them, but the admin interface" >> $WARNDEST - echo "will not. You need to install them for the UI to work." >> $WARNDEST - echo "" >> $WARNDEST - echo "Try:" >> $WARNDEST - echo "" >> $WARNDEST - echo " perl -MCPAN -e \"install Bundle::Interchange\"" >> $WARNDEST - echo "" >> $WARNDEST -fi - -# Restart in the same way that interchange will be started normally. -# Would like to start, but then cannot pass RedHat tests -#/etc/rc.d/init.d/interchange start >/dev/null 2>/dev/null - -# Allow Interchange to start and print a message before we exit -#sleep 2 -#echo "" -#echo You should now be able to access the Interchange demos with: -#echo "" -#echo " http://$HOST/construct" - -%preun -if test -x /etc/rc.d/init.d/interchange -then - /etc/rc.d/init.d/interchange stop > /dev/null -fi -# Remove autostart of interchange -if test $1 = 0 -then - /sbin/chkconfig --del interchange -fi - -rm -rf /var/run/interchange/* -rm -rf /var/lib/interchange/*/images -rm -rf /usr/lib/interchange/lib/HTML diff --git a/SPECS/interchange-4.5.7.spec b/SPECS/interchange-4.5.7.spec deleted file mode 100644 index 9ca13c120..000000000 --- a/SPECS/interchange-4.5.7.spec +++ /dev/null @@ -1,208 +0,0 @@ -%define interchange_version 4.5.7 -%define interchange_package interchange -%define interchange_user interch -%define build_cats construct - -%define see_base For a description of Interchange see http://www.akopia.com/ - -Name: interchange -Summary: Interchange is a powerful database access and HTML templating daemon focused on e-commerce. -Group: Applications/Internet -Version: 4.5.7 -Copyright: GNU General Public License -Release: 1 -URL: http://developer.akopia.com/ -Packager: Mike Heins -Distribution: Red Hat Linux Applications CD -Vendor: Akopia, Inc. -Source: http://ftp.minivend.com/interchange/beta/interchange-4.5.7.tar.gz -Provides: interchange -Obsoletes: interchange - -BuildRoot: /var/tmp/interchange - -# From the manual -%description -Interchange is the most powerful free shopping cart system available today. Its features -and power rival the costliest commercial systems. - -%prep -%setup - -%build -mkdir -p $RPM_BUILD_ROOT -perl Makefile.PL \ - rpmbuilddir=$RPM_BUILD_ROOT \ - INTERCHANGE_USER=%{interchange_user} \ - PREFIX=$RPM_BUILD_ROOT/usr/lib/interchange \ - INSTALLMAN1DIR=$RPM_BUILD_ROOT/usr/man/man1 \ - INSTALLMAN3DIR=$RPM_BUILD_ROOT/usr/man/man8 \ - force=1 -make > /dev/null -make test -RBR=$RPM_BUILD_ROOT -MBD=$RPM_BUILD_DIR/%{interchange_package}-%{version} -if test -z "$RBR" -o "$RBR" = "/" -then - echo "RPM_BUILD_ROOT has stupid value" - exit 1 -fi -rm -rf $RBR -mkdir -p $RBR -mkdir -p $RBR/usr/doc/%{interchange_package}-%{version} -make install -gzip $RBR/usr/man/man*/* 2>/dev/null -cp extra/HTML/Entities.pm $RBR/usr/lib/interchange/build -cp extra/IniConf.pm $RBR/usr/lib/interchange/build -cp QuickStart WHATSNEW README README.rpm README.cvs $RBR/usr/doc/%{interchange_package}-%{version} -chown -R root.root $RBR -cd $RBR/usr/lib/interchange -export PERL5LIB=$RBR/usr/lib/interchange/lib -export MINIVEND_ROOT=$RBR/usr/lib/interchange -perl -pi -e 's:^\s+LINK_FILE\s+=>.*: LINK_FILE => "/var/run/interchange/socket",:' bin/compile_link -bin/compile_link -build src -sh build/makedirs.redhat -sh build/makecat.redhat %{build_cats} 2>/dev/null -find $RBR/var/lib/interchange -type d | xargs chmod 755 -find $RBR/usr/lib/interchange/bin -type f | xargs chmod 755 - -#mkdir $RBR/var/log/interchange -for i in %{build_cats} -do - touch $RBR/var/log/interchange/$i.error.log - ln -s ../../../log/$i.error.log $RBR/var/lib/interchange/$i/error.log -done -mv interchange.cfg $RBR/etc/interchange.cfg -ln -s /etc/interchange.cfg . -rm -f error.log -ln -s /var/log/interchange/error.log . -chmod +r $RBR/etc/interchange.cfg - -%install - -%pre -if test -x /etc/rc.d/init.d/interchange -then - /etc/rc.d/init.d/interchange stop > /dev/null 2>&1 - #echo "Giving interchange a couple of seconds to exit nicely" - sleep 5 -fi - -# Create an interch user. Do not report any problems if it already -# exists. We do it first so it won't error on chmod -useradd -M -r -d /var/lib/interchange -s /bin/bash -c "Interchange server" %{interchange_user} 2> /dev/null || true - -%files -%config(noreplace) /etc/interchange.cfg -%config(noreplace) /etc/logrotate.d/interchange -%config /etc/rc.d/init.d/interchange -/home/httpd/cgi-bin/construct -/home/httpd/html/construct -/home/httpd/html/akopia -/var/lib/interchange/construct -/usr/sbin/interchange -/usr/lib/interchange -/usr/man/man1 -/usr/man/man8 -/usr/doc/%{interchange_package}-%{version} -%dir /var/lib/interchange -/var/log/interchange -/var/run/interchange - -%post -# Make Interchange start/shutdown automatically when the machine does it. -/sbin/chkconfig --add interchange - -# Change permissions so that the user that will run the Interchange daemon -# owns all database files. -chown -R %{interchange_user}.%{interchange_user} /var/lib/interchange -chown -R %{interchange_user}.%{interchange_user} /var/log/interchange -chown -R %{interchange_user}.%{interchange_user} /var/run/interchange - -for i in %{build_cats} -do - ln -s /home/httpd/html/$i/images /var/lib/interchange/$i - chown %{interchange_user}.%{interchange_user} /home/httpd/cgi-bin/$i - chmod 4755 /home/httpd/cgi-bin/$i -done - -# Set the hostname -HOST=`hostname` -perl -pi -e "s/RPM_CHANGE_HOST/$HOST/g" /var/lib/interchange/*/catalog.cfg /var/lib/interchange/*/products/variable.txt /home/httpd/html/construct/index.html - -# Get to a place where no random Perl libraries should be found -cd /usr - -status=`perl -e "require HTML::Entities and print 1;" 2>/dev/null` -if test "x$status" != x1 -then - mkdir -p /usr/lib/interchange/lib/HTML 2>/dev/null - cp /usr/lib/interchange/build/Entities.pm /usr/lib/interchange/lib/HTML 2>/dev/null -fi - -status=`perl -e "require IniConf and print 1;" 2>/dev/null` -if test "x$status" != x1 -then - cp /usr/lib/interchange/build/IniConf.pm /usr/lib/interchange/lib 2>/dev/null -fi - -status=`perl -e "require Storable and print 1;" 2>/dev/null` -if test "x$status" != x1 -then - rm -f /usr/lib/interchange/_*storable -fi - -missing= -for i in MD5 MIME::Base64 URI::URL SQL::Statement Safe::Hole -do - status=`perl -e "require $i and print 1;" 2>/dev/null` - if test "x$status" = x1 - then - echo > /dev/null - else - missing="$missing $i" - fi -done - -WARNDEST=/usr/doc/%{interchange_package}-%{version}/WARNING_YOU_ARE_MISSING_SOMETHING -if test -n "$missing" -then - echo "" >> $WARNDEST - echo "MISSING Perl modules:" >> $WARNDEST - echo "" >> $WARNDEST - echo "$missing" >> $WARNDEST - echo "" >> $WARNDEST - echo "Interchange catalogs will work without them, but the admin interface" >> $WARNDEST - echo "will not. You need to install them for the UI to work." >> $WARNDEST - echo "" >> $WARNDEST - echo "Try:" >> $WARNDEST - echo "" >> $WARNDEST - echo " perl -MCPAN -e \"install Bundle::Interchange\"" >> $WARNDEST - echo "" >> $WARNDEST -fi - -# Restart in the same way that interchange will be started normally. -# Would like to start, but then cannot pass RedHat tests -#/etc/rc.d/init.d/interchange start >/dev/null 2>/dev/null - -# Allow Interchange to start and print a message before we exit -#sleep 2 -#echo "" -#echo You should now be able to access the Interchange demos with: -#echo "" -#echo " http://$HOST/construct" - -%preun -if test -x /etc/rc.d/init.d/interchange -then - /etc/rc.d/init.d/interchange stop > /dev/null -fi -# Remove autostart of interchange -if test $1 = 0 -then - /sbin/chkconfig --del interchange -fi - -rm -rf /var/run/interchange/* -rm -rf /var/lib/interchange/*/images -rm -rf /usr/lib/interchange/lib/HTML diff --git a/UPGRADE_FROM_MV3 b/UPGRADE_FROM_MV3 deleted file mode 100644 index 004834615..000000000 --- a/UPGRADE_FROM_MV3 +++ /dev/null @@ -1,146 +0,0 @@ -Upgrading from Minivend 3 to Interchange ----------------------------------------- - -There were big changes from Minivend 3 to Minivend 4, some of which were -incompatible. - -Many things were removed as redundant, deprecated, or just plain -crufty: - -* All frame features removed, frames are managed by the user in HTML. - -* Tags removed: - -buttonbar Replace with Variable. -random Replace with [ad random=1] or custom code -rotate Replace with [ad ...] -help No replacement, use data functions or variables. -body Replace with templates -finish_order No replacement, use [if items]Message[/if] -last_page No replacement, never worked -item-link No replacement, just use [page [item-code]] -loop-link No replacement, just use [page [loop-code]] -sql-link No replacement, just use [page [sql-code]] -accessories Replace with normal data functions - -* Compatibility routines for many popular tags like [random], [rotate], etc. -are provided in the compat/ directory. To use, include the files in minivend.cfg: - - #include compat/* - -* Directives removed: - - ActionMap - AdminDatabase - AdminPage - AsciiBackend - BackendOrder - ButtonBars - CheckoutFrame - CheckoutPage - CollectData - DataDir - Delimiter - DescriptionTrim - FieldDelimiter - FrameFlyPage - FrameLinkDir - FrameOrderPage - FrameSearchPage - ItemLinkDir - ItemLinkValue - MsqlDB - MsqlProducts - Mv_AlinkColor - Mv_Background - Mv_BgColor - Mv_LinkColor - Mv_TextColor - Mv_VlinkColor - NewReport - NewTags - OldShipping - OrderFrame - PageCache - PriceDatabase - Random - ReceiptPage - RecordDelimiter - ReportIgnore - Rotate - SearchFrame - SearchOverMsg - SecureOrderMsg - SpecialFile - SubArgs - Tracking - -* Minor operations removed: - - - auto-substitution of mp= on [loop search=profile], - [search-region arg=profile] - - [tag scan]... - - [tag sql]... - -Many of these are related to one of: - - * Removal of frames logic - * Removed tags - * Obsolete methods - * Old routines for 2.0x compatibility - ----------------------------- -UPGRADING from MiniVend 3 - -* Search lists: - -Must now be surrounded by [search-region] [/search-region]. - -REASON: Multiple searches can be done in a page, with multiple [more-list] -entries, multiple [no-match] areas, etc. It was not really possible to -avoid this and add the feature. - -This is the first thing you should do. To find all files containing the -search list, do: - - find pages -type f | xargs grep -l '\[search.list' - -That will yield a set of files that need to be updated. You should surround -all parts of the search area, i.e.: - - [search-region] - - [search-list] - your search iteration stuff, [item-code], etc. - [/search-list] - - [more-list] - [more] - [/more-list] - - [/search-region] - -* Search conditionals should now say [if-item-field field] [/if-item-field] -and [if-item-data table column] [/if-item-data]. - -REASON: Allows mixing and nesting of lists. - -You may find that the old works in some situations, but it will not work -in all situations. - -* Form Data updates: - -Added Scratch variable mv_data_enable to gate the update_data -function. You must set it before doing a form update. - -REASON: Prior to this it was possible to update a SQL database willy-nilly. - -This will work in the short term: - - [set update_database] - [set mv_data_enable]1[/set] - [/set] - - -It will ensure at least that the user loads one form from you for each -update. For best security, gate with a UserDB entry. diff --git a/WHATSNEW b/WHATSNEW deleted file mode 100644 index 2565cdb8d..000000000 --- a/WHATSNEW +++ /dev/null @@ -1,184 +0,0 @@ - -Interchange-4.5.6 changes -- complete overhaul of UI - -* Everything renamed to "interchange". interchange.cfg, interchange.pid, - etc. If you keep minivend.cfg as the configuration file, the PID file - will be minivend.pid. There should be a good level of backward - compatibility. - -* "construct" is now the default demo -- a "foundation" demo will be - added later. - - -- Improved graphics and layout over older demos. - -- Split ship addresses for items - -- Shipping notices integrated - -- Recurring order facility (doesn't yet work). - -- PO with credit limit - -- Merchandising cross-sells by category or item. - -- "Others who bought this" - - The HTML rendering is kind of slow on Netscape, any help with that - would be appreciated. - -* The user interface (UI) was reorganized to make it easier to understand - and use. - - -- All functions should now be available via menu, quicklinks should - not be necessary. - -- Most database table lists are HTML lists with links instead of - the button approach. - -- Administration console with information helpful for debug. - -UI: - -* Orders - -- list-based - -- shipping status notices - -- automatic check of archive box when status=shipped - -- list-based delete and archive operations - -- lists are sortable on multiple fields - -- status display for individual line items - -- change size of list with Knar UI_SZ_LIST_ORDER - -* Customers - -- list-based - -- list-based delete and deactivate operations - -- lists are sortable on multiple fields - -- status display for individual line items - -- change size of list with Knar UI_SZ_LIST_CUSTOMER - -* Item editor - -- Select list of items to delete or edit in sequence - -- Now have different "views" for merchandising, pricing, inventory, etc. - -- checkbox-based deletes - -- item fields to display set with UI_ITEM_FIELDS - -- separator fields set with UI_ITEM_BREAK - -- cross_category field added to merchandising table - -* Content - -- Templates easier to create - -- Editor allows change of template - -* Layout - -- button builder does on-the-fly items - -- fixed bugs in search builder - -* Merchandising - -- new menu, includes affiliate stuff - -* Reporting - -- Fixed cast problem with PostGres reports - -- More consistent look/feel for reports - -* Administration - -- New information screen that should help with diagnosing trouble - -- Table select/edit now consistent with other editors - -- Selector rows can be sorted via column, forward and reverse - -- Table display properties can be easily edited - -Core: - -* Database update forms (mv_todo=set) now can set fields in multiple - tables when there is a common key. - -* Changed SpecialPage defaults for "search", "order", and "checkout" - to reflect longstanding defaults in demo catalogs. - -* Fixed bug in fixed-field (PriceField) pricing, introduced sometime - in Minivend 4. - -* Added GUESS_NUMERIC parameter to databases, which operates by checking - field types in SQL and by looking at the import data on DBM. You can - see this in operation in the UPS tables "Ground", etc. - -* Removed auto-index of key field if POSTCREATE statement exists. - -* Added some more better auto-numbering support. Still not ready - for the UI. - -* Found bug in Vend::Table::DBI->inc_field that caused a quoted value - when really was a number. - -* CSV imports now are fully as functional as others, can do indexing, numeric - guess, etc. - -* Added "value" widget type for [accessories ...]. - -* Added [tmp var]scratch setting[/tmp] and [scratchd var] tags to - purge Scratch when setting/accessing variables. This can improve - session write speed if setting a large value which will only be - used in the current page. - -* Added "tabbed" filter, and some other Filters. Now you can add - your own filters persistently with: - - Sub < - - Interchange was originally based on Vend 0.2 - Copyright 1995 Andrew M. Wilcox - - Portions from Vend 0.3 - Copyright 1995, 1996 Andrew M. Wilcox - - Distributed under the GNU General Public License, see - the file Copying for license information. - -EOF - -for i in $* -do - case $i in - -[dD]) DEBUG=-D ;; - -[iI]) INSTALL=-I ;; - *) - esac -done - -if test `echo -n test | wc -c` -eq 4 -then F='-n' -E= -else F= -E='\c' -fi - -TESTPERL=perl -while true -do - PERL="" - IFS="${IFS= }" - SAVEIFS="$IFS" - IFS="${IFS}:" - for TESTDIR in $PATH - do - test -z "$TESTDIR" && TESTDIR=. - if test -f $TESTDIR/$TESTPERL - then - PERL="$TESTDIR/$TESTPERL" - break - fi - done - IFS="$SAVEIFS" - while true - do - if test -n "$PERL" - then VER=`$PERL -e '((print $]), exit 1) if $] !~ /^5\.\d+/; print $]'` - else false - fi - if [ $? -eq 0 ] - then - echo "Found Perl $VER as $PERL" - break 2 - else - if test "$TESTPERL" = perl - then - TESTPERL=perl5 - break - else - echo $VER - VER="" - echo "Perl version not high enough or Perl not found." - fi - fi - - echo - echo "I need to know where the Perl 5 interpreter resides." - echo "It was not 'perl' or 'perl5', or it was not in your" - echo "path. Please enter a fully-qualified path name," - echo "or just press ENTER to exit.. (what did I say?)" - echo - echo $F "Where is your Perl 5, please? $E" - read PERL - if test -z "$PERL" - then exit 1 - else - TESTPERL=$PERL - case $PERL in - [/]*) continue;; - *) break ;; - esac - fi - done -done - -if test ! -f .cpan.tried -then -echo -echo "If you get a CPAN error, rerun the configuration and it" -echo "should go away." -echo -fi - -$PERL Makefile.PL -make -make test && make install diff --git a/dist/barry/backup/.empty b/dist/barry/backup/.empty deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/barry/catalog.cfg b/dist/barry/catalog.cfg deleted file mode 100644 index 7513f8cfa..000000000 --- a/dist/barry/catalog.cfg +++ /dev/null @@ -1,491 +0,0 @@ -# Set the sitewide information. The initial settings -# in the "variable" table are shown below; subsequent -# changes are only in the database, not below. - -VariableDatabase variable - -### The below are set in the variable database set -### above; if you uncomment them they will override -### -# -# Define the site-specific information -# -#Variable SERVER_NAME __MVC_SERVERNAME__ -#Variable CGI_URL __MVC_CGIURL__ -#Variable SECURE_SERVER http://__MVC_SERVERNAME__ -#Variable ORDERS_TO __MVC_MAILORDERTO__ -#Variable IMAGE_DIR __MVC_IMAGEURL__ -#Variable DOCROOT __MVC_DOCUMENTROOT__ -#Variable SAMPLEHTML __MVC_SAMPLEHTML__ -#Variable SAMPLEURL __MVC_SAMPLEURL__ -# -#Variable TEMPLATE __MVC_TEMPLATE__ -#Variable COMPANY __MVC_COMPANY__ -#Variable ADDRESS __MVC_ADDRESS__ -#Variable CITY __MVC_CITY__ -#Variable PHONE __MVC_PHONE__ -#Variable TOLLFREE __MVC_TOLLFREE__ -#Variable FAX __MVC_FAX__ -#Variable LOGO __MVC_LOGO__ -#Variable SMLOGO __MVC_SMLOGO__ -#Variable ENCRYPTOR __MVC_ENCRYPTOR__ -#Variable TAXAREA __MVC_TAXAREA__ -#Variable TAXRATE __MVC_TAXRATE__ -#Variable TAXSHIPPING __MVC_TAXSHIPPING__ -#Variable MULTIORDER __MVC_MULTIORDER__ -# -#Variable SOMESQL __MVC_MYSQL____MVC_PGSQL__ -#Variable MYSQL __MVC_MYSQL__ -#Variable PGSQL __MVC_PGSQL__ - -## END SITE CONFIGURATION - -# Set single-page order style -Variable ORDER_STYLE ord - -# Set multi-page order style if MULTIORDER variable set -#ifdef MULTIORDER -Variable ORDER_STYLE multi -#endif - -## END SITE CONFIGURATION - -## Whether to encrypt passwords in UserDB -UserDB default crypt 0 -## Change a field to something that doesn't conflict in MySQL -UserDB default time_field mod_time -## Don't want people setting their credit limit directly -UserDB default scratch credit_limit - -## Set some menubars and headers -## Use [include ...] with low traffic settings (from minivend.cfg) -## Put in memory with high traffic settings (from minivend.cfg) -ParseVariables Yes - -#ifdef TEMPLATE eq 'green1' -Variable BARBG #DEEEEF -Variable BARTEXT #000000 -Variable BODY text="#000000" bgcolor="#FFFFFF" link="#0000CC" vlink="#990000" -Variable CONTRAST RED -Variable HEADERBG BGCOLOR=#cccc99 -Variable HEADERTEXT #990000 -Variable LINECOLOR #000000 -Variable TABLEFG #DEDEDE -Variable TITLEBG #66cc99 -Variable TITLETEXT #FFFFFF -Variable TOPCOLOR #F22B34 -Variable TOPTEXT YELLOW -#endif - -#ifdef TEMPLATE eq 'blue1' -Variable BARBG #FF6701 -Variable BARTEXT #FFFFFF -Variable BODY BGCOLOR=WHITE LINK=BLACK -Variable CONTRAST RED -Variable HEADERBG BGCOLOR=#4F87CB -Variable HEADERTEXT #CCFF99 -Variable LINECOLOR #000000 -Variable TABLEFG BGCOLOR=LIGHTBLUE -Variable TITLEBG NAVY -Variable TITLETEXT #FFFFFF -Variable TOPCOLOR #F22B34 -Variable TOPTEXT YELLOW -#endif - -#ifdef TEMPLATE eq 'yellow1' -Variable BARBG #000000 -Variable BARTEXT #FFFFFF -Variable BODY BGCOLOR=WHITE LINK=BLACK -Variable CONTRAST RED -Variable HEADERBG BGCOLOR=#FFE88D -Variable HEADERTEXT #000000 -Variable LINECOLOR #000000 -Variable TABLEFG BGCOLOR=MOCCASIN -Variable TITLEBG #000000 -Variable TITLETEXT #FFFFFF -Variable TOPCOLOR #F22B34 -Variable TOPTEXT YELLOW -#endif - -# Better performance this way -#ifdef @TRAFFIC =~ /high/i -Variable TIMED_CATOPT [timed-build minutes=10 file=tmp/catoptions] -Variable TIMED_CATLIST [timed-build minutes=10 file=tmp/catlist] -Variable END_TIMED [/timed-build] -Variable COPYRIGHT and other tags within -# HTML tags, use [pragma no_html_parse 0] to enable on a page -Pragma no_html_parse - -MailOrderTo __ORDERS_TO__ -VendURL http://__SERVER_NAME____CGI_URL__ -SecureURL __SECURE_SERVER____CGI_URL__ - -#ifndef SOMESQL -Database affiliate affiliate.txt TAB -Database area area.txt TAB -Database area AUTO_NUMBER 1 -Database cat cat.txt TAB -Database country country.txt TAB -Database inventory inventory.txt TAB -Database merchandising merchandising.txt TAB -Database products products.txt TAB -Database pricing pricing.txt TAB -Database pricing KEY sku -Database pricing NUMERIC q2 -Database products HOT 1 -Database products INDEX category:c -Database orderline orderline.txt TAB -Database transactions transactions.txt TAB -Database userdb userdb.txt TAB -#endif - -#ifndef SQLDSN -Variable SQLDSN __MVC_SQLDSN__ -#endif - -#ifdef MYSQL - -Variable SQLDSN __SQLDSN__ -Message Using MySQL, DSN=__SQLDSN__. - -# Uncomment if needed -#Variable SQLUSER foo -#Variable SQLPASS bar - -# The tables are in separate files in the mysql directory - -#include mysql/* - -#endif - -#ifdef PGSQL - -Variable SQLDSN __SQLDSN__ -Message Using PostgreSQL, DSN=__SQLDSN__. - -# Uncomment if needed -#Variable SQLPASS foo -#Variable SQLUSER bar - -# The tables are in separate files in the mysql directory - -#include pgsql/* - -#endif - -# We are always keeping these in DBM, can be in SQL if you wish -Database access access.asc TAB -Database mv_metadata mv_metadata.asc TAB -Database variable variable.txt TAB -Database banner banner.txt TAB -Database banner NUMERIC weight -Database locale locale.txt TAB -Database 2ndDayAir 2ndDayAir.csv CSV -Database Ground Ground.csv CSV -Database NextDayAir NextDayAir.csv CSV - -ProductFiles products -VariableDatabase variable - -AlwaysSecure ord/checkout multi/checkout -AsciiTrack logs/tracking.asc - -CommonAdjust pricing:q2,q5,q10,q25,q100, ;:price, ;$ ==color:pricing, ==size:pricing - -# Here is one that sets up "Mix and match" based upon the price_group field -# in the "pricing" database. -#CommonAdjust pricing:price_group,q2,q5,q10,q25,q100, ;:price, ;$ ==color:pricing, ==size:pricing -CookieLogin Yes - -# This sets up the new payment charge mode in Interchange 4 -# You set it to "custom name", where name is the name of a GlobalSub -# that performs the charge operation. If it is not "custom", then -# it will use the CyberCash routines. -# -# "minivend_test" is special, and the demo order profile -# works with the demo order form to test -# -#Variable MV_PAYMENT_MODE minivend_test - -# Uncomment to use creditCardAuto if you want, now handled better in -# order profiles with "&credit_card=standard". -#CreditCardAuto Yes - -# These are usually all you need for CyberCash 3 -# Uncomment and edit to suit; make sure you remove CreditCardAuto somehow -# -#Variable CYBER_CONFIGFILE /home/you/yourid75/mck-cgi/merchant_conf -#Variable CYBER_VERSION 3.2 -#Variable CYBER_MODE mauthonly - -#ifdef CYBER_MODE -Variable MV_PAYMENT_MODE mauthonly -CreditCardAuto No -#endif - -EncryptProgram __ENCRYPTOR__ -ImageAlias __IMAGE_DIR__/template/ __IMAGE_DIR__/__TEMPLATE__/ -ImageDir __IMAGE_DIR__/ -ImageDirInternal http://__SERVER_NAME____IMAGE_DIR__/ - -# Uncomment only if you have these locales on your system -#Locale de_DE -#Locale de_DE LC_CTYPE de_DE -#Locale fr_FR -#Locale en_US - -Locale en_US LC_CTYPE C -LocaleDatabase locale - -Onfly onfly -OrderCounter etc/order.number -OrderLineLimit 25 -OrderProfile etc/profiles.order etc/profiles.login etc/profiles.misc - -# This makes CommonAdjust effective, since no_price doesn't exist -PriceField no_price -ReadPermission group -RobotLimit 50 - -# Here we override Interchange's normal order routine -ActionMap order <{mv_nextpage} ne 'order') { - # Do nothing - } - elsif($Values->{no_basket}) { - $CGI->{mv_nextpage} = 'ord/nobasket'; - } - else { - $CGI->{mv_nextpage} = '__ORDER_STYLE__/basket'; - } - $CGI->{mv_order_item} = $CGI->{mv_arg} - if ! $CGI->{mv_order_item}; - $Tag->update('values'); - return 1; -} -EOR - -ActionMap deliver <{deliverable} = $CGI->{mv_arg}; - $CGI->{mv_nextpage} = 'deliver'; - return 1; -} -EOR - -ActionMap get_password <{NoSearch} = ''; - $CGI->{mv_nextpage} = $CGI->{mv_search_page} = 'action/get_password'; - $CGI->{mv_todo} = 'search'; - $Tag->update('process'); - return; -} -EOR - -ParseVariables Yes -Route log attach 0 -Route log cybermode "" -Route log empty 1 -Route log encrypt 0 -Route log increment 0 -Route log report etc/log_transaction -Route log supplant 0 -Route log track logs/log - -Route log_entry attach 0 -Route log_entry cybermode "" -Route log_entry empty 1 -Route log_entry encrypt 0 -Route log_entry increment 0 -Route log_entry report etc/log_entry -Route log_entry supplant 0 -Route log_entry track logs/log - -Route copy_user attach 0 -Route copy_user cybermode "" -Route copy_user empty 1 -Route copy_user encrypt 0 -Route copy_user increment 0 -Route copy_user report etc/mail_receipt -Route copy_user supplant 0 -Route copy_user track logs/log - -# Main route must be last to make default -Route main attach 0 -#Route main counter etc/some.other.order.number -Route main credit_card 0 -Route main cybermode "" -Route main default 1 -Route main email '__ORDERS_TO__' -Route main encrypt 0 -Route main encrypt_program '__ENCRYPTOR__' -Route main errors_to '__ORDERS_TO__' -Route main increment 0 -Route main pgp_cc_key "" -Route main pgp_key "" -Route main receipt etc/receipt.html -Route main report etc/report -Route main supplant 1 -Route main individual_track orders -Route main track logs/tracking.asc - -# Order routes can be maintained in a database, empty in demo -# CHANGES TO THIS WILL OVERRIDE THE ROUTES ABOVE -RouteDatabase route - -SalesTax state -SeparateItems Yes -SpecialPage flypage flypage -SpecialPage catalog index -SpecialPage checkout __ORDER_STYLE__/checkout -SpecialPage order __ORDER_STYLE__/basket -SpecialPage search results -SpecialPage results results -SpecialPage report ../etc/report -SpecialPage receipt ../etc/receipt - -NoCache reconfig special config query ord multi -Static __CATALOG_STATIC__ -StaticLogged __LOGGED_STATIC__ -StaticAll Yes -StaticDBM static -StaticDepth 2 -StaticDir __SAMPLEHTML__/pages -StaticFly Yes -StaticPath __SAMPLEURL__/pages -TaxShipping __TAXSHIPPING__ - -#ifdef UI_TRAFFIC_STATS -TrackFile __UI_TRAFFIC_STATS__ -#endif - -UpsZoneFile products/450.csv -UseModifier size color -AutoModifier pricing:price_group - -History 10 -UserTag history-scan Order find exclude default -UserTag history-scan addAttr -UserTag history-scan Routine <{History} - or return $Tag->area($default || $Config->{SpecialPage}{catalog}); - my ($hist, $href, $cgi); - $exclude = qr/$exclude/ if $exclude; - for(my $i = $#$ref; $i >= 0; $i--) { - #Log("checking $ref->[$i][0] for $exclude"); - if ($exclude and $ref->[$i][0] =~ $exclude) { - next; - } - if($find) { - next unless $ref->[$i][0] =~ /$find/; - } - ($href, $cgi) = @{$ref->[$i]}; - last; - } - return $Tag->area($default || $Config->{SpecialPage}{catalog}) - if ! $href; - my $form = ''; - for(grep !$var_exclude{$_}, keys %$cgi) { - $form .= "\n$_="; - $form .= join("\n$_=", split /\0/, $cgi->{$_}); - } - return $Tag->area( { href => $href, form => $form} ); -} -EOR - -WritePermission group - -# Here you can set up fatal errors if a necessary sub or usertag -# doesn't exist, uncomment one of next lines to test -#Require globalsub nevairbe -#Require usertag nevairbe - -Require usertag email -Require usertag email_raw -Require usertag var -Require usertag loc -Require usertag summary -Require usertag reconfig - -# This UserTag sets a default font face, size, color -# or more in a table without having to type it in every -# time. -# -# Usage: -# [table-font face="arial, helvetica" size="-1"] -#
Test.
-# Will do multiple tables. -#
Test.
-# [/table-font] -# -UserTag table-font Order face -UserTag table-font PosNumber 1 -UserTag table-font addAttr 1 -UserTag table-font hasEndTag -UserTag table-font Routine <{$_}; - } - push(@parms, $opt->{extra}) - if $opt->{extra}; - my $front = "'; - $table =~ s:(]*>):$1$front:ig; - $table =~ s:():$1:ig; - return $table; -} -EOR - diff --git a/dist/barry/config/additional_fields b/dist/barry/config/additional_fields deleted file mode 100644 index 3c8da00ea..000000000 --- a/dist/barry/config/additional_fields +++ /dev/null @@ -1,103 +0,0 @@ -COMPANY -Your company name -Barry's Books, Bikes, and Birkenstocks - -ADDRESS -Your company address -123 Any St. - -CITY -Your company city/state/zip -Anytown, USA 00000 - -PHONE -Your company phone -(555) 555-5555 - -FAX -Your company fax number -(555) 555-5556 - -TOLLFREE -Your company tollfree number (if any) -(888) 555-5555 - -MULTIORDER -Set to 1 to enable multi-page order screens -0 1 - -TAXAREA -Area(s) to tax in -VA UT - -TAXRATE -Percentage rate(s) for tax in different areas -VA=7.5, UT=7.25 - -UPSADDER -Amount to add on to standard UPS costs -3.00 - -UPSORIGIN -Origin zip code for UPS lookups -45056 00000 - -SOMESQL -Set to 1 if you want to use MySQL or Postgres -0 1 - -{SOMESQL}MYSQL -Set to 1 if you want to use MySQL -1 0 - -{MYSQL}SQLDB -Database to use (will be created) -test___MVC_CATALOGNAME__ intchg - -{MYSQL}SQLDSN -DBI DSN to use -dbi:mysql:__MVC_SQLDB__ - -{MYSQL}SQLUSER -Username for MySQL (if any) - intchg - -{MYSQL}SQLPASS -Password for MySQL (if any) - pass - -{MYSQL}SQLCREATE -Set to 1 to create '__MVC_SQLDB__' with mysqladmin -1 0 - -{SQLCREATE}SQLCREATEOPT -Extra options for creation - -p - -{SOMESQL and ! '__MVC_MYSQL__'}PGSQL -Set to 1 if you want to use PostGres -1 0 - -{PGSQL}SQLDB -Database to use (will be created) -test___MVC_CATALOGNAME__ interchange - -{PGSQL}SQLDSN -DBI DSN to use -dbi:Pg:dbname=__MVC_SQLDB__ - -{PGSQL}SQLUSER -Username for Postgres (if any) - __MVC_CATUSER__ - -{PGSQL}SQLPASS -Password for Postgres (if any) - pass - -SUPERUSER -Account name that will control this catalog -__MVC_CATUSER__ intchg - -CRYPTPW -Administrative password -pass nevairbe diff --git a/dist/barry/config/additional_help b/dist/barry/config/additional_help deleted file mode 100644 index cada124f3..000000000 --- a/dist/barry/config/additional_help +++ /dev/null @@ -1,83 +0,0 @@ -TAXAREA -. -For the US, this is usually the state(s) your business is -located in. Non-US users will probably have to set this -differently depending on their tax laws. - -TAXRATE -. -For US users, this looks like STATE=RATE, where the rate -is in percent. The default below taxes Ohio at 6% and -Illinois at 7.25 percent. More states can be added or -you can have only one. Should correspond to TAXAREA. - -SOMESQL -. -Interchange has a workable internal database, but many things will -work better (and a few worse) if you use a SQL database. Interchange -can configure MySQL and Postgres in a test configuration. - -MYSQL -. -You can select this to use MySQL in your test catalog. Careful! -This requires the ability to create a database named "test_barry", -and is highly dependent on your Perl and MySQL configuration. Don't -be too surprised if this doesn't work. - -SQLCREATE -. -We can try and use mysqladmin to create the database in -MySQL. In many default Mysql distributions, any user can create -a database beginning with "test". -. -Use the next option to add parameters. If your Mysql is password-protected -(and you know the password) you may want to add "-u root -p". - -SQLCREATEOPT -. -To create the database you may need to supply a password and -username. To do that, add the option "-u USERNAME -p", where -USERNAME is a Mysql user with permission to create databases. -This is often the user "root". - -PGSQL -. -You can select this to use PostGres in your test catalog. -This requires the ability to create a database named "test_barry", -and is highly dependent on your Perl and system configuration. Don't -be too surprised if this doesn't work. - -MULTIORDER -. -Interchange can do order pages in any way; two examples are provided. -The default is single-page. - -TEMPLATE -. -There are three color schemes available as an example of -how you might template catalogs. Select one of: -. - brown1 blue1 yellow1 - -UPSADDER -. -For the UPS lookup, the standard UPS tables are normally -used. If you want to add a handling charge, do it here. - -SUPERUSER -. -You can use Interchange's companion configuration -interface, to do upload/download of files, manipulation of -the database, reconfiguration of the catalog, and much more. -. -To enable the UI, you will need a "super-user" account -name that has full access. -. -The initial password is "pass". CHANGE IT! You can do this -by going to the admin menu and selecting the superuser and -then "Change password". - -CRYPTPW -. -You should set a password for the administrative account. -Remember this! It will be encrypted. diff --git a/dist/barry/config/copyright b/dist/barry/config/copyright deleted file mode 100644 index 6bf0de7db..000000000 --- a/dist/barry/config/copyright +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/dist/barry/config/leftonly b/dist/barry/config/leftonly deleted file mode 100644 index 670325020..000000000 --- a/dist/barry/config/leftonly +++ /dev/null @@ -1,152 +0,0 @@ - -[set leftonly]1[/set] - - -
- - - - -[if session logged_in] - - - - - - - - -[else] - - - - - - - - - - - - - -[/else] -[/if] - - - - - - -
-
- -   [value fname] [value lname]

-   order status
-   log out
 


  

  
-[loop - prefix=box - search=" - fi=area - st=db - tf=sort - ac=0 - ac=0 - co=yes - - sf=sel - op=eq - [if scratch left_bar] - se=[scratch left_bar][set left_bar][/set] - [else] - se=left - [/else] - [/if] - - sf=which_page - op=rm - [if scratch page_class] - se=all|[scratch page_class][set page_class][/set] - [else] - se=all|@@MV_PAGE@@ - [/else] - [/if] - "] - - - - - - - - - - - - -[set found_cat][/set] -[loop - prefix=cat - search=" - fi=cat - st=db - tf=sort - tf=name - rf=code,name - sf=sel - se=[box-code] - "] -[cat-change catmark][condition]1[/condition] -

  [box-exec bar_link]area[/box-exec]
-[/cat-change catmark] - -[set found_cat]1[/set] -[if !scratch done_begin] -[set done_begin]1[/set] - - - - - - - - - - - - - - - - -

- -[/if] -   [cat-exec bar_link]cat[/cat-exec]
- - [/loop] - [if scratch done_begin] - - [set done_begin][/set] -
-
-
- - [/if] - [if !scratch found_cat] - - - - - - - - - - [/if] - -[/loop] - - - - diff --git a/dist/barry/config/leftside b/dist/barry/config/leftside deleted file mode 100644 index ddbaf579c..000000000 --- a/dist/barry/config/leftside +++ /dev/null @@ -1,164 +0,0 @@ - - - -
- - - - -[if session logged_in] -[then] - - - - [else] -   [value fname] [value lname]

-   order status
-   log out
  - [/else] - [/if] -

- - - - -[/then] -[else] - - - - - - - - - - - - - -[/else] -[/if] - - - - - - -
-
- - [if session login_table eq 'access'] - You are logged in as admin user [data session username]. - You will be logged out if you place an order. -

-   admin menu
-   log out
 


  

  
- -[loop - prefix=box - search=" - fi=area - st=db - tf=sort - ac=0 - ac=0 - co=yes - - sf=sel - op=eq - [if scratch left_bar] - se=[scratch left_bar][set left_bar][/set] - [else] - se=left - [/else] - [/if] - - sf=which_page - op=rm - [if scratch page_class] - se=all|[scratch page_class][set page_class][/set] - [else] - se=all|@@MV_PAGE@@ - [/else] - [/if] - "] - - - - - - - - - - - - -[set found_cat][/set] -[loop - prefix=cat - search=" - fi=cat - st=db - tf=sort - tf=name - rf=code,name - sf=sel - se=[box-code] - "] -[cat-change catmark][condition]1[/condition] -

  [box-exec bar_link]area[/box-exec]
-[/cat-change catmark] - -[set found_cat]1[/set] -[if !scratch done_begin] -[set done_begin]1[/set] - - - - - - - - - - - - - - - - -

- -[/if] -   [cat-exec bar_link]cat[/cat-exec]
- - [/loop] - [if scratch done_begin] - - [set done_begin][/set] -
-
-
- - [/if] - [if !scratch found_cat] - - - - - - - - - - [/if] - -[/loop] - - - - - diff --git a/dist/barry/config/logobar b/dist/barry/config/logobar deleted file mode 100644 index ec51b0d7a..000000000 --- a/dist/barry/config/logobar +++ /dev/null @@ -1,25 +0,0 @@ - - - - [scratch page_title] - - -
- - - - - - - - diff --git a/dist/barry/config/menubar b/dist/barry/config/menubar deleted file mode 100644 index 90c8a71ff..000000000 --- a/dist/barry/config/menubar +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - [comment] - - - - - [/comment] - - - - - - - - diff --git a/dist/barry/config/menubottom b/dist/barry/config/menubottom deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/barry/config/no_left b/dist/barry/config/no_left deleted file mode 100644 index ac1ecec2e..000000000 --- a/dist/barry/config/no_left +++ /dev/null @@ -1,8 +0,0 @@ - - - - - diff --git a/dist/barry/config/postcopy_commands b/dist/barry/config/postcopy_commands deleted file mode 100644 index 8b29eb28e..000000000 --- a/dist/barry/config/postcopy_commands +++ /dev/null @@ -1,3 +0,0 @@ -ln -s __MVC_DOCUMENTROOT____MVC_IMAGEURL__ __MVC_CATROOT__ -To enable image upload feature, you need to make a symbolic -link of the image base directory into your catalog directory. diff --git a/dist/barry/config/precopy_commands b/dist/barry/config/precopy_commands deleted file mode 100644 index 1c60134d6..000000000 --- a/dist/barry/config/precopy_commands +++ /dev/null @@ -1,13 +0,0 @@ -{MYSQL}mysqladmin __MVC_SQLCREATEOPT__ create __MVC_SQLDB__ -Since you selected the MySQL option, you need to create -a database named "__MVC_SQLDB__". In a default MySQL -configuration, any user may create and drop and modify -test_* databases, but some administrators disable this. - - -{PGSQL}createdb __MVC_SQLDB__ -Since you selected the PostgreSQL option, you need to create -a database named "__MVC_SQLDB__". This will only work if -your administrator allowed it. - - diff --git a/dist/barry/config/rightside b/dist/barry/config/rightside deleted file mode 100644 index b9b4aa276..000000000 --- a/dist/barry/config/rightside +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - diff --git a/dist/barry/etc/area.recordnumber b/dist/barry/etc/area.recordnumber deleted file mode 100644 index 9762c7c23..000000000 --- a/dist/barry/etc/area.recordnumber +++ /dev/null @@ -1,2 +0,0 @@ -#COUNTER-1.0 -100 diff --git a/dist/barry/etc/cat.recordnumber b/dist/barry/etc/cat.recordnumber deleted file mode 100644 index 29087f52e..000000000 --- a/dist/barry/etc/cat.recordnumber +++ /dev/null @@ -1,2 +0,0 @@ -#COUNTER-1.0 -101 diff --git a/dist/barry/etc/log_entry b/dist/barry/etc/log_entry deleted file mode 100644 index 6cb0cfbdc..000000000 --- a/dist/barry/etc/log_entry +++ /dev/null @@ -1,151 +0,0 @@ -#### begin [value mv_order_number] ##### -[seti transaction_record] -[tag flag write]transactions orderline userdb inventory[/tag] -[if cgi new_customer_id] -[or !cgi customer_id] -Add new customer: [value name=customer_id set="[fcounter etc/customer.number]"] -Set password: [value name=password set="[value name=zip filter='word uc']"] -[/if] -Update userdb: [perl table=userdb] - my $id = $Values->{username} = $Values->{customer_id}; - @always = qw/ - company - fname - lname - address1 - address2 - city - state - zip - country - phone_day - mv_shipmode - mv_credit_card_type - mv_credit_card_exp_month - mv_credit_card_exp_year - email - phone_night - fax_order - email_copy - mail_list - /; - @sometimes = qw/ - password - b_fname - b_lname - b_address1 - b_address2 - b_city - b_state - b_zip - b_country - b_phone - fax - credit_limit - /; - - my $db = $Db{userdb}; - - if(! $db->record_exists($id)) { - $db->set_row($id); - $db->set_field($id, 'password', $Values->{password}); - } - - for(@always) { - $db->set_field($id, $_, $Values->{$_}); - } - - for (@sometimes) { - next unless $Values->{$_} =~ /\S/; - $db->set_field($id, $_, $Values->{$_}); - } - - return "Updated customer record."; -[/perl] - - -[comment][perl] Log("Starting entry."); [/perl][/comment] - -[try] -[comment][perl] Log("Past ACL update user."); [/perl][/comment] -Add main order [data - table=userdb - column=order_numbers - key="[value customer_id]" - value=" [value mv_order_number]" - append="1" - ] to transactions: [import table=transactions type=LINE continue=NOTES] -code: [value mv_order_number] -store_id: __STORE_ID__ -order_number: [value mv_order_number] -session: [data session id] -username: [value username] -shipmode: [value mv_shipmode] ([shipping-desc]) -shipping: [shipping noformat=1] -nitems: [nitems] -subtotal: [subtotal noformat=1] -handling: [handling noformat=1] -salestax: [salestax noformat=1] -total_cost: [total-cost noformat=1] -fname: [value filter=strip name=fname] -lname: [value filter=strip name=lname] -company: [value filter=strip name=company] -address1: [value filter=strip name=address1] -address2: [value filter=strip name=address2] -city: [value filter=strip name=city] -state: [value name=state filter="strip uc"] -zip: [value name=zip filter="word uc"] -country: [value country] -phone_day: [value filter=strip name=phone_day] -phone_night: [value filter=strip name=phone_night] -b_fname: [value filter=strip name=b_fname] -b_lname: [value filter=strip name=b_lname] -b_address1: [value filter=strip name=b_address1] -b_address2: [value filter=strip name=b_address2] -b_city: [value filter=strip name=b_city] -b_state: [value filter=strip name=b_state] -b_zip: [value filter=strip name=b_zip] -b_country: [value filter=strip name=b_country] -b_phone: [value filter=strip name=b_phone] -payment_method: [value mv_payment] -order_date: [value name=order_date set="[tag time]%Y%m%d %H:%M:%S[/tag]"] -order_ymd: [value name=order_date set="[tag time]%Y%m%d[/tag]"] -order_wday: [value name=order_wday set="[tag time]%u[/tag]"] -status: pending -affiliate: ORDER_DESK -po_number: [value filter=strip po_number] -deleted: 0 -archived: 0 -complete: 0 -comments: [value filter=mac name=gift_note] -[/import] -[comment][perl] Log("Past transactions entry."); [/perl][/comment][item-list]Added [item-code] to orderline: [import table=orderline type=LINE continue=NOTES] -code: [value mv_order_number]-[item-increment] -store_id: __STORE_ID__ -order_number: [value mv_order_number] -session: [data session id] -username: [value username] -shipmode: [item-modifier mv_shipmode] -sku: [item-code] -quantity: [item-quantity] -price: [item-price noformat] -subtotal: [item-subtotal noformat] -size: [item-modifier size] -color: [item-modifier color] -order_date: [value order_date] -affiliate: ORDER_DESK -campaign: [value campaign] -status: pending -[/import] -Inventory now: [data table=inventory col=quantity key="[item-code]" increment=1 value="-[item-quantity]"] -[/item-list][/try] -[catch] There was an error adding to the transaction log. [/catch] -[comment][perl] Log("Past add data entry."); [/perl][/comment] -[comment][perl] Log("Past all transaction log."); [/perl][/comment] -[/seti][perl] - my $out = $Scratch->{transaction_record}; - $out =~ s/^\s+//; - $out =~ s/\s+$//; - return $out; -[/perl] -#### end [value mv_order_number] ##### diff --git a/dist/barry/etc/log_transaction b/dist/barry/etc/log_transaction deleted file mode 100644 index b40c10f33..000000000 --- a/dist/barry/etc/log_transaction +++ /dev/null @@ -1,115 +0,0 @@ -#### begin [value mv_order_number] ##### -[seti transaction_record] -[tag flag write]transactions orderline userdb inventory[/tag] -[if !session logged_in] -[or session login_table ne 'userdb'] - [if session logged_in] [userdb logout] [/if] - [set auto_create]1[/set] - [if type=explicit compare=| - [userdb - function=new_account - assign_username=1 - password='[value zip]' - verify='[value zip]' - ] - |] - [comment][perl] Log("User create succeeded."); [/perl][/comment] - [else] - [comment][perl] Log("Failed user create."); [/perl][/comment] - [/else] - [/if] -[/if] -[comment][perl] Log("Starting report."); [/perl][/comment] - -[try] -[comment][perl] Log("Past ACL create log."); [/perl][/comment] -Add main order[data - table=userdb - column=order_numbers - key="[data session username]" - value=" [value mv_order_number]" - append="1" - ] to transactions: [import table=transactions type=LINE continue=NOTES] -code: [value mv_order_number] -store_id: __STORE_ID__ -order_number: [value mv_order_number] -session: [data session id] -username: [data session username] -shipmode: [value mv_shipmode] ([shipping-desc]) -shipping: [shipping noformat=1] -nitems: [nitems] -subtotal: [subtotal noformat=1] -handling: [handling noformat=1] -salestax: [salestax noformat=1] -total_cost: [total-cost noformat=1] -fname: [value filter=strip name=fname] -lname: [value filter=strip name=lname] -company: [value filter=strip name=company] -address1: [value filter=strip name=address1] -address2: [value filter=strip name=address2] -city: [value filter=strip name=city] -state: [value name=state filter="strip uc"] -zip: [value name=zip filter=word] -country: [value country] -email: [value filter=strip name=email] -phone_day: [value filter=strip name=phone_day] -phone_night: [value filter=strip name=phone_night] -b_fname: [value filter=strip name=b_fname] -b_lname: [value filter=strip name=b_lname] -b_address1: [value filter="strip mac" name=b_address1] -b_address2: [value filter="strip mac" name=b_address2] -b_city: [value filter=strip name=b_city] -b_state: [value filter=strip name=b_state] -b_zip: [value filter=strip name=b_zip] -b_country: [value filter=strip name=b_country] -b_phone: [value filter=strip name=b_phone] -payment_method: [value mv_payment] -order_date: [value name=order_date set="[tag time]%Y%m%d %H:%M:%S[/tag]"] -order_ymd: [value name=order_date set="[tag time]%Y%m%d[/tag]"] -order_wday: [value name=order_wday set="[tag time]%u[/tag]"] -status: pending -deleted: 0 -archived: 0 -complete: 0 -comments: [value filter=mac name=gift_note] -affiliate: [data session source] -campaign: [value campaign] -parent: __PARENT__ -po_number: [value filter=strip po_number] -[/import] -[comment][perl] Log("Past transactions entry."); [/perl][/comment][item-list]Added [item-code] to orderline: [import table=orderline type=LINE continue=NOTES] -code: [value mv_order_number]-[item-increment] -store_id: __STORE_ID__ -order_number: [value mv_order_number] -session: [data session id] -username: [data session username] -shipmode: [item-modifier mv_shipmode] -sku: [item-code] -quantity: [item-quantity] -price: [item-price noformat] -subtotal: [item-subtotal noformat] -size: [item-modifier size] -color: [item-modifier color] -order_date: [value order_date] -affiliate: [data session source] -campaign: [value campaign] -status: pending -description: [filter mac][item-description][/filter] -[/import] -Inventory now: [data table=inventory col=quantity key="[item-code]" increment=1 value="-[item-quantity]"] -[/item-list][/try] -[catch] There was an error adding to the transaction log. [/catch] -[if scratch auto_create] - Logout auto-created user: [userdb logout] - [value name=mv_username set=""] -[/if] -[comment][perl] Log("Past add data entry."); [/perl][/comment] - -[comment][perl] Log("Past all transaction log."); [/perl][/comment] -[/seti][perl] - my $out = $Scratch->{transaction_record}; - $out =~ s/^\s+//; - $out =~ s/\s+$//; - return $out; -[/perl] -#### end [value mv_order_number] ##### diff --git a/dist/barry/etc/mail_receipt b/dist/barry/etc/mail_receipt deleted file mode 100644 index 9b50f446b..000000000 --- a/dist/barry/etc/mail_receipt +++ /dev/null @@ -1,114 +0,0 @@ -[if value email_copy] -Sending email copy of order [value mv_order_number] to [value email]: [email to="[value email]" - subject="Thank you for your order [value mv_order_number]!" - from=|"__COMPANY__ Customer Service" <__ORDERS_TO__>| ] -Dear __COMPANY__ customer, - -Thank you for your order #[value mv_order_number], it is being electronically -processed. - - Name: [value fname] [value lname] -[if value company] Company: [value company][/if] - Email address: [value email] - - Address: [value address1][if value address2] - [value address2][/if] -City, State, Zip: [value city], [value state] [value zip] - Country: [value country] - - Payment Method: [value mv_payment] - Shipping Method: [shipping_desc] - - Daytime Phone: [value phone_day] - Evening Phone: [value phone_night] - -[if value b_address1] - Billing Name: [value b_fname] [value b_lname] - Billing Address: [value b_address1] [value b_address2] -City, State, Zip: [value b_city][if value b_state], [value b_state] [value b_zip][/if] -[if value b_country] Billing Country: [value b_country][/if] -[/if] - -Quan Item No. Description Price Extension ----- ----------- ------------------------------- -------------- ---------------- -[item-list][row 82] -[column width=5 gutter=1 align=right] [item-quantity] [/column] -[column width=12 gutter=1] [item-code] [/column] -[column width=32 gutter=1 align=left wrap=1] -[item-description] -[if-modifier size]SIZE-->[item-modifier size][/if-modifier][if-modifier color] COLOR-->[item-modifier color][/if-modifier] -[/column] -[column width=15 gutter=1 align=r] [item-price] [/column] -[column width=16 gutter=0 align=r] [item-subtotal] [/column] -[/row] - -[/item-list] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SUBTOTAL[/column] -[column width=16 gutter=0 align=r][subtotal][/column] -[/row] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SALES TAX[/column] -[column width=16 align=right gutter=0][salestax][/column] -[/row] -[row 82] - [column width=5 align=right][/column] - [column width=12 gutter=1][/column] - [column width=32 align=R wrap=1 gutter=1][/column] - [column width=15 gutter=1]SHIPPING[/column] - [column width=16 align=right gutter=0][shipping][/column] -[/row] - -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]ORDER TOTAL[/column] -[column width=16 align = right gutter=0][total-cost][/column] -[/row] - -[if value gift_note] -Note for Gift --------------- -[value gift_note] -[/if] - -Should you have a question about your order, or about other __COMPANY__ -products, please reply to this message and let us help. - -Always reference your Order Number when calling for a status. [if !session logged_in] -Or you can check status via this URL: - - [area form=' - mv_username=[data - table=transactions - col=username - key="[value mv_order_number]" - ] - mv_password=[value zip] - mv_click=Login - mv_todo=return - mv_nextpage=query/check_orders - ']" -[/if] -Remember, you can always visit our site at: - - __SERVER_NAME__ - -Regards and thanks for your business! - -__COMPANY__ -__ADDRESS__ -__CITY__ -__PHONE__ -__TOLLFREE__ -FAX: __FAX__ -[/email] -[else]Email copy of order [value mv_order_number] NOT REQUESTED for [value email].[/else] -[/if] diff --git a/dist/barry/etc/profiles.login b/dist/barry/etc/profiles.login deleted file mode 100644 index b4cb701fb..000000000 --- a/dist/barry/etc/profiles.login +++ /dev/null @@ -1,22 +0,0 @@ - -__NAME__ Logout - -[if type=explicit compare="[userdb logout]"] -mv_nextpage=[either][cgi mv_successpage][or][cgi mv_nextpage][/either] -[else] -mv_nextpage=[either][cgi mv_failpage][or][cgi mv_nextpage][/either] -[/else] -[/if] - -__END__ - -__NAME__ Login - -[if type=explicit compare="[userdb login]"] -mv_nextpage=[either][cgi mv_successpage][or][cgi mv_nextpage][/either] -[else] -mv_nextpage=[either][cgi mv_failpage][or][cgi mv_nextpage][/either] -[/else] -[/if] - -__END__ diff --git a/dist/barry/etc/profiles.order b/dist/barry/etc/profiles.order deleted file mode 100644 index 09bcce6d9..000000000 --- a/dist/barry/etc/profiles.order +++ /dev/null @@ -1,121 +0,0 @@ -__NAME__ invalid -&fatal = yes -mv_failpage= interact -&set = mv_junk 0 -__END__ - -__NAME__ checkout_profile -fname=required -lname=required -address1=required -city=required -country=required -[if value country =~ /^(US|CA)$/i] - state=state_province "[value state]" is not a valid US/Canada state or province. - zip=postcode "[value zip]" is not a valid US/Canada postal code. - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[else] - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[/else] -[/if] - -&fatal = yes -email=required -email=email - -&set = mv_payment Incomplete - -[if value fax_order == 1] -&set = mv_payment Check or Money Order (will call) - -[elsif value fax_order == 2] -&set = mv_payment Purchase order [value po_number] -[value name=tmp_total set="[total-cost noformat=1]" hide=1] -[perl tables="pricing products userdb"] - $CGI->{credit_limit_ok} = 1; - my $total = delete $Values->{tmp_total}; - return unless $limit = tag_data('userdb', 'credit_limit', $Session->{username}); - delete $CGI->{credit_limit_ok}; - #Log("credit_limit=$limit total=$total"); - if($limit >= $total) { - $CGI->{credit_limit_ok} = 1; - } - return; -[/perl] -credit_limit_ok=mandatory Credit limit exceeded. -[/elsif] - -[elsif value fax_order == 3] -&set = mv_payment COD -[value name=mv_handling set=cod hide=1] -[/elsif] -[elsif variable MV_PAYMENT_MODE] -&credit_card=standard keep __CREDIT_CARDS_ACCEPTED__ -&charge=[var MV_PAYMENT_MODE][cgi mv_payment_test] -&set=mv_payment Real-time ([var MV_PAYMENT_MODE]) Credit Card -[/elsif] - -[elsif config CyberCash] -&fail=../special_pages/failed -&charge=[var CYBER_MODE] -[/elsif] - -[elsif config CreditCardAuto] -mv_credit_card_valid=required Credit card fails tests. -&set=mv_payment Credit Card (%c) -[/elsif] - -[else] -&credit_card=standard __CREDIT_CARDS_ACCEPTED__ -&set=mv_payment Credit Card (%c) -[/else] -[/if] - -&calc = $Values->{mv_payment} =~ s/\%c/$Values->{mv_credit_card_type}/g; 1; -&final = yes -&setcheck=mv_email [value email] - -__END__ - -__NAME__ shipping_address -fname=required -lname=required -address1=required -city=required -country=required -[if value country =~ /^(US|CA)$/i] - state=state_province "[value state]" is not a valid US/Canada state or province. - zip=postcode "[value zip]" is not a valid US/Canada postal code. - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[else] - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[/else] -[/if] -email=required - -&fatal = yes - -email=email - -__END__ - - -__NAME__ account_change -fname=required -lname=required -address1=required -city=required -country=required -[if value country =~ /^(US|CA)$/i] - state=state_province "[value state]" is not a valid US/Canada state or province. - zip=postcode "[value zip]" is not a valid US/Canada postal code. - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[else] - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[/else] -[/if] -email=required -&fatal = yes -email=email - -__END__ diff --git a/dist/barry/etc/receipt.html b/dist/barry/etc/receipt.html deleted file mode 100644 index f54bf37a4..000000000 --- a/dist/barry/etc/receipt.html +++ /dev/null @@ -1,289 +0,0 @@ -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[loop list="[value mv_order_number]"] -
-
- - - - - -
     
-  
-
-
- [loop search=" - fi=area - st=db - sf=sel - se=top - tf=sort - tf=name - "][loop-exec bar_link]area[/loop-exec][/loop]
-
- - - - - - -
- diff --git a/dist/barry/config/no_right b/dist/barry/config/no_right deleted file mode 100644 index 363ee358e..000000000 --- a/dist/barry/config/no_right +++ /dev/null @@ -1,13 +0,0 @@ - - [if !scratch leftonly] -
- [else] - [set leftonly][/set] - [/else] - [/if] -
-
-

-[loop random=2 - search=" - fi=merchandising - st=db - co=1 - op=eq - sf=featured - se=specials - ml=25 - "] - -

-
- -[loop-data merchandising blurb_begin]
-[if-loop-field thumb] -
- -
-
-[/if-loop-field] -[loop-data merchandising blurb_end]
-[loop-price] -
-

-

-[/loop] -

- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[query st=db sql="select * from orderline where order_number = '[loop-data transactions order_number]'" list=1] -[calc] - $total_weight += (([field field=weight key="[sql-param sku]"] + 0) || 0) * [sql-param quantity]; - return; -[/calc] - - - - - - - - - - - - -[/query] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-Order number: [loop-code] Order date: [loop-data transactions order_date] -
-Customer: [loop-data transactions fname] [loop-data transactions lname] -
- - - - -[if-loop-data transactions company] - -[/if-loop-data] - - - - - - - - - - - - - - - - - -
- Company: - [loop-data transactions company]
- Home phone: -[loop-data transactions phone_day] 
- Work phone: -[loop-data transactions phone_night] 
- Email: - [loop-data transactions email]
- Payment type: -[loop-data transactions payment_method]
- Field 1: -
- Field 2: -
- Field 3: -
-  -[loop-data transactions order_date]
- -
- -[set bill_address] -[loop-data transactions b_fname] [loop-data transactions b_lname]
-[loop-data transactions b_address1]
-[if-loop-data transactions b_address2] -[loop-data transactions b_address2]
-[/if-loop-data] -[loop-data transactions b_city], [loop-data transactions b_state] [loop-data transactions b_zip]
-[/set] - -[set ship_address] -[loop-data transactions fname] [loop-data transactions lname]
-[loop-data transactions address1]
-[if-loop-data transactions address2] -[loop-data transactions address2]
-[/if-loop-data] -[loop-data transactions city], [loop-data transactions state] [loop-data transactions zip]
-[/set] - - -

-Bill To:
-

-[if-loop-data transactions b_address1] -[scratch bill_address] -[else] -[scratch ship_address] -[/else] -[/if-loop-data] -
- - -Ship To: - -
-
-[scratch ship_address] -
-
- -[set bill_address][/set] -[set ship_address][/set] -
- -Qty. - -Name - -SKU - -Each - -Discount - -Total
- -[sql-data orderline quantity] - - -[data table=products col=description key="[sql-data orderline sku]"] -[if-sql-param size] -
-Size: [sql-param size] -[/if-sql-param] -[if-sql-param color] -
-Color: [sql-param color] -[/if-sql-param] - -[if-sql-data orderline options] -
-Options: [sql-data orderline options] -[/if-sql-data] - -
- -[sql-data orderline sku] - - -[sql-data orderline price] - - - [sql-data orderline discount] - - -[currency][sql-data orderline subtotal][/currency] - -
-Product Total: - -[currency][loop-data transactions subtotal][/currency] -
-Tax: - -[currency][loop-data transactions salestax][/currency] -
-Shipping: [loop-data transactions shipmode] - - -[currency][loop-data transactions shipping][/currency] -
-Grand total: - -[currency][loop-data transactions total_cost][/currency]
-
-Total weight: - -[calc]$total_weight[/calc] -
-Total volume: - -  -
-Comments: -
-[loop-data transactions comments]
-
-
-
 
-
- -[/loop] - - -
-(Please print this receipt for your records. Thank you for your order!) -

-__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/etc/report b/dist/barry/etc/report deleted file mode 100644 index 2e6bb8451..000000000 --- a/dist/barry/etc/report +++ /dev/null @@ -1,95 +0,0 @@ -[seti order_text] -- ORDER DATE: [tag time]%c[/tag] - ORDER NUMBER: [value mv_order_number] - LEAD SOURCE: [data session source] - REFERRING URL: [data session referer] - - Name: [value fname] [value lname] -[if value company] Company: [value company][/if] - Email address: [value email][if value email_copy] - EMAIL COPY REQUESTED[/if] - Mail List Req: [if value mail_list]REQUESTED TO BE ON LIST[/if] - - Address: [value address1][if value address2] - [value address2][/if] -City, State, Zip: [value city], [value state] [value zip] - Country: [value country] -[if value mv_credit_card_info] -Credit Card Info: -[value mv_credit_card_info] -[else] -[/else][/if] - Payment Method: [value mv_payment] - Shipping Method: [shipping-desc] - - Daytime Phone: [value phone_day] - Evening Phone: [value phone_night] -[if value b_fname] -[or value b_address1] - Billing Name: [value b_fname] [value b_lname] - Billing Address: [value b_address1][if value b_address2] - [value b_address2][/if] -City, State, Zip: [value b_city], [value b_state] [value b_zip][/if] -[if value b_country] Billing Country: [value b_country] -[/if] - -Quan Item No. Description Price Extension ----- ----------- -------------------------------- ------------- --------------- -[item-list][row 82] -[column width=5 gutter=1 align=right] [item-quantity] [/column] -[column width=12 gutter=1] [item-code] [/column] -[column width=32 align=left gutter=1 wrap=1] -[item-description] -[if-modifier size]SIZE-->[item-modifier size][/if-modifier][if-modifier color] COLOR-->[item-modifier color][/if-modifier] -[/column] -[column width=14 align=right gutter=1][item-price][/column] -[column width=15 align=right gutter=0][item-subtotal][/column] -[/row] - -[/item-list] -[row 82] -[column width=5 align=right gutter=1][/column] -[column width=12 gutter=1][/column] -[column width=32 align=right gutter=1 wrap=1][/column] -[column width=14 gutter=1]SUBTOTAL[/column] -[column width=15 align=right gutter=0][subtotal][/column] -[/row] -[row 82] -[column width=5 align=right gutter=1][/column] -[column width=12 gutter=1][/column] -[column width=32 align=right gutter=1 wrap=1][/column] -[column width=14 gutter=1]SALES TAX[/column] -[column width=15 align=right gutter=0][salestax][/column] -[/row] -[row 82] - [column width=5 align=right gutter=1][/column] - [column width=12 gutter=1][/column] - [column width=32 align=right gutter=1 wrap=1][/column] - [column width=14 gutter=1]SHIPPING[/column] - [column width=15 align=right gutter=0][shipping][/column] -[/row] - -[row 82] -[column width=5 align=right gutter=1][/column] -[column width=12 gutter=1][/column] -[column width=32 align=right gutter=1 wrap=1][/column] -[column width=14 gutter=1]ORDER TOTAL[/column] -[column width=15 align=right gutter=0][total-cost][/column] -[/row] - -[if value gift_note] -Gift Note or Special Instructions: ---------------------------------------------------- -[value gift_note] -[/if] -[/seti] -[tag op=mime description="Order Text" interpolate=1] -[scratch order_text] -[/tag] -[if value mv_credit_card_info] -[tag op=mime - interpolate=1 - type=application/pgp-encrypted - description="CreditCard_[value mv_order_number]"] -[value mv_credit_card_info] -[/tag] -[/if] diff --git a/dist/barry/etc/ship_notice b/dist/barry/etc/ship_notice deleted file mode 100644 index a33f5b015..000000000 --- a/dist/barry/etc/ship_notice +++ /dev/null @@ -1,139 +0,0 @@ -[loop list="[scratch ship_notice_order_number]"] -To: [scratch ship_notice_email] -Subject: Your order number [loop-code] has [if scratch ship_now_complete]completely shipped![elsif !scratch ship_notice_complete]partially shipped[/elsif][else]shipped![/else][/if] -From: __COMPANY__ Customer Service <[either]__EMAIL_INFO__[or]__ORDERS_TO__[/either]> -Reply-to: [either]__EMAIL_SERVICE__[or]__EMAIL_INFO__[or]__ORDERS_TO__[/either] - -Dear [loop-data transactions fname] [loop-data transactions lname], - -[if scratch ship_now_complete] -We have made the last shipment of your order #[loop-code], it is now complete! -[elsif scratch ship_notice_complete] -Your order #[loop-code] has been shipped! -[/elsif] -[else] -We have made a partial shipment of your order #[loop-code]. -[/else] -[/if] - - Name: [loop-data transactions fname] [loop-data transactions lname] -[if-loop-data transactions company] Company: [loop-data transactions company][/if-loop-data] - Email address: [loop-data transactions email] - - Address: [loop-data transactions address1][if-loop-data transactions address2] - [loop-data transactions address2][/if-loop-data] -City, State, Zip: [loop-data transactions city], [loop-data transactions state] [loop-data transactions zip] - Country: [loop-data transactions country] - - Payment Method: [loop-data transactions payment_method] - Shipping Method: [shipping-desc [loop-data transactions shipmode]] - - Daytime Phone: [loop-data transactions phone_day] - Evening Phone: [loop-data transactions phone_night] - -[if-loop-data transactions b_address1] - Billing Name: [loop-data transactions b_fname] [loop-data transactions b_lname] - Billing Address: [loop-data transactions b_address1] [loop-data transactions b_address2] -City, State, Zip: [loop-data transactions b_city], [loop-data transactions b_state] [loop-data transactions b_zip] - Billing Country: [value b_country] -[/if-loop-data] - -Quan Item No. Description Price Extension ----- ----------- ------------------------------- -------------- ---------------- -[loop prefix=item search=" - fi=orderline - st=db - sf=order_number - se=[loop-code] - ml=1000 - "][row 82] -[column width=5 gutter=1 align=right] [item-data orderline quantity] [/column] -[column width=12 gutter=1] [item-data orderline sku] [/column] -[column width=32 gutter=1 align=left wrap=1][item-data orderline description] -[if-item-data transactions size]SIZE-->[item-item-data transactions size][/if-item-data][if-item-data transactions color] COLOR-->[item-item-data transactions color][/if-item-data] -[/column] -[column width=15 gutter=1 align=r][currency][item-data orderline price][/currency][/column] -[column width=16 gutter=0 align=r][currency][item-data orderline subtotal][/currency][/column] -[/row] -[row 82] -[column width=5 gutter=1 align=right][/column] -[column width=12 gutter=1][/column] -[column width=60 gutter=1 align=left wrap=1][calc] - my $status = q{[display - table=orderline - column=status - key="[item-code]" - arbitrary=order_view - ]}; - $status =~ s:<.*>::s; - if($status !~ /\S/i) { - $status = q{[item-data orderline status]}; - } - $status = uc $status; - my $mesg = q{[data - table=inventory - column=stock_message - key="[item-data orderline sku]" - ]}; - if(!mesg and $status !~ /^\s*shipped\b/i) { - $status .= " ($mesg)"; - } - $status .= q{ time: [convert-date][item-data orderline update_date][/convert-date]}; - return $status; -[/calc] -[/column] -[/row] - -[/loop] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SUBTOTAL[/column] -[column width=16 align=right gutter=0][currency][loop-data transactions subtotal][/currency][/column] -[/row] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SALES TAX[/column] -[column width=16 align=right gutter=0][currency][loop-data transactions salestax][/currency][/column] -[/row] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SHIPPING[/column] -[column width=16 align=right gutter=0][currency][loop-data transactions shipping][/currency][/column] -[/row] - -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]ORDER TOTAL[/column] -[column width=16 align = right gutter=0][currency][loop-data transactions total_cost][/currency][/column] -[/row] - -[if-loop-data transactions comments] -Your comments or gift note ----------------------------- -[loop-data transactions comments] -[/if-loop-data] - -Should you have a question about your items, or about other __COMPANY__ -products, please reply to this message and let us help. - -Remember, you can always visit our site at: - - __SERVER_NAME__ - -Regards and thanks for your business! - -__COMPANY__ -__ADDRESS__ -__CITY__ -__PHONE__ -__TOLLFREE__ -FAX: __FAX__ -[/loop] diff --git a/dist/barry/html/index.html b/dist/barry/html/index.html deleted file mode 100644 index 99f6254e1..000000000 --- a/dist/barry/html/index.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - __MVC_COMPANY__: Home page - - -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - - -
     
-  
-
-
-
- - - - - - -
- - - -
-

Welcome to Barry's!

-

-Enter -

-This version introduces the Interchange user interface: -

-Admin -

-
-This is the "barry" demonstration of the Akopia Interchange 4.0 electronic -catalog system. Links that will help you to use this software: -

-

-

- Here are some links to order from different affiliates. Remember, these stick, - so don't expect every click to change an affiliate. You have to close your - browser and re-click. -

-
- - - - - -

- -
- -
- -
- - - - - - diff --git a/dist/barry/images/about.gif b/dist/barry/images/about.gif deleted file mode 100644 index 9843e3eb55143f7cd2c94aaf5bd952e3a281a8c1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 430 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 diff --git a/dist/barry/images/admin/b-help2.gif b/dist/barry/images/admin/b-help2.gif deleted file mode 100644 index 38f769f2631b298580f2977fd02d7663e4ebae45..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 256 zcmZ?wbhEHblwsgyIP#xi*{1zF_a8G(n`xUf$E|pNK;`1dhGofZD|36+bk5&4XU(3n z$?NN9Zkn`g=lY$84jnsr;J^U}Qh?%57DfgJ0R|nACXk&DthEY<9a1u-xk83buXCN16EyWq3TaUGfYWnOGUDJTseB{5X1h+gR0mqWf#(+2R@9+qnez S*tl&QSQq3c@EFgUJ!h^4gR4Nt z%)0*hwG6cy{JH9U3p!I4dM;h19^DMkJ_mW#WFAw9~2n*9)*`|f1m3!Vcs^^=2;CHs%7!mc{mHRmxe@cbnK~pVn zVK(PSDv=gzSo&nMnVw2MKO5<+n=JQ)56w7&-0UYX+{o~8?ceh2 z=*z$cWlkS$L8S$c85$dzUmxlf=4xCqiFKdEgph&*4o$M=o+}F(4H$x)RhSF}POe>j KU09KU!5RRD8<`RS diff --git a/dist/barry/images/admin/b-orders2.gif b/dist/barry/images/admin/b-orders2.gif deleted file mode 100644 index d975eeffe331856778f9e40c481365854b76d432..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 534 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 Gbovig1kYCh diff --git a/dist/barry/images/admin/cleardot.gif b/dist/barry/images/admin/cleardot.gif deleted file mode 100644 index 35d42e808f0a8017b8d52a06be2f8fec0b466a66..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43 scmZ?wbhEHbWMp7uXkcLY|NlP&1B2pE7Dgb&paUX6G7L;iE{qJ;0LZEa`2YX_ diff --git a/dist/barry/images/admin/coinlogo.jpg b/dist/barry/images/admin/coinlogo.jpg deleted file mode 100644 index f551ac1bf55bc669b947393e1d02821cb7d07d3c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18365 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 diff --git a/dist/barry/images/admin/delete.gif b/dist/barry/images/admin/delete.gif deleted file mode 100644 index eaf9997ced959f9557c68fa8f0f56050435b1317..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 126 zcmZ?wbhEHb6k!lySjYeZ|A7b$6#w!0CZ?n+lxLP?D7bt21~4f8WMSlDU}De#sRQX? zV6vUUx_l+?!E@buH-6+fZ(IIG_b$hzM;&dUS$Q(tJB7S+Rin;t*!FHu;qD853#0j3 W0&gZQx^w916wl>XUTtAuum%9R4>5rN diff --git a/dist/barry/images/admin/delsm.gif b/dist/barry/images/admin/delsm.gif deleted file mode 100644 index cf19f6182c8696c9fbd8b0ffec87a80c7673dd55..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 79 zcmZ?wbhEHb-Xz@*gEzw-23{>5`lI=eR?ORw&$xvkW+yg@&WtvAFs%+oyn@vrAN+!2FgA&7LgdM$msG{jgj*VKw;b&W_&MNEp LeCV-eWUvMRho4eP diff --git a/dist/barry/images/admin/folder.open.gif b/dist/barry/images/admin/folder.open.gif deleted file mode 100644 index 30979cb52855157110d56344ce09ff29ad726585..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 242 zcmZ?wbhEHblx7fPIK;s49|+FOJoEqm?%lg*rWpeP0~jd&^9#wyELKP?Dp3GZnRyB& z8L0{drAaxN$qFg?xrv#1dJ5jDWk3m!()5hfVjYES5HG_aHM2x7IX_oNAvm?5BsDiF zwMfCx($bVc@h1x-0|OI-4#<3v?F`JR8oTcNGdShBI#=y=&2-5G4yn89^Q6URrb|x} zc)e?b^5WuCck>TOH!hekVIgPfp~Qt9URLv4mOfysiDC|%v8Jjt&35m)a4xxmqX+dL h7rU*#p8HYSdByGb-#i9N&0}bRSuA9OK;#20ycr{J#vN= zx_S0Jgj;;D?C$K$?E9Uae>pk5-e{x0QcqNOc1O3nHCa_xc14%FG{vmW?2Jx#YI>tO zvLia&p&50xvmI@>1yZY8*@~81Bwzy#7Q=LF_Dp0|RJlsCmMpU}DqX2zK{2u-DqNu< zMX$3QWtRmr#dX55d0l0Cm(k<;@@__#9dm@GaF7=1xyj-&zzdq^z?Co$O>5P9iLd@SeA&Oe zzPa7ref$1(dv<<#rNe(aZ{DHxBdqvGHhd1$&woB2|NM2o`}XMK_v6FUkG;M37axwd G`t%=H!_Q^_ diff --git a/dist/barry/images/admin/icon_config.gif b/dist/barry/images/admin/icon_config.gif deleted file mode 100644 index a22b52ef508be1b35c62c4fe36c701d96d38f5b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 153 zcmZ?wbhEHb6krfw*!-X2|Ns974jkCCXHQmER$5w`zrVk%tgL{500R!7_>+Z^fq{`h z2P6+N!-2)kz@wyVkA=Sg$0_y(hC2)A-qc{@C{=9kWIO6ucyCRwkfDTF$iWR>f18$z jaVz}b=u~m=+y2sGr42vp%p(U=mR}I9S+$c%kii-Nk3KDR diff --git a/dist/barry/images/admin/icon_error.gif b/dist/barry/images/admin/icon_error.gif deleted file mode 100644 index 572b6d9554da8fc603a2ecf75a54639c90d5b746..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 105 zcmZ?wbhEHb6krfwSjYeZ|A7b$6#w!0CZ?n+lxLP?D7bt21~4f8WMSlDU}De#sRQX? zVA7bIZjbn_ z4pPjG&gBeWB(}#)w%B1J$=V&vRJbd+YxafAnd_VwtTTMPi@g2IJiQ9s0;}Bo%U!+l zT|(=f1FM|Eo18-G9m5(OL+c#^tL(#@>_h79B3kUinrx!GEaUqu11iiDCz&TqFiV~YWtwSxze(B*ljNz!X|s&eW*TM8HcAJgSw`tI4KwE&W&qI~!;IO6>9Y;8<{4zn zF-V_fkTyd$GzXi!b9R5Whdi68i-iCqn@&hvU#_1pBd=A76eFXg@2sY{ z5N)<~krL4v(k3AXA3Ri7 zdG=zqt@ZP_xgmb8fp2ewmH%m6uZ01O!b%>S8a#0x=g1pog4%*-<{9A^8LW000yKEC2ui01yBW06+zUAVoDv(uinEeMC!mR#jOZ5Zs^l zEQ+!`o}h3@gd7lv#1WxLP>e_gM3wpsDg(kMbGc+TgzMmA#R4`Hl4)`9om9IX;{ky@ zM7#Ennu0Q?d@BZO4H6w48Z80?0%VH<1RNML7#skPj*I}3lo5muACCY94Qx$IO;moR MJqvFtgeoBbJ2$IX>Hq)$ diff --git a/dist/barry/images/admin/icon_pages.gif b/dist/barry/images/admin/icon_pages.gif deleted file mode 100644 index 92be23a5b93c71803e5e74dd162a972984191f98..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 152 zcmZ?wbhEHb6krfw*!-X2|Ns9lU%q_!@Zs6BXAc}WuzmY>J3BiW85s!)2?lIH@h1x- z0|N_#4oDJYh69VM!AVQOofeE*t!xXH7k0AGQz>V9bgVMsSmE)&eqE5~K!RhF n^GA+dQ#+bGZp9sWv`P4=ulJ;Q0gEN7eQipwPkZ|+F<1itkkmF& diff --git a/dist/barry/images/admin/icon_people.gif b/dist/barry/images/admin/icon_people.gif deleted file mode 100644 index c8ab06ce7ee046de2ffd107e82f2d90c9f4d5866..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 990 zcmZ?wbhEHb6krfwc=n&+$H)8cpI&%)y`Vuz!VphiX2M!!CGjKN5S2mT9Gtss;Hqtk8NHWxQ zHSj9XH}utY%Fxwz)0H#QQIpmYQ`a`Ol$Vv1Ro9i`XOfUp5|>mKlaUh>6BX996PDE! zQZ?sOw&D{K<&rmMVP;_%nn3X<3nK%ADuWKl`Jgy)U@vJGpo4cswM>`T68@ zHyMhuFbV7Lu#{D_-JvDI#v!P+%G$x2ozu!heUr42k<1P=^Cok%O?Ea-Hg;W&4Aw(4 z{3vxbJlq*L4l|T;h-9#E^^1G4X}Kr`xC#ph$kh}mIkO*by4WEgPPn6swt#dL?6gVwBI@>D6rtxuN%RF73Tt1PK#s)^7Cap(XRxq8N$i*(? zVbSE)>aC)+>%hvubjD^w>3bzBPYA4@Vb%CbAwYrMo7YHDylbQIqQ+){j1xATUBaxA zd|_)!R-6i7$mO8&<$xxm#yj8Xsn=?LZd%q8&}g*dgyfeeClxGXPIR5wnaV$JTE(|F JdnE)ItN{~4w@Ls2 diff --git a/dist/barry/images/admin/icon_regen.gif b/dist/barry/images/admin/icon_regen.gif deleted file mode 100644 index c4af9496e4ed910ccb156b64587bde3c1dcb25e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 617 zcmZ?wbhEHb6krfwc=n&+|NsBLfB*jZ^XK>P-@ktS`uX$cj~_q2fB*jN+qci3KY#l4 z>Ep+bA3l6|^XAR#*RNl`eEHI)OBXL*yl~;d`Sa(`ojZ5-?AZec4xB!H`pA(ZJ9qBf zvSrK4l`B`QSg~Zuk~wqc%$hZ8>eQ)Irc9YUd2)MudvkMhV`F1oU0qF0O?i2FSy@?e zadBp5W>Qj8R8&+%L_}z4Xh=v%aBy%yK!Bg0pO24^x3{;0gM*!&ot2f9g@uK=xw)yS zsgaS9p`oFHfq|~Bu9lXThK7cUii(nwlA@xbf`WpaoSck|jI^}0l$4aDq@;v|gqWC^ zh=_=gkPr_K4>vbA2L}f`J3A{YDP;LW-)PP0pemTs(ZD;=J6FGn>2_*i`&X1O*H|6{IwmiRm$znc6Xk z1zFlK_%|6CTkErVd1`2QdWjkM1}?LAV_@>|akP>Xb9L$zTNbLU@#uk=?qLRg?Es|dG%O3Uh?RIgsflYUcfTwL7T rqbb75$tZB(0K21%nazvp@7~?Ld-tkUt2#P5%FD|` zLqlC$T$GfQ1O){d7#I})bNji51UowhxEkphFf)RL{>i#$ra6^n=A@(+DH!OPDkN1Z zM3$u%D+FYwm!_65DE?$&=1Mdkc)wuw4KAkRj~@!ubak^PKFiP$;dM_~ShFXgwcTma1-9a6 zP8Br=*jPKCehLj$3F~OJxzZ8J>BlQ!o#4mF!Qtr2ZqCZd$K%M&%aq%l#Lvsm$TX9m zxm(DUpOb5`lw{FDAwg_z>-=!y<_#%hZ>3m9~*Y zmf|SI=-t%C?d9Dp#K#bnK7)scp-RG+y=I=!d`Tf*9&YC4_#HRtmh@Lse+8Q-0#*(a zEqnxYdJAfTnYT3cC~UgWxPaM2hSzER#S0-43`>+86%@q8+SdeB03FxnGoiwv{O)^S zZEhPe?n8?dc(cX(x>_D;aD3wDv#pd!VrAW~pmcPnPAvCb3bX5isrVaN*&l;jqg T#>gkcA}PVl&EqR6$Y2csfmrFe diff --git a/dist/barry/images/admin/icon_stats.gif b/dist/barry/images/admin/icon_stats.gif deleted file mode 100644 index 88ca1e74696e27fd938a628f370d0df29a25bc88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 313 zcmZ?wbhEHb6krfwxXQqgmi9j@>wiwp|6MO%p8Nm*{Qv(K{{O%D|NnmmhKCFc|GBt; z%oi_SJbn7~(W6KA?%lh4_wJ1wH?CZ{a`EED3l}b&KY#wrnKQd~?b^P5`<5+R)~#E& za^=cp%a$!!vSik*S<|LXn>1-sXJ=hZVoeq-T(sE4k--`O)O~@K diff --git a/dist/barry/images/admin/index.gif b/dist/barry/images/admin/index.gif deleted file mode 100644 index 162478fb3a7f690884b1527488a27a9d34ab497b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 268 zcmZ?wbhEHb6k!l!IK;s4|Ns9p|NqaNIWz6de`8}~1{hHM=NFQZS*(y)RH6W+GV>Hl zGEx-^N|SOjlND0(a}zW3^c1{P%YYIdrRf=|#X1VvAYO(;YG#REa(=FkLU3w9NosCV zYLSAWrKKr@;!hSv1_nk39gr0u+ZmYaJ$CK+XdvLQdala8OzZQ4*F%+d^j>G}%y8WC zp)<%eSG-8|P1Cu@LU&KQy{J}XRik+(=tTM=GYuMB5h}jym8(tr{ zTHty08q@pqX@{qpFA8HkpSQf;)z`l$D#)_MC9vJG&E2N2-g4rU9X0k#`er{rBo}PktY8g<%qclAuwOB_X8^p_SNX;zKOU}>LQ3y^g zC`rvtN-a__w6rv3Q2fcl$iTqNpaZfI}mo*BX ubMM=^lVvk>^@~}aS-AV^f3&VBD9tXZudR+|59;m-w3jTH=pio1U=0AHb6^Gl diff --git a/dist/barry/images/admin/left.gif b/dist/barry/images/admin/left.gif deleted file mode 100644 index 279e6710d4961d7644ea2e3e39e6afd300147aa8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 172 zcmZ?wbhEHb6k!l!SjfQe|Ns9p|Nk?9f#N^Ekc`Y?g~Xx~1t67~r%;lSs!&jxl#`jP zkdmL9n3<=i;GJ3ql<+7`&qyuSQOE}IG8|GfOZ1ZSb9EGgQwvH`bCXhw6bvmbO&Jt_ zvM@3*Ff!-Xz@**Nzw-3iM{+%$5nXSNI_AHs_0#Z5ammWC>ec*qNb!1QNo>>3 NI{94w6cGjnYXFzvI#mDw diff --git a/dist/barry/images/admin/plus.gif b/dist/barry/images/admin/plus.gif deleted file mode 100644 index b9719852c46a0409333277c90239b4fd27d12eb1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 125 zcmZ?wbhEHb6k!lySjYeZiItbZG=t(lKHtQYRE6@)k_-iRPu~Cr#h)yUTntPMIv@og z9Slr1Q}|aFyk%;d@@B7v^H$#TXC>uC%VwtOo?5APf%EVgiPQP9=PT;o>s(3N8nl1X Wii{f`SV|+a=f1ZlTPSl{H%0GC7G#ie|ZwmQ%US zXpMKY-8?ObqPSqLS!SlvVnvghjacUYHs`$OJ5{aa;udkr3?dYXTe4)^aNJJo!RegOG-QCRSXtJ*_fkJVn(JToBGM#RQ z!`Tpt)rx@%S=agAp4uUW-zKgu*0^P2P)8Rdc`;z`vf+>WSLH7UuqIfXElzNR?;Yql z^2zmlRlMplwK`-s?3DA1~`nSPvYlG`w<`mtiVzW288tCahPhoWL^_xBx_BhV*X&`!# zsXH93H_SFxgqe(Pvwh_YUeLjFA28_yo_d2PG%(=}CTL*X8;p2^VJaB%0*}1FpeImx zfdLON;0gMvpx+(zdH^{UbW?%U14vzg#2wss1GmZGsx!Fk2r3;wnFGkfgDhK+VGDk? z1<6)mk0ltO!aF_T3L0X-3!$KC4Ekz@8^a^b5QF|&zmiZxff$An@)+6Zu?HA*2ZOGl z-wpJUK_3P5x`19X_{|>tiU(zQP-F{^TY3Xyzs_z)Qke4jajK4;MTJ&xd%B}l{q z4H%FUfZPEz+JNIG;2;*H8i7b%@Pi%*MFU?HAZq{|9GC%s0RRpF1VLZFepRd0OG`^C zl}f2pK700Te0+R(cz9r7Kqiy5x3^!rcCEg?zPh@)va+(cxL7O}3x&drjEs{fPo}4* z@87>aF)=YVHkQlfvf1pQpdbc=;p^+`>FG(KP)H<_rKKeR0KbZa0iXd~zBBmu6HGJ& zbkHumBE`cTv@vO?ytTG7Q)k)RoO7*C23Jp}+pm25@12a#wDpjQzjvcD--No%ySG?9 zFnrN|y3=uMSJ2^=C;9Qhzp5W(yl8GBpJ<71KV{}h`dux=)^T|b|CO{ zrDaBC?fuOimMz`vnJo4CY@rmey}Hi?bF13Y_Kh}XL|5cX1&V4)#GxAXowMgJIs2`r zAI3&kR+DJW9@!1v=Pz3OXHc{m?P)R$KE)}4;Lux``6Pfccc6Kq@%oNb7&IASFKi9j zb#U7p_6j-bb;HH@Lc8RVKfbCzy?^oOVJ5Vxj%RQ=1N&pwIc;eBY>6N0Gx1T-t2D%5 z5dK725#x2?vVx^lFYEh1PZK-}`aA8D0&U+hTC|O0m^6&2!z9WJy&fki&(dF4DeW$M z-NB;pDGPJEcyFaWrjcC>MUJA=D|x2T#lxG*cD$;?xPAzW&iDL@lZrInHpcJN+Tf5P zJo9s{W(D;qvqOZryf3=fvo)*!Umbx?jeE7k#yV`jfo?2&DeW<`@GCI4lHz(aR}VjI^ASg zF~uDwGyD(IgLPqt#g#BD3%FOs_ReJMNVUF(h3P}g$U?irg|IMvb`@R%j@h)f>8hrd;&vHmDq9rE-TC^ zSs0wuov{fx*I((dz7n}8#Y`5%x%P+Jcs+;WZEm3I6e-g9m|O=~h}*Mc z(HZ*!t!qQmo!27!2(z}yBrI`fj!*ALnCpj`y0QzR|4T@bF%d^J=|xyL+_`7&Nw!A z_Qrg|xkJYhxMg&>-^R4^YHyPL#5;}{`rAXFEJEU@;i$IYay{C1{Lb0=aH~nYUZxrm zs%*^;P$dvfsY7u8jKt0ek;v5J@l!?q9Y=EYpizO-Cc9K=cht!k~u7YRc*;H z^C7r{P9-K!wiRV!f6vPz$B3t%oIPCir`2nF>Y$-i7*{H)xf@!-+az9EtQNGA*vr=X*^|3RG;>6P0GQ>i)ek#yL zZcXuxe`5|tF*W;SJb|FIrZ`u}o7tfig6=dQO3B;7SL%hUVHzS2bU0CZs?+i}>6rUz z;>}vKz4q3&<;7L}v0#hq$2(1`YD9$Me9Oy15kahsGTE$jewe1WUXDkRFf8Pz@q**G z7Z5fzcuas8W`5HH<%GrSUaT1*mM`Wym)BUHfs@}JrfGFL!F+1YYE$E`p}cwF+*@x$ z3CVb!OVC@s<(>F4n+9G^EC+6sMbTaF8r5)Kp0Vr!BAY%t4Y%f5+uco4vtP%E{TJ~^ z9&ZZ~fAMC-3r~m)} diff --git a/dist/barry/images/admin/reddot.gif b/dist/barry/images/admin/reddot.gif deleted file mode 100644 index dd62ce25d048a302f5603f034f697eb70e7eca36..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 846 zcmchWF-o3c5QIli_@iJSgz%fn!a|rPAyt})ppYvFana5~uoeW*uw`zLBLvc<*n8v* zDU!{z?;*0q2g~lx&dk2w`NgMq@2@x7=$F(J)t%kZ?QTt0)sU$LRbR^X(pis4;F(BwB|(9O_`h!7sE*Ov6jr5 z$1%RHdrxtlaBN;zncijexW2rb(PhURVJRG>MS5e`LewwffJ|$NT5+PkXQ4UjF>{^~cM>!JEsI Iv#mb-14~2B-Xz@**Nzw)%~qgf4szES6oR(^g_8+4;}QR+O8Rat3Y55;}UDY3n~ OBkprQ{}oXN25SJ7EYJ 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 Gum%9J?KeFD diff --git a/dist/barry/images/admin/widgets.gif b/dist/barry/images/admin/widgets.gif deleted file mode 100644 index 7571763721c685272b81cc96abe30223b1651130..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 91 zcmZ?wbhEHb6l36GXkY+=^0rNi|M+|pQ&JVmGfOfQ+&z5*7!-f9Fmf?4GU$L*fYdTD pDYWzpo;dqz-Yhn`*~^X!zSvvgxhym>qEvj9mCW)(xy!^DtN}7P8s-21 diff --git a/dist/barry/images/banner.gif b/dist/barry/images/banner.gif deleted file mode 100644 index a4f32373f0f278d160eda502fdb073d826e0b37f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5199 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 JjTiv|06V-*cvJuY diff --git a/dist/barry/images/bg.gif b/dist/barry/images/bg.gif deleted file mode 100644 index b82e6ec462ece5e244bda0a9d8c4af235f6c8f35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45 vcmZ?wbhEHbWMyDwX!y@?;J^U}1_s5SEQ~;kK?g*DWE_}STKZQ;FjxZs?C}X) diff --git a/dist/barry/images/bikeparts.gif b/dist/barry/images/bikeparts.gif deleted file mode 100644 index b29eb6ffca9e95a97c91bbfcb93fefa5b157cab0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1917 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 diff --git a/dist/barry/images/clamps.gif b/dist/barry/images/clamps.gif deleted file mode 100644 index cfff8a7584d8788d0cb302b38e264971dd0f5efa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5522 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 F@qcC|!gv4x diff --git a/dist/barry/images/clear.gif b/dist/barry/images/clear.gif deleted file mode 100644 index b82e6ec462ece5e244bda0a9d8c4af235f6c8f35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45 vcmZ?wbhEHbWMyDwX!y@?;J^U}1_s5SEQ~;kK?g*DWE_}STKZQ;FjxZs?C}X) diff --git a/dist/barry/images/cleardot.gif b/dist/barry/images/cleardot.gif deleted file mode 100644 index b82e6ec462ece5e244bda0a9d8c4af235f6c8f35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45 vcmZ?wbhEHbWMyDwX!y@?;J^U}1_s5SEQ~;kK?g*DWE_}STKZQ;FjxZs?C}X) diff --git a/dist/barry/images/contactus.gif b/dist/barry/images/contactus.gif deleted file mode 100644 index 79d74ae90297f05923bde0fd8ed188d66bd2a271..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 635 zcmZ?wbhEHbjA9UCxcZ;rz<~q&`TR2ZGV+!3YDH@LP5Sz!`u08c{!{&(YMkQd$J?jb z=dZ}G-&Ehfr#~nyX#Uap>(8&>e`EjoN9XUqzW@H~`~Uy{|M>Ca)2C0bU%!6(^y&Tk z_ix;|ap}^fGiS~mJ$iKi{{1_4?AWwv)0#DFmM&d7fByWLGiRoyr7=(mDE?$&1R13R zB0zp}VEgaTP~f2>)qi41(a9VmX3=g}rA#>;_O!!6Q@FO@T;h3((R1nSpyxSOmiIsG zn3S;U_WK`~ozK1B&sxz~&RM`ECc?$e$0x=b5GuyYkPyxuE-*PlNQ{etG1@hdgIy$o znVCn7$5l;SSw4NEf>cm$-S!%Lw2{55;OSIno<=QA2qQ~@D6fJIKG}iv`9$ApyR^Jn=B0CUp*g`3o znsYL>7&ssEU=-Za+{ydxjzX~Mky{P!7nK+iQaDeGdbaW1_-nN7PDD1lfJ{<@@mf|M z)sT5VkGicB&JI#>uxwVCrQ&sJQAEe2A3pmIwVaRXb$BSbbBm(Wnk@!8hXYS*_)BRt SCVrFTQJU~f?wtw;gEauhv*0@b diff --git a/dist/barry/images/cranky.gif b/dist/barry/images/cranky.gif deleted file mode 100644 index 1e69cdefaea3983fae101e005038bfcc38a840e2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5694 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 diff --git a/dist/barry/images/customer.gif b/dist/barry/images/customer.gif deleted file mode 100644 index dcdf4aa451a844f8117f5535c9113e1d40595bf6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 838 zcmV-M1G)T1Nk%w1VTS+|0L1?Q|NsBs|KQ-@;LzaE(9qD(z`(%Zz`xkPu+Xruu&|)e zprF8@pumuzprD|Tkbtm&fPjE-uyAm2aByH?V4z@NaBxtNP*6}%K#)K{KtMBQGcbTK z5O5FxW&i*g00000EC2ui0EYk+000I5U?+}bX`X1Ru59bRa4gSsJ!{#u*?jN+sthF2 zm|%d&q|&8<0GrZ9lefuf51<%j-k8%_Xpq?Rlc0I(t$;T@fs z0|pyr3>*VmI{@zh0a~&G0|5cJ00;od=AJBYv;aV+P5l5Y2r!^S!3~`lJTX-8APWu? z%n)eQ?M0;pBgnz(q>qB5N*yHsZa8J20{{jc7&-(%E}TDS3W3FnP;Y=F1C`o5aRtBv z00jY01=wjY=n6!jw&_$+s>OyUJ1mfc*=Yj<0ZUOzbQGYaCUY$-kqeNkRi&x4I=uUs z3t`Jx@@NJmXQ%_+2b)T87(8wfno%yQwkT-tNhWmy9=!A0=IVgCE=Q)NDe*xee%F*f zz6ulpAA=(>iO6)ypaRklObb>7p@N19P$U3+6oY~Rps^4b7>G+apFAQU0{83cxULSq z4ZzGZ)xz%wjy4Ea=a)~l=g?tkm#zKx)C&Zj5P%>D0EDS_y!Dw+gM+p++cLyZOus*j zCiuCB7!3URXW&z~X(0d{1Q+ac@JXoQ4>;)HpbQ}Z06Rd0v2IDi zkpwSTqOdk0+Y_M10YH#s$`Swt7BF#Yv#QnyQbirbN(eg*G=)<{Bm{s^vkXMZRn08p zlqHgA)!;x#7~nw(WvF0djbouf0fABbXuv@R7Ew_JZmKmvqCvx0F-0vB7-hAy7ji0np=$NB(Gp0UNYHf*BrO=H6yhHemn;E^ruv2(Nhvni6SMDP|HA Qd}!vGF?f&w6F~p~I~#dUTL1t6 diff --git a/dist/barry/images/download.png b/dist/barry/images/download.png deleted file mode 100644 index b784bb59fa9c19ae321676ce005192177d9b4502..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2175 zcmV-_2!QvAP)f$jHXV z#>B+L!^6YE!otD9!N9=4zrx73y1=ow#J#<}zP`S>xw*Q!y1To(wYa{uwY9dkwzIRd zu&}VIu)U|Px~#0MuCA`Cs;a4}sidc^rKP2&rlz5xp`xOqo20j%r@EA(x|O24o1w0e zp0|maxQ&{#kDRpt005AdqnV$qlAErWo1ue{sf(1SfQ_b|ot>YbpO~1Ko12@KmX?&1 zl#!8t6OxZRBfPDZlO$RqD5t-Z+w+xbdz>`iEMU@XLOBVZH8ZRm{Dq-S89+? zXq!!DnMz}pQDJ~xZH!iFk5XleU220*Vu(&*heKYJNnCTSi8@n;G);glO^h#0g&#*emHI5E9iUu=`1u}~bHG~2$hy*QweSLj; zdU|JY;SLGXlQ6^YHDU_Z)9X-W@ct$Vq#Wf zd|YLCU1W1#VrWoZc0p8nPFr+MT60)lYgt@k0000)QEEU*I&CUF zV;wzw8ajCZ000vK~6BQK|85t1~5gs1iy?dBO zLl!rrW$UGSLKY(vd7Fr)8#xV}7zv=@G<^OuF4{7kUz%v{QmaT4Bp{OjO+;T0PpXDs zYN-{z9KQrI5(c<5?L8XOVbMgyjUv+A_&Kn|=N{@9KdjW_2Emf8j`8zws4AT^9eSc! z=oo$mG5fu{ zrq8FpD#=l0BQk>#@Egv+<)+8|1WI?^OFMM4Q&9@*37P3QPrFlXSFsmz&KL41t{IZt zUq{H8J1u00U>+)5c6G8qlEfhbk((3{0t~xK64mHXfob@sg%UenUsTq2P6H~iVmo#N z4*1|EX5KX5_rtM_S;NlBfe+3>SG8%}1eHi9I5pvw<4#~TiorD^Z!S1i^wJK-lu?vU zD%9xXQc&act{Scr)7E<|WQ2pndwM(LbS}Ho>rL&+no=Usxr!M>Q8rPdQbJJk-;X$2 zu9!eYDHW+ygsQ?-)jd#Qv^<)NJ0neNXKDr~CyRub$K9YGY$Qp2w1boTXwChSj6`ly zfb|%|uFU;(D)g$$wTcD@>fyR}L1X^&(?7A`P%QoC3>r5ZK0UkCrVmAB?y`?j_ZW^d&3w6e ztPq?TMEGQ(3cW6!1T{cmMFRb~CviT!H=_o1B7URy$Y9N94i-z`j7a#zr9x-EZBR6E zUT=CY5?`{;PGVQ~6;e~;oFp#8?)7>TSkvY*kb%XVA$(#{p*E+WXgcA&=_HNV@t??! zt5p+r(Is7^E^XCx&R4TD%G6cEfLHE~y|v^vemTQ#c@}pJ&}Rb=BpPnVG~j8wh1`XQ z?SM0mFA9?K^^7Zfsy*DQtg(c!=Hi|NArPipTbMt0`zi|Ysg#HPdn(txTY!yI;4i%% zFJoDSJrCbd)$*0LEHwM*ciqj_%ng!>Iy0~WU!;j`9#P(6V9kpmtjqDW*V;Y|d%#U7 z+KR&3TLq$hkUzD02EICuhRL)E{Dp$IrnQAhY9mW*bMf=Hz&0u9DI3JCfi)qmdr_4s z{(G3w@b5%HwSzXE!ol^=;RuRqijjX9`>CU4%OWht0VPa-6**o0cwT)o=&4NM*1(!= zp{x_;uS-+jnQlFTVSb#I^#YdeDtQ#xH+FO$j?`vcLH)n_;vWKDtM$;wWDJ}K{N&?o zR@OCbJ6zjA@Pldrur{y zN+pwa3;=V>kOG(re;}J2G<^TVB4_nWB)RCU03u-|3!{HlIAHcx0=x zWj7EWVOrpqGtJNfE6;d$L z8^sdzuzO{VE`(KYFz}VsyS1xS?LV9X>4Jp!t7iZJ002ovPDHLkV1kA? B_dWms diff --git a/dist/barry/images/front_collage.gif b/dist/barry/images/front_collage.gif deleted file mode 100644 index 67e8e0f8adc109b1d9062669e19ddb731f081d4e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15972 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 diff --git a/dist/barry/images/go.gif b/dist/barry/images/go.gif deleted file mode 100644 index 3254714c062e58233e01e229c81fcd0976afb8ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmV+h0r~z%Nk%w1VG;ll0K@+kaQZ;YsanXJus}pT z0d;q3PXGZ14ub^(2?+uPS{N}71eIwE43!599vlx5L`*XjA~>Q=Ba)&UHZ2uQ87?Cb M8KE&65-uSCJ97+kyZ`_I diff --git a/dist/barry/images/header_about.gif b/dist/barry/images/header_about.gif deleted file mode 100644 index 7d7eb6a5e6197c52a5fa81f4da759d7f5cacd896..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2262 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 H1cLtul&B_I diff --git a/dist/barry/images/header_books.gif b/dist/barry/images/header_books.gif deleted file mode 100644 index 9a87c5c83329d23a15654a2ac62a1ef6def9ded2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1771 zcmdUs`&Uv40>|$KuYx*-h)RfxLTHGJk4DE{WaXG!qti5)j}+TtoUxg`xoM+oc_Dle zj;LdbI*FsAg5{MSJ|_{&*D^`gNyZ+MZndaQxyw1WoekFcGxqa6=ljF=r|edytx{*B z(P$wjYBQ?uQWHc30s)5k3WWki5re@HliMki!6PHph3$nfA}f+>nwv${BP%eBNHxa7 z>dwlMN>TIhA>JWoI5S@)r824VVfm3G3A)F&jpqN4u>UCi#}|Nu6#+#T#lr zsg&wcSw*Un$!cmVBn^#CKV4~7wEWyyLvnF(-KtV|U%l4TysN9&2Zg{7+Fz+~^z9wD^v0Jjfq zn>rbl^{#VH0fCn|A(^*?aNX{>`B^I`ODZ_G?q(u5_C5 z3qxGXvBR^+Ky24+4<|Ju=tih2`G+0q-P6;z+Jx>_{*ulDYt6q6*=DO-5%lUp?heYN zSK9rtV-4TCt`BimUoD)(`Rxe~#oA};&O$;0DW><;xAfCzXyq|N^8?4kL*Cky(WU7+ zd|woB;<{p{f8V8(r-V1(EQDC!=Y6OvDKplG_QRuF*1sBWruIay4ZQ~zPnRZqjHKPl zd3FC7=EB8T6e*D($z&DVj6^oBD1jiiA%udxPQz~vl$@EgQ-P^q&Q)}7ZbaEm5Xbsqz{(KJU@@b2oR6%5dRxMa-!?%F%#~s_cA%|eJ zCOt_c>82s+=t%8AJSI#zuxY1H_aOIrXw|&7%h#BPy9u2|f{yln^Dpnf>Ui=g{8Bol zI~)J!X-es9>-(1|3rC(#saw|4XH+fBtr({d8;d(K`S5FP)b{eY3|_&IWU%{Y-->?a z<6*~!7d$h~ZbCs=k}Sh{Kr_VVXJqE)<^a2V`lmIY&gbQztQ+&Hp9i)&A6}YK1q_}M zXAi2MHn?9#xb@TvQ!k@kc3L9r{S?DDa8|#?7@Q?w9ejp-_K^V>9H3l%7X{qnbGp|t*3J7% zfEQ?6DbTUnzisz_@L$J9TBaHkm!Gk@MTo^`=RyabMKX=pC`RvfN6hspvh1%Sg@a|e z3Uuq_CpeVxaLaQYkmXGg*|LDS)lqk)@C`!SSt4-e>I%pT;pV0Zya!+8JovVVB^!M> z{)L-5El3=-n)XXvJ?QPuh1iA9oerb^RyLmcRP6|TS2l*t+l1YvM@R_)`#lU)nRUX|D+l-}uD5_<&_c&?cc7EpQ;o(0xNB#G(doz!dEHCfqdA*GF5IU= zq}B|He_5FFzVuNlecByG_Ibaolrbi@*?ls357I*CHR+V(FDK&;D?_oflD2^L9Jlz( zcf2mM_y0ovEsmEmQxQRJXHTu+m<_XTzr#3x=J$ZRMN^mG*v|P|js$NcihnHw=p|En XfkatC7dJ#fF1t>P(s^_ diff --git a/dist/barry/images/header_contactus.gif b/dist/barry/images/header_contactus.gif deleted file mode 100644 index 452b7a61d1dd837a6ad29266eb0709b7f94894d3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2037 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 diff --git a/dist/barry/images/header_login.gif b/dist/barry/images/header_login.gif deleted file mode 100644 index 5538205dba4be8a1a306d7fccbe749a5359847d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1351 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 Kt*I7dV8cHL^~yH@ diff --git a/dist/barry/images/header_new_account.gif b/dist/barry/images/header_new_account.gif deleted file mode 100644 index f39d7e3d9ceacd817d048f943a6b03f758539bd5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2210 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 Kt*I7dV8cHL^~yH@ diff --git a/dist/barry/images/header_parts.gif b/dist/barry/images/header_parts.gif deleted file mode 100644 index 1250f31ca10bc8f55c29d4f77b71602b94585519..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2116 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 a!1Sg#?TZ}N36L|)A^-r&sZhZX1OPjE1RrSt diff --git a/dist/barry/images/header_search.gif b/dist/barry/images/header_search.gif deleted file mode 100644 index bd637dd00b75526a2989c4a071bf76390c82b6f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1488 zcmV;>1uyzXNk%w1VZs0=0Hpx{nauzH|NqR)nE+-0z~KLIu&_XoaInz-kif8@(El@q zKQMq$;Q#;s|KNqc-_X#o(BS`kxX*yFun=$%CVxNR;LzaUz|hd3W~F~$rJrf6uaCv= zAb>C&c`u;A(521KFNIIA(BN{dkD1KOyv(?=)!!g+Ab+)=Fn~Zpl5fDkppd}OP@r&D zpO0CcZ;!yglE?3fzt4=luUVjvS)YHX((k3r<+aSk0000000000000000000000000 z00000EC2ui0Kxz!000L5z<_W_EE3~-337vB4HXs^7b=#Qn30QgYYArzp+%CKu(7h34}Pt7W@)Iqyr*(?cY6=B#Kp1?6}Mjmq`l71i>hJ` z!^YOvo1e;}(B0mNP~5;8NDYZ+{A=MwAn^gy%dF)%mR%-G3vfPtTjf)048GKA5qnJjooI+CYP01h&M z7(nBVNT>i_=zIb71J<`6xiD}e^=TUiQ~^XVFkxrUH8Ch~V9MdE8l7bgP@u5JfdRh; z8~~77fW}T52hOfT@D{7VBV5&})j7k#naphlH=Phcjnt-jbuQ@8lJVrGLZ$X)iXiki z8=bFyHUek&P7WeM7y>|{<%Ekb#tuN?dcw);Izg<#O&tL30oG|4pw0Gm2NcFZ`2H5$ zsN6RMPT+2-fMNul8rDda{02qs?atBgLIFNmCX`Z=jW)nn_qBw=dft%G-b`_6F;^Q2 z(D8wBO#YQ+;Cxf*w*ZIJ0Z3LGyKw*qWhU0wkAxF)G~5zy%mKv!95 zoRCX1yX`0y4Obuv!3hx9ppy$xDB$1~IvK#w69h;%KnQ#?@IeR=e4x_@5U2qq3Y~VE z>oZn0D$t`xoOOVK6SzQw2s8}plp4kfSipc|$*R+X1iY|YeRLo;2cim2puw~vOz;8( z{t~Qp;h^;u0tKS#^unmHSrU81uWNjW8wdQYK;lkNm;fRLo+6gv6$Av?lm`h&C4nx3 za*))jP$+5&XY`Vz)fgAL2ExA_oUq&(BH%V>NKk@D!>&&-U}wuWWkBKtAKZ2za}IJv zz@Zi|!hi)CU*m}&9rO9Z(Px%mMMwbb3`Lqp!)XOY)4s5@6=vXT=oxGb7&Qcuw&Aos z{#em-BJczNbkMR44NBO2{!&I7@49=&-CV1JC*F0h@eA2(?2IVfsq7uNr-UQ2vk}y= zeaSuBFwnCUbXSo$pHzrMMd4M{IQ1cVbM5!$r7)xgB^hswju1?rI`24vrVtW~Vn@=Zv_uC)lcIOZJ9pWFM z*h42Q@Bjufuz?P2ATp8xzxW-20aZ%HovPreQK%t%Q~+BC3pa(tg|35SqnOU3peRRJ z@P#l;M`#*x8aXJchNKXmNRHHq;?>ZDeCpv@gqVus#qfwo6oMIwhn7>Q!iY(XVicdi q#3s4}fl|z(76WjaDkg-6OxU6r$7lprUG5psV@2A?$VMXs0RTIxim^Tb diff --git a/dist/barry/images/header_shoes.gif b/dist/barry/images/header_shoes.gif deleted file mode 100644 index e7df21da771df11674e901ffecfd63744c0df267..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1647 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 VMe0s7@%>rG;LyM-z{bd64FKYK&-4HQ diff --git a/dist/barry/images/items/KHS.soft99.jpg b/dist/barry/images/items/KHS.soft99.jpg deleted file mode 100644 index 3db5d6b6c2602822c1d1b3fa288137f52b22016a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5911 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 diff --git a/dist/barry/images/items/RST.381R.jpg b/dist/barry/images/items/RST.381R.jpg deleted file mode 100644 index c394503ea1175e62c8a1b1b94b6662ccae954191..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2953 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 EU%Y+8X#fBK diff --git a/dist/barry/images/items/avid.arch50.jpg b/dist/barry/images/items/avid.arch50.jpg deleted file mode 100644 index dd6cbcda468b69e1d109fe49b5c7353206dd326a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3927 zcmb7GX*d+>-<}175E?>aG{lgOJwzJ9G_o|7?8%aSUpjn_k4K&*Zb|gpZnYW{GRK%?&tbFzx!zXXb!-SHo9&E00Myk)bRow z9Rki9dHZ?5?uB@Vg?R+PTq9vf_dr(4%cK-f7!V77l$9ew~13VkN{W! zpa*DNMOz@UtZq4eyi6|1q<3BD%zQ&)Q}7ukr4&maEJ8(3%#^=c9j1PKL0BMr`asKz zj{qzcpNpGfY9_GUM4h*Pv3VR;IW~GQ94|f&NXeivQ@z59%eR{_aa~P^a7&Y0yo$l% z*V-H=!oVbYDGJx;$fGW3^DjIOFZFbk1XA_vj6aos)gJ%tU#vb4E_~Vqd0bBa92w`z0Rv% zm*WQgy8QThjpFhSttzD3=$^l<=<;Z3?~7i8`!x8#d{)`1oG zhteIPH055}l=`BhRO zgM8XFaeRGUi22$k<_K_F0wspMlDm0xxR3Kpf*ve1?PAqa{h%CiEA~$KGFJ?> z`Wsm;J-)l9UWyqa$TVT+me6?jHTOV0Xf%X8C~O&$H8b0Fbq6w2$3mbn@&D3(v%{pB z%KAZBl3R}#k&9niOwb!5{a$lbaGrM%8+m5g=zJF%tqrXbTukOdjz_=*BZ2e1w%O6w z|8y%jZ|~RdScH3S-6Z3S?nCKE=F4uTZ+mJhY`dP! z$N=pHLUR8=4pnfP4PGN`$#IFa#W;8cbL$U5aUdvBg;TwoEEeSbeB7H?4VzynErUQc zp~T~a`bc>Ti(bL(3Mj-CqgQFFUspTt1$?ULuBdv~KEUD@#^=R&>xdW^N!2V|b0-o3 zL2hTt8d{27Z%;(t99lE$2&(*fl1H)Xq+_H+-tei!2;YS#smr*QnSxp?N)kX(UZnqu zoe*UxVx`c>JW-eN)+FxHCyrr_47~B*5|N^!yJfDjB%1ucwmqb;V0!qp3+MIGX`MVH z-1Vm--v;%m3b$z_tn_StBW}XxZpy%N{T?RQR>5&})v#b$Zh^D!_9la^?WwH9Y4Zw) zb6o!8h3(!9LBda=Jb0`1^0RL{t2Q!rQD!4w{j~xaLV?O|`2{aA?4G^_u+}ibN?#od z1EtB)5NLJ;n#XjDDx4LBhmzeS3j0d?B%H#v)jej^f1n&LG*X;`>q|s$iXc1GNcdRt zh0#4j!_g=s(CK)^5aL3Nu}A#=uxr5Us7w3>t2v)>N^4Sv3l&T`Dk1)Z_-p%I!57N6 zeM_}}qI&=Mfj_zIR7FM{w=delWhd&Vu7b`EJ5ZLDr)Q6obt-W*3q|d540W<22yZtP zIA=dR*G?vF2^@aO+jw~dpkNg~i<=tkuy61dI;t!R3qS7>sEZ64s-%sI$O5PmzM5UI z(55ocG9%IVMrl>|#*#-_PFQX$DBf&@4=dsF`|*7rb#Qn7y+ed|jCybsZ}&BO1$l>>+v|uxrC&js8p1VUiL7qR5T$0^M0U9b3t&b%mxHf7ZabjwvRxZoL zkdsL=-uC)LBqSfAMdwc$3q(*}XK%2j{8|fS-WD+&Tc()BY^sPY{b)0dv&h%3G3h0DhVfK5!XezW3KpfkrSjKNT8F8-{OMHzITa|4OWym3*x z-iOv79WC%AY-*fqjg1uzag~NZo?7tr=o9mS78PTwVrmY_w`VNRX}Nx#v=0v@0NWiu zR^3?lzq*7s8WD2Y_m@?_6D)6$&=PZ%^#G+bI{WwYTl1157S@wXEI!fI6*u-0zYaep zWdQmHuS`mtfyG7arzF3Y4=}In1;Pv|uLY(+rjy5+MB>zkIqbv_9V9LAZ;MgzK9-Z}J3Az2k4 zH!oFPR`$KEGV}~mas3G3gE~leWEvDMd5{0Wg|Wl0ZDx?%YU*DJYNSZ2n1$LJZEg$Q zXJ)2Pr?Y{uhW2{|=F$o!dKk$@!V(@R+vKEH%TE-!$uyhvQ8njbeC|;I<=tOvw-fu5 ze!}SXXl&G!d zfw36n*lQ>16z_V?^bC$#;jnHYp>ar2h>*3@(q0*LWt+H8E|&D~5MtPmR1ZysW~6N> zd!QsbD%!le*dFz%nCl!2KHX89Ut+((>&}bP>IpO>?Uioy_?FzTI`MT-GIW`4cov5yk9EI!;H!8qa z`*3HQ*ITJQjv0TQ*-R586|y2z_T8hb)eG#&yq7M2q*o;fB)+yWLZkP|(YtAV71e9K z?cy(XPGf3xhsz_rE=f5!ndiJGa{i1Op7vGzkzxPN^$SS1qS8-raw)^!z&zq_DaFcq zCPY+A^ONe(%WH9hfY0(7kA-y_&X2oJx?n-E%3+x6%kv1o+~_h*33uxuZJW|&63y`6 zZ`xHI^FZzKs&QW2{t+Oau9Pz7-fX6W24qb?_N&hlK746%{|GSPYhNy|&YYq5_A#f& ztBiwTmAE1Wcqf67GMG9V2nfJSd;5}00@Y{lv!)%m;URb`)l9sct>eFvtv?%Q^kkl^c1sYW_j(i- zew3C%kjNz&yV5in?`^=oz{Bm{(@zyz+OB8!8_Z_+oowm3`jh!8Yj`A1QvWZU(5va7 znzp}-R;IA=v*#P3l*p9|GqV`&RPu{%KA9CAq^)?@_fm?+?FSmK`qCKP_IhoWsSmfM z?^fve#5~fp3qMId9H^YS!#zbNr$l#LAbhb4kkB`6G_WnegOlPWhjW#zRPCnfb3Vo} zYCx;JCBcsGEX|7G@ci8?JExxztb+O`xOC28B9wYI()3Z z!RG2OqI`Sd@f#mc|9=9&MS60{q}i${EPIQ@c^1Vo9(K0|zFeH1u(Gk!pJ8~IsV%zT z^CF8hzl*f_^&$hJw6_F0oIa?|=NAdpF{kYmyxE>*Cz~h1_3GY7xt4pD+;gSWGSnR} zDb#_6_>V(s-|~+~@A~^+4!y|XZ+4Uru^V`e)5Pf*=V6j0De`K6-i#e)Jd#;68TQOq zx_60V<^k!{=j*H6pJJ{3+Edk%Dt<#umlK18!$S=$* zbR?Np#|f&glC8xk!`m!>onZ#pC2AW~eJ1g(>PS|@7MpQ)ppvaa8+T|3bih7-i|>9~ z#vf>0?>z6ybst~V9zG|I2ep z3lSx%`Catp@)z4aSzq#Jf6eL6t%pNPb>pgyUtx1ZTGSk0&Rv@D6OdEAATa}<(fy1o zQbrynJ;!fk++C9P1#+1Y(&6KHkJ#<}C2~uwqm=&_}oGNo_0QaU4i}G6L-rc>@POB{lUzk4g0LyF*D_%AgyyOOi z!#jaJD^6{f&Ki4FcTk#1Hq{gM{R@BY=E)fUw$t1kxm&J~8 dw(kjjx+)8vRiioGuxp_q(8(B5-Z76R{sWi$B<%nI diff --git a/dist/barry/images/items/barbntrini.gif b/dist/barry/images/items/barbntrini.gif deleted file mode 100644 index 239aa491e6da9e64748929e9aa968e4799fd32dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11712 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 G_WvK?Lypq` diff --git a/dist/barry/images/items/chrono.deepV.jpg b/dist/barry/images/items/chrono.deepV.jpg deleted file mode 100644 index 283edc01d94d86e958c3b0f93a8d6acc864029df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17314 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 aYPdp^+947mP9f`1QZg`giRB diff --git a/dist/barry/images/items/george.gif b/dist/barry/images/items/george.gif deleted file mode 100644 index 44a6eecd28657e79dd0a87a890521a118b7c7f97..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24242 zcmd74cT|*D)Hga*ktQI66frP>0cJpo5L*l&AOb3a3|)sdA`Ao(Ni5+VsxTk|(v1-j z5Ty-ON)(Wy2r5Oo8c761&=?a;EX;fNIWrVZ)?N3m_5JbXkF4YHl>O}b+vS{{yDT?- z-r;4Y)i}JB}?^BTyXNBYn zh4s&^BIir$pZRig;<3#?n%kwygrpLWrfxiNQG=Sge^+`CwdkmS=I&!x_XXAj1;+=4 zw12-Q`A3;-w)~Yk#eB9-#@P+oMMi}gx@Bc6a@r&-dj%Vw6B_>^Tz&p!?d|R7JGOQ- zD722PY@6Y~{a)(+>kZvK>I0LM@hQ9Hb9*Y!T2&Q=q?`-PDfqVLOh{?D{kbc&s(Y>- zS$lgbf_jtbBl*XlW%xX+upDgjeAJgHBa%pwPBkX8rB+swCCd$UFRWIp|HdM5uhdx^ zy|h5-q@y|&_EII*1|>(NOBox^?YB9{pr#)^!nU_5J4~$%4N7+n?vWC?rz?5Sc*Cry z$RA|U-*hNrTgW*ZS!f+Px3<_H+l|p0S*KWcTaHk*QyIPyHJB%hSNLlrzcMm(E{4 zpIlT@k&;wVnp%IowxaA>X?A{feaE@F?x>OI)4#N6_k46p^_?Kt0D(Y3|3fxG5aAH`&_Dj~`cKNFnZU;{ zC?cg|!u+p=fS`yx{u6J(B%heDxU(LuWnlsD6BDMuFU^rc@M357 z!Dc2bC~$iVER1K@pg+L_8Eep=_ypdHp(ls(eGp;{m3cIVy&NsD$<*~|2%YX*Tudzd za!hPkmyaMKOBPO)*Y|2?NvlyyV9^#Qt!9aSX@g&2QQ_6jB$6%BpLo~6FLCfoqC6We zCK__!Hu#A}g!`TKz1tV>kK+@tgzxccV@j*RJO1^}!-&M`(Sm?A%^o*GU-s454C#8b zF;@~)2+n$+61_b+`H_#fx=ikqX4eNO{!NO>EsQe%- z(1X}mK8sH*uvvW0=MpOr%iVz4F)>3eKhWU!xWU3Evy6`*NFWz35X5~BJb4a&Ifx`* z697s9?@~0L9V+u|4Uj=XXpFSuMy$kG!OR-AXJhF6`x^Mu!KPS=4~z7G zFv>ie;F}A?u$+)8!CjxI5)uXnetP_7!e*%SK%*c*icpdTQVr)DgZts*F&&E^hAER6 zGhz&v9c+fz3yI@L^9j_7$+JCL!{&f8q|&jNcMG%*W0t+2n*rW6h5idf8`0XeM~I!No?i@SKL&WisS_>f*cR_>GZaw(*P{EewSj!|)3z zGSXkKX68%8UtJoowNHqFxXA&&0y}~F*m?f9h(rJSW?<0VqWR?s*$xp10!-#8sbQ)ACbHl;wVJ{U4G(v?J(D5E~3iKA)5s$w!=sC=J{y{`p za~L1jzwku2NRR%KFyR`dx7Varu2Q$M#TEhf2=tVIy4{H7TZ={56#lt(06l#JHclH3 z-Z=HHp++nVBo`+Q`iuCBK8M3_D)&T&jdij$oNuNEYjUi_0*A2XU^ZXK z`Kv@_L!bAI?@;wXY7gI2fkdZN3m=9}l&kHZ*b!LW!5b&uy_x6&ec>mF5U94mjwME) zkPyIn+X{=f0od;Xt?+g)(4a+6yvVYJ1<=EA)_3_*R?~!O62UL@g$(i(^6;qyNi0I3 zXPzHP*Rz@H!Z-`so{1K7F9wQ1bT`9Z$`DKlY_En`@I6SA8yCK(^#sqtn{a5ry1h(v zpxfLSvABRx$ELM1cfZIrX^9Y60h}^18`Sf-4OY`0fP}yV5|K_d#iA&A55jwV!ZS8F7d!I^o$h>;s?+pBeUz6No`bmyqaY29fB*RV;xH599@~ zjkU%i<44~UCSeHrg1r%z59rGRWyn7Pr;sqQ(Rp_y63Nu=;R-WlSuWNQmR*-s@0+-! z6nZpx@*+L_wOpeEZ7=3=3f#d4@Dw=o>U%VU^B~`&9Ox919Qc1eg0L)^vk-d~-@-)) zQ8+c4b<(3XE^-0E9&B~o1p-3Yfny~H)Rm?08gHE@pLR#wM9=T8r$dybS&s3<-2#Du zYsgbX3W*6Pg86`91Ixf2fLNAd-T=H52m+l#{t}5!k14Oe6n%K^pd3X6C8RINT`zhi zuFWHz0^LS_LE4bsJ-orYEl%M>I%Q<@@bHR9dm^}%Zh3w0 zjwA&`YBvWxkqHhDa|lsZ4Dz{g;wAC|WngtLM>Pl#d)t@6CPi>d_NA?yw~UM=B5A8NXsHn_bX%_d*5lrUyY^i4ZBSr6*FcQM+%I!Y8s zRt47jWXBiTI&O8T)9(T8=q@56uIP$00m&fLl!#ChV&V)!O&~EI1X!?nq{+Z3FW`$I zct?!V4e2F7bW5Cqp>VJ>RxUC46PReIe*fQlf2j`{X4kaT?zyn#Sm94bhCA;*+I-@F zIr$EMU-8%+`qC=fpQ@cv>UtgGBF`Og-IK=+EV)krF9ce!wK70x*eijpaZn&ZoNkMo z7qtXUUQ8Rn8v(7|AUZDW$EKyQHI}US^NF|j)5)hxC2B)v9$r29UD>0Ckco#iA1((e zUp#v1ebH~{Brkk%Y{o94k_QTSR@Zo9?oCZVCXT)Ri|U3l90^^zB>~TFKQ9j-6%AUvdfm4Hg@4d?&)rRDc zmW=gZd352}4}@ufhhILa-g^^t3K<>f_#6j^IvR*h9s^!%nKQ^g0jLm0at4dS3v z&4IT9rxx<6PZr`p5VA};3TRgg{3&DB#qhhHtj#AL3M*X?9Ii|Mtx8y_*61PI^S8m+ z-71U-_8-$ngH~<%p=f(AI4UR5ARKy~Hh3(B-cXccWR@LlKoAQfaTGp)Q|Mh{bOsX7 z5*d8z3p%yrIH{Orz$w6&Y+8HxcxnyBW3#`1(P6)S4t@6;fB&A`7R%Dn+K`8Ai_yWt z-L)aZcQ3s8b6Sq;$$1WQ`aeX6LfwHzP%0ilIE?9gf#Psqzl^f~`UOBig=bSF(anG2|i>*P0pbH(69m)5!fPC%0v zjsFvZ{zVVyR9m6~nL3+MO3xp>x^-ZMlCkmOp4@sBzB4(2Zy(N^4xRnwi_rHuHT=|) zf$Z%sY>zd7d*b;Z2z8+3??#1e2?V}oCO6SK*c1jj1-RRTgW^2)G-!d{BO!i)Rf|0P zuLYS}GF;(%(RSKl>a=XF!Na0@m(~u69I=R^BQpXbfXJVJd_MD?q;#npYu%--j@AQ9 z{t^iaiB6A(0Iww$9TO6g8I&&~da!OU#It{EPzSe|@hPXsmXxdtx00NKtp)d=h&>W?`=6TRd>YdvPROy|CxWtXFs&}i!BbdRMRb2HaxyWZDewmg%+&j%{cZtqu7i6 zWVr{_WFS{T-jQo{`pnM>ssL?QfRKv>wa6(Tk>2gBPrII%{p-2=2QC_njaFB5#7V1L zBvoG6ab5UKhMxbEksVW0dz-?iInU3nnHK-zSfTwN%R?RZPt*Lh2=D@GLJ}*3Vg#5N zDi$pO5R`p zltF$@5b%Xs0(7*;fhH&75))ig0#&g3;2*T-%JyD7I@M5jDWhYbmSbrs5doNTN7kbY z5zeb4_FtR=RkG~Ps_?4I$v*n`tU~qSzFecDha{65j-C96<`6|sAyGS% zP>z7r4UDBEtHQOQ@<>2y;qHsaKK^r6AoR+;t;Y^+*DxFma0b`I^+DJjEJ#jDtq_Vu z91rl@?`v?@y%13#=l>74MD2F2@M@wNjTOH9ar4p1%It*OFBQMqK2a-VR&~dYl4YSrcAzyX@+B4ztt${BvsW#qH0nE^H1h2DjAA1hl`*Ujm5`dQAW|;cA4i z-f%gjC=wW%0jD7Qru_n2Tbtk6XB=3?$o4juIIrkGyzc8r!Ck#q9Gk!(={N`j zIEV6UrRycL>FK|w~uG;`TC}r|MV98P(EbG6FPQkE{+?!?ITWPd|o{$n7GF)`zsBC~srB7?30tb1l z3a&{2tGw$AQ&?&{_xxyBoG7hiNl`F#h#al<><7O3kNs7kkZ7du(PrdN|$h6twChL&q$ch7Ah9?4l=M5S?`Y98xY|A~XWH0R>S8 zXn!$kEL#|6%qSSTH6^P?<&P(qd3Qe=CoO2ul5-VijQkw_r~BhAxLV(mNEDOn&Z6w} zlMhU|^1J(aJ)&jka{{Rsqji82`El&_v6MR z4>$T$5hwdiT`!|!j666A1%G@}0sT$;m%+aP3j~@D2F>`mE zmQ*%L%QZsf8p3xk7i$K67Cfti@-|2esSq#-6-*F8@L}-r0-wE%Mcf(-4*W3cLevJj z8N1a!(zoHc>jh4s0ND+Fk*=S1M+xtJa`T7ZA9bGl>f0xcN2Y3Bj_y-!;S*He_WkRp z5#}UneWHTEU@;Hg)}V+Bs7b}r7I`JqN&yQ0#|qE< zR2%p>hogUVNZjeuv_XK1Gp$6Tp`7iSsvqWG2Oj;q>`CKyqb2ozQh9ul0xP66Uq5XT z5Mipfg?ddS43#hWOR&1t+%h2);h@NgM8}mFatC5y^Pdu=1_7nSxqzKgSu za4bW|%@~aCbJ2CMG>*muxafLycnwso*fpT-%$B`i68w}IDXA>Gb`#V#SFBpMohEg( zYcN&jgFESw$?< zC~!2bLd_Z^b_0}rpm>cwhz`nxwnODmpFqhavNdjnOAk78AWVpzUf`U$3fz$>kziph zWo&m7xNxQPym8=Q?ctf)Gb80*D7nOX*UW?hj<}Op$m6#?m%L9WUNDF|puCknI}i^7 zQ?awlGY84ZhQ5A!Ng&23;{JI5^(2l&_MYZA?4P(TIt-hdW9Rtg7+l>3s{`nYGFc#~ z!lyn}2!S>%L&MkrS(WX{!9;RK;z(`aX!YTKq*RQG)CJuJP8)-6JMX?TF=n_k=|`P! zpCnH|T)Ar9Hg5x;I1@gVm>n@PYfW-YcCp~Xr#Y_Z+CX$r zoQHsdA{=@x@~!;Sz_yt_+|jMWALr$(PRo)qlj zeg%RO6`pO8?Uh62PqH~*h1AlHt4&F)-Sq8~pCeX(DY;hnK(pPZU=!2RlIynQZkp1S zE86J)V$N+%;khy|B)WnG40xr~P$l0Jm9enZ0YMOZAx5;P{$NlQ`=H_b2YEUWJDn@s zb6@%CSFxZp+Lol>)e(5!$p2AYVDasjy;TR>c&Rb1EmlD+*5=8Lo$gN=5d_b!A2$cj z4yy|2-HKWvO)?pdENJEv6y5Uu>(`fh4V_AZH11XkAKY%_<4?pf_yBIM(z5gsSc2jr zif~*`AwNY_3)8fb(>cN^N?5VsNfoUvBz^QZA=_)THcq01S{NfIRb#AeU;k4tx9ul? z&6y|Bv3No805(;)vDe0^dRy8?>l}TW{LZ|XdPz`NT;0lKJUL59L{{@Tc!8DF+kQ0- z1J>fv+dtODNOMIOiU2PZo7zuFYz0B_{3TcoPEqI#qC7O$eYE;_UV#2yhL(5jZ5z40 zO)Me9FhE3f8$ZoUJ0B>1b&~UbJfJWki>q!>7t`5$;q}u_f!hGkgP(Ns{S%v5<3A2gDW6Q(PpK$p|NSx1TZ{t!;}jI`#JXA2UPWezDPmD>`R=?;4qSRe?kI z5g6{y{&Vu4(&nRP8eYLqk;FuW$kk7o{6g!t>8Y%~n@*;drk2W_^HpxzNT;F(VWzGZ z0A45)4nu%E0d5i)#Pydr#Yp;rh25;nU>f;$?C$dhQYve$sT9!v_C#W3eiME#2+(9A)SB93e^5-*q+Z-~WJ5*oIdTwqUfOJ^_GkX0$t)!1`dWn%v!OEl)KV_ z?$NN*uiAu3o6M-dP6)hXsnuw$M`Nw|F5?sP@BcXZT`^a5YV_GbZTg!R*=mlj9&HYL zd;ikNo5_3UDFTwn_}kcSa*`^51q4J^hdpcF6$<@%r_=1}@hcr-+0-`XOK#}pXA+^g z3iM!XBF^;!0&)yc($gy2zE@E-%l;DW;DFE_ut=T%_uYiXlseB{pB zoIls!iWK*1Qx8dx!&uaHRJAKeLLxOCU;VWZbgZ3PA98wHAZM3a0}!H8MQ&bwRtoezq()?KL4@( zGO-(IC7e-c9q5Mac}}IEVQz-1v(>qo5g#Qgllhg~dOO0omVH$+D<#1TjPDSn#A}Wp z_g*huOpUKQH9{}#{?Z%#by#2VD@{c!E6IKR$w>YLh{6CaIWZFtSU1 z>k^3&&p@iI>fW)iz(<=-{9gUX%+&A7#Rog$6t+&zDBKL6e_OuEcx5Yo<2(HYG}v!^C8^o*c?>zkK@ay08Cd{{0Pyf-YyaS7+`!Q0=iVy>ACU zwtgEgmc94;Cw?QwulO@`q-B%sICJ9mFuMd`z$DUEPDGmYb4qJ_B1zxvpNFlMlMWRJ zV1S1kdz)GB`0@A=c9S4Fgi@5C5kS_HmTb{JW|@#-n46XE6+4rmZS^+iu>lkziml$x z-k32?TGxEyuNQy;%YPzybc7S#)`O!uUg4@?V@b}YY;)^ARoN;OnR7%@h0$_LWnVR& zBBNrG+bj?VeYIv#QATHC!`81s!M9Hy+xn^!3TVp7&lJD(4(*I&m&YK`g9W zxhebu9R_d2MoN8(?=bZHSKiO21UwgFu{FeE_xIg0LRetMDm8T)3d`p=fBPi#gazH^ z;;9j@$0#*Gs7V@%O;9GpGhCob;GYx(CRu$H_lv^P`~s?x8G1C`qTX6bw_KBmhvt!Q z#fN~PaOtQC$=s$>zds+Zayq;21`Hd#Bp)jtX8V2s$2lY_uj|wlJpQ6BCQ)HqnCy}1 z%F>(+9rw2H%?4s`VJsk`>M53?6I_>kymca3d)v2nCjw%{oN?EHB+MXi%Y;IpL7>_I z3T!hpv~07gX{MUCaxmCd=@U;-?N+l-QAyu&<(@25y@KWq=!x=W^pF3H6dx)-@b!r~ zn0~muN~X-Kv+$3ZFE>!h9(C@Ittanx%Nf$2u03Hi|M$inB2)L z=)Ul^FG)P_*{sLc^t7A434+0c5PHK~{4G~qgzn7q-d1oS--IUzDYQ=9zxd7f*MsU) zV-f}{_PW%qB?){ft!v=HcImI2kN}`r395uL0@~AOD+{jm{fQU*8IKJAsul! z-EW_?)h849A|=;tPvnc~O3&L7C3@9sqO)6W`|Oh%Xu_kc4nnUb0hI|+i3znXJ6Mip zzve4mCKh&kIGhs#lXV%Kby2$%DWa~O{D?5Db~7BtXuo%&Hzn(M^k`A!c zkY4xnh~x7ef?EQw?P{*{75mXxTT0Wehfh!}AX(;WNKC?jibdJ>k&#&7bE6G(sRDALK2u-T_UqmrKhFV9I8%k zwYi5umm(!q)C0*i)^cS&WilG}11s+<2BlDm0)uEY2vvBE5#UARghq_aiUWD;1~z%U z6iIL_*{^(;pU+HC=j6wd%||tfx;94OL-*~7PgS!na|}?&7%7qXfk-|NUf`elgk#;# z8&AzYY4=a3D3tB>VVh`PUXi3gy=JA}Y<9(6Y^7T*W7=SSGz63_Ke8>$N3KyjQ!C!2 z`K4a?YNEr!S`hasap;xj!y{=0Xsil`bW-=X?&26Jp7A?w&}JzHQ?Z1M5eH%ZXbMg4 zaWmgvsMhGb=U>>bO@19gBp)+e{rd z;oXYS%v%{-M(oU=dYu+mvXqblETAg*)ydywdmAQ1or-1Xvu!O?d-joBJD6zv0-+{h z++2kg5TF$3sU|4wN$b(8zLp{;;R<6eJq1A6Dt2%$^YV(C0P`fjO{ps%8voDyqY6oEIqf{WUc(7Hhxj(LA!utp*@;T!|oe# zKv|tKI}%`-AgAlYsT4jE;gIx2zIn;E$KWTqut^PI6U1KLkef$FGUbwGYcffRa57l) zoRC?JsC2VWJhLDnN`CjC&UA#2khpcR?2SLaD<9FpbFp;Py?}zZ8eM$N&*Aeq^?flj za=Pv%`&D1unvf#zjTb)LQd#IKL^*1%di1mzsM5Oa;@Wes4*cwVEl9yF=8%oj$uVJ~ zb+l)XwioJ%K@vp((GmN(6^k&5^FmrCf86-9QJEF`SDwRa!?&VXMZT z^WV8~Z3-vksxe|$SXbNj)MR}Qv9Yv33vU}DsiNPuzhxOtchk#9z0 zOiFLNSNwS`)X743a-I9^6 zsk6V_q=QZwqH2wIE9$Qx)FgnX2|1`m7YA0ykY~H5Bt7&Sk0)yCOR4y^P$5KZ+~f7s z&;DLK%bem*31OP`mb&FWnTtBj&Ec?8L3`7u{?DQE>?`|Af_mSiX-cbF4pomR4GG`B zaCB5<+l3gjwG-ZWur zT(6nWOH0wc)oH3Mf~weg6Gh$pOSSnOsTxME)pw)KEm#to_Chwq&R@2>A@{`V>JSYF zwe4?)zmn-SGfqsu<`^$)dRI9Vfddxm!yU}0KYQiXrbwR6gxt#tcde~W~{YmUXP zkNeQ95-ud6$Pc1}ViST*Fv$-?au9o)V-;*Nv@`0z+~r&yIbj8E(pzrds zO}q5t`_8OYGTx*YO$O0%vT78=(8zgHq!3UxtV4hMzCJ;yd$^QZ7hKaY@xmd`{Ls_p zak=|M0El3jwc5Q|24S;n8^F|cX)WPs+{U@Wvzf&$E91dFAv+Ta<2B+^` z2pq{ED$yy~WaoR8#~O#qzi2vq9Z#%aG5{JOfg$`a0y8WCQXo}HmIp#IAP$0oQ`vHeWO%-G4L{ZUPSGu<2wV+EnwfY-Yt6sFn( z;1@(aSf8H9b^GJi8}Hbj-x>7CU!0+=9OH#Q_r&2zkIevGtwXY!5jDwr@(R5HxbcP*xt`X3`Zqriw;TEHQK4ASkT zK}BE{-`HY>7dkC?co2yfCFDXMgl6SRsm1#@dtENvUxr3KJ_y;Iul>@P0-H)^28*3v zy%|U-=mJ`sf@)j`z|FwuqDB-kUiq6-BO($nd=BmXBJl4gBkz6D_n>)8Ix4`R&Oa(< zV`n6c=;3h+3lj=T!x-@5zBtS_3!$bn5D(mh;WE&mNCm^NE@FufnCgeQVrK*T)X$IE zrdJ&+-L6^>bp0*qr030PNmTxDtQZI?wJ)$v_m@%i|LxZ{ z#sq;FH2`$jB4j>xmDrlPtKw!`2rCK;RXK-fF1(*JCEP+}K z`*7<0*9W_F09;b=Rx>?G!oi z#0cSa!`qkjU9rFrgBENJ$lzen;erX!N`pF~613>_yc)vsULD+`LrT6#5GWNq`fWm1 zh0k@rfnlWK?F@JUJX(jkAUuLhFlE9N)cio~ zNW{{>5e|uEfka&4MY#%y4p(^btTl?kt&46S-UTQdl3dh`2b%{oj9>|g4VE5k2T~VW zQe1qAJ7UPh(B`$US-h z|N0x3RiN!KLIw;%Y8D1*jL#i#OA8kp(t%cQn2qL5AfwR2QxhaiG!*}mhnnJGD;BEo z!qoMSNk)I6%lQ)XYzvq@|AZjS1ppV|lRu{wn24!Yz*FtOO~`rd&aL0wl@@qwV;7h8 za62#v6bH}&T+9n~Xc7mv-Z9ITQWZ2!c%YFJKF?n$-Y-isVM(dVJhP`CGyD0gTl1>={TAApm!k_Vn94H1OV6izEw#`gPiq!e+gpeI>K|nYQXb# z^H>j(gO@V-HX3shhxKT;jiseYf-6|2SDC~eayBU?V1C$h0$;(Mge4AFxMckZop$(U z8aP!Y?t_5SZ(%Pj&Q$>LR=72v&`KbgTP3S#3D>~<^RU68I@pR;$QS|R|Iy-|>8?!R zeUh?`u~vGSS97fDc_To0-gnZJmBMC0gW3{R9gNAD;6dZGKB$^oB}vBzX*d)z1}VO` zSqcudP_uSvj#GA+6komGy|Ym8__)7Z<-s=Az0v$#{p)wv!=Sp6*y=);&M;oBsUv94 zEcR+#vdRv>wAVhsXrJ?W=Dlf@%rwm`nnM46a}kb=R!*w&n7PGjD3~N4&NGOylC`d< z?~9MzHA2xkPtYb8io45driDZMS=>QN)s!LL;M?sYOE%B*BV~v?q$z#PwCXhyb5Hxi zg!yxwVDxPXb$c40Lu~vV38h_eQWe$Yq4kIm3PF(TO}!(L_exi*NBr+uWDX7?Rj{J zLfYyj|K71=xJ1h|`k9?+LRO`gS?Fv}3;&w+q|JUXzYy7%reeT&)RPhwdq&ALv^i^I zv9;7%t^JRrZbey;gU$WBdsL(PbiFxk++tIiXHML#l#EYoykkfBOU2riamj1RG7;p; zC`*#ZdB!vO)F>gH-4@Z^^3h@r(#l#gfuvLc%T=m`V_CVO79x_XYknk3d$me|Qqe(` z@>e8yfWWg=y@b!0W+pyoN0^_MFxwY>M{hjdURFUJtMz^NC8@us`m9Jbw~u{p^@phZdezNTwkApawzv{`+q9x3DmL*m z75dw4R!gaxMfYevE0*72YaS`m8*%Gg70JwBHixJYBdTgf{XWFf+)8qFbs>m1GDDx4 zlb7qa&wK@IuYL40J=2x_AdP6LY~Su-3Ve^$rTqY?+_FP@Hl-bgPyNbHw$dDK-*Ge1 z^X?@tds!gEu9Bp_Gr{M6$!w9Q2un)Y*jfHWik1s56G{=fv&ua0Ges0g=9X%1ReI7b zDLdlCS638?OGoDS$`Z-BBAqR_;5lYK>^k&hVkOW2fj2YBXWj8#NG=aZrzmrxq(&=_e-9!4lM7bw{3UJinkY z%kmc{IK2FwX-XS|M5OJbt)!I6GW);gN9F2%SovdQy_m@=V4#9IuS~8FMvE*Ru zYCmk!0%HOHEn{xUGG*n8^!B!Lge6qWLYwveI7|f&h2-lA`o<+Ikq<~olg#f(DxUV) z4OhoT$(x4sID4vD$&w7IJtUZOq>#2D|N(i&WCAhxC2VD=JtQkTVTzwCIAJ6<+BZ zIKDZ$HG27IJTn5RtIb5R4$Ywy>6}C#hDJXW< z_pZ|3=Q@EFb<|RRI>n{ftvRX1J}piThJ50r$yCZvi3{7cx6hZ7S?Asn1Kfb5qZK0D zTbP>jYKw(*Q;G+8!)!+&MxdP^fakmcp>gvx1kz#J6QU0u6N5i-w~PYvz009%LG>4E zfb}8DTf=7IC)i64GXSsvsMjy65t}4W_Cw$V7}SbJ=oc!y2sU{%g}r=_1}|ar2HzNJ z;XrG)WUUME4O6v_PzalS4|@6sm4X zHa|XY?UJUIeM;e|ag5a}P0P^y*BiwgWJ&wzT2-WH9VK2ZEame;x}q{#4!WJ%^hA(q zRh&q6uV$wHp{IG(Rs&-FQVJATtCVyxhqQGjH(?e=9HAyazLuCB&@#k|1DKp!CImr2 zK@|iAcJM7*a z5FqRH_*RnCVnz4fk9(eVWJh$K2g0W~cf#|zTvg&u6Y|6M88x)&7-pmqsjz9S0nVX- z?R|(-b0Kmu!V=1x?d(zw%?`((5SB77D3q7HT$jL4qqorl}QPIdLMU z{9R@vsSruFEA&aecDLO0OO5;_J+UR4Sy+MWi*qj(+A> z0daoqMpyNe2wR6VNlVc)p< z&QZ(&inujpCMF}h6v&wr_q??XkYE0X{brERktpjj)~uYJHyD;Q!^t?iA2@Bt1e`5iF)@yzGm+= z>;?AuZ?x(ykc;)xTQEZ z)qzdE;J>+&L$xLtN#mH5fauVPDqx3P4*?6<9uhvSIN1eCb=&8ve?c(>zw0m?no%;K z<5j0gv@V#*Dxp@#!Dt1G%Jyo4lYoS0p}JBZJg<$D?e^Gu`CG5(t!Ko(9B%WGDH|?JBSW;A0$oVEu+w`f&wJe zm$8#Bw1Ib_bBJ)+2SS|~ch?v<#K4|f2!6l?J(QcGpaVW0sy%YuoGeJf&>kD?mN2Uz zb8K1k0?=I*LX-Uba8?WA3)*aqJk|oI(C%8K?I6s9t>GG5-_8JoVLq2vt3`=pB77}dM8jpM1=|{^1v_P9U*o)<7xu(0>~=~!6uBSi!bGhjwiWK z=mEl-k$bYi6v9Crz#u3f(6aJJ_*-Ce7L0$_d19 zR3YG2c##8NwiOFrhQ|rg7w z*uhz3Ov5L9#o7g%-h^hIO6_V=<7FnGsRUvf5GCHtME>dBH4W{wbzkSjzLOzpL*qEl z{GB${CauVoaE4d6L~I4AqWE#`c9g`+5A0<(?wDkSC0BGt0AUneI>T zjCd6efCfS}8jhLz+{6NSTtFM@K~3gfEQt=Z9SjO>sQ=VcpiS<`FD!l7v}l-Z+S<)W zpWRVCCkia9dGqt}KRdd0yc-h-a@1h+&gPKU&$BsIzG9hsYbNic{3&cpqTv~MK#>a{ zwp<$c(U?JKE0z=9|G02g3p$5rjUHBMq1jBJ18*J$f?$I*j9>7+r=U2i+%Du9ysM+T z*sCdN`gqmEJ-Kb*CJm_pNkGsOzs+eoB~4%vx+P=heI>p4Qws28kO4mS;ZyBc{8a8y zQp+UQ4AX>j_%80rT+6-!CBi(9j!tsm0EzAX)5isF-#`Bq-ABQ2y+5Mk>Dnz+i1V1% z)`FfZ+d}Gs$NM^+*KKwety$Dk(2h@#89I{zB*r_;hPU_>HKB7gKE(^@=sq|F4@iVF zAK`RCU|E>LYNM$$^4mgS+t;&V>N*&ozB6vN{-F-Y@Xk2@irlrEip}q(RKdjV-s^Af zs2c7<{$-IJ|FOV_*(?&aBsti?j_MNupXt&i>6P(HlDC;136Xgw%0sxb!0*E{}Dt#=|(-M=>ve$l1f48pVU z%arp|87`2qOs5t@Zzj46HXTDagcB{9#;fh@5cc>lR>4?vj&HjLx5TA(iu+%#eUN(bOD_PKvr zdJdOUO`&t66X*-!oBI&ff`nr31@uA@l=wrj17= zQBxlP5X32%@Ce|66t3jZ>6jc)A?&D7%>YStLA&@KfqEcBB{4PtUIewVaTgGUF@y{C z0L*@xCN9bFQ{ykN0fHJ%yjy-&3y2QF5B4262rt37Pn8o${LE@lO%dpU^nvdK^wH2s zd2?V0=(ry4X*5e@pwIcYGa4P}0*>DVe_2or8`xoA5uEse>V!CKVDPv+)PdS_BMLr^ z5?_O=t__42z*krxmSNwHc5=N1LqL%UQ~(1zWD!nTP=V`c=SuC-Xig$ zgYA$oVF7Z6Kea(o#1e)q;IRwmKO>}N!i1Uk#b0>GPjkj|B@B8891HXrm?5w@kfBo06 z*A59K`E6iwLAjuRgI0gk)HO6TwZXcEdPe3Z=5RxOJriq`xs8Jr%GDC-Y~$={Z*A@1 z;)ZhbLc4prtoL*C^l|gr=(b@a#&@Ha|E9peKp!6;FL$@~8*o0GNM0N9zCq-GAi{=C zAwjs!zF5)*TM2g%<4BJeO3?flChthDHHsUs83HZ%KA^}H=z*8c_D5UUk z3OOVgN1+Et(1RnR3E@$sEwQ1IjNtI-2x>Tq8WR!~9YTwv&|^aBag^xzh?wo+jIEJz zJ0jw?(IP3dh>$3HMEnPlQPENK=&dnvQBiT*w{2zY*uG=y)~#_LL`8m(uqBR3i)Tjf zNRHZ;6tk1Pbw?sSE^!BQM@&L;3^R3WA}cO2bzAc89jSYFq-FpwGk0v=vy+`y*;U~f*=?%acWbFx#jI2oKnhYs$~IGmMv zC@b^uq5V0B4yGUE?mx^soPX$0-obX7XIvME#1`O)Q`+-sj_U+Va9 z_Ujyxh$|>A#g#`Zj&Li>d9_D{)pfNcb<*+^Ep<&NYMR??+s{br zg>9dd%bKftI%;}4jAisfH+ z_J4iu#>HyI(1mNGrx(U5e!N=!_-3JdJ{P#oP=iZYikAL~) zm;d>n|M_L*m!E%rzWmd(r3ZKIep3I{3EWnHulfWCvI6?|{hObE_+MWi{`uMePY>Vz zw&j)kKfZhOL3#gI^z!uojSW`bz4@;4$x-BAY8tx20Rw3G7$B};h&$sS+M_z=*xHXS1b@_?&qj=Km70Tf7&J> zamTr3XJ-D8xliI^dj8ecQWI3xzI8=`$ngPP#|jb@o2h#Q*+j00eY{0tJLxb4 zhVd>sPa}|o+kaZKot1Y}&IeF5maR~Bhs2$VKbP`dtkK1ABj5c$jMjREjMe!bSaQBT z_1<3d+)#?o$3u+lSjwd(fp5D7ULB|%22KhShot58RiV3SWa>~3mSR2(AS?{-hZd8H{IbubiVBU}0 z?|frmVh2N!#n66Y84MPv5PLQi=)ipPmc@;@;WE=N-iznHKV-y$=)o{~+2vWTTTjJB zg34=+05SXl%P|3Y>hT{vK$T0?zgu}9a0czf^q`ao=3s%I39Ayp#20AkA%Ta71d5g( zYOi9!bI&XLyzSxY=UcujM{Ht=*ffFJr&~WyyTY9y0T#=gJ1aQK08xOZeaM0HT3A?H6sAc(bs$$297 z)^&(yPX1;nOEpZTH9h4S$v+X}S3#O3=78;^foCmUgj9Etu)gF=X$dUCv zyXVgelP&_Lt5|w+fj58SKUwa_JE5dXZ5WC@jUZ_1TOqw0WR3X+A{QJ<;Y>pol^LRl zE6YnNMc@6$h0KbGdU+TU+oN$L&VB1=>4p@*balQNx4M{T3a(iBXFovIon@EXIeqbm zI^IH5XHg6kdD;W72GO&k)-=;Vlkc?a{NC^6S&pF7OhEC0+NW-jpBl*a>v_d46(VYy$^o&)>xCaGc^ z4{U*6pHjvGOPq(8j)q7v&!PRcbRTA|9O;Uf#dQE^n8nxS50@y zE3D4D78#=76k4@(OUTnSuqPJ4zPnJNcvBEwLp0A-e#8;*s#<{QJaB}f%FS_nh>Gfb zVVRy4TOpHBaeqjm!|u9 znkxn;HVR=8l*)xMYp1?DkvQj1d0SwQ6*}Z+F}b7 zOS4jbnY&Nx8-wtg{3qxieH7)A;b4?4^~~PynzC9$tv2kRpA6-)m1?$;bY?)wqcA%1c}|3q+=qk}w2rUzu2 zZ_`xJfy$g^SyuzM0BVO)G|;3425349B$-vyC^TG01jRMsh7Bw%bDkh@yfB;BL)2gL zpRmuF>ZOQHfwbNkzEI%UJ$lyjOslYdWA=R4g$g#^o+wyibP&*($Tg+u26u8(od>13L>+`hQxs)o2Yc^qjz}A=cjEqxjXQc z%jyfNCCK$|ff*A8x)x69)5aYGj$4|7g-fV-?-9B~V3GUC2;r@!lYV~LpcrmPA&bTN zgF>heTd|}uHbAmavaSc>tZLTLiE~ zAnqJr*MiO#Lsf~z5Cd367n{INHef5h^i=VJ4iIDUyq z*rH#?1RtPD!E|RF&q?ACR%IF?=iQ04^p8l8y)D9B^s80csmKcq?Q&i$;cj0vu!zf5 zPE&csNAzIvoJKqWY+|)8GJOe07%+f)_khBCcE1VazoYersuqTIet8}R7MXj-4q~}0 z7llSn>GQWF11WmPHdbKbdY;H&O#xXqW+YJqS6|ZX>nl#(oYGP+*0Myg6%zx6x)xX& z>cS%=q{=xcPtjoaeKFJ)!%~Pdn+CP?ksOc~uIX}h>ROe*zSVzRWwZC;xZlD|{bT!L z`?*7Pj*)ep5~R}@+;`6dR0k`SZbuY87?mW2j2&}Wc!SeDy;(R`@d=E8O)qN52Wwdb zef*-qPEc%M5!n1QYQ-d|(++tZ#9t`_W*oWVT9 z0eqnusk0_yu6YE=1?t3cS6dC5@Fhz#l7ZGzAjZsaMsB|mle_8kt^cGInl2Q_mJfQph~z>Uu6gRH|egPtdWTv$kEBlYjeWjo-g{w5$fKjr7Znm&=PZ zbo?`|GR_PG@?ITr7OGo zua@f&W4`owG^?msmw^!E8>bmJQcvEyg`0$IvGUElHOfqKq8-~1I-`8u@~gEvFGNcW zMmu21N^Dbs$Pg0_658{Cz(!4*E|T|O)YGy^Q;KPcd=U(j%TdAK9xgIPann_ZZ`AnV zpBEyI%_R`PTVmW|yP#^r8V>&F&RQ@+XfkRFyi|U*4G6t^7LDb|kjN(DflpWN;Z*+` z5)7=Z{4AfH_fU}&#PD^wA~8+?NM@OZ#L+m z9bved{Z^2-s#~J6Zwzn+I_9QsT}88llzLnyskGRr6>$Dc07|?zLmU6h`6m~WS}vEH z-g_P7faw;`xoI_qsujWDIq9-l0!eJ^Llukd1}>J_db1!Z6Almqw2$AUpB(`#hB-vC zXAo*dBKX!v4S&}7uPg7|oM?d{?^~HkHPSWrNQ_PB=aNMZV#HLONk`;yTGqUx9oe>u z?HdZoe$BEfR3s5}>8}wXxoOZ5;!Pq$>;?)A&;fog8UQxJT40-%V%$K8v9(j=vNNrT zZ(xfepY@x)t*&S5NCI7$;6;7)rr5cdikQK2)o}TVUFY}Z4{7VH?^`%%jMi@^ix&cW z0AH)$m^t4Cut4N7pUi9Fq2?d6`{7Qj=p#xw;!y(Pmb$xHlG%xBaRkUdo+;tEsuKShL~EtbBMN>o2j2Zs5W+HR-T zpb5j}DWQ*~U?|#`t!`&01wst%W0n%j0}>dA^m^xhJB5KBD(4CL(OKu1h`^8-)j#&q0-sp@QD7aGRvlW!l ztvWy`d~Kb_M~Cv&Elzl+PlKpxS}^Y(>O+;_;-m1WG~j_BVhr~=e{TfOD>i^($fD)O zeoZ}qO6#3*$dWP}Z1tBJf5qm%-TL#@HDpf~p-3U=X- z<`t4Nts`|ldw@LQ447PIFBZh$8;a$vn+8}ea)1$ht$s&BRQ(6vAV<>nTckk1#E zn@4yA!_Rh9+6ObI&&FN-LBG~9qOLRUjNl3!9k%!E`R>{4uSJA@6drsX zp2x(7ydyi@-20%C+j4<<$e1w=BZOM|ci{!xvni3sd^3S`WgrDGUHXk}p_x)O9lfx{ zH4!1?!$Pk12svF$!-MtUnAU8qrv8g%K%+v@)d*B~mO;&mE|np$F@W~vr3`tYo(ncj zyreP+_@QsJx>k?tYv5dM2OC)Ct6{Q-00IZ=nvz7$o&$rSX1)im4Yqrc4K4kF%opgc zU8(npneI%jXuebqM7==7?^T(~Ex?39iTW@<565JlmIa0-M%ZaU%53Q}&|Ud}#!=^O zEM=a2MF1oN+m@-_8LHZVANnne>GENSp2Nr3hjtDl<*32e85j`pi4_#`P&g#8@-Su~ zfc~iwGGQrQa%LDvpCVRivQ5v@H~ku5y4F%lS4MgEg3^wwyQcT>FWr4zGe@iSP-JBT zj>m^u1m(^w*##E^lJ$};W(mUvXlgcjwr8jisOoyLvl;RbEd<6pTj>F`4B$xalk7j& zo!=XICJe6Eajoe(zhqx%=#^4m@2?gz26u{_SHvMT%j(yq-{=D5i8$u_QKx#SeG>t! ztp`$FjR?P|J$Lq&sA_zv?(bnoP=g|{J)$lZK3`-T)S*PoszFTFV_Ax>el=~g^$ZzV zqM{CgT5bkfi1x{RupV-sxGhGGaK*R zeb<{cLW*p+%dm#{7M-e1htkv=@k0e71l4cf5|EM`z_1jSvVqAffV;D{{VC?10I{9H zQZ%0D*N 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 U9_jt3?;p(t#pkG6U?GkF0n5d3a{vGU diff --git a/dist/barry/images/items/kore.elite.stem.jpg b/dist/barry/images/items/kore.elite.stem.jpg deleted file mode 100644 index 590719e843895645a6c35b4b4500eedb92e036b7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2832 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 l_J}t~=@<_e=9(Tp(F2kR`HX?UV6-%JtSoHY zTwHu?>|88#EIhm-n>a=I1SPg}@`^HWi1CUk@(am`^9l=Z78Q|@l2VY7Q4trH-y*+j zr?mJsd6k`VTUC@bm3C-vQPSP5Zl=M*rNb*?Ccvk?LrP0Q#bS$`hop>#s?G`JJ?>gc zC(RX4IjU%D=0Nj{b3K+y?amD==j;}^)%6SwmIx)<9O25 zI>1%W&B@c#!|&u_H(yV`lRkk#-iHDM!p|TgGj=H5+$LYb!WUz;Gs;!D%uMP0UJHcv zp-4CDq@%_WZf;S5fhi|FlKi|2><;7w>R&r$c|F*>+E}IDK)cafzxm9mK5uJea708< zd}Y{s7ACneq=HA_~2ZF&5vg`<28rJ9(sPPKQ{K* zXQDoMtTtfkiPKDj^K`?JPxbE8jXs~6gFe^!eShIL+vYpl5%ldv0Cpfa5*c$gDj5}Z zHZc~3N=9cS#HFR?q-7Q5p)OuUMdw`3ttd#!&n+q{F1uM&bno8%+hvtEu2tN-TT_1} zva2$xt?c~6dzEb!xdRnv-(8JvOip-kzox6cvaRO&Xl=wuL&`*Z>_kWEbaVJ@N9dQA zQJB}4=3b?YJu4V{d3&}eZ@Q;+u(1d`bP?Nk?#FQc=fR5V>gvajo-{Tz);_LpXl(0j zeA?CC)Y0D2-QDxzc~@)8^Ea>id;138ch?T~bWQd?ct6lJ_pW~K!;7y|-LoT&g9C#f z#>Ph9y&L~HH9j@BBaxHAHxZqV87$WdON)^==>E%)b@bMH_uA{d{BIuzjXP0K6YUHnF`#X z-<>~EHP350e`QPe_Mq7>*wr*tLy(99%jfs$N>-|0hZ<(30PJRaqB~NWehr3d>b)Jj zFe)HW-y*Ev78@%Mu_7*URwXBk7{>Zs86&R-FT8Lb@te+oQSG;%nVp_T9B6cXS<dy0F{=c_!s&O8Bh&Oc|bHa~iI3Q7KpT|q;_TV1976Sgw+*QYC; z1ZDAVoyPQG8d93L3jK`ap2p)OfOUm`+0(R>_&Y| z2ST-PsNvm~wEs@7>_K=h#K#3o@J7N;mfijC8gGR&RC#WLgr2Q_JCFVLGZUa&YnFpb zjsUXi!kh1|vQZwxRNM%_nRlsS!t);hv^$Vi2%cJ>7+Ac=JTDZ#so>uHe#jtqK6;6& z@o5vj<%#zp1aY-KpRZEwI&n?ze#z`Vjp_f*jDXRAvWqlZ|vY=VE?|)ijqBM&Js%brC3~s%Fznn+*eup6ve?Gtp}H) zceyb`)?!|0$T_6bWH4W0;UcJs)8nZ9ti6&TviGA=5LF*-XBo}BRqoKp1SPU`k$-j+)eL-|@{u=q6a)8zG-abMkT-tNZ^< zeVzT_8fSmUz9hM)I?IEqcwdR#cqmoN>&)npfKXfl()Xu7x4OFli!B*)1%p(h0b3Wi>#r?$0qujLYv%g1rjXGC4 zAwSxw1r)nIYE6jYmbNOfzEyM~=4FM=X8MB;x#ScP^miwb9TCFhmBBrhq*)GZ3^45p zb1f#L<-O%UX#H&9S%u9N>!zn#R~J%+PkAvn1M5cXdofhTo5J}%ei^MvSPD`8YT|ht z1UYe8`DkgFc&MqpGPO$fR#rVLQanarLp#SPQ%`=t<|RwbyEk|7a}So3Zw4|EN;Z zGdWa;(TF=#`C^2gpej!-8ES5b{3P`8&Y=DiSq_fJGb-5MuHU@N_|NNa$i6)^a_Rc# z9GQjn5;zA^P*z2);X`(uXb->o%r(jVS+Rcsy}PQbyJ9>iu@29)Z5D}rk6M(kto8M z2S4%h%bf)^nupAxtq|Bo38CvxQO7qi{OLT8GvTN6R%EOaEQPAYdyhJjiAJBd%aC=3 z&(zXy3B~}lhvnphJuqqp1}3>`p?zvrC5tHFo?lnvG^Wv!OW|F-q*?m=fT{jR(JV4I z=QxySXe=^!9t#D&DO-5y$YJzK0e#ibP--Qwa8hCf;6JO{z#@{yG|MngwqDZbNh9|b z`+%u-a@w{_1}HfSv_q=f5HL{&(^n<0!HOz(YNz% zsQt)WW_X6|bdB#w+@)RL9*tj|s)mq}lT%X5c?rVHLD4(^jZ8c*{9fm{bP4qk%?oG4 z^I}t(*%=_g7k&aXCm9nyY%XpTg3XLhkwQSJnds>S5RjS>D1+A+9?nWH2TL7?G^ zTx*H;;AH*9f7Fg-kU7fFx;J0m#Y)D(F$t-?u<%iN++Hm(wN;=d**zgs&kqLJw;BQD z4iR1JkO2au*X+sjip`{O%8L{w3#!ydKsdZ0P+GhcIN}WtD`3ep2$N#t5)ETEKW_pSC=-p+FvM4Y;!!yMx-~fR_DZB=8DE^D0*&t+;D!T#A8XXEj zkW&l91CmA1y;_%sc*74h=$Le7Y5^(ZX6Y3e1ja~dIr88vF4Xz&8u~DtZug~W7ct<2 z?Fw+H-a|o7#xVBhvtVzT0RnzO9_w7tc9{}NO)rNK#*Nxr75qW=hvST%MZVsJ&8Mi< zArD~m3_Jx-wMhEfU77!UN#T?_{NADfj;@9Y$W;SCYjn5Q2kv5hRta(_|c;)>nE}7LK)EqoL z1^X8B${!5h0gsmNthdaEqt8>zIrKpzZ1F&RYmisSlx>;;*PA|kv;}~JUi~5hWZq@< zACf}strNRG>o&7&%GX_*!1oB0Qsf9Oc!96o0}{q(6p*w?ck@Dz!}RL$kO$S#+$H$c z9=zUbL7{viNy02!6Dc$p)e;6}MJ6@{a3mZ_%ch@L=+Uwn5{`KAfWmtaue?o6 zQxa%Tarppc>}I!J>0cGxHkNWhn z_AABQGA{R`pu=&T%4xw}6-)>%{28v({ZNXeskm9Tgpr4T)22{rN*D*z6iK;x9{L6T z^Bda3RyqZbrsec~ne5#$!pX;i7rjFbJ7kh2%o;SKX%!0-OFi!i>B?QN*(+%$v?5**x6EQbk6%tT(~S~5%dmW*wBd1|&~hk@^+9e%?+-KaQw*?l)t1`E9NE#(bSvVw5o5f(AM z%UAX8J`pDWE5sRCXsilume@*1LDQNI_icRHR{AqWsvh@avkymznRrlh%Fj@3$TUf( zOidIUM>Df-6d>sfbV)H{Gvz%0nHw^g(@U1n@Z^wz=g~CXmu7x4v8K7M?U!r^oT0UMLFQeTclBf(Nb^bQZS^ChBRa7xdfmd03Jq{~vLz5z%KAGfdD2Mm2m@Xg;%CGGcO&(5FgBkwsDOoS-2}sU&rA0e7+f zGu}|kU?FCft!#@v{B+*Dx{k{QBQ^vnw5Q3_*JFRd9uK*#{k|iupcKe|S1%(4ne7{G z4vcy!T^YF+^RD3JuJmn^X33rO{bg<}0*ArD|B^YHS zFFag`(Vkv4JAh7d zq+Yy$F)D@gRT&7x+U8a-a`z9-*ld*J&@r~$mrApJr8>K znnyHDcfii+8i5``qv7o{=D@)@bn=uk9aP_i%Paq3SbaTI&)o2EXO`P$a-$}p_VWDp+ zu_si)_Lai&sTXj2epUTTXul9IhMo-vZq7-h;t7VU_JCcHge#Hf5(`a}J2_~P(JTVK z%Z*SK+|I1%qzw+3{51Eo7+W=BjrF-@ANnwvM@D? z`}04e0k?)Y68yn}EndN{&Ca7-skG1ZngoncDbUcxxpyhAyl7@B)lu+&RZtXcZNJ;D^3Gb?;`&JcV6iVi1vgc*pE8C zc6^EQA1q^+s6`fiVRU$ON45qLe)`hZV@|u4=FqpETW86KUXu`+q)67Qs)L3*GmB8q zC+B1$AU;eP?cB&iXY6L7DAp{4x74u&8Ih+}M!dHwc$guTmTjImr^->x=VpRx&(94& z{Nfg;+$v0&`YDn;oSv+CjNd3f9@buGDFzT{+gF-VEWpmZWooGTMHma-NSt^??fBw~ z>c-Xmg*3rVGSmrMpgQSm0A>Z`W>7N1ViL_xSUN@CIHi`TF6?*3ZbkF1h5tCJ^PS_$ zacL7Wir~WEQTHpL(oPn1a`TFlG2L~|-6ZL^9F7&mSfTTGwC3AzfH-T%C=tueC}26m zOin(4DZA#mlzHR(rA02%;QXyw-ZJ;sCJQ1w=xv{t)e%X~YQbo=(NiJ+R;MX#n~X=3 zo}8Dt$#PtdYo9gCpoShQi((;`n=!9Al`n`>R9UhG(nxE0EVnLrZ_mo{gY)g)N(x0| zUK^IEHX-d0BFTBkz`u@_hempGDBC;M^5(CvF&zKFy=RS$)0n-y2p_3dv{no|MLYPr z2o-0SZR9wL^U?W^1)6wWcXpM7(lw^)B1 zpIWU&!{z)3*tg71A)8O1yQhr0EnDLg5npgu&KYIphLlW>S8sE+UhW;B$&0{$v7jWh z^t>?Bmte9omyJS(Aw-z-kf*BzYd$lL+V#Nlv()iKINu5(y27oomyf9Z+>A1{E^_@$ z&P($A6cwod$ZOOcqPLCThX^h?M*V}48bv-*XiN8+a02Ox_yURi z2OtjizVOr7r)9b? zvsL5Lj$`F^Ox73HL9K|&8h1I*Aa;)RP;|ptTM^;;rnf!^o@ZJ6E@d zh0sGk50mkwYHj*SVSSv7h|^mhKc z1~C&ofU4(tRZp}NG4I1+Q3`sd%BtMEvqc8Ch!#TEL3`Bv(d?rMPLbz%6aq&^x`;&P zaTaET;$ew`+<|>nJaI3HNJgTD1W1j@XynwM=TY$)tZNGsvjJEB)clXg9{$24^jL=d zT1xyYB7%WtK@wux0JFaYKyHua{txV1?NsvIl4o-L!3>j|dxL_Bd(=7n2e+7tIWPa|-m zu25K~g-<1LrfxqN#d2edJkvO}BgI2U-xP1jA(mIxY+f~I6p*N#@{Q9~gJwn&N~!ul z8HZoRFhcHh;2}ZV&8(^?UY;V7RzT(j3r}zb8;p6r6`u2sr7N>9kxv)%m9L#(-N3-_AhLK8$b4ezbm3 zX2QB>wr5t<7Bxu{?jTrU{fj`u<)UWn+;K9#X}~G6`G(zn?D?T+5Q@O=GL{^TSoV#H z$pyMGqRD@$gkA=oqurYCqFWWe=87|+Rq*OR z$9t=SKM~{qSYZD|?;V3I{SCC1QDy?_(VB{$+N0ol3+YxR)$IYFQcFj(x;1BMAv!e= zJ-@;!xk62HxebZPL)wn$FUeZ+R_^T?yJN_pFcGYTWvNRJ`cHRSk)pGOOPyt*URW!u z4NSL5z@iClWWJ)8648**yrc};uw&f3z~zD%1>8p>Q9v>MqN21F-VOqSY7aP8|A7DW zDjQ~@(}gHJjL|yB+I5wmUFi}zvT7>+Q=NfXSvmEqLVYWjy8j!dozvlF+bl1S{dVeI zC+)$hvBZByc(*AOCgq!C=wI;oL}ehoSL^aUGf-L~$zp48inkWGM_ThuF9I>kKDr@6 zrrg>+=E5VAiSs&W&w>YTI=2y6Z&jnH36<>RmytR)Qs*a)Dh5%j->iSF8wGwwxP!r)s=_x`oq45mG}35k)HTYtQuvfh`5o`zfZ zW@hxvD2piGwo!1VAn}T;NgA*}5ma@>+2>Q<+kYd+tW~U_JeREZ&^c@}Zg@@{yESHt zKaE29Qu-aD^&0>dKWRE$*NR51F@ZWoTPL9rG1k82A* zXfq1Io0qCRU;Hd?g|dMw@avdtP+Kxo&vcXM3&0BOUm6rp?Bh)gIVc|S_|GEHi+whS_^J-8v z0|#XM1bY7Pmo+Fxni#*MJ&czCr&>7i257ulJq0fD9~@-sXsCGsr>^`uM`->al&1e@ z=USvaee+KB^Yo&hXZob=KGrrzmyZjvjDrvAZ8Q`~F$!yQ`OfHj4LMTez~uMvI;5$&c@+ U=*o@K{yWmOKJ7`MI}uY6IMWYU3E>8 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 HVD*0hrqGHh diff --git a/dist/barry/images/items/mystery.gif b/dist/barry/images/items/mystery.gif deleted file mode 100644 index 9d5e568f1d8777ab1359f2265ab7b4a9940ece62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20217 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 bN;Vx2fI{qiKsn$+S_~|lEIJAT0u0swf+8`@ diff --git a/dist/barry/images/items/oklahoma.gif b/dist/barry/images/items/oklahoma.gif deleted file mode 100644 index d9c76ec19de5c85b019f6c266d1f9c264f393a5d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22937 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 diff --git a/dist/barry/images/items/racing.gif b/dist/barry/images/items/racing.gif deleted file mode 100644 index 9b2b6f0a2b801ae85039e763051547dad18bba4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22937 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 aC}M@v(Fi39+Dy0Wc(81V1v+`cv3~%TCmfmp diff --git a/dist/barry/images/items/river.gif b/dist/barry/images/items/river.gif deleted file mode 100644 index f2621b6e9b1cacf6b96d17eacc71ee70b80beb30..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21487 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 diff --git a/dist/barry/images/items/shimano.pedal.434.JPG b/dist/barry/images/items/shimano.pedal.434.JPG deleted file mode 100644 index 8ff0484d9c7f7b27d19957ab963f6cd41f991f75..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2491 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 C&u@JI diff --git a/dist/barry/images/items/shimano.pedal.jpg b/dist/barry/images/items/shimano.pedal.jpg deleted file mode 100644 index 4679aab802689609a04947f6e047fffeac94cb91..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2684 zcmb7EcTm&W7XBrXPJn=dLIR

@FgN8W2$G0@759ASi?^#n3_r30Oc72~AL{2*^q& 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 diff --git a/dist/barry/images/items/shimano.xtr.jpg b/dist/barry/images/items/shimano.xtr.jpg deleted file mode 100644 index 58f8e7645fa79bd4901d1bbdda03f7c5b878268e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18788 zcmd^m2T+rF_ig~`NDW1rfRu!e^tynA-XU}lkS;1EAfULk0HOEZA(YUYR1uKgyP~M{ zCZHg=ifr~q_rJU1y1VRt`_26Cy_tb|hat&%PkGMsd(L@P)RZN}ZGr%PfFDi(*jU&^ z1O%k#fi#3zw3LK2G_>SowDcF)FS2lPkO4q+xWWurtW5M$?1bWA8tzN9oE+TTTw<4b zWhI0`5@J$m*co1C3;0x zRZ-5sT#;Vwintks(?nfNU*+;ORVI54E;}s|R|9TmLkXA(FU(xxj;)0MH31c6bv0EZ zLoJA&wyBAcnW;X+*x1g>+QrdC*~?1F@v4EXm4nMQLti_U+fGm)SE#eSle4p@m#e*p ztEZobldreW-MjD*XXzOC@8H*!;I8T+Hw>dZHKII}!eJ)KzUoPL3={8~r~5<0eI0`R zeUkj`^S(C-xfh%rsGSvLkQr zQ50rU8D~`&f3+N8QWR-d80}gbZC?=WSrl`-GT~ZzqHB4QXGQwmk|f{yWV^=n>up)r z@25F7WOz1Y-D%G9?#R3OARpFVaQA+}_g%R+I&qz zr@!>}Sna)uYX8Zadl8|biBVzkF-aK-;pxe#Q4z^y8StXa^oHz^veX!4Zb4OkL`6Yr zdr@#(ab!~wq5+xMj!J5;$h=>Y+EJ5Ljx25}FKMkUZEt9(D6Q#1h4fTJ3|9sXRwKGf zg1f6yMr%Vx>LdGVqedDM`x`PQsspF%L#7)eXIrD5wnaZ_3ZH39eD)x5wmrS4p>VLJ zw6E>{^n;>-rqacSiHi?oo_8fZ@6Md-%zoM#GuBlx(%m}WQ!>+2|7@gfZlLAGRLkJ%a1;+^_=XC{ID_jad+xyd;X{W@t@vKqYoE;I)1jZ zvGVrS>f!F@k8f8`4tIX~xboA--FN%jC+`l>$A>@tc>ELQh5qr!;}7rN?z4V42l({j z{q*ZoO#lecfDijC{jnFnyLa;b|HBLPU*2=T|I2h7bX1&zz02Hu_!sXq5DA(f-KiC%W!_`2t~qqbtVJ1{t8mR)N1w5v;801`pMLf zZs-o*gC0jHw@C##lfGf8E=i z5hDr;if2}6+ylke6-TBk`tB{XB&zE1S)iR{+T{&-9`iu~H|B#luE)~rJm{!>q!PpU zZ(El8&^>p3V9)@h$9*Nz>PJ(o743XQr~5_w2IUi!9GX+?-N{aoj7l+-6sXFBFS3COFe!atg=b{e{?Vc{x%TbH~&JH05G&2<82U(_x8)LbO zx9?~9LN($Gq{AsWhAx%FT?+7dvucJ6pR2TJbeU~UEFLS-@b0uYUM2pQaa;VRQI1@> zi=<1@fKI+~D0=ZJ6ck%v(X!g(vyUB-X9fp~>KlS|m?07Lvs0KDqAVJTz(de-iflo* zg=S~0l__4|vnKKxY0pauV_(<&_yU#qJQ=@(qSnTUNTAs`rBHVx4{d{)KPrDb%m_GN~Y3+=*5RjY>c_?=Ag15yRBu#_OxH{yXi^?Ltr}zF7Eb zMK|1W{K5tGck(=k3WWR?JvoqIZ!0uJiD-eMmvP{*N(g;CrAIseFeiakJ)#5gpFonIy;N<(s zQ=r(a?;_|~^$o96Fq=)}akLtg#`Br$TP@m9hmO?UM!(zr&pnkZ=aE13WNQ_nb5RKn zq#iQhiO*4rIG90kxEfblwzw>HLn{hSRwP%z)}iVKn?s6E0x=84y{4 zawBEq1k2i7j$mFznSprB^ZytQ4*UZ13sH&O+M$%x+(o5EtYBA<=aYHtX8a(51EoZ~ zxFW+F-#+poQTG)3rRp*NyFU?{FLpr z(!TVw>g=Txd1lSPdG4Zc-AhUi%|MT&aBVtq>sG^KuW$93ztLiJva1Dctf6{BxH=g! z@B`KPg3=T=NVv-qwkpA6F(;@5%!hU3LIJHQjKaWfV6IBqDSTHwWRpBc7z0mwMWuR$ z%J4%1w!>vjK9idF6G9>V8Up^`gah%|CayW?pk%Dytx5(v%`%xc9s))ZRVkQ(IBC{*ma%kd zoyJ{v>l#aA^OYJr*19>6@B~_q@ZBNIw+lhw^kDrW^Z*U7NezI)1vkI|)Q%}xS!-U$RZXqnI&U?zOx1VcZzRrX<4@AxuEAqU zWPJ`mLk6XBEF!*uxo*!O;vCDVg5Bd_4SIBgLiJSTw2{_$BwhA`??Do&IiJ;i*Z6wJ zSTimRg@W9{)1ttjfcKU&V8tX?F2cLglogVSQXk&@r=cskl}<$$Ac3Wx1kz)L1nmug zlU~j8srb54lpCF&8)o5k_7I~^FtyI zfcmSLzNi$vw_4^Esmtn=wP0Z;7W0_`{|&>?pGu-BHn&}0exY+Yq<@@=6EM3v=&7Q6 z$-LT#$vjcxX_aL(5u^>SoY4l`ohl1X9eXb7vOdw``M4^(jhmQz*T8;VEmCnDw(FNt z9>-$w%wWwv>5`84Wzk6TK)>W*1!q*kWzIZfoP4SA|i z@LoXx!HO`INp3m&g(rkZe4p9MU#mT*%I}$Y6(w~*)`E|2K6`9|atx4z&2ZBwpH_DQ zG*rxQE-KkNWq;-I7*nfj`>_Pp+AXG*>+=&x^VFN4OsvQ@P#I^Ix$bXrl#Z>D${=^& zx;6n*bgZ(z^tJlEYSb*o>t|xwr^EZu-K(Z(dnQyPLp1V5R;kB^HnUO?2{;IQccBHg zwb-)4$@jb!Hf8Oqs^Gv}&$Pc+Rv&uvx#ab|W`%mR_ZYLF_+}}x4i85@)AFvFyShE` z5Chb66=>E=n8Ih3!|ngF|#7#ye9Jr^^QiM*0pl`ZRK z)7f0;a6ae3ox|-9iN?1u)av!-hZV;d?fbC%#VzHbJ0 zZjKpZX2u2AA+|!@@ZMkQKj>4rz0x$E#i5$KU18Q(O2a1XL_oo2s2YeiwCgRFNC@dZZbXm{-?e4YyB}VFws~Sl}_bnXmy>RLQd11XKHnRHf0~2 z(vLZjI}(5u3;R>5%Wi=L0{@W5B*ZD58ac(b=j_zukubBXvDKg-kusLJKCA6 za$Nv+p_-}}n*C4qW`~=|a%KFEGvHfror}`mhfn<5?vI&?-QHb5nm-<6ZgY5bxLg02 zG@H)?eyB9;Rieu*2}iq$qSiJ^x!e!`Ruk?sb;l}CVN-EPV(j+BkLQDgt*(L_c$ivY zTNBRZDZ5P4x8EH;zh->XQuh1f!&%`U&KnB*A0JK(Q=J5 zG*#L>bWCuNgO4mj#`gf^l0=|)N%n>e?#Gl{e{`DqhW^9FPf9KrK}oI8hBT@)zYkoS zs_%_ufoyIfJUOegM4j7vkivM8PbIx}=E};Ab#hzmI?@KwD;u#)1c2PVN%K@bODWi9 z5p)<2^qd1A|Fr8eOi`f{>Ih_Y!SK^cGe2^0w?UX@mi_*>Q~DcGz1nVSoxwg-=r~Ld zDaRbtk~T>)%o-0h4e)J)o4w{xNA&#_aBS(lsoHXt*US%n*E@ccI*Ppb&_69iu+3YG zvBhg=45`6YX;y1H^AzOSQdncv;N{)pPUfQ77##lC&ugm^2d!M1~ z>B{=r#NPmXx`dY`RVMrplu%G?#46V0z4Y`b!h}!p^-QJo?U zKEn@{&zgMRuBS7I-&`oWI+(#{&K1$m>ysz{W_eDjmk;)|Sj!ZbkG_FYKPNx10Hl+n zEI=tZ2qlP0vpf1Va)5(R&G?Vip7EE>+9nI^>PaON>B22UYQBjWw(kU=07e>B=Cpbp z4SiT?di_%7-chU9$D`4O=I@Vx`RI>*y&7|_77y3}?9W$b^XEm(TfJLWM718LI8Nla zg9AYn{1(+j96|a)!{x#@cSp}i3NU)fgKq1sL{L1Nur7K=Jt-7XVAg1r99PFT-gxI| z4?$%tkSpUon(!mHXqCD6XVr8=z^eWGpH46*NCB&+n=cc7EGUW1sq@`NReC<=f6jIt zJy)dm=%@r2lbkNptalSNZdOa`LR2RR1fEU{q@pg9T+F7rXSC6CY8>Q0t~IoL_KOu{fcw-A3cU9pj9 zO%15^w90d@7~x{1^HR$Fa0hWkfhDThZcrQT^>Oyb6agV6n{^%wD>gQv25s9J@_IT|7SU&?AmlTFI*F&@OJ!7wz^E(rL@5jbs3&JTnQy$#Ory$)xxhWS zM8akkF_Gq5udK^=eQyC;zCJbqwBH^(I_Q0^5rhRCxxwbOOqDPoV;BdIhl&+vY0^OjdM)0f=w zmz4bK!1uD_rm@MyAUe4}5L>eC=31SXiaNDoctM#b?IWC4IcO%m`ey^|K!itxCJBJ6*BmQW7PTnGPeS^dKOQVn?)0eq8iInvZObskXOR0 zEL%N~o*>G(s*EqQ$8ti3D7u1vu}A*r3l{mHbC(|8gZMQ#V-vV+>xWFd7mn06etqAfeiz>sw?O%K9hZOh{Hn9<_h%<1O(y&yoirc~sj9MqP zY;@h5c`&VV)8c_?hqk|Ol2RBh3C$-rM>ee;< zF!~C99RSj^pHNlQsaZyI5UQ%fFX8}H&`XF+MhRxF|FuCFqp4`uNq9}FDUqf@c+ok^ za2kn$WMT~e-&kzXP^r#oc6gvT_z@Ybnm|Iy%Lo9-%b%maQYEA4Q5YJ6gN3a`$I99d zz7-p@h&h90S6{C$ZkfiLcv|k_`F_W5j;*iCypbkdEy)4GU|Z9vBn1CPqx}X=5EgK{ zIqzbqI+4M_m$cahg$&i3JpUKBB?gCzMdHSJWii=W!HP#~n`U|01QeH#PnuIp0w95M+q$04*1#0PY=Z$j|o2^vi zu~nfQyd7strA+*71C&`KQNC{hJ_R%6_M1)@Q9dSd?SMC(6pqzXF*-lABeoz20x*Lx z|Hy#bImYikx4NIn#XBz^MTKr$Vp<0PqtLafYHOt2s4eGS4ioqMl)XmkXiAQG^H{qt z2b$wNl`QIgoU`|taw)f2CtrUS1rH}LPztA9O2-bLZGgQwCh5Fn<^y}*F#b|T zT}js_&Mi>!ywK?b?5!+zMp}N88o^*}gxbTH0G7frs$xI>?M{siZF5#Jga=1L!bVh< znf}OxJ5@35Sy>qK1hSUpz%gAuK?XUkB5hv?u>%w z!$rEg;l!dnX{T@({qXKX0L>t#CBum+TuR|60$CvNfDL$OlQ>`r8gc-U>0 zL3mO##qaLSOwN$}mWii7=L=KEUy4i16sIj=_i8eW_!5Di+Lw+pilZ^dZv&dp94W`6 zO)MPI@(W;wSP!LUH=Dk=tG|}bXZ|yu3uY7Mw+II;b;jL{^+Q}+V$tT}hK*Hf;PcH2 z+xV_7AXxDqb3>wv+Lv$!pmai`Z_a?1@BAa*Dn%qv^EH>YJc3L%(BZT`se|(~iMo7z zVR}tvJhjN`Mf(~{&}t`~_(HfV{VCUbCWcxxTQ31Z2;%z?$DwLb&FZ`Zx>v%+EE}Os z9;~gG3e~I38uwJO9wEpsY8wS5T|V`83?=`j+T*yFfSGoU^_Y05U_|xlrwt}{<VY}ZmTg2!LCI?vPzpgK&25GdlC)R~9FXVzed zD#lXpzi}nP>#*trDuk^wSWP&5RYHC#2$wzH20XuU+PSRkjv z9=q8iWG|!heQQ$#BaY{CEZ%#*Tb(&u6GSvympl|rCHUY>tm(rm zF*Ooq1)sczmO?H)Hd`IDg>LG~Y#}nkIGf3aalE^efKt5i#Ex5 zrR?G+&!mDG-=a!azj>@%RzMWT2B~&=ZW`~RCw5yN5F#-d2p8}y_SUo(JeOCd|C~)> zAaFGxkXRTaPug6<44K6+xS+722%t}5o9Lt^CB!9{Ux3BGi(v*ywWI8>Y>Dk<`K1#GS%IYI^(%R)b);Z1!5Uj4 zwex_a)$Hw1c12P`d{XOXdCa69(?~}0Y;c0H0K%NJ5`evn(bzzj5UgdJryUNR3lF6G zD~;&EjWBmpiYpXsioPUBefyHBrZdsFlM@aGDm-m!ZhxX$zgbqSd}GZwopIff3{oCz zAtqb6Z-{U;4p!q)LR&LsZfc|i5-cnMfdsUd<5(1y6)~)d=!vRFzT)M3Y7XozHU)hl zlCP(Fm+JYmrR_EI7Ke~_xJl9&HEl>ZjFeZ~+W}GjGYb3)Z+}pJWG|~h^0vD9Y$_D| zvQQT$?sLQup`>~!r1^%kilDA>P|dTZ*OMd$&lA!wK{2cefQ=0xXORyG0N}AanXoDB zJn#0gJ)ceVN+%YBvZ83_TFI8Unmb*hIBOnMtI~Jk03R4wPd4;IO7oUt)iq2 z7M^A#oxaO+^(3yx{AA}PB(a?AEv4RfoPm;|NLv=25C90G(;36)bJJ|}BId3}OhbuWI?S>bQoP|<8pc3@ z7vDt3uOW1QMZB6eP8`(=((~AuyTCD7;Er{f4@mB^)!-idm_M7>s~x~du8%=!03eQi z8cRVw0DwgVkdRlvP;s^8ec>O+ZA-*^Egtc98)j1@q90n6|ezD{_5OzA+Nhr6x2M zHoK4#Y=KU3X{Je4$w?jr$d`u`8>^?U(C$s9>2`?i)^v|plwSRzBi^?E^)$j{CWk!o zo%#@~NxAFu^dQbyR@1WX&L=|a&;GFGenk@=v;pzv_#hD@74AJfk0QWr-utZ~BNBObN#_o;60g%dUE2Ex)>8V5Wuzz?3KLAq|r$kf@bLi&;zSyQ!GAv z5wMT7Vi!3^NQapjy3E+%@|rN$%s8`+G1uFV^~Afsxu!zSekCSLs*x-g$(q128KAo; zj|Bi;E-R?V=_X;j651m%xiT&7zftAiYNX91W6DD#;dGfeiHn1eWLAnDH?~T-tk3$} zOIW`~?DPf0Z8Za46R-DfLk0wT_%zifvV@NuaW3fO)U{AGRZYda?{q|GayVyo`0d0g zT(&Jz3?L$40kU9o_Qt9eC7^$NYG>OCz*bbm%EaBtYJ|)E$0pC>|64WT9i{9K_$j3P>NfU9- zLc!ACZctw`pCs)Cgp{UatDlKh{z9l0S(x0rx=BmG&U>q1L*f)}lN!6-C+PhR9a@>` zVy)|8d)bmMuX}c%l?a%UQz`LgALD}6%C5%WJ0ak->z7~wC44AX(J|!kKF01%>l>XY zx16vZU24!s#jFq<3BY^-NBSf_m2Vd zP%Tqo+m`Spp(HIPDWBKd9}*t#M7C&=5&%IHE5_~aMI9{ZLV=1%&)EvrYfZ6NAGog{ zJTEV_mcMwj+Cw(d!HJC5yau)_RanqNEE)lvzwF&J)b#D$222QlzuPnZvg7-myYRqA z&aqkII(a+W25f!lpyViUP;c2&>FeHUdOZ61eQET-dm$8F5lL|>@89j$W6O62V-pn@ z1v`#E@3_iI$qT?P!l8yfouZb;Vy7=Rs>qmBI4v0n#K*?9J8dtdDI)i1fn|^Z#dXP=DFUHe7XNtPLbAN z25UVPZd~JyLwT?+%lcFdmG@j%eOT2n0NCr=m4G`u$B!1p0H$J6IZYBJZ;MAM+L5vm@IpQP$!hCk*K{Eb~9T*qG|v^H7!3YP4nH!emU1zBG}lZ z=lL@gvYcwLXK|S{MQ^s8_v#$NW2t~LjtV9Z_JnfHR#=6uvS7q@8a5Gw&G)wJH@-Rx zu6#NF`kg%(&i8S||9A%6hs^;$%vze|z@oFy@03`A!-*bT_bxbG?u&jVCK)>CtkKVJ zT7TUe?IQsocgbzG%d@a-3*B4bwXZLIK(&F38wtFqXlNF?V+_P6@&*WpaA9_@$_}%9 zldG5?`2O@uMg0L;`r3(a*TG4=QhJ;0LvQg@Gbo*0k=PJ?!z3(z3z5x5+w^wNIXAW8 zVoefK0#e0udUM0WE#Hw4kn094KYidl9|9K9%|fa;rhfc3WtV-a*}*@1k7x^?O~6OXaHg1Fb36rYbbzda~>B zwBkjajVhcdIo88U?wrhYb+Up@N?G(O8g%=daRhGMu!cN?Xg*6M)e7hV6kez1wHlJ! zp9p}==2#v4O$U93QvU}*0Qae$^SM$wt#9;`)oCgWv)+$n;PGV$U2Avn-CEsaY>u0oFq_X$0)^@4CB8E-O)) zr(#A7|Ko)(=U;!l(!6y|43B__OmMT*r7oy9jMTt-FlenC!6PVBFpyBpt;*}OP-ptq zb}h5jYnr~9fRl41?dnzr;7!BW(=;Z|khuC1P2*%N>mpg_#8=c6hWFpUadK1aC6+LG zKY)!p^mT53BT!$b(n>$s%O<$u=%-buRm%s8QeUjS)tx zdjwel#Y8;-a%l^nMHV<2Id45+KQMWljMvz!FO5>Xit#M!;3<2)Xg|*!#|#S05eF<7 zd6kUSyt-g1Xswi@Lf97-U%#9uPi{Ktf%Tzwa41&2E^2h%IxL2mE}%%EEf_>kj%yjR zH8oqJQ)M|3J|EPJ&?X4rSM+ByP`7w+_pi>Bzt8R8{_;}J&A7D_yJtI@^~#+jCv040 z^@~QKlt{g=N*yrB^yY?KbNlo%0oNNGO0ff@Ieo@hSv2pMFn{V)v|oppmv`B6bI zF)fqT6I9zSnhaZ*>>Zz2nZTlZ6zR4R9w)zopDR&&J9%ioC@99%s6fQhhfZWKq&Pxs^4Ig{*31 zu$EUth<># z0zA)ZQDM?`PL&FpwHUHrL>MFB{tCTTn0o7U5dN{t$gb9_3zowCrr7YZP42EYya%kD z=P~i@gaz408mBQ?qZj;;8e_!VH);Z~RPoJfEz7JlYjHj@Xpgt08Tgpv(=te<7Ti!lMS}438A=Dl+b+Ur$SC= z@*kGy!@E1{ONA;r%=PNFGVa@}>d9O>*&^9Ki)=&}jauI{NL-7g1ClaJv9<* zSzc24Z1dr4+wI>O{}&dbf2YQMv$VcIqd!8CFLUzQ#;t$p=Ff0Hf2IF?Y1r4s|2ggX z`oI6C7yg&L{ZI6te~0$`nS=jVyDaSI?D|pwIzztwMMa$|sAo;LKCc< diff --git a/dist/barry/images/items/shoebox.gif b/dist/barry/images/items/shoebox.gif deleted file mode 100644 index eceb310aec89e34157b6131ab6f7bf29f2a5d781..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21668 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 diff --git a/dist/barry/images/items/spinergy.spox.jpg b/dist/barry/images/items/spinergy.spox.jpg deleted file mode 100644 index e3986c5dd7386537a9fb5b8100df2b6c24dcac9f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21151 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 OIr+Ef_D=~k_5T1ug-&Mx diff --git a/dist/barry/images/items/terry.men.gif b/dist/barry/images/items/terry.men.gif deleted file mode 100644 index 148180199bb6e5f737a82c6422ea1ed1be871081..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16725 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 diff --git a/dist/barry/images/items/tire.conti.gif b/dist/barry/images/items/tire.conti.gif deleted file mode 100644 index 1a6dd04845813548b24314bd343d93ef819ac634..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10239 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 T_J6}v|2wbocVHlq(2V~NpqL|n diff --git a/dist/barry/images/items/xtr.cassette.jpg b/dist/barry/images/items/xtr.cassette.jpg deleted file mode 100644 index 1a5d42a39e4eac06ebe49549ed14c24d47150189..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4458 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 E4<1Gt`2YX_ diff --git a/dist/barry/images/items/xtrcrank.jpg b/dist/barry/images/items/xtrcrank.jpg deleted file mode 100644 index 5c26796350f5229a418a36443b87a974f766419d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3312 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 diff --git a/dist/barry/images/items/zinn.gif b/dist/barry/images/items/zinn.gif deleted file mode 100644 index a1c386f4da665a6fa1e98fcec454bee4824db3b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22757 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%0A$j_qD900uA9!y14}hG~@{5u43d51rS5Xe` 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 diff --git a/dist/barry/images/leftside_b.gif b/dist/barry/images/leftside_b.gif deleted file mode 100644 index 276838627f3649a968956636667d6147dbf34652..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 133 zcmZ?wbhEHbL*UvAV diff --git a/dist/barry/images/login.gif b/dist/barry/images/login.gif deleted file mode 100644 index 179624950de478fac050ccfd418233f8985ef30c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmV+h0r~z%Nk%w1VI}|$0JHx9|NsBs|Nr3N|Ipz7z~KMD(EqZ`|FF>ipuqo-u>Xv* z|A3(Xd8Pkmng3ss{{R30EC2ui044wq000Dvu*pfQy*TU5yU&U8WlWeX7Z8lt0lcdP z3{+AaMlvAL)*B084L_e>Ygr+Ar*7phFEX9ZNPJ+c8-?#M5#xio_r6l&&cChwxLE~ zmEau@@r_ck?)i>h=hAHqpQ=rs=^(~CF-E6Ob{J(tf7N=Xd<~{k<7k2Mz z4%*rNqICV|044c%Darf)So8DcZ>x_FUd6Ayz5j^Zovp@Nh3l3sk-zJ3QFG<$vlA+3 zUfWXiKCkfPTj}eM8lP7y-CMoS+H2RLq^A#^Ri0)PXXdWj>$f#}=g00$bz#{Ln-*HK zF4eiRar$D_^vGa=iwom+K8%}H^xo3*!QxYotmJI&KWNHGw={b_BmeC0-OuNI+HfS- zOn3gd9PQ{mdygA1z5QGhKR+ZqFIg$-v03z<^Xu2T8b6ACn)J;0|Dxo`;y9(hKVE-d zEAvagQ>{{Rg_f883=and--8-2SBLx(+imKzn)_yxm*Ss0Ss-JRJ3(oZLn)6;?KfSQxTy6GNb~EQttBV49iYAYXHBtgP8wwxs z-ZicHeNTjKt_%Bv8LG=|9;CGMrfyGS{F5f`^lp~lY^OCfLYIED{!|HjvF$qV-$kF# ztmO+*yrwpF%~Hi_-?%PVPl#SPtAnqZG5bf*m%Ox@8MYb%cm8EGIPFlld41{WCa?9% zFJBgKe68s$dGBdnZpE`)_N_Z3?-p{mbH2-QW%j<<@wS3#FYg@T4R>^d=4`e8o;NRk z*G;3ZdH446Y}+=|`}G%x8RpAhrGL7%kka13G);b1ZSLFWann? zx$8rv)g;;Dop+-O#bUPz|LI&}p8xEuhuW|0@n%1t{cYc>bm`90W{&q~j~MLep0?1n zGsAM{ivM%(NAtg3ynES4p?W9g758o&t=XMY@Xf?jz+dQ>($};-=4LWacgmHvTHT6S z*sh#y>#e_RW8IJ9wv6CLCcz6V;vEJ|p2gFpZFJVIbDMfq&?Wq!e^##jnw1J{BA$!8 zk4Af_s5Z^~s?=uu>=@&d7l|j=m|eA~%Zv$R{L^xw`@lvKo2t0C+c($Dsm^FcktJmr_1_W#WMX!WJu(`45hBx<)V;pH=kQ{Axg#hMFU6GOOk z=eTkjy%E~@u;H-Z&hkU2;@6md4%okC!`GzQ?UR}1mfV^4$!Kf1z)Qi9`{K6}7e1R8 zWZL~g$18131^0fHOV4~;vd=^uefv})>{`SMp2hRGOtblBd?NbrvDUoS>?AL9bM+?? z4L=lx?(aHVyvlr6gSyOKEeFPM7s<(?**m{_y?Yv_`E0=GW$<+Mb6Mw<&;$TOK`tQx diff --git a/dist/barry/images/new.png b/dist/barry/images/new.png deleted file mode 100644 index a524257539356fe756c20d9602caa96442c3ae44..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 213 zcmeAS@N?(olHy`uVBq!ia0vp^@<7bP#0(^#H}%a2Qk(%kA+G=b{|7RGMDW{$LqHZ| zNswPKgTu2MX+VxxiEBhjaDG}zd16s2LwaVKQ9)k1f{~tqo}q2rz6_v>2u~Nskcv6U z2?-ei2@wYvSbVg@3fDejFbZotz@^|^{PfC}sS0fA&(@@BJ9b&5`^AcJCS~Z&-Dh9Qr)n=x(~E9gvo}-pg2#lDJW@QoF+4mBKb|Q%MxXn35NHR3r>mdKI;Vst E0D)gdod5s; diff --git a/dist/barry/images/next.gif b/dist/barry/images/next.gif deleted file mode 100644 index 56bcdd6f06318f44da46e260f17ec6f29d090d24..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 326 zcmZ?wbhEHb)MwyhIKsg2|NsB@?|;NatBoa@v)HGg68p{43u j_%Aj)@^)Nc$XI>pz*T!?MwWfgI1fL2r}|b^k--`Ot8!~t diff --git a/dist/barry/images/order.gif b/dist/barry/images/order.gif deleted file mode 100644 index 55c9b1d2d0e2aa605aa99c28062a5ffd68b9ff4f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 309 zcmV-50m}YINk%w1VKM*|0HOc@|Ns9G5D-E_LStiNjEsz}t*y?^&Hw-aEC2ui05Sj+ z06+u(2)f+3uD}x=w zFslSq7zM>M^Ylm_46Bf_2~?8Upn1Fn1_ZFAKvw-cg`uHZLM%XUrh10mybIM!-AFN-*=H1Ox2heq3@_N0JS7+CrR+74En#^Xi)oOLQT;1K>ZnwL? zzkg_GXn1&dWMqWrd7sZ02n2$`U^pC(L?W?REFO=iQmJ%0y|S{B&1MUQLa|s}-vB@n zAiECfA{5pkUVxP%qzVwpLU09!Q{YR(ND5+E2(LgO4SWiQ;^2;fD+2XF&<21G0O^Bl z5z+-1jzfP8x+7o>LsJk88>|ly55*1VEJRiymmVK4`wJ^)%DkUa2l z7>+@I1iClm0WfT6MBCqW|N6aslHnt$+CfA^~Bf&KV6YjFaWt`mRN1Y^cK2 zccT=2_39tAn1?mZSVW^0?M9iT`#SS7{m`bKzs-dcQaQ47q2&dE9Bu3Sti%Z>UXtrr z6f)c(rewMvma^vP@$(rRmY*@R&UN1J(3G|GI7Q99In)MLPq zLR^ba)83`Am+&3epQJ+AxbQwy_sth2d`zmHZlmLQ7*@emCJTjmG-zz-LvY!C-f?HlG^R`=9t#C46oFaJ!5nwf5Ib? z;fb-by-t#m?7GYFjAcG&D?4zF%#mHjUrjKzYo-a>Qc5Hx`)U{L>g~zHv!^P9v{2q@ z>b0txnK|Om=wg&t+4|;c#*B3{gaQ#W8Xs?#j!Zb>2mJ`@X!L-eby-z0!Q| zXj1VoIWw+s-MDsm%F(inBgb9O&9M6UkU(XYDQ#sZ$6Q{ji?HxzkCO05yX3;)`U1I? zmE;ecwm+v&QqJ~eTw=ehw@c26Fss6$RT5O^s_RWhgDJnHtPLFH)y+NL zMWq9o?8-{@f|WK8%-?csYOov%^ymy3X>H$~#TTqb7hhf!DU+AWlyi1f)tSpB z#g?F!P&_tWvT98FJGiv6>H}6{uFeyY8vQ#qO^t3}MkD(=TB80mX?)9CGtV^y4*1z5 zwf~Kbm9mlEF$wll$)>UB@=Meg*=I9k?L~&ax`Xt7Pc>@2N#)MaZ?2Or+(o>d=yh6Yi2Rgo1Y$BCJ6EXyV^yjXr_o7x()g6Up=lzd|J~c*_>M<-Z~w z^B0Gf@Gyjo;Do1$W1a*~()!0On`wmUbI4eo)~gbW=*s<9EQxIdA- zx?7m0tHrHcS2N9p)z!EFeek=|=EZv}W-+3!kB~;+exW`0{QO>|ef_T-PKS6Io#<}& zr@pJ9pW0^pDu1Na-`EfqNUnt(EiAfy`k0US9AQ;Qu^(^#qfJCJ0u{}zX$J6KlEXJ~ zLQyM=4mFXLnv+QOgWoWC4>zc0JI?DSa8d5eEiHpq^aJ>JZ49Q%#eXy*vv`@qNk1n% y-njMZQpN56Jo5fs&9Gh)V8k6KRTC#dC*D>6y1D;peec&VpM^W`87yiVwfzjkRbj~h diff --git a/dist/barry/images/rightside.gif b/dist/barry/images/rightside.gif deleted file mode 100644 index 55db96dd653f0de448c57fb69aa005468293ba9a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 133 zcmZ?wbhEHbu-8JjAqr@!M1Kfw$=O<91PX~;8QRn diff --git a/dist/barry/images/rightside_b.gif b/dist/barry/images/rightside_b.gif deleted file mode 100644 index 102f6d1ad7d39695813caa9cc8b7df1d6d5ced26..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 133 zcmZ?wbhEHbU`$7)3L%;?`!6Zt~{pc@JqvI#=+iXLxX}j91PX~@xw6n diff --git a/dist/barry/images/sandals.gif b/dist/barry/images/sandals.gif deleted file mode 100644 index e73d3752651a34d1ef9695a1a9bd075ba5e9adca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1859 zcmXxfX;f1O8V2B-P+4O^WKIQt6g6Q}M?i zBB%jDkk1Q8!@|NuGJ{Bli9|?HR+rzG&9D@MVG#_&{H2nHc21VKQU9QePW<+A(> zK*5n3G%<)*ZD}hU+rOdN+I9Gg8{2!P=H@53$CIBKih^c}qIuvo|%)!XaR*BI=@^)m2V z3%}~Po#e^oJ6>DKC-eD+ZY}W}^OlfquhW%(rMtTFzE^2zmZ=0cD4@II3=<+t*9HYWxFekhma`icbgS3Z91$Z&M^F;QETS73%xkm{o8&9g)9;ToGoNutm-u?ndV zkyN_UTO>>$Dax|~lu)rXf1ZGprBR9oK$k(aj=QmF#!|kUnuK4DO`Vw`$jQ}Bf)Ym5 zoxIlxUXfhp;9y-Ro2F(c4mhg_)a2p{K&(dH1Q4weiNnv#z zf6cjhNXr-!bVVO1P91Fk&&GHFla52z!hdIn>qM2$OX0}~#)YU3La6J>`AnyV6)l&Qf-UA9 z;+5YWJrAwFfj!&vbnNw$LlRkd1Dgt%kTRBgDFyzxB(9Frj@4nK2F?VGl>(zE@RgY|2bnShYg4jO2cXE{lIFvo>0e~=MsUw`$tp_zrE`c*Y6%_ z*(}OFkb`Uv)IRHU@0P!niwskD%R%$n+p$hw2w-ZyoAdIj==+ni*H?enKA%eqChPXE zTSaGzX%k7n;K8|pg&{^H>bj}>>5Ia&L6~nuhaH2BrUSG$@2#YMFNtdZU#520_R;=8 z&+i$Cd_J$bYhL*K14@BAB<^>J4GJX{&Rr8lmJ{YTonjRUXhgTHZwE;QiAN$1#{A2k9hDibw=2fC>BnB1!D*eLQDjm2&F49yy3ND#`4fnF|iw>@<7oj?XqOo_AE}5d?;YPErLsUIuYAp}0BQZKv($ueHbCv5Xk4gkrUHSrE5r)>XlJt^$HF@X z+DVMbvV zt=&Pl&AeP=_KiM;(V3bZF%f4GhER=pmDNeI77`@6I9=-^vUOGZ6Z1m|=R>5ebsp*a ztasSamz+EE^j;#~UTc9H6a_k)`=0$*rlv=3$)^f~Q{foB3$_U$GxQ2O!F#(93aQ-os zI(q|ew1aQ|%y~sj+a|U5z!#wGd zb(nYL@Kzcueis)5rt}D(|FgH+sDeTcBr5~Q3YlB$|c+IhiEYQsz6^cRK|~orw4L50IGpYA_V^2 z+!}4XyV^7&6x*pWl5Ak_MgG1G0O0qUz-+W=d^}?Y6B2V+SA<$WIE5Mj=t(qsl0!PC zSuYW=n&7yA^h}ymk;AM3B&=wT*eD@XMhW6S5tJd;Ez2HJc`vs+m8a hWPd6F@JD}w)M};k$?Cw>hB23KETbV`_`pEq{{ZUr{@4Hj diff --git a/dist/barry/images/satisfied.gif b/dist/barry/images/satisfied.gif deleted file mode 100644 index 30eb8b83d8ca1c91b72d102448573ad8b62690f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3292 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 diff --git a/dist/barry/images/search.gif b/dist/barry/images/search.gif deleted file mode 100644 index ec9ad506d321bebae658410a466b879737f23f08..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 580 zcmV-K0=xZ3Nk%w1VKx920M!5hnar7=&!45zrK{Deve>e?+_=Brzs2Ik%;n6|>C)Kj z*x&EpZgFEgjDce8>gD6$*=}4mcVa8HtiXtu4I$icJq^z#4z{{R300000000000 z00000EC2ui05$*>000L6K!9*aEEWIui;MBa99X2o6uKQUMMZtq~e38zle)It&9t0R{*M zLI+F-&IZm20|f{QOF9Dy3js(04>379Iu0BkC4~SD?9K!a3JN*}=no7II>I$@Ak2XR zYt85(ID(+viWxJ^uuvw7fer;08DwO(&_KY3Ts(3C&~QM2W=00EGcjX?1PmA$5lIl> zq?LUH2n=ARfaJ$%S3Y|NXeb0_5qdgm1X99|U4a1)8d&V~fL+yaLIhOR!33z$AqUvq zn2{;T5(Lix44o!qz%)()I6-?WcUju3Rb$LxAx~4J1?+6hu;kZ}N*y?6P%Lc7V-6ZG S`ZCTV0pf?reql}t0suP#Zt?U0 diff --git a/dist/barry/images/shoes.gif b/dist/barry/images/shoes.gif deleted file mode 100644 index 4aa1cdae0b2c30c80cf3bc0ac26675350ef3a1f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1750 zcmXxfX;f1O7QpeB*kU$DyNq9hj2o%Fo*~BK0VUub^6r=;bfHfkh4^RwB^#uqZ z0tN=z3Ys8PKty1$b>z(Su?-|J5^1QEx`c`-V$TsQ9mjUaz=!#r|GDR$`|U=>L+lYWa@k71b6gy~Jan_;TnEt?ZnVE%QAs3{xQla< z`O`wAS11&Inlt9_?=OIRy$^S|AG!`nP)G=DPDHe~JA3<2&-KlrzF_=Jl=7jQR3XW!%kE zLOVv5$8KN)Re;+Z&XgqEyR)e01Yu-FH6ZYWIHe5-TFXTg z%qxE}Qg1m7(6kBnB&$+R88V|aBcyQmRO6;bg)K{w)ZN1dcHejF4O4fXKel5|87s8t}g8Hs|6fZWbI|KL7lrJ zt!mtP`nR2fJH#3FK~vY{&h~IT9oUs~x=ED&nFhP>7y8h*cv61XhaH-V9h!P>F@u#g4bL$ZD(i-<;#X_>x$KMQW7@^)4kfa z6w@LSx#ZV?VAl7^jtK$rc@1T$F1$-`%ibHIn&^eFyeFr0dteq;^<2{v-L@HKN$ zb`9cA!dv+wB2Fiet1L3+cyAddEPYOS9* zPgW~zh^IP5G)QouF!m-^MdCF83fTvC>ghmF9i(~2(ecO;Vrf)?d`->1R%F2MW{bO3 z_U)NILA_U&>w0;>YHZmZdaLuoKZkgZKAdR#htxCiQx}IblasJD*!10$c9!>Y(91ktF zJ^pHla4*bTmbU*+LTicro&n(y!JOA2%wPIMb&6;i0Av#__&V%_^|6ixkQ&&GjpQ7J zGi^>TR!3LtTSD6}1&iY+xhL=8l$CC`$is~NQ@*8czx*kKP`kFSEuYS1Nsm8xP1h82 z@&c^1lWX)7trk}dg=U5vP&aVSi&jl?DnR|pFu$3rFY4}s;X7<2!1wFYZ}zN?I~A4H zOiTt)28Y(*>jo>`lP}qQzdkPQ6O1}2SuGN6W)L2&&X}FU8@{O1jkjf zYsLFus)uM=PjJ0u$T3^aqGcDp3?V~GCzY`OlGj}czS!~-;$4##?S8q&hN8WIXgYdZf+3Ti}wuh#vm0{rFm{^tG|mxDA-_`h?~kZ>TPOhI-o m4d|b+mnHa$0UmnzL692%K{G}yv{K`3Coob-FCK>jLjMQ$kl51z diff --git a/dist/barry/images/shoppingcart.gif b/dist/barry/images/shoppingcart.gif deleted file mode 100644 index 279c8327f96f7386cc9809404802e5e4829d5180..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 799 zcmV+)1K|8eNk%w1VTJ$`0M-8hz`(!&OaK5G01s~uA9)`yf-gUeKTnlUU!PxZsBeF= ze~-M6pT(cA&#%AOzt7^&-|OG+_3s8{17@CM4P*vglvaJGb{k_2REkNBv4$&c9i6(C zDPj~bVHY=H8|LfcJzyT8uaMl~)pmzkn5BbDUnNprD5$QJ)7Hsraz$BPD};t&X=gi& zg=BDMKhey<+SbhM>gA-FfvuyBL$lSaGK`b~5P6t|hc}@l&A~Q8LI6FHUd3S}Al$A&i zV-JIygJLrhPXb$91q1*KJO*Y|3Jg4^R{%T=0IXDeVX9{e?JR%6RG)&rHsK1)QFhb#xB2v3@ShE(u zfy0H63OHnR$P?gb*0X5Ss$FYo0FM|O*vdWY;6{xbG;Zk7fp%vTd2OIKGu#LuKrlOG!44WbV8n<4<9YQMJ3M^OlT^$Afx!x*D&uXa75H4h8&GL5!03=Lw5H5z9dZ5WQALEn)qn(YWdjAk!<;K)xW%A|ygUP-6AgTl%~fboL d0jN+D0|-{lC1ex|&;SxB4#2@D4TX>X4)APU1>m@FziYL0b^v-(u{!uC?d$R#IucOrWwyfF$ZKY zs$D?Sj6ne1R15)h1w`>N>;hWGfX(Puk!nGpiDD(L5hcO-X(i=}MX3zwnQ2A^dFcv9 zdIoxiwsHG17#J9vJY5_^D(3VCElhfBz{9J3D?a3e^4WL|6(=bzE4wGkfX$8X zv%9k2VvF;yxt@KyWwNKOyOc;H)br(;Z$a+|pr+{Lg$a`@*GPbSvfd^v>7k60?kAL z)BKqr{5o-{`2WQqHC5pznriZJrO6(OK=xdB)k=FMAfv{g`AIuS(m|KOOB!T8Ciry- zB$md?@MR*SlMu*lN}{Yl@}~i_mmZrRJ4p6R2BV$^m<8f76tgoMvVznggX$nd2zQMd zRJgz$q~`r9&F3?rQpoCo?Al-{h=>gfOSLn@V?&USj18cIKz37!N3gdHL=BLkdLJ~t~zMcbeKOE%yYr@$SGS0bU zF`y!x7frN9KmaJR%O2{xYcmn@OYKo&FkYn>6ue?3t`Q}{`DrEPiAAXl>6vLp1$pTT zMtTN%hPHA0GJx6Qil>WXNX4AcNgK0897T?`M+=K3esBG-X{vz4o<{*we0T0}4C_1^ ztIE>1#Kz#D6Zi7T6ADTlm=b53H1&pel}i2ZeY>V9A@Sqaedfm1J7*_7GyME)@B6>^ zjN3R3=G?oH%^dlryt&-ZEG&E8qZiX=Ss(5=-5~Vw$qSu4mGYlUwr%^X5_W5%bM?~o z5BGw*uN0n#Ob9rOYyXuhl-f` ziL0sI9Tptn_ZKM0wO!kEP(0vFW7+n)IA-><-9NKCLoZ0W&Fm<6U%2rHUp?!b>jhWM zxqHOzY#LpJI1dCIuX2>}P_%CEV9HII^Y_-oh%5GPDq2lm`O|)e@u;yrES^_f;4op8 zj7ZbAp1+gXg?wNAU;Cs#l#N9$v41DSQjd#!?@n&|7dEvxUPtbq#e`Suo)~WNIrl8{ z)ZK9FmPZ9s7bka5%lPv=B>9z($kEicwx|VLzI|J=&7Sc$L+)(7c@8^0trnK}-(`M$ z6vLp1$pTT zMtTN%hPHA0G8h;b6+B%WLn`L!DjGy*TX8^M0;b zuk6w^;RO>+ez%7GJNMwOPT<2IzMV(qIla=Wmr2f5eXGyLY2%ru`nT(l&czF-3U7x7 z#Lml_5|gj7YD$oNwb?{x2Zn6vY~84uoGl*T^YS~KlN3B$jxZRV>Cjj|F?Q;9ZwJO1 z8g6w8!i-8@9@`jRPu|jBW3k~0%e%OUYjazA`=>5FcU$wv9;3$RY@3(F|COxoaVUK{ z<=o<3FQc{;9e%oC`})hQ(sEu$^|%_VX8jIHu{`41ly&vY43`(lGW!)%ls%ZQecgNS bqx26p28mYo__-A|pv2(m>gTe~DWM4f(OT$m diff --git a/dist/barry/images/smallvisa.png b/dist/barry/images/smallvisa.png deleted file mode 100644 index a54fe06e2fa01a0909c742e1c2ab4521db9321a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 929 zcmeAS@N?(olHy`uVBq!ia0vp^DnKmG!3-or3}ja_Fferl_=LFr2Z1v{K{)t-=0BW` z$@o9h`2S2yVKPO|ocVv|42tbQgU-xE7a`MhRBbac{55mt|Cuw-%$!L*|Df84#!H)d zCJoiDw6rs6X*1K(($G~Jql=&^Ae(E9YL~I`Ok?9TV`F1v1C1Hdj2TcwkY%aO2Kp3a zSMT4{C?F+P;u=vBoS#-wo>-L1ke-=lRFIdhV5DcDXJ{L@F9WDzlc$SgNX4A96AXn8 zDG0dk@7)^L9J13x>!IE)j!?fzYTn839zD0x^IZIhr^oDHQ{%&rW#StY6;_?R5Oear zlker+PR1MR92X~hHU!o%zSNcAIX;i+b%K)dmg@FhEyC85!DzfNY>Fh|Ltj$Y2csQN9XW diff --git a/dist/barry/images/specials.gif b/dist/barry/images/specials.gif deleted file mode 100644 index 36c31842d1548460f5d21d2f86ee1c67e77ec5a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2797 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 HfCK*po$*^3 diff --git a/dist/barry/images/tan_line.gif b/dist/barry/images/tan_line.gif deleted file mode 100644 index ccceb827c246d4cd5ad5122d21908b76a9e24ec8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35 ncmZ?wbhEHbWMp7uXkcJCb7m$31A`6_1Nn>$3`|Tej11NQbo~Vm diff --git a/dist/barry/images/thumb/KHS.soft99.jpg b/dist/barry/images/thumb/KHS.soft99.jpg deleted file mode 100644 index 3c76e2ca9615b311f98a6917cfead8f192bfd095..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4940 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 B%I^RG diff --git a/dist/barry/images/thumb/aspen.gif b/dist/barry/images/thumb/aspen.gif deleted file mode 100644 index 7fcaf897f827d0996e75a511d37d52edd64fc1a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2492 zcmb7Ec|6n!8~@E$luYOC3abxT5yG_Ir^ zL#~XY$+3>g5i)M;Os-;Q?fZV-&-?!SexE~g~?q@*E+QP~L0D(Y&<KS94u8|f7tNV`$NKjBvSV&k}L_}Iw5vi#Ae}mf!zyttWz?TQ41b|^69vFzr z0+0Xz2J;-X{VyPV{5-q@An*~369d2?9x(3__;~pKSpk800A3iMB1By0tb~JiC_h{& zS@+hH7st?Mj%|_y(^430{Kk<|3Iy={uj#*~M+6FXbQ{pWLjMy9f`P>qd31EoI)rk^ z0O2DY7{&tw@IcFA0SzcDKDMa_Q4z^?N6u8Li5T0sycnz~%3bDQVf1t@9+bD!UzwX0 z5s6lMHfl4s*^{zuDQ3Q3=5FLZRu@g$BYH@f4z2k&hBY*1(Up&UNSuM@i&;91P;;MFFL0JGop^83@G!-oIx{kf9#$zQB-hK1ZqLyG+~oHd z46;J}+scJ>rCUCmG6bBHyT9_s)6v!(L#xO)9Di5dAcxQQ3p8foJj(tGNH7TaI#$aC zBrq{Kdd)fwO~aEQYA|Uy=yDo;bqu?@Msal4WbMKN^|kj7Hr$CBz0#`bzn$Vh#~ISA zFCfqM!}E}WoDGM2ya*qK{h(3wR|Zk`y)qZD57=_=#b7C&PSM1heS(p3FJq#svlX*i}7p47kuV z|Kyt4OY1jUwuv*iKGV0j)!cMGR%U2_7=w%qVArR%%NkzCae=k8qOrzge$8if8Y1(O zzaUumbmT40lKTFdz}Om4x`LJBKj_Zw2Dky;gma0sgsOw3SlqBSP1E4? z7<$on9bT0BCu04pIfm*b0maNbB8{``_ltYKiYxPV5;^GNb;#A04$T_l<8E*2hR>ic z8^#DwpL#E%=jCUi7e73QRIsG#c46<7x2#vX+Wf`n)6VYzFVYY^Mo>Q^*rzrHl9b{& z$85K>Qt;_ncMV&*Z9_6RjD?r72^MJOob4693r){evW7f*<&P)9s`<1+2%NT7Y5uRz zJkBVQp+DKRwTy=nh2#>7mhA(-In_Q1rW|8=e;hIm(<)rwp9jrVA|!<{n5g>YrsM`zww^Y(1BS#nkDpGmbR?B=&)E;*)r z`Et2F<5H*ZCzRq+lC|$ElGzwU#|-8Q)d{c=Fpi0B$CfuRQj8iSUrnHs{V%5%sGl&n z1Es`YGnggcT0C946Ui!{It8`_O|kmVaDhPI59d>EPNwPfjYvCvY2^agMx&=HMtSGi zc&Vso2ucUFwQeRwV7vBSK^SFVc-gjM~o|%p!kI6d>H~k!vm}VFXW+Ys?pSEZpk)%x=By9ikjP zh38}U3=W7!cxouAMCT6kCs*MtbPs?xRVzD}P;bFDk*C>wH}iW)r&XkDJmTYxz#$G6 zOMT1r#?xCkG1gZ{dun$jQsE0YQ++7GsZ)ohF#T0PB~E#h3xwGsW556Sk##{+v%Yjb z6kZkGbu!+iYj9t7HcVA1E!I;a_Zqc@2^Zb6VI6RRrwX+@);1lg+HxC(Yk??xj;QdV z?x_Mo%ctx=NG5_mtSj!~x6GFGORAB;ZerfthDbaR*c;&pIK;blONLAz$Agh z*Ys*oA{?s*w{7>KM~pv@c6!i3X=)Mi+`CvV-kl2%?m}H8(RWnyw@YIOu-%-<8p&KK zd#Vg}fp;IJ(O+3cRQ_&0(l(v*d10_Nc;;5Yw_ysE(RO&kb9rqH@|XEL*xb9EAIu*n#s}DeUWrG*+?5w!v*4c}GaIoE>)*sa2`{Xz%2<*L$!qlzS zSdWC@MVAJp?%Fw%HvE0GFpI1q5%^c14s&y8=`qt*zze!VQ|Bc}j0-i(w%l%;`So6& zC}O_z&}gSrezC}W;5-{L@=I*qWP?dT_z#GIZESjQkdlfcVuBwnZXoZSKy;*pt)j!y zg!l9H%BCS+$C=SoEh&89;<=5fUp=NTS5v0Fd^&8}Trhzn;D8yglvn)+@1Yc5IZ+XsBm9vvsV6;^{u Xbwm3~;XpoM2;E7~cQA)1a7X_JO7U!k diff --git a/dist/barry/images/thumb/avid.arch50.jpg b/dist/barry/images/thumb/avid.arch50.jpg deleted file mode 100644 index c00633168e20f6f7ef43eee5e3ddd7f4bda6597b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2534 zcmb7Dc{tQ-8~)9VF@`~e$jFSDiLsS^iR>CfVT_ze2bqJ(U>IcU$TnFUW+;`NY)Mp> zEJ@bXImsZ#r$~#jRJMr2=bV4O@B8z+pZB?*>w1^_dEfWG?!C8r?|}nETRU3-1Ofqs z{Q&lMfuptoffQ6^XaIvj2}1cqp)7oZeJCg=|6oRNn166c6-rn0_#O|i0)zwwVS-R0 z7z_r73kf5nL=hq)2sz1v;!+BS6^|$!Mj}yIO=XmlItGbUF~F-I*V5J1Ra7=IHPklI z)X~-cn*;=h!x16~Sy540Z8Q?C{eNSx3y=^3e1TsfASD1S0fI5?xx`@@jSiCbZ<) zunbnmr+a4qpv?Y9{Ws@6`#*&85`WMCPd|_Z7;T~Dyf+CTAfWw=K_mb(;P+u0DOudh z>tMAUig8MQAjSS%msDr_=JUX-8ht2t%}B*#UyXTJ+|88kJI?>I<2CxLmw8i~A$ z%HBQFD+v`2YnUqE&4rosGG{SvF=b|A%oTT9>vvFc;&;F2DE z;)pfnYn%g%Nfy)J_=sV5EqL&t{Z9SYCW8^l)z*1G0Hn$QuMO!}A2d21Mfg`s$%zj7 zE8A?4rrIl-jo7-d33r{IpQ_O*bcWRMgH@8O%vaM30J4=nJnn}a(=Xy&9pB+@vUx19 zR5@sj#mjlB=hidJLRZ z|D`1Wg=DujnhHlkikwg1`sEVgU~t%Mn|JGuQt?zI!Oj_e;WapiK3;FtfAk*yj+nVp zM^#>b>_QB2S#V^FPU3?TZ7%yur>0iosN3qPq_JbytiJYmW0y$w>DWT8qK>Q>7n}M` z=bcivfBq$(nY;J1JkIBa*gKZDGn=+ValJSqZ}Si0gTfZ!wMqfKE!N~&i!JkkjhdH! zRewyOAAAd#2-KhHJJ2jCZfbb6yfD{whsH^DA6>^HDkyRrmZYM0dNNb)Ar|%2y31N8 z7nd8-x`V_h;g^d&1)swb1dfg4-zN9i%px~d8YCs<7*Np4tJ2-YJR%t9)yqRvxN`1(h3zlYuV+YhPkX`FMbGI3)SD!a37{*g~5*+;aOSL#pmDBh~! zpO|@%?!}f}naZ317z^iR?xU#ZG8rqJln^sMOMLy6^+(TlS2J>{0}F7Imi8iZd9zRV zzSO*$p}o+|qvAHA6*je-NqnB|Z00*v*Q|2ii`U)5Dtk}MEJh-IwiQMzj1bD`(ZWHZ zkU&)-Q2M-goRv4>Q(yQNp2$qoKy5_xxUC2yc>lWg=u((QFE3d`X}KG_|nH$ES}ac#-qsM(-wJFA?ql?s1`RQIdA zGWFe-GMy3OT{<(f)Pzah@=TY;O6)MVU2VAHI~U4YhGd^NPKU%9+;JV^>OebRf7nE8 zlmz)QK%&*ZZ`GWE$MqB|76ib5R-f7f9@($^GA<-F@fAS9iJ_YueV&HV4lK4~2vu8X z)ECY8ly^ViX5KsLqdg<`S3({ZKOyf*@6h89cFp04iZ}Hri)Yt(8VGAbe_m4M8bP{i zz7E4^@C@%PZBsHHnuxZHTK0({mz!~! zMdEiVqsd|}iP?#Xr^SWyl^x7XRaDZoN#k&wjkPU7wE4~tw7@PSmwQroI#}Pp%lfK} z2>amU&lA|XbFzl-L!*7?MzcqnxD#t1np*|52lp(L!LFUhi=CWI#g(Ui1^;_7i5T$n|E^{9kOy? z4ht_VFkpapu!cW#&YT5^IWqOJ)ezHfruYq2^6b8QboUdyug%}3MZtb1rRd32Zd8B^ z?FLK+QqL<|NpCgDMMxAytCYG~++EA8wAcR@&#R5wiCQUt;u$r?m@0c4jSzn4Y$LTl I6!#|n4LycnzW@LL diff --git a/dist/barry/images/thumb/barbntrini.gif b/dist/barry/images/thumb/barbntrini.gif deleted file mode 100644 index 9dbd4ff0012f9c2e78a27fdc90092c85f75341c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7268 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 WeRBS7Fh|P69VfqzjE57n{eJ+;nLSJZ diff --git a/dist/barry/images/thumb/charlesnfox.gif b/dist/barry/images/thumb/charlesnfox.gif deleted file mode 100644 index 090e0505b6c061b4072c3899978dc93151cab53e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11689 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 diff --git a/dist/barry/images/thumb/chrono.deepV.jpg b/dist/barry/images/thumb/chrono.deepV.jpg deleted file mode 100644 index 92ebff40bb191ccfe6a1b0c7f754e6c421524612..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10556 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 diff --git a/dist/barry/images/thumb/housefelt.gif b/dist/barry/images/thumb/housefelt.gif deleted file mode 100644 index a46f0f95a1a20d5020970dd48ce83247451c7f7e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11689 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 Quf_*7eBY~W1kjrQ2gZXr0ssI2 diff --git a/dist/barry/images/thumb/jurassic.gif b/dist/barry/images/thumb/jurassic.gif deleted file mode 100644 index ccb6630894823a2d2b5de473ff4ce6be031fa1b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8515 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 diff --git a/dist/barry/images/thumb/man.99sxti.GIF b/dist/barry/images/thumb/man.99sxti.GIF deleted file mode 100644 index 14903f8a2c56e96110b52e6be965b8008aac2356..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8288 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 QfBmcZG~vRNh8m>!e=^BlWB>pF diff --git a/dist/barry/images/thumb/manhattan.gif b/dist/barry/images/thumb/manhattan.gif deleted file mode 100644 index e1270a1c5d2f309671e6cd809521423937fdacf5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9309 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 q$KZbn_8SfV-GzJ0&to|1#f!p^0 diff --git a/dist/barry/images/thumb/mystery.gif b/dist/barry/images/thumb/mystery.gif deleted file mode 100644 index 05ab8abf3e8d762c13f4ea96c2c10dd03b1757f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8401 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 ROgX59Ds)8}L`FcD{s)=h3snFB diff --git a/dist/barry/images/thumb/oklahoma.gif b/dist/barry/images/thumb/oklahoma.gif deleted file mode 100644 index 619a6e77112c3723b02d8d15d4685e4e39a8778b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9536 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 diff --git a/dist/barry/images/thumb/panaracer.mach.gif b/dist/barry/images/thumb/panaracer.mach.gif deleted file mode 100644 index dd9fd3e109c90b1c21d4260aed272f08065f632d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9876 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 Q@u(<)kbkpW6eDT+Kfwk>q5uE@ diff --git a/dist/barry/images/thumb/racing.gif b/dist/barry/images/thumb/racing.gif deleted file mode 100644 index 4ff026d1f0b3dd76cdc7eefb47bbc76fc8a51add..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9421 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 diff --git a/dist/barry/images/thumb/shoebox.gif b/dist/barry/images/thumb/shoebox.gif deleted file mode 100644 index d7ff2941dd27c8ccaf1ef995c9c8efaf4e89271b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8969 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 GS^U37up5&A diff --git a/dist/barry/images/thumb/terry.men.gif b/dist/barry/images/thumb/terry.men.gif deleted file mode 100644 index 878365863ddc67452395851e5ab829549843608f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10215 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 AZU6uP diff --git a/dist/barry/images/thumb/tire.conti.gif b/dist/barry/images/thumb/tire.conti.gif deleted file mode 100644 index 74f848e9735f861ea28d9837875225682c6a45cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6361 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 diff --git a/dist/barry/images/thumb/women.gif b/dist/barry/images/thumb/women.gif deleted file mode 100644 index 0334a7a219da56f2cc70fe27f10ee3681045661b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10669 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 diff --git a/dist/barry/logs/.empty b/dist/barry/logs/.empty deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/barry/mysql/affiliate.mysql b/dist/barry/mysql/affiliate.mysql deleted file mode 100644 index d59148869..000000000 --- a/dist/barry/mysql/affiliate.mysql +++ /dev/null @@ -1,9 +0,0 @@ -Database affiliate affiliate.txt __SQLDSN__ -#ifdef SQLUSER -Database affiliate USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database affiliate PASS __SQLPASS__ -#endif -Database affiliate COLUMN_DEF "code=char(12) NOT NULL PRIMARY KEY" -Database affiliate DEFAULT_TYPE text diff --git a/dist/barry/mysql/area.mysql b/dist/barry/mysql/area.mysql deleted file mode 100644 index 197b9394e..000000000 --- a/dist/barry/mysql/area.mysql +++ /dev/null @@ -1,11 +0,0 @@ -Database area area.txt __SQLDSN__ -#ifdef SQLUSER -Database area USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database area PASS __SQLPASS__ -#endif -Database area DEFAULT_TYPE text -Database area COLUMN_DEF "code=char(12) NOT NULL PRIMARY KEY" -Database area COLUMN_DEF "name=char(128) DEFAULT '' NOT NULL, index(name)" -Database area COLUMN_DEF "sort=char(3) DEFAULT '00' NOT NULL, index(sort)" diff --git a/dist/barry/mysql/cat.mysql b/dist/barry/mysql/cat.mysql deleted file mode 100644 index 9f5c41a8b..000000000 --- a/dist/barry/mysql/cat.mysql +++ /dev/null @@ -1,12 +0,0 @@ -Database cat cat.txt __SQLDSN__ -#ifdef SQLUSER -Database cat USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database cat PASS __SQLPASS__ -#endif -Database cat DEFAULT_TYPE text -Database cat COLUMN_DEF "code=char(20) NOT NULL PRIMARY KEY" -Database cat COLUMN_DEF "sel=CHAR(64) DEFAULT '' NOT NULL, index(sel)" -Database cat COLUMN_DEF "name=CHAR(64) DEFAULT '' NOT NULL, index(name)" -Database cat COLUMN_DEF "sort=CHAR(4) DEFAULT 'ZZ' NOT NULL, index(sort)" diff --git a/dist/barry/mysql/country.mysql b/dist/barry/mysql/country.mysql deleted file mode 100644 index 86d3bbfc1..000000000 --- a/dist/barry/mysql/country.mysql +++ /dev/null @@ -1,11 +0,0 @@ -Database country country.txt __SQLDSN__ -#ifdef SQLUSER -Database country USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database country PASS __SQLPASS__ -#endif -Database country COLUMN_DEF "code=CHAR(3) NOT NULL PRIMARY KEY" -Database country COLUMN_DEF "selector=CHAR(3) NOT NULL" -Database country COLUMN_DEF "shipmodes=CHAR(64)" -Database country COLUMN_DEF "name=CHAR(32) NOT NULL, index(name)" diff --git a/dist/barry/mysql/inventory.mysql b/dist/barry/mysql/inventory.mysql deleted file mode 100644 index 8d6b24afc..000000000 --- a/dist/barry/mysql/inventory.mysql +++ /dev/null @@ -1,14 +0,0 @@ -Database inventory inventory.txt __SQLDSN__ -#ifdef SQLUSER -Database inventory USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database inventory PASS __SQLPASS__ -#endif -Database inventory KEY sku -Database inventory COLUMN_DEF "sku=char(14) NOT NULL PRIMARY KEY" -Database inventory COLUMN_DEF "quantity=INT" -Database inventory COLUMN_DEF "stock_msg=char(64)" -Database inventory COLUMN_DEF "account=char(128)" -Database inventory COLUMN_DEF "cogs_account=char(128)" -Database inventory NUMERIC quantity diff --git a/dist/barry/mysql/merchandising.mysql b/dist/barry/mysql/merchandising.mysql deleted file mode 100644 index 29b677d47..000000000 --- a/dist/barry/mysql/merchandising.mysql +++ /dev/null @@ -1,12 +0,0 @@ -Database merchandising merchandising.txt __SQLDSN__ -#ifdef SQLUSER -Database merchandising USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database merchandising PASS __SQLPASS__ -#endif -Database merchandising DEFAULT_TYPE text -Database merchandising COLUMN_DEF "sku=char(20) NOT NULL PRIMARY KEY" -Database merchandising COLUMN_DEF "featured=CHAR(32) NOT NULL, index(featured)" -Database merchandising COLUMN_DEF "start=CHAR(24) NOT NULL, index(start)" -Database merchandising COLUMN_DEF "finish=CHAR(24) NOT NULL, index(finish)" diff --git a/dist/barry/mysql/orderline.mysql b/dist/barry/mysql/orderline.mysql deleted file mode 100644 index 4800c49dc..000000000 --- a/dist/barry/mysql/orderline.mysql +++ /dev/null @@ -1,27 +0,0 @@ - -Database orderline orderline.txt __SQLDSN__ -#ifdef SQLUSER -Database orderline USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database orderline PASS __SQLPASS__ -#endif -Database orderline COLUMN_DEF "code=char(14) NOT NULL PRIMARY KEY" -Database orderline COLUMN_DEF "store_id=CHAR(9) DEFAULT '' NOT NULL, index(store_id)" -Database orderline COLUMN_DEF "order_number=CHAR(14) NOT NULL, index(order_number)" -Database orderline COLUMN_DEF "session=CHAR(32) NOT NULL" -Database orderline COLUMN_DEF "username=CHAR(20) default '' NOT NULL" -Database orderline COLUMN_DEF "shipmode=CHAR(32) default '' NOT NULL" -Database orderline COLUMN_DEF "sku=CHAR(14) NOT NULL" -Database orderline COLUMN_DEF "quantity=CHAR(9) NOT NULL" -Database orderline COLUMN_DEF "price=CHAR(12) NOT NULL" -Database orderline COLUMN_DEF "subtotal=CHAR(12) NOT NULL" -Database orderline COLUMN_DEF "shipping=CHAR(12)" -Database orderline COLUMN_DEF "taxable=CHAR(3)" -Database orderline COLUMN_DEF "size=VARCHAR(30)" -Database orderline COLUMN_DEF "color=VARCHAR(30)" -Database orderline COLUMN_DEF "options=VARCHAR(255)" -Database orderline COLUMN_DEF "order_date=varchar(32) NOT NULL" -Database orderline COLUMN_DEF "update_date=timestamp" -Database orderline COLUMN_DEF "status=VARCHAR(32)" -Database orderline COLUMN_DEF "parent=CHAR(9)" diff --git a/dist/barry/mysql/pricing.mysql b/dist/barry/mysql/pricing.mysql deleted file mode 100644 index 2b9d9cfb0..000000000 --- a/dist/barry/mysql/pricing.mysql +++ /dev/null @@ -1,19 +0,0 @@ -# Interchange database definition -Database pricing pricing.txt __SQLDSN__ -#ifdef SQLUSER -Database pricing USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database pricing PASS __SQLPASS__ -#endif -Database pricing KEY sku -Database pricing COLUMN_DEF "q2=char(12)" -Database pricing COLUMN_DEF "price_group=CHAR(2) DEFAULT '' NOT NULL, index(price_group)" -Database pricing COLUMN_DEF "sku=CHAR(9) NOT NULL PRIMARY KEY" -Database pricing COLUMN_DEF "q5=CHAR(12)" -Database pricing COLUMN_DEF "q10=CHAR(12)" -Database pricing COLUMN_DEF "q25=CHAR(12)" -Database pricing COLUMN_DEF "q100=CHAR(12)" -Database pricing COLUMN_DEF "XL=CHAR(12)" -Database pricing COLUMN_DEF "S=CHAR(12)" -Database pricing COLUMN_DEF "red=CHAR(12)" diff --git a/dist/barry/mysql/products.mysql b/dist/barry/mysql/products.mysql deleted file mode 100644 index a78dbd161..000000000 --- a/dist/barry/mysql/products.mysql +++ /dev/null @@ -1,26 +0,0 @@ -# Interchange database definition -Database products products.txt __SQLDSN__ -#ifdef SQLUSER -Database products USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database products PASS __SQLPASS__ -#endif -Database products KEY sku -Database products AUTO_NUMBER P00000 -Database products COLUMN_DEF "sku=char(14) NOT NULL PRIMARY KEY" -Database products COLUMN_DEF "description=VARCHAR(128) NOT NULL" -Database products COLUMN_DEF "title=VARCHAR(128) DEFAULT '' NOT NULL, index(title)" -Database products COLUMN_DEF "artist=VARCHAR(128) DEFAULT '' NOT NULL, index(artist)" -Database products COLUMN_DEF "comment=TEXT" -Database products COLUMN_DEF "display=VARCHAR(128)" -Database products COLUMN_DEF "image=VARCHAR(64)" -Database products COLUMN_DEF "price=DECIMAL(12,2) NOT NULL, index(price)" -Database products COLUMN_DEF "category=VARCHAR(64) NOT NULL, index(category)" -Database products COLUMN_DEF "nontaxable=CHAR(3)" -Database products COLUMN_DEF "weight=VARCHAR(12) DEFAULT '0' NOT NULL" -Database products COLUMN_DEF "size=VARCHAR(96)" -Database products COLUMN_DEF "color=VARCHAR(96)" -Database products COLUMN_DEF "related=text" -Database products COLUMN_DEF "featured=VARCHAR(32)" -Database products NUMERIC price diff --git a/dist/barry/mysql/transactions.mysql b/dist/barry/mysql/transactions.mysql deleted file mode 100644 index d458d4a4c..000000000 --- a/dist/barry/mysql/transactions.mysql +++ /dev/null @@ -1,54 +0,0 @@ -Database transactions transactions.txt __SQLDSN__ -#ifdef SQLUSER -Database transactions USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database transactions PASS __SQLPASS__ -#endif -Database transactions transactions.raw SQL -Database transactions COLUMN_DEF "code=char(14) NOT NULL PRIMARY KEY" -Database transactions COLUMN_DEF "store_id=CHAR(9) DEFAULT '' NOT NULL, index(store_id)" -Database transactions COLUMN_DEF "order_number=CHAR(14) NOT NULL, index(order_number)" -Database transactions COLUMN_DEF "session=CHAR(32) NOT NULL" -Database transactions COLUMN_DEF "username=CHAR(20) default '' NOT NULL" -Database transactions COLUMN_DEF "shipmode=CHAR(32) NOT NULL" -Database transactions COLUMN_DEF "nitems=CHAR(9) NOT NULL" -Database transactions COLUMN_DEF "subtotal=CHAR(12) NOT NULL" -Database transactions COLUMN_DEF "shipping=CHAR(12) NOT NULL" -Database transactions COLUMN_DEF "handling=CHAR(12)" -Database transactions COLUMN_DEF "salestax=CHAR(12)" -Database transactions COLUMN_DEF "total_cost=CHAR(16) NOT NULL" -Database transactions COLUMN_DEF "fname=VARCHAR(30)" -Database transactions COLUMN_DEF "lname=VARCHAR(30)" -Database transactions COLUMN_DEF "company=VARCHAR(30)" -Database transactions COLUMN_DEF "address1=VARCHAR(30)" -Database transactions COLUMN_DEF "address2=VARCHAR(30)" -Database transactions COLUMN_DEF "city=VARCHAR(30) NOT NULL" -Database transactions COLUMN_DEF "state=VARCHAR(10)" -Database transactions COLUMN_DEF "zip=CHAR(10) DEFAULT '00000' NOT NULL" -Database transactions COLUMN_DEF "country=CHAR(10) DEFAULT '' NOT NULL" -Database transactions COLUMN_DEF "phone_day=VARCHAR(20)" -Database transactions COLUMN_DEF "phone_night=VARCHAR(20)" -Database transactions COLUMN_DEF "fax=VARCHAR(20)" -Database transactions COLUMN_DEF "email=VARCHAR(42)" -Database transactions COLUMN_DEF "b_fname=VARCHAR(30)" -Database transactions COLUMN_DEF "b_lname=VARCHAR(30)" -Database transactions COLUMN_DEF "b_company=VARCHAR(30)" -Database transactions COLUMN_DEF "b_address1=VARCHAR(30)" -Database transactions COLUMN_DEF "b_address2=VARCHAR(30)" -Database transactions COLUMN_DEF "b_city=VARCHAR(30)" -Database transactions COLUMN_DEF "b_state=VARCHAR(10)" -Database transactions COLUMN_DEF "b_zip=CHAR(10) DEFAULT '00000' NOT NULL" -Database transactions COLUMN_DEF "b_country=CHAR(10) DEFAULT '' NOT NULL" -Database transactions COLUMN_DEF "b_phone=VARCHAR(20)" -Database transactions COLUMN_DEF "payment_method=varchar(32)" -Database transactions COLUMN_DEF "avs=varchar(32)" -Database transactions COLUMN_DEF "order_id=varchar(32)" -Database transactions COLUMN_DEF "order_date=varchar(32) NOT NULL" -Database transactions COLUMN_DEF "update_date=timestamp" -Database transactions COLUMN_DEF "status=VARCHAR(32)" -Database transactions COLUMN_DEF "parent=CHAR(9)" -Database transactions COLUMN_DEF "archived=CHAR(1)" -Database transactions COLUMN_DEF "deleted=CHAR(1) DEFAULT ''" -Database transactions COLUMN_DEF "complete=CHAR(1)" -Database transactions COLUMN_DEF "comments=text" diff --git a/dist/barry/mysql/userdb.mysql b/dist/barry/mysql/userdb.mysql deleted file mode 100644 index d949c6b4c..000000000 --- a/dist/barry/mysql/userdb.mysql +++ /dev/null @@ -1,56 +0,0 @@ -Database userdb userdb.txt __SQLDSN__ -#ifdef SQLUSER -Database userdb USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database userdb PASS __SQLPASS__ -#endif -Database userdb COLUMN_DEF "code=char(20) NOT NULL PRIMARY KEY" -Database userdb COLUMN_DEF "password=CHAR(20) NOT NULL" -Database userdb COLUMN_DEF "acl=text" -Database userdb COLUMN_DEF "mod_time=timestamp" -Database userdb COLUMN_DEF "s_nickname=text" -Database userdb COLUMN_DEF "company=CHAR(30)" -Database userdb COLUMN_DEF "fname=CHAR(20)" -Database userdb COLUMN_DEF "lname=CHAR(30)" -Database userdb COLUMN_DEF "address1=CHAR(64)" -Database userdb COLUMN_DEF "address2=CHAR(64)" -Database userdb COLUMN_DEF "address3=CHAR(64)" -Database userdb COLUMN_DEF "city=CHAR(30)" -Database userdb COLUMN_DEF "state=CHAR(10)" -Database userdb COLUMN_DEF "zip=CHAR(10)" -Database userdb COLUMN_DEF "country=CHAR(10)" -Database userdb COLUMN_DEF "phone_day=CHAR(20)" -Database userdb COLUMN_DEF "mv_shipmode=CHAR(64)" -Database userdb COLUMN_DEF "b_nickname=text" -Database userdb COLUMN_DEF "b_fname=CHAR(20)" -Database userdb COLUMN_DEF "b_lname=CHAR(30)" -Database userdb COLUMN_DEF "b_address1=CHAR(64)" -Database userdb COLUMN_DEF "b_address2=CHAR(64)" -Database userdb COLUMN_DEF "b_address3=CHAR(64)" -Database userdb COLUMN_DEF "b_city=CHAR(30)" -Database userdb COLUMN_DEF "b_state=CHAR(10)" -Database userdb COLUMN_DEF "b_zip=CHAR(10)" -Database userdb COLUMN_DEF "b_country=CHAR(10)" -Database userdb COLUMN_DEF "b_phone=CHAR(20)" -Database userdb COLUMN_DEF "mv_credit_card_type=CHAR(16)" -Database userdb COLUMN_DEF "mv_credit_card_exp_month=CHAR(2)" -Database userdb COLUMN_DEF "mv_credit_card_exp_year=CHAR(4)" -Database userdb COLUMN_DEF "p_nickname=text" -Database userdb COLUMN_DEF "email=VARCHAR(42)" -Database userdb COLUMN_DEF "fax=CHAR(20)" -Database userdb COLUMN_DEF "phone_night=CHAR(20)" -Database userdb COLUMN_DEF "fax_order=CHAR(2)" -Database userdb COLUMN_DEF "address_book=BLOB" -Database userdb COLUMN_DEF "accounts=BLOB" -Database userdb COLUMN_DEF "preferences=BLOB" -Database userdb COLUMN_DEF "carts=BLOB" -Database userdb COLUMN_DEF "owner=char(20)" -Database userdb COLUMN_DEF "file_acl=BLOB" -Database userdb COLUMN_DEF "db_acl=BLOB" -Database userdb COLUMN_DEF "order_numbers=TEXT" -Database userdb COLUMN_DEF "email_copy=char(1)" -Database userdb COLUMN_DEF "mail_list=varchar(64)" -Database userdb COLUMN_DEF "project_id=char(20)" -Database userdb COLUMN_DEF "account_id=char(20)" -Database userdb COLUMN_DEF "order_dest=char(32)" diff --git a/dist/barry/orders/.empty b/dist/barry/orders/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/barry/orders/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/barry/pages/about.html b/dist/barry/pages/about.html deleted file mode 100644 index 919af1ff9..000000000 --- a/dist/barry/pages/about.html +++ /dev/null @@ -1,35 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, RIGHTSIDE, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top area only. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]About Barry's Books[/set] -[set page_title][set] -[set members_only][set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -  -

-

-__MVC_COMPANY__ is your source for all the most -important things you buy everyday. -

-We have the internet's most unique return policy. Since this is a totally fake -store, you can't buy anything here. So if you place an order you won't get -anything. Return any item you don't receive for a full refund. We'll never -take any of your money anyway, but if we did, we'd give it right back. -

- - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/account.html b/dist/barry/pages/account.html deleted file mode 100644 index 39d563e6c..000000000 --- a/dist/barry/pages/account.html +++ /dev/null @@ -1,402 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, NO_LEFT, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Maintain your account[/set] -[set members_only]1[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - - -[title-bar color="__BARBG__"]Account Maintenance -[/title-bar] - - -Change password  Mail preferences  Shipping preferences  Billing preferences
- -[userdb function=get_billing_names] -[userdb function=get_shipping_names] - -
- -
- - -[if type=explicit compare="[error all=1 show_var=1 keep=1]"] -

-There were errors in your last submission. -They are shown in __CONTRAST__ below. -

-[/if] - -[comment] - -[/comment] - - - - - -[set Save_database] -[userdb save] -[/set] -[title-bar 500 4]Shipping Address Book[/title-bar] - - -
- - - - Yes, delete -
- - -[title-bar 500 4]Shipping Address[/title-bar] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- [error name=fname std_label="First Name" required=1] - - [error name=lname std_label=Last required=1]  -
[error name=address1 std_label=Address required=1] - -
  - -
- [error name=city std_label="City" required=1] - - -
- [error name=state std_label="State/Province" required=1] - - -
- [error name=zip std_label="Zip/Postal Code" required=1] - - -
[error name=email std_label="Email Address" required=1] - -
- Country - - [if value country =~ /(^$|US|CA)/] - - [else] - - [/else] - [/if] (will update display) -
[error name=phone_day std_label="Daytime Phone" required=1] - - - - - - -
- - - Evening - - -
-
- Shipping method - - -
- We need the bold fields to process your order -
- -[title-bar 500 3] - - - [if items] - [set Save, go to checkout] - mv_nextpage=__ORDER_STYLE__/checkout - [/set] - - No change, go to checkout - [/if] - -[/title-bar] - - -Change password  Mail preferences  Shipping preferences  Billing preferences
-[title-bar 500 4]Mailing status[/title-bar] - - Send an email copy of my receipt
- - - Put me on your email list of infrequent offers -

- - -Change password  Mail preferences  Shipping preferences  Billing preferences
-[title-bar 500 4]Billing Address Book[/title-bar] - - - -
- - - - Yes, delete -
-[title-bar 500 4]Billing Address (if different)[/title-bar] - - - - - - - - - - - - - - - - - - - - - - -
Name - - -
Address - - -
City/ST/Zip - - - -
Country - -
- Payment method - - - Pay by credit card
- - I will call with payment information
-
- -[title-bar 500 3] - - - [if items] - [set Save, go to checkout] - mv_nextpage=__ORDER_STYLE__/checkout - [/set] - - No change, go to checkout - [/if] - -[/title-bar] - -

-
- - - - - - - - - - -
- [title-bar 200 2]Change your password[/title-bar] - - [title-bar 200 2]Order Tracking[/title-bar] -
-
- - - - - - - - - - - - - - - - - - - - -
Old password -
New password -
Verify -

-
- - - Save username/password (sets cookie) -
- [page no_cookie]Stop logging me in automatically[/page] -
-
-
-
- Check cart ([nitems] items)
- [if items] - Check out
- [/if] - Check status of placed orders
-
    - [loop list="[data table=userdb col=order_numbers key='[data session username]']"] - [if-loop-data transactions order_number] -
  • #[loop-code] - [/if-loop-data] - [/loop] -
-
-
- -Change password  Mail preferences  Shipping preferences  Billing preferences
- -
- -[set Save shipping] -[value name=s_nickname set="[cgi s_nickname]" filter="nullselect no_white" hide=1] -[userdb function=set_shipping] -[/set] - -[set Recall shipping] -[value name=s_nickname set="[cgi s_nickname]" filter="nullselect no_white" hide=1] -[userdb function=get_shipping] -[/set] - -[set DELETE shipping] -[if cgi verify] -[value name=s_nickname set="[cgi s_nickname]" filter="nullselect no_white" hide=1] -[userdb function=delete_shipping] -[/if] -[/set] - -[set Save billing] -[value name=b_nickname set="[cgi b_nickname]" filter="nullselect no_white" hide=1] -[userdb function=set_billing] -[/set] - -[set Recall billing] -[value name=b_nickname set="[cgi b_nickname]" filter="nullselect no_white" hide=1] -[userdb function=get_billing] -[/set] - -[set DELETE billing] -[if cgi verify] -[value name=b_nickname set="[cgi b_nickname]" filter="nullselect no_white" hide=1] -[userdb function=delete_billing] -[/if] -[/set] - - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/pages/action/get_password.html b/dist/barry/pages/action/get_password.html deleted file mode 100644 index 6da911d4b..000000000 --- a/dist/barry/pages/action/get_password.html +++ /dev/null @@ -1,88 +0,0 @@ -[set page_title]Trying to retrieve....[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ -

Trying to retrieve....

-[perl] - $CGI->{mv_todo} = 'search'; - $Config->{NoSearch} = ''; -[/perl] -[update process] -[search-region] -[set get_id_matches][search-list][if-item-data userdb email][item-code][/if-item-data][/search-list][/set] -[no-match] -

Sorry, no match for that. Try again?

-[include forms/get_id] -[/no-match] -[/search-region] - -[perl] - $Config->{NoSearch} = 'userdb'; - return; -[/perl] - -[if value mv_search_match_count > 1] -

That one generated more than one match. [page login]Try again[/page] with more info?

-[elsif scratch get_id_matches] -[set name=id_ok][/set] -[set name=id_ok interpolate=1][loop arg="[scratch get_id_matches]"][email - to="[loop-data userdb email]" - subject="Your login information" - from="__COMPANY__ password minder <__ORDERS_TO__>" - reply="__ORDERS_TO__"] - -Hello! You requested that your ID and password be sent to your -email address of record. The information is: - - Username: [loop-code] - Password: [loop-data userdb password] - -You can log in at: - - [area login] - -Please contact us if we can be of service, and thank you for doing -business with us. -[/email][/loop][/set] -[if !scratch id_ok] -Something went wrong when mailing, perhaps a typo in your email address? Please -either [page new_account]create a new account[/page] or [page contact]contact us.[/page]. -[else] -

ID sent by fastest available email method!

-[/else] -[/if] - -

-[if session failure] -[data session failure] -[/if] -

-

- - - - - UserName:
-
- Password:

-
- -
- -
- -
- - Create a new account

-[/elsif] -[elsif value mv_search_match_count] -We appear to have found you, but you didn't leave an email address!

-Please either [page new_account]create a new account[/page] or [page -contact]contact us.[/page]. -[/elsif] -[/if] - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/pages/browse.html b/dist/barry/pages/browse.html deleted file mode 100644 index 6d162cb9d..000000000 --- a/dist/barry/pages/browse.html +++ /dev/null @@ -1,119 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, RIGHTSIDE, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Browse the Art Store[/set] - -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -[tag flag build] -[comment] - - This page just uses an in page search (the [loop search=...]) - to return all products from the database. The parameter - "ra=yes" sets the Interchange search variable mv_return_all to "yes", - meaning just start returning records from the file. - - If there are more than 50 then it will be truncated because of - the mv_matchlimit default of 100. If you wanted to return up - to 100 then you would set the search setting to "ra=yes/ml=100". - - See the browse1.html page for a page that returns 1 or more - at a time with paging. - -[/comment] - -

- [L]Browse[/L] [page browse1 1:1]one - or [page browse1 1:2]two at a time
-
- - - -[loop search="ra=yes/tf=category/tf=title"] -[comment] - The [loop-next] simply skips a product if it is in the - category "Accessory". The [calc] tag is a little embedded - Perl. -[/comment] -[loop-next][calc]'[loop-field category]' eq 'Accessory'[/calc][/loop-next] - -[comment] - [loop-change] is a way of setting up headers. You place a possibly - changing value in the [condition] container, and when the value - changes the contents of the [loop-change] container are output. - There can also be an [else] [/else] area. -[/comment] - - -[loop-change 1][condition][loop-field category][/condition] - - - - -[/loop-change 1] - - - - - - - - - - -[/loop] -
[data table=cat col=banner_text key="[loop-field category]"]
- - - - - - - - - - - - - - - - - - - - - - - -
[if-loop-field image][loop-field name][/if-loop-field][loop-field name]
-by [filter namecase][loop-field who_by]

-Price: [loop-price]   buy now

-[loop-field comments]

-More [filter lower][loop-field category][/filter]...
-
- -

- - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/browse1.html b/dist/barry/pages/browse1.html deleted file mode 100644 index a8f2ee3f9..000000000 --- a/dist/barry/pages/browse1.html +++ /dev/null @@ -1,157 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Browse __COMPANY__[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - - -[comment] - This embedded Perl reads the argument passed to it, which - should be two colon-separated numbers. The first is the sequential - number where display should start; the second (optional) number - is the "chunk" size, or number of products to display per - page. Uncomment these links to play: - - Start at 2, display 5 - Start at 3, display 2 -[/comment] -[perl] - $start = $Session->{arg} || 1; - $chunk = 1; - if($start =~ /(\d+):(\d*)/) { - $start = $1; - $chunk = $2 || 1; - } - $prev = $start - $chunk; - if($prev < 1) { - $prev = 0; - } - $Scratch->{start} = $start; - $Scratch->{chunk} = $chunk; - $Scratch->{next} = $start + $chunk; - $Scratch->{prev} = $prev; - $Scratch->{not_shown} = 1; - return; -[/perl] - - -[comment] - -The below is an extended Interchange in-page search. - -The [search-region] container will interpret several -things: - - [search-list] - What should display if anything is found - [/search-list] - - [no-match] - What should display if nothing is found - [/no-match] - - [more-list] - To be displayed if more than mv_matchlimit - matches are found. The [more] tag shows - the previous/next and/or pages. - [/more-list] - -[/comment] - - - -[search-region arg=" - co=yes - sf=category - op=ne - se=Accessory - fm=[scratch start] - ml=[scratch chunk] - tf=category - to=f - tf=price - to=rn - "] -[item-change 1][condition][item-field category][/condition] - - - - -[/item-change 1] - - - - - - - - - - -[/search-region] - - - - -
[data table=cat col=banner_text key="[item-field category]"]
- - - - - - - - - - - - - - - - - - - - - - - -
[if-item-field image][item-field who_by]: [item-field name][/if-item-field][item-field name]
-by [filter namecase][item-field who_by]

-Price: [item-price]   buy now

-[item-field comments]

-More [filter lower][item-field category][/filter]...
-
-[if scratch prev] -[page href=browse1 arg="[scratch prev]:[scratch chunk]"] - Previous   -[/if] -[if type=explicit compare="[value mv_search_match_count] > [scratch next]"] -[page href=browse1 arg="[scratch next]:[scratch chunk]"][L]Next[/L] -[/if] -
-
- - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/canceled.html b/dist/barry/pages/canceled.html deleted file mode 100644 index d4f238fee..000000000 --- a/dist/barry/pages/canceled.html +++ /dev/null @@ -1,55 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Stop shopping[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -

-

[L]Stop shopping[/L]

-
- -
- - - - -
[L]If you click Remove Contents[/L], -[L]only the items you have placed in your basket will be removed.[/L] - -

-[L]If you click Erase All Information[/L], -[L]your name, address, and credit card information will be removed from our system. You will have to enter it again to buy anything.[/L] - -

-[L]If you wish to do neither, just use the buttonbar or your browser's Back function to return to shopping.[/L] -[item-list] - -[/item-list] - -

- - - - -
-
-
-[set [L]Erase All Information[/L]] -mv_todo=cancel -[/set] - - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/contact.html b/dist/barry/pages/contact.html deleted file mode 100644 index 6bb6099f6..000000000 --- a/dist/barry/pages/contact.html +++ /dev/null @@ -1,42 +0,0 @@ -[comment] -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, RIGHTSIDE, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top/left/right areas. -ui_control_description: members_only : Members only -ui_control_description: page_title : Page title -ui_control_element: members_only : 0=No,1=Yes -ui_control_element: page_title : -ui_template: Yes -ui_template_name: standard -[/comment] - -[set members_only]0[/set] -[set page_title]Send us feedback[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - - -

-Since we aren't a real store, we'll provide a totally fake address and phone number. However, our email address is real. Email here if you'd like to ask any questions about Interchange. -

-__COMPANY__ -

-__ADDRESS__
-__CITY__

-[if variable TOLLFREE] -__TOLLFREE__
-[/if] -__PHONE__
-[if variable FAX] -FAX __FAX__ -[/if] - - - - - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ \ No newline at end of file diff --git a/dist/barry/pages/deliver.html b/dist/barry/pages/deliver.html deleted file mode 100644 index 35599ca01..000000000 --- a/dist/barry/pages/deliver.html +++ /dev/null @@ -1,34 +0,0 @@ -[seti authorized] -[userdb - function=check_file_acl - location="[scratch deliverable]" - mode=expire -][/seti][perl products] - my $auth = $Scratch->{authorized}; - if($auth !~ /1/) { - Log("Not authorized for $Scratch->{deliverable}, 403"); - $Document->header('Status: 403 Not authorized'); - $Document->hot(1); - $Document->write(<{deliverable}. Buy it first, please. -EOF - return; - } - my $type = tag_data('products', 'dl_type', $Scratch->{deliverable}); - my $location = tag_data('products', 'dl_location', $Scratch->{deliverable}); - my $content = $Tag->file($location); - my $len = length($content); - if(! $len) { - Log("Not found: $Scratch->{deliverable} type=$type at $location, 404"); - $Document->header('Status: 404 not found'); - $Document->hot(1); - $Document->write(<{deliverable} not found. -EOF - return; - } - $Document->header("Content-Type: $type\nContent-Length: $len"); - $Document->hot(1); - $Document->write($content); - return; -[/perl] diff --git a/dist/barry/pages/examples/test_banner.html b/dist/barry/pages/examples/test_banner.html deleted file mode 100644 index b965b2df5..000000000 --- a/dist/barry/pages/examples/test_banner.html +++ /dev/null @@ -1,12 +0,0 @@ -[comment] - Displays several examples of banners, with rotation and weighting. - Modify the 'banner' database to see changes in pattern. -[/comment] -

-W   [banner weighted=1]
-C   [banner]
-C   Renaissance: [banner category=Renaissance]
-C   Americana: [banner category=Americana]
-W,C Renaissance: [banner weighted=1 category=Renaissance]
-W,C Americana: [banner weighted=1 category=Americana]
-
diff --git a/dist/barry/pages/flypage.html b/dist/barry/pages/flypage.html deleted file mode 100644 index d93562e03..000000000 --- a/dist/barry/pages/flypage.html +++ /dev/null @@ -1,143 +0,0 @@ -[comment] -ui_template_description: Page with top/left/right areas. -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, RIGHTSIDE, MENUBOTTOM, COPYRIGHT -ui_control_description: members_only : Members only -ui_control_description: page_title : Page title -ui_control_element: members_only : 0=No,1=Yes -ui_control_element: page_title : -ui_template: Yes -ui_template_name: standard -[/comment] - -[flag type=build] -[set members_only]0[/set] -[set page_title][item-description][/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - - -
-[comment] - This the special "flypage". When a page is called that - corresponds to a part number in the database, and that - page doesn't exist, this page is used to display it. - - Everywhere you see [item-code] the part number will - be displayed. - - [item-field name] displays the name field in the - products database. [item-data products name] is the - same in this case, but if the products database contained - more than one table (with ProductFiles) then [item-field name] - could come from another table. -[/comment] -[comment] - This next is a MiniVend UserTag -- if you see it in the page, then - you don't have it defined in catalog.cfg. -[/comment] -[if-item-field size] -
- - -[/if-item-field] -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - -
[title-bar 300 4][item-description][/title-bar]

- [if-item-field size] - - [else] - [order [item-code]] - [/else] - [/if-item-field] -

[item-description]
-
-
-
-


-
- -
[item-price]
-
- -
-
- - [item-field comment] - [if-item-data merchandising others_bought] - [perl tables=products] - my $hash = [item-data merchandising others_bought]; - my @ary = sort { $hash->{$b} <=> $hash->{$a} } keys %$hash; - return '' unless @ary; - my %in_basket; - splice(@ary, 3); - for(@{$Carts->{main}}) { - $in_basket{$_->{code}} = 1; - } - @ary = grep ! $in_basket{$_}, @ary; - return '' unless @ary; - my $out = <<'EOF'; -
- - -
Customers who bought this item also bought:
-EOF - for(@ary) { - my $desc = tag_data( 'products', 'description', $_); - $out .= <$desc
-EOF - } - return $out . '
'; - [/perl] - [/if-item-data] -
-[if-item-field size] -

[item-accessories size] [item-accessories color]

-[else] -[/else] -[/if-item-field] -
-
-[if-item-field size] -
-[/if-item-field] -
-
- - - - - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/help.html b/dist/barry/pages/help.html deleted file mode 100644 index 2cab6087b..000000000 --- a/dist/barry/pages/help.html +++ /dev/null @@ -1,54 +0,0 @@ -[comment] -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, RIGHTSIDE, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top/left/right areas. -ui_control_description: members_only : Members only -ui_control_description: page_title : Page title -ui_control_element: members_only : 0=No,1=Yes -ui_control_element: page_title : -ui_template: Yes -ui_template_name: standard -[/comment] - -[set members_only]0[/set] -[set page_title]Help[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - - -
- - -

- - -If this were a real store, this is where we would attempt to place idiot-proof -instructions regarding the use of our site. This wouldn't be due to any -personal interest in you as a customer, but rather as a way of saving -us money. Hey! If you can figure it out, you don't have to call us, right? -

-If this were a real store, that is. But since it's just a demo store, we -can put some sort of syrupy message that will probably not be helpful, but -will leave you feeling warm and fuzzy. - -

- - - - - - - -
- -

- - - - - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/index.html b/dist/barry/pages/index.html deleted file mode 100644 index d3e0407bc..000000000 --- a/dist/barry/pages/index.html +++ /dev/null @@ -1,118 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, RIGHTSIDE, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: timed_build : 0=No,1=Yes -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -ui_control_description: timed_build : Build page static -ui_control_yes: timed_build : -[/comment] -[flag type=build] -[set page_title]__COMPANY__: Home page[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -




- -

- - - - - - __COMPANY__ is the premier destination on - the web for the products you use everyday. Our priorities are: to - provide the best service possible, to consistently offer the lowest - prices, and to always make you 100% satisfied. - -

- - We stand behind the quality of our products, because we only sell the - best. Well, some of the books we sell aren't that great, now that you - mention it. But it's not really our place to tell you what you should - and shouldn't be reading, now is it? - -

- - If you have any questions or problems with our site or your order, or - you 'd just like to place your order over the phone, call our 24 hour - hotline. Email inquiries are always answered within 30 minutes during - business hours. -

-
-[loop random=1 - search=' - st=db - co=yes - sf=featured - se=bookpick - '] - - - - - - - - - - - - - - - - - - - - - - - - -
- -
- - - - - -
   - -
- - -
- -
- - [loop-data merchandising blurb_begin] -

- - [order [loop-code]] -
-
- - - [loop-data merchandising blurb_end] -

-
- -
-[/loop] -











- -
- - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/last_search.html b/dist/barry/pages/last_search.html deleted file mode 100644 index b92bf076a..000000000 --- a/dist/barry/pages/last_search.html +++ /dev/null @@ -1,14 +0,0 @@ -[if session last_search] - [set name=arg interpolate=1][data session last_search][/set] -[else] - [set name=arg]/[/set] -[/else] -[/if] -[tag op=header interpolate=1] -Status: 302 moved -Location: [area href="[scratch arg]"] -[/tag][comment] - This page redirects the user to the last search - that was saved. If no search is present, then - they will go to the index page. -[/comment] diff --git a/dist/barry/pages/login.html b/dist/barry/pages/login.html deleted file mode 100644 index 85c938e73..000000000 --- a/dist/barry/pages/login.html +++ /dev/null @@ -1,120 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftright -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, RIGHTSIDE, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top/left/right areas. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Log in[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -

- - -
- Log in -
- -
-[if session failure] -

-[data session failure] -

-[/if] -If you have an account with us, please enter your user name and password. (test/test for testing) -

-

-
- - - - - - - - - - - - - -
Username -
Password -    -
  Log me in automatically
- -
-

-

Create a new account
-

-
- - - - - - - - - - - - - - - - - - -
- Lost your customer ID? -
-
- Just complete enough to ensure one match. -
- - - - - - - - - - - - - - - - - - - - - - - -
- First Name -
- Last Name -
- Email -
- Zip Code -
 
-
-
-
- - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/logout.html b/dist/barry/pages/logout.html deleted file mode 100644 index 453070984..000000000 --- a/dist/barry/pages/logout.html +++ /dev/null @@ -1,33 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Nuke the cookies[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -[set name=done int][userdb function=logout clear=1][/set] -[if scratch done] - -

Bye Bye!

-Thanks for stopping in! - -[else] -

OOPS!

-You refuse to be logged out. -[/else] -[/if] - - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/multi/b_address.html b/dist/barry/pages/multi/b_address.html deleted file mode 100644 index 4e9fc85ba..000000000 --- a/dist/barry/pages/multi/b_address.html +++ /dev/null @@ -1,73 +0,0 @@ -[set page_title]Enter Billing Address[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - -
-Billing Address (if different) -
- -
- - - - - - - - - - - - - - - - - - - -
Name - - -
Address - - -
City, State, Postal Code - - - -
Country - -
- -[if session logged_in] - -   - - - If you want to save this address in your address book, - [if value address_book]or recall a saved address,[/if] - click the button below.
- - -
- - -[/if] - -[if value mv_shipmode] - Use shipping mode [shipping-desc] ([shipping]) - Change shipping -[else] - Select shipping -[/else] -[/if] -

- -

- -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/pages/multi/basket.html b/dist/barry/pages/multi/basket.html deleted file mode 100644 index f5b896687..000000000 --- a/dist/barry/pages/multi/basket.html +++ /dev/null @@ -1,269 +0,0 @@ -[set page_title]Shopping Cart Contents[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTONLY__ -[if type=explicit compare="q{[read-cookie MV_SESSION_ID]}"] -[elsif scratch tried] -You must have cookies set to leave the basket. Check out now or forever -lose your shopping cart. -[/elsif] -[else] -[set tried]1[/set] -[bounce href="[area multi/basket]"] -[/else] -[/if] -
- - - - - -[comment] - This next is a Interchange UserTag -- if you see it in the page, then - you don't have it defined in catalog.cfg. -[/comment] - -[table-font FACE="verdana,arial, helvetica" size="2"] - - - - - - - - - - - - - - - - - - - - - -[if items] -[then] -[item-list] - - - - - - - - - - -[/item-list] -[/then] -[else] - -[/else] -[/if] - - - - - - - - -
Shopping Cart Contents
-

SKU

-
  -

Description

-
-

Quantity

-
-

Price

-
  -

Extension

-
- [item-code]
remove
  - [page [item-code]][item-description] - [if-item-data pricing sku] -
[page quantity [item-code]] - QUANTITY PRICING - - [/if-item-data] - [if-item-field weight]
- WEIGHT: [summary amount=`[item-quantity] * [item-field weight]`] - [/if-item-field] -
- [if-item-field related] - [if !ordered [item-field related]] - - [loop arg="[item-field related]"] - [loop-change 1][condition]1[/condition] - - - [/loop-change 1] - [if !ordered [loop-code]] - - - - - [/if] - [/loop] -
Other items you may like:
[loop-field title]
- [/if] - [/if-item-field][item-accessories size][item-accessories color] -
- - - - [discount-price] - [if discount [item-code]] -
Item is discounted - [item-discount] - - [/if] -
  - [item-subtotal] -
-

No items at the moment.

-
-[summary format="Shipping weight: %s" total=1]       Subtotal [subtotal]
- - - - [if session logged_in] - [and !value show_saved] -
Show saved carts - [/if] -
-
-
- -[if session logged_in] -[and value show_saved] -[userdb function=get_cart_names hide=1] -

-

- - - - - - - - - - - - - - - - - -[set Save to new cart] -[value name=c_nickname set="[value c_nickname0]"] -[userdb function=set_cart nickname="[value name=c_nickname filter='nullselect no_white']"] -[/set] - -[set Save to existing cart] -[userdb function=set_cart nickname="[value c_nickname]"] -[/set] - -[set Recall cart(s)] -[userdb function=get_cart nickname="[value c_nickname]"] -[/set] - -[set DELETE cart] -[if value c_delete] -[value name=c_delete set=""] -[userdb function=delete_cart nickname="[value c_nickname]"] -[else] -[set c_delete_message]Must click the checkbox.[/set] -[/else] -[/if] -[/set] - - -
Cart Storage Area
-

New Cart Name

-
-

Existing Cart Name

-
-

Confirm

-
-   - - - - Yes, delete - [scratch c_delete_message] - [set c_delete_message][/set] -
- - - - -
Hide saved carts -
-
-[/if] -[/table-font] - -[set Continue shopping] -[bounce href='[history-scan exclude="^/ord|^/multi/|^/process" default=browse]'] -mv_nextpage=nothing -[/set] - -[set Stop shopping] -mv_todo=return -mv_nextpage=canceled -[/set] - -[set Check out] -mv_todo=return -mv_nextpage=multi/checkout -[/set] - -
-__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/pages/multi/checkout.html b/dist/barry/pages/multi/checkout.html deleted file mode 100644 index a80b6a4d8..000000000 --- a/dist/barry/pages/multi/checkout.html +++ /dev/null @@ -1,216 +0,0 @@ -[set name=page_title interpolate=1]Check out with [nitems] items in basket[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - -[if !session logged_in] - - -
- Create a new account -
-

-
-It is not required, but if you frequently do business with us you can -create a new account. -

-Or if you already have an account, you can log in. -

-[/if] - -

- - - - - -[if type=explicit compare="[error all=1 show_var=1 keep=1]"] -

-There were errors in your last submission. -They are shown in __CONTRAST__ below. -

-[/if] - -
-Shipping Address -[if !items] -

-(no items ordered) -[/if] -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[if session logged_in] - - - - -[/if] -
- [error name=fname std_label="First Name" required=1] - - [error name=lname std_label=Last required=1]  -
[error name=address1 std_label=Address required=1] - -
  - -
- [error name=city std_label="City" required=1] - - - - - - - - - -
- - - [error name=state std_label="State/Province" required=1] - - - - [error name=zip std_label="Zip/Postal Code" required=1] - - -
-
[error name=email std_label="Email Address" required=1] - -
- Country - - [if value country =~ /(^$|US|CA)/] - - [else] - - [/else] - [/if] (will update display) -
[error name=phone_day std_label="Daytime Phone" required=1] - - - - - - -
- - - Evening - - -
-
- We need the bold fields to process your order -
  - [set Go to address book] - mv_todo=refresh - mv_nextpage=account - [/set] - - [set Save_database] - [userdb save] - [/set] - - - If you want to save this address in your address book, - [if value address_book]or recall a saved address,[/if] - click the button below.
- - -
-
-[set scrub_bill] -b_lname= -b_fname= -b_address1= -b_address2= -b_city= -b_state= -b_zip= -b_country= -mv_nextpage=multi/shipping -[/set] -[set xfer_bill] -[perl] - for ( qw/ lname fname address1 address2 city state zip country /) { - $Values->{"b_$_"} = $Values->{$_} - if ! $Values->{"b_$_"}; - } - return; -[/perl] -mv_nextpage=multi/b_address -[/set] -[if value b_address1] - - Billing same as shipping    - - Separate billing address -[else] - - Billing same as shipping - - Separate billing address -[/else] -[/if] -

- -

- -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/barry/pages/multi/final.html b/dist/barry/pages/multi/final.html deleted file mode 100644 index 877b76578..000000000 --- a/dist/barry/pages/multi/final.html +++ /dev/null @@ -1,232 +0,0 @@ -[set name=page_title interpolate=1]Check out with [nitems] items in basket[/set] - -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - -
-
- - - - - -[if items] -[then] - - - -[item-list] - - - - - - -[/item-list] - - - - - - - - - - - - - - - - - - - - -
- Review order details -
- remove - - - [item-description] - [item-quantity] @ [item-price][item-subtotal]
Back to cart
Subtotal[subtotal]
Sales Tax[salestax]
Shipping[shipping]
TOTAL[total-cost]
-[/then] -[else] - -

No items in your basket.

-

-You can enter information, and it will be saved, but no checkout will happen until you order something! - -[/else] -[/if] - - -[if type=explicit compare="[error all=1 show_var=1 keep=1]"] -

-There were errors in your last submission. -They are shown in __CONTRAST__ below. -

-[/if] - -[if variable CREDIT_CARDS_ACCEPTED =~ /\S/] -
-[error std_label="Credit Card Information" name=mv_credit_card_valid]      [calc] - my $accepted = $Variable->{CREDIT_CARDS_ACCEPTED}; - my (@out); - my (@cc); - my $out; - push @cc, 'visa' if $accepted =~ /visa/; - push @cc, 'mc' if $accepted =~ /mc/; - push @cc, 'disc' if $accepted =~ /discover/; - push @cc, 'amex' if $accepted =~ /amex/; - for (@cc) { - push @out, qq{}; - } - return join '  ', @out; -[/calc] -
- - - -
-Card Number (test number 4111 1111 1111 1111)
- -[if variable MV_PAYMENT_MODE =~ /minivend_test/] -
Interchange test should yield: - Success - Failure -[/if] - -
- Expires -
- - -
-
-[if scratch some_downloadable] - To download items, you must pay by credit card [if variable PO_ACCEPTED]or purchase order[/if]
- [value name=fax_order set=0 hide=1] -[/if] - - - Pay by credit card
- [if value tried_credit_card] - - Force this card number to be taken
- [/if] -[/if] - -[if variable CHECK_ACCEPTED] - - I will call with payment information
-[/if] - -[if variable PO_ACCEPTED] - - I will pay by purchase order - [error name=credit_limit_ok std_label="PO Number" required=1]  - [if type=data - term="userdb::credit_limit::[data session username]" - op=">" - compare=0.01] -
- Current credit limit: - [currency] - [data table=userdb col=credit_limit key="[data session username]"] - [/currency] - - [if type=data - term="userdb::credit_limit::[data session username]" - op=< - compare="[total-cost noformat=1]" - ] -
- Order total [total-cost] exceeds credit limit, please call. - [/if] -
- [/if] -
-[/if] - -[if variable COD_ACCEPTED] - - I will pay by COD ([handling cod] extra charge will be added)
-[/if] - -
-
- -
-Email preferences -
- - - - - - - - - - -
- Yes - No - - Send an email copy of my receipt -
- Yes - No - - Put me on your email list of infrequent offers -
- -

-
-
- - - -
-Gift note or Special Instructions
-
- -
-
-
- -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/barry/pages/multi/nobasket.html b/dist/barry/pages/multi/nobasket.html deleted file mode 100644 index 7d9a5f46b..000000000 --- a/dist/barry/pages/multi/nobasket.html +++ /dev/null @@ -1,5 +0,0 @@ -[tag op=header interpolate=1] -Status: 302 moved -Content-type: text/html -Location: [area href="[data session last_search]"] -[/tag][set mv_no_cache]1[/set] diff --git a/dist/barry/pages/multi/shipping.html b/dist/barry/pages/multi/shipping.html deleted file mode 100644 index d4df57740..000000000 --- a/dist/barry/pages/multi/shipping.html +++ /dev/null @@ -1,86 +0,0 @@ -[set page_title]Select Shipping mode[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[set only_downloadable]1[/set] -[set some_downloadable][/set] -[item-list] - [if-item-field weight][set only_downloadable][/set][/if-item-field] - [if-item-field download][set some_downloadable]1[/set][/if-item-field] -[/item-list] -[if scratch only_downloadable] - [bounce href="[area href=multi/final secure=1]"] -[/if] - - -
- - -[if !scratch only_downloadable] -

-
-Choose your shipping method -
- -

- - - - - - -
- -
-[if session ship_message] -
Note: [data session ship_message]
-[/if] -
- -[else] -

- You only have downloadable products. There is no shipping cost; you will - be able to download after purchase. -
-[/else] -[/if] - - -

- -

- -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/barry/pages/new_account.html b/dist/barry/pages/new_account.html deleted file mode 100644 index 15d6ab58c..000000000 --- a/dist/barry/pages/new_account.html +++ /dev/null @@ -1,279 +0,0 @@ -[comment] -ui_template_layout: LOGOBAR, MENUBAR, NO_LEFT, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top area, full width. -ui_control_description: members_only : Members only -ui_control_description: page_title : Page title -ui_control_element: members_only : 0=No,1=Yes -ui_control_element: page_title : -ui_template: Yes -ui_template_name: standard -[/comment] - -[set members_only]0[/set] -[set page_title]__COMPANY__ -- [L]Create a new account[/L][/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - - -
- - - - -
- -
-
-[set NewAccount] -[if type=explicit compare="[userdb new_account]"] -mv_nextpage=account -[else] -mv_nextpage=new_account -[/else] -[/if] -[/set] - -

-[if session failure] -[data session failure] -[data base=session field=failure value=""] -[/if] -

-

- - - - - - - - - - - - - - - - - -
Username -
Password -
Verify -

- - Log me in automatically (sets cookie) -
- -[title-bar 400 2] -
You are not required to give us the below information yet, but it will -be retained for your checkout. We have a privacy policy -that protects you.
-[/title-bar] - -[title-bar 400 4]Shipping Address[/title-bar] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- [error name=fname std_label="First Name" required=1] - - [error name=lname std_label=Last required=1] -
[error name=address1 std_label=Address required=1] - -
- -
- [error name=city std_label="City" required=1] - - -
- [error name=state std_label="State/Province" required=1] - - -
- [error name=zip std_label="Zip/Postal Code" required=1] - - -
[error name=email std_label="Email Address" required=1] - -
- Country - - [if value country =~ /(^$|US|CA)/] - - [else] - - [/else] - [/if] (will update display) -
[error name=phone_day std_label="Daytime Phone" required=1] - - - - - - -
- - - Evening - - -
-
- Shipping method - - -
- We need the bold fields to process your order -
- -[title-bar 400 3] - - - -[/title-bar] - - -[title-bar 400 4]Mailing status
- - - Send an email copy of my receipt
- - - Put me on your email list of infrequent offers -

[/title-bar] - -[title-bar 400 4]Billing Address (if different)[/title-bar] - - - - - - - - - - - - - - - - - - - - - - -
Name - - -
Address - - -
City/ST/Zip - - - -
Country - -
- Payment method - - - Pay by credit card
- - I will call with payment information
-
- -[title-bar 400 3] - - - -[/title-bar] - -

- -
-
- - - - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/news.html b/dist/barry/pages/news.html deleted file mode 100644 index 551a90ae1..000000000 --- a/dist/barry/pages/news.html +++ /dev/null @@ -1,348 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, RIGHTSID, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top/left/right areas. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]News[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - -
- -You may note a new look for Interchange's "simple" demo. -

-[page reconfig/reconfig]Reconfigure the catalog[/page] -(must be user minivend) -

-[page reconfig/upload]Upload/download files[/page] -(must be user minivend) - -

- -

New features

-
    -
  • You can order items on the fly: -

    -Order it -

    -You can set quantities: -

    -Order 10 of it -

    -You can use a form: -

    - - - - Qty: - - - -
    -

    -You can order more than one item: -

    - Order two different items -

    - -You can use a form here, too: -

    -

    - - - - Qty:
    - - - - Qty:
    - - -
    -

    -[mvasp] -

  • A new ASP-style syntax is supported (and is used in this section): -
    -        <HTML MV=mvasp><BODY>This is HTML
    -        <%
    -            $Document->write('This is code');
    -        %>
    -        HTML again.
    -        <%
    -            $Document->write('Code again.');
    -        %>
    -
    -
  • A new Perl object set is there to support the ASP, but - it also is available via - - [perl arg=new] - $Document-&gt;write("Your name is $Values-&gt;{name}"); - [/perl] - - Objects supported are: - - $CGI->{key} Hash reference to submitted values - $Document->write() Writes to page - $Carts->{cartname} Direct reference to shopping carts - $Config->{key} Direct reference to $Vend::Cfg - $Items->[n] Direct reference to current cart - $Scratch->{key} Direct reference to scratch area - $Session->{key} Direct reference to session area - $Tag->tagname(@args) Call a tag as a routine (UserTag too!) - $Values->{key} Direct reference to user form values - $Variable->{key} Direct reference to Interchange Variable - &Log($msg) Log to the error log - - -<% = "Here is a ", - $Tag->page('mvasp'), - "test link generated by MV's ASP-style syntax."; - %> -

    -

  • Tag parameters quoted with parameter=`code` are the equivalent of - parameter="[calc]code[/calc]". - -
  • Tag parameters can be quoted with | to strip whitespace: - - - [page href=| - [value name="whatever"] - |] - - is equivalent to - - - [page href="[value name="whatever"]"] - - -
  • Tag parameters can be quoted with | to strip whitespace: - - - [page href=| - [value name="whatever"] - |] - - - is equivalent to - - [page href="[value name="whatever"]"] - -
  • Tag parameters can be quoted with @ to insert a scratch - value: - - [value name=foo set=@bar@] - [value name=foo set="[scratch bar]"] - - This can be useful when setting large values into variables, - as it is much more efficient than the previous method. - -
  • Input values filters can be set up by quoting with ! and - an operation: - - <INPUT TYPE=text NAME=phone VALUE="[value name=!phone:digits!]"> - - This guarantees that the value of "phone" will be digits only - when sent to Interchange. Filters include: -
    -          uc          UPPER CASE 
    -          lc          lower case 
    -          digits      only digits
    -          word        only A-Z a-z _ 0-9
    -          urlencode   space becomes %20
    -          entities    < becomes <
    -          strip       strip leading/trailing whitespace
    -          no_white    strip all whitespace
    -          gate        set to blank unless scratch variable
    -                       with same name is non-blank
    -          n           (where n is an integer) length limit
    -          remove      delete existing filter (if any)
    -
    - Filters can also be created with Filter directive - and/or [input-filter op="uc"][/input-filter] - -
  • Filter directive allows filtering of certain CGI variables - for input conditioning; this is not session dependent and - automatically operates on any iteration of the variable... -
    - Filter phone digits 10 -
    - That removes all non-digit values from the variable "phone", - then limits length to 10. Any session-based filters are applied - after this one. - -
  • Small improvements in the parser, notably optimization when - positional parameters are used. - -
  • ECML is supported via the Vend::ECML module. To map the - checkout form values from Interchange UserDB names, with an [ecml ...] - tag: - - [ecml state] - - is equivalent to: - - <INPUT TYPE=text - VALUE="[value state]" - NAME=Ecom_ShipTo_Postal_StateProv - SIZE=2> - -
  • The [price] tag now supports pricing with attributes (size/color etc.). - If you do - - [price code=99-102 size=XL color=RED] - [price code=99-102 size=L color=RED] - [price code=99-102 size=L color=BLUE] - - in the demo, this will demonstrate it. - -
  • The idiom: - - #include directory/* - - now is supported (and used in the demo minivend.cfg file). This - includes all files in that directory (but not subdirectories) - and allows you to include the whole directory. It should make - maintaining multiple servers a bit easier. - -
  • Made some minor changes in the demo: -
      -
    1. updated flypage to show attribute-based price tag -
    2. added [email to=addr from=addr subject=subj] message [/email] - UserTag which is better then the form_mail GlobalSub. It will - allow $Tag->email() to be used, among other things. -
    3. Static build should work out of the box if you - have DBM and define: -
    - - StaticDBM static - -
-

Interchange 3.15 Features

- -
    -
  • Users maintain a "shopping cart" for ordered items
  • -
  • Multiple independent or shared catalogs allow one server to run many storefronts or a - "mall"
  • -
  • Complete SQL database support, inluding ODBC, via the powerful Perl DBI/DBD interface
  • -
  • Complete built-in database, no SQL is required to run Interchange -
  • SSL support means secure and practical credit card ordering
  • -
  • PGP support for secure off-site mailing of orders
  • -
  • Built in support for CyberCash
  • -
  • Catalogs can be of almost unlimited size with excellent performance
  • -
  • Multi-server mode for very high capacity on systems with sufficient memory
  • -
  • Full-featured user database and access control
  • -
  • Cookie support allows browsers to leave catalog and come back without losing session - state -- browsers that don't accept cookies will still work fine
  • -
  • Multiple shopping carts allow buy-sell operations or classified ad exchanges
  • -
  • Built-in addressable database support with virtually unlimited rows and columns and - field sizes -- no SQL is required to run Interchange
  • -
  • Many, many, other features
  • -
- -

Powerful search capability

- -
    -
  • Fast binary search
  • -
  • One-click scan and search -- build a whole search in a single HREF
  • -
  • Complete Glimpse interface
  • -
  • Range searching, numeric and alphanumeric
  • -
  • Delayed search feature for immediate response even on long searches
  • -
  • Embed searches within searches
  • -
  • Independent field search selection and return
  • -
  • Search any file, build results from any database
  • -
- -

Complete control of appearance

- -
    -
  • Over 90 predefined tag functions
  • -
  • Powerful user-definable tags
  • -
  • Tags can be embedded within HTML tags to work with popular HTML editors
  • -
  • Catalog pages automatically selected -- either built "on the fly" from the - database or pre-made for popular items
  • -
  • Embedded Perl and conditional HTML allow complex and flexible catalog pages to be - completely built from the database
  • -
  • ASP-style programming supported -
  • Full frames support
  • -
  • Full client-side imagemap support, including frame targets and form submits
  • -
- -

Flexible Ordering Process

- -
    -
  • Single- or multi-level order screens with configurable field verification
  • -
  • Shipping calculation, mixed modes, with UPS table lookup
  • -
  • Sales tax calculation, with fully independent non-taxable item and taxed shipping
  • -
  • Fully-configurable discounts with coupons or across-the-board discounts
  • -
  • Fully-configurable quantity pricing
  • -
  • Powerful global subroutines and user-definable tags allow communication - with any other system interface for back end order entry
  • -
  • Fully configurable order reports
  • -
  • Route orders to multiple fulfillment houses with complete configurability
  • -
  • Easy to configure for downloadable product delivery
  • -
- -

Easy Administration

- -
    -
  • Automated installation and configuration
  • -
  • Numerous administration utilities
  • -
  • Runs under Perl 5.004 and almost any UNIX
  • -
  • Runs under Perl 5.004 and 32-bit Windows
  • -
  • Works well with all browsers
  • -
- - -

-Andrew Wilcox wrote Vend, the copylefted shopping cart -software. Interchange was originally based on Vend V0.2, but has been -greatly enhanced, adding powerful relational database functions, user-definable -tags, support -for frames, powerful searching, remote administration, superfast -server mode, conditional HTML, user-customizable help and displays, and -much more. This version of Interchange includes an automatic configuration -and installation utility, and continues to be free under the GNU copyleft. - -

-To learn more about Interchange, see the - -HTML documentation, -FAQ, -visit the offical Interchange -site, or -download it. -

- -

-[/mvasp] - - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/no_cookie.html b/dist/barry/pages/no_cookie.html deleted file mode 100644 index e56e52487..000000000 --- a/dist/barry/pages/no_cookie.html +++ /dev/null @@ -1,28 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Nuke the cookies[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - - -[set-cookie name=MV_USERNAME value="0" expires="01-Jan-2020 00:00:01 GMT"] -[set-cookie name=MV_PASSWORD value="0" expires="01-Jan-2020 00:00:01 GMT"] - -

Bye-Bye Cookies!

-You will no longer be automatically logged in. - - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/nothing.html b/dist/barry/pages/nothing.html deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/barry/pages/ord/basket.html b/dist/barry/pages/ord/basket.html deleted file mode 100644 index 473645446..000000000 --- a/dist/barry/pages/ord/basket.html +++ /dev/null @@ -1,317 +0,0 @@ -[comment] -ui_template_description: Page with top/left areas, no right. -ui_template_layout: LOGOBAR, MENUBAR, LEFTONLY, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_control_description: members_only : Members only -ui_control_description: page_title : Page title -ui_control_element: members_only : 0=No,1=Yes -ui_control_element: page_title : -ui_template: Yes -ui_template_name: leftonly -[/comment] - -[set members_only]0[/set] -[set page_title]Shopping Cart Contents[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTONLY__ - - -[if type=explicit compare="q{[read-cookie MV_SESSION_ID]}"] -[elsif scratch tried] -You must have cookies set to leave the basket. Check out now or forever -lose your shopping cart. -[/elsif] -[else] -[set tried]1[/set] -[bounce href="[area ord/basket]"] -[/else] -[/if] -
- - - - - -[comment] - This next is a Interchange UserTag -- if you see it in the page, then - you don't have it defined in catalog.cfg. -[/comment] -
-
-

-[table-font FACE="verdana,arial, helvetica" size="2"] - - - - - - - - - - - - - - - - - - - - - -[if items] -[then] -[item-list] - - - - - - - - - - -[/item-list] -[/then] -[else] - -[/else] -[/if] - - - - - - - - -
Shopping Cart Contents
-

SKU

-
-

Description

-
-

Quantity

-
-

Price

-
-

Extension

-
- [item-code]
remove
- [page [item-code]][item-description] - [if-item-data pricing sku] -
[page quantity [item-code]] - QUANTITY PRICING - - [/if-item-data] - [if-item-field weight]
- WEIGHT: [summary amount=`[item-quantity] * [item-field weight]`] - [/if-item-field] -
- [if-item-data merchandising others_bought] - [perl tables=products] - my $hash = [item-data merchandising others_bought]; - my @ary = sort { $hash->{$b} <=> $hash->{$a} } keys %$hash; - return '' unless @ary; - my %in_basket; - splice(@ary, 3); - for(@{$Carts->{main}}) { - $in_basket{$_->{code}} = 1; - } - @ary = grep ! $in_basket{$_}, @ary; - return '' unless @ary; - my $out = <<'EOF'; - - - -
Customers who bought this item also bought:
-EOF - for(@ary) { - my $desc = tag_data( 'products', 'description', $_); - $out .= <$desc
-EOF - } - return $out . '
'; - [/perl] - [/if-item-field] - [if-item-field related] - [if !ordered [item-field related]] - - [loop arg="[item-field related]"] - [loop-change 1][condition]1[/condition] - - - [/loop-change 1] - [if !ordered [loop-code]] - - - - - [/if] - [/loop] -
Other items you may like:
[loop-field name]
- [/if] - [/if-item-field][item-accessories size][item-accessories color] -
- - - - [discount-price] - [if discount [item-code]] -
Item is discounted - [item-discount] - - [/if] -
- [item-subtotal] -
-

No items at the moment.

-
-[summary format="Shipping weight: %s" total=1] Subtotal [subtotal]
- - - - [if session logged_in] - [and !value show_saved] -
Show saved carts - [/if] -
-

-
- -[if session logged_in] -[and value show_saved] -[userdb function=get_cart_names hide=1] - -

-

- - - - - - - - - - - - - - - - - -[set Save to new cart] -[value name=c_nickname set="[value c_nickname0]"] -[userdb function=set_cart nickname="[value name=c_nickname filter='nullselect no_white']"] -[/set] - -[set Save to existing cart] -[userdb function=set_cart nickname="[value c_nickname]"] -[/set] - -[set Recall cart(s)] -[userdb function=get_cart nickname="[value c_nickname]"] -[/set] - -[set DELETE cart] -[if value c_delete] -[value name=c_delete set=""] -[userdb function=delete_cart nickname="[value c_nickname]"] -[else] -[set c_delete_message]Must click the checkbox.[/set] -[/else] -[/if] -[/set] - - -
Cart Storage Area
-

New Cart Name

-
-

Existing Cart Name

-
-

Confirm

-
- - - - - Yes, delete - [scratch c_delete_message] - [set c_delete_message][/set] -
- - - - -
Hide saved carts -
-
-[/if] - -[/table-font] - -[set Continue shopping] -[bounce href='[history-scan exclude="^/ord|^/multi/|^/process" default=browse]'] -mv_nextpage=nothing -[/set] - -[set Stop shopping] -mv_todo=return -mv_nextpage=canceled -[/set] - -[set Check out] -mv_todo=return -mv_nextpage=ord/checkout -[/set] - -
- - - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/ord/checkout.html b/dist/barry/pages/ord/checkout.html deleted file mode 100644 index 5f5071ae0..000000000 --- a/dist/barry/pages/ord/checkout.html +++ /dev/null @@ -1,583 +0,0 @@ -[set page_title]Check out -- __COMPANY__[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - -
-NOTE: If you access something above, it will not save anything you have entered.
- - -[if !items] - - - - - -
- No Items? -
-You have no items in your shopping cart. -

This usually means that one of several things has occurred: -

    -
  • You have cookies turned off. This is not fatal unless you travel through -a proxy server to get to the net (don't worry if you don't know what that means). -You can confirm this by [page form=" - mv_nextpage=ord/checkout - mv_todo=return -"]going to the checkout page in non-secure mode. -
  • Our server is misconfigured. -
-Try calling us at __PHONE__ [if variable TOLLFREE]or __TOLLFREE__[/if] -to place the order. -
-[/if] - -[if session logged_in] -[then] - -[set Log out] -mv_todo=return -mv_nextpage=ord/checkout -[userdb function=logout clear=1] -[/set] - -[/then] -[else] - -[title-bar 400 5]Create a new account[/title-bar] -

-It is not required, but if you frequently do business with us you can -create a new account. -

-[title-bar 400 5]Log in[/title-bar] - -[if session failure] -

-[data session failure] -

-[/if] -If you have an account with us, please enter your user name and password. (test/test for testing) -

-

- - - - - - - - - - - - -
Username -
Password -    -
  Log me in automatically
- -
- -[/else][/if] - - -
- - -[if type=explicit compare="[error all=1 show_var=1 keep=1]"] -

-There were errors in your last submission. -They are shown in this color below. -

-[/if] - - -[comment] - - -[/comment] - - - -
-Shipping Address -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[if session logged_in] - - - - -[/if] - -
- [error name=fname std_label="First Name" required=1] - -
- [error name=lname std_label="Last Name" required=1] - - -
[error name=address1 std_label=Address required=1] - -
  - -
- [error name=city std_label="City" required=1] - - -
- [error name=state std_label="State/Province" required=1] - - -
- [error name=zip std_label="Zip/Postal Code" required=1] - - -
[error name=email std_label="Email Address" required=1] - -
- Country - - [if value country =~ /(^$|US|CA)/] - - [else] - - [/else] - [/if] (will update display) -
[error name=phone_day std_label="Daytime Phone" required=1] - -
- [error name=phone_night std_label="Evening Phone" required=0] - - -
  - We need the bold fields to process your order -
  - [set Go to address book] - mv_todo=refresh - mv_nextpage=account - [/set] - - [set Save_database] - [userdb save] - [/set] - - - If you want to save this address in your address book, - [if value address_book]or recall a saved address,[/if] - click the button below.
- - -
-
-[set only_downloadable]1[/set] -[set some_downloadable][/set] -[item-list] - [if-item-field weight][set only_downloadable][/set][/if-item-field] - [if-item-field download][set some_downloadable]1[/set][/if-item-field] -[/item-list] -[if !scratch only_downloadable] -

-
-Choose your shipping method -
- -

- - - - - - - -
- -
-[if session ship_message] -
Note: [data session ship_message]
-[/if] -
-[/if] - -[if variable CREDIT_CARDS_ACCEPTED =~ /\S/] -
-[error std_label="Credit Card Information" name=mv_credit_card_valid]      [calc] - my $accepted = $Variable->{CREDIT_CARDS_ACCEPTED}; - my (@out); - my (@cc); - my $out; - push @cc, 'visa' if $accepted =~ /visa/; - push @cc, 'mc' if $accepted =~ /mc/; - push @cc, 'disc' if $accepted =~ /discover/; - push @cc, 'amex' if $accepted =~ /amex/; - for (@cc) { - push @out, qq{}; - } - return join '  ', @out; -[/calc] -
- -

- -
-Card Number (test number 4111 1111 1111 1111)
- -[if variable MV_PAYMENT_MODE =~ /minivend_test/] -
Interchange test should yield: - Success - Failure -[/if] -
- Expires -
- - -
-[if scratch some_downloadable] - To download items, you must pay by credit card [if variable PO_ACCEPTED]or purchase order[/if]
- [value name=fax_order set=0 hide=1] -[/if] - - - Pay by credit card
- [if value tried_credit_card] - - Force this card number to be taken
- [/if] -[/if] - -[if variable CHECK_ACCEPTED] - - I will call with payment information
-[/if] - -[if variable PO_ACCEPTED] - - I will pay by purchase order - [error name=credit_limit_ok std_label="PO Number" required=1]  - [if type=data - term="userdb::credit_limit::[data session username]" - op=">" - compare=0.01] -
- Current credit limit: - [currency] - [data table=userdb col=credit_limit key="[data session username]"] - [/currency] - - [if type=data - term="userdb::credit_limit::[data session username]" - op=< - compare="[total-cost noformat=1]" - ] -
- Order total [total-cost] exceeds credit limit, please call. - [/if] -
- [/if] -
-[/if] - -[if variable COD_ACCEPTED] - - I will pay by COD ([handling cod] extra charge will be added)
-[/if] - -
-Billing Address (if different) -
- - - - - - - - - - - - - - - - - - - - -[if session logged_in] - - - - -[/if] - -
Name - - -
Address - - -
City/ST/Zip - - - -
Country - -
  - - If you want to save this address in your address book, - [if value address_book]or recall a saved address,[/if] - click the button below.
- - -
-
- -[set Place Order!] -mv_todo=submit -[/set] - -
-Email preferences -
- - - - - - - - - - -
- Yes - No - - Send an email copy of my receipt -
- Yes - No - - Put me on your email list of infrequent offers -
- -[if items] -[then] - - - -[item-list] - - - - - - -[/item-list] - - - - - - - - - - - - - - - - - - - - -
- Review order details -
- remove - - - [item-description] - [item-quantity] @ [item-price][item-subtotal]
Back to cart
Subtotal[subtotal]
Sales Tax[salestax]
Shipping[shipping]
TOTAL[total-cost]
-

-

-
-
-[/then] -[else] - -

No items in your basket.

-

-You can enter information, and it will be saved, but no checkout will happen until you order something! - -[/else] -[/if] -

- -
- -

-Gift note or Special Instructions
- - -[error all=1 hide=1 comment="Clear errors"] -

-NOTE: If you access something below, it will not save anything you have entered. - -

-__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/pages/ord/nobasket.html b/dist/barry/pages/ord/nobasket.html deleted file mode 100644 index 7d9a5f46b..000000000 --- a/dist/barry/pages/ord/nobasket.html +++ /dev/null @@ -1,5 +0,0 @@ -[tag op=header interpolate=1] -Status: 302 moved -Content-type: text/html -Location: [area href="[data session last_search]"] -[/tag][set mv_no_cache]1[/set] diff --git a/dist/barry/pages/privacy.html b/dist/barry/pages/privacy.html deleted file mode 100644 index 6bfd46dfa..000000000 --- a/dist/barry/pages/privacy.html +++ /dev/null @@ -1,37 +0,0 @@ -[comment] -ui_template_description: Page with top/left/right areas. Menu bar and copyright at bottom. -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, RIGHTSIDE, MENUBOTTOM, COPYRIGHT -ui_control_description: members_only : Members only -ui_control_description: page_title : Page title -ui_control_element: members_only : 0=No,1=Yes -ui_control_element: page_title : -ui_template: Yes -ui_template_name: standard -[/comment] - -[set members_only]0[/set] -[set page_title]Privacy Policy[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - - -[title-bar 300 4]Privacy Policy[/title-bar] -
- -
    -
  • We will only send you email directly related to orders you place. -
  • We will not assume that you want promotional email just because -you ordered from us. -
  • We will not give your information to anyone else. -
-
- - - - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ \ No newline at end of file diff --git a/dist/barry/pages/quantity.html b/dist/barry/pages/quantity.html deleted file mode 100644 index 152c29ca8..000000000 --- a/dist/barry/pages/quantity.html +++ /dev/null @@ -1,93 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, RIGHTSIDE, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top/left/right areas. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title][description code="[data session arg]"][/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - -[loop arg="[data session arg]"] -[if-loop-field category][L]Category[/L]: [loop-field category][/if-loop-field] -

-[if-loop-field image] - -

-[order [loop-code]][L]ORDER NOW[/L][/order] -

-[/if-loop-field] -

[loop-field name]

-

[loop-field who_by]

-

- - - - - - - - - - - - - - - - - - - -
- -

[L]Quantity Pricing[/L]

- [if type=explicit compare="[calc] - return 1 if q{[loop-price 1 noformat]} > 1000; - return 0; - [/calc]"] - Remember, an original costs more! - [/if]
- - Part No. - - - 1 - - - 2 - - - 5 - - - 10 - - - 25 -
[loop-code] - [order code="[loop-code]" quantity=1][loop-price 1] - - [order code="[loop-code]" quantity=2][loop-price 2] - - [order code="[loop-code]" quantity=5][loop-price 5] - - [order code="[loop-code]" quantity=10][loop-price 10] - - [order code="[loop-code]" quantity=25][loop-price 25]

- -

- -[/loop] - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/query/check_orders.html b/dist/barry/pages/query/check_orders.html deleted file mode 100644 index 80f2bb5eb..000000000 --- a/dist/barry/pages/query/check_orders.html +++ /dev/null @@ -1,196 +0,0 @@ -[set page_title]__COMPANY__ -- Order Status[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - -[comment] -+----------------+---------------+------+-----+---------+-------+ -| Field | Type | Null | Key | Default | Extra | -+----------------+---------------+------+-----+---------+-------+ -| code | varchar(14) | | PRI | | | -| store_id | varchar(9) | | MUL | | | -| order_number | varchar(14) | | MUL | | | -| session | varchar(32) | | | | | -| username | varchar(20) | | | | | -| shipmode | varchar(32) | | | | | -| nitems | varchar(9) | | | | | -| subtotal | varchar(12) | | | | | -| shipping | varchar(12) | | | | | -| handling | varchar(12) | YES | | NULL | | -| total_cost | varchar(16) | | | | | -| fname | varchar(30) | YES | | NULL | | -| lname | varchar(30) | YES | | NULL | | -| company | varchar(30) | YES | | NULL | | -| address1 | varchar(30) | YES | | NULL | | -| address2 | varchar(30) | YES | | NULL | | -| city | varchar(30) | | | | | -| state | varchar(10) | YES | | NULL | | -| zip | varchar(10) | | | 00000 | | -| country | varchar(10) | | | | | -| phone_day | varchar(20) | YES | | NULL | | -| phone_night | varchar(20) | YES | | NULL | | -| fax | varchar(20) | YES | | NULL | | -| email | varchar(42) | YES | | NULL | | -| b_fname | varchar(30) | YES | | NULL | | -| b_lname | varchar(30) | YES | | NULL | | -| b_company | varchar(30) | YES | | NULL | | -| b_address1 | varchar(30) | YES | | NULL | | -| b_address2 | varchar(30) | YES | | NULL | | -| b_city | varchar(30) | YES | | NULL | | -| b_state | varchar(10) | YES | | NULL | | -| b_zip | varchar(10) | | | 00000 | | -| b_country | varchar(10) | | | | | -| b_phone | varchar(20) | YES | | NULL | | -| order_date | varchar(32) | | | | | -| payment_method | varchar(32) | YES | | NULL | | -| avs | varchar(32) | YES | | NULL | | -| order_id | varchar(32) | YES | | NULL | | -| update_date | timestamp(14) | YES | | NULL | | -| status | varchar(32) | YES | | NULL | | -| parent | varchar(9) | YES | | NULL | | -+----------------+---------------+------+-----+---------+-------+ -[/comment] -

 

- - -
- Order Status -
-[query st=db arrayref=orders - sql="SELECT - code,status,nitems,subtotal,shipping,handling,total_cost,payment_method,order_date - FROM transactions - WHERE username = '[data base=session field=username filter=sql]' - ORDER by code - "][/query] -[mvasp tables=transactions] -<% - my $uid = $Session->{username}; - - if (! $uid) { - $Document->write ("

You are not logged in.

"); - return; - } - - my $orders = $Tmp->{orders}; - - if(! $orders or scalar @$orders == 0) { - $Document->write( "No pending orders for $uid."); - return; - } - - HTML ''; - - my $header_template = <<'EOF'; - - - - - - - - - - -EOF - - my $line_template = <<'EOF'; - - - - - - - - - - -EOF - - my %hash; - - my @fields = qw/order_number status nitems subtotal shipping - handling total_cost payment_method order_date/; - - my $row; - - my %summary; - my $first; - my $record; - HTML $header_template; - foreach $record (@$orders) { - my $line = $line_template; - @hash{@fields} = @$record; - $hash{detail_url} = $Tag->area( { - href => 'query/order_detail', - arg => $hash{order_number}, - }); - if($hash{status} =~ /\d/) { - my @ids = grep /\S/, split /\s+/, $hash{status}; - $hash{status} = ''; - for(@ids) { - $hash{status} .= <UPS $_ -EOF - } - } - else { - $hash{status} = <$hash{status} -EOF - } - for(qw/subtotal shipping total_cost/) { - $hash{$_} = $Tag->currency ({ body=> $hash{$_} }); - } - if($hash{handling}) { - $hash{handling} = "
(handling " . - $Tag->currency ({ body=> $hash{handling} }) . - ")"; - } - else { - $hash{handling} = ''; - } - $line =~ s/\$(\w+)/$hash{$1}/g; - HTML $line; - } - - HTML "
- DATE - - ORDER ID - - QTY
TOTAL
-
- PAYMENT
METHOD
-
- SUBTOTAL - - SHIPPING
HANDLING
-
- SUBTOTAL - - STATUS -
- $order_date - - $order_number - - $nitems - - $payment_method  - - $subtotal - - $shipping$handling - - $total_cost - - $status -
"; -%> -[/mvasp] - -
-__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/query/order_detail.html b/dist/barry/pages/query/order_detail.html deleted file mode 100644 index ece867a75..000000000 --- a/dist/barry/pages/query/order_detail.html +++ /dev/null @@ -1,185 +0,0 @@ -[set page_title] __COMPANY__ -- Order Detail [/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - -[comment] - -+----------------+---------------+------+-----+---------+-------+ -| Field | Type | Null | Key | Default | Extra | -+----------------+---------------+------+-----+---------+-------+ -| code | varchar(14) | | PRI | | | -| store_id | varchar(9) | | MUL | | | -| order_number | varchar(14) | | MUL | | | -| session | varchar(32) | | | | | -| username | varchar(20) | | | | | -| shipmode | varchar(32) | | | | | -| nitems | varchar(9) | | | | | -| subtotal | varchar(12) | | | | | -| shipping | varchar(12) | | | | | -| handling | varchar(12) | YES | | NULL | | -| salestax | varchar(12) | YES | | NULL | | -| total_cost | varchar(16) | | | | | -| fname | varchar(30) | YES | | NULL | | -| lname | varchar(30) | YES | | NULL | | -| company | varchar(30) | YES | | NULL | | -| address1 | varchar(30) | YES | | NULL | | -| address2 | varchar(30) | YES | | NULL | | -| city | varchar(30) | | | | | -| state | varchar(10) | YES | | NULL | | -| zip | varchar(10) | | | 00000 | | -| country | varchar(10) | | | | | -| phone_day | varchar(20) | YES | | NULL | | -| phone_night | varchar(20) | YES | | NULL | | -| fax | varchar(20) | YES | | NULL | | -| email | varchar(42) | YES | | NULL | | -| b_fname | varchar(30) | YES | | NULL | | -| b_lname | varchar(30) | YES | | NULL | | -| b_company | varchar(30) | YES | | NULL | | -| b_address1 | varchar(30) | YES | | NULL | | -| b_address2 | varchar(30) | YES | | NULL | | -| b_city | varchar(30) | YES | | NULL | | -| b_state | varchar(10) | YES | | NULL | | -| b_zip | varchar(10) | | | 00000 | | -| b_country | varchar(10) | | | | | -| b_phone | varchar(20) | YES | | NULL | | -| order_date | varchar(32) | | | | | -| payment_method | varchar(32) | YES | | NULL | | -| avs | varchar(32) | YES | | NULL | | -| order_id | varchar(32) | YES | | NULL | | -| update_date | timestamp(14) | YES | | NULL | | -| status | varchar(32) | YES | | NULL | | -| parent | varchar(9) | YES | | NULL | | -+----------------+---------------+------+-----+---------+-------+ - -+--------------+---------------+------+-----+---------+-------+ -| Field | Type | Null | Key | Default | Extra | -+--------------+---------------+------+-----+---------+-------+ -| code | varchar(14) | | PRI | | | -| store_id | varchar(9) | | MUL | | | -| order_number | varchar(14) | | MUL | | | -| session | varchar(32) | | | | | -| username | varchar(20) | | | | | -| shipmode | varchar(32) | | | | | -| sku | varchar(14) | | | | | -| quantity | varchar(9) | | | | | -| price | varchar(12) | | | | | -| subtotal | varchar(12) | | | | | -| shipping | varchar(12) | YES | | NULL | | -| taxable | char(3) | YES | | NULL | | -| size | varchar(30) | YES | | NULL | | -| color | varchar(30) | YES | | NULL | | -| options | varchar(255) | YES | | NULL | | -| order_date | varchar(32) | | | | | -| update_date | timestamp(14) | YES | | NULL | | -| status | varchar(32) | YES | | NULL | | -| parent | varchar(9) | YES | | NULL | | -+--------------+---------------+------+-----+---------+-------+ - -[/comment] - -[comment] -Do some security checking -[/comment] -[if session arg] - [seti arg][data session arg][/seti] -[else] - [bounce href="[area special/violation arg_missing]"] -[/else] - -[/if] - -[value name=test_user - set="[data - table=transactions - col=username - key='[scratch arg]' - ]" - hide=1] - -[if value test_user] -[else] - [bounce href="[area special/violation user_missing]&user=[value test_user]&arg=[scratch arg]"] -[/else] -[/if] -[if type=explicit compare=` - return 1 if ! $Session->{username}; - return 0 if $Session->{username} eq $Values->{test_user}; - return 1; - `] -[bounce href="[area special/user_violation username_no_match]&s=[data session username]&v=[value test_user]"] -[/if] - - -

 

- - -
- Order Detail: [scratch arg] -
- -[loop list="[scratch arg]"] - -[html-table fr='__TABLEFG__'] -ORDER NUMBER [loop-data transactions mv_order_number] -Name [loop-data transactions fname] [loop-data transactions lname] -[if-loop-data transactions company]Company [loop-data transactions company] -[/if-loop-data]Address [loop-data transactions address1][if-loop-data transactions address2] - [loop-data transactions address2][/if-loop-data] -City, State, Zip [loop-data transactions city], [loop-data transactions state] [loop-data transactions zip] -Country [loop-data transactions country] -Payment Method [loop-data transactions payment_method] -Shipping Method [loop-data transactions shipmode] -Daytime Phone [loop-data transactions phone_day] -Evening Phone [loop-data transactions phone_night] -[if-loop-data transactions b_fname]Billing Name [loop-data transactions b_fname] [loop-data transactions b_lname] -[/if-loop-data][if-loop-data transactions b_address1]Billing Address [loop-data transactions b_address1] - [loop-data transactions b_address2] -City, State, Zip [loop-data transactions b_city], [loop-data transactions b_state] [loop-data transactions b_zip] -[/if-loop-data][if-loop-data transactions b_country]Shipping Country [loop-data transactions b_country][/if-loop-data] -[/html-table] -
- - -[perl products userdb] - sub get_download { - my $sku = shift; - return '' unless tag_data('products', 'download', $sku); - my $loc = tag_data('products', 'dl_location', $sku); - my $save = delete $Scratch->{mv_add_dot_html}; - my $url = $Tag->area( { href => "deliver/$loc", arg => $sku } ); - $Scratch->{mv_add_dot_html} = $save if $save; - return qq{
}; - } - return; -[/perl] -[html-table interpolate=1 td="VALIGN=TOP"] -Quan Item No. Description
Price
Extension -[query - list=1 - st=db - sql=| - SELECT * FROM orderline - WHERE order_number = '[scratch arg]' - ORDER BY code - | -][sql-param quantity] [sql-param sku] [description [sql-param sku]]
[if-sql-data orderline size]SIZE-->[sql-param size][/if-sql-data][if-sql-data orderline color] COLOR-->[sql-param color][/if-sql-data][calc] -return unless - q{[userdb function=check_file_acl mode=expire location="[sql-param sku]"]}; - return get_download(q{[sql-param sku]}); -[/calc]
[currency][sql-param price][/currency]
[currency][sql-param subtotal][/currency] -[/query] - SUBTOTAL
[currency][loop-data transactions subtotal][/currency] - SALES TAX
[currency][loop-data transactions salestax][/currency] - SHIPPING
[currency][loop-data transactions shipping][/currency][if-loop-data transactions handling] - HANDLING
[currency][loop-data transactions handling][/currency][/if-loop-data] - ORDER TOTAL
[currency][loop-data transactions total_cost][/currency] -[/html-table] -
-[/loop] - -
- -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/results.html b/dist/barry/pages/results.html deleted file mode 100644 index 46f09d1c5..000000000 --- a/dist/barry/pages/results.html +++ /dev/null @@ -1,105 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, NO_LEFT, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Results page with no leftside area. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[flag type=build] -[set page_title]__COMPANY__: Products[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -[if type=file term=` - $cat = lc $Values->{category}; - $Values->{header_img} = "header_$cat.gif"; - return "__DOCROOT____IMAGE_DIR__/header_$cat.gif" - ` ] - -

-[/if] -[search-region] - -

-[search-list] - - - - - - - - - - - - - - - - - - - - - - - - -

[order [item-code]]

[item-description]
-
-
-
-


-
- -
[item-price]
-
- -
-
- - [item-field comment] - -
-
-
-
-[/search-list] -
-[no-match] -
- - - -
- No match for [value-extended mv_searchspec] -
-[/no-match] -[more-list] -
- -
-
-Matches [matches] of -[if value mv_search_match_count > 1] - [value mv_search_match_count] found. -[/if] -
[more]
-
-
-[/more-list] -[/search-region] - - - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/pages/special/feedback.html b/dist/barry/pages/special/feedback.html deleted file mode 100644 index 2e751c1ff..000000000 --- a/dist/barry/pages/special/feedback.html +++ /dev/null @@ -1,76 +0,0 @@ -[set page_title]Thanks for the feedback![/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - -[if !scratch feedback_active] -Hey! This needs to come from a feedback form. -[else] -[set feedback_active][/set] -[set name=feedback_sent interpolate=1] -[perl arg=sub interpolate=1] - form_mail - ( - q{__ORDERS_TO__}, - q{[value feedback_subject]}, - q{[value feedback_email]}, - <<'EOMail' ) -Subject: [value feedback_subject] - From: [value feedback_name] - Email: [value feedback_email] -Message --------- -[value feedback_message] -EOMail -[/perl] -[/set] - -[if scratch feedback_sent] -

Thank you for your feedback!

- - - - - - - - - - - - - - - - - - -
- From - - [value feedback_name] -
- Subject - - [value feedback_subject] -
- Email - - [value feedback_email] -
- Message - -
-		[value feedback_message]
-	
-
-[else] Error sending feedback.[/else] -[/if] - -[/else] -[/if] - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/pages/special/needfield.html b/dist/barry/pages/special/needfield.html deleted file mode 100644 index b1db39316..000000000 --- a/dist/barry/pages/special/needfield.html +++ /dev/null @@ -1,46 +0,0 @@ -[set page_title]We need some more information![/set] -__LOGOBAR__ -__MENUBAR__ - -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -We need to have some fields entered to be able -to process your order. Please [page __ORDER_STYLE__/checkout]go back and fill out -the information. -

-Problem: -

-[perl] - my $msg = q{[subject]}; - sub redo_message { - my($param,$word) = @_; - if($param =~ /mv_credit/) { - "

  • You need to validate your credit card information.\n"; - } - elsif ($word =~ /not_a_state/i) { - return "
  • We need a valid two-letter state code like CA.\n"; - } - elsif ($word =~ /phone_day=/i) { - return "
  • Is that really a phone number?\n"; - } - elsif ($word =~ /not_a_zip_code/i) { - return "
  • We need a zip code for UPS lookup.\n"; - } - elsif ($word =~ /mv_contingent/) { - return "
  • You need to select your method of payment.\n"; - } - else { return "
  • $param: $word\n" } - } - @msg = split /\n/, $msg; - $msg = '
      '; - for(@msg) { - ($var, $val) = split /:\s*/, $_; - $msg .= redo_message($var, $val); - } - $msg .= '
    '; - $msg; -[/perl] -

    -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/pages/splash.html b/dist/barry/pages/splash.html deleted file mode 100644 index 74eddc731..000000000 --- a/dist/barry/pages/splash.html +++ /dev/null @@ -1,46 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, NO_LEFT, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top area only. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - -

    -

    Welcome to __MVC_COMPANY__!

    -

    -Enter -

    -This version introduces the Interchange user interface: -

    -Admin -

    -
    -This is the "barry" demonstration of the Akopia Interchange 4.0 electronic -catalog system. Links that will help you to use this software: -

    -

    - - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/srchform.html b/dist/barry/pages/srchform.html deleted file mode 100644 index 679f026b1..000000000 --- a/dist/barry/pages/srchform.html +++ /dev/null @@ -1,273 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Search __COMPANY__[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - - - -[seti option_list] -[table-font face="arial,helvetica" size=-2] - - - - - - - - - - - - - - -
    CompareNumericCaseNegation
    - - - - - -
    -[/table-font] -[/seti] - -[table-font face="arial,helvetica"] -

    - - - - - - - - - - - -
    - Full-text Search -
    - Keywords: - - -
    - - Match All
    - Match Any -

    - Match whole words only
    - Match partial words -

    - Ignore Case
    - Do not ignore case -

    -
    - - Match specific fields:

    - - - - - - - - - -
    Artist Title
    Museum Description
    -
    Matches per page:
    - - - - -
    - - -
    -
    -
    - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - Specialized Search - Page size - - -
    - Field - - Search for:
    -
    - [scratch option_list] -
     
    - Field - - Search for:
    -
    - [scratch option_list] -
     
    - Field - - Search for:
    -
    - [scratch option_list] -
     
    - Field - - Search for:
    -
    - [scratch option_list] -
     
    - Category - - -
    -[/table-font] -
    - - - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pages/subcat.html b/dist/barry/pages/subcat.html deleted file mode 100644 index 109320734..000000000 --- a/dist/barry/pages/subcat.html +++ /dev/null @@ -1,97 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: fullwide -ui_template_layout: LOGOBAR, MENUBAR, NO_LEFT, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[flag type=build] -[set page_title]__COMPANY__: Category listing[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - -
    -
    - - -[search-region search=" - sf=category - se=[data session arg] - tf=subcategory - un=yes - rf=subcategory -"] - - - -[search-list] - - -[item-alternate 3] - - [set end_done]1[/set] -[else] - [set end_done][/set] -[/else] -[/item-alternate] -[/search-list] -[if scratch end_done] - -[/if] - -[if !scratch end_done] - -[/if] - -
    - - [if-item-data cat banner_icon] - - [/if-item-data] - - [item-code] - - -
    - - Misc. [data session arg] - -
    -[/search-region] - -
    - - - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/barry/pgsql/area.pgsql b/dist/barry/pgsql/area.pgsql deleted file mode 100644 index 0ad5b6396..000000000 --- a/dist/barry/pgsql/area.pgsql +++ /dev/null @@ -1,14 +0,0 @@ -Database area area.txt __SQLDSN__ -#ifdef SQLUSER -Database area USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database area PASS __SQLPASS__ -#endif -Database area DEFAULT_TYPE text -Database area COLUMN_DEF "code=VARCHAR(12) NOT NULL PRIMARY KEY" -Database area COLUMN_DEF "name=VARCHAR(128) DEFAULT '' NOT NULL" -Database area COLUMN_DEF "sort=VARCHAR(3) DEFAULT '00' NOT NULL" -Database area POSTCREATE "create index area_sort on area (sort)" -Database area POSTCREATE "create index area_name on area (name)" -Database area ChopBlanks 1 diff --git a/dist/barry/pgsql/cat.pgsql b/dist/barry/pgsql/cat.pgsql deleted file mode 100644 index f70af07d6..000000000 --- a/dist/barry/pgsql/cat.pgsql +++ /dev/null @@ -1,13 +0,0 @@ -Database cat cat.txt __SQLDSN__ -#ifdef SQLUSER -Database cat USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database cat PASS __SQLPASS__ -#endif -Database cat DEFAULT_TYPE text -Database cat COLUMN_DEF "code=char(20) NOT NULL PRIMARY KEY" -Database cat COLUMN_DEF "sel=char(64) DEFAULT '' NOT NULL" -Database cat COLUMN_DEF "name=char(64) DEFAULT '' NOT NULL" -Database cat COLUMN_DEF "sort=char(4) DEFAULT 'ZZ' NOT NULL" -Database cat ChopBlanks 1 diff --git a/dist/barry/pgsql/country.pgsql b/dist/barry/pgsql/country.pgsql deleted file mode 100644 index 736bc991a..000000000 --- a/dist/barry/pgsql/country.pgsql +++ /dev/null @@ -1,12 +0,0 @@ -Database country country.txt __SQLDSN__ -#ifdef SQLUSER -Database country USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database country PASS __SQLPASS__ -#endif -Database country COLUMN_DEF "code=CHAR(3) NOT NULL PRIMARY KEY" -Database country COLUMN_DEF "selector=CHAR(3) NOT NULL" -Database country COLUMN_DEF "shipmodes=CHAR(64)" -Database country COLUMN_DEF "name=CHAR(32) NOT NULL" -Database country ChopBlanks 1 diff --git a/dist/barry/pgsql/inventory.pgsql b/dist/barry/pgsql/inventory.pgsql deleted file mode 100644 index 1d32b054c..000000000 --- a/dist/barry/pgsql/inventory.pgsql +++ /dev/null @@ -1,12 +0,0 @@ -Database inventory inventory.txt __SQLDSN__ -#ifdef SQLUSER -Database inventory USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database inventory PASS __SQLPASS__ -#endif -Database inventory KEY sku -Database inventory COLUMN_DEF "sku=VARCHAR(14) NOT NULL PRIMARY KEY" -Database inventory COLUMN_DEF "quantity=VARCHAR(12) NOT NULL" -Database inventory COLUMN_DEF "account=char(128)" -Database inventory COLUMN_DEF "cogs_account=char(128)" diff --git a/dist/barry/pgsql/merchandising.pgsql b/dist/barry/pgsql/merchandising.pgsql deleted file mode 100644 index 41a919679..000000000 --- a/dist/barry/pgsql/merchandising.pgsql +++ /dev/null @@ -1,12 +0,0 @@ -Database merchandising merchandising.txt __SQLDSN__ -#ifdef SQLUSER -Database merchandising USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database merchandising PASS __SQLPASS__ -#endif -Database merchandising DEFAULT_TYPE text -Database merchandising COLUMN_DEF "sku=char(20) NOT NULL PRIMARY KEY" -Database merchandising COLUMN_DEF "featured=CHAR(32) NOT NULL" -Database merchandising COLUMN_DEF "start=CHAR(24) NOT NULL" -Database merchandising COLUMN_DEF "finish=CHAR(24) NOT NULL" diff --git a/dist/barry/pgsql/orderline.pgsql b/dist/barry/pgsql/orderline.pgsql deleted file mode 100644 index 67cc07e56..000000000 --- a/dist/barry/pgsql/orderline.pgsql +++ /dev/null @@ -1,28 +0,0 @@ - -Database orderline orderline.txt __SQLDSN__ -#ifdef SQLUSER -Database orderline USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database orderline PASS __SQLPASS__ -#endif -Database orderline COLUMN_DEF "code=VARCHAR(14) NOT NULL PRIMARY KEY" -Database orderline COLUMN_DEF "store_id=VARCHAR(9) DEFAULT '' NOT NULL" -Database orderline COLUMN_DEF "order_number=VARCHAR(14) NOT NULL" -Database orderline COLUMN_DEF "session=VARCHAR(32) NOT NULL" -Database orderline COLUMN_DEF "username=VARCHAR(20) default '' NOT NULL" -Database orderline COLUMN_DEF "shipmode=VARCHAR(32) default '' NOT NULL" -Database orderline COLUMN_DEF "sku=VARCHAR(14) NOT NULL" -Database orderline COLUMN_DEF "quantity=VARCHAR(9) NOT NULL" -Database orderline COLUMN_DEF "price=VARCHAR(12) NOT NULL" -Database orderline COLUMN_DEF "subtotal=VARCHAR(12) NOT NULL" -Database orderline COLUMN_DEF "shipping=VARCHAR(12)" -Database orderline COLUMN_DEF "taxable=VARCHAR(3)" -Database orderline COLUMN_DEF "size=VARCHAR(30)" -Database orderline COLUMN_DEF "color=VARCHAR(30)" -Database orderline COLUMN_DEF "options=VARCHAR(255)" -Database orderline COLUMN_DEF "order_date=varchar(32) NOT NULL" -Database orderline COLUMN_DEF "update_date=timestamp" -Database orderline COLUMN_DEF "status=VARCHAR(32)" -Database orderline COLUMN_DEF "parent=VARCHAR(9)" -Database orderline ChopBlanks 1 diff --git a/dist/barry/pgsql/pricing.pgsql b/dist/barry/pgsql/pricing.pgsql deleted file mode 100644 index 20c97abe1..000000000 --- a/dist/barry/pgsql/pricing.pgsql +++ /dev/null @@ -1,20 +0,0 @@ -# Interchange database definition -Database pricing pricing.txt __SQLDSN__ -#ifdef SQLUSER -Database pricing USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database pricing PASS __SQLPASS__ -#endif -Database pricing KEY sku -Database pricing COLUMN_DEF "q2=VARCHAR(12)" -Database pricing COLUMN_DEF "price_group=VARCHAR(2) DEFAULT '' NOT NULL" -Database pricing COLUMN_DEF "sku=VARCHAR(9) NOT NULL PRIMARY KEY" -Database pricing COLUMN_DEF "q5=VARCHAR(12)" -Database pricing COLUMN_DEF "q10=VARCHAR(12)" -Database pricing COLUMN_DEF "q25=VARCHAR(12)" -Database pricing COLUMN_DEF "q100=VARCHAR(12)" -Database pricing COLUMN_DEF "XL=VARCHAR(12)" -Database pricing COLUMN_DEF "S=VARCHAR(12)" -Database pricing COLUMN_DEF "red=VARCHAR(12)" -Database pricing ChopBlanks 1 diff --git a/dist/barry/pgsql/products.pgsql b/dist/barry/pgsql/products.pgsql deleted file mode 100644 index 5f861c1c8..000000000 --- a/dist/barry/pgsql/products.pgsql +++ /dev/null @@ -1,25 +0,0 @@ -# Interchange database definition -Database products products.txt __SQLDSN__ -#ifdef SQLUSER -Database products USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database products PASS __SQLPASS__ -#endif -Database products KEY sku -Database products COLUMN_DEF "sku=VARCHAR(14) NOT NULL PRIMARY KEY" -Database products COLUMN_DEF "description=VARCHAR(128) NOT NULL" -Database products COLUMN_DEF "title=VARCHAR(128) DEFAULT '' NOT NULL" -Database products COLUMN_DEF "artist=VARCHAR(128) DEFAULT '' NOT NULL" -Database products COLUMN_DEF "comment=TEXT" -Database products COLUMN_DEF "display=VARCHAR(128)" -Database products COLUMN_DEF "image=VARCHAR(64)" -Database products COLUMN_DEF "price=VARCHAR(12) NOT NULL" -Database products COLUMN_DEF "category=VARCHAR(64) NOT NULL" -Database products COLUMN_DEF "nontaxable=VARCHAR(3)" -Database products COLUMN_DEF "weight=VARCHAR(12)" -Database products COLUMN_DEF "size=VARCHAR(96)" -Database products COLUMN_DEF "color=VARCHAR(96)" -Database products COLUMN_DEF "related=text" -Database products COLUMN_DEF "featured=VARCHAR(32)" -Database products ChopBlanks 1 diff --git a/dist/barry/pgsql/transactions.pgsql b/dist/barry/pgsql/transactions.pgsql deleted file mode 100644 index 54f1a313e..000000000 --- a/dist/barry/pgsql/transactions.pgsql +++ /dev/null @@ -1,52 +0,0 @@ -Database transactions transactions.txt __SQLDSN__ -#ifdef SQLUSER -Database transactions USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database transactions PASS __SQLPASS__ -#endif -Database transactions transactions.raw SQL -Database transactions COLUMN_DEF "code=VARCHAR(14) NOT NULL PRIMARY KEY" -Database transactions COLUMN_DEF "store_id=VARCHAR(9)" -Database transactions COLUMN_DEF "order_number=VARCHAR(14) NOT NULL" -Database transactions COLUMN_DEF "session=VARCHAR(32) NOT NULL" -Database transactions COLUMN_DEF "username=VARCHAR(20) DEFAULT '' NOT NULL" -Database transactions COLUMN_DEF "shipmode=VARCHAR(32)" -Database transactions COLUMN_DEF "nitems=VARCHAR(9) NOT NULL" -Database transactions COLUMN_DEF "subtotal=VARCHAR(12) NOT NULL" -Database transactions COLUMN_DEF "shipping=VARCHAR(12) NOT NULL" -Database transactions COLUMN_DEF "handling=VARCHAR(12)" -Database transactions COLUMN_DEF "salestax=VARCHAR(12)" -Database transactions COLUMN_DEF "total_cost=VARCHAR(16) NOT NULL" -Database transactions COLUMN_DEF "fname=VARCHAR(30)" -Database transactions COLUMN_DEF "lname=VARCHAR(30)" -Database transactions COLUMN_DEF "company=VARCHAR(30)" -Database transactions COLUMN_DEF "address1=VARCHAR(30)" -Database transactions COLUMN_DEF "address2=VARCHAR(30)" -Database transactions COLUMN_DEF "city=VARCHAR(30) NOT NULL" -Database transactions COLUMN_DEF "state=VARCHAR(10)" -Database transactions COLUMN_DEF "zip=VARCHAR(10) DEFAULT '00000' NOT NULL" -Database transactions COLUMN_DEF "country=VARCHAR(10) DEFAULT '' NOT NULL" -Database transactions COLUMN_DEF "phone_day=VARCHAR(20)" -Database transactions COLUMN_DEF "phone_night=VARCHAR(20)" -Database transactions COLUMN_DEF "fax=VARCHAR(20)" -Database transactions COLUMN_DEF "email=VARCHAR(42)" -Database transactions COLUMN_DEF "b_fname=VARCHAR(30)" -Database transactions COLUMN_DEF "b_lname=VARCHAR(30)" -Database transactions COLUMN_DEF "b_company=VARCHAR(30)" -Database transactions COLUMN_DEF "b_address1=VARCHAR(30)" -Database transactions COLUMN_DEF "b_address2=VARCHAR(30)" -Database transactions COLUMN_DEF "b_city=VARCHAR(30)" -Database transactions COLUMN_DEF "b_state=VARCHAR(10)" -Database transactions COLUMN_DEF "b_zip=VARCHAR(10)" -Database transactions COLUMN_DEF "b_country=VARCHAR(10)" -Database transactions COLUMN_DEF "b_phone=VARCHAR(20)" -Database transactions COLUMN_DEF "payment_method=varchar(32)" -Database transactions COLUMN_DEF "avs=varchar(32)" -Database transactions COLUMN_DEF "order_id=varchar(32)" -Database transactions COLUMN_DEF "order_date=varchar(32) NOT NULL" -Database transactions COLUMN_DEF "update_date=timestamp" -Database transactions COLUMN_DEF "status=VARCHAR(32)" -Database transactions COLUMN_DEF "parent=VARCHAR(9)" -Database transactions COLUMN_DEF "comments=text" -Database transactions ChopBlanks 1 diff --git a/dist/barry/pgsql/userdb.pgsql b/dist/barry/pgsql/userdb.pgsql deleted file mode 100644 index 6e87032ec..000000000 --- a/dist/barry/pgsql/userdb.pgsql +++ /dev/null @@ -1,60 +0,0 @@ -Database userdb userdb.txt __SQLDSN__ -#ifdef SQLUSER -Database userdb USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database userdb PASS __SQLPASS__ -#endif -Database userdb COLUMN_DEF "code=VARCHAR(20) NOT NULL PRIMARY KEY" -Database userdb COLUMN_DEF "password=VARCHAR(20)" -Database userdb COLUMN_DEF "acl=text" -Database userdb COLUMN_DEF "mod_time=timestamp DEFAULT '2000-01-01'" -Database userdb COLUMN_DEF "s_nickname=text" -Database userdb COLUMN_DEF "company=VARCHAR(30)" -Database userdb COLUMN_DEF "fname=VARCHAR(20)" -Database userdb COLUMN_DEF "lname=VARCHAR(30)" -Database userdb COLUMN_DEF "address1=VARCHAR(64)" -Database userdb COLUMN_DEF "address2=VARCHAR(64)" -Database userdb COLUMN_DEF "address3=VARCHAR(64)" -Database userdb COLUMN_DEF "city=VARCHAR(30)" -Database userdb COLUMN_DEF "state=VARCHAR(10)" -Database userdb COLUMN_DEF "zip=VARCHAR(10)" -Database userdb COLUMN_DEF "country=VARCHAR(10)" -Database userdb COLUMN_DEF "phone_day=VARCHAR(20)" -Database userdb COLUMN_DEF "mv_shipmode=VARCHAR(64)" -Database userdb COLUMN_DEF "b_nickname=text" -Database userdb COLUMN_DEF "b_fname=VARCHAR(20)" -Database userdb COLUMN_DEF "b_lname=VARCHAR(30)" -Database userdb COLUMN_DEF "b_address1=VARCHAR(64)" -Database userdb COLUMN_DEF "b_address2=VARCHAR(64)" -Database userdb COLUMN_DEF "b_address3=VARCHAR(64)" -Database userdb COLUMN_DEF "b_city=VARCHAR(30)" -Database userdb COLUMN_DEF "b_state=VARCHAR(10)" -Database userdb COLUMN_DEF "b_zip=VARCHAR(10)" -Database userdb COLUMN_DEF "b_country=VARCHAR(10)" -Database userdb COLUMN_DEF "b_phone=VARCHAR(20)" -Database userdb COLUMN_DEF "mv_credit_card_type=VARCHAR(16)" -Database userdb COLUMN_DEF "mv_credit_card_exp_month=VARCHAR(2)" -Database userdb COLUMN_DEF "mv_credit_card_exp_year=VARCHAR(4)" -Database userdb COLUMN_DEF "p_nickname=text" -Database userdb COLUMN_DEF "email=VARCHAR(42)" -Database userdb COLUMN_DEF "fax=VARCHAR(20)" -Database userdb COLUMN_DEF "phone_night=VARCHAR(20)" -Database userdb COLUMN_DEF "fax_order=VARCHAR(2)" -Database userdb COLUMN_DEF "address_book=TEXT" -Database userdb COLUMN_DEF "accounts=TEXT" -Database userdb COLUMN_DEF "preferences=TEXT" -Database userdb COLUMN_DEF "carts=TEXT" -Database userdb COLUMN_DEF "owner=VARCHAR(20)" -Database userdb COLUMN_DEF "file_acl=TEXT" -Database userdb COLUMN_DEF "db_acl=TEXT" -Database userdb COLUMN_DEF "order_numbers=TEXT" -Database userdb COLUMN_DEF "email_copy=VARCHAR(1)" -Database userdb COLUMN_DEF "mail_list=varchar(64)" -Database userdb COLUMN_DEF "project_id=VARCHAR(20)" -Database userdb COLUMN_DEF "account_id=VARCHAR(20)" -Database userdb COLUMN_DEF "order_dest=VARCHAR(32)" -Database userdb ChopBlanks 1 - -# Prevent problems with abstime representation -UserDB default time_field none diff --git a/dist/barry/products/2ndDayAir.csv b/dist/barry/products/2ndDayAir.csv deleted file mode 100644 index e70ceeb94..000000000 --- a/dist/barry/products/2ndDayAir.csv +++ /dev/null @@ -1,152 +0,0 @@ -Exceed,202,203,204,205,206,207,208,224,225,226 -Letter,6.20,6.50,6.70,7.00,7.30,7.60,7.80,11.10,11.10,15.50 -1,6.40,6.70,7.20,7.80,8.30,8.80,9.10,13.20,13.20,24.20 -2,6.60,7.20,8.00,8.80,9.60,10.20,10.50,14.60,14.60,25.60 -3,7.10,7.70,8.90,10.00,11.00,11.60,12.00,16.10,16.10,27.10 -4,7.60,8.20,9.90,11.20,12.30,13.10,13.60,17.60,17.60,28.60 -5,8.20,8.90,10.80,12.50,13.80,14.60,15.30,19.30,19.30,30.30 -6,8.90,9.70,11.60,13.60,15.30,16.20,17.10,20.90,20.90,31.90 -7,9.40,10.50,12.60,14.80,16.90,18.00,18.90,22.40,22.40,33.40 -8,9.90,11.30,13.60,16.10,18.60,19.80,20.70,24.00,24.00,35.00 -9,10.40,12.00,14.60,17.30,20.40,21.60,22.50,25.80,25.80,36.80 -10,10.90,12.70,15.60,18.50,22.10,23.40,24.30,27.60,27.60,38.60 -11,11.40,13.40,16.50,19.50,23.80,25.10,26.00,29.20,29.20,40.20 -12,12.10,14.10,17.30,20.70,25.30,26.60,27.50,30.50,30.50,41.50 -13,12.90,14.90,18.10,22.00,26.60,27.90,29.00,32.00,32.00,43.00 -14,13.50,15.50,19.10,23.20,27.90,29.20,30.30,33.30,33.30,44.30 -15,14.00,16.00,20.00,24.30,29.40,30.70,31.80,34.80,34.80,45.80 -16,14.40,16.70,21.00,25.30,30.90,32.30,33.40,36.40,36.40,47.40 -17,14.90,17.40,22.00,26.30,32.40,34.10,35.20,38.20,38.20,49.20 -18,15.40,17.90,22.80,27.30,34.00,35.90,37.00,40.00,40.00,51.00 -19,15.90,18.40,23.50,28.40,35.40,37.50,38.60,41.60,41.60,52.60 -20,16.50,19.10,24.30,29.40,36.90,39.00,40.10,42.90,42.90,53.90 -21,17.00,19.90,25.20,30.40,38.40,40.60,41.70,44.20,44.20,55.20 -22,17.50,20.60,26.00,31.40,40.00,42.20,43.40,45.70,45.70,56.70 -23,18.00,21.20,26.80,32.40,41.40,43.70,45.00,47.30,47.30,58.30 -24,18.50,21.90,27.60,33.40,42.70,45.30,46.60,48.90,48.90,59.90 -25,19.00,22.50,28.30,34.60,44.00,46.80,48.20,50.50,50.50,61.50 -26,19.60,23.10,29.20,35.80,45.30,48.30,49.70,52.00,52.00,63.00 -27,20.30,23.80,30.00,36.90,46.60,49.70,51.20,53.50,53.50,64.50 -28,21.00,24.50,30.90,37.90,47.90,51.00,52.80,55.10,55.10,66.10 -29,21.50,25.10,31.70,38.90,49.20,52.30,54.30,56.60,56.60,67.60 -30,22.00,25.80,32.70,40.00,50.70,53.80,55.80,57.80,57.80,68.80 -31,22.50,26.50,33.70,41.00,52.10,55.30,57.30,59.10,59.10,70.10 -32,23.00,27.10,34.70,42.00,53.40,56.90,58.90,60.40,60.40,71.40 -33,23.50,27.60,35.50,43.00,54.90,58.50,60.50,62.00,62.00,73.00 -34,24.00,28.30,36.20,44.10,56.20,60.10,62.10,63.40,63.40,74.40 -35,24.50,29.10,37.00,45.10,57.70,61.70,63.70,64.70,64.70,75.70 -36,25.00,29.80,37.80,46.10,59.10,63.20,65.30,66.10,66.10,77.10 -37,25.50,30.40,38.60,47.20,60.40,64.80,66.90,67.40,67.40,78.40 -38,26.00,30.90,39.60,48.20,61.70,66.40,68.50,68.80,68.80,79.80 -39,26.70,31.60,40.40,49.20,63.20,67.90,70.00,70.30,70.30,81.30 -40,27.50,32.40,41.20,50.30,64.70,69.50,71.60,71.90,71.90,82.90 -41,28.20,33.10,41.90,51.30,66.10,71.00,73.10,73.40,73.40,84.40 -42,28.80,33.80,42.60,52.30,67.40,72.50,74.60,74.90,74.90,85.90 -43,29.30,34.50,43.40,53.30,68.70,73.90,76.00,76.30,76.30,87.30 -44,29.80,35.00,44.20,54.10,70.00,75.40,77.50,77.80,77.80,88.80 -45,30.30,35.70,44.90,54.80,71.30,76.80,78.90,79.20,79.20,90.20 -46,30.80,36.30,45.80,55.70,72.80,78.30,80.40,80.70,80.70,91.70 -47,31.30,37.00,46.60,56.50,74.20,79.90,82.00,82.30,82.30,93.30 -48,32.00,37.80,47.40,57.30,75.50,81.50,83.60,83.90,83.90,94.90 -49,32.60,38.50,48.20,58.30,76.80,83.00,85.10,85.40,85.40,96.40 -50,33.10,39.10,49.00,59.30,78.10,84.30,86.40,86.70,86.70,97.70 -51,33.60,39.60,49.80,60.30,79.40,85.80,87.90,88.20,88.20,99.20 -52,34.10,40.30,50.50,61.30,80.70,87.20,89.30,89.60,89.60,100.60 -53,34.80,41.10,51.30,62.40,82.00,88.50,90.60,90.90,90.90,101.90 -54,35.30,41.90,52.10,63.40,83.30,89.80,91.90,92.20,92.20,103.20 -55,35.90,42.50,52.80,64.40,84.60,91.30,93.40,93.70,93.70,104.70 -56,36.40,43.00,53.60,65.50,85.90,92.90,95.00,95.30,95.30,106.30 -57,36.90,43.70,54.60,66.50,87.20,94.40,96.50,96.80,96.80,107.80 -58,37.40,44.20,55.40,67.50,88.50,95.70,98.00,98.30,98.30,109.30 -59,37.90,44.70,56.20,68.60,90.00,97.20,99.50,99.80,99.80,110.80 -60,38.40,45.30,57.20,69.60,91.30,98.80,101.10,101.40,101.40,112.40 -61,39.10,46.00,58.00,70.60,92.60,100.40,102.70,103.00,103.00,114.00 -62,39.90,46.80,58.80,71.70,94.00,102.00,104.40,104.70,104.70,115.70 -63,40.60,47.50,59.50,72.70,95.30,103.80,106.20,106.50,106.50,117.50 -64,41.20,48.20,60.20,73.70,96.60,105.40,108.00,108.30,108.30,119.30 -65,41.70,48.90,61.00,74.80,98.10,106.90,109.80,110.10,110.10,121.10 -66,42.20,49.50,62.00,76.00,99.70,108.50,111.60,111.90,111.90,122.90 -67,42.70,50.20,62.80,77.30,101.20,110.00,113.20,113.50,113.50,124.50 -68,43.20,50.90,63.80,78.60,102.50,111.50,114.80,115.10,115.10,126.10 -69,43.70,51.60,64.80,79.90,104.00,113.00,116.30,116.60,116.60,127.60 -70,44.20,52.30,65.60,81.20,105.70,114.70,118.00,118.30,118.30,129.30 -71,44.90,53.10,66.40,82.50,107.20,116.20,119.50,119.80,119.80,130.80 -72,45.50,53.90,67.40,83.80,108.80,117.80,121.10,121.40,121.40,132.40 -73,46.00,54.60,68.40,85.10,110.30,119.30,122.80,123.10,123.10,134.10 -74,46.50,55.20,69.20,86.30,111.60,120.80,124.40,124.70,124.70,135.70 -75,47.20,55.90,70.20,87.40,112.90,122.10,126.00,126.30,126.30,137.30 -76,47.80,56.50,71.00,88.40,114.20,123.60,127.50,127.80,127.80,138.80 -77,48.50,57.20,71.80,89.50,115.70,125.20,129.10,129.40,129.40,140.40 -78,49.00,57.90,72.80,90.70,117.10,126.70,130.60,130.90,130.90,141.90 -79,49.70,58.60,73.80,92.00,118.60,128.30,132.20,132.50,132.50,143.50 -80,50.30,59.30,74.80,93.30,120.00,129.90,133.80,134.10,134.10,145.10 -81,50.80,60.00,75.60,94.40,121.50,131.40,135.30,135.50,135.50,146.50 -82,51.30,60.70,76.40,95.40,122.80,133.00,136.90,137.10,137.10,148.10 -83,51.80,61.40,77.40,96.40,124.10,134.50,138.50,138.70,138.70,149.70 -84,52.50,62.10,78.20,97.50,125.40,136.00,140.00,140.20,140.20,151.20 -85,53.10,62.80,79.20,98.70,126.70,137.40,141.60,141.80,141.80,152.80 -86,53.60,63.40,80.20,100.00,128.00,138.70,143.10,143.30,143.30,154.30 -87,54.10,64.10,81.00,101.10,129.50,140.20,144.60,144.80,144.80,155.80 -88,54.80,64.80,81.70,102.10,130.90,141.70,146.20,146.40,146.40,157.40 -89,55.50,65.50,82.50,103.10,132.20,143.30,147.80,148.00,148.00,159.00 -90,56.10,66.10,83.40,104.10,133.70,144.90,149.50,149.70,149.70,160.70 -91,56.70,66.90,84.20,105.30,135.20,146.50,151.10,151.30,151.30,162.30 -92,57.40,67.60,85.00,106.40,136.60,148.00,152.70,152.90,152.90,163.90 -93,57.90,68.30,85.80,107.50,138.10,149.50,154.20,154.40,154.40,165.40 -94,58.40,68.90,86.80,108.50,139.50,151.00,155.80,156.00,156.00,167.00 -95,58.90,69.60,87.80,109.50,140.80,152.50,157.30,157.50,157.50,168.50 -96,59.40,70.20,88.80,110.60,142.10,154.10,158.90,159.10,159.10,170.10 -97,60.10,70.90,89.60,111.60,143.40,155.60,160.40,160.60,160.60,171.60 -98,60.70,71.50,90.40,112.60,144.70,156.90,161.70,161.90,161.90,172.90 -99,61.20,72.00,91.10,113.70,146.00,158.30,163.20,163.40,163.40,174.40 -100,61.70,72.70,91.90,114.70,147.30,159.60,164.50,164.70,164.70,175.70 -101,62.40,73.50,92.90,115.70,148.60,161.10,166.00,166.20,166.20,177.20 -102,62.90,74.30,93.70,116.80,150.10,162.60,167.60,167.80,167.80,178.80 -103,63.40,74.90,94.40,117.80,151.60,164.10,169.10,169.30,169.30,180.30 -104,63.90,75.60,95.20,118.80,153.10,165.60,170.60,170.80,170.80,181.80 -105,64.40,76.10,96.00,119.90,154.70,167.20,172.20,172.40,172.40,183.40 -106,64.90,76.80,96.80,121.10,156.30,168.90,173.90,174.10,174.10,185.10 -107,65.60,77.60,97.80,122.20,157.70,170.60,175.60,175.80,175.80,186.80 -108,66.20,78.30,98.70,123.40,159.20,172.10,177.20,177.40,177.40,188.40 -109,66.70,78.90,99.50,124.50,160.70,173.60,178.70,178.90,178.90,189.90 -110,67.40,79.60,100.30,125.50,162.10,175.10,180.20,180.40,180.40,191.40 -111,67.90,80.40,101.30,126.60,163.60,176.70,181.80,182.00,182.00,193.00 -112,68.40,81.20,102.10,127.80,165.20,178.30,183.40,183.60,183.60,194.60 -113,69.10,81.90,103.10,128.90,166.60,179.80,185.10,185.30,185.30,196.30 -114,69.90,82.70,103.90,130.10,167.90,181.50,186.80,187.00,187.00,198.00 -115,70.50,83.50,104.90,131.20,169.20,183.20,188.50,188.70,188.70,199.70 -116,71.20,84.20,105.90,132.20,170.70,184.70,190.00,190.20,190.20,201.20 -117,71.70,84.90,106.70,133.30,172.20,186.20,191.70,191.90,191.90,202.90 -118,72.30,85.60,107.70,134.50,173.60,187.60,193.20,193.40,193.40,204.40 -119,73.00,86.30,108.50,135.80,174.90,189.20,194.80,195.00,195.00,206.00 -120,73.50,87.00,109.30,136.90,176.40,190.80,196.40,196.60,196.60,207.60 -121,74.00,87.80,110.30,137.90,177.90,192.30,198.10,198.30,198.30,209.30 -122,74.70,88.50,111.30,138.90,179.50,193.90,199.70,199.90,199.90,210.90 -123,75.30,89.10,112.10,140.00,180.90,195.70,201.50,201.70,201.70,212.70 -124,76.00,89.80,113.10,141.20,182.20,197.30,203.30,203.50,203.50,214.50 -125,76.70,90.60,114.00,142.50,183.70,199.10,205.10,205.30,205.30,216.30 -126,77.30,91.40,115.00,143.60,185.20,200.70,206.70,206.90,206.90,217.90 -127,77.80,92.00,116.00,144.60,186.60,202.20,208.20,208.40,208.40,219.40 -128,78.50,92.70,117.00,145.60,187.90,203.80,209.80,210.00,210.00,221.00 -129,79.00,93.40,117.80,146.70,189.20,205.30,211.30,211.50,211.50,222.50 -130,79.60,94.20,118.60,147.90,190.70,206.90,213.10,213.30,213.30,224.30 -131,80.30,95.00,119.60,149.20,192.20,208.50,214.70,214.90,214.90,225.90 -132,80.80,95.70,120.40,150.30,193.60,210.00,216.50,216.70,216.70,227.70 -133,81.40,96.50,121.20,151.30,195.10,211.60,218.10,218.30,218.30,229.30 -134,82.10,97.30,122.20,152.50,196.60,213.30,219.80,220.00,220.00,231.00 -135,82.60,97.90,123.20,153.60,198.20,215.00,221.50,221.70,221.70,232.70 -136,83.10,98.60,124.20,154.80,199.60,216.50,223.00,223.20,223.20,234.20 -137,83.80,99.30,125.00,155.90,200.90,218.10,224.60,224.80,224.80,235.80 -138,84.30,100.10,125.80,157.00,202.20,219.70,226.30,226.50,226.50,237.50 -139,84.90,100.80,126.80,158.20,203.70,221.20,227.80,228.00,228.00,239.00 -140,85.60,101.60,127.60,159.30,205.20,223.00,229.60,229.80,229.80,240.80 -141,86.30,102.30,128.60,160.50,206.80,224.60,231.20,231.40,231.40,242.40 -142,86.90,102.90,129.60,161.80,208.20,226.20,232.90,233.10,233.10,244.10 -143,87.60,103.60,130.40,163.00,209.50,227.70,234.40,234.60,234.60,245.60 -144,88.10,104.40,131.40,164.00,211.00,229.30,236.00,236.20,236.20,247.20 -145,88.70,105.10,132.40,165.00,212.50,230.80,237.60,237.80,237.80,248.80 -146,89.40,105.80,133.20,166.00,213.90,232.40,239.40,239.60,239.60,250.60 -147,90.10,106.50,134.00,167.00,215.40,234.00,241.00,241.20,241.20,252.20 -148,90.90,107.30,135.00,168.10,216.90,235.50,242.80,243.00,243.00,254.00 -149,91.50,108.00,136.00,169.30,218.50,237.30,244.60,244.80,244.80,255.80 -150,92.00,108.70,136.80,170.60,220.00,238.90,246.50,246.70,246.70,257.70 diff --git a/dist/barry/products/2ndDayAirAM.csv b/dist/barry/products/2ndDayAirAM.csv deleted file mode 100644 index ab0274ac1..000000000 --- a/dist/barry/products/2ndDayAirAM.csv +++ /dev/null @@ -1,152 +0,0 @@ -Exceed,242,243,244,245,246,247,248 -Letter,6.90,7.20,7.50,7.80,8.00,8.40,8.90 -1,7.10,7.50,7.90,8.80,9.30,9.90,10.20 -2,7.40,8.00,9.00,9.90,10.80,11.50,11.80 -3,7.90,8.50,10.00,11.00,12.30,13.10,13.60 -4,8.40,9.20,11.00,12.40,13.90,14.80,15.30 -5,9.10,10.00,12.00,13.90,15.40,16.50,17.10 -6,9.80,11.00,13.10,15.20,17.10,18.30,19.10 -7,10.50,11.80,14.10,16.60,18.90,20.10,21.20 -8,11.20,12.60,15.10,17.90,20.90,22.10,23.20 -9,11.70,13.60,16.30,19.40,22.70,24.20,25.30 -10,12.20,14.50,17.40,20.90,24.70,26.20,27.30 -11,12.90,15.20,18.40,22.20,26.50,28.00,29.10 -12,13.60,15.90,19.40,23.40,28.20,29.70,30.80 -13,14.40,16.70,20.50,24.70,29.70,31.20,32.40 -14,15.10,17.40,21.50,26.00,31.30,32.80,34.00 -15,15.80,18.10,22.50,27.20,33.00,34.50,35.70 -16,16.30,18.80,23.50,28.40,34.60,36.20,37.40 -17,16.80,19.40,24.50,29.50,36.30,38.10,39.30 -18,17.40,20.00,25.50,30.70,38.20,40.10,41.30 -19,18.10,20.70,26.30,31.90,40.00,41.90,43.10 -20,18.60,21.50,27.30,33.10,41.60,43.70,44.90 -21,19.10,22.30,28.30,34.20,43.30,45.50,46.90 -22,19.60,23.00,29.20,35.40,44.90,47.10,48.80 -23,20.30,23.70,30.20,36.40,46.40,48.90,50.60 -24,20.80,24.40,31.00,37.60,47.90,50.80,52.50 -25,21.30,25.20,32.00,38.90,49.30,52.50,54.20 -26,21.90,25.90,33.00,40.30,50.80,54.00,55.80 -27,22.60,26.60,33.80,41.50,52.10,55.70,57.50 -28,23.30,27.30,34.80,42.70,53.60,57.20,59.10 -29,24.00,28.20,35.80,43.70,55.20,58.80,60.80 -30,24.50,28.90,36.80,44.90,56.70,60.40,62.50 -31,25.20,29.60,37.90,46.00,58.40,62.10,64.20 -32,25.80,30.30,38.90,47.30,59.90,63.70,65.80 -33,26.30,30.90,39.90,48.40,61.40,65.50,67.60 -34,26.80,31.60,40.70,49.60,63.00,67.40,69.50 -35,27.50,32.40,41.50,50.60,64.50,69.20,71.30 -36,28.00,33.10,42.40,51.60,66.10,70.90,73.10 -37,28.50,34.00,43.30,52.80,67.70,72.60,74.80 -38,29.20,34.70,44.30,53.90,69.20,74.50,76.70 -39,30.00,35.50,45.30,55.10,70.70,76.20,78.40 -40,30.80,36.30,46.20,56.20,72.20,77.90,80.10 -41,31.50,37.00,47.20,57.40,73.90,79.70,81.90 -42,32.20,37.70,48.00,58.40,75.50,81.30,83.50 -43,32.80,38.40,48.70,59.40,77.00,82.90,85.10 -44,33.30,39.10,49.60,60.40,78.40,84.60,86.90 -45,33.80,39.80,50.40,61.40,79.90,86.20,88.50 -46,34.50,40.60,51.40,62.40,81.40,87.90,90.20 -47,35.10,41.30,52.40,63.40,83.10,89.60,91.90 -48,35.80,42.10,53.20,64.40,84.60,91.40,93.70 -49,36.30,42.80,54.20,65.40,86.00,93.00,95.30 -50,37.00,43.60,55.00,66.40,87.50,94.50,96.90 -51,37.60,44.40,55.80,67.60,89.00,96.00,98.50 -52,38.10,45.20,56.60,68.90,90.40,97.60,100.10 -53,38.80,45.90,57.50,70.00,91.90,99.20,101.70 -54,39.60,46.80,58.40,71.20,93.30,100.70,103.20 -55,40.20,47.60,59.40,72.20,94.80,102.30,104.80 -56,40.70,48.20,60.20,73.20,96.30,104.10,106.60 -57,41.40,48.90,61.20,74.40,97.70,105.70,108.20 -58,41.90,49.60,62.20,75.60,99.20,107.20,109.70 -59,42.40,50.10,63.20,76.80,100.70,108.90,111.40 -60,43.10,50.80,64.20,77.90,102.20,110.80,113.30 -61,43.90,51.60,65.00,79.10,103.80,112.60,115.10 -62,44.70,52.40,66.00,80.20,105.20,114.30,116.90 -63,45.40,53.10,66.80,81.50,106.80,116.00,118.90 -64,46.20,53.90,67.60,82.70,108.30,117.90,121.00 -65,46.80,54.60,68.60,84.00,109.90,119.60,123.10 -66,47.30,55.30,69.60,85.30,111.60,121.50,125.00 -67,47.80,56.10,70.60,86.80,113.20,123.30,126.80 -68,48.50,56.90,71.60,88.30,114.80,124.90,128.50 -69,49.00,57.60,72.60,89.60,116.60,126.70,130.40 -70,49.50,58.50,73.60,91.10,118.40,128.50,132.30 -71,50.20,59.50,74.60,92.40,120.10,130.30,134.10 -72,51.00,60.30,75.60,93.90,121.90,132.10,135.90 -73,51.70,61.00,76.60,95.20,123.50,133.80,137.60 -74,52.20,61.80,77.60,96.40,125.00,135.30,139.30 -75,52.90,62.50,78.60,97.70,126.50,136.80,141.10 -76,53.60,63.40,79.50,99.00,128.10,138.50,142.80 -77,54.30,64.10,80.50,100.30,129.60,140.40,144.70 -78,55.00,64.80,81.50,101.50,131.30,142.10,146.40 -79,55.70,65.70,82.50,102.80,133.00,143.80,148.10 -80,56.40,66.50,83.50,104.10,134.70,145.60,149.90 -81,56.90,67.20,84.50,105.50,136.20,147.40,151.70 -82,57.40,67.90,85.50,106.70,137.70,149.00,153.40 -83,58.10,68.60,86.60,108.00,139.20,150.70,155.20 -84,58.80,69.50,87.70,109.40,140.70,152.50,157.00 -85,59.40,70.20,88.70,110.60,142.00,154.20,158.70 -86,60.00,71.10,89.70,111.90,143.50,155.70,160.40 -87,60.70,71.80,90.70,113.20,145.00,157.20,162.10 -88,61.40,72.50,91.50,114.40,146.60,158.80,163.80 -89,62.10,73.40,92.50,115.50,148.10,160.60,165.70 -90,62.90,74.20,93.50,116.70,149.80,162.40,167.50 -91,63.50,74.90,94.50,117.90,151.30,164.30,169.40 -92,64.20,75.60,95.30,119.20,153.00,166.00,171.10 -93,64.80,76.30,96.30,120.40,154.50,167.70,172.80 -94,65.50,77.10,97.30,121.60,156.20,169.40,174.50 -95,66.00,77.80,98.30,122.60,157.70,171.00,176.10 -96,66.50,78.60,99.30,123.70,159.30,172.70,177.90 -97,67.20,79.30,100.30,124.90,160.80,174.40,179.70 -98,67.90,80.10,101.10,126.10,162.30,176.00,181.30 -99,68.50,80.80,102.10,127.30,163.60,177.50,182.80 -100,69.00,81.50,102.90,128.40,165.10,179.00,184.30 -101,69.70,82.20,103.80,129.60,166.60,180.50,186.00 -102,70.40,83.00,104.80,130.70,168.10,182.20,187.80 -103,71.00,83.80,105.60,131.90,169.80,184.00,189.60 -104,71.50,84.50,106.60,133.00,171.60,185.80,191.40 -105,72.20,85.30,107.40,134.30,173.20,187.50,193.10 -106,72.70,86.00,108.40,135.50,175.00,189.30,194.90 -107,73.40,86.80,109.40,136.90,176.70,191.00,196.70 -108,74.00,87.50,110.40,138.10,178.20,192.80,198.50 -109,74.80,88.30,111.40,139.40,179.90,194.50,200.20 -110,75.50,89.10,112.20,140.50,181.60,196.30,202.00 -111,76.00,90.10,113.20,141.80,183.30,198.00,203.80 -112,76.70,90.90,114.30,143.00,185.00,199.70,205.60 -113,77.40,91.90,115.30,144.40,186.60,201.50,207.40 -114,78.20,92.70,116.30,145.60,188.20,203.30,209.30 -115,79.10,93.60,117.30,146.90,189.80,205.20,211.20 -116,79.80,94.40,118.30,148.20,191.30,206.90,213.00 -117,80.30,95.10,119.40,149.50,192.80,208.70,214.80 -118,80.90,95.80,120.40,150.70,194.40,210.40,216.50 -119,81.60,96.70,121.40,152.00,196.00,212.00,218.30 -120,82.30,97.50,122.50,153.40,197.50,213.80,220.20 -121,82.80,98.30,123.50,154.60,199.20,215.60,222.00 -122,83.50,99.00,124.50,155.80,200.80,217.40,223.90 -123,84.40,99.90,125.50,157.00,202.50,219.20,225.80 -124,85.10,100.60,126.60,158.20,204.10,221.10,227.80 -125,85.80,101.30,127.80,159.50,205.80,222.90,229.70 -126,86.50,102.10,128.80,160.90,207.30,224.70,231.50 -127,87.10,102.90,129.80,162.10,209.00,226.50,233.30 -128,87.80,103.90,130.80,163.30,210.50,228.40,235.20 -129,88.60,104.70,131.90,164.50,212.10,230.10,237.00 -130,89.20,105.50,132.90,165.70,213.60,231.80,238.70 -131,89.90,106.50,133.90,167.00,215.10,233.60,240.60 -132,90.50,107.30,135.00,168.30,216.80,235.30,242.60 -133,91.30,108.10,136.00,169.60,218.50,237.20,244.50 -134,92.00,108.80,137.00,170.80,220.30,239.20,246.50 -135,92.50,109.70,138.00,172.10,221.90,241.00,248.30 -136,93.20,110.40,139.00,173.30,223.50,242.70,250.00 -137,93.90,111.30,140.10,174.70,225.10,244.50,251.80 -138,94.50,112.10,141.10,176.10,226.70,246.40,253.70 -139,95.30,112.90,142.10,177.30,228.20,248.10,255.40 -140,96.00,113.90,143.20,178.60,229.90,249.90,257.30 -141,96.70,114.70,144.20,179.80,231.50,251.80,259.20 -142,97.30,115.40,145.20,181.10,233.20,253.60,261.00 -143,98.00,116.10,146.20,182.60,234.70,255.30,262.70 -144,98.70,116.90,147.20,184.00,236.20,257.00,264.50 -145,99.60,117.80,148.20,185.20,237.90,258.70,266.30 -146,100.30,118.60,149.30,186.30,239.60,260.40,268.10 -147,101.00,119.30,150.40,187.50,241.20,262.20,270.00 -148,101.80,120.10,151.40,188.70,242.90,264.00,272.00 -149,102.40,121.00,152.40,189.90,244.80,265.90,274.10 -150,103.10,121.70,153.40,191.20,246.60,267.70,276.30 diff --git a/dist/barry/products/3DaySelect.csv b/dist/barry/products/3DaySelect.csv deleted file mode 100644 index 6c41e665a..000000000 --- a/dist/barry/products/3DaySelect.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,302,303,304,305,306,307,308 -1,4.40,4.60,4.90,5.20,6.00,6.40,6.60 -2,4.60,4.80,5.20,5.90,6.90,7.40,7.70 -3,5.00,5.30,5.90,6.60,8.00,8.50,8.90 -4,5.40,5.80,6.50,7.30,8.90,9.40,10.00 -5,5.70,6.30,7.10,8.00,9.80,10.40,11.10 -6,6.10,6.80,7.70,8.70,10.70,11.30,12.10 -7,6.50,7.30,8.30,9.40,11.50,12.40,13.30 -8,6.90,7.80,8.90,10.10,12.40,13.40,14.40 -9,7.30,8.30,9.50,10.80,13.30,14.40,15.50 -10,7.70,8.80,10.10,11.40,14.10,15.40,16.70 -11,8.10,9.30,10.70,12.10,15.10,16.50,17.80 -12,8.50,9.80,11.30,12.80,16.00,17.50,19.00 -13,8.90,10.30,11.90,13.50,16.90,18.50,20.10 -14,9.30,10.80,12.50,14.20,17.80,19.50,21.30 -15,9.70,11.30,13.10,15.00,18.70,20.50,22.40 -16,10.10,11.80,13.80,15.70,19.60,21.50,23.50 -17,10.50,12.20,14.40,16.50,20.50,22.50,24.60 -18,10.90,12.70,15.10,17.20,21.50,23.60,25.70 -19,11.30,13.20,15.70,17.90,22.40,24.60,26.80 -20,11.70,13.70,16.30,18.60,23.30,25.60,27.80 -21,12.10,14.20,16.90,19.30,24.10,26.50,28.80 -22,12.50,14.70,17.50,20.00,24.90,27.40,29.90 -23,12.90,15.20,18.10,20.80,25.80,28.40,30.90 -24,13.30,15.70,18.70,21.50,26.70,29.40,32.00 -25,13.80,16.20,19.30,22.20,27.70,30.40,33.10 -26,14.20,16.70,19.90,22.90,28.60,31.40,34.20 -27,14.60,17.20,20.60,23.60,29.60,32.50,35.40 -28,15.00,17.60,21.20,24.30,30.50,33.50,36.50 -29,15.40,18.10,21.80,25.00,31.40,34.50,37.60 -30,15.80,18.60,22.40,25.70,32.40,35.50,38.70 -31,16.20,19.10,23.00,26.40,33.30,36.50,39.70 -32,16.60,19.60,23.70,27.10,34.30,37.50,40.80 -33,17.00,20.10,24.30,27.80,35.10,38.40,41.90 -34,17.40,20.60,24.90,28.50,35.90,39.30,42.90 -35,17.80,21.10,25.50,29.20,36.80,40.20,43.90 -36,18.20,21.60,26.10,29.90,37.60,41.10,44.90 -37,18.60,22.10,26.70,30.60,38.50,42.00,45.80 -38,19.00,22.60,27.20,31.30,39.30,42.90,46.80 -39,19.40,23.00,27.80,32.00,40.10,43.80,47.80 -40,19.80,23.50,28.40,32.70,41.00,44.70,48.80 -41,20.20,24.00,29.00,33.40,41.80,45.60,49.90 -42,20.60,24.50,29.60,34.10,42.80,46.70,51.10 -43,21.00,25.00,30.20,34.80,43.70,47.70,52.20 -44,21.40,25.50,30.80,35.50,44.60,48.60,53.30 -45,21.80,26.00,31.40,36.30,45.50,49.60,54.40 -46,22.20,26.50,32.00,37.00,46.30,50.60,55.50 -47,22.60,27.00,32.60,37.70,47.30,51.70,56.60 -48,23.00,27.50,33.20,38.40,48.10,52.60,57.70 -49,23.40,28.00,33.80,39.10,48.90,53.50,58.70 -50,23.80,28.50,34.40,39.80,49.90,54.60,59.80 -51,24.20,29.00,35.00,40.50,50.80,55.60,60.90 -52,24.60,29.40,35.60,41.20,51.70,56.60,62.00 -53,25.00,29.90,36.20,41.90,52.50,57.60,63.10 -54,25.40,30.40,36.80,42.60,53.40,58.60,64.30 -55,25.80,30.90,37.40,43.30,54.40,59.70,65.50 -56,26.20,31.40,38.00,44.00,55.30,60.70,66.60 -57,26.60,31.90,38.60,44.70,56.30,61.80,67.80 -58,27.00,32.40,39.20,45.40,57.20,62.80,68.90 -59,27.40,32.90,39.80,46.10,58.20,63.90,70.10 -60,27.80,33.40,40.40,46.80,59.10,64.90,71.30 -61,28.20,33.90,41.00,47.50,60.10,66.00,72.50 -62,28.60,34.40,41.60,48.20,61.00,67.00,73.70 -63,29.00,34.90,42.20,48.90,61.90,67.90,74.80 -64,29.40,35.30,42.80,49.60,62.90,69.00,75.90 -65,29.80,35.80,43.40,50.30,63.80,69.90,77.00 -66,30.30,36.30,44.00,51.00,64.80,71.00,78.10 -67,30.70,36.80,44.60,51.70,65.70,72.00,79.20 -68,31.10,37.30,45.20,52.40,66.70,73.10,80.30 -69,31.50,37.80,45.80,53.10,67.50,74.00,81.30 -70,31.90,38.30,46.40,53.80,68.30,75.00,82.40 -71,32.30,38.80,47.00,54.50,69.30,76.00,83.60 -72,32.70,39.30,47.60,55.20,70.30,77.10,84.70 -73,33.10,39.80,48.20,55.90,71.20,78.00,85.80 -74,33.50,40.30,48.80,56.60,72.10,79.00,86.90 -75,33.90,40.80,49.40,57.30,73.00,80.00,88.00 -76,34.30,41.30,50.00,58.00,73.90,81.00,89.10 -77,34.70,41.80,50.70,58.70,74.80,82.10,90.20 -78,35.10,42.30,51.30,59.40,75.70,83.10,91.40 -79,35.50,42.80,51.90,60.20,76.60,84.00,92.50 -80,35.90,43.20,52.50,61.00,77.50,84.90,93.60 -81,36.30,43.70,53.10,61.70,78.30,86.00,94.60 -82,36.70,44.20,53.70,62.40,79.10,87.00,95.80 -83,37.10,44.70,54.30,63.10,80.10,88.00,96.90 -84,37.50,45.20,54.90,63.80,81.00,89.00,98.00 -85,37.90,45.70,55.50,64.50,81.80,89.90,99.00 -86,38.30,46.20,56.10,65.20,82.80,91.00,100.20 -87,38.70,46.70,56.70,65.90,83.60,92.00,101.30 -88,39.10,47.20,57.30,66.60,84.50,93.00,102.50 -89,39.50,47.70,57.90,67.30,85.40,94.10,103.50 -90,39.90,48.20,58.50,68.00,86.40,95.10,104.70 -91,40.30,48.60,59.10,68.70,87.20,96.10,105.80 -92,40.70,49.10,59.70,69.50,88.10,97.10,106.90 -93,41.10,49.60,60.30,70.20,89.00,98.10,108.00 -94,41.50,50.10,61.00,70.90,89.90,99.10,109.10 -95,41.90,50.60,61.60,71.60,90.90,100.20,110.20 -96,42.30,51.10,62.20,72.30,91.80,101.10,111.30 -97,42.70,51.60,62.80,73.00,92.70,102.10,112.40 -98,43.10,52.10,63.40,73.70,93.70,103.10,113.50 -99,43.50,52.60,64.00,74.40,94.50,104.00,114.50 -100,44.00,53.10,64.70,75.10,95.40,105.00,115.60 -101,44.40,53.50,65.30,75.80,96.30,105.90,116.70 -102,44.80,54.00,65.90,76.50,97.30,107.00,117.90 -103,45.20,54.50,66.50,77.20,98.10,108.00,119.10 -104,45.60,55.00,67.10,77.90,98.90,108.90,120.10 -105,46.00,55.50,67.70,78.60,99.90,110.00,121.20 -106,46.40,56.00,68.30,79.30,100.70,111.00,122.30 -107,46.80,56.50,68.90,80.00,101.70,112.10,123.50 -108,47.20,57.00,69.50,80.70,102.60,113.00,124.60 -109,47.60,57.50,70.10,81.40,103.50,114.00,125.70 -110,48.00,58.00,70.70,82.10,104.50,115.10,126.80 -111,48.40,58.50,71.30,82.80,105.40,116.00,128.00 -112,48.80,59.00,71.90,83.50,106.30,117.00,129.10 -113,49.20,59.40,72.50,84.30,107.20,118.00,130.20 -114,49.60,59.90,73.10,85.00,108.20,119.00,131.30 -115,50.00,60.40,73.70,85.70,109.00,119.90,132.30 -116,50.40,61.00,74.30,86.40,109.90,120.80,133.40 -117,50.80,61.50,74.90,87.10,110.90,121.90,134.50 -118,51.20,62.00,75.50,87.80,111.70,122.90,135.60 -119,51.60,62.40,76.10,88.50,112.70,123.90,136.70 -120,52.00,62.90,76.70,89.20,113.60,124.90,137.80 -121,52.40,63.40,77.30,89.90,114.50,125.80,138.90 -122,52.80,63.90,77.90,90.60,115.40,126.70,139.90 -123,53.20,64.40,78.50,91.30,116.30,127.70,141.10 -124,53.60,64.90,79.10,92.00,117.20,128.70,142.20 -125,54.00,65.40,79.70,92.70,118.10,129.60,143.30 -126,54.40,65.90,80.30,93.50,119.10,130.70,144.40 -127,54.80,66.40,80.90,94.20,120.00,131.60,145.50 -128,55.20,66.90,81.50,94.90,120.80,132.50,146.50 -129,55.60,67.40,82.10,95.60,121.80,133.60,147.70 -130,56.00,67.90,82.70,96.30,122.70,134.50,148.80 -131,56.40,68.30,83.30,97.00,123.60,135.50,150.00 -132,56.80,68.80,83.90,97.70,124.50,136.50,151.10 -133,57.20,69.30,84.50,98.40,125.30,137.40,152.10 -134,57.60,69.80,85.10,99.10,126.20,138.40,153.20 -135,58.00,70.30,85.70,99.80,127.10,139.40,154.40 -136,58.40,70.80,86.30,100.50,128.00,140.40,155.50 -137,58.80,71.30,86.90,101.30,128.90,141.40,156.60 -138,59.20,71.80,87.50,102.00,129.80,142.40,157.60 -139,59.60,72.30,88.10,102.70,130.70,143.40,158.80 -140,60.00,72.80,88.70,103.40,131.50,144.40,159.90 -141,60.50,73.30,89.30,104.10,132.50,145.40,161.00 -142,60.90,73.80,89.90,104.80,133.40,146.40,162.10 -143,61.30,74.20,90.50,105.50,134.30,147.40,163.20 -144,61.70,74.70,91.10,106.20,135.10,148.30,164.30 -145,62.10,75.20,91.70,106.90,136.00,149.30,165.30 -146,62.50,75.70,92.30,107.60,136.90,150.40,166.50 -147,62.90,76.20,92.90,108.30,137.80,151.30,167.50 -148,63.30,76.70,93.50,109.00,138.80,152.40,168.70 -149,63.70,77.20,94.10,109.70,139.60,153.30,169.80 -150,64.10,77.70,94.70,110.40,140.40,154.40,171.00 diff --git a/dist/barry/products/3DaySelectRes.csv b/dist/barry/products/3DaySelectRes.csv deleted file mode 100644 index f7fb11675..000000000 --- a/dist/barry/products/3DaySelectRes.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,302,303,304,305,306,307,308 -1,5.40,5.60,5.90,6.20,7.00,7.40,7.60 -2,5.60,5.80,6.20,6.90,7.90,8.40,8.70 -3,6.00,6.30,6.90,7.60,9.00,9.50,9.90 -4,6.40,6.80,7.50,8.30,9.90,10.40,11.00 -5,6.70,7.30,8.10,9.00,10.80,11.40,12.10 -6,7.10,7.80,8.70,9.70,11.70,12.30,13.10 -7,7.50,8.30,9.30,10.40,12.50,13.40,14.30 -8,7.90,8.80,9.90,11.10,13.40,14.40,15.40 -9,8.30,9.30,10.50,11.80,14.30,15.40,16.50 -10,8.70,9.80,11.10,12.40,15.10,16.40,17.70 -11,9.10,10.30,11.70,13.10,16.10,17.50,18.80 -12,9.50,10.80,12.30,13.80,17.00,18.50,20.00 -13,9.90,11.30,12.90,14.50,17.90,19.50,21.10 -14,10.30,11.80,13.50,15.20,18.80,20.50,22.30 -15,10.70,12.30,14.10,16.00,19.70,21.50,23.40 -16,11.10,12.80,14.80,16.70,20.60,22.50,24.50 -17,11.50,13.20,15.40,17.50,21.50,23.50,25.60 -18,11.90,13.70,16.10,18.20,22.50,24.60,26.70 -19,12.30,14.20,16.70,18.90,23.40,25.60,27.80 -20,12.70,14.70,17.30,19.60,24.30,26.60,28.80 -21,13.10,15.20,17.90,20.30,25.10,27.50,29.80 -22,13.50,15.70,18.50,21.00,25.90,28.40,30.90 -23,13.90,16.20,19.10,21.80,26.80,29.40,31.90 -24,14.30,16.70,19.70,22.50,27.70,30.40,33.00 -25,14.80,17.20,20.30,23.20,28.70,31.40,34.10 -26,15.20,17.70,20.90,23.90,29.60,32.40,35.20 -27,15.60,18.20,21.60,24.60,30.60,33.50,36.40 -28,16.00,18.60,22.20,25.30,31.50,34.50,37.50 -29,16.40,19.10,22.80,26.00,32.40,35.50,38.60 -30,16.80,19.60,23.40,26.70,33.40,36.50,39.70 -31,17.20,20.10,24.00,27.40,34.30,37.50,40.70 -32,17.60,20.60,24.70,28.10,35.30,38.50,41.80 -33,18.00,21.10,25.30,28.80,36.10,39.40,42.90 -34,18.40,21.60,25.90,29.50,36.90,40.30,43.90 -35,18.80,22.10,26.50,30.20,37.80,41.20,44.90 -36,19.20,22.60,27.10,30.90,38.60,42.10,45.90 -37,19.60,23.10,27.70,31.60,39.50,43.00,46.80 -38,20.00,23.60,28.20,32.30,40.30,43.90,47.80 -39,20.40,24.00,28.80,33.00,41.10,44.80,48.80 -40,20.80,24.50,29.40,33.70,42.00,45.70,49.80 -41,21.20,25.00,30.00,34.40,42.80,46.60,50.90 -42,21.60,25.50,30.60,35.10,43.80,47.70,52.10 -43,22.00,26.00,31.20,35.80,44.70,48.70,53.20 -44,22.40,26.50,31.80,36.50,45.60,49.60,54.30 -45,22.80,27.00,32.40,37.30,46.50,50.60,55.40 -46,23.20,27.50,33.00,38.00,47.30,51.60,56.50 -47,23.60,28.00,33.60,38.70,48.30,52.70,57.60 -48,24.00,28.50,34.20,39.40,49.10,53.60,58.70 -49,24.40,29.00,34.80,40.10,49.90,54.50,59.70 -50,24.80,29.50,35.40,40.80,50.90,55.60,60.80 -51,25.20,30.00,36.00,41.50,51.80,56.60,61.90 -52,25.60,30.40,36.60,42.20,52.70,57.60,63.00 -53,26.00,30.90,37.20,42.90,53.50,58.60,64.10 -54,26.40,31.40,37.80,43.60,54.40,59.60,65.30 -55,26.80,31.90,38.40,44.30,55.40,60.70,66.50 -56,27.20,32.40,39.00,45.00,56.30,61.70,67.60 -57,27.60,32.90,39.60,45.70,57.30,62.80,68.80 -58,28.00,33.40,40.20,46.40,58.20,63.80,69.90 -59,28.40,33.90,40.80,47.10,59.20,64.90,71.10 -60,28.80,34.40,41.40,47.80,60.10,65.90,72.30 -61,29.20,34.90,42.00,48.50,61.10,67.00,73.50 -62,29.60,35.40,42.60,49.20,62.00,68.00,74.70 -63,30.00,35.90,43.20,49.90,62.90,68.90,75.80 -64,30.40,36.30,43.80,50.60,63.90,70.00,76.90 -65,30.80,36.80,44.40,51.30,64.80,70.90,78.00 -66,31.30,37.30,45.00,52.00,65.80,72.00,79.10 -67,31.70,37.80,45.60,52.70,66.70,73.00,80.20 -68,32.10,38.30,46.20,53.40,67.70,74.10,81.30 -69,32.50,38.80,46.80,54.10,68.50,75.00,82.30 -70,32.90,39.30,47.40,54.80,69.30,76.00,83.40 -71,33.30,39.80,48.00,55.50,70.30,77.00,84.60 -72,33.70,40.30,48.60,56.20,71.30,78.10,85.70 -73,34.10,40.80,49.20,56.90,72.20,79.00,86.80 -74,34.50,41.30,49.80,57.60,73.10,80.00,87.90 -75,34.90,41.80,50.40,58.30,74.00,81.00,89.00 -76,35.30,42.30,51.00,59.00,74.90,82.00,90.10 -77,35.70,42.80,51.70,59.70,75.80,83.10,91.20 -78,36.10,43.30,52.30,60.40,76.70,84.10,92.40 -79,36.50,43.80,52.90,61.20,77.60,85.00,93.50 -80,36.90,44.20,53.50,62.00,78.50,85.90,94.60 -81,37.30,44.70,54.10,62.70,79.30,87.00,95.60 -82,37.70,45.20,54.70,63.40,80.10,88.00,96.80 -83,38.10,45.70,55.30,64.10,81.10,89.00,97.90 -84,38.50,46.20,55.90,64.80,82.00,90.00,99.00 -85,38.90,46.70,56.50,65.50,82.80,90.90,100.00 -86,39.30,47.20,57.10,66.20,83.80,92.00,101.20 -87,39.70,47.70,57.70,66.90,84.60,93.00,102.30 -88,40.10,48.20,58.30,67.60,85.50,94.00,103.50 -89,40.50,48.70,58.90,68.30,86.40,95.10,104.50 -90,40.90,49.20,59.50,69.00,87.40,96.10,105.70 -91,41.30,49.60,60.10,69.70,88.20,97.10,106.80 -92,41.70,50.10,60.70,70.50,89.10,98.10,107.90 -93,42.10,50.60,61.30,71.20,90.00,99.10,109.00 -94,42.50,51.10,62.00,71.90,90.90,100.10,110.10 -95,42.90,51.60,62.60,72.60,91.90,101.20,111.20 -96,43.30,52.10,63.20,73.30,92.80,102.10,112.30 -97,43.70,52.60,63.80,74.00,93.70,103.10,113.40 -98,44.10,53.10,64.40,74.70,94.70,104.10,114.50 -99,44.50,53.60,65.00,75.40,95.50,105.00,115.50 -100,45.00,54.10,65.70,76.10,96.40,106.00,116.60 -101,45.40,54.50,66.30,76.80,97.30,106.90,117.70 -102,45.80,55.00,66.90,77.50,98.30,108.00,118.90 -103,46.20,55.50,67.50,78.20,99.10,109.00,120.10 -104,46.60,56.00,68.10,78.90,99.90,109.90,121.10 -105,47.00,56.50,68.70,79.60,100.90,111.00,122.20 -106,47.40,57.00,69.30,80.30,101.70,112.00,123.30 -107,47.80,57.50,69.90,81.00,102.70,113.10,124.50 -108,48.20,58.00,70.50,81.70,103.60,114.00,125.60 -109,48.60,58.50,71.10,82.40,104.50,115.00,126.70 -110,49.00,59.00,71.70,83.10,105.50,116.10,127.80 -111,49.40,59.50,72.30,83.80,106.40,117.00,129.00 -112,49.80,60.00,72.90,84.50,107.30,118.00,130.10 -113,50.20,60.40,73.50,85.30,108.20,119.00,131.20 -114,50.60,60.90,74.10,86.00,109.20,120.00,132.30 -115,51.00,61.40,74.70,86.70,110.00,120.90,133.30 -116,51.40,62.00,75.30,87.40,110.90,121.80,134.40 -117,51.80,62.50,75.90,88.10,111.90,122.90,135.50 -118,52.20,63.00,76.50,88.80,112.70,123.90,136.60 -119,52.60,63.40,77.10,89.50,113.70,124.90,137.70 -120,53.00,63.90,77.70,90.20,114.60,125.90,138.80 -121,53.40,64.40,78.30,90.90,115.50,126.80,139.90 -122,53.80,64.90,78.90,91.60,116.40,127.70,140.90 -123,54.20,65.40,79.50,92.30,117.30,128.70,142.10 -124,54.60,65.90,80.10,93.00,118.20,129.70,143.20 -125,55.00,66.40,80.70,93.70,119.10,130.60,144.30 -126,55.40,66.90,81.30,94.50,120.10,131.70,145.40 -127,55.80,67.40,81.90,95.20,121.00,132.60,146.50 -128,56.20,67.90,82.50,95.90,121.80,133.50,147.50 -129,56.60,68.40,83.10,96.60,122.80,134.60,148.70 -130,57.00,68.90,83.70,97.30,123.70,135.50,149.80 -131,57.40,69.30,84.30,98.00,124.60,136.50,151.00 -132,57.80,69.80,84.90,98.70,125.50,137.50,152.10 -133,58.20,70.30,85.50,99.40,126.30,138.40,153.10 -134,58.60,70.80,86.10,100.10,127.20,139.40,154.20 -135,59.00,71.30,86.70,100.80,128.10,140.40,155.40 -136,59.40,71.80,87.30,101.50,129.00,141.40,156.50 -137,59.80,72.30,87.90,102.30,129.90,142.40,157.60 -138,60.20,72.80,88.50,103.00,130.80,143.40,158.60 -139,60.60,73.30,89.10,103.70,131.70,144.40,159.80 -140,61.00,73.80,89.70,104.40,132.50,145.40,160.90 -141,61.50,74.30,90.30,105.10,133.50,146.40,162.00 -142,61.90,74.80,90.90,105.80,134.40,147.40,163.10 -143,62.30,75.20,91.50,106.50,135.30,148.40,164.20 -144,62.70,75.70,92.10,107.20,136.10,149.30,165.30 -145,63.10,76.20,92.70,107.90,137.00,150.30,166.30 -146,63.50,76.70,93.30,108.60,137.90,151.40,167.50 -147,63.90,77.20,93.90,109.30,138.80,152.30,168.50 -148,64.30,77.70,94.50,110.00,139.80,153.40,169.70 -149,64.70,78.20,95.10,110.70,140.60,154.30,170.80 -150,65.10,78.70,95.70,111.40,141.40,155.40,172.00 diff --git a/dist/barry/products/450.csv b/dist/barry/products/450.csv deleted file mode 100644 index 63d16e197..000000000 --- a/dist/barry/products/450.csv +++ /dev/null @@ -1,153 +0,0 @@ -"ZONE CHART" -"UPS Ground/UPS 3 Day Select/UPS 2nd Day Air/UPS 2nd Day Air A.M./UPS Next Day Air Saver/UPS Next Day Air" - -"For shipments originating in ZIP Codes 450-01 to 452-99. To determine zone" -"take the first three digits of the receiver's ZIP Code and refer to the chart below:" - -"ZONES" -Dest. ZIP,Ground,3 Day Select,2nd Day Air,2nd Day Air A.M.,Next Day Air Saver,Next Day Air - -004-005,4,304,204,244,134,104 -006-007,-,-,225,-,-,125 -008,-,-,[1],-,-,[1] -009,-,-,225,-,-,125 -010-067,5,305,205,245,135,105 -068-089,4,304,204,244,134,104 -090-099,-,-,-,-,-,- -100-118,4,304,204,244,134,104 -119-123,5,305,205,245,135,105 -124-127,4,304,204,244,134,104 -128-129,5,305,205,245,135,105 -130-149,4,304,204,244,134,104 -150-157,3,303,203,243,133,103 -158-159,4,304,204,244,134,104 -160-165,3,303,203,243,133,103 -166-199,4,304,204,244,134,104 -200-239,4,304,204,244,134,104 -240-244,3,303,203,243,133,103 -245,4,304,204,244,134,104 -246-253,3,303,203,243,133,103 -254,4,304,204,244,134,104 -255-257,2,302,202,242,132,102 -258-260,3,303,203,243,133,103 -261,2,302,202,242,132,102 -262-266,3,303,203,243,133,103 -267,4,304,204,244,134,104 -268,3,303,203,-,-,103 -270,4,304,204,244,134,104 -271,3,303,203,243,133,103 -272-285,4,304,204,244,134,104 -286-289,3,303,203,243,133,103 -290-299,4,304,204,244,134,104 -300-306,4,304,204,244,134,104 -307,3,303,203,243,133,103 -308-319,4,304,204,244,134,104 -320-339,5,305,205,245,135,105 -340,-,-,-,-,-,- -341-349,5,305,205,245,135,105 -350-369,4,304,204,244,134,104 -370-374,3,303,203,243,133,103 -375,4,304,204,-,-,104 -376-379,3,303,203,243,133,103 -380-381,4,304,204,244,134,104 -382,3,303,203,243,133,103 -383,4,304,204,244,134,104 -384-385,3,303,203,243,133,103 -386-394,4,304,204,244,134,104 -395,5,305,205,245,135,105 -396-399,4,304,204,244,134,104 -400-406,2,302,202,242,132,102 -407-409,3,303,203,-,133,103 -410-414,2,302,202,242,132,102 -415-416,3,303,203,-,133,103 -417-418,2,302,202,242,132,102 -420-422,3,303,203,243,133,103 -423,2,302,202,242,132,102 -424,3,303,203,243,133,103 -425-433,2,302,202,242,132,102 -434-436,3,303,203,243,133,103 -437-438,2,302,202,242,132,102 -439-447,3,303,203,243,133,103 -448-462,2,302,202,242,132,102 -463-466,3,303,203,243,133,103 -467-475,2,302,202,242,132,102 -476-477,3,303,203,243,133,103 -478-479,2,302,202,242,132,102 -480-495,3,303,203,243,133,103 -496-499,4,304,204,244,134,104 -500-509,4,304,204,244,134,104 -510-512,5,305,205,245,135,105 -513-528,4,304,204,244,134,104 -530-534,3,303,203,243,133,103 -535-555,4,304,204,244,134,104 -556-558,5,305,205,245,135,105 -559-560,4,304,204,244,134,104 -561-585,5,305,205,245,135,105 -586-593,6,306,206,246,136,106 -594,7,307,207,247,137,107 -595,6,306,206,-,-,106 -596-599,7,307,207,247,137,107 -600-611,3,303,203,243,133,103 -612,4,304,204,244,134,104 -613-622,3,303,203,243,133,103 -623,4,304,204,244,134,104 -624-633,3,303,203,243,133,103 -634-636,4,304,204,244,134,104 -637,3,303,203,243,133,103 -638-667,4,304,204,244,134,104 -668-672,5,305,205,245,135,105 -673,4,304,204,244,134,104 -674-693,5,305,205,245,135,105 -700-711,5,305,205,245,135,105 -712,4,304,204,244,134,104 -713-714,5,305,205,245,135,105 -716-717,4,304,204,244,134,104 -718,5,305,205,245,135,105 -719-729,4,304,204,244,134,104 -730-742,5,305,205,245,135,105 -743,4,304,204,244,134,104 -744-748,5,305,205,245,135,105 -749,4,304,204,-,134,104 -750-768,5,305,205,245,135,105 -769,6,306,206,246,136,106 -770-779,5,305,205,245,135,105 -780-785,6,306,206,246,136,106 -786-787,5,305,205,245,135,105 -788,6,306,206,246,136,106 -789-796,5,305,205,245,135,105 -797-799,6,306,206,246,136,106 -800-806,6,306,206,246,136,106 -807,5,305,205,245,135,105 -808-831,6,306,206,246,136,106 -832-844,7,307,207,247,137,107 -845,6,306,206,-,-,106 -846-864,7,307,207,247,137,107 -865-885,6,306,206,246,136,106 -889-893,7,307,207,247,137,107 -894-897,8,308,208,248,138,108 -898,7,307,207,-,-,107 -900-921,8,308,208,248,138,108 -922,7,307,207,247,137,107 -923-961,8,308,208,248,138,108 -962-966,-,-,-,-,-,- -967-968,-,-,[2],-,-,[2] -969,-,-,[1],-,-,[1] -970-977,8,308,208,248,138,108 -978-979,7,307,207,-,137,107 -980-989,8,308,208,248,138,108 -990-994,7,307,207,247,137,107 -995-999,-,-,[3],-,-,[3] -,,,,,, - - -"[1] For Virgin Islands, Guam, Marshall Islands, etc., please refer to the Worldwide Rate and Zone information." - -"[2] For Hawaii, the following Postal Codes are Zone 124 for Next Day Air and Zone 224 for 2nd Day Air:" -96701,96706,96707,96709,96712,96717,96730,96731,96734,96744,96759,96762,96782,96786,96789,96791,96792,96795,96797,96801,96802,96803,96804,96805,96806,96807,96808,96809,96810,96811,96812,96813,96814,96815,96816,96817,96818,96819,96820,96821,96822,96823,96824,96825,96826,96827,96828,96830,96835,96836,96837,96838,96839,96840,96841,96842,96843,96844,96845,96846,96847,96848,96849,96850,96853,96854,96857,96858,96859,96860,96861,96862,96863,96898 -"For Hawaii, the following Postal Codes are Zone 126 for Next Day Air and Zone 226 for 2nd Day Air:" -96703,96704,96705,96708,96710,96713,96714,96715,96716,96718,96719,96720,96721,96722,96725,96726,96727,96728,96729,96732,96733,96737,96738,96739,96740,96741,96742,96743,96745,96746,96747,96748,96749,96750,96751,96752,96753,96754,96755,96756,96757,96760,96761,96763,96764,96765,96766,96767,96768,96769,96770,96771,96772,96773,96774,96775,96776,96777,96778,96779,96780,96781,96783,96784,96785,96788,96790,96793,96796 - -"[3] For Alaska, the following Postal Codes are Zone 124 for Next Day Air and Zone 224 for 2nd Day Air:" -99501,99502,99503,99504,99505,99506,99507,99508,99509,99510,99511,99512,99513,99514,99515,99516,99517,99518,99519,99520,99521,99522,99523,99524,99540,99556,99567,99568,99572,99577,99587,99603,99605,99610,99611,99631,99635,99639,99645,99654,99664,99669,99672,99687,99701,99702,99703,99705,99706,99707,99708,99709,99710,99711,99712,99775 -"For Alaska, the following Postal Codes are Zone 126 for Next Day Air and Zone 226 for 2nd Day Air:" -99547,99548,99549,99550,99551,99552,99553,99554,99555,99557,99558,99559,99561,99563,99564,99565,99566,99569,99571,99573,99574,99575,99576,99578,99579,99580,99581,99583,99584,99585,99586,99588,99589,99590,99591,99602,99604,99606,99607,99608,99609,99612,99613,99614,99615,99619,99620,99621,99622,99624,99625,99626,99627,99628,99630,99632,99633,99634,99636,99637,99638,99640,99641,99643,99644,99647,99648,99649,99650,99651,99652,99653,99655,99656,99657,99658,99659,99660,99661,99662,99663,99665,99666,99667,99668,99670,99671,99674,99675,99676,99677,99678,99679,99680,99681,99682,99683,99684,99685,99686,99688,99689,99690,99691,99692,99693,99694,99695,99697,99704,99714,99716,99720,99721,99722,99723,99724,99725,99726,99727,99729,99730,99732,99733,99734,99736,99737,99738,99739,99740,99741,99742,99743,99744,99745,99746,99747,99748,99749,99750,99751,99752,99753,99754,99755,99756,99757,99758,99759,99760,99761,99762,99763,99764,99765,99766,99767,99768,99769,99770,99771,99772,99773,99774,99776,99777,99778,99779,99780,99781,99782,99783,99784,99785,99786,99788,99789,99790,99791,99801,99802,99803,99811,99820,99821,99824,99825,99826,99827,99829,99830,99832,99833,99835,99836,99840,99841,99850,99901,99903,99918,99919,99921,99922,99923,99925,99926,99927,99928,99929,99950 diff --git a/dist/barry/products/Ground.csv b/dist/barry/products/Ground.csv deleted file mode 100644 index 4fe39dedb..000000000 --- a/dist/barry/products/Ground.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,2,3,4,5,6,7,8 -1,3.02,3.12,3.35,3.40,3.59,3.63,3.73 -2,3.08,3.28,3.61,3.71,4.00,4.09,4.35 -3,3.17,3.43,3.81,3.97,4.26,4.40,4.81 -4,3.29,3.58,4.02,4.23,4.52,4.66,5.12 -5,3.42,3.71,4.20,4.43,4.72,4.92,5.43 -6,3.57,3.84,4.35,4.64,4.93,5.18,5.69 -7,3.71,3.96,4.45,4.79,5.13,5.38,5.95 -8,3.85,4.08,4.56,4.90,5.29,5.64,6.36 -9,3.98,4.21,4.66,5.00,5.44,5.95,6.77 -10,4.11,4.32,4.76,5.16,5.65,6.36,7.24 -11,4.25,4.44,4.87,5.31,5.91,6.83,7.75 -12,4.38,4.58,4.97,5.46,6.17,7.29,8.32 -13,4.51,4.72,5.06,5.57,6.47,7.75,8.89 -14,4.62,4.87,5.16,5.67,6.84,8.22,9.45 -15,4.72,5.02,5.25,5.83,7.20,8.68,10.02 -16,4.81,5.19,5.40,6.03,7.57,9.14,10.59 -17,4.90,5.36,5.56,6.29,7.95,9.61,11.16 -18,4.99,5.55,5.76,6.60,8.33,10.07,11.72 -19,5.09,5.73,5.97,6.91,8.71,10.54,12.29 -20,5.21,5.92,6.18,7.22,9.09,10.95,12.86 -21,5.33,6.10,6.39,7.53,9.47,11.36,13.42 -22,5.46,6.29,6.61,7.84,9.86,11.77,13.99 -23,5.60,6.47,6.83,8.09,10.24,12.24,14.56 -24,5.73,6.65,7.04,8.35,10.62,12.70,15.12 -25,5.87,6.81,7.26,8.61,11.00,13.17,15.69 -26,6.00,6.97,7.47,8.87,11.38,13.58,16.21 -27,6.13,7.12,7.70,9.13,11.76,13.99,16.72 -28,6.27,7.28,7.93,9.40,12.15,14.40,17.29 -29,6.40,7.44,8.16,9.68,12.53,14.87,17.86 -30,6.54,7.62,8.37,9.96,12.91,15.33,18.42 -31,6.67,7.79,8.60,10.24,13.29,15.79,18.99 -32,6.80,7.97,8.83,10.53,13.67,16.26,19.56 -33,6.94,8.14,9.04,10.82,14.04,16.72,20.13 -34,7.06,8.32,9.27,11.10,14.41,17.19,20.68 -35,7.19,8.50,9.49,11.39,14.78,17.65,21.24 -36,7.31,8.67,9.70,11.67,15.15,18.11,21.79 -37,7.43,8.85,9.93,11.95,15.51,18.58,22.33 -38,7.56,9.02,10.16,12.23,15.86,19.04,22.87 -39,7.67,9.20,10.37,12.51,16.20,19.51,23.40 -40,7.78,9.37,10.59,12.78,16.53,19.97,23.93 -41,7.90,9.55,10.80,13.06,16.86,20.43,24.46 -42,8.01,9.72,11.02,13.34,17.19,20.90,24.97 -43,8.12,9.90,11.23,13.62,17.51,21.36,25.49 -44,8.23,10.07,11.43,13.90,17.82,21.83,26.00 -45,8.32,10.25,11.63,14.18,18.11,22.24,26.52 -46,8.40,10.41,11.83,14.45,18.40,22.65,27.03 -47,8.49,10.57,12.01,14.72,18.68,23.06,27.55 -48,8.57,10.71,12.20,14.98,18.95,23.48,28.01 -49,8.65,10.85,12.37,15.23,19.21,23.89,28.42 -50,8.73,10.97,12.55,15.47,19.45,24.25,28.79 -51,8.82,11.08,12.71,15.69,19.69,24.61,29.15 -52,8.90,11.19,12.88,15.90,19.93,24.92,29.51 -53,8.98,11.29,13.03,16.10,20.17,25.18,29.82 -54,9.06,11.39,13.19,16.31,20.40,25.38,30.07 -55,9.14,11.50,13.33,16.52,20.64,25.54,30.33 -56,9.23,11.60,13.48,16.72,20.88,25.69,30.54 -57,9.31,11.70,13.61,16.93,21.10,25.85,30.74 -58,9.39,11.80,13.74,17.08,21.32,26.00,30.95 -59,9.47,11.91,13.87,17.24,21.53,26.16,31.16 -60,9.56,12.00,13.99,17.39,21.72,26.31,31.36 -61,9.64,12.09,14.10,17.50,21.91,26.47,31.57 -62,9.72,12.19,14.22,17.60,22.08,26.62,31.78 -63,9.80,12.28,14.33,17.70,22.25,26.78,31.98 -64,9.89,12.37,14.43,17.81,22.40,26.93,32.19 -65,9.97,12.46,14.54,17.91,22.55,27.08,32.39 -66,10.05,12.56,14.63,18.02,22.68,27.24,32.60 -67,10.12,12.65,14.72,18.15,22.81,27.39,32.81 -68,10.20,12.74,14.82,18.28,22.92,27.55,33.01 -69,10.27,12.84,14.91,18.42,23.02,27.70,33.22 -70,10.33,12.93,15.00,18.58,23.13,27.86,33.43 -71,14.87,16.74,18.61,20.64,24.93,29.15,34.46 -72,18.78,20.56,22.22,23.22,26.73,30.69,35.49 -73,22.08,23.75,25.31,25.80,28.54,32.24,36.26 -74,24.35,26.13,27.63,28.37,30.34,33.53,37.03 -75,25.59,27.36,29.18,29.92,31.89,34.56,37.55 -76,26.83,28.39,29.95,30.95,33.18,35.33,38.06 -77,27.86,29.32,30.62,31.72,34.21,35.85,38.48 -78,28.79,30.20,31.24,32.50,34.98,36.31,38.89 -79,29.51,31.07,31.81,33.01,35.50,36.78,39.30 -80,30.13,31.95,32.32,33.43,35.91,37.19,39.71 -81,30.69,32.41,32.79,33.84,36.32,37.60,40.13 -82,31.21,32.87,33.24,34.25,36.73,38.01,40.54 -83,31.67,33.31,33.68,34.66,37.15,38.43,40.95 -84,32.08,33.74,34.12,35.07,37.56,38.84,41.36 -85,32.50,34.17,34.54,35.49,37.97,39.25,41.78 -86,32.91,34.58,34.95,35.90,38.38,39.66,42.19 -87,33.32,34.99,35.37,36.31,38.80,40.07,42.60 -88,33.73,35.40,35.80,36.72,39.21,40.49,43.01 -89,34.15,35.82,36.23,37.14,39.62,40.90,43.43 -90,34.56,36.23,36.65,37.55,40.03,41.31,43.84 -91,34.97,36.64,37.06,37.96,40.45,41.72,44.25 -92,35.38,37.05,37.47,38.37,40.86,42.14,44.66 -93,35.80,37.47,37.86,38.79,41.27,42.55,45.08 -94,36.21,37.88,38.23,39.20,41.68,42.96,45.49 -95,36.62,38.29,38.60,39.61,42.10,43.37,45.90 -96,37.02,38.65,38.97,40.02,42.51,43.79,46.31 -97,37.43,39.01,39.34,40.44,42.92,44.20,46.72 -98,37.83,39.37,39.71,40.85,43.33,44.61,47.14 -99,38.23,39.73,40.09,41.26,43.75,45.02,47.55 -100,38.63,40.10,40.46,41.67,44.16,45.44,47.96 -101,38.99,40.46,40.83,42.02,44.54,45.84,48.36 -102,39.35,40.82,41.20,42.37,44.92,46.24,48.77 -103,39.71,41.18,41.57,42.72,45.30,46.64,49.17 -104,40.07,41.54,41.94,43.08,45.68,47.04,49.57 -105,40.44,41.90,42.31,43.43,46.07,47.45,49.97 -106,40.80,42.26,42.68,43.78,46.45,47.85,50.37 -107,41.16,42.62,43.05,44.13,46.83,48.25,50.78 -108,41.52,42.98,43.43,44.48,47.21,48.65,51.18 -109,41.88,43.34,43.80,44.83,47.59,49.05,51.58 -110,42.24,43.70,44.17,45.18,47.97,49.46,51.98 -111,42.59,44.06,44.54,45.53,48.35,49.86,52.39 -112,42.94,44.43,44.91,45.88,48.74,50.26,52.79 -113,43.29,44.79,45.28,46.23,49.12,50.66,53.19 -114,43.64,45.15,45.65,46.58,49.50,51.07,53.59 -115,43.99,45.51,46.02,46.93,49.88,51.47,53.99 -116,44.34,45.87,46.40,47.28,50.26,51.87,54.40 -117,44.69,46.23,46.77,47.63,50.64,52.27,54.80 -118,45.04,46.59,47.14,47.98,51.02,52.67,55.20 -119,45.39,46.95,47.51,48.33,51.41,53.08,55.60 -120,45.75,47.31,47.88,48.68,51.79,53.48,56.00 -121,46.10,47.67,48.25,49.03,52.17,53.88,56.41 -122,46.45,48.03,48.62,49.38,52.55,54.28,56.81 -123,46.80,48.40,48.99,49.74,52.93,54.68,57.21 -124,47.15,48.76,49.36,50.09,53.31,55.09,57.61 -125,47.50,49.12,49.74,50.44,53.69,55.49,58.01 -126,47.85,49.48,50.11,50.79,54.08,55.89,58.42 -127,48.20,49.84,50.48,51.14,54.46,56.29,58.82 -128,48.55,50.20,50.85,51.49,54.84,56.69,59.22 -129,48.90,50.56,51.22,51.84,55.22,57.10,59.62 -130,49.25,50.92,51.59,52.19,55.60,57.50,60.02 -131,49.60,51.28,51.96,52.54,55.98,57.90,60.43 -132,49.95,51.64,52.33,52.89,56.36,58.30,60.83 -133,50.30,52.00,52.70,53.24,56.75,58.71,61.23 -134,50.65,52.36,53.08,53.59,57.13,59.11,61.63 -135,51.00,52.73,53.45,53.94,57.51,59.51,62.04 -136,51.35,53.09,53.82,54.29,57.89,59.91,62.44 -137,51.70,53.45,54.19,54.64,58.27,60.31,62.84 -138,52.06,53.81,54.56,54.99,58.65,60.72,63.24 -139,52.41,54.17,54.93,55.34,59.04,61.12,63.64 -140,52.76,54.53,55.30,55.69,59.42,61.52,64.05 -141,53.11,54.89,55.67,56.05,59.80,61.92,64.45 -142,53.46,55.25,56.05,56.40,60.18,62.32,64.85 -143,53.81,55.61,56.42,56.75,60.56,62.73,65.25 -144,54.16,55.97,56.79,57.10,60.94,63.13,65.65 -145,54.51,56.33,57.16,57.45,61.32,63.53,66.06 -146,54.86,56.69,57.53,57.80,61.71,63.93,66.46 -147,55.21,57.06,57.90,58.15,62.09,64.33,66.86 -148,55.56,57.42,58.27,58.50,62.47,64.74,67.26 -149,55.91,57.78,58.64,58.85,62.85,65.14,67.66 -150,56.26,58.14,59.01,59.20,63.23,65.54,68.07 diff --git a/dist/barry/products/GroundComm.csv b/dist/barry/products/GroundComm.csv deleted file mode 100644 index 4fe39dedb..000000000 --- a/dist/barry/products/GroundComm.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,2,3,4,5,6,7,8 -1,3.02,3.12,3.35,3.40,3.59,3.63,3.73 -2,3.08,3.28,3.61,3.71,4.00,4.09,4.35 -3,3.17,3.43,3.81,3.97,4.26,4.40,4.81 -4,3.29,3.58,4.02,4.23,4.52,4.66,5.12 -5,3.42,3.71,4.20,4.43,4.72,4.92,5.43 -6,3.57,3.84,4.35,4.64,4.93,5.18,5.69 -7,3.71,3.96,4.45,4.79,5.13,5.38,5.95 -8,3.85,4.08,4.56,4.90,5.29,5.64,6.36 -9,3.98,4.21,4.66,5.00,5.44,5.95,6.77 -10,4.11,4.32,4.76,5.16,5.65,6.36,7.24 -11,4.25,4.44,4.87,5.31,5.91,6.83,7.75 -12,4.38,4.58,4.97,5.46,6.17,7.29,8.32 -13,4.51,4.72,5.06,5.57,6.47,7.75,8.89 -14,4.62,4.87,5.16,5.67,6.84,8.22,9.45 -15,4.72,5.02,5.25,5.83,7.20,8.68,10.02 -16,4.81,5.19,5.40,6.03,7.57,9.14,10.59 -17,4.90,5.36,5.56,6.29,7.95,9.61,11.16 -18,4.99,5.55,5.76,6.60,8.33,10.07,11.72 -19,5.09,5.73,5.97,6.91,8.71,10.54,12.29 -20,5.21,5.92,6.18,7.22,9.09,10.95,12.86 -21,5.33,6.10,6.39,7.53,9.47,11.36,13.42 -22,5.46,6.29,6.61,7.84,9.86,11.77,13.99 -23,5.60,6.47,6.83,8.09,10.24,12.24,14.56 -24,5.73,6.65,7.04,8.35,10.62,12.70,15.12 -25,5.87,6.81,7.26,8.61,11.00,13.17,15.69 -26,6.00,6.97,7.47,8.87,11.38,13.58,16.21 -27,6.13,7.12,7.70,9.13,11.76,13.99,16.72 -28,6.27,7.28,7.93,9.40,12.15,14.40,17.29 -29,6.40,7.44,8.16,9.68,12.53,14.87,17.86 -30,6.54,7.62,8.37,9.96,12.91,15.33,18.42 -31,6.67,7.79,8.60,10.24,13.29,15.79,18.99 -32,6.80,7.97,8.83,10.53,13.67,16.26,19.56 -33,6.94,8.14,9.04,10.82,14.04,16.72,20.13 -34,7.06,8.32,9.27,11.10,14.41,17.19,20.68 -35,7.19,8.50,9.49,11.39,14.78,17.65,21.24 -36,7.31,8.67,9.70,11.67,15.15,18.11,21.79 -37,7.43,8.85,9.93,11.95,15.51,18.58,22.33 -38,7.56,9.02,10.16,12.23,15.86,19.04,22.87 -39,7.67,9.20,10.37,12.51,16.20,19.51,23.40 -40,7.78,9.37,10.59,12.78,16.53,19.97,23.93 -41,7.90,9.55,10.80,13.06,16.86,20.43,24.46 -42,8.01,9.72,11.02,13.34,17.19,20.90,24.97 -43,8.12,9.90,11.23,13.62,17.51,21.36,25.49 -44,8.23,10.07,11.43,13.90,17.82,21.83,26.00 -45,8.32,10.25,11.63,14.18,18.11,22.24,26.52 -46,8.40,10.41,11.83,14.45,18.40,22.65,27.03 -47,8.49,10.57,12.01,14.72,18.68,23.06,27.55 -48,8.57,10.71,12.20,14.98,18.95,23.48,28.01 -49,8.65,10.85,12.37,15.23,19.21,23.89,28.42 -50,8.73,10.97,12.55,15.47,19.45,24.25,28.79 -51,8.82,11.08,12.71,15.69,19.69,24.61,29.15 -52,8.90,11.19,12.88,15.90,19.93,24.92,29.51 -53,8.98,11.29,13.03,16.10,20.17,25.18,29.82 -54,9.06,11.39,13.19,16.31,20.40,25.38,30.07 -55,9.14,11.50,13.33,16.52,20.64,25.54,30.33 -56,9.23,11.60,13.48,16.72,20.88,25.69,30.54 -57,9.31,11.70,13.61,16.93,21.10,25.85,30.74 -58,9.39,11.80,13.74,17.08,21.32,26.00,30.95 -59,9.47,11.91,13.87,17.24,21.53,26.16,31.16 -60,9.56,12.00,13.99,17.39,21.72,26.31,31.36 -61,9.64,12.09,14.10,17.50,21.91,26.47,31.57 -62,9.72,12.19,14.22,17.60,22.08,26.62,31.78 -63,9.80,12.28,14.33,17.70,22.25,26.78,31.98 -64,9.89,12.37,14.43,17.81,22.40,26.93,32.19 -65,9.97,12.46,14.54,17.91,22.55,27.08,32.39 -66,10.05,12.56,14.63,18.02,22.68,27.24,32.60 -67,10.12,12.65,14.72,18.15,22.81,27.39,32.81 -68,10.20,12.74,14.82,18.28,22.92,27.55,33.01 -69,10.27,12.84,14.91,18.42,23.02,27.70,33.22 -70,10.33,12.93,15.00,18.58,23.13,27.86,33.43 -71,14.87,16.74,18.61,20.64,24.93,29.15,34.46 -72,18.78,20.56,22.22,23.22,26.73,30.69,35.49 -73,22.08,23.75,25.31,25.80,28.54,32.24,36.26 -74,24.35,26.13,27.63,28.37,30.34,33.53,37.03 -75,25.59,27.36,29.18,29.92,31.89,34.56,37.55 -76,26.83,28.39,29.95,30.95,33.18,35.33,38.06 -77,27.86,29.32,30.62,31.72,34.21,35.85,38.48 -78,28.79,30.20,31.24,32.50,34.98,36.31,38.89 -79,29.51,31.07,31.81,33.01,35.50,36.78,39.30 -80,30.13,31.95,32.32,33.43,35.91,37.19,39.71 -81,30.69,32.41,32.79,33.84,36.32,37.60,40.13 -82,31.21,32.87,33.24,34.25,36.73,38.01,40.54 -83,31.67,33.31,33.68,34.66,37.15,38.43,40.95 -84,32.08,33.74,34.12,35.07,37.56,38.84,41.36 -85,32.50,34.17,34.54,35.49,37.97,39.25,41.78 -86,32.91,34.58,34.95,35.90,38.38,39.66,42.19 -87,33.32,34.99,35.37,36.31,38.80,40.07,42.60 -88,33.73,35.40,35.80,36.72,39.21,40.49,43.01 -89,34.15,35.82,36.23,37.14,39.62,40.90,43.43 -90,34.56,36.23,36.65,37.55,40.03,41.31,43.84 -91,34.97,36.64,37.06,37.96,40.45,41.72,44.25 -92,35.38,37.05,37.47,38.37,40.86,42.14,44.66 -93,35.80,37.47,37.86,38.79,41.27,42.55,45.08 -94,36.21,37.88,38.23,39.20,41.68,42.96,45.49 -95,36.62,38.29,38.60,39.61,42.10,43.37,45.90 -96,37.02,38.65,38.97,40.02,42.51,43.79,46.31 -97,37.43,39.01,39.34,40.44,42.92,44.20,46.72 -98,37.83,39.37,39.71,40.85,43.33,44.61,47.14 -99,38.23,39.73,40.09,41.26,43.75,45.02,47.55 -100,38.63,40.10,40.46,41.67,44.16,45.44,47.96 -101,38.99,40.46,40.83,42.02,44.54,45.84,48.36 -102,39.35,40.82,41.20,42.37,44.92,46.24,48.77 -103,39.71,41.18,41.57,42.72,45.30,46.64,49.17 -104,40.07,41.54,41.94,43.08,45.68,47.04,49.57 -105,40.44,41.90,42.31,43.43,46.07,47.45,49.97 -106,40.80,42.26,42.68,43.78,46.45,47.85,50.37 -107,41.16,42.62,43.05,44.13,46.83,48.25,50.78 -108,41.52,42.98,43.43,44.48,47.21,48.65,51.18 -109,41.88,43.34,43.80,44.83,47.59,49.05,51.58 -110,42.24,43.70,44.17,45.18,47.97,49.46,51.98 -111,42.59,44.06,44.54,45.53,48.35,49.86,52.39 -112,42.94,44.43,44.91,45.88,48.74,50.26,52.79 -113,43.29,44.79,45.28,46.23,49.12,50.66,53.19 -114,43.64,45.15,45.65,46.58,49.50,51.07,53.59 -115,43.99,45.51,46.02,46.93,49.88,51.47,53.99 -116,44.34,45.87,46.40,47.28,50.26,51.87,54.40 -117,44.69,46.23,46.77,47.63,50.64,52.27,54.80 -118,45.04,46.59,47.14,47.98,51.02,52.67,55.20 -119,45.39,46.95,47.51,48.33,51.41,53.08,55.60 -120,45.75,47.31,47.88,48.68,51.79,53.48,56.00 -121,46.10,47.67,48.25,49.03,52.17,53.88,56.41 -122,46.45,48.03,48.62,49.38,52.55,54.28,56.81 -123,46.80,48.40,48.99,49.74,52.93,54.68,57.21 -124,47.15,48.76,49.36,50.09,53.31,55.09,57.61 -125,47.50,49.12,49.74,50.44,53.69,55.49,58.01 -126,47.85,49.48,50.11,50.79,54.08,55.89,58.42 -127,48.20,49.84,50.48,51.14,54.46,56.29,58.82 -128,48.55,50.20,50.85,51.49,54.84,56.69,59.22 -129,48.90,50.56,51.22,51.84,55.22,57.10,59.62 -130,49.25,50.92,51.59,52.19,55.60,57.50,60.02 -131,49.60,51.28,51.96,52.54,55.98,57.90,60.43 -132,49.95,51.64,52.33,52.89,56.36,58.30,60.83 -133,50.30,52.00,52.70,53.24,56.75,58.71,61.23 -134,50.65,52.36,53.08,53.59,57.13,59.11,61.63 -135,51.00,52.73,53.45,53.94,57.51,59.51,62.04 -136,51.35,53.09,53.82,54.29,57.89,59.91,62.44 -137,51.70,53.45,54.19,54.64,58.27,60.31,62.84 -138,52.06,53.81,54.56,54.99,58.65,60.72,63.24 -139,52.41,54.17,54.93,55.34,59.04,61.12,63.64 -140,52.76,54.53,55.30,55.69,59.42,61.52,64.05 -141,53.11,54.89,55.67,56.05,59.80,61.92,64.45 -142,53.46,55.25,56.05,56.40,60.18,62.32,64.85 -143,53.81,55.61,56.42,56.75,60.56,62.73,65.25 -144,54.16,55.97,56.79,57.10,60.94,63.13,65.65 -145,54.51,56.33,57.16,57.45,61.32,63.53,66.06 -146,54.86,56.69,57.53,57.80,61.71,63.93,66.46 -147,55.21,57.06,57.90,58.15,62.09,64.33,66.86 -148,55.56,57.42,58.27,58.50,62.47,64.74,67.26 -149,55.91,57.78,58.64,58.85,62.85,65.14,67.66 -150,56.26,58.14,59.01,59.20,63.23,65.54,68.07 diff --git a/dist/barry/products/GroundRes.csv b/dist/barry/products/GroundRes.csv deleted file mode 100644 index fc4b1bd57..000000000 --- a/dist/barry/products/GroundRes.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,2,3,4,5,6,7,8 -1,4.02,4.12,4.35,4.40,4.59,4.63,4.73 -2,4.08,4.28,4.61,4.71,5.00,5.09,5.35 -3,4.17,4.43,4.81,4.97,5.26,5.40,5.81 -4,4.29,4.58,5.02,5.23,5.52,5.66,6.12 -5,4.42,4.71,5.20,5.43,5.72,5.92,6.43 -6,4.57,4.84,5.35,5.64,5.93,6.18,6.69 -7,4.71,4.96,5.45,5.79,6.13,6.38,6.95 -8,4.85,5.08,5.56,5.90,6.29,6.64,7.36 -9,4.98,5.21,5.66,6.00,6.44,6.95,7.77 -10,5.11,5.32,5.76,6.16,6.65,7.36,8.24 -11,5.25,5.44,5.87,6.31,6.91,7.83,8.75 -12,5.38,5.58,5.97,6.46,7.17,8.29,9.32 -13,5.51,5.72,6.06,6.57,7.47,8.75,9.89 -14,5.62,5.87,6.16,6.67,7.84,9.22,10.45 -15,5.72,6.02,6.25,6.83,8.20,9.68,11.02 -16,5.81,6.19,6.40,7.03,8.57,10.14,11.59 -17,5.90,6.36,6.56,7.29,8.95,10.61,12.16 -18,5.99,6.55,6.76,7.60,9.33,11.07,12.72 -19,6.09,6.73,6.97,7.91,9.71,11.54,13.29 -20,6.21,6.92,7.18,8.22,10.09,11.95,13.86 -21,6.33,7.10,7.39,8.53,10.47,12.36,14.42 -22,6.46,7.29,7.61,8.84,10.86,12.77,14.99 -23,6.60,7.47,7.83,9.09,11.24,13.24,15.56 -24,6.73,7.65,8.04,9.35,11.62,13.70,16.12 -25,6.87,7.81,8.26,9.61,12.00,14.17,16.69 -26,7.00,7.97,8.47,9.87,12.38,14.58,17.21 -27,7.13,8.12,8.70,10.13,12.76,14.99,17.72 -28,7.27,8.28,8.93,10.40,13.15,15.40,18.29 -29,7.40,8.44,9.16,10.68,13.53,15.87,18.86 -30,7.54,8.62,9.37,10.96,13.91,16.33,19.42 -31,7.67,8.79,9.60,11.24,14.29,16.79,19.99 -32,7.80,8.97,9.83,11.53,14.67,17.26,20.56 -33,7.94,9.14,10.04,11.82,15.04,17.72,21.13 -34,8.06,9.32,10.27,12.10,15.41,18.19,21.68 -35,8.19,9.50,10.49,12.39,15.78,18.65,22.24 -36,8.31,9.67,10.70,12.67,16.15,19.11,22.79 -37,8.43,9.85,10.93,12.95,16.51,19.58,23.33 -38,8.56,10.02,11.16,13.23,16.86,20.04,23.87 -39,8.67,10.20,11.37,13.51,17.20,20.51,24.40 -40,8.78,10.37,11.59,13.78,17.53,20.97,24.93 -41,8.90,10.55,11.80,14.06,17.86,21.43,25.46 -42,9.01,10.72,12.02,14.34,18.19,21.90,25.97 -43,9.12,10.90,12.23,14.62,18.51,22.36,26.49 -44,9.23,11.07,12.43,14.90,18.82,22.83,27.00 -45,9.32,11.25,12.63,15.18,19.11,23.24,27.52 -46,9.40,11.41,12.83,15.45,19.40,23.65,28.03 -47,9.49,11.57,13.01,15.72,19.68,24.06,28.55 -48,9.57,11.71,13.20,15.98,19.95,24.48,29.01 -49,9.65,11.85,13.37,16.23,20.21,24.89,29.42 -50,9.73,11.97,13.55,16.47,20.45,25.25,29.79 -51,9.82,12.08,13.71,16.69,20.69,25.61,30.15 -52,9.90,12.19,13.88,16.90,20.93,25.92,30.51 -53,9.98,12.29,14.03,17.10,21.17,26.18,30.82 -54,10.06,12.39,14.19,17.31,21.40,26.38,31.07 -55,10.14,12.50,14.33,17.52,21.64,26.54,31.33 -56,10.23,12.60,14.48,17.72,21.88,26.69,31.54 -57,10.31,12.70,14.61,17.93,22.10,26.85,31.74 -58,10.39,12.80,14.74,18.08,22.32,27.00,31.95 -59,10.47,12.91,14.87,18.24,22.53,27.16,32.16 -60,10.56,13.00,14.99,18.39,22.72,27.31,32.36 -61,10.64,13.09,15.10,18.50,22.91,27.47,32.57 -62,10.72,13.19,15.22,18.60,23.08,27.62,32.78 -63,10.80,13.28,15.33,18.70,23.25,27.78,32.98 -64,10.89,13.37,15.43,18.81,23.40,27.93,33.19 -65,10.97,13.46,15.54,18.91,23.55,28.08,33.39 -66,11.05,13.56,15.63,19.02,23.68,28.24,33.60 -67,11.12,13.65,15.72,19.15,23.81,28.39,33.81 -68,11.20,13.74,15.82,19.28,23.92,28.55,34.01 -69,11.27,13.84,15.91,19.42,24.02,28.70,34.22 -70,11.33,13.93,16.00,19.58,24.13,28.86,34.43 -71,15.87,17.74,19.61,21.64,25.93,30.15,35.46 -72,19.78,21.56,23.22,24.22,27.73,31.69,36.49 -73,23.08,24.75,26.31,26.80,29.54,33.24,37.26 -74,25.35,27.13,28.63,29.37,31.34,34.53,38.03 -75,26.59,28.36,30.18,30.92,32.89,35.56,38.55 -76,27.83,29.39,30.95,31.95,34.18,36.33,39.06 -77,28.86,30.32,31.62,32.72,35.21,36.85,39.48 -78,29.79,31.20,32.24,33.50,35.98,37.31,39.89 -79,30.51,32.07,32.81,34.01,36.50,37.78,40.30 -80,31.13,32.95,33.32,34.43,36.91,38.19,40.71 -81,31.69,33.41,33.79,34.84,37.32,38.60,41.13 -82,32.21,33.87,34.24,35.25,37.73,39.01,41.54 -83,32.67,34.31,34.68,35.66,38.15,39.43,41.95 -84,33.08,34.74,35.12,36.07,38.56,39.84,42.36 -85,33.50,35.17,35.54,36.49,38.97,40.25,42.78 -86,33.91,35.58,35.95,36.90,39.38,40.66,43.19 -87,34.32,35.99,36.37,37.31,39.80,41.07,43.60 -88,34.73,36.40,36.80,37.72,40.21,41.49,44.01 -89,35.15,36.82,37.23,38.14,40.62,41.90,44.43 -90,35.56,37.23,37.65,38.55,41.03,42.31,44.84 -91,35.97,37.64,38.06,38.96,41.45,42.72,45.25 -92,36.38,38.05,38.47,39.37,41.86,43.14,45.66 -93,36.80,38.47,38.86,39.79,42.27,43.55,46.08 -94,37.21,38.88,39.23,40.20,42.68,43.96,46.49 -95,37.62,39.29,39.60,40.61,43.10,44.37,46.90 -96,38.02,39.65,39.97,41.02,43.51,44.79,47.31 -97,38.43,40.01,40.34,41.44,43.92,45.20,47.72 -98,38.83,40.37,40.71,41.85,44.33,45.61,48.14 -99,39.23,40.73,41.09,42.26,44.75,46.02,48.55 -100,39.63,41.10,41.46,42.67,45.16,46.44,48.96 -101,39.99,41.46,41.83,43.02,45.54,46.84,49.36 -102,40.35,41.82,42.20,43.37,45.92,47.24,49.77 -103,40.71,42.18,42.57,43.72,46.30,47.64,50.17 -104,41.07,42.54,42.94,44.08,46.68,48.04,50.57 -105,41.44,42.90,43.31,44.43,47.07,48.45,50.97 -106,41.80,43.26,43.68,44.78,47.45,48.85,51.37 -107,42.16,43.62,44.05,45.13,47.83,49.25,51.78 -108,42.52,43.98,44.43,45.48,48.21,49.65,52.18 -109,42.88,44.34,44.80,45.83,48.59,50.05,52.58 -110,43.24,44.70,45.17,46.18,48.97,50.46,52.98 -111,43.59,45.06,45.54,46.53,49.35,50.86,53.39 -112,43.94,45.43,45.91,46.88,49.74,51.26,53.79 -113,44.29,45.79,46.28,47.23,50.12,51.66,54.19 -114,44.64,46.15,46.65,47.58,50.50,52.07,54.59 -115,44.99,46.51,47.02,47.93,50.88,52.47,54.99 -116,45.34,46.87,47.40,48.28,51.26,52.87,55.40 -117,45.69,47.23,47.77,48.63,51.64,53.27,55.80 -118,46.04,47.59,48.14,48.98,52.02,53.67,56.20 -119,46.39,47.95,48.51,49.33,52.41,54.08,56.60 -120,46.75,48.31,48.88,49.68,52.79,54.48,57.00 -121,47.10,48.67,49.25,50.03,53.17,54.88,57.41 -122,47.45,49.03,49.62,50.38,53.55,55.28,57.81 -123,47.80,49.40,49.99,50.74,53.93,55.68,58.21 -124,48.15,49.76,50.36,51.09,54.31,56.09,58.61 -125,48.50,50.12,50.74,51.44,54.69,56.49,59.01 -126,48.85,50.48,51.11,51.79,55.08,56.89,59.42 -127,49.20,50.84,51.48,52.14,55.46,57.29,59.82 -128,49.55,51.20,51.85,52.49,55.84,57.69,60.22 -129,49.90,51.56,52.22,52.84,56.22,58.10,60.62 -130,50.25,51.92,52.59,53.19,56.60,58.50,61.02 -131,50.60,52.28,52.96,53.54,56.98,58.90,61.43 -132,50.95,52.64,53.33,53.89,57.36,59.30,61.83 -133,51.30,53.00,53.70,54.24,57.75,59.71,62.23 -134,51.65,53.36,54.08,54.59,58.13,60.11,62.63 -135,52.00,53.73,54.45,54.94,58.51,60.51,63.04 -136,52.35,54.09,54.82,55.29,58.89,60.91,63.44 -137,52.70,54.45,55.19,55.64,59.27,61.31,63.84 -138,53.06,54.81,55.56,55.99,59.65,61.72,64.24 -139,53.41,55.17,55.93,56.34,60.04,62.12,64.64 -140,53.76,55.53,56.30,56.69,60.42,62.52,65.05 -141,54.11,55.89,56.67,57.05,60.80,62.92,65.45 -142,54.46,56.25,57.05,57.40,61.18,63.32,65.85 -143,54.81,56.61,57.42,57.75,61.56,63.73,66.25 -144,55.16,56.97,57.79,58.10,61.94,64.13,66.65 -145,55.51,57.33,58.16,58.45,62.32,64.53,67.06 -146,55.86,57.69,58.53,58.80,62.71,64.93,67.46 -147,56.21,58.06,58.90,59.15,63.09,65.33,67.86 -148,56.56,58.42,59.27,59.50,63.47,65.74,68.26 -149,56.91,58.78,59.64,59.85,63.85,66.14,68.66 -150,57.26,59.14,60.01,60.20,64.23,66.54,69.07 diff --git a/dist/barry/products/NextDayAir.csv b/dist/barry/products/NextDayAir.csv deleted file mode 100644 index 1d18c90e9..000000000 --- a/dist/barry/products/NextDayAir.csv +++ /dev/null @@ -1,152 +0,0 @@ -Exceed,102,103,104,105,106,107,108,124,125,126 -Letter,12.00,13.00,13.75,14.00,14.25,14.50,15.00,15.25,15.25,21.25 -1,14.25,16.00,19.00,20.25,21.50,22.25,22.75,24.25,24.25,35.25 -2,15.25,17.00,21.25,22.50,23.75,24.75,25.25,26.75,26.75,37.75 -3,16.25,18.00,23.50,25.00,26.25,27.25,28.00,29.50,29.50,40.50 -4,17.25,19.25,25.50,27.25,28.75,29.75,30.50,32.00,32.00,43.00 -5,18.25,20.25,27.75,29.75,31.25,32.25,33.00,34.50,34.50,45.50 -6,19.00,21.50,30.00,32.00,33.75,34.75,35.50,36.75,36.75,47.75 -7,19.75,22.50,32.00,34.25,36.25,37.25,38.00,39.00,39.00,50.00 -8,20.50,23.50,34.00,36.50,38.75,39.75,40.50,41.25,41.25,52.25 -9,21.25,24.50,36.25,38.75,41.00,42.25,43.00,43.75,43.75,54.75 -10,22.00,25.50,38.50,41.00,43.50,44.75,45.25,46.00,46.00,57.00 -11,22.75,26.75,40.50,43.25,45.75,47.25,47.75,48.25,48.25,59.25 -12,23.75,27.75,42.50,45.25,48.00,49.50,50.25,50.75,50.75,61.75 -13,24.50,29.00,44.50,47.50,50.25,51.75,52.75,53.25,53.25,64.25 -14,25.25,30.00,46.50,49.50,52.25,53.75,55.00,55.50,55.50,66.50 -15,26.00,31.00,48.25,51.25,54.25,55.75,57.25,57.50,57.50,68.50 -16,26.75,32.00,49.75,53.00,56.00,57.50,59.25,59.50,59.50,70.50 -17,27.50,33.00,51.25,54.75,57.50,59.25,61.00,61.25,61.25,72.25 -18,28.25,33.75,52.75,56.25,59.00,60.75,62.75,63.00,63.00,74.00 -19,29.00,34.50,54.25,57.75,60.50,62.25,64.50,64.75,64.75,75.75 -20,29.75,35.25,55.75,59.25,62.00,63.75,66.25,66.50,66.50,77.50 -21,30.50,36.00,57.25,60.75,63.50,65.50,68.00,68.25,68.25,79.25 -22,31.25,36.75,58.75,62.25,65.00,67.00,69.50,69.75,69.75,80.75 -23,32.00,37.50,60.25,63.75,66.50,68.50,71.00,71.25,71.25,82.25 -24,32.75,38.50,61.75,65.25,68.00,69.75,72.50,72.75,72.75,83.75 -25,33.50,39.50,63.25,67.00,69.75,71.25,73.75,74.00,74.00,85.00 -26,34.50,40.25,64.75,68.75,71.50,72.75,75.25,75.50,75.50,86.50 -27,35.25,41.00,66.50,70.50,73.00,74.25,76.75,77.00,77.00,88.00 -28,36.00,41.75,68.25,72.25,74.75,75.75,78.50,78.75,78.75,89.75 -29,36.75,42.50,69.75,73.75,76.25,77.25,80.25,80.50,80.50,91.50 -30,37.50,43.25,71.25,75.50,77.75,79.00,82.00,82.25,82.25,93.25 -31,38.50,44.25,73.00,77.25,79.25,80.75,83.75,84.00,84.00,95.00 -32,39.25,45.25,74.75,79.00,81.00,82.75,85.75,86.00,86.00,97.00 -33,40.25,46.25,76.50,80.75,82.75,84.50,87.50,87.75,87.75,98.75 -34,41.00,47.25,78.00,82.50,84.50,86.25,89.50,89.75,89.75,100.75 -35,41.75,48.25,79.75,84.50,86.50,88.25,91.50,91.75,91.75,102.75 -36,42.50,49.00,81.25,86.25,88.25,90.00,93.25,93.50,93.50,104.50 -37,43.25,49.75,82.75,88.00,90.00,92.00,95.25,95.50,95.50,106.50 -38,44.00,50.50,84.25,89.75,91.75,93.75,97.25,97.50,97.50,108.50 -39,44.75,51.50,85.75,91.50,93.50,95.75,99.25,99.50,99.50,110.50 -40,45.50,52.50,87.50,93.25,95.25,97.75,101.25,101.50,101.50,112.50 -41,46.25,53.25,89.25,95.00,97.25,99.75,103.25,103.50,103.50,114.50 -42,47.00,54.25,91.00,96.75,99.00,101.75,105.25,105.50,105.50,116.50 -43,47.75,55.25,92.50,98.50,101.00,103.75,107.25,107.50,107.50,118.50 -44,48.75,56.25,94.25,100.00,102.75,105.50,109.00,109.25,109.25,120.25 -45,49.75,57.25,96.00,101.75,104.50,107.25,110.75,111.00,111.00,122.00 -46,50.75,58.25,97.50,103.25,106.50,109.00,112.75,113.00,113.00,124.00 -47,51.50,59.25,99.00,104.75,108.25,110.75,114.75,115.00,115.00,126.00 -48,52.25,60.25,100.75,106.25,110.00,112.50,116.50,116.75,116.75,127.75 -49,53.00,61.50,102.50,108.00,111.75,114.25,118.25,118.50,118.50,129.50 -50,54.00,62.75,104.00,109.50,113.75,116.25,120.25,120.50,120.50,131.50 -51,55.00,64.00,105.50,111.00,115.75,118.25,122.25,122.50,122.50,133.50 -52,56.00,65.50,107.25,112.50,117.50,120.25,124.50,124.75,124.75,135.75 -53,57.00,66.75,108.75,114.00,119.50,122.25,126.50,126.75,126.75,137.75 -54,58.00,68.00,110.50,115.75,121.50,124.50,128.75,129.00,129.00,140.00 -55,59.00,69.50,112.00,117.50,123.50,126.75,131.00,131.25,131.25,142.25 -56,60.00,70.75,113.50,119.25,125.50,128.75,133.25,133.50,133.50,144.50 -57,61.00,72.25,115.25,121.00,127.25,131.00,135.50,135.75,135.75,146.75 -58,62.25,73.50,117.00,123.00,129.25,133.00,137.75,138.00,138.00,149.00 -59,63.25,75.00,119.00,124.75,131.25,135.25,140.25,140.50,140.50,151.50 -60,64.50,76.50,121.00,126.75,133.25,137.50,143.00,143.25,143.25,154.25 -61,65.75,78.00,122.75,129.00,135.50,140.00,145.50,145.75,145.75,156.75 -62,67.00,79.50,124.50,131.00,137.50,142.25,148.00,148.25,148.25,159.25 -63,68.25,81.00,126.25,133.00,139.75,144.75,150.75,151.00,151.00,162.00 -64,69.50,82.75,128.00,135.25,142.00,147.00,153.25,153.50,153.50,164.50 -65,70.75,84.50,130.00,137.75,144.50,149.50,156.00,156.25,156.25,167.25 -66,72.00,86.00,132.00,140.00,146.75,151.75,158.50,158.75,158.75,169.75 -67,73.25,87.50,134.00,142.25,149.25,154.25,161.00,161.25,161.25,172.25 -68,74.50,89.25,136.00,144.50,151.50,157.00,163.75,164.00,164.00,175.00 -69,76.00,91.00,138.00,146.50,153.75,159.50,166.25,166.50,166.50,177.50 -70,77.50,92.50,140.00,148.75,156.00,162.25,169.00,169.25,169.25,180.25 -71,78.75,94.00,142.25,151.00,158.25,164.75,171.50,171.75,171.75,182.75 -72,80.00,95.50,144.25,153.50,160.75,167.50,174.25,174.50,174.50,185.50 -73,81.25,97.00,146.50,155.75,163.00,170.25,177.00,177.25,177.25,188.25 -74,82.75,98.75,148.75,158.00,165.50,173.00,179.75,180.00,180.00,191.00 -75,84.00,100.50,151.25,160.25,168.00,175.75,182.50,182.75,182.75,193.75 -76,85.50,102.25,153.50,162.50,170.25,178.25,185.00,185.25,185.25,196.25 -77,87.00,104.00,155.75,164.75,172.50,180.50,187.50,187.75,187.75,198.75 -78,88.50,106.00,158.00,167.00,175.00,183.00,190.00,190.25,190.25,201.25 -79,90.00,107.75,160.50,169.25,177.50,185.50,192.50,192.75,192.75,203.75 -80,91.25,109.50,163.00,171.50,180.00,188.00,195.25,195.50,195.50,206.50 -81,92.75,111.25,165.50,173.75,182.50,190.50,197.75,198.00,198.00,209.00 -82,94.25,113.00,168.00,176.00,184.75,193.00,200.25,200.50,200.50,211.50 -83,95.75,114.75,170.25,178.25,187.25,195.50,202.75,203.00,203.00,214.00 -84,97.00,116.50,172.50,180.50,189.50,197.75,205.25,205.50,205.50,216.50 -85,98.25,118.50,174.75,182.75,192.00,200.25,207.75,208.00,208.00,219.00 -86,99.50,120.50,177.25,185.00,194.25,202.50,210.25,210.50,210.50,221.50 -87,100.75,122.50,179.50,187.25,196.50,205.00,212.75,213.00,213.00,224.00 -88,102.00,124.25,181.75,189.50,199.00,207.50,215.25,215.50,215.50,226.50 -89,103.25,126.00,184.00,191.75,201.25,210.00,218.00,218.25,218.25,229.25 -90,104.50,127.75,186.00,194.00,203.75,212.50,220.50,220.75,220.75,231.75 -91,105.75,129.50,188.00,196.25,206.00,214.75,223.00,223.25,223.25,234.25 -92,107.25,131.25,190.25,198.50,208.50,217.25,225.50,225.75,225.75,236.75 -93,108.50,133.00,192.25,200.50,211.00,219.75,228.00,228.25,228.25,239.25 -94,109.75,134.50,194.50,202.75,213.25,222.25,230.75,231.00,231.00,242.00 -95,111.00,136.00,196.50,204.75,215.75,224.75,233.25,233.50,233.50,244.50 -96,112.25,137.75,198.50,206.75,218.00,227.00,235.75,236.00,236.00,247.00 -97,113.50,139.25,200.50,208.75,220.00,229.25,238.25,238.50,238.50,249.50 -98,114.75,140.75,202.50,210.75,222.00,231.50,240.75,241.00,241.00,252.00 -99,116.00,142.25,204.25,213.00,224.25,233.75,243.00,243.25,243.25,254.25 -100,117.25,143.75,206.00,215.00,226.25,235.75,245.25,245.50,245.50,256.50 -101,118.50,145.25,207.75,217.00,228.50,238.00,247.50,247.75,247.75,258.75 -102,119.75,146.75,209.75,219.00,230.75,240.25,249.75,250.00,250.00,261.00 -103,121.00,148.25,211.75,221.00,233.00,242.75,252.25,252.50,252.50,263.50 -104,122.25,149.75,213.75,223.25,235.25,245.00,254.75,255.00,255.00,266.00 -105,123.50,151.25,215.75,225.50,237.25,247.25,257.25,257.50,257.50,268.50 -106,124.75,152.75,218.00,227.50,239.50,249.50,259.75,260.00,260.00,271.00 -107,126.00,154.25,220.00,229.50,242.00,252.00,262.25,262.50,262.50,273.50 -108,127.25,155.75,222.00,231.50,244.25,254.50,264.75,265.00,265.00,276.00 -109,128.50,157.25,224.00,233.75,246.50,256.75,267.00,267.25,267.25,278.25 -110,129.75,158.75,226.25,236.00,248.75,259.00,269.25,269.50,269.50,280.50 -111,131.00,160.25,228.25,238.25,251.00,261.25,271.50,271.75,271.75,282.75 -112,132.25,161.75,230.25,240.50,253.25,263.75,274.00,274.25,274.25,285.25 -113,133.50,163.25,232.25,242.50,255.50,266.25,276.50,276.75,276.75,287.75 -114,134.75,164.75,234.25,244.50,258.00,268.75,279.00,279.25,279.25,290.25 -115,136.00,166.25,236.25,246.50,260.25,271.00,281.25,281.50,281.50,292.50 -116,137.25,167.75,238.25,248.50,262.50,273.50,283.75,284.00,284.00,295.00 -117,138.50,169.25,240.50,250.75,264.75,275.75,286.00,286.25,286.25,297.25 -118,139.75,170.75,242.50,252.75,267.00,278.00,288.50,288.75,288.75,299.75 -119,141.00,172.25,244.50,255.00,269.25,280.25,290.75,291.00,291.00,302.00 -120,142.25,173.75,246.50,257.00,271.50,282.75,293.25,293.50,293.50,304.50 -121,143.25,175.25,248.50,259.00,273.75,285.00,295.75,296.00,296.00,307.00 -122,144.25,176.75,250.75,261.25,276.25,287.50,298.25,298.50,298.50,309.50 -123,145.50,178.25,252.75,263.50,278.50,289.75,300.75,301.00,301.00,312.00 -124,146.75,179.75,254.75,265.50,280.75,292.00,303.25,303.50,303.50,314.50 -125,148.00,181.25,256.75,267.50,282.75,294.50,305.75,306.00,306.00,317.00 -126,149.25,182.75,258.75,269.50,285.00,296.75,308.25,308.50,308.50,319.50 -127,150.25,184.25,260.75,271.75,287.25,299.00,310.50,310.75,310.75,321.75 -128,151.25,185.75,263.00,274.00,289.50,301.50,313.00,313.25,313.25,324.25 -129,152.25,187.25,265.00,276.25,291.75,304.00,315.50,315.75,315.75,326.75 -130,153.50,188.75,267.00,278.50,294.00,306.25,318.25,318.50,318.50,329.50 -131,154.75,190.25,269.00,280.50,296.25,308.50,320.75,321.00,321.00,332.00 -132,156.00,191.75,271.00,282.75,298.50,310.75,323.25,323.50,323.50,334.50 -133,157.00,193.25,273.25,285.00,300.75,313.00,325.75,326.00,326.00,337.00 -134,158.00,194.75,275.25,287.00,303.00,315.50,328.25,328.50,328.50,339.50 -135,159.00,196.25,277.25,289.00,305.25,317.75,330.75,331.00,331.00,342.00 -136,160.00,197.50,279.25,291.00,307.50,320.00,333.00,333.25,333.25,344.25 -137,161.00,198.75,281.25,293.25,309.75,322.50,335.50,335.75,335.75,346.75 -138,161.75,200.00,283.25,295.25,312.00,325.00,338.00,338.25,338.25,349.25 -139,162.50,201.25,285.25,297.25,314.50,327.50,340.50,340.75,340.75,351.75 -140,163.25,202.50,287.25,299.50,316.75,329.75,342.75,343.00,343.00,354.00 -141,164.00,203.75,289.25,301.75,319.00,332.25,345.25,345.50,345.50,356.50 -142,164.50,204.75,291.25,304.00,321.25,334.50,347.75,348.00,348.00,359.00 -143,165.25,206.00,293.25,306.25,323.50,336.75,350.00,350.25,350.25,361.25 -144,166.00,207.00,295.00,308.50,326.00,339.25,352.50,352.75,352.75,363.75 -145,166.75,208.00,296.50,310.75,328.25,341.50,355.00,355.25,355.25,366.25 -146,167.50,208.75,298.00,313.00,330.75,344.00,357.50,357.75,357.75,368.75 -147,168.25,209.50,299.50,315.00,333.00,346.25,360.00,360.25,360.25,371.25 -148,168.75,210.25,300.75,317.00,335.25,348.50,362.25,362.50,362.50,373.50 -149,169.25,211.00,302.00,319.00,337.50,350.75,364.50,364.75,364.75,375.75 -150,170.00,211.75,303.25,321.00,339.50,353.00,366.75,367.00,367.00,378.00 diff --git a/dist/barry/products/NextDayAirSaver.csv b/dist/barry/products/NextDayAirSaver.csv deleted file mode 100644 index b53df2be7..000000000 --- a/dist/barry/products/NextDayAirSaver.csv +++ /dev/null @@ -1,152 +0,0 @@ -Exceed,132,133,134,135,136,137,138 -Letter,10.50,11.00,12.00,12.25,12.50,12.75,13.00 -1,12.25,13.75,16.75,18.00,18.50,19.25,20.25 -2,13.25,14.75,18.50,19.75,20.50,21.50,22.50 -3,14.00,15.75,20.25,21.75,22.75,23.75,24.75 -4,14.75,16.50,22.25,23.50,24.75,26.00,26.75 -5,15.50,17.50,24.00,25.50,27.00,28.25,29.00 -6,16.25,18.25,26.00,27.75,29.50,30.50,31.25 -7,17.00,19.25,28.00,30.00,31.75,32.75,33.25 -8,17.75,20.00,30.00,32.00,34.00,35.00,35.50 -9,18.25,21.00,32.00,34.00,36.00,37.00,37.50 -10,19.00,22.00,33.75,36.00,38.25,39.25,39.75 -11,19.50,23.00,35.50,37.75,40.25,41.25,41.75 -12,20.25,24.00,37.25,39.75,42.25,43.25,43.75 -13,21.00,24.75,39.00,41.50,44.00,45.00,46.00 -14,21.75,25.75,40.50,43.25,45.75,46.75,48.25 -15,22.50,26.50,42.00,44.75,47.25,48.50,50.25 -16,23.00,27.25,43.25,46.25,48.75,50.00,52.00 -17,23.50,28.25,44.50,47.75,50.25,51.50,53.50 -18,24.25,29.00,45.75,49.00,51.50,52.75,54.75 -19,25.00,29.75,47.25,50.50,53.00,54.25,56.25 -20,25.50,30.25,48.75,52.00,54.25,55.50,57.75 -21,26.25,31.00,50.00,53.25,55.50,57.00,59.25 -22,27.00,31.75,51.25,54.50,56.75,58.25,60.50 -23,27.50,32.50,52.50,55.75,58.00,59.50,61.75 -24,28.25,33.25,54.00,57.25,59.50,61.00,63.25 -25,29.00,34.00,55.25,58.75,61.00,62.50,64.75 -26,29.75,34.75,56.50,60.25,62.50,64.00,66.50 -27,30.25,35.25,58.00,61.75,64.00,65.50,68.00 -28,31.00,36.00,59.50,63.25,65.50,67.00,69.50 -29,31.75,36.75,61.00,64.75,67.00,68.50,71.00 -30,32.25,37.25,62.25,66.00,68.25,69.75,72.25 -31,33.00,38.00,63.75,67.50,69.75,71.25,73.75 -32,33.75,38.75,65.25,69.00,71.25,72.75,75.25 -33,34.50,39.75,66.75,70.50,72.75,74.25,76.75 -34,35.00,40.50,68.25,72.00,74.25,75.75,78.25 -35,35.75,41.25,69.75,73.50,75.75,77.25,79.75 -36,36.50,42.00,71.00,75.00,77.25,78.75,81.50 -37,37.25,42.75,72.50,76.50,78.75,80.25,83.25 -38,38.00,43.50,73.75,78.00,80.50,82.00,85.00 -39,38.50,44.25,75.00,79.75,82.25,83.75,86.75 -40,39.25,45.00,76.50,81.25,84.00,85.50,88.50 -41,39.75,45.75,78.00,82.75,85.50,87.00,90.25 -42,40.50,46.50,79.75,84.50,87.25,88.75,92.00 -43,41.25,47.50,81.25,86.25,89.00,90.50,93.75 -44,42.00,48.50,82.75,87.75,90.50,92.25,95.50 -45,42.75,49.25,84.00,89.00,92.00,93.75,97.00 -46,43.50,50.25,85.50,90.50,93.50,95.25,98.75 -47,44.25,51.25,86.75,91.75,95.00,96.75,100.25 -48,45.00,52.25,88.25,93.25,96.50,98.25,102.00 -49,45.75,53.25,89.75,94.75,98.00,99.75,103.75 -50,46.50,54.25,91.00,96.00,99.50,101.50,105.50 -51,47.25,55.25,92.50,97.50,101.00,103.25,107.25 -52,48.25,56.25,94.00,99.00,102.75,105.00,109.00 -53,49.00,57.25,95.25,100.25,104.50,106.75,110.75 -54,50.00,58.25,96.50,101.50,106.25,108.50,112.75 -55,50.75,59.50,98.00,103.00,108.00,110.50,114.75 -56,51.75,60.75,99.25,104.50,109.50,112.50,116.75 -57,52.50,62.00,100.75,106.00,111.25,114.25,118.50 -58,53.50,63.25,102.25,107.50,113.00,116.25,120.50 -59,54.50,64.75,104.00,109.25,114.75,118.25,122.50 -60,55.50,66.00,105.50,111.00,116.50,120.25,124.75 -61,56.50,67.25,107.00,113.00,118.50,122.50,127.00 -62,57.75,68.50,108.75,114.75,120.25,124.50,129.50 -63,58.75,69.75,110.75,116.75,122.25,126.75,132.00 -64,60.00,71.25,112.50,118.50,124.00,128.75,134.25 -65,61.00,72.75,114.00,120.50,126.00,131.00,136.50 -66,62.00,74.00,115.50,122.50,128.00,133.00,138.75 -67,63.00,75.25,117.25,124.25,130.25,135.25,141.00 -68,64.25,76.75,119.00,126.25,132.25,137.25,143.25 -69,65.50,78.25,120.75,128.00,134.25,139.25,145.50 -70,66.75,79.50,122.50,130.00,136.50,141.50,147.75 -71,67.75,80.75,124.25,131.75,138.50,144.00,150.25 -72,69.00,82.25,126.00,133.75,140.50,146.25,152.50 -73,70.00,83.75,128.00,135.75,142.50,148.50,154.75 -74,71.25,85.25,130.00,137.75,144.75,151.00,157.25 -75,72.50,86.75,132.25,140.00,147.00,153.25,159.50 -76,73.75,88.00,134.25,142.00,149.00,155.50,161.75 -77,75.00,89.50,136.25,144.00,151.00,157.75,164.25 -78,76.25,91.25,138.25,146.00,153.00,160.00,166.50 -79,77.25,92.75,140.25,148.00,155.00,162.00,168.75 -80,78.50,94.25,142.50,150.25,157.25,164.25,171.00 -81,79.75,95.75,144.75,152.50,159.50,166.75,173.50 -82,81.00,97.25,147.00,154.75,161.75,169.00,175.75 -83,82.25,98.75,149.00,156.75,163.75,171.00,177.75 -84,83.25,100.25,151.00,158.75,166.00,173.25,180.00 -85,84.50,102.00,153.00,160.75,168.00,175.25,182.00 -86,85.50,103.75,155.25,163.00,170.25,177.50,184.25 -87,86.50,105.25,157.25,165.00,172.25,179.50,186.25 -88,87.50,106.75,159.25,167.00,174.25,181.50,188.50 -89,88.75,108.25,161.00,168.75,176.25,183.50,190.75 -90,89.75,109.75,163.00,170.75,178.50,185.75,193.00 -91,90.75,111.25,164.75,172.50,180.50,188.00,195.25 -92,92.00,112.75,166.50,174.25,182.50,190.00,197.25 -93,93.25,114.25,168.25,176.00,184.50,192.00,199.50 -94,94.25,115.50,170.00,177.75,186.50,194.25,201.75 -95,95.50,116.75,171.75,179.50,188.50,196.50,204.00 -96,96.50,118.25,173.50,181.25,190.25,198.50,206.00 -97,97.50,119.50,175.25,183.00,192.25,200.50,208.25 -98,98.50,121.00,177.00,184.75,194.00,202.25,210.25 -99,99.75,122.25,178.75,186.50,196.00,204.25,212.25 -100,100.75,123.50,180.25,188.25,198.00,206.25,214.50 -101,101.75,125.00,181.75,189.75,200.00,208.25,216.50 -102,103.00,126.25,183.50,191.50,201.75,210.25,218.50 -103,104.00,127.50,185.25,193.25,203.75,212.25,220.75 -104,105.00,128.75,187.00,195.00,205.50,214.25,223.00 -105,106.25,130.00,188.75,197.00,207.50,216.25,225.00 -106,107.25,131.50,190.50,198.75,209.50,218.25,227.00 -107,108.25,132.75,192.25,200.50,211.75,220.50,229.25 -108,109.25,134.00,194.00,202.25,213.75,222.75,231.50 -109,110.50,135.25,195.75,204.25,215.75,224.75,233.50 -110,111.50,136.50,197.75,206.25,217.75,226.75,235.50 -111,112.50,137.75,199.50,208.25,220.00,229.00,237.75 -112,113.75,139.25,201.25,210.25,222.00,231.00,239.75 -113,114.75,140.50,203.00,212.00,223.75,233.00,242.00 -114,115.75,141.75,204.75,213.75,225.50,235.00,244.25 -115,117.00,143.25,206.50,215.50,227.50,237.00,246.25 -116,118.25,144.50,208.25,217.50,229.50,239.00,248.25 -117,119.25,145.75,210.25,219.50,231.50,241.00,250.25 -118,120.25,147.00,212.00,221.25,233.50,243.00,252.50 -119,121.25,148.25,213.75,223.00,235.50,245.00,254.50 -120,122.25,149.50,215.75,225.00,237.50,247.25,256.75 -121,123.25,150.75,217.50,226.75,239.50,249.25,258.75 -122,124.25,151.75,219.50,228.75,241.75,251.50,261.00 -123,125.25,153.00,221.25,230.50,243.75,253.50,263.25 -124,126.25,154.25,223.00,232.25,245.75,255.50,265.50 -125,127.25,155.50,224.75,234.00,247.50,257.50,267.50 -126,128.25,156.75,226.50,235.75,249.50,259.50,269.75 -127,129.25,158.00,228.25,237.50,251.50,261.50,271.75 -128,130.00,159.50,230.00,239.50,253.50,263.75,274.00 -129,131.00,161.00,231.75,241.75,255.75,266.00,276.25 -130,132.00,162.50,233.50,243.75,257.75,268.00,278.25 -131,133.00,163.75,235.25,245.50,259.50,270.00,280.50 -132,134.00,165.00,237.00,247.25,261.25,272.00,282.75 -133,135.00,166.50,239.00,249.25,263.25,274.00,285.00 -134,136.00,167.75,240.75,251.00,265.25,276.00,287.00 -135,136.75,169.00,242.50,252.75,267.25,278.00,289.00 -136,137.50,170.00,244.25,254.50,269.25,280.25,291.25 -137,138.25,171.00,246.00,256.25,271.25,282.25,293.50 -138,139.00,171.75,247.75,258.00,273.25,284.50,295.75 -139,139.75,172.75,249.50,260.00,275.25,286.50,297.75 -140,140.50,174.00,251.25,262.00,277.25,288.75,300.00 -141,141.25,175.25,253.00,264.00,279.25,290.75,302.25 -142,141.75,176.25,254.75,265.75,281.25,292.75,304.25 -143,142.25,177.00,256.50,267.75,283.25,294.75,306.50 -144,142.75,177.75,258.00,269.75,285.25,296.75,308.75 -145,143.50,178.75,259.50,271.75,287.50,299.00,311.00 -146,144.00,179.50,260.75,273.75,289.50,301.00,313.00 -147,144.75,180.25,262.00,275.50,291.25,303.00,315.00 -148,145.25,181.00,263.25,277.25,293.25,305.00,317.25 -149,145.75,181.50,264.50,279.00,295.25,307.00,319.25 -150,146.25,182.25,265.75,281.00,297.25,309.00,321.25 diff --git a/dist/barry/products/access.asc b/dist/barry/products/access.asc deleted file mode 100644 index 368c6538a..000000000 --- a/dist/barry/products/access.asc +++ /dev/null @@ -1,6 +0,0 @@ -username password name last_login super yes_tables no_tables upload acl export edit pages files config reconfig groups meta no_functions yes_functions table_control -__MVC_SUPERUSER__ __MVC_CRYPTPW__ Super User 1 -test sSPI6dOz/ciLg Papa Bear 962090612 0 2ndDayAir=vi Ground=vi NextDayAir=vix affiliate=vix area=vix country=vix inventory=vix locale=veix orderline=veix pricing=veix products=veix shipping=veix transactions=veix userdb=ex variable=ex mv_metadata access inventory pricing products cat pricing products inventory orderline pricing products ind* news* about* privacy* error.log etc/* 0 1 :orders products item=lvecd group=lv group=lv order=lvecau dbdownload laydownload orderstats userdb=lvep {'pricing' => {'no_fields' => "price_group",},'products' => {'no_keys' => "00-342",'no_fields' => "weight nontaxable",'yes_keys' => "00-0011 00-0011a 00-342 00-343 00-404",'yes_fields' => "sku artist title description comment price",},} -shipping ceJq5Qwc3ApHQ Shipping User 962075741 0 orderline transactions orderline transactions NONE etc/tracking.asc orders/* 0 0 :orders orderline transactions order=d access=vl group=vl {'transactions' => {'yes_fields' => "code status",},'orderline' => {'yes_fields' => "code status",},} -:backup Backup -:orders * Order admin 0 orderline transactions userdb userdb transactions orderline orderline transactions userdb order=d diff --git a/dist/barry/products/affiliate.txt b/dist/barry/products/affiliate.txt deleted file mode 100644 index 2c3fdd080..000000000 --- a/dist/barry/products/affiliate.txt +++ /dev/null @@ -1,9 +0,0 @@ -affiliate name campaigns join_date url timeout active password -bill Bill's books -joe Joe's Garage -bob Low Bob's -tim Tiny Tim's -rosie Rosy Cheeks -mary Wedding Shop -jean Denim Unlimited -judy Puppets Galore diff --git a/dist/barry/products/area.txt b/dist/barry/products/area.txt deleted file mode 100644 index ce4370883..000000000 --- a/dist/barry/products/area.txt +++ /dev/null @@ -1,12 +0,0 @@ -code sel name which_page sort display_type image image_prop banner_image banner_text link_type url tab page search selector link_template -O1 left Books all 01 image books.gif border=0 internal subcat mv_arg=books -O2 left About us all 00 image about.gif border=0 internal about -O3 left Bikes all 02 image bikes.gif border=0 simple products category=bikes -O4 left Sandals all 02 image sandals.gif border=0 simple products category=sandals -O5 left Shoes all 02 image shoes.gif border=0 simple products category=shoes -O6 left Parts all 03 image bikeparts.gif border=0 internal subcat mv_arg=parts -O7 top Home all image home.gif border=0 internal index -O8 top Shopping cart all image shoppingcart.gif border=0 internal ord/basket -O9 top Customer Service all 01 image customer.gif border=0 internal account -O10 top Help with shopping all 01 image help.gif border=0 internal help -O11 top Contact us all 02 image contactus.gif border=0 internal contact diff --git a/dist/barry/products/banner.txt b/dist/barry/products/banner.txt deleted file mode 100644 index b24cf3eac..000000000 --- a/dist/barry/products/banner.txt +++ /dev/null @@ -1,8 +0,0 @@ -code category weight rotate banner -Renaissance Renaissance 1 0 Renaissance banner 1 -Renaissance2 Renaissance 2 0 Renaissance banner 2 -Renaissance3 Renaissance 7 0 Renaissance banner 3 -Americana Americana 1 0 Americana banner 1 -Americana2 Americana 2 0 Americana banner 2 -Americana3 Americana 7 0 Americana banner 3 -default 1 Default banner 1{or}Default banner 2{or}Default banner 3 diff --git a/dist/barry/products/cat.txt b/dist/barry/products/cat.txt deleted file mode 100644 index cc2181922..000000000 --- a/dist/barry/products/cat.txt +++ /dev/null @@ -1,5 +0,0 @@ -code sel name which_page sort display_type image image_prop banner_image banner_text link_type url tab page search selector link_template -O1 O1 Fiction name complex fi=products st=db ac=0 co=1 sf=category se=Books op=rm nu=0 bs=1 sf=subcategory se=Fiction op=rm nu=0 bs=1 ml=10 tf=name to=x -O2 O1 Non-fiction name complex fi=products st=db ac=0 co=1 sf=category se=Books op=rm nu=0 bs=1 sf=subcategory se=Non-fiction op=rm nu=0 bs= ml=10 tf=name to=x -O3 O1 Kids 01 name complex fi=products st=db ac=0 co=1 sf=category se=Books op=rm nu=0 bs=1 sf=subcategory se=Kids op=rm nu=0 bs= ml=10 tf=name to=x -O4 O1 Women 01 name complex fi=products st=db ac=0 co=1 sf=category se=Books op=rm nu=0 bs=1 sf=subcategory se=Women op=rm nu=0 bs= ml=10 tf=name to=x diff --git a/dist/barry/products/country.txt b/dist/barry/products/country.txt deleted file mode 100644 index 86098a5e4..000000000 --- a/dist/barry/products/country.txt +++ /dev/null @@ -1,197 +0,0 @@ -code selector shipmodes name -AD AD air_D surf_D Andorra -AE AE air_F surf_F United Arab Emirates -AF AF air_F surf_F Afghanistan -AG AG air_C surf_C Antigua and Barbuda -AI AI air_C surf_C Anguilla -AL AL air_E surf_E Albania -AM AM air_F surf_F Armenia -AN AN air_C surf_C Netherlands Antilles -AO AO air_F surf_F Angola -AR AR air_F surf_F Argentina -AT AT air_D surf_D Austria -AU AU air_F surf_F Australia -AW AW air_C surf_C Aruba -AZ AZ air_F surf_F Azerbaijan -BB BB air_D surf_D Barbados -BD BD air_F surf_F Bangladesh -BE BE air_F surf_F Belgium -BF BF air_F surf_F Burkina Faso -BG BG air_F surf_F Bulgaria -BH BH air_F surf_F Bahrain -BI BI air_F surf_F Burundi -BJ BJ air_E surf_E Benin -BM BM air_C surf_C Bermuda -BN BN air_F surf_F Brunei Darussalam -BO BO air_D surf_D Bolivia -BR BR air_F surf_F Brazil -BS BS air_C surf_C Bahamas -BT BT air_F surf_F Bhutan -BW BW air_F surf_F Botswana -BY BY air_F surf_F Belarus -BZ BZ air_C surf_C Belize -CA CA air_A surf_A Canada -CF CF air_F surf_F Central African Republic -CG CG air_F surf_F Congo -CH CH air_D surf_D Switzerland -CL CL air_F surf_F Chile -CM CM air_F surf_F Cameroon -CN CN air_F surf_F China -CO CO air_D surf_D Colombia -CR CR air_C surf_C Costa Rica -CV CV air_F surf_F Cape Verde -CY CY air_E surf_E Cyprus -CZ CZ air_E surf_E Czech Republic -DE DE air_D surf_D Germany -DJ DJ air_F surf_F Djibouti -DK DK air_E surf_E Denmark -DM DM air_C surf_C Dominica -DO DO air_C surf_C Dominican Republic -DZ DZ air_F surf_F Algeria -EC EC air_E surf_E Ecuador -EE EE air_F surf_F Estonia -EG EG air_F surf_F Egypt -EI EI air_E surf_E Ireland (Eire) -ER ER air_F surf_F Eritrea -ES ES air_E surf_E Spain -ET ET air_F surf_F Ethiopia -FI FI air_F surf_F Finland -FJ FJ air_D surf_D Fiji -FO FO air_E surf_E Faroe Islands -FR FR air_F surf_F France (Includes Monaco) -GA GA air_F surf_F Gabon -GD GD air_C surf_C Grenada -GE GE air_F surf_F Georgia -GF GF air_E surf_E French Guiana -GH GH air_F surf_F Ghana -GI GI air_E surf_E Gibraltar -GL GL air_F surf_F Greenland -GM GM air_D surf_D Gambia -GN GN air_D surf_D Guinea -GP GP air_C surf_C Guadeloupe -GQ GQ air_F surf_F Equatorial Guinea -GR GR air_E surf_E Greece -GT GT air_C surf_C Guatemala -GW GW air_D surf_D Guinea-Bissau -GY GY air_D surf_D Guyana -HK HK air_E surf_E Hong Kong -HN HN air_D surf_D Honduras -HT HT air_C surf_C Haiti -HU HU air_E surf_E Hungary -ID ID air_F surf_F Indonesia -IL IL air_E surf_E Israel -IN IN air_F surf_F India -IR IR air_F surf_F Iran -IS IS air_E surf_E Iceland -IT IT air_E surf_E Italy -JM JM air_C surf_C Jamaica -JO JO air_E surf_E Jordan -JP JP air_F surf_F Japan -KE KE air_F surf_F Kenya -KI KI air_D surf_D Kiribati -KM KM air_F surf_F Comoros -KR KR air_E surf_E South Korea -KW KW air_F surf_F Kuwait -KY KY air_C surf_C Cayman Islands -KZ KZ air_F surf_F Kazakhstan -LA LA air_F surf_F Laos -LB LB air_E surf_E Lebanon -LI LI air_D surf_D Liechtenstein -LK LK air_F surf_F Sri Lanka -LS LS air_F surf_F Lesotho -LT LT air_F surf_F Lithuania -LU LU air_D surf_D Luxembourg -LY LY air_F surf_F Libya -MA MA air_E surf_E Morocco -MG MG air_F surf_F Madagascar -MK MK air_E surf_E Macedonia -ML ML air_E surf_E Mali -MQ MQ air_C surf_C Martinique -MR MR air_F surf_F Mauritania -MS MS air_C surf_C Montserrat -MT MT air_E surf_E Malta -MU MU air_F surf_F Mauritius -MV MV air_F surf_F Maldives -MW MW air_F surf_F Malawi -MX MX air_B surf_B Mexico -MZ MZ air_F surf_F Mozambique -NA NA air_F surf_F Namibia -NC NC air_F surf_F New Caledonia -NE NE air_F surf_F Niger -NG NG air_E surf_E Nigeria -NI NI air_D surf_D Nicaragua -NL NL air_E surf_E Netherlands -NO NO air_F surf_F Norway -NP NP air_F surf_F Nepal -NR NR air_E surf_E Nauru -NZ NZ air_F surf_F New Zealand -OM OM air_F surf_F Oman -PA PA air_C surf_C Panama -PG PG air_F surf_F Papua New Guinea -PH PH air_F surf_F Philippines -PK PK air_F surf_F Pakistan -PL PL air_D surf_D Poland -PM PM air_C surf_C St. Pierre and Miquelon -PT PT air_E surf_E Portugal -PY PY air_F surf_F Paraguay -RE RE air_F surf_F Reunion -RW RW air_F surf_F Rwanda -SA SA air_F surf_F Saudi Arabia -SC SC air_F surf_F Seychelles -SD SD air_F surf_F Sudan -SE SE air_F surf_F Sweden -SG SG air_F surf_F Singapore -SH SH air_E surf_E St. Helena -SI SI air_E surf_E Slovenia -SK SK air_E surf_E Slovak Republic -SL SL air_F surf_F Sierra Leone -SN SN air_F surf_F Senegal -SR SR air_D surf_D Suriname -ST ST air_F surf_F Sao Tome and Principe -SV SV air_D surf_D El Salvador -SZ SZ air_F surf_F Swaziland -Sb Sb air_E surf_E Solomon Islands -TC TC air_C surf_C Turks and Caicos Islands -TD TD air_F surf_F Chad -TG TG air_F surf_F Togo -TH TH air_F surf_F Thailand -TN TN air_E surf_E Tunisia -TO TO air_D surf_D Tonga -TR TR air_E surf_E Turkey -TT TT air_D surf_D Trinidad and Tobago -TV TV air_D surf_D Tuvalu -TW TW air_E surf_E Taiwan -TZ TZ air_F surf_F Tanzania -UA UA air_F surf_F Ukraine -UG UG air_F surf_F Uganda -UK UK air_E surf_E United Kingdom -US US upsg upsb upsr United States -UY UY air_D surf_D Uruguay -VE VE air_D surf_D Venezuela -VU VU air_D surf_D Vanuatu -XA XA air_E surf_E Azores -XB XB air_E surf_E Bosnia-Herzegovina -XC XC air_C surf_C British Virgin Islands -XD XD air_F surf_F Burma -XE XE air_F surf_F Corsica -XF XF air_F surf_F Cote d` Ivoire (Ivory Coast) -XG XG air_E surf_E Croatia -XI XI air_F surf_F French Polynesia (Tahiti) -XL XL air_E surf_E Macao -XM XM air_D surf_D Madeira Islands -XO XO air_D surf_D Pitcairn Island -XP XP air_C surf_C St. Christopher and Nevis -XQ XQ air_C surf_C St. Lucia -XR XR air_C surf_C St. Vincent and the Grenadines -XS XS air_E surf_E Serbia-Montenegro -XT XT air_E surf_E Syrian Arab Republic -XU XU air_F surf_F Tristan da Cunha -XV XV air_E surf_E Vatican City -XW XW air_F surf_F Vietnam -XX XX air_F surf_F Wallis and Furuna Islands -XY XY air_D surf_D Western Samoa -YE YE air_F surf_F Yemen -ZA ZA air_F surf_F South Africa -ZM ZM air_F surf_F Zambia -ZR ZR air_F surf_F Zaire -ZW ZW air_F surf_F Zimbabwe diff --git a/dist/barry/products/inventory.txt b/dist/barry/products/inventory.txt deleted file mode 100644 index 1d7057250..000000000 --- a/dist/barry/products/inventory.txt +++ /dev/null @@ -1 +0,0 @@ -sku quantity stock_message account cogs_account diff --git a/dist/barry/products/locale.txt b/dist/barry/products/locale.txt deleted file mode 100644 index ec29d83fa..000000000 --- a/dist/barry/products/locale.txt +++ /dev/null @@ -1,26 +0,0 @@ -code en_US de_DE fr_FR -January Januar Janvier -February Februar Février -March März Mars -April April Avril -May Mai Mai -June Juni Juin -July Juli Juillet -August August Aout -September September Septembre -October October Octobre -November November Novembre -December Dezember Décembre -PriceDivide 1 0.5409 0.1632 -ProductFiles -currency_symbol $ DM FF -decimal_point . . . -default 1 0 0 -frac_digits 2 2 2 -mon_decimal_point . , , -mon_thousand_sep -mon_thousands_sep , , . -p_cs_precedes 1 -p_sep_by_space 1 -price_picture DM ### ### ###,## -products de_products produits diff --git a/dist/barry/products/merchandising.txt b/dist/barry/products/merchandising.txt deleted file mode 100644 index 5453473d2..000000000 --- a/dist/barry/products/merchandising.txt +++ /dev/null @@ -1,6 +0,0 @@ -sku featured banner_text banner_image blurb_begin blurb_end start finish upsell_to cross_sell others_bought -george bookpick Curiosity he had.... luck he didn't.
    Curious George Rides a Bike 20000806 20000806 -jurr specials Roooaarrr! your way through this nailbiter.
    Jurassic Park 20000806 20000806 -okl specials No wrath.... just grape shoes.
    Tatami Oklahoma Flats 20000806 20000806 -pedal specials Pedal like the wind No nonsense, no toe clips, no problems.
    Flat ATB Pedals 20000806 20000806 -shoeleather bookpick Don't wear it out... before you read Shoe Leather 20000806 20000806 diff --git a/dist/barry/products/mv_metadata.asc b/dist/barry/products/mv_metadata.asc deleted file mode 100644 index 36a2e14f4..000000000 --- a/dist/barry/products/mv_metadata.asc +++ /dev/null @@ -1,120 +0,0 @@ -code type width height field db name outboard options attribute label help lookup filter help_url pre_filter lookup_exclude prepend append -2ndDayAir 200 -NextDayAir 200 -access::super select 0=No, 1=Yes -affiliate text 25 affiliate,name,url,active Affiliates Data -affiliate::affiliate text 12 Affiliate ID word -affiliate::join_date text Join date -affiliate::name text 50 Affiliate Name -affiliate::timeout text 8 Timeout delay (in seconds, 0 to disable) -affiliate::url text 70 URL Default URL to redirect to -area -area::display_type select name=Name,url=URL only,icon=Icon and name, image=Image -area::image imagedir __MVC_IMAGEDIR__/images -area::link_type select none=No link, external=External link (http://...), internal=Interchange page, simple=Simple search, complex=Complex search -cat::area multiple 5 area code -cat::display_type select name=Name,url=URL only,icon=Icon and name, image=Image -cat::link_type select none=No link, external=External link (http://...), internal=Interchange page, simple=Simple search, complex=Complex search -cat::search textarea 50 4 -country 200 -custview::userdb::dealer display =No,1=Yes Dealer -custview::userdb::email_copy display =No, 1=Yes Payment method -custview::userdb::fax_order display =Credit Card, 1=Fax or Mail, 2=Purchase order, 3=COD Payment method -custview::userdb::mail_list display offer=Special Offers, newsletter=Newsletter, alert=Alerts and Recalls, upgrade=Upgrades null_to_space -dbconfig::mv_metadata::code hidden_text Database table -dbconfig::mv_metadata::db combo tables nullselect -dbconfig::mv_metadata::field checkbox columns:: List on select page Must have the key field (usually it is the first one) null_to_comma -dbconfig::mv_metadata::filter multiple 5 filesafe=Safe for file name, uc=Upper case, nullselect=First non-null (combo box), null_to_space=Translate null to space, null_to_comma=Translate null to comma, lc=Lower case, digits_dot=Decimal number (not negative), backslash=Remove backslashes, namecase=Name case, name=Turn LAST,FIRST into FIRST LAST, digits=Digits only, word=Word chars only (A-z0-9_), unix=DOS to UNIX, dos=UNIX to DOS, mac=UNIX to MAC, gate=Only allow if scratch set, no_white=No whitespace, strip=Strip leading/trailing whitespace, sql=Escape single quotes (SQL), text2html=Simple text to HTML, urlencode=URL encode (%20, etc), pagefile=Safe for Interchange page name, entities=HTML entities (& -> &amp;), date_change=MM/DD/YYYY to YYYYMMDD null_to_space -dbconfig::mv_metadata::height text 4 Select page rows Number of rows to display at selector page. digits -dbconfig::mv_metadata::help textarea 70 4 Help displays at top of page -dbconfig::mv_metadata::help_url text 70 4 Help URL links below help text -dbconfig::mv_metadata::lookup text 20 -dbconfig::mv_metadata::name text 70 4 Description -dbconfig::mv_metadata::type select select=Select box, text=Text entry*,textarea=Textarea,combo=Combo Select, radio=Radio box, radio_nbsp=Radio (nbsp), checkbox=Check box, check_nbsp=Checkbox (nbsp), hidden_text=Hidden (show text), multiple=Multiple Select, imagedir=Image listing, date=Date selector,display=Text of option Widget type filesafe -dbconfig::mv_metadata::width text 4 digits -inventory 25 sku,quantity -inventory::stock_message select In stock, Ships in 3-5 days, Ships in 4-6 weeks, Special order -merchandising::banner_image text Banner image if appropriate -merchandising::banner_text text Banner text for use where appropriate. -merchandising::blurb_begin text Teaser catch line for feature display -merchandising::blurb_end text Closer end text for feature display -merchandising::cross_category select products =- none - category -merchandising::featured combo =none, specials=Specials, bookpick=Book Pick Where featured nullselect -merchandising::finish date End date -merchandising::sku text products sku -merchandising::start date Start date -merchandising::upsell_to multiple 10 products sku null_to_space -mv_metadata text 100 code type label -mv_metadata::code text 50 Table::Column Table::column to be operated on -mv_metadata::db combo tables nullselect -mv_metadata::filter multiple 5 filesafe=Safe for file name, uc=Upper case, nullselect=First non-null (combo box), null_to_space=Translate null to space, null_to_comma=Translate null to comma, lc=Lower case, digits_dot=Decimal number (not negative), backslash=Remove backslashes, namecase=Name case, name=Turn LAST,FIRST into FIRST LAST, digits=Digits only, word=Word chars only (A-z0-9_), unix=DOS to UNIX, dos=UNIX to DOS, mac=UNIX to MAC, gate=Only allow if scratch set, no_white=No whitespace, strip=Strip leading/trailing whitespace, sql=Escape single quotes (SQL), text2html=Simple text to HTML, urlencode=URL encode (%20, etc), pagefile=Safe for Interchange page name, entities=HTML entities (& -> &amp;), date_change=MM/DD/YYYY to YYYYMMDD null_to_space -mv_metadata::height text 4 digits -mv_metadata::help textarea 70 4 -mv_metadata::lookup text 20 -mv_metadata::options text 60 -mv_metadata::type select select=Select box, text=Text entry*,textarea=Textarea,combo=Combo Select, radio=Radio box, radio_nbsp=Radio (nbsp), checkbox=Check box, check_nbsp=Checkbox (nbsp), hidden_text=Hidden (show text), multiple=Multiple Select, imagedir=Image listing, date=Date selector,display=Text of option Widget type filesafe -mv_metadata::width text 4 digits -order_view::orderline::status display pending=Pending, shipped=Shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -order_view::transactions::status display pending=Pending, shipped=Shipped, partial=Partially shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -orderline text code,sku,description,price, quantity,subtotal -orderline::status combo pending=Pending, shipped=Shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -pricing::price_group combo pricing Discount group price_group nullselect -products text sku,description,category,price -products::artist text 30 Artist -products::category combo products Category Enter in box for new category. category nullsellect -products::color textarea 50 5 -products::comment textarea 70 8 Long Description -products::description text 60 Short Description -products::image imagedir images/items Image nullselect upload -products::nontaxable select =Yes, 1=No Taxable? -products::price text 12 Product Price digits_dot -products::related multiple 5 sku products Related items

    (space separated SKUs) -products::size textarea 50 5 -products::sku SKU/Item code -products::thumb imagedir images/thumb nullselect upload -products::title text 30 Title namecase -products::weight text 4 Weight in pounds digits_dot -state text code,name -transactions::status combo pending=Pending, shipped=Shipped, partial=Partially shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -userdb text username,company,lname,fname -userdb::address1 text 40 Address -userdb::address2 text 40 -userdb::b_address1 text 40 Billing Address -userdb::b_address2 text 40 -userdb::b_city text 40 Billing City -userdb::b_country text 10 Billing Country -userdb::b_fname text 40 Billing First Name -userdb::b_lname text 40 Billing Last Name -userdb::b_state text 10 Billing State -userdb::b_zip text 10 Billing Postcode -userdb::city text 40 City -userdb::company text 40 Company -userdb::country text 10 Country -userdb::dealer radio_nbsp =No,1=Yes Dealer -userdb::email text 40 Email Address -userdb::email_copy select =No, 1=Yes -userdb::fax_order select =Credit Card, 1=Fax or Mail, 2=Purchase order, 3=COD Payment method -userdb::fname text 30 First name -userdb::lname text 30 Last Name -userdb::mail_list check_nbsp offer=Special Offers, newsletter=Newsletter, alert=Alerts and Recalls, upgrade=Upgrades null_to_space -userdb::mod_time text 20 -userdb::phone_day text 30 Daytime Phone -userdb::phone_night text 30 Home Phone -userdb::state text 10 State -userdb::username hidden_%20text 16 Username no_white -userdb::zip text 10 Postcode uc word -variable::Variable::ADDRESS text Company Address -variable::Variable::CATALOG_STATIC select No, Yes Enabled for users? Yes will cause Interchange to generate static links where possible.

    No disables generation of static links for users; you can still send a search engine to the statically generated URL and it will spider the static links on the page. -variable::Variable::CGI_URL text CGI URL URL that calls Interchange, without the server name -variable::Variable::CHECK_ACCEPTED select 0=No, 1=Yes -variable::Variable::COD_ACCEPTED select 0=No, 1=Yes -variable::Variable::CREDIT_CARDS_ACCEPTED checkbox visa=Visa, mc=Mastercard, discover=Discover, amex=American Express null_to_space -variable::Variable::DOCROOT text Document root This is the directory where your HTML originates. It should match the DocumentRoot of your HTTP server. http://www.apache.org/docs/mod/core.html#documentroot -variable::Variable::MULTIORDER select =No,1=Yes Whether users should by default have multipage order forms. -variable::Variable::MYSQL select 0=No, 1=Yes -variable::Variable::PO_ACCEPTED select 0=No, 1=Yes -variable::Variable::STATIC_LOGGED select No, Yes Enabled for logged in users? Yes will cause Interchange to generate static links where possible, even when users are logged in. -variable::Variable::UI_ITEM_EXPUNGE text 60 Item expunge tables The tables that should have the SKU removed when you DELETE ITEM from the items menu. -variable::Variable::UI_META_LINK select 0=No, 1=Yes Meta edit links Determines whether enabled by default. They can be turned on in Preferences. -variable::code text Variable name -variable::pref_group text Preferences area diff --git a/dist/barry/products/orderline.txt b/dist/barry/products/orderline.txt deleted file mode 100644 index e3b1bee60..000000000 --- a/dist/barry/products/orderline.txt +++ /dev/null @@ -1 +0,0 @@ -code store_id order_number session username shipmode sku quantity price subtotal shipping taxable size color options order_date update_date status parent affiliate campaign description diff --git a/dist/barry/products/pricing.txt b/dist/barry/products/pricing.txt deleted file mode 100644 index 17a526bc5..000000000 --- a/dist/barry/products/pricing.txt +++ /dev/null @@ -1 +0,0 @@ -sku price_group q2 q5 q10 q25 q100 diff --git a/dist/barry/products/products.txt b/dist/barry/products/products.txt deleted file mode 100644 index fae96608a..000000000 --- a/dist/barry/products/products.txt +++ /dev/null @@ -1,34 +0,0 @@ -sku owner description name who_by comment display thumb image price category nontaxable weight size color related featured download dl_type dl_location volume subcategory addl_category -manhattan Footprints Manhattan Footprints Manhattan Double monk-strap shoe with leather uppers, adjustable straps, removable cork/latex footbed, and hand-stitched polyurethane soles. Available in medium width in Cherrywood Embossed, Mahogany, and Black Leather. manhattan.gif manhattan.gif 99.99 shoes 6 EMB=Embossed, MAHOG=Mahogany, BLACK=Black Leather* -race The Racing Bike Book The Racing Bike Book Francine Rivers One of the CBA's most talented and well-loved authors presents a beautiful Christmas novella that's sure to touch readers' hearts, starring Timmy, a foster child with a very special and mysterious shoe box. Tyndale House racing.gif racing.gif 7.99 books 1 0 Non-fiction -shoebox The Shoe Box: A Christmas Story The Shoe Box: A Christmas Story Francine Rivers One of the CBA's most talented and well-loved authors presents a beautiful Christmas novella that's sure to touch readers' hearts, starring Timmy, a foster child with a very special and mysterious shoe box. Tyndale House shoebox.gif shoebox.gif 9.99 books 1 0 Fiction -george Curious George Rides a Bike Curious George Rides a Bike Hans Augusto Rey George helps a little boy with his paper route and gets into all sorts of trouble. Houghton Mifflin Company george.gif george.gif 4.76 books 1 bookpick 0 Kids Books Kids Books -zinn Zinn and the Art of Mountain Bike Maintenance Zinn and the Art of Mountain Bike Maintenance Lennard Zinn Guides the reader through every aspect of troubleshooting and mountain-bike maintenance in a succinct, idiot-proof format. VeloPress zinn.gif zinn.gif 14.36 bikes 1 0 Non-Fiction -xtrcass Shimano XTR 12-32 Cassette Shimano XTR 12-32 Cassette The XTR cassette uses titanium for the three largest cogs to save weight and resist wear. 8 speed, 12-32 (232 grams) gearing. xtr.cassette.jpg xtr.cassette.jpg 84.99 parts 0 0 Cassettes -crono Cane Creek Crono Deep-V w/ Ti Spokes Cane Creek Crono Deep-V w/ Ti Spokes Super light super strong wheelset. Front Wheel weight is 865 grams, rear wheel weight is 1125 grams. chrono.deepV.jpg chrono.deepV.jpg 749.99 parts 5 0 Wheelsets -soft KHS Soft Tail KHS Soft Tail The best of both worlds. The comfort and controll of full suspension with the performance and weight of a hardtail. The KHS "Soft-tail" feature a pivotless suspension design with 25mm of rear wheel travel, easily adjustable spring rates. With a working mount at the top of the shock to eliminate the binding found in other soft tail designs that cost thousands more. True Temper OX II tubing butted tubing and a weight of 4.75lbs. Build Kits are avalaible with XTR/Superfly, XT/z2, or LX/z5. Green/Bl... KHS.soft99.jpg KHS.soft99.jpg 945.95 bikes 33 -korestem Kore Elite Stem Kore Elite Stem Huge selection in stock! Ovalized, oversized center tube to increase strength while reducing weight. CNC machined, single bolt removeable front cap. Laser engraved graphics. Bead blast finish. Almost an ounce lighter than most "cam" stems. Titanium bolts. Made in the USA. Available in 120mm x10', 135mm x 10'. All sizes 1 1/8". Colors black, or silver. Other sizes and colors avalaible special order. Other sizes include 90mm x 15', 105mm x 25' kore.elite.stem.jpg kore.elite.stem.jpg 89.99 parts 2 Stems -pedal Flat ATB Pedals Flat ATB Pedals Your basic pedal. Black metal cage, Forged alloy body. No nonsense, no toe clips, no problems. pedal.jpg pedal.jpg 14.99 parts 3 specials 0 Pedals -tirace Terry Ti-Race Liberator Mens Saddle Terry Ti-Race Liberator Mens Saddle The Terry Liberator series saddles are well known for both their quality and comfort. The Ti race saddle has a stiched leather upper, ti rails, and Terry's patented prostate friendly ultimate nothing design! 255g. Black and yellow only. Ask about Terry's "Ride it, love it, or return it" policy terry.men.gif terry.men.gif 64.99 parts 2 0 Saddles -shim434 Shimano 434 Pedal Shimano 434 Pedal A great multi purpose pedal, light enough at 475g a set to put on your cross country bike. Pop up binding system, carttridge bearings, and a replaceable resin platforms to give you bike controll for those crazy downhill sections. Or a great pedal to help out with that switch to clipless. shimano.pedal.434.JPG shimano.pedal.434.JPG 49.99 parts 3 0 Pedals -riv River, Cross My Heart River, Cross My Heart Breena Clarke A remarkable new writer makes her debut - with a novel of tragedy and triumph in the life of an African American family in Georgetown, circa 1925. Six-year-old Clara Bynum is dead, drowned in the Potomoc River in the shadow of an apparently haunted rock outcropping known locally as the Three Sisters. In scenes alive with emotional truth, River, Cross My Heart weighs the effect of Clara's absence on the people she has left behind: her parents, Alice and Willie Bynum, torn between the old world of their rural North Carolina home and the new world of the city, to which they have moved in search of a better life for themselves and their children; the friends and relatives of the Bynum family in the Georgetown neighborhood they now call home; and, most especially, Clara's sister, twelve-year-old Johnnie Mae, who must come to terms with the powerful and confused emotions sparked by her sister's death as she struggles to decide and discover the kind of woman she will become. Little, Brown & Company river.gif river.gif 7.47 books 2 0 Fiction -xtcass Shimano XT 8 Speed cassette Shimano XT 8 Speed cassette 11-28 (256 grams) or 11-30 (255 grams) gearing. shimano.xtr.jpg shimano.xtr.jpg 41.99 parts 1 0 Cassettes -shoeleather Shoe Leather Shoe Leather Stan Kent Written in a slangy, stream-of-consciousness style, the memoir of Violetta Valery Cutrero, teenage antiheroine, pulls the reader into a world of killers and victims. A cat-and-mouse game between Violetta and a cross-dressing slasher-sadist is set in the new "Gay Nineties" of San Francisco, amid a bizarre array of thrill- seekers. Blue Moon Books shoeleather.gif shoeleather.gif 6.36 books 1 bookpick Fiction -rfset Race Face Turbine LP Cranks w/pinned Rings Race Face Turbine LP Cranks w/pinned Rings Special Package Pricing: Package price on the Turbine LP Cranks and a full set of '99 New pinned and ramped RaceRings. Available in sizes and colors noted above. 8 or 9 speed rings. Rings are only avalaible in black. rf.lpcrank.jpg rf.lpcrank.jpg 249.99 parts 3 0 Cranks -spin Spinergy SPOX Wheelset Spinergy SPOX Wheelset Lighter and stronger than any wheel on the planet. The use of Vectran® in the SPOX makes this wheel the ultimate choice in lightweight strong wheels. Our SPOX weigh only 3 grams each with the rotating weight centered at the hub. Compared to normal wheels which use steel spokes, weighing 7-10 grams each with heavy spoke nipples at the rim, our SPOX adds up to a wheel you can?t possible deny your bike. spinergy.spox.jpg spinergy.spox.jpg 699.99 parts 5 0 Wheelsets -panss Panaracer Mach SS/SK Kevlar Panaracer Mach SS/SK Kevlar Speed of a slick and traction of a knobby! IMHO, these are one of the best semi slicks on the market. Agressive side knobs and enough traction on the rear to maintain climbing ability. 1.95" Avalaible in a Front SS, or Rear SK specific treads. 630 grams panaracer.mach.gif panaracer.mach.gif 29.99 parts 2 0 Tires -sxti Manitou SX Ti Manitou SX Ti 99 fork Closeout! and in stock now. Aardvark rides it and we like it. 80mm of travel and nice and light at 3.1lbs. The Manitou SX-Ti features external rebound and compression adjustment, TPC damping, MicorLube lubrication ports to keep things running smooth, norglide bushings, and a sub-7 finish on the stanchion leg, disk brake compatable. It is also nice and stiff thanks to the new MonoMag slider legs. Avalaible only in 1 1/8 inch threadless. Don't be confused with the OEM forks out there this is an orignal in the box 80mm SX Ti. man.99sxti.GIF man.99sxti.GIF 279.99 parts 10 0 Forks -aspen Footprints Aspen Footprints Aspen Light hiking boot with ankle-torque lacing for added support, half-gusset tongue to keep out trail debris, water-resistant leather uppers, removable cork/latex footbed, and injection-molded polyurethane midsoles with high-density rubber tread. Available in medium width in Dark Brown Embossed or Dark Brown/Forest Leather. aspen.gif aspen.gif 119.99 shoes 8 7,7-/2, 8, 8-1/2, 9, 9-1/2, 10, 11, 12, 13 0 -shimcr Shimano XTR Crankset Shimano XTR Crankset This price includes the BB! Hollow crank arm design reduces weight without sacrificing rigidity! Spined chain ring mount reduces weight even further. However, you MUST use XTR bottom bracket. Chain rings are 46,34,24. Crank arm lengths are 170mm, 175mm, 180mm. 636 grams crank w/rings. xtrcrank.jpg xtrcrank.jpg 329.99 parts 3 0 Cranks -myst The Mystery of the Stolen Bike The Mystery of the Stolen Bike Marc Brown When arthur and his friends ride their bikes to school, Francine is embarrassed by her hand-me-down bicycle, which used to belong to her father. It's a real clunker. But when Francine reports that the bike is stolen, her friends rally to find the thief. Will Arthur and his friends discover the true fate of Francine's bike? Little, Brown and Co mystery.gif mystery.gif 3.16 books 1 0 Kids Books -sh545 Shimano 545 pedal Shimano 545 pedal If you are into a downhill, or just tough on your equipment these are the pedals for you. Replaceable alloy cage, pop up mechanism, smooth bearings. Platforms give that added control during those technical sections, or just let you spin around the neighborhood without your biking shoes. 565g a set. shimano.pedal.jpg shimano.pedal.jpg 59.99 parts 4 0 Pedals -avid50 Avid Arch Rival 50 Brakes Avid Arch Rival 50 Brakes Finally avid has brought the great features of the Arch supreme brakes to an affordable price. The Arch Rival 50 brakes feature the accu-push parallel pad-to-rim engagement mechanism, and rim wrangeler cartridge pads. Avalaible in black. Price is per wheel. avid.arch50.jpg avid.arch50.jpg 59.99 parts 2 0 Brakes -charlesnfox Professional Charleston & Foxtrot Professional Charleston & Foxtrot The Charleston (left) is a fully enclosed shoe with Birko-Flor? uppers, fully-adjustable strap, and polyurethane lug soles. The Foxtrot (right) is a quarter-strap clog with Birko-Flor? uppers, fully-adjustable strap, and polyurethane lug soles. Both available in medium width in White Birko-Flor©. charlesnfox.gif charlesnfox.gif 69.99 shoes 6 -barbtrini Birkikids Trinidad & Barbados Birkikids Trinidad & Barbados These water, sun, and fun styles offer outrageous patterns and bright colors for the new millennium. Slip into the moon and stars in Heaven Blue Birko-Flor?, or strap on fathoms of style in Deep Sea Sun Birko-Flor?. (The Trinidad style offers extra security with a backstrap.) barbntrini.gif barbntrini.gif 39.99 sandals 5 TRIN=Trinidad Style, BARB=Barbados Style STAR=Heaven Blue Moon & Stars, SUN=Deep Sea Sun -rst381 RST 381 TL RST 381 TL Y2K model year. 90mm" travel fork for those on a budget! Excellent fork for the money, adjustable preload with MCU elastomers and coil spring stack. New features include one piece Aluminum lower legs and cromo stanchions, and disk brake tabs. Avalaible in 1" 1 1/8" threadless, and threaded. Silver. V-brake style brace only. available in 1" headtubes! RST.381R.jpg RST.381R.jpg 134.99 parts 10 0 Forks -rfsys Race Face SYStem Stem Race Face SYStem Stem We actually have them in stock! The Race Face unique 3 piece no weld design is the new mark in stem design. The stem body forged from 6061 aluminum and CNC machined into an ultra durable double butted tube, provides maximum power transfer and control even when hammering out of the saddle. The dovetailed clamp creates extreme clamping power on the steer tube. The large contact surface combined with "bushing-housed" cro-moly bolts, provides increased strength and durability versus welded stems. Front clamp is easily removable for quick bar changes. Weight 210g (120mm x 5'). Available in 110mm, 120mm, 130mm, 140mm, (5' and 15'rise). Colors black, pewter, silver, and Judy yellow. rf.system.jpg rf.system.jpg 79.99 parts 0 0 Stems -contbaja Continental Baja Pro Kevlar Continental Baja Pro Kevlar Functional square pattern works well in a wide range of off road conditions. Can be used on the front or back.26 x 1.9. tire.conti.gif tire.conti.gif 24.99 parts 2 Tires -okl Tatami Oklahoma Felts Tatami Oklahoma Felts Hand-stitched clog with 100% sheep's wool uppers, soft synthetic liners, adjustable strap, and polyurethane outer soles. Available in Gray, Mocha, and Charcoal Felt. oklahoma.gif oklahoma.gif 59.99 sandals 5 GRAY=Gray, MOCHA=Mocha, CHARCOAL=Charcoal Felt specials 0 -house Betula House in Birko-Felt Betula House in Birko-Felt Sleek slip-on clog with soft Birko-Felt? uppers, soft synthetic liners, adjustable strap, and polyurethane lug soles. Available in medium width in Dark Brown or Charcoal Birko-Felt housefelt.gif housefelt.gif 59.95 sandals 5 M=Medium Width BROWN=Dark Brown, CHARCOAL=Charcoal Birko-Felt -jurr Jurassic Park Jurassic Park Michael Crichton One of mankind's most thrilling fantasies has come true--an astonishing technique for recovering and cloning dinosaur DNA has been discovered. Creatures that have been extinct for eons roam Jurassic Park, where all the world can visit them--for a price. Until something goes wrong. Knopf Alfred A jurassic.gif jurassic.gif 24.95 books 1 specials 0 Fiction -wom Women Women Annie Leibovitz Annie Leibovitz is one of the most celebrated photographers of our time, but it is with her latest book, WOMEN, that she may well make her most memorable and lasting contribution to the photographic arts. WOMEN documents and celebrates the ever-increasing contribution that women are making to our society and confronts many of the more serious obstacles that continue to obstruct that gender's upward path. Random House women.gif women.gif 45.00 books 2 0 Women Non-fiction, Misc diff --git a/dist/barry/products/route.txt b/dist/barry/products/route.txt deleted file mode 100644 index 0621fca19..000000000 --- a/dist/barry/products/route.txt +++ /dev/null @@ -1 +0,0 @@ -code report receipt encrypt_program encrypt pgp_key pgp_cc_key cyber_mode credit_card profile inline_profile email attach counter increment continue partial supplant track errors_to diff --git a/dist/barry/products/salestax.asc b/dist/barry/products/salestax.asc deleted file mode 100644 index 5325e5ccf..000000000 --- a/dist/barry/products/salestax.asc +++ /dev/null @@ -1 +0,0 @@ -default [fly-tax] diff --git a/dist/barry/products/shipping.asc b/dist/barry/products/shipping.asc deleted file mode 100644 index 33672099f..000000000 --- a/dist/barry/products/shipping.asc +++ /dev/null @@ -1,45 +0,0 @@ -upsg UPS Ground weight 0 0 e Nothing to ship! {'ui_ship_type' => "UPSI",'zone' => "450",'table' => "Ground",'ups' => "1",'adder' => "__MVC_UPSADDER__",'geo' => "zip",} -upsg UPS Ground weight 0 150 u Ground [value name=zip filter=digits default=__MVC_UPSORIGIN__] 3.00 {} -upsg UPS Ground weight 150 999999 e @@TOTAL@@ lbs too heavy for UPS {} -upsb UPS Two Day weight 0 0 e Nothing to ship! {'ui_ship_type' => "UPSI",'table' => "2ndDayAir",'zone' => "450",'ups' => "1",'adder' => "__MVC_UPSADDER__",'geo' => "zip",} -upsb UPS Two Day weight 0 150 u {'default_geo' => "__MVC_UPSORIGIN__",'zone' => "450",'table' => "2ndDayAir",'adder' => "__MVC_UPSADDER__",'geo' => "zip",} -upsb UPS Two Day weight 150 999999 e @@TOTAL@@ lbs too heavy for UPS {'default_geo' => "__MVC_UPSORIGIN__",'table' => "2ndDayAir",'zone' => "450",'adder' => "__MVC_UPSADDER__",'geo' => "zip",} -upsr UPS Next Day weight 0 0 e Nothing to ship! {'ui_ship_type' => "UPSI",'table' => "NextDayAir",'zone' => "450",'ups' => "1",'adder' => "3",'geo' => "zip",} -upsr UPS Next Day weight 0 150 u NextDayAir [value name=zip filter=digits default=__MVC_UPSORIGIN__] 3.00 {} -upsr UPS Next Day weight 150 999999 e @@TOTAL@@ lbs too heavy for UPS {} -surf_A Int'l Surface A weight 0 0 e Nothing to ship! {} -surf_A Int'l Surface A weight 0 100 f 6 + @@TOTAL@@ * 2 {} -surf_A Int'l Surface A weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -air_A Int'l Air A weight 0 0 e Nothing to ship! {} -air_A Int'l Air A weight 0 100 f 8 + @@TOTAL@@ * 2.50 {} -air_A Int'l Air A weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -surf_B Int'l Surface B weight 0 0 e Nothing to ship! {} -surf_B Int'l Surface B weight 0 100 f 8 + @@TOTAL@@ * 3 {} -surf_B Int'l Surface B weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -air_B Int'l Air B weight 0 0 e Nothing to ship! {} -air_B Int'l Air B weight 0 100 f 10 + @@TOTAL@@ * 3.50 {} -air_B Int'l Air B weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -surf_C Int'l Surface C weight 0 0 e Nothing to ship! {} -surf_C Int'l Surface C weight 0 100 f 10 + @@TOTAL@@ * 4 {} -surf_C Int'l Surface C weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -air_C Int'l Air C weight 0 0 e Nothing to ship! {} -air_C Int'l Air C weight 0 100 f 12 + @@TOTAL@@ * 4.5 {} -air_C Int'l Air C weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -surf_D Int'l Surface D weight 0 0 e Nothing to ship! {} -surf_D Int'l Surface D weight 0 100 f 12 + @@TOTAL@@ * 5 {} -surf_D Int'l Surface D weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -air_D Int'l Air D weight 0 0 e Nothing to ship! {} -air_D Int'l Air D weight 0 100 f 14 + @@TOTAL@@ * 5.5 {} -air_D Int'l Air D weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -surf_E Int'l Surface E weight 0 0 e Nothing to ship! {} -surf_E Int'l Surface E weight 0 100 f 14 + @@TOTAL@@ * 6 {} -surf_E Int'l Surface E weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -air_E Int'l Air E weight 0 0 e Nothing to ship! {} -air_E Int'l Air E weight 0 100 f 16 + @@TOTAL@@ * 6.5 {} -air_E Int'l Air E weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -surf_F Int'l Surface F weight 0 0 e Nothing to ship! {} -surf_F Int'l Surface F weight 0 100 f 16 + @@TOTAL@@ * 7 {} -surf_F Int'l Surface F weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -air_F Int'l Air F weight 0 0 e Nothing to ship! {} -air_F Int'l Air F weight 0 100 f 18 + @@TOTAL@@ * 7.5 {} -air_F Int'l Air F weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} diff --git a/dist/barry/products/state.txt b/dist/barry/products/state.txt deleted file mode 100644 index ac09b08eb..000000000 --- a/dist/barry/products/state.txt +++ /dev/null @@ -1,183 +0,0 @@ -code country state name - AU AAT Australian Antarctic Territory - AU ACT Australian Capital Territory - AU NT Northern Territory - AU NSW New South Wales - AU QLD Queensland - AU SA South Australia - AU TAS Tasmania - AU VIC Victoria - AU WA Western Australia - BR AC Acre - BR AL Alagoas - BR AM Amazonas - BR AP Amapa - BR BA Baia - BR CE Ceara - BR DF Distrito Federal - BR ES Espirito Santo - BR FN Fernando de Noronha - BR GO Goias - BR MA Maranhao - BR MG Minas Gerais - BR MS Mato Grosso do Sul - BR MT Mato Grosso - BR PA Para - BR PB Paraiba - BR PE Pernambuco - BR PI Piaui - BR PR Parana - BR RJ Rio de Janeiro - BR RN Rio Grande do Norte - BR RO Rondonia - BR RR Roraima - BR RS Rio Grande do Sul - BR SC Santa Catarina - BR SE Sergipe - BR SP Sao Paulo - BR TO Tocatins - CA AB Alberta - CA BC British Columbia - CA MB Manitoba - CA NB New Brunswick - CA NF Newfoundland - CA NS Nova Scotia - CA NT Northwest Territories - CA NT Nunavut - CA ON Ontario - CA PE Prince Edward Island - CA QC Quebec - CA SK Saskatchewan - CA YT Yukon Territory - NL DR Drente - NL FL Flevoland - NL FR Friesland - NL GL Gelderland - NL GR Groningen - NL LB Limburg - NL NB Noord Brabant - NL NH Noord Holland - NL OV Overijssel - NL UT Utrecht - NL ZH Zuid Holland - NL ZL Zeeland - UK BEDS Bedfordshire - UK BERKS Berkshire - UK BORDER Borders - UK BUCKS Buckinghamshire - UK CAMBS Cambridgeshire - UK CENT Central - UK CI Channel Islands - UK CHESH Cheshire - UK CLEVE Cleveland - UK CORN Cornwall - UK CUMB Cumbria - UK DERBY Derbyshire - UK DEVON Devonshire - UK DORSET Dorsetshire - UK DUMGAL Dumfries & Galloway - UK GLAM Glamorganshire - UK GLOUS Gloucestershire - UK GRAMP Grampian - UK GWYNED Gwynedd - UK HANTS Hampshire - UK HERWOR Herefordshire & Worcestershire - UK HERTS Hertfordshire - UK HIGHL Highland - UK HUMBER Humberside - UK HUNTS Huntingdonshire - UK IOM Isle of Man - UK IOW Isle of White - UK LANARKS Lanarkshire - UK LANCS Lancashire - UK LEICS Leicestershire - UK LINCS Licolnshire - UK LOTH Lothian - UK MIDDX Middlesex - UK NORF Norfolk - UK NHANTS Northamptonshire - UK NTHUMB Northumberland - UK NOTTS Nottinghamshire - UK OXON Oxfordshire - UK PEMBS Pembrokeshire - UK RUTLAND Rutlandshire - UK SHROPS Shropshire - UK SOM Somersetshire - UK STAFFS Staffordshire - UK STRATH Strathclyde - UK SUFF Suffolk - UK SUSS Sussex - UK TAYS Tayside - UK TYNE Tyne & Wear - UK WARKS Warwickshire - UK WILTS Wiltshire - UK WORCS Worcestershire - UK YORK Yorkshire - EI CO ANTRIM County Antrim - EI CO ARMAGH County Armagh - EI CO DOWN County Down - EI CO DURHAM County Durham - EI CO FERMANAgh County Fermanagh - EI CO DERRY County Londonderry - EI CO TYRONE County Tyrone - US AA Military Americas - US AE Military Europe/ME/Canada - US AP Military Pacific - US AK Alaska - US AL Alabama - US AR Arkansas - US AS American Samoa - US AZ Arizona - US CA California - US CO Colorado - US CT Connecticut - US DC D.C. - US DE Delaware - US FL Florida - US FM Micronesia - US GA Georgia - US GU Guam - US HI Hawaii - US IA Iowa - US ID Idaho - US IL Illinois - US IN Indiana - US KS Kansas - US KY Kentucky - US LA Louisiana - US MA Massachusetts - US MD Maryland - US ME Maine - US MH Marshall Islands - US MI Michigan - US MN Minnesota - US MO Missouri - US MP Marianas - US MS Mississippi - US MT Montana - US NC North Carolina - US ND North Dakota - US NE Nebraska - US NH New Hampshire - US NJ New Jersey - US NM New Mexico - US NV Nevada - US NY New York - US OH Ohio - US OK Oklahoma - US OR Oregon - US PA Pennsylvania - US PR Puerto Rico - US PW Palau - US RI Rhode Island - US SC South Carolina - US SD South Dakota - US TN Tennessee - US TX Texas - US UT Utah - US VA Virginia - US VI Virgin Islands - US VT Vermont - US WA Washington - US WI Wisconsin - US WY Wyoming diff --git a/dist/barry/products/transactions.txt b/dist/barry/products/transactions.txt deleted file mode 100644 index e3078e146..000000000 --- a/dist/barry/products/transactions.txt +++ /dev/null @@ -1 +0,0 @@ -code store_id order_number session username shipmode nitems subtotal shipping handling salestax total_cost fname lname company address1 address2 city state zip country phone_day phone_night fax email b_fname b_lname b_company b_address1 b_address2 b_city b_state b_zip b_country b_phone order_date order_ymd order_wday payment_method po_number avs order_id update_date status affiliate campaign parent archived deleted complete comments diff --git a/dist/barry/products/ups_zone.asc b/dist/barry/products/ups_zone.asc deleted file mode 100644 index 63d16e197..000000000 --- a/dist/barry/products/ups_zone.asc +++ /dev/null @@ -1,153 +0,0 @@ -"ZONE CHART" -"UPS Ground/UPS 3 Day Select/UPS 2nd Day Air/UPS 2nd Day Air A.M./UPS Next Day Air Saver/UPS Next Day Air" - -"For shipments originating in ZIP Codes 450-01 to 452-99. To determine zone" -"take the first three digits of the receiver's ZIP Code and refer to the chart below:" - -"ZONES" -Dest. ZIP,Ground,3 Day Select,2nd Day Air,2nd Day Air A.M.,Next Day Air Saver,Next Day Air - -004-005,4,304,204,244,134,104 -006-007,-,-,225,-,-,125 -008,-,-,[1],-,-,[1] -009,-,-,225,-,-,125 -010-067,5,305,205,245,135,105 -068-089,4,304,204,244,134,104 -090-099,-,-,-,-,-,- -100-118,4,304,204,244,134,104 -119-123,5,305,205,245,135,105 -124-127,4,304,204,244,134,104 -128-129,5,305,205,245,135,105 -130-149,4,304,204,244,134,104 -150-157,3,303,203,243,133,103 -158-159,4,304,204,244,134,104 -160-165,3,303,203,243,133,103 -166-199,4,304,204,244,134,104 -200-239,4,304,204,244,134,104 -240-244,3,303,203,243,133,103 -245,4,304,204,244,134,104 -246-253,3,303,203,243,133,103 -254,4,304,204,244,134,104 -255-257,2,302,202,242,132,102 -258-260,3,303,203,243,133,103 -261,2,302,202,242,132,102 -262-266,3,303,203,243,133,103 -267,4,304,204,244,134,104 -268,3,303,203,-,-,103 -270,4,304,204,244,134,104 -271,3,303,203,243,133,103 -272-285,4,304,204,244,134,104 -286-289,3,303,203,243,133,103 -290-299,4,304,204,244,134,104 -300-306,4,304,204,244,134,104 -307,3,303,203,243,133,103 -308-319,4,304,204,244,134,104 -320-339,5,305,205,245,135,105 -340,-,-,-,-,-,- -341-349,5,305,205,245,135,105 -350-369,4,304,204,244,134,104 -370-374,3,303,203,243,133,103 -375,4,304,204,-,-,104 -376-379,3,303,203,243,133,103 -380-381,4,304,204,244,134,104 -382,3,303,203,243,133,103 -383,4,304,204,244,134,104 -384-385,3,303,203,243,133,103 -386-394,4,304,204,244,134,104 -395,5,305,205,245,135,105 -396-399,4,304,204,244,134,104 -400-406,2,302,202,242,132,102 -407-409,3,303,203,-,133,103 -410-414,2,302,202,242,132,102 -415-416,3,303,203,-,133,103 -417-418,2,302,202,242,132,102 -420-422,3,303,203,243,133,103 -423,2,302,202,242,132,102 -424,3,303,203,243,133,103 -425-433,2,302,202,242,132,102 -434-436,3,303,203,243,133,103 -437-438,2,302,202,242,132,102 -439-447,3,303,203,243,133,103 -448-462,2,302,202,242,132,102 -463-466,3,303,203,243,133,103 -467-475,2,302,202,242,132,102 -476-477,3,303,203,243,133,103 -478-479,2,302,202,242,132,102 -480-495,3,303,203,243,133,103 -496-499,4,304,204,244,134,104 -500-509,4,304,204,244,134,104 -510-512,5,305,205,245,135,105 -513-528,4,304,204,244,134,104 -530-534,3,303,203,243,133,103 -535-555,4,304,204,244,134,104 -556-558,5,305,205,245,135,105 -559-560,4,304,204,244,134,104 -561-585,5,305,205,245,135,105 -586-593,6,306,206,246,136,106 -594,7,307,207,247,137,107 -595,6,306,206,-,-,106 -596-599,7,307,207,247,137,107 -600-611,3,303,203,243,133,103 -612,4,304,204,244,134,104 -613-622,3,303,203,243,133,103 -623,4,304,204,244,134,104 -624-633,3,303,203,243,133,103 -634-636,4,304,204,244,134,104 -637,3,303,203,243,133,103 -638-667,4,304,204,244,134,104 -668-672,5,305,205,245,135,105 -673,4,304,204,244,134,104 -674-693,5,305,205,245,135,105 -700-711,5,305,205,245,135,105 -712,4,304,204,244,134,104 -713-714,5,305,205,245,135,105 -716-717,4,304,204,244,134,104 -718,5,305,205,245,135,105 -719-729,4,304,204,244,134,104 -730-742,5,305,205,245,135,105 -743,4,304,204,244,134,104 -744-748,5,305,205,245,135,105 -749,4,304,204,-,134,104 -750-768,5,305,205,245,135,105 -769,6,306,206,246,136,106 -770-779,5,305,205,245,135,105 -780-785,6,306,206,246,136,106 -786-787,5,305,205,245,135,105 -788,6,306,206,246,136,106 -789-796,5,305,205,245,135,105 -797-799,6,306,206,246,136,106 -800-806,6,306,206,246,136,106 -807,5,305,205,245,135,105 -808-831,6,306,206,246,136,106 -832-844,7,307,207,247,137,107 -845,6,306,206,-,-,106 -846-864,7,307,207,247,137,107 -865-885,6,306,206,246,136,106 -889-893,7,307,207,247,137,107 -894-897,8,308,208,248,138,108 -898,7,307,207,-,-,107 -900-921,8,308,208,248,138,108 -922,7,307,207,247,137,107 -923-961,8,308,208,248,138,108 -962-966,-,-,-,-,-,- -967-968,-,-,[2],-,-,[2] -969,-,-,[1],-,-,[1] -970-977,8,308,208,248,138,108 -978-979,7,307,207,-,137,107 -980-989,8,308,208,248,138,108 -990-994,7,307,207,247,137,107 -995-999,-,-,[3],-,-,[3] -,,,,,, - - -"[1] For Virgin Islands, Guam, Marshall Islands, etc., please refer to the Worldwide Rate and Zone information." - -"[2] For Hawaii, the following Postal Codes are Zone 124 for Next Day Air and Zone 224 for 2nd Day Air:" -96701,96706,96707,96709,96712,96717,96730,96731,96734,96744,96759,96762,96782,96786,96789,96791,96792,96795,96797,96801,96802,96803,96804,96805,96806,96807,96808,96809,96810,96811,96812,96813,96814,96815,96816,96817,96818,96819,96820,96821,96822,96823,96824,96825,96826,96827,96828,96830,96835,96836,96837,96838,96839,96840,96841,96842,96843,96844,96845,96846,96847,96848,96849,96850,96853,96854,96857,96858,96859,96860,96861,96862,96863,96898 -"For Hawaii, the following Postal Codes are Zone 126 for Next Day Air and Zone 226 for 2nd Day Air:" -96703,96704,96705,96708,96710,96713,96714,96715,96716,96718,96719,96720,96721,96722,96725,96726,96727,96728,96729,96732,96733,96737,96738,96739,96740,96741,96742,96743,96745,96746,96747,96748,96749,96750,96751,96752,96753,96754,96755,96756,96757,96760,96761,96763,96764,96765,96766,96767,96768,96769,96770,96771,96772,96773,96774,96775,96776,96777,96778,96779,96780,96781,96783,96784,96785,96788,96790,96793,96796 - -"[3] For Alaska, the following Postal Codes are Zone 124 for Next Day Air and Zone 224 for 2nd Day Air:" -99501,99502,99503,99504,99505,99506,99507,99508,99509,99510,99511,99512,99513,99514,99515,99516,99517,99518,99519,99520,99521,99522,99523,99524,99540,99556,99567,99568,99572,99577,99587,99603,99605,99610,99611,99631,99635,99639,99645,99654,99664,99669,99672,99687,99701,99702,99703,99705,99706,99707,99708,99709,99710,99711,99712,99775 -"For Alaska, the following Postal Codes are Zone 126 for Next Day Air and Zone 226 for 2nd Day Air:" -99547,99548,99549,99550,99551,99552,99553,99554,99555,99557,99558,99559,99561,99563,99564,99565,99566,99569,99571,99573,99574,99575,99576,99578,99579,99580,99581,99583,99584,99585,99586,99588,99589,99590,99591,99602,99604,99606,99607,99608,99609,99612,99613,99614,99615,99619,99620,99621,99622,99624,99625,99626,99627,99628,99630,99632,99633,99634,99636,99637,99638,99640,99641,99643,99644,99647,99648,99649,99650,99651,99652,99653,99655,99656,99657,99658,99659,99660,99661,99662,99663,99665,99666,99667,99668,99670,99671,99674,99675,99676,99677,99678,99679,99680,99681,99682,99683,99684,99685,99686,99688,99689,99690,99691,99692,99693,99694,99695,99697,99704,99714,99716,99720,99721,99722,99723,99724,99725,99726,99727,99729,99730,99732,99733,99734,99736,99737,99738,99739,99740,99741,99742,99743,99744,99745,99746,99747,99748,99749,99750,99751,99752,99753,99754,99755,99756,99757,99758,99759,99760,99761,99762,99763,99764,99765,99766,99767,99768,99769,99770,99771,99772,99773,99774,99776,99777,99778,99779,99780,99781,99782,99783,99784,99785,99786,99788,99789,99790,99791,99801,99802,99803,99811,99820,99821,99824,99825,99826,99827,99829,99830,99832,99833,99835,99836,99840,99841,99850,99901,99903,99918,99919,99921,99922,99923,99925,99926,99927,99928,99929,99950 diff --git a/dist/barry/products/userdb.txt b/dist/barry/products/userdb.txt deleted file mode 100644 index 30221015b..000000000 --- a/dist/barry/products/userdb.txt +++ /dev/null @@ -1,2 +0,0 @@ -username password acl mod_time s_nickname company fname lname address1 address2 address3 city state zip country phone_day mv_shipmode b_nickname b_fname b_lname b_address1 b_address2 b_address3 b_city b_state b_zip b_country b_phone mv_credit_card_type mv_credit_card_exp_month mv_credit_card_exp_year p_nickname email fax phone_night fax_order address_book accounts preferences carts owner file_acl db_acl order_numbers email_copy mail_list project_id account_id order_dest credit_limit inactive -test test current Papa Bear Little Cottage The Forest IL 61821 US 513.555.5555 GNDCOM Little Cottage The Forest IL 61821 visa 3 02 papabear@minivend.com 0 {'dad' => {'city' => 'The Forest','state' => 'IL','fname' => 'Papa','lname' => 'Bear','mv_shipmode' => 'upsg','zip' => ' 61821','country' => 'US','address1' => 'TESTING','phone_day' => '217.555.5555'},'mom' => {'city' => 'The Forest','state' => 'IL','fname' => 'Mama','lname' => 'Bear','mv_shipmode' => 'upsb','zip' => '61821','country' => 'US','address1' => 'Little Cottage','phone_day' => '217.555.5555'},'baby' => {'fname' => 'Baby','lname' => 'Bear','state' => 'OH','zip' => '45056','country' => 'US','address1' => 'Cold Cruel World','phone_day' => '513.555.5555','city' => 'Big City','mv_shipmode' => 'upsr'}} 1 diff --git a/dist/barry/products/variable.txt b/dist/barry/products/variable.txt deleted file mode 100644 index 6827e2f9f..000000000 --- a/dist/barry/products/variable.txt +++ /dev/null @@ -1,59 +0,0 @@ -code Variable pref_group -ADDRESS __MVC_ADDRESS__ Company -CATALOG_STATIC No Static pages -CGI_URL __MVC_CGIURL__ Directories and Paths -CHECK_ACCEPTED 1 Payment -CITY __MVC_CITY__ Company -COD_ACCEPTED 0 Payment -COMPANY __MVC_COMPANY__ Company -CREDIT_CARDS_ACCEPTED visa mc discover amex Payment -DOCROOT __MVC_DOCUMENTROOT__ Directories and Paths -ENCRYPTOR none Payment -FAX __MVC_FAX__ Company -IMAGE_DIR __MVC_IMAGEURL__ Directories and Paths -LOGGED_STATIC 1 Static pages -LOGO __MVC_LOGO__ Template -MULTIORDER __MVC_MULTIORDER__ Order -MYSQL __MVC_MYSQL__ Database -ORDERS_TO __MVC_MAILORDERTO__ Order -ORDER_ROUTES log main copy_user Order -PGSQL __MVC_PGSQL__ Database -PHONE __MVC_PHONE__ Company -PO_ACCEPTED 0 Payment -SAMPLEHTML __MVC_SAMPLEHTML__ Directories and Paths -SAMPLEURL __MVC_SAMPLEURL__ Directories and Paths -SECURE_SERVER http://__MVC_SERVERNAME__ Directories and Paths -SERVER_NAME __MVC_SERVERNAME__ Directories and Paths -SMLOGO __MVC_SMLOGO__ Template -SOMESQL __MVC_MYSQL____MVC_PGSQL__ Database -SQLPASS Database -SQLUSER Database -TAXAREA __MVC_TAXAREA__ Tax -TAXFIELD state Tax -TAXRATE __MVC_TAXRATE__ Tax -TAXSHIPPING __MVC_TAXSHIPPING__ Tax -TEMPLATE green1 Template -TOLLFREE __MVC_TOLLFREE__ Company -UI_BOTTOMIMG poweredby.gif Admin layout -UI_C_ALINK #000000 Admin colors -UI_C_BG #FFFFFF Admin colors -UI_C_HEADERTXT #333333 Admin colors -UI_C_INTBLOCKBAR #999966 Admin colors -UI_C_INTBLOCK #CCCC99 Admin colors -UI_C_LINK #000000 Admin colors -UI_C_TITLEBARBG #336699 Admin colors -UI_C_TITLEBARTXT #CCCCCC Admin colors -UI_C_TOPBLOCKBAR #336699 Admin colors -UI_C_VLINK #000000 Admin colors -UI_IMG __MVC_SHAREURL__/akopia/ui/ Admin control -UI_ITEM_FIELDS description image thumb comment size color sku price weight category Item display -UI_ITEM_EXPUNGE products pricing inventory merchandising Item display -UI_LEFT_WIDTH 150 Admin layout -UI_META_LINK 1 Admin control -UI_OVERALL_WIDTH 750 Admin layout -UI_RIGHT_WIDTH 450 Admin layout -UI_T_BG beige Admin colors -UI_TRAFFIC_STATS __MVC_CATROOT__/logs/usertrack Directories and Paths -UPS_COUNTRY_FIELD country Shipping -UPS_ORIGIN __MVC_UPSORIGIN__ Shipping -UPS_POSTCODE_FIELD zip Shipping diff --git a/dist/barry/session/.empty b/dist/barry/session/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/barry/session/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/barry/special_pages/badsearch.html b/dist/barry/special_pages/badsearch.html deleted file mode 100644 index 564ba974b..000000000 --- a/dist/barry/special_pages/badsearch.html +++ /dev/null @@ -1,16 +0,0 @@ -[set page_title]Bad search specification[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - - -The search could not be done. The problem was: -

    -[subject] - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/special_pages/canceled.html b/dist/barry/special_pages/canceled.html deleted file mode 100644 index e807e11de..000000000 --- a/dist/barry/special_pages/canceled.html +++ /dev/null @@ -1,19 +0,0 @@ -[set page_title] -Account Information Erased -[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -Your session information has been canceled. -

    -If you wish to order another item, we would like you to do so, but -unfortunately you will have to re-enter any account information. -

    -We hope you will ordering from us in the future. -

    -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/special_pages/cc_not_valid.html b/dist/barry/special_pages/cc_not_valid.html deleted file mode 100644 index 09a748e12..000000000 --- a/dist/barry/special_pages/cc_not_valid.html +++ /dev/null @@ -1,22 +0,0 @@ -[set page_title] -Credit Card number fails test -[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] -

    - The following error was seen: -

    -	[value mv_credit_card_error]
    -
    - Please go BACK and check the information you entered and see - that the correct card type, expiration date, and number are - entered.

    - -

    - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/special_pages/confirmation.html b/dist/barry/special_pages/confirmation.html deleted file mode 100644 index e2a9e2d8f..000000000 --- a/dist/barry/special_pages/confirmation.html +++ /dev/null @@ -1,16 +0,0 @@ -[set page_title] -Order Processed -- Thank You! -[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] -

    -Your order has been sent, and -you will receive an order confirmation via email.

    -

    -Thank you for ordering from us! -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/special_pages/failed.html b/dist/barry/special_pages/failed.html deleted file mode 100644 index 0da875ba5..000000000 --- a/dist/barry/special_pages/failed.html +++ /dev/null @@ -1,22 +0,0 @@ -[set page_title]Order Failed[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -[if type=explicit compare="q{[subject]}"] -

    -[subject]
    -
    -[else] -We're sorry, but your order could not be processed at this time due to -technical problems. Please print the order page and give us a call. -We will follow up as soon as possible. -[/else] -[/if] -

    -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/special_pages/interact.html b/dist/barry/special_pages/interact.html deleted file mode 100644 index 6b5a78ea6..000000000 --- a/dist/barry/special_pages/interact.html +++ /dev/null @@ -1,62 +0,0 @@ -[set page_title] -Interaction error -[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -Something has gone wrong, and we did not receive the response we -expected from your browser. There was the following problem: -

    -[message] -

    -Note on common causes of this problem:

    -

      -
    • - If you bookmarked a shopping cart after it had been recalculated - (or if the item was ordered from a form submission), then the system may - not have been able to determine where it should go. If that is - the case, [page __ORDER_STYLE__/basket]check your shopping basket. -

      -

    • - Some Internet Service Providers who use proxy servers - send you to a secure page from a different net location - (AOL is an example). - If your browser does not accept - cookies, - then this software may not be able to determine your session - number -- it qualifies your session with your location for - security. -

      - If you go back to a previous page and RELOAD with cookies enabled, - then this condition should be corrected. You can verify that we - send a proper cookie if you turn on the cookie warning feature of your - browser. Typically, we will save cookies only if you check a box - that asks us to save your information. -

      - You can also try looking at the checkout page non-securely, - though we don't recommend you send sensitive information like - a credit card number without encryption. -

      -[set name="Go to non-secure checkout"] -[/set] -

      - - - -
      -

      -

    • - If you pressed the STOP button before the last form finished loading, - there may have been an incomplete form. -

      -

    -

    -If you wish, you can also return to the [page index]catalog[/page]. - -

    -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/special_pages/missing.html b/dist/barry/special_pages/missing.html deleted file mode 100644 index 153a83e1e..000000000 --- a/dist/barry/special_pages/missing.html +++ /dev/null @@ -1,17 +0,0 @@ -[set page_title] -Sorry, the page (@@MV_PREV_PAGE@@) was not found -[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -The requested item ([subject]) was not found. -You can [page index]return to browsing our -catalog[/page], if you wish. - -

    -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/special_pages/needfield.html b/dist/barry/special_pages/needfield.html deleted file mode 100644 index 323674af4..000000000 --- a/dist/barry/special_pages/needfield.html +++ /dev/null @@ -1,49 +0,0 @@ -[set page_title] -We need some more information! -[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -We need to have some fields entered to be able -to process your order. Please [page __ORDER_STYLE__/checkout]go back and fill out -the information. -

    -Problem: -

    -[perl] - my $msg = q{[subject]}; - sub redo_message { - my($param,$word) = @_; - if($param =~ /mv_credit/) { - "

  • You need to validate your credit card information.\n"; - } - elsif ($word =~ /not_a_state/i) { - return "
  • We need a valid two-letter state code like CA.\n"; - } - elsif ($word =~ /phone_day=/i) { - return "
  • Is that really a phone number?\n"; - } - elsif ($word =~ /not_a_zip_code/i) { - return "
  • We need a zip code for UPS lookup.\n"; - } - elsif ($word =~ /mv_contingent/) { - return "
  • You need to select your method of payment.\n"; - } - else { return "
  • $param: $word\n" } - } - @msg = split /\n/, $msg; - $msg = '
      '; - for(@msg) { - ($var, $val) = split /:\s*/, $_; - $msg .= redo_message($var, $val); - } - $msg .= '
    '; - $msg; -[/perl] -

    -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/special_pages/nomatch.html b/dist/barry/special_pages/nomatch.html deleted file mode 100644 index 8ff797005..000000000 --- a/dist/barry/special_pages/nomatch.html +++ /dev/null @@ -1,14 +0,0 @@ -[set page_title] -No Match for [subject] -[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -There were no matches found. -

    -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/special_pages/noproduct.html b/dist/barry/special_pages/noproduct.html deleted file mode 100644 index a98edac30..000000000 --- a/dist/barry/special_pages/noproduct.html +++ /dev/null @@ -1,17 +0,0 @@ -[set page_title] -Requested Product Unavailable -[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -We are sorry, but the product ([subject]) that you requested is -not now available. You can still [page index]browse our -catalog[/page], if you wish. - -

    -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/special_pages/notfound.html b/dist/barry/special_pages/notfound.html deleted file mode 100644 index 22be1b13f..000000000 --- a/dist/barry/special_pages/notfound.html +++ /dev/null @@ -1,16 +0,0 @@ -[set page_title] -Not Found -[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -No items with '[subject]' were found. You can [page index]return to -browsing our catalog[/page], if you wish. - -

    -__NO_RIGHT__ -__MENUBAR__ -__COPYRIGHT__ - diff --git a/dist/barry/special_pages/order_security.html b/dist/barry/special_pages/order_security.html deleted file mode 100644 index b12016b1e..000000000 --- a/dist/barry/special_pages/order_security.html +++ /dev/null @@ -1,26 +0,0 @@ -[set page_title] -SECURITY PROBLEM -[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -Either this web server did not receive the last transaction via -SSL/HTTPS, or your browser doesn't handle SSL. -

    -We recommend you do not leave any critical information -until this situation is corrected. You can CANCEL your -session below to wipe all information, or return to the -catalog with the buttonbar. -

    -

    - - -
    - -

    -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/special_pages/reconfig.html b/dist/barry/special_pages/reconfig.html deleted file mode 100644 index 2e4151824..000000000 --- a/dist/barry/special_pages/reconfig.html +++ /dev/null @@ -1,14 +0,0 @@ -[set page_title] -Catalog Reconfigured -[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -The catalog should be successfully reconfigured. -

    -__NO_RIGHT__ -__MENUBAR__ -__COPYRIGHT__ - diff --git a/dist/barry/special_pages/sec_faq.html b/dist/barry/special_pages/sec_faq.html deleted file mode 100644 index 5dc303cf0..000000000 --- a/dist/barry/special_pages/sec_faq.html +++ /dev/null @@ -1,138 +0,0 @@ - - - - Interchange Security FAQ - - - -

    Interchange Security FAQ

    - - -(with thanks to Lincoln Stein, and the WWW Security FAQ) - -

    -Press BACK to return to the form -

    - -Q: My Netscape browser is displaying a form for ordering merchandise -from a department store that I trust. The little key at the lower -left-hand corner of the Netscape window is solid and -has two teeth. This means I can safely submit my -credit card number, right? -

    -Not quite. A solid key with two teeth appears indicates that SSL is -being used with a 128-bit secret key and that the remote host owns a -valid server certificate that was certified by some authority that -Netscape recognizes. At this point, however, you don't know who that -certificate belongs to. It's possible that someone has bought or stolen -a server certificate and then diverted network traffic destined for the -department store by subverting a router somewhere between you and the -store. The only way to make sure that you're talking to the company you -think you're talking to is to open up the "Document Information" window -(from the File menu) and examine the server certificate. If the host and -organization names that appear there match the company you expect, then -you're probably safe to submit the form. If something unexpected appears -there (like "Embezzlers R Us") you might want to call the department -store's 800 number. -


    - -Q: How secure is the encryption used by SSL? - -

    - -SSL uses public-key encryption to exchange a session key between the -client and server; this session key is used to encrypt the http -transaction (both request and response). Each transaction uses a -different session key so that if someone manages to decrypt a -transaction, that does not mean that they've found the server's secret -key; if they want to decrypt another transaction, they'll need to spend -as much time and effort on the second transaction as they did on the -first. -

    -Netscape servers and browsers do encryption using either a 40-bit secret -key or a 128-bit secret key. Many people feel that using a 40-bit key is -insecure because it's vulnerable to a "brute force" attack (trying each -of the 2^40 possible keys until you find the one that decrypts the -message). Using a 128-bit key eleiminates this problem because there are -2^128 instead of 2^40 possible keys. Unfortunately, most Netscape users -have browsers that support only 40-bit secret keys. This is because of -legal restrictions on the encryption software that can be exported from -the United States (The Federal Government has recently modified this -policy on following the well-publicized cracking of a Netscape message -encrypted using a 40-bit key. Expect this situation to change).

    -In Netscape you can tell what kind of encryption is in use for a particular -document by looking at the "document" information" screen accessible -from the file menu. The little key in the lower left-hand corner of the -Netscape window also indicates this information. A solid key with two -teeth means 128-bit encryption, a solid key with one tooth means 40-bit -encryption, and a broken key means no encryption. Even if your browser -supports 128-bit encryption, it mayse use 40-bit encryption when talking -to older Netscape servers or Netscape servers outside the U.S. and -Canada. -

    -


    -Q: My friend says that none of this stuff is safe. What -should I believe? -

    -When credit cards first came out in the late 1960s, the cardholder was -liable for all losses occurring as a result of a stolen card. The -credit card companies soon discovered that fear of large losses prevented -people from using or keeping the cards. For a long time now, you have -been liable (in most states) for at most $50 of loss as a result of -credit card fraud. -

    -Using your credit card on the Internet is no different than giving it to -a restaurant. The presence of a warning-free SSL security system -ensures that the company you are dealing with has passed background -checks -- just like the presence of a Verifone credit-card checking device -gives a good indication that the restaurant can actually accept credit -cards. Look for a server certified by Verisign, Thawte, or another -well-known certifying agency. If a server's SSL certificate is so signed, -you have done your job to verify authenticity. -

    -We don't recommend that you send your credit card number un-encrypted -over the Internet. Just like you know not to give your card number to -anyone who calls you -- you make sure you know who you are talking to -first -- you shouldn't send your card number over the Internet until -you are certain that the company you are dealing with has made the effort -to ensure security. Presence of a warning-free SSL security system -indicates that rather considerable effort has been made. Look for the -lock, key, or blue line, and you should be safe. -


    -Q: Yes, all that is fine, but what about your software? Won't -the number stick around on the disk forever? -

    -The SSL encryption will take care of network transmission. But we -don't want to make it easy for just anybody, even those with access -to our system, to view your number. When Interchange is properly set -up, the number is encrypted with PGP encryption before ever being -written to a file. -

    -First of all, after you enter your number, it is kept in memory only until -until it is encrypted. At that time, it is scrubbed from the program's -memory. The now-encrypted card number (with the password only known -to our order entry personnel) is then written to a file with -permissions set so only the program can get at it. -

    -This behavior will be followed by the Interchange program as long as -the number is placed in a field named mv_credit_card_number --- you can view the source of the order form to ensure that. -

    -If you have entered your credit card number and decide not to -submit your order, the encrypted number will remain on disk for -no more than one day. At that time, the sessions on the system that are -older than one day will be expired, after any encrypted -credit_card_no fields are overwritten with meaningless data, and -removed from the session database. -

    -If you wish, you can press the button on the order form which is labeled -CANCEL, and the encrypted information will be wiped immediately. -

    -If you would like more details, please send mail to the -webmaster. -

    -__MENUBOTTOM__ -__COPYRIGHT__ - - - diff --git a/dist/barry/special_pages/security.html b/dist/barry/special_pages/security.html deleted file mode 100644 index 30a9e9b76..000000000 --- a/dist/barry/special_pages/security.html +++ /dev/null @@ -1,34 +0,0 @@ -[set page_title] -How Secure is This Stuff? -[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] -Interchange is designed to securely transmit your information -via SSL or SHTTP. Examine the browser status indication, and if -you see an indication that this transaction is secure, -(on Netscape it is an unbroken key in the lower left-hand corner), you -can be assured that your vital information is securely encrypted as it flies -over the Internet. -

    -How do you know it is secure? Reference the -WWW Security FAQ, -VeriSign FAQ, -or [page help/sec_faq]our own FAQ[/page] -and determine if you are comfortable with leaving your credit card -number. -

    -That being said, please feel free to leave your account information -below. Your credit card number, if you decide to leave it, will only -be used to process your order, and will not be sent by email, even -on our local machine. It will be encrypted, only read by our order entry -software, and then wiped from the disk file as soon as that is done. -

    - Click BACK to return to Account Information Form -

    -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/barry/special_pages/violation.html b/dist/barry/special_pages/violation.html deleted file mode 100644 index 9bf81c0de..000000000 --- a/dist/barry/special_pages/violation.html +++ /dev/null @@ -1,74 +0,0 @@ -[set page_title] -Access denied -[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -

    You have accessed a page that requires authorization.

    - -[if session logged_in] -[then] - -[set [L]Log out[/L]] -mv_todo=return -mv_nextpage=@@MV_PREV_PAGE@@ -[userdb function=logout options="clear=yes"] -[/set] - - -
    -
    - [L]Hi[/L] [value name]! [L]You are logged in as user[/L] [value mv_username]. -    -
    -
    - - -
    -
    -
    -
    - - -[/then] -[else] - -[set Login] -mv_todo=return -mv_nextpage=@@MV_PREV_PAGE@@ -[userdb login] -[/set] -

    -[if session failure] -[data session failure] -[/if] -

    -

    - - - - - - - - - -
    [L]Username[/L] - [page new_account][L]Create a new account[/L] -
    [L]Password[/L] -    -
    - -
    - -[/else][/if] - -

    -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/barry/templates/fullwidth b/dist/barry/templates/fullwidth deleted file mode 100644 index 0650e3c0d..000000000 --- a/dist/barry/templates/fullwidth +++ /dev/null @@ -1,12 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: fullwidth -ui_template_layout: LOGOBAR, MENUBAR, NO_LEFT, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top/bottom areas only, content in middle. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title][set] -[set members_only][set] diff --git a/dist/barry/templates/leftonly b/dist/barry/templates/leftonly deleted file mode 100644 index c2874cbae..000000000 --- a/dist/barry/templates/leftonly +++ /dev/null @@ -1,12 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LOGOBAR, MENUBAR, LEFTONLY, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top/left areas, no right. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title][set] -[set members_only][set] diff --git a/dist/barry/templates/standard b/dist/barry/templates/standard deleted file mode 100644 index ceb3433dd..000000000 --- a/dist/barry/templates/standard +++ /dev/null @@ -1,14 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, RIGHTSIDE, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top/left/right areas. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -ui_control_description: feature_tag : front=Front page, bookpick=Book pick, specials=Specials -[/comment] -[set page_title][set] -[set members_only][set] -[set feature_tag][set] diff --git a/dist/barry/tmp/.empty b/dist/barry/tmp/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/barry/tmp/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/barry/upload/.empty b/dist/barry/upload/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/barry/upload/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/basic/etc/ship_notice b/dist/basic/etc/ship_notice deleted file mode 100644 index a33f5b015..000000000 --- a/dist/basic/etc/ship_notice +++ /dev/null @@ -1,139 +0,0 @@ -[loop list="[scratch ship_notice_order_number]"] -To: [scratch ship_notice_email] -Subject: Your order number [loop-code] has [if scratch ship_now_complete]completely shipped![elsif !scratch ship_notice_complete]partially shipped[/elsif][else]shipped![/else][/if] -From: __COMPANY__ Customer Service <[either]__EMAIL_INFO__[or]__ORDERS_TO__[/either]> -Reply-to: [either]__EMAIL_SERVICE__[or]__EMAIL_INFO__[or]__ORDERS_TO__[/either] - -Dear [loop-data transactions fname] [loop-data transactions lname], - -[if scratch ship_now_complete] -We have made the last shipment of your order #[loop-code], it is now complete! -[elsif scratch ship_notice_complete] -Your order #[loop-code] has been shipped! -[/elsif] -[else] -We have made a partial shipment of your order #[loop-code]. -[/else] -[/if] - - Name: [loop-data transactions fname] [loop-data transactions lname] -[if-loop-data transactions company] Company: [loop-data transactions company][/if-loop-data] - Email address: [loop-data transactions email] - - Address: [loop-data transactions address1][if-loop-data transactions address2] - [loop-data transactions address2][/if-loop-data] -City, State, Zip: [loop-data transactions city], [loop-data transactions state] [loop-data transactions zip] - Country: [loop-data transactions country] - - Payment Method: [loop-data transactions payment_method] - Shipping Method: [shipping-desc [loop-data transactions shipmode]] - - Daytime Phone: [loop-data transactions phone_day] - Evening Phone: [loop-data transactions phone_night] - -[if-loop-data transactions b_address1] - Billing Name: [loop-data transactions b_fname] [loop-data transactions b_lname] - Billing Address: [loop-data transactions b_address1] [loop-data transactions b_address2] -City, State, Zip: [loop-data transactions b_city], [loop-data transactions b_state] [loop-data transactions b_zip] - Billing Country: [value b_country] -[/if-loop-data] - -Quan Item No. Description Price Extension ----- ----------- ------------------------------- -------------- ---------------- -[loop prefix=item search=" - fi=orderline - st=db - sf=order_number - se=[loop-code] - ml=1000 - "][row 82] -[column width=5 gutter=1 align=right] [item-data orderline quantity] [/column] -[column width=12 gutter=1] [item-data orderline sku] [/column] -[column width=32 gutter=1 align=left wrap=1][item-data orderline description] -[if-item-data transactions size]SIZE-->[item-item-data transactions size][/if-item-data][if-item-data transactions color] COLOR-->[item-item-data transactions color][/if-item-data] -[/column] -[column width=15 gutter=1 align=r][currency][item-data orderline price][/currency][/column] -[column width=16 gutter=0 align=r][currency][item-data orderline subtotal][/currency][/column] -[/row] -[row 82] -[column width=5 gutter=1 align=right][/column] -[column width=12 gutter=1][/column] -[column width=60 gutter=1 align=left wrap=1][calc] - my $status = q{[display - table=orderline - column=status - key="[item-code]" - arbitrary=order_view - ]}; - $status =~ s:<.*>::s; - if($status !~ /\S/i) { - $status = q{[item-data orderline status]}; - } - $status = uc $status; - my $mesg = q{[data - table=inventory - column=stock_message - key="[item-data orderline sku]" - ]}; - if(!mesg and $status !~ /^\s*shipped\b/i) { - $status .= " ($mesg)"; - } - $status .= q{ time: [convert-date][item-data orderline update_date][/convert-date]}; - return $status; -[/calc] -[/column] -[/row] - -[/loop] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SUBTOTAL[/column] -[column width=16 align=right gutter=0][currency][loop-data transactions subtotal][/currency][/column] -[/row] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SALES TAX[/column] -[column width=16 align=right gutter=0][currency][loop-data transactions salestax][/currency][/column] -[/row] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SHIPPING[/column] -[column width=16 align=right gutter=0][currency][loop-data transactions shipping][/currency][/column] -[/row] - -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]ORDER TOTAL[/column] -[column width=16 align = right gutter=0][currency][loop-data transactions total_cost][/currency][/column] -[/row] - -[if-loop-data transactions comments] -Your comments or gift note ----------------------------- -[loop-data transactions comments] -[/if-loop-data] - -Should you have a question about your items, or about other __COMPANY__ -products, please reply to this message and let us help. - -Remember, you can always visit our site at: - - __SERVER_NAME__ - -Regards and thanks for your business! - -__COMPANY__ -__ADDRESS__ -__CITY__ -__PHONE__ -__TOLLFREE__ -FAX: __FAX__ -[/loop] diff --git a/dist/build/makecat.redhat b/dist/build/makecat.redhat deleted file mode 100644 index 0cba78989..000000000 --- a/dist/build/makecat.redhat +++ /dev/null @@ -1,83 +0,0 @@ -#!/bin/sh - -HOST=`hostname` - -if test -n "$RPM_BUILD_ROOT" -then - VENDROOT=/usr/lib/interchange - BASEDIR=/var/lib/interchange - RELOCATE="relocate=$RPM_BUILD_ROOT" - HOST=RPM_CHANGE_HOST -elif test -d /usr/lib/interchange -a -w /usr/lib/interchange -then - VENDROOT=/usr/lib/interchange - BASEDIR=/var/lib/interchange -elif test -d /usr/lib/interchange -a -w /usr/lib/interchange -then - VENDROOT=$HOME/interchange -else - echo "Can't find interchange directory." - exit 1 -fi - -if test -d /home/httpd/html -a -w /home/httpd/html -then - DOCROOT=/home/httpd/html - CGIDIR=/home/httpd/cgi-bin - SERVERCONF=/etc/httpd/conf/httpd.conf - CGIBASE=/cgi-bin -elif test -d /var/www/html -a -w /var/www/html -then - DOCROOT=/var/www/html - CGIDIR=/var/www/cgi-bin - SERVERCONF=/etc/httpd/conf/httpd.conf - CGIBASE=/cgi-bin -elif test -d /usr/local/apache/htdocs -a -w /usr/local/apache/htdocs -then - DOCROOT=/usr/local/apache/htdocs - CGIDIR=/usr/local/apache/cgi-bin - SERVERCONF=/usr/local/apache/conf/httpd.conf - CGIBASE=/cgi-bin -else - echo "Can't find HTTP root." - exit 1 -fi - -if test -z "$1" -then - set construct -fi - -for i in $* -do - mkdir -p $RPM_BUILD_ROOT$CGIDIR #2>/dev/null - mkdir -p $RPM_BUILD_ROOT$BASEDIR/$i #2>/dev/null - MAKECATCMD="bin/makecat \ - -F \ - --cgibase=$CGIBASE \ - --basedir=$BASEDIR \ - --documentroot=$DOCROOT \ - --sharedir=$DOCROOT \ - --shareurl=/ \ - --interchangeuser=interch \ - --interchangegroup=interch \ - --serverconf=$SERVERCONF \ - --vendroot=$VENDROOT \ - --catroot=$BASEDIR/$i \ - --cgidir=$CGIDIR \ - --$RELOCATE \ - --servername=$HOST \ - --cgiurl=$CGIBASE/$i \ - --demotype=$i \ - --mailorderto=interch@$HOST \ - --catuser=interch \ - --permtype=user \ - --samplehtml=$DOCROOT/$i \ - --imagedir=$DOCROOT/$i/images \ - --imageurl=/$i/images \ - --linkmode=UNIX \ - --sampleurl=http://$HOST/$i - --catalogname=$i" - echo $MAKECATCMD - $MAKECATCMD -done diff --git a/dist/build/makedirs.redhat b/dist/build/makedirs.redhat deleted file mode 100644 index dfbf0ef4a..000000000 --- a/dist/build/makedirs.redhat +++ /dev/null @@ -1,154 +0,0 @@ -#!/bin/sh - -if test -n "$RPM_RUN_BASE" -then - RUNBASE=$RPM_RUN_BASE -else - RUNBASE=/var/run -fi - -if test -n "$RPM_LOG_BASE" -then - LOGBASE=$RPM_LOG_BASE -else - LOGBASE=/var/log -fi - -if test -n "$RPM_LIB_BASE" -then - LIBBASE=$RPM_LIB_BASE -else - LIBBASE=/var/lib -fi - -if test -n "$RPM_ETC_BASE" -then - ETCBASE=$RPM_ETC_BASE -else - ETCBASE=/etc -fi - -HASICUSER=`grep '^interch:' /etc/passwd` -if test -n "$RPM_BUILD_ROOT" -then - echo -elif test -z "$HASICUSER" -then - adduser -d $LIBBASE/interchange -c "Interchange daemon" -r interch -fi - -ETCDIRS="rc.d/init.d logrotate.d" -LIBDIRS="interchange" -ICDIRS="$RPM_BUILD_ROOT$RUNBASE/interchange $RPM_BUILD_ROOT$LOGBASE/interchange" - -for i in $ETCDIRS -do - mkdir -p $RPM_BUILD_ROOT$ETCBASE/$i -done - -for i in $LIBDIRS -do - mkdir -p $RPM_BUILD_ROOT$LIBBASE/$i -done - -for i in $ICDIRS -do - mkdir -p $i - if test -z "$RPM_BUILD_DIR" - then - chown interch.interch $i - chmod 751 $i - fi -done - -if test -n "$RPM_BUILD_ROOT" -then - mkdir -p $RPM_BUILD_ROOT$ETCBASE/rc.d/init.d - mkdir -p $RPM_BUILD_ROOT/usr/sbin -fi - -cat > $RPM_BUILD_ROOT$ETCBASE/rc.d/init.d/interchange < $RPM_BUILD_ROOT/etc/logrotate.d/interchange < $RPM_BUILD_ROOT/usr/sbin/interchange <{mv_nextpage} =~ s:^ui_download/::; - $CGI->{mv_nextpage} .= $Session->{extension}; - if($Tag->if_mm('files', $CGI->{mv_nextpage}) ) { - $Document->header("Content-type: application/octet-stream"); - $Document->hot(1); - HTML ( $Tag->file($CGI->{mv_nextpage}) ); - $status = 0; - } - else { - $Scratch->{ui_error} = "Not authorized for file $CGI->{mv_nextpage}"; - $CGI->{mv_nextpage} = '__UI_BASE__/error'; - $status = 1; - } - return $status; -} -EOR - -ActionMap ui_edit <{mv_nextpage} =~ s:^ui_download/::; - $CGI->{mv_nextpage} .= $Session->{extension}; - if($Tag->if_mm('files', $CGI->{mv_nextpage}) ) { - $Document->header("Content-type: application/octet-stream"); - $Document->hot(1); - HTML ( $Tag->file($CGI->{mv_nextpage}) ); - $status = 0; - } - else { - $Scratch->{ui_error} = "Not authorized for file $CGI->{mv_nextpage}"; - $CGI->{mv_nextpage} = '__UI_BASE__/error'; - $status = 1; - } - return $status; -} -EOR -#endif diff --git a/dist/catalog_before.cfg b/dist/catalog_before.cfg deleted file mode 100644 index 48e572906..000000000 --- a/dist/catalog_before.cfg +++ /dev/null @@ -1,269 +0,0 @@ -ParseVariables Yes - -#ifdef @UI_BASE -Variable UI_BASE @@UI_BASE@@ -#endif - -#ifndef UI_BASE -Variable UI_BASE admin -#endif - -#ifdef @UI -Variable UI_ACCESS_TABLE access -Variable UI_BOTTOMIMG poweredby.gif -Variable UI_C_ALINK #FF0000 -Variable UI_C_BG #FFFFFF -Variable UI_C_HEADERTXT #333333 -Variable UI_C_INTBLOCK #CCCC99 -Variable UI_C_INTBLOCKBAR #73f2d9 -Variable UI_C_LINK #0000FF -Variable UI_C_TITLEBARBG #6699FF -Variable UI_C_TITLEBARCONT #000000 -Variable UI_C_TITLEBARTXT #FFFFFF -Variable UI_C_TOPBLOCKBAR #336699 -Variable UI_C_TXT #000000 -Variable UI_C_MENUTEXT #000066 -Variable UI_C_MENUBG #FFFFFF -Variable UI_C_MENUTITLE #000066 -Variable UI_C_MENUBARBG #000066 -Variable UI_C_MENUBARTXT #FFFFAA -Variable UI_C_VLINK #0000CC -Variable UI_C_CONTRAST #FF0000 -Variable UI_HELP_BASE_URL http://www.akopia.com/help/4.5.0 -Variable UI_HELP_HEIGHT 480 -Variable UI_HELP_WIDTH 800 -Variable UI_LEFT_WIDTH 150 -Variable UI_SHIPPED_STATUS shipped -Variable UI_MAIN_WIDTH 600 -Variable UI_META_TABLE mv_metadata -Variable UI_OVERALL_WIDTH 750 -Variable UI_P_ALINK #EE0000 -Variable UI_P_BG #FFFFFF -Variable UI_P_LINK #0000EE -Variable UI_P_VLINK #0000FF -Variable UI_RIGHT_WIDTH 450 -Variable UI_SZ_LIST_CUSTOMER 50 -Variable UI_SZ_LIST_ORDER 50 -Variable UI_T_BG beige -Variable UI_T_PROPERTIES cellpadding=3 cellspacing=0 width=90% border=0 -Variable UI_T_ROW_EVEN #EEEEEE -Variable UI_T_ROW_ODD #FFFFFF - -Variable UI_SUBMENU_None <Welcome to Interchange Freedom to Mind Your Own Business™ -EOV - -Variable UI_SUBMENU_Merchandising <[0]; - my $record = tag_data($base, 'n/a', $code, { hash => 1 }); - return $ref->[0] unless $record; - - my $url; - my $anchor; - my $highlight; - my $first; - - LINK: { - if($record->{link_type} eq 'external') { - $first = $record->{url}; - $first =~ s/\s+$//; - $first =~ s/^\s+//; - $url = $first; - } - elsif ($record->{link_type} eq 'internal') { - my ($page, $form) = split /\s+/, $record->{url}, 2; - my $current = $Tag->var('MV_PAGE', 1); - $highlight = 1 if $page eq $current - or - $page eq $CGI->{ui_explode}; - $url = $Tag->area( { href => $page, form => $form }); - } - elsif ($record->{link_type} eq 'simple') { - my (@items) = split /\s*[\n,]\s*/, $record->{selector}; - my @out; - my $fi = $record->{tab}; - my $sp = $record->{page}; - my %options = ( - href => 'scan', - ); - push @out, "fi=$fi" if $fi; - push @out, "sp=$sp" if $sp; - push @out, "st=db"; - if(! @items) { - push @out, "ra=yes"; - $options{arg} = join "\n", @out; - $url = $Tag->area(\%options); - last LINK; - } - push @out, "co=yes"; - for(@items) { - my ($col, $string) = split /\s*=\s*/; - push @out, "sf=$col"; - push @out, "se=$string"; - } - push @out, qq{va=link_image=$record->{banner_image}}; - push @out, qq{va=link_banner=$record->{banner_text}}; - $options{arg} = join "\n", @out; - $url = $Tag->area(\%options); - } - elsif ($record->{link_type} eq 'complex') { - $record->{search} =~ s/[\r\n+]/\n/g; - $record->{search} .= qq{\nva=link_banner=$record->{banner_text}} - if $record->{banner_text}; - $record->{search} .= qq{\nva=link_image=$record->{banner_image}} - if $record->{banner_image}; - $url = $Tag->area('scan', $record->{search}); - } - else { - $url = ""; - } - } - - ANCHOR: { - if($record->{display_type} eq 'url') { - $anchor = ""; - } - elsif ($record->{display_type} eq 'name') { - $anchor = "$record->{name}"; - } - elsif ($record->{display_type} eq 'icon') { - $anchor = qq{$record->{name}{image_prop}; - $anchor .= '>'; - $anchor .= $record->{name}; - } - elsif ($record->{display_type} eq 'image') { - $anchor = qq{$record->{name}{image_prop}; - $anchor .= '>'; - } - else { - $anchor = "$record->{name}"; - } - } - return $url if ! $anchor; - return $anchor if ! $url; - my $tmpl = $record->{link_template} - || $extra - || $Variable->{BAR_LINK_TEMPLATE} - || q{$ANCHOR$}; - $record->{ANCHOR} = $anchor; - $record->{URL} = $url; - $tmpl =~ s!{HIGHLIGHT}(.*?){/HIGHLIGHT}! $highlight ? $1 : '' !gise; - $tmpl =~ s/\$(\w+)\$/$record->{$1}/g; - return $tmpl; -} -EOR diff --git a/dist/compat/backend/AsciiBackend b/dist/compat/backend/AsciiBackend deleted file mode 100644 index 71ee0af51..000000000 --- a/dist/compat/backend/AsciiBackend +++ /dev/null @@ -1,36 +0,0 @@ -GlobalSub <{BackendOrder}; - - if(@backend and $Vend::Cfg->{AsciiBackend}) { - my(@ary); - push @ary, $order_no; - for(@backend) { - push @ary, $::Values->{$_}; - } - foreach $i (0 .. $#$Vend::Items) { - push @ary, $Vend::Items->[$i]{'code'}; - push @ary, $Vend::Items->[$i]{'quantity'}; - if ($Vend::Cfg->{UseModifier}) { - foreach $j (@{$Vend::Cfg->{UseModifier}}) { - push @ary, $Vend::Items->[$i]->{$j} - } - } - } - logData ($Vend::Cfg->{AsciiBackend}, @ary); - } - $Vend::Order::override_track_order->($order_no, $order_report); - } - *track_order = \&Vend::Order::override_track_order; -} -EOS - -AddDirective BackendOrder -AddDirective AsciiBackend diff --git a/dist/compat/body b/dist/compat/body deleted file mode 100644 index d669bd45b..000000000 --- a/dist/compat/body +++ /dev/null @@ -1,53 +0,0 @@ - -UserTag body PosNumber 2 -UserTag body Order type extra -UserTag body Routine <{Color}->{$var} = []; - @{$C->{'Color'}->{$var}} = split /\s+/, $value; - return $value; -} - -sub { - my($scheme, $extra) = @_; - my $r = '' unless (int($scheme) < 16 and int($scheme) > 1); - - my %color = qw( mv_bgcolor BGCOLOR mv_textcolor TEXT - mv_linkcolor LINK mv_vlinkcolor VLINK - mv_alinkcolor ALINK mv_background BACKGROUND ); - if (defined $::Values->{mv_resetcolors} - and $::Values->{mv_resetcolors}) { - delete $::Values->{mv_customcolors}; - undef $::Values->{mv_resetcolors}; - } - if (defined $::Values->{mv_customcolors}) { - foreach $var (keys %color) { - $r .= qq| $color{$var}="| . $::Values->{$var} . '"' - if $::Values->{$var}; - } - } - else { - foreach $var (keys %color) { - $r .= qq| $color{$var}="| . ${$Vend::Cfg->{Color}->{$var}}[$scheme] . '"' - if defined ${$Vend::Cfg->{Color}->{$var}}[$scheme] - && ${$Vend::Cfg->{Color}->{$var}}[$scheme] !~ /\bnone\b/; - } - } - $r =~ s#(BACKGROUND="(?!http:))([^/])#$1$Vend::Cfg->{ImageDir}$2#; - $r .= " $extra" if defined $extra; - $r .= '>'; -} -EOR - -AddDirective Mv_Background color -AddDirective Mv_BgColor color -AddDirective Mv_TextColor color -AddDirective Mv_LinkColor color -AddDirective Mv_AlinkColor color -AddDirective Mv_VlinkColor color diff --git a/dist/compat/buttonbar b/dist/compat/buttonbar deleted file mode 100644 index 5b0426863..000000000 --- a/dist/compat/buttonbar +++ /dev/null @@ -1,45 +0,0 @@ - -# Returns a buttonbar by number -UserTag buttonbar Order type -UserTag buttonbar PosNumber 1 -UserTag buttonbar Interpolate 1 -UserTag buttonbar Routine <{'ButtonBars'}->[$buttonbar]) { - return $Vend::Cfg->{'ButtonBars'}->[$buttonbar]; - } - else { - return ''; - } -} -EOR - -AddDirective ButtonBars buttonbar diff --git a/dist/compat/form_mail.cfg b/dist/compat/form_mail.cfg deleted file mode 100644 index 2cd053ba7..000000000 --- a/dist/compat/form_mail.cfg +++ /dev/null @@ -1,35 +0,0 @@ -GlobalSub <{'SendMailProgram'} -t") or last SEND; - print Vend::MAIL - "To: $to\n", - $reply, - "Subject: $subject\n", - "Errors-To: $Vend::Cfg->{MailOrderTo}\n\n", - $body - or last SEND; - close Vend::MAIL or last SEND; - $ok = ($? == 0); - } - - if (!$ok) { - logError("Unable to send mail using $Vend::Cfg->{'SendMailProgram'}\n" . - "To '$to'\n" . - "With subject '$subject'\n" . - "With reply-to '$reply'\n" . - "And body:\n$body"); - } - $ok; -} -EndOfSub - diff --git a/dist/compat/help b/dist/compat/help deleted file mode 100644 index 8a89304d2..000000000 --- a/dist/compat/help +++ /dev/null @@ -1,51 +0,0 @@ -UserTag help PosNumber 1 -UserTag help Order name -UserTag help Routine <{'Help'}; - $var = lc $var; - $C->{'Source'}->{'Help'} = $value; - @files = get_files($C->{'PageDir'}, split /\s+/, $value); - foreach $chunk (@files) { - @items = split /\r?\n\r?\n/, $chunk; - foreach $item (@items) { - ($key,$help) = split /\s*\n/, $item, 2; - if(defined $c->{$key}) { - $c->{$key} .= $help; - } - else { - $c->{$key} = $help; - } - - } - } - return $c; -} - -sub { - my($help) = shift; - # Move this to control section? - if ($::Values->{mv_helpon}) { - delete $::Values->{mv_helpoff}; - undef $::Values->{mv_helpon}; - } - return '' if defined $::Values->{'mv_helpoff'}; - if (defined $Vend::Cfg->{'Help'}{$help}) { - return $Vend::Cfg->{'Help'}{$help}; - } - else { - return ''; - } -} - -EOR - -AddDirective Help help diff --git a/dist/compat/random_rotate b/dist/compat/random_rotate deleted file mode 100644 index 0f18c71ee..000000000 --- a/dist/compat/random_rotate +++ /dev/null @@ -1,61 +0,0 @@ - -UserTag random PosNumber 0 -UserTag random Interpolate 1 -UserTag random Routine <{'Random'}})); - if (defined $Vend::Cfg->{'Random'}->[$random]) { - return $Vend::Cfg->{'Random'}->[$random]; - } - else { - return ''; - } -} -EOR - -UserTag rotate PosNumber 2 -UserTag rotate Order ceiling floor -UserTag rotate Interpolate 1 -UserTag rotate Routine <{Rotate}; - my $ceiling = $_[0] || @{$Vend::Cfg->{'Rotate'}} || return ''; - my $floor = $_[1] || 1; - - $ceiling--; - $floor--; - - my $marker = "rotate$floor$ceiling"; - - if($ceiling < 0 or $floor < 0) { - $floor = 0; - $ceiling = scalar @{$Vend::Cfg->{'Rotate'}} - 1; - logError "Bad ceiling or floor for rotate"; - } - - my $rotate; - $rotate = $Vend::Session->{$marker} || $floor; - - if($rotate > $ceiling or $rotate < $floor ) { - $rotate = $floor; - } - - $Vend::Session->{$marker} = $rotate + 1; - return $Vend::Cfg->{'Rotate'}->[$rotate]; -} -EOR - -AddDirective Random random -AddDirective Rotate random diff --git a/dist/construct/backup/.empty b/dist/construct/backup/.empty deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/construct/catalog.cfg b/dist/construct/catalog.cfg deleted file mode 100644 index 5248dd4c9..000000000 --- a/dist/construct/catalog.cfg +++ /dev/null @@ -1,464 +0,0 @@ -# Set the sitewide information. The initial settings -# in the "variable" table are shown below; subsequent -# changes are only in the database, not below. - -VariableDatabase variable - -### These reflect the initial settings set -### above; if you uncomment them they will override -### it. -# -#Variable SERVER_NAME __MVC_SERVERNAME__ -#Variable CGI_URL __MVC_CGIURL__ -#Variable SECURE_SERVER http://__MVC_SERVERNAME__ -#Variable ORDERS_TO __MVC_MAILORDERTO__ -#Variable IMAGE_DIR __MVC_IMAGEURL__ -#Variable DOCROOT __MVC_DOCUMENTROOT__ -#Variable SAMPLEHTML __MVC_SAMPLEHTML__ -#Variable SAMPLEURL __MVC_SAMPLEURL__ -# -#Variable COMPANY __MVC_COMPANY__ -#Variable ADDRESS __MVC_ADDRESS__ -#Variable CITY __MVC_CITY__ -#Variable PHONE __MVC_PHONE__ -#Variable TOLLFREE __MVC_TOLLFREE__ -#Variable FAX __MVC_FAX__ -#Variable LOGO __MVC_LOGO__ -#Variable SMLOGO __MVC_SMLOGO__ -#Variable ENCRYPTOR __MVC_ENCRYPTOR__ -#Variable TAXAREA __MVC_TAXAREA__ -#Variable TAXRATE __MVC_TAXRATE__ -#Variable TAXSHIPPING __MVC_TAXSHIPPING__ -# -#Variable SOMESQL __MVC_MYSQL____MVC_PGSQL__ -#Variable MYSQL __MVC_MYSQL__ -#Variable PGSQL __MVC_PGSQL__ -#Variable SQLDSN __MVC_SQLDSN__ -#Variable SQLDB __MVC_SQLDB__ -#Variable SQLUSER __MVC_SQLUSER__ -#Variable SQLPASS __MVC_SQLPASS__ - -## END SITE CONFIGURATION - -ParseVariables Yes - -######### -######### Set the catalog URLS, using the Variable settings above. -######### -## -## The URLs which are written to call the CGI link script. -## -VendURL http://__SERVER_NAME____CGI_URL__ -SecureURL __SECURE_SERVER____CGI_URL__ - -## Set the image path for relative images -ImageDir __IMAGE_DIR__/ -ImageDirInternal http://__SERVER_NAME____IMAGE_DIR__/ - -## -######### -######### -######### - -######### -######### Some user session related settings... -######### -# -# - -## Whether to encrypt passwords in UserDB -## We usually don't for users, so we can mail them their password -## We DO in admin, that is set in catalog_after.cfg -UserDB default crypt 0 - -## Change a field to something that doesn't conflict in MySQL -UserDB default time_field mod_time - -## Don't want people setting their credit limit or dealer status directly -UserDB default scratch "dealer credit_limit" - -## Set some initial values -ScratchDefault mv_add_dot_html 1 -ScratchDefault mv_no_session_id 1 -ScratchDefault mv_no_count 1 -ScratchDefault order_style 1 -ValuesDefault mv_shipmode upsg -ValuesDefault show_basket 1 -# -# -######### -######### -######### - -################################################################ -######## These define the variables for templating ######## -######## You see them in pages with __LEFTRIGHT_TOP__ ######## -######## ######## -######## Files are actually in templates/regions dir ######## -######## ######## -################################################################ - -## Define some colors -## -Variable HEADERBG BGCOLOR="#669999" -Variable HEADERTEXT #FFFFFF -Variable TITLEBG BGCOLOR="#669999" -Variable TITLETEXT #FFFFFF - -## Put in memory with high traffic settings -## Better performance this way -## TRAFFIC is defined in interchange.cfg -## -## Variables used in these files must have been previously defined - -#ifdef @TRAFFIC =~ /high/i -ParseVariables Yes -ConfigDir templates/regions -Variable NOLEFT_TOP and other tags within -# HTML tags, use [pragma no_html_parse 0] to enable on a page -Pragma no_html_parse - -MailOrderTo __ORDERS_TO__ - - -################################################################ -######## DATABASE SETUP ######## -######## ######## -######## When you defined your catalog, you specified ######## -######## a database type. This region uses #include ######## -######## to include the database definitions based ######## -######## on that choice. ######## -######## ######## -######## See the directories in dbconf/ ######## -######## ######## -################################################################ -## -## - -#ifndef SQLDSN -Variable SQLDSN __MVC_SQLDSN__ -#endif - -##### -##### MySQL -##### -#ifdef MYSQL - -Message Using MySQL, DSN=__SQLDSN__. - -# Tell the default DBM we are using something else... -Variable SOME_DATABASE 1 - -# Uncomment if needed -#Variable SQLUSER foo -#Variable SQLPASS bar - -# The table defs are in separate files in the dbconf/mysql directory, -# the ones kept in DBM are in TABLENAME.dbm files. - -#include dbconf/mysql/* - -#endif - -#ifdef PGSQL - -Message Using PostgreSQL, DSN=__SQLDSN__. - -# Tell the default DBM we are using something else... -Variable SOME_DATABASE 1 - -# Uncomment and edit if needed -#Variable SQLUSER foo -#Variable SQLPASS bar - -# The table defs are in separate files in the dbconf/pgsql directory, -# the ones kept in DBM are in TABLENAME.dbm files. - -#include dbconf/pgsql/* - -#endif - -##### -##### Default DBM if nothing else defined -##### -#ifndef SOME_DATABASE - -# The table defs are in separate files in the dbconf/dbm directory. - -Message Using default DBM database. -#include dbconf/default_db/* - -#endif - -## -## -################################################################ -######## end database setup ####### -################################################################ - -AlwaysSecure ord/checkout multi/checkout -AsciiTrack logs/tracking.asc - -ProductFiles products - -PriceField price - -CommonAdjust pricing:price_group,q5,q10: ;:wholesale ;$ -UserDB default scratch dealer - -Autoload <{dealer}) { - $Config->{PriceField} = 'no_price'; - } -[/perl] -EOR - -# Here is one that sets up "Mix and match" based upon the price_group field -# in the "pricing" database. -#CommonAdjust pricing:price_group,q2,q5,q10,q25,q100, ;:price, ;$ ==color:pricing, ==size:pricing -CookieLogin Yes - -# This sets up the new payment charge mode in Interchange 4 -# You set it to "custom name", where name is the name of a GlobalSub -# that performs the charge operation. If it is not "custom", then -# it will use the CyberCash routines. -# -# "minivend_test" is special, and the demo order profile -# works with the demo order form to test -# -#Variable MV_PAYMENT_MODE minivend_test - -# Uncomment to use creditCardAuto if you want, now handled better in -# order profiles with "&credit_card=standard". -#CreditCardAuto Yes - -# These are usually all you need for CyberCash 3 -# Uncomment and edit to suit; make sure you remove CreditCardAuto somehow -# -#Variable CYBER_CONFIGFILE /home/you/yourid75/mck-cgi/merchant_conf -#Variable CYBER_VERSION 3.2 -#Variable CYBER_MODE mauthonly - -#ifdef CYBER_MODE -Variable MV_PAYMENT_MODE mauthonly -CreditCardAuto No -#endif - -EncryptProgram __ENCRYPTOR__ - -# Uncomment only if you have these locales on your system -#Locale de_DE -#Locale de_DE LC_CTYPE de_DE -#Locale fr_FR -#Locale en_US - -Locale en_US LC_CTYPE C -LocaleDatabase locale - -Onfly onfly -OrderCounter etc/order.number -OrderLineLimit 25 -OrderProfile etc/profiles.order etc/profiles.login etc/profiles.misc - -# This makes CommonAdjust effective, since no_price doesn't exist -ReadPermission group -RobotLimit 50 - -# Here we override Interchange's normal order routine -ActionMap order <{mv_nextpage} ne 'order') { - # Do nothing - } - elsif($Values->{no_basket}) { - $CGI->{mv_nextpage} = 'ord/nobasket'; - } - else { - $CGI->{mv_nextpage} = 'ord/basket'; - } - $CGI->{mv_order_item} = $CGI->{mv_arg} - if ! $CGI->{mv_order_item}; - $Tag->update('values'); - return 1; -} -EOR - -ActionMap deliver <{deliverable} = $CGI->{mv_arg}; - $CGI->{mv_nextpage} = 'deliver'; - return 1; -} -EOR - -ActionMap get_password <{NoSearch} = ''; - $CGI->{mv_nextpage} = $CGI->{mv_search_page} = 'action/get_password'; - $CGI->{mv_todo} = 'search'; - $Tag->update('process'); - return; -} -EOR - -ParseVariables Yes -Route log attach 0 -Route log cybermode "" -Route log empty 1 -Route log encrypt 0 -Route log increment 0 -Route log report etc/log_transaction -Route log supplant 0 -Route log track logs/log - -Route log_entry attach 0 -Route log_entry cybermode "" -Route log_entry empty 1 -Route log_entry encrypt 0 -Route log_entry increment 0 -Route log_entry report etc/log_entry -Route log_entry supplant 0 -Route log_entry track logs/log - -Route copy_user attach 0 -Route copy_user cybermode "" -Route copy_user empty 1 -Route copy_user encrypt 0 -Route copy_user increment 0 -Route copy_user report etc/mail_receipt -Route copy_user supplant 0 -Route copy_user track logs/log - -# Main route must be last to make default -Route main attach 0 -Route main credit_card 0 -Route main cybermode "" -Route main default 1 -Route main email '__ORDERS_TO__' -Route main encrypt 0 -Route main encrypt_program '__ENCRYPTOR__' -Route main errors_to '__ORDERS_TO__' -Route main increment 0 -Route main pgp_cc_key "" -Route main pgp_key "" -Route main receipt etc/receipt.html -Route main report etc/report -Route main supplant 1 -Route main individual_track orders -Route main track logs/tracking.asc - -# Order routes can be maintained in a database, empty in demo -# CHANGES TO THIS WILL OVERRIDE THE ROUTES ABOVE -RouteDatabase route - -SalesTax state -SeparateItems Yes - -SpecialPage catalog index -SpecialPage report ../etc/report -SpecialPage receipt ../etc/receipt - -NoCache admin config multi ord query reconfig special - -Static __CATALOG_STATIC__ -StaticLogged __LOGGED_STATIC__ -StaticAll Yes -StaticDBM static -StaticDepth 2 -StaticDir __SAMPLEHTML__/pages -StaticFly Yes -StaticPath __SAMPLEURL__/pages -TaxShipping __TAXSHIPPING__ - -#ifdef UI_TRAFFIC_STATS -TrackFile __UI_TRAFFIC_STATS__ -#endif - -UpsZoneFile products/450.csv -UseModifier size color -AutoModifier pricing:price_group -AutoModifier products:gift_cert - -History 10 -UserTag history-scan Order find exclude default -UserTag history-scan addAttr -UserTag history-scan Routine <{History} - or return $Tag->area($default || $Config->{SpecialPage}{catalog}); - my ($hist, $href, $cgi); - $exclude = qr/$exclude/ if $exclude; - for(my $i = $#$ref; $i >= 0; $i--) { - #Log("checking $ref->[$i][0] for $exclude"); - if ($exclude and $ref->[$i][0] =~ $exclude) { - next; - } - if($find) { - next unless $ref->[$i][0] =~ /$find/; - } - ($href, $cgi) = @{$ref->[$i]}; - last; - } - return $Tag->area($default || $Config->{SpecialPage}{catalog}) - if ! $href; - my $form = ''; - for(grep !$var_exclude{$_}, keys %$cgi) { - $form .= "\n$_="; - $form .= join("\n$_=", split /\0/, $cgi->{$_}); - } - return $Tag->area( { href => $href, form => $form} ); -} -EOR - -WritePermission group - -# Here you can set up fatal errors if a necessary sub or usertag -# doesn't exist, uncomment one of next lines to test -# -#Require globalsub nevairbe -#Require usertag nevairbe - -Require usertag email -Require usertag email_raw -Require usertag var -Require usertag loc -Require usertag summary -Require usertag button diff --git a/dist/construct/config/additional_fields b/dist/construct/config/additional_fields deleted file mode 100644 index e8a9377a3..000000000 --- a/dist/construct/config/additional_fields +++ /dev/null @@ -1,63 +0,0 @@ -COMPANY -Your company name -Construct Something - -SOMESQL -Set to 1 if you want to use MySQL or Postgres -0 1 - -{SOMESQL}MYSQL -Set to 1 if you want to use MySQL -1 0 - -{MYSQL}SQLDB -Database to use (will be created) -test___MVC_CATALOGNAME__ intchg - -{MYSQL}SQLDSN -DBI DSN to use -dbi:mysql:__MVC_SQLDB__ - -{MYSQL}SQLUSER -Username for MySQL (if any) - intchg - -{MYSQL}SQLPASS -Password for MySQL (if any) - pass - -{MYSQL}SQLCREATE -Set to 1 to create '__MVC_SQLDB__' with mysqladmin -1 0 - -{SQLCREATE}SQLCREATEOPT -Extra options for creation - -p -u root -p - -{SOMESQL and ! '__MVC_MYSQL__'}PGSQL -Set to 1 if you want to use PostGres -1 0 - -{PGSQL}SQLDB -Database to use (will be created) -test___MVC_CATALOGNAME__ interchange - -{PGSQL}SQLDSN -DBI DSN to use -dbi:Pg:dbname=__MVC_SQLDB__ - -{PGSQL}SQLUSER -Username for Postgres (if any) - __MVC_CATUSER__ - -{PGSQL}SQLPASS -Password for Postgres (if any) - pass - -SUPERUSER -Account name that will control this catalog -interchange __MVC_CATUSER__ - -CRYPTPW -Administrative password -pass nevairbe diff --git a/dist/construct/config/additional_help b/dist/construct/config/additional_help deleted file mode 100644 index d895b31b7..000000000 --- a/dist/construct/config/additional_help +++ /dev/null @@ -1,78 +0,0 @@ -TAXAREA -. -For the US, this is usually the state(s) your business is -located in. Non-US users will probably have to set this -differently depending on their tax laws. - -TAXRATE -. -For US users, this looks like STATE=RATE, where the rate -is in percent. The default below taxes Ohio at 6% and -Illinois at 7.25 percent. More states can be added or -you can have only one. Should correspond to TAXAREA. - -SOMESQL -. -Interchange has a workable internal database, but many things will -work better (and a few worse) if you use a SQL database. Interchange -can configure MySQL and Postgres in a test configuration. - -MYSQL -. -You can select this to use MySQL in your test catalog. Careful! -This requires the ability to create a database named "test_construct", -and is highly dependent on your Perl and MySQL configuration. Don't -be too surprised if this doesn't work. - -SQLCREATE -. -We can try and use mysqladmin to create the database in -MySQL. In many default Mysql distributions, any user can create -a database beginning with "test". -. -Use the next option to add parameters. If your Mysql is password-protected -(and you know the password) you may want to add "-u root -p". - -SQLCREATEOPT -. -To create the database you may need to supply a password and -username. To do that, add the option "-u USERNAME -p", where -USERNAME is a Mysql user with permission to create databases. -This is often the user "root". - -PGSQL -. -You can select this to use PostGres in your test catalog. -This requires the ability to create a database named "test_construct", -and is highly dependent on your Perl and system configuration. Don't -be too surprised if this doesn't work. - -MULTIORDER -. -Interchange can do order pages in any way; two examples are provided. -The default is single-page. - -TEMPLATE -. -There are three color schemes available as an example of -how you might template catalogs. Select one of: -. - brown1 blue1 yellow1 - -UPSADDER -. -For the UPS lookup, the standard UPS tables are normally -used. If you want to add a handling charge, do it here. - -SUPERUSER -. -You can use Interchange's companion configuration -interface, to do upload/download of files, manipulation of -the database, reconfiguration of the catalog, and much more. -. -To enable the UI, you will need a "super-user" account -name that has full access. -. -The initial password is "pass". CHANGE IT! You can do this -by going to the admin menu and selecting the superuser and -then "Change password". diff --git a/dist/construct/config/postcopy_commands b/dist/construct/config/postcopy_commands deleted file mode 100644 index 415ed3c71..000000000 --- a/dist/construct/config/postcopy_commands +++ /dev/null @@ -1,5 +0,0 @@ -ln -s __MVC_DOCUMENTROOT____MVC_IMAGEURL__ __MVC_CATROOT__ -To enable image upload feature, you need to make a symbolic -link of the image base directory into your catalog directory. - - diff --git a/dist/construct/config/precopy_commands b/dist/construct/config/precopy_commands deleted file mode 100644 index 1c60134d6..000000000 --- a/dist/construct/config/precopy_commands +++ /dev/null @@ -1,13 +0,0 @@ -{MYSQL}mysqladmin __MVC_SQLCREATEOPT__ create __MVC_SQLDB__ -Since you selected the MySQL option, you need to create -a database named "__MVC_SQLDB__". In a default MySQL -configuration, any user may create and drop and modify -test_* databases, but some administrators disable this. - - -{PGSQL}createdb __MVC_SQLDB__ -Since you selected the PostgreSQL option, you need to create -a database named "__MVC_SQLDB__". This will only work if -your administrator allowed it. - - diff --git a/dist/construct/dbconf/default_db/2ndDayAir.dbm b/dist/construct/dbconf/default_db/2ndDayAir.dbm deleted file mode 100644 index d2de929c5..000000000 --- a/dist/construct/dbconf/default_db/2ndDayAir.dbm +++ /dev/null @@ -1,2 +0,0 @@ -Database 2ndDayAir 2ndDayAir.csv CSV -Database 2ndDayAir GUESS_NUMERIC 1 diff --git a/dist/construct/dbconf/default_db/Ground.dbm b/dist/construct/dbconf/default_db/Ground.dbm deleted file mode 100644 index 48f4cd786..000000000 --- a/dist/construct/dbconf/default_db/Ground.dbm +++ /dev/null @@ -1,2 +0,0 @@ -Database Ground Ground.csv CSV -Database Ground GUESS_NUMERIC 1 diff --git a/dist/construct/dbconf/default_db/NextDayAir.dbm b/dist/construct/dbconf/default_db/NextDayAir.dbm deleted file mode 100644 index 987c0691a..000000000 --- a/dist/construct/dbconf/default_db/NextDayAir.dbm +++ /dev/null @@ -1,2 +0,0 @@ -Database NextDayAir NextDayAir.csv CSV -Database NextDayAir GUESS_NUMERIC 1 diff --git a/dist/construct/dbconf/default_db/access.dbm b/dist/construct/dbconf/default_db/access.dbm deleted file mode 100644 index eede64888..000000000 --- a/dist/construct/dbconf/default_db/access.dbm +++ /dev/null @@ -1 +0,0 @@ -Database access access.asc TAB diff --git a/dist/construct/dbconf/default_db/affiliate.dbm b/dist/construct/dbconf/default_db/affiliate.dbm deleted file mode 100644 index 314afa117..000000000 --- a/dist/construct/dbconf/default_db/affiliate.dbm +++ /dev/null @@ -1 +0,0 @@ -Database affiliate affiliate.txt TAB diff --git a/dist/construct/dbconf/default_db/area.dbm b/dist/construct/dbconf/default_db/area.dbm deleted file mode 100644 index 2d5c2f798..000000000 --- a/dist/construct/dbconf/default_db/area.dbm +++ /dev/null @@ -1,2 +0,0 @@ -Database area area.txt TAB -Database area AUTO_NUMBER 1 diff --git a/dist/construct/dbconf/default_db/banner.dbm b/dist/construct/dbconf/default_db/banner.dbm deleted file mode 100644 index d01303625..000000000 --- a/dist/construct/dbconf/default_db/banner.dbm +++ /dev/null @@ -1,2 +0,0 @@ -Database banner banner.txt TAB -Database banner NUMERIC weight diff --git a/dist/construct/dbconf/default_db/cat.dbm b/dist/construct/dbconf/default_db/cat.dbm deleted file mode 100644 index 8ac508321..000000000 --- a/dist/construct/dbconf/default_db/cat.dbm +++ /dev/null @@ -1 +0,0 @@ -Database cat cat.txt TAB diff --git a/dist/construct/dbconf/default_db/country.dbm b/dist/construct/dbconf/default_db/country.dbm deleted file mode 100644 index c3980b2b7..000000000 --- a/dist/construct/dbconf/default_db/country.dbm +++ /dev/null @@ -1 +0,0 @@ -Database country country.txt TAB diff --git a/dist/construct/dbconf/default_db/gift_certs.dbm b/dist/construct/dbconf/default_db/gift_certs.dbm deleted file mode 100644 index c8ad3de64..000000000 --- a/dist/construct/dbconf/default_db/gift_certs.dbm +++ /dev/null @@ -1 +0,0 @@ -Database gift_certs gift_certs.txt TAB diff --git a/dist/construct/dbconf/default_db/inventory.dbm b/dist/construct/dbconf/default_db/inventory.dbm deleted file mode 100644 index f1446860f..000000000 --- a/dist/construct/dbconf/default_db/inventory.dbm +++ /dev/null @@ -1 +0,0 @@ -Database inventory inventory.txt TAB diff --git a/dist/construct/dbconf/default_db/locale.dbm b/dist/construct/dbconf/default_db/locale.dbm deleted file mode 100644 index 1e1cce457..000000000 --- a/dist/construct/dbconf/default_db/locale.dbm +++ /dev/null @@ -1 +0,0 @@ -Database locale locale.txt TAB diff --git a/dist/construct/dbconf/default_db/merchandising.dbm b/dist/construct/dbconf/default_db/merchandising.dbm deleted file mode 100644 index 7fc4c5386..000000000 --- a/dist/construct/dbconf/default_db/merchandising.dbm +++ /dev/null @@ -1 +0,0 @@ -Database merchandising merchandising.txt TAB diff --git a/dist/construct/dbconf/default_db/mv_metadata.dbm b/dist/construct/dbconf/default_db/mv_metadata.dbm deleted file mode 100644 index c9afa38bf..000000000 --- a/dist/construct/dbconf/default_db/mv_metadata.dbm +++ /dev/null @@ -1 +0,0 @@ -Database mv_metadata mv_metadata.asc TAB diff --git a/dist/construct/dbconf/default_db/order_returns.dbm b/dist/construct/dbconf/default_db/order_returns.dbm deleted file mode 100644 index 1bce9f889..000000000 --- a/dist/construct/dbconf/default_db/order_returns.dbm +++ /dev/null @@ -1 +0,0 @@ -Database order_returns order_returns.txt TAB diff --git a/dist/construct/dbconf/default_db/orderline.dbm b/dist/construct/dbconf/default_db/orderline.dbm deleted file mode 100644 index f68ecfa94..000000000 --- a/dist/construct/dbconf/default_db/orderline.dbm +++ /dev/null @@ -1 +0,0 @@ -Database orderline orderline.txt TAB diff --git a/dist/construct/dbconf/default_db/pricing.dbm b/dist/construct/dbconf/default_db/pricing.dbm deleted file mode 100644 index 043b3e7cf..000000000 --- a/dist/construct/dbconf/default_db/pricing.dbm +++ /dev/null @@ -1,3 +0,0 @@ -Database pricing pricing.txt TAB -Database pricing KEY sku -Database pricing NUMERIC q2 diff --git a/dist/construct/dbconf/default_db/products.dbm b/dist/construct/dbconf/default_db/products.dbm deleted file mode 100644 index f7e6e00cf..000000000 --- a/dist/construct/dbconf/default_db/products.dbm +++ /dev/null @@ -1,3 +0,0 @@ -Database products products.txt TAB -Database products HOT 1 -Database products INDEX category:c diff --git a/dist/construct/dbconf/default_db/recurring_items.dbm b/dist/construct/dbconf/default_db/recurring_items.dbm deleted file mode 100644 index 52263214a..000000000 --- a/dist/construct/dbconf/default_db/recurring_items.dbm +++ /dev/null @@ -1 +0,0 @@ -Database recurring_items recurring_items.txt TAB diff --git a/dist/construct/dbconf/default_db/recurring_orders.dbm b/dist/construct/dbconf/default_db/recurring_orders.dbm deleted file mode 100644 index e8abfbc84..000000000 --- a/dist/construct/dbconf/default_db/recurring_orders.dbm +++ /dev/null @@ -1 +0,0 @@ -Database recurring_orders recurring_orders.txt TAB diff --git a/dist/construct/dbconf/default_db/ship_addresses.dbm b/dist/construct/dbconf/default_db/ship_addresses.dbm deleted file mode 100644 index ec135c949..000000000 --- a/dist/construct/dbconf/default_db/ship_addresses.dbm +++ /dev/null @@ -1 +0,0 @@ -Database ship_addresses ship_addresses.txt TAB diff --git a/dist/construct/dbconf/default_db/transactions.dbm b/dist/construct/dbconf/default_db/transactions.dbm deleted file mode 100644 index d6e6749f2..000000000 --- a/dist/construct/dbconf/default_db/transactions.dbm +++ /dev/null @@ -1 +0,0 @@ -Database transactions transactions.txt TAB diff --git a/dist/construct/dbconf/default_db/userdb.dbm b/dist/construct/dbconf/default_db/userdb.dbm deleted file mode 100644 index 07f764fa6..000000000 --- a/dist/construct/dbconf/default_db/userdb.dbm +++ /dev/null @@ -1 +0,0 @@ -Database userdb userdb.txt TAB diff --git a/dist/construct/dbconf/default_db/variable.dbm b/dist/construct/dbconf/default_db/variable.dbm deleted file mode 100644 index fb31bcbb0..000000000 --- a/dist/construct/dbconf/default_db/variable.dbm +++ /dev/null @@ -1 +0,0 @@ -Database variable variable.txt TAB diff --git a/dist/construct/dbconf/mysql/2ndDayAir.dbm b/dist/construct/dbconf/mysql/2ndDayAir.dbm deleted file mode 100644 index d2de929c5..000000000 --- a/dist/construct/dbconf/mysql/2ndDayAir.dbm +++ /dev/null @@ -1,2 +0,0 @@ -Database 2ndDayAir 2ndDayAir.csv CSV -Database 2ndDayAir GUESS_NUMERIC 1 diff --git a/dist/construct/dbconf/mysql/Ground.dbm b/dist/construct/dbconf/mysql/Ground.dbm deleted file mode 100644 index 48f4cd786..000000000 --- a/dist/construct/dbconf/mysql/Ground.dbm +++ /dev/null @@ -1,2 +0,0 @@ -Database Ground Ground.csv CSV -Database Ground GUESS_NUMERIC 1 diff --git a/dist/construct/dbconf/mysql/NextDayAir.dbm b/dist/construct/dbconf/mysql/NextDayAir.dbm deleted file mode 100644 index 987c0691a..000000000 --- a/dist/construct/dbconf/mysql/NextDayAir.dbm +++ /dev/null @@ -1,2 +0,0 @@ -Database NextDayAir NextDayAir.csv CSV -Database NextDayAir GUESS_NUMERIC 1 diff --git a/dist/construct/dbconf/mysql/access.dbm b/dist/construct/dbconf/mysql/access.dbm deleted file mode 100644 index eede64888..000000000 --- a/dist/construct/dbconf/mysql/access.dbm +++ /dev/null @@ -1 +0,0 @@ -Database access access.asc TAB diff --git a/dist/construct/dbconf/mysql/affiliate.mysql b/dist/construct/dbconf/mysql/affiliate.mysql deleted file mode 100644 index d59148869..000000000 --- a/dist/construct/dbconf/mysql/affiliate.mysql +++ /dev/null @@ -1,9 +0,0 @@ -Database affiliate affiliate.txt __SQLDSN__ -#ifdef SQLUSER -Database affiliate USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database affiliate PASS __SQLPASS__ -#endif -Database affiliate COLUMN_DEF "code=char(12) NOT NULL PRIMARY KEY" -Database affiliate DEFAULT_TYPE text diff --git a/dist/construct/dbconf/mysql/area.mysql b/dist/construct/dbconf/mysql/area.mysql deleted file mode 100644 index ed19b386d..000000000 --- a/dist/construct/dbconf/mysql/area.mysql +++ /dev/null @@ -1,11 +0,0 @@ -Database area area.txt __SQLDSN__ -#ifdef SQLUSER -Database area USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database area PASS __SQLPASS__ -#endif -Database area DEFAULT_TYPE text -Database area COLUMN_DEF "code=int NOT NULL PRIMARY KEY" -Database area COLUMN_DEF "name=char(128) DEFAULT '' NOT NULL, index(name)" -Database area COLUMN_DEF "sort=char(3) DEFAULT '00' NOT NULL, index(sort)" diff --git a/dist/construct/dbconf/mysql/banner.dbm b/dist/construct/dbconf/mysql/banner.dbm deleted file mode 100644 index d01303625..000000000 --- a/dist/construct/dbconf/mysql/banner.dbm +++ /dev/null @@ -1,2 +0,0 @@ -Database banner banner.txt TAB -Database banner NUMERIC weight diff --git a/dist/construct/dbconf/mysql/cat.mysql b/dist/construct/dbconf/mysql/cat.mysql deleted file mode 100644 index 9f5c41a8b..000000000 --- a/dist/construct/dbconf/mysql/cat.mysql +++ /dev/null @@ -1,12 +0,0 @@ -Database cat cat.txt __SQLDSN__ -#ifdef SQLUSER -Database cat USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database cat PASS __SQLPASS__ -#endif -Database cat DEFAULT_TYPE text -Database cat COLUMN_DEF "code=char(20) NOT NULL PRIMARY KEY" -Database cat COLUMN_DEF "sel=CHAR(64) DEFAULT '' NOT NULL, index(sel)" -Database cat COLUMN_DEF "name=CHAR(64) DEFAULT '' NOT NULL, index(name)" -Database cat COLUMN_DEF "sort=CHAR(4) DEFAULT 'ZZ' NOT NULL, index(sort)" diff --git a/dist/construct/dbconf/mysql/country.mysql b/dist/construct/dbconf/mysql/country.mysql deleted file mode 100644 index d02357d4d..000000000 --- a/dist/construct/dbconf/mysql/country.mysql +++ /dev/null @@ -1,11 +0,0 @@ -Database country country.txt __SQLDSN__ -#ifdef SQLUSER -Database country USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database country PASS __SQLPASS__ -#endif -Database country COLUMN_DEF "code=CHAR(3) NOT NULL PRIMARY KEY" -Database country COLUMN_DEF "selector=CHAR(3)" -Database country COLUMN_DEF "shipmodes=CHAR(64)" -Database country COLUMN_DEF "name=CHAR(32) DEFAULT '' NOT NULL, index(name)" diff --git a/dist/construct/dbconf/mysql/gift_certs.mysql b/dist/construct/dbconf/mysql/gift_certs.mysql deleted file mode 100644 index 57239b7c6..000000000 --- a/dist/construct/dbconf/mysql/gift_certs.mysql +++ /dev/null @@ -1,17 +0,0 @@ -Database gift_certs gift_certs.txt __SQLDSN__ -#ifdef SQLUSER -Database gift_certs USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database gift_certs PASS __SQLPASS__ -#endif -Database gift_certs COLUMN_DEF "code=char(14) NOT NULL PRIMARY KEY" -Database gift_certs COLUMN_DEF "username=CHAR(20) default '' NOT NULL" -Database gift_certs COLUMN_DEF "order_date=varchar(32) NOT NULL" -Database gift_certs COLUMN_DEF "original_amount=float(4) NOT NULL" -Database gift_certs COLUMN_DEF "redeemed_amount=float(4) NOT NULL" -Database gift_certs COLUMN_DEF "available_amount=float(4) NOT NULL" -Database gift_certs COLUMN_DEF "passcode=CHAR(20) NOT NULL" -Database gift_certs COLUMN_DEF "active=CHAR(3)" -Database gift_certs COLUMN_DEF "redeemed=CHAR(3)" -Database gift_certs COLUMN_DEF "update_date=timestamp" diff --git a/dist/construct/dbconf/mysql/inventory.mysql b/dist/construct/dbconf/mysql/inventory.mysql deleted file mode 100644 index 909322ec6..000000000 --- a/dist/construct/dbconf/mysql/inventory.mysql +++ /dev/null @@ -1,13 +0,0 @@ -Database inventory inventory.txt __SQLDSN__ -#ifdef SQLUSER -Database inventory USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database inventory PASS __SQLPASS__ -#endif -Database inventory COLUMN_DEF "sku=char(14) NOT NULL PRIMARY KEY" -Database inventory COLUMN_DEF "quantity=INT" -Database inventory COLUMN_DEF "stock_msg=char(64)" -Database inventory COLUMN_DEF "account=char(128)" -Database inventory COLUMN_DEF "cogs_account=char(128)" -Database inventory NUMERIC quantity diff --git a/dist/construct/dbconf/mysql/locale.dbm b/dist/construct/dbconf/mysql/locale.dbm deleted file mode 100644 index 1e1cce457..000000000 --- a/dist/construct/dbconf/mysql/locale.dbm +++ /dev/null @@ -1 +0,0 @@ -Database locale locale.txt TAB diff --git a/dist/construct/dbconf/mysql/mv_metadata.dbm b/dist/construct/dbconf/mysql/mv_metadata.dbm deleted file mode 100644 index c9afa38bf..000000000 --- a/dist/construct/dbconf/mysql/mv_metadata.dbm +++ /dev/null @@ -1 +0,0 @@ -Database mv_metadata mv_metadata.asc TAB diff --git a/dist/construct/dbconf/mysql/order_returns.mysql b/dist/construct/dbconf/mysql/order_returns.mysql deleted file mode 100644 index 7146c080d..000000000 --- a/dist/construct/dbconf/mysql/order_returns.mysql +++ /dev/null @@ -1,16 +0,0 @@ -Database order_returns order_returns.txt __SQLDSN__ -#ifdef SQLUSER -Database order_returns USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database order_returns PASS __SQLPASS__ -#endif -Database order_returns COLUMN_DEF "code=char(14) NOT NULL PRIMARY KEY" -Database order_returns COLUMN_DEF "order_number=CHAR(14) NOT NULL, index(order_number)" -Database order_returns COLUMN_DEF "session=CHAR(32) NOT NULL" -Database order_returns COLUMN_DEF "username=CHAR(20) default '' NOT NULL" -Database order_returns COLUMN_DEF "rma_number=CHAR(32) NOT NULL" -Database order_returns COLUMN_DEF "nitems=CHAR(9) NOT NULL" -Database order_returns COLUMN_DEF "total=CHAR(12) NOT NULL" -Database order_returns COLUMN_DEF "return_date=varchar(32) NOT NULL" -Database order_returns COLUMN_DEF "update_date=timestamp" diff --git a/dist/construct/dbconf/mysql/orderline.mysql b/dist/construct/dbconf/mysql/orderline.mysql deleted file mode 100644 index 4800c49dc..000000000 --- a/dist/construct/dbconf/mysql/orderline.mysql +++ /dev/null @@ -1,27 +0,0 @@ - -Database orderline orderline.txt __SQLDSN__ -#ifdef SQLUSER -Database orderline USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database orderline PASS __SQLPASS__ -#endif -Database orderline COLUMN_DEF "code=char(14) NOT NULL PRIMARY KEY" -Database orderline COLUMN_DEF "store_id=CHAR(9) DEFAULT '' NOT NULL, index(store_id)" -Database orderline COLUMN_DEF "order_number=CHAR(14) NOT NULL, index(order_number)" -Database orderline COLUMN_DEF "session=CHAR(32) NOT NULL" -Database orderline COLUMN_DEF "username=CHAR(20) default '' NOT NULL" -Database orderline COLUMN_DEF "shipmode=CHAR(32) default '' NOT NULL" -Database orderline COLUMN_DEF "sku=CHAR(14) NOT NULL" -Database orderline COLUMN_DEF "quantity=CHAR(9) NOT NULL" -Database orderline COLUMN_DEF "price=CHAR(12) NOT NULL" -Database orderline COLUMN_DEF "subtotal=CHAR(12) NOT NULL" -Database orderline COLUMN_DEF "shipping=CHAR(12)" -Database orderline COLUMN_DEF "taxable=CHAR(3)" -Database orderline COLUMN_DEF "size=VARCHAR(30)" -Database orderline COLUMN_DEF "color=VARCHAR(30)" -Database orderline COLUMN_DEF "options=VARCHAR(255)" -Database orderline COLUMN_DEF "order_date=varchar(32) NOT NULL" -Database orderline COLUMN_DEF "update_date=timestamp" -Database orderline COLUMN_DEF "status=VARCHAR(32)" -Database orderline COLUMN_DEF "parent=CHAR(9)" diff --git a/dist/construct/dbconf/mysql/pricing.mysql b/dist/construct/dbconf/mysql/pricing.mysql deleted file mode 100644 index 3a8a5b4a6..000000000 --- a/dist/construct/dbconf/mysql/pricing.mysql +++ /dev/null @@ -1,19 +0,0 @@ -# MiniVend database definition -Database pricing pricing.txt __SQLDSN__ -#ifdef SQLUSER -Database pricing USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database pricing PASS __SQLPASS__ -#endif -Database pricing KEY sku -Database pricing COLUMN_DEF "q2=char(12)" -Database pricing COLUMN_DEF "price_group=CHAR(2) DEFAULT '' NOT NULL, index(price_group)" -Database pricing COLUMN_DEF "sku=CHAR(9) NOT NULL PRIMARY KEY" -Database pricing COLUMN_DEF "q5=CHAR(12)" -Database pricing COLUMN_DEF "q10=CHAR(12)" -Database pricing COLUMN_DEF "q25=CHAR(12)" -Database pricing COLUMN_DEF "q100=CHAR(12)" -Database pricing COLUMN_DEF "XL=CHAR(12)" -Database pricing COLUMN_DEF "S=CHAR(12)" -Database pricing COLUMN_DEF "red=CHAR(12)" diff --git a/dist/construct/dbconf/mysql/products.mysql b/dist/construct/dbconf/mysql/products.mysql deleted file mode 100644 index fa77cde76..000000000 --- a/dist/construct/dbconf/mysql/products.mysql +++ /dev/null @@ -1,26 +0,0 @@ -# MiniVend database definition -Database products products.txt __SQLDSN__ -#ifdef SQLUSER -Database products USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database products PASS __SQLPASS__ -#endif -Database products KEY sku -Database products COLUMN_DEF "sku=char(14) NOT NULL PRIMARY KEY" -Database products COLUMN_DEF "description=VARCHAR(128) NOT NULL" -Database products COLUMN_DEF "title=VARCHAR(128) DEFAULT '' NOT NULL, index(title)" -Database products COLUMN_DEF "related_cat=VARCHAR(128) DEFAULT '' NOT NULL, index(related_cat)" -Database products COLUMN_DEF "comment=TEXT" -Database products COLUMN_DEF "display=VARCHAR(128)" -Database products COLUMN_DEF "image=VARCHAR(64)" -Database products COLUMN_DEF "price=DECIMAL(12,2) NOT NULL, index(price)" -Database products COLUMN_DEF "category=VARCHAR(64) NOT NULL, index(category)" -Database products COLUMN_DEF "nontaxable=CHAR(3)" -Database products COLUMN_DEF "weight=VARCHAR(12) DEFAULT '0' NOT NULL" -Database products COLUMN_DEF "size=VARCHAR(96)" -Database products COLUMN_DEF "color=VARCHAR(96)" -Database products COLUMN_DEF "gift_cert=VARCHAR(3)" -Database products COLUMN_DEF "related=text" -Database products COLUMN_DEF "featured=VARCHAR(32)" -Database products NUMERIC price diff --git a/dist/construct/dbconf/mysql/recurring_items.mysql b/dist/construct/dbconf/mysql/recurring_items.mysql deleted file mode 100644 index 55a1624cc..000000000 --- a/dist/construct/dbconf/mysql/recurring_items.mysql +++ /dev/null @@ -1,13 +0,0 @@ -Database recurring_items recurring_items.txt __SQLDSN__ -#ifdef SQLUSER -Database recurring_items USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database recurring_items PASS __SQLPASS__ -#endif -Database recurring_items COLUMN_DEF "code=char(14) NOT NULL PRIMARY KEY" -Database recurring_items COLUMN_DEF "username=CHAR(20) default '' NOT NULL" -Database recurring_items COLUMN_DEF "sku=CHAR(14) NOT NULL" -Database recurring_items COLUMN_DEF "quantity=CHAR(9) NOT NULL" -Database recurring_items COLUMN_DEF "ship_to=text" -Database recurring_items COLUMN_DEF "ship_method=text" diff --git a/dist/construct/dbconf/mysql/recurring_orders.mysql b/dist/construct/dbconf/mysql/recurring_orders.mysql deleted file mode 100644 index f9765363d..000000000 --- a/dist/construct/dbconf/mysql/recurring_orders.mysql +++ /dev/null @@ -1,16 +0,0 @@ -Database recurring_orders recurring_orders.txt __SQLDSN__ -#ifdef SQLUSER -Database recurring_orders USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database recurring_orders PASS __SQLPASS__ -#endif -Database recurring_orders COLUMN_DEF "code=char(9) NOT NULL PRIMARY KEY" -Database recurring_orders COLUMN_DEF "username=CHAR(24) NOT NULL" -Database recurring_orders COLUMN_DEF "nitems=CHAR(9) NOT NULL" -Database recurring_orders COLUMN_DEF "subtotal=FLOAT(8)" -Database recurring_orders COLUMN_DEF "shipping=FLOAT(8)" -Database recurring_orders COLUMN_DEF "pay_method=text" -Database recurring_orders COLUMN_DEF "freq=text" -Database recurring_orders COLUMN_DEF "day=text" -Database recurring_orders COLUMN_DEF "day_date=text" diff --git a/dist/construct/dbconf/mysql/ship_addresses.mysql b/dist/construct/dbconf/mysql/ship_addresses.mysql deleted file mode 100644 index f9f21d32f..000000000 --- a/dist/construct/dbconf/mysql/ship_addresses.mysql +++ /dev/null @@ -1,20 +0,0 @@ -Database ship_addresses ship_addresses.txt __SQLDSN__ -#ifdef SQLUSER -Database ship_addresses USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database ship_addresses PASS __SQLPASS__ -#endif -Database ship_addresses COLUMN_DEF "code=char(9) NOT NULL PRIMARY KEY" -Database ship_addresses COLUMN_DEF "username=CHAR(20) NOT NULL" -Database ship_addresses COLUMN_DEF "entry=CHAR(9) NOT NULL" -Database ship_addresses COLUMN_DEF "addr_nick=text" -Database ship_addresses COLUMN_DEF "company=text" -Database ship_addresses COLUMN_DEF "fname=text" -Database ship_addresses COLUMN_DEF "lname=text" -Database ship_addresses COLUMN_DEF "address_1" -Database ship_addresses COLUMN_DEF "address_2" -Database ship_addresses COLUMN_DEF "city" -Database ship_addresses COLUMN_DEF "state" -Database ship_addresses COLUMN_DEF "zip" -Database ship_addresses COLUMN_DEF "country" diff --git a/dist/construct/dbconf/mysql/transactions.mysql b/dist/construct/dbconf/mysql/transactions.mysql deleted file mode 100644 index d458d4a4c..000000000 --- a/dist/construct/dbconf/mysql/transactions.mysql +++ /dev/null @@ -1,54 +0,0 @@ -Database transactions transactions.txt __SQLDSN__ -#ifdef SQLUSER -Database transactions USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database transactions PASS __SQLPASS__ -#endif -Database transactions transactions.raw SQL -Database transactions COLUMN_DEF "code=char(14) NOT NULL PRIMARY KEY" -Database transactions COLUMN_DEF "store_id=CHAR(9) DEFAULT '' NOT NULL, index(store_id)" -Database transactions COLUMN_DEF "order_number=CHAR(14) NOT NULL, index(order_number)" -Database transactions COLUMN_DEF "session=CHAR(32) NOT NULL" -Database transactions COLUMN_DEF "username=CHAR(20) default '' NOT NULL" -Database transactions COLUMN_DEF "shipmode=CHAR(32) NOT NULL" -Database transactions COLUMN_DEF "nitems=CHAR(9) NOT NULL" -Database transactions COLUMN_DEF "subtotal=CHAR(12) NOT NULL" -Database transactions COLUMN_DEF "shipping=CHAR(12) NOT NULL" -Database transactions COLUMN_DEF "handling=CHAR(12)" -Database transactions COLUMN_DEF "salestax=CHAR(12)" -Database transactions COLUMN_DEF "total_cost=CHAR(16) NOT NULL" -Database transactions COLUMN_DEF "fname=VARCHAR(30)" -Database transactions COLUMN_DEF "lname=VARCHAR(30)" -Database transactions COLUMN_DEF "company=VARCHAR(30)" -Database transactions COLUMN_DEF "address1=VARCHAR(30)" -Database transactions COLUMN_DEF "address2=VARCHAR(30)" -Database transactions COLUMN_DEF "city=VARCHAR(30) NOT NULL" -Database transactions COLUMN_DEF "state=VARCHAR(10)" -Database transactions COLUMN_DEF "zip=CHAR(10) DEFAULT '00000' NOT NULL" -Database transactions COLUMN_DEF "country=CHAR(10) DEFAULT '' NOT NULL" -Database transactions COLUMN_DEF "phone_day=VARCHAR(20)" -Database transactions COLUMN_DEF "phone_night=VARCHAR(20)" -Database transactions COLUMN_DEF "fax=VARCHAR(20)" -Database transactions COLUMN_DEF "email=VARCHAR(42)" -Database transactions COLUMN_DEF "b_fname=VARCHAR(30)" -Database transactions COLUMN_DEF "b_lname=VARCHAR(30)" -Database transactions COLUMN_DEF "b_company=VARCHAR(30)" -Database transactions COLUMN_DEF "b_address1=VARCHAR(30)" -Database transactions COLUMN_DEF "b_address2=VARCHAR(30)" -Database transactions COLUMN_DEF "b_city=VARCHAR(30)" -Database transactions COLUMN_DEF "b_state=VARCHAR(10)" -Database transactions COLUMN_DEF "b_zip=CHAR(10) DEFAULT '00000' NOT NULL" -Database transactions COLUMN_DEF "b_country=CHAR(10) DEFAULT '' NOT NULL" -Database transactions COLUMN_DEF "b_phone=VARCHAR(20)" -Database transactions COLUMN_DEF "payment_method=varchar(32)" -Database transactions COLUMN_DEF "avs=varchar(32)" -Database transactions COLUMN_DEF "order_id=varchar(32)" -Database transactions COLUMN_DEF "order_date=varchar(32) NOT NULL" -Database transactions COLUMN_DEF "update_date=timestamp" -Database transactions COLUMN_DEF "status=VARCHAR(32)" -Database transactions COLUMN_DEF "parent=CHAR(9)" -Database transactions COLUMN_DEF "archived=CHAR(1)" -Database transactions COLUMN_DEF "deleted=CHAR(1) DEFAULT ''" -Database transactions COLUMN_DEF "complete=CHAR(1)" -Database transactions COLUMN_DEF "comments=text" diff --git a/dist/construct/dbconf/mysql/userdb.mysql b/dist/construct/dbconf/mysql/userdb.mysql deleted file mode 100644 index 4e07db804..000000000 --- a/dist/construct/dbconf/mysql/userdb.mysql +++ /dev/null @@ -1,58 +0,0 @@ -Database userdb userdb.txt __SQLDSN__ -#ifdef SQLUSER -Database userdb USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database userdb PASS __SQLPASS__ -#endif -Database userdb COLUMN_DEF "code=char(20) NOT NULL PRIMARY KEY" -Database userdb COLUMN_DEF "password=CHAR(20) NOT NULL" -Database userdb COLUMN_DEF "acl=text" -Database userdb COLUMN_DEF "mod_time=timestamp" -Database userdb COLUMN_DEF "s_nickname=text" -Database userdb COLUMN_DEF "company=CHAR(30)" -Database userdb COLUMN_DEF "fname=CHAR(20)" -Database userdb COLUMN_DEF "lname=CHAR(30)" -Database userdb COLUMN_DEF "address1=CHAR(64)" -Database userdb COLUMN_DEF "address2=CHAR(64)" -Database userdb COLUMN_DEF "address3=CHAR(64)" -Database userdb COLUMN_DEF "city=CHAR(30)" -Database userdb COLUMN_DEF "state=CHAR(10)" -Database userdb COLUMN_DEF "zip=CHAR(10)" -Database userdb COLUMN_DEF "country=CHAR(10)" -Database userdb COLUMN_DEF "phone_day=CHAR(20)" -Database userdb COLUMN_DEF "mv_shipmode=CHAR(64)" -Database userdb COLUMN_DEF "b_nickname=text" -Database userdb COLUMN_DEF "b_fname=CHAR(20)" -Database userdb COLUMN_DEF "b_lname=CHAR(30)" -Database userdb COLUMN_DEF "b_address1=CHAR(64)" -Database userdb COLUMN_DEF "b_address2=CHAR(64)" -Database userdb COLUMN_DEF "b_address3=CHAR(64)" -Database userdb COLUMN_DEF "b_city=CHAR(30)" -Database userdb COLUMN_DEF "b_state=CHAR(10)" -Database userdb COLUMN_DEF "b_zip=CHAR(10)" -Database userdb COLUMN_DEF "b_country=CHAR(10)" -Database userdb COLUMN_DEF "b_phone=CHAR(20)" -Database userdb COLUMN_DEF "mv_credit_card_type=CHAR(16)" -Database userdb COLUMN_DEF "mv_credit_card_exp_month=CHAR(2)" -Database userdb COLUMN_DEF "mv_credit_card_exp_year=CHAR(4)" -Database userdb COLUMN_DEF "p_nickname=text" -Database userdb COLUMN_DEF "email=VARCHAR(42)" -Database userdb COLUMN_DEF "fax=CHAR(20)" -Database userdb COLUMN_DEF "phone_night=CHAR(20)" -Database userdb COLUMN_DEF "fax_order=CHAR(2)" -Database userdb COLUMN_DEF "address_book=BLOB" -Database userdb COLUMN_DEF "accounts=BLOB" -Database userdb COLUMN_DEF "preferences=BLOB" -Database userdb COLUMN_DEF "carts=BLOB" -Database userdb COLUMN_DEF "owner=char(20)" -Database userdb COLUMN_DEF "file_acl=BLOB" -Database userdb COLUMN_DEF "db_acl=BLOB" -Database userdb COLUMN_DEF "order_numbers=TEXT" -Database userdb COLUMN_DEF "email_copy=char(1)" -Database userdb COLUMN_DEF "mail_list=varchar(64)" -Database userdb COLUMN_DEF "project_id=char(20)" -Database userdb COLUMN_DEF "account_id=char(20)" -Database userdb COLUMN_DEF "order_dest=char(32)" -Database userdb COLUMN_DEF "payment_method=char(32)" -Database userdb COLUMN_DEF "dealer=char(32)" diff --git a/dist/construct/dbconf/mysql/variable.dbm b/dist/construct/dbconf/mysql/variable.dbm deleted file mode 100644 index fb31bcbb0..000000000 --- a/dist/construct/dbconf/mysql/variable.dbm +++ /dev/null @@ -1 +0,0 @@ -Database variable variable.txt TAB diff --git a/dist/construct/dbconf/pgsql/2ndDayAir.dbm b/dist/construct/dbconf/pgsql/2ndDayAir.dbm deleted file mode 100644 index d2de929c5..000000000 --- a/dist/construct/dbconf/pgsql/2ndDayAir.dbm +++ /dev/null @@ -1,2 +0,0 @@ -Database 2ndDayAir 2ndDayAir.csv CSV -Database 2ndDayAir GUESS_NUMERIC 1 diff --git a/dist/construct/dbconf/pgsql/Ground.dbm b/dist/construct/dbconf/pgsql/Ground.dbm deleted file mode 100644 index 48f4cd786..000000000 --- a/dist/construct/dbconf/pgsql/Ground.dbm +++ /dev/null @@ -1,2 +0,0 @@ -Database Ground Ground.csv CSV -Database Ground GUESS_NUMERIC 1 diff --git a/dist/construct/dbconf/pgsql/NextDayAir.dbm b/dist/construct/dbconf/pgsql/NextDayAir.dbm deleted file mode 100644 index 987c0691a..000000000 --- a/dist/construct/dbconf/pgsql/NextDayAir.dbm +++ /dev/null @@ -1,2 +0,0 @@ -Database NextDayAir NextDayAir.csv CSV -Database NextDayAir GUESS_NUMERIC 1 diff --git a/dist/construct/dbconf/pgsql/access.dbm b/dist/construct/dbconf/pgsql/access.dbm deleted file mode 100644 index eede64888..000000000 --- a/dist/construct/dbconf/pgsql/access.dbm +++ /dev/null @@ -1 +0,0 @@ -Database access access.asc TAB diff --git a/dist/construct/dbconf/pgsql/affiliate.pgsql b/dist/construct/dbconf/pgsql/affiliate.pgsql deleted file mode 100644 index d59148869..000000000 --- a/dist/construct/dbconf/pgsql/affiliate.pgsql +++ /dev/null @@ -1,9 +0,0 @@ -Database affiliate affiliate.txt __SQLDSN__ -#ifdef SQLUSER -Database affiliate USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database affiliate PASS __SQLPASS__ -#endif -Database affiliate COLUMN_DEF "code=char(12) NOT NULL PRIMARY KEY" -Database affiliate DEFAULT_TYPE text diff --git a/dist/construct/dbconf/pgsql/area.pgsql b/dist/construct/dbconf/pgsql/area.pgsql deleted file mode 100644 index 0ad5b6396..000000000 --- a/dist/construct/dbconf/pgsql/area.pgsql +++ /dev/null @@ -1,14 +0,0 @@ -Database area area.txt __SQLDSN__ -#ifdef SQLUSER -Database area USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database area PASS __SQLPASS__ -#endif -Database area DEFAULT_TYPE text -Database area COLUMN_DEF "code=VARCHAR(12) NOT NULL PRIMARY KEY" -Database area COLUMN_DEF "name=VARCHAR(128) DEFAULT '' NOT NULL" -Database area COLUMN_DEF "sort=VARCHAR(3) DEFAULT '00' NOT NULL" -Database area POSTCREATE "create index area_sort on area (sort)" -Database area POSTCREATE "create index area_name on area (name)" -Database area ChopBlanks 1 diff --git a/dist/construct/dbconf/pgsql/banner.dbm b/dist/construct/dbconf/pgsql/banner.dbm deleted file mode 100644 index d01303625..000000000 --- a/dist/construct/dbconf/pgsql/banner.dbm +++ /dev/null @@ -1,2 +0,0 @@ -Database banner banner.txt TAB -Database banner NUMERIC weight diff --git a/dist/construct/dbconf/pgsql/cat.pgsql b/dist/construct/dbconf/pgsql/cat.pgsql deleted file mode 100644 index f70af07d6..000000000 --- a/dist/construct/dbconf/pgsql/cat.pgsql +++ /dev/null @@ -1,13 +0,0 @@ -Database cat cat.txt __SQLDSN__ -#ifdef SQLUSER -Database cat USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database cat PASS __SQLPASS__ -#endif -Database cat DEFAULT_TYPE text -Database cat COLUMN_DEF "code=char(20) NOT NULL PRIMARY KEY" -Database cat COLUMN_DEF "sel=char(64) DEFAULT '' NOT NULL" -Database cat COLUMN_DEF "name=char(64) DEFAULT '' NOT NULL" -Database cat COLUMN_DEF "sort=char(4) DEFAULT 'ZZ' NOT NULL" -Database cat ChopBlanks 1 diff --git a/dist/construct/dbconf/pgsql/country.pgsql b/dist/construct/dbconf/pgsql/country.pgsql deleted file mode 100644 index 736bc991a..000000000 --- a/dist/construct/dbconf/pgsql/country.pgsql +++ /dev/null @@ -1,12 +0,0 @@ -Database country country.txt __SQLDSN__ -#ifdef SQLUSER -Database country USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database country PASS __SQLPASS__ -#endif -Database country COLUMN_DEF "code=CHAR(3) NOT NULL PRIMARY KEY" -Database country COLUMN_DEF "selector=CHAR(3) NOT NULL" -Database country COLUMN_DEF "shipmodes=CHAR(64)" -Database country COLUMN_DEF "name=CHAR(32) NOT NULL" -Database country ChopBlanks 1 diff --git a/dist/construct/dbconf/pgsql/gift_certs.pgsql b/dist/construct/dbconf/pgsql/gift_certs.pgsql deleted file mode 100644 index 57239b7c6..000000000 --- a/dist/construct/dbconf/pgsql/gift_certs.pgsql +++ /dev/null @@ -1,17 +0,0 @@ -Database gift_certs gift_certs.txt __SQLDSN__ -#ifdef SQLUSER -Database gift_certs USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database gift_certs PASS __SQLPASS__ -#endif -Database gift_certs COLUMN_DEF "code=char(14) NOT NULL PRIMARY KEY" -Database gift_certs COLUMN_DEF "username=CHAR(20) default '' NOT NULL" -Database gift_certs COLUMN_DEF "order_date=varchar(32) NOT NULL" -Database gift_certs COLUMN_DEF "original_amount=float(4) NOT NULL" -Database gift_certs COLUMN_DEF "redeemed_amount=float(4) NOT NULL" -Database gift_certs COLUMN_DEF "available_amount=float(4) NOT NULL" -Database gift_certs COLUMN_DEF "passcode=CHAR(20) NOT NULL" -Database gift_certs COLUMN_DEF "active=CHAR(3)" -Database gift_certs COLUMN_DEF "redeemed=CHAR(3)" -Database gift_certs COLUMN_DEF "update_date=timestamp" diff --git a/dist/construct/dbconf/pgsql/inventory.pgsql b/dist/construct/dbconf/pgsql/inventory.pgsql deleted file mode 100644 index 9b449c66a..000000000 --- a/dist/construct/dbconf/pgsql/inventory.pgsql +++ /dev/null @@ -1,12 +0,0 @@ -Database inventory inventory.txt __SQLDSN__ -#ifdef SQLUSER -Database inventory USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database inventory PASS __SQLPASS__ -#endif -Database inventory KEY sku -Database inventory COLUMN_DEF "sku=VARCHAR(14) NOT NULL PRIMARY KEY" -Database inventory COLUMN_DEF "quantity=VARCHAR(12)" -Database inventory COLUMN_DEF "account=char(128)" -Database inventory COLUMN_DEF "cogs_account=char(128)" diff --git a/dist/construct/dbconf/pgsql/locale.dbm b/dist/construct/dbconf/pgsql/locale.dbm deleted file mode 100644 index 1e1cce457..000000000 --- a/dist/construct/dbconf/pgsql/locale.dbm +++ /dev/null @@ -1 +0,0 @@ -Database locale locale.txt TAB diff --git a/dist/construct/dbconf/pgsql/mv_metadata.dbm b/dist/construct/dbconf/pgsql/mv_metadata.dbm deleted file mode 100644 index c9afa38bf..000000000 --- a/dist/construct/dbconf/pgsql/mv_metadata.dbm +++ /dev/null @@ -1 +0,0 @@ -Database mv_metadata mv_metadata.asc TAB diff --git a/dist/construct/dbconf/pgsql/order_returns.pgsql b/dist/construct/dbconf/pgsql/order_returns.pgsql deleted file mode 100644 index 01caa24ae..000000000 --- a/dist/construct/dbconf/pgsql/order_returns.pgsql +++ /dev/null @@ -1,17 +0,0 @@ -Database order_returns order_returns.txt __SQLDSN__ -#ifdef SQLUSER -Database order_returns USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database order_returns PASS __SQLPASS__ -#endif -Database order_returns COLUMN_DEF "code=char(14) NOT NULL PRIMARY KEY" -Database order_returns COLUMN_DEF "order_number=CHAR(14) NOT NULL" -Database order_returns COLUMN_DEF "session=CHAR(32) NOT NULL" -Database order_returns COLUMN_DEF "username=CHAR(20) default '' NOT NULL" -Database order_returns COLUMN_DEF "rma_number=CHAR(32) NOT NULL" -Database order_returns COLUMN_DEF "nitems=CHAR(9) NOT NULL" -Database order_returns COLUMN_DEF "total=CHAR(12) NOT NULL" -Database order_returns COLUMN_DEF "return_date=varchar(32) NOT NULL" -Database order_returns COLUMN_DEF "update_date=timestamp" -Database order_returns POSTCREATE "create index order_returns_order_number on order_number (order_number)" diff --git a/dist/construct/dbconf/pgsql/orderline.pgsql b/dist/construct/dbconf/pgsql/orderline.pgsql deleted file mode 100644 index dc8d7be55..000000000 --- a/dist/construct/dbconf/pgsql/orderline.pgsql +++ /dev/null @@ -1,28 +0,0 @@ - -Database orderline orderline.txt __SQLDSN__ -#ifdef SQLUSER -Database orderline USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database orderline PASS __SQLPASS__ -#endif -Database orderline COLUMN_DEF "code=VARCHAR(14) NOT NULL PRIMARY KEY" -Database orderline COLUMN_DEF "store_id=VARCHAR(9)" -Database orderline COLUMN_DEF "order_number=VARCHAR(14) NOT NULL" -Database orderline COLUMN_DEF "session=VARCHAR(32) NOT NULL" -Database orderline COLUMN_DEF "username=VARCHAR(20)" -Database orderline COLUMN_DEF "shipmode=VARCHAR(32)" -Database orderline COLUMN_DEF "sku=VARCHAR(14) NOT NULL" -Database orderline COLUMN_DEF "quantity=VARCHAR(9) NOT NULL" -Database orderline COLUMN_DEF "price=VARCHAR(12) NOT NULL" -Database orderline COLUMN_DEF "subtotal=VARCHAR(12) NOT NULL" -Database orderline COLUMN_DEF "shipping=VARCHAR(12)" -Database orderline COLUMN_DEF "taxable=VARCHAR(3)" -Database orderline COLUMN_DEF "size=VARCHAR(30)" -Database orderline COLUMN_DEF "color=VARCHAR(30)" -Database orderline COLUMN_DEF "options=VARCHAR(255)" -Database orderline COLUMN_DEF "order_date=varchar(32) NOT NULL" -Database orderline COLUMN_DEF "update_date=timestamp" -Database orderline COLUMN_DEF "status=VARCHAR(32)" -Database orderline COLUMN_DEF "parent=VARCHAR(9)" -Database orderline ChopBlanks 1 diff --git a/dist/construct/dbconf/pgsql/pricing.pgsql b/dist/construct/dbconf/pgsql/pricing.pgsql deleted file mode 100644 index e7ccea297..000000000 --- a/dist/construct/dbconf/pgsql/pricing.pgsql +++ /dev/null @@ -1,20 +0,0 @@ -# Interchange database definition -Database pricing pricing.txt __SQLDSN__ -#ifdef SQLUSER -Database pricing USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database pricing PASS __SQLPASS__ -#endif -Database pricing KEY sku -Database pricing COLUMN_DEF "q2=VARCHAR(12)" -Database pricing COLUMN_DEF "price_group=VARCHAR(12) DEFAULT '' NOT NULL" -Database pricing COLUMN_DEF "sku=VARCHAR(9) NOT NULL PRIMARY KEY" -Database pricing COLUMN_DEF "q5=VARCHAR(12)" -Database pricing COLUMN_DEF "q10=VARCHAR(12)" -Database pricing COLUMN_DEF "q25=VARCHAR(12)" -Database pricing COLUMN_DEF "q100=VARCHAR(12)" -Database pricing COLUMN_DEF "XL=VARCHAR(12)" -Database pricing COLUMN_DEF "S=VARCHAR(12)" -Database pricing COLUMN_DEF "red=VARCHAR(12)" -Database pricing ChopBlanks 1 diff --git a/dist/construct/dbconf/pgsql/products.pgsql b/dist/construct/dbconf/pgsql/products.pgsql deleted file mode 100644 index 734838cad..000000000 --- a/dist/construct/dbconf/pgsql/products.pgsql +++ /dev/null @@ -1,25 +0,0 @@ -# Interchange database definition -Database products products.txt __SQLDSN__ -#ifdef SQLUSER -Database products USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database products PASS __SQLPASS__ -#endif -Database products KEY sku -Database products COLUMN_DEF "sku=VARCHAR(14) NOT NULL PRIMARY KEY" -Database products COLUMN_DEF "description=VARCHAR(128)" -Database products COLUMN_DEF "title=VARCHAR(128)" -Database products COLUMN_DEF "artist=VARCHAR(128)" -Database products COLUMN_DEF "comment=TEXT" -Database products COLUMN_DEF "display=VARCHAR(128)" -Database products COLUMN_DEF "image=VARCHAR(64)" -Database products COLUMN_DEF "price=VARCHAR(12)" -Database products COLUMN_DEF "category=VARCHAR(64)" -Database products COLUMN_DEF "nontaxable=VARCHAR(3)" -Database products COLUMN_DEF "weight=VARCHAR(12)" -Database products COLUMN_DEF "size=VARCHAR(96)" -Database products COLUMN_DEF "color=VARCHAR(96)" -Database products COLUMN_DEF "related=text" -Database products COLUMN_DEF "featured=VARCHAR(32)" -Database products ChopBlanks 1 diff --git a/dist/construct/dbconf/pgsql/recurring_items.pgsql b/dist/construct/dbconf/pgsql/recurring_items.pgsql deleted file mode 100644 index 55a1624cc..000000000 --- a/dist/construct/dbconf/pgsql/recurring_items.pgsql +++ /dev/null @@ -1,13 +0,0 @@ -Database recurring_items recurring_items.txt __SQLDSN__ -#ifdef SQLUSER -Database recurring_items USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database recurring_items PASS __SQLPASS__ -#endif -Database recurring_items COLUMN_DEF "code=char(14) NOT NULL PRIMARY KEY" -Database recurring_items COLUMN_DEF "username=CHAR(20) default '' NOT NULL" -Database recurring_items COLUMN_DEF "sku=CHAR(14) NOT NULL" -Database recurring_items COLUMN_DEF "quantity=CHAR(9) NOT NULL" -Database recurring_items COLUMN_DEF "ship_to=text" -Database recurring_items COLUMN_DEF "ship_method=text" diff --git a/dist/construct/dbconf/pgsql/recurring_orders.pgsql b/dist/construct/dbconf/pgsql/recurring_orders.pgsql deleted file mode 100644 index f9765363d..000000000 --- a/dist/construct/dbconf/pgsql/recurring_orders.pgsql +++ /dev/null @@ -1,16 +0,0 @@ -Database recurring_orders recurring_orders.txt __SQLDSN__ -#ifdef SQLUSER -Database recurring_orders USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database recurring_orders PASS __SQLPASS__ -#endif -Database recurring_orders COLUMN_DEF "code=char(9) NOT NULL PRIMARY KEY" -Database recurring_orders COLUMN_DEF "username=CHAR(24) NOT NULL" -Database recurring_orders COLUMN_DEF "nitems=CHAR(9) NOT NULL" -Database recurring_orders COLUMN_DEF "subtotal=FLOAT(8)" -Database recurring_orders COLUMN_DEF "shipping=FLOAT(8)" -Database recurring_orders COLUMN_DEF "pay_method=text" -Database recurring_orders COLUMN_DEF "freq=text" -Database recurring_orders COLUMN_DEF "day=text" -Database recurring_orders COLUMN_DEF "day_date=text" diff --git a/dist/construct/dbconf/pgsql/ship_addresses.pgsql b/dist/construct/dbconf/pgsql/ship_addresses.pgsql deleted file mode 100644 index a919c4289..000000000 --- a/dist/construct/dbconf/pgsql/ship_addresses.pgsql +++ /dev/null @@ -1,14 +0,0 @@ -Database ship_addresses ship_addresses.txt __SQLDSN__ -#ifdef SQLUSER -Database ship_addresses USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database ship_addresses PASS __SQLPASS__ -#endif -Database ship_addresses COLUMN_DEF "code=char(9) NOT NULL PRIMARY KEY" -Database ship_addresses COLUMN_DEF "username=CHAR(20) NOT NULL" -Database ship_addresses COLUMN_DEF "entry=CHAR(9) NOT NULL" -Database ship_addresses COLUMN_DEF "addr_nick=text" -Database ship_addresses COLUMN_DEF "company=text" -Database ship_addresses COLUMN_DEF "fname=text" -Database ship_addresses COLUMN_DEF "lname=text" diff --git a/dist/construct/dbconf/pgsql/transactions.pgsql b/dist/construct/dbconf/pgsql/transactions.pgsql deleted file mode 100644 index 4c36d3143..000000000 --- a/dist/construct/dbconf/pgsql/transactions.pgsql +++ /dev/null @@ -1,52 +0,0 @@ -Database transactions transactions.txt __SQLDSN__ -#ifdef SQLUSER -Database transactions USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database transactions PASS __SQLPASS__ -#endif -Database transactions transactions.raw SQL -Database transactions COLUMN_DEF "code=VARCHAR(14) NOT NULL PRIMARY KEY" -Database transactions COLUMN_DEF "store_id=VARCHAR(9)" -Database transactions COLUMN_DEF "order_number=VARCHAR(14) NOT NULL" -Database transactions COLUMN_DEF "session=VARCHAR(32) NOT NULL" -Database transactions COLUMN_DEF "username=VARCHAR(20) DEFAULT '' NOT NULL" -Database transactions COLUMN_DEF "shipmode=VARCHAR(32)" -Database transactions COLUMN_DEF "nitems=VARCHAR(9) NOT NULL" -Database transactions COLUMN_DEF "subtotal=VARCHAR(12) NOT NULL" -Database transactions COLUMN_DEF "shipping=VARCHAR(12) NOT NULL" -Database transactions COLUMN_DEF "handling=VARCHAR(12)" -Database transactions COLUMN_DEF "salestax=VARCHAR(12)" -Database transactions COLUMN_DEF "total_cost=VARCHAR(16) NOT NULL" -Database transactions COLUMN_DEF "fname=VARCHAR(30)" -Database transactions COLUMN_DEF "lname=VARCHAR(30)" -Database transactions COLUMN_DEF "company=VARCHAR(30)" -Database transactions COLUMN_DEF "address1=VARCHAR(30)" -Database transactions COLUMN_DEF "address2=VARCHAR(30)" -Database transactions COLUMN_DEF "city=VARCHAR(30) NOT NULL" -Database transactions COLUMN_DEF "state=VARCHAR(10)" -Database transactions COLUMN_DEF "zip=VARCHAR(10)" -Database transactions COLUMN_DEF "country=VARCHAR(10)" -Database transactions COLUMN_DEF "phone_day=VARCHAR(20)" -Database transactions COLUMN_DEF "phone_night=VARCHAR(20)" -Database transactions COLUMN_DEF "fax=VARCHAR(20)" -Database transactions COLUMN_DEF "email=VARCHAR(42)" -Database transactions COLUMN_DEF "b_fname=VARCHAR(30)" -Database transactions COLUMN_DEF "b_lname=VARCHAR(30)" -Database transactions COLUMN_DEF "b_company=VARCHAR(30)" -Database transactions COLUMN_DEF "b_address1=VARCHAR(30)" -Database transactions COLUMN_DEF "b_address2=VARCHAR(30)" -Database transactions COLUMN_DEF "b_city=VARCHAR(30)" -Database transactions COLUMN_DEF "b_state=VARCHAR(10)" -Database transactions COLUMN_DEF "b_zip=VARCHAR(10)" -Database transactions COLUMN_DEF "b_country=VARCHAR(10)" -Database transactions COLUMN_DEF "b_phone=VARCHAR(20)" -Database transactions COLUMN_DEF "payment_method=varchar(32)" -Database transactions COLUMN_DEF "avs=varchar(32)" -Database transactions COLUMN_DEF "order_id=varchar(32)" -Database transactions COLUMN_DEF "order_date=varchar(32) NOT NULL" -Database transactions COLUMN_DEF "update_date=timestamp" -Database transactions COLUMN_DEF "status=VARCHAR(32)" -Database transactions COLUMN_DEF "parent=VARCHAR(9)" -Database transactions COLUMN_DEF "comments=text" -Database transactions ChopBlanks 1 diff --git a/dist/construct/dbconf/pgsql/userdb.pgsql b/dist/construct/dbconf/pgsql/userdb.pgsql deleted file mode 100644 index d5ae50353..000000000 --- a/dist/construct/dbconf/pgsql/userdb.pgsql +++ /dev/null @@ -1,60 +0,0 @@ -Database userdb userdb.txt __SQLDSN__ -#ifdef SQLUSER -Database userdb USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database userdb PASS __SQLPASS__ -#endif -Database userdb COLUMN_DEF "code=VARCHAR(20) NOT NULL PRIMARY KEY" -Database userdb COLUMN_DEF "password=VARCHAR(20)" -Database userdb COLUMN_DEF "acl=text" -Database userdb COLUMN_DEF "mod_time=char(20)" -Database userdb COLUMN_DEF "s_nickname=text" -Database userdb COLUMN_DEF "company=VARCHAR(30)" -Database userdb COLUMN_DEF "fname=VARCHAR(20)" -Database userdb COLUMN_DEF "lname=VARCHAR(30)" -Database userdb COLUMN_DEF "address1=VARCHAR(64)" -Database userdb COLUMN_DEF "address2=VARCHAR(64)" -Database userdb COLUMN_DEF "address3=VARCHAR(64)" -Database userdb COLUMN_DEF "city=VARCHAR(30)" -Database userdb COLUMN_DEF "state=VARCHAR(10)" -Database userdb COLUMN_DEF "zip=VARCHAR(10)" -Database userdb COLUMN_DEF "country=VARCHAR(10)" -Database userdb COLUMN_DEF "phone_day=VARCHAR(20)" -Database userdb COLUMN_DEF "mv_shipmode=VARCHAR(64)" -Database userdb COLUMN_DEF "b_nickname=text" -Database userdb COLUMN_DEF "b_fname=VARCHAR(20)" -Database userdb COLUMN_DEF "b_lname=VARCHAR(30)" -Database userdb COLUMN_DEF "b_address1=VARCHAR(64)" -Database userdb COLUMN_DEF "b_address2=VARCHAR(64)" -Database userdb COLUMN_DEF "b_address3=VARCHAR(64)" -Database userdb COLUMN_DEF "b_city=VARCHAR(30)" -Database userdb COLUMN_DEF "b_state=VARCHAR(10)" -Database userdb COLUMN_DEF "b_zip=VARCHAR(10)" -Database userdb COLUMN_DEF "b_country=VARCHAR(10)" -Database userdb COLUMN_DEF "b_phone=VARCHAR(20)" -Database userdb COLUMN_DEF "mv_credit_card_type=VARCHAR(16)" -Database userdb COLUMN_DEF "mv_credit_card_exp_month=VARCHAR(2)" -Database userdb COLUMN_DEF "mv_credit_card_exp_year=VARCHAR(4)" -Database userdb COLUMN_DEF "p_nickname=text" -Database userdb COLUMN_DEF "email=VARCHAR(42)" -Database userdb COLUMN_DEF "fax=VARCHAR(20)" -Database userdb COLUMN_DEF "phone_night=VARCHAR(20)" -Database userdb COLUMN_DEF "fax_order=VARCHAR(2)" -Database userdb COLUMN_DEF "address_book=TEXT" -Database userdb COLUMN_DEF "accounts=TEXT" -Database userdb COLUMN_DEF "preferences=TEXT" -Database userdb COLUMN_DEF "carts=TEXT" -Database userdb COLUMN_DEF "owner=VARCHAR(20)" -Database userdb COLUMN_DEF "file_acl=TEXT" -Database userdb COLUMN_DEF "db_acl=TEXT" -Database userdb COLUMN_DEF "order_numbers=TEXT" -Database userdb COLUMN_DEF "email_copy=VARCHAR(1)" -Database userdb COLUMN_DEF "mail_list=varchar(64)" -Database userdb COLUMN_DEF "project_id=VARCHAR(20)" -Database userdb COLUMN_DEF "account_id=VARCHAR(20)" -Database userdb COLUMN_DEF "order_dest=VARCHAR(32)" -Database userdb ChopBlanks 1 - -# Prevent problems with abstime representation -UserDB default time_field none diff --git a/dist/construct/dbconf/pgsql/variable.dbm b/dist/construct/dbconf/pgsql/variable.dbm deleted file mode 100644 index fb31bcbb0..000000000 --- a/dist/construct/dbconf/pgsql/variable.dbm +++ /dev/null @@ -1 +0,0 @@ -Database variable variable.txt TAB diff --git a/dist/construct/etc/log_entry b/dist/construct/etc/log_entry deleted file mode 100644 index 6cb0cfbdc..000000000 --- a/dist/construct/etc/log_entry +++ /dev/null @@ -1,151 +0,0 @@ -#### begin [value mv_order_number] ##### -[seti transaction_record] -[tag flag write]transactions orderline userdb inventory[/tag] -[if cgi new_customer_id] -[or !cgi customer_id] -Add new customer: [value name=customer_id set="[fcounter etc/customer.number]"] -Set password: [value name=password set="[value name=zip filter='word uc']"] -[/if] -Update userdb: [perl table=userdb] - my $id = $Values->{username} = $Values->{customer_id}; - @always = qw/ - company - fname - lname - address1 - address2 - city - state - zip - country - phone_day - mv_shipmode - mv_credit_card_type - mv_credit_card_exp_month - mv_credit_card_exp_year - email - phone_night - fax_order - email_copy - mail_list - /; - @sometimes = qw/ - password - b_fname - b_lname - b_address1 - b_address2 - b_city - b_state - b_zip - b_country - b_phone - fax - credit_limit - /; - - my $db = $Db{userdb}; - - if(! $db->record_exists($id)) { - $db->set_row($id); - $db->set_field($id, 'password', $Values->{password}); - } - - for(@always) { - $db->set_field($id, $_, $Values->{$_}); - } - - for (@sometimes) { - next unless $Values->{$_} =~ /\S/; - $db->set_field($id, $_, $Values->{$_}); - } - - return "Updated customer record."; -[/perl] - - -[comment][perl] Log("Starting entry."); [/perl][/comment] - -[try] -[comment][perl] Log("Past ACL update user."); [/perl][/comment] -Add main order [data - table=userdb - column=order_numbers - key="[value customer_id]" - value=" [value mv_order_number]" - append="1" - ] to transactions: [import table=transactions type=LINE continue=NOTES] -code: [value mv_order_number] -store_id: __STORE_ID__ -order_number: [value mv_order_number] -session: [data session id] -username: [value username] -shipmode: [value mv_shipmode] ([shipping-desc]) -shipping: [shipping noformat=1] -nitems: [nitems] -subtotal: [subtotal noformat=1] -handling: [handling noformat=1] -salestax: [salestax noformat=1] -total_cost: [total-cost noformat=1] -fname: [value filter=strip name=fname] -lname: [value filter=strip name=lname] -company: [value filter=strip name=company] -address1: [value filter=strip name=address1] -address2: [value filter=strip name=address2] -city: [value filter=strip name=city] -state: [value name=state filter="strip uc"] -zip: [value name=zip filter="word uc"] -country: [value country] -phone_day: [value filter=strip name=phone_day] -phone_night: [value filter=strip name=phone_night] -b_fname: [value filter=strip name=b_fname] -b_lname: [value filter=strip name=b_lname] -b_address1: [value filter=strip name=b_address1] -b_address2: [value filter=strip name=b_address2] -b_city: [value filter=strip name=b_city] -b_state: [value filter=strip name=b_state] -b_zip: [value filter=strip name=b_zip] -b_country: [value filter=strip name=b_country] -b_phone: [value filter=strip name=b_phone] -payment_method: [value mv_payment] -order_date: [value name=order_date set="[tag time]%Y%m%d %H:%M:%S[/tag]"] -order_ymd: [value name=order_date set="[tag time]%Y%m%d[/tag]"] -order_wday: [value name=order_wday set="[tag time]%u[/tag]"] -status: pending -affiliate: ORDER_DESK -po_number: [value filter=strip po_number] -deleted: 0 -archived: 0 -complete: 0 -comments: [value filter=mac name=gift_note] -[/import] -[comment][perl] Log("Past transactions entry."); [/perl][/comment][item-list]Added [item-code] to orderline: [import table=orderline type=LINE continue=NOTES] -code: [value mv_order_number]-[item-increment] -store_id: __STORE_ID__ -order_number: [value mv_order_number] -session: [data session id] -username: [value username] -shipmode: [item-modifier mv_shipmode] -sku: [item-code] -quantity: [item-quantity] -price: [item-price noformat] -subtotal: [item-subtotal noformat] -size: [item-modifier size] -color: [item-modifier color] -order_date: [value order_date] -affiliate: ORDER_DESK -campaign: [value campaign] -status: pending -[/import] -Inventory now: [data table=inventory col=quantity key="[item-code]" increment=1 value="-[item-quantity]"] -[/item-list][/try] -[catch] There was an error adding to the transaction log. [/catch] -[comment][perl] Log("Past add data entry."); [/perl][/comment] -[comment][perl] Log("Past all transaction log."); [/perl][/comment] -[/seti][perl] - my $out = $Scratch->{transaction_record}; - $out =~ s/^\s+//; - $out =~ s/\s+$//; - return $out; -[/perl] -#### end [value mv_order_number] ##### diff --git a/dist/construct/etc/log_transaction b/dist/construct/etc/log_transaction deleted file mode 100644 index 285dc9d5e..000000000 --- a/dist/construct/etc/log_transaction +++ /dev/null @@ -1,123 +0,0 @@ -#### begin [value mv_order_number] ##### -[seti transaction_record] -[tag flag write]transactions orderline userdb inventory[/tag] -[if !session logged_in] -[or session login_table ne 'userdb'] - [if session logged_in] [userdb logout] [/if] - [set auto_create]1[/set] - [if type=explicit compare=| - [userdb - function=new_account - assign_username=1 - password='[value zip]' - verify='[value zip]' - ] - |] - [comment][perl] Log("User create succeeded."); [/perl][/comment] - [else] - [comment][perl] Log("Failed user create."); [/perl][/comment] - [/else] - [/if] -[/if] -[comment][perl] Log("Starting report."); [/perl][/comment] - -[try] -[comment][perl] Log("Past ACL create log."); [/perl][/comment] -[seti total_cost][total-cost noformat=1][/seti] -Add main order[data - table=userdb - column=order_numbers - key="[data session username]" - value=" [value mv_order_number]" - append="1" - ] to transactions: [import table=transactions type=LINE continue=NOTES] -code: [value mv_order_number] -store_id: __STORE_ID__ -order_number: [value mv_order_number] -session: [data session id] -username: [data session username] -shipmode: [value mv_shipmode] ([shipping-desc]) -shipping: [shipping noformat=1] -nitems: [nitems] -subtotal: [subtotal noformat=1] -handling: [handling noformat=1] -salestax: [salestax noformat=1] -total_cost: [scratch total_cost] -fname: [value filter=strip name=fname] -lname: [value filter=strip name=lname] -company: [value filter=strip name=company] -address1: [value filter=strip name=address1] -address2: [value filter=strip name=address2] -city: [value filter=strip name=city] -state: [value name=state filter="strip uc"] -zip: [value name=zip filter=word] -country: [value country] -email: [value name=email filter=strip] -phone_day: [value filter=strip name=phone_day] -phone_night: [value filter=strip name=phone_night] -b_fname: [value filter=strip name=b_fname] -b_lname: [value filter=strip name=b_lname] -b_address1: [value filter="strip mac" name=b_address1] -b_address2: [value filter="strip mac" name=b_address2] -b_city: [value filter=strip name=b_city] -b_state: [value filter=strip name=b_state] -b_zip: [value filter=strip name=b_zip] -b_country: [value filter=strip name=b_country] -b_phone: [value filter=strip name=b_phone] -payment_method: [value mv_payment] -order_date: [value name=order_date set="[tag time]%Y%m%d %H:%M:%S[/tag]"] -order_ymd: [value name=order_date set="[tag time]%Y%m%d[/tag]"] -order_wday: [value name=order_wday set="[tag time]%u[/tag]"] -status: pending -deleted: 0 -archived: 0 -complete: 0 -comments: [value filter=mac name=gift_note] -affiliate: [data session source] -campaign: [value campaign] -parent: __PARENT__ -po_number: [value filter=strip po_number] -[/import] -set credit_limit: [seti credit_limit][data - table=userdb - col=credit_limit - key="[data session username]" - value="-[scratch total_cost]" - increment=1 - ][/seti] -[comment][perl] Log("Past transactions entry."); [/perl][/comment][item-list]Added [item-code] to orderline: [import table=orderline type=LINE continue=NOTES] -code: [value mv_order_number]-[item-increment] -store_id: __STORE_ID__ -order_number: [value mv_order_number] -session: [data session id] -username: [data session username] -shipmode: [item-modifier mv_shipmode] -sku: [item-code] -quantity: [item-quantity] -price: [item-price noformat] -subtotal: [item-subtotal noformat] -size: [item-modifier size] -color: [item-modifier color] -order_date: [value order_date] -affiliate: [data session source] -campaign: [value campaign] -status: pending -description: [filter mac][item-description][/filter] -[/import] -Inventory now: [data table=inventory col=quantity key="[item-code]" increment=1 value="-[item-quantity]"] -[/item-list][/try] -[catch] There was an error adding to the transaction log. [/catch] -[if scratch auto_create] - Logout auto-created user: [userdb logout] - [value name=mv_username set=""] -[/if] -[comment][perl] Log("Past add data entry."); [/perl][/comment] - -[comment][perl] Log("Past all transaction log."); [/perl][/comment] -[/seti][perl] - my $out = $Scratch->{transaction_record}; - $out =~ s/^\s+//; - $out =~ s/\s+$//; - return $out; -[/perl] -#### end [value mv_order_number] ##### diff --git a/dist/construct/etc/mail_receipt b/dist/construct/etc/mail_receipt deleted file mode 100644 index 9b50f446b..000000000 --- a/dist/construct/etc/mail_receipt +++ /dev/null @@ -1,114 +0,0 @@ -[if value email_copy] -Sending email copy of order [value mv_order_number] to [value email]: [email to="[value email]" - subject="Thank you for your order [value mv_order_number]!" - from=|"__COMPANY__ Customer Service" <__ORDERS_TO__>| ] -Dear __COMPANY__ customer, - -Thank you for your order #[value mv_order_number], it is being electronically -processed. - - Name: [value fname] [value lname] -[if value company] Company: [value company][/if] - Email address: [value email] - - Address: [value address1][if value address2] - [value address2][/if] -City, State, Zip: [value city], [value state] [value zip] - Country: [value country] - - Payment Method: [value mv_payment] - Shipping Method: [shipping_desc] - - Daytime Phone: [value phone_day] - Evening Phone: [value phone_night] - -[if value b_address1] - Billing Name: [value b_fname] [value b_lname] - Billing Address: [value b_address1] [value b_address2] -City, State, Zip: [value b_city][if value b_state], [value b_state] [value b_zip][/if] -[if value b_country] Billing Country: [value b_country][/if] -[/if] - -Quan Item No. Description Price Extension ----- ----------- ------------------------------- -------------- ---------------- -[item-list][row 82] -[column width=5 gutter=1 align=right] [item-quantity] [/column] -[column width=12 gutter=1] [item-code] [/column] -[column width=32 gutter=1 align=left wrap=1] -[item-description] -[if-modifier size]SIZE-->[item-modifier size][/if-modifier][if-modifier color] COLOR-->[item-modifier color][/if-modifier] -[/column] -[column width=15 gutter=1 align=r] [item-price] [/column] -[column width=16 gutter=0 align=r] [item-subtotal] [/column] -[/row] - -[/item-list] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SUBTOTAL[/column] -[column width=16 gutter=0 align=r][subtotal][/column] -[/row] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SALES TAX[/column] -[column width=16 align=right gutter=0][salestax][/column] -[/row] -[row 82] - [column width=5 align=right][/column] - [column width=12 gutter=1][/column] - [column width=32 align=R wrap=1 gutter=1][/column] - [column width=15 gutter=1]SHIPPING[/column] - [column width=16 align=right gutter=0][shipping][/column] -[/row] - -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]ORDER TOTAL[/column] -[column width=16 align = right gutter=0][total-cost][/column] -[/row] - -[if value gift_note] -Note for Gift --------------- -[value gift_note] -[/if] - -Should you have a question about your order, or about other __COMPANY__ -products, please reply to this message and let us help. - -Always reference your Order Number when calling for a status. [if !session logged_in] -Or you can check status via this URL: - - [area form=' - mv_username=[data - table=transactions - col=username - key="[value mv_order_number]" - ] - mv_password=[value zip] - mv_click=Login - mv_todo=return - mv_nextpage=query/check_orders - ']" -[/if] -Remember, you can always visit our site at: - - __SERVER_NAME__ - -Regards and thanks for your business! - -__COMPANY__ -__ADDRESS__ -__CITY__ -__PHONE__ -__TOLLFREE__ -FAX: __FAX__ -[/email] -[else]Email copy of order [value mv_order_number] NOT REQUESTED for [value email].[/else] -[/if] diff --git a/dist/construct/etc/profiles.login b/dist/construct/etc/profiles.login deleted file mode 100644 index b4cb701fb..000000000 --- a/dist/construct/etc/profiles.login +++ /dev/null @@ -1,22 +0,0 @@ - -__NAME__ Logout - -[if type=explicit compare="[userdb logout]"] -mv_nextpage=[either][cgi mv_successpage][or][cgi mv_nextpage][/either] -[else] -mv_nextpage=[either][cgi mv_failpage][or][cgi mv_nextpage][/either] -[/else] -[/if] - -__END__ - -__NAME__ Login - -[if type=explicit compare="[userdb login]"] -mv_nextpage=[either][cgi mv_successpage][or][cgi mv_nextpage][/either] -[else] -mv_nextpage=[either][cgi mv_failpage][or][cgi mv_nextpage][/either] -[/else] -[/if] - -__END__ diff --git a/dist/construct/etc/profiles.order b/dist/construct/etc/profiles.order deleted file mode 100644 index c3eca72a9..000000000 --- a/dist/construct/etc/profiles.order +++ /dev/null @@ -1,122 +0,0 @@ -__NAME__ invalid -&fatal = yes -mv_failpage= interact -&set = mv_junk 0 -__END__ - -__NAME__ checkout_profile -fname=required -lname=required -address1=required -city=required -country=required -[if value country =~ /^(US|CA)$/i] - state=state_province "[value state]" is not a valid US/Canada state or province. - zip=postcode "[value zip]" is not a valid US/Canada postal code. - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[else] - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[/else] -[/if] - -&fatal = yes -email=required -email=email - -&set = mv_payment Incomplete - -[if value fax_order == 1] -&set = mv_payment Check or Money Order (will call) - -[elsif value fax_order == 2] -project_id=required Please include your PO number -&set = mv_payment Purchase order [value project_id] -[value name=tmp_total set="[total-cost noformat=1]" hide=1] -[perl tables="pricing products userdb"] - $CGI->{credit_limit_ok} = 1; - my $total = delete $Values->{tmp_total}; - return unless $limit = tag_data('userdb', 'credit_limit', $Session->{username}); - Log("credit_limit=$limit total=$total"); - delete $CGI->{credit_limit_ok}; - if($limit >= $total) { - $CGI->{credit_limit_ok} = 1; - } - return; -[/perl] -credit_limit_ok=mandatory Credit limit exceeded. -[/elsif] - -[elsif value fax_order == 3] -&set = mv_payment COD -[value name=mv_handling set=cod hide=1] -[/elsif] -[elsif variable MV_PAYMENT_MODE] -&credit_card=standard keep __CREDIT_CARDS_ACCEPTED__ -&charge=[var MV_PAYMENT_MODE][cgi mv_payment_test] -&set=mv_payment Real-time ([var MV_PAYMENT_MODE]) Credit Card -[/elsif] - -[elsif config CyberCash] -&fail=../special_pages/failed -&charge=[var CYBER_MODE] -[/elsif] - -[elsif config CreditCardAuto] -mv_credit_card_valid=required Credit card fails tests. -&set=mv_payment Credit Card (%c) -[/elsif] - -[else] -&credit_card=standard __CREDIT_CARDS_ACCEPTED__ -&set=mv_payment Credit Card (%c) -[/else] -[/if] - -&calc = $Values->{mv_payment} =~ s/\%c/$Values->{mv_credit_card_type}/g; 1; -&final = yes -&setcheck=mv_email [value email] - -__END__ - -__NAME__ shipping_address -fname=required -lname=required -address1=required -city=required -country=required -[if value country =~ /^(US|CA)$/i] - state=state_province "[value state]" is not a valid US/Canada state or province. - zip=postcode "[value zip]" is not a valid US/Canada postal code. - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[else] - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[/else] -[/if] -email=required - -&fatal = yes - -email=email - -__END__ - - -__NAME__ account_change -fname=required -lname=required -address1=required -city=required -country=required -[if value country =~ /^(US|CA)$/i] - state=state_province "[value state]" is not a valid US/Canada state or province. - zip=postcode "[value zip]" is not a valid US/Canada postal code. - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[else] - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[/else] -[/if] -email=required -&fatal = yes -email=email - -__END__ diff --git a/dist/construct/etc/receipt.html b/dist/construct/etc/receipt.html deleted file mode 100644 index 7c6bdfebe..000000000 --- a/dist/construct/etc/receipt.html +++ /dev/null @@ -1,124 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: fullwidth -ui_template_layout: NOLEFT_TOP, UI_CONTENT, NOLEFT_BOTTOM -ui_template_description: Page with top/bottom areas only, content in middle. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: defaults to page_title - -bgcolor: - options: #FFFFFF=white, pink=pink - description: Background color - widget: select - -members_only: - options: 1=Yes,0=No* - description: Members only - widget: radio - -[/comment] -[set page_title]__COMPANY__ -- Receipt[/set] -[set page_banner]Thank you![/set] - -__NOLEFT_TOP__ - - - -
    -

    - -[html-table fr='__TABLEFG__ WIDTH="20%"'] -ORDER NUMBER[value mv_order_number] -Name [value fname] [value lname] -[if value company]Company [value company] -[/if]Email Address [value email] -Address [value address1][if value address2] - [value address2][/if] -City, State, Zip [value city], [value state] [value zip] -Country [value country] -Payment Method [value mv_payment] -Shipping Method [shipping_desc] -Daytime Phone [value phone_day]  -Evening Phone [value phone_night]  -[if value b_fname]Billing Name [value b_fname] [value b_lname] -[/if] -[if value b_address1]Billing Address [value b_address1][if value b_address2] - [value b_address2][/if] -City, State, Zip [value b_city], [value b_state] [value b_zip] -[/if][if value b_country] -Billing Country [value b_country][/if] -[/html-table] -
    - -

    - -[comment] Handle downloadables [/comment] -[set download_present][/set] -[item-list] - [if-item-field download] - [if !value fax_order] - [set download_present]1[/set] - [userdb - function=set_file_acl - mode="expire 7 days" - location="[item-code]" - ] - [/if] - [/if-item-field] -[/item-list] -[perl products] - sub get_download { - if (! $Scratch->{download_present}) { - return '(Must pay by credit card to download now.)'; - } - my $sku = shift; - return '' unless tag_data('products', 'download', $sku); - my $loc = tag_data('products', 'dl_location', $sku); - my $save = delete $Scratch->{mv_add_dot_html}; - my $url = $Tag->area( { href => "deliver/$loc", arg => $sku } ); - $Scratch->{mv_add_dot_html} = $save if $save; - return qq{
    }; - } - return; -[/perl] -

    - -[html-table] -QuanItem No.Description
    Price
    Extension -[item-list][item-quantity] [item-code] [item-description]
    [if-modifier size]SIZE-->[item-modifier size][/if-modifier][if-modifier color] COLOR-->[item-modifier color][/if-modifier]
    [if-item-field download][calc]get_download('[item-code]')[/calc][/if-item-field]
    [item-price]
    [item-subtotal] -[/item-list] - SUBTOTAL
    [subtotal] - SALES TAX
    [salestax] - SHIPPING
    [shipping] - ORDER TOTAL
    [total-cost] -[/html-table] -
    -[if value gift_note] - - - - -
    -Comments/Note for Gift:
    -
    -[value gift_note]
    -
    -
    - -[/if] -

    - -(Please print this receipt for your records. Thank you for your order!) - -

    - -[include templates/components/specials] -

    - - -__NOLEFT_BOTTOM__ diff --git a/dist/construct/etc/ship_notice b/dist/construct/etc/ship_notice deleted file mode 100644 index a33f5b015..000000000 --- a/dist/construct/etc/ship_notice +++ /dev/null @@ -1,139 +0,0 @@ -[loop list="[scratch ship_notice_order_number]"] -To: [scratch ship_notice_email] -Subject: Your order number [loop-code] has [if scratch ship_now_complete]completely shipped![elsif !scratch ship_notice_complete]partially shipped[/elsif][else]shipped![/else][/if] -From: __COMPANY__ Customer Service <[either]__EMAIL_INFO__[or]__ORDERS_TO__[/either]> -Reply-to: [either]__EMAIL_SERVICE__[or]__EMAIL_INFO__[or]__ORDERS_TO__[/either] - -Dear [loop-data transactions fname] [loop-data transactions lname], - -[if scratch ship_now_complete] -We have made the last shipment of your order #[loop-code], it is now complete! -[elsif scratch ship_notice_complete] -Your order #[loop-code] has been shipped! -[/elsif] -[else] -We have made a partial shipment of your order #[loop-code]. -[/else] -[/if] - - Name: [loop-data transactions fname] [loop-data transactions lname] -[if-loop-data transactions company] Company: [loop-data transactions company][/if-loop-data] - Email address: [loop-data transactions email] - - Address: [loop-data transactions address1][if-loop-data transactions address2] - [loop-data transactions address2][/if-loop-data] -City, State, Zip: [loop-data transactions city], [loop-data transactions state] [loop-data transactions zip] - Country: [loop-data transactions country] - - Payment Method: [loop-data transactions payment_method] - Shipping Method: [shipping-desc [loop-data transactions shipmode]] - - Daytime Phone: [loop-data transactions phone_day] - Evening Phone: [loop-data transactions phone_night] - -[if-loop-data transactions b_address1] - Billing Name: [loop-data transactions b_fname] [loop-data transactions b_lname] - Billing Address: [loop-data transactions b_address1] [loop-data transactions b_address2] -City, State, Zip: [loop-data transactions b_city], [loop-data transactions b_state] [loop-data transactions b_zip] - Billing Country: [value b_country] -[/if-loop-data] - -Quan Item No. Description Price Extension ----- ----------- ------------------------------- -------------- ---------------- -[loop prefix=item search=" - fi=orderline - st=db - sf=order_number - se=[loop-code] - ml=1000 - "][row 82] -[column width=5 gutter=1 align=right] [item-data orderline quantity] [/column] -[column width=12 gutter=1] [item-data orderline sku] [/column] -[column width=32 gutter=1 align=left wrap=1][item-data orderline description] -[if-item-data transactions size]SIZE-->[item-item-data transactions size][/if-item-data][if-item-data transactions color] COLOR-->[item-item-data transactions color][/if-item-data] -[/column] -[column width=15 gutter=1 align=r][currency][item-data orderline price][/currency][/column] -[column width=16 gutter=0 align=r][currency][item-data orderline subtotal][/currency][/column] -[/row] -[row 82] -[column width=5 gutter=1 align=right][/column] -[column width=12 gutter=1][/column] -[column width=60 gutter=1 align=left wrap=1][calc] - my $status = q{[display - table=orderline - column=status - key="[item-code]" - arbitrary=order_view - ]}; - $status =~ s:<.*>::s; - if($status !~ /\S/i) { - $status = q{[item-data orderline status]}; - } - $status = uc $status; - my $mesg = q{[data - table=inventory - column=stock_message - key="[item-data orderline sku]" - ]}; - if(!mesg and $status !~ /^\s*shipped\b/i) { - $status .= " ($mesg)"; - } - $status .= q{ time: [convert-date][item-data orderline update_date][/convert-date]}; - return $status; -[/calc] -[/column] -[/row] - -[/loop] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SUBTOTAL[/column] -[column width=16 align=right gutter=0][currency][loop-data transactions subtotal][/currency][/column] -[/row] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SALES TAX[/column] -[column width=16 align=right gutter=0][currency][loop-data transactions salestax][/currency][/column] -[/row] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SHIPPING[/column] -[column width=16 align=right gutter=0][currency][loop-data transactions shipping][/currency][/column] -[/row] - -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]ORDER TOTAL[/column] -[column width=16 align = right gutter=0][currency][loop-data transactions total_cost][/currency][/column] -[/row] - -[if-loop-data transactions comments] -Your comments or gift note ----------------------------- -[loop-data transactions comments] -[/if-loop-data] - -Should you have a question about your items, or about other __COMPANY__ -products, please reply to this message and let us help. - -Remember, you can always visit our site at: - - __SERVER_NAME__ - -Regards and thanks for your business! - -__COMPANY__ -__ADDRESS__ -__CITY__ -__PHONE__ -__TOLLFREE__ -FAX: __FAX__ -[/loop] diff --git a/dist/construct/html/index.html b/dist/construct/html/index.html deleted file mode 100644 index 0f70fb75b..000000000 --- a/dist/construct/html/index.html +++ /dev/null @@ -1,166 +0,0 @@ - - - - Welcome to __MVC_COMPANY__, an Interchange catalog! - - - - - -
    - - - - -
    - - - - - - - - - - -
    - - - - - - - - - - - - - -
    -
    -     - Welcome to __MVC_COMPANY__, - - - your online hardware store! - - -
    -
    -
    -
    -
    - - - - -
    -
    - - - - - - - - -
      - - - -
    -

    Welcome to __MVC_COMPANY__!

    -

    -Enter as customer -

    -Admin interface -

    - - - - - -
    -If the above links do not work, this is an indication of one of the following: -
      -
    • Interchange server not running. Usually one of: -
      - /etc/rc.d/init.d/interchange restart
      - /usr/local/interchange/bin/restart
      -
      - will work to start it. -

      -

    • There are communication problems with the server. See the links - below. -
    -
    - -
    -
    -This is the "construct" demonstration of the Akopia Interchange 4.5.6 electronic -catalog system. Links that will help you to use this software: -

    -

    - - - - - -

     

    -
    -
    -
    -

     

    -

     

    -
    - - - diff --git a/dist/construct/images/admin/b-configure2.gif b/dist/construct/images/admin/b-configure2.gif deleted file mode 100644 index 0700b51f7e2d997fb986475bc82e2a7e834d48d1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 420 zcmZ?wbhEHbv}539IP#xi*{1zF_a8G(n`xUf$E|pNK;`1dhGofZD|36+bk5&4XU(3n z$?NN9Zkn`g=lY$84jnsr;J^U}Qh?%57DfgJ0R|nACXk&Dtp62M`cg6{@d`T}tlGCh zlEaDF#7|jLocDKU6Wo6?{%L%_$$ zWwCqB!j^fpH8bWd^=>wq%|Ajsym5?4Rx$0U`GFMLd_QLS#PXU~v$#J*v{ z>RRPPGm55VxJ)(UXW@DAol8VmmfffIad826i{>l_pG%I(4f-x7Jc>SAp&zfvvL|w^ f34HXRQ-ZPa-$o8+W#!GT43`WX9!-qoV6X-NZ)S!P diff --git a/dist/construct/images/admin/b-help2.gif b/dist/construct/images/admin/b-help2.gif deleted file mode 100644 index 38f769f2631b298580f2977fd02d7663e4ebae45..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 256 zcmZ?wbhEHblwsgyIP#xi*{1zF_a8G(n`xUf$E|pNK;`1dhGofZD|36+bk5&4XU(3n z$?NN9Zkn`g=lY$84jnsr;J^U}Qh?%57DfgJ0R|nACXk&DthEY<9a1u-xk83buXCN16EyWq3TaUGfYWnOGUDJTseB{5X1h+gR0mqWf#(+2R@9+qnez S*tl&QSQq3c@EFgUJ!h^4gR4Nt z%)0*hwG6cy{JH9U3p!I4dM;h19^DMkJ_mW#WFAw9~2n*9)*`|f1m3!Vcs^^=2;CHs%7!mc{mHRmxe@cbnK~pVn zVK(PSDv=gzSo&nMnVw2MKO5<+n=JQ)56w7&-0UYX+{o~8?ceh2 z=*z$cWlkS$L8S$c85$dzUmxlf=4xCqiFKdEgph&*4o$M=o+}F(4H$x)RhSF}POe>j KU09KU!5RRD8<`RS diff --git a/dist/construct/images/admin/b-orders2.gif b/dist/construct/images/admin/b-orders2.gif deleted file mode 100644 index d975eeffe331856778f9e40c481365854b76d432..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 534 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 Gbovig1kYCh diff --git a/dist/construct/images/admin/cleardot.gif b/dist/construct/images/admin/cleardot.gif deleted file mode 100644 index 35d42e808f0a8017b8d52a06be2f8fec0b466a66..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43 scmZ?wbhEHbWMp7uXkcLY|NlP&1B2pE7Dgb&paUX6G7L;iE{qJ;0LZEa`2YX_ diff --git a/dist/construct/images/admin/coinlogo.jpg b/dist/construct/images/admin/coinlogo.jpg deleted file mode 100644 index f551ac1bf55bc669b947393e1d02821cb7d07d3c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18365 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 diff --git a/dist/construct/images/admin/delete.gif b/dist/construct/images/admin/delete.gif deleted file mode 100644 index eaf9997ced959f9557c68fa8f0f56050435b1317..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 126 zcmZ?wbhEHb6k!lySjYeZ|A7b$6#w!0CZ?n+lxLP?D7bt21~4f8WMSlDU}De#sRQX? zV6vUUx_l+?!E@buH-6+fZ(IIG_b$hzM;&dUS$Q(tJB7S+Rin;t*!FHu;qD853#0j3 W0&gZQx^w916wl>XUTtAuum%9R4>5rN diff --git a/dist/construct/images/admin/delsm.gif b/dist/construct/images/admin/delsm.gif deleted file mode 100644 index cf19f6182c8696c9fbd8b0ffec87a80c7673dd55..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 79 zcmZ?wbhEHb-Xz@*gEzw-23{>5`lI=eR?ORw&$xvkW+yg@&WtvAFs%+oyn@vrAN+!2FgA&7LgdM$msG{jgj*VKw;b&W_&MNEp LeCV-eWUvMRho4eP diff --git a/dist/construct/images/admin/folder.open.gif b/dist/construct/images/admin/folder.open.gif deleted file mode 100644 index 30979cb52855157110d56344ce09ff29ad726585..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 242 zcmZ?wbhEHblx7fPIK;s49|+FOJoEqm?%lg*rWpeP0~jd&^9#wyELKP?Dp3GZnRyB& z8L0{drAaxN$qFg?xrv#1dJ5jDWk3m!()5hfVjYES5HG_aHM2x7IX_oNAvm?5BsDiF zwMfCx($bVc@h1x-0|OI-4#<3v?F`JR8oTcNGdShBI#=y=&2-5G4yn89^Q6URrb|x} zc)e?b^5WuCck>TOH!hekVIgPfp~Qt9URLv4mOfysiDC|%v8Jjt&35m)a4xxmqX+dL h7rU*#p8HYSdByGb-#i9N&0}bRSuA9OK;#20ycr{J#vN= zx_S0Jgj;;D?C$K$?E9Uae>pk5-e{x0QcqNOc1O3nHCa_xc14%FG{vmW?2Jx#YI>tO zvLia&p&50xvmI@>1yZY8*@~81Bwzy#7Q=LF_Dp0|RJlsCmMpU}DqX2zK{2u-DqNu< zMX$3QWtRmr#dX55d0l0Cm(k<;@@__#9dm@GaF7=1xyj-&zzdq^z?Co$O>5P9iLd@SeA&Oe zzPa7ref$1(dv<<#rNe(aZ{DHxBdqvGHhd1$&woB2|NM2o`}XMK_v6FUkG;M37axwd G`t%=H!_Q^_ diff --git a/dist/construct/images/admin/icon_config.gif b/dist/construct/images/admin/icon_config.gif deleted file mode 100644 index a22b52ef508be1b35c62c4fe36c701d96d38f5b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 153 zcmZ?wbhEHb6krfw*!-X2|Ns974jkCCXHQmER$5w`zrVk%tgL{500R!7_>+Z^fq{`h z2P6+N!-2)kz@wyVkA=Sg$0_y(hC2)A-qc{@C{=9kWIO6ucyCRwkfDTF$iWR>f18$z jaVz}b=u~m=+y2sGr42vp%p(U=mR}I9S+$c%kii-Nk3KDR diff --git a/dist/construct/images/admin/icon_error.gif b/dist/construct/images/admin/icon_error.gif deleted file mode 100644 index 572b6d9554da8fc603a2ecf75a54639c90d5b746..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 105 zcmZ?wbhEHb6krfwSjYeZ|A7b$6#w!0CZ?n+lxLP?D7bt21~4f8WMSlDU}De#sRQX? zVA7bIZjbn_ z4pPjG&gBeWB(}#)w%B1J$=V&vRJbd+YxafAnd_VwtTTMPi@g2IJiQ9s0;}Bo%U!+l zT|(=f1FM|Eo18-G9m5(OL+c#^tL(#@>_h79B3kUinrx!GEaUqu11iiDCz&TqFiV~YWtwSxze(B*ljNz!X|s&eW*TM8HcAJgSw`tI4KwE&W&qI~!;IO6>9Y;8<{4zn zF-V_fkTyd$GzXi!b9R5Whdi68i-iCqn@&hvU#_1pBd=A76eFXg@2sY{ z5N)<~krL4v(k3AXA3Ri7 zdG=zqt@ZP_xgmb8fp2ewmH%m6uZ01O!b%>S8a#0x=g1pog4%*-<{9A^8LW000yKEC2ui01yBW06+zUAVoDv(uinEeMC!mR#jOZ5Zs^l zEQ+!`o}h3@gd7lv#1WxLP>e_gM3wpsDg(kMbGc+TgzMmA#R4`Hl4)`9om9IX;{ky@ zM7#Ennu0Q?d@BZO4H6w48Z80?0%VH<1RNML7#skPj*I}3lo5muACCY94Qx$IO;moR MJqvFtgeoBbJ2$IX>Hq)$ diff --git a/dist/construct/images/admin/icon_pages.gif b/dist/construct/images/admin/icon_pages.gif deleted file mode 100644 index 92be23a5b93c71803e5e74dd162a972984191f98..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 152 zcmZ?wbhEHb6krfw*!-X2|Ns9lU%q_!@Zs6BXAc}WuzmY>J3BiW85s!)2?lIH@h1x- z0|N_#4oDJYh69VM!AVQOofeE*t!xXH7k0AGQz>V9bgVMsSmE)&eqE5~K!RhF n^GA+dQ#+bGZp9sWv`P4=ulJ;Q0gEN7eQipwPkZ|+F<1itkkmF& diff --git a/dist/construct/images/admin/icon_people.gif b/dist/construct/images/admin/icon_people.gif deleted file mode 100644 index c8ab06ce7ee046de2ffd107e82f2d90c9f4d5866..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 990 zcmZ?wbhEHb6krfwc=n&+$H)8cpI&%)y`Vuz!VphiX2M!!CGjKN5S2mT9Gtss;Hqtk8NHWxQ zHSj9XH}utY%Fxwz)0H#QQIpmYQ`a`Ol$Vv1Ro9i`XOfUp5|>mKlaUh>6BX996PDE! zQZ?sOw&D{K<&rmMVP;_%nn3X<3nK%ADuWKl`Jgy)U@vJGpo4cswM>`T68@ zHyMhuFbV7Lu#{D_-JvDI#v!P+%G$x2ozu!heUr42k<1P=^Cok%O?Ea-Hg;W&4Aw(4 z{3vxbJlq*L4l|T;h-9#E^^1G4X}Kr`xC#ph$kh}mIkO*by4WEgPPn6swt#dL?6gVwBI@>D6rtxuN%RF73Tt1PK#s)^7Cap(XRxq8N$i*(? zVbSE)>aC)+>%hvubjD^w>3bzBPYA4@Vb%CbAwYrMo7YHDylbQIqQ+){j1xATUBaxA zd|_)!R-6i7$mO8&<$xxm#yj8Xsn=?LZd%q8&}g*dgyfeeClxGXPIR5wnaV$JTE(|F JdnE)ItN{~4w@Ls2 diff --git a/dist/construct/images/admin/icon_regen.gif b/dist/construct/images/admin/icon_regen.gif deleted file mode 100644 index c4af9496e4ed910ccb156b64587bde3c1dcb25e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 617 zcmZ?wbhEHb6krfwc=n&+|NsBLfB*jZ^XK>P-@ktS`uX$cj~_q2fB*jN+qci3KY#l4 z>Ep+bA3l6|^XAR#*RNl`eEHI)OBXL*yl~;d`Sa(`ojZ5-?AZec4xB!H`pA(ZJ9qBf zvSrK4l`B`QSg~Zuk~wqc%$hZ8>eQ)Irc9YUd2)MudvkMhV`F1oU0qF0O?i2FSy@?e zadBp5W>Qj8R8&+%L_}z4Xh=v%aBy%yK!Bg0pO24^x3{;0gM*!&ot2f9g@uK=xw)yS zsgaS9p`oFHfq|~Bu9lXThK7cUii(nwlA@xbf`WpaoSck|jI^}0l$4aDq@;v|gqWC^ zh=_=gkPr_K4>vbA2L}f`J3A{YDP;LW-)PP0pemTs(ZD;=J6FGn>2_*i`&X1O*H|6{IwmiRm$znc6Xk z1zFlK_%|6CTkErVd1`2QdWjkM1}?LAV_@>|akP>Xb9L$zTNbLU@#uk=?qLRg?Es|dG%O3Uh?RIgsflYUcfTwL7T rqbb75$tZB(0K21%nazvp@7~?Ld-tkUt2#P5%FD|` zLqlC$T$GfQ1O){d7#I})bNji51UowhxEkphFf)RL{>i#$ra6^n=A@(+DH!OPDkN1Z zM3$u%D+FYwm!_65DE?$&=1Mdkc)wuw4KAkRj~@!ubak^PKFiP$;dM_~ShFXgwcTma1-9a6 zP8Br=*jPKCehLj$3F~OJxzZ8J>BlQ!o#4mF!Qtr2ZqCZd$K%M&%aq%l#Lvsm$TX9m zxm(DUpOb5`lw{FDAwg_z>-=!y<_#%hZ>3m9~*Y zmf|SI=-t%C?d9Dp#K#bnK7)scp-RG+y=I=!d`Tf*9&YC4_#HRtmh@Lse+8Q-0#*(a zEqnxYdJAfTnYT3cC~UgWxPaM2hSzER#S0-43`>+86%@q8+SdeB03FxnGoiwv{O)^S zZEhPe?n8?dc(cX(x>_D;aD3wDv#pd!VrAW~pmcPnPAvCb3bX5isrVaN*&l;jqg T#>gkcA}PVl&EqR6$Y2csfmrFe diff --git a/dist/construct/images/admin/icon_stats.gif b/dist/construct/images/admin/icon_stats.gif deleted file mode 100644 index 88ca1e74696e27fd938a628f370d0df29a25bc88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 313 zcmZ?wbhEHb6krfwxXQqgmi9j@>wiwp|6MO%p8Nm*{Qv(K{{O%D|NnmmhKCFc|GBt; z%oi_SJbn7~(W6KA?%lh4_wJ1wH?CZ{a`EED3l}b&KY#wrnKQd~?b^P5`<5+R)~#E& za^=cp%a$!!vSik*S<|LXn>1-sXJ=hZVoeq-T(sE4k--`O)O~@K diff --git a/dist/construct/images/admin/index.gif b/dist/construct/images/admin/index.gif deleted file mode 100644 index 162478fb3a7f690884b1527488a27a9d34ab497b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 268 zcmZ?wbhEHb6k!l!IK;s4|Ns9p|NqaNIWz6de`8}~1{hHM=NFQZS*(y)RH6W+GV>Hl zGEx-^N|SOjlND0(a}zW3^c1{P%YYIdrRf=|#X1VvAYO(;YG#REa(=FkLU3w9NosCV zYLSAWrKKr@;!hSv1_nk39gr0u+ZmYaJ$CK+XdvLQdala8OzZQ4*F%+d^j>G}%y8WC zp)<%eSG-8|P1Cu@LU&KQy{J}XRik+(=tTM=GYuMB5h}jym8(tr{ zTHty08q@pqX@{qpFA8HkpSQf;)z`l$D#)_MC9vJG&E2N2-g4rU9X0k#`er{rBo}PktY8g<%qclAuwOB_X8^p_SNX;zKOU}>LQ3y^g zC`rvtN-a__w6rv3Q2fcl$iTqNpaZfI}mo*BX ubMM=^lVvk>^@~}aS-AV^f3&VBD9tXZudR+|59;m-w3jTH=pio1U=0AHb6^Gl diff --git a/dist/construct/images/admin/left.gif b/dist/construct/images/admin/left.gif deleted file mode 100644 index 279e6710d4961d7644ea2e3e39e6afd300147aa8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 172 zcmZ?wbhEHb6k!l!SjfQe|Ns9p|Nk?9f#N^Ekc`Y?g~Xx~1t67~r%;lSs!&jxl#`jP zkdmL9n3<=i;GJ3ql<+7`&qyuSQOE}IG8|GfOZ1ZSb9EGgQwvH`bCXhw6bvmbO&Jt_ zvM@3*Ff!-Xz@**Nzw-3iM{+%$5nXSNI_AHs_0#Z5ammWC>ec*qNb!1QNo>>3 NI{94w6cGjnYXFzvI#mDw diff --git a/dist/construct/images/admin/plus.gif b/dist/construct/images/admin/plus.gif deleted file mode 100644 index b9719852c46a0409333277c90239b4fd27d12eb1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 125 zcmZ?wbhEHb6k!lySjYeZiItbZG=t(lKHtQYRE6@)k_-iRPu~Cr#h)yUTntPMIv@og z9Slr1Q}|aFyk%;d@@B7v^H$#TXC>uC%VwtOo?5APf%EVgiPQP9=PT;o>s(3N8nl1X Wii{f`SV|+a=f1ZlTPSl{H%0GC7G#ie|ZwmQ%US zXpMKY-8?ObqPSqLS!SlvVnvghjacUYHs`$OJ5{aa;udkr3?dYXTe4)^aNJJo!RegOG-QCRSXtJ*_fkJVn(JToBGM#RQ z!`Tpt)rx@%S=agAp4uUW-zKgu*0^P2P)8Rdc`;z`vf+>WSLH7UuqIfXElzNR?;Yql z^2zmlRlMplwK`-s?3DA1~`nSPvYlG`w<`mtiVzW288tCahPhoWL^_xBx_BhV*X&`!# zsXH93H_SFxgqe(Pvwh_YUeLjFA28_yo_d2PG%(=}CTL*X8;p2^VJaB%0*}1FpeImx zfdLON;0gMvpx+(zdH^{UbW?%U14vzg#2wss1GmZGsx!Fk2r3;wnFGkfgDhK+VGDk? z1<6)mk0ltO!aF_T3L0X-3!$KC4Ekz@8^a^b5QF|&zmiZxff$An@)+6Zu?HA*2ZOGl z-wpJUK_3P5x`19X_{|>tiU(zQP-F{^TY3Xyzs_z)Qke4jajK4;MTJ&xd%B}l{q z4H%FUfZPEz+JNIG;2;*H8i7b%@Pi%*MFU?HAZq{|9GC%s0RRpF1VLZFepRd0OG`^C zl}f2pK700Te0+R(cz9r7Kqiy5x3^!rcCEg?zPh@)va+(cxL7O}3x&drjEs{fPo}4* z@87>aF)=YVHkQlfvf1pQpdbc=;p^+`>FG(KP)H<_rKKeR0KbZa0iXd~zBBmu6HGJ& zbkHumBE`cTv@vO?ytTG7Q)k)RoO7*C23Jp}+pm25@12a#wDpjQzjvcD--No%ySG?9 zFnrN|y3=uMSJ2^=C;9Qhzp5W(yl8GBpJ<71KV{}h`dux=)^T|b|CO{ zrDaBC?fuOimMz`vnJo4CY@rmey}Hi?bF13Y_Kh}XL|5cX1&V4)#GxAXowMgJIs2`r zAI3&kR+DJW9@!1v=Pz3OXHc{m?P)R$KE)}4;Lux``6Pfccc6Kq@%oNb7&IASFKi9j zb#U7p_6j-bb;HH@Lc8RVKfbCzy?^oOVJ5Vxj%RQ=1N&pwIc;eBY>6N0Gx1T-t2D%5 z5dK725#x2?vVx^lFYEh1PZK-}`aA8D0&U+hTC|O0m^6&2!z9WJy&fki&(dF4DeW$M z-NB;pDGPJEcyFaWrjcC>MUJA=D|x2T#lxG*cD$;?xPAzW&iDL@lZrInHpcJN+Tf5P zJo9s{W(D;qvqOZryf3=fvo)*!Umbx?jeE7k#yV`jfo?2&DeW<`@GCI4lHz(aR}VjI^ASg zF~uDwGyD(IgLPqt#g#BD3%FOs_ReJMNVUF(h3P}g$U?irg|IMvb`@R%j@h)f>8hrd;&vHmDq9rE-TC^ zSs0wuov{fx*I((dz7n}8#Y`5%x%P+Jcs+;WZEm3I6e-g9m|O=~h}*Mc z(HZ*!t!qQmo!27!2(z}yBrI`fj!*ALnCpj`y0QzR|4T@bF%d^J=|xyL+_`7&Nw!A z_Qrg|xkJYhxMg&>-^R4^YHyPL#5;}{`rAXFEJEU@;i$IYay{C1{Lb0=aH~nYUZxrm zs%*^;P$dvfsY7u8jKt0ek;v5J@l!?q9Y=EYpizO-Cc9K=cht!k~u7YRc*;H z^C7r{P9-K!wiRV!f6vPz$B3t%oIPCir`2nF>Y$-i7*{H)xf@!-+az9EtQNGA*vr=X*^|3RG;>6P0GQ>i)ek#yL zZcXuxe`5|tF*W;SJb|FIrZ`u}o7tfig6=dQO3B;7SL%hUVHzS2bU0CZs?+i}>6rUz z;>}vKz4q3&<;7L}v0#hq$2(1`YD9$Me9Oy15kahsGTE$jewe1WUXDkRFf8Pz@q**G z7Z5fzcuas8W`5HH<%GrSUaT1*mM`Wym)BUHfs@}JrfGFL!F+1YYE$E`p}cwF+*@x$ z3CVb!OVC@s<(>F4n+9G^EC+6sMbTaF8r5)Kp0Vr!BAY%t4Y%f5+uco4vtP%E{TJ~^ z9&ZZ~fAMC-3r~m)} diff --git a/dist/construct/images/admin/reddot.gif b/dist/construct/images/admin/reddot.gif deleted file mode 100644 index dd62ce25d048a302f5603f034f697eb70e7eca36..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 846 zcmchWF-o3c5QIli_@iJSgz%fn!a|rPAyt})ppYvFana5~uoeW*uw`zLBLvc<*n8v* zDU!{z?;*0q2g~lx&dk2w`NgMq@2@x7=$F(J)t%kZ?QTt0)sU$LRbR^X(pis4;F(BwB|(9O_`h!7sE*Ov6jr5 z$1%RHdrxtlaBN;zncijexW2rb(PhURVJRG>MS5e`LewwffJ|$NT5+PkXQ4UjF>{^~cM>!JEsI Iv#mb-14~2B-Xz@**Nzw)%~qgf4szES6oR(^g_8+4;}QR+O8Rat3Y55;}UDY3n~ OBkprQ{}oXN25SJ7EYJ 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 Gum%9J?KeFD diff --git a/dist/construct/images/admin/widgets.gif b/dist/construct/images/admin/widgets.gif deleted file mode 100644 index 7571763721c685272b81cc96abe30223b1651130..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 91 zcmZ?wbhEHb6l36GXkY+=^0rNi|M+|pQ&JVmGfOfQ+&z5*7!-f9Fmf?4GU$L*fYdTD pDYWzpo;dqz-Yhn`*~^X!zSvvgxhym>qEvj9mCW)(xy!^DtN}7P8s-21 diff --git a/dist/construct/images/affiliate/hardhat.gif b/dist/construct/images/affiliate/hardhat.gif deleted file mode 100644 index 051cf7416a3c4cfc742cd63c2c7497d45fe0ef39..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2377 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 diff --git a/dist/construct/images/bg.gif b/dist/construct/images/bg.gif deleted file mode 100644 index b82e6ec462ece5e244bda0a9d8c4af235f6c8f35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45 vcmZ?wbhEHbWMyDwX!y@?;J^U}1_s5SEQ~;kK?g*DWE_}STKZQ;FjxZs?C}X) diff --git a/dist/construct/images/clear.gif b/dist/construct/images/clear.gif deleted file mode 100644 index b82e6ec462ece5e244bda0a9d8c4af235f6c8f35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45 vcmZ?wbhEHbWMyDwX!y@?;J^U}1_s5SEQ~;kK?g*DWE_}STKZQ;FjxZs?C}X) diff --git a/dist/construct/images/gift_certificate.gif b/dist/construct/images/gift_certificate.gif deleted file mode 100644 index d5b36b85a9712f1d1da116f8b76db969f718276b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2532 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 O?K;}aIxj~UMEx&#TuH6~ diff --git a/dist/construct/images/items/gift_certificate.gif b/dist/construct/images/items/gift_certificate.gif deleted file mode 100644 index d5b36b85a9712f1d1da116f8b76db969f718276b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2532 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 O?K;}aIxj~UMEx&#TuH6~ diff --git a/dist/construct/images/items/os28004.gif b/dist/construct/images/items/os28004.gif deleted file mode 100644 index 08111948a7a8212d6e4f68df117fe6bf5699b14a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8916 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 B=DPp@ diff --git a/dist/construct/images/items/os28005.gif b/dist/construct/images/items/os28005.gif deleted file mode 100644 index f520e69bd038427435533005aaf374f5dd9ed77b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7103 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 diff --git a/dist/construct/images/items/os28009.gif b/dist/construct/images/items/os28009.gif deleted file mode 100644 index f5cb6fc52703c6f240ab9a745d647806d4ffa6a6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5752 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 F{(pHAPdxwt diff --git a/dist/construct/images/items/os28044.gif b/dist/construct/images/items/os28044.gif deleted file mode 100644 index c780706f0e62601d45fb9632d0fd9670297601a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4181 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 diff --git a/dist/construct/images/items/os28057a.gif b/dist/construct/images/items/os28057a.gif deleted file mode 100644 index ffcffbee9c6ad9a5457550f0d0409753fe3d30af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5550 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 IK@gb!Kb$wDJ^%m! diff --git a/dist/construct/images/items/os28057b.gif b/dist/construct/images/items/os28057b.gif deleted file mode 100644 index e4a97e7c96c19b31bacf7e699c98aaa096138399..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5406 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 To2mDHTYK;J-g`IQC@|sw#@tip diff --git a/dist/construct/images/items/os28057c.gif b/dist/construct/images/items/os28057c.gif deleted file mode 100644 index dea77477806a2737c955f4b77e5b7a7c502c18ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4788 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�YbC*rI|Zd$z9FBY8t6=ErR8|wJbWG7Re)s_eS76#^eRi_#6VyAn|4; zI+5iSYr+dZ@^)Bb0eWcaM8dravSv8N8nnPH;sLzbgkJ@cbGpTa2l%<9;4le1sUS?p za{{m@Av$RmdlU2YXl}TgGn;~FJt!f45tf%q ziC{K=(MMi{5q73U`zhbw)e0vT_N1{(H2(M~^c4UWCOkl|>YrE?MgvzR2AgmV05e%w ztAk)QN2nJ+d?i+NsCepiwZpmA0sD7k4+?Uo%C2X3tJkXQkwfU0isb&OR>J6ks~Yk*?|oeeV&q^qiz{@%!w<`%s@I#rAhHjx zJPYf+6e}_ftgw+~cf`C&b zvdbV0prWcgiMu*Trst9d)Q<98r391BfTwr7PasKpj%(8)xKfy@gND^2a*l0;hR>M5 zr|9g#j5sz_3Q}ffRA?Rn9knU$S63 zmS+T9+=Mz&=uQpprWT+wZh)Hq$>5WBQ25CJY}NculjI#G($iQS1tzohWnn~iBVI7H zKbgR?jZt1Kr`rV9lNd~KuG7%_HJN#{g}d~t3vr<{Rb$O&9y0Nr)!c41{~M#^u~GE( zY@#1jg?JRXnjs59=wLwl%);G`U>hmAYZTa-L9B|HYMiDl#cu0S0f`(Vg|G!kya`7d zL|tRam<6{6sD+UXVoPvv1JYf91=3uh5#DEnVvO5$lZXXCFMBFX#lY_x)K&-e0#4ih zyfbT#pQoX84KJsW3^YO4Nv^vIIfkEV)o5cQVd-c1AClZhK=zs=Y^mh7i6d3#73>#A z7&rwKWT#Bhl|glSq%acN-M2NuES|!09vPttL;D#s^tB%I(?b{Hkl$MD?bI8Ng$OOo zP(c|O+e(yDa1aYR4d`c9eEY`MWHVH#;YJx?bqrCxWt$hnc{H>lk0-RE@jwzp(Yr86 z08i&+7~n1?`hr-gyw4F5f*l$#mpYd!2donE9Wy{Ww%m%`*uNh?&th#X~Xf?)$HF+`;4(H;Wcp)byP&Q%()aSOppC10$IMzoSh z0(Gv`bG$S=a$>f<{NRbHMZUVzVH(IrkER>YlhaRQui*%_fNK;hludv@oixz?TjFO| z4wdR^v}(AH^|;A^Tn0I(17Xuo_ZVSXDX=qUqFr1Y286SjZ=(ppEOs$KJR`>GLTruP nh2|4&Q3v}do{9ou8oJ96YtFR1GK(x`SXsAN%qq8lATa&^3Z8I( diff --git a/dist/construct/images/items/os28062.gif b/dist/construct/images/items/os28062.gif deleted file mode 100644 index 0cc89253e9b6a3fa8bbecffda87f0062dc3ffb90..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4294 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 diff --git a/dist/construct/images/items/os28064.gif b/dist/construct/images/items/os28064.gif deleted file mode 100644 index adbe83e99d5ea00cc458e34ac62947188180e906..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6189 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 UKVUWNb-HRIIDCBqb-lhJ^tE0jg+c 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 IzXt>WJDgM`ZvX%Q diff --git a/dist/construct/images/items/os28066.gif b/dist/construct/images/items/os28066.gif deleted file mode 100644 index 7b6f87f8e79fe0909f0ee4f564289b4e8dd707e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3485 zcmWlYc|4SfsQYQ`xoYB6=bDf;+##1;VRnNa??{f+uO@ai>4ye z$&<*i5ZP1NpFMq3W8-ZyS&LK_3;#Yh{XWqD)Ih&#Osx*T5L}#}+x+;+$k5wC)xd;$ zG(RV^zwghg^2*>q-|V!c_UDR6jgMX^+RKVXWkq+oI$yq@oa$9}_bHVhrrw=8;nmaC zbuHpTgSdKXY@(r7+)&r}NAr{6H$&y6rAIvvsfXS+*40g@$KLe!E4yB)`uh5NdaBFI zYOBRBUv&KV@uN-NT68;SW^$^pyJu{8{=G zSHr~>4?I}=RDbq2)rp01{M$FvX5LQ^s9vYV@hb0?+{#LCY>+&xtNpXDN77KI>hJ67 zQck~{dMs&DRJ+orvm&>#lhE-1<|7; zL+{2XJdYewcD_iA<<^NCCP&9A%N_*zpM2Tb{=8L|#J~PW^P~Ejs;bHdGgFhjuU_S* zCy6WW9XonBKQpbTyYF^Js)xJV$l%bz!otMJ$mH1QspB4UnY^Y-ytw%H?1!1jiSdE{ z-n^Ts@1`cNgr2(`!Kr%iV9)NKN8i4ko*36?G@kAUlKAkej?Sj~`oY()^D=}*cM7W? z+^?;!6j#^$SXsH7moxie_F+xMhYz!he=kmrj;;Lo(XH%SUS95b+1c~5Yh~rf=g*(| zySppy-@kh+WBFg5%Rk1)$JIlFzn(faGCVXgIQUVcxtSc7nG`oR{FZfizu7kk_%GJ~ z)qkG=Fe?CvF>)1)WPHpjD<6fpP##CN*q`rOThx|B*?x9NQCs{xjp~?aw6CtDJ;U-y zxlemtX~!*Ez>EBS_4i)p(Zgqk+UxJXy363>jQ2N`br-v4Se<(80a10_j_}w$7CL=p z>jth4jK(J5);<#_I%QMwMYbnB%7S%|hU^7h>L@xlOWkUq|6S--h}x>2k$2Bvbb30H zZh0{EGtIj3!jUBNZQy%qYe#~iuRhf(pfouh2?AfPTf2K0%WqXkROzL+(t$QXYtk*L zyA4=knpkGu`Xa^9%jn<(rUhuez3mh*b|_!x zpbgln$Itb9X0W5vye<3*-9L7t<6^JC{~#?x#4vZt*he}ZG0wy9hSOunJNl??*7fVU zkvLzsQ5>#b64q($BA*{0y~z3>STOS1iJ|>MM`+1gFyY_79nEm0R*Td z!xp|y;azmo*TdP9`0Nk&<0fv^-bOr)jFJ_hK7{lVJh*?i{vV~`qJ5ukI z4cQ66dU9O~9A@`9*;*|~4`4tWb~l{~BV+w>HMM<7=!v542Y0qPEKQgH8mr5zlyXDlr90 zWrxA{2)~1bW?wrb&RTP`s>DW88*_^slnxN~-LXXc%#en?(mVO-Hbd{I7_KU)7pk4L zc1&+iBHNty3*G)P-x9#^L*&NzUr#$QS6TaPtSR_qjNY+zOQ#q}W&?#&2@Cn#`P{cQ ztmKkU!?;j#WS7UdL4QOsVij{p%-<$@n8ik(u~v4Fts};9YjYnXT-KO%G8=Y8=sC)X zr4kMw$IM~ya699F_ea@K{Mxn$_W|?ROWNtJ_#p3|=6tN1lhjea!02`!=FB?kPF!1qPx6|B!8Ek+xk5z6#eV75d#$3PxZbMb);hcyj;*b$|C8^aHCLR?7VFc4<9 zLo2nl{qb%p2gEfo9}^!Cv8B_LwAl=A4I|M0K#Y-siaD4JU;`PByO*+1w1&}WH&!ct zkjme&*+HL9gNUt#0t|;w2#x3Ix=1m)>sp+!y0Sfsy;bwN^hLmOOcjTr^yVC6Lpw8-==F;-(lJhp z#hrPFuP}^rm-49J(YOsTlf?55gcMT31)&)(M;T*#DKusy)Pjz71q=?iCjX>xFySoT zGb!S%bYg){YDH9gZDSE_nR5U$W2Ag`C8|MuIrd^sJ@HU&70{X zg($4(ux(%A(+vF2z=yRs8tE#P31bmX6q`}VW!eu4VM9jMY!HR-EYFJ~k1BCUmM7P{$5F6yXQ5&$yrT~vX4;5l$G z=`jnY>3op6gM!*wYbe{6lAMr znBn}a-Ay5~tvAx@-Vlyv2VkpR;tf&4v%yPDv;jrBL70AyPjdwC<^WbyF5X8QMp#%j zI*iR@33^4QMlggXixY!g^Qbc_snuU1FvPKlT!?9H!hT8yBX8>txBv)dZQLciz*sKf zH|}C!_g6~6CCc4~lk->~jiD|E2*=v^UF0sxKrL7Lx(05NU1d?z$RTIhq;VjcrN%S` z(}A#1h`{mDN?P%5HKuKzJ5=efV<5hqvx5V<#2aDtG?DfALarU1szay&5c;)=tAo|k z5+UjrtK~VQ>p0P6=Xbz}@iDgE5!CZ`=sqUq9cEEc=C7XXqyk^SoMmEzXwe}(?Xr~>LIS+Hsa&DTmknCS&i8h_ecvvPTKt@k6g3G!P1EQ zU5gAugx3fYdyar5H9W#RRZhwqNy?BaWs43Ou={^o$Wu}P diff --git a/dist/construct/images/items/os28068.gif b/dist/construct/images/items/os28068.gif deleted file mode 100644 index ef438ec592bc61ebb7258c00bb7dda6091c7a63b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5845 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 diff --git a/dist/construct/images/items/os28068a.gif b/dist/construct/images/items/os28068a.gif deleted file mode 100644 index 208a573df23aa6ad2fd3edc528980cd815f0f606..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7605 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 ZLfX82Ps3^^KUp~^3n*x4N>c(T!isDt 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 pcz@IX{jDwU8;-xfQ}({O^?l2;_pP( diff --git a/dist/construct/images/items/os28069.gif b/dist/construct/images/items/os28069.gif deleted file mode 100644 index 4963675d761be5d6ad8bedcd16200dbba955353a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9353 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 JMW+HT{{!g}F#7-i diff --git a/dist/construct/images/items/os28070.gif b/dist/construct/images/items/os28070.gif deleted file mode 100644 index da01b9b9143e2393ea62e3d9a1962ee74b662aae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14209 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 DfTxUW diff --git a/dist/construct/images/items/os28072.gif b/dist/construct/images/items/os28072.gif deleted file mode 100644 index 47bc0237d5eac3197b04a1612fceb8907172182b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5243 zcmWlbX*^U51IEvsb7ng;!-yS-w_BkBbvLmi-uVG&&a@7^En zE{Xg2daB}Nz;NZs`lf4Fx^C7*{cyWH_U)TD@hOC(vuE|eO(&cekG5srtrs;MaUL1G z_4MiQO}VFK;f^yCKl=qmJeKDN`gl)GJ@@q9-*Cz^SzJ<)9@mv8EGeyW@$kEl;I(^C zNKYFn42!I(s_!Wfe);lMwYOS zOCW(Ujo55vk(B{Gy6dS#xwuYG3KGV_VJQlJesda|WstFJ9`s zp1H5D;9z!6Mf=5{zkmPU-hMeXT{hAr&dsaI&aJv3!Oq9+$R+CL=H~wT>+keTS$Z~c zaF;`4^X1Ybg3e^mg5sv%)Gx&8#V6t=XHwGew30MQ^_NdGS*fC@s-c{`is|Q*HA1J8 zr!%+j*iFWG_`2A9{P?M$w6!E;!tDXE!B}kO-p${> z&z|;Lm$KVpes2Ef&WrQ&b49TMvvYHyPNq3o#oxbwlX#iV&CV4TlO?kHYuVVfv;fmD zF!29a{lEV21i+XFC=3%1IoX%S(6!h%D6hSh#a+Im%HvYqK(672!xMv->hBbwt~n;# zFE{G`aUYN!j}NYlH4cnmHPi>;j5~*&!1wJxSUgb^=x~dGt&-C?is=< zcC0{UnvYpN>YVGEHOB?}RsYr5CM19dc-k{sol;kS@9wit*J>81?klsnj?K73NmK2Q zjphbx4d+i|YL^mfpv9XVQscjcW+mn5cK=`pS7d>fU$#Nx7UOqAAFl0;jvLqi)$DKU zS`2j=d{>rCcZQUv2H2&3@LjpVK&p3l+!EG8t4X7yl_lA3D6-6SU}K?kAb0IHIS@+K zM|8C_hZ4GLc?;!a78?8gnKo+a*4e+9b#yW>a;=@WLgzrzB^E1M6+aHL=`ofK>I39jybomY!6I?xWG3t=aq>!$3=~qFFthh3j(|MNT5vLk@U4x zlLdVepZK)u(h(F}l7i%(Ci+cH|~Z1BLo z!P#b45@5Ncv*N?;hU;zK9fl>JJ3+@!?f;~~hkR>U_HAviRg9DNAInXGcv1Qm&()Th zi$c}sGg%`h$8X;`U*S5kXyvN+qEqql#NvH3>i)jFPrUd!=mpNT`WV3tpX`?$x;t*p6lO%A!i-Dr=bkX3gWUP$+shAr-L6~!-0bgMe$=Z z)1hEkv97@1MV0;IZtB-*R|ZQW2r&?rz@XoT*A2BCs}+oQo~p9W3w$B z(!$;9APC9mC6}A-tIgU!9b)}z=YH*5(>E;Dx3tfCl!m*j*w)xo;U30-UXuWDjX^hy zyXzMZYx>i@Eld=SvEXdXiYi;FpBE{S#W+;IC_zggp#+A zt$-3X+>`0XrywJr-4@;Er$>~8G8>8Ar`n&*r}3~f+A;zLVN~o$s%>UIyE*Z!hgJ*1 zmYmbLI@t3X9G?HNRDw@#=5z5SF_>=hsFL0!=!%%AqZM&+jvE&T?qTG9Lb}Q~hP^}J ziENcO+4al+!vv86}fluEJFp*tmEta1Xk7F5u;d$_Ln)ivR{FI5mZjwq-Dymg~D z#&M&Qq;9pQEu7EGvWx#@@=|^wtbih4KGC=IpU3I%2tJcZno<+YMdofgkXM6?9z`x% z0pj@FRXZRX75j|4Ya`(pz;KVTeFFUW?yBg<88VZZbeQpz45e1_-I5~-`l4~1hF|#0 z{}6u)uyJ1hY`Wj-g<@*e%oNi?&nKFETh1_nw zx7Aa;z8x^JJb7!lU~mI%$q2sX%~`tPAV6E7$VK509S7Xa!rnT^kS(Is{m}$0K~=9K z77n#@=q|?I(rpt8mJ!dLB^`OGzblkprXEpjyCo|C8nSZAsff5MGPB` ziLhZ(=k;$2npq(Z+t>f*5O`{dk2CArZIrg!aO;Joiu?4>BHh{fh0{Bzy;7}g0NxxG zzi5u2{P12p<=hRg(eKL*!~%aKvPG*gf*!bIin5{GRx28fl*Ng=77N!`cR?I~qKA?% z$Eoo*vkmy6di5RyE8}Z&Hte;f$xpU2!g&Y{tNa(c;pH36*SL*Kd3Is%+UktzV1 zCFsJ9@Wk_Ya22%J?hN%4(7}h;e9Br7kQ20AKC2aAhRMJ>O;UJ-uvGx@d}6`Vc|kYfn+ z&7)ABN(^AsFg3$BKDAW#ZbMB$wu!2niIBVjO zJQCU)m`L!L1oz~9zu*J~;5G=X#}FGHoFag1(aiNI)Q5tuTz2V8dbM1;XdG^j5#|C+ z$B49g09h$#{6mGT6+jmtwIO5JsMa7Lz5f|0VBmHFR)0WVm?Eha<6IIzb!z%2Gh`*k z#CQy+K_CTy>@>)F0Kx?Mhdv|23P5EKD|v9-D#;`XwGv>N09yJ9%mrwe0JK#AX#z%? zf-|h9vlZ+V3>gFvvqPD7c=kO$lp!gs0a^wbmZ75Ot3YFt`riJmf`lDgibyO6L$#(9 zGNmf5PjCkQQYu5WNEJPMjIOT&jB$#ShVEs5763S?LYoahLxX@Vs^!HkOTluKXr^S| zNajUwm?}DXC)!x0<)nh7T;{{o+>d-1^@41~K%u z3FQf-6Gn4XKu$5xZZ++w29~PGcaN!%J-mWh(YsnprlQ*fGuEgX_s>!sNosHmbn+EV zs$hfzVNylRyY0DOKFCt=3TH`;K5(q#I^}I-V+3(9e4acg)xbPEpfkq3$eiPk0vF6{ zZwE1CK%?F^(zlK3h|zu&G#};D3Xm`hUgf(;Z9NjAM~ZT|@EBfStf@$$HRlAko&4I; zii8>Bb?=yf8_D4!NT&sB_%V?Dv8irHThk8OL!_1149xP{A&OQW$qC)W@IqOa2_T<5 zef?{DKpZ4h(}FYGP9v>W*%xMSAsAX){i>o^)$Wkk7_g%`_;%yNoHh%bGQ#YTlTb7h zvF&M3CC(d>)ZU(!?}=^U9zMwV+w-q2w z<6r;%DBv9i?f1>hyC0jF^NWPXpFn}`mrs3#4P(kQn?Z9881)6rkwepxjs;nrPBD$a zs+z`OXnI)Nz=5mMFjw+qd?R?Wr^+;!Vu)TAf4s8Wp{)*SXh%9cNlujpaebL5i#hS! zBKD-Qkp4s-@QNBP&=SO58kI1Po_PYK$*$bLpvF64Um?7@x85wfuQSbG9KAE`fS^-J@ zyRG-(JfG68iDCdL=%FiP7<2C+tK)7vt5ov~Hlev^PvWf@Z@#^)o%C)Drq7E3pjYj0w7fe*xZ-99oiMGZ~)Yck|kd zkXadM3oyHeSCYg7H0<;UKWA73a+DNNcdHTQ~Rk@f!10_<#H0TRvkyBN|T5) zqcmm?#t}qQj8Ubl6*mt6(``>5%~Tf1==L#E61{QvIwfF}vW0{w^Jw6W+XrSp2+taI z+6Kq2A&`TPN(I5Bkhj}Pga0_szMBoDsmqV=y7OIijn-bboru|+5&55NaUHv8?>LN^J+*afca}tWCj+J64=# zKDbLz9yzq;!_ZMysT**8 zlN0v=0IL0Oa@f!YMYHP>?s5gP8V7os+0MU?BA5O<(F{XTkC?S}S@#}ci^oEp#=`fH VMI?_2tH%!iG!|X0L!kf;{{#8$%9{WH diff --git a/dist/construct/images/items/os28073.gif b/dist/construct/images/items/os28073.gif deleted file mode 100644 index d37ef0c6d4bf46e37346b15b9051ecdee24d85b7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3271 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 F06UiFxjg^? diff --git a/dist/construct/images/items/os28074.gif b/dist/construct/images/items/os28074.gif deleted file mode 100644 index 1c1ff9bd154634e3407e4828c2f82f2622d4fd22..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4160 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 diff --git a/dist/construct/images/items/os28075.gif b/dist/construct/images/items/os28075.gif deleted file mode 100644 index 33a264e55b90876e752f4e89f02892a4fb233fe1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3630 zcmWlaXFyX2!-em?3CYbOml>84!bXrV1q97N2pHL57(zghr5H9U;te4XR4|OH^PIq-059+45}*nA3IHoBD-(Bb z9#8XY*~J|^UTkM+y3W(KX(=e z4R$v6RHt44p+s6y`AcPFd6dVC@u#H`ju*=!B+*V4+k-N-}rz^R^3Wi&FCW4ozu(A3l7jN%TJ7RNW>D5X7bRcAw+B82;z- z$&SvhlNlS*xK{E+?^BtqV|h_9fl!z1{bOYo4usOlakS)mxTTM)8jXT(uq~< zv%4@mD?5^_$PMY(6WUc0ygkr)7tfYvWD*$~k{`-6Fwo17*%%cSDH4?~e*f;c*1axu zLtJc3OHJv8GC^xWNJ)r&TRz`o&1ywXpq`%Y($Z3oJfF>CABtN?A(5yEwQXPA-(UYa zTfn=#FG#-4<#4#wgr z?+fci`7i;uu&|&|ocaF!d&h2W%c+h%dApaEmnT&h4~Xj!Dp~W}8-Hy47uAi_tZnX3_BKm zQo&U>%s;7jnYu6}tzE|EOuMN2O)n1Iob(#M^2hL2kNJ+i7gw<#hR9?uYxM2Cc&D(m z<@wI&%{-4Bmr5hmoAVPbc^?;jejNr*_Hih^^7EHU_r*X0Hp+=WKsK z9MVHF0|e(1>Q~j7Nk9H)r}oRNFCDuk{6_~rTI-qi=P<`eCB>{fs4I89_x_2HT$^!e(B*}D8^!zM z;n|1I^Qo=JH{3%Xhw9~+ajL)^cX6xb{+_8p^E5d#94&J}gW#pbL22fa@^=>b7xY!2 zF~zD5u$U;Jh2y@@=WZg*Kd`JY$ys#s_t^Db$u%B-5E*Dn?I7r2whBK7u98~K9Wkwo zjtp=}%NQ6*9=Bpi6`oJg5rc=;>MBcaBNAj@_FjD_>!ha|Z7~$y2%}IIR>B{dKm6}V zka;t2;!amX%9BcSg(f8c_tR>9kk-@Qn(p^yK_2X|AtM5pH5L-zW!_nW9%;O-tySm+n%DeOYFKYU@QgFQ$5=SUoP@Jb`r{-=l+8~i zljgf)6WXIQx^`?QMLi38(3c|BkLl(P`ostWhL(}h@Yz)2GkL2*cZ6GVC+1nz`XH>U8guXFRKK@5-16Lhe*DSJPg*?m3}uz1z|f-i?t$SF0Uc;N3G7w3T@w#&wcQII|#hcR*RA2^cfIHklcE7X+sP z9I`NkYe%VGrR?1=>t*YGRN#h^0X-IsHy(Hlvy>KwlSE5@SG71~oMnKK-=+b{kY2@h zl8x-F*{XVRAdd^|Mf+)2mEr*Ra?0c0z$Dy%<=MV0uvExqY*Nddc$zwM<&c|Q?1)>l zLMlMTFkdZW@sml11gx*T>vCF#O1f7L*lt8*P5{FsW>&|ER!?ve(eVQHAl`pgi!lHB zXt$9KcUqy9IgRRH*B9GbE46YH=)jW%7<#3`n>t$JlaPLWNC);*^&?M6>72s~bp0Dk zJYzvcgDh4cR)PxgYP98`j|ri|DJ(|)*6^?eG#|@X;On?%ZBvBEX>J`l4j_y65K*Yz zinRc}e-1imUxCq{g0W^AQ7ushw?W}}qR$-1PpQK0E3h&Hbb^xy^nrr_+cu90IFp6M z8oDHCZca+&3!CVpfVW?=#NRUo6Q7E4+`<$Sm*xQzyG`2e#;~4JOiA+q>FvOsGch1G z`hj>gmQK2Sf(7kJ!(dh4A^}G>si;Rx^L;F%dgT#q#s>@=k+5TN5n$p!s8U1F>5hP8 zueWP$Adb<7q5-d2e;-q@Vk^Wj8__uWhl1k~<1FB9k7MTbAe`PxlqPGVbw8oqBGzwu zJMh4rjjSFSCd^0cT%G1>+iX6V_QnlK5@P6dI!|^2V|1<2(VkZqs^gWflOD|})cTuy zVnPppKLP7Zo4O+$(rdRW@i!TA0LU8jc)ZYd-!+yvc>aslphj$L6@%t?8|> zn`f4zF+0J0Du<9MG)cQ?nmSVO?;3)q3N*B00@0Hu z&=ewRW;;myL@3OU(X!u3heBtL8zILyR2#xrS-#NNv7{W}i9<|%K{y3vA&yg#@>@bJ zf3)|+(PT*g{nfbf3Qb~nAh_0`a*@y_1nqHj(1?c`)yt$VKIAc%p7mtE9Uv*<8`!67 zX_z9yT^{MfQxFi}RWhKib|S?hTyg_1VA$f_A9_eXp({-4tdy($OeIEljsYF)y@0zN z3a^E4I*XXV$@>g=s8^DEzyvf*kK%^o_hTp( z7JqS$e76d5t`zW7pm3}`Ge-oezH??mN+5E%sCx4dN7ol`?-hmOD69c3$yezL2?;Nb z9b$YrRMoLT&N}pFJ$pug4(Z{5nm>~`gw0hm7+)o%g*}aTL`q~D!qeiiYhNOt39%VW zG7-V8Rbg%+xJC~^tAv1Gh;&x(qs%~59`=@oa7VuPdOBemh+NmI^^&&NSA%Uwa`o-V z4T|D0>ri72*rNc68Yl$Sa{h`{({TeLJRbo@Y(t;YF>^}D79jlpFovkY$WT}fQ2z1C zHdV@#0?J_#W{HMN)?hLK-wn4KNQNIv}x1n#HC`$NCWN8 zAl?#UWI}1Z2=BwHID8Z`DS_I75`P6Cn8hx$4)WC)Yd8XCk`9fRCd$CPW0WEl_930T zO6WuX0UtD8Ny#AEil7kS@N*IVmXIp&;-6O>yruwbHI=qqI15MTM=1R4TyUe7g1R z_5zDI;v2SA_4w*s?JD?**46W!#b0H(x{08Fdk@PFPCfXK9Zd@`0U!qGeHnZ^yS c-VN@t4W4@%yhz6ze6Bb6K5y_eMu7GI1Loeq0RR91 diff --git a/dist/construct/images/items/os28076.gif b/dist/construct/images/items/os28076.gif deleted file mode 100644 index 870e6d88d4d1ad72c8abb676c0cfcea61332189f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4059 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 b;hMC=gF|0_wrS(u=7=NBQC%J&2zdMt{|t}P diff --git a/dist/construct/images/items/os28077.gif b/dist/construct/images/items/os28077.gif deleted file mode 100644 index 3ac46d4c9f1a611a58a25780e00d4590f8ff8481..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14856 zcmWlfc|4Tu_s8%1o_#UKKC(21>@;L8%V02;H1^#y_DN`xq*C28W^ADm6(xb%mF0RRizyaVp0941BE-fu- zJ4L;{kj2d0zd199ZfUV1DF0xZwTXWg)|3e$kY!=Z>?3zP?5OA}+xYb1Q-ZPUR)4M6 zGp{V!JCK^@kLv?k57hUF!X0QjZpnK~3b(%Mj0bTV=L<7S(;_F^a&J{^zFC@esja;v z*1y(L>p*F_F9mU_(BWp!C6~m?$s3o_o$y=JVz0C`#CSWbiWNOO7WVSVly^#Xgcxm{Ms96strT21ToLC;DK9E+tUX*5>9T*v7BjEJmuD)2 zn9Sl0DX&gO<_9{a`({THZRZqC!89EB?sR;Ci^ly1 zZr&QgV$VN2!Yx7K^8Ky76vGwq>jD-&ylcw$qU)=VS9=H2DN)ws@BIbc`8M&X+c&UX zrjM;1zuHk=R#&wtdcHIA?eq)9{o4g*xVCtzcam`N%f}*Pjh=pacUHuk`Gu*MZ~Fc* zSRKA0DEEk}UHI(2%ydh&QE|ZS`%hoA#^bEk{R^)S+fa68&+c6apCWizj~x+_SQ7dwX$&pyrOw;*BPnN4L2niKutdeJracrds)+H@|wuw2+;WpK)(; z+5XdUGPR-xG2I=!jlU4&9-T3IA`}4$mw6OGQ@!DtV-1;~y3HkKKI-v*lD-fgy!2~e z)Yw~u6<1D3C4S`(DThB*G;OTFp0sN&X)Jd$4VEd@@0qj$~{%~0&L!Zi<7JmW0OGC zc%EzA!Yl)md;4(oEb=~#>$VxYr|PZU3pdRo%wG;IAKS@BZ!zYX)ceDzegpm9gtL>V zstcN!7275qbkh$!8Z^v2vc;)3Mu+QFs*?X`A7b~)?&%UIftwhI+eoGr3yv;?4(Kj* zM+B-pFB-rZMb}HgP0J230xWck?yI^#@2UAuZ&ob1VI+*W)L&sSzYs*7O$$RC8MoN= zV+$rXp|sPPUO1!rP&At2+|VAr!$)mJ%QnYKw%^Ltb7D}F(CxLCrpHwau1l}`Jmj1w zUrISF@F;7&=gFJl1l6z8WRIYPAU)O^1$-k?#&}AS(S+NkJp< z3i&_GZsw*NYsusR%<`X_VGK3bBK23!+kxpQP-x(v_Ua2W-F)88|<78!OdwWt6GR=>(tSTti5Ty^Hb>anfx&!37!3T3+N=9o{{o2Va zf=yZArxD#Eb}pg9t$9E%xtBhocdb`CWDsk9f0=eg(fyHySDKP!!|mq(FrE!xxh!+m z3UhF|En04?YP6$Let+7T9C*2B&&L=2=+Z_zzG`Np-J`2SRa9N(0UH&sG0szRWkR&o zuK@J!9xtl7Un!&0mat)QfWX^?u>{&tF_SWl4gkk;=tsw4k**_~%FMGFs-(-0&Gu=b z){Qg+PKz>HjFXFcoflybHGEpC?&_Krl(1etVtAUWYEzbM#v%KtEM-AwTI^Ij{9^CX zXQnTouo2`0hDE7OC@|Y*Ug!}d{nk$zrM7PssFheBG?Ch?#{}(Pjd*L%v0(-_#i+{i zhQ?z_i`xBEgcXIq3@<&W^0_kfFdd(L$$v);NWfV4Sc^I^d ziJSWC$b3z9o<|>?LVA`4`-qM4xB2X+A28+}X$EJ|GOye>aqpXph_P(^gg(bwV!&QFL@EH{v}O+0LUjH*oLHejYW`#qajXI`C01c7TXtv4fxuTGp; zyZ=B)No2{{=)!s0rvTB-Z#I~%g22 zz5(SPcwlTpD_~pkSVq&{R4lAiKziKa$h;p3>An^uRx)$~fkqOTZp+@!kWkIEMru0@u7KR!!s7wr-0hdOqZXC$9pr zGsf2vCK>4LO{I>)xBDMl;cLgi&sJ-k=Gln-n>5z02UA|)j?b66y=+GHC9hB|v*!a- z+|mNEM2+@`0rtL~5h=9@s71KV-~Gz6krzbbD(g4qK5v&P(@4?O&Sl*1Rd$E(7;I^~ zq4o3|(zh|j;#15Z`V0T#>ZRnX^C+Evz9!fjSW{ywdSuIKUrHQ%IohAfK0o@ogI}Y_ zRe4oUUb&WxwXWo}&Mff;XkxuHO$^5J_736!-{=>Ok`MV7u85sYvKJ`xX2qK={w_;K z=yRGc=awi#r{3uU{?6X%pJLubt8D@EIA=Ga>C-2h*}~sxR6MXQTr)|_bTb>GM4Jn7 z_YV|sHbJDHFd(|UGuOlX(rf~G4{=5#VEM=kD3k4@nKhi{4jg&&VZ`4f*o%-M7w84A zJCmuRmVM&CNw`$}KJCN+A*9GBEutgS;@iGbLOpfmbN2a1d?Sn_x!W%La;WC0^n2l> zAYyxueXsq1#@RbaB01)$KE8Rgi+Re!omR5@#`k`|!Z7YWAL)OxQrzME$<_9}V{DVh zZzyS}u_TCdbqVLfzdC-{UDbBm&c_5bjQe0(|M3q2qBFqnLluvEGNr^;Q-D9QC;8dQ zjEyoy5t6bkdEc5w8NtC`zwn&H8IGl+Ji6UjV$7F>*yYog`O#((X!Fz)$Q{>H7ST(wB; z6bLN^{)pLnZ0si``V?ACdl9W`j!B_Ip=E2-UZR5}Xuo3L61QV+C+40)=I08Ku z8SbFAn@mL)kwZS9L1PYdQxkPE3jaAh&MOAaA(zFe8T+@R$L;lpzpHY9NOg^}u_zDh52S&fi*Cc9d z?!ur0m>Qd1z@KpLe64PC^7iu#OnnbN@&A^eD?u+vTuRAhx;#v>7`0o9G-Vhs)fZUw5$YJ2XohFUfWV%Iwg*@GXck#W zR8@^j6T}d`7PDHqQZ)v!cdZTnkKHp)I;G`hBQC!XzVX5!##S0^sTsCT2fIL~Sjb6Y zm{4#QtrG!g%m$?^+z)1uY$`_1>o+O7w3E%WjE zH&I-wZtw8!*BOSdU*tMcnVaD(dj-y5sTQ-2fr(Qh|0qgN-^@RU+rLhN`4yQ&M~0!< z$fG=eTP3)AFxZ(6Im*=>rI;T`wXJeOAudNR9V%s;+w#B{7r_+9WVA3nsBC6vBd&ptZ!$X17W3bmLp*W?=dC4Br zxXhlGI8<`#6>ZdU^Y|6VF+VPQH;8f0bl2rCaHbqYj$+F-9&Lt~H`V474SSd}(wQ|( z&7pu87iO68A!A0s`=#?MVz*=6wl@8T>(O(p% zN7;B3+v>l~*zJz(3p{Lz7(Ai$EaB0%McLw-eSj#mh}v<~NOxBAz!zs`t#@&)CbKq8 zd)Lsi)eKb&S$;P_bngLp48rckI@xE;c6yGp;@CQR#u6R0Eg|a2ZQe`47sq^d<$>u+ zD1dFJ%RxNPJGFDQZB{sXrEhLSUCHB{t}~2)t2N1#0`&e#m;af2p(Te9v6%@nT-QY~ z|63`!2Fx-|S~s|wK8TCp6&7(=t1?`t^GcV)1UCH?V8Z+I({KNDxib%c*u-Stf``fj zii3;x`=!mfDKho+mwOWrf%()^d|sgjfcXLtM|z};`sEin02)4tVgtL4Ro&OGyCY5- zq|^3Lvk3>yg;K1^VZ@bBkex#|2Nmi%Q(hZ;&IkadO z$fjO2RVMBD7P(CdE*E2DmRlV|JAIA!Y=cG57OXypVr2}h6zTm(u38NM>N046oq3n4 zdVpj9LRy51$#a%suP^R(FRyJrc-0hv24$H4&0uU4enmr>Q*Y7N{wC2rMDmgXT}lnz z<`iml7*i@IY!@fj^H%^qAM6!e9bjJZ%q$O2=qqn7JEU= ze_!vw#!?B5JhfWkj`zh`?~8Le@H+c8^oCGGyX5*NDe@c{Z06vqr8uw?7c4_Qr;8os zSzj2qyS%-I5)~R5caVp>T;OzRJ)f;qK>=-!a!3b<(PN`8n=MF=qi5w^rY#4@maBBtJ)&>DzBGcbqcSFI&D zYZ=;PRkYwRKeBhv^usQX48%$XW{-43E*Zs}MbzEGtX5#$$u6NB(rzjGB236;6EZkx ziu6Xh66n{*j{B3`$I%8bR!xEoB;)TXiM#cYXX)rv9x9!#5++7Qh>;Ft^w$OiTYT4y zw=7$VJ0rPy=nkaLA*@&xp)0|P8IUoox_fa?L8|j~-)6KFeQ1BJGaVeEBDTCDVF6%H zb~RgpCBnclj>;9Koa_!D0O;Bsd=eFlNd<5`qOLM_oD~#&yL%&im;D1B%YYv6pfEAP zj6=|l9L3VHZ>(k3OLBae6j=Vr^Awxd!h>QYC+=KAuG@33qXpAQ7xnx$(i5X8%B$@c zpnrQ&SEaZ)I;xhAJ53%_?|P{2j+>C8GN|}IfVhc_o@JAE%CUxWb`@_TSc;$Q#eY{~ z4e2X*T_eRDLNcs^N_?>E2*L3PNDwdgWgu2iaoG%fgAC=hxThuEc{^u(*o<(L1L*jo zh}WPuj;d58(5FOQTD8` zfp{PT#B>$$U;Wlv>cYS^HUUcoZzn$J65l*zjdG=1hEc&IY>3DvR>?44iv`T3DW?X? z_OB69Uu3{B$)olQ7*znOAtT(`7%ClQCq?PYA6Ck+`V#y}IxbuWR!SeAo`NzY1ogXM z1{-rmiM^o228#)oW$0ot=)egL;DjC(FW&$F=ce%LGT;;gaYKr?Rw$fyLJs87<80`N z9CuuXo=b#l5|^)DPg*U(Hu8#^{Z)7Rpf12r6EAMyZz)jV<7N0uR4{`_7-u{`aShem z`~3LM=laygAtVU-?6E!obprTF4k{^0-g6h7V*3h!fx|EWT7w3oe;pKBL055LAcEP% z6+GyK7-^9NoucCb1`&jbyWSP;)PK~-m}}%spIVAqcPk8QCBO`&ww6kq;E^)ukB`59{^$Mkeg(dD6gwdU!%0vs2VE&eb%(smV5t0~L`_QH zO~MdX24sx_vJk{GHZ)5`g~WGQv&<+Q~k4 zdY~p0AN}Nn3XIVGiY+e+MI$)KJ~p7tC3ZD zTw|#8%RhFIl?OSf({x~hjQC@#q;gcWmC8%Ng6eaGyAtINL*`P#6AqEG66|6iPO#_Q zk032=KD8*ZS0%XIrm0ghWd1$iAH{eLCK|5uEB&=C)lYT1ILV%j0~F|A0E8eTh-^R= zhPveVYt_&tnQFiCW6($ZH4gCo-><(pAeMu+qGB`XU*nZu|M`O&2fii$^DFS#yQ@;t zU#K}momW?UZxIupiSb)Ws2jVG#~28Uf9JdC_+l~g89ZZqFMqGper303KFr9kLxe7o zZ=vT=SRT$6fX1bSE+uqOiS44RWL{Uf#Cdp9hK<=tA}H~vl^_4u-~o;O1?F3h<&B%O0>Ump zzE-lejn4k_C;Eol+Y60Ha^zks){Wv+nGfw&iI(B5fYF@oH_&<&IhWcxQU*t~94)t+ zu1#@3MG`&Hw9vOVxay_g1UvRTx<7Dl{A7V$;lqPfNT)MEw)a^Q$`Sca`Sa!L+d588 zm+NEtE}ooJTkjtz-rhjCb%*7&`K5l;V+S2w^5WnVWeYlF>n+kwwH3FPEny;S+ln5U zyx8-BlKcGR{n<++8I zk~C=Buyto6&b}f5am}x6NP#mP4?@%2ur?sDx()eP6#A;U(50s0SY~ruHT@2~6O&5( zq0sW0o1}^~zwy95KH0pqDt~|joUu{d7a<6p^bDeiRnR`l*yE; zUA!?wwc96lznW%29~DU^Po^J9`X3Kjrn|H@QbP^#UR!(#Z~aFerh`*I$!6$tiXVroVu8 zx?Pr3dH|E@(IiT9h5-?Q@WS$k|8ykc0W5%MO-vLM6ouMaR5?^tV(SIx*mxD0G@Bb)3mLqc~qDe--FaP z*{>SZ5!1XZM1Q?6grfiwRUg{={xast>q1ib(Xx~jo8Ln>4tQmOt&InDCug+@(wpYx zUfW%~)9pa47Wfn7@No%YV|_;&{}PbbP3i9p#Um&k2wrW?q@inhiO2I_R|Jfl_DS7@ zLU%}E6ZSyX1ZR}0Okg?v20ExnwmAV67tfO?>Ul4i%px*15SE<-v<4nz zv1IZBsXkIh&a0`|60_DQYEoF&c#w``jG-;eTXh&ZSF%AseQUi)2eANOiZ~he=8(6| zrbp)9T3Mn0t`5C2)L-@`KvwUtm~6{ZmU(bsE$X5%mb_j_hP{ywX8Ii7u}gPwp~C?z zi14>Ur?No2H{*tj^Ua&J6SN~HUl3!wltB5{O3Y4k|4U5@$P3$#C02S7N7WItingq4 z_G9IyYVxgTKO9h=8`AD%o2LGct+B2UrFuw)_k{Aqqj%=~?8rDR4*~MB>=iC>dswQ8 z7v7vZVp~5F@H&!IVND;@fBfU}kssOd#Vi3WPElgdGPWcm9KW8HVoNNo+LFc$yxJxD z$J9K6121LN>YF)4UXq20k!Q2+d{_R}Nq6 zA|u%kICJ9BikgyZcf5k8pwQS>zUloh*8UVPozEL7Yo2Q~*Ok&1b>BSZ^`QnAmR}$bbzJg3`m``^ARHSTn_C+}%H>buZC-7B zq(r{PHDkKW1>j>2_JM#(3FY>oA4>rYbMwC@H%yn#6~DjQ3%HJ~MXvaKV0d&)f3o5O zk*fEB0VT{(F%gp(3PYI~QKaWAF}#!)JbG`o&}K#YP^y(af6t1SFSWb@nAXq38K<2> zp~U`%6Ji|O?WNj(EgNmo!)n?LP;Z+W)V%OE0B5ZlXT{OjwCNjS+9_H80hejAPmcBf zavZykj){1McMp(JA7))Z9 zvcxj-y5G%qj%VGfyJ@(f=h)AOwq_uI&uZB+(1#&Lf)y0?uDDF7V=phmJWU3B>IJ#u zHdF5|{&7ld4vM~Vtg)xPw|7N(?L3!`9WGP|dm#l=WpsH8NOH{NKWhWbEtqp8Lw>&cJ9S)m3 zd*zaBbhvxEaFNr?vujURY+8kNL7jO7mG-X$Zw0+*U*fN-c=>cfxqYeP1QK} zY#*SbK;OHHlfP?hyiyvhg!EZR<3gAd14r{jinE$J3l1CLBfDO<=X+iL6Hkg@R7O$g zTYccwa3x+^YRM3KO2Heq1v*#+f)2!Xz$8X(blGZ}RdZn~uvS*GQf6b3T)f#EzWc6M zjR+$?FYnwS@ZdsA`ZB)sehEh*7AIGWQ-y8zm!7;c^GG0h%$ObjDTq9OJYhsceT)p1 zl|*;ITo!E5A+QAm_`fhfEW-9MEro*U9^rMKi+2$5*JZ*r1`wiNxneso=HjD9Zym*f zU29A*u#e}VQc&hYItLIKSD&1^t~c)+A5s11s@L)Ul8y($1bSN(g&4Xh05xHR3yfv~ ze~}Bd3}6249&tweN~!&`FYyCHc4e#pPx9t}O zyga%CrUp!qRF+yTVC7P}S_*@eKxw6)Nd(L;EMfPsV$BVWSoOKLZf%(qWd>-NQi(rb z5Om0%1x%my8*Xmm6#KDO?q;1?-Z6Zh?c6vXfH%Ihi)l%(U30Ax6qy)>57=3;kv{Ce z7y!x)E=7{z4KhR^LugwD1PW1z7>t!vuw}$X{8V_`n&`9HFx&hlGk*A7_HblcKq2yw z2@HP=TuJWmKhHQCIOhL&I$+Y`WZkK{Yu%b&-N%Pko!B=B^dq4qw@E&?5{;S@u%)F~ zSQOC7yv1T_mW5Q5g=m_$J3JEYD?%mIqZ}w}8@Yo0^ZH#^OEnY-;v{nLL5U9p{?miX z8o7Z#f9=9&ugg!Mr``8{nhc5d34RGwv*?KaP5{**K(hXRwt!YJkRSlP>V)xSfR#ig zy9fWaE~GZ!5X}+LCH;2F(Zj&K{m3InZi#}(C{F=3cag#H~UE5`CCM8l6)*8b`Y z)$3ZP$pQbDX1+=T3I#;pO~9Z+cDW|t#$XTU%V|6|wzX=jw?bDzN5Z7?0l z_B6kPg-f|G2Gs#D*#az&9oWl6N=nj$Y4}9UUXvS^7lfpqh@cU)<);wx4U4RJw5ba+ z#pOXc1R58jEG4BVvB1%rzmkDUW?+)J*1x;M&xATZZ7G?rJ(V6%yF~^sJ%x~*`&e1A zv9H{=1E5L<@v>sPvN*ml0zZZP**s3GKS+v+aC0g7Ff$%e9mNUNJG0E!rZ^s{j2mpR=Z+K<5UqnYlxM0$&;Powj$i$EsN*I+J zqc=jz>Jh!|4MdV#mo_BAyLjxJ2mz9UIAu<9kZ5 z0Hn7Vyt6gR=e%fJ`D4sArrR6@mX+9zU{rlqkQ05go>+J)j%u-DS1F56_9Bq=(V8Rw z9(riH?{WOUv-eW7-DI=tzRh8y_wTjnD8}SWo=gv+nnT;ANGf@J{g>jkF~!@uCW&*U z*<0kTs3$2^aQ@uH*cZ!)Ksw3_lYs^PVm-E`*j9=>TPt#k*^8esxxIO{>7n~aSFp4x z!sn}3EosV1>elLnDiVqlqhe#C{`!g zwZhv=UadQn$cIPFiDeK|(r;T2;tPXgB?2NvxO+;NC>zDM-no6J>t~-;wFH|D@XcjF zaz`<`%Woz<3PryUb_q7eU_8qN%$;oCR%TESljs!X2A7h)hIo8Bd2icr(`BJUy?Iob zFnbaVih*rAgxeW{!9m2|;3BZa(NtpATFTwQkO9ePcx>rbKp|2hRKw3%g61JYNONH=K z3|N-BgCVq}M#PFy!>y&X5g;MP!!*Xj2|FXB`}QwFLOKFD2bd&9Sw;cH*U$mo$QW^o zZ$=E24ND^h$SrrI7hbYE&>uC0>B@#khdy%Q?T3znqRYr6G7uCg*v`V>8G?LiDH1En zXO*HSXAvE#h4Q4VmVT0Xd9p38@;$Jf_t?C$f5!1yde^g{CO?b_HRKrM?=iZTBw{m! z`D`fl1_#AJrYlGPp`??)HIkK(=TDGbrf19(>cg5rSkZQBF@h>UO8`7PRN4qqs1St> zs>lH?&NP>aWQtz|Wyb_`0$FV{@3cmlqLihQHt+PR5`#%FE(EshfOfD-b8O|1Xxe%r zX$Kbb(WK-r&{bM{YNeHKlfebMnjKjp4e9;-4x|YKGNVE&Fo*}Z6c@A!6*7TA3KuYO zDbbY!$8%x-Zj4JwsabAJY12%0;^bg!Qfp+K+uU5H8!)H|m}mmI+HX370cQQQwI8z1 zaBZ9tIFKta3Gyu9U@!`P9SS7&6q``_)?yKwjFFW5)d|?0n*~t;ip$&MQ6PTtb*dar z2!S(a<}4}kCktjOa=Cs7(psyYnmUEJiAT7~IRnL<0TrT+%(AJ1nQn}=QxsT+`q(1c z;MIC%2rO7MUQ#oE$Qlt@W5EDAj3i?qHh=d7Jd>2oW##gt_&2`2d40N6mz}HSQo?Nk z{JTrXtI?v6aihqTw-?@)*!*iC0qo_OExB-}i69mJIFSppS-=kYvy{lvahss0hL{5( z_BrrC)=hIVM-)dvs&YzA3k8;B3=JgD%4(*$67>BGRkAHIF~aHq*{Nw<0i zB~Ix=3pR8J45Y6G86SxM%W)oFlyYa1VVeXqK&>r~CGvhjqe%QXqEAjw#zMA!S$Qeya4h)~^ciR}dd$2kr zXG`Y$MZ>J5m0vFmy|jffDJz4v#_-dI`7isC7)im)em=PakwYz6`af zMu7mooXej8tiNY!kvH#tmR{QqC**!VnG}`!0W%Z{c!@Ue^b_#R5KW|omTzxT<++O? zr5CgT&cw&DI#8AU&DlEd%8<}`5LD&Xhtv4$xXG67pW)F$Xflt-`Os!NH$SS>-pJo`0Vq|zb29%e|UCIADu(rUiuwQ zj|nI>16eUQOwCIpWW~A+NJYle^@mjcgFB-^%2H;_ho6fXIZ3u#erb>Y<8hyvxLIpA z+s)-Yf{NH{hOnQ^n;>x~GNz9VXAaiAbuo-*c={~G@jz9Ur!1~y2h~>o8TN}Qd1+ay zFZnXOF_$O%or}RxVzPOKyDo1Pz||l1*1at%*jPHBz5~XbEclulHGx9EYl!{;kA9`7 z&PhyxiPM-OkCKS3!CnTh&&`xLh>_kHY%pXuRVzee|uNX2}KaK zkP*}|X{ZRTwJJhJJ(fIFnX00$&y~Yi5dt@lgWDNiLadgy^&IAuH?lDDRC?nXO z#mvnHiUF{0IKqi##$f2UISbo69AmhdE!X4Zh7sh5|?yGRS?ee~+nT4!p;#-w{=@@7L|^<)Q5x$oO*rzU4t> z_F0wBu!+&Qses|~^g)@)+CpA2(FXu;Z+bI65aIjZUGkK#wqrY_#*)#C!)>=*QV*(b z-Wr}h3~o{h^|P35$Yg1n-X}gi!6SlC)y7gIaa4hpArukLiFw*m6OjA3P|n0cQ>$36 zvtkVyGAN%DfWnRYEU85p^NkZ(I-+l}+{bp`_6452$!v;poo#uR&ahznLcaVq0X~fl zAap~NESeapf4ncq{PY3FhX06tX)*SLqH@m*+hkO)Vv_~P21G7skjpAvO&tCrj*ha> z7uW$%U@8$5xDVCIf+HtWAEdd&rs&q=<=pXVs_trYmt#3~p%ILe<5O9QG7V~U-7XPv z&4t!Tz5TSmp?1yZsmVN7`-*`GO){Y3A7uA>&_Cz|5Abg`m^hxbv)T-fa(OZC<>`^G ztrE&2t634p)WkJt!PmuUVyLe#GV;yugENj^iq!YfgRF*l?7neR9PYbV+1JBmhw*_o zci2leiSmdUBx=2Bka~5dpg=QNbi(98W9*N^8Z!HSpVUzQP{zKp-EBDYa_)yylwUFdM2l^{JP2F3Kcxs7X;;Ps)zNFoF^eIe9@Q;xzE)fh5s!Bu!mSW~QEf zh;q~qDV#Z7Zr5BO1K*7Af(s!gV()V`&g9+|UT>1>BqwUI>V6`>3lRu|mj|OC26EC> zmmS#QTZthwXeGFcJ2&-3bM=cy9?K^;-zBj#yT1gSs4!Wst|{$~d4DRhdB^i>e)1)7 z>3})I<;4iK<2vP5Ovquc!#&~Z+^!+R`|kumU9$TbX>pnfeUC}7lYpILgDvCf`WDF5 z_GFiubeWbOHG}K2hACw1a(%wMsS6%@w>CW(BBSRldh(=4^=-W=118& zq(;Vctm%Bpv`S?6L)Hte_{rm7Y0wlnM>$&|9@=tR8pgP%;2NA5$t9$n_aCxYTQk`DOp^lv4i#5^7pwmh-`<6WooWko<@{Z)0lg! zGh#IrqkiWWIz2w9ST)D&`?`w{uBrzS0!f79xzGnT6=#_}OF^clUf%F=;h1^VqdURJ z&gvF^!K;Cj!;mck>DJp)SPbi3L_gCzWgNYpS+ z`UiKR?j10s=;{w(sLZhPz-$u}|FiLa16--mNph5RP21@hjjF?wgBL-Hw+{0u>O!FP z7U9p@73*4ViOYs)6^Hf)HJvT~Wuc(#pRSL&S-}r-IT+ToLdN_Z6yQC!#UgrkRC0%P z)lp-=Dbe@jeluRBY`q`NOjDurAnnyF^8N{+@e3##5fy2T;?GlT7FMpk~ci}3pIp-UxKVtDLLjreD6wQ-;E zGR_5UyO-;ctH%3L2lk-U^-nC%wX7?!D zJ5B!|iVokx{=7w z{=$<~n-eXDyO7I@_+`EVlhx*;;X|@Mr0v1p7|4&FWFugE*IK8;?cAy^O_1y0ZA791F zh;)DQsLAT|bBI+=jgIHv>!e@5Po$CO*L;Q1H7XT1BiE;`R6}S&>vq)p>&6Atd6)bp zul&La8s$=Vf{TgF4)7MskM!w3@ca`V=@t%A4Ibpg__#lb{=1W(m#qSBejIzkiw$F0 z-wAL-B`qFqWIuBp6kH${Q_BSA8~}RCpvA6pnPaa=^H0{C%A|<;#8_R}Kj_QNMoOgl z7LYF#*|!vvP7E0|ApHhaSY=B({yT++DBP~`kR(>f5U+9#d0-`0KsBKdKLxCyBnQ{C zewU3&T3CcG=DWx~Gh7vfP0m*MkTq|ddl-S+#3bLmQ%-&2`_w??im-+;q!l$Wn-~qT zff|Dp6-$)>>VqJCQBZ>Zw&3u!ToFJ_jv<1mc^SzA5%_n>R(PcF?%`AP;H|v@HTvZc zV+y&JysQPGR(B}8PHhTxD~vI^d~}eVDC)i=*B?QziV%cS3>{i3GBy1w(huLZ2x7ZO zeKQ&dCyS%>eXOEV0eu9q3?bjI#u(c_sAZ7lK>c7nmC<+@k`1(s3{lM2nv-D{0BU%{ zx*OyFvj+R`wI$WgUU?u_-;nAZ9drD(k=F?|;TeC*wBblQzds#*g}qNgeHjkI ze_|X45{$f7yCEC^2+Tvi=P~b6*$s9fyWc_|3=|;-Qbkpn3aKwz_{C#Y!j8-<>m6k zqC2!iuhIMO_c&J72bTCcj~6Gp`;=#=tr%R(O%wh~JG?@-A}D(}@l7=@q;(>X2k^s}*$8FA^%mnz55v}_5eTa;lA;7kO_pIVPtvI^Xb(sPa+1Qq(2{U{^v zPN^fq$wA?15Dc}1BvH_8i>;pal!1(z1 zo0l*ArdV&BH~mr1jq2!#XzK|XF+oYeQ<6fx>yziE$A%=56c zA1^+-er;1|aB6@}kiuEpRNvE5=j`n4Xe)~gbd3u3ItRZu{<7 zPj_c|x^Hc4RN=B5>j|bS(qmW0I`#c{si9(BOmxJF(oJhqX5}RY9ZgRGKrlNgYWSbO zx35b-T~pOvotr()IYeQ9d0Tb9uV?d$>78|}tL7)(R4-eQ5S8aW?Zn14-4{6q8j$?E-GBRjaxs% z()`hbdl&ZAl&6RB1p;d`QQ1ai`uur?X^GWKv(7JDniA=Me%;z1E`48JUNS$zr!<@{ zE?AmmZg7{?>e8cS;Ohzj$GUpKHtU z#M4C&~6`!Ls9p2^Md zzfziYqki4jFP|SBR>t_)pV(bop6v3|naUrkb06%>=i&UtDYJF^H{Lq1c4TDaTKSR- z#gPTx9uFG}$HvA89yrI}sl8S?Hac36MrQ~51xm#T4=ZIexaA44J}!6alsFGMSFyB? zbx)ifz0!SZ!>afqhn*5#->S=>{f*+M!t@Wj*c20++$|VxOcvl zQ?g@YqhG&%4YU`ZS8ZK5JLK4!*`uRl^voHXXWQS^9Qisj#!M46v+R{sD-SPR_^&P@ z72VpmQT`bL{twsx)BigG;Nt*@+eT?M9i_OLOGb~jv9pqJh&dG1+SI+x(rej3PwUZ} zyU4H_+vs!0ZtZcNdphIRx#M^CQ`xrPd+$8mkK7vTxjk+YIUYI z?D7Y-mEv$N74P4*r&>HYmkVodHo0`l=F9;w8@e0dg)Qjm&vXX*ckEZEqz#3ahOG3o zuqraXTaoB#qf2Rexz9iZZ`<;7fKQLdjpd$Ev`)*1UwKl>7IO?TN3owE`~$Y3n;<$?3B19Q$L+ zGPg;d$y|-JoQ*hpT`p7aB8P}g4A;31nsRK5i+C9>pQ!VCQZJOH{o6M zg<0f<3lDdqMSx+4NcIlE&8jV*-Gy7xVZ#4{fsP5>?B^Ng_n>X}BDd;CP?eXZcWz_Y z>iked5>E6=(lQKkkaX%x6!PwCwDw`v{k_qYM+}Ylf;nN4(@Y;_)$IH}s;UFOH@ZPB znnOmG!3T(h2)p4ZdCX)}$KB68xG00pVu^Q_Q%D~{^G&njvf?JsBQjMJhuf~dg#Axv zJ%iH&NY&IGqM=vv!)#`!JkXB|JN$I&xMk;?3`H_c#NNN4A)L8labW3_#_<=k%g2F1?W zrjnJ=usBcPYNq~sS!{E60MIejIp?TL!J0T#B;aM49Y;x%LaH72+Y+T7Y2H8#yo&~I zxnJwLUgnYqeV|*z{j#eXx*lsvEDpX7311bCJnxVfDyDY}r>S_@*uEBx0Ilf7=#_N}S^{_rmq}4loDBNOqB{Z+p0$y`r_r%Y$1N6_zDN zn9mAjMfMvUaT+OXZjGEm&J11Ks|hN(F%>)O+5t;t*{d!7oNZ3y@(i{`VVX2fxFbp0}wXdV*sWu#cR}73jceEt+zVnJt~O%FzW5k#^s_10U#fAF@}y zT1nej*PeGDXy@lS)X&x~Ek=LSsNuw($+xAgcA>c$twmFw99|KO|CI;-VD@V)DUu~N zrzd>i$_c$n0@0z<`YuThPwleq!*$k@PYO<~E4riU&>aH!D_9+Pv$^!#_HzO`&Vkqf z=akl4OqruzcRt4#+#b$TW zK(QZYo-&9y_=Q-UQ&&iXykyIJ0FeqWw{In?QZh@dvxz8Q$0148T^h~)6PcvpDrSC6 zuxQ~ps*RC_kR8SR6qUfhpph>cWiPcAj(tkiw7h4V#quzZfR5@pbR!TPhq@~>%aZ(b zl0>W9)-QH*NWFnKlLmbI=^au<7#iB&A@Te}Z55|7GX!DQujF?#pFxoCFzs0WK@vyG z300Jix00wa@8_)k!8xD4q49DXCJW1`e-i3VaxEK7rCNAE1)NY`kM|C->B=cV$hZ7zL4@hr6czYJ1Gx@E z(*CMh-WGCLTn6x$F=3O!bF9j*99>Y1huPF5R44g?#D8=ZV(lQPFnpNug6I%HA^eSH zO()L~p?1w7VqVf9a+lRje#DgvU7sPHAyu}obbyt^h_3h z6;5F_mUi`L9P&bhilA1ti7srKngwkQgFG8eDKSG0Evu)25N(%eV6eo0fEMTEz4dYL zfLtv*zrQw&d2T1ce8)ccLjPRD_D~LSR9>{GceM*L^yaZ4-vl|wJqTx_{}`gtd2H;* z!#P!j&i(KlO_%xg<#lFcW3k<9cmQl`quLo$VUw+~0e5CJ)Q71IjXi+JM{D*`vM9J9eY1cU(WvImrbN3Es-_uBN2o zR@YTQTJWb+RXl#(KXf3aLLJ$oS07dJoQg4SeNHy7#GvxmlJ#*6fVsx&jznjsO4Xru z^Q(08ciF>9>mksuKO_)(SShW0_T(Su$lQ&@4q1*jDkmXyS%GRwPzPL3UaW}91f@N| zq&vPbeuzow)Sy7HpMWeRY-L`?S2$=`Cmt!tGD`^sSmTaq?&`|N$&KQ!$>oG|CiYXn zE5D_h7AJCBd|=l>t2u^_09V!CJS_))7}tdt2kFyo+cLsJ)i$$1 zG=C*$Wt*n`;RuN|3FWUWNL1om`*)QGXHlfV3bbi8e2Tlg?pb85@3)nuY_%^iycDmaR#Jv0Fy#)c~$fxZ(x5)nNxmrYu z5T$?10jU!2=*_k(Y`+s`w`KpvL2OasECVgo>F&$xO%RYeTrThb`ckpzbNl<>-sfHm z`eUj|iBEssf)FES`rni)^A?A9W!R?vMNikad$505u(YPUYNB|6#Fyd7=~}XoryB&6 zY}wttbNI6;-TN~hBjZpCEj)ue+2j%`8Lq**rsRl1>dR-Q6-1sZIs%Gt&{nW({Hxcq zaqSf3`4V{LFJ_O`6D$FcpwTCcaC0rOo0W8tTTfuT?Euzj^p~rFr%MWdtK53~=4Q`G zeijf(hX6SYDrn-z z1Mrh-;SYci>)`oRm7iBHUC^ewSEo`E75=X`k57?KAyx&~N^(d+2Mt$oxY>9XKHE~b zx?Y&{y4cK5xRe&9(3^(3O1BJG$}OQkY5wOWWflEq2N`rGOHU;cH(OPw8y7wa)+CD9Wk3@m9o2b z-DWz+;-~yE+kavwR>5i&_e* z_XEqdyQPhMMlbTwN{2YJT;tw_YIs{1++oBwzuD_V!!=ozmo~sbI?*KEHa>wnoQj%h zgd-h!m4L|`3W`)B_cYR4N|5AimT1Jq{y>NFpjf9~^k#1&Bk>(Rc%ByjNhR-kyaOWy zOC9s$-w-uAi9mz!0Q8GS*sT>zZv-dO_)Ya2->jupEAD1bRtX*CLJK$89uEy_G_;OIebfl1z`s!9 zIBUN2mFZ&|@u%Ultd!JOn395WmS3Vsc1)e~L4#c)>9BE9)TzZTu7k>mgK(o{FAMPW z;AIvSFhEWY@kzP=D|NcN$MmC$w-69~Gzuyp!LJ;mGQp=Q>0PM>yaIeV3q(>Vq88r- z&=>%=VmLsJPE=x%`V%8M$$A&!1qJ#TdCxR(fYDrGA~Ds9HCj>YTFG#O^UzfHpr@i8Z8&lZ_Bx0bbUDsifo?QAEjO*J{OL3TV=b zKNIj|r6@`%$}UHg6#vFX0@Pva37$2B9MXg48sr`W-UHB)7~-HFYzB~r8sHPH<@Lhr zjJ#T{G@h-#{FUmD;D(*6r1V4cg+;LtNFNAEUE@_Kwj8#C`aGI8~kp82DfIwurzQTgE?x1 z>nTwLP5i9}9U0h1c@9_Lm$hy2##4&M^D_y!Nz2b^h1$7gauSmai5-ksF)51IAnO@8 zbvcT1f@fjG3mWjC@VWrPU5_qSA`v=`bEbHW61YMB`;a8y2H{N-n4`@Wn}i@ru>)`p z)t#a>K>DU{-zr=Anc^@d&jZ+_P+$!@_#awqqyBgQ>abS_#TR3V0RpU{a4S6$$q81R z1_TT|WN3sF+V3kuy&A!MKpDiL{BWT?dkvtq?mCH;QfH-+IOyRRC30DhSiZH)C7}KL zL{qhkUoh>U8tEPuTLlq_lINzrjE4Zh2A-S7o;3$bDBc?Of^Z0Grtsrw1W`wf{u>iL z`i_LH^x_*)CJx*s0n;f_;PH&ef#!AVkqEYHiwS^gq%jBazjjKa=7>itkP#M>Uf7r|?e{SfG`DA+XgpvMYLMt_Vpcu*GkQ z#~L7D+`zl8hmR6c6ZXsigA{NA6hKxPd0+I0XLSgdaDrq8j06zIwlkW&N-=P}8U#G? zZao^Qz4Ao|CUXK0plep|(R;)(T6fE|@n6#z$^gM?Fj^}Z(4&WxXe50ZRbu5|q4WaT zK{d0Nf_@{wpEeODl%RXVcFKq)Fo=i2;;j-ZruYpTk*zj&9E)WG1}GX32Pmb@CBy(J z(W_BCceSKc@>(aJ7mBY_B3qTnCWg0|LNkq!$z7RV!*^GsW=!uV=JY`de4s{GQG$zq ziruKQD@ie>=PhR8u11Ni8bJ*=(GIcauMiC&pT?C!0VsK^)=@fXw+5Tf0$aD64JgwE z30IpLm}cPQ4C1j7Gp8Yx5=*ZVZb}|P;VbpLUyIEU1_2<^J3Sn%yed#Y>lk?DGBiKG zy-bZX>rMzLNUXSJ#UP1B=zXzSE)6xS#rEX=L}8ojR3ePwo2!wJBlAE#bSO=1s{`GC zB@Ft@APtl$d%SDK@!C@XdYGrgj%>y#j&LW65REWc*$EFyqFJ;)L%c5owxwHmjr>%D zS%gN20`Oi2yLtK)t(=I}f(ewMj6g^9Ee_f%J10sb7>r_&RO+6v0MFTEwo-$vNCTE^ zzU+3}$YHGl2LL|gGN4W84?Vd%q=#%Nfjf6>RVHr%117VmBLnU={4VMcJLn{Py@@hH zdNbzf2z8Psu*5$sQyCzJ0o-&gkgFdWf(MYIiRv4+jCiO4c}m)psliR)EsnUJR7 wd-mVbK8+lE!Pvb_obfVg;mhPLFH;V`OlyCc@%zh#V=q~|S6Oy45Cj7M2f`C*82|tP diff --git a/dist/construct/images/items/os28081.gif b/dist/construct/images/items/os28081.gif deleted file mode 100644 index 7a63d53e4d3dfbe867c4e39bddb9ef25ebfd0839..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7780 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 diff --git a/dist/construct/images/items/os28082.gif b/dist/construct/images/items/os28082.gif deleted file mode 100644 index 9d0fe5f3c04afe2b4a1c72112fa36989194846d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2925 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 PO>2I7kyitPz{-CCFH*z! diff --git a/dist/construct/images/items/os28084.gif b/dist/construct/images/items/os28084.gif deleted file mode 100644 index b59f9b454c80c386247707bf43e37ef756d87c1e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3536 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 A>Hq)$ diff --git a/dist/construct/images/items/os28085.gif b/dist/construct/images/items/os28085.gif deleted file mode 100644 index fb4ed006d7cbb13b5a3b38cef12d9117f2cfb120..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5093 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 z zXB;jANgrMSTVrYu(>a)SNCgci1NEkc%TgA^v-xFDyR@nWw6I6nq)Qe{fFFXITwNjS z0YEgz`w-Os&T6|lXWoVh`=o2JP=-O%|u+MPUNkZC=< zEaRc;D~<&tKhu{q$~~~SN40S5sqInc_$;cfF{F1-h4cIRSY;V)-g|E%KzFyADj2oe z>>v{pcPl9?=5V+^6w?18GMoFlqi_F-z?J=?%GK!bnM2FBIEcBGk-$fj3-f8jDXm2| zih(tEcaJgp2PC4`9iWqa|TBASTdfD;oa`}GH^ZeDuGiuTN5xSkF)R)^4 z?7m?l%<#&}fOT=5BJV-z(4oI1@Sb$q)*sh;KQtx~4TTBOJ}yQNIAXW#%J8kpexz4S zPQl?VHM`|pNRze+c%=S!v>%2R2|~7CURqO_^AFgTON{jV5yMIz(X&>-%%dn|Q}Vab zB3@z%$s^G``TT#Z7Y2b4r@WVRzwUo42G>FWfFT>Wo-_MWR`i(GY`zDz?!T{$=%l_X z2>JVR3p(by0ZX{f+JE(dtSsT{Ry@t?_0*O~G0aETLH!#FPWyAn@rf~(#9j4InC}iw z#z`3#?(JVwW=j|y$(J8o)SIQA>}GY;rSR_`cz`YK8WV{bGC7JicLLXYM9pALJWb>oPhs%C@ulRT=YSVw(436d>Yxr+$=7ymW(&W0&rrD;k z4u^JM6S;s+&Vhd=+Yc-CHQQ4|vC7;>%%=xyU83T$GScS^%KkjEtJc0>wEAx0v$21# z$J(qq@2R-w>J?+2cJHQVM2vXi-F5jRtY1QDVEhZ6-u$uUd$Ovx#J@E9J^$LuUs1(R#{WHQ++Wq=v>=t_o?w zk!3=|sVpJ6*~W|-$1)f*KXb>JF$UAm_x`gi0*E$OhH7xtNpS|8yIC8YOZ(q*o*6fjEB|=-lk7qaD zKV7clO9wjCF18nb-^<=Ux#9HJdCxA@kMI>g_Eq0GQ>i=2_UVDrw+xkvZc-oMd1bfJ4^QQ(G*S$iuYj&4!zTsQAD zxA?@?1WnG|!96R!ZAtF?D)rpXwn$vzdTRza1d-Iz$m)i5YIp)ft)%SWzdv~jbzbU?YxR7tj zy4qQE>0sfF?seC?O75NBbmM5*<-;Y%cjnzVw(&?)PH|@R$*O|kOAXw>1g%Y(U6mEWW`{~6TN~J#NM<;gCj`1j`%cS_ z4M>^iwvR?lN2!1Yl^*X_-yaUxwGQJ=cXmbr7utRqujmRrX|MAcbV$+->1)* ze_o&7zkmOke24c4_&EZA`~Q;gzf1tc1OO8@5xllvLzucQ8{!WPZk9Vn?TI+icDcdQ zJ7;X@MElk4iqLwS$exaC&C?RPmR;*Pcw-lpaeYtZ$wN24_Ah!hcJ1WhTl;B^#5U?w zXM7FOYS5r=`T0QZZ)1-q-#5#eoA>)~qngcK^sJSOBVP|D9^V&Oq56H*$rsbRBYNKI z`_DTsv2z86iQZ48FPC2^|KrIo8oxNZv(Vt%*FU#*?U_@G0)Xy$L25uT+UoIKrAV1m z`tK=^$+gqR0!v1p*e>j|%2-jxO2aJqn6Y!kW5G92V9{$T;z0oa+_4~)B$3A>>E4n}E-`>Fm0l#*e8n`~N@sBU(N6n3bjCwSUCFg!w z=@2@o^EOJBO~KPiLd+=~--Ee8JYK7RH4g|W!m>;kth(!Z-hj6;H48rR4-0SWemG>>-?w9meu4j+x|45w$2y$p zYjBq1w!qhcj=x^G(R+HkL(OkvqYi&IW)$xIkm^{OQVYx=rWvW7{`7~wE*iP;moE8B zpt?9+Vz0G?D(Br$$Hw_QZ@m+HxWHJ@IA6K6rqS7lome;&WbxNvR?yo(&4MxG-`CbT zcf1UVo_@;a>1IW3W^BCg>u27E{F{w+&XO-U|vWh8kVY18}3~fDL@Zt3r9<@6cg+kdgl*Cr1On7t4x-)H#->ebhn3 zzR$Do0Tg4f3SKZ}&fB3s8~yG%-7)Zc-O zGd76)_>tku+rJA`fL(0(tEzRg?=)3SI;pC0`8Tl+v#VZg&~U}C?+*i2#8aD5{i4No zx+>FYg3V9kDV0%96EON#e67v`Y+fV+L&=R{juYCje$+g3)d2 zs&|W*gt632y69cwIqyKj(o2wKWkiZMGO(S{JxzJ6ueClBymiLf!4-=u0XSI)*qDLV z`&2cvE_l_)4?nRuqzIpWrgUzy9F~JN8Nl^mLx-+GYqA>i*>}RA)UwOVjo)@+W4YnfBxl5nC7MY3$Mi>JgtGswVd;h&-Zy zvXimIa+o%KNMH3%iVshH2~9dkT=6Ono~V~y7%=-ykIl?;j#Mc_t=q^3P%_F|Xay|t zpAf4zEE!&^MGN%Uj3gj#bzl0VJ|Ubci?Z)+?^(9ITD( zeg+MCgUJvDja`k9 zOQWCx-EVbWS!+^VX)s@nOnSg0Gm1rQEsI%Ma#bsxW?CJkvpiG|^%U_9g)f_y1An_N2<`% z2~MC{#30^Czi`YvU=ZaG;z44i`?CXv=HejvOkJbwPRCre&{QBE@5o+%<2z!NXI@%E z^4$T8UPZWbiQIi(_YdGS<)A^%=Wu9`oH1Eb~f8wm2cyOjkEam(;bHswQh= zW&CqY^g*&zpv{@BhQ}A zT%}=DcZe0wg}bFYJYQBfWm1pYm-Dv2uLoB9O@J z?U$a>N=#Zr=%M`TRJ)rE>B4~djMpEguNke+03f`UvX9x_^w#DXW4K@_)b0XDMr1xA zmnMZwdd}i5-H#1jbX8U@JR%Kz4BPgGPLRB!+O1KP#Q~5(wjPVkqz#xPG~f+Tqf%v< zpKPre*`&=&`8dTA{a&(HKF<#`tq~%Z>p@p->6dckmNVX}MI4oQq=--o*p@?n*$n2g zn1TTv^dQZnxk@aXM{Ox+A& z?G6fGDMqf-K}&hbE*-D|Fa)@)6MFdLRB4)p^g1TxMf{oR0@pMEmxEdsc2r=Y6G}2n zp2^8cm4KzPm?w|KGx%yPs?dY;8I)s@=}d`&25kT=Lqt4vXgr6lWYMi6IF$vr>JXV4 zwh|1UQlQ^_S({wS*2#`38_(*b7nPFA!|KhJfRVa_&R&@>N49aOy?{AVu(N>V>aj7u z&*C}3YRnQKS80)T494itbviJG#%u&IhDW9fXo!G#=paumxkn8z5ey#klDTr}Q6+b| z^RsEPi>z#jkyI;L_h6t_3D4(9C5z7Ikz@s~(nG##l-7X}a+0G^nyTj%&~z=z$Vqb+ zjM3sh5~vl67x7rr1O-iH$tFEy6pkO$h3(QANLbnX#oSS@Xo!&xT`Awi%4S|RxhcSf zBA7v;trX^|#=Z4WlSnL4BeXyy3C(#*@(UJPLxV8@;zpr4miQ7aYN4o%)?rgcv{e8d zc*vWQCs(8Re>id!SyW8u&5<~S}MV02AZO%bPzx<4olHN5xnG}08l{O^_{Zo zeCts~#QmJ{4=M?KiY6V0a)Zw7jV;Y!{5 zC>C@O(NqPrfP$Um--qOe8pU&N@A0uSM!9WQ7_rqhNC_qGHhm0i!9r{5iUw2OUMoTwl|`$=vi%Hb+d- zf-d@yT~zr2eveK~t|&B(m_`&RNQ>Q=Emzq70$IQz-f~!}C8Ag)PK|o9n6n;P2q39i z#6kd9Fz9*;TBpMo9bVtf)|V;B-2iUM0lUB@CFtOKvfeRhSvZ0&^5_{!(z60*U}&e>oWh zkO4Kgudq+WW34>m%wXACXgUC=icqN@n=TTxwrMR5+40zPB^)kF6cidulLx5$kTd|} zI%kNG4g1*!xRoa|NjwjLcTOae%K;=xkFBQA)jV6O#!DH@QHwM%pqUzS;Q^^0oJphG zX*63vb~7Z&0@V^TlP&O4B{+*mf&?N#L|5prDOx;OL}@i@Qi~+%p;=nomcdi?ph#j0 zHKgF6ate3hK39gMlt*G2a=Y-&{4^ktCaQE`gZh+N1d=X?qiOKLIdCnT>dC@xYSbKn z^2KB0_`wnm`ZgO2;Uybc+)5!e<>9Cf(*w<&Rtm&Ui7!;3Nm|H4c`TC0vN`foJ^U4c z1!ZANf5d1U_A$t6gXG6YF@t)!2(;7;pGD6GNH!HsQMKE+W!#sVqk9; zi4rh37F)uvr#Y;g!PfGSn;fmv!#*NN>fz%LjT(Z1BY?!6$DIIJ$s+dh9^GNopM_KP z74}-(LXITKNjnZwFqo$v%;bn}1#Cu1!nxMX-06(w&ec2~$?ptik+TiBKZOVDk;!s6 zUrsKakGrVRQUG@2z%4?_>wgGRPs~;qe`gG81V}~U9Dj1Y7WdU-O$?ULz&`qlY#rz# zARAb?l*W%LkxV&Wz+P(B6LYi!1@Xt1scZUPHHHFhJ6{# zU5SKG@Ti>v-k~EHC2|O88jqi8tH*r06M|{5oPt#}lB$FYb>IdHwgs?uLDD!36;lmX zdgAz61;PSaikQj5>3Sqrs9vo{tiQ(#<@lO%RCyk?Qozm>*(yLgI6$+~0il3ensCu0 z+1v#$p`u&~zfj@jYSfBGtwikUFw!JI@p>YF?FqbXR0~KdIcSz1TEk#v3L-{9MgdTU z8nR-BPoF_!)ac9Ku6#e}_(3Q8Pk{Xy*ptCGFmMu2L<5ky2o}?rm4H9%LsK}YLJv1r z=%|4a6a9z_4Oao!HjyY-;}$d?FGo`*#8f*GOVFR%PMh!FAqfN|4=qtU9sc?pTEL@= zXw-$nGB~V4iA+-L-QP3$hz{PU-kU5S1tOLyN4KgWsTy6PfUWd!wCw8ACq~9Jk+~Oq zIYw+%qh&mzr12Rv8qW5Pw0##S;4=h#hXQHkAafd7CEh2saP2gAIoG+5Mrj^*q0kHk zQgRds5WG+RcBxVcJLy12OJbiIEW7EoXak|)0V^7-5OIkX-nD4P`Oya&ny3aoW0HNs z%>|=wjHrofIT%P^3;bNjqKpuY2>u~CIClBdn9g?m_MGv%%g66;7=N&L{KxOc$HvEh QB0i0awm;dJ%7K9Y2f3MWoB#j- diff --git a/dist/construct/images/items/os28109.gif b/dist/construct/images/items/os28109.gif deleted file mode 100644 index eca7b26182f79376055c099233f4fcfccbeb2a55..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3095 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 diff --git a/dist/construct/images/items/os28110.gif b/dist/construct/images/items/os28110.gif deleted file mode 100644 index 4184088750034dfb4592f9a28557fd781b8a4fcc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4280 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 diff --git a/dist/construct/images/items/os28111.gif b/dist/construct/images/items/os28111.gif deleted file mode 100644 index c41b12354bf2176eed55ab3e84b528469e84cd62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3463 zcmWmD`9IT-1Hke3d$%3TJy*?<<6~-Lt`wVd3ZI!2AF4S%NXZHw z(oj`do|lf*(l;@)oEROU)9D?e=&Pp>RfuwgM_oZEa;9B0KiqyL#sAg9V@F3vVdj~Y z<>z`PrdkFj4VkRc6W;ZC3B&CT=_eB3|NVZj^4Qrh>e;kZBvzBLOTRGA!`g|_R&e-d zU(24d#AlQ8>03F2*HT0FdB;YEySuw5#YR6WiJqICS(+V>3O`sa&ace~8nJw2DJ z8(+VAnSJ(LRcWb}9i^Us_+DehzR*?VC7ylQmPG2jQ{Qp#K5>UlOK!wmYhK4yL3eH84bd-4eHC^T$L6}an}YC|m>3rq zm#Myv<>6}$^>wACWvd_lRBYkpf&rX|KRyy@Y7j#N9#;`5^C-Ni=_hJ5_^v9UrlQhUmqw)YHQ zd^7h*YHE7#wM=J6hue8amYzQijY`97>t4NlC5RO|DLvPAiE}R6cmMwVw@c4NdRiSg z7)~%UF1vW~H0R{IH%d-i>|Ph@o44<7Wra-ME%xyb=qx$5_TLW|N-n3fc2b;n*Huf_ zKdml2o%Qr#y#MR%K>xt7v}j?t+04R1b|JAo>riiJo3u_U$~*t<>(@L^#Mai<#`=2N zsnfaHynTK?TU#pspy0x!;Fg@Qy>8B7!2$F0&zgl1cMFcTmvg^;+f=ExoOXL82idNE z{G5@TG(A1tbuoq=#(I9g@YlQfjoG1HC2^t);t44)oBK;sPGr`pjH}f(4)&D3ri-+_ zu6LRmw^XW6pa1uLYwPo;Pfa(Q;}efdDlb2(OiE76`2PL7yq2fvmNYgsRq&6;AB}kQ zpgZGqrfO^JS(iBV@c#RiXL>6+#}0T1bMtcxif0s$Gvis25uxQ3SGK-?kBU2y5I~Vg zB(t~9ef#o{o7&2QgUR{m_4$vmtyl9E&GY%Iy!aN+`?=@%IAZ=`?u z_Xz-{0zi~8Lni6ZL23UGIVP(e%*UJWt7f#;4Hpp{5*No>>qjpVy$X%}+Zx78twWk4 z$J=g9R*+*Rs{Pv=r?0xCy;~e_Z~FB*EeAc^{rAj;T5?bN*OXWctNf;Qtc?R(y>I7_ zA*Wn5-v-qiyUqg>XVzvf+OzvkK6qJ1@=rldL>dvDM=gzAS=~Es28}G*heGO8bCdr& zX5_j#lZ!~2&96u0bI6&&5trf5wmfJ5p&uQ{%v1!oa7X4m3|w21njyH*dI#jaUt;LP zpH|K*ElFdP1Vv+r)G2be^gq`?XsdLod?R|G?{2U2o3K;nKlK|eQw;!?>F;X=hl{&Z zXCA}fOB~-}=V?r^;F6`V;aq;DeJm!G1DL0f=d*1Tt!_!Rn?Hx)+#U%I3 z2+k1z1@NqcOdg!))QTeK8B&K}wkMQhbs1S4oC6{<5xfz|iNcx3uc=jT-JuLFR;3`k=GjL(`V_ z$qw>9Sr)<#fqE#7Iot`wrFff&X={1C^)u1^1o^?^mLB4MTd|W$D)z>RiSJ3q-`0EH zJ!s|pK&C6C#HoIy?N@Z)rV~~GMy@!v7T=ru7^r2SVj<1@QX>J>{A-sr8vSALB-+2a zT3EfWV`>))t{^+mpG4MsVr?zXtr?xxA&&j}ex6LF`(jF|Gqww)vAcrIDR^fH6eu3H z9b&Je#Y6J72e=`#v<2X`d4OHqDAN!7$3qGlC7`P03|p-MocxCtDRXo=ESZK;;J9Y3 z%2U)jPrHF?lbmTHl{iN6dWgwzOq{#)hjYd#kMk_im{X^WH}>-J@a!`6H)^n=@U@7j z4`1fK9C&ryLQ6yx;!ZZuledu=xK5LR$R{uq(HhLx(p%w;QzgnNQEEt<9ES6yeo6&J z-fL(*xCmctq}tOV@4a0nv$pu;w6>6EH;$c)5Yq> z!dJTJj_d0B2|~k%tGZcSgt4mTBe;-`*1IGF@mK}Io)XRfTu}ENFNeU=V~ED9UJeN# zMTcOd{kOS8d(V&sv=vkQUMYQ#o@TMFOkxnGSk|>P7aLmBA*59=d+e|pA%L%yxI))d za7EOHe!UgR2%g7RH)p13N(f^ZJm^Q-0FA?|{9uoiyp)7xn5WXm01&P3OpvZ6EwJ)Y!{Olm0$1Yrg2%OjJdPWYA4biQ;hBhL~

    |TaG&}Udo>nHS@cKRB}Ab?4v+AaU1UnJKqcarQAbN^-b4zF*zz1G6A$c`EUUe; z77|w3f+QwjMomEIh7-Zsr953S3Ql-oGi}2KaS3=YbO2lJBo=A*m0R@7%s{eQk}v&&jB?5Hz+WKbXNFff>;}c6uO(3XC(nNY*2`u(g)~5?--nE z87*SbUWhCkgxSy#l!6k7{>DA%2uENVL@a(9Xn{IZU}hHQqnDAuMwT-`BV&m|CtU)y zVaVZit09Fe1IW=X2&9Ui)60RVxh?Q1t7K-hgw|AL=Lg$q4~tWg1c(Br*SoQSLTzul zf!l%?WPylqQi4W7m2^ZKv$BY0u5m!t@75Mobl=R!h+H7pK`P;SY}OJi<-X)NkZ-bw zXP9?~VRgh5#EaxecP8>sjwgr{4`?mO^VCk(Vo@|D1TUwVxwrNdCd5Fdr8H=l0=|7A z`jPt=m=>c1(5@sB-pWVdWTGH|%kK6aLXpaezz!-~(-|1TSOhDt?HPE~Ma~li0tj*? z8?ntrhz%mPiKfgkDPkzLuZC@4Vk0ehu>Q&+_yY{6X(3RZHL0bAoF^8-7ilI)qUDcuB}*oYW?(yK;7U9> z$H|t6VXUL9x`Gupd-_2Q7oMGGwKm$D4!UjRXvgv2hDWjyW^6!1KChWsARs(79?@=; zBjOblD_+5X`o1W5q?oNG2s)YHOVJbGehFGDe%{kW!;*=$qfTl9gpLIGIjmo8d$<3rJjOeC+?IP~85&XLvDrg-H^M_sG4sgTLdXZK zoSa&i4|@%~zlz8YrG_`kNK||4N7@L@DB0gby=@Fxo$g zQJ+DLBSeIu;wLOzcy$f(m*;jF<++s(M5B{O)1w^~lVIlXTn<24P{L3`)8*S5o@QF) z*>*!HgvIPp21x+hFvy*%%RYC*cZm$ok4KAE(V7=n098un+&0W3+&g7lMZCg6`DG0EYpw-{nHomcO$Bx zf=^Z^XRjW6(+SvapbR9yuo8A10rujNM~BYr;elt_a6)W;Od%V6*v0V)88Bs{yO`MB zQWUOB01$EhG7Wtu);mM}6p&nIg*&9w=oPCK;t@4r_$3J>MFwc;7tPWVTf2%LE)+f5 gD3TLI11_SWFwqECG*&5^=n_pWh#pI|K@f2JKcb(}zW@LL diff --git a/dist/construct/images/items/os28112.gif b/dist/construct/images/items/os28112.gif deleted file mode 100644 index 27cbedc261cbdb040027174a1de85a5f134c66d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3979 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 rwp~-FrtYmG^VOt!7BO2)IIw1oP76I0_a znrWu1v^Y06#eO+>f{tBFJ&If~k&K4Ki%zD5VZ3`g<*#tNidFUX_Pe>X$b~{yU1nuu zW3`K0x4Xi`f@)}(NZd~Kegrj>hUhJk#;sEP^;3~Xdv#DG11etfEdRZ~+^ zYHxO!hi|p<2x0-vcs-wBKv6h#ZU_vBt zZE4)1TxMTZl#z_$&bidq*j7zOn3a;o$H(dE>gTzMr*l80rl+v2sM@}w-L;HaR#Nfo z=A&veoO4Ld(blhkOw+B1dvk1QYizM{HvRqlgKb*fnNGccLbHu!J3TL4B^0jz6#I2UW!NBe5{{H@^sH}^Pk-);m1_lQ4^7Q)n_qVyZ{r>*f+1t2u<7gU z{Qdpl;o;ra(0h4ykC2e(=;=yORqE{U*PU30h>G^}@Eso{cy@DSXm8JoMSzBn&&+A3B z?8uN)$BPYVqX1qlZq5eL?fM%j@>v7eC6msej|RC0EG|Ns8o!>9rS1N8LtXJ=?> zW@T?_W}Aa=)F zN*OH}GL1Z#8uLsBm`p+l7mkGgDiAFBJR{FM^2nno1{sW!g9=;-BP#$XykV;l$nM%} z4ur51tE`-GkbwjgP#{D)5=@Xm4ZpH8m#m81@nkKvOdvtF83<6wB!7Gxs+}36<4(B} zJj1KH?5=QCsLOEhOt$1sFhM=rsLQMggG!152ek;%hdbuh0!%%!OyX)Mu0YGd1VS8g z$io=aQ;z_IT-;fxoWLQ0!yeCzfj6@JATuKwqYQ^Uee~gRAHV=pL&by;l0<}(Dg%cn z^WcC(IfsZL1_tV?AT%e#CNNGQJgl(>4o(v+z$7XRJuCo-;8DN`EfBHv1W@PjLlT3G zZN?CpP(sNI9W-F?*FSXsBJ8kORPe+u5iHQm5_9+gGa)AIF*X3Fd?A7ryJUg~4dTqe zh7*jOJa#e{9B@Vf1t38K5&?A3IiUumaZL!FA5XJrmLW>QEAP$xwhO8p-05_0N4F%Z(2=Wkz zEDXR08Xy!ZK=FVsSi%gOC`crD;e$MEKnDbfLmTLX1rJ2v1RJ=8K~512el+0~xBx&3 zH*ls{M8FGGU_g)m3gQ4&3?T)Q$YJ2ZFgqVrq7gfAU@Q(&2US2L1*^y*07^lFDhyFV z24KJrq+kpC7=#oT7(x?Pp(I*ZA`2l{(Gzz7#58D;Ah=+_1&EOXQV`?;WI)3J$CHa4 zc;Ez<$i+b*K>#xBA{d|`h#9ItgC>p#6khNE9tfZ!gBSq~VMu`}2$GC8(BJ|0Sq3RQ zAcbA5;)?}&faGqt41%np3S=-NT6zIRBm~0%2-$=!s&EBftU?(CiNpzL;77cefdNwR z0Rd`xkY#MZ5?82z843c44OC&8XxT?2Jb(lrL=qvTltLE1FvWtTK?-O{A6HJ%hzR)L z8@e=z4%)E)Om-T?0Psu$S~TE+Dm)<-3UOluXyDI+EW;L3AOI|0{9rj78~$D3J9=;gggKpWWXp^G{6c# z)ImuFAw?UI0o9QnBo_?uf)uEUl_8Lz7;H62DK?;iCZwVj38{oFyg&n~a>W3Yct-{9 zI1mm0RKNoTP=yW@at#llp_yE6?U7D^+^GhcmaVRd{GC35I_ke zc!69Kk_=mTU;v%uiVJ#h57ZK58AyG{SrsCQf-06PdoV%_s#_2+7MoYq=6Os0KwQGi;xqH*a(kX2s8!^<3u0C3i?oj3ml!0 zJiwzFY^Jnz$$Q=k@)v%7WtY=N@THE^8xX!h% acg^cw`})_w4z{p|P3&SD``9oE2mm`-K)z4_ diff --git a/dist/construct/images/items/os29000.gif b/dist/construct/images/items/os29000.gif deleted file mode 100644 index 865e85293fadec57401a4bc95efe98aafef6ccc5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3737 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 diff --git a/dist/construct/images/navigation/a1.gif b/dist/construct/images/navigation/a1.gif deleted file mode 100644 index e1062a8d26ff90aaa957ab2bb2b21c954255b5b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3776 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 XiLhJW@5tJMUbRL3-8?7;fc5_mHvV9z diff --git a/dist/construct/images/navigation/a3.gif b/dist/construct/images/navigation/a3.gif deleted file mode 100644 index 2c89df71e1eec7fe8d93befe133e2a76050146d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11362 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 KiBrwrbnb`6u+r*_?SOmwUOreN|6hh?Th=o=_ z9RnHAQdprp3Il}7Oa`cd@@OHLNOdE?$_ldKI$1!3F%sC>{qCROCzneu_uC~GcS^{6 zBQ=rG$qoqYJln?p4wkww@*cYVpFG3n9@cm9co(*(u4ehGRj`j*gVMXwd#-9yhkbX#!4f=(+s7tv{f&VtrO zwA_Vu5!wYbFQ922n!9M6gL)42vrsLdb{>_psQe8TcTjN~U;mD;ZbSA9il%XS8oATR znM95W*;9~CLTW^o37;B~X+q{WGRKfHi3}4m#v!q543bf#kK&R6sbferKs*8QFj5S- zFpQ)ToHrn080Ur{vTG1$ZXy0h#1G)~Ekq51e-kJ4c&!(qJqWph;BExly#w4XywZWA z9SG7Ps11QS1h#|I4NeC*Z3t)wy9q2ESgknH3cq&vwScJwLkETiJ{r)Q;ME4N>+n*8 z)&yDuJg>u34NnzbXn=bY+>~&whpQ4!Dp1v+)`MCL2PGWpK&b;!gVcklK$IZ%SPN1E zat)*!zB96&&HNGaWXCCRV}8`bFqKv@9r20Sn44sjm3fDhHhSp$ zCF61QGa_b`+`WPwoi4KZYbQ*_RKhsaFQ)}WMGQUt>2!37g6p}yHt_0(x!PGVD++u0 znz8k5GLz3?@G}j^$oru!6j={HER825eEB**?9!gEha=xZ5cy)A*v!^tC=WJE`^ba#((6+A-z@#|I4#~h4y_jz3H4Rbs-y06AxAU4SPE!mEIz+6`Q+X)LVtT zSl&J>CD_p{ROj`Yg%1HM8L)E=9+Wp-hI)N5D~2(#LCQI#I4fw3B?Sw{Wh;O??If3!?c zSCkkomkeqPBpOBJ@luy}61OIO4=1D@)mG8NmDvZ6)ugwnBEv1Z#?KzvI+{zlk2>25 Iy=f%kUx!~P%K!iX diff --git a/dist/construct/images/navigation/b2_b.gif b/dist/construct/images/navigation/b2_b.gif deleted file mode 100644 index aa929c825181f57be7087e3f06d1cc0884ee21cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1425 zcmeH`Yfsa67>0j;Ikk+#zh!`|MW~bt$c!N#Sd>{ns5EY=8=x7w0n;%K&I;4XHVt63 zRyRdl1?ALMTA)mz;si9Vt!Qb<9LP{a=b%uTr+MHcY>|8T3HAkc<;wj$FP>LVa*Gn; zBi~8eMA+md2eaD{mtI!gQ79mhK11a zp$kGiA9VuMEkG?7+CXT1q4j~*3mOhIe$dQ^#upkIHSw%H;{)5z!`am6~l z`q~k1j_VI)jNwya|JWjK=sCXigy2K<=K9=`E8>lbmaFx=x#{fE65G9b+ULX%Gx4x9i2`DEn6z&Zj!r_;zX}t zR(f3tkC&)Rzn;l(aq;+|`DfOcHcRap684@=Z;cZ<1$rfhG9pMpo4`;e3vL4-qU_po@0aFHb3mKsb-MMv#K*itO}?9Hvk#j2-|-&V}- zwg*OEl#W;eTyF?hTPGfI_c_4Ru=A=5H$eA!YD`?Tf{5IT92c~PZ71xZ-rKLVdloJs zQkH*y-}Y$pM{)+mN$}tPB6e4x_nx8bd2GA$w`+3JJ7U>6`tlt{rf+FRe$-Zf(iyc< zDYu!NHn7S17m_VuH-YK0B=CocosyUm3mZU~AWsdR<%S%}W`{cJ*QJL&nL+ T&kV#R{JGK5H>cS|QDoJ>YyMbE diff --git a/dist/construct/images/navigation/b3.gif b/dist/construct/images/navigation/b3.gif deleted file mode 100644 index 36b622b08c8b73396ce489b74fc2f6318f35c981..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 333 zcmV-T0kZx_Nk%w1VNL)N0L1?Q|NsC0`}6<%^8fko|M~3y_~ZZb-~aO6|MJ=Y?9cz@ zzyIH_|Jk4a*pmO!kN?bo|Hg3tzhM8qQvbP7|F=N@vq1l|GykkG|E3`SpAi3<005c) z0002Mz`y_i00000A^8LW0012TEC2ui08RiB000Hb;5Gn3qn&7~u59bR@Cp=wVa0f^ z?B??c&sQF6$R5$00xc}hI<{7 z&8W*DVMt^&83_Y!cq#x2JqA9AbwYP33}n8nKOIK0am{3vY2JZiF(6C#kbI+fon| fmvmOy<0%WLVC6mP>@Cgj@bU8V^!4`l?;!v?1V@>@ diff --git a/dist/construct/images/navigation/b3_b.gif b/dist/construct/images/navigation/b3_b.gif deleted file mode 100644 index 77767649d1951b358ea8b08ecb2907ce3f9e78d1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 334 zcmV-U0kQr^Nk%w1VNL)N0L1?Q|NsC0`}6<%^8fkl|M=to^43gRHE1rlxS8pJthv z0002Mz`y_i00000A^8LW0012TEC2ui08RiB000Hc;4%Qgv7KnDu59bR@Cpz>p~QHu z?FQ2n5-@s)g{w<02q=~h8q+E z$z~LW;b=HC8yXG_Zh0yI4?PV&iC05-DG?1D8314u0BL0`h&>S-5q3JFJCG<3jhho# zn=*|=W~+6N01+2!8xjl}WELA002dmqDP#_5up6?DLS#Oh8W3-BCvJr@j3=t3INVYc g7npQbJ>)46s9@&h>+PJ+@bU8V^!4`l_|G8#JK12I_5c6? diff --git a/dist/construct/images/navigation/b4.gif b/dist/construct/images/navigation/b4.gif deleted file mode 100644 index c8a75f22269b8d2b9030f4b2b9eb157ee1b5d6c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 392 zcmZ?wbhEHb^k)!aIP#z2KM?$U|Nqnd|8LI!f4cww&H4W?_5VN9@c&rB|NRO7cLx05 z?C^h$!T)6n|K|(*pUD6O2M!znQN#hopDc_F41x?gAmt!C8Cd^6Q0_~~oR_g`oz8)M z1v-o0<=p=f@w{gJyL}4;G<2SI99zO;StP;H(!x>2EEB@<;^0Crk8q!h3<(BT7WA=} zABmW9D?9sCi~$RqmX^fS3HB1fjEoG7*(^*^r`Sc{Ml1~0 E0FuIx8UO$Q diff --git a/dist/construct/images/navigation/b4_b.gif b/dist/construct/images/navigation/b4_b.gif deleted file mode 100644 index 5c34273088c70f21432b912f2e2634331b76d6a4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 392 zcmZ?wbhEHb^k)!aIP#z2|NsB*fBwJ!>HqmR|Mx%rKmX?c{!9NG&ipSp_CI0&|A3wU z9X9_rSo2?D*?)og{~2cfXJBABaNq!tBoZk8WMO1r5MW?^D#ZDcVG<7Qx0uezIDLUK3o~DBUM&|F0|$R?Lj!+GxmtfX|BhYr`KzkzH8^G{wN0JHKRqDuq|3ZI z6`l!7wd+sppIWWX+q9-)-|@ZuGr9Hzt>2QmSG9+et21T?H`C2!{Mja&Jjsj`AM9Dc z$0PK?RiPn2Oh(~Q_?iZFrp+~hi`;VsRthIh$>7<#@o{&LoU@&@=cXkmCu;<=u8Q$A IVqvfb0D^Ro8UO$Q diff --git a/dist/construct/images/navigation/b5.gif b/dist/construct/images/navigation/b5.gif deleted file mode 100644 index 6206537942e4552c6cc023bd1bec2cf56644dca0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 542 zcmZ?wbhEHbY+?{%IP#z2KM?$U|Nqnd|8LI!f4cww{q_HE&i{X@|NohW|Hlgc?@#!@ zGvNPbhyQB~{x4JbKVRVgOa>r0aNq!lA_6G>WMO0gTBQS03$l}e^}m8jUrOe@j8*G$ zUhmUnIA4-`e@oB%n)i!$%`foCVeLMl@^M9uRqmPPC9Aq-$+0szGCCW~>u>pXVF#mt zQ+6hUh0GP@W8o!gmJ>xro_g`!Voiyk&$5$17qbZCZ;WO7+4t_N|?BNwz6#BId@M*DGPH+I|oBk zJol>UZrbPf%~~=y{yZ1&*6Dm}1lX9AP7CDobI%i)#{HIaSKL)!Ic4aloQoGmX^oq=uxZn}Q zJ-u)0IfjZ5_GjxS@rPSfi1yFaWxJuE^CQT?eYOqL#U+=Y1-c#g(-)s(qo}~h?9Eo< zI+yFE=*nJxrj*oxw42TB?Q7O%9B^CHk;&Lq7s%l4u-e>8grj3>=46j@x!3zxVw$e& zFmDy$c-EDbbkLdm+pEJHqmR|Mx%rzyALJ`8WUfU;5v0=6}Jl{|Wp5 z2kiXsu=&5in*R#R{tL|i&oJ{p0|Uc>0|$U4F+lMr3nK&2Djkqwkev*y{}ojFQZnad ztXh}zdY>l4`I6lGTYBEtykER)et}00YxfD2k1KMla?dO;S=BX5j-APo(b-^Lf6KQE zI~WC=vNIVhWUeS53olW#l<2>d+^25(Oq+#~or5_;sosExPr1BDsk&dUK#8kVAXOkr zfQKQTmywy7WfsFSB{oJDhL~B5j0}qy7%OKnF>RT{z{=QA!o=OPm1X}j%){?pL=ec;dPUl-Az{aF>S|FdFd!E2F?zfz~;3vhrF;s-GKU+VEKir~1w11{9+YJSsA3+Z8vu&6zF1h?H(CxUNzW5v)MFmD? zZ?+QGxm+(rSN8HVrKAR=-E3xWU$ZvjfZLjmOvbLdKn8Dz)#g?r934|LCwr93z23(X z({x>jd8+`&v#zY9gU;OFULBtDadni|4CBcSD|QwOo}1_V+rV|#mY0`T1h0-eyKC#~ L>l>om85pbq6_nDD diff --git a/dist/construct/images/navigation/b6.gif b/dist/construct/images/navigation/b6.gif deleted file mode 100644 index 357277270eb293a197154ed2a90260db5ea1ee98..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 374 zcmZ?wbhEHb^kxuZIP#z2KM?$U|Nqnd|8LI!f4cww{q_HE&i{X@|NohW|Hlgc?@#!@ zGvNPbhyQB~{x4JbKVRVgOa>r0aNq!lA_6G>WMO0gTBQS03$l}e^|OLXUrOe@j8*G2 z4(uz?nfxy2etGZvnpNK&9_V|V5$$(dB4p;GE6^>-d|-#A0N>@UyXKnuGc`DPrKY&^ z9dkBaJ8c;UN6nRh_4}5x9$@G=#mK^3tHj30!oa1(!crf~(BGp{T+GkR)LyQ`#>7{x zlqB?pqb2w!ToHCMnxao3o*j zfwPy7kzHV0VPh8)&%w}O?lT$Nd1^X&JJ09oYBMt{ZTk?si{%VgA~UZNHzOnKQ8}3| m7bbazY$d4{M~m#v!#@1VvnpIRE;`yRVVrg6#KdF{25SKDSA$3Z diff --git a/dist/construct/images/navigation/b6_b.gif b/dist/construct/images/navigation/b6_b.gif deleted file mode 100644 index 06815b1a12696f2048232097b741fefe71edc921..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 374 zcmZ?wbhEHb^kxuZIP#z2|NsB*fBwJ!>HqmR|Mx%rzyALJ`8WUfU;5v0=6}Jl{|Wp5 z2kiXsu=&5in*R#R{tL|i&oJ{p0|Uc>0|$U4F+lMr3nK&2Djkqwkev*ypA}U4QZnad ztXijWU|)gGML`^@Rd8N!fPV zoDGc(oV|RE>;l^g8@rfz4u%GEpUK$HQ`5=Yc|K29o0(Z@+lSy?EN8e9nR%7C85voR q%E@%OFv&AyD@nCDT4Z+~_Tg8aRpGL6(a~-R zWI)s)sL_MRsF9job&U#mRGob2?^d%ydAzsL8x zOAGSmlX8hNQja54Bod)%nh?TqoX_X`<>pNmW5_TBAwbiZVITkuO-lr`4B#Mx0nI{2 zfS^C%3%Fep&v6*B2+AxLF%%G^wh1h8%c5802xMG55ioReSjLQm0L#!4i=902@|Z`A zOrV4r4gwK@aKOi6#AE0aS+79qSR@hX;t&M1lZAw#6_FOjo6Iao&+0Rb6f#(QDZbdB;MdIsJEEY>VaZ7{&G**45 zDFm5*C+V+a9y)=~tvKt%YYOw&MTZsm&;=qvKH{cWf+7Jd@GQYl5=i8x>zAA1$m5#= zPa=`Wk;p?y5-~=-K!`{vn!-H69N|TQa4akEm}9+a6oSEEf4|~# zu{@7i77+pop&^2V4TSpzNhX|n&jE;7UhoCOQk}vHBCX~H5k~e=?g%6tqrQ+7C>1iik1D9IeJTEio(7A1%v|3K}1nh zC=`NEbsCC_Q0eNC`u$H(bcC8Q&Xn)>Tyz{yHvMkz`E9>Gm+|(e zXEw@{XMUGmHWIa0f4hG9f!W#Zp#k$-j_-;!7n(cItXno{UG`gT)zp~X?m4zw^a=ih zyjM;i*T1{o*vRdJ$-6uYCx(uMb(z)vlJ=i_Gph#dOXe)yP@4JYJI~Tu_P=!K44T$n z^i)&PnEZt_sq#?)mk3wYKDZv~8}MHCuw|Cs)ivH7|C=#)@Yvy(TL*Q9)7w1d8t4<8 z=lYI@jmST;HsitAuL+qCPu;$fJ@~n{CBsorze;QE9kPy39czu!>2vJ##>LT|rfCNl z&r)+eZK412cB!2<<}#xpNc zUGh)13FXS2w!+4VylWuWV6C*%7R&lI2N%bV9nDSKue()|u+grGp3>wm)IGmOw<&r{ zR{vQV6zNuX#dVCr9|co~C)}QB8s0hcn{!{r&%0;)t$FtMLt4Z9F=t{uSU6_hO6P28 z%5U1W@7#`QSz{fRREIs%(c><3p6`q=xZn5Ike)goSo{Oer!sv`s0dXL~I% zOb!j_oxON5bxV50PoeZ#|c$$#~nc<9O)n8Vd%B0@*tpPL%P4>E7`e$M&3|jgr0Xqms}iM^5|Po?LU%DgTj=Lk}E(Gf}hKI^xl$smYh< zH#4rnuM;+1t(bIuRwK6~aeR%r%&@?ml-2^a8kUzwPiGv-T<8)q)N?YTRXPhLr+O0JxI^ z3MmSBtmb>mUf+Wa?-kW2-yMnmWk|ED;!#rS2cW^Qc*H@6%-S4^jrq#F`)q-;T~^x8 MTcp!QosL@Yf7Y^TivR!s diff --git a/dist/construct/images/navigation/buy_now.gif b/dist/construct/images/navigation/buy_now.gif deleted file mode 100644 index 0392354a16f837c3a7f1e4aa806f4382e80226b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1879 zcmdT@|5Fop8vaBA2KizjiSkuR0wqC|?7>l>dWAqDNm0WVIn8K~5(G5h>Fw0oOY1~k zzPfFpE)l$sbE2#YcCVo9jaGIhD6E0=_5kZ1z43OSrx)htW>RlD7kbm1TCl{<<7fdYh0OJHK26z_`ao{IFkOVgD687DHkGAMn8oFXoMrw0;v|EIzXv|wAv4oI6O=)vlj!* z3J5!Z4nR2p6W$pIAqoUUR^(}(g%pY57|K!@<}lKvgQFY{6k$oD0QCV{Z$-e59)}Hv zA|2K(7U^OhhIREc#9U4zPZ@a{WuZ~v8J?qA%F1&T$C5NeDd?b}ou<%WFyQx#9LI_x z&oBgpb`m;?wZtHeLz=)LMo>6G5iaP$*ARD61O{;@BphKk!$gp@L((4z1cE^>e0@RS zMNtd{Se~a?mj02N5d@0o35LNL#u3(l5M4tGa^WFM^8&^3B*TLL+sIwpeC-#2ECk+) zPOBWfI(c5E$T{RQs7GqPY+=`xCb&zr4L^#yYOMe%OXSm!{{8>*lYUFKP~tjO(A?v^+Zfr7FX{&GcJC*GVmN z30xS&t;r>|xnJLHeENy$L2c{TV{e`t{phXtkJ~gij^7{Y_I{eai2BIgW}WRAxM$Q(XGZ87 zeTA)s@-GfXjBv}(vYIuAN6&289#NMVpQBuF`F>$%obn$R+owh&y!$T7K~zhq`Rzih zr+W`H9QbKNdza<*i6_ax%MsZnz<0F1?b?;X6Tq-rkzMe*)KQ@xvlv|apII{917kCJ zv$QE99sJN+kq&IvIE4a~wx#6PRhnX2i)cgVih=J&%iE8-k(tcXnY~kK zpkS^dH5z10$_i2z%6po;a!vg9Id`pQqGo@ecH*DNroLI#OKH|}x;!%~uK7 zAJli5Ds#qaUUtU~%YGuttJ6t3 z>I&UlOw%{>xUzLFyG+qyBb(B@|K1f5lfUY|PBuiFeEKW3lvm#&Wm+$xPnOR1{tO*A zrRH0`?TRxpA9tY2-SzmwfF^Y~%2JalQBAIk&CL^PC8x4Z!p;)i<Plud>>Vmg zkQ}O!xM9`YXhTPeuB>;+biP^^FT8w1seLeBpXHghl)ZOpb8SIEyu}O7OPdOJM{aGY zP){o^B+W<|j0qC(dRk2Iz~$A2Ishwv zh1)JKqQ~y1uipATIj{5;o@iM*Tb8)dFxj8F*Zn(Oajf{HIZ-H{EKA(hlkHl${>7;I zifw3Fo3eLe>2Jv|c8yge<`%ts(sq7DbD{6!7Y}_0{`hp^h_cl%*q*Xu;`S-!-p}XD z);lXFHYuN!44$&DJObL)mT`5~>NoFuafMB$YKyI!$S7Cl*FE}g^HP*@!Ti<9(PN7kxeHaV6L0eyF&yXxjd3W3L;4H~t6EB>#p0 diff --git a/dist/construct/images/navigation/c.gif b/dist/construct/images/navigation/c.gif deleted file mode 100644 index 0ffd7523a32db81615c597b26c74e030216b9fae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2187 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 diff --git a/dist/construct/images/navigation/continue_shopping.gif b/dist/construct/images/navigation/continue_shopping.gif deleted file mode 100644 index 35ca46a6831e80a462aaaf44280b06bcac80d09d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2255 zcmchW{Z|ub7RR5E7or4+F9ei=1gL-k%pkVFY73(X2DV~U7E`p*SOnr~WB}Ps-HkAc z%7B1lReU@}akNs$A~MQarVXe8ilitsMaxMM*@m^&Ai`$X^_vSZ`#^535nZE!Cc_t0LO7Im&?l1G$c5e({8h}3~jfvEDfDD)^4G#3}h+7>9AWZ zEDJGcR6A%L#89IK(W~T|M5!tYXb^y_0I3EJD{W&TVbswi#@Qf&sf{|+Mq?JJb1;}* zjW`({WkeYqCH07vL@5j*b#fPl(3spo$}yD`S4(ZU)I~};DAgqb3!zt;2N)OQ1H0a*WDFqc#$OdbtB47F@1F zrA{a(G*Ua^Mu^o2FuIj%0Hp(r9C)I(Ku=$QI1tJIO3!bj*fCsa--V)zSIT9xEj!UV8a0i!Eeo@DM&ahgq6k|EJhP* z&gyQ9+D@yjZk?>kLMGawTV#MH5pZrW3t5_=NQ}gFEQMh@^nafNSu)WA6Ri-TNfirG zhD_vKb_S|wsJ2-t3rkQ??Q%IC4!hlMbvo@3>PV<3Acm6|?mnT>2yqPJ7P}223BB7P z>2Nxo?m6H%yTf6%+imX4PN&6YW35(;-Ok!UPW;g zCw7;FdzbLyqgNbnqAF9- zvVz|i-8uPVh7yc-Wkz3>K2d>=5f8KSpD`ApXj^>N&oT`d?G5Wp((=K!9i0_2Z?QqR z_GEpdxW6_RBzrEad~EhT_PN9qnjok%^YV7^!0eKQytGBO@LPnUMKE(O7QCLyjF}02 zooQypFIBPM30}^Qy=0q`eA9JBqXRcb1N&myMnV;Th)kU$79ASl?%@kTJi5wn)t4}R z&~$8@M_-6ZD;6D_Kajp){!mN1pg{0-y5ekcOOdDM*^7#syW$OeU*=)w+K$rIMTT!W zCd--FEOn7>#F$RRj# z(iebA*%AOcy~~QXix!@ppH;#54I3(Cn~Uo!uNF_3#Xwp75nmEEC*?2TuM?|o?lP2n z=JVptYtM!^->=%-e%`MmL3CF$r)m)s8qj+s+CK2m_zsdtxOx8 zCztFT@2a4a1EV^UR|ac&5^ceGVqPMDL05vP5WkOpU)vqK z??O}cbdmpx=EXJ5QT@o+1W|Bm?7gkS9zVqxH!1U4 zLy7ihSwoKJ?oiRJs7E!qSJwMGhq0*Q7e31;&^G_V;bot_dcAWcU-eyqba6>lXC~_Z zw5@xiWsC2Y$Q|?NRc39}Ex3Sw8=krM=mx`dQ?U0x(oza%*B>3a5FQhiwrYH7bB Och8GW^#TF--G2eg(B?G& diff --git a/dist/construct/images/navigation/coupon_item.gif b/dist/construct/images/navigation/coupon_item.gif deleted file mode 100644 index 2a8c4b2f8c6e9db013c1970d9f127d6671dee704..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1794 zcmdT@|5FtA8UEZC;O;o>f?hz0dWUdw3Ik_i#%t~5JP_eDMo%>4iYd6564yqK#i_at zb8;I&y0t_z-5@v{)0)kVC0on1U16MAL(;+6B-cy+i@ZO) z^S;l#Gw<_0&%7He%h!79ehL5cS z354MuK>7d^04NAJ90&vuNgz`|V?Y7|RTeY}X#y!DpFq21=thJ?LyiRNP#8>u*c?h` zQ@{-28UEY6{vs*Q(!hnVlsoN5JR|$@Bumi zI0DEtNFeb2DIAL!0pT1IkdRMdeG+sLeoRfSL#ChyXo?^Sh=ruUk|gfqATINy$l?-o zB<0~bBtn+}-2!xZT!4q3?^RTkq<~4$AW0*Vh7?W)X+%+w6eW?QND5MJpPPh9geDQ~ z@%u=`5RfJi!-@jI(0&3ZAcHeBp3DfUnx-Y~Nt%^(M^$-25JZuIP*N0GRTWJWWtkHM zUKClLXAlwN0sDAeg zz?1;X4oqzrj9!nJ7Oc#xm^oS6#;&WISvZ{${!O-f=fH-7&JTZQFYS1|vZ=GMhHtn& zaBB9G^Ut4Kw`ROOBc8jqrfFvK#-;v`dVcxs!|^hB&$+FyYN+|u8@t7yN6_uADDa}J zwZVqZ#`*J~zE{*dIej2{KWs2qtyoEA6<5=1T9^NJ{+7qBdpf|aSZl{WJ_sAqm)_5R zwpiD`V8v6l_SpHF9;APGpumUHu$VW7vHR0k_LN4J7F~JrrCXcC#anL%V|Pwsz`y-Hy#&^L<~pJofFc9yUycLtlC(5C3-x@GtDTQqYkJQlF;dwHbz3tJMr{ zCK}vRm#4pYJN=3MS6$QRHg}}$8?epfu3Fz*az?j%(dh9t;9#Rczqfu*q+x7Hf9>A3 zd3JNr$A6mj7Y%q%WakaOKV<^%*k@Bsd+Hm9&7cCLECTOdA4viB&qs`4pQG&1NN?8Z zCc%nsji+bHHEB0I;*Fk z-EMnOC}sbbK`Tx$@uMUEKkgXY>=UleUY-THm`5B0qY%YbI>80(+Wi#bDxIEa&i& zq2bhPbvu^ZHf1|O{fWBfiOvg$EHlLi&K#}5^1u8lW^hJBZ)KLl_ao^$U&Pu{3Om)T zWkubvd3DW-BRif8H`1pTHa0H7atp%V%*u1G`-|SH zFY~(ou&=dC*L^iGe&s*5jeD`OLeScSZN>hQ4dD6_{Tr3N4H-MZU|Nx3bM8dpskOfF z@-t<>aP*(OnwfKPOJ4g@+ji(ZV($0rjM%Qr!6`%j*rW3EzaAT|cJi^mT2@_%&-y{f z?^jQ3{-8Y=`g7k9pe?U_lW(*vY`j_e`i8B8nytlnGM?8L(@(5ATcD0;~4{XYi73l5j4e2(gq^_JPJd6z13Ho;}BU)?JXU3)bBp4Rfee_#5zt@vcc*&E-SzTHFmdyVP9 zb@AcIlG$5n`o)7`)4HgB!B{NiPHsN+w>Ool*^ceitDzfNTbkJOh(aPyfo(Z}}I` z*>bCU^SwR4`P&|OOiN>0^6J#KcihK6`CR|j`~26r@BjFDxY~~_`q<&KiHpG+0Kq{i AZvX%Q diff --git a/dist/construct/images/navigation/d1.gif b/dist/construct/images/navigation/d1.gif deleted file mode 100644 index 39ba2baaf69b62ed860c6548ab142d5f066fd9c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 481 zcmZ?wbhEHbY-SK)IKsg2|NsA=KYxDu^y$r;H&35Fy?_7y&6_tbUAlDU%$Z}yj_u#S zf9KAfn>TM>vu4e*Wy|KzpFeZvOa=yq0|yQONn(KFPZmZ71|bF=kYbRX46OeZRQggf z=Vh!~m-BjGfzJ7o-1`;l-q*bUe_%m@hmKVLrj|`hd}eU5KAY6(B*M4&*_ISt3)iSs zU%Z!m#A%sx<-& zRQI1gVxG%0uQIFfn9`1A{6$Jj`1pD9RyHrXpu9t)CR=$4!<#wGj}~342^3)7sgnEt zz4c!vmx;TI{lyuB`4|!|njV;9lr}GFuJZIlQD&YhS7HKR_$qF5Wc_-lxxM+Oo##1) zxDSB`6jT?o%@eEYI^^cRv`NjIXUEiR@m&_*HYs}Td^yjv&vJ^Wbfo9g-4hsE9SfH0 zU$pK~nqsy)YQy{m$qg)TKS^?|yj19MX;tj$ZEJ6DFL-=vuJ`tJcXwBOe$^_##9$2o D>Dk4h diff --git a/dist/construct/images/navigation/d2.gif b/dist/construct/images/navigation/d2.gif deleted file mode 100644 index 66328cbae51c57d7348af008e6e73d2c06539786..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 118 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 diff --git a/dist/construct/images/navigation/go.gif b/dist/construct/images/navigation/go.gif deleted file mode 100644 index 786841766d4ff71303e91fc1f179bd467d4ca412..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 184 zcmV;p07w5vNk%w1VHW@q0J8u9|NsC0`~UCn@8{>|-rwHV*VfL@&c?&Wy}G@%vbC+M zt(=;inVFdY006+izyJUMA^8LW000gEEC2ui02cre000DK5XecZoh$3jyX;{2g`_r? z2S=Au%YaIf1bY%p4{Ig=R1b*HI!=fFLS^H5Z785db?>w@}Ie diff --git a/dist/construct/images/navigation/go_b.gif b/dist/construct/images/navigation/go_b.gif deleted file mode 100644 index accdd81d12f5db3c95ae50527973d7175dc2b4c6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 184 zcmZ?wbhEHb6lV}**v!E2|Ns9vv*yg4IWsvmIVd#9%h$`v)ydMv($K(AQ$tfxK~X|N zLO?)(frSAG4jee3_>+Z^fq|bv2gC=N!N8Kb;iTv4xyrB4?tYW-qjibdv?nt)&m`p> zKcsOx)1&7L-?W=QBw3UV9ZUpf9x*iDCCJ{Q@qYSF#pMUx5^pKY>tR>B`a? k3XU2pE!#G7pOI1HZb~!cydJ0&(x9N#Y%1Q-A;@4205Il2vj6}9 diff --git a/dist/construct/images/navigation/header_handtools.gif b/dist/construct/images/navigation/header_handtools.gif deleted file mode 100644 index ef57ef6af748d22b492c11b0a0435c86dc60ea5e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 331 zcmZ?wbhEHbEN9?j*v!E2|Ns9_pFTZ(`t<(&`!{diJagvE{{8zmZ{ECS&6;J)md%_w z^T2@v3`junCkrD312=;XNDO2K1Iv$qlb);hTD(5H`+tH)UrMEH`xF_^OpcD$bDBSn zrLALZ2w`ZwwBF3}Lmxv@`ikth3cCeQR3#)rSe+dOrYNv6IR>Tq2yJJc!{jI+pmwJ8 z_Ny}=xuRDlHSjY;r6w_ibCxH0i3A8UGP3sQw)QeG25L@ZWnnH=^C*vCs?&6HWDBwn zFBI#_4qEECoXg(Ohhs8J>}-`Td&h}vEXj+x4*9GUU47_C^3h~2eVZvem3IfZF|)TH zzPgs-`b~dZ;mPdG42D~;_e?#^!p8pUlG2sf1CtNlje)7_0%S*nyz{ diff --git a/dist/construct/images/navigation/header_ladders.gif b/dist/construct/images/navigation/header_ladders.gif deleted file mode 100644 index fb7b697127685a70e2ccb79df790e0013c998737..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 281 zcmZ?wbhEHbEMwqf*v!E2|Ns9_pFTZ(`t<(&`!{diJagvE{{8zmZ{ECS&6;J)md%_w z^T2@v3`junCkrD312=;XNDO2K1Iw|1lb);hTD(5H`+tH)UrMAbdj^Nc)@^Az{R|9Z z4qgv`z4 zqz7NP&voeb9p>MfNy41b>6#YqHf0PQJ{BwmUG7563`~*rGa5>TirA{!dKWHO(4QLD zDa?}IJ#%JuDi=EgGdq(H+vcs?cW%?M)j%0Zq z$Alb-2_k}Ft|*FxLSX`cp71)CCs9b11iYjm1Xz}M0Yw2gF$i+i>p&(k3O^!W}hLWm80*5J60dtv~%B`UaND_w< zhSE+Juo8~Yrqc=l1Ju|}Wgbn5z(K!~X@&-NMsZZ3@{h?u&&~kg-PIM>_@ept=~H#; z5F&D*q&#v|#6Tx+2apsiqUjp~AV?lEdvx#KAv6R_`_W@%DV#%JP6!n7w}GHPJ5)|V z0g%Fg!2yJ(+*vlES;v3~4k6)3fu&Aqol2EzA|3>)YTe4UtJkk! IyG8&2JIN=ht^fc4 diff --git a/dist/construct/images/navigation/header_paintingsupplies.gif b/dist/construct/images/navigation/header_paintingsupplies.gif deleted file mode 100644 index ab628f881f4c0c81dfede81b30e1ebb7e7d76d3d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 449 zcmV;y0Y3gmNk%w1VRrxy0J8u9|NsB&?Cj;`<=@}m+1c65%*?;Pzq7NmtgNi2rly&h znZUrn000000000000000A^8LW000XBEC2ui0CxZm000F4P{~QFy*TU5yZ1+UY=~fd z<@sSoQK&1HN`(+tK%OI6QjD1b0O$kWCINsTSvXn_fTp75l;jk`fy5vX3{=JKYcSv? z1OUP*JRO%OH5UvXl_1tXMcCIeN%%D?P*PNX1Ofy+G+hM=7FSR<3Ii@lj)M|t0Z9Q0 z2%Jrr3Ywe}1OSvu76v&21&Wxl009L_JW#Z@3ZiI#vqAu-QME=BIkf;_HAy49!3s$< zLlVvs(F(Ixk`=%?C$gb+tl>@LyLF?_LIgF_14?<1N`88?2B*#Fz3I|G)%@5bsgfbY z2Do$N5Gwq)&P5|rNs`H{0A;`dH2I|L+b1N?zkNw=46xb;$HakCO%NPI6OOtfTM0w rs))rPqN7+*6VQ%b%eDfm90bOy)!MeM-Me`6>fOt?uiw8LA^-q8jETJ< diff --git a/dist/construct/images/navigation/header_safetyequipment.gif b/dist/construct/images/navigation/header_safetyequipment.gif deleted file mode 100644 index bf65e7fcac1cff90462fb5224ba4deb9d4621c86..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 448 zcmV;x0YCmnNk%w1VR!%z0J8u9|NsB&?Cj;`<=@}m+1c65%*?;Pzq7NmtgNi2rly&h znZUrn000000000000000A^8LW000XBEC2ui0C)fn000F4P{~QFy*TU5yZ>M)j%2wR zMPZzRfS43=%!h~wE35~Az!#YWAW%qP4gjD>0B8bgphN+x+aQ&dLQ;ar6=ibFw6VNR)t!60Rn*8B>93MdC@6LJQ63SU@fX<~?IIc!)H22E{rL|Oq7 zJVb#*S^%Cy0-*y60{})9Oav(sLP<|jTex`h>fOt?uV1(k0029te!3?B diff --git a/dist/construct/images/navigation/header_toolstorage.gif b/dist/construct/images/navigation/header_toolstorage.gif deleted file mode 100644 index 9190ef5a43d882aeaa6c2a305a3f7e2a4d06b58d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 361 zcmV-v0hazpNk%w1VR!%z0J8u9|NsB&?Cj;`<=@}m+1c65%*?;Pzq7NmtgNi2rly&h znZUrn000000000000000A^8LW000XBEC2ui0C)fn000F4P{~QFy*TU5yZ^``ipVDk z1%?!bk(h8SZvtT30u1C90R%N(ZAL75LO#Nwq%aInl!8EDnCvWv-z0Si015|*6Dlqw z%!QiBp+m5`cV zOm-fA6M~rl5?Ts;r#uw~UN!_LrV^wIUa}Ph1Da`hSt$rRn}47kqPUT>h0ClK3460c z$kNiK276q-+Hi5j#*lztjjVhR^tx>f&uvT+sM&`J~fyYI*J?#!-oxGBvYzf$+D%(moQ_> HhyVaPZ|abk diff --git a/dist/construct/images/navigation/logout.gif b/dist/construct/images/navigation/logout.gif deleted file mode 100644 index 9d5229f96c5c5badeabb66b14ed933bb5dcc0a84..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 362 zcmZ?wbhEHb^kWcWIP#z2KM?%>{Qu|s|3BXS|MB?$r~Cgu-TVLg-2cbB{@-2o|Hh>M z*Jl2|(E0yF>HmYN|Mvy`-yQmYyTku2F8?WP^)lb2+y!6JKvR!=_KLP^^K2eGx-mm&QaM!IrHI{EOF}%{M%1ooUy=$I8II z^ib)=OUkTnd!KSYR-UGRKPY{Qu{h|34o8|8)2NjYC>avudh9ReCF=mL)WhDxNu?3i4%(t9-O&*cmI|x&1=?FE?ZVGe}3A`nG6gJ2M!zn zlE^^uCkrD3gA{`fNDyQv1MABKB?iaFxf!e0<-Feafs2Qs@kqtG_Zk784=fOPY|PW| zA+C8cM~MI23ju|-Oe>wdTZ)!gNbz@jD_u-%7IAP%T^JK2@-d4k!$pki=c2yKi$v0>rib^&FtIUIT{ G4AuaorI`i* diff --git a/dist/construct/images/navigation/minime1.gif b/dist/construct/images/navigation/minime1.gif deleted file mode 100644 index b1bd60fff8b0099875a573150bf3a034e9ee4ed2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 91 zcmZ?wbhEHb0|yj;vM@3*urufY vxeOq+49p4~yQ23j-XZ=Z=1`o#SEX53T7)&3mQ7xjxouy8&iO6V7#OSp^z0=o diff --git a/dist/construct/images/navigation/minime2.gif b/dist/construct/images/navigation/minime2.gif deleted file mode 100644 index 7ea9447dc6e20a0489626899f24f9d71f8c8cd2d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 91 zcmZ?wbhEHb0|yj;vM@3*urufY vxeOq+49p4<8_t9--YKq9;qUS1(UT*`J0BlSJZ-s3WA@Gho%1EVstncu9U~_l diff --git a/dist/construct/images/navigation/orangespacer.gif b/dist/construct/images/navigation/orangespacer.gif deleted file mode 100644 index ba20fff6ea7169c755ad56bd695ce4133c64e754..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 807 zcmZ?wbhEHbWMp7u`2L^aKM>4e7zLvtFaks1z<~pbKUo+V82&TpfV>aN6ATM)j$~<` zXsWJk>%MR-&$OD{v$0fnve!T!U?3RC0Er4fzzjMi2>>H1Aqo_X0wKBxAQ%Xykuj7i zih^C3fK(m~0x)1vh%3g=R&)?3Fb;8AU;=Ola}0e3ZEXw$18@e2UyKt=OgjQ$Ukj0W zdPrD*fdmpuVR48CH#>|3TM1ZRWJwfA3vG1)KeV1JR1{XBM7Nz`L|BYxL|+F1Y`moa zLlU=sQ&PRzG712p+TSq=2jJx8=Di04(C6$T2mt_{?ekMQ8wk<^-t_E>1V0zv1sKPV z9-SrYBq$1yuwXv`vM4Nswt#>&huIE%neYw(!7NMvym69t5o4Y%LwMcs$UxBmfMJGg zG}%jm0eJEj3>aYO--H6DXp*DTXTpL6&LqYIC=?vhmkI$~EWofSyE_3CCy=4dhq+CeDh9t(uMo=Qopp}Ae6joSyDaI&PU^3=Whj}%UK*vtorS(%B zbkJ78j$35F$s0Uske!ipjc1Qd`z6*(MIaI&081Clg_VT~FfrFa7;rO0az0j4W))I> z#YlFTSxAE+8v!NcPXQ3&=2ut{Mcpk>b%DwS-C&?do`3GA X!w^R-@x&BYZ1KeyXRPtX5dZ)?$n26b diff --git a/dist/construct/images/navigation/recalculate_button.gif b/dist/construct/images/navigation/recalculate_button.gif deleted file mode 100644 index e5af85d7e3616e46a56fee9e7ddb3d614e3fbfae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1553 zcmb``>sQhT7{KwL*~L6-P0MB1sokS_WVy0sn?{BDmRdn3^D;G2)0I-Tv*U5>f7s_d=X;)4&%5W6zpuyHglm93u(}Sc zudlDIt^KpMwz|6d>C-2(*}Sr{vi$k;^78VM*}Sy0w6L%+KR-V=H)k@LW@l&Ly?Zw^ zGc&!oI5jmjxv(%fIXN*gF+M*(K0ZD+HfA)Lj7H<==;&JugJEQ3#4s~sFc|cD{p;7S zU%q@fJUKZ$JUlcsG-&bs`HS)K7Z#RfVBopMz`(%Rm?h7iJ?ro9?=u?vEVa<-bfcq| zXtmnjzP=uvuBWF*GcuylXu7+*)dqvQw^yxJt5hnbUa#!wQCi653XMjgP{?1sl4~?_ zx%}zVr%#?d>FVl|$z)QgR5Caykw_jte*EasBe7B`Rw%?`ac5_zNF?g$=n(ez3xz^~ zK+xXa-qzN}=kr@zTX|Y7kH>3iY2nIbTrRh{xtYV^G&MD`B@#B9%~GpbELNjR)!5kB z(9lqC!DKQO3QHIa23;_owY5n}Nr_}~VqzkkOoo$4a5x-BB*I{@1R^oMrY1f< zK8{F?BM{=^;%*R$u>?Xa9v_3pU$3r?#^Iu)qoZ)RsHmvO$jFF@i16_6u&}Vu(9q!E z;44?I1O^5M1Oz}J5a54x^1o~U{Q_XK4tTexL)sb2e48C7VzlkfO4q=9F@To<20}QV zN-=5$4ZW34kc`Wxw_fxC)PCS7osiW}a)b9#{qg>lr&9OmFsD!YX%Yw_JjVbLXQ;ss zeVQF9<$5WKFJ@ee}BWdB^+u58fhms zPgE^lRXwmCoZ*r`90}U&w;sA}ZE#Q)bUS_f!Q&SlLC6bTS#r-#cSFL@w31v?=qJed zHXohaE}%f~40Ls3T#?7VxnSe?5KINx2h{INo-rnE!eF}{d~J}>Y`@>lbCY97mkJ(` z92^N96o&+-FaFzm{`MJ-1?8|X4}zRbwxybTLW+l!Y7fgiU#9Oy1#yn;#X?$f(<$)% zA%7N|i#y-g{)OAZN|*Xg^*MXYYa0##D0NUYtu=o7E}eRsf(Y_-+K0Im;1W^B-})J- zU1|k;rGpfYZ)PG*AH8<$-N0xn(?u!Y=4}cQLMj1jMv?0m+D;YQ8E`WlciiW4Gd?Kjzv;NuXQzhh!bsB(K@|MJtQ@G!@*4^mkN*Jop9PA z4QH<85MLy9&TjJTFL$L%>XX34{UM8wRAynROr`dVB9y>?l~7X zA4DVlI9oDkhj+tnx&{1n7-d~)ibCni^^hWcxr0lF?hc!EbG@F`>s&WC)V*6W?cxoM zVev9Tcn*id4(JX|S^Ib`4(bOyW~m(m=N8_tyzp4Lx3as%3tx71=L{zJhdtm$(a^PD zzR!FWb~P>YH8gI(-Iv8dh3qPruoJ&Y#HMA9An2`GZ&TYAvqljz<_74|O&fu8{{ru7 BB|-oI diff --git a/dist/construct/images/navigation/whitey.gif b/dist/construct/images/navigation/whitey.gif deleted file mode 100644 index 1e11b84accf886c811781766f9216b72c272ff77..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 77 zcmZ?wbhEHbY-V6#nE0RJ|Ns9pXU=3`U^sB#fZ|UUMg|6E1|1-m0VL1BB-hiw^7LE& g#dEgY>fW5U;5UEUBadm%I+v~5x%C~lHY1Ox2heq3@_N0JS7+CrR+74En#^Xi)oOLQT;1K>ZnwL? zzkg_GXn1&dWMqWrd7sZ02n2$`U^pC(L?W?REFO=iQmJ%0y|S{B&1MUQLa|s}-vB@n zAiECfA{5pkUVxP%qzVwpLU09!Q{YR(ND5+E2(LgO4SWiQ;^2;fD+2XF&<21G0O^Bl z5z+-1jzfP8x+7o>LsJk88>|ly55*1VEJRiymmVK4`wJ^)%DkUa2l z7>+@I1iClm0WfT6MBCqW|N6aslHnt$+CfA^~Bf&KV6YjFaWt`mRN1Y^cK2 zccT=2_39tAn1?mZSVW^0?M9iT`#SS7{m`bKzs-dcQaQ47q2&dE9Bu3Sti%Z>UXtrr z6f)c(rewMvma^vP@$(rRmY*@R&UN1J(3G|GI7Q99In)MLPq zLR^ba)83`Am+&3epQJ+AxbQwy_sth2d`zmHZlmLQ7*@emCJTjmG-zz-LvY!C-f?HlG^R`=9t#C46oFaJ!5nwf5Ib? z;fb-by-t#m?7GYFjAcG&D?4zF%#mHjUrjKzYo-a>Qc5Hx`)U{L>g~zHv!^P9v{2q@ z>b0txnK|Om=wg&t+4|;c#*B3{gaQ#W8Xs?#j!Zb>2mJ`@X!L-eby-z0!Q| zXj1VoIWw+s-MDsm%F(inBgb9O&9M6UkU(XYDQ#sZ$6Q{ji?HxzkCO05yX3;)`U1I? zmE;ecwm+v&QqJ~eTw=ehw@c26Fss6$RT5O^s_RWhgDJnHtPLFH)y+NL zMWq9o?8-{@f|WK8%-?csYOov%^ymy3X>H$~#TTqb7hhf!DU+AWlyi1f)tSpB z#g?F!P&_tWvT98FJGiv6>H}6{uFeyY8vQ#qO^t3}MkD(=TB80mX?)9CGtV^y4*1z5 zwf~Kbm9mlEF$wll$)>UB@=Meg*=I9k?L~&ax`Xt7Pc>@2N#)MaZ?2Or+(o>d=yh6Yi2Rgo1Y$BCJ6EXyV^yjXr_o7x()g6Up=lzd|J~c*_>M<-Z~w z^B0Gf@Gyjo;Do1$W1a*~()!0On`wmUbI4eo)~gbW=*s<9EQxIdA- zx?7m0tHrHcS2N9p)z!EFeek=|=EZv}W-+3!kB~;+exW`0{QO>|ef_T-PKS6Io#<}& zr@pJ9pW0^pDu1Na-`EfqNUnt(EiAfy`k0US9AQ;Qu^(^#qfJCJ0u{}zX$J6KlEXJ~ zLQyM=4mFXLnv+QOgWoWC4>zc0JI?DSa8d5eEiHpq^aJ>JZ49Q%#eXy*vv`@qNk1n% y-njMZQpN56Jo5fs&9Gh)V8k6KRTC#dC*D>6y1D;peec&VpM^W`87yiVwfzjkRbj~h diff --git a/dist/construct/images/thumb/os28004_b.gif b/dist/construct/images/thumb/os28004_b.gif deleted file mode 100644 index 822b52a14aeb17938321ab193cfe0a39fa6d8040..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3574 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 diff --git a/dist/construct/images/thumb/os28005_b.gif b/dist/construct/images/thumb/os28005_b.gif deleted file mode 100644 index f0c3e0cf198734a019309dc2759806457293d20e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3972 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 KR;ef?;QxPCQYNPW diff --git a/dist/construct/images/thumb/os28007_b.gif b/dist/construct/images/thumb/os28007_b.gif deleted file mode 100644 index 129fe62c64675c14f32a3d9e76c06a0ba70b5970..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2606 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 G+W!GEIaI;` diff --git a/dist/construct/images/thumb/os28008_b.gif b/dist/construct/images/thumb/os28008_b.gif deleted file mode 100644 index 73e997cc51cd2934ff0baba0f6f37f6398c3ca21..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2256 zcmV;>2ru_XNk%w1VNd{20QUd@|NsA&h>DwcRkW$|eLXM%+A$jXM5VeoYT3SGBiiCiekl#kEENO zWm{cpXKK{W(t~@B#+hIG`1Q)7ZFyv5+PaO~#jE4r;nuWEzLR0Qw6yQz)XK%p{QUgX)Y`U;TCJ0Z zgLQL@dwi9Aa>KT>#<#4Yq^iD;Te_5MuaI`o%Fxrv!`Iv5vzdPW{{G|N-tg$)&994c zU0l?_xr20R($3Vhl5M%Gq|e96-^s1csCCApdRSFelz3p@zrOzc{rC6z`uqH_rm6k= z_wMNB{`~sFxwP)#&feSJvYUzi{ruY4+5i9k^Yir7&(!eZ&Aq8p*)G&A+_V$iLXfxR+;9xTc@<^!4=f^T@-<(6EfAr>>=-q^FaS`}_K6f2Zx+ z+gWv~MP!=|1pw~u@1TNZa%pgrY)0wn>!hEs=H=)9{{Q#%^NS!LifT^Lu!3SwO30pO zfLb)cm0z;6z_qZqppA#=-_+{Y*X-WPS4A?&qkGu3h{K_E%D=P8$jPjge%H5;{{R2f zxR!o#Zqc=qA^8LV00000EC2ui08ju>000R8009UbNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiuz(v7^V2AVWGtk|)H019@JFTsd%5Hg4Opp;XCoC5lIFMv=Nzvu7D`J%bAL z22^NIS0Eg^(t*S%#Y0{YErb=wj0q+M_&JRT4UP?k(R73un}kWetq}FtkT6H;&Fho%s5+oQjZI!oC zfJ6b%0|d@7b(Jkcv}C|Qp$;@=SnE7Ry^6mVMTx&EcVp@f?!R0LvO{gued>n1A#g3r1S~UAxZ}G3nQ)S zqrTJ%DNd=(Lo2V907*}B~>9CeDI_cEU@s$8kI;Q5CdaqAO{t?7%I&W7w~XFEFX}N z#4qY3RYehFEHQ}{au|wB4X#N4!odX}bTI)Fr2^mw7Gul=bU55zB&A+1ql{NQYH%)q&oo!IQ)=F3u>qV10T7F01Pb=j9>{64K(1yZ>tax z@B=!CH~<7t93smWi|k_$7Dd#d$Q=yGph`SDi1LCqRs0qU2~NIKf)qT&GDRiC$dC>m zaSBv~2sk7e2?>92z`_7J#3;oyg=nHeF5eKuz&c?hDGC{XfDwld4{)Hi1p%;f2Ob*` zM1d7bB#AkU$FS1ni-N8|)NXkOQ4ilViAz#8E>m0BFHM4b0q;i2$M% zWJ)@nkiOt5EHpyK1C0Q{!v_jD^R_+;A_xqq5DyNO0~0KuRVm2F12WWr6Ift}7!LA^ zc~Bt>93sUZ5=DR#tO5Y^+l0H=;iZGjZ66tY0}GH<0>AKp1dh0a0KS3{9CX434p`7A z;y?l^)Sv|3&|f3}#P9=jKqG(zX+;qP(2ND4AP$jJzyK=Kz%SS$0cTJM0|bFV{6r%T zjgZ_l1Of&}D8Ul~$XP=CKm{T=@ed?u1a}T~0bLNG3CLIo0@fh{HA<%pZy-S|-T{;y zT;L1;0EIIaVu~@e!w>io2Mc&0g&Al804Uf*KWqVy94-U~MqmJbv;YMm41f&2!N4W3 zunR7Ha3L} z12!002LTlDH@E=DC(beu2b>@UDe&V$hyaY-{e~t4k%1fd;D%N>gaIR{Tat(%0!4h` zA*wKf3&e@7AMT|97}{$H4rmdBX{ksCE>MIb__>f1j6eoCQUWamz>0`)Vgx@>ktry# z2pc#8BCn8vAbh}3)%YP9P56dEAA$fYTtZR{;zR^uV2o)(q!nWTMHcZB32N{m23?E@ z5k?SH=^(%bF&M!$BccYH0s=p3Xh%J$AwP&vfEJYSd e6*+-9f76O8xYHsysH&mnO4qvD^{!3{2mm`2StJGk diff --git a/dist/construct/images/thumb/os28009_b.gif b/dist/construct/images/thumb/os28009_b.gif deleted file mode 100644 index b8fa2567d268bd000b5df740c5c3e68b054716b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3636 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 diff --git a/dist/construct/images/thumb/os28057a_b.gif b/dist/construct/images/thumb/os28057a_b.gif deleted file mode 100644 index 483bbd96457defab6dbee8ce219bdc83c56f0b16..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2980 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 a1TSWdKnNloOCW&`#Rvw=>9UJ}002AS(==uP diff --git a/dist/construct/images/thumb/os28057b_b.gif b/dist/construct/images/thumb/os28057b_b.gif deleted file mode 100644 index 0fa74bf64a7b108d23ba6a7e4e849f86172d3764..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2940 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 VVG?J%9e$`LT|B<=Zx95Q{~v~T$5H?Q diff --git a/dist/construct/images/thumb/os28057c_b.gif b/dist/construct/images/thumb/os28057c_b.gif deleted file mode 100644 index c55bc06eee3242c289409c9e9c6766dbade16e71..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2569 zcmV+k3ikC!Nk%w1VNd{20QUd@|NsB~|NmA~O_h?3URqNa85V?ugMoc_nw+6rUSxB1 zdtzm5WMW=KL_yip%dxJgi;awXeS&LgV{~w9i;IzJZF8!tv~zQE_x%3#_4UNW%6@=@ z>gnm>;NR`-?S_GTz`w)g<>lex;=sMT`}FC;!M&1>ioU(U+1c4)Usu-E)$#H1eR*^{ zJv^nQsz^*xnUs*y(a@BZo3pU3*4Ek1%*@{2-2D9fZ*h3~`ufYv(3F*yac*dSeR{gO zxx&D~cy@AMU0Axex}ltwW@v39B_qhj$}%-JD=jQ)WnH78oyy3_GBYh+U0nYD{-&m- z%E`sa#>C3W%x!IInwgras;R-awY9ajjfsUtNlTQOqc=J{y}Q1)wYtT^#Ky$NmzI%C zO-o5iOZWHpfPsmcmYjKdf6>p)VPay?&d^UzOhrOCx3sXJqNRt1f`EU0xVN=tYjajr zP+nkRhKG!4X=q?#WwEih*w@w6)75EeZmq4TSyoS}s;**WX1~3--QD2ks#>mbJ4i3b_z`VS>=jiDqCnqK-Abfp$dwzat*NX~ zRA6>^c(}K{A^8LV00000EC2ui08ju>000R800RgdNU)&6g9r!KN(1V`h=S`t{JZcc zAwpLeGHT2Sprgl+AVZ2A>G7G1aFWh|tky?MG&Uq-%A83vrX^dISa1ND;f{ zAtMQw>(pkGss0SilzxFG?lfKW$7 zNDmcW&H3O#I7m>YYiel3qDKaifYRXqo3az6j8}dbK(P+ez&$55X$(kmWu&Dgv?e?Q z8Dl|&N7^vPo=0uSQbSFieDKD1BIQxT1uUrZ(G44*H-QZUeso1C7mz}e2X3H1k_uAL z^2RzJX_5dAk35j!M`_ftMKUyv;Ymzs{NTqMA3Z~abO%iGqDO#?5C#w)iX{aXa~SZ^ zC;jNb%?Lw!M9(|DG_amnM*QFi1Rm)EO&pJau}qa60fWpB+4LY*Ek7*c4HzC#pxQnd zqS+A*XZX{AE+5S@%TT0%pidasbfiNZLTv`(_AP{nkH2|!D zLj{i<5DcUpk%Ej72{dryR2gvp;lnMU0MNz)7f2uvsvaQ|ML3uQSJVn8RDnbZ^u)0N z0|WfRYe$p(14khzPBqC7u@qrQD{=TSK?l!b3c?bn5Rhk4kzk9&6O|;;3{2tfX+$h? z>@n3gCqRG%5jc2rKq~Qel)(wfpaBGfL|GyXFn z`}qvOHeSS%O`5gT-}MASlP zgN7V@_@Z`4^n6i;8rszVw8|G}^m0fN!YWOQ22s?(OxAT2!rk#Ipp3r~nN1~E9$fk!?J7)1d-fUwHtU=wY~!YM-b5nCt#AB`Xc5F`+f zc3=S*^8HkiN1G9xl)a57^*@U9{j9n#f}YHsOLJ6oL$9$b~kx zk%kf^0T1g?#TK$)h&)cr7Iv5e9lQ~Q5J;gMN;pIYo{@!8h(R)WjD!UsKnDd7047%m zK|Tfm08eD$1%-H78CTJV2+-jX16T(KPN0i@1Vs^-aKs~Cl}B5Qqg*t~g9_k4M*vVl z4Ps~l!18GS2?|6&0&8#*7q$TgEI4ZgjCg@R#*jx~$lx1wNI?M_unkb0VFD)ufDsvArXbZgDC3R5g)w3Ic4m_ zHx|%@Kv<&^jxfhI-k=nZgyIS;lpYEwuz?2j4FwUv0XjOckHY0~9SCs7E+i1WX?%hV zOGw5mZTXQC5JLfSpi)PSKn6?IV`>!XCK6hY$Xc6xJYyBP1Zcjv(R;1{f(W*oq7aR6-3t00}9K zaE1%!@SzB&SV10Fzzj1C!wo3Dz|N0w z;2%{8f)AV^gLKRROc{j45Z*D8JbWP*K@gECY(b1VFiv`cfbK{@kcWKW6#(?OLmQ$| zE5mxE8U$+s)SPgKOw6GN!8Nfbl%bC%WDNi`$b=alflL$AfOR}zX9ip#gJCpc6$7$} fl9wC+8mPbxy#NM5G;oa#EQrY#!N^855)c48@z#V# diff --git a/dist/construct/images/thumb/os28062_b.gif b/dist/construct/images/thumb/os28062_b.gif deleted file mode 100644 index 97667ec3833cf2428cd536d6dd74698a68b08127..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2406 zcmV-s37PgsNk%w1VNd{20QUd@|NsB(?d^Jcc>n+aVqso%baEXY9ejCoY-?$RfqN<| zDOy=nAt4?S5e^j<5?otZ2?_;dWMeBTCPP9#@$vBu4hp@!yyD{F=H}&%jf)%{84V5$ z78n%}5)h)HouZwc6c!ZT-P{ER1Tr!%4iF9EJv};r zetSSWFcK6J_WJ$A#l@DDlFG@-wzaa9l8y%m1quua{QUfqj)>dZ*+WD@AtE5w)zzw^ zqyhv1N=il=8yV{A>F)CLBP1bGQBM2%`m(UDnU|GeT~w;6r2ql|i;9QY+~UH*!5<(U z_xJXjmyofptN#A}adB=S9~#Wf(uReDsiml$oSNq9>-hNivaYe8o}8_zs}T?jBqbuM zs;SP-&Hw=b^z`%?7#8K{>fqnq$j8QNX=c8+J40HZuPI|2Z};H#s+9-v zaAyz>2%4Ig(9X`r#lz9k)yvDtxVN_O@b4EH7~tUF{{H8R`+uh&x_4e=Y?#ju>t*xr|_VpDK47Rhiy1KXm0{~l9N=ZjS^7Hh!xxCQM&?zV* ztE{WLy}rA=y4~E{`T6$bBm7JBB_VxAk_4NDu`x+V*1q1+> zn3wzf`%h0y9~=~fgMb?x7&bRG^Yioa^!4%d^YQfgX=h@9e}12xpD!>jzrer@4GZ}9 z_jq@5r>CbJ8yNll{XjrH*4Nzm`}(G#rIe7792*xD6c7vx2p%6Fdv4sUO5{{8*b)6%}Y!6PFe{r&#M!^bZ!D8j+U`~Lo)pPl^t``g>uac^*^ zpPm5$0KdPzA^8LV00000EC2ui08ju>000R8009UbNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiuz(v7^V2AVZ3zSj^kVlLe=UaUu$(%T{ufP;!a#LLU!8XpWrH1DA|EIz@Jh z(I!iXpdc6Z$d!wU4unvUT1;i37AiYO4W5ajWRX;f@Gi^{!^e)Ff@I_*sD$%tL~ZH# zTsnbZAHe`wlE|v@)Gb6Pfy~4(caDufdN`Dva#1OhUx`DsOlwgFjX-FO#3V^Vqtj!D zgThIRR)UQgZvOyuy1>ZRfdf5|;us}{RR#g?5FjW}O;4M3o(ZbrGsH}Z%a9U*P`z1`L){vkWGo1n zz(7NtG9bLr0UmgCU?2yf5WzqYfY5QsFOm-gGA&= zAr2_u#0rowVnjo#0MWn`B2+-d1sH+yjxa~avI#|ISiufA`8@N$8y_-61B=&KpwR`8 zDDa3B6nRt69EwhD3Pr8#!G#xYc%cY5XtXQUJD!A6 zjuRB|!VMOal!PNak$uRQRM7kLA%@&h1*BEmPVOeDlRTu9M{0K^yC7%M!{mqWbJp}`Ay3{b!n0)6uJ4@@AH1rG{v zFhDgB1%SW?AZ#!I0Z|Dw#WDkA14K(S;lwo*V1O~~U?vX1KoK@jh8x)63IH5P7Y6VG zI4FT8h8O`Dcwhq!OwS=uc)$uwa07p&Pb(%^0SQ>Zrjf8=2RxXE13mB%Vo;$0b;!mI zGJudN6krJ;_yX|%MnVV{Fn|Zyh{Y8k!US`8q64wmT|zGKgbg%+g&{FUKCZ!oCsY6e z%^;scHo<@wfZ%?~Qb-zN!GUrR0wji@#vSfp01>nU34d8&5PpyXr6t4y*?0j7(h#VP z@FEf;U;r3E5DRCpA|iIcg9-3Z0gy372nyH$9Bz@ajI?4K3?RZ2RuGE`tSx~m=s*yb zKn+JYga9I_Lp$)b5jK=TJ4=v24T1xaOJu_U8xTZ19wGw~IHLln+sG6(>=wKd#K!iOS`k4dRAQTV~fJD%s0Ru>)5g0fr z0I0D74M1R05$S^ip5TfT=q#QKxIqvq5DAH7fCN?e0u_V`fT((+0Y{KX1UisagT|8p zD+oe4S|_y>ltBZCVCzW{V1qiiBdielM>n1ziAMxgs4WnI1{z?8h_s*_^RUDLxC($Q zh@cw{kfK9I!2&@XqY9^tXC_F12TPchAu=ch1HNzyUNE*5Ko~$3fE3b3RG|v4pdn*< zM*v+zbdw=hkiA%P0!3!lvf9>4*KxnLu=c`Z*ued`m_ZFlGA5eZr^!urTf~OH*W@Y zw_i;D`SRtlzE?C7h2Q=h#z=i6_;EhsqR?&*ELrnpD%#6&2hK4tP%?#^)9=SKVJu$JQq@=L0C^|Yuf)=(kHxCXD zo;cpn+}w8h)S1Q;r_Z1NE`Do#etv#(a_WZ0qs;0kx@cHE%|HKq&dA(Tr93X$E{fP7tgk=bbLHxqwcJbU%Uk2OXYI(hVFK6o&y*FS#!>P@I1Y(sc> zR_4y1dar+}f4+XrL%xoV-s0@y{*5?isDChYouIbvc-)qlxGnLQE?w&Eyoer^ev`Xz z(P%6zlonM|SVt9kV%dVPWCup(6!{ z57*Vz9{^)f}GDTf&ZR5#iqj8Z9JE)q@ zOiVtXn3(t);r;pNtJt_Ls{{OZ>_`a+Tvb)6^j{hH?u)k{XJ=>i_wIJ7FEy*0660d~ ze!OO9Yj^PA(UT`nwtmspu`OX+k+euEQ^;hp|2}%UxUjH){{bIwFOK(eH#c{$Wj#Gw|$wZy;k2!3Tth=^N?MfvFO!R@i@{f5U(4KIp`sVv0cPG>FkRDMTx zxIJUp3PLLyI)pHf+-{winn?>2HF>gNMw}YBI7HmMGp-Dn8nInNe+_YyVpFjET}Kzf z2ipMoq5T_2>*M<4Od;(1ZbwiP$6j;j)v{IH@-dNuuFK5x*;Ukd#{KfJhcJYMH=zV2 zTz@T8lGtoMT66i^b5&7XO_!DCFrSst$>uTNYk#RvQ*6SN&NznAOt3a6&C=$183{m^ zIZxfI15Ik|N{qzV1yMUGlCY7pbx_WQT%QCQatH~9Z*l1j0sag$@Yn%BA8u|Ep_gF{ zU0O~0oM|1=?P6zbX&@^%xQsOxAQO^Pf_xFsOL<>~NEs3cT+FHsV*>?f7>khTIB4kz zN0r(yHykYW1m0;8^Pvti1hb4eO`s*(rdHB(rZs#P95>X6--jqop`qa#>9SUu8PV2k zY^0Fx4C|=0fhjf4*|jczt4mv}k}l0P}#0DKK(xS{znM z%1-j%+n+`B^I8a6WzHDDyv^m{2twPoQfvMc4MW;0is3p;_G}Glwe8zaTh&M#c}17P ze&O^aWFLWaac1-;xJ`+Tz|g0JQkw^mSV_DBJ8-RkX-gL}-uaD}P+a9HOCy(e!=!{- zjy4z`P@qEFJ?|b+okwjUiAlx$OtF0i5*|(VS9T3rNEG7;$O0C3@U7 z;rBPqU+d8*mt+oz0h@YJau9j+{yMm1-T?BMyHFLKRqsO>5y>$DfKE zK7fBL;x_vUwIc3iV0;ir7uQH{uq56z&;M}pt~D5Dxxw?Z zMBHtH>aP%I&a4*kIRW2cthB5%wR9!SV%WdI?~1%jgn*oSpRELNxf)t$NSk^;4ycCj zQ=MAea)cg*2CbYJ4x|fB2gK8%CdjB*$aZD!D{>lB3}}6m$*|gymX3rouc_pz=6n*Q zL0MTClDy8Iaq|QO1*g%r3I?!@JQPr9tFz}*uyQ>}JT5NupZXi_1*C*r0|~TE#n%r@ zp-QyyGgF5%(QmOZLZaYO9cZGOLK<$PM4LR7)qTx?RR#wuS2~!+c4+)c=e4Z#IAAl+8Jy~$IP>ylpl(Q2mVegE7`wuF)U0k#|l%WfH zVpbWusttSEjlVQk3pl~gcjLRTmJ~IXEx_2{n7e7FQA4k7+wc~s39hGFD(lwJwr7O0 ze3cyvSOmIEVa)qc={c)5>x4%yiDMEPU1yIGsdzh<)KnZp0UN6m{qtwUs9(1u)nx88 zf4c?;kJ^(aeFzY*nP9h}6-T(m4X{HbcE-8~@XvW6jvX4xkVP8^iGx>f*8;(PLWlVd z`Kq8CsKja#*O(CuJ)xD!kO4-K0)hB5YorLw3jfT*XNi>f@(FyF0QC);rj)JZTiXyY zHaf%Dd@4#TQ4CF!qfp))cPVpP15w^eHx={)M1^d1!p_P()Dc5cLQ8{0C?(I&fo726 zymRCT%LzXx)L5y|&A*0VZMJccrFenTGgX6)3E)}BB0}I1Ko=LMFg? znMv0ZwD@xzg{cUrM7o z0cK8&BFv;4PzmTI(xZ+B_z?d5m#5$W^llA%oTUidh|1E)5V*D@n;j)glxElyD0K>! zvKr&0!2FWG4YRV{VB#h}+4PgR9~f0HVQ@;}X%){y`Gi;%KY(3S7b7r2y&JD%`sqW> zE=*U#B%O_phIYQ0$p#WsCapB>(mo7MT)qj8?=iW6tC8gsAX=tzN^07T6wyU3LyVGs zUy)ehF{v4GwY?Y+-UZeYbvRcI=o2-vgg$1Vf?dJx`}7rw9a`LT8v^{ufJvmG%-^mL ztE)u&KP^eM7V6hAFTl7J3_jI!N`l>kN+fM9q|D)dQ(vI8csl~!nIw3Mgb-s=bRRGj zd!ORSNX#U&@gX|*p_U+JXb6b`lH!uLMdSi5W?9c$S|eQPsTWbA=g=GY5hB|Gv3Yr6 zBZa~#_v*urf@Yu#1u0KZI^fQ)1A>Ipl7vo;)sG%kv^F!jMM9Ew&Ko?dhBK5frrEJe z&-?0lGx!njYI_Zlcx*ub@!8nS!rBjrSuJZE@%DJZLW^Z^H7)>&Tr5Ny z=^hyyC`Fbi>kgK&TTJbZJw{BzpA>UK^Z*zMI;cRc=m-=*8=A(mg#cTRji*VL`e431 gnJsn?Vl1_P}AKmQa{82|tP diff --git a/dist/construct/images/thumb/os28065_b.gif b/dist/construct/images/thumb/os28065_b.gif deleted file mode 100644 index 42443841e14bd85928f8ac29498e876c2f85a928..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2015 zcmV<52O#)INk%w1VNd{20QUd@|NsA$lbZVT^HDiCo13MptF^tn#cFJK+{DDciip+I z+M-rgu18F}Ra>)aX|+U3sy#xiXlKJ@Y5@TP+uGfyH$3Fy<#YrBxlL4Y5fk;|;(UCB zf(#3S9UDqaRf&Fulp-U`%hI)bdDywRtf{N-=Flr?pB_X=!id(9p20vx|p|_V)Ju{QP+c24Z1mp`N7o z@bE-JM1_Ql?$Od)UTHKkGyVDb`S$nf>FW6H?LI+BK}Ae5G&z736pbPynmjtWwYY0% zZ+Z#|ehv-b-{Q5jyjEFaxwEz2+~AEH8^FH7z>SREq^5<0k&1|rjE$M5UtaF+@6m*c z{{H@a2M5r4g4ovFa&L6ts;!9*4uujCgccTYtwj*E_*nxB6R3c_1s>BYw!936fT4^U1}4-pjD)z|Cm?JY1h=)S@3&(R|z zCGP9&|Nj1&MCH=jh+Y#avrn zxKLNouC4$7{Hix?M|D=wBMC?Fmkora0FxV(^&obl)9-@(C?5D(kH zzpij^lpi1O@9-B45BT`^`}_QM2M36Zl+}xqw^>{F_V}o$tE;7>p`M=(4G#te2kO|^ z=hxTa-``D7SkTYaLP$`hDlJJzNb~dacz1trY;SdQb^reVIW{;oI6pl&G>000R8009UbNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiuz(v7^V2AVZ2ANwTELlPFWFT*qZ9;PqId?yky5ls?MTF`k5yKZcHAJNMx(B8f?}kxP{)FWG@`nt!Qo?`!=_|* zoESIAP%j`7HVqpFsV{~H5aRuNQGpzd6P&tA?4qNa<9YL9)UuFAi4`z$DCi)B5LFlr zrAQ?@(M!TG47+wQfDl9$ED+pGnBc|@#0xz}I4Dvy!`KT5$gV*wC;60E%7+vf$Yf55 zk9G;WNTOi~$Rh+4HhNb>0T z2Cg6>9>ldnK^_BAkQ@$5>`@D63mx%7HZPdK%nU}vH_0PV>;pp}+lZhFA0YCPfGXPr zA_NqZG~>k_bSwc4GaY;ofDNwH00s#pxPV_3dpzRtcHrSxd7-P7y#TG75P=}H( zm@>tYA^ebrL}-M;MHd+fkjpkgxKT+8;!F`hCXK8);}n> z%z{G~s0`E!66Smn2Tb4Kfyfuu6yOUB)(}8I4(BlO2^LOhQ9ui`V3C9%I#^&w3oE3v z#Wyn5Vuc^GlySf;fDm9#906=F20C`wr&{ zKJW+z#8}X*^8^!^fytjV@vwylYj_aJ0lxU7?hj+M@QD*&9KgaYOiUwB4SC$OhYV|E zO-VlpThqcQO?>jn5HfuK@kKo(w1v|t8@R(p6j6B4&jIcX zcjVIsD4^KT3h)ML@PHI@z>~}bo&3vuL25_<3pWESGl3X5Twf3hMWphC9vOI(L^fk_0y7E1vh3U)AvB3uCi(Qrg~_MwU% zC2dk{5E_cbxUi$Kvzzn7^he^z08uOUQL`XmY06PW%h7AA! diff --git a/dist/construct/images/thumb/os28066_b.gif b/dist/construct/images/thumb/os28066_b.gif deleted file mode 100644 index a5a8336e8f6115227dd797aa7c52044376d4761c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1954 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 diff --git a/dist/construct/images/thumb/os28068a_b.gif b/dist/construct/images/thumb/os28068a_b.gif deleted file mode 100644 index e8b8ed79221d55a4d80c8bdeb2026f71e37371e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3943 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 RZB*aNow1Eq0x}T@`X8m^k;VW3 diff --git a/dist/construct/images/thumb/os28069_b.gif b/dist/construct/images/thumb/os28069_b.gif deleted file mode 100644 index a4b66f3ad872f66be5ca0ba4504ed6a74c04e00d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4933 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 diff --git a/dist/construct/images/thumb/os28070_b.gif b/dist/construct/images/thumb/os28070_b.gif deleted file mode 100644 index cc552ce33bc5635b004a20f84b085988b1400167..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5247 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

    Z?xzLa&`FA0@C1oSmlvQ8Km_K;FsVK#}s6k8n!H zvQx4G>M?yB@-%~dw9GBCmIYdDC5i8((?$VmNHEQGj1nEE>ENkfHK%q%*x#bl8X5P6 z33U4S=|=_dHmNL?L{7d!PRe4VR4W}Ndecfs_ELR58t$Sw{%YiNe#?j7{{{SOWNr$b zGy?8g;L(kJLkjFK3*JdLJN;}t4EPdIRV+J0P|WXf_H}o>9*3G$Dx`TsG^a9Zrfp|`uORyzsr$&p1+9IZH_#@h&(E+&yuziE_f=< zUq)n{32zrGzYR>`wToEmxjpuxrutfBT7-oh?3+~QM^lIxZ-4NL`F(_N7FW-%hV6A# zrI1z;wl`mRGnj)aogs|ytUH?(jJxF@JJ z$IhyUVH;RNr@7PoY|X8D=l(_X{d{vyn6$VD@E&v#&8ndNFqv zU8dtsnV<$DZV4B*>SO-pEL4$5m!@;uQ(mzaS|54k$;q>`I^Jnn*KQnr=KzUiaLGYB zK*3kxFysW4Oh8vSa^zffNRC){_s`eH{r3Ry`;`BegMOqRe_ z1nYfH|D=+Ug%yJET8;EuC`?!{<3>!dY%761E*RD@PUD;yR2Z}TVXSMH!`^KMG_w3V lgwPGdZN@LiuxJt205AAL#$hWldmVCBhtg9Ii}i7^?0@6X5ZnL& diff --git a/dist/construct/images/thumb/os28072_b.gif b/dist/construct/images/thumb/os28072_b.gif deleted file mode 100644 index 8c408784f2515fad5c5f1cb332b68fe418f9c7b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2915 zcmV-p3!L;vNk%w1VNd{20QUd@|NsAWd5YB3*}J5Xadd=ka)P+K#A$4NYC0E(Q!1UH zvSMX)m6@x%i(`04A*h06r+Zh|w3e4^N5sa=1Ox^1^YpWmcv4nlfrgl=tGrq+4~dST z>+9{agj|x9riqQ6k$7prlWbXCYLb?zoOM@veT_9cNPU5ko1U5>4l1&td)a} zlBH&9dZleaidZsKSY^Hu^o0Qzt z&H3ZWjF6g;lBLF(bjqH2e1DIZiG@Q$O~aOO{QUhUB`QfeEPR28adwEroO*<7R*_va z6%`e2aDMaK!|mDv1`Sp8&l>Ywyqoualu7-GfikO+IkCCH`kfh3)Zk(R3 zl$fN%k7cf~y`Q18YHxtYl4f9IaL2W%-{IuQy0LhBjC*{E%c6gbj-Qc}sQdf;V?HF# z(AAx3KdX37_V)MY=IgnJT=GB!Y*pR4fk@|c^e+|R=m5e}?$M(WeOU`#n~QaIa zsJD!dm^dvWA^8LV00000EC2ui08ju>000R8009UbNU)$mgQq+lT*$DY!-o(LnzOJ4 zNW_a6Ge!)yEJ;3j8bgZA`0PPEHZoF;T*JJ$6dd%$53BsNv zu?#I^umue?96^H>hLot}LGlc+P9R5Yfeu3)$Z&Y($V!K~hfh$vjj&Ax zOb=|>aU~1=yzyulb9g!FK$?{QvJNpcL}S4x%Q&&dr$s0O>Jyu6;tU&i+`~mFnS>EZ z1aO%1YC$Skum>@BL}P~q4|L$fD4V>{YZULiuuKT1-eYGZ1E{ltB+nLf#tnf`dkHU7 z_`pU7ql~gf8vz&)ND&R#aR(De%t?ze3K-K&y8|)P#vNPS5JxvFXdzfUFFXOl6r^ae z%_d1)$%qF2O5Z6p$9jQz|&6KeH7xz43Ka_3oUif!pS#0z_L#U zJnT||(g2tN1tMU8A%ZV&h;Ts+U=&gU9(bq%NgcCz;K41kG_k}!JMf@@0S78Aj}A&) z;KBj$TQ3YA1tfwyEw>l}`Yco^&;=~J*uf4)kTm2001nSPz#9rcfD#1Y1b9G23evEF zVg%tEv-k!TMt}kZprCO3P{1J!2ml?}Km-dU03J>d08~H%4~wA13f#bn{(0a7xA;aA zV3C0gbb(z4e1!r3-jKo)l)!~4kcBK%@c|Fi!2^V=11qRt1RiuDfJOiX2?0<80u(|P z?0_LHP9O}h6$1}$_=X3lKm}GbVS^sr#V)8YLJ}q;5d=^L9@xPO7vdoWGuXfef^Z84 zc&`NvXaWklz=I`>z!X~qKr)6=f<-_A6?ovp2WH@gVl>eM3}8SV*f;_zFaTvEn8fKw zI0PtEa)qpz0V=MSf*{mEf2H(*8`fw925fKy&e|d{R6&3loB)vQ2!JqH0f`l?aRh7J zfEz|Y%@HsF8wQ9Z0ETc5`?2E$CBVQ3(s6ZNr>bOM?tYQXuz&W?Q3(%hARUe%LI40!0A4JBA4mYAHtiva4K!i}8<+$s($R=? zICiDHH~=qPzz-3WK?yOCDoKxFfJQW;79&Up1{y&MG3b>Dyzs?e%OC-9~m|zS; zIPL_fP>D2%K^Vf|g?N1nTr3~~4OhU#7#{J55T!cLI#E<1lb5Y0HP2sAYz4mal#nH00{*Iu{kVJ2`U5u110d{0kHgr1#r3l zwK2%9ke^}HCg_rdfS@myvut4{WJAaTIfM?3pnz{o0-{R9V<8Su;RVEC0)STQ6vU^1 z8yXW2vIqbH>RaJLcq7sk(1G}N@r@u%;scmWL;wO1SrM!v(f|mx5r|hv4+P1_i57(4{G`I?Z*+itqq+kS>AmLPEj?0W?^KEMa?;cx(Oz~DSUK!Fhs zp^N46g4rcEIW$mUJ_Sg^5;ooigdNTSQ|zJ(@Wg;B1732fR-y?lFvX{1ZV;BkLW@ja Nh#5#8b&&)F06YKh_oDy+ diff --git a/dist/construct/images/thumb/os28073_b.gif b/dist/construct/images/thumb/os28073_b.gif deleted file mode 100644 index b7a5bb6b2dc874d34068d03c65b15c6913da115a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2112 zcmV-G2*3A7Nk%w1VNd{20QUd@|NsBQte2;LSMlT1_Vn_PVLYm=t;v;Ry_$3q6&bOO zYr>6N>EYVx-PFvRY!nq0+pdD!vWo}`3X5F-q)vbyS5E2Fm z3NarFGcEv-IiR+0DZM000OG2@nz$ z;k%W)idw#>k`WXad3=M-o^kf?CUs&qH(pCdQ(+e-MO34qIu-S zrpcswuaR{1@a+~D8sx>Q2@4F;t%B65eo9JA@9O13LPM8vPSK}))}?W4M=HaTVbZRJ z?B(Fns(|(jc=s({n3gQJ9Lz@?1ElVk@93&o&!wTNB@1_cNU4(-^(vWa2S ztbnzTXXeVR$D()`J0 z@8rUvEre6=6+Z? ze0zFDM@Wi^hr*I(!If&okYFh&DaVv!000R8009UbNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiubxZPvz*7Vmw-rX>`}lMl_{kYoqPIg~IJiXoEf!xR*D48+_?P)t5e9zJ+@ zVrPmOo;$Y@NkFuRhY3Wd=tO!l1HK*)de}+uR00k=ny8qf`caD$6eu3xn9>6eo-mR= zG{KjFtVU`?N}zq>0Y_Ur5+qD$(x-!6j9j#Md0@v*2@g&uNC+cAQj>gj4_ll?C2iU% zPjGku93~8jxdb#@G$pLWgC|Tsh3r1Y(3F6G+CvWTtVTAQqX0SWqcETmj4&jYI)W0WuhY$5ZybWuJ`iyrG7T1T7Im zCzAlt#R9RA!pt<0{DZ+ZRZFmsj5t9H|0YM7`h%<^Hv0P9N0|4OS&IA8EP{L#$ zNZ>>mO$0+G04%I>!VToOu*(R3gu{eD`>mqzKgiNpw zvakabR>+}@yMFLP$e$0ffNc#>0MZ4bCYTHGLiV<>L?>;4&}I%oEZk5j5S*|CIb%do z04YaQZ1F-)$}zwyDhN_QAmG3<@I*>2+`mmjnF>JxPnLxG}uguA5t75wL!0-BFZGktOEislx$$Z*9N6=g(w3Y zlY|5MY#jhRY!h@t1fszIfJhR}yimagQgD&?Ks7)>!vJiI!HNchOL6q!1GuvIB|xO0 z2QM2?e7Ha`#6ZI&$OLq8w@0)z(ITZ8=+AU*wwLj`U4pZV%n0R@2Ta5acS2*|(* z3}`PAHn7AO3dlBF!~p~<0D?7A5CjIU?{m`l1PI8$3Oy7d2#K)Y7xKrp8dPC|8o)pi z6p@HWSi%h){8|eCL(m3RFmDh&)F2JN)_{6U5D1(|K?<_q!yyDwYA_fD2*yysA`Bu6 z6tIK|Sa-MvRG}3rzyJvqK}A)#p%$Op!Y@GJ01c2Z4`6tN0*-Kl&&{J3t*C+qDp7h=KkC;G!0!H~c0Mud#F91Up5&?#6>Hr+Y>?RW^00uD3;SrQ%1T4GBC?z<9 q0u-PmI7CJrPl1GD1&gpm85l9Seh!2QN3g&y4a(4lI+P*-0RTG@(bwJp diff --git a/dist/construct/images/thumb/os28074_b.gif b/dist/construct/images/thumb/os28074_b.gif deleted file mode 100644 index 5b1616e70c29675d53d3fafaf827d5a7f73464cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2363 zcmV-B3B>kCNk%w1VNd{20QUd@|NsBGb2q7DI0Xg?c|;_ORWjGQsVFWr2@DaZRU5sE zY{`sdh=_}fQ7n2o6_;d3$%Iqp#H|q(8kABh$((`*3lath4Egl(rClVldSjegGRMfv z+QqpXA}q+MnF$RP%A$?5XDGOIN)8Ye6B#7Anu`t+7^_?%wUT-_H#(F{9IA?UK9hOulN-P(utg`?B2Gp8!do~UN1PGc=9_;MwjY%G; zfNOw182|tQ)zR(S}6<;6NW_`g+UpRPbpVj zY2vw=1_=(&xU1W#gNa5R6c`@+`T2=TBnuE3dU}2H?dx+rArBQDrlzT#UpbLlHf}r{ z2MP}S{QQ<$HH}Fj(V~ToM;?qyC67=gj!r24{{ICC3000R8009UbNU)&6g9sBU6j*4X!-o(fI_$;3 z(*}tcGiofzugaKD2b8_oNU~(YVSKc>6Xx!Z9A745#+0#VPd5a@9=R)%WthyL7_&^_ z(E-wj3WOXz$|r6l(5DL7O_4L@fTcYM)ChAF%9tlIP{S6S!J|yJY&@co`13&xAq$S& z34tj#?3Xg#Iz)?BCYq&uSl=4qdca2Ar^h^L+2hSp2fZDSKd_eG_W(BthHaW6j!AKVqYkVgE$H*=PrsmK09Cb@aID$Xjx?319pvxa+{KjJh zROY;MV}wN)MRiBEf~55U837`Q-B!cik=c!5aQR z7!e;mp!b{`YB*9IW!wqF9fAXRr^Om3Lc|XPsSxp;G0<(YNr7ruW`Qs?(l^*RGUWJB z9t@O$#|S1EBY_EOxQA4Nju1y*cVhtJV0`no5V2wryGX^Fz*y&IN5JZ3m7ULk$=btkcil7BuJi(5l3qb*a3y4?~ z02Tuv;Km4kBJjjz34SsL1Dq=VR15@&pb$U+AuLkO7^kA@#-DE*T7`JA8Z;{vF>G^A zCh`ojf=9ym`l}mHJTZn4P8D0w4-2^9!aD(Aum}Mw6f%rBl;8s3v~G-%0$AD>bio!J z7yzy;dbEQAH3Fftfe>1Z0Nn^<^pI%01kGYc1Wk5XIxd0!6rh!wDEPpo0@wLo~_)KRgqzEG+<0N7)XY zLct`UxDbF9vM@qG32;0AgoqDpxFEs_D#StVDSan2ivm7?LPZj)$dU{JLF}CPL5mAe zga_ex(F840{G-X`2VF3U2y9RgixWmhMIfptKNxVr71}EV2x6fD zR?Gtl6R^S+3_*Yg{NQ{ZphY+`pujlfAPP5tML$>oLRlnX2(17II3yv42EgJUvD021 zRG@@FY~u)uz=s3>S^$eB7~p&yID#rPpaEoD0SruN0Woyof%CCI1JGE;1en1LFGN9# z#GrsEw5N$ActHbkSVbbda0NyH0R||@gZ6gN3Nsub5R6!b3c!GhU%)^C5Nuu_hG2$L z93c*RI7B)oPyhn#B9OqlfC8G32t^<=602wdH(;=f9ca%KF)%|U7*PsEMB)u`*yIB| z**tZCKn3_%Mkz|kM{abm2^h+G7JNa&XQlh+!4>xB(LSQG;AIZwJ^wCme1e zhBsV7qQ58s^MGfI2XKK2tGIRsCsaQGbR9xZwP`0 zS8HA`!k~*gw4en{U_t{5P=HGO0-V|_0UYk2hfYX?2{+(IC6++Na-2`7_Beu6fkD?w z00RYE1zsAQ(SQa>qXCuZMcIgTNTCz=z^W}& hTabDf?0^$GAOH=5L0f~=;}mJA0dIRtT!aJ!06Qkw%T@pY diff --git a/dist/construct/images/thumb/os28075_b.gif b/dist/construct/images/thumb/os28075_b.gif deleted file mode 100644 index b75ffa61df6c0b5a150d8ddca5225c876524e0d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2091 zcmV+`2-NpSNk%w1VNd{20QUd@|NsA)Wj(l+c!^pz>*Cz0bxNgiN7}}=6BQMhg>`&X zGi79H$h4%bc1gmRbgg+#x~ZDw-PY{t=~zQG&BMEhYgDn~-2S%*@QCi+8MbM|Vjep>9QN zMIw=1F)l7GL`6)5Q!0E-CX{nn1qB5F0076mw)y$_vw~UH%fZ37t+1h#m1I5|8yxoa z^mR)mvwl$`9Tj_0Et_XPrgTZz(#?%tINZLgSy^L>TsW_LQU?hOqobfbJV4*x-NeJf zQ&Uw94Gw}?Ilz%>s&-7gg;f<34>K||a&msUi(`UTGNf=xj9D;{T{@_9NPA&QnrK0@ zv$OB#;IMj4nPxx1oqvRRczk_*rFBg5^755pJ?Q1+PD@S+3k)DI^aO5~*@URaIObASJ7PS<=(eaa22;fok~o_7oNvuy{(fdq=T+Pmy6f zwuxgL8WXK|OC%;Lk&=;_v!4F{|Gd1so@_*(otzyXAyiIIj(237 znx?OJNCW`@1qTSBaYzab3!`sFn{G*BJstG$?$fT6i�LY(v+%rqsTzOGrfs2?>*5 zHH%g&plU*^bVvRE|Fnf*lwvvn1PA>5`_9I|taC-KuC0w*Im@Dd4GjzX`udh;K$m1Y zCnzpBzICk${O{J(_S!yse-R5D@MtwSG;ZZb-F@ zYX1KJpmR^6bx%xAR$f_BnQBB?Q%`wVJe`t|seoR(flYx>C;R*Ra7QEi{QPlEE(HVw zpKC%lIY2o#IX^oyDJwAw3=c#?K;OBcNk&J5UqCP@A38ifiC8b)*VLPQVsvwHk6JF6 zV>p^+I&N-mA^8LV00000EC2ui08ju>000R8009UbNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiuz(v7^V22-oaE;pD=FIB8sgTshEBtOamLLBT?^QY8?PP}E}CQCS!$QLeaA zBniPEN$}boiqZoL6DK?~qJX04kUKZ`7T}_xDVQc&QE08Jv98WP6gQ$y+y){TE*PZP zAfe-}jiNJQ9z6=v3=y0w#C8#jrB-63D@Ybhnk0e_o;)?q98@M@PqTf~3PVKkVgVL< zc<6|5!-!Fo1)4ejEA^rY3@k`+Ey46h5rQYFGde?nX_q7zF!Hpq^XE^GHuo;%uDA^m zf?b#}m5Rb>I08F%mMr0r%+d0QYo5UWi6W^@bm=wPAgJDo#)MhR#C(6qI&j~U~e1mb{|-7-{5ANBv;qN32X6?hPzn4DF$5JrC^5zzjXdKpLc6*U z04k_b0Z0R*Y>ZG5N%V8eCWcT!g(XTrYjQyl;4_38p;%JD%d12%b3s1n6KfZtU~7ma zgmC*a07dv>N&sElVTc#Dmf^$F1KFU3KWaqXfER#R(!r-#J5mCvU36gxu$HLM2-X5g zPywlGutTdCD#Q#o)Aexw!A=012%>}+sr0+ne3dy-V`Xn#SpBNUcj%bJPP*? zKbQhW7Z_NQ%CZ9J0{0EQ$iNC2prDe90aP@=Fx+X(V0i$tpb`r9RNxACKH|g>KmclN zg31U3ia`WD_zZ5+5JxqPZ~`L?f(2y!!2FhGgBA!O2`8}P{vh#z|NYDn(CCB~Hn4#t zkRcOj0D}dthP5NeY*7Lo{!9m*5W)xs zfJZPuf*YK$fb*873TVth0b1~662QQTZh(UUYx-FlzQD;DU_pE0DKS#Onv(EpBf1W06PjPgJb{z diff --git a/dist/construct/images/thumb/os28076_b.gif b/dist/construct/images/thumb/os28076_b.gif deleted file mode 100644 index 764ef733e91f0bb10bb0166cd148e2328a65f7f1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2116 zcmV-K2)p-3Nk%w1VNd{20QUd@|Ns9J6cyE`dy!5YWoBpW;n|gYXB-?F0RaJcczN*S z*u;ZO$dO*RaXZzjh2Y4zLPJBRaz)zI&cumS?d|P|h=}9k;wmdE$)$>3Ml_k4n&Hd6 z_3Y(VIwgr&GA0fJZ9Em})5E7_F1vb4j8i2_N=ww#)ZVNJc zxvR#FW5tbFyr`QF4-g(8BeaEP{{H^LlWI{?Q;}6B2o4dlva+3DEEE?Rm18{h^YP-+ z#h__Cdqo_`$H&vHkFs+>!-i7w^77)np2Wn(A|)xicS5|4XxzW4)v}X`Y*SudVXtyK z&cnPI85|-bAe?4Fj9Dz6Y)j0ad5&a5#+`=f&biaGnZSNTmRTg(*45U(tJSommy3dx zY)#g?q%1Bl%&CyRh*tdj`uqI-`uO(V!muJDCclec)Xc^k9v`Z0HYX@1_xJanZ9&kP zXVIW__w(=!4Gjhe3LhXJot~ln{QI|hK*^6=kCBr8|NkW=Bme&X%$ISmudna#@CpkI zzqG8_x0<-Bq1d^g)S+*fUNCTRanH!Zx462ux49-KD+mV$3=ImzmwLpRbr%>H#hrWp z{{Nz5FBlXOqiHw5ucWSLFSCGG{Qdt63knkr2$yU}Pft+q*v7t(a*uRg|Nj342L;g4 z(Y?LDetv+_iBU*NPVn#Vj9@#PVk_;~$)SE@+Oe7F&b+3AX48sH&W%<7|NfLLXlW4FEB8ZS1p%>bh(IOC@Cnnh;6ZXO;=c1R8?J|p`r2U;Lgs_;n~!C zQZRl^AgOISA^8LV00000EC2ui08ju>000R8009UbNU)&6g9sBUT*$DY!-ogi*_uHL zqQ#3C3Fa}O0YZ{I8AFOhNXh~*UpZ9xvM{pcNDF(osqjKgL!3<}zPQ}^u!jj&-h|~K z&}Q8}4Qi-K;mI_igES_kHISeA&0C0 z$1bU9bA@rpS>o=j>9Fi?fH$jF`Ne{uHjhixD(s;`p|t6YPUL+^#pX?@LS{l8TUGnO z;9Bb_^yvC~WF80z%$O-uh|i@$Wgt}lP(tO!6*SdbvfD;YMHws?RCp8Q&5Wv4>(Vo| zRiRMrTUZ1D0Re*W6#xRT=;zW4``nXCDu4x$O>GDi;)NHXNOM743TE^LEcB#uz%f|d z;?XS#sPcv|9rRO02HSL)kraYZW{4rOTma7=03~Dc;=n6AD9~_5&5+=X7)uDS z03e)Pd{GcLKy1eeretCRHX=iW#uo30Kno5_OrQuVEkhIp5bcaW4h|kakn=-mNT5y; zw3IUh1Gx_E5Gls4aDq5dOt6d74)K$S2&aV52rmr4fHgy#kkQKuONgTf0}jM8_CjBn zBZ?`FR3pF`q`s}t7NxlVvV;Odn4*XidMES^5dXYVjsj6I@JBj@BLoTyt~j7T2)wvZ zXXFM!lR^X&;K0G!xiHN6nm4#2KnNk6vV#q$8$?DaV=Mu~39r~echy#P` zLi0WlA#ki<2M1uhas&s)3-kgI%)AnUJ_0ztuJKe%(}Do{lw*Vo-bRlG8A6OP1PUjN zVF%99e^bdIF2FE619Bu2JpfxEg0?16 zF^@T%fsee4#1mp51V$7i0&~DX33>Me5RiZcjCjTzSl~tDec=goh{qYM5dk4sfkV90 z1qf+SU|woU119#Ktw4L!G$@HAO)J@9VrX|f-1n_ u5L$4@FHFfHIW&Mm2ma844k%%ZIRbzaKj?q~OkmJ~*un&EYiLFS0suRPj=ib? diff --git a/dist/construct/images/thumb/os28077_b.gif b/dist/construct/images/thumb/os28077_b.gif deleted file mode 100644 index e52c666c19ad1bce2e38607b3ff6655c4edf7eb2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5535 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 o?)50>2(ufuJoB4x?>!Sx2m)UJ10LP)tpET3 diff --git a/dist/construct/images/thumb/os28080_b.gif b/dist/construct/images/thumb/os28080_b.gif deleted file mode 100644 index ef23cc5e282a9b8161f73313dbd1a80c367479eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3198 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 L7aSb~f#ClK6dwaP diff --git a/dist/construct/images/thumb/os28081_b.gif b/dist/construct/images/thumb/os28081_b.gif deleted file mode 100644 index 5ba2c2d26d3abe337ee278b979504283aeb2cdd4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4003 zcmWlaiB}W%;>Eu+$t06~f-I5EVKuTyAYl`vlMoR!VpKptkYOpHqDDkTMLU520fh!c ztB5)*TJ`a4u(m}@+X*P5RU0j}yjR;7m$uaE@5Q#Z=uhF*(kS50Bhf zv8|!LZAqH`n{U2*yJVx9Na;Fy#?pFZeR*Yn|Ha3TpZfUX4zHe=#G_}t&e`3eE$4-&93?*hfgLYY1`Y5?c8BB)wcZh+aFJ#I$;*PYp3b(q24=p zz8xAGb90yV_VlHvXC@}7ja0Kjq3UQqrdy(4yS6MQW`Rl-m#j(s{Ik!`o;km_reSSf zNpoX+W##s$sF=)*HP^4-NMDw*Vf}WMYC%cS`l7-On>JSKbQyVhC2f|@E2FpLViRIx z5?{S~RkN#ZYvrz*J$qXBAFAHAw_;sox^C5X-~F(ze6vt2v7Y->p@=zi`lCPpoQjEF zFg-n8Z*1;A`-x({^5x6_kBCtHv;W+=bDtzENNR3sz3|~j9x_j*GOoPLP*%F>{gVS3 ztMYK%zw>Z!Y;=5JVDP@?L(BD<&z#SE@qnx>GB@|_;JKltB^#n5W90IX;-Zb(-Fo`p<#+>Rm{8Zc10*u$B*@Nb)GWUzZ)DJs#Gm#*>~WlpC7A~ zaS;(w>B}->;}({dZZ25+c63a_i4*4n0_DH|{yaQ9;_%^9$2xnJQL3m&)wvIbBBP?i zLnHs1nu?5yJ>GTt(18H^AWnwomCxngT*XhiG&w&dic`T3>!YfHH(_w=c=NpB^6@x^ud+^~?4 zi0PR(z-C6rZcoq59OyV|zx}U{j?T7r8sTuKU%#F+$FHosDsN5k%8dNcv76VfjvYBf zA3AiXyu9rF)Bh}Ax8dU8CBGMJ@VCPLj=whn&=~-s-l-dnY<8<$}hVPpxyDk0J#jXGCiH}eFnmmxSGLgg~)ZU#u`shY~ z+SW{|&#I!qvvi+YI7=pe25y^9U(=)z=vn>4QDvBd&dv^=#F~<_;)Ac#Bddp8^uhV` zKuOb4uFk~!U7>n^zRTKp=DdF*hJV#vAswpr{mJU-N&^+4UnV*9>| zyJH-SDhLkj@5vizYMjH4E6+~;^;>Uu*Z!xTchsx;zpmsA9EvMn!U`r()g1%u(&%1M zBe%|_5jZ$EL?=xeD(vo+$*;_i!JNzwa)he=lj?^yWX{o$r#W|+_qc1m_qdxAiCAb^ zBdWQKoseUcKia^lj~#cO*YZ2HD^7T)JZi*ZDxC}(5a>Ou^VNDkBj#TeG6a~TSJ+tF z2Z=h_JVtNiB~ILFt!EF^tA&xK6>6RUmDaguR~eG$LpP*szXY8^El9d&f!V_uiig|d zU^^R?X^p1P6=7{xqYBY2P3~Cv9UI2QG-GZx`r;9G%SAe6f2xYmWWM;OO%!yF>~0EP zAJ*OEu0f?K!WHEbutB(vx97z{v$xxYwg!<$#)FnXNuqs(y)zs1 zU?Y#Vm|*?O!sS5+U1`RB1Fi&+Lbg!jtY28>%6utG!fZO>5^})g z`wwv%$z`bCXXoWD zO-Rv&fqkCvAVIJ<3hy^X69ix#JdhKen)tv<3(DiY?O(dFYpm*^yZa+qA^bsdEa>Is zw#MLCOFP5m63T1bKly+yl&*JKemi;~`6hI~x-Ge>P3S~?=;)bt4ib;uF{3_@{Q8n! zDz>scj$d#BxME@!fb9J@FH55@vovX{w1E_{biaWBrwo=`j-eW-dS2OtfpJe7T#+p6 z5YAfc8jBJjT5YD7m~}cs3Vec;_9D@;kr!#s{bVv&^GLBcP;9kO9$RZ78E(!a$B56; z4tyW>WuB(NM-QH*Tsn56h!1_2%@T#oe+8h~L5gNe zpfcn|f^M=-_Jm;hlWG@ql7VMPeQl5q_b9;G+)4wY9A65>DzZeRm0IYAxU;QSm0AOG z8+pLb!4?GtD|ooC5Uy}6;*II+d~r(XV^9al9bk4V1z4E+t{DWrnw{(!-NyVk&;v~F z@e}YIi@dh$!RE00oP`sV&t-z;N&LocVf}uA$fK#odnD<83xrCl7LeMWb#C3WQl3VOPS)9wf}?u+ao_lz9R&aR_d!cN2cCDfItydaX*NGJ9$ulrN zkAZ^$BsRATGj$XvizYlc7=^NNG^u>#BxN-v=m>EA9*ez%FeTn2QU578RA{Kx-S7it z3@oB4q!4KM+pPSs3PVH0BLc}U&xNOmFZK5dB}1tM@cvhwtIS`#E8&VYAF zhI@x-b{!|M#Ie!o^(z}gx{OEx!S;{3Po3&^@Re2wLYaoNKPYrdT&<68HrGF~l9hE> z8_=}{-f0iu1%P2`2aXnZ6`$1Z)IvYmQO=BlmYpPw9M1t(Qbi&60KxQcV)P3wkU&e@ zB!`JQ_fxP-l!D^x@uppui{{Fhlw8JA7uGin4I03L^Gxk*a}Sc>R7=LJrts=yNk_lh z_prX!HIGD52TOjA{tV5-g)WnI>^>0DdHMlgj%yc8-ltfdHb_1(!V0#UViGA-OEA~1 zjLA2TL3T_~AlO-_+)pFEOk3g8wh74mz}|ggfm2x5#QU z-_9d>DGRot`rEZ|APK6J;N;|ObEKT)K=Q?!PJOHDN%x&M)ZB(h&I)sn;I7lg%A(qY zdVld!49seDwL@ z2zd3&3iy(FUjaP=eaKvyajUhork9f-OF+0_R6X~C&3D~|CY*l^Q+3@3Id&$ZME0`} zN=g4wC=JE9?s}1u68}N+N)>Q`g&l7d9d|-)3|LD*CJHUU*rfzWuyPYfPB=iy1`;_C zhpRIU8Jt&aXAyYQLPqxm;D-bCj3WXE1ev7_&K+h1(;iEbKNe);KuQbFkh}s1 zXmRp6MDBkKpatiDd@}Yz339E>FP&jUJNHURN%))3r#a6RoLFEA{1&akc-7wsmtEn9 zID{6(Jo#_JuMW?NvxuG@e2?GO9ZOBf4o2e&!S{trZ9@>}S2gOQdLA0iC7-rB+=r4mayp z9e383@IaiN^9~JPwQ@p0MZbl0kdy={I9dAnv*^^#7T`W5+G=6xnawXE(P;wt&vTJC z;P=xgmw^5%N$psN@Noi<-W%wAk6p+<>JT1dz!AVVf=&}5_=P~XTG$YCbhQPrEv&UT z-<_znUW6ehx8JZj#3}kh5#Q_pVgglKc_JC0A0n;bD7R3shO+Z$X19=#*gzy36R*bM znAmxq7G5S;<#qGseH=XR|g!s}9 zSn`tnj)6lGCwR@+BCF(;p8vjq?^Pm>VI;(w!EU>y~v#Qs{x{wnIAzw9=a*z1gho*}8FH!PqekVK{45)-j54GKe<>@m~;p zetdp-KCkx&p6;HmHmu(V_<&LwD3{A12tp79!?45QKoA5)Q4GUKlJxui6h#GtL7Ju` zkw`QeWf+EKS&rj)o)-i`6h%prWLZ`eC7;h13WZXsgdzy#CsD+q$RdfOC;~?#6dfc5 zJ}Qfm(uN}Nk-Q>EB3s&!3VA-Sa6CsTa&%*3jpGTZs$ImYd_%iPqjv8IAH$RpRo=OwA|zPajTsk|$>- zy-wmx?SVTp>*iGT%IiDN#7ItCarG%_P*1$C3&c+}PXsE4XLi$UTO2nW-1rBk1K~dd zFnUFtxkd~ujXAnQeb2TG+(@;2@xrLp!dy=mYln|j?$A8!++I7xVD~(Mb4~q2;AFjd z-|ydj?-(lQUTlBV(Y%ryKlbxZlNtT>mT@w(>)Q2a4m~hVe|enMy;R*Pzlj@c5N_0) z#(cKjtHnK*s)oxkL(Av)y^L|Ix2vkz6Q9^)gzfm2%2NbnJ>rh*X;;;cI_n#o&0PuI zGLfsh{S6pn`+P~~$m|b)1QWAwqlV+{4??$-uKbC!L9GEU&)J8~c~ z{-I+b?W%VzY#TWB?y9xBb4mzy+Z^_hjxqBZ-!$0Im_zny0XqEK`p0MAld;B;uGS2r zt6%S(0}Li#!-&=s)97{KTbd`DlCjiT?JU$$*&6QgZf$StUrfDXw=dS#|FUa!v4-{} z7gA3)PUv;}!pnX=w0Xs8dFy^G-ZSq?=Jfl+lYrLL7N1KUb!TEvFRhH_u3CGi?tWGb J)j`0^e*vGTpJV_4 diff --git a/dist/construct/images/thumb/os28084_b.gif b/dist/construct/images/thumb/os28084_b.gif deleted file mode 100644 index ca5ff52cf719c70681f239e73d33e1a35795f58b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1676 zcmV;726OpGNk%w1VNd{20QUd@|Ns993JUV_^QWMkfN)WoRRzU+kA9t zzQM{jEf}7el>YtsrKG5Xfqm!Ad+^+s?961$wPyI`q$3&wpq-lk;b+skW7E^q#lN;Z zJUbm88@{-$L`6i6j*tD~biBN~-p7LT=DnhpdhF)P{MuaDvpbcQnd{10^6cB^!cE@X z*Wk{O`}yFMdwwp;4RR_^WWzNlKPsj1`RXVr&@3!2v9hs;g@vxIt)iiz%CA^~ zfq|8lmQ7Agm642+iG0`B*P5E0`uh6c#Afr$S7B)3#3a>BRW``_9hO(Y}E3g@l5Eh4|WZ@X~Vo@5KWI1#MawxuH&=o}k;gNB-l4 z@ZYKH>+G|jV*Bj8(ag%}?eCbFm-pFcd3JPue|_QL;N#`!`~LotkCOM^hU?I9{PyGS z;m6Q~K6l`O;AK&{L$Pqx19dl#`P9`1j}Q z@6NrIx45Xuld$vpqP<1I5qm%R=>l}{{R2?)?WSb$K0?ipP{7Dr83K+DxaRB zM@mK9-rjO=Ye_~x%(-@;n26}+j{NHbZ ze|(E@AMo?_A^8LV00000EC2ui08ju>000R8009UbNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiuz(v7^V2AVZ2ADKgIok|+gc3&m?2q?95>$@AeOUKtA&c)$dCEy^_jQ8F1Q z5n<;@G&WxRr~t&MNERD79l7B&>Tu?B_F-9$$>`2pM8RIQ} z1P*k*ILe5fG=@i0R76EaGqtKGk~3lNf`~h@C-PuY;(~_U6XB`Yaey4~h~`pI5u)fg z#5t2>5QyX)qKOo0L{xu>OkchWoVPdsi~vE2Xz>g!P+FcEeZo8Z_$jI3eqrhCC+j10 zz)yyf@cJDz0uvXE5FkQYK#&Fr?Hx$a2u2X+pg|ho@QV-)PDsxyMkqnugaqwEOA^QA z2OHSgAWk_3(kO^AgJn2jEIqhEAB`U*Vasha0$>6)Ip9U3 z1Jfv@K$3I3a!xu;(MW?o>cHkA1{35^fiMCHAPNBZaC6`XJuJh36pv(q2qG?|0>c^z zw1b9wG<^ijYJW>i)k4;?U|%OGLEKxhD|ys-rzG57&T0s=TE ziU3v2GC>AsSV0FJvM^%>D_Ai91A`g=;1eov2^_Kj8$@J)LIF_F@rDas;B!SG@0hUy z2Ra;=NE?BuQpX-yoDmER;k3}g7|=X|fFtd!KnMcIaYKrh$M-W+lm-%EHDHdS6l%IAl|H@ z$rN26@y|FCL<}4fVZ`9e7fq!5M==FVu>~+?$Wh5K<8WXya9#u>h9zOdF+~edbbv`W zrws4_I4nqFNG{GH5ljqE93qAozW73hI~%M*1~?C}@dPxURA)^v*c@Vs9x;TWg9Hma z5rPK~Wbgzbf>h^3FwvlCfC4%pK!Hg=Squ;d84WzpKo{b1Q9vyVfRM!>A>aYR0$oVa zKm&M?B3?FooB_fhq)RXe2wyDlzylr>;*EPwToK41S%9F29_s)jha8|Z5TGZy2%~He WL2xkx0-+?S{PN5) zH_@zh^zG#Axtw&efjzvZh^>J`_3`Vdjc12@Y0I;c`1bSa+{=|^C7EIz z*13|SaV@cgO4X=ntAtDAwQ}Os#Qy#H*xA+n`s?D-yu7!n#G`cc*{F?K7RJfRqj)^5 zdN<9ni{;zR!<19?;<@(TwQo`?^W)3)>(hm7L;m;L`}E{sXm0Gh9Hb&-o?|mlc;tyyr6o@pkN&o-*$ghu?c~aie!=QOX*1L<$ zv3vjj{-lj^tbIo9)v^8k{Q39x>dvLfp=O?HCCs*&{`v5QWjp=<|GAfH=+(LHq+V-@%UEznI_E%lrEI$(U33@aFL8&G_fe zznEO-;Md2ZaiDN8{q@iO{{O6aE$iRVpl2TG&#l0VMuCBSmw;jE*Qk_uO`dc>;^pMc z&(GoL>hI{??Ck5$&&Sr#$C8M7(9p}YkzVJ)gxaoU=hm;sy{~_Of6u?G@Z!R&cR1qJ zvfSR_$d*_5`~U9Qx6P2!nvHvpJ~IVfzhvk-r(QGt991Oyt#)& zy^u<`he+Yy+WYYm*S3Y- z(W000R8009UbNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiuz(v7^V2AVZ2ANwTELhZO$2c|#*lpcToIF+1rIiy|~LzGSkHqbCWP9rd8O z62*xD3&X5gpa66uJs7JDMIsigogPU9el^udqlcdWd_tXTl8;`3Lt8V(60inpJMcRv&rU1(V0F{z3R2Tq=V?@*4inRponOh1^6Cm^ekjmEJFhy?)+-w36V1b7? z0#7ACWqG0%0bB$=@_ayGAwe!mM^x2DgB?-bYP}LvYM?G7?*NFB-S7>qS4d!4AybA9 z5g|^r7}=x6$)!vB^erQfkP{&^Xm;)YX+y`9fDH)JEAh0Uy(a={xEp-*L4^cavef)2 z=K+(hA#s3{z#3SH@XIm`j38e@r$n&Fb^yS$Ko~8cC6FbZe6gTHnF!#9D+0a2Mi>fQ zKoBfV7`EX-NC=?EK;Ed`Kz#tABcF5yJ0;BW-N(6jlunYzOtoTH*jOZm0-=1G|j!k3e7~kmW#N?9#}R`ykLIkPnzBP#)QwJ5UXK zw6>xuVR-T*0G3Fhh`j(9kd2bA3DSy=HLT(Rrbi|agjNE9GC`~ajggAB+*#rU0`3ar zz#d`*KoAvl6y(JOhRTSBpk7cZ^(;P+4jtTC8hrw2e_=QpI9*UJEpYLI8NCP;z{Ij4 z%1s^tq|X@$16WTv6|1!1M;8}Jf=eR^0klkZ zV$dK>KoN#|cuycq2!a@Zcn}H<;2H)g7ZhnigBGMhgW}Kt1Qs#^M`*zyf9L?fngR<1 zP;nrZID!g9rw}5-FiZpCMYXHDO0yGf2gtS5f1Mo*HL{PIML?bP?P(U^y zhNlNiB4r85LKL3ig4dOtxWWnmu!#)lVGW6x zKms~x5=&5F35R$>2tq&xPP{>ph(pLSW>5`+Si&8|s0SRHGD92K5C<}-LI@afj{)e4 zArx2w4-2xhjY*^iD8XPs1*r812mHVWHZVX#`dER3d_jdkfx_VmVhaoRK6tXu%P92?{DCK?s((2t8OJft;4a66ffE z^O(ef`ej58lQ)5DpwuBR)OMtu(;MIXUDM ken7w%&FT;=JirmKWa~nfA%f${^{#l$t6uji*MI;3J9C^sHvj+t diff --git a/dist/construct/images/thumb/os28086_b.gif b/dist/construct/images/thumb/os28086_b.gif deleted file mode 100644 index 09d459342cc62270d9e9ce4969e980279793fe9c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2833 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 diff --git a/dist/construct/images/thumb/os28087_b.gif b/dist/construct/images/thumb/os28087_b.gif deleted file mode 100644 index 529a024c48ddb9548f1ef36a287407a68102f7db..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4424 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 diff --git a/dist/construct/images/thumb/os28108_b.gif b/dist/construct/images/thumb/os28108_b.gif deleted file mode 100644 index 929fc9d796d6e1431d06db2ae40e3e6fd0083860..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2829 zcmV+o3-a_wNk%w1VNd{20QUd@|NsA$dsMB9RGflUhH5*Ea7-y79hsAkMmjWGMksn- zJiVT3tBhLJ!J}wXGv&pLXjMq)%9F~+#(ZN!!lZG1VLK@q42W$@yP|lcf=o&@9SH*g zglkI6t$Dbum9dRg=;Yn(=;6Vshrpg?WlTG)mwFo+7o&w!+`NO-$FS_)%EhH__4M+D zX-CMzysVOCsh^cOGA?#pJE)6jx|Ljtgn#1HyB!h;b7^8rH6>C_Nb%;>%D0(~aZr(f zWZl-uGb9v}ZaTrBY1O!d)Ua|yE*euiB#CWA6bS-XIv&ogbyGbo@9gL_DkUNv8NHlk z^6>3|W<{!}q{*psJUBM_`S{+yhqRVrx1DXDgIv+Ig2JM0(y(^=^y~Zh@^e@@v3r4KLfN)^$f|deazfkL*OqcUoRE6Cnr3)iG%FqzvXo)MtADnTRK1#E zyqI3Pm|-L#AhWEbwUl10kY3`+qf#~^rifP1uz8(%L8*pOOE)Xsx_)6uBjVrNu##gg zDJI3FYRjl@Y)~w-l3sFDEh{7+wV7qZqH114G0efL*SCOSQ9RYNd6INc5Cj0Ben?I_ zA=kW&MKdVQtZ_mvB0MP*c4SKQx5ynEENdlwD}X-F5=;NYp8fPG^}mv~72 z{r&#`|2HHVA^8LV00000EC2ui08ju>000R8009UbNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiux@uu4CUASt@QAx(n6kSG}ngYgW36B7qcrkrUIhAt{*%*5DWlBQ1pE}n7Q zU;+UGBvO9TWP&4x32{`|sQK1YX-HuQYE?3k@4%8VI;vPjDMwcfGlqIW@bpd2*pN(f zqGMx^#GhL7-hw=EmRlt?B#hi}t5>5s3BAlz;-)4XiElLuZ)DN5k|6|+fz%Q!Ipd)i z+zd4VoP%oTj8L9g-efGCryJr!=v>#|8)VC($Ho7~l*f|7^evEe1wZ0~o|Ls7qcEJ~T-To8+Jh63Auv5G^=3 zqsl)>>?h(wQnCsCsV8qA_dMS)D!#iC-M42vZSP;i%-u;k; z9pnTcf(pbmL>U6cL}P&k{Lxs#C_P-Tivlw!lFLH0ApprD(U5`zdOsA(O7w9=1kgCsMm*H+LQV@8M6t~-?yQqU9OwBa%rpXZnJjq1=az`Yo4D!JUzcAnp11l(T#0x@bfDZ>ZU}C2oQ3MlA6y!v4 z2xpSbgAEFPa}fp&G<3qiFhVTj4It%QqY2X!WYdNQ3bYVK3#{NX!OXn;AXzThJb;2M z^@K6VEeoIx3Z1}q8O0EYtHtH9J`pa5uyAOuQLhZm-i3=|Ln1%$XqDGKp~ z5sUy4c%T3S#BhmQ*n%F¨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 diff --git a/dist/construct/images/thumb/os28110_b.gif b/dist/construct/images/thumb/os28110_b.gif deleted file mode 100644 index 51eb9149a1ccb45dd3ef747add5b924182eaaced..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2441 zcmV;433m2JNk%w1VNd{20QUd@|NsBO!p1~PRm8>0y1T@>yuY-xyB#AcY;t_8uC&a} z(qw6KDK0ggp{Pw&V~mcE6&W2xOAV5ftw3?r3dwBQHAo`uig(E)fdJb9sb>ikD<( zZ0YIhTw-pNl%ce>wbIknq@<*Je0=!$_(DZTRa|PmzsK$F@JLQtSYBz7k)3gKb&Zgl zfrX7OF*4)h;x#uo$H&T=nWQ;DNLF2LEjL3VCo0_1$F{hg@jh{^H{0Q&m-QcY-xPO@@n^r>U|51O-1rMb*~UAuTsdQ(n)|(l9zj+S=SApP#EJGCeIaIa*S>QrKGTjiHiyj4?aar2n`S~I72o&MIa?7m6)VWR9=;pp18Na=I7`% zIziLa*Gf`fASf^w93E3yV?aerWNL70aCIs$I8<9^5EK>t{ry&5W@l}9Ei^w`U}_*M zHaI^@USw-dQ(Aw4fjUA<$>6Mo335H9XSP*=%la)70M7*4#fwQq=) z^NNFh`}_O9z`sycUtnTlF*ZN;_W33#D7Uw_|Nj17V{Yv1?Ee1!(9hJ7kebQJ&y$y( zm6n&m#LwQ?)D|Bp)Y8?5eRU=>K=btVnVhBI;NwVE3`zS6pA^8LV00000EC2ui08ju>000R8009UbNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiuz(v7^V2AVZ2ANfN-ZToSmIEGZ?CEj1);J@B;>WH>v84#>cAO3#gKUWDMQ zxzWUl0|zjDIZ*}ykR{P>__;t7qZlVhv&@lzk3+r>k`M#}x5CSssui~cJCJSMK~^AQhagr>xIu-Xn>s)s7=m-SVSz>vAbe;jAps9P z*#=ZzSmRA5XH*?-*}y>a=!6AyF`(e(E<-T|JY;!c__aYeZR~+cb1#%bF=!C1AT!T* zL4POsM9M(Hi3Eq{&d^EY*EvBKZ(h;=0Y!nt7Kgl8{JR0dJHag#n2l0FK~W+x4QuRi zR>VEQ0&ncnffX5~@eNH2fpCi+S@h-~0G4QiK_E^Qhytb1KqE7Fu!$V}4TX>|9(V#uhA;|bNgEg-ph*c7knsaT9Q3e? zB18l^5GyCh(?K~FLW5vIq1ds6A`eJ8Pz&o+z=w%8xN%S&Z9t$(Rp!6}hY1lSfQ18P z=s|%vY7&$J0+Bq@-%3N^pw9s}Ofk)74<$j%D+uWMLJS1CApjjJB(hQ$)8f&_*^leSWr$5jAU}p z16))<3l=W`DUus)2q1$VoRk3s9|&xs2n9A2@K6Dllw(Z}|4e{MFw3AI!x8O?6iOYJ z9KgjIEdY>91G;!n3Ir6CV9Z0XSc3%$SiI2)25iWK$u}vC^aBE<=mP^mxD0SfARVY6 zhayGL$&fZ>m|+SED6qi>3K(G0ok$^EF+rFH#ZU?}8!RHK8bdVH%O@DHj4}$Q=tJ2^ zgE(-5TL)=_fG!&dfTTDV;KEQ1jhK=L23yMzhY=(xU=IXLAH~{cwgSe%OW(FQPEx z!508Ca!8~7Dapj_FK{n(oQ?BL`;$k zEP!J}E)50nMFbw$wfI1~<0|^rlkd|XQL5l@+00`w^f&d)x4<8I;AKDZXi4N*km3x%LcD4M|md>AJM zgt&twc0dRsibM=sV1XlEAcTj6f*!}RMjO81h`a%S8$TFEJt&b2bP(c?eb|DI&PW9o zSmOpoSQ10d@q`G-00WB<04AoP5Pz4EDiEI1B&{12CgVhR}mO9KZ%$P+~$X zVUIlIKokP_2NxJ6hA@Nx9=*tA3=}|wVh~{x3P2r6U_b*8EI|)PP(?R{RS*+wVGm|l z#usu>2zFd&Okt>o0u+D_7YyJKT8M`M2rvm&lq3{XxP=ESa0*#ef(tl!zz7o2iA5}< z6?u?>CpgjnvxBri3Dp=x0MOwMWo#n=R3Ly36yT4NgdqWS*gyx6Ab?Xiq7jYQMJvo8 zk6>`&0vuQfH^ShGL2O|TNl<_~20#Er7$6KQF##3qz=IB4;ii0WfB?RLg94b!A+=Bf zFxpWAFt9)eNgx0k@Zf@T)I=LY=)wq~00lb~K#>#Czz&3=2P1W44O29}#EK_p;TL;zv|0wSI8EG98|aiAgX`}R#2f6v9Q7y65v^b^r8xP2to~7 z;ExYxj35;`umf3JJCHHpAqY*VK`jIVgD#)~2le3XK*FGdAlyL#1W|%9Xs|owHe(W^ zy&ys65!lwIAhcD0sd5z(f*0;~ya>sK0VXj>^co}-=zyDh5t6U@+V{Tr&98p<%isQb HHXr~y=W_rE diff --git a/dist/construct/images/thumb/os28111_b.gif b/dist/construct/images/thumb/os28111_b.gif deleted file mode 100644 index d9c4ad15b038b5fc75f5e2fb5397ba136aa891d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2056 zcmV+j2>16#Nk%w1VNd{20QUd@|NsB_`S}+dAfbh4tAbWPNn6&njNIJaetv$XnwQ(V zlB=Sd$+MiZh+O02<78Y~w2WhpW<3cI6xz_odvkNmtAeF`QiFtr9U>)xdwsdOyThGv z!j6siL8ZYfHwzx22?{pL$dW4H3GLW-&1`%*)Hf#Kk2kEYZTVRv-P?ClF2bOCnUa;gqK1`iMRZy~b9sgF@bI2}TbOV~nwy); zsC~zyc{VmSOHNY0w5xA(dRtptc6xqEN=j^FVY8Tg&A6g*W@J7-K6Y+y`1kgPUpU*& z!f|P7zLjX2gl^{H+`FBB$)k19u7tU?vtUFf`}z0N&B&m2OH)%+>FDVF{QdCg;FOu2 z)VrH6H8^!vHfwKl_44njf?Dh5;nm5$w32XVX>0uZ`aL=~yOe9bmu>Ir=6`{OmyeRX znR3#xhe$?5RasmF3JzRfV!D%PA|@#h78=RL!>)r^Haa}^^zxOIl}1!)?d$0?H$49S z{`2(oIW;o#^6{yFRgsE@w32SVzQ2BVd39}R(Y~j>y10H>G87dSuZLW?!p-mG*Qgwy;xQkL^b1*M2rI367{{EYfjQjihxQ}FUX=SRMj*p0kSw=Me|NnDo zS?Au?qJUqde^+WzH^Z%$J3Bk;?CUc#GoP20MoLZJ&%Lj(vOq*fc6E5xxs;rci`T`o zGcz(aJV5>Z{-T?n(5ZWym6-ni|4vX);nKpFov6j8g|x4({r>)MXkuYtVPIHQ9~~Wg zac)RRN8Z4fA^8LV00000EC2ui08ju>000R8009UbNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiuz(v7^U=aNv9#$&inoA>#m%Txsw_pBdv^bzn&oK$js4q)`F_CP2-VT|lTy z00N7sQ$JVg@kP{0kpl%|q)4jKQ!*^?Kop5Z@YJAE=BQ$fVN6N9cOFJe8>j)34RWc( zT9mR12qi2Yln4=+>H-D_5Mkb`X99S-r)X3iT5;3U`( z0K-NJOx(rSP!-iIF~=MfxLrT!F#1d_& zfkAOQNZ>&iA379E4n90U;usQ0umdQ{wa5?(IXv+IeV5p1!z5DZ*pL+Y(BQ*9YCIvq zF`x)$X!3YoR(*_fzc=%;PLZE;~4=OlQO9%VpKm{{v z9uzeO+(R)a6%d?btlgv+(1Ba1spWM$_gSe-}+b}(>DH`Iu+0WG&M zAc;e8P{9crBNUmNBy6z%Ld_>Yv=%S5CKNkA%=_L;TFRaO8}r@g$L@*B18}ayTb4TBUC08Wr#sW z5MhrB;Gt`4uwJI+4&n${Y#+INk%w1VNd{20QUd@|NsBPlw!)Yr{&$+!GS;C$+zO;<=)=iA|)k}a96{_ z#mdXgMo3H`A|gaaNj5k;)tgqkidQNuF8cZTCMYQw85yd3Ms<0F`1bWqP*%Q;TaR{Z z0t5rVwX-B9Cc%wWtf{EY&eB?2T6YIN=G?FtPI>EPSPopi;KS;&%Ay}Z0N zH#pYS)+i||%92qW9v;S#R}B#nA0QwS6%@FDLJSTL^zZ7(h(bt7P9-NO$&OB4U}!Kh zG!_{eJw8E!f`UFkLl6=Yq@toJD=g{V(@aiM=h@9NG&aeUS~@&F{{H@skdp=p2`nx! zy_j>cuC3D2(i$BdKte|R{QcC*#(R8!V@yTFnr@VmlOZD{>FMfNTVY~lZSwN-$%;h5 zhDI(hGB-LrR#{*6@$R;^x2leXz=lhinw!U643CM>) zKdGgq!iY-7g+TT4@#Naqa&vUh&(5Nej5RhlzJWf%kXkS?GsA>I%e%H7 zA|l0yL`qCgVq#>)j#J2sNb>9Eh>42Fm0ed^VHg`6_V)Mv{r$gxJoxqVo|27NKQF|H zNrYNS`}_NzhkqR*BE^$jjE#-Vy|UKV**ZEpu(7eqj7G=E%lh~CT3ushXK!O000R8009UbNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGin?#LZioojaX=l0^(2<1&sz6q}1`F%YjVB8Ph_90Z8-9X4yJyi^Pq9B_#n+n0{$u1c^GPCcWt-r`hb6Ytf5egH!#e_*BKeX2(VvDtkiy{q(SV$L#tGuQg%R~5{ z_W_Y>*huJikrB_xz)vDP$Uwpb0$SvUH#`iI!wTLM&|pQIWU+!BhD=z@Fc(r(fC@0= zUcO900~is`NU!f z7%LQmgOU#wunIC@fC0k_=uqhp1|;lbM?DaPBTOS+HiRPt5G2sg5R9bR&^Z>AQb`QZ zY@vXh3zZSg6xMh^gD;o>#b-jYJkr1pFH}&$0*5Npgf&~}K*c>@M4C`H4iurxC!A=i zP$3J@;lU14h`JCb4_slWst0lZA&&?wz?zU5Lde6Qtp_y$$1ww;(#?vz8gNfJ3mgzc zGDVodt3XZg;eiMA&?AU0pzu0@2o-E0O%Yp6aY7ol9Vi9h zG(bTSFT@}L1vCi4jHo6g!9g5sY_WwTTOc3?0&z$~ho;1cz`;B*Ab`LN576L)1Pz?9 zM-`g7g1`xJY_Y=@k4UgX5+1~G0}-OK!od*I>_CA8IwXBBBzP$iyaUCLjPi2KO}L diff --git a/dist/construct/images/thumb/os28113_b.gif b/dist/construct/images/thumb/os28113_b.gif deleted file mode 100644 index 00e30de07da303033dafd90cc6f7e29de827ee51..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1759 zcmV<51|a!INk%w1VNd{20QUd@|NsBIyt>YqVyJjU#f?&nc4f?zRrBlOtgNe=n3H^O zWTc^;+uYsUn^Lx{q=;xs*UiL}k&Wos%9E0j&V@Sb&!?vsX z`uo<^){KgVx{_(>>FTMbqT$`zym~sceL~fkQ^m!`VqI3yh(2v?ZHkVPwR%3Jsj&6- z_Ozsxzl2M0ba$+(rry!RvaqbOhE~bR%AK5;($dmBKSI~q-(X^8(W{00{Qb|3N1~UE z*qdKlU0%b5Mb(v1wzjp%#ly;lK(dKk(~?UwH#?SQH2wbm8yp+e*V^*)_2}i|d3Sa6 z_V~1va{m7Q%gxRY5fkg{>(Yurb#{1%hJ&)Qvi0-u{{R2V%E#yD=(@SK+mb}qkVb`t zgwu{k?&;(2@bUNf`1<+xv7V2Phk?zIPvhj|w}ns<5fSC(<=3KXxtx8jgHyM;yP24m zfr5b3j6>$)-onAZfr5p>h)nkM^Ulr8&dtl$*VoI-%>MrW8XO^mgn}I>G2NI?@8j0} z{r=w1zoKa`(#XGZc7WBxu-eJBshyI=kXPH5Nh}x%P*70d;p4){(Bat8;iO-)w6)8{ zzm%4kxqwEnv9#*9f9J1lQ9UeAJ}mU_=+DsAOixjso}Zwfpq-qY(xY+KtAE?3a-N!) znwy-#fI-%bLb0^EXHGcq=icJStjC2ypPZM_j6~nPo!;Nz^!4>GGCIkTTC|K~s<61L zhho^BT7!j&?(gr%$H>HoM!|$bvw%&tw6fr>c|bfkf`o^9P$k*NwZ5W+($v)$7#Fo| zCU9$K&BC{Ld3>a4FkD(zS4%*qr>d8NY}M4%r>Lj<{QT0>)fX8VU0-M2jY7bCHom^S zvvoPnhd;`IH-}p@>+J5Yb2w{dV%?xvV`grvp`4<9RtF6bcX)RD`}+$E4F?Dc1_ub= z*3N8lb-Ra9A^8LV00000EC2ui08ju>000R8009UbNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiuz(v7^V2AVZ2ANwTELlPFWF9C@c8H$y8kDl*lNNhc;B2139S^WunlE1;=U zrwzuMfp}&R{D28UPlrY>*mB1~9gR!ko^W#TqkxGS5Ptk%@#Sel2|(Pn<3J;x76@x* zU}6F8lL!_wTAF3pivWc)R&uec_Q24W8C4eK5u$W&!(PVRS+F97hZa^~Hk5c_qDl+L z4k4@kRe6BD3ZN%a63{N#uV*|4BtxA#q69q@f?04DTMV7r5Fh!nkVCh#8Uq031n#hj zuy$wWI5~kTxgzEc*VHPcD~=OAiJ)EoJBpp5D_Unf#hC-1j~Mdh719w9ticp4dI<1= z@jJf4UIG+ipC0*Xa13q!A>_&*ao8}04K`??!4*R!n9u=#z|p`YQy9=m5k*vJ;XwyL zpn~ZqS2T-J=3Mum_Lx2W>SmWYB{qXXDG^;3MfCfcqvZFyUpb>>6t>mJ| zKNKEm&<)#ckis?(coT?-N7gaI2r&R)jtU`6lZOKDSRy4cZ5$DS2Qn}c1T5glgUA!3 z9N9!8LM$*#II_qw!8d9&l1d{|Vh{i@YM3$5EjXmXfRq9;AcPE)3dGC~OAt{)25Yvl z02N*g6azInkO9C3gB3NW8#nf@};!#0y3gWJC#ITnhj(2@qjn3*#IyNGJs%5rG`4 z3balHj{3(;0H2mqkRuU9Fw8(5Ob~8-Y;>>y7&jQyOav3aE07N|2+>4*TP#w79AOfa z&pHVVvd2JM+;EE<@%hjVD6w2jPzwP}fD6h5o6vB4FMtq^L3L1(z%1|(L<|u^FpFJ2 zB%p&N0>H?^3_)xdVS=#n1yF`41;v2C0R$%;AVbh8Nu=O)K@5a#VGk&n3qTB9l#wah(I8-lg~;?! z$w1_QfQUh3G=u4gBjiI+6#KklPzOW=Kq&w|WRpc01=-<&4u?xg1qk#Q6aYV<-fd~l*06UO) BQFH(R diff --git a/dist/construct/images/thumb/os29000_b.gif b/dist/construct/images/thumb/os29000_b.gif deleted file mode 100644 index 0687b84b5d309a13bc181498d877b764775d4ff8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2789 zcmW+#ZB!Fy8l8j$0t5^sK=`T&pg=((2$pE8$pk`3)k5^_w(+BZv5E#Q5N*-WHVIP* zFe2cvMVnecr&4t)*p7!04hA|8yNs^{%x7+RUc)VV(FL1nGPXM}T4~2W( zw8ur!B<^!lKCg!)aKG2>q6iO7xG5Zk4K!gRF@(kuty)T;22>BiS_y8D+O$F=$blq4 zfQzO`4~ft=h(2jO)d)MuLg#gp0J%1d13T3P%W=5l0OeqPM}2hlJgP(S;jmOi$S$H?Aj9tqX(n8VP}D z)KW2pYA_>6B5DE#QN08=N@)}%VJT*iAW$Z(71KyST8wCgHb`ht^I#3nsODq}0Rsql zTqH%?sG3AT3X$SQiC!(V>BVRu z7A;RJ<@h|bI}kTw@X#2A!v;u=qk7b+K@4ga9E5k?vhsB1lBU}P<2(~zhd(Mzn1!d z+(jDwZp7mbaN>{_bh}8Bun{=w_mW;W=5r%{FX8iGejn}gQh^Qzis%mjnsNoI=y4MS zPEjO=*$@Qw`8}=^$= zfgAV|k zSzmhdMB36jQNx{VK$NZQH+hm+zzcvOS$(><+4j@`d>>Ugzqo9riU!Y`*Fd( zq~j6>FnwfW{AiD4l~q2xG__u^FQWFJ=U40DplRU#m**sk!`<87*}eLS)wIKI-dwE1 z;_F6D{ue*C9F^%`2aB&nMs461w!4A~V?3(XT!n=bEUUQN#(gB+$w=_VkC0hXpi10lXXs$KXO}YZ9Ji#H zzsJ^92}Y-+I|_rkziv&3dMe-sW_ee|>a{6pkqHx-ukd0{3Z=?CRynUN`TK%B&I0A2 zwOG!te|jq&PAcqJyMB5osC7r=H}e@aGn$V4&xLz#)G&W?I)uO92sN!Z=_qd$|0p=n zlAt_4*(SeMwfkf*@MFI*b4s^ZSIK6;3H1Fz;KMl0W%n z;C6bSBezmMd|)a=Y<_;`fc$>L(1{tmU`&;`QK#!zc{P5ntspD^N&oC7LH{n(VtuFh z!Q0oTs)8?NM7QK{O2>8rO&Fv;&aEP=o5A-406<2<3HEeST^_cF4Kou z(&`7V<8W$JFHe!*&j^3BV{V-efF(Rh*h{QPV7=%@;+un1*=UKdn3Yn~B5N>nUzUNXTb%x;xQ9apu^nvg)83XwbRj-FZ&b}c_I@-RuskmZ`F~)?{tl8O#cx50w@xa=F}FMNYGKp0B53tRaNud`)h;K`h&+U zk0pXWU4;C(FzEf*(=na7%)bRMv`4Krhinp9^RFLoaZFI?eKf zKy$flN~EjV3@+z=op}{Y{5gz$j5{9*rBw(_tE{5R*`V2frNm0Akgc~yT2I%k5T*6iuZan8nMKjQRNK4yYD?}?^riYo5jaxRBc1}#Q;g6W%>+6?o> zMA^i)V;xOIEQ`5P7qswj+!E*CW?x|%RB$KW=WRvA!KE_C;>CO8>r>#Qs^>exUn_5n zt9~eYnmd}&#bXT*L)^~iGVs=9>#6>ZVv2& z*GIQkWiTVw+hwc`GV|P(#*k-u%-nGB#S%4YwR@M6ZSw z<*e+C;Frzwb94$hzn}ZTSyAl%o}f%wr)3i-C8!%v{HB}_Q#r((xml&;+7oE|Pxg4Q z_t=&tAS3mj{1%^I4`fBlcb82MN41&8j)Ku;ugWUIqd^e+t8S3?k$d&&2DzG z`+~O#IqdgpBPt4mVuyg@M5Sb=-FhMN!+e#rx}t5jXe{Vc&Y8m>@z|@mg(^X>qoAo5 z>OhVK7gov7tdh2t3sNougH17M9rr{Ze;X3#=CJC^TdH&al61lTQ$>yi9r)#NZefG| zqbv*KV8P*Bi;$hzH8|HQ>y0R9r-`Q?tDM@?Nw==tIJZ?{-gx&@&2#$lb>Cg@hrj>+ K11FRNto=Xh;_o2< diff --git a/dist/construct/logs/.empty b/dist/construct/logs/.empty deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/construct/orders/.empty b/dist/construct/orders/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/construct/orders/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/construct/pages/aboutus.html b/dist/construct/pages/aboutus.html deleted file mode 100644 index 888bb52b7..000000000 --- a/dist/construct/pages/aboutus.html +++ /dev/null @@ -1,68 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LEFTONLY_TOP, UI_CONTENT, LEFTONLY_BOTTOM -ui_template_description: Page with top/left areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] - -[set page_banner]About Us[/set] -[set bgcolor]#FFFFFF[/set] -[set component_before][/set] -[set component_after][/set] -[set members_only]0[/set] -[set page_title]__COMPANY__ -- About Us[/set] -__LEFTONLY_TOP__ - - - -

    (This is a demonstration store.)

    -

    Construct Something is the Internet's premier provider of quality tools. Our founders have over 20 years of combined experience in hardware and construction, and have created this line of tools for durability and ease of use. We offer our tools exclusively on the Internet and will ship anywhere in the world.

    -

    The key to the Construct Something tool line is the ergonomic tool design. All of our tools are formed to fit perfectly in any builder's hand. You will be able to work for hours without stress or strain to your arms ... guaranteed! Our tools also carry a lifetime warranty. If one of our tools ever breaks we will replace it at no cost to you!

    -

    We can be contacted at:

    -

    Construct Something
    -11480 Sunset Hills Road
    -Suite 200 East
    -Reston, VA 20190
    -Phone: 703.456.2931
    -Fax: 703.456.2901
    -

    - - - - -
    -

    This is a demo store. If you would like further information on how you can have a store or services like this, please contact:

    -

    http://www.akopia.com/

    -

    or send an e-mail to: info@akopia.com

    -
    - - - -__LEFTONLY_BOTTOM__ diff --git a/dist/construct/pages/account.html b/dist/construct/pages/account.html deleted file mode 100644 index 3f3f090ea..000000000 --- a/dist/construct/pages/account.html +++ /dev/null @@ -1,427 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LEFTONLY_TOP, UI_CONTENT, LEFTONLY_BOTTOM -ui_template_description: Page with top/left areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] -[set page_title]__COMPANY__ -- Account Maintenance[/set] -[set page_banner]Account Maintenance[/set] - -__LEFTONLY_TOP__ - - -[if !session logged_in][bounce href="[area new_account]"][/if] -[userdb function=get_billing_names] -[userdb function=get_shipping_names] -
    - - -[if type=explicit compare="[error all=1 show_var=1 keep=1]"] -

    -There were errors in your last submission. -
    -They are shown in __CONTRAST__ below.
    -

    -[/if] - -[comment] - -[/comment] - - - - - -[set Save_database] -[userdb save] -[/set] - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Shipping - Address(primary)  
    -
    [error name=fname std_label="Company" required=1]
    -
    -
    - -
    -
      
    -
    [error name=fname std_label="First Name" required=1]
    -
    -
    - -
    -
    [error name=lname std_label=Last required=1]
    -
    [error name=address1 std_label=Address required=1]
    -
    -
    - -
    -
      
      -
    - -
    -
      
    -
    [error name=city std_label="City" required=1]
    -
    - - [error name=state std_label="State/Province" required=1] - -
    -
    [error name=zip std_label="Zip/Postal Code" required=1]
    -
    - -   
    -
    [error name=email std_label="Email Address" required=1]
    -
    - -   
    -
    Country
    -
    - [if value country =~ /(^$|US|CA)/] - - [else] - - [/else] - [/if] - (will - update display)
    -
    [error name=phone_day std_label="Daytime Phone" required=1]
    -
    - - -
    Evening - Phone
    -
    - -
    -
    Shipping - method -
    -
    - -   
     We - need the bold fields to process your order -
        
    Mailing - Statusa  
        
    - - Send - an email copy of my receipt  
        
    - - Put - me on your email list of infrequent offers  
    -
    -

    -
    -
    -

     

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Billing - Address If different than above  
    -
    First - Name
    -
    -
    - -
    -
    Last - Name - -
    -
    Address
    -
    -
    - -
    -
      
      -
    - -
    -
      
    -
    City
    -
    - - State/Province - -
    -
    Zip/Postal - Code
    -
    - -   
    -
    Country
    -
    - -    
        
    Payment - Methoda -   
        
      -[value name=payment_method interpolate=1 set="[data table=userdb column=payment_method key='[data session username]']" hide=1] -[if !value payment_method][value name=payment_method set="credit" hide=1][/if] - - - -   
        
    -
    -
    -

     

    - - [if items] - [set Save and Checkout] - mv_nextpage=ord/checkout - [/set] - -

    -
    No change, go to checkout - [/if] -
    -

     

    -
    - - -__LEFTONLY_BOTTOM__ diff --git a/dist/construct/pages/admin/report_def/Order%20Status.html b/dist/construct/pages/admin/report_def/Order%20Status.html deleted file mode 100644 index fdfb116d9..000000000 --- a/dist/construct/pages/admin/report_def/Order%20Status.html +++ /dev/null @@ -1,28 +0,0 @@ -[perl] - $Values->{saved_report} = { -'column0' => "order_number", -'column1' => "update_date", -'column2' => "status", -'generate_page' => "Generate definition", -'search_op0' => "eq", -'mv_nextpage' => "admin/report_results", -'search_op1' => "eq", -'search_op2' => "eq", -'report_table' => "orderline", -'mv_session_id' => "PIqhKDsR", -'num_columns' => "3", -'table0' => "orderline", -'table1' => "orderline", -'report_title' => "Order Status", -'table2' => "orderline", -'align0' => "LEFT", -'align1' => "LEFT", -'align2' => "LEFT", -'sort_option0' => "x", -'align3' => "LEFT", -'sort_option1' => "x", -'sort_option2' => "x", -'summary_only' => "0",} -; - return; -[/perl][bounce href='[area admin/report]'] diff --git a/dist/construct/pages/admin/report_def/Products%20to%20edit.html b/dist/construct/pages/admin/report_def/Products%20to%20edit.html deleted file mode 100644 index 9676cd8bb..000000000 --- a/dist/construct/pages/admin/report_def/Products%20to%20edit.html +++ /dev/null @@ -1,51 +0,0 @@ -[perl] - $Values->{saved_report} = { -'column0' => "sku", -'column1' => "description", -'column2' => "price", -'edit0' => "products", -'column3' => "wholesale", -'edit2' => "products", -'column4' => "q5", -'edit3' => "products", -'edit4' => "pricing", -'generate_page' => "Generate definition", -'heading0' => "SKU", -'heading1' => "Description", -'mv_nextpage' => "admin/report_results", -'heading2' => "Retail Price", -'search_op0' => "eq", -'heading3' => "Wholesale Price", -'search_op1' => "eq", -'search_op2' => "eq", -'report_table' => "products", -'mv_session_id' => "KHYma5R5", -'filter1' => "40", -'filter2' => "currency", -'filter3' => "currency", -'filter4' => "currency", -'key4' => "sku", -'num_columns' => "5", -'table0' => "products", -'report_title' => "Products to edit", -'table1' => "products", -'table2' => "products", -'editkey2' => "sku", -'table3' => "products", -'editkey3' => "sku", -'editkey4' => "sku", -'align0' => "LEFT", -'table4' => "pricing", -'align1' => "LEFT", -'align2' => "RIGHT", -'sort_option0' => "x", -'align3' => "RIGHT", -'sort_option1' => "x", -'sort_option2' => "x", -'align4' => "RIGHT", -'align5' => "LEFT", -'sort_order0' => "description", -'summary_only' => "0",} -; - return; -[/perl][bounce href='[area admin/report]'] diff --git a/dist/construct/pages/admin/reports/Products%20to%20edit.html b/dist/construct/pages/admin/reports/Products%20to%20edit.html deleted file mode 100644 index 91c3b2e15..000000000 --- a/dist/construct/pages/admin/reports/Products%20to%20edit.html +++ /dev/null @@ -1,55 +0,0 @@ -[set page_title]Products to edit[/set] -[set icon_name]admin/icon_stats.gif[/set] -[set table_perm]1[/set] -@_UI_STD_HEAD_@ - -[set first_done][/set] -[search-region more=1 search=" - ra=yes - st=db - fi=products - ml=999999 - tf=description - to=x - "] - - - - - - - -[search-list] - - - - - - - - -[/search-list] - -[/search-region] -
    SKUDescriptionRetail PriceWholesale Priceq5
    [page href="admin/flex_editor" - form=" - ui_return_to=@@MV_PAGE@@; - mv_data_table=products - item_id=[item-data products sku] - "][item-data products sku][item-filter '40'][item-data products description][/item-filter][page href="admin/flex_editor" - form=" - ui_return_to=@@MV_PAGE@@; - mv_data_table=products - item_id=[item-data products sku] - "][item-filter 'currency'][item-data products price][/item-filter][page href="admin/flex_editor" - form=" - ui_return_to=@@MV_PAGE@@; - mv_data_table=products - item_id=[item-data products sku] - "][item-filter 'currency'][item-data products wholesale][/item-filter][page href="admin/flex_editor" - form=" - ui_return_to=@@MV_PAGE@@; - mv_data_table=pricing - item_id=[item-data pricing sku] - "][filter op='currency' interpolate=1][data table=pricing column=q5 key='[item-data products sku]'][/filter]
    -@_UI_STD_FOOTER_@ diff --git a/dist/construct/pages/browse.html b/dist/construct/pages/browse.html deleted file mode 100644 index 70f813f32..000000000 --- a/dist/construct/pages/browse.html +++ /dev/null @@ -1,147 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LEFTONLY_TOP, UI_CONTENT, LEFTONLY_BOTTOM -ui_template_description: Page with top/left areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] -[set page_title]__COMPANY__ -- Product Views All[/set] -[set page_banner]Product Views All[/set] - -__LEFTONLY_TOP__ - - - -[loop search="ra=yes/tf=category/tf=title"] - -[comment] - [loop-change] is a way of setting up headers. You place a possibly - changing value in the [condition] container, and when the value - changes the contents of the [loop-change] container are output. - There can also be an [else] [/else] area. -[/comment] - - -[loop-change 1][condition][loop-field category][/condition] - - - - - - -
    -[loop-field category] -
    -[/loop-change 1] - - - - - -
    -
    - - - - - - - - -
    - - - - -
    [if-loop-field image][loop-field title][/if-loop-field]
    -
    - - - - - - - - - - - - - - -[loop-calc] - my $q = q{[loop-data inventory quantity]}; - if($q > 0) { - return < - - -EOF - } - else { - return < - - -EOF - } -[/loop-calc] - - - - - - - - - - -
    -

    [loop-field title]

    -
    [loop-price]
     
    In Stock
    Out Of Stock

    - In Stock Notification
     
    Quantity: - -
    - -
    -
    -

    - [loop-field comment] -

    -
    -
    -
    -

    - -[/loop] - - - - -__LEFTONLY_BOTTOM__ diff --git a/dist/construct/pages/flypage.html b/dist/construct/pages/flypage.html deleted file mode 100644 index 9b5bb5a48..000000000 --- a/dist/construct/pages/flypage.html +++ /dev/null @@ -1,159 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftright -ui_template_layout: LEFTRIGHT_TOP, UI_CONTENT, LEFTRIGHT_BOTTOM -ui_template_description: Page with top/left/right areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items, upsell_horiz_2=Two upsell items, upsell_horiz_3=Three upsell items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items, upsell_horiz_2=Two upsell items, upsell_horiz_3=Three upsell items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] - -[set page_banner][item-description][/set] -[set bgcolor]#FFFFFF[/set] -[set component_before][/set] -[set component_after]upsell_horiz_2[/set] -[set members_only]0[/set] -[set page_title]__COMPANY__ -- [item-description][/set] -__LEFTRIGHT_TOP__ - - -[set cross_sale][item-field category][/set] -[set upsell][item-data merchandising upsell_to][/set] - - - - - - - -
    [item-field category]
    - - - - - -
    -
    - - - - - - - - -
    - - - - -
    [if-item-field image][item-field title][/if-item-field]
    -
    - - - - - - - - - - - - - - -[seti count][data table=inventory column=quantity key='[item-code]'][/seti] -[if scratch count eq 0] - - - -[else] - - - -[/else] -[/if] - - - - - - - - - - - -
    -

    [item-field title]

    -
    [item-price]
    Out Of Stock

    - In Stock Notification
    In Stock
    Quantity: - -
    - -
    -
    -

    - [item-field comment] - [if-item-data merchandising others_bought] - [perl tables=products] - my $hash = [item-data merchandising others_bought]; - my @ary = sort { $hash->{$b} <=> $hash->{$a} } keys %$hash; - return '' unless @ary; - my %in_basket; - splice(@ary, 3); - for(@{$Carts->{main}}) { - $in_basket{$_->{code}} = 1; - } - @ary = grep ! $in_basket{$_}, @ary; - return '' unless @ary; - my $out = <<'EOF'; -
    - - -
    Customers who bought this item also bought:
    -EOF - for(@ary) { - my $desc = tag_data( 'products', 'description', $_); - $out .= <$desc
    -EOF - } - return $out . '
    '; - [/perl] - [/if-item-data] -

    -
    -
    -
    -
    - - - - -__LEFTRIGHT_BOTTOM__ diff --git a/dist/construct/pages/help.html b/dist/construct/pages/help.html deleted file mode 100644 index 21bc784e6..000000000 --- a/dist/construct/pages/help.html +++ /dev/null @@ -1,57 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LEFTONLY_TOP, UI_CONTENT, LEFTONLY_BOTTOM -ui_template_description: Page with top/left areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] -[set page_title]__COMPANY__ -- Help[/set] -[set page_banner]Help[/set] - -__LEFTONLY_TOP__ - - - -

    (This is a demonstration store.)

    -

    If you need further help we can be contacted at:

    - -

    Construct Something
    -11480 Sunset Hills Road
    -Suite 200 East
    -Reston, VA 20190
    -Phone: 703.456.2931
    -Fax: 703.456.2901
    -
    -info@akopia.com

    -

    BACK -

    - - - -__LEFTONLY_BOTTOM__ diff --git a/dist/construct/pages/index.html b/dist/construct/pages/index.html deleted file mode 100644 index 91bbebc31..000000000 --- a/dist/construct/pages/index.html +++ /dev/null @@ -1,87 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftright -ui_template_layout: LEFTRIGHT_TOP, UI_CONTENT, LEFTRIGHT_BOTTOM -ui_template_description: Page with top/left/right areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] - -[set page_title]__COMPANY__ -- Welcome[/set] -[set page_banner]Welcome[/set] -[set include_component]specials[/set] -__LEFTRIGHT_TOP__ - - - - - [if session source] - [calc] - my $coupon_enable = $CGI->{coupon}; - my $campaigns = q{[data - table=affiliate - column=campaigns - key='[data session source]' - ]}; - delete $Scratch->{coupon_approve}; - return unless $coupon_enable; - return unless $campaigns =~ /\bcoupon\b/; - $Scratch->{coupon_approve} = 1; - return; - [/calc] - -
    - - Welcome Affiliate Program Visitor: -
    - -
    - - [if scratch coupon_approve] - [seti coupon_amount][data table=affiliate column=coupon_amount key='[scratch source]'][/seti] - [discount ENTIRE_ORDER] $s - $Scratch->{coupon_amount}; [/discount] - [set order_discounted]1[/set] - [/if] - - [if scratch order_discounted] - - [currency][scratch coupon_amount][/currency] Off Coupon Active - - - [/if] - [/if] - -

    -

    Welcome - to Construct Something, the internet's premier source - of quality hand tools! We have tools for every building - project. Thank you for visiting.


    - - - -__LEFTRIGHT_BOTTOM__ diff --git a/dist/construct/pages/new_account.html b/dist/construct/pages/new_account.html deleted file mode 100644 index be45c57f9..000000000 --- a/dist/construct/pages/new_account.html +++ /dev/null @@ -1,124 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LEFTONLY_TOP, UI_CONTENT, LEFTONLY_BOTTOM -ui_template_description: Page with top/left areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] -[set page_title]__COMPANY__ -- New Account[/set] -[set page_banner]Create a New Account[/set] - -__LEFTONLY_TOP__ - - - -[if session logged_in][bounce href="[area account]"][/if] -[if !scratch new] - -[if session failure] -

    -[data session failure] -[data base=session field=failure value=""] -

    -[/if] - -[else] -[set new][/set] -[/else] -[/if] - -

    - -[set NewAccount] -[if type=explicit compare="[userdb new_account]"] -mv_nextpage=account -[else] -mv_nextpage=new_account -[/else] -[/if] -[/set] - - - - - - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    Username - -
    - Password - -
    -

    Verify - Password

    -
    - - -
      - -
    - - Log - me in automatically
    (sets cookie)
     
    -
    -
    -

     

    - - - -__LEFTONLY_BOTTOM__ diff --git a/dist/construct/pages/ord/basket.html b/dist/construct/pages/ord/basket.html deleted file mode 100644 index dd016a622..000000000 --- a/dist/construct/pages/ord/basket.html +++ /dev/null @@ -1,299 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LEFTONLY_TOP, UI_CONTENT, LEFTONLY_BOTTOM -ui_template_description: Page with top/left areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items, upsell_horiz_2=Two upsell items, upsell_horiz_3=Three upsell items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items, upsell_horiz_2=Two upsell items, upsell_horiz_3=Three upsell items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] - -[set page_banner]Shopping Cart Contents[/set] -[set bgcolor]#FFFFFF[/set] -[set component_before][/set] -[set component_after]upsell_horiz_3[/set] -[set members_only]0[/set] -[set page_title]__COMPANY__ -- Shopping Cart[/set] -__LEFTONLY_TOP__ - - - -

    -[if type=explicit compare="q{[read-cookie MV_SESSION_ID]}"] -[elsif scratch tried] -You must have cookies set to leave the basket. Check out now or forever -lose your shopping cart. -[/elsif] -[else] -[set tried]1[/set] -[bounce href="[area ord/basket]"] -[/else] -[/if] -

    - - - - - -
    - - -
    - - - - - - - - - - - -[if items] -[then] -[item-list] -[calc] -my $item = '[item-increment]'; -my $up = q{[item-data merchandising upsell_to]}; -$upsell_remove{'[item-code]'} = 1; -my %seen = ( '' => 1 ); - -$Scratch->{upsell} .= " $up" if $up; -my @up = split /\s+/, $Scratch->{upsell}; -@up = grep ( (!$seen{$_}++ && ! $upsell_remove{$_}), @up); -$Scratch->{upsell} = join " ", @up; - -if ($item % 2 == 1) { - $Scratch->{color} = "#CCCCCC"; -} -else { - $Scratch->{color} = "#CCCC99"; -} -return; -[/calc] - - - - - - - - - - - - - - - -[/item-list] -[/then] -[else] - -[/else] -[/if] - -
    Remove -
    SKU
    -
    -
    Description
    -
    -
    Quantity
    -
    -
    Price
    -
    -
    Extension
    -
    - [item-code][page [item-code]][item-description] - [if scratch dealer] - [if-item-data pricing sku] -
    [page quantity [item-code]] - QUANTITY PRICING - - [/if-item-data] - [/if] - [if-item-field weight] - [seti weight][summary amount=`[item-quantity] * [item-field weight]`][/seti] - [/if-item-field] - [if-item-data merchandising others_bought] - [perl tables=products] - my $hash = [item-data merchandising others_bought]; - my @ary = sort { $hash->{$b} <=> $hash->{$a} } keys %$hash; - return '' unless @ary; - my %in_basket; - splice(@ary, 3); - for(@{$Carts->{main}}) { - $in_basket{$_->{code}} = 1; - } - @ary = grep ! $in_basket{$_}, @ary; - return '' unless @ary; - my $out = <<'EOF'; - - - -
    Customers who bought this item also bought:
    -EOF - for(@ary) { - my $desc = tag_data( 'products', 'description', $_); - $out .= <$desc
    -EOF - } - return $out . '
    '; - [/perl] - [/if-item-field] - [if-item-modifier gift_cert] - GIFT CERT -
    - [/if-item-modifier] - -
    -[set count][item-data inventory quantity][/set] -[if scratch count < 1] - Back Ordered -[else] - Sizes: [item-accessories size][item-accessories color] -[/else] -[/if] -
    [discount-price][if discount [item-code]]
    Item is discounted [item-discount][/if]
    [item-subtotal]
    Ship To:  -[if !value shipto_[item-increment]][value name=shipto_[item-increment] set="primary" hide=1][/if] - - -Add Address -
    -

    No items at the moment.

    -
    - -
    -
    - - - - - - - -
    - - - - - - - - - - -
    -
    - -
    -
    - -
    - - [button - text="Continue shopping" - src="navigation/continue_shopping.gif" - hidetext=1 - form=basket - ] - [bounce href='[history-scan exclude="^/ord|^/multi/|^/process" default=browse]'] - mv_nextpage=nothing - [/button] - -
    - -
    - - [button - text="Check out" - src="navigation/checkout_button.gif" - hidetext=1 - form=basket - ] - mv_todo=return - mv_nextpage=ord/checkout - [/button] - - -
    - -
    - -[if scratch order_discounted] - - - - -[/if] - - - - - - - - -
    - [comment] -
    Discount:
    - [/comment] - -
    -[currency][scratch coupon_amount][/currency]
    -
    Shipping - Weight:
    -
    [summary format="%s" total=1]
    -
    Subtotal:
    -
    [subtotal]
    - -
    - - - -
    - -

     

    - - - -__LEFTONLY_BOTTOM__ diff --git a/dist/construct/pages/ord/checkout.html b/dist/construct/pages/ord/checkout.html deleted file mode 100644 index 843f5cb02..000000000 --- a/dist/construct/pages/ord/checkout.html +++ /dev/null @@ -1,866 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: fullwidth -ui_template_layout: NOLEFT_TOP, UI_CONTENT, NOLEFT_BOTTOM -ui_template_description: Page with top/bottom areas only, content in middle. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: defaults to page_title - -bgcolor: - options: #FFFFFF=white, pink=pink - description: Background color - widget: select - -members_only: - options: 1=Yes,0=No* - description: Members only - widget: radio -[/comment] - -[set page_banner]Check Out[/set] -[set bgcolor]#FFFFFF[/set] -[set members_only]0[/set] -[set page_title]__COMPANY__ -- Check Out[/set] -__NOLEFT_TOP__ - - - -[if !session logged_in] - -

    If you have an account - with us, please login using the fields below. It is not required, but you can also create an account - with us.

    - - - -[if session failure] -
    - -

    -[calc]delete $Session->{failure}[/calc] -

    - -

    -[/if] - - - - - - - - -[set Log In] -mv_nextpage=@@MV_PAGE@@ -[/set] - - - - -
    - - - - - - - - - -[comment] - - - - -[/comment] - - - - - - - - -
    Username - -
    - Password - - -
    -

    Merchant - Number

    -
    - - - (Optional) -
      - -
    - - Log - me in automatically
    (sets cookie)
    -
    - - - -

     

    - -[/if] - - - -
    - - -[if type=explicit compare="[error all=1 show_var=1 keep=1]"] -

    -There were errors in your last submission. -
    -They are shown in __CONTRAST__ below.
    -

    -[/if] - - - -[comment] - - -[/comment] - - - - -[set Save_database] -[userdb save] -[/set] - -

    Please - verify the information below and click the "Place Order" button to process - your order.

    - - - - - - - - - - - - -
    -
    - - - -
    - - - - - - - - - - - -[if items] -[then] -[item-list] - - - - - - - - - - - - - - - - -[/item-list] -[/then] -[else] - -[/else] -[/if] -
    Remove - SKU - - Description - - Quantity - - Price - - Extension -
    - [item-code][page [item-code]][item-description] - [if scratch dealer] - [if-item-data pricing sku] -
    [page quantity [item-code]] - QUANTITY PRICING - - [/if-item-data] - [/if] - [if-item-field weight] - [seti weight][summary amount=`[item-quantity] * [item-field weight]`][/seti] - [/if-item-field] -
    -[seti count][item-data inventory quantity][/seti] -[if scratch count eq 0] - Back Ordered -[else] - Sizes: [item-accessories size][item-accessories color] -[/else] -[/if] -
    [discount-price][if discount [item-code]]
    Item is discounted [item-discount][/if]
    [item-subtotal]
    Address To
    Ship To:
      -[if !value shipto_[item-increment]][value name=shipto_[item-increment] set="primary" hide=1][/if] - -Add New Address -
    -

    No items at the moment.

    -
    -
    - -

    - - -[if scratch order_discounted eq 1] - - - - -[/if] - - - - - - - - - - - - - - - - - -
    Discount: -[currency][scratch coupon_amount][/currency]
    Subtotal: [subtotal]
    Sales Tax: [salestax]
    Shipping: [shipping]
    TOTAL: [total-cost]
    - -

     
     
    - - - - - -
    - - - - - - - - [if scratch dealer] - - - - - - - [/if] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[if session ship_message] - - - - - -[/if] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Shipping - Address(primary)  
    [error name=address1 std_label=Company required=1] - - - -   
    - [error name=fname std_label="First Name" required=1] - - - - - [error name=lname std_label=Last required=1]
    [error name=address1 std_label=Address required=1] - - - -   
      - - -   
    [error name=city std_label="City" required=1] - - -   
    [error name=state std_label="State/Province" required=1] - [loop search=" - fi=state.txt - sf=country - se=[default country US] - rf=state,name - ml=100 - " - option=state] - [on-match][/on-match] - [no-match][/no-match] - [/loop] -   
    [error name=zip std_label="Zip/Postal Code" required=1] - - -   
    [error name=email std_label="Email Address" required=1] - - -   
    Country - - [if value country =~ /(^$|US|CA)/] - - [else] - - [/else] - [/if] - (will - update display)
    [error name=phone_day std_label="Daytime Phone" required=1] - - - Evening - Phone - - -
      - Note: [data session ship_message] - -
    Shipping - method - - - - - - -
     We - need the bold fields to process your order -
        
    Mailing - Statusa  
        
    - - Send - an email copy of my receipt  
        
    - -[perl tables="__UI_META_TABLE__ mv_metadata"] - return; -[/perl] - - Mail list  
    -
    -

     

    - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Billing - Address If different than above  
    First - Name - - - - Last - Name - -
    Address - - - -   
      - - -   
    City - - - State/Province - -
    Zip/Postal - Code - - -   
    Country - - -    
        
    Payment - Methoda -   
        
      - - - - - (will - update display)
        
    -
    - -[if value payment_method eq check] - -

     

    - - - -
    - - - - - - - - - - - - - - - - -
    -Check Information -   
    - Account Number - - - - -
    - Routing Number - - - - -
    - Check Number - - - - -
    -
    -[/elsif] -[elsif value payment_method eq po] - -

     

    - - - -
    - - - - - - - - - - - [if type=data - term="userdb::credit_limit::[data session username]" - op=">" - compare=0.01] - - - - - [/if] -
    -P.O. Information -   
    - [error name=credit_limit_ok std_label="PO Number" required=1] - - - - -
    - - Available credit - - - [currency] - [data table=userdb col=credit_limit key="[data session username]"] - [/currency] - - [if type=data - term="userdb::credit_limit::[data session username]" - op=< - compare="[total-cost noformat=1]" - ] -
    - Order total [total-cost] exceeds credit limit, please call.
    - [/if] -
    -
    -
    -
    - - -[/elsif] -[else] - - -

     

    - - -
    - - - - - - - - - - - -
    -[error std_label="Credit Card Information" name=mv_credit_card_valid] -[if session username eq test]
    (test number 4111 1111 1111 1111)[/if] -
    - - Card Number - - - - - -
    - Expiration - - - - - -
    -
    - -[/else] -[/if] -
    -

     

    - -

     

    - -[seti clear_errors][error all=1 hide=1 comment="Clear errors"][/seti] - - -
    - -

    - -[include templates/components/specials] - -[set Place Order] -mv_todo=submit -[/set] - - - - - - - -__NOLEFT_BOTTOM__ diff --git a/dist/construct/pages/quantity.html b/dist/construct/pages/quantity.html deleted file mode 100644 index 609cac2f0..000000000 --- a/dist/construct/pages/quantity.html +++ /dev/null @@ -1,176 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LEFTONLY_TOP, UI_CONTENT, LEFTONLY_BOTTOM -ui_template_description: Page with top/left areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] -[set page_title]__COMPANY__ -- Quantity Discounts[/set] -[set page_banner]Quantity Discounts[/set] - -__LEFTONLY_TOP__ - - - - -[loop arg="[data session arg]"] - - - - - - -
    -[loop-field category] -
    - - - - - -
    -
    - - - - - - - - -
    - - - - -
    -[if-loop-field image] -[loop-field title] -[/if-loop-field] -
    -
    - - - - - - - - -[seti count][data table=inventory column=quantity key='[loop-code]'][/seti] -[if scratch count eq 0] - - - -[else] - - - -[/else] -[/if] - - - -
    -

    [loop-field title]

    -
     
    Out Of Stock

    - In Stock Notification
    In Stock
     
    -
    -

    - [loop-field comment] -

    -
    -
    -
    -

    - - -

    - - - - - - - - - - - - - - - - - -
    - -

    Quantity Pricing

    -
    - [if type=explicit compare="[calc] - return 1 if q{[loop-price 1 noformat]} > 1000; - return 0; - [/calc]"] - Remember, an original costs more! - [/if]
    - - Part No. - - - - 1 - - - - 5 - - - - 10 - -
    [loop-code] - [order code="[loop-code]" quantity=1][loop-price 1] - - - [order code="[loop-code]" quantity=5][loop-price 5] - - - [order code="[loop-code]" quantity=10][loop-price 10] - -
    - -

  • - -[/loop] - - - -__LEFTONLY_BOTTOM__ diff --git a/dist/construct/pages/recurring_add.html b/dist/construct/pages/recurring_add.html deleted file mode 100644 index a61fcb228..000000000 --- a/dist/construct/pages/recurring_add.html +++ /dev/null @@ -1,211 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LEFTONLY_TOP, UI_CONTENT, LEFTONLY_BOTTOM -ui_template_description: Page with top/left areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] -[set page_title]__COMPANY__ -- Recurring Orders[/set] -[set page_banner]Recurring Orders[/set] - -__LEFTONLY_TOP__ - - - - - - - - -[if items cart="recurring"] -[then] - -[cart name="recurring"] - -[item-list] -[seti eo][perl interpolate=1] -my $item = '[item-increment]'; -if ($item % 2 == 1) { -$Scratch->{color} = "#FEEDD2"; -} -else { -$Scratch->{color} = "#99CCCC"; -} -return; -[/perl] -[/seti] - - - - - - - - - - - - - - - -[/item-list] -[/cart] -[/then] -[else] - -[/else] -[/if] - - - - - - - - -
     
    - [item-code][page [item-code]][item-description] - [if scratch dealer] - [if-item-data pricing sku] -
    [page quantity [item-code]] - QUANTITY PRICING - - [/if-item-data] - [/if] - [if-item-field weight] - [seti weight][summary amount=`[item-quantity] * [item-field weight]`][/seti] - [/if-item-field] - [if-item-field related] - [if !ordered [item-field related]] - - [loop arg="[item-field related]"] - [loop-change 1][condition]1[/condition] - - - [/loop-change 1] - [if !ordered [loop-code]] - - - - - [/if] - [/loop] -
    Other items you may like:
    [loop-field title]
    - [/if] - [/if-item-field] -
    -[seti count][data table=inventory column=quantity key='[item-code]'][/seti] -[if scratch count eq 0] - Back Ordered -[else] - Sizes: [item-accessories size][item-accessories color] -[/else] -[/if] -
    [discount-price][if discount [item-code]]
    Item is discounted [item-discount][/if]
    [item-subtotal]
    Address To
    Ship To:
      -[if !value shipto_[item-increment]][value name=shipto_[item-increment] set="primary" hide=1][/if] - -
    -

    No items at the moment.

    -
    - -

    -  -
    -No recurring orders have been defined. -

    -Please use the form below to add items to your recurring order. -

    - -

     
    - -
    - - - - -Quatity: - - -Product: - - [search-region more=1 search=" - ra=yes - st=sql - sq=select * from products order by category - ml=999999 - "] - - - - - - - - -
    - - - - - - - - - -__LEFTONLY_BOTTOM__ diff --git a/dist/construct/pages/recurring_orders.html b/dist/construct/pages/recurring_orders.html deleted file mode 100644 index 552cf476a..000000000 --- a/dist/construct/pages/recurring_orders.html +++ /dev/null @@ -1,289 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LEFTONLY_TOP, UI_CONTENT, LEFTONLY_BOTTOM -ui_template_description: Page with top/left areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] -[set page_title]__COMPANY__ -- Recurring Orders[/set] -[set page_banner]Recurring Orders[/set] - -__LEFTONLY_TOP__ - - - - - -[query - list=1 - st=db - sql=| - select count(*) from recurring_orders - where username = '[data session username]' - | -] - [seti orders][sql-code][/seti] -[/query] - - - -[if scratch orders] - - - - - - - - - -[else] - - - - - -[/else] -[/if] - - - - - - -
     
    - - - - - - - - - - - - - - - - -[search-region more=1 search=" - ra=yes - st=sql - sq=select * from recurring_orders where username = '[data session username]' - ml=999999 - tf=code - "] -[search-list] - - - - - - - - - -[/search-list] -[/search-region] - -
    Remove
    Items
    Payment Method
    Frequency
    Subtotal
    Shipping
     
    - - - - [item-data recurring_orders nitems] - - - - [item-data recurring_orders pay_method] - - - - [item-data recurring_orders frequency] - - - - [item-data recurring_orders subtotal] - - - - [item-data recurring_orders shipping] - -
     
    - -
    - -

    -  -
    - - -

    - -

    -  -
    -No recurring orders have been defined. -

    -Please use the form below to add a recurring order. -

    - -

     
    -
    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - Recurring Orders -   
    -
    - Payment Method -
    -
    -
    -[if !value ro_payment_method][value name=ro_payment_method set="credit" hide=1][/if] - - - -
    -
    (will - update display)
     
    -
    Company Name
    -
    - -
    -
    First - Name
    -
    -
    - -
    -
    Last - Name
    - -
    -
    Address
    -
    -
    - -
    -
      
      -
    - -
    -
      
    -
    City
    -
    - - State/Province - -
    -
    Zip/Postal - Code
    -
    - -   
    -
    Country
    -
    - -    
    -
    -

    - -

    -

     

    -
    - -
    - - - - -__LEFTONLY_BOTTOM__ diff --git a/dist/construct/pages/recurring_orders_added.html b/dist/construct/pages/recurring_orders_added.html deleted file mode 100644 index 52b98976a..000000000 --- a/dist/construct/pages/recurring_orders_added.html +++ /dev/null @@ -1,109 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LEFTONLY_TOP, UI_CONTENT, LEFTONLY_BOTTOM -ui_template_description: Page with top/left areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] -[comment] - -[query - list=1 - st=db - sql=| - select max(code) from ship_addresses - | -] - [seti current_code][sql-code][/seti] -[/query] -[if !scratch current_code] -[set new_code]1[/set] -[else] -[seti new_code][calc][scratch current_code] + 1[/calc][/seti] -[/else] -[/if] - -[query - list=1 - st=db - sql=| - select max(entry) from ship_addresses - where username = '[data session username]' - | -] - [seti current_entry][sql-code][/seti] -[/query] -[if !scratch current_entry] -[set new_entry]1[/set] -[else] -[seti new_entry][calc][scratch current_entry] + 1[/calc][/seti] -[/else] -[/if] - -[seti add_address] -[tag flag write]ship_addresses[/tag] -[try] -[import table=ship_addresses type=LINE continue=NOTES] -code: [scratch new_code] -username: [data session username] -entry: [scratch new_entry] -addr_nick: [value addrnick] -company: [value sa_company] -fname: [value sa_fname] -lname: [value sa_lname] -address_1: [value sa_address1] -address_2: [value sa_address2] -city: [value sa_city] -state: [value sa_state] -zip: [value sa_zip] -country: [value sa_country] -[/import] -[/try] -[catch] There was an error adding the new bible record entry. [/catch] -[/seti] - -[/comment] - -[set page_title]__COMPANY__ -- Recurring Order Added[/set] -[set page_banner]Recurring Order Added[/set] - -__LEFTONLY_TOP__ - - - -
    - -Please use the form below to add items to the order. - -

    - - - - -__LEFTONLY_BOTTOM__ diff --git a/dist/construct/pages/results.html b/dist/construct/pages/results.html deleted file mode 100644 index 32def3179..000000000 --- a/dist/construct/pages/results.html +++ /dev/null @@ -1,168 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftright -ui_template_layout: LEFTRIGHT_TOP, UI_CONTENT, LEFTRIGHT_BOTTOM -ui_template_description: Page with top/left/right areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] - -[set page_title]__COMPANY__ -- Search results[/set] -[set page_banner] [/set] -[set bgcolor]#FFFFFF[/set] - -__LEFTRIGHT_TOP__ - - - -[search-region] - -[tmp cross_sale][value-extended name=mv_searchspec index=0][/tmp] - -[search-list] - -[item-change 1][condition][item-field category][/condition] - - - - - - -
    [either][value banner_text][or][item-field category][/either]
    -[/item-change 1] - - - - - -
    -
    - - - - - - - - -
    - - - - -
    [if-item-field image][item-field title][/if-item-field]
    -
    - - - - - - - - - - - - - - -[item-calc] - my $q = q{[item-data inventory quantity]}; - if($q > 0) { - return < - - -EOF - } - else { - return < - - -EOF - } -[/item-calc] - - - - - - - - - - -
    -

    [item-field title]

    -
    [item-price]
     
    In Stock
    Out Of Stock

    - In Stock Notification
     
    Quantity: - -
    - -
    -
    -

    - [item-field comment] -

    -
    -
    -
    -

    - -[/search-list] - -[no-match] -

    - -Sorry, no matches for [value-extended name=mv_searchspec joiner=" | "]. -[if value mv_search_error] -

    Errors: -
    [value-extended name=mv_search_error joiner="
    "] -
    -[/if] -
    -

    -[/no-match] - -
    -[more-list] -
    -
    - -Matches [matches] of [value mv_search_match_count] found. -
    [more]
    -
    -
    -[/more-list] - -[/search-region] - - - -__LEFTRIGHT_BOTTOM__ diff --git a/dist/construct/pages/ship_addresses.html b/dist/construct/pages/ship_addresses.html deleted file mode 100644 index 145bac7d9..000000000 --- a/dist/construct/pages/ship_addresses.html +++ /dev/null @@ -1,275 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LEFTONLY_TOP, UI_CONTENT, LEFTONLY_BOTTOM -ui_template_description: Page with top/left areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] -[set members_only]1[/set] -[set page_title]__COMPANY__ -- Shipping Addresses[/set] -[set page_banner]Shipping Addresses[/set] -__LEFTONLY_TOP__ - - - - - -[query - list=1 - st=db - sql=| - select count(*) from ship_addresses - where username = '[data session username]' - | -] - [seti addresses][sql-code][/seti] -[/query] - - - -[if scratch addresses] - - - - - - - - - -[else] - - - - - -[/else] -[/if] - - - - - - -
     
    - - - - - - - - - - - - -[search-region more=1 search=" - ra=yes - st=sql - sq=select * from ship_addresses where username = '[data session username]' - ml=999999 - tf=entry - "] -[search-list] - - - - - -[/search-list] -[/search-region] - -
    Address Nickname
    Address Info
     
    - - - [item-data ship_addresses addr_nick] - - -

    - - Remove - -
    - - [item-data ship_addresses company] -
    - [if-item-data ship_addresses fname] - [item-data ship_addresses fname] [item-data ship_addresses lname] -
    - [/if-item-data] - [item-data ship_addresses address_1] -
    - [if-item-data ship_addresses address_2] - [item-data ship_addresses address_2] -
    - [/if-item-data] - [item-data ship_addresses city], [item-data ship_addresses state] [item-data ship_addresses zip] -
    - [item-data ship_addresses country] -
    -

    - -
    - -

    -  -
    - - -

    - -

    -  -
    -No additional shipping addresses have been defined. -

    -Please use the form below to add additional addresses. -

    - -

     
    -
    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - Additional Address -   
    -
    - Address Nickname -
    -
    -
    - -
    -
     
    -
    Company Name
    -
    - -
    -
    First - Name
    -
    -
    - -
    -
    Last - Name
    - -
    -
    Address
    -
    -
    - -
    -
      
      -
    - -
    -
      
    -
    City
    -
    - - State/Province - -
    -
    Zip/Postal - Code
    -
    - -   
    -
    Country
    -
    - -    
    -
    -

    - -

    -

     

    -
    - -
    - - - -__LEFTONLY_BOTTOM__ diff --git a/dist/construct/pages/ship_addresses_added.html b/dist/construct/pages/ship_addresses_added.html deleted file mode 100644 index 666fb75a7..000000000 --- a/dist/construct/pages/ship_addresses_added.html +++ /dev/null @@ -1,105 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LEFTONLY_TOP, UI_CONTENT, LEFTONLY_BOTTOM -ui_template_description: Page with top/left areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] -[set page_title]__COMPANY__ -- Shipping Address Added[/set] -[set page_banner]Shipping Address Added[/set] -__LEFTONLY_TOP__ - - - -[query - list=1 - st=db - sql=| - select max(code) from ship_addresses - | -] - [seti current_code][sql-code][/seti] -[/query] -[if !scratch current_code] -[set new_code]1[/set] -[else] -[seti new_code][calc][scratch current_code] + 1[/calc][/seti] -[/else] -[/if] - -[query - list=1 - st=db - sql=| - select max(entry) from ship_addresses - where username = '[data session username]' - | -] - [seti current_entry][sql-code][/seti] -[/query] -[if !scratch current_entry] -[set new_entry]1[/set] -[else] -[seti new_entry][calc][scratch current_entry] + 1[/calc][/seti] -[/else] -[/if] - -[seti add_address] -[tag flag write]ship_addresses[/tag] -[try] -[import table=ship_addresses type=LINE continue=NOTES] -code: [scratch new_code] -username: [data session username] -entry: [scratch new_entry] -addr_nick: [value addrnick] -company: [value sa_company] -fname: [value sa_fname] -lname: [value sa_lname] -address_1: [value sa_address1] -address_2: [value sa_address2] -city: [value sa_city] -state: [value sa_state] -zip: [value sa_zip] -country: [value sa_country] -[/import] -[/try] -[catch] There was an error adding the new bible record entry. [/catch] -[/seti] - - -
    - -You may now use the added shipping address by selecting it on the shopping cart or recurring orders page. - -

    -BACK - - - -__LEFTONLY_BOTTOM__ diff --git a/dist/construct/pages/splash.html b/dist/construct/pages/splash.html deleted file mode 100644 index d3302e24b..000000000 --- a/dist/construct/pages/splash.html +++ /dev/null @@ -1,82 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: fullwidth -ui_template_layout: NOLEFT_TOP, UI_CONTENT, NOLEFT_BOTTOM -ui_template_description: Page with top/bottom areas only, content in middle. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: defaults to page_title - -bgcolor: - options: #FFFFFF=white, pink=pink - description: Background color - widget: select - -members_only: - options: 1=Yes,0=No* - description: Members only - widget: radio - -[/comment] -[set page_title]Welcome to __COMPANY__, an Interchange catalog![/set] -[set page_banner]Welcome to Interchange[/set] -[set members_only][/set] -[set bgcolor][/set] - -__NOLEFT_TOP__ - - -

    -

    Welcome to __COMPANY__!

    -

    -Enter as customer -

    -Admin interface -

    - - - - - -
    -If the above links do not work, this is an indication of one of the following: -
      -
    • Interchange server not running. Usually one of: -
      - /etc/rc.d/init.d/interchange restart
      - /usr/local/interchange/bin/restart
      -
      - will work to start it. -

      -

    • There are communication problems with the server. See the links - below. -
    -
    - -
    -
    -This is the "construct" demonstration of the Akopia Interchange [version] electronic -catalog system. Links that will help you to use this software: -

    -

    - - - - - -__NOLEFT_BOTTOM__ diff --git a/dist/construct/pages/stock-alert.html b/dist/construct/pages/stock-alert.html deleted file mode 100644 index 409f80333..000000000 --- a/dist/construct/pages/stock-alert.html +++ /dev/null @@ -1,197 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LEFTONLY_TOP, UI_CONTENT, LEFTONLY_BOTTOM -ui_template_description: Page with top/left areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color -[/comment] -[set page_title]__COMPANY__ -- Stock Alerting[/set] -[set page_banner]Stock Alerting[/set] - -__LEFTONLY_TOP__ - - - -[if session arg] - [seti code][data session arg][/seti] -[/if] - -[if value form_errors] - - - - - - -
    - [value form_errors] [value name=form_errors set=""] -

    - - Please try your request again. -
    -

    -[/if] - - - - - - - - - - - - - - - -
    - - - - -
    -
    - - - - - - - -
    -

    [data table=products column=description key='[scratch code]']

    -
    [data table=products column=price key='[scratch code]']
    -
    -

    - Please complete the form below and we will contact you once the item you have selected becomes - available. This is a complementary feature and you are not in any way obligated to purchase - the item. -

    -
     
    -

    - You may also pre-order the item. When the item becomes available, you will be - notified via email and the order will be shipped the same day. -

    - Click Here To Preorder -

    -
     
    - - - - -
    - - - - - - - -[set check_alert_form] - [if !value email] - form_errors=We must have an email address in order to notify you. - mv_nextpage=@@MV_PAGE@@ - [else] - mv_nextpage=stock-alert-added - [/else] - [/if] -[/set] -[set send-alert]1[/set] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Contact Information   
    -
    [error name=fname std_label="First Name" required=1]
    -
    -
    - -
    -
    [error name=lname std_label=Last required=1]
    -
    [error name=email std_label="Email Address" required=1]
    -
    - -
        
    Mailing - Statusa  
        
    - - Put - me on your email list of infrequent offers  
    -
    -

    - -

    -

     

    - - -
    - - - - - -__LEFTONLY_BOTTOM__ diff --git a/dist/construct/products/2ndDayAir.csv b/dist/construct/products/2ndDayAir.csv deleted file mode 100644 index e70ceeb94..000000000 --- a/dist/construct/products/2ndDayAir.csv +++ /dev/null @@ -1,152 +0,0 @@ -Exceed,202,203,204,205,206,207,208,224,225,226 -Letter,6.20,6.50,6.70,7.00,7.30,7.60,7.80,11.10,11.10,15.50 -1,6.40,6.70,7.20,7.80,8.30,8.80,9.10,13.20,13.20,24.20 -2,6.60,7.20,8.00,8.80,9.60,10.20,10.50,14.60,14.60,25.60 -3,7.10,7.70,8.90,10.00,11.00,11.60,12.00,16.10,16.10,27.10 -4,7.60,8.20,9.90,11.20,12.30,13.10,13.60,17.60,17.60,28.60 -5,8.20,8.90,10.80,12.50,13.80,14.60,15.30,19.30,19.30,30.30 -6,8.90,9.70,11.60,13.60,15.30,16.20,17.10,20.90,20.90,31.90 -7,9.40,10.50,12.60,14.80,16.90,18.00,18.90,22.40,22.40,33.40 -8,9.90,11.30,13.60,16.10,18.60,19.80,20.70,24.00,24.00,35.00 -9,10.40,12.00,14.60,17.30,20.40,21.60,22.50,25.80,25.80,36.80 -10,10.90,12.70,15.60,18.50,22.10,23.40,24.30,27.60,27.60,38.60 -11,11.40,13.40,16.50,19.50,23.80,25.10,26.00,29.20,29.20,40.20 -12,12.10,14.10,17.30,20.70,25.30,26.60,27.50,30.50,30.50,41.50 -13,12.90,14.90,18.10,22.00,26.60,27.90,29.00,32.00,32.00,43.00 -14,13.50,15.50,19.10,23.20,27.90,29.20,30.30,33.30,33.30,44.30 -15,14.00,16.00,20.00,24.30,29.40,30.70,31.80,34.80,34.80,45.80 -16,14.40,16.70,21.00,25.30,30.90,32.30,33.40,36.40,36.40,47.40 -17,14.90,17.40,22.00,26.30,32.40,34.10,35.20,38.20,38.20,49.20 -18,15.40,17.90,22.80,27.30,34.00,35.90,37.00,40.00,40.00,51.00 -19,15.90,18.40,23.50,28.40,35.40,37.50,38.60,41.60,41.60,52.60 -20,16.50,19.10,24.30,29.40,36.90,39.00,40.10,42.90,42.90,53.90 -21,17.00,19.90,25.20,30.40,38.40,40.60,41.70,44.20,44.20,55.20 -22,17.50,20.60,26.00,31.40,40.00,42.20,43.40,45.70,45.70,56.70 -23,18.00,21.20,26.80,32.40,41.40,43.70,45.00,47.30,47.30,58.30 -24,18.50,21.90,27.60,33.40,42.70,45.30,46.60,48.90,48.90,59.90 -25,19.00,22.50,28.30,34.60,44.00,46.80,48.20,50.50,50.50,61.50 -26,19.60,23.10,29.20,35.80,45.30,48.30,49.70,52.00,52.00,63.00 -27,20.30,23.80,30.00,36.90,46.60,49.70,51.20,53.50,53.50,64.50 -28,21.00,24.50,30.90,37.90,47.90,51.00,52.80,55.10,55.10,66.10 -29,21.50,25.10,31.70,38.90,49.20,52.30,54.30,56.60,56.60,67.60 -30,22.00,25.80,32.70,40.00,50.70,53.80,55.80,57.80,57.80,68.80 -31,22.50,26.50,33.70,41.00,52.10,55.30,57.30,59.10,59.10,70.10 -32,23.00,27.10,34.70,42.00,53.40,56.90,58.90,60.40,60.40,71.40 -33,23.50,27.60,35.50,43.00,54.90,58.50,60.50,62.00,62.00,73.00 -34,24.00,28.30,36.20,44.10,56.20,60.10,62.10,63.40,63.40,74.40 -35,24.50,29.10,37.00,45.10,57.70,61.70,63.70,64.70,64.70,75.70 -36,25.00,29.80,37.80,46.10,59.10,63.20,65.30,66.10,66.10,77.10 -37,25.50,30.40,38.60,47.20,60.40,64.80,66.90,67.40,67.40,78.40 -38,26.00,30.90,39.60,48.20,61.70,66.40,68.50,68.80,68.80,79.80 -39,26.70,31.60,40.40,49.20,63.20,67.90,70.00,70.30,70.30,81.30 -40,27.50,32.40,41.20,50.30,64.70,69.50,71.60,71.90,71.90,82.90 -41,28.20,33.10,41.90,51.30,66.10,71.00,73.10,73.40,73.40,84.40 -42,28.80,33.80,42.60,52.30,67.40,72.50,74.60,74.90,74.90,85.90 -43,29.30,34.50,43.40,53.30,68.70,73.90,76.00,76.30,76.30,87.30 -44,29.80,35.00,44.20,54.10,70.00,75.40,77.50,77.80,77.80,88.80 -45,30.30,35.70,44.90,54.80,71.30,76.80,78.90,79.20,79.20,90.20 -46,30.80,36.30,45.80,55.70,72.80,78.30,80.40,80.70,80.70,91.70 -47,31.30,37.00,46.60,56.50,74.20,79.90,82.00,82.30,82.30,93.30 -48,32.00,37.80,47.40,57.30,75.50,81.50,83.60,83.90,83.90,94.90 -49,32.60,38.50,48.20,58.30,76.80,83.00,85.10,85.40,85.40,96.40 -50,33.10,39.10,49.00,59.30,78.10,84.30,86.40,86.70,86.70,97.70 -51,33.60,39.60,49.80,60.30,79.40,85.80,87.90,88.20,88.20,99.20 -52,34.10,40.30,50.50,61.30,80.70,87.20,89.30,89.60,89.60,100.60 -53,34.80,41.10,51.30,62.40,82.00,88.50,90.60,90.90,90.90,101.90 -54,35.30,41.90,52.10,63.40,83.30,89.80,91.90,92.20,92.20,103.20 -55,35.90,42.50,52.80,64.40,84.60,91.30,93.40,93.70,93.70,104.70 -56,36.40,43.00,53.60,65.50,85.90,92.90,95.00,95.30,95.30,106.30 -57,36.90,43.70,54.60,66.50,87.20,94.40,96.50,96.80,96.80,107.80 -58,37.40,44.20,55.40,67.50,88.50,95.70,98.00,98.30,98.30,109.30 -59,37.90,44.70,56.20,68.60,90.00,97.20,99.50,99.80,99.80,110.80 -60,38.40,45.30,57.20,69.60,91.30,98.80,101.10,101.40,101.40,112.40 -61,39.10,46.00,58.00,70.60,92.60,100.40,102.70,103.00,103.00,114.00 -62,39.90,46.80,58.80,71.70,94.00,102.00,104.40,104.70,104.70,115.70 -63,40.60,47.50,59.50,72.70,95.30,103.80,106.20,106.50,106.50,117.50 -64,41.20,48.20,60.20,73.70,96.60,105.40,108.00,108.30,108.30,119.30 -65,41.70,48.90,61.00,74.80,98.10,106.90,109.80,110.10,110.10,121.10 -66,42.20,49.50,62.00,76.00,99.70,108.50,111.60,111.90,111.90,122.90 -67,42.70,50.20,62.80,77.30,101.20,110.00,113.20,113.50,113.50,124.50 -68,43.20,50.90,63.80,78.60,102.50,111.50,114.80,115.10,115.10,126.10 -69,43.70,51.60,64.80,79.90,104.00,113.00,116.30,116.60,116.60,127.60 -70,44.20,52.30,65.60,81.20,105.70,114.70,118.00,118.30,118.30,129.30 -71,44.90,53.10,66.40,82.50,107.20,116.20,119.50,119.80,119.80,130.80 -72,45.50,53.90,67.40,83.80,108.80,117.80,121.10,121.40,121.40,132.40 -73,46.00,54.60,68.40,85.10,110.30,119.30,122.80,123.10,123.10,134.10 -74,46.50,55.20,69.20,86.30,111.60,120.80,124.40,124.70,124.70,135.70 -75,47.20,55.90,70.20,87.40,112.90,122.10,126.00,126.30,126.30,137.30 -76,47.80,56.50,71.00,88.40,114.20,123.60,127.50,127.80,127.80,138.80 -77,48.50,57.20,71.80,89.50,115.70,125.20,129.10,129.40,129.40,140.40 -78,49.00,57.90,72.80,90.70,117.10,126.70,130.60,130.90,130.90,141.90 -79,49.70,58.60,73.80,92.00,118.60,128.30,132.20,132.50,132.50,143.50 -80,50.30,59.30,74.80,93.30,120.00,129.90,133.80,134.10,134.10,145.10 -81,50.80,60.00,75.60,94.40,121.50,131.40,135.30,135.50,135.50,146.50 -82,51.30,60.70,76.40,95.40,122.80,133.00,136.90,137.10,137.10,148.10 -83,51.80,61.40,77.40,96.40,124.10,134.50,138.50,138.70,138.70,149.70 -84,52.50,62.10,78.20,97.50,125.40,136.00,140.00,140.20,140.20,151.20 -85,53.10,62.80,79.20,98.70,126.70,137.40,141.60,141.80,141.80,152.80 -86,53.60,63.40,80.20,100.00,128.00,138.70,143.10,143.30,143.30,154.30 -87,54.10,64.10,81.00,101.10,129.50,140.20,144.60,144.80,144.80,155.80 -88,54.80,64.80,81.70,102.10,130.90,141.70,146.20,146.40,146.40,157.40 -89,55.50,65.50,82.50,103.10,132.20,143.30,147.80,148.00,148.00,159.00 -90,56.10,66.10,83.40,104.10,133.70,144.90,149.50,149.70,149.70,160.70 -91,56.70,66.90,84.20,105.30,135.20,146.50,151.10,151.30,151.30,162.30 -92,57.40,67.60,85.00,106.40,136.60,148.00,152.70,152.90,152.90,163.90 -93,57.90,68.30,85.80,107.50,138.10,149.50,154.20,154.40,154.40,165.40 -94,58.40,68.90,86.80,108.50,139.50,151.00,155.80,156.00,156.00,167.00 -95,58.90,69.60,87.80,109.50,140.80,152.50,157.30,157.50,157.50,168.50 -96,59.40,70.20,88.80,110.60,142.10,154.10,158.90,159.10,159.10,170.10 -97,60.10,70.90,89.60,111.60,143.40,155.60,160.40,160.60,160.60,171.60 -98,60.70,71.50,90.40,112.60,144.70,156.90,161.70,161.90,161.90,172.90 -99,61.20,72.00,91.10,113.70,146.00,158.30,163.20,163.40,163.40,174.40 -100,61.70,72.70,91.90,114.70,147.30,159.60,164.50,164.70,164.70,175.70 -101,62.40,73.50,92.90,115.70,148.60,161.10,166.00,166.20,166.20,177.20 -102,62.90,74.30,93.70,116.80,150.10,162.60,167.60,167.80,167.80,178.80 -103,63.40,74.90,94.40,117.80,151.60,164.10,169.10,169.30,169.30,180.30 -104,63.90,75.60,95.20,118.80,153.10,165.60,170.60,170.80,170.80,181.80 -105,64.40,76.10,96.00,119.90,154.70,167.20,172.20,172.40,172.40,183.40 -106,64.90,76.80,96.80,121.10,156.30,168.90,173.90,174.10,174.10,185.10 -107,65.60,77.60,97.80,122.20,157.70,170.60,175.60,175.80,175.80,186.80 -108,66.20,78.30,98.70,123.40,159.20,172.10,177.20,177.40,177.40,188.40 -109,66.70,78.90,99.50,124.50,160.70,173.60,178.70,178.90,178.90,189.90 -110,67.40,79.60,100.30,125.50,162.10,175.10,180.20,180.40,180.40,191.40 -111,67.90,80.40,101.30,126.60,163.60,176.70,181.80,182.00,182.00,193.00 -112,68.40,81.20,102.10,127.80,165.20,178.30,183.40,183.60,183.60,194.60 -113,69.10,81.90,103.10,128.90,166.60,179.80,185.10,185.30,185.30,196.30 -114,69.90,82.70,103.90,130.10,167.90,181.50,186.80,187.00,187.00,198.00 -115,70.50,83.50,104.90,131.20,169.20,183.20,188.50,188.70,188.70,199.70 -116,71.20,84.20,105.90,132.20,170.70,184.70,190.00,190.20,190.20,201.20 -117,71.70,84.90,106.70,133.30,172.20,186.20,191.70,191.90,191.90,202.90 -118,72.30,85.60,107.70,134.50,173.60,187.60,193.20,193.40,193.40,204.40 -119,73.00,86.30,108.50,135.80,174.90,189.20,194.80,195.00,195.00,206.00 -120,73.50,87.00,109.30,136.90,176.40,190.80,196.40,196.60,196.60,207.60 -121,74.00,87.80,110.30,137.90,177.90,192.30,198.10,198.30,198.30,209.30 -122,74.70,88.50,111.30,138.90,179.50,193.90,199.70,199.90,199.90,210.90 -123,75.30,89.10,112.10,140.00,180.90,195.70,201.50,201.70,201.70,212.70 -124,76.00,89.80,113.10,141.20,182.20,197.30,203.30,203.50,203.50,214.50 -125,76.70,90.60,114.00,142.50,183.70,199.10,205.10,205.30,205.30,216.30 -126,77.30,91.40,115.00,143.60,185.20,200.70,206.70,206.90,206.90,217.90 -127,77.80,92.00,116.00,144.60,186.60,202.20,208.20,208.40,208.40,219.40 -128,78.50,92.70,117.00,145.60,187.90,203.80,209.80,210.00,210.00,221.00 -129,79.00,93.40,117.80,146.70,189.20,205.30,211.30,211.50,211.50,222.50 -130,79.60,94.20,118.60,147.90,190.70,206.90,213.10,213.30,213.30,224.30 -131,80.30,95.00,119.60,149.20,192.20,208.50,214.70,214.90,214.90,225.90 -132,80.80,95.70,120.40,150.30,193.60,210.00,216.50,216.70,216.70,227.70 -133,81.40,96.50,121.20,151.30,195.10,211.60,218.10,218.30,218.30,229.30 -134,82.10,97.30,122.20,152.50,196.60,213.30,219.80,220.00,220.00,231.00 -135,82.60,97.90,123.20,153.60,198.20,215.00,221.50,221.70,221.70,232.70 -136,83.10,98.60,124.20,154.80,199.60,216.50,223.00,223.20,223.20,234.20 -137,83.80,99.30,125.00,155.90,200.90,218.10,224.60,224.80,224.80,235.80 -138,84.30,100.10,125.80,157.00,202.20,219.70,226.30,226.50,226.50,237.50 -139,84.90,100.80,126.80,158.20,203.70,221.20,227.80,228.00,228.00,239.00 -140,85.60,101.60,127.60,159.30,205.20,223.00,229.60,229.80,229.80,240.80 -141,86.30,102.30,128.60,160.50,206.80,224.60,231.20,231.40,231.40,242.40 -142,86.90,102.90,129.60,161.80,208.20,226.20,232.90,233.10,233.10,244.10 -143,87.60,103.60,130.40,163.00,209.50,227.70,234.40,234.60,234.60,245.60 -144,88.10,104.40,131.40,164.00,211.00,229.30,236.00,236.20,236.20,247.20 -145,88.70,105.10,132.40,165.00,212.50,230.80,237.60,237.80,237.80,248.80 -146,89.40,105.80,133.20,166.00,213.90,232.40,239.40,239.60,239.60,250.60 -147,90.10,106.50,134.00,167.00,215.40,234.00,241.00,241.20,241.20,252.20 -148,90.90,107.30,135.00,168.10,216.90,235.50,242.80,243.00,243.00,254.00 -149,91.50,108.00,136.00,169.30,218.50,237.30,244.60,244.80,244.80,255.80 -150,92.00,108.70,136.80,170.60,220.00,238.90,246.50,246.70,246.70,257.70 diff --git a/dist/construct/products/2ndDayAirAM.csv b/dist/construct/products/2ndDayAirAM.csv deleted file mode 100644 index ab0274ac1..000000000 --- a/dist/construct/products/2ndDayAirAM.csv +++ /dev/null @@ -1,152 +0,0 @@ -Exceed,242,243,244,245,246,247,248 -Letter,6.90,7.20,7.50,7.80,8.00,8.40,8.90 -1,7.10,7.50,7.90,8.80,9.30,9.90,10.20 -2,7.40,8.00,9.00,9.90,10.80,11.50,11.80 -3,7.90,8.50,10.00,11.00,12.30,13.10,13.60 -4,8.40,9.20,11.00,12.40,13.90,14.80,15.30 -5,9.10,10.00,12.00,13.90,15.40,16.50,17.10 -6,9.80,11.00,13.10,15.20,17.10,18.30,19.10 -7,10.50,11.80,14.10,16.60,18.90,20.10,21.20 -8,11.20,12.60,15.10,17.90,20.90,22.10,23.20 -9,11.70,13.60,16.30,19.40,22.70,24.20,25.30 -10,12.20,14.50,17.40,20.90,24.70,26.20,27.30 -11,12.90,15.20,18.40,22.20,26.50,28.00,29.10 -12,13.60,15.90,19.40,23.40,28.20,29.70,30.80 -13,14.40,16.70,20.50,24.70,29.70,31.20,32.40 -14,15.10,17.40,21.50,26.00,31.30,32.80,34.00 -15,15.80,18.10,22.50,27.20,33.00,34.50,35.70 -16,16.30,18.80,23.50,28.40,34.60,36.20,37.40 -17,16.80,19.40,24.50,29.50,36.30,38.10,39.30 -18,17.40,20.00,25.50,30.70,38.20,40.10,41.30 -19,18.10,20.70,26.30,31.90,40.00,41.90,43.10 -20,18.60,21.50,27.30,33.10,41.60,43.70,44.90 -21,19.10,22.30,28.30,34.20,43.30,45.50,46.90 -22,19.60,23.00,29.20,35.40,44.90,47.10,48.80 -23,20.30,23.70,30.20,36.40,46.40,48.90,50.60 -24,20.80,24.40,31.00,37.60,47.90,50.80,52.50 -25,21.30,25.20,32.00,38.90,49.30,52.50,54.20 -26,21.90,25.90,33.00,40.30,50.80,54.00,55.80 -27,22.60,26.60,33.80,41.50,52.10,55.70,57.50 -28,23.30,27.30,34.80,42.70,53.60,57.20,59.10 -29,24.00,28.20,35.80,43.70,55.20,58.80,60.80 -30,24.50,28.90,36.80,44.90,56.70,60.40,62.50 -31,25.20,29.60,37.90,46.00,58.40,62.10,64.20 -32,25.80,30.30,38.90,47.30,59.90,63.70,65.80 -33,26.30,30.90,39.90,48.40,61.40,65.50,67.60 -34,26.80,31.60,40.70,49.60,63.00,67.40,69.50 -35,27.50,32.40,41.50,50.60,64.50,69.20,71.30 -36,28.00,33.10,42.40,51.60,66.10,70.90,73.10 -37,28.50,34.00,43.30,52.80,67.70,72.60,74.80 -38,29.20,34.70,44.30,53.90,69.20,74.50,76.70 -39,30.00,35.50,45.30,55.10,70.70,76.20,78.40 -40,30.80,36.30,46.20,56.20,72.20,77.90,80.10 -41,31.50,37.00,47.20,57.40,73.90,79.70,81.90 -42,32.20,37.70,48.00,58.40,75.50,81.30,83.50 -43,32.80,38.40,48.70,59.40,77.00,82.90,85.10 -44,33.30,39.10,49.60,60.40,78.40,84.60,86.90 -45,33.80,39.80,50.40,61.40,79.90,86.20,88.50 -46,34.50,40.60,51.40,62.40,81.40,87.90,90.20 -47,35.10,41.30,52.40,63.40,83.10,89.60,91.90 -48,35.80,42.10,53.20,64.40,84.60,91.40,93.70 -49,36.30,42.80,54.20,65.40,86.00,93.00,95.30 -50,37.00,43.60,55.00,66.40,87.50,94.50,96.90 -51,37.60,44.40,55.80,67.60,89.00,96.00,98.50 -52,38.10,45.20,56.60,68.90,90.40,97.60,100.10 -53,38.80,45.90,57.50,70.00,91.90,99.20,101.70 -54,39.60,46.80,58.40,71.20,93.30,100.70,103.20 -55,40.20,47.60,59.40,72.20,94.80,102.30,104.80 -56,40.70,48.20,60.20,73.20,96.30,104.10,106.60 -57,41.40,48.90,61.20,74.40,97.70,105.70,108.20 -58,41.90,49.60,62.20,75.60,99.20,107.20,109.70 -59,42.40,50.10,63.20,76.80,100.70,108.90,111.40 -60,43.10,50.80,64.20,77.90,102.20,110.80,113.30 -61,43.90,51.60,65.00,79.10,103.80,112.60,115.10 -62,44.70,52.40,66.00,80.20,105.20,114.30,116.90 -63,45.40,53.10,66.80,81.50,106.80,116.00,118.90 -64,46.20,53.90,67.60,82.70,108.30,117.90,121.00 -65,46.80,54.60,68.60,84.00,109.90,119.60,123.10 -66,47.30,55.30,69.60,85.30,111.60,121.50,125.00 -67,47.80,56.10,70.60,86.80,113.20,123.30,126.80 -68,48.50,56.90,71.60,88.30,114.80,124.90,128.50 -69,49.00,57.60,72.60,89.60,116.60,126.70,130.40 -70,49.50,58.50,73.60,91.10,118.40,128.50,132.30 -71,50.20,59.50,74.60,92.40,120.10,130.30,134.10 -72,51.00,60.30,75.60,93.90,121.90,132.10,135.90 -73,51.70,61.00,76.60,95.20,123.50,133.80,137.60 -74,52.20,61.80,77.60,96.40,125.00,135.30,139.30 -75,52.90,62.50,78.60,97.70,126.50,136.80,141.10 -76,53.60,63.40,79.50,99.00,128.10,138.50,142.80 -77,54.30,64.10,80.50,100.30,129.60,140.40,144.70 -78,55.00,64.80,81.50,101.50,131.30,142.10,146.40 -79,55.70,65.70,82.50,102.80,133.00,143.80,148.10 -80,56.40,66.50,83.50,104.10,134.70,145.60,149.90 -81,56.90,67.20,84.50,105.50,136.20,147.40,151.70 -82,57.40,67.90,85.50,106.70,137.70,149.00,153.40 -83,58.10,68.60,86.60,108.00,139.20,150.70,155.20 -84,58.80,69.50,87.70,109.40,140.70,152.50,157.00 -85,59.40,70.20,88.70,110.60,142.00,154.20,158.70 -86,60.00,71.10,89.70,111.90,143.50,155.70,160.40 -87,60.70,71.80,90.70,113.20,145.00,157.20,162.10 -88,61.40,72.50,91.50,114.40,146.60,158.80,163.80 -89,62.10,73.40,92.50,115.50,148.10,160.60,165.70 -90,62.90,74.20,93.50,116.70,149.80,162.40,167.50 -91,63.50,74.90,94.50,117.90,151.30,164.30,169.40 -92,64.20,75.60,95.30,119.20,153.00,166.00,171.10 -93,64.80,76.30,96.30,120.40,154.50,167.70,172.80 -94,65.50,77.10,97.30,121.60,156.20,169.40,174.50 -95,66.00,77.80,98.30,122.60,157.70,171.00,176.10 -96,66.50,78.60,99.30,123.70,159.30,172.70,177.90 -97,67.20,79.30,100.30,124.90,160.80,174.40,179.70 -98,67.90,80.10,101.10,126.10,162.30,176.00,181.30 -99,68.50,80.80,102.10,127.30,163.60,177.50,182.80 -100,69.00,81.50,102.90,128.40,165.10,179.00,184.30 -101,69.70,82.20,103.80,129.60,166.60,180.50,186.00 -102,70.40,83.00,104.80,130.70,168.10,182.20,187.80 -103,71.00,83.80,105.60,131.90,169.80,184.00,189.60 -104,71.50,84.50,106.60,133.00,171.60,185.80,191.40 -105,72.20,85.30,107.40,134.30,173.20,187.50,193.10 -106,72.70,86.00,108.40,135.50,175.00,189.30,194.90 -107,73.40,86.80,109.40,136.90,176.70,191.00,196.70 -108,74.00,87.50,110.40,138.10,178.20,192.80,198.50 -109,74.80,88.30,111.40,139.40,179.90,194.50,200.20 -110,75.50,89.10,112.20,140.50,181.60,196.30,202.00 -111,76.00,90.10,113.20,141.80,183.30,198.00,203.80 -112,76.70,90.90,114.30,143.00,185.00,199.70,205.60 -113,77.40,91.90,115.30,144.40,186.60,201.50,207.40 -114,78.20,92.70,116.30,145.60,188.20,203.30,209.30 -115,79.10,93.60,117.30,146.90,189.80,205.20,211.20 -116,79.80,94.40,118.30,148.20,191.30,206.90,213.00 -117,80.30,95.10,119.40,149.50,192.80,208.70,214.80 -118,80.90,95.80,120.40,150.70,194.40,210.40,216.50 -119,81.60,96.70,121.40,152.00,196.00,212.00,218.30 -120,82.30,97.50,122.50,153.40,197.50,213.80,220.20 -121,82.80,98.30,123.50,154.60,199.20,215.60,222.00 -122,83.50,99.00,124.50,155.80,200.80,217.40,223.90 -123,84.40,99.90,125.50,157.00,202.50,219.20,225.80 -124,85.10,100.60,126.60,158.20,204.10,221.10,227.80 -125,85.80,101.30,127.80,159.50,205.80,222.90,229.70 -126,86.50,102.10,128.80,160.90,207.30,224.70,231.50 -127,87.10,102.90,129.80,162.10,209.00,226.50,233.30 -128,87.80,103.90,130.80,163.30,210.50,228.40,235.20 -129,88.60,104.70,131.90,164.50,212.10,230.10,237.00 -130,89.20,105.50,132.90,165.70,213.60,231.80,238.70 -131,89.90,106.50,133.90,167.00,215.10,233.60,240.60 -132,90.50,107.30,135.00,168.30,216.80,235.30,242.60 -133,91.30,108.10,136.00,169.60,218.50,237.20,244.50 -134,92.00,108.80,137.00,170.80,220.30,239.20,246.50 -135,92.50,109.70,138.00,172.10,221.90,241.00,248.30 -136,93.20,110.40,139.00,173.30,223.50,242.70,250.00 -137,93.90,111.30,140.10,174.70,225.10,244.50,251.80 -138,94.50,112.10,141.10,176.10,226.70,246.40,253.70 -139,95.30,112.90,142.10,177.30,228.20,248.10,255.40 -140,96.00,113.90,143.20,178.60,229.90,249.90,257.30 -141,96.70,114.70,144.20,179.80,231.50,251.80,259.20 -142,97.30,115.40,145.20,181.10,233.20,253.60,261.00 -143,98.00,116.10,146.20,182.60,234.70,255.30,262.70 -144,98.70,116.90,147.20,184.00,236.20,257.00,264.50 -145,99.60,117.80,148.20,185.20,237.90,258.70,266.30 -146,100.30,118.60,149.30,186.30,239.60,260.40,268.10 -147,101.00,119.30,150.40,187.50,241.20,262.20,270.00 -148,101.80,120.10,151.40,188.70,242.90,264.00,272.00 -149,102.40,121.00,152.40,189.90,244.80,265.90,274.10 -150,103.10,121.70,153.40,191.20,246.60,267.70,276.30 diff --git a/dist/construct/products/3DaySelect.csv b/dist/construct/products/3DaySelect.csv deleted file mode 100644 index 6c41e665a..000000000 --- a/dist/construct/products/3DaySelect.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,302,303,304,305,306,307,308 -1,4.40,4.60,4.90,5.20,6.00,6.40,6.60 -2,4.60,4.80,5.20,5.90,6.90,7.40,7.70 -3,5.00,5.30,5.90,6.60,8.00,8.50,8.90 -4,5.40,5.80,6.50,7.30,8.90,9.40,10.00 -5,5.70,6.30,7.10,8.00,9.80,10.40,11.10 -6,6.10,6.80,7.70,8.70,10.70,11.30,12.10 -7,6.50,7.30,8.30,9.40,11.50,12.40,13.30 -8,6.90,7.80,8.90,10.10,12.40,13.40,14.40 -9,7.30,8.30,9.50,10.80,13.30,14.40,15.50 -10,7.70,8.80,10.10,11.40,14.10,15.40,16.70 -11,8.10,9.30,10.70,12.10,15.10,16.50,17.80 -12,8.50,9.80,11.30,12.80,16.00,17.50,19.00 -13,8.90,10.30,11.90,13.50,16.90,18.50,20.10 -14,9.30,10.80,12.50,14.20,17.80,19.50,21.30 -15,9.70,11.30,13.10,15.00,18.70,20.50,22.40 -16,10.10,11.80,13.80,15.70,19.60,21.50,23.50 -17,10.50,12.20,14.40,16.50,20.50,22.50,24.60 -18,10.90,12.70,15.10,17.20,21.50,23.60,25.70 -19,11.30,13.20,15.70,17.90,22.40,24.60,26.80 -20,11.70,13.70,16.30,18.60,23.30,25.60,27.80 -21,12.10,14.20,16.90,19.30,24.10,26.50,28.80 -22,12.50,14.70,17.50,20.00,24.90,27.40,29.90 -23,12.90,15.20,18.10,20.80,25.80,28.40,30.90 -24,13.30,15.70,18.70,21.50,26.70,29.40,32.00 -25,13.80,16.20,19.30,22.20,27.70,30.40,33.10 -26,14.20,16.70,19.90,22.90,28.60,31.40,34.20 -27,14.60,17.20,20.60,23.60,29.60,32.50,35.40 -28,15.00,17.60,21.20,24.30,30.50,33.50,36.50 -29,15.40,18.10,21.80,25.00,31.40,34.50,37.60 -30,15.80,18.60,22.40,25.70,32.40,35.50,38.70 -31,16.20,19.10,23.00,26.40,33.30,36.50,39.70 -32,16.60,19.60,23.70,27.10,34.30,37.50,40.80 -33,17.00,20.10,24.30,27.80,35.10,38.40,41.90 -34,17.40,20.60,24.90,28.50,35.90,39.30,42.90 -35,17.80,21.10,25.50,29.20,36.80,40.20,43.90 -36,18.20,21.60,26.10,29.90,37.60,41.10,44.90 -37,18.60,22.10,26.70,30.60,38.50,42.00,45.80 -38,19.00,22.60,27.20,31.30,39.30,42.90,46.80 -39,19.40,23.00,27.80,32.00,40.10,43.80,47.80 -40,19.80,23.50,28.40,32.70,41.00,44.70,48.80 -41,20.20,24.00,29.00,33.40,41.80,45.60,49.90 -42,20.60,24.50,29.60,34.10,42.80,46.70,51.10 -43,21.00,25.00,30.20,34.80,43.70,47.70,52.20 -44,21.40,25.50,30.80,35.50,44.60,48.60,53.30 -45,21.80,26.00,31.40,36.30,45.50,49.60,54.40 -46,22.20,26.50,32.00,37.00,46.30,50.60,55.50 -47,22.60,27.00,32.60,37.70,47.30,51.70,56.60 -48,23.00,27.50,33.20,38.40,48.10,52.60,57.70 -49,23.40,28.00,33.80,39.10,48.90,53.50,58.70 -50,23.80,28.50,34.40,39.80,49.90,54.60,59.80 -51,24.20,29.00,35.00,40.50,50.80,55.60,60.90 -52,24.60,29.40,35.60,41.20,51.70,56.60,62.00 -53,25.00,29.90,36.20,41.90,52.50,57.60,63.10 -54,25.40,30.40,36.80,42.60,53.40,58.60,64.30 -55,25.80,30.90,37.40,43.30,54.40,59.70,65.50 -56,26.20,31.40,38.00,44.00,55.30,60.70,66.60 -57,26.60,31.90,38.60,44.70,56.30,61.80,67.80 -58,27.00,32.40,39.20,45.40,57.20,62.80,68.90 -59,27.40,32.90,39.80,46.10,58.20,63.90,70.10 -60,27.80,33.40,40.40,46.80,59.10,64.90,71.30 -61,28.20,33.90,41.00,47.50,60.10,66.00,72.50 -62,28.60,34.40,41.60,48.20,61.00,67.00,73.70 -63,29.00,34.90,42.20,48.90,61.90,67.90,74.80 -64,29.40,35.30,42.80,49.60,62.90,69.00,75.90 -65,29.80,35.80,43.40,50.30,63.80,69.90,77.00 -66,30.30,36.30,44.00,51.00,64.80,71.00,78.10 -67,30.70,36.80,44.60,51.70,65.70,72.00,79.20 -68,31.10,37.30,45.20,52.40,66.70,73.10,80.30 -69,31.50,37.80,45.80,53.10,67.50,74.00,81.30 -70,31.90,38.30,46.40,53.80,68.30,75.00,82.40 -71,32.30,38.80,47.00,54.50,69.30,76.00,83.60 -72,32.70,39.30,47.60,55.20,70.30,77.10,84.70 -73,33.10,39.80,48.20,55.90,71.20,78.00,85.80 -74,33.50,40.30,48.80,56.60,72.10,79.00,86.90 -75,33.90,40.80,49.40,57.30,73.00,80.00,88.00 -76,34.30,41.30,50.00,58.00,73.90,81.00,89.10 -77,34.70,41.80,50.70,58.70,74.80,82.10,90.20 -78,35.10,42.30,51.30,59.40,75.70,83.10,91.40 -79,35.50,42.80,51.90,60.20,76.60,84.00,92.50 -80,35.90,43.20,52.50,61.00,77.50,84.90,93.60 -81,36.30,43.70,53.10,61.70,78.30,86.00,94.60 -82,36.70,44.20,53.70,62.40,79.10,87.00,95.80 -83,37.10,44.70,54.30,63.10,80.10,88.00,96.90 -84,37.50,45.20,54.90,63.80,81.00,89.00,98.00 -85,37.90,45.70,55.50,64.50,81.80,89.90,99.00 -86,38.30,46.20,56.10,65.20,82.80,91.00,100.20 -87,38.70,46.70,56.70,65.90,83.60,92.00,101.30 -88,39.10,47.20,57.30,66.60,84.50,93.00,102.50 -89,39.50,47.70,57.90,67.30,85.40,94.10,103.50 -90,39.90,48.20,58.50,68.00,86.40,95.10,104.70 -91,40.30,48.60,59.10,68.70,87.20,96.10,105.80 -92,40.70,49.10,59.70,69.50,88.10,97.10,106.90 -93,41.10,49.60,60.30,70.20,89.00,98.10,108.00 -94,41.50,50.10,61.00,70.90,89.90,99.10,109.10 -95,41.90,50.60,61.60,71.60,90.90,100.20,110.20 -96,42.30,51.10,62.20,72.30,91.80,101.10,111.30 -97,42.70,51.60,62.80,73.00,92.70,102.10,112.40 -98,43.10,52.10,63.40,73.70,93.70,103.10,113.50 -99,43.50,52.60,64.00,74.40,94.50,104.00,114.50 -100,44.00,53.10,64.70,75.10,95.40,105.00,115.60 -101,44.40,53.50,65.30,75.80,96.30,105.90,116.70 -102,44.80,54.00,65.90,76.50,97.30,107.00,117.90 -103,45.20,54.50,66.50,77.20,98.10,108.00,119.10 -104,45.60,55.00,67.10,77.90,98.90,108.90,120.10 -105,46.00,55.50,67.70,78.60,99.90,110.00,121.20 -106,46.40,56.00,68.30,79.30,100.70,111.00,122.30 -107,46.80,56.50,68.90,80.00,101.70,112.10,123.50 -108,47.20,57.00,69.50,80.70,102.60,113.00,124.60 -109,47.60,57.50,70.10,81.40,103.50,114.00,125.70 -110,48.00,58.00,70.70,82.10,104.50,115.10,126.80 -111,48.40,58.50,71.30,82.80,105.40,116.00,128.00 -112,48.80,59.00,71.90,83.50,106.30,117.00,129.10 -113,49.20,59.40,72.50,84.30,107.20,118.00,130.20 -114,49.60,59.90,73.10,85.00,108.20,119.00,131.30 -115,50.00,60.40,73.70,85.70,109.00,119.90,132.30 -116,50.40,61.00,74.30,86.40,109.90,120.80,133.40 -117,50.80,61.50,74.90,87.10,110.90,121.90,134.50 -118,51.20,62.00,75.50,87.80,111.70,122.90,135.60 -119,51.60,62.40,76.10,88.50,112.70,123.90,136.70 -120,52.00,62.90,76.70,89.20,113.60,124.90,137.80 -121,52.40,63.40,77.30,89.90,114.50,125.80,138.90 -122,52.80,63.90,77.90,90.60,115.40,126.70,139.90 -123,53.20,64.40,78.50,91.30,116.30,127.70,141.10 -124,53.60,64.90,79.10,92.00,117.20,128.70,142.20 -125,54.00,65.40,79.70,92.70,118.10,129.60,143.30 -126,54.40,65.90,80.30,93.50,119.10,130.70,144.40 -127,54.80,66.40,80.90,94.20,120.00,131.60,145.50 -128,55.20,66.90,81.50,94.90,120.80,132.50,146.50 -129,55.60,67.40,82.10,95.60,121.80,133.60,147.70 -130,56.00,67.90,82.70,96.30,122.70,134.50,148.80 -131,56.40,68.30,83.30,97.00,123.60,135.50,150.00 -132,56.80,68.80,83.90,97.70,124.50,136.50,151.10 -133,57.20,69.30,84.50,98.40,125.30,137.40,152.10 -134,57.60,69.80,85.10,99.10,126.20,138.40,153.20 -135,58.00,70.30,85.70,99.80,127.10,139.40,154.40 -136,58.40,70.80,86.30,100.50,128.00,140.40,155.50 -137,58.80,71.30,86.90,101.30,128.90,141.40,156.60 -138,59.20,71.80,87.50,102.00,129.80,142.40,157.60 -139,59.60,72.30,88.10,102.70,130.70,143.40,158.80 -140,60.00,72.80,88.70,103.40,131.50,144.40,159.90 -141,60.50,73.30,89.30,104.10,132.50,145.40,161.00 -142,60.90,73.80,89.90,104.80,133.40,146.40,162.10 -143,61.30,74.20,90.50,105.50,134.30,147.40,163.20 -144,61.70,74.70,91.10,106.20,135.10,148.30,164.30 -145,62.10,75.20,91.70,106.90,136.00,149.30,165.30 -146,62.50,75.70,92.30,107.60,136.90,150.40,166.50 -147,62.90,76.20,92.90,108.30,137.80,151.30,167.50 -148,63.30,76.70,93.50,109.00,138.80,152.40,168.70 -149,63.70,77.20,94.10,109.70,139.60,153.30,169.80 -150,64.10,77.70,94.70,110.40,140.40,154.40,171.00 diff --git a/dist/construct/products/3DaySelectRes.csv b/dist/construct/products/3DaySelectRes.csv deleted file mode 100644 index f7fb11675..000000000 --- a/dist/construct/products/3DaySelectRes.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,302,303,304,305,306,307,308 -1,5.40,5.60,5.90,6.20,7.00,7.40,7.60 -2,5.60,5.80,6.20,6.90,7.90,8.40,8.70 -3,6.00,6.30,6.90,7.60,9.00,9.50,9.90 -4,6.40,6.80,7.50,8.30,9.90,10.40,11.00 -5,6.70,7.30,8.10,9.00,10.80,11.40,12.10 -6,7.10,7.80,8.70,9.70,11.70,12.30,13.10 -7,7.50,8.30,9.30,10.40,12.50,13.40,14.30 -8,7.90,8.80,9.90,11.10,13.40,14.40,15.40 -9,8.30,9.30,10.50,11.80,14.30,15.40,16.50 -10,8.70,9.80,11.10,12.40,15.10,16.40,17.70 -11,9.10,10.30,11.70,13.10,16.10,17.50,18.80 -12,9.50,10.80,12.30,13.80,17.00,18.50,20.00 -13,9.90,11.30,12.90,14.50,17.90,19.50,21.10 -14,10.30,11.80,13.50,15.20,18.80,20.50,22.30 -15,10.70,12.30,14.10,16.00,19.70,21.50,23.40 -16,11.10,12.80,14.80,16.70,20.60,22.50,24.50 -17,11.50,13.20,15.40,17.50,21.50,23.50,25.60 -18,11.90,13.70,16.10,18.20,22.50,24.60,26.70 -19,12.30,14.20,16.70,18.90,23.40,25.60,27.80 -20,12.70,14.70,17.30,19.60,24.30,26.60,28.80 -21,13.10,15.20,17.90,20.30,25.10,27.50,29.80 -22,13.50,15.70,18.50,21.00,25.90,28.40,30.90 -23,13.90,16.20,19.10,21.80,26.80,29.40,31.90 -24,14.30,16.70,19.70,22.50,27.70,30.40,33.00 -25,14.80,17.20,20.30,23.20,28.70,31.40,34.10 -26,15.20,17.70,20.90,23.90,29.60,32.40,35.20 -27,15.60,18.20,21.60,24.60,30.60,33.50,36.40 -28,16.00,18.60,22.20,25.30,31.50,34.50,37.50 -29,16.40,19.10,22.80,26.00,32.40,35.50,38.60 -30,16.80,19.60,23.40,26.70,33.40,36.50,39.70 -31,17.20,20.10,24.00,27.40,34.30,37.50,40.70 -32,17.60,20.60,24.70,28.10,35.30,38.50,41.80 -33,18.00,21.10,25.30,28.80,36.10,39.40,42.90 -34,18.40,21.60,25.90,29.50,36.90,40.30,43.90 -35,18.80,22.10,26.50,30.20,37.80,41.20,44.90 -36,19.20,22.60,27.10,30.90,38.60,42.10,45.90 -37,19.60,23.10,27.70,31.60,39.50,43.00,46.80 -38,20.00,23.60,28.20,32.30,40.30,43.90,47.80 -39,20.40,24.00,28.80,33.00,41.10,44.80,48.80 -40,20.80,24.50,29.40,33.70,42.00,45.70,49.80 -41,21.20,25.00,30.00,34.40,42.80,46.60,50.90 -42,21.60,25.50,30.60,35.10,43.80,47.70,52.10 -43,22.00,26.00,31.20,35.80,44.70,48.70,53.20 -44,22.40,26.50,31.80,36.50,45.60,49.60,54.30 -45,22.80,27.00,32.40,37.30,46.50,50.60,55.40 -46,23.20,27.50,33.00,38.00,47.30,51.60,56.50 -47,23.60,28.00,33.60,38.70,48.30,52.70,57.60 -48,24.00,28.50,34.20,39.40,49.10,53.60,58.70 -49,24.40,29.00,34.80,40.10,49.90,54.50,59.70 -50,24.80,29.50,35.40,40.80,50.90,55.60,60.80 -51,25.20,30.00,36.00,41.50,51.80,56.60,61.90 -52,25.60,30.40,36.60,42.20,52.70,57.60,63.00 -53,26.00,30.90,37.20,42.90,53.50,58.60,64.10 -54,26.40,31.40,37.80,43.60,54.40,59.60,65.30 -55,26.80,31.90,38.40,44.30,55.40,60.70,66.50 -56,27.20,32.40,39.00,45.00,56.30,61.70,67.60 -57,27.60,32.90,39.60,45.70,57.30,62.80,68.80 -58,28.00,33.40,40.20,46.40,58.20,63.80,69.90 -59,28.40,33.90,40.80,47.10,59.20,64.90,71.10 -60,28.80,34.40,41.40,47.80,60.10,65.90,72.30 -61,29.20,34.90,42.00,48.50,61.10,67.00,73.50 -62,29.60,35.40,42.60,49.20,62.00,68.00,74.70 -63,30.00,35.90,43.20,49.90,62.90,68.90,75.80 -64,30.40,36.30,43.80,50.60,63.90,70.00,76.90 -65,30.80,36.80,44.40,51.30,64.80,70.90,78.00 -66,31.30,37.30,45.00,52.00,65.80,72.00,79.10 -67,31.70,37.80,45.60,52.70,66.70,73.00,80.20 -68,32.10,38.30,46.20,53.40,67.70,74.10,81.30 -69,32.50,38.80,46.80,54.10,68.50,75.00,82.30 -70,32.90,39.30,47.40,54.80,69.30,76.00,83.40 -71,33.30,39.80,48.00,55.50,70.30,77.00,84.60 -72,33.70,40.30,48.60,56.20,71.30,78.10,85.70 -73,34.10,40.80,49.20,56.90,72.20,79.00,86.80 -74,34.50,41.30,49.80,57.60,73.10,80.00,87.90 -75,34.90,41.80,50.40,58.30,74.00,81.00,89.00 -76,35.30,42.30,51.00,59.00,74.90,82.00,90.10 -77,35.70,42.80,51.70,59.70,75.80,83.10,91.20 -78,36.10,43.30,52.30,60.40,76.70,84.10,92.40 -79,36.50,43.80,52.90,61.20,77.60,85.00,93.50 -80,36.90,44.20,53.50,62.00,78.50,85.90,94.60 -81,37.30,44.70,54.10,62.70,79.30,87.00,95.60 -82,37.70,45.20,54.70,63.40,80.10,88.00,96.80 -83,38.10,45.70,55.30,64.10,81.10,89.00,97.90 -84,38.50,46.20,55.90,64.80,82.00,90.00,99.00 -85,38.90,46.70,56.50,65.50,82.80,90.90,100.00 -86,39.30,47.20,57.10,66.20,83.80,92.00,101.20 -87,39.70,47.70,57.70,66.90,84.60,93.00,102.30 -88,40.10,48.20,58.30,67.60,85.50,94.00,103.50 -89,40.50,48.70,58.90,68.30,86.40,95.10,104.50 -90,40.90,49.20,59.50,69.00,87.40,96.10,105.70 -91,41.30,49.60,60.10,69.70,88.20,97.10,106.80 -92,41.70,50.10,60.70,70.50,89.10,98.10,107.90 -93,42.10,50.60,61.30,71.20,90.00,99.10,109.00 -94,42.50,51.10,62.00,71.90,90.90,100.10,110.10 -95,42.90,51.60,62.60,72.60,91.90,101.20,111.20 -96,43.30,52.10,63.20,73.30,92.80,102.10,112.30 -97,43.70,52.60,63.80,74.00,93.70,103.10,113.40 -98,44.10,53.10,64.40,74.70,94.70,104.10,114.50 -99,44.50,53.60,65.00,75.40,95.50,105.00,115.50 -100,45.00,54.10,65.70,76.10,96.40,106.00,116.60 -101,45.40,54.50,66.30,76.80,97.30,106.90,117.70 -102,45.80,55.00,66.90,77.50,98.30,108.00,118.90 -103,46.20,55.50,67.50,78.20,99.10,109.00,120.10 -104,46.60,56.00,68.10,78.90,99.90,109.90,121.10 -105,47.00,56.50,68.70,79.60,100.90,111.00,122.20 -106,47.40,57.00,69.30,80.30,101.70,112.00,123.30 -107,47.80,57.50,69.90,81.00,102.70,113.10,124.50 -108,48.20,58.00,70.50,81.70,103.60,114.00,125.60 -109,48.60,58.50,71.10,82.40,104.50,115.00,126.70 -110,49.00,59.00,71.70,83.10,105.50,116.10,127.80 -111,49.40,59.50,72.30,83.80,106.40,117.00,129.00 -112,49.80,60.00,72.90,84.50,107.30,118.00,130.10 -113,50.20,60.40,73.50,85.30,108.20,119.00,131.20 -114,50.60,60.90,74.10,86.00,109.20,120.00,132.30 -115,51.00,61.40,74.70,86.70,110.00,120.90,133.30 -116,51.40,62.00,75.30,87.40,110.90,121.80,134.40 -117,51.80,62.50,75.90,88.10,111.90,122.90,135.50 -118,52.20,63.00,76.50,88.80,112.70,123.90,136.60 -119,52.60,63.40,77.10,89.50,113.70,124.90,137.70 -120,53.00,63.90,77.70,90.20,114.60,125.90,138.80 -121,53.40,64.40,78.30,90.90,115.50,126.80,139.90 -122,53.80,64.90,78.90,91.60,116.40,127.70,140.90 -123,54.20,65.40,79.50,92.30,117.30,128.70,142.10 -124,54.60,65.90,80.10,93.00,118.20,129.70,143.20 -125,55.00,66.40,80.70,93.70,119.10,130.60,144.30 -126,55.40,66.90,81.30,94.50,120.10,131.70,145.40 -127,55.80,67.40,81.90,95.20,121.00,132.60,146.50 -128,56.20,67.90,82.50,95.90,121.80,133.50,147.50 -129,56.60,68.40,83.10,96.60,122.80,134.60,148.70 -130,57.00,68.90,83.70,97.30,123.70,135.50,149.80 -131,57.40,69.30,84.30,98.00,124.60,136.50,151.00 -132,57.80,69.80,84.90,98.70,125.50,137.50,152.10 -133,58.20,70.30,85.50,99.40,126.30,138.40,153.10 -134,58.60,70.80,86.10,100.10,127.20,139.40,154.20 -135,59.00,71.30,86.70,100.80,128.10,140.40,155.40 -136,59.40,71.80,87.30,101.50,129.00,141.40,156.50 -137,59.80,72.30,87.90,102.30,129.90,142.40,157.60 -138,60.20,72.80,88.50,103.00,130.80,143.40,158.60 -139,60.60,73.30,89.10,103.70,131.70,144.40,159.80 -140,61.00,73.80,89.70,104.40,132.50,145.40,160.90 -141,61.50,74.30,90.30,105.10,133.50,146.40,162.00 -142,61.90,74.80,90.90,105.80,134.40,147.40,163.10 -143,62.30,75.20,91.50,106.50,135.30,148.40,164.20 -144,62.70,75.70,92.10,107.20,136.10,149.30,165.30 -145,63.10,76.20,92.70,107.90,137.00,150.30,166.30 -146,63.50,76.70,93.30,108.60,137.90,151.40,167.50 -147,63.90,77.20,93.90,109.30,138.80,152.30,168.50 -148,64.30,77.70,94.50,110.00,139.80,153.40,169.70 -149,64.70,78.20,95.10,110.70,140.60,154.30,170.80 -150,65.10,78.70,95.70,111.40,141.40,155.40,172.00 diff --git a/dist/construct/products/450.csv b/dist/construct/products/450.csv deleted file mode 100644 index 63d16e197..000000000 --- a/dist/construct/products/450.csv +++ /dev/null @@ -1,153 +0,0 @@ -"ZONE CHART" -"UPS Ground/UPS 3 Day Select/UPS 2nd Day Air/UPS 2nd Day Air A.M./UPS Next Day Air Saver/UPS Next Day Air" - -"For shipments originating in ZIP Codes 450-01 to 452-99. To determine zone" -"take the first three digits of the receiver's ZIP Code and refer to the chart below:" - -"ZONES" -Dest. ZIP,Ground,3 Day Select,2nd Day Air,2nd Day Air A.M.,Next Day Air Saver,Next Day Air - -004-005,4,304,204,244,134,104 -006-007,-,-,225,-,-,125 -008,-,-,[1],-,-,[1] -009,-,-,225,-,-,125 -010-067,5,305,205,245,135,105 -068-089,4,304,204,244,134,104 -090-099,-,-,-,-,-,- -100-118,4,304,204,244,134,104 -119-123,5,305,205,245,135,105 -124-127,4,304,204,244,134,104 -128-129,5,305,205,245,135,105 -130-149,4,304,204,244,134,104 -150-157,3,303,203,243,133,103 -158-159,4,304,204,244,134,104 -160-165,3,303,203,243,133,103 -166-199,4,304,204,244,134,104 -200-239,4,304,204,244,134,104 -240-244,3,303,203,243,133,103 -245,4,304,204,244,134,104 -246-253,3,303,203,243,133,103 -254,4,304,204,244,134,104 -255-257,2,302,202,242,132,102 -258-260,3,303,203,243,133,103 -261,2,302,202,242,132,102 -262-266,3,303,203,243,133,103 -267,4,304,204,244,134,104 -268,3,303,203,-,-,103 -270,4,304,204,244,134,104 -271,3,303,203,243,133,103 -272-285,4,304,204,244,134,104 -286-289,3,303,203,243,133,103 -290-299,4,304,204,244,134,104 -300-306,4,304,204,244,134,104 -307,3,303,203,243,133,103 -308-319,4,304,204,244,134,104 -320-339,5,305,205,245,135,105 -340,-,-,-,-,-,- -341-349,5,305,205,245,135,105 -350-369,4,304,204,244,134,104 -370-374,3,303,203,243,133,103 -375,4,304,204,-,-,104 -376-379,3,303,203,243,133,103 -380-381,4,304,204,244,134,104 -382,3,303,203,243,133,103 -383,4,304,204,244,134,104 -384-385,3,303,203,243,133,103 -386-394,4,304,204,244,134,104 -395,5,305,205,245,135,105 -396-399,4,304,204,244,134,104 -400-406,2,302,202,242,132,102 -407-409,3,303,203,-,133,103 -410-414,2,302,202,242,132,102 -415-416,3,303,203,-,133,103 -417-418,2,302,202,242,132,102 -420-422,3,303,203,243,133,103 -423,2,302,202,242,132,102 -424,3,303,203,243,133,103 -425-433,2,302,202,242,132,102 -434-436,3,303,203,243,133,103 -437-438,2,302,202,242,132,102 -439-447,3,303,203,243,133,103 -448-462,2,302,202,242,132,102 -463-466,3,303,203,243,133,103 -467-475,2,302,202,242,132,102 -476-477,3,303,203,243,133,103 -478-479,2,302,202,242,132,102 -480-495,3,303,203,243,133,103 -496-499,4,304,204,244,134,104 -500-509,4,304,204,244,134,104 -510-512,5,305,205,245,135,105 -513-528,4,304,204,244,134,104 -530-534,3,303,203,243,133,103 -535-555,4,304,204,244,134,104 -556-558,5,305,205,245,135,105 -559-560,4,304,204,244,134,104 -561-585,5,305,205,245,135,105 -586-593,6,306,206,246,136,106 -594,7,307,207,247,137,107 -595,6,306,206,-,-,106 -596-599,7,307,207,247,137,107 -600-611,3,303,203,243,133,103 -612,4,304,204,244,134,104 -613-622,3,303,203,243,133,103 -623,4,304,204,244,134,104 -624-633,3,303,203,243,133,103 -634-636,4,304,204,244,134,104 -637,3,303,203,243,133,103 -638-667,4,304,204,244,134,104 -668-672,5,305,205,245,135,105 -673,4,304,204,244,134,104 -674-693,5,305,205,245,135,105 -700-711,5,305,205,245,135,105 -712,4,304,204,244,134,104 -713-714,5,305,205,245,135,105 -716-717,4,304,204,244,134,104 -718,5,305,205,245,135,105 -719-729,4,304,204,244,134,104 -730-742,5,305,205,245,135,105 -743,4,304,204,244,134,104 -744-748,5,305,205,245,135,105 -749,4,304,204,-,134,104 -750-768,5,305,205,245,135,105 -769,6,306,206,246,136,106 -770-779,5,305,205,245,135,105 -780-785,6,306,206,246,136,106 -786-787,5,305,205,245,135,105 -788,6,306,206,246,136,106 -789-796,5,305,205,245,135,105 -797-799,6,306,206,246,136,106 -800-806,6,306,206,246,136,106 -807,5,305,205,245,135,105 -808-831,6,306,206,246,136,106 -832-844,7,307,207,247,137,107 -845,6,306,206,-,-,106 -846-864,7,307,207,247,137,107 -865-885,6,306,206,246,136,106 -889-893,7,307,207,247,137,107 -894-897,8,308,208,248,138,108 -898,7,307,207,-,-,107 -900-921,8,308,208,248,138,108 -922,7,307,207,247,137,107 -923-961,8,308,208,248,138,108 -962-966,-,-,-,-,-,- -967-968,-,-,[2],-,-,[2] -969,-,-,[1],-,-,[1] -970-977,8,308,208,248,138,108 -978-979,7,307,207,-,137,107 -980-989,8,308,208,248,138,108 -990-994,7,307,207,247,137,107 -995-999,-,-,[3],-,-,[3] -,,,,,, - - -"[1] For Virgin Islands, Guam, Marshall Islands, etc., please refer to the Worldwide Rate and Zone information." - -"[2] For Hawaii, the following Postal Codes are Zone 124 for Next Day Air and Zone 224 for 2nd Day Air:" -96701,96706,96707,96709,96712,96717,96730,96731,96734,96744,96759,96762,96782,96786,96789,96791,96792,96795,96797,96801,96802,96803,96804,96805,96806,96807,96808,96809,96810,96811,96812,96813,96814,96815,96816,96817,96818,96819,96820,96821,96822,96823,96824,96825,96826,96827,96828,96830,96835,96836,96837,96838,96839,96840,96841,96842,96843,96844,96845,96846,96847,96848,96849,96850,96853,96854,96857,96858,96859,96860,96861,96862,96863,96898 -"For Hawaii, the following Postal Codes are Zone 126 for Next Day Air and Zone 226 for 2nd Day Air:" -96703,96704,96705,96708,96710,96713,96714,96715,96716,96718,96719,96720,96721,96722,96725,96726,96727,96728,96729,96732,96733,96737,96738,96739,96740,96741,96742,96743,96745,96746,96747,96748,96749,96750,96751,96752,96753,96754,96755,96756,96757,96760,96761,96763,96764,96765,96766,96767,96768,96769,96770,96771,96772,96773,96774,96775,96776,96777,96778,96779,96780,96781,96783,96784,96785,96788,96790,96793,96796 - -"[3] For Alaska, the following Postal Codes are Zone 124 for Next Day Air and Zone 224 for 2nd Day Air:" -99501,99502,99503,99504,99505,99506,99507,99508,99509,99510,99511,99512,99513,99514,99515,99516,99517,99518,99519,99520,99521,99522,99523,99524,99540,99556,99567,99568,99572,99577,99587,99603,99605,99610,99611,99631,99635,99639,99645,99654,99664,99669,99672,99687,99701,99702,99703,99705,99706,99707,99708,99709,99710,99711,99712,99775 -"For Alaska, the following Postal Codes are Zone 126 for Next Day Air and Zone 226 for 2nd Day Air:" -99547,99548,99549,99550,99551,99552,99553,99554,99555,99557,99558,99559,99561,99563,99564,99565,99566,99569,99571,99573,99574,99575,99576,99578,99579,99580,99581,99583,99584,99585,99586,99588,99589,99590,99591,99602,99604,99606,99607,99608,99609,99612,99613,99614,99615,99619,99620,99621,99622,99624,99625,99626,99627,99628,99630,99632,99633,99634,99636,99637,99638,99640,99641,99643,99644,99647,99648,99649,99650,99651,99652,99653,99655,99656,99657,99658,99659,99660,99661,99662,99663,99665,99666,99667,99668,99670,99671,99674,99675,99676,99677,99678,99679,99680,99681,99682,99683,99684,99685,99686,99688,99689,99690,99691,99692,99693,99694,99695,99697,99704,99714,99716,99720,99721,99722,99723,99724,99725,99726,99727,99729,99730,99732,99733,99734,99736,99737,99738,99739,99740,99741,99742,99743,99744,99745,99746,99747,99748,99749,99750,99751,99752,99753,99754,99755,99756,99757,99758,99759,99760,99761,99762,99763,99764,99765,99766,99767,99768,99769,99770,99771,99772,99773,99774,99776,99777,99778,99779,99780,99781,99782,99783,99784,99785,99786,99788,99789,99790,99791,99801,99802,99803,99811,99820,99821,99824,99825,99826,99827,99829,99830,99832,99833,99835,99836,99840,99841,99850,99901,99903,99918,99919,99921,99922,99923,99925,99926,99927,99928,99929,99950 diff --git a/dist/construct/products/Ground.csv b/dist/construct/products/Ground.csv deleted file mode 100644 index 4fe39dedb..000000000 --- a/dist/construct/products/Ground.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,2,3,4,5,6,7,8 -1,3.02,3.12,3.35,3.40,3.59,3.63,3.73 -2,3.08,3.28,3.61,3.71,4.00,4.09,4.35 -3,3.17,3.43,3.81,3.97,4.26,4.40,4.81 -4,3.29,3.58,4.02,4.23,4.52,4.66,5.12 -5,3.42,3.71,4.20,4.43,4.72,4.92,5.43 -6,3.57,3.84,4.35,4.64,4.93,5.18,5.69 -7,3.71,3.96,4.45,4.79,5.13,5.38,5.95 -8,3.85,4.08,4.56,4.90,5.29,5.64,6.36 -9,3.98,4.21,4.66,5.00,5.44,5.95,6.77 -10,4.11,4.32,4.76,5.16,5.65,6.36,7.24 -11,4.25,4.44,4.87,5.31,5.91,6.83,7.75 -12,4.38,4.58,4.97,5.46,6.17,7.29,8.32 -13,4.51,4.72,5.06,5.57,6.47,7.75,8.89 -14,4.62,4.87,5.16,5.67,6.84,8.22,9.45 -15,4.72,5.02,5.25,5.83,7.20,8.68,10.02 -16,4.81,5.19,5.40,6.03,7.57,9.14,10.59 -17,4.90,5.36,5.56,6.29,7.95,9.61,11.16 -18,4.99,5.55,5.76,6.60,8.33,10.07,11.72 -19,5.09,5.73,5.97,6.91,8.71,10.54,12.29 -20,5.21,5.92,6.18,7.22,9.09,10.95,12.86 -21,5.33,6.10,6.39,7.53,9.47,11.36,13.42 -22,5.46,6.29,6.61,7.84,9.86,11.77,13.99 -23,5.60,6.47,6.83,8.09,10.24,12.24,14.56 -24,5.73,6.65,7.04,8.35,10.62,12.70,15.12 -25,5.87,6.81,7.26,8.61,11.00,13.17,15.69 -26,6.00,6.97,7.47,8.87,11.38,13.58,16.21 -27,6.13,7.12,7.70,9.13,11.76,13.99,16.72 -28,6.27,7.28,7.93,9.40,12.15,14.40,17.29 -29,6.40,7.44,8.16,9.68,12.53,14.87,17.86 -30,6.54,7.62,8.37,9.96,12.91,15.33,18.42 -31,6.67,7.79,8.60,10.24,13.29,15.79,18.99 -32,6.80,7.97,8.83,10.53,13.67,16.26,19.56 -33,6.94,8.14,9.04,10.82,14.04,16.72,20.13 -34,7.06,8.32,9.27,11.10,14.41,17.19,20.68 -35,7.19,8.50,9.49,11.39,14.78,17.65,21.24 -36,7.31,8.67,9.70,11.67,15.15,18.11,21.79 -37,7.43,8.85,9.93,11.95,15.51,18.58,22.33 -38,7.56,9.02,10.16,12.23,15.86,19.04,22.87 -39,7.67,9.20,10.37,12.51,16.20,19.51,23.40 -40,7.78,9.37,10.59,12.78,16.53,19.97,23.93 -41,7.90,9.55,10.80,13.06,16.86,20.43,24.46 -42,8.01,9.72,11.02,13.34,17.19,20.90,24.97 -43,8.12,9.90,11.23,13.62,17.51,21.36,25.49 -44,8.23,10.07,11.43,13.90,17.82,21.83,26.00 -45,8.32,10.25,11.63,14.18,18.11,22.24,26.52 -46,8.40,10.41,11.83,14.45,18.40,22.65,27.03 -47,8.49,10.57,12.01,14.72,18.68,23.06,27.55 -48,8.57,10.71,12.20,14.98,18.95,23.48,28.01 -49,8.65,10.85,12.37,15.23,19.21,23.89,28.42 -50,8.73,10.97,12.55,15.47,19.45,24.25,28.79 -51,8.82,11.08,12.71,15.69,19.69,24.61,29.15 -52,8.90,11.19,12.88,15.90,19.93,24.92,29.51 -53,8.98,11.29,13.03,16.10,20.17,25.18,29.82 -54,9.06,11.39,13.19,16.31,20.40,25.38,30.07 -55,9.14,11.50,13.33,16.52,20.64,25.54,30.33 -56,9.23,11.60,13.48,16.72,20.88,25.69,30.54 -57,9.31,11.70,13.61,16.93,21.10,25.85,30.74 -58,9.39,11.80,13.74,17.08,21.32,26.00,30.95 -59,9.47,11.91,13.87,17.24,21.53,26.16,31.16 -60,9.56,12.00,13.99,17.39,21.72,26.31,31.36 -61,9.64,12.09,14.10,17.50,21.91,26.47,31.57 -62,9.72,12.19,14.22,17.60,22.08,26.62,31.78 -63,9.80,12.28,14.33,17.70,22.25,26.78,31.98 -64,9.89,12.37,14.43,17.81,22.40,26.93,32.19 -65,9.97,12.46,14.54,17.91,22.55,27.08,32.39 -66,10.05,12.56,14.63,18.02,22.68,27.24,32.60 -67,10.12,12.65,14.72,18.15,22.81,27.39,32.81 -68,10.20,12.74,14.82,18.28,22.92,27.55,33.01 -69,10.27,12.84,14.91,18.42,23.02,27.70,33.22 -70,10.33,12.93,15.00,18.58,23.13,27.86,33.43 -71,14.87,16.74,18.61,20.64,24.93,29.15,34.46 -72,18.78,20.56,22.22,23.22,26.73,30.69,35.49 -73,22.08,23.75,25.31,25.80,28.54,32.24,36.26 -74,24.35,26.13,27.63,28.37,30.34,33.53,37.03 -75,25.59,27.36,29.18,29.92,31.89,34.56,37.55 -76,26.83,28.39,29.95,30.95,33.18,35.33,38.06 -77,27.86,29.32,30.62,31.72,34.21,35.85,38.48 -78,28.79,30.20,31.24,32.50,34.98,36.31,38.89 -79,29.51,31.07,31.81,33.01,35.50,36.78,39.30 -80,30.13,31.95,32.32,33.43,35.91,37.19,39.71 -81,30.69,32.41,32.79,33.84,36.32,37.60,40.13 -82,31.21,32.87,33.24,34.25,36.73,38.01,40.54 -83,31.67,33.31,33.68,34.66,37.15,38.43,40.95 -84,32.08,33.74,34.12,35.07,37.56,38.84,41.36 -85,32.50,34.17,34.54,35.49,37.97,39.25,41.78 -86,32.91,34.58,34.95,35.90,38.38,39.66,42.19 -87,33.32,34.99,35.37,36.31,38.80,40.07,42.60 -88,33.73,35.40,35.80,36.72,39.21,40.49,43.01 -89,34.15,35.82,36.23,37.14,39.62,40.90,43.43 -90,34.56,36.23,36.65,37.55,40.03,41.31,43.84 -91,34.97,36.64,37.06,37.96,40.45,41.72,44.25 -92,35.38,37.05,37.47,38.37,40.86,42.14,44.66 -93,35.80,37.47,37.86,38.79,41.27,42.55,45.08 -94,36.21,37.88,38.23,39.20,41.68,42.96,45.49 -95,36.62,38.29,38.60,39.61,42.10,43.37,45.90 -96,37.02,38.65,38.97,40.02,42.51,43.79,46.31 -97,37.43,39.01,39.34,40.44,42.92,44.20,46.72 -98,37.83,39.37,39.71,40.85,43.33,44.61,47.14 -99,38.23,39.73,40.09,41.26,43.75,45.02,47.55 -100,38.63,40.10,40.46,41.67,44.16,45.44,47.96 -101,38.99,40.46,40.83,42.02,44.54,45.84,48.36 -102,39.35,40.82,41.20,42.37,44.92,46.24,48.77 -103,39.71,41.18,41.57,42.72,45.30,46.64,49.17 -104,40.07,41.54,41.94,43.08,45.68,47.04,49.57 -105,40.44,41.90,42.31,43.43,46.07,47.45,49.97 -106,40.80,42.26,42.68,43.78,46.45,47.85,50.37 -107,41.16,42.62,43.05,44.13,46.83,48.25,50.78 -108,41.52,42.98,43.43,44.48,47.21,48.65,51.18 -109,41.88,43.34,43.80,44.83,47.59,49.05,51.58 -110,42.24,43.70,44.17,45.18,47.97,49.46,51.98 -111,42.59,44.06,44.54,45.53,48.35,49.86,52.39 -112,42.94,44.43,44.91,45.88,48.74,50.26,52.79 -113,43.29,44.79,45.28,46.23,49.12,50.66,53.19 -114,43.64,45.15,45.65,46.58,49.50,51.07,53.59 -115,43.99,45.51,46.02,46.93,49.88,51.47,53.99 -116,44.34,45.87,46.40,47.28,50.26,51.87,54.40 -117,44.69,46.23,46.77,47.63,50.64,52.27,54.80 -118,45.04,46.59,47.14,47.98,51.02,52.67,55.20 -119,45.39,46.95,47.51,48.33,51.41,53.08,55.60 -120,45.75,47.31,47.88,48.68,51.79,53.48,56.00 -121,46.10,47.67,48.25,49.03,52.17,53.88,56.41 -122,46.45,48.03,48.62,49.38,52.55,54.28,56.81 -123,46.80,48.40,48.99,49.74,52.93,54.68,57.21 -124,47.15,48.76,49.36,50.09,53.31,55.09,57.61 -125,47.50,49.12,49.74,50.44,53.69,55.49,58.01 -126,47.85,49.48,50.11,50.79,54.08,55.89,58.42 -127,48.20,49.84,50.48,51.14,54.46,56.29,58.82 -128,48.55,50.20,50.85,51.49,54.84,56.69,59.22 -129,48.90,50.56,51.22,51.84,55.22,57.10,59.62 -130,49.25,50.92,51.59,52.19,55.60,57.50,60.02 -131,49.60,51.28,51.96,52.54,55.98,57.90,60.43 -132,49.95,51.64,52.33,52.89,56.36,58.30,60.83 -133,50.30,52.00,52.70,53.24,56.75,58.71,61.23 -134,50.65,52.36,53.08,53.59,57.13,59.11,61.63 -135,51.00,52.73,53.45,53.94,57.51,59.51,62.04 -136,51.35,53.09,53.82,54.29,57.89,59.91,62.44 -137,51.70,53.45,54.19,54.64,58.27,60.31,62.84 -138,52.06,53.81,54.56,54.99,58.65,60.72,63.24 -139,52.41,54.17,54.93,55.34,59.04,61.12,63.64 -140,52.76,54.53,55.30,55.69,59.42,61.52,64.05 -141,53.11,54.89,55.67,56.05,59.80,61.92,64.45 -142,53.46,55.25,56.05,56.40,60.18,62.32,64.85 -143,53.81,55.61,56.42,56.75,60.56,62.73,65.25 -144,54.16,55.97,56.79,57.10,60.94,63.13,65.65 -145,54.51,56.33,57.16,57.45,61.32,63.53,66.06 -146,54.86,56.69,57.53,57.80,61.71,63.93,66.46 -147,55.21,57.06,57.90,58.15,62.09,64.33,66.86 -148,55.56,57.42,58.27,58.50,62.47,64.74,67.26 -149,55.91,57.78,58.64,58.85,62.85,65.14,67.66 -150,56.26,58.14,59.01,59.20,63.23,65.54,68.07 diff --git a/dist/construct/products/GroundComm.csv b/dist/construct/products/GroundComm.csv deleted file mode 100644 index 4fe39dedb..000000000 --- a/dist/construct/products/GroundComm.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,2,3,4,5,6,7,8 -1,3.02,3.12,3.35,3.40,3.59,3.63,3.73 -2,3.08,3.28,3.61,3.71,4.00,4.09,4.35 -3,3.17,3.43,3.81,3.97,4.26,4.40,4.81 -4,3.29,3.58,4.02,4.23,4.52,4.66,5.12 -5,3.42,3.71,4.20,4.43,4.72,4.92,5.43 -6,3.57,3.84,4.35,4.64,4.93,5.18,5.69 -7,3.71,3.96,4.45,4.79,5.13,5.38,5.95 -8,3.85,4.08,4.56,4.90,5.29,5.64,6.36 -9,3.98,4.21,4.66,5.00,5.44,5.95,6.77 -10,4.11,4.32,4.76,5.16,5.65,6.36,7.24 -11,4.25,4.44,4.87,5.31,5.91,6.83,7.75 -12,4.38,4.58,4.97,5.46,6.17,7.29,8.32 -13,4.51,4.72,5.06,5.57,6.47,7.75,8.89 -14,4.62,4.87,5.16,5.67,6.84,8.22,9.45 -15,4.72,5.02,5.25,5.83,7.20,8.68,10.02 -16,4.81,5.19,5.40,6.03,7.57,9.14,10.59 -17,4.90,5.36,5.56,6.29,7.95,9.61,11.16 -18,4.99,5.55,5.76,6.60,8.33,10.07,11.72 -19,5.09,5.73,5.97,6.91,8.71,10.54,12.29 -20,5.21,5.92,6.18,7.22,9.09,10.95,12.86 -21,5.33,6.10,6.39,7.53,9.47,11.36,13.42 -22,5.46,6.29,6.61,7.84,9.86,11.77,13.99 -23,5.60,6.47,6.83,8.09,10.24,12.24,14.56 -24,5.73,6.65,7.04,8.35,10.62,12.70,15.12 -25,5.87,6.81,7.26,8.61,11.00,13.17,15.69 -26,6.00,6.97,7.47,8.87,11.38,13.58,16.21 -27,6.13,7.12,7.70,9.13,11.76,13.99,16.72 -28,6.27,7.28,7.93,9.40,12.15,14.40,17.29 -29,6.40,7.44,8.16,9.68,12.53,14.87,17.86 -30,6.54,7.62,8.37,9.96,12.91,15.33,18.42 -31,6.67,7.79,8.60,10.24,13.29,15.79,18.99 -32,6.80,7.97,8.83,10.53,13.67,16.26,19.56 -33,6.94,8.14,9.04,10.82,14.04,16.72,20.13 -34,7.06,8.32,9.27,11.10,14.41,17.19,20.68 -35,7.19,8.50,9.49,11.39,14.78,17.65,21.24 -36,7.31,8.67,9.70,11.67,15.15,18.11,21.79 -37,7.43,8.85,9.93,11.95,15.51,18.58,22.33 -38,7.56,9.02,10.16,12.23,15.86,19.04,22.87 -39,7.67,9.20,10.37,12.51,16.20,19.51,23.40 -40,7.78,9.37,10.59,12.78,16.53,19.97,23.93 -41,7.90,9.55,10.80,13.06,16.86,20.43,24.46 -42,8.01,9.72,11.02,13.34,17.19,20.90,24.97 -43,8.12,9.90,11.23,13.62,17.51,21.36,25.49 -44,8.23,10.07,11.43,13.90,17.82,21.83,26.00 -45,8.32,10.25,11.63,14.18,18.11,22.24,26.52 -46,8.40,10.41,11.83,14.45,18.40,22.65,27.03 -47,8.49,10.57,12.01,14.72,18.68,23.06,27.55 -48,8.57,10.71,12.20,14.98,18.95,23.48,28.01 -49,8.65,10.85,12.37,15.23,19.21,23.89,28.42 -50,8.73,10.97,12.55,15.47,19.45,24.25,28.79 -51,8.82,11.08,12.71,15.69,19.69,24.61,29.15 -52,8.90,11.19,12.88,15.90,19.93,24.92,29.51 -53,8.98,11.29,13.03,16.10,20.17,25.18,29.82 -54,9.06,11.39,13.19,16.31,20.40,25.38,30.07 -55,9.14,11.50,13.33,16.52,20.64,25.54,30.33 -56,9.23,11.60,13.48,16.72,20.88,25.69,30.54 -57,9.31,11.70,13.61,16.93,21.10,25.85,30.74 -58,9.39,11.80,13.74,17.08,21.32,26.00,30.95 -59,9.47,11.91,13.87,17.24,21.53,26.16,31.16 -60,9.56,12.00,13.99,17.39,21.72,26.31,31.36 -61,9.64,12.09,14.10,17.50,21.91,26.47,31.57 -62,9.72,12.19,14.22,17.60,22.08,26.62,31.78 -63,9.80,12.28,14.33,17.70,22.25,26.78,31.98 -64,9.89,12.37,14.43,17.81,22.40,26.93,32.19 -65,9.97,12.46,14.54,17.91,22.55,27.08,32.39 -66,10.05,12.56,14.63,18.02,22.68,27.24,32.60 -67,10.12,12.65,14.72,18.15,22.81,27.39,32.81 -68,10.20,12.74,14.82,18.28,22.92,27.55,33.01 -69,10.27,12.84,14.91,18.42,23.02,27.70,33.22 -70,10.33,12.93,15.00,18.58,23.13,27.86,33.43 -71,14.87,16.74,18.61,20.64,24.93,29.15,34.46 -72,18.78,20.56,22.22,23.22,26.73,30.69,35.49 -73,22.08,23.75,25.31,25.80,28.54,32.24,36.26 -74,24.35,26.13,27.63,28.37,30.34,33.53,37.03 -75,25.59,27.36,29.18,29.92,31.89,34.56,37.55 -76,26.83,28.39,29.95,30.95,33.18,35.33,38.06 -77,27.86,29.32,30.62,31.72,34.21,35.85,38.48 -78,28.79,30.20,31.24,32.50,34.98,36.31,38.89 -79,29.51,31.07,31.81,33.01,35.50,36.78,39.30 -80,30.13,31.95,32.32,33.43,35.91,37.19,39.71 -81,30.69,32.41,32.79,33.84,36.32,37.60,40.13 -82,31.21,32.87,33.24,34.25,36.73,38.01,40.54 -83,31.67,33.31,33.68,34.66,37.15,38.43,40.95 -84,32.08,33.74,34.12,35.07,37.56,38.84,41.36 -85,32.50,34.17,34.54,35.49,37.97,39.25,41.78 -86,32.91,34.58,34.95,35.90,38.38,39.66,42.19 -87,33.32,34.99,35.37,36.31,38.80,40.07,42.60 -88,33.73,35.40,35.80,36.72,39.21,40.49,43.01 -89,34.15,35.82,36.23,37.14,39.62,40.90,43.43 -90,34.56,36.23,36.65,37.55,40.03,41.31,43.84 -91,34.97,36.64,37.06,37.96,40.45,41.72,44.25 -92,35.38,37.05,37.47,38.37,40.86,42.14,44.66 -93,35.80,37.47,37.86,38.79,41.27,42.55,45.08 -94,36.21,37.88,38.23,39.20,41.68,42.96,45.49 -95,36.62,38.29,38.60,39.61,42.10,43.37,45.90 -96,37.02,38.65,38.97,40.02,42.51,43.79,46.31 -97,37.43,39.01,39.34,40.44,42.92,44.20,46.72 -98,37.83,39.37,39.71,40.85,43.33,44.61,47.14 -99,38.23,39.73,40.09,41.26,43.75,45.02,47.55 -100,38.63,40.10,40.46,41.67,44.16,45.44,47.96 -101,38.99,40.46,40.83,42.02,44.54,45.84,48.36 -102,39.35,40.82,41.20,42.37,44.92,46.24,48.77 -103,39.71,41.18,41.57,42.72,45.30,46.64,49.17 -104,40.07,41.54,41.94,43.08,45.68,47.04,49.57 -105,40.44,41.90,42.31,43.43,46.07,47.45,49.97 -106,40.80,42.26,42.68,43.78,46.45,47.85,50.37 -107,41.16,42.62,43.05,44.13,46.83,48.25,50.78 -108,41.52,42.98,43.43,44.48,47.21,48.65,51.18 -109,41.88,43.34,43.80,44.83,47.59,49.05,51.58 -110,42.24,43.70,44.17,45.18,47.97,49.46,51.98 -111,42.59,44.06,44.54,45.53,48.35,49.86,52.39 -112,42.94,44.43,44.91,45.88,48.74,50.26,52.79 -113,43.29,44.79,45.28,46.23,49.12,50.66,53.19 -114,43.64,45.15,45.65,46.58,49.50,51.07,53.59 -115,43.99,45.51,46.02,46.93,49.88,51.47,53.99 -116,44.34,45.87,46.40,47.28,50.26,51.87,54.40 -117,44.69,46.23,46.77,47.63,50.64,52.27,54.80 -118,45.04,46.59,47.14,47.98,51.02,52.67,55.20 -119,45.39,46.95,47.51,48.33,51.41,53.08,55.60 -120,45.75,47.31,47.88,48.68,51.79,53.48,56.00 -121,46.10,47.67,48.25,49.03,52.17,53.88,56.41 -122,46.45,48.03,48.62,49.38,52.55,54.28,56.81 -123,46.80,48.40,48.99,49.74,52.93,54.68,57.21 -124,47.15,48.76,49.36,50.09,53.31,55.09,57.61 -125,47.50,49.12,49.74,50.44,53.69,55.49,58.01 -126,47.85,49.48,50.11,50.79,54.08,55.89,58.42 -127,48.20,49.84,50.48,51.14,54.46,56.29,58.82 -128,48.55,50.20,50.85,51.49,54.84,56.69,59.22 -129,48.90,50.56,51.22,51.84,55.22,57.10,59.62 -130,49.25,50.92,51.59,52.19,55.60,57.50,60.02 -131,49.60,51.28,51.96,52.54,55.98,57.90,60.43 -132,49.95,51.64,52.33,52.89,56.36,58.30,60.83 -133,50.30,52.00,52.70,53.24,56.75,58.71,61.23 -134,50.65,52.36,53.08,53.59,57.13,59.11,61.63 -135,51.00,52.73,53.45,53.94,57.51,59.51,62.04 -136,51.35,53.09,53.82,54.29,57.89,59.91,62.44 -137,51.70,53.45,54.19,54.64,58.27,60.31,62.84 -138,52.06,53.81,54.56,54.99,58.65,60.72,63.24 -139,52.41,54.17,54.93,55.34,59.04,61.12,63.64 -140,52.76,54.53,55.30,55.69,59.42,61.52,64.05 -141,53.11,54.89,55.67,56.05,59.80,61.92,64.45 -142,53.46,55.25,56.05,56.40,60.18,62.32,64.85 -143,53.81,55.61,56.42,56.75,60.56,62.73,65.25 -144,54.16,55.97,56.79,57.10,60.94,63.13,65.65 -145,54.51,56.33,57.16,57.45,61.32,63.53,66.06 -146,54.86,56.69,57.53,57.80,61.71,63.93,66.46 -147,55.21,57.06,57.90,58.15,62.09,64.33,66.86 -148,55.56,57.42,58.27,58.50,62.47,64.74,67.26 -149,55.91,57.78,58.64,58.85,62.85,65.14,67.66 -150,56.26,58.14,59.01,59.20,63.23,65.54,68.07 diff --git a/dist/construct/products/GroundRes.csv b/dist/construct/products/GroundRes.csv deleted file mode 100644 index fc4b1bd57..000000000 --- a/dist/construct/products/GroundRes.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,2,3,4,5,6,7,8 -1,4.02,4.12,4.35,4.40,4.59,4.63,4.73 -2,4.08,4.28,4.61,4.71,5.00,5.09,5.35 -3,4.17,4.43,4.81,4.97,5.26,5.40,5.81 -4,4.29,4.58,5.02,5.23,5.52,5.66,6.12 -5,4.42,4.71,5.20,5.43,5.72,5.92,6.43 -6,4.57,4.84,5.35,5.64,5.93,6.18,6.69 -7,4.71,4.96,5.45,5.79,6.13,6.38,6.95 -8,4.85,5.08,5.56,5.90,6.29,6.64,7.36 -9,4.98,5.21,5.66,6.00,6.44,6.95,7.77 -10,5.11,5.32,5.76,6.16,6.65,7.36,8.24 -11,5.25,5.44,5.87,6.31,6.91,7.83,8.75 -12,5.38,5.58,5.97,6.46,7.17,8.29,9.32 -13,5.51,5.72,6.06,6.57,7.47,8.75,9.89 -14,5.62,5.87,6.16,6.67,7.84,9.22,10.45 -15,5.72,6.02,6.25,6.83,8.20,9.68,11.02 -16,5.81,6.19,6.40,7.03,8.57,10.14,11.59 -17,5.90,6.36,6.56,7.29,8.95,10.61,12.16 -18,5.99,6.55,6.76,7.60,9.33,11.07,12.72 -19,6.09,6.73,6.97,7.91,9.71,11.54,13.29 -20,6.21,6.92,7.18,8.22,10.09,11.95,13.86 -21,6.33,7.10,7.39,8.53,10.47,12.36,14.42 -22,6.46,7.29,7.61,8.84,10.86,12.77,14.99 -23,6.60,7.47,7.83,9.09,11.24,13.24,15.56 -24,6.73,7.65,8.04,9.35,11.62,13.70,16.12 -25,6.87,7.81,8.26,9.61,12.00,14.17,16.69 -26,7.00,7.97,8.47,9.87,12.38,14.58,17.21 -27,7.13,8.12,8.70,10.13,12.76,14.99,17.72 -28,7.27,8.28,8.93,10.40,13.15,15.40,18.29 -29,7.40,8.44,9.16,10.68,13.53,15.87,18.86 -30,7.54,8.62,9.37,10.96,13.91,16.33,19.42 -31,7.67,8.79,9.60,11.24,14.29,16.79,19.99 -32,7.80,8.97,9.83,11.53,14.67,17.26,20.56 -33,7.94,9.14,10.04,11.82,15.04,17.72,21.13 -34,8.06,9.32,10.27,12.10,15.41,18.19,21.68 -35,8.19,9.50,10.49,12.39,15.78,18.65,22.24 -36,8.31,9.67,10.70,12.67,16.15,19.11,22.79 -37,8.43,9.85,10.93,12.95,16.51,19.58,23.33 -38,8.56,10.02,11.16,13.23,16.86,20.04,23.87 -39,8.67,10.20,11.37,13.51,17.20,20.51,24.40 -40,8.78,10.37,11.59,13.78,17.53,20.97,24.93 -41,8.90,10.55,11.80,14.06,17.86,21.43,25.46 -42,9.01,10.72,12.02,14.34,18.19,21.90,25.97 -43,9.12,10.90,12.23,14.62,18.51,22.36,26.49 -44,9.23,11.07,12.43,14.90,18.82,22.83,27.00 -45,9.32,11.25,12.63,15.18,19.11,23.24,27.52 -46,9.40,11.41,12.83,15.45,19.40,23.65,28.03 -47,9.49,11.57,13.01,15.72,19.68,24.06,28.55 -48,9.57,11.71,13.20,15.98,19.95,24.48,29.01 -49,9.65,11.85,13.37,16.23,20.21,24.89,29.42 -50,9.73,11.97,13.55,16.47,20.45,25.25,29.79 -51,9.82,12.08,13.71,16.69,20.69,25.61,30.15 -52,9.90,12.19,13.88,16.90,20.93,25.92,30.51 -53,9.98,12.29,14.03,17.10,21.17,26.18,30.82 -54,10.06,12.39,14.19,17.31,21.40,26.38,31.07 -55,10.14,12.50,14.33,17.52,21.64,26.54,31.33 -56,10.23,12.60,14.48,17.72,21.88,26.69,31.54 -57,10.31,12.70,14.61,17.93,22.10,26.85,31.74 -58,10.39,12.80,14.74,18.08,22.32,27.00,31.95 -59,10.47,12.91,14.87,18.24,22.53,27.16,32.16 -60,10.56,13.00,14.99,18.39,22.72,27.31,32.36 -61,10.64,13.09,15.10,18.50,22.91,27.47,32.57 -62,10.72,13.19,15.22,18.60,23.08,27.62,32.78 -63,10.80,13.28,15.33,18.70,23.25,27.78,32.98 -64,10.89,13.37,15.43,18.81,23.40,27.93,33.19 -65,10.97,13.46,15.54,18.91,23.55,28.08,33.39 -66,11.05,13.56,15.63,19.02,23.68,28.24,33.60 -67,11.12,13.65,15.72,19.15,23.81,28.39,33.81 -68,11.20,13.74,15.82,19.28,23.92,28.55,34.01 -69,11.27,13.84,15.91,19.42,24.02,28.70,34.22 -70,11.33,13.93,16.00,19.58,24.13,28.86,34.43 -71,15.87,17.74,19.61,21.64,25.93,30.15,35.46 -72,19.78,21.56,23.22,24.22,27.73,31.69,36.49 -73,23.08,24.75,26.31,26.80,29.54,33.24,37.26 -74,25.35,27.13,28.63,29.37,31.34,34.53,38.03 -75,26.59,28.36,30.18,30.92,32.89,35.56,38.55 -76,27.83,29.39,30.95,31.95,34.18,36.33,39.06 -77,28.86,30.32,31.62,32.72,35.21,36.85,39.48 -78,29.79,31.20,32.24,33.50,35.98,37.31,39.89 -79,30.51,32.07,32.81,34.01,36.50,37.78,40.30 -80,31.13,32.95,33.32,34.43,36.91,38.19,40.71 -81,31.69,33.41,33.79,34.84,37.32,38.60,41.13 -82,32.21,33.87,34.24,35.25,37.73,39.01,41.54 -83,32.67,34.31,34.68,35.66,38.15,39.43,41.95 -84,33.08,34.74,35.12,36.07,38.56,39.84,42.36 -85,33.50,35.17,35.54,36.49,38.97,40.25,42.78 -86,33.91,35.58,35.95,36.90,39.38,40.66,43.19 -87,34.32,35.99,36.37,37.31,39.80,41.07,43.60 -88,34.73,36.40,36.80,37.72,40.21,41.49,44.01 -89,35.15,36.82,37.23,38.14,40.62,41.90,44.43 -90,35.56,37.23,37.65,38.55,41.03,42.31,44.84 -91,35.97,37.64,38.06,38.96,41.45,42.72,45.25 -92,36.38,38.05,38.47,39.37,41.86,43.14,45.66 -93,36.80,38.47,38.86,39.79,42.27,43.55,46.08 -94,37.21,38.88,39.23,40.20,42.68,43.96,46.49 -95,37.62,39.29,39.60,40.61,43.10,44.37,46.90 -96,38.02,39.65,39.97,41.02,43.51,44.79,47.31 -97,38.43,40.01,40.34,41.44,43.92,45.20,47.72 -98,38.83,40.37,40.71,41.85,44.33,45.61,48.14 -99,39.23,40.73,41.09,42.26,44.75,46.02,48.55 -100,39.63,41.10,41.46,42.67,45.16,46.44,48.96 -101,39.99,41.46,41.83,43.02,45.54,46.84,49.36 -102,40.35,41.82,42.20,43.37,45.92,47.24,49.77 -103,40.71,42.18,42.57,43.72,46.30,47.64,50.17 -104,41.07,42.54,42.94,44.08,46.68,48.04,50.57 -105,41.44,42.90,43.31,44.43,47.07,48.45,50.97 -106,41.80,43.26,43.68,44.78,47.45,48.85,51.37 -107,42.16,43.62,44.05,45.13,47.83,49.25,51.78 -108,42.52,43.98,44.43,45.48,48.21,49.65,52.18 -109,42.88,44.34,44.80,45.83,48.59,50.05,52.58 -110,43.24,44.70,45.17,46.18,48.97,50.46,52.98 -111,43.59,45.06,45.54,46.53,49.35,50.86,53.39 -112,43.94,45.43,45.91,46.88,49.74,51.26,53.79 -113,44.29,45.79,46.28,47.23,50.12,51.66,54.19 -114,44.64,46.15,46.65,47.58,50.50,52.07,54.59 -115,44.99,46.51,47.02,47.93,50.88,52.47,54.99 -116,45.34,46.87,47.40,48.28,51.26,52.87,55.40 -117,45.69,47.23,47.77,48.63,51.64,53.27,55.80 -118,46.04,47.59,48.14,48.98,52.02,53.67,56.20 -119,46.39,47.95,48.51,49.33,52.41,54.08,56.60 -120,46.75,48.31,48.88,49.68,52.79,54.48,57.00 -121,47.10,48.67,49.25,50.03,53.17,54.88,57.41 -122,47.45,49.03,49.62,50.38,53.55,55.28,57.81 -123,47.80,49.40,49.99,50.74,53.93,55.68,58.21 -124,48.15,49.76,50.36,51.09,54.31,56.09,58.61 -125,48.50,50.12,50.74,51.44,54.69,56.49,59.01 -126,48.85,50.48,51.11,51.79,55.08,56.89,59.42 -127,49.20,50.84,51.48,52.14,55.46,57.29,59.82 -128,49.55,51.20,51.85,52.49,55.84,57.69,60.22 -129,49.90,51.56,52.22,52.84,56.22,58.10,60.62 -130,50.25,51.92,52.59,53.19,56.60,58.50,61.02 -131,50.60,52.28,52.96,53.54,56.98,58.90,61.43 -132,50.95,52.64,53.33,53.89,57.36,59.30,61.83 -133,51.30,53.00,53.70,54.24,57.75,59.71,62.23 -134,51.65,53.36,54.08,54.59,58.13,60.11,62.63 -135,52.00,53.73,54.45,54.94,58.51,60.51,63.04 -136,52.35,54.09,54.82,55.29,58.89,60.91,63.44 -137,52.70,54.45,55.19,55.64,59.27,61.31,63.84 -138,53.06,54.81,55.56,55.99,59.65,61.72,64.24 -139,53.41,55.17,55.93,56.34,60.04,62.12,64.64 -140,53.76,55.53,56.30,56.69,60.42,62.52,65.05 -141,54.11,55.89,56.67,57.05,60.80,62.92,65.45 -142,54.46,56.25,57.05,57.40,61.18,63.32,65.85 -143,54.81,56.61,57.42,57.75,61.56,63.73,66.25 -144,55.16,56.97,57.79,58.10,61.94,64.13,66.65 -145,55.51,57.33,58.16,58.45,62.32,64.53,67.06 -146,55.86,57.69,58.53,58.80,62.71,64.93,67.46 -147,56.21,58.06,58.90,59.15,63.09,65.33,67.86 -148,56.56,58.42,59.27,59.50,63.47,65.74,68.26 -149,56.91,58.78,59.64,59.85,63.85,66.14,68.66 -150,57.26,59.14,60.01,60.20,64.23,66.54,69.07 diff --git a/dist/construct/products/NextDayAir.csv b/dist/construct/products/NextDayAir.csv deleted file mode 100644 index 1d18c90e9..000000000 --- a/dist/construct/products/NextDayAir.csv +++ /dev/null @@ -1,152 +0,0 @@ -Exceed,102,103,104,105,106,107,108,124,125,126 -Letter,12.00,13.00,13.75,14.00,14.25,14.50,15.00,15.25,15.25,21.25 -1,14.25,16.00,19.00,20.25,21.50,22.25,22.75,24.25,24.25,35.25 -2,15.25,17.00,21.25,22.50,23.75,24.75,25.25,26.75,26.75,37.75 -3,16.25,18.00,23.50,25.00,26.25,27.25,28.00,29.50,29.50,40.50 -4,17.25,19.25,25.50,27.25,28.75,29.75,30.50,32.00,32.00,43.00 -5,18.25,20.25,27.75,29.75,31.25,32.25,33.00,34.50,34.50,45.50 -6,19.00,21.50,30.00,32.00,33.75,34.75,35.50,36.75,36.75,47.75 -7,19.75,22.50,32.00,34.25,36.25,37.25,38.00,39.00,39.00,50.00 -8,20.50,23.50,34.00,36.50,38.75,39.75,40.50,41.25,41.25,52.25 -9,21.25,24.50,36.25,38.75,41.00,42.25,43.00,43.75,43.75,54.75 -10,22.00,25.50,38.50,41.00,43.50,44.75,45.25,46.00,46.00,57.00 -11,22.75,26.75,40.50,43.25,45.75,47.25,47.75,48.25,48.25,59.25 -12,23.75,27.75,42.50,45.25,48.00,49.50,50.25,50.75,50.75,61.75 -13,24.50,29.00,44.50,47.50,50.25,51.75,52.75,53.25,53.25,64.25 -14,25.25,30.00,46.50,49.50,52.25,53.75,55.00,55.50,55.50,66.50 -15,26.00,31.00,48.25,51.25,54.25,55.75,57.25,57.50,57.50,68.50 -16,26.75,32.00,49.75,53.00,56.00,57.50,59.25,59.50,59.50,70.50 -17,27.50,33.00,51.25,54.75,57.50,59.25,61.00,61.25,61.25,72.25 -18,28.25,33.75,52.75,56.25,59.00,60.75,62.75,63.00,63.00,74.00 -19,29.00,34.50,54.25,57.75,60.50,62.25,64.50,64.75,64.75,75.75 -20,29.75,35.25,55.75,59.25,62.00,63.75,66.25,66.50,66.50,77.50 -21,30.50,36.00,57.25,60.75,63.50,65.50,68.00,68.25,68.25,79.25 -22,31.25,36.75,58.75,62.25,65.00,67.00,69.50,69.75,69.75,80.75 -23,32.00,37.50,60.25,63.75,66.50,68.50,71.00,71.25,71.25,82.25 -24,32.75,38.50,61.75,65.25,68.00,69.75,72.50,72.75,72.75,83.75 -25,33.50,39.50,63.25,67.00,69.75,71.25,73.75,74.00,74.00,85.00 -26,34.50,40.25,64.75,68.75,71.50,72.75,75.25,75.50,75.50,86.50 -27,35.25,41.00,66.50,70.50,73.00,74.25,76.75,77.00,77.00,88.00 -28,36.00,41.75,68.25,72.25,74.75,75.75,78.50,78.75,78.75,89.75 -29,36.75,42.50,69.75,73.75,76.25,77.25,80.25,80.50,80.50,91.50 -30,37.50,43.25,71.25,75.50,77.75,79.00,82.00,82.25,82.25,93.25 -31,38.50,44.25,73.00,77.25,79.25,80.75,83.75,84.00,84.00,95.00 -32,39.25,45.25,74.75,79.00,81.00,82.75,85.75,86.00,86.00,97.00 -33,40.25,46.25,76.50,80.75,82.75,84.50,87.50,87.75,87.75,98.75 -34,41.00,47.25,78.00,82.50,84.50,86.25,89.50,89.75,89.75,100.75 -35,41.75,48.25,79.75,84.50,86.50,88.25,91.50,91.75,91.75,102.75 -36,42.50,49.00,81.25,86.25,88.25,90.00,93.25,93.50,93.50,104.50 -37,43.25,49.75,82.75,88.00,90.00,92.00,95.25,95.50,95.50,106.50 -38,44.00,50.50,84.25,89.75,91.75,93.75,97.25,97.50,97.50,108.50 -39,44.75,51.50,85.75,91.50,93.50,95.75,99.25,99.50,99.50,110.50 -40,45.50,52.50,87.50,93.25,95.25,97.75,101.25,101.50,101.50,112.50 -41,46.25,53.25,89.25,95.00,97.25,99.75,103.25,103.50,103.50,114.50 -42,47.00,54.25,91.00,96.75,99.00,101.75,105.25,105.50,105.50,116.50 -43,47.75,55.25,92.50,98.50,101.00,103.75,107.25,107.50,107.50,118.50 -44,48.75,56.25,94.25,100.00,102.75,105.50,109.00,109.25,109.25,120.25 -45,49.75,57.25,96.00,101.75,104.50,107.25,110.75,111.00,111.00,122.00 -46,50.75,58.25,97.50,103.25,106.50,109.00,112.75,113.00,113.00,124.00 -47,51.50,59.25,99.00,104.75,108.25,110.75,114.75,115.00,115.00,126.00 -48,52.25,60.25,100.75,106.25,110.00,112.50,116.50,116.75,116.75,127.75 -49,53.00,61.50,102.50,108.00,111.75,114.25,118.25,118.50,118.50,129.50 -50,54.00,62.75,104.00,109.50,113.75,116.25,120.25,120.50,120.50,131.50 -51,55.00,64.00,105.50,111.00,115.75,118.25,122.25,122.50,122.50,133.50 -52,56.00,65.50,107.25,112.50,117.50,120.25,124.50,124.75,124.75,135.75 -53,57.00,66.75,108.75,114.00,119.50,122.25,126.50,126.75,126.75,137.75 -54,58.00,68.00,110.50,115.75,121.50,124.50,128.75,129.00,129.00,140.00 -55,59.00,69.50,112.00,117.50,123.50,126.75,131.00,131.25,131.25,142.25 -56,60.00,70.75,113.50,119.25,125.50,128.75,133.25,133.50,133.50,144.50 -57,61.00,72.25,115.25,121.00,127.25,131.00,135.50,135.75,135.75,146.75 -58,62.25,73.50,117.00,123.00,129.25,133.00,137.75,138.00,138.00,149.00 -59,63.25,75.00,119.00,124.75,131.25,135.25,140.25,140.50,140.50,151.50 -60,64.50,76.50,121.00,126.75,133.25,137.50,143.00,143.25,143.25,154.25 -61,65.75,78.00,122.75,129.00,135.50,140.00,145.50,145.75,145.75,156.75 -62,67.00,79.50,124.50,131.00,137.50,142.25,148.00,148.25,148.25,159.25 -63,68.25,81.00,126.25,133.00,139.75,144.75,150.75,151.00,151.00,162.00 -64,69.50,82.75,128.00,135.25,142.00,147.00,153.25,153.50,153.50,164.50 -65,70.75,84.50,130.00,137.75,144.50,149.50,156.00,156.25,156.25,167.25 -66,72.00,86.00,132.00,140.00,146.75,151.75,158.50,158.75,158.75,169.75 -67,73.25,87.50,134.00,142.25,149.25,154.25,161.00,161.25,161.25,172.25 -68,74.50,89.25,136.00,144.50,151.50,157.00,163.75,164.00,164.00,175.00 -69,76.00,91.00,138.00,146.50,153.75,159.50,166.25,166.50,166.50,177.50 -70,77.50,92.50,140.00,148.75,156.00,162.25,169.00,169.25,169.25,180.25 -71,78.75,94.00,142.25,151.00,158.25,164.75,171.50,171.75,171.75,182.75 -72,80.00,95.50,144.25,153.50,160.75,167.50,174.25,174.50,174.50,185.50 -73,81.25,97.00,146.50,155.75,163.00,170.25,177.00,177.25,177.25,188.25 -74,82.75,98.75,148.75,158.00,165.50,173.00,179.75,180.00,180.00,191.00 -75,84.00,100.50,151.25,160.25,168.00,175.75,182.50,182.75,182.75,193.75 -76,85.50,102.25,153.50,162.50,170.25,178.25,185.00,185.25,185.25,196.25 -77,87.00,104.00,155.75,164.75,172.50,180.50,187.50,187.75,187.75,198.75 -78,88.50,106.00,158.00,167.00,175.00,183.00,190.00,190.25,190.25,201.25 -79,90.00,107.75,160.50,169.25,177.50,185.50,192.50,192.75,192.75,203.75 -80,91.25,109.50,163.00,171.50,180.00,188.00,195.25,195.50,195.50,206.50 -81,92.75,111.25,165.50,173.75,182.50,190.50,197.75,198.00,198.00,209.00 -82,94.25,113.00,168.00,176.00,184.75,193.00,200.25,200.50,200.50,211.50 -83,95.75,114.75,170.25,178.25,187.25,195.50,202.75,203.00,203.00,214.00 -84,97.00,116.50,172.50,180.50,189.50,197.75,205.25,205.50,205.50,216.50 -85,98.25,118.50,174.75,182.75,192.00,200.25,207.75,208.00,208.00,219.00 -86,99.50,120.50,177.25,185.00,194.25,202.50,210.25,210.50,210.50,221.50 -87,100.75,122.50,179.50,187.25,196.50,205.00,212.75,213.00,213.00,224.00 -88,102.00,124.25,181.75,189.50,199.00,207.50,215.25,215.50,215.50,226.50 -89,103.25,126.00,184.00,191.75,201.25,210.00,218.00,218.25,218.25,229.25 -90,104.50,127.75,186.00,194.00,203.75,212.50,220.50,220.75,220.75,231.75 -91,105.75,129.50,188.00,196.25,206.00,214.75,223.00,223.25,223.25,234.25 -92,107.25,131.25,190.25,198.50,208.50,217.25,225.50,225.75,225.75,236.75 -93,108.50,133.00,192.25,200.50,211.00,219.75,228.00,228.25,228.25,239.25 -94,109.75,134.50,194.50,202.75,213.25,222.25,230.75,231.00,231.00,242.00 -95,111.00,136.00,196.50,204.75,215.75,224.75,233.25,233.50,233.50,244.50 -96,112.25,137.75,198.50,206.75,218.00,227.00,235.75,236.00,236.00,247.00 -97,113.50,139.25,200.50,208.75,220.00,229.25,238.25,238.50,238.50,249.50 -98,114.75,140.75,202.50,210.75,222.00,231.50,240.75,241.00,241.00,252.00 -99,116.00,142.25,204.25,213.00,224.25,233.75,243.00,243.25,243.25,254.25 -100,117.25,143.75,206.00,215.00,226.25,235.75,245.25,245.50,245.50,256.50 -101,118.50,145.25,207.75,217.00,228.50,238.00,247.50,247.75,247.75,258.75 -102,119.75,146.75,209.75,219.00,230.75,240.25,249.75,250.00,250.00,261.00 -103,121.00,148.25,211.75,221.00,233.00,242.75,252.25,252.50,252.50,263.50 -104,122.25,149.75,213.75,223.25,235.25,245.00,254.75,255.00,255.00,266.00 -105,123.50,151.25,215.75,225.50,237.25,247.25,257.25,257.50,257.50,268.50 -106,124.75,152.75,218.00,227.50,239.50,249.50,259.75,260.00,260.00,271.00 -107,126.00,154.25,220.00,229.50,242.00,252.00,262.25,262.50,262.50,273.50 -108,127.25,155.75,222.00,231.50,244.25,254.50,264.75,265.00,265.00,276.00 -109,128.50,157.25,224.00,233.75,246.50,256.75,267.00,267.25,267.25,278.25 -110,129.75,158.75,226.25,236.00,248.75,259.00,269.25,269.50,269.50,280.50 -111,131.00,160.25,228.25,238.25,251.00,261.25,271.50,271.75,271.75,282.75 -112,132.25,161.75,230.25,240.50,253.25,263.75,274.00,274.25,274.25,285.25 -113,133.50,163.25,232.25,242.50,255.50,266.25,276.50,276.75,276.75,287.75 -114,134.75,164.75,234.25,244.50,258.00,268.75,279.00,279.25,279.25,290.25 -115,136.00,166.25,236.25,246.50,260.25,271.00,281.25,281.50,281.50,292.50 -116,137.25,167.75,238.25,248.50,262.50,273.50,283.75,284.00,284.00,295.00 -117,138.50,169.25,240.50,250.75,264.75,275.75,286.00,286.25,286.25,297.25 -118,139.75,170.75,242.50,252.75,267.00,278.00,288.50,288.75,288.75,299.75 -119,141.00,172.25,244.50,255.00,269.25,280.25,290.75,291.00,291.00,302.00 -120,142.25,173.75,246.50,257.00,271.50,282.75,293.25,293.50,293.50,304.50 -121,143.25,175.25,248.50,259.00,273.75,285.00,295.75,296.00,296.00,307.00 -122,144.25,176.75,250.75,261.25,276.25,287.50,298.25,298.50,298.50,309.50 -123,145.50,178.25,252.75,263.50,278.50,289.75,300.75,301.00,301.00,312.00 -124,146.75,179.75,254.75,265.50,280.75,292.00,303.25,303.50,303.50,314.50 -125,148.00,181.25,256.75,267.50,282.75,294.50,305.75,306.00,306.00,317.00 -126,149.25,182.75,258.75,269.50,285.00,296.75,308.25,308.50,308.50,319.50 -127,150.25,184.25,260.75,271.75,287.25,299.00,310.50,310.75,310.75,321.75 -128,151.25,185.75,263.00,274.00,289.50,301.50,313.00,313.25,313.25,324.25 -129,152.25,187.25,265.00,276.25,291.75,304.00,315.50,315.75,315.75,326.75 -130,153.50,188.75,267.00,278.50,294.00,306.25,318.25,318.50,318.50,329.50 -131,154.75,190.25,269.00,280.50,296.25,308.50,320.75,321.00,321.00,332.00 -132,156.00,191.75,271.00,282.75,298.50,310.75,323.25,323.50,323.50,334.50 -133,157.00,193.25,273.25,285.00,300.75,313.00,325.75,326.00,326.00,337.00 -134,158.00,194.75,275.25,287.00,303.00,315.50,328.25,328.50,328.50,339.50 -135,159.00,196.25,277.25,289.00,305.25,317.75,330.75,331.00,331.00,342.00 -136,160.00,197.50,279.25,291.00,307.50,320.00,333.00,333.25,333.25,344.25 -137,161.00,198.75,281.25,293.25,309.75,322.50,335.50,335.75,335.75,346.75 -138,161.75,200.00,283.25,295.25,312.00,325.00,338.00,338.25,338.25,349.25 -139,162.50,201.25,285.25,297.25,314.50,327.50,340.50,340.75,340.75,351.75 -140,163.25,202.50,287.25,299.50,316.75,329.75,342.75,343.00,343.00,354.00 -141,164.00,203.75,289.25,301.75,319.00,332.25,345.25,345.50,345.50,356.50 -142,164.50,204.75,291.25,304.00,321.25,334.50,347.75,348.00,348.00,359.00 -143,165.25,206.00,293.25,306.25,323.50,336.75,350.00,350.25,350.25,361.25 -144,166.00,207.00,295.00,308.50,326.00,339.25,352.50,352.75,352.75,363.75 -145,166.75,208.00,296.50,310.75,328.25,341.50,355.00,355.25,355.25,366.25 -146,167.50,208.75,298.00,313.00,330.75,344.00,357.50,357.75,357.75,368.75 -147,168.25,209.50,299.50,315.00,333.00,346.25,360.00,360.25,360.25,371.25 -148,168.75,210.25,300.75,317.00,335.25,348.50,362.25,362.50,362.50,373.50 -149,169.25,211.00,302.00,319.00,337.50,350.75,364.50,364.75,364.75,375.75 -150,170.00,211.75,303.25,321.00,339.50,353.00,366.75,367.00,367.00,378.00 diff --git a/dist/construct/products/NextDayAirSaver.csv b/dist/construct/products/NextDayAirSaver.csv deleted file mode 100644 index b53df2be7..000000000 --- a/dist/construct/products/NextDayAirSaver.csv +++ /dev/null @@ -1,152 +0,0 @@ -Exceed,132,133,134,135,136,137,138 -Letter,10.50,11.00,12.00,12.25,12.50,12.75,13.00 -1,12.25,13.75,16.75,18.00,18.50,19.25,20.25 -2,13.25,14.75,18.50,19.75,20.50,21.50,22.50 -3,14.00,15.75,20.25,21.75,22.75,23.75,24.75 -4,14.75,16.50,22.25,23.50,24.75,26.00,26.75 -5,15.50,17.50,24.00,25.50,27.00,28.25,29.00 -6,16.25,18.25,26.00,27.75,29.50,30.50,31.25 -7,17.00,19.25,28.00,30.00,31.75,32.75,33.25 -8,17.75,20.00,30.00,32.00,34.00,35.00,35.50 -9,18.25,21.00,32.00,34.00,36.00,37.00,37.50 -10,19.00,22.00,33.75,36.00,38.25,39.25,39.75 -11,19.50,23.00,35.50,37.75,40.25,41.25,41.75 -12,20.25,24.00,37.25,39.75,42.25,43.25,43.75 -13,21.00,24.75,39.00,41.50,44.00,45.00,46.00 -14,21.75,25.75,40.50,43.25,45.75,46.75,48.25 -15,22.50,26.50,42.00,44.75,47.25,48.50,50.25 -16,23.00,27.25,43.25,46.25,48.75,50.00,52.00 -17,23.50,28.25,44.50,47.75,50.25,51.50,53.50 -18,24.25,29.00,45.75,49.00,51.50,52.75,54.75 -19,25.00,29.75,47.25,50.50,53.00,54.25,56.25 -20,25.50,30.25,48.75,52.00,54.25,55.50,57.75 -21,26.25,31.00,50.00,53.25,55.50,57.00,59.25 -22,27.00,31.75,51.25,54.50,56.75,58.25,60.50 -23,27.50,32.50,52.50,55.75,58.00,59.50,61.75 -24,28.25,33.25,54.00,57.25,59.50,61.00,63.25 -25,29.00,34.00,55.25,58.75,61.00,62.50,64.75 -26,29.75,34.75,56.50,60.25,62.50,64.00,66.50 -27,30.25,35.25,58.00,61.75,64.00,65.50,68.00 -28,31.00,36.00,59.50,63.25,65.50,67.00,69.50 -29,31.75,36.75,61.00,64.75,67.00,68.50,71.00 -30,32.25,37.25,62.25,66.00,68.25,69.75,72.25 -31,33.00,38.00,63.75,67.50,69.75,71.25,73.75 -32,33.75,38.75,65.25,69.00,71.25,72.75,75.25 -33,34.50,39.75,66.75,70.50,72.75,74.25,76.75 -34,35.00,40.50,68.25,72.00,74.25,75.75,78.25 -35,35.75,41.25,69.75,73.50,75.75,77.25,79.75 -36,36.50,42.00,71.00,75.00,77.25,78.75,81.50 -37,37.25,42.75,72.50,76.50,78.75,80.25,83.25 -38,38.00,43.50,73.75,78.00,80.50,82.00,85.00 -39,38.50,44.25,75.00,79.75,82.25,83.75,86.75 -40,39.25,45.00,76.50,81.25,84.00,85.50,88.50 -41,39.75,45.75,78.00,82.75,85.50,87.00,90.25 -42,40.50,46.50,79.75,84.50,87.25,88.75,92.00 -43,41.25,47.50,81.25,86.25,89.00,90.50,93.75 -44,42.00,48.50,82.75,87.75,90.50,92.25,95.50 -45,42.75,49.25,84.00,89.00,92.00,93.75,97.00 -46,43.50,50.25,85.50,90.50,93.50,95.25,98.75 -47,44.25,51.25,86.75,91.75,95.00,96.75,100.25 -48,45.00,52.25,88.25,93.25,96.50,98.25,102.00 -49,45.75,53.25,89.75,94.75,98.00,99.75,103.75 -50,46.50,54.25,91.00,96.00,99.50,101.50,105.50 -51,47.25,55.25,92.50,97.50,101.00,103.25,107.25 -52,48.25,56.25,94.00,99.00,102.75,105.00,109.00 -53,49.00,57.25,95.25,100.25,104.50,106.75,110.75 -54,50.00,58.25,96.50,101.50,106.25,108.50,112.75 -55,50.75,59.50,98.00,103.00,108.00,110.50,114.75 -56,51.75,60.75,99.25,104.50,109.50,112.50,116.75 -57,52.50,62.00,100.75,106.00,111.25,114.25,118.50 -58,53.50,63.25,102.25,107.50,113.00,116.25,120.50 -59,54.50,64.75,104.00,109.25,114.75,118.25,122.50 -60,55.50,66.00,105.50,111.00,116.50,120.25,124.75 -61,56.50,67.25,107.00,113.00,118.50,122.50,127.00 -62,57.75,68.50,108.75,114.75,120.25,124.50,129.50 -63,58.75,69.75,110.75,116.75,122.25,126.75,132.00 -64,60.00,71.25,112.50,118.50,124.00,128.75,134.25 -65,61.00,72.75,114.00,120.50,126.00,131.00,136.50 -66,62.00,74.00,115.50,122.50,128.00,133.00,138.75 -67,63.00,75.25,117.25,124.25,130.25,135.25,141.00 -68,64.25,76.75,119.00,126.25,132.25,137.25,143.25 -69,65.50,78.25,120.75,128.00,134.25,139.25,145.50 -70,66.75,79.50,122.50,130.00,136.50,141.50,147.75 -71,67.75,80.75,124.25,131.75,138.50,144.00,150.25 -72,69.00,82.25,126.00,133.75,140.50,146.25,152.50 -73,70.00,83.75,128.00,135.75,142.50,148.50,154.75 -74,71.25,85.25,130.00,137.75,144.75,151.00,157.25 -75,72.50,86.75,132.25,140.00,147.00,153.25,159.50 -76,73.75,88.00,134.25,142.00,149.00,155.50,161.75 -77,75.00,89.50,136.25,144.00,151.00,157.75,164.25 -78,76.25,91.25,138.25,146.00,153.00,160.00,166.50 -79,77.25,92.75,140.25,148.00,155.00,162.00,168.75 -80,78.50,94.25,142.50,150.25,157.25,164.25,171.00 -81,79.75,95.75,144.75,152.50,159.50,166.75,173.50 -82,81.00,97.25,147.00,154.75,161.75,169.00,175.75 -83,82.25,98.75,149.00,156.75,163.75,171.00,177.75 -84,83.25,100.25,151.00,158.75,166.00,173.25,180.00 -85,84.50,102.00,153.00,160.75,168.00,175.25,182.00 -86,85.50,103.75,155.25,163.00,170.25,177.50,184.25 -87,86.50,105.25,157.25,165.00,172.25,179.50,186.25 -88,87.50,106.75,159.25,167.00,174.25,181.50,188.50 -89,88.75,108.25,161.00,168.75,176.25,183.50,190.75 -90,89.75,109.75,163.00,170.75,178.50,185.75,193.00 -91,90.75,111.25,164.75,172.50,180.50,188.00,195.25 -92,92.00,112.75,166.50,174.25,182.50,190.00,197.25 -93,93.25,114.25,168.25,176.00,184.50,192.00,199.50 -94,94.25,115.50,170.00,177.75,186.50,194.25,201.75 -95,95.50,116.75,171.75,179.50,188.50,196.50,204.00 -96,96.50,118.25,173.50,181.25,190.25,198.50,206.00 -97,97.50,119.50,175.25,183.00,192.25,200.50,208.25 -98,98.50,121.00,177.00,184.75,194.00,202.25,210.25 -99,99.75,122.25,178.75,186.50,196.00,204.25,212.25 -100,100.75,123.50,180.25,188.25,198.00,206.25,214.50 -101,101.75,125.00,181.75,189.75,200.00,208.25,216.50 -102,103.00,126.25,183.50,191.50,201.75,210.25,218.50 -103,104.00,127.50,185.25,193.25,203.75,212.25,220.75 -104,105.00,128.75,187.00,195.00,205.50,214.25,223.00 -105,106.25,130.00,188.75,197.00,207.50,216.25,225.00 -106,107.25,131.50,190.50,198.75,209.50,218.25,227.00 -107,108.25,132.75,192.25,200.50,211.75,220.50,229.25 -108,109.25,134.00,194.00,202.25,213.75,222.75,231.50 -109,110.50,135.25,195.75,204.25,215.75,224.75,233.50 -110,111.50,136.50,197.75,206.25,217.75,226.75,235.50 -111,112.50,137.75,199.50,208.25,220.00,229.00,237.75 -112,113.75,139.25,201.25,210.25,222.00,231.00,239.75 -113,114.75,140.50,203.00,212.00,223.75,233.00,242.00 -114,115.75,141.75,204.75,213.75,225.50,235.00,244.25 -115,117.00,143.25,206.50,215.50,227.50,237.00,246.25 -116,118.25,144.50,208.25,217.50,229.50,239.00,248.25 -117,119.25,145.75,210.25,219.50,231.50,241.00,250.25 -118,120.25,147.00,212.00,221.25,233.50,243.00,252.50 -119,121.25,148.25,213.75,223.00,235.50,245.00,254.50 -120,122.25,149.50,215.75,225.00,237.50,247.25,256.75 -121,123.25,150.75,217.50,226.75,239.50,249.25,258.75 -122,124.25,151.75,219.50,228.75,241.75,251.50,261.00 -123,125.25,153.00,221.25,230.50,243.75,253.50,263.25 -124,126.25,154.25,223.00,232.25,245.75,255.50,265.50 -125,127.25,155.50,224.75,234.00,247.50,257.50,267.50 -126,128.25,156.75,226.50,235.75,249.50,259.50,269.75 -127,129.25,158.00,228.25,237.50,251.50,261.50,271.75 -128,130.00,159.50,230.00,239.50,253.50,263.75,274.00 -129,131.00,161.00,231.75,241.75,255.75,266.00,276.25 -130,132.00,162.50,233.50,243.75,257.75,268.00,278.25 -131,133.00,163.75,235.25,245.50,259.50,270.00,280.50 -132,134.00,165.00,237.00,247.25,261.25,272.00,282.75 -133,135.00,166.50,239.00,249.25,263.25,274.00,285.00 -134,136.00,167.75,240.75,251.00,265.25,276.00,287.00 -135,136.75,169.00,242.50,252.75,267.25,278.00,289.00 -136,137.50,170.00,244.25,254.50,269.25,280.25,291.25 -137,138.25,171.00,246.00,256.25,271.25,282.25,293.50 -138,139.00,171.75,247.75,258.00,273.25,284.50,295.75 -139,139.75,172.75,249.50,260.00,275.25,286.50,297.75 -140,140.50,174.00,251.25,262.00,277.25,288.75,300.00 -141,141.25,175.25,253.00,264.00,279.25,290.75,302.25 -142,141.75,176.25,254.75,265.75,281.25,292.75,304.25 -143,142.25,177.00,256.50,267.75,283.25,294.75,306.50 -144,142.75,177.75,258.00,269.75,285.25,296.75,308.75 -145,143.50,178.75,259.50,271.75,287.50,299.00,311.00 -146,144.00,179.50,260.75,273.75,289.50,301.00,313.00 -147,144.75,180.25,262.00,275.50,291.25,303.00,315.00 -148,145.25,181.00,263.25,277.25,293.25,305.00,317.25 -149,145.75,181.50,264.50,279.00,295.25,307.00,319.25 -150,146.25,182.25,265.75,281.00,297.25,309.00,321.25 diff --git a/dist/construct/products/access.asc b/dist/construct/products/access.asc deleted file mode 100644 index b3023e9fe..000000000 --- a/dist/construct/products/access.asc +++ /dev/null @@ -1,6 +0,0 @@ -username password name last_login super yes_tables no_tables upload acl export edit pages files config reconfig groups meta no_functions yes_functions table_control -__MVC_SUPERUSER__ __MVC_CRYPTPW__ Super User 1 -test sSPI6dOz/ciLg Papa Bear 962090612 0 2ndDayAir=vi Ground=vi NextDayAir=vix affiliate=vix area=vix country=vix inventory=vix locale=veix orderline=veix pricing=veix products=veix shipping=veix transactions=veix userdb=ex variable=ex mv_metadata access inventory pricing products cat pricing products inventory orderline pricing products ind* news* about* privacy* error.log etc/* 0 1 :orders products item=lvecd group=lv group=lv order=lvecau dbdownload laydownload orderstats userdb=lvep {'pricing' => {'no_fields' => "price_group",},'products' => {'no_keys' => "00-342",'no_fields' => "weight nontaxable",'yes_keys' => "00-0011 00-0011a 00-342 00-343 00-404",'yes_fields' => "sku artist title description comment price",},} -shipping ceJq5Qwc3ApHQ Shipping User 962075741 0 orderline transactions orderline transactions NONE etc/tracking.asc orders/* 0 0 :orders orderline transactions order=d access=vl group=vl {'transactions' => {'yes_fields' => "code status",},'orderline' => {'yes_fields' => "code status",},} -:backup Backup -:orders * Order admin 0 orderline transactions userdb userdb transactions orderline orderline transactions userdb order=d diff --git a/dist/construct/products/banner.txt b/dist/construct/products/banner.txt deleted file mode 100644 index b24cf3eac..000000000 --- a/dist/construct/products/banner.txt +++ /dev/null @@ -1,8 +0,0 @@ -code category weight rotate banner -Renaissance Renaissance 1 0 Renaissance banner 1 -Renaissance2 Renaissance 2 0 Renaissance banner 2 -Renaissance3 Renaissance 7 0 Renaissance banner 3 -Americana Americana 1 0 Americana banner 1 -Americana2 Americana 2 0 Americana banner 2 -Americana3 Americana 7 0 Americana banner 3 -default 1 Default banner 1{or}Default banner 2{or}Default banner 3 diff --git a/dist/construct/products/cat.txt b/dist/construct/products/cat.txt deleted file mode 100644 index b711545bf..000000000 --- a/dist/construct/products/cat.txt +++ /dev/null @@ -1,26 +0,0 @@ -code sel name which_page sort display_type image image_prop banner_image banner_text link_type url tab page search selector link_template -1 1 Picks & Hatchets name simple products category=Picks & Hatchets -2 6 Paintbrushes simple category=Paintbrushes -3 6 Rollers simple category=Rollers -4 5 Toolboxes simple category=Toolboxes -5 2 Rulers simple category=Rulers -6 1 Brushes name simple products category=Brushes -7 2 Tape Measures simple category=Tape Measures -8 1 Hammers name Hand Planes simple products category=Hammers -9 1 Hand Planes simple category=Hand Planes -10 3 Ladders simple category=Ladders -11 1 Shovels simple category=Shovels -12 1 Shears simple category=Shears -13 4 Eye Protection simple category=Eye Protection -14 5 Tool Belts simple category=Tool Belts -15 2 Squares simple category=Squares -16 1 Wrenches simple category=Wrenches -17 1 Pliers simple category=Pliers -18 6 Sandpaper simple category=Sandpaper -19 6 Putty Knives simple category=Putty Knives -20 1 Hand Saws name simple products category=Hand Saws -21 4 Breathing Protection simple category=Breathing Protection -22 2 Levels simple category=Levels -23 3 Step Stools simple category=Step Stools -24 7 Nails simple category=Nails -25 8 Gift Certificate simple category=Gift Certificate diff --git a/dist/construct/products/country.txt b/dist/construct/products/country.txt deleted file mode 100644 index 86098a5e4..000000000 --- a/dist/construct/products/country.txt +++ /dev/null @@ -1,197 +0,0 @@ -code selector shipmodes name -AD AD air_D surf_D Andorra -AE AE air_F surf_F United Arab Emirates -AF AF air_F surf_F Afghanistan -AG AG air_C surf_C Antigua and Barbuda -AI AI air_C surf_C Anguilla -AL AL air_E surf_E Albania -AM AM air_F surf_F Armenia -AN AN air_C surf_C Netherlands Antilles -AO AO air_F surf_F Angola -AR AR air_F surf_F Argentina -AT AT air_D surf_D Austria -AU AU air_F surf_F Australia -AW AW air_C surf_C Aruba -AZ AZ air_F surf_F Azerbaijan -BB BB air_D surf_D Barbados -BD BD air_F surf_F Bangladesh -BE BE air_F surf_F Belgium -BF BF air_F surf_F Burkina Faso -BG BG air_F surf_F Bulgaria -BH BH air_F surf_F Bahrain -BI BI air_F surf_F Burundi -BJ BJ air_E surf_E Benin -BM BM air_C surf_C Bermuda -BN BN air_F surf_F Brunei Darussalam -BO BO air_D surf_D Bolivia -BR BR air_F surf_F Brazil -BS BS air_C surf_C Bahamas -BT BT air_F surf_F Bhutan -BW BW air_F surf_F Botswana -BY BY air_F surf_F Belarus -BZ BZ air_C surf_C Belize -CA CA air_A surf_A Canada -CF CF air_F surf_F Central African Republic -CG CG air_F surf_F Congo -CH CH air_D surf_D Switzerland -CL CL air_F surf_F Chile -CM CM air_F surf_F Cameroon -CN CN air_F surf_F China -CO CO air_D surf_D Colombia -CR CR air_C surf_C Costa Rica -CV CV air_F surf_F Cape Verde -CY CY air_E surf_E Cyprus -CZ CZ air_E surf_E Czech Republic -DE DE air_D surf_D Germany -DJ DJ air_F surf_F Djibouti -DK DK air_E surf_E Denmark -DM DM air_C surf_C Dominica -DO DO air_C surf_C Dominican Republic -DZ DZ air_F surf_F Algeria -EC EC air_E surf_E Ecuador -EE EE air_F surf_F Estonia -EG EG air_F surf_F Egypt -EI EI air_E surf_E Ireland (Eire) -ER ER air_F surf_F Eritrea -ES ES air_E surf_E Spain -ET ET air_F surf_F Ethiopia -FI FI air_F surf_F Finland -FJ FJ air_D surf_D Fiji -FO FO air_E surf_E Faroe Islands -FR FR air_F surf_F France (Includes Monaco) -GA GA air_F surf_F Gabon -GD GD air_C surf_C Grenada -GE GE air_F surf_F Georgia -GF GF air_E surf_E French Guiana -GH GH air_F surf_F Ghana -GI GI air_E surf_E Gibraltar -GL GL air_F surf_F Greenland -GM GM air_D surf_D Gambia -GN GN air_D surf_D Guinea -GP GP air_C surf_C Guadeloupe -GQ GQ air_F surf_F Equatorial Guinea -GR GR air_E surf_E Greece -GT GT air_C surf_C Guatemala -GW GW air_D surf_D Guinea-Bissau -GY GY air_D surf_D Guyana -HK HK air_E surf_E Hong Kong -HN HN air_D surf_D Honduras -HT HT air_C surf_C Haiti -HU HU air_E surf_E Hungary -ID ID air_F surf_F Indonesia -IL IL air_E surf_E Israel -IN IN air_F surf_F India -IR IR air_F surf_F Iran -IS IS air_E surf_E Iceland -IT IT air_E surf_E Italy -JM JM air_C surf_C Jamaica -JO JO air_E surf_E Jordan -JP JP air_F surf_F Japan -KE KE air_F surf_F Kenya -KI KI air_D surf_D Kiribati -KM KM air_F surf_F Comoros -KR KR air_E surf_E South Korea -KW KW air_F surf_F Kuwait -KY KY air_C surf_C Cayman Islands -KZ KZ air_F surf_F Kazakhstan -LA LA air_F surf_F Laos -LB LB air_E surf_E Lebanon -LI LI air_D surf_D Liechtenstein -LK LK air_F surf_F Sri Lanka -LS LS air_F surf_F Lesotho -LT LT air_F surf_F Lithuania -LU LU air_D surf_D Luxembourg -LY LY air_F surf_F Libya -MA MA air_E surf_E Morocco -MG MG air_F surf_F Madagascar -MK MK air_E surf_E Macedonia -ML ML air_E surf_E Mali -MQ MQ air_C surf_C Martinique -MR MR air_F surf_F Mauritania -MS MS air_C surf_C Montserrat -MT MT air_E surf_E Malta -MU MU air_F surf_F Mauritius -MV MV air_F surf_F Maldives -MW MW air_F surf_F Malawi -MX MX air_B surf_B Mexico -MZ MZ air_F surf_F Mozambique -NA NA air_F surf_F Namibia -NC NC air_F surf_F New Caledonia -NE NE air_F surf_F Niger -NG NG air_E surf_E Nigeria -NI NI air_D surf_D Nicaragua -NL NL air_E surf_E Netherlands -NO NO air_F surf_F Norway -NP NP air_F surf_F Nepal -NR NR air_E surf_E Nauru -NZ NZ air_F surf_F New Zealand -OM OM air_F surf_F Oman -PA PA air_C surf_C Panama -PG PG air_F surf_F Papua New Guinea -PH PH air_F surf_F Philippines -PK PK air_F surf_F Pakistan -PL PL air_D surf_D Poland -PM PM air_C surf_C St. Pierre and Miquelon -PT PT air_E surf_E Portugal -PY PY air_F surf_F Paraguay -RE RE air_F surf_F Reunion -RW RW air_F surf_F Rwanda -SA SA air_F surf_F Saudi Arabia -SC SC air_F surf_F Seychelles -SD SD air_F surf_F Sudan -SE SE air_F surf_F Sweden -SG SG air_F surf_F Singapore -SH SH air_E surf_E St. Helena -SI SI air_E surf_E Slovenia -SK SK air_E surf_E Slovak Republic -SL SL air_F surf_F Sierra Leone -SN SN air_F surf_F Senegal -SR SR air_D surf_D Suriname -ST ST air_F surf_F Sao Tome and Principe -SV SV air_D surf_D El Salvador -SZ SZ air_F surf_F Swaziland -Sb Sb air_E surf_E Solomon Islands -TC TC air_C surf_C Turks and Caicos Islands -TD TD air_F surf_F Chad -TG TG air_F surf_F Togo -TH TH air_F surf_F Thailand -TN TN air_E surf_E Tunisia -TO TO air_D surf_D Tonga -TR TR air_E surf_E Turkey -TT TT air_D surf_D Trinidad and Tobago -TV TV air_D surf_D Tuvalu -TW TW air_E surf_E Taiwan -TZ TZ air_F surf_F Tanzania -UA UA air_F surf_F Ukraine -UG UG air_F surf_F Uganda -UK UK air_E surf_E United Kingdom -US US upsg upsb upsr United States -UY UY air_D surf_D Uruguay -VE VE air_D surf_D Venezuela -VU VU air_D surf_D Vanuatu -XA XA air_E surf_E Azores -XB XB air_E surf_E Bosnia-Herzegovina -XC XC air_C surf_C British Virgin Islands -XD XD air_F surf_F Burma -XE XE air_F surf_F Corsica -XF XF air_F surf_F Cote d` Ivoire (Ivory Coast) -XG XG air_E surf_E Croatia -XI XI air_F surf_F French Polynesia (Tahiti) -XL XL air_E surf_E Macao -XM XM air_D surf_D Madeira Islands -XO XO air_D surf_D Pitcairn Island -XP XP air_C surf_C St. Christopher and Nevis -XQ XQ air_C surf_C St. Lucia -XR XR air_C surf_C St. Vincent and the Grenadines -XS XS air_E surf_E Serbia-Montenegro -XT XT air_E surf_E Syrian Arab Republic -XU XU air_F surf_F Tristan da Cunha -XV XV air_E surf_E Vatican City -XW XW air_F surf_F Vietnam -XX XX air_F surf_F Wallis and Furuna Islands -XY XY air_D surf_D Western Samoa -YE YE air_F surf_F Yemen -ZA ZA air_F surf_F South Africa -ZM ZM air_F surf_F Zambia -ZR ZR air_F surf_F Zaire -ZW ZW air_F surf_F Zimbabwe diff --git a/dist/construct/products/gift_certs.txt b/dist/construct/products/gift_certs.txt deleted file mode 100644 index cdb22dbf6..000000000 --- a/dist/construct/products/gift_certs.txt +++ /dev/null @@ -1 +0,0 @@ -code username order_date original_amount redeemed_amount available_amount passcode active redeemed update_date diff --git a/dist/construct/products/inventory.txt b/dist/construct/products/inventory.txt deleted file mode 100644 index 186ab7d45..000000000 --- a/dist/construct/products/inventory.txt +++ /dev/null @@ -1,40 +0,0 @@ -sku quantity stock_message account cogs_account -os28004 93 Ships in 3-5 days -os28005 100 Ships in 3-5 days -os28006 90 Ships in 3-5 days -os28007 85 Ships in 3-5 days -os28008 100 Ships in 3-5 days -os28009 95 Ships in 3-5 days -os28011 40 Ships in 3-5 days -os28044 100 Ships in 3-5 days -os28057a 100 Ships in 3-5 days -os28057b 30 Ships in 3-5 days -os28057c 50 Ships in 3-5 days -os28062 88 Ships in 3-5 days -os28064 94 Ships in 3-5 days -os28065 100 Ships in 3-5 days -os28066 100 Ships in 3-5 days -os28068a 100 Ships in 3-5 days -os28068b 99 Ships in 3-5 days -os28069 100 Ships in 3-5 days -os28070 100 Ships in 3-5 days -os28072 100 Ships in 3-5 days -os28073 100 Ships in 3-5 days -os28074 95 Ships in 3-5 days -os28075 100 Ships in 3-5 days -os28076 100 Ships in 3-5 days -os28077 97 Ships in 3-5 days -os28080 84 Ships in 3-5 days -os28081 100 Ships in 3-5 days -os28082 99 Ships in 3-5 days -os28084 95 Ships in 3-5 days -os28085 100 Ships in 3-5 days -os28086 100 Ships in 3-5 days -os28087 30 Ships in 3-5 days -os28108 90 Ships in 3-5 days -os28109 100 Ships in 3-5 days -os28110 99 Ships in 3-5 days -os28111 99 Ships in 3-5 days -os28112 100 Ships in 3-5 days -os28113 100 Ships in 3-5 days -os29000 97 Ships in 3-5 days diff --git a/dist/construct/products/locale.txt b/dist/construct/products/locale.txt deleted file mode 100644 index ec29d83fa..000000000 --- a/dist/construct/products/locale.txt +++ /dev/null @@ -1,26 +0,0 @@ -code en_US de_DE fr_FR -January Januar Janvier -February Februar Février -March März Mars -April April Avril -May Mai Mai -June Juni Juin -July Juli Juillet -August August Aout -September September Septembre -October October Octobre -November November Novembre -December Dezember Décembre -PriceDivide 1 0.5409 0.1632 -ProductFiles -currency_symbol $ DM FF -decimal_point . . . -default 1 0 0 -frac_digits 2 2 2 -mon_decimal_point . , , -mon_thousand_sep -mon_thousands_sep , , . -p_cs_precedes 1 -p_sep_by_space 1 -price_picture DM ### ### ###,## -products de_products produits diff --git a/dist/construct/products/merchandising.txt b/dist/construct/products/merchandising.txt deleted file mode 100644 index 21f54017a..000000000 --- a/dist/construct/products/merchandising.txt +++ /dev/null @@ -1,23 +0,0 @@ -sku featured banner_text banner_image blurb_begin blurb_end start finish upsell_to cross_sell cross_category others_bought -os28066 specials Keep on an even keel.... 20000921 20000921 Levels -os28044 specials 20000921 20000921 test Breathing Protection -os28008 specials 20000923 20000923 Step Stools -os28084 Rulers -os28068b Breathing Protection -os28057c Hammers -os28057a Hammers -os28057b Hammers -os29000 Ladders -os28006 Rollers -os28005 Rollers -os28011 Paintbrushes -os28081 Paintbrushes -os28007 Rollers -os28062 Tool Belts -os28085 Step Stools {} -os28110 Pliers {'os28111' => "1",} -os28111 {'os28110' => "1",} -os28082 os28065 os28066 Squares -os28076 specials 20000921 20000921 os28007 os28011 Shovels -os28113 Shovels -os28068a 20000923 20000923 os28068b Eye Protection diff --git a/dist/construct/products/mv_metadata.asc b/dist/construct/products/mv_metadata.asc deleted file mode 100644 index 504895b5c..000000000 --- a/dist/construct/products/mv_metadata.asc +++ /dev/null @@ -1,124 +0,0 @@ -code type width height field db name outboard options attribute label help lookup filter help_url pre_filter lookup_exclude prepend append -2ndDayAir 200 -NextDayAir 200 -access::super select 0=No, 1=Yes -affiliate text 25 affiliate,name,url,active Affiliates Data -affiliate::affiliate text 12 Affiliate ID word -affiliate::join_date text Join date -affiliate::name text 50 Affiliate Name -affiliate::timeout text 8 Timeout delay (in seconds, 0 to disable) -affiliate::url text 70 URL Default URL to redirect to -area -area::display_type select name=Name,url=URL only,icon=Icon and name, image=Image -area::image imagedir __MVC_IMAGEDIR__/images -area::link_type select none=No link, external=External link (http://...), internal=Interchange page, simple=Simple search, complex=Complex search -cat text -cat::area multiple 5 area code -cat::display_type select name=Name,url=URL only,icon=Icon and name, image=Image -cat::link_type select none=No link, external=External link (http://...), internal=Interchange page, simple=Simple search, complex=Complex search -cat::search textarea 50 4 -country 200 -custview::userdb::dealer display =No,1=Yes Dealer -custview::userdb::email_copy display =No, 1=Yes Payment method -custview::userdb::fax_order display =Credit Card, 1=Fax or Mail, 2=Purchase order, 3=COD Payment method -custview::userdb::mail_list display offer=Special Offers, newsletter=Newsletter, alert=Alerts and Recalls, upgrade=Upgrades null_to_space -dbconfig::mv_metadata::code hidden_text Database table -dbconfig::mv_metadata::db combo tables nullselect -dbconfig::mv_metadata::field checkbox columns:: List on select page Must have the key field (usually it is the first one) null_to_comma -dbconfig::mv_metadata::filter multiple 5 filesafe=Safe for file name, uc=Upper case, nullselect=First non-null (combo box), null_to_space=Translate null to space, null_to_comma=Translate null to comma, lc=Lower case, digits_dot=Decimal number (not negative), backslash=Remove backslashes, namecase=Name case, name=Turn LAST,FIRST into FIRST LAST, digits=Digits only, word=Word chars only (A-z0-9_), unix=DOS to UNIX, dos=UNIX to DOS, mac=UNIX to MAC, gate=Only allow if scratch set, no_white=No whitespace, strip=Strip leading/trailing whitespace, sql=Escape single quotes (SQL), text2html=Simple text to HTML, urlencode=URL encode (%20, etc), pagefile=Safe for Interchange page name, entities=HTML entities (& -> &amp;), date_change=MM/DD/YYYY to YYYYMMDD null_to_space -dbconfig::mv_metadata::height text 4 Select page rows Number of rows to display at selector page. digits -dbconfig::mv_metadata::help textarea 70 4 Help displays at top of page -dbconfig::mv_metadata::help_url text 70 4 Help URL links below help text -dbconfig::mv_metadata::lookup text 20 -dbconfig::mv_metadata::name text 70 4 Description -dbconfig::mv_metadata::type select select=Select box, text=Text entry*,textarea=Textarea,combo=Combo Select, radio=Radio box, radio_nbsp=Radio (nbsp), checkbox=Check box, check_nbsp=Checkbox (nbsp), hidden_text=Hidden (show text), multiple=Multiple Select, imagedir=Image listing, date=Date selector,display=Text of option Widget type filesafe -dbconfig::mv_metadata::width text 4 digits -inventory 25 sku,quantity -inventory::stock_message select In stock, Ships in 3-5 days, Ships in 4-6 weeks, Special order -merchandising::banner_image text Banner image if appropriate -merchandising::banner_text text Banner text for use where appropriate. -merchandising::blurb_begin text Teaser catch line for feature display -merchandising::blurb_end text Closer end text for feature display -merchandising::cross_category select products =- none - category -merchandising::featured combo =none, specials=Specials, bookpick=Book Pick Where featured nullselect -merchandising::finish date End date -merchandising::sku text products sku -merchandising::start date Start date -merchandising::upsell_to multiple 10 products sku null_to_space -mv_metadata text 100 code type label -mv_metadata::code text 50 Table::Column Table::column to be operated on -mv_metadata::db combo tables nullselect -mv_metadata::filter multiple 5 filesafe=Safe for file name, uc=Upper case, nullselect=First non-null (combo box), null_to_space=Translate null to space, null_to_comma=Translate null to comma, lc=Lower case, digits_dot=Decimal number (not negative), backslash=Remove backslashes, namecase=Name case, name=Turn LAST,FIRST into FIRST LAST, digits=Digits only, word=Word chars only (A-z0-9_), unix=DOS to UNIX, dos=UNIX to DOS, mac=UNIX to MAC, gate=Only allow if scratch set, no_white=No whitespace, strip=Strip leading/trailing whitespace, sql=Escape single quotes (SQL), text2html=Simple text to HTML, urlencode=URL encode (%20, etc), pagefile=Safe for Interchange page name, entities=HTML entities (& -> &amp;), date_change=MM/DD/YYYY to YYYYMMDD null_to_space -mv_metadata::height text 4 digits -mv_metadata::help textarea 70 4 -mv_metadata::lookup text 20 -mv_metadata::options text 60 -mv_metadata::type select select=Select box, text=Text entry*,textarea=Textarea,combo=Combo Select, radio=Radio box, radio_nbsp=Radio (nbsp), checkbox=Check box, check_nbsp=Checkbox (nbsp), hidden_text=Hidden (show text), multiple=Multiple Select, imagedir=Image listing, date=Date selector,display=Text of option Widget type filesafe -mv_metadata::width text 4 digits -order_view::orderline::status display pending=Pending, shipped=Shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -order_view::transactions::status display pending=Pending, shipped=Shipped, partial=Partially shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -orderline text code,sku,description,price, quantity,subtotal -orderline::status combo pending=Pending, shipped=Shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -pricing text 2 -pricing::price_group combo pricing Discount group price_group nullselect -pricing::q3 text -products text sku,description,category,price -products::artist text 30 Artist -products::category combo products Category Enter in box for new category. category nullsellect -products::color textarea 50 5 -products::comment textarea 70 8 Long Description -products::description text 60 Short Description -products::image imagedir images/items Image nullselect upload -products::nontaxable select =Yes, 1=No Taxable? -products::price text 12 Product Price digits_dot -products::related multiple 5 sku products Related items

    (space separated SKUs) -products::size textarea 50 5 -products::sku SKU/Item code -products::display imagedir images/thumb nullselect upload -products::title text 30 Title namecase -products::weight text 4 Weight in pounds digits_dot -shipping text description -state text name -transactions::status combo pending=Pending, shipped=Shipped, partial=Partially shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -userdb text username,company,lname,fname -userdb::address1 text 40 Address -userdb::address2 text 40 -userdb::b_address1 text 40 Billing Address -userdb::b_address2 text 40 -userdb::b_city text 40 Billing City -userdb::b_country text 10 Billing Country -userdb::b_fname text 40 Billing First Name -userdb::b_lname text 40 Billing Last Name -userdb::b_state text 10 Billing State -userdb::b_zip text 10 Billing Postcode -userdb::city text 40 City -userdb::company text 40 Company -userdb::country text 10 Country -userdb::dealer radio_nbsp =No,1=Yes Dealer -userdb::email text 40 Email Address -userdb::email_copy select =No, 1=Yes -userdb::fax_order select =Credit Card, 1=Fax or Mail, 2=Purchase order, 3=COD Payment method -userdb::fname text 30 First name -userdb::lname text 30 Last Name -userdb::mail_list check_nbsp offer=Special Offers, newsletter=Newsletter, alert=Alerts and Recalls, upgrade=Upgrades null_to_space -userdb::mod_time text 20 -userdb::phone_day text 30 Daytime Phone -userdb::phone_night text 30 Home Phone -userdb::state text 10 State -userdb::username hidden_%20text 16 Username no_white -userdb::zip text 10 Postcode uc word -variable::Variable::ADDRESS text Company Address -variable::Variable::CATALOG_STATIC select No, Yes Enabled for users? Yes will cause Interchange to generate static links where possible.

    No disables generation of static links for users; you can still send a search engine to the statically generated URL and it will spider the static links on the page. -variable::Variable::CGI_URL text CGI URL URL that calls Interchange, without the server name -variable::Variable::CHECK_ACCEPTED select 0=No, 1=Yes -variable::Variable::COD_ACCEPTED select 0=No, 1=Yes -variable::Variable::CREDIT_CARDS_ACCEPTED checkbox visa=Visa, mc=Mastercard, discover=Discover, amex=American Express null_to_space -variable::Variable::DOCROOT text Document root This is the directory where your HTML originates. It should match the DocumentRoot of your HTTP server. http://www.apache.org/docs/mod/core.html#documentroot -variable::Variable::MULTIORDER select =No,1=Yes Whether users should by default have multipage order forms. -variable::Variable::MYSQL select 0=No, 1=Yes -variable::Variable::PO_ACCEPTED select 0=No, 1=Yes -variable::Variable::STATIC_LOGGED select No, Yes Enabled for logged in users? Yes will cause Interchange to generate static links where possible, even when users are logged in. -variable::Variable::UI_ITEM_EXPUNGE text 60 Item expunge tables The tables that should have the SKU removed when you DELETE ITEM from the items menu. -variable::Variable::UI_META_LINK select 0=No, 1=Yes Meta edit links Determines whether enabled by default. They can be turned on in Preferences. -variable::code text Variable name -variable::pref_group text Preferences area diff --git a/dist/construct/products/order_returns.txt b/dist/construct/products/order_returns.txt deleted file mode 100644 index 520988842..000000000 --- a/dist/construct/products/order_returns.txt +++ /dev/null @@ -1 +0,0 @@ -code order_number session username rma_number nitems total return_date update_date diff --git a/dist/construct/products/orderline.txt b/dist/construct/products/orderline.txt deleted file mode 100644 index e3b1bee60..000000000 --- a/dist/construct/products/orderline.txt +++ /dev/null @@ -1 +0,0 @@ -code store_id order_number session username shipmode sku quantity price subtotal shipping taxable size color options order_date update_date status parent affiliate campaign description diff --git a/dist/construct/products/pricing.txt b/dist/construct/products/pricing.txt deleted file mode 100644 index 9c501a29f..000000000 --- a/dist/construct/products/pricing.txt +++ /dev/null @@ -1,40 +0,0 @@ -q2 price_group sku q5 q10 q25 q100 - 1 os28108 2.5 2 - 1 os28009 5 4.25 - 1 os28044 11 10 - 1 os28073 16 14 - 1 os28074 16 24 - 1 os28075 9 8.5 - 1 os28080 13 10 - 1 os28072 12 11 - 1 os28076 14 13 - 1 os28113 11.5 10 - 1 os28065 13 12 - 1 os28062 17 15 - 1 os28110 11 10 - 1 os28111 14 13 - 1 os28112 9 8 - 1 os28109 17 16 - 1 os28064 15 14 - 1 os28086 8 7 - 1 os28066 11 10 - 1 os28084 14 13 - 1 os28008 24 23 - 1 os28085 29 28 - 1 os28068a 3 2 - 1 os28068b 9 8 - 1 os28077 29 28 - 1 os28070 29 28 - 1 os28069 34 33 - 1 os28005 5 4 - 1 os28006 24 23 - 1 os28007 9 8 - 1 os28011 9 8 - 1 os28004 15 14 - 1 os28087 7 6 - 1 os28081 5 4 - 1 os29000 21.50 20.50 - 1 os28082 16.50 15.50 - 1 os28057a 11.00 10.00 - 1 os28057b 9.00 8.00 - 1 os28057c 10.00 9.00 diff --git a/dist/construct/products/recurring_items.txt b/dist/construct/products/recurring_items.txt deleted file mode 100644 index 6c99068b8..000000000 --- a/dist/construct/products/recurring_items.txt +++ /dev/null @@ -1 +0,0 @@ -code username sku quantity ship_to ship_method diff --git a/dist/construct/products/recurring_orders.txt b/dist/construct/products/recurring_orders.txt deleted file mode 100644 index 565ea0576..000000000 --- a/dist/construct/products/recurring_orders.txt +++ /dev/null @@ -1 +0,0 @@ -code username nitems subtotal shipping pay_method freq day day_date diff --git a/dist/construct/products/route.txt b/dist/construct/products/route.txt deleted file mode 100644 index 0621fca19..000000000 --- a/dist/construct/products/route.txt +++ /dev/null @@ -1 +0,0 @@ -code report receipt encrypt_program encrypt pgp_key pgp_cc_key cyber_mode credit_card profile inline_profile email attach counter increment continue partial supplant track errors_to diff --git a/dist/construct/products/salestax.asc b/dist/construct/products/salestax.asc deleted file mode 100644 index 5325e5ccf..000000000 --- a/dist/construct/products/salestax.asc +++ /dev/null @@ -1 +0,0 @@ -default [fly-tax] diff --git a/dist/construct/products/ship_addresses.txt b/dist/construct/products/ship_addresses.txt deleted file mode 100644 index 8b19575df..000000000 --- a/dist/construct/products/ship_addresses.txt +++ /dev/null @@ -1,4 +0,0 @@ -code username entry addr_nick company fname lname address_1 address_2 city state zip country -1 test 1 iellc Tennis Experts, L.L.C. Kameroon Price P.O. Box 7714 Decatur AL 35601 US -2 bobospeew 1 Site3 Yo Mamma Construction bobo schleprock 123 main street yourtown VA 20190 USA -3 bobospeew 1 Site3 Yo Poppa Construction bobo schleprock 123 secondary street yourtown VA 20190 USA diff --git a/dist/construct/products/shipping.asc b/dist/construct/products/shipping.asc deleted file mode 100644 index 105d38590..000000000 --- a/dist/construct/products/shipping.asc +++ /dev/null @@ -1,45 +0,0 @@ -upsg UPS Ground weight 0 0 e Nothing to ship! {'ui_ship_type' => "UPSI",'table' => "Ground",'zone' => "450",'ups' => "1",'adder' => "2",'geo' => "zip",} -upsg UPS Ground weight 0 150 u Ground [value name=zip filter=digits default=45056] {} -upsg UPS Ground weight 150 999999 e @@TOTAL@@ lbs too heavy for UPS {} -upsb UPS Two Day weight 0 0 e Nothing to ship! {'ui_ship_type' => "UPSI",'zone' => "450",'table' => "2ndDayAir",'ups' => "1",'adder' => "",'geo' => "zip",} -upsb UPS Two Day weight 0 150 u 2ndDayAir [value name=zip filter=digits default=45056] -upsb UPS Two Day weight 150 999999 e @@TOTAL@@ lbs too heavy for UPS -upsr UPS Next Day weight 0 0 e Nothing to ship! {'ui_ship_type' => "UPSI",'zone' => "450",'table' => "NextDayAir",'ups' => "1",'adder' => "3",'geo' => "zip",} -upsr UPS Next Day weight 0 150 u NextDayAir [value name=zip filter=digits default=45056] {} -upsr UPS Next Day weight 150 999999 e @@TOTAL@@ lbs too heavy for UPS {} -surf_A Int'l Surface A weight 0 0 e Nothing to ship! {} -surf_A Int'l Surface A weight 0 100 f 6 + @@TOTAL@@ * 2 {} -surf_A Int'l Surface A weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -air_A International Air - Canada weight 0 0 e Nothing to ship! {'ui_ship_type' => "weight",'ups' => "0",} -air_A Int'l Air A weight 0 100 f 8 + @@TOTAL@@ * 2.50 {} -air_A Int'l Air A weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -surf_B Int'l Surface B weight 0 0 e Nothing to ship! {} -surf_B Int'l Surface B weight 0 100 f 8 + @@TOTAL@@ * 3 {} -surf_B Int'l Surface B weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -air_B Int'l Air B weight 0 0 e Nothing to ship! {} -air_B Int'l Air B weight 0 100 f 10 + @@TOTAL@@ * 3.50 {} -air_B Int'l Air B weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -surf_C Int'l Surface C weight 0 0 e Nothing to ship! {} -surf_C Int'l Surface C weight 0 100 f 10 + @@TOTAL@@ * 4 {} -surf_C Int'l Surface C weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -air_C Int'l Air C weight 0 0 e Nothing to ship! {} -air_C Int'l Air C weight 0 100 f 12 + @@TOTAL@@ * 4.5 {} -air_C Int'l Air C weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -surf_D Int'l Surface D weight 0 0 e Nothing to ship! {} -surf_D Int'l Surface D weight 0 100 f 12 + @@TOTAL@@ * 5 {} -surf_D Int'l Surface D weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -air_D Int'l Air D weight 0 0 e Nothing to ship! {} -air_D Int'l Air D weight 0 100 f 14 + @@TOTAL@@ * 5.5 {} -air_D Int'l Air D weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -surf_E Int'l Surface E weight 0 0 e Nothing to ship! {} -surf_E Int'l Surface E weight 0 100 f 14 + @@TOTAL@@ * 6 {} -surf_E Int'l Surface E weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -air_E Int'l Air E weight 0 0 e Nothing to ship! {} -air_E Int'l Air E weight 0 100 f 16 + @@TOTAL@@ * 6.5 {} -air_E Int'l Air E weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -surf_F Int'l Surface F weight 0 0 e Nothing to ship! {} -surf_F Int'l Surface F weight 0 100 f 16 + @@TOTAL@@ * 7 {} -surf_F Int'l Surface F weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} -air_F Int'l Air F weight 0 0 e Nothing to ship! {} -air_F Int'l Air F weight 0 100 f 18 + @@TOTAL@@ * 7.5 {} -air_F Int'l Air F weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. {} diff --git a/dist/construct/products/state.txt b/dist/construct/products/state.txt deleted file mode 100644 index ac09b08eb..000000000 --- a/dist/construct/products/state.txt +++ /dev/null @@ -1,183 +0,0 @@ -code country state name - AU AAT Australian Antarctic Territory - AU ACT Australian Capital Territory - AU NT Northern Territory - AU NSW New South Wales - AU QLD Queensland - AU SA South Australia - AU TAS Tasmania - AU VIC Victoria - AU WA Western Australia - BR AC Acre - BR AL Alagoas - BR AM Amazonas - BR AP Amapa - BR BA Baia - BR CE Ceara - BR DF Distrito Federal - BR ES Espirito Santo - BR FN Fernando de Noronha - BR GO Goias - BR MA Maranhao - BR MG Minas Gerais - BR MS Mato Grosso do Sul - BR MT Mato Grosso - BR PA Para - BR PB Paraiba - BR PE Pernambuco - BR PI Piaui - BR PR Parana - BR RJ Rio de Janeiro - BR RN Rio Grande do Norte - BR RO Rondonia - BR RR Roraima - BR RS Rio Grande do Sul - BR SC Santa Catarina - BR SE Sergipe - BR SP Sao Paulo - BR TO Tocatins - CA AB Alberta - CA BC British Columbia - CA MB Manitoba - CA NB New Brunswick - CA NF Newfoundland - CA NS Nova Scotia - CA NT Northwest Territories - CA NT Nunavut - CA ON Ontario - CA PE Prince Edward Island - CA QC Quebec - CA SK Saskatchewan - CA YT Yukon Territory - NL DR Drente - NL FL Flevoland - NL FR Friesland - NL GL Gelderland - NL GR Groningen - NL LB Limburg - NL NB Noord Brabant - NL NH Noord Holland - NL OV Overijssel - NL UT Utrecht - NL ZH Zuid Holland - NL ZL Zeeland - UK BEDS Bedfordshire - UK BERKS Berkshire - UK BORDER Borders - UK BUCKS Buckinghamshire - UK CAMBS Cambridgeshire - UK CENT Central - UK CI Channel Islands - UK CHESH Cheshire - UK CLEVE Cleveland - UK CORN Cornwall - UK CUMB Cumbria - UK DERBY Derbyshire - UK DEVON Devonshire - UK DORSET Dorsetshire - UK DUMGAL Dumfries & Galloway - UK GLAM Glamorganshire - UK GLOUS Gloucestershire - UK GRAMP Grampian - UK GWYNED Gwynedd - UK HANTS Hampshire - UK HERWOR Herefordshire & Worcestershire - UK HERTS Hertfordshire - UK HIGHL Highland - UK HUMBER Humberside - UK HUNTS Huntingdonshire - UK IOM Isle of Man - UK IOW Isle of White - UK LANARKS Lanarkshire - UK LANCS Lancashire - UK LEICS Leicestershire - UK LINCS Licolnshire - UK LOTH Lothian - UK MIDDX Middlesex - UK NORF Norfolk - UK NHANTS Northamptonshire - UK NTHUMB Northumberland - UK NOTTS Nottinghamshire - UK OXON Oxfordshire - UK PEMBS Pembrokeshire - UK RUTLAND Rutlandshire - UK SHROPS Shropshire - UK SOM Somersetshire - UK STAFFS Staffordshire - UK STRATH Strathclyde - UK SUFF Suffolk - UK SUSS Sussex - UK TAYS Tayside - UK TYNE Tyne & Wear - UK WARKS Warwickshire - UK WILTS Wiltshire - UK WORCS Worcestershire - UK YORK Yorkshire - EI CO ANTRIM County Antrim - EI CO ARMAGH County Armagh - EI CO DOWN County Down - EI CO DURHAM County Durham - EI CO FERMANAgh County Fermanagh - EI CO DERRY County Londonderry - EI CO TYRONE County Tyrone - US AA Military Americas - US AE Military Europe/ME/Canada - US AP Military Pacific - US AK Alaska - US AL Alabama - US AR Arkansas - US AS American Samoa - US AZ Arizona - US CA California - US CO Colorado - US CT Connecticut - US DC D.C. - US DE Delaware - US FL Florida - US FM Micronesia - US GA Georgia - US GU Guam - US HI Hawaii - US IA Iowa - US ID Idaho - US IL Illinois - US IN Indiana - US KS Kansas - US KY Kentucky - US LA Louisiana - US MA Massachusetts - US MD Maryland - US ME Maine - US MH Marshall Islands - US MI Michigan - US MN Minnesota - US MO Missouri - US MP Marianas - US MS Mississippi - US MT Montana - US NC North Carolina - US ND North Dakota - US NE Nebraska - US NH New Hampshire - US NJ New Jersey - US NM New Mexico - US NV Nevada - US NY New York - US OH Ohio - US OK Oklahoma - US OR Oregon - US PA Pennsylvania - US PR Puerto Rico - US PW Palau - US RI Rhode Island - US SC South Carolina - US SD South Dakota - US TN Tennessee - US TX Texas - US UT Utah - US VA Virginia - US VI Virgin Islands - US VT Vermont - US WA Washington - US WI Wisconsin - US WY Wyoming diff --git a/dist/construct/products/transactions.txt b/dist/construct/products/transactions.txt deleted file mode 100644 index 478d87db4..000000000 --- a/dist/construct/products/transactions.txt +++ /dev/null @@ -1,11 +0,0 @@ -code store_id order_number session username shipmode nitems subtotal shipping handling salestax total_cost fname lname company address1 address2 city state zip country phone_day phone_night fax email b_fname b_lname b_company b_address1 b_address2 b_city b_state b_zip b_country b_phone order_date order_ymd order_wday payment_method po_number avs order_id update_date status affiliate campaign parent archived deleted complete comments -000001 000001 WZG8pJbQ jrollins upsg (UPS Ground) 43 704.57 14.37 0 24.66 743.6 Joseph Rollins Expert Repair, Inc. 123 Area Rd. Richmond VA 22398 US 804-111-1234 804-111-1243 Rollins@akopia.org 20000925 23:33:19 20000925 1 Credit Card (visa) shipped 1 0 -000002 000002 WZG8pJbQ ssmith upsg (UPS Ground) 1 34.99 5.35 0 0 40.34 Steve Smith Pharm Supplies, Inc. 456 Hopkins Ave Washington DC AA 20090 US 202-111-8763 202-111-1238 smith@akopia.org 20000925 23:34:59 20000925 1 Credit Card (visa) canceled 1 0 -000003 000003 WZG8pJbQ tlucas upsg (UPS Ground) 4 144.96 6.43 0 7.25 158.64 Thomas Lucas Construct Buildings Inc. 123 Building Dr. Phoenix AZ 56987 US 520-111-1234 520-111-1245 lucas@akopia.org 20000925 23:39:15 20000925 1 Credit Card (visa) shipped 1 0 0 -000004 000004 WZG8pJbQ mmichaels upsg (UPS Ground) 5 144.95 7.97 0 9.13 162.05 Michael Michaels Medical Supplies Co. 123 South Street Austin TX 30987 US 512-111-9876 512-111-1237 michael@akopia.org 20000925 23:42:53 20000925 1 Credit Card (visa) backorder 0 -000005 000005 WZG8pJbQ mkeller upsg (UPS Ground) 616 10153.84 0 0 0 10153.84 Michael Keller InfoMed, Inc. 123 Oak St. Portland OR 45098 US 541-111-1234 541-111-1240 keller@akopia.org 20000925 23:44:37 20000925 1 Credit Card (visa) pending 0 0 0 -000006 000006 WZG8pJbQ mcarter upsg (UPS Ground) 5 99.95 6.43 0 5.00 111.38 Michele Carter Spare Parts, Inc. 123 Parts Ctr Blvd. Annapolis MD 32498 US 301-111-1234 703-111-1241 carter@akopia.org 20000925 23:45:24 20000925 1 Credit Card (visa) backorder 0 -000007 000007 WZG8pJbQ lriley upsg (UPS Ground) 14 293.86 9.06 0 11.75 314.67 Larry Riley Computerz Inc. 123 Monitor Rd. New York NY 46890 US 518-111-1234 518-111-1242 riley@akopia.org 20000925 23:46:43 20000925 1 Credit Card (visa) shipped 1 0 0 -000008 000008 WZG8pJbQ ladams upsg (UPS Ground) 170 2308.3 0 0 138.50 2446.8 Louis Adams Electronics Inc. 123 California Street Los Angeles CA 78902 US 714-111-1234 714-111-1235 adams@akopia.org 20000925 23:47:45 20000925 1 Credit Card (visa) partial 0 -000009 000009 WZG8pJbQ jking upsg (UPS Ground) 1 12 5.35 0 0.72 18.07 John King Car Parts, Inc. 123 Auto Blvd. Miami FL 39807 US 305-111-1234 305-111-1239 king@akopia.org 20000925 23:49:04 20000925 1 Credit Card (visa) shipped 1 0 0 -000010 000010 WZG8pJbQ ckirk upsg (UPS Ground) 2 34.98 5.71 0 2.27 42.96 Charles Kirk Auto Exchange Express 123 Exchange Dr. Seattle WA 34987 US 360-111-1234 360-111-1244 kirk@akopia.org 20000925 23:50:12 20000925 1 Credit Card (visa) credit 0 diff --git a/dist/construct/products/ups_zone.asc b/dist/construct/products/ups_zone.asc deleted file mode 100644 index 63d16e197..000000000 --- a/dist/construct/products/ups_zone.asc +++ /dev/null @@ -1,153 +0,0 @@ -"ZONE CHART" -"UPS Ground/UPS 3 Day Select/UPS 2nd Day Air/UPS 2nd Day Air A.M./UPS Next Day Air Saver/UPS Next Day Air" - -"For shipments originating in ZIP Codes 450-01 to 452-99. To determine zone" -"take the first three digits of the receiver's ZIP Code and refer to the chart below:" - -"ZONES" -Dest. ZIP,Ground,3 Day Select,2nd Day Air,2nd Day Air A.M.,Next Day Air Saver,Next Day Air - -004-005,4,304,204,244,134,104 -006-007,-,-,225,-,-,125 -008,-,-,[1],-,-,[1] -009,-,-,225,-,-,125 -010-067,5,305,205,245,135,105 -068-089,4,304,204,244,134,104 -090-099,-,-,-,-,-,- -100-118,4,304,204,244,134,104 -119-123,5,305,205,245,135,105 -124-127,4,304,204,244,134,104 -128-129,5,305,205,245,135,105 -130-149,4,304,204,244,134,104 -150-157,3,303,203,243,133,103 -158-159,4,304,204,244,134,104 -160-165,3,303,203,243,133,103 -166-199,4,304,204,244,134,104 -200-239,4,304,204,244,134,104 -240-244,3,303,203,243,133,103 -245,4,304,204,244,134,104 -246-253,3,303,203,243,133,103 -254,4,304,204,244,134,104 -255-257,2,302,202,242,132,102 -258-260,3,303,203,243,133,103 -261,2,302,202,242,132,102 -262-266,3,303,203,243,133,103 -267,4,304,204,244,134,104 -268,3,303,203,-,-,103 -270,4,304,204,244,134,104 -271,3,303,203,243,133,103 -272-285,4,304,204,244,134,104 -286-289,3,303,203,243,133,103 -290-299,4,304,204,244,134,104 -300-306,4,304,204,244,134,104 -307,3,303,203,243,133,103 -308-319,4,304,204,244,134,104 -320-339,5,305,205,245,135,105 -340,-,-,-,-,-,- -341-349,5,305,205,245,135,105 -350-369,4,304,204,244,134,104 -370-374,3,303,203,243,133,103 -375,4,304,204,-,-,104 -376-379,3,303,203,243,133,103 -380-381,4,304,204,244,134,104 -382,3,303,203,243,133,103 -383,4,304,204,244,134,104 -384-385,3,303,203,243,133,103 -386-394,4,304,204,244,134,104 -395,5,305,205,245,135,105 -396-399,4,304,204,244,134,104 -400-406,2,302,202,242,132,102 -407-409,3,303,203,-,133,103 -410-414,2,302,202,242,132,102 -415-416,3,303,203,-,133,103 -417-418,2,302,202,242,132,102 -420-422,3,303,203,243,133,103 -423,2,302,202,242,132,102 -424,3,303,203,243,133,103 -425-433,2,302,202,242,132,102 -434-436,3,303,203,243,133,103 -437-438,2,302,202,242,132,102 -439-447,3,303,203,243,133,103 -448-462,2,302,202,242,132,102 -463-466,3,303,203,243,133,103 -467-475,2,302,202,242,132,102 -476-477,3,303,203,243,133,103 -478-479,2,302,202,242,132,102 -480-495,3,303,203,243,133,103 -496-499,4,304,204,244,134,104 -500-509,4,304,204,244,134,104 -510-512,5,305,205,245,135,105 -513-528,4,304,204,244,134,104 -530-534,3,303,203,243,133,103 -535-555,4,304,204,244,134,104 -556-558,5,305,205,245,135,105 -559-560,4,304,204,244,134,104 -561-585,5,305,205,245,135,105 -586-593,6,306,206,246,136,106 -594,7,307,207,247,137,107 -595,6,306,206,-,-,106 -596-599,7,307,207,247,137,107 -600-611,3,303,203,243,133,103 -612,4,304,204,244,134,104 -613-622,3,303,203,243,133,103 -623,4,304,204,244,134,104 -624-633,3,303,203,243,133,103 -634-636,4,304,204,244,134,104 -637,3,303,203,243,133,103 -638-667,4,304,204,244,134,104 -668-672,5,305,205,245,135,105 -673,4,304,204,244,134,104 -674-693,5,305,205,245,135,105 -700-711,5,305,205,245,135,105 -712,4,304,204,244,134,104 -713-714,5,305,205,245,135,105 -716-717,4,304,204,244,134,104 -718,5,305,205,245,135,105 -719-729,4,304,204,244,134,104 -730-742,5,305,205,245,135,105 -743,4,304,204,244,134,104 -744-748,5,305,205,245,135,105 -749,4,304,204,-,134,104 -750-768,5,305,205,245,135,105 -769,6,306,206,246,136,106 -770-779,5,305,205,245,135,105 -780-785,6,306,206,246,136,106 -786-787,5,305,205,245,135,105 -788,6,306,206,246,136,106 -789-796,5,305,205,245,135,105 -797-799,6,306,206,246,136,106 -800-806,6,306,206,246,136,106 -807,5,305,205,245,135,105 -808-831,6,306,206,246,136,106 -832-844,7,307,207,247,137,107 -845,6,306,206,-,-,106 -846-864,7,307,207,247,137,107 -865-885,6,306,206,246,136,106 -889-893,7,307,207,247,137,107 -894-897,8,308,208,248,138,108 -898,7,307,207,-,-,107 -900-921,8,308,208,248,138,108 -922,7,307,207,247,137,107 -923-961,8,308,208,248,138,108 -962-966,-,-,-,-,-,- -967-968,-,-,[2],-,-,[2] -969,-,-,[1],-,-,[1] -970-977,8,308,208,248,138,108 -978-979,7,307,207,-,137,107 -980-989,8,308,208,248,138,108 -990-994,7,307,207,247,137,107 -995-999,-,-,[3],-,-,[3] -,,,,,, - - -"[1] For Virgin Islands, Guam, Marshall Islands, etc., please refer to the Worldwide Rate and Zone information." - -"[2] For Hawaii, the following Postal Codes are Zone 124 for Next Day Air and Zone 224 for 2nd Day Air:" -96701,96706,96707,96709,96712,96717,96730,96731,96734,96744,96759,96762,96782,96786,96789,96791,96792,96795,96797,96801,96802,96803,96804,96805,96806,96807,96808,96809,96810,96811,96812,96813,96814,96815,96816,96817,96818,96819,96820,96821,96822,96823,96824,96825,96826,96827,96828,96830,96835,96836,96837,96838,96839,96840,96841,96842,96843,96844,96845,96846,96847,96848,96849,96850,96853,96854,96857,96858,96859,96860,96861,96862,96863,96898 -"For Hawaii, the following Postal Codes are Zone 126 for Next Day Air and Zone 226 for 2nd Day Air:" -96703,96704,96705,96708,96710,96713,96714,96715,96716,96718,96719,96720,96721,96722,96725,96726,96727,96728,96729,96732,96733,96737,96738,96739,96740,96741,96742,96743,96745,96746,96747,96748,96749,96750,96751,96752,96753,96754,96755,96756,96757,96760,96761,96763,96764,96765,96766,96767,96768,96769,96770,96771,96772,96773,96774,96775,96776,96777,96778,96779,96780,96781,96783,96784,96785,96788,96790,96793,96796 - -"[3] For Alaska, the following Postal Codes are Zone 124 for Next Day Air and Zone 224 for 2nd Day Air:" -99501,99502,99503,99504,99505,99506,99507,99508,99509,99510,99511,99512,99513,99514,99515,99516,99517,99518,99519,99520,99521,99522,99523,99524,99540,99556,99567,99568,99572,99577,99587,99603,99605,99610,99611,99631,99635,99639,99645,99654,99664,99669,99672,99687,99701,99702,99703,99705,99706,99707,99708,99709,99710,99711,99712,99775 -"For Alaska, the following Postal Codes are Zone 126 for Next Day Air and Zone 226 for 2nd Day Air:" -99547,99548,99549,99550,99551,99552,99553,99554,99555,99557,99558,99559,99561,99563,99564,99565,99566,99569,99571,99573,99574,99575,99576,99578,99579,99580,99581,99583,99584,99585,99586,99588,99589,99590,99591,99602,99604,99606,99607,99608,99609,99612,99613,99614,99615,99619,99620,99621,99622,99624,99625,99626,99627,99628,99630,99632,99633,99634,99636,99637,99638,99640,99641,99643,99644,99647,99648,99649,99650,99651,99652,99653,99655,99656,99657,99658,99659,99660,99661,99662,99663,99665,99666,99667,99668,99670,99671,99674,99675,99676,99677,99678,99679,99680,99681,99682,99683,99684,99685,99686,99688,99689,99690,99691,99692,99693,99694,99695,99697,99704,99714,99716,99720,99721,99722,99723,99724,99725,99726,99727,99729,99730,99732,99733,99734,99736,99737,99738,99739,99740,99741,99742,99743,99744,99745,99746,99747,99748,99749,99750,99751,99752,99753,99754,99755,99756,99757,99758,99759,99760,99761,99762,99763,99764,99765,99766,99767,99768,99769,99770,99771,99772,99773,99774,99776,99777,99778,99779,99780,99781,99782,99783,99784,99785,99786,99788,99789,99790,99791,99801,99802,99803,99811,99820,99821,99824,99825,99826,99827,99829,99830,99832,99833,99835,99836,99840,99841,99850,99901,99903,99918,99919,99921,99922,99923,99925,99926,99927,99928,99929,99950 diff --git a/dist/construct/products/userdb.txt b/dist/construct/products/userdb.txt deleted file mode 100644 index 47fa48ceb..000000000 --- a/dist/construct/products/userdb.txt +++ /dev/null @@ -1,13 +0,0 @@ -username password acl mod_time s_nickname company fname lname address1 address2 address3 city state zip country phone_day mv_shipmode b_nickname b_fname b_lname b_address1 b_address2 b_address3 b_city b_state b_zip b_country b_phone mv_credit_card_type mv_credit_card_exp_month mv_credit_card_exp_year p_nickname email fax phone_night fax_order address_book accounts preferences carts owner file_acl db_acl order_numbers email_copy mail_list project_id account_id order_dest credit_limit inactive dealer -ckirk kirk 00000000000000 Auto Exchange Express Charles Kirk 123 Exchange Dr. Seattle WA 34987 US 360-111-1234 upsg kirk@akopia.org 360-111-1239 360-111-1244 -jking king 00000000000000 Car Parts, Inc. John King 123 Auto Blvd. Miami FL 39807 US 305-111-1234 upsg king@akopia.org 305-111-1234 305-111-1239 -jrollins rollins 20000925113133 Expert Repair, Inc. Joseph Rollins 123 Area Rd. Richmond VA 22398 US 804-111-1234 upsg Rollins@akopia.org 804-111-1238 804-111-1243 1 -ladams adams 00000000000000 Electronics Inc. Louis Adams 123 California Street Los Angeles CA 78902 US 714-111-1234 upsg adams@akopia.org 714-111-1231 714-111-1235 -lriley riley 20000925112950 Computerz Inc. Larry Riley 123 Monitor Rd. New York NY 46890 US 518-111-1234 upsg riley@akopia.org 518111-1237 518-111-1242 0 -test test 00000000000000 Milton Bear 123 Any Blvd. Columbus OH 44101 US 555-227-1238 upsg 3 3 milton@akopia.com 555-908-9999 555-789-3456 0 1 newsletter alert upgrade 1000 1 -mcarter carter 00000000000000 Spare Parts, Inc. Michele Carter 123 Parts Ctr Blvd. Annapolis MD 32498 US 301-111-1234 upsg carter@akopia.org 703-111-1236 703-111-1241 -mkeller keller 00000000000000 InfoMed, Inc. Michael Keller 123 Oak St. Portland OR 45098 US 541-111-1234 upsg keller@akopia.org 541-111-1235 541-111-1240 -mmichaels michaels 00000000000000 Medical Supplies Co. Michael Michaels 123 South Street Austin TX 30987 US 512-111-9876 upsg michael@akopia.org 512-111-1232 512-111-1237 -ssmith smith 20000925113156 Pharm Supplies, Inc. Steve Smith 456 Hopkins Ave Washington DC 20090 US 202-111-8763 upsg smith@akopia.org 202-111-1233 202-111-1238 1 -tjones jones 20000925113133 Automotive, Inc. Tammy Jones 123 Virginia Street Arlington VA 22041 US 703-111-1234 upsg jones@akopia.org 703-111-1231 703-111-1236 1 -tlucas lucas 00000000000000 Construct Buildings Inc. Thomas Lucas 123 Building Dr. Phoenix AZ 56987 US 520-111-1234 upsg lucas@akopia.org 520-111-1240 520-111-1245 diff --git a/dist/construct/products/variable.txt b/dist/construct/products/variable.txt deleted file mode 100644 index 24aff184f..000000000 --- a/dist/construct/products/variable.txt +++ /dev/null @@ -1,58 +0,0 @@ -code Variable pref_group -ADDRESS 123 Any St. Company -BAR_LINK_TEMPLATE $ANCHOR$ Admin colors -CATALOG_STATIC No Static pages -CGI_URL __MVC_CGIURL__ Directories and Paths -CHECK_ACCEPTED 1 Payment -CITY Anytown, USA 45056 Company -COD_ACCEPTED 0 Payment -COMPANY __MVC_COMPANY__ Company -CREDIT_CARDS_ACCEPTED visa mc discover amex Payment -DOCROOT __MVC_DOCUMENTROOT__ Directories and Paths -ENCRYPTOR none Payment -FAX 513-555-5556 Company -IMAGE_DIR __MVC_IMAGEURL__ Directories and Paths -LOGGED_STATIC 1 Static pages -LOGO Template -MULTIORDER Order -MYSQL __MVC_MYSQL__ Database -ORDERS_TO __MVC_MAILORDERTO__ Order -ORDER_ROUTES log main copy_user Order -PGSQL __MVC_PGSQL__ Database -PHONE (555) 555-5555 Company -PO_ACCEPTED 1 Payment -SAMPLEHTML __MVC_SAMPLEHTML__ Directories and Paths -SAMPLEURL __MVC_SAMPLEURL__ Directories and Paths -SECURE_SERVER http://__MVC_SERVERNAME__ Directories and Paths -SERVER_NAME __MVC_SERVERNAME__ Directories and Paths -SMLOGO Template -SQLPASS __MVC_SQLPASS__ Database -SQLUSER __MVC_SQLUSER__ Database -TAXAREA OH AZ CA FL MD NY OR TX VA WA DC Tax -TAXFIELD state Tax -TAXRATE OH=6.75,AZ=5,CA=6,FL=6,MD=5,NY=4,OR=0,TX=6.3,VA=3.5,WA=6.5,DC=5.8 Tax -TAXSHIPPING Tax -TOLLFREE (888) 555-5555 Company -UI_ABOUT_LOGIN_URL http://help.akopia.com/4.5.6/about/ Admin control -UI_ABOUT_NORMAL_URL http://help.akopia.com/4.5.6/about/ Admin control -UI_BOTTOMIMG poweredby.gif Admin layout -UI_C_BG #FFFFFF Admin colors -UI_C_HEADERTXT #333333 Admin colors -UI_C_INTBLOCKBAR #CCCCCC Admin colors -UI_C_INTBLOCK #EEEEEE Admin colors -UI_C_TITLEBARBG #6699FF Admin colors -UI_C_TITLEBARTXT #FFFFFF Admin colors -UI_C_TOPBLOCKBAR #6699FF Admin colors -UI_HELP_BASE_URL http://help.akopia.com/4.5.6/ Admin control -UI_IMG __MVC_SHAREURL__/akopia/ui/ Admin control -UI_ITEM_FIELDS sku description category price image comment size color weight Item display -UI_META_LINK 0 Admin control -UI_SZ_LIST_CUSTOMER 25 Customer display -UI_SZ_LIST_ORDER 50 Order display -UI_META_LINK 1 Admin control -UI_SZ_LIST_CUSTOMER 25 Customer display -UI_SZ_LIST_ORDER 50 Order display -UI_TRAFFIC_STATS __MVC_CATROOT__/logs/usertrack Directories and Paths -UPS_COUNTRY_FIELD country Shipping -UPS_ORIGIN 45056 Shipping -UPS_POSTCODE_FIELD zip Shipping diff --git a/dist/construct/session/.empty b/dist/construct/session/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/construct/session/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/construct/special_pages/badsearch.html b/dist/construct/special_pages/badsearch.html deleted file mode 100644 index b8a118e50..000000000 --- a/dist/construct/special_pages/badsearch.html +++ /dev/null @@ -1,12 +0,0 @@ -[set page_title]Bad search specification[/set] -__NOLEFT_TOP__ - -

    [scratch page_title]

    - - -The search could not be done. The problem was: -

    -[subject] - -__NOLEFT_BOTTOM__ - diff --git a/dist/construct/special_pages/canceled.html b/dist/construct/special_pages/canceled.html deleted file mode 100644 index 1ad656166..000000000 --- a/dist/construct/special_pages/canceled.html +++ /dev/null @@ -1,15 +0,0 @@ -[set page_title] -Account Information Erased -[/set] -__NOLEFT_TOP__ -

    [scratch page_title]

    - -Your session information has been canceled. -

    -If you wish to order another item, we would like you to do so, but -unfortunately you will have to re-enter any account information. -

    -We hope you will ordering from us in the future. -

    -__NOLEFT_BOTTOM__ - diff --git a/dist/construct/special_pages/cc_not_valid.html b/dist/construct/special_pages/cc_not_valid.html deleted file mode 100644 index 16d4a9ff4..000000000 --- a/dist/construct/special_pages/cc_not_valid.html +++ /dev/null @@ -1,18 +0,0 @@ -[set page_title] -Credit Card number fails test -[/set] -__NOLEFT_TOP__ -

    [scratch page_title]

    -

    - The following error was seen: -

    -	[value mv_credit_card_error]
    -
    - Please go BACK and check the information you entered and see - that the correct card type, expiration date, and number are - entered.

    - -

    - -__NOLEFT_BOTTOM__ - diff --git a/dist/construct/special_pages/confirmation.html b/dist/construct/special_pages/confirmation.html deleted file mode 100644 index 6a00470c3..000000000 --- a/dist/construct/special_pages/confirmation.html +++ /dev/null @@ -1,12 +0,0 @@ -[set page_title] -Order Processed -- Thank You! -[/set] -__NOLEFT_TOP__ -

    [scratch page_title]

    -

    -Your order has been sent, and -you will receive an order confirmation via email.

    -

    -Thank you for ordering from us! -__NOLEFT_BOTTOM__ - diff --git a/dist/construct/special_pages/failed.html b/dist/construct/special_pages/failed.html deleted file mode 100644 index 933e54015..000000000 --- a/dist/construct/special_pages/failed.html +++ /dev/null @@ -1,18 +0,0 @@ -[set page_title]Order Failed[/set] -__NOLEFT_TOP__ - -

    [scratch page_title]

    - -[if type=explicit compare="q{[subject]}"] -
    -[subject]
    -
    -[else] -We're sorry, but your order could not be processed at this time due to -technical problems. Please print the order page and give us a call. -We will follow up as soon as possible. -[/else] -[/if] -

    -__NOLEFT_BOTTOM__ - diff --git a/dist/construct/special_pages/interact.html b/dist/construct/special_pages/interact.html deleted file mode 100644 index eef7d70dc..000000000 --- a/dist/construct/special_pages/interact.html +++ /dev/null @@ -1,58 +0,0 @@ -[set page_title] -Interaction error -[/set] -__NOLEFT_TOP__ -

    [scratch page_title]

    - -Something has gone wrong, and we did not receive the response we -expected from your browser. There was the following problem: -

    -[message] -

    -Note on common causes of this problem:

    -

      -
    • - If you bookmarked a shopping cart after it had been recalculated - (or if the item was ordered from a form submission), then the system may - not have been able to determine where it should go. If that is - the case, [page ord/basket]check your shopping basket. -

      -

    • - Some Internet Service Providers who use proxy servers - send you to a secure page from a different net location - (AOL is an example). - If your browser does not accept - cookies, - then this software may not be able to determine your session - number -- it qualifies your session with your location for - security. -

      - If you go back to a previous page and RELOAD with cookies enabled, - then this condition should be corrected. You can verify that we - send a proper cookie if you turn on the cookie warning feature of your - browser. Typically, we will save cookies only if you check a box - that asks us to save your information. -

      - You can also try looking at the checkout page non-securely, - though we don't recommend you send sensitive information like - a credit card number without encryption. -

      -[set name="Go to non-secure checkout"] -[/set] -

      - - - -
      -

      -

    • - If you pressed the STOP button before the last form finished loading, - there may have been an incomplete form. -

      -

    -

    -If you wish, you can also return to the [page index]catalog[/page]. - -

    -__NOLEFT_BOTTOM__ - diff --git a/dist/construct/special_pages/missing.html b/dist/construct/special_pages/missing.html deleted file mode 100644 index d31c73c41..000000000 --- a/dist/construct/special_pages/missing.html +++ /dev/null @@ -1,13 +0,0 @@ -[set page_title] -Sorry, the page (@@MV_PREV_PAGE@@) was not found -[/set] -__NOLEFT_TOP__ -

    [scratch page_title]

    - -The requested item ([subject]) was not found. -You can [page index]return to browsing our -catalog[/page], if you wish. - -

    -__NOLEFT_BOTTOM__ - diff --git a/dist/construct/special_pages/needfield.html b/dist/construct/special_pages/needfield.html deleted file mode 100644 index 2ee88e132..000000000 --- a/dist/construct/special_pages/needfield.html +++ /dev/null @@ -1,45 +0,0 @@ -[set page_title] -We need some more information! -[/set] -__NOLEFT_TOP__ -

    [scratch page_title]

    - -We need to have some fields entered to be able -to process your order. Please [page ord/checkout]go back and fill out -the information. -

    -Problem: -

    -[perl] - my $msg = q{[subject]}; - sub redo_message { - my($param,$word) = @_; - if($param =~ /mv_credit/) { - "

  • You need to validate your credit card information.\n"; - } - elsif ($word =~ /not_a_state/i) { - return "
  • We need a valid two-letter state code like CA.\n"; - } - elsif ($word =~ /phone_day=/i) { - return "
  • Is that really a phone number?\n"; - } - elsif ($word =~ /not_a_zip_code/i) { - return "
  • We need a zip code for UPS lookup.\n"; - } - elsif ($word =~ /mv_contingent/) { - return "
  • You need to select your method of payment.\n"; - } - else { return "
  • $param: $word\n" } - } - @msg = split /\n/, $msg; - $msg = '
      '; - for(@msg) { - ($var, $val) = split /:\s*/, $_; - $msg .= redo_message($var, $val); - } - $msg .= '
    '; - $msg; -[/perl] -

    -__NOLEFT_BOTTOM__ - diff --git a/dist/construct/special_pages/nomatch.html b/dist/construct/special_pages/nomatch.html deleted file mode 100644 index 2faa5fd3a..000000000 --- a/dist/construct/special_pages/nomatch.html +++ /dev/null @@ -1,10 +0,0 @@ -[set page_title] -No Match for [subject] -[/set] -__NOLEFT_TOP__ -

    [scratch page_title]

    - -There were no matches found. -

    -__NOLEFT_BOTTOM__ - diff --git a/dist/construct/special_pages/noproduct.html b/dist/construct/special_pages/noproduct.html deleted file mode 100644 index 7beb7b2e5..000000000 --- a/dist/construct/special_pages/noproduct.html +++ /dev/null @@ -1,13 +0,0 @@ -[set page_title] -Requested Product Unavailable -[/set] -__NOLEFT_TOP__ -

    [scratch page_title]

    - -We are sorry, but the product ([subject]) that you requested is -not now available. You can still [page index]browse our -catalog[/page], if you wish. - -

    -__NOLEFT_BOTTOM__ - diff --git a/dist/construct/special_pages/notfound.html b/dist/construct/special_pages/notfound.html deleted file mode 100644 index dce8dbf05..000000000 --- a/dist/construct/special_pages/notfound.html +++ /dev/null @@ -1,12 +0,0 @@ -[set page_title] -Not Found -[/set] -__NOLEFT_TOP__ -

    [scratch page_title]

    - -No items with '[subject]' were found. You can [page index]return to -browsing our catalog[/page], if you wish. - -

    -__NOLEFT_BOTTOM__ - diff --git a/dist/construct/special_pages/order_security.html b/dist/construct/special_pages/order_security.html deleted file mode 100644 index e2c9df44f..000000000 --- a/dist/construct/special_pages/order_security.html +++ /dev/null @@ -1,22 +0,0 @@ -[set page_title] -SECURITY PROBLEM -[/set] -__NOLEFT_TOP__ -

    [scratch page_title]

    - -Either this web server did not receive the last transaction via -SSL/HTTPS, or your browser doesn't handle SSL. -

    -We recommend you do not leave any critical information -until this situation is corrected. You can CANCEL your -session below to wipe all information, or return to the -catalog with the buttonbar. -

    -

    - - -
    - -

    -__NOLEFT_BOTTOM__ - diff --git a/dist/construct/special_pages/reconfig.html b/dist/construct/special_pages/reconfig.html deleted file mode 100644 index 42f6e4bdb..000000000 --- a/dist/construct/special_pages/reconfig.html +++ /dev/null @@ -1,10 +0,0 @@ -[set page_title] -Catalog Reconfigured -[/set] -__NOLEFT_TOP__ -

    [scratch page_title]

    - -The catalog should be successfully reconfigured. -

    -__NOLEFT_BOTTOM__ - diff --git a/dist/construct/special_pages/sec_faq.html b/dist/construct/special_pages/sec_faq.html deleted file mode 100644 index 5dc303cf0..000000000 --- a/dist/construct/special_pages/sec_faq.html +++ /dev/null @@ -1,138 +0,0 @@ - - - - Interchange Security FAQ - - - -

    Interchange Security FAQ

    - - -(with thanks to Lincoln Stein, and the WWW Security FAQ) - -

    -Press BACK to return to the form -

    - -Q: My Netscape browser is displaying a form for ordering merchandise -from a department store that I trust. The little key at the lower -left-hand corner of the Netscape window is solid and -has two teeth. This means I can safely submit my -credit card number, right? -

    -Not quite. A solid key with two teeth appears indicates that SSL is -being used with a 128-bit secret key and that the remote host owns a -valid server certificate that was certified by some authority that -Netscape recognizes. At this point, however, you don't know who that -certificate belongs to. It's possible that someone has bought or stolen -a server certificate and then diverted network traffic destined for the -department store by subverting a router somewhere between you and the -store. The only way to make sure that you're talking to the company you -think you're talking to is to open up the "Document Information" window -(from the File menu) and examine the server certificate. If the host and -organization names that appear there match the company you expect, then -you're probably safe to submit the form. If something unexpected appears -there (like "Embezzlers R Us") you might want to call the department -store's 800 number. -


    - -Q: How secure is the encryption used by SSL? - -

    - -SSL uses public-key encryption to exchange a session key between the -client and server; this session key is used to encrypt the http -transaction (both request and response). Each transaction uses a -different session key so that if someone manages to decrypt a -transaction, that does not mean that they've found the server's secret -key; if they want to decrypt another transaction, they'll need to spend -as much time and effort on the second transaction as they did on the -first. -

    -Netscape servers and browsers do encryption using either a 40-bit secret -key or a 128-bit secret key. Many people feel that using a 40-bit key is -insecure because it's vulnerable to a "brute force" attack (trying each -of the 2^40 possible keys until you find the one that decrypts the -message). Using a 128-bit key eleiminates this problem because there are -2^128 instead of 2^40 possible keys. Unfortunately, most Netscape users -have browsers that support only 40-bit secret keys. This is because of -legal restrictions on the encryption software that can be exported from -the United States (The Federal Government has recently modified this -policy on following the well-publicized cracking of a Netscape message -encrypted using a 40-bit key. Expect this situation to change).

    -In Netscape you can tell what kind of encryption is in use for a particular -document by looking at the "document" information" screen accessible -from the file menu. The little key in the lower left-hand corner of the -Netscape window also indicates this information. A solid key with two -teeth means 128-bit encryption, a solid key with one tooth means 40-bit -encryption, and a broken key means no encryption. Even if your browser -supports 128-bit encryption, it mayse use 40-bit encryption when talking -to older Netscape servers or Netscape servers outside the U.S. and -Canada. -

    -


    -Q: My friend says that none of this stuff is safe. What -should I believe? -

    -When credit cards first came out in the late 1960s, the cardholder was -liable for all losses occurring as a result of a stolen card. The -credit card companies soon discovered that fear of large losses prevented -people from using or keeping the cards. For a long time now, you have -been liable (in most states) for at most $50 of loss as a result of -credit card fraud. -

    -Using your credit card on the Internet is no different than giving it to -a restaurant. The presence of a warning-free SSL security system -ensures that the company you are dealing with has passed background -checks -- just like the presence of a Verifone credit-card checking device -gives a good indication that the restaurant can actually accept credit -cards. Look for a server certified by Verisign, Thawte, or another -well-known certifying agency. If a server's SSL certificate is so signed, -you have done your job to verify authenticity. -

    -We don't recommend that you send your credit card number un-encrypted -over the Internet. Just like you know not to give your card number to -anyone who calls you -- you make sure you know who you are talking to -first -- you shouldn't send your card number over the Internet until -you are certain that the company you are dealing with has made the effort -to ensure security. Presence of a warning-free SSL security system -indicates that rather considerable effort has been made. Look for the -lock, key, or blue line, and you should be safe. -


    -Q: Yes, all that is fine, but what about your software? Won't -the number stick around on the disk forever? -

    -The SSL encryption will take care of network transmission. But we -don't want to make it easy for just anybody, even those with access -to our system, to view your number. When Interchange is properly set -up, the number is encrypted with PGP encryption before ever being -written to a file. -

    -First of all, after you enter your number, it is kept in memory only until -until it is encrypted. At that time, it is scrubbed from the program's -memory. The now-encrypted card number (with the password only known -to our order entry personnel) is then written to a file with -permissions set so only the program can get at it. -

    -This behavior will be followed by the Interchange program as long as -the number is placed in a field named mv_credit_card_number --- you can view the source of the order form to ensure that. -

    -If you have entered your credit card number and decide not to -submit your order, the encrypted number will remain on disk for -no more than one day. At that time, the sessions on the system that are -older than one day will be expired, after any encrypted -credit_card_no fields are overwritten with meaningless data, and -removed from the session database. -

    -If you wish, you can press the button on the order form which is labeled -CANCEL, and the encrypted information will be wiped immediately. -

    -If you would like more details, please send mail to the -webmaster. -

    -__MENUBOTTOM__ -__COPYRIGHT__ - - - diff --git a/dist/construct/special_pages/security.html b/dist/construct/special_pages/security.html deleted file mode 100644 index b61059ecc..000000000 --- a/dist/construct/special_pages/security.html +++ /dev/null @@ -1,30 +0,0 @@ -[set page_title] -How Secure is This Stuff? -[/set] -__NOLEFT_TOP__ -

    [scratch page_title]

    -Interchange is designed to securely transmit your information -via SSL or SHTTP. Examine the browser status indication, and if -you see an indication that this transaction is secure, -(on Netscape it is an unbroken key in the lower left-hand corner), you -can be assured that your vital information is securely encrypted as it flies -over the Internet. -

    -How do you know it is secure? Reference the -WWW Security FAQ, -VeriSign FAQ, -or [page help/sec_faq]our own FAQ[/page] -and determine if you are comfortable with leaving your credit card -number. -

    -That being said, please feel free to leave your account information -below. Your credit card number, if you decide to leave it, will only -be used to process your order, and will not be sent by email, even -on our local machine. It will be encrypted, only read by our order entry -software, and then wiped from the disk file as soon as that is done. -

    - Click BACK to return to Account Information Form -

    -__NOLEFT_BOTTOM__ - - diff --git a/dist/construct/special_pages/violation.html b/dist/construct/special_pages/violation.html deleted file mode 100644 index 2e2e82e55..000000000 --- a/dist/construct/special_pages/violation.html +++ /dev/null @@ -1,70 +0,0 @@ -[set page_title] -Access denied -[/set] -__NOLEFT_TOP__ -

    [scratch page_title]

    - -

    You have accessed a page that requires authorization.

    - -[if session logged_in] -[then] - -[set [L]Log out[/L]] -mv_todo=return -mv_nextpage=@@MV_PREV_PAGE@@ -[userdb function=logout options="clear=yes"] -[/set] - - -
    -
    - [L]Hi[/L] [value name]! [L]You are logged in as user[/L] [value mv_username]. -    -
    -
    - - -
    -
    -
    -
    - - -[/then] -[else] - -[set Login] -mv_todo=return -mv_nextpage=@@MV_PREV_PAGE@@ -[userdb login] -[/set] -

    -[if session failure] -[data session failure] -[/if] -

    -

    - - - - - - - - - -
    [L]Username[/L] - [page new_account][L]Create a new account[/L] -
    [L]Password[/L] -    -
    - -
    - -[/else][/if] - -

    -__NOLEFT_BOTTOM__ - diff --git a/dist/construct/templates/components/random b/dist/construct/templates/components/random deleted file mode 100644 index 2d228d61e..000000000 --- a/dist/construct/templates/components/random +++ /dev/null @@ -1,54 +0,0 @@ -
    - - - - - - - -
    -
    See these fine products -
    -
    - - - [loop random=2 search="ra=yes/ml=1000"] - - [/loop] - -
    - - - - - - - - - - - - - - - - - - - - - - -
    [loop-description]
    [order [loop-code]]Buy - Now[/order]
    - - - - -
    -
     
    Our - Price: [loop-price]
    More - Information
     
    -
    -

     

    -
    diff --git a/dist/construct/templates/components/specials b/dist/construct/templates/components/specials deleted file mode 100644 index 64caf7ccc..000000000 --- a/dist/construct/templates/components/specials +++ /dev/null @@ -1,86 +0,0 @@ -
    - - - - - - - -
    -
    Today's - Special
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - -
    [description code="os28108"]
    [order os28108]Buy - Now[/order]
    - - - - -
    -
     
    Our - Price: [price code="os28108"]
    More - Information
     
    -
    - - - - - - - - - - - - - - - - - - - - - - -
    [description code="os28074"]
    [order os28074]Buy - Now[/order]
    - - - - -
    -
     
    Our - Price: [price code="os28074"]
    More - Information
     
    -
    -

     

    -
    diff --git a/dist/construct/templates/components/upsell_horiz_2 b/dist/construct/templates/components/upsell_horiz_2 deleted file mode 100644 index 263eac21e..000000000 --- a/dist/construct/templates/components/upsell_horiz_2 +++ /dev/null @@ -1,56 +0,0 @@ -[if scratch upsell] -
    - - - - - - - -
    -
    Other items you may like -
    -
    - - - [loop random=2 list="[scratchd upsell]"] - - [/loop] - -
    - - - - - - - - - - - - - - - - - - - - - - -
    [loop-description]
    [order [loop-code]]Buy - Now[/order]
    - - - - -
    -
     
    Our - Price: [loop-price]
    More - Information
     
    -
    -

     

    -
    -[/if] diff --git a/dist/construct/templates/components/upsell_horiz_3 b/dist/construct/templates/components/upsell_horiz_3 deleted file mode 100644 index d4c5a8d02..000000000 --- a/dist/construct/templates/components/upsell_horiz_3 +++ /dev/null @@ -1,56 +0,0 @@ -[if scratch upsell] -
    - - - - - - - -
    -
    Other items you may like -
    -
    - - - [loop random=3 list="[scratchd upsell]"] - - [/loop] - -
    - - - - - - - - - - - - - - - - - - - - - - -
    [loop-description]
    [order [loop-code]]Buy - Now[/order]
    - - - - -
    -
     
    Our - Price: [loop-price]
    More - Information
     
    -
    -

     

    -
    -[/if] diff --git a/dist/construct/templates/leftonly b/dist/construct/templates/leftonly deleted file mode 100644 index 83d9adafd..000000000 --- a/dist/construct/templates/leftonly +++ /dev/null @@ -1,40 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: leftonly -ui_template_layout: LEFTONLY_TOP, UI_CONTENT, LEFTONLY_BOTTOM -ui_template_description: Page with top/left areas. - -page_title: - description: Page title - -page_banner: - description: Page banner - help: Defaults to page title - -members_only: - options: 1=Yes,0=No* - widget: radio - description: Members only - -component_before: - options: =none, specials=Specials, random=Random items, upsell_horiz_2=Two upsell items, upsell_horiz_3=Three upsell items - widget: select - description: Component before content - -component_after: - options: =none, specials=Specials, random=Random items, upsell_horiz_2=Two upsell items, upsell_horiz_3=Three upsell items - widget: select - description: Component after content - -bgcolor: - options: #FFFFFF=White,pink=Pink - widget: select - description: Background color - -[/comment] -[set page_title][set] -[set page_banner][set] -[set members_only][set] -[set component_before][set] -[set component_after][set] -[set bgcolor]#FFFFFF[/set] diff --git a/dist/construct/templates/regions/LEFTONLY_BOTTOM b/dist/construct/templates/regions/LEFTONLY_BOTTOM deleted file mode 100644 index 55de558b8..000000000 --- a/dist/construct/templates/regions/LEFTONLY_BOTTOM +++ /dev/null @@ -1,20 +0,0 @@ - -[if scratch component_after] -[include file="templates/components/[scratch component_after]"] -[set component_after][/set] -[/if] - -   - - - - - - - - -

     

    -

     

    - - - diff --git a/dist/construct/templates/regions/LEFTRIGHT_BOTTOM b/dist/construct/templates/regions/LEFTRIGHT_BOTTOM deleted file mode 100644 index 2e7f1a150..000000000 --- a/dist/construct/templates/regions/LEFTRIGHT_BOTTOM +++ /dev/null @@ -1,113 +0,0 @@ - -[if scratch component_after] -[include file="templates/components/[scratch component_after]"] -[set component_after][/set] -[/if] - - - - - - -
    - -[seti cross_codes][loop - random=3 - search=` - my $search = q{ - st=db - fi=merchandising - }; - if($cat = $Scratch->{cross_sale}) { - $Scratch->{right_banner} = 'Also see...'; - $search .= "se=$cat\n"; - $search .= "sf=cross_category"; - } - else { - $Scratch->{right_banner} = 'Specials'; - $search .= "se=$cat\n"; - $search .= "sf=cross_category"; - } - return $search; - ` -][loop-code] -[/loop] -[/seti] - -[loop - list="[either] - [scratch cross_codes] - [or] - [loop search='ra=yes' random=3] [loop-code][/loop] - [/either]" - ] - - - - - - - - - - -
    - [scratchd right_banner]
    -[list] - - - - - - - - - - - - - - - - - - - - - - -
    [loop-field description]
    [order [loop-code]]Buy - Now[/order]
    - - - - -
    -
     
    Our - Price: [loop-price]
    More - Information
     
    -[/list] - -
     
    -[/loop] - -
    - - - - -   -   - - - - - - - - -

     

    -

     

    - - - diff --git a/dist/construct/templates/regions/LEFTRIGHT_TOP b/dist/construct/templates/regions/LEFTRIGHT_TOP deleted file mode 100644 index 72b2b6769..000000000 --- a/dist/construct/templates/regions/LEFTRIGHT_TOP +++ /dev/null @@ -1,212 +0,0 @@ - -[if scratch members_only] - [set members_only][/set] - [if !session logged_in] - [set mv_successpage]@@MV_PAGE@@[/set] - [bounce page=login] - [/if] -[/if] - - [scratch page_title] - [scratchd meta_header] - - - - -
    - - - - -
    - - - - - - - - - - -
    - - - - - - - - - - - - - -
    [if !session logged_in][else][/else][/if]
    -
    -     - Welcome to Construct Something, - - [if !session logged_in] - your online hardware store! - [else] - [data table=userdb column=fname key='[data session username]']! - [/else] - [/if] - -
    -
    -
    -
    -
    - - - - -
    -
    - - - - - - - - - - - - - - - -
    -
    -
    -
    [either][scratch page_banner][or][scratch page_title][/either] -
    -
    - - - - - - - - - - - -[loop - prefix=box - search=" - fi=area - st=db - tf=sort - ac=0 - ac=0 - co=yes - - sf=sel - op=eq - [if scratch left_bar] - se=[scratch left_bar][set left_bar][/set] - [else] - se=left - [/else] - [/if] - - sf=which_page - op=rm - [if scratch page_class] - se=all|[scratch page_class][set page_class][/set] - [else] - se=all|@@MV_PAGE@@ - [/else] - [/if] -"] - - - - - - - - -[/loop] - -
      - - - - - - -
    -
    - - - - - - - -
    -
     [box-exec bar_link]area[/box-exec]
    -

     

    -

     

    -
    -

    -[set found_cat][/set] -[loop prefix=cat - search=" - fi=cat - st=db - tf=sort - tf=name - rf=code,name - sf=sel - se=[box-code] - " - ] -[cat-exec bar_link]cat[/cat-exec]
    -[/loop] -
    -

    -
    - -
      -[if scratch component_before] -[include file="templates/components/[scratch component_before]"] -[set component_before][/set] -[/if] diff --git a/dist/construct/templates/regions/NOLEFT_BOTTOM b/dist/construct/templates/regions/NOLEFT_BOTTOM deleted file mode 100644 index e56568052..000000000 --- a/dist/construct/templates/regions/NOLEFT_BOTTOM +++ /dev/null @@ -1,18 +0,0 @@ -

     

    -
    -
    -
    -

     

    -

     

    -
    - - diff --git a/dist/construct/templates/regions/NOLEFT_TOP b/dist/construct/templates/regions/NOLEFT_TOP deleted file mode 100644 index 439be8ffc..000000000 --- a/dist/construct/templates/regions/NOLEFT_TOP +++ /dev/null @@ -1,106 +0,0 @@ - -[if scratch members_only] - [set members_only][/set] - [if !session logged_in] - [set mv_successpage]@@MV_PAGE@@[/set] - [bounce page=login] - [/if] -[/if] - - [scratch page_title] - - - - - -
    - - - - - - -
    - - - - - - - - - "; - return; - } - my $large = $Db{$current_table}->config('LARGE'); - - for( keys %{$CGI} ) { - next unless /^([A-Za-z_]+)(\d+)$/; - my $item = $1; - my $idx = $2; - $vals->{$item} = [] - unless defined $vals->{$item}; - $vals->{$item}[$idx] = $CGI->{"$item$idx"}; - } - return "No tables/columns selected" unless defined $vals->{table}; - $summary_only = $CGI->{summary_only}; - for(0 .. 2) { - if($CGI->{"search_field$_"} and $CGI->{"search_spec$_"}) { - my $spec = $CGI->{"search_spec$_"}; - my $field = $CGI->{"search_field$_"}; - my $op = $CGI->{"search_op$_"}; - push @string, "se=$spec"; - push @string, "sf=$field"; - push @string, "op=$op"; - push @string, "nu=1" if $op =~ /\W/; - } - } - - if(! scalar @string) { - push @string, "ra=yes"; - } - else { - push @string, "co=1"; - } - - push @string, "st=db" - unless $large; - push @string, "fi=$current_table"; - - if ($CGI->{matchlimit}) { - push @string, "ml=$CGI->{matchlimit}"; - my $page = $CGI->{report_title}; - $page =~ s/%/%37/g; - push @string, "sp=__UI_BASE__/reports/$page"; - } - else { - push @string, "ml=999999"; - } - - if($vals->{sort_order}) { - for(my $i = 0; $i < scalar @{$vals->{sort_order}}; $i++) { - my $f = $vals->{sort_order}[$i]; - last unless $f; - push @string, "tf=$f"; - push @string, "to=" . $vals->{sort_option}[$i]; - if($vals->{break}[$i]) { - unshift(@breaks, $f); - $hfoot_change{$f} = qq{\n[item-change $i][condition]}; - $hfoot_change{$f} .= qq{[item-data $current_table $f]}; - $hfoot_change{$f} .= qq{[/condition]\n}; - $foot_change{$f} = qq{\n}; - $last_foot_change{$f} = qq{\n}; - $efoot_change{$f} = "[/item-change $i]\n"; - } - } - } - my $header = "\n"; - my $page = ''; - my $summary_found; - $page .= "\n" unless $summary_only; - my $end_line = ''; - my $total_line = "\n"; - my $last_total_line = "\n"; - my $count = 0; - for (my $i = 0; $i < 10; $i++) { - last if ! $vals->{table}[$i]; - $count++; - } - - $saved{num_columns} = $count; - $Values->{saved_report} = \%saved; - - for (my $i = 0; $i < $count; $i++) { - my $t = $vals->{table}[$i] or last; - my $c = $vals->{column}[$i]; - my $k = $vals->{key}[$i]; - my $h = $vals->{heading}[$i] || $c; - my $s = $vals->{summary}[$i]; - my $r = $vals->{filter}[$i]; - my $e = $vals->{edit}[$i]; - my $ek = $vals->{editkey}[$i] || ''; - if($r) { - $r =~ s/'/\\'/g; - $r =~ s/[\0 ]+/' '/g if $r; - $r = "'$r'"; - } - my $l = "ALIGN=$vals->{align}[$i]"; - $header .= "\t\n"; - my $data; - if($k) { - $data = "[data table=$t column=$c key='[item-data $current_table $k]']"; - } - else { - $data = "[item-data $current_table $c]"; - } - if($e) { - $ek = $ek ? "[item-data $t $ek]" : $data; - } - unless($summary_only) { - $page .= "\t\n"; - $last_foot_change{$_} .= "\n"; - } - if($s) { - $summary_found = 1; - $page .= qq{[item-exec summary]$t.$c ADD $data} . '[/item-exec]'; - for(@breaks) { - $page .= qq{[item-exec summary]$t.$c.$_ ADD $data} . '[/item-exec]'; - } - $total_line .= qq{}; - $total_line .= qq{[item-filter $r]} if $r; - $total_line .= "[item-exec summary]$t.$c TOTAL[/item-exec]\n"; - $total_line .= qq{[/item-filter]} if $r; - $total_line .= qq{}; - $last_total_line .= qq{}; - $last_total_line .= qq{[filter op="$r" interpolate=1]} if $r; - $last_total_line .= '[calc]$total' . "{'$t.$c'}" . "[/calc]\n"; - $last_total_line .= qq{[/filter]} if $r; - $last_total_line .= qq{}; - } - $total_line .= "\n"; - $last_total_line .= "\n"; - $page .= "\n" unless $summary_only; - } - if($summary_found) { - $page .= <<'EOF'; -[item-sub summary] - my $string = shift; - $string =~ s/^\s+//; - my ($name, $function, $value) = split /\s+/, $string; - if ($function eq 'ADD') { - $subtotal{$name} += $value; - $total{$name} += $value; - return; - } - my $result; - if ($function eq 'SUBTOTAL') { - $result = $subtotal{$name}; - $subtotal{$name} = 0 - unless $value eq 'SHOW'; - } - elsif ($function eq 'TOTAL') { - $result = $total{$name}; - $total{$name} = $subtotal{$name} = 0 - unless $value eq 'SHOW'; - } - return $result; -[/item-sub] -EOF - } - $page .= "\n" unless $summary_only; - $header .= "\n"; - $total_line .= "\n"; - $Scratch->{search_string} = join "\n\t\t", '', @string, ''; - if( scalar(@breaks) and ! $summary_only ) { - $Scratch->{search_page} = ''; - } - else { - $Scratch->{search_page} = $header; - } - $header = '' if $summary_only; - $Scratch->{search_page} = scalar(@breaks) ? '' : $header; - for (reverse @breaks) { - $Scratch->{search_page} .= "[set first_done_$_][/set]\n"; - $foot_change{$_} .= ""; - $efoot_change{$_} = "\n$header\n$efoot_change{$_}\n"; - $header = ''; - } - $Scratch->{search_page} .= "[search-list]\n"; - for (@breaks) { - $Scratch->{search_page} .= $hfoot_change{$_}; - $Scratch->{search_page} .= $foot_change{$_}; - $Scratch->{search_page} .= $efoot_change{$_}; - $Scratch->{search_page} .= "\n[set first_done_$_]1[/set]\n"; - } - $Scratch->{search_page} .= $page; - for (@breaks) { - $Scratch->{search_page} .= qq{[value name=prev_data_$_ hide=1 set=|}; - $Scratch->{search_page} .= qq{[item-data $current_table $_]}; - $Scratch->{search_page} .= qq{|]}; - } - $Scratch->{search_page} .= "\n[/search-list]\n"; - for (@breaks) { - $Scratch->{search_page} .= $last_foot_change{$_}; - } - $Scratch->{search_page} .= $last_total_line if $summary_found; - if($CGI->{matchlimit}) { - $Scratch->{search_page} .= ""; - $count--; - $Scratch->{search_page} .= < - - - -[/more-list] -EOF - } - return; -[/perl] -[comment] - -string: [scratch search_string] -page: [scratch search_page] - -[/comment] - -[if cgi generate_page] -[set write_report] -[seti name=tables][list-databases][/seti] -success=[perl table="[scratch tables]"] - my $data = $CGI->{page}; - $data =~ s/[/[/g; - $data =~ s/\r//g; - my $page = $CGI->{report_name}; - return 0 unless ($page and $data); - $CGI->{definition} =~ s/\r//g; - $def = '['; - $def .= <{saved_report} = $CGI->{definition}; - return; -EOF - $def .= '['; - $def .= '/perl]'; - $def .= "[bounce href='[area __UI_BASE__/report]']\n"; - $page =~ s/([^-\w.])/sprintf '%%%02x', ord($1)/ge; - if($Tag->if_mm('super')) { - $save_dir = ''; - } - else { - $save_dir = "/user/$Session->{username}"; - } - $status = $Tag->write_relative_file("pages/__UI_BASE__$save_dir/report_def/$page.html", $def); - $status &&= $Tag->write_relative_file("pages/__UI_BASE__$save_dir/reports/$page.html", $data); - delete $CGI->{page}; - delete $CGI->{def}; - return $status; -[/perl] -[/set] -
    - - -Report name:
    - - -


    - -[else] -
    - - - - - - - - - - - - - -
    [if !session logged_in][else][/else][/if]
    -
    -     - Welcome to Construct Something, - - [if !session logged_in] - your online hardware store! - [else] - [data table=userdb column=fname key='[data session username]']! - [/else] - [/if] - -
    -
    -
    -
    -
    - - - - -
    -
    - - - - - - -
      diff --git a/dist/construct/tmp/.empty b/dist/construct/tmp/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/construct/tmp/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/construct/upload/.empty b/dist/construct/upload/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/construct/upload/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/error.log b/dist/error.log deleted file mode 100644 index 8b1378917..000000000 --- a/dist/error.log +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/etc/.empty b/dist/etc/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/etc/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/interchange.cfg.dist b/dist/interchange.cfg.dist deleted file mode 100644 index 7ae870c95..000000000 --- a/dist/interchange.cfg.dist +++ /dev/null @@ -1,60 +0,0 @@ -#Catalog simple /home/mike/catalogs/simple /cgi-bin/simple /secure-bin/simple - -# Set to 1 to include UI -Variable UI 1 - -# Set to "low" or "high" to get different server parameters -Variable TRAFFIC low -#Variable TRAFFIC high - -#Uncomment to log to debug file /tmp/mvdebug -#Variable DEBUG 1 - -Environment MOD_PERL - -# You can set the Variable DEBUG above then tail -f the DebugFile -# You can also see Interchange and catalog data structures -#ifdef @DEBUG -Message Sending debug to /tmp/mvdebug. -DebugFile /tmp/mvdebug -GlobalSub sub test_global_sub { return 'Test of global subroutine OK.' } -Variable TEST_VARIABLE Test of global variable OK. -#endif - -#ifdef TRAFFIC =~ /low/i -Message Low traffic settings. -HouseKeeping 3 -MaxServers 5 -PIDcheck 300 -#endif - -#ifdef TRAFFIC =~ /high/i -Message High traffic settings. -HouseKeeping 2 -MaxServers 10 -PIDcheck 120 -#endif - -# No real downside to adding this.... -Mall Yes - -# Additional Safe operations to untrap beyond the standard -# "ftfile sort" -SafeUntrap rand - -TcpMap 7786 - - -# Uses value of UI variable above -#ifdef UI -Message Calling UI.... -Variable UI_TAG_TITLE_BAR 1 -#include lib/UI/ui.cfg -#endif - -#### Now including individual usertag files - -#include usertag/* - - -### Include if you want non-English error messages. Not complete. -# #include locale.error diff --git a/dist/lib/UI/Primitive.pm b/dist/lib/UI/Primitive.pm deleted file mode 100644 index 68f70a28a..000000000 --- a/dist/lib/UI/Primitive.pm +++ /dev/null @@ -1,890 +0,0 @@ -#!/usr/bin/perl - -# Copyright (C) 1998-2000 Akopia, Inc. - -# Author: Michael J. Heins -# Former maintainer: Stefan Hornburg - -# This file is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation; either version 2, or (at your option) any -# later version. - -# This file is distributed in the hope that it will be -# useful, but WITHOUT ANY WARRANTY; without even the implied warranty -# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this file; see the file COPYING. If not, write to the Free -# Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. - -my($order, $label, %terms) = @_; - -package UI::Primitive; - -$VERSION = substr(q$Revision: 1.21 $, 10); -$DEBUG = 0; - -use vars qw! - @EXPORT @EXPORT_OK - $VERSION $DEBUG - $DECODE_CHARS - !; - -use File::Find; -use File::CounterFile; -use Text::ParseWords; -use Exporter; -use strict; -use Vend::Util qw/errmsg/; -$DECODE_CHARS = qq{&[<"\000-\037\177-\377}; - -@EXPORT = qw( ui_check_acl ui_acl_enabled ) ; - -=head1 NAME - -Primitive.pm -- Interchange Configuration Manager Primitives - -=head1 SYNOPSIS - -display_directive %options; - -=head1 DESCRIPTION - -The Interchange UI is an interface to configure and administer Interchange catalogs. - -=cut - -my $ui_safe = new Safe; -$ui_safe->untrap(@{$Global::SafeUntrap}); - -sub is_super { -#::logDebug("called is_super"); - return 0 if ! $Vend::Session->{logged_in}; -#::logDebug("is_super: logged in"); - return 0 if ! $Vend::username; - return 0 if $Vend::Cfg->{AdminUserDB} and ! $Vend::admin; -#::logDebug("is_super: have username"); - my $db = Vend::Data::database_exists_ref( - $Vend::Cfg->{Variable}{UI_ACCESS_TABLE} || 'access' - ); - return 0 if ! $db; -#::logDebug("is_super: access db exists"); - $db = $db->ref(); - my $result = $db->field($Vend::username, 'super'); -#::logDebug("is_super: result=$result"); - return $result; -} - -sub is_logged { -#::logDebug("is_logged check"); - return 0 if ! $Vend::Session->{logged_in}; -#::logDebug("is_logged logged_in=ok"); - return 0 unless $Vend::admin or ! $Vend::Cfg->{AdminUserDB}; -#::logDebug("is_logged admin=ok"); - return 1; -} - -my %wrap_dest; -my $compdb; - -sub ui_wrap { - my $path = shift; - if($CGI::values{ui_destination}) { - my $sub = $wrap_dest{$CGI::values{ui_destination}} || return 1; - return $sub->($path); - } - $Vend::Cfg->{VendURL} .= '/ui_wrap'; - $UI::Editing = \&resolve_var; - $compdb = ::database_exists_ref($::Variable->{UI_COMPONENT_TABLE} ||= 'component'); - $path =~ s:([^/]+)::; - $Vend::RedoAction = 1; - my $snoop = $1; - return $snoop; -} - -sub wrap_edit { - package Vend::Interpolate; - my $name = shift; -#::logGlobal("entering wrap_edit $name"); - my $ref; - if ($compdb->record_exists($name)) { - $ref = $compdb->row_hash($name); - } - else { - return $::Variable->{$name} if ! $::Variable->{$name}; - $ref = { variable => $::Variable->{$name} }; - } - if ($ref->{variable} =~ s/^(\s*\[)include(\s+)/$1 . 'file' . $2/e) { - $ref->{variable} = ::interpolate_html($ref->{variable}); - } - my $edit_link; - my $url = $Vend::Cfg->{VendURL}; - $url =~ s!/ui_wrap$!$::Variable->{UI_BASE} || $Global::Variable->{UI_BASE} || 'admin'!e; - $url .= "/"; - if(not $edit_link = $::Variable->{UI_EDIT_LINK}) { - my $url = Vend::Interpolate::tag_area( - "$::Variable->{UI_BASE}/compedit", - $name, - ); - $url =~ s:/ui_wrap/:/:; - $edit_link = <edit -EOF - chop $edit_link; - } - my $out = <{ui_component} || ''; - \$Scratch->{ui_component} = q{$name}; return; [/calc] -EOF - chop $out; - - for( qw/preedit preamble variable postamble postedit/ ) { - $out .= $ref->{$_}; - } - $out .= qq{[calc] \$Scratch->{ui_component} = pop \@\$C_stack; return; [/calc]}; - $out =~ s:\[comment\]\s*\$EDIT_LINK\$\s*\[/comment\]:$edit_link:; -#::logGlobal("returning wrap_edit $out"); - return $out; -} - -sub resolve_var { - my ($name, $ref) = @_; - if ($compdb) { - return wrap_edit($name); - } - return $ref->{$name} if $ref and defined $ref->{$name}; - return $::Variable->{$name}; -} - -sub ui_acl_enabled { - my $try = shift; - my $table; - $Global::SuperUserFunction = \&is_super; - my $default = defined $Global::Variable->{UI_ACL} - ? (! $Global::Variable->{UI_ACL}) - : 1; - $table = $::Variable->{UI_ACCESS_TABLE} || 'access'; - $Vend::WriteDatabase{$table} = 1; - my $db = Vend::Data::database_exists_ref($table); - return $default unless $db; - $db = $db->ref() unless $Vend::Interpolate::Db{$table}; - my $uid = $try || $Vend::username || $CGI::remote_user; -#::logDebug("ACL enabled try uid=$uid"); - if(! $uid or ! $db->record_exists($uid) ) { - return 0; - } -#::logDebug("ACL enabled record exists uid=$uid"); - my $ref = $db->row_hash($uid) - or die "Bad database record for $uid."; -#::logDebug("ACL enabled, table_control=$ref->{table_control}"); - if($ref->{table_control}) { - $ref->{table_control_ref} = $ui_safe->reval($ref->{table_control}); - } - return $ref if $try; - $Vend::UI_entry = $ref; -} - -sub get_ui_table_acl { - my ($table, $user, $keys) = @_; - $table = $::Values->{mv_data_table} unless $table; -#::logDebug("Call get_ui_table_acl: " . Vend::Util::uneval_it(\@_)); - my $acl_top; - if($user and $user ne $Vend::username) { - if ($Vend::UI_acl{$user}) { - $acl_top = $Vend::UI_acl{$user}; - } - else { - my $ui_table = $::Variable->{UI_ACCESS_TABLE} || 'access'; - my $acl_txt = Vend::Interpolate::tag_data($ui_table, 'table_control', $user); - return undef unless $acl_txt; - $acl_top = $ui_safe->reval($acl_txt); - return undef unless ref($acl_top); - } - $Vend::UI_acl{$user} = $acl_top; - return keys %$acl_top if $keys; - return $acl_top->{$table}; - } - else { - unless ($acl_top = $Vend::UI_entry) { -#::logDebug("Call get_ui_table_acl: acl_top=" . ::uneval($acl_top)); - return undef unless ref($acl_top = ui_acl_enabled()); - } - } - return undef unless defined $acl_top->{table_control_ref}; - return $acl_top->{table_control_ref}{$table}; -} - -sub ui_acl_grep { - my ($acl, $name, @entries) = @_; -#::logDebug("Call ui_acl_grep: " . ::uneval(\@_)); - my $val; - my %ok; - @ok{@entries} = @entries; - if($val = $acl->{owner_field} and $name eq 'keys') { - my $u = $Vend::username; - my $t = $acl->{table} - or do{ - ::logError("no table name with owner_field."); - return undef; - }; - for(@entries) { - - my $v = ::tag_data($t, $val, $_); -#::logDebug("ui_acl_grep owner: t=$t f=$val k=$_ v=$v u=$u"); - $ok{$_} = $v eq $u; - } - } - else { - if($val = $acl->{"no_$name"}) { - for(@entries) { - $ok{$_} = ! ui_check_acl($_, $val); - } - } - if($val = $acl->{"yes_$name"}) { - for(@entries) { - $ok{$_} &&= ui_check_acl($_, $val); - } - } - } - return (grep $ok{$_}, @entries); -} - -sub ui_acl_atom { - my ($acl, $name, $entry) = @_; - my $val; - my $status = 1; - if($val = $acl->{"no_$name"}) { - $status = ! ui_check_acl($entry, $val); - } - if($val = $acl->{"yes_$name"}) { - $status &&= ui_check_acl($entry, $val); - } - return $status; -} - -sub ui_extended_acl { - my ($item, $string) = @_; - $string = " $string "; -#::logDebug("extended acl string='$string'"); - my ($name, $sub) = split /=/, $item, 2; -#::logDebug("extended acl: name=$name sub=$sub"); -#::logDebug("extended acl trying /[\s,]!${name}\[,\s]/"); - return 0 if $string =~ /[\s,]!$name(?:[,\s])/; -#::logDebug("extended acl passed /[\s,]!${name}\[,\s]/"); -#::logDebug("extended acl trying /[\s,]${name}\[,\s]/"); - return 1 if $string =~ /[\s,]$name(?:[,\s])/; -#::logDebug("extended acl passed /[\s,]${name}\[,\s]/"); - my (@subs) = split //, $sub; - for(@subs) { -#::logDebug("extended acl trying /[\s,]!$name=[^,\s]*$sub/"); - return 0 if $string =~ /[\s,]!$name=[^,\s]*$sub/; -#::logDebug("extended acl passed /[\s,]!$name=[^,\s]*$sub/"); -#::logDebug("extended acl trying /[\s,]$name=[^,\s]*$sub/"); - return 0 unless $string =~ /[\s,]$name=[^,\s]*$sub/; -#::logDebug("extended acl passed /[\s,]$name=[^,\s]*$sub/"); - } - return 1; -} - -sub ui_check_acl { - my ($item, $string) = @_; -#::logDebug("checking item=$item"); - return ui_extended_acl(@_) if $item =~ /=/; - $string = " $string "; - return 0 if $string =~ /[\s,]!$item[=,\s]/; - return 1 if $string =~ /[\s,]$item[=,\s]/; - return ''; -} - -sub ui_acl_global { - my $record = ui_acl_enabled(); - # First we see if we have ACL enforcement enabled - # If you don't, then people can do anything! - unless (ref $record) { - $::Scratch->{mv_data_enable} = $record; - return; - } - my $enable = delete $::Scratch->{mv_data_enable} || 1; - my $CGI = \%CGI::values; - my $Tag = new Vend::Tags; - $CGI->{mv_todo} = $CGI->{mv_doit} - if ! $CGI->{mv_todo}; - if( $Tag->if_mm('super')) { - $::Scratch->{mv_data_enable} = $enable; - return; - } - - if( $CGI->{mv_todo} eq 'set' ) { - undef $::Scratch->{mv_data_enable}; - my $mml_enable = $Tag->if_mm('functions', 'mml'); - my $html_enable = ! $Tag->if_mm('functions', 'no_html'); - my $target = $CGI->{mv_data_table}; - $Vend::WriteDatabase{$target} = 1; - my $db = Vend::Data::database_exists_ref($target); - if(! $db) { - $::Scratch->{ui_failure} = "Table $target doesn't exist"; - return; - } - - my $keyname = $CGI->{mv_data_key}; - if ($CGI->{mv_auto_export} - and $Tag->if_mm('!tables', undef, { table => "$target=x" }, 1) ) { - $::Scratch->{ui_failure} = "Unauthorized to export table $target"; - $CGI->{mv_todo} = 'return'; - return; - } - if ($Tag->if_mm('!tables', undef, { table => "$target=e" }, 1) ) { - $::Scratch->{ui_failure} = "Unauthorized to edit table $target"; - $CGI->{mv_todo} = 'return'; - return; - } - - my @codes = grep /\S/, split /\0/, $CGI->{$keyname}; - for(@codes) { - unless( $db->record_exists($_) ) { - next if $Tag->if_mm('tables', undef, { table => "$target=c" }, 1); - $::Scratch->{ui_failure} = "Unauthorized to insert to table $target"; - $CGI->{mv_todo} = 'return'; - return; - } - next if $Tag->if_mm('keys', $_, { table => $target }, 1); - $CGI->{mv_todo} = 'return'; - $::Scratch->{ui_failure} = errmsg("Unauthorized for key %s", $_); - return; - } - - my @fields = grep /\S/, split /[,\s\0]+/, $CGI->{mv_data_fields}; - for(@fields) { - $CGI->{$_} =~ s/\[/[/g unless $mml_enable; - $CGI->{$_} =~ s/\if_mm('columns', $_, { table => $target }, 1); - $CGI->{mv_todo} = 'return'; - $::Scratch->{ui_failure} = errmsg("Unauthorized for key %s", $_); - return; - } - - $::Scratch->{mv_data_enable} = $enable; - } - elsif ($CGI->{mv_todo} eq 'deliver') { - if($Tag->if_mm('files', $CGI->{mv_data_file}, {}, 1 ) ) { - $::Scratch->{mv_deliver} = $CGI->{mv_data_file}; - } - else { - $::Scratch->{ui_failure} = errmsg( - "Unauthorized for file %s", - $CGI->{mv_data_file}, - ); - } - } - return; - -} - -sub list_keys { - my $table = shift; - my $opt = shift; -#::logDebug("list-keys $table"); - $table = $::Values->{mv_data_table} - unless $table; -#::logDebug("list-keys $table"); - my @keys; - my $record; - if(! ($record = $Vend::UI_entry) ) { - $record = ui_acl_enabled(); - } - - my $acl; - my $keys; - if($record) { -#::logDebug("list_keys: record=$record"); - $acl = get_ui_table_acl($table); -#::logDebug("list_keys table=$table: acl=$acl"); - if($acl and $acl->{yes_keys}) { -#::logDebug("list_keys table=$table: yes.keys enabled"); - @keys = grep /\S/, split /\s+/, $acl->{yes_keys}; - } - } - unless (@keys) { - my $db = Vend::Data::database_exists_ref($table); - return '' unless $db; - $db = $db->ref() unless $Vend::Interpolate::Db{$table}; - my $keyname = $db->config('KEY'); - if($db->config('LARGE')) { - return ::errmsg('--not listed, too large--'); - } - my $query = "select $keyname from $table order by $keyname"; -#::logDebug("list_keys: query=$query"); - $keys = $db->query( - { - query => $query, - ml => $::Variable->{UI_ACCESS_KEY_LIMIT} || 500, - st => 'db', - } - ); - if(defined $keys) { - @keys = map {$_->[0]} @$keys; - } - else { - my $k; - while (($k) = $db->each_record()) { - push(@keys, $k); - } - if( $db->numeric($db->config('KEY')) ) { - @keys = sort { $a <=> $b } @keys; - } - else { - @keys = sort @keys; - } - } -#::logDebug("list_keys: query=returned " . ::uneval(\@keys)); - } - if($acl) { -#::logDebug("list_keys acl: ". ::uneval($acl)); - @keys = UI::Primitive::ui_acl_grep( $acl, 'keys', @keys); - } - my $joiner = $opt->{joiner} || "\n"; - return join($joiner, @keys); -} - -sub list_tables { - my $opt = shift; - my @dbs; - my $d = $Vend::Cfg->{Database}; - @dbs = sort keys %$d; - my @outdb; - my $record = ui_acl_enabled(); - undef $record - unless ref($record) - and $record->{yes_tables} || $record->{no_tables}; - - for(@dbs) { - next if $::Values->{ui_tables_to_hide} =~ /\b$_\b/; - if($record) { - next if $record->{no_tables} - and ui_check_acl($_, $record->{no_tables}); - next if $record->{yes_tables} - and ! ui_check_acl($_, $record->{yes_tables}); - } - push @outdb, $_; - } - - @dbs = $opt->{nohide} ? (@dbs) : (@outdb); - $opt->{joiner} = " " if ! $opt->{joiner}; - - my $string = join $opt->{joiner}, grep /\S/, @dbs; - if(defined $::Values->{mv_data_table}) { - return $string unless $d->{$::Values->{mv_data_table}}; - my $size = -s $Vend::Cfg->{ProductDir} . - "/" . $d->{$::Values->{mv_data_table}}{'file'}; - $size = 3_000_000 if $size < 1; - $::Values->{ui_too_large} = $size > 100_000 ? 1 : ''; - $::Values->{ui_way_too_large} = $size > 2_000_000 ? 1 : ''; - local($_) = $::Values->{mv_data_table}; - $::Values->{ui_rotate_spread} = $::Values->{ui_tables_to_rotate} =~ /\b$_\b/; - } - return $string; -} - -sub list_images { - my ($base) = @_; - return undef unless -d $base; - my $suf = '\.(GIF|gif|JPG|JPEG|jpg|jpeg|png|PNG)'; - my @names; - my $wanted = sub { - return undef unless -f $_; - return undef unless /$suf$/o; - my $n = $File::Find::name; - $n =~ s:^$base/?::; - push(@names, $n); - }; - find($wanted, $base); - return sort @names; -} - -sub list_glob { - my($spec, $prefix) = @_; - my $globspec = $spec; - if($prefix) { - $globspec =~ s:^\s+::; - $globspec =~ s:\s+$::; - $globspec =~ s:^:$prefix:; - $globspec =~ s:\s+: $prefix:g; - } - my @files = glob($globspec); - if($prefix) { - @files = map { s:^$prefix::; $_ } @files; - } - return @files; -} - -sub list_pages { - my ($keep, $suf, $base) = @_; - $suf = $Vend::Cfg->{StaticSuffix} if ! $suf; - $base = Vend::Util::catfile($Vend::Cfg->{VendRoot}, $base) if $base; - $base = $Vend::Cfg->{PageDir} if ! $base; - my @names; - my $wanted = sub { - if(-d $_ and $Vend::Cfg->{AdminPage}{$_}) { - $File::Find::prune = 1; - return; - } - return undef unless -f $_; - return undef unless /$suf$/; - my $n = $File::Find::name; - $n =~ s:^$base/?::; - $n =~ s/$suf$// unless $keep; - push(@names, $n); - }; - find($wanted, $base); - return sort @names; -} - -my %Break = ( - 'variable' => 1, - 'subroutine' => 1, - -); - -my %Format_routine; - -sub rotate { - my($base, $options) = @_; - - unless ($base) { - ::logError( errmsg("%s: called rotate without file.", caller() ) ); - return undef; - } - - if(! $options) { - $options = {}; - } - elsif (! ref $options) { - $options = {Motion => 'unsave'}; - } - - - my $dir = '.'; - - if( $options->{Directory} ) { - $dir = $options->{Directory}; - } - - if ($base =~ s:(.*)/:: ) { - $dir .= "/$1"; - } - - my $motion = $options->{Motion} || 'save'; - -#::logDebug( "rotate $base with options dir=$dir motion=$motion from >> " . ::uneval($options)); - - $dir =~ s:/+$::; - - if("\L$motion" eq 'save' and ! -f "$dir/$base+") { - require File::Copy; - File::Copy::copy("$dir/$base", "$dir/$base+") - or die "copy $dir/$base to $dir/$base+: $!\n"; - } - - opendir(forwardDIR, $dir) || die "opendir $dir: $!\n"; - my @files; - @files = grep /^$base/, readdir forwardDIR; - my @forward; - my @backward; - my $add = '-'; - - if("\L$motion" eq 'save') { - @backward = grep s:^($base\++):$dir/$1:, @files; - @forward = grep s:^($base-+):$dir/$1:, @files; - } - elsif("\L$motion" eq 'unsave') { - return 0 unless -f "$dir/$base-"; - @forward = grep s:^($base\++):$dir/$1:, @files; - @backward = grep s:^($base-+):$dir/$1:, @files; - $add = '+'; - } - else { - die "Bad motion: $motion"; - } - - $base = "$dir/$base"; - -#::logDebug( "rotate $base with options dir=$dir motion=$motion from >> " . ::uneval($options)); - - my $base_exists = -f $base; - push @forward, $base if $base_exists; - - for(reverse sort @forward) { - next unless -f $_; - rename $_, $_ . $add or die "rename $_ => $_+: $!\n"; - } - - #return 1 unless $base_exists && @backward; - - @backward = sort @backward; - - unshift @backward, $base; - my $i; - for($i = 0; $i < $#backward; $i++) { - rename $backward[$i+1], $backward[$i] - or die "rename $backward[$i+1] => $backward[$i]: $!\n"; - } - - if($options->{Touch}) { - my $now = time(); - utime $now, $now, $base; - } - return 1; -} - -my @t = localtime(); - -my (@years) = ( $t[5] + 1899 .. $t[5] + 1910 ); -my (@months); -my (@days); - -for(1 .. 12) { - $t[4] = $_ - 1; - push @months, [sprintf("%02d", $_), POSIX::strftime("%B", @t)]; -} - -for(1 .. 31) { - push @days, [sprintf("%02d", $_), $_]; -} - -sub date_widget { - my($name, $val) = @_; - if($val =~ /\D/) { - $val = Vend::Interpolate::filter_value('date_change', $val); - } - @t = localtime(); - $val = POSIX::strftime("%Y%m%d", @t) if not $val; - my $sel = 0; - my $out = qq{}; - $out .= qq{}; - $out .= qq{}; - $out .= qq{}; - $out .= qq{}; -} - -my $base_entry_value; - -sub meta_display { - my ($table,$column,$key,$value,$meta_db,$query,$o) = @_; - -#::logDebug("metadisplay: t=$table c=$column k=$key v=$value md=$meta_db"); - my $metakey; - $meta_db = $::Variable->{UI_META_TABLE} || 'mv_metadata' if ! $meta_db; - $o = {} if ! ref $o; -#::logDebug("metadisplay: t=$table c=$column k=$key v=$value opt=" . ::uneval_it($o)); - my $meta = Vend::Data::database_exists_ref($meta_db) - or return undef; - $meta = $meta->ref(); - if($column eq $meta->config('KEY')) { - $base_entry_value = $value; - } -#::logDebug("metadisplay: got meta ref=$meta"); - my $tag = ''; - if($o->{arbitrary}) { - $tag = "$o->{arbitrary}::"; - } - my (@tries) = "$tag${table}::$column"; - if($key) { - # Don't think we need table::key combo anymore.... - # unshift @tries, "$tag${table}::${column}::$key", "$tag${table}::$key"; - unshift @tries, "$tag${table}::${column}::$key"; - } - if($tag and $o->{fallback}) { - push @tries, "${table}::${column}::$key", "${table}::${column}"; - } - - my $sess = $Vend::Session->{mv_metadata} || {}; - for $metakey (@tries) { -#::logDebug("enter metadisplay record $metakey"); - my $record; - unless ( $record = $sess->{$metakey} and ref $record ) { - next unless $meta->record_exists($metakey); - $record = $meta->row_hash($metakey); - } - if($query) { - return $record->{query}; - } -#::logDebug("metadisplay record: " . Vend::Util::uneval_it($record)); - my $opt; - if($record->{options} and $record->{options} =~ /^[\w:]+$/) { - PASS: { - my $passed = $record->{options}; -#::logDebug("passed = '$passed'"); - - if($passed eq 'tables') { - $record->{passed} = list_tables({ joiner => ',' }); - } - elsif($passed =~ /^columns(::(\w*))?$/) { - my $total = $1; - my $tname = $2 || $record->{db} || $table; - $tname = $base_entry_value if $total eq '::'; -#::logDebug("tname=$tname total=$total"); - my $db = $Vend::Database{$tname}; - $record->{passed} = join (',', $db->columns()) - if $db; - } - elsif($passed =~ /^keys(::(\w+))?$/) { - my $tname = $2 || $record->{db} || $table; - $record->{passed} = list_keys($tname, { joiner => ',' }); - } - } - } - if($record->{pre_filter}) { - $value = Vend::Interpolate::filter_value($record->{pre_filter}, $value); - } - if($record->{lookup}) { - my $fld = $record->{field} || $record->{lookup}; - my $key = $record->{lookup}; - LOOK: { - my $dbname = $record->{db} || $table; - my $db = Vend::Data::database_exists_ref($dbname); - last LOOK unless $db; - my $query = "select DISTINCT $key, $fld FROM $dbname ORDER BY $fld"; - my $ary = $db->query($query); - last LOOK unless ref($ary); - if(! scalar @$ary) { - push @$ary, ["=--no current values--"]; - } - undef $record->{type} unless $record->{type} =~ /multi|combo/; - my $sub; - if($record->{lookup_exclude}) { - eval { - $sub = sub { $_[0] !~ m{$record->{lookup_exclude}}o }; - }; - if ($@) { - ::logError(errmsg( - "Bad lookup pattern m{%s}: %s", - $record->{exclude}, - $@, - )); - $sub = \&CORE::length; - } - } - $sub = sub { length(@_) } if ! $sub; - $record->{passed} = join ",", grep $sub->($_), - map - { $_->[1] =~ s/,/,/g; $_->[0] . "=" . $_->[1]} - @$ary; - if($record->{options}) { - $record->{passed} = - join ",", $record->{options}, $record->{passed}; - } - $record->{passed} = "=--no current values--" - if ! $record->{passed}; - } - } - elsif ($record->{type} eq 'date') { - my $w = date_widget($column, $value); - $w .= qq{}; - return $w unless $o->{template}; - return ($w, $record->{label}, $record->{help}, $record->{help_url}); - } - elsif ($record->{type} eq 'imagedir') { - my $dir = $record->{'outboard'} || $column; - my @files = list_images($dir); - $record->{type} = 'combo'; - $record->{passed} = join ",", - map { s/,/,/g; $_} @files; - $record->{append} = Vend::Util::resolve_links($record->{append}) - and $record->{append} =~ s/_UI_VALUE_/$value/g - and $record->{append} =~ s/_UI_TABLE_/$table/g - and $record->{append} =~ s/_UI_COLUMN_/$column/g - and $record->{append} =~ s/_UI_KEY_/$key/g - if $record->{append}; - - $record->{prepend} = Vend::Util::resolve_links($record->{prepend}) - and $record->{append} =~ s/_UI_VALUE_/$value/g - and $record->{append} =~ s/_UI_TABLE_/$table/g - and $record->{append} =~ s/_UI_COLUMN_/$column/g - and $record->{append} =~ s/_UI_KEY_/$key/g - if $record->{prepend}; - } - - if($record->{height}) { - if($record->{type} =~ /multi/i) { - $record->{type} = "MULTIPLE SIZE=$record->{height}"; - } - elsif ($record->{type} =~ /textarea/i) { - my $width = $record->{width} || 80; - $record->{type} = "textarea_" . $record->{height} . '_' . $width; - } - } - elsif ($record->{width}) { - if($record->{type} =~ /textarea/) { - $record->{type} = "textarea_2_" . $record->{width}; - } - elsif($record->{type} =~ /text/) { - $record->{type} = "text_$record->{width}"; - } - elsif($record->{type} =~ /radio|check/) { - $record->{type} =~ s/(left|right)[\s_]*\d*/$1 $record->{width}/; - } - } - - $opt = { - attribute => ($record->{'attribute'} || $column), - table => ($record->{'db'} || $meta_db), - column => ($record->{'field'} || 'options'), - name => ($o->{'name'} || $record->{'name'} || $column), - outboard => ($record->{'outboard'} || $metakey), - passed => ($record->{'passed'} || undef), - type => ($o->{type} || $record->{'type'} || undef), - prepend => ($record->{'prepend'} || undef), - append => ($record->{'append'} || undef), - }; -#::logDebug("going to display for $opt->{name}"); - my $w = Vend::Interpolate::tag_accessories( - undef, undef, $opt, { $column => $value } ); - my $filter; -#::logDebug("filters: o=$o->{filter} r=$record->{filter}"); - if($filter = ($o->{filter} || $record->{filter})) { - $w .= qq{'; - } -#::logDebug("template=$o->{template}"); - return $w unless $o->{template}; -#::logDebug("supposed to return template: widget=$w record=" . ::uneval_it($record)); - return ($w, $record->{label}, $record->{help}, $record->{help_url}); - } - return undef; -} - -1; - -__END__ - diff --git a/dist/lib/UI/pages/admin/access.html b/dist/lib/UI/pages/admin/access.html deleted file mode 100644 index 2630f350b..000000000 --- a/dist/lib/UI/pages/admin/access.html +++ /dev/null @@ -1,139 +0,0 @@ -[calc] $CGI->{no_dbmenu} = 1; $CGI->{access_menu} = 1; return [/calc] -[set page_title]Administrator Accounts[/set] -[set ui_class]Admin[/set] -[set page_perm]access=l[/set] -[set help_name]access.main[/set] -[set icon_name]admin/icon_config.gif[/set] - -@_UI_STD_HEAD_@ -[if scratch ui_message] -

    -

    - [scratch ui_message][set ui_message][/set] -
    -

    -  -[/if] - - -

    - - - - - - - -
    - - - - -[if-mm advanced access=c] - - - - - - - - -[/if-mm] - - - - - - - - - - - -
    - -[button text="Create new administrator" src="@_UI_IMG_@admin/create.gif"] -mv_nextpage=__UI_BASE__/user_edit -user_id=NEW -ui_hide_key=0 -[/button] - -
    - -[if-mm advanced access=e] - [button name=mv_junk value="Edit administrator" src="@_UI_IMG_@admin/edit.gif"][/button]

    -[/if-mm] - -[if-mm advanced perm=v] -[button value="Show permissions" src="@_UI_IMG_@admin/show.gif"] -mv_nextpage=__UI_BASE__/access_permissions -ui_return_to=@@MV_PAGE@@ -[/button]

    -[/if-mm] - -[if-mm advanced access=e] -[button value="Change password" src="@_UI_IMG_@admin/change_password.gif"] -mv_nextpage=__UI_BASE__/user_change_pass -ui_hide_key=0 -[/button] -

    [/if-mm] - -[if-mm advanced access=d] -[button text="Delete administrator" - form=accessform - confirm="Are you sure you want to delete this administrator?" - ] -mv_todo=return -mv_nextpage=@@MV_PAGE@@ -[flag type=write table="__UI_ACCESS_TABLE__"] -[perl table="__UI_ACCESS_TABLE__"] - my $db = $Db{__UI_ACCESS_TABLE__}; - if(! $db) { - $Scratch->{ui_message} = "Bad access table __UI_ACCESS_TABLE__"; - return; - } - unless ( $db->delete_record($CGI->{user_id}) ) { - $Scratch->{ui_message} = - "Failed to delete administrator $CGI->{user_id} from table __UI_ACCESS_TABLE__"; - return; - } - $Scratch->{ui_message} = - "Deleted administrator $CGI->{user_id} from table __UI_ACCESS_TABLE__"; - return; -[/perl] -[/button] -[/if-mm] - -

    - * superuser -
    - -

    - -[button text="Back"] -mv_todo=back -mv_nextpage=index -[/button] - -

    - -@_UI_STD_FOOTER_@ - - diff --git a/dist/lib/UI/pages/admin/access_permissions.html b/dist/lib/UI/pages/admin/access_permissions.html deleted file mode 100644 index b67123062..000000000 --- a/dist/lib/UI/pages/admin/access_permissions.html +++ /dev/null @@ -1,377 +0,0 @@ -[calc] - $CGI->{no_dbmenu} = 1; - $CGI->{access_menu} = 1; - $CGI->{mv_data_table} = $Values->{mv_data_table} = '__UI_ACCESS_TABLE__'; - $CGI->{user_id} = $Values->{user_id} if ! $CGI->{user_id}; - return; -[/calc] - -[if !cgi user_id] -[bounce page="__UI_BASE__/access"] -[/if] - -[seti page_title]Edit Permissions: [cgi user_id][/seti] -[set ui_class]Admin[/set] -[set page_perm]access=v[/set] -[set help_name]access.permissions[/set] -[set icon_name]admin/icon_config.gif[/set] - -[set process_perm] -[perl] - my @filters = grep /^ui_filter:/, keys %$CGI; - foreach my $key (@filters) { - my $val = delete $CGI->{$key}; - $key =~ s/ui_filter://; - next unless $val; - next unless defined $CGI->{$key}; - $CGI->{$key} = $Tag->filter($val, $CGI->{$key}, $key); - $CGI->{$key} = s/=$//; - } - - $CGI->{yes_functions} =~ s/\0//g; - $CGI->{yes_functions} =~ s/,/ /g; - $CGI->{yes_functions} =~ s/\w+=(?:\s+|$)//g; - - $CGI->{yes_tables} =~ s/\0//g; - $CGI->{yes_tables} =~ s/,/ /g; - $CGI->{yes_tables} =~ s/\w+=(?:\s+|$)//g; - $CGI->{yes_tables} =~ s/(\w+)=vecdix(\s+|$)/$1$2/g; - - $CGI->{no_tables} =~ s/\0/ /g; - - $CGI->{mv_todo} = 'set'; - $CGI->{mv_nextpage} = '@@MV_PAGE@@';# unless $CGI->{mv_nextpage}; - return; -[/perl] -[/set] - -@_UI_STD_HEAD_@ -[if scratch ui_message] -

    -

    - [scratch ui_message][set ui_message][/set] -
    -

    -  -[/if] - - - - -[if scratch ui_failure] - Failed: [scratch ui_failure][set ui_failure][/set]
    -[/if] - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - -[seti tables][list-databases][/seti] -[perl tables="__UI_META_TABLE__ __UI_ACCESS_TABLE__"] - - my @permissions = ( - item => 'Item editor', - page => 'Page editor', - cat => 'Category editor', - tax => 'Tax editor', - shipping => 'Shipping editor', - payment => 'Payment editor', - affiliate => 'Affiliates editor', - itemtype => 'Item type editor', - pagetype => 'Page type editor', - grouptype => 'Group type editor', - matrix => 'Matrix editor', - knar => 'Knar editor', - access => 'Administrator Permissions', - group => 'Access Group editor', - perm => 'Permission editor', - layout => 'Layout editor', - ); - my %extra = qw/userdb 1 order 1/; - my $current = tag_data('__UI_ACCESS_TABLE__', 'yes_functions', $CGI->{user_id}); - my $out = ''; - my @ary = grep /\S/, split /[\s,\0]+/, $current; - my @some = qw/l v e c d/; - my @more = qw/a u p/; - my @all = (@some, @more); - my %all; - @all{@some, @more} = (@some, @more); - $permref = {}; - foreach $one (@ary) { - $one =~ s/=(.*)//; - my $sub = $1 || undef; - my $ref = $permref->{$one} = {}; - my @set; - if ($sub) { - @set = grep $all{$_}, split //, $sub; - } - else { - @set = $extra{$one} ? @all : @some; - } - for(@set) { - $ref->{$_} = ' CHECKED'; - } - } - - my $string = $Tag->uneval( {ref=>$permref} ); -#DEBUG -# $out .= < -# -#EOF - - my $perm; - my $title; - while( $perm = shift @permissions) { - $title = shift @permissions; - my $ref = $permref->{$perm} || {}; - $out .= < - -EOF - for(@some) { - $out .= < -{$_}> - -EOF - } - $out =~ s!(<.td>\s*)$!$1!; - } - my $ref = $permref->{order}; - $out .= < - - - -
     View listView detailCreateEditDelete
    -#$string -# -$title - -
    - -
    - - - - - - - - - - - - - - - -EOF - return $out; -[/perl] - - - - - -
    -Order manager: - -
  • {l}> View list -
  • {v}> View single -
  • {d}> Delete -
  • {e}> Edit -
  • {c}> Input new -
  • {a}> Archive -
  • {u}> Un-archive - -

    -

  • -EOF - @permissions = ( - orderstats => 'Order statistics utility', - trafficstats => 'Traffic statistics utility', - env_vars => 'Environment variables utility', - stats => 'Stats menu', - techadmin => 'Techncal Admin menu', - sitedesign => 'Site Design menu', - config => 'Apply changes', - dbupload => 'Database importer', - dbdownload => 'Database exporter', - layupload => 'Layout importer', - laydownload => 'Layout exporter', - gensql => 'Direct SQL utility', - ); - while($perm = shift @permissions ) { - $title = shift @permissions; - my $on = defined $permref->{$perm} ? ' CHECKED' : ''; - $out .= < $title -EOF - } - $ref = $permref->{userdb}; - $out .= < -
    -Administrator Permissions: - -
  • {l}> View list -
  • {v}> View single -
  • {d}> Delete -
  • {e}> Edit -
  • {c}> Input new -
  • {p}> Mail password - -

    -

  • - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - -[perl] - - my $current = tag_data('__UI_ACCESS_TABLE__', 'yes_tables', $CGI->{user_id}) - || $Scratch->{tables}; - $current =~ s/\s+/ /g; - my $no = tag_data('__UI_ACCESS_TABLE__', 'no_tables', $CGI->{user_id}); - $no =~ s/\s+/ /g; - #Log("no = $no"); - my (@no) = split /\s+/, $no; - my %no; - for(@no) { $no{$_} = ' CHECKED' } - - my $out = ''; - my @ary = split /[\s,\0]+/, $current; - - #Log("ary = " . join ",", @ary); - #Log("no = " . join ",", @no); - my (@all) = qw/v e c d i x/; - my %all; - @all{@all} = @all; - my $permref = {}; - - my $one; - - foreach $one (@ary) { - $one =~ s/=(.*)//; - my $sub = $1 || undef; - next if $no{$one}; - my $ref = $permref->{$one} = {}; - my @set; - if ($sub) { - @set = grep $all{$_}, split //, $sub; - } - else { - @set = (@all); - } - for(@set) { - $ref->{$_} = ' CHECKED'; - } - } - - #my $string = "all=@all ". $Tag->uneval( { ref=> $permref } ); - - my @tables = split /\s+/, $Scratch->{tables}; - - for(@tables) { - push @permissions, $_, tag_data('__UI_META_TABLE__', 'label', $_) || $_; - } - - my $perm; - my $title; - while( $perm = shift @permissions) { - $title = shift @permissions; - my $ref = $permref->{$perm} || {}; - $out .= < - - -EOF - for(@all) { - $out .= < -{$_}> - -EOF - } - $out =~ s!(<.td>\s*)$!$1!; - } - #$Scratch->{string} = $string; - return $out; - [/perl] - - - - - -
    Table Permissions
     HIDEViewEditCreateDeleteImportExport
    -$title - - - -
    - - - -[button text="Cancel"] -mv_todo=back -mv_nextpage=[either][value-extended name=ui_return_to index=0][or]__UI_BASE__/access[/either] -mv_data_table=[cgi mv_data_table] -[/button] - -
    - -

    -@_UI_STD_FOOTER_@ - - diff --git a/dist/lib/UI/pages/admin/advanced.html b/dist/lib/UI/pages/admin/advanced.html deleted file mode 100644 index 38932a03c..000000000 --- a/dist/lib/UI/pages/admin/advanced.html +++ /dev/null @@ -1,116 +0,0 @@ -[set page_title]Advanced Tools[/set] -[set ui_class]Admin[/set] -[set page_banner]Advanced Tools[/set] -[set help_name]advanced.main[/set] -[set icon_name]admin/icon_config.gif[/set] -@_UI_STD_HEAD_@ - - - -

    -  -

    - - - - - - - - -[if-mm advanced export] - -[/if-mm] - -[if-mm advanced access] - -[/if-mm] - - - -[if-mm advanced env_vars] - -[/if-mm] - -[if-mm advanced gentable] - -[/if-mm] - -[if-mm advanced gensql] - -[/if-mm] - - - -[if-mm advanced knar] - -[/if-mm] - -[comment] - -[/comment] - - - -[comment] - -[/comment] - - - - - - - -
    - -Type editor
    -
    -
    - -Import / export

    - -

    - -Access manager
    -
    -
    - -Environment variables
    -
    -
    - -Direct Table Edit - -
    - -Direct SQL Utility - -
    - -Knar editor
    -
    -
    - -Technical settings - -
    - -Change preferences
    -
    -
    - -Logout and change username
    -
    -
    -
    - - - - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/affiliates.html b/dist/lib/UI/pages/admin/affiliates.html deleted file mode 100644 index c232cd8f4..000000000 --- a/dist/lib/UI/pages/admin/affiliates.html +++ /dev/null @@ -1,208 +0,0 @@ -[set page_title]Affiliates Manager[/set] -[set ui_class]Merchandising[/set] -[set help_name]affiliates.main[/set] -[set icon_name]admin/icon_config.gif[/set] - - - -[calc] - $CGI->{mv_data_table} = 'affiliate'; - return; [/calc] - - -[if-mm function="!tables" table="affiliate"] -[set ui_error]Not authorized to edit affiliates.[/set] -[bounce page="__UI_BASE__/error"] -[/if-mm] - -@_UI_STD_HEAD_@ -[update values] - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -[button text="New affiliate"] - item_id=new -[/button] -
    - - -
    - -[button text="Show Orders"] -affiliate=[cgi item_id] -mv_nextpage=__UI_BASE__/reports/order/ByAffiliate -[/button]
    - -[button text="Show Traffic"] -affiliate=[cgi item_id] -[tag time] -ui_begin_date=%Y%m -ui_end_date=%Y%mz -ui_by_day=1 -[/tag] -mv_nextpage=__UI_BASE__/reports/traffic/ByAffiliate -[/button]
    - -[button text="Delete affiliate" - confirm="Are you sure you want to delete this affiliate?"] - [flag type=write table="[cgi mv_data_table]"] - [set ui_error][/set] - - [if-mm function="!tables" table="[cgi mv_data_table]"] - [seti ui_error]Not authorized for table '[cgi mv_data_table]'.[/seti] - [/if-mm] - - [if !scratch ui_error] - [perl tables="[cgi mv_data_table]"] - unless ($db = $Db{$CGI->{mv_data_table}}) { - $Scratch->{ui_error} = "bad data table $CGI->{mv_data_table}"; - } - #Log("trying to delete $CGI->{item_id}"); - $db->delete_record($CGI->{item_id}) - or $Scratch->{ui_error} = "Failed to delete $CGI->{item_id}"; - return; - [/perl] - [/if] - - [if scratch ui_error] - mv_nextpage=__UI_BASE__/error - [else] - mv_nextpage=@@MV_PAGE@@ - [/else] - [/if] -[/button] - - - - -
    - -[if cgi ui_flex_key] -[seti keypos][cgi ui_flex_key][/seti] -[elsif type=data term="__UI_META_TABLE__::outboard::[cgi mv_data_table]"] -[seti keypos][data table=__UI_META_TABLE__ col=outboard key="[cgi mv_data_table]"][/seti] -[/elsif] -[else] -[set keypos]0[/set] -[/else] -[/if] - - -[calc] - $Config->{NoSearch} = ''; - if ($CGI->{ui_text_qualification}) { - $CGI->{ui_text_qualification} = "se=$CGI->{ui_text_qualification}"; - } - else { - $CGI->{ui_text_qualification} = "ra=yes"; - } - $CGI->{ui_description_field} = - q{[data table=__UI_META_TABLE__ - col=field - key="[cgi mv_data_table]" - ]}; - return; -[/calc] -[if cgi ui_description_field] - [loop more=1 - search=" - fi=[cgi mv_data_table] - st=db - [cgi ui_text_qualification] - su=1 - md=1 - tf=[cgi ui_description_field] - rf=[scratch keypos],[cgi ui_description_field] - "] -
    -
    -
    - [more-list]
    Too big for one page: [more][/more-list] - [/loop] -[else] - [loop more=1 - search=" - fi=[cgi mv_data_table] - st=db - ra=yes - md=1 - tf=0 - rf=0 - "] - - [more-list]
    Items [matches] of [value mv_search_match_count], pages: [more][/more-list] - [/loop] -[/else] -[/if] -
    - -
    - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/build_related.html b/dist/lib/UI/pages/admin/build_related.html deleted file mode 100644 index f4fe5668a..000000000 --- a/dist/lib/UI/pages/admin/build_related.html +++ /dev/null @@ -1,84 +0,0 @@ -[set page_title]Rebuild "Others who bought this" links[/set] -[set ui_class]Merchandising[/set] -[set page_perm]regen[/set] -[set help_name]merch.build_related[/set] -[set icon_name]admin/icon_config.gif[/set] - - - -@_UI_STD_HEAD_@ - - - - - - - - - - - - - - -
    - -[calc] - %sku = ( - [loop search=" - ra=yes - fi=merchandising - ml=100000 - rf=sku,others_bought - "][loop-calc] - my $ref = q[[loop-data merchandising others_bought]]; - return '' if $out !~ m/^\s*{/; - return < $ref, -EOF - [/loop-calc] - [/loop] - ) -[/calc] - -[perl tables="__UI_META_TABLE__ orderline merchandising"] - my $db = $Db{orderline}; - return "NO ORDERLINE table???!" if ! $db; - my $start = tag_data( qw/__UI_META_TABLE__ lookup_exclude orderline/ ); - my $query = "select code,order_number,sku from orderline "; - $query .= " where order_number > '$start'" if $start; - $query .= " order by code"; - my $ary = $db->query( { sql => $query } ); - for(@$ary) { - my ($line, $on, $sku) = @$_; - push @{$on{$on} ||= []}, $sku; - } - for(keys %on) { - my $ref = $on{$_}; - @ary = @$ref; - for(@ary) { - my $sku = $_; - $sku{$sku} = {} unless $sku{$sku}; - for (@ary) { - next if $_ eq $sku; - $sku{$sku}->{$_}++; - } - } - } - my $mdb = $Db{merchandising}; - for(sort keys %sku) { - my $val = $Tag->uneval( { ref => $sku{$_} } ); - $out .= "$_ ==> $val
    \n"; - $mdb->set_field($_, 'others_bought', $val ); - } - return $out; -[/perl] -
    - - - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/button_builder.html b/dist/lib/UI/pages/admin/button_builder.html deleted file mode 100644 index 7664b53a1..000000000 --- a/dist/lib/UI/pages/admin/button_builder.html +++ /dev/null @@ -1,277 +0,0 @@ -[set page_title]Button builder[/set] -[set ui_class]Design[/set] -[set help_name]button.builder[/set] -[set icon_name]admin/icon_pages.gif[/set] -[set mv_no_session_id][/set] -[set empty_basket] - [calc] - @{$Carts->{main}} = (); - return; - [/calc] -[/set] -@_UI_STD_HEAD_@ - - -[if scratch ui_failure] - Failed: - [scratch ui_failure][set ui_failure][/set]
    -[/if] - -

    - Empty basket -

    -[scratch test_button] - -

    -[comment]Below profile found in MV_ROOT/profiles[/comment] - - - - - - - - - - - - - -[scratch item_result] - - - - - - - - - - - - - - - - - - - - -[calc] - my $ary = $Config->{ProductFiles}; - return unless scalar @$ary > 1; - my $out = <<'EOF'; - - - - -EOF -[/calc] - - - - - - - - - - - -[loop prefix=macro list=`join "\n", @{$Config->{UseModifier}};`] - - - - - - - - - - -[if config OnFly] - - - - - - - - - -[/if] - -[comment] -[calc] - my $out = ''; - for(@{$Config->{UseModifier}}) { - $out .= < - - - -EOF - } - return $out; -[/calc] -[/comment] - - - - - - - - - -
    - -Build an order button or link - -
    -Type - - -
    -Item code - -[perl] - my $table = $Config->{ProductFiles}[0]; - $Scratch->{keypos} = $Config->{Database}{$table}{KEYINDEX} || '0'; - $Scratch->{flex_description} = $Config->{DescriptionField}; - return; -[/perl] -[loop more=1 - search=" - st=db - ra=yes - md=1 - tf=[scratch flex_description] - rf=[scratch keypos],[scratch flex_description] - " -] - -[more-list]
    Too big for one page: [more][/more-list] -[/loop] -
    -Or enter SKU: -
    -Specific Quantity - - - (Separate multiple quantities by commas) - -
    -A specific database - -
    -Separate line? - - - -
    -Group items? - - - (all items removed when first one is) -
    -[macro-code] (if any) - - -[/loop] -
    -Affiliate code - - - -
    -Description -
    -(on-the-fly only) -
    - -
    -Price -
    -(on-the-fly only) -
    - -
    -$_ (if any) - - - (Separate multiple values by commas) - -
    -Action - - -
    - -
    - -
    -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/change_t.pl b/dist/lib/UI/pages/admin/change_t.pl deleted file mode 100644 index a784c0535..000000000 --- a/dist/lib/UI/pages/admin/change_t.pl +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/perl -0777 -pi - -#s/

    \s* \s*//i; -s/

    \s* \s*/

    /i - or -s/

    \s* \s*/

    /i - or -s//
    /i - or -s//
    /i - ; - diff --git a/dist/lib/UI/pages/admin/compedit.html b/dist/lib/UI/pages/admin/compedit.html deleted file mode 100644 index 4571369ef..000000000 --- a/dist/lib/UI/pages/admin/compedit.html +++ /dev/null @@ -1,238 +0,0 @@ -[set page_title]Edit Page Component[/set] -[set ui_class]Design[/set] -[set help_name]page.main[/set] -[set icon_name]admin/icon_pages.gif[/set] -@_UI_STD_HEAD_@ - - - - - - -
    - - - -[perl tables="__UI_COMPONENT_TABLE__ __UI_META_TABLE__"] - my $ref; - my $ref_in_page; - my $t_name = ''; - my $cdb = $Db{__UI_COMPONENT_TABLE__}; - my $c_name; - - if($c_name = $Session->{arg}) { - if($cdb->record_exists($c_name)) { - } - else { - - } - $CGI->{ui_template} = $Tag->filter('filesafe', $CGI->{ui_template}); - my ($ary) = $Tag->read_ui_template($CGI->{ui_template}); - $ref = shift @$ary || {}; - $t_name = $CGI->{ui_template}; - $t_desc = $ref->{ui_template_description} || 'none'; - } - - my @choices = split /\s*\0\s*/, $CGI->{ui_page}; - my $page; - for(@choices) { - next if ! $_; - $page = $_; - $page .= $Config->{HTMLsuffix} if $page !~ /$Config->{HTMLsuffix}$/; - $page = "pages/$page" if $page !~ m(^pages/); - last; - } - - my $ary; - my $current = $Tag->file($page); - - # This call returns an array of hashes if exists - if($current) { - ($ary) = $Tag->read_ui_template($page); - if(ref $ary) { - $ref_in_page = shift (@$ary); - } - } - - if(! $ref and $ref_in_page) { - $ref = $ref_in_page; - } - elsif($ref_in_page) { - for(keys %$ref_in_page) { - $ref->{$_} = $ref_in_page->{$_}; - } - } - else { - $ref = {} if ! $ref; - $current !~ m{(.*)}is - and $current = "$current"; - } - - $t_name = $ref->{ui_template_name} || 'None' - if ! $t_name; - $t_desc = $ref->{ui_template_description} || 'n/a' - if ! $t_desc; - - my @def; - - foreach $e (keys %$ref) { - my $v = $ref->{$e}; - if(ref $v) { - for(keys %$v) { - push @def, "$e: $_ : $v->{$_}"; - } - } - else { - push @def, "$e: $v"; - } - } - my $def_string = join "\n", @def; - if($def_string) { - $def_string =~ s/"/"/g; - } - - my $r; - #Log("ui_control_element=$ref->{ui_control_element}"); - if ($r = $ref->{ui_control_element} and ref($r)) { - my $widget; - for(keys %$r) { - #Log("r key $_"); - my ($set) = $current =~ m{\[set\s+$_\](.*?)\[/set\]}; - my $t_set = $r->{$_}; - if($t_set =~ /=.*,.*=/) { - $widget = $Tag->widget( { - name => "ui_control_$_", - passed => $t_set, - default => $set, - }); - } - else { - my $val = $set || $t_set; - $val =~ s/"/"/g; - $widget = qq{}; - } - my $desc = $ref->{ui_control_description}{$_} || $_; - push @controls, [ $desc, $widget ]; - } - } - my $out = < - - - - - - - - - - - - - - - - - - - - - -EOF - - my $table_done; - for(@controls) { - $out .= < - - - - - -EOF - $out .= qq{}; - } - - if($current) { - $current =~ m{(.*)}is; - $content = $1 || ''; - } - $content =~ s/{ui_template_layout} = 'UI_CONTENT' - if ! $ref->{ui_template_layout}; - - $out .= < - - - - - - - - - - - - - -EOF - $out .= < - -EOF - return $out; -[/perl] - - - - - - - - - - - - - -
    Page file$page
    Template name$t_name
    Template description$t_desc
    - Template sequence
    -
    - UI_CONTENT is the content portion(s), all others refer - to Knar elements. -
    - Control elements - -
    $_->[0]$_->[1]
    - Content -
    - -
    -[set Preview] -mv_nextpage=__UI_BASE__/page_preview -[/set] - -[set Save] -mv_nextpage=__UI_BASE__/page_save -[/set] - -[set Cancel] -mv_nextpage=__UI_BASE__/page -mv_todo=back -[/set] - - - - -
    - - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/config.html b/dist/lib/UI/pages/admin/config.html deleted file mode 100644 index 893e6ac46..000000000 --- a/dist/lib/UI/pages/admin/config.html +++ /dev/null @@ -1,106 +0,0 @@ -[perl tables="variable"] - $CGI->{ui_no_meta_display} = ''; - $CGI->{mv_data_table} = 'variable'; - $Values->{ui_data_key_name} = $Db{variable}->config('KEY'); - $Values->{ui_rotate_spread} = 1; - $Values->{ui_data_fields} = 'code Variable'; - $Scratch->{ui_data_rows} = $CGI->{ui_settings} - || q{__UI_TECH_SETTINGS__} - || <<'EOF'; -SERVER_NAME -SECURE_SERVER -CGI_URL -ENCRYPTOR -EOF - return; -[/perl] - -[set page_perm]config[/set] -[set table_perm]variable[/set] -[set ui_class]Admin[/set] -[seti icon_name][either][cgi icon_name][or]admin/icon_config.gif[/either][/seti] -[set help_name]technical.settings[/set] -[seti page_title] - [either] - [cgi page_title] - [or] - Technical settings - [/either] -[/seti] - - -[set meta_header] - -[/set] - -@_UI_STD_HEAD_@ - -

    - - - - - - - - - - -[if !value ui_spreadsheet_rows] -[value name=ui_spreadsheet_rows set=10 hide=1] -[/if] - - - - - - - - - - - -[loop list="[scratch ui_data_rows]"] - - - [row-edit key="[loop-code]" size="60" columns="variable"] - -[/loop] -
    SettingValue
    -
    - - [page href="__UI_BASE__/flex_editor" - form=| - page_title=Edit variable: [loop-code] - mv_data_table=[value mv_data_table] - item_id=[loop-code] - |][loop-code] -
    -

    -
    -    -[if !value ui_too_large] - - Auto-export -[/if] -

    -
    - -Edit/Insert setting: - - - -
    -

    - - - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/customer.html b/dist/lib/UI/pages/admin/customer.html deleted file mode 100644 index 88d1ffcec..000000000 --- a/dist/lib/UI/pages/admin/customer.html +++ /dev/null @@ -1,301 +0,0 @@ -[calc] - if ( $CGI->{showactive} ) { - delete $Values->{showinactive}; - $Values->{showactive} = 1; - $Scratch->{active_sense} = 'ne'; - $Scratch->{active_img} = 'admin/right.gif'; - $Scratch->{active_nm} = 'deactivate'; - } - elsif($CGI->{showinactive}) { - delete $Values->{showactive}; - $Values->{showinactive} = 1; - $Scratch->{active_sense} = 'eq'; - $Scratch->{active_img} = 'admin/left.gif'; - $Scratch->{active_nm} = 'activate'; - } - elsif(! $Values->{showactive} and ! $Values->{showinactive}) { - delete $Values->{showinactive}; - $Values->{showactive} = 1; - $Scratch->{active_sense} = 'ne'; - $Scratch->{active_img} = 'admin/right.gif'; - $Scratch->{active_nm} = 'deactivate'; - } - return; -[/calc] - -[value name=mv_data_table set=userdb hide=1] -[if-mm !tables] -[set ui_error] - Not authorized for customer administration. Contact administrator? -[/set] -[bounce page="__UI_BASE__/error"] -[/if-mm] - -[set ui_class]Customers[/set] -[set page_perm]userdb[/set] - -[tag flag write]userdb[/tag] -[perl tables=userdb] - delete $Scratch->{ui_location}; - $Config->{NoSearch} = ''; - my $db = $Db{userdb}; - if(! $db) { - $Scratch->{error_message} = "Error: no userdb database.
    "; - $Scratch->{ui_location} = "__UI_BASE__/error"; - return; - } - - my ($value, $action_col, $delete); - if($CGI->{activate}) { - $value = 0; - $action_col = 'inactive'; - } - elsif($CGI->{deactivate}) { - $value = 1; - $action_col = 'inactive'; - } - elsif($CGI->{deletecustomer}) { - $delete = 1; - } - elsif($CGI->{viewcustomer} and ! $CGI->{viewnext}) { - #Log("viewcustomer and !viewnext"); - $CGI->{customer} =~ s/^\0+//; - $CGI->{customer} =~ s/\0+$//; - $Scratch->{ui_location} = $Tag->area('__UI_BASE__/customer_view', $CGI->{customer}); - } - elsif($CGI->{xload}) { - $Scratch->{ui_location} = $Tag->area('__UI_BASE__/dbdownload'); - } - else { - $CGI->{customer} =~ s/^\0+//; - $CGI->{customer} =~ s/\0.*//s; - $Scratch->{start_at} = "sm=$CGI->{customer}"; - } - - if($action_col) { - for(grep $_, @{$CGI_array->{customer}}) { - $db->set_field($_, $action_col, $value); - } - } - elsif ($delete) { - for(grep $_, @{$CGI_array->{customer}}) { - $db->delete_record($_); - } - } - if(@errors) { - my $plural = @errors > 1 ? 's' : ''; - return "Error$plural:

    • " . - join ("
    • ", @errors) . - "

    "; - } - if($CGI->{viewnext}) { - #Log("viewnext"); - $Scratch->{ui_message} = "Wanted to view next."; - my $custnum = $CGI->{customer}; - $custnum =~ s/[\0,\s].*//; - return if ! $custnum; - $custnum++; - CHECKNEXT: { - if (! $db->record_exists($custnum) ) { - undef $custnum; - last CHECKNEXT; - } - if ($db->field($custnum, 'deleted') ) { - $custnum++; - next CHECKNEXT; - } - if ($Values->{showinactive} and ! $db->field($custnum, 'active') ) { - undef $custnum; - last CHECKNEXT; - } - else { - last CHECKNEXT; - } - } - if ($custnum) { - $Scratch->{ui_message} = "Wanted to view customer."; - $Scratch->{ui_location} = $Tag->area( - { - href => '__UI_BASE__/customer_view', - form => "customer=$custnum", - } - ); - } - else { - $Scratch->{ui_message} = "No next customer."; - } - } - return; -[/perl] - -[if scratch ui_location] -[bounce href=`delete $Scratch->{ui_location}`] -[/if] - -[set icon_name]admin/icon_people.gif[/set] -[seti page_title] - [if value showinactive] - Customers: Inactive customers - [else] - Customers: Active customers - [/else] - [/if] -[/seti] -[set help_name]customer[/set] -[update values] - -@_UI_STD_HEAD_@ - - -[if scratch ui_message] -
    -[scratch ui_message] -
    -[set ui_message][/set] -[/if] - - - - - - -
    - -[button text="Search for customer"] -mv_nextpage=@@MV_PAGE@@ -[/button] - -
    - -[if cgi ui_text_qualification] -

    Entries containing "[cgi ui_text_qualification]"

    -[/if] -
    - - -[search-region more=1 search=" - fi=userdb - ml=__UI_SZ_LIST_CUSTOMER__ - md=1 - st=db - [if cgi ui_text_qualification] - se=[cgi ui_text_qualification] - [else] - co=yes - sf=inactive - se=1 - op=[scratch active_sense] - [/else] - [/if] - [if cgi ui_sort_field] - tf=[cgi ui_sort_field] - to=[cgi ui_sort_option] - [else] - tf=0 - [/else] - [/if] - [scratch start_at][set start_at][/set] - rf=username,company,lname,fname,city,state,country -"] -[calc] - my $so = $CGI->{ui_sort_option}; - my $fld = $CGI->{ui_sort_field}; - $fld =~ s/[\s,\0].*//; - sub sortrev { - my ($f, $n) = @_; - my $out = 'ui_sort_option='; - $out .= 'n' if $n; - return $out unless $fld eq $f; - return $out if $so =~ /r/; - return $out . 'r'; - } - return; -[/calc] - - - - - - - - - - - - -[search-list] - - - - - - - -[/search-list] - -[no-match] - - - -[/no-match] -[more-list] - - - -[/more-list] - - - -
     [page href=@@MV_PAGE@@ form=` - return "ui_sort_field=username\n" . sortrev('username'); - `]ID[page href=@@MV_PAGE@@ form=` - return "ui_sort_field=lname,fname\n" . sortrev('lname'); - `]Name[page href=@@MV_PAGE@@ form=` - return "ui_sort_field=company,lname\n" . sortrev('company'); - `]Company[page href=@@MV_PAGE@@ form=` - return "ui_sort_field=country,state,city\n" . sortrev('country'); - `]Location
    -[page href="@@MV_PAGE@@" - form=" - [scratch active_nm]=1 - customer=[item-code] - "][scratch active_nm] [item-code] -DELETE [item-code] - -[page href=__UI_BASE__/customer_view - form=" - customer=[item-code] - "][item-code] -[comment] -These non-breaking spaces make sure the table background color appears -so there's a full line across the page even if table cells are blank. -[/comment] -  [item-param lname], [item-param fname] [item-param company] [item-param city] [item-param state] [item-param country] 
    - No [if value showinactive]in[/if]active customers. -
    - Customers [matches] of [value mv_search_match_count]: [more] -
    -[if-mm advanced userdb=d] -[button form=batch text="Delete checked customers" - confirm='Are you sure you want to delete the checked customers?']deletecustomer=1 -[/button] -[/if-mm] -   [button form=batch text=` - my $tmp = "$Scratch->{active_nm} checked customers"; - return "\u$tmp"; - `] -[scratch active_nm]=1[/button] -
    -[/search-region] - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/customer_bill.html b/dist/lib/UI/pages/admin/customer_bill.html deleted file mode 100644 index eb608e054..000000000 --- a/dist/lib/UI/pages/admin/customer_bill.html +++ /dev/null @@ -1,38 +0,0 @@ -[calc] - if($CGI->{customer}) { - $CGI->{item_id} = $CGI->{customer}; - } - if(! $CGI->{item_id} and $Session->{arg}) { - $CGI->{item_id} = $CGI->{customer} = $Session->{arg}; - } - return if ! $CGI->{item_id}; - if(! $CGI->{mv_data_table}) { - $CGI->{ui_hide_key} = 1; - $CGI->{mv_data_table} = 'userdb'; - } - if(! $CGI->{ui_data_fields}) { - $CGI->{ui_data_fields} = 'username company b_fname b_lname b_address1 b_address2 b_city b_state b_zip b_country email phone_day phone_night'; - - } - if(! $CGI->{ui_break_before}) { - $CGI->{ui_break_before} = 'b_address1 email'; - } - return; -[/calc] -[if !cgi item_id] - [bounce page="__UI_BASE__/customer"] -[/if] -@_UI_STD_DBEDIT_HEAD_@ - -[set ui_class]Customers[/set] -[seti page_title]Customer billing information -- [cgi item_id][/seti] -[seti page_banner]Customer billing information: [page href="__UI_BASE__/customer_view" form="customer=[cgi customer]"][cgi customer][/seti] -[set help_name]customer.edit[/set] -[set icon_name]admin/icon_people.gif[/set] - -@_UI_STD_HEAD_@ -

    -@_UI_STD_DBEDIT_TABLE_@ - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/customer_change_pass.html b/dist/lib/UI/pages/admin/customer_change_pass.html deleted file mode 100644 index a2bb248b2..000000000 --- a/dist/lib/UI/pages/admin/customer_change_pass.html +++ /dev/null @@ -1,113 +0,0 @@ -[seti page_title]Change customer password -- [cgi user_id][/seti] -[seti page_banner]Change customer password: [cgi user_id][/seti] -[set ui_class]Customers[/set] -[set page_perm]userdb=e[/set] -[set help_name]access.main[/set] -[set icon_name]admin/icon_people.gif[/set] -[set no_old_needed][/set] -@_UI_STD_HEAD_@ - -[if session failure] -

    -  -

    -Failure: [data session failure][data base=session field=failure value=""] -
    -

    -  -[/if] - -[if scratch ui_message] -

    -

    - [scratch ui_message][set ui_message][/set] -
    -

    -  -[/if] - -[loop list="[cgi user_id]"] - -[set check_match] -[calc] - if ($CGI->{password} eq $CGI->{verify}) { - return 'mv_todo=set'; - } - $Session->{failure} = "Password and verify do not match."; - return "mv_todo=back\nmv_nextpage=@@MV_PAGE@@"; -[/calc] -[/set] - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -User name - - - [loop-code] -
    -New password - - -
    -Verify password - - -
    - -

    - -[if-mm advanced userdb=e] -[button text="Ok"] -mv_todo=set -[/button] - -[else] -[button text="Back"] -mv_todo=back -[/button] -[/else] -[/if-mm] - -

    -[/loop] - -@_UI_STD_FOOTER_@ - - diff --git a/dist/lib/UI/pages/admin/customer_pref.html b/dist/lib/UI/pages/admin/customer_pref.html deleted file mode 100644 index 807f1e3bc..000000000 --- a/dist/lib/UI/pages/admin/customer_pref.html +++ /dev/null @@ -1,38 +0,0 @@ -[calc] - if($CGI->{customer}) { - $CGI->{item_id} = $CGI->{customer}; - } - if(! $CGI->{item_id} and $Session->{arg}) { - $CGI->{item_id} = $CGI->{customer} = $Session->{arg}; - } - return if ! $CGI->{item_id}; - if(! $CGI->{mv_data_table}) { - $CGI->{ui_hide_key} = 1; - $CGI->{mv_data_table} = 'userdb'; - } - if(! $CGI->{ui_data_fields}) { - $CGI->{ui_data_fields} = 'username company fname lname fax_order mv_shipmode dealer project_id credit_limit inactive email_copy mail_list email phone_day phone_night fax db_acl file_acl'; - - } - if(! $CGI->{ui_break_before}) { - $CGI->{ui_break_before} = 'dealer email_copy email db_acl'; - } - return; -[/calc] -[if !cgi item_id] - [bounce page="__UI_BASE__/customer"] -[/if] -@_UI_STD_DBEDIT_HEAD_@ - -[set ui_class]Customers[/set] -[seti page_title]Customer preferences -- [cgi item_id][/seti] -[seti page_banner]Customer preferences: [page href="__UI_BASE__/customer_view" form="customer=[cgi customer]"][cgi customer][/seti] -[set help_name]customer.edit[/set] -[set icon_name]admin/icon_people.gif[/set] - -@_UI_STD_HEAD_@ -

    -@_UI_STD_DBEDIT_TABLE_@ - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/customer_select.html b/dist/lib/UI/pages/admin/customer_select.html deleted file mode 100644 index 1163bdf61..000000000 --- a/dist/lib/UI/pages/admin/customer_select.html +++ /dev/null @@ -1,270 +0,0 @@ -[if cgi showactive] -[value name=showinactive set=""] -[/if] - -[value name=mv_data_table set=userdb hide=1] -[if-mm !tables] -[set ui_error] - Not authorized for customer administration. Contact administrator? -[/set] -[bounce page="__UI_BASE__/error"] -[/if-mm] - -[set ui_class]Customers[/set] -[set page_perm]userdb[/set] - -[tag flag write]userdb[/tag] -[perl tables=userdb] - delete $Scratch->{ui_location}; - $Config->{NoSearch} = ''; - my $db = $Db{userdb}; - if(! $db) { - $Scratch->{error_message} = "Error: no userdb database.
    "; - $Scratch->{ui_location} = "__UI_BASE__/error"; - return; - } - - my ($value, $action_col, $delete); - if($CGI->{activate}) { - $value = 0; - $action_col = 'inactive'; - } - elsif($CGI->{deactivate}) { - $value = 1; - $action_col = 'inactive'; - } - elsif($CGI->{deletecustomer}) { - $delete = 1; - } - elsif($CGI->{viewcustomer} and ! $CGI->{viewnext}) { - #Log("viewcustomer and !viewnext"); - $CGI->{customer} =~ s/^\0+//; - $CGI->{customer} =~ s/\0+$//; - $Scratch->{ui_location} = $Tag->area('__UI_BASE__/customer_view', $CGI->{customer}); - } - elsif($CGI->{xload}) { - $Scratch->{ui_location} = $Tag->area('__UI_BASE__/dbdownload'); - } - else { - $CGI->{customer} =~ s/^\0+//; - $CGI->{customer} =~ s/\0.*//s; - $Scratch->{start_at} = "sm=$CGI->{customer}"; - } - - if($action_col) { - for(grep $_, @{$CGI_array->{customer}}) { - $db->set_field($_, $action_col, $value); - } - } - elsif ($delete) { - for(grep $_, @{$CGI_array->{customer}}) { - $db->delete_record($_); - } - } - if(@errors) { - my $plural = @errors > 1 ? 's' : ''; - return "Error$plural:

    • " . - join ("
    • ", @errors) . - "

    "; - } - if($CGI->{viewnext}) { - #Log("viewnext"); - $Scratch->{message} = "Wanted to view next."; - my $custnum = $CGI->{customer}; - $custnum =~ s/[\0,\s].*//; - return if ! $custnum; - $custnum++; - CHECKNEXT: { - if (! $db->record_exists($custnum) ) { - undef $custnum; - last CHECKNEXT; - } - if ($db->field($custnum, 'deleted') ) { - $custnum++; - next CHECKNEXT; - } - if ($Values->{showinactive} and ! $db->field($custnum, 'active') ) { - undef $custnum; - last CHECKNEXT; - } - else { - last CHECKNEXT; - } - } - if ($custnum) { - $Scratch->{message} = "Wanted to view customer."; - $Scratch->{ui_location} = $Tag->area( - { - href => '__UI_BASE__/customer_view', - form => "customer=$custnum", - } - ); - } - else { - $Scratch->{message} = "No next customer."; - } - } - return; -[/perl] - - -[if scratch ui_location] -[bounce href=`delete $Scratch->{ui_location}`] -[/if] - -[set icon_name]admin/icon_people.gif[/set] -[seti page_title] - [if value showinactive] - Customers: Inactive customers - [else] - Customers: Active customers - [/else] - [/if] -[/seti] -[set help_name]customer[/set] -[update values] - -@_UI_STD_HEAD_@ - - -[if scratch message] -
    -[scratch message] -
    -[set message][/set] -[/if] - - - - - - -
    - - - - - - - - - -[if value showinactive] - - - -[else] -[value name=showinactive set=""] - - - -[/else] -[/if] - - - - - - - - - - - - - - -
    -[button name="showactive" text="Show active customers"][/button] -[set active_sense]eq[/set] -
    - -[set active_sense]ne[/set] -
    - -[button name="viewcustomer" text="View customer"][/button]
    - -[if value showinactive] - [if-mm advanced userdb=u] - [button name="activate" value="Activate customer"][/button]
    - [/if-mm] -[else] - [if-mm advanced userdb=a] - [button name="deactivate" text="Deactivate customer"][/button]
    - [/if-mm] -[/else] -[/if] - -[if-mm advanced userdb=i] - -[button text="Enter new order"] -[calc] - $CGI->{customer} =~ s/^[\0\s]+//s; - $CGI->{customer} =~ s/\0.*//s; - return; -[/calc] -mv_nextpage=__UI_BASE__/entry -mv_todo=return -[/button]
    - -[/if-mm] - -
    - -[if-mm advanced userdb=d] -[button name="deletecustomer" text="Delete customer" - confirm='Are you sure you want to delete this customer?' -][/button] -[/if-mm] - -
    - -[comment] - -[/comment] -
    -Specific customer -[button text="Start list here"] -[calc] - $CGI->{customer} =~ s/^\0+//s; - $CGI->{customer} =~ s/\0.*//s; - $Scratch->{start_at} = "sm=$CGI->{customer}"; - return; -[/calc] -mv_nextpage=@@MV_PAGE@@ -[/button] - - - -[loop more=1 search=" - fi=userdb - ml=__UI_SZ_LIST_CUSTOMER__ - md=1 - st=db - co=yes - sf=inactive - se=1 - op=[scratch active_sense] - tf=username - [scratch start_at][set start_at][/set] - rf=username,lname,fname -"] -
    -
    -
    -[more-list]
    Customers [matches] of [value mv_search_match_count]: [more][/more-list] -[/loop] -
    - -

    - -

    - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/customer_ship.html b/dist/lib/UI/pages/admin/customer_ship.html deleted file mode 100644 index dcdb1f141..000000000 --- a/dist/lib/UI/pages/admin/customer_ship.html +++ /dev/null @@ -1,37 +0,0 @@ -[calc] - if($CGI->{customer}) { - $CGI->{item_id} = $CGI->{customer}; - } - if(! $CGI->{item_id} and $Session->{arg}) { - $CGI->{item_id} = $CGI->{customer} = $Session->{arg}; - } - return if ! $CGI->{item_id}; - if(! $CGI->{mv_data_table}) { - $CGI->{ui_hide_key} = 1; - $CGI->{mv_data_table} = 'userdb'; - } - if(! $CGI->{ui_data_fields}) { - $CGI->{ui_data_fields} = 'username company fname lname address1 address2 city state zip country email phone_day phone_night'; - } - if(! $CGI->{ui_break_before}) { - $CGI->{ui_break_before} = 'address1 email'; - } - return; -[/calc] -[if !cgi item_id] - [bounce page="__UI_BASE__/customer"] -[/if] -@_UI_STD_DBEDIT_HEAD_@ - -[set ui_class]Customers[/set] -[seti page_title]Customer shipping information -- [cgi customer][/seti] -[seti page_banner]Customer shipping information: [page href="__UI_BASE__/customer_view" form="customer=[cgi customer]"][cgi customer][/seti] -[set help_name]customer.edit[/set] -[set icon_name]admin/icon_people.gif[/set] - -@_UI_STD_HEAD_@ -

    -@_UI_STD_DBEDIT_TABLE_@ - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/customer_view.html b/dist/lib/UI/pages/admin/customer_view.html deleted file mode 100644 index e797c69c5..000000000 --- a/dist/lib/UI/pages/admin/customer_view.html +++ /dev/null @@ -1,255 +0,0 @@ -[set page_title]Customer manager: View customer[/set] -[set ui_class]Customers[/set] -[set page_banner]View customer[/set] -[set help_name]customer.view[/set] -[set icon_name]admin/icon_people.gif[/set] -@_UI_STD_HEAD_@ -[calc] - delete $Scratch->{ui_bounce}; - #Log("got here, customer=$CGI->{customer}, arg=$CGI->{mv_arg}"); - return if $CGI->{customer}; - $CGI->{customer} = $CGI->{mv_arg} - or $Scratch->{ui_bounce} = '__UI_BASE__/customer'; - return; -[/calc] -[if scratch ui_bounce] - [bounce page="[scratch ui_bounce]"] -[/if] - - -[update values] -[loop list="[value-extended customer]"] - - - - - - - - - - - - - - - - - - - - - - - -[query list=1 - st=db - table=transactions - sql="select - order_number, order_date, salestax, shipping, total_cost, status - FROM transactions - WHERE username = '[loop-code]' - ORDER BY order_date - " - ] - - - - - - -[/query] - - - - -
    - - - - - -
    -Customer Username: [loop-code]
    Customer: -[loop-data userdb fname] [loop-data userdb lname] - -
    -
    - - - -
    - - - - - - - - - - - -[if-loop-data userdb project_id] - -[/if-loop-data] - -[if-loop-data userdb fax] - -[/if-loop-data] - - - - - - - - -
    - Company: -[loop-data userdb company]
    - Home phone: -[loop-data userdb phone_night]
    - Work phone: -[loop-data userdb phone_day]
    - Email: - [loop-data userdb email]
    - Payment type: -[display arbitrary=custview table=userdb column=fax_order key="[loop-code]"]
    -PO Number:  -[loop-data userdb project_id]
    -FAX number:  -[loop-data userdb fax]
    -Dealer:  -[display arbitrary=custview table=userdb column=dealer key="[loop-code]"]
    -Wants email copy:  -[display arbitrary=custview table=userdb column=email_copy key="[loop-code]"]
    -Mail lists:  -[loop-data userdb mail_list]
    -
    - -
    -[set bill_address] -[loop-data userdb b_fname] [loop-data userdb b_lname]
    -[loop-data userdb b_address1]
    -[if-loop-data userdb b_address2] -[loop-data userdb b_address2]
    -[/if-loop-data] -[loop-data userdb b_city], [loop-data userdb b_state] [loop-data userdb b_zip]
    -[/set] - -[set ship_address] -[loop-data userdb fname] [loop-data userdb lname]
    -[loop-data userdb address1]
    -[if-loop-data userdb address2] -[loop-data userdb address2]
    -[/if-loop-data] -[loop-data userdb city], [loop-data userdb state] [loop-data userdb zip]
    -[/set] - - -

    -[if-loop-data userdb username] -Bill To: -[else] - Bill To: -[/else] -[/if-loop-data] -

    -[if-loop-data userdb b_address1] -[scratch bill_address] -[else] -[scratch ship_address] -[/else] -[/if-loop-data] -
    - -Ship To: -
    -
    -[scratch ship_address] -
    -
    - -[set bill_address][/set] -[set ship_address][/set] -
    - Order number - - Order date - - Order Total - - Status -
    - [sql-code] - - [sql-pos 1] - - [sql-pos 4] - -[sql-pos 5] -
    - -

    - - - - -[button text="Back"] -viewnext= -viewcustomer= -[/button] - -[button text="Enter order"] -mv_nextpage=__UI_BASE__/entry -mv_todo=return -[/button] - -[if-mm advanced userdb=e] -[if-loop-data userdb inactive] -[button name="activate" text="Activate customer"][/button] -[else] -[button name="deactivate" text="Deactivate customer" - confirm="Are you sure you want to deactivate this customer?"][/button] -[/else] -[/if-loop-data] - -[button text="Change password"] -user_id=[loop-code] -mv_nextpage=__UI_BASE__/customer_change_pass -[/button] -[/if-mm] - -[if-mm advanced userdb=d] - -[/if-mm] - - -
    - -[/loop] - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/dbdownload.html b/dist/lib/UI/pages/admin/dbdownload.html deleted file mode 100644 index bbda62bd5..000000000 --- a/dist/lib/UI/pages/admin/dbdownload.html +++ /dev/null @@ -1,114 +0,0 @@ -[set page_title]Database export[/set] -[set ui_class]Admin[/set] -[set help_name]dbdownload.main[/set] -[set icon_name]admin/icon_config.gif[/set] -[set page_perm]dbdownload[/set] -[set exported_tables][/set] -[if cgi ui_do_export] - -[/if] -@_UI_STD_HEAD_@ - -[if scratch exported_tables] -
    - [backup-database - compress="[cgi ui_compress]" - gnumeric="[cgi ui_gnumeric]" - tables="[scratch exported_tables]" - ] tables backed up. -
    -[/if] - -[if file backup/DBDOWNLOAD.all.gz] -
    - [page href="ui/backup/DBDOWNLOAD.all.gz" - form=" - mv_data_file=backup/DBDOWNLOAD.all.gz - mv_todo=deliver - "]Download compressed gnumeric file
    -
    -[/if] - -[if file backup/DBDOWNLOAD.all] - [page href="ui/backup/DBDOWNLOAD.all" - form=" - mv_data_file=backup/DBDOWNLOAD.all - mv_todo=deliver - "]Download gnumeric file
    -[/if] - -[if scratch ui_error] - Errors on last operation: - [scratch ui_error][set ui_error][/set] -[/if] - -
    - - - - - - - - - - - - - - -
    -  -

    - -What data would you like to export? - -

    -[loop list="[list-databases]"] -[sort mv_metadata:label] - - [if-loop-data mv_metadata label] - [loop-data mv_metadata label] - [else] - [loop-code] - [/else] - [/if-loop-data] -
    -[/loop] -
    - -

    -Options:

    -

    - Compress (if available)
    - - No Gnumeric output
    - - Gnumeric simple text format
    - - Gnumeric simple text format, compressed -
    -

    - - -

    -  -

    - -
    - - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/dbinfo.html b/dist/lib/UI/pages/admin/dbinfo.html deleted file mode 100644 index 8d2773c70..000000000 --- a/dist/lib/UI/pages/admin/dbinfo.html +++ /dev/null @@ -1,189 +0,0 @@ -[tmp page_perm]techadmin[/tmp] -[tmp page_title]Administration: [data session arg] table information[/tmp] -[tmp page_banner][calc]$Config->{CatalogName}[/calc] table information [if session arg]([data session arg])[/if][/tmp] -[set ui_class]Admin[/set] -[tmp help_name]genconfig.main[/tmp] -[tmp icon_name]admin/icon_config.gif[/tmp] -@_UI_STD_HEAD_@ - - - -
    - - - - - -
    - - -[perl tables="[list-databases] __UI_META_TABLE__"] - my @tables; - if($Session->{arg}) { - @tables = split /[\s,\0]+/, $Session->{arg}; - } - else { - @tables = sort keys %{$Config->{Database}}; - } - my $mdb = $Db{__UI_META_TABLE__}; - my %ignore; - my @ignore = qw/ - Class - db_file - db_file_extended - db_file_extended - db_text - dir - DSN - dsn_id - Exists_handle - EXTENDED - file - _Insert_h - name - Object - Read_only - type - Update_handle - /; - @ignore{@ignore} = @ignore; - - my %typemap = ( - 1 => 'DBM/Memory, default delimiter', - 2 => 'DBM/Memory, LINE delimiter', - 3 => 'DBM/Memory, %% delimiter', - 4 => 'DBM/Memory, CSV delimiter', - 5 => 'DBM/Memory, PIPE delimiter', - 6 => 'DBM/Memory, TAB delimiter', - 7 => 'This should never appear (old Msql)', - 8 => 'DBI/SQL', - 9 => 'LDAP', - ); - for (@tables) { - my $tname = $_; - my $tinfo = ''; - if($mdb and $mdb->record_exists($tname) ) { - $tinfo = $mdb->field($tname, 'label'); - if($tinfo) { - $tinfo = "
    ($tinfo)"; - } - } - my $ref = $Config->{Database}{$_}; - my $class = $ref->{Class}; - my $file = $ref->{file}; - my $dfile = ($class eq 'DBI' ? $ref->{db_file_extended} : $ref->{db_file}); - my $dfn = $dfile; - $dfile =~ s:^$Config->{ProductDir}/::o; - my $dir = $ref->{dir} || $Config->{ProductDir}; - my $type = $typemap{$ref->{type}}; - - $type .= " DSN=$ref->{DSN}" if $ref->{DSN}; - my $fn = "$dir/$file"; - $file .= "
    mod date: " . $Tag->file_info( { name => $fn, date => 1 } ); - $file .= "
    file size: " . $Tag->file_info( { name => $fn, size => 1 } ); - $file .= "
    "; - $dfile .= "
    (not significant for DBI types)" if $class eq 'DBI'; - $dfile .= "
    mod date: " . $Tag->file_info( { name => $dfn, date => 1 } ); - $dfile .= "
    file size: " . $Tag->file_info( { name => $dfn, size => 1 } ); - $dfile .= "
    "; - my $obj = $ref->{Object}; - $out .= < - - - - - - - -
    - $tname$tinfo - - - - - - - - - - - - - - - - - - - - - - - - - -EOF - for(sort keys %{$ref}) { - next if $ignore{$_}; - my $key = $_; - my $r = $ref->{$_}; - my $o = < - - -EOF - $out .= $o; - } - - $out .= < - - -EOF - - } - return $out; -[/perl] - -
    Type$type
    Class$class
    Directory$dir
    Text File$file
    DB File$dfile
    Other
    $_ -EOF - if(! defined $r) { - $o .= "undef"; - } - elsif(ref($r) =~ /^ARRAY/) { - my $t = join "
    ", @$r; - $o .= $t || ' '; - } - elsif(ref($r) =~ /^HASH/) { - my $t = ''; - for(sort keys %$r) { - if (! defined $r->{$_} and $key eq 'NUMERIC') { - $t .= "$_
    "; - next; - } - $t .= "$_ --> $r->{$_}
    "; - } - $o .= $t || ' '; - } - elsif(! defined $r) { - $o .= " "; - } - elsif(! length($r)) { - $o .= " "; - } - else { - $o .= $r; - } - $o .= < -
    - -
    - - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/do_upload.html b/dist/lib/UI/pages/admin/do_upload.html deleted file mode 100644 index e00fd4c20..000000000 --- a/dist/lib/UI/pages/admin/do_upload.html +++ /dev/null @@ -1,35 +0,0 @@ -[if-mm function="!files" name="[value ui_upload_fn]"] -[seti ui_error] Not allowed to upload [value ui_upload_fn].[/seti] -[bounce page=__UI_BASE__/error] -[/if-mm] - -[if type=!explicit compare=| - [value-extended name='ui_upload_file' test=isfile] - | -] -[seti ui_error] No file sent.[/seti] -[bounce page=__UI_BASE__/error] -[/if] - -[calc]Log("backup=$CGI->{ui_backup}");[/calc] -[if cgi ui_backup] -[and type="!explicit" compare=| - [backup-file file='[value ui_upload_fn]' ] - |] -[bounce page=__UI_BASE__/error] -[/if] -[if type=explicit compare=| - [value-extended - Yes=1 - umask="[cgi ui_upload_umask]" - No=0 - ascii="[value ui_upload_ascii]" - name=ui_upload_file - outfile="[value ui_upload_fn]" - ] - |] -[bounce href="[either][return-to url][or][area __UI_BASE__/genupload][/either]"] -[else] -[seti ui_error] Error writing file [value ui_upload_fn].[/seti] -[bounce page=__UI_BASE__/error] -[/else][/if] diff --git a/dist/lib/UI/pages/admin/do_upload_page.html b/dist/lib/UI/pages/admin/do_upload_page.html deleted file mode 100644 index 2fef70c12..000000000 --- a/dist/lib/UI/pages/admin/do_upload_page.html +++ /dev/null @@ -1,44 +0,0 @@ -[set page_title]Page Upload Results -[set ui_class]Admin[/set] -[set help_name]upload.main -[if-mm] - -@_UI_STD_HEAD_@ - - - - - -[if value page_to_upload] - - - - -[/if] -

    Upload

    -[L]Page upload of[/L] [value page_to_upload] --> - -[if type=explicit compare="[value-extended - name='page_upload' - test=isfile - ]"] -[value-extended - Yes=Success - No=FAILED - ascii="[value page_ascii]" - name="page_upload" - outfile="pages/[value page_to_upload]" - ] -[else] -[value page_to_upload]: [L]No page was uploaded[/L]. -[/else][/if] -
    - - -[loop arg="arbitrary_to_upload page_to_upload db_to_upload "] -[value name="[loop-code] set=""] -[/loop] - - - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/do_view.html b/dist/lib/UI/pages/admin/do_view.html deleted file mode 100644 index 92e9c2548..000000000 --- a/dist/lib/UI/pages/admin/do_view.html +++ /dev/null @@ -1,49 +0,0 @@ -[seti total_junk][perl] - delete $Scratch->{violation}; - $_ = delete $Session->{arg}; - $Scratch->{violation} = 'No .. allowed in file name.' - if m{\.\./}; - $Scratch->{violation} = 'No | allowed.' - if m{\|}; - $Scratch->{violation} = 'No whitespace allowed.' - if m{\s}; - $Scratch->{violation} = 'No drive letters!' - if m{^\s*[a-zA-Z]:/}; - $Scratch->{violation} = 'No absolute file paths allowed.' - if s{^/}{}; - if($Scratch->{violation}) { - Log (<{username} - $Session->{host} -EOF - } - else { - $Scratch->{file_to_view} = $_; - } - if(/\.gif$/i) { - $Scratch->{content_type} = 'image/gif'; - } - elsif(/\.jpe?g$/i) { - $Scratch->{content_type} = 'image/jpeg'; - } - elsif(/\.png$/i) { - $Scratch->{content_type} = 'image/png'; - } - else { - $Scratch->{content_type} = 'text/plain'; - } - return; -[/perl][if scratch violation] -[seti ui_error][scratch violation] -- logged.[/seti] -[bounce page="__UI_BASE__/error"] -[else] -[tag op=header interpolate=1]Content-Type: [scratch content_type][set content_type][/set][/tag] -[/else] -[/if] -[/seti][file name="[scratch file_to_view]" type="[value download_conversion]" -][goto end=1 abort=1] diff --git a/dist/lib/UI/pages/admin/entry.html b/dist/lib/UI/pages/admin/entry.html deleted file mode 100644 index 24062a23e..000000000 --- a/dist/lib/UI/pages/admin/entry.html +++ /dev/null @@ -1,614 +0,0 @@ -[set page_title]Order Entry[/set] -[set ui_class]Orders[/set] -[set help_name]order_entry.main[/set] -[set icon_name]admin/icon_orders.gif[/set] -[seti meta_header] - -[/seti] - -@_UI_STD_HEAD_@ - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[item-list] - - - - - - - - - - -[/item-list] - - - - - - - - - - - - - - - - - - - - - - - -
    -

    SKU

    -
      -

    Description

    -
    -

    Quantity

    -
    -

    Price

    -
      -

    Extension

    -
    - [search-region prefix=sku] - [if value mv_search_match_count] - - - [/else] - [/if] - [search-list] - - [/if] - [/search-region] -   - - - - - -   -   -   -
    - remove   [item-code]  - [page [item-code]][item-description] - [if-item-field weight]    - WEIGHT: [summary amount=`[item-quantity] * [item-field weight]`] - [/if-item-field] -     - [if-item-field related] - [if !ordered [item-field related]] - - [loop arg="[item-field related]" prefix=related] - [related-change 1][condition]1[/condition] - - - [/related-change 1] - [if !ordered [related-code]] - - - - - [/if] - [/loop] -
    Other items to suggest:
    [related-field title]
    - [/if] - [/if-item-field][item-accessories size][item-accessories color] -
    - - - - [discount-price] - [if discount [item-code]] -
    Item is discounted - [item-discount] - - [/if] -
      - [item-subtotal] -
    -                [summary format="Shipping weight: %s" total=1]
    Subtotal [subtotal]
    Shipping [shipping]
    Tax [salestax]
    TOTAL [total-cost]
    - -[if type=explicit compare="[error all=1 show_var=1 keep=1]"] -

    -There were errors in your last entry. -They are shown in this color below. -

    -[/if] - - -[comment] - - -[/comment] - - - -
    -
    -Shipping Address -
    - -[calc] - return unless $CGI->{customer}; - $Values->{customer_id} = $CGI->{customer} - unless $CGI->{customer} eq 'NEW'; - for (qw/ - username - password - company - fname - lname - address1 - address2 - address3 - city - state - zip - country - phone_day - mv_shipmode - b_nickname - b_fname - b_lname - b_address1 - b_address2 - b_address3 - b_city - b_state - b_zip - b_country - b_phone - mv_credit_card_type - mv_credit_card_exp_month - mv_credit_card_exp_year - mv_credit_card_info - email - fax - phone_night - fax_order - order_numbers - email_copy - mail_list - /) - { - $Values->{$_} = ''; - } -[/calc] - -[loop list=`$Values->{customer_id} || 'NEW'`] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[set Find] -mv_nextpage=__UI_BASE__/entry_select -mv_change_frame=select -mv_todo=back -[/set] - -[set Clear] -customer_id= -customer=NEW -mv_todo=return -[/set] - - - - - - - - - - - -
    - Customer ID - - New customer -
    - [error name=fname std_label="First Name" required=1] - - [error name=lname std_label=Last required=1]  -
    [error name=address1 std_label=Address required=1] - -
      - -
    - [error name=city std_label="City" required=1] - - - - - - - - - -
    - - - [error name=state std_label="State/Province" required=1] - - - - [error name=zip std_label="Zip/Postal Code" required=1] - - -
    -
    [error name=email std_label="Email Address" required=1] - -
    - Country - - [value name=country set="[value name=country default='[loop-data userdb country]']" hide=1] - [if value country =~ /(^$|US|CA)/] - - [else] - - [/else] - [/if] (will update display) -
    [error name=phone_day std_label="Daytime Phone" required=1] - - - - - - -
    - - - [error name=phone_night std_label="Evening Phone" required=0] - - -
    -
      - - -
      - Bold fields needed to process the order -
    -[set only_downloadable]1[/set] -[set some_downloadable][/set] -[item-list] - [if-item-field weight][set only_downloadable][/set][/if-item-field] - [if-item-field download][set some_downloadable]1[/set][/if-item-field] -[/item-list] -[if !scratch only_downloadable] -

    -
    -Choose your shipping method -
    - -

    - - - - - - - -
    - -
    -[if session ship_message] -
    Note: [data session ship_message]
    -[/if] -
    -[/if] - - -[if variable CREDIT_CARDS_ACCEPTED =~ /\S/] -
    -[error std_label="Credit Card Information" name=mv_credit_card_valid] -
    - -

    - -
    -Card Number
    - -[if variable MV_PAYMENT_MODE =~ /minivend_test/] -
    Interchange test should yield: - Success - Failure -[/if] -
    - Expires -
    - - -
    - - -Charge credit card
    - -[if variable CHECK_ACCEPTED] - - Call customer for payment information
    -[/if] - -[if variable PO_ACCEPTED] - - I will pay by purchase order - [error name=credit_limit_ok std_label="PO Number" required=1]  - [if type=data - term="userdb::credit_limit::[value customer_id]" - op=">" - compare=0.01] -
    - Current credit limit: - [currency] - [data table=userdb col=credit_limit key="[value customer_id]"] - [/currency] - - [if type=data - term="userdb::credit_limit::[value customer_id]" - op=< - compare="[total-cost noformat=1]" - ] -
    - Order total [total-cost] exceeds credit limit, please call. - [/if] -
    - [/if] -
    -[/if] - -[if variable COD_ACCEPTED] - - I will pay by COD ([handling cod] extra charge will be added)
    -[/if] -
    -
    -Billing Address (if different) -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Name: First - - Last -
    Address - -
    - -
    City - - State - Postal Code -
    Country - -

    - -[set Place Order!] -mv_todo=submit -[/set] - -
    -Email preferences -
    - - - - - - - - - - -
    - Yes - No - - Send an email copy of my receipt -
    - Yes - No - - Put customer on email information list -
    - -

    -[set Place Order] -mv_todo=submit -[/set] - - -
    - -

    -Gift note or Special Instructions
    - - -[/loop] -[error all=1 hide=1 comment="Clear errors"] - -

    -__MENUBOTTOM__ -__COPYRIGHT__ - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/entry_select.html b/dist/lib/UI/pages/admin/entry_select.html deleted file mode 100644 index f092e03ef..000000000 --- a/dist/lib/UI/pages/admin/entry_select.html +++ /dev/null @@ -1,105 +0,0 @@ -[set page_perm]userdb[/set] -[set ui_class]Orders[/set] -[set icon_name]admin/icon_orders.gif[/set] -[set page_title] Select Customer [/set] - -@_UI_STD_HEAD_@ - - -[if scratch message] -
    -[scratch message] -
    -[set message][/set] -[/if] - -[update values] - - - -
    - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    - -
    - - - -[calc] $Config->{NoSearch} = ''[/calc] -[search-region more=1 search=" - fi=userdb - ml=__UI_SZ_LIST_CUSTOMER__ - md=1 - st=db - [if value lname] - [set tmp_spec]1[/set] - sf=lname - se=[value lname] - op=rm - [/if] - [if value city] - [set tmp_spec]1[/set] - sf=city - se=[value city] - op=rm - [/if] - [if value zip] - [set tmp_spec]1[/set] - sf=zip - se=[value zip] - op=em - [/if] - [if scratch tmp_spec] - co=yes - [else] - ra=yes - [/else] - [/if] - tf=username - rf=username,lname,fname -"] -
    -
    -
    -[more-list]
    [matches] of [value mv_search_match_count]: [more][/more-list] -[/search-region] - -
    - -

    - -

    - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/env_vars.html b/dist/lib/UI/pages/admin/env_vars.html deleted file mode 100644 index 9faf844ad..000000000 --- a/dist/lib/UI/pages/admin/env_vars.html +++ /dev/null @@ -1,20 +0,0 @@ -[set page_title]Environment Variables[/set] -[set ui_class]Admin[/set] -[set help_name]env_vars[/set] -[set icon_name]admin/icon_config.gif[/set] -@_UI_STD_HEAD_@ - - -
    - -[seti env][dump][seti] -[calc reparse=0] - $Scratch->{env} =~ s/</&lt;/g; - $Scratch->{env} =~ s/\[/&#91;/g; - delete $Scratch->{env}; -[/calc] - -
    - - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/error.html b/dist/lib/UI/pages/admin/error.html deleted file mode 100644 index 863fc261e..000000000 --- a/dist/lib/UI/pages/admin/error.html +++ /dev/null @@ -1,45 +0,0 @@ -[set table_perm][/set] -[set ui_class]None[/set] -[set page_perm][/set] -[set no_login_required]1[/set] -[seti page_title]Error: [scratch ui_error][/seti] -[set help_name]item.error[/set] -[set icon_name]admin/icon_error.gif[/set] -@_UI_STD_HEAD_@ - - - - - - - - - - - - - - - - -
    -  -

    - -The following error occurred: -

    -

    -[scratch ui_error][set ui_error][/set] -
    -

    -Please correct and try again. -

    -Maybe you need to [page __UI_BASE__/login]log in? -  -

    - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/error_item.html b/dist/lib/UI/pages/admin/error_item.html deleted file mode 100644 index 805ef5617..000000000 --- a/dist/lib/UI/pages/admin/error_item.html +++ /dev/null @@ -1,39 +0,0 @@ - -[set page_title]Item editor: error[/set] -[set ui_class]None[/set] -[set page_banner]Error[/set] -[set help_name]item.edit.error[/set] -[set icon_name]admin/icon_item.gif[/set] - -@_UI_STD_HEAD_@ - - - - - - - - - - - - - - - - -
    -  -

    - -The following error occurred: -

    -No item type selected to create. -

    -Please go back and try it again. -

    -  -

    - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/export_table.html b/dist/lib/UI/pages/admin/export_table.html deleted file mode 100644 index 8a0b7e880..000000000 --- a/dist/lib/UI/pages/admin/export_table.html +++ /dev/null @@ -1,304 +0,0 @@ -[if cgi mv_data_table] -[if-mm function=!export table="[cgi mv_data_table]"] -[set ui_error]Not allowed to export table '[cgi mv_data_table]'.[/seti] -[bounce page="__UI_BASE__/error"] -[/if-mm] -[/if] -[set page_title]Individual Table Export[/set] -[set ui_class]Admin[/set] -[set table_perm]1[/set] -[set help_name]export.main[/set] -[set icon_name]admin/icon_config.gif[/set] -@_UI_STD_HEAD_@ -[seti user_tables][loop list="[list-databases]"][if-mm function=export table="[loop-code]"][loop-code] -[/if-mm][/loop][/seti] -[seti tables][scratch user_tables] -__UI_ACCESS_TABLE__ -__UI_META_TABLE__[/seti] -[perl table="[scratch tables]"] - - my @tables = grep /\S/, split /\s+/, $Scratch->{tables}; - my $out; - for(@tables) { - #Log("table $_"); - unless (ref $Db{$_}) { - Log("bad table $_"); - next; - } - $tables{$_} = [ $Db{$_}->columns() ]; - } - $out = " -EOF -[/perl] - - -[if cgi ui_export_database] -[update values] -[seti result][export-database - table="[value mv_data_table]" - file="[value mv_data_file]" - type="[value mv_data_export_type]" - sort="[if value ui_sort_field][value ui_sort_field]:[value ui_sort_option][/if]" - - ][/seti] - [if scratch result] - Export of table [cgi mv_data_table] successful

    -

    -

      - [quick-table] - Table name: [value mv_data_table] - File name: [default mv_data_file] - File type: [default mv_data_export_type][if value ui_sort_field] - Sorting: [value ui_sort_field]:[value ui_sort_option][/if] - [/quick-table] - [else] - - Database export error: [data session last_error] - - [/else] - [/if] -[/if] -
      - -[if cgi mv_data_table] -[value name=mv_data_table set="[cgi mv_data_table]" hide=1] -[/if] - -
      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      -Table to export - - -
      -Export as
      -
      - -
      - Export to file
      - (leave empty for default file) -
      - -
      -Sort by column - - -
      - Sort options
      -
      - -
      - -
      - -
      -[set Export] -ui_export_database=1 -[/set] - -
      - -
      - - - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/flex_editor.html b/dist/lib/UI/pages/admin/flex_editor.html deleted file mode 100644 index eeadaa88e..000000000 --- a/dist/lib/UI/pages/admin/flex_editor.html +++ /dev/null @@ -1,38 +0,0 @@ -[seti page_title] - [either] - [cgi page_title] - [or] - Table Edit: [cgi mv_data_table] - [/either] -[/seti] -[seti table_perm][cgi mv_data_table]=v[/seti] -[seti help_name][either][cgi help_name][or]flex.meta[/either][/seti] -[seti icon_name][either][cgi icon_name][or]admin/icon_config.gif[/either][/seti] -[flag type=write table="[cgi mv_data_table]"] - -[if cgi ui_new_item] - [calc] - $CGI->{item_id} = q{[counter file="products/[cgi mv_data_table].autonumber" start=new0000]}; - return; - [/calc] -[/if] - -@_UI_STD_DBEDIT_HEAD_@ -@_UI_STD_HEAD_@ -@_UI_STD_DBEDIT_TABLE_@ - -No meta display - -@_UI_STD_FOOTER_@ - - diff --git a/dist/lib/UI/pages/admin/flex_select.html b/dist/lib/UI/pages/admin/flex_select.html deleted file mode 100644 index d21a4136e..000000000 --- a/dist/lib/UI/pages/admin/flex_select.html +++ /dev/null @@ -1,381 +0,0 @@ - - -[tmp page_title] - [either] - [cgi page_title] - [or] - Select for table edit: [cgi mv_data_table] - [/either] -[/tmp] -[tmp page_banner] - [either] - [cgi page_banner] - [or] - [cgi page_title] - [or] - [loop list="[cgi mv_data_table]"] - Select for table edit: - [page href="__UI_BASE__/flex_editor" - form=' - mv_data_table=__UI_META_TABLE__ - ui_meta_view=dbconfig - ui_data_fields=code name height field help help_url - ui_break_before=height - page_title=Change display information: [loop-code] - ui_return_to=__UI_BASE__/gentable - item_id=[loop-code] - '][loop-code] - [/loop] - [/either] -[/tmp] -[tmp help_name][either][cgi help_name][or]flex.select[/either][/tmp] -[tmp icon_name][either][cgi icon_name][or]admin/icon_config.gif[/either][/tmp] - -[if-mm function="!tables" table="[cgi mv_data_table]"] -[bounce page="__UI_BASE__/error"] -[/if-mm] - - - -[perl tables="[cgi mv_data_table] __UI_META_TABLE__"] - delete $Scratch->{ui_location}; - if($CGI->{ui_sequence_edit}) { - my $doit; - if($CGI->{item_id_left} =~ s/^(.*?),//) { - $CGI->{item_id} = $1; - $doit = 1; - } - elsif ($CGI->{item_id_left}) { - $CGI->{item_id} = delete $CGI->{item_id_left}; - delete $CGI->{ui_sequence_edit}; - $doit = 1; - } - else { - delete $CGI->{item_id}; - delete $CGI->{ui_sequence_edit}; - } - return unless $doit; - $Scratch->{ui_location} - = $Tag->area( { - href => '__UI_BASE__/flex_editor', - form => qq{ - mv_data_table=$CGI->{mv_data_table} - item_id=$CGI->{item_id} - item_id_left=$CGI->{item_id_left} - ui_sequence_edit=$CGI->{ui_sequence_edit} - ui_return_to=__UI_BASE__/flex_select - ui_return_to=mv_data_table=$CGI->{mv_data_table} - ui_return_to=ui_sequence_edit=$CGI->{ui_sequence_edit} - ui_page_banner=Edit next key $CGI->{item_id} - }, - }); - return; - } - - return unless $CGI->{item_id}; - return unless delete $CGI->{deleterecords}; - return unless $Tag->if_mm('tables', '=d'); - - delete $Scratch->{ui_location}; - $Config->{NoSearch} = ''; - my $tab = $CGI->{mv_data_table} or return; - my $db = $Db{$tab}; - if(! $db) { - $Scratch->{error_message} = "Error: no $tab database.
      "; - $Scratch->{ui_location} = "__UI_BASE__/error"; - return; - } - - for(grep $_, @{$CGI_array->{item_id}}) { - $db->delete_record($_) - or push @errors, $@; - } - if(@errors) { - my $plural = @errors > 1 ? 's' : ''; - return "Error$plural:
      • " . - join ("
      • ", @errors) . - "

      "; - } - return; -[/perl] - -[comment] -[calc] - ### Why was I doing this? - my $out = ''; - my $page; - delete $Scratch->{ui_location}; - return unless $CGI->{ui_return_to}; - ($page, @env) = split /\0/, $CGI->{ui_return_to}; - $Scratch->{ui_location} = $Tag->area({ - href => $page, - form => join "\n", @env, - }); - return; -[/calc] -[/comment] - - -[if scratch ui_location] -[bounce href=`delete $Scratch->{ui_location}`] -[elsif !cgi mv_data_table] -[bounce page="__UI_BASE__/gentable"] -[/elsif] -[/if] - -@_UI_STD_HEAD_@ -[update values] - -
      - - - - - -
      - [loop list="[cgi mv_data_table]"] - [if-loop-data __UI_META_TABLE__ name] - [loop-data __UI_META_TABLE__ name] - [/if-loop-data] - [if-loop-data __UI_META_TABLE__ help_url] -    help - [/if-loop-data] - [if-loop-data __UI_META_TABLE__ help] -
      [loop-data __UI_META_TABLE__ name] - [/if-loop-data] - [/loop] -
      - -
      -[if scratch ui_failure] -

      -

      -[scratch ui_failure][set ui_failure][/set] -
      -

      -  -[/if] -[if scratch ui_message] -

      -

      -[scratch ui_message][set ui_message][/set] -
      -

      -  -[/if] - -[perl tables="[cgi mv_data_table] __UI_META_TABLE__"] - my $ref = $Db{$CGI->{mv_data_table}}; - my $mref = $Db{__UI_META_TABLE__}; - - if (! $ref) { - $Scratch->{keypos} = 0; - return; - } - elsif (! $mref) { - $Scratch->{keypos} = 0; - } - - my $meta; - if($mref and $mref->record_exists($CGI->{mv_data_table}) ) { - $meta = $mref->row_hash($CGI->{mv_data_table}); - } - else { - $meta = {}; - } - if($CGI->{ui_flex_key}) { - $Scratch->{keypos} = $CGI->{ui_flex_key}; - } - else { - $Scratch->{keyname} = $ref->config('KEY'); - $Scratch->{keypos} = $ref->config('KEY_INDEX'); - } - - $Config->{NoSearch} = ''; - $ui_text_qualification = $CGI->{ui_text_qualification}; - if ($ui_text_qualification and $CGI->{ui_text_qualification} =~ /=/ ) { - my ($f, $s) = split /\s*=\s*/, $CGI->{ui_text_qualification} , 2; - $CGI->{ui_text_qualification} = "co=1\nop=eq\nse=$s\nsf=$f"; - } - elsif ($ui_text_qualification) { - $CGI->{ui_text_qualification} = "se=$CGI->{ui_text_qualification}"; - } - else { - $CGI->{ui_text_qualification} = "ra=yes"; - } - $CGI->{ui_sort_field} = $meta->{lookup} || $Scratch->{keyname} - if ! $CGI->{ui_sort_field}; - $CGI->{ui_list_size} = $meta->{height} - if ! $CGI->{ui_list_size}; - if(! ($CGI->{ui_show_fields} = $meta->{field}) ) { - $CGI->{ui_show_fields} = '*'; - $CGI->{ui_description_fields} = join ",", $ref->columns(); - } - else { - $CGI->{ui_show_fields} =~ s/[\0,\s]+/,/g; - $CGI->{ui_description_fields} = $CGI->{ui_show_fields}; - } - @cols = split /[\s,\0]+/, $CGI->{ui_description_fields}; - for(@cols) { - $numeric{$_} = 1 if $ref->numeric($_); - } - - return; -[/perl] - -[if cgi ui_show_fields] - [tmp sparams] - fi=[cgi mv_data_table] - st=db - [cgi ui_text_qualification] - su=1 - md=1 - ml=[cgi ui_list_size] - tf=[cgi ui_sort_field] - to=[cgi ui_sort_option] - rf=[cgi ui_show_fields] - [/tmp] -[else] - [tmp sparams] - fi=[cgi mv_data_table] - st=db - [cgi ui_text_qualification] - md=1 - tf=[scratch keypos] - rf=[scratch keypos] - [/tmp] -[/else] -[/if] - - - - - - - - - - - -[loop list="[cgi ui_description_fields]"] - -[/loop] - -[search-region more=1 arg="[scratch sparams]"] -[search-list] - - - -[item-sub show_line] -sub { - my ($pre, $post) = split /\t/, shift; - my $line = shift; - return unless $line; - shift (@$line); - my $out = ''; - for(@$line) { - s/\[/[/g; - $out .= ""; - } - return $out . "\n"; -} -[/item-sub] -[item-exec show_line][/item-exec] - -[/search-list] -[no-match] - - - -[/no-match] -[more-list] - - - -[/more-list] -
      - [loop-change 1][condition]1[/condition]    [/loop-change 1] - [loop-code]
        [page href=__UI_BASE__/flex_editor form=| - mv_data_table=[cgi mv_data_table] - ui_page_title=[cgi ui_page_title] - ui_page_title=[cgi ui_page_banner] - ui_meta_specific=[cgi ui_meta_specific] - ui_return_to=@@MV_PAGE@@ - ui_return_to=mv_data_table=[cgi mv_data_table] - item_id=[item-code] - |][item-code]" . $Tag->filter('entities', $_) . "
      -Nothing matched. -
      -More rows: [decade-next][/decade-next] [more] [decade-prev][/decade-prev] -
      - -[button text="Edit checked records in sequence"] -ui_sequence_edit=[calc] - $CGI->{item_id_left} = $CGI->{item_id}; - $CGI->{item_id_left} =~ s/\0+/,/g; - if($CGI->{item_id_left} =~ s/^(.*?),//) { - $CGI->{item_id} = $1; - return 1; - } - else { - delete $CGI->{item_id_left}; - return ''; - } -[/calc] -mv_nextpage=__UI_BASE__/flex_editor -mv_todo=return -[/button] - -     - -[button text="Delete checked records" - confirm="Are you sure you want to delete the checked records?"] -[flag type=write table="[cgi mv_data_table]"] -deleterecords=1 -mv_todo=back -mv_nextpage=@@MV_PAGE@@ -[/button] -

      -[/search-region] - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/flex_select_box.html b/dist/lib/UI/pages/admin/flex_select_box.html deleted file mode 100644 index 193ab12b3..000000000 --- a/dist/lib/UI/pages/admin/flex_select_box.html +++ /dev/null @@ -1,257 +0,0 @@ - - -[seti page_title] - [either] - [cgi page_title] - [or] - Select for table edit: [cgi mv_data_table] - [/either] -[/seti] -[seti page_banner] - [either] - [cgi page_banner] - [or] - [cgi page_title] - [or] - Select for table edit: [cgi mv_data_table] - [/either] -[/seti] -[seti help_name][either][cgi help_name][or]flex.select[/either][/seti] -[seti icon_name][either][cgi icon_name][or]admin/icon_config.gif[/either][/seti] - -[if-mm function="!tables" table="[cgi mv_data_table]"] -[bounce page="__UI_BASE__/error"] -[/if-mm] - -[calc] - my $out = ''; - my $page; - delete $Scratch->{ui_location}; - return unless $CGI->{ui_return_to}; - ($page, @env) = split /\0/, $CGI->{ui_return_to}; - $Scratch->{ui_location} = $Tag->area({ - href => $page, - form => join "\n", @env, - }); - return; -[/calc] -[if scratch ui_location] -[bounce href=`delete $Scratch->{ui_location}`] -[/if] - -@_UI_STD_HEAD_@ -[update values] - - -[if scratch ui_failure] -

      -

      -[scratch ui_failure][set ui_failure][/set] -
      -

      -  -[/if] -[if scratch ui_message] -

      -

      -[scratch ui_message][set ui_message][/set] -
      -

      -  -[/if] -

      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      - -[set New item]item_id=new[/set] -
      - - -
      - -[set Delete item] - [flag type=write table="[cgi mv_data_table]"] - [set ui_error][/set] - - [if-mm function="!tables" table="[cgi mv_data_table]=d"] - [seti ui_error]Not authorized to delete from table '[cgi mv_data_table]'.[/seti] - [/if-mm] - - [if !scratch ui_error] - [perl tables="[cgi mv_data_table]"] - unless ($db = $Db{$CGI->{mv_data_table}}) { - $Scratch->{ui_error} = "bad data table $CGI->{mv_data_table}"; - } - $db->delete_record($CGI->{item_id}) - or $Scratch->{ui_error} = "Failed to delete $CGI->{item_id}"; - return; - [/perl] - [/if] - - [if scratch ui_error] - mv_nextpage=__UI_BASE__/error - [else] - mv_nextpage=@@MV_PAGE@@ - [/else] - [/if] -[/set] - -[set Spreadsheet edit] -mv_nextpage=__UI_BASE__/spread -[/set] - - - - - -
      - -[if cgi ui_flex_key] -[seti keypos][cgi ui_flex_key][/seti] -[else] -[perl tables="[cgi mv_data_table]"] - my $ref = $Db{$CGI->{mv_data_table}}; - if (! $ref) { - $Scratch->{keypos} = 0; - return; - } - $Scratch->{keypos} = $ref->config('KEY_INDEX'); - return; -[/perl] -[/else] -[/if] - - -[calc] - $Config->{NoSearch} = ''; - if ($CGI->{ui_text_qualification} and $CGI->{ui_text_qualification} =~ /=/ ) { - my ($f, $s) = split /\s*=\s*/, $CGI->{ui_text_qualification} , 2; - $CGI->{ui_text_qualification} = "co=1\nop=eq\nse=$s\nsf=$f"; - } - elsif ($CGI->{ui_text_qualification}) { - $CGI->{ui_text_qualification} = "se=$CGI->{ui_text_qualification}"; - } - else { - $CGI->{ui_text_qualification} = "ra=yes"; - } - $CGI->{ui_list_size} = - q{[data table=__UI_META_TABLE__ - col=height - key="[cgi mv_data_table]" - ]} - if ! $CGI->{ui_list_size}; - $CGI->{ui_description_field} = - q{[data table=__UI_META_TABLE__ - col=field - key="[cgi mv_data_table]" - ]}; - - return; -[/calc] -[if cgi ui_description_field] - [loop more=1 - search=" - fi=[cgi mv_data_table] - st=db - [cgi ui_text_qualification] - su=1 - md=1 - ml=[cgi ui_list_size] - tf=[cgi ui_description_field] - rf=[scratch keypos],[cgi ui_description_field] - "] -
      -
      -
      - [more-list]
      Too big for one page: [more][/more-list] - [/loop] -[else] - [loop more=1 - search=" - fi=[cgi mv_data_table] - st=db - [cgi ui_text_qualification] - md=1 - tf=[scratch keypos] - rf=[scratch keypos] - "] - - [more-list]
      Items [matches] of [value mv_search_match_count], pages: [more][/more-list] - [/loop] -[/else] -[/if] -
      - -
      - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/format_meta.html b/dist/lib/UI/pages/admin/format_meta.html deleted file mode 100644 index 43413714a..000000000 --- a/dist/lib/UI/pages/admin/format_meta.html +++ /dev/null @@ -1,408 +0,0 @@ -[tag flag write]__UI_META_TABLE__[/tag] - -[set page_title][L]Format field[/L][/set] -[if-mm !super] -[set error_message]Not authorized to format fields.[/set] -[bounce page="__UI_BASE__/error"] -[/if-mm] - -[if session arg] -[seti arg][data session arg][/seti] -[elsif value ui_edit_meta] -[seti arg][value ui_edit_meta][/seti] -[/elsif] -[else] -[set arg][/set] -[/else] -[/if] - -[perl tables="__UI_META_TABLE__"] - my $table = q{__UI_META_TABLE__}; - my $key = $Scratch->{arg}; - if($key =~ /(\w+)::(.+)/) { - - $Scratch->{meta_table} = $1; - $Scratch->{meta_column} = $2; - } - my $db = $Db{$table} - or do{ - Log("meta database $table not present."); - return; - }; - if ($table ne $Values->{mv_data_table}) { - $Values->{mv_data_table} = $table; - } - $Values->{ui_data_key_name} = $db->config('KEY'); - my @fields = $db->columns(); - $Values->{ui_data_fields} = join " ", @fields; - if( $db->record_exists($key) ) { - for(@fields) { - $Values->{$_} = $db->field($key, $_); - } - } - else { - for(@fields) { - delete $Values->{$_}; - } - } - if($table eq delete $Values->{ui_auto_export}) { - return "[seti export_ok][tag export $table][/tag][/seti]"; - } - else { - return '[set export_ok][/set]'; - } -[/perl] - -[set process_meta] -[tag flag write]__UI_META_TABLE__[/tag] -[perl tables="__UI_META_TABLE__"] - my $table = $Values->{mv_data_table}; - my $db = $Db{$table}; - my $key = $CGI->{$CGI->{mv_data_key}}; - $Scratch->{mv_data_enable} = 0; - $CGI->{mv_todo} = 'return'; - if(! $key) { - Log('Tried to write empty meta field'); - return; - } - for($db->columns()) { - next unless defined $CGI->{$_}; - $CGI->{$_} =~ s/^[\s\0]+//; - $CGI->{$_} =~ s/[\s\0]+$//; - $CGI->{$_} =~ s/\0+/_/g; - $CGI->{$_} =~ s/__+/_/g; - $CGI->{$_} =~ s/_ / /g; - #$db->set_field($key, $_, $CGI->{$_}); - } - if($CGI->{lookup} and $CGI->{type} =~ /combo/) { - $CGI->{filter} = 'nullselect'; - } - $CGI->{mv_todo} = 'set'; - $CGI->{mv_nextpage} = '__UI_BASE__/format_meta'; - $Session->{arg} = $table; - $Scratch->{mv_data_enable} = 1; - return; -[/perl] -[/set] -@_UI_STD_HEAD_@ - -
      - - -[calc] - my $out = ''; - my $page; - if($CGI->{ui_return_to}) { - ($page, @env) = split /\0/, $CGI->{ui_return_to}; - } - else { - $page = q{@@MV_PAGE}; - } - - $out = < -EOF - for(@env) { - my ($name, $val) = split /=/, $_; - $val =~ s/"/"/g; - $out .= < -EOF - } - return $out; -[/calc] - - - - - - - - -[if-key-exists table="[value mv_data_table]" key="[scratch arg]"] - [L]Update[/L] - [L]Insert[/L] - [L]Delete[/L] - [L]Yes, delete[/L] -[else] - [L]Update[/L] - [L]Insert[/L] -[/else] -[/if-key-exists] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      - - - - - - - - - - - - - -
      - [title-bar 200 2]Widget -
      - Default is text box,
      60 columns[/title-bar] -
      - [title-bar 100 2]Window size -
      - multiple select
      only[/title-bar] -
      - [title-bar __UI_LEFT_WIDTH__ 2]Box Height -
      - Text area or
      radio/check table[/title-bar] -
      - [title-bar __UI_LEFT_WIDTH__ 2]Box Width -
      - Text box, Text area,
      or radio/check area[/title-bar] -
      - - - - - [perl] - delete $Scratch->{ui_type_height}; - delete $Scratch->{ui_type_width}; - $Values->{type} =~ m{(\d+)(?:_+(\d+))?} - or return; - $Scratch->{ui_type_height} = $1 || ''; - $Scratch->{ui_type_width} = $2 || ''; - $Scratch->{ui_type_width} = delete $Scratch->{ui_type_height} - if ! $Scratch->{ui_type_width}; - return; - [/perl] - or - - or -
      -
      - Field label -
      What should display as field title. -
      - - -
      - Fixed list
      - - This is a comma-separated list of values to present. It takes the form -
      VALUE=Label text*
      -
      -
      - where VALUE is the value to go in the cell, Label text is the - label for the selection, and the optional * selects this as a default. -
      - List Lookup - -
      - - Looks up unique values and places in select box. -
      -
      - Table - Column (if not [scratch meta_column]) - - -
      - Filter -
      - - Allows you to filter against common errors. Select as many as wanted. -
      -
      - - -
      - Help text
      - - Displayed just like this. -
      -
      -
      - -[calc] - my $check = $Values->{ui_data_fields} || $Tag->db_columns(); - return if $check =~ /\b$Values->{ui_data_key_name}\b/; - my $name = $Values->{ui_data_key_name}; - my $val = $Scratch->{arg}; - $val =~ s/"/"/g; -[/calc] - -
      -    - -[if !value ui_too_large] - - [L]Auto-export[/L] -[/if] - - -[value name=ui_data_fields set=""] - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/fr_index.html b/dist/lib/UI/pages/admin/fr_index.html deleted file mode 100644 index e89509dae..000000000 --- a/dist/lib/UI/pages/admin/fr_index.html +++ /dev/null @@ -1,12 +0,0 @@ - -[if !session logged_in] -[bounce page="__UI_BASE__/login"] -[/if] -[set ui_frames]1[/set] -[set window_override]1[/set] -[seti win][tag time]%m%d%H%M%S[/tag][/seti] - - - - - diff --git a/dist/lib/UI/pages/admin/genconfig.html b/dist/lib/UI/pages/admin/genconfig.html deleted file mode 100644 index 3bfe25aef..000000000 --- a/dist/lib/UI/pages/admin/genconfig.html +++ /dev/null @@ -1,180 +0,0 @@ -[tmp page_perm]files[/tmp] -[tmp page_title]Administration: [calc]$Config->{CatalogName}[/calc][/tmp] -[set ui_class]Admin[/set] -[tmp help_name]genconfig.main[/tmp] -[tmp icon_name]admin/icon_config.gif[/tmp] -@_UI_STD_HEAD_@ - - - -
      - - - - - - - - - - - - -
      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      - Interchange version -     [version]
      - Last time server restarted - [calc] scalar localtime([file-info conf=1 name="interchange.pid" time=1])[/calc]
      - Last time changes applied - [file name=`"$Config->{ConfDir}/status.$Config->{CatalogName}"`] ([page __UI_BASE__/reconfig]apply now)
      - Catalog URL - [calc]return qq{$Config->{VendURL}}[/calc]
      - Secure URL - [calc]return qq{$Config->{SecureURL}}[/calc]
      - Perl Version - Perl [version extended=1 perl=1 perl_config="[cgi more_perl]"] -
      - Location of Error Logs - - Global: [version extended=1 global_error=1]
      - Local: [version extended=1 local_error=1] -
      - Interchange PID - [version extended=1 pid=1]
      - Interchange SUID User - [version extended=1 uid=1]
      - Environment variables passed - [version extended=1 env=1]
      - Active sessions - [if cgi list_sessions]
      - (last - [calc] int ( - $::Variable->{ACTIVE_SESSION_MINUTES} - || ( ($Config->{SessionExpire} || 60) / 60) - ) - [/calc] minutes) - [/if] -
      [if cgi list_sessions][loop list="[dump-session find=1]"][loop-code]
      [/loop] - [else] - [page href="@@MV_PAGE@@" form="list_sessions=1"]Show active sessions -
      - (last - [calc] int ( - $::Variable->{ACTIVE_SESSION_MINUTES} - || ( ($Config->{SessionExpire} || 60) / 60) - ) - [/calc] minutes) - - [/else] - [/if] - [if cgi show_session] -

      Showing session: [cgi show_session] - -

      -[dump-session name="[cgi show_session]"] - - - [/if] -
      - Database Information - - -
      -
      -
      -
      [version extended=1 db=1]
      - Optional Module Information - [version extended=1 modules=1]
      - Safe operations untrapped - [version extended=1 safe=1]
      - -
      -
      - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/genreport.html b/dist/lib/UI/pages/admin/genreport.html deleted file mode 100644 index 4343dcad9..000000000 --- a/dist/lib/UI/pages/admin/genreport.html +++ /dev/null @@ -1,53 +0,0 @@ -[set page_title]Statistics[/set] -[set ui_class]Reports[/set] -[set page_perm]stats[/set] -[set help_name]genstats.main[/set] -[set icon_name]admin/icon_stats.gif[/set] -@_UI_STD_HEAD_@ - - - -
      - - - - - - -[if-mm advanced orderstats] - -[/if-mm] - -[if-mm advanced trafficstats] - -[/if-mm] - -[if-mm super] - -[/if-mm] - - - - - - -
      - - Order statistics - -
      - - Traffic statistics - -
      - - Database table reports - -
      -
      - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/genstats.html b/dist/lib/UI/pages/admin/genstats.html deleted file mode 100644 index 3ad03db6e..000000000 --- a/dist/lib/UI/pages/admin/genstats.html +++ /dev/null @@ -1,45 +0,0 @@ -[set page_title]Statistics[/set] -[set ui_class]Reports[/set] -[set page_perm]stats[/set] -[set help_name]genstats.main[/set] -[set icon_name]admin/icon_stats.gif[/set] -@_UI_STD_HEAD_@ - - - -
      - - - - - - -[if-mm advanced orderstats] - -[/if-mm] - -[if-mm advanced trafficstats] - -[/if-mm] - - - - - - -
      - - Order statistics - -
      - - Traffic statistics - -
      -
      - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/gentable.html b/dist/lib/UI/pages/admin/gentable.html deleted file mode 100644 index 05f96a0ed..000000000 --- a/dist/lib/UI/pages/admin/gentable.html +++ /dev/null @@ -1,118 +0,0 @@ -[set page_perm]files[/set] -[set page_title]Configuration[/set] -[set ui_class]Admin[/set] -[set help_name]genconfig.main[/set] -[set icon_name]admin/icon_config.gif[/set] -@_UI_STD_HEAD_@ - - - -
      - - - - - - - - - - - - -
      - -Database tables - -
      - - - -[loop list="[list-databases]"] -[loop-sub db_action] -sub { -#Log("args=" . $Tag->uneval({ ref => \@_ })); - my $name = shift; - my $rec = shift; - my $tab = $rec->[0]; -#Log("name=$name tab=$tab"); - $name = $tab if ! $name; - my $url = "$Config->{VendURL}/__UI_BASE__"; - my $froot = sub { - my $fn = shift; - $fn =~ s#^$Config->{VendRoot}/##o; - return $fn; - }; - my $ref = { - upload => { - img => 'admin/up.gif', - url => "$url/upload_file?mv_arg=" . - $froot->(join "/", - ($Config->{Database}{$tab}{dir} || $Config->{ProductDir}), - $Config->{Database}{$tab}{file} - ) - . '&ui_return_to=@@MV_PAGE@@', - }, - view => { - img => 'admin/index.gif', - url => "$url/do_view?mv_arg=" . - $froot->(join "/", - ($Config->{Database}{$tab}{dir} || $Config->{ProductDir}), - $Config->{Database}{$tab}{file} - ), - }, - download => { - img => 'admin/down.gif', - url => "$Config->{VendURL}/ui_download/" . - $froot->(join "/", - ($Config->{Database}{$tab}{dir} || $Config->{ProductDir}), - $Config->{Database}{$tab}{file} - ), - }, - import => { - img => 'admin/left.gif', - url => "$url/import_table?mv_data_table=$tab", - }, - export => { - img => 'admin/right.gif', - url => "$url/export_table?mv_data_table=$tab", - }, - edit => { - img => 'admin/layout.gif', - url => "$url/flex_select?mv_data_table=$tab", - }, - }; - my $out = ''; - if(! $dblist_done_one++) { - $out .= ''; - for(qw/edit import export view upload download /, "Table name (description)") { # Add "report" - $out .= qq{}; - } - $out .= ""; - } - $out .= ''; - for(qw/edit import export view upload download /) { # Add "report" - my $line = $ref->{$_}; - $out .= <$_ $tab -EOF - } - $out .= qq{}; - return $out; -} -[/loop-sub] -[loop-exec db_action][loop-data __UI_META_TABLE__ label][/loop-exec] -[/loop] -
      $_
       $name}; - my $desc = tag_data('__UI_META_TABLE__', 'name', $name); - $out .= qq{ ($desc)} if $desc; - $out .= q{
      - -
      -
      - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/genupload.html b/dist/lib/UI/pages/admin/genupload.html deleted file mode 100644 index 85b30cfc0..000000000 --- a/dist/lib/UI/pages/admin/genupload.html +++ /dev/null @@ -1,52 +0,0 @@ -[set page_title]Upload/Download[/set] -[set ui_class]Admin[/set] -[set page_perm]upload[/set] -[set help_name]upload.main[/set] -[set icon_name]admin/icon_config.gif[/set] -@_UI_STD_HEAD_@ - - - -
      - - - - - - -[if-mm advanced pages] - -[/if-mm] - -[if-mm advanced config] - -[/if-mm] - -[if-mm advanced files] - -[/if-mm] - - - - - -
      - -Pages - -
      - - Configuration (catalog.cfg) - -
      - - Any file - -
      -
      - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/genxport.html b/dist/lib/UI/pages/admin/genxport.html deleted file mode 100644 index aae8bcc2f..000000000 --- a/dist/lib/UI/pages/admin/genxport.html +++ /dev/null @@ -1,65 +0,0 @@ -[set page_title]Import / export tools[/set] -[set ui_class]Admin[/set] -[set help_name]genxport.main[/set] -[set icon_name]admin/icon_config.gif[/set] -@_UI_STD_HEAD_@ - - - -
      - - - - - - - - - - - - - - - - - - - - - - - - -
      - -Database import
      -
      -
      - -Individual table import
      -
      -
      - -Layout import
      -
      -
      - -Database export

      - -

      - -Individual table export
      -
      -
      - -Layout export

      - -

      -
      - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/group.html b/dist/lib/UI/pages/admin/group.html deleted file mode 100644 index 2636a5eeb..000000000 --- a/dist/lib/UI/pages/admin/group.html +++ /dev/null @@ -1,114 +0,0 @@ -[calc] $CGI->{no_dbmenu} = 1; $CGI->{access_menu} = 1; return [/calc] -[set page_title]Admin Group Manager[/set] -[set ui_class]Admin[/set] -[set page_perm]group=l[/set] -[set help_name]group.main[/set] -[set icon_name]admin/icon_config.gif[/set] - -@_UI_STD_HEAD_@ -[if scratch ui_message] -

      -

      - [scratch ui_message][set ui_message][/set] -
      -

      -  -[/if] - -

      - - - - - - - - - -[set Create new group] -mv_nextpage=__UI_BASE__/group_edit -group_id=NEW -ui_hide_key=0 -[/set] - -[set Show permissions] -user_id=[cgi group_id] -mv_nextpage=__UI_BASE__/access_permissions -ui_return_to=@@MV_PAGE@@ -[/set] - - -[set Delete group] -mv_nextpage=@@MV_PAGE@@ -[flag type=write table="__UI_ACCESS_TABLE__"] -[if-mm advanced access=d] -[perl table="__UI_ACCESS_TABLE__"] - my $db = $Db{__UI_ACCESS_TABLE__}; - if(! $db) { - $Scratch->{ui_message} = "Bad access table __UI_ACCESS_TABLE__"; - return; - } - unless ( $db->delete_record($CGI->{group_id}) ) { - $Scratch->{ui_message} = - "Failed to delete group $CGI->{group_id} from table __UI_ACCESS_TABLE__"; - return; - } - $Scratch->{ui_message} = - "Deleted group $CGI->{group_id} from table __UI_ACCESS_TABLE__"; - return; -[/perl] -[else] -[set ui_message]Not authorized to delete groups.[/set] -[/else] -[/if-mm] -[/set] - - - - - - - - - - - - - - - - - - - -
      - -
      -
      -

      -[if-mm advanced access=d] - -[/if-mm] -

      - -
      - -

      - -[set Back] -mv_todo=back -mv_nextpage=index -[/set] - - - -

      - -@_UI_STD_FOOTER_@ - - diff --git a/dist/lib/UI/pages/admin/group_edit.html b/dist/lib/UI/pages/admin/group_edit.html deleted file mode 100644 index 919824055..000000000 --- a/dist/lib/UI/pages/admin/group_edit.html +++ /dev/null @@ -1,101 +0,0 @@ -[calc] $CGI->{no_dbmenu} = 1; $CGI->{access_menu} = 1; return [/calc] -[seti page_title]Group Edit: [data table=__UI_ACCESS_TABLE__ col=name key="[cgi group_id]"][/seti] -[seti page_banner]Group Edit: [data table=__UI_ACCESS_TABLE__ col=name key="[cgi group_id]"][/seti] -[set ui_class]Admin[/set] -[set page_perm]group=v[/set] -[set help_name]group.main[/set] -[set icon_name]admin/icon_config.gif[/set] - -@_UI_STD_HEAD_@ -[if scratch ui_message] -

      -

      - [scratch ui_message][set ui_message][/set] -
      -

      -  -[/if] -[loop list="[cgi group_id]"] -

      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      -Group name - - -
      -Group ID - -[if cgi ui_hide_key] - - [loop-code] -[else] - [if-mm !advanced access=c] - [set ui_error]No permission to create user.[/set] - [bounce page="__UI_BASE__/error"] - [/set] - [/if-mm] - - -[/else] -[/if] -
      - -

      - -[if-mm advanced access=e] - [set Ok] - [calc] - $CGI->{username} =~ s/\W+//g; - $CGI->{username} =~ s/^/:/; - return; - [/calc] - mv_todo=set - [/set] - - -[else] - [set Back] - mv_todo=back - [/set] - -[/else] -[/if-mm] - - -

      - -[/loop] - - - -@_UI_STD_FOOTER_@ - - diff --git a/dist/lib/UI/pages/admin/import_table.html b/dist/lib/UI/pages/admin/import_table.html deleted file mode 100644 index b7680da11..000000000 --- a/dist/lib/UI/pages/admin/import_table.html +++ /dev/null @@ -1,85 +0,0 @@ -[set page_title]Individual Table Import[/set] -[set table_perm]=i[/set] -[set help_name]import.main[/set] -[set ui_class]Admin[/set] -[set icon_name]admin/icon_config.gif[/set] -@_UI_STD_HEAD_@ - - - -[if type=explicit compare="[value-extended - name=upload_file - test=isfile]"] - [title-bar]Import of table [cgi mv_data_file]: - [value-extended - name=upload_file - outfile="upload/[cgi mv_data_table].[cgi ui_upload_ext]" - yes=Succeeded - no=FAILED - ][/title-bar] -

      - [if type=file term="upload/[cgi mv_data_table].[cgi ui_upload_ext]"] - [check-upload file="[cgi mv_data_table].[cgi ui_upload_ext]" same=1] - [/if] - - [if type=file term="products/[cgi mv_data_table].[cgi ui_upload_ext]"] - [flag type=write table="[cgi mv_data_table]"] - [/if] - - [if cgi ui_upload_ext eq add] - [import-fields table="[cgi mv_data_table]" - file="products/[cgi mv_data_table].add" - move=1 add=1 dir=backup] - [elsif cgi ui_upload_ext eq update] - [import-fields table="[cgi mv_data_table]" - file="products/[cgi mv_data_table].update" - move=1 dir=backup] - [/elsif] - [/if] -[/if] - -[calc] - return if ! $CGI->{mv_data_table}; - $Values->{mv_data_table} = $CGI->{mv_data_table}; - return; -[/calc] -

      - - - - - - - - - - - - - - - - -
      - -
      - -
      -
      - -
      - - -
      - -
      - - - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/index.html b/dist/lib/UI/pages/admin/index.html deleted file mode 100644 index cf7d33bba..000000000 --- a/dist/lib/UI/pages/admin/index.html +++ /dev/null @@ -1,277 +0,0 @@ -[strip interpolate=1] -[if-mm !logged_in] - [bounce page="__UI_BASE__/login"] -[/if-mm] -[set page_title]Interchange Administration[/set] -[tmp ui_no_title]1[/tmp] -[set icon_name][/set] -[set help_name]index[/set] -[set ui_class]None[/set] - -[seti meta_header] - - -[/seti] - -[/strip] -@_UI_STD_HEAD_@ - - - - -
      -


      -
      - - - - -
      -
      - - -[calc] - my $data = q{[version extended=1 modules=1 joiner="

      "]}; - return unless $data =~ /IMPORTANT/; - my @lines = grep /not\s+found/, split '

      ', $data; - my @important = grep /IMPORTANT/, @lines; - my @minor = grep $_ !~ /IMPORTANT/, @lines; - my $imp = join '

      ', @important; - my $minor = join '

      ', @minor; - return < -

      - -EOF -[/calc] - - -[if-mm advanced order] - - - - - -[/if-mm] - -[if-mm advanced userdb] - - - - - -[/if-mm] - -[if-mm advanced item] - - - - - -[/if-mm] - -[if-mm advanced page] - - - - - -[/if-mm] - -[if-mm advanced sitedesign] - - - - - -[/if-mm] - -[if-mm advanced item] - - - - - -[/if-mm] - -[if-mm advanced stats] - - - - - -[/if-mm] - -[if-mm advanced techadmin] - - - - - -[/if-mm] - -
      -

      Admin interface will not work properly.

      -Please install needed Perl modules: - -
      - $imp -
      -
      - $minor -
      -
      -The easiest way to do this is to use the CPAN module and do: -
      -perl -MCPAN -e 'install Bundle::Interchange' -
      - -
      - - - - - -  Orders - - - - -View and manage incoming orders, archive and access past orders - -
      - - - - - -  Customers - - - - -View and manage customer information and order history - -
      - - - - - -  Items - - - - -Add and edit items displayed for sale on the site - -
      - - - - - -  Content - - - - -Create, edit, upload and download pages - -
      - - - - - -  Design - - - - -Organize site navigation, manage site layout - -
      - - - - - -  Merchandising - - - - -Set up quantity pricing, up-sell, promotions, and affiliates - -
      - - - - - -  Reporting - - - - -View statsitics on orders and site traffic, create custom reports - -
      - - - - - -  Administration - - - - -Administrator and developer-oriented tools - -
      -
      -


      -
      -
      - - -@_UI_STD_FOOTER_@ - - diff --git a/dist/lib/UI/pages/admin/item.html b/dist/lib/UI/pages/admin/item.html deleted file mode 100644 index 204b74d8d..000000000 --- a/dist/lib/UI/pages/admin/item.html +++ /dev/null @@ -1,241 +0,0 @@ -[if !cgi mv_data_table] -[calc] - $CGI->{mv_data_table} = $Values->{mv_data_table} = $Config->{ProductFiles}[0]; - return; -[/calc] -[/if] - - - - -[if cgi deleterecords] -[if-mm function="!tables" table="[cgi mv_data_table]"] -[bounce page="__UI_BASE__/error"] -[else] - -[/else] -[/if-mm] -[/if] - -[perl tables="[cgi mv_data_table] __UI_META_TABLE__"] - delete $Scratch->{ui_location}; - if($CGI->{ui_sequence_edit}) { - my $doit; - if($CGI->{item_id_left} =~ s/^(.*?),//) { - $CGI->{item_id} = $1; - $doit = 1; - } - elsif ($CGI->{item_id_left}) { - $CGI->{item_id} = delete $CGI->{item_id_left}; - delete $CGI->{ui_sequence_edit}; - $doit = 1; - } - else { - delete $CGI->{item_id}; - delete $CGI->{ui_sequence_edit}; - } - return unless $doit; - $Scratch->{ui_location} - = $Tag->area( { - href => '__UI_BASE__/item_edit', - form => qq{ - item_id=$CGI->{item_id} - item_id_left=$CGI->{item_id_left} - ui_sequence_edit=$CGI->{ui_sequence_edit} - }, - }); - return; - } - - return unless $CGI->{item_id}; - return unless delete $CGI->{deleterecords}; - return unless $Tag->if_mm('tables', '=d'); - - delete $Scratch->{ui_location}; - $Config->{NoSearch} = ''; - my $tab = $CGI->{mv_data_table} or return; - - my $db = $Db{$tab}; - if(! ref $db) { - $Scratch->{error_message} = "Error: no $tab database.
      "; - $Scratch->{ui_location} = "__UI_BASE__/error"; - return; - } - - for(grep $_, @{$CGI_array->{item_id}}) { - $db->delete_record($_) - or push @errors, $@; - } - if(@errors) { - my $plural = @errors > 1 ? 's' : ''; - return "Error$plural:
      • " . - join ("
      • ", @errors) . - "

      "; - } - return; -[/perl] - -[if scratch ui_location] - [bounce href=`delete $Scratch->{ui_location}`] -[/if] - -[set ui_class]Items[/set] -[set page_title]Item editor[/set] -[set table_perm]1[/set] -[set help_name]item.main[/set] -[set icon_name]admin/icon_item.gif[/set] -@_UI_STD_HEAD_@ - - - -[if scratch ui_message] -
      - [scratch ui_message] - [set ui_message][/set] -
      -

      -  -[/if] - -

      - - -
      -[if cgi ui_text_qualification] -

      Entries containing "[cgi ui_text_qualification]"

      -[/if] -[search-region more=1 arg=" - [if cgi ui_text_qualification] - se=[cgi ui_text_qualification] - su=yes - [else]ra=yes[/else][/if] - [if cgi ui_sort_field] - tf=[cgi ui_sort_field] - to=[cgi ui_sort_option] - [else] - tf=description - [/else] - [/if] - st=db - sp=@@MV_PAGE@@ - ml=25 -"][on-match] -[calc] - my $so = $CGI->{ui_sort_option}; - my $fld = $CGI->{ui_sort_field}; - $fld =~ s/[\s,\0].*//; - sub sortrev { - my ($f, $n) = @_; - my $out = 'ui_sort_option='; - $out .= 'n' if $n; - return $out unless $fld eq $f; - return $out if $so =~ /r/; - return $out . 'r'; - } - return; -[/calc] - -
      - - - - - - - - - - - - - - - - -[/on-match] -[search-list] - - - - - - - - - - -[/search-list] -[no-match] - - - -[/no-match] - - -[more-list] - - - -[/more-list] -
      [page href=@@MV_PAGE@@ form=` - return "ui_sort_field=sku\n" . sortrev('sku'); - `]SKU[page href=@@MV_PAGE@@ form=` - return "ui_sort_field=description\n" . sortrev('description'); - `]Description[page href=@@MV_PAGE@@ form=` - return "ui_sort_field=price\n" . sortrev('price', 1); - `]PriceQty pricingUp sellCross sellPromotionInventory
      [page href=__UI_BASE__/item_edit form="item_id=[item-code]"][item-code][filter 30][item-description][/filter][item-price][page href=__UI_BASE__/item_price form=" - item_id=[item-code] -"][if-item-data pricing sku]Yes[else]No[/else][/if-item-data] -[page href=__UI_BASE__/item_up form=" - item_id=[item-code] -"][if-item-data merchandising upsell_to]Yes[else]No[/else][/if-item-data] -[page href=__UI_BASE__/item_cross form=" - item_id=[item-code] -"][either][if-item-data merchandising cross_category]Yes[/if-item-data][or][if-item-data merchandising cross_sell]Yes[/if-item-data][or]No[/either] -[page href=__UI_BASE__/item_feature form=" - item_id=[item-code] -"][if-item-data merchandising featured]Yes[else]No[/else][/if-item-data] -[page href=__UI_BASE__/item_inventory form=" - item_id=[item-code] -"][if-item-data inventory quantity][item-data inventory quantity][else]N/A[/else][/if-item-data] -
      -
      -Nothing matched. -

      -
      -More products: [decade-next][/decade-next] [more] [decade-prev][/decade-prev] -
      -[button text="Edit checked items in sequence"] -ui_sequence_edit=[calc] - $CGI->{item_id_left} = $CGI->{item_id}; - $CGI->{item_id_left} =~ s/\0+/,/g; - Log("in ui_sequence_edit click"); - if($CGI->{item_id_left} =~ s/^(.*?),//) { - $CGI->{item_id} = $1; - return 1; - } - else { - delete $CGI->{item_id_left}; - return ''; - } -[/calc] -mv_nextpage=__UI_BASE__/item_edit -mv_todo=return -[/button] - -     - -[button text="Delete checked items" - confirm="Are you sure you want to delete the checked items?"] -[flag type=write table="[cgi mv_data_table]"] -deleterecords=1 -mv_todo=back -mv_nextpage=@@MV_PAGE@@ -[/button] -
      - -[/search-region] - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/item_edit.html b/dist/lib/UI/pages/admin/item_edit.html deleted file mode 100644 index 48a6c100f..000000000 --- a/dist/lib/UI/pages/admin/item_edit.html +++ /dev/null @@ -1,58 +0,0 @@ -[calc] - $CGI->{mv_data_table} = $Config->{ProductFiles}[0]; - if ($CGI->{item_id} eq 'new') { - $CGI->{ui_new_item} = 1; - } - else { - $CGI->{ui_hide_key} = 1 unless $CGI->{item_id} eq 'new'; - } - if(! $CGI->{ui_data_fields}) { - $CGI->{ui_data_fields} = $Variable->{UI_ITEM_FIELDS} - || 'sku description category comment price image weight size color'; - } - if(! $CGI->{ui_break_before}) { - $CGI->{ui_break_before} = $Variable->{UI_ITEM_BREAK} - || 'image size'; - } - my @args = ( - '__UI_BASE__/item', - "item_id_left=$CGI->{item_id_left}", - "ui_sequence_edit=$CGI->{ui_sequence_edit}", - ); - $CGI->{ui_return_to} = join "\0", @args; - return; -[/calc] -[if cgi ui_new_item] - [calc] - $CGI->{item_id} = q{[counter file="products/products.autonumber" start=new0000]}; - return; - [/calc] -[/if] -@_UI_STD_DBEDIT_HEAD_@ - -[set ui_class]Items[/set] -[seti page_title]Item editor: [cgi item_id][/seti] -[seti page_banner]Item editor: edit item [cgi item_id][/seti] -[set help_name]item.edit[/set] -[set icon_name]admin/icon_item.gif[/set] - -@_UI_STD_HEAD_@ -

      -@_UI_STD_DBEDIT_TABLE_@ - -[if-mm super] -No meta display -[/if-mm] - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/layout.html b/dist/lib/UI/pages/admin/layout.html deleted file mode 100644 index 20423074a..000000000 --- a/dist/lib/UI/pages/admin/layout.html +++ /dev/null @@ -1,1082 +0,0 @@ -[set page_title]Layout Editor[/set] -[set ui_class]Design[/set] -[set page_banner]Layout Editor: Organize your site into categories[/set] -[set page_perm]layout=e[/set] -[set help_name]layout.edit[/set] -[set icon_name]admin/icon_pages.gif[/set] -[seti ui_body_extra][/seti] - -@_UI_STD_HEAD_@ -[if scratch ui_message] -

      -[scratch ui_message][set ui_message][/set] -
      -[/if] - -[if scratch ui_failure] - Failed: - [scratch ui_failure][set ui_failure][/set]
      -[/if] - - - - -[if cgi newarea] - -[elsif cgi newcat] - -[/elsif] -[elsif cgi setarea] - -[/elsif] -[elsif cgi setcat] - -[/elsif] -[/if] - -[set Delete section] -[/set] - - - - - - - - - -[if value area] -[then] - - - - -
      - -
      - - - - - -Area -- section:
      - -
      - -
      - - -[button text="Section properties" hspace=2 vspace=5 src="@_UI_IMG_@admin/icon_pages.gif" hidetext=1] -[/button] - -[button text="Sort section higher" src="@_UI_IMG_@admin/up.gif" hidetext=1] - [flag type=write table=area] - [perl tables=area] - my $db = $Db{area} || return; - my $curr = $db->field($CGI->{area}, 'sort'); - $curr =~ s/^0+//; - $curr = 1 if ! $curr || $curr < 0; - $curr--; - $db->set_field($CGI->{area}, 'sort', sprintf("%02d", $curr)); - return; - [/perl] -[/button] - - -[button text="Sort section lower" src="@_UI_IMG_@admin/down.gif" hidetext=1] - [flag type=write table=area] - [perl tables=area] - my $db = $Db{area} || return; - my $curr = $db->field($CGI->{area}, 'sort'); - $curr =~ s/^0+//; - $curr = 0 if ! $curr || $curr < 0; - $curr++; - $db->set_field($CGI->{area}, 'sort', sprintf("%02d", $curr)); - return; - [/perl] -[/button] - -[button text="Create section" src="@_UI_IMG_@admin/plus.gif" hidetext=1] - mv_todo=back - newarea=NEW -[/button] - -[button - text="Delete section" src="@_UI_IMG_@admin/delete.gif" - confirm="Are you sure you want to delete this section?" - hidetext=1] - [tag flag write]area[/tag] - [if-mm advanced sitedesign=d] - [perl tables="area"] - my ($item) = $CGI->{area}; - my $out; - unless ($Db{area}) { - Log("no site design table 'area'"); - return undef; - } - my $name = $Db{area}->field($item, 'name'); - if ($Db{area}->delete_record($item)) { - $out .= "Deleted $name from area table
      "; - } - else { - $out .= "Item $item not in $_ table (or delete failed)
      "; - } - $Scratch->{ui_message} = $out; - return; - [/perl] - [else] - [set ui_message]Not authorized to delete layout items.[/set] - [/else] - [/if-mm] -[/button] -
      - - -
      - -Contains:
      - - -
      - -[button text="Category properties" hspace=2 vspace=5 hidetext=1 src="@_UI_IMG_@admin/icon_pages.gif"][/button] - -[button text="Sort category higher" hidetext=1 src="@_UI_IMG_@admin/up.gif"] - [flag type=write table=cat] - [perl tables=cat] - my $db = $Db{cat} || return; - my $curr = $db->field($CGI->{cat}, 'sort'); - $curr =~ s/^0+//; - $curr = 1 if ! $curr || $curr < 0; - $curr--; - $db->set_field($CGI->{cat}, 'sort', sprintf("%02d", $curr)); - return; - [/perl] -[/button] - -[button text="Sort category lower" hidetext=1 src="@_UI_IMG_@admin/down.gif"] - [flag type=write table=cat] - [perl tables=cat] - my $db = $Db{cat} || return; - my $curr = $db->field($CGI->{cat}, 'sort'); - $curr =~ s/^0+//; - $curr = 0 if ! $curr || $curr < 0; - $curr++; - $db->set_field($CGI->{cat}, 'sort', sprintf("%02d", $curr)); - return; - [/perl] -[/button] - -[button text="Create category" hidetext=1 src="@_UI_IMG_@admin/plus.gif"] - mv_todo=back - newcat=NEW -[/button] - -[button text="Delete category" hidetext=1 src="@_UI_IMG_@admin/delete.gif" - confirm="Are you sure you want to delete this category?" -] - [tag flag write]cat[/tag] - mv_nextpage=@@MV_PAGE@@ - [if-mm advanced sitedesign=d] - [perl tables="cat"] - my ($item) = $CGI->{cat}; - my $out; - unless ($Db{cat}) { - Log("no site design table 'cat'"); - return undef; - } - my $name = $Db{cat}->field($item, 'name'); - if ($Db{cat}->delete_record($item)) { - $out .= "Deleted $name from cat table
      "; - } - else { - $out .= "Item $item not in $_ table (or delete failed)
      "; - } - $Scratch->{ui_message} = $out; - return; - [/perl] - [else] - [set ui_message]Not authorized to delete items.[/set] - [/else] - [/if-mm] -[/button] -
      - -
      - - - - - - - - - -
      -[set name="<--"] -[/set] - -[button text="Move category left" hidetext=1 src="@_UI_IMG_@admin/left.gif"] -[if-mm advanced layout=e] -[flag type=write table=cat] -[perl tables=cat] - my $db = $Db{cat}; - if (! $db) { - Log ("No category database."); - return; - } - my $area = $CGI->{area}; - @codes = split /\0/, $CGI->{add_cat}; - for(@codes) { - my $curr = $db->field($_, 'sel'); - if($curr) { - $curr =~ s/\s+$//; - $curr .= " $area"; - } - else { - $curr = $area; - } - $db->set_field($_, 'sel', $curr); - } - return; -[/perl] -[/if-mm] -[/button] - -[button text="Move category right" hidetext=1 src="@_UI_IMG_@admin/right.gif"] -[if-mm advanced layout=e] -[flag type=write table=cat] -[perl tables=cat] - my $db = $Db{cat}; - if (! $db) { - Log ("No category database."); - return; - } - my $area = $CGI->{area}; - @codes = split /\0/, $CGI->{cat}; - my @there; - foreach my $one (@codes) { - my %seen; - my $curr = $db->field($one, 'sel'); - Log("current = $curr"); - @there = grep $_ ne $area, split /[\0\s]+/, $curr; - Log("now = @there"); - @there = grep !$seen{$_}++, @there; - $curr = join " ", @there; - Log("now current = $curr"); - $db->set_field($one, 'sel', join " ", @there); - } - return; -[/perl] -[/if-mm] -[/button] -Available categories:
      - - -
      - -
      - - - - - - - - - - - - - - - - - - - -[/then] -[else] - - - - - - -[/else] -[/if] - -
      - - -[value name=mv_data_table set="area" hide=1] - -[perl tables="[value mv_data_table]"] -my $table = $Values->{mv_data_table}; -$Values->{ui_data_key_name} = $Db{$table}->config('KEY'); -if ($table ne $Values->{mv_data_table}) { - $Values->{mv_data_table} = $table; -} -$Values->{ui_data_fields} = - $CGI->{ui_data_fields} || - $CGI->{mv_data_fields} || - $Values->{"$table:ui_data_fields"} || '' ; -$Values->{ui_data_fields} =~ s/\0+/ /g; -return; -[/perl] - -[set process_ui_area] -setarea=[cgi selector] -[perl] - my @filters = grep /^ui_filter:/, keys %$CGI; - return unless @filters; - foreach my $key (@filters) { - my $val = delete $CGI->{$key}; - $key =~ s/ui_filter://; - next unless $val; - next unless defined $CGI->{$key}; - $CGI->{$key} = $Tag->filter($val, $CGI->{$key}, $key); - } - return; -[/perl] -[/set] - - -[loop list="[value area]" prefix=table] -
      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[set ui_area_type][table-data area link_type][/set] - - - - - - -[if scratch ui_area_type eq external] - - - - - -[elsif scratch ui_area_type eq internal] - - - - - - - - - -[/elsif] -[elsif scratch ui_area_type eq simple] - -[calc] - $Values->{tab} = q{[table-data area tab]} || $Config->{ProductFiles}[0]; - return; -[/calc] - - - - - - - - - - - - - - - -[/elsif] -[elsif scratch ui_area_type eq complex] - - - - - - - - - - - -[/elsif] -[/if] - - - - - -[set ui_area_display][table-data area display_type][/set] - - - - - - -[if scratch ui_area_display =~ /icon|image/] - - - - - - - - - - - -[/if] - - - - -
       Section Properties
      - Name - - - -
      - Page class - - - -
      - - - - -
      - -
      - Page area - - - - -
      - - - - - -
      -

      - Link type - - [display table=area column=link_type key="[value area]" js=|onChange="this.form.submit()"|] -
      - External - - - -
      - Interchange page - - - - -
      - Parameters - - - -
      - Table - - - -
      - field=column pairs - - - -
      - Results page - - - -
      - [set Create] - mv_todo=back - mv_nextpage=__UI_BASE__/search_wizard - [/set] - Complex search link
        -
      - - [calc] - my $n = 4; - if($Scratch->{search_page}) { - $stuff = delete $Scratch->{search_page}; - $stuff =~ s/.*?(['\|])(.*)\1.*/$2/s; - $stuff =~ s/^\s+//mg; - $stuff =~ s/\s+$//mg; - } - else { - $stuff = q{[table-data area search]}; - } - if($stuff =~ /\S/) { - $n = 2 + ($stuff =~ s/[\r\n]+/\n/g); - } - else { $stuff = '' }; - return ""; - [/calc] -

      - Display type - - - [display table=area column=display_type key="[value area]" js=|onChange="this.form.submit()"|] -
      - Image - - - - [display table=area column=image key="[value area]" js=|onChange="this.form.submit()"|] -
      - Image properties - - - -
      - Link template - - - [display table=area column=link_template key="[value area]"] -
      - -[button text="Change area"][/button] - -
      -[/loop] - -
      - -[value name=mv_data_table set="cat" hide=1] - -[perl tables="[value mv_data_table]"] -my $table = $Values->{mv_data_table}; -$Values->{ui_data_key_name} = $Db{$table}->config('KEY'); -if ($table ne $Values->{mv_data_table}) { - $Values->{mv_data_table} = $table; -} -$Values->{ui_data_fields} = - $CGI->{ui_data_fields} || - $CGI->{mv_data_fields} || - $Values->{"$table:ui_data_fields"} || '' ; -$Values->{ui_data_fields} =~ s/\0+/ /g; -return; -[/perl] - -[set process_ui_cat] -setcat=[cgi selector] -[perl] - my @filters = grep /^ui_filter:/, keys %$CGI; - return unless @filters; - foreach my $key (@filters) { - my $val = delete $CGI->{$key}; - $key =~ s/ui_filter://; - next unless $val; - next unless defined $CGI->{$key}; - $CGI->{$key} = $Tag->filter($val, $CGI->{$key}, $key); - } -return; -[/perl] -[/set] - -[loop list="[either][value cat][or]NEW[/either]" prefix=table] -
      - - - - - - - - - - - - - - - - - - - - -[set ui_cat_type][table-data cat link_type][/set] - - - - - -[set needs_banner_info][/set] - -[if scratch ui_cat_type eq external] - - - - - -[elsif scratch ui_cat_type eq internal] - - - - - - - - - -[/elsif] -[elsif scratch ui_cat_type eq explode] - - - - -[/elsif] -[elsif scratch ui_cat_type eq simple] -[set needs_banner_info]1[/set] - -[calc] - $Values->{tab} = q{[table-data cat tab]} || $Config->{ProductFiles}[0]; - return; -[/calc] - - - - - - - - - - - - - - - -[/elsif] -[elsif scratch ui_cat_type eq complex] -[set needs_banner_info]1[/set] - - - - - - - - - - -[/elsif] -[/if] - -[if scratch needs_banner_info] - - - - - - - - -[/if] - - - - - -[set ui_cat_display][table-data cat display_type][/set] - - - - - - -[if scratch ui_cat_display =~ /icon|image/] - - - - - - - - - - - -[/if] - - - - - - -
       Category properties
      - Name - - - -
      - Link type - - [display table=cat column=link_type key="[value cat]" js=|onChange="this.form.submit()"|] -
      - External - - - -
      - Interchange page - - - - -
      - Parameters - - - -
      - Explode file - - -  Parameters:  -
      - Table - - - -
      - field=column pairs - - - -
      - Results page - - - -
      - [set Create] - mv_todo=back - mv_nextpage=__UI_BASE__/search_wizard - [/set] - Complex search link
        -
      - - [calc] - my $n = 4; - if($Scratch->{search_page}) { - $stuff = delete $Scratch->{search_page}; - $stuff =~ s/.*?(['\|])(.*)\1.*/$2/s; - $stuff =~ s/^[\s=0]+$//mg; - $stuff =~ s/^\s+//mg; - $stuff =~ s/\s+$//mg; - } - else { - $stuff = q{[table-data cat search]}; - } - if($stuff =~ /\S/) { - $n = 2 + ($stuff =~ s/[\r\n]+/\n/g); - } - else { $stuff = '' }; - return ""; - [/calc] -
      - - - Banner Text - - - -
      - Banner Image - - - -

      - Display type - - - [display table=cat column=display_type key="[value cat]" js=|onChange="this.form.submit()"|] -
      - Image - - - - [display table=cat column=image key="[value cat]" js=|onChange="this.form.submit()"|] -
      - Image properties - - - -
      - Link template - - - [display table=cat column=link_template key="[value cat]"] -
      - - - -[button text="Change category"] -[/button] - -
      -[/loop] - - - -
      - -
      -@_UI_STD_FOOTER_@ - - - - - - - diff --git a/dist/lib/UI/pages/admin/login.html b/dist/lib/UI/pages/admin/login.html deleted file mode 100644 index 3049e6f30..000000000 --- a/dist/lib/UI/pages/admin/login.html +++ /dev/null @@ -1,130 +0,0 @@ -[set mv_no_count][/set] -[set no_login_required]1[/set] -[set ui_class]None[/set] -[set page_title]Welcome to Interchange[/set] -[set page_banner] [/set] -[set help_name]index[/set] -@_UI_STD_HEAD_@ - - - -
      - - - - -
         - - - - -
      - -[if scratch ui_error] -[scratch ui_error] -[set ui_error][/set] -[/if] - - - - - - - -[if session failure] - - - -[/if] - -[if scratch ui_failure] - - - -[/if] - -[calc] - my $data = q{[version extended=1 modules=1 joiner="

      "]}; - return unless $data =~ /IMPORTANT/; - my @lines = grep /not\s+found/, split '

      ', $data; - my @important = grep /IMPORTANT/, @lines; - my @minor = grep $_ !~ /IMPORTANT/, @lines; - my $imp = join '

      ', @important; - my $minor = join '

      ', @minor; - return < -

      - -EOF -[/calc] - - - - - - - - - - - - - - - - - - - - - - - -
      -
      -[L]Failure:[/L] [data session failure][data base=session field=failure value=""] -
      -
      -
      -[L]Failure:[/L] [scratch ui_failure][set ui_failure][/set] -
      -
      -

      Admin interface will not work properly.

      -Please install needed Perl modules: - -
      - $imp -
      -
      - $minor -
      -
      -The easiest way to do this is to use the CPAN module and do: -
      -perl -MCPAN -e 'install Bundle::Interchange' -
      - -
        
      -
      [L]Username[/L]  
      -
      - -
      -
      [L]Password[/L]  
      -
      - -
        - -
        
      -
      -
      -
      -

      -
      - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/logout.html b/dist/lib/UI/pages/admin/logout.html deleted file mode 100644 index 8f4e26727..000000000 --- a/dist/lib/UI/pages/admin/logout.html +++ /dev/null @@ -1,74 +0,0 @@ -[set no_login_required]1[/set] -[set ui_class]None[/set] -[set page_title]Welcome to Interchange[/set] -[set help_name]index[/set] -[set icon_name]admin/icon_error.gif[/set] -@_UI_STD_HEAD_@ - - - - - - - - - -
        - - - - - - - - - - -[if session failure] - - - -[/if] - -[if scratch ui_failure] - - - -[/if] - - - - - - - - - - - - - -
      -
      -[L]Failure:[/L] [data session failure][data base=session field=failure value=""] -
      -
      -
      -[L]Failure:[/L] [scratch ui_failure][set ui_failure][/set] -
      -
      [L]Username[/L] - -
      [L]Password[/L] - -
      - -
      -
      - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/merchandising.html b/dist/lib/UI/pages/admin/merchandising.html deleted file mode 100644 index 095d4541f..000000000 --- a/dist/lib/UI/pages/admin/merchandising.html +++ /dev/null @@ -1,131 +0,0 @@ -[if !cgi mv_data_table] -[calc] - $CGI->{mv_data_table} = $Values->{mv_data_table} = $Config->{ProductFiles}[0]; - return; -[/calc] -[/if] -[comment] -[if-mm function="!tables" table=`$Config->{ProductFiles}[0]`] -[bounce page="__UI_BASE__/error"] -[/if-mm] -[/comment] - -[set ui_class]Merchandising[/set] -[set page_title]Merchandising editor[/set] -[set table_perm]1[/set] -[set help_name]item.main[/set] -[set icon_name]admin/icon_item.gif[/set] -@_UI_STD_HEAD_@ - - - -[if scratch ui_message] -
      - [scratch ui_message] - [set ui_message][/set] -
      -

      -  -[/if] - -[comment]former ui_data_fields from tmp merch_edit: blurb_begin blurb_end banner_text banner_image start finish[/comment] -

      - - -
      -[if cgi ui_text_qualification] -

      Entries containing "[cgi ui_text_qualification]"

      -[/if] -[search-region more=1 arg=" - [if cgi ui_text_qualification] - se=[cgi ui_text_qualification] - su=yes - [else]ra=yes[/else][/if] - [if cgi ui_sort_field] - tf=[cgi ui_sort_field] - to=[cgi ui_sort_option] - [else] - tf=description - [/else] - [/if] - st=db - sp=@@MV_PAGE@@ - ml=25 -"][on-match] -[calc] - my $so = $CGI->{ui_sort_option}; - my $fld = $CGI->{ui_sort_field}; - $fld =~ s/[\s,\0].*//; - sub sortrev { - my ($f, $n) = @_; - my $out = 'ui_sort_option='; - $out .= 'n' if $n; - return $out unless $fld eq $f; - return $out if $so =~ /r/; - return $out . 'r'; - } - return; -[/calc] - - - - - - - - - - - - -[/on-match] -[search-list] - - - - - - - - -[/search-list] -[no-match] - - - -[/no-match] - - -[more-list] - - - -[/more-list] -
      [page href=@@MV_PAGE@@ form=` - return "ui_sort_field=sku\n" . sortrev('sku'); - `]SKU[page href=@@MV_PAGE@@ form=` - return "ui_sort_field=description\n" . sortrev('description'); - `]DescriptionQty pricingUp sellCross sellPromotion
      [page href=__UI_BASE__/item_edit form="item_id=[item-code]"][item-code][filter 30][item-description][/filter][page href=__UI_BASE__/item_price form=" - item_id=[item-code] -"][if-item-data pricing sku]Yes[else]No[/else][/if-item-data] -[page href=__UI_BASE__/item_up form=" - item_id=[item-code] -"][if-item-data merchandising upsell_to]Yes[else]No[/else][/if-item-data] -[page href=__UI_BASE__/item_cross form=" - item_id=[item-code] -"][if-item-data merchandising cross_sell]Yes[else]No[/else][/if-item-data] -[page href=__UI_BASE__/item_feature form=" - item_id=[item-code] -"][if-item-data merchandising featured]Yes[else]No[/else][/if-item-data] -
      -
      -Nothing matched. -

      -
      -More products: [decade-next][/decade-next] [more] [decade-prev][/decade-prev] -
      -[/search-region] - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/order.html b/dist/lib/UI/pages/admin/order.html deleted file mode 100644 index 0c9c79e0f..000000000 --- a/dist/lib/UI/pages/admin/order.html +++ /dev/null @@ -1,344 +0,0 @@ -[calc] - if ( $CGI->{showarchive} ) { - delete $Values->{showpending}; - $Values->{showarchive} = 1; - $Scratch->{archive_sense} = 'eq'; - $Scratch->{archive_img} = 'admin/left.gif'; - $Scratch->{archive_nm} = 'unarchive'; - } - elsif($CGI->{showpending}) { - delete $Values->{showarchive}; - $Values->{showpending} = 1; - $Scratch->{archive_sense} = 'ne'; - $Scratch->{archive_img} = 'admin/right.gif'; - $Scratch->{archive_nm} = 'archive'; - } - elsif(! $Values->{showarchive} and ! $Values->{showpending}) { - delete $Values->{showarchive}; - $Values->{showpending} = 1; - $Scratch->{archive_sense} = 'ne'; - $Scratch->{archive_img} = 'admin/right.gif'; - $Scratch->{archive_nm} = 'archive'; - } - return; -[/calc] - -[value name=mv_data_table set=transactions hide=1] -[if-mm !tables] -[set ui_error] - Not authorized for order administration. Contact administrator? -[/set] -[bounce page="__UI_BASE__/error"] -[/if-mm] - -[set ui_class]Orders[/set] -[tmp page_perm]order[/tmp] -[tmp meta_header] -[/tmp] - -[tag flag write]transactions[/tag] -[perl tables=transactions] - delete $Scratch->{ui_location}; - my $db = $Db{transactions}; - if(! $db) { - $Scratch->{ui_error} = "Error: no transactions database.
      "; - $Scratch->{ui_location} = "__UI_BASE__/error"; - return; - } - - my ($value, $action_col); - if($CGI->{archiveorder}) { - $value = 1; - $action_col = 'archived'; - } - elsif($CGI->{unarchiveorder}) { - $value = 0; - $action_col = 'archived'; - } - elsif($CGI->{deleteorder}) { - $value = 1; - $action_col = 'deleted'; - } - elsif($CGI->{vieworder} and ! $CGI->{viewnext}) { - $CGI->{order} =~ s/^\0+//; - $CGI->{order} =~ s/\0+$//; - $Scratch->{ui_location} = $Tag->area('__UI_BASE__/order_view', $CGI->{order}); - } - elsif($CGI->{xload}) { - $Scratch->{ui_location} = $Tag->area('__UI_BASE__/dbdownload'); - } - else { - $CGI->{order} =~ s/^\0+//; - $CGI->{order} =~ s/\0.*//s; - $Scratch->{start_at} = "sm=$CGI->{order}"; - } - - if($action_col) { - for(grep $_, @{$CGI_array->{order}}) { - $db->set_field($_, $action_col, $value); - } - } - if(@errors) { - my $plural = @errors > 1 ? 's' : ''; - return "Error$plural:
      • " . - join ("
      • ", @errors) . - "

      "; - } - if($CGI->{viewnext}) { - my $ordnum = $CGI->{order}; - $ordnum =~ s/[\0,\s].*//; - return if ! $ordnum; - $ordnum++; - CHECKNEXT: { - if (! $db->record_exists($ordnum) ) { - undef $ordnum; - last CHECKNEXT; - } - if ($db->field($ordnum, 'deleted') ) { - $ordnum++; - next CHECKNEXT; - } - if ($Values->{showarchive} and ! $db->field($ordnum, 'archived') ) { - undef $ordnum; - last CHECKNEXT; - } - else { - last CHECKNEXT; - } - } - if ($ordnum) { - $Scratch->{ui_location} = $Tag->area( - { - href => '__UI_BASE__/order_view', - form => "order=$ordnum", - } - ); - } - else { - $Scratch->{message} = "[L]No next order.[/L]"; - } - } - return; -[/perl] - - -[if scratch ui_location] -[bounce href=`delete $Scratch->{ui_location}`] -[/if] - -[set icon_name]admin/icon_orders.gif[/set] -[seti page_title] - [if value showarchive] - Orders: archived orders - [set help_name]order.main.archived[/set] - [else] - Orders: pending orders - [set help_name]order.main.pending[/set] - [/else] - [/if] -[/seti] -[update values] - -@_UI_STD_HEAD_@ - -[if scratch message] -
      -[scratch message] -
      -[set message][/set] -[/if] - - - - -[if scratch ui_message] -
      - [scratch ui_message] - [set ui_message][/set] -
      -

      -  -[/if] - - - - - - -
      - -
      - - -
      -
      -
      or - -
      - - -
      -
      -
      -[if cgi ui_text_qualification] -

      Entries containing "[cgi ui_text_qualification]"

      -[/if] -[search-region more=1 arg=" - fi=transactions - ml=__UI_SZ_LIST_ORDER__ - md=1 - st=db - [if cgi ui_text_qualification] - se=[cgi ui_text_qualification] - [else] - co=yes - sf=archived - se=1 - op=[scratch archive_sense] - sf=deleted - se=1 - op=ne - [/else] - [/if] - [scratch start_at][set start_at][/set] - [if cgi ui_sort_field] - tf=[cgi ui_sort_field] - to=[cgi ui_sort_option] - [else] - tf=0 - [/else] - [/if] - rf=code,order_date,total_cost,nitems,status,city,state,country,fname,lname,username -"] -[calc] - my $so = $CGI->{ui_sort_option}; - my $fld = $CGI->{ui_sort_field}; - $fld =~ s/[\s,\0].*//; - sub sortrev { - my ($f, $n) = @_; - my $out = 'ui_sort_option='; - $out .= 'n' if $n; - return $out unless $fld eq $f; - return $out if $so =~ /r/; - return $out . 'r'; - } - return; -[/calc] -
      - - - - - - - - - - - - - - - - -[search-list] - - - - - - - - - - -[/search-list] -[no-match] - - - -[/no-match] - - -[more-list] - - - -[/more-list] -
       Order -[page href=@@MV_PAGE@@ form=` - return "ui_sort_field=company,lname\n" . sortrev('company'); - `]User - -[page href=@@MV_PAGE@@ form=` - return "ui_sort_field=country,state,city\n" . sortrev('country'); - `]Location - -[page href=@@MV_PAGE@@ form=` - return "ui_sort_field=order_date\n" . sortrev('order_date'); - `]Date/Time - -[page href=@@MV_PAGE@@ form=` - return "ui_sort_field=nitems\n" . sortrev('nitems', 1); -`]Items - -[page href=@@MV_PAGE@@ form=` - return "ui_sort_field=total_cost\n" . sortrev('total_cost', 1); -`]Total - -[page href=@@MV_PAGE@@ form=` - return "ui_sort_field=status\n" . sortrev('status'); -`]Status -
      -{archive_nm} eq 'unarchive'; - return 'CHECKED' if q{[item-data transactions status]} eq '__UI_SHIPPED_STATUS__'; - return; - [/item-calc] - > -[page href="@@MV_PAGE@@" - form=" - [scratch archive_nm]order=1 - order=[item-code] - "][scratch archive_nm] [item-code] -DELETE [item-code] -[page href=__UI_BASE__/order_view form="order=[item-code]"][item-code] - [page href=__UI_BASE__/customer_view form="customer=[item-param username]"][item-param lname], [item-param fname][if-item-param company] -- [item-param company][/if-item-param] -[item-filter 30][item-param city], [item-param state] [item-param country][/item-filter][convert-date][item-param order_date][/convert-date][item-param nitems][currency][item-param total_cost][/currency][page href="__UI_BASE__/order_status" form="order=[item-code]"][item-param status]
      -
      -No orders -

      -
      -Orders [matches] displayed. More orders: [decade-next][/decade-next] [more] [decade-prev][/decade-prev] -
      -[if-mm advanced order=d] -[button form=batch text="Delete checked orders" - confirm='Are you sure you want to delete the checked orders?']deleteorder=1 -[/button] -[/if-mm] -   [button form=batch src="@_UI_IMG_@admin/[scratch archive_img]" - text=` - my $tmp = "$Scratch->{archive_nm} checked orders"; - return "\u$tmp"; - `] -[scratch archive_nm]order=1[/button] -
      -[/search-region] - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/order_status.html b/dist/lib/UI/pages/admin/order_status.html deleted file mode 100644 index 44d935ab9..000000000 --- a/dist/lib/UI/pages/admin/order_status.html +++ /dev/null @@ -1,300 +0,0 @@ -[if !cgi order] - [bounce page="__UI_BASE__/order"] -[/if] - -[calc] - $Values->{ui_data_fields} = $CGI->{ui_data_fields} = 'status archive delete'; - $CGI->{mv_data_table} = 'transactions'; - $Scratch->{arg} = $CGI->{item_id} = $CGI->{order}; - return; -[/calc] - -@_UI_STD_DBEDIT_HEAD_@ -[set ui_class]Orders[/set] -[seti page_title]Order status -- [cgi order][/seti] -[tmp page_banner]Order status: order [page href="__UI_BASE__/order_view" form="order=[cgi order]"][cgi order][/tmp] -[set help_name]item.edit[/set] -[set icon_name]admin/icon_item.gif[/set] - -@_UI_STD_HEAD_@ - -[tmp order_lines_tmp][loop search=" - fi=orderline - st=db - sf=order_number - se=[cgi order] - ml=1000 - "][loop-code] [/loop][/tmp] - -
      - - - - - - - - - -
      -
      - -[loop list="[cgi order]"] - - - - - - - - -[loop prefix=row list="status deleted archived"] -[display table=transactions column="[row-code]" key="[loop-code]" - template=| - - - - -|] -[/loop] - - - -
      Order date -[convert-date][loop-data transactions order_date][/convert-date]
      Status last updated -[convert-date][loop-data transactions update_date][/convert-date]
      - $LABEL$ - -
      $WIDGET$$HELP${HELPURL}
      help{/HELPURL}
      -
        -[if-mm advanced order] - [button form=transactions bold=1 text="Ship checked order lines, send email to customer if appropriate"] - mv_todo=back - order=[cgi code] - [tag flag write]orderline transactions[/tag] - [perl tables="orderline transactions userdb __UI_META_TABLE__"] - my $odb = $Db{orderline} - or die "No orderline database!\n"; - my $tdb = $Db{transactions} - or die "No transactions database!\n"; - my $udb = $Db{userdb} - or die "No userdb database!\n"; - - my $on = $Scratch->{ship_notice_order_number} = $CGI->{code}; - my $user = $tdb->field($on, 'username'); - my $wants_copy = $udb->field($user, 'email_copy'); -#Log("Order number=$on username=$user wants=$wants_copy"); - delete $Scratch->{ship_notice_username}; - delete $Scratch->{ship_notice_email}; - if($wants_copy) { - $Scratch->{ship_notice_username} = $user; - $Scratch->{ship_notice_email} = $udb->field($user, 'email') - or delete $Scratch->{ship_notice_username}; - } - - if($CGI->{status} =~ /\d\d\d\d/) { - $tdb->set_field($on, 'status', $CGI->{status}); - } - else { - $tdb->set_field($on, 'status', 'shipped'); - } - - my @shiplines = grep /\S/, split /\0/, $CGI->{lines_shipped}; - my $to_ship = scalar @shiplines; - - my $count_q = "select * from orderline where order_number = '$on'"; - my $lines_ary = $odb->query($count_q); - if(! $lines_ary) { - $Scratch->{ui_message} = "No order lines for order $on"; - return; - } - my $total_lines = scalar @$lines_ary; - - my $odb_keypos = $odb->config('KEY_INDEX'); - - # See if some items have already shipped - my %already; - for(@$lines_ary) { - my $code = $_->[$odb_keypos]; - my $status = $odb->field($code, 'status'); - if($status eq 'shipped') { - $already{$code} = $code; - } - } - - my $ship_mesg; - my $g_status; - my %shipping; - - @shipping = grep ! $already{$_}, @shipping; - @shipping{@shiplines} = @shiplines; - - if($total_lines == $to_ship) { - $ship_mesg = "Order $on complete, $total_lines lines set shipped."; - $Scratch->{ship_notice_complete} = $ship_mesg; - $g_status = 'shipped'; - } - else { - $ship_mesg = "Order $on partially shipped ($to_ship of $total_lines lines)."; - delete $Scratch->{ship_notice_complete}; - $g_status = 'partial'; - } - - my $minor_mesg = ''; - - my $email_mesg = $Scratch->{ship_notice_username} - ? "Email copy sent to $Scratch->{ship_notice_email}." - : "No email copy sent as per user preference."; - - # Actually update the orderline database - for(@$lines_ary) { - my $code = $_->[$odb_keypos]; - next if $already{$code}; - my $status = $shipping{$code} ? 'shipped' : 'backorder'; - $odb->set_field($code, 'status', $status) - or do { - $Scratch->{ui_message} = "Orderline $code ship status update failed."; - return; - }; - - } - - for(keys %already) { - $shipping{$_} = $_; - } - - my $total_shipped_now = scalar keys %shipping; - - - delete $Scratch->{ship_now_complete}; - if ( - $total_lines != scalar @shipping - and - $total_shipped_now == $total_lines - ) - { - $g_status = 'shipped'; - $Scratch->{ship_now_complete} = 1 - if $total_shipped_now == $total_lines; - $ship_mesg = "Order $on now complete (all $total_lines lines)."; - } - - $tdb->set_field($on, 'status', $g_status); - - $Scratch->{ui_message} = "$ship_mesg $email_mesg"; - delete $Scratch->{ship_notice_username}; - delete $Scratch->{ship_notice_email}; - if($wants_copy) { - $Scratch->{ship_notice_username} = $user; - $Scratch->{ship_notice_email} = $tdb->field($on, 'email') - or $Scratch->{ship_notice_email} = $tdb->field($on, 'email') - or delete $Scratch->{ship_notice_username}; - } - return; - [/perl] - - [if scratch ship_notice_username] - [email-raw][include etc/ship_notice][/email-raw] - [/if] - - [/button]
      - - [loop prefix=partial list="[scratch order_lines_tmp]"] - Line [partial-increment] ([partial-filter 16][partial-data orderline description][/partial-filter])
      - [/loop] -
      - [button bold=1 text="Change global status"] - order=[cgi code] - [/button]    - [button text="Cancel"] - mv_nextpage=__UI_BASE__/order_view - order=[cgi code] - mv_todo=back - [/button] -[else] - [button text="Back"] - mv_nextpage=__UI_BASE__/order_view - order=[cgi code] - mv_todo=back - [/button] -[/else] -[/if-mm] -
      -
      -
      -
      - -[/loop] - -

      Individual line item status

      - -[loop search=" - fi=orderline - st=db - sf=order_number - se=[cgi order] - ml=1000 -"] -[calc] - $Values->{ui_data_fields} = $CGI->{ui_data_fields} = 'code status delete'; - $CGI->{mv_data_table} = 'transactions'; - $Scratch->{arg} = $CGI->{item_id} = $CGI->{order}; - return; -[/calc] - - -[/loop] -
      - -@@UI_STD_DBEDIT_HEAD@@ -
      - - - - - - - - - - -
      -
      - - - - - - - - - -[display table=orderline column="status" key="[loop-code]" - template=| - - - - -|] - - - -
      SKU/Description -SKU: [loop-data orderline sku], [loop-data orderline quantity]@[filter %.2f][loop-data orderline price][/filter] = [currency][loop-data orderline subtotal][/currency]
      -[loop-data orderline description] -
      Last updated -[convert-date][loop-data orderline update_date][/convert-date]
      - $LABEL$ - -
      $WIDGET$$HELP${HELPURL}
      help{/HELPURL}
      -
        - -
      -
      -
      -
      - -
      - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/order_view.html b/dist/lib/UI/pages/admin/order_view.html deleted file mode 100644 index 9f1bd9641..000000000 --- a/dist/lib/UI/pages/admin/order_view.html +++ /dev/null @@ -1,388 +0,0 @@ -[set page_title]Order manager: View order[/set] -[set ui_class]Orders[/set] -[set page_banner]View order[/set] -[set help_name]order.view[/set] -[set icon_name]admin/icon_orders.gif[/set] -@_UI_STD_HEAD_@ -[calc] - delete $Scratch->{ui_bounce}; - return if $CGI->{order}; - $CGI->{order} = $CGI->{mv_arg} - or $Scratch->{ui_bounce} = '__UI_BASE__/order'; - return; -[/calc] -[if scratch ui_bounce] - [bounce page="[scratch ui_bounce]"] -[/if] - -[if scratch ui_message] -
      - [scratch ui_message] - [set ui_message][/set] -
      -

      -  -[/if] - - - -[update values] -[loop list="[value-extended order]"] - - - - - - - - - - - - - - - -[if-loop-data transactions affiliate] - - - -[/if-loop-data] - - - - - - - - - - - - - - - - - - - -[query st=db sql="select * from orderline where order_number = '[loop-data transactions order_number]'" list=1] - - - - - - - - - - - - -[/query] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      -Order number: [loop-code] Order date: [convert-date][loop-data transactions order_date][/convert-date] -
      -Customer: -[if-loop-data transactions username] -[loop-data transactions fname] [loop-data transactions lname] -[else] - [loop-data transactions fname] [loop-data transactions lname] -[/else] -[/if-loop-data] - -
      -Affiliate: [data table=affiliate column=name key="[loop-data transactions affiliate]"] -
      - - - - - - - - - - - - - - - - - - - - - - -
      - Company: -[loop-data transactions company]
      - Home phone: -[loop-data transactions phone_night]
      - Work phone: -[loop-data transactions phone_day]
      - Email: - [loop-data transactions email]
      - Payment type: -[loop-data transactions payment_method]
      - Field 1: -
      - Field 2: -
      - Field 3: -
      - Field 4: -
      - -
      -[set bill_address] -[loop-data transactions b_fname] [loop-data transactions b_lname]
      -[loop-data transactions b_address1]
      -[if-loop-data transactions b_address2] -[loop-data transactions b_address2]
      -[/if-loop-data] -[loop-data transactions b_city], [loop-data transactions b_state] [loop-data transactions b_zip]
      -[/set] - -[set ship_address] -[loop-data transactions fname] [loop-data transactions lname]
      -[loop-data transactions address1]
      -[if-loop-data transactions address2] -[loop-data transactions address2]
      -[/if-loop-data] -[loop-data transactions city], [loop-data transactions state] [loop-data transactions zip]
      -[/set] - - -

      -[if-loop-data transactions username] -Bill To: -[else] - Bill To: -[/else] -[/if-loop-data] -

      -[if-loop-data transactions b_address1] -[scratch bill_address] -[else] -[scratch ship_address] -[/else] -[/if-loop-data] -
      - - -[if-loop-data transactions username] -Ship To: -[else] - Ship To: -[/else] -[/if-loop-data] -
      -
      -[scratch ship_address] -
      -
      - -

      -Status: [page href=__UI_BASE__/order_status form="order=[loop-code]"] - [display table=transactions - column=status - key="[loop-code]" - arbitrary=order_view - ] -[set bill_address][/set] -[set ship_address][/set] -

      - -Qty. - -Name - -SKU - -Each - -Discount - -Total
      - -[calc] - $total_weight += ([field field=weight key="[sql-param sku]"] + 0 || 0) * [sql-data orderline quantity]; - return; -[/calc] -[sql-data orderline quantity] -
      [sql-filter upper][sql-data orderline status][/sql-filter] -
        -
      - -[either][sql-data orderline description][or][data table=products col=description key="[sql-data orderline sku]"][/either] -[if-sql-data orderline size] -
      -Size: [sql-data orderline size] -[/if-sql-data] -[if-sql-data orderline color] -
      -Color: [sql-data orderline color] -[/if-sql-data] - -[if-sql-data orderline options] -
      -Options: [sql-data orderline options] -[/if-sql-data] -
      - -[sql-data orderline sku] - - -[currency][sql-data orderline price][/currency] - - - [sql-data orderline discount] - - -[currency][sql-data orderline subtotal][/currency] - -
      -Product Total: - -[currency][loop-data transactions subtotal][/currency] -
      -Tax: - -[currency][loop-data transactions salestax][/currency] -
      -Shipping: [loop-data transactions shipmode] - - -[currency][loop-data transactions shipping][/currency] -
      -Grand total: - -[currency][loop-data transactions total_cost][/currency]
      -
      -Total weight: - -[calc] $total_weight [/calc] -
      -Total volume: - -0 -
      -Comments: -
      -
      [loop-data transactions comments]
      -
      - -

      - - - - -[set Return] -viewnext= -vieworder= -[/set] - - - -[if-loop-data transactions archived] - -[else] - -[/else] -[/if-loop-data] - - - -
      - -[/loop] - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/orderstats.html b/dist/lib/UI/pages/admin/orderstats.html deleted file mode 100644 index 2f32409aa..000000000 --- a/dist/lib/UI/pages/admin/orderstats.html +++ /dev/null @@ -1,72 +0,0 @@ -[if !advanced report] -[bounce page="__UI_BASE__/error"] -[value name=saved_report set=""] -[/if] -[set ui_class]Reports[/set] -[set page_title]Order Statistics[/set] -[set icon_name]admin/icon_stats.gif[/set] -[set help_name]stats.order[/set] -@_UI_STD_HEAD_@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      View Stats for this Month Only
      - -
      -Overall by month
      -By day for this month
      -Individual orders this month
      -
      - -
       
      View Stats for Any Period of Time
      -
      Beginning:
      - [widget type=date name=ui_begin_date] -
      -
      -
      Ending:
      - [widget type=date name=ui_end_date] -
      -
      - [set List individual orders] - mv_nextpage=__UI_BASE__/reports/order/Detail - [/set] - [set By day] - mv_nextpage=__UI_BASE__/reports/order/Monthly - [/set] -
      -          -
      -
      - -
    - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/page.html b/dist/lib/UI/pages/admin/page.html deleted file mode 100644 index 8c079410f..000000000 --- a/dist/lib/UI/pages/admin/page.html +++ /dev/null @@ -1,43 +0,0 @@ -[set page_title]Page editor[/set] -[set ui_class]Content[/set] -[set help_name]page.main[/set] -[set icon_name]admin/icon_pages.gif[/set] -@_UI_STD_HEAD_@ - - - -
    - - -[if scratch ui_error] -
    - -[scratch ui_error][set ui_error][/set] - -
    -[/if] - - - - - - - - - - - - - -
    - New page

    -[file-navigator mask="pages" start_open="pages" edit_only=1] -
    - -
    - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/page_edit.html b/dist/lib/UI/pages/admin/page_edit.html deleted file mode 100644 index 3075b968a..000000000 --- a/dist/lib/UI/pages/admin/page_edit.html +++ /dev/null @@ -1,336 +0,0 @@ -[set page_title]Edit Page[/set] -[set ui_class]Content[/set] -[set help_name]page.main[/set] -[set icon_name]admin/icon_pages.gif[/set] -@_UI_STD_HEAD_@ - - - -
    - - - - - - -[perl tables=mv_metadata] - my $ref; - my $ref_in_page; - my $t_name = ''; - my @filters = grep /^ui_filter:/, keys %$CGI; - foreach my $key (@filters) { - my $val = delete $CGI->{$key}; - $key =~ s/ui_filter://; - next unless $val; - next unless defined $CGI->{$key}; - $CGI->{$key} = $Tag->filter($val, $CGI->{$key}, $key); - } - if($CGI->{ui_template}) { -#Log("reading template=$CGI->{ui_template}"); - $CGI->{ui_template} = $Tag->filter('filesafe', $CGI->{ui_template}); - my ($ary) = $Tag->read_ui_template($CGI->{ui_template}); - $ref = shift @$ary || {}; - $t_name = $CGI->{ui_template}; - $t_desc = $ref->{ui_template_description} || 'none'; - } -#Log("t_name=$t_name"); - my @choices = split /\s*\0\s*/, $CGI->{ui_page}; - my $page; - for(@choices) { - next if ! $_; - $page = $_; - $page .= $Config->{HTMLsuffix} if $page !~ /$Config->{HTMLsuffix}$/; - $page = "pages/$page" if $page !~ m(^pages/); - last; - } - - my $ary; - my $current = $Tag->file($page); - - # This call returns an array of hashes if exists - if($current) { - ($ary) = $Tag->read_ui_template($page); - if(ref $ary) { - $ref_in_page = shift (@$ary); - } - } - - if(! $ref and $ref_in_page) { - $ref = $ref_in_page; - } -# elsif($ref_in_page) { -# for(keys %$ref_in_page) { -# $ref->{$_} = $ref_in_page->{$_}; -# } -# } - else { - $ref = {} if ! $ref; - $current !~ m{\n(.*)\n}is - and $current = "$current"; - } - - $t_name = $ref->{ui_template_name} || 'None' - if ! $t_name; - $t_desc = $ref->{ui_template_description} || 'n/a' - if ! $t_desc; - - my @def; - - my $def_string = $ref->{ui_definition}; - $def_string =~ s/"/"/g; - - my $r; - #Log("ui_control_element=$ref->{ui_control_element}"); - if ($r = $ref->{ui_control_element} and ref($r)) { - my $widget; - my @order; - if($ref->{ui_display_order}) { - @order = @{$ref->{ui_display_order}}; - } - else { - @order = sort keys %$r; - } - for(@order) { - my ($set) = $current =~ m{\[set\s+$_\](.*?)\[/set\]}; - my $t_set = $r->{$_}; - my $wtype = $ref->{ui_control_widget}{$_} || ''; - my $options = $ref->{ui_control_options}{$_} || $t_set || '=No,1=Yes'; -Log("r key $_ set='$set' options=$options value=$Values->{qq!ui_control_$_!}"); - my $help = $ref->{ui_control_help}{$_} || ''; - - if($wtype) { - $widget = $Tag->widget( { - name => "ui_control_$_", - type => $wtype, - passed => $options, - set => $set, - filter => $ref->{ui_control_filter}{$_}, - pre_filter => $ref->{ui_control_prefilter}{$_}, - }); - } - else { - my $val = $set || $t_set; - $val =~ s/"/"/g; - $widget = qq{}; - } - my $desc = $ref->{ui_control_description}{$_} || $_; - $desc .= "
    $help" if $help; - push @controls, [ $desc, $widget ]; - } - } - my $out = ''; - my $imgpath = $Tag->var('UI_IMG', 1) || $Variable->{UI_IMG} || ''; -#Log("t_name=$t_name"); - $out .= < - - - - - - - - - - -EOF - if($CGI->{ui_show_description}) { - $out .= < - - - - - - - - - - - - - -EOF - } - else { - $out .= <}; - } - - my $content_input; - my $isfile = $Tag->value_extended( - { - name => 'ui_upload_content', - test => 'isfile', - } - ); -Log("upload_content=$Values->{ui_upload_content} isfile=$isfile"); - if( $Values->{ui_upload_content} - and $Tag->value_extended( - { - name => 'ui_upload_content', - test => 'isfile', - } - ) - ) - { -Log("content from upload."); - $content_input = $Tag->value_extended( { - name => 'ui_upload_content', - file_contents => 1, - }); -Log("content from upload is:\n$content_input"); - $content_input =~ s{()([^\n])}{$1\n$2}is; - $content_input =~ s{([^\n])()}{$1\n$2}is; - } - - $content = $content_input || $current || ''; - - $content =~ m{\n(.*)\n}is - and $content = $1; - - $content =~ s/\&/\&/g; - $content =~ s/\[/[/g; - $content =~ s/{ui_template_layout} = 'UI_CONTENT' - if ! $ref->{ui_template_layout}; - - $out .= < - - - - - - - -[comment] - - - -[/comment] - - - - -EOF - $out .= < - -EOF - return $out; -[/perl] - - - - - - - - - - - - - -
    Page file - $page - - - - -
    Template -
    Template description$t_desc
    - Template sequence
    -
    $ref->{ui_template_layout}
    - UI_CONTENT is the content portion(s), all others refer - to Knar elements. -
    $_->[0]$_->[1]
    - Content -

    - download $pagedownload content -
    (will not reflect changes below unless saved)
    -
    - - -
    - [button text="Upload content portion from file"] - mv_todo=return - [js]onclick="this.form.target='_self'"[/js] - mv_nextpage=@@MV_PAGE@@ - [/button]
    -
    - or input below:
    - -
    -[set Preview] -mv_nextpage=__UI_BASE__/page_preview -mv_action=back -[/set] - -[set Save] -mv_nextpage=__UI_BASE__/page_save -[/set] - -[set Cancel] -mv_nextpage=__UI_BASE__/page -mv_todo=back -[/set] - - - - -
    -
    - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/page_new.html b/dist/lib/UI/pages/admin/page_new.html deleted file mode 100644 index a14527efa..000000000 --- a/dist/lib/UI/pages/admin/page_new.html +++ /dev/null @@ -1,116 +0,0 @@ -[set page_title]Page editor[/set] -[set ui_class]Content[/set] -[set help_name]page.main[/set] -[set icon_name]admin/icon_pages.gif[/set] -@_UI_STD_HEAD_@ - - - -
    - - -[if scratch ui_error] -
    - -[scratch ui_error][set ui_error][/set] - -
    -[/if] - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -[set Create new page] -[if !cgi ui_page] -mv_nextpage=@@MV_PAGE@@ -[set ui_error]Need to select a file name.[/set] -mv_todo=return -[else] -mv_nextpage=__UI_BASE__/page_edit -mv_todo=return -[/else] -[/if] -[/set] - -[set Preview template] -mv_nextpage=__UI_BASE__/page_preview -mv_todo=return -[/set] - -1. Choose a page template from the pull-down menu: - - - -
    -2. (Optional) Preview your selection: - -   (Opens a new window) -
    -3. Name the file you are creating: - - -
    -4. Click this button to create the page: - -
    -
    - -
    - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/page_preview.html b/dist/lib/UI/pages/admin/page_preview.html deleted file mode 100644 index 80ed470b6..000000000 --- a/dist/lib/UI/pages/admin/page_preview.html +++ /dev/null @@ -1,44 +0,0 @@ -[perl] - my @filters = grep /^ui_filter:/, keys %$CGI; - foreach my $key (@filters) { - my $val = delete $CGI->{$key}; - $key =~ s/ui_filter://; - next unless $val; - next unless defined $CGI->{$key}; - $CGI->{$key} = $Tag->filter($val, $CGI->{$key}, $key); - } - if(! $CGI->{ui_elements}) { - $CGI->{ui_template} = $Tag->filter('filesafe', $CGI->{ui_template}); - $CGI->{ui_elements} = $Tag->read_ui_template( - { - file => $CGI->{ui_template}, - element => 'ui_template_layout', - }); -#Log("elements: $CGI->{ui_elements}"); - } - @layout = split /[\0\s,]+/, $CGI->{ui_elements}; - @insert = split /\0/, ($CGI->{ui_content} || 'Page content.'); - for(keys %{$CGI}) { - next unless /^ui_control_(.*)/; -#Log("found $_ => $k"); - my $k = $1; - unshift @layout, "[set $k]" . $CGI->{$_} . '[/set]'; - } - foreach $one (@layout) { - if( $one eq 'UI_CONTENT') { - my $content = shift @insert; -#Log("inserting $content"); - $content =~ s/\r?\n/\n/g; - push @out, $content; - } - elsif ($one =~ /^[A-Z]\w+$/) { - push @out, '__' . $one . '__'; - } - else { - push @out, $one; - } - } - $Tag->write_relative_file("tmp/$Session->{id}.preview", (join "\n", @out)); - return; -[/perl] -[include file="tmp/[data session id].preview"] diff --git a/dist/lib/UI/pages/admin/page_save.html b/dist/lib/UI/pages/admin/page_save.html deleted file mode 100644 index 41b57b19c..000000000 --- a/dist/lib/UI/pages/admin/page_save.html +++ /dev/null @@ -1,64 +0,0 @@ -[perl] - my @filters = grep /^ui_filter:/, keys %$CGI; - foreach my $key (@filters) { - my $val = delete $CGI->{$key}; - $key =~ s/ui_filter://; - next unless $val; - next unless defined $CGI->{$key}; - $CGI->{$key} = $Tag->filter($val, $CGI->{$key}, $key); - } - if(! $CGI->{ui_elements}) { - $CGI->{ui_template} = $Tag->filter('filesafe', $CGI->{ui_template}); - $CGI->{ui_elements} = $Tag->read_ui_template( - { - file => $CGI->{ui_template}, - element => 'ui_template_layout', - }); - #Log("elements: $CGI->{ui_elements}"); - } - @layout = split /[\0\s,]+/, $CGI->{ui_elements}; - @insert = split /\0/, ($CGI->{ui_content} || 'Page content.'); - - for(keys %{$CGI}) { - next unless /^ui_control_(.*)/; - my $k = $1; - unshift @layout, "[set $k]" . $CGI->{$_} . '[/set]'; - } - - if($CGI->{ui_definition}) { - unshift @layout, '[' . "comment]\n" . $CGI->{ui_definition} . "\n[" . "/comment]\n"; - } - - foreach $one (@layout) { - if( $one eq 'UI_CONTENT') { - my $content = shift @insert; - $content =~ s/\r?\n/\n/g; - $content = "\n\n$content\n\n"; - #Log("inserting $content"); - push @out, $content; - } - elsif ($one =~ /^[A-Z]\w+$/) { - push @out, '__' . $one . '__'; - #Log("inserted variable $one"); - } - else { - push @out, $one; - #Log("inserted set $one"); - } - } - my $page = $Tag->filter('filesafe', $CGI->{ui_page}); - if( ! $page) { - $Scratch->{ui_error} = "No page name given."; - $Tag->bounce('__UI_BASE__/error'); - return; - } - $page = "pages/$page" if $page !~ m{^pages/}; - $page .= $Config->{HTMLsuffix} - unless $page =~ /$Config->{HTMLsuffix}$/; -#Log("final page=$page"); - push @out, ''; - $Tag->write_relative_file($page, (join "\n", @out)); - $Scratch->{ui_output_page} = $page; - return; -[/perl] -[bounce page="__UI_BASE__/page"] diff --git a/dist/lib/UI/pages/admin/payment.html b/dist/lib/UI/pages/admin/payment.html deleted file mode 100644 index 8c37e5cbc..000000000 --- a/dist/lib/UI/pages/admin/payment.html +++ /dev/null @@ -1,153 +0,0 @@ -[set page_title]Payment options[/set] -[set ui_class]Admin[/set] -[set help_name]payment.main[/set] -[set icon_name]admin/icon_config.gif[/set] -@_UI_STD_HEAD_@ - - - -[flag type=write table=variable] - -[perl tables=variable] - delete $Scratch->{change_payment}; - return unless $CGI->{change_payment} eq 'do'; - $Scratch->{change_payment} = 1; - for (my $i = 1; $i < 1000; $i++) { - last unless defined $CGI->{"cc_accepted$i"}; - push @cc, $CGI->{"cc_accepted$i"}; - } - $Scratch->{CREDIT_CARDS_ACCEPTED} = join " ", @cc; - $Scratch->{PO_ACCEPTED} = $CGI->{po}; - $Scratch->{COD_ACCEPTED} = $CGI->{cod}; - $Scratch->{CHECK_ACCEPTED} = $CGI->{check}; - return; -[/perl] -[if scratch change_payment] -[loop list="CREDIT_CARDS_ACCEPTED PO_ACCEPTED COD_ACCEPTED CHECK_ACCEPTED"] - -[/loop] -[/if] -[calc] - @cc = grep /\S/, split /\s+/, - tag_data(qw/variable Variable CREDIT_CARDS_ACCEPTED/); - for (qw/PO_ACCEPTED COD_ACCEPTED CHECK_ACCEPTED/) { - $Scratch->{$_} = tag_data(qw/variable Variable/, $_); - } - for (@cc) { - $cc{$_} = 1; - } - $Scratch->{its} = < - - - - - - - - - - - - -[loop list="[scratch its]" lr=1] - - - - - - -[/loop] - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    NameAccepted
    -[loop-pos 1] - - - - -
    -Check - - - - -
    -COD - - - - -
    -Purchase Order - - - - -
    -[loop list="CREDIT_CARDS_ACCEPTED PO_ACCEPTED COD_ACCEPTED CHECK_ACCEPTED"] - [set [loop-code]][/set] -[/loop] - -

    - - - - - - - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/preferences.html b/dist/lib/UI/pages/admin/preferences.html deleted file mode 100644 index 19828563a..000000000 --- a/dist/lib/UI/pages/admin/preferences.html +++ /dev/null @@ -1,79 +0,0 @@ -[set page_title]Preferences[/set] -[set ui_class]Admin[/set] -[set page_perm]knar[/set] -[set help_name]knar[/set] -[set icon_name]admin/icon_config.gif[/set] -@_UI_STD_HEAD_@ - - - -

    - - - - - - -[loop search=" - fi=variable - st=db - un=yes - ra=yes - rf=pref_group - tf=pref_group - ml=10000 -"] - - -[/loop] - - - - - -[if !variable UI_META_LINK] - - - [else] - [page href="@@MV_PAGE@@" - form=" - mv_action=return - ui_meta_force=1"]Temporarily turn on meta links in database edit - [/else] - [/if] - -[/if] - - - - - -
    - - [loop-code] - -
    - [if value ui_meta_force] - [page href="@@MV_PAGE@@" - form=" - mv_action=return - ui_meta_force=0"]Turn off meta links in database edit
    -
    - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/quicklinks.html b/dist/lib/UI/pages/admin/quicklinks.html deleted file mode 100644 index 29797193a..000000000 --- a/dist/lib/UI/pages/admin/quicklinks.html +++ /dev/null @@ -1,291 +0,0 @@ - - - -Quicklinks - - - - - - -
    -
    - - -
    - - - - - -
    - - - -[if !scratch window_override] -[seti win][data session arg][/seti] -[/if] - -Store Admin: -

    - -[if-mm advanced order] -    - -Orders
    -[/if-mm] - -[if-mm advanced userdb] -    - -Customers
    -[/if-mm] - -[if-mm advanced userdb] -    - -Order entry
    -[/if-mm] -

    -[if-mm advanced orderstats] -    - -Order stats
    -[/if-mm] - -[if-mm advanced trafficstats] -    - -Traffic stats
    -[/if-mm] - -[if-mm advanced affiliate] -    - -Affiliates
    -[/if-mm] -

    -[if-mm advanced item] -    - -Items
    -[/if-mm] - - -[if-mm advanced sitedesign] -


    -Site Design: -

    - - - -[if-mm advanced layout] -    -Site Layout
    -[/if-mm] - - -[if-mm advanced layout] -    - -Page Edit
    -[/if-mm] - -[if-mm advanced searchbuilder] -    - -Generate static
    -[/if-mm] - -[if-mm advanced searchbuilder] -    - -Build related
    -[/if-mm] - -[if-mm advanced searchbuilder] -    - -Search Builder
    -[/if-mm] - -[if-mm advanced buttonbuilder] -    - -Button Builder
    -[/if-mm] - -[/if-mm] - -
    - -
    - -[if-mm advanced techadmin] -Technical Admin: -
    -
    - - -[if-mm advanced tax] -    - -Tax
    -[/if-mm] - -[if-mm advanced shipping] -    - -Shipping
    -[/if-mm] - -[if-mm advanced payment] -    - -Payment
    -[/if-mm] - -
    - - -[if-mm files] -    - -File transfer
    -

    -[/if-mm] - -[if-mm advanced table_edit] -    - -Direct Table Edit
    -[/if-mm] - -    - -Table import
    - - -    - -Table export
    - -
    - -[if-mm advanced access] -    - -Administrators
    -[/if-mm] - -[if-mm advanced group] -    - -Admin Groups
    -[/if-mm] - -[if-mm advanced perm] -    - -Permissions
    -[/if-mm] - -
    - -[if-mm advanced env_vars] -    - -Environment
    -[/if-mm] - - -[if-mm advanced knar] -    - -Preferences
    -    - -Knar editor
    -[/if-mm] - -
    - -


    -[/if-mm] - - - -Logout
    -
    - - -[if-mm advanced reconfig] - - -Apply Changes
    -
    -[/if-mm] - -
    - -[comment] - -[if-mm advanced perm] -    - -Permissions
    -[/if-mm] - -
    -    - -Database import
    - -    - -Direct SQL
    - -    - -Database export
    - - -Technical settings - - -Change preferences
    - - - -Affiliates
    - - -Pages
    - - - -Matrix - - -[/comment] -
    -
    -
    -
    -
    - - - - diff --git a/dist/lib/UI/pages/admin/reconfig.html b/dist/lib/UI/pages/admin/reconfig.html deleted file mode 100644 index 47f77e841..000000000 --- a/dist/lib/UI/pages/admin/reconfig.html +++ /dev/null @@ -1,39 +0,0 @@ -[if-mm !reconfig] -[set ui_error]Not authorized to regenerate.[/set] -[bounce page="__UI_BASE__/error"] -[/if-mm] -[set help_name]reconfig[/set] -[set ui_class]Admin[/set] -[set page_title]Reconfiguring....[/set] -[seti meta_header] -[set name=its int][calc] - $hk = q{[global-value Global::HouseKeeping]}; - $hk += 2; - return join " ", 1 .. $hk; - [/calc][/set] -[/seti] -[set icon_name]admin/icon_regen.gif[/set] -@_UI_STD_HEAD_@ - -[set name=arg int][data session arg][/set] -[L]Reconfiguring catalog[/L]: ...
    [set name=reconfig_status int][reconfigure][/set] - -[loop arg="[scratch its]"] -[reconfig-wait send=1] -[/loop] - -[if scratch possible_timeout] - [L]WARNING: Reconfiguration may have timed out[/L].
    -[L]Last config[/L]: [reconfig-time] -[else] -[L]SUCCESS[/L] -[value name=ui_changes_made set=""] -[/else] -[/if] -([L]return[/L])
    - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/regen.html b/dist/lib/UI/pages/admin/regen.html deleted file mode 100644 index 1570fceb0..000000000 --- a/dist/lib/UI/pages/admin/regen.html +++ /dev/null @@ -1,10 +0,0 @@ -[if-mm !regen] -[set ui_error]Not authorized to regenerate.[/set] -[bounce page="__UI_BASE__/error"] -[/if-mm] -[set ui_class]Design[/set] -[set help_name]reconfig[/set] -[set page_title]Regenerating....[/set] -[set icon_name]admin/icon_regen.gif[/set] -[set spacer]      [/set] -[regenerate] diff --git a/dist/lib/UI/pages/admin/regenerate.html b/dist/lib/UI/pages/admin/regenerate.html deleted file mode 100644 index a29f12534..000000000 --- a/dist/lib/UI/pages/admin/regenerate.html +++ /dev/null @@ -1,94 +0,0 @@ -[set page_title]Static site generation[/set] -[set page_banner]Static site generation[/set] -[set page_perm]regen[/set] -[set help_name]regen.main[/set] -[set ui_class]Design[/set] -[set icon_name]admin/icon_config.gif[/set] - - - -@_UI_STD_HEAD_@ - -
    - - - - - - - - - - - - - - - -
    - -

    - Verbose
    - -
    -Entry page:
    - -[set pages][/set] -[calc] - # Find the list of pages not defined "NoCache" - $Values->{ui_initial_page} = $Config->{SpecialPage}{catalog}; - @pages = split /\s+/, $Tag->list_pages(); - my $check = $Config->{NoCache}; - for(@pages) { - my $test = $_; - do { - $_ = '' if defined $check->{$test}; - } while ($test =~ s:(.*)/.*:$1:); - } - $Scratch->{pages} = join "\n", grep $_, @pages; - return; -[/calc] - -

    - - - - - -
    - Force build of:
    - -
    - - Never build:
    - -
    -
    - -
    - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/report.html b/dist/lib/UI/pages/admin/report.html deleted file mode 100644 index 3fe445b18..000000000 --- a/dist/lib/UI/pages/admin/report.html +++ /dev/null @@ -1,522 +0,0 @@ -[if-mm !tables] -[set ui_error]Not authorized for table.[/set] -[bounce page="__UI_BASE__/error"] -[/if-mm] -[if !advanced report] -[bounce page="__UI_BASE__/error"] -[value name=saved_report set=""] -[/if] -[if !cgi mv_data_table] -[and !value saved_report] -[bounce page="__UI_BASE__/gentable"] -[value name=saved_report set=""] -[/if] -[if cgi mv_data_table] -[value name=saved_report set=""] -[/if] -[seti page_title]Custom report [if value mv_data_table][value mv_data_table][/if][/seti] -[set help_name]report[/set] -[set ui_class]Reports[/set] -[set icon_name]admin/icon_config.gif[/set] -[seti name=tables][list-databases][/seti] -[seti meta_header] -[perl table="[scratch tables]"] - - my @tables = split /\s+/, $Scratch->{tables}; - my $out; - for(@tables) { - $tables{$_} = [ $Db{$_}->columns() ]; - } - $out = " -EOF -[/perl] -[/seti] - -[calc] $Config->{NoSearch} = ''; [/calc] - -@_UI_STD_HEAD_@ - -[seti table_list] - [loop prefix=table list="[scratch tables]"] - - [/loop] -[/seti] - - - - - - - - - - - - - - - - -
    - - Run saved report - - - - Retrieve saved definition - - - - Delete report - -
    - [loop list="[list-glob spec='pages/__UI_BASE__/reports/* pages/__UI_BASE__/user/[data session mm_username]/reports/*']"] - [calc] - $lab = q{[loop-code]}; - $lab =~ s:\.html.*::; - $opt = $lab; - $opt =~ s:^pages/::; - $lab =~ s:.*/::; - $lab =~ s/%([0-9a-fA-F]{2})/chr(hex($1))/ge; - my $out = $Tag->page($opt); - $out .= $lab; - $out .= '
    ' - [/calc] - [/loop] -
    - [loop list="[list-glob spec='pages/__UI_BASE__/report_def/* pages/__UI_BASE__/user/[data session mm_username]/report_def/*']"] - [calc] - $lab = q{[loop-code]}; - $lab =~ s:\.html.*::; - $opt = $lab; - $opt =~ s:^pages/::; - $lab =~ s:.*/::; - $lab =~ s/%([0-9a-fA-F]{2})/chr(hex($1))/ge; - my $out = $Tag->page($opt); - $out .= $lab; - $out .= '
    ' - [/calc] - [/loop] -
    - [if-mm super] - [seti report_spec][list-glob spec='pages/__UI_BASE__/report*/* pages/__UI_BASE__/user/[data session mm_username]/report*/*'][/seti] - [else] - [seti report_spec][list-glob spec='pages/__UI_BASE__/user/[data session mm_username]/report*/*'][/seti] - [/else] - [/if-mm] - [set del_report] - [calc] - $out = ''; - my @files; - if($CGI->{ui_report_delete}) { - @possible = split /\s+/, $Scratch->{report_spec}; - @files = grep /$CGI->{ui_report_delete}$/, @possible; - } - for(@files) { - my $lab = $_; - $lab =~ s:.*/([^/]+/.+)\.html:$1:; - $lab =~ s/%([0-9a-fA-F]{2})/chr(hex($1))/ge; - $out .= "Delete $lab: "; - $out .= - $Tag->unlink_file($_, 'pages/config') - ? 'success' - : 'FAILED'; - $out .= '
    '; - } - $Scratch->{report_delete_message} = $out; - return; - [/calc] - [/set] - - [scratch report_delete_message] - [set report_delete_message][/set] -
    - - - - -
    -
    -
    -
    - -

    - - - - - - - - - - - - - - - - - - - - - -[loop list="0 1 2"] - - - -[/loop] - - - - - - -[loop list="0 1 2"] - - - - -[/loop] -[loop list="[scratch column_nums]"] - - - - - - - - - -[/loop] - - - - - -
    -
    - - -[if-mm advanced mml] - -[/if-mm]
    - Report Title - - - Summary only - Page size - -
    - Search filter - - - - -
    - Sort order [loop-increment] - - - - Break: - [if value break[loop-code]] - no - yes - [else] - no - yes - [/else] - [/if] - -
    - Column [loop-increment]
    - - insert
    - append
    - delete
    -
    -
    - - - -
    - Heading: - - Summary: -
    - Align: - - Format: -
    - Edit as key for: -
    -
    -
    - -[if-mm advanced mml] - -[/if-mm]
    - - - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/report_results.html b/dist/lib/UI/pages/admin/report_results.html deleted file mode 100644 index e01a0e408..000000000 --- a/dist/lib/UI/pages/admin/report_results.html +++ /dev/null @@ -1,446 +0,0 @@ -[if-mm !tables] -[seti ui_error]Not authorized for table [cgi mv_data_table][/seti] -[bounce page="__UI_BASE__/error"] -[/if-mm] -[if-mm !advanced report] -[seti ui_error]Not authorized for reporting functions.[/seti] -[bounce page="__UI_BASE__/error"] -[/if-mm] -[seti page_title][cgi report_title][/seti] -[set ui_class]Reports[/set] -[set icon_name]admin/icon_stats.gif[/set] -[set help_name]report[/set] -[calc] - $Scratch->{head_put} = '@' . '_UI_STD_HEAD_@'; - $Scratch->{foot_put} = '@' . '_UI_STD_FOOTER_@'; - $Scratch->{page_put} = '@' . '@MV_PAGE@@'; - $Config->{NoSearch} = ''; -[/calc] - -[perl] - $Scratch->{relocate} = ''; - return unless $CGI->{row_change}; - $CGI->{row_change} =~ /^(insert|append|delete)(\d+)$/ - or return; - $function = $1; - $row = $2; - %saved = %$CGI; - for(keys %saved) { - push @del, $_ unless length($saved{$_}); - } - for(@del) { - delete $saved{$_}; - } - @del = (); - my @change; - my %ignore = qw/ - break - sort_order - sort_option - /; - my $key; - my $max = 0; - foreach $key (keys %saved) { - next unless $key =~ /^(\w+\D)(\d+)$/; - my $nm = $1; - my $idx = $2; - next if $ignore{$nm}; - $max = $idx if $idx > $max and $key eq "table$idx"; - if($function eq 'append') { - next if $idx <= $row; - } - else { - next if $idx < $row; - } - push @change, [$key, $saved{$key}]; - push @del, $key; - } - for(@del) { - delete $saved{$_}; - } - if($function eq 'insert' or $function eq 'append') { - $max++; - for(@change) { - my ($k, $v) = @{$_}; - $k =~ s/(\d+)$/$1 + 1/e; - $saved{$k} = $v; - } - $Scratch->{relocate} = '__UI_BASE__/report'; - } - elsif($function eq 'delete') { - $max--; - for(@change) { - my ($k, $v) = @{$_}; - $k =~ /(\d+)/; - my $idx = $1; - next if $idx == $row; - $k =~ s/(\d+)$/$1 - 1/e; - $saved{$k} = $v; - } - $Scratch->{relocate} = '__UI_BASE__/report'; - } - else { - $Scratch->{relocate} = 'special/failed'; - } - - $saved{num_columns} = $max > 1 ? $max + 1 : 3; - - $Values->{saved_report} = \%saved; - return; -[/perl] - -[if scratch relocate] - [bounce href="[area href=`$Scratch->{relocate}`]"] -[/if] - -@_UI_STD_HEAD_@ - -[seti name=tables][list-databases][/seti] -[perl table="[scratch tables]"] - $vals = {}; - my $current_table = $Values->{mv_data_table} = $CGI->{report_table}; - %saved = %$CGI; - - for(keys %saved) { - push @del, $_ unless length($saved{$_}); - } - for(@del) { - delete $saved{$_}; - } - unless ($current_table) { - $Scratch->{search_string} = ""; - $Scratch->{search_page} = "

    NO CURRENT TABLE
    $h"; - $page .= qq{[page href="__UI_BASE__/flex_editor" - form=" - ui_return_to=$Scratch->{page_put}; - mv_data_table=$e - item_id=$ek - "]} if $e; - if ($r) { - $page .= $k - ? qq{[filter op=$r interpolate=1]} - : qq{[item-filter $r]}; - } - $page .= $data; - if ($r) { - $page .= $k - ? qq{[/filter]} - : qq{[/item-filter]}; - } - $page .= qq{} if $e; - } - $total_line .= "\t"; - $total_line .= "TOTAL" unless $i; - $last_total_line .= "\t"; - $last_total_line .= "TOTAL" unless $i; - for (@breaks) { - $foot_change{$_} .= "\t"; - $last_foot_change{$_} .= "\t"; - if($_ eq $c) { - $foot_change{$_} .= qq{[if scratch first_done_$c]}; - $foot_change{$_} .= qq{
    } if ! $summary_only; - $foot_change{$_} .= qq{[value prev_data_$c]}; - $foot_change{$_} .= qq{
    } if ! $summary_only; - $foot_change{$_} .= qq{[/if]}; - $last_foot_change{$_} .= "
    [value prev_data_$c]
    "; - } - elsif($s) { - $foot_change{$_} .= qq{[if scratch first_done_$_]}; - $foot_change{$_} .= qq{
    } if ! $summary_only; - $foot_change{$_} .= qq{[item-filter $r]} if $r; - $foot_change{$_} .= "[item-exec summary]$t.$c.$_ SUBTOTAL[/item-exec]\n"; - $foot_change{$_} .= qq{[/item-filter]} if $r; - $foot_change{$_} .= qq{
    } if ! $summary_only; - $foot_change{$_} .= qq{[/if]\n}; - $last_foot_change{$_} .= qq{
    }; - $last_foot_change{$_} .= qq{[filter op="$r" interpolate=1]} if $r; - $last_foot_change{$_} .= '[calc]$subtotal' . "{'$t.$c.$_'}" . "[/calc]\n"; - $last_foot_change{$_} .= qq{[/filter]} if $r; - $last_foot_change{$_} .= qq{
    }; - } - $foot_change{$_} .= "

    More[more]
    -[search-region search="[scratch search_string]" interpolate=1] -[scratch search_page] -[/search-region] -
    -[/else] -[/if] -[set search_page][/set] -[set search_string][/set] -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/report_save.html b/dist/lib/UI/pages/admin/report_save.html deleted file mode 100644 index 4ae0aebde..000000000 --- a/dist/lib/UI/pages/admin/report_save.html +++ /dev/null @@ -1,6 +0,0 @@ -[if value success] - [bounce page="__UI_BASE__/report"] -[/if] -[set ui_error]Report save failed[/set] -[bounce page="__UI_BASE__/error"] - diff --git a/dist/lib/UI/pages/admin/reports/order/ByAffiliate.html b/dist/lib/UI/pages/admin/reports/order/ByAffiliate.html deleted file mode 100644 index 182deba95..000000000 --- a/dist/lib/UI/pages/admin/reports/order/ByAffiliate.html +++ /dev/null @@ -1,194 +0,0 @@ -[if-mm !advanced orderstats] - [calc] - $CGI->{affiliate} = $Session->{username}; - return; - [/calc] -[/if-mm] -[seti page_title]Orders by Affiliate[if cgi affiliate]: [cgi affiliate][/if][/seti] -[set icon_name]admin/icon_stats.gif[/set] -[set help_name]orderstats.view[/set] - -@_UI_STD_HEAD_@ - - - - - - - - - - - -[calc] - if($Session->{arg}) { - $Scratch->{date_limit} = "AND order_date like '$Session->{arg}%'"; - } - elsif ($CGI->{ui_begin_date}) { - for (qw/ ui_begin_date ui_end_date /) { - $CGI->{$_} = $Tag->filter( { - op => 'date_change', - body => $CGI->{$_} - }); - } - $Scratch->{date_limit} = < '$CGI->{ui_begin_date}' -AND order_date < '$CGI->{ui_end_date}Z' -EOF - } - else { - $Scratch->{date_limit} = ""; - } - - $Scratch->{synd_limit} = ''; - return unless $CGI->{affiliate}; - $Scratch->{synd_limit} = "AND affiliate = '$CGI->{affiliate}'"; - $Scratch->{synd_limit} .= " AND campaign = '$CGI->{campaign}'" - if $CGI->{campaign}; - return; -[/calc] - -[query - st=db - table=transactions - hashref=main - sql=" - select affiliate, campaign, total_cost, order_date - from transactions - WHERE deleted != '1' [scratch date_limit] [scratch synd_limit] - order by affiliate, campaign, order_date - "][/query] - -[perl tables="transactions"] - my %sales; - $master = {}; - if($Scratch->{synd_limit}) { - $syndstring = "&affiliate=$CGI->{affiliate}"; - } - else { - $syndstring = ""; - } - #Log("query returned " . $Tag->uneval( {ref => $Tmp->{main} } )); - foreach $line (@{$Tmp->{main}}) { - my ($month) = substr($line->{order_date}, 0, 6); - my $id = $line->{affiliate}; - $id .= "-$line->{campaign}"; - $month{$month}++; - $master->{$month} = { } if ! $master->{$month}; - $master->{$month}{$id} = { } if ! $master->{$month}{$id}; - my $ref = $master->{$month}{$id}; - $ref->{sales} += $line->{total_cost}; - $ref->{orders}++; - } - %names = qw/ - 01 January - 02 February - 03 March - 04 April - 05 May - 06 June - 07 July - 08 August - 09 September - 10 October - 11 November - 12 December - /; - my $out = ''; - foreach $month (sort { $b <=> $a } keys %$master) { - my $year = $month; - $year =~ s/(\d\d\d\d)(\d\d)/$1/; - my $mname = $names{$2}; - my $subtotal_sales = 0; - my $subtotal_quantity = 0; - my $ref = $master->{$month}; - foreach $id (sort keys %$ref) { - my $record = $ref->{$id}; - $sales = $Tag->currency({}, $record->{sales}); - $subtotal_sales += $record->{sales}; - $subtotal_quantity += $record->{orders}; - ($syn, $camp) = split /-/, $id, 2; - my $synlabel = $syn || '(none)'; - my $burl = $Tag->area('__UI_BASE__/reports/order/Monthly', $month); - my $url = qq{$mname $year} - if $mname; - $out .= < - - - - -EOF - $mname = $year = ''; - } - $total_sales += $subtotal_sales; - $total_quantity += $subtotal_quantity; - $subtotal_sales = $Tag->currency({}, $subtotal_sales); - $out .= < - - - - - -EOF - } - $total_sales = $Tag->currency({}, $total_sales); - $out .= < - - - - - - - -EOF -[/perl] -
    - -Date - - - -Affiliate - - - -Number of Orders - - - -Revenue - -
    - $url  - - $synlabel $camp - - $record->{orders} - - $sales - -   - - ALL

    -
    - $subtotal_quantity - - $subtotal_sales -
    - - GRAND TOTAL - - - ALL - - - $total_quantity - - - $total_sales -
    - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/reports/order/Detail.html b/dist/lib/UI/pages/admin/reports/order/Detail.html deleted file mode 100644 index 3738a38ff..000000000 --- a/dist/lib/UI/pages/admin/reports/order/Detail.html +++ /dev/null @@ -1,167 +0,0 @@ -[if-mm !advanced orderstats] - [calc] - $CGI->{affiliate} = $Session->{username}; - return; - [/calc] -[/if-mm] -[set page_title]Order detail report[/set] -[set icon_name]admin/icon_stats.gif[/set] -[set help_name]orderstats.view[/set] -@_UI_STD_HEAD_@ - - - - - - - - - - - - - - - - - -[calc] - if($Session->{arg}) { - $Scratch->{date_limit} = "AND order_date like '$Session->{arg}%'"; - } - elsif ($CGI->{ui_begin_date}) { - for (qw/ ui_begin_date ui_end_date /) { - $CGI->{$_} = $Tag->filter( { - op => 'date_change', - body => $CGI->{$_} - }); - } - $Scratch->{date_limit} = < '$CGI->{ui_begin_date}' -AND order_date < '$CGI->{ui_end_date}Z' -EOF - } - else { - $Scratch->{date_limit} = "AND order_date like '$Scratch->{today}%'"; - } - $Scratch->{synd_limit} = ''; - return unless $CGI->{affiliate}; - $Scratch->{synd_limit} = "AND affiliate = '$CGI->{affiliate}'"; - $Scratch->{synd_limit} .= " AND campaign = '$CGI->{campaign}'" - if $CGI->{campaign}; - return; -[/calc] - -[query hashref=main - st=db - table=transactions - sql=" - select order_number, affiliate, campaign, total_cost, payment_method, state, city, status, order_date - from transactions - WHERE deleted != '1' - [scratch date_limit] [scratch synd_limit] - order by order_number - "][/query] - -[perl tables="store"] - return <{main}; - - -EOF - foreach $line (@{$Tmp->{main}}) { - $total_sales += $line->{total_cost}; - $amount = sprintf '%.2f', $line->{total_cost}; - $url = $Tag->area('__UI_BASE__/order_view', $line->{order_number}); - $out .= < - - - - - - - - -EOF - } - $total_sales = sprintf '$%.2f', $total_sales; - $out .= < - - - - - - - - - - - - -EOF -[/perl] -
    - -Order - - - -Affiliate - - - -Campaign - - - -Address - - - -Date/Time - - - -Amount - - - -Status - -
    -

    Bad query specified, caused error.

    -
    - $line->{order_number} - - $line->{affiliate}  - - $line->{campaign}  - - $line->{city}, $line->{state} - - $line->{order_date} - - $amount - - $line->{status} -
    - GRAND TOTAL - -   - -   - -   - -   - - $total_sales - -   - -
    - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/reports/order/Monthly.html b/dist/lib/UI/pages/admin/reports/order/Monthly.html deleted file mode 100644 index 4a6ce38cd..000000000 --- a/dist/lib/UI/pages/admin/reports/order/Monthly.html +++ /dev/null @@ -1,205 +0,0 @@ -[if-mm !advanced orderstats] - [calc] - $CGI->{affiliate} = $Session->{username}; - return; - [/calc] -[/if-mm] -[set page_title]Orders by day for a month[/set] -[set icon_name]admin/icon_stats.gif[/set] -[set help_name]orderstats.view[/set] -@_UI_STD_HEAD_@ - - - - - - - - - - - - - - -[calc] - if($Session->{arg}) { - $Scratch->{date_limit} = "AND order_date like '$Session->{arg}%'"; - } - elsif ($CGI->{ui_begin_date}) { - for (qw/ ui_begin_date ui_end_date /) { - $CGI->{$_} = $Tag->filter( { - op => 'date_change', - body => $CGI->{$_} - }); - } - $Scratch->{date_limit} = < '$CGI->{ui_begin_date}' -AND order_date < '$CGI->{ui_end_date}Z' -EOF - } - else { - $Scratch->{date_limit} = "AND order_date like '$Scratch->{today}%'"; - } - - $Scratch->{synd_limit} = ''; - return unless $CGI->{affiliate}; - $Scratch->{synd_limit} = "AND affiliate = '$CGI->{affiliate}'"; - $Scratch->{synd_limit} .= " AND campaign = '$CGI->{campaign}'" - if $CGI->{campaign}; - return; -[/calc] - -[query hashref=main - st=db - table=transactions - nu=0,0,0,0 - sql=" - select affiliate, campaign, total_cost, order_date - FROM transactions - WHERE deleted != '1' [scratch date_limit] [scratch synd_limit] - "][/query] - -[perl tables="store"] - my %sales; - $master = {}; - if($Scratch->{synd_limit}) { - $syndstring = "&affiliate=$CGI->{affiliate}"; - } - else { - $syndstring = ""; - } - foreach $line (@{$Tmp->{main}}) { - my ($month) = substr($line->{order_date}, 0, 8); - my $id = $line->{affiliate}; - $id .= "-$line->{campaign}"; - $month{$month}++; - $master->{$month} = { } if ! $master->{$month}; - $master->{$month}{$id} = { } if ! $master->{$month}{$id}; - my $ref = $master->{$month}{$id}; - $ref->{sales} += $line->{total_cost}; - $ref->{orders}++; - } - %names = qw/ - 01 January - 02 February - 03 March - 04 April - 05 May - 06 June - 07 July - 08 August - 09 September - 10 October - 11 November - 12 December - /; - my $out = ''; - foreach $month (sort { $a <=> $b } keys %$master) { - my $year = $month; - $year =~ s/(\d\d\d\d)(\d\d)(\d\d)/$1/; - my $mname = $names{$2}; - my $day = $3; - $day =~ s/^0+//; - my $subtotal_sales = 0; - my $subtotal_quantity = 0; - my $ref = $master->{$month}; - foreach $id (sort keys %$ref) { - my $record = $ref->{$id}; - $sales = $Tag->currency({}, $record->{sales}); - $subtotal_sales += $record->{sales}; - $subtotal_quantity += $record->{orders}; - ($syn, $camp) = split /-/, $id, 2; - my $synlabel = $syn || '(none)'; - my $burl = $Tag->area('__UI_BASE__/reports/order/Detail', $month); - my $url = qq{$mname $day, $year} - if $mname; - $out .= < - - - - -EOF - $mname = $year = $day = ''; - } - $total_sales += $subtotal_sales; - $total_quantity += $subtotal_quantity; - $subtotal_sales = $Tag->currency({}, $subtotal_sales); - $out .= < - - - - - -EOF - } - $total_sales = $Tag->currency({}, $total_sales); - $out .= < - - - - - - -EOF -[/perl] -
    - -Date - - - -Affiliate/Campaign - - - -Number of Orders - - - -Revenue - -
    - $url  - - - $synlabel $camp - - - $record->{orders} - - - $sales - - -   - - - ALL

    - -
    - $subtotal_quantity - - - $subtotal_sales - -
    - GRAND TOTAL - - - ALL - - - $total_quantity - - - $total_sales - -
    - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/reports/traffic/ByAffiliate.html b/dist/lib/UI/pages/admin/reports/traffic/ByAffiliate.html deleted file mode 100644 index 9227b615a..000000000 --- a/dist/lib/UI/pages/admin/reports/traffic/ByAffiliate.html +++ /dev/null @@ -1,270 +0,0 @@ -[if-mm !advanced affiliate=v] - [calc] - $CGI->{affiliate} = $Session->{username}; - return; - [/calc] -[/if-mm] -[seti page_title][if cgi affiliate] - Traffic by Affiliate: - [either][data table=affiliate col=name key="[cgi affiliate]"][or][cgi affiliate][/either] ([cgi affiliate]) - [else] - Traffic statistics - [/else] -[/if][/seti] -[set icon_name]admin/icon_stats.gif[/set] -[set help_name]trafficstats.view[/set] - -@_UI_STD_HEAD_@ - - - - - - - - - - - - - - - - -[perl tables=affiliate] - - my $file = $Config->{TrackFile}; - $Scratch->{$file} = 1; - - %opts = ( - rf => [ 0 .. 6 ], - hs => 0, - fi => $file, - ml => 999999, - ); - %names = qw/ - 01 January - 02 February - 03 March - 04 April - 05 May - 06 June - 07 July - 08 August - 09 September - 10 October - 11 November - 12 December - /; - if($Session->{arg}) { - my $beg = $CGI->{ui_begin_date}; - $opts{dl} = $beg++; - $opts{de} = $beg; - } - elsif ($CGI->{ui_begin_date}) { - for (qw/ ui_begin_date ui_end_date /) { - $CGI->{$_} = $Tag->filter( { - op => 'date_change', - body => $CGI->{$_} - }); - } - my $end; - if( $end = $CGI->{ui_end_date}) { - $end++; - $opts{de} = $end; - } - $opts{dl} = $CGI->{ui_begin_date}; - } - - if ($CGI->{affiliate}) { - $opts{sf} = [ 5 ]; - $opts{se} = [ $CGI->{affiliate} ]; - } - else { - $opts{ra} = 1; - } - - my $ary = $TextSearch->array(\%opts); - my $timeout = '__VISIT_TIMEOUT__' || (30 * 10); - - my $by_day = $CGI->{ui_by_day}; - my $len; - $len = $by_day ? 8 : 6; - - $prev = substr($ary->[0][0], 0, $len); - $break_check = sub { - return if $_[0] eq $prev; - $prev = $_[0]; - return 1; - }; - - BREAK: { - my %action_by_tag = (); - my %action_by_visit = (); - my %action_by_visit_number = (); - my %actions_per_visit_boolean = (); - my $hits; - my %hits_by_item = (); - my %hits_by_page = (); - my %hits_by_session = (); - my $interval_count = 0; - my $interval_total = 0; - my %last_access = (); - my $max_interval = 0; - my $min_interval = 9999999; - my $out = ''; - my %session_by_order = (); - my %session_by_page = (); - my %visit_by_aff = (); - my %visit_by_ip = (); - my %visit_by_session = (); - my %visit_by_user = (); - my %visit_number = (); - my $visits; - COUNT: - while ($_ = shift @$ary) { - - my $per = substr($_->[0], 0, $len); - $break_check->($per) - and do { - unshift @$ary, $_; - last COUNT; - }; - my $update_visit; - my $interval; - $hits++; - $hits_by_period{$per}++; - $hits_by_day{$_->[0]}++; - $hits_by_session{$_->[1]}++ - or $update_visit = 1; - - $interval = $_->[4] - $last_access{$_->[1]} - if $last_access{$_->[1]}; - if($interval) { - $max_interval = $interval - if $interval > $max_interval; - $min_interval = $interval - if $interval < $min_interval; - $interval_total += $interval; - $interval_count++; - $update_visit = 1 if $interval > $timeout; - } - $last_access{$_->[1]} = $_->[4]; - - if($update_visit) { - $visits++; - $visit_number = "$_->[1]:" . $visit_by_session{$_->[1]}++; - $visit_by_period{$per}++; - $visit_by_day{$_->[0]}++; - $visit_by_user{$_->[2]}++; - $visit_by_ip{$_->[3]}++; - $visit_by_aff{$_->[5]}++; - $visit_by_aff_by_period{$per}{$_->[5]}++; - $visit_by_aff_by_day{$_->[0]}{$_->[5]}++; - } - - my (@items) = split /\&/, $_->[6]; - foreach $it (@items) { - my($tag, $val) = split /=/, $it, 2; - $action_by_visit{$tag}++ - unless $action_by_visit_number{$visit_number}{$tag}++; - $action_by_tag{$tag}{$val}++; - $action_by_aff{$_->[5]}{$tag}++; - $action_by_period{$per}{$tag}++; - $action_by_day{$_->[0]}{$tag}++; - } - } - foreach my $one (sort keys %visit_by_period) { - my ($yr, $mon, $day) = $one =~ /(\d\d\d\d)(\d\d)(\d\d)?/; - my $date; - $date = $day ? "$names{$mon} $day, $yr" : "$names{$mon} $yr"; - $out = < -EOF - my (@number) = grep /\S/, keys %{ $visit_by_aff_by_period{$one} }; - my $count = scalar(@number); - $out .= < -$count - - - -EOF - for(qw/ VIEWPAGE VIEWPROD ADDITEM ORDER /) { - $count = $action_by_period{$one}{$_} || 0; - $pct = ''; - $pct = $action_by_visit{$_} / $visit_by_period{$one} * 100 - if $visit_by_period{$one}; - $pct = $pct <= 0 ? '' : sprintf( "
    %.2f%%
    ", $pct); - $out .= < -$count$pct - -EOF - } - $out .= ''; - } -[comment] - - for(keys %action_by_tag) { - #$out .= "$_: " . $Tag->uneval( { ref => $action_by_tag{$_} }); - $out .= "\n"; - $out .= "Percent of visits with $_: " . $action_by_visit{$_} / $visits * 100; - $out .= "\n"; - } - for(sort keys %visit_by_period) { - $out .= "$_: visits=$visit_by_period{$_}, " ; - $out .= "hits=$hits_by_period{$_}\n" ; - } - $out .= "Minimum interval: $min_interval\n"; - $out .= "Maximum interval: $max_interval\n"; - $out .= "Average interval: " . $interval_total / $interval_count . "\n" - if $interval_count; -[/comment] - push @out, $out; - redo BREAK if scalar (@$ary); - } - return join "\n\n", @out; -[/perl] - - -
    - -Date - - - -Affiliate - - - -Visits - - - -Hits - - - -Pages - - - -Prod. Views - - - -Items in cart - - - -Orders - -
    -$date - -$visit_by_period{$one} - -$hits_by_period{$one} -
    -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/search_wizard.html b/dist/lib/UI/pages/admin/search_wizard.html deleted file mode 100644 index 990f81328..000000000 --- a/dist/lib/UI/pages/admin/search_wizard.html +++ /dev/null @@ -1,405 +0,0 @@ -[seti page_title]Search wizard[/seti] -[set help_name]search_builder[/set] -[set ui_class]Design[/set] -[set icon_name]admin/icon_config.gif[/set] -[seti name=tables][list-databases][/seti] -[seti meta_header] -[perl table="[scratch tables]"] - - my @tables = split /\s+/, $Scratch->{tables}; - my $out; - for(@tables) { - $tables{$_} = [ $Db{$_}->columns() ]; - } - $out = " -EOF -[/perl] -[/seti] - -[calc] $Config->{NoSearch} = ''; [/calc] - -@_UI_STD_HEAD_@ - -
    - -[return-to] - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - Search Table - - - - - The search must be based on a table, by default the main items table.

    - - NOTE: It is possible to search multiple tables in Interchange, but that is - not supported by this wizard. -
    -
    - Search locality - - - - - - For full-text searches, it is usually better to search the text file - source of the database (create at [page __UI_BASE__/genexport]Direct table export[/page]). When using SQL databases, the coordinated field-based searches are much - faster when the first search term is "equals to". - -
    - Search Template - - - - - The results of the search are sent to a page template, by default - [calc]$Config->{Special}{results};[/calc].

    - If you select a page, it should have the [search-region] area necessary - to read and build the search. - -

    - Page size - - - - - You can limit the number of results per page, and use the - template [more-list] to page between matches. The default is 50. -
    - Unique only - - - - - Normally one search result is returned for every matching record. If you - wish to eliminate duplicate result returns, you can use this. -
    - Allow full expressions - - - - - Normally characters are searched for literally, i.e. a period - will match a period. If you wish to use the power of Perl regular - expressions in your matching criteria, select Yes. Bear - in mind that some things you enter may not behave just as you - might think they will; see perldoc perlre for a complete - description of what Perl regular expressions are. -
    -[button text="Cancel"] - [return-to click] -[/button]    [button text="Next -->"] - mv_nextpage=__UI_BASE__/search_wizard2 -[/button] -
    - -

    - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/search_wizard2.html b/dist/lib/UI/pages/admin/search_wizard2.html deleted file mode 100644 index 4d88ff782..000000000 --- a/dist/lib/UI/pages/admin/search_wizard2.html +++ /dev/null @@ -1,388 +0,0 @@ -[seti page_title]Search wizard: criteria [calc] $CGI->{current_column} + 1[/calc][/seti] -[set help_name]search_builder[/set] -[set ui_class]Design[/set] -[set icon_name]admin/icon_config.gif[/set] -[seti name=tables][list-databases][/seti] -[seti meta_header] -[perl table="[scratch tables]"] - - my @tables = split /\s+/, $Scratch->{tables}; - my $out; - for(@tables) { - $tables{$_} = [ $Db{$_}->columns() ]; - } - $out = " -EOF -[/perl] -[/seti] - -[calc] $Config->{NoSearch} = ''; [/calc] - -@_UI_STD_HEAD_@ - -
    - - -[return-to] -

    - - - - - -[loop list="[value current_column]"] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[/loop] - - - -
    - Search table - - - [if !value current_column] - [value search_table] - [else] - - [/else] - [/if] - - - [if !value current_column] - Since this is the first specification in the search, it must be based - on your current table. Use Back to change the table. - [else] - The search must be based on one or more tables. Since you have already specified - one criteria, you can do a test on an external database table that shares - the same key as your search table. For example, to select an SKU that has - a quantity 10 price less than $100, you can enter the "pricing" table and - search for amounts less than $100. - [/else] - [/if] - -
    - Search field - - - - - - - - You can search one specific field for a value. If you don't select a field, - a full-text search will be done on all fields of the database record. - -
    - Search operation - - - - - - You can use any number of search comparisons. Bear in mind that equal to - means exactly that; you should use regular expression match if you want - to search for contained text. -
    - Search for - - - - - - This is what you are searching for. -
    - Case sensitive - - - - - - If a text search, you can specify to match case-sensitively. -
    - Word/partial word - - - - - - If you select partial, a search for "bread" would match "breadbasket" - and "bread". If you select whole words, it would only match "bread". -
    - Match beginning - - - - - - Determines whether you must match the beginning of a search field. -

    - By default, a search for of "bread" would match both "rye bread" and "bread - bowl". If you select match beginning, it would only match "bread bowl". -

    -[button text="Cancel"] - saved_search= - mv_todo=return - [return-to click] -[/button]    [button text="<-- Back"] - mv_nextpage=__UI_BASE__/search_wizard.html -[/button][loop list=` - my $tmp; - return if $Values->{num_columns} < 2; - return join " ", 1 .. $Values->{num_columns}; -`]    [button text="Criteria [loop-code]"] - current_column=[calc] - $CGI->{current_column} = $Values->{current_column} = [loop-code] - 1; - [/calc] - mv_nextpage=__UI_BASE__/search_wizard2.html -[/button][/loop]    [button text="Narrow further"] - current_column=[calc] - $CGI->{current_column} = ++$Values->{current_column}; - [/calc] - mv_data_table=[value search_table] - mv_nextpage=__UI_BASE__/search_wizard2.html -[/button]    [button text="Next -->"] - mv_data_table=[value search_table] - mv_nextpage=__UI_BASE__/search_wizard3.html -[/button] -
    - -

    -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/search_wizard3.html b/dist/lib/UI/pages/admin/search_wizard3.html deleted file mode 100644 index 407e233eb..000000000 --- a/dist/lib/UI/pages/admin/search_wizard3.html +++ /dev/null @@ -1,228 +0,0 @@ -[seti page_title]Search wizard: sorting[/seti] -[set help_name]search_builder[/set] -[set ui_class]Design[/set] -[set icon_name]admin/icon_config.gif[/set] -[seti name=tables][list-databases][/seti] -[seti meta_header] -[perl table="[scratch tables]"] - - my @tables = split /\s+/, $Scratch->{tables}; - my $out; - for(@tables) { - $tables{$_} = [ $Db{$_}->columns() ]; - } - $out = " -EOF -[/perl] -[/seti] - -[calc] $Config->{NoSearch} = ''; [/calc] - -@_UI_STD_HEAD_@ - -
    - - -[return-to] -

    - - - - - - - - - - - - - - - - - - - - - - - - - -
    - Sort field - - - - [loop list="0 1 2"] - - -
    - [/loop] - -
    - - You can sort the search return on one or more fields, with some options. - -
    - Search return field - - - [loop list="1 2 3 4 5"] -
    - [/loop] -
    -
    - - By default, the database key for the searched table or file is returned. If - you are designing your own results page, you can optionally return more - fields for use with the [PREFIX-param field] tags. - -
    -[button text="Cancel"] - saved_search= - mv_todo=return - [return-to click] -[/button]    [button text="<-- Back"] - mv_nextpage=__UI_BASE__/search_wizard2.html -[/button]    [button text="Preview"] - generate_page=0 - mv_nextpage=__UI_BASE__/search_wizard_results.html -[/button]    [button text="Finish -->"] - generate_page=1 - [return_to click] - mv_nextpage=__UI_BASE__/search_wizard_results.html -[/button] -
    - -

    -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/search_wizard_results.html b/dist/lib/UI/pages/admin/search_wizard_results.html deleted file mode 100644 index 94316a391..000000000 --- a/dist/lib/UI/pages/admin/search_wizard_results.html +++ /dev/null @@ -1,204 +0,0 @@ -[if-mm !tables] -[seti ui_error]Not authorized for table [cgi mv_data_table][/seti] -[bounce page="__UI_BASE__/error"] -[/if-mm] -[if-mm !advanced report] -[seti ui_error]Not authorized for reporting functions.[/seti] -[bounce page="__UI_BASE__/error"] -[/if-mm] -[seti page_title][cgi report_title][/seti] -[set icon_name]admin/icon_stats.gif[/set] -[set ui_class]Design[/set] -[set help_name]report[/set] - -@_UI_STD_HEAD_@ - -[seti name=tables][list-databases][/seti] -[perl table="[scratch tables]"] - $vals = {}; - my (@wanted) = qw/ - current_column - num_columns - search_name - search_table - search_type - search_template - unique_only - allow_regex - matchlimit - /; - - my $saved = $Values->{saved_search} || {}; - - for (@wanted) { - delete $Values->{$_}; - $saved->{$_} = $CGI->{$_} - if defined $CGI->{$_}; - $Values->{$_} = $saved->{$_} - if defined $saved->{$_}; - } -#Log("wizard_results saved search_table=$saved->{search_table} num_columns=$saved->{num_columns} current=$saved->{current_column}"); - - my $current_table = $saved->{search_table}; - - for(keys %saved) { - push @del, $_ unless length($saved{$_}); - } - for(@del) { - delete $saved{$_}; - } - unless ($current_table) { - $Scratch->{search_string} = ""; - $Scratch->{search_page} = "NO CURRENT TABLE"; - return; - } - - my @look = ( - qw/ - search_field - search_spec - search_op - case_sensitive - begin_string - substring - numeric - / - ); - my @looktoo = ( - qw/ - sort_order - sort_option - return - / - ); - my %xlt = ( - qw/ - search_spec se - search_field sf - search_op op - case_sensitive cs - begin_string bs - substring su - return rf - sort_order tf - sort_option to - / - ); - my %found; - - for( keys %{$saved}) { - next unless /^([A-Za-z_]+)(\d+)$/; - my $item = $1; - my $idx = $2; - $found{$item} = 1 if length $saved->{"$item$idx"}; - $vals->{$item} = [] - unless defined $vals->{$item}; - $vals->{$item}[$idx] = $saved->{"$item$idx"}; - } - for( keys %{$CGI}) { - next unless /^([A-Za-z_]+)(\d+)$/; - my $item = $1; - my $idx = $2; - next unless defined $xlt{$item}; - $found{$item} = 1 if length $CGI->{"$item$idx"}; - $vals->{$item} = [] - unless defined $vals->{$item}; - $vals->{$item}[$idx] = $CGI->{"$item$idx"}; - } - return "No tables/columns selected" unless defined $saved->{search_table}; - - foreach my $one (0 .. ($saved->{num_columns} - 1) ) { - if($saved->{"search_field$one"} and $saved->{"search_spec$one"}) { - for (@look) { - push @string, qq!$xlt{$_}=$saved->{"$_$one"}! - if $found{$_}; - next unless $_ eq 'search_op'; - push @string, ( $saved->{"search_op$one"} =~ /[=<>]/ ? 'nu=1' : 'nu=0'); - } - push @string, ""; - } - } - - if(! scalar @string) { - push @string, "ra=yes"; - } - else { - if($saved->{search_field0} eq '*') { - for(@string) { - s/^sf=\*// and last; - } - } - else { - unshift @string, '', "co=1", ''; - } - } - - foreach my $one (0 .. 2) { - for (qw/ return /) { - next unless $saved->{"$_$one"}; - push @string, qq!$xlt{$_}=$saved->{"$_$one"}!; - } - } - - unshift @string, "ac=0" - if $saved->{allow_regex}; - unshift @string, "sp=$saved->{search_template}" - if $saved->{search_template}; - unshift @string, "st=$saved->{search_type}" - if $saved->{search_type}; - unshift @string, '', "fi=$current_table"; - - if ($saved->{matchlimit}) { - push @string, "ml=$saved->{matchlimit}"; - } - - if($vals->{sort_order}) { - for(my $i = 0; $i < scalar @{$vals->{sort_order}}; $i++) { - my $f = $vals->{sort_order}[$i]; - last unless $f; - push @string, "tf=$f"; - push @string, "to=" . $vals->{sort_option}[$i]; - } - } - my $sstring = join "\n\t\t", @string; - for( '|', '"', "'") { - next if index($sstring, $_) != -1; - $qchar = $_; - last; - } - $page = '[' . "area\thref=scan\n"; - $page .= "\tsearch=$qchar\n\t\t"; - $page .= join "\n\t\t", @string; - $page .= "\n\t$qchar\n]"; - $Scratch->{search_page} = $page; - $Scratch->{rows} = scalar(@string) + 5; - return; -[/perl] -[if cgi ui_target] -[tag op=header interpolate=1] -Window-Target: [cgi ui_target] -Location: [return-to url] -[/tag] -[elsif !cgi generate_page] -[tag op=header] -Window-Target: test -[/tag] -[bounce href='[scratch name=search_page interpolate=1]'] -[/elsif] -[/if] - -Test - -
    - -
    - -Test - -[if !cgi ui_target] -[set search_page][/set] -[/if] -[set search_string][/set] - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/ship.html b/dist/lib/UI/pages/admin/ship.html deleted file mode 100644 index 7f706456d..000000000 --- a/dist/lib/UI/pages/admin/ship.html +++ /dev/null @@ -1,141 +0,0 @@ -[set help_name]shipping[/set] -[set ui_class]Admin[/set] -[set page_title]Shipping configuration[/set] -[set icon_name]admin/icon_config.gif[/set] -@_UI_STD_HEAD_@ - - - -[if type=explicit - compare=| - [newer - source=products/shipping.asc - target=`"etc/status.$Config->{CatalogName}"` - ] - |] -[value name=ui_changes_made set=1 hide=1] -You need to [page __UI_BASE__/reconfig]apply changes[/page] for changes to take effect. -[/if] - -

    -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -[button text="Create new method"] -mv_nextpage=__UI_BASE__/ship_edit -ui_shipmode=new -ui_header=Create method -[/button] -
    - -[button text="Edit method"] -mv_nextpage=__UI_BASE__/ship_edit -ui_header=Edit [cgi ui_shipmode] method -[/button] - -
    -[button text="Edit data table"] -mv_nextpage=__UI_BASE__/ship_data -ui_header=Edit [cgi ui_shipmode] data table -[/button] -
    - -[button text="Delete method" - confirm='Are you sure you want to delete this method?' -] -mv_nextpage=@@MV_PAGE@@ -ui_ship_action=delete -[/button] - -

    - -

    - - -
    -
    - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/ship_data.html b/dist/lib/UI/pages/admin/ship_data.html deleted file mode 100644 index 8b30b286d..000000000 --- a/dist/lib/UI/pages/admin/ship_data.html +++ /dev/null @@ -1,336 +0,0 @@ -[set help_name]shipping.data[/set] -[set ui_class]Admin[/set] -[seti page_title]Shipping options: edit data for method [cgi ui_shipmode][/seti] -[seti page_banner]Shipping options: edit data for method [cgi ui_shipmode][/seti] -[set icon_name]admin/icon_config.gif[/set] -@_UI_STD_HEAD_@ - - - - - -[if scratch ui_update_shipping] -[set ui_update_shipping][/set] - -[/if] - -[if cgi ui_bounce_to] -[bounce page="[cgi ui_bounce_to]"] -[/if] - -
    - - - - - - - - - - -[perl] - my $inmode = $CGI->{ui_shipmode}; - #Log("ship_data inmode=$inmode"); - my $lines = $Config->{Shipping_line}; - my $ref; - my (@modes); - for(@$lines) { - next unless $_->[0] eq $inmode; - push (@modes, $_); - } - - my ($master) = shift @modes; - #Log("gave: " . join("|", @$master) ); - my $opt = $master->[7]; - $opt = {} if ! ref $opt; - if ($opt->{ui_ship_type}) { - #Log("ui_ship_type: $opt->{ui_ship_type}"); - } - my $algomessage = $master->[2]; - if ($algomessage =~ /\[subtotal\snoformat=1\]/) { - $algomessage = 'total price'; - } - elsif ($algomessage eq 'quantity') { - $algomessage = 'total number'; - } - if($algomessage) { - $algomessage = <$algomessage of items in cart. -EOF - } - my @out; - push (@out, < - - - - - - - - - - - - - - -EOF - my $idx = -1; - my $prev_max; - @types = ( - '' => 'Number', - f => 'Formula', - '!' => 'UPS WWW Lookup', - x => 'Multiply by', - u => 'Internal UPS', - e => 'Message', - ); - if(! @modes) { - if ($opt->{ui_ship_type} =~ /^UPSE:(.*)/) { - push @modes, - [ $inmode, - $master->[1], - $master->[2], - 0, - 150, - "f [ups-query mode=$1 weight=" . '@@TOTAL' . '@@]', - '', - $opt, - ], - [ $inmode, - $master->[1], - $master->[2], - 150, - 9999999, - "e Too heavy for UPS", - '', - $opt, - ]; - } - elsif ($opt->{ui_ship_type} =~ /^UPSI/) { - push @modes, - [ $inmode, - $master->[1], - $master->[2], - 0, - 150, - "u", - '', - $opt, - ], - [ $inmode, - $master->[1], - $master->[2], - 150, - 9999999, - "e Too heavy for UPS", - '', - $opt, - ]; - } - else { - push @modes, - [ $inmode, - $master->[1], - '', - 0, - 9999999, - 0, - '', - $opt, - ]; - } - } - for(@modes) { - my $ref = $_; - $idx++; - $ref->[3] = $prev_max - if $ref->[3] < 1 or $ref->[3] > 99999; - $ref->[3] = 0 if ! $ref->[3]; - $ref->[4] = 9999999 if ! length $ref->[4]; - if ($ref->[4] > 9999998 and ! $modes[$idx + 1]) { - $max_display = qq{(infinity)}; - $bgcolor = '__UI_C_TOPBLOCKBAR__'; - } - else { - $max_display = qq{}; - $bgcolor = '__UI_C_INTBLOCK__'; - } - $out = < - - - - - - - - - - -EOF - push @out, $out; - } - return join("\n\n", @out); -[/perl] - - - - - - - - - - -
    -  -

    -[cgi ui_shipmode] -- [shipping-desc mode="[cgi ui_shipmode]"] -

    -Borderline values are rounded up the next bracket. -

    -$algomessage -

      -

    Start rangeEnd rangeCharge typeCharge amount  
    -$max_display - - - - - - -
    - -
    - -

    -[set [L]Back[/L]] -mv_nextpage=__UI_BASE__/ship -price_ok=0 -[/set] - -[set [L]Finished[/L]] -ui_bounce_to=__UI_BASE__/ship -[/set] - - - - - - -

    - - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/ship_edit.html b/dist/lib/UI/pages/admin/ship_edit.html deleted file mode 100644 index 0edfa8a79..000000000 --- a/dist/lib/UI/pages/admin/ship_edit.html +++ /dev/null @@ -1,422 +0,0 @@ -[set help_name]shipping.edit[/set] -[set ui_class]Admin[/set] -[seti page_title]Shipping options: edit method [cgi ui_shipmode][/seti] -[seti page_banner]Shipping options: edit method [cgi ui_shipmode][/seti] -[set icon_name]admin/icon_config.gif[/set] -[set meta_header] - -[/set] -@_UI_STD_HEAD_@ - - - - - - -[if scratch ui_update_shipping] -[set ui_update_shipping][/set] - -[bounce page="[either][cgi ui_bounce_url][or]__UI_BASE__/ship[/either]"] -[/if] - -[if cgi ui_bounce_url] - [bounce page="[either][cgi ui_bounce_url][or]__UI_BASE__/ship[/either]"] -[/if] - -[if cgi ui_shipmode] - [perl] - my $inmode = $CGI->{ui_shipmode}; - #Log("inmode=$inmode"); - my $lines = $Config->{Shipping_line}; - #Log("shipping: " . $Tag->uneval( { ref => $lines }) ); - my $ref; - for(@$lines) { - next unless $_->[0] eq $inmode; - $ref = $_; - last; - } - return if ! $ref; - $ref = [] if ! $ref; - my ($mode, $desc, $crit, $min, $max, $cost, $query, $opt) = @{$ref}; - #Log("gave: " . join("|", @$ref) ); - $opt = {} if ! ref $opt; - if ($opt->{ui_ship_type}) { - #Log("ui_ship_type: $opt->{ui_ship_type}"); - $Values->{ui_ship_type} = $opt->{ui_ship_type}; - } - elsif ( not $Values->{ui_ship_type} = $CGI->{ui_ship_type} ) { - if(! $crit) { - # do nothing; - } - elsif($crit eq 'weight') { - $Values->{ui_ship_type} = 'weight'; - } - elsif($crit eq 'volume') { - $Values->{ui_ship_type} = 'volume'; - } - elsif($crit eq 'quantity') { - $Values->{ui_ship_type} = 'quantity'; - } - elsif($crit =~ /^\[subtotal/) { - $Values->{ui_ship_type} = '_subtotal'; - } - else { - $Values->{ui_ship_type} = "custom"; - $Values->{ui_ship_custom_criteria} = $crit; - } - } - $Values->{ui_ship_message} = $cost; - $Values->{ui_ship_description} = $desc; - $Values->{ui_ship_ups} = $Values->{ui_ship_type} =~ /^ups/i ? 1 : 0; - $Values->{ui_ship_ups_external} = $Values->{ui_ship_type} =~ /^upse/i ? 1 : 0; - $Values->{ui_ship_ups_internal} = $Values->{ui_ship_type} =~ /^upsi/i ? 1 : 0; - if(! $crit and $Values->{ui_ship_ups}) { - $crit = 'weight'; - } - $Values->{ui_ship_criteria} = $crit; - - my (@straight) = qw/zone adder at_least origin round table geo/; - - for(@straight) { - $Values->{"ui_ship_$_"} = $opt->{$_}; - } - return; - [/perl] -[/if] -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[if value ui_ship_ups] - - [if value ui_ship_ups_internal] - [seti available_ups_internal][available_ups_internal][/seti] - - - - - - - - - - - [else] - - - - - [/else] - [/if] - - - - - - -[/if] - - - - - - - - -
    -Name of this method
    (letters/digits only) -
    - -
    -Label for this method - - -
    -Total based on this criteria - - -  - -
    -Calculate based on this algorithm - - - -
    -
    Apply this method by country
    (select as many as desired)
    -
    - -[calc] - $modes = <<'EOF'; -[loop lr=1 search=" - ra=yes - fi=country - st=db - ml=1000 - rf=code,shipmodes - "][loop-line] -[/loop] -EOF - my $mode = $CGI->{ui_shipmode}; - my (@c) = map { s/\t.*//; $_ } grep /\b$mode\b/, split /\n/, $modes; - $Values->{ui_ship_country} = join "\0", @c; - return; -[/calc] -   except these countries - -
    -Minimum shipping charge - - -
    -Additional shipping calculation
    (number only is additional charge) -
    - -
    -Round up to nearest even [L currency_symbol]$[/L] - - -
    -Allow to be zero cost - - -
    -Message when zero - - -
    - UPS Zone chart - - -
    - Table for lookups - - -
    - UPS Origin Zone[if variable UPS_ORIGIN]
    (default __UPS_ORIGIN__)[/if] -
    - -
    - Field that chooses UPS destination[if variable UPS_POSTCODE_FIELD]
    (default __UPS_POSTCODE_FIELD__)[/if] -
    - -
    - -

    - -[button text="Finished"] - do_update_cmd=Ok -[/button] -[button text="Next -->"] - do_update_cmd=Ok - ui_bounce_url=__UI_BASE__/ship_data -[/button] -[button text="[L]Cancel[/L]"] - mv_nextpage=__UI_BASE__/ship - mv_todo=back -[/button] - -

    - - - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/ship_range.html b/dist/lib/UI/pages/admin/ship_range.html deleted file mode 100644 index 5b9d793d5..000000000 --- a/dist/lib/UI/pages/admin/ship_range.html +++ /dev/null @@ -1,88 +0,0 @@ -[set page_title]Shipping options: Shipping method tables[/set] -[set ui_class]Admin[/set] -[set page_banner]Shipping method tables[/set] -[set help_name]shipping.methodtables[/set] -[set icon_name]admin/icon_config.gif[/set] -@_UI_STD_HEAD_@ - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -  -

    - -- Standard shipping by weight -

    -Borderline values are rounded up the next bracket. -

    -  -

    Start rangeEnd rangeCharge typeCharge amount  
    0 (infinity) - - - - - -Delete this range -
    -Add a new range -
    - -

    - - - - -

    - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/special/key_violation.html b/dist/lib/UI/pages/admin/special/key_violation.html deleted file mode 100644 index 6e4a3e68b..000000000 --- a/dist/lib/UI/pages/admin/special/key_violation.html +++ /dev/null @@ -1,48 +0,0 @@ -[seti page_title]Error: [scratch ui_error][/seti] -[set help_name]item.error[/set] -[set icon_name]admin/icon_error.gif[/set] -@_UI_STD_HEAD_@ - - - - - - - - - - - - - - - - -
    -  -

    - -Not authorized to edit key '[scratch arg]'. -

    -You are allowed: -

    -

    -[db-hash table=access column="table_control::[value mv_data_table]::yes_keys" key="[data session username]"] -
    -

    -You are not allowed: -

    -

    -[db-hash table=access column="table_control::[value mv_data_table]::no_keys" key="[data session username]"] -
    -

    -Please correct and try again. -

    -  -

    - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/spread.html b/dist/lib/UI/pages/admin/spread.html deleted file mode 100644 index bf8de2595..000000000 --- a/dist/lib/UI/pages/admin/spread.html +++ /dev/null @@ -1,282 +0,0 @@ - [calc] - return unless $CGI->{mv_more_ip}; - $CGI->{mv_data_table} = $Values->{mv_data_table}; - return; - [/calc] -[seti page_title] - [either] - [cgi page_title] - [or] - Spreadsheet Edit: [cgi mv_data_table] - [/either] -[/seti] -[set ui_class]Admin[/set] -[seti help_name][either][cgi help_name][or]gensql.main[/either][/seti] -[seti icon_name][either][cgi icon_name][or]admin/icon_config.gif[/either][/seti] -[set meta_header] - -[/set] -@_UI_STD_HEAD_@ - -[perl tables="[cgi mv_data_table]"] - my $table = $CGI->{mv_data_table}; - my $db = $Db{$table}; - $Values->{mv_data_table} = $table; - $Values->{ui_data_key_name} = $Db{$table}->config('KEY'); - $Values->{ui_data_fields} = - $CGI->{ui_data_fields} || - $CGI->{mv_data_fields} || - $Values->{"spread:$table:ui_data_fields"} || - join(" ", $db->columns()); - my @fields; - @fields = grep - $_ ne $Values->{ui_data_key_name}, - split /[\0\s,]+/, $Values->{ui_data_fields}; - $Values->{ui_data_fields} = join " ", @fields; - $Values->{"ui_spread_meta:$table"} = $CGI->{"ui_spread_meta:$table"} - if defined $CGI->{"ui_spread_meta:$table"}; - $Values->{ui_meta_display} = $Values->{"ui_spread_meta:$table"}; - - if($Values->{"ui_spreadsheet_rows:$table"}) { - $Values->{"ui_spreadsheet_rows"} = $Values->{"ui_spreadsheet_rows:$table"}; - } - else { - $Values->{"ui_spreadsheet_rows"} = 10; - } - - if($Values->{"ui_textarea_rows:$table"}) { - $Values->{"ui_textarea_rows"} = $Values->{"ui_textarea_rows:$table"}; - } - else { - $Values->{"ui_textarea_rows"} = 4; - } - - if($CGI->{"ui_spread_size:$table"}) { - $Values->{"ui_spread_size"} - = $Values->{"ui_spread_size:$table"} - = $CGI->{"ui_spread_size:$table"}; - } - elsif($Values->{"ui_spread_size:$table"}) { - $Values->{"ui_spread_size"} = $Values->{"ui_spread_size:$table"}; - } - else { - $Values->{"ui_spread_size"} = 12; - } - - return; -[/perl] -[if scratch ui_failure] -
    -Error: [scratch ui_failure] -[set ui_failure][/set] -
    -[/if] -
    - - - - - - - - - - - - -[calc] - @areas = grep /\S/, split /[\s,\0]+/, $Values->{ui_data_fields}; - $Scratch->{ui_num_col} = scalar(@areas) + 2; - $Config->{NoSearch} = ''; - if ($CGI->{ui_text_qualification} and $CGI->{ui_text_qualification} =~ /=/ ) { - my ($f, $s) = split /\s*=\s*/, $CGI->{ui_text_qualification} , 2; - $CGI->{ui_text_qualification} = "co=1\nop=eq\nse=$s\nsf=$f"; - } - elsif ($CGI->{ui_text_qualification}) { - $CGI->{ui_text_qualification} = "se=$CGI->{ui_text_qualification}"; - } - else { - $CGI->{ui_text_qualification} = "ra=yes"; - } - $CGI->{ui_description_field} = - q{[data table=__UI_META_TABLE__ - col=field - key="[cgi mv_data_table]" - ]}; - - return; -[/calc] - -[if !value ui_spreadsheet_rows] -[value name=ui_spreadsheet_rows set=10 hide=1] -[/if] -[search-region more=1 arg=" - [cgi ui_text_qualification] - ml=[value ui_spreadsheet_rows] - rf=[value ui_data_key_name] - tf=[value ui_data_key_name] - st=db - sp=@@MV_PAGE@@ - fi=[value mv_data_table] - "] -[rotate-table reparse=0 rotate="[value ui_rotate_spread]" interpolate=1] - - - - - - - -[with param=table value="[value mv_data_table]"] - - - - [row-edit - columns="[value ui_data_fields]" - height=`$Values->{"ui_textarea_rows:$Values->{mv_data_table}"}` - textarea="[value name='ui_textarea_fields:[value mv_data_table]']" - ] - - - - - - - [search-list] - [if-mm keys [item-code]] - - - - [row-edit - key="[item-code]" - size="[value ui_spread_size]" - columns="[value ui_data_fields]" - height=` - my $tab = $Values->{mv_data_table}; - return $Values->{"ui_textarea_rows:$tab"}; - ` - textarea=` - my $tab = $Values->{mv_data_table}; - return $Values->{"ui_textarea_fields:$tab"}; - ` - ] - - [/if-mm] - [set row_number][item-increment][/set] - [/search-list] - - - - [row-edit blank=1 size="[value ui_spread_size]" columns="[value ui_data_fields]"] - - -[more-list] - - - - - - - -[/more-list] - - - - - - - - - - - - - - -
     [value ui_data_key_name]
    - [page href="__UI_BASE__/flex_editor" - form=| - page_title=Edit [value mv_data_table]: [item-code] - mv_data_table=[value mv_data_table] - item_id=[item-code] - |]edit [item-code] -
    - -
      - More pages: [more] -
      - - -[set Cancel] -mv_todo=back -[return-to click] -[/set] - - [set OK] - [/set] -    [button text="Ok" bold=1] - mv_todo=set - [return-to click] - [/button]       - [button text="Change display"] - mv_todo=return - mv_data_table=[cgi mv_data_table] - mv_nextpage=__UI_BASE__/spread_control - [/button] - [button text="Delete checked rows" - confirm="Are you sure you want to delete the checked rows?"] -[flag type=write table="[cgi mv_data_table]"] -mv_nextpage=__UI_BASE__/flex_select -ui_auto_export= -mv_todo=return -[if-mm tables =d] - [perl tables="[cgi mv_data_table]"] - my $tab = $CGI->{mv_data_table}; - my $db = $Db{$tab}; - unless ($db) { - $Scratch->{ui_message} = "No table '$tab'"; - return; - } - my @items = split /\0/, $CGI->{batch_id}; - foreach my $item (@items) { - if ($db->delete_record($item)) { - $out .= "Deleted $item from table $tab
    "; - } - else { - $out .= "Item $item not in $tab table (or delete failed)
    "; - } - } - $Scratch->{ui_message} = $out; - return; - [/perl] -[else] - [set ui_message]Not authorized to delete items.[/set] -[/else] -[/if-mm] - [return-to click] -[/button]    - [button text=Cancel] - mv_todo=back - [return-to click] - [/button] - [if-mm super] -
    - Auto-export - [/if-mm] - -
    -[/rotate-table] - -[/search-region] -
    - - - - - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/spread_control.html b/dist/lib/UI/pages/admin/spread_control.html deleted file mode 100644 index 59914bbb5..000000000 --- a/dist/lib/UI/pages/admin/spread_control.html +++ /dev/null @@ -1,123 +0,0 @@ -[seti page_title] - Spreadsheet Control: [cgi mv_data_table] -[/seti] -[set ui_class]Admin[/set] -[seti help_name]gentable[/seti] -[seti icon_name]admin/icon_config.gif[/seti] -[set table_perm]1[/set] -[set meta_header] - -[/set] -@_UI_STD_HEAD_@ - -[seti ui_data_fields_name]spread:[value mv_data_table]:ui_data_fields[/seti] -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -Fields to display
    -[widget name="[scratch ui_data_fields_name]" - type="multiple" - data="=[db-columns joiner=',']" ] -[/widget] -
    - Display All Fields
    - Use display info -
    -Fields to display as textarea
    -[widget name="ui_textarea_fields:[value mv_data_table]" - type="multiple" - data="=[db-columns joiner=',']" ] -[/widget] -
    - -[set Display All Fields] -[scratch ui_data_fields_name]= -[/set] - -[set Cancel] -mv_todo=back -mv_nextpage=__UI_BASE__/flex_select -[/set] - -[set Set] -[if type="!cgi" term="ui_textarea_fields:[cgi mv_data_table]"] -ui_textarea_fields:[cgi mv_data_table]= -[/if] -[/set] - - -
    - -
    - -Column size
    - -
    -
    -Number of rows
    - -
    -
    -Textarea rows
    - -
    - -
    - - - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/tablereport.html b/dist/lib/UI/pages/admin/tablereport.html deleted file mode 100644 index 74d7145c1..000000000 --- a/dist/lib/UI/pages/admin/tablereport.html +++ /dev/null @@ -1,167 +0,0 @@ -[if-mm !tables] -[set ui_error]Not authorized for table.[/set] -[bounce page="__UI_BASE__/error"] -[/if-mm] -[if !advanced report] -[bounce page="__UI_BASE__/error"] -[value name=saved_report set=""] -[/if] -[seti page_title]Reports[/seti] -[set ui_class]Reports[/set] -[set help_name]report[/set] -[set icon_name]admin/icon_config.gif[/set] -[seti name=tables][list-databases][/seti] - -@_UI_STD_HEAD_@ - -[seti table_list] - [loop prefix=table list="[scratch tables]"] - - [/loop] -[/seti] - - - - - - - - - - - - - - - - -
    - - Run saved report - - - - Retrieve saved definition - - - - Delete report - -
    - [loop list="[list-glob spec='pages/__UI_BASE__/reports/* pages/__UI_BASE__/user/[data session mm_username]/reports/*']"] - [calc] - $lab = q{[loop-code]}; - $lab =~ s:\.html.*::; - $opt = $lab; - $opt =~ s:^pages/::; - $lab =~ s:.*/::; - $lab =~ s/%([0-9a-fA-F]{2})/chr(hex($1))/ge; - my $out = $Tag->page($opt); - $out .= $lab; - $out .= '
    ' - [/calc] - [/loop] -
    - [loop list="[list-glob spec='pages/__UI_BASE__/report_def/* pages/__UI_BASE__/user/[data session mm_username]/report_def/*']"] - [calc] - $lab = q{[loop-code]}; - $lab =~ s:\.html.*::; - $opt = $lab; - $opt =~ s:^pages/::; - $lab =~ s:.*/::; - $lab =~ s/%([0-9a-fA-F]{2})/chr(hex($1))/ge; - my $out = $Tag->page($opt); - $out .= $lab; - $out .= '
    ' - [/calc] - [/loop] -
    - [if-mm super] - [seti report_spec][list-glob spec='pages/__UI_BASE__/report*/* pages/__UI_BASE__/user/[data session mm_username]/report*/*'][/seti] - [else] - [seti report_spec][list-glob spec='pages/__UI_BASE__/user/[data session mm_username]/report*/*'][/seti] - [/else] - [/if-mm] - [set del_report] - [calc] - $out = ''; - my @files; - if($CGI->{ui_report_delete}) { - @possible = split /\s+/, $Scratch->{report_spec}; - @files = grep /$CGI->{ui_report_delete}$/, @possible; - } - for(@files) { - my $lab = $_; - $lab =~ s:.*/([^/]+/.+)\.html:$1:; - $lab =~ s/%([0-9a-fA-F]{2})/chr(hex($1))/ge; - $out .= "Delete $lab: "; - $out .= - $Tag->unlink_file($_, 'pages/config') - ? 'success' - : 'FAILED'; - $out .= '
    '; - } - $Scratch->{report_delete_message} = $out; - return; - [/calc] - [/set] - - [scratch report_delete_message] - [set report_delete_message][/set] -
    - - - - -
    -
    -
    -
    - - -
    -

    - - - - - - - - - - - - - -
    - - - - - -
    - -

    - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/tax.html b/dist/lib/UI/pages/admin/tax.html deleted file mode 100644 index 04beb6941..000000000 --- a/dist/lib/UI/pages/admin/tax.html +++ /dev/null @@ -1,134 +0,0 @@ -[calc] - $Values->{mv_data_table} = $CGI->{mv_data_table} = 'variable'; - $CGI->{no_dbmenu} = 1; - return; -[/calc] -[set table_perm]1[/set] -[set ui_class]Admin[/set] -[set page_title]Tax configuration[/set] -[set help_name]tax.main[/set] -[set icon_name]admin/icon_config.gif[/set] -@_UI_STD_HEAD_@ -[flag type=write table=variable] - -[perl tables=variable] - return unless $CGI->{tax_format} eq 'do'; - for (my $i = 0; $i < 1000; $i++) { - last unless defined $CGI->{"taxarea$i"}; - next if defined $CGI->{"Delete$i.x"}; - my $area = $CGI->{"taxarea$i"}; - my $rate = $CGI->{"taxrate$i"}; - my $ship = $CGI->{"taxship$i"}; - push @areas, ($area || 'new'); - push @rates, "$area=$rate"; - push (@taxes, $area) if $CGI->{"taxship$i"}; - } - $Scratch->{taxarea} = join " ", @areas; - $Scratch->{taxrate} = join ",", @rates; - $Scratch->{taxship} = join " ", @taxes; - return; -[/perl] -[if scratch taxarea] - [value name=ui_changes_made set=1 hide=1] - - - - [set taxarea][/set] - [set taxrate][/set] -[/if] -[calc] - @areas = grep /\S/, split /\s+/, tag_data(qw/variable Variable TAXAREA/); - @rates = grep /\S/, split /,/, tag_data(qw/variable Variable TAXRATE/); - my $taxship = tag_data(qw/variable Variable TAXSHIPPING/); - $taxship = " $taxship "; - my $i; - for ($i = 0; $i < scalar @areas; $i++) { - my $rate = $rates[$i]; - $rate =~ s/.*=//; - $rate =~ s/[^\d.]//g; - my $ship = ($taxship =~ / $areas[$i] /i) ? $areas[$i] : ''; - push @out, "$i\t$areas[$i]\t$rate\t$ship"; - $last = $i; - } - if ($CGI->{addnewtax}) { - $last++; - push @out, "$last\tnew"; - } - $Scratch->{its} = join "\n", @out; - return; -[/calc] -

    -

    - - - - - - - - - - - - -[loop lr=1 list="[scratch its]"] - - - - - - - - - - -[/loop] - - - - - - -
    - -Location - - -Tax Rate (%) - - -Apply tax to shipping charge - - -  -
    - - - - - - - -
    - -

    -[button text="Update values"] -mv_todo=return -[/button] -

    - - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/trafficstats.html b/dist/lib/UI/pages/admin/trafficstats.html deleted file mode 100644 index e74fa7f74..000000000 --- a/dist/lib/UI/pages/admin/trafficstats.html +++ /dev/null @@ -1,103 +0,0 @@ -[if !advanced report] -[bounce page="__UI_BASE__/error"] -[value name=saved_report set=""] -[/if] -[set page_title]Traffic Statistics[/set] -[set ui_class]Reports[/set] -[set icon_name]admin/icon_stats.gif[/set] -[set help_name]stats.traffic[/set] -@_UI_STD_HEAD_@ - - - - - - - - - - - - - -
    View Stats for this Month Only
    - -Overall by month
    -By day for this month
    - -
    -
    - - - - - - - - - - - - - - - -[if-mm advanced affiliate=l] - - - - - - - - -
    View Stats for Any Period of Time
    - -Beginning:
    - [widget type=date name=ui_begin_date] - -
    - -Ending:
    - [widget type=date name=ui_end_date] - -
    - -For affiliate:
    - - -
    -[else] -
    -[/else] -[/if-mm] - [set By day] - ui_by_day=1 - [/set] -
    -      -
    -
    - -
    - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/upload_config.html b/dist/lib/UI/pages/admin/upload_config.html deleted file mode 100644 index f78ef3143..000000000 --- a/dist/lib/UI/pages/admin/upload_config.html +++ /dev/null @@ -1,19 +0,0 @@ -[set help_name]upload.main[/set] -[set icon_name]admin/icon_config.gif[/set] -[set ui_class]Admin[/set] -[set page_title]Configuration Upload/Download[/set] -[set page_perm]pages[/set] - -@_UI_STD_HEAD_@ - - - -[set dir_mask]catalog.cfg[/set] -[set include_mask][/set] -[set exclude_mask][/set] - -@_UI_STD_FILE_NAV_@ - - - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/upload_file.html b/dist/lib/UI/pages/admin/upload_file.html deleted file mode 100644 index d11b44592..000000000 --- a/dist/lib/UI/pages/admin/upload_file.html +++ /dev/null @@ -1,141 +0,0 @@ -[set page_title]Upload File[/set] -[set page_banner]Upload File[/set] -[set ui_class]Content[/set] -[set page_perm]files[/set] -[set icon_name]admin/icon_config.gif[/set] - -[if-mm function="!files" name="[data session arg]"] -[seti ui_error]Not authorized to upload file [data session arg].[/seti] -[bounce page="__UI_BASE__/error"] -[/if-mm] - -@_UI_STD_HEAD_@ - - - -
    - - -[return-to][comment]This passes the right form vars for return processing[/comment] - - - - - - - - - - - - - - - -[if type=explicit compare=`$CGI->{ui_image_preview} =~ m{[^/]$}`] - - - -[/if] - - - - - - - - -
    - [if type=explicit compare=`$Session->{arg} =~ m{[^/]$}`] - Uploading file [data session arg] - - [elsif session arg] - Uploading file to [data session arg] - - [comment] - File to upload -
    - - -
    - [/comment] - [/elsif] - [else] - File to upload -
    - -
    - [/else] - [/if] - -
    -Preview:
    - -
    -Local file
    -
    - -
    -

    -Upload mode -

    - [if session arg =~ /\.(gif|jpe?g|png)$/i] - [or cgi ui_upload_binary] -  ASCII
    -  Binary - [else] -  ASCII
    -  Binary - [/else] - [/if] -
    -

    -Backup mode -

    - [if cgi ui_backup] -  Back up
    -  NO backup - [else] -  Back up
    -  NO backup - [/else] - [/if] -
    -

    -[button text="Upload" src="@_UI_IMG_@admin/upload.gif"] - [calc] - if( $CGI->{ui_upload_fn} =~ m:/$:) { - my $image = $CGI->{ui_upload_file}; - $image =~ s:.*[\\/]::; - $CGI->{ui_upload_fn} .= $image; - $Session->{ui_message} = sprintf ("[L]Uploaded file: %s[/L]", $image); - if($CGI->{ui_preload}) { - my $pre = - $CGI->{ui_preload} =~ /:/ - ? $CGI->{ui_preload} - : "$Values->{mv_data_table}:$CGI->{ui_preload}"; -#Log("preloading $pre=$image"); - $Scratch->{"ui_preload:$pre"} = $image; -#Log(qq{actual preload: Scratch->{"ui_preload:$pre"} = $Scratch->{"ui_preload:$pre"}}); - } - } - - $regex = q{@_UI_CONST_IMAGE_REGEX_@} || '\.(?:gif|jpe?g|png)$'; - if( $CGI->{ui_upload_fn} =~ m{$regex}i) { - $CGI->{ui_upload_umask} = '022'; - } - return; - [/calc] -[/button] -[button text="Cancel" src="@_UI_IMG_@admin/dalete.gif"] - [return-to click] - mv_todo=back -[/button] - - -

    - - - -@_UI_STD_FOOTER_@ - diff --git a/dist/lib/UI/pages/admin/upload_image.html b/dist/lib/UI/pages/admin/upload_image.html deleted file mode 100644 index e33beab6f..000000000 --- a/dist/lib/UI/pages/admin/upload_image.html +++ /dev/null @@ -1,23 +0,0 @@ -[set help_name]upload.main[/set] -[set icon_name]admin/icon_config.gif[/set] -[set ui_class]Items[/set] -[set page_title]Image check Upload[/set] -[set page_perm]pages[/set] -[if cgi ui_start_dir] -[seti dir_mask]images/[cgi ui_start_dir][/seti] -[else] -[set dir_mask]images[/set] -[/else] -[/if] -[set include_mask]jpg gif GIF JPG jpeg JPEG png PNG[/set] -[set exclude_mask][/set] - -@_UI_STD_HEAD_@ - - - -@_UI_STD_FILE_NAV_@ - - - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/upload_other.html b/dist/lib/UI/pages/admin/upload_other.html deleted file mode 100644 index 00c7ef30e..000000000 --- a/dist/lib/UI/pages/admin/upload_other.html +++ /dev/null @@ -1,20 +0,0 @@ -[set help_name]upload.main[/set] -[set icon_name]admin/icon_config.gif[/set] -[set ui_class]Content[/set] -[set page_title]File Upload[/set] -[set page_perm]pages[/set] - -[set dir_mask]*[/set] -[set include_mask][/set] -[set start_open][/set] -[set exclude_mask]gdbm db sql bak[/set] - -@_UI_STD_HEAD_@ - - - -@_UI_STD_FILE_NAV_@ - - - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/upload_pages.html b/dist/lib/UI/pages/admin/upload_pages.html deleted file mode 100644 index ac3a90950..000000000 --- a/dist/lib/UI/pages/admin/upload_pages.html +++ /dev/null @@ -1,20 +0,0 @@ -[set help_name]upload.main[/set] -[set icon_name]admin/icon_config.gif[/set] -[set ui_class]Design[/set] -[set page_title]Upload/Download Pages[/set] -[set page_perm]pages[/set] - -[set dir_mask]pages[/set] -[set include_mask]html[/set] -[set exclude_mask][/set] -[set start_open]pages[/set] - -@_UI_STD_HEAD_@ - - - -@_UI_STD_FILE_NAV_@ - - - -@_UI_STD_FOOTER_@ diff --git a/dist/lib/UI/pages/admin/user_change_pass.html b/dist/lib/UI/pages/admin/user_change_pass.html deleted file mode 100644 index 65b41078b..000000000 --- a/dist/lib/UI/pages/admin/user_change_pass.html +++ /dev/null @@ -1,183 +0,0 @@ -[calc] - $CGI->{no_dbmenu} = 1; - $CGI->{access_menu} = 1; - return [/calc] -[seti page_title]Change password: [cgi user_id][/seti] -[seti page_banner]Change password: [cgi user_id][/seti] -[set ui_class]Admin[/set] -[set page_perm]access=e[/set] -[set help_name]access.main[/set] -[set icon_name]admin/icon_config.gif[/set] -[set no_old_needed][/set] -[if-mm super] - [calc] - $Scratch->{no_old_needed} = 1 - unless $CGI->{user_id} eq $Session->{username}; - return; - [/calc] -[/if-mm] -@_UI_STD_HEAD_@ - -[if session failure] -

    -  -

    -[L]Failure:[/L] [data session failure][data base=session field=failure value=""] -
    -

    -  -[/if] - -[if scratch ui_message] -

    -

    - [scratch ui_message][set ui_message][/set] -
    -

    -  -[/if] - -[if scratch no_old_needed] -[then] -[set no_old_needed][/set] -[loop list="[cgi user_id]"] - -[set check_match] -[calc] - if ($CGI->{password} eq $CGI->{verify}) { - $CGI->{password} = $Tag->filter( 'crypt', $CGI->{password} ); - return 'mv_todo=set'; - } - $Session->{failure} = "Password and verify do not match."; - return "mv_todo=back\nmv_nextpage=@@MV_PAGE@@"; -[/calc] -[/set] - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -User name - - - [loop-code] -
    -New password - - -
    -Verify password - - -
    - -

    - -[set Ok] -[/if-mm] -[/set] -[if-mm advanced access=e] - [set Ok] - mv_todo=set - [/set] - - -[else] - [set Back] - mv_todo=back - [/set] - -[/else] -[/if-mm] - -

    -[/loop] -[/then] -[else] - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -Old password - - -
    -New password - - -
    -Verify password - - -
    - -
    -[/else] -[/if] - -@_UI_STD_FOOTER_@ - - diff --git a/dist/lib/UI/pages/admin/user_edit.html b/dist/lib/UI/pages/admin/user_edit.html deleted file mode 100644 index 4e1ba9d51..000000000 --- a/dist/lib/UI/pages/admin/user_edit.html +++ /dev/null @@ -1,143 +0,0 @@ -[calc] - $CGI->{no_dbmenu} = 1; - $CGI->{access_menu} = 1; - return; -[/calc] -[seti page_title]Administrator Edit: [cgi user_id][/seti] -[set ui_class]Admin[/set] -[seti page_banner]Administrator Edit: [cgi user_id][/seti] -[set page_perm]access=v[/set] -[set help_name]access.main[/set] -[set icon_name]admin/icon_config.gif[/set] -[calc] - $CGI->{mv_data_table} = $Values->{mv_data_table} = '__UI_ACCESS_TABLE__'; - return; -[/calc] -@_UI_STD_HEAD_@ -[if scratch ui_message] -

    -

    - [scratch ui_message][set ui_message][/set] -
    -

    -  -[/if] - -[loop list="[cgi user_id]"] -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -Real name - - -
    -User name - -[if cgi ui_hide_key] - - [loop-code] -[else] - [if-mm !advanced access=c] - [set ui_error]No permission to create user.[/set] - [bounce page="__UI_BASE__/error"] - [/set] - [/if-mm] - - -[/else] -[/if] -
    -Super-user - - -
    -Groups - -[value name=groups set="[loop-data __UI_ACCESS_TABLE__ groups]" filter=space_to_null hide=1] - - -
    - -

    - -[if-mm advanced access=e] - [button text=Ok] - mv_todo=set - [/button] - [button text=Permissions] - mv_todo=back - mv_nextpage=__UI_BASE__/access_permissions - [/button] - -[else] - [button text=Back] - mv_todo=back - [/button] -[/else] -[/if-mm] - - -

    - -[/loop] - -@_UI_STD_FOOTER_@ - - diff --git a/dist/lib/UI/profiles/login b/dist/lib/UI/profiles/login deleted file mode 100644 index e4225a4a5..000000000 --- a/dist/lib/UI/profiles/login +++ /dev/null @@ -1,19 +0,0 @@ -__NAME__ MMLogin -mv_todo=return -[if type=explicit compare="[userdb function=login profile=ui]"] -mv_nextpage=__UI_BASE__/index -[else] -mv_username=[perl]$Session->{ui_username} = $Session->{username} = '';[/perl] -[/else] -[/if] -__END__ - -__NAME__ MMChange -[if type=explicit compare="[userdb function=change_pass profile=ui]"] -mv_nextpage=[either][cgi mv_successpage][or][cgi mv_nextpage][/either] -[else] -mv_username= -mv_nextpage=[either][cgi mv_failpage][or][cgi mv_nextpage][/either] -[/else] -[/if] -__END__ diff --git a/dist/lib/UI/profiles/order_button_build b/dist/lib/UI/profiles/order_button_build deleted file mode 100644 index 19f8942f1..000000000 --- a/dist/lib/UI/profiles/order_button_build +++ /dev/null @@ -1,114 +0,0 @@ -__NAME__ ui_order_button_build -[calc] - $Scratch->{tables_to_open} = join " ", @{$Config->{ProductFiles}}; - return; -[/calc] -[perl tables="[scratch tables_to_open]"] - delete $Scratch->{item_result}; - delete $Scratch->{test_button}; - my $result = < - - Resulting button
    -\n"; - if ($isbutton and $button) { - $Scratch->{test_button} = $button; - $Scratch->{test_button} =~ s/METHOD=/TARGET=item_test METHOD=/; - } - else { - $Scratch->{test_button} = qq{Test order link
     }; - } - $result .= "\n\n"; - $Scratch->{item_result} = $result; -[/perl] -__END__ diff --git a/dist/lib/UI/ui.cfg b/dist/lib/UI/ui.cfg deleted file mode 100644 index 9d9c1ddd5..000000000 --- a/dist/lib/UI/ui.cfg +++ /dev/null @@ -1,96 +0,0 @@ -# Copyright (C) 2000 Akopia Corp. - -# Author: Michael J. Heins, Akopia Corp. - -# This file is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation; either version 2, or (at your option) any -# later version. - -# This file is distributed in the hope that it will be -# useful, but WITHOUT ANY WARRANTY; without even the implied warranty -# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this file; see the file COPYING. If not, write to the Free -# Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. - -Variable UI_IMG /akopia/ui/ -# Set the base for the UI pages -Variable UI_BASE admin - -# localized strings -#ifdef UI_LOCALE_DE -#include lib/UI/locales/de_DE.cfg -#endif - -#ifdef UI_LOCALE_FR -#include lib/UI/locales/fr_FR.cfg -#endif - -#ifdef UI_LOCALE_IT -#include lib/UI/locales/it_IT.cfg -#endif - -#ifdef UI_LOCALE_RU -#include lib/UI/locales/ru_RU.cfg -#endif - - -UserTag UI_initlocale Routine <{Locale_repository} = {} unless $C->{Locale_repository}; - foreach my $key (keys %$Global::Locale_repository) - { - $C->{Locale_repository}{"MM_$key"} = - $Global::Locale_repository->{$key}; - } - } -} -EOR - -AddDirective MM_InitLocale deflocparse default - -# instruct Interchange to use this directory as alternative -# for searching Interchange pages -TemplateDir lib/UI/pages - -## This tag is here to initialize the imports -UserTag reconfigure Routine < {type => 'UPS', description => 'Next Day Air Early AM'}, - '1DML' => {type => 'UPS', description => 'Next Day Air Early AM Letter'}, - '1DA' => {type => 'UPS', description => 'Next Day Air'}, - '1DAL' => {type => 'UPS', description => 'Next Day Air Letter'}, - '1DP' => {type => 'UPS', description => 'Next Day Air Saver'}, - '1DPL' => {type => 'UPS', description => 'Next Day Air Saver Letter'}, - '2DM' => {type => 'UPS', description => '2nd Day Air A.M.'}, - '2DA' => {type => 'UPS', description => '2nd Day Air'}, - '2DML' => {type => 'UPS', description => '2nd Day Air A.M. Letter'}, - '2DAL' => {type => 'UPS', description => '2nd Day Air Letter'}, - '3DS' => {type => 'UPS', description => '3 Day Select'}, - 'GNDCOM' => {type => 'UPS', description => 'Ground Commercial'}, - 'GNDRES' => {type => 'UPS', description => 'Ground Residential'}, - 'XPR' => {type => 'UPS', description => 'Worldwide Express'}, - 'XDM' => {type => 'UPS', description => 'Worldwide Express Plus'}, - 'XPRL' => {type => 'UPS', description => 'Worldwide Express Letter'}, - 'XDML' => {type => 'UPS', description => 'Worldwide Express Plus Letter'}, - 'XPD' => {type => 'UPS', description => 'Worldwide Expedited'}, - ; - } - - if (wantarray) { - return @modes; - } - else { - my $out = ''; - my $i; - for ($i = 0; $i < @modes; $i += 2) { - my $ref = $modes[$i + 1]; - $out .= qq{UPSE:$modes[$i]\t$ref->{type}: $ref->{description}\n}; - } - return $out; - } -} -EOR diff --git a/dist/lib/UI/usertag/backup_database b/dist/lib/UI/usertag/backup_database deleted file mode 100644 index e4b595147..000000000 --- a/dist/lib/UI/usertag/backup_database +++ /dev/null @@ -1,134 +0,0 @@ -UserTag backup-database Order tables -UserTag backup-database AddAttr -UserTag backup-database Routine <{dir} - || $::Variable->{BACKUP_DIRECTORY} - || "$Vend::Cfg->{VendRoot}/backup"; - my $gnum = $opt->{gnumeric}; - my $agg = "$backup_dir/DBDOWNLOAD.all"; - - eval { - require Compress::Zlib; - } if $opt ->{compress}; - - undef $opt->{compress} if $@; - - my $gz; - - my @errors; - - if($gnum) { - open (AGG, ">$agg") - or die "Cannot write aggregate file $agg; $!\n"; - } - my $done = 0; - for my $table (@tables) { - my $unlink; - my $db = Vend::Data::database_exists_ref($table); - my $file = "$backup_dir/" . $db->config('file'); - my $status; - eval { - $status = export( - $table, - { - table => $table, - file => $file, - type => 'TAB', - }, - ); - }; - - if(! $status) { - push @errors, - errmsg( - "Error exporting %s to %s: %s", - $table, - $file, - $@ || 'unspecified', - ); - next; - } - - if($opt->{compress}) { - my $new = "$file.gz"; - my $gz; - eval { - $gz = Compress::Zlib::gzopen($new, "wb") - or die errmsg("error compressing %s to %s: %s", $new, $agg, $!); - open(ZIN, $file) - or die errmsg("error opening %s: %s", $file, $!); - while() { - $gz->gzwrite($_) - or die - errmsg("gzwrite error on %s: %s", $new, $gz->gzerror()); - } - $gz->gzclose(); - close ZIN; - }; - if($@) { - push @errors, $@; - next; - } - $unlink = 1; - } - if($gnum) { - print AGG "\f" if $done; - print AGG "$table\n"; - open(RECENT, $file) - or do { - push @errors, - errmsg("Can't read written file %s: %s", $file, $!); - next; - }; - while() { - /\t/ and s/^/'/ and - ( - s/\t(0\d+)/\t'$1/g, - s/\t\+/\t'+/g, - s/\t( *\d[^\t]*[-A-Za-z ])/\t'$1/g - ); - print AGG; - } - close RECENT; - } - unlink($file) if $unlink; - undef $unlink; - $done++; - } - - close AGG if $opt->{compress}; - - if($opt->{compress} and $gnum and $gnum =~ /^compress/i) { - my $file = $agg; - my $new = "$file.gz"; - eval { - my $gz = Compress::Zlib::gzopen($new, "wb") - or die errmsg("error compressing %s to %s: %s", $new, $agg, $!); - open(ZIN, $file) - or die errmsg("error opening %s: %s", $file, $!); - while() { - $gz->gzwrite($_) - or die - errmsg("gzwrite error on %s: %s", $new, $gz->gzerror()); - } - $gz->gzclose(); - close ZIN; - }; - if($@) { - push @errors, $@; - } - else { - unlink($file); - } - } - if(@errors) { - $::Scratch->{ui_error} = '
    • '; - $::Scratch->{ui_error} .= join "
    • ", @errors; - $::Scratch->{ui_error} .= '
    '; - } - return $done; -} -EOR diff --git a/dist/lib/UI/usertag/backup_file b/dist/lib/UI/usertag/backup_file deleted file mode 100644 index 19327bdd2..000000000 --- a/dist/lib/UI/usertag/backup_file +++ /dev/null @@ -1,36 +0,0 @@ -UserTag backup-file Order file -UserTag backup-file AddAttr -UserTag backup-file Routine < $bu_dir } ) - or die ::errmsg("Cannot make backup of %s: %s", $bu_file, $!); - } -#::logDebug("ready to copy $file to $bu_file"); - File::Copy::copy($file, $bu_file) - or die ::errmsg("Copy %s to %s: %s", $file, $bu_file, $!); - }; - if ($@) { - $::Scratch->{ui_error} = $@; - ::logError($::Scratch->{ui_error}); - return undef; - } - return 1; -} -EOR diff --git a/dist/lib/UI/usertag/base_url b/dist/lib/UI/usertag/base_url deleted file mode 100644 index ffb1b3c05..000000000 --- a/dist/lib/UI/usertag/base_url +++ /dev/null @@ -1 +0,0 @@ -UserTag base-url Routine sub { return $Vend::Cfg->{VendURL} } diff --git a/dist/lib/UI/usertag/button b/dist/lib/UI/usertag/button deleted file mode 100644 index 09fb8c052..000000000 --- a/dist/lib/UI/usertag/button +++ /dev/null @@ -1,182 +0,0 @@ -#ifndef USERTAG_BUTTON -Variable USERTAG_BUTTON 1 -UserTag button Order name src text -UserTag button addAttr -UserTag button attrAlias value text -UserTag button hasEndTag -UserTag button Documentation < -or a JavaScript-linked combination. - -[button text="Delete item" confirm="Are you sure? src="admin/delete.gif"] - [comment] - This is the action, same as [set Delete item] action [/set] - [/comment] - [mvtag] Use any Interchange tag here, i.e. ....[/mvtag] - [perl] # code to delete item [/perl] -[/button] - -Parameters: - - name Name of the variable, by default mv_click. - - src Image source file. If it is a relative image, the existence - of the file is checked for - - text The text of the button, also the name of the scratch action - (VALUE is an alias for TEXT.) - - border, height, width, vspace, hspace, AND - align The image alignment parameters. Border defaults to 0. - - form The name of the form, defaults to document.forms[0] -- be careful! - - confirm The text to use for a JavaScript confirm, if any. - - getsize If true, tries to use Image::Size to add height=Y width=X. - - alt The alt text to be displayed in window.status and balloons. - Defaults to the same as TEXT. - - anchor Set to the anchor text value, defaults to TEXT - - hidetext Set true if you don't want the anchor displayed - - -EOD - -UserTag button Routine <{DOCROOT}; - my $id = $::Variable->{IMAGE_DIR} || $Vend::Cfg->{ImageDir}; - $id =~ s:/+$::; - $id =~ s:/~[^/]+::; - if( $src =~ m{^http:}i ) { - $image = $src; - } - elsif( $dr and $id and $src =~ m{^[^/]} and -f "$dr$id/$src" ) { - $image = $src; - } - elsif( $dr and $src =~ m{^/} and -f "$dr/$src" ) { - $image = "$::Variable->{IMAGE_DIR}/$src"; - } - } - - my $onclick = ''; - while($action =~ s! \[ - ( - j (?:ava)? s (?:cript)? - ) - \] - (.*?) - \[ / \1 \] - !!xgis - ) - { - my $script = $2; - $script =~ s/\s+$//; - $script =~ s/^\s+//; - if($script =~ s/\bonclick\s*=\s*"(.*?)"//is) { - $onclick = $1; - next; - } - push @js, $script; - } - - if(! $name or $name eq 'mv_click') { - $action =~ s/^\s+//; - $action =~ s/\s+$//; - $::Scratch->{$text} = $action; - $name = 'mv_click' if ! $name; - } - - my $out = ''; - my $confirm = ''; - if($opt->{confirm}) { - $confirm = "confirm('$opt->{confirm}')"; - } - - if($onclick) { - $confirm .= ' && ' if $confirm; - $onclick = qq{onClick="$confirm$onclick"}; - } - - # return submit button if not an image - if(! $image) { - $text =~ s/"/"/g; - $name =~ s/"/"/g; - if(! $onclick and $confirm) { - $onclick = qq{ onclick="return $confirm"}; - } - my $out = $opt->{bold} ? "" : ''; - $out .= qq{}; - $out .= "" if $opt->{bold}; - if(@js) { - $out =~ s/ /join "\n", '', @js, ''/e; - } - return $out; - } - - # If we got here the button is an image - $text =~ s/"/"/g; - my $wstatus = $opt->{alt} || $text; - $wstatus =~ s/'/'/g; - $name =~ s/"/"/g; - - my $clickname = $name; - $out .= "
    " if $opt->{bold}; - my $clickvar = $name; - if($image and $name eq 'mv_click') { - $clickvar = $text; - $clickvar =~ s/\W/_/g; - $clickname = "mv_click_$clickvar"; - $out = qq{}; - } - - $out .= qq{} if $image; - - my $formname; - $opt->{form} = 'document.forms[0]' - if ! $opt->{form}; - - $confirm .= ' && ' if $confirm; - $opt->{border} = 0 if ! $opt->{border}; - - if($opt->{getsize}) { - eval { - require Image::Size; - ($opt->{width}, $opt->{height}) = Image::Size::imgsize($image); - }; - } - - $opt->{align} = 'top' if ! $opt->{align}; - - my $position = ''; - for(qw/height width vspace hspace align/) { - $position .= " $_=$opt->{$_}" if $opt->{$_}; - } - - my $anchor = ''; - unless( $opt->{hidetext}) { - $anchor = $opt->{anchor} || $text; - $anchor =~ s/ / /g; - $anchor = "$anchor"; - } - - $out .= <$wstatus{border}$position>$anchor -EOF - - return $out; -} -EOR -#endif diff --git a/dist/lib/UI/usertag/check_upload b/dist/lib/UI/usertag/check_upload deleted file mode 100644 index 7badcd5d0..000000000 --- a/dist/lib/UI/usertag/check_upload +++ /dev/null @@ -1,19 +0,0 @@ - -UserTag check-upload Order file same -UserTag check-upload PosNumber 2 -UserTag check-upload Routine <{ProductDir}; - $same = $same ? '' : '+'; - if (-s "upload/$file") { - File::Copy::copy "upload/$file", "$dir/$file$same" - or return "Couldn't copy uploaded file!"; - unlink "upload/$file"; - } - return ''; -} -EOR - diff --git a/dist/lib/UI/usertag/db_columns b/dist/lib/UI/usertag/db_columns deleted file mode 100644 index 8712e8c93..000000000 --- a/dist/lib/UI/usertag/db_columns +++ /dev/null @@ -1,53 +0,0 @@ -UserTag db_columns Order name columns joiner passed_order -UserTag db_columns AttrAlias table name -UserTag db_columns AttrAlias fields columns -UserTag db_columns Routine <{mv_data_table} - unless $table; - my $db = Vend::Data::database_exists_ref($table) - or return undef; - my $acl = UI::Primitive::get_ui_table_acl($table); - $db = $db->ref() unless $Vend::Interpolate::Db{$table}; - my $key = $db->config('KEY'); - - $joiner = "\n" unless defined $joiner; - - my @cols; - if(! $columns || $columns =~ /^[\s,\0]*$/) { - @cols = $db->columns(); - } - else { - @cols = grep /\S/, split /[\s,\0]+/, $columns; - my (@allcols) = $db->columns(); - - my %col; - if($passed_order) { - @col{@allcols} = @allcols; - @allcols = @cols; - my $found; - for(@cols) { - next unless $_ eq $key; - $found = 1; - last; - } - unshift (@allcols, $key) if ! $found; - } - else { - @col{@cols} = @cols; - } - - $col{$key} = $key if ! defined $col{$key}; - - @cols = grep defined $col{$_}, @cols; - } - - if($acl) { - @cols = UI::Primitive::ui_acl_grep( $acl, 'fields', @cols); - } - - return join $joiner, @cols; -} -EOR - diff --git a/dist/lib/UI/usertag/db_hash b/dist/lib/UI/usertag/db_hash deleted file mode 100644 index 819c670d8..000000000 --- a/dist/lib/UI/usertag/db_hash +++ /dev/null @@ -1,45 +0,0 @@ -UserTag db-hash Order table column key -UserTag db-hash PosNumber 3 -UserTag db-hash addAttr -UserTag db-hash Routine <reval($val); - if (! ref $ref) { - $ref = {}; - } - } - if (! $rest) { - return $val unless $opt->{value}; - } - my @extra; - @extra = split /::/, $rest; - my $final = pop @extra; - my $curr = $ref; - $out .= "Original key request: $rest\n"; - #$out .= ::uneval($ref); - $out .= "\nFinal key: $final\n"; - for(@extra) { - $out .= "key --> $_\n"; - $curr = $curr->{$_}; - return "BAD HASH: $out" if ! ref $curr; - } - if(! defined $opt->{value}) { - return $curr->{$final}; - } - else { - $curr->{$final} = $opt->{value}; - tag_data($table, $col, $key, { value => ::uneval_it($ref) }); - } -} -EOR diff --git a/dist/lib/UI/usertag/dbinfo b/dist/lib/UI/usertag/dbinfo deleted file mode 100644 index 59b5cca35..000000000 --- a/dist/lib/UI/usertag/dbinfo +++ /dev/null @@ -1,93 +0,0 @@ -# Return some info about a database -# Goes in minivend.cfg, not catalog.cfg -# -# THIS REQUIRES 3.12beta4 or higher! -# -# Examples: -# -#
    -# columns:    [dbinfo table=products columns=1 joiner="|"]
    -# file:       [dbinfo table=products attribute=file]
    -# dir:        [dbinfo table=products attribute=dir]
    -# storage:    [dbinfo table=products storage=1]
    -# INDEX:      [dbinfo table=products attrib=INDEX]
    -# CONTINUE:   [dbinfo table=products attrib=CONTINUE]
    -# path to db: [dbinfo db=products attr=dir]/[dbinfo db=products attr=file]
    -# exists category: [dbinfo db=products column_exists=category]
    -# exists nevairbe: [dbinfo db=products column_exists=nevairbe No="Nope."]
    -# exists 00-0011: [dbinfo
    -#                    db=products
    -#                    record_exists="00-0011"
    -#                    YES="Yup."
    -#                    No="Nope."]
    -# exists 00-0000: [dbinfo
    -#                    db=products
    -#                    record_exists="00-0000"
    -#                    YES="Yup."
    -#                    No="Nope."]
    -#
    -# 
    -# -UserTag dbinfo Order table -UserTag dbinfo addAttr -UserTag dbinfo attrAlias base table -UserTag dbinfo attrAlias db table -UserTag dbinfo Routine <{failure} .= shift; - return; - } - - my $db_obj = $Vend::Cfg->{Database}{$table} - || return _die("Table '$table' does not exist\n"); - - # attributes are: (case matters) - # - # CONTINUE - # dir - # EXCEL - # file - # INDEX - # MEMORY - # type - - if($opt->{attribute} or $opt->{attribute} = $opt->{attrib} || $opt->{attr}) { - return $db_obj->{$opt->{attribute}}; - } - - # COLUMN_DEF, NUMERIC, NAME - if($opt->{attribute_ref}) { - return Vend::Util::uneval($db_obj->{$opt->{attribute_ref}}); - } - - my $db = Vend::Data::database_exists_ref($table) - || return _die("Table '$table' does not exist\n"); - $db = $db->ref() unless $Vend::Interpolate::Db{$table}; - - if($opt->{storage}) { - my $string = $db; - $string =~ /.*::(\w+).*/; - return $1; - } - - # doesn't include first column! - return join (($opt->{joiner} || "\n"), $db->columns()) - if($opt->{columns}); - - if($opt->{column_exists}) { - return defined $db->test_column($opt->{column_exists}) - ? ($opt->{yes} || 1) - : ($opt->{'no'} || ''); - } - if($opt->{record_exists}) { - return $db->record_exists($opt->{record_exists}) - ? ($opt->{yes} || 1) - : ($opt->{'no'} || ''); - } - return; -} -EOR - diff --git a/dist/lib/UI/usertag/directive_value b/dist/lib/UI/usertag/directive_value deleted file mode 100644 index ad12a62fd..000000000 --- a/dist/lib/UI/usertag/directive_value +++ /dev/null @@ -1,15 +0,0 @@ - -UserTag directive_value order name unparse -UserTag directive_value PosNumber 2 -UserTag directive_value Routine <{$1}/g; - $parsed =~ s/__([A-Z]\w+?)__/$Vend::Cfg->{Variable}{$1}/g; - } - return ($parsed || $value); -} -EOR - diff --git a/dist/lib/UI/usertag/display b/dist/lib/UI/usertag/display deleted file mode 100644 index b3bb62789..000000000 --- a/dist/lib/UI/usertag/display +++ /dev/null @@ -1,91 +0,0 @@ -UserTag display Order table column key -UserTag display addAttr 1 -UserTag display Interpolate 1 -UserTag display posNumber 3 -UserTag display Routine <{mv_data_table} unless $table; - my $db = Vend::Data::database_exists_ref($table); - return "NON-EXISTENT DATABASE '$table' for display" unless defined $db; - $db = $db->ref() unless $Vend::Interpolate::Db{$table}; - my $text; - my $size; - my $widget; - my $label; - my $help; - my $help_url; - - my $template = $opt->{template}; - if($template and $template !~ /\s/) { - $template = <<'EOF'; - - - $LABEL$ - - -
    $WIDGET$$HELP${HELPURL}
    help{/HELPURL}
    - - -EOF - $opt->{template} = 1; - } - -#::logDebug("meta call: table=$table col=$column key=$key text=$text"); - eval { - $text = $db->field($key,$column); - }; - $text = $opt->{default} || $CGI::values{$column} if ! $text; -#::logDebug("data call failed: $@") if $@; - - if(! $CGI::values{ui_no_meta_display}) { -#::logDebug("meta call: table=$table col=$column key='$key' text=$text"); - ($widget, $label, $help, $help_url) = UI::Primitive::meta_display($table,$column,$key,$text,undef,undef,$opt); -#::logDebug("past meta_display, help=$help url=$help_url label=$label"); - $widget =~ s/<(input|select)\s+/<$1 $opt->{js} /i - if $opt->{js}; - } - - if(! $widget) { - my $iname = $opt->{name} || $column; - my $DECODE_CHARS = qq{[<"\000-\037\177-\377}; - - # Count lines for textarea - my $count; - $count = $text =~ s/(\r\n|\r|\n)/$1/g; - - HTML::Entities::encode($text, '&'); - HTML::Entities::encode($text, $DECODE_CHARS); - if ($count) { - $count++; - $count = 20 if $count > 20; - $widget = <$text -EOF - } - elsif ($text =~ /^\d+$/) { - $size = 8; - } - else { - $size = 60; - } - $widget = < -EOF - } - return $widget unless $template; - $label = $column if ! $label; - my %sub = ( - WIDGET => $widget, - HELP => $help, - HELP_URL => $help_url, - LABEL => $label, - ); - # Strip the {TAG} {/TAG} pairs if nothing there - $template =~ s#{(\w+)}(.*?){/\1}#$sub{$1} ? $2: '' #ges; - # Insert the TAG - $template =~ s/\$([A-Z_]+)\$/$sub{$1}/g; - return $template; -} -EOR - diff --git a/dist/lib/UI/usertag/dump_session b/dist/lib/UI/usertag/dump_session deleted file mode 100644 index ac1b80397..000000000 --- a/dist/lib/UI/usertag/dump_session +++ /dev/null @@ -1,36 +0,0 @@ -UserTag dump_session Order name -UserTag dump_session AddAttr -UserTag dump_session Routine <{joiner} || ' '; - return "Cannot dump or find sessions with session type $Vend::Cfg->{SessionType}." - if $Vend::Cfg->{SessionType} ne 'File'; - if($opt->{find}) { - require File::Find; - my $expire = $Vend::Cfg->{SessionExpire}; - if( int($::Variable->{ACTIVE_SESSION_MINUTES}) ) { - $expire = $::Variable->{ACTIVE_SESSION_MINUTES} * 60; - } - my $now = time(); - $expire = $now - $expire; - my @files; - my $wanted = sub { - return unless -f $_; - return if (stat(_))[9] < $expire; - return if /\.lock$/; - push @files, $_; - }; - File::Find::find($wanted, $Vend::Cfg->{SessionDatabase}); - return join $joiner, @files; - } - elsif (! $name) { - return "dump-session: Nothing to do."; - } - else { - my $fn = Vend::Util::get_filename($name, 2, 1, $Vend::Cfg->{SessionDatabase}); - return '' unless -f $fn; - return ::uneval(Vend::Util::eval_file($fn)); - } -} -EOR diff --git a/dist/lib/UI/usertag/e b/dist/lib/UI/usertag/e deleted file mode 100644 index 964daf80d..000000000 --- a/dist/lib/UI/usertag/e +++ /dev/null @@ -1,8 +0,0 @@ -UserTag e HasEndTag -UserTag e Routine <{ui_export_database} - or return undef; - if($opt->{delete} and ! $opt->{verify}) { - ::logError("attempt to delete field without verify, abort"); - return undef; - } - - if(!$file and $type) { - #::logError("exporting as default type, no file specified"); - undef $type; - } - - $Vend::WriteDatabase{$table} = 1; - - if(! $opt->{field}) { - #::logError("exporting:\ntable=$table\nfile=$file\ntype=$type\nsort=$opt->{sort}"); - } - elsif($opt->{field} and $opt->{delete}) { - ::logError("delete field:\ntable=$table\nfield=$opt->{field}\nsort=$opt->{sort}\n"); - } - elsif($opt->{field}) { - ::logError("add field:\ntable=$table\nfield=$opt->{field}\nsort=$opt->{sort}\n"); - } - return Vend::Data::export_database( - $table, - $file, - $type, - $opt, - ); -} -EOR - diff --git a/dist/lib/UI/usertag/field_label b/dist/lib/UI/usertag/field_label deleted file mode 100644 index 8db9fa61a..000000000 --- a/dist/lib/UI/usertag/field_label +++ /dev/null @@ -1,37 +0,0 @@ -UserTag field_label Order table column meta -UserTag field_label PosNumber 3 -UserTag field_label attrAlias db table -UserTag field_label attrAlias field column -UserTag field_label addAttr -UserTag field_label Routine <{UI_META_TABLE} || 'mv_metadata' if ! $meta; - my $keyloc = $table . "::$column"; - if( - $opt and $opt->{key} - and ::tag_data($meta, 'type', $keyloc . "::$opt->{key}") - ) - { - $keyloc .= "::$opt->{key}"; - } - else { - return "$column" if ! ::tag_data($meta, 'type', $keyloc); - } - return '' if ::tag_data($meta, 'type', $keyloc) eq 'hidden'; - my $label; - $label = Vend::Interpolate::tag_data($meta, 'label', $keyloc) || $column; - my $out; - my $help = Vend::Interpolate::tag_data($meta, 'help', $keyloc); - my $url = Vend::Interpolate::tag_data($meta, 'help_url', $keyloc); - $out = "$label"; - $out .= qq{
    $help} if $help; - if ($url) { - $out .= qq{
    }; - $out .= ::errmsg('more help'); - $out .= q{}; - } - return $out; -} -EOR - diff --git a/dist/lib/UI/usertag/file_info b/dist/lib/UI/usertag/file_info deleted file mode 100644 index 026e5dcc0..000000000 --- a/dist/lib/UI/usertag/file_info +++ /dev/null @@ -1,55 +0,0 @@ -UserTag file-info Order name -UserTag file-info attrAlias file name -UserTag file-info addAttr -UserTag file-info Routine <{server}) { - $fn = "$Global::VendRoot/$fn" - } - elsif($opt->{conf}) { - $fn = "$Global::ConfDir/$fn" - } - my @stat = stat($fn); - my %info; - my @ary; - my $size = $stat[7] < 1024 - ? $stat[7] - : ( $stat[7] < 1024 * 1024 - ? sprintf ("%.2fK", $stat[7] / 1024) - : sprintf ("%.2fM", $stat[7] / 1024 / 1024) - ); - if($opt->{flags}) { - $opt->{flags} =~ s/\W//g; - my @flags = split //, $opt->{flags}; - for(@flags) { - s/(.)/"-$1 _"/ee; - } - return join "\t", @flags; - } - if($opt->{size}) { - return $stat[7]; - } - if($opt->{time}) { - return $stat[9]; - } - if($opt->{date}) { - if($opt->{gmt}) { - return POSIX::strftime('%c', gmtime($stat[9])); - } - else { - return POSIX::strftime('%c', localtime($stat[9])); - } - } - $opt->{fmt} = '%f bytes, last modified %Y-%m-%d %H:%M:%S' - if ! $opt->{fmt}; - $opt->{fmt} =~ s/%f/$size/g; - if($opt->{gmt}) { - return POSIX::strftime($opt->{fmt}, gmtime($stat[9])); - } - else { - return POSIX::strftime($opt->{fmt}, localtime($stat[9])); - } -} -EOR - diff --git a/dist/lib/UI/usertag/file_navigator b/dist/lib/UI/usertag/file_navigator deleted file mode 100644 index 79b8c379f..000000000 --- a/dist/lib/UI/usertag/file_navigator +++ /dev/null @@ -1,182 +0,0 @@ -UserTag file-navigator Order mask -UserTag file-navigator addAttr -UserTag file-navigator Routine <{$dn} ? 'folder.open.gif' : 'folder.gif'; - my $out = sprintf($dtmpl, $space, $dn, $img, $dn); - return $out unless $expand->{$dn}; - for(@$ary) { - $count++; - $out .= fn_expand_tree($_); - $count--; - } - return $out . '
    '; -} - -sub { - my ($dir_mask, $opt) = @_; - -#::logDebug("file-nav dir_mask: $dir_mask opt: " . ::uneval($opt)); - $dir_mask = $Vend::Cfg->{Variable}{UI_ALL_FILES} - || 'catalog.cfg error.log etc pages products' - if ! $dir_mask; - my @files; - if($dir_mask eq '*') { -#::logDebug("globbing all"); - @files = grep $_ ne 'CVS', glob('*'); -#::logDebug("files are @files"); - } - else { -#::logDebug("files are $dir_mask"); - @files = split /\s+/, $dir_mask; - } - - my $ec = $Scratch->{exp_count}++; - - if($opt->{include_mask}) { - my @list = split /\s+/, $opt->{include_mask}; - @include{@list} = @list; - $in_mask = 1; - } - - if($opt->{exclude_mask}) { - my @list = split /\s+/, $opt->{exclude_mask}; - @exclude{@list} = @list; - $exclude{""} = 1; - $ex_mask = 1; - } - - my $base_url - = $Vend::Cfg->{VendURL} - . '/' - . ( $Vend::Cfg->{Variable}{UI_BASE} || 'admin'); - my $this_page = $Global::Variable->{MV_PAGE}; - my $this = Vend::Interpolate::tag_area($this_page); - if($this =~ /\?(.+)/) { - $this .= '&'; - } - else { - $this .= '?'; - } - - my %dir = ( '' => [] ); - my @dir; - - if(! $Vend::Session->{ui_pg_exp}) { - my %open; - if($opt->{start_open}) { - my @open = split /\s+/, $opt->{start_open}; -#::logDebug("found start_open, open=@open"); - for(@open) { - $open{$_} = 1; - } - } - else { -#::logDebug("no start_open, opts=" . ::uneval($opt)); - } - $Vend::Session->{ui_pg_exp} = { %open }; - } - $expand = $Vend::Session->{ui_pg_exp}; - - if($Vend::Session->{arg}) { -#::logDebug("expanding $Vend::Session->{arg}"); - $expand->{$Vend::Session->{arg}} = ! $expand->{$Vend::Session->{arg}}; - } - - my $imgpath = $::Variable->{UI_IMG} || $Global::Variable->{UI_IMG} || ''; - $imgpath .= "admin"; - - my $up_img = qq{upload ~FN~}; - my $dn_img = qq{download ~FN~}; - my $vw_img = qq{view ~FN~}; - my $ed_img = qq{edit ~FN~}; - my $dir_img = qq{toggle ~FN~}; - $ftmpl = <
    $vw_img$dn_img $up_img %s
    -EOF - - if($opt->{edit_only}) { - $ftmpl_ed = <$ed_img %s
    -EOF - } - else { - $ftmpl_ed = <$vw_img $dn_img $up_img $ed_img %s
    -EOF - } - - $dtmpl = <%s
    -EOF - - my @out; - my $out; - - for(@files) { - push @out, fn_ref_tree($_); - } - - for (@out) { - next unless $_; - $count = 0; - $out .= fn_expand_tree($_); - } - - return $out; -} -EOR diff --git a/dist/lib/UI/usertag/global_value b/dist/lib/UI/usertag/global_value deleted file mode 100644 index d8ecc1d28..000000000 --- a/dist/lib/UI/usertag/global_value +++ /dev/null @@ -1,9 +0,0 @@ -UserTag global-value Order name -UserTag global-value Routine <{table} || $::Values->{mv_data_table}; - my $acl = UI::Primitive::get_ui_table_acl($table); - return $text unless $acl; - my @items = grep /\S/, Text::ParseWords::shellwords($text); - return join "\n", UI::Primitive::ui_acl_grep($acl, $func, @items); -} -EOR - diff --git a/dist/lib/UI/usertag/if_key_exists b/dist/lib/UI/usertag/if_key_exists deleted file mode 100644 index c81e48c8f..000000000 --- a/dist/lib/UI/usertag/if_key_exists +++ /dev/null @@ -1,19 +0,0 @@ -UserTag if-key-exists Routine <ref() unless $Vend::Interpolate::Db{$table}; - my $status; - eval { - $status = $db->record_exists($key); - }; - return $else if $@; - return $else unless $status; - return $text; -} -EOR -UserTag if-key-exists Order table key -UserTag if-key-exists hasEndTag - diff --git a/dist/lib/UI/usertag/if_mm b/dist/lib/UI/usertag/if_mm deleted file mode 100644 index af09e4cdb..000000000 --- a/dist/lib/UI/usertag/if_mm +++ /dev/null @@ -1,171 +0,0 @@ - -UserTag if-mm Order function name -UserTag if-mm addAttr -UserTag if-mm attrAlias key name -UserTag if-mm hasEndTag -UserTag if-mm Routine <{super}; - $func = lc $func; - ($status = 1, last CHECKIT) if $func eq 'logged_in'; - - my %acl_func = qw/ - fields fields - field fields - columns fields - column fields - col fields - row keys - rows keys - key keys - keys keys - owner_field owner_field - owner owner_field - /; - - my %file_func = qw/ - page pages - file files - pages pages - files files - /; - - my %bool_func = qw/ - config 1 - reconfig 1 - /; - - my %paranoid = qw/ - mml 1 - sql 1 - report 1 - add_delete 1 - add_field 1 - journal_update 1 - /; - my %yesno_func = qw/ - functions functions - advanced functions - tables tables - table tables - /; - - my $table = $CGI::values{mv_data_table} || $::Values->{mv_data_table}; - - if($yesno_func{$func} eq 'tables') { - $opt->{table} = $field if ! $opt->{table}; - $opt->{table} =~ s/^=/$table/; - } - elsif($yesno_func{$func} eq 'functions') { - $opt->{table} = $field; - } - - $table = $opt->{table} || $table; - - my $acl; - my $check; - $status = 0, last CHECKIT if $func eq 'super'; - if($check = $file_func{$func}) { - $status = 1, last CHECKIT unless $record->{$check}; - my $file = $field || $Global::Variable->{MV_PAGE}; - my @files = UI::Primitive::list_glob($record->{$check}, $opt->{prefix}); -#::logDebug("if-mm file/page: file=$file set=@files"); - if(! @files) { - $status = ''; - last CHECKIT; - } - $status = ui_check_acl("$file$extended", join(" ", @files)); - last CHECKIT; - } - if($bool_func{$func} ) { - $status = $record->{$func}; - last CHECKIT; - } - if($check = $yesno_func{$func} ) { -#::logDebug("if-mm yesno check: table=$table func=$func"); - my $v; - if($v = $record->{"yes_$check"}) { - $status = ui_check_acl("$table$extended", $v); -#::logDebug("yes check: status=$status"); - } - else { -#::logDebug("yes check defaulted to 1"); - $status = 1; - } - if($v = $record->{"no_$check"}) { - $status &&= ! ui_check_acl("$table$extended", $v); -#::logDebug("no check: status=$status"); - } - last CHECKIT; - } - if(! ($check = $acl_func{$func}) ) { -#::logDebug("if-mm straight check: table=$table func=$func"); - my $default = $func =~ /^no_/ ? 0 : 1; - $status = $default, last CHECKIT unless $record->{$func}; - $status = ui_check_acl("$table$extended", $record->{$func}); -#::logDebug("if-mm straight check: table=$table func=$func status=$status reverse=$reverse"); - last CHECKIT; - } - - # Now it is definitely a job for table_control; - $acl = UI::Primitive::get_ui_table_acl($table); -#::logDebug("if-mm ACL check: table=$table func=$func check=$check status=$status reverse=$reverse"); -#::logDebug("if-mm ACL check: ofield=$acl->{owner_field}"); -#::logDebug("if-mm acl=" . Vend::Util::uneval_it($acl)); - - $status = 1, last CHECKIT unless $acl; - my $val; - if($acl->{owner_field} and $check eq 'keys') { -#::logDebug("if-mm ACL check owner_field: table=$table field=$field check=$check ofield=$acl->{owner_field}"); - $status = ::tag_data($table, $acl->{owner_field}, $field) - eq $Vend::username; - last CHECKIT; - } - elsif ($check eq 'owner_field') { - $status = length $acl->{owner_field}; - last CHECKIT; - } - $status = UI::Primitive::ui_acl_atom($acl, $check, $field); - } -#::logDebug("if-mm prior to group: func=$func field=$field status=$status reverse=$reverse") if ! $group; - if(! $status and $record and (@groups or $record->{groups}) ) { - goto CHECKIT if $group = shift @groups; - (@groups) = grep /\S/, split /\0,\s]+/, delete $record->{groups}; - ($group, @groups) = map { s/^/:/; $_ } @groups; - goto CHECKIT; - } -#::logDebug("if-mm: func=$func field=$field status=$status reverse=$reverse"); - return $status - ? ( - Vend::Interpolate::pull_if($text, $reverse) - ) - : Vend::Interpolate::pull_else($text, $reverse); -} -EOR - diff --git a/dist/lib/UI/usertag/if_sql b/dist/lib/UI/usertag/if_sql deleted file mode 100644 index d37cf8dd8..000000000 --- a/dist/lib/UI/usertag/if_sql +++ /dev/null @@ -1,13 +0,0 @@ -UserTag if-sql Routine <{Database}{$table} || return $else; - return $else unless $db->{'type'} eq '8'; - return $text; -} -EOR -UserTag if-sql Order table -UserTag if-sql hasEndTag - diff --git a/dist/lib/UI/usertag/ifdef b/dist/lib/UI/usertag/ifdef deleted file mode 100644 index 8e9e862b4..000000000 --- a/dist/lib/UI/usertag/ifdef +++ /dev/null @@ -1,8 +0,0 @@ -UserTag ifdef hasEndTag 1 -UserTag ifdef Interpolate 1 -UserTag ifdef routine <Fatal Administration Error -

    FATAL error

    -
    $msg
    - -EOF - exit 0; - }; - my $file = $opt->{'file'} || $Vend::Cfg->{ProductDir} . "/$table.update"; - my $db = Vend::Data::database_exists_ref($table); - die "Non-existent table '$table'\n" unless $db; - $db = $db->ref() unless $Vend::Interpolate::Db{$table}; - my $out = '
    ';
    -	my $delimiter = quotemeta $opt->{delimiter} || "\t";
    -	open(UPDATE, $file)
    -		or die "read $file: $!\n";
    -	my $fields;
    -	if($opt->{'fields'}) {
    -		$fields = $opt->{'fields'};
    -		$out .= "Using fields from parameter: '$fields'\n";
    -	}
    -	else {
    -		$fields = ;
    -		chomp $fields;
    -		$fields =~ s/$delimiter/ /g;
    -		$out .= "Using fields from file: '$fields'\n";
    -	}
    -	die "No field names." if ! $fields;
    -	my @names;
    -	my $k;
    -	my @f;
    -	@names = split /\s+/, $fields;
    -	shift @names;
    -	my @set;
    -	my $i = 0;
    -	my $idx = 0;
    -	for(@names) {
    -		$db->column_index($_);
    -		$set[$idx++] = $db->field_settor($_);
    -	}
    -	my $count = 0;
    -	while() {
    -		chomp;
    -		($k, @f) = split /$delimiter/o, $_;
    -		if(! $k and ! length($k)) {
    -			next if ! $opt->{delete};
    -			next if $f[1] ne 'DELETE';
    -			$db->delete_record($f[2]);
    -		}
    -		$out .= "Record '$k' had too many fields, ignored.\n"
    -			if @f > $idx;
    -		if ( ! $db->record_exists($k)) {
    -			if ($opt->{add}) {
    -				$out .= "Adding record '$k'.\n";
    -				$db->set_row($k);
    -			}
    -			else {
    -				$out .= "Non-existent record '$k', skipping.\n";
    -				next;
    -			}
    -		}
    -		for ($i = 0; $i < $idx; $i++) {
    -			$set[$i]->($k, $f[$i]);
    -		}
    -		$count++;
    -	}
    -	$out .= "$count records updated.
    "; - close UPDATE; - if($opt->{'move'}) { - my $ext = POSIX::strftime("%Y%m%d%H%M%S", localtime()); - rename $file, "$file.$ext" - or die "rename $file --> $file.$ext: $!\n"; - if( $opt->{dir} - and (-d $opt->{dir} or File::Path::mkpath($opt->{dir})) - and -w $opt->{dir} - ) - { - File::Copy::move("$file.$ext", $opt->{dir}) - or die "move $file.$ext --> $opt->{dir}: $!\n"; - } - } - return $out; -} -EOR - diff --git a/dist/lib/UI/usertag/list_databases b/dist/lib/UI/usertag/list_databases deleted file mode 100644 index dedb31853..000000000 --- a/dist/lib/UI/usertag/list_databases +++ /dev/null @@ -1,35 +0,0 @@ - -UserTag list-databases Order nohide extended -UserTag list-databases routine <{Database}; - @dbs = sort keys %$d; - my @outdb; - my $record = ui_acl_enabled(); - undef $record - unless ref($record) - and $record->{yes_tables} || $record->{no_tables}; - - for(@dbs) { - next if $::Values->{ui_tables_to_hide} =~ /\b$_\b/; - if($record) { - next if $record->{no_tables} - and ui_check_acl($_, $record->{no_tables}); - my $check = "$_$extended"; - next if $record->{yes_tables} - and ! ui_check_acl($check, $record->{yes_tables}); - } - push @outdb, $_; - } - - @dbs = $nohide ? (@dbs) : (@outdb); - - my $string = join " ", grep /\S/, @dbs; - return $string; -} -EOR - diff --git a/dist/lib/UI/usertag/list_glob b/dist/lib/UI/usertag/list_glob deleted file mode 100644 index 987be3895..000000000 --- a/dist/lib/UI/usertag/list_glob +++ /dev/null @@ -1,9 +0,0 @@ -UserTag list_glob Order spec prefix -UserTag list_glob PosNumber 2 -UserTag list_glob Routine <{mv_data_table} - unless $table; -#::logDebug("list-keys $table"); - my @keys; - my $record; - if(! ($record = $Vend::UI_entry) ) { - $record = ui_acl_enabled(); - } - - my $acl; - my $keys; - if($record) { -#::logDebug("list_keys: record=$record"); - $acl = get_ui_table_acl($table); -#::logDebug("list_keys table=$table: acl=$acl"); - if($acl and $acl->{yes_keys}) { -#::logDebug("list_keys table=$table: yes.keys enabled"); - @keys = grep /\S/, split /\s+/, $acl->{yes_keys}; - } - } - unless (@keys) { - my $db = Vend::Data::database_exists_ref($table); - return '' unless $db; - $db = $db->ref() unless $Vend::Interpolate::Db{$table}; - my $keyname = $db->config('KEY'); - if($db->config('LARGE')) { - return ::errmsg('--not listed, too large--'); - } - my $query = "select $keyname from $table order by $keyname"; -#::logDebug("list_keys: query=$query"); - $keys = $db->query( - { - query => $query, - ml => $::Variable->{UI_ACCESS_KEY_LIMIT} || 500, - st => 'db', - } - ); - if(defined $keys) { - @keys = map {$_->[0]} @$keys; - } - else { - my $k; - while (($k) = $db->each_record()) { - push(@keys, $k); - } - if( $db->numeric($db->config('KEY')) ) { - @keys = sort { $a <=> $b } @keys; - } - else { - @keys = sort @keys; - } - } -#::logDebug("list_keys: query=returned " . ::uneval(\@keys)); - } - if($acl) { -#::logDebug("list_keys acl: ". ::uneval($acl)); - @keys = UI::Primitive::ui_acl_grep( $acl, 'keys', @keys); - } - return join("\n", @keys); -} -EOR - diff --git a/dist/lib/UI/usertag/list_pages b/dist/lib/UI/usertag/list_pages deleted file mode 100644 index 6b06cbcdb..000000000 --- a/dist/lib/UI/usertag/list_pages +++ /dev/null @@ -1,15 +0,0 @@ - -UserTag list_pages order options ext keep base -UserTag list_pages PosNumber 4 -UserTag list_pages Routine < ", UI::Primitive::list_pages($keep,$ext,$base)); - } else { - $out = join " ", UI::Primitive::list_pages($keep,$ext, $base); - } -} -EOR - diff --git a/dist/lib/UI/usertag/mm_value b/dist/lib/UI/usertag/mm_value deleted file mode 100644 index 506303ddd..000000000 --- a/dist/lib/UI/usertag/mm_value +++ /dev/null @@ -1,46 +0,0 @@ -UserTag mm-value Order field table -UserTag mm-value addAttr -UserTag mm-value Routine <{user}; - unless ($record = $Vend::UI_entry) { - return '' unless ref($record = ui_acl_enabled()); - } -#::logDebug("mm-value record: " . ::uneval($record)); - $table = $opt->{table} || $::Scratch->{ui_data_table}; - - if($field eq 'user') { - return $Vend::Session->{ui_username} || $Vend::Session->{username} || $CGI::user; - } - - my %hash_field = qw/ - acl_keys 1 - no_fields 1 - yes_fields 1 - no_keys 1 - yes_keys 1 - owner_field 1 - /; - - my $acl; - my $check; - if($check = $hash_field{$field}) { - if ($field eq 'acl_keys') { - return join "\n", get_ui_table_acl($table, $uid, 1); - } - else { - $acl = get_ui_table_acl($table, $uid); - return $acl->{$field}; - } - } - else { - return $record->{$field}; - } -} -EOR - diff --git a/dist/lib/UI/usertag/newer b/dist/lib/UI/usertag/newer deleted file mode 100644 index d40606584..000000000 --- a/dist/lib/UI/usertag/newer +++ /dev/null @@ -1,30 +0,0 @@ -UserTag newer Order source target -UserTag newer Routine <{Database}{$source}{'file'} - or return undef; - $file1 = $Vend::Cfg->{ProductDir} . '/' . $file1 - unless $file1 =~ m:/:; - $file2 = $Vend::Cfg->{ProductDir} . '/' . $file2 - unless $file2 =~ m:/:; - } - my $time1 = (stat($file1))[9] - or return undef; - my $time2 = (stat($file2))[9]; - return 1 if $time1 > $time2; - return 0; -} -EOR - diff --git a/dist/lib/UI/usertag/quick_table b/dist/lib/UI/usertag/quick_table deleted file mode 100644 index d37d6ce7b..000000000 --- a/dist/lib/UI/usertag/quick_table +++ /dev/null @@ -1,25 +0,0 @@ -UserTag quick_table HasEndTag -UserTag quick_table Interpolate -UserTag quick_table Order border -UserTag quick_table Routine <; - $out = ; - $out .= ; - close F; - return $out; -} -EOR - diff --git a/dist/lib/UI/usertag/read_shipping b/dist/lib/UI/usertag/read_shipping deleted file mode 100644 index 940ddd4b9..000000000 --- a/dist/lib/UI/usertag/read_shipping +++ /dev/null @@ -1,20 +0,0 @@ -UserTag read-shipping Order file -UserTag read-shipping PosNumber 1 -UserTag read-shipping addAttr -UserTag read-shipping Routine <{Shipping_line}[0]->[0] eq 'code' - and - $Vend::Cfg->{Shipping_line}[0]->[1] eq 'description' - ) - { - shift (@{ $Vend::Cfg->{Shipping_line} }); - delete $Vend::Cfg->{Shipping_desc}{code}; - } - return $status; -} -EOR - diff --git a/dist/lib/UI/usertag/read_ui_template b/dist/lib/UI/usertag/read_ui_template deleted file mode 100644 index e7d886f59..000000000 --- a/dist/lib/UI/usertag/read_ui_template +++ /dev/null @@ -1,113 +0,0 @@ -UserTag read-ui-template Order file -UserTag read-ui-template addAttr -UserTag read-ui-template Documentation <read_ui_template('templates/*'); - -$ref will be like: - - { - standard => { - ui_template_description => 'Standard ....', - ui_template_elements => 'LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT ....', - - }, - standalone => { - ui_template_description => 'Standalone no left side ....', - ui_template_elements => 'LOGOBAR, MENUBAR, UI_CONTENT, ....', - - }, - -EOD - -UserTag read-ui-template Routine <{ui_definition} = join "\n", @lines; - my $current; - for(@lines) { - if(/^ui_/) { - my ($el, $el_item, $el_data) = split /\s*:\s*/, $_; - #Log ("found el=$el el_item=$el_item el_data=$el_data"); - if(defined $el_data) { - $ref->{$el} = { } if ! ref($ref->{$el}); - $ref->{$el}{$el_item} = $el_data; - } - else { - $ref->{$el} = $el_item; - } - } - elsif ( /^(\w+)\s*:\s*(.*)$/) { - $current = $1; - $ref->{ui_control_element}{$current} = $2; - $ref->{ui_display_order} = [] if ! $ref->{ui_display_order}; - push @{$ref->{ui_display_order}}, $current; - } - elsif( /^\s+(\w+)\s*:\s*(.*)/ ) { - my ($fn, $fv) = ( lc($1), $2 ); - $ref->{"ui_control_$fn"}{$current} = $fv; - } - } - if($opt->{structure}) { - $out{$fn} = $ref; - } - elsif($opt->{element}) { - push @out, $ref->{$opt->{element}}; - } - else { - push @out, $ref; - } - } - - if(wantarray) { - return \%out if $opt->{structure}; - return \@out; - } - elsif($opt->{structure}) { - return ::uneval(\%out); - } - else { - return join "\n", @out; - } - -} -EOR diff --git a/dist/lib/UI/usertag/regenerate b/dist/lib/UI/usertag/regenerate deleted file mode 100644 index ce1760715..000000000 --- a/dist/lib/UI/usertag/regenerate +++ /dev/null @@ -1,322 +0,0 @@ -UserTag regenerate Order initial -UserTag regenerate PosNumber 1 -UserTag regenerate Routine <[1]) { - $initial = $ref->[1][0]; - $regen_arg = $ref->[1][1]; - $regen_out = $ref->[0]; - } - else { - $initial = $ref->[0]; - $regen_out = $ref->[0]; - } - - my ($action, $path) = split m:/:, $initial, 2; - return undef if $regen_reject{$action}; - - $Vend::Session = { - 'ohost' => 'REGENERA', - 'browser' => "Interchange $::VERSION regenrator", - 'scratch' => { %{$Vend::Cfg->{ScratchDefault}}, - mv_no_session_id => 1, - mv_no_count => 1, - }, - 'values' => { %{$Vend::Cfg->{ValuesDefault}} }, - 'carts' => {main => []}, - }; - $CGI::values = (); - ($Vend::Session->{arg} = $Vend::Argument = $CGI::values{mv_arg} = $regen_arg) - if $regen_arg; - - if($action eq 'scan') { - $regen_scan = 1; - my $c = {}; - ::find_search_params($c, $path); - $c->{mv_more_id} = 'static'; - $Vend::SearchObject{''} = perform_search($c); - $initial = $Vend::SearchObject{''}->{mv_search_page} - || find_special_page('search'); - } - - my $actual; - - $page = readin($initial); - if(! defined $page) { - $page = Vend::Interpolate::fly_page($initial); - $actual = $Global::Variable->{MV_PAGE}; - } - - $actual = $initial unless $actual; - -#::logDebug("checking for force of: $actual"); - if (defined $never_build{$actual}) { - undef $Vend::ForceBuild; - undef $Vend::CachePage; - } - elsif (defined $force_build{$actual}) { - $Vend::ForceBuild = 1; - } - - return unless defined $page; - - my $pageref; - eval { - ($pageref) = ::cache_html($page, 1); - }; -#::logDebug(<[0]: $@"; - undef $Vend::CachePage; - undef $Vend::ForceBuild; - } - return $pageref; -} - -sub { - $initial = shift || $CGI::values{ui_initial_page} || $Vend::Cfg->{SpecialPage}{catalog}; - my $verbose = $CGI::values{ui_build_verbose} || ''; - my $max_links = $CGI::values{ui_build_max} || '500'; - my $links_done = 0; - if($CGI::values{ui_force_build}) { - my @tmp = split /\0/, $CGI::values{ui_force_build}; -#::logDebug("force build of: @tmp"); - @force_build{@tmp} = (@tmp); - } - if($CGI::values{ui_never_build}) { - my @tmp = split /\0/, $CGI::values{ui_never_build}; -#::logDebug("never build of: @tmp"); - @force_build{@tmp} = (@tmp); - } - my $save_session = $Vend::Session; - my $save_status = $Vend::StatusLine; - my %save_cgi = %CGI::values; - my %done; - my $start = (times)[0]; - require File::Path; - - $regen_reject{$Vend::Cfg->{UI_BASE}} = 1; - for (keys %{$Vend::Cfg->{ActionMap}}) { - $regen_reject{$_} = 1; - } - - my $spacer = $::Scratch->{spacer} || '    '; - my $output = <{UI_STD_HEAD} -Entry page $initial. - -

    - - - - - - -
  • -EOF - ::response(::interpolate_html ($output)); - ::response(" " x 1024); - ::response("
            Checking for links.....\n");
    -
    -	my $suffix = $Vend::Cfg->{StaticSuffix} || '.html';
    -	$output = '';
    -	$Vend::Cookie = 'REGENERA';
    -	$Vend::AccumulatingLinks = 1;
    -	untie %Vend::StaticDBM;
    -	$Vend::Cfg->{Static} = 1;
    -	my @links = ( [ $initial, '' ] );;
    -	my %found;
    -	%Vend::Links = ();
    -	%Vend::LinkFound = ();
    -#::logDebug( "default search=$::Variable->{MV_DEFAULT_SEARCH_FILE}");
    -	my ($page);
    -	while(@links) {
    -		if($links_done++ > $max_links) {
    -			::response("Reached maximum link count of $max_links, stopping.\n");
    -			last;
    -		}
    -		$output .= '.';
    -		my $ref = shift @links;
    -		next if exists $done{$ref->[0]};
    -		@Vend::Links = ();
    -		%Vend::LinkFound = (%found);
    -		undef $Vend::Argument;
    -
    -		undef $Vend::CachePage;
    -		undef $Vend::ForceBuild;
    -		$verbose and ::response(qq{            Checking page $ref->[0]....});
    -		regen_build($ref);
    -
    -		if($Vend::CachePage || $Vend::ForceBuild) {
    -			$verbose and ::response(qq{will build.\n});
    -			push (@links, @Vend::Links);
    -#::logDebug("links: @Vend::Links");
    -			for (keys %Vend::LinkFound) {
    -				::response("                Found link $_.\n")
    -					if $verbose and ! $found{$_};
    -#::logDebug("link: found $_");
    -				$found{$_} = 1;
    -			}
    -			#if($regen_scan) {
    -			#	$$pageref =~ s!($Vend::Cfg->{VendURL})/scan/MM=[^"]+!$1/$ref->[0]!g;
    -			#}
    -			if($regen_scan) {
    -				$regen_out = $ref->[0];
    -				$regen_out =~ s:^scan/::;
    -				$regen_out = Vend::Util::generate_key($regen_out);
    -				$regen_out = "scan/$regen_out$suffix";
    -			}
    -			elsif ($regen_arg) {
    -				$regen_arg =~ s:([^-\w/]):sprintf '%%%02x', ord($1):eg;
    -				$regen_out = "$initial/$regen_arg$suffix";
    -			}
    -			else {
    -				$regen_out = "$regen_out$suffix";
    -			}
    -			$Vend::StaticDBM{$ref->[0]} = $regen_out;
    -			$done{$ref->[0]} = $ref;
    -		}
    -		else {
    -			$verbose and ::response(qq{no.\n});
    -			$done{$ref->[0]} = 0;
    -		}
    -	}
    -	::response( "        done with link checks, $links_done checked.\n" );
    -
    -	for(keys %done) {
    -		$output .= "$_ = $done{$_}
    \n"; - } - - undef $Vend::AccumulatingLinks; - - ::response("\n\n Generating....\n"); - - my $umask = umask(022); - my $statpath = $Vend::Cfg->{StaticPath}; - my @bad; - my $base = $Vend::Cfg->{StaticDir}; - eval { - File::Path::rmtree($base); - File::Path::mkpath($base); - my ($dir, $file); - for(keys %Vend::StaticDBM) { - my $ref = delete $done{$_}; - next unless $ref; - $dir = $file = "$base/$Vend::StaticDBM{$_}"; - $dir =~ s:/[^/]+$::; - if(! -d $dir) { - die "Wild directory $dir" if -e $dir; - File::Path::mkpath($dir); - } - open(REGENFILE, ">$file") - or die "create $file: $!\n"; - my $pageref = regen_build($ref); - if(! $pageref) { - push (@regen_messages, "problem building $_."); - push @bad, $_; - close REGENFILE; - unlink $file; - next; - } - print REGENFILE $$pageref; - close REGENFILE; - my $dispfile = $file; - $dispfile =~ s:^$base/::o; - $dispfile = qq{$dispfile}; - ::response(" Generated $dispfile.\n") - if $verbose; - } - }; - my $success; - if($@) { - push (@regen_messages, "during file write: $@\n"); - ::response("\n Failed to write all files.\n
    "); - } - else { - ::response("\n Finished writing files.\n"); - $success = 1; - } - umask($umask); - - if($success) { - my %my_static; - %my_static = %Vend::StaticDBM; - $Vend::Cfg->{StaticDBM} = $Vend::Cfg->{SaveStaticDBM} - if ! $Vend::Cfg->{StaticDBM}; - if(::tie_static_dbm(1)) { - my @del = keys %Vend::StaticDBM; - for(@del) { - delete $Vend::StaticDBM{$_}; - } - my ($k, $v); - while( ($k, $v) = each %my_static) { - $Vend::StaticDBM{$k} = $v; - } - } - } - - my $imgpath = $::Variable->{UI_IMG} || $Global::Variable->{UI_IMG} || ''; - $imgpath .= "admin"; - - $Vend::Session = $save_session; - $Vend::StatusLine = $save_status; - %CGI::values = %save_cgi; - if(@regen_messages) { - my $out = "Messages during regen:
    "; - $out .= join "
    ", @regen_messages; - $out .= "
    "; - ::response($out); - } - my $end = (times)[0] - $start; - $end = int($end); - ::response(::interpolate_html(< - - - - - - - -
    - - - -
    -

    -   - Regeneration complete in $end seconds. 
    -
    - -
    -$Global::Variable->{UI_STD_FOOTER}; -EOF - return; -} -EOR diff --git a/dist/lib/UI/usertag/return_to b/dist/lib/UI/usertag/return_to deleted file mode 100644 index 1d6c512e4..000000000 --- a/dist/lib/UI/usertag/return_to +++ /dev/null @@ -1,44 +0,0 @@ -UserTag return_to Order type -UserTag return_to addAttr -UserTag return_to Routine <{ui_target}) { - push @args, "ui_target=$CGI->{ui_target}"; - } - my $out = ''; - - if($type eq 'click') { - $out .= qq{mv_nextpage=$page\n} if $page; - for(@args) { - my ($k, $v) = split /\s*=\s*/, $_, 2; - next if $k =~ /$opt->{exclude}/; - $out .= qq{$k=$v\n} - } - } - elsif($type eq 'url') { - $page = $Global::Variable->{MV_PAGE} if ! $page; - $out .= $Tag->area( { - href => $page, - form => join("\n", @args), - }); - } - else { - $page = $Global::Variable->{MV_PAGE} if ! $page; - $out .= qq{\n}; - for(@args) { - s/"/"/g; - $out .= qq{\n} - } - } - $::Scratch->{ui_location} = $Tag->area({ - href => $page, - form => join "\n", @args, - }) - if $opt->{scratch}; -#::logDebug("return-to returns:\n$out\n"); - return $out; -} -EOR - diff --git a/dist/lib/UI/usertag/rotate_database b/dist/lib/UI/usertag/rotate_database deleted file mode 100644 index 0fda2a491..000000000 --- a/dist/lib/UI/usertag/rotate_database +++ /dev/null @@ -1,16 +0,0 @@ -UserTag rotate-database Routine <{ui_rotate_database}; - return '' unless $table; - my $direction = delete $::Values->{ui_rotate_direction}; - my $opts = { - Motion => $direction || 'save', - Directory => $Vend::Cfg->{ProductDir}, - Touch => 1, - }; - UI::Primitive::rotate( $table, $opts ) - and return "Database rotated successfully."; - return "DATABASE ROTATE of $table in '$direction' FAILED."; -} -EOR - diff --git a/dist/lib/UI/usertag/rotate_file b/dist/lib/UI/usertag/rotate_file deleted file mode 100644 index 065b970b1..000000000 --- a/dist/lib/UI/usertag/rotate_file +++ /dev/null @@ -1,9 +0,0 @@ -UserTag rotate_file Order file rollback -UserTag rotate_file PosNumber 2 -UserTag rotate_file Routine <)//si; - my $out = $1 || ''; - $text =~ s:(.*?):
    :si; - my $table = $1; - - my @cols; - - while ($table =~ m:(.*?):sig) { - push @cols, $1; - } - - my $i = 0; - my @rows; - my @meta; - my $rows = 0; - my @r; my @c; my @m; - my ($r,$c); - - for (@cols) { - while(m:(.*?):sig) { - my $meta = $1 . $2; - push @r, $3; - if($meta =~ /SPAN/i) { - $meta =~ s/\bcolspan\s*=/ROWMETASPAN=/ig; - $meta =~ s/\browspan\s*=/COLMETASPAN=/ig; - $meta =~ s/(ROW|COL)META/$1/g; - } - push @m, $meta; - } - $meta[$i] = [@m]; - $rows[$i] = [@r]; - $i++; - $rows = $rows < $#r ? $#r : $rows; - undef @m; - undef @r; - } - foreach $r (0 .. $rows) { - $rotated .= "\n"; - foreach $c (0 .. $#cols) { - $rotated .= "[$r] . ">"; - $rotated .= "$rows[$c]->[$r]"; - $rotated .= "\n" - } - $rotated .= "\n"; - } - return $out . $rotated . $text; -} -EOR - diff --git a/dist/lib/UI/usertag/row_edit b/dist/lib/UI/usertag/row_edit deleted file mode 100644 index 346426c4e..000000000 --- a/dist/lib/UI/usertag/row_edit +++ /dev/null @@ -1,125 +0,0 @@ -UserTag row-edit HasEndTag -UserTag row-edit Order key table size columns -UserTag row-edit addAttr -UserTag row-edit Interpolate 1 -UserTag row-edit Routine <ref() unless $Vend::Interpolate::Db{$table}; - my $acl = UI::Primitive::get_ui_table_acl(); - - my $bad; - if ($key) { - eval { - $bad = ! $db->record_exists($key); - $bad = 'DELETED' if $bad; - }; - $bad = 'ERROR' if $@; - if(! $bad and $acl) { - $bad = 'Not available' - if ! UI::Primitive::ui_acl_atom($acl, 'keys', $key); - } - } - - my @cols; - if($columns) { - @cols = split /[\s,\0]+/, $columns; - my %col; - for(@cols) { - $col{$_} = 1; - } - @cols = grep defined $col{$_}, $db->columns(); - } - else { - @cols = $db->columns(); - } - - if($acl) { - @cols = UI::Primitive::ui_acl_grep( $acl, 'fields', @cols); - } - - # See if we have a textarea reference - my %ta; - if($opt->{textarea}) { - my @tmp = split /[\s,\0]+/, $opt->{textarea}; - for(@tmp) { - $ta{$_} = 1; - } - } - - my $out = ''; - - my $meta = $::Values->{ui_meta_display}; - my $tmp; - - $size = $size || 12; - if($bad) { - for(@cols) { - $out .= "$bad"; - } - } - elsif($key) { - my $text; - for(@cols) { - eval { - $text = $db->field($key,$_); - }; - $text = 'DELETED' if $@; - my $msg = ''; - if($meta) { - my $tmp; - my $type = UI::Primitive::meta_display( - $table, - $_, - $key, - undef, - undef, - 'type', - ); - if ( $type =~ /combo|checkbox|multi|date|imagedir/) { - $msg = '
    unable to display with field info'; - } - elsif ( $tmp = UI::Primitive::meta_display($table,$_,$key,$text) ) { - $out .= "$tmp"; - next; - } - } - if($ta{$_} || $text =~ /\n/) { - my $rows = $opt->{height} || 4; - $text =~ s/$msg -EOF - } - else { - $text =~ s/"/"/g; - $out .= <$msg -EOF - } - } - } - elsif($opt->{blank}) { - for(@cols) { - $out .= < -EOF - } - } - else { - for(@cols) { - $out .= <$_ -EOF - } - } - return $out; - -} -EOR - diff --git a/dist/lib/UI/usertag/send_help b/dist/lib/UI/usertag/send_help deleted file mode 100644 index 62dc6077f..000000000 --- a/dist/lib/UI/usertag/send_help +++ /dev/null @@ -1,19 +0,0 @@ -UserTag send-help Order name refine -UserTag send-help Routine < - Search for help on $name - -EOF -} -EOR - diff --git a/dist/lib/UI/usertag/set_alias b/dist/lib/UI/usertag/set_alias deleted file mode 100644 index d59502d56..000000000 --- a/dist/lib/UI/usertag/set_alias +++ /dev/null @@ -1,13 +0,0 @@ -UserTag set-alias Order alias real permanent -UserTag set-alias PosNumber 3 -UserTag set-alias Routine <{$one} = {} - if ! defined $Vend::Session->{$one}; - $Vend::Session->{$one}{$alias} = $real; - return; -} -EOR - diff --git a/dist/lib/UI/usertag/set_click b/dist/lib/UI/usertag/set_click deleted file mode 100644 index d22ce98ba..000000000 --- a/dist/lib/UI/usertag/set_click +++ /dev/null @@ -1,18 +0,0 @@ - -UserTag set-click Order name page action extra -UserTag set-click PosNumber 4 -UserTag set-click Routine <{scratch}{$name} = <}; -} -EOR - diff --git a/dist/lib/UI/usertag/setvar b/dist/lib/UI/usertag/setvar deleted file mode 100644 index bf806171b..000000000 --- a/dist/lib/UI/usertag/setvar +++ /dev/null @@ -1,9 +0,0 @@ -UserTag setvar Order name -UserTag setvar hasEndTag -UserTag setvar Routine <{$name} = shift; - return; -} -EOR diff --git a/dist/lib/UI/usertag/substitute b/dist/lib/UI/usertag/substitute deleted file mode 100644 index facaf6942..000000000 --- a/dist/lib/UI/usertag/substitute +++ /dev/null @@ -1,11 +0,0 @@ -UserTag substitute CanNest 1 -UserTag substitute HasEndTag 1 -UserTag substitute Order name value -UserTag substitute Routine <{HEADERBG} || '#444444') unless defined $color; - $color = qq{BGCOLOR="$color"} unless $color =~ /^\s*bgcolor=/i; - my $tcolor = $::Variable->{HEADERTEXT} || 'WHITE'; - $text = qq{$text}; - return <$text -EOF -} -EOR - diff --git a/dist/lib/UI/usertag/unconfigure b/dist/lib/UI/usertag/unconfigure deleted file mode 100644 index 3ab4df6bf..000000000 --- a/dist/lib/UI/usertag/unconfigure +++ /dev/null @@ -1,10 +0,0 @@ -UserTag unconfigure Routine <{joiner} || '
    '; - my @out; - my $done_something; - - if($opt->{global_error}) { - push @out, $Global::ErrorFile; - $done_something = 1; - } - - if($opt->{local_error}) { - my $fn = $Vend::Cfg->{ErrorFile}; - push @out, $Tag->page( "$::Variable->{UI_BASE}/do_view", $fn) . "$fn"; - $done_something = 1; - } - - if($opt->{env}) { - push @out, join " ", @{$Global::Environment}; - $done_something = 1; - } - - if($opt->{safe}) { - push @out, join " ", @{$Global::SafeUntrap}; - $done_something = 1; - } - - if($opt->{pid}) { - push @out, ::readfile($Global::PIDfile); - $done_something = 1; - } - - if($opt->{uid}) { - push @out, scalar getpwuid($>) . " (uid $>)"; - $done_something = 1; - } - - if($opt->{perl}) { - push @out, "$] (called with: $^X)"; - $done_something = 1; - } - - if($opt->{perl_config}) { - require Config; - push @out, "
    \n" . Config::myconfig() . "
    "; - $done_something = 1; - } - - if(not $opt->{db} || $opt->{modules} || $done_something) { - $opt->{db} = 1; - push @out, "Interchange Version $::VERSION"; - push @out, ""; - } - - if($opt->{db}) { - if($Global::GDBM) { - push @out, "GDBM available (v$GDBM_File::VERSION)"; - } - else { - push @out, "No GDBM."; - } - if($Global::DB_File) { - push @out, "Berkeley DB_File available (v$DB_File::VERSION)"; - } - else { - push @out, "No Berkeley DB_File."; - } - if($Global::LDAP) { - push @out, "LDAP available (v$Net::LDAP::VERSION)"; - } - if($Global::DBI and $DBI::VERSION) { - push @out, "DBI enabled (v$DBI::VERSION), available drivers:"; - my $avail = join $joiner, DBI->available_drivers; - push @out, "
    $avail
    "; - } - } - if($opt->{modules}) { - my %wanted = ( qw/ - Safe::Hole Safe::Hole - SQL::Statement SQL::Statement - MD5 MD5 - LWP::Simple LWP - Tie::Watch Tie::Watch - MIME::Base64 MIME::Base64 - URI::URL URI::URL - Storable Storable - /); - my %info = ( - 'Safe::Hole' => 'IMPORTANT: SQL and some tags will not work in embedded Perl.', - 'SQL::Statement'=> 'IMPORTANT: UI Database editors will not work properly.', - 'MD5' => 'IMPORTANT: cache keys and other search-related functions will not work.', - 'LWP::Simple' => 'External UPS lookup and other internet-related functions will not work.', - 'Tie::Watch' => 'Minor: cannot set watch points in catalog.cfg.', - 'MIME::Base64' => 'Minor: Internal HTTP server will not work.', - 'URI::URL' => 'Minor: Internal HTTP server will not work.', - 'Storable' => 'Session and search storage will be slower.', - ); - for( sort keys %wanted) { - eval "require $_"; - if($@) { - my $info = $info{$_} || "May affect program operation."; - push @out, "$_ not found. $info" - } - else { - no strict 'refs'; - my $ver = ${"$_" . "::VERSION"}; - $ver = $ver ? "v$ver" : 'no version info'; - push @out, "$_ found ($ver)."; - } - } - } - return join $joiner, @out; -} -EOR diff --git a/dist/lib/UI/usertag/widget b/dist/lib/UI/usertag/widget deleted file mode 100644 index bd1926aaf..000000000 --- a/dist/lib/UI/usertag/widget +++ /dev/null @@ -1,47 +0,0 @@ -UserTag widget Order name -UserTag widget PosNumber 1 -UserTag widget attrAlias table db -UserTag widget attrAlias field column -UserTag widget attrAlias outboard key -UserTag widget addAttr -UserTag widget HasEndTag 1 -UserTag widget Interpolate 1 -UserTag widget Routine <{set}) { - $value = $opt->{set}; - } - else { - $value = $::Values->{$name} || $opt->{default}; - } - if($opt->{pre_filter}) { -::logDebug("pre-filter with $opt->{pre_filter}"); - $value = $Tag->filter($opt->{pre_filter}, $value); - } - my $ref = { - attribute => $opt->{attribute} || 'attribute', - db => $opt->{table} || undef, - field => $opt->{field} || undef, - name => $name, - outboard => $opt->{key} || undef, - passed => $opt->{data} || $opt->{passed} || $string, - type => $opt->{type} || 'select', - }; - my $item = { $ref->{attribute} => $value }; - if($ref->{type} =~ /date/i) { - return UI::Primitive::date_widget($name, $value); - } - - my $w = Vend::Interpolate::tag_accessories('', '', $ref, $item); - if($opt->{filter}) { - $w .= qq{'; - } - return $w; -} -EOR diff --git a/dist/lib/UI/usertag/with b/dist/lib/UI/usertag/with deleted file mode 100644 index 88341e05e..000000000 --- a/dist/lib/UI/usertag/with +++ /dev/null @@ -1,3 +0,0 @@ -UserTag with routine sub { $Vend::Session->{scratch}->{$_[0]} = $_[1]; return '' } -UserTag with Order param value - diff --git a/dist/lib/UI/usertag/write_relative_file b/dist/lib/UI/usertag/write_relative_file deleted file mode 100644 index 8bb92d90b..000000000 --- a/dist/lib/UI/usertag/write_relative_file +++ /dev/null @@ -1,30 +0,0 @@ -UserTag write-relative-file Documentation < in the catalog directory. Name must be relative; it will -return undef if the file name is absolute or contains C<..>. - -EOD - -UserTag write-relative-file Order file -UserTag write-relative-file hasEndTag -UserTag write-relative-file Routine <$file", $data); -} -EOR - diff --git a/dist/lib/UI/usertag/write_shipping b/dist/lib/UI/usertag/write_shipping deleted file mode 100644 index b1047efa8..000000000 --- a/dist/lib/UI/usertag/write_shipping +++ /dev/null @@ -1,32 +0,0 @@ -UserTag write-shipping Order file -UserTag write-shipping PosNumber 1 -UserTag write-shipping addAttr -UserTag write-shipping Routine <{Special}{'shipping.asc'} - || Vend::Util::catfile($Vend::Cfg->{ProductDir},'shipping.asc'); - } - my $lines = $Vend::Cfg->{Shipping_line}; - my @outlines; - for (@$lines) { - # 0 1 2 3 4 5 6 7 - # ($mode, $desc, $crit, $min, $max, $cost, $query, $opt) - my @line = @$_; - my $opt = ''; - if (ref($line[7]) =~ /HASH/) { - $line[7] = ::uneval_it($line[7]); - } - push @outlines, \@line; - } - rename($file, "$file.bak"); - open(SHIPOUT, ">$file") - or die errmsg("Can't write shipping to %s: %s", $file, $!); - for(@outlines) { - print SHIPOUT join "\t", @$_; - print SHIPOUT "\n"; - } - close SHIPOUT; -} -EOR diff --git a/dist/lib/UI/vars/UI_EDIT_LINK b/dist/lib/UI/vars/UI_EDIT_LINK deleted file mode 100644 index 229439362..000000000 --- a/dist/lib/UI/vars/UI_EDIT_LINK +++ /dev/null @@ -1 +0,0 @@ -Variable UI_EDIT_LINK edit diff --git a/dist/lib/UI/vars/UI_STD_DBEDIT_HEAD b/dist/lib/UI/vars/UI_STD_DBEDIT_HEAD deleted file mode 100644 index 84249f91e..000000000 --- a/dist/lib/UI/vars/UI_STD_DBEDIT_HEAD +++ /dev/null @@ -1,69 +0,0 @@ -Variable UI_STD_DBEDIT_HEAD <{item_id}) { - $CGI->{item_id} = 'new'; - } - $Scratch->{arg} = $CGI->{item_id}; - return; -[/calc] - -[if-mm function=keys name="[scratch arg]"] -[else][bounce href="[area admin/special/key_violation]"][/else] -[/if-mm] - -[perl tables="[value mv_data_table]"] -my $table = $Values->{mv_data_table}; -my $db = $Db{$table}; -if(! $db) { - $Scratch->{ui_error} = "Bad table '$table'."; - $Tag->bounce( { page => '__UI_BASE__/error' } ); -} - -$Values->{ui_data_key_name} = $db->config('KEY'); - -$Values->{ui_data_fields} = - $CGI->{ui_data_fields} || - $CGI->{mv_data_fields} || - $Values->{"$table:ui_data_fields"} || - join " ", $db->columns(); - -$Values->{ui_data_fields} =~ s/[,\0\s]+/ /g; - - -my @cols = split /[,\0\s]/, $Values->{ui_data_fields}; -@cols = grep /:/ || $db->column_exists($_), @cols; - -$Values->{ui_data_fields} = $CGI->{ui_data_fields} = join " ", @cols; -return; - -[/perl] - -[set process_filter] -[perl] - my @filters = grep /^ui_filter:/, keys %$CGI; - return unless @filters; - foreach my $key (@filters) { - my $val = delete $CGI->{$key}; - $key =~ s/ui_filter://; - next unless $val; - next unless defined $CGI->{$key}; - $CGI->{$key} = $Tag->filter($val, $CGI->{$key}, $key); - } - return; -[/perl] -[/set] - -EndOfVariable diff --git a/dist/lib/UI/vars/UI_STD_DBEDIT_TABLE b/dist/lib/UI/vars/UI_STD_DBEDIT_TABLE deleted file mode 100644 index 733cb3545..000000000 --- a/dist/lib/UI/vars/UI_STD_DBEDIT_TABLE +++ /dev/null @@ -1,320 +0,0 @@ -Variable UI_STD_DBEDIT_TABLE < - -[if scratch ui_failure] - Failed: - [scratch ui_failure][set ui_failure][/set]
    -[/if] - -
    - - - - - - - - - - - - -[calc] - $ui_img = q{@_UI_IMG_@}; - unless ($CGI->{ui_return_to}) { - $CGI->{ui_return_to} = "[var MV_PAGE global]\0item_id=$Scratch->{arg}"; - } - @inst = split /\0/, $CGI->{ui_return_to}; - my $out; - for(@inst) { - s/"/"/g; - $out .= < -EOF - } - return $out; -[/calc] - - -[if-key-exists table="[value mv_data_table]" key="[scratch arg]"] - -[else] - -[/else] -[/if-key-exists] - - - -
    - - - - - - -[if !cgi ui_data_fields] - [calc] - $CGI->{ui_data_fields} - = $Values->{ui_data_fields} - = q{[db-columns table="[cgi mv_data_table]"]}; - return; - [/calc] -[/if] - -[comment] -Display an extra Ok/Cancel button pair if there are more than -4 rows of input, so user doesn't have to scroll to bottom of page. -[/comment] -[perl] - my $linecount = (split / /, $CGI->{ui_data_fields}) - 1; - my $out = ''; - $out .= <<'EOF' if $linecount > 4; - - - - - - - - - -EOF -[/perl] - - -[seti extra_tables] -[query list=1 sql="SELECT DISTINCT db FROM __UI_META_TABLE__" table="__UI_META_TABLE__"] - [sql-code] -[/query] -[/seti] - -[mvasp tables="[list-databases] __UI_META_TABLE__ __UI_ACCESS_TABLE__"] -<% - my $table = $Values->{mv_data_table}; - my $db = $Db{$table}; - my $mdb = $Db{__UI_META_TABLE__}; - my %break; - if($CGI->{ui_break_before}) { - my @tmp = grep /\S/, split /[\s,\0]+/, $CGI->{ui_break_before}; - @break{@tmp} = @tmp; - } - if(!$db) { - return ""; - } - - my %display_only; - if($CGI->{ui_display_only}) { - my @do = split /[\0,\s]+/, $CGI->{ui_display_only}; - for(@do) { - $display_only{$_} = 1; - $CGI->{ui_data_fields} =~ s/\b$_\b//; - } - } - - my $key = $CGI->{item_id}; - my $keycol = $db->config('KEY'); - my $passed_fields = $Values->{ui_data_fields}; - my @extra_cols; - my %ok_col; - while($passed_fields =~ s/(\w+:+\S+)//) { - push @extra_cols, $1; - } - my (@cols) = split /\s+/, $Tag->db_columns( { - name => $table, - columns => $passed_fields, - passed_order => 1, - }); - - if($Values->{ui_data_fields}) { - for(@cols, @extra_cols) { - unless (/^(\w+):+(\S+)/) { - $ok_col{$_} = 1; - next; - } - my $t = $1; - my $c = $2; - next unless $Tag->db_columns( { name => $t, columns => $c, }); - $ok_col{$_} = 1; - } - @cols = grep $ok_col{$_}, split /\s+/, $Values->{ui_data_fields}; - } - - my $super = $Tag->if_mm('super'); - - my $refkey = $key; - - if($db->record_exists($key)) { -#Log("Should work. key=$key table=$table"); - } - elsif($db->config('AUTO_NUMBER')) { - $CGI->{$Values->{ui_data_key_name}} = ''; - undef $key; - } - else { - $CGI->{$Values->{ui_data_key_name}} = $key; - undef $key; - } - foreach my $col (@cols) { - if($CGI->{ui_hide_key} and $col eq $keycol) { - $Document->write(< -EOF - next; - } - - my $do = $display_only{$col}; - - my $currval; - if($col =~ /(\w+):+(\S+)/) { - $t = $1; - $c = $2; - $Scratch->{mv_data_enable} .= " $t " - unless $do or $Scratch->{mv_data_enable} =~ /\b$t\b/; - } - else { - $t = $table; - $c = $col; - } - - my $type; - if($do) { - my $k = defined $key ? $key : $refkey; - $currval = tag_data($t, $c, $k); - $type = 'value'; -#Log("hit display_only for $col, t=$t, c=$c, k=$k, currval=$currval"); - } - elsif($CGI->{$col} and !defined($key) || !tag_data($t, $c, $key) ) { - $currval = $CGI->{$col}; - } - else { - $currval = delete $Scratch->{"ui_preload:$t:$c"} || undef; - } - - my $meta = ''; - my $display = $Tag->display({ - table => $t, - column => $c, - name => $col, - key => $key, - type => $type, - default => $currval, - arbitrary => $CGI->{ui_meta_view}, - fallback => 1, - template => q( - - - - -), - }); - if($super and ($Variable->{UI_META_LINK} || $Values->{ui_meta_force}) ) { - $meta .= '
    '; - # Get global variables - my $base = $Tag->var('UI_BASE', 1); - my $page = $Tag->var('MV_PAGE', 1); - $meta .= $Tag->page( - { href => "$base/flex_editor", - form => qq{ - item_id=${t}::$c - mv_data_table=mv_metadata - ui_return_to=$page - ui_return_to=item_id=$Scratch->{arg} - ui_return_to=mv_data_table=$t - } - }); - $meta .= 'meta'; - $meta .= '
    ' . $Tag->page( - { href => "$base/flex_editor", - form => qq{ - item_id=${t}::${c}::$key - mv_data_table=mv_metadata - ui_return_to=$page - ui_return_to=item_id=$Scratch->{arg} - ui_return_to=mv_data_table=$t - } - }) . 'item-specific meta
    ' - if $CGI->{ui_meta_specific}; - $meta .= ''; - } - #unless ($label) { - #$Document->write ($display); - #next; - #} - $Document->write(< - - -EOF - $display =~ s/\~META\~/$meta/g; - $Document->write($display); - } -%> -[/mvasp] - - - - - - - - - - - - - - - - -
      - - -  - -
    Broken table '$table'
    - $LABEL$~META~ - - - - - - -
    - $WIDGET$ - $HELP${HELPURL}
    help{/HELPURL}
    -
      -[button text="Ok"] -[return-to click] -mv_todo=set -mv_data_table=[cgi mv_data_table] -[/button] -  -  -[button text="Cancel"] -mv_todo=return -[return-to click] -[/button] -[if-mm tables =x] - -  -  -  -  -  - [if !value ui_too_large] - [if-mm super] - - Auto-export - [else] - - [/else] - [/if-mm] - [/if] -[/if-mm] - -
    -
    - - - -EndOfVar diff --git a/dist/lib/UI/vars/UI_STD_FILE_NAV b/dist/lib/UI/vars/UI_STD_FILE_NAV deleted file mode 100644 index 8c20e27de..000000000 --- a/dist/lib/UI/vars/UI_STD_FILE_NAV +++ /dev/null @@ -1,52 +0,0 @@ -Variable UI_STD_FILE_NAV < - - - - - - - - - - - - - - - - - - - - - - -
    - - - - - -
    - - view
    - download
    - upload
    - edit (if applicable) -
    -
    -
    -
    - - [file-navigator - mask="[scratch dir_mask]" - include_mask="[scratch include_mask]" - exclude_mask="[scratch exclude_mask]" - view_link="[scratch view_link]" - start_open="[scratch start_open]" - ] - -
    - -EONav diff --git a/dist/lib/UI/vars/UI_STD_FOOTER b/dist/lib/UI/vars/UI_STD_FOOTER deleted file mode 100644 index de43d6570..000000000 --- a/dist/lib/UI/vars/UI_STD_FOOTER +++ /dev/null @@ -1,43 +0,0 @@ -Variable UI_STD_FOOTER < - - -[/if] -
    - - - - - - - -
    -
    -
    -
    -      Interchange - ©2000 Akopia, Inc.     Username: [data session username] -      StoreID: [calc]$Config->{CatalogName}[/calc]    [tag time]%d %B, %Y %H:%M:%S[/tag] - -[tmp window_name][tag time]%m%d%H%M%S[/tag][/tmp] - - - - - -
    - -Quicklinks
    - [if-mm advanced reconfig] - Apply changes
    - [/if-mm] - Log out -
    -
    -
    -
    -
    - - - -EOV diff --git a/dist/lib/UI/vars/UI_STD_HEAD b/dist/lib/UI/vars/UI_STD_HEAD deleted file mode 100644 index f0da8a823..000000000 --- a/dist/lib/UI/vars/UI_STD_HEAD +++ /dev/null @@ -1,227 +0,0 @@ -Variable UI_STD_HEAD <{no_login_required}; - @parms = grep /^ui_class_/, keys %$Scratch; - my $last; - for(@parms) { - delete $Scratch->{$_}; - $last = $_; - $last =~ s/ui_class_//; - } - $ui_tag = delete $Scratch->{ui_class} || $last; - $Scratch->{"ui_class_$ui_tag"} = 1; - return $out; -[/calc] -[if scratch table_perm] - [calc] - my $table = $CGI->{mv_data_table} || $Value->{mv_data_table}; - if($Scratch->{table_perm} =~ /^\s*=(\w+)/) { - $Scratch->{table_perm} = "$CGI->{mv_data_table}=$1"; - } - elsif ( $Scratch->{table_perm} =~ /\w+=/) { - # do nothing - } - else { - $Scratch->{table_perm} = $CGI->{mv_data_table}; - } - return; - [/calc] - [if-mm function="!tables" table="[scratch table_perm]"] - [seti ui_error]Sorry, no permission [scratch table_perm] for table [cgi mv_data_table][/seti] - [set table_perm][/set] - [bounce page="__UI_BASE__/error"] - [/if-mm] -[/if] -[if scratch page_perm] - [if-mm function="!advanced" name="[scratch page_perm]"] - [seti ui_error]Sorry, no permission for page [scratch page_perm][/seti] - [set page_perm][/set] - [bounce page="__UI_BASE__/error"] - [/if-mm] -[/if] -[/strip] - -[scratch page_title] - - - -[scratch meta_header][set meta_header][/set] - - - - - - - -
    - -[tmp ui_menu_content]code img_dn img_up img_sel page url alt name -[if-mm advanced order]2 B2.gif B2_b.gif B2_b.gif __UI_BASE__/order Order administration Orders -[/if-mm][if-mm advanced userdb]3 B3.gif B3_b.gif B3_b.gif __UI_BASE__/customer Customer administration Customers -[/if-mm][if-mm advanced items]4 B4.gif B4_b.gif B4_b.gif __UI_BASE__/item Item management Items -[/if-mm][if-mm advanced page]5 B5.gif B5_b.gif B5_b.gif __UI_BASE__/page Content edit Content -[/if-mm][if-mm advanced layout]6 B6.gif B6_b.gif B6_b.gif __UI_BASE__/layout Site design Design -[/if-mm][if-mm advanced items]7 B7.gif B7_b.gif B7_b.gif __UI_BASE__/merchandising merchandising Merchandising -[/if-mm][if-mm advanced stats]8 B8.gif B8_b.gif B8_b.gif __UI_BASE__/orderstats Statistics and reports Reports -[/if-mm][if-mm advanced admin]9 B9.gif B9_b.gif B9_b.gif __UI_BASE__/genconfig System administration Admin -[/if-mm][/tmp] - - - - - - - - - - -
    -
    [loop - prefix=am - head_skip=1 - list="[scratch ui_menu_content]" - lr=1][am-param alt][/loop]
    -
    - -[loop - lr=1 - head_skip=1 - prefix=sm - list=`$Variable->{"UI_SUBMENU_$ui_tag"};` -][sm-calc] - my $pre = ''; - my $post = ''; - my $indicator = q{[sm-param indicator]}; - my $exclude = q{[sm-param exclude_on]}; -#Log("indicator=$indicator"); - my $depend = q{[sm-param depends_on]}; - return '' if $exclude and $CGI->{$exclude}; - return '' if $depend and ! $CGI->{$depend}; - my $name = q{[sm-param name]}; - my $next = q{[sm-param next_line]}; - if($name =~ s/^(( )+)//i) { - $pre = $1; - } - if($name =~ s/(( )+)$//i) { - $post = $1; - } - $name =~ s/ / /g; - my $page = q{[sm-param page]}; - my $form = q{[sm-param form]}; -#Log("Form is: $form"); - $form =~ tr/&/\n/; -#Log("Form is: $form"); - my $out = ''; - $out .= <<'EOF' if ! $sm_once++; - - - - - - - - - -
         -EOF - $out .= $pre; - $out .= q{
    } - if $next; - $out .= qq{} if $page; - my $fc = q{__UI_C_TITLEBARCONT__}; - my $rev = $indicator =~ s/^!//; - -#Log("indicator=$indicator rev=$rev CGI=$CGI->{$indicator} VALUES=$Values->{$indicator}"); - - if($indicator) { - if($rev) { - $fc = q{__UI_C_TITLEBARTXT__} - if ! ($CGI->{$indicator} || $Values->{$indicator}); - } - else { - $fc = q{__UI_C_TITLEBARTXT__} - if ($CGI->{$indicator} || $Values->{$indicator}); - } - } - elsif($Tag->var('MV_PAGE', 1) eq $page) { -#Log("page presence select"); - $fc = q{__UI_C_TITLEBARTXT__}; - } - - $out .= qq{$name}; - $out .= '' if $page; - $out .= $post; -[/sm-calc]    [/loop] - [calc] - return unless $sm_once; - return q!
    !; - [/calc] - -[if !scratch ui_no_title] - - -
      -
    - [if scratch icon_name]   [/if] - [either][scratch page_banner][or][scratch page_title][/either] 

    -[/if] -[comment] Clear these puppies [/comment] -[calc] - for (qw/ - page_title - page_banner - icon_name - help_name - page_perm - table_perm - ui_body_extra - /) { delete $Scratch->{$_} } - return; -[/calc] -EOV diff --git a/dist/locale.error b/dist/locale.error deleted file mode 100644 index 5490c8a5e..000000000 --- a/dist/locale.error +++ /dev/null @@ -1,221 +0,0 @@ -Locale en_US < and other tags within -# HTML tags, use [pragma no_html_parse 0] to enable on a page -Pragma no_html_parse - -MailOrderTo __ORDERS_TO__ -VendURL http://__SERVER_NAME____CGI_URL__ -SecureURL __SECURE_SERVER____CGI_URL__ - - -#ifndef SOMESQL -Database affiliate affiliate.txt TAB -Database area area.txt TAB -Database area AUTO_NUMBER 1 -Database cat cat.txt TAB -Database country country.txt TAB -Database inventory inventory.txt TAB -Database merchandising merchandising.txt TAB -Database products products.txt TAB -Database pricing pricing.txt TAB -Database pricing KEY sku -Database pricing NUMERIC q2 -Database products HOT 1 -Database products INDEX category:c -Database orderline orderline.txt TAB -Database transactions transactions.txt TAB -Database userdb userdb.txt TAB -#endif - -#ifndef SQLDSN -Variable SQLDSN __MVC_SQLDSN__ -#endif - -#ifdef MYSQL - -Message Using MySQL, DSN=__SQLDSN__ - -# Uncomment if needed -#Variable SQLUSER foo -#Variable SQLPASS bar - -# The tables are in separate files in the mysql directory - -#include mysql/* - -#endif - -#ifdef PGSQL - -Message Using Postgres, DSN=__SQLDSN__... - -# Uncomment if needed -#Variable SQLPASS foo -#Variable SQLUSER bar - -# The tables are in separate files in the mysql directory - -#include pgsql/* - -#endif - -# We are always keeping these in DBM, can be in SQL if you wish -Database access access.asc TAB -Database mv_metadata mv_metadata.asc TAB -Database banner banner.txt TAB -Database banner NUMERIC weight -Database locale locale.txt TAB -Database 2ndDayAir 2ndDayAir.csv CSV -Database Ground Ground.csv CSV -Database NextDayAir NextDayAir.csv CSV - -ProductFiles products - -AlwaysSecure ord/checkout multi/checkout -AsciiTrack logs/tracking.asc - -# Here is one that sets up "Mix and match" based upon the price_group field -# in the "pricing" database. -AutoModifier pricing:price_group -CommonAdjust <{deliverable} = $CGI->{mv_arg}; - $CGI->{mv_nextpage} = 'deliver'; - return 1; -} -EOR - -ActionMap get_password <{NoSearch} = ''; - $CGI->{mv_nextpage} = $CGI->{mv_search_page} = 'action/get_password'; - $CGI->{mv_todo} = 'search'; - $Tag->update('process'); - return; -} -EOR - -ParseVariables Yes -Route log attach 0 -Route log cybermode "" -Route log empty 1 -Route log encrypt 0 -Route log increment 0 -Route log report etc/log_transaction -Route log supplant 0 -Route log track logs/log - -Route log_entry attach 0 -Route log_entry cybermode "" -Route log_entry empty 1 -Route log_entry encrypt 0 -Route log_entry increment 0 -Route log_entry report etc/log_entry -Route log_entry supplant 0 -Route log_entry track logs/log - -Route copy_user attach 0 -Route copy_user cybermode "" -Route copy_user empty 1 -Route copy_user encrypt 0 -Route copy_user increment 0 -Route copy_user report etc/mail_receipt -Route copy_user supplant 0 -Route copy_user track logs/log - -# Main route must be last to make default -Route main attach 0 -Route main credit_card 0 -Route main cybermode "" -Route main default 1 -Route main email '__ORDERS_TO__' -Route main encrypt 0 -Route main encrypt_program '__ENCRYPTOR__' -Route main errors_to '__ORDERS_TO__' -Route main increment 0 -Route main pgp_cc_key "" -Route main pgp_key "" -Route main receipt etc/receipt.html -Route main report etc/report -Route main supplant 1 -Route main individual_track orders -Route main track logs/tracking.asc - -# Order routes can be maintained in a database, empty in demo -# CHANGES TO THIS WILL OVERRIDE THE ROUTES ABOVE -RouteDatabase route - -SalesTax state -TaxShipping __TAXSHIPPING__ -SeparateItems Yes -SpecialPage catalog index -SpecialPage checkout __ORDER_STYLE__/checkout -SpecialPage order __ORDER_STYLE__/basket -SpecialPage report ../etc/report -SpecialPage receipt ../etc/receipt - -NoCache reconfig special config query ord multi action admin feedback -Static __CATALOG_STATIC__ -StaticLogged __LOGGED_STATIC__ -StaticAll Yes -StaticDBM static -StaticDepth 2 -StaticDir __SAMPLEHTML__/pages -StaticFly Yes -StaticPath __SAMPLEURL__/pages - -#ifdef UI_TRAFFIC_STATS -TrackFile __UI_TRAFFIC_STATS__ -#endif - -UpsZoneFile products/450.csv -UseModifier size color - -UserTag quick-table HasEndTag -UserTag quick_table Interpolate -UserTag quick-table Order border -UserTag quick_table Routine <

    Test.
    -# Will do multiple tables. -#
    Test.
    -# [/table-font] -# -UserTag table-font Order face -UserTag table-font PosNumber 1 -UserTag table-font addAttr 1 -UserTag table-font hasEndTag -UserTag table-font Routine <{$_}; - } - push(@parms, $opt->{extra}) - if $opt->{extra}; - my $front = "'; - $table =~ s:(]*>):$1$front:ig; - $table =~ s:():$1:ig; - return $table; -} -EOR - -History 10 -UserTag history-scan Order find exclude default -UserTag history-scan addAttr -UserTag history-scan Routine <{History} - or return $Tag->area($default || $Config->{SpecialPage}{catalog}); - my ($hist, $href, $cgi); - $exclude = qr/$exclude/ if $exclude; - for(my $i = $#$ref; $i >= 0; $i--) { - #Log("checking $ref->[$i][0] for $exclude"); - if ($exclude and $ref->[$i][0] =~ $exclude) { - next; - } - if($find) { - next unless $ref->[$i][0] =~ /$find/; - } - ($href, $cgi) = @{$ref->[$i]}; - last; - } - return $Tag->area($default || $Config->{SpecialPage}{catalog}) - if ! $href; - my $form = ''; - for(grep !$var_exclude{$_}, keys %$cgi) { - $form .= "\n$_="; - $form .= join("\n$_=", split /\0/, $cgi->{$_}); - } - return $Tag->area( { href => $href, form => $form} ); -} -EOR - -WritePermission group - -# Here you can set up fatal errors if a necessary sub or usertag -# doesn't exist, uncomment one of next lines to test -#Require usertag nevairbe - -Require usertag email -Require usertag email_raw -Require usertag loc -Require usertag reconfig -Require usertag summary -Require usertag title_bar -Require usertag var diff --git a/dist/simple/config/.empty b/dist/simple/config/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/simple/config/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/simple/config/additional_fields b/dist/simple/config/additional_fields deleted file mode 100644 index 087f13e97..000000000 --- a/dist/simple/config/additional_fields +++ /dev/null @@ -1,116 +0,0 @@ -COMPANY -Your company name -The Art Store - -ADDRESS -Your company address -123 Any St. - -CITY -Your company city/state/zip -Anytown, USA 00000 - -PHONE -Your company phone -(555) 555-5555 - -FAX -Your company fax number -(555) 555-5556 - -TOLLFREE -Your company tollfree number (if any) -(888) 555-5555 - -TEMPLATE -Select the template to use -yellow1 blue1 brown1 - -MULTIORDER -Set to 1 to enable multi-page order screens -0 1 - -LOGO -URL to your logo image -template/logo.png - -TAXAREA -Area(s) to tax in -OH IL - -TAXRATE -Percentage rate(s) for tax in different areas -OH=6, IL=7.25 - -TAXSHIPPING -Areas(s) that tax shipping - OH IL - -UPSADDER -Amount to add on to standard UPS costs -3.00 - -UPSORIGIN -Origin zip code for UPS lookups -45056 00000 - -SOMESQL -Set to 1 if you want to use MySQL or Postgres -0 1 - -{SOMESQL}MYSQL -Set to 1 if you want to use MySQL -1 0 - -{MYSQL}SQLDB -Database to use (will be created) -test___MVC_CATALOGNAME__ minivend - -{MYSQL}SQLDSN -DBI DSN to use -dbi:mysql:__MVC_SQLDB__ - -{MYSQL}SQLUSER -Username for MySQL (if any) - minivend - -{MYSQL}SQLPASS -Password for MySQL (if any) - pass - -{MYSQL}SQLCREATE -Set to 1 to create '__MVC_SQLDB__' with mysqladmin -1 0 - -{SQLCREATE}SQLCREATEOPT -Extra options for creation - -p -u root -p - -{SOMESQL and ! '__MVC_MYSQL__'}PGSQL -Set to 1 if you want to use PostGres -1 0 - -{PGSQL}SQLDB -Database to use (will be created) -test___MVC_CATALOGNAME__ minivend - -{PGSQL}SQLDSN -DBI DSN to use -dbi:Pg:dbname=__MVC_SQLDB__ - -{PGSQL}SQLUSER -Username for Postgres (if any) - minivend - -{PGSQL}SQLPASS -Password for Postgres (if any) - pass - - -SUPERUSER -Account name that will control this catalog -__MVC_CATUSER__ minivend - -CRYPTPW -Administrative password -pass nevairbe diff --git a/dist/simple/config/additional_help b/dist/simple/config/additional_help deleted file mode 100644 index b5555a435..000000000 --- a/dist/simple/config/additional_help +++ /dev/null @@ -1,118 +0,0 @@ -LOGO -. -This can be an absolute image URL, or can be just a file -name that will go in your image directory. That directory -should be /home/mickey/www/simple/images. - -TAXAREA -. -For the US, this is usually the state(s) your business is -located in. Non-US users will probably have to set this -differently depending on their tax laws. - -TAXRATE -. -For US users, this looks like STATE=RATE, where the rate -is in percent. The default below taxes Ohio at 6% and -Illinois at 7.25 percent. More states can be added or -you can have only one. Should correspond to TAXAREA. - -SOMESQL -. -Interchange has a workable internal database, but many things will -work better (and a few worse) if you use a SQL database. Interchange -can configure MySQL and Postgres in a test configuration. - -MYSQL -. -You can select this to use MySQL in your test catalog. Careful! -This requires the ability to create a database named "test_simple", -and is highly dependent on your Perl and MySQL configuration. Don't -be too surprised if this doesn't work. - -SQLCREATE -. -We can try and use mysqladmin to create the database in -MySQL. In many default Mysql distributions, any user can create -a database beginning with "test". -. -Use the next option to add parameters. If your Mysql is password-protected -(and you know the password) you may want to add "-u root -p". - -SQLCREATEOPT -. -To create the database you may need to supply a password and -username. To do that, add the option "-u USERNAME -p", where -USERNAME is a Mysql user with permission to create databases. -This is often the user "root". - -PGSQL -. -You can select this to use PostGres in your test catalog. -This requires the ability to create a database named "test_simple", -and is highly dependent on your Perl and system configuration. Don't -be too surprised if this doesn't work. - -TAXSHIPPING -. -If your state charges salestax on shipping, then enter -the state code. (Again, Non-US users will have this vary -based on their locale.) - -MULTIORDER -. -Interchange can do order pages in any way; two examples are provided. -The default is single-page. - -TEMPLATE -. -There are three color schemes available as an example of -how you might template catalogs. Select one of: -. - brown1 blue1 yellow1 - -UPSADDER -. -For the UPS lookup, the standard UPS tables are normally -used. If you want to add a handling charge, do it here. - -SUPERUSER -. -You can use Interchange's companion configuration interface to -do upload/download of files, manipulation of the database, -reconfiguration of the catalog, and much more. -. -To enable the admin interface, you will need a "super-user" -account name that has full access. - -NOCRYPT -. -If you set this to 0, passwords will be encrypted in the user -database. If you set this to anything other than zero or a blank -value, passwords will not be encrypted and will be readable in -the user database. You can build encrypted passwords with -the htpasswd command, or other means. -. -Don't expect to be able to email out forgotten passwords if you -set encryption. 8-) -. -You can use your up arrow to look at the encrypted form of -"pass" if you have Term::ReadLine installed. - -SUPASSWD -. -You can use Interchange's companion configuration -interface, to do upload/download of files, manipulation of -the database, reconfiguration of the catalog, and much more. -. -To enable the UI, you will need a "super-user" account -name that has full access. -. -The initial password is "pass". CHANGE IT! You can do this -by going to the admin menu and selecting the superuser and -then "Change password". - -CRYPTPW -. -You should set a password for the administrative account. -Remember this! It will be encrypted. diff --git a/dist/simple/config/blue1/copyright b/dist/simple/config/blue1/copyright deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/simple/config/blue1/leftside b/dist/simple/config/blue1/leftside deleted file mode 100644 index 0e9836a56..000000000 --- a/dist/simple/config/blue1/leftside +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - - - -
    - -[loop - prefix=box - search=" - fi=area - st=db - tf=sort - ac=0 - ac=0 - co=yes - - sf=sel - op=eq - [if scratch left_bar] - se=[scratch left_bar][set left_bar][/set] - [else] - se=left - [/else] - [/if] - - sf=which_page - op=rm - [if scratch page_class] - se=all|[scratch page_class][set page_class][/set] - [else] - se=all|@@MV_PAGE@@ - [/else] - [/if] - "] - - - - - - - - - -[loop - prefix=cat - search=" - fi=cat - st=db - tf=sort - tf=name - rf=code,name - sf=sel - se=[box-code] - "] - - - -[/loop] - - - - - - -[/loop] -
    [box-exec bar_link]area[/box-exec]

    -   [cat-exec bar_link]cat[/cat-exec]
    -
    -
    diff --git a/dist/simple/config/blue1/logobar b/dist/simple/config/blue1/logobar deleted file mode 100644 index a4ee6c22b..000000000 --- a/dist/simple/config/blue1/logobar +++ /dev/null @@ -1,168 +0,0 @@ -[if scratch members_only] - [set members_only][/set] - [if !session logged_in] - [set mv_successpage]@@MV_PAGE@@[/set] - [bounce page=login] - [/if] -[/if] - - - [scratch page_title] - - -
    - - - - - - - - - - - - - - - - - - - -
     [if session logged_in][value fname] [value lname] [else]Unregistered customer[/else][/if][tag time]%b %d, %Y %H:%M[/tag]   
    - - - - - - - - - - - - - - - - - -
    - - - - - - - -
    Search for product -

    - - - -    - -
    -
    -     -
    -    Expanded search -
    -
    -
    - - - - - - - - - - -
    -
    -
    - - - - -
    Account

    - - [if items] - - - - - - - - - - - - - - [else] - - - - - [/else] - [/if] -[if session logged_in] - - - - - - - - - - [if type=data term="__UI_ACCESS_TABLE__::username::[data session username]"] - - - - - - - - [/if] -[else] - - - - - - - - - - - -[/else] -[/if] -
    [page __ORDER_STYLE__/basket]Basket    [page __ORDER_STYLE__/checkout]Check out
     
     
      
    Log out    [page account]Preferences
    [page feedback]Feedback    Order Status -

    [page admin/index]Admin    Reports -
    -
    -    Login:
    - - -

    -    Password:
    -
    -
    -
    Lost it?      
    - -
    diff --git a/dist/simple/config/blue1/menubar b/dist/simple/config/blue1/menubar deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/simple/config/blue1/menubottom b/dist/simple/config/blue1/menubottom deleted file mode 100644 index 0cb733513..000000000 --- a/dist/simple/config/blue1/menubottom +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - -
    -Home -        Profile -        Products -        Contact -        Registration -
    - -
    - - - - diff --git a/dist/simple/config/blue1/no_right b/dist/simple/config/blue1/no_right deleted file mode 100644 index eeb02543b..000000000 --- a/dist/simple/config/blue1/no_right +++ /dev/null @@ -1,3 +0,0 @@ -
    diff --git a/dist/simple/config/blue1/only_logo b/dist/simple/config/blue1/only_logo deleted file mode 100644 index 5e98e0f0d..000000000 --- a/dist/simple/config/blue1/only_logo +++ /dev/null @@ -1,48 +0,0 @@ - - - [scratch page_title] - - - -
    - - - - - - - - - - - - -
    [if session logged_in][value fname] [value lname][else]Unregistered customer[/else][/if][tag time]%b %d, %Y %H:%M[/tag]   
    - - - - - - - - - - - - - - - - - -
    -   - - - - - -
    - -
    -
     
    diff --git a/dist/simple/config/blue1/rightside b/dist/simple/config/blue1/rightside deleted file mode 100644 index eeb02543b..000000000 --- a/dist/simple/config/blue1/rightside +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/dist/simple/config/brown1/copyright b/dist/simple/config/brown1/copyright deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/simple/config/brown1/leftside b/dist/simple/config/brown1/leftside deleted file mode 100644 index 0e9836a56..000000000 --- a/dist/simple/config/brown1/leftside +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - - - -
    - -[loop - prefix=box - search=" - fi=area - st=db - tf=sort - ac=0 - ac=0 - co=yes - - sf=sel - op=eq - [if scratch left_bar] - se=[scratch left_bar][set left_bar][/set] - [else] - se=left - [/else] - [/if] - - sf=which_page - op=rm - [if scratch page_class] - se=all|[scratch page_class][set page_class][/set] - [else] - se=all|@@MV_PAGE@@ - [/else] - [/if] - "] - - - - - - - - - -[loop - prefix=cat - search=" - fi=cat - st=db - tf=sort - tf=name - rf=code,name - sf=sel - se=[box-code] - "] - - - -[/loop] - - - - - - -[/loop] -
    [box-exec bar_link]area[/box-exec]

    -   [cat-exec bar_link]cat[/cat-exec]
    -
    -
    diff --git a/dist/simple/config/brown1/logobar b/dist/simple/config/brown1/logobar deleted file mode 100644 index a4ee6c22b..000000000 --- a/dist/simple/config/brown1/logobar +++ /dev/null @@ -1,168 +0,0 @@ -[if scratch members_only] - [set members_only][/set] - [if !session logged_in] - [set mv_successpage]@@MV_PAGE@@[/set] - [bounce page=login] - [/if] -[/if] - - - [scratch page_title] - - -
    - - - - - - - - - - - - - - - - - - - -
     [if session logged_in][value fname] [value lname] [else]Unregistered customer[/else][/if][tag time]%b %d, %Y %H:%M[/tag]   
    - - - - - - - - - - - - - - - - - -
    - - - - - - - -
    Search for product -

    - - - -    - -
    -
    -     -
    -    Expanded search -
    -
    -
    - - - - - - - - - - -
    -
    -
    - - - - -
    Account

    - - [if items] - - - - - - - - - - - - - - [else] - - - - - [/else] - [/if] -[if session logged_in] - - - - - - - - - - [if type=data term="__UI_ACCESS_TABLE__::username::[data session username]"] - - - - - - - - [/if] -[else] - - - - - - - - - - - -[/else] -[/if] -
    [page __ORDER_STYLE__/basket]Basket    [page __ORDER_STYLE__/checkout]Check out
     
     
      
    Log out    [page account]Preferences
    [page feedback]Feedback    Order Status -

    [page admin/index]Admin    Reports -
    -
    -    Login:
    - - -

    -    Password:
    -
    -
    -
    Lost it?      
    - -
    diff --git a/dist/simple/config/brown1/menubar b/dist/simple/config/brown1/menubar deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/simple/config/brown1/menubottom b/dist/simple/config/brown1/menubottom deleted file mode 100644 index 0cb733513..000000000 --- a/dist/simple/config/brown1/menubottom +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - -
    -Home -        Profile -        Products -        Contact -        Registration -
    - -
    - - - - diff --git a/dist/simple/config/brown1/no_right b/dist/simple/config/brown1/no_right deleted file mode 100644 index eeb02543b..000000000 --- a/dist/simple/config/brown1/no_right +++ /dev/null @@ -1,3 +0,0 @@ -
    diff --git a/dist/simple/config/brown1/only_logo b/dist/simple/config/brown1/only_logo deleted file mode 100644 index 5e98e0f0d..000000000 --- a/dist/simple/config/brown1/only_logo +++ /dev/null @@ -1,48 +0,0 @@ - - - [scratch page_title] - - - -
    - - - - - - - - - - - - -
    [if session logged_in][value fname] [value lname][else]Unregistered customer[/else][/if][tag time]%b %d, %Y %H:%M[/tag]   
    - - - - - - - - - - - - - - - - - -
    -   - - - - - -
    - -
    -
     
    diff --git a/dist/simple/config/brown1/rightside b/dist/simple/config/brown1/rightside deleted file mode 100644 index eeb02543b..000000000 --- a/dist/simple/config/brown1/rightside +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/dist/simple/config/postcopy_commands b/dist/simple/config/postcopy_commands deleted file mode 100644 index 8b29eb28e..000000000 --- a/dist/simple/config/postcopy_commands +++ /dev/null @@ -1,3 +0,0 @@ -ln -s __MVC_DOCUMENTROOT____MVC_IMAGEURL__ __MVC_CATROOT__ -To enable image upload feature, you need to make a symbolic -link of the image base directory into your catalog directory. diff --git a/dist/simple/config/precopy_commands b/dist/simple/config/precopy_commands deleted file mode 100644 index 1c60134d6..000000000 --- a/dist/simple/config/precopy_commands +++ /dev/null @@ -1,13 +0,0 @@ -{MYSQL}mysqladmin __MVC_SQLCREATEOPT__ create __MVC_SQLDB__ -Since you selected the MySQL option, you need to create -a database named "__MVC_SQLDB__". In a default MySQL -configuration, any user may create and drop and modify -test_* databases, but some administrators disable this. - - -{PGSQL}createdb __MVC_SQLDB__ -Since you selected the PostgreSQL option, you need to create -a database named "__MVC_SQLDB__". This will only work if -your administrator allowed it. - - diff --git a/dist/simple/config/yellow1/copyright b/dist/simple/config/yellow1/copyright deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/simple/config/yellow1/leftside b/dist/simple/config/yellow1/leftside deleted file mode 100644 index 0e9836a56..000000000 --- a/dist/simple/config/yellow1/leftside +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - - - -
    - -[loop - prefix=box - search=" - fi=area - st=db - tf=sort - ac=0 - ac=0 - co=yes - - sf=sel - op=eq - [if scratch left_bar] - se=[scratch left_bar][set left_bar][/set] - [else] - se=left - [/else] - [/if] - - sf=which_page - op=rm - [if scratch page_class] - se=all|[scratch page_class][set page_class][/set] - [else] - se=all|@@MV_PAGE@@ - [/else] - [/if] - "] - - - - - - - - - -[loop - prefix=cat - search=" - fi=cat - st=db - tf=sort - tf=name - rf=code,name - sf=sel - se=[box-code] - "] - - - -[/loop] - - - - - - -[/loop] -
    [box-exec bar_link]area[/box-exec]

    -   [cat-exec bar_link]cat[/cat-exec]
    -
    -
    diff --git a/dist/simple/config/yellow1/logobar b/dist/simple/config/yellow1/logobar deleted file mode 100644 index a4ee6c22b..000000000 --- a/dist/simple/config/yellow1/logobar +++ /dev/null @@ -1,168 +0,0 @@ -[if scratch members_only] - [set members_only][/set] - [if !session logged_in] - [set mv_successpage]@@MV_PAGE@@[/set] - [bounce page=login] - [/if] -[/if] - - - [scratch page_title] - - -
    - - - - - - - - - - - - - - - - - - - -
     [if session logged_in][value fname] [value lname] [else]Unregistered customer[/else][/if][tag time]%b %d, %Y %H:%M[/tag]   
    - - - - - - - - - - - - - - - - - -
    - - - - - - - -
    Search for product -

    - - - -    - -
    -
    -     -
    -    Expanded search -
    -
    -
    - - - - - - - - - - -
    -
    -
    - - - - -
    Account

    - - [if items] - - - - - - - - - - - - - - [else] - - - - - [/else] - [/if] -[if session logged_in] - - - - - - - - - - [if type=data term="__UI_ACCESS_TABLE__::username::[data session username]"] - - - - - - - - [/if] -[else] - - - - - - - - - - - -[/else] -[/if] -
    [page __ORDER_STYLE__/basket]Basket    [page __ORDER_STYLE__/checkout]Check out
     
     
      
    Log out    [page account]Preferences
    [page feedback]Feedback    Order Status -

    [page admin/index]Admin    Reports -
    -
    -    Login:
    - - -

    -    Password:
    -
    -
    -
    Lost it?      
    - -
    diff --git a/dist/simple/config/yellow1/menubar b/dist/simple/config/yellow1/menubar deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/simple/config/yellow1/menubottom b/dist/simple/config/yellow1/menubottom deleted file mode 100644 index 0cb733513..000000000 --- a/dist/simple/config/yellow1/menubottom +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - -
    -Home -        Profile -        Products -        Contact -        Registration -
    - -
    - - - - diff --git a/dist/simple/config/yellow1/no_right b/dist/simple/config/yellow1/no_right deleted file mode 100644 index eeb02543b..000000000 --- a/dist/simple/config/yellow1/no_right +++ /dev/null @@ -1,3 +0,0 @@ -
    diff --git a/dist/simple/config/yellow1/only_logo b/dist/simple/config/yellow1/only_logo deleted file mode 100644 index 5e98e0f0d..000000000 --- a/dist/simple/config/yellow1/only_logo +++ /dev/null @@ -1,48 +0,0 @@ - - - [scratch page_title] - - - -
    - - - - - - - - - - - - -
    [if session logged_in][value fname] [value lname][else]Unregistered customer[/else][/if][tag time]%b %d, %Y %H:%M[/tag]   
    - - - - - - - - - - - - - - - - - -
    -   - - - - - -
    - -
    -
     
    diff --git a/dist/simple/config/yellow1/rightside b/dist/simple/config/yellow1/rightside deleted file mode 100644 index eeb02543b..000000000 --- a/dist/simple/config/yellow1/rightside +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/dist/simple/etc/area.recordnumber b/dist/simple/etc/area.recordnumber deleted file mode 100644 index 9762c7c23..000000000 --- a/dist/simple/etc/area.recordnumber +++ /dev/null @@ -1,2 +0,0 @@ -#COUNTER-1.0 -100 diff --git a/dist/simple/etc/cat.recordnumber b/dist/simple/etc/cat.recordnumber deleted file mode 100644 index 29087f52e..000000000 --- a/dist/simple/etc/cat.recordnumber +++ /dev/null @@ -1,2 +0,0 @@ -#COUNTER-1.0 -101 diff --git a/dist/simple/etc/log_transaction b/dist/simple/etc/log_transaction deleted file mode 100644 index 9cdb52c1e..000000000 --- a/dist/simple/etc/log_transaction +++ /dev/null @@ -1,115 +0,0 @@ -#### begin [value mv_order_number] ##### -[seti transaction_record] -[tag flag write]transactions orderline userdb inventory[/tag] -[if !session logged_in] -[or session login_table ne 'userdb'] - [if session logged_in] [userdb logout] [/if] - [set auto_create]1[/set] - [if type=explicit compare=| - [userdb - function=new_account - assign_username=1 - password='[value zip]' - verify='[value zip]' - ] - |] - [comment][perl] Log("User create succeeded."); [/perl][/comment] - [else] - [comment][perl] Log("Failed user create."); [/perl][/comment] - [/else] - [/if] -[/if] -[comment][perl] Log("Starting report."); [/perl][/comment] - -[try] -[comment][perl] Log("Past ACL create log."); [/perl][/comment] -Add main order[data - table=userdb - column=order_numbers - key="[data session username]" - value=" [value mv_order_number]" - append="1" - ] to transactions: [import table=transactions type=LINE continue=NOTES] -code: [value mv_order_number] -store_id: __STORE_ID__ -order_number: [value mv_order_number] -session: [data session id] -username: [data session username] -shipmode: [value mv_shipmode] ([shipping-desc]) -shipping: [shipping noformat=1] -nitems: [nitems] -subtotal: [subtotal noformat=1] -handling: [handling noformat=1] -salestax: [salestax noformat=1] -total_cost: [total-cost noformat=1] -fname: [value filter=strip name=fname] -lname: [value filter=strip name=lname] -company: [value filter=strip name=company] -address1: [value filter="strip mac" name=address1] -address2: [value filter="strip mac" name=address2] -city: [value filter=strip name=city] -state: [value name=state filter="strip uc"] -zip: [value name=zip filter=word] -country: [value country] -email: [value name=email filter="strip"] -phone_day: [value filter=strip name=phone_day] -phone_night: [value filter=strip name=phone_night] -b_fname: [value filter=strip name=b_fname] -b_lname: [value filter=strip name=b_lname] -b_address1: [value filter="strip mac" name=b_address1] -b_address2: [value filter="strip mac" name=b_address2] -b_city: [value filter=strip name=b_city] -b_state: [value filter=strip name=b_state] -b_zip: [value filter=strip name=b_zip] -b_country: [value filter=strip name=b_country] -b_phone: [value filter=strip name=b_phone] -payment_method: [value mv_payment] -order_date: [value name=order_date set="[tag time]%Y%m%d %H:%M:%S[/tag]"] -order_ymd: [value name=order_date set="[tag time]%Y%m%d[/tag]"] -order_wday: [value name=order_wday set="[tag time]%u[/tag]"] -status: pending -deleted: 0 -archived: 0 -complete: 0 -comments: [value filter=mac name=gift_note] -affiliate: [data session source] -campaign: [value campaign] -parent: __PARENT__ -po_number: [value filter=strip po_number] -[/import] -[comment][perl] Log("Past transactions entry."); [/perl][/comment][item-list]Added [item-code] to orderline: [import table=orderline type=LINE continue=NOTES] -code: [value mv_order_number]-[item-increment] -store_id: __STORE_ID__ -order_number: [value mv_order_number] -session: [data session id] -username: [data session username] -shipmode: [item-modifier mv_shipmode] -sku: [item-code] -quantity: [item-quantity] -price: [item-price noformat] -subtotal: [item-subtotal noformat] -size: [item-modifier size] -color: [item-modifier color] -order_date: [value order_date] -affiliate: [data session source] -campaign: [value campaign] -status: pending -description: [filter mac][item-description][/filter] -[/import] -Inventory now: [data table=inventory col=quantity key="[item-code]" increment=1 value="-[item-quantity]"] -[/item-list][/try] -[catch] There was an error adding to the transaction log. [/catch] -[if scratch auto_create] - Logout auto-created user: [userdb logout] - [value name=mv_username set=""] -[/if] -[comment][perl] Log("Past add data entry."); [/perl][/comment] - -[comment][perl] Log("Past all transaction log."); [/perl][/comment] -[/seti][perl] - my $out = $Scratch->{transaction_record}; - $out =~ s/^\s+//; - $out =~ s/\s+$//; - return $out; -[/perl] -#### end [value mv_order_number] ##### diff --git a/dist/simple/etc/mail_receipt b/dist/simple/etc/mail_receipt deleted file mode 100644 index 9b50f446b..000000000 --- a/dist/simple/etc/mail_receipt +++ /dev/null @@ -1,114 +0,0 @@ -[if value email_copy] -Sending email copy of order [value mv_order_number] to [value email]: [email to="[value email]" - subject="Thank you for your order [value mv_order_number]!" - from=|"__COMPANY__ Customer Service" <__ORDERS_TO__>| ] -Dear __COMPANY__ customer, - -Thank you for your order #[value mv_order_number], it is being electronically -processed. - - Name: [value fname] [value lname] -[if value company] Company: [value company][/if] - Email address: [value email] - - Address: [value address1][if value address2] - [value address2][/if] -City, State, Zip: [value city], [value state] [value zip] - Country: [value country] - - Payment Method: [value mv_payment] - Shipping Method: [shipping_desc] - - Daytime Phone: [value phone_day] - Evening Phone: [value phone_night] - -[if value b_address1] - Billing Name: [value b_fname] [value b_lname] - Billing Address: [value b_address1] [value b_address2] -City, State, Zip: [value b_city][if value b_state], [value b_state] [value b_zip][/if] -[if value b_country] Billing Country: [value b_country][/if] -[/if] - -Quan Item No. Description Price Extension ----- ----------- ------------------------------- -------------- ---------------- -[item-list][row 82] -[column width=5 gutter=1 align=right] [item-quantity] [/column] -[column width=12 gutter=1] [item-code] [/column] -[column width=32 gutter=1 align=left wrap=1] -[item-description] -[if-modifier size]SIZE-->[item-modifier size][/if-modifier][if-modifier color] COLOR-->[item-modifier color][/if-modifier] -[/column] -[column width=15 gutter=1 align=r] [item-price] [/column] -[column width=16 gutter=0 align=r] [item-subtotal] [/column] -[/row] - -[/item-list] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SUBTOTAL[/column] -[column width=16 gutter=0 align=r][subtotal][/column] -[/row] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SALES TAX[/column] -[column width=16 align=right gutter=0][salestax][/column] -[/row] -[row 82] - [column width=5 align=right][/column] - [column width=12 gutter=1][/column] - [column width=32 align=R wrap=1 gutter=1][/column] - [column width=15 gutter=1]SHIPPING[/column] - [column width=16 align=right gutter=0][shipping][/column] -[/row] - -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]ORDER TOTAL[/column] -[column width=16 align = right gutter=0][total-cost][/column] -[/row] - -[if value gift_note] -Note for Gift --------------- -[value gift_note] -[/if] - -Should you have a question about your order, or about other __COMPANY__ -products, please reply to this message and let us help. - -Always reference your Order Number when calling for a status. [if !session logged_in] -Or you can check status via this URL: - - [area form=' - mv_username=[data - table=transactions - col=username - key="[value mv_order_number]" - ] - mv_password=[value zip] - mv_click=Login - mv_todo=return - mv_nextpage=query/check_orders - ']" -[/if] -Remember, you can always visit our site at: - - __SERVER_NAME__ - -Regards and thanks for your business! - -__COMPANY__ -__ADDRESS__ -__CITY__ -__PHONE__ -__TOLLFREE__ -FAX: __FAX__ -[/email] -[else]Email copy of order [value mv_order_number] NOT REQUESTED for [value email].[/else] -[/if] diff --git a/dist/simple/etc/profiles.login b/dist/simple/etc/profiles.login deleted file mode 100644 index b4cb701fb..000000000 --- a/dist/simple/etc/profiles.login +++ /dev/null @@ -1,22 +0,0 @@ - -__NAME__ Logout - -[if type=explicit compare="[userdb logout]"] -mv_nextpage=[either][cgi mv_successpage][or][cgi mv_nextpage][/either] -[else] -mv_nextpage=[either][cgi mv_failpage][or][cgi mv_nextpage][/either] -[/else] -[/if] - -__END__ - -__NAME__ Login - -[if type=explicit compare="[userdb login]"] -mv_nextpage=[either][cgi mv_successpage][or][cgi mv_nextpage][/either] -[else] -mv_nextpage=[either][cgi mv_failpage][or][cgi mv_nextpage][/either] -[/else] -[/if] - -__END__ diff --git a/dist/simple/etc/profiles.order b/dist/simple/etc/profiles.order deleted file mode 100644 index 09bcce6d9..000000000 --- a/dist/simple/etc/profiles.order +++ /dev/null @@ -1,121 +0,0 @@ -__NAME__ invalid -&fatal = yes -mv_failpage= interact -&set = mv_junk 0 -__END__ - -__NAME__ checkout_profile -fname=required -lname=required -address1=required -city=required -country=required -[if value country =~ /^(US|CA)$/i] - state=state_province "[value state]" is not a valid US/Canada state or province. - zip=postcode "[value zip]" is not a valid US/Canada postal code. - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[else] - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[/else] -[/if] - -&fatal = yes -email=required -email=email - -&set = mv_payment Incomplete - -[if value fax_order == 1] -&set = mv_payment Check or Money Order (will call) - -[elsif value fax_order == 2] -&set = mv_payment Purchase order [value po_number] -[value name=tmp_total set="[total-cost noformat=1]" hide=1] -[perl tables="pricing products userdb"] - $CGI->{credit_limit_ok} = 1; - my $total = delete $Values->{tmp_total}; - return unless $limit = tag_data('userdb', 'credit_limit', $Session->{username}); - delete $CGI->{credit_limit_ok}; - #Log("credit_limit=$limit total=$total"); - if($limit >= $total) { - $CGI->{credit_limit_ok} = 1; - } - return; -[/perl] -credit_limit_ok=mandatory Credit limit exceeded. -[/elsif] - -[elsif value fax_order == 3] -&set = mv_payment COD -[value name=mv_handling set=cod hide=1] -[/elsif] -[elsif variable MV_PAYMENT_MODE] -&credit_card=standard keep __CREDIT_CARDS_ACCEPTED__ -&charge=[var MV_PAYMENT_MODE][cgi mv_payment_test] -&set=mv_payment Real-time ([var MV_PAYMENT_MODE]) Credit Card -[/elsif] - -[elsif config CyberCash] -&fail=../special_pages/failed -&charge=[var CYBER_MODE] -[/elsif] - -[elsif config CreditCardAuto] -mv_credit_card_valid=required Credit card fails tests. -&set=mv_payment Credit Card (%c) -[/elsif] - -[else] -&credit_card=standard __CREDIT_CARDS_ACCEPTED__ -&set=mv_payment Credit Card (%c) -[/else] -[/if] - -&calc = $Values->{mv_payment} =~ s/\%c/$Values->{mv_credit_card_type}/g; 1; -&final = yes -&setcheck=mv_email [value email] - -__END__ - -__NAME__ shipping_address -fname=required -lname=required -address1=required -city=required -country=required -[if value country =~ /^(US|CA)$/i] - state=state_province "[value state]" is not a valid US/Canada state or province. - zip=postcode "[value zip]" is not a valid US/Canada postal code. - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[else] - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[/else] -[/if] -email=required - -&fatal = yes - -email=email - -__END__ - - -__NAME__ account_change -fname=required -lname=required -address1=required -city=required -country=required -[if value country =~ /^(US|CA)$/i] - state=state_province "[value state]" is not a valid US/Canada state or province. - zip=postcode "[value zip]" is not a valid US/Canada postal code. - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[else] - &or phone_day=phone, phone_night=phone Must have evening or day phone_number -[/else] -[/if] -email=required -&fatal = yes -email=email - -__END__ diff --git a/dist/simple/etc/receipt.html b/dist/simple/etc/receipt.html deleted file mode 100644 index bc9a0afaf..000000000 --- a/dist/simple/etc/receipt.html +++ /dev/null @@ -1,99 +0,0 @@ -__LOGOBAR__ -__MENUBAR__ -
    -

    Receipt

    -

    SOLD TO:

    -
    - - -[html-table fr='__TABLEFG__ WIDTH="20%"'] -ORDER NUMBER [value mv_order_number] -Name [value fname] [value lname] -[if value company]Company [value company] -[/if]Email address [value email] -Address [value address1][if value address2] - [value address2][/if] -City, State, Zip [value city], [value state] [value zip] -Country [value country] -Payment Method [value mv_payment] [if value mv_credit_card_reference]([value mv_credit_card_reference])[/if] -Shipping Method [shipping_desc] -Daytime Phone [value phone_day]  -Evening Phone [value phone_night]  -[if value b_fname]Billing Name [value b_fname] [value b_lname] -[/if] -[if value b_address1]Billing Address [value b_address1][if value b_address2] - [value b_address2][/if] -City, State, Zip [value b_city], [value b_state] [value b_zip] -[/if][if value b_country] -Billing Country [value b_country][/if] -[/html-table] -
    - -[comment] Handle downloadables [/comment] -[set download_present][/set] -[item-list] - [if-item-field download] - [if !value fax_order] - [set download_present]1[/set] - [userdb - function=set_file_acl - mode="expire 7 days" - location="[item-code]" - ] - [/if] - [/if-item-field] -[/item-list] -[perl products] - sub get_download { - if (! $Scratch->{download_present}) { - return '(Must pay by credit card to download now.)'; - } - my $sku = shift; - return '' unless tag_data('products', 'download', $sku); - my $loc = tag_data('products', 'dl_location', $sku); - my $save = delete $Scratch->{mv_add_dot_html}; - my $url = $Tag->area( { href => "deliver/$loc", arg => $sku } ); - $Scratch->{mv_add_dot_html} = $save if $save; - return qq{
    }; - } - return; -[/perl] - - -[html-table] -Quan Item No. Description
    Price
    Extension -[item-list][item-quantity] [item-code] [item-description]
    [if-modifier size]SIZE-->[item-modifier size][/if-modifier][if-modifier color] COLOR-->[item-modifier color][/if-modifier][if-item-field download][calc]get_download('[item-code]')[/calc][/if-item-field]
    [item-price]
    [item-subtotal] -[/item-list] - SUBTOTAL
    [subtotal] - SALES TAX
    [salestax] - SHIPPING
    [shipping] - ORDER TOTAL
    [total-cost] -[/html-table] -
    -[if !session logged_in] -

    -Bookmark this link to check your order status -

    -[/if] -[if value gift_note] -Note for Gift:
    -
    -[value gift_note]
    -
    -[/if] -

    -

    -(Please print this receipt for your records. Thank you for your order!) -

    -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/simple/etc/report b/dist/simple/etc/report deleted file mode 100644 index 2e6bb8451..000000000 --- a/dist/simple/etc/report +++ /dev/null @@ -1,95 +0,0 @@ -[seti order_text] -- ORDER DATE: [tag time]%c[/tag] - ORDER NUMBER: [value mv_order_number] - LEAD SOURCE: [data session source] - REFERRING URL: [data session referer] - - Name: [value fname] [value lname] -[if value company] Company: [value company][/if] - Email address: [value email][if value email_copy] - EMAIL COPY REQUESTED[/if] - Mail List Req: [if value mail_list]REQUESTED TO BE ON LIST[/if] - - Address: [value address1][if value address2] - [value address2][/if] -City, State, Zip: [value city], [value state] [value zip] - Country: [value country] -[if value mv_credit_card_info] -Credit Card Info: -[value mv_credit_card_info] -[else] -[/else][/if] - Payment Method: [value mv_payment] - Shipping Method: [shipping-desc] - - Daytime Phone: [value phone_day] - Evening Phone: [value phone_night] -[if value b_fname] -[or value b_address1] - Billing Name: [value b_fname] [value b_lname] - Billing Address: [value b_address1][if value b_address2] - [value b_address2][/if] -City, State, Zip: [value b_city], [value b_state] [value b_zip][/if] -[if value b_country] Billing Country: [value b_country] -[/if] - -Quan Item No. Description Price Extension ----- ----------- -------------------------------- ------------- --------------- -[item-list][row 82] -[column width=5 gutter=1 align=right] [item-quantity] [/column] -[column width=12 gutter=1] [item-code] [/column] -[column width=32 align=left gutter=1 wrap=1] -[item-description] -[if-modifier size]SIZE-->[item-modifier size][/if-modifier][if-modifier color] COLOR-->[item-modifier color][/if-modifier] -[/column] -[column width=14 align=right gutter=1][item-price][/column] -[column width=15 align=right gutter=0][item-subtotal][/column] -[/row] - -[/item-list] -[row 82] -[column width=5 align=right gutter=1][/column] -[column width=12 gutter=1][/column] -[column width=32 align=right gutter=1 wrap=1][/column] -[column width=14 gutter=1]SUBTOTAL[/column] -[column width=15 align=right gutter=0][subtotal][/column] -[/row] -[row 82] -[column width=5 align=right gutter=1][/column] -[column width=12 gutter=1][/column] -[column width=32 align=right gutter=1 wrap=1][/column] -[column width=14 gutter=1]SALES TAX[/column] -[column width=15 align=right gutter=0][salestax][/column] -[/row] -[row 82] - [column width=5 align=right gutter=1][/column] - [column width=12 gutter=1][/column] - [column width=32 align=right gutter=1 wrap=1][/column] - [column width=14 gutter=1]SHIPPING[/column] - [column width=15 align=right gutter=0][shipping][/column] -[/row] - -[row 82] -[column width=5 align=right gutter=1][/column] -[column width=12 gutter=1][/column] -[column width=32 align=right gutter=1 wrap=1][/column] -[column width=14 gutter=1]ORDER TOTAL[/column] -[column width=15 align=right gutter=0][total-cost][/column] -[/row] - -[if value gift_note] -Gift Note or Special Instructions: ---------------------------------------------------- -[value gift_note] -[/if] -[/seti] -[tag op=mime description="Order Text" interpolate=1] -[scratch order_text] -[/tag] -[if value mv_credit_card_info] -[tag op=mime - interpolate=1 - type=application/pgp-encrypted - description="CreditCard_[value mv_order_number]"] -[value mv_credit_card_info] -[/tag] -[/if] diff --git a/dist/simple/etc/ship_notice b/dist/simple/etc/ship_notice deleted file mode 100644 index a33f5b015..000000000 --- a/dist/simple/etc/ship_notice +++ /dev/null @@ -1,139 +0,0 @@ -[loop list="[scratch ship_notice_order_number]"] -To: [scratch ship_notice_email] -Subject: Your order number [loop-code] has [if scratch ship_now_complete]completely shipped![elsif !scratch ship_notice_complete]partially shipped[/elsif][else]shipped![/else][/if] -From: __COMPANY__ Customer Service <[either]__EMAIL_INFO__[or]__ORDERS_TO__[/either]> -Reply-to: [either]__EMAIL_SERVICE__[or]__EMAIL_INFO__[or]__ORDERS_TO__[/either] - -Dear [loop-data transactions fname] [loop-data transactions lname], - -[if scratch ship_now_complete] -We have made the last shipment of your order #[loop-code], it is now complete! -[elsif scratch ship_notice_complete] -Your order #[loop-code] has been shipped! -[/elsif] -[else] -We have made a partial shipment of your order #[loop-code]. -[/else] -[/if] - - Name: [loop-data transactions fname] [loop-data transactions lname] -[if-loop-data transactions company] Company: [loop-data transactions company][/if-loop-data] - Email address: [loop-data transactions email] - - Address: [loop-data transactions address1][if-loop-data transactions address2] - [loop-data transactions address2][/if-loop-data] -City, State, Zip: [loop-data transactions city], [loop-data transactions state] [loop-data transactions zip] - Country: [loop-data transactions country] - - Payment Method: [loop-data transactions payment_method] - Shipping Method: [shipping-desc [loop-data transactions shipmode]] - - Daytime Phone: [loop-data transactions phone_day] - Evening Phone: [loop-data transactions phone_night] - -[if-loop-data transactions b_address1] - Billing Name: [loop-data transactions b_fname] [loop-data transactions b_lname] - Billing Address: [loop-data transactions b_address1] [loop-data transactions b_address2] -City, State, Zip: [loop-data transactions b_city], [loop-data transactions b_state] [loop-data transactions b_zip] - Billing Country: [value b_country] -[/if-loop-data] - -Quan Item No. Description Price Extension ----- ----------- ------------------------------- -------------- ---------------- -[loop prefix=item search=" - fi=orderline - st=db - sf=order_number - se=[loop-code] - ml=1000 - "][row 82] -[column width=5 gutter=1 align=right] [item-data orderline quantity] [/column] -[column width=12 gutter=1] [item-data orderline sku] [/column] -[column width=32 gutter=1 align=left wrap=1][item-data orderline description] -[if-item-data transactions size]SIZE-->[item-item-data transactions size][/if-item-data][if-item-data transactions color] COLOR-->[item-item-data transactions color][/if-item-data] -[/column] -[column width=15 gutter=1 align=r][currency][item-data orderline price][/currency][/column] -[column width=16 gutter=0 align=r][currency][item-data orderline subtotal][/currency][/column] -[/row] -[row 82] -[column width=5 gutter=1 align=right][/column] -[column width=12 gutter=1][/column] -[column width=60 gutter=1 align=left wrap=1][calc] - my $status = q{[display - table=orderline - column=status - key="[item-code]" - arbitrary=order_view - ]}; - $status =~ s:<.*>::s; - if($status !~ /\S/i) { - $status = q{[item-data orderline status]}; - } - $status = uc $status; - my $mesg = q{[data - table=inventory - column=stock_message - key="[item-data orderline sku]" - ]}; - if(!mesg and $status !~ /^\s*shipped\b/i) { - $status .= " ($mesg)"; - } - $status .= q{ time: [convert-date][item-data orderline update_date][/convert-date]}; - return $status; -[/calc] -[/column] -[/row] - -[/loop] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SUBTOTAL[/column] -[column width=16 align=right gutter=0][currency][loop-data transactions subtotal][/currency][/column] -[/row] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SALES TAX[/column] -[column width=16 align=right gutter=0][currency][loop-data transactions salestax][/currency][/column] -[/row] -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]SHIPPING[/column] -[column width=16 align=right gutter=0][currency][loop-data transactions shipping][/currency][/column] -[/row] - -[row 82] -[column width=5 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1 gutter=1][/column] -[column width=15 gutter=1]ORDER TOTAL[/column] -[column width=16 align = right gutter=0][currency][loop-data transactions total_cost][/currency][/column] -[/row] - -[if-loop-data transactions comments] -Your comments or gift note ----------------------------- -[loop-data transactions comments] -[/if-loop-data] - -Should you have a question about your items, or about other __COMPANY__ -products, please reply to this message and let us help. - -Remember, you can always visit our site at: - - __SERVER_NAME__ - -Regards and thanks for your business! - -__COMPANY__ -__ADDRESS__ -__CITY__ -__PHONE__ -__TOLLFREE__ -FAX: __FAX__ -[/loop] diff --git a/dist/simple/html/.empty b/dist/simple/html/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/simple/html/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/simple/html/index.html b/dist/simple/html/index.html deleted file mode 100644 index 4baa4db85..000000000 --- a/dist/simple/html/index.html +++ /dev/null @@ -1,214 +0,0 @@ - - - Welcome to the Art Store -- an Interchange demonstration - - -

    - - - - - - - - - - - - - - - - - - - -
     Unregistered customerFeb 06, 2000 12:18   
    - - - - - - - - - - - - - - - - - -
    - - - - - - - -
    Search for product -

    - - - -    - -
    -
    -     -
    -    Expanded search -
    -
    -
    - - - - - - - - - - -
    -
    -
    - - - - -
    Account

    - - - - - - - - - - - - - - - - - - - - -
      
    -
    -    Login:
    - - -

    -    Password:
    -
    -
    -
    Lost it?      
    - -
    - - -
    -

    Welcome to the Art Store!

    -

    -Enter -

    -This version of Interchange introduces the Interchange user interface: -

    -Admin -

    -
    -This is the "simple" demonstration of the Interchange 4.5.x electronic -catalog system. Links that will help you to use this software: -

    -

    - - - - - - - - - - - - - - -
    -Home -        Profile -        Products -        Contact -        Registration -
    - -

    - - - - - - - diff --git a/dist/simple/images/admin/b-configure2.gif b/dist/simple/images/admin/b-configure2.gif deleted file mode 100644 index 0700b51f7e2d997fb986475bc82e2a7e834d48d1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 420 zcmZ?wbhEHbv}539IP#xi*{1zF_a8G(n`xUf$E|pNK;`1dhGofZD|36+bk5&4XU(3n z$?NN9Zkn`g=lY$84jnsr;J^U}Qh?%57DfgJ0R|nACXk&Dtp62M`cg6{@d`T}tlGCh zlEaDF#7|jLocDKU6Wo6?{%L%_$$ zWwCqB!j^fpH8bWd^=>wq%|Ajsym5?4Rx$0U`GFMLd_QLS#PXU~v$#J*v{ z>RRPPGm55VxJ)(UXW@DAol8VmmfffIad826i{>l_pG%I(4f-x7Jc>SAp&zfvvL|w^ f34HXRQ-ZPa-$o8+W#!GT43`WX9!-qoV6X-NZ)S!P diff --git a/dist/simple/images/admin/b-help2.gif b/dist/simple/images/admin/b-help2.gif deleted file mode 100644 index 38f769f2631b298580f2977fd02d7663e4ebae45..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 256 zcmZ?wbhEHblwsgyIP#xi*{1zF_a8G(n`xUf$E|pNK;`1dhGofZD|36+bk5&4XU(3n z$?NN9Zkn`g=lY$84jnsr;J^U}Qh?%57DfgJ0R|nACXk&DthEY<9a1u-xk83buXCN16EyWq3TaUGfYWnOGUDJTseB{5X1h+gR0mqWf#(+2R@9+qnez S*tl&QSQq3c@EFgUJ!h^4gR4Nt z%)0*hwG6cy{JH9U3p!I4dM;h19^DMkJ_mW#WFAw9~2n*9)*`|f1m3!Vcs^^=2;CHs%7!mc{mHRmxe@cbnK~pVn zVK(PSDv=gzSo&nMnVw2MKO5<+n=JQ)56w7&-0UYX+{o~8?ceh2 z=*z$cWlkS$L8S$c85$dzUmxlf=4xCqiFKdEgph&*4o$M=o+}F(4H$x)RhSF}POe>j KU09KU!5RRD8<`RS diff --git a/dist/simple/images/admin/b-orders2.gif b/dist/simple/images/admin/b-orders2.gif deleted file mode 100644 index d975eeffe331856778f9e40c481365854b76d432..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 534 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 Gbovig1kYCh diff --git a/dist/simple/images/admin/cleardot.gif b/dist/simple/images/admin/cleardot.gif deleted file mode 100644 index 35d42e808f0a8017b8d52a06be2f8fec0b466a66..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43 scmZ?wbhEHbWMp7uXkcLY|NlP&1B2pE7Dgb&paUX6G7L;iE{qJ;0LZEa`2YX_ diff --git a/dist/simple/images/admin/coinlogo.jpg b/dist/simple/images/admin/coinlogo.jpg deleted file mode 100644 index f551ac1bf55bc669b947393e1d02821cb7d07d3c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18365 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 diff --git a/dist/simple/images/admin/delete.gif b/dist/simple/images/admin/delete.gif deleted file mode 100644 index eaf9997ced959f9557c68fa8f0f56050435b1317..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 126 zcmZ?wbhEHb6k!lySjYeZ|A7b$6#w!0CZ?n+lxLP?D7bt21~4f8WMSlDU}De#sRQX? zV6vUUx_l+?!E@buH-6+fZ(IIG_b$hzM;&dUS$Q(tJB7S+Rin;t*!FHu;qD853#0j3 W0&gZQx^w916wl>XUTtAuum%9R4>5rN diff --git a/dist/simple/images/admin/delsm.gif b/dist/simple/images/admin/delsm.gif deleted file mode 100644 index cf19f6182c8696c9fbd8b0ffec87a80c7673dd55..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 79 zcmZ?wbhEHb-Xz@*gEzw-23{>5`lI=eR?ORw&$xvkW+yg@&WtvAFs%+oyn@vrAN+!2FgA&7LgdM$msG{jgj*VKw;b&W_&MNEp LeCV-eWUvMRho4eP diff --git a/dist/simple/images/admin/folder.open.gif b/dist/simple/images/admin/folder.open.gif deleted file mode 100644 index 30979cb52855157110d56344ce09ff29ad726585..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 242 zcmZ?wbhEHblx7fPIK;s49|+FOJoEqm?%lg*rWpeP0~jd&^9#wyELKP?Dp3GZnRyB& z8L0{drAaxN$qFg?xrv#1dJ5jDWk3m!()5hfVjYES5HG_aHM2x7IX_oNAvm?5BsDiF zwMfCx($bVc@h1x-0|OI-4#<3v?F`JR8oTcNGdShBI#=y=&2-5G4yn89^Q6URrb|x} zc)e?b^5WuCck>TOH!hekVIgPfp~Qt9URLv4mOfysiDC|%v8Jjt&35m)a4xxmqX+dL h7rU*#p8HYSdByGb-#i9N&0}bRSuA9OK;#20ycr{J#vN= zx_S0Jgj;;D?C$K$?E9Uae>pk5-e{x0QcqNOc1O3nHCa_xc14%FG{vmW?2Jx#YI>tO zvLia&p&50xvmI@>1yZY8*@~81Bwzy#7Q=LF_Dp0|RJlsCmMpU}DqX2zK{2u-DqNu< zMX$3QWtRmr#dX55d0l0Cm(k<;@@__#9dm@GaF7=1xyj-&zzdq^z?Co$O>5P9iLd@SeA&Oe zzPa7ref$1(dv<<#rNe(aZ{DHxBdqvGHhd1$&woB2|NM2o`}XMK_v6FUkG;M37axwd G`t%=H!_Q^_ diff --git a/dist/simple/images/admin/icon_config.gif b/dist/simple/images/admin/icon_config.gif deleted file mode 100644 index a22b52ef508be1b35c62c4fe36c701d96d38f5b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 153 zcmZ?wbhEHb6krfw*!-X2|Ns974jkCCXHQmER$5w`zrVk%tgL{500R!7_>+Z^fq{`h z2P6+N!-2)kz@wyVkA=Sg$0_y(hC2)A-qc{@C{=9kWIO6ucyCRwkfDTF$iWR>f18$z jaVz}b=u~m=+y2sGr42vp%p(U=mR}I9S+$c%kii-Nk3KDR diff --git a/dist/simple/images/admin/icon_error.gif b/dist/simple/images/admin/icon_error.gif deleted file mode 100644 index 572b6d9554da8fc603a2ecf75a54639c90d5b746..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 105 zcmZ?wbhEHb6krfwSjYeZ|A7b$6#w!0CZ?n+lxLP?D7bt21~4f8WMSlDU}De#sRQX? zVA7bIZjbn_ z4pPjG&gBeWB(}#)w%B1J$=V&vRJbd+YxafAnd_VwtTTMPi@g2IJiQ9s0;}Bo%U!+l zT|(=f1FM|Eo18-G9m5(OL+c#^tL(#@>_h79B3kUinrx!GEaUqu11iiDCz&TqFiV~YWtwSxze(B*ljNz!X|s&eW*TM8HcAJgSw`tI4KwE&W&qI~!;IO6>9Y;8<{4zn zF-V_fkTyd$GzXi!b9R5Whdi68i-iCqn@&hvU#_1pBd=A76eFXg@2sY{ z5N)<~krL4v(k3AXA3Ri7 zdG=zqt@ZP_xgmb8fp2ewmH%m6uZ01O!b%>S8a#0x=g1pog4%*-<{9A^8LW000yKEC2ui01yBW06+zUAVoDv(uinEeMC!mR#jOZ5Zs^l zEQ+!`o}h3@gd7lv#1WxLP>e_gM3wpsDg(kMbGc+TgzMmA#R4`Hl4)`9om9IX;{ky@ zM7#Ennu0Q?d@BZO4H6w48Z80?0%VH<1RNML7#skPj*I}3lo5muACCY94Qx$IO;moR MJqvFtgeoBbJ2$IX>Hq)$ diff --git a/dist/simple/images/admin/icon_pages.gif b/dist/simple/images/admin/icon_pages.gif deleted file mode 100644 index 92be23a5b93c71803e5e74dd162a972984191f98..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 152 zcmZ?wbhEHb6krfw*!-X2|Ns9lU%q_!@Zs6BXAc}WuzmY>J3BiW85s!)2?lIH@h1x- z0|N_#4oDJYh69VM!AVQOofeE*t!xXH7k0AGQz>V9bgVMsSmE)&eqE5~K!RhF n^GA+dQ#+bGZp9sWv`P4=ulJ;Q0gEN7eQipwPkZ|+F<1itkkmF& diff --git a/dist/simple/images/admin/icon_people.gif b/dist/simple/images/admin/icon_people.gif deleted file mode 100644 index c8ab06ce7ee046de2ffd107e82f2d90c9f4d5866..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 990 zcmZ?wbhEHb6krfwc=n&+$H)8cpI&%)y`Vuz!VphiX2M!!CGjKN5S2mT9Gtss;Hqtk8NHWxQ zHSj9XH}utY%Fxwz)0H#QQIpmYQ`a`Ol$Vv1Ro9i`XOfUp5|>mKlaUh>6BX996PDE! zQZ?sOw&D{K<&rmMVP;_%nn3X<3nK%ADuWKl`Jgy)U@vJGpo4cswM>`T68@ zHyMhuFbV7Lu#{D_-JvDI#v!P+%G$x2ozu!heUr42k<1P=^Cok%O?Ea-Hg;W&4Aw(4 z{3vxbJlq*L4l|T;h-9#E^^1G4X}Kr`xC#ph$kh}mIkO*by4WEgPPn6swt#dL?6gVwBI@>D6rtxuN%RF73Tt1PK#s)^7Cap(XRxq8N$i*(? zVbSE)>aC)+>%hvubjD^w>3bzBPYA4@Vb%CbAwYrMo7YHDylbQIqQ+){j1xATUBaxA zd|_)!R-6i7$mO8&<$xxm#yj8Xsn=?LZd%q8&}g*dgyfeeClxGXPIR5wnaV$JTE(|F JdnE)ItN{~4w@Ls2 diff --git a/dist/simple/images/admin/icon_regen.gif b/dist/simple/images/admin/icon_regen.gif deleted file mode 100644 index c4af9496e4ed910ccb156b64587bde3c1dcb25e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 617 zcmZ?wbhEHb6krfwc=n&+|NsBLfB*jZ^XK>P-@ktS`uX$cj~_q2fB*jN+qci3KY#l4 z>Ep+bA3l6|^XAR#*RNl`eEHI)OBXL*yl~;d`Sa(`ojZ5-?AZec4xB!H`pA(ZJ9qBf zvSrK4l`B`QSg~Zuk~wqc%$hZ8>eQ)Irc9YUd2)MudvkMhV`F1oU0qF0O?i2FSy@?e zadBp5W>Qj8R8&+%L_}z4Xh=v%aBy%yK!Bg0pO24^x3{;0gM*!&ot2f9g@uK=xw)yS zsgaS9p`oFHfq|~Bu9lXThK7cUii(nwlA@xbf`WpaoSck|jI^}0l$4aDq@;v|gqWC^ zh=_=gkPr_K4>vbA2L}f`J3A{YDP;LW-)PP0pemTs(ZD;=J6FGn>2_*i`&X1O*H|6{IwmiRm$znc6Xk z1zFlK_%|6CTkErVd1`2QdWjkM1}?LAV_@>|akP>Xb9L$zTNbLU@#uk=?qLRg?Es|dG%O3Uh?RIgsflYUcfTwL7T rqbb75$tZB(0K21%nazvp@7~?Ld-tkUt2#P5%FD|` zLqlC$T$GfQ1O){d7#I})bNji51UowhxEkphFf)RL{>i#$ra6^n=A@(+DH!OPDkN1Z zM3$u%D+FYwm!_65DE?$&=1Mdkc)wuw4KAkRj~@!ubak^PKFiP$;dM_~ShFXgwcTma1-9a6 zP8Br=*jPKCehLj$3F~OJxzZ8J>BlQ!o#4mF!Qtr2ZqCZd$K%M&%aq%l#Lvsm$TX9m zxm(DUpOb5`lw{FDAwg_z>-=!y<_#%hZ>3m9~*Y zmf|SI=-t%C?d9Dp#K#bnK7)scp-RG+y=I=!d`Tf*9&YC4_#HRtmh@Lse+8Q-0#*(a zEqnxYdJAfTnYT3cC~UgWxPaM2hSzER#S0-43`>+86%@q8+SdeB03FxnGoiwv{O)^S zZEhPe?n8?dc(cX(x>_D;aD3wDv#pd!VrAW~pmcPnPAvCb3bX5isrVaN*&l;jqg T#>gkcA}PVl&EqR6$Y2csfmrFe diff --git a/dist/simple/images/admin/icon_stats.gif b/dist/simple/images/admin/icon_stats.gif deleted file mode 100644 index 88ca1e74696e27fd938a628f370d0df29a25bc88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 313 zcmZ?wbhEHb6krfwxXQqgmi9j@>wiwp|6MO%p8Nm*{Qv(K{{O%D|NnmmhKCFc|GBt; z%oi_SJbn7~(W6KA?%lh4_wJ1wH?CZ{a`EED3l}b&KY#wrnKQd~?b^P5`<5+R)~#E& za^=cp%a$!!vSik*S<|LXn>1-sXJ=hZVoeq-T(sE4k--`O)O~@K diff --git a/dist/simple/images/admin/index.gif b/dist/simple/images/admin/index.gif deleted file mode 100644 index 162478fb3a7f690884b1527488a27a9d34ab497b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 268 zcmZ?wbhEHb6k!l!IK;s4|Ns9p|NqaNIWz6de`8}~1{hHM=NFQZS*(y)RH6W+GV>Hl zGEx-^N|SOjlND0(a}zW3^c1{P%YYIdrRf=|#X1VvAYO(;YG#REa(=FkLU3w9NosCV zYLSAWrKKr@;!hSv1_nk39gr0u+ZmYaJ$CK+XdvLQdala8OzZQ4*F%+d^j>G}%y8WC zp)<%eSG-8|P1Cu@LU&KQy{J}XRik+(=tTM=GYuMB5h}jym8(tr{ zTHty08q@pqX@{qpFA8HkpSQf;)z`l$D#)_MC9vJG&E2N2-g4rU9X0k#`er{rBo}PktY8g<%qclAuwOB_X8^p_SNX;zKOU}>LQ3y^g zC`rvtN-a__w6rv3Q2fcl$iTqNpaZfI}mo*BX ubMM=^lVvk>^@~}aS-AV^f3&VBD9tXZudR+|59;m-w3jTH=pio1U=0AHb6^Gl diff --git a/dist/simple/images/admin/left.gif b/dist/simple/images/admin/left.gif deleted file mode 100644 index 279e6710d4961d7644ea2e3e39e6afd300147aa8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 172 zcmZ?wbhEHb6k!l!SjfQe|Ns9p|Nk?9f#N^Ekc`Y?g~Xx~1t67~r%;lSs!&jxl#`jP zkdmL9n3<=i;GJ3ql<+7`&qyuSQOE}IG8|GfOZ1ZSb9EGgQwvH`bCXhw6bvmbO&Jt_ zvM@3*Ff!-Xz@**Nzw-3iM{+%$5nXSNI_AHs_0#Z5ammWC>ec*qNb!1QNo>>3 NI{94w6cGjnYXFzvI#mDw diff --git a/dist/simple/images/admin/plus.gif b/dist/simple/images/admin/plus.gif deleted file mode 100644 index b9719852c46a0409333277c90239b4fd27d12eb1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 125 zcmZ?wbhEHb6k!lySjYeZiItbZG=t(lKHtQYRE6@)k_-iRPu~Cr#h)yUTntPMIv@og z9Slr1Q}|aFyk%;d@@B7v^H$#TXC>uC%VwtOo?5APf%EVgiPQP9=PT;o>s(3N8nl1X Wii{f`SV|+a=f1ZlTPSl{H%0GC7G#ie|ZwmQ%US zXpMKY-8?ObqPSqLS!SlvVnvghjacUYHs`$OJ5{aa;udkr3?dYXTe4)^aNJJo!RegOG-QCRSXtJ*_fkJVn(JToBGM#RQ z!`Tpt)rx@%S=agAp4uUW-zKgu*0^P2P)8Rdc`;z`vf+>WSLH7UuqIfXElzNR?;Yql z^2zmlRlMplwK`-s?3DA1~`nSPvYlG`w<`mtiVzW288tCahPhoWL^_xBx_BhV*X&`!# zsXH93H_SFxgqe(Pvwh_YUeLjFA28_yo_d2PG%(=}CTL*X8;p2^VJaB%0*}1FpeImx zfdLON;0gMvpx+(zdH^{UbW?%U14vzg#2wss1GmZGsx!Fk2r3;wnFGkfgDhK+VGDk? z1<6)mk0ltO!aF_T3L0X-3!$KC4Ekz@8^a^b5QF|&zmiZxff$An@)+6Zu?HA*2ZOGl z-wpJUK_3P5x`19X_{|>tiU(zQP-F{^TY3Xyzs_z)Qke4jajK4;MTJ&xd%B}l{q z4H%FUfZPEz+JNIG;2;*H8i7b%@Pi%*MFU?HAZq{|9GC%s0RRpF1VLZFepRd0OG`^C zl}f2pK700Te0+R(cz9r7Kqiy5x3^!rcCEg?zPh@)va+(cxL7O}3x&drjEs{fPo}4* z@87>aF)=YVHkQlfvf1pQpdbc=;p^+`>FG(KP)H<_rKKeR0KbZa0iXd~zBBmu6HGJ& zbkHumBE`cTv@vO?ytTG7Q)k)RoO7*C23Jp}+pm25@12a#wDpjQzjvcD--No%ySG?9 zFnrN|y3=uMSJ2^=C;9Qhzp5W(yl8GBpJ<71KV{}h`dux=)^T|b|CO{ zrDaBC?fuOimMz`vnJo4CY@rmey}Hi?bF13Y_Kh}XL|5cX1&V4)#GxAXowMgJIs2`r zAI3&kR+DJW9@!1v=Pz3OXHc{m?P)R$KE)}4;Lux``6Pfccc6Kq@%oNb7&IASFKi9j zb#U7p_6j-bb;HH@Lc8RVKfbCzy?^oOVJ5Vxj%RQ=1N&pwIc;eBY>6N0Gx1T-t2D%5 z5dK725#x2?vVx^lFYEh1PZK-}`aA8D0&U+hTC|O0m^6&2!z9WJy&fki&(dF4DeW$M z-NB;pDGPJEcyFaWrjcC>MUJA=D|x2T#lxG*cD$;?xPAzW&iDL@lZrInHpcJN+Tf5P zJo9s{W(D;qvqOZryf3=fvo)*!Umbx?jeE7k#yV`jfo?2&DeW<`@GCI4lHz(aR}VjI^ASg zF~uDwGyD(IgLPqt#g#BD3%FOs_ReJMNVUF(h3P}g$U?irg|IMvb`@R%j@h)f>8hrd;&vHmDq9rE-TC^ zSs0wuov{fx*I((dz7n}8#Y`5%x%P+Jcs+;WZEm3I6e-g9m|O=~h}*Mc z(HZ*!t!qQmo!27!2(z}yBrI`fj!*ALnCpj`y0QzR|4T@bF%d^J=|xyL+_`7&Nw!A z_Qrg|xkJYhxMg&>-^R4^YHyPL#5;}{`rAXFEJEU@;i$IYay{C1{Lb0=aH~nYUZxrm zs%*^;P$dvfsY7u8jKt0ek;v5J@l!?q9Y=EYpizO-Cc9K=cht!k~u7YRc*;H z^C7r{P9-K!wiRV!f6vPz$B3t%oIPCir`2nF>Y$-i7*{H)xf@!-+az9EtQNGA*vr=X*^|3RG;>6P0GQ>i)ek#yL zZcXuxe`5|tF*W;SJb|FIrZ`u}o7tfig6=dQO3B;7SL%hUVHzS2bU0CZs?+i}>6rUz z;>}vKz4q3&<;7L}v0#hq$2(1`YD9$Me9Oy15kahsGTE$jewe1WUXDkRFf8Pz@q**G z7Z5fzcuas8W`5HH<%GrSUaT1*mM`Wym)BUHfs@}JrfGFL!F+1YYE$E`p}cwF+*@x$ z3CVb!OVC@s<(>F4n+9G^EC+6sMbTaF8r5)Kp0Vr!BAY%t4Y%f5+uco4vtP%E{TJ~^ z9&ZZ~fAMC-3r~m)} diff --git a/dist/simple/images/admin/reddot.gif b/dist/simple/images/admin/reddot.gif deleted file mode 100644 index dd62ce25d048a302f5603f034f697eb70e7eca36..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 846 zcmchWF-o3c5QIli_@iJSgz%fn!a|rPAyt})ppYvFana5~uoeW*uw`zLBLvc<*n8v* zDU!{z?;*0q2g~lx&dk2w`NgMq@2@x7=$F(J)t%kZ?QTt0)sU$LRbR^X(pis4;F(BwB|(9O_`h!7sE*Ov6jr5 z$1%RHdrxtlaBN;zncijexW2rb(PhURVJRG>MS5e`LewwffJ|$NT5+PkXQ4UjF>{^~cM>!JEsI Iv#mb-14~2B-Xz@**Nzw)%~qgf4szES6oR(^g_8+4;}QR+O8Rat3Y55;}UDY3n~ OBkprQ{}oXN25SJ7EYJ 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 Gum%9J?KeFD diff --git a/dist/simple/images/admin/widgets.gif b/dist/simple/images/admin/widgets.gif deleted file mode 100644 index 7571763721c685272b81cc96abe30223b1651130..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 91 zcmZ?wbhEHb6l36GXkY+=^0rNi|M+|pQ&JVmGfOfQ+&z5*7!-f9Fmf?4GU$L*fYdTD pDYWzpo;dqz-Yhn`*~^X!zSvvgxhym>qEvj9mCW)(xy!^DtN}7P8s-21 diff --git a/dist/simple/images/bg.gif b/dist/simple/images/bg.gif deleted file mode 100644 index 4be3e88964bb8ffa3ca810f02b51a904bbeb447f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43 qcmZ?wbhEHbWMW`qXkcJSo527Cia%KxL9`Bt0Ld^gF|`CTSOWl&c?FID diff --git a/dist/simple/images/blue1/cart.png b/dist/simple/images/blue1/cart.png deleted file mode 100644 index 27d60b8efbdd2e950f9a65be4e59e36a4cbb7f70..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 288 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 R_9~#w44$rjF6*2UngCVPP&)ts diff --git a/dist/simple/images/brown1/cart.png b/dist/simple/images/brown1/cart.png deleted file mode 100644 index 27d60b8efbdd2e950f9a65be4e59e36a4cbb7f70..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 288 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 R_9~#w44$rjF6*2UngCVPP&)ts diff --git a/dist/simple/images/clear.gif b/dist/simple/images/clear.gif deleted file mode 100644 index 4be3e88964bb8ffa3ca810f02b51a904bbeb447f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43 qcmZ?wbhEHbWMW`qXkcJSo527Cia%KxL9`Bt0Ld^gF|`CTSOWl&c?FID diff --git a/dist/simple/images/download.png b/dist/simple/images/download.png deleted file mode 100644 index b784bb59fa9c19ae321676ce005192177d9b4502..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2175 zcmV-_2!QvAP)f$jHXV z#>B+L!^6YE!otD9!N9=4zrx73y1=ow#J#<}zP`S>xw*Q!y1To(wYa{uwY9dkwzIRd zu&}VIu)U|Px~#0MuCA`Cs;a4}sidc^rKP2&rlz5xp`xOqo20j%r@EA(x|O24o1w0e zp0|maxQ&{#kDRpt005AdqnV$qlAErWo1ue{sf(1SfQ_b|ot>YbpO~1Ko12@KmX?&1 zl#!8t6OxZRBfPDZlO$RqD5t-Z+w+xbdz>`iEMU@XLOBVZH8ZRm{Dq-S89+? zXq!!DnMz}pQDJ~xZH!iFk5XleU220*Vu(&*heKYJNnCTSi8@n;G);glO^h#0g&#*emHI5E9iUu=`1u}~bHG~2$hy*QweSLj; zdU|JY;SLGXlQ6^YHDU_Z)9X-W@ct$Vq#Wf zd|YLCU1W1#VrWoZc0p8nPFr+MT60)lYgt@k0000)QEEU*I&CUF zV;wzw8ajCZ000vK~6BQK|85t1~5gs1iy?dBO zLl!rrW$UGSLKY(vd7Fr)8#xV}7zv=@G<^OuF4{7kUz%v{QmaT4Bp{OjO+;T0PpXDs zYN-{z9KQrI5(c<5?L8XOVbMgyjUv+A_&Kn|=N{@9KdjW_2Emf8j`8zws4AT^9eSc! z=oo$mG5fu{ zrq8FpD#=l0BQk>#@Egv+<)+8|1WI?^OFMM4Q&9@*37P3QPrFlXSFsmz&KL41t{IZt zUq{H8J1u00U>+)5c6G8qlEfhbk((3{0t~xK64mHXfob@sg%UenUsTq2P6H~iVmo#N z4*1|EX5KX5_rtM_S;NlBfe+3>SG8%}1eHi9I5pvw<4#~TiorD^Z!S1i^wJK-lu?vU zD%9xXQc&act{Scr)7E<|WQ2pndwM(LbS}Ho>rL&+no=Usxr!M>Q8rPdQbJJk-;X$2 zu9!eYDHW+ygsQ?-)jd#Qv^<)NJ0neNXKDr~CyRub$K9YGY$Qp2w1boTXwChSj6`ly zfb|%|uFU;(D)g$$wTcD@>fyR}L1X^&(?7A`P%QoC3>r5ZK0UkCrVmAB?y`?j_ZW^d&3w6e ztPq?TMEGQ(3cW6!1T{cmMFRb~CviT!H=_o1B7URy$Y9N94i-z`j7a#zr9x-EZBR6E zUT=CY5?`{;PGVQ~6;e~;oFp#8?)7>TSkvY*kb%XVA$(#{p*E+WXgcA&=_HNV@t??! zt5p+r(Is7^E^XCx&R4TD%G6cEfLHE~y|v^vemTQ#c@}pJ&}Rb=BpPnVG~j8wh1`XQ z?SM0mFA9?K^^7Zfsy*DQtg(c!=Hi|NArPipTbMt0`zi|Ysg#HPdn(txTY!yI;4i%% zFJoDSJrCbd)$*0LEHwM*ciqj_%ng!>Iy0~WU!;j`9#P(6V9kpmtjqDW*V;Y|d%#U7 z+KR&3TLq$hkUzD02EICuhRL)E{Dp$IrnQAhY9mW*bMf=Hz&0u9DI3JCfi)qmdr_4s z{(G3w@b5%HwSzXE!ol^=;RuRqijjX9`>CU4%OWht0VPa-6**o0cwT)o=&4NM*1(!= zp{x_;uS-+jnQlFTVSb#I^#YdeDtQ#xH+FO$j?`vcLH)n_;vWKDtM$;wWDJ}K{N&?o zR@OCbJ6zjA@Pldrur{y zN+pwa3;=V>kOG(re;}J2G<^TVB4_nWB)RCU03u-|3!{HlIAHcx0=x zWj7EWVOrpqGtJNfE6;d$L z8^sdzuzO{VE`(KYFz}VsyS1xS?LV9X>4Jp!t7iZJ002ovPDHLkV1kA? B_dWms diff --git a/dist/simple/images/items/00-0011.jpg b/dist/simple/images/items/00-0011.jpg deleted file mode 100644 index 3f7154df63f73363fd69a8aaeaef331560c48342..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2574 zcmb7?XE@sn8;Ac%j2JPa_J~lkgoM!AZH!Y&P^%oPr}iGNn6+xu3e{2^6g8@JQ1diK ztk$MAqFNDJY0+pEMZNmrz0T+N_w{~$_j5hh^_1-J-6 zSy)(En4zq!tZZyhc1}2qlY@g(n2(nTL>0AMf(0)a4rK}?X}Lm)7~3t{3zFsm8zL#81sJL?iW=&reo%4Ka}t+=1BcM~ulcvH=j)~kXl=EO)d&+%FVtL409SQQ zYm(2lhEW>ReSr_A<4U5%TDRZ%2cXf@&0DNw$}C%ydz)r$u6O9hKWGxNq3#S}Q{h@1 z|EI3M1p1bU%aW!!mQf}))2qw@881JW=vY3^pFqgc%IrQB7#!ySLhx>Qkz;cM%u%p8~z|pmN z{@j@^v$7r4Gq`9?CO~=m28ii2al3-CV11S<) z%!1EK>iMd;<+*vNY3QgCfro=aUdbXYJnGB4t zl8O};U*-me9&x84|w=WtxY}#LJjYD zk~Ke7=pB1SdWcD4rh4O@O`w=r{wt|C5~(GDk>{bB{hC{9 zKTpoa)uQ7|6u$|0i%h<%br@^E6-x1Y?h}LVV+9Fz5$=Sp;EAa@-!9u^x&0YGlMo=9 zEPHZ98<}5WzgS{Z!t$=gmj$9X?yt;T#vG z^=ZymYpHJ}7#TH@G{~Y?4m|k1?Dbj~0aK=AsxB)=XRxyn6O*1dRZ@jib zpRd=zA#%IVNi0uG;OV0yckI|=!s|P~IhY@Zf6HZq=aWlx%37_1EJxbvid4k#Bts8yjraRk(}r;mSJB;Eo;2il46){H$S z+Nb0eo#uQ)KeBg}2jdO?@XXvVgx=mZo!oFb`bWtz*Cw6C{loZ(-pk!*?!qX4?B26j zOMTeLYIh;Juy1~Q=NsxZbvA`l9}(LjS$b zPrXf_c1bukf(#R7NZ1;`38C8XogIuk9`2)+zn(n-)_hzHkgW#S{@w|<8^Ih1if+4~ zK5fiF(Uj@p(&6ZU1{-!+u`KCfCzr|lyaHip)ksDc<6Lk{3TRng`di2e@L&eU;L$OJ zYq5y(_SPBO3NlyBQ_a=|q@hxfsZ^mHO7^;FMm8X{3lI;9vx?q_WKm_f{V-S|D^Bwg zcy0$nQmfd3%7m$gm)SESC_6TC`sG1%T#RgsbB(2Wb3v`2T70zs?Sb3kYd4s=-ooR( z!q1PNvtobq;wH`f*f`Ci9N|%+)>+iJ9qnbpc=4imWDAbav4EMFjim(QI|!?bUXx3L zWkckRlDlDca=J-ENd;t_aFlvG0^zLFi|6_d>kp|;bonw6!NZl-lc|7%ET1__qsu>V)6_O$k*_*}dLLCU-0Y4`$if={ zH*I|+qmBpQ!1Id-Rfz`)vyDALYB9>hjTNT_S=ZSwo-p1<;!1a;(Cky`tX5p2{ diff --git a/dist/simple/images/items/00-0011a.png b/dist/simple/images/items/00-0011a.png deleted file mode 100644 index 27712516a348fdc97a0590aad8307896460dc7e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8525 zcmV-TA+p|zO-@G*3K|Lk0010KNJLTq004df003M700Za%000000000000000000AM z1i(%J000U`QbA1s00IC200003=y286IRF3v4M|8uQUCw|egFUfTnGXH001W?mf`>a z00v@9M??U<0KEXcX+qVg001BWNkl zdrE&^nz=o^{#Kcv{!|J-JRTnZFTk&RR(~$q&pz-!{^&oHx_?Ld`=9>L&wu~l1LQZv z|Fdio2>j0PKK|jK%%xu>NQsZn67+S?@Rzd@xZfI?0?xATc-rgV{g=0oPx{92{24TU z>vj1jfB)g(t`WB!brPGxpBj;{4hB_{q<{A^lg@9{1Z{{~LdO z_w@7i#d7i1v^anJ?`(eK2Y2&h(7=0Z4uH^8z`(6Fe=O)RAn=|jJaW=6bO8bIDNw;X zVj=_)%)bFW1-Dcoa~uL_y*Uh@g9NswS=dPr27>Acx!nZl?C(i0`fuPO!Wef65J`xF zNJ=6hq2WS_v``os$~yss^c#QcVV+M#`7-H$`1cIGA6!YVn!*Bz zE{P}+^VX_CAS=2wHNxq^gJ1;(0!@NQlcuU5=Z%YqiZD+1ZdE4i9VW0(j6fwkpuiX$ zKo}&LSaWc}1JxMJcR^jl2sEh{09b&;d`US>D51TdGOr4|xN!evsXtUbRa8K$fohlX z88pcx05zp7lnbq7kSU=Qf-p5Icv~I-TIFn<%>m4WNCQd$P>_TUP7Q4b2$X+afJp{bFv)i?OY&JLNSB&6gsL%B#3d7+i-|c&QA!?18W1+KQi**bXj8

    9O_^OsPx`k!;p6ZkVLvvyG`7=)k2f*=OFZ9 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 HAt3kF|9&ZL diff --git a/dist/simple/images/items/00-341.jpg b/dist/simple/images/items/00-341.jpg deleted file mode 100644 index 382e2d475688f24c955e1d6cfb1b21b21e59198b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2621 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 diff --git a/dist/simple/images/items/19-204.jpg b/dist/simple/images/items/19-204.jpg deleted file mode 100755 index c1b811f0161be40c941dbf04fda1123e5adff622..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6233 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 Dc0j8` diff --git a/dist/simple/images/items/21-221.jpg b/dist/simple/images/items/21-221.jpg deleted file mode 100644 index f698a1be9ec58263ac6c6520ec4c5ba7913b6cb2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4184 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 diff --git a/dist/simple/images/items/34-101.png b/dist/simple/images/items/34-101.png deleted file mode 100644 index 6e2bf2655e461fadfa635048ccce81d5e39f4262..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2743 zcmc&$c{tPy7oHdyGnSu7b~CcCV<%*ovF}TkAt8oA2oX1$?3AlAVPuJv{TA6PyF!v> zWUL`s$4w)<%;)>B@9*z?H&j$q{#^q&9FBy;{qEspCXxP!`F;EU;1j8n+rM8pAx`3V z=AXv{0|WoO=a66L5E1XpW|KF3)5*KTHw?H@&?EK3^!GcRc^F6YVjD12#O@7d zD&zJxyijCMQbh0ik#+Z9i!c#As_9#j;&?z|t!6A_upS*mFFt&qVf|}aL^pP2J?yn& zb8PS-Y+f;8WN#O}$5^*1iGDKj^T-M9kwu)!cWoJs`tTN@{tSMG**D$D@p z58{$N9hTP2PYqoPe$HQdRL8DenNA#GC?d*$w41e$nITmW_$zjGj^wiAJk?h&f16&2 zcxha_7ibqTTjq6-)hI(=Yn>@_hx)METBfU~jt>^A+8ODq3 ztI;K8r`q2ghtL-Rz~#YXS}Honxv0%B&UNUd57Y88-}Q$R z_JSJW4whx`7Wgr|;{1k3MpFg6km)b# zdTPn>ab4q&4Kag=vtzA@#&qSRA21MTn_n{eeVpz{3Td@w~;a(n$WcmE?4zojG7;hShR zU)0}L5+w73^BxHR|*UwtBsil%w4)!};v3|*c9Z2`i5G5|o1e;^gDF877w}5Xs(48usj0j@VY!g1G?vw&XN7Xzz$VgOyhj*~0 z?>jahCYcp!P6^=oR!TWfu8ZSEIM=dwsxreMq9GbZeHC+rRC&icEcq0ln~N_Z;SnxV z1D#2Olh23|j`Gj63G5aVs3*^i!^;LZRB!4d+VAw;FfDTN8cFyC`KGBg!(SXHKyHum z^8#PHuMbFQVGx}q3a1Bm5$&(4d1&fnEAjC4O{UVQl^!5v@WG!S18-%Yj}!E6o#a^; zppITq2#}AsEE~DBPn#V3))hdKww8@wwv9d$W+3E3c>fg!Nk^QSa)=d=ylY;Clb)t( z3-vHXdKdPyin@EY8<>;m=^TZ_*JY_^83vGvKI+Uf=oJeGZX_{SQ6PX!)~QWsqNVWW z0?`*HJevbJD%57{BHW@d{&}JDOOLR^Rf}Om4Wl&(ceUb{P4alSB0Q*Wh~V1x{DMHj zs57-~VbGJa4PU7Y_oB!w5Mf;b(gknsSt$kXWb6XZg@;=ebf)K=`@e6Kn}?>7a(WVV z=gV63&wdG~pm^ElO>YA?fhvC*zsimy>~c|OR=~k0(dGHjCwDBF2hFlX@8-f{w^=*o z%sr9GSjxzT$t^nh>Tta=xhYDuH!{p=WvAAi*GavVg3CO-JVq`h?qw;8R-&~la&fSj zV9icJeR(EpSR;ZOKs8Z$}cSNW-JlGJD8|K;y7dB6~j9km}+Ff>>JnFiyCJrzsE*Ms&fy zLsT}fxplUyL^-O`ah0*IjoY9lU+iNV*lk@!`n+Y$8(;Kk#O!IbRoIoQjgPndyFCC^)Q1Po!V{ z&%+sjvS*$da=eb1j3fD=QT|h+fuq5%~F15T%+f! a#w0z$^x>WptsVI9BVcN1h55_CBkn&qKkJhK diff --git a/dist/simple/images/items/chair_car.jpg b/dist/simple/images/items/chair_car.jpg deleted file mode 100644 index 237bc4cb57f5a63aa68a7be8875397f2541da103..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3495 zcmb7`X*|>o`^A5=8Oxv%Z3Z)$?E5|>``EIKHA~%P8^#u*EQyrtJ0p>@jXf&EV9F$W zwipyiiK38Dw#?&x^Z!3@pY!heoO6B8+rye-%>hTu@TPbG1OkCCfG+?5>i`fo2)r5| z>_havhE~MkRMD0`?ty++LeSPef$rX{X}|zrXJdo2!Pwz&I0pwiCxV|F!Nr9*$#;~O zU+9#Gu+S+K3XPQ$N1v7vMWH0rC1n&8Ra8_&#BtghN@wMiRh0gPfH*if5L}28+}tOW zFer@D|14GqfMf^UfM^KlGyq0|AV?7FH6RE8U@!y({J)@V5EuZ4|7)H-0)RmfFcb;} zbAUMhjex)q0E&cR*!UFnj-Do5;SY*^49^r0#VRS=xHU5LkEtA88-UEok$f1V>bbtzL zyQd1jGUI-g`wkErUU*Ms3x=0!EbHu8_{b+>OyT+0PSfdQwgjpoN+!8I@Y}6TUuEH; zBs04|0xJbZnI1OkIM*@y%M^G0BYbuuv;4*W0i*p_GL9@yp?`lYKkGut1eRi?CeHNo zMZ0$$6$246LK+82pD)Ehi~dTK-0#*Vsc)Fw1WJ9JCcYu3?f|P+u3^=(r0c0~Oa^Y# z+#>CNwDm#|eil;epue=3)!Ssv6d@tOV99_ArOhcw(p!PNMFPs?;!uY~Ro(NxCaz4> z#p7WC0~-`sX_I?aoR~{K>>H-`E3$2A!KUCPXVb1+)AkI4{I;m$nQ$$%c&^mXR} z=rS&gUt=pHef?s6ymtdmHd)77@C1Kzc*)?+YGvhM!{gB1Jx;$11Fy4!Gc3PG=L){! zke#?4?P30m%?vH;wHx>mhA0alpyD>Pn6k6<0crVUem@GFtfa7K-Ouq8 zW$XDm=CZoAwl|(mO&0Bfz05t^^NXLZR{g9uGgD>%4d9c;Pu#`#e77b|I;xS={b3A~ z97OOVn-Kj*@rG{#5}*_|&UgOUq-oHbv!$vRZ9UG(yimhzoTrg+c$Gc3T??rIeg z6Uj5qOq84FM>4l~c*pZXy$RxJ!@M}&6v)Wj)~>yW^0LFEQyz!&tm(Zwu19dZq34Q8 z%THU&C+LGL;C#M_S#49#Hy3NggJtnaVUlg%;$P0I;Q03@C7h19p`huTm6g^pAg%cb z?NTSOFrkohlEKLVf4nwPOR@_~A|~V~i@U#IeoAfJ5HUM*{0%;0LIWKUJCU={vLKZ7 z?D%rV?;g^KuDQQ4RG2SD>y+3;U-^}H-r{6)klT1jz0CMOrmac*4w(y={EKsVd%Y@~ zzE{=N{t%;vKwJ%-^-INZTUtpgYZdRX85_<9*atfwK!J3-Z>{#JW3F6nCSo_r&Tw_} zN@(luz9kbr{(Zy((ka#j2ut85V~&ffb1K3#a1y*AqC1y3s;1)eC{kkwFY{o@z+!xUKnZ1{bS z4sZUs`;yvGmb2|8_r$`VDBXhOX;hVQ^L`@o=rhWFr&D*&KH_bt+mhoRQQ1>fD~K{# z)a7cFv+VI7)SxPbsS@h)eC>Po8GlnxU&Q0TTYpWGI?HC+RX*v#0-h%C)X6bkN7xtz zx&`#4sH{Qf!VNZvP-a7G3+TNhi-acVr5{w5d77OKamfK5TotNH|0zw`O2$3qF{ zSNFma^@B~<#y+YJYY?5NZ)b@u@q8--pITxRg+fwBBB+!zt2NsFRJZGdcwMy}+d>%M6`!_|o?ma6nyP&ZHraD4xRU4+{pexS z7)ioUUH4dCi8nJn2dpmS({Mz7%#wDUZ%0px#`Q4Qr6%aZ!`Qm$w1;nv4M7D) zmo>juFnhO)31p|q)hDAK(%AbpY~jX%RH=5+`pA2dmDR3A?(2}mb6gf_0~R#o>@4Kd z`A%{Ucdzi*rtt0H$(7D#<$s>G@6Tmn5i>2{W9h-6_UQ)x`sSUoZ@#>$eBB(c{NgL! zEAz?h)t!gFmij}tm4}qmgRE}2WhLGG0n4-aaP``%;smN-Jot|$Ek^3tWckx0 zVvGYe*=o9wzM9>|rOwU=TiZ8_Y6n?3 zr_}vS9^%aE4@wb^k0<0{o6yIMuy5UpRw>$dCXebPA9O-;TW!t;7bmVi5O&Yrsu=Vc zG0h4SC6g=`7jh_)Q=4nf8Y>m|v(xjE?>4(uh4ZPn>3`v~I3iP?1-3b!P5$djDcAFj zj7Si`h)1RL6x!bwa`qn1eO1($At6AaDU%ugotk%<<@8sb@~58{z7CEnQ=g?P!1rtdiv2_UJ%?oi;0mzy%E?Qk+F8D57k$jak%ha7DTi0|743rsHvrX$recyL^HD*cSd;zVrsz@b)_VvCD=X(fmg@@3_dFpQKE_6(BULKpHW=*IyLC>!YoHmuJ{4M?C z`gD_CWE7U>;$opD?1drddnSvR9b*AjOuyAAS$%bCuAMOck`3r^g@mfr{RrNW_CD?~ zw&fz-=h;ThlM6#@uBQGt;TN`9UGHF}2n_?6Dd`bEWm`X3Va;X+kZyMB^_tde++XfG zm`nq^w&TK)8U`@*tGNZ1oh*f;j2t?J^G7MC<#YtYEAHAl_6Wlyg5oBc);%c0j=_HAXF z2^HGh(uqo?xu%)PZFgtR>;0~B*!|=P{%lohmmElmCASMjx`kLR(n)QmejGe4}oVz*i`v4_LAYc6R zXSN9zWT)Bk61hBQmd(8N_~qP_XqUTo}f4jQ- z`%;V$jlCO&I1`~BQrdjVNhW6q5?ReF1wm#L|3^Bt+-Q!@>idP2BYm1bmP z*M+~BKh4-RRQhg9QmPU`+&32YbZ?lRBCZ&&HzR%ePz52~WJj3}INIyz!nByj zAx~4y&1sa+XlcDkvOmDo)>cMk4QOi=pVFJo-e=a{YW*nH-#@raHwxd4uSX=|0>#%w z9sk-K{2atZskUz3#{ANAa=LKQk+v;=?ck1W5LQu$^A=OAW4>Rl-nd%X$lo99XJZ&u zBgqgEb#iikX*&N4|4$I&)bkCUPo57{>Ic!NFO6r~Km7IKvJ_{84s~qS*4CXpH}hit n84GwNYaU5w0eS6>2dJjp+`wIobPOIsF30;yOEz+du-^R#7Een; diff --git a/dist/simple/images/items/golconde.jpg b/dist/simple/images/items/golconde.jpg deleted file mode 100644 index 028dddef524f680e181a94f024b141efcf7d4c60..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4154 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 diff --git a/dist/simple/images/items/illumined_pleasures.jpg b/dist/simple/images/items/illumined_pleasures.jpg deleted file mode 100644 index e5f3109cf7873caa59562b19177dae8213136331..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3228 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 diff --git a/dist/simple/images/items/irises.jpg b/dist/simple/images/items/irises.jpg deleted file mode 100644 index 18e530a9d7132f096143ce2afaec31813de793ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5058 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 O(Wk)7I(`1L&;JMIT#@(y diff --git a/dist/simple/images/items/loose_hair.jpg b/dist/simple/images/items/loose_hair.jpg deleted file mode 100644 index 256dfcf9643303d244056061fb046a4438bbb7ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5015 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 diff --git a/dist/simple/images/items/my_gems.jpg b/dist/simple/images/items/my_gems.jpg deleted file mode 100644 index 30f84bb6e2e094289991c7ef2ae6fc2d5a25e0c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3087 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 diff --git a/dist/simple/images/items/okeeffe6.jpg b/dist/simple/images/items/okeeffe6.jpg deleted file mode 100644 index 660a0badf12ddc53e3df3cd0c575049a7e7272c6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4023 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 diff --git a/dist/simple/images/items/paul_harlequin.jpg b/dist/simple/images/items/paul_harlequin.jpg deleted file mode 100644 index e0526a6875c976373607560c46b25f0b6c6ce721..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4289 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 JEbesje*j>;{PzF= diff --git a/dist/simple/images/items/pol1.jpg b/dist/simple/images/items/pol1.jpg deleted file mode 100644 index f6f04e3ecc688d9a20e035ec72480e0d4a2c3409..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5045 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 diff --git a/dist/simple/images/items/poweredby.gif b/dist/simple/images/items/poweredby.gif deleted file mode 100644 index 2eaac4229905b9090bc2a76220d4e73d7ec4d660..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2031 zcmeHG|4*BB9{)T~pSDl?wB>1Ox2heq3@_N0JS7+CrR+74En#^Xi)oOLQT;1K>ZnwL? zzkg_GXn1&dWMqWrd7sZ02n2$`U^pC(L?W?REFO=iQmJ%0y|S{B&1MUQLa|s}-vB@n zAiECfA{5pkUVxP%qzVwpLU09!Q{YR(ND5+E2(LgO4SWiQ;^2;fD+2XF&<21G0O^Bl z5z+-1jzfP8x+7o>LsJk88>|ly55*1VEJRiymmVK4`wJ^)%DkUa2l z7>+@I1iClm0WfT6MBCqW|N6aslHnt$+CfA^~Bf&KV6YjFaWt`mRN1Y^cK2 zccT=2_39tAn1?mZSVW^0?M9iT`#SS7{m`bKzs-dcQaQ47q2&dE9Bu3Sti%Z>UXtrr z6f)c(rewMvma^vP@$(rRmY*@R&UN1J(3G|GI7Q99In)MLPq zLR^ba)83`Am+&3epQJ+AxbQwy_sth2d`zmHZlmLQ7*@emCJTjmG-zz-LvY!C-f?HlG^R`=9t#C46oFaJ!5nwf5Ib? z;fb-by-t#m?7GYFjAcG&D?4zF%#mHjUrjKzYo-a>Qc5Hx`)U{L>g~zHv!^P9v{2q@ z>b0txnK|Om=wg&t+4|;c#*B3{gaQ#W8Xs?#j!Zb>2mJ`@X!L-eby-z0!Q| zXj1VoIWw+s-MDsm%F(inBgb9O&9M6UkU(XYDQ#sZ$6Q{ji?HxzkCO05yX3;)`U1I? zmE;ecwm+v&QqJ~eTw=ehw@c26Fss6$RT5O^s_RWhgDJnHtPLFH)y+NL zMWq9o?8-{@f|WK8%-?csYOov%^ymy3X>H$~#TTqb7hhf!DU+AWlyi1f)tSpB z#g?F!P&_tWvT98FJGiv6>H}6{uFeyY8vQ#qO^t3}MkD(=TB80mX?)9CGtV^y4*1z5 zwf~Kbm9mlEF$wll$)>UB@=Meg*=I9k?L~&ax`Xt7Pc>@2N#)MaZ?2Or+(o>d=yh6Yi2Rgo1Y$BCJ6EXyV^yjXr_o7x()g6Up=lzd|J~c*_>M<-Z~w z^B0Gf@Gyjo;Do1$W1a*~()!0On`wmUbI4eo)~gbW=*s<9EQxIdA- zx?7m0tHrHcS2N9p)z!EFeek=|=EZv}W-+3!kB~;+exW`0{QO>|ef_T-PKS6Io#<}& zr@pJ9pW0^pDu1Na-`EfqNUnt(EiAfy`k0US9AQ;Qu^(^#qfJCJ0u{}zX$J6KlEXJ~ zLQyM=4mFXLnv+QOgWoWC4>zc0JI?DSa8d5eEiHpq^aJ>JZ49Q%#eXy*vv`@qNk1n% y-njMZQpN56Jo5fs&9Gh)V8k6KRTC#dC*D>6y1D;peec&VpM^W`87yiVwfzjkRbj~h diff --git a/dist/simple/images/items/tshirt.jpg b/dist/simple/images/items/tshirt.jpg deleted file mode 100755 index b18181027d900baefe180c0feef0adbcce2d8892..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3756 zcmb7EcTm$^7X5|L1(7ZgKuYLFX#!HENpB%E1%ZIn1Ve91QIHQp?|}$XBUM1Uh5o2bgJr0^kW4BnVJ2gTTz7iyi<1 z03b^6??L|yYJif8h5}6cN7cFlP=LS`U@9sw%_XWoT_6fDK*>xcK+Pge!zy^koK40F z;~Vv|fn7*JGp)XhLs(YJ!Z|v%sBZk0Hry{@|F;Pj2mt@t$NxY9rUXD#za=4Nfa2fy z-vl5EX0QN@G^Gsd9YG;k^NTrv;kWpkWCqlMj#n0?1~-2fJFJA|E2}>@o4-p9GLiI| z5{MyPb_vT$yFaA8bZzJJ3qUU7jW|!7#yL)XjtxqD;VJo1d*og!C)W_UdOW%dLwDY$ zKF7ZI_%decZb3yf^dmXJR>`F;q0B^~YGs;SoeL|1HX+PO|7_P_+@T!ZmH{a#Rdl?M zyaZZ?tuYu#Q(M~`r5x5+9mToCZ;gic;-2M`Zbl&5)+b_=6-l3vbBNl`xPiqg!o;z3 zETns<>d-VxO@8wEo5~L>wWjw;ZwA7=t{g1%Fnz?Wc<`2?+$t89Sfus&({AdO-iAw%U`M{llbGsvYa|U2d6l7 zL3S6Mq>f^l(|A2k?M;{ChuSn)yEYL|g;<}kMMLA1`gqW9%sqm5*Gk|$cM{*f?{9l7 zA!_+Bjb=|zsJ!~-@^u5srp|f~%d2HyH9p&ti?Ahrf(b$aNym!Ac&^m;;x4ZPd~iIE?gKn6G0V@GecVd5RrZNu($J)thyP zHFzf9jdF@DsC2z872ZEINHbVs{Huxn$2jX2UlE#H%xw?(;wDpyst24n-LK1Bbm{QL zD-ObIlht041JdMjifiu+t5?64v3oSpxF8zjGyL^FQ_GY?b#EZITH$x!66_Xe zu*M@l->cl1gM(A~DG9#enf*e1{C3Y=eF+iZb6r>=RH5%Dh-ck`oV5dMIdF`)U}oH*qa1 zCS*1`QdQO{*kSjEtAD&E)IRsBV-(!CQ#?sSY3(cVeu#x`bp9RaZr*K;{1Umx+v2>Y z#sq_|l60#!7`DB3wvqDyRx{z5^$prksN?E9w5Iv}Q?fgHckD1rpowd+r zfU=@Gsrm+G3FAR$`osDrQu_dGIicf`%cfmT%fz9$E7nk4Y@vK8bf>5aL@WBsVgIbs zc5k^QF}|*w;?A~qc5~2JPK2^(67+GNs)l-B9|5JGmAElwxo4zlrEcyQA;!sHice!+pK5m=m^#R<^95dC$I5H%X2|wAYZZ1A zTLpF0H|31i%@zzOHsi}(Wk5d=X`8A2#_U$H!rUL85r7&x@QOCPl87BA4t8UP?3^Zl z#gk=-^tVoXWvBUqg;Kf&F74OKpkE}LvRK@sl=rByAPZ-+s3hl8_{IAO>&VS!HlvOB z@t$`*dF$Ss3b=lW=kRNBST}5_@&&{P`N^B z9UJVsXEHuh6+W(&FzAp!4CxJ~S!Kk9@z0;7Yg0zbgdzgw6yeAf~4E4{L41TUF zW4qXOlQHQ~UC8X``O`3zmtfrK$_AIUyv}|y@74lu@PysKC@cDVechT`C(4$)(|d@} z5rfb0Vle`>rY3D~QG14b88?v{*5{kqNBsImG9oxdU!T*xD)pF3r9i(v?JG*n@ZHuv zHVzU)JZ4i0nS*}1?74+P|7x1h5z(9d4quC}J+8Sv72p6(xAvIh8oF$jn1tY!Y}r3= zd^nn(L1w|=GeV6AZFQ9~{3G$WCwZH$^`GBlEt*mke6J3;0Mv|=CytY9 z24Ua48w=}YwcId2`+4*)0Cs+nD0T7O&$I7UwWgJzVbh3Jn!*zL_E;TDN;mI48>cdq z;Cg1roIGFtaa9*pzHep9A;f3Xq$IU;?GAVPwlSNyGrBK6l>2Lj3cTz{n#v&+N|Zd0rIT2`nL3qz@3RI3@yF<3mBV-lvN_5!*gU#+MjA1g-+J=#iNcZSz)nCd zvY@D%bu;_GA&J0KH=Z>3#UoFO(vd2b&2ZsM{DO=b4P&n{G`%PhpOx!JZp&O zXlz7E)BFXnRKDARtZXO{*0JcjvC-8v9BeJKtU7k9T4zRkkm(t|H*AEsp0VQDO(j)9 zQRL^sSA<(=aYQ0X<%$RmtwUT=i!kwll8@bc;$WY4`~kPt7iI2|Esp3wUL;Q}FKt;N z#Um3cm86qWLUiy-F6ZJv7aPLyvJ`vCWB|;30_t<5(=XCSk%!z9D6FIl zqEy|}=F|8`_1J!brlS?nrzMR6DX)T5`bA3l&D!=7Bq~5t@kd9!GiRZK?HZ}ZG4-pQ zFq>q9+H_Hj&VA=ySFAG2y~i82m-)e^)+-e;tgGK|f2x}>b+r?TX!spcUNZ&cQqeHy zzxV7B$*113BvGa84_RRJzWw!A_yy2*?9P{I^?gV0iL$Q3+yj-ie+IC{ku5lBzdHO_$A3AT+OmKy9YBVKgEERQT4Dc zwe;WCx6U~uOoAk#az?Rjec@)QKPKtAY!`g$diC8a#s@GXv>)zr5w;sfAANYYx#7;S z_VTT8u@gs(Ks@l?1vwZeFS(I5Zm-Mr)9m~&pGVgo(C*HF^W)Q}NEi&I*Pv#&j()0d zil@s14ukqjeyK0aQ?)Mb#pjY>$Ge8gFluTltrcM;5n)q&5|`J?i<X5^z);5X5r_f54)xah~5P`jsuisI(lpVUhiKr#QWz9tfH zhZInnd(GlToUWI(4eMcwacq?pIjFr4w?@O`7qO?fNeRa0s-#=9r1G017`Tc;xgq9N zmm*e0?9`jg&QdUrlOCHEBey)|Kx7B59m;XJOu0)rYzVX`iZIkN=&E*!MWW1tnz>c6 zx*UyGl)?HuQ$283ik?OFH)2}xuIY213NrFT7-Mu|8HXCiKaf3)-3j9Kha%xZW7g@5 zvLpBM^TR#q^l6l;_uDD-l}l=FaEAWOzX>`JJ;1d@jz8{MT<7-jVUP-cw zxhyhlFL=O}S&xhb>3_`FJq1#`h$lsl%#m7~N`&Nu=~Lh*rp{|uSfRC~c*nw(PwkU_ zjlX2W{b&xS`7dI{wk@I?XGhDrDrla~wh?e_YC`dHV&H1DQ$E+|Wp%MslKUond^Ft? z>1De7bPGi;v-Fs0JE(%YIqukP8-Igi`XY9XZV-gGO}mV{Jbu^c+7BB*+5%jVpL)J} ztl{2?6&ErO&U9YMd$nuJ8w{y-Ijg4Bkp~4dlEaynXZ}ge)I)@Y)9>96-6whoJ0H9} z>Y!3=+Kb1e^PoH>bVn6g7Y61E4^(7aSsPrPkKfGHiU>U>JZ`n_YncvN#OU5Fg(Y0` z3A)sfqTj#9iQec-S!9AfBoG=tsU5rG{Bj#Al^%de$M{IwMwT>tn7 zL~lceSeQ;U4V8UThbLQ+p~^E-PGjl~7WKZf4V9fi#ZLpyc^AshJ?WIKWk~xNX_3I- zeEGVi|5{kuiGrg2*J;7US8ciF=X2{7lXc+Zs%bqFRaY^*9PhR{Sje^l^=GN|qFf8h z8es!5It;f^up@SGYMqRB_ciu2^Bu|X`8rG?Uafz^q!n~B|HS?h&u)FR=BxZnX=N-& zwSMdU3#)}np(+wx1))ArV?9I0=D6ZL3bWR75lK%Ti@V!eB^@nZQA?F01nj$53lE57$ncOyUP(_WG$DxHZ5v4O)0{s*5k`Eih1Z3xP5e{G;n?N!#xIs2H zH$PyI^Sf)JuE3nniiu3x@0LcnAB5*qc0OahHdol(F^`SYG{zzNX`0;YowLqN8>hg0 zUX=UcNvu^*ft`Y*&0#4^m3$@ABR5@^s*0qq1P!#~1EFhrc=jfqs1a>^2STtvaw%dI zh(wvsHpr1u-fqh}ht&1{2sz}@FS2Own-+V&*?hK$2~-U4#wf-FIVL%tjp{NG5-0I> zO_gU)n4^6@d9jG*e=#|n3(DwG+iaLQIdhGm1#|bL`|Xyf)t&PJ>e2R<6Qdb# z+(J-Zw>1yks3t>xTzoG5m_j|`_S{9V&=t-|DL^@5zF)L~^gfRVhX}Ve@KGmj>DOyr zjLI)B%MtGJ%nGTbu)oNE$QS7l$%lDso?*-#XHxW8h?cHc9q{(o_2?XsamSZ*h?H6N zvL)aCi(cS}|1H^5bkD8&DR^=Jpwz5T8ufj?Q8V50kuJ%mTJq|)ZPu#=Gnl6c+oX7C zxDHvt)4k%mmw9THZ;t%x49rOR^K>o@>^BOexjlo`NO&VgH2TN?=F$vjhj92% zRc9E!AnHa);&0}p!{Y6!1jfmUJr-rJ8AlFdz~{C;YI?-V4q7j5X|%5!me&DYyLm3# zhF*#Ujq5VAoG*nq9$m;=OXid#VhFB#2_nT5-X59*1xrypd<7Jo3pO?{bkzhpJvpoW~jwrBN05i#lqv(pW^iS z^}KK&^l@$4r`Rk}g&B~rg73YHjN{+vHsA(ZAm7?H?H$%wVO@A(22Zqv|9w?Mev=VT zsBU%>@!|X_pn`Ck*>s?A=)P(6hDK|at75msOU@@>u7*HAW}ejcSrl7D#ocaHN#HdO z4JCwzUJVjq{I1?^N|$--Ljj>?ssdrx>mReyCcG7|`DtuSSzq|T?9wS9*E{%jPz=_P z9zK5pt(sg_O^2aF7D?&v&*$Km1;@y7p`kMO`0~_0C{`;RT!5YeQ%bXqDsoVnd?^Tp zkj#X0QD( zf882JXFn*~=T5VEQ43iUo{2Bp?aIWcDBtgp@c^ssJlC{Iu_C?3wjBh&8{)ok93yoH zIVpXa>zmO?06Wx^kmazkwuKwXhSV=yr17lyAY#Nvx3GtHzSkuS;wmIceAduTy468x zt(*YbuXB3upVWocg-@R4D${vZm8KC(+B(N?*(~MV7E1Sh_eZoTAB{GNUEc4Rm&B(P zcY-K)6AwAPy zHha`ujhuui3^d%HS*X35+Z1B}t+JqmT-9SnqhC!L3;*UFt$e$n^0`DrNwS%m)%s7_ zp?x7f#1I!tkE3s}U{cJ`Az#MW>#`y}+od*)WAo%X(E&heebwEVP2-B|C!5GDh`qrB zdgACzK}J-@;ffkLd)~N|$(goUis;*3xS@?1^cc+J|#}=J25B8 z(a$z^J*s-k&6lUB#?bim=$UyPMu+LWC%)Z4$#q~DVVh#asJ7boKCc7L%V-yaK<^o5 zFz1_AEH@aiKn!mtlA{9Nb3!B{b)7`VqUL|y;_;1TW@pGEk~k&n5p#j3fRg{78HWGm zBQ5p)U2k~O^AUC?bLGUpeO2@UrO!gCgHtsi77A|;~Dk1>PAd?yhO z?MKW9hHjlfyv8q3z@98qvEQRC8Y)!QUzD;N!ynQq^(aQdg1nTv-1uEOV|3dnSS1+d zYU&?xqp7$rdSdzJl-x_mB9gSQTN$0gNu>=0VcTXwtDBXl&Fi>?Nee&tfI zHl;5xcmmsT$bN8UwfcI%?9_eBaB+QDMXk3jZFVW3p`k6!@0yEBMVh)3gqbph>wEc4 zT_pd@Vx7oPE6;HAgh*5U97gdLcd0AklWF_h!*F-{K9XmclxEAAnxj8tsf6_)BQq*< zQ#flBTvyGIUtqtSyKmOQdMUhreZ(V%-r+AeBHdoT+lhGk9fHmHp;gyT71Rv+}Y4Lk`hz_UUx#=r7$u zghXMcJf(X4c=A?hN3GGz=2eZ_9iFUrzw1?cTnWwAnNBsx$ao!bqDJD=h(uFgGfZst zpx<+p%!?-VOf{)4+~YPuD}NqOPc2)cGjZqob);!Khm|^d_VwearaJeEmGP3?oOWm} zkrWx^mlY~;x5M8&C6Jmciuk5OATGJyp9`6$Uo)tS$b6EBzDx5jxo5RC4o|v++>0rG z1YA!Hw6^kfw^RprCFh?YB`j(l+qmIWinha&6Rvv_j;A;6Qgrb#v!hD~2gwt!$K*tD z7h7)pk*;BUH4nlPiJLraRkQ%1OkSzNnxTle@~SK`-QR6NvS|le>K=wPt;>v)reNp$ zqk{ump-Y^6q@6Fm4?gcU>4lJk@?CSEa%ACm-T@rw5Phim9XJktsm#F79!b$K h-SgN}Y$vcUygr>6l35Hhf0Z<{fvb)btSvuX_#dTrr?db7 diff --git a/dist/simple/images/items/womanfan.jpg b/dist/simple/images/items/womanfan.jpg deleted file mode 100644 index 729a4662a239f83f4947096a33a3336e58c4e1ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4011 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 diff --git a/dist/simple/images/items/young_man.jpg b/dist/simple/images/items/young_man.jpg deleted file mode 100644 index 173db9c8e660b47734412dd07fe9506bb75d64d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3550 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 diff --git a/dist/simple/images/mvlogo.png b/dist/simple/images/mvlogo.png deleted file mode 100644 index d09559ca289d63039b12cadf23036370ffdc9ad2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1435 zcmeAS@N?(olHy`uVBq!ia0vp^wm_`Q!3-p|vL-t)FfcO&_=LFr|NkE-GJwF?*f`DD z7|j7`Y3L$o3drLEtx7XaL)Hrv0D_rmD1tx*GiRoqnVI%~Cb~GXUi@rhL)*B084L_e>Ygr+Ar*7phFEX9ZNPJ+c8-?#M5#xio_r6l&&cChwxLE~ zmEau@@r_ck?)i>h=hAHqpQ=rs=^(~CF-E6Ob{J(tf7N=Xd<~{k<7k2Mz z4%*rNqICV|044c%Darf)So8DcZ>x_FUd6Ayz5j^Zovp@Nh3l3sk-zJ3QFG<$vlA+3 zUfWXiKCkfPTj}eM8lP7y-CMoS+H2RLq^A#^Ri0)PXXdWj>$f#}=g00$bz#{Ln-*HK zF4eiRar$D_^vGa=iwom+K8%}H^xo3*!QxYotmJI&KWNHGw={b_BmeC0-OuNI+HfS- zOn3gd9PQ{mdygA1z5QGhKR+ZqFIg$-v03z<^Xu2T8b6ACn)J;0|Dxo`;y9(hKVE-d zEAvagQ>{{Rg_f883=and--8-2SBLx(+imKzn)_yxm*Ss0Ss-JRJ3(oZLn)6;?KfSQxTy6GNb~EQttBV49iYAYXHBtgP8wwxs z-ZicHeNTjKt_%Bv8LG=|9;CGMrfyGS{F5f`^lp~lY^OCfLYIED{!|HjvF$qV-$kF# ztmO+*yrwpF%~Hi_-?%PVPl#SPtAnqZG5bf*m%Ox@8MYb%cm8EGIPFlld41{WCa?9% zFJBgKe68s$dGBdnZpE`)_N_Z3?-p{mbH2-QW%j<<@wS3#FYg@T4R>^d=4`e8o;NRk z*G;3ZdH446Y}+=|`}G%x8RpAhrGL7%kka13G);b1ZSLFWann? zx$8rv)g;;Dop+-O#bUPz|LI&}p8xEuhuW|0@n%1t{cYc>bm`90W{&q~j~MLep0?1n zGsAM{ivM%(NAtg3ynES4p?W9g758o&t=XMY@Xf?jz+dQ>($};-=4LWacgmHvTHT6S z*sh#y>#e_RW8IJ9wv6CLCcz6V;vEJ|p2gFpZFJVIbDMfq&?Wq!e^##jnw1J{BA$!8 zk4Af_s5Z^~s?=uu>=@&d7l|j=m|eA~%Zv$R{L^xw`@lvKo2t0C+c($Dsm^FcktJmr_1_W#WMX!WJu(`45hBx<)V;pH=kQ{Axg#hMFU6GOOk z=eTkjy%E~@u;H-Z&hkU2;@6md4%okC!`GzQ?UR}1mfV^4$!Kf1z)Qi9`{K6}7e1R8 zWZL~g$18131^0fHOV4~;vd=^uefv})>{`SMp2hRGOtblBd?NbrvDUoS>?AL9bM+?? z4L=lx?(aHVyvlr6gSyOKEeFPM7s<(?**m{_y?Yv_`E0=GW$<+Mb6Mw<&;$TOK`tQx diff --git a/dist/simple/images/new.png b/dist/simple/images/new.png deleted file mode 100644 index a524257539356fe756c20d9602caa96442c3ae44..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 213 zcmeAS@N?(olHy`uVBq!ia0vp^@<7bP#0(^#H}%a2Qk(%kA+G=b{|7RGMDW{$LqHZ| zNswPKgTu2MX+VxxiEBhjaDG}zd16s2LwaVKQ9)k1f{~tqo}q2rz6_v>2u~Nskcv6U z2?-ei2@wYvSbVg@3fDejFbZotz@^|^{PfC}sS0fA&(@@BJ9b&5`^AcJCS~Z&-Dh9Qr)n=x(~E9gvo}-pg2#lDJW@QoF+4mBKb|Q%MxXn35NHR3r>mdKI;Vst E0D)gdod5s; diff --git a/dist/simple/images/perl_id_313c.png b/dist/simple/images/perl_id_313c.png deleted file mode 100644 index c0cf0d3ec6ebf5bbeba23c4da133258b8fe439c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3155 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 diff --git a/dist/simple/images/smallamex.png b/dist/simple/images/smallamex.png deleted file mode 100644 index b46c08532415f4b3915a7c10f956777931eb50b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1137 zcmeAS@N?(olHy`uVBq!ia0vp^DnKmG!3-or3}ja_Fferl_=LFr|NkE-f(HJdIfE`T z6I}#N0WsV&|No!)k8aKx5SWRq{me|D0E!5*Eb;7_|If_)k75qUU{t$+rp*L_G&Eyp zreTN}ql=(vNkg>@D4TX>X4)APU1>m@FziYL0b^v-(u{!uC?d$R#IucOrWwyfF$ZKY zs$D?Sj6ne1R15)h1w`>N>;hWGfX(Puk!nGpiDD(L5hcO-X(i=}MX3zwnQ2A^dFcv9 zdIoxiwsHG17#J9vJY5_^D(3VCElhfBz{9J3D?a3e^4WL|6(=bzE4wGkfX$8X zv%9k2VvF;yxt@KyWwNKOyOc;H)br(;Z$a+|pr+{Lg$a`@*GPbSvfd^v>7k60?kAL z)BKqr{5o-{`2WQqHC5pznriZJrO6(OK=xdB)k=FMAfv{g`AIuS(m|KOOB!T8Ciry- zB$md?@MR*SlMu*lN}{Yl@}~i_mmZrRJ4p6R2BV$^m<8f76tgoMvVznggX$nd2zQMd zRJgz$q~`r9&F3?rQpoCo?Al-{h=>gfOSLn@V?&USj18cIKz37!N3gdHL=BLkdLJ~t~zMcbeKOE%yYr@$SGS0bU zF`y!x7frN9KmaJR%O2{xYcmn@OYKo&FkYn>6ue?3t`Q}{`DrEPiAAXl>6vLp1$pTT zMtTN%hPHA0GJx6Qil>WXNX4AcNgK0897T?`M+=K3esBG-X{vz4o<{*we0T0}4C_1^ ztIE>1#Kz#D6Zi7T6ADTlm=b53H1&pel}i2ZeY>V9A@Sqaedfm1J7*_7GyME)@B6>^ zjN3R3=G?oH%^dlryt&-ZEG&E8qZiX=Ss(5=-5~Vw$qSu4mGYlUwr%^X5_W5%bM?~o z5BGw*uN0n#Ob9rOYyXuhl-f` ziL0sI9Tptn_ZKM0wO!kEP(0vFW7+n)IA-><-9NKCLoZ0W&Fm<6U%2rHUp?!b>jhWM zxqHOzY#LpJI1dCIuX2>}P_%CEV9HII^Y_-oh%5GPDq2lm`O|)e@u;yrES^_f;4op8 zj7ZbAp1+gXg?wNAU;Cs#l#N9$v41DSQjd#!?@n&|7dEvxUPtbq#e`Suo)~WNIrl8{ z)ZK9FmPZ9s7bka5%lPv=B>9z($kEicwx|VLzI|J=&7Sc$L+)(7c@8^0trnK}-(`M$ z6vLp1$pTT zMtTN%hPHA0G8h;b6+B%WLn`L!DjGy*TX8^M0;b zuk6w^;RO>+ez%7GJNMwOPT<2IzMV(qIla=Wmr2f5eXGyLY2%ru`nT(l&czF-3U7x7 z#Lml_5|gj7YD$oNwb?{x2Zn6vY~84uoGl*T^YS~KlN3B$jxZRV>Cjj|F?Q;9ZwJO1 z8g6w8!i-8@9@`jRPu|jBW3k~0%e%OUYjazA`=>5FcU$wv9;3$RY@3(F|COxoaVUK{ z<=o<3FQc{;9e%oC`})hQ(sEu$^|%_VX8jIHu{`41ly&vY43`(lGW!)%ls%ZQecgNS bqx26p28mYo__-A|pv2(m>gTe~DWM4f(OT$m diff --git a/dist/simple/images/smallvisa.png b/dist/simple/images/smallvisa.png deleted file mode 100644 index a54fe06e2fa01a0909c742e1c2ab4521db9321a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 929 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 R_9~#w44$rjF6*2UngCVPP&)ts diff --git a/dist/simple/logs/.empty b/dist/simple/logs/.empty deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/simple/mysql/affiliate.mysql b/dist/simple/mysql/affiliate.mysql deleted file mode 100644 index d59148869..000000000 --- a/dist/simple/mysql/affiliate.mysql +++ /dev/null @@ -1,9 +0,0 @@ -Database affiliate affiliate.txt __SQLDSN__ -#ifdef SQLUSER -Database affiliate USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database affiliate PASS __SQLPASS__ -#endif -Database affiliate COLUMN_DEF "code=char(12) NOT NULL PRIMARY KEY" -Database affiliate DEFAULT_TYPE text diff --git a/dist/simple/mysql/area.mysql b/dist/simple/mysql/area.mysql deleted file mode 100644 index 197b9394e..000000000 --- a/dist/simple/mysql/area.mysql +++ /dev/null @@ -1,11 +0,0 @@ -Database area area.txt __SQLDSN__ -#ifdef SQLUSER -Database area USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database area PASS __SQLPASS__ -#endif -Database area DEFAULT_TYPE text -Database area COLUMN_DEF "code=char(12) NOT NULL PRIMARY KEY" -Database area COLUMN_DEF "name=char(128) DEFAULT '' NOT NULL, index(name)" -Database area COLUMN_DEF "sort=char(3) DEFAULT '00' NOT NULL, index(sort)" diff --git a/dist/simple/mysql/cat.mysql b/dist/simple/mysql/cat.mysql deleted file mode 100644 index 9f5c41a8b..000000000 --- a/dist/simple/mysql/cat.mysql +++ /dev/null @@ -1,12 +0,0 @@ -Database cat cat.txt __SQLDSN__ -#ifdef SQLUSER -Database cat USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database cat PASS __SQLPASS__ -#endif -Database cat DEFAULT_TYPE text -Database cat COLUMN_DEF "code=char(20) NOT NULL PRIMARY KEY" -Database cat COLUMN_DEF "sel=CHAR(64) DEFAULT '' NOT NULL, index(sel)" -Database cat COLUMN_DEF "name=CHAR(64) DEFAULT '' NOT NULL, index(name)" -Database cat COLUMN_DEF "sort=CHAR(4) DEFAULT 'ZZ' NOT NULL, index(sort)" diff --git a/dist/simple/mysql/country.mysql b/dist/simple/mysql/country.mysql deleted file mode 100644 index 86d3bbfc1..000000000 --- a/dist/simple/mysql/country.mysql +++ /dev/null @@ -1,11 +0,0 @@ -Database country country.txt __SQLDSN__ -#ifdef SQLUSER -Database country USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database country PASS __SQLPASS__ -#endif -Database country COLUMN_DEF "code=CHAR(3) NOT NULL PRIMARY KEY" -Database country COLUMN_DEF "selector=CHAR(3) NOT NULL" -Database country COLUMN_DEF "shipmodes=CHAR(64)" -Database country COLUMN_DEF "name=CHAR(32) NOT NULL, index(name)" diff --git a/dist/simple/mysql/inventory.mysql b/dist/simple/mysql/inventory.mysql deleted file mode 100644 index 8d6b24afc..000000000 --- a/dist/simple/mysql/inventory.mysql +++ /dev/null @@ -1,14 +0,0 @@ -Database inventory inventory.txt __SQLDSN__ -#ifdef SQLUSER -Database inventory USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database inventory PASS __SQLPASS__ -#endif -Database inventory KEY sku -Database inventory COLUMN_DEF "sku=char(14) NOT NULL PRIMARY KEY" -Database inventory COLUMN_DEF "quantity=INT" -Database inventory COLUMN_DEF "stock_msg=char(64)" -Database inventory COLUMN_DEF "account=char(128)" -Database inventory COLUMN_DEF "cogs_account=char(128)" -Database inventory NUMERIC quantity diff --git a/dist/simple/mysql/merchandising.mysql b/dist/simple/mysql/merchandising.mysql deleted file mode 100644 index 29b677d47..000000000 --- a/dist/simple/mysql/merchandising.mysql +++ /dev/null @@ -1,12 +0,0 @@ -Database merchandising merchandising.txt __SQLDSN__ -#ifdef SQLUSER -Database merchandising USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database merchandising PASS __SQLPASS__ -#endif -Database merchandising DEFAULT_TYPE text -Database merchandising COLUMN_DEF "sku=char(20) NOT NULL PRIMARY KEY" -Database merchandising COLUMN_DEF "featured=CHAR(32) NOT NULL, index(featured)" -Database merchandising COLUMN_DEF "start=CHAR(24) NOT NULL, index(start)" -Database merchandising COLUMN_DEF "finish=CHAR(24) NOT NULL, index(finish)" diff --git a/dist/simple/mysql/orderline.mysql b/dist/simple/mysql/orderline.mysql deleted file mode 100644 index 4800c49dc..000000000 --- a/dist/simple/mysql/orderline.mysql +++ /dev/null @@ -1,27 +0,0 @@ - -Database orderline orderline.txt __SQLDSN__ -#ifdef SQLUSER -Database orderline USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database orderline PASS __SQLPASS__ -#endif -Database orderline COLUMN_DEF "code=char(14) NOT NULL PRIMARY KEY" -Database orderline COLUMN_DEF "store_id=CHAR(9) DEFAULT '' NOT NULL, index(store_id)" -Database orderline COLUMN_DEF "order_number=CHAR(14) NOT NULL, index(order_number)" -Database orderline COLUMN_DEF "session=CHAR(32) NOT NULL" -Database orderline COLUMN_DEF "username=CHAR(20) default '' NOT NULL" -Database orderline COLUMN_DEF "shipmode=CHAR(32) default '' NOT NULL" -Database orderline COLUMN_DEF "sku=CHAR(14) NOT NULL" -Database orderline COLUMN_DEF "quantity=CHAR(9) NOT NULL" -Database orderline COLUMN_DEF "price=CHAR(12) NOT NULL" -Database orderline COLUMN_DEF "subtotal=CHAR(12) NOT NULL" -Database orderline COLUMN_DEF "shipping=CHAR(12)" -Database orderline COLUMN_DEF "taxable=CHAR(3)" -Database orderline COLUMN_DEF "size=VARCHAR(30)" -Database orderline COLUMN_DEF "color=VARCHAR(30)" -Database orderline COLUMN_DEF "options=VARCHAR(255)" -Database orderline COLUMN_DEF "order_date=varchar(32) NOT NULL" -Database orderline COLUMN_DEF "update_date=timestamp" -Database orderline COLUMN_DEF "status=VARCHAR(32)" -Database orderline COLUMN_DEF "parent=CHAR(9)" diff --git a/dist/simple/mysql/pricing.mysql b/dist/simple/mysql/pricing.mysql deleted file mode 100644 index 2b9d9cfb0..000000000 --- a/dist/simple/mysql/pricing.mysql +++ /dev/null @@ -1,19 +0,0 @@ -# Interchange database definition -Database pricing pricing.txt __SQLDSN__ -#ifdef SQLUSER -Database pricing USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database pricing PASS __SQLPASS__ -#endif -Database pricing KEY sku -Database pricing COLUMN_DEF "q2=char(12)" -Database pricing COLUMN_DEF "price_group=CHAR(2) DEFAULT '' NOT NULL, index(price_group)" -Database pricing COLUMN_DEF "sku=CHAR(9) NOT NULL PRIMARY KEY" -Database pricing COLUMN_DEF "q5=CHAR(12)" -Database pricing COLUMN_DEF "q10=CHAR(12)" -Database pricing COLUMN_DEF "q25=CHAR(12)" -Database pricing COLUMN_DEF "q100=CHAR(12)" -Database pricing COLUMN_DEF "XL=CHAR(12)" -Database pricing COLUMN_DEF "S=CHAR(12)" -Database pricing COLUMN_DEF "red=CHAR(12)" diff --git a/dist/simple/mysql/products.mysql b/dist/simple/mysql/products.mysql deleted file mode 100644 index 70c0aa51d..000000000 --- a/dist/simple/mysql/products.mysql +++ /dev/null @@ -1,25 +0,0 @@ -# Interchange database definition -Database products products.txt __SQLDSN__ -#ifdef SQLUSER -Database products USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database products PASS __SQLPASS__ -#endif -Database products KEY sku -Database products COLUMN_DEF "sku=char(14) NOT NULL PRIMARY KEY" -Database products COLUMN_DEF "description=VARCHAR(128) NOT NULL" -Database products COLUMN_DEF "title=VARCHAR(128) DEFAULT '' NOT NULL, index(title)" -Database products COLUMN_DEF "artist=VARCHAR(128) DEFAULT '' NOT NULL, index(artist)" -Database products COLUMN_DEF "comment=TEXT" -Database products COLUMN_DEF "display=VARCHAR(128)" -Database products COLUMN_DEF "image=VARCHAR(64)" -Database products COLUMN_DEF "price=DECIMAL(12,2) NOT NULL, index(price)" -Database products COLUMN_DEF "category=VARCHAR(64) NOT NULL, index(category)" -Database products COLUMN_DEF "nontaxable=CHAR(3)" -Database products COLUMN_DEF "weight=VARCHAR(12) DEFAULT '0' NOT NULL" -Database products COLUMN_DEF "size=VARCHAR(96)" -Database products COLUMN_DEF "color=VARCHAR(96)" -Database products COLUMN_DEF "related=text" -Database products COLUMN_DEF "featured=VARCHAR(32)" -Database products NUMERIC price diff --git a/dist/simple/mysql/transactions.mysql b/dist/simple/mysql/transactions.mysql deleted file mode 100644 index d458d4a4c..000000000 --- a/dist/simple/mysql/transactions.mysql +++ /dev/null @@ -1,54 +0,0 @@ -Database transactions transactions.txt __SQLDSN__ -#ifdef SQLUSER -Database transactions USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database transactions PASS __SQLPASS__ -#endif -Database transactions transactions.raw SQL -Database transactions COLUMN_DEF "code=char(14) NOT NULL PRIMARY KEY" -Database transactions COLUMN_DEF "store_id=CHAR(9) DEFAULT '' NOT NULL, index(store_id)" -Database transactions COLUMN_DEF "order_number=CHAR(14) NOT NULL, index(order_number)" -Database transactions COLUMN_DEF "session=CHAR(32) NOT NULL" -Database transactions COLUMN_DEF "username=CHAR(20) default '' NOT NULL" -Database transactions COLUMN_DEF "shipmode=CHAR(32) NOT NULL" -Database transactions COLUMN_DEF "nitems=CHAR(9) NOT NULL" -Database transactions COLUMN_DEF "subtotal=CHAR(12) NOT NULL" -Database transactions COLUMN_DEF "shipping=CHAR(12) NOT NULL" -Database transactions COLUMN_DEF "handling=CHAR(12)" -Database transactions COLUMN_DEF "salestax=CHAR(12)" -Database transactions COLUMN_DEF "total_cost=CHAR(16) NOT NULL" -Database transactions COLUMN_DEF "fname=VARCHAR(30)" -Database transactions COLUMN_DEF "lname=VARCHAR(30)" -Database transactions COLUMN_DEF "company=VARCHAR(30)" -Database transactions COLUMN_DEF "address1=VARCHAR(30)" -Database transactions COLUMN_DEF "address2=VARCHAR(30)" -Database transactions COLUMN_DEF "city=VARCHAR(30) NOT NULL" -Database transactions COLUMN_DEF "state=VARCHAR(10)" -Database transactions COLUMN_DEF "zip=CHAR(10) DEFAULT '00000' NOT NULL" -Database transactions COLUMN_DEF "country=CHAR(10) DEFAULT '' NOT NULL" -Database transactions COLUMN_DEF "phone_day=VARCHAR(20)" -Database transactions COLUMN_DEF "phone_night=VARCHAR(20)" -Database transactions COLUMN_DEF "fax=VARCHAR(20)" -Database transactions COLUMN_DEF "email=VARCHAR(42)" -Database transactions COLUMN_DEF "b_fname=VARCHAR(30)" -Database transactions COLUMN_DEF "b_lname=VARCHAR(30)" -Database transactions COLUMN_DEF "b_company=VARCHAR(30)" -Database transactions COLUMN_DEF "b_address1=VARCHAR(30)" -Database transactions COLUMN_DEF "b_address2=VARCHAR(30)" -Database transactions COLUMN_DEF "b_city=VARCHAR(30)" -Database transactions COLUMN_DEF "b_state=VARCHAR(10)" -Database transactions COLUMN_DEF "b_zip=CHAR(10) DEFAULT '00000' NOT NULL" -Database transactions COLUMN_DEF "b_country=CHAR(10) DEFAULT '' NOT NULL" -Database transactions COLUMN_DEF "b_phone=VARCHAR(20)" -Database transactions COLUMN_DEF "payment_method=varchar(32)" -Database transactions COLUMN_DEF "avs=varchar(32)" -Database transactions COLUMN_DEF "order_id=varchar(32)" -Database transactions COLUMN_DEF "order_date=varchar(32) NOT NULL" -Database transactions COLUMN_DEF "update_date=timestamp" -Database transactions COLUMN_DEF "status=VARCHAR(32)" -Database transactions COLUMN_DEF "parent=CHAR(9)" -Database transactions COLUMN_DEF "archived=CHAR(1)" -Database transactions COLUMN_DEF "deleted=CHAR(1) DEFAULT ''" -Database transactions COLUMN_DEF "complete=CHAR(1)" -Database transactions COLUMN_DEF "comments=text" diff --git a/dist/simple/mysql/userdb.mysql b/dist/simple/mysql/userdb.mysql deleted file mode 100644 index d949c6b4c..000000000 --- a/dist/simple/mysql/userdb.mysql +++ /dev/null @@ -1,56 +0,0 @@ -Database userdb userdb.txt __SQLDSN__ -#ifdef SQLUSER -Database userdb USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database userdb PASS __SQLPASS__ -#endif -Database userdb COLUMN_DEF "code=char(20) NOT NULL PRIMARY KEY" -Database userdb COLUMN_DEF "password=CHAR(20) NOT NULL" -Database userdb COLUMN_DEF "acl=text" -Database userdb COLUMN_DEF "mod_time=timestamp" -Database userdb COLUMN_DEF "s_nickname=text" -Database userdb COLUMN_DEF "company=CHAR(30)" -Database userdb COLUMN_DEF "fname=CHAR(20)" -Database userdb COLUMN_DEF "lname=CHAR(30)" -Database userdb COLUMN_DEF "address1=CHAR(64)" -Database userdb COLUMN_DEF "address2=CHAR(64)" -Database userdb COLUMN_DEF "address3=CHAR(64)" -Database userdb COLUMN_DEF "city=CHAR(30)" -Database userdb COLUMN_DEF "state=CHAR(10)" -Database userdb COLUMN_DEF "zip=CHAR(10)" -Database userdb COLUMN_DEF "country=CHAR(10)" -Database userdb COLUMN_DEF "phone_day=CHAR(20)" -Database userdb COLUMN_DEF "mv_shipmode=CHAR(64)" -Database userdb COLUMN_DEF "b_nickname=text" -Database userdb COLUMN_DEF "b_fname=CHAR(20)" -Database userdb COLUMN_DEF "b_lname=CHAR(30)" -Database userdb COLUMN_DEF "b_address1=CHAR(64)" -Database userdb COLUMN_DEF "b_address2=CHAR(64)" -Database userdb COLUMN_DEF "b_address3=CHAR(64)" -Database userdb COLUMN_DEF "b_city=CHAR(30)" -Database userdb COLUMN_DEF "b_state=CHAR(10)" -Database userdb COLUMN_DEF "b_zip=CHAR(10)" -Database userdb COLUMN_DEF "b_country=CHAR(10)" -Database userdb COLUMN_DEF "b_phone=CHAR(20)" -Database userdb COLUMN_DEF "mv_credit_card_type=CHAR(16)" -Database userdb COLUMN_DEF "mv_credit_card_exp_month=CHAR(2)" -Database userdb COLUMN_DEF "mv_credit_card_exp_year=CHAR(4)" -Database userdb COLUMN_DEF "p_nickname=text" -Database userdb COLUMN_DEF "email=VARCHAR(42)" -Database userdb COLUMN_DEF "fax=CHAR(20)" -Database userdb COLUMN_DEF "phone_night=CHAR(20)" -Database userdb COLUMN_DEF "fax_order=CHAR(2)" -Database userdb COLUMN_DEF "address_book=BLOB" -Database userdb COLUMN_DEF "accounts=BLOB" -Database userdb COLUMN_DEF "preferences=BLOB" -Database userdb COLUMN_DEF "carts=BLOB" -Database userdb COLUMN_DEF "owner=char(20)" -Database userdb COLUMN_DEF "file_acl=BLOB" -Database userdb COLUMN_DEF "db_acl=BLOB" -Database userdb COLUMN_DEF "order_numbers=TEXT" -Database userdb COLUMN_DEF "email_copy=char(1)" -Database userdb COLUMN_DEF "mail_list=varchar(64)" -Database userdb COLUMN_DEF "project_id=char(20)" -Database userdb COLUMN_DEF "account_id=char(20)" -Database userdb COLUMN_DEF "order_dest=char(32)" diff --git a/dist/simple/orders/.empty b/dist/simple/orders/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/simple/orders/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/simple/pages/about.html b/dist/simple/pages/about.html deleted file mode 100644 index 023c3e828..000000000 --- a/dist/simple/pages/about.html +++ /dev/null @@ -1,43 +0,0 @@ -[comment] -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_description: members_only : Members only -ui_control_description: page_title : Page title -ui_control_element: members_only : 0=No,1=Yes -ui_control_element: page_title : -ui_template: Yes -ui_template_name: templates/standard -[/comment] - -[set members_only]0[/set] -[set page_title]About Us[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -[comment] - More Interchange variables used to roll the setting of the - company name, address, etc. -[/comment] - -

    - __COMPANY__
    - __ADDRESS__
    - __CITY__
    -

    - Phone: __PHONE__
    - Fax: __FAX__
    - [if variable TOLLFREE] - Tollfree: __TOLLFREE__
    - [/if] -

    -

    - - - - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/simple/pages/account.html b/dist/simple/pages/account.html deleted file mode 100644 index 8a92c4da8..000000000 --- a/dist/simple/pages/account.html +++ /dev/null @@ -1,404 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standalone -ui_template_layout: LOGOBAR, MENUBAR, UI_CONTENT, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top logo bar. menu bar and copyright at bottom. -ui_control_element: page_title: -ui_control_element: members_only: 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set members_only]1[/set] -[set page_title]Maintain your account[/set] -__LOGOBAR__ -__MENUBAR__ - - -[title-bar width=630 color="__BARBG__"]Account Maintenance -[/title-bar] - - -Change password  Mail preferences  Shipping preferences  Billing preferences
    - -[userdb function=get_billing_names] -[userdb function=get_shipping_names] - -
    - -
    - - -[if type=explicit compare="[error all=1 show_var=1 keep=1]"] -

    -There were errors in your last submission. -They are shown in __CONTRAST__ below. -

    -[/if] - -[comment] - -[/comment] - - - - - - -[set Save_database] -[userdb save] -[/set] -[title-bar 500 4]Shipping Address Book[/title-bar] - - -
    - - - - Yes, delete -
    - - -[title-bar 500 4]Shipping Address[/title-bar] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - [error name=fname std_label="First Name" required=1] - - [error name=lname std_label=Last required=1]  -
    [error name=address1 std_label=Address required=1] - -
      - -
    - [error name=city std_label="City" required=1] - - - - - - - - - -
    - - - [error name=state std_label="State/Province" required=1] - - - - [error name=zip std_label="Zip/Postal Code" required=1] - - -
    -
    [error name=email std_label="Email Address" required=1] - -
    - Country - - [if value country =~ /(^$|US|CA)/] - - [else] - - [/else] - [/if] (will update display) -
    [error name=phone_day std_label="Daytime Phone" required=1] - - - - - - -
    - - - Evening - - -
    -
    - Shipping method - - -
    - We need the bold fields to process your order -
    - -[title-bar 500 3] - - - [if items] - [set Save, go to checkout] - mv_nextpage=__ORDER_STYLE__/checkout - [/set] - - No change, go to checkout - [/if] - -[/title-bar] - - -Change password  Mail preferences  Shipping preferences  Billing preferences
    -[title-bar 500 4]Mailing status[/title-bar] - - Send an email copy of my receipt
    - - - Put me on your email list of infrequent offers -

    - - -Change password  Mail preferences  Shipping preferences  Billing preferences
    -[title-bar 500 4]Billing Address Book[/title-bar] - - - -
    - - - - Yes, delete -
    -[title-bar 500 4]Billing Address (if different)[/title-bar] - - - - - - - - - - - - - - - - - - - - - - -
    Name - - -
    Address - - -
    City, State, Postal Code - - - -
    Country - -
    - Payment method - - - Pay by credit card
    - - I will call with payment information
    -
    - -[title-bar 500 3] - - - [if items] - [set Save, go to checkout] - mv_nextpage=__ORDER_STYLE__/checkout - [/set] - - No change, go to checkout - [/if] - -[/title-bar] - -

    -
    - - - - - - - - - - -
    - [title-bar 200 2]Change your password[/title-bar] - - [title-bar 200 2]Order Tracking[/title-bar] -
    -
    - - - - - - - - - - - - - - - - - - - - -
    Old password -
    New password -
    Verify -

    -
    - - - Save username/password (sets cookie) -
    - [page no_cookie]Stop logging me in automatically[/page] -
    -
    -
    -
    - Check cart ([nitems] items)
    - [if items] - Check out
    - [/if] - Check status of placed orders
    -
      - [loop list="[data table=userdb col=order_numbers key='[data session username]']"] - [if-loop-data transactions order_number] -
    • #[loop-code] - [/if-loop-data] - [/loop] -
    -
    -
    - -Change password  Mail preferences  Shipping preferences  Billing preferences
    - -
    - - -__MENUBOTTOM__ -__COPYRIGHT__ - -[set Save shipping] -[value name=s_nickname set="[cgi s_nickname]" filter="nullselect no_white" hide=1] -[userdb function=set_shipping] -[/set] - -[set Recall shipping] -[value name=s_nickname set="[cgi s_nickname]" filter="nullselect no_white" hide=1] -[userdb function=get_shipping] -[/set] - -[set DELETE shipping] -[if cgi verify] -[value name=s_nickname set="[cgi s_nickname]" filter="nullselect no_white" hide=1] -[userdb function=delete_shipping] -[/if] -[/set] - -[set Save billing] -[value name=b_nickname set="[cgi b_nickname]" filter="nullselect no_white" hide=1] -[userdb function=set_billing] -[/set] - -[set Recall billing] -[value name=b_nickname set="[cgi b_nickname]" filter="nullselect no_white" hide=1] -[userdb function=get_billing] -[/set] - -[set DELETE billing] -[if cgi verify] -[value name=b_nickname set="[cgi b_nickname]" filter="nullselect no_white" hide=1] -[userdb function=delete_billing] -[/if] -[/set] - - - diff --git a/dist/simple/pages/action/get_password.html b/dist/simple/pages/action/get_password.html deleted file mode 100644 index 0b2b7a19f..000000000 --- a/dist/simple/pages/action/get_password.html +++ /dev/null @@ -1,100 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Trying to retrieve....[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - -

    Trying to retrieve....

    -[perl] - $CGI->{mv_todo} = 'search'; - $Config->{NoSearch} = ''; -[/perl] -[update process] -[search-region] -[set get_id_matches][search-list][if-item-data userdb email][item-code][/if-item-data][/search-list][/set] -[no-match] -

    Sorry, no match for that. Try again?

    -[include forms/get_id] -[/no-match] -[/search-region] - -[perl] - $Config->{NoSearch} = 'userdb'; - return; -[/perl] - -[if value mv_search_match_count > 1] -

    That one generated more than one match. [page login]Try again[/page] with more info?

    -[elsif scratch get_id_matches] -[set name=id_ok][/set] -[set name=id_ok interpolate=1][loop arg="[scratch get_id_matches]"][email - to="[loop-data userdb email]" - subject="Your login information" - from="__COMPANY__ password minder <__ORDERS_TO__>" - reply="__ORDERS_TO__"] - -Hello! You requested that your ID and password be sent to your -email address of record. The information is: - - Username: [loop-code] - Password: [loop-data userdb password] - -You can log in at: - - [area login] - -Please contact us if we can be of service, and thank you for doing -business with us. -[/email][/loop][/set] -[if !scratch id_ok] -Something went wrong when mailing, perhaps a typo in your email address? Please -either [page new_account]create a new account[/page] or [page feedback]contact us.[/page]. -[else] -

    ID sent by fastest available email method!

    -[/else] -[/if] - -

    -[if session failure] -[data session failure] -[/if] -

    -

    - - - - - UserName:
    -
    - Password:

    -
    - -
    - -
    - -
    - - Create a new account

    -[/elsif] -[elsif value mv_search_match_count] -We appear to have found you, but you didn't leave an email address!

    -Please either [page new_account]create a new account[/page] or [page -feedback]contact us.[/page]. -[/elsif] -[/if] - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pages/browse.html b/dist/simple/pages/browse.html deleted file mode 100644 index af8004507..000000000 --- a/dist/simple/pages/browse.html +++ /dev/null @@ -1,120 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Browse the Art Store[/set] - -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -[comment] - - This page just uses an in page search (the [loop search=...]) - to return all products from the database. The parameter - "ra=yes" sets the Interchange search variable mv_return_all to "yes", - meaning just start returning records from the file. - - If there are more than 50 then it will be truncated because of - the mv_matchlimit default of 100. If you wanted to return up - to 100 then you would set the search setting to "ra=yes/ml=100". - - See the browse1.html page for a page that returns 1 or more - at a time with paging. - -[/comment] - -

    - [L]Browse[/L] [page browse1 1:1]one - or [page browse1 1:2]two at a time
    -
    - - - -[loop search="ra=yes/tf=category/tf=title"] -[comment] - The [loop-next] simply skips a product if it is in the - category "Accessory". The [calc] tag is a little embedded - Perl. -[/comment] -[loop-next][calc]'[loop-field category]' eq 'Accessory'[/calc][/loop-next] - -[comment] - [loop-change] is a way of setting up headers. You place a possibly - changing value in the [condition] container, and when the value - changes the contents of the [loop-change] container are output. - There can also be an [else] [/else] area. -[/comment] - - -[loop-change 1][condition][loop-field category][/condition] - - - - - -[/loop-change 1] - - - - - - - - - - -[/loop] -
    [if-loop-data merchandising banner_text][loop-data merchandising banner_text][else][loop-field category][/else][/if-loop-data]
    - - - - - - - - - - - - - - - - - - - - - - - -
    [if-loop-field image][loop-field title][/if-loop-field][loop-field title]
    -by [filter namecase][loop-field artist]

    -Price: [loop-price]   buy now

    -[loop-field comments]

    -More [filter lower][loop-field category][/filter]...
    -
    - -

    - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/simple/pages/browse1.html b/dist/simple/pages/browse1.html deleted file mode 100644 index b01887b4c..000000000 --- a/dist/simple/pages/browse1.html +++ /dev/null @@ -1,157 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Browse __COMPANY__[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - - -[comment] - This embedded Perl reads the argument passed to it, which - should be two colon-separated numbers. The first is the sequential - number where display should start; the second (optional) number - is the "chunk" size, or number of products to display per - page. Uncomment these links to play: - - Start at 2, display 5 - Start at 3, display 2 -[/comment] -[perl] - $start = $Session->{arg} || 1; - $chunk = 1; - if($start =~ /(\d+):(\d*)/) { - $start = $1; - $chunk = $2 || 1; - } - $prev = $start - $chunk; - if($prev < 1) { - $prev = 0; - } - $Scratch->{start} = $start; - $Scratch->{chunk} = $chunk; - $Scratch->{next} = $start + $chunk; - $Scratch->{prev} = $prev; - $Scratch->{not_shown} = 1; - return; -[/perl] - - -[comment] - -The below is an extended Interchange in-page search. - -The [search-region] container will interpret several -things: - - [search-list] - What should display if anything is found - [/search-list] - - [no-match] - What should display if nothing is found - [/no-match] - - [more-list] - To be displayed if more than mv_matchlimit - matches are found. The [more] tag shows - the previous/next and/or pages. - [/more-list] - -[/comment] - - - -[search-region arg=" - co=yes - sf=category - op=ne - se=Accessory - fm=[scratch start] - ml=[scratch chunk] - tf=category - to=f - tf=price - to=rn - "] -[item-change 1][condition][item-field category][/condition] - - - - -[/item-change 1] - - - - - - - - - - -[/search-region] - - - - -
    [if-item-data merchandising banner_text][item-data merchandising banner_text][else][item-field category][/else][/if-item-data]
    - - - - - - - - - - - - - - - - - - - - - - - -
    [if-item-field image][item-field artist]: [item-field title][/if-item-field][item-field title]
    -by [filter op="namecase name"][item-field artist][/filter]

    -Price: [item-price]   buy now

    -[item-field comments]

    -More [filter lower][item-field category][/filter]...
    -
    -[if scratch prev] -[page href=browse1 arg="[scratch prev]:[scratch chunk]"] - Previous   -[/if] -[if type=explicit compare="[value mv_search_match_count] > [scratch next]"] -[page href=browse1 arg="[scratch next]:[scratch chunk]"][L]Next[/L] -[/if] -
    -
    - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pages/canceled.html b/dist/simple/pages/canceled.html deleted file mode 100644 index 6a128b7cc..000000000 --- a/dist/simple/pages/canceled.html +++ /dev/null @@ -1,55 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Stop shopping[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -

    -

    [L]Stop shopping[/L]

    -
    - -
    - - - - -
    [L]If you click Remove Contents[/L], -[L]only the items you have placed in your basket will be removed.[/L] - -

    -[L]If you click Erase All Information[/L], -[L]your name, address, and credit card information will be removed from our system. You will have to enter it again to buy anything.[/L] - -

    -[L]If you wish to do neither, just use the buttonbar or your browser's Back function to return to shopping.[/L] -[item-list] - -[/item-list] - -

    - - - - -
    -
    -
    -[set [L]Erase All Information[/L]] -mv_todo=cancel -[/set] - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pages/deliver.html b/dist/simple/pages/deliver.html deleted file mode 100644 index 35599ca01..000000000 --- a/dist/simple/pages/deliver.html +++ /dev/null @@ -1,34 +0,0 @@ -[seti authorized] -[userdb - function=check_file_acl - location="[scratch deliverable]" - mode=expire -][/seti][perl products] - my $auth = $Scratch->{authorized}; - if($auth !~ /1/) { - Log("Not authorized for $Scratch->{deliverable}, 403"); - $Document->header('Status: 403 Not authorized'); - $Document->hot(1); - $Document->write(<{deliverable}. Buy it first, please. -EOF - return; - } - my $type = tag_data('products', 'dl_type', $Scratch->{deliverable}); - my $location = tag_data('products', 'dl_location', $Scratch->{deliverable}); - my $content = $Tag->file($location); - my $len = length($content); - if(! $len) { - Log("Not found: $Scratch->{deliverable} type=$type at $location, 404"); - $Document->header('Status: 404 not found'); - $Document->hot(1); - $Document->write(<{deliverable} not found. -EOF - return; - } - $Document->header("Content-Type: $type\nContent-Length: $len"); - $Document->hot(1); - $Document->write($content); - return; -[/perl] diff --git a/dist/simple/pages/examples/test_banner.html b/dist/simple/pages/examples/test_banner.html deleted file mode 100644 index b965b2df5..000000000 --- a/dist/simple/pages/examples/test_banner.html +++ /dev/null @@ -1,12 +0,0 @@ -[comment] - Displays several examples of banners, with rotation and weighting. - Modify the 'banner' database to see changes in pattern. -[/comment] -
    -W   [banner weighted=1]
    -C   [banner]
    -C   Renaissance: [banner category=Renaissance]
    -C   Americana: [banner category=Americana]
    -W,C Renaissance: [banner weighted=1 category=Renaissance]
    -W,C Americana: [banner weighted=1 category=Americana]
    -
    diff --git a/dist/simple/pages/feedback.html b/dist/simple/pages/feedback.html deleted file mode 100644 index f97ce77ae..000000000 --- a/dist/simple/pages/feedback.html +++ /dev/null @@ -1,98 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Send us feedback[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - - -[comment] - The check_form area is a Interchange scratch variable. - It simply sets an area in the user session to a particular - value. - - If this is referenced in an mv_click or mv_check variable, - though, the Interchange tags inside will be interpreted - and other variables may be set. - - mv_click sets variable values BEFORE they are put - in the user's session. It is a way of setting - multiple variables in one click; or of running - a "subroutine". - - mv_check sets variable values AFTER they are put - in the user's session. It is a way of checking - for out of bounds conditions, or running - subroutines that should occur after values - are set. - - The below checks for a value in the variable "feedback" - to make sure an empty message is not submitted. It also - checks for a subject. If both are present, then it - sets a tracking number with the [counter] UserTag - (probably defined in flycat.cfg) and sets mv_nextpage to - a place that will submit the form contents with a - subroutine called "form_mail". - -[/comment] -[set check_form] - [if !value feedback_message] - form_errors=An empty message won't do us much good! - mv_nextpage=@@MV_PAGE@@ - [elsif !value feedback_subject] - form_errors=Please give us a subject so we can track the message - mv_nextpage=@@MV_PAGE@@ - [/elsif] - [else] - tracking_number=[counter etc/feedback.counter] - mv_nextpage=special/feedback - [/else] - [/if] -[/set] - - -[comment] - [quick-table] is a UserTag that just makes - a little two-column table. -[/comment] - - - - - - - - -
    - -[set feedback_active]1[/set] -
    - - -[quick-table] -:[title-bar 400 4]Feedback[/title-bar] -[if value form_errors] : [value form_errors][value name=form_errors set=""][/if] -Subject: -Name: (optional) -Email: (optional) -Message: -: -[/quick-table] -
    - -
    - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pages/flypage.html b/dist/simple/pages/flypage.html deleted file mode 100644 index e47a8a4c1..000000000 --- a/dist/simple/pages/flypage.html +++ /dev/null @@ -1,215 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title][item-description][/set] -[flag type=build] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -[comment] - This the special "flypage". When a page is called that - corresponds to a part number in the database, and that - page doesn't exist, this page is used to display it. - - Everywhere you see [item-code] the part number will - be displayed. - - [item-field title] displays the title field in the - products database. [item-data products title] is the - same in this case, but if the products database contained - more than one table (with ProductFiles) then [item-field title] - could come from another table. -[/comment] -[comment] - This next is an Interchange UserTag -- if you see it in the page, then - you don't have it defined in catalog.cfg. -[/comment] -[table-font FACE="verdana,arial, helvetica" SIZE=3] - - - - - - - - - - - - - - - -
    [item-field category]
    - - - - - - - - - - - - - - - - - - - - - - - - - - -
    [if-item-field image][item-field title][/if-item-field][item-field title]
    -by -[filter name namecase][item-field artist][/filter]

    -Price: [item-price]   buy now

    -[item-field comments]

    -More [filter lower][item-field category][/filter]...
    -
    - [page quantity [item-code]][L]Quantity Pricing[/L][/page]
    -
    - [L]Catalog[/L] [L]Number[/L]: [item-code] -

    - - [item-data products comment] - -

    - [if ordered [item-code]] -

    - - This item is currently in your shopping cart. - -

    - [/if] - [if-item-field size] -

    - [calc] - $qty = q{[cgi prospective_price]} || 1; - return ''; - [/calc] -

    - - - - - - - - -
    - - - - - - -
    - [item-accessories size][item-accessories color] -
    - - - - - - - - - [loop prefix=color list="[item-accessories color, options]"] - - - - [loop prefix=size arg="[item-accessories size, options]"] - - [/loop] - - [/loop] -
    - Quick-order
    - [loop arg="1 5 10 25 100"] - [if cgi prospective_price == [loop-code]] - [loop-code] - [elsif !value prospective_price] - [loop-code] - [/elsif] - [/if] - [/loop]
    - -
    - Color - - Sizes -
    - [color-code] - - - > - - [size-code] -
    -
    -
    -
    - [else] -
    [order [item-code]]Order Now

    - [/else] - [/if-item-field] - -
    -
    - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pages/index.html b/dist/simple/pages/index.html deleted file mode 100644 index b416a48c2..000000000 --- a/dist/simple/pages/index.html +++ /dev/null @@ -1,136 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]__COMPANY__ Catalog[/set] -[comment] - The __VALUES__ below are Interchange Variable settings. - In this case, they come from these settings in catalog.cfg: - - ## Set some menubars and headers - ConfigDir pages - Variable LEFTSIDE - - -[comment] -This is the default page of the catalog. -[/comment] - - -[comment] - - This [loop] repeats the container code for every product - code returned by the search with a random parameter. The random=2 - causes a random set (of 2) of the results returned from the search - to be iterated over. - - The effect is to have a changing "specials" display on - the front page. - -[/comment] - - -[loop random=3 - search= | - fi=merchandising - st=db - sf=featured - se=front - ml=25 - | -] - - - - - - - - - - - - - - -[/loop] -
    [if-loop-data merchandising banner_text][loop-data merchandising banner_text][else][loop-field category][/else][/if-loop-data]
    - - - - - - - - - - - - - - - - - - - - - - - -
    [if-loop-field image][loop-field title][/if-loop-field][loop-field title]
    -by -[filter name namecase][loop-field artist][/filter]

    -Price: [loop-price]   buy now

    -[loop-field comments]

    -More [filter lower][loop-field category][/filter]...
    -
    - - -[comment] And the footer as above. [/comment] - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/simple/pages/last_search.html b/dist/simple/pages/last_search.html deleted file mode 100644 index b92bf076a..000000000 --- a/dist/simple/pages/last_search.html +++ /dev/null @@ -1,14 +0,0 @@ -[if session last_search] - [set name=arg interpolate=1][data session last_search][/set] -[else] - [set name=arg]/[/set] -[/else] -[/if] -[tag op=header interpolate=1] -Status: 302 moved -Location: [area href="[scratch arg]"] -[/tag][comment] - This page redirects the user to the last search - that was saved. If no search is present, then - they will go to the index page. -[/comment] diff --git a/dist/simple/pages/login.html b/dist/simple/pages/login.html deleted file mode 100644 index fb1a7014d..000000000 --- a/dist/simple/pages/login.html +++ /dev/null @@ -1,118 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Log in[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -
    - - -
    - Log in -
    - -
    -[if session failure] -

    -[data session failure] -

    -[/if] -If you have an account with us, please enter your user name and password. (test/test for testing) -

    -

    -
    - - - - - - - - - - - - - -
    Username -
    Password -    -
      Log me in automatically
    - -
    -

    -

    - - - - - - - - - - - - - - - - - - -
    - Lost your customer ID? -
    -
    - Just complete enough to ensure one match. -
    - - - - - - - - - - - - - - - - - - - - - - - -
    - First Name -
    - Last Name -
    - Email -
    - Zip Code -
     
    -
    -
    -
    - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pages/logout.html b/dist/simple/pages/logout.html deleted file mode 100644 index d2eaf18e0..000000000 --- a/dist/simple/pages/logout.html +++ /dev/null @@ -1,33 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Nuke the cookies[/set] -[set name=done int][userdb function=logout clear=1][/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -[if scratch done] - -

    Bye Bye!

    -Thanks for stopping in! - -[else] -

    OOPS!

    -You refuse to be logged out. -[/else] -[/if] - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/simple/pages/multi/b_address.html b/dist/simple/pages/multi/b_address.html deleted file mode 100644 index 4e9fc85ba..000000000 --- a/dist/simple/pages/multi/b_address.html +++ /dev/null @@ -1,73 +0,0 @@ -[set page_title]Enter Billing Address[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - -
    -Billing Address (if different) -
    - -
    - - - - - - - - - - - - - - - - - - - -
    Name - - -
    Address - - -
    City, State, Postal Code - - - -
    Country - -
    - -[if session logged_in] - -   - - - If you want to save this address in your address book, - [if value address_book]or recall a saved address,[/if] - click the button below.
    - - -
    - - -[/if] - -[if value mv_shipmode] - Use shipping mode [shipping-desc] ([shipping]) - Change shipping -[else] - Select shipping -[/else] -[/if] -

    - -

    - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pages/multi/basket.html b/dist/simple/pages/multi/basket.html deleted file mode 100644 index 451e2ae6c..000000000 --- a/dist/simple/pages/multi/basket.html +++ /dev/null @@ -1,281 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Shopping Cart Contents[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - -[if type=explicit compare="q{[read-cookie MV_SESSION_ID]}"] -[elsif scratch tried] -You must have cookies set to leave the basket. Check out now or forever -lose your shopping cart. -[/elsif] -[else] -[set tried]1[/set] -[bounce href="[area multi/basket]"] -[/else] -[/if] -
    - - - - - -[comment] - This next is an Interchange UserTag -- if you see it in the page, then - you don't have it defined in catalog.cfg. -[/comment] - -[table-font FACE="verdana,arial, helvetica" size="2"] - - - - - - - - - - - - - - - - - - - - - -[if items] -[then] -[item-list] - - - - - - - - - - -[/item-list] -[/then] -[else] - -[/else] -[/if] - - - - - - - - -
    Shopping Cart Contents
    -

    SKU

    -
      -

    Description

    -
    -

    Quantity

    -
    -

    Price

    -
      -

    Extension

    -
    - [item-code]
    remove
      - [page [item-code]][item-description] - [if-item-data pricing sku] -
    [page quantity [item-code]] - QUANTITY PRICING - - [/if-item-data] - [if-item-field weight]
    - WEIGHT: [summary amount=`[item-quantity] * [item-field weight]`] - [/if-item-field] -
    - [if-item-field related] - [if !ordered [item-field related]] - - [loop arg="[item-field related]"] - [loop-change 1][condition]1[/condition] - - - [/loop-change 1] - [if !ordered [loop-code]] - - - - - [/if] - [/loop] -
    Other items you may like:
    [loop-field title]
    - [/if] - [/if-item-field][item-accessories size][item-accessories color] -
    - - - - [discount-price] - [if discount [item-code]] -
    Item is discounted - [item-discount] - - [/if] -
      - [item-subtotal] -
    -

    No items at the moment.

    -
    -[summary format="Shipping weight: %s" total=1]       Subtotal [subtotal]
    - - - - [if session logged_in] - [and !value show_saved] -
    Show saved carts - [/if] -
    -
    -
    - -[if session logged_in] -[and value show_saved] -[userdb function=get_cart_names hide=1] -

    -

    - - - - - - - - - - - - - - - - - -[set Save to new cart] -[value name=c_nickname set="[value c_nickname0]"] -[userdb function=set_cart nickname="[value name=c_nickname filter='nullselect no_white']"] -[/set] - -[set Save to existing cart] -[userdb function=set_cart nickname="[value c_nickname]"] -[/set] - -[set Recall cart(s)] -[userdb function=get_cart nickname="[value c_nickname]"] -[/set] - -[set DELETE cart] -[if value c_delete] -[value name=c_delete set=""] -[userdb function=delete_cart nickname="[value c_nickname]"] -[else] -[set c_delete_message]Must click the checkbox.[/set] -[/else] -[/if] -[/set] - - -
    Cart Storage Area
    -

    New Cart Name

    -
    -

    Existing Cart Name

    -
    -

    Confirm

    -
    -   - - - - Yes, delete - [scratch c_delete_message] - [set c_delete_message][/set] -
    - - - - -
    Hide saved carts -
    -
    -[/if] -[/table-font] - -[set Continue shopping] -[bounce href='[history-scan exclude="^/ord|^/multi/|^/process" default=browse]'] -mv_nextpage=nothing -[/set] - -[set Stop shopping] -mv_todo=return -mv_nextpage=canceled -[/set] - -[set Check out] -mv_todo=return -mv_nextpage=multi/checkout -[/set] - -
    - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pages/multi/checkout.html b/dist/simple/pages/multi/checkout.html deleted file mode 100644 index a80b6a4d8..000000000 --- a/dist/simple/pages/multi/checkout.html +++ /dev/null @@ -1,216 +0,0 @@ -[set name=page_title interpolate=1]Check out with [nitems] items in basket[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - -[if !session logged_in] - - -
    - Create a new account -
    -

    -
    -It is not required, but if you frequently do business with us you can -create a new account. -

    -Or if you already have an account, you can log in. -

    -[/if] - -

    -
    - - - - - -[if items] -[then] - - - -[item-list] - - - - - - -[/item-list] - - - - - - - - - - - - - - - - - - - - -
    - Review order details -
    - remove - - - [item-description] - [item-quantity] @ [item-price][item-subtotal]
    Back to cart
    Subtotal[subtotal]
    Sales Tax[salestax]
    Shipping[shipping]
    TOTAL[total-cost]
    -[/then] -[else] - -

    No items in your basket.

    -

    -You can enter information, and it will be saved, but no checkout will happen until you order something! - -[/else] -[/if] - - -[if type=explicit compare="[error all=1 show_var=1 keep=1]"] -

    -There were errors in your last submission. -They are shown in __CONTRAST__ below. -

    -[/if] - -[if variable CREDIT_CARDS_ACCEPTED =~ /\S/] -
    -[error std_label="Credit Card Information" name=mv_credit_card_valid]      [calc] - my $accepted = $Variable->{CREDIT_CARDS_ACCEPTED}; - my (@out); - my (@cc); - my $out; - push @cc, 'visa' if $accepted =~ /visa/; - push @cc, 'mc' if $accepted =~ /mc/; - push @cc, 'disc' if $accepted =~ /discover/; - push @cc, 'amex' if $accepted =~ /amex/; - for (@cc) { - push @out, qq{}; - } - return join '  ', @out; -[/calc] -
    - - - -
    -Card Number (test number 4111 1111 1111 1111)
    - -[if variable MV_PAYMENT_MODE =~ /minivend_test/] -
    Interchange test should yield: - Success - Failure -[/if] - -
    - Expires -
    - - -
    -
    -[if scratch some_downloadable] - To download items, you must pay by credit card [if variable PO_ACCEPTED]or purchase order[/if]
    - [value name=fax_order set=0 hide=1] -[/if] - - - Pay by credit card
    - [if value tried_credit_card] - - Force this card number to be taken
    - [/if] -[/if] - -[if variable CHECK_ACCEPTED] - - I will call with payment information
    -[/if] - -[if variable PO_ACCEPTED] - - I will pay by purchase order - [error name=credit_limit_ok std_label="PO Number" required=1]  - [if type=data - term="userdb::credit_limit::[data session username]" - op=">" - compare=0.01] -
    - Current credit limit: - [currency] - [data table=userdb col=credit_limit key="[data session username]"] - [/currency] - - [if type=data - term="userdb::credit_limit::[data session username]" - op=< - compare="[total-cost noformat=1]" - ] -
    - Order total [total-cost] exceeds credit limit, please call. - [/if] -
    - [/if] -
    -[/if] - -[if variable COD_ACCEPTED] - - I will pay by COD ([handling cod] extra charge will be added)
    -[/if] - -
    -
    - -
    -Email preferences -
    - - - - - - - - - - -
    - Yes - No - - Send an email copy of my receipt -
    - Yes - No - - Put me on your email list of infrequent offers -
    - -

    -
    -
    - - - -
    -Gift note or Special Instructions
    -
    - -
    -
    -
    - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/simple/pages/multi/nobasket.html b/dist/simple/pages/multi/nobasket.html deleted file mode 100644 index 7d9a5f46b..000000000 --- a/dist/simple/pages/multi/nobasket.html +++ /dev/null @@ -1,5 +0,0 @@ -[tag op=header interpolate=1] -Status: 302 moved -Content-type: text/html -Location: [area href="[data session last_search]"] -[/tag][set mv_no_cache]1[/set] diff --git a/dist/simple/pages/multi/shipping.html b/dist/simple/pages/multi/shipping.html deleted file mode 100644 index d4df57740..000000000 --- a/dist/simple/pages/multi/shipping.html +++ /dev/null @@ -1,86 +0,0 @@ -[set page_title]Select Shipping mode[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ -[set only_downloadable]1[/set] -[set some_downloadable][/set] -[item-list] - [if-item-field weight][set only_downloadable][/set][/if-item-field] - [if-item-field download][set some_downloadable]1[/set][/if-item-field] -[/item-list] -[if scratch only_downloadable] - [bounce href="[area href=multi/final secure=1]"] -[/if] - - -
    - - -[if !scratch only_downloadable] -

    -
    -Choose your shipping method -
    - -

    - - - - - - -
    - -
    -[if session ship_message] -
    Note: [data session ship_message]
    -[/if] -
    - -[else] -

    - You only have downloadable products. There is no shipping cost; you will - be able to download after purchase. -
    -[/else] -[/if] - - -

    - -

    - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/simple/pages/new_account.html b/dist/simple/pages/new_account.html deleted file mode 100644 index 7e0d7196b..000000000 --- a/dist/simple/pages/new_account.html +++ /dev/null @@ -1,266 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standalone -ui_template_layout: LOGOBAR, MENUBAR, UI_CONTENT, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top logo bar. menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set members_only][/set] -[set page_title]__COMPANY__ -- [L]Create a new account[/L][/set] -__LOGOBAR__ -__MENUBAR__ - - -[title-bar 500 4]Create an account at __COMPANY__[/title-bar] -[set NewAccount] -[if type=explicit compare="[userdb new_account]"] -mv_nextpage=account -[else] -mv_nextpage=new_account -[/else] -[/if] -[/set] - -

    -[if session failure] -[data session failure] -[data base=session field=failure value=""] -[/if] -

    -

    - - - - - - - - - - - - - - - - - -
    Username -
    Password -
    Verify -

    - - Log me in automatically (sets cookie) -
    - -[title-bar 500 2] -
    You are not required to give us the below information yet, but it will -be retained for your checkout. We have a privacy policy -that protects you.
    -[/title-bar] - -[title-bar 500 4]Shipping Address[/title-bar] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - [error name=fname std_label="First Name" required=1] - - [error name=lname std_label=Last required=1]  -
    [error name=address1 std_label=Address required=1] - -
      - -
    - [error name=city std_label="City" required=1] - - - - - - - - - -
    - - - [error name=state std_label="State/Province" required=1] - - - - [error name=zip std_label="Zip/Postal Code" required=1] - - -
    -
    [error name=email std_label="Email Address" required=1] - -
    - Country - - [if value country =~ /(^$|US|CA)/] - - [else] - - [/else] - [/if] (will update display) -
    [error name=phone_day std_label="Daytime Phone" required=1] - - - - - - -
    - - - Evening - - -
    -
    - Shipping method - - -
    - We need the bold fields to process your order -
    - -[title-bar 500 3] - - - -[/title-bar] - - -[title-bar 500 4]Mailing status
    - - - Send an email copy of my receipt
    - - - Put me on your email list of infrequent offers -

    [/title-bar] - -[title-bar 500 4]Billing Address (if different)[/title-bar] - - - - - - - - - - - - - - - - - - - - - - -
    Name - - -
    Address - - -
    City, State, Postal Code - - - -
    Country - -
    - Payment method - - - Pay by credit card
    - - I will call with payment information
    -
    - -[title-bar 500 3] - - - -[/title-bar] - -

    - - -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/simple/pages/news.html b/dist/simple/pages/news.html deleted file mode 100644 index 5a763c4c9..000000000 --- a/dist/simple/pages/news.html +++ /dev/null @@ -1,254 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]News[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -
    - -You may note a new look for Interchange's "simple" demo. -

    -[page reconfig/reconfig]Reconfigure the catalog[/page] -(must be user minivend) -

    -[page reconfig/upload]Upload/download files[/page] -(must be user minivend) - -

    - -

    New features

    -
      -
    • You can order items on the fly: -

      -Order it -

      -You can set quantities: -

      -Order 10 of it -

      -You can use a form: -

      - - - - Qty: - - - -
      -

      -You can order more than one item: -

      - Order two different items -

      - -You can use a form here, too: -

      -

      - - - - Qty:
      - - - - Qty:
      - - -
      -

      -[mvasp] -

    • A new ASP-style syntax is supported (and is used in this section): -
      -        <HTML MV=mvasp><BODY>This is HTML
      -        <%
      -            $Document->write('This is code');
      -        %>
      -        HTML again.
      -        <%
      -            $Document->write('Code again.');
      -        %>
      -
      -
    • A new Perl object set is there to support the ASP, but - it also is available via - - [perl arg=new] - $Document-&gt;write("Your name is $Values-&gt;{name}"); - [/perl] - - Objects supported are: - - $CGI->{key} Hash reference to submitted values - $Document->write() Writes to page - $Carts->{cartname} Direct reference to shopping carts - $Config->{key} Direct reference to $Vend::Cfg - $Items->[n] Direct reference to current cart - $Scratch->{key} Direct reference to scratch area - $Session->{key} Direct reference to session area - $Tag->tagname(@args) Call a tag as a routine (UserTag too!) - $Values->{key} Direct reference to user form values - $Variable->{key} Direct reference to Interchange Variable - &Log($msg) Log to the error log - - -<% = "Here is a ", - $Tag->page('mvasp'), - "test link generated by MV's ASP-style syntax."; - %> -

      -

    • Tag parameters quoted with parameter=`code` are the equivalent of - parameter="[calc]code[/calc]". - -
    • Tag parameters can be quoted with | to strip whitespace: - - - [page href=| - [value name="whatever"] - |] - - is equivalent to - - - [page href="[value name="whatever"]"] - - -
    • Tag parameters can be quoted with | to strip whitespace: - - - [page href=| - [value name="whatever"] - |] - - - is equivalent to - - [page href="[value name="whatever"]"] - -
    • Tag parameters can be quoted with @ to insert a scratch - value: - - [value name=foo set=@bar@] - [value name=foo set="[scratch bar]"] - - This can be useful when setting large values into variables, - as it is much more efficient than the previous method. - -
    • Input values filters can be set up by quoting with ! and - an operation: - - <INPUT TYPE=text NAME=phone VALUE="[value name=!phone:digits!]"> - - This guarantees that the value of "phone" will be digits only - when sent to Interchange. Filters include: -
      -          uc          UPPER CASE 
      -          lc          lower case 
      -          digits      only digits
      -          word        only A-Z a-z _ 0-9
      -          urlencode   space becomes %20
      -          entities    < becomes <
      -          strip       strip leading/trailing whitespace
      -          no_white    strip all whitespace
      -          gate        set to blank unless scratch variable
      -                       with same name is non-blank
      -          n           (where n is an integer) length limit
      -          remove      delete existing filter (if any)
      -
      - Filters can also be created with Filter directive - and/or [input-filter op="uc"][/input-filter] - -
    • Filter directive allows filtering of certain CGI variables - for input conditioning; this is not session dependent and - automatically operates on any iteration of the variable... -
      - Filter phone digits 10 -
      - That removes all non-digit values from the variable "phone", - then limits length to 10. Any session-based filters are applied - after this one. - -
    • Small improvements in the parser, notably optimization when - positional parameters are used. - -
    • ECML is supported via the Vend::ECML module. To map the - checkout form values from Interchange UserDB names, with an [ecml ...] - tag: - - [ecml state] - - is equivalent to: - - <INPUT TYPE=text - VALUE="[value state]" - NAME=Ecom_ShipTo_Postal_StateProv - SIZE=2> - -
    • The [price] tag now supports pricing with attributes (size/color etc.). - If you do - - [price code=99-102 size=XL color=RED] - [price code=99-102 size=L color=RED] - [price code=99-102 size=L color=BLUE] - - in the demo, this will demonstrate it. - -
    • The idiom: - - #include directory/* - - now is supported (and used in the demo minivend.cfg file). This - includes all files in that directory (but not subdirectories) - and allows you to include the whole directory. It should make - maintaining multiple servers a bit easier. - -
    • Made some minor changes in the demo: -
        -
      1. updated flypage to show attribute-based price tag -
      2. added [email to=addr from=addr subject=subj] message [/email] - UserTag which is better then the form_mail GlobalSub. It will - allow $Tag->email() to be used, among other things. -
      3. Static build should work out of the box if you - have DBM and define: -
      - - StaticDBM static - -
    -
    -[/mvasp] - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/simple/pages/no_cookie.html b/dist/simple/pages/no_cookie.html deleted file mode 100644 index a909d47cb..000000000 --- a/dist/simple/pages/no_cookie.html +++ /dev/null @@ -1,28 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Nuke the cookies[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - - -[set-cookie name=MV_USERNAME value="0" expires="01-Jan-2020 00:00:01 GMT"] -[set-cookie name=MV_PASSWORD value="0" expires="01-Jan-2020 00:00:01 GMT"] - -

    Bye-Bye Cookies!

    -You will no longer be automatically logged in. - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/simple/pages/nothing.html b/dist/simple/pages/nothing.html deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/simple/pages/ord/basket.html b/dist/simple/pages/ord/basket.html deleted file mode 100644 index db332a62f..000000000 --- a/dist/simple/pages/ord/basket.html +++ /dev/null @@ -1,281 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Shopping Cart Contents[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - -[if type=explicit compare="q{[read-cookie MV_SESSION_ID]}"] -[elsif scratch tried] -You must have cookies set to leave the basket. Check out now or forever -lose your shopping cart. -[/elsif] -[else] -[set tried]1[/set] -[bounce href="[area ord/basket]"] -[/else] -[/if] -
    - - - - - -[comment] - This next is an Interchange UserTag -- if you see it in the page, then - you don't have it defined in catalog.cfg. -[/comment] - -[table-font FACE="verdana,arial, helvetica" size="2"] - - - - - - - - - - - - - - - - - - - - - -[if items] -[then] -[item-list] - - - - - - - - - - -[/item-list] -[/then] -[else] - -[/else] -[/if] - - - - - - - - -
    Shopping Cart Contents
    -

    SKU

    -
      -

    Description

    -
    -

    Quantity

    -
    -

    Price

    -
      -

    Extension

    -
    - [item-code]
    remove
      - [page [item-code]][item-description] - [if-item-data pricing sku] -
    [page quantity [item-code]] - QUANTITY PRICING - - [/if-item-data] - [if-item-field weight]
    - WEIGHT: [summary amount=`[item-quantity] * [item-field weight]`] - [/if-item-field] -
    - [if-item-field related] - [if !ordered [item-field related]] - - [loop arg="[item-field related]"] - [loop-change 1][condition]1[/condition] - - - [/loop-change 1] - [if !ordered [loop-code]] - - - - - [/if] - [/loop] -
    Other items you may like:
    [loop-field title]
    - [/if] - [/if-item-field][item-accessories size][item-accessories color] -
    - - - - [discount-price] - [if discount [item-code]] -
    Item is discounted - [item-discount] - - [/if] -
      - [item-subtotal] -
    -

    No items at the moment.

    -
    -[summary format="Shipping weight: %s" total=1]       Subtotal [subtotal]
    - - - - [if session logged_in] - [and !value show_saved] -
    Show saved carts - [/if] -
    -
    -
    - -[if session logged_in] -[and value show_saved] -[userdb function=get_cart_names hide=1] -

    -

    - - - - - - - - - - - - - - - - - -[set Save to new cart] -[value name=c_nickname set="[value c_nickname0]"] -[userdb function=set_cart nickname="[value name=c_nickname filter='nullselect no_white']"] -[/set] - -[set Save to existing cart] -[userdb function=set_cart nickname="[value c_nickname]"] -[/set] - -[set Recall cart(s)] -[userdb function=get_cart nickname="[value c_nickname]"] -[/set] - -[set DELETE cart] -[if value c_delete] -[value name=c_delete set=""] -[userdb function=delete_cart nickname="[value c_nickname]"] -[else] -[set c_delete_message]Must click the checkbox.[/set] -[/else] -[/if] -[/set] - - -
    Cart Storage Area
    -

    New Cart Name

    -
    -

    Existing Cart Name

    -
    -

    Confirm

    -
    -   - - - - Yes, delete - [scratch c_delete_message] - [set c_delete_message][/set] -
    - - - - -
    Hide saved carts -
    -
    -[/if] -[/table-font] - -[set Continue shopping] -[bounce href='[history-scan exclude="^/ord|^/multi/|^/process" default=browse]'] -mv_nextpage=nothing -[/set] - -[set Stop shopping] -mv_todo=return -mv_nextpage=canceled -[/set] - -[set Check out] -mv_todo=return -mv_nextpage=ord/checkout -[/set] - -
    - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pages/ord/checkout.html b/dist/simple/pages/ord/checkout.html deleted file mode 100644 index 5f5071ae0..000000000 --- a/dist/simple/pages/ord/checkout.html +++ /dev/null @@ -1,583 +0,0 @@ -[set page_title]Check out -- __COMPANY__[/set] -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - -
    -NOTE: If you access something above, it will not save anything you have entered.
    - - -[if !items] - - - - - -
    - No Items? -
    -You have no items in your shopping cart. -

    This usually means that one of several things has occurred: -

      -
    • You have cookies turned off. This is not fatal unless you travel through -a proxy server to get to the net (don't worry if you don't know what that means). -You can confirm this by [page form=" - mv_nextpage=ord/checkout - mv_todo=return -"]going to the checkout page in non-secure mode. -
    • Our server is misconfigured. -
    -Try calling us at __PHONE__ [if variable TOLLFREE]or __TOLLFREE__[/if] -to place the order. -
    -[/if] - -[if session logged_in] -[then] - -[set Log out] -mv_todo=return -mv_nextpage=ord/checkout -[userdb function=logout clear=1] -[/set] - -[/then] -[else] - -[title-bar 400 5]Create a new account[/title-bar] -

    -It is not required, but if you frequently do business with us you can -create a new account. -

    -[title-bar 400 5]Log in[/title-bar] - -[if session failure] -

    -[data session failure] -

    -[/if] -If you have an account with us, please enter your user name and password. (test/test for testing) -

    -

    - - - - - - - - - - - - -
    Username -
    Password -    -
      Log me in automatically
    - -
    - -[/else][/if] - - -
    - - -[if type=explicit compare="[error all=1 show_var=1 keep=1]"] -

    -There were errors in your last submission. -They are shown in this color below. -

    -[/if] - - -[comment] - - -[/comment] - - - -
    -Shipping Address -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[if session logged_in] - - - - -[/if] - -
    - [error name=fname std_label="First Name" required=1] - -
    - [error name=lname std_label="Last Name" required=1] - - -
    [error name=address1 std_label=Address required=1] - -
      - -
    - [error name=city std_label="City" required=1] - - -
    - [error name=state std_label="State/Province" required=1] - - -
    - [error name=zip std_label="Zip/Postal Code" required=1] - - -
    [error name=email std_label="Email Address" required=1] - -
    - Country - - [if value country =~ /(^$|US|CA)/] - - [else] - - [/else] - [/if] (will update display) -
    [error name=phone_day std_label="Daytime Phone" required=1] - -
    - [error name=phone_night std_label="Evening Phone" required=0] - - -
      - We need the bold fields to process your order -
      - [set Go to address book] - mv_todo=refresh - mv_nextpage=account - [/set] - - [set Save_database] - [userdb save] - [/set] - - - If you want to save this address in your address book, - [if value address_book]or recall a saved address,[/if] - click the button below.
    - - -
    -
    -[set only_downloadable]1[/set] -[set some_downloadable][/set] -[item-list] - [if-item-field weight][set only_downloadable][/set][/if-item-field] - [if-item-field download][set some_downloadable]1[/set][/if-item-field] -[/item-list] -[if !scratch only_downloadable] -

    -
    -Choose your shipping method -
    - -

    - - - - - - - -
    - -
    -[if session ship_message] -
    Note: [data session ship_message]
    -[/if] -
    -[/if] - -[if variable CREDIT_CARDS_ACCEPTED =~ /\S/] -
    -[error std_label="Credit Card Information" name=mv_credit_card_valid]      [calc] - my $accepted = $Variable->{CREDIT_CARDS_ACCEPTED}; - my (@out); - my (@cc); - my $out; - push @cc, 'visa' if $accepted =~ /visa/; - push @cc, 'mc' if $accepted =~ /mc/; - push @cc, 'disc' if $accepted =~ /discover/; - push @cc, 'amex' if $accepted =~ /amex/; - for (@cc) { - push @out, qq{}; - } - return join '  ', @out; -[/calc] -
    - -

    - -
    -Card Number (test number 4111 1111 1111 1111)
    - -[if variable MV_PAYMENT_MODE =~ /minivend_test/] -
    Interchange test should yield: - Success - Failure -[/if] -
    - Expires -
    - - -
    -[if scratch some_downloadable] - To download items, you must pay by credit card [if variable PO_ACCEPTED]or purchase order[/if]
    - [value name=fax_order set=0 hide=1] -[/if] - - - Pay by credit card
    - [if value tried_credit_card] - - Force this card number to be taken
    - [/if] -[/if] - -[if variable CHECK_ACCEPTED] - - I will call with payment information
    -[/if] - -[if variable PO_ACCEPTED] - - I will pay by purchase order - [error name=credit_limit_ok std_label="PO Number" required=1]  - [if type=data - term="userdb::credit_limit::[data session username]" - op=">" - compare=0.01] -
    - Current credit limit: - [currency] - [data table=userdb col=credit_limit key="[data session username]"] - [/currency] - - [if type=data - term="userdb::credit_limit::[data session username]" - op=< - compare="[total-cost noformat=1]" - ] -
    - Order total [total-cost] exceeds credit limit, please call. - [/if] -
    - [/if] -
    -[/if] - -[if variable COD_ACCEPTED] - - I will pay by COD ([handling cod] extra charge will be added)
    -[/if] - -
    -Billing Address (if different) -
    - - - - - - - - - - - - - - - - - - - - -[if session logged_in] - - - - -[/if] - -
    Name - - -
    Address - - -
    City/ST/Zip - - - -
    Country - -
      - - If you want to save this address in your address book, - [if value address_book]or recall a saved address,[/if] - click the button below.
    - - -
    -
    - -[set Place Order!] -mv_todo=submit -[/set] - -
    -Email preferences -
    - - - - - - - - - - -
    - Yes - No - - Send an email copy of my receipt -
    - Yes - No - - Put me on your email list of infrequent offers -
    - -[if items] -[then] - - - -[item-list] - - - - - - -[/item-list] - - - - - - - - - - - - - - - - - - - - -
    - Review order details -
    - remove - - - [item-description] - [item-quantity] @ [item-price][item-subtotal]
    Back to cart
    Subtotal[subtotal]
    Sales Tax[salestax]
    Shipping[shipping]
    TOTAL[total-cost]
    -

    -

    -
    -
    -[/then] -[else] - -

    No items in your basket.

    -

    -You can enter information, and it will be saved, but no checkout will happen until you order something! - -[/else] -[/if] -

    - -
    - -

    -Gift note or Special Instructions
    - - -[error all=1 hide=1 comment="Clear errors"] -

    -NOTE: If you access something below, it will not save anything you have entered. - -

    -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pages/ord/nobasket.html b/dist/simple/pages/ord/nobasket.html deleted file mode 100644 index 7d9a5f46b..000000000 --- a/dist/simple/pages/ord/nobasket.html +++ /dev/null @@ -1,5 +0,0 @@ -[tag op=header interpolate=1] -Status: 302 moved -Content-type: text/html -Location: [area href="[data session last_search]"] -[/tag][set mv_no_cache]1[/set] diff --git a/dist/simple/pages/privacy.html b/dist/simple/pages/privacy.html deleted file mode 100644 index ccb19beba..000000000 --- a/dist/simple/pages/privacy.html +++ /dev/null @@ -1,32 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Privacy Policy[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -[title-bar 400 4]Privacy Policy[/title-bar] -
    - -
      -
    • We will only send you email directly related to orders you place. -
    • We will not assume that you want promotional email just because -you ordered from us. -
    • We will not give your information to anyone else. -
    -
    - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pages/quantity.html b/dist/simple/pages/quantity.html deleted file mode 100644 index 1ac1b531e..000000000 --- a/dist/simple/pages/quantity.html +++ /dev/null @@ -1,94 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[loop arg="[data session arg]"] -[set page_title][loop-description][/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -[if-loop-field category][L]Category[/L]: [loop-field category][/if-loop-field] -

    -[if-loop-field image] - -

    -[order [loop-code]][L]ORDER NOW[/L][/order] -

    -[/if-loop-field] -

    [loop-field title]

    -

    [loop-field artist]

    -

    - - - - - - - - - - - - - - - - - - - -
    - -

    [L]Quantity Pricing[/L]

    - [if type=explicit compare="[calc] - return 1 if q{[loop-price 1 noformat]} > 1000; - return 0; - [/calc]"] - Remember, an original costs more! - [/if]
    - - Part No. - - - 1 - - - 2 - - - 5 - - - 10 - - - 25 -
    [loop-code] - [order code="[loop-code]" quantity=1][loop-price 1] - - [order code="[loop-code]" quantity=2][loop-price 2] - - [order code="[loop-code]" quantity=5][loop-price 5] - - [order code="[loop-code]" quantity=10][loop-price 10] - - [order code="[loop-code]" quantity=25][loop-price 25]

    - -

    - - - - - -[if type=explicit compare="[error all=1 show_var=1 keep=1]"] -

    -There were errors in your last submission. -They are shown in __CONTRAST__ below. -

    -[/if] - -
    -Shipping Address -[if !items] -

    -(no items ordered) -[/if] -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[if session logged_in] - - - - -[/if] -
    - [error name=fname std_label="First Name" required=1] - - [error name=lname std_label=Last required=1]  -
    [error name=address1 std_label=Address required=1] - -
      - -
    - [error name=city std_label="City" required=1] - - - - - - - - - -
    - - - [error name=state std_label="State/Province" required=1] - - - - [error name=zip std_label="Zip/Postal Code" required=1] - - -
    -
    [error name=email std_label="Email Address" required=1] - -
    - Country - - [if value country =~ /(^$|US|CA)/] - - [else] - - [/else] - [/if] (will update display) -
    [error name=phone_day std_label="Daytime Phone" required=1] - - - - - - -
    - - - Evening - - -
    -
    - We need the bold fields to process your order -
      - [set Go to address book] - mv_todo=refresh - mv_nextpage=account - [/set] - - [set Save_database] - [userdb save] - [/set] - - - If you want to save this address in your address book, - [if value address_book]or recall a saved address,[/if] - click the button below.
    - - -
    -
    -[set scrub_bill] -b_lname= -b_fname= -b_address1= -b_address2= -b_city= -b_state= -b_zip= -b_country= -mv_nextpage=multi/shipping -[/set] -[set xfer_bill] -[perl] - for ( qw/ lname fname address1 address2 city state zip country /) { - $Values->{"b_$_"} = $Values->{$_} - if ! $Values->{"b_$_"}; - } - return; -[/perl] -mv_nextpage=multi/b_address -[/set] -[if value b_address1] - - Billing same as shipping    - - Separate billing address -[else] - - Billing same as shipping - - Separate billing address -[/else] -[/if] -

    - - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/simple/pages/multi/final.html b/dist/simple/pages/multi/final.html deleted file mode 100644 index 877b76578..000000000 --- a/dist/simple/pages/multi/final.html +++ /dev/null @@ -1,232 +0,0 @@ -[set name=page_title interpolate=1]Check out with [nitems] items in basket[/set] - -__LOGOBAR__ -__MENUBAR__ -__NO_LEFT__ - -

    - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ -[/loop] - diff --git a/dist/simple/pages/query/check_orders.html b/dist/simple/pages/query/check_orders.html deleted file mode 100644 index 057d1a8fa..000000000 --- a/dist/simple/pages/query/check_orders.html +++ /dev/null @@ -1,207 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standalone -ui_template_layout: LOGOBAR, MENUBAR, UI_CONTENT, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top logo bar. menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set members_only]1[/set] -[set page_title]__COMPANY__ -- Order Status[/set] -__LOGOBAR__ -__MENUBAR__ - - -[comment] -+----------------+---------------+------+-----+---------+-------+ -| Field | Type | Null | Key | Default | Extra | -+----------------+---------------+------+-----+---------+-------+ -| code | varchar(14) | | PRI | | | -| store_id | varchar(9) | | MUL | | | -| order_number | varchar(14) | | MUL | | | -| session | varchar(32) | | | | | -| username | varchar(20) | | | | | -| shipmode | varchar(32) | | | | | -| nitems | varchar(9) | | | | | -| subtotal | varchar(12) | | | | | -| shipping | varchar(12) | | | | | -| handling | varchar(12) | YES | | NULL | | -| total_cost | varchar(16) | | | | | -| fname | varchar(30) | YES | | NULL | | -| lname | varchar(30) | YES | | NULL | | -| company | varchar(30) | YES | | NULL | | -| address1 | varchar(30) | YES | | NULL | | -| address2 | varchar(30) | YES | | NULL | | -| city | varchar(30) | | | | | -| state | varchar(10) | YES | | NULL | | -| zip | varchar(10) | | | 00000 | | -| country | varchar(10) | | | | | -| phone_day | varchar(20) | YES | | NULL | | -| phone_night | varchar(20) | YES | | NULL | | -| fax | varchar(20) | YES | | NULL | | -| email | varchar(42) | YES | | NULL | | -| b_fname | varchar(30) | YES | | NULL | | -| b_lname | varchar(30) | YES | | NULL | | -| b_company | varchar(30) | YES | | NULL | | -| b_address1 | varchar(30) | YES | | NULL | | -| b_address2 | varchar(30) | YES | | NULL | | -| b_city | varchar(30) | YES | | NULL | | -| b_state | varchar(10) | YES | | NULL | | -| b_zip | varchar(10) | | | 00000 | | -| b_country | varchar(10) | | | | | -| b_phone | varchar(20) | YES | | NULL | | -| order_date | varchar(32) | | | | | -| payment_method | varchar(32) | YES | | NULL | | -| avs | varchar(32) | YES | | NULL | | -| order_id | varchar(32) | YES | | NULL | | -| update_date | timestamp(14) | YES | | NULL | | -| status | varchar(32) | YES | | NULL | | -| parent | varchar(9) | YES | | NULL | | -+----------------+---------------+------+-----+---------+-------+ -[/comment] -

     

    - - -
    - Order Status -
    -[query st=db arrayref=orders - sql="SELECT - code,status,nitems,subtotal,shipping,handling,total_cost,payment_method,order_date - FROM transactions - WHERE username = '[data base=session field=username filter=sql]' - ORDER by code - "][/query] -[mvasp tables=transactions] -<% - my $uid = $Session->{username}; - - if (! $uid) { - $Document->write ("

    You are not logged in.

    "); - return; - } - - my $orders = $Tmp->{orders}; - - if(! $orders or scalar @$orders == 0) { - $Document->write( "No pending orders for $uid."); - return; - } - - HTML ""; - - my $header_template = <<'EOF'; - - - - - - - - - - -EOF - - my $line_template = <<'EOF'; - - - - - - - - - - -EOF - - my %hash; - - my @fields = qw/order_number status nitems subtotal shipping - handling total_cost payment_method order_date/; - - my $row; - - my %summary; - my $first; - my $record; - HTML $header_template; - foreach $record (@$orders) { - my $line = $line_template; - @hash{@fields} = @$record; - $hash{detail_url} = $Tag->area( { - href => 'query/order_detail', - arg => $hash{order_number}, - }); - if($hash{status} =~ /\d/) { - my @ids = grep /\S/, split /\s+/, $hash{status}; - $hash{status} = ''; - for(@ids) { - $hash{status} .= <UPS $_ -EOF - } - } - else { - $hash{status} = <$hash{status} -EOF - } - for(qw/subtotal shipping total_cost/) { - $hash{$_} = $Tag->currency ({ body=> $hash{$_} }); - } - if($hash{handling}) { - $hash{handling} = "
    (handling " . - $Tag->currency ({ body=> $hash{handling} }) . - ")"; - } - else { - $hash{handling} = ''; - } - $line =~ s/\$(\w+)/$hash{$1}/g; - HTML $line; - } - - HTML "
    - DATE - - ORDER ID - - QTY
    TOTAL
    -
    - PAYMENT
    METHOD
    -
    - SUBTOTAL - - SHIPPING
    HANDLING
    -
    - SUBTOTAL - - STATUS -
    - $order_date - - $order_number - - $nitems - - $payment_method  - - $subtotal - - $shipping$handling - - $total_cost - - $status -
    "; -%> -[/mvasp] - -
    - -__MENUBOTTOM__ -__COPYRIGHT__ diff --git a/dist/simple/pages/query/order_detail.html b/dist/simple/pages/query/order_detail.html deleted file mode 100644 index a148388a0..000000000 --- a/dist/simple/pages/query/order_detail.html +++ /dev/null @@ -1,196 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standalone -ui_template_layout: LOGOBAR, MENUBAR, UI_CONTENT, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top logo bar. menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set members_only]1[/set] -[set page_title] __COMPANY__ -- Order Detail [/set] -__LOGOBAR__ -__MENUBAR__ - - -[comment] - -+----------------+---------------+------+-----+---------+-------+ -| Field | Type | Null | Key | Default | Extra | -+----------------+---------------+------+-----+---------+-------+ -| code | varchar(14) | | PRI | | | -| store_id | varchar(9) | | MUL | | | -| order_number | varchar(14) | | MUL | | | -| session | varchar(32) | | | | | -| username | varchar(20) | | | | | -| shipmode | varchar(32) | | | | | -| nitems | varchar(9) | | | | | -| subtotal | varchar(12) | | | | | -| shipping | varchar(12) | | | | | -| handling | varchar(12) | YES | | NULL | | -| salestax | varchar(12) | YES | | NULL | | -| total_cost | varchar(16) | | | | | -| fname | varchar(30) | YES | | NULL | | -| lname | varchar(30) | YES | | NULL | | -| company | varchar(30) | YES | | NULL | | -| address1 | varchar(30) | YES | | NULL | | -| address2 | varchar(30) | YES | | NULL | | -| city | varchar(30) | | | | | -| state | varchar(10) | YES | | NULL | | -| zip | varchar(10) | | | 00000 | | -| country | varchar(10) | | | | | -| phone_day | varchar(20) | YES | | NULL | | -| phone_night | varchar(20) | YES | | NULL | | -| fax | varchar(20) | YES | | NULL | | -| email | varchar(42) | YES | | NULL | | -| b_fname | varchar(30) | YES | | NULL | | -| b_lname | varchar(30) | YES | | NULL | | -| b_company | varchar(30) | YES | | NULL | | -| b_address1 | varchar(30) | YES | | NULL | | -| b_address2 | varchar(30) | YES | | NULL | | -| b_city | varchar(30) | YES | | NULL | | -| b_state | varchar(10) | YES | | NULL | | -| b_zip | varchar(10) | | | 00000 | | -| b_country | varchar(10) | | | | | -| b_phone | varchar(20) | YES | | NULL | | -| order_date | varchar(32) | | | | | -| payment_method | varchar(32) | YES | | NULL | | -| avs | varchar(32) | YES | | NULL | | -| order_id | varchar(32) | YES | | NULL | | -| update_date | timestamp(14) | YES | | NULL | | -| status | varchar(32) | YES | | NULL | | -| parent | varchar(9) | YES | | NULL | | -+----------------+---------------+------+-----+---------+-------+ - -+--------------+---------------+------+-----+---------+-------+ -| Field | Type | Null | Key | Default | Extra | -+--------------+---------------+------+-----+---------+-------+ -| code | varchar(14) | | PRI | | | -| store_id | varchar(9) | | MUL | | | -| order_number | varchar(14) | | MUL | | | -| session | varchar(32) | | | | | -| username | varchar(20) | | | | | -| shipmode | varchar(32) | | | | | -| sku | varchar(14) | | | | | -| quantity | varchar(9) | | | | | -| price | varchar(12) | | | | | -| subtotal | varchar(12) | | | | | -| shipping | varchar(12) | YES | | NULL | | -| taxable | char(3) | YES | | NULL | | -| size | varchar(30) | YES | | NULL | | -| color | varchar(30) | YES | | NULL | | -| options | varchar(255) | YES | | NULL | | -| order_date | varchar(32) | | | | | -| update_date | timestamp(14) | YES | | NULL | | -| status | varchar(32) | YES | | NULL | | -| parent | varchar(9) | YES | | NULL | | -+--------------+---------------+------+-----+---------+-------+ - -[/comment] - -[comment] -Do some security checking -[/comment] -[if session arg] - [seti arg][data session arg][/seti] -[else] - [bounce href="[area special/violation arg_missing]"] -[/else] - -[/if] - -[value name=test_user - set="[data - table=transactions - col=username - key='[scratch arg]' - ]" - hide=1] - -[if value test_user] -[else] - [bounce href="[area special/violation user_missing]&user=[value test_user]&arg=[scratch arg]"] -[/else] -[/if] -[if type=explicit compare=` - return 1 if ! $Session->{username}; - return 0 if $Session->{username} eq $Values->{test_user}; - return 1; - `] -[bounce href="[area special/user_violation username_no_match]&s=[data session username]&v=[value test_user]"] -[/if] - - -

     

    - - -
    - Order Detail: [scratch arg] -
    - -[loop list="[scratch arg]"] - -[html-table fr='__TABLEFG__'] -ORDER NUMBER [loop-data transactions mv_order_number] -Name [loop-data transactions fname] [loop-data transactions lname] -[if-loop-data transactions company]Company [loop-data transactions company] -[/if-loop-data]Address [loop-data transactions address1][if-loop-data transactions address2] - [loop-data transactions address2][/if-loop-data] -City, State, Zip [loop-data transactions city], [loop-data transactions state] [loop-data transactions zip] -Country [loop-data transactions country] -Payment Method [loop-data transactions payment_method] -Shipping Method [loop-data transactions shipmode] -Daytime Phone [loop-data transactions phone_day] -Evening Phone [loop-data transactions phone_night] -[if-loop-data transactions b_fname]Billing Name [loop-data transactions b_fname] [loop-data transactions b_lname] -[/if-loop-data][if-loop-data transactions b_address1]Billing Address [loop-data transactions b_address1] - [loop-data transactions b_address2] -City, State, Zip [loop-data transactions b_city], [loop-data transactions b_state] [loop-data transactions b_zip] -[/if-loop-data][if-loop-data transactions b_country]Shipping Country [loop-data transactions b_country][/if-loop-data] -[/html-table] -
    - - -[perl products userdb] - sub get_download { - my $sku = shift; - return '' unless tag_data('products', 'download', $sku); - my $loc = tag_data('products', 'dl_location', $sku); - my $save = delete $Scratch->{mv_add_dot_html}; - my $url = $Tag->area( { href => "deliver/$loc", arg => $sku } ); - $Scratch->{mv_add_dot_html} = $save if $save; - return qq{
    }; - } - return; -[/perl] -[html-table interpolate=1 td="VALIGN=TOP"] -Quan Item No. Description
    Price
    Extension -[query - list=1 - st=db - sql=| - SELECT * FROM orderline - WHERE order_number = '[scratch arg]' - ORDER BY code - | -][sql-param quantity] [sql-param sku] [description [sql-param sku]]
    [if-sql-data orderline size]SIZE-->[sql-param size][/if-sql-data][if-sql-data orderline color] COLOR-->[sql-param color][/if-sql-data][calc] -return unless - q{[userdb function=check_file_acl mode=expire location="[sql-param sku]"]}; - return get_download(q{[sql-param sku]}); -[/calc]
    [currency][sql-param price][/currency]
    [currency][sql-param subtotal][/currency] -[/query] - SUBTOTAL
    [currency][loop-data transactions subtotal][/currency] - SALES TAX
    [currency][loop-data transactions salestax][/currency] - SHIPPING
    [currency][loop-data transactions shipping][/currency][if-loop-data transactions handling] - HANDLING
    [currency][loop-data transactions handling][/currency][/if-loop-data] - ORDER TOTAL
    [currency][loop-data transactions total_cost][/currency] -[/html-table] -
    -[/loop] - -
    - -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pages/results.html b/dist/simple/pages/results.html deleted file mode 100644 index ad699b287..000000000 --- a/dist/simple/pages/results.html +++ /dev/null @@ -1,122 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set name=page_title int]Search results -- [value-extended name=mv_searchspec joiner=" | "][/set] -[flag type=build] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -[comment] - This is the default search results page. You can have - as many as you like as long as you set the mv_search_page - variable to match the page you wish to use to build - search results. -[/comment] - -[search-region] - - -[search-list] - - -[item-change 1][condition][item-field category][/condition] - - - -[/item-change 1] - - - - - - - - - - -[/search-list] -
    [if value link_banner][value link_banner][value name=link_banner set=""][else][item-data products category][/else][/if]
    - - - - - - - - - - - - - - - - - - - - - - - -
    [if-item-field image][item-field title][/if-item-field][item-field title]
    -by - [filter namecase][item-field artist][/filter]

    -Price: [item-price]   buy now

    -[item-field comments]

    - -[loop prefix=cat list="[item-field category]"] -More [filter lc][cat-code][/filter]...
    [/loop]
    -
    - -[no-match] -

    -Sorry, no matches for [value-extended name=mv_searchspec joiner=" | "]. -[if value mv_search_error] -

    Errors: -
    [value-extended name=mv_search_error joiner="
    "] -
    -[/if] -

    -[/no-match] -
    -[more-list] -
    -Matches [matches] of -[if value mv_search_match_count > 1] - [value mv_search_match_count] found. -[/if] -
    [more]
    -
    -[/more-list] - -[/search-region] -

    - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/simple/pages/special/feedback.html b/dist/simple/pages/special/feedback.html deleted file mode 100644 index eeed98e68..000000000 --- a/dist/simple/pages/special/feedback.html +++ /dev/null @@ -1,88 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title]Thanks for the feedback![/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - -[if !scratch feedback_active] -Hey! This needs to come from a feedback form. -[else] -[set feedback_active][/set] -[set name=feedback_sent interpolate=1] -[perl arg=sub interpolate=1] - form_mail - ( - q{__ORDERS_TO__}, - q{[value feedback_subject]}, - q{[value feedback_email]}, - <<'EOMail' ) -Subject: [value feedback_subject] - From: [value feedback_name] - Email: [value feedback_email] -Message --------- -[value feedback_message] -EOMail -[/perl] -[/set] - -[if scratch feedback_sent] -

    Thank you for your feedback!

    - - - - - - - - - - - - - - - - - - -
    - From - - [value feedback_name] -
    - Subject - - [value feedback_subject] -
    - Email - - [value feedback_email] -
    - Message - -
    -		[value feedback_message]
    -	
    -
    -[else] Error sending feedback.[/else] -[/if] - -[/else] -[/if] - - -__RIGHTSIDE__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pages/special/needfield.html b/dist/simple/pages/special/needfield.html deleted file mode 100644 index c2ea605c9..000000000 --- a/dist/simple/pages/special/needfield.html +++ /dev/null @@ -1,59 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standalone -ui_template_layout: LOGOBAR, MENUBAR, UI_CONTENT, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top logo bar. menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set members_only][/set] -[set page_title]We need some more information![/set] -__LOGOBAR__ -__MENUBAR__ - - -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -We need to have some fields entered to be able -to process your order. Please [page __ORDER_STYLE__/checkout]go back and fill out -the information. -

    -Problem: -

    -[perl] - my $msg = q{[subject]}; - sub redo_message { - my($param,$word) = @_; - if($param =~ /mv_credit/) { - "

  • You need to validate your credit card information.\n"; - } - elsif ($word =~ /not_a_state/i) { - return "
  • We need a valid two-letter state code like CA.\n"; - } - elsif ($word =~ /phone_day=/i) { - return "
  • Is that really a phone number?\n"; - } - elsif ($word =~ /not_a_zip_code/i) { - return "
  • We need a zip code for UPS lookup.\n"; - } - elsif ($word =~ /mv_contingent/) { - return "
  • You need to select your method of payment.\n"; - } - else { return "
  • $param: $word\n" } - } - @msg = split /\n/, $msg; - $msg = '
      '; - for(@msg) { - ($var, $val) = split /:\s*/, $_; - $msg .= redo_message($var, $val); - } - $msg .= '
    '; - $msg; -[/perl] -

    - -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pages/splash.html b/dist/simple/pages/splash.html deleted file mode 100644 index 84afc7885..000000000 --- a/dist/simple/pages/splash.html +++ /dev/null @@ -1,34 +0,0 @@ -[set mv_add_dot_html]1[/set] -[set mv_no_session_id]1[/set] -[set mv_no_count]1[/set] -__LOGOBAR__ -

    -

    Welcome to the Art Store!

    -

    -Enter -

    -This version of Interchange introduces a new user interface: -

    -Admin -

    -
    -This is the "simple" demonstration of the Interchange 4.5.x electronic -catalog system. Links that will help you to use this software: -

    -

    - -__MENUBOTTOM__ - - diff --git a/dist/simple/pages/srchform.html b/dist/simple/pages/srchform.html deleted file mode 100644 index 8a730c17e..000000000 --- a/dist/simple/pages/srchform.html +++ /dev/null @@ -1,273 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: templates/standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title: Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title][L]Search[/L] __COMPANY__[/set] -__LOGOBAR__ -__MENUBAR__ -__LEFTSIDE__ - - - - -[seti option_list] -[table-font face="arial,helvetica" size=-2] - - - - - - - - - - - - - - -
    CompareNumericCaseNegation
    - - - - - -
    -[/table-font] -[/seti] - -[table-font face="arial,helvetica"] -

    - - - - - - - - - - - -
    - Full-text Search -
    - Keywords: - - -
    - - Match All
    - Match Any -

    - Match whole words only
    - Match partial words -

    - Ignore Case
    - Do not ignore case -

    -
    - - Match specific fields:

    - - - - - - - - - -
    Artist Title
    Museum Description
    -
    Matches per page:
    - - - - -
    - - -
    -
    -
    - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - Specialized Search - Page size - - -
    - Field - - Search for:
    -
    - [scratch option_list] -
     
    - Field - - Search for:
    -
    - [scratch option_list] -
     
    - Field - - Search for:
    -
    - [scratch option_list] -
     
    - Field - - Search for:
    -
    - [scratch option_list] -
     
    - Category - - -
    -[/table-font] -
    - - - -__NO_RIGHT__ -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/pgsql/area.pgsql b/dist/simple/pgsql/area.pgsql deleted file mode 100644 index 0ad5b6396..000000000 --- a/dist/simple/pgsql/area.pgsql +++ /dev/null @@ -1,14 +0,0 @@ -Database area area.txt __SQLDSN__ -#ifdef SQLUSER -Database area USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database area PASS __SQLPASS__ -#endif -Database area DEFAULT_TYPE text -Database area COLUMN_DEF "code=VARCHAR(12) NOT NULL PRIMARY KEY" -Database area COLUMN_DEF "name=VARCHAR(128) DEFAULT '' NOT NULL" -Database area COLUMN_DEF "sort=VARCHAR(3) DEFAULT '00' NOT NULL" -Database area POSTCREATE "create index area_sort on area (sort)" -Database area POSTCREATE "create index area_name on area (name)" -Database area ChopBlanks 1 diff --git a/dist/simple/pgsql/cat.pgsql b/dist/simple/pgsql/cat.pgsql deleted file mode 100644 index f70af07d6..000000000 --- a/dist/simple/pgsql/cat.pgsql +++ /dev/null @@ -1,13 +0,0 @@ -Database cat cat.txt __SQLDSN__ -#ifdef SQLUSER -Database cat USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database cat PASS __SQLPASS__ -#endif -Database cat DEFAULT_TYPE text -Database cat COLUMN_DEF "code=char(20) NOT NULL PRIMARY KEY" -Database cat COLUMN_DEF "sel=char(64) DEFAULT '' NOT NULL" -Database cat COLUMN_DEF "name=char(64) DEFAULT '' NOT NULL" -Database cat COLUMN_DEF "sort=char(4) DEFAULT 'ZZ' NOT NULL" -Database cat ChopBlanks 1 diff --git a/dist/simple/pgsql/country.pgsql b/dist/simple/pgsql/country.pgsql deleted file mode 100644 index 736bc991a..000000000 --- a/dist/simple/pgsql/country.pgsql +++ /dev/null @@ -1,12 +0,0 @@ -Database country country.txt __SQLDSN__ -#ifdef SQLUSER -Database country USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database country PASS __SQLPASS__ -#endif -Database country COLUMN_DEF "code=CHAR(3) NOT NULL PRIMARY KEY" -Database country COLUMN_DEF "selector=CHAR(3) NOT NULL" -Database country COLUMN_DEF "shipmodes=CHAR(64)" -Database country COLUMN_DEF "name=CHAR(32) NOT NULL" -Database country ChopBlanks 1 diff --git a/dist/simple/pgsql/inventory.pgsql b/dist/simple/pgsql/inventory.pgsql deleted file mode 100644 index 1d32b054c..000000000 --- a/dist/simple/pgsql/inventory.pgsql +++ /dev/null @@ -1,12 +0,0 @@ -Database inventory inventory.txt __SQLDSN__ -#ifdef SQLUSER -Database inventory USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database inventory PASS __SQLPASS__ -#endif -Database inventory KEY sku -Database inventory COLUMN_DEF "sku=VARCHAR(14) NOT NULL PRIMARY KEY" -Database inventory COLUMN_DEF "quantity=VARCHAR(12) NOT NULL" -Database inventory COLUMN_DEF "account=char(128)" -Database inventory COLUMN_DEF "cogs_account=char(128)" diff --git a/dist/simple/pgsql/merchandising.pgsql b/dist/simple/pgsql/merchandising.pgsql deleted file mode 100644 index 41a919679..000000000 --- a/dist/simple/pgsql/merchandising.pgsql +++ /dev/null @@ -1,12 +0,0 @@ -Database merchandising merchandising.txt __SQLDSN__ -#ifdef SQLUSER -Database merchandising USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database merchandising PASS __SQLPASS__ -#endif -Database merchandising DEFAULT_TYPE text -Database merchandising COLUMN_DEF "sku=char(20) NOT NULL PRIMARY KEY" -Database merchandising COLUMN_DEF "featured=CHAR(32) NOT NULL" -Database merchandising COLUMN_DEF "start=CHAR(24) NOT NULL" -Database merchandising COLUMN_DEF "finish=CHAR(24) NOT NULL" diff --git a/dist/simple/pgsql/orderline.pgsql b/dist/simple/pgsql/orderline.pgsql deleted file mode 100644 index 67cc07e56..000000000 --- a/dist/simple/pgsql/orderline.pgsql +++ /dev/null @@ -1,28 +0,0 @@ - -Database orderline orderline.txt __SQLDSN__ -#ifdef SQLUSER -Database orderline USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database orderline PASS __SQLPASS__ -#endif -Database orderline COLUMN_DEF "code=VARCHAR(14) NOT NULL PRIMARY KEY" -Database orderline COLUMN_DEF "store_id=VARCHAR(9) DEFAULT '' NOT NULL" -Database orderline COLUMN_DEF "order_number=VARCHAR(14) NOT NULL" -Database orderline COLUMN_DEF "session=VARCHAR(32) NOT NULL" -Database orderline COLUMN_DEF "username=VARCHAR(20) default '' NOT NULL" -Database orderline COLUMN_DEF "shipmode=VARCHAR(32) default '' NOT NULL" -Database orderline COLUMN_DEF "sku=VARCHAR(14) NOT NULL" -Database orderline COLUMN_DEF "quantity=VARCHAR(9) NOT NULL" -Database orderline COLUMN_DEF "price=VARCHAR(12) NOT NULL" -Database orderline COLUMN_DEF "subtotal=VARCHAR(12) NOT NULL" -Database orderline COLUMN_DEF "shipping=VARCHAR(12)" -Database orderline COLUMN_DEF "taxable=VARCHAR(3)" -Database orderline COLUMN_DEF "size=VARCHAR(30)" -Database orderline COLUMN_DEF "color=VARCHAR(30)" -Database orderline COLUMN_DEF "options=VARCHAR(255)" -Database orderline COLUMN_DEF "order_date=varchar(32) NOT NULL" -Database orderline COLUMN_DEF "update_date=timestamp" -Database orderline COLUMN_DEF "status=VARCHAR(32)" -Database orderline COLUMN_DEF "parent=VARCHAR(9)" -Database orderline ChopBlanks 1 diff --git a/dist/simple/pgsql/pricing.pgsql b/dist/simple/pgsql/pricing.pgsql deleted file mode 100644 index 20c97abe1..000000000 --- a/dist/simple/pgsql/pricing.pgsql +++ /dev/null @@ -1,20 +0,0 @@ -# Interchange database definition -Database pricing pricing.txt __SQLDSN__ -#ifdef SQLUSER -Database pricing USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database pricing PASS __SQLPASS__ -#endif -Database pricing KEY sku -Database pricing COLUMN_DEF "q2=VARCHAR(12)" -Database pricing COLUMN_DEF "price_group=VARCHAR(2) DEFAULT '' NOT NULL" -Database pricing COLUMN_DEF "sku=VARCHAR(9) NOT NULL PRIMARY KEY" -Database pricing COLUMN_DEF "q5=VARCHAR(12)" -Database pricing COLUMN_DEF "q10=VARCHAR(12)" -Database pricing COLUMN_DEF "q25=VARCHAR(12)" -Database pricing COLUMN_DEF "q100=VARCHAR(12)" -Database pricing COLUMN_DEF "XL=VARCHAR(12)" -Database pricing COLUMN_DEF "S=VARCHAR(12)" -Database pricing COLUMN_DEF "red=VARCHAR(12)" -Database pricing ChopBlanks 1 diff --git a/dist/simple/pgsql/products.pgsql b/dist/simple/pgsql/products.pgsql deleted file mode 100644 index 5f861c1c8..000000000 --- a/dist/simple/pgsql/products.pgsql +++ /dev/null @@ -1,25 +0,0 @@ -# Interchange database definition -Database products products.txt __SQLDSN__ -#ifdef SQLUSER -Database products USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database products PASS __SQLPASS__ -#endif -Database products KEY sku -Database products COLUMN_DEF "sku=VARCHAR(14) NOT NULL PRIMARY KEY" -Database products COLUMN_DEF "description=VARCHAR(128) NOT NULL" -Database products COLUMN_DEF "title=VARCHAR(128) DEFAULT '' NOT NULL" -Database products COLUMN_DEF "artist=VARCHAR(128) DEFAULT '' NOT NULL" -Database products COLUMN_DEF "comment=TEXT" -Database products COLUMN_DEF "display=VARCHAR(128)" -Database products COLUMN_DEF "image=VARCHAR(64)" -Database products COLUMN_DEF "price=VARCHAR(12) NOT NULL" -Database products COLUMN_DEF "category=VARCHAR(64) NOT NULL" -Database products COLUMN_DEF "nontaxable=VARCHAR(3)" -Database products COLUMN_DEF "weight=VARCHAR(12)" -Database products COLUMN_DEF "size=VARCHAR(96)" -Database products COLUMN_DEF "color=VARCHAR(96)" -Database products COLUMN_DEF "related=text" -Database products COLUMN_DEF "featured=VARCHAR(32)" -Database products ChopBlanks 1 diff --git a/dist/simple/pgsql/transactions.pgsql b/dist/simple/pgsql/transactions.pgsql deleted file mode 100644 index 54f1a313e..000000000 --- a/dist/simple/pgsql/transactions.pgsql +++ /dev/null @@ -1,52 +0,0 @@ -Database transactions transactions.txt __SQLDSN__ -#ifdef SQLUSER -Database transactions USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database transactions PASS __SQLPASS__ -#endif -Database transactions transactions.raw SQL -Database transactions COLUMN_DEF "code=VARCHAR(14) NOT NULL PRIMARY KEY" -Database transactions COLUMN_DEF "store_id=VARCHAR(9)" -Database transactions COLUMN_DEF "order_number=VARCHAR(14) NOT NULL" -Database transactions COLUMN_DEF "session=VARCHAR(32) NOT NULL" -Database transactions COLUMN_DEF "username=VARCHAR(20) DEFAULT '' NOT NULL" -Database transactions COLUMN_DEF "shipmode=VARCHAR(32)" -Database transactions COLUMN_DEF "nitems=VARCHAR(9) NOT NULL" -Database transactions COLUMN_DEF "subtotal=VARCHAR(12) NOT NULL" -Database transactions COLUMN_DEF "shipping=VARCHAR(12) NOT NULL" -Database transactions COLUMN_DEF "handling=VARCHAR(12)" -Database transactions COLUMN_DEF "salestax=VARCHAR(12)" -Database transactions COLUMN_DEF "total_cost=VARCHAR(16) NOT NULL" -Database transactions COLUMN_DEF "fname=VARCHAR(30)" -Database transactions COLUMN_DEF "lname=VARCHAR(30)" -Database transactions COLUMN_DEF "company=VARCHAR(30)" -Database transactions COLUMN_DEF "address1=VARCHAR(30)" -Database transactions COLUMN_DEF "address2=VARCHAR(30)" -Database transactions COLUMN_DEF "city=VARCHAR(30) NOT NULL" -Database transactions COLUMN_DEF "state=VARCHAR(10)" -Database transactions COLUMN_DEF "zip=VARCHAR(10) DEFAULT '00000' NOT NULL" -Database transactions COLUMN_DEF "country=VARCHAR(10) DEFAULT '' NOT NULL" -Database transactions COLUMN_DEF "phone_day=VARCHAR(20)" -Database transactions COLUMN_DEF "phone_night=VARCHAR(20)" -Database transactions COLUMN_DEF "fax=VARCHAR(20)" -Database transactions COLUMN_DEF "email=VARCHAR(42)" -Database transactions COLUMN_DEF "b_fname=VARCHAR(30)" -Database transactions COLUMN_DEF "b_lname=VARCHAR(30)" -Database transactions COLUMN_DEF "b_company=VARCHAR(30)" -Database transactions COLUMN_DEF "b_address1=VARCHAR(30)" -Database transactions COLUMN_DEF "b_address2=VARCHAR(30)" -Database transactions COLUMN_DEF "b_city=VARCHAR(30)" -Database transactions COLUMN_DEF "b_state=VARCHAR(10)" -Database transactions COLUMN_DEF "b_zip=VARCHAR(10)" -Database transactions COLUMN_DEF "b_country=VARCHAR(10)" -Database transactions COLUMN_DEF "b_phone=VARCHAR(20)" -Database transactions COLUMN_DEF "payment_method=varchar(32)" -Database transactions COLUMN_DEF "avs=varchar(32)" -Database transactions COLUMN_DEF "order_id=varchar(32)" -Database transactions COLUMN_DEF "order_date=varchar(32) NOT NULL" -Database transactions COLUMN_DEF "update_date=timestamp" -Database transactions COLUMN_DEF "status=VARCHAR(32)" -Database transactions COLUMN_DEF "parent=VARCHAR(9)" -Database transactions COLUMN_DEF "comments=text" -Database transactions ChopBlanks 1 diff --git a/dist/simple/pgsql/userdb.pgsql b/dist/simple/pgsql/userdb.pgsql deleted file mode 100644 index 6e87032ec..000000000 --- a/dist/simple/pgsql/userdb.pgsql +++ /dev/null @@ -1,60 +0,0 @@ -Database userdb userdb.txt __SQLDSN__ -#ifdef SQLUSER -Database userdb USER __SQLUSER__ -#endif -#ifdef SQLPASS -Database userdb PASS __SQLPASS__ -#endif -Database userdb COLUMN_DEF "code=VARCHAR(20) NOT NULL PRIMARY KEY" -Database userdb COLUMN_DEF "password=VARCHAR(20)" -Database userdb COLUMN_DEF "acl=text" -Database userdb COLUMN_DEF "mod_time=timestamp DEFAULT '2000-01-01'" -Database userdb COLUMN_DEF "s_nickname=text" -Database userdb COLUMN_DEF "company=VARCHAR(30)" -Database userdb COLUMN_DEF "fname=VARCHAR(20)" -Database userdb COLUMN_DEF "lname=VARCHAR(30)" -Database userdb COLUMN_DEF "address1=VARCHAR(64)" -Database userdb COLUMN_DEF "address2=VARCHAR(64)" -Database userdb COLUMN_DEF "address3=VARCHAR(64)" -Database userdb COLUMN_DEF "city=VARCHAR(30)" -Database userdb COLUMN_DEF "state=VARCHAR(10)" -Database userdb COLUMN_DEF "zip=VARCHAR(10)" -Database userdb COLUMN_DEF "country=VARCHAR(10)" -Database userdb COLUMN_DEF "phone_day=VARCHAR(20)" -Database userdb COLUMN_DEF "mv_shipmode=VARCHAR(64)" -Database userdb COLUMN_DEF "b_nickname=text" -Database userdb COLUMN_DEF "b_fname=VARCHAR(20)" -Database userdb COLUMN_DEF "b_lname=VARCHAR(30)" -Database userdb COLUMN_DEF "b_address1=VARCHAR(64)" -Database userdb COLUMN_DEF "b_address2=VARCHAR(64)" -Database userdb COLUMN_DEF "b_address3=VARCHAR(64)" -Database userdb COLUMN_DEF "b_city=VARCHAR(30)" -Database userdb COLUMN_DEF "b_state=VARCHAR(10)" -Database userdb COLUMN_DEF "b_zip=VARCHAR(10)" -Database userdb COLUMN_DEF "b_country=VARCHAR(10)" -Database userdb COLUMN_DEF "b_phone=VARCHAR(20)" -Database userdb COLUMN_DEF "mv_credit_card_type=VARCHAR(16)" -Database userdb COLUMN_DEF "mv_credit_card_exp_month=VARCHAR(2)" -Database userdb COLUMN_DEF "mv_credit_card_exp_year=VARCHAR(4)" -Database userdb COLUMN_DEF "p_nickname=text" -Database userdb COLUMN_DEF "email=VARCHAR(42)" -Database userdb COLUMN_DEF "fax=VARCHAR(20)" -Database userdb COLUMN_DEF "phone_night=VARCHAR(20)" -Database userdb COLUMN_DEF "fax_order=VARCHAR(2)" -Database userdb COLUMN_DEF "address_book=TEXT" -Database userdb COLUMN_DEF "accounts=TEXT" -Database userdb COLUMN_DEF "preferences=TEXT" -Database userdb COLUMN_DEF "carts=TEXT" -Database userdb COLUMN_DEF "owner=VARCHAR(20)" -Database userdb COLUMN_DEF "file_acl=TEXT" -Database userdb COLUMN_DEF "db_acl=TEXT" -Database userdb COLUMN_DEF "order_numbers=TEXT" -Database userdb COLUMN_DEF "email_copy=VARCHAR(1)" -Database userdb COLUMN_DEF "mail_list=varchar(64)" -Database userdb COLUMN_DEF "project_id=VARCHAR(20)" -Database userdb COLUMN_DEF "account_id=VARCHAR(20)" -Database userdb COLUMN_DEF "order_dest=VARCHAR(32)" -Database userdb ChopBlanks 1 - -# Prevent problems with abstime representation -UserDB default time_field none diff --git a/dist/simple/products/2ndDayAir.csv b/dist/simple/products/2ndDayAir.csv deleted file mode 100644 index e70ceeb94..000000000 --- a/dist/simple/products/2ndDayAir.csv +++ /dev/null @@ -1,152 +0,0 @@ -Exceed,202,203,204,205,206,207,208,224,225,226 -Letter,6.20,6.50,6.70,7.00,7.30,7.60,7.80,11.10,11.10,15.50 -1,6.40,6.70,7.20,7.80,8.30,8.80,9.10,13.20,13.20,24.20 -2,6.60,7.20,8.00,8.80,9.60,10.20,10.50,14.60,14.60,25.60 -3,7.10,7.70,8.90,10.00,11.00,11.60,12.00,16.10,16.10,27.10 -4,7.60,8.20,9.90,11.20,12.30,13.10,13.60,17.60,17.60,28.60 -5,8.20,8.90,10.80,12.50,13.80,14.60,15.30,19.30,19.30,30.30 -6,8.90,9.70,11.60,13.60,15.30,16.20,17.10,20.90,20.90,31.90 -7,9.40,10.50,12.60,14.80,16.90,18.00,18.90,22.40,22.40,33.40 -8,9.90,11.30,13.60,16.10,18.60,19.80,20.70,24.00,24.00,35.00 -9,10.40,12.00,14.60,17.30,20.40,21.60,22.50,25.80,25.80,36.80 -10,10.90,12.70,15.60,18.50,22.10,23.40,24.30,27.60,27.60,38.60 -11,11.40,13.40,16.50,19.50,23.80,25.10,26.00,29.20,29.20,40.20 -12,12.10,14.10,17.30,20.70,25.30,26.60,27.50,30.50,30.50,41.50 -13,12.90,14.90,18.10,22.00,26.60,27.90,29.00,32.00,32.00,43.00 -14,13.50,15.50,19.10,23.20,27.90,29.20,30.30,33.30,33.30,44.30 -15,14.00,16.00,20.00,24.30,29.40,30.70,31.80,34.80,34.80,45.80 -16,14.40,16.70,21.00,25.30,30.90,32.30,33.40,36.40,36.40,47.40 -17,14.90,17.40,22.00,26.30,32.40,34.10,35.20,38.20,38.20,49.20 -18,15.40,17.90,22.80,27.30,34.00,35.90,37.00,40.00,40.00,51.00 -19,15.90,18.40,23.50,28.40,35.40,37.50,38.60,41.60,41.60,52.60 -20,16.50,19.10,24.30,29.40,36.90,39.00,40.10,42.90,42.90,53.90 -21,17.00,19.90,25.20,30.40,38.40,40.60,41.70,44.20,44.20,55.20 -22,17.50,20.60,26.00,31.40,40.00,42.20,43.40,45.70,45.70,56.70 -23,18.00,21.20,26.80,32.40,41.40,43.70,45.00,47.30,47.30,58.30 -24,18.50,21.90,27.60,33.40,42.70,45.30,46.60,48.90,48.90,59.90 -25,19.00,22.50,28.30,34.60,44.00,46.80,48.20,50.50,50.50,61.50 -26,19.60,23.10,29.20,35.80,45.30,48.30,49.70,52.00,52.00,63.00 -27,20.30,23.80,30.00,36.90,46.60,49.70,51.20,53.50,53.50,64.50 -28,21.00,24.50,30.90,37.90,47.90,51.00,52.80,55.10,55.10,66.10 -29,21.50,25.10,31.70,38.90,49.20,52.30,54.30,56.60,56.60,67.60 -30,22.00,25.80,32.70,40.00,50.70,53.80,55.80,57.80,57.80,68.80 -31,22.50,26.50,33.70,41.00,52.10,55.30,57.30,59.10,59.10,70.10 -32,23.00,27.10,34.70,42.00,53.40,56.90,58.90,60.40,60.40,71.40 -33,23.50,27.60,35.50,43.00,54.90,58.50,60.50,62.00,62.00,73.00 -34,24.00,28.30,36.20,44.10,56.20,60.10,62.10,63.40,63.40,74.40 -35,24.50,29.10,37.00,45.10,57.70,61.70,63.70,64.70,64.70,75.70 -36,25.00,29.80,37.80,46.10,59.10,63.20,65.30,66.10,66.10,77.10 -37,25.50,30.40,38.60,47.20,60.40,64.80,66.90,67.40,67.40,78.40 -38,26.00,30.90,39.60,48.20,61.70,66.40,68.50,68.80,68.80,79.80 -39,26.70,31.60,40.40,49.20,63.20,67.90,70.00,70.30,70.30,81.30 -40,27.50,32.40,41.20,50.30,64.70,69.50,71.60,71.90,71.90,82.90 -41,28.20,33.10,41.90,51.30,66.10,71.00,73.10,73.40,73.40,84.40 -42,28.80,33.80,42.60,52.30,67.40,72.50,74.60,74.90,74.90,85.90 -43,29.30,34.50,43.40,53.30,68.70,73.90,76.00,76.30,76.30,87.30 -44,29.80,35.00,44.20,54.10,70.00,75.40,77.50,77.80,77.80,88.80 -45,30.30,35.70,44.90,54.80,71.30,76.80,78.90,79.20,79.20,90.20 -46,30.80,36.30,45.80,55.70,72.80,78.30,80.40,80.70,80.70,91.70 -47,31.30,37.00,46.60,56.50,74.20,79.90,82.00,82.30,82.30,93.30 -48,32.00,37.80,47.40,57.30,75.50,81.50,83.60,83.90,83.90,94.90 -49,32.60,38.50,48.20,58.30,76.80,83.00,85.10,85.40,85.40,96.40 -50,33.10,39.10,49.00,59.30,78.10,84.30,86.40,86.70,86.70,97.70 -51,33.60,39.60,49.80,60.30,79.40,85.80,87.90,88.20,88.20,99.20 -52,34.10,40.30,50.50,61.30,80.70,87.20,89.30,89.60,89.60,100.60 -53,34.80,41.10,51.30,62.40,82.00,88.50,90.60,90.90,90.90,101.90 -54,35.30,41.90,52.10,63.40,83.30,89.80,91.90,92.20,92.20,103.20 -55,35.90,42.50,52.80,64.40,84.60,91.30,93.40,93.70,93.70,104.70 -56,36.40,43.00,53.60,65.50,85.90,92.90,95.00,95.30,95.30,106.30 -57,36.90,43.70,54.60,66.50,87.20,94.40,96.50,96.80,96.80,107.80 -58,37.40,44.20,55.40,67.50,88.50,95.70,98.00,98.30,98.30,109.30 -59,37.90,44.70,56.20,68.60,90.00,97.20,99.50,99.80,99.80,110.80 -60,38.40,45.30,57.20,69.60,91.30,98.80,101.10,101.40,101.40,112.40 -61,39.10,46.00,58.00,70.60,92.60,100.40,102.70,103.00,103.00,114.00 -62,39.90,46.80,58.80,71.70,94.00,102.00,104.40,104.70,104.70,115.70 -63,40.60,47.50,59.50,72.70,95.30,103.80,106.20,106.50,106.50,117.50 -64,41.20,48.20,60.20,73.70,96.60,105.40,108.00,108.30,108.30,119.30 -65,41.70,48.90,61.00,74.80,98.10,106.90,109.80,110.10,110.10,121.10 -66,42.20,49.50,62.00,76.00,99.70,108.50,111.60,111.90,111.90,122.90 -67,42.70,50.20,62.80,77.30,101.20,110.00,113.20,113.50,113.50,124.50 -68,43.20,50.90,63.80,78.60,102.50,111.50,114.80,115.10,115.10,126.10 -69,43.70,51.60,64.80,79.90,104.00,113.00,116.30,116.60,116.60,127.60 -70,44.20,52.30,65.60,81.20,105.70,114.70,118.00,118.30,118.30,129.30 -71,44.90,53.10,66.40,82.50,107.20,116.20,119.50,119.80,119.80,130.80 -72,45.50,53.90,67.40,83.80,108.80,117.80,121.10,121.40,121.40,132.40 -73,46.00,54.60,68.40,85.10,110.30,119.30,122.80,123.10,123.10,134.10 -74,46.50,55.20,69.20,86.30,111.60,120.80,124.40,124.70,124.70,135.70 -75,47.20,55.90,70.20,87.40,112.90,122.10,126.00,126.30,126.30,137.30 -76,47.80,56.50,71.00,88.40,114.20,123.60,127.50,127.80,127.80,138.80 -77,48.50,57.20,71.80,89.50,115.70,125.20,129.10,129.40,129.40,140.40 -78,49.00,57.90,72.80,90.70,117.10,126.70,130.60,130.90,130.90,141.90 -79,49.70,58.60,73.80,92.00,118.60,128.30,132.20,132.50,132.50,143.50 -80,50.30,59.30,74.80,93.30,120.00,129.90,133.80,134.10,134.10,145.10 -81,50.80,60.00,75.60,94.40,121.50,131.40,135.30,135.50,135.50,146.50 -82,51.30,60.70,76.40,95.40,122.80,133.00,136.90,137.10,137.10,148.10 -83,51.80,61.40,77.40,96.40,124.10,134.50,138.50,138.70,138.70,149.70 -84,52.50,62.10,78.20,97.50,125.40,136.00,140.00,140.20,140.20,151.20 -85,53.10,62.80,79.20,98.70,126.70,137.40,141.60,141.80,141.80,152.80 -86,53.60,63.40,80.20,100.00,128.00,138.70,143.10,143.30,143.30,154.30 -87,54.10,64.10,81.00,101.10,129.50,140.20,144.60,144.80,144.80,155.80 -88,54.80,64.80,81.70,102.10,130.90,141.70,146.20,146.40,146.40,157.40 -89,55.50,65.50,82.50,103.10,132.20,143.30,147.80,148.00,148.00,159.00 -90,56.10,66.10,83.40,104.10,133.70,144.90,149.50,149.70,149.70,160.70 -91,56.70,66.90,84.20,105.30,135.20,146.50,151.10,151.30,151.30,162.30 -92,57.40,67.60,85.00,106.40,136.60,148.00,152.70,152.90,152.90,163.90 -93,57.90,68.30,85.80,107.50,138.10,149.50,154.20,154.40,154.40,165.40 -94,58.40,68.90,86.80,108.50,139.50,151.00,155.80,156.00,156.00,167.00 -95,58.90,69.60,87.80,109.50,140.80,152.50,157.30,157.50,157.50,168.50 -96,59.40,70.20,88.80,110.60,142.10,154.10,158.90,159.10,159.10,170.10 -97,60.10,70.90,89.60,111.60,143.40,155.60,160.40,160.60,160.60,171.60 -98,60.70,71.50,90.40,112.60,144.70,156.90,161.70,161.90,161.90,172.90 -99,61.20,72.00,91.10,113.70,146.00,158.30,163.20,163.40,163.40,174.40 -100,61.70,72.70,91.90,114.70,147.30,159.60,164.50,164.70,164.70,175.70 -101,62.40,73.50,92.90,115.70,148.60,161.10,166.00,166.20,166.20,177.20 -102,62.90,74.30,93.70,116.80,150.10,162.60,167.60,167.80,167.80,178.80 -103,63.40,74.90,94.40,117.80,151.60,164.10,169.10,169.30,169.30,180.30 -104,63.90,75.60,95.20,118.80,153.10,165.60,170.60,170.80,170.80,181.80 -105,64.40,76.10,96.00,119.90,154.70,167.20,172.20,172.40,172.40,183.40 -106,64.90,76.80,96.80,121.10,156.30,168.90,173.90,174.10,174.10,185.10 -107,65.60,77.60,97.80,122.20,157.70,170.60,175.60,175.80,175.80,186.80 -108,66.20,78.30,98.70,123.40,159.20,172.10,177.20,177.40,177.40,188.40 -109,66.70,78.90,99.50,124.50,160.70,173.60,178.70,178.90,178.90,189.90 -110,67.40,79.60,100.30,125.50,162.10,175.10,180.20,180.40,180.40,191.40 -111,67.90,80.40,101.30,126.60,163.60,176.70,181.80,182.00,182.00,193.00 -112,68.40,81.20,102.10,127.80,165.20,178.30,183.40,183.60,183.60,194.60 -113,69.10,81.90,103.10,128.90,166.60,179.80,185.10,185.30,185.30,196.30 -114,69.90,82.70,103.90,130.10,167.90,181.50,186.80,187.00,187.00,198.00 -115,70.50,83.50,104.90,131.20,169.20,183.20,188.50,188.70,188.70,199.70 -116,71.20,84.20,105.90,132.20,170.70,184.70,190.00,190.20,190.20,201.20 -117,71.70,84.90,106.70,133.30,172.20,186.20,191.70,191.90,191.90,202.90 -118,72.30,85.60,107.70,134.50,173.60,187.60,193.20,193.40,193.40,204.40 -119,73.00,86.30,108.50,135.80,174.90,189.20,194.80,195.00,195.00,206.00 -120,73.50,87.00,109.30,136.90,176.40,190.80,196.40,196.60,196.60,207.60 -121,74.00,87.80,110.30,137.90,177.90,192.30,198.10,198.30,198.30,209.30 -122,74.70,88.50,111.30,138.90,179.50,193.90,199.70,199.90,199.90,210.90 -123,75.30,89.10,112.10,140.00,180.90,195.70,201.50,201.70,201.70,212.70 -124,76.00,89.80,113.10,141.20,182.20,197.30,203.30,203.50,203.50,214.50 -125,76.70,90.60,114.00,142.50,183.70,199.10,205.10,205.30,205.30,216.30 -126,77.30,91.40,115.00,143.60,185.20,200.70,206.70,206.90,206.90,217.90 -127,77.80,92.00,116.00,144.60,186.60,202.20,208.20,208.40,208.40,219.40 -128,78.50,92.70,117.00,145.60,187.90,203.80,209.80,210.00,210.00,221.00 -129,79.00,93.40,117.80,146.70,189.20,205.30,211.30,211.50,211.50,222.50 -130,79.60,94.20,118.60,147.90,190.70,206.90,213.10,213.30,213.30,224.30 -131,80.30,95.00,119.60,149.20,192.20,208.50,214.70,214.90,214.90,225.90 -132,80.80,95.70,120.40,150.30,193.60,210.00,216.50,216.70,216.70,227.70 -133,81.40,96.50,121.20,151.30,195.10,211.60,218.10,218.30,218.30,229.30 -134,82.10,97.30,122.20,152.50,196.60,213.30,219.80,220.00,220.00,231.00 -135,82.60,97.90,123.20,153.60,198.20,215.00,221.50,221.70,221.70,232.70 -136,83.10,98.60,124.20,154.80,199.60,216.50,223.00,223.20,223.20,234.20 -137,83.80,99.30,125.00,155.90,200.90,218.10,224.60,224.80,224.80,235.80 -138,84.30,100.10,125.80,157.00,202.20,219.70,226.30,226.50,226.50,237.50 -139,84.90,100.80,126.80,158.20,203.70,221.20,227.80,228.00,228.00,239.00 -140,85.60,101.60,127.60,159.30,205.20,223.00,229.60,229.80,229.80,240.80 -141,86.30,102.30,128.60,160.50,206.80,224.60,231.20,231.40,231.40,242.40 -142,86.90,102.90,129.60,161.80,208.20,226.20,232.90,233.10,233.10,244.10 -143,87.60,103.60,130.40,163.00,209.50,227.70,234.40,234.60,234.60,245.60 -144,88.10,104.40,131.40,164.00,211.00,229.30,236.00,236.20,236.20,247.20 -145,88.70,105.10,132.40,165.00,212.50,230.80,237.60,237.80,237.80,248.80 -146,89.40,105.80,133.20,166.00,213.90,232.40,239.40,239.60,239.60,250.60 -147,90.10,106.50,134.00,167.00,215.40,234.00,241.00,241.20,241.20,252.20 -148,90.90,107.30,135.00,168.10,216.90,235.50,242.80,243.00,243.00,254.00 -149,91.50,108.00,136.00,169.30,218.50,237.30,244.60,244.80,244.80,255.80 -150,92.00,108.70,136.80,170.60,220.00,238.90,246.50,246.70,246.70,257.70 diff --git a/dist/simple/products/2ndDayAirAM.csv b/dist/simple/products/2ndDayAirAM.csv deleted file mode 100644 index ab0274ac1..000000000 --- a/dist/simple/products/2ndDayAirAM.csv +++ /dev/null @@ -1,152 +0,0 @@ -Exceed,242,243,244,245,246,247,248 -Letter,6.90,7.20,7.50,7.80,8.00,8.40,8.90 -1,7.10,7.50,7.90,8.80,9.30,9.90,10.20 -2,7.40,8.00,9.00,9.90,10.80,11.50,11.80 -3,7.90,8.50,10.00,11.00,12.30,13.10,13.60 -4,8.40,9.20,11.00,12.40,13.90,14.80,15.30 -5,9.10,10.00,12.00,13.90,15.40,16.50,17.10 -6,9.80,11.00,13.10,15.20,17.10,18.30,19.10 -7,10.50,11.80,14.10,16.60,18.90,20.10,21.20 -8,11.20,12.60,15.10,17.90,20.90,22.10,23.20 -9,11.70,13.60,16.30,19.40,22.70,24.20,25.30 -10,12.20,14.50,17.40,20.90,24.70,26.20,27.30 -11,12.90,15.20,18.40,22.20,26.50,28.00,29.10 -12,13.60,15.90,19.40,23.40,28.20,29.70,30.80 -13,14.40,16.70,20.50,24.70,29.70,31.20,32.40 -14,15.10,17.40,21.50,26.00,31.30,32.80,34.00 -15,15.80,18.10,22.50,27.20,33.00,34.50,35.70 -16,16.30,18.80,23.50,28.40,34.60,36.20,37.40 -17,16.80,19.40,24.50,29.50,36.30,38.10,39.30 -18,17.40,20.00,25.50,30.70,38.20,40.10,41.30 -19,18.10,20.70,26.30,31.90,40.00,41.90,43.10 -20,18.60,21.50,27.30,33.10,41.60,43.70,44.90 -21,19.10,22.30,28.30,34.20,43.30,45.50,46.90 -22,19.60,23.00,29.20,35.40,44.90,47.10,48.80 -23,20.30,23.70,30.20,36.40,46.40,48.90,50.60 -24,20.80,24.40,31.00,37.60,47.90,50.80,52.50 -25,21.30,25.20,32.00,38.90,49.30,52.50,54.20 -26,21.90,25.90,33.00,40.30,50.80,54.00,55.80 -27,22.60,26.60,33.80,41.50,52.10,55.70,57.50 -28,23.30,27.30,34.80,42.70,53.60,57.20,59.10 -29,24.00,28.20,35.80,43.70,55.20,58.80,60.80 -30,24.50,28.90,36.80,44.90,56.70,60.40,62.50 -31,25.20,29.60,37.90,46.00,58.40,62.10,64.20 -32,25.80,30.30,38.90,47.30,59.90,63.70,65.80 -33,26.30,30.90,39.90,48.40,61.40,65.50,67.60 -34,26.80,31.60,40.70,49.60,63.00,67.40,69.50 -35,27.50,32.40,41.50,50.60,64.50,69.20,71.30 -36,28.00,33.10,42.40,51.60,66.10,70.90,73.10 -37,28.50,34.00,43.30,52.80,67.70,72.60,74.80 -38,29.20,34.70,44.30,53.90,69.20,74.50,76.70 -39,30.00,35.50,45.30,55.10,70.70,76.20,78.40 -40,30.80,36.30,46.20,56.20,72.20,77.90,80.10 -41,31.50,37.00,47.20,57.40,73.90,79.70,81.90 -42,32.20,37.70,48.00,58.40,75.50,81.30,83.50 -43,32.80,38.40,48.70,59.40,77.00,82.90,85.10 -44,33.30,39.10,49.60,60.40,78.40,84.60,86.90 -45,33.80,39.80,50.40,61.40,79.90,86.20,88.50 -46,34.50,40.60,51.40,62.40,81.40,87.90,90.20 -47,35.10,41.30,52.40,63.40,83.10,89.60,91.90 -48,35.80,42.10,53.20,64.40,84.60,91.40,93.70 -49,36.30,42.80,54.20,65.40,86.00,93.00,95.30 -50,37.00,43.60,55.00,66.40,87.50,94.50,96.90 -51,37.60,44.40,55.80,67.60,89.00,96.00,98.50 -52,38.10,45.20,56.60,68.90,90.40,97.60,100.10 -53,38.80,45.90,57.50,70.00,91.90,99.20,101.70 -54,39.60,46.80,58.40,71.20,93.30,100.70,103.20 -55,40.20,47.60,59.40,72.20,94.80,102.30,104.80 -56,40.70,48.20,60.20,73.20,96.30,104.10,106.60 -57,41.40,48.90,61.20,74.40,97.70,105.70,108.20 -58,41.90,49.60,62.20,75.60,99.20,107.20,109.70 -59,42.40,50.10,63.20,76.80,100.70,108.90,111.40 -60,43.10,50.80,64.20,77.90,102.20,110.80,113.30 -61,43.90,51.60,65.00,79.10,103.80,112.60,115.10 -62,44.70,52.40,66.00,80.20,105.20,114.30,116.90 -63,45.40,53.10,66.80,81.50,106.80,116.00,118.90 -64,46.20,53.90,67.60,82.70,108.30,117.90,121.00 -65,46.80,54.60,68.60,84.00,109.90,119.60,123.10 -66,47.30,55.30,69.60,85.30,111.60,121.50,125.00 -67,47.80,56.10,70.60,86.80,113.20,123.30,126.80 -68,48.50,56.90,71.60,88.30,114.80,124.90,128.50 -69,49.00,57.60,72.60,89.60,116.60,126.70,130.40 -70,49.50,58.50,73.60,91.10,118.40,128.50,132.30 -71,50.20,59.50,74.60,92.40,120.10,130.30,134.10 -72,51.00,60.30,75.60,93.90,121.90,132.10,135.90 -73,51.70,61.00,76.60,95.20,123.50,133.80,137.60 -74,52.20,61.80,77.60,96.40,125.00,135.30,139.30 -75,52.90,62.50,78.60,97.70,126.50,136.80,141.10 -76,53.60,63.40,79.50,99.00,128.10,138.50,142.80 -77,54.30,64.10,80.50,100.30,129.60,140.40,144.70 -78,55.00,64.80,81.50,101.50,131.30,142.10,146.40 -79,55.70,65.70,82.50,102.80,133.00,143.80,148.10 -80,56.40,66.50,83.50,104.10,134.70,145.60,149.90 -81,56.90,67.20,84.50,105.50,136.20,147.40,151.70 -82,57.40,67.90,85.50,106.70,137.70,149.00,153.40 -83,58.10,68.60,86.60,108.00,139.20,150.70,155.20 -84,58.80,69.50,87.70,109.40,140.70,152.50,157.00 -85,59.40,70.20,88.70,110.60,142.00,154.20,158.70 -86,60.00,71.10,89.70,111.90,143.50,155.70,160.40 -87,60.70,71.80,90.70,113.20,145.00,157.20,162.10 -88,61.40,72.50,91.50,114.40,146.60,158.80,163.80 -89,62.10,73.40,92.50,115.50,148.10,160.60,165.70 -90,62.90,74.20,93.50,116.70,149.80,162.40,167.50 -91,63.50,74.90,94.50,117.90,151.30,164.30,169.40 -92,64.20,75.60,95.30,119.20,153.00,166.00,171.10 -93,64.80,76.30,96.30,120.40,154.50,167.70,172.80 -94,65.50,77.10,97.30,121.60,156.20,169.40,174.50 -95,66.00,77.80,98.30,122.60,157.70,171.00,176.10 -96,66.50,78.60,99.30,123.70,159.30,172.70,177.90 -97,67.20,79.30,100.30,124.90,160.80,174.40,179.70 -98,67.90,80.10,101.10,126.10,162.30,176.00,181.30 -99,68.50,80.80,102.10,127.30,163.60,177.50,182.80 -100,69.00,81.50,102.90,128.40,165.10,179.00,184.30 -101,69.70,82.20,103.80,129.60,166.60,180.50,186.00 -102,70.40,83.00,104.80,130.70,168.10,182.20,187.80 -103,71.00,83.80,105.60,131.90,169.80,184.00,189.60 -104,71.50,84.50,106.60,133.00,171.60,185.80,191.40 -105,72.20,85.30,107.40,134.30,173.20,187.50,193.10 -106,72.70,86.00,108.40,135.50,175.00,189.30,194.90 -107,73.40,86.80,109.40,136.90,176.70,191.00,196.70 -108,74.00,87.50,110.40,138.10,178.20,192.80,198.50 -109,74.80,88.30,111.40,139.40,179.90,194.50,200.20 -110,75.50,89.10,112.20,140.50,181.60,196.30,202.00 -111,76.00,90.10,113.20,141.80,183.30,198.00,203.80 -112,76.70,90.90,114.30,143.00,185.00,199.70,205.60 -113,77.40,91.90,115.30,144.40,186.60,201.50,207.40 -114,78.20,92.70,116.30,145.60,188.20,203.30,209.30 -115,79.10,93.60,117.30,146.90,189.80,205.20,211.20 -116,79.80,94.40,118.30,148.20,191.30,206.90,213.00 -117,80.30,95.10,119.40,149.50,192.80,208.70,214.80 -118,80.90,95.80,120.40,150.70,194.40,210.40,216.50 -119,81.60,96.70,121.40,152.00,196.00,212.00,218.30 -120,82.30,97.50,122.50,153.40,197.50,213.80,220.20 -121,82.80,98.30,123.50,154.60,199.20,215.60,222.00 -122,83.50,99.00,124.50,155.80,200.80,217.40,223.90 -123,84.40,99.90,125.50,157.00,202.50,219.20,225.80 -124,85.10,100.60,126.60,158.20,204.10,221.10,227.80 -125,85.80,101.30,127.80,159.50,205.80,222.90,229.70 -126,86.50,102.10,128.80,160.90,207.30,224.70,231.50 -127,87.10,102.90,129.80,162.10,209.00,226.50,233.30 -128,87.80,103.90,130.80,163.30,210.50,228.40,235.20 -129,88.60,104.70,131.90,164.50,212.10,230.10,237.00 -130,89.20,105.50,132.90,165.70,213.60,231.80,238.70 -131,89.90,106.50,133.90,167.00,215.10,233.60,240.60 -132,90.50,107.30,135.00,168.30,216.80,235.30,242.60 -133,91.30,108.10,136.00,169.60,218.50,237.20,244.50 -134,92.00,108.80,137.00,170.80,220.30,239.20,246.50 -135,92.50,109.70,138.00,172.10,221.90,241.00,248.30 -136,93.20,110.40,139.00,173.30,223.50,242.70,250.00 -137,93.90,111.30,140.10,174.70,225.10,244.50,251.80 -138,94.50,112.10,141.10,176.10,226.70,246.40,253.70 -139,95.30,112.90,142.10,177.30,228.20,248.10,255.40 -140,96.00,113.90,143.20,178.60,229.90,249.90,257.30 -141,96.70,114.70,144.20,179.80,231.50,251.80,259.20 -142,97.30,115.40,145.20,181.10,233.20,253.60,261.00 -143,98.00,116.10,146.20,182.60,234.70,255.30,262.70 -144,98.70,116.90,147.20,184.00,236.20,257.00,264.50 -145,99.60,117.80,148.20,185.20,237.90,258.70,266.30 -146,100.30,118.60,149.30,186.30,239.60,260.40,268.10 -147,101.00,119.30,150.40,187.50,241.20,262.20,270.00 -148,101.80,120.10,151.40,188.70,242.90,264.00,272.00 -149,102.40,121.00,152.40,189.90,244.80,265.90,274.10 -150,103.10,121.70,153.40,191.20,246.60,267.70,276.30 diff --git a/dist/simple/products/3DaySelect.csv b/dist/simple/products/3DaySelect.csv deleted file mode 100644 index 6c41e665a..000000000 --- a/dist/simple/products/3DaySelect.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,302,303,304,305,306,307,308 -1,4.40,4.60,4.90,5.20,6.00,6.40,6.60 -2,4.60,4.80,5.20,5.90,6.90,7.40,7.70 -3,5.00,5.30,5.90,6.60,8.00,8.50,8.90 -4,5.40,5.80,6.50,7.30,8.90,9.40,10.00 -5,5.70,6.30,7.10,8.00,9.80,10.40,11.10 -6,6.10,6.80,7.70,8.70,10.70,11.30,12.10 -7,6.50,7.30,8.30,9.40,11.50,12.40,13.30 -8,6.90,7.80,8.90,10.10,12.40,13.40,14.40 -9,7.30,8.30,9.50,10.80,13.30,14.40,15.50 -10,7.70,8.80,10.10,11.40,14.10,15.40,16.70 -11,8.10,9.30,10.70,12.10,15.10,16.50,17.80 -12,8.50,9.80,11.30,12.80,16.00,17.50,19.00 -13,8.90,10.30,11.90,13.50,16.90,18.50,20.10 -14,9.30,10.80,12.50,14.20,17.80,19.50,21.30 -15,9.70,11.30,13.10,15.00,18.70,20.50,22.40 -16,10.10,11.80,13.80,15.70,19.60,21.50,23.50 -17,10.50,12.20,14.40,16.50,20.50,22.50,24.60 -18,10.90,12.70,15.10,17.20,21.50,23.60,25.70 -19,11.30,13.20,15.70,17.90,22.40,24.60,26.80 -20,11.70,13.70,16.30,18.60,23.30,25.60,27.80 -21,12.10,14.20,16.90,19.30,24.10,26.50,28.80 -22,12.50,14.70,17.50,20.00,24.90,27.40,29.90 -23,12.90,15.20,18.10,20.80,25.80,28.40,30.90 -24,13.30,15.70,18.70,21.50,26.70,29.40,32.00 -25,13.80,16.20,19.30,22.20,27.70,30.40,33.10 -26,14.20,16.70,19.90,22.90,28.60,31.40,34.20 -27,14.60,17.20,20.60,23.60,29.60,32.50,35.40 -28,15.00,17.60,21.20,24.30,30.50,33.50,36.50 -29,15.40,18.10,21.80,25.00,31.40,34.50,37.60 -30,15.80,18.60,22.40,25.70,32.40,35.50,38.70 -31,16.20,19.10,23.00,26.40,33.30,36.50,39.70 -32,16.60,19.60,23.70,27.10,34.30,37.50,40.80 -33,17.00,20.10,24.30,27.80,35.10,38.40,41.90 -34,17.40,20.60,24.90,28.50,35.90,39.30,42.90 -35,17.80,21.10,25.50,29.20,36.80,40.20,43.90 -36,18.20,21.60,26.10,29.90,37.60,41.10,44.90 -37,18.60,22.10,26.70,30.60,38.50,42.00,45.80 -38,19.00,22.60,27.20,31.30,39.30,42.90,46.80 -39,19.40,23.00,27.80,32.00,40.10,43.80,47.80 -40,19.80,23.50,28.40,32.70,41.00,44.70,48.80 -41,20.20,24.00,29.00,33.40,41.80,45.60,49.90 -42,20.60,24.50,29.60,34.10,42.80,46.70,51.10 -43,21.00,25.00,30.20,34.80,43.70,47.70,52.20 -44,21.40,25.50,30.80,35.50,44.60,48.60,53.30 -45,21.80,26.00,31.40,36.30,45.50,49.60,54.40 -46,22.20,26.50,32.00,37.00,46.30,50.60,55.50 -47,22.60,27.00,32.60,37.70,47.30,51.70,56.60 -48,23.00,27.50,33.20,38.40,48.10,52.60,57.70 -49,23.40,28.00,33.80,39.10,48.90,53.50,58.70 -50,23.80,28.50,34.40,39.80,49.90,54.60,59.80 -51,24.20,29.00,35.00,40.50,50.80,55.60,60.90 -52,24.60,29.40,35.60,41.20,51.70,56.60,62.00 -53,25.00,29.90,36.20,41.90,52.50,57.60,63.10 -54,25.40,30.40,36.80,42.60,53.40,58.60,64.30 -55,25.80,30.90,37.40,43.30,54.40,59.70,65.50 -56,26.20,31.40,38.00,44.00,55.30,60.70,66.60 -57,26.60,31.90,38.60,44.70,56.30,61.80,67.80 -58,27.00,32.40,39.20,45.40,57.20,62.80,68.90 -59,27.40,32.90,39.80,46.10,58.20,63.90,70.10 -60,27.80,33.40,40.40,46.80,59.10,64.90,71.30 -61,28.20,33.90,41.00,47.50,60.10,66.00,72.50 -62,28.60,34.40,41.60,48.20,61.00,67.00,73.70 -63,29.00,34.90,42.20,48.90,61.90,67.90,74.80 -64,29.40,35.30,42.80,49.60,62.90,69.00,75.90 -65,29.80,35.80,43.40,50.30,63.80,69.90,77.00 -66,30.30,36.30,44.00,51.00,64.80,71.00,78.10 -67,30.70,36.80,44.60,51.70,65.70,72.00,79.20 -68,31.10,37.30,45.20,52.40,66.70,73.10,80.30 -69,31.50,37.80,45.80,53.10,67.50,74.00,81.30 -70,31.90,38.30,46.40,53.80,68.30,75.00,82.40 -71,32.30,38.80,47.00,54.50,69.30,76.00,83.60 -72,32.70,39.30,47.60,55.20,70.30,77.10,84.70 -73,33.10,39.80,48.20,55.90,71.20,78.00,85.80 -74,33.50,40.30,48.80,56.60,72.10,79.00,86.90 -75,33.90,40.80,49.40,57.30,73.00,80.00,88.00 -76,34.30,41.30,50.00,58.00,73.90,81.00,89.10 -77,34.70,41.80,50.70,58.70,74.80,82.10,90.20 -78,35.10,42.30,51.30,59.40,75.70,83.10,91.40 -79,35.50,42.80,51.90,60.20,76.60,84.00,92.50 -80,35.90,43.20,52.50,61.00,77.50,84.90,93.60 -81,36.30,43.70,53.10,61.70,78.30,86.00,94.60 -82,36.70,44.20,53.70,62.40,79.10,87.00,95.80 -83,37.10,44.70,54.30,63.10,80.10,88.00,96.90 -84,37.50,45.20,54.90,63.80,81.00,89.00,98.00 -85,37.90,45.70,55.50,64.50,81.80,89.90,99.00 -86,38.30,46.20,56.10,65.20,82.80,91.00,100.20 -87,38.70,46.70,56.70,65.90,83.60,92.00,101.30 -88,39.10,47.20,57.30,66.60,84.50,93.00,102.50 -89,39.50,47.70,57.90,67.30,85.40,94.10,103.50 -90,39.90,48.20,58.50,68.00,86.40,95.10,104.70 -91,40.30,48.60,59.10,68.70,87.20,96.10,105.80 -92,40.70,49.10,59.70,69.50,88.10,97.10,106.90 -93,41.10,49.60,60.30,70.20,89.00,98.10,108.00 -94,41.50,50.10,61.00,70.90,89.90,99.10,109.10 -95,41.90,50.60,61.60,71.60,90.90,100.20,110.20 -96,42.30,51.10,62.20,72.30,91.80,101.10,111.30 -97,42.70,51.60,62.80,73.00,92.70,102.10,112.40 -98,43.10,52.10,63.40,73.70,93.70,103.10,113.50 -99,43.50,52.60,64.00,74.40,94.50,104.00,114.50 -100,44.00,53.10,64.70,75.10,95.40,105.00,115.60 -101,44.40,53.50,65.30,75.80,96.30,105.90,116.70 -102,44.80,54.00,65.90,76.50,97.30,107.00,117.90 -103,45.20,54.50,66.50,77.20,98.10,108.00,119.10 -104,45.60,55.00,67.10,77.90,98.90,108.90,120.10 -105,46.00,55.50,67.70,78.60,99.90,110.00,121.20 -106,46.40,56.00,68.30,79.30,100.70,111.00,122.30 -107,46.80,56.50,68.90,80.00,101.70,112.10,123.50 -108,47.20,57.00,69.50,80.70,102.60,113.00,124.60 -109,47.60,57.50,70.10,81.40,103.50,114.00,125.70 -110,48.00,58.00,70.70,82.10,104.50,115.10,126.80 -111,48.40,58.50,71.30,82.80,105.40,116.00,128.00 -112,48.80,59.00,71.90,83.50,106.30,117.00,129.10 -113,49.20,59.40,72.50,84.30,107.20,118.00,130.20 -114,49.60,59.90,73.10,85.00,108.20,119.00,131.30 -115,50.00,60.40,73.70,85.70,109.00,119.90,132.30 -116,50.40,61.00,74.30,86.40,109.90,120.80,133.40 -117,50.80,61.50,74.90,87.10,110.90,121.90,134.50 -118,51.20,62.00,75.50,87.80,111.70,122.90,135.60 -119,51.60,62.40,76.10,88.50,112.70,123.90,136.70 -120,52.00,62.90,76.70,89.20,113.60,124.90,137.80 -121,52.40,63.40,77.30,89.90,114.50,125.80,138.90 -122,52.80,63.90,77.90,90.60,115.40,126.70,139.90 -123,53.20,64.40,78.50,91.30,116.30,127.70,141.10 -124,53.60,64.90,79.10,92.00,117.20,128.70,142.20 -125,54.00,65.40,79.70,92.70,118.10,129.60,143.30 -126,54.40,65.90,80.30,93.50,119.10,130.70,144.40 -127,54.80,66.40,80.90,94.20,120.00,131.60,145.50 -128,55.20,66.90,81.50,94.90,120.80,132.50,146.50 -129,55.60,67.40,82.10,95.60,121.80,133.60,147.70 -130,56.00,67.90,82.70,96.30,122.70,134.50,148.80 -131,56.40,68.30,83.30,97.00,123.60,135.50,150.00 -132,56.80,68.80,83.90,97.70,124.50,136.50,151.10 -133,57.20,69.30,84.50,98.40,125.30,137.40,152.10 -134,57.60,69.80,85.10,99.10,126.20,138.40,153.20 -135,58.00,70.30,85.70,99.80,127.10,139.40,154.40 -136,58.40,70.80,86.30,100.50,128.00,140.40,155.50 -137,58.80,71.30,86.90,101.30,128.90,141.40,156.60 -138,59.20,71.80,87.50,102.00,129.80,142.40,157.60 -139,59.60,72.30,88.10,102.70,130.70,143.40,158.80 -140,60.00,72.80,88.70,103.40,131.50,144.40,159.90 -141,60.50,73.30,89.30,104.10,132.50,145.40,161.00 -142,60.90,73.80,89.90,104.80,133.40,146.40,162.10 -143,61.30,74.20,90.50,105.50,134.30,147.40,163.20 -144,61.70,74.70,91.10,106.20,135.10,148.30,164.30 -145,62.10,75.20,91.70,106.90,136.00,149.30,165.30 -146,62.50,75.70,92.30,107.60,136.90,150.40,166.50 -147,62.90,76.20,92.90,108.30,137.80,151.30,167.50 -148,63.30,76.70,93.50,109.00,138.80,152.40,168.70 -149,63.70,77.20,94.10,109.70,139.60,153.30,169.80 -150,64.10,77.70,94.70,110.40,140.40,154.40,171.00 diff --git a/dist/simple/products/3DaySelectRes.csv b/dist/simple/products/3DaySelectRes.csv deleted file mode 100644 index f7fb11675..000000000 --- a/dist/simple/products/3DaySelectRes.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,302,303,304,305,306,307,308 -1,5.40,5.60,5.90,6.20,7.00,7.40,7.60 -2,5.60,5.80,6.20,6.90,7.90,8.40,8.70 -3,6.00,6.30,6.90,7.60,9.00,9.50,9.90 -4,6.40,6.80,7.50,8.30,9.90,10.40,11.00 -5,6.70,7.30,8.10,9.00,10.80,11.40,12.10 -6,7.10,7.80,8.70,9.70,11.70,12.30,13.10 -7,7.50,8.30,9.30,10.40,12.50,13.40,14.30 -8,7.90,8.80,9.90,11.10,13.40,14.40,15.40 -9,8.30,9.30,10.50,11.80,14.30,15.40,16.50 -10,8.70,9.80,11.10,12.40,15.10,16.40,17.70 -11,9.10,10.30,11.70,13.10,16.10,17.50,18.80 -12,9.50,10.80,12.30,13.80,17.00,18.50,20.00 -13,9.90,11.30,12.90,14.50,17.90,19.50,21.10 -14,10.30,11.80,13.50,15.20,18.80,20.50,22.30 -15,10.70,12.30,14.10,16.00,19.70,21.50,23.40 -16,11.10,12.80,14.80,16.70,20.60,22.50,24.50 -17,11.50,13.20,15.40,17.50,21.50,23.50,25.60 -18,11.90,13.70,16.10,18.20,22.50,24.60,26.70 -19,12.30,14.20,16.70,18.90,23.40,25.60,27.80 -20,12.70,14.70,17.30,19.60,24.30,26.60,28.80 -21,13.10,15.20,17.90,20.30,25.10,27.50,29.80 -22,13.50,15.70,18.50,21.00,25.90,28.40,30.90 -23,13.90,16.20,19.10,21.80,26.80,29.40,31.90 -24,14.30,16.70,19.70,22.50,27.70,30.40,33.00 -25,14.80,17.20,20.30,23.20,28.70,31.40,34.10 -26,15.20,17.70,20.90,23.90,29.60,32.40,35.20 -27,15.60,18.20,21.60,24.60,30.60,33.50,36.40 -28,16.00,18.60,22.20,25.30,31.50,34.50,37.50 -29,16.40,19.10,22.80,26.00,32.40,35.50,38.60 -30,16.80,19.60,23.40,26.70,33.40,36.50,39.70 -31,17.20,20.10,24.00,27.40,34.30,37.50,40.70 -32,17.60,20.60,24.70,28.10,35.30,38.50,41.80 -33,18.00,21.10,25.30,28.80,36.10,39.40,42.90 -34,18.40,21.60,25.90,29.50,36.90,40.30,43.90 -35,18.80,22.10,26.50,30.20,37.80,41.20,44.90 -36,19.20,22.60,27.10,30.90,38.60,42.10,45.90 -37,19.60,23.10,27.70,31.60,39.50,43.00,46.80 -38,20.00,23.60,28.20,32.30,40.30,43.90,47.80 -39,20.40,24.00,28.80,33.00,41.10,44.80,48.80 -40,20.80,24.50,29.40,33.70,42.00,45.70,49.80 -41,21.20,25.00,30.00,34.40,42.80,46.60,50.90 -42,21.60,25.50,30.60,35.10,43.80,47.70,52.10 -43,22.00,26.00,31.20,35.80,44.70,48.70,53.20 -44,22.40,26.50,31.80,36.50,45.60,49.60,54.30 -45,22.80,27.00,32.40,37.30,46.50,50.60,55.40 -46,23.20,27.50,33.00,38.00,47.30,51.60,56.50 -47,23.60,28.00,33.60,38.70,48.30,52.70,57.60 -48,24.00,28.50,34.20,39.40,49.10,53.60,58.70 -49,24.40,29.00,34.80,40.10,49.90,54.50,59.70 -50,24.80,29.50,35.40,40.80,50.90,55.60,60.80 -51,25.20,30.00,36.00,41.50,51.80,56.60,61.90 -52,25.60,30.40,36.60,42.20,52.70,57.60,63.00 -53,26.00,30.90,37.20,42.90,53.50,58.60,64.10 -54,26.40,31.40,37.80,43.60,54.40,59.60,65.30 -55,26.80,31.90,38.40,44.30,55.40,60.70,66.50 -56,27.20,32.40,39.00,45.00,56.30,61.70,67.60 -57,27.60,32.90,39.60,45.70,57.30,62.80,68.80 -58,28.00,33.40,40.20,46.40,58.20,63.80,69.90 -59,28.40,33.90,40.80,47.10,59.20,64.90,71.10 -60,28.80,34.40,41.40,47.80,60.10,65.90,72.30 -61,29.20,34.90,42.00,48.50,61.10,67.00,73.50 -62,29.60,35.40,42.60,49.20,62.00,68.00,74.70 -63,30.00,35.90,43.20,49.90,62.90,68.90,75.80 -64,30.40,36.30,43.80,50.60,63.90,70.00,76.90 -65,30.80,36.80,44.40,51.30,64.80,70.90,78.00 -66,31.30,37.30,45.00,52.00,65.80,72.00,79.10 -67,31.70,37.80,45.60,52.70,66.70,73.00,80.20 -68,32.10,38.30,46.20,53.40,67.70,74.10,81.30 -69,32.50,38.80,46.80,54.10,68.50,75.00,82.30 -70,32.90,39.30,47.40,54.80,69.30,76.00,83.40 -71,33.30,39.80,48.00,55.50,70.30,77.00,84.60 -72,33.70,40.30,48.60,56.20,71.30,78.10,85.70 -73,34.10,40.80,49.20,56.90,72.20,79.00,86.80 -74,34.50,41.30,49.80,57.60,73.10,80.00,87.90 -75,34.90,41.80,50.40,58.30,74.00,81.00,89.00 -76,35.30,42.30,51.00,59.00,74.90,82.00,90.10 -77,35.70,42.80,51.70,59.70,75.80,83.10,91.20 -78,36.10,43.30,52.30,60.40,76.70,84.10,92.40 -79,36.50,43.80,52.90,61.20,77.60,85.00,93.50 -80,36.90,44.20,53.50,62.00,78.50,85.90,94.60 -81,37.30,44.70,54.10,62.70,79.30,87.00,95.60 -82,37.70,45.20,54.70,63.40,80.10,88.00,96.80 -83,38.10,45.70,55.30,64.10,81.10,89.00,97.90 -84,38.50,46.20,55.90,64.80,82.00,90.00,99.00 -85,38.90,46.70,56.50,65.50,82.80,90.90,100.00 -86,39.30,47.20,57.10,66.20,83.80,92.00,101.20 -87,39.70,47.70,57.70,66.90,84.60,93.00,102.30 -88,40.10,48.20,58.30,67.60,85.50,94.00,103.50 -89,40.50,48.70,58.90,68.30,86.40,95.10,104.50 -90,40.90,49.20,59.50,69.00,87.40,96.10,105.70 -91,41.30,49.60,60.10,69.70,88.20,97.10,106.80 -92,41.70,50.10,60.70,70.50,89.10,98.10,107.90 -93,42.10,50.60,61.30,71.20,90.00,99.10,109.00 -94,42.50,51.10,62.00,71.90,90.90,100.10,110.10 -95,42.90,51.60,62.60,72.60,91.90,101.20,111.20 -96,43.30,52.10,63.20,73.30,92.80,102.10,112.30 -97,43.70,52.60,63.80,74.00,93.70,103.10,113.40 -98,44.10,53.10,64.40,74.70,94.70,104.10,114.50 -99,44.50,53.60,65.00,75.40,95.50,105.00,115.50 -100,45.00,54.10,65.70,76.10,96.40,106.00,116.60 -101,45.40,54.50,66.30,76.80,97.30,106.90,117.70 -102,45.80,55.00,66.90,77.50,98.30,108.00,118.90 -103,46.20,55.50,67.50,78.20,99.10,109.00,120.10 -104,46.60,56.00,68.10,78.90,99.90,109.90,121.10 -105,47.00,56.50,68.70,79.60,100.90,111.00,122.20 -106,47.40,57.00,69.30,80.30,101.70,112.00,123.30 -107,47.80,57.50,69.90,81.00,102.70,113.10,124.50 -108,48.20,58.00,70.50,81.70,103.60,114.00,125.60 -109,48.60,58.50,71.10,82.40,104.50,115.00,126.70 -110,49.00,59.00,71.70,83.10,105.50,116.10,127.80 -111,49.40,59.50,72.30,83.80,106.40,117.00,129.00 -112,49.80,60.00,72.90,84.50,107.30,118.00,130.10 -113,50.20,60.40,73.50,85.30,108.20,119.00,131.20 -114,50.60,60.90,74.10,86.00,109.20,120.00,132.30 -115,51.00,61.40,74.70,86.70,110.00,120.90,133.30 -116,51.40,62.00,75.30,87.40,110.90,121.80,134.40 -117,51.80,62.50,75.90,88.10,111.90,122.90,135.50 -118,52.20,63.00,76.50,88.80,112.70,123.90,136.60 -119,52.60,63.40,77.10,89.50,113.70,124.90,137.70 -120,53.00,63.90,77.70,90.20,114.60,125.90,138.80 -121,53.40,64.40,78.30,90.90,115.50,126.80,139.90 -122,53.80,64.90,78.90,91.60,116.40,127.70,140.90 -123,54.20,65.40,79.50,92.30,117.30,128.70,142.10 -124,54.60,65.90,80.10,93.00,118.20,129.70,143.20 -125,55.00,66.40,80.70,93.70,119.10,130.60,144.30 -126,55.40,66.90,81.30,94.50,120.10,131.70,145.40 -127,55.80,67.40,81.90,95.20,121.00,132.60,146.50 -128,56.20,67.90,82.50,95.90,121.80,133.50,147.50 -129,56.60,68.40,83.10,96.60,122.80,134.60,148.70 -130,57.00,68.90,83.70,97.30,123.70,135.50,149.80 -131,57.40,69.30,84.30,98.00,124.60,136.50,151.00 -132,57.80,69.80,84.90,98.70,125.50,137.50,152.10 -133,58.20,70.30,85.50,99.40,126.30,138.40,153.10 -134,58.60,70.80,86.10,100.10,127.20,139.40,154.20 -135,59.00,71.30,86.70,100.80,128.10,140.40,155.40 -136,59.40,71.80,87.30,101.50,129.00,141.40,156.50 -137,59.80,72.30,87.90,102.30,129.90,142.40,157.60 -138,60.20,72.80,88.50,103.00,130.80,143.40,158.60 -139,60.60,73.30,89.10,103.70,131.70,144.40,159.80 -140,61.00,73.80,89.70,104.40,132.50,145.40,160.90 -141,61.50,74.30,90.30,105.10,133.50,146.40,162.00 -142,61.90,74.80,90.90,105.80,134.40,147.40,163.10 -143,62.30,75.20,91.50,106.50,135.30,148.40,164.20 -144,62.70,75.70,92.10,107.20,136.10,149.30,165.30 -145,63.10,76.20,92.70,107.90,137.00,150.30,166.30 -146,63.50,76.70,93.30,108.60,137.90,151.40,167.50 -147,63.90,77.20,93.90,109.30,138.80,152.30,168.50 -148,64.30,77.70,94.50,110.00,139.80,153.40,169.70 -149,64.70,78.20,95.10,110.70,140.60,154.30,170.80 -150,65.10,78.70,95.70,111.40,141.40,155.40,172.00 diff --git a/dist/simple/products/450.csv b/dist/simple/products/450.csv deleted file mode 100644 index 63d16e197..000000000 --- a/dist/simple/products/450.csv +++ /dev/null @@ -1,153 +0,0 @@ -"ZONE CHART" -"UPS Ground/UPS 3 Day Select/UPS 2nd Day Air/UPS 2nd Day Air A.M./UPS Next Day Air Saver/UPS Next Day Air" - -"For shipments originating in ZIP Codes 450-01 to 452-99. To determine zone" -"take the first three digits of the receiver's ZIP Code and refer to the chart below:" - -"ZONES" -Dest. ZIP,Ground,3 Day Select,2nd Day Air,2nd Day Air A.M.,Next Day Air Saver,Next Day Air - -004-005,4,304,204,244,134,104 -006-007,-,-,225,-,-,125 -008,-,-,[1],-,-,[1] -009,-,-,225,-,-,125 -010-067,5,305,205,245,135,105 -068-089,4,304,204,244,134,104 -090-099,-,-,-,-,-,- -100-118,4,304,204,244,134,104 -119-123,5,305,205,245,135,105 -124-127,4,304,204,244,134,104 -128-129,5,305,205,245,135,105 -130-149,4,304,204,244,134,104 -150-157,3,303,203,243,133,103 -158-159,4,304,204,244,134,104 -160-165,3,303,203,243,133,103 -166-199,4,304,204,244,134,104 -200-239,4,304,204,244,134,104 -240-244,3,303,203,243,133,103 -245,4,304,204,244,134,104 -246-253,3,303,203,243,133,103 -254,4,304,204,244,134,104 -255-257,2,302,202,242,132,102 -258-260,3,303,203,243,133,103 -261,2,302,202,242,132,102 -262-266,3,303,203,243,133,103 -267,4,304,204,244,134,104 -268,3,303,203,-,-,103 -270,4,304,204,244,134,104 -271,3,303,203,243,133,103 -272-285,4,304,204,244,134,104 -286-289,3,303,203,243,133,103 -290-299,4,304,204,244,134,104 -300-306,4,304,204,244,134,104 -307,3,303,203,243,133,103 -308-319,4,304,204,244,134,104 -320-339,5,305,205,245,135,105 -340,-,-,-,-,-,- -341-349,5,305,205,245,135,105 -350-369,4,304,204,244,134,104 -370-374,3,303,203,243,133,103 -375,4,304,204,-,-,104 -376-379,3,303,203,243,133,103 -380-381,4,304,204,244,134,104 -382,3,303,203,243,133,103 -383,4,304,204,244,134,104 -384-385,3,303,203,243,133,103 -386-394,4,304,204,244,134,104 -395,5,305,205,245,135,105 -396-399,4,304,204,244,134,104 -400-406,2,302,202,242,132,102 -407-409,3,303,203,-,133,103 -410-414,2,302,202,242,132,102 -415-416,3,303,203,-,133,103 -417-418,2,302,202,242,132,102 -420-422,3,303,203,243,133,103 -423,2,302,202,242,132,102 -424,3,303,203,243,133,103 -425-433,2,302,202,242,132,102 -434-436,3,303,203,243,133,103 -437-438,2,302,202,242,132,102 -439-447,3,303,203,243,133,103 -448-462,2,302,202,242,132,102 -463-466,3,303,203,243,133,103 -467-475,2,302,202,242,132,102 -476-477,3,303,203,243,133,103 -478-479,2,302,202,242,132,102 -480-495,3,303,203,243,133,103 -496-499,4,304,204,244,134,104 -500-509,4,304,204,244,134,104 -510-512,5,305,205,245,135,105 -513-528,4,304,204,244,134,104 -530-534,3,303,203,243,133,103 -535-555,4,304,204,244,134,104 -556-558,5,305,205,245,135,105 -559-560,4,304,204,244,134,104 -561-585,5,305,205,245,135,105 -586-593,6,306,206,246,136,106 -594,7,307,207,247,137,107 -595,6,306,206,-,-,106 -596-599,7,307,207,247,137,107 -600-611,3,303,203,243,133,103 -612,4,304,204,244,134,104 -613-622,3,303,203,243,133,103 -623,4,304,204,244,134,104 -624-633,3,303,203,243,133,103 -634-636,4,304,204,244,134,104 -637,3,303,203,243,133,103 -638-667,4,304,204,244,134,104 -668-672,5,305,205,245,135,105 -673,4,304,204,244,134,104 -674-693,5,305,205,245,135,105 -700-711,5,305,205,245,135,105 -712,4,304,204,244,134,104 -713-714,5,305,205,245,135,105 -716-717,4,304,204,244,134,104 -718,5,305,205,245,135,105 -719-729,4,304,204,244,134,104 -730-742,5,305,205,245,135,105 -743,4,304,204,244,134,104 -744-748,5,305,205,245,135,105 -749,4,304,204,-,134,104 -750-768,5,305,205,245,135,105 -769,6,306,206,246,136,106 -770-779,5,305,205,245,135,105 -780-785,6,306,206,246,136,106 -786-787,5,305,205,245,135,105 -788,6,306,206,246,136,106 -789-796,5,305,205,245,135,105 -797-799,6,306,206,246,136,106 -800-806,6,306,206,246,136,106 -807,5,305,205,245,135,105 -808-831,6,306,206,246,136,106 -832-844,7,307,207,247,137,107 -845,6,306,206,-,-,106 -846-864,7,307,207,247,137,107 -865-885,6,306,206,246,136,106 -889-893,7,307,207,247,137,107 -894-897,8,308,208,248,138,108 -898,7,307,207,-,-,107 -900-921,8,308,208,248,138,108 -922,7,307,207,247,137,107 -923-961,8,308,208,248,138,108 -962-966,-,-,-,-,-,- -967-968,-,-,[2],-,-,[2] -969,-,-,[1],-,-,[1] -970-977,8,308,208,248,138,108 -978-979,7,307,207,-,137,107 -980-989,8,308,208,248,138,108 -990-994,7,307,207,247,137,107 -995-999,-,-,[3],-,-,[3] -,,,,,, - - -"[1] For Virgin Islands, Guam, Marshall Islands, etc., please refer to the Worldwide Rate and Zone information." - -"[2] For Hawaii, the following Postal Codes are Zone 124 for Next Day Air and Zone 224 for 2nd Day Air:" -96701,96706,96707,96709,96712,96717,96730,96731,96734,96744,96759,96762,96782,96786,96789,96791,96792,96795,96797,96801,96802,96803,96804,96805,96806,96807,96808,96809,96810,96811,96812,96813,96814,96815,96816,96817,96818,96819,96820,96821,96822,96823,96824,96825,96826,96827,96828,96830,96835,96836,96837,96838,96839,96840,96841,96842,96843,96844,96845,96846,96847,96848,96849,96850,96853,96854,96857,96858,96859,96860,96861,96862,96863,96898 -"For Hawaii, the following Postal Codes are Zone 126 for Next Day Air and Zone 226 for 2nd Day Air:" -96703,96704,96705,96708,96710,96713,96714,96715,96716,96718,96719,96720,96721,96722,96725,96726,96727,96728,96729,96732,96733,96737,96738,96739,96740,96741,96742,96743,96745,96746,96747,96748,96749,96750,96751,96752,96753,96754,96755,96756,96757,96760,96761,96763,96764,96765,96766,96767,96768,96769,96770,96771,96772,96773,96774,96775,96776,96777,96778,96779,96780,96781,96783,96784,96785,96788,96790,96793,96796 - -"[3] For Alaska, the following Postal Codes are Zone 124 for Next Day Air and Zone 224 for 2nd Day Air:" -99501,99502,99503,99504,99505,99506,99507,99508,99509,99510,99511,99512,99513,99514,99515,99516,99517,99518,99519,99520,99521,99522,99523,99524,99540,99556,99567,99568,99572,99577,99587,99603,99605,99610,99611,99631,99635,99639,99645,99654,99664,99669,99672,99687,99701,99702,99703,99705,99706,99707,99708,99709,99710,99711,99712,99775 -"For Alaska, the following Postal Codes are Zone 126 for Next Day Air and Zone 226 for 2nd Day Air:" -99547,99548,99549,99550,99551,99552,99553,99554,99555,99557,99558,99559,99561,99563,99564,99565,99566,99569,99571,99573,99574,99575,99576,99578,99579,99580,99581,99583,99584,99585,99586,99588,99589,99590,99591,99602,99604,99606,99607,99608,99609,99612,99613,99614,99615,99619,99620,99621,99622,99624,99625,99626,99627,99628,99630,99632,99633,99634,99636,99637,99638,99640,99641,99643,99644,99647,99648,99649,99650,99651,99652,99653,99655,99656,99657,99658,99659,99660,99661,99662,99663,99665,99666,99667,99668,99670,99671,99674,99675,99676,99677,99678,99679,99680,99681,99682,99683,99684,99685,99686,99688,99689,99690,99691,99692,99693,99694,99695,99697,99704,99714,99716,99720,99721,99722,99723,99724,99725,99726,99727,99729,99730,99732,99733,99734,99736,99737,99738,99739,99740,99741,99742,99743,99744,99745,99746,99747,99748,99749,99750,99751,99752,99753,99754,99755,99756,99757,99758,99759,99760,99761,99762,99763,99764,99765,99766,99767,99768,99769,99770,99771,99772,99773,99774,99776,99777,99778,99779,99780,99781,99782,99783,99784,99785,99786,99788,99789,99790,99791,99801,99802,99803,99811,99820,99821,99824,99825,99826,99827,99829,99830,99832,99833,99835,99836,99840,99841,99850,99901,99903,99918,99919,99921,99922,99923,99925,99926,99927,99928,99929,99950 diff --git a/dist/simple/products/Ground.csv b/dist/simple/products/Ground.csv deleted file mode 100644 index 4fe39dedb..000000000 --- a/dist/simple/products/Ground.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,2,3,4,5,6,7,8 -1,3.02,3.12,3.35,3.40,3.59,3.63,3.73 -2,3.08,3.28,3.61,3.71,4.00,4.09,4.35 -3,3.17,3.43,3.81,3.97,4.26,4.40,4.81 -4,3.29,3.58,4.02,4.23,4.52,4.66,5.12 -5,3.42,3.71,4.20,4.43,4.72,4.92,5.43 -6,3.57,3.84,4.35,4.64,4.93,5.18,5.69 -7,3.71,3.96,4.45,4.79,5.13,5.38,5.95 -8,3.85,4.08,4.56,4.90,5.29,5.64,6.36 -9,3.98,4.21,4.66,5.00,5.44,5.95,6.77 -10,4.11,4.32,4.76,5.16,5.65,6.36,7.24 -11,4.25,4.44,4.87,5.31,5.91,6.83,7.75 -12,4.38,4.58,4.97,5.46,6.17,7.29,8.32 -13,4.51,4.72,5.06,5.57,6.47,7.75,8.89 -14,4.62,4.87,5.16,5.67,6.84,8.22,9.45 -15,4.72,5.02,5.25,5.83,7.20,8.68,10.02 -16,4.81,5.19,5.40,6.03,7.57,9.14,10.59 -17,4.90,5.36,5.56,6.29,7.95,9.61,11.16 -18,4.99,5.55,5.76,6.60,8.33,10.07,11.72 -19,5.09,5.73,5.97,6.91,8.71,10.54,12.29 -20,5.21,5.92,6.18,7.22,9.09,10.95,12.86 -21,5.33,6.10,6.39,7.53,9.47,11.36,13.42 -22,5.46,6.29,6.61,7.84,9.86,11.77,13.99 -23,5.60,6.47,6.83,8.09,10.24,12.24,14.56 -24,5.73,6.65,7.04,8.35,10.62,12.70,15.12 -25,5.87,6.81,7.26,8.61,11.00,13.17,15.69 -26,6.00,6.97,7.47,8.87,11.38,13.58,16.21 -27,6.13,7.12,7.70,9.13,11.76,13.99,16.72 -28,6.27,7.28,7.93,9.40,12.15,14.40,17.29 -29,6.40,7.44,8.16,9.68,12.53,14.87,17.86 -30,6.54,7.62,8.37,9.96,12.91,15.33,18.42 -31,6.67,7.79,8.60,10.24,13.29,15.79,18.99 -32,6.80,7.97,8.83,10.53,13.67,16.26,19.56 -33,6.94,8.14,9.04,10.82,14.04,16.72,20.13 -34,7.06,8.32,9.27,11.10,14.41,17.19,20.68 -35,7.19,8.50,9.49,11.39,14.78,17.65,21.24 -36,7.31,8.67,9.70,11.67,15.15,18.11,21.79 -37,7.43,8.85,9.93,11.95,15.51,18.58,22.33 -38,7.56,9.02,10.16,12.23,15.86,19.04,22.87 -39,7.67,9.20,10.37,12.51,16.20,19.51,23.40 -40,7.78,9.37,10.59,12.78,16.53,19.97,23.93 -41,7.90,9.55,10.80,13.06,16.86,20.43,24.46 -42,8.01,9.72,11.02,13.34,17.19,20.90,24.97 -43,8.12,9.90,11.23,13.62,17.51,21.36,25.49 -44,8.23,10.07,11.43,13.90,17.82,21.83,26.00 -45,8.32,10.25,11.63,14.18,18.11,22.24,26.52 -46,8.40,10.41,11.83,14.45,18.40,22.65,27.03 -47,8.49,10.57,12.01,14.72,18.68,23.06,27.55 -48,8.57,10.71,12.20,14.98,18.95,23.48,28.01 -49,8.65,10.85,12.37,15.23,19.21,23.89,28.42 -50,8.73,10.97,12.55,15.47,19.45,24.25,28.79 -51,8.82,11.08,12.71,15.69,19.69,24.61,29.15 -52,8.90,11.19,12.88,15.90,19.93,24.92,29.51 -53,8.98,11.29,13.03,16.10,20.17,25.18,29.82 -54,9.06,11.39,13.19,16.31,20.40,25.38,30.07 -55,9.14,11.50,13.33,16.52,20.64,25.54,30.33 -56,9.23,11.60,13.48,16.72,20.88,25.69,30.54 -57,9.31,11.70,13.61,16.93,21.10,25.85,30.74 -58,9.39,11.80,13.74,17.08,21.32,26.00,30.95 -59,9.47,11.91,13.87,17.24,21.53,26.16,31.16 -60,9.56,12.00,13.99,17.39,21.72,26.31,31.36 -61,9.64,12.09,14.10,17.50,21.91,26.47,31.57 -62,9.72,12.19,14.22,17.60,22.08,26.62,31.78 -63,9.80,12.28,14.33,17.70,22.25,26.78,31.98 -64,9.89,12.37,14.43,17.81,22.40,26.93,32.19 -65,9.97,12.46,14.54,17.91,22.55,27.08,32.39 -66,10.05,12.56,14.63,18.02,22.68,27.24,32.60 -67,10.12,12.65,14.72,18.15,22.81,27.39,32.81 -68,10.20,12.74,14.82,18.28,22.92,27.55,33.01 -69,10.27,12.84,14.91,18.42,23.02,27.70,33.22 -70,10.33,12.93,15.00,18.58,23.13,27.86,33.43 -71,14.87,16.74,18.61,20.64,24.93,29.15,34.46 -72,18.78,20.56,22.22,23.22,26.73,30.69,35.49 -73,22.08,23.75,25.31,25.80,28.54,32.24,36.26 -74,24.35,26.13,27.63,28.37,30.34,33.53,37.03 -75,25.59,27.36,29.18,29.92,31.89,34.56,37.55 -76,26.83,28.39,29.95,30.95,33.18,35.33,38.06 -77,27.86,29.32,30.62,31.72,34.21,35.85,38.48 -78,28.79,30.20,31.24,32.50,34.98,36.31,38.89 -79,29.51,31.07,31.81,33.01,35.50,36.78,39.30 -80,30.13,31.95,32.32,33.43,35.91,37.19,39.71 -81,30.69,32.41,32.79,33.84,36.32,37.60,40.13 -82,31.21,32.87,33.24,34.25,36.73,38.01,40.54 -83,31.67,33.31,33.68,34.66,37.15,38.43,40.95 -84,32.08,33.74,34.12,35.07,37.56,38.84,41.36 -85,32.50,34.17,34.54,35.49,37.97,39.25,41.78 -86,32.91,34.58,34.95,35.90,38.38,39.66,42.19 -87,33.32,34.99,35.37,36.31,38.80,40.07,42.60 -88,33.73,35.40,35.80,36.72,39.21,40.49,43.01 -89,34.15,35.82,36.23,37.14,39.62,40.90,43.43 -90,34.56,36.23,36.65,37.55,40.03,41.31,43.84 -91,34.97,36.64,37.06,37.96,40.45,41.72,44.25 -92,35.38,37.05,37.47,38.37,40.86,42.14,44.66 -93,35.80,37.47,37.86,38.79,41.27,42.55,45.08 -94,36.21,37.88,38.23,39.20,41.68,42.96,45.49 -95,36.62,38.29,38.60,39.61,42.10,43.37,45.90 -96,37.02,38.65,38.97,40.02,42.51,43.79,46.31 -97,37.43,39.01,39.34,40.44,42.92,44.20,46.72 -98,37.83,39.37,39.71,40.85,43.33,44.61,47.14 -99,38.23,39.73,40.09,41.26,43.75,45.02,47.55 -100,38.63,40.10,40.46,41.67,44.16,45.44,47.96 -101,38.99,40.46,40.83,42.02,44.54,45.84,48.36 -102,39.35,40.82,41.20,42.37,44.92,46.24,48.77 -103,39.71,41.18,41.57,42.72,45.30,46.64,49.17 -104,40.07,41.54,41.94,43.08,45.68,47.04,49.57 -105,40.44,41.90,42.31,43.43,46.07,47.45,49.97 -106,40.80,42.26,42.68,43.78,46.45,47.85,50.37 -107,41.16,42.62,43.05,44.13,46.83,48.25,50.78 -108,41.52,42.98,43.43,44.48,47.21,48.65,51.18 -109,41.88,43.34,43.80,44.83,47.59,49.05,51.58 -110,42.24,43.70,44.17,45.18,47.97,49.46,51.98 -111,42.59,44.06,44.54,45.53,48.35,49.86,52.39 -112,42.94,44.43,44.91,45.88,48.74,50.26,52.79 -113,43.29,44.79,45.28,46.23,49.12,50.66,53.19 -114,43.64,45.15,45.65,46.58,49.50,51.07,53.59 -115,43.99,45.51,46.02,46.93,49.88,51.47,53.99 -116,44.34,45.87,46.40,47.28,50.26,51.87,54.40 -117,44.69,46.23,46.77,47.63,50.64,52.27,54.80 -118,45.04,46.59,47.14,47.98,51.02,52.67,55.20 -119,45.39,46.95,47.51,48.33,51.41,53.08,55.60 -120,45.75,47.31,47.88,48.68,51.79,53.48,56.00 -121,46.10,47.67,48.25,49.03,52.17,53.88,56.41 -122,46.45,48.03,48.62,49.38,52.55,54.28,56.81 -123,46.80,48.40,48.99,49.74,52.93,54.68,57.21 -124,47.15,48.76,49.36,50.09,53.31,55.09,57.61 -125,47.50,49.12,49.74,50.44,53.69,55.49,58.01 -126,47.85,49.48,50.11,50.79,54.08,55.89,58.42 -127,48.20,49.84,50.48,51.14,54.46,56.29,58.82 -128,48.55,50.20,50.85,51.49,54.84,56.69,59.22 -129,48.90,50.56,51.22,51.84,55.22,57.10,59.62 -130,49.25,50.92,51.59,52.19,55.60,57.50,60.02 -131,49.60,51.28,51.96,52.54,55.98,57.90,60.43 -132,49.95,51.64,52.33,52.89,56.36,58.30,60.83 -133,50.30,52.00,52.70,53.24,56.75,58.71,61.23 -134,50.65,52.36,53.08,53.59,57.13,59.11,61.63 -135,51.00,52.73,53.45,53.94,57.51,59.51,62.04 -136,51.35,53.09,53.82,54.29,57.89,59.91,62.44 -137,51.70,53.45,54.19,54.64,58.27,60.31,62.84 -138,52.06,53.81,54.56,54.99,58.65,60.72,63.24 -139,52.41,54.17,54.93,55.34,59.04,61.12,63.64 -140,52.76,54.53,55.30,55.69,59.42,61.52,64.05 -141,53.11,54.89,55.67,56.05,59.80,61.92,64.45 -142,53.46,55.25,56.05,56.40,60.18,62.32,64.85 -143,53.81,55.61,56.42,56.75,60.56,62.73,65.25 -144,54.16,55.97,56.79,57.10,60.94,63.13,65.65 -145,54.51,56.33,57.16,57.45,61.32,63.53,66.06 -146,54.86,56.69,57.53,57.80,61.71,63.93,66.46 -147,55.21,57.06,57.90,58.15,62.09,64.33,66.86 -148,55.56,57.42,58.27,58.50,62.47,64.74,67.26 -149,55.91,57.78,58.64,58.85,62.85,65.14,67.66 -150,56.26,58.14,59.01,59.20,63.23,65.54,68.07 diff --git a/dist/simple/products/GroundComm.csv b/dist/simple/products/GroundComm.csv deleted file mode 100644 index 4fe39dedb..000000000 --- a/dist/simple/products/GroundComm.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,2,3,4,5,6,7,8 -1,3.02,3.12,3.35,3.40,3.59,3.63,3.73 -2,3.08,3.28,3.61,3.71,4.00,4.09,4.35 -3,3.17,3.43,3.81,3.97,4.26,4.40,4.81 -4,3.29,3.58,4.02,4.23,4.52,4.66,5.12 -5,3.42,3.71,4.20,4.43,4.72,4.92,5.43 -6,3.57,3.84,4.35,4.64,4.93,5.18,5.69 -7,3.71,3.96,4.45,4.79,5.13,5.38,5.95 -8,3.85,4.08,4.56,4.90,5.29,5.64,6.36 -9,3.98,4.21,4.66,5.00,5.44,5.95,6.77 -10,4.11,4.32,4.76,5.16,5.65,6.36,7.24 -11,4.25,4.44,4.87,5.31,5.91,6.83,7.75 -12,4.38,4.58,4.97,5.46,6.17,7.29,8.32 -13,4.51,4.72,5.06,5.57,6.47,7.75,8.89 -14,4.62,4.87,5.16,5.67,6.84,8.22,9.45 -15,4.72,5.02,5.25,5.83,7.20,8.68,10.02 -16,4.81,5.19,5.40,6.03,7.57,9.14,10.59 -17,4.90,5.36,5.56,6.29,7.95,9.61,11.16 -18,4.99,5.55,5.76,6.60,8.33,10.07,11.72 -19,5.09,5.73,5.97,6.91,8.71,10.54,12.29 -20,5.21,5.92,6.18,7.22,9.09,10.95,12.86 -21,5.33,6.10,6.39,7.53,9.47,11.36,13.42 -22,5.46,6.29,6.61,7.84,9.86,11.77,13.99 -23,5.60,6.47,6.83,8.09,10.24,12.24,14.56 -24,5.73,6.65,7.04,8.35,10.62,12.70,15.12 -25,5.87,6.81,7.26,8.61,11.00,13.17,15.69 -26,6.00,6.97,7.47,8.87,11.38,13.58,16.21 -27,6.13,7.12,7.70,9.13,11.76,13.99,16.72 -28,6.27,7.28,7.93,9.40,12.15,14.40,17.29 -29,6.40,7.44,8.16,9.68,12.53,14.87,17.86 -30,6.54,7.62,8.37,9.96,12.91,15.33,18.42 -31,6.67,7.79,8.60,10.24,13.29,15.79,18.99 -32,6.80,7.97,8.83,10.53,13.67,16.26,19.56 -33,6.94,8.14,9.04,10.82,14.04,16.72,20.13 -34,7.06,8.32,9.27,11.10,14.41,17.19,20.68 -35,7.19,8.50,9.49,11.39,14.78,17.65,21.24 -36,7.31,8.67,9.70,11.67,15.15,18.11,21.79 -37,7.43,8.85,9.93,11.95,15.51,18.58,22.33 -38,7.56,9.02,10.16,12.23,15.86,19.04,22.87 -39,7.67,9.20,10.37,12.51,16.20,19.51,23.40 -40,7.78,9.37,10.59,12.78,16.53,19.97,23.93 -41,7.90,9.55,10.80,13.06,16.86,20.43,24.46 -42,8.01,9.72,11.02,13.34,17.19,20.90,24.97 -43,8.12,9.90,11.23,13.62,17.51,21.36,25.49 -44,8.23,10.07,11.43,13.90,17.82,21.83,26.00 -45,8.32,10.25,11.63,14.18,18.11,22.24,26.52 -46,8.40,10.41,11.83,14.45,18.40,22.65,27.03 -47,8.49,10.57,12.01,14.72,18.68,23.06,27.55 -48,8.57,10.71,12.20,14.98,18.95,23.48,28.01 -49,8.65,10.85,12.37,15.23,19.21,23.89,28.42 -50,8.73,10.97,12.55,15.47,19.45,24.25,28.79 -51,8.82,11.08,12.71,15.69,19.69,24.61,29.15 -52,8.90,11.19,12.88,15.90,19.93,24.92,29.51 -53,8.98,11.29,13.03,16.10,20.17,25.18,29.82 -54,9.06,11.39,13.19,16.31,20.40,25.38,30.07 -55,9.14,11.50,13.33,16.52,20.64,25.54,30.33 -56,9.23,11.60,13.48,16.72,20.88,25.69,30.54 -57,9.31,11.70,13.61,16.93,21.10,25.85,30.74 -58,9.39,11.80,13.74,17.08,21.32,26.00,30.95 -59,9.47,11.91,13.87,17.24,21.53,26.16,31.16 -60,9.56,12.00,13.99,17.39,21.72,26.31,31.36 -61,9.64,12.09,14.10,17.50,21.91,26.47,31.57 -62,9.72,12.19,14.22,17.60,22.08,26.62,31.78 -63,9.80,12.28,14.33,17.70,22.25,26.78,31.98 -64,9.89,12.37,14.43,17.81,22.40,26.93,32.19 -65,9.97,12.46,14.54,17.91,22.55,27.08,32.39 -66,10.05,12.56,14.63,18.02,22.68,27.24,32.60 -67,10.12,12.65,14.72,18.15,22.81,27.39,32.81 -68,10.20,12.74,14.82,18.28,22.92,27.55,33.01 -69,10.27,12.84,14.91,18.42,23.02,27.70,33.22 -70,10.33,12.93,15.00,18.58,23.13,27.86,33.43 -71,14.87,16.74,18.61,20.64,24.93,29.15,34.46 -72,18.78,20.56,22.22,23.22,26.73,30.69,35.49 -73,22.08,23.75,25.31,25.80,28.54,32.24,36.26 -74,24.35,26.13,27.63,28.37,30.34,33.53,37.03 -75,25.59,27.36,29.18,29.92,31.89,34.56,37.55 -76,26.83,28.39,29.95,30.95,33.18,35.33,38.06 -77,27.86,29.32,30.62,31.72,34.21,35.85,38.48 -78,28.79,30.20,31.24,32.50,34.98,36.31,38.89 -79,29.51,31.07,31.81,33.01,35.50,36.78,39.30 -80,30.13,31.95,32.32,33.43,35.91,37.19,39.71 -81,30.69,32.41,32.79,33.84,36.32,37.60,40.13 -82,31.21,32.87,33.24,34.25,36.73,38.01,40.54 -83,31.67,33.31,33.68,34.66,37.15,38.43,40.95 -84,32.08,33.74,34.12,35.07,37.56,38.84,41.36 -85,32.50,34.17,34.54,35.49,37.97,39.25,41.78 -86,32.91,34.58,34.95,35.90,38.38,39.66,42.19 -87,33.32,34.99,35.37,36.31,38.80,40.07,42.60 -88,33.73,35.40,35.80,36.72,39.21,40.49,43.01 -89,34.15,35.82,36.23,37.14,39.62,40.90,43.43 -90,34.56,36.23,36.65,37.55,40.03,41.31,43.84 -91,34.97,36.64,37.06,37.96,40.45,41.72,44.25 -92,35.38,37.05,37.47,38.37,40.86,42.14,44.66 -93,35.80,37.47,37.86,38.79,41.27,42.55,45.08 -94,36.21,37.88,38.23,39.20,41.68,42.96,45.49 -95,36.62,38.29,38.60,39.61,42.10,43.37,45.90 -96,37.02,38.65,38.97,40.02,42.51,43.79,46.31 -97,37.43,39.01,39.34,40.44,42.92,44.20,46.72 -98,37.83,39.37,39.71,40.85,43.33,44.61,47.14 -99,38.23,39.73,40.09,41.26,43.75,45.02,47.55 -100,38.63,40.10,40.46,41.67,44.16,45.44,47.96 -101,38.99,40.46,40.83,42.02,44.54,45.84,48.36 -102,39.35,40.82,41.20,42.37,44.92,46.24,48.77 -103,39.71,41.18,41.57,42.72,45.30,46.64,49.17 -104,40.07,41.54,41.94,43.08,45.68,47.04,49.57 -105,40.44,41.90,42.31,43.43,46.07,47.45,49.97 -106,40.80,42.26,42.68,43.78,46.45,47.85,50.37 -107,41.16,42.62,43.05,44.13,46.83,48.25,50.78 -108,41.52,42.98,43.43,44.48,47.21,48.65,51.18 -109,41.88,43.34,43.80,44.83,47.59,49.05,51.58 -110,42.24,43.70,44.17,45.18,47.97,49.46,51.98 -111,42.59,44.06,44.54,45.53,48.35,49.86,52.39 -112,42.94,44.43,44.91,45.88,48.74,50.26,52.79 -113,43.29,44.79,45.28,46.23,49.12,50.66,53.19 -114,43.64,45.15,45.65,46.58,49.50,51.07,53.59 -115,43.99,45.51,46.02,46.93,49.88,51.47,53.99 -116,44.34,45.87,46.40,47.28,50.26,51.87,54.40 -117,44.69,46.23,46.77,47.63,50.64,52.27,54.80 -118,45.04,46.59,47.14,47.98,51.02,52.67,55.20 -119,45.39,46.95,47.51,48.33,51.41,53.08,55.60 -120,45.75,47.31,47.88,48.68,51.79,53.48,56.00 -121,46.10,47.67,48.25,49.03,52.17,53.88,56.41 -122,46.45,48.03,48.62,49.38,52.55,54.28,56.81 -123,46.80,48.40,48.99,49.74,52.93,54.68,57.21 -124,47.15,48.76,49.36,50.09,53.31,55.09,57.61 -125,47.50,49.12,49.74,50.44,53.69,55.49,58.01 -126,47.85,49.48,50.11,50.79,54.08,55.89,58.42 -127,48.20,49.84,50.48,51.14,54.46,56.29,58.82 -128,48.55,50.20,50.85,51.49,54.84,56.69,59.22 -129,48.90,50.56,51.22,51.84,55.22,57.10,59.62 -130,49.25,50.92,51.59,52.19,55.60,57.50,60.02 -131,49.60,51.28,51.96,52.54,55.98,57.90,60.43 -132,49.95,51.64,52.33,52.89,56.36,58.30,60.83 -133,50.30,52.00,52.70,53.24,56.75,58.71,61.23 -134,50.65,52.36,53.08,53.59,57.13,59.11,61.63 -135,51.00,52.73,53.45,53.94,57.51,59.51,62.04 -136,51.35,53.09,53.82,54.29,57.89,59.91,62.44 -137,51.70,53.45,54.19,54.64,58.27,60.31,62.84 -138,52.06,53.81,54.56,54.99,58.65,60.72,63.24 -139,52.41,54.17,54.93,55.34,59.04,61.12,63.64 -140,52.76,54.53,55.30,55.69,59.42,61.52,64.05 -141,53.11,54.89,55.67,56.05,59.80,61.92,64.45 -142,53.46,55.25,56.05,56.40,60.18,62.32,64.85 -143,53.81,55.61,56.42,56.75,60.56,62.73,65.25 -144,54.16,55.97,56.79,57.10,60.94,63.13,65.65 -145,54.51,56.33,57.16,57.45,61.32,63.53,66.06 -146,54.86,56.69,57.53,57.80,61.71,63.93,66.46 -147,55.21,57.06,57.90,58.15,62.09,64.33,66.86 -148,55.56,57.42,58.27,58.50,62.47,64.74,67.26 -149,55.91,57.78,58.64,58.85,62.85,65.14,67.66 -150,56.26,58.14,59.01,59.20,63.23,65.54,68.07 diff --git a/dist/simple/products/GroundRes.csv b/dist/simple/products/GroundRes.csv deleted file mode 100644 index fc4b1bd57..000000000 --- a/dist/simple/products/GroundRes.csv +++ /dev/null @@ -1,151 +0,0 @@ -Exceed,2,3,4,5,6,7,8 -1,4.02,4.12,4.35,4.40,4.59,4.63,4.73 -2,4.08,4.28,4.61,4.71,5.00,5.09,5.35 -3,4.17,4.43,4.81,4.97,5.26,5.40,5.81 -4,4.29,4.58,5.02,5.23,5.52,5.66,6.12 -5,4.42,4.71,5.20,5.43,5.72,5.92,6.43 -6,4.57,4.84,5.35,5.64,5.93,6.18,6.69 -7,4.71,4.96,5.45,5.79,6.13,6.38,6.95 -8,4.85,5.08,5.56,5.90,6.29,6.64,7.36 -9,4.98,5.21,5.66,6.00,6.44,6.95,7.77 -10,5.11,5.32,5.76,6.16,6.65,7.36,8.24 -11,5.25,5.44,5.87,6.31,6.91,7.83,8.75 -12,5.38,5.58,5.97,6.46,7.17,8.29,9.32 -13,5.51,5.72,6.06,6.57,7.47,8.75,9.89 -14,5.62,5.87,6.16,6.67,7.84,9.22,10.45 -15,5.72,6.02,6.25,6.83,8.20,9.68,11.02 -16,5.81,6.19,6.40,7.03,8.57,10.14,11.59 -17,5.90,6.36,6.56,7.29,8.95,10.61,12.16 -18,5.99,6.55,6.76,7.60,9.33,11.07,12.72 -19,6.09,6.73,6.97,7.91,9.71,11.54,13.29 -20,6.21,6.92,7.18,8.22,10.09,11.95,13.86 -21,6.33,7.10,7.39,8.53,10.47,12.36,14.42 -22,6.46,7.29,7.61,8.84,10.86,12.77,14.99 -23,6.60,7.47,7.83,9.09,11.24,13.24,15.56 -24,6.73,7.65,8.04,9.35,11.62,13.70,16.12 -25,6.87,7.81,8.26,9.61,12.00,14.17,16.69 -26,7.00,7.97,8.47,9.87,12.38,14.58,17.21 -27,7.13,8.12,8.70,10.13,12.76,14.99,17.72 -28,7.27,8.28,8.93,10.40,13.15,15.40,18.29 -29,7.40,8.44,9.16,10.68,13.53,15.87,18.86 -30,7.54,8.62,9.37,10.96,13.91,16.33,19.42 -31,7.67,8.79,9.60,11.24,14.29,16.79,19.99 -32,7.80,8.97,9.83,11.53,14.67,17.26,20.56 -33,7.94,9.14,10.04,11.82,15.04,17.72,21.13 -34,8.06,9.32,10.27,12.10,15.41,18.19,21.68 -35,8.19,9.50,10.49,12.39,15.78,18.65,22.24 -36,8.31,9.67,10.70,12.67,16.15,19.11,22.79 -37,8.43,9.85,10.93,12.95,16.51,19.58,23.33 -38,8.56,10.02,11.16,13.23,16.86,20.04,23.87 -39,8.67,10.20,11.37,13.51,17.20,20.51,24.40 -40,8.78,10.37,11.59,13.78,17.53,20.97,24.93 -41,8.90,10.55,11.80,14.06,17.86,21.43,25.46 -42,9.01,10.72,12.02,14.34,18.19,21.90,25.97 -43,9.12,10.90,12.23,14.62,18.51,22.36,26.49 -44,9.23,11.07,12.43,14.90,18.82,22.83,27.00 -45,9.32,11.25,12.63,15.18,19.11,23.24,27.52 -46,9.40,11.41,12.83,15.45,19.40,23.65,28.03 -47,9.49,11.57,13.01,15.72,19.68,24.06,28.55 -48,9.57,11.71,13.20,15.98,19.95,24.48,29.01 -49,9.65,11.85,13.37,16.23,20.21,24.89,29.42 -50,9.73,11.97,13.55,16.47,20.45,25.25,29.79 -51,9.82,12.08,13.71,16.69,20.69,25.61,30.15 -52,9.90,12.19,13.88,16.90,20.93,25.92,30.51 -53,9.98,12.29,14.03,17.10,21.17,26.18,30.82 -54,10.06,12.39,14.19,17.31,21.40,26.38,31.07 -55,10.14,12.50,14.33,17.52,21.64,26.54,31.33 -56,10.23,12.60,14.48,17.72,21.88,26.69,31.54 -57,10.31,12.70,14.61,17.93,22.10,26.85,31.74 -58,10.39,12.80,14.74,18.08,22.32,27.00,31.95 -59,10.47,12.91,14.87,18.24,22.53,27.16,32.16 -60,10.56,13.00,14.99,18.39,22.72,27.31,32.36 -61,10.64,13.09,15.10,18.50,22.91,27.47,32.57 -62,10.72,13.19,15.22,18.60,23.08,27.62,32.78 -63,10.80,13.28,15.33,18.70,23.25,27.78,32.98 -64,10.89,13.37,15.43,18.81,23.40,27.93,33.19 -65,10.97,13.46,15.54,18.91,23.55,28.08,33.39 -66,11.05,13.56,15.63,19.02,23.68,28.24,33.60 -67,11.12,13.65,15.72,19.15,23.81,28.39,33.81 -68,11.20,13.74,15.82,19.28,23.92,28.55,34.01 -69,11.27,13.84,15.91,19.42,24.02,28.70,34.22 -70,11.33,13.93,16.00,19.58,24.13,28.86,34.43 -71,15.87,17.74,19.61,21.64,25.93,30.15,35.46 -72,19.78,21.56,23.22,24.22,27.73,31.69,36.49 -73,23.08,24.75,26.31,26.80,29.54,33.24,37.26 -74,25.35,27.13,28.63,29.37,31.34,34.53,38.03 -75,26.59,28.36,30.18,30.92,32.89,35.56,38.55 -76,27.83,29.39,30.95,31.95,34.18,36.33,39.06 -77,28.86,30.32,31.62,32.72,35.21,36.85,39.48 -78,29.79,31.20,32.24,33.50,35.98,37.31,39.89 -79,30.51,32.07,32.81,34.01,36.50,37.78,40.30 -80,31.13,32.95,33.32,34.43,36.91,38.19,40.71 -81,31.69,33.41,33.79,34.84,37.32,38.60,41.13 -82,32.21,33.87,34.24,35.25,37.73,39.01,41.54 -83,32.67,34.31,34.68,35.66,38.15,39.43,41.95 -84,33.08,34.74,35.12,36.07,38.56,39.84,42.36 -85,33.50,35.17,35.54,36.49,38.97,40.25,42.78 -86,33.91,35.58,35.95,36.90,39.38,40.66,43.19 -87,34.32,35.99,36.37,37.31,39.80,41.07,43.60 -88,34.73,36.40,36.80,37.72,40.21,41.49,44.01 -89,35.15,36.82,37.23,38.14,40.62,41.90,44.43 -90,35.56,37.23,37.65,38.55,41.03,42.31,44.84 -91,35.97,37.64,38.06,38.96,41.45,42.72,45.25 -92,36.38,38.05,38.47,39.37,41.86,43.14,45.66 -93,36.80,38.47,38.86,39.79,42.27,43.55,46.08 -94,37.21,38.88,39.23,40.20,42.68,43.96,46.49 -95,37.62,39.29,39.60,40.61,43.10,44.37,46.90 -96,38.02,39.65,39.97,41.02,43.51,44.79,47.31 -97,38.43,40.01,40.34,41.44,43.92,45.20,47.72 -98,38.83,40.37,40.71,41.85,44.33,45.61,48.14 -99,39.23,40.73,41.09,42.26,44.75,46.02,48.55 -100,39.63,41.10,41.46,42.67,45.16,46.44,48.96 -101,39.99,41.46,41.83,43.02,45.54,46.84,49.36 -102,40.35,41.82,42.20,43.37,45.92,47.24,49.77 -103,40.71,42.18,42.57,43.72,46.30,47.64,50.17 -104,41.07,42.54,42.94,44.08,46.68,48.04,50.57 -105,41.44,42.90,43.31,44.43,47.07,48.45,50.97 -106,41.80,43.26,43.68,44.78,47.45,48.85,51.37 -107,42.16,43.62,44.05,45.13,47.83,49.25,51.78 -108,42.52,43.98,44.43,45.48,48.21,49.65,52.18 -109,42.88,44.34,44.80,45.83,48.59,50.05,52.58 -110,43.24,44.70,45.17,46.18,48.97,50.46,52.98 -111,43.59,45.06,45.54,46.53,49.35,50.86,53.39 -112,43.94,45.43,45.91,46.88,49.74,51.26,53.79 -113,44.29,45.79,46.28,47.23,50.12,51.66,54.19 -114,44.64,46.15,46.65,47.58,50.50,52.07,54.59 -115,44.99,46.51,47.02,47.93,50.88,52.47,54.99 -116,45.34,46.87,47.40,48.28,51.26,52.87,55.40 -117,45.69,47.23,47.77,48.63,51.64,53.27,55.80 -118,46.04,47.59,48.14,48.98,52.02,53.67,56.20 -119,46.39,47.95,48.51,49.33,52.41,54.08,56.60 -120,46.75,48.31,48.88,49.68,52.79,54.48,57.00 -121,47.10,48.67,49.25,50.03,53.17,54.88,57.41 -122,47.45,49.03,49.62,50.38,53.55,55.28,57.81 -123,47.80,49.40,49.99,50.74,53.93,55.68,58.21 -124,48.15,49.76,50.36,51.09,54.31,56.09,58.61 -125,48.50,50.12,50.74,51.44,54.69,56.49,59.01 -126,48.85,50.48,51.11,51.79,55.08,56.89,59.42 -127,49.20,50.84,51.48,52.14,55.46,57.29,59.82 -128,49.55,51.20,51.85,52.49,55.84,57.69,60.22 -129,49.90,51.56,52.22,52.84,56.22,58.10,60.62 -130,50.25,51.92,52.59,53.19,56.60,58.50,61.02 -131,50.60,52.28,52.96,53.54,56.98,58.90,61.43 -132,50.95,52.64,53.33,53.89,57.36,59.30,61.83 -133,51.30,53.00,53.70,54.24,57.75,59.71,62.23 -134,51.65,53.36,54.08,54.59,58.13,60.11,62.63 -135,52.00,53.73,54.45,54.94,58.51,60.51,63.04 -136,52.35,54.09,54.82,55.29,58.89,60.91,63.44 -137,52.70,54.45,55.19,55.64,59.27,61.31,63.84 -138,53.06,54.81,55.56,55.99,59.65,61.72,64.24 -139,53.41,55.17,55.93,56.34,60.04,62.12,64.64 -140,53.76,55.53,56.30,56.69,60.42,62.52,65.05 -141,54.11,55.89,56.67,57.05,60.80,62.92,65.45 -142,54.46,56.25,57.05,57.40,61.18,63.32,65.85 -143,54.81,56.61,57.42,57.75,61.56,63.73,66.25 -144,55.16,56.97,57.79,58.10,61.94,64.13,66.65 -145,55.51,57.33,58.16,58.45,62.32,64.53,67.06 -146,55.86,57.69,58.53,58.80,62.71,64.93,67.46 -147,56.21,58.06,58.90,59.15,63.09,65.33,67.86 -148,56.56,58.42,59.27,59.50,63.47,65.74,68.26 -149,56.91,58.78,59.64,59.85,63.85,66.14,68.66 -150,57.26,59.14,60.01,60.20,64.23,66.54,69.07 diff --git a/dist/simple/products/NextDayAir.csv b/dist/simple/products/NextDayAir.csv deleted file mode 100644 index 1d18c90e9..000000000 --- a/dist/simple/products/NextDayAir.csv +++ /dev/null @@ -1,152 +0,0 @@ -Exceed,102,103,104,105,106,107,108,124,125,126 -Letter,12.00,13.00,13.75,14.00,14.25,14.50,15.00,15.25,15.25,21.25 -1,14.25,16.00,19.00,20.25,21.50,22.25,22.75,24.25,24.25,35.25 -2,15.25,17.00,21.25,22.50,23.75,24.75,25.25,26.75,26.75,37.75 -3,16.25,18.00,23.50,25.00,26.25,27.25,28.00,29.50,29.50,40.50 -4,17.25,19.25,25.50,27.25,28.75,29.75,30.50,32.00,32.00,43.00 -5,18.25,20.25,27.75,29.75,31.25,32.25,33.00,34.50,34.50,45.50 -6,19.00,21.50,30.00,32.00,33.75,34.75,35.50,36.75,36.75,47.75 -7,19.75,22.50,32.00,34.25,36.25,37.25,38.00,39.00,39.00,50.00 -8,20.50,23.50,34.00,36.50,38.75,39.75,40.50,41.25,41.25,52.25 -9,21.25,24.50,36.25,38.75,41.00,42.25,43.00,43.75,43.75,54.75 -10,22.00,25.50,38.50,41.00,43.50,44.75,45.25,46.00,46.00,57.00 -11,22.75,26.75,40.50,43.25,45.75,47.25,47.75,48.25,48.25,59.25 -12,23.75,27.75,42.50,45.25,48.00,49.50,50.25,50.75,50.75,61.75 -13,24.50,29.00,44.50,47.50,50.25,51.75,52.75,53.25,53.25,64.25 -14,25.25,30.00,46.50,49.50,52.25,53.75,55.00,55.50,55.50,66.50 -15,26.00,31.00,48.25,51.25,54.25,55.75,57.25,57.50,57.50,68.50 -16,26.75,32.00,49.75,53.00,56.00,57.50,59.25,59.50,59.50,70.50 -17,27.50,33.00,51.25,54.75,57.50,59.25,61.00,61.25,61.25,72.25 -18,28.25,33.75,52.75,56.25,59.00,60.75,62.75,63.00,63.00,74.00 -19,29.00,34.50,54.25,57.75,60.50,62.25,64.50,64.75,64.75,75.75 -20,29.75,35.25,55.75,59.25,62.00,63.75,66.25,66.50,66.50,77.50 -21,30.50,36.00,57.25,60.75,63.50,65.50,68.00,68.25,68.25,79.25 -22,31.25,36.75,58.75,62.25,65.00,67.00,69.50,69.75,69.75,80.75 -23,32.00,37.50,60.25,63.75,66.50,68.50,71.00,71.25,71.25,82.25 -24,32.75,38.50,61.75,65.25,68.00,69.75,72.50,72.75,72.75,83.75 -25,33.50,39.50,63.25,67.00,69.75,71.25,73.75,74.00,74.00,85.00 -26,34.50,40.25,64.75,68.75,71.50,72.75,75.25,75.50,75.50,86.50 -27,35.25,41.00,66.50,70.50,73.00,74.25,76.75,77.00,77.00,88.00 -28,36.00,41.75,68.25,72.25,74.75,75.75,78.50,78.75,78.75,89.75 -29,36.75,42.50,69.75,73.75,76.25,77.25,80.25,80.50,80.50,91.50 -30,37.50,43.25,71.25,75.50,77.75,79.00,82.00,82.25,82.25,93.25 -31,38.50,44.25,73.00,77.25,79.25,80.75,83.75,84.00,84.00,95.00 -32,39.25,45.25,74.75,79.00,81.00,82.75,85.75,86.00,86.00,97.00 -33,40.25,46.25,76.50,80.75,82.75,84.50,87.50,87.75,87.75,98.75 -34,41.00,47.25,78.00,82.50,84.50,86.25,89.50,89.75,89.75,100.75 -35,41.75,48.25,79.75,84.50,86.50,88.25,91.50,91.75,91.75,102.75 -36,42.50,49.00,81.25,86.25,88.25,90.00,93.25,93.50,93.50,104.50 -37,43.25,49.75,82.75,88.00,90.00,92.00,95.25,95.50,95.50,106.50 -38,44.00,50.50,84.25,89.75,91.75,93.75,97.25,97.50,97.50,108.50 -39,44.75,51.50,85.75,91.50,93.50,95.75,99.25,99.50,99.50,110.50 -40,45.50,52.50,87.50,93.25,95.25,97.75,101.25,101.50,101.50,112.50 -41,46.25,53.25,89.25,95.00,97.25,99.75,103.25,103.50,103.50,114.50 -42,47.00,54.25,91.00,96.75,99.00,101.75,105.25,105.50,105.50,116.50 -43,47.75,55.25,92.50,98.50,101.00,103.75,107.25,107.50,107.50,118.50 -44,48.75,56.25,94.25,100.00,102.75,105.50,109.00,109.25,109.25,120.25 -45,49.75,57.25,96.00,101.75,104.50,107.25,110.75,111.00,111.00,122.00 -46,50.75,58.25,97.50,103.25,106.50,109.00,112.75,113.00,113.00,124.00 -47,51.50,59.25,99.00,104.75,108.25,110.75,114.75,115.00,115.00,126.00 -48,52.25,60.25,100.75,106.25,110.00,112.50,116.50,116.75,116.75,127.75 -49,53.00,61.50,102.50,108.00,111.75,114.25,118.25,118.50,118.50,129.50 -50,54.00,62.75,104.00,109.50,113.75,116.25,120.25,120.50,120.50,131.50 -51,55.00,64.00,105.50,111.00,115.75,118.25,122.25,122.50,122.50,133.50 -52,56.00,65.50,107.25,112.50,117.50,120.25,124.50,124.75,124.75,135.75 -53,57.00,66.75,108.75,114.00,119.50,122.25,126.50,126.75,126.75,137.75 -54,58.00,68.00,110.50,115.75,121.50,124.50,128.75,129.00,129.00,140.00 -55,59.00,69.50,112.00,117.50,123.50,126.75,131.00,131.25,131.25,142.25 -56,60.00,70.75,113.50,119.25,125.50,128.75,133.25,133.50,133.50,144.50 -57,61.00,72.25,115.25,121.00,127.25,131.00,135.50,135.75,135.75,146.75 -58,62.25,73.50,117.00,123.00,129.25,133.00,137.75,138.00,138.00,149.00 -59,63.25,75.00,119.00,124.75,131.25,135.25,140.25,140.50,140.50,151.50 -60,64.50,76.50,121.00,126.75,133.25,137.50,143.00,143.25,143.25,154.25 -61,65.75,78.00,122.75,129.00,135.50,140.00,145.50,145.75,145.75,156.75 -62,67.00,79.50,124.50,131.00,137.50,142.25,148.00,148.25,148.25,159.25 -63,68.25,81.00,126.25,133.00,139.75,144.75,150.75,151.00,151.00,162.00 -64,69.50,82.75,128.00,135.25,142.00,147.00,153.25,153.50,153.50,164.50 -65,70.75,84.50,130.00,137.75,144.50,149.50,156.00,156.25,156.25,167.25 -66,72.00,86.00,132.00,140.00,146.75,151.75,158.50,158.75,158.75,169.75 -67,73.25,87.50,134.00,142.25,149.25,154.25,161.00,161.25,161.25,172.25 -68,74.50,89.25,136.00,144.50,151.50,157.00,163.75,164.00,164.00,175.00 -69,76.00,91.00,138.00,146.50,153.75,159.50,166.25,166.50,166.50,177.50 -70,77.50,92.50,140.00,148.75,156.00,162.25,169.00,169.25,169.25,180.25 -71,78.75,94.00,142.25,151.00,158.25,164.75,171.50,171.75,171.75,182.75 -72,80.00,95.50,144.25,153.50,160.75,167.50,174.25,174.50,174.50,185.50 -73,81.25,97.00,146.50,155.75,163.00,170.25,177.00,177.25,177.25,188.25 -74,82.75,98.75,148.75,158.00,165.50,173.00,179.75,180.00,180.00,191.00 -75,84.00,100.50,151.25,160.25,168.00,175.75,182.50,182.75,182.75,193.75 -76,85.50,102.25,153.50,162.50,170.25,178.25,185.00,185.25,185.25,196.25 -77,87.00,104.00,155.75,164.75,172.50,180.50,187.50,187.75,187.75,198.75 -78,88.50,106.00,158.00,167.00,175.00,183.00,190.00,190.25,190.25,201.25 -79,90.00,107.75,160.50,169.25,177.50,185.50,192.50,192.75,192.75,203.75 -80,91.25,109.50,163.00,171.50,180.00,188.00,195.25,195.50,195.50,206.50 -81,92.75,111.25,165.50,173.75,182.50,190.50,197.75,198.00,198.00,209.00 -82,94.25,113.00,168.00,176.00,184.75,193.00,200.25,200.50,200.50,211.50 -83,95.75,114.75,170.25,178.25,187.25,195.50,202.75,203.00,203.00,214.00 -84,97.00,116.50,172.50,180.50,189.50,197.75,205.25,205.50,205.50,216.50 -85,98.25,118.50,174.75,182.75,192.00,200.25,207.75,208.00,208.00,219.00 -86,99.50,120.50,177.25,185.00,194.25,202.50,210.25,210.50,210.50,221.50 -87,100.75,122.50,179.50,187.25,196.50,205.00,212.75,213.00,213.00,224.00 -88,102.00,124.25,181.75,189.50,199.00,207.50,215.25,215.50,215.50,226.50 -89,103.25,126.00,184.00,191.75,201.25,210.00,218.00,218.25,218.25,229.25 -90,104.50,127.75,186.00,194.00,203.75,212.50,220.50,220.75,220.75,231.75 -91,105.75,129.50,188.00,196.25,206.00,214.75,223.00,223.25,223.25,234.25 -92,107.25,131.25,190.25,198.50,208.50,217.25,225.50,225.75,225.75,236.75 -93,108.50,133.00,192.25,200.50,211.00,219.75,228.00,228.25,228.25,239.25 -94,109.75,134.50,194.50,202.75,213.25,222.25,230.75,231.00,231.00,242.00 -95,111.00,136.00,196.50,204.75,215.75,224.75,233.25,233.50,233.50,244.50 -96,112.25,137.75,198.50,206.75,218.00,227.00,235.75,236.00,236.00,247.00 -97,113.50,139.25,200.50,208.75,220.00,229.25,238.25,238.50,238.50,249.50 -98,114.75,140.75,202.50,210.75,222.00,231.50,240.75,241.00,241.00,252.00 -99,116.00,142.25,204.25,213.00,224.25,233.75,243.00,243.25,243.25,254.25 -100,117.25,143.75,206.00,215.00,226.25,235.75,245.25,245.50,245.50,256.50 -101,118.50,145.25,207.75,217.00,228.50,238.00,247.50,247.75,247.75,258.75 -102,119.75,146.75,209.75,219.00,230.75,240.25,249.75,250.00,250.00,261.00 -103,121.00,148.25,211.75,221.00,233.00,242.75,252.25,252.50,252.50,263.50 -104,122.25,149.75,213.75,223.25,235.25,245.00,254.75,255.00,255.00,266.00 -105,123.50,151.25,215.75,225.50,237.25,247.25,257.25,257.50,257.50,268.50 -106,124.75,152.75,218.00,227.50,239.50,249.50,259.75,260.00,260.00,271.00 -107,126.00,154.25,220.00,229.50,242.00,252.00,262.25,262.50,262.50,273.50 -108,127.25,155.75,222.00,231.50,244.25,254.50,264.75,265.00,265.00,276.00 -109,128.50,157.25,224.00,233.75,246.50,256.75,267.00,267.25,267.25,278.25 -110,129.75,158.75,226.25,236.00,248.75,259.00,269.25,269.50,269.50,280.50 -111,131.00,160.25,228.25,238.25,251.00,261.25,271.50,271.75,271.75,282.75 -112,132.25,161.75,230.25,240.50,253.25,263.75,274.00,274.25,274.25,285.25 -113,133.50,163.25,232.25,242.50,255.50,266.25,276.50,276.75,276.75,287.75 -114,134.75,164.75,234.25,244.50,258.00,268.75,279.00,279.25,279.25,290.25 -115,136.00,166.25,236.25,246.50,260.25,271.00,281.25,281.50,281.50,292.50 -116,137.25,167.75,238.25,248.50,262.50,273.50,283.75,284.00,284.00,295.00 -117,138.50,169.25,240.50,250.75,264.75,275.75,286.00,286.25,286.25,297.25 -118,139.75,170.75,242.50,252.75,267.00,278.00,288.50,288.75,288.75,299.75 -119,141.00,172.25,244.50,255.00,269.25,280.25,290.75,291.00,291.00,302.00 -120,142.25,173.75,246.50,257.00,271.50,282.75,293.25,293.50,293.50,304.50 -121,143.25,175.25,248.50,259.00,273.75,285.00,295.75,296.00,296.00,307.00 -122,144.25,176.75,250.75,261.25,276.25,287.50,298.25,298.50,298.50,309.50 -123,145.50,178.25,252.75,263.50,278.50,289.75,300.75,301.00,301.00,312.00 -124,146.75,179.75,254.75,265.50,280.75,292.00,303.25,303.50,303.50,314.50 -125,148.00,181.25,256.75,267.50,282.75,294.50,305.75,306.00,306.00,317.00 -126,149.25,182.75,258.75,269.50,285.00,296.75,308.25,308.50,308.50,319.50 -127,150.25,184.25,260.75,271.75,287.25,299.00,310.50,310.75,310.75,321.75 -128,151.25,185.75,263.00,274.00,289.50,301.50,313.00,313.25,313.25,324.25 -129,152.25,187.25,265.00,276.25,291.75,304.00,315.50,315.75,315.75,326.75 -130,153.50,188.75,267.00,278.50,294.00,306.25,318.25,318.50,318.50,329.50 -131,154.75,190.25,269.00,280.50,296.25,308.50,320.75,321.00,321.00,332.00 -132,156.00,191.75,271.00,282.75,298.50,310.75,323.25,323.50,323.50,334.50 -133,157.00,193.25,273.25,285.00,300.75,313.00,325.75,326.00,326.00,337.00 -134,158.00,194.75,275.25,287.00,303.00,315.50,328.25,328.50,328.50,339.50 -135,159.00,196.25,277.25,289.00,305.25,317.75,330.75,331.00,331.00,342.00 -136,160.00,197.50,279.25,291.00,307.50,320.00,333.00,333.25,333.25,344.25 -137,161.00,198.75,281.25,293.25,309.75,322.50,335.50,335.75,335.75,346.75 -138,161.75,200.00,283.25,295.25,312.00,325.00,338.00,338.25,338.25,349.25 -139,162.50,201.25,285.25,297.25,314.50,327.50,340.50,340.75,340.75,351.75 -140,163.25,202.50,287.25,299.50,316.75,329.75,342.75,343.00,343.00,354.00 -141,164.00,203.75,289.25,301.75,319.00,332.25,345.25,345.50,345.50,356.50 -142,164.50,204.75,291.25,304.00,321.25,334.50,347.75,348.00,348.00,359.00 -143,165.25,206.00,293.25,306.25,323.50,336.75,350.00,350.25,350.25,361.25 -144,166.00,207.00,295.00,308.50,326.00,339.25,352.50,352.75,352.75,363.75 -145,166.75,208.00,296.50,310.75,328.25,341.50,355.00,355.25,355.25,366.25 -146,167.50,208.75,298.00,313.00,330.75,344.00,357.50,357.75,357.75,368.75 -147,168.25,209.50,299.50,315.00,333.00,346.25,360.00,360.25,360.25,371.25 -148,168.75,210.25,300.75,317.00,335.25,348.50,362.25,362.50,362.50,373.50 -149,169.25,211.00,302.00,319.00,337.50,350.75,364.50,364.75,364.75,375.75 -150,170.00,211.75,303.25,321.00,339.50,353.00,366.75,367.00,367.00,378.00 diff --git a/dist/simple/products/NextDayAirSaver.csv b/dist/simple/products/NextDayAirSaver.csv deleted file mode 100644 index b53df2be7..000000000 --- a/dist/simple/products/NextDayAirSaver.csv +++ /dev/null @@ -1,152 +0,0 @@ -Exceed,132,133,134,135,136,137,138 -Letter,10.50,11.00,12.00,12.25,12.50,12.75,13.00 -1,12.25,13.75,16.75,18.00,18.50,19.25,20.25 -2,13.25,14.75,18.50,19.75,20.50,21.50,22.50 -3,14.00,15.75,20.25,21.75,22.75,23.75,24.75 -4,14.75,16.50,22.25,23.50,24.75,26.00,26.75 -5,15.50,17.50,24.00,25.50,27.00,28.25,29.00 -6,16.25,18.25,26.00,27.75,29.50,30.50,31.25 -7,17.00,19.25,28.00,30.00,31.75,32.75,33.25 -8,17.75,20.00,30.00,32.00,34.00,35.00,35.50 -9,18.25,21.00,32.00,34.00,36.00,37.00,37.50 -10,19.00,22.00,33.75,36.00,38.25,39.25,39.75 -11,19.50,23.00,35.50,37.75,40.25,41.25,41.75 -12,20.25,24.00,37.25,39.75,42.25,43.25,43.75 -13,21.00,24.75,39.00,41.50,44.00,45.00,46.00 -14,21.75,25.75,40.50,43.25,45.75,46.75,48.25 -15,22.50,26.50,42.00,44.75,47.25,48.50,50.25 -16,23.00,27.25,43.25,46.25,48.75,50.00,52.00 -17,23.50,28.25,44.50,47.75,50.25,51.50,53.50 -18,24.25,29.00,45.75,49.00,51.50,52.75,54.75 -19,25.00,29.75,47.25,50.50,53.00,54.25,56.25 -20,25.50,30.25,48.75,52.00,54.25,55.50,57.75 -21,26.25,31.00,50.00,53.25,55.50,57.00,59.25 -22,27.00,31.75,51.25,54.50,56.75,58.25,60.50 -23,27.50,32.50,52.50,55.75,58.00,59.50,61.75 -24,28.25,33.25,54.00,57.25,59.50,61.00,63.25 -25,29.00,34.00,55.25,58.75,61.00,62.50,64.75 -26,29.75,34.75,56.50,60.25,62.50,64.00,66.50 -27,30.25,35.25,58.00,61.75,64.00,65.50,68.00 -28,31.00,36.00,59.50,63.25,65.50,67.00,69.50 -29,31.75,36.75,61.00,64.75,67.00,68.50,71.00 -30,32.25,37.25,62.25,66.00,68.25,69.75,72.25 -31,33.00,38.00,63.75,67.50,69.75,71.25,73.75 -32,33.75,38.75,65.25,69.00,71.25,72.75,75.25 -33,34.50,39.75,66.75,70.50,72.75,74.25,76.75 -34,35.00,40.50,68.25,72.00,74.25,75.75,78.25 -35,35.75,41.25,69.75,73.50,75.75,77.25,79.75 -36,36.50,42.00,71.00,75.00,77.25,78.75,81.50 -37,37.25,42.75,72.50,76.50,78.75,80.25,83.25 -38,38.00,43.50,73.75,78.00,80.50,82.00,85.00 -39,38.50,44.25,75.00,79.75,82.25,83.75,86.75 -40,39.25,45.00,76.50,81.25,84.00,85.50,88.50 -41,39.75,45.75,78.00,82.75,85.50,87.00,90.25 -42,40.50,46.50,79.75,84.50,87.25,88.75,92.00 -43,41.25,47.50,81.25,86.25,89.00,90.50,93.75 -44,42.00,48.50,82.75,87.75,90.50,92.25,95.50 -45,42.75,49.25,84.00,89.00,92.00,93.75,97.00 -46,43.50,50.25,85.50,90.50,93.50,95.25,98.75 -47,44.25,51.25,86.75,91.75,95.00,96.75,100.25 -48,45.00,52.25,88.25,93.25,96.50,98.25,102.00 -49,45.75,53.25,89.75,94.75,98.00,99.75,103.75 -50,46.50,54.25,91.00,96.00,99.50,101.50,105.50 -51,47.25,55.25,92.50,97.50,101.00,103.25,107.25 -52,48.25,56.25,94.00,99.00,102.75,105.00,109.00 -53,49.00,57.25,95.25,100.25,104.50,106.75,110.75 -54,50.00,58.25,96.50,101.50,106.25,108.50,112.75 -55,50.75,59.50,98.00,103.00,108.00,110.50,114.75 -56,51.75,60.75,99.25,104.50,109.50,112.50,116.75 -57,52.50,62.00,100.75,106.00,111.25,114.25,118.50 -58,53.50,63.25,102.25,107.50,113.00,116.25,120.50 -59,54.50,64.75,104.00,109.25,114.75,118.25,122.50 -60,55.50,66.00,105.50,111.00,116.50,120.25,124.75 -61,56.50,67.25,107.00,113.00,118.50,122.50,127.00 -62,57.75,68.50,108.75,114.75,120.25,124.50,129.50 -63,58.75,69.75,110.75,116.75,122.25,126.75,132.00 -64,60.00,71.25,112.50,118.50,124.00,128.75,134.25 -65,61.00,72.75,114.00,120.50,126.00,131.00,136.50 -66,62.00,74.00,115.50,122.50,128.00,133.00,138.75 -67,63.00,75.25,117.25,124.25,130.25,135.25,141.00 -68,64.25,76.75,119.00,126.25,132.25,137.25,143.25 -69,65.50,78.25,120.75,128.00,134.25,139.25,145.50 -70,66.75,79.50,122.50,130.00,136.50,141.50,147.75 -71,67.75,80.75,124.25,131.75,138.50,144.00,150.25 -72,69.00,82.25,126.00,133.75,140.50,146.25,152.50 -73,70.00,83.75,128.00,135.75,142.50,148.50,154.75 -74,71.25,85.25,130.00,137.75,144.75,151.00,157.25 -75,72.50,86.75,132.25,140.00,147.00,153.25,159.50 -76,73.75,88.00,134.25,142.00,149.00,155.50,161.75 -77,75.00,89.50,136.25,144.00,151.00,157.75,164.25 -78,76.25,91.25,138.25,146.00,153.00,160.00,166.50 -79,77.25,92.75,140.25,148.00,155.00,162.00,168.75 -80,78.50,94.25,142.50,150.25,157.25,164.25,171.00 -81,79.75,95.75,144.75,152.50,159.50,166.75,173.50 -82,81.00,97.25,147.00,154.75,161.75,169.00,175.75 -83,82.25,98.75,149.00,156.75,163.75,171.00,177.75 -84,83.25,100.25,151.00,158.75,166.00,173.25,180.00 -85,84.50,102.00,153.00,160.75,168.00,175.25,182.00 -86,85.50,103.75,155.25,163.00,170.25,177.50,184.25 -87,86.50,105.25,157.25,165.00,172.25,179.50,186.25 -88,87.50,106.75,159.25,167.00,174.25,181.50,188.50 -89,88.75,108.25,161.00,168.75,176.25,183.50,190.75 -90,89.75,109.75,163.00,170.75,178.50,185.75,193.00 -91,90.75,111.25,164.75,172.50,180.50,188.00,195.25 -92,92.00,112.75,166.50,174.25,182.50,190.00,197.25 -93,93.25,114.25,168.25,176.00,184.50,192.00,199.50 -94,94.25,115.50,170.00,177.75,186.50,194.25,201.75 -95,95.50,116.75,171.75,179.50,188.50,196.50,204.00 -96,96.50,118.25,173.50,181.25,190.25,198.50,206.00 -97,97.50,119.50,175.25,183.00,192.25,200.50,208.25 -98,98.50,121.00,177.00,184.75,194.00,202.25,210.25 -99,99.75,122.25,178.75,186.50,196.00,204.25,212.25 -100,100.75,123.50,180.25,188.25,198.00,206.25,214.50 -101,101.75,125.00,181.75,189.75,200.00,208.25,216.50 -102,103.00,126.25,183.50,191.50,201.75,210.25,218.50 -103,104.00,127.50,185.25,193.25,203.75,212.25,220.75 -104,105.00,128.75,187.00,195.00,205.50,214.25,223.00 -105,106.25,130.00,188.75,197.00,207.50,216.25,225.00 -106,107.25,131.50,190.50,198.75,209.50,218.25,227.00 -107,108.25,132.75,192.25,200.50,211.75,220.50,229.25 -108,109.25,134.00,194.00,202.25,213.75,222.75,231.50 -109,110.50,135.25,195.75,204.25,215.75,224.75,233.50 -110,111.50,136.50,197.75,206.25,217.75,226.75,235.50 -111,112.50,137.75,199.50,208.25,220.00,229.00,237.75 -112,113.75,139.25,201.25,210.25,222.00,231.00,239.75 -113,114.75,140.50,203.00,212.00,223.75,233.00,242.00 -114,115.75,141.75,204.75,213.75,225.50,235.00,244.25 -115,117.00,143.25,206.50,215.50,227.50,237.00,246.25 -116,118.25,144.50,208.25,217.50,229.50,239.00,248.25 -117,119.25,145.75,210.25,219.50,231.50,241.00,250.25 -118,120.25,147.00,212.00,221.25,233.50,243.00,252.50 -119,121.25,148.25,213.75,223.00,235.50,245.00,254.50 -120,122.25,149.50,215.75,225.00,237.50,247.25,256.75 -121,123.25,150.75,217.50,226.75,239.50,249.25,258.75 -122,124.25,151.75,219.50,228.75,241.75,251.50,261.00 -123,125.25,153.00,221.25,230.50,243.75,253.50,263.25 -124,126.25,154.25,223.00,232.25,245.75,255.50,265.50 -125,127.25,155.50,224.75,234.00,247.50,257.50,267.50 -126,128.25,156.75,226.50,235.75,249.50,259.50,269.75 -127,129.25,158.00,228.25,237.50,251.50,261.50,271.75 -128,130.00,159.50,230.00,239.50,253.50,263.75,274.00 -129,131.00,161.00,231.75,241.75,255.75,266.00,276.25 -130,132.00,162.50,233.50,243.75,257.75,268.00,278.25 -131,133.00,163.75,235.25,245.50,259.50,270.00,280.50 -132,134.00,165.00,237.00,247.25,261.25,272.00,282.75 -133,135.00,166.50,239.00,249.25,263.25,274.00,285.00 -134,136.00,167.75,240.75,251.00,265.25,276.00,287.00 -135,136.75,169.00,242.50,252.75,267.25,278.00,289.00 -136,137.50,170.00,244.25,254.50,269.25,280.25,291.25 -137,138.25,171.00,246.00,256.25,271.25,282.25,293.50 -138,139.00,171.75,247.75,258.00,273.25,284.50,295.75 -139,139.75,172.75,249.50,260.00,275.25,286.50,297.75 -140,140.50,174.00,251.25,262.00,277.25,288.75,300.00 -141,141.25,175.25,253.00,264.00,279.25,290.75,302.25 -142,141.75,176.25,254.75,265.75,281.25,292.75,304.25 -143,142.25,177.00,256.50,267.75,283.25,294.75,306.50 -144,142.75,177.75,258.00,269.75,285.25,296.75,308.75 -145,143.50,178.75,259.50,271.75,287.50,299.00,311.00 -146,144.00,179.50,260.75,273.75,289.50,301.00,313.00 -147,144.75,180.25,262.00,275.50,291.25,303.00,315.00 -148,145.25,181.00,263.25,277.25,293.25,305.00,317.25 -149,145.75,181.50,264.50,279.00,295.25,307.00,319.25 -150,146.25,182.25,265.75,281.00,297.25,309.00,321.25 diff --git a/dist/simple/products/access.asc b/dist/simple/products/access.asc deleted file mode 100644 index 368c6538a..000000000 --- a/dist/simple/products/access.asc +++ /dev/null @@ -1,6 +0,0 @@ -username password name last_login super yes_tables no_tables upload acl export edit pages files config reconfig groups meta no_functions yes_functions table_control -__MVC_SUPERUSER__ __MVC_CRYPTPW__ Super User 1 -test sSPI6dOz/ciLg Papa Bear 962090612 0 2ndDayAir=vi Ground=vi NextDayAir=vix affiliate=vix area=vix country=vix inventory=vix locale=veix orderline=veix pricing=veix products=veix shipping=veix transactions=veix userdb=ex variable=ex mv_metadata access inventory pricing products cat pricing products inventory orderline pricing products ind* news* about* privacy* error.log etc/* 0 1 :orders products item=lvecd group=lv group=lv order=lvecau dbdownload laydownload orderstats userdb=lvep {'pricing' => {'no_fields' => "price_group",},'products' => {'no_keys' => "00-342",'no_fields' => "weight nontaxable",'yes_keys' => "00-0011 00-0011a 00-342 00-343 00-404",'yes_fields' => "sku artist title description comment price",},} -shipping ceJq5Qwc3ApHQ Shipping User 962075741 0 orderline transactions orderline transactions NONE etc/tracking.asc orders/* 0 0 :orders orderline transactions order=d access=vl group=vl {'transactions' => {'yes_fields' => "code status",},'orderline' => {'yes_fields' => "code status",},} -:backup Backup -:orders * Order admin 0 orderline transactions userdb userdb transactions orderline orderline transactions userdb order=d diff --git a/dist/simple/products/affiliate.txt b/dist/simple/products/affiliate.txt deleted file mode 100644 index 2c3fdd080..000000000 --- a/dist/simple/products/affiliate.txt +++ /dev/null @@ -1,9 +0,0 @@ -affiliate name campaigns join_date url timeout active password -bill Bill's books -joe Joe's Garage -bob Low Bob's -tim Tiny Tim's -rosie Rosy Cheeks -mary Wedding Shop -jean Denim Unlimited -judy Puppets Galore diff --git a/dist/simple/products/area.txt b/dist/simple/products/area.txt deleted file mode 100644 index f9c62cf2e..000000000 --- a/dist/simple/products/area.txt +++ /dev/null @@ -1,4 +0,0 @@ -code sel name which_page sort display_type image image_prop banner_image banner_text link_type url tab page search selector link_template -O1 left Galleries all 00 name none browse1 browse1 1 -O2 left Other Stuff all 00 name none 2 -O3 left Links all 01 name none 3 diff --git a/dist/simple/products/banner.txt b/dist/simple/products/banner.txt deleted file mode 100644 index b24cf3eac..000000000 --- a/dist/simple/products/banner.txt +++ /dev/null @@ -1,8 +0,0 @@ -code category weight rotate banner -Renaissance Renaissance 1 0 Renaissance banner 1 -Renaissance2 Renaissance 2 0 Renaissance banner 2 -Renaissance3 Renaissance 7 0 Renaissance banner 3 -Americana Americana 1 0 Americana banner 1 -Americana2 Americana 2 0 Americana banner 2 -Americana3 Americana 7 0 Americana banner 3 -default 1 Default banner 1{or}Default banner 2{or}Default banner 3 diff --git a/dist/simple/products/cat.txt b/dist/simple/products/cat.txt deleted file mode 100644 index 0c9f1795f..000000000 --- a/dist/simple/products/cat.txt +++ /dev/null @@ -1,12 +0,0 @@ -code sel name which_page sort display_type image image_prop banner_image banner_text link_type url tab page search selector link_template -O1 O1 Abstract 00 Abstract Gallery simple products category=Abstract -O2 O1 Expressionists 00 Expressionist Gallery simple products category=Expressionists -O3 O1 Impressionists 00 simple products category=Impressionists -O4 O1 Americana 00 Americana Gallery simple products category=Americana -O5 O1 Renaissance 00 simple products category=Renaissance -O6 O1 Surrealists 00 name Surrealist Gallery complex products fi=products st=db co=1 sf=category se=Surrealists op=eq nu=0 ml=5 tf=artist to=x category=Surrealists -O7 O3 MOMA -1 external http://www.moma.org products -O8 O3 Museum of Bad Art 02 external http://glyphs.com/moba/ products -O9 O3 Artchive 00 external http://www.artchive.com products fi=products co=1 sf=title se=y op=rm nu=0 su=1 ml=50 -O10 O2 Documentation 00 Interchange Documentation simple products category=docs -O11 O2 T-Shirts 00 Wearables simple http://store.steppenwolf.com products category=shirts diff --git a/dist/simple/products/country.txt b/dist/simple/products/country.txt deleted file mode 100644 index 86098a5e4..000000000 --- a/dist/simple/products/country.txt +++ /dev/null @@ -1,197 +0,0 @@ -code selector shipmodes name -AD AD air_D surf_D Andorra -AE AE air_F surf_F United Arab Emirates -AF AF air_F surf_F Afghanistan -AG AG air_C surf_C Antigua and Barbuda -AI AI air_C surf_C Anguilla -AL AL air_E surf_E Albania -AM AM air_F surf_F Armenia -AN AN air_C surf_C Netherlands Antilles -AO AO air_F surf_F Angola -AR AR air_F surf_F Argentina -AT AT air_D surf_D Austria -AU AU air_F surf_F Australia -AW AW air_C surf_C Aruba -AZ AZ air_F surf_F Azerbaijan -BB BB air_D surf_D Barbados -BD BD air_F surf_F Bangladesh -BE BE air_F surf_F Belgium -BF BF air_F surf_F Burkina Faso -BG BG air_F surf_F Bulgaria -BH BH air_F surf_F Bahrain -BI BI air_F surf_F Burundi -BJ BJ air_E surf_E Benin -BM BM air_C surf_C Bermuda -BN BN air_F surf_F Brunei Darussalam -BO BO air_D surf_D Bolivia -BR BR air_F surf_F Brazil -BS BS air_C surf_C Bahamas -BT BT air_F surf_F Bhutan -BW BW air_F surf_F Botswana -BY BY air_F surf_F Belarus -BZ BZ air_C surf_C Belize -CA CA air_A surf_A Canada -CF CF air_F surf_F Central African Republic -CG CG air_F surf_F Congo -CH CH air_D surf_D Switzerland -CL CL air_F surf_F Chile -CM CM air_F surf_F Cameroon -CN CN air_F surf_F China -CO CO air_D surf_D Colombia -CR CR air_C surf_C Costa Rica -CV CV air_F surf_F Cape Verde -CY CY air_E surf_E Cyprus -CZ CZ air_E surf_E Czech Republic -DE DE air_D surf_D Germany -DJ DJ air_F surf_F Djibouti -DK DK air_E surf_E Denmark -DM DM air_C surf_C Dominica -DO DO air_C surf_C Dominican Republic -DZ DZ air_F surf_F Algeria -EC EC air_E surf_E Ecuador -EE EE air_F surf_F Estonia -EG EG air_F surf_F Egypt -EI EI air_E surf_E Ireland (Eire) -ER ER air_F surf_F Eritrea -ES ES air_E surf_E Spain -ET ET air_F surf_F Ethiopia -FI FI air_F surf_F Finland -FJ FJ air_D surf_D Fiji -FO FO air_E surf_E Faroe Islands -FR FR air_F surf_F France (Includes Monaco) -GA GA air_F surf_F Gabon -GD GD air_C surf_C Grenada -GE GE air_F surf_F Georgia -GF GF air_E surf_E French Guiana -GH GH air_F surf_F Ghana -GI GI air_E surf_E Gibraltar -GL GL air_F surf_F Greenland -GM GM air_D surf_D Gambia -GN GN air_D surf_D Guinea -GP GP air_C surf_C Guadeloupe -GQ GQ air_F surf_F Equatorial Guinea -GR GR air_E surf_E Greece -GT GT air_C surf_C Guatemala -GW GW air_D surf_D Guinea-Bissau -GY GY air_D surf_D Guyana -HK HK air_E surf_E Hong Kong -HN HN air_D surf_D Honduras -HT HT air_C surf_C Haiti -HU HU air_E surf_E Hungary -ID ID air_F surf_F Indonesia -IL IL air_E surf_E Israel -IN IN air_F surf_F India -IR IR air_F surf_F Iran -IS IS air_E surf_E Iceland -IT IT air_E surf_E Italy -JM JM air_C surf_C Jamaica -JO JO air_E surf_E Jordan -JP JP air_F surf_F Japan -KE KE air_F surf_F Kenya -KI KI air_D surf_D Kiribati -KM KM air_F surf_F Comoros -KR KR air_E surf_E South Korea -KW KW air_F surf_F Kuwait -KY KY air_C surf_C Cayman Islands -KZ KZ air_F surf_F Kazakhstan -LA LA air_F surf_F Laos -LB LB air_E surf_E Lebanon -LI LI air_D surf_D Liechtenstein -LK LK air_F surf_F Sri Lanka -LS LS air_F surf_F Lesotho -LT LT air_F surf_F Lithuania -LU LU air_D surf_D Luxembourg -LY LY air_F surf_F Libya -MA MA air_E surf_E Morocco -MG MG air_F surf_F Madagascar -MK MK air_E surf_E Macedonia -ML ML air_E surf_E Mali -MQ MQ air_C surf_C Martinique -MR MR air_F surf_F Mauritania -MS MS air_C surf_C Montserrat -MT MT air_E surf_E Malta -MU MU air_F surf_F Mauritius -MV MV air_F surf_F Maldives -MW MW air_F surf_F Malawi -MX MX air_B surf_B Mexico -MZ MZ air_F surf_F Mozambique -NA NA air_F surf_F Namibia -NC NC air_F surf_F New Caledonia -NE NE air_F surf_F Niger -NG NG air_E surf_E Nigeria -NI NI air_D surf_D Nicaragua -NL NL air_E surf_E Netherlands -NO NO air_F surf_F Norway -NP NP air_F surf_F Nepal -NR NR air_E surf_E Nauru -NZ NZ air_F surf_F New Zealand -OM OM air_F surf_F Oman -PA PA air_C surf_C Panama -PG PG air_F surf_F Papua New Guinea -PH PH air_F surf_F Philippines -PK PK air_F surf_F Pakistan -PL PL air_D surf_D Poland -PM PM air_C surf_C St. Pierre and Miquelon -PT PT air_E surf_E Portugal -PY PY air_F surf_F Paraguay -RE RE air_F surf_F Reunion -RW RW air_F surf_F Rwanda -SA SA air_F surf_F Saudi Arabia -SC SC air_F surf_F Seychelles -SD SD air_F surf_F Sudan -SE SE air_F surf_F Sweden -SG SG air_F surf_F Singapore -SH SH air_E surf_E St. Helena -SI SI air_E surf_E Slovenia -SK SK air_E surf_E Slovak Republic -SL SL air_F surf_F Sierra Leone -SN SN air_F surf_F Senegal -SR SR air_D surf_D Suriname -ST ST air_F surf_F Sao Tome and Principe -SV SV air_D surf_D El Salvador -SZ SZ air_F surf_F Swaziland -Sb Sb air_E surf_E Solomon Islands -TC TC air_C surf_C Turks and Caicos Islands -TD TD air_F surf_F Chad -TG TG air_F surf_F Togo -TH TH air_F surf_F Thailand -TN TN air_E surf_E Tunisia -TO TO air_D surf_D Tonga -TR TR air_E surf_E Turkey -TT TT air_D surf_D Trinidad and Tobago -TV TV air_D surf_D Tuvalu -TW TW air_E surf_E Taiwan -TZ TZ air_F surf_F Tanzania -UA UA air_F surf_F Ukraine -UG UG air_F surf_F Uganda -UK UK air_E surf_E United Kingdom -US US upsg upsb upsr United States -UY UY air_D surf_D Uruguay -VE VE air_D surf_D Venezuela -VU VU air_D surf_D Vanuatu -XA XA air_E surf_E Azores -XB XB air_E surf_E Bosnia-Herzegovina -XC XC air_C surf_C British Virgin Islands -XD XD air_F surf_F Burma -XE XE air_F surf_F Corsica -XF XF air_F surf_F Cote d` Ivoire (Ivory Coast) -XG XG air_E surf_E Croatia -XI XI air_F surf_F French Polynesia (Tahiti) -XL XL air_E surf_E Macao -XM XM air_D surf_D Madeira Islands -XO XO air_D surf_D Pitcairn Island -XP XP air_C surf_C St. Christopher and Nevis -XQ XQ air_C surf_C St. Lucia -XR XR air_C surf_C St. Vincent and the Grenadines -XS XS air_E surf_E Serbia-Montenegro -XT XT air_E surf_E Syrian Arab Republic -XU XU air_F surf_F Tristan da Cunha -XV XV air_E surf_E Vatican City -XW XW air_F surf_F Vietnam -XX XX air_F surf_F Wallis and Furuna Islands -XY XY air_D surf_D Western Samoa -YE YE air_F surf_F Yemen -ZA ZA air_F surf_F South Africa -ZM ZM air_F surf_F Zambia -ZR ZR air_F surf_F Zaire -ZW ZW air_F surf_F Zimbabwe diff --git a/dist/simple/products/inventory.txt b/dist/simple/products/inventory.txt deleted file mode 100644 index b9f8519bc..000000000 --- a/dist/simple/products/inventory.txt +++ /dev/null @@ -1,32 +0,0 @@ -sku quantity stock_message account cogs_account -00-0010 10 2-4 days -00-0011 10 4-6 weeks -00-0011a 10 4-6 weeks -00-2001 10 by special order -00-2002 10 by special order -00-340 10 by special order -00-341 10 by special order -00-342 10 by special order -00-343 10 by special order -00-344 10 by special order -00-402 10 by special order -00-403 10 by special order -00-404 10 by special order -19-202 10 by special order -19-203 10 by special order -19-204 10 by special order -21-221 10 by special order -22-002 10 by special order -22-003 10 by special order -22-200 10 by special order -22-201 10 by special order -34-101 10 by special order -98-101 10 by special order -98-102 10 by special order -99-102 100 2-4 days -99-301 10 by special order -99-322 10 by special order -99-329 10 by special order -MVFAQ1 100000 immediately -MVDOC1 100000 immediately -MVTAG1 100000 immediately diff --git a/dist/simple/products/locale.txt b/dist/simple/products/locale.txt deleted file mode 100644 index ec29d83fa..000000000 --- a/dist/simple/products/locale.txt +++ /dev/null @@ -1,26 +0,0 @@ -code en_US de_DE fr_FR -January Januar Janvier -February Februar Février -March März Mars -April April Avril -May Mai Mai -June Juni Juin -July Juli Juillet -August August Aout -September September Septembre -October October Octobre -November November Novembre -December Dezember Décembre -PriceDivide 1 0.5409 0.1632 -ProductFiles -currency_symbol $ DM FF -decimal_point . . . -default 1 0 0 -frac_digits 2 2 2 -mon_decimal_point . , , -mon_thousand_sep -mon_thousands_sep , , . -p_cs_precedes 1 -p_sep_by_space 1 -price_picture DM ### ### ###,## -products de_products produits diff --git a/dist/simple/products/merchandising.txt b/dist/simple/products/merchandising.txt deleted file mode 100644 index 6ff3a545f..000000000 --- a/dist/simple/products/merchandising.txt +++ /dev/null @@ -1,6 +0,0 @@ -sku featured banner_text banner_image blurb_begin blurb_end start finish upsell_to cross_sell others_bought -22-200 front Featured in the Abstract Gallery 20000806 20000806 -98-101 front Featured in the Expressionist Gallery 20000805 20001005 -00-402 front 20000806 20000806 -MVFAQ1 front The Fine Documentation 20000806 20000806 -MVDOC1 front Worth a look... 20000806 20000806 diff --git a/dist/simple/products/mv_metadata.asc b/dist/simple/products/mv_metadata.asc deleted file mode 100644 index 068e15bec..000000000 --- a/dist/simple/products/mv_metadata.asc +++ /dev/null @@ -1,122 +0,0 @@ -code type width height field db name outboard options attribute label help lookup filter help_url pre_filter lookup_exclude prepend append -2ndDayAir 200 -NextDayAir 200 -access::super select 0=No, 1=Yes -affiliate text 25 affiliate,name,url,active Affiliates Data -affiliate::affiliate text 12 Affiliate ID word -affiliate::join_date text Join date -affiliate::name text 50 Affiliate Name -affiliate::timeout text 8 Timeout delay (in seconds, 0 to disable) -affiliate::url text 70 URL Default URL to redirect to -area -area::display_type select name=Name,url=URL only,icon=Icon and name, image=Image -area::image imagedir __MVC_DOCUMENTROOT____MVC_IMAGEURL__/images -area::link_type select none=No link, external=External link (http://...), internal=Interchange page, simple=Simple search, complex=Complex search -cat::area multiple 5 area code -cat::display_type select name=Name,url=URL only,icon=Icon and name, image=Image -cat::link_type select none=No link, external=External link (http://...), internal=Interchange page, simple=Simple search, complex=Complex search -cat::search textarea 50 4 -country 200 -custview::userdb::dealer display =No,1=Yes Dealer -custview::userdb::email_copy display =No, 1=Yes Payment method -custview::userdb::fax_order display =Credit Card, 1=Fax or Mail, 2=Purchase order, 3=COD Payment method -custview::userdb::mail_list display offer=Special Offers, newsletter=Newsletter, alert=Alerts and Recalls, upgrade=Upgrades null_to_space -dbconfig::mv_metadata::code hidden_text Database table -dbconfig::mv_metadata::db combo tables nullselect -dbconfig::mv_metadata::field checkbox columns:: List on select page Must have the key field (usually it is the first one) null_to_comma -dbconfig::mv_metadata::filter multiple 5 filesafe=Safe for file name, uc=Upper case, nullselect=First non-null (combo box), null_to_space=Translate null to space, null_to_comma=Translate null to comma, lc=Lower case, digits_dot=Decimal number (not negative), backslash=Remove backslashes, namecase=Name case, name=Turn LAST,FIRST into FIRST LAST, digits=Digits only, word=Word chars only (A-z0-9_), unix=DOS to UNIX, dos=UNIX to DOS, mac=UNIX to MAC, gate=Only allow if scratch set, no_white=No whitespace, strip=Strip leading/trailing whitespace, sql=Escape single quotes (SQL), text2html=Simple text to HTML, urlencode=URL encode (%20, etc), pagefile=Safe for Interchange page name, entities=HTML entities (& -> &amp;), date_change=MM/DD/YYYY to YYYYMMDD null_to_space -dbconfig::mv_metadata::height text 4 Select page rows Number of rows to display at selector page. digits -dbconfig::mv_metadata::help textarea 70 4 Help displays at top of page -dbconfig::mv_metadata::help_url text 70 4 Help URL links below help text -dbconfig::mv_metadata::lookup text 20 -dbconfig::mv_metadata::name text 70 4 Description -dbconfig::mv_metadata::type select select=Select box, text=Text entry*,textarea=Textarea,combo=Combo Select, radio=Radio box, radio_nbsp=Radio (nbsp), checkbox=Check box, check_nbsp=Checkbox (nbsp), hidden_text=Hidden (show text), multiple=Multiple Select, imagedir=Image listing, date=Date selector,display=Text of option Widget type filesafe -dbconfig::mv_metadata::width text 4 digits -inventory 25 sku,quantity -inventory::stock_message select In stock, Ships in 3-5 days, Ships in 4-6 weeks, Special order -merchandising::banner_image text Banner image if appropriate -merchandising::banner_text text Banner text for use where appropriate. -merchandising::blurb_begin text Teaser catch line for feature display -merchandising::blurb_end text Closer end text for feature display -merchandising::cross_category select products =- none - category -merchandising::featured combo =none,front=Front page,cart=Shopping cart,receipt=Receipt Where featured nullselect -merchandising::finish date End date -merchandising::sku text products sku -merchandising::start date Start date -merchandising::upsell_to multiple 10 products sku null_to_space -mv_metadata text 100 code type label -mv_metadata::code text 50 Table::Column Table::column to be operated on -mv_metadata::db combo tables nullselect -mv_metadata::filter multiple 5 filesafe=Safe for file name, uc=Upper case, nullselect=First non-null (combo box), null_to_space=Translate null to space, null_to_comma=Translate null to comma, lc=Lower case, digits_dot=Decimal number (not negative), backslash=Remove backslashes, namecase=Name case, name=Turn LAST,FIRST into FIRST LAST, digits=Digits only, word=Word chars only (A-z0-9_), unix=DOS to UNIX, dos=UNIX to DOS, mac=UNIX to MAC, gate=Only allow if scratch set, no_white=No whitespace, strip=Strip leading/trailing whitespace, sql=Escape single quotes (SQL), text2html=Simple text to HTML, urlencode=URL encode (%20, etc), pagefile=Safe for Interchange page name, entities=HTML entities (& -> &amp;), date_change=MM/DD/YYYY to YYYYMMDD null_to_space -mv_metadata::height text 4 digits -mv_metadata::help textarea 70 4 -mv_metadata::lookup text 20 -mv_metadata::options text 60 -mv_metadata::type select select=Select box, text=Text entry*,textarea=Textarea,combo=Combo Select, radio=Radio box, radio_nbsp=Radio (nbsp), checkbox=Check box, check_nbsp=Checkbox (nbsp), hidden_text=Hidden (show text), multiple=Multiple Select, imagedir=Image listing, date=Date selector,display=Text of option Widget type filesafe -mv_metadata::width text 4 digits -order_view::orderline::status display pending=Pending, shipped=Shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -order_view::transactions::status display pending=Pending, shipped=Shipped, partial=Partially shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -orderline text code,sku,description,price, quantity,subtotal -orderline::status combo pending=Pending, shipped=Shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -pricing text 2 -pricing::price_group combo pricing Discount group price_group nullselect -products text sku,description,category,price -products::artist text 30 Artist -products::category combo products Category Enter in box for new category. category nullsellect -products::color textarea 50 5 -products::comment textarea 70 8 Long Description -products::description text 60 Short Description -products::image imagedir images/items Image nullselect upload -products::nontaxable select =Yes, 1=No Taxable? -products::price text 12 Product Price digits_dot -products::related multiple 5 sku products Related items

    (space separated SKUs) -products::size textarea 50 5 -products::sku SKU/Item code -products::thumb imagedir images/thumb nullselect upload -products::title text 30 Title namecase -products::weight text 4 Weight in pounds digits_dot -shipping text description -state text name -transactions::status combo pending=Pending, shipped=Shipped, partial=Partially shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -userdb text username,company,lname,fname -userdb::address1 text 40 Address -userdb::address2 text 40 -userdb::b_address1 text 40 Billing Address -userdb::b_address2 text 40 -userdb::b_city text 40 Billing City -userdb::b_country text 10 Billing Country -userdb::b_fname text 40 Billing First Name -userdb::b_lname text 40 Billing Last Name -userdb::b_state text 10 Billing State -userdb::b_zip text 10 Billing Postcode -userdb::city text 40 City -userdb::company text 40 Company -userdb::country text 10 Country -userdb::dealer radio_nbsp =No,1=Yes Dealer -userdb::email text 40 Email Address -userdb::email_copy select =No, 1=Yes -userdb::fax_order select =Credit Card, 1=Fax or Mail, 2=Purchase order, 3=COD Payment method -userdb::fname text 30 First name -userdb::lname text 30 Last Name -userdb::mail_list check_nbsp offer=Special Offers, newsletter=Newsletter, alert=Alerts and Recalls, upgrade=Upgrades null_to_space -userdb::mod_time text 20 -userdb::phone_day text 30 Daytime Phone -userdb::phone_night text 30 Home Phone -userdb::state text 10 State -userdb::username hidden_%20text 16 Username no_white -userdb::zip text 10 Postcode uc word -variable::Variable::ADDRESS text Company Address -variable::Variable::CATALOG_STATIC select No, Yes Enabled for users? Yes will cause Interchange to generate static links where possible.

    No disables generation of static links for users; you can still send a search engine to the statically generated URL and it will spider the static links on the page. -variable::Variable::CGI_URL text CGI URL URL that calls Interchange, without the server name -variable::Variable::CHECK_ACCEPTED select 0=No, 1=Yes -variable::Variable::COD_ACCEPTED select 0=No, 1=Yes -variable::Variable::CREDIT_CARDS_ACCEPTED checkbox visa=Visa, mc=Mastercard, discover=Discover, amex=American Express null_to_space -variable::Variable::DOCROOT text Document root This is the directory where your HTML originates. It should match the DocumentRoot of your HTTP server. http://www.apache.org/docs/mod/core.html#documentroot -variable::Variable::MULTIORDER select =No,1=Yes Whether users should by default have multipage order forms. -variable::Variable::MYSQL select 0=No, 1=Yes -variable::Variable::PO_ACCEPTED select 0=No, 1=Yes -variable::Variable::STATIC_LOGGED select No, Yes Enabled for logged in users? Yes will cause Interchange to generate static links where possible, even when users are logged in. -variable::Variable::UI_ITEM_EXPUNGE text 60 Item expunge tables The tables that should have the SKU removed when you DELETE ITEM from the items menu. -variable::Variable::UI_META_LINK select 0=No, 1=Yes Meta edit links Determines whether enabled by default. They can be turned on in Preferences. -variable::code text Variable name -variable::pref_group text Preferences area diff --git a/dist/simple/products/orderline.txt b/dist/simple/products/orderline.txt deleted file mode 100644 index e3b1bee60..000000000 --- a/dist/simple/products/orderline.txt +++ /dev/null @@ -1 +0,0 @@ -code store_id order_number session username shipmode sku quantity price subtotal shipping taxable size color options order_date update_date status parent affiliate campaign description diff --git a/dist/simple/products/pricing.txt b/dist/simple/products/pricing.txt deleted file mode 100644 index e1aba78f5..000000000 --- a/dist/simple/products/pricing.txt +++ /dev/null @@ -1,30 +0,0 @@ -sku price_group q2 q5 q10 q25 q100 XL S red -00-340 400 200 100 50 20 -22-201 2 400 200 100 50 20 -00-0011 1000 1000 1000 500 250 -22-002 2 400 200 100 50 20 -00-0011a 50 45 40 35 30 -00-403 400 200 100 50 20 -98-102 9 400 200 100 50 20 -00-2002 400 200 100 50 20 -99-104 9 100 95 80 -00-343 400 200 100 50 20 -99-301 9 400 200 100 50 20 -00-0010 400 200 100 50 20 -19-204 1 800 500 400 300 250 -22-003 2 400 200 100 50 20 -21-221 2 400 200 100 50 20 -99-102 9 10 10 9 8 7 1 -0.5 0.75 -34-101 3 400 200 100 50 20 -00-404 400 200 100 50 20 -00-341 0 400 200 100 50 20 -99-322 9 400 200 100 50 20 -22-200 2 400 200 100 50 20 -99-105 9 100 -00-344 400 200 100 50 20 -19-203 1 800 500 400 300 250 -00-402 0 400 200 100 50 20 -98-101 9 400 200 100 50 20 -00-2001 400 200 100 50 20 -99-103 9 100 95 80 -00-342 300 200 100 50 20 diff --git a/dist/simple/products/products.txt b/dist/simple/products/products.txt deleted file mode 100644 index a787f50c5..000000000 --- a/dist/simple/products/products.txt +++ /dev/null @@ -1,30 +0,0 @@ -sku owner description title artist comment display thumb image price category hierarchy banner nontaxable weight size color related featured download dl_type dl_location -00-0010 The Last Supper, LEONARDO da Vinci The Last Supper LEONARDO da Vinci 1498, Tempera on plaster, 460 x 880 cm (15 x 29 ft.) Convent of Santa Maria delle Grazie (Refectory), Milan lastsupp.jpg 30000000.00 Renaissance 8 00-0011a Front -00-0011 MONA LISA, Da Vinci Mona Lisa LEONARDO da Vinci What was she smiling about? The Louvre 00-0011.jpg 49999995.00 Renaissance no 8 00-0011a -00-0011a Gilded Frame signed by Da Vinci Frame Gilded 00-0011a.png 1000.00 Accessory 1 20 -00-2001 The Madonna of the Magnificat, BOTTICELLI The Madonna of the Magnificat BOTTICELLI, Sandro c. 1485, Tempera on panel, diameter 118 cm Uffizi, Florence magnificat.jpg 8000000.00 Renaissance 7 -00-2002 Portrait of a Young Man, BOTTICELLI Portrait of a Young Man BOTTICELLI, Sandro c. 1480-85, Wood, 37.5 x 28.2 cm National Gallery, London young_man.jpg 10000000.00 Renaissance 5 -00-340 Irises, VAN GOGH Irises VAN GOGH, Vincent 1889, Oil on canvas, 28 x 36 3/4 in. (71 x 93 cm) Getty Museum, Malibu, California irises.jpg 40000000.00 Impressionists 5 00-341 00-342 Front -00-341 SUNFLOWERS, by Van Gogh Sunflowers VAN GOGH, Vincent An exquisite painting showing Van Gogh at the height of his pointillist powers. The Louvre 00-341.jpg 40000000.00 Impressionists no 40 -00-342 THE STARRY NIGHT, Van Gogh The Starry Night VAN GOGH, Vincent Breathtaking example of Van Gogh's work. MOMA 00-342.jpg 30000000.00 Impressionists no 10 -00-343 PERSISTENCE OF MEMORY, Dali Persistence of Memory DALI, Salvador How does he do that? MOMA 00-343.jpg 20000000.00 Surrealists no 10 -00-344 Illumined Pleasures, DALI Illumined Pleasures DALI, Salvador 1929, Oil and collage on composition board, 9 3/8 x 13 3/4 in. The Museum of Modern Art, New York illumined_pleasures.jpg 5000000.00 Surrealists 5 00-343 -00-402 Golconde, MAGRITTE Golconde MAGRITTE, Rene 1953, Oil on canvas, 31 1/2 x 39 1/2 in. The Menil Collection, Houston, Texas golconde.jpg 7000000.00 Surrealists 5 -00-403 Self-Portrait with Loose Hair, KAHLO Self-Portrait with Loose Hair KAHLO, Frida 1947, Oil on masonite, 24 x 17 3/4 in. (61 x 45 cm) Private collection loose_hair.jpg 2000000.00 Surrealists 5 00-404 Front -00-404 The Two Fridas, KAHLO The Two Fridas KAHLO, Frida 1939, Oil on canvas, 68 x 68 in. (173 x 173 cm) Museo de Arte Moderno, Mexico City two_fridas.jpg 3000000.00 Surrealists 5 00-403 -19-203 PANORAMIC PROCESSION, Keiko Panoramic Procession KEIKO You are in a series of twisty passages.... South Beach Gallery 19-203.jpg 200000.00 Surrealists 5 food -19-204 ERA'S END, Keiko Era's End KEIKO Stranger and stranger... South Beach Gallery 19-204.jpg 299995.00 Surrealists 66 goods 1 -21-221 AMERICAN GOTHIC, by Wood American Gothic WOOD, Grant The quintessential piece of Americana. Art Institute 21-221.jpg 10000000.00 Americana no 10 99-102 Front -22-002 Paul as Harlequin, PICASSO Paul as Harlequin PICASSO, Pablo 1924, Paris, Oil on canvas, 130 x 97.5 cm Musee Picasso, Paris paul_harlequin.jpg 12000000.00 Abstract 5 -22-003 Woman with a Fan, PICASSO Woman with a Fan PICASSO, Pablo Paris, [late spring] 1908, Oil on canvas, 59 7/8 x 39 3/4 in. (152 x 101 cm.) The Hermitage Museum, St. Petersburg womanfan.jpg 10000000.00 Abstract 5 -22-200 Number 1A, 1948, POLLOCK Number 1A, 1948 POLLOCK, Jackson 1948, Oil on canvas, 68" x 8'8" The Museum of Modern Art, New York pol2.jpg 4000000.00 Abstract 10 22-201 -22-201 The Key, POLLOCK The Key POLLOCK, Jackson 1946, Oil on canvas, 59 x 84 in. The Art Institute of Chicago pol1.jpg 5000000.00 Abstract 12 22-200 -34-101 FAMILY PORTRAIT, by Langan Family Portrait LANGAN, Jean Haunting view of Grandma's Parlor Krannert 34-101.png 999995.00 Americana no 10 -98-101 Black Cross, New Mexico, O'KEEFFE Black Cross, New Mexico O'KEEFFE, Georgia 1929, Oil on canvas, 99.2 x 76.3 cm The Art Institute of Chicago okeefe1.jpg 8000000.00 Expressionists 3 98-102 Front -98-102 Red Canna, O'KEEFFE Red Canna O'KEEFFE, Georgia c. 1919, Oil on board, 12 x 9 in. (30.5 x 22.9 cm) Private collection okeeffe6.jpg 5000000.00 Expressionists 5 98-101 -99-102 THE ART STORE T-SHIRT The Art Store T-Shirt The Art Store Guaranteed to be of the finest cheap T-shirt material A Store Near You tshirt.jpg 10.00 Americana,Shirts no 1 S=Small, M=Medium, L=Large*, XL=Extra Large red=Ruby Red, blue=Sky Blue*, green=Sea Green, Black, White -99-301 Chair Car, HOPPER Chair Car HOPPER, Edward 1965, Oil on canvas, 40 x 50 inches Private collection chair_car.jpg 900000.00 Americana 5 Front -99-322 My Gems, HARNETT My Gems HARNETT, William 1888, Oil on wood, 18 x 14 in. (45.7 x 35.5 cm) National Gallery of Art, Washington my_gems.jpg 1000000.00 Americana 5 -MVFAQ1 Interchange FAQ (downloadable) Interchange 4 Frequently-Asked Questions HEINS, Mike This product is downloadable. You can pay me by reading this! poweredby.gif 1.00 Docs 1 MVDOC1 Front 1 application/octet-stream download/mvfaq.pod -MVDOC1 Interchange Documentation (downloadable) Interchange 4 Documentation HEINS, Mike This product is downloadable. You can pay me by reading this! poweredby.gif 1.00 Docs 1 MVFAQ1 Front 1 application/octet-stream download/mvdocs.pod -MVTAG1 Interchange Tag Reference (downloadable) Interchange 4 Tag Reference HEINS, Mike This product is downloadable. You can pay me by reading this! poweredby.gif 1.00 Docs 1 MVFAQ1 Front 1 application/octet-stream download/mvtags.pod diff --git a/dist/simple/products/route.txt b/dist/simple/products/route.txt deleted file mode 100644 index 0621fca19..000000000 --- a/dist/simple/products/route.txt +++ /dev/null @@ -1 +0,0 @@ -code report receipt encrypt_program encrypt pgp_key pgp_cc_key cyber_mode credit_card profile inline_profile email attach counter increment continue partial supplant track errors_to diff --git a/dist/simple/products/salestax.asc b/dist/simple/products/salestax.asc deleted file mode 100644 index 5325e5ccf..000000000 --- a/dist/simple/products/salestax.asc +++ /dev/null @@ -1 +0,0 @@ -default [fly-tax] diff --git a/dist/simple/products/shipping.asc b/dist/simple/products/shipping.asc deleted file mode 100644 index 46a21e8db..000000000 --- a/dist/simple/products/shipping.asc +++ /dev/null @@ -1,78 +0,0 @@ -code description criteria min max formula query opt -0 No shipping weight 0 99999999 e No shipping mode selected. -default No shipping weight 0 99999999 g PriceDivide - -upsg UPS Ground weight 0 0 e Nothing to ship! -upsg UPS Ground weight 0 150 u Ground [value name=zip filter=digits default=45056] __MVC_UPSADDER__ -upsg UPS Ground weight 150 999999 e @@TOTAL@@ lbs too heavy for UPS - -upsb: UPS Two Day - crit weight - min 0 - max 0 - cost e Nothing to ship! - - min 0 - max 150 - type u - zone 450 - table 2ndDayAir - geo zip - default_zip 45056 - adder __MVC_UPSADDER__ - - min 150 - max 999999 - cost e @@TOTAL@@ lbs too heavy for UPS - -upsr UPS Next Day weight 0 0 e Nothing to ship! -upsr UPS Next Day weight 0 150 u NextDayAir [value name=zip filter=digits default=45056] __MVC_UPSADDER__ -upsr UPS Next Day weight 150 999999 e @@TOTAL@@ lbs too heavy for UPS - -surf_A Int'l Surface A weight 0 0 e Nothing to ship! -surf_A Int'l Surface A weight 0 100 f 6 + @@TOTAL@@ * 2 -surf_A Int'l Surface A weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. - -air_A Int'l Air A weight 0 0 e Nothing to ship! -air_A Int'l Air A weight 0 100 f 8 + @@TOTAL@@ * 2.50 -air_A Int'l Air A weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. - -surf_B Int'l Surface B weight 0 0 e Nothing to ship! -surf_B Int'l Surface B weight 0 100 f 8 + @@TOTAL@@ * 3 -surf_B Int'l Surface B weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. - -air_B Int'l Air B weight 0 0 e Nothing to ship! -air_B Int'l Air B weight 0 100 f 10 + @@TOTAL@@ * 3.50 -air_B Int'l Air B weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. - -surf_C Int'l Surface C weight 0 0 e Nothing to ship! -surf_C Int'l Surface C weight 0 100 f 10 + @@TOTAL@@ * 4 -surf_C Int'l Surface C weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. - -air_C Int'l Air C weight 0 0 e Nothing to ship! -air_C Int'l Air C weight 0 100 f 12 + @@TOTAL@@ * 4.5 -air_C Int'l Air C weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. - -surf_D Int'l Surface D weight 0 0 e Nothing to ship! -surf_D Int'l Surface D weight 0 100 f 12 + @@TOTAL@@ * 5 -surf_D Int'l Surface D weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. - -air_D Int'l Air D weight 0 0 e Nothing to ship! -air_D Int'l Air D weight 0 100 f 14 + @@TOTAL@@ * 5.5 -air_D Int'l Air D weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. - -surf_E Int'l Surface E weight 0 0 e Nothing to ship! -surf_E Int'l Surface E weight 0 100 f 14 + @@TOTAL@@ * 6 -surf_E Int'l Surface E weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. - -air_E Int'l Air E weight 0 0 e Nothing to ship! -air_E Int'l Air E weight 0 100 f 16 + @@TOTAL@@ * 6.5 -air_E Int'l Air E weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. - -surf_F Int'l Surface F weight 0 0 e Nothing to ship! -surf_F Int'l Surface F weight 0 100 f 16 + @@TOTAL@@ * 7 -surf_F Int'l Surface F weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. - -air_F Int'l Air F weight 0 0 e Nothing to ship! -air_F Int'l Air F weight 0 100 f 18 + @@TOTAL@@ * 7.5 -air_F Int'l Air F weight 100 999999 e @@TOTAL@@ lbs too heavy. Charter a boat. diff --git a/dist/simple/products/state.txt b/dist/simple/products/state.txt deleted file mode 100644 index ac09b08eb..000000000 --- a/dist/simple/products/state.txt +++ /dev/null @@ -1,183 +0,0 @@ -code country state name - AU AAT Australian Antarctic Territory - AU ACT Australian Capital Territory - AU NT Northern Territory - AU NSW New South Wales - AU QLD Queensland - AU SA South Australia - AU TAS Tasmania - AU VIC Victoria - AU WA Western Australia - BR AC Acre - BR AL Alagoas - BR AM Amazonas - BR AP Amapa - BR BA Baia - BR CE Ceara - BR DF Distrito Federal - BR ES Espirito Santo - BR FN Fernando de Noronha - BR GO Goias - BR MA Maranhao - BR MG Minas Gerais - BR MS Mato Grosso do Sul - BR MT Mato Grosso - BR PA Para - BR PB Paraiba - BR PE Pernambuco - BR PI Piaui - BR PR Parana - BR RJ Rio de Janeiro - BR RN Rio Grande do Norte - BR RO Rondonia - BR RR Roraima - BR RS Rio Grande do Sul - BR SC Santa Catarina - BR SE Sergipe - BR SP Sao Paulo - BR TO Tocatins - CA AB Alberta - CA BC British Columbia - CA MB Manitoba - CA NB New Brunswick - CA NF Newfoundland - CA NS Nova Scotia - CA NT Northwest Territories - CA NT Nunavut - CA ON Ontario - CA PE Prince Edward Island - CA QC Quebec - CA SK Saskatchewan - CA YT Yukon Territory - NL DR Drente - NL FL Flevoland - NL FR Friesland - NL GL Gelderland - NL GR Groningen - NL LB Limburg - NL NB Noord Brabant - NL NH Noord Holland - NL OV Overijssel - NL UT Utrecht - NL ZH Zuid Holland - NL ZL Zeeland - UK BEDS Bedfordshire - UK BERKS Berkshire - UK BORDER Borders - UK BUCKS Buckinghamshire - UK CAMBS Cambridgeshire - UK CENT Central - UK CI Channel Islands - UK CHESH Cheshire - UK CLEVE Cleveland - UK CORN Cornwall - UK CUMB Cumbria - UK DERBY Derbyshire - UK DEVON Devonshire - UK DORSET Dorsetshire - UK DUMGAL Dumfries & Galloway - UK GLAM Glamorganshire - UK GLOUS Gloucestershire - UK GRAMP Grampian - UK GWYNED Gwynedd - UK HANTS Hampshire - UK HERWOR Herefordshire & Worcestershire - UK HERTS Hertfordshire - UK HIGHL Highland - UK HUMBER Humberside - UK HUNTS Huntingdonshire - UK IOM Isle of Man - UK IOW Isle of White - UK LANARKS Lanarkshire - UK LANCS Lancashire - UK LEICS Leicestershire - UK LINCS Licolnshire - UK LOTH Lothian - UK MIDDX Middlesex - UK NORF Norfolk - UK NHANTS Northamptonshire - UK NTHUMB Northumberland - UK NOTTS Nottinghamshire - UK OXON Oxfordshire - UK PEMBS Pembrokeshire - UK RUTLAND Rutlandshire - UK SHROPS Shropshire - UK SOM Somersetshire - UK STAFFS Staffordshire - UK STRATH Strathclyde - UK SUFF Suffolk - UK SUSS Sussex - UK TAYS Tayside - UK TYNE Tyne & Wear - UK WARKS Warwickshire - UK WILTS Wiltshire - UK WORCS Worcestershire - UK YORK Yorkshire - EI CO ANTRIM County Antrim - EI CO ARMAGH County Armagh - EI CO DOWN County Down - EI CO DURHAM County Durham - EI CO FERMANAgh County Fermanagh - EI CO DERRY County Londonderry - EI CO TYRONE County Tyrone - US AA Military Americas - US AE Military Europe/ME/Canada - US AP Military Pacific - US AK Alaska - US AL Alabama - US AR Arkansas - US AS American Samoa - US AZ Arizona - US CA California - US CO Colorado - US CT Connecticut - US DC D.C. - US DE Delaware - US FL Florida - US FM Micronesia - US GA Georgia - US GU Guam - US HI Hawaii - US IA Iowa - US ID Idaho - US IL Illinois - US IN Indiana - US KS Kansas - US KY Kentucky - US LA Louisiana - US MA Massachusetts - US MD Maryland - US ME Maine - US MH Marshall Islands - US MI Michigan - US MN Minnesota - US MO Missouri - US MP Marianas - US MS Mississippi - US MT Montana - US NC North Carolina - US ND North Dakota - US NE Nebraska - US NH New Hampshire - US NJ New Jersey - US NM New Mexico - US NV Nevada - US NY New York - US OH Ohio - US OK Oklahoma - US OR Oregon - US PA Pennsylvania - US PR Puerto Rico - US PW Palau - US RI Rhode Island - US SC South Carolina - US SD South Dakota - US TN Tennessee - US TX Texas - US UT Utah - US VA Virginia - US VI Virgin Islands - US VT Vermont - US WA Washington - US WI Wisconsin - US WY Wyoming diff --git a/dist/simple/products/transactions.txt b/dist/simple/products/transactions.txt deleted file mode 100644 index e3078e146..000000000 --- a/dist/simple/products/transactions.txt +++ /dev/null @@ -1 +0,0 @@ -code store_id order_number session username shipmode nitems subtotal shipping handling salestax total_cost fname lname company address1 address2 city state zip country phone_day phone_night fax email b_fname b_lname b_company b_address1 b_address2 b_city b_state b_zip b_country b_phone order_date order_ymd order_wday payment_method po_number avs order_id update_date status affiliate campaign parent archived deleted complete comments diff --git a/dist/simple/products/ups_zone.asc b/dist/simple/products/ups_zone.asc deleted file mode 100644 index 63d16e197..000000000 --- a/dist/simple/products/ups_zone.asc +++ /dev/null @@ -1,153 +0,0 @@ -"ZONE CHART" -"UPS Ground/UPS 3 Day Select/UPS 2nd Day Air/UPS 2nd Day Air A.M./UPS Next Day Air Saver/UPS Next Day Air" - -"For shipments originating in ZIP Codes 450-01 to 452-99. To determine zone" -"take the first three digits of the receiver's ZIP Code and refer to the chart below:" - -"ZONES" -Dest. ZIP,Ground,3 Day Select,2nd Day Air,2nd Day Air A.M.,Next Day Air Saver,Next Day Air - -004-005,4,304,204,244,134,104 -006-007,-,-,225,-,-,125 -008,-,-,[1],-,-,[1] -009,-,-,225,-,-,125 -010-067,5,305,205,245,135,105 -068-089,4,304,204,244,134,104 -090-099,-,-,-,-,-,- -100-118,4,304,204,244,134,104 -119-123,5,305,205,245,135,105 -124-127,4,304,204,244,134,104 -128-129,5,305,205,245,135,105 -130-149,4,304,204,244,134,104 -150-157,3,303,203,243,133,103 -158-159,4,304,204,244,134,104 -160-165,3,303,203,243,133,103 -166-199,4,304,204,244,134,104 -200-239,4,304,204,244,134,104 -240-244,3,303,203,243,133,103 -245,4,304,204,244,134,104 -246-253,3,303,203,243,133,103 -254,4,304,204,244,134,104 -255-257,2,302,202,242,132,102 -258-260,3,303,203,243,133,103 -261,2,302,202,242,132,102 -262-266,3,303,203,243,133,103 -267,4,304,204,244,134,104 -268,3,303,203,-,-,103 -270,4,304,204,244,134,104 -271,3,303,203,243,133,103 -272-285,4,304,204,244,134,104 -286-289,3,303,203,243,133,103 -290-299,4,304,204,244,134,104 -300-306,4,304,204,244,134,104 -307,3,303,203,243,133,103 -308-319,4,304,204,244,134,104 -320-339,5,305,205,245,135,105 -340,-,-,-,-,-,- -341-349,5,305,205,245,135,105 -350-369,4,304,204,244,134,104 -370-374,3,303,203,243,133,103 -375,4,304,204,-,-,104 -376-379,3,303,203,243,133,103 -380-381,4,304,204,244,134,104 -382,3,303,203,243,133,103 -383,4,304,204,244,134,104 -384-385,3,303,203,243,133,103 -386-394,4,304,204,244,134,104 -395,5,305,205,245,135,105 -396-399,4,304,204,244,134,104 -400-406,2,302,202,242,132,102 -407-409,3,303,203,-,133,103 -410-414,2,302,202,242,132,102 -415-416,3,303,203,-,133,103 -417-418,2,302,202,242,132,102 -420-422,3,303,203,243,133,103 -423,2,302,202,242,132,102 -424,3,303,203,243,133,103 -425-433,2,302,202,242,132,102 -434-436,3,303,203,243,133,103 -437-438,2,302,202,242,132,102 -439-447,3,303,203,243,133,103 -448-462,2,302,202,242,132,102 -463-466,3,303,203,243,133,103 -467-475,2,302,202,242,132,102 -476-477,3,303,203,243,133,103 -478-479,2,302,202,242,132,102 -480-495,3,303,203,243,133,103 -496-499,4,304,204,244,134,104 -500-509,4,304,204,244,134,104 -510-512,5,305,205,245,135,105 -513-528,4,304,204,244,134,104 -530-534,3,303,203,243,133,103 -535-555,4,304,204,244,134,104 -556-558,5,305,205,245,135,105 -559-560,4,304,204,244,134,104 -561-585,5,305,205,245,135,105 -586-593,6,306,206,246,136,106 -594,7,307,207,247,137,107 -595,6,306,206,-,-,106 -596-599,7,307,207,247,137,107 -600-611,3,303,203,243,133,103 -612,4,304,204,244,134,104 -613-622,3,303,203,243,133,103 -623,4,304,204,244,134,104 -624-633,3,303,203,243,133,103 -634-636,4,304,204,244,134,104 -637,3,303,203,243,133,103 -638-667,4,304,204,244,134,104 -668-672,5,305,205,245,135,105 -673,4,304,204,244,134,104 -674-693,5,305,205,245,135,105 -700-711,5,305,205,245,135,105 -712,4,304,204,244,134,104 -713-714,5,305,205,245,135,105 -716-717,4,304,204,244,134,104 -718,5,305,205,245,135,105 -719-729,4,304,204,244,134,104 -730-742,5,305,205,245,135,105 -743,4,304,204,244,134,104 -744-748,5,305,205,245,135,105 -749,4,304,204,-,134,104 -750-768,5,305,205,245,135,105 -769,6,306,206,246,136,106 -770-779,5,305,205,245,135,105 -780-785,6,306,206,246,136,106 -786-787,5,305,205,245,135,105 -788,6,306,206,246,136,106 -789-796,5,305,205,245,135,105 -797-799,6,306,206,246,136,106 -800-806,6,306,206,246,136,106 -807,5,305,205,245,135,105 -808-831,6,306,206,246,136,106 -832-844,7,307,207,247,137,107 -845,6,306,206,-,-,106 -846-864,7,307,207,247,137,107 -865-885,6,306,206,246,136,106 -889-893,7,307,207,247,137,107 -894-897,8,308,208,248,138,108 -898,7,307,207,-,-,107 -900-921,8,308,208,248,138,108 -922,7,307,207,247,137,107 -923-961,8,308,208,248,138,108 -962-966,-,-,-,-,-,- -967-968,-,-,[2],-,-,[2] -969,-,-,[1],-,-,[1] -970-977,8,308,208,248,138,108 -978-979,7,307,207,-,137,107 -980-989,8,308,208,248,138,108 -990-994,7,307,207,247,137,107 -995-999,-,-,[3],-,-,[3] -,,,,,, - - -"[1] For Virgin Islands, Guam, Marshall Islands, etc., please refer to the Worldwide Rate and Zone information." - -"[2] For Hawaii, the following Postal Codes are Zone 124 for Next Day Air and Zone 224 for 2nd Day Air:" -96701,96706,96707,96709,96712,96717,96730,96731,96734,96744,96759,96762,96782,96786,96789,96791,96792,96795,96797,96801,96802,96803,96804,96805,96806,96807,96808,96809,96810,96811,96812,96813,96814,96815,96816,96817,96818,96819,96820,96821,96822,96823,96824,96825,96826,96827,96828,96830,96835,96836,96837,96838,96839,96840,96841,96842,96843,96844,96845,96846,96847,96848,96849,96850,96853,96854,96857,96858,96859,96860,96861,96862,96863,96898 -"For Hawaii, the following Postal Codes are Zone 126 for Next Day Air and Zone 226 for 2nd Day Air:" -96703,96704,96705,96708,96710,96713,96714,96715,96716,96718,96719,96720,96721,96722,96725,96726,96727,96728,96729,96732,96733,96737,96738,96739,96740,96741,96742,96743,96745,96746,96747,96748,96749,96750,96751,96752,96753,96754,96755,96756,96757,96760,96761,96763,96764,96765,96766,96767,96768,96769,96770,96771,96772,96773,96774,96775,96776,96777,96778,96779,96780,96781,96783,96784,96785,96788,96790,96793,96796 - -"[3] For Alaska, the following Postal Codes are Zone 124 for Next Day Air and Zone 224 for 2nd Day Air:" -99501,99502,99503,99504,99505,99506,99507,99508,99509,99510,99511,99512,99513,99514,99515,99516,99517,99518,99519,99520,99521,99522,99523,99524,99540,99556,99567,99568,99572,99577,99587,99603,99605,99610,99611,99631,99635,99639,99645,99654,99664,99669,99672,99687,99701,99702,99703,99705,99706,99707,99708,99709,99710,99711,99712,99775 -"For Alaska, the following Postal Codes are Zone 126 for Next Day Air and Zone 226 for 2nd Day Air:" -99547,99548,99549,99550,99551,99552,99553,99554,99555,99557,99558,99559,99561,99563,99564,99565,99566,99569,99571,99573,99574,99575,99576,99578,99579,99580,99581,99583,99584,99585,99586,99588,99589,99590,99591,99602,99604,99606,99607,99608,99609,99612,99613,99614,99615,99619,99620,99621,99622,99624,99625,99626,99627,99628,99630,99632,99633,99634,99636,99637,99638,99640,99641,99643,99644,99647,99648,99649,99650,99651,99652,99653,99655,99656,99657,99658,99659,99660,99661,99662,99663,99665,99666,99667,99668,99670,99671,99674,99675,99676,99677,99678,99679,99680,99681,99682,99683,99684,99685,99686,99688,99689,99690,99691,99692,99693,99694,99695,99697,99704,99714,99716,99720,99721,99722,99723,99724,99725,99726,99727,99729,99730,99732,99733,99734,99736,99737,99738,99739,99740,99741,99742,99743,99744,99745,99746,99747,99748,99749,99750,99751,99752,99753,99754,99755,99756,99757,99758,99759,99760,99761,99762,99763,99764,99765,99766,99767,99768,99769,99770,99771,99772,99773,99774,99776,99777,99778,99779,99780,99781,99782,99783,99784,99785,99786,99788,99789,99790,99791,99801,99802,99803,99811,99820,99821,99824,99825,99826,99827,99829,99830,99832,99833,99835,99836,99840,99841,99850,99901,99903,99918,99919,99921,99922,99923,99925,99926,99927,99928,99929,99950 diff --git a/dist/simple/products/userdb.txt b/dist/simple/products/userdb.txt deleted file mode 100644 index 30221015b..000000000 --- a/dist/simple/products/userdb.txt +++ /dev/null @@ -1,2 +0,0 @@ -username password acl mod_time s_nickname company fname lname address1 address2 address3 city state zip country phone_day mv_shipmode b_nickname b_fname b_lname b_address1 b_address2 b_address3 b_city b_state b_zip b_country b_phone mv_credit_card_type mv_credit_card_exp_month mv_credit_card_exp_year p_nickname email fax phone_night fax_order address_book accounts preferences carts owner file_acl db_acl order_numbers email_copy mail_list project_id account_id order_dest credit_limit inactive -test test current Papa Bear Little Cottage The Forest IL 61821 US 513.555.5555 GNDCOM Little Cottage The Forest IL 61821 visa 3 02 papabear@minivend.com 0 {'dad' => {'city' => 'The Forest','state' => 'IL','fname' => 'Papa','lname' => 'Bear','mv_shipmode' => 'upsg','zip' => ' 61821','country' => 'US','address1' => 'TESTING','phone_day' => '217.555.5555'},'mom' => {'city' => 'The Forest','state' => 'IL','fname' => 'Mama','lname' => 'Bear','mv_shipmode' => 'upsb','zip' => '61821','country' => 'US','address1' => 'Little Cottage','phone_day' => '217.555.5555'},'baby' => {'fname' => 'Baby','lname' => 'Bear','state' => 'OH','zip' => '45056','country' => 'US','address1' => 'Cold Cruel World','phone_day' => '513.555.5555','city' => 'Big City','mv_shipmode' => 'upsr'}} 1 diff --git a/dist/simple/products/variable.txt b/dist/simple/products/variable.txt deleted file mode 100644 index 8cc3e216d..000000000 --- a/dist/simple/products/variable.txt +++ /dev/null @@ -1,59 +0,0 @@ -code Variable pref_group -ADDRESS __MVC_ADDRESS__ Company -CATALOG_STATIC No Static pages -CGI_URL __MVC_CGIURL__ Directories and Paths -CHECK_ACCEPTED 1 Payment -CITY __MVC_CITY__ Company -COD_ACCEPTED 0 Payment -COMPANY __MVC_COMPANY__ Company -CREDIT_CARDS_ACCEPTED visa mc discover amex Payment -DOCROOT __MVC_DOCUMENTROOT__ Directories and Paths -ENCRYPTOR none Payment -FAX __MVC_FAX__ Company -IMAGE_DIR __MVC_IMAGEURL__ Directories and Paths -LOGO __MVC_LOGO__ Template -LOGGED_STATIC 1 Static pages -MULTIORDER __MVC_MULTIORDER__ Order -MYSQL __MVC_MYSQL__ Database -ORDERS_TO __MVC_MAILORDERTO__ Order -ORDER_ROUTES log main copy_user Order -PGSQL __MVC_PGSQL__ Database -PHONE __MVC_PHONE__ Company -PO_ACCEPTED 0 Payment -SAMPLEHTML __MVC_SAMPLEHTML__ Directories and Paths -SAMPLEURL __MVC_SAMPLEURL__ Directories and Paths -SECURE_SERVER http://__MVC_SERVERNAME__ Directories and Paths -SERVER_NAME __MVC_SERVERNAME__ Directories and Paths -SMLOGO __MVC_SMLOGO__ Template -SOMESQL __MVC_MYSQL____MVC_PGSQL__ Database -SQLPASS Database -SQLUSER Database -TAXAREA __MVC_TAXAREA__ Tax -TAXFIELD state Tax -TAXRATE __MVC_TAXRATE__ Tax -TAXSHIPPING __MVC_TAXSHIPPING__ Tax -TEMPLATE __MVC_TEMPLATE__ Template -TOLLFREE __MVC_TOLLFREE__ Company -UI_BOTTOMIMG poweredby.gif Admin layout -UI_C_ALINK #000000 Admin colors -UI_C_BG #FFFFFF Admin colors -UI_C_HEADERTXT #333333 Admin colors -UI_C_INTBLOCKBAR #999966 Admin colors -UI_C_INTBLOCK #CCCC99 Admin colors -UI_C_LINK #000000 Admin colors -UI_C_TITLEBARBG #336699 Admin colors -UI_C_TITLEBARTXT #CCCCCC Admin colors -UI_C_TOPBLOCKBAR #336699 Admin colors -UI_C_VLINK #000000 Admin colors -UI_IMG __MVC_SHAREURL__/akopia/ui/ Admin control -UI_ITEM_FIELDS description image thumb comment size color sku price weight category Item display -UI_ITEM_EXPUNGE products pricing inventory merchandising Item display -UI_LEFT_WIDTH 150 Admin layout -UI_META_LINK 1 Admin control -UI_OVERALL_WIDTH 750 Admin layout -UI_RIGHT_WIDTH 450 Admin layout -UI_T_BG beige Admin colors -UI_TRAFFIC_STATS __MVC_CATROOT__/logs/usertrack Directories and Paths -UPS_COUNTRY_FIELD country Shipping -UPS_ORIGIN __MVC_UPSORIGIN__ Shipping -UPS_POSTCODE_FIELD zip Shipping diff --git a/dist/simple/session/.empty b/dist/simple/session/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/simple/session/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/simple/special_pages/badsearch.html b/dist/simple/special_pages/badsearch.html deleted file mode 100644 index 225011a4f..000000000 --- a/dist/simple/special_pages/badsearch.html +++ /dev/null @@ -1,14 +0,0 @@ -[set page_title]Bad search specification[/set] -__LOGOBAR__ -__MENUBAR__ - -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - - -The search could not be done. The problem was: -

    -[subject] - -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/special_pages/canceled.html b/dist/simple/special_pages/canceled.html deleted file mode 100644 index 40ddf9924..000000000 --- a/dist/simple/special_pages/canceled.html +++ /dev/null @@ -1,17 +0,0 @@ -[set page_title] -Account Information Erased -[/set] -__LOGOBAR__ -__MENUBAR__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -Your session information has been canceled. -

    -If you wish to order another item, we would like you to do so, but -unfortunately you will have to re-enter any account information. -

    -We hope you will ordering from us in the future. -

    -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/special_pages/cc_not_valid.html b/dist/simple/special_pages/cc_not_valid.html deleted file mode 100644 index c2b75a784..000000000 --- a/dist/simple/special_pages/cc_not_valid.html +++ /dev/null @@ -1,20 +0,0 @@ -[set page_title] -Credit Card number fails test -[/set] -__LOGOBAR__ -__MENUBAR__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] -

    - The following error was seen: -

    -	[value mv_credit_card_error]
    -
    - Please go BACK and check the information you entered and see - that the correct card type, expiration date, and number are - entered.

    - -

    - -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/special_pages/confirmation.html b/dist/simple/special_pages/confirmation.html deleted file mode 100644 index 0419b3469..000000000 --- a/dist/simple/special_pages/confirmation.html +++ /dev/null @@ -1,14 +0,0 @@ -[set page_title] -Order Processed -- Thank You! -[/set] -__LOGOBAR__ -__MENUBAR__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] -

    -Your order has been sent, and -you will receive an order confirmation via email.

    -

    -Thank you for ordering from us! -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/special_pages/failed.html b/dist/simple/special_pages/failed.html deleted file mode 100644 index 7a0542552..000000000 --- a/dist/simple/special_pages/failed.html +++ /dev/null @@ -1,20 +0,0 @@ -[set page_title]Order Failed[/set] -__LOGOBAR__ -__MENUBAR__ - -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -[if type=explicit compare="q{[subject]}"] -

    -[subject]
    -
    -[else] -We're sorry, but your order could not be processed at this time due to -technical problems. Please print the order page and give us a call. -We will follow up as soon as possible. -[/else] -[/if] -

    -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/special_pages/interact.html b/dist/simple/special_pages/interact.html deleted file mode 100644 index 977885530..000000000 --- a/dist/simple/special_pages/interact.html +++ /dev/null @@ -1,60 +0,0 @@ -[set page_title] -Interaction error -[/set] -__LOGOBAR__ -__MENUBAR__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -Something has gone wrong, and we did not receive the response we -expected from your browser. There was the following problem: -

    -[message] -

    -Note on common causes of this problem:

    -

      -
    • - If you bookmarked a shopping cart after it had been recalculated - (or if the item was ordered from a form submission), then the system may - not have been able to determine where it should go. If that is - the case, [page __ORDER_STYLE__/basket]check your shopping basket. -

      -

    • - Some Internet Service Providers who use proxy servers - send you to a secure page from a different net location - (AOL is an example). - If your browser does not accept - cookies, - then this software may not be able to determine your session - number -- it qualifies your session with your location for - security. -

      - If you go back to a previous page and RELOAD with cookies enabled, - then this condition should be corrected. You can verify that we - send a proper cookie if you turn on the cookie warning feature of your - browser. Typically, we will save cookies only if you check a box - that asks us to save your information. -

      - You can also try looking at the checkout page non-securely, - though we don't recommend you send sensitive information like - a credit card number without encryption. -

      -[set name="Go to non-secure checkout"] -[/set] -

      - - - -
      -

      -

    • - If you pressed the STOP button before the last form finished loading, - there may have been an incomplete form. -

      -

    -

    -If you wish, you can also return to the [page index]catalog[/page]. - -

    -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/special_pages/missing.html b/dist/simple/special_pages/missing.html deleted file mode 100644 index 2cfbbcd99..000000000 --- a/dist/simple/special_pages/missing.html +++ /dev/null @@ -1,15 +0,0 @@ -[set page_title] -Sorry, the page (@@MV_PREV_PAGE@@) was not found -[/set] -__LOGOBAR__ -__MENUBAR__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -The requested item ([subject]) was not found. -You can [page index]return to browsing our -catalog[/page], if you wish. - -

    -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/special_pages/needfield.html b/dist/simple/special_pages/needfield.html deleted file mode 100644 index 989b65558..000000000 --- a/dist/simple/special_pages/needfield.html +++ /dev/null @@ -1,47 +0,0 @@ -[set page_title] -We need some more information! -[/set] -__LOGOBAR__ -__MENUBAR__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -We need to have some fields entered to be able -to process your order. Please [page __ORDER_STYLE__/checkout]go back and fill out -the information. -

    -Problem: -

    -[perl] - my $msg = q{[subject]}; - sub redo_message { - my($param,$word) = @_; - if($param =~ /mv_credit/) { - "

  • You need to validate your credit card information.\n"; - } - elsif ($word =~ /not_a_state/i) { - return "
  • We need a valid two-letter state code like CA.\n"; - } - elsif ($word =~ /phone_day=/i) { - return "
  • Is that really a phone number?\n"; - } - elsif ($word =~ /not_a_zip_code/i) { - return "
  • We need a zip code for UPS lookup.\n"; - } - elsif ($word =~ /mv_contingent/) { - return "
  • You need to select your method of payment.\n"; - } - else { return "
  • $param: $word\n" } - } - @msg = split /\n/, $msg; - $msg = '
      '; - for(@msg) { - ($var, $val) = split /:\s*/, $_; - $msg .= redo_message($var, $val); - } - $msg .= '
    '; - $msg; -[/perl] -

    -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/special_pages/nomatch.html b/dist/simple/special_pages/nomatch.html deleted file mode 100644 index 5d88e6d30..000000000 --- a/dist/simple/special_pages/nomatch.html +++ /dev/null @@ -1,12 +0,0 @@ -[set page_title] -No Match for [subject] -[/set] -__LOGOBAR__ -__MENUBAR__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -There were no matches found. -

    -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/special_pages/noproduct.html b/dist/simple/special_pages/noproduct.html deleted file mode 100644 index 4b87e4b7a..000000000 --- a/dist/simple/special_pages/noproduct.html +++ /dev/null @@ -1,15 +0,0 @@ -[set page_title] -Requested Product Unavailable -[/set] -__LOGOBAR__ -__MENUBAR__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -We are sorry, but the product ([subject]) that you requested is -not now available. You can still [page index]browse our -catalog[/page], if you wish. - -

    -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/special_pages/notfound.html b/dist/simple/special_pages/notfound.html deleted file mode 100644 index d404f7d60..000000000 --- a/dist/simple/special_pages/notfound.html +++ /dev/null @@ -1,14 +0,0 @@ -[set page_title] -Not Found -[/set] -__LOGOBAR__ -__MENUBAR__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -No items with '[subject]' were found. You can [page index]return to -browsing our catalog[/page], if you wish. - -

    -__MENUBAR__ -__COPYRIGHT__ - diff --git a/dist/simple/special_pages/order_security.html b/dist/simple/special_pages/order_security.html deleted file mode 100644 index 66b7d46a1..000000000 --- a/dist/simple/special_pages/order_security.html +++ /dev/null @@ -1,24 +0,0 @@ -[set page_title] -SECURITY PROBLEM -[/set] -__LOGOBAR__ -__MENUBAR__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -Either this web server did not receive the last transaction via -SSL/HTTPS, or your browser doesn't handle SSL. -

    -We recommend you do not leave any critical information -until this situation is corrected. You can CANCEL your -session below to wipe all information, or return to the -catalog with the buttonbar. -

    -

    - - -
    - -

    -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/special_pages/reconfig.html b/dist/simple/special_pages/reconfig.html deleted file mode 100644 index 8e71b6683..000000000 --- a/dist/simple/special_pages/reconfig.html +++ /dev/null @@ -1,12 +0,0 @@ -[set page_title] -Catalog Reconfigured -[/set] -__LOGOBAR__ -__MENUBAR__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -The catalog should be successfully reconfigured. -

    -__MENUBAR__ -__COPYRIGHT__ - diff --git a/dist/simple/special_pages/sec_faq.html b/dist/simple/special_pages/sec_faq.html deleted file mode 100644 index 5dc303cf0..000000000 --- a/dist/simple/special_pages/sec_faq.html +++ /dev/null @@ -1,138 +0,0 @@ - - - - Interchange Security FAQ - - - -

    Interchange Security FAQ

    - - -(with thanks to Lincoln Stein, and the WWW Security FAQ) - -

    -Press BACK to return to the form -

    - -Q: My Netscape browser is displaying a form for ordering merchandise -from a department store that I trust. The little key at the lower -left-hand corner of the Netscape window is solid and -has two teeth. This means I can safely submit my -credit card number, right? -

    -Not quite. A solid key with two teeth appears indicates that SSL is -being used with a 128-bit secret key and that the remote host owns a -valid server certificate that was certified by some authority that -Netscape recognizes. At this point, however, you don't know who that -certificate belongs to. It's possible that someone has bought or stolen -a server certificate and then diverted network traffic destined for the -department store by subverting a router somewhere between you and the -store. The only way to make sure that you're talking to the company you -think you're talking to is to open up the "Document Information" window -(from the File menu) and examine the server certificate. If the host and -organization names that appear there match the company you expect, then -you're probably safe to submit the form. If something unexpected appears -there (like "Embezzlers R Us") you might want to call the department -store's 800 number. -


    - -Q: How secure is the encryption used by SSL? - -

    - -SSL uses public-key encryption to exchange a session key between the -client and server; this session key is used to encrypt the http -transaction (both request and response). Each transaction uses a -different session key so that if someone manages to decrypt a -transaction, that does not mean that they've found the server's secret -key; if they want to decrypt another transaction, they'll need to spend -as much time and effort on the second transaction as they did on the -first. -

    -Netscape servers and browsers do encryption using either a 40-bit secret -key or a 128-bit secret key. Many people feel that using a 40-bit key is -insecure because it's vulnerable to a "brute force" attack (trying each -of the 2^40 possible keys until you find the one that decrypts the -message). Using a 128-bit key eleiminates this problem because there are -2^128 instead of 2^40 possible keys. Unfortunately, most Netscape users -have browsers that support only 40-bit secret keys. This is because of -legal restrictions on the encryption software that can be exported from -the United States (The Federal Government has recently modified this -policy on following the well-publicized cracking of a Netscape message -encrypted using a 40-bit key. Expect this situation to change).

    -In Netscape you can tell what kind of encryption is in use for a particular -document by looking at the "document" information" screen accessible -from the file menu. The little key in the lower left-hand corner of the -Netscape window also indicates this information. A solid key with two -teeth means 128-bit encryption, a solid key with one tooth means 40-bit -encryption, and a broken key means no encryption. Even if your browser -supports 128-bit encryption, it mayse use 40-bit encryption when talking -to older Netscape servers or Netscape servers outside the U.S. and -Canada. -

    -


    -Q: My friend says that none of this stuff is safe. What -should I believe? -

    -When credit cards first came out in the late 1960s, the cardholder was -liable for all losses occurring as a result of a stolen card. The -credit card companies soon discovered that fear of large losses prevented -people from using or keeping the cards. For a long time now, you have -been liable (in most states) for at most $50 of loss as a result of -credit card fraud. -

    -Using your credit card on the Internet is no different than giving it to -a restaurant. The presence of a warning-free SSL security system -ensures that the company you are dealing with has passed background -checks -- just like the presence of a Verifone credit-card checking device -gives a good indication that the restaurant can actually accept credit -cards. Look for a server certified by Verisign, Thawte, or another -well-known certifying agency. If a server's SSL certificate is so signed, -you have done your job to verify authenticity. -

    -We don't recommend that you send your credit card number un-encrypted -over the Internet. Just like you know not to give your card number to -anyone who calls you -- you make sure you know who you are talking to -first -- you shouldn't send your card number over the Internet until -you are certain that the company you are dealing with has made the effort -to ensure security. Presence of a warning-free SSL security system -indicates that rather considerable effort has been made. Look for the -lock, key, or blue line, and you should be safe. -


    -Q: Yes, all that is fine, but what about your software? Won't -the number stick around on the disk forever? -

    -The SSL encryption will take care of network transmission. But we -don't want to make it easy for just anybody, even those with access -to our system, to view your number. When Interchange is properly set -up, the number is encrypted with PGP encryption before ever being -written to a file. -

    -First of all, after you enter your number, it is kept in memory only until -until it is encrypted. At that time, it is scrubbed from the program's -memory. The now-encrypted card number (with the password only known -to our order entry personnel) is then written to a file with -permissions set so only the program can get at it. -

    -This behavior will be followed by the Interchange program as long as -the number is placed in a field named mv_credit_card_number --- you can view the source of the order form to ensure that. -

    -If you have entered your credit card number and decide not to -submit your order, the encrypted number will remain on disk for -no more than one day. At that time, the sessions on the system that are -older than one day will be expired, after any encrypted -credit_card_no fields are overwritten with meaningless data, and -removed from the session database. -

    -If you wish, you can press the button on the order form which is labeled -CANCEL, and the encrypted information will be wiped immediately. -

    -If you would like more details, please send mail to the -webmaster. -

    -__MENUBOTTOM__ -__COPYRIGHT__ - - - diff --git a/dist/simple/special_pages/security.html b/dist/simple/special_pages/security.html deleted file mode 100644 index 921d03057..000000000 --- a/dist/simple/special_pages/security.html +++ /dev/null @@ -1,32 +0,0 @@ -[set page_title] -How Secure is This Stuff? -[/set] -__LOGOBAR__ -__MENUBAR__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] -Interchange is designed to securely transmit your information -via SSL or SHTTP. Examine the browser status indication, and if -you see an indication that this transaction is secure, -(on Netscape it is an unbroken key in the lower left-hand corner), you -can be assured that your vital information is securely encrypted as it flies -over the Internet. -

    -How do you know it is secure? Reference the -WWW Security FAQ, -VeriSign FAQ, -or [page help/sec_faq]our own FAQ[/page] -and determine if you are comfortable with leaving your credit card -number. -

    -That being said, please feel free to leave your account information -below. Your credit card number, if you decide to leave it, will only -be used to process your order, and will not be sent by email, even -on our local machine. It will be encrypted, only read by our order entry -software, and then wiped from the disk file as soon as that is done. -

    - Click BACK to return to Account Information Form -

    -__MENUBOTTOM__ -__COPYRIGHT__ - - diff --git a/dist/simple/special_pages/violation.html b/dist/simple/special_pages/violation.html deleted file mode 100644 index a2f317ca4..000000000 --- a/dist/simple/special_pages/violation.html +++ /dev/null @@ -1,72 +0,0 @@ -[set page_title] -Access denied -[/set] -__LOGOBAR__ -__MENUBAR__ -[title-bar color="__CONTRAST__"][scratch page_title][/title-bar] - -

    You have accessed a page that requires authorization.

    - -[if session logged_in] -[then] - -[set [L]Log out[/L]] -mv_todo=return -mv_nextpage=@@MV_PREV_PAGE@@ -[userdb function=logout options="clear=yes"] -[/set] - - -
    -
    - [L]Hi[/L] [value name]! [L]You are logged in as user[/L] [value mv_username]. -    -
    -
    - - -
    -
    -
    -
    - - -[/then] -[else] - -[set Login] -mv_todo=return -mv_nextpage=@@MV_PREV_PAGE@@ -[userdb login] -[/set] -

    -[if session failure] -[data session failure] -[/if] -

    -

    - - - - - - - - - -
    [L]Username[/L] - [page new_account][L]Create a new account[/L] -
    [L]Password[/L] -    -
    - -
    - -[/else][/if] - -

    -__MENUBOTTOM__ -__COPYRIGHT__ - diff --git a/dist/simple/templates/standalone b/dist/simple/templates/standalone deleted file mode 100644 index 6b4aa2792..000000000 --- a/dist/simple/templates/standalone +++ /dev/null @@ -1,12 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standalone -ui_template_layout: LOGOBAR, MENUBAR, UI_CONTENT, MENUBOTTOM, COPYRIGHT -ui_template_description: Page with top/bottom menus only. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title][set] -[set members_only][set] diff --git a/dist/simple/templates/standard b/dist/simple/templates/standard deleted file mode 100644 index 9e73504ce..000000000 --- a/dist/simple/templates/standard +++ /dev/null @@ -1,12 +0,0 @@ -[comment] -ui_template: Yes -ui_template_name: standard -ui_template_layout: LOGOBAR, MENUBAR, LEFTSIDE, UI_CONTENT, NO_RIGHT, MENUBOTTOM, COPYRIGHT -ui_template_description: Standard page with top and left areas. Menu bar and copyright at bottom. -ui_control_element: page_title : -ui_control_element: members_only : 0=No,1=Yes -ui_control_description: page_title : Page title -ui_control_description: members_only : Members only -[/comment] -[set page_title][set] -[set members_only][set] diff --git a/dist/simple/tmp/.empty b/dist/simple/tmp/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/simple/tmp/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/simple/upload/.empty b/dist/simple/upload/.empty deleted file mode 100644 index 8b1378917..000000000 --- a/dist/simple/upload/.empty +++ /dev/null @@ -1 +0,0 @@ - diff --git a/dist/src/compile.pl b/dist/src/compile.pl deleted file mode 100755 index 7b94b284d..000000000 --- a/dist/src/compile.pl +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/perl - -do 'syscfg'; -system "$CC $CFLAGS $DEFS $LIBS tlink.c -o ../bin/tlink"; -system "$CC $CFLAGS $DEFS $LIBS vlink.c -o ../bin/vlink"; diff --git a/dist/src/config.h.in b/dist/src/config.h.in deleted file mode 100644 index 2ccdc8a56..000000000 --- a/dist/src/config.h.in +++ /dev/null @@ -1,45 +0,0 @@ -/* config.h.in. Generated automatically from configure.in by autoheader. */ - -/* Define as the return type of signal handlers (int or void). */ -#undef RETSIGTYPE - -/* Define if environ is declared in unistd.h */ -#undef ENVIRON_DECLARED - -/* Define if you have the strerror function. */ -#undef HAVE_STRERROR - -/* Define if you have the socket library (-lsocket). */ -#undef HAVE_LIBSOCKET - -/* Define if you have the DNS functions library (-lnsl). */ -#undef HAVE_LIBNSL - -/* The following symbols should be defined: - * - * LINK_FILE (vlink.c) - * Location of the unix socket file for communication with the server. - * This must be in the local filesystem, not an NFS mounted one. The - * configure script will normally set this for you. - * - * LINK_TIMEOUT (both tlink.c and vlink.c - * Define timeout in seconds to wait for the server to start listening - * on the socket. - * - * LINK_HOST (tlink.c) - * Name of the host we are connecting to - * - * LINK_PORT (tlink.c) - * Number of the port we will use - * - */ - -#define LINK_FILE "~@~INSTALLARCHLIB~@~/etc/socket" -/*#define LINK_FILE "~_~LINK_FILE~_~"*/ -#define LINK_HOST "127.0.0.1" -/*#define LINK_HOST "~_~LINK_HOST~_~"*/ -#define LINK_PORT 7786 -/*#define LINK_PORT ~_~LINK_PORT~_~*/ -#define LINK_TIMEOUT 30 -/*#define LINK_TIMEOUT ~_~LINK_TIMEOUT~_~*/ - diff --git a/dist/src/configure b/dist/src/configure deleted file mode 100755 index 305afeb49..000000000 --- a/dist/src/configure +++ /dev/null @@ -1,1265 +0,0 @@ -#! /bin/sh - -# Guess values for system-dependent variables and create Makefiles. -# Generated automatically using autoconf version 2.12 -# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. -# -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. - -# Defaults: -ac_help= -ac_default_prefix=/usr/local -# Any additions from configure.in: - -# Initialize some variables set by options. -# The variables have the same names as the options, with -# dashes changed to underlines. -build=NONE -cache_file=./config.cache -exec_prefix=NONE -host=NONE -no_create= -nonopt=NONE -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -target=NONE -verbose= -x_includes=NONE -x_libraries=NONE -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datadir='${prefix}/share' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -libdir='${exec_prefix}/lib' -includedir='${prefix}/include' -oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' - -# Initialize some other variables. -subdirs= -MFLAGS= MAKEFLAGS= -# Maximum number of lines to put in a shell here document. -ac_max_here_lines=12 - -ac_prev= -for ac_option -do - - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" - ac_prev= - continue - fi - - case "$ac_option" in - -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; - *) ac_optarg= ;; - esac - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case "$ac_option" in - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir="$ac_optarg" ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build="$ac_optarg" ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file="$ac_optarg" ;; - - -datadir | --datadir | --datadi | --datad | --data | --dat | --da) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ - | --da=*) - datadir="$ac_optarg" ;; - - -disable-* | --disable-*) - ac_feature=`echo $ac_option|sed -e 's/-*disable-//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then - { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } - fi - ac_feature=`echo $ac_feature| sed 's/-/_/g'` - eval "enable_${ac_feature}=no" ;; - - -enable-* | --enable-*) - ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then - { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } - fi - ac_feature=`echo $ac_feature| sed 's/-/_/g'` - case "$ac_option" in - *=*) ;; - *) ac_optarg=yes ;; - esac - eval "enable_${ac_feature}='$ac_optarg'" ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix="$ac_optarg" ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he) - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat << EOF -Usage: configure [options] [host] -Options: [defaults in brackets after descriptions] -Configuration: - --cache-file=FILE cache test results in FILE - --help print this message - --no-create do not create output files - --quiet, --silent do not print \`checking...' messages - --version print the version of autoconf that created configure -Directory and file names: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [same as prefix] - --bindir=DIR user executables in DIR [EPREFIX/bin] - --sbindir=DIR system admin executables in DIR [EPREFIX/sbin] - --libexecdir=DIR program executables in DIR [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data in DIR - [PREFIX/share] - --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data in DIR - [PREFIX/com] - --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var] - --libdir=DIR object code libraries in DIR [EPREFIX/lib] - --includedir=DIR C header files in DIR [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include] - --infodir=DIR info documentation in DIR [PREFIX/info] - --mandir=DIR man documentation in DIR [PREFIX/man] - --srcdir=DIR find the sources in DIR [configure dir or ..] - --program-prefix=PREFIX prepend PREFIX to installed program names - --program-suffix=SUFFIX append SUFFIX to installed program names - --program-transform-name=PROGRAM - run sed PROGRAM on installed program names -EOF - cat << EOF -Host type: - --build=BUILD configure for building on BUILD [BUILD=HOST] - --host=HOST configure for HOST [guessed] - --target=TARGET configure for TARGET [TARGET=HOST] -Features and packages: - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --x-includes=DIR X include files are in DIR - --x-libraries=DIR X library files are in DIR -EOF - if test -n "$ac_help"; then - echo "--enable and --with options recognized:$ac_help" - fi - exit 0 ;; - - -host | --host | --hos | --ho) - ac_prev=host ;; - -host=* | --host=* | --hos=* | --ho=*) - host="$ac_optarg" ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir="$ac_optarg" ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir="$ac_optarg" ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir="$ac_optarg" ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir="$ac_optarg" ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) - localstatedir="$ac_optarg" ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir="$ac_optarg" ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir="$ac_optarg" ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix="$ac_optarg" ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix="$ac_optarg" ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix="$ac_optarg" ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name="$ac_optarg" ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir="$ac_optarg" ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir="$ac_optarg" ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site="$ac_optarg" ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir="$ac_optarg" ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir="$ac_optarg" ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target="$ac_optarg" ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers) - echo "configure generated by autoconf version 2.12" - exit 0 ;; - - -with-* | --with-*) - ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then - { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } - fi - ac_package=`echo $ac_package| sed 's/-/_/g'` - case "$ac_option" in - *=*) ;; - *) ac_optarg=yes ;; - esac - eval "with_${ac_package}='$ac_optarg'" ;; - - -without-* | --without-*) - ac_package=`echo $ac_option|sed -e 's/-*without-//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then - { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } - fi - ac_package=`echo $ac_package| sed 's/-/_/g'` - eval "with_${ac_package}=no" ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes="$ac_optarg" ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries="$ac_optarg" ;; - - -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } - ;; - - *) - if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then - echo "configure: warning: $ac_option: invalid host type" 1>&2 - fi - if test "x$nonopt" != xNONE; then - { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } - fi - nonopt="$ac_option" - ;; - - esac -done - -if test -n "$ac_prev"; then - { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } -fi - -trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 - -# File descriptor usage: -# 0 standard input -# 1 file creation -# 2 errors and warnings -# 3 some systems may open it to /dev/tty -# 4 used on the Kubota Titan -# 6 checking for... messages and results -# 5 compiler messages saved in config.log -if test "$silent" = yes; then - exec 6>/dev/null -else - exec 6>&1 -fi -exec 5>./config.log - -echo "\ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. -" 1>&5 - -# Strip out --no-create and --no-recursion so they do not pile up. -# Also quote any args containing shell metacharacters. -ac_configure_args= -for ac_arg -do - case "$ac_arg" in - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c) ;; - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) - ac_configure_args="$ac_configure_args '$ac_arg'" ;; - *) ac_configure_args="$ac_configure_args $ac_arg" ;; - esac -done - -# NLS nuisances. -# Only set these to C if already set. These must not be set unconditionally -# because not all systems understand e.g. LANG=C (notably SCO). -# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! -# Non-C LC_CTYPE values break the ctype check. -if test "${LANG+set}" = set; then LANG=C; export LANG; fi -if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi -if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi -if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo > confdefs.h - -# A filename unique to this package, relative to the directory that -# configure is in, which we can look for to find out if srcdir is correct. -ac_unique_file=vlink.c - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_prog=$0 - ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` - test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. - srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } - else - { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } - fi -fi -srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` - -# Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi -fi -for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then - echo "loading site script $ac_site_file" - . "$ac_site_file" - fi -done - -if test -r "$cache_file"; then - echo "loading cache $cache_file" - . $cache_file -else - echo "creating cache $cache_file" - > $cache_file -fi - -ac_ext=c -# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. -ac_cpp='$CPP $CPPFLAGS' -ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' -cross_compiling=$ac_cv_prog_cc_cross - -if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then - # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. - if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then - ac_n= ac_c=' -' ac_t=' ' - else - ac_n=-n ac_c= ac_t= - fi -else - ac_n= ac_c='\c' ac_t= -fi - - - - -# Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:527: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_prog_CC="gcc" - break - fi - done - IFS="$ac_save_ifs" -fi -fi -CC="$ac_cv_prog_CC" -if test -n "$CC"; then - echo "$ac_t""$CC" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:556: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - ac_prog_rejected=no - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - break - fi - done - IFS="$ac_save_ifs" -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# -gt 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - set dummy "$ac_dir/$ac_word" "$@" - shift - ac_cv_prog_CC="$@" - fi -fi -fi -fi -CC="$ac_cv_prog_CC" -if test -n "$CC"; then - echo "$ac_t""$CC" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - - test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } -fi - -echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:604: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 - -ac_ext=c -# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. -ac_cpp='$CPP $CPPFLAGS' -ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' -cross_compiling=$ac_cv_prog_cc_cross - -cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then - ac_cv_prog_cc_works=yes - # If we can't run a trivial program, we are probably using a cross compiler. - if (./conftest; exit) 2>/dev/null; then - ac_cv_prog_cc_cross=no - else - ac_cv_prog_cc_cross=yes - fi -else - echo "configure: failed program was:" >&5 - cat conftest.$ac_ext >&5 - ac_cv_prog_cc_works=no -fi -rm -fr conftest* - -echo "$ac_t""$ac_cv_prog_cc_works" 1>&6 -if test $ac_cv_prog_cc_works = no; then - { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } -fi -echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:638: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 -echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 -cross_compiling=$ac_cv_prog_cc_cross - -echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:643: checking whether we are using GNU C" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.c <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then - ac_cv_prog_gcc=yes -else - ac_cv_prog_gcc=no -fi -fi - -echo "$ac_t""$ac_cv_prog_gcc" 1>&6 - -if test $ac_cv_prog_gcc = yes; then - GCC=yes - ac_test_CFLAGS="${CFLAGS+set}" - ac_save_CFLAGS="$CFLAGS" - CFLAGS= - echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:667: checking whether ${CC-cc} accepts -g" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - echo 'void f(){}' > conftest.c -if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then - ac_cv_prog_cc_g=yes -else - ac_cv_prog_cc_g=no -fi -rm -f conftest* - -fi - -echo "$ac_t""$ac_cv_prog_cc_g" 1>&6 - if test "$ac_test_CFLAGS" = set; then - CFLAGS="$ac_save_CFLAGS" - elif test $ac_cv_prog_cc_g = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-O2" - fi -else - GCC= - test "${CFLAGS+set}" = set || CFLAGS="-g" -fi - - -echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6 -echo "configure:696: checking for socket in -lsocket" >&5 -ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'` -if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - ac_save_LIBS="$LIBS" -LIBS="-lsocket $LIBS" -cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then - rm -rf conftest* - eval "ac_cv_lib_$ac_lib_var=yes" -else - echo "configure: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - eval "ac_cv_lib_$ac_lib_var=no" -fi -rm -f conftest* -LIBS="$ac_save_LIBS" - -fi -if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then - echo "$ac_t""yes" 1>&6 - ac_tr_lib=HAVE_LIB`echo socket | sed -e 's/[^a-zA-Z0-9_]/_/g' \ - -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'` - cat >> confdefs.h <&6 -fi - -echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6 -echo "configure:743: checking for gethostbyname in -lnsl" >&5 -ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'` -if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - ac_save_LIBS="$LIBS" -LIBS="-lnsl $LIBS" -cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then - rm -rf conftest* - eval "ac_cv_lib_$ac_lib_var=yes" -else - echo "configure: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - eval "ac_cv_lib_$ac_lib_var=no" -fi -rm -f conftest* -LIBS="$ac_save_LIBS" - -fi -if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then - echo "$ac_t""yes" 1>&6 - ac_tr_lib=HAVE_LIB`echo nsl | sed -e 's/[^a-zA-Z0-9_]/_/g' \ - -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'` - cat >> confdefs.h <&6 -fi - - - -echo $ac_n "checking for environ declaration in unistd.h""... $ac_c" 1>&6 -echo "configure:792: checking for environ declaration in unistd.h" >&5 -if eval "test \"`echo '$''{'vend_cv_decl_environ'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.$ac_ext < -int main() { -char** e = environ; -; return 0; } -EOF -if { (eval echo configure:804: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - vend_cv_decl_environ=yes -else - echo "configure: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - vend_cv_decl_environ=no -fi -rm -f conftest* -fi - -echo "$ac_t""$vend_cv_decl_environ" 1>&6 -if test $vend_cv_decl_environ = yes; then - cat >> confdefs.h <<\EOF -#define ENVIRON_DECLARED 1 -EOF - -fi - -echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6 -echo "configure:825: checking return type of signal handlers" >&5 -if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.$ac_ext < -#include -#ifdef signal -#undef signal -#endif -#ifdef __cplusplus -extern "C" void (*signal (int, void (*)(int)))(int); -#else -void (*signal ()) (); -#endif - -int main() { -int i; -; return 0; } -EOF -if { (eval echo configure:847: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - ac_cv_type_signal=void -else - echo "configure: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - ac_cv_type_signal=int -fi -rm -f conftest* -fi - -echo "$ac_t""$ac_cv_type_signal" 1>&6 -cat >> confdefs.h <&6 -echo "configure:868: checking for $ac_func" >&5 -if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.$ac_ext < -/* Override any gcc2 internal prototype to avoid an error. */ -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char $ac_func(); - -int main() { - -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -choke me -#else -$ac_func(); -#endif - -; return 0; } -EOF -if { (eval echo configure:896: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then - rm -rf conftest* - eval "ac_cv_func_$ac_func=yes" -else - echo "configure: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - eval "ac_cv_func_$ac_func=no" -fi -rm -f conftest* -fi - -if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then - echo "$ac_t""yes" 1>&6 - ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` - cat >> confdefs.h <&6 -fi -done - - - -trap '' 1 2 15 -cat > confcache <<\EOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -EOF -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -(set) 2>&1 | - case `(ac_space=' '; set) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote substitution - # turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - -e "s/'/'\\\\''/g" \ - -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" - ;; - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' - ;; - esac >> confcache -if cmp -s $cache_file confcache; then - : -else - if test -w $cache_file; then - echo "updating cache $cache_file" - cat confcache > $cache_file - else - echo "not updating unwritable cache $cache_file" - fi -fi -rm -f confcache - -trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -# Any assignment to VPATH causes Sun make to only execute -# the first set of double-colon rules, so remove it if not needed. -# If there is a colon in the path, we need to keep it. -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d' -fi - -trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15 - -DEFS=-DHAVE_CONFIG_H - -# Without the "./", some shells look in PATH for config.status. -: ${CONFIG_STATUS=./config.status} - -echo creating $CONFIG_STATUS -rm -f $CONFIG_STATUS -cat > $CONFIG_STATUS </dev/null | sed 1q`: -# -# $0 $ac_configure_args -# -# Compiler output produced by configure, useful for debugging -# configure, is in ./config.log if it exists. - -ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]" -for ac_option -do - case "\$ac_option" in - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" - exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; - -version | --version | --versio | --versi | --vers | --ver | --ve | --v) - echo "$CONFIG_STATUS generated by autoconf version 2.12" - exit 0 ;; - -help | --help | --hel | --he | --h) - echo "\$ac_cs_usage"; exit 0 ;; - *) echo "\$ac_cs_usage"; exit 1 ;; - esac -done - -ac_given_srcdir=$srcdir - -trap 'rm -fr `echo "syscfg config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 -EOF -cat >> $CONFIG_STATUS < conftest.subs <<\\CEOF -$ac_vpsub -$extrasub -s%@CFLAGS@%$CFLAGS%g -s%@CPPFLAGS@%$CPPFLAGS%g -s%@CXXFLAGS@%$CXXFLAGS%g -s%@DEFS@%$DEFS%g -s%@LDFLAGS@%$LDFLAGS%g -s%@LIBS@%$LIBS%g -s%@exec_prefix@%$exec_prefix%g -s%@prefix@%$prefix%g -s%@program_transform_name@%$program_transform_name%g -s%@bindir@%$bindir%g -s%@sbindir@%$sbindir%g -s%@libexecdir@%$libexecdir%g -s%@datadir@%$datadir%g -s%@sysconfdir@%$sysconfdir%g -s%@sharedstatedir@%$sharedstatedir%g -s%@localstatedir@%$localstatedir%g -s%@libdir@%$libdir%g -s%@includedir@%$includedir%g -s%@oldincludedir@%$oldincludedir%g -s%@infodir@%$infodir%g -s%@mandir@%$mandir%g -s%@CC@%$CC%g - -CEOF -EOF - -cat >> $CONFIG_STATUS <<\EOF - -# Split the substitutions into bite-sized pieces for seds with -# small command number limits, like on Digital OSF/1 and HP-UX. -ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script. -ac_file=1 # Number of current file. -ac_beg=1 # First line for current file. -ac_end=$ac_max_sed_cmds # Line after last line for current file. -ac_more_lines=: -ac_sed_cmds="" -while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file - else - sed "${ac_end}q" conftest.subs > conftest.s$ac_file - fi - if test ! -s conftest.s$ac_file; then - ac_more_lines=false - rm -f conftest.s$ac_file - else - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f conftest.s$ac_file" - else - ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file" - fi - ac_file=`expr $ac_file + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_cmds` - fi -done -if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat -fi -EOF - -cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF -for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case "$ac_file" in - *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` - ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; - *) ac_file_in="${ac_file}.in" ;; - esac - - # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. - - # Remove last slash and all that follows it. Not all systems have dirname. - ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` - if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then - # The file is in a subdirectory. - test ! -d "$ac_dir" && mkdir "$ac_dir" - ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`" - # A "../" for each directory in $ac_dir_suffix. - ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'` - else - ac_dir_suffix= ac_dots= - fi - - case "$ac_given_srcdir" in - .) srcdir=. - if test -z "$ac_dots"; then top_srcdir=. - else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; - /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; - *) # Relative path. - srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" - top_srcdir="$ac_dots$ac_given_srcdir" ;; - esac - - - echo creating "$ac_file" - rm -f "$ac_file" - configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure." - case "$ac_file" in - *Makefile*) ac_comsub="1i\\ -# $configure_input" ;; - *) ac_comsub= ;; - esac - - ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` - sed -e "$ac_comsub -s%@configure_input@%$configure_input%g -s%@srcdir@%$srcdir%g -s%@top_srcdir@%$top_srcdir%g -" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file -fi; done -rm -f conftest.s* - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s%^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='\([ ][ ]*\)[^ ]*%\1#\2' -ac_dC='\3' -ac_dD='%g' -# ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE". -ac_uA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='\([ ]\)%\1#\2define\3' -ac_uC=' ' -ac_uD='\4%g' -# ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_eA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_eB='$%\1#\2define\3' -ac_eC=' ' -ac_eD='%g' - -if test "${CONFIG_HEADERS+set}" != set; then -EOF -cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF -fi -for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case "$ac_file" in - *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` - ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; - *) ac_file_in="${ac_file}.in" ;; - esac - - echo creating $ac_file - - rm -f conftest.frag conftest.in conftest.out - ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` - cat $ac_file_inputs > conftest.in - -EOF - -# Transform confdefs.h into a sed script conftest.vals that substitutes -# the proper values into config.h.in to produce config.h. And first: -# Protect against being on the right side of a sed subst in config.status. -# Protect against being in an unquoted here document in config.status. -rm -f conftest.vals -cat > conftest.hdr <<\EOF -s/[\\&%]/\\&/g -s%[\\$`]%\\&%g -s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD}%gp -s%ac_d%ac_u%gp -s%ac_u%ac_e%gp -EOF -sed -n -f conftest.hdr confdefs.h > conftest.vals -rm -f conftest.hdr - -# This sed command replaces #undef with comments. This is necessary, for -# example, in the case of _POSIX_SOURCE, which is predefined and required -# on some systems where configure will not decide to define it. -cat >> conftest.vals <<\EOF -s%^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*%/* & */% -EOF - -# Break up conftest.vals because some shells have a limit on -# the size of here documents, and old seds have small limits too. - -rm -f conftest.tail -while : -do - ac_lines=`grep -c . conftest.vals` - # grep -c gives empty output for an empty file on some AIX systems. - if test -z "$ac_lines" || test "$ac_lines" -eq 0; then break; fi - # Write a limited-size here document to conftest.frag. - echo ' cat > conftest.frag <> $CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.vals >> $CONFIG_STATUS - echo 'CEOF - sed -f conftest.frag conftest.in > conftest.out - rm -f conftest.in - mv conftest.out conftest.in -' >> $CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.vals > conftest.tail - rm -f conftest.vals - mv conftest.tail conftest.vals -done -rm -f conftest.vals - -cat >> $CONFIG_STATUS <<\EOF - rm -f conftest.frag conftest.h - echo "/* $ac_file. Generated automatically by configure. */" > conftest.h - cat conftest.in >> conftest.h - rm -f conftest.in - if cmp -s $ac_file conftest.h 2>/dev/null; then - echo "$ac_file is unchanged" - rm -f conftest.h - else - # Remove last slash and all that follows it. Not all systems have dirname. - ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` - if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then - # The file is in a subdirectory. - test ! -d "$ac_dir" && mkdir "$ac_dir" - fi - rm -f $ac_file - mv conftest.h $ac_file - fi -fi; done - -EOF -cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF - -exit 0 -EOF -chmod +x $CONFIG_STATUS -rm -fr confdefs* $ac_clean_files -test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 - diff --git a/dist/src/mvctl.c b/dist/src/mvctl.c deleted file mode 100644 index 32a73b9a8..000000000 --- a/dist/src/mvctl.c +++ /dev/null @@ -1,80 +0,0 @@ -/* minivend.c: runs as a command line or cgi program and starts up - Interchange in various modes - - $Id: mvctl.c,v 1.2 2000-07-12 03:08:10 heins Exp $ - - Copyright (C) 1997-2000 Akopia, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public - License along with this program; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, - MA 02111-1307 USA. - -*/ - -#define PERL "/usr/bin/perl" -#define VendRoot "/home/minivend" - -#include -#include -#include -#include -#include - -int main(argc, argv) - int argc; - char** argv; -{ - int r; - char minivend[255]; - - printf("Content-type: text/plain\r\n\r\n"); - fflush(stdout); - - if(argv[1] == NULL) { - printf("Requires an argument.\n", argv[1]); - exit(0); - } - - - strcpy(minivend, VendRoot); - if(strcmp(argv[1], "start_unix") == 0) { - printf("Starting in UNIX mode...\n"); - strcat(minivend, "/bin/start_unix"); - } - else if(strcmp(argv[1], "start_inet") == 0) { - printf("Starting in INET mode...\n"); - strcat(minivend, "/bin/start_inet"); - } - else if(strcmp(argv[1], "restart_unix") == 0) { - printf("Re-starting in UNIX mode...\n"); - strcat(minivend, "/bin/restart_unix"); - } - else if(strcmp(argv[1], "restart_inet") == 0) { - printf("Re-starting in INET mode...\n"); - strcat(minivend, "/bin/restart_inet"); - } - else if(strcmp(argv[1], "stop") == 0) { - printf("Stopping server...\n"); - strcat(minivend, "/bin/stop"); - } - else { - printf("Unrecognized command %s.\n", argv[1]); - exit(0); - } - - - execl(PERL, PERL, minivend, 0); - printf("Could not exec %s.", PERL); - exit(1); -} diff --git a/dist/src/syscfg.in b/dist/src/syscfg.in deleted file mode 100644 index 249ff9936..000000000 --- a/dist/src/syscfg.in +++ /dev/null @@ -1,4 +0,0 @@ -$CC="@CC@"; -$CFLAGS="@CFLAGS@"; -$DEFS="@DEFS@"; -$LIBS="@LIBS@"; diff --git a/dist/src/testcgi b/dist/src/testcgi deleted file mode 100755 index 28a3b8cab..000000000 --- a/dist/src/testcgi +++ /dev/null @@ -1,10 +0,0 @@ -#!/usr/bin/perl - -print "Content-type: text/plain\n\n"; -print "This is testcgi.\n\n"; -print "The Perl version is: $]\n"; -print "My user id is: $<\n\n"; -require GDBM_File and print "You have GDBM.\n"; -require DB_File and print "You have Berkeley DB.\n"; -require NDBM_File and print "You have NDBM.\n"; - diff --git a/dist/src/tlink.pl b/dist/src/tlink.pl deleted file mode 100755 index e317eb6dd..000000000 --- a/dist/src/tlink.pl +++ /dev/null @@ -1,198 +0,0 @@ -#!/usr/bin/perl -wT -# tlink.pl: runs as a cgi program and passes request to Vend server -# -# $Id: tlink.pl,v 1.2 2000-07-12 03:08:10 heins Exp $ -# -# Copyright (C) 1996-2000 Akopia, Inc. -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public -# License along with this program; if not, write to the Free -# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, -# MA 02111-1307 USA. - -require 5.002; -use strict; -use Socket; -my $LINK_TIMEOUT = 30; -#my $LINK_TIMEOUT = ~_~LINK_TIMEOUT~_~; -my $LINK_PORT = $ENV{MINIVEND_PORT} || 7786; -#my $LINK_PORT = $ENV{MINIVEND_PORT} || ~_~LINK_HOST~_~; -my $LINK_HOST = 'localhost'; -#my $LINK_HOST = '~_~LINK_HOST~_~'; -my $ERROR_ACTION = "-notify"; - -$ENV{PATH} = "/bin:/usr/bin"; -$ENV{IFS} = " "; - -# Return this message to the browser when the server is not running. -# Log an error log entry if set to notify - -sub server_not_running { - - my $msg; - - if($ERROR_ACTION =~ /not/i) { - warn "ALERT: Interchange server not running for $ENV{SCRIPT_NAME}\n"; - } - - $| = 1; - print <Interchange server not running - -

    We're sorry, the Interchange server was not running...

    -

    -We are out of service or may be experiencing high system demand, -please try again soon. - - -EOF - -} - -# Return this message to the browser when a system error occurs. -# -sub die_page { - printf("Content-type: text/plain\r\n\r\n"); - printf("We are sorry, but the cgi-bin server is unavailable due to a\r\n"); - printf("system error.\r\n\r\n"); - printf("%s: %s (%d)\r\n", $_[0], $!, $?); - if($ERROR_ACTION =~ /not/i) { - warn "ALERT: Interchange $ENV{SCRIPT_NAME} $_[0]: $! ($?)\n"; - } - exit(1); -} - - -my $Entity = ''; - -# Read the entity from stdin if present. - -sub get_entity { - - return '' unless defined $ENV{CONTENT_LENGTH}; - my $len = $ENV{CONTENT_LENGTH} || 0; - return '' unless $len; - - my $check; - - $check = read(STDIN, $Entity, $len); - - die_page("Entity wrong length") - unless $check == $len; - - $Entity; - -} - - - -sub send_arguments { - - my $count = @ARGV; - my $val = "arg $count\n"; - for(@ARGV) { - $val .= length($_); - $val .= " $_\n"; - } - return $val; -} - -sub send_environment () { - my (@tmp) = keys %ENV; - my $count = @tmp; - my ($str); - my $val = "env $count\n"; - for(@tmp) { - $str = "$_=$ENV{$_}"; - $val .= length($str); - $val .= " $str\n"; - } - return $val; -} - -sub send_entity { - return '' unless defined $ENV{CONTENT_LENGTH}; - my $len = $ENV{CONTENT_LENGTH}; - return '' unless $len > 0; - - my $val = "entity\n"; - $val .= "$len $Entity\n"; - return $val; -} - -$SIG{PIPE} = sub { die_page("signal"); }; -$SIG{ALRM} = sub { server_not_running(); exit 1; }; - -eval { alarm $LINK_TIMEOUT; }; - -my ($remote, $port, $iaddr, $paddr, $proto, $line); - -$remote = $LINK_HOST; -$port = $LINK_PORT; - -if ($port =~ /\D/) { $port = getservbyname($port, 'tcp'); } - -die_page("no port") unless $port; - -$iaddr = inet_aton($remote); -$paddr = sockaddr_in($port,$iaddr); - -$proto = getprotobyname('tcp'); - -socket(SOCK, PF_INET, SOCK_STREAM, $proto) or die "socket: $!\n"; - -my $ok; - -do { - $ok = connect(SOCK, $paddr); -} while ( ! defined $ok and $! =~ /interrupt/i); - -my $def = defined $ok; -die "ok=$ok def: $def connect: $!\n" if ! $ok; - -get_entity(); - -select SOCK; -$| = 1; -select STDOUT; - -print SOCK send_arguments(); -print SOCK send_environment(); -print SOCK send_entity(); -print SOCK "end\n"; - - -while() { - print; -} - -close (SOCK) or die "close: $!\n"; -exit; - - - -get_entity(); - -print SOCK send_arguments(); -print SOCK send_environment(); -print SOCK send_entity(); - -while() { - print; -} - -close (SOCK) or die "close: $!\n"; -exit; - diff --git a/dist/test/catalog.cfg b/dist/test/catalog.cfg deleted file mode 100644 index 2f2dc5f49..000000000 --- a/dist/test/catalog.cfg +++ /dev/null @@ -1,123 +0,0 @@ -# MiniVend test catalog - -Database products products.asc TAB -Database products2 products2.asc dbi:mysql:test -Database products2 DELIMITER PIPE -Database tests tests.asc %% -Database sqltest sqltest.asc dbi:mysql:test -Database inventory inventory.asc CSV -Database inventory AUTO_EXPORT 1 -Database mv_metadata mv_metadata.asc TAB -Database pricing pricing.asc TAB -Database pricing KEY sku -Database sort sort.asc TAB -Database sort MEMORY 1 - -ProductFiles products products2 - -Variable SERVER_NAME bill.minivend.com -Variable CGI_URL /cgi-bin/test -Variable ORDERS_TO mike -Variable IMAGE_DIR http://bill.minivend.com/simple/images -Variable COMPANY MiniVend Test Catalog -Variable ADDRESS 123 Your St. -Variable CITY Anytown, USA 00000 -Variable PHONE (513) 555-5555 -Variable TOLLFREE (888) 555-5555 -Variable FAX (513) 555-5556 -Variable SHIPMODES upsg upsb upsr -Variable ENCRYPTOR none - -PriceField no_price -CommonAdjust pricing:price1,price5,price10:, ;:price:, ==size:pricing, ==color:pricing:common - -########################################################## -ParseVariables Yes - -MailOrderTo __ORDERS_TO__ -VendURL http://__SERVER_NAME____CGI_URL__ -SecureURL http://bill__CGI_URL__ -EncryptProgram __ENCRYPTOR__ -ImageDir __IMAGE_DIR__/ - -ParseVariables No -########################################################## - -#Autoload secure_on -AlwaysSecure ord/checkout -AsciiBackend etc/backend.asc -AsciiTrack etc/tracking.asc - -ButtonBars buttonbar - -CheckoutPage ord/basket -CreditCardAuto Yes -CustomShipping Yes - -DefaultShipping 0 - -OrderCounter etc/order.number -OrderProfile etc/order.profiles -OrderReport etc/report - -Password bAWoVkuzphOX. - -ReadPermission group -ReceiptPage ord/receipt -RobotLimit 50 - -SalesTax zip,state -ScratchDir tmp -SearchProfile etc/search.profiles -SpecialPage badsearch special/badsearch -SpecialPage catalog test -SpecialPage canceled special/canceled -SpecialPage checkout ord/checkout -SpecialPage confirmation special/confirmation -SpecialPage failed special/failed -SpecialPage interact special/interact -SpecialPage missing special/missing -SpecialPage needfield special/needfield -SpecialPage nomatch special/nomatch -SpecialPage noproduct special/noproduct -SpecialPage notfound special/notfound -SpecialPage order ord/basket -SpecialPage search results -SpecialPage order_security special/order_security -SpecialPage violation special/violation - -TaxShipping OH - -UseModifier size color - -FallbackIP Yes - -Locale de_DE "Order this fine accessory" "Bestellen Sie dieses feine Zusatzgerät" -Locale fr_FR "Order this fine accessory" "Commandez cet fin accessoire" - -Locale de_DE key "Bestellen Sie dieses feine Zusatzgerät" -Locale fr_FR key "Commandez cet fin accessoire" -Locale en_US key "Order this fine accessory" - -Locale de_DE decimal_point , -Locale de_DE mon_thousands_sep " " -Locale de_DE frac_digits 2 -Locale de_DE mon_decimal_point , -Locale de_DE p_sep_by_space 1 -Locale de_DE price_picture "DM ### ### ###,##" -Locale de_DE currency_symbol $ DM FF - -Locale fr_FR frac_digits 0 -Locale fr_FR decimal_point , -Locale fr_FR mon_thousands_sep . -Locale fr_FR mon_decimal_point , -Locale fr_FR currency_symbol FF - -Locale en_US frac_digits 2 -Locale en_US p_cs_precedes 1 -Locale en_US decimal_point . -Locale en_US mon_thousands_sep , -Locale en_US mon_decimal_point . -Locale en_US currency_symbol $ - -Locale en_US default 1 diff --git a/dist/test/config/.empty b/dist/test/config/.empty deleted file mode 100644 index e69de29bb..000000000 diff --git a/dist/test/etc/order.number b/dist/test/etc/order.number deleted file mode 100644 index 7cbcb6fee..000000000 --- a/dist/test/etc/order.number +++ /dev/null @@ -1,2 +0,0 @@ -#COUNTER-1.0 -000001 diff --git a/dist/test/etc/order.profiles b/dist/test/etc/order.profiles deleted file mode 100644 index bf921409e..000000000 --- a/dist/test/etc/order.profiles +++ /dev/null @@ -1,105 +0,0 @@ -__NAME__ invalid -&fatal = yes -mv_failpage= interact -&set = mv_junk 0 -__END__ - -__NAME__ billing - -&set=bill_done 1 -name=required -address=required -city=required -state=required -zip=required -email=required -phone_day=phone -&fatal=yes -email=email -&set=mv_email [value email] -&set=bill_done 2 -__END__ - -__NAME__ shipping -&fatal = yes -mv_shipmode = mandatory - -__END__ - -__NAME__ credit_card - -&fatal = yes -&set = pay_done [value mv_credit_card_valid] -&set = mv_payment Credit Card - -__END__ - -__NAME__ alt_card -[old] -valid_cc = yes -cc_no = required -cc_exp_m = required -cc_exp_y = required -cc_type = required -&fatal = yes -&set =valid_cc [if validcc [value cc_no] [value cc_type] [value cc_exp_m]/[value cc_exp_y]]1[/if] -&set = mv_successpage ord/final - -__END__ - -__NAME__ final -&set =mv_billing [if value bill_done == 2]1[/if] -mv_billing =required -mv_shipmode =required -&fatal=yes -&final=yes -mv_payment =required -__END__ - - -__NAME__ address - -&set = addr_done 2 - -__END__ - -__NAME__ all_in_one -[old] -name=required -address=required -city=required -country=required -[perl values config] -$state = $Safe{'values'}->{state}; -$country = $Safe{'values'}->{country}; -$zip = $Safe{'values'}->{zip}; -$state_ok = [if salestax [value state] ne '']1[else]0[/else][/if]; -$country =~ s/\W//g; -$zip_ok = ($zip =~ /^\s*\d\d\d\d\d(-\d\d\d\d)?\s*$/); -$us = ($country =~ /^(usa?|unitedstates)$/i); - -if (! $us) { - $state_ok = 1; - $zip_ok = 1; -} -$out = < - -Basket 1 Contents - -[body 1] -[perl values] $Safe{values}{state} = 'default'; return ''; [/perl] -

    -Order URL: [process-order] -

    -

    -
    - - - - - - - -

    -

    - - - - -[item-list] - -

    -

    - -[/if] - - - -[/item-list] -[if discount ALL_ITEMS] - - -[/if] - - - - - - -
    Basket 1 Contents
    - ISBN - - Description - - Quantity - - Price -
    [item-code] - [item-description] -[if explicit items scratch] -[condition] -$no = $Safe{scratch}->{"nodisplay_[item-code]"}; -return 1 unless $no; -foreach $item (reverse @{$Safe{items}}) { - return '' if $no eq $item->{'code'}; -} -1; -[/condition] -
    [item-accessories][item-accessories size][item-accessories color] -
    - - - - $[discount-price] - [if discount [item-code]] -
    Item is discounted - $[item-discount] - - [/if] -
    -All items are discounted by 30 percent! -
    -Salestax [salestax] -   - Subtotal -$[subtotal]
    - - - - -[if session secure] -[then] - Security is ON --> - Security is OFF --> - - -
    - - -

    - -[set Off] -mv_todo=unsecure -mv_nextpage=basket1 -[/set] - -[set On] -mv_todo=secure -mv_nextpage=basket1 -[/set] - -[set Stop shopping] -mv_todo=return -mv_nextpage=canceled -[/set] - -[set Home] -mv_todo=return -mv_nextpage=test -[/set] - -[set Search] -mv_todo=return -mv_nextpage=srchform -[/set] - -[set Browse] -mv_todo=return -mv_nextpage=browse -[/set] - -
    - -

    - diff --git a/dist/test/pages/basket2.html b/dist/test/pages/basket2.html deleted file mode 100644 index 8b1615d42..000000000 --- a/dist/test/pages/basket2.html +++ /dev/null @@ -1,159 +0,0 @@ - - -Basket 2 Contents (layaway) - -[body 1] -[cart layaway] -

    -Order URL: [process-order] -

    -

    -
    - - - - - - - -

    -

    - - - - -[item-list] - -

    -

    - -[/if] - - - -[/item-list] -[if discount ALL_ITEMS] - - -[/if] - - - - - - - - - - - - - - - - -
    Basket 2 Contents (layaway)
    - ISBN - - Description - - Quantity - - Price -
    [item-code] - [item-description] -[if explicit items scratch] -[condition] -$no = $Safe{scratch}->{"nodisplay_[item-code]"}; -return 1 unless $no; -foreach $item (reverse @{$Safe{items}}) { - return '' if $no eq $item->{'code'}; -} -1; -[/condition] -
    [item-accessories][item-accessories size][item-accessories color] -
    - - - - $[discount-price] - [if discount [item-code]] -
    Item is discounted - $[item-discount] - - [/if] -
    -All items are discounted by 30 percent! -
    - -   - Subtotal -$[subtotal]
    - Salestax -[salestax]
    - Shipping -[shipping]
    - TOTAL -$[total-cost]
    - - - - - Security--> - - - -
    - - -

    - -[set Off] -mv_todo=unsecure -mv_nextpage=basket2 -[/set] - -[set On] -mv_todo=secure -mv_nextpage=basket2 -[/set] - -[set Stop shopping] -mv_todo=return -mv_nextpage=canceled -[/set] - -[set Home] -mv_todo=return -mv_nextpage=test -[/set] - -[set Search] -mv_todo=return -mv_nextpage=srchform -[/set] - -[set Browse] -mv_todo=return -mv_nextpage=browse -[/set] - -
    - -

    - diff --git a/dist/test/pages/checkout2.html b/dist/test/pages/checkout2.html deleted file mode 100644 index dd99bbfe2..000000000 --- a/dist/test/pages/checkout2.html +++ /dev/null @@ -1,307 +0,0 @@ - - -Check Out of __COMPANY__ - -[body 1] -[cart layaway] -
    -
    - -
    - -[if items] -[then] - - - -[item-list] - - - - - - -[/item-list] - - - - - - - - - - - - - - - - - - - -
    - Order details -
    - remove - - - [page [item-code]][item-description] - [item-accessories size][item-accessories color] - [item-quantity] @ $[item-price][item-subtotal]
    Subtotal[subtotal]
    Sales Tax[salestax]
    - Shipping[shipping]
    TOTAL$[total-cost]
    -

    -[/then] -[else] - -

    No items in your basket.

    -

    -You can enter information, and it will -be saved, but no checkout will happen until you order something! - -[/else] -[/if] - - - - - - - -
    -Shipping Address -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -    - Name - -
    -    - Address - -
    -
    -    -

    City
    - - - - - - - - -
    - - -
    -    -
    - State/Province
    - -
    -
    -    -
    - Zip/Postal Code
    - - -
    -
    -    - Email Address - - - - - - - -
    - - -    - - Country - - [help country_select] -
    -
    -    - Daytime Phone - - - - - - - -
    - - -    - - Evening - - -
    -
    -    - - We need these fields to process your order -
    - -
    -Choose your shipping method -
    - -

    - -

    -[post] -[if session ship_message] -
    Note: [data session ship_message]
    -[/if] -[/post] - -
    -Credit Card Information -
    - -[if value mv_credit_card_info] -

    - (A valid [help [default mv_credit_card_type]] number is on file.
    - If you need to change it, re-enter the number. Otherwise, leave it blank and
    - press Next Screen
    .) -

    -[/if] -

    - -
    -Card Number
    -[if value mv_credit_card_valid] - -[else] - -[/else] -[/if] -
    - Expires -
    - - -
    - -I will call with payment information
    - -Force this card number to be taken
    - -
    -Billing address (if different) -
    - - - - - - - - - - - - - - - -
    Name - -
    Address - -
    City, State, Postal Code - -
    -[set Place Order!] -mv_todo=submit -[/set] - I plan on returning, save -my information - [if config EncryptProgram =~ /pgp/] - (credit card is encrypted with PGP!) - [else] - (OOPS! credit card not encrypted with PGP) - [/else][/if]
    -

    -
    - -
    -

    -

    -

    -

    [buttonbar 0]
    - - diff --git a/dist/test/pages/flypage.html b/dist/test/pages/flypage.html deleted file mode 100644 index f2d12e2c7..000000000 --- a/dist/test/pages/flypage.html +++ /dev/null @@ -1,20 +0,0 @@ - -[item-description] -[body 1] -
    -Category: [item-field category] -

    - -

    [item-description]

    -[item-field comment] -

    -Catalog No.: [item-code] -

    -Price: $[item-price 1] [page quantity [item-code]]See quantity pricing[/page] -

    -[order [item-code]]ORDER[/order] -

    -[buttonbar 0][finish-order] -

    - - diff --git a/dist/test/pages/harness.html b/dist/test/pages/harness.html deleted file mode 100644 index c4d8c67c5..000000000 --- a/dist/test/pages/harness.html +++ /dev/null @@ -1,12 +0,0 @@ - -[flag write inventory] -[flag write inventory] -[loop search=" - st=db - fi=tests - tf=0 - ra=yes - rf=0 - ml=1000 - "][harness name="[loop-code]"][expected][loop-data tests expected][/expected][not][loop-data tests no_expect][/not][loop-data tests input][/harness] -[/loop] diff --git a/dist/test/pages/index.html b/dist/test/pages/index.html deleted file mode 100644 index f9e99c270..000000000 --- a/dist/test/pages/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<XMP>[loop search=" - st=db - fi=tests - tf=0 - ra=yes - rf=0 - ml=1000 - "][harness name="[loop-code]"][expected][loop-data tests expected][/expected][not][loop-data tests no_expect][/not][loop-data tests input][/harness] [loop-alternate 5] -[/loop-alternate][/loop] - diff --git a/dist/test/pages/indextest.html b/dist/test/pages/indextest.html deleted file mode 100644 index 3668ea304..000000000 --- a/dist/test/pages/indextest.html +++ /dev/null @@ -1,39 +0,0 @@ -
    -[index table=products extension=artist
    -						spec="
    -						rf=artist,code,category,title
    -						tf=artist,title
    -						to=f,r
    -						ra=yes
    -						"]
    -[file products/products.asc.artist]
    -
    -[loop search="sq=select code from products where price < 20"][loop-field artist] -- [loop-field title]
    -[/loop]
    -
    -[loop search="se=art/cs=no/su=yes"][loop-field artist] -- [loop-field title]
    -[/loop]
    -
    -[loop search="
    -				ra=yes
    -				rf=code
    -				fi=products.asc.artist
    -			"][loop-field artist] -- [loop-field title]
    -[/loop]
    -
    -[loop search="
    -					ml=1000
    -					co=yes
    -
    -					op=>
    -					se=5
    -					sf=f1
    -
    -					op=<
    -					se=5
    -					sf=f2
    -
    -					fi=sort.asc
    -					tf=f1,f2,f3,f4,f5,f6
    -				"][loop-data sort f1][loop-data sort f2][loop-data sort f3][loop-data sort f4][loop-data sort f5][loop-data sort f6]
    -[/loop]
    diff --git a/dist/test/pages/locale_test b/dist/test/pages/locale_test
    deleted file mode 100644
    index 4fdd541f6..000000000
    --- a/dist/test/pages/locale_test
    +++ /dev/null
    @@ -1 +0,0 @@
    -de_DE: [price 00-0011] [L]Order this fine accessory[/L]
    diff --git a/dist/test/pages/mvasp.html b/dist/test/pages/mvasp.html deleted file mode 100644 index 95d9c7a20..000000000 --- a/dist/test/pages/mvasp.html +++ /dev/null @@ -1,58 +0,0 @@ -[new] - - -[mvasp] - - MiniVend ASP - - - -

    MiniVend ASP Syntax Example

    - -What's new
    - -<% - - $Document->write("Hello, you are in <%ASP LAND%>

    "); - my $fmt = "%H:%M:%S %D (some time format for y2K, huh...)"; - my $time = $Tag->tag( $fmt, { op => 'time' } ); - $Document->write ( "The current time is $time
    "); -%> -


    -<% - $Document->write ( "

    Your session ID is $Session->{id}

    "); - if($Session->{arg}) { - $Document->write ( "

    The argument given is $Session->{arg}

    "); - $Document->write ( "

    Return to " . $Tag->page('mvasp') . "no argument.

    "); - } - else { - $Document->write ( "No argument sent, ", - $Tag->page('mvasp', 'An arg'), - "try one.
    ", - ); - } -%> -

    -<% - $Document->write( - "You can use UserTags, too...ORDERS_TO => ", - $Tag->var('ORDERS_TO'), - "

    \n", - ); - -%> - - Compare to ORDERS_TO => __ORDERS_TO__

    - - You can see the source - here. -

    -
    - - - -[/mvasp] - - diff --git a/dist/test/pages/oldtest.html b/dist/test/pages/oldtest.html deleted file mode 100644 index 3fa1a0842..000000000 --- a/dist/test/pages/oldtest.html +++ /dev/null @@ -1,1125 +0,0 @@ - -[tag flag write]pricing products[/tag] - Tag test page - -[tag op=time send=1]%D[/tag] -[set mv_no_count]0[/set] -[set mv_no_session_id]0[/set] -This should have a session id and count [area @@MV_PAGE@@]
    -[set mv_no_count]1[/set] -[set mv_no_session_id]1[/set] -This should NOT have a session id and count [area @@MV_PAGE@@]

    -[page @@MV_PAGE@@]Test[/page]   -Middle -Bottom -


    -

    Test global subs and variables

    -
    -GlobalSub: [perl subs=1] test_global_sub('OK') [/perl]
    -Variable: @@TEST_VARIABLE@@
    -
    -
    - -[set name=nothing send=1][/set] - -[mvasp] -
    - This is HTML, but now it has <% $Document->write('PERL CODE') %> inside. -
    -[/mvasp] - -[set name=nothing send=1][/set] - -

    Test tag_data and [tag touch]

    -[perl products][/perl] -

    -Test: -[perl send=1] - $var = tag_data('products', 'title', '00-0011'); - return $var ? "OK - $var" : 'ERROR'; -[/perl] - -

    SQL searches

    -[page href=scan arg=" - se=of - sq=select code from products2 where title like '% ? %' - st=sql - " - ]Search for '% of %'[/page] - -Same thing in form: -
    - - - Whole words - Whole words - - - - -
    -Same thing in form with mv_sql_query: -
    - - - Whole words - Whole words - - - - -
    -[set mv_put_session]1[/set] -[set Match whole words only] -mv_or_search=yes -mv_substring_match=yes -[perl] - $spec = $CGI->{mv_searchspec}; - $out = qq{mv_searchspec="% $spec"\n}; - $out .= qq{mv_searchspec="% $spec %"\n}; - $out .= qq{mv_searchspec="$spec %"\n}; -[/perl] -[/set] - -

    HTML-style tags

    -Try new tag style
    -Try new tag style w/target
    -Try new tag style, insert
    -Try new tag style, no replace, should show up as 404/undercon if traveled
    - <<-- Should be no tag, just URL -

    - -Remove FrontPage and other %20 escaping in tags
    -
    Should be a another link to this page
    -

    -PREPEND and APPEND
    - <== Should be "test" in a link
    -Should be test ==> and a link -

    -

    -Select with insideHTML
    - -
    -

    -Loop
    - - - - - -
    [loop-code][loop-code]
    - -

    -Loop with rowfix
    - - - - - -
    [loop-code][loop-code]
    - -

    -Tag each
    - - - - - -
    [loop-code][loop-field title]
    - -

    -Tag each with URLDECODE
    - - - - - - -
    [loop-code][loop-field%20title]
    - -If table
    - - - - - - - - - - - - - -
    ERRORrow
    elsifshould be only row
    ERRORrow
    - -If table, no lookahead
    - - - - - - - - - - - - - -
    ERRORrow
    elsifThis should be row one
    elseThis should be row two and final
    - - -

    -replaceHTML -<PRE> -

     return 'should      be     normally        spaced.'
    -<XMP> - return 'should be normally spaced.' -<DEL> - return 'should be normally spaced.' - -insertHTML and replaceAttr -Should have only a minivend URL: - <FORM MV=process-target ACTION="test.action"> -
    -

    [accessories ...]

    - -[perl] - sub add_cart { - ($part,$q,$cart,$add) = @_; - $q = 1 unless defined $q; - $cart = 'main' unless defined $cart; - if($add) { - push @{$Carts->{$cart}}, - { code => $part, quantity => $q, mv_ib => 'products'}; - } - elsif($part) { - $Carts->{$cart}->[0] = - { code => $part, quantity => $q, mv_ib => 'products'}; - } - else { - @{$Carts->{$cart}} = (); - } - return ''; - } -[/perl] - -
    - -1:[accessories code="00-0011" int] -2:[accessories code="99-102" arg="size"] - - - -
    -

    [area ...] and [page ...]

    - -Frames off.
    - -New areatarget: [area href="pg" target="frame" arg="argument"] -New area: [area href="pg" arg="argument"] -New pagetarget: [page href="pg" target="frame" arg="argument"] -New page: [page href="pg" arg="argument"] - -Old area: [area pg arg] -Old page: [page pg arg] - - -Selects from the predefined color schemes and/or backgrounds, and -just becomes a tag if none are defined. See -I. - - -
    -

    [buttonbar n]

    - -Old: [buttonbar 0] - -New: [buttonbar type="0"] - - - -

    Test nph-send

    -[tag op=time send=1]%D[/tag] -

    - -


    -

    [calc] 4 + 3 [/calc]

    - -7=[calc] 4 + 3 [/calc] - -

    [checked ...] and [selected ....]

    -
    - - -Old Selected:
    -New Selected:
    -HTML Selected:
    - - - - -
    - -Old for val: [checked var_name val]
    -New for val: [checked NAME=var_name VALUE=val]
    -HTML for val: <INPUT MV="checked var_name val" NAME=junk><OPTION MV="selected var_name val" VALUE=junk> -

    -Old for on: [checked var_name on]
    -New for on: [checked NAME=var_name value=on]
    -HTML for on:

    <INPUT MV="checked var_name on" TYPE=checkbox name=junk> -<OPTION MV="selected var_name on" value=junk> -<OPTION MV="selected var_name on"> -
    -Old for stuff: [checked var_name A value with stuff in't]
    -New for stuff: [checked NAME=var_name SEND=1 VALUE="A value with stuff in't"]
    - -
    -

    [row] and [col]

    - - -[row 50] -[col 48 wrap=yes]ONE_LINE__ XXXXXXXXXX XXXXXXXXXX XXXXXXXXXX[/col] -[/row] - -[row 40] -[col 38 wrap=yes]3_AND_1___ XXXXXXXXXX XXXXXXXXXX XXXXXXXXXX[/col] -[/row] - -[row 30] -[col 28 wrap=yes]2_AND_2___ XXXXXXXXXX XXXXXXXXXX XXXXXXXXXX[/col] -[/row] - -[row 20] -[col 18 wrap=yes]FOUR_LINES XXXXXXXXXX XXXXXXXXXX XXXXXXXXXX[/col] -[/row] - -[row 85] -[col 16 align=right gutter=0]Align right>>>[/col] -[col 3 gutter=0]|-|[/col] -[col 16 align=left]<<<Align left[/col] -[col 12 gutter=2 wrap=yes align=right]gutter 2>[/col] -[col 3 gutter=0]<[/col] -[col 12 gutter=1 wrap=yes align=right]gutter 1>[/col] -[col 3 gutter=0]<[/col] -[col 12 gutter=0 wrap=yes align=right]gutter 0>[/col] -[col 3 gutter=0]<[/col] -[/row] - -
    -

    [row] and [col]

    - -If blank between lines below, it works. -
    [comment] If this appears, comment doesn't work. [/comment]
    -

    [currency]

    -8999.876512 should appear with only two decimals and commas: [currency]8999.876512 [/currency] - -[set name=nothing send=1][/set] - -
    -

    [data area field key "value"* increment*]

    -
    -[tag flag write]inventory[/tag]
    -Positional
    -Set to 1: [data inventory qty 99-102 1]
    -Read it:  [data inventory qty 99-102]
    -Inc it:  [data inventory qty 99-102 1 increment]
    -Read it:  [data inventory qty 99-102]
    -

    -Named -Set to 1: [data base=inventory name=qty code=99-102 value=1] -Read it: [data base=inventory name=qty code=99-102] -Inc it: [data base=inventory name=qty code=99-102 value=1 increment=yes] -Read it: [data table=inventory field=qty key=99-102] -Inc it (old): [data inventory qty 99-102 1 increment] -Read it: [data base=inventory name=qty code=99-102] - -

    -[set name=nothing send=1][/set] - -
    -

    [description code database*]

    - -Positional -None: [description 00-0011]
    -Products: [description 00-0011 products]
    -Products2: [description 00-0011 products2]
    -

    -Named -None: [description code="00-0011"]
    -Products: [description code="00-0011" base="products"]
    -Products2: [description code="00-0011" base="products2"]
    - -[set name=nothing send=1][/set] - -


    -

    [discount ....]

    -
    -	Set shopping cart, one 00-0011 at normal price.
    -	[discount 00-0011][/discount][perl]
    -	$Carts->{main}->[0] =
    -		{ code => '00-0011', quantity => 1, mv_ib => 'products'};
    -	return '';
    -	[/perl]
    -
    -	Items on order: [item-list][item-code], [item-quantity]@[item-price][/item-list]
    -	Price=[price 00-0011] Total=[subtotal] Unformatted Total=[subtotal main 1]
    -	OLD parser: Price=[price 00-0011] Total=[subtotal] Unformatted Total=[subtotal main 1]
    -
    -	Up quantity to 10.  [perl]
    -	$Carts->{main}->[0] =
    -		{ code => '00-0011', quantity => 10, mv_ib => 'products'};
    -	return '';
    -	[/perl] 
    -	Items on order: [item-list][item-code], [item-quantity]@[item-price][/item-list]
    -	Price=[price 00-0011] Total=[subtotal]
    -
    -	Set discount to 10% for that item.
    -	[discount 00-0011]$s * .90[/discount]
    -	Price=[price 00-0011] Total=[subtotal]
    -
    -	Set number back to one.
    -	[perl]
    -	$Carts->{main}->[0] =
    -		{ code => '00-0011', quantity => 1, mv_ib => 'products'};
    -	return '';
    -	[/perl]
    -
    -	Items on order: [item-list][item-code], [item-quantity]@[item-price][/item-list]
    -	Price=[price 00-0011] Total=[subtotal]
    -
    -	Return discount to 0.  [discount 00-0011][/discount]
    -	Price=[price 00-0011] Total=[subtotal]
    -
    -	Half off all items.  [discount ALL_ITEMS]$s * .50[/discount]
    -	Price=[price 00-0011] Total=[subtotal]
    -
    -	Half off with mv_discount.  [perl]
    -	$Carts->{main}[0]{mv_discount} = q{ $s * .50 };
    -	return '';
    -	[/perl] 
    -	Price=[price 00-0011] Total=[subtotal]
    -
    -	Half off entire order.  [discount ENTIRE_ORDER]$s * .50[/discount]
    -	Price=[price 00-0011] Total=[subtotal]
    -
    -	[discount ALL_ITEMS][/discount]Back to normal. [discount ENTIRE_ORDER][/discount]
    -
    -	[perl]
    -	$Carts->{main}->[0] =
    -		{ code => '00-0011', quantity => 1, mv_ib => 'products'};
    -	return '';
    -	[/perl]
    -
    -	Set discount to 10% for that item.[discount code=00-0011]$s * .90[/discount]
    -	Price=[price code=00-0011]
    -	Caonicial Discount Price=[price code=00-0011 discount=1]
    -	Caonicial Discount Price=[price code=00-0011 discount=1 noformat=1]
    -	Discount Price=[item-list][discount-price]
    -	Item Discount=[item-discount][/item-list]
    -	Total=[subtotal]
    -	Unformatted Total=[subtotal noformat=1]
    -
    -	Return discount to 0. [discount code=00-0011][/discount]
    -	Price=[price code=00-0011]
    -	Discount Price=[item-list][discount-price][/item-list]
    -	Total=[subtotal]
    -
    -	
    - -[set name=nothing send=1][/set] - -
    -

    [field ....]

    - -Positional -In products 1: [field title 00-342]
    -In products 2: [field title X0-342] -

    - -Named -In products 1: [field name=title code=00-342]
    -In products 2: [field name="title" code="X0-342"] -

    - - -[set name=nothing send=1][/set] -


    -

    [file ....]

    - -Display the order counter. -Positional
    -[file etc/order.number]
    - -Named
    -[file name="etc/order.number"])
    - -

    -


    - -
    -

    [if type field op* compare*]

    - -

    !config

    -Positional - -[if !config FramesDefault == 1] -OK. -[else]Fell through to else, ERROR. [/else] -[/if] - - -
    -Named -[if type="!config" term=Cookies op="==" compare=1] -OK 1 -[else]OK 1[/else] -[/if] - -[if type="!config" term=Cookies op="!=" compare=1] - 2 -
    [else] ERROR [/else][/if] - -

    and/or

    -[set true]1[/set] -[set false]0[/set] - -Positional -1. [if scratch false == 0][and scratch false == 1]ERROR[else]OK[/else][/if] -2. [if scratch false][or scratch true]OK[else]ERROR[/else][/if] -3. [if scratch true][and scratch false][or scratch true]OK[else]ERROR[/else][/if] -

    -Named -1. [if base=scratch term=false op="==" comp=0][and base=scratch term=false op="==" compare=1]ERROR[else]OK[/else][/if] - -2. [if base=scratch term=false][or base=scratch term=true]OK[else]ERROR[/else][/if] -3. [if base=scratch term=true][and base=scratch term=false][or base=scratch term=true]OK[else]ERROR[/else][/if] - -Positional -

    config

    -[if config CyberCash == 1] -CyberCash is on -- ERROR -[elsif config TaxShipping eq 'OH'] -OK. -[/elsif] -[else]Fell through to else, ERROR. [/else] -[/if] - -
    -Named -[if type=config term=Cookies op="==" compare=1] -OK 1 -[/if] - -[if type=config term=Cookies op="!=" compare=1] -...ERROR... -
    [/if] - -

    explicit

    -Positional -[if explicit][condition]++$nothing[/condition] -OK 1. - [if config Cookies eq 'neavairbe'] - Nesting tested, but failed with if.
    - [else] Nest OK.[/else] - [/if] -[/if] -[if explicit][condition] 1 == 0 [/condition] -ERROR[else]OK 2.[/else][/if] -[if explicit][condition] 1 == 1 [/condition] -OK 3.[else]ERROR[/else][/if] - -
    -Named - -[if type=explicit compare="1"] -[then] -OK 1. - [if type=config term=Cookies op=ne compare=neavairbe] - Nest OK 2. - [else]Fell through to else, Error.[/else] - [/if] -[/then] -[else]ERROR[/else] -[/if] -[if type=explicit][condition]1 == 0[/condition] -3 Then, ERROR. -[elsif type=explicit][condition] 0 == 0[/condition] -OK 3. -[/elsif] -[else]Fell through to else, ERROR. [/else] -[/if]
    - -

    -

    data

    -Positional -[if data products::nontaxable::99-102 =~ /^(y|t|1)/i] -ERROR[else]OK[/else][/if] 1. -[if data products::nontaxable::00-0011a] -OK[else]ERROR[/else][/if] 2. -
    -Named -[if type=data term=products::nontaxable::99-102 op="=~" compare="/^[yt1]/i"] -ERROR[else]OK[/else][/if] 1. -[if type=data term=products::price::00-0011a op="<" compare=1001] -OK[else]ERROR[/else][/if] 2. - -

    -

    discount

    - -Positional -[discount 00-0011]9.95[/discount] -[if discount 00-0011 < 10]OK[else]ERROR[/else][/if] with. -[discount 00-0011][/discount] -[if discount 00-0011]ERROR[else]OK[/else][/if] without. - -Named -[discount 00-0011]9.95[/discount] -[if type=discount term=00-0011 op=< comp=10]OK[else]ERROR[/else][/if] with. -[discount 00-0011][/discount] -[if discount 00-0011]ERROR[else]OK[/else][/if] without. - -

    -

    file

    -Positional -[if file /etc/passwd]OK[else]ERROR[/else][/if] 1. -[if file etc/nevairbe.counter]ERROR[else]OK[/else][/if] 2.
    - -Named -[if type=file term=/etc/passwd]OK[else]ERROR[/else][/if] 1. -[if type=file term=etc/nevairbe.counter]ERROR[else]OK[/else][/if] 2.
    - -

    -

    items

    -Positional -[perl]add_cart('00-0011')[/perl] -[if items]OK[else]ERROR[/else][/if] 1. -[perl]add_cart()[/perl] -[if items]ERROR[else]OK[/else][/if] 2. -[perl]add_cart('00-0011',1,'layaway')[/perl] -[if items layaway]OK[else]ERROR[/else][/if] 3. -[perl]add_cart('',0,'layaway')[/perl] -[if items layaway]ERROR[else]OK[/else][/if] 4.
    - -Named -[perl]add_cart('00-0011')[/perl] -[if type=items]OK[else]ERROR[/else][/if] 1. -[perl]add_cart()[/perl] -[if type=items]ERROR[else]OK[/else][/if] 2. -[perl]add_cart('00-0011',1,'layaway')[/perl] -[if type=items term=layaway]OK[else]ERROR[/else][/if] 3. -[perl]add_cart('',0,'layaway')[/perl] -[if type=items term=layaway]ERROR[else]OK[/else][/if] 4. - -

    -

    ordered

    -Positional -[perl]add_cart('00-0011')[/perl] -[if ordered 00-0011]OK[else]ERROR[/else][/if] 1. -[if !ordered 00-0011]ERROR[else]OK[/else][/if] 2. -[perl]add_cart()[/perl] -[if ordered 00-0011]ERROR[else]OK[/else][/if] 3. -
    -Named -[perl]add_cart('00-0011')[/perl] -[if type=ordered term=00-0011]OK[else]ERROR[/else][/if] 1. -[if type="!ordered" term=00-0011]ERROR[else]OK[/else][/if] 2. -[perl]add_cart()[/perl] -[if type=ordered term=00-0011]ERROR[else]OK[/else][/if] 3. - -

    -

    scratch

    -Positional -[set OH]3[/set] -[if scratch OH > 0]OK[else]ERROR[/else][/if] 1. -[if scratch OH]OK[else]ERROR[/else][/if] 2. -[set OH]-1[/set] -[if scratch OH > 0]ERROR[else]OK[/else][/if] 3.
    - -Named -[set name=OH]3[/set] -[if type=scratch term=OH op=> comp=0]OK[else]ERROR[/else][/if] 1. -[if type=scratch term=OH]OK[else]ERROR[/else][/if] 2. -[set name=OH]-1[/set] -[if type=scratch term=OH op=> comp=0]ERROR[else]OK[/else][/if] 3.
    - -[set mv_no_session_id]0[/set] -

    -

    session

    -Positional -session is [data session id] (check URL)
    - -arg: [data arg]=[data session arg] -- [page @@MV_PAGE@@ SUCCESS]this link to test[/page]
    -Named -session is [data base=session name=id] (check URL)
    - -arg: [data base=session name=arg]=[data base=arg] -- [page @@MV_PAGE@@ SUCCESS]this link to test[/page]
    -[set mv_no_session_id]1[/set] - -

    -

    validcc

    -Positional -[if validcc 5959595959595959 mc 11/07]OK[else]ERROR[/else][/if] 1. -[if validcc 5959595959595958 mc 11/07]ERROR[else]OK[/else][/if] 2. -[if validcc 5959595959595959 mc 11/94]ERROR[else]OK[/else][/if] 3.
    - -Named -[if type=validcc term=5959595959595959 op="mc" comp=11/07]OK[else]ERROR[/else][/if] 1. -[if type=validcc term=5959595959595958 op=mc comp=11/07]ERROR[else]OK[/else][/if] 2. -[if type=validcc term=5959595959595959 op=mc comp=11/94]ERROR[else]OK[/else][/if] 3.
    - -

    -

    value

    -[perl]$Values->{test_var} = 'whatever'; return ''[/perl] -Positional -[if value test_var]OK[else]ERROR[/else][/if] 1. -[if value test_var ne whatever]ERROR[else]OK[/else][/if] 2. -[perl]$Values->{test_var} = 11; return ''[/perl] -[if value test_var != 11]ERROR[else]OK[/else][/if] 3. -[if value test_var == 11]OK[else]ERROR[/else][/if] 4.
    - -Named -[perl]$Values->{test_var} = 'whatever'; return ''[/perl] -[if type=value term=test_var]OK[else]ERROR[/else][/if] 1. -[if type=value term=test_var op=ne comp="whatever"]ERROR[else]OK[/else][/if] 2. -[perl]$Values->{test_var} = 11 ; return ''[/perl] -[if type=value term=test_var op="!=" comp=11]ERROR[else]OK[/else][/if] 3. -[if type=value term=test_var == comp=11]OK[else]ERROR[/else][/if] 4.
    - -[comment] -=item shipping -=item value -[/comment] - -[comment] -=item [item_accessories attribute*, type*, field*, database*, name*] -=item [item_code] -=item [item_data database fieldname] -=item [item_description] -=item [item_discount] -=item [item_field fieldname] -=item [item_increment] -=item [item_link code] -=item [/item_list] -=item [item_list cart*] -=item [item_modifier attribute] -=item [item_price n*] -=item [item_quantity] -=item [item_subtotal] -=item [modifier_name attribute] -=item [if_data database fieldname] -=item [/if_data] -=item [if_field fieldname] -=item [/if_field] -[/comment] - -

    -


    - -[set name=nothing send=1][/set] -

    [loop items ]

    - -Named - -[loop search="se=impressionists/fi=products.asc"] -Code: [loop_code] -Data: [loop_data pricing price] -Field: [loop-field title][/loop] - -[loop 99-102 ] -Accessories: [loop_accessories] -Accessories modifier: [loop_accessories size][/loop] - -

    -


    - -[set name=nothing send=1][/set] -

    [loop with items ]

    - -Named - -[loop with=-a args="x y z" send=1] -Code: [loop_code-a] - [loop with=-b args="1 2 3"] - [loop-code-a][loop-code-b] - [/loop] -[/loop] - - -

    -


    - -[set name=nothing send=1][/set] - -

    [sql list|hash|array|html|set]

    -[sql type=hash base=sqltest] -select * from sqltest[/sql] -[sql type=array base=sqltest] -select * from sqltest[/sql] - -[sql type=html base=sqltest] -select * from sqltest[/sql] -
    -Insert another row and test -[sql type=set base=sqltest] -insert into sqltest VALUES ('four', 'A', 'B', 'C') -[/sql] - -[sql type=html base=sqltest] -select * from sqltest[/sql] -
    -[sql type=set base=sqltest] -delete from sqltest where code = 'four' -[/sql] - -[sql type=list query="select code,field1,field2,field3 from sqltest" base=sqltest] - - - - - - - -[/sql] -
    -inc=[sql-increment] -if=[if-sql-data sqltest field1]OK[else]ERROR[/else][/if-sql-data] -[if-sql-data sqltest field8]ERROR[else]OK[/else][/if-sql-data] -!if=[if-sql-data !sqltest field8]OK[else]ERROR[/else][/if-sql-data] -[if-sql-data !sqltest field1]ERROR[else]OK[/else][/if-sql-data] - -[sql-code] - -[sql-param 1]=[sql-data sqltest field1] - -[sql-param 2]=[sql-data sqltest field2] - -[sql-param 3]=[sql-data sqltest field3]
    - - - - - - - - - -
    - [sql-code] - [if-sql-field !nontaxable] - taxable - [/if-sql-field] - - [sql-field%20title] - - [sql-field artist] - - [sql-price] noformat=[sql-price noformat] -
    - -[set name=nothing send=1][/set] -

    [item-list] and [nitems]

    -[perl]add_cart('00-0011')[/perl] - 1 item: [nitems] -[perl]add_cart('00-0011', 10, 'layaway')[/perl]
    -Layaway 10 items: [nitems layaway] -[perl]add_cart('00-0011', 10)[/perl]
    -10 items: [nitems] -[perl]add_cart('00-0011', 1, 'layaway')[/perl]
    -Layaway 1 items: [nitems layaway] -
    -Layaway item list: [item-list layaway][item-code] [item-description][/item-list] -[perl]add_cart('', '', 'layaway')[/perl]
    -Empty layaway, should be nothing -->> [item-list layaway]ERROR[/item-list] -
    - -[item-list] -If-field: [if-field price]OK[else]ERROR[/else][/if-field] 1. [if-field junk]ERROR[else]OK[/else][/if-field] 2. -If-data: [if-data pricing price]OK[else]ERROR[/else][/if-data] 1. [if-data pricing junk]ERROR[else]OK[/else][/if-data] 2. -If-field NOT: [if-field ! price]ERROR[else]OK[/else][/if-field] 1. [if-field ! junk]OK[else]ERROR[/else][/if-field] 2. -If-data NOT: [if-data ! pricing price]ERROR[else]OK[/else][/if-data] 1. [if-data ! pricing junk]OK[else]ERROR[/else][/if-data] 2. -Accessories: [item-accessories] -Code: [item-code] -Data: [item-data pricing price] -Description: [item-field price] -Field: [item-field price] -Increment: [item-increment] -Modifier: [item-modifier mv_ib] -Modifier name: [modifier-name mv_ib] -Price: [item-price] -Price 10: [item-price 10] -(Unformatted): [item-price 10 noformat] -Subtotal: [item-subtotal] -(Unformatted): [item-subtotal noformat] -Quantity: [item-quantity] -Quantity name: [quantity-name] -Salestax: should be 0.00 --> [salestax main] -Set state (tests HIDE attribute): [value name=state set="IL"] <<-- IL -Salestax: should be > 0.00 --> [salestax main] -Set state (tests HIDE attribute): [value name=state set="OH" hide] <<-- nothing (OH) -Salestax: should be > 0.00 --> [salestax main] -Reset state: [value name=state set=""] -[/item-list] - -(Add discount) [discount ALL_ITEMS] $s * .50[/discount] -[item-list send=1] -Description: [item-description] -Price: [item-price] -Discount price: [discount-price] -Discount: [item-discount] -[/item-list] - -(Add item, try again). [perl]add_cart('00-341', 1, 'main', 1)[/perl] -[item-list] -Description: [item-description] -Price: [item-price] -Discount price: [discount-price] -Discount: [item-discount] -[/item-list] - -(Remove discount) [discount ALL_ITEMS][/discount] -[perl]add_cart()[/perl] -(Reset cart, check size/color modifiers) -[perl]add_cart('99-102', 1, 'main')[/perl] - - - - -
    -[item-list] -Size select: [item-accessories size] -Size multiple: [item-accessories size, multiple] -Size select (products 2): [item-accessories size, multiple, ,products2] -
    Size show: [item-accessories size, show] -Size select (other field): [item-accessories size, , nontaxable] -[/item-list] -
    - -CommonAdjust pricing
    -Original price = [price 99-102]
    -Save price for 99-102 and set empty to pick up CommonAdjust.
    -[set name=saved_price int][data table=products field=price key=99-102][/set] -[data table=products field=price key=99-102 value=""] - -[data table=pricing field=price1 key=99-102 value=11] -Set price to literal=$11.00 : db=[data table=pricing field=price1 key=99-102 value=11] : price tag=[price 99-102] : item-price=[item-list][item-price][/item-list]
    -[data table=pricing field=price1 key=99-102 value=12] -Set price to $12.00 = [price code=99-102] = [item-list][item-price][/item-list]
    - -Set XL and red to -[data table=pricing field=XL key=99-102 value=2] and -[data table=pricing field=red key=99-102 value=0] -
    -[perl] - $Carts->{'main'}[0]{'size'} = 'XL'; - $Carts->{'main'}[0]{'color'} = 'red'; - return ''; -[/perl] -Set price to $14 = [item-list][item-price][/item-list] = ( [price ..] not reflected [price 99-102]) -with XL size
    - -Set red to -[data table=pricing field=common key=red value="-1.00"]
    -Set price to $13 = -= [item-list][item-price][/item-list] = ( [price ..] not reflected [price 99-102]) -with minus on color red
    - -

    -Reset pricing database with tag import == -[tag import pricing][file products/pricing.asc][/tag]
    - -Reset products database with saved_price = -[data table=pricing field=price key=99-102 value="[scratch saved_price]"]
    -Price should be back to original = [price 99-102] - -

    -

    [order code cart/page* database*]

    - -Positional
    -[order 00-0011 layaway/basket2]Order 00-0011 to layaway[/order] -[order 00-0011 layaway/basket2 products2]Order 00-0011 from products2 to layaway[/order]
    -[order 00-0011 main/basket1]Order 00-0011 to main[/order] -[order 00-0011 main/basket1 products2]Order 00-0011 from products2 to main[/order]
    - -Named
    -[order code=00-0011 href=layaway/basket2]Order 00-0011 to layaway[/order] -[order code=00-0011 href=layaway/basket2 base=products2]Order 00-0011 from products2 to layaway[/order]
    -[order code=00-0011 href=main/basket1]Order 00-0011 to main[/order] -[order code=00-0011 href=main/basket1 base=products2]Order 00-0011 from products2 to main[/order]
    - - -[perl] "Delim is '" . $Config->{Delimiter} . "'"; [/perl] - -Test inventory. -[loop 99-102 00-0011] -[loop-description]: [loop-data inventory qty] -[/loop] - - -[set name=nothing send=1][/set] - -
    -

    Test Flypage

    - -Old: - -[page 00-0011]Main products, no XXXX[/page]
    -[page 00-0011 products2]Second products, should have XXXX in description[/page]
    -[page X0-342]Fall through to second products[/page] - -
    - -Named - -[page href="00-0011"]Main products, no XXXX[/page]
    -[page href="00-0011" arg=products2]Second products, should have XXXX in description[/page]
    -[page href="X0-342"]Fall through to second products[/page]
    - -
    - -[set name=nothing send=1][/set] -

    Test Nesting

    - -Named - -Tag:
    -[tag] - Date is: - [tag time]%D[/tag] -[/tag] -

    -Set: -[set what][/set] -[set how][/set] -[set when][/set] -[set where][/set] - -[set name=what int] - what - [set name=where] - where - [set how]how[/set] - [/set] - [set when]when[/set] -[/set] -

    -How>>>>[scratch how]<<<Nothing -Where>>[scratch name=where]<<< -Whereever>>[scratch name=where int]<<< -What>>>[scratch what]<<< -When>>>[scratch when]<<< -How>>>>[scratch how]<<<Something - -
    -

    Implicit

    -[area href=noint int]
    -[area href=int] -
    -

    Secure page

    [perl]$Config->{SecureURL} = 'https://HTTPS/cgi-bin/what'; return '';[/perl] -[page href=secure secure ]This should be https ->[area href=secure secure]
    -[page href=ord/checkout]This DEFINITELY should be https
    - -
    -

    Pricing

    - -
      Positional
    - -Simple price: [price 00-0011] - - -
      Named
    - -Simple price: [price code=00-0011] -Quantity 10: [price code=00-0011 quantity=10] -Quantity 1 main: [price code=00-0011 base=products] -Quantity 1 prod2: [price code=00-0011 base=products2] -Quantity 1 main, noformat: [price code=00-0011 noformat=1] - - -
    -

    Fly-list

    -[fly-list 00-0011] -[item-description] - -
    -[if-item-field category] -Category: [item-field category] OK -[else]ERROR[/else] -[/if-item-field] - -

    [item-description]

    -[item-field comment] -

    -Catalog No.: [item-code] -

    -Price: [item-price 1] [page quantity [item-code]]See quantity pricing[/page] -

    -[order [item-code]](ORDER NOW)[/order] -[/fly-list] - -[set name=nothing send=1][/set] - -

    Locales

    - -[if !scratch mv_locale] - [set mv_locale]en_US[/set] -[/if] - -Language test normal [L]
    -[L]Order this fine accessory[/L]
    - -Language test [L key]

    -[L key]FAILED[/L]
    - -Language test [LC]
    -[LC]Order this fine accessory -- default - [en_US]Order this fine accessory -- english[/en_US] - [de_DE]Order this fine accessory -- german[/de_DE] - [fr_FR]Order this fine accessory -- french[/fr_FR] -[/LC]
    - - -Default: [price 00-0011] -[setlocale de_DE] -[page process/locale/de_DE/page/test]de_DE: [price 00-0011] -[setlocale en_US] -[page process/locale/en_US/page/test]en_US: [price 00-0011] -[setlocale fr_FR] -[page process/locale/fr_FR/page/test]fr_FR: [price 00-0011] -[setlocale] -Default: [price 00-0011] - -
    -[page @@MV_PAGE@@]Test[/page]   -Top -Middle -
    - diff --git a/dist/test/pages/ord/basket.html b/dist/test/pages/ord/basket.html deleted file mode 100644 index 427147ef5..000000000 --- a/dist/test/pages/ord/basket.html +++ /dev/null @@ -1,132 +0,0 @@ - - -Shopping Cart Contents - -[body 1] -

    -Order URL: [process-order] -

    -

    -
    - - - - - - - -

    -

    - - - - -[item-list] - -

    -

    - -[/if] - - - -[/item-list] -[if discount ALL_ITEMS] - - -[/if] - - - - - - -
    Shopping Cart Contents
    - ISBN - - Description - - Quantity - - Price -
    [item-code] - [item-description] -[if explicit items scratch] -[condition] -$no = $Safe{scratch}->{"nodisplay_[item-code]"}; -return 1 unless $no; -foreach $item (reverse @{$Safe{items}}) { - return '' if $no eq $item->{'code'}; -} -1; -[/condition] -
    [item-accessories][item-accessories size][item-accessories color] -
    - - - - $[discount-price] - [if discount [item-code]] -
    Item is discounted - $[item-discount] - - [/if] -
    -All items are discounted by 30 percent! -
    - -   - Subtotal -$[subtotal]
    - - - - - - -
    - - -

    -[set Turn off order security] -mv_todo=unsecure -mv_nextpage=ord/basket -[/set] - -[set Stop shopping] -mv_todo=return -mv_nextpage=canceled -[/set] - -[set Home] -mv_todo=return -mv_nextpage=test -[/set] - -[set Search] -mv_todo=return -mv_nextpage=srchform -[/set] - -[set Browse] -mv_todo=return -mv_nextpage=browse -[/set] - -
    - -

    - diff --git a/dist/test/pages/ord/checkout.html b/dist/test/pages/ord/checkout.html deleted file mode 100644 index 3ee2a9b07..000000000 --- a/dist/test/pages/ord/checkout.html +++ /dev/null @@ -1,307 +0,0 @@ - - -Check Out of __COMPANY__ - -[body 1] - -
    -
    - -
    - -[if items] -[then] - - - -[item-list] - - - - - - -[/item-list] - - - - - - - - - - - - - - - - - - - -
    - Order details -
    - remove - - - [page [item-code]][item-description] - [item-accessories size][item-accessories color] - [item-quantity] @ $[item-price][item-subtotal]
    Subtotal[subtotal]
    Sales Tax[salestax]
    - Shipping[shipping]
    TOTAL$[total-cost]
    -

    -[/then] -[else] - -

    No items in your basket.

    -

    -You can enter information, and it will -be saved, but no checkout will happen until you order something! - -[/else] -[/if] - - - - - - - -
    -Shipping Address -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -    - Name - -
    -    - Address - -
    -
    -    -

    City
    - - - - - - - - -
    - - -
    -    -
    - State/Province
    - -
    -
    -    -
    - Zip/Postal Code
    - - -
    -
    -    - Email Address - - - - - - - -
    - - -    - - Country - - [help country_select] -
    -
    -    - Daytime Phone - - - - - - - -
    - - -    - - Evening - - -
    -
    -    - - We need these fields to process your order -
    - -
    -Choose your shipping method -
    - -

    - -

    -[post] -[if session ship_message] -
    Note: [data session ship_message]
    -[/if] -[/post] - -
    -Credit Card Information -
    - -[if value mv_credit_card_info] -

    - (A valid [help [default mv_credit_card_type]] number is on file.
    - If you need to change it, re-enter the number. Otherwise, leave it blank and
    - press Next Screen
    .) -

    -[/if] -

    - -
    -Card Number
    -[if value mv_credit_card_valid] - -[else] - -[/else] -[/if] -
    - Expires -
    - - -
    - -I will call with payment information
    - -Force this card number to be taken
    - -
    -Billing address (if different) -
    - - - - - - - - - - - - - - - -
    Name - -
    Address - -
    City, State, Postal Code - -
    -[set Place Order!] -mv_todo=submit -[/set] - I plan on returning, save -my information - [if config EncryptProgram =~ /pgp/] - (credit card is encrypted with PGP!) - [else] - (OOPS! credit card not encrypted with PGP) - [/else][/if]
    -

    -
    - -
    -

    -

    -

    -

    [buttonbar 0]
    - - diff --git a/dist/test/pages/ord/receipt.html b/dist/test/pages/ord/receipt.html deleted file mode 100644 index 9b9b94b1d..000000000 --- a/dist/test/pages/ord/receipt.html +++ /dev/null @@ -1,104 +0,0 @@ -__COMPANY__ -- Receipt - -[body 1] - -__COMPANY__
    -__ADDRESS__
    -__CITY__ -

    -[if explicit "__TOLLFREE__"] -Toll Free __TOLLFREE__
    [/if] -Phone __PHONE__

    -FAX __FAX__ -
    - -

    Receipt

    -

    -

    SOLD TO:

    -
    - -
    -
    -            Name: [value name]
    -[if value company]         Company: [value company][/if]
    -   Email address: [value email]
    -
    -         Address: [value address]
    -City, State, Zip: [value city], [value state]  [value zip]
    -         Country: [value country]
    -
    -  Payment Method: [value mv_payment]
    - Shipping Method: [shipping_desc]
    -
    -   Daytime Phone: [value phone_day]
    -   Evening Phone: [value phone_night]
    -
    -[if value s_address]
    -   Shipping Name: [value s_name]
    -Shipping Address: [value s_address]
    -City, State, Zip: [value s_city][if value s_state], [value s_state]  [value s_zip][/if]
    -[if value s_country]Shipping Country: [value s_country][/if]
    -[/if]
    -
    -Quan  Item No.    Description                           Price      Extension
    ----- ----------- ------------------------------- ------------- --------------- 
    -[item-list][row 80]
    -[column width=5 gutter=1 align=right]  [item-quantity] [/column]
    -[column width=12 gutter=1]  [item-code] [/column]
    -[column width=32 gutter=1 align=left wrap=1]
    -[item-description]
    -[if explicit "[item-modifier size]"]
    -SIZE: [item-modifier size]
    -[/if]
    -[/column]
    -[column width=14 gutter=1 align=r]  [item-price] [/column]
    -[column width=15 gutter=0 align=r] [item-subtotal] [/column]
    -[/row]
    -
    -[/item-list]
    -[row 80]
    -[column width=5 align=right][/column]
    -[column width=12 gutter=1][/column]
    -[column width=32 align=R wrap=1][/column]
    -[column width=14 gutter=1]SUBTOTAL[/column]
    -[column width=15 gutter=0 align=r][subtotal][/column]
    -[/row]
    -[row 80]
    -[column width=5 align=right][/column]
    -[column width=12 gutter=1][/column]
    -[column width=32 align=R wrap=1][/column]
    -[column width=14 gutter=1]SALES TAX[/column]
    -[column width=15 align=right gutter=0][salestax][/column]
    -[/row]
    -[row 80]
    -	[column width=5 align=right][/column]
    -	[column width=12 gutter=1][/column]
    -	[column width=32 align=R wrap=1][/column]
    -	[column width=14 gutter=1]SHIPPING[/column]
    -	[column width=15 align=right gutter=0][shipping][/column]
    -[/row]
    -
    -[row 80]
    -[column width=5 align=right][/column]
    -[column width=12 gutter=1][/column]
    -[column width=32 align=R wrap=1][/column]
    -[column width=14 gutter=1]ORDER TOTAL[/column]
    -[column width=15 align = right gutter=0][total-cost][/column]
    -[/row]
    -
    -
    - -[if value gift_note] -Note for Gift:
    -
    -[value gift_note]
    -
    -[/if] -

    - -

    -(Please print this receipt for your records. Thank you for your order!) -

    -[buttonbar 0] -

    - diff --git a/dist/test/pages/ord/report.html b/dist/test/pages/ord/report.html deleted file mode 100644 index 4c546538e..000000000 --- a/dist/test/pages/ord/report.html +++ /dev/null @@ -1,94 +0,0 @@ -[tag flag write]inventory[/tag] -[tag touch inventory][/tag] -[tag mime type TEXT/PLAIN; CHARSET=US-ASCII][/tag] -[tag mime Order Text] - - ORDER DATE: [calc]localtime[/calc] - ORDER NUMBER: [value mv_order_number] - - Name: [value name] -[if value company] Company: [value company][/if] - Email address: [value email] - - Address: [value address] -City, State, Zip: [value city], [value state] [value zip] - Country: [value country] - - Payment Method: [value mv_payment] - Shipping Method: [shipping_desc] - - Daytime Phone: [value phone_day] - Evening Phone: [value phone_night] - -[if value s_address] - Shipping Name: [value s_address] -Shipping Address: [value s_address] -City, State, Zip: [value s_city][/if][if value s_state], [value s_state] [value s_zip][/if] -[if value s_country]Shipping Country: [value s_country][/if] - -[item-list] -[/item-list] - - - Quan Item No. Description Price Extension -------- ----------- ------------------------------- ------------- --------------- -[item-list][row 82] -[column width=8 gutter=1 align=right] [item-quantity] -([data inventory qty [item-code] -[item-quantity] decrement])[/column] -[column width=12 gutter=1] [item-code] [/column] -[column width=32 gutter=1 align=left wrap=1] -[item-description] -[if explicit "[item-modifier size]"] -SIZE: [item-modifier size] -[/if][if explicit "[item-modifier color]"] -COLOR: [item-modifier color][/if] -[/column] -[column width=14 gutter=1 align=r] [item-price] [/column] -[column width=15 gutter=0 align=r] [item-subtotal] [/column] -[/row] - -[/item-list] -[row 82] -[column width=8 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1][/column] -[column width=14 gutter=1]SUBTOTAL[/column] -[column width=15 gutter=0 align=r][subtotal][/column] -[/row] -[row 82] -[column width=8 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1][/column] -[column width=14 gutter=1]SALES TAX[/column] -[column width=15 align=right gutter=0][salestax][/column] -[/row] -[row 82] - [column width=8 align=right][/column] - [column width=12 gutter=1][/column] - [column width=32 align=R wrap=1][/column] - [column width=14 gutter=1]SHIPPING[/column] - [column width=15 align=right gutter=0][shipping][/column] -[/row] - -[row 82] -[column width=8 align=right][/column] -[column width=12 gutter=1][/column] -[column width=32 align=R wrap=1][/column] -[column width=14 gutter=1]ORDER TOTAL[/column] -[column width=15 align = right gutter=0][total-cost][/column] -[/row] - -[if value gift_note] -Gift Note: ---------------------------------------------------- -[value gift_note] -[/if] -[/tag] - -[if value mv_credit_card_info] -[tag mime type application/pgp-encrypted][/tag] -[tag mime Credit Card Information] -Credit Card Information -[value mv_credit_card_info] -[/tag] -[/if] diff --git a/dist/test/pages/quantity.html b/dist/test/pages/quantity.html deleted file mode 100644 index 4dbecc336..000000000 --- a/dist/test/pages/quantity.html +++ /dev/null @@ -1,67 +0,0 @@ - -[tag flag build][/tag] -[loop list="[data session arg]"] -[loop_description] -
    -[body 1] -[if_loop_field category]Category: [loop_field category][/if_loop_field] -

    -

    -[order [loop_code]]ORDER[/order] -

    -

    [loop_field title]

    -

    [loop_field artist]

    -

    - - -

    -

    -

    -

    - - - - - - - -

    -

    - - - - - - -

    Quantity Pricing

    -
    - Part No. - - 1 - - 2 - - 5 - - 10 - - 25 -
    [loop_code] - [loop_price 1] - - [loop_price 2] - - [loop_price 5] - - [loop_price 10] - - [loop_price 25]

    - -[/loop] - -[buttonbar 0] - -

    - - - diff --git a/dist/test/pages/results.html b/dist/test/pages/results.html deleted file mode 100644 index 464cb3781..000000000 --- a/dist/test/pages/results.html +++ /dev/null @@ -1,38 +0,0 @@ - - -Search Results - - -

    -Search Results -

    -[data test test test] -[search-region] -

    -

    -[more-list] - Matches [matches] of -[/more-list] -[value mv_search_match_count] - titles found

    -

    -[search-list] - -[item_increment]. -[item-pos 1]
    -[item-pos 2]
    -[page [item-code]]More details[/page]     -[order [item-code]]Order[/order] -Our Price $[item-price]

    -


    -[/search-list] - -[more-list] -Links to more matches:
    -[more] -
    -[/more-list] -[/search-region] -

    - - diff --git a/dist/test/pages/sort.html b/dist/test/pages/sort.html deleted file mode 100644 index cf7b30030..000000000 --- a/dist/test/pages/sort.html +++ /dev/null @@ -1,31 +0,0 @@ -

    [search-region more=1
    -				arg="
    -					sp=sort
    -					dp=sort
    -					ml=25
    -					fi=sort.asc
    -					ra=yes
    -					rf=f1,f2,f3,f4,f5,f6
    -					tf=f1,f2,f3,f4,f5,f6
    -					"]
    -[set out][search-list][item-pos 0][item-pos 1][item-pos 2][item-pos 3][item-pos 4][item-pos 5]
    -[/search-list][/set]Search: 
    -[scratch out]
    -[more-list]
    -[more]
    -[/more-list]
    -[/search-region]
    -[page sort]Rerun[/page]
    -
    -Comparision: - -[perl] - @items = grep /\S/, split /\n/, $Scratch->{out}; - @test = sort @items; - for ($i = 0; $i < $#items; $i++) { - $items[$i] le $items[$i+1] - and next; - return "error at element $i"; - } - return "Compared sort OK.\n"; -[/perl] diff --git a/dist/test/pages/srchform.html b/dist/test/pages/srchform.html deleted file mode 100644 index 9af784693..000000000 --- a/dist/test/pages/srchform.html +++ /dev/null @@ -1,146 +0,0 @@ - - -Search __COMPANY__ - -[body 1] - - - - - - -
    - Search -
    [finish-order] -
    [buttonbar 3]
    -
    - Spelling errors allowed
    - 0 - 1 - 2 -
    - - - - - - - - - - - - - - - -
    Artist or Title
    - - - -
    - Must match all - - - Match any
    - Case sensitive
    - - Match substrings -
    - Fields to search:
    - - Artist
    - - Title
    - - Museum
    -
    -
    Sort order

    - - - - - -
    - -
    -
    - - - - - - - - - - - - - - - - - - - -
    - - Search by Price
    -
    - Low - -
    -
    - High - - -
    - - - -
    -
    - -
    -
    -

    -

    -[random] -

    -[buttonbar 0] -

    - diff --git a/dist/test/pages/test.html b/dist/test/pages/test.html deleted file mode 100644 index f9e99c270..000000000 --- a/dist/test/pages/test.html +++ /dev/null @@ -1,10 +0,0 @@ -[loop search=" - st=db - fi=tests - tf=0 - ra=yes - rf=0 - ml=1000 - "][harness name="[loop-code]"][expected][loop-data tests expected][/expected][not][loop-data tests no_expect][/not][loop-data tests input][/harness] [loop-alternate 5] -[/loop-alternate][/loop] - diff --git a/dist/test/pages/test_specific.html b/dist/test/pages/test_specific.html deleted file mode 100644 index 73c81f178..000000000 --- a/dist/test/pages/test_specific.html +++ /dev/null @@ -1,3 +0,0 @@ - -[loop list="[data session arg]"][harness name="[loop-code]"][expected][loop-data tests expected][/expected][not][loop-data tests no_expect][/not][loop-data tests input][/harness] -[/loop] diff --git a/dist/test/products/inventory.asc b/dist/test/products/inventory.asc deleted file mode 100644 index 4278823c725f1ac072a5cbf143bcb95fbd91479a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 375 zcmY!?&MsBbQ7SB{RN_)%Vlgx_Heq35VPaxnVBqC2FwiwHFf>ez;AJv2h=>5H!&Jlu zRAg*oj86$W)Es<j*o;kd4Gj!Ylvr8<g^Yl<f-o+dQMI7?fX&EI*T@LJ5{NAk98F*k b8e-bRXasbXDNg?zTIw1ZfRqpjA`~S6Opq}& diff --git a/dist/test/products/mv_metadata.asc b/dist/test/products/mv_metadata.asc deleted file mode 100644 index 3f4eccc8a..000000000 --- a/dist/test/products/mv_metadata.asc +++ /dev/null @@ -1,129 +0,0 @@ -code type width height field db name outboard options attribute label help lookup filter help_url pre_filter lookup_exclude prepend append -products::weight text 4 Weight in pounds digits_dot -affiliate::timeout text 8 Timeout delay (in seconds, 0 to disable) -dbconfig::mv_metadata::width text 4 digits -mv_metadata::lookup text 20 -mv_metadata text 100 code type label -products::display imagedir images/thumb nullselect <A HREF="admin/upload_file?ui_image_preview=__MVC_IMAGEURL__/thumb/_UI_VALUE_&ui_upload_binary=1&ui_upload_backup=0&mv_arg=images/thumb/_UI_VALUE_&ui_start_dir=thumb&ui_return_to=admin/item_edit&ui_return_to=item_id=_UI_KEY_&ui_preload=_UI_TABLE_:_UI_COLUMN_"><U><B>upload</b></U></A> -mv_metadata::width text 4 digits -variable::code text Variable name -products::title text 30 Title namecase -variable::Variable::UI_ITEM_EXPUNGE text 60 Item expunge tables The tables that should have the SKU removed when you DELETE ITEM from the items menu. -NextDayAir 200 -userdb::city text 40 City -userdb::b_lname text 40 Billing Last Name -affiliate::join_date text Join date -order_view::transactions::status display pending=Pending, shipped=Shipped, partial=Partially shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -userdb::b_address1 text 40 Billing Address -2ndDayAir 200 -merchandising::banner_image text Banner image if appropriate -merchandising::blurb_begin text Teaser catch line for feature display -merchandising::cross_category select products =- none - category -mv_metadata::code text 50 Table::Column Table::column to be operated on -transactions::status combo pending=Pending, shipped=Shipped, partial=Partially shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -variable::Variable::CATALOG_STATIC select No, Yes Enabled for users? <b>Yes</b> will cause Interchange to generate static links where possible.<BR><BR> <b>No</b> disables generation of static links for users; you can still send a search engine to the statically generated URL and it will spider the static links on the page. -userdb::b_state text 10 Billing State -dbconfig::mv_metadata::lookup text 20 -dbconfig::mv_metadata::help_url text 70 4 Help URL links below help text -inventory 25 sku,quantity -products::color textarea 50 5 -userdb::b_zip text 10 Billing Postcode -cat::link_type select none=No link, external=External link (http://...), internal=Interchange page, simple=Simple search, complex=Complex search -userdb::fax_order select =Credit Card, 1=Fax or Mail, 2=Purchase order, 3=COD Payment method -variable::Variable::DOCROOT text Document root This is the directory where your HTML originates. It should match the DocumentRoot of your HTTP server. http://www.apache.org/docs/mod/core.html#documentroot -area::image imagedir __MVC_IMAGEDIR__/images -products::artist text 30 Artist -custview::userdb::mail_list display offer=Special Offers, newsletter=Newsletter, alert=Alerts and Recalls, upgrade=Upgrades null_to_space -merchandising::sku text products sku -variable::Variable::PO_ACCEPTED select 0=No, 1=Yes -merchandising::upsell_to multiple 10 products sku null_to_space -merchandising::start date Start date -products::price text 12 Product Price digits_dot -dbconfig::mv_metadata::field checkbox columns:: List on select page Must have the key field (usually it is the first one) null_to_comma -userdb::dealer radio_nbsp =No,1=Yes Dealer -affiliate::name text 50 Affiliate Name -products::description text 60 Short Description -userdb::b_address2 text 40 -userdb::email_copy select =No, 1=Yes -cat text -userdb::lname text 30 Last Name -pricing::price_group combo pricing Discount group price_group nullselect -products::comment textarea 70 8 Long Description -variable::Variable::COD_ACCEPTED select 0=No, 1=Yes -cat::display_type select name=Name,url=URL only,icon=Icon and name, image=Image -products::size textarea 50 5 -cat::search textarea 50 4 -cat::area multiple 5 area code -userdb::address1 text 40 Address -userdb::b_fname text 40 Billing First Name -userdb::country text 10 Country -affiliate::affiliate text 12 Affiliate ID word -variable::Variable::UI_META_LINK select 0=No, 1=Yes Meta edit links Determines whether enabled by default. They can be turned on in Preferences. -products::image imagedir images/items Image nullselect <A HREF="admin/upload_file?ui_image_preview=__MVC_IMAGEURL__/items/_UI_VALUE_&ui_upload_binary=1&ui_upload_backup=0&mv_arg=images/items/_UI_VALUE_&ui_start_dir=items&ui_return_to=admin/item_edit&ui_return_to=item_id=_UI_KEY_&ui_preload=_UI_TABLE_:_UI_COLUMN_"><U><B>upload</b></U></A> -products::nontaxable select =Yes, 1=No Taxable? -dbconfig::mv_metadata::name text 70 4 Description -variable::Variable::STATIC_LOGGED select No, Yes Enabled for logged in users? <b>Yes</b> will cause Interchange to generate static links where possible, even when users are logged in. -userdb::fname text 30 First name -inventory::stock_message select In stock, Ships in 3-5 days, Ships in 4-6 weeks, Special order -variable::Variable::MYSQL select 0=No, 1=Yes -variable::Variable::CHECK_ACCEPTED select 0=No, 1=Yes -variable::Variable::MULTIORDER select =No,1=Yes Whether users should by default have multipage order forms. -tests 200 code,description -dbconfig::mv_metadata::help textarea 70 4 Help displays at top of page -merchandising::blurb_end text Closer end text for feature display -mv_metadata::height text 4 digits -mv_metadata::db combo tables nullselect -area::link_type select none=No link, external=External link (http://...), internal=Interchange page, simple=Simple search, complex=Complex search -dbconfig::mv_metadata::db combo tables nullselect -orderline text code,sku,description,price, quantity,subtotal -userdb text username,company,lname,fname -variable::Variable::CGI_URL text CGI URL URL that calls Interchange, without the server name -state text name -userdb::email text 40 Email Address -userdb::mail_list check_nbsp offer=Special Offers, newsletter=Newsletter, alert=Alerts and Recalls, upgrade=Upgrades null_to_space -dbconfig::mv_metadata::filter multiple 5 filesafe=Safe for file name, uc=Upper case, nullselect=First non-null (combo box), null_to_space=Translate null to space, null_to_comma=Translate null to comma, lc=Lower case, digits_dot=Decimal number (not negative), backslash=Remove backslashes, namecase=Name case, name=Turn LAST,FIRST into FIRST LAST, digits=Digits only, word=Word chars only (A-z0-9_), unix=DOS to UNIX, dos=UNIX to DOS, mac=UNIX to MAC, gate=Only allow if scratch set, no_white=No whitespace, strip=Strip leading/trailing whitespace, sql=Escape single quotes (SQL), text2html=Simple text to HTML, urlencode=URL encode (%20, etc), pagefile=Safe for Interchange page name, entities=HTML entities (&amp; -> &amp;amp;), date_change=MM/DD/YYYY to YYYYMMDD null_to_space -shipping text description -pricing::q3 text -order_view::orderline::status display pending=Pending, shipped=Shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect -tests::input textarea 70 5 -pricing text 2 -mv_metadata::type select select=Select box, text=Text entry*,textarea=Textarea,combo=Combo Select, radio=Radio box, radio_nbsp=Radio (nbsp), checkbox=Check box, check_nbsp=Checkbox (nbsp), hidden_text=Hidden (show text), multiple=Multiple Select, imagedir=Image listing, date=Date selector,display=Text of option Widget type filesafe -area -custview::userdb::fax_order display =Credit Card, 1=Fax or Mail, 2=Purchase order, 3=COD Payment method -affiliate::url text 70 URL Default URL to redirect to -products::sku SKU/Item code -products text sku,description,category,price -merchandising::finish date End date -affiliate text 25 affiliate,name,url,active Affiliates Data -products::related multiple 5 sku products Related items</B><BR><FONT SIZE=1>(space separated SKUs) -area::display_type select name=Name,url=URL only,icon=Icon and name, image=Image -country 200 -userdb::phone_night text 30 Home Phone -mv_metadata::options text 60 -userdb::username hidden_%20text 16 Username no_white -tests::no_expect textarea 70 5 -userdb::phone_day text 30 Daytime Phone -dbconfig::mv_metadata::code hidden_text Database table -userdb::mod_time text 20 -dbconfig::mv_metadata::type select select=Select box, text=Text entry*,textarea=Textarea,combo=Combo Select, radio=Radio box, radio_nbsp=Radio (nbsp), checkbox=Check box, check_nbsp=Checkbox (nbsp), hidden_text=Hidden (show text), multiple=Multiple Select, imagedir=Image listing, date=Date selector,display=Text of option Widget type filesafe -variable::Variable::ADDRESS text Company Address -mv_metadata::filter multiple 5 filesafe=Safe for file name, uc=Upper case, nullselect=First non-null (combo box), null_to_space=Translate null to space, null_to_comma=Translate null to comma, lc=Lower case, digits_dot=Decimal number (not negative), backslash=Remove backslashes, namecase=Name case, name=Turn LAST,FIRST into FIRST LAST, digits=Digits only, word=Word chars only (A-z0-9_), unix=DOS to UNIX, dos=UNIX to DOS, mac=UNIX to MAC, gate=Only allow if scratch set, no_white=No whitespace, strip=Strip leading/trailing whitespace, sql=Escape single quotes (SQL), text2html=Simple text to HTML, urlencode=URL encode (%20, etc), pagefile=Safe for Interchange page name, entities=HTML entities (&amp; -> &amp;amp;), date_change=MM/DD/YYYY to YYYYMMDD null_to_space -tests::expected textarea 70 5 -userdb::company text 40 Company -tests::description textarea 70 5 -merchandising::featured combo =none, specials=Specials, bookpick=Book Pick Where featured nullselect -access::super select 0=No, 1=Yes -userdb::b_country text 10 Billing Country -merchandising::banner_text text Banner text for use where appropriate. -mv_metadata::help textarea 70 4 -variable::pref_group text Preferences area -userdb::address2 text 40 -userdb::b_city text 40 Billing City -variable::Variable::CREDIT_CARDS_ACCEPTED checkbox visa=Visa, mc=Mastercard, discover=Discover, amex=American Express null_to_space -userdb::zip text 10 Postcode uc word -dbconfig::mv_metadata::height text 4 Select page rows Number of rows to display at selector page. digits -products::category combo products Category Enter in box for new category. category nullsellect -custview::userdb::email_copy display =No, 1=Yes Payment method -userdb::state text 10 State -custview::userdb::dealer display =No,1=Yes Dealer -orderline::status combo pending=Pending, shipped=Shipped, backorder=Back ordered, credit=Waiting for credit check, canceled=Canceled nullselect diff --git a/dist/test/products/number_tests.pl b/dist/test/products/number_tests.pl deleted file mode 100644 index b4444a4fc..000000000 --- a/dist/test/products/number_tests.pl +++ /dev/null @@ -1,6 +0,0 @@ -undef $/; -my $count = '000001'; -$_ = <>; -s/\%\%\%\n\d+/"%%%\n" . $count++/eg; -print; -__END__ diff --git a/dist/test/products/pricing.asc b/dist/test/products/pricing.asc deleted file mode 100644 index d8690b531..000000000 --- a/dist/test/products/pricing.asc +++ /dev/null @@ -1,11 +0,0 @@ -sku price XL S common price1 price5 price10 -00-0011 price data ok 500 250 -00-0011a 50 45 35 30 -00-343 400 200 50 20 -19-202 400 200 50 20 -21-221 400 200 50 20 -99-102 2 -0.50 12 9 8 -34-101 400 200 50 20 -00-341 400 200 50 20 -red 1 -0.50 -1.00 9 8 -00-342 400 200 50 20 diff --git a/dist/test/products/products.asc b/dist/test/products/products.asc deleted file mode 100644 index 05b305203..000000000 --- a/dist/test/products/products.asc +++ /dev/null @@ -1,12 +0,0 @@ -code description title artist comment display image price category nontaxable weight size color related -00-0011 MONA LISA, Da Vinci Mona Lisa Leonardo Da Vinci What was she smiling about? The Louvre 00-0011.jpg 50000000 Renaissance no 8 00-0011a -00-0011a Gilded Frame signed by Da Vinci Frame Gilded 00-0011a.gif 1000 Accessory 1 20 -00-343 PERSISTENCE OF MEMORY, Dali Persistence of Memory Salvador Dali How does he do that? MOMA 00-343.jpg 20000000 Surrealists no 10 -19-204 ERA'S END, Keiko Era's End Keiko Stranger and stranger... South Beach Gallery 19-204.jpg 200000 Surrealists no 5 -19-202 RADIOACTIVE CATS, Sandy Skoglund Radioactive Cats Sandy Skoglund What is wrong with this picture? Getty Museum radcats1.gif 400000 Contemporary no 30 -21-221 AMERICAN GOTHIC, by Wood American Gothic Grant Wood The quintessential piece of Americana. Art Institute 21-221.jpg 10000000 Americana no 10 99-102 -99-102 THE ART STORE T-SHIRT The Art Store T-Shirt The Art Store Guaranteed to be of the finest cheap T-shirt material A Store Near You tshirt.jpg Americana,Contemporary no 1 S=Small, M=Medium, L=Large*, XL=Extra Large red=Ruby Red, blue=Sky Blue*, green=Sea Green, Black, White -34-101 FAMILY PORTRAIT, by Langan Family Portrait Jean Langan Haunting view of Grandma's Parlor Krannert 34-101.gif 1000000 Americana no 10 -00-341 SUNFLOWERS, by Van Gogh Sunflowers Vincent Van Gogh An exquisite painting showing Van Gogh at the height of his pointillist powers. The Louvre 00-341.jpg 40000000 Impressionists no 40 -19-203 PANORAMIC PROCESSION, Keiko Panoramic Procession Keiko You are in a series of twisty passages.... South Beach Gallery 19-203.jpg 200000 Surrealists no 5 -00-342 THE STARRY NIGHT, Van Gogh The Starry Night Vincent Van Gogh Breathtaking example of Van Gogh's work. MOMA 00-342.jpg 20000000 Impressionists no 10 diff --git a/dist/test/products/products.notes b/dist/test/products/products.notes deleted file mode 100644 index 79fd79b23..000000000 --- a/dist/test/products/products.notes +++ /dev/null @@ -1,159 +0,0 @@ -code -description -title -artist -display -image -price -category -nontaxable -weight -size -color -related -comment -notes_field ~ - -code: 00-0011 -description: MONA LISA, Da Vinci -title: Mona Lisa -artist: Leonardo Da Vinci -display: The Louvre -image: 00-0011.jpg -price: 50000000 -category: Renaissance -nontaxable: no -weight: 8 - - -~ -code: 00-0011a -description: Gilded Frame signed by Da Vinci -title: Frame -artist: Gilded -image: 00-0011a.gif -price: 1000 -category: Accessory -nontaxable: 1 -weight: 20 - - -~ -code: 00-343 -description: PERSISTENCE OF MEMORY, Dali -title: Persistence of Memory -artist: Salvador Dali -display: MOMA -image: 00-343.jpg -price: 20000000 -category: Surrealists -nontaxable: no -weight: 10 - - -~ -code: 19-204 -description: ERA'S END, Keiko -title: Era's End -artist: Keiko -display: South Beach Gallery -image: 19-204.jpg -price: 200000 -category: Surrealists -nontaxable: no -weight: 5 - - -~ -code: 19-202 -description: RADIOACTIVE CATS, Sandy Skoglund -title: Radioactive Cats -artist: Sandy Skoglund -display: Getty Museum -image: radcats1.gif -price: 400000 -category: Contemporary -nontaxable: no -weight: 30 - - -~ -code: 21-221 -description: AMERICAN GOTHIC, by Wood -title: American Gothic -artist: Grant Wood -display: Art Institute -image: 21-221.jpg -price: 10000000 -category: Americana -nontaxable: no -weight: 10 - - -~ -code: 99-102 -description: THE ART STORE T-SHIRT -title: The Art Store T-Shirt -artist: The Art Store -display: A Store Near You -image: tshirt.jpg -category: Americana,Contemporary -nontaxable: no -weight: 1 -size: S=Small, M=Medium, L=Large*, XL=Extra Large -color: red=Ruby Red, blue=Sky Blue*, green=Sea Green, Black, White - - -~ -code: 34-101 -description: FAMILY PORTRAIT, by Langan -title: Family Portrait -artist: Jean Langan -display: Krannert -image: 34-101.gif -price: 1000000 -category: Americana -nontaxable: no -weight: 10 - - -~ -code: 00-341 -description: SUNFLOWERS, by Van Gogh -title: Sunflowers -artist: Vincent Van Gogh -display: The Louvre -image: 00-341.jpg -price: 40000000 -category: Impressionists -nontaxable: no -weight: 40 - - -~ -code: 19-203 -description: PANORAMIC PROCESSION, Keiko -title: Panoramic Procession -artist: Keiko -display: South Beach Gallery -image: 19-203.jpg -price: 200000 -category: Surrealists -nontaxable: no -weight: 5 - - -~ -code: 00-342 -description: THE STARRY NIGHT, Van Gogh -title: The Starry Night -artist: Vincent Van Gogh -display: MOMA -image: 00-342.jpg -price: 20000000 -category: Impressionists -nontaxable: no -weight: 10 - - -~ diff --git a/dist/test/products/products2.asc b/dist/test/products/products2.asc deleted file mode 100644 index 8f91687f6..000000000 --- a/dist/test/products/products2.asc +++ /dev/null @@ -1,10 +0,0 @@ -code|description|title|artist|comment|display|image|price|category|nontaxable|weight|size|color -00-0011|XXXX MONA LISA, Da Vinci|Mona Lisa|Leonardo Da Vinci|What was she smiling about?|The Louvre|00-0011.jpg|49999995|Renaissance|no|8|| -00-0011a|XXXX Gilded Frame signed by Da Vinci|Frame|Gilded||||1000|Accessory|1|20|| -00-343|XXXX PERSISTENCE OF MEMORY, Dali|Persistence of Memory|Salvador Dali|How does he do that? |MOMA|00-343.jpg|20000000|Surrealists|no|10|| -19-202|XXXX RADIOACTIVE CATS, Sandy Skoglund|Radioactive Cats|Sandy Skoglund|What is wrong with this picture?|Getty Museum|radcats1.gif|400000|Contemporary|no|30|| -21-221|XXXX AMERICAN GOTHIC, by Wood|American Gothic|Grant Wood|The quintessential piece of Americana.|Art Institute|21-221.jpg|10000000|Americana|no|10|| -99-102|XXXX THE ART STORE T-SHIRT|The Art Store T-Shirt|The Art Store|Guaranteed to be of the finest cheap T-shirt material|A Store Near You|tshirt.gif|10|Americana,Contemporary|no|1|S=Small, M=Medium, L=Large*, XL=Extra Large, XXXL=Big Ass*|red=Ruby Red, blue=Sky Blue*, green=Sea Green, Black, White -34-101|XXXX FAMILY PORTRAIT, by Langan|Family Portrait|Jean Langan|Haunting view of Grandma's Parlor|Krannert|34-101.gif|1000000|Americana|no|10|| -00-341|XXXX SUNFLOWERS, by Van Gogh|Sunflowers|Vincent Van Gogh|An exquisite painting showing Van Gogh at the height of his pointillist powers.|The Louvre|00-341.jpg|40000000|Impressionists|no|40|| -X0-342|XXXX THE STARRY NIGHT, Van Gogh|2-The Starry Night|Vincent Van Gogh|Breathtaking example of Van Gogh's work.|MOMA|00-342.jpg|20000000|Impressionists|no|10|| diff --git a/dist/test/products/randgen b/dist/test/products/randgen deleted file mode 100644 index e8929fe54..000000000 --- a/dist/test/products/randgen +++ /dev/null @@ -1,7 +0,0 @@ -print join "\t", qw/code f1 f2 f3 f4 f5 f6/; -print "\n"; -foreach $key (1 .. 1000) { - @out = map { int rand(5) } (1 .. 6); - print join "\t", $key, @out; - print "\n"; -} diff --git a/dist/test/products/salestax.asc b/dist/test/products/salestax.asc deleted file mode 100644 index da686ffbd..000000000 --- a/dist/test/products/salestax.asc +++ /dev/null @@ -1,52 +0,0 @@ -default 0 -AL .04 -AK 0 -AZ .05 -AR .045 -CA .06 -CO .03 -CT .06 -DE 0 -FL .06 -GA .04 -HI .04 -ID .05 -IL .0625 -IN .05 -IA .05 -KS .049 -KY .06 -LA .04 -ME .06 -MD .05 -MA .05 -MI .06 -MN .065 -MS .07 -MO .04225 -MT 0 -NE .05 -NV .065 -NH 0 -NJ .06 -NM .05 -NY .04 -NC .04 -ND .05 -OH .05 -OK .045 -OR 0 -PA .06 -RI .07 -SC .05 -SD .04 -TN .06 -TX .0625 -UT .04875 -VT .05 -VA .035 -WA .065 -WV .06 -WI .05 -WY .04 -DC .0575 diff --git a/dist/test/products/shipping.asc b/dist/test/products/shipping.asc deleted file mode 100644 index 05799b360..000000000 --- a/dist/test/products/shipping.asc +++ /dev/null @@ -1,15 +0,0 @@ -code description criteria min max formula -0 None weight 0 99999999 0 -default None weight 0 99999999 0 -upsg UPS Ground quantity 0 0 0 e Nothing to ship! -upsg UPS Ground quantity 1 5 7 -upsg UPS Ground quantity 6 10 f 7 + (@@TOTAL@@ - 5) * .50 -upsg UPS Ground quantity 11 999999 f 9.50 + ( @@TOTAL@@ - 10 ) * .45 -upsb UPS Blue quantity 0 0 0 e Nothing to ship! -upsb UPS Blue quantity 1 5 12 -upsb UPS Blue quantity 6 10 17 -upsb UPS Blue quantity 11 99999999 x 1.75 -upsr UPS Red quantity 0 0 0 e Nothing to ship! -upsr UPS Red quantity 0 5 17 -upsr UPS Red quantity 6 10 22 -upsr UPS Red quantity 11 99999999 x 2.25 diff --git a/dist/test/products/sort.asc b/dist/test/products/sort.asc deleted file mode 100644 index fa0b99b5d..000000000 --- a/dist/test/products/sort.asc +++ /dev/null @@ -1,1001 +0,0 @@ -code f1 f2 f3 f4 f5 f6 -1 9 2 4 4 1 7 -2 4 3 4 9 6 0 -3 3 9 8 1 6 6 -4 8 9 2 3 0 2 -5 7 2 1 3 4 3 -6 1 3 6 5 8 7 -7 3 2 1 7 1 7 -8 8 5 6 6 6 2 -9 3 4 2 6 8 3 -10 8 5 5 9 9 0 -11 3 0 3 9 6 1 -12 7 9 4 8 7 6 -13 5 5 1 2 2 8 -14 4 6 3 7 2 2 -15 0 0 8 6 0 7 -16 6 4 8 0 3 5 -17 1 1 5 6 9 2 -18 3 5 8 4 7 1 -19 3 2 7 6 9 9 -20 9 0 0 7 7 1 -21 5 3 5 3 3 9 -22 8 5 0 4 2 0 -23 6 5 5 5 0 3 -24 7 3 5 5 0 5 -25 4 0 6 5 7 3 -26 6 2 7 2 6 1 -27 1 5 6 2 9 9 -28 2 6 4 8 1 5 -29 1 9 9 7 4 9 -30 3 9 9 9 4 7 -31 3 1 0 0 3 6 -32 1 5 1 8 8 1 -33 7 0 7 2 9 9 -34 7 1 8 6 8 3 -35 6 2 2 6 2 6 -36 4 5 8 4 5 2 -37 0 7 8 2 5 6 -38 3 3 7 1 5 6 -39 0 3 7 9 0 6 -40 2 6 9 4 3 1 -41 1 7 7 0 2 2 -42 2 2 0 0 5 5 -43 7 9 9 4 1 4 -44 1 2 8 9 1 8 -45 6 4 5 5 9 8 -46 6 1 6 3 1 8 -47 6 4 1 7 5 6 -48 2 2 6 2 6 7 -49 6 8 9 5 7 1 -50 3 3 5 8 8 5 -51 7 5 6 3 9 7 -52 1 6 2 2 3 7 -53 9 6 9 5 8 6 -54 3 5 4 2 1 2 -55 4 4 5 9 3 4 -56 5 0 0 1 3 9 -57 9 5 6 1 8 0 -58 8 7 6 8 3 5 -59 5 6 1 9 9 2 -60 1 4 7 7 3 0 -61 1 9 0 1 0 4 -62 1 9 9 7 1 7 -63 7 0 5 4 9 9 -64 0 4 5 2 3 5 -65 4 5 9 1 3 3 -66 2 4 2 3 6 3 -67 7 7 3 7 5 4 -68 5 3 5 1 7 4 -69 0 8 8 6 0 2 -70 1 4 8 1 6 1 -71 5 9 5 8 2 2 -72 1 9 9 4 7 5 -73 9 2 8 5 4 6 -74 9 4 4 8 0 4 -75 0 2 9 8 3 6 -76 9 9 5 5 7 7 -77 7 8 7 7 3 5 -78 2 3 8 1 8 2 -79 7 7 6 1 5 6 -80 6 6 9 5 4 2 -81 2 4 2 8 0 9 -82 5 8 8 3 5 1 -83 9 8 4 7 9 2 -84 9 6 0 6 8 6 -85 3 5 3 2 1 7 -86 5 3 2 7 1 2 -87 7 7 1 5 1 6 -88 6 0 5 1 8 4 -89 4 8 1 5 4 0 -90 1 8 5 4 1 6 -91 2 6 0 5 4 1 -92 8 1 9 9 6 0 -93 6 3 1 1 4 9 -94 6 9 7 8 4 2 -95 9 6 0 5 1 1 -96 2 3 8 2 9 2 -97 4 7 4 3 7 1 -98 4 3 4 5 5 9 -99 5 2 8 2 1 2 -100 5 0 8 5 5 9 -101 7 7 3 5 0 3 -102 8 4 1 3 8 8 -103 4 3 2 8 9 8 -104 7 4 1 6 7 2 -105 8 2 3 7 8 9 -106 7 6 7 1 2 7 -107 4 0 2 6 3 0 -108 4 8 4 7 6 3 -109 6 4 8 7 0 5 -110 9 9 8 3 7 7 -111 2 5 3 9 6 6 -112 6 1 6 8 7 0 -113 9 2 9 3 0 5 -114 7 6 0 5 3 1 -115 1 3 0 0 7 8 -116 7 9 3 1 8 9 -117 7 5 1 4 4 9 -118 5 3 1 4 7 1 -119 9 5 8 0 0 2 -120 1 1 6 2 1 3 -121 0 9 2 3 0 1 -122 3 8 6 5 2 0 -123 4 7 4 5 1 2 -124 7 1 7 5 1 8 -125 7 3 0 3 5 2 -126 7 6 2 9 9 3 -127 1 3 1 7 9 3 -128 8 3 1 3 9 3 -129 6 6 5 3 2 7 -130 2 0 0 3 4 6 -131 5 1 2 8 1 2 -132 1 2 6 2 9 5 -133 6 8 8 8 1 7 -134 1 7 4 7 1 6 -135 4 4 6 5 7 0 -136 1 3 2 3 1 3 -137 5 2 5 1 5 5 -138 6 2 3 5 0 5 -139 3 2 3 7 9 5 -140 4 3 9 1 9 6 -141 2 0 0 4 3 2 -142 7 9 4 2 1 0 -143 8 8 2 2 3 2 -144 7 7 5 1 4 4 -145 6 9 8 5 0 7 -146 2 2 8 2 6 2 -147 4 4 1 9 7 3 -148 0 5 1 2 7 5 -149 5 5 2 0 6 7 -150 5 2 6 4 7 6 -151 2 0 9 0 3 5 -152 2 8 0 4 8 7 -153 7 8 2 8 1 0 -154 4 6 5 7 7 2 -155 4 3 4 0 7 2 -156 7 9 3 6 9 6 -157 2 2 4 2 6 2 -158 9 3 1 2 2 2 -159 3 7 8 9 4 6 -160 1 8 9 6 9 6 -161 8 6 6 1 3 6 -162 8 5 8 3 7 4 -163 5 7 7 7 9 0 -164 9 3 7 8 2 1 -165 4 3 0 3 9 9 -166 0 8 5 6 0 9 -167 3 8 4 1 1 2 -168 5 7 9 3 4 9 -169 4 4 2 1 2 4 -170 3 6 7 3 0 7 -171 3 1 5 9 8 6 -172 8 1 4 2 2 6 -173 4 8 4 3 2 9 -174 3 6 3 5 8 5 -175 0 1 2 8 5 3 -176 5 8 5 1 7 3 -177 7 5 4 2 8 7 -178 9 2 5 3 6 8 -179 2 9 4 6 4 2 -180 2 5 4 4 3 9 -181 8 8 8 3 0 5 -182 6 7 1 1 0 9 -183 9 9 1 5 2 8 -184 3 5 7 7 1 2 -185 0 4 7 5 9 0 -186 4 7 9 3 1 9 -187 9 8 7 0 0 7 -188 0 9 7 1 4 9 -189 0 8 5 7 5 7 -190 9 6 1 7 1 0 -191 8 6 8 8 9 9 -192 8 8 7 5 9 7 -193 3 9 7 0 1 1 -194 0 1 0 5 8 6 -195 3 8 2 4 5 4 -196 5 4 0 3 2 0 -197 3 0 8 0 6 7 -198 8 9 7 5 0 8 -199 7 0 9 7 6 7 -200 3 9 5 6 3 1 -201 0 8 5 1 2 8 -202 1 5 8 0 5 4 -203 8 4 4 5 0 4 -204 3 8 4 2 6 0 -205 0 0 9 6 7 3 -206 7 7 1 3 9 3 -207 2 0 8 0 1 4 -208 5 9 9 9 4 0 -209 4 8 8 8 0 5 -210 9 0 5 9 6 2 -211 2 4 0 4 8 9 -212 8 0 0 7 1 1 -213 1 6 0 1 6 5 -214 1 0 3 0 9 4 -215 5 8 5 0 7 2 -216 3 0 7 3 4 6 -217 2 2 6 2 9 8 -218 4 1 4 4 2 1 -219 0 4 1 4 4 1 -220 9 9 9 5 9 7 -221 8 3 7 5 6 1 -222 1 9 4 8 2 3 -223 6 6 4 1 1 6 -224 2 1 0 4 6 5 -225 6 5 4 6 0 4 -226 3 8 7 1 4 4 -227 3 6 3 7 4 5 -228 0 1 2 4 2 3 -229 1 5 5 2 0 1 -230 7 7 7 1 3 7 -231 6 6 6 3 8 0 -232 7 1 6 1 9 1 -233 7 9 3 9 4 5 -234 3 6 1 8 9 2 -235 0 6 9 7 8 3 -236 5 4 0 2 8 8 -237 2 6 0 9 7 9 -238 1 5 9 4 4 3 -239 0 8 0 2 7 9 -240 5 7 6 5 5 4 -241 8 1 9 8 3 8 -242 6 6 5 6 5 3 -243 6 7 8 5 1 3 -244 8 2 1 9 4 8 -245 8 9 6 4 4 2 -246 9 2 3 9 1 6 -247 8 7 2 3 4 8 -248 6 0 6 4 5 7 -249 7 4 9 9 4 4 -250 8 2 4 5 7 8 -251 7 7 1 0 7 2 -252 7 5 0 0 8 5 -253 9 4 5 5 9 1 -254 3 6 6 3 6 0 -255 7 4 3 1 9 0 -256 0 6 8 2 7 5 -257 5 5 0 5 5 8 -258 1 4 3 6 0 2 -259 8 3 9 4 6 5 -260 5 4 0 8 5 9 -261 9 6 6 7 8 4 -262 2 3 9 3 9 5 -263 1 0 0 4 7 0 -264 7 6 3 6 1 0 -265 2 6 4 2 4 0 -266 1 3 6 8 1 4 -267 2 3 8 2 6 7 -268 7 8 8 7 3 6 -269 8 0 2 2 7 3 -270 2 9 9 7 1 4 -271 7 3 7 4 1 8 -272 8 4 2 7 6 9 -273 5 4 8 3 2 1 -274 9 0 2 1 3 0 -275 4 6 9 4 3 1 -276 8 1 4 6 5 6 -277 5 4 0 7 2 7 -278 7 7 1 6 0 4 -279 7 0 5 0 2 8 -280 1 7 4 1 1 8 -281 2 9 0 7 6 6 -282 3 1 0 4 9 3 -283 2 7 0 4 3 1 -284 8 1 1 3 1 3 -285 2 3 1 6 4 2 -286 5 6 2 6 3 8 -287 2 7 0 3 2 9 -288 6 4 6 6 8 9 -289 7 6 0 9 0 2 -290 2 2 5 3 9 9 -291 6 4 6 9 1 0 -292 7 3 7 7 6 0 -293 7 2 4 3 8 3 -294 3 6 0 3 5 0 -295 6 7 3 1 1 2 -296 1 8 7 7 7 8 -297 7 5 1 5 3 7 -298 5 0 0 0 4 9 -299 3 7 5 4 1 0 -300 4 7 8 7 9 0 -301 0 0 8 7 7 6 -302 6 5 1 8 0 4 -303 6 6 5 6 7 0 -304 5 1 7 0 5 9 -305 0 9 6 9 7 5 -306 9 8 6 7 6 3 -307 3 2 9 5 0 0 -308 9 6 6 5 2 4 -309 5 8 5 3 8 0 -310 2 9 0 9 8 8 -311 5 7 6 1 5 2 -312 5 9 4 5 4 5 -313 5 4 2 2 9 5 -314 6 5 3 1 8 2 -315 2 1 1 2 1 0 -316 0 6 8 6 8 3 -317 9 4 2 4 9 7 -318 9 4 1 1 7 1 -319 6 3 6 0 5 5 -320 2 7 7 4 9 8 -321 4 9 5 2 6 3 -322 5 5 8 8 9 7 -323 5 9 2 7 0 9 -324 9 7 2 6 8 8 -325 1 0 5 9 4 5 -326 7 8 5 2 1 1 -327 6 7 7 4 5 6 -328 1 1 5 4 9 6 -329 3 8 4 6 4 2 -330 4 6 3 0 5 7 -331 5 2 6 0 5 8 -332 2 1 5 9 6 1 -333 6 8 3 2 2 2 -334 9 5 0 3 1 5 -335 6 6 1 9 6 7 -336 7 2 9 4 2 5 -337 2 4 7 8 4 3 -338 9 0 2 2 2 4 -339 5 1 9 5 5 1 -340 1 1 7 2 1 4 -341 9 9 6 9 4 9 -342 5 6 4 2 5 8 -343 6 4 9 8 7 2 -344 3 2 3 3 8 9 -345 4 9 1 2 2 3 -346 7 2 2 3 1 6 -347 2 7 3 7 0 8 -348 5 6 3 5 5 1 -349 7 8 3 1 1 2 -350 0 6 1 1 9 3 -351 5 6 6 7 0 7 -352 3 3 5 7 0 5 -353 6 6 1 9 1 7 -354 0 8 6 4 9 8 -355 6 9 5 8 1 4 -356 2 6 0 8 4 1 -357 6 8 4 1 5 4 -358 6 1 0 8 1 1 -359 6 2 0 2 7 9 -360 1 3 9 6 1 1 -361 0 4 8 1 2 2 -362 2 8 1 6 9 6 -363 1 6 8 2 4 0 -364 4 0 2 4 3 0 -365 4 4 3 3 0 5 -366 5 1 9 3 2 2 -367 6 5 0 7 2 0 -368 4 3 6 2 5 1 -369 3 9 1 6 4 5 -370 6 8 9 9 1 0 -371 5 6 2 5 0 5 -372 8 6 0 8 3 2 -373 9 7 5 5 0 1 -374 6 3 1 8 9 5 -375 4 5 3 4 5 5 -376 4 1 2 7 7 2 -377 2 5 9 2 3 2 -378 5 2 0 0 8 0 -379 2 5 4 3 4 3 -380 9 8 8 3 2 4 -381 8 7 5 1 4 2 -382 4 7 7 3 9 1 -383 6 4 4 7 5 3 -384 7 8 8 2 1 2 -385 5 1 0 4 4 3 -386 8 3 1 4 5 5 -387 6 9 2 4 3 2 -388 6 0 7 0 7 2 -389 3 5 0 2 7 2 -390 4 2 3 5 6 8 -391 9 5 1 0 0 6 -392 6 7 6 8 1 9 -393 1 7 9 8 8 6 -394 1 2 1 2 4 8 -395 4 9 1 8 4 8 -396 7 3 4 8 4 4 -397 5 0 1 1 9 3 -398 1 0 1 1 9 9 -399 7 0 2 9 2 6 -400 8 7 5 0 6 0 -401 8 3 4 3 2 8 -402 7 7 8 8 9 8 -403 2 0 8 3 1 7 -404 3 9 8 5 9 1 -405 1 8 8 7 8 5 -406 8 7 8 2 0 0 -407 1 8 8 0 7 8 -408 8 9 9 7 2 0 -409 5 5 0 3 0 0 -410 4 2 8 3 0 7 -411 8 8 4 6 1 5 -412 7 3 3 6 3 0 -413 4 2 9 3 9 1 -414 4 4 7 5 8 8 -415 5 2 1 3 5 1 -416 0 3 0 5 0 2 -417 0 8 5 3 4 8 -418 3 9 0 3 2 0 -419 5 6 5 2 1 3 -420 1 7 5 2 0 1 -421 4 1 5 5 7 6 -422 7 7 4 2 1 9 -423 1 5 8 2 8 0 -424 2 3 7 8 6 9 -425 1 8 6 6 1 7 -426 8 5 9 3 1 6 -427 9 9 4 3 1 6 -428 3 3 1 1 6 0 -429 2 9 4 0 7 1 -430 0 8 9 6 4 0 -431 4 2 6 3 6 8 -432 0 5 7 4 9 9 -433 1 2 2 2 4 8 -434 2 7 7 6 8 4 -435 7 8 3 7 4 8 -436 7 9 1 4 2 7 -437 2 3 2 9 8 2 -438 8 9 5 1 1 0 -439 0 4 8 7 1 6 -440 2 9 4 6 6 9 -441 4 4 8 5 9 1 -442 2 1 4 5 1 2 -443 7 0 2 3 1 4 -444 3 1 8 1 9 0 -445 8 2 9 2 8 6 -446 2 2 1 1 8 0 -447 3 0 2 7 5 3 -448 0 3 4 3 7 6 -449 7 0 8 5 2 8 -450 5 1 0 5 4 9 -451 1 6 2 2 8 0 -452 3 1 1 5 9 6 -453 9 0 0 3 3 7 -454 9 0 8 7 6 1 -455 5 2 2 6 7 6 -456 6 9 3 8 2 2 -457 9 5 3 0 0 3 -458 7 0 3 7 3 7 -459 5 3 7 3 1 4 -460 5 6 6 8 3 4 -461 5 9 4 8 8 6 -462 0 7 2 4 7 3 -463 7 4 3 0 2 6 -464 7 7 0 5 1 1 -465 0 6 8 7 4 1 -466 1 9 0 6 8 8 -467 2 9 6 5 4 3 -468 8 1 8 1 2 0 -469 8 0 8 8 6 9 -470 0 6 6 8 3 1 -471 9 5 1 0 1 0 -472 9 4 9 5 9 3 -473 9 8 5 8 0 7 -474 9 8 8 7 7 4 -475 7 7 1 3 5 4 -476 5 5 0 6 5 2 -477 7 5 6 7 0 6 -478 0 0 5 6 8 5 -479 4 8 3 2 5 1 -480 7 2 9 8 6 5 -481 3 2 0 4 9 6 -482 6 6 1 3 3 2 -483 9 4 3 4 0 2 -484 0 5 0 3 8 5 -485 5 5 8 4 4 5 -486 9 8 8 0 2 7 -487 6 9 4 8 2 7 -488 1 2 2 4 7 3 -489 6 7 8 6 1 6 -490 2 6 2 1 0 6 -491 7 0 5 5 0 7 -492 3 6 7 7 5 9 -493 4 6 1 7 1 8 -494 0 8 5 8 5 6 -495 4 7 2 6 9 3 -496 3 6 3 8 2 3 -497 6 5 0 3 3 6 -498 3 8 3 4 5 4 -499 3 5 2 8 3 8 -500 5 8 6 8 5 5 -501 2 9 2 5 8 5 -502 9 5 1 0 9 4 -503 6 2 2 9 6 7 -504 4 0 2 7 8 6 -505 5 4 5 2 3 1 -506 7 5 0 0 0 8 -507 5 0 4 7 0 3 -508 1 7 5 3 7 2 -509 1 1 2 3 9 1 -510 0 5 5 5 7 9 -511 7 5 4 7 5 5 -512 6 1 5 0 8 5 -513 3 0 3 9 3 0 -514 1 4 2 4 8 1 -515 5 9 7 1 5 4 -516 0 2 0 4 9 6 -517 9 6 7 4 6 6 -518 0 0 6 3 9 0 -519 4 1 4 6 5 3 -520 8 0 2 5 2 7 -521 0 2 9 0 7 9 -522 6 6 5 4 1 2 -523 1 2 3 8 5 2 -524 8 0 4 3 6 9 -525 7 4 0 9 0 2 -526 6 1 5 6 1 2 -527 5 8 8 1 3 0 -528 4 5 2 7 3 8 -529 0 2 8 4 5 4 -530 4 3 9 4 2 9 -531 7 9 0 2 6 2 -532 4 2 1 3 3 5 -533 3 7 0 5 5 4 -534 3 5 6 2 0 2 -535 6 4 5 6 8 8 -536 6 6 7 7 8 4 -537 0 2 6 1 5 0 -538 7 9 8 7 4 3 -539 2 8 8 9 0 8 -540 1 7 3 7 4 2 -541 6 0 8 4 8 6 -542 8 8 9 4 9 5 -543 4 7 4 2 5 9 -544 5 7 8 4 6 8 -545 3 8 6 6 6 0 -546 9 2 1 7 6 9 -547 4 4 7 3 8 7 -548 9 3 4 4 6 9 -549 3 2 7 1 6 3 -550 0 0 2 7 7 8 -551 8 6 0 9 3 7 -552 9 7 1 7 1 0 -553 4 1 4 9 5 0 -554 9 9 2 7 1 8 -555 1 2 9 3 9 7 -556 2 7 3 2 7 7 -557 0 7 5 1 4 7 -558 2 9 8 6 8 3 -559 6 8 3 8 5 4 -560 7 6 6 7 0 6 -561 4 2 3 7 5 1 -562 5 5 8 0 7 3 -563 7 9 2 6 5 1 -564 0 2 9 3 0 5 -565 8 8 2 4 5 2 -566 0 9 4 4 7 9 -567 6 2 5 4 3 2 -568 7 1 1 0 7 7 -569 1 7 9 1 1 9 -570 7 9 8 9 4 3 -571 1 4 3 6 9 0 -572 6 5 3 1 0 6 -573 3 8 8 4 8 5 -574 1 0 3 1 1 4 -575 1 8 4 9 7 8 -576 3 9 3 6 6 2 -577 7 2 8 0 4 8 -578 7 7 7 5 2 5 -579 1 4 5 4 5 7 -580 9 6 5 3 6 3 -581 2 9 3 5 6 0 -582 8 3 2 6 3 7 -583 5 1 4 2 7 7 -584 8 8 1 4 3 7 -585 1 2 4 7 6 1 -586 0 8 0 4 4 6 -587 4 2 0 7 9 4 -588 4 4 5 9 7 2 -589 7 5 1 9 9 4 -590 6 0 6 1 8 3 -591 2 8 1 3 3 6 -592 9 8 8 9 5 7 -593 3 0 2 9 0 9 -594 2 8 4 3 7 4 -595 7 4 5 4 5 3 -596 7 7 2 9 1 5 -597 5 1 3 4 0 9 -598 1 4 0 3 4 1 -599 3 6 9 7 9 7 -600 1 7 1 6 2 6 -601 9 0 4 1 9 5 -602 7 5 6 1 0 7 -603 1 2 2 2 6 7 -604 3 9 3 3 6 3 -605 0 8 1 1 5 3 -606 8 5 3 3 7 3 -607 8 4 9 5 6 9 -608 3 7 1 6 9 8 -609 3 3 7 6 6 4 -610 0 7 3 1 9 8 -611 5 7 3 8 0 1 -612 1 9 6 1 5 2 -613 0 8 0 2 4 9 -614 0 7 3 7 4 0 -615 2 5 7 5 6 6 -616 3 1 4 7 0 5 -617 9 2 4 5 3 9 -618 7 4 7 7 6 2 -619 7 7 0 1 5 4 -620 1 7 9 9 2 6 -621 6 6 8 0 4 8 -622 5 3 0 0 9 4 -623 9 7 8 7 5 4 -624 9 2 1 0 3 6 -625 5 5 4 5 4 6 -626 1 0 3 0 1 7 -627 8 7 1 9 7 0 -628 3 7 8 2 4 3 -629 6 4 5 8 4 9 -630 5 9 5 9 4 9 -631 6 6 0 0 6 2 -632 8 4 0 9 4 7 -633 0 8 4 8 0 9 -634 2 7 3 7 6 7 -635 7 1 7 3 1 1 -636 3 8 7 3 8 3 -637 6 6 8 6 6 3 -638 4 7 1 9 6 1 -639 8 8 9 1 6 5 -640 9 4 6 6 7 8 -641 8 0 6 6 4 5 -642 9 1 1 8 7 8 -643 1 2 5 3 1 2 -644 5 0 0 4 2 7 -645 9 2 1 5 8 8 -646 4 7 9 1 3 3 -647 6 3 4 8 2 2 -648 6 3 4 2 7 6 -649 4 2 6 5 6 9 -650 3 6 1 4 1 0 -651 3 6 7 2 7 1 -652 6 3 4 0 1 6 -653 3 8 0 8 0 7 -654 4 5 0 1 1 7 -655 0 4 3 1 9 5 -656 2 2 1 9 5 8 -657 0 1 2 5 2 4 -658 1 5 2 2 3 3 -659 0 8 9 0 9 1 -660 7 0 5 0 2 5 -661 6 4 8 7 4 3 -662 6 4 4 8 9 7 -663 2 1 2 5 3 6 -664 8 3 4 8 4 4 -665 9 2 5 5 3 7 -666 0 9 2 8 6 6 -667 1 3 0 6 1 0 -668 3 4 2 6 9 6 -669 3 8 0 8 6 4 -670 2 6 6 7 1 9 -671 5 1 8 7 9 5 -672 3 1 8 4 8 0 -673 5 2 4 7 9 4 -674 3 2 3 3 0 0 -675 7 3 6 4 0 7 -676 4 6 9 2 3 9 -677 8 6 0 6 1 9 -678 6 6 1 1 3 0 -679 6 7 2 0 0 3 -680 0 8 6 7 3 7 -681 5 7 3 4 9 6 -682 3 8 3 4 4 5 -683 4 1 1 5 3 5 -684 6 9 2 9 9 3 -685 2 0 2 8 8 5 -686 5 3 2 9 7 2 -687 6 1 1 9 6 5 -688 5 0 7 6 6 0 -689 2 2 9 4 1 9 -690 8 3 0 0 2 8 -691 6 8 1 9 7 9 -692 2 3 1 3 3 8 -693 8 8 8 5 5 4 -694 6 7 7 5 2 8 -695 5 0 2 5 1 5 -696 4 7 4 6 7 2 -697 6 9 5 7 2 9 -698 5 1 8 4 7 4 -699 9 3 2 6 9 4 -700 5 5 5 8 0 6 -701 4 5 4 8 1 1 -702 0 8 1 6 6 4 -703 5 1 5 4 6 3 -704 9 5 7 1 2 6 -705 5 8 1 1 6 2 -706 8 0 8 2 8 0 -707 4 9 8 6 5 4 -708 0 1 6 6 5 2 -709 0 4 8 7 6 1 -710 3 2 9 5 3 5 -711 8 1 6 6 4 5 -712 6 9 4 4 5 9 -713 8 6 0 5 2 6 -714 7 2 1 6 9 7 -715 7 3 9 6 9 3 -716 2 7 4 9 3 9 -717 4 9 8 9 4 4 -718 8 2 0 9 8 3 -719 6 5 6 8 2 5 -720 5 9 9 5 6 8 -721 9 9 5 4 8 8 -722 3 3 8 2 2 2 -723 6 0 5 7 0 3 -724 0 6 9 6 4 1 -725 2 0 1 2 6 8 -726 0 6 7 6 0 6 -727 5 3 9 3 6 1 -728 5 2 2 1 0 3 -729 4 0 0 3 7 5 -730 5 9 6 7 1 3 -731 5 2 9 3 8 9 -732 9 4 3 9 7 9 -733 1 3 2 4 4 2 -734 7 8 3 8 2 0 -735 3 8 0 9 5 2 -736 2 0 4 1 4 3 -737 1 4 7 4 3 5 -738 4 5 8 7 9 3 -739 9 7 2 3 5 5 -740 3 8 3 4 8 8 -741 6 1 9 1 3 3 -742 4 4 7 2 9 1 -743 7 4 6 6 1 5 -744 0 1 3 2 4 8 -745 7 8 7 0 2 5 -746 9 8 6 8 9 0 -747 1 4 4 9 7 4 -748 0 5 8 6 1 9 -749 2 2 0 5 4 5 -750 4 2 3 1 2 6 -751 6 2 4 3 0 4 -752 3 2 9 8 1 6 -753 2 1 2 1 8 4 -754 0 0 6 1 6 0 -755 7 0 2 0 1 5 -756 7 8 7 1 2 8 -757 6 6 0 6 4 2 -758 3 7 4 5 8 2 -759 9 9 3 5 1 9 -760 6 8 9 9 9 1 -761 5 6 9 3 8 2 -762 1 5 8 2 1 3 -763 4 5 0 8 0 9 -764 0 0 8 4 6 9 -765 3 2 8 3 2 8 -766 4 7 5 4 0 3 -767 6 1 9 4 4 1 -768 7 8 6 8 7 7 -769 7 8 7 5 2 3 -770 5 5 5 4 8 8 -771 3 2 5 8 7 5 -772 2 3 7 1 7 1 -773 2 5 0 8 3 7 -774 5 1 5 3 6 7 -775 6 2 2 2 7 1 -776 0 0 4 5 8 1 -777 1 0 4 8 1 2 -778 0 4 8 0 3 2 -779 7 9 3 2 2 0 -780 9 8 2 2 1 0 -781 3 1 0 8 7 8 -782 9 8 9 4 7 1 -783 7 7 5 6 7 9 -784 8 5 8 1 7 0 -785 1 7 9 4 9 0 -786 4 3 2 4 2 9 -787 3 2 8 3 6 5 -788 4 4 3 0 0 1 -789 9 9 6 7 0 3 -790 8 2 0 7 6 0 -791 8 0 4 0 5 6 -792 0 9 8 8 3 5 -793 4 7 0 7 8 1 -794 8 7 0 5 5 0 -795 8 3 3 9 1 9 -796 0 9 0 4 0 6 -797 0 0 6 9 8 9 -798 5 3 6 5 1 4 -799 6 9 2 6 4 8 -800 7 3 1 0 3 3 -801 9 3 3 0 7 3 -802 6 8 4 3 8 3 -803 2 3 6 9 8 7 -804 3 4 7 6 1 2 -805 4 8 5 6 9 8 -806 0 9 2 3 9 9 -807 7 6 8 1 9 6 -808 4 1 0 1 0 8 -809 8 4 3 5 1 4 -810 8 6 3 3 2 2 -811 2 3 1 5 6 0 -812 5 4 7 3 5 6 -813 0 0 8 0 1 9 -814 9 9 4 2 5 5 -815 6 3 1 0 7 4 -816 2 0 7 3 5 4 -817 4 0 8 1 4 4 -818 8 4 4 7 5 5 -819 6 4 5 0 6 0 -820 6 3 4 7 4 2 -821 2 6 2 0 0 8 -822 5 4 9 4 6 3 -823 8 5 8 3 2 3 -824 8 9 7 3 0 4 -825 4 6 8 8 4 2 -826 0 6 9 3 7 9 -827 1 2 4 1 6 1 -828 4 5 6 2 8 9 -829 6 7 8 4 0 9 -830 9 5 5 7 4 9 -831 0 5 6 9 8 3 -832 8 0 6 2 1 3 -833 4 6 8 0 8 6 -834 0 5 4 9 9 4 -835 8 8 0 3 6 4 -836 3 6 9 9 5 8 -837 3 3 9 9 6 1 -838 2 0 7 1 1 6 -839 8 1 1 2 0 0 -840 7 8 9 7 2 5 -841 2 5 1 2 5 6 -842 0 8 0 0 8 6 -843 1 1 7 8 2 8 -844 4 1 0 6 3 0 -845 7 0 9 6 8 2 -846 2 0 8 3 3 3 -847 0 3 2 1 3 1 -848 7 5 3 5 3 5 -849 3 8 7 3 4 0 -850 4 2 1 4 8 0 -851 6 1 1 4 4 4 -852 8 5 8 1 6 1 -853 3 4 6 6 9 0 -854 2 3 9 9 7 3 -855 0 2 5 1 6 4 -856 2 3 5 3 8 0 -857 7 6 6 5 8 2 -858 7 1 7 4 7 6 -859 5 9 0 4 9 7 -860 7 9 9 3 1 6 -861 8 3 9 3 6 7 -862 4 4 4 0 0 2 -863 3 7 4 0 2 2 -864 7 7 2 7 1 1 -865 5 9 0 5 2 1 -866 2 0 4 1 4 1 -867 8 9 5 3 9 5 -868 5 2 3 0 3 5 -869 2 0 2 4 8 3 -870 5 3 3 6 9 5 -871 7 1 6 2 2 1 -872 3 1 0 9 4 9 -873 5 0 2 8 1 5 -874 3 3 6 6 8 4 -875 0 4 7 3 0 7 -876 9 8 8 5 0 1 -877 6 4 3 6 4 8 -878 6 9 8 9 8 0 -879 4 1 3 0 8 2 -880 4 8 6 2 2 6 -881 9 1 5 8 7 6 -882 9 3 0 3 0 5 -883 1 7 4 0 6 2 -884 0 1 4 4 2 3 -885 6 7 1 3 9 4 -886 0 9 5 5 8 2 -887 1 8 6 2 1 7 -888 7 2 4 1 2 1 -889 4 3 2 9 7 5 -890 2 4 2 4 7 1 -891 8 7 1 3 2 0 -892 6 4 8 2 6 9 -893 0 3 2 5 5 5 -894 6 9 8 9 9 6 -895 4 1 0 6 5 8 -896 8 3 6 0 7 9 -897 0 4 3 8 7 9 -898 8 7 3 1 2 8 -899 6 9 8 5 8 7 -900 1 3 9 2 9 4 -901 1 8 8 7 8 6 -902 6 9 0 0 8 7 -903 9 6 5 3 7 7 -904 2 4 7 0 9 5 -905 8 1 8 8 4 8 -906 2 5 7 1 2 6 -907 7 9 5 8 9 3 -908 6 9 0 1 2 8 -909 9 4 2 6 5 2 -910 2 4 3 1 2 7 -911 9 5 3 7 7 6 -912 4 5 5 9 3 5 -913 3 0 4 4 1 6 -914 2 0 1 5 7 7 -915 7 9 1 1 0 4 -916 9 0 0 2 7 7 -917 8 1 2 4 1 6 -918 9 5 6 4 9 8 -919 1 2 9 2 7 6 -920 9 4 5 1 6 6 -921 6 5 6 6 7 4 -922 4 6 6 7 0 8 -923 4 0 3 0 4 3 -924 9 5 5 8 8 2 -925 5 8 7 1 9 3 -926 7 6 8 4 2 6 -927 9 7 3 6 4 4 -928 4 9 4 8 9 9 -929 2 9 5 7 7 3 -930 0 2 1 8 3 1 -931 1 1 7 0 5 0 -932 7 5 8 0 1 3 -933 4 5 2 9 4 1 -934 8 6 1 3 4 8 -935 7 4 1 8 2 5 -936 0 4 6 8 5 2 -937 8 2 7 7 2 8 -938 0 7 4 2 6 9 -939 4 5 5 5 9 0 -940 4 6 5 5 5 8 -941 1 5 2 8 3 7 -942 1 2 0 9 0 3 -943 8 0 0 2 2 7 -944 2 6 3 7 1 2 -945 8 6 9 3 2 4 -946 1 3 0 3 1 4 -947 1 3 7 2 2 7 -948 5 0 7 6 3 0 -949 3 5 6 6 2 8 -950 8 1 4 8 4 6 -951 2 5 0 3 9 2 -952 7 1 5 5 3 7 -953 2 9 7 0 5 0 -954 0 8 5 6 5 8 -955 5 4 9 9 2 3 -956 6 5 8 6 8 8 -957 8 6 9 4 1 3 -958 1 3 2 8 3 7 -959 9 4 6 4 0 1 -960 2 6 5 2 5 8 -961 5 2 3 4 9 1 -962 3 8 8 2 2 9 -963 6 3 3 8 2 7 -964 6 1 1 2 6 2 -965 4 9 8 9 1 4 -966 8 7 6 1 2 6 -967 3 5 5 1 8 7 -968 0 4 1 4 3 4 -969 1 9 6 3 1 2 -970 5 6 1 3 6 3 -971 7 4 0 4 5 3 -972 1 8 8 6 9 7 -973 4 0 2 5 4 5 -974 0 6 4 6 9 6 -975 9 4 2 0 8 8 -976 4 5 2 5 0 8 -977 8 1 6 7 8 6 -978 5 2 7 7 8 1 -979 2 8 8 7 5 7 -980 3 4 2 6 5 0 -981 5 9 6 8 5 6 -982 6 3 8 3 1 7 -983 0 6 9 7 4 7 -984 9 6 6 7 3 1 -985 5 7 6 7 4 1 -986 7 9 1 3 8 6 -987 0 5 0 9 8 2 -988 6 9 9 6 7 3 -989 4 6 0 0 4 3 -990 2 9 1 9 7 5 -991 1 5 5 2 8 3 -992 9 9 8 0 9 7 -993 3 6 7 2 2 4 -994 6 6 0 6 7 5 -995 9 0 5 1 0 2 -996 6 1 7 2 4 6 -997 6 4 6 5 5 5 -998 2 8 1 0 1 4 -999 4 7 1 5 3 8 -1000 0 3 9 5 4 9 diff --git a/dist/test/products/sqltest.asc b/dist/test/products/sqltest.asc deleted file mode 100644 index de35d5c52..000000000 --- a/dist/test/products/sqltest.asc +++ /dev/null @@ -1,4 +0,0 @@ -code field1 field2 field3 -one A B C -two A B C -three A B C diff --git a/dist/test/products/tests.asc b/dist/test/products/tests.asc deleted file mode 100644 index 254d14b30..000000000 --- a/dist/test/products/tests.asc +++ /dev/null @@ -1,3906 +0,0 @@ -code -%% -input -%% -expected -%% -no_expect -%% -actual -%% -description -%%% -000001 -%% -[flag type=write table=inventory] -[flag type=write table=pricing] -[tag op=time send=1]%D[/tag] -%% -\d\d/\d\d/\d\d -%% - -%% - -%% -Set up some flag writes, test [tag op=time] -%%% -000002 -%% -[set mv_no_count]1[/set] -[set mv_no_session_id]1[/set] -This should NOT have a session id and count [area test]<P> -%% -^[^?]+$ -%% - -%% - -%% -Test mv_no_count and mv_no_session_id -%%% -000003 -%% -Variable: @@TEST_VARIABLE@@ -%% -Test of global variable OK. -%% - -%% - -%% -Test of global variables. -%%% -000004 -%% -[set name=nothing send=1][/set] -%% -^$ -%% - -%% - -%% -Test of set to blank. -%%% -000005 -%% -[mvasp] - This is <B>HTML</B>, but now it has <% $Document->write('PERL' . ' ' . 'CODE') %> inside. -[/mvasp] -%% -PERL CODE -%% - -%% - -%% -Test MVASP. -%%% -000006 -%% -[perl send=1 tables=products] -$var = tag_data('products', 'title', '00-0011'); -return $var ? "O" . "K - $var" : 'ERROR'; -[/perl] -%% -Mona -%% -XX -%% - -%% -Test tag_data(). -%%% -000007 -%% -[set mv_no_count]0[/set] -[set mv_no_session_id]0[/set] -This should have a session id and count [area test] -%% -.*?mv_ -%% - -%% - -%% -test turning off mv_no_count / mv_no_session_id -%%% -000008 -%% -[perl subs=1] test_global_sub('O' . 'K') [/perl] -%% -OK -%% - -%% - -%% -Call of global_sub -%%% -000009 -%% -<A MV=page MV.SEND=1 MV.HREF="test" HREF="not_here_I_hope.html">Try new tag style</A><BR> -%% -test(\.html)?[?"] -%% - -%% - -%% -HTML-style tag -%%% -000010 -%% -<A MV=area MV.HREF="test" TARGET=top HREF="not_here_I_hope.html">Try new tag style, insert</A><BR> -%% -test(\.html)?[?"] -%% - -%% - -%% - -%%% -000011 -%% -<A MV=area MV.SEND=1 MV.HREF="test" MV.NOREPLACE=1 TARGET=top HREF="HERE_I_HOPE.html">Try new tag style, no replace, should show up as 404/undercon if traveled </A><BR> -%% -HERE_I_HOPE -%% - -%% - -%% - -%%% -000012 -%% -<A MV=area MV.HREF="test" MV.NOINSERT=1 TARGET=top HREF="HERE_I_HOPE.html"> <<-- Should be no tag, just URL -%% -test[^"]*$ -%% - -%% - -%% - -%%% -000013 -%% -<A MV=URLD href="[value%20name=testpage%20set=test]">Should be a another link to this page</A><BR> -%% -test[^\]"]*"> -%% - -%% - -%% - -%%% -000014 -%% -<A MV="value testpage" MV.SEND=1 MV.APPEND=1 MV.URLD=1 MV.INTERPOLATE=1 href="[value name=testpage set=test]"> <== Should be "test" in a link</A><BR> -%% ->\s*test\s*< -%% - -%% - -%% - -%%% -000015 -%% -Should be test ==> <A MV="value testpage" MV.PREPEND=1 MV.INTERPOLATE=1 href="[value name=testpage set=test]"> and a link </A> -%% -test.*<.*>.*< -%% - -%% - -%% - -%%% -000016 -%% -<FORM MV=process ACTION="test.action"> -%% -ACTION="[^"]*process[?"] -%% - -%% - -%% -HTML-style process -%%% -000017 -%% -<SELECT MV="loop" MV.ARG="1 2 3"> - -<OPTION> [loop-code] -</SELECT> -%% -<OPTION>\s*1\s*<OPTION>\s*2 -%% - -%% - -%% - -%%% -000018 -%% -<TABLE BORDER=1> -<TR MV=loop MV.ARG="1 2 3"> -<TD>[loop-code]</TD> -<TD>[loop-code]</TD> -</TR> -</table> -%% -<TD>1<.TD>\s*<TD>1<.TD>\s*<.[tT][rR]>\s*<TR>\s*<TD>2 -%% - -%% - -%% - -%%% -000019 -%% - -<U>Loop with rowfix</U><BR> -<TABLE BORDER=1> -<TR> -<TD MV=loop MV.ARG="1 2 3" MV.ROWFIX=1>[loop-code]</TD> -<TD>[loop-code]</TD> -</TR> -</table> -%% -(?i:<TD>1<.TD>\s*<TD>1<.TD>\s*<.[tT][rR]>\s*<TR>\s*<TD>2) -%% - -%% - -%% - -%%% -000020 -%% -<U>Tag each</U><BR> -<TABLE BORDER=1> -<TR MV="tag each products" MV.SEND=1> -<TD>[loop-code]</TD> -<TD>[loop-field title]</TD> -</TR> -</table> -%% -<TD>00-0011</TD> -%% - -%% - -%% - -%%% -000021 -%% - -<P> -<U>Tag each with URLDECODE</U><BR> -<TABLE BORDER=1> -<TR MV="tag each products"> -<TD>[loop-code]</TD> -<TD>[loop-field%20title]</TD> -<TD><IMG HEIGHT=20 WIDTH=20 SRC="[loop-field%20image]" MV.URL=1></TD> -</TR> -</table> -%% -Mona Lisa -%% - -%% - -%% - -%%% -000022 -%% -<U>If table</U><BR> -<TABLE BORDER=1> -<TR MV="if value nevairbe"> -<TD>ERROR</TD> -<TD>row</TD> -</TR> -<TR MV="[elsif !value nevairbe]"> -<TD>elsif</TD> -<TD>should be only row</TD> -</TR> -<TR MV="else"> -<TD>ERROR</TD> -<TD>row</TD> -</TR> -</table> -%% -only -%% -ERROR -%% - -%% - -%%% -000023 -%% -<U>If table, no lookahead</U><BR> -<TABLE BORDER=1> -<TR MV="if value nevairbe" mv.nolook=1> -<TD>ERROR</TD> -<TD>row</TD> -</TR> -<TR MV="[elsif value nevairbe2]"> -<TD>elsif</TD> -<TD>This should be row one</TD> -</TR> -<TR MV="else"> -<TD>else</TD> -<TD>This should be row two and final</TD> -</TR> -</table> -%% -row.one[\S\s]*two and final -%% -ERROR -%% - -%% - -%%% -000024 -%% -<P> -<U>replaceHTML</U> -<PRE MV="calc"> return 'should be normally spaced.'</PRE> -<XMP MV="calc"> return 'should be normally spaced.' - return 'should be normally spaced.' -%% -normally -%% -(DEL|XMP|PRE) -%% - -%% - -%%% -000025 -%% -[accessories 99-102 size] -%% -XL -%% -accessories -%% - -%% - -%%% -000026 -%% -[accessories code="99-102" arg="size"] -%% -XL -%% -accessories -%% - -%% - -%%% -000027 -%% -[area href="pg" arg="argument"] -%% -/pg.*mv_arg=arg -%% -> -%% - -%% - -%%% -000028 -%% -[page href="pg" arg="argument"] -%% -/pg.*mv_arg=arg.*> -%% - -%% - -%% - -%%% -000029 -%% -[page pg argument] -%% -/pg.*mv_arg=arg.*> -%% - -%% - -%% - -%%% -000030 -%% -[area pg argument] -%% -/pg.*mv_arg=arg -%% -> -%% - -%% - -%%% -000031 -%% -[calc] -$value = '[counter value=1 start=1]'; -$newvalue = '[counter]'; -return 'EQUAL' if $value + 1 == $newvalue; -[/calc] -%% -EQUAL -%% - -%% - -%% - -%%% -000032 -%% -[loop delimiter="|" lr=1 head_skip=1 list=" -code|value -a|1 -b|2 -"][loop-code]=[loop-pos 0]=[loop-param code] [loop-pos 1]=[loop-param value] -[/loop] -%% -a=a=a 1=1 -b=b=b 2=2 -%% - -%% - -%% - -%%% -000033 -%% -7=[calc] 4 + 3 [/calc] -%% -7=7 -%% -[a-z] -%% - -%% - -%%% -000034 -%% -[value name=var_name set=on hide=1] [selected var_name on] -%% -SELECTED -%% - -%% - -%% - -%%% -000035 -%% -[value name=var_name set=1 hide=1] [selected var_name on] -%% - -%% -SELECTED -%% - -%% - -%%% -000036 -%% -[value name=var_name set="A value with stuff in't" hide=1] [selected var_name a value with stuff in't] -%% -SELECTED -%% - -%% - -%% - -%%% -000037 -%% -[value name=var_name set=on hide=1] [selected name=var_name value=on] -%% -SELECTED -%% - -%% - -%% - -%%% -000038 -%% -[value name=var_name set=on hide=1] [checked var_name on] -%% -CHECKED -%% - -%% - -%% - -%%% -000039 -%% -[value name=var_name set=1 hide=1] [checked var_name on] -%% - -%% -CHECKED -%% - -%% - -%%% -000040 -%% -[value name=var_name set="A value with stuff in't" hide=1] [checked name=var_name value="a value with stuff in't"] -%% -CHECKED -%% - -%% - -%% - -%%% -000041 -%% -[value name=var_name set=on hide=1] [checked name=var_name value=on] -%% -CHECKED -%% - -%% - -%% - -%%% -000042 -%% -[value name=var_name set=val hide=1] -%% -CHECKED -%% - -%% - -%% - -%%% -000043 -%% -[value name=var_name set=off hide=1] -%% - -%% -CHECKED -%% - -%% - -%%% -000044 -%% -[value name=var_name set=val hide=1]
    "; - close EXPORT; - return $out; -} -EOR - diff --git a/extensions/quickbooks/usertag/export_quicken_items b/extensions/quickbooks/usertag/export_quicken_items deleted file mode 100644 index 13a7429da..000000000 --- a/extensions/quickbooks/usertag/export_quicken_items +++ /dev/null @@ -1,155 +0,0 @@ -UserTag export_quicken_items Order file -UserTag export_quicken_items addAttr -UserTag export_quicken_items Routine <Fatal Administration Error -

    FATAL error

    -
    $msg
    - -EOF - exit 0; - }; - - die "export_quicken: No file passed.\n" - if ! $file; - - my @interest = grep /^qb:/, keys %CGI::values; - my @names; - my %fmap; - my %pmap; - my %rmap; - my $keyname; - my %subs; - my $limit = $CGI::values{ui_qbitem_types} || ''; - my $limit_idx; - if($limit) { - $limit =~ s/^\s+//; - $limit =~ s/\s+$//; - $limit =~ s/\s+/|/g; - $limit = qr/$limit/; - } - for(@interest) { - next if ! $CGI::values{$_}; - my $k = $_; - my $v = $CGI::values{$_}; - my $pfunc; - if($v =~ s/^\s*=\s*//) { - $pfunc = sub { Vend::Util::is_yes($_[0]) and return 'Y'; return 'N'; }; - } - elsif($v =~ s/^\s*!\s*//) { - $pfunc = sub { Vend::Util::is_yes($_[0]) and return 'N'; return 'Y'; }; - } - else { - $pfunc = sub { - my $val = shift; - return $val unless $val =~ /[",]/; - $val =~ s/"/""/g; - return qq{"$val"}; - }; - } - $k =~ s/^qb://; - my $dt; - my($t, $f) = split /:+/, $k; - $rmap{$t}{$v} = $f; - $dt = ::database_exists_ref($t); - if($dt->config('KEY') eq $f) { - $keyname = $v; - } - die "Bad database $t\n" if ! $dt; - my $get = $dt->field_accessor($f); - if($subs{$v}) { - ::logError("Field routine $v defined twice, skipping second."); - next; - } - $subs{$v} = sub { $pfunc->( $get->(shift) )}; - } - - my @keys = keys %subs; - - # Quickbooks requires an INVITEMTYPE, we will set it to - # PART if not appropriate. This step is to set the index - # position of INVITEMTYPE - # - # If $limit is set then we don't need to worry.... - my $i = 0; - for(@keys) { - if($_ eq 'INVITEMTYPE') { - $limit_idx = $i; - last; - } - $i++; - } - - my $keystring = join "\t", @keys; - - die "No key mapped." if ! $keyname; - my $delimiter = quotemeta $opt->{delimiter} || "\t"; - my $now = time(); - my $date = POSIX::strftime('%m/%d/%y', localtime($now)); - open(EXPORT, ">$file") - or die "write $file: $!\n"; - print EXPORT <{ProductFiles}}) { - my $db = ::database_exists_ref($table); - die "Bad products table '$table'" if ! $db; - my $k; - while ( ($k) = $db->each_record() ) { -::logError("exporting key='$k'"); - @out = (); - for(@keys) { - if($_ eq 'REFNUM') { - if($k !~ /^\d+$/) { - my $n = $Tag->counter( - "$Vend::Cfg->{ProductDir}/quickbooks.refnum", - ); - my $fname = $rmap{$table}{$_}; - $out .= $rename_msg . "update TABLE set $fname = $n where $fname = '$k'\n"; - $rename_msg = ''; - } - else { - push @out, $k; - } - } - else { - push @out, $subs{$_}->($k); - } - } - if($limit) { -::logError("Checking limit '$out[$limit_idx]'"); - next unless $out[$limit_idx] =~ $limit; - } - elsif ($out[$limit_idx] =~ /[^A-Z]/) { - $out[$limit_idx] = 'PART'; - } - print EXPORT join $delimiter, 'INVITEM', @out; - print EXPORT "\r\n"; - $count++; - } - } - $out .= "$count records exported."; - close EXPORT; - return $out; -} -EOR - diff --git a/extensions/quickbooks/usertag/import_quicken_items b/extensions/quickbooks/usertag/import_quicken_items deleted file mode 100644 index b5b4be477..000000000 --- a/extensions/quickbooks/usertag/import_quicken_items +++ /dev/null @@ -1,141 +0,0 @@ -UserTag import_quicken_items Order file -UserTag import_quicken_items addAttr -UserTag import_quicken_items Routine <Fatal Administration Error -

    FATAL error

    -
    $msg
    - -EOF - exit 0; - }; - - die "import_quicken: No file passed.\n" - if ! $file; - die "import_quicken: No file found.\n" - unless -f $file; - - my @interest = grep /^qb:/, keys %CGI::values; - my @names; - my %fmap; - my %pmap; - my %rmap; - my $keyname; - my %subs; - my $limit = $CGI::values{ui_qbitem_types} || 'PART INVENTORY'; - $limit =~ s/^\s+//; - $limit =~ s/\s+$//; - $limit =~ s/\s+/|/g; - $limit = qr/$limit/; - for(@interest) { - next if ! $CGI::values{$_}; - my $k = $_; - my $v = $CGI::values{$_}; - my $pfunc; - if($v =~ s/^\s*=\s*//) { - $pfunc = \&Vend::Util::is_yes; - } - elsif($v =~ s/^\s*!\s*//) { - $pfunc = sub { ! Vend::Util::is_yes(@_) } ; - } - else { - $pfunc = sub { - my $val = shift; - return $val unless $val =~ /^"/; - return $val unless $val =~ /"$/; - $val =~ s/^"//; - $val =~ s/"$//; - $val =~ s/""/"/g; - return $val; - }; - } - $k =~ s/^qb://; - my $dt; - my($t, $f) = split /:+/, $k; - $dt = ::database_exists_ref($t); - if($dt->config('KEY') eq $f) { - $keyname = $v; - } - die "Bad database $t\n" if ! $dt; - $subs{$v} = [ - sub { - my $k = shift; - return if $dt->record_exists($k); - $dt->set_row($k); - } - ] if ! $subs{$v}; - my $set = $dt->field_settor($f); - push @{$subs{$v}}, - sub { $set->($_[0], $pfunc->($_[1])) }; - } - die "No key mapped." if ! $keyname; - my $delimiter = quotemeta $opt->{delimiter} || "\t"; - open(UPDATE, $file) - or die "read $file: $!\n"; - my $fields; - my $count = 0; - my $out = ''; - ITEMLOOP: - while () { - if(s/^!INVITEM$delimiter//o) { - chomp; - $fields = $_; - @names = split /$delimiter/, $fields; - my $i = 0; - %fmap = (); - for(@names) { - my $x = 1; - while (defined $fmap{$_}) { - $_ .= $x++; - } - $fmap{$_} = $i++; - $rmap{$i} = $_; - } - next; - } - next unless s/^INVITEM$delimiter//o; - die "Can't find fields.\n" if ! $fields; - chomp; - my (@f) = split /$delimiter/o, $_; - if(defined $fmap{INVITEMTYPE}) { - next unless $f[ $fmap{INVITEMTYPE} ] =~ $limit; - } - next if $f[$fmap{HIDDEN}] =~ /^Y/i; - next if $f[$fmap{PRICE}] < .01; - my $k = $f[$fmap{$keyname}]; - die "No key for $_!\n" if ! defined $k; - for (keys %subs) { - my $ref = $subs{$_}; - my $val = $f[$fmap{$_}]; -::logError("doing $_ for key=$k and val='$val'"); - for(@$ref) { - $_->($k, $val); - } - } - $count++; - } - $out .= "$count records updated."; - close UPDATE; - if($opt->{'move'}) { - my $ext = POSIX::strftime("%Y%m%d%H%M%S", localtime()); - rename $file, "$file.$ext" - or die "rename $file --> $file.$ext: $!\n"; - if( $opt->{dir} - and (-d $opt->{dir} or File::Path::mkpath($opt->{dir})) - and -w $opt->{dir} - ) - { - File::Copy::move("$file.$ext", $opt->{dir}) - or die "move $file.$ext --> $opt->{dir}: $!\n"; - } - } - return $out; -} -EOR - diff --git a/extra/Business/UPS.pm b/extra/Business/UPS.pm deleted file mode 100644 index 34a6c8990..000000000 --- a/extra/Business/UPS.pm +++ /dev/null @@ -1,394 +0,0 @@ -package Business::UPS; - -use LWP::Simple; -use strict; -use vars qw($VERSION @ISA @EXPORT @EXPORT_OK); -require 5.003; - -require Exporter; - -@ISA = qw(Exporter AutoLoader); -# Items to export into callers namespace by default. Note: do not export -# names by default without a very good reason. Use EXPORT_OK instead. -# Do not simply export all your public functions/methods/constants. -@EXPORT = qw( - getUPS - UPStrack -); - - -# Preloaded methods go here. - -# Copyright 1998 Mark Solomon (See GNU GPL) -# Started 01/07/1998 Mark Solomon -# - -$VERSION = do { my @r = (q$Revision: 2.0 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r }; # must be all one line, for MakeMaker - -sub getUPS { - - my ($product, $origin, $dest, $weight, $country , $length, - $width, $height, $oversized, $cod) = @_; - - my $ups_cgi = 'http://www.ups.com/using/services/rave/qcostcgi.cgi'; - my $workString = "?"; - $workString .= "accept_UPS_license_agreement=yes&"; - $workString .= "10_action=3&"; - $workString .= "13_product=" . $product . "&"; - $workString .= "15_origPostal=" . $origin . "&"; - $workString .= "19_destPostal=" . $dest . "&"; - $workString .= "23_weight=" . $weight; - $workString .= "&22_destCountry=" . $country if $country; - $workString .= "&25_length=" . $length if $length; - $workString .= "&26_width=" . $width if $width; - $workString .= "&27_height=" . $height if $height; - $workString .= "&30_cod=" . $cod if $cod; - $workString .= "&29_oversized=1" if $oversized; - $workString .= "&30_cod=1" if $cod; - $workString = "${ups_cgi}${workString}"; - - my @ret = split( '%', get($workString) ); - - if (! $ret[5]) { - # Error - return (undef,undef,$ret[1]); - } - else { - # Good results - my $total_shipping = $ret[10]; - my $ups_zone = $ret[6]; - return ($total_shipping,$ups_zone,undef); - } -} - - -# -# UPStrack sub added 2/27/1998 -# - - -sub UPStrack { - my ($tracking_number) = shift; - my %retValue = {}; # Will hold return values - $tracking_number || Error("No number to track in UPStrack()"); - - my $raw_data = get("http://wwwapps.ups.com/tracking/tracking.cgi?tracknum=$tracking_number") || Error("Cannot get data from UPS"); - $raw_data =~ tr/\r//d; - - my @raw_data = split "\n", $raw_data; - - # These are the splitting keys - my $scan_sep = 'Scanning Information'; - my $notice_sep = 'Notice'; - my $error_key = 'Unable to track'; - my $section; - my @scanning; - for (@raw_data) { - s/<.*?>/ /gi; # Remove html tags - s/(?: |[\n\t])//gi; # Remove ' ' separators - s/^\s+//g; - - next if /^$/; - last if /^Top\sof\sPage/; - - if (/^Tracking\sResult/) { - $section = 'RESULT'; - } - elsif (/^$scan_sep/) { - $section = 'SCANNING'; - } - elsif (/^$notice_sep/) { - $section = 'NOTICE'; - } - elsif (/^($error_key\s.*?)\s{4}/) { - my $error = $1; - $error =~ s/\s+$/ /g; - $retValue{error} = $error; - return %retValue; - } - elsif ($section eq 'NOTICE') { - $retValue{Notice} .= $_; - } - elsif ($section eq 'RESULT') { - my ($key,$value) = /(.*?):(.*)/; - $value =~ s/^\s+//g; - $value =~ s/\s+$//g; - $retValue{$key} = $value; - } - elsif ($section eq 'SCANNING') { - if (/^\d/) { - push @scanning, $_; - } - else { - $scanning[-1] .= " = $_"; - } - } - } - - $retValue{Scanning} = join "\n", @scanning; - - return %retValue; -} - -sub Error { - my $error = shift; - print STDERR "$error\n"; - exit(1); -} - - -END {} - - - -# Autoload methods go after =cut, and are processed by the autosplit program. - -1; -# Below is the stub of documentation for your module. You better edit it! - -__END__ - -=head1 NAME - -Business::UPS - A UPS Interface Module - -=head1 SYNOPSIS - - use Business::UPS; - - my ($shipping,$ups_zone,$error) = getUPS(qw/GNDCOM 23606 23607 50/); - $error and die "ERROR: $error\n"; - print "Shipping is \$$shipping\n"; - print "UPS Zone is $ups_zone\n"; - - %track = UPStrack("z10192ixj29j39"); - $track{error} and die "ERROR: $track{error}; - - # 'Delivered' or 'In-transit' - print "This package is $track{Current Status}\n"; - -=head1 DESCRIPTION - -A way of sending four arguments to a module to get shipping charges -that can be used in, say, a CGI. - -=head1 REQUIREMENTS - -I've tried to keep this package to a minimum, so you'll need: - -=over 4 - -=item * - -Perl 5.003 or higher - -=item * - -LWP Module - -=back 4 - - -=head1 ARGUMENTS for getUPS() - -Call the subroutine with the following values: - - 1. Product code (see product-codes.txt) - 2. Origin Zip Code - 3. Destination Zip Code - 4. Weight of Package - -and optionally: - - 5. Country Code, (see country-codes.txt) - 6. Length, - 7. Width, - 8. Height, - 9. Oversized (defined if oversized), and - 10. COD (defined if C.O.D.) - -=over 4 - -=item 1 - -Product Codes: - - 1DM Next Day Air Early AM - 1DML Next Day Air Early AM Letter - 1DA Next Day Air - 1DAL Next Day Air Letter - 1DP Next Day Air Saver - 1DPL Next Day Air Saver Letter - 2DM 2nd Day Air A.M. - 2DA 2nd Day Air - 2DML 2nd Day Air A.M. Letter - 2DAL 2nd Day Air Letter - 3DS 3 Day Select - GNDCOM Ground Commercial - GNDRES Ground Residential - XPR Worldwide Express - XDM Worldwide Express Plus - XPRL Worldwide Express Letter - XDML Worldwide Express Plus Letter - XPD Worldwide Expedited - - -In an HTML "option" input it might look like this: - -
    -[else]{REQUIRED }{LABEL}{REQUIRED }[/else] -EOF - } - $text =~ s/{LABEL}/$opt->{std_label}/g; - $text =~ s/{REQUIRED\s+([^}]*)}/$opt->{required} ? $1 : ''/ge; - } - $text = '' unless defined $text; - $text .= '%s' unless $text =~ /\%s/; - $text = pull_else($text, $found_error); - return sprintf($text, $err); -} - -sub tag_column { - my($spec,$text) = @_; - my($append,$f,$i,$line,$usable); - my(%def) = qw( - width 0 - spacing 1 - gutter 2 - wrap 1 - html 0 - align left - ); - my(%spec) = (); - my(@out) = (); - my(@lines) = (); - - $spec =~ s/\n/ /g; - $spec =~ s/^\s+//; - $spec =~ s/\s+$//; - $spec = lc $spec; - - $spec =~ s/\s*=\s*/=/; - $spec =~ s/^(\d+)/width=$1/; - %spec = split /[\s=]+/, $spec; - - for(keys %def) { - $spec{$_} = $def{$_} unless defined $spec{$_}; - } - - if($spec{'html'} && $spec{'wrap'}) { - ::logError("tag_column: can't have 'wrap' and 'html' specified at same time."); - $spec{wrap} = 0; - } - - $text =~ s/\s+/ /g; - - my $len = sub { - my($txt) = @_; - if (1 or $spec{html}) { - $txt =~ - s{ < - ( - [^>'"] + - | - ".*?" - | - '.*?' - ) + - > - }{}gsx; - } - return length($txt); - }; - - $usable = $spec{'width'} - $spec{'gutter'}; - return "BAD_WIDTH" if $usable < 1; - - if($spec{'align'} =~ /^l/) { - $f = sub { - $_[0] . - ' ' x ($usable - $len->($_[0])) . - ' ' x $spec{'gutter'}; - }; - } - elsif($spec{'align'} =~ /^r/) { - $f = sub { - ' ' x ($usable - $len->($_[0])) . - $_[0] . - ' ' x $spec{'gutter'}; - }; - } - elsif($spec{'align'} =~ /^i/) { - $spec{'wrap'} = 0; - $usable = 9999; - $f = sub { @_ }; - } - else { - return "BAD JUSTIFICATION SPECIFICATION: $spec{'align'}"; - } - - $append = ''; - if($spec{'spacing'} > 1) { - $append .= "\n" x ($spec{'spacing'} - 1); - } - - if(is_yes($spec{'wrap'}) and length($text) > $usable) { - @lines = wrap($text,$usable); - } - elsif($spec{'align'} =~ /^i/) { - $lines[0] = ' ' x $spec{'width'}; - $lines[1] = $text . ' ' x $spec{'gutter'}; - } - elsif (! $spec{'html'}) { - $lines[0] = substr($text,0,$usable); - } - - foreach $line (@lines) { - push @out , &{$f}($line); - for($i = 1; $i < $spec{'spacing'}; $i++) { - push @out, ''; - } - } - @out; -} - -sub wrap { - my ($str, $width) = @_; - my @a = (); - my ($l, $b); - - for (;;) { - $str =~ s/^ +//; - $l = length($str); - last if $l == 0; - if ($l <= $width) { - push @a, $str; - last; - } - $b = rindex($str, " ", $width - 1); - if ($b == -1) { - push @a, substr($str, 0, $width); - $str = substr($str, $width); - } - else { - push @a, substr($str, 0, $b); - $str = substr($str, $b + 1); - } - } - return @a; -} - -sub tag_row { - my($width,$text) = @_; - my($col,$spec); - my(@lines); - my(@len); - my(@out); - my($i,$j,$k); - my($x,$y,$line); - - $i = 0; - #while( $text =~ s!$QR{col}!! ) { - while( $text =~ s!\[col(?:umn)?\s+ - ([^\]]+) - \] - ([\000-\377]*?) - \[/col(?:umn)?\] !!ix ) { - $spec = $1; - $col = $2; - $lines[$i] = []; - @{$lines[$i]} = tag_column($spec,$col); - # Discover X dimension - $len[$i] = length(${$lines[$i]}[0]); - if(defined ${$lines[$i]}[1] and ${$lines[$i]}[1] =~ /^<\s*input\s+/i) { - shift @{$lines[$i]}; - } - $i++; - } - my $totlen = 0; - for(@len) { $totlen += $_ } - if ($totlen > $width) { - return " B A D R O W S P E C I F I C A T I O N - columns too wide.\n" - } - - # Discover y dimension - $j = $#{$lines[0]}; - for ($k = 1; $k < $i; $k++) { - $j = $#{$lines[$k]} > $j ? $#{$lines[$k]} : $j; - } - - for($y = 0; $y <= $j; $y++) { - $line = ''; - for($x = 0; $x < $i; $x++) { - if(defined ${$lines[$x]}[$y]) { - $line .= ${$lines[$x]}[$y]; - $line =~ s/\s+$// - if ($i - $x) == 1; - } - elsif (($i - $x) > 1) { - $line .= ' ' x $len[$x]; - } - else { - $line =~ s/\s+$//; - } - } - push @out, $line; - } - join "\n", @out; -} - -sub shipping { - my($mode, $opt) = @_; - return undef unless $mode; - my $save = $Vend::Items; - my $qual; - my $final; - - $Vend::Session->{ship_message} = '' if ! $Ship_its; - die "Too many levels of shipping recursion ($Ship_its)" - if $Ship_its++ > MAX_SHIP_ITERATIONS; - my @bin; - -#::logDebug("Check BEGIN, must get to FINAL. Vend::Items=$Vend::Items main=$::Carts->{main}"); - if ($opt->{cart}) { - my @carts = grep /\S/, split /[\s,]+/, $opt->{cart}; - for(@carts) { - next unless $::Carts->{$_}; - push @bin, @{$::Carts->{$_}}; - } - } - else { - @bin = @$Vend::Items; - } -#::logDebug("doing shipping, mode=$mode bin=" . ::uneval(\@bin)); - - $Vend::Session->{ship_message} = '' if $opt->{reset_message}; - - my($field, $code, $i, $total, $cost, $multiplier, $formula, $error_message); - - my $ref = $Vend::Cfg; -# -# if(defined $Vend::Cfg->{Shipping_criterion}->{$mode}) { -# $ref = $Vend::Cfg; -# } -# elsif($Vend::Cfg->{Shipping}) { -# my $locale = $::Scratch->{mv_currency} -# || $::Scratch->{mv_locale} -# || $::Vend::Cfg->{DefaultLocale} -# || 'default'; -# $ref = $Vend::Cfg->{Shipping}{$locale}; -# $field = $ref->{$mode}; -# } -# -# if(defined $ref->{Shipping_code}{$mode}) { -# $final = tag_perl($opt->{table}, $opt, $Vend::Cfg->{Shipping_code}); -# goto SHIPFORMAT; -# } - - $@ = 1; - - # Security hole if we don't limit characters - $mode !~ /[\s,;{}]/ and - eval {'what' =~ /$mode/}; - - if ($@) { -#::logDebug("Check ERROR, must get to FINAL. Vend::Items=$Vend::Items main=$::Carts->{main}"); - logError("Bad character(s) in shipping mode '$mode', returning 0"); - goto SHIPFORMAT; - } - - my $row; - my @lines; - @lines = grep $_->[0] =~ /^$mode/, @{$Vend::Cfg->{Shipping_line}}; - goto SHIPFORMAT unless @lines; -#::logDebug("shipping lines selected: " . ::uneval(\@lines)); - my $q; - if($lines[0][QUERY]) { - my $q = interpolate_html($lines[0][QUERY]); - $q =~ s/=\s+?\s*/= '$mode' /g; - $q =~ s/\s+like\s+?\s*/ LIKE '%$mode%' /ig; - my $ary = query($q); - if(ref $ary) { - @lines = @$ary; -#::logDebug("shipping lines reselected with SQL: " . ::uneval(\@lines)); - } - else { -#::logDebug("shipping lines failed reselect with SQL query '$q'"); - } - } - - my $o = get_option_hash($lines[0][OPT]) || {}; - -#::logDebug("shipping opt=" . ::uneval($o)); - - if($o->{limit}) { - $o->{filter} = '(?i)\s*[1ty]' if ! $o->{filter}; -#::logDebug("limiting, filter=$o->{filter} limit=$o->{limit}"); - my $patt = qr{$o->{filter}}; - @bin = grep $_->{$o->{limit}} =~ $patt, @bin; - } - $::Carts->{mv_shipping} = \@bin; - - tag_cart('mv_shipping'); - -#::logDebug("Check 2, must get to FINAL. Vend::Items=" . ::uneval($Vend::Items) . " main=" . ::uneval($::Carts->{main}) . " mv_shipping=" . ::uneval($::Carts->{mv_shipping})); - - if($o->{perl}) { - $Vend::Interpolate::Shipping = $lines[0]; - $field = $lines[0][CRIT]; - $field = tag_perl($opt->{tables}, $opt, $field) - if $field =~ /[^\w:]/; - $qual = tag_perl($opt->{tables}, $opt, $o->{qual}) - if $o->{qual}; - } - elsif ($o->{mml}) { - $Vend::Interpolate::Shipping = $lines[0]; - $field = tag_perl($opt->{tables}, $opt, $lines[0][CRIT]); - $qual = tag_perl($opt->{tables}, $opt, $o->{qual}) - if $o->{qual}; - } - elsif($lines[0][CRIT] =~ /[[\s]|__/) { - ($field, $qual) = split /\s+/, interpolate_html($lines[0][CRIT]), 2; - if($qual =~ /{}/) { - logError("Bad qualification code '%s', returning 0", $qual); - goto SHIPFORMAT; - } - } - else { - $field = $lines[0][CRIT]; - } - - goto SHIPFORMAT unless $field; - - # See if the field needs to be returned by a Interchange function. - # If a space is encountered, a qualification code - # will be set up, with any characters after the first space - # used to determine geography or other qualifier for the mode. - - # Uses the quantity on the order form if the field is 'quantity', - # otherwise goes to the database. - $total = 0; - - if($field =~ /^[\d.]+$/) { -#::logDebug("Is a number selection"); - $total = $field; - } - elsif($field eq 'quantity') { -#::logDebug("quantity selection"); - foreach $i (0 .. $#$Vend::Items) { - $total = $total + $Vend::Items->[$i]->{$field}; - } - } - elsif ( index($field, ':') != -1) { -#::logDebug("outboard field selection"); - my ($base, $field) = split /:+/, $field; - my $db = database_exists_ref($base); - unless ($db and db_column_exists($db,$field) ) { - logError("Bad shipping field '$field' or table '$base'. Returning 0"); - goto SHIPFORMAT; - } - foreach $i (0 .. $#$Vend::Items) { - my $item = $Vend::Items->[$i]; - $total += (database_field($base, $item->{code}, $field) || 0) * - $item->{quantity}; - } - } - else { -#::logDebug("standard field selection"); - unless (column_exists $field) { - logError("Custom shipping field '$field' doesn't exist. Returning 0"); - goto SHIPFORMAT; - } - foreach my $item (@$Vend::Items) { - my $base = $item->{mv_ib} || $Vend::Cfg->{ProductFiles}[0]; - my $value = tag_data($base, $field, $item->{code}); - $total += $value * $item->{quantity}; - } - } - - # We will LAST this loop and go to SHIPFORMAT if a match is found - SHIPIT: - foreach $row (@lines) { -#::logDebug("processing mode=$row->[MODE] field=$field total=$total min=$row->[MIN] max=$row->[MAX]"); - - next unless $total <= $row->[MAX] and $total >= $row->[MIN]; - - if($qual) { - next unless - $row->[CRIT] =~ m{(^|\s)$qual(\s|$)} or - $row->[CRIT] !~ /\S/; - } - - $o = get_option_hash($row->[OPT], $o) - if $row->[OPT]; - # unless field begins with 'x' or 'f', straight cost is returned - # - otherwise the quantity is multiplied by the cost or a formula - # is applied - my $what = $row->[COST]; - if($what !~ /^[a-zA-Z]\w+$/) { - $what =~ s/^\s+//; - $what =~ s/[ \t\r]+$//; - } - if($what =~ /^(-?(?:\d+(?:\.\d*)?|\.\d+))$/) { - $final += $1; - last SHIPIT unless $o->{continue}; - } - elsif ($what =~ /^f\s*(.*)/i) { - $formula = $o->{formula} || $1; - $formula =~ s/\@\@TOTAL\@\\?\@/$total/ig; - $formula = interpolate_html($formula) - if $formula =~ /__\w+__|\[\w/; - $cost = $Vend::Interpolate::ready_safe->reval($formula); - if($@) { - $error_message = errmsg( - "Shipping mode '%s': bad formula. Returning 0.", - $mode, - ); - logError($error_message); - last SHIPIT; - } - $final += $cost; - last SHIPIT unless $o->{continue}; - } - elsif ($what eq 'x') { - $final += ($o->{multiplier} * $total); - last SHIPIT unless $o->{continue}; - } - elsif ($what =~ s/^x\s*(-?[\d.]+)\s*$/$1/) { - $final += ($what * $total); - last SHIPIT unless $o->{continue}; - } - elsif ($what =~ s/^([uA-Z])\s*//) { - my $zselect = $o->{zone} || $1; - my ($type, $geo, $adder, $mod, $sub); - ($type, $geo, $adder) = @{$o}{qw/table geo adder/}; - if(! $type) { - $what = interpolate_html($what); - ($type, $geo, $adder, $mod, $sub) = split /\s+/, $what, 5; - $o->{adder} = $adder; - $o->{round} = 1 if $mod =~ /round/; - $o->{at_least} = $1 if $mod =~ /min\s*([\d.]+)/; - } - elsif (! $o->{geo}) { - $geo = interpolate_html($what); - } - else { - $geo = $::Values->{$o->{geo}} || $o->{default_geo}; - } - - $cost = tag_ups($type,$geo,$total,$zselect,$o); - FIGURE: { - last FIGURE unless $cost; - } - $final += $cost; - last SHIPIT unless $o->{continue}; - } - elsif ($what =~ s/^([im])\s*//) { - my $select = $1; - $what =~ s/\@\@TOTAL\@\@/$total/g; - my ($item, $field, $sum); - my (@items) = @{$Vend::Items}; - my @fields = split /\s+/, $qual; - if ($select eq 'm') { - $sum = { code => $mode, quantity => $total }; - } - foreach $item (@items) { - for(@fields) { - if(s/(.*):+//) { - $item->{$_} = tag_data($1, $_, $item->{code}); - } - else { - $item->{$_} = product_field($_, $item->{code}); - } - $sum->{$_} += $item->{$_} if defined $sum; - } - } - @items = ($sum) if defined $sum; - for(@items) { - $cost = Vend::Data::chain_cost($_, $what); - if($cost =~ /[A-Za-z]/) { - $cost = shipping($cost); - } - $final += $cost; - } - last SHIPIT unless $o->{continue}; - } - elsif ($what =~ s/^e\s*//) { - $error_message = $what; - $error_message =~ s/\@\@TOTAL\@\@/$total/ig; - $final = 0 unless $final; - last SHIPIT unless $o->{continue}; - } - else { - $error_message = errmsg( "Unknown shipping call '%s'", $what); - undef $final; - last SHIPIT; - } - } - - if ($final == 0 and $o->{'next'}) { - return shipping($o->{'next'}, $opt); - } - elsif(defined $o->{additional}) { - my @extra = grep /\S/, split /[\s\0,]+/, $row->[OPT]->{additional}; - for(@extra) { - $final += shipping($_, {}); - } - } - -#::logDebug("Check 3, must get to FINAL. Vend::Items=$Vend::Items main=$::Carts->{main}"); - - - SHIPFORMAT: { - $Vend::Session->{ship_message} .= $error_message - if defined $error_message; - undef $::Carts->{mv_shipping}; - $Vend::Items = $save; -#::logDebug("Check FINAL. Vend::Items=$Vend::Items main=$::Carts->{main}"); - last SHIPFORMAT unless defined $final; - unless ($o->{free}) { - return '' if $final == 0; - $o->{adder} =~ s/\bx\b/$final/g; - $o->{adder} =~ s/\@\@TOTAL\@\\?\@/$final/g; - $o->{adder} = $ready_safe->reval($o->{adder}); - $final += $o->{adder} if $o->{adder}; - $final = POSIX::ceil($final) if is_yes($o->{round}); - if($o->{at_least}) { - $final = $final > $o->{at_least} ? $final : $o->{at_least}; - } - } - if($opt->{default}) { - if(! $opt->{handling}) { - $::Values->{mv_shipmode} = $mode; - } - else { - $::Values->{mv_handling} = $mode; - } - undef $opt->{default}; - } - return $final unless $opt->{label}; - my $number; - if($o->{free}) { - $number = $opt->{free} - if $final == 0; - } - else { - return $final unless $opt->{label}; - $number = Vend::Util::currency( - $final, - $opt->{noformat}, - $row->[OPT]->{PriceDivide}, - ); - } - my $label = $opt->{format} || '