Skip to content

Commit

Permalink
Improvements and address feedback.
Browse files Browse the repository at this point in the history
hussain-t committed Mar 20, 2024
1 parent 72149e8 commit d7e4d0b
Showing 2 changed files with 8 additions and 30 deletions.
8 changes: 2 additions & 6 deletions assets/js/modules/analytics-4/datastore/audience-settings.js
Original file line number Diff line number Diff line change
@@ -22,11 +22,6 @@
import invariant from 'invariant';
import { isEqual, isPlainObject } from 'lodash';

/**
* WordPress dependencies
*/
import { createRegistrySelector } from '@wordpress/data';

/**
* Internal dependencies
*/
@@ -38,6 +33,7 @@ import { createValidatedAction } from '../../../googlesitekit/data/utils';
import { createReducer } from '../../../googlesitekit/data/create-reducer';
import { actions as errorStoreActions } from '../../../googlesitekit/data/create-error-store';

const { createRegistrySelector } = Data;
const { receiveError, clearError } = errorStoreActions;

const validateAudienceSettings = ( settings ) => {
@@ -218,7 +214,7 @@ const baseReducer = createReducer( ( state, { type, payload } ) => {
}

default: {
return state;
break;
}
}
} );
30 changes: 6 additions & 24 deletions includes/Modules/Analytics_4.php
Original file line number Diff line number Diff line change
@@ -41,6 +41,7 @@
use Google\Site_Kit\Core\Modules\Tags\Module_Tag_Matchers;
use Google\Site_Kit\Core\REST_API\Exception\Invalid_Datapoint_Exception;
use Google\Site_Kit\Core\REST_API\Data_Request;
use Google\Site_Kit\Core\REST_API\Exception\Invalid_Param_Exception;
use Google\Site_Kit\Core\REST_API\Exception\Missing_Required_Param_Exception;
use Google\Site_Kit\Core\Site_Health\Debug_Data;
use Google\Site_Kit\Core\Storage\Options;
@@ -881,6 +882,7 @@ protected function sync_google_tag_settings() {
* @return RequestInterface|callable|WP_Error Request object or callable on success, or WP_Error on failure.
*
* @throws Invalid_Datapoint_Exception Thrown if the datapoint does not exist.
* @throws Invalid_Param_Exception Thrown if a parameter is invalid.
* @throws Missing_Required_Param_Exception Thrown if a required parameter is missing or empty.
* phpcs:ignore Squiz.Commenting.FunctionCommentThrowTag.WrongNumber
*/
@@ -970,39 +972,19 @@ protected function create_data_request( Data_Request $data ) {
case 'POST:audience-settings':
$settings = $data['settings'];
if ( ! isset( $settings['configuredAudiences'] ) ) {
return new WP_Error(
'missing_required_param',
/* translators: %s: Missing parameter name */
sprintf( __( 'Request parameter is empty: %s.', 'google-site-kit' ), 'configuredAudiences' ),
array( 'status' => 400 )
);
throw new Missing_Required_Param_Exception( 'configuredAudiences' );
}

if ( ! is_array( $settings['configuredAudiences'] ) ) {
return new WP_Error(
'rest_invalid_param',
/* translators: %s: Invalid parameter */
sprintf( __( 'Invalid parameter: %s.', 'google-site-kit' ), 'configuredAudiences' ),
array( 'status' => 400 )
);
throw new Invalid_Param_Exception( 'configuredAudiences' );
}

if ( ! isset( $settings['isAudienceSegmentationWidgetHidden'] ) ) {
return new WP_Error(
'missing_required_param',
/* translators: %s: Missing parameter name */
sprintf( __( 'Request parameter is empty: %s.', 'google-site-kit' ), 'isAudienceSegmentationWidgetHidden' ),
array( 'status' => 400 )
);
throw new Missing_Required_Param_Exception( 'isAudienceSegmentationWidgetHidden' );
}

if ( ! is_bool( $settings['isAudienceSegmentationWidgetHidden'] ) ) {
return new WP_Error(
'rest_invalid_param',
/* translators: %s: Invalid parameter */
sprintf( __( 'Invalid parameter: %s.', 'google-site-kit' ), 'isAudienceSegmentationWidgetHidden' ),
array( 'status' => 400 )
);
throw new Invalid_Param_Exception( 'isAudienceSegmentationWidgetHidden' );
}

$this->audience_settings->merge( $data['settings'] );

0 comments on commit d7e4d0b

Please sign in to comment.