示例#1
0
function sendpassword($uniqkey)
{
    $cfg = EasySCP_Registry::get('Config');
    $sql = EasySCP_Registry::get('Db');
    $query = "\n\t\tSELECT\n\t\t\t`admin_name`, `created_by`, `fname`, `lname`, `email`\n\t\tFROM\n\t\t\t`admin`\n\t\tWHERE\n\t\t\t`uniqkey` = ?\n\t";
    $res = exec_query($sql, $query, $uniqkey);
    if ($res->recordCount() == 1) {
        $admin_name = $res->fields['admin_name'];
        $created_by = $res->fields['created_by'];
        $admin_fname = $res->fields['fname'];
        $admin_lname = $res->fields['lname'];
        $to = $res->fields['email'];
        $upass = passgen();
        setPassword($uniqkey, $upass);
        write_log('Lostpassword: '******': password updated');
        $query = "\n\t\t\tUPDATE\n\t\t\t\t`admin`\n\t\t\tSET\n\t\t\t\t`uniqkey` = ?,\n\t\t\t\t`uniqkey_time` = ?\n\t\t\tWHERE\n\t\t\t\t`uniqkey` = ?\n\t\t";
        exec_query($sql, $query, array('', '', $uniqkey));
        if ($created_by == 0) {
            $created_by = 1;
        }
        $data = get_lostpassword_password_email($created_by);
        $from_name = $data['sender_name'];
        $from_email = $data['sender_email'];
        $subject = $data['subject'];
        $message = $data['message'];
        $base_vhost = $cfg->BASE_SERVER_VHOST;
        $base_vhost_prefix = $cfg->BASE_SERVER_VHOST_PREFIX;
        if ($from_name) {
            $from = '"' . $from_name . '" <' . $from_email . '>';
        } else {
            $from = $from_email;
        }
        $search = array();
        $replace = array();
        $search[] = '{USERNAME}';
        $replace[] = $admin_name;
        $search[] = '{NAME}';
        $replace[] = $admin_fname . " " . $admin_lname;
        $search[] = '{PASSWORD}';
        $replace[] = $upass;
        $search[] = '{BASE_SERVER_VHOST}';
        $replace[] = $base_vhost;
        $search[] = '{BASE_SERVER_VHOST_PREFIX}';
        $replace[] = $base_vhost_prefix;
        $subject = str_replace($search, $replace, $subject);
        $message = str_replace($search, $replace, $message);
        $headers = 'From: ' . $from . "\n";
        $headers .= "MIME-Version: 1.0\nContent-Type: text/plain; charset=utf-8\nContent-Transfer-Encoding: 7bit\n";
        $headers .= 'X-Mailer: EasySCP lostpassword mailer';
        $mail_result = mail($to, $subject, $message, $headers);
        $mail_status = $mail_result ? 'OK' : 'NOT OK';
        $from = tohtml($from);
        write_log("Lostpassword activated: To: |{$to}|, From: |{$from}|, Status: |{$mail_status}| !", E_USER_NOTICE);
        return true;
    }
    return false;
}
示例#2
0
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 *
 * @link 		http://www.easyscp.net
 * @author 		EasySCP Team
 */
