import policyClasses from '@Global/policy'; import { UserService } from "@Global/services/storage.services"; import globalStore from "@Global/store"; import authStore from "@Core/store"; export default (model, object, module = null) => { //Access To All Place For Site Manager let siteOwner = UserService.get().is_owner == "true"; if (siteOwner) { return true; } let policyClass = model.split('::')[0] + 'Policy'; let policymethod = model.split('::')[1]; module = module ? module : globalStore.state.common.current_module; let rootPermissions = authStore.state.auth.permissions; let permissions = rootPermissions[module] ? Object.values(rootPermissions[module]) : [] ; //instance policty class let policy = new policyClasses[policyClass]; if (typeof policy == 'object' && typeof policy[policymethod] == 'function' ) { return policy[policymethod]({module, rootPermissions, permissions}, object); } else { return false; } };