CP-1.0.081 - 11/1/2025
- KRGJ
- Equipment headers (used to supply the header list for the admin page in BL):
- Fix bug: fails to supply headers to BL if the page has a display function.
- Invoice page:
- Add error messages if the invoice doesn't exist.
- Make InvSeq optional, since AR isn't always invoiced. If InvSeq isn't part of the link but multiple invoices exist, it will simply display whichever invoice SQL Server returns first.
- Remove the "Verify" button from the error messages.
CP-1.0.079 - 10/17/2025
- KRGJ
- squarePayment
- Fix bug: smtpSenderName is hard-coded to "Customer Portal" instead of using the configuration variable.
- Guest zip login:
- Allow spaces and dashes in zip codes, stripping them from the zip code value before sending it to the server.
CP-1.0.078 - 10/15/2025
- KRGJ
- CMJ
- Invoices, invoice, square payments
- Fix bug: payment display format issues
- Include pending payments when calculating remaining invoice totals
- Add extra check to the invoice page and payment page to prevent paying the same invoice multiple times.
- Login:
- Fix bug: BaseLink and CP use the same cookie, causing password prompts during guest access
- Supporting:
- Fix bug: formatMoney() function crashes if you pass it a number string without a decimal point.
CP-1.0.077 - 10/7/2025
- KRGJ
- Fix bugs in forgot password functionality
- Fix bugs in invoice payment
CP-1.0.076 - 9/18/2025
- CMJ
- Fix for guest square payment
CP-1.0.075 - 9/16/2025
- KRGJ
- Clay's square updates
- User settings:
- Fix bug: No status message for successful or failed password udpates.
CP-1.0.074 - 8/30/2025
- KRGJ
- Identifiers:
- Added read-only support for the new identifier for two-part web links
- User settings:
- Added an option for the user to change their password
- Forgot password:
- The user can now change their password when they forget it.
- The user puts in their email address and customer number, which looks up their user.
- Customer portal sends a mobile PIN to the user, email or sms based on their user settings.
- The user puts in their new password and confirms it.
- Customer portal now keeps track of how many pages a user loads each calendar month.
- Customer portal now has a new authentication flag, authGuestCount. Customer portal keeps track of guest loads of these pages. Currently the pages with this flag are action pages where forms are submitted or payments are processed: serviceRequestSave, estimatesUpdate, squarePayment.
CP-1.0.073 -
- KRGJ
- squarePayment: Add formatting to the payment and remainder amounts
CP-1.0.071 - 7/11/2025
- KRGJ
- Included Square updates from CMJ
- Rework the service reqeust page:
- All form fields are now optional, and you can have as many form fields as you want.
- Fields are in a semicolon-delimted list: ColType,ColNum,[-*],[-*]
- ColType is either a UIType or a special Type. Special types are:
- C: ItemCat
- S: Stock
- V: Vendor
- P: Problem
- ColNum is which column in the equipmentSR page fills this field, or blank if the equipment search doesn't fill this field.
- The third field is * if required, blank if not, - if it doesn't appear for equipment requests
- The fourth field is * if required, blank if not, - if it doesn't appear for non-equipment requests
- Fix bugs:
- Single invoice page didn't work for guests
- Outlook OAuth token doesn't refresh properly
- Status not working in invoices page
CP-1.0.070 - 12/10/2024
- KRGJ
- Changes to bring ASRI's customer portal in with the generic customer portal
CP-1.0.065 - 7/18/2024
- CMJ
- Estimate
- Modifications to the estimate page display
- Recycle and return options on decline
- Guest Estimate now supports decline
- Unique message when succededing in approval/decline
- Checks customers terms for pay now or pay later options
- Service Request
- Guest login populates name and email
- Creates new customer while using guest process
- SO page
- Equipment Page
- Option to expand history on an equipment
CP-1.0.064 - 6/21/2024
- KRGJ
- Login updates
- Fixed bugs in static auth for PDFs.
CP-1.0.063 - 6/13/2024
- KRGJ
- Login updates
- Logout now truly logs you out, even if you don't close the web browser.
- Created a guest login where the guest has to provide the zip matching the OrderID.
- When opening a page when you are not logged in, opens the login page, then once logged in takes you to the page you were originally trying to open.
- Updated the static auth scheme for PDFs so that you could have multiple directories.
CP-1.0.046 - 2/27/2024
- KRGJ
- Added a page that triggers the CP to update its settings from SQL.
CP-1.0.045 - 1/19/2024
- KRGJ
- Update settings to use the WEBSETTINGS table. Update CP and BL links to use the FL company settings.
- Combine the email functions into one function, and update the pages that send email to use this combined function.
CP-1.0.044 - 1/19/2024
CP-1.0.043 - 11/17/2023
- CMJ
- Estimates Page
- Checks for input of "Name"
- Decline button funcitonality added
- Status options now include "Approved" "Declined"
- Call for Details button removed
- Home Page
- Notification bauble added for Estimates
- Bug Fix:Issue with Estimates query when user has no estimates resolved
CP-1.0.042 - 11/07/2023
- CMJ
- Estimates Page
- Status column added
- Page now checks for customer terms during approval process
- Depending on terms, customers can Pay Now or just approve
- Pay Now option connects with payment process
CP-1.0.041 - 10/11/2023
- CMJ
- Fix Bug: Home page notification bubble now displays correct amount.
- Square Bug: Fixed issue with square token calls.
CP-1.0.040 - 7/14/2023
- KRGJ
- Fix bug: invoices page shows payments increasing the total due instead of decreasing it.
- Square: update API calls to read the token from the database.
CP-1.0.039 - 7/11/2023
- CMJ
- Single use/Guest estimate page html added
CP-1.0.038 - 7/08/2023
- CMJ
- Login Page
- Home Page
- SQL
- Invoice/Pay page code cleanup
CP-1.0.037 - 6/22/2023
- KRGJ
- Added shared and supporting files for AES encryption support.
CP-1.0.036 - 5/16/2023
- CMJ
- Customer Portal
- Added Frontline 7.0 support
CP-1.0.035 - 4/25/2023
CP-1.0.034 - 4/13/2023
- CMJ
- Estimates Page
- Now Displays total as Price+Tax value from TRX table
- Now attaches pdf to email(data not included)
CP-1.0.033 - 4/11/2023
- CMJ
- Estimates Page
- On confirmation now makes entry in APPROVALS table
- Checks if estimate already approved before displaying
CP-1.0.032 - 3/25/2023
- CMJ
- Estimates Page
- Orders with an avaible estimate pdf will appear on the estimate page
- backend temporarly disconnected for estimate page submission
- added to nav-bar and home page
- config
- Payment Process
- Email customer after payment
CP-1.0.031 - 3/17/2023
- CMJ
- Payment Page
- Added backend support for multiple saved cards on file
- Visual update to saved card on file selector
- Fixed bug where page would create new square customer unintended
- Payment Ackn Page
- Payment Process
- Now includes OrderRef to apply payments to invoice
- Service Request
- Fixed incorrect index bug
CP-1.0.030 - 2/13/2023
- CMJ
- Payment PAge
- Fixed bug in cardAPI when retrieving customer cards on file
- Payment Process
- Now includes TaxGeoCode when creating Orders table entry
- Now includes AgentID when creating Orders table entry
- Now includes AccountNumber when creating Payments table entry
- Supporting
- Added getTaxGeoCode() to retrieve customer TaxGeoCode
- Invoice Page
- Added grey scale on Pending Status rows
CP-1.0.029 - 1/27/2023
- CMJ
- Invoice Page
- Added Invoice Status column
- Added functionality to disable invoice selection if status is pending
- Payment Page
- Added page redirect after successful process
- Payment Process
- Now includes BillTo/ShipTo when creating Orders table entry
- Now includes AgentID/ScanCode when creating TRXIP entry
CP-1.0.028 - 12/28/2022
- CMJ
- Invoice Page
- Added payment process with square integration
- Payment Process
- Supports multi-invoice payments
- Use new card
- Save card on file
- Use card on file
- ACH supported
- Supporting Functions
- Added function to get customer PGID
- Fixed getUserData function
CP-1.0.027 - 9/23/2022
CP1.0.026 - 9/23/2022
- CMJ
- Invoice Page
- Visual redisgn of Invoice page
- Added functionality to select invoices
- Payment Page
- Created Page
- Frontend square card/ACH integration
- Service Request Page
- Added "Confirm Email" for guest user
CP-1.0.025 - 6/29/2022
- CMJ
- CSS
- Updated the color scheme for Customer Portal.
- Login
- Realigned the Guest login and Login buttons
- Service RequestAckn
- Added Go backend to Service RequestAckn page
- Added functionality to display alternative messages depending on guest/user
- Added functionality to redirect to home/index page depending on guest/user
CP-1.0.023 - 4/6/2022
- KRGJ
- Base server:
- Add guest login type. When a page has this login type, it will behave as normal when a user is logged in. When accessed without a valid login, then r.Form["Guest"] is set to "yes" to allow the page to be configured for guest access.
- Login:
- Guest container is added to the bottom of the login screen, with access to the guest request pages. A list of pages with guest access and their titles is pulled from the CPVIEW table.
- Home:
- Update service request tile link to be serviceRequest.html instead of serviceSelect.html, since the Service Select page is obsolete.
- Equipment:
- Fix bug: vendors without a PayTo address do not show up as the manufacturer in an equipment search. Now checks COALESCE(PayTo, ShipTo, PurchaseFrom).
- Merge the service request equipment search and the regular equipment page.
- Added functionality to read the field for the Unique Identifier, Model, Equipment Type, and Manufacturer (instead of always assuming the defaults are being used).
- Service Request:
- Removed Service Select page, since it's now obsolete.
- Checked whether the page should be loaded with guest access or not.
- Added functionality to save guest service requests.
- Nav bar:
- Added a version without user information for guest access pages
CP-1.0.022 - 1/21/2022
- KRGJ
- Service Request
- Fix bug: problem and problem description don't display correctly in email template.
- Fix bug: problem and problem description don't display correctly in note
- Don't add the repair units. They're already on the service order, so it's easy enough to add them to BL.
CP-1.0.021 - 1/5/2022
- CMJ
- Service Request
- Create the form for the guest service request page.
- Does not yet create the new customer, or permit access to the page without logging in.
- Added the SQL query for the service type buttons to the page, to begin merging the two pages.
- Home
- Remove the logout button.
CP-1.0.020 - 12/26/2021
- KRGJ
- Updated the serviceRequest page to have a cleaner, web form look.
- Added the formResponse class, used in the serviceRequest page, to the stylesheet.
- Calendar events created by service requests are now unassigned.
CP-1.0.019 - 6/23/2021
- KRGJ
- Added a brief description of CPVIEW.Options to serviceRequest.html
- Updated the config file name to match the new name created by BaseLink.
CP-1.0.018 - 10/14/2020
- KRGJ
- SR Email template: change "pieces" to "piece(s)" of equipment
- Change WEBAUTH.Type to WEBAUTH.AuthType in the SQL new install script
- Equipment: Add an optional column for ESetID, with a column title Contract ID
CP-1.0.017 - 8/10/2020
- KRGJ
- SO: Fix bug: expanding and contracting detail view, + never changes to -.
- SR Save:
- Fix bug: Unique ID missing from email and notes.
- Show existing equipment in notes, like unidentified and non-equipment requests.
- Change "Identified Equipment" to "Existing Equipment," and "Unidentified Equipment" to "Newly Added Equipment" in emails and notes.
CP-1.0.016 - 8/3/2020
- KRGJ
- SO, SR Equipment, Equipment:
- Text searches broken. Fixed myriad bugs, including:
- Fix bug: Incorrect options available in the search type drop-down list.
- Fix bug: Many search types cause the page to crash.
- Fix bug: After completing a search, previous search terms are not automatically filled in.
- Fix bug: When a particular identifier is selected multiple times as the search type, only the last search text (including blank text) is searched. If a specific identifier is the default, instead of the primary identifier, this means that it doesn't filter on that identifier at all unless all search boxes are filled in.
- Fix bug: "Clear Selections" button breaks page when used.
- When you fill in a search box, it will automatically show the next search box, up to the number defined in "Max search boxes."
- SR:
- Fix bug: When searching for equipment, doesn't pre-fill the search properly.
- Now shows committed equipment as grayed-out on the search page. If clicked, it pops up a message telling you that it is already committed to a service tickent, and directing you to contact support to request additional support on the item.
- SRSave: The line for the SR service item didn't set a price. This is probably what caused the "Confirm Pricing" popup in FL. Now sets a $0 price.
CP-1.0.014 and CP-1.0.015 - 7/21/2020
- KRGJ
- ***REQURIES MC VERSION 1.0.007 OR ABOVE***
- SO:
- Change SO expand and collapse buttons to + and -.
- Only display the order note if there is an order note and it's different from the subject.
- Only display the button to expand the order to see the detail view if there is an order note or at least one equipment line.
- Add description 1 to the equipment lines in the detail view.
- Combine the subject and note in the equipment lines, if the subject and the note are different. If the subject is just the first part of the note, only display the note.
- SR:
- If the view is set up with specific identifiers instead of the primary identifier, stock number, etc. then the headers inside of the service request show the identifier's name.
- Equipment fields become read-only after searching for and selecting equipment.
- Non-equipment service requests are now part of the note.
- Fix bug: sending service request fails when there is no identified equipment.
- Problem category is now a picklist, either problem code or a UIList, as set on the CPView page.
- Now only creates a calendar event if the service type is supposed to have a calendar event.
- Now sends the customer an email as well as the customer portal administrator.
- If the customer has a "shipping integration", includes the shipEmail template in the customer's email.
- Fix bug: problem category header only shows up if at least one of problem category, uid, model, equipment type or manufacturer is not the default.
- Equipment:
- Rearrange the columns to put the serial number in the 3rd column, after stock number and description.
CP-1.0.013 - 6/29/2020
- KRGJ
- ***REQUIRES FLMC VERSION 1.0.006***
- Bumped jQuery version to 3.5.1, jQuery-ui to 1.12.1.
- SO: Fix bug: SO page crashes when no identifiers are specified for view.
- Equipment:
- Fix bug: Identifiers overwriting some of the other values.
- Split into two pages -- a regular equipment page, and a SR equipment search page, to allow for easier maintenance.
- Update OptInt bits to match MC 1.0.006, to separate the bits which filter equipment from the bits which add columns.
- Known bug: "Max Searches" for view not yet implemented.
- Equipment SR:
- Rearrange the search page so that the order matches the SR page.
- Primary identifier, stock number, item category, and vendor can now all be overridden by identifiers.
- Update OptInt bits to match MC 1.0.006, to separate the bits which filter equipment from the bits which add columns.
- Change the default column headers to match the headers from the SR page.
- SR:
- Calls equipmentSR for search instead of equipment.
- Fix bug: WEBREPUNITS generated by SR save used to use old DtlID & UI, which caused import of MC repair unit to fail, now uses new ones generated by creating the SR service order.
- Known bug: Headers on the SR page are always UI, model, etc. regardless of whether the defaults are overridden.
- Missing functionality: Service requests all create calendar events, regardless of service type settings.
- Missing functionality: Customer should receive an email.
- Missing functionality: Packing slip does nothing.
- Missing functionality: Shipping integration does nothing.
- Missing functionality: "Other" requests not submitted in the SR.
- Missing functionality: No error checking before submitting.
- Known bug: user can still edit equipment fields after searching and selecting equipment.
- FAQ: Fix Bug: Accordion component not working. Always showed all questions & answers.
CP-1.0.012 - 5/26/2020
- KRGJ
- SO:
- Each SO now shows the order number, note subject, date it was placed, status, and technician.
- Each SO can be expanded to show details, which include the note, and an equipment list with subject and note for each piece of equipment.
- SR:
- Identified equipment saved in the SO is now saved using the SpawnItemDtl procedure, as it is in FrontLine. Fixes many problems with the equipment.
CP-1.0.011 - 5/25/2020
- KRGJ
- Equipment:
- Remove extra debugging messages added in version 1.0.010.
- Fix bug: Error loading search when searching from a page with no next or previous buttons (less than 21 lines from previous page).
- All dates which include years now use 4 digit years instead of 2 digit years.
- Service Request:
- Fix bug: Loading the service request page from the menu at the top doesn't prompt you to pick the service type.
- The calendar event created by the service request now uses the srItemID as the calendar event ItemID.
- ShipVia is pulled from the CP user's address, or if no ShipVia for that address, it looks for it in COALESCE(ShipTo, BillTo, SoldTo).
- If the CP user's address doesn't have a TaxGeoCode, now looks for it in COALESCE(ShipTo, BillTo, SoldTo).
- Invoices: Dollar amounts are now right-justified and include thousands commas.
CP-1.0.010 - 5/25/2020
- KRGJ
- CSS: increase the font size of the searchbox and the navbar buttons.
- Equipment:
- Primary Identifier is now two columns, identifier type plus identifier value.
- Fix bug: Identifier type is printing as the labor warranty.
- Fix bug: ItemID is printing as the first identifier.
- Fix bug: other QueryData positions not matching up between storing in Go and printing in template.
CP-1.0.009 - 5/22/2020
- KRGJ
- Configuration File: Service requests now also REQUIRE a srItemID.
- serviceRequestSave:
- Lines are now multiples of 100 and start with 100.
- Line 100 is the service request service item.
- CalendarID is now linked to service request SO, line 100.
- Problem & problem description are now the SO line notes for identified equipment.
- Tax geo code is used from the CP user's address.
CP-1.0.008 - 5/22/2020
- KRGJ
- Service Request:
- Convert xhr (vanilla javascript) function to ajax (jquery) function.
- Replace number of equipment and other rows (won't support deleting of rows) with array saving row numbers (will allow future deletion of rows).
- After successful request submission, load serviceRequestAckn page.
- After an unsuccessful submission, pop up an error message, and put an error message across the top of the screen.
- Fix bug: Pages without data functions (custFeedbackAckn, serviceRequestAckn) don't have menu tiles.a
- CSS: Adjust the font-size tags so that they are all relative (em), with the exception of the one base (body) font-size tag.
- Index: fix bug: remove reference to "ASRI" in error message, and replace with a reference to {{.CompanyName}}.
CP-1.0.007 - 5/21/2020
- KRGJ
- Equipment:
- Fix bug: Equipment page shows no equipment if there are no identifiers in the CPView Options list.
- Fix bug: Equipment without a vendor/manufacturer doesn't show in the list.
- Fix bug: Previous/next row width doesn't match the rest of the table.
- Fix bug: previous/next row is gray if there is an odd number of rows.
- Fix bug: Equipment page loads in service request mode (column headers and columns don't match up) when using previous/next button.
- Fix bug: only primary identifier showing, no other identifiers showing.
- Service orders:
- Fix bug: Service orders shows no SOs if there are no identifiers in the CPView Options list.
- Fix bug: previous/next buttons don't show up.
- Fix bug: previous/next row is gray if there is an odd number of rows.
- Fix bug: previous/nex row width doesn't match the rest of the table.
CP-1.0.006 - 5/21/2020
- DNB
- Service Request:
- Added Page for customer to submit service requests.
- Submit equipment, non-equipment, or both forms of requests.
- Searching for equipment from the SR page.
- Equipment search returns information on selection and fills out cooresponding boxes on the SR page.
- Each SR has a service type that specifies what can be added to the request and what is done with the request. (Equipment/not, calendar event/not, types of paperwork.)
- Navigation Bar:
- Each page added from adminCPView can be added to the navigation bar.
- Navigation bar now working with viewIDs.
- KRGJ
- saveServiceRequest:
- Service requests generate an email, service order, and calendar event.
- Identified equipment added to service order as line items and calendar event as repair units. Description of problem is added as line item and repair unit note.
- Unidentified equipment is added to the calendar event note and the service order CP note.
- so:
- Fixed bug preventing page from loading when the page has no identifiers.
- Added note subject to page.
- Configuration file: service requests REQUIRE srEmail, srAgent, and srLocation to function.
- Email:
- Added functionality for LOGIN type auth, which is better supported than SIMPLE auth.
- Added an email function which uses all of tData instead of just a map[string]string, so that you can email out using arrays of data.
CP-1.0.005 - 2/3/2020
- KRGJ
- Customer Settings:
- Create a generic user configuration save function & template.
- Change the settings page to use the save configuration setting function to save the PIN type intstead of the more specific function.
- Change the status to "Edited" when the pin type drop-down changes.
CP-1.0.004 - 1/21/2020
- KRGJ
- Fix bug: login hangs when logging into a nonexistent account.
- Fix bug: change account gives no errors, but leaves you with the same account for ormandy superuser.
- Customer Settings:
- Change SMS to Text/SMS in pin type pick list.
- Only show pin type table if default auth type uses pin.
CP-1.0.003 - 1/14/2020
- DNB
- multiAuthIDs/custProfile: changed text size to be more legible
- index: added pagination to the customer profile selection
- equipment/so:
- Fix bug: loading pages without a primay key
- Fix bug: page buttons correctly loading new data sets
- Fix bug: correctly loading columns based on CP View string\
- Fix bug: optionInt handling with boolean operators instead of modulus
CP-1.0.002 - 1/7/2020
- KRGJ
- multiAuthIDs (from supporting.go): Sort CP multi auth list by customer name, then customer number.
- custProfile:
- Fix bug: shows Phone1 regardless of which phone number is the mobile/sms phone number.
- Clean up SQL query.
- Use new style SQL query.
- custSettings: create new customer settings page to allow the customer to change their pin type.
- SQL PERMISSIONS ISSUE
- CP & MC require UPDATE permissions on the PEOPLE table. Until this point, the SQL user for CP & MC received all of its permissions as a member of FL_Users.
- In FL Desktop, before 6.7.006, FL_Users only needed SELECT on the PEOPLE table. Since 6.7.006, some non-sa users can have limited admin access, so 6.7.006 recommends running "GRANT UPDATE ON PEOPLE TO FL_Users" to allow limited admin users to modify the table.
- If the customer DOES NOT want this command to be run, you must "GRANT UPDATE ON PEOPLE TO " the MC/CP user. Otherwise, MC cannot lock accounts due to excessive login failures, CP cannot lock the ormandy superuser account in the event of excessive login failures, and MC users cannot update their MC passwords.
CP-1.0.001 - 1/2/2020
- KRGJ
- Merge ASRI backend changes:
- Fix bug: JSON pages to have the default auth type even when overridden.
- Implement multi-account users.
- Framework for static directories with authentication.
- Create sendEmail and sendSMS supporting functions
- custFeedbackSend, forgotPassSend, newUserSend: rewrite to send using sendEmail function.
- New CPCONFIG table, similar to WEBCONFIG but for CP users.
- pinSend (used to be mobilePin):
- Rewrite mobile PIN with the sendSMS function.
- Checks CPCONFIG table for a per-contact setting determining how PIN should be sent, email or sms. Sends via SMS if setting doesn't exist for user.
- pinCheck (used to be mobilePinCheck):
- Fix Bug: Doesn't increment failures or send a new pin if there's no temporary authorization.
- Added a "superuser" ormandy@ormandy.com to the CP. Always uses two-factor authentication, with the ormandy MC password, and the PIN hard-coded to support@ormandy.com. A side effect of using the ormandy MC password is that the ormandy MC account becomes locked if there are too many failed login attempts on CP.
- Fix bug from ASRI changes: login page doesn't show the PIN page for the Ormandy superuser if the default auth type doesn't include PIN authentication.
- Fix bug from ASRI changes: some CPUSERs show up multiple times in the ormandy superuser's list.
- Replace all instances of "ASRI" with the companyName variable.
- Redirect low-level messages from stderr to log, since stderr goes nowhere when running as a service.
CP-0.14.004 - 12/10/2019
- KRGJ
- Merge MC backend changes:
- Checkbit template function
- Licensing changes
- SQL exec function
- New supporting functions & changes to functions which check ACCESSRIGHTS.
CP-0.14.003 - 10/11/2019
- DNB
- Fix bug: Added joins to appropriate SQL queries.
- Fix bug: Views created with a primary id had a scan error that has been taken care of.
CP-0.14.002 - 10/7/2019
- DNB
- Home:
- Read in tiles from CPView table, and pass the ViewIDs to the appropriate pages.
- Dynamically create tiles using data from back end in place of having tiles hardcoded in the template.
- Equipment search: dynamically configuring page based on the view read in from CPView table.
- Service Orders: dynamically configuring page based on the view read in from CPView table. CP-0.14.001 Merge changes from MC:
- Back end:
- Implement SQL logging in writeLog function.
- Allow a user to specify an adapter instead of an IP. Overrides the IP if both are specified.
- Add strict transport security header, limit TLS version and cipher.
- Add new style of SQL query function, test with SQL logging and agent/filters queries.
CP-0.13.007 - 3/5/19
- Equipment search:
- Fix bug: filtering by a single address shows no results
- Fix bug: filtering by an address works, but the filter option defaults to "Description" when the page loads.
- Fix bug: Filtering by description shows no results.
- Service Orders:
- Don't show completed service orders.
- Temporarily hard-code a service order NoteItm of -65597.
CP-0.13.006 - 3/5/19
- Nav-bar:
- Rework header to make it more readable.
- Rework header to make it more responsive as the screen size decreases.
- Equipment search:
- Add Last Service Date column, no search or sort to the equipment search page.
- Add Contract Coverage, no search or sort to the equipment search.
- Service Orders:
- Fix bug: incorrect filtering for OrderType and OrderStatus.
CP-0.13.005 - 3/2/19
- Fix bug: Invoices page showing fully paid invoices.
- Equipment search:
- Add Primary Identifier column, search, and sort to the equipment search page.
- Add Warranty dates column, no search or sort to the equipment search page.
- Add showStockNo configuration option.
- Supporting.go: add tDQNullDate supporting function.
CP-0.13.004 - 3/1/19
- Customer's Invoices page
- supporting.go
- Create function to find CPUSER's CustomerID, move function out of invoice & SO pages.
- Create function to format SQL money type as dollars and cents.
- custFeedback & custProfile pages: run the CPUSER's phone number through the phone number filter before displaying.
- Home & nav-bar: add & update links
CP-0.13.003 - 2/28/19
- Customer's Service Orders page
CP-0.13.002 - 2/27/19
- Introduced logging levels and locations/types.
- Prints logging information with Context <= logLevel to logLocation
- Contexts
- 0: Error
- 1: Important non-error info (start/stop, license refresh)
- 4: Login/logout
- 5: Page loads (after SQL completes)
- 9: SQL queries
- 10: Debugging info (includes page loads before function call)
- 15: Test info (temporary for programming use)
- logTypes:
- 0: text file
- 1: MC SQL: WEBLOG
- 2: CP SQL: CPLOG
- If SQL logging errors, prints error to text file.
- Slight changes to licensing scheme -- device changes reset fully overnight.
CP-0.13.001 - 2/15/19
- MFA using mobile PIN
- Lock account after 3 failed password attempts
- Notify the user upon login if their account is locked.
CP-0.12.025 - 11/5/18