Compare commits
112 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 4bf0a44739 | |||
| 5dbe5f0b5a | |||
| 0f7e2a6bdb | |||
| 07031203ee | |||
| 477f47ef80 | |||
| d81157f5ea | |||
| 01d93f9054 | |||
| ab1618cdab | |||
| bc2e6f36b4 | |||
| 43fa698c43 | |||
| cfa177eaa9 | |||
| 1428ddd925 | |||
| 163a29698f | |||
| f652304468 | |||
| 929a1b316f | |||
| a9f382eef7 | |||
| dfdb881db7 | |||
| 202132e7a5 | |||
| f6c803024c | |||
| b1a0cbab6b | |||
| c2b4273512 | |||
| 3272b60965 | |||
| 4695e934e6 | |||
| dee383efb5 | |||
| 43b79a7aa6 | |||
| 5bc8ef4667 | |||
| cfceddeecc | |||
| 3bbccea32d | |||
| be42244ce7 | |||
| 80711232a3 | |||
| a29fcffc2e | |||
| 5295ad32f2 | |||
| e9044ed10f | |||
| c783cb8926 | |||
| 0b74697fd1 | |||
| c0c71ab005 | |||
| a8711636a2 | |||
| c8a96ccbdc | |||
| d626f28e36 | |||
| e2185c9d1a | |||
| c7e7874d49 | |||
| ef6374e407 | |||
| a69e903785 | |||
| fa2ac7d3d0 | |||
| 300f5f0dab | |||
| 5609bc9c99 | |||
| bddf76320b | |||
| 9da5f450a2 | |||
| 6c1e2072c8 | |||
| 3594000fbe | |||
| 7cbc26a787 | |||
| 2ed1862b53 | |||
| e64d1f84ed | |||
| e383366603 | |||
| 7d9267e268 | |||
| 129c0f1447 | |||
| 7e424c269b | |||
| cfcfaaca05 | |||
| 323ee50705 | |||
| 6ff8f81fb8 | |||
| 360f60c1f2 | |||
| d3500e1640 | |||
| 451190b705 | |||
| ee1bd901b1 | |||
| bb7e745491 | |||
| 9c6f84d3b8 | |||
| 3604da9092 | |||
| 5699af8492 | |||
| 6a35044ee9 | |||
| 376e84ce32 | |||
| 41440b1c66 | |||
| 51b080c2b0 | |||
| a881c75895 | |||
| 731c5041ac | |||
| 9e49493551 | |||
| 0cf92f3529 | |||
| f4fd8c5249 | |||
| d8b1d8b035 | |||
| 72dff33e6f | |||
| cfd416b59a | |||
| ebf4f138a2 | |||
| b5a532d489 | |||
| 304fd79eb8 | |||
| 2862b88961 | |||
| 375058405c | |||
| 1d6f112d58 | |||
| 3d909625d3 | |||
| d1be17ccfa | |||
| 994613a5fa | |||
| 87e42238be | |||
| d4d4ac482f | |||
| a23d05ad82 | |||
| ad3314dceb | |||
| d947a24043 | |||
| 95ecc0d3d8 | |||
| 10f84c5d74 | |||
| 0430e0d27d | |||
| 84a57f5141 | |||
| a8e0a8aa46 | |||
| ea6cefdbae | |||
| 12207f6d1e | |||
| f8c26ead28 | |||
| 825dd284f1 | |||
| ba40756eee | |||
| b2e7d994a4 | |||
| 8ad7d75ff7 | |||
| 44641e816b | |||
| a4a629222c | |||
| e6fcf6e05f | |||
| 98e43ba40f | |||
| fc9ed5e4b5 | |||
| 9bb60fa4e0 |
@@ -0,0 +1,13 @@
|
||||
REACT_APP_APPSITE='http://welcome.float.sg'
|
||||
REACT_APP_EMAIL='support@float.sg'
|
||||
REACT_APP_WWW='http://float-www.dev.chiefsoft.net'
|
||||
REACT_APP_FLEET='http://float-flt.dev.chiefsoft.net'
|
||||
REACT_APP_USERS='http://float-usr.dev.chiefsoft.net'
|
||||
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_IMAGE_LINK='https://blog.float.sg/wp-content/uploads/'
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "wwww-float",
|
||||
"version": "0.2.0",
|
||||
"version": "0.3.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@reduxjs/toolkit": "^1.8.2",
|
||||
|
||||
@@ -738,8 +738,8 @@
|
||||
|
||||
#content-14.aliceblue-shape, #content-14.whitesmoke-shape { padding-top: 80px; }
|
||||
|
||||
.content-section .img-block.left-column, .content-5-img { position: relative; left: -60%; }
|
||||
.content-section .img-block img, .content-5-img img, .content-6-img img { display: inline-block; max-width: none; width: 160%; }
|
||||
/* .content-section .img-block.left-column, .content-5-img { position: relative; left: -60%; } */
|
||||
/* .content-section .img-block img, .content-5-img img, .content-6-img img { display: inline-block; max-width: none; width: 160%; } */
|
||||
.content-12-img { margin-right: 0; margin-bottom: -40px; }
|
||||
|
||||
.cbox-txt { padding-left: 20px; }
|
||||
|
||||
@@ -414,9 +414,10 @@ p {
|
||||
background-attachment: fixed!important;
|
||||
}
|
||||
|
||||
.bg_chat { background-image: url(../images/bg_chat.jpg); background-attachment: scroll!important; }
|
||||
.bg_fit_01 { background-image: url(../images/bg_fit_01.jpg); background-attachment: scroll!important; }
|
||||
.bg_fit_02 { background-image: url(../images/bg_fit_02.jpg); }
|
||||
.bg_chat { background-image: linear-gradient(to bottom, rgba(34, 34, 34, 0.52), rgba(49, 46, 48, 0.73)),url(../images/personwithbackpack.png); background-attachment: scroll!important; background-position: top; }
|
||||
.bg_fit_01 { background-image: url(../images/bg_sblue_img.jpg); background-attachment: scroll!important; }
|
||||
/* .bg_fit_02 { background-image: url(../images/bg_fit_02.jpg); } */
|
||||
.bg_fit_02 { background-image: url(../images/bg_fit_02.png); } /*changed image*/
|
||||
.bg_mobile { background-image: url(../images/bg_mobile.jpg); background-attachment: scroll!important; }
|
||||
.bg_bank_01 { background-image: url(../images/bg_bank_01.jpg); background-attachment: scroll!important; }
|
||||
.bg_bank_02 { background-image: url(../images/bg_bank_02.jpg); background-attachment: scroll!important; }
|
||||
@@ -1330,6 +1331,10 @@ ol.digit-list p {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.stores-badge + div{
|
||||
margin-top: 1rem;
|
||||
}
|
||||
|
||||
.store {
|
||||
display: inline-block;
|
||||
text-align: center;
|
||||
@@ -2579,6 +2584,15 @@ h5.sm-title {
|
||||
padding-right: 25px;
|
||||
}
|
||||
|
||||
.hero-8-txt > div {
|
||||
margin-top: 5rem;
|
||||
}
|
||||
|
||||
.hero-8-txt.fadeInRight{
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
/*------------------------------------------*/
|
||||
/* HERO APP LOGO
|
||||
/*------------------------------------------*/
|
||||
@@ -2631,7 +2645,7 @@ h5.sm-title {
|
||||
}
|
||||
|
||||
.hero-5-btns h3 {
|
||||
margin-bottom: 30px;
|
||||
margin-bottom: 6rem;
|
||||
}
|
||||
|
||||
.hero-6-txt h2 {
|
||||
@@ -2648,16 +2662,16 @@ h5.sm-title {
|
||||
}
|
||||
|
||||
.hero-8-txt h2 {
|
||||
margin-top: 3rem;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.hero-8-txt h4 {
|
||||
margin-bottom: 18px;
|
||||
margin-bottom: 80px;
|
||||
}
|
||||
|
||||
.hero-8-txt h5 {
|
||||
font-weight: 300;
|
||||
margin-bottom: 50px;
|
||||
}
|
||||
|
||||
.hero-9-txt h4 {
|
||||
@@ -3802,12 +3816,17 @@ h2.statistic-number {
|
||||
-webkit-box-shadow: 0px 5px 10px 0 rgba(10, 10, 10, .05);
|
||||
box-shadow: 0px 5px 10px 0 rgba(10, 10, 10, .05);
|
||||
}
|
||||
.pricing-table{
|
||||
display: none;
|
||||
}
|
||||
|
||||
#pricing-1.bg_whitesmoke .pricing-plan,
|
||||
#pricing-3.bg_whitesmoke .pricing-plan {
|
||||
background-color: #fafafa!important;
|
||||
}
|
||||
|
||||
#pricing-2{display: none;}
|
||||
|
||||
#pricing-2 .pricing-plan {
|
||||
padding: 45px 40px 40px;
|
||||
border: 1px solid #ddd;
|
||||
@@ -4695,8 +4714,8 @@ h5.posts-category {
|
||||
.featured-badge {
|
||||
z-index: 70;
|
||||
position: absolute;
|
||||
top: 20px;
|
||||
right: 20px;
|
||||
top: 10px;
|
||||
right: 10px;
|
||||
width: 45px;
|
||||
height: 45px;
|
||||
-webkit-border-radius: 100%;
|
||||
|
||||
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 6.1 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 8.2 KiB |
|
After Width: | Height: | Size: 8.7 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 7.5 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 4.9 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 9.8 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 264 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 6.1 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 8.2 KiB |
|
After Width: | Height: | Size: 8.7 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 7.5 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 4.9 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 342 KiB After Width: | Height: | Size: 332 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 9.8 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 264 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 6.1 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 8.2 KiB |
|
After Width: | Height: | Size: 8.7 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 405 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 25 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 7.5 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 4.9 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 12 KiB |
@@ -0,0 +1,9 @@
|
||||
<svg width="150" height="147" viewBox="0 0 150 147" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<rect width="150" height="146.165" fill="url(#pattern0)"/>
|
||||
<defs>
|
||||
<pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1">
|
||||
<use xlink:href="#image0_125_2" transform="matrix(0.031321 0 0 0.0321429 -1.84091 0.031013)"/>
|
||||
</pattern>
|
||||
<image id="image0_125_2" width="160" height="29" xlink:href="data:image/png;base64,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"/>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.3 KiB |
|
After Width: | Height: | Size: 470 KiB |
|
After Width: | Height: | Size: 200 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 124 KiB |
|
After Width: | Height: | Size: 91 KiB |
|
After Width: | Height: | Size: 147 KiB |
|
After Width: | Height: | Size: 90 KiB |
|
After Width: | Height: | Size: 79 KiB |
|
After Width: | Height: | Size: 108 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 9.8 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 447 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 113 KiB |
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 264 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 262 KiB |
|
After Width: | Height: | Size: 28 KiB |
@@ -58,7 +58,7 @@
|
||||
$target = jQuery(target);
|
||||
|
||||
$('html, body').stop().animate({
|
||||
'scrollTop': $target.offset().top - 60 // - 200px (nav-height)
|
||||
'scrollTop': $target.offset()?.top - 60 // - 200px (nav-height)
|
||||
}, 'slow', 'easeInSine', function () {
|
||||
window.location.hash = '1' + target;
|
||||
});
|
||||
@@ -170,7 +170,7 @@
|
||||
patterns: {
|
||||
youtube: {
|
||||
index: 'youtube.com',
|
||||
src: 'https://www.youtube.com/embed/7e90gBu4pas'
|
||||
src: 'https://www.youtube.com/embed/Jn22jdQ4KdQ' // added the id of the video
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="theme-color" content="#000000" />
|
||||
|
||||
<meta name="author" content="Float Mobility">
|
||||
<meta name="description" content="Travel smarter with Float's ride sharing, hailing and budgeting app. Avaliable on IOS and Android." />
|
||||
<meta name="title" content="Ride Sharing, Hailing & Budgeting App by Float" />
|
||||
@@ -54,8 +53,8 @@
|
||||
<!-- RESPONSIVE CSS -->
|
||||
<link href="/assets/css/responsive.css" rel="stylesheet">
|
||||
|
||||
|
||||
<title>Float</title>
|
||||
|
||||
<title> Ride Sharing, Hailing & Budgeting App by Float</title>
|
||||
</head>
|
||||
<body>
|
||||
<noscript>You need to enable JavaScript to run this app.</noscript>
|
||||
@@ -79,5 +78,24 @@
|
||||
<script src="/assets/js/wow.js"></script>
|
||||
<!-- Custom Script -->
|
||||
<script src="/assets/js/custom.js"></script>
|
||||
<script>
|
||||
function initFreshChat() {
|
||||
window.fcWidget.init({
|
||||
token: "e14dfaf8-473b-4882-a83f-e88f192f763d",
|
||||
host: "https://wchat.freshchat.com"
|
||||
});
|
||||
}
|
||||
function initialize(i,t){
|
||||
var e;
|
||||
i.getElementById(t) ? initFreshChat() :
|
||||
((e=i.createElement("script")).id=t,
|
||||
e.async=!0,e.src="https://wchat.freshchat.com/js/widget.js",
|
||||
e.onload=initFreshChat,i.head.appendChild(e))
|
||||
}
|
||||
function initiateCall() {
|
||||
initialize(document,"freshchat-js-sdk")
|
||||
}
|
||||
window.addEventListener ? window.addEventListener("load",initiateCall,!1): window.attachEvent("load",initiateCall,!1);
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -15,27 +15,60 @@ import Contacts from './pages/Contacts';
|
||||
import FloatHome from './pages/FloatHome';
|
||||
import Users from './pages/Users';
|
||||
import Fleet from './pages/Fleet';
|
||||
|
||||
|
||||
|
||||
// import {
|
||||
// BrowserRouter as Router,
|
||||
// Routes,
|
||||
// Route
|
||||
// } from "react-router-dom";
|
||||
import Privacy from './pages/Privacy';
|
||||
import GetStarted from './pages/GetStarted';
|
||||
import FindEv from "./pages/FindEv";
|
||||
import FindMobility from "./pages/FindMobility";
|
||||
|
||||
import { Routes, Route } from "react-router-dom";
|
||||
|
||||
import { useState, useEffect } from "react";
|
||||
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);
|
||||
setBlogData(res.data)
|
||||
return
|
||||
}
|
||||
}catch(error) {
|
||||
setBlogData({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 (
|
||||
<div className="App">
|
||||
|
||||
<Header/>
|
||||
<Routes>
|
||||
<Route path="/" element={<FloatHome/>} />
|
||||
<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/>} />
|
||||
@@ -44,13 +77,18 @@ function App() {
|
||||
<Route path="/demo" element={<Demo/>} />
|
||||
<Route path="/about" element={<About/>} />
|
||||
<Route path="/blog_listing" element={<Blog_listing/>} />
|
||||
<Route path="/blogs" 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 blogData={blogData} />} />
|
||||
<Route path="/findev" element={<FindEv />} />
|
||||
<Route path="/findmobility" element={<FindMobility />} />
|
||||
</Routes>
|
||||
<Footer/>
|
||||
</div>
|
||||
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,114 @@
|
||||
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?.blogdata == undefined ? // API CALL IN PROGRESS
|
||||
// <div className='col-12 text-center display-4'>Loading...</div>
|
||||
<div className="col-12 text-center">
|
||||
<div className="spinner-border spinner-border-lg" role="status" style={{width: '3rem', height: '3rem'}}>
|
||||
</div>
|
||||
</div>
|
||||
:
|
||||
// API CALL FINISHED
|
||||
(
|
||||
blogData?.blogdata.length < 1 ?
|
||||
<div className='col-12 text-center display-4'>No Blog Currently Found!</div>
|
||||
:
|
||||
blogData?.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 rounded" src={process.env.REACT_APP_IMAGE_LINK + 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" /> */}
|
||||
<img className="img-fluid rounded" src={process.env.REACT_APP_IMAGE_LINK + 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>
|
||||
)
|
||||
}
|
||||
})
|
||||
)
|
||||
|
||||
}
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
export default BlogItems
|
||||
@@ -12,23 +12,23 @@ class Footer extends React.Component {
|
||||
<div className="row">
|
||||
<div className="col-sm-6 col-md-4 col-lg-3">
|
||||
<div className="footer-links mb-40">
|
||||
<ul className="foo-links clearfix">
|
||||
<li><p className="p-md"><Link to="/#">App Features</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/#">Integrations</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/#">App Updates</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/#">Help & Support</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/#">Customer Stories</Link></p></li>
|
||||
<ul className="foo-links clearfix">
|
||||
<li><p className="p-md"><Link to="#">Stop the Surge</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/blogs">Travel Guide</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/findev">Find Ev Charge</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/findmobility">Find Options</Link></p></li>
|
||||
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div className="col-sm-6 col-md-4 col-lg-3">
|
||||
<div className="footer-links mb-40">
|
||||
<ul className="foo-links clearfix">
|
||||
<li><p className="p-md"><Link to="/blogs">Our Blog</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/#">Customer Stories</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/#">Help & Support</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/#">Life Chatting</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/#">Resources</Link></p></li>
|
||||
<ul className="foo-links clearfix">
|
||||
<li><p className="p-md"><Link to="/#">Users</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/#">Fleet Mangers</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/contacts">Customer Stories</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/#">Resources</Link></p></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
@@ -36,9 +36,9 @@ class Footer extends React.Component {
|
||||
<div className="footer-links mb-40">
|
||||
<ul className="foo-links clearfix">
|
||||
<li><p className="p-md"><Link to="/about">About Us</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/#">Press & Media</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/#">Advertising</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/#">Privacy Policy</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/blogs">Our Blog</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/#">Press Kit (Download)</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/privacy">Privacy Policy</Link></p></li>
|
||||
<li><p className="p-md"><Link to="/terms">Terms & Privacy</Link></p></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||