diff --git a/src/app/pages/connect-admin-customization/connect-admin-customization.component.ts b/src/app/pages/connect-admin-customization/connect-admin-customization.component.ts
index ca2fc3a..6cb62f8 100644
--- a/src/app/pages/connect-admin-customization/connect-admin-customization.component.ts
+++ b/src/app/pages/connect-admin-customization/connect-admin-customization.component.ts
@@ -1,7 +1,8 @@
import {Component, OnInit} from '@angular/core';
import {Subscription} from 'rxjs';
-import {LayoutService} from "../../openaireLibrary/services/layout.service";
+import {CustomizationService} from "../../openaireLibrary/services/customization.service";
import {properties} from "../../../environments/environment";
+import {Layout} from "../../openaireLibrary/connect/community/CustomizationOptions";
declare var UIkit;
@Component({
@@ -21,11 +22,22 @@ declare var UIkit;
-
+
Use only after connect deployment. And only if there are css updates!
Press the following button to update the timestamp in the saved layouts and recreate the css files.
+
+
+
+ Delete after next deployment
+
+
+
Use to clean up multiple layouts of a community id.
+
+
+
+
@@ -34,14 +46,13 @@ declare var UIkit;
export class ConnectAdminCustomizationComponent implements OnInit {
private subscriptions: any[] = [];
savingChanges = false;
+ community;
+ properties = properties;
- constructor( private layoutService: LayoutService,) {
+ constructor( private customizationService: CustomizationService) {
}
ngOnInit() {
- // this.sub =this.communityService.getCommunityAsObservable().subscribe(community => {
- // this.community = community;
- // });
}
ngOnDestroy() {
@@ -54,23 +65,52 @@ export class ConnectAdminCustomizationComponent implements OnInit {
updateCss(){
let date = new Date();
this.savingChanges = true;
- this.subscriptions.push(this.layoutService.getLayouts(properties, ).subscribe(layouts => {
+ let connectCssIsSaved = false;
+ let defaultCssIsSaved = false;
+ this.subscriptions.push(this.customizationService.getLayouts(properties, ).subscribe(layouts => {
for(let layout of layouts){
- if(layout.portalPid != 'connect'){
- layout.date = date;
- this.subscriptions.push(this.layoutService.saveLayout(properties, layout.portalPid, layout, "community").subscribe(data =>{
- this.subscriptions.push(this.layoutService.createCSS(layout.portalPid,properties.connectPortalUrl, layout.date.valueOf(), layout.layoutOptions).subscribe(data =>{
- UIkit.notification(layout.portalPid +"-"+ layout.date.valueOf() + ".css " + " was created successfully! ", {
- status: 'success',
- timeout: 6000,
- pos: 'bottom-right'
- });
-
- }));
- }));
+ layout.date = date;
+ if(layout.portalPid == 'connect'){
+ connectCssIsSaved = true;
+ this.callSaveAndCreate(layout, "connect")
+ }else if(layout.portalPid == 'default'){
+ defaultCssIsSaved = true;
+ this.callSaveAndCreate(layout, "connect")
+ }else {
+ this.callSaveAndCreate(layout, "community");
}
}
+ if(!connectCssIsSaved){
+ let layout = new Layout("connect", null);
+ layout.date = date;
+ this.callSaveAndCreate(layout, "connect")
+ }
+ if(!defaultCssIsSaved){
+ let layout = new Layout("default", null);
+ layout.date = date;
+ this.callSaveAndCreate(layout, "connect")
+ }
}));
}
+
+ callSaveAndCreate(layout, portalType){
+ this.subscriptions.push(this.customizationService.saveLayout(properties, layout.portalPid, layout, portalType).subscribe(data =>{
+ this.subscriptions.push(this.customizationService.createCSS(layout.portalPid,properties.connectPortalUrl, layout.date.valueOf(), layout.layoutOptions).subscribe(data =>{
+ UIkit.notification(layout.portalPid +"-"+ layout.date.valueOf() + ".css " + " was created successfully! ", {
+ status: 'success',
+ timeout: 6000,
+ pos: 'bottom-right'
+ });
+
+ }));
+ }));
+ }
+ deleteLayout(){
+ if(this.community && this.community.length > 0) {
+ this.subscriptions.push(this.customizationService.deleteLayout(properties, this.community, "community").subscribe(data => {
+
+ }));
+ }
+ }
}
diff --git a/src/app/pages/connect-admin-customization/connect-admin-customization.module.ts b/src/app/pages/connect-admin-customization/connect-admin-customization.module.ts
index 8edb0fa..7d0c926 100644
--- a/src/app/pages/connect-admin-customization/connect-admin-customization.module.ts
+++ b/src/app/pages/connect-admin-customization/connect-admin-customization.module.ts
@@ -5,13 +5,14 @@ import {ConnectAdminCustomizationComponent} from "./connect-admin-customization.
import {AdminTabsModule} from "../../openaireLibrary/dashboard/sharedComponents/admin-tabs/admin-tabs.module";
import {ConnectAdminCustomizationRoutingModule} from "./connect-admin-customization-routing.module";
import {PageContentModule} from "../../openaireLibrary/dashboard/sharedComponents/page-content/page-content.module";
-import {LayoutService} from "../../openaireLibrary/services/layout.service";
+import {CustomizationService} from "../../openaireLibrary/services/customization.service";
+import {InputModule} from "../../openaireLibrary/sharedComponents/input/input.module";
@NgModule({
imports: [
- CommonModule, RouterModule, AdminTabsModule, ConnectAdminCustomizationRoutingModule, PageContentModule
+ CommonModule, RouterModule, AdminTabsModule, ConnectAdminCustomizationRoutingModule, PageContentModule, InputModule
],
- providers: [LayoutService],
+ providers: [CustomizationService],
declarations: [ConnectAdminCustomizationComponent],
exports: [ConnectAdminCustomizationComponent]
})
diff --git a/src/app/pages/customization/customization.component.html b/src/app/pages/customization/customization.component.html
index 90b8942..2df026f 100644
--- a/src/app/pages/customization/customization.component.html
+++ b/src/app/pages/customization/customization.component.html
@@ -170,10 +170,10 @@
diff --git a/src/app/pages/customization/customization.component.ts b/src/app/pages/customization/customization.component.ts
index 9173956..6b1dff8 100644
--- a/src/app/pages/customization/customization.component.ts
+++ b/src/app/pages/customization/customization.component.ts
@@ -8,7 +8,7 @@ import {LoginErrorCodes} from '../../openaireLibrary/login/utils/guardHelper.cla
import {DomSanitizer, Title} from '@angular/platform-browser';
import {CustomizationOptions, Layout} from '../../openaireLibrary/connect/community/CustomizationOptions';
import {StringUtils} from '../../openaireLibrary/utils/string-utils.class';
-import {LayoutService} from '../../openaireLibrary/services/layout.service';
+import {CustomizationService} from '../../openaireLibrary/services/customization.service';
import {properties} from '../../../environments/environment';
import {UtilitiesService} from '../../openaireLibrary/services/utilities.service';
import {Subscription} from 'rxjs';
@@ -101,7 +101,7 @@ sidebarItems = [{name:"Identity", id : "identity", icon: "desktop_windows" },
private _router: Router,
private title: Title,
private sanitizer: DomSanitizer,
- private layoutService: LayoutService,
+ private layoutService: CustomizationService,
private utilsService: UtilitiesService,
private userManagementService: UserManagementService) {
}
@@ -174,7 +174,7 @@ sidebarItems = [{name:"Identity", id : "identity", icon: "desktop_windows" },
this.publishedCustomizationOptions = this.copyObject(this.publishedLayout.layoutOptions)
this.publishedLayout.date = new Date();
this.subscriptions.push(this.layoutService.saveLayout(this.properties, this.communityId, this.publishedLayout).subscribe(layout => {
-
+ this.publishedLayout._id = layout._id;
this.subscriptions.push(this.layoutService.createCSS(this.communityId,this.properties.connectPortalUrl, this.publishedLayout.date.valueOf(), this.publishedLayout.layoutOptions).subscribe(data => {
console.log(data)
@@ -237,7 +237,10 @@ sidebarItems = [{name:"Identity", id : "identity", icon: "desktop_windows" },
let d = new Date();
let prefix = "-preview-" + d.valueOf();
this.subscriptions.push(this.layoutService.createCSS(this.communityId, this.properties.connectPortalUrl, prefix, this.appliedCustomizationOptions).subscribe(data => {
- this.previewUrl = this.getCommunityUrlSatinized(this.communityId + prefix);
+
+ setTimeout(() => {
+ this.previewUrl = this.getCommunityUrlSatinized(this.communityId + prefix);
+ }, 1500);
}, error => {
diff --git a/src/app/pages/customization/customization.module.ts b/src/app/pages/customization/customization.module.ts
index 33d064b..b7f06bd 100644
--- a/src/app/pages/customization/customization.module.ts
+++ b/src/app/pages/customization/customization.module.ts
@@ -10,7 +10,7 @@ import {ColorPickerModule} from 'ngx-color-picker';
import {FontSizeComponent} from './fontSize.component';
import {ColorComponent} from './color.component';
import {BorderComponent} from './border.component';
-import {LayoutService} from '../../openaireLibrary/services/layout.service';
+import {CustomizationService} from '../../openaireLibrary/services/customization.service';
import {AlertModalModule} from '../../openaireLibrary/utils/modal/alertModal.module';
import {PageContentModule} from '../../openaireLibrary/dashboard/sharedComponents/page-content/page-content.module';
import {QuickLookComponent} from './quickLook.component';
@@ -37,7 +37,7 @@ import {SideBarModule} from "../../openaireLibrary/dashboard/sharedComponents/si
CustomizationComponent, FontSizeComponent, ColorComponent, BorderComponent, QuickLookComponent, QuickLookBackgroundsComponent, QuickLookButtonsComponent, CustomizeButtonsComponent, BackgroundComponent, BackgroundUploadComponent
],
providers: [
- LayoutService
+ CustomizationService
],
exports: [
CustomizationComponent