function plugin_ticketmail_install() { global $DB; $migration = new Migration(100); //Fresh install if (!TableExists('glpi_plugin_ticketmail_profiles')) { $query = "CREATE TABLE `glpi_plugin_ticketmail_profiles` (\n\t\t\t\t\t`id` int(11) NOT NULL default '0' COMMENT 'RELATION to glpi_profiles (id)',\n\t\t\t\t\t`show_ticketmail_onglet` char(1) collate utf8_unicode_ci default NULL,\n\t\t\t\t\tPRIMARY KEY (`id`)\n\t\t\t\t ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;"; $DB->queryOrDie($query, $DB->error()); $migration->executeMigration(); include_once GLPI_ROOT . "/plugins/ticketmail/inc/profile.class.php"; PluginTicketmailProfile::createAdminAccess($_SESSION['glpiactiveprofile']['id']); } else { // Since v0.84 remove "profiles_id" column and use "id" if (FieldExists('glpi_plugin_ticketmail_profiles', 'profiles_id')) { $drop_column_query = "ALTER TABLE glpi_plugin_ticketmail_profiles DROP COLUMN `id`;"; $rename_column_query = "ALTER TABLE glpi_plugin_ticketmail_profiles\n\t\t\t\t\t\t\t\t\tCHANGE profiles_id id int(11) NOT NULL default '0'\n\t\t\t\t\t\t\t\t\tCOMMENT 'RELATION to glpi_profiles (id)';"; $DB->queryOrDie($drop_column_query, $DB->error()); $DB->queryOrDie($rename_column_query, $DB->error()); $add_primarykey_query = "ALTER TABLE glpi_plugin_ticketmail_profiles\n\t\t\t\t\t\t\t\t\t ADD PRIMARY KEY (id);"; $drop_old_index_query = "ALTER TABLE glpi_plugin_ticketmail_profiles\n\t\t\t\t\t\t\t\t\t DROP INDEX profiles_id;"; $DB->queryOrDie($add_primarykey_query, $DB->error()); $DB->queryOrDie($drop_old_index_query, $DB->error()); } } return true; }
<?php include "../../../inc/includes.php"; Session::checkRight("profile", "r"); $prof = new PluginTicketmailProfile(); if (isset($_POST['update_user_profile'])) { $prof->update($_POST); Html::back(); }
<?php include "../../../inc/includes.php"; if (isset($_POST["send"])) { $mmail = new NotificationMail(); $query = "SELECT email FROM glpi_useremails WHERE users_id=" . $_SESSION['glpiID']; if ($result = $DB->query($query)) { if ($DB->numrows($result) > 0) { $row = $DB->fetch_assoc($result); $mmail->From = $row['email']; $mmail->FromName = $row['email']; } } $body = str_replace("\\r", "", str_replace("\\n", "\n", $_POST['body'])); if ($_POST['users_id_ticketmail']) { $address = PluginTicketmailProfile::getEmail($_POST['users_id_ticketmail']); } else { $address = $_POST["address"]; } if (!NotificationMail::isUserAddressValid($address)) { Session::addMessageAfterRedirect(__("Invalid email address"), false, ERROR); } $mmail->AddAddress($address, $address); $mmail->Subject = $_POST["subject"]; $mmail->Body = $body; $mmail->MessageID = "GLPI-ticketmail" . time() . "." . rand() . "@" . php_uname('n'); if (!$mmail->Send()) { Session::addMessageAfterRedirect(__("Your email could not be processed.\nIf the problem persists, contact the administrator"), false, ERROR); } else { Toolbox::logInFile("mail", sprintf(__('%1$s: %2$s'), sprintf(__('An email was sent to %s'), $address), $_POST["subject"] . "\n")); $changes[0] = 0;