Seditio Source code viewer
Root | Root
./Seditio-Developer/Seditio.178/plugins/contact/contact.php
<?PHP

/* ====================
Seditio - Website engine
Copyright Neocrome & Seditio Team
https://seditio.org
[BEGIN_SED]
File=plugins/contact/contact.php
Version=179
Updated=2022-jul-15
Type=Plugin
Author=Seditio Team
Description=
[END_SED]

[BEGIN_SED_EXTPLUGIN]
Code=contact
Part=main
File=contact
Hooks=standalone
Tags=
Order=10
[END_SED_EXTPLUGIN]
==================== */

if (!defined('SED_CODE') || !defined('SED_PLUG')) { die('Wrong URL.'); }
 
$id = sed_import('id','G','INT');

$sender_email = sed_import('sender_email','P','HTM');
$sender_name = sed_import('sender_name','P','HTM');
$sender_tel = sed_import('sender_tel','P','HTM');
$sender_subject = sed_import('sender_subject','P','HTM');
$sender_message = sed_import('sender_message','P','HTM');
$sender_recip = sed_import('sender_recip','P','INT');
$sender_tarp = sed_import('sender_tarp','P','TXT',8);
$sender_key = sed_import('sender_key','P','TXT',8);
$sender_fak = sed_import('sender_fak','P','TXT',8);

$antispam_key = array();

$error_string = '';
$message = '';

if (empty(
$cfg['plugin']['contact']['emails']))
    {
$cfg['plugin']['contact']['emails'] = $cfg['adminemail']; }
if (empty(
$cfg['plugin']['contact']['recipients']))
    {
$cfg['plugin']['contact']['recipients'] = $cfg['maintitle']; }

$cfg_emails = explode (",", $cfg['plugin']['contact']['emails']);
$cfg_names = explode (",", $cfg['plugin']['contact']['recipients']);

if (
$a == 'send')
    {
       
    if (!empty(
$sender_tarp))
        { die(
"Error."); }

     if (
$sender_key != strrev(str_replace('.', '',$sender_fak)))
        {
$error_string .= $L['plu_antispam']."<br />"; }

    if (empty(
$sender_email) || empty($sender_name) || empty($sender_subject) || empty($sender_message))
        {
$error_string .= $L['plu_fieldempty']."<br />"; }

    if (!
mb_strpos($sender_email, '@') || !mb_strpos($sender_email, '.'))
        {
$error_string .= $L['plu_wrongentry']."<br />"; }

    if (empty(
$error_string))
        {
       
$fheaders = ("From: ".$sender_email."\n"."Content-Type: text/plain; charset=".$cfg['charset']."\n");
       
$fbody = $L['plu_notice'];

       
$fbody .= $sender_name."\n".$L['plu_recipients_title']." : ".$cfg_names[$sender_recip]."\n".$L['plu_email_title']." : ".$sender_email ."\n".$L['plu_phone_title']." : ".$sender_tel."\n\n";        

       
$fbody .= $L['plu_message_title']." : \n\n".sed_br2nl($sender_message);
       
sed_mail($cfg_emails[$sender_recip], $sender_subject, $fbody, $fheaders);
       
        if (!empty(
$cfg['plugin']['contact']['admincopy1']))
          {
sed_mail(trim($cfg['plugin']['contact']['admincopy1']), "COPY: ".$sender_subject, $fbody, $fheaders); }

        if (!empty(
$cfg['plugin']['contact']['admincopy2']))
          {
sed_mail(trim($cfg['plugin']['contact']['admincopy2']), "COPY: ".$sender_subject, $fbody, $fheaders); }    

       
sed_redirect(sed_url("plug", "e=contact&a=done", "", true));
        exit;
        }
    }
elseif (
$a == 'done')
    {
   
$message = $L['plu_sent'];
    unset(
$sender_email, $sender_name, $sender_subject, $sender_message, $sender_recip);
    }

// ======================================================

$error_string .= (!empty($error_string)) ? $L['plu_notsent'] : '';

$recipients = "<select name=\"sender_recip\">\n";
foreach(
$cfg_emails as $k => $i)
    {
   
$selected = ($i==$id) ? "selected=\"selected\"" : "" ;
   
$recipients .= "<option value=\"".$k."\" $selected >".trim($cfg_names[$k])."</option>\n";
   
$i++;
    }
$recipients .= "</select>\n";

