From 2830bb722f06098e10138b3c2ca42aaf04d5849e Mon Sep 17 00:00:00 2001 From: "Michael Kaufmann (d00p)" Date: Fri, 7 May 2010 06:13:07 +0000 Subject: [PATCH] - added possibility to get new ftp-user data e-mailed to customer, fixes #208 --- customer_ftp.php | 43 +++++++++++++++++++++++++ lng/english.lng.php | 6 +++- lng/german.lng.php | 6 +++- lng/polish.lng.php | 2 +- templates/customer/ftp/accounts_add.tpl | 4 +++ templates/customer/mysql/mysqls_add.tpl | 2 +- 6 files changed, 59 insertions(+), 4 deletions(-) diff --git a/customer_ftp.php b/customer_ftp.php index 27fc5aa2..0bb27c25 100644 --- a/customer_ftp.php +++ b/customer_ftp.php @@ -142,6 +142,12 @@ elseif($page == 'accounts') $password = validate($_POST['ftp_password'], 'password'); $password = validatePassword($password); + $sendinfomail = intval($_POST['sendinfomail']); + if($sendinfomail != 1) + { + $sendinfomail = 0; + } + if($settings['customer']['ftpatdomain'] == '1') { $ftpusername = validate($_POST['ftp_username'], 'username', '/^[a-zA-Z0-9][a-zA-Z0-9\-_]+\$?$/'); @@ -191,6 +197,41 @@ elseif($page == 'accounts') $log->logAction(USR_ACTION, LOG_INFO, "added ftp-account '" . $username . " (" . $path . ")'"); inserttask(5); + + if($sendinfomail == 1) + { + $replace_arr = array( + 'CUST_NAME' => getCorrectUserSalutation($userinfo), + 'USR_NAME' => $username, + 'USR_PASS' => $password, + 'USR_PATH' => makeCorrectDir(substr($path, strlen($userinfo['documentroot']))) + ); + + $mail_body = replace_variables($lng['customer']['ftp_add']['infomail_body']['main'], $replace_arr); + + $_mailerror = false; + try { + $mail->Subject = $lng['customer']['ftp_add']['infomail_subject']; + $mail->AltBody = $mail_body; + $mail->MsgHTML(str_replace("\n", "
", $mail_body)); + $mail->AddAddress($userinfo['email'], getCorrectUserSalutation($userinfo)); + $mail->Send(); + } catch(phpmailerException $e) { + $mailerr_msg = $e->errorMessage(); + $_mailerror = true; + } catch (Exception $e) { + $mailerr_msg = $e->getMessage(); + $_mailerror = true; + } + + if ($_mailerror) { + $log->logAction(USR_ACTION, LOG_ERR, "Error sending mail: " . $mailerr_msg); + standard_error('errorsendingmail', $userinfo['email']); + } + + $mail->ClearAddresses(); + } + redirectTo($filename, Array('page' => $page, 's' => $s)); } } @@ -210,6 +251,8 @@ elseif($page == 'accounts') } } + $sendinfomail = makeyesno('sendinfomail', '1', '0', '0'); + eval("echo \"" . getTemplate("ftp/accounts_add") . "\";"); } } diff --git a/lng/english.lng.php b/lng/english.lng.php index e126687d..9361ff26 100644 --- a/lng/english.lng.php +++ b/lng/english.lng.php @@ -1350,7 +1350,7 @@ $lng['serversettings']['stdsubdomainhost']['description'] = 'What hostname shoul // ADDED IN FROXLOR 0.9.4-svn1 $lng['ftp']['account_edit'] = 'Edit ftp account'; $lng['ftp']['editpassdescription'] = 'Set new password or leave blank for no change.'; -$lng['mysql']['sendinfomail'] = 'Send data via email to me'; +$lng['customer']['sendinfomail'] = 'Send data via email to me'; $lng['customer']['mysql_add']['infomail_subject'] = '[Froxlor] New database created'; $lng['customer']['mysql_add']['infomail_body']['pma'] = "\nYou can access your databases using phpMyAdmin via {URI}\n"; $lng['customer']['mysql_add']['infomail_body']['main'] = "Hello {CUST_NAME},\n\nyou have just added a new database. Here is the entered information:\n\nDatabasename: {DB_NAME}\nPassword: {DB_PASS}\nDescription: {DB_DESC}\nDB-Hostname: {DB_SRV}\n{PMA_URI}\nYours sincerely, the Froxlor-Team"; @@ -1391,4 +1391,8 @@ $lng['serversettings']['ftpserver']['desc'] = 'If pureftpd is selected the .ftpq // CHANGED IN FROXLOR 0.9.6-svn6 $lng['serversettings']['ftpprefix']['description'] = 'Which prefix should ftp accounts have?
If you change this you also have to change the Quota SQL Query in your FTP Server config file in case you use it! '; +// ADDED IN FROXLOR 0.9.7-svn1 +$lng['customer']['ftp_add']['infomail_subject'] = '[Froxlor] New ftp-user created'; +$lng['customer']['ftp_add']['infomail_body']['main'] = "Hello {CUST_NAME},\n\nyou have just added a new ftp-user. Here is the entered information:\n\nUsername: {USR_NAME}\nPassword: {USR_PASS}\nPath: {USR_PATH}\n\nYours sincerely, the Froxlor-Team"; + ?> diff --git a/lng/german.lng.php b/lng/german.lng.php index 2f0ee193..21e0fdbc 100644 --- a/lng/german.lng.php +++ b/lng/german.lng.php @@ -1330,7 +1330,7 @@ $lng['serversettings']['stdsubdomainhost']['description'] = 'Welcher Hostname so // ADDED IN FROXLOR 0.9.4-svn1 $lng['ftp']['account_edit'] = 'FTP Konto bearbeiten'; $lng['ftp']['editpassdescription'] = 'Neues Passwort setzen oder leer für keine Änderung.'; -$lng['mysql']['sendinfomail'] = 'Daten per E-Mail an mich senden'; +$lng['customer']['sendinfomail'] = 'Daten per E-Mail an mich senden'; $lng['customer']['mysql_add']['infomail_subject'] = '[Froxlor] Neue Datenbank erstellt'; $lng['customer']['mysql_add']['infomail_body']['pma'] = "\nDie Datenbank kann mit phpMyAdmin via {URI} verwaltet werden.\n"; $lng['customer']['mysql_add']['infomail_body']['main'] = "Hallo {CUST_NAME},\n\ndu hast gerade eine neue Datenbank angelegt. Hier die angegebenen Informationen:\n\nDatenbankname: {DB_NAME}\nPasswort: {DB_PASS}\nBeschreibung: {DB_DESC}\nDatenbank-Server: {DB_SRV}\n{PMA_URI}\nVielen Dank, das Froxlor-Team"; @@ -1387,4 +1387,8 @@ $lng['serversettings']['ftpserver']['desc'] = 'Wenn pureftpd ausgewählt ist // CHANGED IN FROXLOR 0.9.6-svn5 $lng['serversettings']['ftpprefix']['description'] = 'Welchen Prefix sollen die FTP-Benutzerkonten haben?
Wenn du das änderst, musst du auch das Quota SQL Query in der FTP Server Config ändern, solltest du FTP-Quotas benutzen!'; +// ADDED IN FROXLOR 0.9.7-svn1 +$lng['customer']['ftp_add']['infomail_subject'] = '[Froxlor] Neuer FTP-Benutzer erstellt'; +$lng['customer']['ftp_add']['infomail_body']['main'] = "Hallo {CUST_NAME},\n\ndu hast gerade einen neuen FTP-Benutzer angelegt. Hier die angegebenen Informationen:\n\nBenutzername: {USR_NAME}\nPasswort: {USR_PASS}\nPfad: {USR_PATH}\n\nVielen Dank, das Froxlor-Team"; + ?> diff --git a/lng/polish.lng.php b/lng/polish.lng.php index f919154d..1ca745ca 100644 --- a/lng/polish.lng.php +++ b/lng/polish.lng.php @@ -1349,7 +1349,7 @@ $lng['serversettings']['stdsubdomainhost']['description'] = 'What hostname shoul // ADDED IN FROXLOR 0.9.4-svn1 $lng['ftp']['account_edit'] = 'Edytuj konto ftp'; $lng['ftp']['editpassdescription'] = 'Ustal nowe hasło lub zostaw puste by nie zmieniać.'; -$lng['mysql']['sendinfomail'] = 'Send data via email to me'; +$lng['customer']['sendinfomail'] = 'Send data via email to me'; $lng['customer']['mysql_add']['infomail_subject'] = '[Froxlor] Nowa baza danych utworzona'; $lng['customer']['mysql_add']['infomail_body']['pma'] = "\nMasz dostęp do Twojej bazy danych uzywając phpMyAdmina pod adresem {URI}\n"; $lng['customer']['mysql_add']['infomail_body']['main'] = "Witaj {CUST_NAME},\n\nwłaśnie dodałeś nową bazę danych. Przesyłamy dane uruchomieniowe:\n\nBaza danych: {DB_NAME}\nHasło: {DB_PASS}\nOpis: {DB_DESC}\n{PMA_URI}\nZ poważaniem, Froxlor"; diff --git a/templates/customer/ftp/accounts_add.tpl b/templates/customer/ftp/accounts_add.tpl index ff83ce1e..cf44947c 100644 --- a/templates/customer/ftp/accounts_add.tpl +++ b/templates/customer/ftp/accounts_add.tpl @@ -25,6 +25,10 @@ $header {$lng['login']['password']}: + + {$lng['customer']['sendinfomail']}: + {$sendinfomail} + diff --git a/templates/customer/mysql/mysqls_add.tpl b/templates/customer/mysql/mysqls_add.tpl index 319d41ac..608d8e8a 100644 --- a/templates/customer/mysql/mysqls_add.tpl +++ b/templates/customer/mysql/mysqls_add.tpl @@ -22,7 +22,7 @@ $header - {$lng['mysql']['sendinfomail']}: + {$lng['customer']['sendinfomail']}: {$sendinfomail}