Add default icon to feeds
Every feed has an icon. If not set by the user, the database automatically sets the default icon to media/default-icon-svg.
This commit is contained in:
parent
af628a1727
commit
f9a4331cb1
2
backend/.gitignore
vendored
2
backend/.gitignore
vendored
@ -1,7 +1,7 @@
|
|||||||
venv
|
venv
|
||||||
*.pyc
|
*.pyc
|
||||||
staticfiles
|
staticfiles
|
||||||
media
|
media/feed-icons
|
||||||
.env
|
.env
|
||||||
*.sqlite3
|
*.sqlite3
|
||||||
*.sqlite
|
*.sqlite
|
||||||
|
|||||||
BIN
backend/app_be/media/default-icon.svg
Normal file
BIN
backend/app_be/media/default-icon.svg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 10 KiB |
@ -9,7 +9,7 @@ class User(models.Model):
|
|||||||
class Feed(models.Model):
|
class Feed(models.Model):
|
||||||
url = models.TextField(blank=False, null=False, validators=[URLValidator(['http', 'https'])])
|
url = models.TextField(blank=False, null=False, validators=[URLValidator(['http', 'https'])])
|
||||||
active = models.BooleanField()
|
active = models.BooleanField()
|
||||||
icon = models.FileField(upload_to='feed-icons', blank=True, null=True,
|
icon = models.FileField(upload_to='feed-icons', blank=True, null=False, default='default-icon.svg',
|
||||||
validators=[FileExtensionValidator(['png', 'svg'])])
|
validators=[FileExtensionValidator(['png', 'svg'])])
|
||||||
keywords = models.TextField(blank=False, null=False)
|
keywords = models.TextField(blank=False, null=False)
|
||||||
match_all_keywords = models.BooleanField(blank=True, default=False)
|
match_all_keywords = models.BooleanField(blank=True, default=False)
|
||||||
|
|||||||
@ -1,11 +1,11 @@
|
|||||||
import {Component, OnInit} from '@angular/core';
|
import {Component, OnInit} from '@angular/core';
|
||||||
import {HttpClient} from '@angular/common/http';
|
import {HttpClient} from '@angular/common/http';
|
||||||
import {Observable, throwError} from 'rxjs';
|
import {throwError} from 'rxjs';
|
||||||
import {MatSnackBar} from '@angular/material/snack-bar';
|
import {MatSnackBar} from '@angular/material/snack-bar';
|
||||||
import {NGXLogger} from 'ngx-logger';
|
import {NGXLogger} from 'ngx-logger';
|
||||||
import {IFeed} from '../../interfaces/feed.interface';
|
import {IFeed} from '../../interfaces/feed.interface';
|
||||||
import {FeedService} from '../../services/feed.service';
|
import {FeedService} from '../../services/feed.service';
|
||||||
import {ActivatedRoute, NavigationEnd, Router} from '@angular/router';
|
import {ActivatedRoute} from '@angular/router';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-einstellungen',
|
selector: 'app-einstellungen',
|
||||||
@ -22,10 +22,8 @@ export class EinstellungenComponent implements OnInit {
|
|||||||
private _snackbar: MatSnackBar,
|
private _snackbar: MatSnackBar,
|
||||||
private _logger: NGXLogger,
|
private _logger: NGXLogger,
|
||||||
private _feedService: FeedService,
|
private _feedService: FeedService,
|
||||||
private _route: ActivatedRoute,
|
private _route: ActivatedRoute) {
|
||||||
private _router: Router) {
|
|
||||||
this.icon = 'assets/logo.svg';
|
this.icon = 'assets/logo.svg';
|
||||||
this._router.routeReuseStrategy.shouldReuseRoute = () => false;
|
|
||||||
this._feedService.getFeeds().toPromise().then(data => this.feeds = data).catch(err => this._logger.error(err));
|
this._feedService.getFeeds().toPromise().then(data => this.feeds = data).catch(err => this._logger.error(err));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user