Code Duplication    Length = 12-12 lines in 2 locations

src/Models/Permission.php 1 location

@@ 127-138 (lines=12) @@
124
     *
125
     * @return \Spatie\Permission\Contracts\Permission
126
     */
127
    public static function findOrCreate(string $name, $guardName = null): PermissionContract
128
    {
129
        $guardName = $guardName ?? Guard::getDefaultName(static::class);
130
131
        $permission = static::getPermissions()->where('name', $name)->where('guard_name', $guardName)->first();
132
133
        if (! $permission) {
134
            return static::create(['name' => $name, 'guard_name' => $guardName]);
135
        }
136
137
        return $permission;
138
    }
139
140
    /**
141
     * Get the current cached permissions.

src/Models/Role.php 1 location

@@ 116-127 (lines=12) @@
113
     *
114
     * @return \Spatie\Permission\Contracts\Role
115
     */
116
    public static function findOrCreate(string $name, $guardName = null): RoleContract
117
    {
118
        $guardName = $guardName ?? Guard::getDefaultName(static::class);
119
120
        $role = static::where('name', $name)->where('guard_name', $guardName)->first();
121
122
        if (! $role) {
123
            return static::create(['name' => $name, 'guard_name' => $guardName]);
124
        }
125
126
        return $role;
127
    }
128
129
    /**
130
     * Determine if the user may perform the given permission.