| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 |
- commit 477f66f56bdd7f310d439ac428cb646fbb9b1949
- Author: Torkel Ödegaard <torkel.odegaard@gmail.com>
- Date: Fri Aug 22 15:32:20 2014 +0200
- dashobard load/save work, and began register view
- diff --git a/src/app/partials/pro/login.html b/src/app/partials/pro/login.html
- index 92f1c4e89..22340b89f 100644
- --- a/src/app/partials/pro/login.html
- +++ b/src/app/partials/pro/login.html
- @@ -42,6 +42,12 @@
- <strong>Login failed:</strong> {{loginError}}
- </div>
- </form>
- +
- + <div class="register-box text-center">
- + <h3>If you do not already have an account<h3>
- + </a> <a href="/register" class="btn btn-info btn-large">Sign up now!</a>
- + </div>
- +
- </div>
-
-
- diff --git a/src/app/partials/pro/register.html b/src/app/partials/pro/register.html
- new file mode 100644
- index 000000000..3a3ffe0b4
- --- /dev/null
- +++ b/src/app/partials/pro/register.html
- @@ -0,0 +1,48 @@
- +
- +<div class="container">
- +
- + <div class="login-box">
- +
- + <div class="login-box-logo">
- + <img src="/img/logo_transparent_200x75.png">
- + <h3>Grafana account registration</32>
- + </div>
- +
- + <form name="loginForm" class="form-horizontal">
- + <div class="row-fluid">
- + <div class="span8">
- + <div class="control-group">
- + <label class="control-label" for="inputEmail">Email</label>
- + <div class="controls">
- + <input type="text" required ng-model="loginModel.email" id="inputEmail" placeholder="Email">
- + </div>
- + </div>
- + <div class="control-group">
- + <label class="control-label" for="inputPassword">Password</label>
- + <div class="controls">
- + <input type="password" required ng-model="loginModel.password" id="inputPassword" placeholder="Password">
- + </div>
- + </div>
- + <div class="control-group">
- + <label class="control-label" for="inputPassword2">Confirm password</label>
- + <div class="controls">
- + <input type="password" required ng-model="loginModel.password2" id="password2" placeholder="Confirm password">
- + </div>
- + </div>
- + </div>
- + <div class="span4">
- + <button type="submit" ng-click="login()" class="btn btn-success btn-large">
- + <i class="icon-lock"></i>
- + Sign up
- + </button>
- + </div>
- + </div>
- + <div class="alert alert-error" ng-show="loginError">
- + <button type="button" class="close" data-dismiss="alert">×</button>
- + <strong>Login failed:</strong> {{loginError}}
- + </div>
- + </form>
- + </div>
- +
- +
- +</div>
- diff --git a/src/app/routes/p_dashboard.js b/src/app/routes/p_dashboard.js
- index ef5da131e..8c4b8d438 100644
- --- a/src/app/routes/p_dashboard.js
- +++ b/src/app/routes/p_dashboard.js
- @@ -13,7 +13,7 @@ function (angular) {
- controller : 'DashFromDBProvider',
- reloadOnSearch: false,
- })
- - .when('/dashboard/:id', {
- + .when('/dashboard/db/:id', {
- templateUrl: '/app/partials/dashboard.html',
- controller : 'DashFromDBProvider',
- reloadOnSearch: false,
- diff --git a/src/app/routes/p_login.js b/src/app/routes/p_login.js
- index 127c4d47f..e97bba49a 100644
- --- a/src/app/routes/p_login.js
- +++ b/src/app/routes/p_login.js
- @@ -11,9 +11,47 @@ function (angular) {
- .when('/login', {
- templateUrl: 'app/partials/pro/login.html',
- controller : 'LoginCtrl',
- + })
- + .when('/register', {
- + templateUrl: 'app/partials/pro/register.html',
- + controller : 'RegisterCtrl',
- });
- });
-
- + module.controller('RegisterCtrl', function($scope, $http, $location, $routeParams) {
- + $scope.loginModel = {};
- +
- + $scope.init = function() {
- + if ($routeParams.logout) {
- + $scope.logout();
- + }
- + };
- +
- + $scope.register = function() {
- + delete $scope.registerError;
- +
- + if (!$scope.loginForm.$valid) {
- + return;
- + }
- +
- + $http.post('/api/register/user', $scope.loginModel).then(function() {
- + $scope.emitAppEvent('logged-in');
- + $location.path('/');
- + }, function(err) {
- + if (err.status === 401) {
- + $scope.registerError = "Username or password is incorrect";
- + }
- + else {
- + $scope.loginError = "Unexpected error";
- + }
- + });
- + };
- +
- + $scope.init();
- +
- + });
- +
- +
- module.controller('LoginCtrl', function($scope, $http, $location, $routeParams, alertSrv) {
- $scope.loginModel = {};
-
- diff --git a/src/app/services/grafana/grafanaDatasource.js b/src/app/services/grafana/grafanaDatasource.js
- index 9b83e4f36..684d0abe2 100644
- --- a/src/app/services/grafana/grafanaDatasource.js
- +++ b/src/app/services/grafana/grafanaDatasource.js
- @@ -49,7 +49,7 @@ function (angular) {
-
- return $http.post('/api/dashboard/', { dashboard: dashboard })
- .then(function(result) {
- - return { title: dashboard.title, url: '/dashboard/' + result.data.slug };
- + return { title: dashboard.title, url: '/dashboard/db/' + result.data.slug };
- }, function(data) {
- throw "Failed to search: " + data;
- });
|