diff --git a/src/app/account/register-terms.html b/src/app/account/register-terms.html
new file mode 100644
index 0000000..de90dbe
--- /dev/null
+++ b/src/app/account/register-terms.html
@@ -0,0 +1,7 @@
+
+
+
diff --git a/src/app/account/register.component.ts b/src/app/account/register.component.ts
index 41fdd35..110fdc5 100644
--- a/src/app/account/register.component.ts
+++ b/src/app/account/register.component.ts
@@ -2,6 +2,8 @@ import { Inject, Input, Component, Output, EventEmitter, provide } from 'ng-forw
import { RegisterService } from "./../../lib/ng-noosfero-api/http/register.service";
import { NotificationService } from "./../shared/services/notification.service";
import { EnvironmentService } from "../../lib/ng-noosfero-api/http/environment.service";
+import { RegisterController } from "./register.controller";
+import { IModalComponent } from "../shared/components/interfaces";
@Component({
selector: 'noosfero-register',
@@ -11,16 +13,20 @@ import { EnvironmentService } from "../../lib/ng-noosfero-api/http/environment.s
]
})
-@Inject("$state", RegisterService, NotificationService, EnvironmentService)
+@Inject('$state', '$uibModal', '$scope', RegisterService, NotificationService, EnvironmentService)
export class RegisterComponent {
@Input() account: any;
environment: noosfero.Environment;
+ modalInstance: ng.ui.bootstrap.IModalServiceInstance;
+
constructor(
private $state: ng.ui.IStateService,
+ private $uibModal: ng.ui.bootstrap.IModalService,
+ private $scope: ng.IScope,
public registerService: RegisterService,
private notificationService: NotificationService,
- private environmentService: EnvironmentService
+ private environmentService: EnvironmentService,
) {
this.account = {};
this.environment = environmentService.getCurrentEnvironment();
@@ -44,4 +50,16 @@ export class RegisterComponent {
isInvalid(field: Object): Object {
return { 'has-error': field['$touched'] && field['$invalid'] };
}
+
+ openTerms() {
+
+ this.modalInstance = this.$uibModal.open({
+ templateUrl: 'app/account/register-terms.html',
+ size: 'lg',
+ controller: RegisterController,
+ controllerAs: 'vm',
+ bindToController: true,
+ scope: this.$scope
+ });
+ }
}
diff --git a/src/app/account/register.controller.ts b/src/app/account/register.controller.ts
new file mode 100644
index 0000000..71fa4c4
--- /dev/null
+++ b/src/app/account/register.controller.ts
@@ -0,0 +1,17 @@
+import { Input } from "ng-forward";
+import { IModalComponent } from "../shared/components/interfaces";
+
+export class RegisterController {
+
+ static $inject = ["$log", "$stateParams", "$scope"];
+ ctrl: IModalComponent;
+
+ constructor(
+ private $log: ng.ILogService,
+ private $stateParams: any,
+ ) { }
+
+ closeTerms() {
+ this.ctrl.modalInstance.dismiss('ok');
+ }
+}
diff --git a/src/app/account/scss/register-component.scss b/src/app/account/scss/register-component.scss
deleted file mode 100644
index 99c0f2d..0000000
--- a/src/app/account/scss/register-component.scss
+++ /dev/null
@@ -1,38 +0,0 @@
-.register-page button {
- width: 100%;
- text-transform: uppercase;
- font-weight: 600;
-}
-
-.register-page .light-text {
- color: #BBB;
- margin-top: 0px;
- margin-bottom: 0px;
- font-weight: 600;
-}
-
-.register-page .terms-info {
- margin-top: 30px;
- margin-bottom: 30px;
-}
-
-.register-page .welcome-message {
- text-align: center;
-}
-
-.register-page .already-registered-message {
- margin-top: 60px;
- text-align: center;
-}
-
-.register-page input {
- height: 40px;
-}
-
-.register-page .register-field {
- margin-bottom: 25px;
-}
-
-.register-page input:focus {
- border: 2px solid #bbb;
-}
diff --git a/src/app/account/scss/register.scss b/src/app/account/scss/register.scss
new file mode 100644
index 0000000..00277e1
--- /dev/null
+++ b/src/app/account/scss/register.scss
@@ -0,0 +1,44 @@
+.modal .modal-body-overflow {
+ max-height: 420px;
+ overflow-y: auto;
+}
+
+.register-page button {
+ width: 100%;
+ text-transform: uppercase;
+ font-weight: 600;
+}
+
+.register-page .light-text {
+ color: #BBB;
+ margin-top: 0px;
+ margin-bottom: 0px;
+ font-weight: 600;
+}
+
+.register-page .terms-info {
+ margin-top: 30px;
+ margin-bottom: 30px;
+ font-weight: bold;
+}
+
+.register-page .welcome-message {
+ text-align: center;
+}
+
+.register-page .already-registered-message {
+ margin-top: 60px;
+ text-align: center;
+}
+
+.register-page input {
+ height: 40px;
+}
+
+.register-page .register-field {
+ margin-bottom: 25px;
+}
+
+.register-page input:focus {
+ border: 2px solid #bbb;
+}
diff --git a/src/app/layout/navbar/navbar.ts b/src/app/layout/navbar/navbar.ts
index ef338ee..64e4771 100644
--- a/src/app/layout/navbar/navbar.ts
+++ b/src/app/layout/navbar/navbar.ts
@@ -1,11 +1,11 @@
-import {Component, Inject, EventEmitter, Input} from "ng-forward";
-import {LanguageSelectorComponent} from "../language-selector/language-selector.component";
-import {SessionService, AuthService, AuthController, AuthEvents} from "./../../login";
-import {EnvironmentService} from "./../../../lib/ng-noosfero-api/http/environment.service";
-import {SidebarNotificationService} from "../sidebar/sidebar.notification.service";
-import {BodyStateClassesService} from '../services/body-state-classes.service';
-import {DesignModeTogglerComponent} from './../../admin/layout-edit/designModeToggler.component';
-import {BootstrapSwitcherComponent, BootstrapSwitcherItem} from './../../shared/components/bootstrap-switcher/bootstrap-switcher.component';
+import { Component, Inject, EventEmitter, Input } from "ng-forward";
+import { LanguageSelectorComponent } from "../language-selector/language-selector.component";
+import { SessionService, AuthService, AuthController, AuthEvents } from "./../../login";
+import { EnvironmentService } from "./../../../lib/ng-noosfero-api/http/environment.service";
+import { SidebarNotificationService } from "../sidebar/sidebar.notification.service";
+import { BodyStateClassesService } from '../services/body-state-classes.service';
+import { DesignModeTogglerComponent } from './../../admin/layout-edit/designModeToggler.component';
+import { BootstrapSwitcherComponent, BootstrapSwitcherItem } from './../../shared/components/bootstrap-switcher/bootstrap-switcher.component';
@Component({
selector: "acme-navbar",
@@ -17,14 +17,14 @@ import {BootstrapSwitcherComponent, BootstrapSwitcherItem} from './../../shared/
export class Navbar {
private currentUser: noosfero.User;
- private modalInstance: any = null;
+ private modalInstance: ng.ui.bootstrap.IModalServiceInstance;
public showHamburger: boolean = false;
public currentEnvironment: noosfero.Environment =
{ name: '' };
/**
*
*/
constructor(
- private $uibModal: any,
+ private $uibModal: ng.ui.bootstrap.IModalService,
public authService: AuthService,
private session: SessionService,
private $state: ng.ui.IStateService,
diff --git a/src/app/shared/components/interfaces.ts b/src/app/shared/components/interfaces.ts
index bcce69c..8f932a4 100644
--- a/src/app/shared/components/interfaces.ts
+++ b/src/app/shared/components/interfaces.ts
@@ -1,5 +1,8 @@
-
-
export interface IComponentWithPermissions {
permissions: () => string[];
-}
\ No newline at end of file
+}
+
+export interface IModalComponent {
+ $uibModal: ng.ui.bootstrap.IModalService;
+ modalInstance: ng.ui.bootstrap.IModalServiceInstance;
+}
diff --git a/src/languages/en.json b/src/languages/en.json
index ac59eec..e16e922 100644
--- a/src/languages/en.json
+++ b/src/languages/en.json
@@ -103,8 +103,6 @@
"time.at": "at",
"date.on": "On",
"account.register.welcomeMessageTitle": "Nice to have you there!",
- "account.register.seeMoreMessage": "See more ",
- "account.register.informationsMessage": "informations",
"account.register.fullNameLabel": "Full name",
"account.register.usernameLabel": "Username",
"account.register.emailLabel": "Email",
@@ -120,5 +118,6 @@
"messages.invalid.required": "This field is required",
"messages.invalid.maxlength": "This field is too long",
"messages.invalid.minlength": "This field is too short",
- "messages.invalid.email": "This needs to be a valid email"
+ "messages.invalid.email": "This needs to be a valid email",
+ "messages.invalid.passwordConfirm": "Passwords do not match"
}
diff --git a/src/languages/pt.json b/src/languages/pt.json
index 95a5edf..1c74f32 100644
--- a/src/languages/pt.json
+++ b/src/languages/pt.json
@@ -121,5 +121,6 @@
"messages.invalid.required": "Campo obrigatório",
"messages.invalid.maxlength": "O valor é muito longo",
"messages.invalid.minlength": "O valor é muito curto",
- "messages.invalid.email": "Informe um email válido"
+ "messages.invalid.email": "Informe um email válido",
+ "messages.invalid.passwordConfirm": "As senhas não coincidem"
}
--
libgit2 0.21.2