71 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			71 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| /**
 | |
|  * @package         Advanced Custom Fields
 | |
|  * @version         2.8.8 Pro
 | |
|  * 
 | |
|  * @author          Tassos Marinos <info@tassos.gr>
 | |
|  * @link            http://www.tassos.gr
 | |
|  * @copyright       Copyright © 2020 Tassos Marinos All Rights Reserved
 | |
|  * @license         GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later
 | |
| */
 | |
| 
 | |
| defined('_JEXEC') or die;
 | |
| 
 | |
| if (!$value = $field->value)
 | |
| {
 | |
| 	return;
 | |
| }
 | |
| 
 | |
| if (is_string($value) && !$value = json_decode($value, true))
 | |
| {
 | |
| 	return;
 | |
| }
 | |
| 
 | |
| if (!isset($value['value']) && !is_array($value['value']))
 | |
| {
 | |
| 	return;
 | |
| }
 | |
| 
 | |
| // Prepare the value
 | |
| $value = array_values($value['value']);
 | |
| $value = array_filter($value, function($item) {
 | |
| 	return !empty($item['question']) && !empty($item['answer']);
 | |
| });
 | |
| 
 | |
| $payload = [
 | |
| 	'value' => $value,
 | |
| 	'css_class' => ' template_' . $fieldParams->get('template'),
 | |
| 	'keep_one_question_open' => $fieldParams->get('keep_one_question_open', '0') === '1',
 | |
| 	'columns' => (int) $fieldParams->get('columns', 1),
 | |
| 	'item_gap' => $fieldParams->get('item_gap_control.item_gap', 20),
 | |
| 	'column_gap' => $fieldParams->get('column_gap_control.column_gap', 20),
 | |
| 	'item_background_color' => $fieldParams->get('background_color'),
 | |
| 	'item_border_radius' => $fieldParams->get('border_radius_control.item_border_radius'),
 | |
| 	'item_padding' => $fieldParams->get('padding_control.item_padding'),
 | |
| 	'question_font_size' => $fieldParams->get('question_font_size_control.question_font_size'),
 | |
| 	'question_text_color' => $fieldParams->get('question_text_color'),
 | |
| 	'answer_font_size' => $fieldParams->get('answer_font_size_control.answer_font_size'),
 | |
| 	'answer_text_color' => $fieldParams->get('answer_text_color'),
 | |
| 	'answer_padding' => $fieldParams->get('answer_padding_control.answer_padding'),
 | |
| 	'generate_faq' => $fieldParams->get('generate_faq', '0') === '1',
 | |
| 	'separator' => $fieldParams->get('separator', '0') === '1',
 | |
| 	'separator_color' => $fieldParams->get('separator_color'),
 | |
| 	'initial_state' => $fieldParams->get('initial_state', 'first-open')
 | |
| ];
 | |
| 
 | |
| // Set custom layout
 | |
| if ($field->params->get('acf_layout_override'))
 | |
| {
 | |
| 	$payload['layout'] = $field->params->get('acf_layout_override');
 | |
| }
 | |
| 
 | |
| $show_toggle_icon = $fieldParams->get('show_toggle_icon', '1') === '1';
 | |
| $payload['show_toggle_icon'] = $show_toggle_icon;
 | |
| if ($show_toggle_icon)
 | |
| {
 | |
| 	$payload['icon'] = $fieldParams->get('icon', 'arrow');
 | |
| 	$payload['icon_position'] = $fieldParams->get('icon_position', 'right');
 | |
| }
 | |
| 
 | |
| echo \NRFramework\Widgets\Helper::render('FAQ', $payload); |