Commit 94229b82 by Alen Jose

Merge branch 'alen' into 'master'

Alen See merge request alen/CMC-driver!1
parents 8b60225d f3408bcd
......@@ -81,4 +81,10 @@
<plugin name="cordova-plugin-splashscreen" spec="5.0.2" />
<plugin name="cordova-plugin-ionic-webview" spec="1.1.19" />
<plugin name="cordova-plugin-ionic-keyboard" spec="2.0.5" />
<plugin name="cordova-plugin-network-information" spec="^2.0.1" />
<plugin name="onesignal-cordova-plugin" spec="^2.4.1" />
<plugin name="cordova-plugin-request-location-accuracy" spec="^2.2.3" />
<plugin name="cordova-plugin-geolocation" spec="^4.0.1">
<variable name="GEOLOCATION_USAGE_DESCRIPTION" value="To locate you" />
</plugin>
</widget>
......@@ -99,11 +99,232 @@
"tslib": "1.9.3"
}
},
"@firebase/app": {
"version": "0.3.3",
"resolved": "https://registry.npmjs.org/@firebase/app/-/app-0.3.3.tgz",
"integrity": "sha512-V5fMC2Ysx1TlHD6x7vj7EOtoyJSU/ts+fp9qxt0E3TA+DbWgKFrkcL+o2jZhi30h0sXKV7oW0vh67YZdZylqOg==",
"requires": {
"@firebase/app-types": "0.3.2",
"@firebase/util": "0.2.1",
"dom-storage": "2.1.0",
"tslib": "1.9.0",
"xmlhttprequest": "1.8.0"
},
"dependencies": {
"tslib": {
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.0.tgz",
"integrity": "sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ=="
}
}
},
"@firebase/app-types": {
"version": "0.3.2",
"resolved": "https://registry.npmjs.org/@firebase/app-types/-/app-types-0.3.2.tgz",
"integrity": "sha512-ZD8lTgW07NGgo75bTyBJA8Lt9+NweNzot7lrsBtIvfciwUzaFJLsv2EShqjBeuhF7RpG6YFucJ6m67w5buCtzw=="
},
"@firebase/auth": {
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/@firebase/auth/-/auth-0.7.0.tgz",
"integrity": "sha512-OUjjtq91VFALUjVYp9meHMNtG40mibzkPKIWKAVkc3zucXORShxsDBGRlXjrVSENrQDr7FLrOF2kWCZXwvjiFQ==",
"requires": {
"@firebase/auth-types": "0.3.4"
}
},
"@firebase/auth-types": {
"version": "0.3.4",
"resolved": "https://registry.npmjs.org/@firebase/auth-types/-/auth-types-0.3.4.tgz",
"integrity": "sha512-0r3gSQk9jw5orFHCTUIgao0zan6dHt2J0BO3t/uEzbod+uwqvUn/gh+yg+kK6HX92Fg8E7y030KX4Bw/aXt0Ew=="
},
"@firebase/database": {
"version": "0.3.3",
"resolved": "https://registry.npmjs.org/@firebase/database/-/database-0.3.3.tgz",
"integrity": "sha512-8r/snlMuOB6QXdkfjbZaFxK1U8CbQgCG0rVfMHclRVNQhZLtTEtiVNDTQk75bfxY0k+iqyg+6fsNWClA92glcg==",
"requires": {
"@firebase/database-types": "0.3.2",
"@firebase/logger": "0.1.1",
"@firebase/util": "0.2.1",
"faye-websocket": "0.11.1",
"tslib": "1.9.0"
},
"dependencies": {
"faye-websocket": {
"version": "0.11.1",
"resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.1.tgz",
"integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=",
"requires": {
"websocket-driver": "0.7.0"
}
},
"tslib": {
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.0.tgz",
"integrity": "sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ=="
}
}
},
"@firebase/database-types": {
"version": "0.3.2",
"resolved": "https://registry.npmjs.org/@firebase/database-types/-/database-types-0.3.2.tgz",
"integrity": "sha512-9ZYdvYQ6r3aaHJarhUM5Hf6lQWu3ZJme+RR0o8qfBb9L04TL3uNjt+AJFku1ysVPntTn+9GqJjiIB2/OC3JtwA=="
},
"@firebase/firestore": {
"version": "0.5.5",
"resolved": "https://registry.npmjs.org/@firebase/firestore/-/firestore-0.5.5.tgz",
"integrity": "sha512-JE97NcAinBSt2JArhjSHWETldUHn5gWhl25jQkiwIhEUqcie4Km0xcXFveah8GNaHJQYfz61RPCV4lkjJoEtQw==",
"requires": {
"@firebase/firestore-types": "0.4.3",
"@firebase/logger": "0.1.1",
"@firebase/webchannel-wrapper": "0.2.8",
"grpc": "1.11.3",
"tslib": "1.9.0"
},
"dependencies": {
"tslib": {
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.0.tgz",
"integrity": "sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ=="
}
}
},
"@firebase/firestore-types": {
"version": "0.4.3",
"resolved": "https://registry.npmjs.org/@firebase/firestore-types/-/firestore-types-0.4.3.tgz",
"integrity": "sha512-QdFBhH0Bcw7TRodN6nJ1pQq0AGAgMfpIUQguKcogTE/2L/lAECxbUfTWtBcGenKcSKpae5xJuuhGZxaPGkQv7A=="
},
"@firebase/functions": {
"version": "0.2.4",
"resolved": "https://registry.npmjs.org/@firebase/functions/-/functions-0.2.4.tgz",
"integrity": "sha512-HSa2MdBRPWltv1gvE1nWmbzxtWt5jJt4gZ8wje5qEIld7tbLvaWCJRvLGwH/dX1r9s6u6GtDF9FD4Gn2z2xFiQ==",
"requires": {
"@firebase/functions-types": "0.1.3",
"@firebase/messaging-types": "0.2.3",
"isomorphic-fetch": "2.2.1",
"tslib": "1.9.0"
},
"dependencies": {
"tslib": {
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.0.tgz",
"integrity": "sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ=="
}
}
},
"@firebase/functions-types": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/@firebase/functions-types/-/functions-types-0.1.3.tgz",
"integrity": "sha512-9cOrF5b2B3kfdwsRm3owSXZciIQbupbEKhq4WTsLRXU8mz8ol7WxuOuG/FwYaHryeI8z29gIzP9NpiGoKJgo4w=="
},
"@firebase/logger": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/@firebase/logger/-/logger-0.1.1.tgz",
"integrity": "sha512-5jn3HHbEfdOwychyIEIkP1cik+MW/vvoOavTOzwDkH+fv6Bx+HBUOzh09M7sCYzXFtKzjbUax9+g39mJNBLklQ=="
},
"@firebase/messaging": {
"version": "0.3.5",
"resolved": "https://registry.npmjs.org/@firebase/messaging/-/messaging-0.3.5.tgz",
"integrity": "sha512-+FkrW+li/QOqSXUGipOEvqPUSy1/ZH7zibB63UtRHy3LSwxn5PZ6lKgaeCVkWZBwCHm92riHrjR0cpRhE4+4SQ==",
"requires": {
"@firebase/messaging-types": "0.2.3",
"@firebase/util": "0.2.1",
"tslib": "1.9.0"
},
"dependencies": {
"tslib": {
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.0.tgz",
"integrity": "sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ=="
}
}
},
"@firebase/messaging-types": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/@firebase/messaging-types/-/messaging-types-0.2.3.tgz",
"integrity": "sha512-avwCgZzcx2uxIW/wT3p3G/EyHftIrvMyiTS7AA7dxDlzfx+8dpAeTsb1+jsHJT4F6foSh5HG17Nw8sDzYuxH1Q=="
},
"@firebase/polyfill": {
"version": "0.3.3",
"resolved": "https://registry.npmjs.org/@firebase/polyfill/-/polyfill-0.3.3.tgz",
"integrity": "sha512-xs8IZf1WEbufYXyfV8YjmiFZOaujRRq0T03NteihYfuGVTTym7z5SmvLvEHLEUjf2fgeobPEzZ2JgrCQHS+QHw==",
"requires": {
"core-js": "2.5.5",
"promise-polyfill": "7.1.2",
"whatwg-fetch": "2.0.4"
},
"dependencies": {
"promise-polyfill": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-7.1.2.tgz",
"integrity": "sha512-FuEc12/eKqqoRYIGBrUptCBRhobL19PS2U31vMNTfyck1FxPyMfgsXyW4Mav85y/ZN1hop3hOwRlUDok23oYfQ=="
}
}
},
"@firebase/storage": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/@firebase/storage/-/storage-0.2.3.tgz",
"integrity": "sha512-2sq5jckWszW53gfQMkPNc7EumJ92oErRhzGJANbVzBumwR8qwKZU8/I+/uV9SPK1tVmSUc3S21jdoW5oOJVEuA==",
"requires": {
"@firebase/storage-types": "0.2.3",
"tslib": "1.9.0"
},
"dependencies": {
"tslib": {
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.0.tgz",
"integrity": "sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ=="
}
}
},
"@firebase/storage-types": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/@firebase/storage-types/-/storage-types-0.2.3.tgz",
"integrity": "sha512-RaZeam2LgsB7xwAtOQr4G0Geoyf7D5TnLF3a12By6Rh0Z9PqBSlWn0SVYGW3SkmxIdqvWZMZvCyamUlqQvQzWw=="
},
"@firebase/util": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/@firebase/util/-/util-0.2.1.tgz",
"integrity": "sha512-KPNcIK5+bUUBMII87NqGu+tRUnMcY95xujS2z0QyAfoQCKe11DMHICv3M6uweiLSXqdQwrMTyFtiql1q+0UOYQ==",
"requires": {
"tslib": "1.9.0"
},
"dependencies": {
"tslib": {
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.0.tgz",
"integrity": "sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ=="
}
}
},
"@firebase/webchannel-wrapper": {
"version": "0.2.8",
"resolved": "https://registry.npmjs.org/@firebase/webchannel-wrapper/-/webchannel-wrapper-0.2.8.tgz",
"integrity": "sha512-ToJbeJnxDc3O325FvcKVb3yHO1hvgHjCFvhKol6Z17GiB7vL104POjFQT4RnlLiAGSRCBAMxinDec9y9vQYdyg=="
},
"@ionic-native/core": {
"version": "4.7.0",
"resolved": "https://registry.npmjs.org/@ionic-native/core/-/core-4.7.0.tgz",
"integrity": "sha512-BT4a9qIl3qfJMukcfMPtXDAAsOrYIAoVQvCodDZhqGExTakIx0/JlOr+lZa6KEU46CoA1SEctcBjj0N+nNcWOw=="
},
"@ionic-native/geolocation": {
"version": "4.8.0",
"resolved": "https://registry.npmjs.org/@ionic-native/geolocation/-/geolocation-4.8.0.tgz",
"integrity": "sha512-5WcloJjAbKTG9WcAvJnRPgylTbVZgWB25LyejQb6bed4by/jE3yHmL+CmSetmFsu00/NvMQrE3BmrC/tJBLulA=="
},
"@ionic-native/location-accuracy": {
"version": "4.8.0",
"resolved": "https://registry.npmjs.org/@ionic-native/location-accuracy/-/location-accuracy-4.8.0.tgz",
"integrity": "sha512-nUwUpI/RUYOfAz8Yz0dJXBlk+59D4f25c5YYyTBaDjPpKO6sREoGp5iVZYKPZodYj1niinBANFBnnsEHTTLQHw=="
},
"@ionic-native/network": {
"version": "4.8.0",
"resolved": "https://registry.npmjs.org/@ionic-native/network/-/network-4.8.0.tgz",
"integrity": "sha512-60F6VLpWLmCTSPxaFGxmXRVre+e09xWU/x050MUkeOX/OkCfCjDOQUP1bleLe9O7rZFL3fPtngZV7TObOrRmXQ=="
},
"@ionic-native/onesignal": {
"version": "4.8.0",
"resolved": "https://registry.npmjs.org/@ionic-native/onesignal/-/onesignal-4.8.0.tgz",
"integrity": "sha512-fUYGdIyZ48OALX726zaRSVwRX3ZDLMsuc0dB3qbi/keBVZhWAooCeZPV4UdkzynFOnFnPRcGzJxk6q/SUgGP/g=="
},
"@ionic-native/splash-screen": {
"version": "4.7.0",
"resolved": "https://registry.npmjs.org/@ionic-native/splash-screen/-/splash-screen-4.7.0.tgz",
......@@ -235,11 +456,15 @@
"resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
"integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU="
},
"angularfire2": {
"version": "5.0.0-rc.11",
"resolved": "https://registry.npmjs.org/angularfire2/-/angularfire2-5.0.0-rc.11.tgz",
"integrity": "sha512-Jr6uEquMRuJSgYTw8YxNkDwpkvg2CDJtLlQD0AdMXYoUAwcgsIE4ar7qatIJ2/fwX12TO+oPooCyr0G4GjdwXQ=="
},
"ansi-regex": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
"integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
"dev": true
"integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
},
"ansi-styles": {
"version": "3.2.1",
......@@ -320,6 +545,15 @@
"resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
"integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM="
},
"ascli": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/ascli/-/ascli-1.0.1.tgz",
"integrity": "sha1-vPpZdKYvGOgcq660lzKrSoj5Brw=",
"requires": {
"colour": "0.7.1",
"optjs": "3.2.2"
}
},
"asn1": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
......@@ -820,6 +1054,14 @@
"integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=",
"dev": true
},
"bytebuffer": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/bytebuffer/-/bytebuffer-5.0.1.tgz",
"integrity": "sha1-WC7qSxqHO20CCkjVjfhfC7ps/d0=",
"requires": {
"long": "3.2.0"
}
},
"bytes": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
......@@ -854,8 +1096,7 @@
"camelcase": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
"integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
"dev": true
"integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8="
},
"camelcase-keys": {
"version": "2.1.0",
......@@ -975,7 +1216,6 @@
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
"integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
"dev": true,
"requires": {
"string-width": "1.0.2",
"strip-ansi": "3.0.1",
......@@ -991,8 +1231,7 @@
"code-point-at": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
"integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
"dev": true
"integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c="
},
"collection-visit": {
"version": "1.0.0",
......@@ -1019,6 +1258,11 @@
"integrity": "sha1-SxQVMEz1ACjqgWQ2Q72C6gWANok=",
"dev": true
},
"colour": {
"version": "0.7.1",
"resolved": "https://registry.npmjs.org/colour/-/colour-0.7.1.tgz",
"integrity": "sha1-nLFpkX7F0SwHNtPoaFdG3xyt93g="
},
"combined-stream": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz",
......@@ -1102,6 +1346,26 @@
"integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=",
"dev": true
},
"cordova-plugin-geolocation": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/cordova-plugin-geolocation/-/cordova-plugin-geolocation-4.0.1.tgz",
"integrity": "sha1-RwP6ZJ0kBdJamnMsmev4aHVKLAQ="
},
"cordova-plugin-network-information": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/cordova-plugin-network-information/-/cordova-plugin-network-information-2.0.1.tgz",
"integrity": "sha1-6QQh9DDGq3bUCSI/Jfzvu7zhdpA="
},
"cordova-plugin-request-location-accuracy": {
"version": "2.2.3",
"resolved": "https://registry.npmjs.org/cordova-plugin-request-location-accuracy/-/cordova-plugin-request-location-accuracy-2.2.3.tgz",
"integrity": "sha512-cwcG+4sHIU/Vfe1mvEtXh5hfo4k8OEdHo1Rdc9GU0YU/5J/umsBQdHfuBJ7hez59N7lRoUKpKhLhcY8MPBz9Fg=="
},
"core-js": {
"version": "2.5.5",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.5.tgz",
"integrity": "sha1-sU3ek2xkDAV5prUMq8wTLdYSfjs="
},
"core-util-is": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
......@@ -1236,8 +1500,7 @@
"decamelize": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
"dev": true
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA="
},
"decode-uri-component": {
"version": "0.2.0",
......@@ -1373,6 +1636,11 @@
}
}
},
"dom-storage": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/dom-storage/-/dom-storage-2.1.0.tgz",
"integrity": "sha512-g6RpyWXzl0RR6OTElHKBl7nwnK87GUyZMYC7JWsB/IA73vpqK2K6LT39x4VepLxlSsWBFrPVLnsSR5Jyty0+2Q=="
},
"domain-browser": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz",
......@@ -1428,6 +1696,14 @@
"integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
"dev": true
},
"encoding": {
"version": "0.1.12",
"resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz",
"integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=",
"requires": {
"iconv-lite": "0.4.19"
}
},
"enhanced-resolve": {
"version": "3.4.1",
"resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz",
......@@ -1847,6 +2123,21 @@
"pinkie-promise": "2.0.1"
}
},
"firebase": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/firebase/-/firebase-5.1.0.tgz",
"integrity": "sha512-Q9m10Jvfge+2PAbxBM5zy0BiTf3UhAY5W32nIhwg6yKVhq4ZCk6xeZcxoLqTwKJLdJRH05rpnz9mx88QaAP5oQ==",
"requires": {
"@firebase/app": "0.3.3",
"@firebase/auth": "0.7.0",
"@firebase/database": "0.3.3",
"@firebase/firestore": "0.5.5",
"@firebase/functions": "0.2.4",
"@firebase/messaging": "0.3.5",
"@firebase/polyfill": "0.3.3",
"@firebase/storage": "0.2.3"
}
},
"for-in": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
......@@ -1917,8 +2208,7 @@
"fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
"dev": true
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
},
"fstream": {
"version": "1.0.11",
......@@ -2017,7 +2307,6 @@
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"dev": true,
"requires": {
"fs.realpath": "1.0.0",
"inflight": "1.0.6",
......@@ -2060,6 +2349,421 @@
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg="
},
"grpc": {
"version": "1.11.3",
"resolved": "https://registry.npmjs.org/grpc/-/grpc-1.11.3.tgz",
"integrity": "sha512-7fJ40USpnP7hxGK0uRoEhJz6unA5VUdwInfwAY2rK2+OVxdDJSdTZQ/8/M+1tW68pHZYgHvg2ohvJ+clhW3ANg==",
"requires": {
"lodash": "4.17.10",
"nan": "2.10.0",
"node-pre-gyp": "0.10.0",
"protobufjs": "5.0.3"
},
"dependencies": {
"abbrev": {
"version": "1.1.1",
"bundled": true
},
"ansi-regex": {
"version": "2.1.1",
"bundled": true
},
"aproba": {
"version": "1.2.0",
"bundled": true
},
"are-we-there-yet": {
"version": "1.1.4",
"bundled": true,
"requires": {
"delegates": "1.0.0",
"readable-stream": "2.3.6"
}
},
"balanced-match": {
"version": "1.0.0",
"bundled": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"requires": {
"balanced-match": "1.0.0",
"concat-map": "0.0.1"
}
},
"chownr": {
"version": "1.0.1",
"bundled": true
},
"code-point-at": {
"version": "1.1.0",
"bundled": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true
},
"core-util-is": {
"version": "1.0.2",
"bundled": true
},
"debug": {
"version": "2.6.9",
"bundled": true,
"requires": {
"ms": "2.0.0"
}
},
"deep-extend": {
"version": "0.5.1",
"bundled": true
},
"delegates": {
"version": "1.0.0",
"bundled": true
},
"detect-libc": {
"version": "1.0.3",
"bundled": true
},
"fs-minipass": {
"version": "1.2.5",
"bundled": true,
"requires": {
"minipass": "2.2.4"
}
},
"fs.realpath": {
"version": "1.0.0",
"bundled": true
},
"gauge": {
"version": "2.7.4",
"bundled": true,
"requires": {
"aproba": "1.2.0",
"console-control-strings": "1.1.0",
"has-unicode": "2.0.1",
"object-assign": "4.1.1",
"signal-exit": "3.0.2",
"string-width": "1.0.2",
"strip-ansi": "3.0.1",
"wide-align": "1.1.2"
}
},
"glob": {
"version": "7.1.2",
"bundled": true,
"requires": {
"fs.realpath": "1.0.0",
"inflight": "1.0.6",
"inherits": "2.0.3",
"minimatch": "3.0.4",
"once": "1.4.0",
"path-is-absolute": "1.0.1"
}
},
"has-unicode": {
"version": "2.0.1",
"bundled": true
},
"iconv-lite": {
"version": "0.4.19",
"bundled": true
},
"ignore-walk": {
"version": "3.0.1",
"bundled": true,
"requires": {
"minimatch": "3.0.4"
}
},
"inflight": {
"version": "1.0.6",
"bundled": true,
"requires": {
"once": "1.4.0",
"wrappy": "1.0.2"
}
},
"inherits": {
"version": "2.0.3",
"bundled": true
},
"ini": {
"version": "1.3.5",
"bundled": true
},
"is-fullwidth-code-point": {
"version": "1.0.0",
"bundled": true,
"requires": {
"number-is-nan": "1.0.1"
}
},
"isarray": {
"version": "1.0.0",
"bundled": true
},
"minimatch": {
"version": "3.0.4",
"bundled": true,
"requires": {
"brace-expansion": "1.1.11"
}
},
"minimist": {
"version": "1.2.0",
"bundled": true
},
"minipass": {
"version": "2.2.4",
"bundled": true,
"requires": {
"safe-buffer": "5.1.1",
"yallist": "3.0.2"
}
},
"minizlib": {
"version": "1.1.0",
"bundled": true,
"requires": {
"minipass": "2.2.4"
}
},
"mkdirp": {
"version": "0.5.1",
"bundled": true,
"requires": {
"minimist": "0.0.8"
},
"dependencies": {
"minimist": {
"version": "0.0.8",
"bundled": true
}
}
},
"ms": {
"version": "2.0.0",
"bundled": true
},
"needle": {
"version": "2.2.1",
"bundled": true,
"requires": {
"debug": "2.6.9",
"iconv-lite": "0.4.19",
"sax": "1.2.4"
}
},
"node-pre-gyp": {
"version": "0.10.0",
"bundled": true,
"requires": {
"detect-libc": "1.0.3",
"mkdirp": "0.5.1",
"needle": "2.2.1",
"nopt": "4.0.1",
"npm-packlist": "1.1.10",
"npmlog": "4.1.2",
"rc": "1.2.7",
"rimraf": "2.6.2",
"semver": "5.5.0",
"tar": "4.4.2"
}
},
"nopt": {
"version": "4.0.1",
"bundled": true,
"requires": {
"abbrev": "1.1.1",
"osenv": "0.1.5"
}
},
"npm-bundled": {
"version": "1.0.3",
"bundled": true
},
"npm-packlist": {
"version": "1.1.10",
"bundled": true,
"requires": {
"ignore-walk": "3.0.1",
"npm-bundled": "1.0.3"
}
},
"npmlog": {
"version": "4.1.2",
"bundled": true,
"requires": {
"are-we-there-yet": "1.1.4",
"console-control-strings": "1.1.0",
"gauge": "2.7.4",
"set-blocking": "2.0.0"
}
},
"number-is-nan": {
"version": "1.0.1",
"bundled": true
},
"object-assign": {
"version": "4.1.1",
"bundled": true
},
"once": {
"version": "1.4.0",
"bundled": true,
"requires": {
"wrappy": "1.0.2"
}
},
"os-homedir": {
"version": "1.0.2",
"bundled": true
},
"os-tmpdir": {
"version": "1.0.2",
"bundled": true
},
"osenv": {
"version": "0.1.5",
"bundled": true,
"requires": {
"os-homedir": "1.0.2",
"os-tmpdir": "1.0.2"
}
},
"path-is-absolute": {
"version": "1.0.1",
"bundled": true
},
"process-nextick-args": {
"version": "2.0.0",
"bundled": true
},
"rc": {
"version": "1.2.7",
"bundled": true,
"requires": {
"deep-extend": "0.5.1",
"ini": "1.3.5",
"minimist": "1.2.0",
"strip-json-comments": "2.0.1"
}
},
"readable-stream": {
"version": "2.3.6",
"bundled": true,
"requires": {
"core-util-is": "1.0.2",
"inherits": "2.0.3",
"isarray": "1.0.0",
"process-nextick-args": "2.0.0",
"safe-buffer": "5.1.1",
"string_decoder": "1.1.1",
"util-deprecate": "1.0.2"
}
},
"rimraf": {
"version": "2.6.2",
"bundled": true,
"requires": {
"glob": "7.1.2"
}
},
"safe-buffer": {
"version": "5.1.1",
"bundled": true
},
"sax": {
"version": "1.2.4",
"bundled": true
},
"semver": {
"version": "5.5.0",
"bundled": true
},
"set-blocking": {
"version": "2.0.0",
"bundled": true
},
"signal-exit": {
"version": "3.0.2",
"bundled": true
},
"string-width": {
"version": "1.0.2",
"bundled": true,
"requires": {
"code-point-at": "1.1.0",
"is-fullwidth-code-point": "1.0.0",
"strip-ansi": "3.0.1"
}
},
"string_decoder": {
"version": "1.1.1",
"bundled": true,
"requires": {
"safe-buffer": "5.1.1"
}
},
"strip-ansi": {
"version": "3.0.1",
"bundled": true,
"requires": {
"ansi-regex": "2.1.1"
}
},
"strip-json-comments": {
"version": "2.0.1",
"bundled": true
},
"tar": {
"version": "4.4.2",
"bundled": true,
"requires": {
"chownr": "1.0.1",
"fs-minipass": "1.2.5",
"minipass": "2.2.4",
"minizlib": "1.1.0",
"mkdirp": "0.5.1",
"safe-buffer": "5.1.2",
"yallist": "3.0.2"
},
"dependencies": {
"safe-buffer": {
"version": "5.1.2",
"bundled": true
}
}
},
"util-deprecate": {
"version": "1.0.2",
"bundled": true
},
"wide-align": {
"version": "1.1.2",
"bundled": true,
"requires": {
"string-width": "1.0.2"
}
},
"wrappy": {
"version": "1.0.2",
"bundled": true
},
"yallist": {
"version": "3.0.2",
"bundled": true
}
}
},
"har-validator": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz",
......@@ -2250,8 +2954,7 @@
"http-parser-js": {
"version": "0.4.13",
"resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.13.tgz",
"integrity": "sha1-O9bW/ebjFyyTNMOzO2wZPYD+ETc=",
"dev": true
"integrity": "sha1-O9bW/ebjFyyTNMOzO2wZPYD+ETc="
},
"http-signature": {
"version": "1.1.1",
......@@ -2273,8 +2976,7 @@
"iconv-lite": {
"version": "0.4.19",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz",
"integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==",
"dev": true
"integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ=="
},
"ieee754": {
"version": "1.1.12",
......@@ -2312,7 +3014,6 @@
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
"dev": true,
"requires": {
"once": "1.4.0",
"wrappy": "1.0.2"
......@@ -2341,8 +3042,7 @@
"invert-kv": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz",
"integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=",
"dev": true
"integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY="
},
"ionic-angular": {
"version": "3.9.2",
......@@ -2461,7 +3161,6 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
"integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
"dev": true,
"requires": {
"number-is-nan": "1.0.1"
}
......@@ -2560,8 +3259,7 @@
"is-stream": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
"integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=",
"dev": true
"integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ="
},
"is-typedarray": {
"version": "1.0.0",
......@@ -2600,6 +3298,15 @@
"isarray": "1.0.0"
}
},
"isomorphic-fetch": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz",
"integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=",
"requires": {
"node-fetch": "1.7.3",
"whatwg-fetch": "2.0.4"
}
},
"isstream": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
......@@ -2746,7 +3453,6 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
"integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=",
"dev": true,
"requires": {
"invert-kv": "1.0.0"
}
......@@ -2836,8 +3542,7 @@
"lodash": {
"version": "4.17.10",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
"integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
"dev": true
"integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg=="
},
"lodash.assign": {
"version": "4.2.0",
......@@ -2863,6 +3568,11 @@
"integrity": "sha512-eWw5r+PYICtEBgrBE5hhlT6aAa75f411bgDz/ZL2KZqYV03USvucsxcHUIlGTDTECs1eunpI7HOV7U+WLDvNdQ==",
"dev": true
},
"long": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz",
"integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s="
},
"longest": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz",
......@@ -3122,8 +3832,7 @@
"nan": {
"version": "2.10.0",
"resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz",
"integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==",
"dev": true
"integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA=="
},
"nanomatch": {
"version": "1.2.9",
......@@ -3183,6 +3892,15 @@
"integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=",
"dev": true
},
"node-fetch": {
"version": "1.7.3",
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz",
"integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==",
"requires": {
"encoding": "0.1.12",
"is-stream": "1.1.0"
}
},
"node-gyp": {
"version": "3.7.0",
"resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.7.0.tgz",
......@@ -3371,8 +4089,7 @@
"number-is-nan": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
"integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
"dev": true
"integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0="
},
"oauth-sign": {
"version": "0.8.2",
......@@ -3469,11 +4186,20 @@
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
"dev": true,
"requires": {
"wrappy": "1.0.2"
}
},
"onesignal-cordova-plugin": {
"version": "2.4.1",
"resolved": "https://registry.npmjs.org/onesignal-cordova-plugin/-/onesignal-cordova-plugin-2.4.1.tgz",
"integrity": "sha512-P4Jiypo5d549LrRWsZE1g5z7cmQMseG6yIayQem+hLRUXlWx7qqOdxTa1oUh5nFxlYon8u6jI5wIybRWxL5YfQ=="
},
"optjs": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/optjs/-/optjs-3.2.2.tgz",
"integrity": "sha1-aabOicRCpEQDFBrS+bNwvVu29O4="
},
"os-browserify": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
......@@ -3490,7 +4216,6 @@
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
"integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
"dev": true,
"requires": {
"lcid": "1.0.0"
}
......@@ -3744,6 +4469,43 @@
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz",
"integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw=="
},
"promise-polyfill": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-8.0.0.tgz",
"integrity": "sha512-QGmPnw2hDEaRS6freHynJ7nfS1nDg0/P0c/CGglA43utoJjYQMiY9ojEpK0HaJ4wbUztdmwqQRlEfGWdsEQ5uQ=="
},
"protobufjs": {
"version": "5.0.3",
"resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-5.0.3.tgz",
"integrity": "sha512-55Kcx1MhPZX0zTbVosMQEO5R6/rikNXd9b6RQK4KSPcrSIIwoXTtebIczUrXlwaSrbz4x8XUVThGPob1n8I4QA==",
"requires": {
"ascli": "1.0.1",
"bytebuffer": "5.0.1",
"glob": "7.1.2",
"yargs": "3.32.0"
},
"dependencies": {
"window-size": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz",
"integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY="
},
"yargs": {
"version": "3.32.0",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz",
"integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=",
"requires": {
"camelcase": "2.1.1",
"cliui": "3.2.0",
"decamelize": "1.2.0",
"os-locale": "1.4.0",
"string-width": "1.0.2",
"window-size": "0.1.4",
"y18n": "3.2.1"
}
}
}
},
"proxy-addr": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.3.tgz",
......@@ -4663,7 +5425,6 @@
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
"integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
"dev": true,
"requires": {
"code-point-at": "1.1.0",
"is-fullwidth-code-point": "1.0.0",
......@@ -4688,7 +5449,6 @@
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
"dev": true,
"requires": {
"ansi-regex": "2.1.1"
}
......@@ -5897,7 +6657,6 @@
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz",
"integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=",
"dev": true,
"requires": {
"http-parser-js": "0.4.13",
"websocket-extensions": "0.1.3"
......@@ -5906,8 +6665,12 @@
"websocket-extensions": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz",
"integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==",
"dev": true
"integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg=="
},
"whatwg-fetch": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz",
"integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng=="
},
"which": {
"version": "1.3.1",
......@@ -5958,7 +6721,6 @@
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
"integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
"dev": true,
"requires": {
"string-width": "1.0.2",
"strip-ansi": "3.0.1"
......@@ -5967,8 +6729,7 @@
"wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
"dev": true
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
},
"ws": {
"version": "3.3.2",
......@@ -5997,6 +6758,11 @@
"integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=",
"dev": true
},
"xmlhttprequest": {
"version": "1.8.0",
"resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz",
"integrity": "sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw="
},
"xtend": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
......@@ -6005,8 +6771,7 @@
"y18n": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz",
"integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=",
"dev": true
"integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE="
},
"yallist": {
"version": "2.1.2",
......
......@@ -22,11 +22,22 @@
"@angular/platform-browser": "5.2.11",
"@angular/platform-browser-dynamic": "5.2.11",
"@ionic-native/core": "4.7.0",
"@ionic-native/geolocation": "^4.8.0",
"@ionic-native/location-accuracy": "^4.8.0",
"@ionic-native/network": "^4.8.0",
"@ionic-native/onesignal": "^4.8.0",
"@ionic-native/splash-screen": "4.7.0",
"@ionic-native/status-bar": "4.7.0",
"@ionic/storage": "2.1.3",
"angularfire2": "^5.0.0-rc.11",
"cordova-plugin-geolocation": "^4.0.1",
"cordova-plugin-network-information": "^2.0.1",
"cordova-plugin-request-location-accuracy": "^2.2.3",
"firebase": "^5.1.0",
"ionic-angular": "3.9.2",
"ionicons": "3.0.0",
"onesignal-cordova-plugin": "^2.4.1",
"promise-polyfill": "^8.0.0",
"rxjs": "5.5.11",
"sw-toolbox": "3.6.0",
"zone.js": "0.8.26"
......@@ -35,5 +46,15 @@
"@ionic/app-scripts": "3.1.10",
"typescript": "~2.6.2"
},
"description": "An Ionic project"
"description": "An Ionic project",
"cordova": {
"plugins": {
"cordova-plugin-network-information": {},
"onesignal-cordova-plugin": {},
"cordova-plugin-request-location-accuracy": {},
"cordova-plugin-geolocation": {
"GEOLOCATION_USAGE_DESCRIPTION": "To locate you"
}
}
}
}
import { Component, ViewChild } from '@angular/core';
import { Nav, Platform } from 'ionic-angular';
import { Nav, Platform,AlertController,Events } from 'ionic-angular';
import { StatusBar } from '@ionic-native/status-bar';
import { SplashScreen } from '@ionic-native/splash-screen';
import { HomePage } from '../pages/home/home';
import { ListPage } from '../pages/list/list';
import { Network } from '@ionic-native/network';
import { OneSignal } from '@ionic-native/onesignal';
import { LocationAccuracy } from '@ionic-native/location-accuracy';
import { Storage } from "@ionic/storage";
import { Myservice } from "../providers/myservice";
import { driver } from "../models/mymodel";
@Component({
templateUrl: 'app.html'
})
export class MyApp {
@ViewChild(Nav) nav: Nav;
rootPage: any = HomePage;
rootPage: any = "LandingPage";
pages: Array<{title: string, component: any}>;
local:driver
constructor(public platform: Platform, public statusBar: StatusBar, public splashScreen: SplashScreen) {
constructor(public platform: Platform, public statusBar: StatusBar, public splashScreen: SplashScreen, private network: Network, private alertCtrl: AlertController, private oneSignal: OneSignal, private locationAccuracy: LocationAccuracy, private storage: Storage, private myservice: Myservice, public events: Events) {
this.initializeApp();
// used for an example of ngFor and navigation
this.pages = [
{ title: 'Home', component: HomePage },
{ title: 'List', component: ListPage }
];
}
initializeApp() {
this.platform.ready().then(() => {
// Okay, so the platform is ready and our plugins are available.
// Here you can do any higher level native things you might need.
// this.initOnesignal();
this.statusBar.styleDefault();
this.splashScreen.hide();
let disconnectSubscription = this.network.onDisconnect().subscribe(() => {
const alert = this.alertCtrl.create({
title: 'Network Error',
message: 'No Internet Connection',
buttons: [
{
text: 'Quit',
handler: data => {
this.platform.exitApp();
}
}, {
text: 'Cancel',
role: 'cancel'
}
]
});
alert.present();
});
// this.enableLoc()
this.events.subscribe('driver:profile', data => {
this.local = data
if (this.local) {
this.local.image = this.local.image.startsWith("http") ? this.local.image : this.myservice.base_url + this.local.image;
}
})
this.storage.get('driver_data').then(data=>{
if(data!=null){
this.local = data
this.rootPage = 'HomePage'
// this.oneSignal.getIds().then((id) => {
// this.myservice.load_post({deviceid:id.userId,driverid:this.local.id},'updateDeviceid')
// })
}
else{
this.rootPage = 'LandingPage'
}
})
});
}
openPage(page) {
// Reset the content nav to have just this page
// we wouldn't want the back button to show in this scenario
this.nav.setRoot(page.component);
if (page == 'LandingPage'){
this.storage.clear()
}
this.nav.setRoot(page);
}
initOnesignal() {
this.oneSignal.startInit('ec007986-ae84-45fb-a770-f5be1e203acd', '151146703576');
this.oneSignal.inFocusDisplaying(this.oneSignal.OSInFocusDisplayOption.InAppAlert);
this.oneSignal.handleNotificationReceived().subscribe(() => {
// do something when notification is received
});
this.oneSignal.handleNotificationOpened().subscribe(() => {
// do something when a notification is opened
});
this.oneSignal.endInit();
}
enableLoc() {
this.locationAccuracy.canRequest().then((canRequest: boolean) => {
if (canRequest) {
// the accuracy option will be ignored by iOS
this.locationAccuracy.request(this.locationAccuracy.REQUEST_PRIORITY_HIGH_ACCURACY).then(
() => console.log('Request successful'),
error => console.log('Error requesting location permissions', error)
);
}
});
}
}
<ion-menu [content]="content">
<ion-header>
<ion-toolbar>
<ion-title>Menu</ion-title>
</ion-toolbar>
</ion-header>
<ion-content>
<ion-list>
<button menuClose ion-item *ngFor="let p of pages" (click)="openPage(p)">
{{p.title}}
</button>
</ion-list>
<ion-content class="theme_bgcolor">
<div class="cab_sidemenu_wrapper">
<div menuClose class="cab_profile_banner" (click)="openPage('ProfilePage')">
<div class="cab_profile_picture">
<img [src]="local?.image">
</div>
<p>{{local?.name}}</p>
<h6>{{local?.dial_code}} {{local?.phone}}</h6>
</div>
<div class="cab_sidemenu_list">
<ul>
<li menuClose>Book Ride</li>
<li menuClose>My Trips</li>
<li menuClose>Settings</li>
<li menuClose (click)="openPage('LandingPage')">Logout</li>
</ul>
</div>
</div>
</ion-content>
</ion-menu>
......
......@@ -3,32 +3,57 @@ import { ErrorHandler, NgModule } from '@angular/core';
import { IonicApp, IonicErrorHandler, IonicModule } from 'ionic-angular';
import { MyApp } from './app.component';
import { HomePage } from '../pages/home/home';
import { ListPage } from '../pages/list/list';
import { StatusBar } from '@ionic-native/status-bar';
import { SplashScreen } from '@ionic-native/splash-screen';
import { Network } from '@ionic-native/network';
import { OneSignal } from '@ionic-native/onesignal';
import { LocationAccuracy } from '@ionic-native/location-accuracy';
import { Myservice } from "../providers/myservice";
import { HttpModule } from "@angular/http";
import { IonicStorageModule } from '@ionic/storage';
import { OrderbyPipe } from '../providers/sort-pipe';
import { Geolocation } from '@ionic-native/geolocation';
import { fireService } from "../providers/firebase.service";
import { AngularFireDatabase } from 'angularfire2/database';
import { AngularFireModule } from 'angularfire2';
export const firebaseConfig = {
apiKey: "AIzaSyDLrbLd4RCCh86xuTVu7-cfJ28We_cG1sU",
authDomain: "callmycab-205809.firebaseapp.com",
databaseURL: "https://callmycab-205809.firebaseio.com",
projectId: "callmycab-205809",
storageBucket: "callmycab-205809.appspot.com",
messagingSenderId: "151146703576"
};
@NgModule({
declarations: [
MyApp,
HomePage,
ListPage
MyApp
],
imports: [
BrowserModule,
IonicModule.forRoot(MyApp),
HttpModule,
IonicStorageModule.forRoot(),
AngularFireModule.initializeApp(firebaseConfig),
],
bootstrap: [IonicApp],
entryComponents: [
MyApp,
HomePage,
ListPage
MyApp
],
providers: [
StatusBar,
SplashScreen,
{provide: ErrorHandler, useClass: IonicErrorHandler}
{provide: ErrorHandler, useClass: IonicErrorHandler},
Network,
OneSignal,
LocationAccuracy,
Myservice,
OrderbyPipe,
Geolocation,
fireService,
AngularFireDatabase,
]
})
export class AppModule {}
// http://ionicframework.com/docs/theming/
// App Global Sass
// --------------------------------------------------
// Put style rules here that you want to apply globally. These
// styles are for the entire app and not just one component.
// Additionally, this file can be also used as an entry point
// to import other Sass files to be included in the output CSS.
//
// Shared Sass variables, which can be used to adjust Ionic's
// default Sass variables, belong in "theme/variables.scss".
//
// To declare rules for a specific mode, create a child rule
// for the .md, .ios, or .wp mode classes. The mode class is
// automatically applied to the <body> element in the app.
.cab_sidemenu_bg{background:#4d4d4d;background-size: cover !important;background-position: center !important;}
.cab_sidemenu_wrapper{width:100%;height:100%;
align-content: center;
display: flex;
flex-direction: column;
justify-content: center;
text-align: center;
padding-left: 30px;
}
.cab_sidemenu_wrapper hr{
border: 2px solid #f7941e;
height: 0px;
width: 30px;
border-radius: 20px;
margin-left: 0;
margin-top:20px;
margin-bottom:20px;
}
.cab_profile_banner{width:100%;}
.cab_profile_picture{width:100px;height:100px;border:2px solid #f7941e;background-size: 25px !important;border-radius:50%;background: url("../assets/img/avatar.png");background-position: center;background-repeat: no-repeat;}
.cab_profile_banner h6{color:#fff;margin:0px;font-size:16px;font-weight: 300;text-align:left;}
.cab_profile_banner p{color:#fff;margin:0px;font-size:24px;font-weight:300;text-align:left;padding-bottom: 7px;padding-top: 20px;}
.cab_profile_picture img{width:100%;height:100%;border-radius:50%;}
.cab_sidemenu_list{width:100%;}
.cab_sidemenu_list ul{width:100%;padding:0px;margin:0px;}
.cab_sidemenu_list ul li{list-style: none;color: #fff;font-size:16px;font-weight:300;text-align:left;padding-top:10px;padding-bottom:10px;background-position: left !important;background-repeat: no-repeat !important;padding-left: 35px;background-size:23px !important;}
.cab_sidemenu_list ul .book{background: url("../assets/img/book.png");}
.cab_sidemenu_list ul .trip{background: url("../assets/img/trip.png");}
.cab_sidemenu_list ul .rate{background: url("../assets/img/rate.png");}
.cab_sidemenu_list ul .payment{background: url("../assets/img/payment.png");}
.cab_sidemenu_list ul .offer{background: url("../assets/img/offer.png");}
.cab_sidemenu_list ul .settings{background: url("../assets/img/settings.png");}
.cab_sidemenu_list ul .logout{background: url("../assets/img/logout.png");}
.picker-wrapper{background: #ff9000 !important;}
.picker-toolbar{background: #ff9000 !important;}
.single_btn{width: 100% !important}
.txt_cntr{text-align: center}
.clr_wht{color: #fff}
.rate_est{font-size: 15px;padding-top: 5px}
.estim_li{padding-top: 5px !important;}
.button-md:hover:not(.disable-hover) {
background: #f7941e;
}
.loader {
border: 7px solid #fff;
border-radius: 50%;
border-top: 10px solid #ff9000;
width: 50px;
height: 50px;
-webkit-animation: spin 2s linear infinite; /* Safari */
animation: spin 2s linear infinite;
}
@-webkit-keyframes spin {
0% { -webkit-transform: rotate(0deg); }
100% { -webkit-transform: rotate(360deg); }
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
/*FONT*/
@import url('https://fonts.googleapis.com/css?family=Roboto:100,100i,300,300i,400,400i,500,500i,700,700i,900,900i');
*{font-family: 'Roboto', sans-serif;}
.fontweight400{font-weight: 400 !important;}
.width75{width:75% !important;}
.width50{width:50% !important;}
/*COLORS*/
/*THEMES & BACKGROUND*/
.themelogin_background{background: url("../assets/img/cab_login_bg.png");background-position:bottom;background-repeat: no-repeat;}
.themedark_theme{background: url("../assets/img/theme_dark_bg.png");background-position:bottom;background-repeat: no-repeat;}
.bg_none{background: none !important;}
.theme_bgcolor{background:#ff9000 !important;}
.theme_dark_bg{background:#404041 !important;}
.bg_transparent{background: transparent !important;}
/*BODY-STRUCTURE*/
.nav_header{width:100%;height: 45px;}
.nav_btn{width:45px;height:45px;background: transparent;margin: 0px;font-size: 25px;}
.nav_header_title{height:100%;font-size: 17px;color: #fff;font-weight:400;padding: 12px;width:calc(100% - 110px);font-weight: 300;letter-spacing: 3px;}
.clear{clear:both !important;}
.theme_color{color: #f7941e;}
.text_white{color:#fff !important;}
.text_size_18{font-size:18px !important;}
/*OVERWRITTEN*/
.header-md::after, .tabs-md[tabsPlacement="top"] > .tabbar::after, .footer-md::before, .tabs-md[tabsPlacement="bottom"] > .tabbar::before {background-image:none !important}
.picker-wrapper{background:#165b93 !important;color: #fff !important;}
.picker-toolbar{background:#165b93 !important;color: #fff !important;border:none !important;}
.picker-button{color: #fff !important;}
.picker-opt{color: #fff !important;}
.picker-below-highlight{background:#165b93 !important;border:none !important;}
.picker-above-highlight{background:#165b93 !important;border:none !important;}
.popover-content{border-radius: 10px !important;width: 150px !important;min-width: 0;min-height: 0;max-height: 90%;color: #000;background:transparent !important;}
.popover-content ion-content, .popover-content .scroll-content {background: #fafafa !important;}
ion-popover{background: rgba(0,0,0,0.6) !important;}
.popover-md .popover-content{top:50px !important;}
.swiper-slide{overflow: scroll !important;}
.slide-zoom{height:100% !important;}
.menu-inner{width:220px;}
.button-md{box-shadow: none !important;}
.activated{background: transparent !important;}
.button-default{background: transparent;}
/*SPACING & POSITION*/
.width100{width:100% !important;}
.p0{padding:0px !important;}
.pl0{padding-left: 0px !important;}
.pr0{padding-right:0px !important;}
.pt0{padding-top:0px !important;}
.pb0{padding-bottom: 0px !important;}
.p10{padding:10px !important;}
.m0{margin:0px !important;}
.ml0{margin-left: 0px !important;}
.mr0{margin-right: 0px !important;}
.mt0{margin-top: 0px !important;}
.mb0{margin-bottom: 0px !important;}
.top10{top:6px;}
.bottom10{bottom:10px;}
.left10{left:10px;}
.right10{right:10px;}
.bottom0{bottom:0px !important;padding:0px !important;font-size: 13px !important;}
.absolute{position: absolute !important;}
.relative{position: relative !important;}
.fixed{position: fixed !important;}
/*ALIGNMENT*/
.floatLeft{float:left !important;}
.floatRight{float:right !important;}
.textLeft{text-align: left !important;}
.textRight{text-align: right !important;}
.textCenter{text-align: center !important;}
/*ALERT*/
.alert{padding:4px;font-size:12px;border: 1px solid transparent;font-weight:300;transition: all 0.5s ease;border-bottom:0px;left:0px;right: 0px;opacity: .8;position: relative;top: 3px;}
.warning{color: #fff;background-color: #8a6d3b;}
.success{color: #fff;background-color: #3c763d;}
.error{color: #fff;background-color: #a94442;}
.cab_sidemenu_bg{background:#4d4d4d;background-size: cover !important;background-position: center !important;}
.cab_sidemenu_wrapper{width:100%;height:100%;}
.cab_profile_banner{width:100%;text-align:left;}
.cab_profile_picture{width:100px;height:100px;margin-left:0px;border:2px solid #fff;background-size: 25px !important;border-radius:50%;background: url("../assets/img/avatar.png");background-position: center;background-repeat: no-repeat;}
.cab_profile_banner h6{color:#fff;margin:0px;font-size:16px;font-weight: 400;padding-bottom: 7px;padding-top:0px;padding-left:0px;padding-right:10px;text-align: left;}
.cab_profile_banner p{color:#fff;margin:0px;font-size:20px;font-weight:300;padding-left:0px;padding-right:10px;text-align: left;}
.cab_profile_picture img{width:100%;height:100%;border-radius:50%;}
.cab_sidemenu_list{width:100%;padding-left:0px;padding-top:0px;}
.cab_sidemenu_list ul{width:100%;padding:0px;margin:0px;}
.cab_sidemenu_list ul li{list-style: none;color: #fff;font-size:16px;font-weight:300;padding-top:15px;padding-bottom:15px;background-position: left !important;background-repeat: no-repeat !important;padding-left:0px;background-size:23px !important;}
......@@ -45,5 +45,7 @@
<!-- The main bundle js is generated during the build process -->
<script src="build/main.js"></script>
<script src="http://maps.google.com/maps/api/js?libraries=places&key=AIzaSyCk1_NXO6fDntAzKEl7sO-z6Ut5evHLsKQ"></script>
</body>
</html>
export class dialcode{
country:string;
dialCode:number;
}
export class user{
email:string
id: string
mobile: string
name: string
image: string
dial_code: string
token:string
}
export class driver{
email:string
id: string
mobile: string
name: string
username: string
image: string
dial_code: string
token:string
}
export class cartype{
car_type:string
intialkm: string
intailrate: string
standardrate: string
extrahour: string
id: string
car_image: string
}
export class search{
id:string
userid: string
keyword: string
location: string
date: Date
}
\ No newline at end of file
<ion-header class="theme_dark_bg">
<button class="nav_btn theme_color" (click)="back()">
<ion-icon name="ios-arrow-back-outline"></ion-icon>
</button>
</ion-header>
<ion-content padding class="themelogin_background">
<div class="cab_login_wrapper">
<h4>Forgot Password</h4>
<hr>
<br>
<div class="cab_form">
<form [formGroup]="forgotForm">
<div class="cab_form_row">
<div class="cab_phone_number">
<input class="cab_phone_input floatRight cab_mail" type="email" placeholder="Email" formControlName="email">
<div class="clear"></div>
<div class="er_req textCenter" *ngIf="forgotForm.controls.email.invalid && (forgotForm.get('email').dirty || forgotForm.get('email').touched)">
Enter a valid Email
</div>
</div>
</div>
</form>
<br>
<br>
<div class="cab_form_row">
<button ion-button class="cab_sign_btn" (click)="forgot()" [disabled]="forgotForm.invalid">Sent recovery password</button>
</div>
</div>
</div>
</ion-content>
\ No newline at end of file
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { ForgotPage } from './forgot';
@NgModule({
declarations: [
ForgotPage,
],
imports: [
IonicPageModule.forChild(ForgotPage),
],
})
export class ForgotPageModule {}
page-forgot {
.scroll-content{
background: rgba(0,0,0,0.8);
}
.cab_logo{width:100%;text-align: center; padding-bottom: 30px;}
.cab_logo img{width:200px;}
.cab_login_wrapper{width:100%;}
.cab_login_wrapper h4{color: #fff;
font-size: 40px;
font-weight: 300;
text-align: left;
text-transform:capitalize;}
.cab_login_wrapper hr{border:2px solid #f7941e;height:0px;border-radius:20px;width:35px;margin-left:0px;}
.cab_phone_number{width:100%;height:50px;border-bottom:2px solid #ff9c00;}
.cab_phone_code{width:50px;height:100%;-webkit-appearance: none;-moz-appearance: none;background: transparent !important;text-align: center;border:none;padding-left: 10px;color: #fff;font-size: 18px;}
.cab_phone_code option{text-align: center;}
.cab_phone_input{width:100%;height:100%;border:none;color:#fff;font-size: 18px;padding-left: 10px;padding-right: 20px;}
.cab_phone_input::-webkit-input-placeholder {color:#fff;}
.cab_phone_input::-moz-placeholder {color:#fff;}
.cab_phone_input:-ms-input-placeholder {color:#fff;}
.cab_phone_input:-moz-placeholder {color:#fff;}
.cab_login_wrapper{width:100%;}
.cab_call{background: url("../assets/img/number.png");background-position: right;background-repeat: no-repeat;}
.cab_pass{background: url("../assets/img/password.png");background-position: right;background-repeat: no-repeat;}
.cab_user{background: url("../assets/img/user.png");background-position: right;background-repeat: no-repeat;}
.cab_mail{background: url("../assets/img/email.png");background-position: right;background-repeat: no-repeat;}
.cab_search{background: url("../assets/img/search.png") !important;background-position: right;background-repeat: no-repeat;}
.cab_currentlocation{background: url("../assets/img/currentlocation.png");background-position: right;background-repeat: no-repeat;}
.cab_location{background: url("../assets/img/location.png");background-position: right;background-repeat: no-repeat;}
.cab_confirmpass{background: url("../assets/img/confirmpass.png");background-position: right;background-repeat: no-repeat;}
.cab_form_row .item-block{background: transparent;padding-left:0px;border:none !important;margin:0 auto !important;width:200px !important;}
.cab_form_row .item-inner{border:none !important;}
.cab_form_row .checkbox-checked{background:#ff9c00 !important;border:1px solid #ff9c00 !important;}
.item .item-ios .checkbox-ios{margin-left:0px !important;margin-right:10px !important;}
.item .item-md .checkbox-md{margin-left:0px !important;margin-right:10px !important;}
.cab_sign_btn{height:45px;width:100%;background:#ff9c00;color: #fff;text-transform: capitalize !important;font-size: 18px;font-weight: 300;}
.cab_sign_btn1{height:45px;width:100%;border:1px solid #ff9c00;color: #ff9c00;background:transparent;text-transform: capitalize !important;font-size: 18px;font-weight: 300;}
.cab_form p{color: #fff;font-weight: 500;font-size: 18px;}
.er_req{color:#ff6060;padding-top: 10px;font-size: 15px}
}
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import { FormGroup, Validators, FormBuilder } from '@angular/forms'
import { Myservice } from '../../providers/myservice'
@IonicPage()
@Component({
selector: 'page-forgot',
templateUrl: 'forgot.html',
})
export class ForgotPage {
forgotForm: FormGroup
constructor(public navCtrl: NavController, public navParams: NavParams, private formbuilder: FormBuilder, private myservice: Myservice) {
this.forgotForm = this.formbuilder.group({
email: ['', Validators.compose([Validators.required, Validators.pattern("[a-zA-Z0-9.-_]{1,}@[a-zA-Z.-]{2,}[.]{1}[a-zA-Z]{2,}")])],
from:['doctor']
})
}
forgot() {
this.myservice.show_loader()
this.myservice.load_post(this.forgotForm.value, 'Forget_password').subscribe(response => {
this.myservice.hide_loader()
if (response.status == 'success') {
this.myservice.show_alert('', response.message)
this.navCtrl.pop();
}
else {
this.myservice.show_alert('', response.message)
}
})
}
back()
{
this.navCtrl.pop();
}
}
<ion-header>
<ion-navbar>
<button ion-button menuToggle>
<ion-header class="theme_dark_bg">
<button class="nav_btn theme_color floatLeft" menuToggle>
<ion-icon name="menu"></ion-icon>
</button>
<ion-title>Home</ion-title>
</ion-navbar>
<div class="nav_header_title floatLeft">
Rides
</div>
<div class="clear"></div>
<div class="rides_tab">
<li [class.active]="tab=='active'" (click)="tab_swap('active')">Upcoming
<div class="arrow-up"></div>
</li>
<!-- <li [class.active]="tab=='inactive'" (click)="tab_swap('inactive')">Ongoing
<div class="arrow-up"></div>
</li> -->
<li [class.active]="tab=='inactive1'" (click)="tab_swap('inactive1')">Completed
<div class="arrow-up"></div>
</li>
</div>
</ion-header>
<ion-content padding>
<h3>Ionic Menu Starter</h3>
<p>
If you get lost, the <a href="http://ionicframework.com/docs/v2">docs</a> will show you the way.
</p>
<button ion-button secondary menuToggle>Toggle Menu</button>
<ion-content padding class="home_background">
<div class="home_content_tab" [hidden]="tab != 'active'">
<ul>
<li *ngFor="let up of upcoming" (click)="rideDetails(up)">
<div class="home_content_circle">
<img [src]=baseurl+up.image />
</div>
<div class="home_content_detail">
<h5>{{up.username}}</h5>
<p class="yellow">{{up.pickup_area}}</p>
<p class="grey">{{up.drop_area}}</p>
</div>
<div class="home_content_right">
<p>{{up.pickup_date | date:'dd/MM/yy'}}</p>
<p>{{up.pickup_time}}</p>
</div>
<div class="clear"></div>
</li>
</ul>
<p *ngIf="upcoming?.length==0" class="blank">No rides found</p>
</div>
<!-- <div class="home_content_tab" [hidden]="tab != 'inactive'">
3
</div> -->
<div class="home_content_tab" [hidden]="tab != 'inactive1'">
<ul>
<li *ngFor="let comp of completed" (click)="rideDetails(comp)">
<div class="home_content_circle">
<img [src]=baseurl+comp.image />
</div>
<div class="home_content_detail">
<h5>{{comp.username}}</h5>
<p class="yellow">{{comp.pickup_area}}</p>
<p class="grey">{{comp.drop_area}}</p>
</div>
<div class="home_content_right">
<p>{{comp.pickup_date | date:'dd/MM/yy'}}</p>
<p>{{comp.pickup_time}}</p>
</div>
<div class="clear"></div>
</li>
</ul>
<p *ngIf="completed?.length==0" class="blank">No rides found</p>
</div>
</ion-content>
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { HomePage } from './home';
@NgModule({
declarations: [
HomePage,
],
imports: [
IonicPageModule.forChild(HomePage),
],
})
export class HomePageModule {}
page-home {
.home_background{
background: #f6f6f6;
}
.rides_tab{
li{
padding:0px;
list-style: none;
float: left;
width:50%;
text-align: center;
padding: 15px;
font-size: 18px;
color: #acacac;
font-weight: 300;
position: relative;
.arrow-up {
width: 0;
height: 0;
border-left: 10px solid transparent;
border-right: 10px solid transparent;
border-bottom: 10px solid #404041;
position: absolute;
bottom: 0px;
left: 40%;
}
}
.active{
color: #fff;
.arrow-up {
width: 0;
height: 0;
border-left: 10px solid transparent;
border-right: 10px solid transparent;
border-bottom: 10px solid #f6f6f6;
position: absolute;
}
}
}
.home_content_tab{
width: 100%;
ul{
padding: 0px;
margin:0px;
li{
background: #fff;
list-style: none;
padding: 15px;
margin-bottom: 10px;
.home_content_circle{
width:60px;
height:60px;
border-radius: 50%;
background: #ec820d;
float: left;
img{
width:100%;
height:100%;
object-fit:cover;
object-position:center;
border-radius: 50%;
}
}
.home_content_detail{
width:calc(100% - 150px);
float: left;
padding-left: 20px;
h5{
margin: 0px;
padding:0px;
color: #585858;
text-transform: uppercase;
padding-bottom:4px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
p{
padding:0px;
margin:0px;
color: #525252;
padding-top: 2px;
padding-bottom: 2px;
background-repeat: no-repeat !important;
padding-left: 20px;
background-size: 10px !important;
background-position: 0px !important;
font-size: 12px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.yellow{
background: url("../assets/img/yellowdot.png");
}
.grey{
background: url("../assets/img/greydot.png");
}
}
.home_content_right{
float: right;
width: 80px;
border-left:1px solid #acacac;
padding: 15px;
padding-right: 0px;
p{
color: #545454;
padding:0px;
margin:0px;
text-align: right;
font-size: 12px;
}
}
}
}
}
.blank{ padding-top: 50%;
text-align: center;
font-size: 20px;
font-weight: 500;
color: #ccb59a;}
}
import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import { Storage } from "@ionic/storage";
import { Myservice } from "../../providers/myservice";
@IonicPage()
@Component({
selector: 'page-home',
templateUrl: 'home.html'
templateUrl: 'home.html',
})
export class HomePage {
tab:any;
upcoming:any;
completed:any;
baseurl = this.myservice.base_url
constructor(public navCtrl: NavController) {
constructor(public navCtrl: NavController, public navParams: NavParams, private storage:Storage, private myservice:Myservice) {
}
ionViewDidEnter(){
this.storage.get('driver_data').then(data=>{
if(data){
this.myservice.load_post({id:data.id},'getMyRides').subscribe(response=>{
if(response.status == 'success'){
this.upcoming = response.data.upcoming
this.completed = response.data.completed
console.log(this.upcoming)
}
})
}
})
}
ionViewDidLoad() {
console.log('ionViewDidLoad HomePage');
this.tab = "active";
}
tab_swap(type) {
this.tab = type;
}
rideDetails(data){
this.navCtrl.push('RidedetailsPage',{data:data})
}
}
<ion-content class="themelogin_background">
<div class="cab_landing_wrapper">
<div class="cab_logo">
<img src="assets/img/logo.png">
</div>
<div class="cab_form">
<div class="cab_form_row">
<button ion-button class="cab_sign_btn" (click)="open_page('SignupPage')">New User ? Sign up now!</button>
</div>
<div class="cab_form_row">
<button ion-button class="cab_sign_btn1" (click)="open_page('SigninPage')">Sign in</button>
</div>
<!-- <div class="cab_form_row textCenter">
<p (click)="forgot()">Forgot Password</p>
</div> -->
</div>
</div>
</ion-content>
\ No newline at end of file
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { LandingPage } from './landing';
@NgModule({
declarations: [
LandingPage,
],
imports: [
IonicPageModule.forChild(LandingPage),
],
})
export class LandingPageModule {}
page-landing {
.scroll-content{
align-content: center;
display: flex;
flex-direction: column;
justify-content: center;
text-align: center;
background: rgba(0,0,0,0.8);
}
.cab_landing_wrapper{width:80%;margin:0 auto;}
.cab_logo{width:100%;text-align: center;}
.cab_logo img{width:200px;}
.cab_footer{width:100%;text-align: center;}
.cab_footer p{color: #3d3a3b;font-weight: 500;font-size: 18px;}
.cab_footer li{list-style: none;display: inline-block;color: #3d3a3b;font-size: 35px;margin:10px;}
.cab_sign_btn{height:45px;width:100%;background:#ff9c00;color: #fff;text-transform: capitalize !important;font-size: 18px;font-weight: 300;}
.cab_sign_btn1{height:45px;width:100%;border:1px solid #ff9c00;color: #ff9c00;background:transparent;text-transform: capitalize !important;font-size: 18px;font-weight: 300;}
.cab_form p{color: #3d3a3b;font-weight: 500;font-size: 18px;}
}
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
@IonicPage()
@Component({
selector: 'page-landing',
templateUrl: 'landing.html',
})
export class LandingPage {
constructor(public navCtrl: NavController, public navParams: NavParams) {
}
open_page(page){
this.navCtrl.push(page);
}
ionViewDidLoad() {
console.log('ionViewDidLoad LandingPage');
}
}
<!--
Generated template for the ListPage page.
See http://ionicframework.com/docs/components/#navigation for more info on
Ionic pages and navigation.
-->
<ion-header>
<ion-navbar>
<button ion-button menuToggle>
<ion-icon name="menu"></ion-icon>
</button>
<ion-title>List</ion-title>
<ion-title>list</ion-title>
</ion-navbar>
</ion-header>
<ion-content>
<ion-list>
<button ion-item *ngFor="let item of items" (click)="itemTapped($event, item)">
<ion-icon [name]="item.icon" item-start></ion-icon>
{{item.title}}
<div class="item-note" item-end>
{{item.note}}
</div>
</button>
</ion-list>
<div *ngIf="selectedItem" padding>
You navigated here from <b>{{selectedItem.title}}</b>
</div>
<ion-content padding>
</ion-content>
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { ListPage } from './list';
@NgModule({
declarations: [
ListPage,
],
imports: [
IonicPageModule.forChild(ListPage),
],
})
export class ListPageModule {}
import { Component } from '@angular/core';
import { NavController, NavParams } from 'ionic-angular';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
/**
* Generated class for the ListPage page.
*
* See https://ionicframework.com/docs/components/#navigation for more info on
* Ionic pages and navigation.
*/
@IonicPage()
@Component({
selector: 'page-list',
templateUrl: 'list.html'
templateUrl: 'list.html',
})
export class ListPage {
selectedItem: any;
icons: string[];
items: Array<{title: string, note: string, icon: string}>;
constructor(public navCtrl: NavController, public navParams: NavParams) {
// If we navigated to this page, we will have an item available as a nav param
this.selectedItem = navParams.get('item');
// Let's populate this page with some filler content for funzies
this.icons = ['flask', 'wifi', 'beer', 'football', 'basketball', 'paper-plane',
'american-football', 'boat', 'bluetooth', 'build'];
this.items = [];
for (let i = 1; i < 11; i++) {
this.items.push({
title: 'Item ' + i,
note: 'This is item #' + i,
icon: this.icons[Math.floor(Math.random() * this.icons.length)]
});
}
}
itemTapped(event, item) {
// That's right, we're pushing to ourselves!
this.navCtrl.push(ListPage, {
item: item
});
ionViewDidLoad() {
console.log('ionViewDidLoad ListPage');
}
}
<!--
Generated template for the ProfilePage page.
See http://ionicframework.com/docs/components/#navigation for more info on
Ionic pages and navigation.
-->
<ion-header>
<ion-navbar>
<ion-title>profile</ion-title>
</ion-navbar>
</ion-header>
<ion-content padding>
</ion-content>
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { ProfilePage } from './profile';
@NgModule({
declarations: [
ProfilePage,
],
imports: [
IonicPageModule.forChild(ProfilePage),
],
})
export class ProfilePageModule {}
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
@IonicPage()
@Component({
selector: 'page-profile',
templateUrl: 'profile.html',
})
export class ProfilePage {
constructor(public navCtrl: NavController, public navParams: NavParams) {
}
ionViewDidLoad() {
console.log('ionViewDidLoad ProfilePage');
}
}
<ion-header class="theme_dark_bg">
<button class="nav_btn theme_color floatLeft">
<ion-icon name="ios-arrow-back" (click)="back()"></ion-icon>
</button>
<div class="nav_header_title floatLeft">
Quick Ride
</div>
<div class="clear"></div>
</ion-header>
<ion-content padding>
<div class="jr_profile_content1">
<div class="jr_search_bottom_bay jr_padding0" >
<h5>You have a ride request</h5>
<hr>
<div class="jr_search_profile">
<img >
</div>
<div class="jr_search_profile_detail">
<br>
<h6>Lina Rhodes</h6>
</div>
<div class="jr_clear"></div>
</div>
<br>
<hr>
<br>
<div class="jr_from_to">
<li>
<div class="child1 from"><div class="jr_box1"></div></div>
<div class="child2 yellow"><strong>Electronic City</strong>
<p>fdgsdgsdg</p></div>
<div class="jr_clear"></div>
</li>
<li>
<div class="child1 to"></div>
<div class="child2 grey"><strong>HSR Layout</strong>
<p>gfhdfgthj</p></div>
<div class="jr_clear"></div>
</li>
</div>
<div class="jr_bottom_button_bay">
<button ion-button class="cab_footer_btn floatLeft accept">Accept</button>
<button ion-button class="cab_footer_btn floatRight reject">Remove</button>
</div>
</div>
</ion-content>
\ No newline at end of file
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { QuickridePage } from './quickride';
@NgModule({
declarations: [
QuickridePage,
],
imports: [
IonicPageModule.forChild(QuickridePage),
],
})
export class QuickridePageModule {}
page-quickride {
.jr_theme_color{background: #ff9000 !important;border:1px solid #ff9000;}
.jr_theme_color1{background:#f1672f !important;}
.jr_left{float: left !important;}
.jr_right{float: right !important;}
.jr_clear{clear: both;}
.jr_text_center{text-align: center !important;}
.jr_padding0{padding:0px !important;}
.jr_paddingtop0{padding-top:0px !important;}
.jr_margin0{margin:0px !important;}
.jr_paddingbtm0{padding-bottom:0px !important;}
.jr_marginbtm0{margin-bottom:0px !important;}
.jr_margintop0{margin-top:0px !important;}
.jr_bordernone{border:none !important;}
.jr_bg_none{background:none !important;}
.jr_transparent{background:rgba(0,0,0,0.8) !important;}
.button-md.activated {background-color:none !important;box-shadow:none !important;}
.button-md{box-shadow: none !important;}
/*LANDING-PAGE*/
.jr_landing_bg{background:url("../assets/img/jr_landing_bg.png") !important;background-repeat: no-repeat !important;background-position: center bottom !important;background-size: 100% !important;position: relative;}
.jr_login_bg{background:url("../assets/img/jr_login_bg.png") !important;background-repeat: no-repeat !important;background-position: center bottom !important;background-size: 100% !important;position: relative;}
.jr_sidemenu_bg{background:url("../assets/img/jr_sidemenu_bg.png") !important;background-repeat: no-repeat !important;height: 100%;background-position: center bottom !important; padding: 50px;
background-size:cover !important;position: relative;}
.jr_landing_overlay{background:linear-gradient(rgba(241, 103, 46, 0.8), rgba(239, 89, 124, 0.8));}
.jr_landing_overlay1{background:linear-gradient(rgba(32, 119, 163, 0.8), rgba(43, 30, 65, 0.8));}
.jr_slide{text-align: center;}
.jr_slide img{width:200px;margin-top: 10px;}
.jr_slide h4{color: #fff;font-size:24px;font-weight:200;margin:0px;}
.jr_slide h3{color: #fff;font-size:35px;margin:0px;padding-top:5px;padding-bottom: 5px;}
.jr_slide p{color: #fff;font-size:14px;font-weight:300; padding-top: 15px; line-height: 20px;}
.jr_space{width:100%;height:0px;}
.jr_landing_btm{position: fixed;width:100%;bottom:50px;z-index: 9; text-align: center;left:0px;right:0px;}
.jr_slide hr{border:1px solid #fff;width:40px;border-bottom: 1px solid #fff;border-top: 1px solid #fff;border-radius: 5px; margin-top: 25px;height: 0px;}
.jr_btm_btn{height:40px;border-radius:20px;background: #000000;color: #fff;font-family: 'Roboto', sans-serif;padding-left: 20px;padding-right: 20px;-webkit-transition: width 2s; /* For Safari 3.1 to 6.0 */
transition: width 2s;width: 120px;margin: 0 auto;text-align: center;font-size: 15px;padding: 10px;border:none; text-transform: capitalize;}
.jr_slider_inner{width:80%;margin:0 auto;position: absolute;left:0px;right:0px;top:10%;}
.jr_btm_btn img{width:8px;}
.jr_icon_bar{display: inline-block;width:100%;text-align: center;}
.jr_icon_bar span{display: inline-block;margin-left: 5px;margin-right: 5px;}
.jr_icon_bar span img{width:30px;}
.jr_last_slide_btn_bar{width:100%;text-align: center;}
.jr_strtd_btn{height:40px;border-radius:20px;background: #ffba00;color: #382c59;font-family: 'Roboto', sans-serif;padding-left: 20px;padding-right: 20px;-webkit-transition: width 2s; /* For Safari 3.1 to 6.0 */
transition: width 2s;width: 140px;margin: 0 auto;text-align: center;font-size: 15px;padding: 10px;border:none; }
.jr_sign_bar{width:100%;text-align: center;}
.jr_sign_bar ul{margin:0px;padding:0px;}
.jr_sign_bar ul li{display: inline-block;border:1px solid #fff;color: #fff;height:40px;border-radius:20px;padding-left: 20px;padding-right: 20px;text-align: center;font-size: 15px;padding: 10px;background: transparent !important;width:115px !important;margin:20px;}
.swiper-pagination{display: block !important;}
.swiper-pagination-bullet{background: #fff;border:1px solid #fff;}
/*HOME*/
.jr_header_btn{width:40px;height:40px;background: transparent;box-shadow: none;}
.jr_sidemenu_icon{background:url("../assets/img/jr_sidemenu_icon.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:20px !important;}
.jr_back_icon{background:url("../assets/img/jr_back_arrow_icon.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:12px !important;}
.jr_close_icon{background:url("../assets/img/jr_close.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:12px !important;}
.jr_mail_icon{background:url("../assets/img/jr_mail.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:20px !important;}
.jr_profile_icon{background:url("../assets/img/jr_profile.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:20px !important;}
.jr_alert_icon{background:url("../assets/img/jr_alert.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:20px !important;}
.jr_header_title{float: left;height:40px;margin-top: 5px;padding: 8px;padding-left: 0px;}
.jr_header_title h4{font-family: 'Roboto', sans-serif;color: #fff;margin:0px;font-weight: 300;font-size: 16px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis; position: relative;top:2px;}
.jr_header{padding-left:5px;padding-right:5px;box-shadow: none !important;background-image: none !important;}
.jr_body_wrapper{width:100%;height:100%;}
.jr_div_half{width:100%;height:50%;position: relative;}
.jr_div_half img{object-fit: cover;object-position: center;width:100%;height:100%;}
.jr_div_overlay{background: rgba(0,0,0,0.7);position: absolute;top:0px;left:0px;right:0px;bottom: 0px;text-align: center;padding: 15px;}
.jr_div_overlay p{text-align: center;color: #bababa;}
.jr_offer_ride{height:35px;width:130px;border-radius:20px;border:none;
background: -webkit-linear-gradient(left, #6a449b , #1379a1);
background: -o-linear-gradient(right, #6a449b, #1379a1);
background: -moz-linear-gradient(right, #6a449b, #1379a1);
background: linear-gradient(to right, #6a449b , #1379a1);
text-transform: capitalize !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride1{height:45px;width:130px;border:none;
background:#4d4d4d;
border-radius: 0px;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride2{height:45px;width:100%;
margin: 0px;
border:none;
border-radius: 0px;
background:#4d4d4d;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride3{height:45px;width:100%;
border:none;
border-radius: 0px;
background:#4d4d4d;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride4{height:35px;width:100%;border:none;
background:#2874a2;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride5{height:35px;width:100%;border:none;
background:#ff7200;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_over_inner{width:100%;position: relative;top: 25%;}
.jr_home_tab_content{width:100%;height:100%;}
.jr_home_tab_bay{width:100%;padding:5px;padding-top: 0px;}
.jr_home_tab_bay ul{width:100%;text-align: center;padding:5px;margin:0px;}
.jr_home_tab_bay ul li{width:40%;display: inline-block;text-align: center;color: #fff;padding: 4px;}
.jr_home_tab_bay ul .active{border:1px solid #fff;border-radius: 20px;}
/*OFFER-FIND-RIDE*/
.jr_ride_wrapper{width:100%; padding-top: 5px;height: 100%;}
.jr_ride_wrapper h5{text-align: center;color: #717171;font-weight: 300;}
.jr_offer_bg{width:100%;padding-top:20px;}
.jr_offer_bg img{}
.jr_ride_form{width:90%;margin:0 auto;padding-top:25px;position: relative;padding-bottom:60px;}
.jr_ride_input1{width:100%;height:30px;border:1px solid #959595;border-radius:20px;background:url("../assets/img/jr_blue_circle.png"),url("../assets/img/jr_loc.png") !important;font-family: 'Roboto', sans-serif;background-repeat: no-repeat !important;background-position: left 7px top 5px,right 8px top 5px!important;background-size:18px !important; padding-left: 35px;}
.jr_ride_input2{width:100%;height:30px;border:1px solid #959595;border-radius:20px;background:url("../assets/img/jr_orange_circle.png") !important;font-family: 'Roboto', sans-serif;background-repeat: no-repeat !important;background-position:7px,6px !important;background-size:18px !important; padding-left: 35px;}
.jr_box{height:15px;width:20px;border-left:1px dotted #959595;position: absolute;top:56px;left:17px;}
.jr_custom label {display: inline-block;cursor: pointer;position: relative;padding-left: 25px;margin-right: 15px;color: #8b8b8b;font-size: 13px;font-family: 'Roboto', sans-serif;font-weight:400;}
.jr_custom label:before {content: "";display: inline-block;width: 14px;height: 14px;margin-right: 10px;position: absolute;left: 0;bottom: 1px;background-color: #ffffff;border-radius:0px !important;border:1px solid #959595;border-radius:3px !important;}
.jr_custom label:before {border-radius: 8px;}
.jr_custom input[type=checkbox] {display: none;}
.jr_custom label:before {border-radius: 3px;}
.jr_custom input[type=checkbox]:checked + label:before {content: "\2713";font-size: 14px;color: #6a449b;text-align: center;line-height:16px;font-weight:600;}
.jr_custom{padding-top: 30px;padding-bottom: 30px; padding-left: 5px;}
.jr_time_div{width:100%;}
.jr_date{width:65%;float: left;}
.jr_time{width: 35%;float: left;padding-left: 10px;}
.jr_input3{width:100%;border:none;min-height:30px !important;border-bottom:1px solid #959595;font-family: 'Roboto', sans-serif;padding: 0px !important;}
.jr_select{width:100%;border:none;height:30px;border-bottom:1px solid #959595;font-family: 'Roboto', sans-serif;color: #8b8b8b;-webkit-appearance: none;-moz-appearance: none;background:url("../assets/img/jr_dwn_arw.png");background-position: right;background-repeat: no-repeat;background-size: 15px; font-size: 16px;}
.jr_select option{color: #8b8b8b;font-family: 'Roboto', sans-serif;}
.jr_input3 .datetime-ios{padding: 0px !important;color: #646464;font-family: 'Roboto', sans-serif;}
.jr_input3 .datetime-md{padding: 0px !important;color: #646464;font-family: 'Roboto', sans-serif;}
.jr_bottom_button_bay{width:100%;position: fixed;bottom: 0px;padding:0px;left:0px;right:0px;text-align: center;}
.jr_seat_number{width:100%;padding-top:15px;}
.jr_seat_number ul{padding: 0px;margin:0px;}
.jr_seat_number ul li{display: inline-block;width:32px !important;height:32px;border-radius:50%;border:1px solid #4a4a4a;background:none !important;color: #4a4a4a;text-align: center;font-family: 'Roboto', sans-serif; font-size: 18px;padding: 6px !important; margin: 5px;}
.jr_seat_number ul li:hover{background:#4a4a4a;color: #fff;}
.jr_seat_number ul li:focus{background:#4a4a4a !important;color: #fff !important;}
.jr_seat_number span{color: #8b8b8b;font-family: 'Roboto', sans-serif;font-size: 16px;padding-right: 20px;}
.header-md::after, .tabs-md[tabsPlacement="top"] > .tabbar::after, .footer-md::before, .tabs-md[tabsPlacement="bottom"] > .tabbar::before{background-image: none !important;}
.jr_ride_wrapper p{text-align: center;color: #fff;font-weight: 200;}
.jr_archive_btn{height:30px;border-radius:20px;background: rgba(0,0,0,0.4) !important;font-weight: 200;font-size: 13px;padding-left: 20px;padding-right:20px;}
/*OFFER-RIDE-DETAILS*/
.jr_offerride_details{width: 100%;padding: 15px;padding-top: 0px !important;padding-bottom: 30px;}
.jr_offerride_details ul{margin:0px;padding:0px;}
.jr_offerride_details ul li{width: 100%;list-style: none;border-bottom:1px solid #d0d0d0;padding-bottom: 15px;padding-top: 15px;padding-left: 0px !important;}
.jr_offerride_details ul li h4{margin:0px;font-family: 'Roboto', sans-serif;color: #717171;font-size:17px;font-weight: 400;padding-bottom: 10px;padding-top: 10px;}
.jr_offerride_details ul li h4 img{width:18px;position: relative;top: 3px;margin-right:10px;}
.jr_offerride_detail_content{width:100%;}
.jr_offerride_detail_content_left{width:60%;float: left;}
.jr_offerride_detail_content_right{width:40%;float: right;height:50px;border-left:1px solid #d0d0d0;}
.jr_offerride_price_tag{text-align:right;padding-top: 5px;}
.jr_offer_price{font-family: 'Roboto', sans-serif;color: #2078a2;font-size:30px;font-weight: 600;padding-left:7px;padding-right:7px;}
.jr_offerride_price_tag img{width:20px;}
.jr_destination{padding-top:7px;}
.jr_destination span{font-family: 'Roboto', sans-serif;color: #717171;font-size:16px;font-weight: 400;}
.jr_destination span img{width:12px;margin-right:10px;}
.jr_offerride_details ul li h5{font-family: 'Roboto', sans-serif;color: #717171;margin-top:0px;font-weight: 400;font-size: 16px;padding-left: 30px;}
.jr_offerride_details ul li p{font-family: 'Roboto', sans-serif;color: #7d7d7d;padding-left: 30px;line-height: 18px; margin-top: 0px;}
.jr_addcomment_btn{font-family: 'Roboto', sans-serif;color: #fff;font-weight: 300;font-size: 14px;border-radius:20px;height: 30px;background: #363636;padding-left: 20px;padding-right: 20px;text-transform: capitalize;margin-top:15px;}
.jr_select_offer_outter{padding-left:25px;padding-bottom: 20px;}
.jr_select_offer{width:100%;border:none;background: transparent;color: #363636;font-family: 'Roboto', sans-serif; font-size: 20px;-webkit-appearance: none;-moz-appearance: none;background:url("../assets/img/jr_dwn_arw.png");background-position: right;background-repeat: no-repeat;background-size: 15px;}
.jr_input_comment{width:100%;font-family: 'Roboto', sans-serif;border:none;font-size: 16px;margin-top:10px;}
.jr_tick{margin:0 auto;}
.jr_tick img{width:50px;}
.jr_theme_trans_bg{background: rgba(35,119,162,0.9);}
.jr_almost_wrapper{text-align: center; position: absolute;width: 100%;top: 15%;}
.jr_almost_wrapper h3{color: #fff;font-size: 24px;font-weight: 300;}
.jr_almost_wrapper p{color: #fff;font-size: 16px;font-weight: 300;}
.jr_almost_wrapper hr{border:2px solid #85b5cc;height:0px;width:50px;margin:0 auto;border-top:none;margin-top: 30px;margin-bottom: 30px;}
.jr_loginpop_btn{height:35px;border-radius:20px;background: #fff;width:110px;margin:0 auto;color: #2077a3;font-weight: 500;font-size: 15px;margin:5px;}
.jr_signpop_btn{height:35px;border-radius:20px;background:transparent;width:110px;margin:0 auto;color: #fff;font-weight: 500;font-size: 15px;border:1px solid #fff;margin:5px;}
.jr_more_pop_up{position: absolute;top:15px;right:10px;background: transparent;}
.jr_more_pop_up img{height: 20px;}
.jr_profile_banner{width:100%;height:200px;background:url("../assets/img/jr_profile_banner.png") !important;background-size:100% !important;background-position: center !important;background-repeat: no-repeat !important;text-align: center;}
.jr_profile_photo{width:100px;height:100px;border-radius:50%;background-color: #2874a2 !important;margin:0 auto;background:url("../assets/img/jr_avatar.png");background-position: center;background-repeat: no-repeat; background-size: 30px !important; position: relative;top: 110px;}
.jr_profile_photo img{width:100%;height:100%;border-radius:50%;object-fit: cover;object-position: center;}
.jr_profile_photo1{width:100px;height:100px;border-radius:50%;background-color: #2874a2 !important;margin:0 auto;background:url("../assets/img/jr_avatar.png");background-position: center;background-repeat: no-repeat; background-size: 30px !important; position: relative;top: 130px;}
.jr_profile_photo1 img{width:100%;height:100%;border-radius:50%;object-fit: cover;object-position: center;}
.jr_profile_photo_edit{position: absolute;top:0px;right:0px;}
.jr_profile_photo_edit img{width:30px;}
.jr_profile_content{width:85%;margin:0 auto;padding-bottom: 30px;}
.jr_profile_content h4{text-align: center;color: #555555;width:100%;padding-top:25px;font-weight: 300;font-size: 16px;}
.jr_profile_content hr{border:2px solid #ff7200;width:40px;margin:0 auto;border-radius:5px;height:0px;margin-top: 15px;}
.jr_profile_tab_bay{width:100%;border-radius:20px;height:30px;border:1px solid #a1a1a1;margin-top: 30px;}
.jr_profile_tab_bay li{width:50%;display: inline-block;text-align: center;float: left;height: 100%;color: #555555;padding: 5px;font-size: 15px;border-radius:20px;}
.jr_profile_tab_bay .active{background: #434343;color: #fff;}
.jr_profile_tab_content{width:100%;padding-bottom: 30px;}
.jr_profile_tab_content h4{text-align: left;color: #434343;font-weight: 500;margin:0px;margin-bottom: 15px;font-size: 17px;}
.jr_profile_tab_content ul{width:100%;margin:0px;padding:0px;}
.jr_profile_tab_content ul li{width:100%;list-style: none;color: #777676;font-size: 17px;font-weight: 300;padding-bottom: 7px;padding-top: 7px;background:url("../assets/img/jr_right_arw.png");background-position: right !important;background-repeat: no-repeat !important;background-size: 10px;}
.jr_profile_tab_content hr{border:1px solid #dcdcdc;width:100%;margin:0 auto;border-radius:5px;height:0px;margin-top:25px;border-top:none;}
.jr_profile_tab_content ul .verified{background:url("../assets/img/jr_verified1.png");background-size: 15px;}
.verified{background:url("../assets/img/jr_verified1.png");background-size: 15px;background-position: right !important;background-repeat: no-repeat !important;}
/*EDIT-PROFILE*/
.jr_edit_row{padding-bottom:20px;}
.jr_edit_row h5{color:#434343;font-weight: 400;font-size: 16px; margin-top: 0px;margin:0px;}
.jr_edit_select{border:1px solid #b7b7b7;border-radius:20px;height: 30px;width: 170px;padding-left: 25px;padding-right: 10px;margin-left:15px;background:url("../assets/img/jr_down_arrow.png") !important;background-position: right 15px top 10px !important;background-repeat: no-repeat !important;-webkit-appearance: none;-moz-appearance: none; background-size: 20px !important;}
.jr_edit_profile_input{border:none;border-bottom: 1px solid #959595 !important;width:100% !important;height:30px; margin-top: 5px;}
.jr_width25{width:25%;float: left;}
.jr_width5{width:5%;float: left;}
.jr_width40{width:40%;float: left;}
.jr_edit_select1{margin-top:8px;border:1px solid #b7b7b7;border-radius:20px;height: 30px;width:100%;padding-left:10px;padding-right: 10px;background:url("../assets/img/jr_down_arrow.png") !important;background-position: right 15px top 10px !important;background-repeat: no-repeat !important;-webkit-appearance: none;-moz-appearance: none; background-size: 20px !important;}
.jr_edit_row p{color: #7d7d7d;text-align: justify;font-size: 15px;line-height: 20px;margin-bottom: 0px;}
.jr_width70{width:70%;float: left;padding-left: 10px;}
.jr_width30{width:30%;float: left;}
.jr_profile_content h3{color:#636363;}
.jr_pre_input{width:100%;height:30px;}
.jr_width15{width:15%;float: left;}
.jr_width85{width:85%;float: left;}
.jr_width15 span img{ width: 35px;}
.jr_pre_select1 {
border: 1px solid #b7b7b7;
border-radius: 20px;
height: 35px;
width: 100%;
padding-left:20px;
padding-right: 10px;
background: url(../assets/img/jr_down_arrow.png) !important;
background-position: right 15px top 10px !important;
background-repeat: no-repeat !important;
-webkit-appearance: none;
-moz-appearance: none;
background-size: 20px !important;
color: #717171;
}
.jr_chooseid{width:100px;position: relative;top: 90px;}
.jr_proofs_list{width:100%;}
.jr_proofs_list li{width:100%;list-style: none;padding-bottom: 10px;padding-top: 10px;}
.jr_proofs_list li p{float: left;color: #777676;padding: 0px;margin:0px;font-size: 18px;}
.jr_radio_id{float:right;}
.jr_radio_id .radio-icon{border-color:#ff7200 !important;}
.jr_radio_id .radio-inner{background-color:#ff7200 !important;}
.jr_confidential{width:100%;border-top:1px solid #959595;padding-top:25px;padding-bottom: 50px;}
.jr_confidential_left{width:25%;float: left;text-align: center;border-right:1px solid #959595;}
.jr_confidential_left img{width:30px;}
.jr_confidential_right{width:75%;float: right;padding-right:15px;}
.jr_confidential_right p{color:#989797;margin:0px;padding-left: 10px;}
.jr_upload_img{width:100%;}
.jr_chooseid1{width: 100px;position: relative;top:45px;}
.jr_country_code{width:20%;float: left;}
.jr_phone_number{width:75%;float: right;}
.jr_car_pic{width:60px;height:60px;border-radius:50%;background-color: #ff7200 !important; background: url(../assets/img/jr_cam.png);background-position: center !important;background-repeat: no-repeat;background-size:20px;float: left;position: relative;}
.jr_car_name{float: left; padding-left: 10px;position: relative;top: 10px;}
.jr_car_name h5{margin:0px;font-size: 16px;}
.jr_edit1{position: absolute;top:0px;right:0px;}
.jr_edit1 img{width:20px;}
.jr_car_name p{margin:0px;font-size: 12px;padding-top: 5px;}
.jr_no_seat{padding-top: 10px;}
.jr_no_seat h4{margin:0px;padding:0px;text-align: left;font-family: 'Roboto', sans-serif;color: #8b8b8b;font-size: 16px;}
.jr_no_seat h4 img{ width: 18px;margin-right:10px;}
.jr_close{}
.jr_close img{width:40px;margin-top:20px;}
.jr_space_height{height:100px;}
.jr_add_car_bg{background-color:#fff !important;background:url("../assets/img/jr_profile_banner.png");background-repeat: no-repeat !important;background-position: center bottom !important;background-size: 150% !important;}
.jr_upload_image_car{width:180px;height:180px;border-radius:50%;margin:0 auto;}
.jr_upload_image_car img{width:100%;height:100%;border-radius:50%;}
.jr_profile_banner1 {
width: 100%;
height: 200px;
background: url(../assets/img/jr_public_bg.png) !important;
background-size: 100% !important;
background-position: center !important;
background-repeat: no-repeat !important;
text-align: center;
}
/*SEARCH-RESULT*/
.jr_duration{width:100%;padding-top: 20px;padding-bottom: 20px;border-bottom:1px solid #bbbbbb;}
.jr_avg_duration{width: 50%;float: left;text-align: right !important;background:url("../assets/img/jr_clock.png");background-repeat: no-repeat !important;background-position:left !important;background-size: 25px !important;padding-right: 15px;}
.jr_avg_price{width:50%;float: left;text-align: left !important; padding-left: 15px;border-left:1px solid #bbbbbb;}
.jr_duration p{margin:0px;padding:0px;color: #818181;font-size: 11px;font-weight: 300;}
.jr_duration h4{margin:0px;padding:0px;color: #279a80; font-size: 13px;}
.jr_avg_duration p{text-align: right !important;}
.jr_avg_duration h4{text-align: right !important;padding-top: 4px;}
.jr_avg_price p{text-align: left !important;padding-bottom: 3px;}
.jr_avg_price h4{text-align: left !important;}
.jr_avg_price h4 strong{ font-size: 15px;}
.jr_search_main{width:100%;}
.jr_search_main h5{margin:0px;color: #434343;font-size: 16px;padding-top: 15px;padding-bottom:5px;}
.jr_search_main ul{margin:0px;padding: 0px;}
.jr_search_main ul li{list-style: none;background: #f5f5f5;margin-bottom: 3px;}
.jr_search_top_bay{width:100%;padding: 10px;border-bottom: 1px solid #e7e7e7;}
.jr_search_top_bay_left{float: left;}
.jr_search_top_bay_right{float: right;}
.jr_search_top_bay_left h6{color: #434343;margin:0px;padding: 0px; font-size: 12px;font-weight: 500;padding-bottom: 3px;}
.jr_search_top_bay_left h6 strong{color: #767676;margin:0px;padding: 0px;font-size: 14px;font-weight: 500;padding-left:8px;}
.jr_search_top_bay_right h6{text-align: right;color: #2078a2;margin:0px;padding: 0px;}
.jr_search_bottom_bay{width:100%;padding: 10px;}
.jr_search_bottom_bay h5{
text-align: center;
padding: 0px;
margin:0px;
color: #5d5d5d;
font-size: 20px;
padding-top: 10px;
}
.jr_search_bottom_bay hr{
margin-bottom: 40px;
height: 0px;
width: 50px;
border:2px solid #ff7200;
border-radius: 20px;
margin-top:10px;
}
.jr_search_profile{float: left;width:75px;height:75px;border-radius:50%;border:1px solid #2078a2;position: relative;}
.jr_search_profile img{width:100%;height:100%;border-radius:50%;object-fit: cover;object-position: center;}
.jr_search_profile_detail{float: left;padding-left: 15px;}
.jr_search_verified{position:absolute;top:0px;right:0px;}
.jr_search_verified img{width: 20px;border:none;}
.jr_search_profile_detail h6{margin:0px;color: #585858;font-weight: 400;font-size: 18px;padding-bottom: 5px;text-transform: uppercase; padding: 10px;}
.jr_star_ratting{color: #585858;font-weight: 300;}
.jr_star_ratting strong{padding-left:5px;padding-right: 10px;}
.jr_star_ratting img{width: 14px; position: relative;top: 1px}
.jr_search_profile_detail ul{margin:0px;padding: 0px;padding-top:10px;}
.jr_search_profile_detail ul li{display: inline-block;width:30px;height:30px;border:1px solid #2078a2;border-radius:50%;color: #585858;font-size: 10px;padding-top: 4px;text-align: center;}
.jr_search_profile_detail ul li span{position: relative;top:2px;}
.jr_filter_icon{width:50px;height:50px;background:url("../assets/img/jr_filter_icon.png");background-repeat: no-repeat !important;background-size: cover !important;position: fixed;bottom: 10px;right:20px;border-radius:50%;}
.jr_filter_okay{width:50px;height:50px;background:url("../assets/img/jr_filter_okay.png");background-repeat: no-repeat !important;background-size: cover !important;position: fixed;bottom: 10px;right:80px;border-radius:50%;}
.jr_filter_close{width:50px;height:50px;background:url("../assets/img/jr_filter_close.png");background-repeat: no-repeat !important;background-size: cover !important;position: fixed;bottom: 10px;right:20px;border-radius:50%;}
.jr_bookonline{height: 30px;border-radius:20px;border:none;background: #f16730;color: #fff;text-transform: capitalize;margin-top: 10px; font-size: 12px;}
.jr_preference_bay{width:100%;}
.jr_preference_bay ul{width:100%;text-align: left;padding: 0px;margin:0px;}
.jr_preference_bay ul li{display: inline-block;}
.jr_preference_bay ul li img{width: 30px;margin-right: 5px;}
.jr_verification{margin:0px;padding: 0px;padding-top: 5px;}
.jr_verification li {width: 100%;list-style: none;color: #777676;font-size: 17px;font-weight: 300;padding-bottom: 7px;padding-top: 7px;padding-left:30px;background-position:left !important;background-repeat: no-repeat !important;background-size: 10px;}
.jr_verification .verified{background:url("../assets/img/jr_verified1.png");background-size: 15px;}
.jr_verification .response{background:url("../assets/img/jr_response.png");background-size: 15px;}
.jr_verification .time{background:url("../assets/img/jr_time.png");background-size: 15px;}
.jr_verification .loca{background:url("../assets/img/jr_loca.png");background-size: 15px;}
.child1{width:40%;float: left;}
.child2{width:60%;float: left;background-repeat: no-repeat !important;
padding-left: 20px;
background-size: 13px !important;
background-position: 0px !important;
background-position: top 2px left 0px !important;}
.jr_time_schedule{padding-top: 0px;padding-bottom: 15px;}
.jr_time_schedule h5{color:#464646;font-weight: 300;font-size: 24px;}
.jr_from_to{width:100%;}
.jr_from_to li{list-style: none;width:100%; padding-bottom: 15px}
.jr_from_to .child1{width:25%;float: left;font-size: 16px;color: #464646;position: relative;}
.jr_from_to .child2{width:75%;float: left;padding-left: 25px;}
.jr_from_to .child2 strong{color: #595959;font-size: 16px;}
.jr_from_to .child2 p{color: #595959;font-weight: 300;margin: 0px; padding-top: 4px; font-size: 15px;}
.jr_from_to .from{border-radius: 20px;background: url(../assets/img/jr_blue_circle.png) !important;font-family: 'Roboto', sans-serif;background-repeat: no-repeat !important;background-position:right 8px top 2px !important;background-size: 16px !important;}
.jr_from_to .to{border-radius: 20px;background: url(../assets/img/jr_orange_circle.png)!important;font-family: 'Roboto', sans-serif;background-repeat: no-repeat !important;background-position:right 8px top 2px !important;background-size: 16px !important;}
// .jr_box1 {height: 50px;width: 20px;border-right: 1px solid #b6b6b6;position: absolute;top: 20px;right: 19%;}
.jr_available_seats{width:100%;color: #838383;font-size: 18px;padding-top: 20px;padding-bottom: 20px;}
.jr_available_seats strong{color: #464646;}
.jr_seats_left{float: left;width:50%;}
.jr_seats_right{float: right;width:50%;text-align: right;}
.jr_contact_btn{width: 100%;height:35px;border:1px solid #1d78a3;border-radius: 20px;color: #1d78a3;background: transparent;font-size: 15px;background: url(../assets/img/jr_call.png) !important;background-repeat: no-repeat !important;background-size: 20px !important;background-position: 15% !important;}
.jr_contact_btn span img{}
.cab_footer_btn{width:50%;height:50px;font-weight: 300;letter-spacing: 2px;border-radius:0px !important;background: #f7941e;color:#FFF;text-align: center;font-size: 16px;margin:0px;text-transform: capitalize !important;}
.jr_p{color: #717171 !important;text-align: left !important;font-size: 16px;font-weight: 400 !important;}
.accept{
background: #27a864 !important;
}
.reject{
background: #4d4d4d;
}
.yellow{
background: url("../assets/img/yellowdot.png");
}
.grey{
background: url("../assets/img/greydot.png");
}
}
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
@IonicPage()
@Component({
selector: 'page-quickride',
templateUrl: 'quickride.html',
})
export class QuickridePage {
constructor(public navCtrl: NavController, public navParams: NavParams) {
}
ionViewDidLoad() {
console.log('ionViewDidLoad QuickridePage');
}
back(){
this.navCtrl.pop()
}
}
<ion-header class="theme_dark_bg">
<button class="nav_btn theme_color floatLeft">
<ion-icon name="ios-arrow-back" (click)="back()"></ion-icon>
</button>
<div class="nav_header_title floatLeft">
Ride Details
</div>
<div class="clear"></div>
</ion-header>
<ion-content padding>
<div class="jr_profile_content1">
<div class="jr_from_to">
<li>
<div class="child1 from"><div class="jr_box1"></div></div>
<div class="child2 yellow"><strong>{{details.from}}</strong>
<p>{{details.fromAd}}</p></div>
<div class="jr_clear"></div>
</li>
<li>
<div class="child1 to"></div>
<div class="child2 grey"><strong>{{details.to}}</strong>
<p>{{details.toAd}}</p></div>
<div class="jr_clear"></div>
</li>
</div>
<hr>
<br>
<div class="jr_search_bottom_bay jr_padding0" >
<div class="jr_search_profile">
<img [src]=baseurl+details.image>
</div>
<div class="jr_search_profile_detail">
<br>
<h6>{{details.username}}</h6>
<span class="jr_star_ratting">
<strong>{{details.pickup_date|date:'dd/MM/yy'}}&nbsp;&nbsp;&nbsp;{{details.pickup_time}}
</strong></span>
<br>
</div>
<div class="jr_clear"></div>
</div>
<div class="jr_bottom_button_bay" *ngIf="details.status=='Booking'">
<button ion-button class="cab_footer_btn" (click)="pick()">Pick Up</button>
</div>
</div>
</ion-content>
\ No newline at end of file
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { RidedetailsPage } from './ridedetails';
@NgModule({
declarations: [
RidedetailsPage,
],
imports: [
IonicPageModule.forChild(RidedetailsPage),
],
})
export class RidedetailsPageModule {}
page-ridedetails {
.jr_theme_color{background: #ff9000 !important;border:1px solid #ff9000;}
.jr_theme_color1{background:#f1672f !important;}
.jr_left{float: left !important;}
.jr_right{float: right !important;}
.jr_clear{clear: both;}
.jr_text_center{text-align: center !important;}
.jr_padding0{padding:0px !important;}
.jr_paddingtop0{padding-top:0px !important;}
.jr_margin0{margin:0px !important;}
.jr_paddingbtm0{padding-bottom:0px !important;}
.jr_marginbtm0{margin-bottom:0px !important;}
.jr_margintop0{margin-top:0px !important;}
.jr_bordernone{border:none !important;}
.jr_bg_none{background:none !important;}
.jr_transparent{background:rgba(0,0,0,0.8) !important;}
.button-md.activated {background-color:none !important;box-shadow:none !important;}
.button-md{box-shadow: none !important;}
/*LANDING-PAGE*/
.jr_landing_bg{background:url("../assets/img/jr_landing_bg.png") !important;background-repeat: no-repeat !important;background-position: center bottom !important;background-size: 100% !important;position: relative;}
.jr_login_bg{background:url("../assets/img/jr_login_bg.png") !important;background-repeat: no-repeat !important;background-position: center bottom !important;background-size: 100% !important;position: relative;}
.jr_sidemenu_bg{background:url("../assets/img/jr_sidemenu_bg.png") !important;background-repeat: no-repeat !important;height: 100%;background-position: center bottom !important; padding: 50px;
background-size:cover !important;position: relative;}
.jr_landing_overlay{background:linear-gradient(rgba(241, 103, 46, 0.8), rgba(239, 89, 124, 0.8));}
.jr_landing_overlay1{background:linear-gradient(rgba(32, 119, 163, 0.8), rgba(43, 30, 65, 0.8));}
.jr_slide{text-align: center;}
.jr_slide img{width:200px;margin-top: 10px;}
.jr_slide h4{color: #fff;font-size:24px;font-weight:200;margin:0px;}
.jr_slide h3{color: #fff;font-size:35px;margin:0px;padding-top:5px;padding-bottom: 5px;}
.jr_slide p{color: #fff;font-size:14px;font-weight:300; padding-top: 15px; line-height: 20px;}
.jr_space{width:100%;height:0px;}
.jr_landing_btm{position: fixed;width:100%;bottom:50px;z-index: 9; text-align: center;left:0px;right:0px;}
.jr_slide hr{border:1px solid #fff;width:40px;border-bottom: 1px solid #fff;border-top: 1px solid #fff;border-radius: 5px; margin-top: 25px;height: 0px;}
.jr_btm_btn{height:40px;border-radius:20px;background: #000000;color: #fff;font-family: 'Roboto', sans-serif;padding-left: 20px;padding-right: 20px;-webkit-transition: width 2s; /* For Safari 3.1 to 6.0 */
transition: width 2s;width: 120px;margin: 0 auto;text-align: center;font-size: 15px;padding: 10px;border:none; text-transform: capitalize;}
.jr_slider_inner{width:80%;margin:0 auto;position: absolute;left:0px;right:0px;top:10%;}
.jr_btm_btn img{width:8px;}
.jr_icon_bar{display: inline-block;width:100%;text-align: center;}
.jr_icon_bar span{display: inline-block;margin-left: 5px;margin-right: 5px;}
.jr_icon_bar span img{width:30px;}
.jr_last_slide_btn_bar{width:100%;text-align: center;}
.jr_strtd_btn{height:40px;border-radius:20px;background: #ffba00;color: #382c59;font-family: 'Roboto', sans-serif;padding-left: 20px;padding-right: 20px;-webkit-transition: width 2s; /* For Safari 3.1 to 6.0 */
transition: width 2s;width: 140px;margin: 0 auto;text-align: center;font-size: 15px;padding: 10px;border:none; }
.jr_sign_bar{width:100%;text-align: center;}
.jr_sign_bar ul{margin:0px;padding:0px;}
.jr_sign_bar ul li{display: inline-block;border:1px solid #fff;color: #fff;height:40px;border-radius:20px;padding-left: 20px;padding-right: 20px;text-align: center;font-size: 15px;padding: 10px;background: transparent !important;width:115px !important;margin:20px;}
.swiper-pagination{display: block !important;}
.swiper-pagination-bullet{background: #fff;border:1px solid #fff;}
/*HOME*/
.jr_header_btn{width:40px;height:40px;background: transparent;box-shadow: none;}
.jr_sidemenu_icon{background:url("../assets/img/jr_sidemenu_icon.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:20px !important;}
.jr_back_icon{background:url("../assets/img/jr_back_arrow_icon.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:12px !important;}
.jr_close_icon{background:url("../assets/img/jr_close.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:12px !important;}
.jr_mail_icon{background:url("../assets/img/jr_mail.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:20px !important;}
.jr_profile_icon{background:url("../assets/img/jr_profile.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:20px !important;}
.jr_alert_icon{background:url("../assets/img/jr_alert.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:20px !important;}
.jr_header_title{float: left;height:40px;margin-top: 5px;padding: 8px;padding-left: 0px;}
.jr_header_title h4{font-family: 'Roboto', sans-serif;color: #fff;margin:0px;font-weight: 300;font-size: 16px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis; position: relative;top:2px;}
.jr_header{padding-left:5px;padding-right:5px;box-shadow: none !important;background-image: none !important;}
.jr_body_wrapper{width:100%;height:100%;}
.jr_div_half{width:100%;height:50%;position: relative;}
.jr_div_half img{object-fit: cover;object-position: center;width:100%;height:100%;}
.jr_div_overlay{background: rgba(0,0,0,0.7);position: absolute;top:0px;left:0px;right:0px;bottom: 0px;text-align: center;padding: 15px;}
.jr_div_overlay p{text-align: center;color: #bababa;}
.jr_offer_ride{height:35px;width:130px;border-radius:20px;border:none;
background: -webkit-linear-gradient(left, #6a449b , #1379a1);
background: -o-linear-gradient(right, #6a449b, #1379a1);
background: -moz-linear-gradient(right, #6a449b, #1379a1);
background: linear-gradient(to right, #6a449b , #1379a1);
text-transform: capitalize !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride1{height:45px;width:130px;border:none;
background:#4d4d4d;
border-radius: 0px;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride2{height:45px;width:100%;
margin: 0px;
border:none;
border-radius: 0px;
background:#4d4d4d;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride3{height:45px;width:100%;
border:none;
border-radius: 0px;
background:#4d4d4d;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride4{height:35px;width:100%;border:none;
background:#2874a2;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride5{height:35px;width:100%;border:none;
background:#ff7200;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_over_inner{width:100%;position: relative;top: 25%;}
.jr_home_tab_content{width:100%;height:100%;}
.jr_home_tab_bay{width:100%;padding:5px;padding-top: 0px;}
.jr_home_tab_bay ul{width:100%;text-align: center;padding:5px;margin:0px;}
.jr_home_tab_bay ul li{width:40%;display: inline-block;text-align: center;color: #fff;padding: 4px;}
.jr_home_tab_bay ul .active{border:1px solid #fff;border-radius: 20px;}
/*OFFER-FIND-RIDE*/
.jr_ride_wrapper{width:100%; padding-top: 5px;height: 100%;}
.jr_ride_wrapper h5{text-align: center;color: #717171;font-weight: 300;}
.jr_offer_bg{width:100%;padding-top:20px;}
.jr_offer_bg img{}
.jr_ride_form{width:90%;margin:0 auto;padding-top:25px;position: relative;padding-bottom:60px;}
.jr_ride_input1{width:100%;height:30px;border:1px solid #959595;border-radius:20px;background:url("../assets/img/jr_blue_circle.png"),url("../assets/img/jr_loc.png") !important;font-family: 'Roboto', sans-serif;background-repeat: no-repeat !important;background-position: left 7px top 5px,right 8px top 5px!important;background-size:18px !important; padding-left: 35px;}
.jr_ride_input2{width:100%;height:30px;border:1px solid #959595;border-radius:20px;background:url("../assets/img/jr_orange_circle.png") !important;font-family: 'Roboto', sans-serif;background-repeat: no-repeat !important;background-position:7px,6px !important;background-size:18px !important; padding-left: 35px;}
.jr_box{height:15px;width:20px;border-left:1px dotted #959595;position: absolute;top:56px;left:17px;}
.jr_custom label {display: inline-block;cursor: pointer;position: relative;padding-left: 25px;margin-right: 15px;color: #8b8b8b;font-size: 13px;font-family: 'Roboto', sans-serif;font-weight:400;}
.jr_custom label:before {content: "";display: inline-block;width: 14px;height: 14px;margin-right: 10px;position: absolute;left: 0;bottom: 1px;background-color: #ffffff;border-radius:0px !important;border:1px solid #959595;border-radius:3px !important;}
.jr_custom label:before {border-radius: 8px;}
.jr_custom input[type=checkbox] {display: none;}
.jr_custom label:before {border-radius: 3px;}
.jr_custom input[type=checkbox]:checked + label:before {content: "\2713";font-size: 14px;color: #6a449b;text-align: center;line-height:16px;font-weight:600;}
.jr_custom{padding-top: 30px;padding-bottom: 30px; padding-left: 5px;}
.jr_time_div{width:100%;}
.jr_date{width:65%;float: left;}
.jr_time{width: 35%;float: left;padding-left: 10px;}
.jr_input3{width:100%;border:none;min-height:30px !important;border-bottom:1px solid #959595;font-family: 'Roboto', sans-serif;padding: 0px !important;}
.jr_select{width:100%;border:none;height:30px;border-bottom:1px solid #959595;font-family: 'Roboto', sans-serif;color: #8b8b8b;-webkit-appearance: none;-moz-appearance: none;background:url("../assets/img/jr_dwn_arw.png");background-position: right;background-repeat: no-repeat;background-size: 15px; font-size: 16px;}
.jr_select option{color: #8b8b8b;font-family: 'Roboto', sans-serif;}
.jr_input3 .datetime-ios{padding: 0px !important;color: #646464;font-family: 'Roboto', sans-serif;}
.jr_input3 .datetime-md{padding: 0px !important;color: #646464;font-family: 'Roboto', sans-serif;}
.jr_bottom_button_bay{width:100%;position: fixed;bottom: 0px;padding:0px;left:0px;right:0px;text-align: center;}
.jr_seat_number{width:100%;padding-top:15px;}
.jr_seat_number ul{padding: 0px;margin:0px;}
.jr_seat_number ul li{display: inline-block;width:32px !important;height:32px;border-radius:50%;border:1px solid #4a4a4a;background:none !important;color: #4a4a4a;text-align: center;font-family: 'Roboto', sans-serif; font-size: 18px;padding: 6px !important; margin: 5px;}
.jr_seat_number ul li:hover{background:#4a4a4a;color: #fff;}
.jr_seat_number ul li:focus{background:#4a4a4a !important;color: #fff !important;}
.jr_seat_number span{color: #8b8b8b;font-family: 'Roboto', sans-serif;font-size: 16px;padding-right: 20px;}
.header-md::after, .tabs-md[tabsPlacement="top"] > .tabbar::after, .footer-md::before, .tabs-md[tabsPlacement="bottom"] > .tabbar::before{background-image: none !important;}
.jr_ride_wrapper p{text-align: center;color: #fff;font-weight: 200;}
.jr_archive_btn{height:30px;border-radius:20px;background: rgba(0,0,0,0.4) !important;font-weight: 200;font-size: 13px;padding-left: 20px;padding-right:20px;}
/*OFFER-RIDE-DETAILS*/
.jr_offerride_details{width: 100%;padding: 15px;padding-top: 0px !important;padding-bottom: 30px;}
.jr_offerride_details ul{margin:0px;padding:0px;}
.jr_offerride_details ul li{width: 100%;list-style: none;border-bottom:1px solid #d0d0d0;padding-bottom: 15px;padding-top: 15px;padding-left: 0px !important;}
.jr_offerride_details ul li h4{margin:0px;font-family: 'Roboto', sans-serif;color: #717171;font-size:17px;font-weight: 400;padding-bottom: 10px;padding-top: 10px;}
.jr_offerride_details ul li h4 img{width:18px;position: relative;top: 3px;margin-right:10px;}
.jr_offerride_detail_content{width:100%;}
.jr_offerride_detail_content_left{width:60%;float: left;}
.jr_offerride_detail_content_right{width:40%;float: right;height:50px;border-left:1px solid #d0d0d0;}
.jr_offerride_price_tag{text-align:right;padding-top: 5px;}
.jr_offer_price{font-family: 'Roboto', sans-serif;color: #2078a2;font-size:30px;font-weight: 600;padding-left:7px;padding-right:7px;}
.jr_offerride_price_tag img{width:20px;}
.jr_destination{padding-top:7px;}
.jr_destination span{font-family: 'Roboto', sans-serif;color: #717171;font-size:16px;font-weight: 400;}
.jr_destination span img{width:12px;margin-right:10px;}
.jr_offerride_details ul li h5{font-family: 'Roboto', sans-serif;color: #717171;margin-top:0px;font-weight: 400;font-size: 16px;padding-left: 30px;}
.jr_offerride_details ul li p{font-family: 'Roboto', sans-serif;color: #7d7d7d;padding-left: 30px;line-height: 18px; margin-top: 0px;}
.jr_addcomment_btn{font-family: 'Roboto', sans-serif;color: #fff;font-weight: 300;font-size: 14px;border-radius:20px;height: 30px;background: #363636;padding-left: 20px;padding-right: 20px;text-transform: capitalize;margin-top:15px;}
.jr_select_offer_outter{padding-left:25px;padding-bottom: 20px;}
.jr_select_offer{width:100%;border:none;background: transparent;color: #363636;font-family: 'Roboto', sans-serif; font-size: 20px;-webkit-appearance: none;-moz-appearance: none;background:url("../assets/img/jr_dwn_arw.png");background-position: right;background-repeat: no-repeat;background-size: 15px;}
.jr_input_comment{width:100%;font-family: 'Roboto', sans-serif;border:none;font-size: 16px;margin-top:10px;}
.jr_tick{margin:0 auto;}
.jr_tick img{width:50px;}
.jr_theme_trans_bg{background: rgba(35,119,162,0.9);}
.jr_almost_wrapper{text-align: center; position: absolute;width: 100%;top: 15%;}
.jr_almost_wrapper h3{color: #fff;font-size: 24px;font-weight: 300;}
.jr_almost_wrapper p{color: #fff;font-size: 16px;font-weight: 300;}
.jr_almost_wrapper hr{border:2px solid #85b5cc;height:0px;width:50px;margin:0 auto;border-top:none;margin-top: 30px;margin-bottom: 30px;}
.jr_loginpop_btn{height:35px;border-radius:20px;background: #fff;width:110px;margin:0 auto;color: #2077a3;font-weight: 500;font-size: 15px;margin:5px;}
.jr_signpop_btn{height:35px;border-radius:20px;background:transparent;width:110px;margin:0 auto;color: #fff;font-weight: 500;font-size: 15px;border:1px solid #fff;margin:5px;}
.jr_more_pop_up{position: absolute;top:15px;right:10px;background: transparent;}
.jr_more_pop_up img{height: 20px;}
.jr_profile_banner{width:100%;height:200px;background:url("../assets/img/jr_profile_banner.png") !important;background-size:100% !important;background-position: center !important;background-repeat: no-repeat !important;text-align: center;}
.jr_profile_photo{width:100px;height:100px;border-radius:50%;background-color: #2874a2 !important;margin:0 auto;background:url("../assets/img/jr_avatar.png");background-position: center;background-repeat: no-repeat; background-size: 30px !important; position: relative;top: 110px;}
.jr_profile_photo img{width:100%;height:100%;border-radius:50%;object-fit: cover;object-position: center;}
.jr_profile_photo1{width:100px;height:100px;border-radius:50%;background-color: #2874a2 !important;margin:0 auto;background:url("../assets/img/jr_avatar.png");background-position: center;background-repeat: no-repeat; background-size: 30px !important; position: relative;top: 130px;}
.jr_profile_photo1 img{width:100%;height:100%;border-radius:50%;object-fit: cover;object-position: center;}
.jr_profile_photo_edit{position: absolute;top:0px;right:0px;}
.jr_profile_photo_edit img{width:30px;}
.jr_profile_content{width:85%;margin:0 auto;padding-bottom: 30px;}
.jr_profile_content h4{text-align: center;color: #555555;width:100%;padding-top:25px;font-weight: 300;font-size: 16px;}
.jr_profile_content hr{border:2px solid #ff7200;width:40px;margin:0 auto;border-radius:5px;height:0px;margin-top: 15px;}
.jr_profile_tab_bay{width:100%;border-radius:20px;height:30px;border:1px solid #a1a1a1;margin-top: 30px;}
.jr_profile_tab_bay li{width:50%;display: inline-block;text-align: center;float: left;height: 100%;color: #555555;padding: 5px;font-size: 15px;border-radius:20px;}
.jr_profile_tab_bay .active{background: #434343;color: #fff;}
.jr_profile_tab_content{width:100%;padding-bottom: 30px;}
.jr_profile_tab_content h4{text-align: left;color: #434343;font-weight: 500;margin:0px;margin-bottom: 15px;font-size: 17px;}
.jr_profile_tab_content ul{width:100%;margin:0px;padding:0px;}
.jr_profile_tab_content ul li{width:100%;list-style: none;color: #777676;font-size: 17px;font-weight: 300;padding-bottom: 7px;padding-top: 7px;background:url("../assets/img/jr_right_arw.png");background-position: right !important;background-repeat: no-repeat !important;background-size: 10px;}
.jr_profile_tab_content hr{border:1px solid #dcdcdc;width:100%;margin:0 auto;border-radius:5px;height:0px;margin-top:25px;border-top:none;}
.jr_profile_tab_content ul .verified{background:url("../assets/img/jr_verified1.png");background-size: 15px;}
.verified{background:url("../assets/img/jr_verified1.png");background-size: 15px;background-position: right !important;background-repeat: no-repeat !important;}
/*EDIT-PROFILE*/
.jr_edit_row{padding-bottom:20px;}
.jr_edit_row h5{color:#434343;font-weight: 400;font-size: 16px; margin-top: 0px;margin:0px;}
.jr_edit_select{border:1px solid #b7b7b7;border-radius:20px;height: 30px;width: 170px;padding-left: 25px;padding-right: 10px;margin-left:15px;background:url("../assets/img/jr_down_arrow.png") !important;background-position: right 15px top 10px !important;background-repeat: no-repeat !important;-webkit-appearance: none;-moz-appearance: none; background-size: 20px !important;}
.jr_edit_profile_input{border:none;border-bottom: 1px solid #959595 !important;width:100% !important;height:30px; margin-top: 5px;}
.jr_width25{width:25%;float: left;}
.jr_width5{width:5%;float: left;}
.jr_width40{width:40%;float: left;}
.jr_edit_select1{margin-top:8px;border:1px solid #b7b7b7;border-radius:20px;height: 30px;width:100%;padding-left:10px;padding-right: 10px;background:url("../assets/img/jr_down_arrow.png") !important;background-position: right 15px top 10px !important;background-repeat: no-repeat !important;-webkit-appearance: none;-moz-appearance: none; background-size: 20px !important;}
.jr_edit_row p{color: #7d7d7d;text-align: justify;font-size: 15px;line-height: 20px;margin-bottom: 0px;}
.jr_width70{width:70%;float: left;padding-left: 10px;}
.jr_width30{width:30%;float: left;}
.jr_profile_content h3{color:#636363;}
.jr_pre_input{width:100%;height:30px;}
.jr_width15{width:15%;float: left;}
.jr_width85{width:85%;float: left;}
.jr_width15 span img{ width: 35px;}
.jr_pre_select1 {
border: 1px solid #b7b7b7;
border-radius: 20px;
height: 35px;
width: 100%;
padding-left:20px;
padding-right: 10px;
background: url(../assets/img/jr_down_arrow.png) !important;
background-position: right 15px top 10px !important;
background-repeat: no-repeat !important;
-webkit-appearance: none;
-moz-appearance: none;
background-size: 20px !important;
color: #717171;
}
.jr_chooseid{width:100px;position: relative;top: 90px;}
.jr_proofs_list{width:100%;}
.jr_proofs_list li{width:100%;list-style: none;padding-bottom: 10px;padding-top: 10px;}
.jr_proofs_list li p{float: left;color: #777676;padding: 0px;margin:0px;font-size: 18px;}
.jr_radio_id{float:right;}
.jr_radio_id .radio-icon{border-color:#ff7200 !important;}
.jr_radio_id .radio-inner{background-color:#ff7200 !important;}
.jr_confidential{width:100%;border-top:1px solid #959595;padding-top:25px;padding-bottom: 50px;}
.jr_confidential_left{width:25%;float: left;text-align: center;border-right:1px solid #959595;}
.jr_confidential_left img{width:30px;}
.jr_confidential_right{width:75%;float: right;padding-right:15px;}
.jr_confidential_right p{color:#989797;margin:0px;padding-left: 10px;}
.jr_upload_img{width:100%;}
.jr_chooseid1{width: 100px;position: relative;top:45px;}
.jr_country_code{width:20%;float: left;}
.jr_phone_number{width:75%;float: right;}
.jr_car_pic{width:60px;height:60px;border-radius:50%;background-color: #ff7200 !important; background: url(../assets/img/jr_cam.png);background-position: center !important;background-repeat: no-repeat;background-size:20px;float: left;position: relative;}
.jr_car_name{float: left; padding-left: 10px;position: relative;top: 10px;}
.jr_car_name h5{margin:0px;font-size: 16px;}
.jr_edit1{position: absolute;top:0px;right:0px;}
.jr_edit1 img{width:20px;}
.jr_car_name p{margin:0px;font-size: 12px;padding-top: 5px;}
.jr_no_seat{padding-top: 10px;}
.jr_no_seat h4{margin:0px;padding:0px;text-align: left;font-family: 'Roboto', sans-serif;color: #8b8b8b;font-size: 16px;}
.jr_no_seat h4 img{ width: 18px;margin-right:10px;}
.jr_close{}
.jr_close img{width:40px;margin-top:20px;}
.jr_space_height{height:100px;}
.jr_add_car_bg{background-color:#fff !important;background:url("../assets/img/jr_profile_banner.png");background-repeat: no-repeat !important;background-position: center bottom !important;background-size: 150% !important;}
.jr_upload_image_car{width:180px;height:180px;border-radius:50%;margin:0 auto;}
.jr_upload_image_car img{width:100%;height:100%;border-radius:50%;}
.jr_profile_banner1 {
width: 100%;
height: 200px;
background: url(../assets/img/jr_public_bg.png) !important;
background-size: 100% !important;
background-position: center !important;
background-repeat: no-repeat !important;
text-align: center;
}
/*SEARCH-RESULT*/
.jr_duration{width:100%;padding-top: 20px;padding-bottom: 20px;border-bottom:1px solid #bbbbbb;}
.jr_avg_duration{width: 50%;float: left;text-align: right !important;background:url("../assets/img/jr_clock.png");background-repeat: no-repeat !important;background-position:left !important;background-size: 25px !important;padding-right: 15px;}
.jr_avg_price{width:50%;float: left;text-align: left !important; padding-left: 15px;border-left:1px solid #bbbbbb;}
.jr_duration p{margin:0px;padding:0px;color: #818181;font-size: 11px;font-weight: 300;}
.jr_duration h4{margin:0px;padding:0px;color: #279a80; font-size: 13px;}
.jr_avg_duration p{text-align: right !important;}
.jr_avg_duration h4{text-align: right !important;padding-top: 4px;}
.jr_avg_price p{text-align: left !important;padding-bottom: 3px;}
.jr_avg_price h4{text-align: left !important;}
.jr_avg_price h4 strong{ font-size: 15px;}
.jr_search_main{width:100%;}
.jr_search_main h5{margin:0px;color: #434343;font-size: 16px;padding-top: 15px;padding-bottom:5px;}
.jr_search_main ul{margin:0px;padding: 0px;}
.jr_search_main ul li{list-style: none;background: #f5f5f5;margin-bottom: 3px;}
.jr_search_top_bay{width:100%;padding: 10px;border-bottom: 1px solid #e7e7e7;}
.jr_search_top_bay_left{float: left;}
.jr_search_top_bay_right{float: right;}
.jr_search_top_bay_left h6{color: #434343;margin:0px;padding: 0px; font-size: 12px;font-weight: 500;padding-bottom: 3px;}
.jr_search_top_bay_left h6 strong{color: #767676;margin:0px;padding: 0px;font-size: 14px;font-weight: 500;padding-left:8px;}
.jr_search_top_bay_right h6{text-align: right;color: #2078a2;margin:0px;padding: 0px;}
.jr_search_bottom_bay{width:100%;padding: 10px;}
.jr_search_profile{float: left;width:75px;height:75px;border-radius:50%;border:1px solid #2078a2;position: relative;}
.jr_search_profile img{width:100%;height:100%;border-radius:50%;object-fit: cover;object-position: center;}
.jr_search_profile_detail{float: left;padding-left: 15px;}
.jr_search_verified{position:absolute;top:0px;right:0px;}
.jr_search_verified img{width: 20px;border:none;}
.jr_search_profile_detail h6{margin:0px;color: #585858;font-weight: 400;font-size: 18px;padding-bottom: 5px;text-transform: uppercase;}
.jr_star_ratting{color: #585858;font-weight: 300;}
.jr_star_ratting strong{padding-left:5px;padding-right: 10px;}
.jr_star_ratting img{width: 14px; position: relative;top: 1px}
.jr_search_profile_detail ul{margin:0px;padding: 0px;padding-top:10px;}
.jr_search_profile_detail ul li{display: inline-block;width:30px;height:30px;border:1px solid #2078a2;border-radius:50%;color: #585858;font-size: 10px;padding-top: 4px;text-align: center;}
.jr_search_profile_detail ul li span{position: relative;top:2px;}
.jr_filter_icon{width:50px;height:50px;background:url("../assets/img/jr_filter_icon.png");background-repeat: no-repeat !important;background-size: cover !important;position: fixed;bottom: 10px;right:20px;border-radius:50%;}
.jr_filter_okay{width:50px;height:50px;background:url("../assets/img/jr_filter_okay.png");background-repeat: no-repeat !important;background-size: cover !important;position: fixed;bottom: 10px;right:80px;border-radius:50%;}
.jr_filter_close{width:50px;height:50px;background:url("../assets/img/jr_filter_close.png");background-repeat: no-repeat !important;background-size: cover !important;position: fixed;bottom: 10px;right:20px;border-radius:50%;}
.jr_bookonline{height: 30px;border-radius:20px;border:none;background: #f16730;color: #fff;text-transform: capitalize;margin-top: 10px; font-size: 12px;}
.jr_preference_bay{width:100%;}
.jr_preference_bay ul{width:100%;text-align: left;padding: 0px;margin:0px;}
.jr_preference_bay ul li{display: inline-block;}
.jr_preference_bay ul li img{width: 30px;margin-right: 5px;}
.jr_verification{margin:0px;padding: 0px;padding-top: 5px;}
.jr_verification li {width: 100%;list-style: none;color: #777676;font-size: 17px;font-weight: 300;padding-bottom: 7px;padding-top: 7px;padding-left:30px;background-position:left !important;background-repeat: no-repeat !important;background-size: 10px;}
.jr_verification .verified{background:url("../assets/img/jr_verified1.png");background-size: 15px;}
.jr_verification .response{background:url("../assets/img/jr_response.png");background-size: 15px;}
.jr_verification .time{background:url("../assets/img/jr_time.png");background-size: 15px;}
.jr_verification .loca{background:url("../assets/img/jr_loca.png");background-size: 15px;}
.child1{width:40%;float: left;}
.child2{width:60%;float: left;background-repeat: no-repeat !important;
padding-left: 20px;
background-size: 13px !important;
background-position: 0px !important;
background-position: top 2px left 0px !important;}
.jr_time_schedule{padding-top: 0px;padding-bottom: 15px;}
.jr_time_schedule h5{color:#464646;font-weight: 300;font-size: 24px;}
.jr_from_to{width:100%;}
.jr_from_to li{list-style: none;width:100%; padding-bottom: 15px}
.jr_from_to .child1{width:25%;float: left;font-size: 16px;color: #464646;position: relative;}
.jr_from_to .child2{width:75%;float: left;padding-left: 25px;}
.jr_from_to .child2 strong{color: #595959;font-size: 16px;}
.jr_from_to .child2 p{color: #595959;font-weight: 300;margin: 0px; padding-top: 4px; font-size: 15px;}
.jr_from_to .from{border-radius: 20px;background: url(../assets/img/jr_blue_circle.png) !important;font-family: 'Roboto', sans-serif;background-repeat: no-repeat !important;background-position:right 8px top 2px !important;background-size: 16px !important;}
.jr_from_to .to{border-radius: 20px;background: url(../assets/img/jr_orange_circle.png)!important;font-family: 'Roboto', sans-serif;background-repeat: no-repeat !important;background-position:right 8px top 2px !important;background-size: 16px !important;}
// .jr_box1 {height: 50px;width: 20px;border-right: 1px solid #b6b6b6;position: absolute;top: 20px;right: 19%;}
.jr_available_seats{width:100%;color: #838383;font-size: 18px;padding-top: 20px;padding-bottom: 20px;}
.jr_available_seats strong{color: #464646;}
.jr_seats_left{float: left;width:50%;}
.jr_seats_right{float: right;width:50%;text-align: right;}
.jr_contact_btn{width: 100%;height:35px;border:1px solid #1d78a3;border-radius: 20px;color: #1d78a3;background: transparent;font-size: 15px;background: url(../assets/img/jr_call.png) !important;background-repeat: no-repeat !important;background-size: 20px !important;background-position: 15% !important;}
.jr_contact_btn span img{}
.cab_footer_btn{width:100%;height:50px;font-weight: 300;letter-spacing: 2px;border-radius:0px !important;background: #f7941e;color:#FFF;text-align: center;font-size: 16px;margin:0px;text-transform: capitalize !important;}
.jr_p{color: #717171 !important;text-align: left !important;font-size: 16px;font-weight: 400 !important;}
.yellow{
background: url("../assets/img/yellowdot.png");
}
.grey{
background: url("../assets/img/greydot.png");
}
}
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import { Myservice } from "../../providers/myservice";
import { dateDataSortValue } from 'ionic-angular/umd/util/datetime-util';
@IonicPage()
@Component({
selector: 'page-ridedetails',
templateUrl: 'ridedetails.html',
})
export class RidedetailsPage {
details = this.navParams.get('data')
baseurl = this.myservice.base_url
constructor(public navCtrl: NavController, public navParams: NavParams, private myservice: Myservice) {
}
ionViewDidLoad() {
var tempf = this.details.pickup_area.split(',')
this.details.from = tempf[0]
this.details.fromAd = this.details.pickup_area
this.details.timestamp = new Date(this.details.pickup_date + ' ' + this.details.pickup_time).getTime()
var temp = this.details.drop_area.split(',')
this.details.to = temp[0]
this.details.toAd = this.details.drop_area
console.log(this.details)
}
back(){
this.navCtrl.pop();
}
pick(){
this.navCtrl.push('UserlocationPage',{ data: this.details})
}
}
<ion-content padding class="themelogin_background">
<div class="cab_login_wrapper">
<div class="cab_logo">
<img src="assets/img/cab_logo.png" style="width: 120px;">
</div>
<h4>Login</h4>
<hr>
<br>
<div class="cab_form">
<form [formGroup]="signinForm">
<div class="cab_form_row">
<div class="cab_phone_number">
<select class="cab_phone_code floatLeft" formControlName="dial_code">
<option *ngFor="let code of codes" value=+{{code.dialCode}}>+{{code.dialCode}}</option>
</select>
<input class="cab_phone_input floatRight cab_call" placeholder="Mobile Number" formControlName="mobile" type="number">
<div class="clear"></div>
<div class="er_req textCenter" *ngIf="signinForm.controls.mobile.invalid && (signinForm.get('mobile').dirty || signinForm.get('mobile').touched)">
Enter a valid Mobile
</div>
</div>
</div>
<br>
<div class="cab_form_row">
<div class="cab_phone_number">
<input class="cab_phone_input cab_pass width100" placeholder="Password" type="password" formControlName="password">
<div class="clear"></div>
<div class="er_req textCenter" *ngIf="signinForm.controls.password.invalid && (signinForm.get('password').dirty || signinForm.get('password').touched)">
Minimum 6 characters
</div>
</div>
</div>
</form>
<br>
<br>
<div class="cab_form_row">
<button ion-button class="cab_sign_btn" (click)="login()">Sign In</button>
</div>
<br>
<div class="cab_form_row textCenter">
<p (click)="forgot()">Forgot Password</p>
</div>
</div>
</div>
</ion-content>
\ No newline at end of file
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { SigninPage } from './signin';
@NgModule({
declarations: [
SigninPage,
],
imports: [
IonicPageModule.forChild(SigninPage),
],
})
export class SigninPageModule {}
page-signin {
.scroll-content{
align-content: center;
display: flex;
flex-direction: column;
justify-content: center;
text-align: center;
background: rgba(0,0,0,0.8);
}
.nav_btn{color: #fff;}
.cab_logo{width:100%;text-align: center; padding-bottom: 30px;}
.cab_logo img{width:200px;}
.cab_login_wrapper{width:100%;}
.cab_login_wrapper h4{color: #fff;
font-size: 40px;
font-weight: 300;
text-align: left;
text-transform:capitalize;}
.cab_login_wrapper hr{border:2px solid #f7941e;height:0px;border-radius:20px;width:35px;margin-left:0px;}
.cab_phone_number{width:100%;height:50px;border-bottom:2px solid #ff9c00;}
.cab_phone_code{width:50px;height:100%;-webkit-appearance: none;-moz-appearance: none;background: transparent !important;text-align: center;border:none;padding-left: 10px;color: #fff;font-size: 18px;}
.cab_phone_code option{text-align: center;}
.cab_phone_input{width:calc(100% - 50px);height:100%;border:none;color:#fff;font-size: 18px;padding-left: 10px;padding-right: 20px;}
.cab_phone_input::-webkit-input-placeholder {color:#fff;}
.cab_phone_input::-moz-placeholder {color:#fff;}
.cab_phone_input:-ms-input-placeholder {color:#fff;}
.cab_phone_input:-moz-placeholder {color:#fff;}
.cab_login_wrapper{width:100%;}
.cab_call{background: url("../assets/img/number.png");background-position: right;background-repeat: no-repeat;}
.cab_pass{background: url("../assets/img/password.png");background-position: right;background-repeat: no-repeat;}
.cab_user{background: url("../assets/img/user.png");background-position: right;background-repeat: no-repeat;}
.cab_mail{background: url("../assets/img/email.png");background-position: right;background-repeat: no-repeat;}
.cab_search{background: url("../assets/img/search.png") !important;background-position: right;background-repeat: no-repeat;}
.cab_currentlocation{background: url("../assets/img/currentlocation.png");background-position: right;background-repeat: no-repeat;}
.cab_location{background: url("../assets/img/location.png");background-position: right;background-repeat: no-repeat;}
.cab_confirmpass{background: url("../assets/img/confirmpass.png");background-position: right;background-repeat: no-repeat;}
.cab_form_row .item-block{background: transparent;padding-left:0px;border:none !important;margin:0 auto !important;width:200px !important;}
.cab_form_row .item-inner{border:none !important;}
.cab_form_row .checkbox-checked{background:#ff9c00 !important;border:1px solid #ff9c00 !important;}
.item .item-ios .checkbox-ios{margin-left:0px !important;margin-right:10px !important;}
.item .item-md .checkbox-md{margin-left:0px !important;margin-right:10px !important;}
.cab_sign_btn{height:45px;width:100%;background:#ff9c00;color: #fff;text-transform: capitalize !important;font-size: 18px;font-weight: 300;}
.cab_sign_btn1{height:45px;width:100%;border:1px solid #ff9c00;color: #ff9c00;background:transparent;text-transform: capitalize !important;font-size: 18px;font-weight: 300;}
.cab_form p{color: #fff;font-weight: 300;font-size: 18px;}
.er_req{color:#ff6060;padding-top: 10px;font-size: 15px}
}
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams,Events } from 'ionic-angular';
import { Validators, FormBuilder, FormGroup } from "@angular/forms";
import { Http } from '@angular/http'
import { dialcode } from "../../models/mymodel";
import { OrderbyPipe } from '../../providers/sort-pipe';
import { Myservice } from "../../providers/myservice";
import { Storage } from "@ionic/storage";
@IonicPage()
@Component({
selector: 'page-signin',
templateUrl: 'signin.html',
})
export class SigninPage {
codes: Array<dialcode>;
signinForm: FormGroup
constructor(public navCtrl: NavController, public navParams: NavParams, private formBuilder: FormBuilder, private http: Http, private orderbyPipe: OrderbyPipe, private myservice: Myservice, private storage: Storage, public events: Events) {
this.signinForm = this.formBuilder.group({
mobile: ['', Validators.compose([Validators.required, this.myservice.checkLimit(10000000, 999999999999999)])],
dial_code: ['+91', Validators.required],
password: ['', Validators.compose([Validators.required, Validators.minLength(6)])]
})
this.http.get('dial-codes.json')
.subscribe(response => {
this.codes = response.json().dialCodes
this.codes = this.orderbyPipe.transform(this.codes, 'dialCode');
})
}
login(){
this.myservice.show_loader()
this.myservice.load_post(this.signinForm.value,'driver_login').subscribe(response=>{
if(response[0].status == 'success'){
response[0].data.image = response[0].data.image.startsWith("http") ? response[0].data.image : this.myservice.base_url + response[0].data.image;
this.storage.set('driver_data',response[0].data)
var This = this;
setTimeout(() => {
This.myservice.hide_loader();
This.events.publish('driver:profile', response[0].data);
This.navCtrl.setRoot('HomePage')
}, 500);
}
else
this.myservice.show_alert('', response.message)
})
}
forgot(){
this.navCtrl.push("ForgotPage");
}
}
<ion-header class="theme_dark_bg">
<button class="nav_btn theme_color" (click)="back()">
<ion-icon name="ios-arrow-back-outline"></ion-icon>
</button>
</ion-header>
<ion-content padding class="themelogin_background">
<div class="cab_login_wrapper">
<h4>Sign Up</h4>
<hr>
<br>
<div class="cab_form">
<form [formGroup]="signupForm">
<div class="cab_form_row">
<div class="cab_phone_number">
<input class="cab_phone_input cab_user width100" placeholder="Name" formControlName="name">
<div class="clear"></div>
<div class="er_req textCenter" *ngIf="signupForm.controls.name.invalid && (signupForm.get('name').dirty || signupForm.get('name').touched)">
Enter a valid Name
</div>
</div>
</div>
<br>
<div class="cab_form_row">
<div class="cab_phone_number">
<input class="cab_phone_input cab_user width100" placeholder="Username" formControlName="username">
<div class="clear"></div>
<div class="er_req textCenter" *ngIf="signupForm.controls.username.invalid && (signupForm.get('username').dirty || signupForm.get('username').touched)">
Enter a valid Username
</div>
</div>
</div>
<br>
<div class="cab_form_row">
<div class="cab_phone_number">
<select class="cab_phone_code floatLeft" formControlName="dial_code">
<option *ngFor="let code of codes" value=+{{code.dialCode}}>+{{code.dialCode}}</option>
</select>
<input class="cab_phone_input floatRight cab_call" placeholder="Mobile Number" formControlName="phone" type="number">
<div class="clear"></div>
<div class="er_req textCenter" *ngIf="signupForm.controls.phone.invalid && (signupForm.get('phone').dirty || signupForm.get('phone').touched)">
Enter a valid Mobile
</div>
</div>
</div>
<br>
<div class="cab_form_row">
<div class="cab_phone_number">
<input class="cab_phone_input cab_mail width100" placeholder="Email" formControlName="email" type="email">
<div class="clear"></div>
<div class="er_req textCenter" *ngIf="signupForm.controls.email.invalid && (signupForm.get('email').dirty || signupForm.get('email').touched)">
Enter a valid Email
</div>
</div>
</div>
<br>
<div class="cab_form_row">
<div class="cab_phone_number">
<input class="cab_phone_input cab_pass width100" placeholder="Password" formControlName="password" type="password">
<div class="clear"></div>
<div class="er_req textCenter" *ngIf="signupForm.controls.password.invalid && (signupForm.get('password').dirty || signupForm.get('password').touched)">
Minimum 6 characters
</div>
</div>
</div>
<br>
<div class="cab_form_row">
<div class="cab_phone_number">
<input class="cab_phone_input cab_confirmpass width100" placeholder="Confirm Password" type="password" formControlName="confirm">
<div class="clear"></div>
<div class="er_req textCenter" *ngIf="signupForm.controls.confirm.invalid && (signupForm.get('confirm').dirty || signupForm.get('confirm').touched)">
Password mismatches
</div>
</div>
</div>
<br>
<div class="cab_form_row textCenter">
<ion-item style="width:100% !important;">
<ion-label>
<p>I accept terms & condition</p>
</ion-label>
<ion-checkbox formControlName="terms"></ion-checkbox>
</ion-item>
<div class="er_req textCenter" *ngIf="signupForm.controls.terms.invalid && (signupForm.get('terms').dirty || signupForm.get('terms').touched)">
Please accept terms & conditions
</div>
</div>
</form>
<br>
<div class="cab_form_row">
<button ion-button class="cab_sign_btn" (click)="register()" [disabled]="signupForm.invalid">Sign Up</button>
</div>
<br>
</div>
</div>
</ion-content>
\ No newline at end of file
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { SignupPage } from './signup';
@NgModule({
declarations: [
SignupPage,
],
imports: [
IonicPageModule.forChild(SignupPage),
],
})
export class SignupPageModule {}
page-signup {
.scroll-content{
background: rgba(0,0,0,0.8);
}
.cab_logo{width:100%;text-align: center; padding-bottom: 30px;}
.cab_logo img{width:200px;}
.cab_login_wrapper{width:100%;height:100%;}
.cab_login_wrapper h4{color: #fff;
font-size: 40px;
font-weight: 300;
text-align: left;
text-transform:capitalize;}
.cab_login_wrapper hr{border:2px solid #f7941e;height:0px;border-radius:20px;width:35px;margin-left:0px;}
.cab_phone_number{width:100%;height:50px;border-bottom:2px solid #ff9c00;}
.cab_phone_code{width:50px;height:100%;-webkit-appearance: none;-moz-appearance: none;background: transparent !important;text-align: center;border:none;padding-left: 10px;color: #fff;font-size: 18px;}
.cab_phone_code option{text-align: center;}
.cab_phone_input{width:calc(100% - 50px);height:100%;border:none;color:#fff;font-size: 18px;padding-left: 10px;padding-right: 20px;}
.cab_phone_input::-webkit-input-placeholder {color:#fff;}
.cab_phone_input::-moz-placeholder {color:#fff;}
.cab_phone_input:-ms-input-placeholder {color:#fff;}
.cab_phone_input:-moz-placeholder {color:#fff;}
.cab_login_wrapper{width:100%;}
.cab_call{background: url("../assets/img/number.png");background-position: right;background-repeat: no-repeat;}
.cab_pass{background: url("../assets/img/password.png");background-position: right;background-repeat: no-repeat;}
.cab_user{background: url("../assets/img/user.png");background-position: right;background-repeat: no-repeat;}
.cab_mail{background: url("../assets/img/email.png");background-position: right;background-repeat: no-repeat;}
.cab_search{background: url("../assets/img/search.png") !important;background-position: right;background-repeat: no-repeat;}
.cab_currentlocation{background: url("../assets/img/currentlocation.png");background-position: right;background-repeat: no-repeat;}
.cab_location{background: url("../assets/img/location.png");background-position: right;background-repeat: no-repeat;}
.cab_confirmpass{background: url("../assets/img/confirmpass.png");background-position: right;background-repeat: no-repeat;}
.cab_form_row .item-block{background: transparent;padding-left:0px;border:none !important;margin:0 auto !important;width:200px !important;}
.cab_form_row .item-inner{border:none !important;}
.cab_form_row .checkbox-checked{background:#ff9c00 !important;border:1px solid #ff9c00 !important;}
.item .item-ios .checkbox-ios{margin-left:0px !important;margin-right:10px !important;}
.item .item-md .checkbox-md{margin-left:0px !important;margin-right:10px !important;}
.cab_sign_btn{height:45px;width:100%;background:#ff9c00;color: #fff;text-transform: capitalize !important;font-size: 18px;font-weight: 300;}
.cab_sign_btn1{height:45px;width:100%;border:1px solid #ff9c00;color: #ff9c00;background:transparent;text-transform: capitalize !important;font-size: 18px;font-weight: 300;}
.cab_form p{color: #fff;font-weight: 500;font-size: 18px;}
.er_req{color:#ff6060;padding-top: 10px;font-size: 15px}
}
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import { Validators, FormBuilder, FormGroup } from "@angular/forms";
import { Http } from '@angular/http'
import { dialcode } from "../../models/mymodel";
import { OrderbyPipe } from '../../providers/sort-pipe';
import { Myservice } from "../../providers/myservice";
import { OneSignal } from "@ionic-native/onesignal";
import { fireService } from "../../providers/firebase.service";
import { Geolocation } from '@ionic-native/geolocation';
@IonicPage()
@Component({
selector: 'page-signup',
templateUrl: 'signup.html',
})
export class SignupPage {
signupForm: FormGroup
codes: Array<dialcode>;
constructor(public navCtrl: NavController, public navParams: NavParams, private formBuilder: FormBuilder, private http: Http, private orderbyPipe: OrderbyPipe, private myservice: Myservice, private onesignal: OneSignal, private firebase: fireService, private geolocation: Geolocation) {
this.signupForm = this.formBuilder.group({
name: ['', Validators.compose([Validators.required, Validators.minLength(3)])],
username: ['', Validators.compose([Validators.required, Validators.minLength(3)])],
email: ['', Validators.compose([Validators.required, Validators.pattern("[a-zA-Z0-9.-_]{1,}@[a-zA-Z.-]{2,}[.]{1}[a-zA-Z]{2,}")])],
dial_code: ['+91', Validators.required],
password: ['', Validators.compose([Validators.required, Validators.minLength(6)])],
confirm: ['', Validators.compose([Validators.required]), this.MatchPassword.bind(this)],
terms: [null, Validators.compose([Validators.required, Validators.pattern('true')])],
phone: ['', Validators.compose([Validators.required, this.myservice.checkLimit(10000000, 999999999999999)])],
deviceid: ['']
})
this.http.get('dial-codes.json')
.subscribe(response => {
this.codes = response.json().dialCodes
this.codes = this.orderbyPipe.transform(this.codes, 'dialCode');
})
}
ionViewDidLoad() {
console.log('ionViewDidLoad SignupPage');
}
back() {
this.navCtrl.pop();
}
register() {
this.myservice.show_loader()
this.geolocation.getCurrentPosition().then((resp) => {
// this.onesignal.getIds().then((id) => {
this.signupForm.controls['deviceid'].setValue(0/*id.userId*/)
this.myservice.load_post(this.signupForm.value, 'driver_sign_up').subscribe(response => {
this.myservice.hide_loader()
if (response.status == 'success') {
response.data.lat = resp.coords.latitude
response.data.lng = resp.coords.longitude
response.data.started = false
response.data.status = 'offline'
this.firebase.pushItem('drivers/', response.data)
this.navCtrl.setRoot("SigninPage");
}
else {
this.myservice.show_alert('', response.message)
}
})
// })
}).catch((error) => {
console.log('Error getting location', error);
});
}
MatchPassword(val) {
return new Promise(resolve => {
if (val.value == this.signupForm.value.password) {
resolve(null);
}
else {
resolve({ 'match': false });
}
})
}
}
<ion-header class="theme_dark_bg">
<button ion-button class="nav_btn theme_color floatLeft" (click)="back()">
<ion-icon name="ios-arrow-back"></ion-icon>
</button>
<div class="nav_header_title floatLeft">User Location</div>
<div class="clear"></div>
</ion-header>
<ion-content>
<div #map id="map"></div>
<div class="jr_bottom_distance_card" *ngIf="temp">
<div class="jr_bottom_inside">
<input class="jr_dest_input from" placeholder="From" [(ngModel)]="loc.from">
<input class="jr_dest_input to" placeholder="To" [(ngModel)]="loc.to">
</div>
</div>
</ion-content>
<ion-footer>
<div class="jr_bottom_button_bay" *ngIf="temp">
<button ion-button class="cab_footer_btn">Start Ride</button>
</div>
</ion-footer>
\ No newline at end of file
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { UserlocationPage } from './userlocation';
@NgModule({
declarations: [
UserlocationPage,
],
imports: [
IonicPageModule.forChild(UserlocationPage),
],
})
export class UserlocationPageModule {}
page-userlocation {
.scroll {
height: 100%
}
#map {
width: 100%;
height: 100%;
}
.jr_theme_color{background: #ff9000 !important;border:1px solid #ff9000;}
.jr_theme_color1{background:#f1672f !important;}
.jr_left{float: left !important;}
.jr_right{float: right !important;}
.jr_clear{clear: both;}
.jr_text_center{text-align: center !important;}
.jr_padding0{padding:0px !important;}
.jr_paddingtop0{padding-top:0px !important;}
.jr_margin0{margin:0px !important;}
.jr_paddingbtm0{padding-bottom:0px !important;}
.jr_marginbtm0{margin-bottom:0px !important;}
.jr_margintop0{margin-top:0px !important;}
.jr_bordernone{border:none !important;}
.jr_bg_none{background:none !important;}
.jr_transparent{background:rgba(0,0,0,0.8) !important;}
.button-md.activated {background-color:none !important;box-shadow:none !important;}
.button-md{box-shadow: none !important;}
/*LANDING-PAGE*/
.jr_landing_bg{background:url("../assets/img/jr_landing_bg.png") !important;background-repeat: no-repeat !important;background-position: center bottom !important;background-size: 100% !important;position: relative;}
.jr_login_bg{background:url("../assets/img/jr_login_bg.png") !important;background-repeat: no-repeat !important;background-position: center bottom !important;background-size: 100% !important;position: relative;}
.jr_sidemenu_bg{background:url("../assets/img/jr_sidemenu_bg.png") !important;background-repeat: no-repeat !important;height: 100%;background-position: center bottom !important; padding: 50px;
background-size:cover !important;position: relative;}
.jr_landing_overlay{background:linear-gradient(rgba(241, 103, 46, 0.8), rgba(239, 89, 124, 0.8));}
.jr_landing_overlay1{background:linear-gradient(rgba(32, 119, 163, 0.8), rgba(43, 30, 65, 0.8));}
.jr_slide{text-align: center;}
.jr_slide img{width:200px;margin-top: 10px;}
.jr_slide h4{color: #fff;font-size:24px;font-weight:200;margin:0px;}
.jr_slide h3{color: #fff;font-size:35px;margin:0px;padding-top:5px;padding-bottom: 5px;}
.jr_slide p{color: #fff;font-size:14px;font-weight:300; padding-top: 15px; line-height: 20px;}
.jr_space{width:100%;height:0px;}
.jr_landing_btm{position: fixed;width:100%;bottom:50px;z-index: 9; text-align: center;left:0px;right:0px;}
.jr_slide hr{border:1px solid #fff;width:40px;border-bottom: 1px solid #fff;border-top: 1px solid #fff;border-radius: 5px; margin-top: 25px;height: 0px;}
.jr_btm_btn{height:40px;border-radius:20px;background: #000000;color: #fff;font-family: 'Roboto', sans-serif;padding-left: 20px;padding-right: 20px;-webkit-transition: width 2s; /* For Safari 3.1 to 6.0 */
transition: width 2s;width: 120px;margin: 0 auto;text-align: center;font-size: 15px;padding: 10px;border:none; text-transform: capitalize;}
.jr_slider_inner{width:80%;margin:0 auto;position: absolute;left:0px;right:0px;top:10%;}
.jr_btm_btn img{width:8px;}
.jr_icon_bar{display: inline-block;width:100%;text-align: center;}
.jr_icon_bar span{display: inline-block;margin-left: 5px;margin-right: 5px;}
.jr_icon_bar span img{width:30px;}
.jr_last_slide_btn_bar{width:100%;text-align: center;}
.jr_strtd_btn{height:40px;border-radius:20px;background: #ffba00;color: #382c59;font-family: 'Roboto', sans-serif;padding-left: 20px;padding-right: 20px;-webkit-transition: width 2s; /* For Safari 3.1 to 6.0 */
transition: width 2s;width: 140px;margin: 0 auto;text-align: center;font-size: 15px;padding: 10px;border:none; }
.jr_sign_bar{width:100%;text-align: center;}
.jr_sign_bar ul{margin:0px;padding:0px;}
.jr_sign_bar ul li{display: inline-block;border:1px solid #fff;color: #fff;height:40px;border-radius:20px;padding-left: 20px;padding-right: 20px;text-align: center;font-size: 15px;padding: 10px;background: transparent !important;width:115px !important;margin:20px;}
.swiper-pagination{display: block !important;}
.swiper-pagination-bullet{background: #fff;border:1px solid #fff;}
/*HOME*/
.jr_header_btn{width:40px;height:40px;background: transparent;box-shadow: none;}
.jr_sidemenu_icon{background:url("../assets/img/jr_sidemenu_icon.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:20px !important;}
.jr_back_icon{background:url("../assets/img/jr_back_arrow_icon.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:12px !important;}
.jr_close_icon{background:url("../assets/img/jr_close.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:12px !important;}
.jr_mail_icon{background:url("../assets/img/jr_mail.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:20px !important;}
.jr_profile_icon{background:url("../assets/img/jr_profile.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:20px !important;}
.jr_alert_icon{background:url("../assets/img/jr_alert.png") !important;background-repeat: no-repeat !important;background-position: center !important;background-size:20px !important;}
.jr_header_title{float: left;height:40px;margin-top: 5px;padding: 8px;padding-left: 0px;}
.jr_header_title h4{font-family: 'Roboto', sans-serif;color: #fff;margin:0px;font-weight: 300;font-size: 16px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis; position: relative;top:2px;}
.jr_header{padding-left:5px;padding-right:5px;box-shadow: none !important;background-image: none !important;}
.jr_body_wrapper{width:100%;height:100%;}
.jr_div_half{width:100%;height:50%;position: relative;}
.jr_div_half img{object-fit: cover;object-position: center;width:100%;height:100%;}
.jr_div_overlay{background: rgba(0,0,0,0.7);position: absolute;top:0px;left:0px;right:0px;bottom: 0px;text-align: center;padding: 15px;}
.jr_div_overlay p{text-align: center;color: #bababa;}
.jr_offer_ride{height:35px;width:130px;border-radius:20px;border:none;
background: -webkit-linear-gradient(left, #6a449b , #1379a1);
background: -o-linear-gradient(right, #6a449b, #1379a1);
background: -moz-linear-gradient(right, #6a449b, #1379a1);
background: linear-gradient(to right, #6a449b , #1379a1);
text-transform: capitalize !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride1{height:45px;width:130px;border:none;
background:#4d4d4d;
border-radius: 0px;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride2{height:45px;width:100%;
margin: 0px;
border:none;
border-radius: 0px;
background:#4d4d4d;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride3{height:45px;width:100%;
border:none;
border-radius: 0px;
background:#4d4d4d;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride4{height:35px;width:100%;border:none;
background:#2874a2;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_offer_ride5{height:35px;width:100%;border:none;
background:#ff7200;
text-transform: uppercase !important;
font-size: 14px;
font-weight: 400;
line-height: 5px;
}
.jr_over_inner{width:100%;position: relative;top: 25%;}
.jr_home_tab_content{width:100%;height:100%;}
.jr_home_tab_bay{width:100%;padding:5px;padding-top: 0px;}
.jr_home_tab_bay ul{width:100%;text-align: center;padding:5px;margin:0px;}
.jr_home_tab_bay ul li{width:40%;display: inline-block;text-align: center;color: #fff;padding: 4px;}
.jr_home_tab_bay ul .active{border:1px solid #fff;border-radius: 20px;}
/*OFFER-FIND-RIDE*/
.jr_ride_wrapper{width:100%; padding-top: 5px;height: 100%;}
.jr_ride_wrapper h5{text-align: center;color: #717171;font-weight: 300;}
.jr_offer_bg{width:100%;padding-top:20px;}
.jr_offer_bg img{}
.jr_ride_form{width:90%;margin:0 auto;padding-top:25px;position: relative;padding-bottom:60px;}
.jr_ride_input1{width:100%;height:30px;border:1px solid #959595;border-radius:20px;background:url("../assets/img/jr_blue_circle.png"),url("../assets/img/jr_loc.png") !important;font-family: 'Roboto', sans-serif;background-repeat: no-repeat !important;background-position: left 7px top 5px,right 8px top 5px!important;background-size:18px !important; padding-left: 35px;}
.jr_ride_input2{width:100%;height:30px;border:1px solid #959595;border-radius:20px;background:url("../assets/img/jr_orange_circle.png") !important;font-family: 'Roboto', sans-serif;background-repeat: no-repeat !important;background-position:7px,6px !important;background-size:18px !important; padding-left: 35px;}
.jr_box{height:15px;width:20px;border-left:1px dotted #959595;position: absolute;top:56px;left:17px;}
.jr_custom label {display: inline-block;cursor: pointer;position: relative;padding-left: 25px;margin-right: 15px;color: #8b8b8b;font-size: 13px;font-family: 'Roboto', sans-serif;font-weight:400;}
.jr_custom label:before {content: "";display: inline-block;width: 14px;height: 14px;margin-right: 10px;position: absolute;left: 0;bottom: 1px;background-color: #ffffff;border-radius:0px !important;border:1px solid #959595;border-radius:3px !important;}
.jr_custom label:before {border-radius: 8px;}
.jr_custom input[type=checkbox] {display: none;}
.jr_custom label:before {border-radius: 3px;}
.jr_custom input[type=checkbox]:checked + label:before {content: "\2713";font-size: 14px;color: #6a449b;text-align: center;line-height:16px;font-weight:600;}
.jr_custom{padding-top: 30px;padding-bottom: 30px; padding-left: 5px;}
.jr_time_div{width:100%;}
.jr_date{width:65%;float: left;}
.jr_time{width: 35%;float: left;padding-left: 10px;}
.jr_input3{width:100%;border:none;min-height:30px !important;border-bottom:1px solid #959595;font-family: 'Roboto', sans-serif;padding: 0px !important;}
.jr_select{width:100%;border:none;height:30px;border-bottom:1px solid #959595;font-family: 'Roboto', sans-serif;color: #8b8b8b;-webkit-appearance: none;-moz-appearance: none;background:url("../assets/img/jr_dwn_arw.png");background-position: right;background-repeat: no-repeat;background-size: 15px; font-size: 16px;}
.jr_select option{color: #8b8b8b;font-family: 'Roboto', sans-serif;}
.jr_input3 .datetime-ios{padding: 0px !important;color: #646464;font-family: 'Roboto', sans-serif;}
.jr_input3 .datetime-md{padding: 0px !important;color: #646464;font-family: 'Roboto', sans-serif;}
.jr_bottom_button_bay{width:100%;position: fixed;bottom: 0px;padding:0px;left:0px;right:0px;text-align: center;}
.jr_seat_number{width:100%;padding-top:15px;}
.jr_seat_number ul{padding: 0px;margin:0px;}
.jr_seat_number ul li{display: inline-block;width:32px !important;height:32px;border-radius:50%;border:1px solid #4a4a4a;background:none !important;color: #4a4a4a;text-align: center;font-family: 'Roboto', sans-serif; font-size: 18px;padding: 6px !important; margin: 5px;}
.jr_seat_number ul li:hover{background:#4a4a4a;color: #fff;}
.jr_seat_number ul li:focus{background:#4a4a4a !important;color: #fff !important;}
.jr_seat_number span{color: #8b8b8b;font-family: 'Roboto', sans-serif;font-size: 16px;padding-right: 20px;}
.header-md::after, .tabs-md[tabsPlacement="top"] > .tabbar::after, .footer-md::before, .tabs-md[tabsPlacement="bottom"] > .tabbar::before{background-image: none !important;}
.jr_ride_wrapper p{text-align: center;color: #fff;font-weight: 200;}
.jr_archive_btn{height:30px;border-radius:20px;background: rgba(0,0,0,0.4) !important;font-weight: 200;font-size: 13px;padding-left: 20px;padding-right:20px;}
/*OFFER-RIDE-DETAILS*/
.jr_offerride_details{width: 100%;padding: 15px;padding-top: 0px !important;padding-bottom: 30px;}
.jr_offerride_details ul{margin:0px;padding:0px;}
.jr_offerride_details ul li{width: 100%;list-style: none;border-bottom:1px solid #d0d0d0;padding-bottom: 15px;padding-top: 15px;padding-left: 0px !important;}
.jr_offerride_details ul li h4{margin:0px;font-family: 'Roboto', sans-serif;color: #717171;font-size:17px;font-weight: 400;padding-bottom: 10px;padding-top: 10px;}
.jr_offerride_details ul li h4 img{width:18px;position: relative;top: 3px;margin-right:10px;}
.jr_offerride_detail_content{width:100%;}
.jr_offerride_detail_content_left{width:60%;float: left;}
.jr_offerride_detail_content_right{width:40%;float: right;height:50px;border-left:1px solid #d0d0d0;}
.jr_offerride_price_tag{text-align:right;padding-top: 5px;}
.jr_offer_price{font-family: 'Roboto', sans-serif;color: #2078a2;font-size:30px;font-weight: 600;padding-left:7px;padding-right:7px;}
.jr_offerride_price_tag img{width:20px;}
.jr_destination{padding-top:7px;}
.jr_destination span{font-family: 'Roboto', sans-serif;color: #717171;font-size:16px;font-weight: 400;}
.jr_destination span img{width:12px;margin-right:10px;}
.jr_offerride_details ul li h5{font-family: 'Roboto', sans-serif;color: #717171;margin-top:0px;font-weight: 400;font-size: 16px;padding-left: 30px;}
.jr_offerride_details ul li p{font-family: 'Roboto', sans-serif;color: #7d7d7d;padding-left: 30px;line-height: 18px; margin-top: 0px;}
.jr_addcomment_btn{font-family: 'Roboto', sans-serif;color: #fff;font-weight: 300;font-size: 14px;border-radius:20px;height: 30px;background: #363636;padding-left: 20px;padding-right: 20px;text-transform: capitalize;margin-top:15px;}
.jr_select_offer_outter{padding-left:25px;padding-bottom: 20px;}
.jr_select_offer{width:100%;border:none;background: transparent;color: #363636;font-family: 'Roboto', sans-serif; font-size: 20px;-webkit-appearance: none;-moz-appearance: none;background:url("../assets/img/jr_dwn_arw.png");background-position: right;background-repeat: no-repeat;background-size: 15px;}
.jr_input_comment{width:100%;font-family: 'Roboto', sans-serif;border:none;font-size: 16px;margin-top:10px;}
.jr_tick{margin:0 auto;}
.jr_tick img{width:50px;}
.jr_theme_trans_bg{background: rgba(35,119,162,0.9);}
.jr_almost_wrapper{text-align: center; position: absolute;width: 100%;top: 15%;}
.jr_almost_wrapper h3{color: #fff;font-size: 24px;font-weight: 300;}
.jr_almost_wrapper p{color: #fff;font-size: 16px;font-weight: 300;}
.jr_almost_wrapper hr{border:2px solid #85b5cc;height:0px;width:50px;margin:0 auto;border-top:none;margin-top: 30px;margin-bottom: 30px;}
.jr_loginpop_btn{height:35px;border-radius:20px;background: #fff;width:110px;margin:0 auto;color: #2077a3;font-weight: 500;font-size: 15px;margin:5px;}
.jr_signpop_btn{height:35px;border-radius:20px;background:transparent;width:110px;margin:0 auto;color: #fff;font-weight: 500;font-size: 15px;border:1px solid #fff;margin:5px;}
.jr_more_pop_up{position: absolute;top:15px;right:10px;background: transparent;}
.jr_more_pop_up img{height: 20px;}
.jr_profile_banner{width:100%;height:200px;background:url("../assets/img/jr_profile_banner.png") !important;background-size:100% !important;background-position: center !important;background-repeat: no-repeat !important;text-align: center;}
.jr_profile_photo{width:100px;height:100px;border-radius:50%;background-color: #2874a2 !important;margin:0 auto;background:url("../assets/img/jr_avatar.png");background-position: center;background-repeat: no-repeat; background-size: 30px !important; position: relative;top: 110px;}
.jr_profile_photo img{width:100%;height:100%;border-radius:50%;object-fit: cover;object-position: center;}
.jr_profile_photo1{width:100px;height:100px;border-radius:50%;background-color: #2874a2 !important;margin:0 auto;background:url("../assets/img/jr_avatar.png");background-position: center;background-repeat: no-repeat; background-size: 30px !important; position: relative;top: 130px;}
.jr_profile_photo1 img{width:100%;height:100%;border-radius:50%;object-fit: cover;object-position: center;}
.jr_profile_photo_edit{position: absolute;top:0px;right:0px;}
.jr_profile_photo_edit img{width:30px;}
.jr_profile_content{width:85%;margin:0 auto;padding-bottom: 30px;}
.jr_profile_content h4{text-align: center;color: #555555;width:100%;padding-top:25px;font-weight: 300;font-size: 16px;}
.jr_profile_content hr{border:2px solid #ff7200;width:40px;margin:0 auto;border-radius:5px;height:0px;margin-top: 15px;}
.jr_profile_tab_bay{width:100%;border-radius:20px;height:30px;border:1px solid #a1a1a1;margin-top: 30px;}
.jr_profile_tab_bay li{width:50%;display: inline-block;text-align: center;float: left;height: 100%;color: #555555;padding: 5px;font-size: 15px;border-radius:20px;}
.jr_profile_tab_bay .active{background: #434343;color: #fff;}
.jr_profile_tab_content{width:100%;padding-bottom: 30px;}
.jr_profile_tab_content h4{text-align: left;color: #434343;font-weight: 500;margin:0px;margin-bottom: 15px;font-size: 17px;}
.jr_profile_tab_content ul{width:100%;margin:0px;padding:0px;}
.jr_profile_tab_content ul li{width:100%;list-style: none;color: #777676;font-size: 17px;font-weight: 300;padding-bottom: 7px;padding-top: 7px;background:url("../assets/img/jr_right_arw.png");background-position: right !important;background-repeat: no-repeat !important;background-size: 10px;}
.jr_profile_tab_content hr{border:1px solid #dcdcdc;width:100%;margin:0 auto;border-radius:5px;height:0px;margin-top:25px;border-top:none;}
.jr_profile_tab_content ul .verified{background:url("../assets/img/jr_verified1.png");background-size: 15px;}
.verified{background:url("../assets/img/jr_verified1.png");background-size: 15px;background-position: right !important;background-repeat: no-repeat !important;}
/*POPOVER*/
.jr_popover_wrapper{background-color: rgba(0,0,0,0.7);width:100%;}
.jr_popover_wrapper ul{margin:0px;padding:5px;}
.jr_popover_wrapper ul li{list-style: none;color: #d3d3d3;font-size: 16px;padding: 5px;}
.popover-content{background: transparent !important;box-shadow: none !important;border-radius:0px !important;}
.popover-arrow::after{background:rgba(0,0,0,0.7) !important;border:none;}
/*EDIT-PROFILE*/
.jr_edit_row{padding-bottom:20px;}
.jr_edit_row h5{color:#434343;font-weight: 400;font-size: 16px; margin-top: 0px;margin:0px;}
.jr_edit_select{border:1px solid #b7b7b7;border-radius:20px;height: 30px;width: 170px;padding-left: 25px;padding-right: 10px;margin-left:15px;background:url("../assets/img/jr_down_arrow.png") !important;background-position: right 15px top 10px !important;background-repeat: no-repeat !important;-webkit-appearance: none;-moz-appearance: none; background-size: 20px !important;}
.jr_edit_profile_input{border:none;border-bottom: 1px solid #959595 !important;width:100% !important;height:30px; margin-top: 5px;}
.jr_width25{width:25%;float: left;}
.jr_width5{width:5%;float: left;}
.jr_width40{width:40%;float: left;}
.jr_edit_select1{margin-top:8px;border:1px solid #b7b7b7;border-radius:20px;height: 30px;width:100%;padding-left:10px;padding-right: 10px;background:url("../assets/img/jr_down_arrow.png") !important;background-position: right 15px top 10px !important;background-repeat: no-repeat !important;-webkit-appearance: none;-moz-appearance: none; background-size: 20px !important;}
.jr_edit_row p{color: #7d7d7d;text-align: justify;font-size: 15px;line-height: 20px;margin-bottom: 0px;}
.jr_width70{width:70%;float: left;padding-left: 10px;}
.jr_width30{width:30%;float: left;}
.jr_profile_content h3{color:#636363;}
.jr_pre_input{width:100%;height:30px;}
.jr_width15{width:15%;float: left;}
.jr_width85{width:85%;float: left;}
.jr_width15 span img{ width: 35px;}
.jr_pre_select1 {
border: 1px solid #b7b7b7;
border-radius: 20px;
height: 35px;
width: 100%;
padding-left:20px;
padding-right: 10px;
background: url(../assets/img/jr_down_arrow.png) !important;
background-position: right 15px top 10px !important;
background-repeat: no-repeat !important;
-webkit-appearance: none;
-moz-appearance: none;
background-size: 20px !important;
color: #717171;
}
.jr_chooseid{width:100px;position: relative;top: 90px;}
.jr_proofs_list{width:100%;}
.jr_proofs_list li{width:100%;list-style: none;padding-bottom: 10px;padding-top: 10px;}
.jr_proofs_list li p{float: left;color: #777676;padding: 0px;margin:0px;font-size: 18px;}
.jr_radio_id{float:right;}
.jr_radio_id .radio-icon{border-color:#ff7200 !important;}
.jr_radio_id .radio-inner{background-color:#ff7200 !important;}
.jr_confidential{width:100%;border-top:1px solid #959595;padding-top:25px;padding-bottom: 50px;}
.jr_confidential_left{width:25%;float: left;text-align: center;border-right:1px solid #959595;}
.jr_confidential_left img{width:30px;}
.jr_confidential_right{width:75%;float: right;padding-right:15px;}
.jr_confidential_right p{color:#989797;margin:0px;padding-left: 10px;}
.jr_upload_img{width:100%;}
.jr_chooseid1{width: 100px;position: relative;top:45px;}
.jr_country_code{width:20%;float: left;}
.jr_phone_number{width:75%;float: right;}
.jr_car_pic{width:60px;height:60px;border-radius:50%;background-color: #ff7200 !important; background: url(../assets/img/jr_cam.png);background-position: center !important;background-repeat: no-repeat;background-size:20px;float: left;position: relative;}
.jr_car_name{float: left; padding-left: 10px;position: relative;top: 10px;}
.jr_car_name h5{margin:0px;font-size: 16px;}
.jr_edit1{position: absolute;top:0px;right:0px;}
.jr_edit1 img{width:20px;}
.jr_car_name p{margin:0px;font-size: 12px;padding-top: 5px;}
.jr_no_seat{padding-top: 10px;}
.jr_no_seat h4{margin:0px;padding:0px;text-align: left;font-family: 'Roboto', sans-serif;color: #8b8b8b;font-size: 16px;}
.jr_no_seat h4 img{ width: 18px;margin-right:10px;}
.jr_close{}
.jr_close img{width:40px;margin-top:20px;}
.jr_space_height{height:100px;}
.jr_add_car_bg{background-color:#fff !important;background:url("../assets/img/jr_profile_banner.png");background-repeat: no-repeat !important;background-position: center bottom !important;background-size: 150% !important;}
.jr_upload_image_car{width:180px;height:180px;border-radius:50%;margin:0 auto;}
.jr_upload_image_car img{width:100%;height:100%;border-radius:50%;}
.jr_profile_banner1 {
width: 100%;
height: 200px;
background: url(../assets/img/jr_public_bg.png) !important;
background-size: 100% !important;
background-position: center !important;
background-repeat: no-repeat !important;
text-align: center;
}
.jr_age1{width:100%;margin:0px;text-align: center;color:#555555; font-size: 16px;}
.jr_notification{width:100%;}
.jr_notification ul{width:100%;margin:0px;padding:0px; padding-top: 10px;}
.jr_notification ul li{width:100%;background: none !important;}
.jr_notification ul li .child1{float:left;width:80%;}
.jr_notification ul li .child2{float:right;width:20px;}
.jr_custom1 label {display: inline-block;cursor: pointer;position: relative;padding-left: 25px;margin-right: 15px;color: #8b8b8b;font-size: 13px;font-family: 'Roboto', sans-serif;font-weight:400;}
.jr_custom1 label:before {content: "";display: inline-block;width: 14px;height: 14px;position: absolute;left: 0;bottom: 1px;background-color: #ffffff;border-radius:0px !important;border:1px solid #959595;border-radius:3px !important;}
.jr_custom1 label:before {border-radius: 8px;}
.jr_custom1 input[type=checkbox] {display: none;}
.jr_custom1 label:before {border-radius: 3px;}
.jr_custom1 input[type=checkbox]:checked + label:before {content: "\2713";font-size: 14px;color: #6a449b;text-align: center;line-height:16px;font-weight:600;border:1px solid #ff7200;}
.jr_custom1{width:15px;position: relative;top: 4px;}
.jr_profile_tab_content h6{color: #a8a8a8; font-size: 14px;margin:0px;font-weight: 300;}
.jr_message_wrapper{}
.jr_home_tab_bay1 {width: 100%;padding: 5px;padding-top: 0px;}
.jr_home_tab_bay1 ul {width:85%;text-align: center;padding: 0px;margin: 0 auto;border:1px solid #144b6d;border-radius:20px;margin-bottom: 5px;}
.jr_home_tab_bay1 ul li {width: 50%;display: inline-block;text-align: center;color: #fff;padding:5px;float: left;}
.jr_home_tab_bay1 ul .active {background:#144b6d;border-radius: 20px;}
.jr_no_msg{padding-top:75px;}
.jr_notification_main{width:100%;}
.jr_notification_main ul{margin:0px;padding:0px;width:100%; padding-top: 10px;}
.jr_notification_main ul li{width:100%;list-style: none;text-align: left;border-bottom: 1px solid #dcdcdc;padding-bottom: 5px;}
.jr_notification_main ul li h4{color: #144b6d;text-align: left;padding: 0px;font-weight: 400;}
.jr_notification_main ul li p{color: #8e8e8e;text-align: left;font-weight: 300;}
.jr_not_left{float: left; width: 80%;}
.jr_not_close{float: right; position: relative;top: 30px;}
.jr_not_close img{width:20px;}
/*SEARCH-RESULT*/
.jr_duration{width:100%;padding-top: 20px;padding-bottom: 20px;border-bottom:1px solid #bbbbbb;}
.jr_avg_duration{width: 50%;float: left;text-align: right !important;background:url("../assets/img/jr_clock.png");background-repeat: no-repeat !important;background-position:left !important;background-size: 25px !important;padding-right: 15px;}
.jr_avg_price{width:50%;float: left;text-align: left !important; padding-left: 15px;border-left:1px solid #bbbbbb;}
.jr_duration p{margin:0px;padding:0px;color: #818181;font-size: 11px;font-weight: 300;}
.jr_duration h4{margin:0px;padding:0px;color: #279a80; font-size: 13px;}
.jr_avg_duration p{text-align: right !important;}
.jr_avg_duration h4{text-align: right !important;padding-top: 4px;}
.jr_avg_price p{text-align: left !important;padding-bottom: 3px;}
.jr_avg_price h4{text-align: left !important;}
.jr_avg_price h4 strong{ font-size: 15px;}
.jr_search_main{width:100%;}
.jr_search_main h5{margin:0px;color: #434343;font-size: 16px;padding-top: 15px;padding-bottom:5px;}
.jr_search_main ul{margin:0px;padding: 0px;}
.jr_search_main ul li{list-style: none;background: #f5f5f5;margin-bottom: 3px;}
.jr_search_top_bay{width:100%;padding: 10px;border-bottom: 1px solid #e7e7e7;}
.jr_search_top_bay_left{float: left;}
.jr_search_top_bay_right{float: right;}
.jr_search_top_bay_left h6{color: #434343;margin:0px;padding: 0px; font-size: 12px;font-weight: 500;padding-bottom: 3px;}
.jr_search_top_bay_left h6 strong{color: #767676;margin:0px;padding: 0px;font-size: 14px;font-weight: 500;padding-left:8px;}
.jr_search_top_bay_right h6{text-align: right;color: #2078a2;margin:0px;padding: 0px;}
.jr_search_bottom_bay{width:100%;padding: 10px;}
.jr_search_profile{float: left;width:75px;height:75px;border-radius:50%;border:1px solid #2078a2;position: relative;}
.jr_search_profile img{width:100%;height:100%;border-radius:50%;object-fit: cover;object-position: center;}
.jr_search_profile_detail{float: left;padding-left: 15px;}
.jr_search_verified{position:absolute;top:0px;right:0px;}
.jr_search_verified img{width: 20px;border:none;}
.jr_search_profile_detail h6{margin:0px;color: #585858;font-weight: 400;font-size: 13px;padding-bottom: 5px;}
.jr_star_ratting{color: #585858;font-weight: 300;}
.jr_star_ratting strong{padding-left:5px;padding-right: 10px;}
.jr_star_ratting img{width: 14px; position: relative;top: 1px}
.jr_search_profile_detail ul{margin:0px;padding: 0px;padding-top:10px;}
.jr_search_profile_detail ul li{display: inline-block;width:30px;height:30px;border:1px solid #2078a2;border-radius:50%;color: #585858;font-size: 10px;padding-top: 4px;text-align: center;}
.jr_search_profile_detail ul li span{position: relative;top:2px;}
.jr_filter_icon{width:50px;height:50px;background:url("../assets/img/jr_filter_icon.png");background-repeat: no-repeat !important;background-size: cover !important;position: fixed;bottom: 10px;right:20px;border-radius:50%;}
.jr_filter_okay{width:50px;height:50px;background:url("../assets/img/jr_filter_okay.png");background-repeat: no-repeat !important;background-size: cover !important;position: fixed;bottom: 10px;right:80px;border-radius:50%;}
.jr_filter_close{width:50px;height:50px;background:url("../assets/img/jr_filter_close.png");background-repeat: no-repeat !important;background-size: cover !important;position: fixed;bottom: 10px;right:20px;border-radius:50%;}
.jr_bookonline{height: 30px;border-radius:20px;border:none;background: #f16730;color: #fff;text-transform: capitalize;margin-top: 10px; font-size: 12px;}
.jr_preference_bay{width:100%;}
.jr_preference_bay ul{width:100%;text-align: left;padding: 0px;margin:0px;}
.jr_preference_bay ul li{display: inline-block;}
.jr_preference_bay ul li img{width: 30px;margin-right: 5px;}
.jr_verification{margin:0px;padding: 0px;padding-top: 5px;}
.jr_verification li {width: 100%;list-style: none;color: #777676;font-size: 17px;font-weight: 300;padding-bottom: 7px;padding-top: 7px;padding-left:30px;background-position:left !important;background-repeat: no-repeat !important;background-size: 10px;}
.jr_verification .verified{background:url("../assets/img/jr_verified1.png");background-size: 15px;}
.jr_verification .response{background:url("../assets/img/jr_response.png");background-size: 15px;}
.jr_verification .time{background:url("../assets/img/jr_time.png");background-size: 15px;}
.jr_verification .loca{background:url("../assets/img/jr_loca.png");background-size: 15px;}
.child1{width:40%;float: left;}
.child2{width:60%;float: left;}
.jr_time_schedule{padding-top: 0px;padding-bottom: 15px;}
.jr_time_schedule h5{color:#464646;font-weight: 300;font-size: 24px;}
.jr_from_to{width:100%;}
.jr_from_to li{list-style: none;width:100%; padding-bottom: 15px}
.jr_from_to .child1{width:25%;float: left; font-size: 16px;color: #464646;position: relative;}
.jr_from_to .child2{width:75%;float: left;padding-left: 20px;}
.jr_from_to .child2 strong{color: #595959;font-size: 16px;}
.jr_from_to .child2 p{color: #595959;font-weight: 300;margin: 0px; font-size: 15px;}
.jr_from_to .from{border-radius: 20px;background: url(../assets/img/jr_blue_circle.png) !important;font-family: 'Roboto', sans-serif;background-repeat: no-repeat !important;background-position:right 8px top 2px !important;background-size: 16px !important;}
.jr_from_to .to{border-radius: 20px;background: url(../assets/img/jr_orange_circle.png)!important;font-family: 'Roboto', sans-serif;background-repeat: no-repeat !important;background-position:right 8px top 2px !important;background-size: 16px !important;}
// .jr_box1 {height: 50px;width: 20px;border-right: 1px solid #b6b6b6;position: absolute;top: 20px;right: 19%;}
.jr_available_seats{width:100%;color: #838383;font-size: 18px;padding-top: 20px;padding-bottom: 20px;}
.jr_available_seats strong{color: #464646;}
.jr_seats_left{float: left;width:50%;}
.jr_seats_right{float: right;width:50%;text-align: right;}
.jr_contact_btn{width: 100%;height:35px;border:1px solid #1d78a3;border-radius: 20px;color: #1d78a3;background: transparent;font-size: 15px;background: url(../assets/img/jr_call.png) !important;background-repeat: no-repeat !important;background-size: 20px !important;background-position: 15% !important;}
.jr_contact_btn span img{}
.jr_profile_content1{padding-bottom: 60px;}
.jr_profile_content1 h5{margin: 0px;color: #434343;font-size: 16px;padding-top: 15px;padding-bottom: 5px;}
.jr_profile_content1 p{color: #595959;font-weight: 300;margin: 0px;font-size: 15px;padding-top: 10px;padding-bottom:10px;}
.jr_verification .loca1{background:url("../assets/img/jr_loca1.png");background-size: 15px;}
.jr_verification .detour{background:url("../assets/img/jr_detour.png");background-size: 15px;}
.jr_verification .flex{background:url("../assets/img/jr_flex.png");background-size: 15px;}
.jr_verification .seat1{background:url("../assets/img/jr_seat1.png");background-size: 15px;}
.jr_car_info{width:100%;padding-top: 15px;}
.jr_car_info_left{width:50%;float: left;}
.jr_car_info_right{width:50%;float: right;}
.jr_car_info_right p img{width:30px;}
.jr_car_info_right p span{position: relative; position: relative;bottom: 10px;left: 5px;}
.jr_car_info_photo{float: left;width:50px;height:50px;border-radius:50%;}
.jr_car_info_photo img{width:100%;height:100%;border-radius:50%;object-fit: cover;object-position: center;}
.jr_car_info_detail{float: left; padding: 10px;padding-left: 20px;padding-top: 0px;}
.jr_car_info_detail h6{margin:0px;}
.jr_car_info_detail p{margin:0px;padding: 0px;}
.jr_car_info_detail p img{width:20px;}
.jr_report{height:35px;border:1px solid #000000;border-radius:20px;padding-left:20px;padding-right:20px;text-transform: capitalize;background: transparent;color: #000000;}
.jr_bottom_button_bay1{text-align: center;}
.jr_book_pop_up_wrapper{width:70%;margin:0 auto;background: #ffffff;border-radius:20px; padding: 25px;margin-top:50px;}
.jr_book_pop_up_wrapper h4 {text-align: center;color: #555555;width: 100%;padding-top: 30px; font-weight: 300;font-size: 16px;}
.jr_book_pop_up_wrapper h3 {color: #636363;}
.jr_book_pop_up_wrapper hr {border: 2px solid #ff7200;width: 40px;margin: 0 auto;border-radius: 5px;height: 0px;margin-top: 15px;}
.jr_counter{width:100%;text-align: center; padding-top: 15px;}
.jr_count_item{}
.jr_count_item img{width:20px;}
.jr_count{color:#1188ca;font-size: 35px;font-weight: 300; padding-left: 10px;padding-right: 10px;}
.jr_bottom_send{background: #343434;color: #fff;border-radius:20px;height:35px;border:none;color: #fff;font-size: 14px;padding-left: 40px;padding-right: 40px;text-transform: capitalize; line-height: 13px;}
.jr_bottom_send span img{width: 16px;margin-left: 10px;}
.jr_text_msg{width:100%;position: relative;margin-bottom: 50px;}
.jr_send_msg{width:100%;border:none;border-bottom: 1px solid #bcbcbc;height:35px;font-size: 16px;}
.jr_send_msg::-webkit-input-placeholder { color:#8c8c8c;}
.jr_send_msg::moz-input-placeholder { color:#8c8c8c;}
.jr_attch{position: absolute;right:0px;top:0px;}
.jr_attch span img{height:25px;margin-left: 10px;}
.jr_no_ride{width:100%;}
.jr_no_ride p{text-align: center;color: #7d7d7d;}
.jr_ride_wrapper h3{color: #2078a2;font-weight: 300;text-align: justify; font-size: 18px;}
.jr_ride_wrapper ul{padding: 0px;margin:0px;}
.jr_ride_wrapper ul li{list-style: none;color: #717171; font-size: 16px;font-weight: 300;padding-left: 30px;background-position: left !important;background-repeat: no-repeat !important;}
.jr_ride_wrapper .from{ background: url(../assets/img/jr_blue_circle.png);background-size: 15px;}
.jr_ride_wrapper .to{ background: url(../assets/img/jr_orange_circle.png);background-size: 15px;}
.jr_rangebar{padding: 0px;}
.jr_rangebar .item-inner{padding: 0px !important;}
.jr_rangebar .range-knob{background: #2077a3 !important;}
.jr_rangebar .range-bar-active{background: #2077a3 !important;}
.jr_rangebar .range-pin{background: #2077a3 !important;color: #fff;}
.jr_rangebar .range-pin::before{background: #2077a3 !important;color: #fff;}
.jr_rangebar h6{color: #464646; position: relative;top: 30px;}
.jr_member_rate{height: 35px;border-radius:20px;width:100%;border:none;color: #fff;text-transform: capitalize;background: #4d4d4d; font-size: 15px;font-weight: 400;}
.jr_inside_bg{width:100%;height:100%;background:#2b7091;}
.jr_sidemenu_top{width:100%;text-align: center;}
.jr_sidemenu_photo{width:100px;height:100px;border:2px solid #fff;border-radius:50%;}
.jr_sidemenu_photo img{width:100%;height:100%;border:1px solid #fff;border-radius:50%;object-fit:cover;object-position: center;}
.jr_sidemenu_detail{}
.jr_sidemenu_detail h4{color: #fff;font-weight: 300;font-size:18px;}
.jr_sidemenu_detail p{color: #fff;font-weight: 400;font-size: 14px; margin-top: 0px;}
.jr_side_edit{border-radius:20px;background: #11445b;padding-left:20px;padding-right: 20px;color: #fff;font-size: 16px;height:30px;}
.jr_sidemenu_detail ul{margin:0px;padding:0px; padding-top: 50px;}
.jr_sidemenu_detail ul li{color: #fff;list-style: none;padding-bottom: 20px;}
.jr_sidemenu_detail ul li img{height: 18px;margin-right: 15px;}
.jr_sidemenu_detail ul li span{font-size: 16px;font-weight: 300;}
.jr_home_active{width:100%;height:100%;background:url("../assets/img/jr_home_active.png") !important;background-repeat: no-repeat !important;background-position: center bottom !important;background-size:cover !important;position: relative;}
.jr_home_offer_ride{width:100%; padding-top: 20px;
}
.jr_home_offer_ride ul{margin:0px;padding:0px;position:relative;}
.jr_home_offer_ride ul li{width:100%;list-style: none;background: #fff;border-radius:8px;margin-bottom: 10px;position:relative;padding:10px;position: relative;}
.jr_offer_ride_top{
background: -webkit-linear-gradient(left, #1379a1 , #6a449b);
background: -o-linear-gradient(right, #1379a1, #6a449b);
background: -moz-linear-gradient(right, #1379a1, #6a449b);
background: linear-gradient(to right, #1379a1 , #6a449b);
color: #fff;
padding:11px;border-radius:10px;
font-weight: 300;font-size: 16px;
position: relative;
top: 10px;
height:50px;
}
.jr_book_ride_top{
background: -webkit-linear-gradient(left, #f16436 , #ef548d);
background: -o-linear-gradient(right, #f16436, #ef548d);
background: -moz-linear-gradient(right, #f16436, #ef548d);
background: linear-gradient(to right, #f16436 , #ef548d);
color: #fff;
padding:11px;border-radius:10px;
font-weight: 300;font-size: 16px;
position: relative;
top: 10px;
height:50px;
}
.jr_home_offer_photo{width:60px;height:60px;border-radius:50%;float: left;}
.jr_home_offer_photo img{width:100%;height:100%;border-radius:50%;}
.jr_home_offer_detail{float:right; padding-left: 15px;position: relative;width:75%;}
.jr_home_offer_detail h5{margin:0px;padding: 0px;color: #2077a3;font-weight: 300;text-align: left;}
.jr_home_offer_detail h6{margin:0px;padding: 0px;color: #757575;padding-top: 3px;padding-bottom: 3px;font-weight:300;}
.jr_home_offer_detail p{margin:0px;padding: 0px;color: #9d9d9d;font-weight: 300;text-align: left;}
.jr_home_offer_detail p span{margin-left:10px;margin-right:10px;}
.jr_home_offer_detail p span img{width:8px;}
.jr_edit_more{position: absolute;bottom:10px;right:10px;}
.jr_edit_more img{width: auto;height:16px;}
.jr_home_btm{background:url("../assets/img/jr_exclam.png") !important;background-repeat: no-repeat !important; background-position: left 10px top 5px !important;background-size: 18px !important;color: #e9801a;text-align: center;font-weight: 300;}
.jr_home_btm hr{width:100%;border:1px solid #b3b3b3;border-top:none;height:0px;}
.jr_home_btm p{text-align: center;margin:0px;color: #e9801a;padding-top: 5px;}
.jr_your_booking{width:100%;}
.jr_request_confirm{width:100%;padding-bottom: 15px;border-bottom:1px solid #dcdcdc;padding-top: 10px;}
.jr_request_left{width:20%;float: left;text-align:center;}
.jr_request_left img{ width: 30px;margin:0 auto;padding-top: 20px;}
.jr_request_right{width:80%;float: right;border-left:1px solid #dcdcdc;padding-left: 15px;}
.jr_request_right h5{color: #699ab8;margin:0px;padding: 0px;font-size: 18px;}
.jr_request_right p{color: #949494;margin:0px;padding: 0px; padding-top: 10px;font-size: 12px;padding-bottom: 3px;}
.jr_request_right h6{color: #464646;margin:0px;padding: 0px;font-size:15px;}
.jr_time_schedule p{color: #f16730;padding:0px;margin:0px;font-weight: 400;}
.jr_summary{width:100%;}
.jr_summary h6{font-size: 13px;padding-top: 5px;padding-bottom: 5px;}
.jr_summary_details{width:100%;}
.jr_summary_details h5{font-size:16px;padding-bottom: 15px;}
.jr_summary_details h5 span img{height:13px;margin-left:15px;}
.jr_summary_details p{font-size: 14px;padding-bottom:5px;padding-top: 5px;}
.jr_summary_msg{width:100%;background:url("../assets/img/jr_summary_msg.png") !important;background-repeat: no-repeat !important;color: #3c83a9; font-size: 16px;padding-left: 30px; background-size: 20px !important;}
.jr_login_wrapper{width:100%;padding-top: 35px;}
.jr_logo{width:100%;text-align: center;}
.jr_logo img{width: 100px;}
.jr_login_detail{width:100%;padding-top: 20px;text-align: center;}
.jr_login_detail h5{color: #fff;text-align: center;margin:0px;font-weight: 300;font-size: 20px;}
.jr_login_detail h4{color: #fff;text-align: center;margin:0px;font-weight: 600;padding: 0px;font-size: 25px;padding-bottom: 10px;padding-top:0px;}
.jr_login_detail p{color: #fff;text-align: center;margin:0px;font-size: 14px;font-weight: 300;}
.jr_login_detail hr{border-color: #fff !important;margin-top: 30px;margin-bottom: 50px;}
.jr_login_input{height:35px;border:1px solid #1379a1;border-radius:20px;width:100%;background: transparent;padding-left:20px;padding-right: 15px;margin-bottom: 15px;color: #fff;}
.jr_login_input::-webkit-input-placeholder {color:#fff;}
.jr_login_input::-moz-placeholder {color:#fff;}
.jr_login_input:-ms-input-placeholder {color:#fff;}
.jr_login_input:-moz-placeholder {color:#fff;}
.jr_btm_btn1 {height: 40px;border-radius:50%;background: #1379a1;color: #fff;font-family: 'Roboto', sans-serif;transition: width 2s;width: 40px;margin: 0 auto;text-align: center;font-size: 15px;padding: 10px; border: none;text-transform: capitalize;}
.jr_btm_btn2 {height: 40px;border-radius:50%;background: #f05e5a;color: #fff;font-family: 'Roboto', sans-serif;transition: width 2s;width: 40px;margin: 0 auto;text-align: center;font-size: 15px;padding: 10px; border: none;text-transform: capitalize;}
.jr_btm_btn1 img {width: 8px;}
.jr_btm_btn2 img {width: 8px;}
.jr_login_input1{height:35px;border:1px solid #f16823;border-radius:20px;width:100%;background: transparent;padding-left:20px;padding-right: 15px;margin-bottom: 15px;color: #fff;}
.jr_login_input1::-webkit-input-placeholder {color:#fff;}
.jr_login_input1::-moz-placeholder {color:#fff;}
.jr_login_input1:-ms-input-placeholder {color:#fff;}
.jr_login_input1:-moz-placeholder {color:#fff;}
.jr_passcode{padding-bottom: 50px;}
.jr_passcode ul{margin:0px;padding: 0px;width:100%;text-align: center;}
.jr_passcode ul li{display: inline-block;width:50px;height:50px;border-radius:50%;text-align: center; margin: 5px;}
.jr_passcode_select{width:100%;height:100%;border-radius:50%;border:1px solid #fff;background: transparent;color: #fff; -webkit-appearance: none;-moz-appearance: none;text-align: center; font-size: 16px;padding-left: 18px;}
.jr_passcode_select option{color: #fff;text-align: center;}
.jr_passcode_select:focus{width:100%;height:100%;border-radius:50%;border:1px solid #f16823;}
.jr_passcode_select option:focus{color:#f16823;width:100%;text-align: center !important;}
.jr_submit_signup{height: 35px; border-radius: 20px; border: none;background: linear-gradient(to right, #f16823, #ef519d);text-transform: capitalize !important;font-size: 14px;font-weight: 400; line-height: 5px;padding-left: 25px;padding-right:25px;margin:0 auto;margin-bottom: 15px;}
.jr_pick_drop{width:100%;height:100%;}
.jr_map{width:100%;height:60%;background:url("../assets/img/jr_map_bg.png") !important;background-repeat: no-repeat;background-position: center;background-size: cover !important;}
.jr_pick_drop_detail{width:100%;height:40%;box-shadow: 10px 10px 60px 15px #888888;padding: 10px;}
.jr_up_arw{width:100%;text-align: center;}
.jr_up_arw img{width: 20px;}
.jr_pick_drop_detail ul{width:80%;margin:0px;padding:0px;margin: 0 auto;padding-top: 15px;padding-bottom: 15px;}
.jr_pick_drop_detail ul li{width:100%;margin:0px;padding:0px;list-style: none;width:100%;padding-bottom: 7px;padding-top: 7px;}
.jr_pick_drop_detail ul li p{float: left;color: #777676;font-size:16px;margin:0px;padding-top: 5px;padding-left: 15px;}
.jr_pick_drop_detail ul hr{width:100%;height:0px;margin-top:20px;border-bottom:1px solid #e7e7e7;border-top:none;height:0px;}
.jr_pick_drop_detail h5{text-align: center;color: #777676;font-size: 20px;font-weight: 300;}
.jr_pick_drop_detail hr{width:40px;border:2px solid #ff7200;border-radius:20px;height:0px;margin:0 auto;}
.jr_loc_no{float: left;width:30px;height:30px;background:url("../assets/img/jr_loc1.png") !important;font-size:12px;background-repeat: no-repeat !important;background-position:center !important;color: #fff;text-align: center;background-size: 25px !important;padding-top:7px;}
.jr_other_place{border:1px solid #2078a2;color: #2078a2;height:35px;padding-left: 20px;padding-right: 20px;border-radius:20px;background: transparent;}
.jr_loc_no1 .jr_radio_id {float: right;position: relative;top: 4px;}
.jr_driver_profile{background:#f0f0f0; padding: 10px;}
.jr_driver_profile .jr_search_profile_detail{}
.jr_driver_profile .jr_search_profile_detail h6{font-size: 16px;}
.jr_driver_profile .jr_search_profile_detail h6 span{float: right;font-size: 12px;position: relative;top: 3px;}
.jr_driver_profile .jr_home_offer_photo{border:1px solid #2078a2;}
.jr_avia{width:100%;}
.jr_avia .left{float: left;}
.jr_avia .right{float:left;}
.jr_avia img{width:15px; position: relative;top: 4px;margin-right: 10px;}
.jr_approve_btn_bay{width:100%;}
.jr_approve_btn{width:49%;float: left;height:35px;border-radius:20px;background: #49a11e;color: #fff;font-size: 16px;text-transform: capitalize;}
.jr_decline_btn{width:49%;float: right;height:35px;border-radius:20px;background: #515151;color: #fff;font-size: 16px;text-transform: capitalize;}
.jr_edit_btn{width:49%;float: left;height:35px;border-radius:20px;background:transparent;color: #f7941d;font-size: 16px;border:1px solid #f7941d;text-transform: capitalize;}
.jr_delete_btn{width:49%;float: right;height:35px;border-radius:20px;background:transparent;color: #d52a2a;font-size: 16px;border:1px solid #d52a2a;text-transform: capitalize;}
.jr_p{color: #717171 !important;text-align: left !important;font-size: 16px;font-weight: 400 !important;}
.jr_bottom_distance_card{
position: fixed;
bottom:50px;
padding: 10px;
left:0px;
right: 0px;
.jr_bottom_inside{
background: #ffffff;
border-radius:13px;
padding:10px;
box-shadow: 0px 10px 70px 1px #888888;
.jr_dest_input{
width:100%;
height:35px;
border:none;
margin-bottom: 10px;
font-size: 14px;
padding-top: 5px;
}
.from{
background: url(../assets/img/jr_blue_circle.png) !important;
font-family: 'Roboto', sans-serif;
background-repeat: no-repeat !important;
background-position: left 7px top 10px !important;
background-size: 18px !important;
padding-left: 35px;
}
.to{
background: url(../assets/img/jr_orange_circle.png)!important;
font-family: 'Roboto', sans-serif;
background-repeat: no-repeat !important;
background-position: left 7px top 10px !important;
background-size: 18px !important;
padding-left: 35px;
}
}
}
.cab_footer_btn{width:100%;height:50px;font-weight: 300;letter-spacing: 2px;border-radius:0px !important;background: #f7941e;color:#FFF;text-align: center;font-size: 16px;margin:0px;text-transform: capitalize !important;}
}
import { Component, ViewChild, ElementRef } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import { Geolocation } from '@ionic-native/geolocation';
declare var google;
@IonicPage()
@Component({
selector: 'page-userlocation',
templateUrl: 'userlocation.html',
})
export class UserlocationPage {
@ViewChild('map') mapElement: ElementRef;
map: any;
directionsDisplay:any;
geocoder:any;
details = this.navParams.get('data')
locSubs:any;
temp:boolean = false;
loc = {'from':'','to':''}
i:number = 0;
constructor(public navCtrl: NavController, public navParams: NavParams, private geolocation: Geolocation) {
this.geolocation.getCurrentPosition().then((resp) => {
this.loadMap(resp.coords.latitude, resp.coords.longitude);
})
}
ionViewDidEnter() {
var This = this
var drop = This.details.drop_latlng.split(',')
This.geocoder = new google.maps.Geocoder();
This.locSubs = This.geolocation.watchPosition()
.filter((p) => p.coords !== undefined) //Filter Out Errors
.subscribe(position => {
This.i++;
var directionsService = new google.maps.DirectionsService;
This.directionsDisplay.setMap(This.map);
This.directionsDisplay.setOptions({ suppressMarkers: true });
var pickLoc = new google.maps.LatLng(Number(drop[0]), Number(drop[1]));
var driverLoc = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
var dimage = {
url: 'assets/img/map_label.png',
scaledSize: new google.maps.Size(50, 22),
origin: new google.maps.Point(0, 0),
anchor: new google.maps.Point(25, 12)
};
var marker = new google.maps.Marker({
position: driverLoc,
map: This.map,
icon: dimage
});
if (This.i == 5) {
// if (google.maps.geometry.spherical.computeDistanceBetween(pickLoc, driverLoc) < 100) {
This.temp = true
}
This.calculateAndDisplayRoute(directionsService, This.directionsDisplay, pickLoc, driverLoc);
})
}
loadMap(lat, lng) {
let latLng = new google.maps.LatLng(lat, lng);
let mapOptions = {
center: latLng,
zoom: 15,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
this.map = new google.maps.Map(this.mapElement.nativeElement, mapOptions);
this.directionsDisplay = new google.maps.DirectionsRenderer({
map: this.map,
preserveViewport: true
});
}
back(){
this.navCtrl.pop();
}
calculateAndDisplayRoute(directionsService, directionsDisplay, start, dest) {
var This = this
directionsService.route({
origin: start,
destination: dest,
travelMode: 'DRIVING'
}, function (response, status) {
if (status === 'OK') {
directionsDisplay.setDirections(response);
var bounds = response.routes[0].bounds;
This.map.fitBounds(bounds);
This.map.setCenter(bounds.getCenter());
} else {
window.alert('Directions request failed due to ' + status);
}
});
}
ionViewWillLeave() {
this.locSubs.unsubscribe();
}
}
import { Injectable } from '@angular/core';
@Injectable()
export class dataService {
bookingData:any;
rateData:any;
driverData:any;
constructor() { }
public setbookingData(val){
this.bookingData = val;
}
public getbookingData(){
return this.bookingData;
}
public setrateData(val){
this.rateData = val;
}
public getrateData(){
return this.rateData;
}
public setdriverData(val){
this.driverData = val;
}
public getdriverData(){
return this.driverData;
}
}
\ No newline at end of file
import { Injectable } from '@angular/core';
import { AngularFireDatabase } from 'angularfire2/database';
import { FirebaseListObservable } from 'angularfire2/database-deprecated';
import * as firebase from 'firebase';
import 'rxjs/add/operator/toPromise';
// import { Router } from '@angular/router';
@Injectable()
export class fireService {
items: FirebaseListObservable<any[]>;
//data: FirebaseObjectObservable<any[]>;
data:any;
currentUser: any;
userData: any;
// private basePath: string = 'users';
constructor(
private db: AngularFireDatabase,) {
// console.log(this.currentUser);
// console.log('hhhh');
}
pushItem(url,data){
var key = firebase.database().ref(url).push().key;
var new_node = url + "/" + key;
data.push_id = key;
this.updateItem(new_node, data)
return 'success';
}
updateItem(url,data){
// return this.db.object(url).update(data);
var promise = new Promise((resolve, reject) => {
if (this.db.object(url).update(data)) {
// console.log("Updated");
resolve({ 'status': 'success' });
} else {
reject();
}
});
return promise;
}
removeItem(url){
return this.db.object(url).remove();
}
listItem(url){
return this.db.list(url);
}
listItemQuery(url,query){
return this.db.list(url,query);
}
checkItem(url){
return this.db.list(url);
}
}
import { Injectable } from '@angular/core';
import { Http } from '@angular/http';
import 'rxjs/add/operator/map';
import { LoadingController, AlertController, Events } from 'ionic-angular';
import { AbstractControl, ValidatorFn } from '@angular/forms'
@Injectable()
export class Myservice {
// base_url = 'http://techlabz.in/bmd_new/'
base_url = 'http://192.168.140.20/CMC/'
webservice_url = this.base_url + 'web_service/'
loader: any;
alert: any;
post_url: any;
data: any;
result: any;
msg_push: any;
constructor(public http: Http, public loadingCtrl: LoadingController, public alertCtrl: AlertController, public events: Events) { }
show_loader() {
this.loader = this.loadingCtrl.create({
content: ""
});
this.loader.present();
}
show_alert(title, message) {
this.alert = this.alertCtrl.create({
title: title,
subTitle: message,
// message: message,
buttons: ['OK']
});
this.alert.present();
}
hide_loader() {
this.loader.dismissAll();
}
load_post(post_data, fn_name) {
post_data.secret_key = 'My_key';
post_data = JSON.stringify(post_data);
this.post_url = this.webservice_url + fn_name;
return this.http.post(`${this.post_url}`, `${post_data}`).map(res => res.json());
}
get_data(fn_name) {
return this.http.get(this.webservice_url + fn_name)
.map(res => res.json());
}
get_dataById(fn_name, id) {
return this.http.get(this.webservice_url + fn_name + id)
.map(res => res.json());
}
fileUpload(data, fn_name) {
var post_url = this.webservice_url + fn_name;
return this.http.post(post_url, data)
.map(res => res.json());
}
get_baseurl() {
return this.base_url;
}
checkLimit(min: number, max: number): ValidatorFn {
return (c: AbstractControl): { [key: string]: boolean } | null => {
if (c.value && (isNaN(c.value) || c.value < min || c.value > max)) {
return { 'range': true };
}
return null;
};
}
}
\ No newline at end of file
import { Pipe, PipeTransform } from '@angular/core';
/**
* Generated class for the OrderbyPipe pipe.
*
* See https://angular.io/api/core/Pipe for more info on Angular Pipes.
*/
@Pipe({
name: 'orderby',
pure: false
})
export class OrderbyPipe implements PipeTransform {
/**
* Takes a value and makes it lowercase.
*/
transform(array, orderBy, asc = true){
if (!orderBy || orderBy.trim() == ""){
return array;
}
//ascending
if (asc){
return Array.from(array).sort((item1: any, item2: any) => {
return this.orderByComparator(item1[orderBy], item2[orderBy]);
});
}
else{
//not asc
return Array.from(array).sort((item1: any, item2: any) => {
return this.orderByComparator(item2[orderBy], item1[orderBy]);
});
}
}
orderByComparator(a:any, b:any):number{
if((isNaN(parseFloat(a)) || !isFinite(a)) || (isNaN(parseFloat(b)) || !isFinite(b))){
//Isn't a number so lowercase the string to properly compare
if(a.toLowerCase() < b.toLowerCase()) return -1;
if(a.toLowerCase() > b.toLowerCase()) return 1;
}
else{
//Parse strings as numbers to compare properly
if(parseFloat(a) < parseFloat(b)) return -1;
if(parseFloat(a) > parseFloat(b)) return 1;
}
return 0; //equal each other
}
}
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs';
import { BehaviorSubject } from 'rxjs/BehaviorSubject';
@Injectable()
export class SubjectService {
private locSubject = new BehaviorSubject<any>(null);
private docSubjects = new BehaviorSubject<any>(null);
private querySubjects = new BehaviorSubject<any>(null);
sendLocData(searchData: any) {
this.locSubject.next(searchData);
}
getLocData(): Observable<any> {
return this.locSubject.asObservable();
}
sendDocData(docData: any) {
this.docSubjects.next(docData);
}
getDocData(): Observable<any> {
return this.docSubjects.asObservable();
}
sendQueryData(queryData: any) {
this.querySubjects.next(queryData);
}
getQueryData(): Observable<any> {
return this.querySubjects.asObservable();
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment