Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
930f48b
Adding Docker installation manual
jacekkalbarczyk Oct 4, 2017
0aad855
Merge remote-tracking branch 'upstream/master'
jacekkalbarczyk Oct 25, 2017
5935a54
Merge remote-tracking branch 'upstream/master'
jacekkalbarczyk Nov 8, 2017
a47f1a6
Merged
jacekkalbarczyk Nov 15, 2017
d34d383
Deleted Docker Manual
jacekkalbarczyk Nov 17, 2017
b1f03dd
Because
jacekkalbarczyk Nov 17, 2017
3f3751b
Merge
jacekkalbarczyk Nov 22, 2017
ff6cb0d
Merge
jacekkalbarczyk Dec 20, 2017
d7f0d30
OK
jacekkalbarczyk Jan 17, 2018
c9eb057
CreatedRegisterComponent
jacekkalbarczyk Jan 24, 2018
3344ec4
OK
jacekkalbarczyk Jan 24, 2018
f67a3ef
Moved Registration To Angular
jacekkalbarczyk Mar 21, 2018
ac16dac
Merge remote-tracking branch 'upstream/master'
jacekkalbarczyk Mar 21, 2018
d967bb8
Merge branch 'MovingRegistrationToAngular'
jacekkalbarczyk Mar 21, 2018
d95ac30
MovingRegistrationToAngular
jacekkalbarczyk Apr 1, 2018
2c7956f
MovingRegistrationToAngular_2
jacekkalbarczyk Apr 1, 2018
dc899d2
MovingRegistrationToAngular_3
jacekkalbarczyk Apr 1, 2018
ce434e7
MovingRegistrationToAngular_4
jacekkalbarczyk Apr 1, 2018
41011c1
MovingRegistrationToAngular_5
jacekkalbarczyk Apr 1, 2018
662f2bd
MovingRegistrationToAngular6
jacekkalbarczyk Apr 1, 2018
6d227f4
MovingRegistrationToAngular7
jacekkalbarczyk Apr 1, 2018
cf816fc
MovingRegistrationToAngular9
jacekkalbarczyk Apr 1, 2018
1341cb7
MovingDjangoToAngular_FinalCut
jacekkalbarczyk Apr 4, 2018
90b69de
MovingDjangoToAngular_Corrections
jacekkalbarczyk Apr 18, 2018
a463dcb
YetAnotherUpdate
jacekkalbarczyk Apr 18, 2018
6d1e9a7
ANdAnotherUpdate
jacekkalbarczyk Apr 18, 2018
e195cba
CommitBeforeMergingUpstream20180509
jacekkalbarczyk May 9, 2018
ac9c5cf
UpToDateUpstreamMerge
jacekkalbarczyk May 9, 2018
dd582c9
Resolved merge conflicts
jacekkalbarczyk May 30, 2018
c2d9a06
Resolving pylint issues
jacekkalbarczyk May 30, 2018
c1c6de1
Resolving more pylint issues
jacekkalbarczyk May 30, 2018
7ff4cad
Corrections in backend tests
jacekkalbarczyk Jun 6, 2018
44d29bf
Corrections in backend tests2
jacekkalbarczyk Jun 6, 2018
8b75e85
Test removal in frontend
jacekkalbarczyk Jun 6, 2018
3a4f6b2
Removed activation.component.spec.ts
jacekkalbarczyk Jun 6, 2018
1bf071b
Resolving conflicts
jacekkalbarczyk Jun 12, 2018
3fc44f3
Merge remote-tracking branch 'upstream/master'
jacekkalbarczyk Jun 20, 2018
534f410
RegisterComponentUpdate
jacekkalbarczyk Jun 20, 2018
08cef2a
RegisterComponentIssues
jacekkalbarczyk Jun 27, 2018
ea9aba5
RegisterComponentIssues2
jacekkalbarczyk Jun 27, 2018
aca68d0
RegisterComponentIssues3
jacekkalbarczyk Jun 27, 2018
c609dc2
Merge remote-tracking branch 'upstream/master'
jacekkalbarczyk Jul 11, 2018
880257f
RegisterComponentIssues4
jacekkalbarczyk Jul 11, 2018
d5ba51b
MergingUpstream
jacekkalbarczyk Jul 25, 2018
d70cf32
Merge remote-tracking branch 'upstream/master'
jacekkalbarczyk Aug 1, 2018
0a706e3
Merge remote-tracking branch 'upstream/master'
jacekkalbarczyk Sep 19, 2018
a2790b4
[986] component showing offers that user joined
jacekkalbarczyk Oct 3, 2018
37f90e2
Implemented observable use in offersbox component
jacekkalbarczyk Oct 3, 2018
1b9a1d1
Merge branch 'master' into UserProfile_JoinedOffers
jacekkalbarczyk Oct 4, 2018
b60a51a
ResolvedTravisIssues
jacekkalbarczyk Oct 27, 2018
02341ef
Merge remote-tracking branch 'upstream/master'
jacekkalbarczyk Oct 29, 2018
829d54a
Merge branch 'master' into UserProfile_JoinedOffers
jacekkalbarczyk Oct 29, 2018
e50b3e8
MergingMasterUpdates
jacekkalbarczyk Oct 29, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion frontend/src/app/app.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ import { HomepageOfferComponent } from 'app/components/homepage-offer/homepage-o
import { LoginComponent } from 'app/components/login/login.component';
import { MessagesComponent } from 'app/components/messages/messages.component';
import { CreateOfferComponent } from 'app/components/offers/create-offer/create-offer.component';
import { OffersBoxComponent } from 'app/components/offers/offers-box/offers-box.component';
import { OfferDetailComponent } from 'app/components/offers/offer-detail/offer-detail.component';
import { OrganizationComponent } from 'app/components/organization/organization.component';
import { OrganizationContactComponent } from 'app/components/organization/organization-contact/organization-contact.component';
Expand Down Expand Up @@ -213,7 +214,8 @@ registerLocaleData(localePl);
ContactComponent,
FormErrorComponent,
OrganizationsListComponent,
UserProfileComponent
UserProfileComponent,
OffersBoxComponent
],
imports: [
BrowserModule.withServerTransition({ appId: 'volontulo' }),
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/app/components/account/account.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ <h3 class="card-header">Profil</h3>
<div class="card">
<h3 class="card-header">Aktywność</h3>
<div class="card-body">
<p class="card-text">Zgłoś się w jednej z dostępnych ofert wolontariatu i zapełnij to miejsce.</p>
<volontulo-offers-box></volontulo-offers-box>
</div>
</div>
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
</div>
<div class="card-body">
<h2 class="card-title offer-title">
<a [routerLink]="['offers', offer.slug, offer.id]" class="offer-link">{{ offer.title }}</a>
<a [routerLink]="['/offers', offer.slug, offer.id]" class="offer-link">{{ offer.title }}</a>
</h2>
<ul class="list-group list-group-flush">
<li class="list-group-item">
Expand All @@ -21,7 +21,7 @@ <h2 class="card-title offer-title">
</li>
<div class="offer-organizer">
<span>Organizator:
<a [routerLink]="['organizations', offer.organization.slug, offer.organization.id]">
<a [routerLink]="['/organizations', offer.organization.slug, offer.organization.id]">
{{ offer.organization.name }}</a></span>
</div>
</ul>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<div *ngIf="(offers$ | async) as offers">
<div *ngIf="offers.length > 0; else noOffers">
<div class="card-deck row">
<div class="col-12 col-sm-6 col-lg-4 pb-3" *ngFor="let offer of offers">
<volontulo-homepage-offer [offer]="offer" class="card mx-0 h-20"></volontulo-homepage-offer>
</div>
</div>
</div>
</div>

<ng-template #noOffers>
<p class="card-text">Zgłoś się w jednej z dostępnych ofert wolontariatu i zapełnij to miejsce.</p>
</ng-template>
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { HttpClient } from '@angular/common/http';
import { HttpClientTestingModule } from '@angular/common/http/testing';
import { RouterTestingModule } from '@angular/router/testing';

import { HomepageOfferComponent } from 'app/components/homepage-offer/homepage-offer.component';
import { OffersBoxComponent } from 'app/components/offers/offers-box/offers-box.component';
import { OffersService } from 'app/services/offers.service';

describe('OffersBoxComponent', () => {
let component: OffersBoxComponent;
let fixture: ComponentFixture<OffersBoxComponent>;
let offersService: OffersService;
let httpClient: HttpClient;

beforeEach(async(() => {
TestBed.configureTestingModule({
imports: [RouterTestingModule, HttpClientTestingModule],
declarations: [
OffersBoxComponent,
HomepageOfferComponent
],
providers: [OffersService]
})
.compileComponents();
}));

beforeEach(() => {
fixture = TestBed.createComponent(OffersBoxComponent);
component = fixture.componentInstance;
offersService = TestBed.get(OffersService);
httpClient = TestBed.get(HttpClient);
});

it('should create', () => {
expect(component).toBeTruthy();
});
});
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
import { Component, OnInit } from '@angular/core';
import { OffersService } from 'app/services/offers.service';
import { Offer } from 'app/models/offer.model';
import { Observable } from 'rxjs/Observable';

@Component({
selector: 'volontulo-offers-box',
templateUrl: './offers-box.component.html',
providers: [OffersService]
})
export class OffersBoxComponent implements OnInit {
public offers$: Observable<Offer[]>;

constructor(private offersService: OffersService) { }

ngOnInit() {
this.offers$ = this.offersService.getUserOffers();
}
}
4 changes: 4 additions & 0 deletions frontend/src/app/services/offers.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -35,4 +35,8 @@ export class OffersService {
return this.http.put(`${environment.apiRoot}/offers/${id}/`, offer);
}

getUserOffers(): Observable<Offer[]> {
return this.http.get<Offer[]>(`${environment.apiRoot}/joined-offers/`)
.map(offers => offers.map(offer => loadDefaultImage(offer)));
}
}