Completed
Push — develop ( a03475...8ba485 )
by Aristeides
02:49
created

Kirki_Output_Field_Background   A

Complexity

Total Complexity 18

Size/Duplication

Total Lines 48
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 1

Importance

Changes 0
Metric Value
dl 0
loc 48
rs 10
c 0
b 0
f 0
wmc 18
lcom 1
cbo 1

1 Method

Rating   Name   Duplication   Size   Complexity  
F process_output() 0 38 18
1
<?php
2
/**
3
 * Handles CSS output for background fields.
4
 *
5
 * @package     Kirki
6
 * @subpackage  Controls
7
 * @copyright   Copyright (c) 2016, Aristeides Stathopoulos
8
 * @license     http://opensource.org/licenses/https://opensource.org/licenses/MIT
9
 * @since       3.0.0
10
 */
11
12
if ( ! class_exists( 'Kirki_Output_Field_Background' ) ) {
13
14
	/**
15
	 * Output overrides.
16
	 */
17
	class Kirki_Output_Field_Background extends Kirki_Output {
18
19
		/**
20
		 * Processes a single item from the `output` array.
21
		 *
22
		 * @access protected
23
		 * @param array $output The `output` item.
24
		 * @param array $value  The field's value.
25
		 */
26
		protected function process_output( $output, $value ) {
27
28
			$output['media_query'] = ( isset( $output['media_query'] ) ) ? $output['media_query'] : 'global';
29
			$output['element']     = ( isset( $output['element'] ) ) ? $output['element'] : 'body';
30
			$output['prefix']      = ( isset( $output['prefix'] ) ) ? $output['prefix'] : '';
31
			$output['suffix']      = ( isset( $output['suffix'] ) ) ? $output['suffix'] : '';
32
			$output['media_query'] = ( isset( $output['media_query'] ) ) ? $output['media_query'] : 'global';
33
34
			// Background-image.
35
			if ( isset( $value['background-image'] ) && ! empty( $value['background-image'] ) ) {
36
				$this->styles[ $output['media_query'] ][ $output['element'] ]['background-image'] = $output['prefix'] . $this->process_property_value( 'background-image', $value['background-image'] ) . $output['suffix'];
37
			}
38
39
			// Background-color.
40
			if ( isset( $value['background-color'] ) && ! empty( $value['background-color'] ) ) {
41
				$this->styles[ $output['media_query'] ][ $output['element'] ]['background-color'] = $output['prefix'] . $this->process_property_value( 'background-color', $value['background-color'] ) . $output['suffix'];
42
			}
43
44
			// Background-repeat.
45
			if ( isset( $value['background-repeat'] ) && ! empty( $value['background-repeat'] ) ) {
46
				$this->styles[ $output['media_query'] ][ $output['element'] ]['background-repeat'] = $output['prefix'] . $this->process_property_value( 'background-repeat', $value['background-repeat'] ) . $output['suffix'];
47
			}
48
49
			// Background-position.
50
			if ( isset( $value['background-position'] ) && ! empty( $value['background-position'] ) ) {
51
				$this->styles[ $output['media_query'] ][ $output['element'] ]['background-position'] = $output['prefix'] . $this->process_property_value( 'background-position', $value['background-position'] ) . $output['suffix'];
52
			}
53
54
			// Background-size.
55
			if ( isset( $value['background-size'] ) && ! empty( $value['background-size'] ) ) {
56
				$this->styles[ $output['media_query'] ][ $output['element'] ]['background-size'] = $output['prefix'] . $this->process_property_value( 'background-size', $value['background-size'] ) . $output['suffix'];
57
			}
58
59
			// Background-attachment.
60
			if ( isset( $value['background-attachment'] ) && ! empty( $value['background-attachment'] ) ) {
61
				$this->styles[ $output['media_query'] ][ $output['element'] ]['background-attachment'] = $output['prefix'] . $this->process_property_value( 'background-attachment', $value['background-attachment'] ) . $output['suffix'];
62
			}
63
		}
64
	}
65
} // End if().
66