Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/LimitlessDonald/permitta
/ functions
Functions
30 in github.com/LimitlessDonald/permitta
⨍
Functions
30
◇
Types & classes
7
↓ 5 callers
Method
setDefaultLimits
setDefaultLimits is useful for setting the default batch limit to 1 if its 0, because batch limit can't be unlimited
permissions.go:62
↓ 3 callers
Function
IsEntityOperationPermitted
(operation string, entityPermissions Permission)
permissions.go:442
↓ 3 callers
Function
isEntityValid
(entityName string)
permissions.go:661
↓ 3 callers
Function
stringToPositiveIntegerOrZero
(s string)
permissions.go:1229
↓ 2 callers
Function
NotationToPermission
TODO add a way to write this permissions in shorthand , both for obscurity and quick writing of permissions Then write a function to intepreter that s
permissions.go:750
↓ 2 callers
Method
getBatchLimit
getBatchLimit is useful for setting the default batch limit to 1 if its 0, because batch limit can't be unlimited
permissions.go:54
↓ 2 callers
Function
getEntityPermission
(entityName string, permissionRequestData PermissionRequestData)
permissions.go:609
↓ 2 callers
Function
getEntityPermissionOrder
(permissionOrder string)
permissions.go:571
↓ 2 callers
Function
isOperationValid
(operation string)
permissions.go:553
↓ 2 callers
Method
sanitizeDurationUsage
sanitizeDurationUsage is a setter to "sanitize" value of the usage durations We need limit duration setters because their value can't always be trust
permissions.go:91
↓ 1 callers
Function
GetOperationLimits
(operation string, permission Permission)
permissions.go:485
↓ 1 callers
Function
IsOperationPermitted
(permissionRequestData PermissionRequestData)
permissions.go:163
↓ 1 callers
Function
IsOperationPermittedWithUsage
todo [LATER] optimise this function , its looping through the permissions twice IsOperationPermittedWithUsage is a function to check if operation is p
permissions.go:216
↓ 1 callers
Function
firstLetterToUppercase
(s string)
permissions.go:566
↓ 1 callers
Function
getEntityPermissionUsage
(entityName string, usageRequestData PermissionWithUsageRequestData)
permissions.go:635
↓ 1 callers
Function
getNotationOperationCustomLimitValue
getNotationOperationCustomLimitValue receives limit data like "custom:[per_5_minutes_10&per_2_month_90]"
permissions.go:1039
↓ 1 callers
Function
getNotationOperationLimitAndValue
getNotationOperationLimitAndValue receives limit data like "week:5" or "batch:3"
permissions.go:990
↓ 1 callers
Function
getNotationOperationLimits
(operationLimitsString string)
permissions.go:1092
↓ 1 callers
Function
removeAllWhiteSpaces
(s string)
permissions.go:1246
↓ 1 callers
Function
replaceLastOccurrence
(s, old, new string)
permissions.go:674
↓ 1 callers
Function
sanitizeNotation
sanitizeNotation is a function that "cleans up " notations and remove unnecessary sections , it doesn't validate, it only cleans up
permissions.go:683
Function
GetOperationLimitsHumanFriendly
GetOperationLimitsHumanFriendly outputs the limits in a map of human friendly format. For example, since 0 denotes "unlimited", we want to literally h
permissions.go:533
Function
GetOperationUsages
(operation string, permissionUsage PermissionUsage)
permissions.go:506
Function
RequestMethodToOperation
RequestMethodToOperation receives a valid HTTP request method and converts it to an operation, using the standard REST conventions of : POST => creat
permissions.go:1210
Function
TestIsEntityOperationPermitted
func TestNotationToPermission(t *testing.T) { notationString := "cr-d-|c=all:20|r=all:10,batch:4,minute:3,hour:5,day:70,week:400,fortnight:600,month:
permissions_test.go:171
Function
TestIsOperationPermitted
(t *testing.T)
permissions_test.go:106
Function
TestIsOperationPermittedWithUsage
(t *testing.T)
permissions_test.go:123
Function
TestPlayground
(t *testing.T)
permissions_test.go:182
Function
UpdateUsage
(updateUsageData UpdateUsageData, usage PermissionUsage)
permissions.go:1261
Function
getCustomLimitsNotationValues
(customLimitValue string)
permissions.go:1080