Files
SCM-Manager/scm-ui/ui-webapp/src/repos/permissions/components/permissionValidation.ts

33 lines
756 B
TypeScript
Raw Normal View History

import { validation } from '@scm-manager/ui-components';
import { PermissionCollection } from '@scm-manager/ui-types';
2018-10-19 08:44:03 +02:00
2018-10-02 15:27:51 +02:00
const isNameValid = validation.isNameValid;
export { isNameValid };
2018-10-18 15:20:30 +02:00
export const isPermissionValid = (
name: string,
groupPermission: boolean,
permissions: PermissionCollection,
2018-10-18 15:20:30 +02:00
) => {
return (
isNameValid(name) &&
!currentPermissionIncludeName(name, groupPermission, permissions)
);
2018-10-02 15:27:51 +02:00
};
2018-10-18 15:20:30 +02:00
const currentPermissionIncludeName = (
name: string,
groupPermission: boolean,
permissions: PermissionCollection,
2018-10-18 15:20:30 +02:00
) => {
2018-10-02 15:27:51 +02:00
for (let i = 0; i < permissions.length; i++) {
if (
permissions[i].name === name &&
2018-10-18 15:20:30 +02:00
permissions[i].groupPermission === groupPermission
2018-10-02 15:27:51 +02:00
)
return true;
}
return false;
};