Rebrand to PSS Uptime: Add custom logo and favicon, update all references from Uptime Kuma to PSS Uptime
- Add custom logo.png and favicon.ico for Marshall Islands Public School System - Update all application references from 'Uptime Kuma' to 'PSS Uptime' - Update README.md with PSS Uptime branding and credits to original Uptime Kuma project - Update Docker configuration to build from source - Update all notification providers to use PSS Uptime branding - Update UI components, layouts, and pages with new branding - Update language files (en, zh-CN, zh-TW) with PSS Uptime translations - Add logo URL input field in status page settings - Update default icon references from icon.svg to logo.png
This commit is contained in:
parent
a86789be6c
commit
8cdf7a905a
136
README.md
136
README.md
@ -1,21 +1,18 @@
|
||||
<div align="center" width="100%">
|
||||
<img src="./public/icon.svg" width="128" alt="Uptime Kuma Logo" />
|
||||
<img src="./public/logo.png" width="128" alt="PSS Uptime Logo" />
|
||||
</div>
|
||||
|
||||
# Uptime Kuma
|
||||
# PSS Uptime
|
||||
|
||||
Uptime Kuma is an easy-to-use self-hosted monitoring tool.
|
||||
PSS Uptime is an easy-to-use self-hosted monitoring tool for the Marshall Islands Public School System.
|
||||
|
||||
<a target="_blank" href="https://github.com/louislam/uptime-kuma"><img src="https://img.shields.io/github/stars/louislam/uptime-kuma?style=flat" /></a> <a target="_blank" href="https://hub.docker.com/r/louislam/uptime-kuma"><img src="https://img.shields.io/docker/pulls/louislam/uptime-kuma" /></a> <a target="_blank" href="https://hub.docker.com/r/louislam/uptime-kuma"><img src="https://img.shields.io/docker/v/louislam/uptime-kuma/2?label=docker%20image%20ver." /></a> <a target="_blank" href="https://github.com/louislam/uptime-kuma"><img src="https://img.shields.io/github/last-commit/louislam/uptime-kuma" /></a> <a target="_blank" href="https://opencollective.com/uptime-kuma"><img src="https://opencollective.com/uptime-kuma/total/badge.svg?label=Open%20Collective%20Backers&color=brightgreen" /></a>
|
||||
[](https://github.com/sponsors/louislam) <a href="https://weblate.kuma.pet/projects/uptime-kuma/uptime-kuma/">
|
||||
<img src="https://weblate.kuma.pet/widgets/uptime-kuma/-/svg-badge.svg" alt="Translation status" />
|
||||
</a>
|
||||
> **Note:** This project is based on [Uptime Kuma](https://github.com/louislam/uptime-kuma), an open-source monitoring tool created by [louislam](https://github.com/louislam). We extend our gratitude to the Uptime Kuma project and its contributors for their excellent work.
|
||||
|
||||
<img src="https://user-images.githubusercontent.com/1336778/212262296-e6205815-ad62-488c-83ec-a5b0d0689f7c.jpg" width="700" alt="Uptime Kuma Dashboard Screenshot" />
|
||||
<img src="https://user-images.githubusercontent.com/1336778/212262296-e6205815-ad62-488c-83ec-a5b0d0689f7c.jpg" width="700" alt="PSS Uptime Dashboard Screenshot" />
|
||||
|
||||
## 🥔 Live Demo
|
||||
|
||||
Try it!
|
||||
For a live demo of the original Uptime Kuma project, visit:
|
||||
|
||||
Demo Server (Location: Frankfurt - Germany): <https://demo.kuma.pet/start-demo>
|
||||
|
||||
@ -23,9 +20,11 @@ It is a temporary live demo, all data will be deleted after 10 minutes. Sponsore
|
||||
|
||||
## ⭐ Features
|
||||
|
||||
PSS Uptime includes all the powerful features from Uptime Kuma:
|
||||
|
||||
- Monitoring uptime for HTTP(s) / TCP / HTTP(s) Keyword / HTTP(s) Json Query / Websocket / Ping / DNS Record / Push / Steam Game Server / Docker Containers
|
||||
- Fancy, Reactive, Fast UI/UX
|
||||
- Notifications via Telegram, Discord, Gotify, Slack, Pushover, Email (SMTP), and [90+ notification services, click here for the full list](https://github.com/louislam/uptime-kuma/tree/master/src/components/notifications)
|
||||
- Notifications via Telegram, Discord, Gotify, Slack, Pushover, Email (SMTP), and [90+ notification services](https://github.com/louislam/uptime-kuma/tree/master/src/components/notifications)
|
||||
- 20-second intervals
|
||||
- [Multi Languages](https://github.com/louislam/uptime-kuma/tree/master/src/lang)
|
||||
- Multiple status pages
|
||||
@ -40,13 +39,12 @@ It is a temporary live demo, all data will be deleted after 10 minutes. Sponsore
|
||||
### 🐳 Docker Compose
|
||||
|
||||
```bash
|
||||
mkdir uptime-kuma
|
||||
cd uptime-kuma
|
||||
curl -o compose.yaml https://raw.githubusercontent.com/louislam/uptime-kuma/master/compose.yaml
|
||||
docker compose up -d
|
||||
git clone <your-repo-url>
|
||||
cd PSS-Uptime
|
||||
docker compose up -d --build
|
||||
```
|
||||
|
||||
Uptime Kuma is now running on all network interfaces (e.g. http://localhost:3001 or http://your-ip:3001).
|
||||
PSS Uptime is now running on all network interfaces (e.g. http://localhost:3001 or http://your-ip:3001).
|
||||
|
||||
> [!WARNING]
|
||||
> File Systems like **NFS** (Network File System) are **NOT** supported. Please map to a local directory or volume.
|
||||
@ -54,10 +52,11 @@ Uptime Kuma is now running on all network interfaces (e.g. http://localhost:3001
|
||||
### 🐳 Docker Command
|
||||
|
||||
```bash
|
||||
docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:2
|
||||
docker build -t pss-uptime -f docker/dockerfile --target release .
|
||||
docker run -d --restart=always -p 3001:3001 -v pss-uptime:/app/data --name pss-uptime pss-uptime
|
||||
```
|
||||
|
||||
Uptime Kuma is now running on all network interfaces (e.g. http://localhost:3001 or http://your-ip:3001).
|
||||
PSS Uptime is now running on all network interfaces (e.g. http://localhost:3001 or http://your-ip:3001).
|
||||
|
||||
If you want to limit exposure to localhost only:
|
||||
|
||||
@ -76,11 +75,11 @@ Requirements:
|
||||
- ❌ Replit / Heroku
|
||||
- [Node.js](https://nodejs.org/en/download/) >= 20.4
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
- [pm2](https://pm2.keymetrics.io/) - For running Uptime Kuma in the background
|
||||
- [pm2](https://pm2.keymetrics.io/) - For running PSS Uptime in the background
|
||||
|
||||
```bash
|
||||
git clone https://github.com/louislam/uptime-kuma.git
|
||||
cd uptime-kuma
|
||||
git clone <your-repo-url>
|
||||
cd PSS-Uptime
|
||||
npm run setup
|
||||
|
||||
# Option 1. Try it
|
||||
@ -91,10 +90,10 @@ node server/server.js
|
||||
npm install pm2 -g && pm2 install pm2-logrotate
|
||||
|
||||
# Start Server
|
||||
pm2 start server/server.js --name uptime-kuma
|
||||
pm2 start server/server.js --name pss-uptime
|
||||
```
|
||||
|
||||
Uptime Kuma is now running on all network interfaces (e.g. http://localhost:3001 or http://your-ip:3001).
|
||||
PSS Uptime is now running on all network interfaces (e.g. http://localhost:3001 or http://your-ip:3001).
|
||||
|
||||
More useful PM2 Commands
|
||||
|
||||
@ -108,96 +107,97 @@ pm2 startup && pm2 save
|
||||
|
||||
### Advanced Installation
|
||||
|
||||
If you need more options or need to browse via a reverse proxy, please read:
|
||||
If you need more options or need to browse via a reverse proxy, please refer to the original Uptime Kuma documentation:
|
||||
|
||||
<https://github.com/louislam/uptime-kuma/wiki/%F0%9F%94%A7-How-to-Install>
|
||||
|
||||
## 🆙 How to Update
|
||||
|
||||
Please read:
|
||||
For update instructions, please refer to the original Uptime Kuma documentation:
|
||||
|
||||
<https://github.com/louislam/uptime-kuma/wiki/%F0%9F%86%99-How-to-Update>
|
||||
|
||||
## 🆕 What's Next?
|
||||
|
||||
I will assign requests/issues to the next milestone.
|
||||
For the latest features and roadmap, please check the original Uptime Kuma project:
|
||||
|
||||
<https://github.com/louislam/uptime-kuma/milestones>
|
||||
|
||||
## ❤️ Sponsors
|
||||
## ❤️ Credits & Acknowledgments
|
||||
|
||||
Thank you so much! (GitHub Sponsors will be updated manually. OpenCollective sponsors will be updated automatically, the list will be cached by GitHub though. It may need some time to be updated)
|
||||
PSS Uptime is based on [Uptime Kuma](https://github.com/louislam/uptime-kuma), an excellent open-source monitoring tool created by [louislam](https://github.com/louislam) and maintained by a dedicated community of contributors.
|
||||
|
||||
<img src="https://uptime.kuma.pet/sponsors?v=6" alt="Uptime Kuma Sponsors" />
|
||||
We would like to express our gratitude to:
|
||||
- [louislam](https://github.com/louislam) for creating and maintaining Uptime Kuma
|
||||
- All contributors to the Uptime Kuma project
|
||||
- The open-source community that makes projects like this possible
|
||||
|
||||
If you find PSS Uptime useful, please consider supporting the original Uptime Kuma project:
|
||||
- [GitHub Sponsors](https://github.com/sponsors/louislam)
|
||||
- [Open Collective](https://opencollective.com/uptime-kuma)
|
||||
|
||||
## 🖼 More Screenshots
|
||||
|
||||
Light Mode:
|
||||
|
||||
<img src="https://uptime.kuma.pet/img/light.jpg" width="512" alt="Uptime Kuma Light Mode Screenshot of how the Dashboard looks" />
|
||||
<img src="https://uptime.kuma.pet/img/light.jpg" width="512" alt="PSS Uptime Light Mode Screenshot of how the Dashboard looks" />
|
||||
|
||||
Status Page:
|
||||
|
||||
<img src="https://user-images.githubusercontent.com/1336778/134628766-a3fe0981-0926-4285-ab46-891a21c3e4cb.png" width="512" alt="Uptime Kuma Status Page Screenshot" />
|
||||
<img src="https://user-images.githubusercontent.com/1336778/134628766-a3fe0981-0926-4285-ab46-891a21c3e4cb.png" width="512" alt="PSS Uptime Status Page Screenshot" />
|
||||
|
||||
Settings Page:
|
||||
|
||||
<img src="https://louislam.net/uptimekuma/2.jpg" width="400" alt="Uptime Kuma Settings Page Screenshot" />
|
||||
<img src="https://louislam.net/uptimekuma/2.jpg" width="400" alt="PSS Uptime Settings Page Screenshot" />
|
||||
|
||||
Telegram Notification Sample:
|
||||
|
||||
<img src="https://louislam.net/uptimekuma/3.jpg" width="400" alt="Uptime Kuma Telegram Notification Sample Screenshot" />
|
||||
<img src="https://louislam.net/uptimekuma/3.jpg" width="400" alt="PSS Uptime Telegram Notification Sample Screenshot" />
|
||||
|
||||
## Motivation
|
||||
## About PSS Uptime
|
||||
|
||||
- I was looking for a self-hosted monitoring tool like "Uptime Robot", but it is hard to find a suitable one. One of the closest ones is statping. Unfortunately, it is not stable and no longer maintained.
|
||||
- Wanted to build a fancy UI.
|
||||
- Learn Vue 3 and vite.js.
|
||||
- Show the power of Bootstrap 5.
|
||||
- Try to use WebSocket with SPA instead of a REST API.
|
||||
- Deploy my first Docker image to Docker Hub.
|
||||
PSS Uptime is a customized version of Uptime Kuma for the Marshall Islands Public School System. This project maintains all the powerful features of the original Uptime Kuma while being tailored for the specific needs of the PSS organization.
|
||||
|
||||
If you love this project, please consider giving it a ⭐.
|
||||
### Original Uptime Kuma Motivation
|
||||
|
||||
The original Uptime Kuma project was created with the following motivations:
|
||||
- A need for a self-hosted monitoring tool like "Uptime Robot"
|
||||
- Building a fancy, modern UI
|
||||
- Learning Vue 3 and vite.js
|
||||
- Showcasing Bootstrap 5 capabilities
|
||||
- Using WebSocket with SPA instead of REST API
|
||||
- Deploying Docker images to Docker Hub
|
||||
|
||||
If you love this project, please consider:
|
||||
- Giving the original [Uptime Kuma project](https://github.com/louislam/uptime-kuma) a ⭐
|
||||
- Supporting the Uptime Kuma project through [GitHub Sponsors](https://github.com/sponsors/louislam) or [Open Collective](https://opencollective.com/uptime-kuma)
|
||||
|
||||
## 🗣️ Discussion / Ask for Help
|
||||
|
||||
⚠️ For any general or technical questions, please don't send me an email, as I am unable to provide support in that manner. I will not respond if you ask questions there.
|
||||
For questions about PSS Uptime, please use the appropriate channels for this project.
|
||||
|
||||
I recommend using Google, GitHub Issues, or Uptime Kuma's subreddit for finding answers to your question. If you cannot find the information you need, feel free to ask:
|
||||
|
||||
- [GitHub Issues](https://github.com/louislam/uptime-kuma/issues)
|
||||
For questions about the original Uptime Kuma project, please refer to:
|
||||
- [Uptime Kuma GitHub Issues](https://github.com/louislam/uptime-kuma/issues)
|
||||
- [Subreddit (r/UptimeKuma)](https://www.reddit.com/r/UptimeKuma/)
|
||||
|
||||
My Reddit account: [u/louislamlam](https://reddit.com/u/louislamlam)
|
||||
You can mention me if you ask a question on the subreddit.
|
||||
⚠️ For any general or technical questions about Uptime Kuma, please don't send emails to the original author, as they are unable to provide support in that manner.
|
||||
|
||||
## Contributions
|
||||
|
||||
### Create Pull Requests
|
||||
### Contributing to PSS Uptime
|
||||
|
||||
Pull requests are awesome.
|
||||
To keep reviews fast and effective, please make sure you’ve [read our pull request guidelines](https://github.com/louislam/uptime-kuma/blob/master/CONTRIBUTING.md#can-i-create-a-pull-request-for-uptime-kuma).
|
||||
Contributions to PSS Uptime are welcome! Please follow the project's contribution guidelines.
|
||||
|
||||
### Test Pull Requests
|
||||
### Contributing to Uptime Kuma
|
||||
|
||||
There are a lot of pull requests right now, but I don't have time to test them all.
|
||||
If you'd like to contribute to the original Uptime Kuma project (which benefits this project as well), please refer to:
|
||||
|
||||
If you want to help, you can check this:
|
||||
<https://github.com/louislam/uptime-kuma/wiki/Test-Pull-Requests>
|
||||
- [Uptime Kuma Contributing Guidelines](https://github.com/louislam/uptime-kuma/blob/master/CONTRIBUTING.md#can-i-create-a-pull-request-for-uptime-kuma)
|
||||
- [Test Pull Requests](https://github.com/louislam/uptime-kuma/wiki/Test-Pull-Requests)
|
||||
- [Latest Beta Releases](https://github.com/louislam/uptime-kuma/releases)
|
||||
- [Report Bugs / Feature Requests](https://github.com/louislam/uptime-kuma/issues)
|
||||
- [Translations](https://github.com/louislam/uptime-kuma/blob/master/src/lang/README.md)
|
||||
|
||||
### Test Beta Version
|
||||
## License
|
||||
|
||||
Check out the latest beta release here: <https://github.com/louislam/uptime-kuma/releases>
|
||||
|
||||
### Bug Reports / Feature Requests
|
||||
|
||||
If you want to report a bug or request a new feature, feel free to open a [new issue](https://github.com/louislam/uptime-kuma/issues).
|
||||
|
||||
### Translations
|
||||
|
||||
If you want to translate Uptime Kuma into your language, please visit [Weblate Readme](https://github.com/louislam/uptime-kuma/blob/master/src/lang/README.md).
|
||||
|
||||
### Spelling & Grammar
|
||||
|
||||
Feel free to correct the grammar in the documentation or code.
|
||||
My mother language is not English and my grammar is not that great.
|
||||
This project is based on Uptime Kuma and follows the same license. Please refer to the [LICENSE](LICENSE) file for details.
|
||||
|
||||
@ -1,6 +1,9 @@
|
||||
services:
|
||||
uptime-kuma:
|
||||
image: louislam/uptime-kuma:2
|
||||
build:
|
||||
context: .
|
||||
dockerfile: docker/dockerfile
|
||||
target: release
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- ./data:/app/data
|
||||
|
||||
@ -18,9 +18,10 @@ ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1
|
||||
COPY --chown=node:node .npmrc .npmrc
|
||||
COPY --chown=node:node package.json package.json
|
||||
COPY --chown=node:node package-lock.json package-lock.json
|
||||
RUN npm ci --omit=dev
|
||||
RUN npm ci
|
||||
COPY . .
|
||||
COPY --chown=node:node --from=build_healthcheck /app/extra/healthcheck /app/extra/healthcheck
|
||||
RUN npm run build
|
||||
RUN mkdir ./data
|
||||
|
||||
############################################
|
||||
|
||||
@ -4,11 +4,12 @@
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
|
||||
<link rel="icon" type="image/svg+xml" href="/icon.svg" />
|
||||
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
|
||||
<link rel="icon" type="image/png" href="/logo.png" />
|
||||
<link rel="manifest" href="/manifest.json" />
|
||||
<meta name="theme-color" id="theme-color" content="" />
|
||||
<meta name="description" content="Uptime Kuma monitoring tool" />
|
||||
<title>Uptime Kuma</title>
|
||||
<meta name="description" content="PSS Uptime monitoring tool" />
|
||||
<title>PSS Uptime</title>
|
||||
<style>
|
||||
.noscript-message {
|
||||
font-size: 20px;
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
109
public/icon.svg
109
public/icon.svg
@ -1,9 +1,102 @@
|
||||
<svg width="640" height="640" viewBox="0 0 640 640" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
|
||||
<g transform="matrix(1 0 0 1 320 320)">
|
||||
<linearGradient id="S3" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1 0 0 1 -319.99875 -320.0001577393)" x1="259.78" y1="261.15" x2="463.85" y2="456.49">
|
||||
<stop stop-color="#5CDD8B"/>
|
||||
<stop offset="1" stop-color="#86E6A9"/>
|
||||
</linearGradient>
|
||||
<path style="stroke: rgb(242,242,242); stroke-opacity: 0.51; stroke-width: 200; stroke-dasharray: none; stroke-linecap: butt; stroke-dashoffset: 0; stroke-linejoin: miter; stroke-miterlimit: 4; fill: url(#S3); fill-rule: nonzero; opacity: 1;" transform=" translate(0, 0)" d="M 170.40125 -84.36016 C 224.09125 38.37984 224.09125 115.33984 170.40125 146.49984 C 89.85125000000001 193.23984000000002 -120.03875 207.48984000000002 -180.45875 135.63984 C -220.73875 87.73983999999999 -220.73875 14.399839999999998 -180.45875 -84.36016000000001 C -139.49875 -151.82016 -81.28875000000001 -185.55016 -5.828750000000014 -185.55016 C 69.64124999999999 -185.55016 128.38125 -151.82016000000002 170.40124999999998 -84.36016000000001 z" stroke-linecap="round" />
|
||||
</g>
|
||||
<svg width="640" height="640" viewBox="0 0 640 640" xmlns="http://www.w3.org/2000/svg">
|
||||
<defs>
|
||||
<linearGradient id="skyGrad" x1="0%" y1="0%" x2="0%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#87CEEB;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#4682B4;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<linearGradient id="oceanGrad" x1="0%" y1="0%" x2="0%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#1E90FF;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#003366;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
|
||||
<!-- Outer dark blue border -->
|
||||
<circle cx="320" cy="320" r="310" fill="#003366" stroke="#ffffff" stroke-width="8"/>
|
||||
|
||||
<!-- Inner white circle border -->
|
||||
<circle cx="320" cy="320" r="300" fill="none" stroke="#ffffff" stroke-width="3"/>
|
||||
|
||||
<!-- Central illustration area -->
|
||||
<g transform="translate(320, 320)">
|
||||
<!-- Sky -->
|
||||
<rect x="-200" y="-200" width="400" height="150" fill="url(#skyGrad)"/>
|
||||
|
||||
<!-- Sun -->
|
||||
<circle cx="-80" cy="-120" r="20" fill="#FFD700"/>
|
||||
<path d="M -80,-120 L -80,-95 M -80,-120 L -65,-110 M -80,-120 L -95,-110 M -80,-120 L -80,-145 M -80,-120 L -65,-130 M -80,-120 L -95,-130"
|
||||
stroke="#FFD700" stroke-width="2" stroke-linecap="round"/>
|
||||
|
||||
<!-- Ocean -->
|
||||
<rect x="-200" y="-50" width="400" height="100" fill="url(#oceanGrad)"/>
|
||||
|
||||
<!-- Land -->
|
||||
<rect x="-200" y="50" width="400" height="150" fill="#228B22"/>
|
||||
|
||||
<!-- Outrigger canoe (left side) -->
|
||||
<g transform="translate(-140, -15)">
|
||||
<!-- Sail -->
|
||||
<path d="M -15,0 L -15,-35 L 8,-35 L 8,0 Z" fill="#D2B48C" stroke="#8B7355" stroke-width="1.5"/>
|
||||
<!-- Hull -->
|
||||
<ellipse cx="0" cy="5" rx="25" ry="7" fill="#654321"/>
|
||||
<!-- Outrigger -->
|
||||
<ellipse cx="-22" cy="8" rx="7" ry="4" fill="#654321"/>
|
||||
<line x1="-18" y1="5" x2="-22" y2="8" stroke="#654321" stroke-width="1.5"/>
|
||||
<!-- Navigator -->
|
||||
<circle cx="-3" cy="-3" r="5" fill="#8B4513"/>
|
||||
<rect x="-6" y="3" width="5" height="7" fill="#F5DEB3"/>
|
||||
</g>
|
||||
|
||||
<!-- Stick chart (center) - simplified -->
|
||||
<g transform="translate(0, -5)">
|
||||
<line x1="-25" y1="-15" x2="25" y2="15" stroke="#D2B48C" stroke-width="2.5"/>
|
||||
<line x1="25" y1="-15" x2="-25" y2="15" stroke="#D2B48C" stroke-width="2.5"/>
|
||||
<line x1="0" y1="-25" x2="0" y2="25" stroke="#D2B48C" stroke-width="2.5"/>
|
||||
<line x1="-25" y1="0" x2="25" y2="0" stroke="#D2B48C" stroke-width="2.5"/>
|
||||
<circle cx="0" cy="0" r="6" fill="#D2B48C"/>
|
||||
</g>
|
||||
|
||||
<!-- Left student (sitting) -->
|
||||
<g transform="translate(-110, 65)">
|
||||
<circle cx="0" cy="0" r="7" fill="#8B4513"/>
|
||||
<rect x="-5" y="8" width="10" height="12" fill="#FFFFFF"/>
|
||||
<rect x="-3" y="0" width="6" height="8" fill="#FF0000"/>
|
||||
</g>
|
||||
|
||||
<!-- Right student (reading) -->
|
||||
<g transform="translate(110, 75)">
|
||||
<circle cx="0" cy="0" r="7" fill="#8B4513"/>
|
||||
<rect x="-7" y="8" width="14" height="10" fill="#FFFF00"/>
|
||||
<rect x="-5" y="18" width="10" height="7" fill="#003366"/>
|
||||
<!-- Book -->
|
||||
<rect x="-4" y="12" width="8" height="6" fill="#FFFFFF" stroke="#000000" stroke-width="0.8"/>
|
||||
</g>
|
||||
|
||||
<!-- Palm tree (right side) -->
|
||||
<g transform="translate(140, 55)">
|
||||
<!-- Trunk -->
|
||||
<rect x="-2.5" y="0" width="5" height="35" fill="#8B4513"/>
|
||||
<!-- Fronds -->
|
||||
<path d="M 0,0 Q -12,-8 -16,-16 Q -8,-12 0,0" fill="#228B22"/>
|
||||
<path d="M 0,0 Q 12,-8 16,-16 Q 8,-12 0,0" fill="#228B22"/>
|
||||
<path d="M 0,0 Q -8,-12 -12,-20 Q -4,-16 0,0" fill="#228B22"/>
|
||||
<path d="M 0,0 Q 8,-12 12,-20 Q 4,-16 0,0" fill="#228B22"/>
|
||||
</g>
|
||||
</g>
|
||||
|
||||
<!-- Top text arc -->
|
||||
<path id="topTextPath" d="M 150,200 A 200,200 0 0,1 490,200" fill="none" stroke="none"/>
|
||||
<text font-family="Arial, sans-serif" font-size="20" font-weight="bold" fill="#003366">
|
||||
<textPath href="#topTextPath" startOffset="50%" text-anchor="middle">
|
||||
<tspan dy="-5">MARSHALL ISLANDS</tspan>
|
||||
<tspan x="0" dy="18">PUBLIC SCHOOL SYSTEM</tspan>
|
||||
</textPath>
|
||||
</text>
|
||||
|
||||
<!-- Bottom text arc -->
|
||||
<path id="bottomTextPath" d="M 490,440 A 200,200 0 0,1 150,440" fill="none" stroke="none"/>
|
||||
<text font-family="Arial, sans-serif" font-size="16" font-weight="bold" fill="#003366">
|
||||
<textPath href="#bottomTextPath" startOffset="50%" text-anchor="middle">
|
||||
<tspan dy="5">"EJ JU EL BWE EN LONJAT"</tspan>
|
||||
</textPath>
|
||||
</text>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 4.4 KiB |
BIN
public/logo.png
Normal file
BIN
public/logo.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 339 KiB |
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "Uptime Kuma",
|
||||
"short_name": "Uptime Kuma",
|
||||
"name": "PSS Uptime",
|
||||
"short_name": "PSS Uptime",
|
||||
"description": "An easy-to-use self-hosted monitoring tool.",
|
||||
"theme_color": "#5cdd8b",
|
||||
"start_url": "/",
|
||||
|
||||
@ -935,7 +935,7 @@ class Monitor extends BeanModel {
|
||||
{
|
||||
allowAutoTopicCreation: this.kafkaProducerAllowAutoTopicCreation,
|
||||
ssl: this.kafkaProducerSsl,
|
||||
clientId: `Uptime-Kuma/${version}`,
|
||||
clientId: `PSS-Uptime/${version}`,
|
||||
interval: this.interval,
|
||||
},
|
||||
JSON.parse(this.kafkaProducerSaslOptions)
|
||||
|
||||
@ -493,7 +493,7 @@ class StatusPage extends BeanModel {
|
||||
*/
|
||||
getIcon() {
|
||||
if (!this.icon) {
|
||||
return "/icon.svg";
|
||||
return "/logo.png";
|
||||
} else {
|
||||
return this.icon;
|
||||
}
|
||||
|
||||
@ -167,7 +167,7 @@ class MqttMonitorType extends MonitorType {
|
||||
let client = mqtt.connect(mqttUrl, {
|
||||
username,
|
||||
password,
|
||||
clientId: "uptime-kuma_" + Math.random().toString(16).substr(2, 8),
|
||||
clientId: "pss-uptime_" + Math.random().toString(16).substr(2, 8),
|
||||
});
|
||||
|
||||
client.on("connect", () => {
|
||||
|
||||
@ -22,11 +22,11 @@ class Alerta extends NotificationProvider {
|
||||
environment: notification.alertaEnvironment,
|
||||
severity: "critical",
|
||||
correlate: [],
|
||||
service: ["UptimeKuma"],
|
||||
service: ["PSS Uptime"],
|
||||
value: "Timeout",
|
||||
tags: ["uptimekuma"],
|
||||
tags: ["pss-uptime"],
|
||||
attributes: {},
|
||||
origin: "uptimekuma",
|
||||
origin: "pss-uptime",
|
||||
type: "exceptionAlert",
|
||||
};
|
||||
|
||||
@ -37,7 +37,7 @@ class Alerta extends NotificationProvider {
|
||||
{
|
||||
event: "msg",
|
||||
text: msg,
|
||||
group: "uptimekuma-msg",
|
||||
group: "pss-uptime-msg",
|
||||
resource: "Message",
|
||||
},
|
||||
data
|
||||
@ -49,7 +49,7 @@ class Alerta extends NotificationProvider {
|
||||
{
|
||||
correlate: ["service_up", "service_down"],
|
||||
event: monitorJSON["type"],
|
||||
group: "uptimekuma-" + monitorJSON["type"],
|
||||
group: "pss-uptime-" + monitorJSON["type"],
|
||||
resource: monitorJSON["name"],
|
||||
},
|
||||
data
|
||||
|
||||
@ -9,10 +9,9 @@
|
||||
const NotificationProvider = require("./notification-provider");
|
||||
const { DOWN, UP } = require("../../src/util");
|
||||
const { default: axios } = require("axios");
|
||||
const { setting } = require("../util-server");
|
||||
|
||||
// bark is an APN bridge that sends notifications to Apple devices.
|
||||
|
||||
const barkNotificationAvatar = "https://github.com/louislam/uptime-kuma/raw/master/public/icon.png";
|
||||
const successMessage = "Successes!";
|
||||
|
||||
class Bark extends NotificationProvider {
|
||||
@ -30,17 +29,17 @@ class Bark extends NotificationProvider {
|
||||
}
|
||||
|
||||
if (msg != null && heartbeatJSON != null && heartbeatJSON["status"] === UP) {
|
||||
let title = "UptimeKuma Monitor Up";
|
||||
let title = "PSS Uptime Monitor Up";
|
||||
return await this.postNotification(notification, title, msg, barkEndpoint);
|
||||
}
|
||||
|
||||
if (msg != null && heartbeatJSON != null && heartbeatJSON["status"] === DOWN) {
|
||||
let title = "UptimeKuma Monitor Down";
|
||||
let title = "PSS Uptime Monitor Down";
|
||||
return await this.postNotification(notification, title, msg, barkEndpoint);
|
||||
}
|
||||
|
||||
if (msg != null) {
|
||||
let title = "UptimeKuma Message";
|
||||
let title = "PSS Uptime Message";
|
||||
return await this.postNotification(notification, title, msg, barkEndpoint);
|
||||
}
|
||||
}
|
||||
@ -51,15 +50,17 @@ class Bark extends NotificationProvider {
|
||||
* @param {BeanModel} notification Notification to send
|
||||
* @returns {string} Additional URL parameters
|
||||
*/
|
||||
additionalParameters(notification) {
|
||||
// set icon to uptime kuma icon, 11kb should be fine
|
||||
let params = "?icon=" + barkNotificationAvatar;
|
||||
async additionalParameters(notification) {
|
||||
// set icon to PSS Uptime icon, 11kb should be fine
|
||||
const baseURL = await setting("primaryBaseURL");
|
||||
const iconUrl = baseURL ? baseURL + "/icon.png" : "https://github.com/louislam/uptime-kuma/raw/master/public/icon.png";
|
||||
let params = "?icon=" + iconUrl;
|
||||
// grouping all our notifications
|
||||
if (notification.barkGroup != null) {
|
||||
params += "&group=" + notification.barkGroup;
|
||||
} else {
|
||||
// default name
|
||||
params += "&group=" + "UptimeKuma";
|
||||
params += "&group=" + "PSS Uptime";
|
||||
}
|
||||
// picked a sound, this should follow system's mute status when arrival
|
||||
if (notification.barkSound != null) {
|
||||
@ -101,17 +102,19 @@ class Bark extends NotificationProvider {
|
||||
// url encode title and subtitle
|
||||
title = encodeURIComponent(title);
|
||||
subtitle = encodeURIComponent(subtitle);
|
||||
const params = this.additionalParameters(notification);
|
||||
const params = await this.additionalParameters(notification);
|
||||
result = await axios.get(`${endpoint}/${title}/${subtitle}${params}`, config);
|
||||
} else {
|
||||
const baseURL = await setting("primaryBaseURL");
|
||||
const iconUrl = baseURL ? baseURL + "/icon.png" : "https://github.com/louislam/uptime-kuma/raw/master/public/icon.png";
|
||||
result = await axios.post(
|
||||
endpoint,
|
||||
{
|
||||
title,
|
||||
body: subtitle,
|
||||
icon: barkNotificationAvatar,
|
||||
icon: iconUrl,
|
||||
sound: notification.barkSound || "telegraph", // default sound is telegraph
|
||||
group: notification.barkGroup || "UptimeKuma", // default group is UptimeKuma
|
||||
group: notification.barkGroup || "PSS Uptime", // default group is PSS Uptime
|
||||
},
|
||||
config
|
||||
);
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
const NotificationProvider = require("./notification-provider");
|
||||
const axios = require("axios");
|
||||
const { DOWN, UP } = require("../../src/util");
|
||||
const { setting } = require("../util-server");
|
||||
|
||||
class Discord extends NotificationProvider {
|
||||
name = "discord";
|
||||
@ -41,7 +42,8 @@ class Discord extends NotificationProvider {
|
||||
content: msg,
|
||||
};
|
||||
if (!webhookHasAvatar) {
|
||||
discordtestdata.avatar_url = "https://github.com/louislam/uptime-kuma/raw/master/public/icon.png";
|
||||
const baseURL = await setting("primaryBaseURL");
|
||||
discordtestdata.avatar_url = baseURL ? baseURL + "/icon.png" : "https://github.com/louislam/uptime-kuma/raw/master/public/icon.png";
|
||||
}
|
||||
if (notification.discordChannelType === "createNewForumPost") {
|
||||
discordtestdata.thread_name = notification.postName;
|
||||
@ -96,7 +98,8 @@ class Discord extends NotificationProvider {
|
||||
],
|
||||
};
|
||||
if (!webhookHasAvatar) {
|
||||
discorddowndata.avatar_url = "https://github.com/louislam/uptime-kuma/raw/master/public/icon.png";
|
||||
const baseURL = await setting("primaryBaseURL");
|
||||
discorddowndata.avatar_url = baseURL ? baseURL + "/icon.png" : "https://github.com/louislam/uptime-kuma/raw/master/public/icon.png";
|
||||
}
|
||||
if (notification.discordChannelType === "createNewForumPost") {
|
||||
discorddowndata.thread_name = notification.postName;
|
||||
@ -169,7 +172,8 @@ class Discord extends NotificationProvider {
|
||||
],
|
||||
};
|
||||
if (!webhookHasAvatar) {
|
||||
discordupdata.avatar_url = "https://github.com/louislam/uptime-kuma/raw/master/public/icon.png";
|
||||
const baseURL = await setting("primaryBaseURL");
|
||||
discordupdata.avatar_url = baseURL ? baseURL + "/icon.png" : "https://github.com/louislam/uptime-kuma/raw/master/public/icon.png";
|
||||
}
|
||||
|
||||
if (notification.discordChannelType === "createNewForumPost") {
|
||||
|
||||
@ -35,7 +35,7 @@ class Feishu extends NotificationProvider {
|
||||
header: {
|
||||
title: {
|
||||
tag: "plain_text",
|
||||
content: "UptimeKuma Alert: [Down] " + monitorJSON["name"],
|
||||
content: "PSS Uptime Alert: [Down] " + monitorJSON["name"],
|
||||
},
|
||||
template: "red",
|
||||
},
|
||||
@ -65,7 +65,7 @@ class Feishu extends NotificationProvider {
|
||||
header: {
|
||||
title: {
|
||||
tag: "plain_text",
|
||||
content: "UptimeKuma Alert: [UP] " + monitorJSON["name"],
|
||||
content: "PSS Uptime Alert: [UP] " + monitorJSON["name"],
|
||||
},
|
||||
template: "green",
|
||||
},
|
||||
|
||||
@ -20,7 +20,7 @@ class Gotify extends NotificationProvider {
|
||||
{
|
||||
message: msg,
|
||||
priority: notification.gotifyPriority || 8,
|
||||
title: "Uptime-Kuma",
|
||||
title: "PSS Uptime",
|
||||
},
|
||||
config
|
||||
);
|
||||
|
||||
@ -25,14 +25,14 @@ class HomeAssistant extends NotificationProvider {
|
||||
await axios.post(
|
||||
`${notification.homeAssistantUrl.trim().replace(/\/*$/, "")}/api/services/notify/${notificationService}`,
|
||||
{
|
||||
title: "Uptime Kuma",
|
||||
title: "PSS Uptime",
|
||||
message: msg,
|
||||
...(notificationService !== "persistent_notification" && {
|
||||
data: {
|
||||
name: monitorJSON?.name,
|
||||
status: heartbeatJSON?.status,
|
||||
channel: "Uptime Kuma",
|
||||
icon_url: "https://github.com/louislam/uptime-kuma/blob/master/public/icon.png?raw=true",
|
||||
channel: "PSS Uptime",
|
||||
icon_url: (await setting("primaryBaseURL")) ? (await setting("primaryBaseURL")) + "/icon.png" : "https://github.com/louislam/uptime-kuma/blob/master/public/icon.png?raw=true",
|
||||
},
|
||||
}),
|
||||
},
|
||||
|
||||
@ -29,7 +29,7 @@ class Keep extends NotificationProvider {
|
||||
url = url.slice(0, -1);
|
||||
}
|
||||
|
||||
let webhookURL = url + "/alerts/event/uptimekuma";
|
||||
let webhookURL = url + "/alerts/event/pss-uptime";
|
||||
|
||||
config = this.getAxiosConfigWithProxy(config);
|
||||
|
||||
|
||||
@ -38,7 +38,7 @@ class Line extends NotificationProvider {
|
||||
{
|
||||
type: "text",
|
||||
text:
|
||||
"UptimeKuma Alert: [🔴 Down]\n" +
|
||||
"PSS Uptime Alert: [🔴 Down]\n" +
|
||||
"Name: " +
|
||||
monitorJSON["name"] +
|
||||
" \n" +
|
||||
@ -55,7 +55,7 @@ class Line extends NotificationProvider {
|
||||
{
|
||||
type: "text",
|
||||
text:
|
||||
"UptimeKuma Alert: [✅ Up]\n" +
|
||||
"PSS Uptime Alert: [✅ Up]\n" +
|
||||
"Name: " +
|
||||
monitorJSON["name"] +
|
||||
" \n" +
|
||||
|
||||
@ -26,7 +26,7 @@ class LunaSea extends NotificationProvider {
|
||||
|
||||
if (heartbeatJSON["status"] === DOWN) {
|
||||
let downdata = {
|
||||
title: "UptimeKuma Alert: " + monitorJSON["name"],
|
||||
title: "PSS Uptime Alert: " + monitorJSON["name"],
|
||||
body:
|
||||
"[🔴 Down] " +
|
||||
heartbeatJSON["msg"] +
|
||||
@ -38,7 +38,7 @@ class LunaSea extends NotificationProvider {
|
||||
|
||||
if (heartbeatJSON["status"] === UP) {
|
||||
let updata = {
|
||||
title: "UptimeKuma Alert: " + monitorJSON["name"],
|
||||
title: "PSS Uptime Alert: " + monitorJSON["name"],
|
||||
body:
|
||||
"[✅ Up] " +
|
||||
heartbeatJSON["msg"] +
|
||||
|
||||
@ -35,7 +35,7 @@ class Ntfy extends NotificationProvider {
|
||||
if (heartbeatJSON == null) {
|
||||
let ntfyTestData = {
|
||||
topic: notification.ntfytopic,
|
||||
title: (monitorJSON?.name || notification.ntfytopic) + " [Uptime-Kuma]",
|
||||
title: (monitorJSON?.name || notification.ntfytopic) + " [PSS Uptime]",
|
||||
message: msg,
|
||||
priority: notification.ntfyPriority,
|
||||
tags: ["test_tube"],
|
||||
@ -61,7 +61,7 @@ class Ntfy extends NotificationProvider {
|
||||
topic: notification.ntfytopic,
|
||||
message: heartbeatJSON.msg,
|
||||
priority: priority,
|
||||
title: monitorJSON.name + " " + status + " [Uptime-Kuma]",
|
||||
title: monitorJSON.name + " " + status + " [PSS Uptime]",
|
||||
tags: tags,
|
||||
};
|
||||
|
||||
|
||||
@ -26,7 +26,7 @@ class OneBot extends NotificationProvider {
|
||||
},
|
||||
};
|
||||
config = this.getAxiosConfigWithProxy(config);
|
||||
let pushText = "UptimeKuma Alert: " + msg;
|
||||
let pushText = "PSS Uptime Alert: " + msg;
|
||||
let data = {
|
||||
auto_escape: true,
|
||||
message: pushText,
|
||||
|
||||
@ -33,7 +33,7 @@ class OneChat extends NotificationProvider {
|
||||
to: notification.recieverId,
|
||||
bot_id: notification.botId,
|
||||
type: "text",
|
||||
message: `UptimeKuma Alert:
|
||||
message: `PSS Uptime Alert:
|
||||
[🔴 Down]
|
||||
Name: ${monitorJSON["name"]}
|
||||
${heartbeatJSON["msg"]}
|
||||
@ -45,7 +45,7 @@ Time (${heartbeatJSON["timezone"]}): ${heartbeatJSON["localDateTime"]}`,
|
||||
to: notification.recieverId,
|
||||
bot_id: notification.botId,
|
||||
type: "text",
|
||||
message: `UptimeKuma Alert:
|
||||
message: `PSS Uptime Alert:
|
||||
[🟢 Up]
|
||||
Name: ${monitorJSON["name"]}
|
||||
${heartbeatJSON["msg"]}
|
||||
|
||||
@ -31,7 +31,7 @@ class Pushbullet extends NotificationProvider {
|
||||
} else if (heartbeatJSON["status"] === DOWN) {
|
||||
let downData = {
|
||||
type: "note",
|
||||
title: "UptimeKuma Alert: " + monitorJSON["name"],
|
||||
title: "PSS Uptime Alert: " + monitorJSON["name"],
|
||||
body:
|
||||
"[🔴 Down] " +
|
||||
heartbeatJSON["msg"] +
|
||||
@ -41,7 +41,7 @@ class Pushbullet extends NotificationProvider {
|
||||
} else if (heartbeatJSON["status"] === UP) {
|
||||
let upData = {
|
||||
type: "note",
|
||||
title: "UptimeKuma Alert: " + monitorJSON["name"],
|
||||
title: "PSS Uptime Alert: " + monitorJSON["name"],
|
||||
body:
|
||||
"[✅ Up] " +
|
||||
heartbeatJSON["msg"] +
|
||||
|
||||
@ -43,12 +43,12 @@ class PushPlus extends NotificationProvider {
|
||||
* @returns {string} Formatted title
|
||||
*/
|
||||
checkStatus(heartbeatJSON, monitorJSON) {
|
||||
let title = "UptimeKuma Message";
|
||||
let title = "PSS Uptime Message";
|
||||
if (heartbeatJSON != null && heartbeatJSON["status"] === UP) {
|
||||
title = "UptimeKuma Monitor Up " + monitorJSON["name"];
|
||||
title = "PSS Uptime Monitor Up " + monitorJSON["name"];
|
||||
}
|
||||
if (heartbeatJSON != null && heartbeatJSON["status"] === DOWN) {
|
||||
title = "UptimeKuma Monitor Down " + monitorJSON["name"];
|
||||
title = "PSS Uptime Monitor Down " + monitorJSON["name"];
|
||||
}
|
||||
return title;
|
||||
}
|
||||
|
||||
@ -17,7 +17,7 @@ class Pushy extends NotificationProvider {
|
||||
{
|
||||
to: notification.pushyToken,
|
||||
data: {
|
||||
message: "Uptime-Kuma",
|
||||
message: "PSS Uptime",
|
||||
},
|
||||
notification: {
|
||||
body: msg,
|
||||
|
||||
@ -42,12 +42,12 @@ class ServerChan extends NotificationProvider {
|
||||
* @returns {string} Formatted title
|
||||
*/
|
||||
checkStatus(heartbeatJSON, monitorJSON) {
|
||||
let title = "UptimeKuma Message";
|
||||
let title = "PSS Uptime Message";
|
||||
if (heartbeatJSON != null && heartbeatJSON["status"] === UP) {
|
||||
title = "UptimeKuma Monitor Up " + monitorJSON["name"];
|
||||
title = "PSS Uptime Monitor Up " + monitorJSON["name"];
|
||||
}
|
||||
if (heartbeatJSON != null && heartbeatJSON["status"] === DOWN) {
|
||||
title = "UptimeKuma Monitor Down " + monitorJSON["name"];
|
||||
title = "PSS Uptime Monitor Down " + monitorJSON["name"];
|
||||
}
|
||||
return title;
|
||||
}
|
||||
|
||||
@ -17,7 +17,7 @@ class SIGNL4 extends NotificationProvider {
|
||||
monitor: monitorJSON,
|
||||
msg,
|
||||
// Source system
|
||||
"X-S4-SourceSystem": "UptimeKuma",
|
||||
"X-S4-SourceSystem": "PSS Uptime",
|
||||
monitorUrl: this.extractAddress(monitorJSON),
|
||||
};
|
||||
|
||||
@ -34,11 +34,11 @@ class SIGNL4 extends NotificationProvider {
|
||||
data.message = msg;
|
||||
} else if (heartbeatJSON.status === UP) {
|
||||
data.title = "Uptime Kuma Monitor ✅ Up";
|
||||
data["X-S4-ExternalID"] = "UptimeKuma-" + monitorJSON.monitorID;
|
||||
data["X-S4-ExternalID"] = "PSS Uptime-" + monitorJSON.monitorID;
|
||||
data["X-S4-Status"] = "resolved";
|
||||
} else if (heartbeatJSON.status === DOWN) {
|
||||
data.title = "Uptime Kuma Monitor 🔴 Down";
|
||||
data["X-S4-ExternalID"] = "UptimeKuma-" + monitorJSON.monitorID;
|
||||
data["X-S4-ExternalID"] = "PSS Uptime-" + monitorJSON.monitorID;
|
||||
data["X-S4-Status"] = "new";
|
||||
}
|
||||
|
||||
|
||||
@ -41,9 +41,9 @@ class Slack extends NotificationProvider {
|
||||
type: "button",
|
||||
text: {
|
||||
type: "plain_text",
|
||||
text: "Visit Uptime Kuma",
|
||||
text: "Visit PSS Uptime",
|
||||
},
|
||||
value: "Uptime-Kuma",
|
||||
value: "PSS Uptime",
|
||||
url: baseURL + getMonitorRelativeURL(monitorJSON.id),
|
||||
});
|
||||
}
|
||||
|
||||
@ -96,7 +96,7 @@ class Splunk extends NotificationProvider {
|
||||
|
||||
const baseURL = await setting("primaryBaseURL");
|
||||
if (baseURL && monitorInfo) {
|
||||
options.client = "Uptime Kuma";
|
||||
options.client = "PSS Uptime";
|
||||
options.client_url = baseURL + getMonitorRelativeURL(monitorInfo.id);
|
||||
}
|
||||
|
||||
|
||||
@ -17,10 +17,10 @@ class SpugPush extends NotificationProvider {
|
||||
};
|
||||
if (heartbeatJSON) {
|
||||
if (heartbeatJSON["status"] === UP) {
|
||||
formData.title = `UptimeKuma 「${monitorJSON["name"]}」 is Up`;
|
||||
formData.title = `PSS Uptime 「${monitorJSON["name"]}」 is Up`;
|
||||
formData.content = `[✅ Up] ${heartbeatJSON["msg"]}`;
|
||||
} else if (heartbeatJSON["status"] === DOWN) {
|
||||
formData.title = `UptimeKuma 「${monitorJSON["name"]}」 is Down`;
|
||||
formData.title = `PSS Uptime 「${monitorJSON["name"]}」 is Down`;
|
||||
formData.content = `[🔴 Down] ${heartbeatJSON["msg"]}`;
|
||||
}
|
||||
}
|
||||
|
||||
@ -121,8 +121,8 @@ class Teams extends NotificationProvider {
|
||||
type: "Image",
|
||||
width: "32px",
|
||||
style: "Person",
|
||||
url: "https://raw.githubusercontent.com/louislam/uptime-kuma/master/public/icon.png",
|
||||
altText: "Uptime Kuma Logo",
|
||||
url: iconUrl,
|
||||
altText: "PSS Uptime Logo",
|
||||
},
|
||||
],
|
||||
},
|
||||
|
||||
@ -11,7 +11,7 @@ class TechulusPush extends NotificationProvider {
|
||||
const okMsg = "Sent Successfully.";
|
||||
|
||||
let data = {
|
||||
title: notification?.pushTitle?.length ? notification.pushTitle : "Uptime-Kuma",
|
||||
title: notification?.pushTitle?.length ? notification.pushTitle : "PSS Uptime",
|
||||
body: msg,
|
||||
timeSensitive: notification.pushTimeSensitive ?? true,
|
||||
};
|
||||
|
||||
@ -38,12 +38,12 @@ class WeCom extends NotificationProvider {
|
||||
* @returns {object} Message
|
||||
*/
|
||||
composeMessage(notification, heartbeatJSON, msg) {
|
||||
let title = "UptimeKuma Message";
|
||||
let title = "PSS Uptime Message";
|
||||
if (msg != null && heartbeatJSON != null && heartbeatJSON["status"] === UP) {
|
||||
title = "UptimeKuma Monitor Up";
|
||||
title = "PSS Uptime Monitor Up";
|
||||
}
|
||||
if (msg != null && heartbeatJSON != null && heartbeatJSON["status"] === DOWN) {
|
||||
title = "UptimeKuma Monitor Down";
|
||||
title = "PSS Uptime Monitor Down";
|
||||
}
|
||||
|
||||
let textObj = {
|
||||
|
||||
@ -37,12 +37,12 @@ class WPush extends NotificationProvider {
|
||||
* @returns {string} Formatted title
|
||||
*/
|
||||
checkStatus(heartbeatJSON, monitorJSON) {
|
||||
let title = "UptimeKuma Message";
|
||||
let title = "PSS Uptime Message";
|
||||
if (heartbeatJSON != null && heartbeatJSON["status"] === UP) {
|
||||
title = "UptimeKuma Monitor Up " + monitorJSON["name"];
|
||||
title = "PSS Uptime Monitor Up " + monitorJSON["name"];
|
||||
}
|
||||
if (heartbeatJSON != null && heartbeatJSON["status"] === DOWN) {
|
||||
title = "UptimeKuma Monitor Down " + monitorJSON["name"];
|
||||
title = "PSS Uptime Monitor Down " + monitorJSON["name"];
|
||||
}
|
||||
return title;
|
||||
}
|
||||
|
||||
@ -533,7 +533,7 @@ class UptimeKumaServer {
|
||||
* @returns {string} User-Agent
|
||||
*/
|
||||
getUserAgent() {
|
||||
return "Uptime-Kuma/" + require("../package.json").version;
|
||||
return "PSS-Uptime/" + require("../package.json").version;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@ -212,7 +212,7 @@ exports.pingAsync = function (
|
||||
*/
|
||||
exports.kafkaProducerAsync = function (brokers, topic, message, options = {}, saslOptions = {}) {
|
||||
return new Promise((resolve, reject) => {
|
||||
const { interval = 20, allowAutoTopicCreation = false, ssl = false, clientId = "Uptime-Kuma" } = options;
|
||||
const { interval = 20, allowAutoTopicCreation = false, ssl = false, clientId = "PSS-Uptime" } = options;
|
||||
|
||||
let connectedToKafka = false;
|
||||
|
||||
|
||||
@ -72,7 +72,7 @@ export default {
|
||||
this.$parent.notification.brevoSubject = "Notification from Your Uptime Kuma";
|
||||
}
|
||||
if (typeof this.$parent.notification.brevoFromName === "undefined") {
|
||||
this.$parent.notification.brevoFromName = "Uptime Kuma";
|
||||
this.$parent.notification.brevoFromName = "PSS Uptime";
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
@ -114,7 +114,7 @@ export default {
|
||||
},
|
||||
mounted() {
|
||||
this.$parent.notification.cellsyntOriginatortype ||= "alpha";
|
||||
this.$parent.notification.cellsyntOriginator ||= "uptimekuma";
|
||||
this.$parent.notification.cellsyntOriginator ||= "pss-uptime";
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
@ -60,7 +60,7 @@ export default {
|
||||
this.$parent.notification.resendSubject = "Notification from Your Uptime Kuma";
|
||||
}
|
||||
if (typeof this.$parent.notification.resendFromName === "undefined") {
|
||||
this.$parent.notification.resendFromName = "Uptime Kuma";
|
||||
this.$parent.notification.resendFromName = "PSS Uptime";
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
@ -86,7 +86,7 @@
|
||||
class="form-control"
|
||||
required
|
||||
autocomplete="false"
|
||||
placeholder='"Uptime Kuma" <example@kuma.pet>'
|
||||
placeholder='"PSS Uptime" <example@kuma.pet>'
|
||||
/>
|
||||
<div class="form-text"></div>
|
||||
</div>
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
type="text"
|
||||
class="form-control"
|
||||
autocomplete="false"
|
||||
placeholder="Uptime Kuma"
|
||||
placeholder="PSS Uptime"
|
||||
/>
|
||||
</div>
|
||||
|
||||
|
||||
@ -80,10 +80,10 @@ export default {
|
||||
},
|
||||
mounted() {
|
||||
if (typeof this.$parent.notification.pushTitle === "undefined") {
|
||||
this.$parent.notification.pushTitle = "Uptime-Kuma";
|
||||
this.$parent.notification.pushTitle = "PSS Uptime";
|
||||
}
|
||||
if (typeof this.$parent.notification.pushChannel === "undefined") {
|
||||
this.$parent.notification.pushChannel = "uptime-kuma";
|
||||
this.$parent.notification.pushChannel = "pss-uptime";
|
||||
}
|
||||
if (typeof this.$parent.notification.pushSound === "undefined") {
|
||||
this.$parent.notification.pushSound = "default";
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
<template>
|
||||
<div class="d-flex justify-content-center align-items-center">
|
||||
<div class="logo d-flex flex-column justify-content-center align-items-center">
|
||||
<object class="my-4" width="200" height="200" data="/icon.svg" />
|
||||
<div class="fs-4 fw-bold">Uptime Kuma</div>
|
||||
<img class="my-4" width="200" height="200" src="/logo.png" alt="PSS Uptime Logo" />
|
||||
<div class="fs-4 fw-bold">PSS Uptime</div>
|
||||
<div>{{ $t("versionIs", { version: $root.info.version }) }}</div>
|
||||
<div class="frontend-version">{{ $t("frontendVersionIs", { version: $root.frontendVersion }) }}</div>
|
||||
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
{
|
||||
"languageName": "English",
|
||||
"setupDatabaseChooseDatabase": "Which database would you like to use?",
|
||||
"setupDatabaseEmbeddedMariaDB": "You don't need to set anything. This Docker image has embedded and configured MariaDB for you automatically. Uptime Kuma will connect to this database via Unix socket.",
|
||||
"setupDatabaseEmbeddedMariaDB": "You don't need to set anything. This Docker image has embedded and configured MariaDB for you automatically. PSS Uptime will connect to this database via Unix socket.",
|
||||
"setupDatabaseMariaDB": "Connect to an external MariaDB database. You need to set the database connection information.",
|
||||
"setupDatabaseSQLite": "A simple database file, recommended for small-scale deployments. Prior to v2.0.0, Uptime Kuma used SQLite as the default database.",
|
||||
"setupDatabaseSQLite": "A simple database file, recommended for small-scale deployments. Prior to v2.0.0, PSS Uptime used SQLite as the default database.",
|
||||
"settingUpDatabaseMSG": "Setting up the database. It may take a while, please be patient.",
|
||||
"dbName": "Database Name",
|
||||
"enableSSL": "Enable SSL/TLS",
|
||||
@ -142,7 +142,7 @@
|
||||
"Enable Auth": "Enable Auth",
|
||||
"disableauth.message1": "Are you sure want to {disableAuth}?",
|
||||
"disable authentication": "disable authentication",
|
||||
"disableauth.message2": "It is designed for scenarios {intendThirdPartyAuth} in front of Uptime Kuma such as Cloudflare Access, Authelia or other authentication mechanisms.",
|
||||
"disableauth.message2": "It is designed for scenarios {intendThirdPartyAuth} in front of PSS Uptime such as Cloudflare Access, Authelia or other authentication mechanisms.",
|
||||
"where you intend to implement third-party authentication": "where you intend to implement third-party authentication",
|
||||
"Please use this option carefully!": "Please use this option carefully!",
|
||||
"Logout": "Log out",
|
||||
@ -411,6 +411,8 @@
|
||||
"Leave blank to use status page title": "Leave blank to use status page title",
|
||||
"Refresh Interval": "Refresh Interval",
|
||||
"Refresh Interval Description": "The status page will do a full site refresh every {0} seconds",
|
||||
"Logo URL": "Logo URL",
|
||||
"Enter a logo URL (e.g., /logo.png) or upload using the logo above": "Enter a logo URL (e.g., /logo.png) or upload using the logo above",
|
||||
"Show Powered By": "Show Powered By",
|
||||
"Domain Names": "Domain Names",
|
||||
"signedInDisp": "Signed in as {0}",
|
||||
@ -449,8 +451,8 @@
|
||||
"deleteDockerHostMsg": "Are you sure want to delete this docker host for all monitors?",
|
||||
"socket": "Socket",
|
||||
"tcp": "TCP / HTTP",
|
||||
"tailscalePingWarning": "In order to use the Tailscale Ping monitor, you need to install Uptime Kuma without Docker and also install Tailscale client on your server.",
|
||||
"sipsakPingWarning": "In order to use the SIP Options Ping monitor, you need to install Uptime Kuma without Docker and also install Sipsak client on your server.",
|
||||
"tailscalePingWarning": "In order to use the Tailscale Ping monitor, you need to install PSS Uptime without Docker and also install Tailscale client on your server.",
|
||||
"sipsakPingWarning": "In order to use the SIP Options Ping monitor, you need to install PSS Uptime without Docker and also install Sipsak client on your server.",
|
||||
"Docker Container": "Docker Container",
|
||||
"Container Name / ID": "Container Name / ID",
|
||||
"Docker Host": "Docker Host",
|
||||
@ -477,7 +479,7 @@
|
||||
"YOUR BOT TOKEN HERE": "YOUR BOT TOKEN HERE",
|
||||
"chatIDNotFound": "Chat ID is not found; please send a message to this bot first",
|
||||
"disableCloudflaredNoAuthMsg": "You are in No Auth mode, a password is not required.",
|
||||
"trustProxyDescription": "Trust 'X-Forwarded-*' headers. If you want to get the correct client IP and your Uptime Kuma is behind a proxy such as Nginx or Apache, you should enable this.",
|
||||
"trustProxyDescription": "Trust 'X-Forwarded-*' headers. If you want to get the correct client IP and your PSS Uptime is behind a proxy such as Nginx or Apache, you should enable this.",
|
||||
"wayToGetLineNotifyToken": "You can get an access token from {0}",
|
||||
"Examples:": "Examples: {0}",
|
||||
"supportBaleChatID": "Support Direct Chat / Group / Channel's Chat ID",
|
||||
@ -814,7 +816,7 @@
|
||||
"Channel Name": "Channel Name",
|
||||
"Notify Channel": "Notify Channel",
|
||||
"aboutNotifyChannel": "Notify channel will trigger a desktop or mobile notification for all members of the channel, whether their availability is set to active or away.",
|
||||
"Uptime Kuma URL": "Uptime Kuma URL",
|
||||
"Uptime Kuma URL": "PSS Uptime URL",
|
||||
"setup a new monitor group": "set up a new monitor group",
|
||||
"openModalTo": "open modal to {0}",
|
||||
"Add a domain": "Add a domain",
|
||||
@ -824,7 +826,7 @@
|
||||
"aboutWebhooks": "More info about Webhooks on: {0}",
|
||||
"aboutSlackUsername": "Changes the display name of the message sender. If you want to mention someone, include it in the friendly name instead.",
|
||||
"aboutChannelName": "Enter the channel name on {0} Channel Name field if you want to bypass the Webhook channel. Ex: #other-channel",
|
||||
"aboutKumaURL": "If you leave the Uptime Kuma URL field blank, it will default to the Project GitHub page.",
|
||||
"aboutKumaURL": "If you leave the PSS Uptime URL field blank, it will default to the Project GitHub page.",
|
||||
"smtpDkimSettings": "DKIM Settings",
|
||||
"smtpDkimDesc": "Please refer to the Nodemailer DKIM {0} for usage.",
|
||||
"documentation": "documentation",
|
||||
@ -937,7 +939,7 @@
|
||||
"pagertreeCritical": "Critical",
|
||||
"pagertreeResolve": "Auto Resolve",
|
||||
"pagertreeDoNothing": "Do Nothing",
|
||||
"wayToGetPagerTreeIntegrationURL": "After creating the Uptime Kuma integration in PagerTree, copy the Endpoint. See full details {0}",
|
||||
"wayToGetPagerTreeIntegrationURL": "After creating the PSS Uptime integration in PagerTree, copy the Endpoint. See full details {0}",
|
||||
"lunaseaTarget": "Target",
|
||||
"lunaseaDeviceID": "Device ID",
|
||||
"lunaseaUserID": "User ID",
|
||||
@ -1008,8 +1010,8 @@
|
||||
"Request Body": "Request Body",
|
||||
"HTTP Method": "HTTP Method",
|
||||
"webhookPostMethodDesc": "POST is good for most modern HTTP servers.",
|
||||
"webhookGetMethodDesc": "GET sends data as query parameters and does not allow configuring a body. Useful for triggering Uptime Kuma Push monitors.",
|
||||
"wayToGetFlashDutyKey": "To integrate Uptime Kuma with Flashduty: Go to Channels > Select a channel > Integrations > Add a new integration, choose Uptime Kuma, and copy the Push URL.",
|
||||
"webhookGetMethodDesc": "GET sends data as query parameters and does not allow configuring a body. Useful for triggering PSS Uptime Push monitors.",
|
||||
"wayToGetFlashDutyKey": "To integrate PSS Uptime with Flashduty: Go to Channels > Select a channel > Integrations > Add a new integration, choose PSS Uptime, and copy the Push URL.",
|
||||
"FlashDuty Severity": "Severity",
|
||||
"FlashDuty Push URL": "Push URL",
|
||||
"FlashDuty Push URL Placeholder": "Copy from the alerting integration page",
|
||||
@ -1054,7 +1056,7 @@
|
||||
"Remote Browser not found!": "Remote Browser not found!",
|
||||
"remoteBrowsersDescription": "Remote Browsers are an alternative to running Chromium locally. Set up with a service like browserless.io or connect to your own",
|
||||
"self-hosted container": "self-hosted container",
|
||||
"remoteBrowserToggle": "By default Chromium runs inside the Uptime Kuma container. You can use a remote browser by toggling this switch.",
|
||||
"remoteBrowserToggle": "By default Chromium runs inside the PSS Uptime container. You can use a remote browser by toggling this switch.",
|
||||
"useRemoteBrowser": "Use a Remote Browser",
|
||||
"deleteRemoteBrowserMessage": "Are you sure want to delete this Remote Browser for all monitors?",
|
||||
"Screenshot Delay": "Screenshot Delay (waits {milliseconds})",
|
||||
@ -1328,7 +1330,8 @@
|
||||
"mtls-auth-server-ca-label": "CA",
|
||||
"mtls-auth-server-ca-placeholder": "Server CA",
|
||||
"avgPing": "Avg Ping",
|
||||
"Uptime Kuma": "Uptime Kuma",
|
||||
"Uptime Kuma": "PSS Uptime",
|
||||
"PSS Uptime": "PSS Uptime",
|
||||
"maxPing": "Max Ping",
|
||||
"minPing": "Min Ping",
|
||||
"Setup Instructions": "Setup Instructions",
|
||||
|
||||
@ -473,7 +473,8 @@
|
||||
"Remove Token": "移除 Token",
|
||||
"Start": "启动",
|
||||
"Stop": "停止",
|
||||
"Uptime Kuma": "Uptime Kuma",
|
||||
"Uptime Kuma": "PSS Uptime",
|
||||
"PSS Uptime": "PSS Uptime",
|
||||
"Add New Status Page": "添加新的状态页",
|
||||
"Slug": "路径",
|
||||
"Accept characters:": "可接受的字符:",
|
||||
|
||||
@ -463,7 +463,8 @@
|
||||
"Remove Token": "移除權杖",
|
||||
"Start": "開始",
|
||||
"Stop": "停止",
|
||||
"Uptime Kuma": "Uptime Kuma",
|
||||
"Uptime Kuma": "PSS Uptime",
|
||||
"PSS Uptime": "PSS Uptime",
|
||||
"Add New Status Page": "新增狀態頁",
|
||||
"Slug": "Slug",
|
||||
"Accept characters:": "可用字元:",
|
||||
|
||||
@ -18,8 +18,8 @@
|
||||
to="/dashboard"
|
||||
class="d-flex align-items-center mb-3 mb-md-0 me-md-auto text-dark text-decoration-none"
|
||||
>
|
||||
<object class="bi me-2 ms-4" width="40" height="40" data="/icon.svg" />
|
||||
<span class="fs-4 title">{{ $t("Uptime Kuma") }}</span>
|
||||
<img class="bi me-2 ms-4" width="40" height="40" src="/logo.png" alt="PSS Uptime Logo" />
|
||||
<span class="fs-4 title">{{ $t("PSS Uptime") }}</span>
|
||||
</router-link>
|
||||
|
||||
<a
|
||||
@ -120,8 +120,8 @@
|
||||
<!-- Mobile header -->
|
||||
<header v-else class="d-flex flex-wrap justify-content-center pt-2 pb-2 mb-3">
|
||||
<router-link to="/dashboard" class="d-flex align-items-center text-dark text-decoration-none">
|
||||
<object class="bi" width="40" height="40" data="/icon.svg" />
|
||||
<span class="fs-4 title ms-2">Uptime Kuma</span>
|
||||
<img class="bi" width="40" height="40" src="/logo.png" alt="PSS Uptime Logo" />
|
||||
<span class="fs-4 title ms-2">PSS Uptime</span>
|
||||
</router-link>
|
||||
</header>
|
||||
|
||||
|
||||
@ -154,7 +154,7 @@ export default {
|
||||
* @returns {string} Correctly formatted path including port numbers
|
||||
*/
|
||||
icon(icon) {
|
||||
if (icon === "/icon.svg") {
|
||||
if (icon === "/logo.png") {
|
||||
return icon;
|
||||
} else {
|
||||
return getResBaseURL() + icon;
|
||||
|
||||
@ -83,7 +83,7 @@ export default {
|
||||
* @returns {string} Correctly formatted path including port numbers
|
||||
*/
|
||||
icon(icon) {
|
||||
if (icon === "/icon.svg") {
|
||||
if (icon === "/logo.png") {
|
||||
return icon;
|
||||
} else {
|
||||
return getResBaseURL() + icon;
|
||||
|
||||
@ -6,16 +6,16 @@
|
||||
to="/"
|
||||
class="d-flex align-items-center mb-3 mb-md-0 me-md-auto text-dark text-decoration-none"
|
||||
>
|
||||
<object class="bi me-2 ms-4" width="40" height="40" data="/icon.svg" />
|
||||
<span class="fs-4 title">Uptime Kuma</span>
|
||||
<img class="bi me-2 ms-4" width="40" height="40" src="/logo.png" alt="PSS Uptime Logo" />
|
||||
<span class="fs-4 title">PSS Uptime</span>
|
||||
</router-link>
|
||||
</header>
|
||||
|
||||
<!-- Mobile header -->
|
||||
<header v-else class="d-flex flex-wrap justify-content-center pt-2 pb-2 mb-3">
|
||||
<router-link to="/dashboard" class="d-flex align-items-center text-dark text-decoration-none">
|
||||
<object class="bi" width="40" height="40" data="/icon.svg" />
|
||||
<span class="fs-4 title ms-2">Uptime Kuma</span>
|
||||
<img class="bi" width="40" height="40" src="/logo.png" alt="PSS Uptime Logo" />
|
||||
<span class="fs-4 title ms-2">PSS Uptime</span>
|
||||
</router-link>
|
||||
</header>
|
||||
|
||||
|
||||
@ -3,8 +3,8 @@
|
||||
<div class="form">
|
||||
<form @submit.prevent="submit">
|
||||
<div>
|
||||
<object width="64" height="64" data="/icon.svg" />
|
||||
<div style="font-size: 28px; font-weight: bold; margin-top: 5px">Uptime Kuma</div>
|
||||
<img width="64" height="64" src="/logo.png" alt="PSS Uptime Logo" />
|
||||
<div style="font-size: 28px; font-weight: bold; margin-top: 5px">PSS Uptime</div>
|
||||
</div>
|
||||
|
||||
<p class="mt-3">
|
||||
|
||||
@ -2,8 +2,8 @@
|
||||
<div v-if="show" class="form-container">
|
||||
<form @submit.prevent="submit">
|
||||
<div>
|
||||
<object width="64" height="64" data="/icon.svg" />
|
||||
<div style="font-size: 28px; font-weight: bold; margin-top: 5px">Uptime Kuma</div>
|
||||
<img width="64" height="64" src="/logo.png" alt="PSS Uptime Logo" />
|
||||
<div style="font-size: 28px; font-weight: bold; margin-top: 5px">PSS Uptime</div>
|
||||
</div>
|
||||
|
||||
<div v-if="info.runningSetup" class="mt-5">
|
||||
|
||||
@ -64,6 +64,20 @@
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<!-- Logo URL Input -->
|
||||
<div class="my-3">
|
||||
<label for="logo-url" class="form-label">{{ $t("Logo URL") }}</label>
|
||||
<input
|
||||
id="logo-url"
|
||||
v-model="imgDataUrl"
|
||||
type="text"
|
||||
class="form-control"
|
||||
placeholder="/logo.png or data:image/..."
|
||||
data-testid="logo-url-input"
|
||||
/>
|
||||
<div class="form-text">{{ $t("Enter a logo URL (e.g., /logo.png) or upload using the logo above") }}</div>
|
||||
</div>
|
||||
|
||||
<div class="my-3 form-check form-switch">
|
||||
<input
|
||||
id="showTags"
|
||||
@ -261,7 +275,6 @@
|
||||
:width="128"
|
||||
:height="128"
|
||||
:langType="$i18n.locale"
|
||||
img-format="png"
|
||||
:noCircle="true"
|
||||
:noSquare="false"
|
||||
@crop-success="cropSuccess"
|
||||
@ -569,7 +582,7 @@
|
||||
<p v-if="config.showPoweredBy" data-testid="powered-by">
|
||||
{{ $t("Powered by") }}
|
||||
<a target="_blank" rel="noopener noreferrer" href="https://github.com/louislam/uptime-kuma">
|
||||
{{ $t("Uptime Kuma") }}
|
||||
{{ $t("PSS Uptime") }}
|
||||
</a>
|
||||
</p>
|
||||
|
||||
@ -685,7 +698,7 @@ export default {
|
||||
incident: null,
|
||||
previousIncident: null,
|
||||
showImageCropUpload: false,
|
||||
imgDataUrl: "/icon.svg",
|
||||
imgDataUrl: "/logo.png",
|
||||
loadedTheme: false,
|
||||
loadedData: false,
|
||||
baseURL: "",
|
||||
@ -1200,7 +1213,7 @@ export default {
|
||||
},
|
||||
|
||||
/**
|
||||
* Reset logo image to default (public/icon.svg)
|
||||
* Reset logo image to default (public/logo.png)
|
||||
* @returns {void}
|
||||
*/
|
||||
resetToDefaultImage() {
|
||||
@ -1208,7 +1221,7 @@ export default {
|
||||
return;
|
||||
}
|
||||
|
||||
this.imgDataUrl = "/icon.svg";
|
||||
this.imgDataUrl = "/logo.png";
|
||||
this.config.icon = this.imgDataUrl;
|
||||
toast.success(this.$t("imageResetConfirmation"));
|
||||
},
|
||||
|
||||
@ -17,7 +17,7 @@ const jsonata = require("jsonata");
|
||||
exports.isDev = process.env.NODE_ENV === "development";
|
||||
exports.isNode = typeof process !== "undefined" && ((_a = process === null || process === void 0 ? void 0 : process.versions) === null || _a === void 0 ? void 0 : _a.node);
|
||||
const dayjs = exports.isNode ? require("dayjs") : dayjs_1.default;
|
||||
exports.appName = "Uptime Kuma";
|
||||
exports.appName = "PSS Uptime";
|
||||
exports.DOWN = 0;
|
||||
exports.UP = 1;
|
||||
exports.PENDING = 2;
|
||||
|
||||
@ -28,7 +28,7 @@ export const isNode = typeof process !== "undefined" && process?.versions?.node;
|
||||
*/
|
||||
const dayjs = isNode ? require("dayjs") : dayjsFrontend;
|
||||
|
||||
export const appName = "Uptime Kuma";
|
||||
export const appName = "PSS Uptime";
|
||||
export const DOWN = 0;
|
||||
export const UP = 1;
|
||||
export const PENDING = 2;
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import { test } from "@playwright/test";
|
||||
import { getSqliteDatabaseExists, login, screenshot, takeSqliteSnapshot } from "../util-test";
|
||||
|
||||
test.describe("Uptime Kuma Setup", () => {
|
||||
test.describe("PSS Uptime Setup", () => {
|
||||
test.skip(() => getSqliteDatabaseExists(), "Must only run once per session");
|
||||
|
||||
test.afterEach(async ({ page }, testInfo) => {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user