Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix disable editing buttons #126

Merged
merged 9 commits into from
Dec 10, 2021
7 changes: 4 additions & 3 deletions src/app/app.component.ts
Original file line number Diff line number Diff line change
@@ -69,15 +69,16 @@ export class AppComponent implements OnInit {
(error: HttpErrorResponse) => {
this.loading = false;
if(error.status === globals.statusCodeNotFound){
this.configService.getDefaultConfiguration();
console.log('default values applied')
this.configService.getDefaultConfiguration();
console.log('default values applied')
}
else{
else if (this.configService.configuration.features[UiFeatures.SHOW_SETTINGS]){
this.toasterService.popAsync(
'error', 'Error while loading config from config server, using default values instead' + error.message).subscribe(
() => console.log('default values applied')
)
}
console.log('Error while loading config from config server, using default values instead' + error.message)
}
);
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
import {
ApplicationRef, ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, OnInit, Output
} from '@angular/core';
import { UiFeatures } from '../../directives/pattern-atlas-ui-repository-configuration.service';
import {
PatternAtlasUiRepositoryConfigurationService, UiFeatures
} from 'src/app/core/directives/pattern-atlas-ui-repository-configuration.service';

@Component({
selector: 'pp-action-button-bar',
@@ -28,11 +30,15 @@ export class ActionButtonBarComponent implements OnInit {

@Input() displayText: string;

editingFromConfigServer = false;

constructor(private cdr: ChangeDetectorRef,
private applicationRef: ApplicationRef) {
private applicationRef: ApplicationRef,
private configurationService: PatternAtlasUiRepositoryConfigurationService) {
}

ngOnInit() {
this.editingFromConfigServer = this.configurationService.configuration.features[UiFeatures.EDITING];
}

addButtonClicked() {
@@ -48,6 +54,8 @@ export class ActionButtonBarComponent implements OnInit {
}

iconEditButtonClicked() {
this.iconEditClicked.emit();
if (this.editingFromConfigServer) {
this.iconEditClicked.emit();
}
}
}
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
<footer *ngIf="patternLanguage?.creativeCommonsReference" class="center-content">
<p><a rel="license" href="http://creativecommons.org/licenses/by/4.0/"><img
<div style="text-align:center;">
<p><a rel="license" href="http://creativecommons.org/licenses/by/4.0/"><img
alt="Creative Commons Lizenzvertrag"
style="border-width:0"
src="https://i.creativecommons.org/l/by/4.0/88x31.png"/></a>
<br>
<a rel="license"
href="http://creativecommons.org/licenses/by/4.0/"> {{patternLanguage?.creativeCommonsReference}}</a></p>
href="{{patternLanguage?.creativeCommonsReference}}"> {{patternLanguage?.creativeCommonsReference}}</a></p></div>

</footer>
Original file line number Diff line number Diff line change
@@ -9,10 +9,10 @@
<div style="word-break: break-word" #markdownContent></div>


<button *ngIf="showActionButtons && isEditingEnabled" mat-stroked-button
<button *ngIf="showActionButtons && isEditingEnabled && editingFromConfigServer" mat-stroked-button
style="margin-left: 5px" color="primary"
(click)="openEditor()" matTooltip="Edit"><i class="material-icons">mode_edit</i></button>
<button *ngIf="showActionButtons && showCommentButton" mat-stroked-button
<button *ngIf="showActionButtons && showCommentButton && editingFromConfigServer" mat-stroked-button
style="margin-left: 5px" color="primary"
(click)="commentSVG()" matTooltip="Comment Picture"><i class="material-icons">comment</i></button>
</div>
Original file line number Diff line number Diff line change
@@ -16,6 +16,9 @@ import { DiscussionService } from '../../../service/discussion.service';
import { DiscussionComment } from '../../../model/discussion-comment';
import { ImageModel } from '../../../model/image-model';
import * as QuantumCircuit from 'quantum-circuit';
import {
PatternAtlasUiRepositoryConfigurationService, UiFeatures
} from 'src/app/core/directives/pattern-atlas-ui-repository-configuration.service';

@Component({
selector: 'pp-markdown-pattern-section-content',
@@ -36,10 +39,12 @@ export class MarkdownPatternSectionContentComponent extends DataRenderingCompone
svgCommentHeight;
comment;
commentSvg: SVGSVGElement;
readonly UiFeatures = UiFeatures;

isCommentingEnabled = false;
showCommentButton = true;
showActionButtons = false;
editingFromConfigServer = false
@ViewChild('markdownContent') markdownDiv: ElementRef;
@Input() content: string;
private markdown: MarkdownIt;
@@ -48,10 +53,12 @@ export class MarkdownPatternSectionContentComponent extends DataRenderingCompone
private cdr: ChangeDetectorRef,
private imageService: ImageService,
private snackBar: MatSnackBar,
private discussionService: DiscussionService
private discussionService: DiscussionService,
private configurationService: PatternAtlasUiRepositoryConfigurationService
) {
super();
this.changeContent = new EventEmitter<DataChange>();
this.editingFromConfigServer = this.configurationService.configuration.features[UiFeatures.EDITING]
}

ngAfterViewInit() {
Original file line number Diff line number Diff line change
@@ -5,7 +5,7 @@
[iconEdit]="true"
[iconUrl]="pattern?.iconUrl" (iconEditClicked)="editIcon()">
</pp-action-button-bar>
<span> <button mat-stroked-button style="margin-left: 5px" color="primary" *ngIf="showActionButtons"
<span> <button mat-stroked-button style="margin-left: 5px" color="primary" *ngIf="showActionButtons && editingFromConfigServer"
(click)="editIcon()" matTooltip="Edit"><i class="material-icons">mode_edit</i></button>
</span>
</mat-card-header>
@@ -60,7 +60,7 @@
<mat-card-actions>
<div style="display: flex; align-items: center;">
<button (click)="addLink()"
*ngIf="isEditingEnabled"
*ngIf="isEditingEnabled && editingFromConfigServer"
color="primary"
mat-stroked-button
matTooltip="Add Relation"
Original file line number Diff line number Diff line change
@@ -24,6 +24,9 @@ import { UndirectedEdgeModel } from '../model/hal/undirected-edge.model';
import { globals } from '../../globals';
import { UriConverter } from '../util/uri-converter';
import { EditUrlDialogComponent } from '../component/edit-url-dialog/edit-url-dialog.component';
import {
PatternAtlasUiRepositoryConfigurationService, UiFeatures
} from '../directives/pattern-atlas-ui-repository-configuration.service';

@Component({
selector: 'pp-default-pattern-renderer',
@@ -45,6 +48,8 @@ export class DefaultPatternRendererComponent implements AfterViewInit, OnDestroy
private patternId: string;
subscriptions: Subscription = new Subscription();
showActionButtons: boolean;
readonly UiFeatures = UiFeatures;
editingFromConfigServer = false

constructor(private activatedRoute: ActivatedRoute,
private toasterService: ToasterService,
@@ -54,8 +59,10 @@ export class DefaultPatternRendererComponent implements AfterViewInit, OnDestroy
private patternService: PatternService,
private patternRelationDescriptorService: PatternRelationDescriptorService,
private dialog: MatDialog,
private router: Router) {
private router: Router,
private configurationService: PatternAtlasUiRepositoryConfigurationService) {
this.router.routeReuseStrategy.shouldReuseRoute = () => false;
this.editingFromConfigServer = this.configurationService.configuration.features[UiFeatures.EDITING]
}

ngAfterViewInit(): void {
Original file line number Diff line number Diff line change
@@ -40,12 +40,12 @@ interface EtcdNode {

const initialValues: PatternAtlasUiConfiguration = {
features: {
designModel: true,
patternCandidate: true,
patternViews: true,
issue: true,
showSettings: true,
editing: true
designModel: false,
patternCandidate: false,
patternViews: false,
issue: false,
showSettings: false,
editing: false
},
};

Original file line number Diff line number Diff line change
@@ -29,6 +29,7 @@

.mat-card-image {
cursor: pointer;
object-fit: contain;
}

.mat-card-avatar {