#!/usr/bin/perl -w

use CGI;


my $query = new CGI;

print "Content-type: text/html\n\n";
print "<html>\n<head>\n<title>Обратная связь</title>\n</head>\n";
print "<style type=\"text/css\"><!--
        body
        {
                background: Lightsteelblue;
                scrollbar-base-color: Linen;
                scrollbar-track-color: Honeydew;
                scrollbar-arrow-color: Lightgrey;
        }
        fieldset
        {
                text-align: left;
        }
        p
        {
                text-align: justify;
        }
        .rm
        {
                background: Lightsteelblue;
                width: 210px;
        }
        a
        {
                color: Dimgray;
                text-decoration: none;
                font-size: 14.0;
                font-family: Tahoma, arial, helvetica, serif;
        }
        a:hover
        {
                text-decoration: underline;
        }
        .dm
        {
                font-style:italic;
                font-size: 10px;
        }-->\n</style><body>\n";
if($query->param('name') || $query->param('email') || $query->param('text'))
{
    $name = $query->param('name');
    $email = $query->param('email');
    $text = $query->param('text');
    &validation;
}
else
{
    &print_form;
}
print "</body>\n</html>\n";

sub validation
{
 if($ENV{'REQUEST_METHOD'} eq "POST"){
 $text =~ tr/\;\`\'\"\\\|\*\<\>\^\(\)\[\]\{\}\$/ /s;
 $text =~ tr/\r\n/ /s;
 if(($text) && ($email =~ /^[a-zA-Z0-9\.\-\_]*\@[a-zA-Z0-9\.\-\_\/]*$/)){ &add_message; }
 else{ &error; }
 }
 else
 {
 print "Я бы попросил вас использовать мой скрипт, не обходя установленный мною интерфейс.<br>";
 &print_form;
 exit;
 }
}

sub add_message
{
    open(File, ">> message.txt");
    flock File, 2;
    print File "Name:$name Email:$email\nText:$text\n";
    close File;
    print "<table width=800 bgcolor='Lightsteelblue' border=0 align='center' cellpadding=20>\n
    <tr>\n
    <td valign='top'>\n";
    print "<center><h2>Спасибо за отправку сообщения.</h2></center>\n";
    print "<p>На конструктивную критику и стоящие предложения мы обязательно Вам ответим.</p>";
    print "<div align='center'><a href='/' style='color: grey'>Перейти на главную страницу сайта.</a></div>\n";
    print "</td>
    </tr>
    </table>";
}

sub error
{
print "<table width=800 bgcolor='Lightsteelblue' border=0 align='center' cellpadding=20>\n
<tr>\n
<td valign='top'>\n";
print "<center><h2>Форма обратной связи.</h2></center>
<p>
В случае если вы заметили в содержании сайта неточность, ошибку, опечатку или у вас есть какие-либо идеи или предложения - обязательно напишите нам об этом. На конструктивную критику и стоящие предложения мы обязательно ответим.
</p><p style='color: red'>
Вы не ввели или ввели неправельный email адрес и/или не ввели текст сообщения.
</p><p>
<form method='post'>
<pre>Ваше имя:   <input type='text' name='name' value='$name' maxlength=70 size=40><br>
Ваш email:<sup style='color: red'>*</sup> <input type='text' name='email' value='$email' maxlength=70 size=40><br>
Сообщение:<sup style='color: red'>*</sup></pre>
<textarea cols=55 rows=25 style='background-color:mintcream' name='text' value='$text'></textarea><br>
<input type='submit' value='Отправить'>
</form>
<b>Поля помеченные <sup style='color: red'>*</sup> обязательны для заполнения.</b>
</p>
<p style='text-align: right'><a href='/' style='color: grey'>Вернуться на главную</a></p>
</td>
</tr>
</table>";
}

sub print_form
{
print "<table width=800 bgcolor='Lightsteelblue' border=0 align='center' cellpadding=20>\n
<tr>\n
<td valign='top'>\n";
print "<center><h2>Форма обратной связи.</h2></center>
<p>
В случае если вы заметили в содержании сайта неточность, ошибку, опечатку или у вас есть какие-либо идеи или предложения - обязательно напишите нам об этом. На конструктивную критику и стоящие предложения мы обязательно ответим.
</p><p>
<form method='post'>
<pre>Ваше имя:   <input type='text' name='name' maxlength=70 size=40><br>
Ваш email:<sup style='color: red'>*</sup> <input type='text' name='email' maxlength=70 size=40><br>
Сообщение:<sup style='color: red'>*</sup></pre>
<textarea cols=55 rows=25 style='background-color:mintcream' name='text'></textarea><br>
<input type='submit' value='Отправить'>
</form>
<b>Поля помеченные <sup style='color: red'>*</sup> обязательны для заполнения.</b>
</p>
<p style='text-align: right'><a href='/' style='color: grey'>Вернуться на главную</a></p>
</td>
</tr>
</table>";
}