Homework 6: Server-Side Scripting using PHP, JSON and Ticketmaster API
Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit
Homework 6: Server-Side Scripting using PHP, JSON and Ticketmaster API
Grading Guidelines
10 Points
Graders will test your homework on Firefox and Chrome.
Grading Guidelines:
Search Form (3.0 points in total)
● The initial web page with proper fields in the search form, along with “Events Search” header. (1.5 points)
● The drop-down list should contain all the 5 categories, 0.25 points will be deducted for each missing category
● Location edit box must disappear when selecting “Auto-detect location” checkbox and appear when unchecked, 0.5 points
● Distance edit box should have a placeholder, 0.25 points
● Background image should be attached, 0.25 points
● Search and Clear button should have proper hover effect and the form box should have frosted glass effect, 0.25 points
● Validation for the search inputs, the error message(s) should indicate if fields are missing. (0.5 point)
● If there is no error message for invalid input, 0.5 will be deducted.
● The “Clear” button resets the search form to the initial state and clears the results area. (0.5 point)
● For each incorrectly reset or cleared field, 0.25 point will be deducted, for a maximum deduction of 0.5 point.
● When the “Search” button is clicked, the page maintains the previous input values after displaying the results table. (0.5 point)
● For each incorrectly maintained field, 0.25 point will be deducted, for a maximum deduction of 0.5 point.
Search Result Table (4.0 points)
● Show the search information retrieved from the API service in a tabular format as described in the homework description. (2 points)
● For each missing column in the table, 0.5 point will be deducted.
● For each incorrect column value or column order mismatch, 0.5 point will be deducted.
● For each missing/incorrect row/category date/icon/event/genre/venue in the table, 0.5 point will be deducted.
● The search should work for all 5 possible categories. For every missing search, 0.5 point should be deducted.
● Maximum deduction will be 2 points.
● On clicking headers Event, Genre, Venue, ascending and descending order sorting should be done. 0.5 point for each column ascending or descending order. (1.5 points)
● Event name should be clickable, on clicking appropriate detailed information should be displayed in the new tab, Make sure that “artist/ team” and “buy ticket at” sections are clickable, and the page should be opened in a new window. (0.25 points for each section, 0.5 points for both are non-clickable).
Details Information (2.0 points)
● Show the information retrieved from the API service in a format as described in the homework description. (1.5 point)
● For each missing data in the card, 0.1 points will be deducted
● Missing the right heading for the corresponding value, 0.25 points will be deducted
● All the subheadings should have data, 0.25 will be deducted for every subheading with no data with a maximum of 1 point
● Ticket status in the event details card is color coded, 0.15 points will be deducted for every incorrectly colored card.
The convention used is follows:
o On sale: Green
o Off sale: Red
o Canceled: Black
o Postponed: Orange
o Rescheduled: Orange
● Venue details should display the entire address: Name of Venue + street address + city + state + zip code, 0.25 points
● Google maps location hyperlink should open in new tab, 0.25 points
● More events hyperlinks should open in new tab, 0.25 points
● Maximum deduction will be 1.5 points.
● Show the venue info card in a dynamic view (0.5 point)
Python Scripts (1.0 points)
● The other URL submitted in addition to the Homework 6 web page will be checked to see if the backend (Python scripts) is working or not.
**IMPORTANT**
● You may call Google Geocoding API and ipInfo from JavaScript, but you should not call Ticketmaster API directly from JavaScript. Doing this will result in a 4.0 points penalty.
● You should implement HW6 using a GCP, AWS or Azure cloud service as described in Assignment 5. Otherwise, 3.0 points will be deducted. This will be verified with an additional link in the Table of exercises, showing a sample API call to your “cloud” service and verifying the corresponding JSON result.
● Use of any kind of “template”-based technology, library or methods, such as Flask/Jinja templates, Django templates, or other templates that mix HTML and Python, will result in a 3.0 point penalty.
Source code submission
Students should submit their source code electronically on DEN D2L as a single ZIP file containing all front-end and back-end code and any additional files. In addition, on your course homework page, you must update the Homework 6 link to refer to your new home page in the cloud.
2023-02-13