Commit b66cd988 authored by Evren Kutar's avatar Evren Kutar

more than one same linked model on same form

parent 299b8a16
......@@ -10,7 +10,7 @@
// TODO: login url change with correct one
auth.factory('LoginService', function ($http, $rootScope, $location, $log, Session, RESTURL) {
auth.factory('LoginService', function ($http, $rootScope, $location, $log, RESTURL) {
var loginService = {};
loginService.login = function (url, credentials) {
......@@ -29,45 +29,18 @@ auth.factory('LoginService', function ($http, $rootScope, $location, $log, Sessi
};
loginService.logout = function () {
$log.info("logout");
$log.debug("logout");
return $http.post(RESTURL.url + 'logout', {}).success(function (data) {
$rootScope.loggedInUser = false;
$log.info("loggedout");
$log.debug("loggedout");
$location.path("/login");
});
};
loginService.isAuthenticated = function () {
return !!Session.userId;
};
loginService.isAuthorized = function (authorizedRoles) {
if (!angular.isArray(authorizedRoles)) {
authorizedRoles = [authorizedRoles];
}
return (loginService.isAuthenticated() &&
loginService.indexOf(Session.userRole) !== -1);
};
loginService.isValidEmail = function (email) {
var re = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
return re.test(email);
};
return loginService;
});
// TODO: initial service not working!!
auth.service('Session', function () {
this.create = function (sessionId, userId, userRole) {
this.id = sessionId;
this.userId = userId;
this.userRole = userRole;
};
this.destroy = function () {
this.id = null;
this.userId = null;
this.userRole = null;
};
});
\ No newline at end of file
......@@ -15,7 +15,7 @@
<ul class="dropdown-menu">
<li class="text-center" ng-if="form.gettingTitleMap"><a><span class="loader"></span></a></li>
<li ng-repeat="item in form.titleMap">
<a ng-click="form.onDropdownSelect(item, form.model_name)">{{item
<a ng-click="form.onDropdownSelect(item, form.name)">{{item
.name}}</a>
</li>
</ul>
......@@ -32,7 +32,7 @@
sf-changed="form"
class="form-control {{form.fieldHtmlClass}}"
schema-validate="form"
name="{{form.model_name}}"/>
name="{{form.name}}"/>
</div>
<div ng-show="loadingTitleMap" class="loader"></div>
<div ng-show="noResults">
......
......@@ -282,12 +282,12 @@ angular.module('formService', ['ui.bootstrap'])
try{
scope.$watch(document.querySelector('input[name=' + v.model_name + ']'),
function () {
angular.element(document.querySelector('input[name=' + v.model_name + ']')).val(data.data.object.unicode);
angular.element(document.querySelector('input[name=' + k + ']')).val(data.data.object.unicode);
}
);
}
catch(e) {
angular.element(document.querySelector('input[name=' + v.model_name + ']')).val(data.data.object.unicode);
angular.element(document.querySelector('input[name=' + k + ']')).val(data.data.object.unicode);
$log.debug('exception', e);
}
......@@ -302,7 +302,7 @@ angular.module('formService', ['ui.bootstrap'])
title: v.title,
wf: v.wf,
add_cmd: v.add_cmd,
name: v.model_name,
name: k,
model_name: v.model_name,
selected_item: {},
titleMap: [],
......
......@@ -78,16 +78,34 @@ describe('form service module', function () {
it('should generate function returns when no forms', inject['Generator',
function (Generator) {
var responseData = Generator.generate({testkey: 'testvalue'}, {form:{}});
var responseData = Generator.generate({testkey: 'testvalue'}, {form: {}});
expect(responseData = {testkey: 'testvalue'});
}]
);
it('should prepare form items', inject(['Generator',
function (Generator) {
it('should prepare form items', inject(
function (Generator, $httpBackend, RESTURL) {
expect(Generator.prepareFormItems).not.toBe(null);
$httpBackend.expectPOST(RESTURL.url + 'test', {
cmd: 'list',
model: "personel",
object_id: "5821bc25a90aa1"
})
.respond(200, {
items: {
"client_cmd": "list_objects",
"is_login": true,
"objects": [
["Ad\u0131", "Soyad\u0131", "TC No", "Durum"],
["4MsKRH9435cdKOzKCITNPml5bhB", "firstname", "lastname", "dksoap", false]
],
"token": "0122b2843f504c15821bc25a90aa1370"
}
});
var scope = {
wf: 'test',
form: ['email', 'id', 'name', 'save', 'select', 'date', 'date2', 'text_general', 'model', 'node', 'listnode'],
schema: {
properties: {
......@@ -99,9 +117,14 @@ describe('form service module', function () {
date: {title: 'date', type: 'date'},
date2: {title: 'date', type: 'date'},
text_general: {title: 'text_general', type: 'text_general'},
model: {title: 'model', type: 'model'},
model: {title: 'model', type: 'model', model_name: 'modelfield', list_cmd: 'list'},
node: {title: 'Node', type: 'Node'},
listnode: {title: 'ListNode', type: 'ListNode', widget: 'filter_interface', schema: [{'name': 'testname'}]}
listnode: {
title: 'ListNode',
type: 'ListNode',
widget: 'filter_interface',
schema: [{'name': 'testname'}]
}
}, required: [], type: 'object', title: 'servicetest'
},
model: {
......@@ -118,24 +141,12 @@ describe('form service module', function () {
form_params: {param: 'id', param_id: '123'}
};
var form_json = {
form: ['email', 'id', 'name'],
schema: {
properties: {
email: {title: 'email', type: 'email'},
id: {title: 'id', type: 'number'},
name: {title: 'name', type: 'string'}
}, required: [], type: 'object', title: 'servicetest'
},
model: {email: 'test@test.com', id: 2, name: 'travolta'},
form_params: {}
};
var form_generated = Generator.prepareFormItems(scope);
expect(form_generated.form).toBeDefined();
}])
expect(form_generated.form[7].type).toEqual('template')
})
);
it('should format date', inject(['Generator',
......@@ -472,8 +483,8 @@ describe('form service module', function () {
it('should return diff array',
inject(function (Generator) {
var diff = Generator.get_diff_array([1,2,3], [2]);
expect(diff).toEqual([1,3]);
var diff = Generator.get_diff_array([1, 2, 3], [2]);
expect(diff).toEqual([1, 3]);
})
)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment