Commit Graph

152 Commits

Author SHA1 Message Date
Alex X 8749562c96 Fix detection webrtc without audio #1106 2024-05-24 20:41:46 +03:00
Alex X b3e9ed23ac Add /api/ffmpeg for playing files and tts on cameras with two-way audio 2024-05-24 15:57:18 +03:00
Alex X 50f9913c41 Add hls.html 2024-05-19 10:33:11 +03:00
Sergey Krashevich 0cb013a7fd Refactor probe link placement in UI
Moved the 'probe' link from the global templates array to individual
stream status columns for improved clarity and accessibility. This
change enhances the interface by contextualizing the 'probe' option,
making it directly accessible alongside each stream's online status and
info link, thereby streamlining the user experience and emphasizing the
function's importance on a per-stream basis. This adjustment follows
usability feedback indicating that users prefer immediate access to
stream diagnostics.
2024-05-15 12:41:30 +03:00
Alex X 75020d4df7 Add probe link to WebUI 2024-05-15 10:36:29 +03:00
Alex X 063fef5813 Add auto reconnect for broken MSE stream 2024-05-14 21:20:47 +03:00
Alex X e6bea97936 Merge pull request #1099 from skrashevich/add-favicon
feat(web): Add favicon
2024-05-13 18:23:58 +03:00
Alex X 9776e09ca7 Code refactoring after #1099 2024-05-13 18:22:35 +03:00
Alex X 5889791847 Merge pull request #1100 from skrashevich/upd-ace-1-33-1
upd(editor): upgrade Ace editor to version 1.33.1
2024-05-12 18:40:37 +03:00
Alex X 778245dd1c Set default max-bundle for video-rtc.js viewer 2024-05-12 15:56:56 +03:00
Sergey Krashevich 1b1bdb37db feat(branding): prepend 'go2rtc -' to page titles in add, editor, and log pages 2024-05-09 12:06:46 +03:00
Sergey Krashevich ab453d275e feat(editor): upgrade Ace editor to version 1.33.1 2024-05-09 11:30:26 +03:00
Sergey Krashevich e71ed5e7eb feat(icons): add favicon and apple-touch-icon links across all pages
Added favicon, apple-touch-icon, and related meta tags to all HTML pages to ensure consistent branding and improve user experience on various platforms.
2024-05-09 06:30:14 +03:00
Alex X fd6014c11f Fix code style for HTML/JS files 2024-04-30 09:59:53 +03:00
Alex X 652dc93e9a Code refactoring after #1069 2024-04-30 09:54:06 +03:00
Sergey Krashevich 5f2d523242 feat(logging): enhance log visualization with level-specific colors
- Add CSS classes for log levels (info, debug, error, trace, warn) in main.js to color-code log messages based on their severity.
- Modify log.html to include the log level as a class in each log entry's table row for applying the corresponding color styles.
2024-04-29 15:03:22 +03:00
Alex X d6774bbdb9 Merge pull request #878 from skrashevich/fix-webui-copy-function
fix(clipboard): fix copy to clipboard functionality
2024-04-29 11:54:32 +03:00
Alex X a1983c725d Code refactoring after #878 2024-04-29 11:54:00 +03:00
Alex X 8d6aabce7a Code refactoring after #1063 2024-04-27 11:40:59 +03:00
Sergey Krashevich 8516f825e1 feat(web-ui): add confirmation dialog before deleting streams 2024-04-26 16:05:56 +03:00
Alex X 675476a8f6 Merge pull request #875 from skrashevich/logs-reverse-order
feat(webui): reverse log order to display newest first
2024-04-22 16:21:47 +03:00
Sergey Krashevich a404c2c86c feat(editor): upgrade Ace editor version to 1.33.0 2024-04-20 21:55:37 +03:00
Sergey Krashevich 7dc9eaa543 Merge remote-tracking branch 'upstream/master' into logs-reverse-order 2024-04-20 13:55:32 +03:00
Sergey Krashevich 215d55771c Merge remote-tracking branch 'upstream/master' into fix-webui-copy-function 2024-04-20 13:55:18 +03:00
Sergey Krashevich 484d401021 Merge remote-tracking branch 'upstream/master' into dark-mode 2024-04-20 13:14:48 +03:00
Alex X 166287ce1b Rename constant back to old name 2024-04-20 11:57:48 +03:00
Sergey Krashevich 5cf343cb69 feat(autoreload): change interval from 5 seconds to 1 second 2024-04-18 02:56:32 +03:00
Sergey Krashevich de7326375d feat(index.html): optimize stream list update and preserve checkbox states 2024-04-18 02:55:31 +03:00
Sergey Krashevich 936e84f6e0 feat(index.html): implement auto-reload functionality every 5 seconds 2024-04-18 02:52:54 +03:00
Sergey Krashevich ef38468fa7 feat(dark-mode): enhance form elements and hr visibility
This commit improves the visibility and aesthetics of form elements (input, select, textarea) and horizontal rules (hr) in dark mode by adjusting their styles. Specifically, it sets a darker background color, lighter text color, and modifies border colors to ensure these elements are both visually appealing and easily distinguishable against the dark background. Additionally, placeholder text color has been adjusted to maintain readability without being overly prominent.

The removal of a fixed width on the navigation bar (`nav`) style is aimed at enhancing responsiveness and flexibility in various screen sizes, promoting a better user experience across devices.

