# Plan 0 (install/upgrade)
# perform clean install
# login to Admin Console
# go to {nav Configuration > Users > General} section
# confirm, that `Editing Window Manager Ping Interval` system setting is present there
# perform an upgrade
# login to Admin Console
# go to {nav Configuration > Users > General} section
# confirm, that `Editing Window Manager Ping Interval` system setting is present there
# Part 1 (popup duplicate reporting)
# login to Admin Console in Web Browser A
# set `Editing Window Style` to `Popup Window` and save changes
# reload whole frameset (`Command+R` on Mac, `F5` on Windows)
# go to {nav Website & Content > Structure & Data} section, then `Directory` sub-category, then `Links` tab
# ensure, that at least 2 records are present
# open 1st record for editing
# confirm, that duplicate editing window isn't shown
# while keeping editing popup open try opening 1st record for editing again
# confirm, that you're faced with an alert window explaining duplicate editing issue
# close 2nd edting window (where alert dialog was shown)
# login to Admin Console in Web Browser B
# go to {nav Website & Content > Structure & Data} section, then `Directory` sub-category, then `Links` tab
# open 1st record for editing
# confirm, that you're faced with an alert window explaining duplicate editing issue
# Part 2 (modal duplicate reporting)
# login to Admin Console in Web Browser A
# set `Editing Window Style` to `Modal Window` and save changes
# reload whole frameset (`Command+R` on Mac, `F5` on Windows)
# go to {nav Website & Content > Structure & Data} section, then `Directory` sub-category, then `Links` tab
# ensure, that at least 1 record is present
# open 1st record for editing
# confirm, that duplicate editing window isn't shown
# login to Admin Console in Web Browser B
# go to {nav Website & Content > Structure & Data} section, then `Directory` sub-category, then `Links` tab
# open 1st record for editing
# confirm, that you're faced with an alert window explaining duplicate editing issue
# Part 3 (temporary table removal)
# login to Admin Console
# set `Editing Window Style` to `Modal Window` and save changes
# reload whole frameset (`Command+R` on Mac, `F5` on Windows)
# go to {nav Website & Content > Structure & Data} section, then `Directory` sub-category, then `Links` tab
# ensure, that at least 1 record is present
# open 1st record for editing
# confirm, that temporary tables were created in the database
# close editing window using X icon (in the top right/left corner of the window; not the toolbar buttons)
# wait 2 seconds (AJAX request for window closing is executed after 2 seconds)
# confirm, that temporary tables were removed from the database
# repeat this plan part, but with `Editing Window Style` set to `Popup Window` and save changes
# Part 4 (editing of several records)
# login to Admin Console in Web Browser A
# go to {nav Website & Content > Structure & Data} section, then `Directory` sub-category, then `Links` tab
# ensure, that at least 3 records are present
# open 1st and 2nd records record for editing
# confirm, that duplicate editing window isn't shown
# login to Admin Console in Web Browser B
# go to {nav Website & Content > Structure & Data} section, then `Directory` sub-category, then `Links` tab
# open 1st record for editing
# confirm, that you're faced with an alert window explaining duplicate editing issue
# close this editing window
# open 1st and 3rd record for editing
# confirm, that you're faced with an alert window explaining duplicate editing issue
# close this editing window
# Part 5 (tracking system doesn't extend session)
# login to Admin Console
# locate used Session ID (debugger or cookies)
# go to {nav Website & Content > Structure & Data} section, then `Directory` sub-category, then `Links` tab
# open any link for editing
# remember `UserSessions.LastAccessed` value for above remembered session id
# open Web Browser Inspector window on a Network tab
# wait until AJAX request to "OnTrackEditingWindowAJAX" event is made
# confirm, that `UserSessions.LastAccessed` value wasn't changed for above remembered session id
# Plan 6 (duplicate record window tracking)
# login to Admin Console
# locate used Session ID (debugger or cookies)
# go to {nav Website & Content > Structure & Data} section, then `Directory` sub-category, then `Links` tab
# open any link for editing
# open the same link for editing again (without closing any previously opened editing windows)
# open the same link for editing again (without closing any previously opened editing windows)
# confirm, that for each of the editing windows there is:
* a matching set of the temporary tables in the database
* a matching record in the `EditingWindowManager` memory table
# close 3rd opened editing window via `Cancel` toolbar button
# confirm, that both editing tables and a record from the `EditingWindowManager` memory table were removed
# close 2nd opened editing window via red `X` button of the window itself (not in the HTML)
# confirm, that both editing tables and a record from the `EditingWindowManager` memory table were removed
# close 1st opened editing window
# Plan 7 (new record tracking)
# login to Admin Console
# locate used Session ID (debugger or cookies)
# go to {nav Website & Content > Structure & Data} section, then `Directory` sub-category, then `Links` tab
# open a new link creation popup/modal window
# confirm, that for an adding window there is:
* a matching set of the temporary tables in the database
* a matching record in the `EditingWindowManager` memory table
# close opened adding window via red `X` button of the window itself (not in the HTML)
# confirm, that both editing tables and a record from the `EditingWindowManager` memory table were removed