diff --git a/client/components/layout/c-nav.comp.js b/client/components/layout/c-nav.comp.js index 4d0620e..b8e55f4 100644 --- a/client/components/layout/c-nav.comp.js +++ b/client/components/layout/c-nav.comp.js @@ -41,7 +41,7 @@ export class CNavComponent extends HTMLElement { Sign in diff --git a/client/index.js b/client/index.js index bc90407..206c46e 100644 --- a/client/index.js +++ b/client/index.js @@ -2,6 +2,7 @@ import {layoutComponents} from "./components/layout/index"; import {ArticleComponent} from "./components/article.comp"; import {HomeComponent} from "./pages/home.comp"; import {CLoginComponent} from "./pages/login.comp"; +import {CRegisterComponent} from "./pages/register.comp"; import {RouterOutlet} from "./router/router-outlet"; import {ComponentRegistry} from "./component-registry"; import {RouterHandler} from "./router/router-handler"; @@ -35,6 +36,10 @@ class App { { tagName: 'c-login', component: CLoginComponent + }, + { + tagName: 'c-register', + component: CRegisterComponent } ]; ComponentRegistry.register(components); diff --git a/client/pages/login.comp.js b/client/pages/login.comp.js index 8558c75..44e129c 100644 --- a/client/pages/login.comp.js +++ b/client/pages/login.comp.js @@ -20,7 +20,7 @@ export class CLoginComponent extends HTMLElement {
-

Sign up

+

Sign in

Have an account?

@@ -30,9 +30,6 @@ export class CLoginComponent extends HTMLElement {
-
- -
@@ -40,7 +37,7 @@ export class CLoginComponent extends HTMLElement {
diff --git a/client/pages/register.comp.js b/client/pages/register.comp.js new file mode 100644 index 0000000..f21315b --- /dev/null +++ b/client/pages/register.comp.js @@ -0,0 +1,56 @@ +"use strict"; +export class CRegisterComponent extends HTMLElement { + constructor() { + super(); + // this.shadow = this.createShadowRoot(); + } + + static get observedAttributes() { + return []; + } + + attributeChangedCallback(name, oldValue, newValue) { + + } + + connectedCallback() { + var template = ` +
+
+
+ +
+

Sign up

+

+ Have an account? +

+ + + + + +
+
+ +
+
+ +
+
+ +
+ +
+
+ +
+
+
+ `; + this.innerHTML = template; + } + + +} diff --git a/client/router/router-handler.js b/client/router/router-handler.js index 3b0cee3..3770744 100644 --- a/client/router/router-handler.js +++ b/client/router/router-handler.js @@ -1,5 +1,6 @@ import {HomeComponent} from "../pages/home.comp"; import {CLoginComponent} from "../pages/login.comp"; +import {CRegisterComponent} from "../pages/register.comp"; export class RouterHandler { constructor() { var pushState = history.pushState; @@ -17,11 +18,10 @@ export class RouterHandler { } else if(url != undefined) { routeTo = url; } - RouterHandler.handleButtonChanges(routeTo); + RouterHandler.navigate(routeTo); RouterHandler._onChangeCallbacks.forEach(c => { c(routeTo); }); - // } }; } @@ -29,34 +29,20 @@ export class RouterHandler { RouterHandler._onChangeCallbacks.push(callback); } - static handleButtonChanges(url) { - let page = null; - - if (url == undefined || url == '/') { - page = new HomeComponent(); - } else { - page = new CLoginComponent(); - } - const outlet = document.querySelector('router-outlet'); - while (outlet.firstChild) { - outlet.removeChild(outlet.firstChild); - } - outlet.appendChild(page); - } - static navigate(url) { let page = null; - if (url == '/') { - page = new HomeComponent(); - } else { + if (url == '/login') { page = new CLoginComponent(); + } else if(url == '/register') { + page = new CRegisterComponent(); + } else { + page = new HomeComponent(); } const outlet = document.querySelector('router-outlet'); while (outlet.firstChild) { outlet.removeChild(outlet.firstChild); } - // history.pushState({}, null, url); outlet.appendChild(page); } }