require '../../include/easyscp-lib.php';
check_login(__FILE__);
$cfg = EasySCP_Registry::get('Config');
$tpl = EasySCP_TemplateEngine::getInstance();
$template = 'admin/settings_lostpassword.tpl';
$user_id = $_SESSION['user_id'];
$selected_on = '';
$selected_off = '';
$data_1 = get_lostpassword_activation_email($user_id);
$data_2 = get_lostpassword_password_email($user_id);
if (isset($_POST['uaction']) && $_POST['uaction'] == 'apply') {
    $err_message = '';
    $data_1['subject'] = clean_input($_POST['subject1'], false);
    $data_1['message'] = clean_input($_POST['message1'], false);
    $data_2['subject'] = clean_input($_POST['subject2'], false);
    $data_2['message'] = clean_input($_POST['message2'], false);
    if (empty($data_1['subject']) || empty($data_2['subject'])) {
        $err_message = tr('Please specify a subject!');
    }
    if (empty($data_1['message']) || empty($data_2['message'])) {
        $err_message = tr('Please specify message!');
    }
    if (!empty($err_message)) {
        set_page_message($err_message, 'warning');
    } else {
示例#3
0
/**
 * Send password
 *
 * @param string $uniqueKey
 * @return bool TRUE when password was sended, FALSE otherwise
 */
function sendPassword($uniqueKey)
{
    /** @var $cfg iMSCP_Config_Handler_File */
    $cfg = iMSCP_Registry::get('config');
    $stmt = exec_query('SELECT `admin_name`, `created_by`, `fname`, `lname`, `email` FROM `admin` WHERE `uniqkey` = ?', $uniqueKey);
    if ($stmt->rowCount()) {
        $adminName = $stmt->fields['admin_name'];
        $createdBy = $stmt->fields['created_by'];
        $adminFirstName = $stmt->fields['fname'];
        $adminLastName = $stmt->fields['lname'];
        $to = $stmt->fields['email'];
        $userPassword = passgen();
        setPassword($uniqueKey, $userPassword);
        write_log('Lostpassword: '******': password updated', E_USER_NOTICE);
        exec_query('UPDATE `admin` SET `uniqkey` = ?, `uniqkey_time` = ? WHERE `uniqkey` = ?', array('', '', $uniqueKey));
        if ($createdBy == 0) {
            $createdBy = 1;
        }
        $data = get_lostpassword_password_email($createdBy);
        $fromName = $data['sender_name'];
        $fromEmail = $data['sender_email'];
        $subject = $data['subject'];
        $message = $data['message'];
        $baseServerVhostPrefix = $cfg['BASE_SERVER_VHOST_PREFIX'];
        $baseServerVhost = $cfg['BASE_SERVER_VHOST'];
        $baseServerVhostPort = $baseServerVhostPrefix == 'http://' ? $cfg['BASE_SERVER_VHOST_HTTP_PORT'] == '80' ? '' : ':' . $cfg['BASE_SERVER_VHOST_HTTP_PORT'] : ($cfg['BASE_SERVER_VHOST_HTTPS_PORT'] == '443' ? '' : ':' . $cfg['BASE_SERVER_VHOST_HTTPS_PORT']);
        if ($fromName) {
            $from = '"' . $fromName . '" <' . $fromEmail . '>';
        } else {
            $from = $fromEmail;
        }
        $search = array();
        $replace = array();
        $search[] = '{USERNAME}';
        $replace[] = $adminName;
        $search[] = '{NAME}';
        $replace[] = $adminFirstName . " " . $adminLastName;
        $search[] = '{PASSWORD}';
        $replace[] = $userPassword;
        $search[] = '{BASE_SERVER_VHOST_PREFIX}';
        $replace[] = $baseServerVhostPrefix;
        $search[] = '{BASE_SERVER_VHOST}';
        $replace[] = $baseServerVhost;
        $search[] = '{BASE_SERVER_VHOST_PORT}';
        $replace[] = $baseServerVhostPort;
        $subject = str_replace($search, $replace, $subject);
        $message = str_replace($search, $replace, $message);
        $headers = 'From: ' . $from . "\n";
        $headers .= "MIME-Version: 1.0\nContent-Type: text/plain; charset=utf-8\n";
        $headers .= "Content-Transfer-Encoding: 7bit\n";
        $headers .= 'X-Mailer: i-MSCP mailer';
        $mailResult = mail($to, $subject, $message, $headers);
        $mailStatus = $mailResult ? 'OK' : 'NOT OK';
        $from = tohtml($from);
        write_log("Lostpassword activated: To: |{$to}|, From: |{$from}|, Status: |{$mailStatus}| !", E_USER_NOTICE);
        return true;
    }
    return false;
}