Compare commits
No commits in common. "master" and "test" have entirely different histories.
|
|
@ -21,7 +21,6 @@ import { VideoServicesComponent } from './components/video-services/video-servic
|
|||
import { ImageComponent } from './components/image/image.component';
|
||||
import { VideoComponent } from './components/video/video.component';
|
||||
import { FCCPermitPageComponent } from './components/fcc-permit-page/fcc-permit-page.component';
|
||||
import { BalloonComponent } from './components/balloon/balloon.component';
|
||||
|
||||
const routes =
|
||||
[
|
||||
|
|
@ -116,10 +115,6 @@ const routes =
|
|||
{
|
||||
path: 'fmpermit',
|
||||
component: FCCPermitPageComponent
|
||||
},
|
||||
{
|
||||
path: 'balloon',
|
||||
component: BalloonComponent
|
||||
}
|
||||
]
|
||||
|
||||
|
|
|
|||
|
|
@ -54,7 +54,6 @@ import { SalvationPageComponent } from './components/salvation-page/salvation-pa
|
|||
import { MediaPageComponent } from './components/media-page/media-page.component';
|
||||
import { VideoPopupComponent } from './components/popups/video-popup/video-popup.component';
|
||||
import { FCCPermitPageComponent } from './components/fcc-permit-page/fcc-permit-page.component';
|
||||
import { BalloonComponent } from './components/balloon/balloon.component';
|
||||
|
||||
//Directives
|
||||
import { FadeInOnScrollDirective } from './directives/fade-in-on-scroll.directive';
|
||||
|
|
@ -89,7 +88,6 @@ import { YoutubePopupComponent } from './components/popups/youtube-popup/youtube
|
|||
|
||||
|
||||
|
||||
|
||||
@NgModule({
|
||||
declarations: [
|
||||
AppComponent,
|
||||
|
|
@ -131,7 +129,6 @@ import { YoutubePopupComponent } from './components/popups/youtube-popup/youtube
|
|||
CampPageComponent,
|
||||
MembersPageComponent,
|
||||
FCCPermitPageComponent,
|
||||
BalloonComponent,
|
||||
AddUserPopupComponent,
|
||||
AddTransactionPageComponent,
|
||||
AddTransactionPopupComponent,
|
||||
|
|
|
|||
|
|
@ -14,7 +14,6 @@
|
|||
</mat-option>
|
||||
</mat-autocomplete>
|
||||
</mat-form-field>
|
||||
<button mat-button class="m-5" type="button" (click)="addUser()">Add</button>
|
||||
<br>
|
||||
<mat-form-field class="w-50">
|
||||
<mat-select formControlName="typeId">
|
||||
|
|
|
|||
|
|
@ -1,9 +1,8 @@
|
|||
import { Component, OnInit, Inject } from '@angular/core';
|
||||
import { FormBuilder, FormGroup, Validators, FormArray } from '@angular/forms';
|
||||
import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef, MatDialog } from '@angular/material';
|
||||
import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material';
|
||||
import { contributorValidator } from '../contributor-validator';
|
||||
import { Transaction } from '../transaction';
|
||||
import { AddUserPopupComponent } from '../../popups/add-user-popup/add-user-popup.component';
|
||||
|
||||
export interface ValDisplay {
|
||||
value: number;
|
||||
|
|
@ -42,7 +41,7 @@ export class AddTransactionPopupComponent implements OnInit {
|
|||
funds: ValDisplay[];
|
||||
types: ValDisplay[];
|
||||
|
||||
constructor(private dialogService: MatDialog, private formBuilder: FormBuilder, @Inject(MAT_DIALOG_DATA) public data: DialogData, private dialogRef:MatDialogRef<AddTransactionPopupComponent>) {
|
||||
constructor(private formBuilder: FormBuilder, @Inject(MAT_DIALOG_DATA) public data: DialogData, private dialogRef:MatDialogRef<AddTransactionPopupComponent>) {
|
||||
this.contributors = this.data.contributors || [];
|
||||
this.funds = this.data.funds || [];
|
||||
this.types = this.data.types || [];
|
||||
|
|
@ -102,19 +101,4 @@ export class AddTransactionPopupComponent implements OnInit {
|
|||
this.dialogRef.close();
|
||||
}
|
||||
|
||||
addUser() {
|
||||
const ref = this.dialogService.open(AddUserPopupComponent);
|
||||
|
||||
ref.afterClosed().subscribe((res: any) => {
|
||||
if (res && res.id > 0) {
|
||||
|
||||
this.contributors.push({ value: res.id, display: res.lastName + ' ' + res.firstName });
|
||||
|
||||
let contrib = this.contributors.find(c => c.value === res.id);
|
||||
|
||||
this.form.get("contributor").setValue(contrib);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -27,9 +27,8 @@
|
|||
</a>
|
||||
<p><a href="tel:+1-406-494-5028" class="phone">(406) 494 - 5028</a></p>
|
||||
<p>Pastor Derek Loewen</p>
|
||||
<br>
|
||||
<p>Pastor Emeritus Ron Derksen</p>
|
||||
</div>
|
||||
|
||||
<div id="footer-services-content" class="footer-panel">
|
||||
<p>Sunday School: 10AM</p>
|
||||
<p>Sunday Worship: 11AM</p>
|
||||
|
|
@ -41,7 +40,7 @@
|
|||
<p><i ofbicon class="copyright">copyright</i> Copyright {{copyrightYear}}</p>
|
||||
<p>Old Fashion Baptist</p>
|
||||
<p><a routerLink="/home">ofbbutte.com</a></p>
|
||||
<p><a href="https://publicfiles.fcc.gov/fm-profile/KFGL" target="_blank">KFGL Public Information File</a></p>
|
||||
<p>Powered by God</p>
|
||||
<br>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -1,23 +0,0 @@
|
|||
.full-width{
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.hide{
|
||||
display: none;
|
||||
}
|
||||
|
||||
.bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.margin-top-space {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.errorMessages{
|
||||
color: white;
|
||||
background-color: rgb(255,90,90);
|
||||
padding: 10px;
|
||||
border-radius: 3px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
<secondary-page-component [hideSideBarOnMobile]="true" >
|
||||
<div mainContent>
|
||||
<br>
|
||||
<p class="bold">
|
||||
We are so glad you found one of our balloons. We would love to hear from you
|
||||
and where you found it!
|
||||
</p>
|
||||
<p class="margin-top-space">
|
||||
Click <a routerLink="/whoweare">here</a> to learn more about us.
|
||||
</p>
|
||||
<p class="margin-top-space">
|
||||
Click <a routerLink="/salvation">here</a> to learn more about <span class="bold">Jesus</span>.
|
||||
</p>
|
||||
<br>
|
||||
<div *ngIf="!formSubmitted">
|
||||
<form class="form" #contactForm="ngForm" (ngSubmit)="onSubmit()">
|
||||
<mat-form-field class="full-width">
|
||||
<input matInput type="text" placeholder="Name" required value="" [(ngModel)]="name" name="name" >
|
||||
</mat-form-field>
|
||||
<mat-form-field class="full-width">
|
||||
<input matInput type="text" placeholder="City, State" required value="" [(ngModel)]="location" name="location" >
|
||||
</mat-form-field>
|
||||
<mat-form-field class="full-width">
|
||||
<input matInput type="email" placeholder="Email" value="" [(ngModel)]="email" name="email" pattern="^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$">
|
||||
</mat-form-field>
|
||||
<mat-form-field class="full-width">
|
||||
<input matInput type="tel" placeholder="Phone" value="" [(ngModel)]="phone" name="phone">
|
||||
</mat-form-field>
|
||||
<mat-form-field class="full-width">
|
||||
<textarea matInput type="text" placeholder="Other Information or Questions" value="" [(ngModel)]="body" name="body" rows="5" ></textarea>
|
||||
</mat-form-field>
|
||||
<mat-form-field class="hide">
|
||||
<input matInput type="text" placeholder="hp" required value="" [(ngModel)]="hp" name="subject">
|
||||
</mat-form-field>
|
||||
<div class="errorMessages" *ngIf="errorMessages.length > 0">
|
||||
<p *ngFor="let error of errorMessages">{{error}}</p>
|
||||
</div>
|
||||
<button mat-raised-button type="submit" [disabled]="!contactForm.form.valid || submitButtonDisabled">{{submitButtonText}}</button>
|
||||
</form>
|
||||
</div>
|
||||
<div *ngIf="formSubmitted">
|
||||
<p><b>Thank You!</b></p>
|
||||
<p>Your message has been sent.</p>
|
||||
</div>
|
||||
</div>
|
||||
<div sideBar ofbFadeInOnScroll>
|
||||
|
||||
</div>
|
||||
</secondary-page-component>
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
|
||||
|
||||
import { BalloonComponent } from './balloon.component';
|
||||
|
||||
describe('BalloonComponent', () => {
|
||||
let component: BalloonComponent;
|
||||
let fixture: ComponentFixture<BalloonComponent>;
|
||||
|
||||
beforeEach(async(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ BalloonComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(BalloonComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should be created', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
|
|
@ -1,84 +0,0 @@
|
|||
import { Router } from '@angular/router';
|
||||
import { MatDialogConfig } from '@angular/material';
|
||||
import { OkPopupComponent } from '../popups/ok-popup/ok-popup.component';
|
||||
import { EmailService } from '../../services/email.service';
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
import { MatDialog } from '@angular/material';
|
||||
|
||||
|
||||
@Component({
|
||||
selector: 'app-contact-page',
|
||||
templateUrl: './balloon.component.html',
|
||||
styleUrls: ['./balloon.component.css']
|
||||
})
|
||||
export class BalloonComponent implements OnInit {
|
||||
public submitButtonText: string = "Submit";
|
||||
public submitButtonDisabled: boolean = false;
|
||||
public formSubmitted: boolean = false;
|
||||
|
||||
public name: string;
|
||||
public email: string;
|
||||
public location: string;
|
||||
public phone: string;
|
||||
public body: string;
|
||||
public hp: string = ".";
|
||||
|
||||
public errorMessages: string[] = [];
|
||||
|
||||
|
||||
constructor(private emailService: EmailService,
|
||||
private MatDialog: MatDialog,
|
||||
private router: Router) { }
|
||||
|
||||
ngOnInit() {
|
||||
}
|
||||
|
||||
onSubmit(){
|
||||
this.errorMessages = [];
|
||||
if (this.name == null || this.name == ""){
|
||||
this.errorMessages.push("Please enter a name");
|
||||
}
|
||||
if (this.location == null || this.location == ""){
|
||||
this.errorMessages.push("Please enter a city and state");
|
||||
}
|
||||
if (this.errorMessages.length > 0){ return; }
|
||||
|
||||
const body = `Location of balloon: ${this.location}<br>${this.body || ''}`;
|
||||
let email = this.email;
|
||||
if (!email || email.length === 0) {
|
||||
email = 'N/A';
|
||||
}
|
||||
|
||||
this.submitButtonText = "Please Wait...";
|
||||
this.submitButtonDisabled = true;
|
||||
this.emailService.sendEmail(this.name,
|
||||
email,
|
||||
this.phone || '',
|
||||
body,
|
||||
this.hp)
|
||||
.subscribe(
|
||||
success => {this.emailSuccess();},
|
||||
error => {this.emailError();});
|
||||
}
|
||||
|
||||
private emailSuccess(){
|
||||
let opts = new MatDialogConfig;
|
||||
opts.data = { title:'Email Sent','message':'Thank You! Your message has been sent.' };
|
||||
let popup = this.MatDialog.open(OkPopupComponent,opts);
|
||||
this.submitButtonText = "Submit";
|
||||
this.submitButtonDisabled = false;
|
||||
popup.afterClosed().subscribe(()=>{
|
||||
this.formSubmitted = true;
|
||||
});
|
||||
}
|
||||
|
||||
private emailError(){
|
||||
console.error("error");
|
||||
let opts = new MatDialogConfig;
|
||||
opts.data = { title:'Email Error','message':'Please make sure that you have entered a valid email address.' };
|
||||
let popup = this.MatDialog.open(OkPopupComponent,opts);
|
||||
this.submitButtonText = "Submit";
|
||||
this.submitButtonDisabled = false;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -16,10 +16,7 @@ export class ContributorAllReportsComponent implements OnInit {
|
|||
constructor(private printService: PrintService, private userService: UserService, private transactionService: TransactionService) { }
|
||||
|
||||
ngOnInit() {
|
||||
|
||||
const taxYear = 2024;
|
||||
|
||||
const query = forkJoin([this.userService.getAll(), this.transactionService.getByYear(taxYear), this.transactionService.getByYear(taxYear - 1)]);
|
||||
const query = forkJoin([this.userService.getAll(), this.transactionService.getByYear(2020), this.transactionService.getByYear(2019)]);
|
||||
|
||||
|
||||
query.subscribe(res => this.setup(res[0], res[1], res[2]));
|
||||
|
|
@ -47,4 +44,5 @@ export class ContributorAllReportsComponent implements OnInit {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import { Component, OnInit, Input, ViewChild, ElementRef } from '@angular/core';
|
||||
import { PrintService } from '../../services/print-service';
|
||||
import { Transaction } from '../add-transaction-page/transaction';
|
||||
import * as Chart from 'chart.js';
|
||||
import * as Chart from 'chart.js';
|
||||
import ChartDataLabels from 'chartjs-plugin-datalabels';
|
||||
import { CurrencyPipe } from '@angular/common';
|
||||
|
||||
|
|
@ -34,11 +34,11 @@ export class ContributorYearlyReportComponent implements OnInit {
|
|||
public contributorCity: string = 'Butte';
|
||||
public contributorState: string = 'MT';
|
||||
public contributorZip: string = '59701';
|
||||
public taxYear: number = 2024;
|
||||
public taxYear: number = 2020;
|
||||
|
||||
|
||||
public rowsFirstPage: number = 11;
|
||||
public rowsPerPage: number = 30;
|
||||
public rowsFirstPage: number = 13;
|
||||
public rowsPerPage: number = 31;
|
||||
public get fillerRows(): number[] {
|
||||
const rowsToFillPage = this.rowsFirstPage + ((this.pages - 2) * this.rowsPerPage);
|
||||
const rowsNeeded = rowsToFillPage - this.transactions.length;
|
||||
|
|
|
|||
|
|
@ -12,12 +12,3 @@ a{
|
|||
a:visited{
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.break-word {
|
||||
overflow-wrap: break-word;
|
||||
word-wrap: break-word;
|
||||
|
||||
-ms-word-break: break-all;
|
||||
word-break: break-word;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
On November 9, 2021, Old Fashion Baptist Church of Butte, applicant for a Noncommercial FM Radio Station on
|
||||
88.1mhz, in Butte, MT, filed an application with the Federal Communications Commission for a new Noncommercial FM
|
||||
Station. Members of the public wishing to view this application or obtain information about how to file comments and
|
||||
petitions on the application can visit <a class="break-word" href="https://enterpriseefiling.fcc.gov/dataentry/views/public/nceDraftCopy?displayType=html&appKey=25076f917cce2f5b0
|
||||
petitions on the application can visit <a href="https://enterpriseefiling.fcc.gov/dataentry/views/public/nceDraftCopy?displayType=html&appKey=25076f917cce2f5b0
|
||||
17cd34cdd450dee&id=25076f917cce2f5b017cd34cdd450dee&goBack=N">https://enterpriseefiling.fcc.gov/dataentry/views/public/nceDraftCopy?displayType=html&appKey=25076f917cce2f5b0
|
||||
17cd34cdd450dee&id=25076f917cce2f5b017cd34cdd450dee&goBack=N</a>.
|
||||
</p>
|
||||
|
|
|
|||
|
|
@ -7,22 +7,10 @@ a{
|
|||
color: inherit;
|
||||
}
|
||||
|
||||
a {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
a:visited{
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
|
||||
img{
|
||||
width: 70%;
|
||||
|
|
|
|||
|
|
@ -45,69 +45,51 @@
|
|||
<img src="assets/images/home-images/tiny/VBS_small.jpg" style="width:75%; max-width: 350px; position: relative; z-index: 1; box-shadow: 0 0 20px pink;" >
|
||||
</div>
|
||||
|
||||
<div class="row tint" *ngIf="showVGC" >
|
||||
<div class="row-content">
|
||||
<div class="row-content-col-left center">
|
||||
<img style="max-height:500px" ofbFadeInOnScroll src="assets/images/original/VictoryGospelCrusade.png" height="500">
|
||||
</div>
|
||||
<div class="row tint" *ngIf="showSpecial" >
|
||||
<div class="row-content">
|
||||
<div class="row-content-col-right align-top">
|
||||
<p ofbFadeInOnScroll class="row-content-header">Victory Gospel Crusade</p>
|
||||
<br />
|
||||
<p ofbFadeInOnScroll class="bold">
|
||||
When
|
||||
</p>
|
||||
<p ofbFadeInOnScroll>
|
||||
August 4 - 9 @ 7PM
|
||||
<br />
|
||||
August 11 - 15 @ 7 PM
|
||||
</p>
|
||||
<p ofbFadeInOnScroll class="row-content-header">Listen Online</p>
|
||||
<p ofbFadeInOnScroll>
|
||||
If you are unable to attend, please follow the link below to listen to services online.
|
||||
</p>
|
||||
<br>
|
||||
<p ofbFadeInOnScroll class="bold">
|
||||
Where
|
||||
</p>
|
||||
<p ofbFadeInOnScroll>
|
||||
Behind Pizza Ranch
|
||||
<br />
|
||||
1839 Longfellow St, Butte, Mt
|
||||
<br /><br />
|
||||
<i ofbicon>directions</i> <a target="_blank" class="align-top" href="https://www.google.com/maps/place/1839+Longfellow+St,+Butte,+MT+59701/@45.9732501,-112.513401,17z/data=!3m1!4b1!4m6!3m5!1s0x535b07e062beaaf7:0x827616c9ef692eed!8m2!3d45.9732464!4d-112.5108261!16s%2Fg%2F11v03h9chf?entry=ttu">View Map</a>
|
||||
</p>
|
||||
<p ofbFadeInOnScroll class="action">
|
||||
<i ofbicon>play_arrow</i> <a (click)="playVictoryGospelCrusade()" class="align-top">Click Here To Watch The Trailer</a>
|
||||
</p>
|
||||
</div>
|
||||
<i ofbicon>headset</i> <a routerLink="/sermons" class="align-top">Click here to listen online</a>
|
||||
</p>
|
||||
</div>
|
||||
<div class="row-content-col-left">
|
||||
<a routerLink="/covid2" >
|
||||
<img class="w-100pct" ofbFadeInOnScroll src="assets/images/home-images/tiny/covid_header_2.jpg" >
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row" *ngIf="showSpecial" >
|
||||
<div class="row tint" *ngIf="!showSpecial" >
|
||||
<div class="row-content">
|
||||
<div class="row-content-col-left center">
|
||||
<img style="max-height:500px" ofbFadeInOnScroll src="assets/images/home-images/tiny/Cowboy Carnival.jpg" height="500">
|
||||
<div class="row-content-col-left">
|
||||
<a href="assets/images/champ_flyer.jpg" download="champ_flyer.jpg"><img class="full" ofbFadeInOnScroll src="assets/images/home-images/tiny/champ.jpg" height="300"></a>
|
||||
</div>
|
||||
<div class="row-content-col-right align-top center">
|
||||
<p ofbFadeInOnScroll class="row-content-header">Cowboy Carnival</p>
|
||||
<p ofbFadeInOnScroll class="row-content-header">Champ the Smiling Trick Horse</p>
|
||||
<p ofbFadeInOnScroll>
|
||||
Come join us for Ranger Walkers Wild West Cowboy Carnival!
|
||||
Come join us for this special event happening September 5th and 6th at Old Fashion Baptist!
|
||||
</p>
|
||||
<br>
|
||||
<p ofbFadeInOnScroll class="bold">
|
||||
Family Fun
|
||||
<p ofbFadeInOnScroll>
|
||||
<b>Wednesday, September 5 @ 7 PM</b>
|
||||
<br>
|
||||
Bible Preaching & Bluegrass Gospel Music
|
||||
</p>
|
||||
<br>
|
||||
<p ofbFadeInOnScroll class="bold">
|
||||
Games
|
||||
<p ofbFadeInOnScroll>
|
||||
<b>Thursday, September 6 @ 5:30 PM</b>
|
||||
<br>
|
||||
Food, Games, Music & Preaching
|
||||
</p>
|
||||
<br>
|
||||
<p ofbFadeInOnScroll class="bold">
|
||||
Rides
|
||||
</p>
|
||||
<br>
|
||||
<p ofbFadeInOnScroll class="bold">
|
||||
Inflatables
|
||||
</p>
|
||||
<br>
|
||||
<p ofbFadeInOnScroll style="font-size:1.25em;">
|
||||
<b>Sunday, September 18 @ 11:00 AM</b>
|
||||
<p ofbFadeInOnScroll>
|
||||
<a href="assets/images/champ_flyer.jpg" download="champ_flyer.jpg"><b>Click here to download the flyer</b></a>
|
||||
</p>
|
||||
<br>
|
||||
<p ofbFadeInOnScroll class="action">
|
||||
|
|
@ -216,4 +198,16 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row tint">
|
||||
<div class="row-content">
|
||||
<div class="row-content-single-col">
|
||||
<p ofbFadeInOnScroll class="verse">
|
||||
<i ofbicon style="vertical-align: middle; font-size: 32px;">announcement</i>
|
||||
|
||||
<a routerLink="/fmpermit">FCC Noncommercial FM Station Construction Permit (click for more information)</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -5,7 +5,6 @@ import { environment } from '../../../environments/environment';
|
|||
import { Countdown } from './countdown';
|
||||
import { HttpClient } from '@angular/common/http';
|
||||
import { VideoServices } from './video-services';
|
||||
import { YoutubePopupComponent } from '../popups/youtube-popup/youtube-popup.component';
|
||||
|
||||
@Component({
|
||||
selector: 'home-component',
|
||||
|
|
@ -14,41 +13,20 @@ import { YoutubePopupComponent } from '../popups/youtube-popup/youtube-popup.com
|
|||
})
|
||||
export class HomeComponent {
|
||||
backgroundTop: string = "0px";
|
||||
|
||||
public get showVGC() : boolean {
|
||||
|
||||
let maxDate = new Date(2024,7,15,11); // August 15th 2018 -- Set the month one month behind since JavaScript dates are 0 based
|
||||
let now = new Date();
|
||||
if (now.getFullYear() > maxDate.getFullYear()) return false;
|
||||
if (now.getFullYear() == maxDate.getFullYear()) {
|
||||
if (now.getMonth() > maxDate.getMonth()) return false;
|
||||
if (now.getMonth() == maxDate.getMonth()) {
|
||||
if (now.getDate() > maxDate.getDate()) return false;
|
||||
if (now.getDate() == maxDate.getDate()) {
|
||||
if (now.getHours() > maxDate.getHours()) return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public get showSpecial() : boolean {
|
||||
return true; //COVID-19
|
||||
|
||||
let maxDate = new Date(2022,8,18,11); // September 18th 2018 -- Set the month one month behind since JavaScript dates are 0 based
|
||||
let maxDate = new Date(2018,8,6); // September 6th 2018 -- Set the month one month behind since JavaScript dates are 0 based
|
||||
let now = new Date();
|
||||
if (now.getFullYear() > maxDate.getFullYear()) return false;
|
||||
if (now.getFullYear() == maxDate.getFullYear()) {
|
||||
if (now.getMonth() > maxDate.getMonth()) return false;
|
||||
if (now.getMonth() == maxDate.getMonth()) {
|
||||
if (now.getDate() > maxDate.getDate()) return false;
|
||||
if (now.getDate() == maxDate.getDate()) {
|
||||
if (now.getHours() > maxDate.getHours()) return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public get showCallToAction(): boolean {
|
||||
let maxDate = new Date(2020,4,10); // July 8th 2018 -- Set the month one month behind since JavaScript dates are 0 based
|
||||
let now = new Date();
|
||||
|
|
@ -82,18 +60,8 @@ export class HomeComponent {
|
|||
this.http.get<VideoServices>('assets/json/videoServices.json').subscribe(res => {
|
||||
this.countdown = new Countdown(res.videos);
|
||||
});
|
||||
}
|
||||
|
||||
playVictoryGospelCrusade() {
|
||||
const url = 'https://drive.google.com/file/d/1gPdCTLkJEtNWEyn_y8FQ78PaDi40MU7N/preview'
|
||||
|
||||
let opts = new MatDialogConfig;
|
||||
opts.data = { title: 'Victory Gospel Crusade', embedUrl: url };
|
||||
let dialog = this.dialog.open(YoutubePopupComponent, opts);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@HostListener('window:scroll', ['$event'])
|
||||
onScroll(event){
|
||||
let scrollTop = event.target.documentElement.scrollTop || event.target.body.scrollTop || window.pageYOffset;
|
||||
|
|
|
|||
|
|
@ -1,7 +1,3 @@
|
|||
.full-width {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.m-5 {
|
||||
margin: 5px;
|
||||
}
|
||||
|
|
@ -31,7 +31,7 @@
|
|||
{{error}}
|
||||
</p>
|
||||
</div>
|
||||
<button mat-raised-button class="first m-5" (click)="cancel($event)" >Cancel</button><!--
|
||||
--><button mat-raised-button class="m-5" type="submit" [disabled]="!addUserForm.form.valid || addUserButtonDisabled">{{ addUserButtonText }}</button>
|
||||
<button mat-raised-button class="first" (click)="cancel($event)" >Cancel</button><!--
|
||||
--><button mat-raised-button type="submit" [disabled]="!addUserForm.form.valid || addUserButtonDisabled">{{ addUserButtonText }}</button>
|
||||
</form>
|
||||
</div>
|
||||
|
|
@ -91,6 +91,6 @@ p.margin-bottom {
|
|||
|
||||
@media(max-width: 450px) {
|
||||
.float-left {
|
||||
width: 200px;
|
||||
width: 175px
|
||||
}
|
||||
}
|
||||
|
|
@ -17,10 +17,9 @@
|
|||
<img class="image shadow container-3-col" src="assets/images/home-images/tiny/church.jpg" alt="Church Image" />
|
||||
</div>
|
||||
<br><br>
|
||||
|
||||
<p ofbFadeInOnScroll class="section-header">Pastor Derek Loewen</p>
|
||||
<div ofbFadeInOnScroll class="section-paragraph overflow-hidden">
|
||||
<img class="float-left margin-right-10 border-radius-5" src="assets/images/tiny/pstr3.jpg" alt="Pastor Photo" width="350px" />
|
||||
<img class="float-left margin-right-10 border-radius-5" src="assets/images/tiny/pstr.jpg" alt="Pastor Photo" width="225px" />
|
||||
<p class="margin-bottom">
|
||||
Pastor Derek Loewen heard the gospel for the first time when a friend invited him to
|
||||
Florence Baptist Church in Florence, Montana. They rode the bus to Sunday School.
|
||||
|
|
@ -30,10 +29,10 @@
|
|||
</p>
|
||||
<p class="margin-bottom">
|
||||
During his senior year of high school, Pastor Loewen yielded his life to the Lord.
|
||||
Upon graduation from Bible College in 2003, he served in the church he
|
||||
Upon graduation from Crown College of the Bible in 2003, he served in the church he
|
||||
was saved in as a young boy before marrying his bride, Rebecca in June 2004.
|
||||
The Lord has graciously allowed them to serve Him together across the country both
|
||||
assisting pastors and planting a church. God has blessed their home with 5 delightful
|
||||
assisting pastors and planting a church. God has blessed their home with 3 delightful
|
||||
children.
|
||||
</p>
|
||||
<p>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ export const MISSIONARY_SUPPORT_CREATE_URL = environment.baseApi + "/missionary"
|
|||
export const SERMONS_BY_ID = environment.baseUrl + '/api2/sermons/';
|
||||
export const SERMONS_BY_PAGE_URL = environment.baseUrl + '/api2/sermons/page/';
|
||||
export const SERMONS_BY_SEARCH_URL = environment.baseUrl + '/api2/sermons/search';
|
||||
export const SERMON_MP3_BASE_URL = '/media/';
|
||||
export const SERMON_MP3_BASE_URL = '//static.ofbbutte.com/media/';
|
||||
export const SERMON_ADD_URL = environment.baseUrl + "/api2/sermons/a/";
|
||||
export const SERMON_DELETE_URL = environment.baseUrl + "/api2/sermons/a/";
|
||||
export const SERMON_UPDATE_URL = environment.baseUrl + "/api2/sermons/a/";
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 6.7 MiB |
|
Before Width: | Height: | Size: 43 KiB |
|
Before Width: | Height: | Size: 125 KiB |
|
Before Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 5.8 MiB |
|
Before Width: | Height: | Size: 63 KiB |
|
Before Width: | Height: | Size: 173 KiB |
|
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 63 KiB |
|
|
@ -2,5 +2,5 @@ export const environment = {
|
|||
production: true,
|
||||
environment: 'prod',
|
||||
baseUrl: "",
|
||||
baseApi: "https://api.ofbbutte.com"
|
||||
baseApi: "https://ofbbutte.com/2/api"
|
||||
};
|
||||
|
|
|
|||
|
|
@ -2,6 +2,6 @@ export const environment = {
|
|||
production: false,
|
||||
environment: 'test',
|
||||
baseUrl: "",
|
||||
baseApi: "https://test.api.ofbbutte.com"
|
||||
baseApi: "https://test.ofbbutte.com/2/api"
|
||||
};
|
||||
|
||||
|
|
@ -6,7 +6,7 @@ export const environment = {
|
|||
production: false,
|
||||
baseUrl: "http://localhost:25776",
|
||||
//baseApi: "https://localhost:44314/api"
|
||||
baseApi: "https://test.api.ofbbutte.com"
|
||||
baseApi: "https://test.ofbbutte.com/2/api"
|
||||
};
|
||||
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -29,8 +29,6 @@ console.log(wwwFolder);
|
|||
|
||||
app.use(express.static(wwwFolder));
|
||||
|
||||
app.use('/media', express.static('/media'));
|
||||
|
||||
app.get('/*', function (req, res) {
|
||||
console.log(__dirname);
|
||||
console.log(req.originalUrl);
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
var mysql = require("mysql");
|
||||
|
||||
module.exports = mysql.createConnection({
|
||||
host: "mysql",
|
||||
host: "172.17.0.1",
|
||||
port: 3306,
|
||||
user: "admin_ofbbutte",
|
||||
password: "87hjdusiodksyeunsjkdis7",
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ exports.getAll = async function() {
|
|||
}
|
||||
|
||||
exports.getByYear = async function(taxYear) {
|
||||
const queryResult = await connectionAsync.query('SELECT * FROM Transactions WHERE DeletedDate IS NULL AND TaxYear = ? AND GoodsOrServices = 0 ORDER BY Date ASC;', taxYear);
|
||||
const queryResult = await connectionAsync.query('SELECT * FROM Transactions WHERE DeletedDate IS NULL AND TaxYear = ? AND GoodsOrServices = 0;', taxYear);
|
||||
const result = [];
|
||||
if (queryResult && queryResult.rows && queryResult.rows.length > 0) {
|
||||
for(var i = 0 ; i < queryResult.rows.length; i++) {
|
||||
|
|
|
|||
|
|
@ -98,8 +98,7 @@ exports.createUser = async function(firstName, lastName, street, city, state, zi
|
|||
Country: country,
|
||||
EmailVerified: false,
|
||||
Federated: false,
|
||||
FederationCode: hash.createVerificationCode(),
|
||||
Password: ''
|
||||
FederationCode: hash.createVerificationCode()
|
||||
};
|
||||
const newUserResult = await connectionAsync.nonQuery('INSERT INTO Users Set ?', newUser);
|
||||
return await this.getUser2(tempUserName);
|
||||
|
|
|
|||
|
|
@ -7,8 +7,8 @@ let transporter = nodemailer.createTransport({
|
|||
port: 587,
|
||||
secure: false,
|
||||
auth:{
|
||||
user: 'mail@ofbbutte.com',
|
||||
pass: '@2014OfbPwd'
|
||||
user: 'app@ofbbutte.com',
|
||||
pass: '(app&email*sender)Q1'
|
||||
}
|
||||
|
||||
});
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ RUN npm install
|
|||
|
||||
COPY ./Client ./
|
||||
|
||||
RUN node --max_old_space_size=1536 node_modules/@angular/cli/bin/ng build --prod --verbose --configuration=production
|
||||
RUN node node_modules/@angular/cli/bin/ng build --prod --configuration=production
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
kind: pipeline
|
||||
type: docker
|
||||
name: default
|
||||
|
||||
steps:
|
||||
- name: node
|
||||
image: docker
|
||||
|
|
@ -11,8 +10,7 @@ steps:
|
|||
commands:
|
||||
- docker build --tag ofb_angular .
|
||||
- docker rm -f ofb_angular || true
|
||||
- docker run --name=ofb_angular --network=proxy --restart always -v /root/apps/ofb/media:/media -d ofb_angular
|
||||
- docker network connect mysql ofb_angular
|
||||
- docker run --name ofb_angular --restart always -v /home/admin/web/static.ofbbutte.com/public_html/media:/media -d -p "8111:8111" ofb_angular
|
||||
|
||||
|
||||
volumes:
|
||||
|
|
|
|||
|
|
@ -0,0 +1,77 @@
|
|||
#!/bin/sh
|
||||
|
||||
BRANCH=$1
|
||||
BUILD_ANGULAR_ARG=$2
|
||||
BUILD_ANGULAR=true
|
||||
if [ "$BUILD_ANGULAR_ARG" = -ng ]; then
|
||||
BUILD_ANGULAR=true
|
||||
fi
|
||||
|
||||
echo "Build Angular = $BUILD_ANGULAR"
|
||||
echo "Branch Name = $BRANCH"
|
||||
|
||||
if [ "$BRANCH" = test ]; then
|
||||
cd /home/ofbbutte/webapps/ofb_angular_test/
|
||||
fi
|
||||
if [ "$BRANCH" = master ]; then
|
||||
cd /home/ofbbutte/webapps/ofb_angular_node10/
|
||||
fi
|
||||
|
||||
echo "Node Version"
|
||||
bin/node --version
|
||||
echo "NPM Version"
|
||||
bin/node bin/npm --version --scripts-prepend-node-path
|
||||
|
||||
if [ "$BUILD_ANGULAR" = true ]; then
|
||||
cd tempcheckout/Client
|
||||
echo "Pruning Client Node Modules"
|
||||
../../bin/node ../../bin/npm prune --silent --scripts-prepend-node-path
|
||||
echo "Installing Client Node Modules"
|
||||
../../bin/node ../../bin/npm install --silent --scripts-prepend-node-path
|
||||
echo "Building Angular Application"
|
||||
if [ "$BRANCH" = master ]; then
|
||||
../../bin/node node_modules/@angular/cli/bin/ng build --prod --configuration=production
|
||||
fi
|
||||
if [ "$BRANCH" = test ]; then
|
||||
../../bin/node node_modules/@angular/cli/bin/ng build --prod --configuration=test
|
||||
fi
|
||||
|
||||
cd ../../
|
||||
rm -r -f www/
|
||||
mv tempcheckout/Server/www/ www/
|
||||
else
|
||||
echo "Skipping Building Angular Application"
|
||||
fi
|
||||
|
||||
|
||||
echo "Angular CLI Version"
|
||||
bin/node tempcheckout/Client/node_modules/@angular/cli/bin/ng --version
|
||||
|
||||
cd tempcheckout/Server/src
|
||||
echo "Pruning Server Node Modules"
|
||||
../../../bin/node ../../../bin/npm prune --silent --scripts-prepend-node-path
|
||||
echo "Installing Server Node Modules"
|
||||
../../../bin/node ../../../bin/npm install --silent --scripts-prepend-node-path
|
||||
cd ../../../
|
||||
rm -r -f src/
|
||||
mv tempcheckout/Server/src/ src/
|
||||
echo "Remove start and stop script files"
|
||||
rm -f bin/start
|
||||
rm -f bin/stop
|
||||
echo "Copying start and stop script files"
|
||||
if [ "$BRANCH" = master ]; then
|
||||
mv tempcheckout/Server/bin/start bin/start
|
||||
mv tempcheckout/Server/bin/stop bin/stop
|
||||
fi
|
||||
if [ "$BRANCH" = test ]; then
|
||||
mv tempcheckout/Server/bin/start_test bin/start
|
||||
mv tempcheckout/Server/bin/stop_test bin/stop
|
||||
fi
|
||||
ls
|
||||
echo "Modifying permissions on start and stop script files to be executable"
|
||||
chmod +x bin/start
|
||||
chmod +x bin/stop
|
||||
echo "Running stop script file"
|
||||
bin/stop
|
||||
echo "Running start script file"
|
||||
bin/start
|
||||