Add USB checkout system and SSO profile page

New Features:
- USB Device checkout/check-in system with barcode scanning
  - displayusb.asp: List all USB devices with status
  - addusb.asp: Add new USB devices via barcode scan
  - checkout_usb.asp/savecheckout_usb.asp: Check out USB to SSO
  - checkin_usb.asp/savecheckin_usb.asp: Check in with wipe confirmation
  - usb_history.asp: Full checkout history with filters
  - api_usb.asp: JSON API for AJAX lookups
- displayprofile.asp: SSO profile page showing user info and USB history
- Date/time format changed to 12-hour (MM/DD/YYYY h:mm AM/PM)
- SSO links in USB history now link to profile page via search

Database:
- New machinetypeid 44 for USB devices
- New usb_checkouts table for tracking checkouts

Cleanup:
- Removed v2 folder (duplicate/old files)
- Removed old debug/test files
- Removed completed migration documentation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
cproudlock
2025-12-07 11:16:14 -05:00
parent c7834d4b99
commit 65b622c361
1061 changed files with 19034 additions and 213120 deletions

View File

@@ -145,8 +145,8 @@
Dim rsBusinessUnits, currentBusinessUnitId
currentBusinessUnitId = rs("businessunitid") & ""
Set rsBusinessUnits = objConn.Execute("SELECT businessunitid, businessunit FROM businessunits WHERE isactive = 1 ORDER BY businessunit")
Dim isSelectedBU
While Not rsBusinessUnits.EOF
Dim isSelectedBU
isSelectedBU = ""
If currentBusinessUnitId <> "" And IsNumeric(currentBusinessUnitId) Then
If CLng(rsBusinessUnits("businessunitid")) = CLng(currentBusinessUnitId) Then
@@ -165,6 +165,29 @@
<small class="form-text text-muted">Select a specific business unit or leave blank to apply to all</small>
</div>
<div class="form-group">
<label for="appid">Related Application <span class="text-muted">(Optional)</span></label>
<select class="form-control" id="appid" name="appid">
<option value="">-- No Application --</option>
<%
Dim rsApps, currentAppId
currentAppId = rs("appid") & ""
Set rsApps = objConn.Execute("SELECT appid, appname FROM applications WHERE isactive = 1 ORDER BY appname")
While Not rsApps.EOF
If currentAppId <> "" And CStr(rsApps("appid")) = currentAppId Then
Response.Write("<option value=""" & rsApps("appid") & """ selected>" & Server.HTMLEncode(rsApps("appname") & "") & "</option>")
Else
Response.Write("<option value=""" & rsApps("appid") & """>" & Server.HTMLEncode(rsApps("appname") & "") & "</option>")
End If
rsApps.MoveNext
Wend
rsApps.Close
Set rsApps = Nothing
%>
</select>
<small class="form-text text-muted">Link this notification to a specific application (e.g., for software updates)</small>
</div>
<div class="form-group">
<label for="ticketnumber">Ticket Number</label>
<input type="text" class="form-control" id="ticketnumber" name="ticketnumber"