Merge branch 'DotNetCore' of https://github.com/tidusjar/Ombi into DotNetCore

pull/1805/head
tidusjar 7 years ago
commit 42d594622d

@ -86,7 +86,7 @@ Search the existing requests to see if your suggestion has already been submitte
# Preview
![Preview](http://i.imgur.com/yrz2pzl.gif)
![Preview](http://i.imgur.com/Nn1BwAM.gif)
# Installation

@ -93,9 +93,12 @@ namespace Ombi.Schedule.Jobs.Plex
}
if (userManagementSettings.DefaultRoles.Any())
{
// Get the new user object to avoid any concurrency failures
var dbUser =
await _userManager.Users.FirstOrDefaultAsync(x => x.UserName == newUser.UserName);
foreach (var defaultRole in userManagementSettings.DefaultRoles)
{
await _userManager.AddToRoleAsync(newUser, defaultRole);
await _userManager.AddToRoleAsync(dbUser, defaultRole);
}
}
}

@ -15,12 +15,14 @@ import { JwtModule } from "@auth0/angular-jwt";
import { NgbModule } from "@ng-bootstrap/ng-bootstrap";
import { TranslateLoader, TranslateModule } from "@ngx-translate/core";
import { TranslateHttpLoader } from "@ngx-translate/http-loader";
import { CookieService } from "ng2-cookies";
import { GrowlModule } from "primeng/components/growl/growl";
import { ButtonModule, CaptchaModule,ConfirmationService, ConfirmDialogModule, DataTableModule,DialogModule, SharedModule, TooltipModule } from "primeng/primeng";
// Components
import { AppComponent } from "./app.component";
import { CookieComponent } from "./auth/cookie.component";
import { PageNotFoundComponent } from "./errors/not-found.component";
import { LandingPageComponent } from "./landingpage/landingpage.component";
import { LoginComponent } from "./login/login.component";
@ -55,6 +57,7 @@ const routes: Routes = [
{ path: "reset", component: ResetPasswordComponent },
{ path: "token", component: TokenResetPasswordComponent },
{ path: "landingpage", component: LandingPageComponent },
{ path: "auth/cookie", component: CookieComponent },
];
// AoT requires an exported function for factories
@ -120,6 +123,7 @@ export function HttpLoaderFactory(http: HttpClient, platformLocation: PlatformLo
LandingPageComponent,
ResetPasswordComponent,
TokenResetPasswordComponent,
CookieComponent,
],
providers: [
RequestService,
@ -132,6 +136,7 @@ export function HttpLoaderFactory(http: HttpClient, platformLocation: PlatformLo
LandingPageService,
ConfirmationService,
ImageService,
CookieService,
],
bootstrap: [AppComponent],
})

@ -36,26 +36,26 @@
</div>
<div>
<span>{{ 'Requests.Status' | translate }} </span>
<span class="label label-success">{{request.status}}</span>
<span class="label label-success" id="requestedStatusLabel">{{request.status}}</span>
</div>
<div>
<span>{{ 'Requests.RequestStatus' | translate }} </span>
<span *ngIf="request.available" class="label label-success" [translate]="'Common.Available'"></span>
<span *ngIf="request.approved && !request.available" class="label label-info" [translate]="'Common.ProcessingRequest'"></span>
<span *ngIf="request.denied" class="label label-danger" [translate]="'Common.RequestDenied'"></span>
<span *ngIf="request.available" class="label label-success" id="availableLabel" [translate]="'Common.Available'"></span>
<span *ngIf="request.approved && !request.available" id="processingRequestLabel" class="label label-info" [translate]="'Common.ProcessingRequest'"></span>
<span *ngIf="request.denied" class="label label-danger" id="requestDeclinedLabel" [translate]="'Common.RequestDenied'"></span>
<span *ngIf="request.deniedReason" title="{{request.deniedReason}}"><i class="fa fa-info-circle"></i></span>
<span *ngIf="!request.approved && !request.availble && !request.denied" class="label label-warning" [translate]="'Common.PendingApproval'"></span>
<span *ngIf="!request.approved && !request.availble && !request.denied" id="pendingApprovalLabel" class="label label-warning" [translate]="'Common.PendingApproval'"></span>
</div>
<div *ngIf="request.denied">
<div *ngIf="request.denied" id="requestDenied">
{{ 'Requests.Denied' | translate }} <i style="color:red;" class="fa fa-check"></i>
</div>
<div>{{ 'Requests.ReleaseDate' | translate }} {{request.releaseDate | date}}</div>
<div>{{ 'Requests.RequestedDate' | translate }} {{request.requestedDate | date}}</div>
<div id="releaseDate">{{ 'Requests.ReleaseDate' | translate }} {{request.releaseDate | date}}</div>
<div id="requestedDate">{{ 'Requests.RequestedDate' | translate }} {{request.requestedDate | date}}</div>
<br />
<div *ngIf="isAdmin">
<div *ngIf="request.qualityOverrideTitle">{{ 'Requests.QualityOverride' | translate }} <span>{{request.qualityOverrideTitle}} </span></div>

