2025-05-12 22:56:57 +10:00
<!DOCTYPE html>
2025-05-10 13:53:38 +02:00
< html lang = "en" >
2025-05-12 22:42:14 +10:00
< head >
< meta charset = "UTF-8" />
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" />
< title > Crapfixer Update Check</ title >
< style >
2025-05-15 17:42:36 +02:00
: root {
--bg : #f3f6fd ;
--primary : #0067c0 ;
--text : #1b1b1b ;
--card-bg : #ffffff cc ;
--shadow : 0 8 px 24 px rgba ( 0 , 0 , 0 , 0.1 );
--radius : 20 px ;
}
* {
box-sizing : border-box ;
}
2025-05-12 22:42:14 +10:00
body {
2025-05-15 17:42:36 +02:00
font-family : "Segoe UI Variable" , "Segoe UI" , Tahoma , sans-serif ;
background : linear-gradient ( 145 deg , #ecf0f7 , #f8faff );
color : var ( -- text );
2025-05-12 22:42:14 +10:00
padding : 2 rem ;
2025-05-15 17:42:36 +02:00
margin : 0 ;
display : flex ;
flex-direction : column ;
align-items : center ;
min-height : 100 vh ;
2025-05-12 22:42:14 +10:00
}
2025-05-15 17:42:36 +02:00
2025-05-12 22:42:14 +10:00
h1 {
2025-05-15 17:42:36 +02:00
font-size : 2 rem ;
font-weight : 600 ;
margin-bottom : 1 rem ;
display : flex ;
align-items : center ;
gap : 0.5 rem ;
2025-05-12 22:42:14 +10:00
}
2025-05-15 17:42:36 +02:00
2025-05-12 22:42:14 +10:00
# status {
2025-05-15 17:42:36 +02:00
background : var ( -- card - bg );
backdrop-filter : blur ( 10 px );
padding : 1.5 rem ;
border-radius : var ( -- radius );
box-shadow : var ( -- shadow );
width : 100 % ;
max-width : 500 px ;
font-size : 1.1 rem ;
2025-05-12 22:42:14 +10:00
}
2025-05-15 17:42:36 +02:00
2025-05-12 22:42:14 +10:00
a {
2025-05-15 17:42:36 +02:00
color : var ( -- primary );
2025-05-12 22:42:14 +10:00
text-decoration : none ;
2025-05-15 17:42:36 +02:00
font-weight : 500 ;
2025-05-12 22:42:14 +10:00
}
2025-05-15 17:42:36 +02:00
2025-05-12 22:42:14 +10:00
a : hover {
text-decoration : underline ;
}
2025-05-15 17:42:36 +02:00
2025-05-12 22:42:14 +10:00
. donate {
2025-05-15 17:42:36 +02:00
margin-top : 2 rem ;
padding : 1.5 rem ;
background-color : #e7f5ec ;
border-left : 6 px solid #4caf50 ;
border-radius : var ( -- radius );
box-shadow : var ( -- shadow );
max-width : 500 px ;
width : 100 % ;
2025-05-12 22:42:14 +10:00
}
2025-05-15 17:42:36 +02:00
2025-05-12 22:42:14 +10:00
. donate strong {
display : block ;
2025-05-15 17:42:36 +02:00
font-size : 1.2 rem ;
2025-05-12 22:42:14 +10:00
margin-bottom : 0.5 rem ;
}
2025-05-15 17:42:36 +02:00
2025-05-12 22:42:14 +10:00
. donate a {
2025-05-15 17:42:36 +02:00
margin-top : 1 rem ;
2025-05-12 22:42:14 +10:00
display : inline-block ;
2025-05-15 17:42:36 +02:00
padding : 0.6 rem 1.2 rem ;
background-color : #4caf50 ;
color : white ;
border-radius : 8 px ;
transition : background 0.3 s ease ;
}
. donate a : hover {
background-color : #388e3c ;
2025-05-12 22:42:14 +10:00
}
2025-05-15 17:42:36 +02:00
2025-05-12 22:42:14 +10:00
. project-follow {
2025-05-15 17:42:36 +02:00
margin-top : 2 rem ;
2025-05-12 22:42:14 +10:00
text-align : center ;
}
2025-05-15 17:42:36 +02:00
2025-05-12 22:42:14 +10:00
. project-follow a {
2025-05-15 17:42:36 +02:00
padding : 0.8 rem 1.5 rem ;
background : #24292f ;
2025-05-12 22:42:14 +10:00
color : white ;
2025-05-15 17:42:36 +02:00
border-radius : var ( -- radius );
2025-05-12 22:42:14 +10:00
text-decoration : none ;
2025-05-15 17:42:36 +02:00
font-size : 1 rem ;
transition : background 0.3 s ease ;
display : inline-block ;
2025-05-12 22:42:14 +10:00
}
2025-05-15 17:42:36 +02:00
2025-05-12 22:42:14 +10:00
. project-follow a : hover {
2025-05-15 17:42:36 +02:00
background : #0366d6 ;
}
@ media ( max-width : 600px ) {
body {
padding : 1 rem ;
}
# status ,
. donate {
padding : 1 rem ;
}
2025-05-12 22:42:14 +10:00
}
</ style >
</ head >
< body >
< h1 > 🔍 Crapfixer Update Check</ h1 >
< p id = "status" > Checking version...</ p >
2025-05-10 13:53:38 +02:00
2025-05-12 22:42:14 +10:00
< div class = "donate" >
< strong > 💖 Support Crapfixer</ strong >
2025-05-15 17:42:36 +02:00
Every donation helps me provide more updates. – Thanks, Belim 🙏
2025-05-12 22:42:14 +10:00
< br />< br />
2025-05-15 17:42:36 +02:00
< a href = "https://www.paypal.com/donate/?hosted_button_id=M9DW4VNKH9ECQ" target = "_blank" > 💸 PayPal</ a >
< a href = "https://ko-fi.com/builtbybel" target = "_blank" style = "background-color: #ff5f5f;" > ☕ Ko-fi</ a >
2025-05-12 22:42:14 +10:00
</ div >
2025-05-10 14:22:53 +02:00
2025-05-12 22:42:14 +10:00
< div class = "project-follow" >
2025-05-15 17:42:36 +02:00
< a href = "https://github.com/builtbybel/Crapfixer" target = "_blank" > 🐙 View on GitHub</ a >
2025-05-12 22:42:14 +10:00
</ div >
2025-05-10 13:46:41 +02:00
2025-05-12 22:42:14 +10:00
< script >
2025-05-14 20:53:26 +02:00
const latestVersion = "0.60.190" ;
2025-05-10 13:46:41 +02:00
2025-05-12 22:42:14 +10:00
function compareVersions ( v1 , v2 ) {
const a = v1 . split ( "." ). map ( Number );
const b = v2 . split ( "." ). map ( Number );
for ( let i = 0 ; i < Math . max ( a . length , b . length ); i ++ ) {
if (( a [ i ] || 0 ) < ( b [ i ] || 0 )) return - 1 ;
if (( a [ i ] || 0 ) > ( b [ i ] || 0 )) return 1 ;
}
return 0 ;
2025-05-10 13:46:41 +02:00
}
2025-05-12 22:42:14 +10:00
const params = new URLSearchParams ( window . location . search );
const userVersion = params . get ( "version" );
2025-05-10 13:46:41 +02:00
2025-05-12 22:42:14 +10:00
const status = document . getElementById ( "status" );
2025-05-10 13:46:41 +02:00
2025-05-12 22:42:14 +10:00
if ( ! userVersion ) {
status . innerText =
"❓ No version found. Please open this page from the Crapfixer app." ;
2025-05-10 14:22:53 +02:00
} else {
2025-05-12 22:42:14 +10:00
const result = compareVersions ( userVersion , latestVersion );
if ( result < 0 ) {
status . innerHTML = `⚠️ Your version ( ${ userVersion } ) is outdated.<br><strong>Latest version:</strong> ${ latestVersion } <br><a href="https://github.com/builtbybel/Crapfixer/releases">⬇️ Download here</a>` ;
} else if ( result === 0 ) {
status . innerHTML = `✅ Your version ( ${ userVersion } ) is up to date.` ;
} else {
status . innerHTML = `✅ Your version ( ${ userVersion } ) is newer than the official release ( ${ latestVersion } ).<br><em>Note: You may be using a development build.</em>` ;
}
2025-05-10 14:22:53 +02:00
}
2025-05-12 22:42:14 +10:00
</ script >
</ body >
2025-05-10 13:46:41 +02:00
</ html >