$sender_email = isset($sender_email) ? $sender_email : '';
$sender_name = isset($sender_name) ? $sender_name : '';

$sender_email = (empty($sender_email) && !empty($usr['profile']['user_email'])) ? $usr['profile']['user_email'] : $sender_email;
$sender_name = (empty($sender_name) && $usr['id'] > 0) ? $usr['name']: $sender_name;

for (
$i = 1; $i <= 3; $i++)
  {
$antispam_key [] = rand(1,9); }

$antispam_fak = array_reverse($antispam_key);
$antispam_key = implode ('.', $antispam_key);
$antispam_fak = implode ('.', $antispam_fak);

$antispam = "&nbsp; <strong>".$antispam_key."</strong> &nbsp;";
$antispam .= sed_textbox('sender_key', $sender_key, 8, 8);
$antispam .= sed_textbox_hidden('sender_fak', $antispam_fak);

// ---------- Breadcrumbs
$urlpaths = array();
$urlpaths[sed_url("plug", "e=contact")] = $L['plu_title'];    

if (!empty(
$error_string))
    {
   
$t->assign("PLUGIN_CONTACT_ERROR_BODY", sed_alert($error_string, 'e'));
   
$t->parse("MAIN.PLUGIN_CONTACT_ERROR");
    }
   
if (!empty(
$message))
    {
   
$t->assign("PLUGIN_CONTACT_DONE_BODY", sed_alert($message, 's'));
   
$t->parse("MAIN.PLUGIN_CONTACT_DONE");
    }    
   
$t->assign(array(
 
"PLUGIN_CONTACT_TITLE" => "<a href=\"".sed_url("plug", "e=contact")."\">".$L['plu_title'] ."</a>",
 
"PLUGIN_CONTACT_SHORTTITLE" => $L['plu_title'],
 
"PLUGIN_CONTACT_BREADCRUMBS" => sed_breadcrumbs($urlpaths),
 
"PLUGIN_CONTACT_URL" => sed_url("plug", "e=contact"),
 
"PLUGIN_CONTACT_EXPLAIN" => $L['plu_explain'],
 
"PLUGIN_CONTACT_FORM" => sed_url("plug", "e=contact&a=send"),
 
"PLUGIN_CONTACT_RECIPIENTS_TITLE" => $L['plu_recipients_title'],
 
"PLUGIN_CONTACT_RECIPIENTS" => $recipients,
 
"PLUGIN_CONTACT_EMAIL_TITLE" => $L['plu_email_title'],
 
"PLUGIN_CONTACT_EMAIL" => sed_textbox('sender_email', isset($sender_email)?$sender_email:'', 32, 64),
 
"PLUGIN_CONTACT_NAME_TITLE" => $L['plu_name_title'],
 
"PLUGIN_CONTACT_NAME" => sed_textbox('sender_name', isset($sender_name)?$sender_name:'', 32, 64),
 
"PLUGIN_CONTACT_PHONE_TITLE" => $L['plu_phone_title'],
 
"PLUGIN_CONTACT_PHONE" => sed_textbox('sender_tel', isset($sender_tel)?$sender_tel:'', 18, 18),
 
"PLUGIN_CONTACT_SUBJECT_TITLE" => $L['plu_subject_title'],
 
"PLUGIN_CONTACT_SUBJECT" => sed_textbox('sender_subject', isset($sender_subject)?$sender_subject:'', 48, 64),
 
"PLUGIN_CONTACT_BODY_TITLE" => $L['plu_message_title'],
 
"PLUGIN_CONTACT_BODY" => sed_textarea('sender_message', isset($sender_message)?$sender_message:'', 8, 48, 'noeditor').sed_textbox_hidden('sender_tarp', ''),
 
"PLUGIN_CONTACT_REQUIRED" => $L['plu_required'],
 
"PLUGIN_CONTACT_ANTISPAM" => $L['plu_verify'].$antispam,
 
"PLUGIN_CONTACT_EXTRA1" => $cfg['plugin']['contact']['extra1'],
 
"PLUGIN_CONTACT_EXTRA2" => $cfg['plugin']['contact']['extra2'],
 
"PLUGIN_CONTACT_EXTRA3" => $cfg['plugin']['contact']['extra3'],
 
"PLUGIN_CONTACT_SEND" => $L['plu_send']
));

?>
Presented with Sourceer