Compare commits

...

4 Commits

11 changed files with 317 additions and 774 deletions
+1 -1
View File
@@ -8,4 +8,4 @@ REACT_APP_APIGATE='http://float-gat.dev.chiefsoft.net'
REACT_APP_APPLE_LINK='https://apps.apple.com/us/app/float-mobility/id1465369130'
REACT_APP_GOOGLE_PLAY_LINK='https://apps.apple.com/us/app/float-mobility/id1465369130'
REACT_APP_AUX_ENDPOINT='https://float-gat.dev.chiefsoft.net/en/floatweb/api/v1/'
REACT_APP_AUX_ENDPOINT='https://float-gat.dev.chiefsoft.net/en/floatweb/api/v1/'
+23 -5
View File
@@ -26,21 +26,39 @@ import SiteService from "./svs/SiteService";
function App() {
const [blogData, setBlogData] = useState([]) // for holding
const [faqData, setFaqData] = useState([]) // for holding
const siteApi = new SiteService(); // instantiating the API SERVICE
const getBlogData = async () => {
try {
const res = await siteApi.blogData();
if(res.status == 200 /* && res.data.status > 0*/){
console.log(res.data.payload);
console.log(res.data.payload, res.data);
setBlogData(res.data)
return
}
}catch(error) {
setBlogData({payload: {blogdata: []}})
}
};
const getFaqData = async () => {
try {
const res = await siteApi.faqData();
if(res.status == 200 /* && res.data.status > 0*/){
let data = await res.data
console.log(data);
setFaqData(data)
return
}
} catch (error) {
console.log(error)
}
}
useEffect(() => {
getBlogData();
getFaqData();
}, []);
return (
@@ -48,9 +66,9 @@ function App() {
<Header/>
<Routes>
<Route path="/" element={<FloatHome blogData={blogData} />} />
<Route path="/" element={<FloatHome blogData={blogData} faqData={faqData} />} />
<Route path="/about" element={<About/>} />
<Route path="/faqs" element={<Faqs/>} />
<Route path="/faqs" element={<Faqs faqData={faqData}/>} />
<Route path="/features" element={<Features/>} />
<Route path="/pricing" element={<Pricing/>} />
<Route path="/reviews" element={<Reviews/>} />
@@ -61,10 +79,10 @@ function App() {
<Route path="/blog_listing" element={<Blog_listing/>} />
<Route path="/blogs" element={<Blog_listing blogData={blogData} />} />
<Route path="/contacts" element={<Contacts/>} />
<Route path="/users" element={<Users/>} />
<Route path="/users" element={<Users blogData={blogData} />} />
<Route path="/business" element={<Fleet/>} />
<Route path="/privacy" element={<Privacy/>} />
<Route path="/getstarted" element={<GetStarted />} />
<Route path="/getstarted" element={<GetStarted blogData={blogData} />} />
<Route path="/findev" element={<FindEv />} />
<Route path="/findmobility" element={<FindMobility />} />
</Routes>
+109
View File
@@ -0,0 +1,109 @@
import React from 'react'
import { useLocation } from 'react-router-dom'
// import SiteService from '../svs/SiteService';
const BlogItems = ({blogData}) => {
let location = useLocation().pathname
// const [blogData, setBlogData] = useState({}) // for holding blogs
// console.log(blogData.payload)
// const blogApi = new SiteService(); // instantiating the API SERVICE
// const getBlogData = async () => {
// try {
// const res = await blogApi.blogData();
// if(res.status == 200 /* && res.data.status > 0*/){
// console.log('blogitem',res.data.payload, res.data);
// setBlogData(res.data)
// return
// }
// }catch(error) {
// }
// };
// useEffect(() => {
// getBlogData();
// }, []);
return (
<div className="row">
{
blogData?.payload == undefined ? // API CALL IN PROGRESS
<div className='col-12 text-center display-4'>Loading...</div>
:
// API CALL FINISHED
(
blogData?.payload?.blogdata.length < 1 ?
<div className='col-12 text-center display-4'>No Blog Currently Found!</div>
:
blogData?.payload?.blogdata.map((blog, index) => {
if(location == '/blogs'){
return(
<div key={index} id="b-post-1" className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.4s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img rounded">
<img className="img-fluid rounded" src="assets/images/blog/post-1-img.jpg" alt="blog-post-image" />
{/* <img className="img-fluid" src={blog.meta_value} alt="blog-post-image" /> */}
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Float News</p>
{/* Post Link */}
<h5 className="h5-sm">
<a href="single-post.html">{blog.post_title.substring(0,40)+' . . .'}</a>
</h5>
{/* Text */}
<div dangerouslySetInnerHTML={{__html: blog.post_content.substring(0,50)+' . . .'}}></div>
{/* <p className="p-md">Aliqum mullam blandit vitae tempor sapien a donec lipsum gravida porta velna dolor vitae auctor
congue
</p> */}
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>12 min read</p>
</div>
</div>
</div>
</div>
)
}else if (location != 'blogs' && index <= 5) {
return (
<div key={index} id="b-post-1" className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.4s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img rounded">
<img className="img-fluid rounded" src="assets/images/blog/post-1-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Float News</p>
{/* Post Link */}
<h5 className="h5-sm">
<a href="single-post.html">{blog.post_title.substring(0,40)+' . . .'}</a>
</h5>
{/* Text */}
<div dangerouslySetInnerHTML={{__html: blog.post_content.substring(0,50)+' . . .'}}></div>
{/* <p className="p-md">Aliqum mullam blandit vitae tempor sapien a donec lipsum gravida porta velna dolor vitae auctor
congue
</p> */}
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>12 min read</p>
</div>
</div>
</div>
</div>
)
}
})
)
}
</div>
)
}
export default BlogItems
+3 -166
View File
@@ -1,4 +1,5 @@
import React, {Component,useState, useEffect} from 'react';
import BlogItems from '../components/BlogItems';
import SiteService from "../svs/SiteService";
class Blog_listing extends React.Component {
@@ -89,172 +90,8 @@ class Blog_listing extends React.Component {
<h5 className="h5-lg posts-category">Latest Articles</h5>
</div>
</div>
<div className="row">
{/* BLOG POST #1 */}
<div className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.4s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-2-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">NordEx News</p>
{/* Post Link */}
<h5 className="h5-xs">
<a href="single-post.html">Tempor sapien donec gravida ipsum a porta justo vitae</a>
</h5>
{/* Text */}
<p className="p-md">Aliqum mullam blandit vitae and tempor sapien and donec lipsum gravida
porta undo velna dolor
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>12 min read</p>
</div>
</div>
</div>
</div> {/* END BLOG POST #1 */}
{/* BLOG POST #2 */}
<div className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.6s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-3-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Inspiration</p>
{/* Post Link */}
<h5 className="h5-xs">
<a href="single-post.html">Aliquam augue impedit luctus neque purus an ipsum neque and dolor libero risus</a>
</h5>
{/* Text */}
<p className="p-md">The aliqum mullam vitae tempor sapien and donec lipsum gravida porta velna
dolor vitae auctor
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>8 min read</p>
</div>
</div> {/* END BLOG POST TEXT */}
</div>
</div> {/* END BLOG POST #2 */}
{/* BLOG POST #3 */}
<div className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.8s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-4-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Tutorials</p>
{/* Post Link */}
<h5 className="h5-xs">
<a href="single-post.html">Tempor sapien donec gravida ipsum and porta justo</a>
</h5>
{/* Text */}
<p className="p-md">The aliqum mullam vitae tempor sapien and donec lipsum gravida porta velna
dolor vitae auctor
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>22 min read</p>
</div>
</div> {/* END BLOG POST TEXT */}
</div>
</div> {/* END BLOG POST #3 */}
{/* BLOG POST #4 */}
<div className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.4s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-5-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Extensions</p>
{/* Post Link */}
<h5 className="h5-xs">
<a href="single-post.html">Neque purus an ipsum neque and dolor libero risus mullam blandit at tempor sapien</a>
</h5>
{/* Text */}
<p className="p-md">The aliqum mullam vitae tempor sapien and donec lipsum gravida porta velna
dolor vitae auctor
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>1 day read</p>
</div>
</div>
</div>
</div> {/* END BLOG POST #4 */}
{/* BLOG POST #5 */}
<div className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.6s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-6-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Community</p>
{/* Post Link */}
<h5 className="h5-xs">
<a href="single-post.html">Tempor sapien donec gravida ipsum a porta justo vitae</a>
</h5>
{/* Text */}
<p className="p-md">The aliqum mullam vitae tempor sapien and donec lipsum gravida porta velna
dolor vitae auctor
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>54 min read</p>
</div>
</div> {/* END BLOG POST TEXT */}
</div>
</div> {/* END BLOG POST #5 */}
{/* BLOG POST #6 */}
<div className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.8s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-7-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Extensions</p>
{/* Post Link */}
<h5 className="h5-xs">
<a href="single-post.html">Lipsum gravida porta velna NordEx, donec gravida ipsum a
porta justo tempor
</a>
</h5>
{/* Text */}
<p className="p-md">The aliqum mullam vitae tempor sapien and donec lipsum gravida porta velna
dolor vitae auctor
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>4 hours read</p>
</div>
</div> {/* END BLOG POST TEXT */}
</div>
</div> {/* END BLOG POST #6 */}
</div> {/* End row */}
<BlogItems blogData={this.props.blogData} />
{/* End row */}
</div> {/* END POSTS WRAPPER */}
</div> {/* End container */}
{/* GEOMETRIC OVERLAY */}
+89 -18
View File
@@ -1,25 +1,94 @@
import React, {Component} from 'react';
import React, {Component, useState, useEffect} from 'react';
import SiteService from '../svs/SiteService';
class Contacts extends React.Component {
class Contacts extends Component {
constructor(props){
super(props)
this.state = {
formData: {
name: '',
email: '',
country: '',
phone: '',
message: ''
},
loading: false,
submitError: null,
submitSuccess: false,
};
}
handleInputChange = (event) => {
const { name, value } = event.target;
this.setState((prevState) => ({
formData: {
...prevState.formData,
[name]: value,
},
}));
};
handleSubmit = async(e) => {
e.preventDefault();
const apiCall = new SiteService();
const { formData } = this.state;
this.setState({ loading: true });
if(!formData.name && !formData.email && !formData.message) return;
console.log(formData)
try {
await apiCall.contactData(formData)
console.log('Success')
this.setState({
formData: {
name: '',
email: '',
country: '',
phone: '',
message: ''
},
loading: false,
submitError: null,
submitSuccess: false,
});
// if(res.status == 200){
// } else {
// throw new Error('Error submitting form');
// }
} catch (error) {
this.setState({
loading: false,
submitSuccess: false,
submitError: error,
});
console.log(error)
}
}
render() {
const {formData, loading, submitError, submitSuccess} = this.state
console.log(submitSuccess)
return(
<div>
{/* PRELOADER SPINNER
============================================= */}
{/* PRELOADER SPINNER */}
<div id="loader-wrapper">
<div id="loading">
<span className="cssload-loader"><span className="cssload-loader-inner" /></span>
</div>
</div>
{/* PAGE CONTENT
============================================= */}
{/* PAGE CONTENT */}
<div id="page" className="page">
{/* HEADER
============================================= */}
{/* CONTACTS-2
============================================= */}
{/* HEADER */}
{/* CONTACTS-2 */}
<section id="contacts-2" className="bg_whitesmoke hero-offset-nav pb-50 contacts-section division">
<div className="container">
{/* SECTION TITLE */}
@@ -39,7 +108,7 @@ class Contacts extends React.Component {
<div className="row">
<div className="col-lg-10 col-xl-8 offset-lg-1 offset-xl-2">
<div className="form-holder">
<form name="contactform" className="row contact-form">
<form name="contactform" className="row contact-form" onSubmit={this.handleSubmit}>
{/* Form Select */}
<div id="input-subject" className="col-md-12 input-subject">
<p className="p-lg">This question is about: </p>
@@ -57,21 +126,23 @@ class Contacts extends React.Component {
<div id="input-name" className="col-md-12">
<p className="p-lg">Your Name: </p>
<span>Please enter your real name: </span>
<input type="text" name="name" className="form-control name" placeholder="Your Name*" />
<input type="text" name="name" className="form-control name" placeholder="Your Name*" value={formData.name} onChange={this.handleInputChange} />
</div>
<div id="input-email" className="col-md-12">
<p className="p-lg">Your Email Address: </p>
<span>Please carefully check your email address for accuracy</span>
<input type="text" name="email" className="form-control email" placeholder="Email Address*" />
<input type="text" name="email" className="form-control email" placeholder="Email Address*" value={formData.email} onChange={this.handleInputChange} />
</div>
<div id="input-message" className="col-md-12 input-message">
<p className="p-lg">Explain your question in details: </p>
<span>Your OS version, NordEx version &amp; build, steps you did. Be VERY precise!</span>
<textarea className="form-control message" name="message" rows={6} placeholder="I have a problem with..." defaultValue={""} />
<span>Your OS version, steps you did. Be VERY precise!</span>
<textarea className="form-control message" name="message" rows={6} placeholder="I have a problem with..." value={formData.message} onChange={this.handleInputChange} />
</div>
{/* Contact Form Button */}
<div className="col-md-12 mt-15 form-btn text-right">
<button type="submit" className="btn btn-skyblue tra-skyblue-hover submit">Submit Request</button>
<button type="submit" className="btn btn-skyblue tra-skyblue-hover submit" disabled={loading}>
{loading ? 'Submitting...' : 'Submit Request'}
</button>
</div>
{/* Contact Form Message */}
<div className="col-lg-12 contact-form-msg">
+27 -139
View File
@@ -1,36 +1,12 @@
import React, {Component} from 'react';
import SiteService from './assests/utils/SiteService';
import React, {Component, useState} from 'react';
class Faqs extends Component {
constructor({data, loading, error}){
super({data, loading, error})
this.state = {
data: null,
loading: true,
error: null
}
constructor(props){
super(props)
}
async componentDidMount() {
const apiCall = new SiteService
try {
const data = await apiCall.faqData();
this.setState = {
data: data,
loading: false
}
} catch (error) {
this.setState = {
error: error,
loading: false
}
}
}
render() {
const {data, loading, error} = this.state
console.log(data)
console.log(error)
const data = this.props.faqData
return(
<div>
{/* PRELOADER SPINNER */}
@@ -64,128 +40,40 @@ class Faqs extends Component {
{/* QUESTIONS HOLDER */}
<div className="col-lg-6">
<div className="questions-holder pc-10">
{/* QUESTION #1 */}
<div className="question wow fadeInUp" data-wow-delay="0.4s">
{data.map((item, idx) => {
let delay = 0.2
if(idx % 2 === 0){
delay *= Math.floor(idx / 2); // multiply delay by 2 for every odd idx
return (
<div className="question wow fadeInUp" data-wow-delay={delay} key={idx}>
{/* Question */}
<h5 className="h5-sm">How do I get started?</h5>
<h5 className="h5-sm">{item.title}</h5>
{/* Answer */}
<ul className="simple-list">
<li className="list-item">
<p className="p-lg">Fringilla risus, luctus mauris orci auctor purus</p>
</li>
<li className="list-item">
<p className="p-lg">Quaerat sodales sapien euismod blandit purus and ipsum primis in cubilia laoreet
augue luctus
</p>
</li>
</ul>
<p className="p-lg">{item.text}</p>
</div>
{/* QUESTION #2 */}
<div className="question wow fadeInUp" data-wow-delay="0.6s">
{/* Question */}
<h5 className="h5-sm">Can I see Float in action before purchasing it?</h5>
{/* Answer */}
<p className="p-lg">Etiam amet mauris suscipit in odio integer congue metus vitae arcu mollis blandit
ultrice ligula egestas and magna suscipit lectus magna suscipit luctus blandit vitae
</p>
</div>
{/* QUESTION #3 */}
<div className="question wow fadeInUp" data-wow-delay="0.8s">
{/* Question */}
<h5 className="h5-sm">What are the requirements for using Float?</h5>
{/* Answer */}
<p className="p-lg">An enim nullam tempor sapien gravida donec ipsum enim an porta justo integer at velna
vitae auctor integer congue undo magna at pretium purus pretium ligula
</p>
</div>
{/* QUESTION #4 */}
<div className="question wow fadeInUp" data-wow-delay="1s">
{/* Question */}
<h5 className="h5-sm">Can I use Float on different devices?</h5>
{/* Answer */}
<ul className="simple-list">
<li className="list-item">
<p className="p-lg">Fringilla risus, luctus mauris orci auctor purus ligula euismod pretium purus
pretium rutrum tempor sapien
</p>
</li>
<li className="list-item">
<p className="p-lg">Nemo ipsam egestas volute turpis dolores ut aliquam quaerat sodales sapien undo
pretium a purus
</p>
</li>
</ul>
</div>
{/* QUESTION #5 */}
<div className="question wow fadeInUp" data-wow-delay="1.2s">
{/* Question */}
<h5 className="h5-sm">Do you have a free trial?</h5>
{/* Answer */}
<p className="p-lg">Cubilia laoreet augue egestas and luctus donec curabite diam vitae dapibus libero and
quisque gravida donec neque. Blandit justo aliquam molestie nunc sapien justo
</p>
</div>
)
}
})}
</div>
</div> {/* END QUESTIONS HOLDER */}
{/* QUESTIONS HOLDER */}
<div className="col-lg-6">
<div className="questions-holder pc-10">
{/* QUESTION #6 */}
<div className="question wow fadeInUp" data-wow-delay="0.4s">
{data.map((item, idx) => {
let delay = 0.2
if(idx % 2 === 1){
delay *= Math.floor(idx / 2); // multiply delay by 2 for every even idx
return (
<div className="question wow fadeInUp" data-wow-delay={delay} key={idx}>
{/* Question */}
<h5 className="h5-sm">Troubles with verification</h5>
<h5 className="h5-sm">{item.title}</h5>
{/* Answer */}
<p className="p-lg">Cubilia laoreet augue egestas and luctus donec curabite diam vitae dapibus libero and
quisque gravida donec neque. Blandit justo aliquam molestie nunc sapien justo
</p>
</div>
{/* QUESTION #7 */}
<div className="question wow fadeInUp" data-wow-delay="0.6s">
{/* Question */}
<h5 className="h5-sm">How does Float handle my privacy?</h5>
{/* Answer */}
<p className="p-lg">Etiam amet mauris suscipit sit amet in odio. Integer congue leo metus. Vitae arcu mollis
blandit ultrice ligula
</p>
{/* Answer */}
<p className="p-lg">An enim nullam tempor sapien gravida donec congue leo metus. Vitae arcu mollis blandit
integer at velna
</p>
</div>
{/* QUESTION #8 */}
<div className="question wow fadeInUp" data-wow-delay="0.8s">
{/* Question */}
<h5 className="h5-sm">I have an issue with my account</h5>
{/* Answer */}
<ul className="simple-list">
<li className="list-item">
<p className="p-lg">Fringilla risus, luctus mauris orci auctor purus</p>
</li>
<li className="list-item">
<p className="p-lg">Quaerat sodales sapien euismod blandit purus and ipsum primis in cubilia laoreet
augue luctus
</p>
</li>
</ul>
</div>
{/* QUESTION #9 */}
<div className="question wow fadeInUp" data-wow-delay="1s">
{/* Question */}
<h5 className="h5-sm">What is the Float Membership?</h5>
{/* Answer */}
<p className="p-lg">Etiam amet mauris suscipit in odio integer congue metus vitae arcu mollis blandit
ultrice ligula egestas and magna suscipit lectus magna suscipit luctus blandit vitae
</p>
<p className="p-lg">{item.text}</p>
</div>
{/* QUESTION #10 */}
<div className="question wow fadeInUp" data-wow-delay="1.2s">
{/* Question */}
<h5 className="h5-sm">How do I cancel my Membership?</h5>
{/* Answer */}
<p className="p-lg">An enim nullam tempor sapien gravida donec ipsum enim an porta justo integer at velna
vitae auctor integer congue undo magna at pretium purus pretium ligula
</p>
</div>
)
}
})}
</div>
</div> {/* END QUESTIONS HOLDER */}
</div> {/* End row */}
+40 -213
View File
@@ -13,6 +13,8 @@ import Analysis from '../pages/assests/images/analytics.ico'
import Monitoring from '../pages/assests/images/monitoring.ico'
import Assistant from '../pages/assests/images/assistant (2).ico'
import BlogItems from '../components/BlogItems';
class FloatHome extends React.Component {
@@ -21,10 +23,12 @@ class FloatHome extends React.Component {
// Don't call this.setState() here!
// this.state = { counter: 0 };
// this.handleClick = this.handleClick.bind(this);
console.log("OLU-AMEY 22",props.blogData);
// console.log("OLU-AMEY 22",props.blogData);
}
render() {
const faqData = this.props.faqData
console.log(faqData)
return(
<div>
{/* PRELOADER SPINNER ============================================= */}
@@ -880,114 +884,49 @@ class FloatHome extends React.Component {
{/* QUESTIONS ACCORDION */}
<div className="col-lg-8">
<div id="accordion" role="tablist" className="pc-20">
{/* QUESTION #1 */}
<div className="card grey-color">
{faqData.map((item, idx) => {
if(idx == 0){
return(
<div className="card grey-color" key={idx}>
{/* Question */}
<div className="card-header" role="tab" id="headingOne">
<h5 className="h5-sm">
<a data-toggle="collapse" href="#collapseOne" role="button" aria-expanded="true" aria-controls="collapseOne">
{item.title}
</a>
</h5>
</div>
{/* Answer */}
<div id="collapseOne" className="collapse show" role="tabpanel" aria-labelledby="headingOne" data-parent="#accordion">
<div className="card-body">
{/* Text */}
<p className="p-lg">{item.text}</p>
</div>
</div>
</div>
)
}else{
return(
<div className="card grey-color" key={idx}>
{/* Question */}
<div className="card-header" role="tab" id="headingOne">
<div className="card-header" role="tab" id={`heading${idx}`}>
<h5 className="h5-sm">
<a data-toggle="collapse" href="#collapseOne" role="button" aria-expanded="true" aria-controls="collapseOne">
Can I see Float in action before purchasing it?
<a className="collapsed" data-toggle="collapse" href={`#collapse${idx}`} role="button" aria-expanded="false" aria-controls={`collapse${idx}`}>
{item.title}
</a>
</h5>
</div>
{/* Answer */}
<div id="collapseOne" className="collapse show" role="tabpanel" aria-labelledby="headingOne" data-parent="#accordion">
<div id={`collapse${idx}`} className="collapse" role="tabpanel" aria-labelledby={`heading${idx}`} data-parent="#accordion">
<div className="card-body">
{/* Text */}
<p className="p-lg">Maecenas gravida porttitor quis vehicula magna luctus tempor. Quisque vel laoreet
turpis. Viverra urna augue, a augue dictum tempor. Sed pulvinar nibh consectetur varius viverra.
Laoreet augue ac massa lorem nulla
</p>
<p className="p-lg">{item.text}</p>
</div>
</div>
</div> {/* END QUESTION #1 */}
{/* QUESTION #2 */}
<div className="card grey-color">
{/* Question */}
<div className="card-header" role="tab" id="headingTwo">
<h5 className="h5-sm">
<a className="collapsed" data-toggle="collapse" href="#collapseTwo" role="button" aria-expanded="false" aria-controls="collapseTwo">
Ive got iPhone 5. Is Float compatible with it?
</a>
</h5>
</div>
{/* Answer */}
<div id="collapseTwo" className="collapse" role="tabpanel" aria-labelledby="headingTwo" data-parent="#accordion">
<div className="card-body">
{/* Text */}
<p className="p-lg">Sagittis congue augue egestas volutpat egestas magna suscipit egestas magna ipsum
vitae purus an efficitur ipsum primis in cubilia laoreet augue egestas luctus donec curabitur
dapibus libero tempor
</p>
</div>
</div>
</div> {/* END QUESTION #2 */}
{/* QUESTION #3 */}
<div className="card grey-color">
{/* Question */}
<div className="card-header" role="tab" id="headingThree">
<h5 className="h5-sm">
<a className="collapsed" data-toggle="collapse" href="#collapseThree" role="button" aria-expanded="false" aria-controls="collapseThree">
What are the requirements for using Float?
</a>
</h5>
</div>
{/* Answer */}
<div id="collapseThree" className="collapse" role="tabpanel" aria-labelledby="headingThree" data-parent="#accordion">
<div className="card-body">
{/* Text */}
<p className="p-lg">Sagittis congue augue egestas volutpat egestas magna suscipit egestas and magna
ipsum vitae purus and efficitur ipsum primis in cubilia laoreet
</p>
{/* Text */}
<p className="p-lg">Sapien egestas, congue gestas posuere cubilia congue ipsum mauris lectus laoreet
gestas neque vitae auctor eros dolor luctus placerat a magna cursus congue magna nihil mpedit
ligula sem congue tempor gravida
</p>
</div>
</div>
</div> {/* END QUESTION #3 */}
{/* QUESTION #4 */}
<div className="card grey-color">
{/* Question */}
<div className="card-header" role="tab" id="headingFour">
<h5 className="h5-sm">
<a className="collapsed" data-toggle="collapse" href="#collapseFour" role="button" aria-expanded="false" aria-controls="collapseFour">
How does Float handle my privacy?
</a>
</h5>
</div>
{/* Answer */}
<div id="collapseFour" className="collapse" role="tabpanel" aria-labelledby="headingFour" data-parent="#accordion">
<div className="card-body">
{/* Text */}
<p className="p-lg">An augue cubilia laoreet and magna suscipit egestas magna ipsum purus ipsum primis
and augue ultrice ligula egestas suscipit lectus gestas integer congue a lectus porta tristique phasellus neque blandit and tristique
</p>
</div>
</div>
</div> {/* END QUESTION #4 */}
{/* QUESTION #5 */}
<div className="card last-card grey-color">
{/* Question */}
<div className="card-header" role="tab" id="headingFive">
<h5 className="h5-sm">
<a className="collapsed" data-toggle="collapse" href="#collapseFive" role="button" aria-expanded="false" aria-controls="collapseFive">
How can I cancel my account?
</a>
</h5>
</div>
{/* Answer */}
<div id="collapseFive" className="collapse" role="tabpanel" aria-labelledby="headingFive" data-parent="#accordion">
<div className="card-body">
{/* Text */}
<p className="p-lg">Curabitur ac dapibus libero. Quisque eu congue tristique neque. Phasellus blandit
tristique justo undo aliquam. Aliquam vitae molestie nunc. Quisque sapien justo, aliquet non
molestie sed purus, venenatis sem tempor
</p>
</div>
</div>
</div> {/* END QUESTION #5 */}
</div>
)
}
})}
</div> {/* END ACCORDION */}
{/* MORE QUESTIONS BUTTON */}
<div className="more-questions pc-20 mt-35">
@@ -1049,120 +988,8 @@ class FloatHome extends React.Component {
</div>
</div>
{/* BLOG POSTS */}
<div className="row">
{
this.props.blogData?.blogdata?.map((x) => {
<div id="b-post-1" className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.4s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-1-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Float News</p>
{/* Post Link */}
<h5 className="h5-sm">
<a href="single-post.html">{x.title}</a>
</h5>
{/* Text */}
<p className="p-md">Aliqum mullam blandit vitae tempor sapien a donec lipsum gravida porta velna dolor vitae auctor
congue
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>12 min read</p>
</div>
</div>
</div>
</div>
})
}
{/* BLOG POST #1 */}
<div id="b-post-1" className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.4s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-1-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Float News</p>
{/* Post Link */}
<h5 className="h5-sm">
<a href="single-post.html">Tempor sapien donec gravida ipsum a porta justo vitae</a>
</h5>
{/* Text */}
<p className="p-md">Aliqum mullam blandit vitae tempor sapien a donec lipsum gravida porta velna dolor vitae auctor
congue
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>12 min read</p>
</div>
</div>
</div>
</div> {/* END BLOG POST #1 */}
{/* BLOG POST #2 */}
<div id="b-post-2" className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.6s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-2-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Inspiration</p>
{/* Post Link */}
<h5 className="h5-sm">
<a href="single-post.html">Aliquam augue impedit luctus neque purus an ipsum neque and dolor libero risus</a>
</h5>
{/* Text */}
<p className="p-md">Aliqum mullam blandit vitae tempor sapien a donec lipsum gravida porta velna dolor vitae auctor
congue
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>8 min read</p>
</div>
</div> {/* END BLOG POST TEXT */}
</div>
</div> {/* END BLOG POST #2 */}
{/* BLOG POST #3 */}
<div id="b-post-3" className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.8s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-3-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Tutorials</p>
{/* Post Link */}
<h5 className="h5-sm">
<a href="single-post.html">Tempor sapien Float, donec gravida ipsum a porta justo</a>
</h5>
{/* Text */}
<p className="p-md">Aliqum mullam blandit vitae tempor sapien a donec lipsum gravida porta velna dolor vitae auctor
congue
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>22 min read</p>
</div>
</div> {/* END BLOG POST TEXT */}
</div>
</div> {/* END BLOG POST #3 */}
</div> {/* END BLOG POSTS */}
<BlogItems blogData={this.props.blogData}/>
{/* END BLOG POSTS */}
</div> {/* End container */}
</section> {/* END BLOG-1 */}
{/* DOWNLOAD-5
+13 -85
View File
@@ -4,8 +4,17 @@ import FleetMgr from '../pages/assests/images/multiple-accounts.ico'
import ChargeFinder from '../pages/assests/images/charger-location.ico'
import Options from '../pages/assests/images/options1.ico'
import BlogItems from '../components/BlogItems';
class GetStarted extends React.Component {
constructor(props) {
super(props);
// Don't call this.setState() here!
// this.state = { counter: 0 };
// this.handleClick = this.handleClick.bind(this);
// console.log("OLU-AMEY 22",props.blogData);
}
render() {
return(
<div>
@@ -41,7 +50,7 @@ class GetStarted extends React.Component {
<div className="row">
{/* FEATURE BOX #1 */}
<div id="fb-3-1" className="col-md-6 col-lg-3">
<a href="https://float-usr.dev.chiefsoft.net/" target="_blank"><div className="fbox-3 bg_white wow fadeInUp" data-wow-delay="0.4s">
<a href={process.env.REACT_APP_USERS} target="_blank"><div className="fbox-3 bg_white wow fadeInUp" data-wow-delay="0.4s">
{/* Icon */}
<div className="fbox-3-ico grey-color ico-65"><img src={UserFriendly} /></div>
{/* Title */}
@@ -52,7 +61,7 @@ class GetStarted extends React.Component {
</div>
{/* FEATURE BOX #2 */}
<div id="fb-3-2" className="col-md-6 col-lg-3">
<a href="https://float-flt.dev.chiefsoft.net/" target="_blank"><div className="fbox-3 bg_white wow fadeInUp" data-wow-delay="0.6s">
<a href={process.env.REACT_APP_FLEET} target="_blank"><div className="fbox-3 bg_white wow fadeInUp" data-wow-delay="0.6s">
{/* Icon */}
<div className="fbox-3-ico grey-color ico-65"><img src={FleetMgr} /></div>
{/* Title */}
@@ -359,89 +368,8 @@ class GetStarted extends React.Component {
</div>
</div>
{/* BLOG POSTS */}
<div className="row">
{/* BLOG POST #1 */}
<div id="b-post-1" className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.4s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-1-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Float News</p>
{/* Post Link */}
<h5 className="h5-sm">
<a href="single-post.html">Tempor sapien donec gravida ipsum a porta justo vitae</a>
</h5>
{/* Text */}
<p className="p-md">Aliqum mullam blandit vitae tempor sapien a donec lipsum gravida porta velna dolor vitae auctor
congue
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>12 min read</p>
</div>
</div>
</div>
</div> {/* END BLOG POST #1 */}
{/* BLOG POST #2 */}
<div id="b-post-2" className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.6s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-2-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Inspiration</p>
{/* Post Link */}
<h5 className="h5-sm">
<a href="single-post.html">Aliquam augue impedit luctus neque purus an ipsum neque and dolor libero risus</a>
</h5>
{/* Text */}
<p className="p-md">Aliqum mullam blandit vitae tempor sapien a donec lipsum gravida porta velna dolor vitae auctor
congue
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>8 min read</p>
</div>
</div> {/* END BLOG POST TEXT */}
</div>
</div> {/* END BLOG POST #2 */}
{/* BLOG POST #3 */}
<div id="b-post-3" className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.8s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-3-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Tutorials</p>
{/* Post Link */}
<h5 className="h5-sm">
<a href="single-post.html">Tempor sapien Float, donec gravida ipsum a porta justo</a>
</h5>
{/* Text */}
<p className="p-md">Aliqum mullam blandit vitae tempor sapien a donec lipsum gravida porta velna dolor vitae auctor
congue
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>22 min read</p>
</div>
</div> {/* END BLOG POST TEXT */}
</div>
</div> {/* END BLOG POST #3 */}
</div> {/* END BLOG POSTS */}
<BlogItems blogData={this.props.blogData} />
{/* END BLOG POSTS */}
</div> {/* End container */}
</section> {/* END BLOG-1 */}
{/* NEWSLETTER-1
+11 -83
View File
@@ -10,7 +10,16 @@ import Perks from '../pages/assests/images/perks.ico'
import Charging from '../pages/assests/images/charging-station.ico'
import Fleet from '../pages/assests/images/fleet-signal.ico'
import BlogItems from '../components/BlogItems';
class Users extends React.Component {
constructor(props) {
super(props);
// Don't call this.setState() here!
// this.state = { counter: 0 };
// this.handleClick = this.handleClick.bind(this);
// console.log("OLU-AMEY 22",props.blogData);
}
render() {
return(
<div>
@@ -656,89 +665,8 @@ class Users extends React.Component {
</div>
</div>
{/* BLOG POSTS */}
<div className="row">
{/* BLOG POST #1 */}
<div id="b-post-1" className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.4s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-1-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Float News</p>
{/* Post Link */}
<h5 className="h5-sm">
<a href="single-post.html">Tempor sapien donec gravida ipsum a porta justo vitae</a>
</h5>
{/* Text */}
<p className="p-md">Aliqum mullam blandit vitae tempor sapien a donec lipsum gravida porta velna dolor vitae auctor
congue
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>12 min read</p>
</div>
</div>
</div>
</div> {/* END BLOG POST #1 */}
{/* BLOG POST #2 */}
<div id="b-post-2" className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.6s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-2-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Inspiration</p>
{/* Post Link */}
<h5 className="h5-sm">
<a href="single-post.html">Aliquam augue impedit luctus neque purus an ipsum neque and dolor libero risus</a>
</h5>
{/* Text */}
<p className="p-md">Aliqum mullam blandit vitae tempor sapien a donec lipsum gravida porta velna dolor vitae auctor
congue
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>8 min read</p>
</div>
</div> {/* END BLOG POST TEXT */}
</div>
</div> {/* END BLOG POST #2 */}
{/* BLOG POST #3 */}
<div id="b-post-3" className="col-md-6 col-lg-4">
<div className="blog-post mb-40 wow fadeInUp" data-wow-delay="0.8s">
{/* BLOG POST IMAGE */}
<div className="blog-post-img">
<img className="img-fluid" src="assets/images/blog/post-3-img.jpg" alt="blog-post-image" />
</div>
{/* BLOG POST TEXT */}
<div className="blog-post-txt">
{/* Post Tag */}
<p className="p-md post-tag">Tutorials</p>
{/* Post Link */}
<h5 className="h5-sm">
<a href="single-post.html">Tempor sapien Float, donec gravida ipsum a porta justo</a>
</h5>
{/* Text */}
<p className="p-md">Aliqum mullam blandit vitae tempor sapien a donec lipsum gravida porta velna dolor vitae auctor
congue
</p>
{/* Post Meta */}
<div className="post-meta">
<div className="post-author-avatar"><img src="assets/images/post-author-1.jpg" alt="author-avatar" /></div>
<p>22 min read</p>
</div>
</div> {/* END BLOG POST TEXT */}
</div>
</div> {/* END BLOG POST #3 */}
</div> {/* END BLOG POSTS */}
<BlogItems blogData={this.props.blogData} />
{/* END BLOG POSTS */}
</div> {/* End container */}
</section> {/* END BLOG-1 */}
{/* NEWSLETTER-1
-63
View File
@@ -1,63 +0,0 @@
import axios from 'axios';
class SiteService {
constructor(){
console.log("Launched!!")
}
// GET REQUEST
// Faq Data
faqData(){
return this.getEndPoint("/faq", null)
}
// POST REQUEST
// Contact Data
contactData(){
return this.postEndPoint("/contact")
}
getEndPoint(uri, req){
const endPoint = process.env.REACT_APP_AUX_ENDPOINT + uri;
return axios.get(endPoint)
.then((res) => {
console.log('==> GET REQUEST <==')
console.log(res)
return res
}).catch((err) => {
if (err.response) {
//response status is an error code
console.log(err.response.status);
} else if (err.request) {
//response not received though the request was sent
console.log(err.request);
} else {
//an error occurred when setting up the request
console.log(err.message);
}
})
}
postEndPoint(uri, req){
const endPoint = process.env.REACT_APP_AUX_ENDPOINT + uri;
return axios.get(endPoint, req)
.then((res) => {
console.log(res)
console.log('==> POST REQUEST <==')
return res
}).catch((err) => {
if (err.response) {
//response status is an error code
console.log(err.response.status);
} else if (err.request) {
//response not received though the request was sent
console.log(err.request);
} else {
//an error occurred when setting up the request
console.log(err.message);
}
})
}
}
export default SiteService
+1 -1
View File
@@ -8,7 +8,7 @@ class SiteService {
}
// Blog Data {Get}
blogData() {
return this.getAuxEnd("/blogdata", null);
return this.getAuxEnd("/blogdata/10", null);
}
// Country Data {GET}