The D167 revision must be applied upfront for this test plan to work
# Part 1
# go to {nav Website & Content > Structure & Data} section
# confirm that `Up` and `Down` buttons properly changes `Order`
# confirm that `Approve` and `Decline` buttons properly changes `Status` for categories and products
# go to {nav Tools > Query Database} section
# run SQL like: `UPDATE inp_Categories SET l1_Name = '' WHERE l1_Name = 'Home'` to break validation for some category in the middle of categories grid, displayed on {nav Website & Content > Structure & Data} section
# go to {nav Website & Content > Structure & Data} section
# confirm, that some category with status `Active` in the middle of the list have empty "Section Title" field
# select some categories with status `Active`, including category with empty "Section Title" field, some category before it and some category after it in the grid
# confirm that pressing `Decline` button do not change Status for category with empty name, and correctly change statuses for other selected categories, and no fatal error happens
# restore category name(s) and statuses, changed in this test
# Part 2
# go to {nav User Management > Users} section
# create 4 users
# go to {nav E-commerce > Affiliates} section
# create an affiliate record for each of users, created above
# confirm that `Approve` and `Decline` buttons properly changes `Status`
# approve all affiliate records
# make sure there are 3+ affiliates in the grid, remember ID of some affiliate in the middle of the list
# go to {nav Tools > Query Database} section
# run SQL like: `UPDATE inp_Affiliates SET SSN = '' WHERE AffiliateId = {remembered Id}` to break validation for remembered affiliate in the middle of affiliates grid, displayed on {nav E-commerce > Affiliates} section
# go to {nav E-commerce > Affiliates}
# open with `Edit` button remembered affiliate
# confirm, that `SSN/Tax Id/VAT Number` is empty
# go to {nav E-commerce > Affiliates}
# select some affiliates including affiliate with empty `SSN/Tax Id/VAT Number` field, some affiliate before it and some affiliate after it in the grid
# confirm that pressing `Decline` button do not change Status for affiliate with empty `SSN/Tax Id/VAT Number`, and correctly change statuses for other selected affiliates, and no fatal error happens
# restore affiliate `SSN/Tax Id/VAT Number` and statuses, changed in this test
# Part 3
# go to {nav Directory > Link Validation} section
# confirm that `Approve` and `Decline` buttons properly changes status icon in the `Link Validation` grid and Status field of related link
# make all links have status `Active`
# make sure there are 3+ links in the grid, remember ID of some link in the middle of the list
# go to {nav Tools > Query Database} section
# run SQL like: `UPDATE inp_Link SET Url = '' WHERE LinkId = {remembered Id}` to break validation for remembered link in the middle of links grid, displayed on {nav Directory > Link Validation} section
# go to {nav Directory > Link Validation}
# confirm, that `Link URL` is empty for remembered link
# select some links including link with empty `Link URL` field, some link before it and some link after it in the grid
# confirm that pressing `Decline` button do not change Status for link with empty `Link URL`, and correctly change statuses for other selected links, and no fatal error happens
# restore link `Link URL` and statuses, changed in this test
# Part 4
# go to {nav Directory > Paid Listings} section
# confirm that `Approve` and `Decline` buttons properly changes Status
# make all listings have status `Active`
# make sure there are 3+ listings in the grid, remember ID of some listing in the middle of the list
# go to {nav Tools > Query Database} section
# run SQL like: `UPDATE inp_Listings SET ExpiresOn = NULL WHERE ListingId = {remembered Id}` to break validation for remembered listing in the middle of listings grid, displayed on {nav Directory > Paid Listings} section
# go to {nav Directory > Paid Listings}
# confirm, that `Expires On` is empty for remembered listing
# select some listings including listing with empty `Expires On` field, some listing before it and some listing after it in the grid
# confirm that pressing `Decline` button do not change Status for listing with empty `Expires On`, and correctly change statuses for other selected listings, and no fatal error happens
# restore listing `Expires On` and statuses, changed in this test