system: invite add and list
This commit is contained in:
parent
238c5311e3
commit
bba52f1b0c
|
@ -1,14 +1,27 @@
|
|||
.container
|
||||
h1 Invites
|
||||
a.btn.btn-default
|
||||
a.btn.btn-default(ng-click="isAdding=true")
|
||||
span.glyphicon.glyphicon-plus
|
||||
form(ng-submit="add()",name="addform",ng-if="isAdding")
|
||||
.form-group
|
||||
label(for="username") Username
|
||||
input.form-control(id="username",name="username",ng-model="obj.username",ng-minlength="3")
|
||||
.form-group(ng-class="{'has-error': (error.fields.indexOf('newpassword') >= 0 || !addform.newPassword.$valid)}")
|
||||
label(for="newPassword") New Password
|
||||
input.form-control(id="newPassword",type="password",name="newPassword",ng-model="obj.password",ng-minlength="3")
|
||||
.form-group(ng-class="{'has-error': (obj.password != obj.repeatPassword && addform.repeatPassword.$dirty)}")
|
||||
label(for="repeatPassword") Again Password
|
||||
input.form-control(id="repeatPassword",type="password",name="repeatPassword",ng-model="obj.repeatPassword")
|
||||
button.btn.btn-primary(type="submit")
|
||||
span.glyphicon.glyphicon-floppy-disk
|
||||
| Save
|
||||
table.table.table-bordered(ng-table="tableParams")
|
||||
tr(ng-hide='group.$hideRows',ng-repeat="item in $data")
|
||||
td(data-title="'#'") {{item.invited.ID}}
|
||||
td(data-title="'Hostname'", filter="{'invited.username': 'text'}")
|
||||
span(ng-if="!item.isEditing") {{item.invited.username}}
|
||||
h4(ng-if="item.isEditing") Username: {{item.invited.username}}
|
||||
form(ng-submit="submit(item)",name="myform",ng-if="item.isEditing")
|
||||
form(ng-submit="submit(obj)",name="myform",ng-if="item.isEditing")
|
||||
.form-group(ng-class="{'has-error': (error.fields.indexOf('newpassword') >= 0 || !myform.newPassword.$valid)}")
|
||||
label(for="newPassword") New Password
|
||||
input.form-control(id="newPassword",type="password",name="newPassword",ng-model="obj.newPassword",ng-minlength="3")
|
||||
|
|
|
@ -7,10 +7,36 @@ angular.module('warehost')
|
|||
total: 0,
|
||||
count: config.table.count
|
||||
}, { dataset: [] });
|
||||
$scope.list = {};
|
||||
alert.set({});
|
||||
$http.get(config.api+'/invite').then(function(res){
|
||||
session.set(res);
|
||||
$scope.tableParams.settings({dataset: angular.copy(res.data.data),total: (res.data.data).length});
|
||||
});
|
||||
$scope.list = {};
|
||||
function resetObj(){
|
||||
$scope.obj = {};
|
||||
var username = session.get().login.username;
|
||||
if(username.indexOf('@')<0){
|
||||
$scope.obj.username = username+'@';
|
||||
}
|
||||
}
|
||||
function load(){
|
||||
$http.get(config.api+'/invite').then(function(res){
|
||||
session.set(res);
|
||||
$scope.tableParams.settings({dataset: angular.copy(res.data.data),total: (res.data.data).length});
|
||||
});
|
||||
}
|
||||
resetObj();
|
||||
load();
|
||||
|
||||
$scope.submit = function(a){
|
||||
console.log(a);
|
||||
};
|
||||
$scope.add = function(){
|
||||
$http.post(config.api+'/invite',$scope.obj).then(function(res){
|
||||
session.set(res);
|
||||
alert.set(res);
|
||||
if(res.data.data){
|
||||
load();
|
||||
resetObj();
|
||||
$scope.isAdding = false;
|
||||
}
|
||||
});
|
||||
};
|
||||
});
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
angular.module('config', [])
|
||||
.factory('config', function() {
|
||||
return {
|
||||
api: 'http://[::1]:8080',
|
||||
api: 'https://apiv2.warehost.de',
|
||||
table: {
|
||||
count: 25
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"ADDRESS":"http://[::1]:8080",
|
||||
"testdata":{
|
||||
"username":"genofire",
|
||||
"password":"fire35911"
|
||||
"username":"root",
|
||||
"password":"root"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,6 +18,26 @@ describe('API',->
|
|||
)
|
||||
)
|
||||
describe('invite',->
|
||||
describe('add',->
|
||||
it('-> validate',(done)->
|
||||
lib.login((j)->
|
||||
invite = {
|
||||
username: 'test',
|
||||
password:'test'
|
||||
}
|
||||
request({method: 'POST',uri:config.ADDRESS+"/invite",jar:j,json:invite},(err,res,body)->
|
||||
expect(err).to.be.null
|
||||
expect(res.statusCode).to.be.equal(200)
|
||||
if(typeof body == "string")
|
||||
body = JSON.parse(body)
|
||||
expect(body.error).to.be.undefined
|
||||
expect(body.data).to.be.true
|
||||
expect(body.session.login).to.not.be.null
|
||||
done()
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
describe('list',->
|
||||
it('-> validate',(done)->
|
||||
lib.login((j)->
|
||||
|
@ -26,9 +46,9 @@ describe('API',->
|
|||
expect(res.statusCode).to.be.equal(200)
|
||||
if(typeof body == "string")
|
||||
body = JSON.parse(body)
|
||||
console.log(body.data)
|
||||
expect(body.error).to.be.null
|
||||
expect(body.session.login).to.be.undefined
|
||||
expect(body.error).to.be.undefined
|
||||
expect(body.data).to.be.a("array")
|
||||
expect(body.session.login).to.not.be.null
|
||||
done()
|
||||
)
|
||||
)
|
||||
|
@ -76,7 +96,7 @@ describe('API',->
|
|||
if(typeof body == "string")
|
||||
body = JSON.parse(body)
|
||||
expect(body.data).to.be.true
|
||||
expect(body.error).to.be.null
|
||||
expect(body.error).to.be.undefined
|
||||
expect(body.session.login.active).to.be.true
|
||||
done()
|
||||
)
|
||||
|
@ -103,8 +123,8 @@ describe('API',->
|
|||
if(typeof body == "string")
|
||||
body = JSON.parse(body)
|
||||
expect(body.data).to.be.true
|
||||
expect(body.error).to.be.null
|
||||
expect(body.session.login).to.be.null
|
||||
expect(body.error).to.be.undefined
|
||||
expect(body.session.login).to.be.undefined
|
||||
done()
|
||||
)
|
||||
)
|
||||
|
@ -123,7 +143,7 @@ describe('API',->
|
|||
expect(body.data).to.be.false
|
||||
expect(body.error.msg).to.not.be.null
|
||||
expect(body.error.fields).to.include('session')
|
||||
expect(body.session.login).to.be.null
|
||||
expect(body.session.login).to.be.undefined
|
||||
done()
|
||||
)
|
||||
)
|
||||
|
@ -158,7 +178,7 @@ describe('API',->
|
|||
expect(body.data).to.be.false
|
||||
expect(body.error.msg).to.not.be.null
|
||||
expect(body.error.fields).to.include('newpassword')
|
||||
expect(body.session.login).to.not.be.null
|
||||
expect(body.session.login).to.not.be.undefined
|
||||
done()
|
||||
)
|
||||
)
|
||||
|
@ -174,7 +194,7 @@ describe('API',->
|
|||
if(typeof body == "string")
|
||||
body = JSON.parse(body)
|
||||
expect(body.data).to.be.true
|
||||
expect(body.error).to.be.null
|
||||
expect(body.error).to.be.undefined
|
||||
request({method: 'POST',uri: config.ADDRESS+"/password",json:{
|
||||
currentpassword: config.testdata.password+"f",
|
||||
newpassword: config.testdata.password,
|
||||
|
@ -196,7 +216,7 @@ describe('API',->
|
|||
expect(body.data).to.be.false
|
||||
expect(body.error.msg).to.not.be.null
|
||||
expect(body.error.fields).to.include('session')
|
||||
expect(body.session.login).to.be.null
|
||||
expect(body.session.login).to.be.undefined
|
||||
done()
|
||||
)
|
||||
)
|
||||
|
@ -208,8 +228,8 @@ describe('API',->
|
|||
if(typeof body == "string")
|
||||
body = JSON.parse(body)
|
||||
expect(body.data).to.be.true
|
||||
expect(body.error).to.be.null
|
||||
expect(body.session.login).to.be.null
|
||||
expect(body.error).to.be.undefined
|
||||
expect(body.session.login).to.be.undefined
|
||||
done()
|
||||
)
|
||||
)
|
||||
|
|
Reference in New Issue