Merged
Conversation
Collaborator
OSPFNeighbour
commented
Mar 26, 2026
- Icems agency status
- Blank opslog & radio log
- incident card refresh ago timers
- better field targeting for opening modals
Introduce several UX and search improvements to the tasking page: - Job autosuggest: add a fixed dropdown suggestion UI for the job search input (HTML, CSS, and VM logic). Provides category labels, highlighted matches, keyboard navigation, and token-aware matching; suggestions are generated from a computed pool of job fields. - Spotlight search: implement tokenized, word-boundary-aware scoring and highlighting; add HTML-safe highlighted primary/secondary fields, AND-token matching, scroll-reset behavior, and smoother active-item scrolling. - Alerts: add a new summary rule that warns about teams with multiple Enroute/Offsite/Onsite taskings and provides clickable items. - Map/UI: add a Zoom-to-fit Leaflet control to fit visible job/asset markers; reorder toolbar controls to include it. - Filtering & performance: make job filtering token-aware (multi-term AND matching across many job fields) and adjust computed observables' rate/track options; split filteredJobs subscriptions so markers are only updated for UI-filtered changes while initial fetch logic runs on config-filtered changes. - Accessibility/focus: ensure several modals focus their main input when shown. - Minor template/CSS tweaks: update tasking.html to support autosuggest and spotlight highlighted HTML fields, and add styles for the suggestion dropdown and dark-mode support. These changes improve search relevance, usability, and map interactions across the tasking UI.
* tiny text align fix on trackable assets under teams * config bundle fixup removed redundant info from config LS * update style on priority change (#349) * function to complete a job (#350) * function to complete a job * and date is needed * Lad reduce tasking search (#348) * first * removed too much! put it back * shitty theme * Bump flatted from 3.2.7 to 3.4.2 (#346) Bumps [flatted](https://github.com/WebReflection/flatted) from 3.2.7 to 3.4.2. - [Commits](WebReflection/flatted@v3.2.7...v3.4.2) --- updated-dependencies: - dependency-name: flatted dependency-version: 3.4.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Add confirmation modal for refreshInterval changes Prevent accidental changes to refreshInterval by tracking the last value and showing a confirmation modal whenever the observable is changed. A showRecklessModal helper is injected into the DOM (id: recklessModal) and requires the user to type "reckless" to confirm; onCancel reverts the observable to the previous value. Implementation uses bootstrap.Modal and creates/removes event handlers for confirm/cancel and the modal close button. * gated * lint fix --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Update static/pages/tasking.html to replace ambiguous "Edit" labels with "Open in Beacon" (and visible "Open in Beacon" text) for buttons that open job/team details in Beacon. This clarifies the action for users and improves accessibility/clarity for three buttons (job detail, job list button, and team edit button).
Add data refresh tracking and a small UI indicator. In Job.js: import observable, add self.dataLoading observable and self.lastDataUpdate observable, create lastRefreshedAgo computed (uses deps.relativeUpdateTick), and update lastDataUpdate in updateFromJson. Use dataLoading in refreshData (set/clear around fetch) and leave timestamp update to the JSON parse. In tasking.html: change several field labels (e.g. "Assigned HQ" -> "HQ", "Assigned Zone" -> "Zone", "Assigned Sector" -> "Sector", "Additional Address Info" -> "Extra Info"), change a button style from btn-outline-secondary to btn-outline-dark, and add conditional UI to show a spinner while j.dataLoading() and a "Refreshed X ago" text when not loading. These changes improve freshness feedback for job records.
Add quick-entry handlers and UI/VM enhancements for Ops and Radio logs. main.js: introduce openBlankOpsLogModal and openBlankRadioOpsLogModal to open a prefilled/blank modal, focus the text input and install hotkeys for radio logs. OpsLogModalVM: keep parentVM reference, add job/team autocomplete inputs and suggestion pickers, extend reset/init logic, add openForRadioLog (auto-selects Radio contact tag) and submitting state, and prefill job fields when opening. RadioLogModalVM: add submitting observable and toggle it during submit. tasking.html: add toolbar buttons for Ops/Radio logs, add job/team input UI and dropdowns inside the Ops Log modal, and make submit buttons show a disabled state and spinner while submitting. These changes improve quick log creation, radio-specific defaults, and overall UX/feedback.
Introduce a setIfChanged helper and use it to only update Knockout observables when the new value differs from the current one. Replace many direct assignments (scalars, address, entityAssignedTo fields, job types/status/priority) with conditional sets to reduce redundant notifications. Add conditional replacements for complex objects/arrays (sector, tags, actionRequiredTags, categories) using JSON.stringify comparisons, and adjust ParentEntity handling to avoid clearing/creating objects unnecessarily. Overall this reduces thrashy updates while preserving existing behavior.
Adjust static/pages/tasking.html to refine button icons and shorten labels: add a small plus icon and spacing (me-1) to Ops Log and Radio Log buttons in both header and job rows; rename label "Response Required:" to "Required:"; change button text "Task Team" to "Task". These are minor UI/clarity tweaks for more compact controls.
Update tasking.html to add a small plus icon next to the microphone icon on the Radio Log button. Adjusted markup to include 'me-1' on the mic icon for spacing and appended an 'fa-plus small' icon to indicate an add/create action.
Expose a New Ops Log action and update UI icons/layouts. Added openNewOpsLogModal to JobPopupViewModel and wired new Ops Log buttons in job popup (job_popup.js) and several tasking templates (static/pages/tasking.html). Replaced book icon with list icon for Timeline buttons and introduced a stacked book+plus visual for New Ops Log and Radio Log buttons. Also adjusted some column widths in the job details layout (col-md-8 -> col-md-7, col-md-4 -> col-md-5) to rebalance the details/actions columns.
Enhance job and team autocomplete UX by adding active-index tracking, keyboard handlers, mouse hover handling, and automatic scrolling. Introduces jobActiveIndex/teamActiveIndex observables, keydown handlers (ArrowUp/ArrowDown/Enter/Escape), on*MouseEnter helpers, and updated pick*Suggestion to stop propagation and reset active index. Adds a helper to scroll the active dropdown item into view (using requestAnimationFrame) and subscribes active index changes to trigger scrolling. Updates template bindings to attach keydown events, mark dropdown lists with data-ops-log-dropdown, and render items with active CSS and improved layout. These changes improve keyboard accessibility and navigation of the dropdowns.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.