Skip to content

Commit 4ffe0ed

Browse files
committed
Remove "Enable user-based access" option.
1 parent d61fcaa commit 4ffe0ed

File tree

4 files changed

+3
-90
lines changed

4 files changed

+3
-90
lines changed

includes/Classifai/Admin/UserProfile.php

-2
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,6 @@ public function get_allowed_features( int $user_id ): array {
147147
continue;
148148
}
149149

150-
$user_based_access_enabled = isset( $settings['user_based_access'] ) && 1 === (int) $settings['user_based_access'];
151150
$user_based_opt_out_enabled = isset( $settings['user_based_opt_out'] ) && 1 === (int) $settings['user_based_opt_out'];
152151

153152
// Bail if user opt-out is not enabled.
@@ -173,7 +172,6 @@ public function get_allowed_features( int $user_id ): array {
173172
// Check if user has access to the feature.
174173
$allowed_users = $settings['users'] ?? [];
175174
if (
176-
$user_based_access_enabled &&
177175
! empty( $allowed_users ) &&
178176
in_array( $user_id, $allowed_users, true )
179177
) {

includes/Classifai/Features/Feature.php

+3-33
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,6 @@ protected function get_default_settings(): array {
179179
$shared_defaults = [
180180
'status' => '0',
181181
'roles' => array_combine( array_keys( $this->roles ), array_keys( $this->roles ) ),
182-
'user_based_access' => 'no',
183182
'users' => [],
184183
'user_based_opt_out' => 'no',
185184
];
@@ -228,12 +227,6 @@ public function sanitize_settings( array $settings ): array {
228227
$new_settings['roles'] = $current_settings['roles'];
229228
}
230229

231-
if ( empty( $settings['user_based_access'] ) || 1 !== (int) $settings['user_based_access'] ) {
232-
$new_settings['user_based_access'] = 'no';
233-
} else {
234-
$new_settings['user_based_access'] = '1';
235-
}
236-
237230
// Allowed users.
238231
if ( isset( $settings['users'] ) && ! empty( $settings['users'] ) ) {
239232
if ( is_array( $settings['users'] ) ) {
@@ -456,27 +449,6 @@ protected function add_access_control_fields() {
456449
]
457450
);
458451

459-
add_settings_field(
460-
'user_based_access',
461-
esc_html__( 'Enable user-based access', 'classifai' ),
462-
[ $this, 'render_input' ],
463-
$this->get_option_name(),
464-
$this->get_option_name() . '_section',
465-
[
466-
'label_for' => 'user_based_access',
467-
'input_type' => 'checkbox',
468-
'default_value' => $settings['user_based_access'],
469-
'description' => __( 'Enables ability to select which users can access this feature.', 'classifai' ),
470-
'class' => 'classifai-user-based-access',
471-
]
472-
);
473-
474-
// Add hidden class if user-based access is disabled.
475-
$users_class = 'allowed_users_row';
476-
if ( ! isset( $settings['user_based_access'] ) || '1' !== $settings['user_based_access'] ) {
477-
$users_class .= ' hidden';
478-
}
479-
480452
add_settings_field(
481453
'users',
482454
esc_html__( 'Allowed users', 'classifai' ),
@@ -487,7 +459,7 @@ protected function add_access_control_fields() {
487459
'label_for' => 'users',
488460
'default_value' => $settings['users'],
489461
'description' => __( 'Users who have access to this feature.', 'classifai' ),
490-
'class' => $users_class,
462+
'class' => 'allowed_users_row',
491463
]
492464
);
493465

@@ -902,7 +874,6 @@ public function has_access(): bool {
902874
$feature_roles = $settings['roles'] ?? [];
903875
$feature_users = array_map( 'absint', $settings['users'] ?? [] );
904876

905-
$user_based_access_enabled = isset( $settings['user_based_access'] ) && 1 === (int) $settings['user_based_access'];
906877
$user_based_opt_out_enabled = isset( $settings['user_based_opt_out'] ) && 1 === (int) $settings['user_based_opt_out'];
907878

908879
/*
@@ -916,9 +887,9 @@ public function has_access(): bool {
916887
$access = ( ! empty( $feature_roles ) && ! empty( array_intersect( $user_roles, $feature_roles ) ) );
917888

918889
/*
919-
* Checks if User-based access is enabled and user has access to the feature.
890+
* Checks if has access to the feature.
920891
*/
921-
if ( ! $access && $user_based_access_enabled ) {
892+
if ( ! $access ) {
922893
$access = ( ! empty( $feature_users ) && ! empty( in_array( $user_id, $feature_users, true ) ) );
923894
}
924895

@@ -1130,7 +1101,6 @@ function ( $role ) {
11301101
__( 'Authenticated', 'classifai' ) => self::get_debug_value_text( $this->is_configured() ),
11311102
__( 'Status', 'classifai' ) => self::get_debug_value_text( $feature_settings['status'], 1 ),
11321103
__( 'Allowed roles (titles)', 'classifai' ) => implode( ', ', $roles ?? [] ),
1133-
__( 'User-based access', 'classifai' ) => self::get_debug_value_text( $feature_settings['user_based_access'], 1 ),
11341104
__( 'Allowed users (titles)', 'classifai' ) => implode( ', ', $feature_settings['users'] ?? [] ),
11351105
__( 'User based opt-out', 'classifai' ) => self::get_debug_value_text( $feature_settings['user_based_opt_out'], 1 ),
11361106
__( 'Provider', 'classifai' ) => $feature_settings['provider'],

src/js/admin.js

-54
Original file line numberDiff line numberDiff line change
@@ -78,60 +78,6 @@ document.addEventListener( 'DOMContentLoaded', function () {
7878
} );
7979
} )();
8080

81-
// Role and user based access.
82-
document.addEventListener( 'DOMContentLoaded', function () {
83-
function toogleAllowedRolesRow( e ) {
84-
const checkbox = e.target;
85-
const parentTr = checkbox.closest( 'tr.classifai-role-based-access' );
86-
const allowedRoles = parentTr.nextElementSibling.classList.contains(
87-
'allowed_roles_row'
88-
)
89-
? parentTr.nextElementSibling
90-
: null;
91-
if ( checkbox.checked ) {
92-
allowedRoles.classList.remove( 'hidden' );
93-
} else {
94-
allowedRoles.classList.add( 'hidden' );
95-
}
96-
}
97-
98-
function toogleAllowedUsersRow( e ) {
99-
const checkbox = e.target;
100-
const parentTr = checkbox.closest( 'tr.classifai-user-based-access' );
101-
const allowedUsers = parentTr.nextElementSibling.classList.contains(
102-
'allowed_users_row'
103-
)
104-
? parentTr.nextElementSibling
105-
: null;
106-
if ( checkbox.checked ) {
107-
allowedUsers.classList.remove( 'hidden' );
108-
} else {
109-
allowedUsers.classList.add( 'hidden' );
110-
}
111-
}
112-
113-
const roleBasedAccessCheckBoxes = document.querySelectorAll(
114-
'tr.classifai-role-based-access input[type="checkbox"]'
115-
);
116-
const userBasedAccessCheckBoxes = document.querySelectorAll(
117-
'tr.classifai-user-based-access input[type="checkbox"]'
118-
);
119-
120-
if ( roleBasedAccessCheckBoxes ) {
121-
roleBasedAccessCheckBoxes.forEach( function ( e ) {
122-
e.addEventListener( 'change', toogleAllowedRolesRow );
123-
e.dispatchEvent( new Event( 'change' ) );
124-
} );
125-
}
126-
127-
if ( userBasedAccessCheckBoxes ) {
128-
userBasedAccessCheckBoxes.forEach( function ( e ) {
129-
e.addEventListener( 'change', toogleAllowedUsersRow );
130-
e.dispatchEvent( new Event( 'change' ) );
131-
} );
132-
}
133-
} );
134-
13581
// User Selector.
13682
( () => {
13783
const userSearches = document.querySelectorAll(

tests/Classifai/Providers/Azure/ComputerVisionTest.php

-1
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,6 @@ public function test_no_computer_vision_option_set() {
7373
[
7474
'status' => '0',
7575
'roles' => [],
76-
'user_based_access' => 'no',
7776
'users' => [],
7877
'user_based_opt_out' => 'no',
7978
'descriptive_text_fields' => [

0 commit comments

Comments
 (0)