[ Index ]
 

Code source de Phorum 5.1.25

Accédez au Source d'autres logiciels libres

Classes | Fonctions | Variables | Constantes | Tables

title

Body

[fermer]

/include/controlcenter/ -> email.php (source)

   1  <?php
   2  
   3  ////////////////////////////////////////////////////////////////////////////////
   4  //                                                                            //
   5  //   Copyright (C) 2006  Phorum Development Team                              //
   6  //   http://www.phorum.org                                                    //
   7  //                                                                            //
   8  //   This program is free software. You can redistribute it and/or modify     //
   9  //   it under the terms of either the current Phorum License (viewable at     //
  10  //   phorum.org) or the Phorum License that was distributed with this file    //
  11  //                                                                            //
  12  //   This program is distributed in the hope that it will be useful,          //
  13  //   but WITHOUT ANY WARRANTY, without even the implied warranty of           //
  14  //   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.                     //
  15  //                                                                            //
  16  //   You should have received a copy of the Phorum License                    //
  17  //   along with this program.                                                 //
  18  ////////////////////////////////////////////////////////////////////////////////
  19  
  20  if ( !defined( "PHORUM_CONTROL_CENTER" ) ) return;
  21  // need this for banlist-checks
  22  include_once ("./include/profile_functions.php");
  23  
  24  // email-verification
  25  if($PHORUM['registration_control']) {
  26      //$PHORUM['DATA']['PROFILE']['email_temp']="email_address@bogus.com|bla";
  27      if (!empty($PHORUM['DATA']['PROFILE']['email_temp'])) {
  28              list($PHORUM['DATA']['PROFILE']['email_temp_part'],$bogus)=explode("|",$PHORUM['DATA']['PROFILE']['email_temp']);
  29      }
  30  }
  31  
  32  $email_temp_part="";
  33  
  34  if ( count( $_POST ) ) {
  35  
  36      if ( empty( $_POST["email"] ) ) {
  37          $error = $PHORUM["DATA"]["LANG"]["ErrRequired"];
  38      } elseif (!phorum_valid_email( $_POST["email"])) {
  39          $error = $PHORUM["DATA"]["LANG"]["ErrEmail"];
  40      } elseif ($PHORUM['user']['email'] != $_POST["email"] && phorum_user_check_email($_POST["email"])) {
  41          $error = $PHORUM["DATA"]["LANG"]["ErrEmailExists"];
  42      } elseif (!phorum_check_ban_lists($_POST["email"], PHORUM_BAD_EMAILS)) {
  43          $error = $PHORUM["DATA"]["LANG"]["ErrBannedEmail"];
  44      } elseif (isset($PHORUM['DATA']['PROFILE']['email_temp_part']) && !empty($_POST['email_verify_code']) && $PHORUM['DATA']['PROFILE']['email_temp_part']."|".$_POST['email_verify_code'] != $PHORUM['DATA']['PROFILE']['email_temp']) {
  45          $error = $PHORUM['DATA']['LANG']['ErrWrongMailcode'];
  46      } else {
  47          // flip this due to db vs. UI wording.
  48          $_POST["hide_email"] = ( isset($_POST["hide_email"]) ) ? 0 : 1;
  49  
  50          $_POST['moderation_email'] = ( isset($_POST['moderation_email']) && phorum_user_moderate_allowed(PHORUM_MODERATE_ALLOWED_ANYWHERE) ) ? 1 : 0;
  51  
  52          // Remember this for the template.
  53          if (isset($PHORUM['DATA']['PROFILE']['email_temp_part'])) {
  54              $email_temp_part = $PHORUM['DATA']['PROFILE']['email_temp_part'];
  55          }
  56  
  57          // do we need to send a confirmation-mail?
  58          if(isset($PHORUM['DATA']['PROFILE']['email_temp_part']) && !empty($_POST['email_verify_code']) && $PHORUM['DATA']['PROFILE']['email_temp_part']."|".$_POST['email_verify_code'] == $PHORUM['DATA']['PROFILE']['email_temp']) {
  59                 $_POST['email']=$PHORUM['DATA']['PROFILE']['email_temp_part'];
  60                 $_POST['email_temp']="";
  61                 $email_temp_part="";
  62          } elseif($PHORUM['registration_control'] && !empty($_POST['email']) && strtolower($_POST['email']) != strtolower($PHORUM["DATA"]["PROFILE"]['email'])) {
  63              // ... generate the confirmation-code ... //
  64              $conf_code= mt_rand ( 1000000, 9999999);
  65              $_POST['email_temp']=$_POST['email']."|".$conf_code;
  66              // ... send email ... //
  67              $maildata=array(
  68              'mailmessage'   => wordwrap($PHORUM['DATA']['LANG']['EmailVerifyBody'], 72),
  69              'mailsubject'   => $PHORUM['DATA']['LANG']['EmailVerifySubject'],
  70              'uname'         => $PHORUM['DATA']['PROFILE']['username'],
  71              'newmail'       => $_POST['email'],
  72              'mailcode'      => $conf_code,
  73              'cc_url'        => phorum_get_url(PHORUM_CONTROLCENTER_URL, "panel=" . PHORUM_CC_MAIL)
  74              );
  75              phorum_email_user(array($_POST['email']),$maildata);
  76  
  77              // Remember this for the template.
  78              $email_temp_part = $_POST['email'];
  79              unset($_POST['email']);
  80          }
  81          list($error,$okmsg) = phorum_controlcenter_user_save( $panel );
  82      }
  83  }
  84  
  85  if (!empty($email_temp_part)) {
  86      $PHORUM['DATA']['PROFILE']['email_temp_part'] = $email_temp_part;
  87  }
  88  
  89  // flip this due to db vs. UI wording.
  90  if ( !empty( $PHORUM['DATA']['PROFILE']["hide_email"] ) ) {
  91      $PHORUM["DATA"]["PROFILE"]["hide_email_checked"] = "";
  92  } else {
  93      // more html stuff in the code. yuck.
  94      $PHORUM["DATA"]["PROFILE"]["hide_email_checked"] = " checked=\"checked\"";
  95  }
  96  
  97  if(phorum_user_moderate_allowed(PHORUM_MODERATE_ALLOWED_ANYWHERE)){
  98      $PHORUM["DATA"]["PROFILE"]["show_moderate_options"] = true;
  99  
 100      if ( !empty( $PHORUM['DATA']['PROFILE']["moderation_email"] ) ) {
 101          $PHORUM["DATA"]["PROFILE"]["moderation_email_checked"] = " checked=\"checked\"";
 102      } else {
 103          $PHORUM["DATA"]["PROFILE"]["moderation_email_checked"] = "";
 104      }
 105  } else {
 106      $PHORUM["DATA"]["PROFILE"]["show_moderate_options"] = false;
 107  }
 108  
 109  $PHORUM["DATA"]["PROFILE"]["EMAIL_CONFIRM"]=$PHORUM["registration_control"];
 110  
 111  
 112  $PHORUM["DATA"]["PROFILE"]["block_title"] = $PHORUM["DATA"]["LANG"]["EditMailsettings"];
 113  
 114  $PHORUM['DATA']['PROFILE']['MAILSETTINGS'] = 1;
 115  $template = "cc_usersettings";
 116  
 117  ?>


Généré le : Thu Nov 29 12:22:27 2007 par Balluche grâce à PHPXref 0.7
  Clicky Web Analytics