This commit is contained in:
FinnStutzenstein 2019-06-17 14:27:47 +02:00
parent 5d3bb1fd4a
commit b8d3fa2614
47 changed files with 123 additions and 72 deletions

View File

@ -17,7 +17,7 @@ import { OpenSlidesTranslateModule } from './core/translate/openslides-translate
// PWA
import { ServiceWorkerModule } from '@angular/service-worker';
import { environment } from '../environments/environment';
import { GlobalSpinnerComponent } from './site/global-spinner/global-spinner.component';
import { GlobalSpinnerComponent } from './site/common/components/global-spinner/global-spinner.component';
/**
* Returns a function that returns a promis that will be resolved, if all apps are loaded.

View File

@ -19,6 +19,7 @@ import { ProjectorAppConfig } from 'app/site/projector/projector.config';
import { BaseRepository } from 'app/core/repositories/base-repository';
import { OnAfterAppsLoaded } from '../onAfterAppsLoaded';
import { ServicesToLoadOnAppsLoaded } from '../core.module';
import { TopicsAppConfig } from 'app/site/topics/topics.config';
/**
* A list of all app configurations of all delivered apps.
@ -33,7 +34,8 @@ const appConfigs: AppConfig[] = [
TagAppConfig,
UsersAppConfig,
HistoryAppConfig,
ProjectorAppConfig
ProjectorAppConfig,
TopicsAppConfig
];
/**

View File

@ -7,7 +7,7 @@ import { DataStoreService } from 'app/core/core-services/data-store.service';
import { DataSendService } from 'app/core/core-services/data-send.service';
import { Mediafile } from 'app/shared/models/mediafiles/mediafile';
import { Topic } from 'app/shared/models/topics/topic';
import { ViewTopic, TopicTitleInformation } from 'app/site/agenda/models/view-topic';
import { ViewTopic, TopicTitleInformation } from 'app/site/topics/models/view-topic';
import { ViewModelStoreService } from 'app/core/core-services/view-model-store.service';
import { ViewMediafile } from 'app/site/mediafiles/models/view-mediafile';
import { ViewItem } from 'app/site/agenda/models/view-item';

View File

@ -5,13 +5,11 @@ import { AgendaImportListComponent } from './components/agenda-import-list/agend
import { AgendaListComponent } from './components/agenda-list/agenda-list.component';
import { AgendaSortComponent } from './components/agenda-sort/agenda-sort.component';
import { ListOfSpeakersComponent } from './components/list-of-speakers/list-of-speakers.component';
import { TopicDetailComponent } from './components/topic-detail/topic-detail.component';
import { WatchSortingTreeGuard } from 'app/shared/utils/watch-sorting-tree.guard';
const routes: Routes = [
{ path: '', component: AgendaListComponent, pathMatch: 'full' },
{ path: 'import', component: AgendaImportListComponent, data: { basePerm: 'agenda.can_manage' } },
{ path: 'topics/new', component: TopicDetailComponent, data: { basePerm: 'agenda.can_manage' } },
{
path: 'sort-agenda',
component: AgendaSortComponent,
@ -19,8 +17,7 @@ const routes: Routes = [
data: { basePerm: 'agenda.can_manage' }
},
{ path: 'speakers', component: ListOfSpeakersComponent, data: { basePerm: 'agenda.can_see_list_of_speakers' } },
{ path: 'speakers/:id', component: ListOfSpeakersComponent, data: { basePerm: 'agenda.can_see_list_of_speakers' } },
{ path: 'topics/:id', component: TopicDetailComponent, data: { basePerm: 'agenda.can_see' } }
{ path: 'speakers/:id', component: ListOfSpeakersComponent, data: { basePerm: 'agenda.can_see_list_of_speakers' } }
];
@NgModule({

View File

@ -1,9 +1,6 @@
import { AppConfig } from '../../core/app-config';
import { Item } from '../../shared/models/agenda/item';
import { Topic } from '../../shared/models/topics/topic';
import { ItemRepositoryService } from 'app/core/repositories/agenda/item-repository.service';
import { TopicRepositoryService } from 'app/core/repositories/topics/topic-repository.service';
import { ViewTopic } from './models/view-topic';
import { ViewItem } from './models/view-item';
import { ListOfSpeakers } from 'app/shared/models/agenda/list-of-speakers';
import { ViewListOfSpeakers } from './models/view-list-of-speakers';
@ -18,13 +15,6 @@ export const AgendaAppConfig: AppConfig = {
model: ListOfSpeakers,
viewModel: ViewListOfSpeakers,
repository: ListOfSpeakersRepositoryService
},
{
collectionString: 'topics/topic',
model: Topic,
viewModel: ViewTopic,
searchOrder: 1,
repository: TopicRepositoryService
}
],
mainMenuEntries: [

View File

@ -6,7 +6,6 @@ import { AgendaListComponent } from './components/agenda-list/agenda-list.compon
import { ItemInfoDialogComponent } from './components/item-info-dialog/item-info-dialog.component';
import { AgendaRoutingModule } from './agenda-routing.module';
import { SharedModule } from '../../shared/shared.module';
import { TopicDetailComponent } from './components/topic-detail/topic-detail.component';
import { AgendaSortComponent } from './components/agenda-sort/agenda-sort.component';
import { ListOfSpeakersComponent } from './components/list-of-speakers/list-of-speakers.component';
@ -18,7 +17,6 @@ import { ListOfSpeakersComponent } from './components/list-of-speakers/list-of-s
entryComponents: [ItemInfoDialogComponent],
declarations: [
AgendaListComponent,
TopicDetailComponent,
ItemInfoDialogComponent,
AgendaImportListComponent,
AgendaSortComponent,

View File

@ -4,12 +4,12 @@ import { MatSnackBar } from '@angular/material';
import { Title } from '@angular/platform-browser';
import { TranslateService } from '@ngx-translate/core';
import { AgendaImportService } from '../../agenda-import.service';
import { AgendaImportService } from '../../services/agenda-import.service';
import { BaseImportListComponent } from 'app/site/base/base-import-list';
import { CsvExportService } from 'app/core/ui-services/csv-export.service';
import { DurationService } from 'app/core/ui-services/duration.service';
import { ItemVisibilityChoices } from 'app/shared/models/agenda/item';
import { ViewCreateTopic } from '../../models/view-create-topic';
import { ViewCreateTopic } from 'app/site/topics/models/view-create-topic';
/**
* Component for the agenda import list view.

View File

@ -1,6 +1,6 @@
import { Component, OnInit } from '@angular/core';
import { MatSnackBar, MatDialog } from '@angular/material';
import { Router, ActivatedRoute } from '@angular/router';
import { Router } from '@angular/router';
import { Title } from '@angular/platform-browser';
import { TranslateService } from '@ngx-translate/core';
@ -16,7 +16,7 @@ import { DurationService } from 'app/core/ui-services/duration.service';
import { ItemInfoDialogComponent } from '../item-info-dialog/item-info-dialog.component';
import { ItemRepositoryService } from 'app/core/repositories/agenda/item-repository.service';
import { ListOfSpeakersRepositoryService } from 'app/core/repositories/agenda/list-of-speakers-repository.service';
import { ListViewBaseComponent } from 'app/site/base/list-view-base';
import { BaseListViewComponent } from 'app/site/base/base-list-view';
import { OperatorService } from 'app/core/core-services/operator.service';
import { ProjectorElementBuildDeskriptor } from 'app/site/base/projectable';
import { PromptService } from 'app/core/ui-services/prompt.service';
@ -26,7 +26,7 @@ import { TopicRepositoryService } from 'app/core/repositories/topics/topic-repos
import { ViewportService } from 'app/core/ui-services/viewport.service';
import { ViewItem } from '../../models/view-item';
import { ViewListOfSpeakers } from '../../models/view-list-of-speakers';
import { ViewTopic } from '../../models/view-topic';
import { ViewTopic } from 'app/site/topics/models/view-topic';
/**
* List view for the agenda.
@ -36,7 +36,7 @@ import { ViewTopic } from '../../models/view-topic';
templateUrl: './agenda-list.component.html',
styleUrls: ['./agenda-list.component.scss']
})
export class AgendaListComponent extends ListViewBaseComponent<ViewItem> implements OnInit {
export class AgendaListComponent extends BaseListViewComponent<ViewItem> implements OnInit {
/**
* Show or hide the numbering button
*/
@ -111,7 +111,6 @@ export class AgendaListComponent extends ListViewBaseComponent<ViewItem> impleme
* @param translate translations
* @param matSnackBar Shows errors and messages
* @param operator The current user
* @param route Angulars ActivatedRoute
* @param router Angulars router
* @param repo the agenda repository,
* @param promptService the delete prompt
@ -130,7 +129,6 @@ export class AgendaListComponent extends ListViewBaseComponent<ViewItem> impleme
matSnackBar: MatSnackBar,
storage: StorageService,
private operator: OperatorService,
protected route: ActivatedRoute,
private router: Router,
public repo: ItemRepositoryService,
private promptService: PromptService,
@ -231,7 +229,7 @@ export class AgendaListComponent extends ListViewBaseComponent<ViewItem> impleme
* Comes from the HeadBar Component
*/
public onPlusButton(): void {
this.router.navigate(['topics/new'], { relativeTo: this.route });
this.router.navigate(['/topics/new']);
}
/**

View File

@ -1,14 +1,15 @@
import { Injectable } from '@angular/core';
import { MatSnackBar } from '@angular/material';
import { Papa } from 'ngx-papaparse';
import { TranslateService } from '@ngx-translate/core';
import { BaseImportService, NewEntry } from 'app/core/ui-services/base-import.service';
import { CreateTopic } from './models/create-topic';
import { CreateTopic } from '../../topics/models/create-topic';
import { DurationService } from 'app/core/ui-services/duration.service';
import { ItemVisibilityChoices } from 'app/shared/models/agenda/item';
import { TopicRepositoryService } from '../../core/repositories/topics/topic-repository.service';
import { ViewCreateTopic } from './models/view-create-topic';
import { TopicRepositoryService } from 'app/core/repositories/topics/topic-repository.service';
import { ViewCreateTopic } from 'app/site/topics/models/view-create-topic';
@Injectable({
providedIn: 'root'

View File

@ -9,7 +9,7 @@ import { PblColumnDefinition } from '@pebula/ngrid';
import { AssignmentFilterListService } from '../../services/assignment-filter.service';
import { AssignmentSortListService } from '../../services/assignment-sort-list.service';
import { AssignmentRepositoryService } from 'app/core/repositories/assignments/assignment-repository.service';
import { ListViewBaseComponent } from 'app/site/base/list-view-base';
import { BaseListViewComponent } from 'app/site/base/base-list-view';
import { OperatorService } from 'app/core/core-services/operator.service';
import { PromptService } from 'app/core/ui-services/prompt.service';
import { StorageService } from 'app/core/core-services/storage.service';
@ -24,7 +24,7 @@ import { AssignmentPdfExportService } from '../../services/assignment-pdf-export
templateUrl: './assignment-list.component.html',
styleUrls: ['./assignment-list.component.scss']
})
export class AssignmentListComponent extends ListViewBaseComponent<ViewAssignment> implements OnInit {
export class AssignmentListComponent extends BaseListViewComponent<ViewAssignment> implements OnInit {
/**
* The different phases of an assignment. Info is fetched from server
*/

