diff --git a/include/i18n/en_US/help/tips/emails.email.yaml b/include/i18n/en_US/help/tips/emails.email.yaml index 8c0ae0f360df536b7ffbeb635f2af2e7d6cf5ae4..5735bdbb638a7b4ec11700ed9f2818fa89b59b30 100644 --- a/include/i18n/en_US/help/tips/emails.email.yaml +++ b/include/i18n/en_US/help/tips/emails.email.yaml @@ -13,32 +13,39 @@ # must match the HTML #ids put into the page template. # --- -email_information_settings: - title: Email Information & Settings - content: > - -email_address: - title: Email Address - content: > - -email_name: - title: Email Name - content: > - new_ticket_help_topic: title: New Ticket Help Topic content: > - Choose the <span class="doc-desc-title">Help Topic</span> to which incoming mail to this addressed will belong. + Choose a <span class="doc-desc-title">Help Topic</span> to be + automatically associated with tickets created via this Email + Address. + <br/><br/> + Forms associated with the Help Topic will be added to the ticket, + but will not have any data. + links: + - title: Manage Help Topics + href: /scp/helptopics.php new_ticket_priority: title: New Ticket Priority content: > - Choose the <span class="doc-desc-title">ticket priority</span> for tickets to have that were created from mail sent to this address. + Choose the <span class="doc-desc-title">priority</span> for new + tickets created via ths Email Address. new_ticket_department: title: New Ticket Department content: > - Choose the <span class="doc-desc-title">Department</span> to which incoming mail to this addressed will be routed. + Choose the <span class="doc-desc-title">Department</span> to which + new tickets created via this Email Address will be routed. + links: + - title: Manage Departments + href: /scp/departments.php + +auto_response: + title: New Ticket Auto-Response + content: > + You may disable the Auto-Response sent to the User when a new ticket + is created via this Email Address. username: title: Username @@ -49,81 +56,83 @@ password: content: > login_information: - title: Login Information + title: Email Login Information content: > - While this is optional, it is required if IMAP/POP or SMTP (with - authorization) are enabled. + The <span class="doc-desc-title">Username</span> and <span + class="doc-desc-title">Password</span> are required to fetch email + from IMAP / POP mail boxes as well as to send email through SMTP. mail_account: - title: Mail Account + title: Fetching Email content: > - Optional setting for fetching incoming emails. Mail fetching must be enabled with autocron active or external cron setup. + Fetch emails from a remote IMAP or POP mail box and convert them + to tickets in your help desk. links: - title: Manage <span class="doc-desc-title">Email Polling</span> & <span class="doc-desc-title">AutoCron</span> settings. href: /scp/settings.php?t=emails -status: - title: Status - content: > - -host: - title: Host - content: > -port: - title: Port +host_and_port: + title: Remote Host content: > - Enter the proper IMAP/POP port as prescribed by your host. We recommend that you choose IMAP/SSL + Enter the <span class="doc-desc-title">hostname</span> and <span + class="doc-desc-title">port</span> number for your mail server. This + may be available in the documentation for your hosting account or + from your email administrator. protocol: - title: Protocol - content: > - IMAP is recommended. - -encryption: - title: Encryption + title: Mail Box Protocol content: > - SSL is recommended. + Select the mail box protocol supported by your remote mail server. + IMAP is recommended and SSL is encouraged if at all possible. fetch_frequency: title: Fetch Frequency content: > - Enter the duration of time to be passed between the helpdesk's attempts to check the email address's inbox for new mail. + Enter how often, in minutes, the system will poll the mail box. + <br/><br/> + This will define the average delay in receiving an Auto-Response + after a User sends an email to this mail box. emails_per_fetch: title: Emails Per Fetch content: > - Decide the maximum number of emails fetched per fetching cycle. + Enter the number of emails processed at one time. fetched_emails: title: Fetched Emails content: > + Decide what to do with processed emails: + <br/><br/> + <span class="doc-desc-opt"><b>Move to Folder</b></span>: + This will backup your email from the INBOX to a + folder you specify. If the folder does not yet exist on the server, + the system will attempt to automatically create it. + (<b>Recommended</b>) + <hr> + <span class="doc-desc-opt"><b>Delete Emails</b></span>: This will delete + your email from the INBOX once it is processed. + <hr> + <span class="doc-desc-opt"><b>Do Nothing</b></span>: This will leave emails + in your INBOX. The system will record the + message ids of your email and attempt not to refetch it. However, + this option may cause duplicate tickets to be created. + (<em>Not Recommended</em>) smtp_settings: title: SMTP Settings content: > - When enabled, the <span class="doc-desc-title">email account</span> will use - the SMTP server instead of internal PHP mail() function for outgoing emails. - -status: - title: Status - content: > - -smtp_host: - title: SMTP Host - content: > - -smtp_port: - title: SMTP Port - content: > + Email sent from the help desk can be sent through an SMTP server. + This is recommended, if possible, as it will increase the likelyhood + of email delivery and will make the emails less likely to be marked + as spam. -authentication_required: - title: Authentication Required - content: > - -allow_header_spoofing: +header_spoofing: title: Allow Header Spoofing content: > + Enable this to allow sending emails via this mail box from an address + other that the one given in the <span class="doc-desc-title">Email + Address</span> setting above. + <br/><br/> + This advanced setting is generally used when sending mail from + aliases of this mail box. -internal_notes: - title: Internal Notes - content: > diff --git a/include/staff/email.inc.php b/include/staff/email.inc.php index c36ec79d9bad6b57f93a9682c5b8b4ba210a7499..c54ec8085b3c586b878af7ead77d86f6c8b3b7c7 100644 --- a/include/staff/email.inc.php +++ b/include/staff/email.inc.php @@ -63,34 +63,37 @@ $info=Format::htmlchars(($errors && $_POST)?$_POST:$info); <span class="error">* <?php echo $errors['name']; ?> </span> </td> </tr> + <tr> + <th colspan="2"> + <em><strong>New Ticket Settings</strong></em> + </th> + </tr> <tr> <td width="180"> - New Ticket Help Topic + Department </td> <td> - <span> - <select name="topic_id"> - <option value="0" selected="selected">— Empty —</option> + <span> + <select name="dept_id"> + <option value="0" selected="selected">— System Default —</option> <?php - $sql='SELECT topic_id, topic FROM '.TOPIC_TABLE.' T ORDER by topic'; + $sql='SELECT dept_id, dept_name FROM '.DEPT_TABLE.' dept ORDER by dept_name'; if(($res=db_query($sql)) && db_num_rows($res)){ while(list($id,$name)=db_fetch_row($res)){ - $selected=($info['topic_id'] && $id==$info['topic_id'])?'selected="selected"':''; + $selected=($info['dept_id'] && $id==$info['dept_id'])?'selected="selected"':''; echo sprintf('<option value="%d" %s>%s</option>',$id,$selected,$name); } } ?> </select> - <i class="help-tip icon-question-sign" href="#new_ticket_help_topic"></i> - </span> - <span class="error"> - <?php echo $errors['topic_id']; ?> - </span> + <i class="help-tip icon-question-sign" href="#new_ticket_department"></i> + </span> + <span class="error"><?php echo $errors['dept_id']; ?></span> </td> </tr> <tr> <td width="180"> - New Ticket Priority + Priority </td> <td> <span> @@ -113,25 +116,27 @@ $info=Format::htmlchars(($errors && $_POST)?$_POST:$info); </tr> <tr> <td width="180"> - New Ticket Dept. + Help Topic </td> <td> <span> - <select name="dept_id"> - <option value="0" selected="selected">— System Default —</option> + <select name="topic_id"> + <option value="0" selected="selected">— None —</option> <?php - $sql='SELECT dept_id, dept_name FROM '.DEPT_TABLE.' dept ORDER by dept_name'; + $sql='SELECT topic_id, topic FROM '.TOPIC_TABLE.' T ORDER by topic'; if(($res=db_query($sql)) && db_num_rows($res)){ while(list($id,$name)=db_fetch_row($res)){ - $selected=($info['dept_id'] && $id==$info['dept_id'])?'selected="selected"':''; + $selected=($info['topic_id'] && $id==$info['topic_id'])?'selected="selected"':''; echo sprintf('<option value="%d" %s>%s</option>',$id,$selected,$name); } } ?> </select> - <i class="help-tip icon-question-sign" href="#new_ticket_department"></i> + <i class="help-tip icon-question-sign" href="#new_ticket_help_topic"></i> + </span> + <span class="error"> + <?php echo $errors['topic_id']; ?> </span> - <span class="error"><?php echo $errors['dept_id']; ?></span> </td> </tr> <tr> @@ -140,13 +145,14 @@ $info=Format::htmlchars(($errors && $_POST)?$_POST:$info); </td> <td> <label><input type="checkbox" name="noautoresp" value="1" <?php echo $info['noautoresp']?'checked="checked"':''; ?> > - <strong>Disable</strong> new ticket auto-response for this - email. Override global and dept. settings.</label> + <strong>Disable</strong> for this Email Address + </label> + <i class="help-tip icon-question-sign" href="#auto_response"></i> </td> </tr> <tr> <th colspan="2"> - <em><strong>Login Information</strong> <i class="help-tip icon-question-sign" href="#login_information"></i></em> + <em><strong>Email Login Information</strong> <i class="help-tip icon-question-sign" href="#login_information"></i></em> </th> </tr> <tr> @@ -172,7 +178,7 @@ $info=Format::htmlchars(($errors && $_POST)?$_POST:$info); </tr> <tr> <th colspan="2"> - <em><strong>Mail Account</strong> <i class="help-tip icon-question-sign" href="#mail_account"></i> <font class="error"> <?php echo $errors['mail']; ?></font></em> + <em><strong>Fetching Email via IMAP or POP</strong> <i class="help-tip icon-question-sign" href="#mail_account"></i> <font class="error"> <?php echo $errors['mail']; ?></font></em> </th> </tr> <tr> @@ -184,52 +190,45 @@ $info=Format::htmlchars(($errors && $_POST)?$_POST:$info); <font class="error"> <?php echo $errors['mail_active']; ?></font> </td> </tr> - <tr><td>Host</td> + <tr><td>Hostname</td> <td> <span> <input type="text" name="mail_host" size=35 value="<?php echo $info['mail_host']; ?>"> <font class="error"> <?php echo $errors['mail_host']; ?></font> + <i class="help-tip icon-question-sign" href="#host_and_port"></i> </span> </td> </tr> - <tr><td>Port</td> + <tr><td>Port Number</td> <td><input type="text" name="mail_port" size=6 value="<?php echo $info['mail_port']?$info['mail_port']:''; ?>"> <span> - <i class="help-tip icon-question-sign" href="#port"></i> <font class="error"> <?php echo $errors['mail_port']; ?></font> + <i class="help-tip icon-question-sign" href="#host_and_port"></i> </span> </td> </tr> - <tr><td>Protocol</td> + <tr><td>Mail Box Protocol</td> <td> <span> - <select name="mail_protocol"> - <option value='POP'>— Select Mail Protocol —</option> - <option value='POP' <?php echo ($info['mail_protocol']=='POP')?'selected="selected"':''; ?> >POP</option> - <option value='IMAP' <?php echo ($info['mail_protocol']=='IMAP')?'selected="selected"':''; ?> >IMAP</option> + <select name="mail_proto"> + <option value=''>— Select Protocol —</option> +<?php + foreach (MailFetcher::getSupportedProtos() as $proto=>$desc) { ?> + <option value="<?php echo $proto; ?>" <?php + if ($info['mail_proto'] == $proto) echo 'selected="selected"'; + ?>><?php echo $desc; ?></option> +<?php } ?> </select> - <i class="help-tip icon-question-sign" href="#protocol"></i> <font class="error"> <?php echo $errors['mail_protocol']; ?></font> + <i class="help-tip icon-question-sign" href="#protocol"></i> </span> </td> </tr> - <tr><td>Encryption</td> - <td> - <span> - <select name="mail_encryption"> - <option value='NONE'>None</option> - <option value='SSL' <?php echo ($info['mail_encryption']=='SSL')?'selected="selected"':''; ?> >SSL</option> - </select> - <i class="help-tip icon-question-sign" href="#encryption"></i> - <font class="error"> <?php echo $errors['mail_encryption']; ?></font> - </span> - </td> - </tr> <tr><td>Fetch Frequency</td> <td> <span> - <input type="text" name="mail_fetchfreq" size=4 value="<?php echo $info['mail_fetchfreq']?$info['mail_fetchfreq']:''; ?>"> Delay intervals in minutes + <input type="text" name="mail_fetchfreq" size=4 value="<?php echo $info['mail_fetchfreq']?$info['mail_fetchfreq']:''; ?>"> minutes <i class="help-tip icon-question-sign" href="#fetch_frequency"></i> <font class="error"> <?php echo $errors['mail_fetchfreq']; ?></font> </span> @@ -238,7 +237,7 @@ $info=Format::htmlchars(($errors && $_POST)?$_POST:$info); <tr><td>Emails Per Fetch</td> <td> <span> - <input type="text" name="mail_fetchmax" size=4 value="<?php echo $info['mail_fetchmax']?$info['mail_fetchmax']:''; ?>"> Maximum emails to process per fetch. + <input type="text" name="mail_fetchmax" size=4 value="<?php echo $info['mail_fetchmax']?$info['mail_fetchmax']:''; ?>"> emails <i class="help-tip icon-question-sign" href="#emails_per_fetch"></i> <font class="error"> <?php echo $errors['mail_fetchmax']; ?></font> </span> @@ -247,20 +246,22 @@ $info=Format::htmlchars(($errors && $_POST)?$_POST:$info); <tr><td valign="top">Fetched Emails</td> <td> <label><input type="radio" name="postfetch" value="archive" <?php echo ($info['postfetch']=='archive')? 'checked="checked"': ''; ?> > - Move to: <input type="text" name="mail_archivefolder" size="20" value="<?php echo $info['mail_archivefolder']; ?>"/> folder.</label> - <font class="error"> <?php echo $errors['mail_folder']; ?></font> + Move to folder: <input type="text" name="mail_archivefolder" size="20" value="<?php echo $info['mail_archivefolder']; ?>"/></label> + <font class="error"><?php echo $errors['mail_folder']; ?></font> + <i class="help-tip icon-question-sign" href="#fetched_emails"></i> + <br/> <label><input type="radio" name="postfetch" value="delete" <?php echo ($info['postfetch']=='delete')? 'checked="checked"': ''; ?> > - Delete fetched emails </label> - + Delete emails</label> + <br/> <label><input type="radio" name="postfetch" value="" <?php echo (isset($info['postfetch']) && !$info['postfetch'])? 'checked="checked"': ''; ?> > - Do nothing (Not recommended) </label> - <br /><em>Moving fetched emails to a backup folder is highly recommended.</em> <font class="error"><?php echo $errors['postfetch']; ?></font> + Do nothing <em>(not recommended)</em></label> + <br /><font class="error"><?php echo $errors['postfetch']; ?></font> </td> </tr> <tr> <th colspan="2"> - <em><strong>SMTP Settings</strong> <i class="help-tip icon-question-sign" href="#smtp_settings"></i> <font class="error"> <?php echo $errors['smtp']; ?></font></em> + <em><strong>Sending Email via SMTP</strong> <i class="help-tip icon-question-sign" href="#smtp_settings"></i> <font class="error"> <?php echo $errors['smtp']; ?></font></em> </th> </tr> <tr><td>Status</td> @@ -271,32 +272,35 @@ $info=Format::htmlchars(($errors && $_POST)?$_POST:$info); <font class="error"> <?php echo $errors['smtp_active']; ?></font> </td> </tr> - <tr><td>SMTP Host</td> + <tr><td>Hostname</td> <td><input type="text" name="smtp_host" size=35 value="<?php echo $info['smtp_host']; ?>"> - <font class="error"> <?php echo $errors['smtp_host']; ?></font> + <font class="error"><?php echo $errors['smtp_host']; ?></font> + <i class="help-tip icon-question-sign" href="#host_and_port"></i> </td> </tr> - <tr><td>SMTP Port</td> + <tr><td>Port Number</td> <td><input type="text" name="smtp_port" size=6 value="<?php echo $info['smtp_port']?$info['smtp_port']:''; ?>"> - <font class="error"> <?php echo $errors['smtp_port']; ?></font> + <font class="error"><?php echo $errors['smtp_port']; ?></font> + <i class="help-tip icon-question-sign" href="#host_and_port"></i> </td> </tr> <tr><td>Authentication Required</td> <td> <label><input type="radio" name="smtp_auth" value="1" - <?php echo $info['smtp_auth']?'checked':''; ?> /> Yes</label> + <?php echo $info['smtp_auth']?'checked':''; ?> /> Yes</label> <label><input type="radio" name="smtp_auth" value="0" - <?php echo !$info['smtp_auth']?'checked':''; ?> /> No</label> + <?php echo !$info['smtp_auth']?'checked':''; ?> /> No</label> <font class="error"> <?php echo $errors['smtp_auth']; ?></font> </td> </tr> <tr> - <td>Allow Header Spoofing</td> + <td>Header Spoofing</td> <td> <label><input type="checkbox" name="smtp_spoofing" value="1" <?php echo $info['smtp_spoofing'] ?'checked="checked"':''; ?>> - Allow email header spoofing <em>(only applies to emails being sent through this account)</em></label> + Allow for this Email Address</label> + <i class="help-tip icon-question-sign" href="#header_spoofing"></i> </td> </tr> <tr>