Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru Как добавить поле (e-mail) в AJAX окно жалобы?

Как добавить поле (e-mail) в AJAX окно жалобы?


     29.07.2016    jQuery, Общие вопросы по PHP    663

вопрос
Помогите добавить в окно жалобы поле с e-mail для связи с пользователем (жалоба доступна для гостей).

Ответа пока нет


Комментарии пользователей (3)

peguckashady
10

peguckashady - 30 июля 2016 18:30 - Юзер

Вот нашел с выпадающим списком... Как еще добавить textarea?

vitnet
222

2311 | 987

vitnet - 2 августа 2016 22:38 - Эксперт

1.0 Открыть файл engine/classes/js/dle_js.js

найти
function AddComplaint(a,b){var c={};c[dle_act_lang[3]]=function(){$(this).dialog("close")};c[dle_p_send]=function(){if(1>$("#dle-promt-text").val().length)$("#dle-promt-text").addClass("ui-state-error");else{var c=$("#dle-promt-text").val();$(this).dialog("close");$("#dlepopup").remove();$.post(dle_root+"engine/ajax/complaint.php",{id:a,text:c,action:b},function(a){"ok"==a?DLEalert(dle_p_send_ok,dle_info):DLEalert(a,dle_info)})}};$("#dlepopup").remove();$("body").append("<div id='dlepopup' title='"+dle_complaint+"' style='display:none'><br /><textarea name='dle-promt-text' id='dle-promt-text' class='ui-widget-content ui-corner-all' style='width:97%;height:100px; padding: .4em;'></textarea></div>");$("#dlepopup").dialog({autoOpen:!0,width:500,resizable:!1,dialogClass:"modalfixed dle-popup-complaint",buttons:c});$(".modalfixed.ui-dialog").css({position:"fixed"});$("#dlepopup").dialog("option","position",["0","0"])}

заменить на
function AddComplaint(a,b){var c={};c[dle_act_lang[3]]=function(){$(this).dialog("close")};c[dle_p_send]=function(){if(1>$("#dle-promt-text").val().length)$("#dle-promt-text").addClass("ui-state-error");else{var c=$("#dle-promt-text").val();var d=$("#dle-promt-email").val();$(this).dialog("close");$("#dlepopup").remove();$.post(dle_root+"engine/ajax/complaint.php",{id:a,text:c,email:d,action:b},function(a){"ok"==a?DLEalert(dle_p_send_ok,dle_info):DLEalert(a,dle_info)})}};$("#dlepopup").remove();$("body").append("<div id='dlepopup' title='"+dle_complaint+"' style='display:none'><br />E-Mail<input name='dle-promt-email' id='dle-promt-email' class='ui-widget-content ui-corner-all' style='width:96%;height:15px; padding: .4em;' /><br /><br />Message<textarea name='dle-promt-text' id='dle-promt-text' class='ui-widget-content ui-corner-all' style='width:97%;height:100px; padding: .4em;'></textarea></div>");$("#dlepopup").dialog({autoOpen:!0,width:500,resizable:!1,dialogClass:"modalfixed dle-popup-complaint",buttons:c});$(".modalfixed.ui-dialog").css({position:"fixed"});$("#dlepopup").dialog("option","position",["0","0"])}

2.0 Открыть файл engine/ajax/complaint.php
найти
$text = $parse->BB_Parse( $parse->process( trim( $text ) ), false );

добавить ниже
$not_allow_symbol = array("\x22", "\x60", "\t", '\n', '\r', "\n", "\r", '\\', ",", "/", "¬", "#", ";", ":", "~", "[", "]", "{", "}", ")", "(", "*", "^", "%", "$", "<", ">", "?", "!", '"', "'", " ", "&");
$email = $db->safesql(trim( str_replace( $not_allow_symbol, '', strip_tags( stripslashes( $_POST['email'] ) ) ) ) );

if( empty( $email ) OR strlen( $email ) > 50 OR @count(explode("@", $email)) != 2 ) {
    die("{$lang['reg_err_6']}");
} else {
    $text.= '<br /><br />E-Mail: ' . $email;
}

peguckashady
10

peguckashady - 2 августа 2016 22:56 - Юзер

vitnet, во-первых, спасибо, что откликнулись!!!
В файле engine/ajax/complaint.php нет такой строки $text = $parse->BB_Parse( $parse->process( trim( $text ) ), false );

UPDATE: все нашел! почему-то поиск отказывался искать...

СПАСИБО! Все работает как надо!

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы