+
+
Hi {{profileDisplayName}}
-
-
+
+ Welcome to {{appName() | async}} dashboard.
-
\ No newline at end of file
+
+
+
\ No newline at end of file
diff --git a/src/Squidex/app/features/dashboard/pages/dashboard-page.component.scss b/src/Squidex/app/features/dashboard/pages/dashboard-page.component.scss
index e69de29bb..76eb1450b 100644
--- a/src/Squidex/app/features/dashboard/pages/dashboard-page.component.scss
+++ b/src/Squidex/app/features/dashboard/pages/dashboard-page.component.scss
@@ -0,0 +1,65 @@
+@import '_vars';
+@import '_mixins';
+
+.dashboard {
+ padding: 2rem;
+ padding-right: 1rem;
+}
+
+h1 {
+ font-weight: light;
+ font-size: 1.4rem;
+}
+
+.subtext {
+ margin-top: .5rem;
+ margin-bottom: .8rem;
+ color: $color-subtext;
+}
+
+.app-name {
+ color: $color-title;
+}
+
+.card {
+ & {
+ cursor: pointer;
+ margin-right: 1rem;
+ margin-bottom: 1rem;
+ width: 16rem;
+ float: left;
+ }
+
+ &:hover {
+ @include box-shadow(0, 3px, 16px, .2px);
+ }
+
+ &:hover,
+ &:active {
+ text-decoration: none;
+ }
+
+ h4 {
+ color: $color-title;
+ }
+
+ &-block {
+ min-height: 14.5rem;
+ }
+
+ &-image {
+ text-align: center;
+ }
+
+ &-text {
+ font-weight: normal;
+ font-size: .9rem;
+ color: $color-empty;
+ }
+
+ &-title {
+ font-weight: light;
+ font-size: 1.2rem;
+ margin-top: .4rem;
+ }
+}
\ No newline at end of file
diff --git a/src/Squidex/app/features/dashboard/pages/dashboard-page.component.ts b/src/Squidex/app/features/dashboard/pages/dashboard-page.component.ts
index 9f349914c..938d89649 100644
--- a/src/Squidex/app/features/dashboard/pages/dashboard-page.component.ts
+++ b/src/Squidex/app/features/dashboard/pages/dashboard-page.component.ts
@@ -6,22 +6,51 @@
*/
import { Component } from '@angular/core';
+import { Subscription} from 'rxjs';
import {
AppComponentBase,
AppsStoreService,
+ AuthService,
NotificationService,
UsersProviderService
} from 'shared';
+declare var _urq: any;
+
@Component({
selector: 'sqx-dashboard-page',
styleUrls: ['./dashboard-page.component.scss'],
templateUrl: './dashboard-page.component.html'
})
export class DashboardPageComponent extends AppComponentBase {
- constructor(apps: AppsStoreService, notifications: NotificationService, users: UsersProviderService) {
+ private authenticationSubscription: Subscription;
+
+ public profileDisplayName = '';
+
+ constructor(apps: AppsStoreService, notifications: NotificationService, users: UsersProviderService,
+ private readonly auth: AuthService
+ ) {
super(apps, notifications, users);
}
+
+ public ngOnDestroy() {
+ this.authenticationSubscription.unsubscribe();
+ }
+
+ public ngOnInit() {
+ this.authenticationSubscription =
+ this.auth.isAuthenticated.subscribe(() => {
+ const user = this.auth.user;
+
+ if (user) {
+ this.profileDisplayName = user.displayName;
+ }
+ });
+ }
+
+ public showForum() {
+ _urq.push(['Feedback_Open']);
+ }
}
diff --git a/src/Squidex/app/features/schemas/pages/schema/schema-page.component.ts b/src/Squidex/app/features/schemas/pages/schema/schema-page.component.ts
index 5dd2fd510..d8dd3ddce 100644
--- a/src/Squidex/app/features/schemas/pages/schema/schema-page.component.ts
+++ b/src/Squidex/app/features/schemas/pages/schema/schema-page.component.ts
@@ -83,6 +83,7 @@ export class SchemaPageComponent extends AppComponentBase implements OnInit {
this.schemaName = schema.name;
this.schemaFields = ImmutableArray.of(schema.fields);
this.schemaProperties = new SchemaPropertiesDto(schema.name, schema.label, schema.hints);
+
this.isPublished = schema.isPublished;
});
}
diff --git a/src/Squidex/app/features/schemas/pages/schemas/schemas-page.component.ts b/src/Squidex/app/features/schemas/pages/schemas/schemas-page.component.ts
index fc3725330..97a87efca 100644
--- a/src/Squidex/app/features/schemas/pages/schemas/schemas-page.component.ts
+++ b/src/Squidex/app/features/schemas/pages/schemas/schemas-page.component.ts
@@ -6,6 +6,7 @@
*/
import { Component, OnDestroy, OnInit } from '@angular/core';
+import { ActivatedRoute } from '@angular/router';
import { FormControl } from '@angular/forms';
import { Subscription } from 'rxjs';
@@ -46,8 +47,9 @@ export class SchemasPageComponent extends AppComponentBase implements OnDestroy,
constructor(apps: AppsStoreService, notifications: NotificationService, users: UsersProviderService,
private readonly schemasService: SchemasService,
+ private readonly authService: AuthService,
private readonly messageBus: MessageBus,
- private readonly authService: AuthService
+ private readonly route: ActivatedRoute
) {
super(apps, notifications, users);
}
@@ -64,6 +66,12 @@ export class SchemasPageComponent extends AppComponentBase implements OnDestroy,
this.updateSchemas(this.schemas, this.schemaQuery = q);
});
+ this.route.params.map(q => q['showDialog']).subscribe(showDialog => {
+ if (showDialog) {
+ this.addSchemaDialog.show();
+ }
+ });
+
this.messageSubscription =
this.messageBus.of(SchemaUpdated)
.subscribe(m => {
diff --git a/src/Squidex/app/framework/angular/modal-view.directive.ts b/src/Squidex/app/framework/angular/modal-view.directive.ts
index f6dab0319..8fc03fd04 100644
--- a/src/Squidex/app/framework/angular/modal-view.directive.ts
+++ b/src/Squidex/app/framework/angular/modal-view.directive.ts
@@ -17,7 +17,7 @@ export class ModalViewDirective implements OnChanges, OnInit, OnDestroy {
private subscription: Subscription;
private isEnabled = true;
private clickHandler: Function | null;
- private renderedView: EmbeddedViewRef
| null;
+ private renderedView: EmbeddedViewRef | null = null;
@Input('sqxModalView')
public modalView: ModalView;
diff --git a/src/Squidex/app/theme/_bootstrap.scss b/src/Squidex/app/theme/_bootstrap.scss
index c365f1940..0e0d3da39 100644
--- a/src/Squidex/app/theme/_bootstrap.scss
+++ b/src/Squidex/app/theme/_bootstrap.scss
@@ -37,7 +37,7 @@ body {
}
.dropdown-menu {
- @include box-shadow(0, .3px, 16px, .2px);
+ @include box-shadow(0, 3px, 16px, .2px);
border: 0;
background: $panel-light-background;
}
diff --git a/src/Squidex/app/theme/_vars.scss b/src/Squidex/app/theme/_vars.scss
index 2477e048e..83047de9b 100644
--- a/src/Squidex/app/theme/_vars.scss
+++ b/src/Squidex/app/theme/_vars.scss
@@ -3,8 +3,10 @@ $color-background: #eef1f4;
$color-border: #dae4e9;
$color-border-dark: darken($color-border, 20%);
+$color-title: #000;
$color-text: #373a3c;
-$color-empty: #777;
+$color-subtext: #818181;
+$color-empty: #949494;
$color-control: rgba(0, 0, 0, .15);
$color-theme-blue: #438cef;
diff --git a/src/Squidex/wwwroot/images/dashboard-api.png b/src/Squidex/wwwroot/images/dashboard-api.png
new file mode 100644
index 000000000..05df0eb65
Binary files /dev/null and b/src/Squidex/wwwroot/images/dashboard-api.png differ
diff --git a/src/Squidex/wwwroot/images/dashboard-feedback.png b/src/Squidex/wwwroot/images/dashboard-feedback.png
new file mode 100644
index 000000000..4777c0210
Binary files /dev/null and b/src/Squidex/wwwroot/images/dashboard-feedback.png differ
diff --git a/src/Squidex/wwwroot/images/dashboard-github.png b/src/Squidex/wwwroot/images/dashboard-github.png
new file mode 100644
index 000000000..beb023fed
Binary files /dev/null and b/src/Squidex/wwwroot/images/dashboard-github.png differ
diff --git a/src/Squidex/wwwroot/images/dashboard-schema.png b/src/Squidex/wwwroot/images/dashboard-schema.png
new file mode 100644
index 000000000..a690e8097
Binary files /dev/null and b/src/Squidex/wwwroot/images/dashboard-schema.png differ