These changes contribute to a more cohesive and accessible dark mode theme, aligning with modern web design practices that prioritize user comfort and interface adaptability.
2024-04-09 10:00:41 +03:00
Sergey Krashevich 51e20497ac fix(styles): implement flex layout for body element 2024-04-09 09:32:59 +03:00
Sergey Krashevich 4ddadc08cb feat(editor-theme): dynamically set editor theme based on dark mode preference 2024-04-09 09:18:43 +03:00
Sergey Krashevich 20dd16badf feat(dark-mode): improve contrast and visited link styles 2024-03-23 07:03:53 +03:00
Sergey Krashevich 31398a7e6b feat(dark-mode): implement dark mode and centralize CSS
Implemented a dark mode feature for the website, including a toggle button in the navigation bar that allows users to switch between light and dark themes. To support this feature, centralized common CSS styles (such as body, table, and button stylings) into main.js to ensure consistent application across all HTML pages. This change improves user experience by providing a visually comfortable alternative for low-light environments and centralizes styling rules for easier maintenance.

- Added dark mode styles for body, table, buttons, and navigation elements in main.js.
- Introduced a toggle mechanism in the navigation bar to switch between light and dark modes.
- Utilized JavaScript to detect system theme preference (`prefers-color-scheme`) and persist user's theme choice using localStorage.
- Removed duplicate and scattered CSS rules from individual HTML files (add.html, index.html, links.html, log.html) and centralized them in main.js to reduce redundancy and facilitate easier updates in the future.

This update enhances accessibility and user preference compliance by allowing users to select their desired theme while simplifying CSS management across the website.
2024-03-22 18:15:52 +03:00
Sergey Krashevich de70b0a861 some fixes 2024-03-22 18:13:20 +03:00
Sergey Krashevich a50c99b8e5 feat(log): introduce toggle for reversing log order
Added a button to the log page allowing users to toggle the order in which logs are displayed (normal or reversed). This feature enhances user experience by providing flexibility in viewing logs. The implementation involves a boolean flag `reverseOrder` to track the current state of log order and dynamically updates the button text to reflect the current mode. Additionally, the log fetching function now conditionally reverses the log array based on this flag, ensuring that the display order matches the user's preference. This change could significantly improve usability for users needing to analyze recent events without scrolling through the entire log history.
2024-03-22 18:10:45 +03:00
Sergey Krashevich 48fabec431 fix(clipboard): fix copy to clipboard functionality
Added a `copyTextToClipboard` function to handle text copying across different browsers and fallback scenarios. This function utilizes the Clipboard API when available, providing an asynchronous method to copy text securely. For browsers where the Clipboard API is not available or the page is not served over a secure context, a fallback method using a temporary textarea element and `document.execCommand` is employed. Replaced direct use of `navigator.clipboard.writeText` with this function in the 'shareget' click event listener to enhance cross-browser support and error handling.
2024-01-13 18:07:07 +03:00
Sergey Krashevich f8d9fccf74 fix(log-display): reverse log order to display newest first The
The applyLogStyling function in log.html has been updated to reverse the array of log lines. After parsing the JSON data, reversing the array ensures that the most recent logs appear at the top of the list. This change enhances the readability for users by displaying the logs in a descending chronological order.
2024-01-12 07:43:12 +03:00
Alex X 3b3d5b033a Add sanitize from XSS to WebUI 2024-01-11 14:13:52 +03:00
Alex X d3bc18c369 Logs refactoring after #780 2023-12-11 18:07:38 +03:00
Sergey Krashevich ab47d5718f Refactor log handling and add UI auto-update toggle
This commit refactors the log handling in the API to use a switch statement for improved readability and maintainability. It also introduces error messages with more context when reading or truncating the log file fails.

On the frontend, a new auto-update toggle button has been added to the log viewer, allowing users to enable or disable automatic log updates. The button's appearance changes based on its state, providing a clear visual indication of whether auto-update is active. Additionally, the button styling has been updated to ensure consistency across the interface.
2023-11-28 22:55:50 +03:00
Sergey Krashevich 8d382afa0f Add log file handling and viewing capabilities
This commit introduces the ability to handle log files through the API and
provides a new log viewing page. The API now supports GET and DELETE methods
for log file operations, allowing retrieval and deletion of log contents.
A new log.html page has been added for viewing logs in the browser, with
automatic refresh every 5 seconds and styling based on log levels.

The app.go file has been updated to include a GetLogFilepath function that
retrieves or generates the log file path. The NewLogger function now accepts
a file parameter to enable file logging. The main.js file has been updated
to include a link to the new log.html page.

This enhancement improves the observability and management of the application
by providing real-time access to logs and the ability to clear them directly
from the web interface.
2023-11-26 23:21:57 +03:00
Alex X 9bda2f7e60 Add support gopro source 2023-11-15 11:41:42 +03:00
Alex X 05accb4555 Add support media config param for JS player 2023-10-14 11:41:45 +03:00
Alex X f949a278da Fix HLS JS error on latest iOS 2023-10-14 11:40:49 +03:00
Alex X bbe6ae0059 Update publish RTMP examples 2023-10-11 06:58:17 +03:00
Alex X 9a2e9dd6d1 Add support /api/restart #652 2023-10-09 17:12:25 +03:00
Alex X b252fcaaa1 Code refactoring after #661 2023-10-05 17:31:59 +03:00
Sergey Krashevich f27f7d28bb Update editor.html 2023-09-30 12:38:31 +03:00
Alex X 037970a4ea Add support ManagedMediaSource for Safari 17 2023-09-26 13:25:50 +03:00