@ -69,11 +69,11 @@
{{ep.airDate | date: 'dd/MM/yyyy' }}
</td>
<td>
<span *ngIf="child.denied" class="label label-danger" [translate]="'Common.Denied'"></span>
<span *ngIf="!child.denied && ep.available" class="label label-success" [translate]="'Common.Available'"></span>
<span *ngIf="!child.denied &&ep.approved && !ep.available" class="label label-info" [translate]="'Common.ProcessingRequest'"></span>
<span *ngIf="child.denied" class="label label-danger" id="deniedLabel" [translate]="'Common.Denied'"></span>
<span *ngIf="!child.denied && ep.available" class="label label-success" id="availableLabel" [translate]="'Common.Available'"></span>
<span *ngIf="!child.denied &&ep.approved && !ep.available" class="label label-info" id="processingRequestLabel" [translate]="'Common.ProcessingRequest'"></span>
<div *ngIf="!child.denied && !ep.approved">
<div *ngIf="!ep.available"><span class="label label-warning" [translate]="'Common.PendingApproval'"></span></div>
<div *ngIf="!ep.available"><span class="label label-warning" id="pendingApprovalLabel" [translate]="'Common.PendingApproval'"></span></div>
</div>
</td>

@ -39,17 +39,17 @@
<h4>{{result.title}} ({{result.releaseDate | date: 'yyyy'}})</h4>
</a>
<span *ngIf="result.releaseDate" class="label label-info" target="_blank">{{ 'Search.ReleaseDate' | translate }} {{result.releaseDate | date: 'dd/MM/yyyy'}}</span>
<span *ngIf="result.releaseDate" class="label label-info" id="releaseDateLabel" target="_blank">{{ 'Search.ReleaseDate' | translate }} {{result.releaseDate | date: 'dd/MM/yyyy'}}</span>
<a *ngIf="result.homepage" href="{{result.homepage}}" target="_blank"><span class="label label-info" [translate]="'Search.Movies.HomePage'"></span></a>
<a *ngIf="result.homepage" href="{{result.homepage}}" id="homePageLabel" target="_blank"><span class="label label-info" [translate]="'Search.Movies.HomePage'"></span></a>
<a *ngIf="result.trailer" href="{{result.trailer}}" target="_blank"><span class="label label-info" [translate]="'Search.Movies.Trailer'"></span></a>
<span *ngIf="result.quality" class="label label-success">{{result.quality}}p</span>
<a *ngIf="result.trailer" href="{{result.trailer}}" id="trailerLabel" target="_blank"><span class="label label-info" [translate]="'Search.Movies.Trailer'"></span></a>
<span *ngIf="result.quality" id="qualityLabel" class="label label-success">{{result.quality}}p</span>
<ng-template [ngIf]="result.available"><span class="label label-success" [translate]="'Common.Available'"></span></ng-template>
<ng-template [ngIf]="result.approved && !result.available"><span class="label label-info" [translate]="'Common.ProcessingRequest'"></span></ng-template>
<ng-template [ngIf]="result.requested && !result.approved && !result.available"><span class="label label-warning" [translate]="'Common.PendingApproval'"></span></ng-template>
<ng-template [ngIf]="!result.requested && !result.available && !result.approved"><span class="label label-danger" [translate]="'Common.NotRequested'"></span></ng-template>
<ng-template [ngIf]="result.available"><span class="label label-success" id="availableLabel" [translate]="'Common.Available'"></span></ng-template>
<ng-template [ngIf]="result.approved && !result.available"><span class="label label-info" id="processingRequestLabel" [translate]="'Common.ProcessingRequest'"></span></ng-template>
<ng-template [ngIf]="result.requested && !result.approved && !result.available"><span class="label label-warning" id="pendingApprovalLabel" [translate]="'Common.PendingApproval'"></span></ng-template>
<ng-template [ngIf]="!result.requested && !result.available && !result.approved"><span class="label label-danger" id="notRequestedLabel" [translate]="'Common.NotRequested'"></span></ng-template>

@ -54,11 +54,11 @@
{{ep.airDate | date: 'dd/MM/yyyy' }}
</td>
<td>
<ng-template [ngIf]="ep.available"><span class="label label-success">Available</span></ng-template>
<ng-template [ngIf]="ep.approved && !ep.available "><span class="label label-info">Processing Request</span></ng-template>
<ng-template [ngIf]="ep.selected"><span class="label label-info">Selected</span></ng-template>
<ng-template [ngIf]="ep.requested && !ep.approved && !ep.available && !ep.selected"><span class="label label-warning">Pending Approval</span></ng-template>
<ng-template [ngIf]="!ep.requested && !ep.available && !ep.approved"><span class="label label-danger">Not Requested</span></ng-template>
<ng-template [ngIf]="ep.available"><span class="label label-success" id="availableLabel">Available</span></ng-template>
<ng-template [ngIf]="ep.approved && !ep.available "><span class="label label-info" id="processingRequestLabel">Processing Request</span></ng-template>
<ng-template [ngIf]="ep.selected"><span class="label label-info" id="selectedLabel">Selected</span></ng-template>
<ng-template [ngIf]="ep.requested && !ep.approved && !ep.available && !ep.selected"><span class="label label-warning" id="pendingApprovalLabel">Pending Approval</span></ng-template>
<ng-template [ngIf]="!ep.requested && !ep.available && !ep.approved"><span class="label label-danger" id="notRequetsedLabel">Not Requested</span></ng-template>
</td>
<td>

