Compare commits
26 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 64390441a1 | |||
| c8095755b5 | |||
| e1000ce0db | |||
| c5d67ad79b | |||
| 80d0f0b326 | |||
| ebba068098 | |||
| 8ad3e31f60 | |||
| 5ba57b4b30 | |||
| 4764a3dd72 | |||
| e28e313ec4 | |||
| eabcc55ae5 | |||
| 68dd1eeb56 | |||
| 698c8a9f51 | |||
| 4f10804082 | |||
| e883615f21 | |||
| 378d81bab2 | |||
| d2ca82573e | |||
| 6d530e174a | |||
| bfb01580c6 | |||
| a79e312551 | |||
| b2d1b95f1f | |||
| ada93c0903 | |||
| 2306783e49 | |||
| dc811ec391 | |||
| 6c7cac3b59 | |||
| 51f3556d87 |
@@ -13,6 +13,7 @@ NEXT_PUBLIC_APPLE_APP='https://itunes.apple.com/us/app/wrenchboard/id1435718367?
|
|||||||
NEXT_PUBLIC_FACEBOOK_LINK='https://www.facebook.com/wrenchboard'
|
NEXT_PUBLIC_FACEBOOK_LINK='https://www.facebook.com/wrenchboard'
|
||||||
NEXT_PUBLIC_TWITTER_LINK='https://twitter.com/wrenchboard/'
|
NEXT_PUBLIC_TWITTER_LINK='https://twitter.com/wrenchboard/'
|
||||||
NEXT_PUBLIC_LINKEDIN_LINK="https://www.linkedin.com/company/wrenchboard/"
|
NEXT_PUBLIC_LINKEDIN_LINK="https://www.linkedin.com/company/wrenchboard/"
|
||||||
|
NEXT_PUBLIC_YOUTUBE_LINK="https://www.youtube.com/@WrenchBoard/"
|
||||||
NEXT_PUBLIC_SUPPORT_EMAIL='support@wrenchboard.com'
|
NEXT_PUBLIC_SUPPORT_EMAIL='support@wrenchboard.com'
|
||||||
NEXT_PUBLIC_SUPPORT_PHONE='404 855-7966'
|
NEXT_PUBLIC_SUPPORT_PHONE='404 855-7966'
|
||||||
NEXT_PUBLIC_SUPPORT_PHONE_NG='(+420) 336 476 328'
|
NEXT_PUBLIC_SUPPORT_PHONE_NG='(+420) 336 476 328'
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
APP_PORT=9081
|
APP_PORT=9081
|
||||||
ESLINT_NO_DEV_ERRORS=true
|
ESLINT_NO_DEV_ERRORS=true
|
||||||
|
|
||||||
NEXT_PUBLIC_AUX_ENDPOINT="https://apigate.lotus.g1.wrenchboard.com/en/wrench/api/v1"
|
NEXT_PUBLIC_AUX_ENDPOINT="https://apigate.nebula.g1.wrenchboard.com/en/wrench/api/v1"
|
||||||
NEXT_PUBLIC_USERS_ENDPOINT="https://apigate.lotus.g1.wrenchboard.com/en/wrench/api/v1"
|
NEXT_PUBLIC_USERS_ENDPOINT="https://apigate.nebula.g1.wrenchboard.com/en/wrench/api/v1"
|
||||||
|
|
||||||
NEXT_PUBLIC_SITE_NAME='WrenchBoard'
|
NEXT_PUBLIC_SITE_NAME='WrenchBoard'
|
||||||
NEXT_PUBLIC_DASH_URL='https://users.wrenchboard.com'
|
NEXT_PUBLIC_DASH_URL='https://users.wrenchboard.com'
|
||||||
|
|||||||
@@ -6809,6 +6809,31 @@ blockquote cite {
|
|||||||
border-color: #db0f30;
|
border-color: #db0f30;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.refer-container a {
|
||||||
|
position: relative;
|
||||||
|
padding-left: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.refer-container a::before{
|
||||||
|
content: "■";
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
left: 0px;
|
||||||
|
font-size: 12px;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.refer-container a {
|
||||||
|
border: none;
|
||||||
|
color: #505056;
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
.refer-container a:hover {
|
||||||
|
color: #4687ba;
|
||||||
|
background-color: transparent;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
/*===========================
|
/*===========================
|
||||||
12.APPIE COUNTER css
|
12.APPIE COUNTER css
|
||||||
===========================*/
|
===========================*/
|
||||||
|
|||||||
@@ -1,36 +1,44 @@
|
|||||||
"use client"
|
"use client";
|
||||||
import React, { useEffect, useState } from 'react'
|
import React, { useLayoutEffect, useState } from 'react';
|
||||||
import Cookies from 'js-cookie'
|
|
||||||
|
|
||||||
export default function AcceptCookies() {
|
export default function AcceptCookies() {
|
||||||
const [cookies, setCookies] = useState(true)
|
// Safe cookie getter
|
||||||
|
function getCookie(name) {
|
||||||
const acceptCookies = () => {
|
if (typeof document === 'undefined') return null; // SSR safety
|
||||||
Cookies.set('useCookies', 'true')
|
const value = `; ${document.cookie}`;
|
||||||
setCookies(true)
|
const parts = value.split(`; ${name}=`);
|
||||||
}
|
if (parts.length === 2) return parts.pop().split(';').shift();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
useEffect(()=>{
|
const [cookies, setCookies] = useState(true); // Start as true
|
||||||
const useCookies = Cookies.get('useCookies')
|
|
||||||
if(useCookies == 'true'){
|
const acceptCookies = () => {
|
||||||
setCookies(true)
|
document.cookie = `use_cookies=${encodeURIComponent('true')}; path=/; max-age=31536000`; // 1 year
|
||||||
|
setCookies(true);
|
||||||
|
};
|
||||||
|
|
||||||
|
useLayoutEffect(()=>{
|
||||||
|
const useCookies = getCookie('use_cookies');
|
||||||
|
if (useCookies && decodeURIComponent(useCookies) === 'true') {
|
||||||
|
setCookies(true);
|
||||||
}else{
|
}else{
|
||||||
setCookies(false)
|
setCookies(false)
|
||||||
}
|
}
|
||||||
},[])
|
},[])
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
{/* {cookies ?
|
{cookies ? <></> : (
|
||||||
<></>
|
|
||||||
: */}
|
|
||||||
<div className={`${cookies ? 'slide-down' : 'slide-up'} cookies-wrapper position-fixed d-lg-flex justify-content-center align-items-center gap-5 p-2`}>
|
<div className={`${cookies ? 'slide-down' : 'slide-up'} cookies-wrapper position-fixed d-lg-flex justify-content-center align-items-center gap-5 p-2`}>
|
||||||
<p className='m-0'>
|
<p className="m-0">
|
||||||
This website uses cookies to provide you the best experience possible, as well as for tracking performance and marketing purposes. You can check our privacy policy for more information. By clicking ❛❛Confirm❜❜ or by continuing to use our website, you consent to our use of cookies.
|
This website uses cookies to provide you the best experience possible, as well as for tracking performance and marketing purposes. You can check our privacy policy for more information. By clicking ❛❛Confirm❜❜ or by continuing to use our website, you consent to our use of cookies.
|
||||||
</p>
|
</p>
|
||||||
<button onClick={acceptCookies} className='px-5 py-2'>Accept</button>
|
<button onClick={acceptCookies} className="px-5 py-2">
|
||||||
|
Accept
|
||||||
|
</button>
|
||||||
</div>
|
</div>
|
||||||
{/* } */}
|
)}
|
||||||
</>
|
</>
|
||||||
)
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,21 +31,25 @@ function FooterHomeOne({ className }) {
|
|||||||
<Link href="/service">
|
<Link href="/service">
|
||||||
Read More <i className="fal fa-arrow-right" />
|
Read More <i className="fal fa-arrow-right" />
|
||||||
</Link>
|
</Link>
|
||||||
<div className="social mt-30">
|
{/* <div className="social mt-30">
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
<a href={site.facebook_link}>
|
<a target='_blank' href={site.facebook_link}>
|
||||||
<i className="fab fa-facebook-f" />
|
<i className="fab fa-facebook-f"/>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href={process.env.NEXT_PUBLIC_TWITTER_LINK}>
|
<a target='_blank' href={process.env.NEXT_PUBLIC_TWITTER_LINK}>
|
||||||
{/* <i className="fab fa-twitter" /> */}
|
|
||||||
<i className="fab fa-x-twitter"></i>
|
<i className="fab fa-x-twitter"></i>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<a target='_blank' className="you" href={process.env.NEXT_PUBLIC_YOUTUBE_LINK}>
|
||||||
|
<i className="fab fa-youtube"></i>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div> */}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className="col-lg-2 col-md-6">
|
<div className="col-lg-2 col-md-6">
|
||||||
@@ -79,7 +83,7 @@ function FooterHomeOne({ className }) {
|
|||||||
<Link href="/contact">Contact</Link>
|
<Link href="/contact">Contact</Link>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<Link href="/faq">Faqs</Link>
|
<Link href="/faq">FAQs</Link>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a href="https://blog.wrenchboard.com/resources/">Resources</a>
|
<a href="https://blog.wrenchboard.com/resources/">Resources</a>
|
||||||
@@ -102,7 +106,7 @@ function FooterHomeOne({ className }) {
|
|||||||
<i className="fal fa-envelope" /> {site.support_email}
|
<i className="fal fa-envelope" /> {site.support_email}
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
{/* <li>
|
||||||
<a href="#">
|
<a href="#">
|
||||||
<i className="fal fa-phone" /> 404-855-7966
|
<i className="fal fa-phone" /> 404-855-7966
|
||||||
</a>
|
</a>
|
||||||
@@ -111,9 +115,30 @@ function FooterHomeOne({ className }) {
|
|||||||
<a href="#">
|
<a href="#">
|
||||||
<i className="fal fa-map-marker-alt" />Atlanta, GA 30339
|
<i className="fal fa-map-marker-alt" />Atlanta, GA 30339
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li> */}
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
<div className='footer-about-widget'>
|
||||||
|
<div className="social mt-30">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<a target='_blank' href={site.facebook_link}>
|
||||||
|
<i className="fab fa-facebook-f"/>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a target='_blank' href={process.env.NEXT_PUBLIC_TWITTER_LINK}>
|
||||||
|
<i className="fab fa-x-twitter"></i>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a target='_blank' className="you" href={process.env.NEXT_PUBLIC_YOUTUBE_LINK}>
|
||||||
|
<i className="fab fa-youtube"></i>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className="row">
|
<div className="row">
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ function HeroHomeOne() {
|
|||||||
Turn Chores into Exciting Challenges and Earn <span className='earn-rewards px-2'>Rewards!</span>
|
Turn Chores into Exciting Challenges and Earn <span className='earn-rewards px-2'>Rewards!</span>
|
||||||
</h1>
|
</h1>
|
||||||
<p>Your place to set family goals and reward achievements. Find tasks to earn from, or build a task portfolio and find others to perform tasks for you.</p>
|
<p>Your place to set family goals and reward achievements. Find tasks to earn from, or build a task portfolio and find others to perform tasks for you.</p>
|
||||||
<ul className='d-flex justify-content-center justify-content-lg-start'>
|
<ul className='d-sm-flex justify-content-center justify-content-lg-start'>
|
||||||
<li className=''>
|
<li className=''>
|
||||||
<a className="item-2" target='_blank' href={process.env.NEXT_PUBLIC_APPLE_APP}>
|
<a className="item-2" target='_blank' href={process.env.NEXT_PUBLIC_APPLE_APP}>
|
||||||
<i className="fab fa-apple"></i>
|
<i className="fab fa-apple"></i>
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ export default function RootLayout({
|
|||||||
{children}
|
{children}
|
||||||
<AcceptCookies />
|
<AcceptCookies />
|
||||||
</body>
|
</body>
|
||||||
<Script id='chat-support'>
|
{/* <Script id='chat-support'>
|
||||||
{`
|
{`
|
||||||
var LHC_API = LHC_API || {};
|
var LHC_API = LHC_API || {};
|
||||||
LHC_API.args = {
|
LHC_API.args = {
|
||||||
@@ -62,7 +62,7 @@ export default function RootLayout({
|
|||||||
s.parentNode.insertBefore(po, s);
|
s.parentNode.insertBefore(po, s);
|
||||||
})();
|
})();
|
||||||
`}
|
`}
|
||||||
</Script>
|
</Script> */}
|
||||||
</html>
|
</html>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,106 @@
|
|||||||
|
"use client"
|
||||||
|
import React from 'react';
|
||||||
|
import Image from 'next/image';
|
||||||
|
import { useParams } from 'next/navigation';
|
||||||
|
|
||||||
|
import cardImg from '../assets/images/home/wrench-card-only.png'
|
||||||
|
import wrenchAgent from '../assets/images/home/wrench-agent.png'
|
||||||
|
import Link from 'next/link';
|
||||||
|
// import bg from '../assets/images/background-bg.jpg'
|
||||||
|
|
||||||
|
function Hero() {
|
||||||
|
const {refer_link} = useParams()
|
||||||
|
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<section className="appie-about-8-area pt-50 pb-70">
|
||||||
|
<div className="container">
|
||||||
|
<div className="row">
|
||||||
|
<div className="col-lg-12">
|
||||||
|
<div className="appie-section-title">
|
||||||
|
<h3 className="appie-title">
|
||||||
|
{/* We bring everything <br />
|
||||||
|
that's required to build apps */}
|
||||||
|
Join WrenchBoard and Start Earning
|
||||||
|
</h3>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="row">
|
||||||
|
<div className="col-lg-7 mb-3 mb-lg-0">
|
||||||
|
<div className='appie-about-container'>
|
||||||
|
<div className='row appie-about-8-box'>
|
||||||
|
<div className="col-12 col-md-6">
|
||||||
|
<h3 className="title">
|
||||||
|
Get Reward for Accomplishments
|
||||||
|
</h3>
|
||||||
|
<p>
|
||||||
|
On WrenchBoard, set goals, tasks, or anything else that motivates or needs to be done, and reward completion. WrenchBoard is the platform for planning rewards, engaging, and connecting with family.
|
||||||
|
</p>
|
||||||
|
<div className=''>
|
||||||
|
<a className="mb-5 mb-md-0 main-btn" href={`${process.env.NEXT_PUBLIC_DASH_URL}/myrefer/${refer_link}`}>
|
||||||
|
Get Started <i className="fal fa-arrow-right" />
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="col-12 col-md-6">
|
||||||
|
<Image
|
||||||
|
src={cardImg}
|
||||||
|
className='w-100 h-100'
|
||||||
|
width={'100'}
|
||||||
|
height={'100'}
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="col-lg-5">
|
||||||
|
<div className='appie-about-container'>
|
||||||
|
<div className='h-100 row appie-about-8-box'>
|
||||||
|
<div className="col-12 col-md-6">
|
||||||
|
<div className='h-100 d-flex flex-column gap-5'>
|
||||||
|
<h3 className="title">
|
||||||
|
Learn more...
|
||||||
|
</h3>
|
||||||
|
<ul className='refer-container'>
|
||||||
|
<li>
|
||||||
|
<Link href="/about-us">About WrenchBoard</Link>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<Link href="/use-cases">Use Cases</Link>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<Link href="/service">Services</Link>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<Link href="/faq">FAQ</Link>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<div className='d-none'>
|
||||||
|
<a className="mb-5 mb-md-0 main-btn" href={`${process.env.NEXT_PUBLIC_DASH_URL}/myrefer/${refer_link}`}>
|
||||||
|
Get Started <i className="fal fa-arrow-right" />
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className="col-12 col-md-6">
|
||||||
|
<Image
|
||||||
|
src={wrenchAgent}
|
||||||
|
className='w-100 h-auto'
|
||||||
|
width={'100'}
|
||||||
|
height={'100'}
|
||||||
|
alt=""
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
export default Hero;
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
import React from 'react'
|
||||||
|
import HomeNav from '../../components/navigation/HomeNav';
|
||||||
|
import Hero from '../Hero';
|
||||||
|
import FooterHomeOne from '../../components/FooterHomeOne';
|
||||||
|
import BackToTop from '../../components/BackToTop';
|
||||||
|
|
||||||
|
// must be a better way to centralize the style = TEMPORARY USE
|
||||||
|
import '../../assets/css/bootstrap.min.css';
|
||||||
|
import '../../assets/css/custom-animated.css';
|
||||||
|
import '../../assets/css/default.css';
|
||||||
|
import '../../assets/css/font-awesome.min.css';
|
||||||
|
import '../../assets/css/magnific-popup.css';
|
||||||
|
import '../../assets/css/main.css';
|
||||||
|
import '../../assets/css/style.css';
|
||||||
|
|
||||||
|
export default function page() {
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
{/* <HomeNav />
|
||||||
|
<div className='' style={{paddingTop:'100px'}}></div> */}
|
||||||
|
<Hero />
|
||||||
|
<FooterHomeOne className={''} />
|
||||||
|
<BackToTop className='' />
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -11,7 +11,6 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"axios": "^1.7.2",
|
"axios": "^1.7.2",
|
||||||
"caniuse-lite": "^1.0.30001651",
|
"caniuse-lite": "^1.0.30001651",
|
||||||
"js-cookie": "^3.0.5",
|
|
||||||
"next": "14.2.5",
|
"next": "14.2.5",
|
||||||
"react": "^18",
|
"react": "^18",
|
||||||
"react-dom": "^18",
|
"react-dom": "^18",
|
||||||
|
|||||||
|
After Width: | Height: | Size: 80 KiB |
|
After Width: | Height: | Size: 125 KiB |
|
Before Width: | Height: | Size: 125 KiB After Width: | Height: | Size: 37 KiB |
|
After Width: | Height: | Size: 88 KiB |
|
After Width: | Height: | Size: 116 KiB |
|
After Width: | Height: | Size: 245 KiB |
|
After Width: | Height: | Size: 110 KiB |
|
After Width: | Height: | Size: 270 KiB |
|
After Width: | Height: | Size: 290 KiB |
|
After Width: | Height: | Size: 8.3 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 13 KiB |