2 /*********************************************************************************
3 * SugarCRM Community Edition is a customer relationship management program developed by
4 * SugarCRM, Inc. Copyright (C) 2004-2013 SugarCRM Inc.
6 * This program is free software; you can redistribute it and/or modify it under
7 * the terms of the GNU Affero General Public License version 3 as published by the
8 * Free Software Foundation with the addition of the following permission added
9 * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
10 * IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
11 * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
13 * This program is distributed in the hope that it will be useful, but WITHOUT
14 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15 * FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
18 * You should have received a copy of the GNU Affero General Public License along with
19 * this program; if not, see http://www.gnu.org/licenses or write to the Free
20 * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
23 * You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
24 * SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
26 * The interactive user interfaces in modified source and object code versions
27 * of this program must display Appropriate Legal Notices, as required under
28 * Section 5 of the GNU Affero General Public License version 3.
30 * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
31 * these Appropriate Legal Notices must retain the display of the "Powered by
32 * SugarCRM" logo. If the display of the logo is not reasonably feasible for
33 * technical reasons, the Appropriate Legal Notices must display the words
34 * "Powered by SugarCRM".
35 ********************************************************************************/
38 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
41 <link rel="SHORTCUT ICON" href="{$FAVICON_URL}">
42 <meta http-equiv="Content-Type" content="text/html; charset={$APP.LBL_CHARSET}">
43 <title>{$MOD.LBL_WIZARD_TITLE}</title>
45 <script type='text/javascript'>
46 function disableReturnSubmission(e) {
47 var key = window.event ? window.event.keyCode : e.which;
56 <body class="yui-skin-sam">
59 <table style="width:auto;height:600px;" align="center"><tr><td align="center">
61 <form id="UserWizard" name="UserWizard" enctype='multipart/form-data' method="POST" action="index.php" onkeypress="return disableReturnSubmission(event);">
62 <input type='hidden' name='action' value='SaveUserWizard'/>
63 <input type='hidden' name='module' value='Users'/>
64 <span class='error'>{$error.main}</span>
65 <script type="text/javascript" src="{sugar_getjspath file='cache/include/javascript/sugar_grp_yui_widgets.js'}"></script>
66 <script type="text/javascript" src="{sugar_getjspath file='modules/Emails/javascript/vars.js'}"></script>
67 <script type="text/javascript" src="{sugar_getjspath file='cache/include/javascript/sugar_grp_emails.js'}"></script>
68 <script type="text/javascript" src="{sugar_getjspath file='modules/Users/User.js'}"></script>
70 <div class="dashletPanelMenu wizard">
75 <div id="welcome" class="screen">
76 <table width="100%" border="0" cellspacing="0" cellpadding="0">
79 <div class="edit view">
80 <table width="100%" border="0" cellspacing="0" cellpadding="0">
82 <th align="left" scope="row" colspan="4"><h2>{$MOD.LBL_WIZARD_WELCOME_TITLE}</h2></th>
87 {if !$HIDE_IF_CAN_USE_DEFAULT_OUTBOUND}
88 <p> {$MOD.LBL_WIZARD_WELCOME}</p>
90 <p> {$MOD.LBL_WIZARD_WELCOME_NOSMTP}</p>
93 <div class="userWizWelcome"><img src='include/images/sugar_wizard_welcome.jpg' border='0' alt='{$MOD.LBL_WIZARD_WELCOME_TAB}' width='765px' height='325px'></div>
101 <div class="nav-buttons">
102 <input title="{$MOD.LBL_WIZARD_NEXT_BUTTON}"
103 class="button primary" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_NEXT_BUTTON} "
104 onclick="SugarWizard.changeScreen('personalinfo',false);" id="next_tab_personalinfo" />
108 <div id="personalinfo" class="screen">
109 <table width="100%" border="0" cellspacing="0" cellpadding="0">
112 <div class="edit view">
113 <table width="100%" border="0" cellspacing="0" cellpadding="0">
115 <th align="left" scope="row" colspan="4"><h2><slot>{$MOD.LBL_WIZARD_PERSONALINFO}</slot></h2></th>
118 <td align="left" scope="row" colspan="4"><i>{$MOD.LBL_WIZARD_PERSONALINFO_DESC}</i></td>
121 <td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_FIRST_NAME}:</slot></td>
122 <td width="33%"><slot><input id='first_name' name='first_name' tabindex='1' size='25' maxlength='25' type="text" value="{$FIRST_NAME}"></slot></td>
123 <td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_LAST_NAME}: <span class="required">{$APP.LBL_REQUIRED_SYMBOL}</span></slot></td>
124 <td width="33%"><slot><input id='last_name' name='last_name' tabindex='2' size='25' maxlength='25' type="text" value="{$LAST_NAME}"></slot></td>
127 <td scope="row" width="17%">
128 {$MOD.LBL_EMAIL}: {if $REQUIRED_EMAIL_ADDRESS}<span class="required">{$APP.LBL_REQUIRED_SYMBOL}</span>{/if}
130 <td width="33%"><slot><input name='email1' tabindex='3' size='30' maxlength='100' value='{$EMAIL1}' id='email1' /></slot></td>
131 <td scope="row" nowrap="nowrap"><slot> </slot></td>
132 <td><slot> </slot></td>
135 <td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_OFFICE_PHONE}:</slot></td>
136 <td width="33%" ><slot><input name='phone_work' type="text" tabindex='4' size='20' maxlength='25' value='{$PHONE_WORK}'></slot></td>
137 <td scope="row" nowrap="nowrap"><slot>{$MOD.LBL_MESSENGER_TYPE}:</slot></td>
138 <td ><slot>{$MESSENGER_TYPE_OPTIONS}</slot></td>
141 <td scope="row"><slot>{$MOD.LBL_MOBILE_PHONE}:</slot></td>
142 <td ><slot><input name='phone_mobile' type="text" tabindex='6' size='20' maxlength='25' value='{$PHONE_MOBILE}'></slot></td>
143 <td scope="row" nowrap="nowrap"><slot>{$MOD.LBL_MESSENGER_ID}:</slot></td>
144 <td ><slot><input name='messenger_id' type="text" tabindex='6' size='30' maxlength='100' value='{$MESSENGER_ID}'></slot></td>
147 <td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_PRIMARY_ADDRESS}:</slot></td>
148 <td width="33%" ><slot><textarea name='address_street' rows="2" tabindex='8' cols="30">{$ADDRESS_STREET}</textarea></slot></td>
149 <td scope="row" nowrap="nowrap"><slot> </slot></td>
150 <td><slot> </slot></td>
153 <td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_CITY}:</slot></td>
154 <td width="33%" ><slot><input name='address_city' tabindex='8' size='15' maxlength='100' value='{$ADDRESS_CITY}'></slot></td>
155 <td scope="row" nowrap="nowrap"><slot>{$MOD.LBL_STATE}:</slot></td>
156 <td><slot><input name='address_state' tabindex='9' size='15' maxlength='100' value='{$ADDRESS_STATE}'></slot></td>
159 <td scope="row" nowrap="nowrap"><slot>{$MOD.LBL_POSTAL_CODE}:</slot></td>
160 <td><slot><input name='address_postalcode' tabindex='9' size='10' maxlength='20' value='{$ADDRESS_POSTALCODE}'></slot></td>
161 <td scope="row" nowrap="nowrap"><slot>{$MOD.LBL_COUNTRY}:</slot></td>
162 <td><slot><input name='address_country' tabindex='10' size='10' maxlength='20' value='{$ADDRESS_COUNTRY}'></slot></td>
169 <div class="nav-buttons">
171 <input title="{$MOD.LBL_BACK}"
172 onclick="document.location.href='index.php?module=Configurator&action=AdminWizard&page=smtp';" class="button"
173 type="button" name="cancel" value=" {$MOD.LBL_WIZARD_BACK_BUTTON} " id="wizard_cancel"/>
175 <input title="{$MOD.LBL_WIZARD_BACK_BUTTON}"
176 class="button" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_BACK_BUTTON} "
177 onclick="SugarWizard.changeScreen('welcome',true);" id="previous_tab_welcome" />
179 <input title="{$MOD.LBL_WIZARD_NEXT_BUTTON}"
180 class="button primary" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_NEXT_BUTTON} "
181 onclick="SugarWizard.changeScreen('locale',false);" id="next_tab_locale" />
185 <div id="locale" class="screen">
186 <table width="100%" border="0" cellspacing="0" cellpadding="0">
189 <div class="edit view">
190 <table width="100%" border="0" cellspacing="0" cellpadding="0">
192 <th width="100%" align="left" scope="row" colspan="4">
193 <h2><slot>{$MOD.LBL_WIZARD_LOCALE}</slot></h2></th>
196 <td align="left" scope="row" colspan="4"><i>{$MOD.LBL_WIZARD_LOCALE_DESC}</i></td>
199 <td scope="row" nowrap="nowrap"><slot>{$MOD.LBL_TIMEZONE}:</slot> {sugar_help text=$MOD.LBL_TIMEZONE_TEXT }</td>
200 <td colspan="3"><slot><select tabindex='14' name='timezone'>{html_options options=$TIMEZONEOPTIONS selected=$TIMEZONE_CURRENT}</select></slot></td>
203 <td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_DATE_FORMAT}:</slot> {sugar_help text=$MOD.LBL_DATE_FORMAT_TEXT }</td>
204 <td width="33%"><slot><select tabindex='14' name='dateformat'>{$DATEOPTIONS}</select></slot></td>
205 <td scope="row" nowrap="nowrap"><slot>{$MOD.LBL_TIME_FORMAT}:</slot> {sugar_help text=$MOD.LBL_TIME_FORMAT_TEXT }</td>
206 <td ><slot><select tabindex='14' name='timeformat'>{$TIMEOPTIONS}</select></slot></td>
210 <td colspan="4"><hr /></td>
213 <td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_CURRENCY}:</slot> {sugar_help text=$MOD.LBL_CURRENCY_TEXT }</td>
215 <select tabindex='14' id='currency_select' name='currency' onchange='setSymbolValue(this.selectedIndex);setSigDigits();'>{$CURRENCY}</select>
216 <input type="hidden" id="symbol" value="">
218 <td width="17%" scope="row" nowrap="nowrap"></td>
222 <td width="17%" scope="row" nowrap="nowrap"><slot>
223 {$MOD.LBL_CURRENCY_SIG_DIGITS}:
226 <select id='sigDigits' onchange='setSigDigits(this.value);' name='default_currency_significant_digits'>{$sigDigits}</select>
228 <td width="17%" scope="row" nowrap="nowrap"><slot>
229 <i>{$MOD.LBL_LOCALE_EXAMPLE_NAME_FORMAT}:</i>
232 <input type="text" disabled id="sigDigitsExample" name="sigDigitsExample">
236 <td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_DECIMAL_SEP}:</slot> {sugar_help text=$MOD.LBL_DECIMAL_SEP_TEXT }</td>
238 <input tabindex='14' name='dec_sep' id='default_decimal_seperator'
239 type='text' maxlength='1' size='1' value='{$DEC_SEP}'
240 onkeydown='setSigDigits();' onkeyup='setSigDigits();'>
242 <td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_NUMBER_GROUPING_SEP}:</slot> {sugar_help text=$MOD.LBL_NUMBER_GROUPING_SEP_TEXT }</td>
243 <td><input tabindex='14' name='num_grp_sep' id='default_number_grouping_seperator'
244 type='text' maxlength='1' size='1' value='{$NUM_GRP_SEP}'
245 onkeydown='setSigDigits();' onkeyup='setSigDigits();'></td>
248 <td colspan="4"><hr /></td>
251 {capture name=SMARTY_LOCALE_NAME_FORMAT_DESC} {$MOD.LBL_LOCALE_NAME_FORMAT_DESC}{/capture}
252 <td nowrap="nowrap" scope="row" valign="top">{$MOD.LBL_LOCALE_DEFAULT_NAME_FORMAT}: {sugar_help text=$smarty.capture.SMARTY_LOCALE_NAME_FORMAT_DESC }</td>
253 <td><slot><select id="default_locale_name_format" tabindex='14' name="default_locale_name_format" selected="{$default_locale_name_format}">{$NAMEOPTIONS}</select></slot></td>
260 <div class="nav-buttons">
261 <input title="{$MOD.LBL_WIZARD_BACK_BUTTON}"
262 class="button" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_BACK_BUTTON} "
263 onclick="SugarWizard.changeScreen('personalinfo',true);" id="previous_tab_personalinfo" />
264 <input title="{$MOD.LBL_WIZARD_NEXT_BUTTON}"
265 class="button primary" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_NEXT_BUTTON} "
266 {if !$HIDE_IF_CAN_USE_DEFAULT_OUTBOUND}
267 onclick="SugarWizard.changeScreen('smtp',false);" id="next_tab_smtp" />
269 onclick="SugarWizard.changeScreen('finish',false);" id="next_tab_finish" />
273 {if !$HIDE_IF_CAN_USE_DEFAULT_OUTBOUND}
274 <div id="smtp" class="screen">
275 <table width="100%" border="0" cellspacing="0" cellpadding="0">
278 <div class="edit view">
279 <table width="100%" border="0" cellspacing="0" cellpadding="0">
281 <th align="left" scope="row" colspan="4">
282 <h2>{$MOD.LBL_WIZARD_SMTP}</h2>
286 <td align="left" scope="row" colspan="4"><i>{$MOD.LBL_WIZARD_SMTP_DESC}</i></td>
289 <td width="20%" scope="row"><span id="mail_smtpserver_label">{$MOD.LBL_EMAIL_PROVIDER}</span></td>
290 <td width="30%" ><slot>{$mail_smtpdisplay}<input id='mail_smtpserver' name='mail_smtpserver' type="hidden" value='{$mail_smtpserver}' /></slot></td>
291 <td scope="row"> </td>
294 {if !empty($mail_smtpauth_req)}
296 <td width="20%" scope="row" nowrap="nowrap"><span id="mail_smtpuser_label">{$MOD.LBL_MAIL_SMTPUSER}</span></td>
297 <td width="30%" ><slot><input type="text" id="mail_smtpuser" name="mail_smtpuser" size="25" maxlength="64" value="{$mail_smtpuser}" tabindex='1' ></slot></td>
298 <td scope="row"> </td>
302 <td width="20%" scope="row" nowrap="nowrap"><span id="mail_smtppass_label">{$MOD.LBL_MAIL_SMTPPASS}</span></td>
303 <td width="30%" ><slot><input type="password" id="mail_smtppass" name="mail_smtppass" size="25" maxlength="64" value="{$mail_smtppass}" tabindex='1'></slot></td>
304 <td scope="row"> </td>
309 <td width="17%" scope="row"><input type="button" class="button" value="{$APP.LBL_EMAIL_TEST_OUTBOUND_SETTINGS}" onclick="startOutBoundEmailSettingsTest();"></td>
310 <td width="33%" > </td>
311 <td width="17%" scope="row"> </td>
312 <td width="33%" > </td>
318 <div class="nav-buttons">
319 <input title="{$MOD.LBL_WIZARD_BACK_BUTTON}"
320 class="button" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_BACK_BUTTON} "
321 onclick="SugarWizard.changeScreen('locale',true);" id="previous_tab_locale" />
322 <input title="{$MOD.LBL_WIZARD_NEXT_BUTTON}"
323 class="button primary" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_NEXT_BUTTON} "
324 onclick="SugarWizard.changeScreen('finish',false);" id="next_tab_finish" />
328 <div id="finish" class="screen">
329 <table width="100%" border="0" cellspacing="0" cellpadding="0">
332 <div class="edit view">
333 <table width="100%" border="0" cellspacing="0" cellpadding="0">
335 <th align="left" scope="row" colspan="4"><h2>{$MOD.LBL_WIZARD_FINISH_TITLE}</h2></th>
339 <h3>{$MOD.LBL_WIZARD_FINISH1}</h3>
341 <table cellpadding=0 cellspacing=0><input id='whatnext' name='whatnext' type="hidden" value='finish' />
343 <tr><td><img src=include/images/start.png style="margin-right: 5px;"></td><td><a onclick='document.UserWizard.whatnext.value="finish";document.UserWizard.submit()' href="#" ><b> {$MOD.LBL_WIZARD_FINISH2} </b></a><br> {$MOD.LBL_WIZARD_FINISH2DESC}</td></tr>
344 <tr><td colspan=2><hr style="margin: 5px 0px;"></td></tr>
345 <tr><td><img src=include/images/import.png style="margin-right: 5px;"></td><td><a onclick='document.UserWizard.whatnext.value="import";document.UserWizard.submit()' href="#" ><b> {$MOD.LBL_WIZARD_FINISH3} </b></a><br> {$MOD.LBL_WIZARD_FINISH4}</td></tr>
346 <tr><td colspan=2><hr style="margin: 5px 0px;"></td></tr>
347 <tr><td><img src=include/images/create_users.png style="margin-right: 5px;"></td><td><a onclick='document.UserWizard.whatnext.value="users";document.UserWizard.submit()' href="#" ><b> {$MOD.LBL_WIZARD_FINISH5} </b></a><br>{$MOD.LBL_WIZARD_FINISH6}</td></tr>
348 <tr><td colspan=2><hr style="margin: 5px 0px;"></td></tr>
349 <tr><td><img src=include/images/settings.png style="margin-right: 5px;"></td><td><a onclick='document.UserWizard.whatnext.value="settings";document.UserWizard.submit()' href="#" ><b> {$MOD.LBL_WIZARD_FINISH7} </b></a><br>{$MOD.LBL_WIZARD_FINISH8}</td></tr>
350 <tr><td colspan=2><hr style="margin: 5px 0px;"></td></tr>
351 <tr><td><img src=include/images/configure.png style="margin-right: 5px;"></td><td><a onclick='document.UserWizard.whatnext.value="studio";document.UserWizard.submit()' href="#" ><b> {$MOD.LBL_WIZARD_FINISH9} </b></a><br>{$MOD.LBL_WIZARD_FINISH10}</td></tr>
352 <tr><td colspan=2><hr style="margin: 5px 0px;"></td></tr>
353 <tr><td><img src=include/images/university.png style="margin-right: 5px;"></td><td><a href="http://www.sugarcrm.com/university" target="_blank"><b> {$MOD.LBL_WIZARD_FINISH11} </b></a></b><br>{$MOD.LBL_WIZARD_FINISH12}</td></tr>
354 <tr><td colspan=2><hr style="margin: 5px 0px;"></td></tr>
356 <tr><td><img src=include/images/university2.png style="margin-right: 5px;"></td><td><a href="http://www.sugarcrm.com/university" target="_blank"><b> {$MOD.LBL_WIZARD_FINISH11} </b></a></b><br>{$MOD.LBL_WIZARD_FINISH12}</td></tr>
357 <tr><td colspan=2><hr style="margin: 5px 0px;"></td></tr>
358 <tr><td><img src=include/images/docs.png style="margin-right: 5px;"></td><td><a href="http://docs.sugarcrm.com/" target="_blank"><b> {$MOD.LBL_WIZARD_FINISH14} </b></a></b><br>{$MOD.LBL_WIZARD_FINISH15}</td></tr>
359 <tr><td colspan=2><hr style="margin: 5px 0px;"></td></tr>
360 <tr><td><img src=include/images/kb.png style="margin-right: 5px;"></td><td><a href="http://kb.sugarcrm.com/" target="_blank"><b> {$MOD.LBL_WIZARD_FINISH16} </b></a></b><br>{$MOD.LBL_WIZARD_FINISH17}</td></tr>
361 <tr><td colspan=2><hr style="margin: 5px 0px;"></td></tr>
362 <tr><td><img src=include/images/forums.png style="margin-right: 5px;"></td><td><a href="http://www.sugarcrm.com/forums" target="_blank"><b> {$MOD.LBL_WIZARD_FINISH18} </b></a></b><br>{$MOD.LBL_WIZARD_FINISH19}</td></tr>
363 <tr><td colspan=2><hr style="margin: 5px 0px;"></td></tr>
373 <div class="nav-buttons">
374 <input title="{$MOD.LBL_WIZARD_BACK_BUTTON}"
375 class="button" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_BACK_BUTTON} "
376 {if !$HIDE_IF_CAN_USE_DEFAULT_OUTBOUND}
377 onclick="SugarWizard.changeScreen('smtp',true);" id="previous_tab_smtp" />
379 onclick="SugarWizard.changeScreen('locale',true);" id="previous_tab_locale" />
381 <input title="{$MOD.LBL_WIZARD_FINISH_BUTTON}" class="button primary"
382 type="submit" name="save" value=" {$MOD.LBL_WIZARD_FINISH_BUTTON} " />
394 <script type='text/javascript'>
396 var SugarWizard = new function()
398 this.currentScreen = 'welcome';
400 this.handleKeyStroke = function(e)
402 // get the key pressed
405 key = window.event.keyCode;
413 primaryButton = YAHOO.util.Selector.query('input.primary',SugarWizard.currentScreen,true);
414 primaryButton.click();
419 this.changeScreen = function(screen,skipCheck)
423 var form = document.getElementById('UserWizard');
426 switch(this.currentScreen) {
428 if ( document.getElementById('last_name').value == '' ) {
429 add_error_style('UserWizard',form.last_name.name,
430 '{/literal}{$APP.ERR_MISSING_REQUIRED_FIELDS} {$MOD.LBL_LAST_NAME}{literal}' );
434 {if $REQUIRED_EMAIL_ADDRESS}
436 if ( document.getElementById('email1').value == '' ) {
437 document.getElementById('email1').focus();
438 add_error_style('UserWizard',form.email1.name,
439 '{/literal}{$APP.ERR_MISSING_REQUIRED_FIELDS} {$MOD.LBL_EMAIL}{literal}' );
451 document.getElementById(this.currentScreen).style.display = 'none';
452 document.getElementById(screen).style.display = 'block';
454 this.currentScreen = screen;
459 SugarWizard.changeScreen('personalinfo');
461 SugarWizard.changeScreen('welcome');
464 document.onkeypress = SugarWizard.handleKeyStroke;
466 var mail_smtpport = '{/literal}{$MAIL_SMTPPORT}{literal}';
467 var mail_smtpssl = '{/literal}{$MAIL_SMTPSSL}{literal}';
471 function startOutBoundEmailSettingsTest()
473 var loader = new YAHOO.util.YUILoader({
474 require : ["element","sugarwidgets"],
476 skin: { base: 'blank', defaultSkin: '' },
477 onSuccess: testOutboundSettings,
479 base: "include/javascript/yui/build/"
482 name :"sugarwidgets",
484 fullpath: "include/javascript/sugarwidgets/SugarYUIWidgets.js",
485 varName: "YAHOO.SUGAR",
486 requires: ["datatable", "dragdrop", "treeview", "tabview"]
492 function testOutboundSettings()
494 var errorMessage = '';
496 var fromAddress = document.getElementById("outboundtest_from_address").value;
497 var errorMessage = '';
499 var smtpServer = document.getElementById('mail_smtpserver').value;
501 var mailsmtpauthreq = document.getElementById('mail_smtpauth_req');
502 if(trim(smtpServer) == '' || trim(mail_smtpport) == '')
505 errorMessage += "{/literal}{$MOD.LBL_MISSING_DEFAULT_OUTBOUND_SMTP_SETTINGS}{literal}" + "<br/>";
506 overlay("{/literal}{$APP.ERR_MISSING_REQUIRED_FIELDS}{literal}", errorMessage, 'alert');
510 if(document.getElementById('mail_smtpuser') && trim(document.getElementById('mail_smtpuser').value) == '')
513 errorMessage += "{/literal}{$APP.LBL_EMAIL_ACCOUNTS_SMTPUSER}{literal}" + "<br/>";
516 if(document.getElementById('mail_smtppass') && trim(document.getElementById('mail_smtppass').value) == '')
519 errorMessage += "{/literal}{$APP.LBL_EMAIL_ACCOUNTS_SMTPPASS}{literal}" + "<br/>";
523 overlay("{/literal}{$APP.ERR_MISSING_REQUIRED_FIELDS}{literal}", errorMessage, 'alert');
527 testOutboundSettingsDialog();
530 function sendTestEmail()
532 var fromAddress = document.getElementById("outboundtest_from_address").value;
534 if (trim(fromAddress) == "")
536 overlay("{/literal}{$APP.ERR_MISSING_REQUIRED_FIELDS}{literal}", "{{/literal}$APP.LBL_EMAIL_SETTINGS_FROM_TO_EMAIL_ADDR}{literal}", 'alert');
539 else if (!isValidEmail(fromAddress)) {
540 overlay("{/literal}{$APP.ERR_INVALID_REQUIRED_FIELDS}{literal}", "{/literal}{$APP.LBL_EMAIL_SETTINGS_FROM_TO_EMAIL_ADDR}{literal}", 'alert');
544 //Hide the email address window and show a message notifying the user that the test email is being sent.
545 EmailMan.testOutboundDialog.hide();
546 overlay("{/literal}{$APP.LBL_EMAIL_PERFORMING_TASK}{literal}", "{/literal}{$APP.LBL_EMAIL_ONE_MOMENT}{literal}", 'alert');
548 var callbackOutboundTest = {
549 success : function(o) {
551 overlay("{/literal}{$APP.LBL_EMAIL_TEST_OUTBOUND_SETTINGS}{literal}", "{/literal}{$APP.LBL_EMAIL_TEST_NOTIFICATION_SENT}{literal}", 'alert');
554 var smtpServer = document.getElementById('mail_smtpserver').value;
555 if(document.getElementById('mail_smtpuser') && document.getElementById('mail_smtppass'))
557 var postDataString = 'mail_sendtype=SMTP&mail_smtpserver=' + smtpServer + "&mail_smtpport=" + mail_smtpport + "&mail_smtpssl=" + mail_smtpssl + "&mail_smtpauth_req=true&mail_smtpuser=" + trim(document.getElementById('mail_smtpuser').value) + "&mail_smtppass=" + trim(document.getElementById('mail_smtppass').value) + "&outboundtest_from_address=" + fromAddress;
561 var postDataString = 'mail_sendtype=SMTP&mail_smtpserver=' + smtpServer + "&mail_smtpport=" + mail_smtpport + "&mail_smtpssl=" + mail_smtpssl + "&outboundtest_from_address=" + fromAddress;
563 YAHOO.util.Connect.asyncRequest("POST", "index.php?action=testOutboundEmail&module=EmailMan&to_pdf=true&sugar_body_only=true", callbackOutboundTest, postDataString);
565 function testOutboundSettingsDialog() {
566 // lazy load dialogue
567 if(!EmailMan.testOutboundDialog) {
568 EmailMan.testOutboundDialog = new YAHOO.widget.Dialog("testOutboundDialog", {
572 constraintoviewport: true,
576 EmailMan.testOutboundDialog.setHeader("{/literal}{$APP.LBL_EMAIL_TEST_OUTBOUND_SETTINGS}{literal}");
577 YAHOO.util.Dom.removeClass("testOutboundDialog", "yui-hidden");
580 EmailMan.testOutboundDialog.render();
581 EmailMan.testOutboundDialog.show();
584 function overlay(reqtitle, body, type) {
587 config.title = reqtitle;
589 YAHOO.SUGAR.MessageBox.show(config);
592 function hideOverlay() {
593 YAHOO.SUGAR.MessageBox.hide();
600 <script type="text/javascript" language="Javascript">
605 setSymbolValue(document.getElementById('currency_select').selectedIndex);
612 <div id="testOutboundDialog" class="yui-hidden">
613 <div id="testOutbound">
615 <table width="100%" border="0" cellspacing="0" cellpadding="0" class="edit view">
618 {$APP.LBL_EMAIL_SETTINGS_FROM_TO_EMAIL_ADDR}
619 <span class="required">
620 {$APP.LBL_REQUIRED_SYMBOL}
624 <input type="text" id="outboundtest_from_address" name="outboundtest_from_address" size="35" maxlength="64" value="">
628 <td scope="row" colspan="2">
629 <input type="button" class="button" value=" {$APP.LBL_EMAIL_SEND} " onclick="javascript:sendTestEmail();">
630 <input type="button" class="button" value=" {$APP.LBL_CANCEL_BUTTON_LABEL} " onclick="javascript:EmailMan.testOutboundDialog.hide();">