From 0cf95d2cd4df6b1958af929ffd1cf386b09f3980 Mon Sep 17 00:00:00 2001 From: Mike Fitzpatrick Date: Thu, 8 Mar 2018 14:41:45 -0500 Subject: [PATCH] Added cruising pages support --- src/app/app.component.ts | 2 +- src/app/app.module.ts | 14 ++- .../cruises.cje/StoreContent/persistentStore | Bin 0 -> 204800 bytes src/assets/data/cruises.json | 52 +++++++++++ src/pages/cruise/cruise.html | 26 ++++++ src/pages/cruise/cruise.scss | 47 ++++++++++ src/pages/cruise/cruise.ts | 81 ++++++++++++++++++ src/pages/cruises/cruises.html | 9 ++ src/pages/cruises/cruises.scss | 27 ++++++ src/pages/cruises/cruises.ts | 39 +++++++++ src/pages/grid/grid.html | 2 +- src/pages/grid/grid.ts | 9 ++ src/pages/profile/profile.html | 2 +- src/pages/profile/profile.ts | 2 +- src/pages/tabs/tabs.html | 4 +- src/pages/tabs/tabs.ts | 4 +- src/services/cruises.ts | 44 ++++++++++ src/services/profiles.ts | 3 +- 18 files changed, 355 insertions(+), 12 deletions(-) create mode 100644 src/assets/data/cruises.cje/StoreContent/persistentStore create mode 100644 src/assets/data/cruises.json create mode 100644 src/pages/cruise/cruise.html create mode 100644 src/pages/cruise/cruise.scss create mode 100644 src/pages/cruise/cruise.ts create mode 100644 src/pages/cruises/cruises.html create mode 100644 src/pages/cruises/cruises.scss create mode 100644 src/pages/cruises/cruises.ts create mode 100644 src/services/cruises.ts diff --git a/src/app/app.component.ts b/src/app/app.component.ts index bb3adbf..b55aba1 100644 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -8,7 +8,7 @@ import { TabsPage } from '../pages/tabs/tabs'; @Component({ templateUrl: 'app.html' }) -export class Groundr { +export class Urge { rootPage:any = TabsPage; constructor(platform: Platform, statusBar: StatusBar, splashScreen: SplashScreen) { diff --git a/src/app/app.module.ts b/src/app/app.module.ts index e7a6512..7cb6823 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -3,9 +3,11 @@ import { BrowserModule } from '@angular/platform-browser'; import { HttpModule } from '@angular/http'; import { IonicApp, IonicModule, IonicErrorHandler } from 'ionic-angular'; import { IonicSwipeAllModule } from 'ionic-swipe-all'; -import { Groundr } from './app.component'; +import { Urge } from './app.component'; import { ChatPage } from '../pages/chat/chat'; +import { CruisePage } from '../pages/cruise/cruise'; +import { CruisesPage } from '../pages/cruises/cruises'; import { GridPage } from '../pages/grid/grid'; import { LightboxPage } from '../pages/lightbox/lightbox'; import { MessagesPage } from '../pages/messages/messages'; @@ -17,8 +19,10 @@ import { SplashScreen } from '@ionic-native/splash-screen'; @NgModule({ declarations: [ - Groundr, + Urge, ChatPage, + CruisePage, + CruisesPage, GridPage, LightboxPage, MessagesPage, @@ -29,7 +33,7 @@ import { SplashScreen } from '@ionic-native/splash-screen'; BrowserModule, HttpModule, IonicSwipeAllModule, - IonicModule.forRoot(Groundr, { + IonicModule.forRoot(Urge, { iconMode: 'ios', modalEnter: 'modal-slide-in', modalLeave: 'modal-slide-out', @@ -39,8 +43,10 @@ import { SplashScreen } from '@ionic-native/splash-screen'; ], bootstrap: [IonicApp], entryComponents: [ - Groundr, + Urge, ChatPage, + CruisePage, + CruisesPage, GridPage, LightboxPage, MessagesPage, diff --git a/src/assets/data/cruises.cje/StoreContent/persistentStore b/src/assets/data/cruises.cje/StoreContent/persistentStore new file mode 100644 index 0000000000000000000000000000000000000000..7b923820b643626598e6d26fed27bdc1f4d7dccd GIT binary patch literal 204800 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 literal 0 HcmV?d00001 diff --git a/src/assets/data/cruises.json b/src/assets/data/cruises.json new file mode 100644 index 0000000..07d78e7 --- /dev/null +++ b/src/assets/data/cruises.json @@ -0,0 +1,52 @@ +[{ + "order" : 0, + "location" : { + "address" : { + "street1" : "123 Boylston St", + "street2" : "12th Floor", + "locality" : "Boston", + "region" : "MA", + "postal" : "02110", + "country" : "United States" + }, + "loc" : { + "type" : "Point", + "coordinates" : [ + 0, + 0 + ] + } + }, + "name" : "Dummy1", + "pic" : { + "detail" : "https://placehold.it/1920x1280", + "thumb" : "https://placehold.it/1920x1280" + }, + "text" : "Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text!" +}, +{ + "order" : 1, + "location" : { + "address" : { + "street1" : "", + "street2" : "", + "locality" : "Abu Dhabi", + "region" : "", + "postal" : "", + "country" : "UAE" + }, + "loc" : { + "type" : "Point", + "coordinates" : [ + 0, + 0 + ] + } + }, + "name" : "Dummy2", + "pic" : { + "detail" : "https://placehold.it/1920x1280", + "thumb" : "https://placehold.it/1920x1280" + }, + "text" : "Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text, Some text!" +}] diff --git a/src/pages/cruise/cruise.html b/src/pages/cruise/cruise.html new file mode 100644 index 0000000..0063a48 --- /dev/null +++ b/src/pages/cruise/cruise.html @@ -0,0 +1,26 @@ + + + + + + + +
+ + + +

{{this.cruise.name}}

+
+
+ + Location + + + + {{this.cruise.text}} + +
+
+
diff --git a/src/pages/cruise/cruise.scss b/src/pages/cruise/cruise.scss new file mode 100644 index 0000000..02c9aea --- /dev/null +++ b/src/pages/cruise/cruise.scss @@ -0,0 +1,47 @@ +page-cruise { + + ion-content { + background-position: center; + background-repeat: no-repeat; + background-size: contain; + } + + .scroll-content { + overflow-y: hidden; + } + + ion-toolbar { + + .toolbar-background { + background-color: transparent; + } + + .bar-button { + color: #ffffff; + } + } + + .details { + background: rgba(0, 0, 0, 0.8); + bottom: 0; + height: 60px; + left: 0; + position: absolute; + right: 0; + transition: all 250ms 125ms ease-in-out; + + h2 { + margin: 0; + } + + .location { + margin-top: 1.5rem; + } + + &.open { + height: 100%; + overflow-y: scroll; + padding-top: 35px; + } + } +} diff --git a/src/pages/cruise/cruise.ts b/src/pages/cruise/cruise.ts new file mode 100644 index 0000000..a1d7757 --- /dev/null +++ b/src/pages/cruise/cruise.ts @@ -0,0 +1,81 @@ +import { Component } from '@angular/core'; +import { DomSanitizer } from '@angular/platform-browser'; +import { NavController, NavParams } from 'ionic-angular'; + +import { LightboxPage } from '../lightbox/lightbox'; + +@Component({ + selector: 'page-cruise', + templateUrl: 'cruise.html' +}) +export class CruisePage { + + detailsOpen: boolean = false; + cruise: any; + tabNavEl: any; + + constructor(public navCtrl: NavController, public navParams: NavParams, private _sanitizer: DomSanitizer) { + this.cruise = navParams.get('cruise'); + this.tabNavEl = document.querySelector('#tab-nav .tabbar'); + } + + ionViewWillEnter() { + this.tabNavEl.style.display = 'none'; + } + + closeCruise(event) { + this.navCtrl.pop(); + } + + closeCruiseDetails(event) { + if (this.detailsOpen) { + this.detailsOpen = false; + document.getElementById('detail-overlay').classList.remove('open'); + } + } + + getBackground(images) { + // PROD: return this._sanitizer.bypassSecurityTrustStyle('url(https://appsby.fitz.guru/urge/' + images.detail + ')'); + return this._sanitizer.bypassSecurityTrustStyle('url(' + images.detail + ')'); + } + + getFormattedCruiseAddress(location) { + var address = ''; + if (location && location.address) { + address += location.address.street1 ? location.address.street1 + '
' : ''; + address += location.address.street2 ? location.address.street2 + '
' : ''; + address += location.address.locality ? location.address.locality + ', ' : ''; + address += location.address.region ? location.address.region + ' ' : ''; + address += location.address.postal ? location.address.postal + '
' : ''; + address += location.address.country ? location.address.country : ''; + } + return address; + } + + markFavorite(event, cruise) { + console.debug('favorite cruise', { event: event, profile: cruise }); + } + + openCruiseDetails(event) { + if (!this.detailsOpen) { + this.detailsOpen = true; + document.getElementById('detail-overlay').classList.add('open'); + } + } + + showLightbox(event, image) { + if (event.target.classList.contains('scroll-content')) { + this.navCtrl.push(LightboxPage, { + image: image + }); + } + } + + toggleCruiseDetails(event) { + if (!this.detailsOpen) { + this.openCruiseDetails(event); + } else { + this.closeCruiseDetails(event); + } + } +} diff --git a/src/pages/cruises/cruises.html b/src/pages/cruises/cruises.html new file mode 100644 index 0000000..538ee80 --- /dev/null +++ b/src/pages/cruises/cruises.html @@ -0,0 +1,9 @@ + + + + + {{current.name}} + + + + diff --git a/src/pages/cruises/cruises.scss b/src/pages/cruises/cruises.scss new file mode 100644 index 0000000..b722f7f --- /dev/null +++ b/src/pages/cruises/cruises.scss @@ -0,0 +1,27 @@ +page-cruises { + + ion-col { + + &.cruise { + background-size: cover; + border: 1px solid #000000; + box-sizing: border-box; + padding: 0 0 37.5% !important; + position: relative; + + .placename { + bottom: 0.25rem; + box-sizing: border-box; + color: #acacac; + display: inline-block; + left: 0.5rem; + overflow: hidden; + position: absolute; + right: 0.25rem; + text-overflow: ellipsis; + text-shadow: rgba(0, 0, 0, 1); + white-space: nowrap; + } + } + } +} diff --git a/src/pages/cruises/cruises.ts b/src/pages/cruises/cruises.ts new file mode 100644 index 0000000..44e6b85 --- /dev/null +++ b/src/pages/cruises/cruises.ts @@ -0,0 +1,39 @@ +import { Component } from '@angular/core'; +import { DomSanitizer } from '@angular/platform-browser'; +import { NavController } from 'ionic-angular'; + +import { CruiseService } from '../../services/cruises'; +import { CruisePage } from '../cruise/cruise'; + +@Component({ + selector: 'page-cruises', + templateUrl: 'cruises.html', + providers: [ CruiseService ] +}) +export class CruisesPage { + + cruises: any; + tabNavEl: any; + + constructor(public navCtrl: NavController, public cruiseService: CruiseService, private _sanitizer: DomSanitizer) { + cruiseService.load().then((data) => { + this.cruises = data; + }); + this.tabNavEl = document.querySelector('#tab-nav .tabbar'); + } + + ionViewWillEnter() { + this.tabNavEl.style.display = 'flex'; + } + + getBackgroundThumbnail(images) { + // PROD: return this._sanitizer.bypassSecurityTrustStyle('url(https://appsby.fitz.guru/urge/' + images.thumb + ')'); + return this._sanitizer.bypassSecurityTrustStyle('url(' + images.thumb + ')'); + } + + profileTapped(event, cruise) { + this.navCtrl.push(CruisePage, { + cruise: cruise + }); + } +} diff --git a/src/pages/grid/grid.html b/src/pages/grid/grid.html index 4da1d79..19c0fcb 100644 --- a/src/pages/grid/grid.html +++ b/src/pages/grid/grid.html @@ -1,7 +1,7 @@ - + {{current.details.name}} diff --git a/src/pages/grid/grid.ts b/src/pages/grid/grid.ts index 9b9b186..b7fb9a7 100644 --- a/src/pages/grid/grid.ts +++ b/src/pages/grid/grid.ts @@ -2,6 +2,7 @@ import { Component } from '@angular/core'; import { DomSanitizer } from '@angular/platform-browser'; import { NavController } from 'ionic-angular'; +import { ChatPage } from '../chat/chat'; import { ProfileService } from '../../services/profiles'; import { ProfilePage } from '../profile/profile'; @@ -30,6 +31,14 @@ export class GridPage { return this._sanitizer.bypassSecurityTrustStyle('url(https://appsby.fitz.guru/urge/' + pics.thumb + ')'); } + profilePressed(event, profile) { + if (profile.messages && profile.messages.length) { + this.navCtrl.push(ChatPage, { + profile: profile + }); + } + } + profileTapped(event, profile) { this.navCtrl.push(ProfilePage, { profile: profile diff --git a/src/pages/profile/profile.html b/src/pages/profile/profile.html index 44e49f2..b7fc523 100644 --- a/src/pages/profile/profile.html +++ b/src/pages/profile/profile.html @@ -1,4 +1,4 @@ - +