Build website & database for Digital Camera Repairs Business Introduction We repair digital cameras. The website will diagnose the faults via a series of multiple choice questions (forms), then give a real-time estimate of the repair cost to the end consumer so that he can make a decision whether to proceed. The estimate of repair costs takes the following into consideration: 1). Camera Type: normally for the same faulty compact digital cameras are the cheapest, followed by Super-zoom digital camera and digital SLR, the professional video cameras are the most expensive; 2). Value of the Camera: normally expansive digital cameras costs more to repair even if they are both the same type (such as compact digital cameras). 3). Faults: we categorized different faults according to our experience. Different costs are associated with different faults. This project involves: 1). design a database for a digital camera repair business; 2).a web interface for customer to create an estimate according to the faults of his/her camera(s) and checking/querying progress of his order; and 3). an admin panel for admin to manage the system, processing orders, and updating customer with the current order status. The project should use MySQL database and PHP programming language. You must provide the original codes. Please use CSS files to control the display of the website and the admin panel. Notes: I tried to give as much details in this document as I can. There are minor changes to be expected during the development of the project. Please bear this in mind when making your offer. I. Key Database Tables The following are the structure (or full data) of the key database tables. There might be other tables to be added to make the project a working system. Table #1: CameraType: ID Category Image th1 th2 th3 1 Compact Digital Cameras compact.jpg 120 200 300 2 Super-Zoom Digital Cameras superzoom.jpg 300 350 400 3 Digital SLR Cameras dslr.jpg 400 450 500 4 Digital Video Cameras dv.jpg 300 400 500 5 Professional Video Cameras pv.jpg 2000 3000 4000 Notes: 1. Admin panel should have a page allowing admin to add more types. 2. The repair cost is directly related to the camera type and the value of the camera (Table #3) 3. th1, th2, and th3 are thresholds levels. The costs listed in Table #5 are the basic costs. If the value of the camera (as in Table #3) is lower than threshold level 1 (th1), then the repair cost equals the basic cost. If between th1 and th2, the repair cost will increase 10%; if between th2 and th3, the repair cost will increase 20%; if more than th3, the cost will increase by 30% Table #2: Manufacturers ID Manufacturer Logo 1 Canon canon_logo.gif 2 Sony sony_logo.gif 3 Panasonic 4 Fujifilm 5 Olympus 6 Nikon 7 Sanyo 8 Samsung 9 Kodak 10 Casio 11 Pentax 12 Ricoh 13 JVC 14 Sigma 15 Leica 16 BenQ 17 HP 18 Toshiba 19 Agfa 20 Konica-Minolta 21 Kyocera Notes: Admin panel should have a page allowing admin to add more manufacturers Table #3: Cameras ID ManufacturerID Model Type Value Weight (in Grams) Image Notes: 1. Admin panel should have a page allowing admin to add more Model 2. The web interface should include a function for the end consumers to add new models (if not present in the database), ManufacturerID, Model, Type, Value, and Weight are compulsory; customers should be given a drop-down list to select the manufacturers; weight default should be pre-populated. Please also check further notes under Web Interface section 3. Weight defaults: Compact Digital Cameras = 300 (g); Super-Zoom Digital Cameras = 1200; Digital SLR Cameras = 1600; Digital Video Cameras =1600; Professional Digital Cameras = 5000 4. Image field is optional for customers and admin (default = no_image.gif), if the customer or the admin did not provide an image files, then use the default “no_image.gif”, if the customer/admin uploaded an image, then change the file name to “manufacture”+ “_” + “model”, for example, if customer uploaded a JPEG image for Canon A650, then rename the pictures as “canon_a650.jpg” (all in lower case). 5. One task of the project involves collect date for 80% of the current and past models of top 11 manufacturers, including the model, weight and image of each camera. 6. Value defaults: Compact Digital Cameras = 150; Super-Zoom Digital Cameras = 250; Digital SLR Cameras = 800; Digital Video Cameras =800; Professional Digital Cameras = 2000 Table #4: FaultCategories ID Category 1 LENs 2 LCD/Display 3 Flash 4 Power/Battery 5 Others Notes: Admin panel should have a page allowing admin to add more categories Table #5: Faults FCID: Fault Category ID, as in Table 4 PT1: The basic cost of repairs for cameras Type 1 (as in Table 1). If the cost is 0, then this type of faults does not applicable to this type of camera … PT5: The basic cost of repairs for cameras Type 5 (as in Table 1). ID FCID Faults Description PT1 PT2 PT3 PT4 PT5 1 1 LENs Stuck LENs will not comes out 34.8 39.8 0 0 0 or retract 2 1 LENS Scratch There are scratches on 39.8 49.8 99.8 99.8 299.8 the surfaces of the lens 3 1 LENS Dirty There are dirt inside the 29.8 39.8 69.8 69.8 199.8 LENS 4 1 LENS MisAligned Lens mis-aligned and 0 0 69.8 69.8 199.8 stuck at one point 5 1 Faulty Cover Lens cover will not open 29.8 0 0 0 0 or close 6 1 Unable to Focus Unable to obtain clear 39.8 49.8 99.8 99.8 599.8 images under all or some conditions 7 2 Cracked or Black There are cracks or black 34.8 34.8 59.8 69.8 199.8 Patches patches on the LCD screen 8 2 No Image (Menu The screen does not show 39.8 39.8 49.8 69.8 199.8 Displayed OK) any images although the menus are displayed OK. 9 2 Black Screen The screen is completely 39.8 39.8 49.8 69.8 199.8 black (no power) 10 2 White Screen The screen powers on but 39.8 39.8 49.8 69.8 199.8 remains blank white 11 2 Abnormal The screen power on but 39.8 39.8 49.8 69.8 199.8 Display display distorted images or just colour lines/bands. 12 3 No Power The flash just will not 34.8 39.8 0 0 0 switch on 13 3 Over- or Under- The flash is too strong or 34.8 39.8 0 0 0 Powered too weak 14 3 Not Pop-up The flash will not pop up 29.8 34.8 0 0 0 15 3 Other Flash Any other flash-related 39.8 49.8 99.8 0 0 Faults problems 16 4 No Power The unit will not switch 39.8 49.8 99.8 99.8 499.8 on either on battery or on mains (via dock or AC adapter), excluding cameras suffer from sever water/chemical damage, i.e., the internal component has rusted or rotten. 17 4 No Battery Power The unit will not switch 29.8 34.8 49.8 69.8 199.8 on with a fully-charged battery (works OK on a dock or AC adapter) 18 5 Water/Chemical Cameras suffer from 99.8 199.8 499.8 599.8 999.8 Damage sever water/chemical damage, i.e., the internal component has rusted or rotten. 19 5 Button(s)/Dial(s) One or more 29.8 34.8 49.8 69.8 199.8 Fault buttons/dials not working properly 20 5 Memory Fault Camera will not 29.8 34.8 49.8 69.8 199.8 remember the date/language settings 21 5 Over- or Under- The picture taken by the 39.8 69.8 99.8 99.8 0 exposure camera under Auto mode is either too bright or too dark 22 5 Unable to Focus The photos are always 49.8 69.8 99.8 99.8 499.8 blurred 23 5 Misc. Intermittent Other inconsistent faults 49.8 69.8 99.8 99.8 499.8 Faults pls include more details in the “Details” form below. Notes: 1. Admin panel should have a page allowing admin to add more faults 2. The actually repair costs is calculated based on the basic repair costs (PT1, PT2, …PT5) and the value of the camera, if the camera value is higher, then the repair cost will increase accordingly (see note 2 under Table #1). Table #6: Customers customers_id customers_gender customers_firstname customers_lastname customers_dob customers_email_address customers_default_address_id customers_telephone customers_fax customers_password Notes: Customers_gender, customer_dob, and customer_fax are optional, others are all compulsory Table #7 : Address_book address_book_id customers_id entry_company entry_street_address entry_suburb entry_postcode entry_city entry_state entry_country_id entry_zone_id Notes: 1. Entry_company, entry suburb, and entry state are optional, others are all compulsory 2. When a customer try to make an order on the website, they should have a country drop-down list for them to choose their country, for UK/US customer, entry_state have state/county in a drop-down list, the default for the drop-down list is “- -“ for UK customers. Table #8: orders orders_id customers_id customers_name customers_company customers_street_address customers_suburb customers_city customers_postcode customers_state customers_country customers_telephone customers_email_address customers_address_format_id delivery_name delivery_company delivery_street_address delivery_suburb delivery_city delivery_postcode delivery_state delivery_country delivery_address_format_id billing_name billing_company billing_street_address billing_suburb billing_city billing_postcode billing_state billing_country billing_address_format_id payment_method cc_type cc_owner cc_number cc_expires last_modified date_purchased orders_status Note: 1. cc_number (credit card number) should be encrypted before saving to the database. Customer can edit their own credit card number, but they may only view the last four digits. 2. When a customer try to make an order on the website, they should have a country drop- down list for them to choose their country, for UK/US customer, entry_state have state/county in a drop-down list, the default for the drop-down list is “- -“ for UK customers. Table #9: orders_products orders_id products_id products_name products_price products_quantity faults_desc Notes: 1. products_name is the full details of the camera (as in Tables #2 & #3) and faults (as in Table #5), for example: Canon IXUS 850 IS Serial No 8912653: LENs will not come out or retract (see section 2.1.1) 2. faults_desc is the description of the fault provided by the customer. Table #10: Countries Our service is currently limited to a few countries (see list below); at the moment we don’t accept customers from any countries other than these listed in this Table. More countries maybe added later via the Admin panel. countries_id countries_name countries_iso_code_2 countries_iso_code_3 14 Austria AT AUT 21 Belgium BE BEL 57 Denmark DK DNK 72 Finland FI FIN 73 France FR FRA 81 Germany DE DEU 83 Gibraltar GI GIB 84 Greece GR GRC 103 Ireland IE IRL 105 Italy IT ITA 122 Liechtenstein LI LIE 124 Luxembourg LU LUX 150 Netherlands NL NLD 160 Norway NO NOR 170 Poland PL POL 171 Portugal PT PRT 195 Spain ES ESP 203 Sweden SE SWE 204 Switzerland CH CHE 222 United Kingdom GB GBR 223 United States US USA Table #11: geo_zones geo_zone_id geo_zone_name geo_zone_description last_modified date_added The geo_zones are used to calculate shipping costs and tax (VAT), the four geo_zones are listed below: geo_zone_id geo_zone_name geo_zone_description 2 European Countries EU VAT zone 3 Channel Islands Channel Islands 4 UK Mainland UK mainland 5 Norther Ireland Northern Ireland 6 Friend Countries Other Countries Table #12: zones UK and USA customers have state/county pre-listed once the country is selected, zone_id zone_country_id zone_code zone_name 186 222 WLS Wales 346 222 OXFO Oxfordshire 345 222 NYOR North Yorkshire 344 222 NWHI North west Highlands 343 222 NUMB Northumberland 342 222 NOTT Nottinghamshire 341 222 NORF Norfolk 340 222 NHAM Northamptonshire 339 222 NEWP Newport 338 222 NEAT Neath Port Talbot 337 222 MONM Monmouthshire 336 222 MERT Merthyr Tydfil 335 222 MERS Merseyside 334 222 MANC Manchester 333 222 LOTH Lothian 331 222 LINC Lincolnshire 330 222 LEIC Leicestershire 371 222 NIRE Northern Ireland 328 222 LANC Lancashire 327 222 KENT Kent 326 222 JSY Jersey 324 222 ISLE Isle of Anglesey 323 222 HUMB Humberside 322 222 HERT Hertfordshire 321 222 HERE Hereford & Worcester 320 222 HAMP Hampshire 319 222 GWYN Gwynedd 317 222 GWEN Gwent 316 222 GSY Guernsey 315 222 GRAM Grampian 314 222 GLOU Gloucestershire 313 222 GLAM Glamorgan 312 222 FLIN Flintshire 311 222 FIFE Fife 310 222 FER Fermanagh 309 222 ESUS East Sussex 308 222 ESSE Essex 307 222 DYFE Dyfed 306 222 DURH Durham 305 222 DUMF Dumfries & Galloway 304 222 DOW County Down 303 222 DORS Dorset 302 222 DEVO Devon 301 222 DERB Derbyshire 300 222 DENB Denbighshire 299 222 CUMB Cumbria 298 222 CORN Cornwall 297 222 CONW Conway 296 222 CLWY Clwyd 295 222 CLEV Cleveland 294 222 CHI Channel Islands 293 222 CHES Cheshire 292 222 CERE Ceredigion 291 222 CENT Central 290 222 CARM Carmarthenshire 289 222 CARD Cardiff 288 222 CAMB Cambridgeshire 287 222 CAER Caerphilly 286 222 BUCK Buckinghamshire 285 222 BRID Bridgend 284 222 BORD Borders 283 222 BLGW Blaenau Gwent 282 222 BIRM Birmingham 281 222 BERK Berkshire 280 222 BEDS Bedfordshire 279 222 AVON Avon 278 222 ARM County Armagh 277 222 ANT County Antrim 276 222 ALD Alderney 347 222 PEMB Pembrokeshire 348 222 POWY Powys 349 222 SHRO Shropshire 350 222 SOME Somerset 351 222 STAF Staffordshire 352 222 STRA Strathclyde 353 222 SUFF Suffolk 354 222 SURR Surrey 355 222 SWAN Swansea 356 222 SYOR South Yorkshire 357 222 TAFF Rhondda Cynon Taff 358 222 TAYS Tayside 359 222 TORF Torfaen 360 222 TYR County Tyrone 361 222 TYWE Tyne & Wear 362 222 VALE Vale of Glamorgan 363 222 WARW Warwickshire 364 222 WILT Wiltshire 365 222 WISL West Isles 366 222 WREX Wrexham 367 222 WSUS West Sussex 368 222 WYOR West Yorkshire 370 222 GLDN Great London 372 222 MDX Middlesex 373 222 ADN Aberdeenshire 374 222 IOM Isle of Man 375 222 Ayrs Ayrshire 376 222 WMID West Midland 377 222 EYOR East Yorkshire 378 222 HL Scottish Highland 379 222 -- -- 380 222 BFPO BFPO 1 223 AL Alabama 2 223 AK Alaska 3 223 AS American Samoa 4 223 AZ Arizona 5 223 AR Arkansas 6 223 AF Armed Forces Africa 7 223 AA Armed Forces Americas 8 223 AC Armed Forces Canada 9 223 AE Armed Forces Europe 10 223 AM Armed Forces Middle East 11 223 AP Armed Forces Pacific 12 223 CA California 13 223 CO Colorado 14 223 CT Connecticut 15 223 DE Delaware 16 223 DC District of Columbia 17 223 FM Federated States Of Micronesia 18 223 FL Florida 19 223 GA Georgia 20 223 GU Guam 21 223 HI Hawaii 22 223 ID Idaho 23 223 IL Illinois 24 223 IN Indiana 25 223 IA Iowa 26 223 KS Kansas 27 223 KY Kentucky 28 223 LA Louisiana 29 223 ME Maine 30 223 MH Marshall Islands 31 223 MD Maryland 32 223 MA Massachusetts 33 223 MI Michigan 34 223 MN Minnesota 35 223 MS Mississippi 36 223 MO Missouri 37 223 MT Montana 38 223 NE Nebraska 39 223 NV Nevada 40 223 NH New Hampshire 41 223 NJ New Jersey 42 223 NM New Mexico 43 223 NY New York 44 223 NC North Carolina 45 223 ND North Dakota 46 223 MP Northern Mariana Islands 47 223 OH Ohio 48 223 OK Oklahoma 49 223 OR Oregon 50 223 PW Palau 51 223 PA Pennsylvania 52 223 PR Puerto Rico 53 223 RI Rhode Island 54 223 SC South Carolina 55 223 SD South Dakota 56 223 TN Tennessee 57 223 TX Texas 58 223 UT Utah 59 223 VT Vermont 60 223 VI Virgin Islands 61 223 VA Virginia 62 223 WA Washington 63 223 WV West Virginia 64 223 WI Wisconsin 65 223 WY Wyoming Table #13: Shipping zone_id Weight Postage VAT 1 800 5.98 17.5 1 1800 6.98 17.5 1 8800 13.98 17.5 2 800 7.98 17.5 2 1800 9.98 17.5 2 8800 14.98 17.5 3 800 8.98 0 3 1800 11.98 0 3 8800 16.98 0 4 800 9.98 17.5 4 1800 15.98 17.5 4 8800 19.98 17.5 5 800 9.98 17.5 5 1800 17.98 17.5 5 8800 39.98 17.5 Table #14: orders_status_history orders_status_history_id orders_id orders_status_id date_added customer_notified comments Notes: 1. Both customer and admin can add comments, if customer add any comments regarding the order, it should automatically email the admin and customer. 2. orders_status_id is defaulted to 1. 3. If admin add a comment, he can make it available to customer or not by tick the “customer_notified” option. If the “Custoner Notified” option is ticked, then the comments will be emailed to the customer and the same comments can be viewed when customer log in to check his order status. Table #15: zones_to_geo_zones This table associate countries/zones to geo_zones for tax/shipping calculation. association_id zone_country_id zone_id geo_zone_id date_added Table #16 orders_status orders_status_id orders_status_name 1 Pending 2 Processing 3 Shipped 4 Cancelled 5 Waiting Receipt 6 Checked-in 7 Repairing 8 Card_Charged 9 Under_Query II. Web Interface This is the website displayed to the public. It mainly does the following jobs: 1). collect the details of the fault(s) to obtain estimates of the repair cost of the camera(s); 2). Collect the customer details and credit card information to create an order (obtaining shipping cost according to weight and customer’s region/location); 3). Allow customer to save/edit his shopping basket; confirm/edit an order; edit/add addresses; tracking/querying order status; 4). Saving customer’s shopping basket, orders, order status (updated by admin); order queries (updated by customer); 2.1 Home page 2.1.1 Fault Diagnosis section The homepage mainly consists of a form to collect the information on the fault(s) of the camera(s). Starting from a Drop-Down list of Manufacturers (Table #2), once a customer selected a manufacturer, then display a drop down list of the camera types (Table #1) that this manufacturer has camera models (if the manufacturer does not have that type of cameras, ignore that type), then another drop-down list appears with a list of models from the selected manufacturer and camera type, after the customer selected the model, follows another drop- down list of fault categories (Table #4), then a list of faults (Table #5). Then ask the customer to provide a detail description of the fault (Table #9, faults_desc). At the end there should be an option for the customer to specify another fault of the same camera, or add details of another camera. This section are demonstrated as below: Please select the manufacturer of your camera: (drop-down list) Sony Canon Panasonic … BenQ For example, the customer selects Canon, and then another drop-down list appears: Compact Digital Cameras Super-Zoom Digital Cameras Digital SLR Cameras Digital Video Cameras Professional Video Cameras If the customer select Compact Digital Cameras, then another drop down list containing the canon compact digital cameras appears (Table #3), for example: IXUS 800 IXUS 850 IS IXUS 900 TI IXUS 950 IS … Add New If customer selects “Add New”, then pop-out a new window to collect the camera details (Table #1 and Table #3), then update the details into the related Tables, refresh the previous page, and auto-select the new model which has just added into the database. If the customer selects a model, for example, IXUS 850 IS, then asking the customer to provide the Serial Number of the camera (compulsory, customer can enter Not Available if the serial number is no long available/readable), followed by a list of faults (Table #5) grouped by Fault Categories (Table 4). Please only display those faulty with basic (repair) cost more than “0” (basic cost = 0 means the fault does not apply to that type of camera). Once the fault was selected, the full details of the fault will be displayed with a warning message: Canon IXUS 850 IS Serial No 8912653: LENs will not come out or retract Estimated Repair Cost: £38.28 Shipping Charges: (to be added after you login or specify your shipping address) Warning: The repair cost is an estimate only, the actual cost might vary 30% (If any changes, you will be contacted and you can decide then whether to proceed or not). Shipping charges will be added to the final costs. Shipping charges will be calculated after you specify your shipping address. Are there any other faults with the camera? (if yes then go back and display the fault list again; if no, then display the message below, If multiple faults of the same camera provided and two faults belongs to the same FaultCategories (Table #4), then the basic repair cost is the higher one of the two; if the faults belong to two different FaultCategories, then the repair cost is the sum of the two) Please provide as much details as possible regarding the faults: Do you want to repair another camera? (if yes, display the faulty diagnosis section again, if no the proceed) “Save Order” “Check Out” “Reset” Save Order will put the order into customer’s shopping basket but remain on the same page; Check Out will save the order to the shopping basket and forward the customer to Shopping Basket page (section 2.2). Reset will negate the customers’ input and reload the homepage. 2..1.1 Know-How / FAQ section This section allows the admin to explain what common faults of the cameras, how to look after a camera, and other FAQs. 2.2 Shopping Basket 2.2.1 If the customer is logged in, then address details, telephone, email address, and the last four digits of the credit card are all pre-populated., with two “Update” buttons, one for updating addresses/tel/email, and one for credit card details, if the customer click any of the “Update” buttons, a new window will pop out to collecting required information, after customer confirm the new information, the pop-out window will close, the related tables will be updated and original page refreshed with the new details. 2.2.2 If the customer is not logged in, then giving two parallel forms for customer to fill in; the left hand side a simple form for return customers; the right side form for new customer. The form for return customers ask for an email address and password to log in, once logged in the page will be updated as 2.2.1. The form for new customers will ask the shipping and billing country (defaulted to UK), addresses ( UK & US customer will have county/state in drop-down list), telephone, email, password/retype password (for customer to log in again), credit card numbers (compulsory), expiry date(compulsory), issue No (if available, not all cards has issue nnumber), and security code(compulsory). The customer will then click “Calculate Total Cost”. 2.2.3 The shipping charges will be calculated according to the address/zones (Table #13), then total cost (repair cost + shipping charges) are displayed. 2.2.4 There should be two buttons at the bottom: “Confirm Order” and “Edit Order”. Click on Confirm order will first check if all the compulsory items has been filled in, then record details into various database tables, for examples, orders (Table #8); orders_products (Table #9), and orders_status_history (Table #14, ), the display the order confirmation page. 2.2.5 The order confirmation follows the “Confirm Order” of the shopping basket page. This page first displays the following message to the customer (the order No is “CR” + orders_id): Thanks for your kind order. You will not be charged until we have successfully repaired your camera at the quoted price. If there are additional costs involved we will contact you again to check if you wish to proceed. If we are unable to repair your camera anyway, it will be returned to you absolutely free of any repair/shipping costs. Please wrap your camera up and send it to: Allcam, 127 High Road, Chilwell, Nottingham NG9 4AT, United Kingdom, Tel: 0115 8226589 Your order details are printed below. Order No.: CR1 Billing Address Shipping Address John Dowe John Dowe 127 High Road, 120 High Road, Chilwell, Chilwell, Nottingham, Nottinghamshire Nottingham, Nottinghamshire NG9 4AT NG9 4AT United Kingdom, United Kingdom, Tel: 0115 8226589 Tel: 01111111111 Email: firstname.lastname@example.org Email: email@example.com Products Price (GBP) Canon IXUS 850 IS Serial No 8912653: LENs will not come out or retract 32.58 Faults Description: The camera was working fine till it was dropped accidentally. The lens will not retract. When we tried to switch on the screen displays “lens error” then switch itself off. Shipping Charges 5.94 VAT / Tax 6.74 Estimated Total Cost 45.26 Revise Order Customer may revise the order if the order status is pending (order_status not more than “1” as in Table #16) 2.3 Log in This page ask the customer to provide his email address and password in order to log in to view his order history and make queries on status of his orders. Once customer logged in, direct to the account page (section 2.4) 2.4 account This page follows after customer log in from the “log in” page (section 2.3). 2.4.1 “My Orders” section The account page first lists the past orders (& the order status) of the customer (limited to 20 orders per page). Customer can click on each order number to view the order status, he can also add a comments for the order. The comments will be added to Table #14 orders_status_history (a new comment will set the order_status_id = 9), and be emailed to the admin and the customer. 2.4.2 “My Details” section The account page then lists the lasted two addresses (if available). The customer can edit his address book to make new entries or revise his old addresses. The customer can also change his telephone no/email address/password/credit card numbers. The custom may only see the last 4 digits of his credit card numbers. 2.4.3 “Ask a Question” section The last section of the account page is a simple form for the customer to contact the admin, once submitted, the email containing the question will be emailed to both the customer and the admin III. . Admin Panel This is a password protected backend for admin to process/edit orders (including credit card details). 3.1 Home page The admin home pages contains quick links to other admin task pages 3.2 Orders This page list all the orders, one row per order, each row containing the order No; order date, order status, and two buttons “Edit Order” and “Invoice” button; 20 orders per page (sort from the latest to the oldest). On click “Edit Order”, a pop-out window will display all sections of the orders for the admin to edit order details, make comments (with a checkbox option to notify customer), and change order status. 3.3 Orders waiting processing The page layout should be similar to section 3.2, but only list those orders waiting to be processed 3.4 Orders under query The page layout should be similar to section 3.2, but only list those orders which customer has made a query. 3.5 Customers This lists all the customers according to their customer ID, one row per customer, and 20 customers per page. Each row should contain cusomter ID, first name, surname, email, joining date, post code, and two buttons “View Customer” and “View Orders”. View Customer will show the customer’s full address / telephone / email; and View Orders will show the customer’s previous orders (as section 3.2 with customer ID filter) There should also be a search form to search the customer by name (firstname and surname), company, email address, and post code. Please always remove blanks in front of any search phrase, for example if admin type in “ Smith”, please first change it to “Smith” then perform the search. All searches should NOT be case-sensitive. When comparing the post code, please remove any blank in the search phrase and those pulled from the database, for example, if search for a customer with post code “ NG9 4AT”, then first change the search phrase to “NG94AT”, the post code data pulled from the database should also remove the blanks before comparison 3.4 Countries This page allows the admin to browse/edit/add countries (Table #10). 3.5 geo_zones This page allows the admin to browse/edit/add geo_zones (Table #11). 3.6 zones This page allows the admin to browse/edit/add zones (Table #12). 3.7 Manufacturers This page allows the admin to browse/edit/add manufacturers (Table #2). 3.8 Cameras This page allows the admin to browse/edit/add cameras (Table #3). 3.9 FaultCategories This page allows the admin to browse/edit/add cameras (Table #3). 3.10 Faults This page allows the admin to browse/edit/add faults (Table #5). 3.11 Shipping This page allows the admin to browse/edit/add shipping (Table #13). 3.12 CamaeraTyps This page allows the admin to browse/edit/add camera types (Table #1).