Code Duplication    Length = 25-25 lines in 2 locations

projects/packages/sync/src/class-rest-endpoints.php 1 location

@@ 466-490 (lines=25) @@
463
	 *
464
	 * @return \WP_REST_Response
465
	 */
466
	public static function update_sync_settings( $request ) {
467
		$args          = $request->get_params();
468
		$sync_settings = Settings::get_settings();
469
470
		foreach ( $args as $key => $value ) {
471
			if ( false !== $value ) {
472
				if ( is_numeric( $value ) ) {
473
					$value = (int) $value;
474
				}
475
476
				// special case for sending empty arrays - a string with value 'empty'.
477
				if ( 'empty' === $value ) {
478
					$value = array();
479
				}
480
481
				$sync_settings[ $key ] = $value;
482
			}
483
		}
484
485
		Settings::update_settings( $sync_settings );
486
487
		// re-fetch so we see what's really being stored.
488
		return rest_ensure_response( Settings::get_settings() );
489
	}
490
491
	/**
492
	 * Retrieve Sync Objects.
493
	 *

projects/plugins/jetpack/json-endpoints/jetpack/class.jetpack-json-api-sync-endpoint.php 1 location

@@ 158-182 (lines=25) @@
155
156
// POST /sites/%s/sync/settings
157
class Jetpack_JSON_API_Sync_Modify_Settings_Endpoint extends Jetpack_JSON_API_Sync_Endpoint {
158
	protected function result() {
159
		$args = $this->input();
160
161
		$sync_settings = Settings::get_settings();
162
163
		foreach ( $args as $key => $value ) {
164
			if ( $value !== false ) {
165
				if ( is_numeric( $value ) ) {
166
					$value = (int) $value;
167
				}
168
169
				// special case for sending empty arrays - a string with value 'empty'
170
				if ( $value === 'empty' ) {
171
					$value = array();
172
				}
173
174
				$sync_settings[ $key ] = $value;
175
			}
176
		}
177
178
		Settings::update_settings( $sync_settings );
179
180
		// re-fetch so we see what's really being stored
181
		return Settings::get_settings();
182
	}
183
}
184
185
// GET /sites/%s/sync/settings