@ -53,21 +53,21 @@
<h4>{{node.data.title}} ({{node.data.firstAired | date: 'yyyy'}})</h4>
</a>
<span *ngIf="node.data.status" class="label label-primary" target="_blank">{{node.data.status}}</span>
<span *ngIf="node.data.status" class="label label-primary" id="statusLabel" target="_blank">{{node.data.status}}</span>
<span *ngIf="node.data.firstAired" class="label label-info" target="_blank">Air Date: {{node.data.firstAired | date: 'dd/MM/yyyy'}}</span>
<span *ngIf="node.data.firstAired" class="label label-info" target="_blank" id="airDateLabel">Air Date: {{node.data.firstAired | date: 'dd/MM/yyyy'}}</span>
<span *ngIf="node.data.network" class="label label-info" target="_blank">{{node.data.network}}</span>
<span *ngIf="node.data.network" class="label label-info" id="networkLabel" target="_blank">{{node.data.network}}</span>
<ng-template [ngIf]="node.data.available"><span class="label label-success">Available</span></ng-template>
<ng-template [ngIf]="node.data.partlyAvailable"><span class="label label-warning">Partially Available</span></ng-template>
<ng-template [ngIf]="node.data.available"><span class="label label-success" id="availableLabel">Available</span></ng-template>
<ng-template [ngIf]="node.data.partlyAvailable"><span class="label label-warning" id="partiallyAvailableLabel">Partially Available</span></ng-template>
<a *ngIf="node.data.homepage" href="{{node.data.homepage}}" target="_blank"><span class="label label-info">HomePage</span></a>
<a *ngIf="node.data.homepage" href="{{node.data.homepage}}" target="_blank"><span class="label label-info" id="homepageLabel">HomePage</span></a>
<a *ngIf="node.data.trailer" href="{{node.data.trailer}}" target="_blank"><span class="label label-info">Trailer</span></a>
<a *ngIf="node.data.trailer" href="{{node.data.trailer}}" target="_blank"><span class="label label-info" id="trailerLabel">Trailer</span></a>
<br />

@ -5061,6 +5061,7 @@
"resolved": "https://registry.npmjs.org/npm/-/npm-5.5.1.tgz",
"integrity": "sha512-M3aO8EjHebaCw6uur4C86SZqkypnoaEVo5R63FEEU0dw9wLxf/JlwWtJItShYVyQS2WDxG2It10GEe5GmVEM2Q==",
"requires": {
"JSONStream": "1.3.1",
"abbrev": "1.1.1",
"ansi-regex": "3.0.0",
"ansicolors": "0.3.2",
@ -5092,7 +5093,6 @@
"ini": "1.3.4",
"init-package-json": "1.10.1",
"is-cidr": "1.0.0",
"JSONStream": "1.3.1",
"lazy-property": "1.0.0",
"libnpx": "9.6.0",
"lockfile": "1.0.3",
@ -5167,6 +5167,24 @@
"write-file-atomic": "2.1.0"
},
"dependencies": {
"JSONStream": {
"version": "1.3.1",
"bundled": true,
"requires": {
"jsonparse": "1.3.1",
"through": "2.3.8"
},
"dependencies": {
"jsonparse": {
"version": "1.3.1",
"bundled": true
},
"through": {
"version": "2.3.8",
"bundled": true
}
}
},
"abbrev": {
"version": "1.1.1",
"bundled": true
@ -5540,24 +5558,6 @@
}
}
},
"JSONStream": {
"version": "1.3.1",
"bundled": true,
"requires": {
"jsonparse": "1.3.1",
"through": "2.3.8"
},
"dependencies": {
"jsonparse": {
"version": "1.3.1",
"bundled": true
},
"through": {
"version": "2.3.8",
"bundled": true
}
}
},
"lazy-property": {
"version": "1.0.0",
"bundled": true
@ -10509,14 +10509,6 @@
"resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz",
"integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM="
},
"string_decoder": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
"integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
"requires": {
"safe-buffer": "5.1.1"
}
},
"string-width": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
@ -10527,6 +10519,14 @@
"strip-ansi": "3.0.1"
}
},
"string_decoder": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
"integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
"requires": {
"safe-buffer": "5.1.1"
}
},
"stringstream": {
"version": "0.0.5",
"resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz",

@ -59,7 +59,7 @@
"primeng": "^4.3.0",
"reflect-metadata": "0.1.10",
"run-sequence": "^2.2.0",
"rxjs": "^5.5.2",
"rxjs": "5.5.2",
"sass-loader": "^6.0.6",
"style-loader": "^0.19.0",
"to-string-loader": "^1.1.5",

Loading…
Cancel
Save