summaryrefslogtreecommitdiff
path: root/inc/customizer/extend-customizer
diff options
context:
space:
mode:
Diffstat (limited to 'inc/customizer/extend-customizer')
-rw-r--r--inc/customizer/extend-customizer/class-astra-wp-customize-panel.php65
-rw-r--r--inc/customizer/extend-customizer/class-astra-wp-customize-section.php68
-rw-r--r--inc/customizer/extend-customizer/class-astra-wp-customize-separator.php49
3 files changed, 182 insertions, 0 deletions
diff --git a/inc/customizer/extend-customizer/class-astra-wp-customize-panel.php b/inc/customizer/extend-customizer/class-astra-wp-customize-panel.php
new file mode 100644
index 0000000..778996a
--- /dev/null
+++ b/inc/customizer/extend-customizer/class-astra-wp-customize-panel.php
@@ -0,0 +1,65 @@
+<?php
+/**
+ * Customizer Control: panel.
+ *
+ * Creates a jQuery color control.
+ *
+ * @package Astra
+ * @author Astra
+ * @copyright Copyright (c) 2020, Astra
+ * @link https://wpastra.com/
+ * @since 1.0.0
+ */
+
+// Exit if accessed directly.
+if ( ! defined( 'ABSPATH' ) ) {
+ exit;
+}
+
+if ( class_exists( 'WP_Customize_Panel' ) ) {
+
+ /**
+ * Adds a custom Panel for nested panels / sections.
+ *
+ * @link https://gist.github.com/OriginalEXE/9a6183e09f4cae2f30b006232bb154af
+ * @since 1.0.31
+ * @see WP_Customize_Panel
+ */
+ class Astra_WP_Customize_Panel extends WP_Customize_Panel {
+
+ /**
+ * Panel
+ *
+ * @since 1.0.31
+ * @var string
+ */
+ public $panel;
+
+ /**
+ * Control type.
+ *
+ * @since 1.0.31
+ * @var string
+ */
+ public $type = 'ast_panel';
+
+ /**
+ * Get section parameters for JS.
+ *
+ * @since 1.0.31
+ * @return array Exported parameters.
+ */
+ public function json() {
+
+ $array = wp_array_slice_assoc( (array) $this, array( 'id', 'description', 'priority', 'type', 'panel' ) );
+ $array['title'] = html_entity_decode( $this->title, ENT_QUOTES, get_bloginfo( 'charset' ) );
+ $array['content'] = $this->get_content();
+ $array['active'] = $this->active();
+ $array['instanceNumber'] = $this->instance_number;
+
+ return $array;
+ }
+ }
+
+}
+
diff --git a/inc/customizer/extend-customizer/class-astra-wp-customize-section.php b/inc/customizer/extend-customizer/class-astra-wp-customize-section.php
new file mode 100644
index 0000000..363ff36
--- /dev/null
+++ b/inc/customizer/extend-customizer/class-astra-wp-customize-section.php
@@ -0,0 +1,68 @@
+<?php
+/**
+ * Customizer Control: panel.
+ *
+ * Creates a jQuery color control.
+ *
+ * @package Astra
+ * @author Astra
+ * @copyright Copyright (c) 2020, Astra
+ * @link https://wpastra.com/
+ * @since 1.0.0
+ */
+
+// Exit if accessed directly.
+if ( ! defined( 'ABSPATH' ) ) {
+ exit;
+}
+
+if ( class_exists( 'WP_Customize_Section' ) ) {
+
+ /**
+ * Adds a custom Customize Section for nested sections.
+ *
+ * @link https://gist.github.com/OriginalEXE/9a6183e09f4cae2f30b006232bb154af
+ * @since 1.0.31
+ * @see WP_Customize_Section
+ */
+ class Astra_WP_Customize_Section extends WP_Customize_Section {
+
+ /**
+ * Section
+ *
+ * @since 1.0.31
+ * @var string
+ */
+ public $section;
+
+ /**
+ * Control type.
+ *
+ * @since 1.0.31
+ * @var string
+ */
+ public $type = 'ast_section';
+
+ /**
+ * Get section parameters for JS.
+ *
+ * @since 1.0.31
+ * @return array Exported parameters.
+ */
+ public function json() {
+ $array = wp_array_slice_assoc( (array) $this, array( 'id', 'description', 'priority', 'panel', 'type', 'description_hidden', 'section' ) );
+ $array['title'] = html_entity_decode( $this->title, ENT_QUOTES, get_bloginfo( 'charset' ) );
+ $array['content'] = $this->get_content();
+ $array['active'] = $this->active();
+ $array['instanceNumber'] = $this->instance_number;
+
+ if ( $this->panel ) {
+ $array['customizeAction'] = sprintf( 'Customizing &#9656; %s', esc_html( $this->manager->get_panel( $this->panel )->title ) );
+ } else {
+ $array['customizeAction'] = 'Customizing';
+ }
+
+ return $array;
+ }
+ }
+}
diff --git a/inc/customizer/extend-customizer/class-astra-wp-customize-separator.php b/inc/customizer/extend-customizer/class-astra-wp-customize-separator.php
new file mode 100644
index 0000000..0f195f7
--- /dev/null
+++ b/inc/customizer/extend-customizer/class-astra-wp-customize-separator.php
@@ -0,0 +1,49 @@
+<?php
+/**
+ * Customizer Control: panel.
+ *
+ * Creates a jQuery color control.
+ *
+ * @package Astra
+ * @author Astra
+ * @copyright Copyright (c) 2020, Astra
+ * @link https://wpastra.com/
+ * @since 2.0.0
+ */
+
+// Exit if accessed directly.
+if ( ! defined( 'ABSPATH' ) ) {
+ exit;
+}
+
+if ( class_exists( 'WP_Customize_Section' ) ) {
+
+ /**
+ * Adds a custom Customize Section for section separator.
+ *
+ * @link https://gist.github.com/OriginalEXE/9a6183e09f4cae2f30b006232bb154af
+ * @since 2.0.0
+ * @see WP_Customize_Section
+ */
+ class Astra_WP_Customize_Separator extends WP_Customize_Section {
+
+ /**
+ * Control type.
+ *
+ * @since 1.0.31
+ * @var string
+ */
+ public $type = 'ast-section-separator';
+
+ /**
+ * Template for section separator
+ *
+ * @since 2.0.0
+ */
+ protected function render_template() {
+ ?>
+ <li id="accordion-section-{{ data.id }}" class="accordion-section control-section control-section-{{ data.type }}"></li>
+ <?php
+ }
+ }
+}