From 10ac48e608f1e4a70613f933911445217958b3f8 Mon Sep 17 00:00:00 2001 From: Jamie Rees Date: Fri, 15 Mar 2019 13:30:05 +0000 Subject: [PATCH] Got the basic requests grid in --- src/Ombi/ClientApp/src/app/app.module.ts | 3 +- .../media-details/media-details.components.ts | 0 .../src/app/requests-list/components/index.ts | 8 ++++ .../movies-grid/movies-grid.component.html | 47 +++++++++++++++++++ .../movies-grid/movies-grid.component.ts | 23 +++++++++ .../components/requests-list.component.html | 16 +++++++ .../components/requests-list.component.scss | 8 ++++ .../components/requests-list.component.ts | 8 ++++ .../app/requests-list/requests-list.module.ts | 36 ++++++++++++++ .../ClientApp/src/app/shared/shared.module.ts | 3 +- 10 files changed, 150 insertions(+), 2 deletions(-) delete mode 100644 src/Ombi/ClientApp/src/app/media-details/media-details.components.ts create mode 100644 src/Ombi/ClientApp/src/app/requests-list/components/index.ts create mode 100644 src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.html create mode 100644 src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.ts create mode 100644 src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.html create mode 100644 src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.scss create mode 100644 src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.ts create mode 100644 src/Ombi/ClientApp/src/app/requests-list/requests-list.module.ts diff --git a/src/Ombi/ClientApp/src/app/app.module.ts b/src/Ombi/ClientApp/src/app/app.module.ts index d2b38d782..85c840e6c 100644 --- a/src/Ombi/ClientApp/src/app/app.module.ts +++ b/src/Ombi/ClientApp/src/app/app.module.ts @@ -68,7 +68,8 @@ const routes: Routes = [ { loadChildren: "./settings/settings.module#SettingsModule", path: "Settings" }, { loadChildren: "./wizard/wizard.module#WizardModule", path: "Wizard" }, { loadChildren: "./usermanagement/usermanagement.module#UserManagementModule", path: "usermanagement" }, - { loadChildren: "./requests/requests.module#RequestsModule", path: "requests" }, + { loadChildren: "./requests/requests.module#RequestsModule", path: "requestsOld" }, + { loadChildren: "./requests-list/requests-list.module#RequestsListModule", path: "requests" }, { loadChildren: "./search/search.module#SearchModule", path: "search" }, { loadChildren: "./recentlyAdded/recentlyAdded.module#RecentlyAddedModule", path: "recentlyadded" }, { loadChildren: "./vote/vote.module#VoteModule", path: "vote" }, diff --git a/src/Ombi/ClientApp/src/app/media-details/media-details.components.ts b/src/Ombi/ClientApp/src/app/media-details/media-details.components.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/src/Ombi/ClientApp/src/app/requests-list/components/index.ts b/src/Ombi/ClientApp/src/app/requests-list/components/index.ts new file mode 100644 index 000000000..fd3f7445c --- /dev/null +++ b/src/Ombi/ClientApp/src/app/requests-list/components/index.ts @@ -0,0 +1,8 @@ +import { RequestsListComponent } from "./requests-list.component"; +import { MoviesGridComponent } from "./movies-grid/movies-grid.component"; + +export const components: any[] = [ + RequestsListComponent, + MoviesGridComponent, +]; + diff --git a/src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.html b/src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.html new file mode 100644 index 000000000..23490a43a --- /dev/null +++ b/src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.html @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Requested By {{element.requestedUser.userAlias}} Title {{element.title}} ({{element.releaseDate | amLocal | amDateFormat: 'YYYY'}}) Request Date {{element.requestedDate | amLocal | amDateFormat: 'LL'}} Status {{element.status}} Request Status +
{{'Common.ProcessingRequest' | translate}}
+
{{'Common.PendingApproval' | translate}} +
+
{{'Common.NotRequested' | translate}} +
+
+ +
\ No newline at end of file diff --git a/src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.ts b/src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.ts new file mode 100644 index 000000000..3dad4584f --- /dev/null +++ b/src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.ts @@ -0,0 +1,23 @@ +import { Component, OnInit } from "@angular/core"; +import { RequestService } from "../../../services"; +import { IMovieRequests, OrderType, FilterType, IRequestsViewModel } from "../../../interfaces"; + +@Component({ + templateUrl: "./movies-grid.component.html", + selector: "movies-grid", + styleUrls: ["../requests-list.component.scss"] +}) +export class MoviesGridComponent implements OnInit { + public dataSource: IRequestsViewModel; + + public displayedColumns: string[] = ['requestedBy', 'title', 'requestedDate', 'status', 'requestStatus', 'actions']; + + constructor(private requestService: RequestService) { + + } + + public async ngOnInit() { + this.dataSource = await this.requestService.getMovieRequests(30,0, OrderType.RequestedDateDesc, + {availabilityFilter: FilterType.None, statusFilter: FilterType.None}).toPromise(); + } +} diff --git a/src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.html b/src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.html new file mode 100644 index 000000000..0ae25240f --- /dev/null +++ b/src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.html @@ -0,0 +1,16 @@ +
+ + + + + +

Some more tab content

+

...

+
+ +

Some more tab content

+

...

+
+
+ +
diff --git a/src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.scss b/src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.scss new file mode 100644 index 000000000..a420998bc --- /dev/null +++ b/src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.scss @@ -0,0 +1,8 @@ +.small-middle-container{ + margin: auto; + width: 95%; +} + +.table { + width: 100%; +} \ No newline at end of file diff --git a/src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.ts b/src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.ts new file mode 100644 index 000000000..6489b6208 --- /dev/null +++ b/src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.ts @@ -0,0 +1,8 @@ +import { Component } from "@angular/core"; + +@Component({ + templateUrl: "./requests-list.component.html", + styleUrls: ["./requests-list.component.scss"] +}) +export class RequestsListComponent { +} diff --git a/src/Ombi/ClientApp/src/app/requests-list/requests-list.module.ts b/src/Ombi/ClientApp/src/app/requests-list/requests-list.module.ts new file mode 100644 index 000000000..26c04d32a --- /dev/null +++ b/src/Ombi/ClientApp/src/app/requests-list/requests-list.module.ts @@ -0,0 +1,36 @@ +import { NgModule } from "@angular/core"; +import { RouterModule, Routes } from "@angular/router"; + +import { RequestService } from "../services"; + +import { SharedModule } from "../shared/shared.module"; +import { PipeModule } from "../pipes/pipe.module"; + +import { AuthGuard } from "../auth/auth.guard"; + +import * as fromComponents from './components'; +import { RequestsListComponent } from "./components/requests-list.component"; + +const routes: Routes = [ + { path: "", component: RequestsListComponent, canActivate: [AuthGuard] }, +]; +@NgModule({ + imports: [ + RouterModule.forChild(routes), + SharedModule, + PipeModule, + ], + declarations: [ + ...fromComponents.components + ], + exports: [ + RouterModule, + ], + entryComponents: [ + ], + providers: [ + RequestService, + ], + +}) +export class RequestsListModule { } diff --git a/src/Ombi/ClientApp/src/app/shared/shared.module.ts b/src/Ombi/ClientApp/src/app/shared/shared.module.ts index ea6cbcace..00a17e891 100644 --- a/src/Ombi/ClientApp/src/app/shared/shared.module.ts +++ b/src/Ombi/ClientApp/src/app/shared/shared.module.ts @@ -10,7 +10,7 @@ import { IssuesReportComponent } from "./issues-report.component"; import { InputSwitchModule, SidebarModule } from "primeng/primeng"; import { - MatButtonModule, MatNativeDateModule, MatIconModule, MatSidenavModule, MatListModule, MatToolbarModule, MatTooltipModule, MatSelectModule} from '@angular/material'; + MatButtonModule, MatNativeDateModule, MatIconModule, MatSidenavModule, MatListModule, MatToolbarModule, MatTooltipModule, MatSelectModule, MatTableModule} from '@angular/material'; import { MatCardModule, MatInputModule, MatTabsModule, MatAutocompleteModule, MatCheckboxModule, MatExpansionModule, MatDialogModule, MatProgressSpinnerModule, MatChipsModule } from "@angular/material"; import { EpisodeRequestComponent } from "./episode-request/episode-request.component"; @@ -76,6 +76,7 @@ import { EpisodeRequestComponent } from "./episode-request/episode-request.compo MatCheckboxModule, MatExpansionModule, MatDialogModule, + MatTableModule, ], }) export class SharedModule {}