View File

@ -8,7 +8,7 @@ import { UserRepositoryService } from 'app/core/repositories/users/user-reposito
import { AssignmentRepositoryService } from 'app/core/repositories/assignments/assignment-repository.service';
import { ViewAssignmentPoll } from '../models/view-assignment-poll';
import { AssignmentPollMethod } from './assignment-poll.service';
import { PollPdfService, BallotCountChoices, AbstractPollData } from 'app/core/core-services/poll-pdf-service';
import { PollPdfService, BallotCountChoices, AbstractPollData } from 'app/core/ui-services/poll-pdf-service';
/**
* Creates a pdf for a motion poll. Takes as input any motionPoll

View File

@ -10,7 +10,7 @@ import { BaseViewModel } from './base-view-model';
import { StorageService } from 'app/core/core-services/storage.service';
import { ViewUser } from '../users/models/view-user';
export abstract class ListViewBaseComponent<V extends BaseViewModel> extends BaseViewComponent implements OnDestroy {
export abstract class BaseListViewComponent<V extends BaseViewModel> extends BaseViewComponent implements OnDestroy {
/**
* The source of the table data, will be filled by an event emitter
*/

View File

@ -8,7 +8,8 @@ import { TranslateService } from '@ngx-translate/core';
import { PblColumnDefinition } from '@pebula/ngrid';
import { ColumnRestriction } from 'app/shared/components/list-view-table/list-view-table.component';
import { ListViewBaseComponent } from 'app/site/base/list-view-base';
import { BaseListViewComponent } from 'app/site/base/base-list-view';
import { ViewMediafile } from 'app/site/mediafiles/models/view-mediafile';
import { MediafileRepositoryService } from 'app/core/repositories/mediafiles/mediafile-repository.service';
import { MediaManageService } from 'app/core/ui-services/media-manage.service';
import { MediafileFilterListService } from '../../services/mediafile-filter.service';
@ -17,7 +18,6 @@ import { OperatorService } from 'app/core/core-services/operator.service';
import { PromptService } from 'app/core/ui-services/prompt.service';
import { StorageService } from 'app/core/core-services/storage.service';
import { ViewportService } from 'app/core/ui-services/viewport.service';
import { ViewMediafile } from '../../models/view-mediafile';
/**
* Lists all the uploaded files.
@ -27,7 +27,7 @@ import { ViewMediafile } from '../../models/view-mediafile';
templateUrl: './mediafile-list.component.html',
styleUrls: ['./mediafile-list.component.scss']
})
export class MediafileListComponent extends ListViewBaseComponent<ViewMediafile> implements OnInit {
export class MediafileListComponent extends BaseListViewComponent<ViewMediafile> implements OnInit {
/**
* Holds the actions for logos. Updated via an observable
*/

