diff --git a/@salix/core/src/core.js b/@salix/core/src/core.js index ad8aad0b91..2dccf075fe 100644 --- a/@salix/core/src/core.js +++ b/@salix/core/src/core.js @@ -35,5 +35,3 @@ export {NAME as SNACKBARMT,factory as snackbarmt} from './snackbar/snackbar.mt' export {NAME as SPINNER,directive as SpinnerDirective} from './spinner/spinner' export {NAME as SPINNERMT,factory as spinnermt} from './spinner/spinner.mt' -export {NAME as LOGIN, COMPONENT as LOGIN_COMPONENT} from './login/login'; - diff --git a/@salix/core/src/login/login.html b/@salix/core/src/login/login.html deleted file mode 100755 index 8670c2a32b..0000000000 --- a/@salix/core/src/login/login.html +++ /dev/null @@ -1,25 +0,0 @@ -
-
-
-
-
- -
-
- -
-
- -
-
- -
- -
-
-
- -
diff --git a/@salix/core/src/login/login.js b/@salix/core/src/login/login.js deleted file mode 100644 index 2cb9cc09f4..0000000000 --- a/@salix/core/src/login/login.js +++ /dev/null @@ -1,88 +0,0 @@ -import {module} from '../module'; -import template from './login.html'; -import style from './login.scss'; - -export const COMPONENT = { - template: template, - controller: function () { - function $ (id) { - return document.getElementById (id); - } - - var self = this; - $('form').onsubmit = function () { - self._onSubmit (); - return false; - }; - - this._onSubmit = function () { - var params = ''; - var elements = $('form').elements; - - for (var i = 0; i < elements.length; i++) - if (elements[i].name) { - if (params.length > 1) - params += '&'; - - params += elements[i].name +'='+ - encodeURIComponent (elements[i].value); - } - - var request = new XMLHttpRequest (); - request.open ('post', form.action, true); - request.setRequestHeader ('Content-Type', - 'application/x-www-form-urlencoded'); - request.onreadystatechange = - this._onLoginResponse.bind (this, request); - request.send (params); - - $('spinner').firstChild.MaterialSpinner.start (); - }; - this._onLoginResponse = function (request) { - $('spinner').firstChild.MaterialSpinner.stop (); - - if (request.readyState !== 4) - return; - - var data = null; - - try { - var data = JSON.parse (request.responseText); - console.debug (data); - } - catch (e) {} - - if (request.status == 200 && data) - { - sessionStorage.setItem ('token', data.accessToken); - window.location = 'index.html'; - } - else - { - sessionStorage.setItem ('token', ''); - - var message; - - switch (request.status) - { - case 401: - message = 'Invalid credentials'; - break; - case 0: - message = 'Can\'t contact with server'; - break; - default: - message = 'Something went wrong'; - } - - var snackbar = $('snackbar'); - snackbar.firstChild.MaterialSnackbar.showSnackbar ({ - message: message - }); - } - } - } -}; - -module.component('vnLogin', COMPONENT); - diff --git a/@salix/core/src/password/password.mt.html b/@salix/core/src/password/password.mt.html index 4be2904127..69e5e6a349 100644 --- a/@salix/core/src/password/password.mt.html +++ b/@salix/core/src/password/password.mt.html @@ -1,4 +1,4 @@
- +
diff --git a/@salix/core/src/textfield/textfield.mt.html b/@salix/core/src/textfield/textfield.mt.html index 156daaa2e1..d1d931310b 100644 --- a/@salix/core/src/textfield/textfield.mt.html +++ b/@salix/core/src/textfield/textfield.mt.html @@ -1,4 +1,4 @@
- +
diff --git a/@salix/crud/src/module.js b/@salix/crud/src/module.js index 39bbd21082..144aaf252d 100644 --- a/@salix/crud/src/module.js +++ b/@salix/crud/src/module.js @@ -1,12 +1,6 @@ import * as vendors from '@salix/vendor'; import * as core from '@salix/core'; -//import {getModuleName,getVendorDependencies} from './util'; - export const NAME = 'crud'; export const module = vendors.ng.module(NAME,[]); - - - - diff --git a/@salix/login/index.js b/@salix/login/index.js new file mode 100644 index 0000000000..4c1c8da40a --- /dev/null +++ b/@salix/login/index.js @@ -0,0 +1 @@ +export * from './src/login' diff --git a/@salix/login/package.json b/@salix/login/package.json new file mode 100644 index 0000000000..a4f9752558 --- /dev/null +++ b/@salix/login/package.json @@ -0,0 +1,10 @@ +{ + "name": "@salix/login", + "version": "0.0.0", + "description": "", + "main": "index.js", + "repository": { + "type": "git", + "url": "http://git.verdnatura.es:/salix" + } +} diff --git a/@salix/login/src/login.js b/@salix/login/src/login.js new file mode 100644 index 0000000000..e6acad9f9b --- /dev/null +++ b/@salix/login/src/login.js @@ -0,0 +1,4 @@ +export * from './module' + +export {NAME as LOGIN, COMPONENT as LOGIN_COMPONENT} from './login/login' + diff --git a/@salix/login/src/login/login.html b/@salix/login/src/login/login.html new file mode 100755 index 0000000000..01d67c10bb --- /dev/null +++ b/@salix/login/src/login/login.html @@ -0,0 +1,16 @@ +
+
+
+
+ + + + +
+
+
+ +
diff --git a/@salix/login/src/login/login.js b/@salix/login/src/login/login.js new file mode 100644 index 0000000000..bb86167719 --- /dev/null +++ b/@salix/login/src/login/login.js @@ -0,0 +1,63 @@ +import {module} from '../module' +import template from './login.html' +import style from './login.scss' + +export const COMPONENT = +{ + template: template, + controller: function ($http) + { + var self = this; + this.submit = function () + { + $('spinner').firstChild.MaterialSpinner.start (); + + var url = 'http://localhost:3000/login'; + $http.post(url, this.model).then ( + onLoginOk, + onLoginErr + ); + }; + + function $ (id) + { + return document.getElementById (id); + } + + function onLoginOk (response) + { + $('spinner').firstChild.MaterialSpinner.stop (); + sessionStorage.setItem ('token', response.data.accessToken); + window.location = 'index.html'; + } + + function onLoginErr (response) + { + $('spinner').firstChild.MaterialSpinner.stop (); + //self.model.password = ''; + + var message; + + switch (response.status) + { + case 401: + message = 'Invalid credentials'; + break; + case -1: + message = 'Can\'t contact with server'; + break; + default: + message = 'Something went wrong'; + } + + var snackbar = $('snackbar'); + snackbar.firstChild.MaterialSnackbar.showSnackbar ({ + message: message + }); + } + }, + controllerAs:'login' +}; + +module.component('vnLogin', COMPONENT); + diff --git a/@salix/core/src/login/login.scss b/@salix/login/src/login/login.scss similarity index 84% rename from @salix/core/src/login/login.scss rename to @salix/login/src/login/login.scss index 679d3d58cf..fb2728a95e 100644 --- a/@salix/core/src/login/login.scss +++ b/@salix/login/src/login/login.scss @@ -24,16 +24,16 @@ position: absolute; top: 50%; width: 100%; - height: 18em; - margin-top: -9em; - padding: 1em; + height: 20em; + margin-top: -10em; + padding: 2em; background-color: white; box-shadow: 0 0 .3em 0 rgba(1,1,1,.4); border-radius: .1em; } .footer { - margin-top: 1em; + margin-top: 1.5em; margin-left: 3em; text-align: center; } @@ -43,5 +43,3 @@ } } -@media (max-height: 50em){} - diff --git a/@salix/login/src/module.js b/@salix/login/src/module.js new file mode 100644 index 0000000000..74a20e7af0 --- /dev/null +++ b/@salix/login/src/module.js @@ -0,0 +1,6 @@ +import * as vendors from '@salix/vendor'; +import * as core from '@salix/core'; + +export const NAME = 'login'; +export const module = vendors.ng.module(NAME,[core.NAME]); + diff --git a/login.html b/login.html index 66d138601f..40cff281a3 100644 --- a/login.html +++ b/login.html @@ -4,16 +4,11 @@ Salix - - + + - diff --git a/webpack.config.js b/webpack.config.js index e4c838a324..e288e78ecb 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -5,7 +5,8 @@ var path = require('path'); module.exports = { entry: { - 'salix.app': ['@salix/app'] + 'salix.app': ['@salix/app'], + 'salix.login': ['@salix/login'] }, output: { path: path.join(__dirname, 'build', 'public'),