Добрый день! В данный момент используем компонент SP Page Builder. В данном расширении есть аддон под названием ajax contact, который мы активно используем в формах на странице. Требуется добавить в модальное окно форму с этим аддоном.
Модальное окно:
<div id="myModal" class="modal fade">
<div class="modal-dialog">
<div class="modal-content">
<!-- Заголовок модального окна -->
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title">Форма обратной связи</h4>
</div>
<!-- Основное содержимое модального окна -->
<div class="modal-body">
</div>
<!-- Футер модального окна -->
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Закрыть</button>
</div>
</div>
</div>
</div>
Сам аддон (site.php)
<?php
/**
* @package SP Page Builder
* @author JoomShaper http://www.joomshaper.com
* @copyright Copyright (c) 2010 - 2015 JoomShaper
* @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
*/
//no direct accees
defined ('_JEXEC') or die ('restricted aceess');
AddonParser::addAddon('sp_ajax_contact','sp_ajax_contact_addon');
function sp_ajax_contact_addon($atts){
extract(spAddonAtts(array(
"title" => '',
"heading_selector" => 'h3',
"title_fontsize" => '',
"title_fontweight" => '',
"title_text_color" => '',
"title_margin_top" => '',
"title_margin_bottom" => '',
"recipient_email" => 'email@yourdomain.com',
"formcaptcha" => '',
"captcha_question" => '',
"captcha_answer" => '',
"class" => '',
), $atts));
$output = '<div class="sppb-addon sppb-addon-ajax-contact ' . $class . '">';
if($title) {
$title_style = '';
if($title_margin_top !='') $title_style .= 'margin-top:' . (int) $title_margin_top . 'px;';
if($title_margin_bottom !='') $title_style .= 'margin-bottom:' . (int) $title_margin_bottom . 'px;';
if($title_text_color) $title_style .= 'color:' . $title_text_color . ';';
if($title_fontsize) $title_style .= 'font-size:'.$title_fontsize.'px;line-height:'.$title_fontsize.'px;';
if($title_fontweight) $title_style .= 'font-weight:'.$title_fontweight.';';
$output .= '<'.$heading_selector.' class="sppb-addon-title" style="' . $title_style . '">' . $title . '</'.$heading_selector.'>';
}
$output .= '<div class="sppb-addon-content">';
$output .= '<form class="sppb-ajaxt-contact-form">';
$output .= '<div class="sppb-form-group">';
$output .= '<input type="text" name="name" style="width: 310px;margin: 0 auto;" class="sppb-form-control" placeholder="Имя"'. JText::_('COM_SPPAGEBUILDER_ADDON_AJAX_CONTACT_NAME').'" required="required">';
$output .= '</div>';
$output .= '<div class="sppb-form-group">';
$output .= '<input type="text" name="subject" style="width: 310px;margin: 0 auto;" class="sppb-form-control" placeholder="Номер"'. JText::_('COM_SPPAGEBUILDER_ADDON_AJAX_CONTACT_SUBJECT').'" required="required">';
$output .= '</div>';
if($formcaptcha) {
$output .= '<div class="sppb-form-group">';
$output .= '<input type="text" name="captcha_question" class="sppb-form-control" placeholder="'. $captcha_question .'" required="required">';
$output .= '</div>';
}
$output .= '<input type="hidden" name="recipient" value="'. base64_encode($recipient_email).'">';
if($formcaptcha) {
$output .= '<input type="hidden" name="captcha_answer" value="'. md5($captcha_answer).'">';
}
$output .= '<button type="submit" class="sppb-btn sppb-btn-success"><i class="fa"></i> '. JText::_('Отправить').'</button>';
$output .= '</form>';
$output .= '<div style="display:none;margin-top:10px;" class="sppb-ajax-contact-status"></div>';
$output .= '</div>';
$output .= '</div>';
return $output;
}
function sp_ajax_contact_get_ajax() {
$input = JFactory::getApplication()->input;
$mail = JFactory::getMailer();
$showcaptcha = false;
//inputs
$inputs = $input->get('data', array(), 'ARRAY');
foreach ($inputs as $input) {
if( $input['name'] == 'recipient' ) {
$recipient = base64_decode($input['value']);
}
if( $input['name'] == 'email' ) {
$email = $input['value'];
}
if( $input['name'] == 'name' ) {
$name = $input['value'];
}
if( $input['name'] == 'subject' ) {
$subject = $input['value'];
}
if( $input['name'] == 'message' ) {
$message = nl2br( $input['value'] );
}
if( $input['name'] == 'captcha_question' ) {
$captcha_question = $input['value'];
$showcaptcha = true;
}
if( $input['name'] == 'captcha_answer' ) {
$captcha_answer = $input['value'];
$showcaptcha = true;
}
}
if($showcaptcha) {
if ( md5($captcha_question)!= $captcha_answer ) {
return '<span class="sppb-text-danger">'. JText::_('COM_SPPAGEBUILDER_ADDON_AJAX_CONTACT_WRONG_CAPTCHA').'</span>';
}
}
$emai_body = 'Имя: ' . $name . '<br />';
$emai_body .= 'Номер: ' . $subject . '<br />';
$emai_body .= 'Cообщение: ' . $message . '<br />';
$sender = array($email, $name);
if (!empty($from_email)) {
$sender = array($from_email, $from_name);
$mail->addReplyTo($email, $name);
}
$mail->setSender($sender);
$mail->addRecipient($recipient);
$mail->setSubject($subject);
$mail->isHTML(true);
$mail->Encoding = 'base64';
$mail->setBody($emai_body);
if ($mail->Send()) {
return '<span class="sppb-text-success">'. JText::_('COM_SPPAGEBUILDER_ADDON_AJAX_CONTACT_SUCCESS').'</span>';
} else {
return '<span class="sppb-text-danger">'. JText::_('COM_SPPAGEBUILDER_ADDON_AJAX_CONTACT_FAILED').'</span>';
}
}
?>
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть вот такой фрагмент кода:
Есть таблица с пагинацией, которая работает параметром get значение которого подставляется в ссылки ( снизу на картинке )
Часть программы должна считывать двумерный массив и искать количество элементов равным 0Но, как я понял, оно даже полностью не считывает...
Всем приветДелаю систему аутентификации на Laravel через SMS