View File

@ -8,7 +8,7 @@ import { TranslateService } from '@ngx-translate/core';
import { PblColumnDefinition } from '@pebula/ngrid';
import { ItemRepositoryService } from 'app/core/repositories/agenda/item-repository.service';
import { ListViewBaseComponent } from 'app/site/base/list-view-base';
import { BaseListViewComponent } from 'app/site/base/base-list-view';
import { MotionBlock } from 'app/shared/models/motions/motion-block';
import { MotionBlockRepositoryService } from 'app/core/repositories/motions/motion-block-repository.service';
import { MotionBlockSortService } from 'app/site/motions/services/motion-block-sort.service';
@ -25,7 +25,7 @@ import { ViewMotionBlock } from 'app/site/motions/models/view-motion-block';
templateUrl: './motion-block-list.component.html',
styleUrls: ['./motion-block-list.component.scss']
})
export class MotionBlockListComponent extends ListViewBaseComponent<ViewMotionBlock> implements OnInit {
export class MotionBlockListComponent extends BaseListViewComponent<ViewMotionBlock> implements OnInit {
/**
* Holds the create form
*/

View File

@ -8,7 +8,7 @@ import { PblColumnDefinition } from '@pebula/ngrid';
import { CategoryRepositoryService } from 'app/core/repositories/motions/category-repository.service';
import { ConfigService } from 'app/core/ui-services/config.service';
import { ListViewBaseComponent } from 'app/site/base/list-view-base';
import { BaseListViewComponent } from 'app/site/base/base-list-view';
import { MotionBlockRepositoryService } from 'app/core/repositories/motions/motion-block-repository.service';
import { MotionRepositoryService } from 'app/core/repositories/motions/motion-repository.service';
import { TagRepositoryService } from 'app/core/repositories/tags/tag-repository.service';
@ -72,7 +72,7 @@ interface InfoDialog {
templateUrl: './motion-list.component.html',
styleUrls: ['./motion-list.component.scss']
})
export class MotionListComponent extends ListViewBaseComponent<ViewMotion> implements OnInit {
export class MotionListComponent extends BaseListViewComponent<ViewMotion> implements OnInit {
/**
* Reference to the dialog for quick editing meta information.
*/

View File

@ -4,7 +4,7 @@ import { Title } from '@angular/platform-browser';
import { TranslateService } from '@ngx-translate/core';
import { PblColumnDefinition } from '@pebula/ngrid';
import { ListViewBaseComponent } from 'app/site/base/list-view-base';
import { BaseListViewComponent } from 'app/site/base/base-list-view';
import { MatSnackBar, MatDialog } from '@angular/material';
import { PromptService } from 'app/core/ui-services/prompt.service';
import { ViewWorkflow } from 'app/site/motions/models/view-workflow';
@ -20,7 +20,7 @@ import { StorageService } from 'app/core/core-services/storage.service';
templateUrl: './workflow-list.component.html',
styleUrls: ['./workflow-list.component.scss']
})
export class WorkflowListComponent extends ListViewBaseComponent<ViewWorkflow> implements OnInit {
export class WorkflowListComponent extends BaseListViewComponent<ViewWorkflow> implements OnInit {
/**
* Holds the new workflow title
*/

View File

@ -10,10 +10,10 @@ import {
import { sortMotionPropertyList } from '../motion-import-export-order';
import { MotionRepositoryService } from 'app/core/repositories/motions/motion-repository.service';
import { ChangeRecoMode, ViewMotion } from '../models/view-motion';
import { ChangeRecommendationRepositoryService } from '../../../core/repositories/motions/change-recommendation-repository.service';
import { ConfigService } from '../../../core/ui-services/config.service';
import { ViewUnifiedChange } from '../../../shared/models/motions/view-unified-change';
import { LinenumberingService } from '../../../core/ui-services/linenumbering.service';
import { ChangeRecommendationRepositoryService } from 'app/core/repositories/motions/change-recommendation-repository.service';
import { ConfigService } from 'app/core/ui-services/config.service';
import { ViewUnifiedChange } from 'app/shared/models/motions/view-unified-change';
import { LinenumberingService } from 'app/core/ui-services/linenumbering.service';
/**
* Exports CSVs for motions. Collect all CSV types here to have them in one place.

View File

@ -6,7 +6,7 @@ import { ConfigService } from 'app/core/ui-services/config.service';
import { MotionPoll } from 'app/shared/models/motions/motion-poll';
import { MotionRepositoryService } from 'app/core/repositories/motions/motion-repository.service';
import { PdfDocumentService } from 'app/core/ui-services/pdf-document.service';
import { PollPdfService, AbstractPollData } from 'app/core/core-services/poll-pdf-service';
import { PollPdfService, AbstractPollData } from 'app/core/ui-services/poll-pdf-service';
import { UserRepositoryService } from 'app/core/repositories/users/user-repository.service';
type BallotCountChoices = 'NUMBER_OF_DELEGATES' | 'NUMBER_OF_ALL_PARTICIPANTS' | 'CUSTOM_NUMBER';

View File

@ -4,7 +4,7 @@ import { MatSnackBar } from '@angular/material';
import { TranslateService } from '@ngx-translate/core';
import { BaseViewComponent } from '../../../base/base-view';
import { BaseViewComponent } from 'app/site/base/base-view';
import { ViewCountdown } from '../../models/view-countdown';
import { CountdownRepositoryService } from 'app/core/repositories/projector/countdown-repository.service';
import { ConfigService } from 'app/core/ui-services/config.service';

View File

@ -23,6 +23,11 @@ const routes: Routes = [
loadChildren: './agenda/agenda.module#AgendaModule',
data: { basePerm: 'agenda.can_see' }
},
{
path: 'topics',
loadChildren: './topics/topics.module#TopicsModule',
data: { basePerm: 'agenda.can_see' }
},
{
path: 'assignments',
loadChildren: './assignments/assignments.module#AssignmentsModule',

View File

@ -6,7 +6,7 @@ import { MatSnackBar } from '@angular/material';
import { TranslateService } from '@ngx-translate/core';
import { PblColumnDefinition } from '@pebula/ngrid';
import { ListViewBaseComponent } from '../../../base/list-view-base';
import { BaseListViewComponent } from 'app/site/base/base-list-view';
import { PromptService } from 'app/core/ui-services/prompt.service';
import { Tag } from 'app/shared/models/core/tag';
import { TagRepositoryService } from 'app/core/repositories/tags/tag-repository.service';
@ -24,7 +24,7 @@ import { ViewTag } from '../../models/view-tag';
templateUrl: './tag-list.component.html',
styleUrls: ['./tag-list.component.scss']
})
export class TagListComponent extends ListViewBaseComponent<ViewTag> implements OnInit {
export class TagListComponent extends BaseListViewComponent<ViewTag> implements OnInit {
public editTag = false;
public newTag = false;
public selectedTag: ViewTag;

View File

@ -16,7 +16,7 @@ import { ItemVisibilityChoices } from 'app/shared/models/agenda/item';
import { CreateTopic } from '../../models/create-topic';
import { Topic } from 'app/shared/models/topics/topic';
import { ViewMediafile } from 'app/site/mediafiles/models/view-mediafile';
import { ViewItem } from '../../models/view-item';
import { ViewItem } from 'app/site/agenda/models/view-item';
import { MediafileRepositoryService } from 'app/core/repositories/mediafiles/mediafile-repository.service';
import { ItemRepositoryService } from 'app/core/repositories/agenda/item-repository.service';
@ -163,7 +163,7 @@ export class TopicDetailComponent extends BaseViewComponent {
* be loaded using the ID from the URL
*/
public getTopicByUrl(): void {
if (this.route.snapshot.url[1] && this.route.snapshot.url[1].path === 'new') {
if (this.route.snapshot.url[0] && this.route.snapshot.url[0].path === 'new') {
// creates a new topic
this.newTopic = true;
this.editTopic = true;

View File

@ -2,9 +2,9 @@ import { Topic } from 'app/shared/models/topics/topic';
import { SearchRepresentation } from 'app/core/ui-services/search.service';
import { ProjectorElementBuildDeskriptor } from 'app/site/base/projectable';
import { ViewMediafile } from 'app/site/mediafiles/models/view-mediafile';
import { ViewItem } from './view-item';
import { ViewItem } from '../../agenda/models/view-item';
import { BaseViewModel } from 'app/site/base/base-view-model';
import { ViewListOfSpeakers } from './view-list-of-speakers';
import { ViewListOfSpeakers } from '../../agenda/models/view-list-of-speakers';
import { BaseViewModelWithAgendaItemAndListOfSpeakers } from 'app/site/base/base-view-model-with-agenda-item-and-list-of-speakers';
import { TitleInformationWithAgendaItem } from 'app/site/base/base-view-model-with-agenda-item';
@ -62,7 +62,7 @@ export class ViewTopic extends BaseViewModelWithAgendaItemAndListOfSpeakers impl
}
public getDetailStateURL(): string {
return `/agenda/topics/${this.id}`;
return `/topics/${this.id}`;
}
/**

View File

@ -0,0 +1,15 @@
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { TopicDetailComponent } from './components/topic-detail/topic-detail.component';
const routes: Routes = [
{ path: 'new', component: TopicDetailComponent, data: { basePerm: 'agenda.can_manage' } },
{ path: ':id', component: TopicDetailComponent, data: { basePerm: 'agenda.can_see' } }
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class TopicsRoutingModule {}

View File

@ -0,0 +1,17 @@
import { AppConfig } from '../../core/app-config';
import { Topic } from '../../shared/models/topics/topic';
import { TopicRepositoryService } from 'app/core/repositories/topics/topic-repository.service';
import { ViewTopic } from './models/view-topic';
export const TopicsAppConfig: AppConfig = {
name: 'topics',
models: [
{
collectionString: 'topics/topic',
model: Topic,
viewModel: ViewTopic,
searchOrder: 1,
repository: TopicRepositoryService
}
]
};

View File

@ -0,0 +1,13 @@
import { TopicsModule } from './topics.module';
describe('TopicsModule', () => {
let topicsModule: TopicsModule;
beforeEach(() => {
topicsModule = new TopicsModule();
});
it('should create an instance', () => {
expect(topicsModule).toBeTruthy();
});
});

View File

@ -0,0 +1,15 @@
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { SharedModule } from 'app/shared/shared.module';
import { TopicDetailComponent } from './components/topic-detail/topic-detail.component';
import { TopicsRoutingModule } from './topics-routing.module';
/**
* AppModule for the agenda and it's children.
*/
@NgModule({
imports: [CommonModule, TopicsRoutingModule, SharedModule],
declarations: [TopicDetailComponent]
})
export class TopicsModule {}

View File

@ -7,7 +7,7 @@ import { FormGroup, Validators, FormBuilder } from '@angular/forms';
import { GroupRepositoryService, AppPermissions } from 'app/core/repositories/users/group-repository.service';
import { ViewGroup } from '../../models/view-group';
import { Group } from 'app/shared/models/users/group';
import { BaseViewComponent } from '../../../base/base-view';
import { BaseViewComponent } from 'app/site/base/base-view';
import { PromptService } from 'app/core/ui-services/prompt.service';
/**

View File

@ -6,7 +6,7 @@ import { Title, SafeHtml, DomSanitizer } from '@angular/platform-browser';
import { TranslateService } from '@ngx-translate/core';
import { BaseViewComponent } from '../../../base/base-view';
import { BaseViewComponent } from 'app/site/base/base-view';
import { genders, User } from 'app/shared/models/users/user';
import { OperatorService } from 'app/core/core-services/operator.service';
import { PromptService } from 'app/core/ui-services/prompt.service';

View File

@ -10,7 +10,7 @@ import { ChoiceService } from 'app/core/ui-services/choice.service';
import { ConfigService } from 'app/core/ui-services/config.service';
import { CsvExportService } from 'app/core/ui-services/csv-export.service';
import { GroupRepositoryService } from 'app/core/repositories/users/group-repository.service';
import { ListViewBaseComponent } from '../../../base/list-view-base';
import { BaseListViewComponent } from 'app/site/base/base-list-view';
import { PromptService } from 'app/core/ui-services/prompt.service';
import { UserFilterListService } from '../../services/user-filter-list.service';
import { UserRepositoryService } from 'app/core/repositories/users/user-repository.service';
@ -62,7 +62,7 @@ interface InfoDialog {
templateUrl: './user-list.component.html',
styleUrls: ['./user-list.component.scss']
})
export class UserListComponent extends ListViewBaseComponent<ViewUser> implements OnInit {
export class UserListComponent extends BaseListViewComponent<ViewUser> implements OnInit {
/**
* The reference to the template.
*/

View File

@ -2,7 +2,7 @@ import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { CommonListOfSpeakersSlideComponent } from './common-list-of-speakers-slide.component';
import { SharedModule } from '../../../shared/shared.module';
import { SharedModule } from 'app/shared/shared.module';
@NgModule({
declarations: [CommonListOfSpeakersSlideComponent],

View File

@ -1,4 +1,4 @@
import { ChangeRecoMode, LineNumberingMode } from '../../../site/motions/models/view-motion';
import { ChangeRecoMode, LineNumberingMode } from 'app/site/motions/models/view-motion';
import { ReferencedMotions } from '../base/base-motion-slide';
/**

View File

@ -1,6 +1,6 @@
import { ViewUnifiedChange, ViewUnifiedChangeType } from '../../../shared/models/motions/view-unified-change';
import { ViewUnifiedChange, ViewUnifiedChangeType } from 'app/shared/models/motions/view-unified-change';
import { MotionSlideDataAmendment } from './motion-slide-data';
import { LineRange } from '../../../core/ui-services/diff.service';
import { LineRange } from 'app/core/ui-services/diff.service';
/**
* This class adds methods to the MotionsMotionSlideDataChangeReco data object

View File

@ -1,4 +1,4 @@
import { ViewUnifiedChange, ViewUnifiedChangeType } from '../../../shared/models/motions/view-unified-change';
import { ViewUnifiedChange, ViewUnifiedChangeType } from 'app/shared/models/motions/view-unified-change';
import { MotionSlideDataChangeReco } from './motion-slide-data';
/**

View File

@ -4,12 +4,12 @@ import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
import { TranslateService } from '@ngx-translate/core';
import { MotionSlideData, MotionSlideDataAmendment } from './motion-slide-data';
import { ChangeRecoMode, LineNumberingMode } from '../../../site/motions/models/view-motion';
import { DiffLinesInParagraph, DiffService, LineRange } from '../../../core/ui-services/diff.service';
import { LinenumberingService } from '../../../core/ui-services/linenumbering.service';
import { ViewUnifiedChange } from '../../../shared/models/motions/view-unified-change';
import { ChangeRecoMode, LineNumberingMode } from 'app/site/motions/models/view-motion';
import { DiffLinesInParagraph, DiffService, LineRange } from 'app/core/ui-services/diff.service';
import { LinenumberingService } from 'app/core/ui-services/linenumbering.service';
import { ViewUnifiedChange } from 'app/shared/models/motions/view-unified-change';
import { MotionSlideObjChangeReco } from './motion-slide-obj-change-reco';
import { SlideData } from '../../../core/core-services/projector-data.service';
import { SlideData } from 'app/core/core-services/projector-data.service';
import { MotionSlideObjAmendmentParagraph } from './motion-slide-obj-amendment-paragraph';
import { BaseMotionSlideComponent } from '../base/base-motion-slide';
import { MotionRepositoryService } from 'app/core/repositories/motions/motion-repository.service';

View File

@ -15,7 +15,7 @@
@import './app/shared/components/projector-button/projector-button.component.scss';
@import './app/site/agenda/components/list-of-speakers/list-of-speakers.component.scss-theme.scss';
@import './app/shared/components/sorting-tree/sorting-tree.component.scss';
@import './app/site/global-spinner/global-spinner.component.scss';
@import './app/site/common/components/global-spinner/global-spinner.component.scss';
@import './app/shared/components/tile/tile.component.scss';
@import './app/shared/components/block-tile/block-tile.component.scss';
@import './app/shared/components/icon-container/icon-container.component.scss';