Add TPL files

This commit is contained in:
2025-05-12 15:46:37 +00:00
parent 4a4ed02e8a
commit b4d54ba40b
894 changed files with 120580 additions and 0 deletions

View File

@@ -0,0 +1,167 @@
{*
/*********************************************************************************
* SugarCRM is a customer relationship management program developed by
* SugarCRM, Inc. Copyright (C) 2004-2010 SugarCRM Inc.
*
* This program is free software; you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License version 3 as published by the
* Free Software Foundation with the addition of the following permission added
* to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
* IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
* OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
* details.
*
* You should have received a copy of the GNU Affero General Public License along with
* this program; if not, see http://www.gnu.org/licenses or write to the Free
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
* 02110-1301 USA.
*
* You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
* SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "Powered by
* SugarCRM" logo. If the display of the logo is not reasonably feasible for
* technical reasons, the Appropriate Legal Notices must display the words
* "Powered by SugarCRM".
********************************************************************************/
*}
{literal}
<script type='text/javascript'>
<!--
var ERR_RULES_NOT_MET = '{/literal}{$MOD.ERR_RULES_NOT_MET}{literal}';
var ERR_ENTER_OLD_PASSWORD = '{/literal}{$MOD.ERR_ENTER_OLD_PASSWORD}{literal}';
var ERR_ENTER_NEW_PASSWORD = '{/literal}{$MOD.ERR_ENTER_NEW_PASSWORD}{literal}';
var ERR_ENTER_CONFIRMATION_PASSWORD = '{/literal}{$MOD.ERR_ENTER_CONFIRMATION_PASSWORD}{literal}';
var ERR_REENTER_PASSWORDS = '{/literal}{$MOD.ERR_REENTER_PASSWORDS}{literal}';
-->
</script>
<script type='text/javascript' src='{/literal}{sugar_getjspath file="modules/Users/PasswordRequirementBox.js"}{literal}'></script>
<style type="text/css">
<!--
.body
{
font-size: 12px;
}
.buttonLogin
{
border: 1px solid #444444;
font-size: 11px;
color: #ffffff;
background-color: #666666;
font-weight: bold;
}
table.tabForm td
{
border: none;
}
p
{
MARGIN-TOP: 0px;
MARGIN-BOTTOM: 10px;
}
form
{
margin: 0px;
}
#recaptcha_image
{
height: 47.5px !important;
width: 250px !important;
}
#recaptcha_image img
{
height: 47.5px;
width: 250px;
}
-->
</style>
{/literal}
<form action="index.php" method="post" name="ChangePasswordForm" id="ChangePasswordForm" onsubmit="return document.getElementById('cant_login').value == ''">
<table cellpadding="0" align="center" width="100%" cellspacing="0" border="0">
<tr>
<td>
<table cellpadding="0" cellspacing="0" border="0" align="center">
<tr>
<td style="padding-bottom: 10px;" ><b>{$MOD.LBL_LOGIN_WELCOME_TO}</b><br />
<img src="{$sugar_md}" alt="Sugar" width="340" height="25" /></td>
</tr>
<tr>
<td align="center">
<table cellpadding="0" cellspacing="2" border="0" align="center" width="100%" class="edit view">
<tr>
<td colspan="2" width="100%" style="font-size: 12px; padding-bottom: 5px; font-weight: normal;">{$INSTRUCTION}</td>
</tr>
<input type="hidden" name="entryPoint" value="{$ENTRY_POINT}" />
<input type='hidden' name='action' value="{$ACTION}" />
<input type='hidden' name='module' value="{$MODULE}" />
<input type="hidden" name="guid" value="{$GUID}" />
<input type="hidden" name="return_module" value="Home" />
<input type="hidden" name="login" value="1" />
<input type="hidden" name="is_admin" value="{$IS_ADMIN}" />
<input type="hidden" name="cant_login" id="cant_login" value="" />
<input type="hidden" name="old_password" id="old_password" value="" />
<input type="hidden" name="password_change" id="password_change" value="true" />
<input type="hidden" value="" name="user_password" id="user_password" />
<input type="hidden" name="page" value="Change" />
<input type="hidden" name="return_id" value="{$ID}" />
<input type="hidden" name="return_action" value="{$return_action}" />
<input type="hidden" name="record" value="{$ID}" />
<input type="hidden" name="user_name" value="{$USER_NAME}" />
<input type='hidden' name='saveConfig' value='0' />
<tr>
<td colspan='2'><span id='post_error' class="error">{$EXPIRATION_TYPE}&nbsp;</span></td>
</tr>
<tr>
{if $OLD_PASSWORD_FIELD == '' && $USERNAME_FIELD == '' }
<td width="30%"></td><td></td>
{/if}
{$OLD_PASSWORD_FIELD}
{$USERNAME_FIELD}
</tr>
<tr>
<td scope="row">{$MOD.LBL_NEW_PASSWORD}:</td>
<td width="30%"><input type="password" size="26" tabindex="2" id="new_password" name="new_password" value="" onkeyup="password_confirmation();newrules('{$PWDSETTINGS.minpwdlength}','{$PWDSETTINGS.maxpwdlength}','{$REGEX}');" /></td>
</tr>
<tr>
<td scope="row">{$MOD.LBL_NEW_PASSWORD2}:</td>
<td width="30%"><input type="password" size="26" tabindex="2" id="confirm_pwd" name="confirm_pwd" value="" onkeyup="password_confirmation();" /> <div id="comfirm_pwd_match" class="error" style="display: none;">mis-match</div></td>
</tr>
<tr>
<td>{$CAPTCHA}</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>
{$SUBMIT_BUTTON}
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</form>

368
modules/Users/DetailView.tpl Executable file
View File

@@ -0,0 +1,368 @@
<!--
/*********************************************************************************
* SugarCRM is a customer relationship management program developed by
* SugarCRM, Inc. Copyright (C) 2004-2010 SugarCRM Inc.
*
* This program is free software; you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License version 3 as published by the
* Free Software Foundation with the addition of the following permission added
* to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
* IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
* OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
* details.
*
* You should have received a copy of the GNU Affero General Public License along with
* this program; if not, see http://www.gnu.org/licenses or write to the Free
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
* 02110-1301 USA.
*
* You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
* SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "Powered by
* SugarCRM" logo. If the display of the logo is not reasonably feasible for
* technical reasons, the Appropriate Legal Notices must display the words
* "Powered by SugarCRM".
********************************************************************************/
/*********************************************************************************
********************************************************************************/
-->
<script type='text/javascript' src='{sugar_getjspath file='modules/Users/DetailView.js'}'></script>
<script type="text/javascript" src="{sugar_getjspath file='include/javascript/sugar_grp_yui_widgets.js'}"></script>
<script type='text/javascript'>
var LBL_NEW_USER_PASSWORD = '{$MOD.LBL_NEW_USER_PASSWORD_2}';
{if !empty($ERRORS)}
{literal}
YAHOO.SUGAR.MessageBox.show({title: '{/literal}{$ERROR_MESSAGE}{literal}', msg: '{/literal}{$ERRORS}{literal}'} );
{/literal}
{/if}
</script>
<script type="text/javascript">
var user_detailview_tabs = new YAHOO.widget.TabView("user_detailview_tabs");
{literal}
user_detailview_tabs.on('contentReady', function(e){
{/literal}
});
</script>
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="actionsContainer">
<tr>
<td>
<form action="index.php" method="post" name="DetailView" id="form">
<input type="hidden" name="module" value="Users">
<input type="hidden" name="record" value="{$ID}">
<input type="hidden" name="isDuplicate" value=false>
<input type="hidden" name="action">
<input type="hidden" name="user_name" value="{$USER_NAME}">
<input type="hidden" name="password_generate">
<input type="hidden" name="old_password">
<input type="hidden" name="new_password">
<input type="hidden" name="return_module">
<input type="hidden" name="return_action">
<input type="hidden" name="return_id">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr><td colspan='2' width="100%" nowrap>{$BUTTONS}</td></tr>
</table>
</form>
</td>
<td width="100%">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
{$PAGINATION}
</table>
</td>
</tr>
</table>
<div id="user_detailview_tabs" class="yui-navset detailview_tabs">
<ul class="yui-nav">
<li class="selected"><a id="tab1" href="#tab1"><em>{$MOD.LBL_USER_INFORMATION}</em></a></li>
<li {if $IS_GROUP_OR_PORTAL == 1}style="display: none;"{/if}><a id="tab2" href="#tab2"><em>{$MOD.LBL_ADVANCED}</em></a></li>
{if $SHOW_ROLES}
<li><a id="tab3" href="#tab3"><em>{$MOD.LBL_USER_ACCESS}</em></a></li>
{/if}
</ul>
<div class="yui-content">
<div>
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="detail view">
<tr>
<td width="15%" valign="top" scope="row"><slot>{$MOD.LBL_NAME}:</slot></td>
<td width="35%" valign="top"><slot>{$FULL_NAME}&nbsp;</slot></td>
<td width="15%" valign="top" scope="row"><slot>{$MOD.LBL_USER_NAME}:</slot></td>
<td width="35%" valign="top"><slot>{$USER_NAME}&nbsp;</slot></td>
</tr>
<tr>
<td valign="top" scope="row"><slot>{$MOD.LBL_STATUS}:</slot></td>
<td valign="top"><slot>{$STATUS}&nbsp;</slot></td>
<td valign="top" scope="row"><slot>{$MOD.LBL_USER_TYPE}:</slot></td>
<td valign="top" ><slot>{$USER_TYPE_LABEL}&nbsp;</slot></td>
</tr>
<tr>
<td valign="top" scope="row"><slot>Konto Google:</slot></td>
<td valign="top"><slot>{$GOOGLE}&nbsp;</slot></td>
<td valign="top" scope="row"><slot>Kalendarz Google:</slot></td>
<td valign="top" ><slot>{$GOOGLEC}&nbsp;</slot></td>
</tr>
</table>
<div id='information'>
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="detail view">
<tr>
<th colspan='4' align="left" width="100%" valign="top"><h4><slot>{$MOD.LBL_USER_INFORMATION}</slot></h4></th>
</tr><tr>
<td width="15%" valign="top" scope="row"><slot>{$MOD.LBL_EMPLOYEE_STATUS}:</slot></td>
<td width="35%" valign="top"><slot>{$EMPLOYEE_STATUS}&nbsp;</slot></td>
<td width="15%" valign="top" scope="row"><slot>{$MOD.LBL_ASTERISK_PHONE_EXTENSION}:</slot></td>
<td width="35%" valign="top"><slot>{$ASTERISK_PHONE_EXTENSION}&nbsp;</slot></td>
</tr><tr>
<td width="15%" valign="top" scope="row"><slot>{$MOD.LBL_TITLE}:</slot></td>
<td width="35%" valign="top"><slot>{$TITLE}&nbsp;</slot></td>
<td width="15%" valign="top" scope="row"><slot>{$MOD.LBL_OFFICE_PHONE}:</slot></td>
<td width="35%" valign="top"><slot>{$PHONE_WORK}&nbsp;</slot></td>
</tr><tr>
<td valign="top" scope="row"><slot>{$MOD.LBL_DEPARTMENT}:</slot></td>
<td valign="top"><slot>{$DEPARTMENT}&nbsp;</slot></td>
<td valign="top" scope="row"><slot>{$MOD.LBL_MOBILE_PHONE}:</slot></td>
<td valign="top"><slot>{$PHONE_MOBILE}&nbsp;</slot></td>
</tr><tr>
<td valign="top" scope="row"><slot>{$MOD.LBL_REPORTS_TO}:</slot></td>
<td valign="top"><slot><a href="index.php?module=Users&action=DetailView&record={$REPORTS_TO_ID}">{$REPORTS_TO_NAME}</a>&nbsp;</slot></td>
<td valign="top" scope="row"><slot>{$MOD.LBL_OTHER}:</slot></td>
<td valign="top"><slot>{$PHONE_OTHER}&nbsp;</slot></td>
</tr><tr>
<td valign="top" scope="row"><slot>&nbsp;</slot></td>
<td valign="top"><slot>&nbsp;</slot></td>
<td valign="top" scope="row"><slot>{$MOD.LBL_FAX}:</slot></td>
<td valign="top"><slot>{$PHONE_FAX}&nbsp;</slot></td>
</tr><tr>
<td valign="top" scope="row"><slot>{$MOD.LBL_HOME_PHONE}:</slot></td>
<td valign="top"><slot>{$PHONE_HOME}&nbsp;</slot></td>
<td valign="top" scope="row"><slot>&nbsp;</slot></td>
<td valign="top"><slot>&nbsp;</slot></td>
</tr><tr>
<td valign="top" scope="row"><slot>{$MOD.LBL_MESSENGER_TYPE}:</slot></td>
<td valign="top"><slot>{$MESSENGER_TYPE}&nbsp;</slot></td>
<td valign="top" scope="row"><slot>&nbsp;</slot></td>
<td valign="top"><slot>&nbsp;</slot></td>
</tr><tr>
<td valign="top" scope="row"><slot>{$MOD.LBL_MESSENGER_ID}:</slot></td>
<td valign="top"><slot>{$MESSENGER_ID}&nbsp;</slot></td>
<td valign="top" scope="row"><slot>&nbsp;</slot></td>
<td valign="top"><slot>&nbsp;</slot></td>
</tr><tr>
<td valign="top" scope="row"><slot>{$MOD.LBL_ADDRESS}:</slot></td>
<td valign="top" ><slot>{$ADDRESS_STREET}<br>
{$ADDRESS_CITY} {$ADDRESS_STATE}&nbsp;&nbsp;{$ADDRESS_POSTALCODE}<br>
{$ADDRESS_COUNTRY}</slot></td>
<td scope="row"><slot>&nbsp;</slot></td>
<td><slot>&nbsp;</slot></td>
</tr><tr>
<td valign="top" valign="top" scope="row"><slot>{$MOD.LBL_NOTES}:</slot></td>
<td><slot>{$DESCRIPTION}&nbsp;</slot></td>
<td width="15%" valign="top" scope="row"><slot>{$MOD.LBL_STOCK}</slot></td>
<td width="35%" valign="top"><slot>{$STOCK_NAME}</slot></td>
</tr>
<tr>
<td width="15%" valign="top" scope="row"><slot>{$MOD.LBL_CASH}</slot></td>
<td width="35%" valign="top"><slot>{$CASH_NAME}</slot></td>
</tr>
</table>
</div>
<div id='email_options'>
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="detail view">
<tr>
<th align="left" scope="row" colspan="4">
<h4>{$MOD.LBL_MAIL_OPTIONS_TITLE}</h4>
</th>
</tr>
<tr>
<td align="top" scope="row" width="15%">
{$MOD.LBL_EMAIL}:
</td>
<td align="top" width="85%">
{$EMAIL_OPTIONS}
</td>
</tr>
<tr id="email_options_link_type">
<td align="top" scope="row">
{$MOD.LBL_EMAIL_LINK_TYPE}:
</td>
<td >
{$EMAIL_LINK_TYPE}
</td>
</tr>
{if $SHOW_SMTP_SETTINGS}
<tr>
<td scope="row" width="15%">
{$MOD.LBL_EMAIL_PROVIDER}:
</td>
<td width="35%">
{$MAIL_SMTPDISPLAY}
</td>
</tr>
<tr>
<td align="top" scope="row">
{$MOD.LBL_MAIL_SMTPUSER}:
</td>
<td width="35%">
{$MAIL_SMTPUSER}
</td>
</tr>
{/if}
</table>
</div>
</div>
<div>
<div id="settings">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="detail view">
<tr>
<th colspan='4' align="left" width="100%" valign="top"><h4><slot>{$MOD.LBL_USER_SETTINGS}</slot></h4></th>
</tr>
<tr>
<td scope="row"><slot>{$MOD.LBL_RECEIVE_NOTIFICATIONS}:</slot></td>
<td><slot><input class="checkbox" type="checkbox" disabled {$RECEIVE_NOTIFICATIONS}></slot></td>
<td><slot>{$MOD.LBL_RECEIVE_NOTIFICATIONS_TEXT}&nbsp;</slot></td>
</tr>
<tr>
<td scope="row" valign="top"><slot>{$MOD.LBL_REMINDER}:</td>
<td valign="top" nowrap><slot><input name='should_remind' tabindex='1' size='2' maxlength='2' disabled type="checkbox" class="checkbox" value='1' {$REMINDER_CHECKED}>&nbsp;{$REMINDER_TIME}</slot></td>
<td ><slot>{$MOD.LBL_REMINDER_TEXT}&nbsp;</slot></td>
</tr>
<tr>
<td valign="top" scope="row"><slot>{$MOD.LBL_MAILMERGE}:</slot></td>
<td valign="top" nowrap><slot><input tabindex='3' name='mailmerge_on' disabled class="checkbox" type="checkbox" {$MAILMERGE_ON}></slot></td>
<td><slot>{$MOD.LBL_MAILMERGE_TEXT}&nbsp;</slot></td>
</tr>
<tr>
<td valign="top" scope="row"><slot>{$MOD.LBL_SETTINGS_URL}:</slot></td>
<td valign="top" nowrap><slot>{$SETTINGS_URL}</slot></td>
<td><slot>{$MOD.LBL_SETTINGS_URL_DESC}&nbsp;</slot></td>
</tr>
<tr>
<td scope="row" valign="top"><slot>{$MOD.LBL_EXPORT_DELIMITER}:</slot></td>
<td><slot>{$EXPORT_DELIMITER}</slot></td>
<td><slot>{$MOD.LBL_EXPORT_DELIMITER_DESC}</slot></td>
</tr>
<tr>
<td scope="row" valign="top"><slot>{$MOD.LBL_EXPORT_CHARSET}:</slot></td>
<td><slot>{$EXPORT_CHARSET}</slot></td>
<td><slot>{$MOD.LBL_EXPORT_CHARSET_DESC}</slot></td>
</tr>
<tr>
<td scope="row" valign="top"><slot>{$MOD.LBL_USE_REAL_NAMES}:</slot></td>
<td><slot>{$USE_REAL_NAMES}</slot></td>
<td><slot>{$MOD.LBL_USE_REAL_NAMES_DESC}</slot></td>
</tr>
{$EXTERNAL_AUTH}
</table>
</div>
<div id='locale'>
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="detail view">
<tr>
<th colspan='4' align="left" width="100%" valign="top">
<h4><slot>{$MOD.LBL_USER_LOCALE}</slot></h4></th>
</tr>
<tr>
<td width="15%" scope="row"><slot>{$MOD.LBL_DATE_FORMAT}:</slot></td>
<td><slot>{$DATEFORMAT}&nbsp;</slot></td>
<td><slot>{$MOD.LBL_DATE_FORMAT_TEXT}&nbsp;</slot></td>
</tr>
<tr>
<td width="15%" scope="row"><slot>{$MOD.LBL_TIME_FORMAT}:</slot></td>
<td><slot>{$TIMEFORMAT}&nbsp;</slot></td>
<td><slot>{$MOD.LBL_TIME_FORMAT_TEXT}&nbsp;</slot></td>
</tr>
<tr>
<td width="15%" scope="row"><slot>{$MOD.LBL_TIMEZONE}:</slot></td>
<td nowrap><slot>{$TIMEZONE}&nbsp;</slot></td>
<td><slot>{$MOD.LBL_ZONE_TEXT}&nbsp;</slot></td>
</tr>
<tr>
<td width="15%" scope="row"><slot>{$MOD.LBL_CURRENCY}:</slot></td>
<td><slot>{$CURRENCY}&nbsp;</slot></td>
<td><slot>{$MOD.LBL_CURRENCY_TEXT}&nbsp;</slot></td>
</tr>
<tr>
<td width="15%" scope="row"><slot>{$MOD.LBL_CURRENCY_SIG_DIGITS}:</slot></td>
<td><slot>{$CURRENCY_SIG_DIGITS}&nbsp;</slot></td>
<td><slot>{$MOD.LBL_CURRENCY_SIG_DIGITS_DESC}&nbsp;</slot></td>
</tr>
<tr>
<td width="15%" scope="row"><slot>{$MOD.LBL_NUMBER_GROUPING_SEP}:</slot></td>
<td><slot>{$NUM_GRP_SEP}&nbsp;</slot></td>
<td><slot>{$MOD.LBL_NUMBER_GROUPING_SEP_TEXT}&nbsp;</slot></td>
</tr><tr>
<td width="15%" scope="row"><slot>{$MOD.LBL_DECIMAL_SEP}:</slot></td>
<td><slot>{$DEC_SEP}&nbsp;</slot></td>
<td><slot></slot>{$MOD.LBL_DECIMAL_SEP_TEXT}&nbsp;</td>
</tr>
</tr><tr>
<td width="15%" scope="row"><slot>{$MOD.LBL_LOCALE_DEFAULT_NAME_FORMAT}:</slot></td>
<td><slot>{$NAME_FORMAT}&nbsp;</slot></td>
<td><slot></slot>{$MOD.LBL_LOCALE_NAME_FORMAT_DESC}&nbsp;</td>
</tr>
</table>
</div>
<div id='calendar_options'>
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="detail view">
<tr>
<th colspan='4' align="left" width="100%" valign="top"><h4><slot>{$MOD.LBL_CALENDAR_OPTIONS}</slot></h4></th>
</tr>
<tr>
<td width="15%" scope="row"><slot>{$MOD.LBL_PUBLISH_KEY}:</slot></td>
<td width="20%"><slot>{$CALENDAR_PUBLISH_KEY}</slot></td>
<td width="65%"><slot>{$MOD.LBL_CHOOSE_A_KEY}&nbsp;</slot></td>
</tr>
<tr>
<td width="15%" scope="row"><slot><nobr>{$MOD.LBL_YOUR_PUBLISH_URL}:</nobr></slot></td>
<td colspan=2><slot>{$CALENDAR_PUBLISH_URL}</slot></td>
</tr>
<tr>
<td width="15%" scope="row"><slot>{$MOD.LBL_SEARCH_URL}:</slot></td>
<td colspan=2><slot>{$CALENDAR_SEARCH_URL}</slot></td>
</tr>
</table>
</div>
<div id='edit_tabs'>
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="detail view">
<tr>
<th colspan='4' align="left" width="100%" valign="top"><h4><slot>{$MOD.LBL_LAYOUT_OPTIONS}</slot></h4></th>
</tr>
<tr>
<td width="15%" scope="row"><slot>{$MOD.LBL_MAX_TAB}:</slot></td>
<td width="15%"><slot>{$MAX_TAB}&nbsp;</slot></td>
<td><slot>{$MOD.LBL_MAX_TAB_DESCRIPTION}&nbsp;</slot></td>
</tr>
<tr>
<td width="15%" scope="row"><slot>{$MOD.LBL_SUBPANEL_TABS}:</slot></td>
<td><slot><input class="checkbox" type="checkbox" disabled {$SUBPANEL_TABS}></slot></td>
<td><slot>{$MOD.LBL_SUBPANEL_TABS_DESCRIPTION}&nbsp;</slot></td>
</tr>
</table>
</div>
<div id="user_holidays">
{$USER_HOLIDAYS_SUBPANEL}
</div>
</div>
{if !$SHOW_ROLES}
</div>
{/if}

864
modules/Users/EditView.tpl Executable file
View File

@@ -0,0 +1,864 @@
<!--
/*********************************************************************************
* SugarCRM is a customer relationship management program developed by
* SugarCRM, Inc. Copyright (C) 2004-2010 SugarCRM Inc.
*
* This program is free software; you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License version 3 as published by the
* Free Software Foundation with the addition of the following permission added
* to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
* IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
* OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
* details.
*
* You should have received a copy of the GNU Affero General Public License along with
* this program; if not, see http://www.gnu.org/licenses or write to the Free
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
* 02110-1301 USA.
*
* You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
* SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "Powered by
* SugarCRM" logo. If the display of the logo is not reasonably feasible for
* technical reasons, the Appropriate Legal Notices must display the words
* "Powered by SugarCRM".
********************************************************************************/
/*********************************************************************************
********************************************************************************/
-->
{$ROLLOVER}
<script type="text/javascript" src="{sugar_getjspath file='modules/Emails/javascript/vars.js'}"></script>
<script type="text/javascript" src="{sugar_getjspath file='include/javascript/sugar_grp_emails.js'}"></script>
<link rel="stylesheet" type="text/css" href="{sugar_getjspath file='modules/Users/PasswordRequirementBox.css'}">
<script type='text/javascript' src='{sugar_getjspath file='include/javascript/sugar_grp_overlib.js'}'></script>
<script type="text/javascript" src="{sugar_getjspath file='include/javascript/sugar_grp_yui_widgets.js'}"></script>
<script type='text/javascript' src='{sugar_getjspath file='include/SubPanel/SubPanelTiles.js'}'></script>
<script type='text/javascript'>
var ERR_RULES_NOT_MET = '{$MOD.ERR_RULES_NOT_MET}';
var ERR_ENTER_OLD_PASSWORD = '{$MOD.ERR_ENTER_OLD_PASSWORD}';
var ERR_ENTER_NEW_PASSWORD = '{$MOD.ERR_ENTER_NEW_PASSWORD}';
var ERR_ENTER_CONFIRMATION_PASSWORD = '{$MOD.ERR_ENTER_CONFIRMATION_PASSWORD}';
var ERR_REENTER_PASSWORDS = '{$MOD.ERR_REENTER_PASSWORDS}';
</script>
<script type='text/javascript' src='{sugar_getjspath file='modules/Users/PasswordRequirementBox.js'}'></script>
{$ERROR_STRING}
<form name="EditView" enctype="multipart/form-data" id="EditView" method="POST" action="index.php">
<input type="hidden" name="display_tabs_def">
<input type="hidden" name="hide_tabs_def">
<input type="hidden" name="remove_tabs_def">
<input type="hidden" name="module" value="Users">
<input type="hidden" name="record" id="record" value="{$ID}">
<input type="hidden" name="action">
<input type="hidden" name="page" value="EditView">
<input type="hidden" name="return_module" value="{$RETURN_MODULE}">
<input type="hidden" name="return_id" value="{$RETURN_ID}">
<input type="hidden" name="return_action" value="{$RETURN_ACTION}">
<input type="hidden" name="password_change" id="password_change" value="false">
<input type="hidden" name="required_password" id="required_password" value='{$REQUIRED_PASSWORD}' >
<input type="hidden" name="user_name" value="{$USER_NAME}">
<input type="hidden" name="type" value="{$REDIRECT_EMAILS_TYPE}">
<input type="hidden" id="is_group" name="is_group" value='{$IS_GROUP}' {$IS_GROUP_DISABLED}>
<input type="hidden" id='portal_only' name='portal_only' value='{$IS_PORTALONLY}' {$IS_PORTAL_ONLY_DISABLED}>
<input type="hidden" name="is_admin" id="is_admin" value='{$IS_FOCUS_ADMIN}' {$IS_ADMIN_DISABLED} >
<input type="hidden" name="is_current_admin" id="is_current_admin" value='{$IS_ADMIN}' >
<input type="hidden" name="edit_self" id="edit_self" value='{$EDIT_SELF}' >
<input type="hidden" name="required_email_address" id="required_email_address" value='{$REQUIRED_EMAIL_ADDRESS}' >
<div id="popup_window"></div>
<script type="text/javascript">
var EditView_tabs = new YAHOO.widget.TabView("EditView_tabs");
{literal}
//Override so we do not force submit
SUGAR.EmailAddressWidget.prototype.forceSubmit = function() { }
EditView_tabs.on('contentReady', function(e){
{/literal}
});
</script>
<table width="100%" cellpadding="0" cellspacing="0" border="0" class="actionsContainer">
<tr>
<td>
<input id="Save" title="{$APP.LBL_SAVE_BUTTON_TITLE}" accessKey="{$APP.LBL_SAVE_BUTTON_KEY}"
class="button primary" onclick="if (!set_password(form,newrules('{$PWDSETTINGS.minpwdlength}','{$PWDSETTINGS.maxpwdlength}','{$REGEX}'))) return false; if (!Admin_check()) return false; this.form.action.value='Save'; {$CHOOSER_SCRIPT} {$REASSIGN_JS} if(verify_data(EditView)) this.form.submit();"
type="button" name="button" value="{$APP.LBL_SAVE_BUTTON_LABEL}" >
<input title="{$APP.LBL_CANCEL_BUTTON_TITLE}" accessKey="{$APP.LBL_CANCEL_BUTTON_KEY}"
class="button" onclick="this.form.action.value='{$RETURN_ACTION}'; this.form.module.value='{$RETURN_MODULE}'; this.form.record.value='{$RETURN_ID}'; this.form.submit()"
type="button" name="button" value="{$APP.LBL_CANCEL_BUTTON_LABEL}">
{$BUTTONS}
</td>
<td align="right" nowrap>
<span class="required">{$APP.LBL_REQUIRED_SYMBOL}</span> {$APP.NTC_REQUIRED}
</td>
</tr>
</table>
<div id="EditView_tabs" class="yui-navset">
<ul class="yui-nav">
<li class="selected"><a id="tab1" href="#tab1"><em>{$MOD.LBL_USER_INFORMATION}</em></a></li>
<li {if $CHANGE_PWD == 0}style='display:none'{/if}><a id="tab2" href="#tab2"><em>{$MOD.LBL_CHANGE_PASSWORD_TITLE}</em></a></li>
{if $SHOW_THEMES}
<li><a id="tab3" href="#tab3"><em>{$MOD.LBL_THEME}</em></a></li>
{/if}
<li><a id="tab4" href="#tab4" style='display:{$HIDE_FOR_GROUP_AND_PORTAL};'><em>{$MOD.LBL_ADVANCED}</em></a></li>
</ul>
<div class="yui-content">
<div>
<div id="basic">
<table width="100%" border="0" cellspacing="1" cellpadding="0" class="edit view">
<tr>
<th align="left" scope="row" colspan="4"><h4><slot>{$MOD.LBL_USER_INFORMATION}</slot></h4></th>
</tr>
<tr>
<td width="17%" scope="row"><slot>{$MOD.LBL_USER_NAME}: <span class="required">{$APP.LBL_REQUIRED_SYMBOL}</span></slot></td>
<td width="33%" ><slot><input name='sugar_user_name' type="text" {$USER_NAME_DISABLED} tabindex='1' size='15' maxlength='25' value='{$USER_NAME}' /></slot></td>
<td width="17%" id='name_lbl' style='display:{$HIDE_FOR_NORMAL_AND_ADMIN}' scope="row"><slot>{$MOD.LBL_LIST_NAME}: <span class="required">{$APP.LBL_REQUIRED_SYMBOL}</span></slot></td>
<td width="33%" id='name_field' style='display:{$HIDE_FOR_NORMAL_AND_ADMIN}'><slot><input id='unique_name' name='unique_name' {$LAST_NAME_DISABLED} tabindex='2' size='25' maxlength='25' type="text" value="{$LAST_NAME}" onblur="document.getElementById('last_name').value=this.value"></slot></td>
<td width="17%" id='first_name_lbl' scope="row" style='display:{$HIDE_FOR_GROUP_AND_PORTAL}'><slot>{$MOD.LBL_FIRST_NAME}:</slot></td>
<td width="33%" id='first_name_field' style='display:{$HIDE_FOR_GROUP_AND_PORTAL}'><slot><input id='first_name' name='first_name' {$FIRST_NAME_DISABLED} tabindex='1' size='25' maxlength='25' type="text" value="{$FIRST_NAME}"></slot></td>
</tr>
<tr>
{$USER_STATUS_OPTIONS}
<td width="17%" scope="row" style='display:{$HIDE_STATIC_USERTYPE}'><slot>{$MOD.LBL_USER_TYPE}:</slot></td>
<td scope="row" style='display:{$HIDE_STATIC_USERTYPE}'><slot>{$USER_TYPE_LABEL}&nbsp;{sugar_help text=$USER_TYPE_DESC WIDTH=250}</slot></td>
<td id='last_name_lbl' scope="row" style='display:{$HIDE_FOR_GROUP_AND_PORTAL}'><slot>{$MOD.LBL_LAST_NAME}: <span class="required">{$APP.LBL_REQUIRED_SYMBOL}</span></slot></td>
<td id='last_name_field' style='display:{$HIDE_FOR_GROUP_AND_PORTAL}'><slot><input id='last_name' name='last_name' type="text" {$LAST_NAME_DISABLED} tabindex='1' size='25' maxlength='25' value="{$LAST_NAME}"></slot></td>
</tr>
<tr style='display:{$HIDE_CHANGE_USERTYPE}'>
<td width="17%" scope="row"><slot>{$MOD.LBL_USER_TYPE}:</slot></td>
<td colspan='3'>
<table width="100%" cellspacing="0" cellpadding="0">
<tr>
{if $USER_ADMIN}
<td width="20%"><select id="UserType" name="UserType" onchange="user_status_display(this);" value='' disabled>
<option value="RegularUser">{$MOD.LBL_REGULAR_USER}</option>
</select></td>
{elseif $ADMIN_EDIT_SELF}
<td width="20%"><select id="UserType" name="UserType" onchange="user_status_display(this);" value='' disabled>
<option value="Administrator">{$MOD.LBL_ADMIN_USER}</option>
</select></td>
{else}
<td width="20%"><select id="UserType" name="UserType" onchange="user_status_display(this);" value='' tabindex='1' >
<option value="RegularUser">{$MOD.LBL_REGULAR_USER}</option>
<option value="Administrator" {if $IS_FOCUS_ADMIN} SELECTED {/if}>{$MOD.LBL_ADMIN_USER}</option>
</select></td>
{/if}
<td colspan='4'>
<div id='UserTypeDesc'>{$USER_TYPE_DESC}</div>
</td></tr>
</table>
</td>
</tr>
</table>
</div>
<div id="information" style='display:{$HIDE_FOR_GROUP_AND_PORTAL}'>
<table width="100%" border="0" cellspacing="1" cellpadding="0" class="edit view">
<tr>
<th align="left" scope="row" colspan="4"><h4><slot>{$MOD.LBL_EMPLOYEE_INFORMATION}</slot></h4></th>
</tr>
<tr>
<td width="17%" scope="row"><slot>{$MOD.LBL_EMPLOYEE_STATUS}:</slot></td>
<td width="33%" ><slot>{$EMPLOYEE_STATUS_OPTIONS}</slot></td>
<!-- asterisk -->
<td width="17%" scope="row"><slot>{$MOD.LBL_ASTERISK_PHONE_EXTENSION}:</slot></td>
<td width="33%" ><slot><input name='asterisk_extension' type="text" tabindex='5' size='15' maxlength='25' value='{$ASTERISK_PHONE_EXTENSION}'></slot></td>
<!-- end of asterisk -->
</tr>
<tr>
<td scope="row"><slot>{$MOD.LBL_REPORTS_TO}:</slot></td>
<td ><slot><input type="text" class="sqsEnabled" tabindex='5' name="reports_to_name" id="reports_to_name" value="{$REPORTS_TO_NAME}" autocomplete="off" {$IS_ADMIN_DISABLED}/>
<input type="hidden" name="reports_to_id" id="reports_to_id" value="{$REPORTS_TO_ID}" tabindex="240"/>
{$REPORTS_TO_CHANGE_BUTTON}</slot></td>
<td scope="row"><slot>{$MOD.LBL_OTHER_PHONE}:</slot></td>
<td ><slot><input name='phone_other' type="text" tabindex='6' size='20' maxlength='25' value='{$PHONE_OTHER}'></slot></td>
</tr>
<tr>
<td scope="row"><slot>&nbsp;</slot></td>
<td ><slot>&nbsp;</slot></td>
<td scope="row"><slot>{$MOD.LBL_FAX}:</slot></td>
<td ><slot><input name='phone_fax' type="text" tabindex='6' size='20' maxlength='25' value='{$PHONE_FAX}'></slot></td>
</tr>
<tr>
<td scope="row"><slot>&nbsp;</slot></td>
<td ><slot>&nbsp;</slot></td>
<td scope="row"><slot>{$MOD.LBL_HOME_PHONE}:</slot></td>
<td ><slot><input name='phone_home' type="text" tabindex='6' size='20' maxlength='25' value='{$PHONE_HOME}'></slot></td>
</tr>
<tr>
<td scope="row"><slot>{$MOD.LBL_MESSENGER_TYPE}:</slot></td>
<td ><slot>{$MESSENGER_TYPE_OPTIONS}</slot></td>
<td scope="row"><slot>{$MOD.LBL_MESSENGER_ID}:</slot></td>
<td ><slot><input name='messenger_id' type="text" tabindex='6' size='35' maxlength='100' value='{$MESSENGER_ID}'></slot></td>
</tr>
{*<tr>
<th align="left" scope="row" colspan="4"><h4><slot>{$MOD.LBL_ADDRESS_INFORMATION}</slot></h4></th>
</tr>*}
<tr>
<td width="17%" scope="row"><slot>{$MOD.LBL_PRIMARY_ADDRESS}:</slot></td>
<td width="33%" ><slot><textarea name='address_street' rows="2" tabindex='8' cols="30">{$ADDRESS_STREET}</textarea></slot></td>
<td width="17%" scope="row"><slot>{$MOD.LBL_CITY}:</slot></td>
<td width="33%" ><slot><input name='address_city' tabindex='8' size='15' maxlength='100' value='{$ADDRESS_CITY}'></slot></td>
</tr>
<tr>
<td scope="row"><slot>{$MOD.LBL_STATE}:</slot></td>
<td ><slot><input name='address_state' tabindex='9' size='15' maxlength='100' value='{$ADDRESS_STATE}'></slot></td>
<td scope="row"><slot>{$MOD.LBL_POSTAL_CODE}:</slot></td>
<td ><slot><input name='address_postalcode' tabindex='9' size='10' maxlength='20' value='{$ADDRESS_POSTALCODE}'></slot></td>
</tr>
<tr>
<td scope="row"><slot>{$MOD.LBL_COUNTRY}:</slot></td>
<td ><slot><input name='address_country' tabindex='10' size='10' maxlength='20' value='{$ADDRESS_COUNTRY}'></slot></td>
<td scope="row"><slot>{$MOD.LBL_STOCK}:</slot></td>
<td ><slot><input type="text" class="sqsEnabled" tabindex='5' name="stock_name" id="stock_name" value="{$STOCK_NAME}" autocomplete="off" {$IS_ADMIN_DISABLED}/>
<input type="hidden" name="stock_id" id="stock_id" value="{$STOCK_ID}" tabindex="240"/>
{$STOCK_TO_CHANGE_BUTTON}</slot></td>
</tr>
<tr>
<td scope="row"><slot>{$MOD.LBL_CASH}:</slot></td>
<td ><slot><input type="text" class="sqsEnabled" tabindex='5' name="cash_name" id="cash_name" value="{$CASH_NAME}" autocomplete="off" {$IS_ADMIN_DISABLED}/>
<input type="hidden" name="cash_id" id="cash_id" value="{$CASH_ID}" tabindex="240"/>
{$CASH_TO_CHANGE_BUTTON}</slot></td>
</tr>
<tr>
<td valign="top" scope="row"><slot>{$MOD.LBL_NOTES}:</slot></td>
<td colspan="4"><slot><textarea name='description' tabindex='11' cols='100%' rows="4">{$DESCRIPTION}</textarea></slot></td>
</tr>
</table>
</div>
<div id="email_options">
<table width="100%" border="0" cellspacing="1" cellpadding="0" class="edit view">
<tr>
<th align="left" scope="row" colspan="4">
<h4>{$MOD.LBL_MAIL_OPTIONS_TITLE}</h4>
</th>
</tr>
<tr>
<td scope="row" width="17%">
{$MOD.LBL_EMAIL}: {if $REQUIRED_EMAIL_ADDRESS}<span class="required" id="mandatory_email">{$APP.LBL_REQUIRED_SYMBOL}</span> {/if}
</td>
<td>
{$NEW_EMAIL}
</td>
</tr>
<tr id="email_options_link_type" style='display:{$HIDE_FOR_GROUP_AND_PORTAL}'>
<td scope="row" width="17%">
{$MOD.LBL_EMAIL_LINK_TYPE}:&nbsp;{sugar_help text=$MOD.LBL_EMAIL_LINK_TYPE_HELP WIDTH=450}
</td>
<td>
<select id="email_link_type" name="email_link_type" tabindex='410'>
{$EMAIL_LINK_TYPE}
</select>
</td>
</tr>
{if !$HIDE_IF_CAN_USE_DEFAULT_OUTBOUND}
<tr id="mail_smtpserver_tr">
<td width="20%" scope="row"><span id="mail_smtpserver_label">{$MOD.LBL_EMAIL_PROVIDER}</span></td>
<td width="30%" ><slot>{$mail_smtpdisplay}<input id='mail_smtpserver' name='mail_smtpserver' type="hidden" value='{$mail_smtpserver}' /></slot></td>
<td>&nbsp;</td>
<td >&nbsp;</td>
</tr>
<tr id="mail_smtpuser_tr">
<td width="20%" scope="row" nowrap="nowrap"><span id="mail_smtpuser_label">{$MOD.LBL_MAIL_SMTPUSER}</span></td>
<td width="30%" ><slot><input type="text" id="mail_smtpuser" name="mail_smtpuser" size="25" maxlength="64" value="{$mail_smtpuser}" tabindex='1' ></slot></td>
<td>&nbsp;</td>
<td >&nbsp;</td>
</tr>
<tr id="mail_smtppass_tr">
<td width="20%" scope="row" nowrap="nowrap"><span id="mail_smtppass_label">{$MOD.LBL_MAIL_SMTPPASS}</span></td>
<td width="30%" ><slot><input type="password" id="mail_smtppass" name="mail_smtppass" size="25" maxlength="64" value="{$mail_smtppass}" tabindex='1'></slot></td>
<td>&nbsp;</td>
<td >&nbsp;</td>
</tr>
<tr id="test_outbound_settings_tr">
<td width="17%" scope="row"><input type="button" class="button" value="{$APP.LBL_EMAIL_TEST_OUTBOUND_SETTINGS}" onclick="startOutBoundEmailSettingsTest();"></td>
<td width="33%" >&nbsp;</td>
<td width="17%">&nbsp;</td>
<td width="33%" >&nbsp;</td>
</tr>
{/if}
</table>
</div>
<div id="google_options">
<table width="100%" border="0" cellspacing="1" cellpadding="0" class="edit view">
<tr>
<th align="left" scope="row" colspan="4">
<h4>Konto Google</h4>
</th>
</tr>
<tr>
<td scope="row" width="17%">
Login:
</td>
<td>
<input name="google_login" type="text" tabindex="5" size="30" maxlength="100" value='{$GOOGLE_LOGIN}'>
</td>
</tr>
<tr id="google_password">
<td scope="row" width="17%">
Hasło:
</td>
<td>
<input name="google_password" type="password" tabindex="5" size="30" maxlength="25" value="">
</td>
</tr>
<tr>
<td scope="row" width="17%">
Adres serwera:
</td>
<td>
<input name="mail_server" type="text" tabindex="5" size="30" maxlength="25" value='{$MAIL_SERVER}' placeholder="przykład imap.gmail.com:993">
</td>
</tr>
<tr>
<td scope="row" width="17%">
Nazwa kalendarza:
</td>
<td>
<input name="google_calendar_name" type="text" tabindex="5" size="15" maxlength="25" value='{$GOOGLE_CALENDAR_NAME}'>
</td>
</tr>
</table>
</div>
</div>
<div>
{if ($CHANGE_PWD) == '1'}
<div id="generate_password">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="edit view">
<tr>
<td width='40%'>
<table width='100%' cellspacing='0' cellpadding='0' border='0' >
<tr>
<th align="left" scope="row" colspan="4">
<h4>{$MOD.LBL_CHANGE_PASSWORD_TITLE}</h4><br>
{$ERROR_PASSWORD}
</th>
</tr>
</table>
<!-- hide field if user is admin -->
<div id='generate_password_old_password' {if ($IS_ADMIN)} style='display:none' {/if}>
<table width='100%' cellspacing='0' cellpadding='0' border='0' >
<tr>
<td width='35%' scope="row">
{$MOD.LBL_OLD_PASSWORD}
</td>
<td >
<input name='old_password' id='old_password' type='password' tabindex='2' onkeyup="password_confirmation();" >
</td>
<td width='40%'>
</td>
</tr>
</table>
</div>
<table width='100%' cellspacing='0' cellpadding='0' border='0' >
<tr>
<td width='35%' scope="row" snowrap>
{$MOD.LBL_NEW_PASSWORD}
<span class="required" id="mandatory_pwd">{if ($REQUIRED_PASSWORD)}{$APP.LBL_REQUIRED_SYMBOL}{/if}</span>
</td>
<td class='dataField'>
<input name='new_password' id= "new_password" type='password' tabindex='2' onkeyup="password_confirmation();newrules('{$PWDSETTINGS.minpwdlength}','{$PWDSETTINGS.maxpwdlength}','{$REGEX}');" />
</td>
<td width='40%'>
</td>
</tr>
<tr>
<td scope="row" width='35%'>
{$MOD.LBL_CONFIRM_PASSWORD}
</td>
<td class='dataField'>
<input name='confirm_new_password' id='confirm_pwd' style ='' type='password' tabindex='2' onkeyup="password_confirmation();" >
</td>
<td width='40%'>
<div id="comfirm_pwd_match" class="error" style="display: none;">{$MOD.ERR_PASSWORD_MISMATCH}</div>
{*<span id="ext-gen63" class="x-panel-header-text">
Requirements
<span id="Filter.1_help" onmouseout="return nd();" onmouseover="return overlib(help(), FGCLASS, 'olFgClass', CGCLASS, 'olCgClass', BGCLASS, 'olBgClass', TEXTFONTCLASS, 'olFontClass', CAPTIONFONTCLASS, 'olCapFontClass', CLOSEFONTCLASS, 'olCloseFontClass' );">
<img src="themes/default/images/help.gif"/>
</span>
</span>*}
</td>
</tr>
<tr>
<td class='dataLabel'></td>
<td class='dataField'></td>
</td>
</table>
<table width='17%' cellspacing='0' cellpadding='1' border='0'>
<tr>
<td width='50%'>
<input title="{$APP.LBL_SAVE_BUTTON_TITLE}" accessKey='{$APP.LBL_SAVE_BUTTON_KEY}' class='button' id='save_new_pwd_button' LANGUAGE=javascript onclick='if (set_password(this.form)) window.close(); else return false;' type='submit' name='button' style='display:none;' value='{$APP.LBL_SAVE_BUTTON_LABEL}'>
</td>
<td width='50%'>
</td>
</tr>
</table>
</td>
<td width='60%' style="vertical-align:middle;">
</td>
</tr>
</table>
</div>
{else}
<div id="generate_password">
<input name='old_password' id='old_password' type='hidden'>
<input name='new_password' id= "new_password" type='hidden'>
<input name='confirm_new_password' id='confirm_pwd' type='hidden'>
</div>
{/if}
</div>
{if $SHOW_THEMES}
<div>
<div id="themepicker" style="display:{$HIDE_FOR_GROUP_AND_PORTAL}">
<table class="edit view" border="0" cellpadding="0" cellspacing="0" width="100%">
<tbody>
<tr>
<td scope="row" colspan="4"><h4>{$MOD.LBL_THEME}</h4></td>
</tr>
<tr>
<td width="17%">
<select name="user_theme" tabindex='366' size="20" id="user_theme_picker" style="width: 100%">
{$THEMES}
</select>
</td>
<td width="33%">
<img id="themePreview" src="{sugar_getimagepath file='themePreview.png'}" border="1" />
</td>
<td width="17%">&nbsp;</td>
<td width="33%">&nbsp;</td>
</tr>
</tbody>
</table>
</div>
</div>
{/if}
<div>
<div id="settings" style="display:{$HIDE_FOR_GROUP_AND_PORTAL}">
<table width="100%" border="0" cellspacing="1" cellpadding="0" class="edit view">
<tr>
<th width="100%" align="left" scope="row" colspan="4"><h4><slot>{$MOD.LBL_USER_SETTINGS}</slot></h4></th>
</tr>
<tr>
<td scope="row" valign="top"><slot>{$MOD.LBL_EXPORT_DELIMITER}:</slot>&nbsp;{sugar_help text=$MOD.LBL_EXPORT_DELIMITER_DESC }</td>
<td ><slot><input type="text" tabindex='12' name="export_delimiter" value="{$EXPORT_DELIMITER}" size="5"></slot></td>
<td scope="row" width="17%">
<slot>{$MOD.LBL_RECEIVE_NOTIFICATIONS}:</slot>&nbsp;{sugar_help text=$MOD.LBL_RECEIVE_NOTIFICATIONS_TEXT}
</td>
<td width="33%">
<slot><input name='receive_notifications' class="checkbox" tabindex='12' type="checkbox" value="12" {$RECEIVE_NOTIFICATIONS}></slot>
</td>
</tr>
<tr>
<td scope="row" valign="top"><slot>{$MOD.LBL_EXPORT_CHARSET}:</slot>&nbsp;{sugar_help text=$MOD.LBL_EXPORT_CHARSET_DESC }</td>
<td ><slot><select tabindex='12' name="default_export_charset">{$EXPORT_CHARSET}</select></slot></td>
<td scope="row" valign="top">
<slot>{$MOD.LBL_REMINDER}:</slot>&nbsp;{sugar_help text=$MOD.LBL_REMINDER_TEXT }
</td>
<td valign="top" nowrap>
<slot>
<input tabindex='12' name='mailmerge_on' type='hidden' value='0'>
<input name='should_remind' size='2' maxlength='2' tabindex='12' onclick='toggleDisplay("should_remind_list");' type="checkbox" class="checkbox" value='1' {$REMINDER_CHECKED}>
<div id='should_remind_list' style='display:{$REMINDER_TIME_DISPLAY}'>
<select tabindex='12' name='reminder_time' >{$REMINDER_TIME_OPTIONS}</select></div></slot>
</td>
</tr>
<tr>
<td scope="row" valign="top"><slot>{$MOD.LBL_USE_REAL_NAMES}:</slot>&nbsp;{sugar_help text=$MOD.LBL_USE_REAL_NAMES_DESC }</td>
<td ><slot><input tabindex='12' type="checkbox" name="use_real_names" {$USE_REAL_NAMES}></slot></td>
<td scope="row" valign="top">
<slot>{$MOD.LBL_MAILMERGE}:</slot>&nbsp;{sugar_help text=$MOD.LBL_MAILMERGE_TEXT }
</td>
<td valign="top" nowrap>
<slot><input tabindex='12' name='mailmerge_on' class="checkbox" type="checkbox" {$MAILMERGE_ON}></slot>
</td>
</tr>
<!--{if !empty($EXTERNAL_AUTH_CLASS) && !empty($IS_ADMIN)}-->
<tr>
{capture name=SMARTY_LBL_EXTERNAL_AUTH_ONLY}&nbsp;{$MOD.LBL_EXTERNAL_AUTH_ONLY} {$EXTERNAL_AUTH_CLASS_1}{/capture}
<td scope="row" nowrap><slot>{$EXTERNAL_AUTH_CLASS} {$MOD.LBL_ONLY}:</slot>&nbsp;{sugar_help text=$smarty.capture.SMARTY_LBL_EXTERNAL_AUTH_ONLY}</td>
<td ><input type='hidden' value='0' name='external_auth_only'><input type='checkbox' value='1' name='external_auth_only' {$EXTERNAL_AUTH_ONLY_CHECKED}></td>
<td ></td>
<td ></td>
</tr>
<!--{/if}-->
</table>
</div>
<div id="layout">
<table class="edit view" border="0" cellpadding="0" cellspacing="1" width="100%">
<tbody>
<tr>
<th align="left" scope="row" colspan="4"><h4>{$MOD.LBL_LAYOUT_OPTIONS}</h4></th>
</tr>
<tr>
<td colspan="4">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td scope="row" align="left" style="padding-bottom: 2em;">{$TAB_CHOOSER}</td>
<td width="90%" valign="top"><BR>&nbsp;</td>
</tr>
</table>
</td>
</tr>
<tr>
<td width="17%" scope="row"><span scope="row">{$MOD.LBL_MAX_TAB}:</span>&nbsp;{sugar_help text=$MOD.LBL_MAX_TAB_DESCRIPTION }</td>
<td width="83%" colspan="3">
<select name="user_max_tabs" tabindex='12'>
{html_options values=$MAX_TAB_OPTIONS output=$MAX_TAB_OPTIONS selected=$MAX_TAB}
</select>
</td>
</tr>
<tr>
<td scope="row"><span>{$MOD.LBL_SUBPANEL_TABS}:</span>&nbsp;{sugar_help text=$MOD.LBL_SUBPANEL_TABS_DESCRIPTION }</td>
<td colspan="3"><input type="checkbox" name="user_subpanel_tabs" {$SUBPANEL_TABS} tabindex='13'></td>
</tr>
</table>
</div>
<div id="locale" style="display:{$HIDE_FOR_GROUP_AND_PORTAL}">
<table width="100%" border="0" cellspacing="1" cellpadding="0" class="edit view">
<tr>
<th width="100%" align="left" scope="row" colspan="4">
<h4><slot>{$MOD.LBL_USER_LOCALE}</slot></h4></th>
</tr>
<tr>
<td width="17%" scope="row"><slot>{$MOD.LBL_DATE_FORMAT}:</slot>&nbsp;{sugar_help text=$MOD.LBL_DATE_FORMAT_TEXT }</td>
<td width="33%"><slot><select tabindex='14' name='dateformat'>{$DATEOPTIONS}</select></slot></td>
<!-- END: prompttz -->
<!-- BEGIN: currency -->
<td width="17%" scope="row"><slot>{$MOD.LBL_CURRENCY}:</slot>&nbsp;{sugar_help text=$MOD.LBL_CURRENCY_TEXT }</td>
<td ><slot>
<select tabindex='14' id='currency_select' name='currency' onchange='setSymbolValue(this.options[this.selectedIndex].value);setSigDigits();'>{$CURRENCY}</select>
<input type="hidden" id="symbol" value="">
</slot></td>
<!-- END: currency -->
</tr>
<tr>
<td scope="row"><slot>{$MOD.LBL_TIME_FORMAT}:</slot>&nbsp;{sugar_help text=$MOD.LBL_TIME_FORMAT_TEXT }</td>
<td ><slot><select tabindex='14' name='timeformat'>{$TIMEOPTIONS}</select></slot></td>
<!-- BEGIN: currency -->
<td width="17%" scope="row"><slot>
{$MOD.LBL_CURRENCY_SIG_DIGITS}:
</slot></td>
<td ><slot>
<select id='sigDigits' onchange='setSigDigits(this.value);' name='default_currency_significant_digits'>{$sigDigits}</select>
</slot></td>
<!-- END: currency -->
</tr>
<tr>
<td scope="row"><slot>{$MOD.LBL_TIMEZONE}:</slot>&nbsp;{sugar_help text=$MOD.LBL_TIMEZONE_TEXT }</td>
<td ><slot><select tabindex='14' name='timezone'>{$TIMEZONEOPTIONS}</select></slot></td>
<!-- BEGIN: currency -->
<td width="17%" scope="row"><slot>
<i>{$MOD.LBL_LOCALE_EXAMPLE_NAME_FORMAT}</i>:
</slot></td>
<td ><slot>
<input type="text" disabled id="sigDigitsExample" name="sigDigitsExample">
</slot></td>
<!-- END: currency -->
</tr>
{if ($IS_ADMIN)}
<tr>
<td scope="row"><slot>{$MOD.LBL_PROMPT_TIMEZONE}:</slot>&nbsp;{sugar_help text=$MOD.LBL_PROMPT_TIMEZONE_TEXT }</td>
<td ><slot><input type="checkbox" tabindex='14'class="checkbox" name="ut" value="0" {$PROMPTTZ}></slot></td>
<td width="17%" scope="row"><slot>{$MOD.LBL_NUMBER_GROUPING_SEP}:</slot>&nbsp;{sugar_help text=$MOD.LBL_NUMBER_GROUPING_SEP_TEXT }</td>
<td ><slot>
<input tabindex='14' name='num_grp_sep' id='default_number_grouping_seperator'
type='text' maxlength='1' size='1' value='{$NUM_GRP_SEP}'
onkeydown='setSigDigits();' onkeyup='setSigDigits();'>
</slot></td></tr>
{else}
<tr>
<td scope="row"><slot></td>
<td ><slot></slot></td>
<td width="17%" scope="row"><slot>{$MOD.LBL_NUMBER_GROUPING_SEP}:</slot>&nbsp;{sugar_help text=$MOD.LBL_NUMBER_GROUPING_SEP_TEXT }</td>
<td ><slot>
<input tabindex='14' name='num_grp_sep' id='default_number_grouping_seperator'
type='text' maxlength='1' size='1' value='{$NUM_GRP_SEP}'
onkeydown='setSigDigits();' onkeyup='setSigDigits();'>
</slot></td></tr>
{/if}
{capture name=SMARTY_LOCALE_NAME_FORMAT_DESC}&nbsp;{$MOD.LBL_LOCALE_NAME_FORMAT_DESC}<br />{$MOD.LBL_LOCALE_NAME_FORMAT_DESC_2}{/capture}
<tr>
<td scope="row" valign="top">{$MOD.LBL_LOCALE_DEFAULT_NAME_FORMAT}:&nbsp;{sugar_help text=$smarty.capture.SMARTY_LOCALE_NAME_FORMAT_DESC }</td>
<td valign="top">
<input onkeyup="setPreview();" onkeydown="setPreview();" id="default_locale_name_format" type="text" tabindex='14' name="default_locale_name_format" value="{$default_locale_name_format}">
</td>
<td width="17%" scope="row"><slot>{$MOD.LBL_DECIMAL_SEP}:</slot>&nbsp;{sugar_help text=$MOD.LBL_DECIMAL_SEP_TEXT }</td>
<td ><slot>
<input tabindex='14' name='dec_sep' id='default_decimal_seperator'
type='text' maxlength='1' size='1' value='{$DEC_SEP}'
onkeydown='setSigDigits();' onkeyup='setSigDigits();'>
</slot></td>
</tr>
<tr>
<td scope="row" valign="top"><i>{$MOD.LBL_LOCALE_EXAMPLE_NAME_FORMAT}:</i> </td>
<td valign="top"><input tabindex='14' name="no_value" id="nameTarget" value="" style="border: none;" disabled size="50"></td>
</tr>
</table>
</div>
<div id="calendar_options" style="display:{$HIDE_FOR_GROUP_AND_PORTAL}">
<table width="100%" border="0" cellspacing="1" cellpadding="0" class="edit view">
<tr>
<th align="left" scope="row" colspan="4"><h4>{$MOD.LBL_CALENDAR_OPTIONS}</h4></th>
</tr>
<tr>
<td width="17%" scope="row"><slot>{$MOD.LBL_PUBLISH_KEY}:</slot>&nbsp;{sugar_help text=$MOD.LBL_CHOOSE_A_KEY}</td>
<td width="20%" ><slot><input name='calendar_publish_key' tabindex='17' size='25' maxlength='25' type="text" value="{$CALENDAR_PUBLISH_KEY}"></slot></td>
<td width="63%" ><slot>&nbsp;</slot></td>
</tr>
</table>
</div>
</div>
</div>
<div class="actionContainer">
<input id="Save" title="{$APP.LBL_SAVE_BUTTON_TITLE}" class="button primary" onclick="if (!set_password(form,newrules('{$PWDSETTINGS.minpwdlength}','{$PWDSETTINGS.maxpwdlength}','{$REGEX}'))) return false;Admin_check(); this.form.action.value='Save'; {$CHOOSER_SCRIPT} {$REASSIGN_JS} if(verify_data(EditView)) this.form.submit();"
type="button" name="button" value="{$APP.LBL_SAVE_BUTTON_LABEL}" />
<input title="{$APP.LBL_CANCEL_BUTTON_TITLE}" class="button" onclick="this.form.action.value='{$RETURN_ACTION}'; this.form.module.value='{$RETURN_MODULE}'; this.form.record.value='{$RETURN_ID}'; this.form.submit();"
type="button" name="button" value="{$APP.LBL_CANCEL_BUTTON_LABEL}" />
{$BUTTONS}
</div>
<script type="text/javascript">
<!--
var mail_smtpport = '{$MAIL_SMTPPORT}';
var mail_smtpssl = '{$MAIL_SMTPSSL}';
{literal}
EmailMan = {};
function Admin_check(){
if (('{/literal}{$IS_FOCUS_ADMIN}{literal}') && document.getElementById('is_admin').value=='0'){
r=confirm('{/literal}{$MOD.LBL_CONFIRM_REGULAR_USER}{literal}');
return r;
}
else
return true;
}
function user_status_display(field){
switch (field.value){
case 'Administrator':
document.getElementById('UserTypeDesc').innerHTML="{/literal}{$MOD.LBL_ADMIN_DESC}{literal}";
document.getElementById('is_admin').value='1';
break;
case 'RegularUser':
document.getElementById('is_admin').value='0';
document.getElementById('UserTypeDesc').innerHTML="{/literal}{$MOD.LBL_REGULAR_DESC}{literal}";
break;
}
}
function startOutBoundEmailSettingsTest()
{
var loader = new YAHOO.util.YUILoader({
require : ["element","sugarwidgets"],
loadOptional: true,
skin: { base: 'blank', defaultSkin: '' },
onSuccess: testOutboundSettings,
allowRollup: true,
base: "include/javascript/yui/build/"
});
loader.addModule({
name :"sugarwidgets",
type : "js",
fullpath: "include/javascript/sugarwidgets/SugarYUIWidgets.js",
varName: "YAHOO.SUGAR",
requires: ["datatable", "dragdrop", "treeview", "tabview"]
});
loader.insert();
}
function testOutboundSettings()
{
var errorMessage = '';
var isError = false;
var fromAddress = document.getElementById("outboundtest_from_address").value;
var errorMessage = '';
var isError = false;
var smtpServer = document.getElementById('mail_smtpserver').value;
var mailsmtpauthreq = document.getElementById('mail_smtpauth_req');
if(trim(smtpServer) == '' || trim(mail_smtpport) == '')
{
isError = true;
errorMessage += "{/literal}{$MOD.LBL_MISSING_DEFAULT_OUTBOUND_SMTP_SETTINGS}{literal}" + "<br/>";
overlay("{/literal}{$APP.ERR_MISSING_REQUIRED_FIELDS}{literal}", errorMessage, 'alert');
return false;
}
if(trim(document.getElementById('mail_smtpuser').value) == '')
{
isError = true;
errorMessage += "{/literal}{$APP.LBL_EMAIL_ACCOUNTS_SMTPUSER}{literal}" + "<br/>";
}
if(trim(document.getElementById('mail_smtppass').value) == '')
{
isError = true;
errorMessage += "{/literal}{$APP.LBL_EMAIL_ACCOUNTS_SMTPPASS}{literal}" + "<br/>";
}
if(isError) {
overlay("{/literal}{$APP.ERR_MISSING_REQUIRED_FIELDS}{literal}", errorMessage, 'alert');
return false;
}
testOutboundSettingsDialog();
}
function sendTestEmail()
{
var fromAddress = document.getElementById("outboundtest_from_address").value;
if (trim(fromAddress) == "")
{
overlay("{/literal}{$APP.ERR_MISSING_REQUIRED_FIELDS}{literal}", "{{/literal}$APP.LBL_EMAIL_SETTINGS_FROM_TO_EMAIL_ADDR}{literal}", 'alert');
return;
}
else if (!isValidEmail(fromAddress)) {
overlay("{/literal}{$APP.ERR_INVALID_REQUIRED_FIELDS}{literal}", "{/literal}{$APP.LBL_EMAIL_SETTINGS_FROM_TO_EMAIL_ADDR}{literal}", 'alert');
return;
}
//Hide the email address window and show a message notifying the user that the test email is being sent.
EmailMan.testOutboundDialog.hide();
overlay("{/literal}{$APP.LBL_EMAIL_PERFORMING_TASK}{literal}", "{/literal}{$APP.LBL_EMAIL_ONE_MOMENT}{literal}", 'alert');
var callbackOutboundTest = {
success : function(o) {
hideOverlay();
overlay("{/literal}{$APP.LBL_EMAIL_TEST_OUTBOUND_SETTINGS}{literal}", "{/literal}{$APP.LBL_EMAIL_TEST_NOTIFICATION_SENT}{literal}", 'alert');
}
};
var smtpServer = document.getElementById('mail_smtpserver').value;
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;
YAHOO.util.Connect.asyncRequest("POST", "index.php?action=testOutboundEmail&module=EmailMan&to_pdf=true&sugar_body_only=true", callbackOutboundTest, postDataString);
}
function testOutboundSettingsDialog() {
// lazy load dialogue
if(!EmailMan.testOutboundDialog) {
EmailMan.testOutboundDialog = new YAHOO.widget.Dialog("testOutboundDialog", {
modal:true,
visible:true,
fixedcenter:true,
constraintoviewport: true,
width : 600,
shadow : false
});
EmailMan.testOutboundDialog.setHeader("{/literal}{$APP.LBL_EMAIL_TEST_OUTBOUND_SETTINGS}{literal}");
YAHOO.util.Dom.removeClass("testOutboundDialog", "yui-hidden");
} // end lazy load
EmailMan.testOutboundDialog.render();
EmailMan.testOutboundDialog.show();
} // fn
function overlay(reqtitle, body, type) {
var config = { };
config.type = type;
config.title = reqtitle;
config.msg = body;
YAHOO.SUGAR.MessageBox.show(config);
}
function hideOverlay() {
YAHOO.SUGAR.MessageBox.hide();
}
YAHOO.util.Event.onContentReady('user_theme_picker',function()
{
document.getElementById('user_theme_picker').onchange = function()
{
document.getElementById('themePreview').src =
"index.php?entryPoint=getImage&themeName=" + document.getElementById('user_theme_picker').value + "&imageName=themePreview.png";
}
});
{/literal}
{if !$HIDE_IF_CAN_USE_DEFAULT_OUTBOUND}
{literal}
document.getElementById('email_link_type').onchange = function()
{
document.getElementById('mail_smtpserver_tr').style.display = (this.value == 'mailto' ? 'none' : '' );
document.getElementById('mail_smtpuser_tr').style.display = (this.value == 'mailto' ? 'none' : '' );
document.getElementById('mail_smtppass_tr').style.display = (this.value == 'mailto' ? 'none' : '' );
document.getElementById('test_outbound_settings_tr').style.display = (this.value == 'mailto' ? 'none' : '' );
}
document.getElementById('email_link_type').onchange();
{/literal}
{/if}
{literal}
{/literal}
-->
</script>
{$JAVASCRIPT}
{literal}
<script type="text/javascript" language="Javascript">
{/literal}
{$getNameJs}
{$getNumberJs}
{$currencySymbolJs}
setSymbolValue(document.getElementById('currency_select').options[document.getElementById('currency_select').selectedIndex].value);
setSigDigits();
{$confirmReassignJs}
</script>
</form>
<div id="testOutboundDialog" class="yui-hidden">
<div id="testOutbound">
<form>
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="edit view">
<tr>
<td scope="row">
{$APP.LBL_EMAIL_SETTINGS_FROM_TO_EMAIL_ADDR}
<span class="required">
{$APP.LBL_REQUIRED_SYMBOL}
</span>
</td>
<td >
<input type="text" id="outboundtest_from_address" name="outboundtest_from_address" size="35" maxlength="64" value="{$TEST_EMAIL_ADDRESS}">
</td>
</tr>
<tr>
<td scope="row" colspan="2">
<input type="button" class="button" value=" {$APP.LBL_EMAIL_SEND} " onclick="javascript:sendTestEmail();">&nbsp;
<input type="button" class="button" value=" {$APP.LBL_CANCEL_BUTTON_LABEL} " onclick="javascript:EmailMan.testOutboundDialog.hide();">&nbsp;
</td>
</tr>
</table>
</form>
</div>
</div>

103
modules/Users/SetTimezone.tpl Executable file
View File

@@ -0,0 +1,103 @@
<!--
/*********************************************************************************
* SugarCRM is a customer relationship management program developed by
* SugarCRM, Inc. Copyright (C) 2004-2010 SugarCRM Inc.
*
* This program is free software; you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License version 3 as published by the
* Free Software Foundation with the addition of the following permission added
* to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
* IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
* OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
* details.
*
* You should have received a copy of the GNU Affero General Public License along with
* this program; if not, see http://www.gnu.org/licenses or write to the Free
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
* 02110-1301 USA.
*
* You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
* SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "Powered by
* SugarCRM" logo. If the display of the logo is not reasonably feasible for
* technical reasons, the Appropriate Legal Notices must display the words
* "Powered by SugarCRM".
********************************************************************************/
/*********************************************************************************
********************************************************************************/
-->
<!-- BEGIN: main -->
<div class="dashletPanelMenu" style="width: 500px; margin: 20px auto;">
<div class="hd"><div class="tl"></div><div class="hd-center"></div><div class="tr"></div></div>
<div class="bd" style="padding-top: 0px; padding-bottom: 0;">
<div class="ml"></div>
<div class="bd-center">
<form name="EditView" method="POST" action="index.php?module=Users&action=SaveTimezone&SaveTimezone=True">
<input type="hidden" value="{$USER_ID}" name="record">
<input type="hidden" name="module" value="Users">
<input type="hidden" name="action" value="SaveTimezone">
<input type="hidden" name="SaveTimezone" value="true">
<table class="subMenuTD" style="padding: 8px; border: 2px solid #999; background-color: #fff;" cellpadding="0" cellspacing="2" border="0" align="center" width="440">
<tr>
<td colspan="2" width="100%"></td>
</tr>
<tr>
<td colspan="2" width="100%" style="font-size: 12px; padding-bottom: 5px;">
<table width="100%" border="0">
<tr>
<td colspan="2"><slot>{$MOD.LBL_PICK_TZ_DESCRIPTION}</slot></td>
</tr>
</table>
<br><br>
<slot><select tabindex='3' name='timezone'>{$TIMEZONEOPTIONS}</select></slot>
<input title="{$APP.LBL_SAVE_BUTTON_TITLE}"
accessKey="{$APP.LBL_SAVE_BUTTON_KEY}"
class="button primary"
type="submit"
name="button"
value=" {$APP.LBL_SAVE_BUTTON_LABEL} " ><br />
<span class="dateFormat">{$MOD.LBL_DST_INSTRUCTIONS}</span>
</td>
</tr>
</table>
</form>
</div>
<div class="mr"></div>
</div>
<div class="ft"><div class="bl"></div><div class="ft-center"></div><div class="br"></div></div>
</div>
{literal}
<script type="text/javascript" language="JavaScript">
<!--
lookupTimezone = function() {
var success = function(data) {
eval(data.responseText);
if(typeof userTimezone != 'undefined') {
document.EditView.timezone.value = userTimezone;
}
}
var now = new Date();
var d1 = new Date(now.getFullYear(), 0, 1, 0, 0, 0);
d1GMTString = d1.toGMTString();
var d2 = new Date(d1GMTString.substring(0, d1GMTString.lastIndexOf(' ') - 1));
offset = ((d1 - d2) / (1000 * 60));
url = 'index.php?module=Users&action=SetTimezone&to_pdf=1&userOffset=' + offset;
var cObj = YAHOO.util.Connect.asyncRequest('GET', url, {success: success, failure: success});
}
YAHOO.util.Event.addListener(window, 'load', lookupTimezone);
-->
</script>
{/literal}

170
modules/Users/login.tpl Executable file
View File

@@ -0,0 +1,170 @@
<!--
/*********************************************************************************
* SugarCRM is a customer relationship management program developed by
* SugarCRM, Inc. Copyright (C) 2004-2010 SugarCRM Inc.
*
* This program is free software; you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License version 3 as published by the
* Free Software Foundation with the addition of the following permission added
* to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
* IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
* OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
* details.
*
* You should have received a copy of the GNU Affero General Public License along with
* this program; if not, see http://www.gnu.org/licenses or write to the Free
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
* 02110-1301 USA.
*
* You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
* SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "Powered by
* SugarCRM" logo. If the display of the logo is not reasonably feasible for
* technical reasons, the Appropriate Legal Notices must display the words
* "Powered by SugarCRM".
********************************************************************************/
/*********************************************************************************
********************************************************************************/
-->
<script type='text/javascript'>
var LBL_LOGIN_SUBMIT = '{$MOD.LBL_LOGIN_SUBMIT}';
var LBL_REQUEST_SUBMIT = '{$MOD.LBL_REQUEST_SUBMIT}';
</script>
<table cellpadding="0" align="center" width="100%" cellspacing="0" border="0">
<tr>
<td align="center">
<div class="dashletPanelMenu" style="width: 460px;">
<div class="hd"><div class="tl"></div><div class="hd-center"></div><div class="tr"></div></div>
<div class="bd">
<div class="ml"></div>
<div class="bd-center">
<div class="loginBox">
<table cellpadding="0" cellspacing="0" border="0" align="center">
<tr>
<td style="text-align:center;">
<b>{$MOD.LBL_LOGIN_WELCOME_TO}</b><br>
<IMG src="custom/themes/default/images/company_logo.png" alt="Sugar" width="100" height="100" style="margin: 5px 0;">
</td>
</tr>
<tr>
<td align="center">
<div class="login">
<form action="index.php" method="post" name="DetailView" id="form" onsubmit="return document.getElementById('cant_login').value == ''">
<table cellpadding="0" cellspacing="2" border="0" align="center" width="100%">
{if $LOGIN_ERROR !=''}
<tr>
<td scope="row" colspan="2"><span class="error">{$LOGIN_ERROR}</span></td>
{if $WAITING_ERROR !=''}
<tr>
<td scope="row" colspan="2"><span class="error">{$WAITING_ERROR}</span></td>
</tr>
{/if}
</tr>
{else}
<tr>
<td scope="row" width='1%'></td>
<td scope="row"><span id='post_error' class="error"></span></td>
</tr>
{/if}
<tr>
<td scope="row" colspan="2" width="100%" style="font-size: 12px; font-weight: normal; padding-bottom: 4px;">{$APP.NTC_LOGIN_MESSAGE}
<input type="hidden" name="module" value="Users">
<input type="hidden" name="action" value="Authenticate">
<input type="hidden" name="return_module" value="Users">
<input type="hidden" name="return_action" value="Login">
<input type="hidden" id="cant_login" name="cant_login" value="">
<input type="hidden" name="login_module" value="{$LOGIN_MODULE}">
<input type="hidden" name="login_action" value="{$LOGIN_ACTION}">
<input type="hidden" name="login_record" value="{$LOGIN_RECORD}">
</td>
</tr>
<tr>
<td scope="row" width="30%">{$MOD.LBL_USER_NAME}:</td>
<td width="70%"><input type="text" size='35' tabindex="1" id="user_name" name="user_name" value='{$LOGIN_USER_NAME}' /></td>
</tr>
<tr>
<td scope="row">{$MOD.LBL_PASSWORD}:</td>
<td width="30%"><input type="password" size='26' tabindex="2" id="user_password" name="user_password" value='{$LOGIN_PASSWORD}' /></td>
</tr>
{if !empty($SELECT_LANGUAGE)}
<tr>
<td colspan="2" class="login_more"><div style="cursor: hand; cursor: pointer; display:{$LOGIN_DISPLAY}" onclick='toggleDisplay("more");'><IMG src="{sugar_getimagepath file='advanced_search.gif'}" border="0" alt="Hide Options" id="more_options">&nbsp;<a href='javascript:void(0)'>{$MOD.LBL_LOGIN_OPTIONS}</a></div>
<div id='more' style='display: none'>
<table cellpadding="0" cellspacing="2" border="0" align="center" width="100%">
<tr>
<td scope="row">{$MOD.LBL_LANGUAGE}</td>
<td><select style='width: 152px' name='login_language'>{$SELECT_LANGUAGE}</select></td>
</tr>
</table>
</div>
</td>
</tr>
{/if}
<tr>
<td>&nbsp;</td>
<td><input title="{$MOD.LBL_LOGIN_BUTTON_TITLE}" accessKey="{$MOD.LBL_LOGIN_BUTTON_TITLE}" class="button primary" type="submit" tabindex="3" id="login_button" name="Login" value="{$MOD.LBL_LOGIN_BUTTON_LABEL}"><br>&nbsp;</td>
</tr>
</table>
</form>
<form action="index.php" method="post" name="fp_form" id="fp_form" >
<table cellpadding="0" cellspacing="2" border="0" align="center" width="100%">
<tr>
<td colspan="2" class="login_more">
<div style="cursor: hand; cursor: pointer; display:{$DISPLAY_FORGOT_PASSWORD_FEATURE};" onclick='toggleDisplay("forgot_password_dialog");'>
<IMG src="{sugar_getimagepath file='advanced_search.gif'}" border="0" alt="Hide Options" id="forgot_password_dialog_options">
<a href='javascript:void(0)'>{$MOD.LBL_LOGIN_FORGOT_PASSWORD}</a>
</div>
<div id="forgot_password_dialog" style="display:none" >
<input type="hidden" name="entryPoint" value="GeneratePassword">
<table cellpadding="0" cellspacing="2" border="0" align="center" width="100%" >
<tr>
<td colspan="2">
<div id="generate_success" class='error' style="display:inline;"> </div>
</td>
</tr>
<tr>
<td scope="row" width="30%">{$MOD.LBL_USER_NAME}:</td>
<td width="70%"><input type="text" size='26' id="fp_user_name" name="fp_user_name" value='{$LOGIN_USER_NAME}' /></td>
</tr>
<tr>
<td scope="row" width="30%">{$MOD.LBL_EMAIL}:</td>
<td width="70%"><input type="text" size='26' id="fp_user_mail" name="fp_user_mail" value='' ></td>
</tr>
{$CAPTCHA}
<tr>
<td scope="row" width="30%"><div id='wait_pwd_generation'></div></td>
<td width="70%"><input title="Email Temp Password" class="button" type="button" style="display:inline" onclick="validateAndSubmit();
return document.getElementById('cant_login').value == ''" id="generate_pwd_button" name="fp_login" value="{$MOD.LBL_LOGIN_SUBMIT}"></td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</form>
</div>
</td>
</tr>
</table>
</div>
</div>
<div class="mr"></div>
</div>
<div class="ft"><div class="bl"></div><div class="ft-center"></div><div class="br"></div></div>
</div>
</td>
</tr>
</table>

580
modules/Users/tpls/wizard.tpl Executable file
View File

@@ -0,0 +1,580 @@
{*
/*********************************************************************************
* SugarCRM is a customer relationship management program developed by
* SugarCRM, Inc. Copyright (C) 2004-2010 SugarCRM Inc.
*
* This program is free software; you can redistribute it and/or modify it under
* the terms of the GNU Affero General Public License version 3 as published by the
* Free Software Foundation with the addition of the following permission added
* to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
* IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
* OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
* details.
*
* You should have received a copy of the GNU Affero General Public License along with
* this program; if not, see http://www.gnu.org/licenses or write to the Free
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
* 02110-1301 USA.
*
* You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
* SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
*
* The interactive user interfaces in modified source and object code versions
* of this program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU Affero General Public License version 3.
*
* In accordance with Section 7(b) of the GNU Affero General Public License version 3,
* these Appropriate Legal Notices must retain the display of the "Powered by
* SugarCRM" logo. If the display of the logo is not reasonably feasible for
* technical reasons, the Appropriate Legal Notices must display the words
* "Powered by SugarCRM".
********************************************************************************/
*}
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<link rel="SHORTCUT ICON" href="{$FAVICON_URL}">
<meta http-equiv="Content-Type" content="text/html; charset={$APP.LBL_CHARSET}">
<title>{$MOD.LBL_WIZARD_TITLE}</title>
{literal}
<script type='text/javascript'>
function disableReturnSubmission(e) {
var key = window.event ? window.event.keyCode : e.which;
return (key != 13);
}
</script>
{/literal}
{$SUGAR_JS}
{$SUGAR_CSS}
{$CSS}
</head>
<body class="yui-skin-sam">
<div id="main">
<div id="content">
<table style="width:auto;height:600px;" align="center"><tr><td align="center">
<form id="UserWizard" name="UserWizard" enctype='multipart/form-data' method="POST" action="index.php" onkeypress="return disableReturnSubmission(event);">
<input type='hidden' name='action' value='SaveUserWizard'/>
<input type='hidden' name='module' value='Users'/>
<span class='error'>{$error.main}</span>
{overlib_includes}
<script type="text/javascript" src="{sugar_getjspath file='include/javascript/sugar_grp_yui_widgets.js'}"></script>
<script type="text/javascript" src="{sugar_getjspath file='modules/Emails/javascript/vars.js'}"></script>
<script type="text/javascript" src="{sugar_getjspath file='include/javascript/sugar_grp_emails.js'}"></script>
<script type="text/javascript" src="{sugar_getjspath file='modules/Users/User.js'}"></script>
<div class="dashletPanelMenu">
<div class="hd"><div class="tl"></div><div class="hd-center"></div><div class="tr"></div></div>
<div class="bd">
<div class="ml"></div>
<div class="bd-center">
<div id="welcome" class="screen">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<div class="edit view">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<th align="left" scope="row" colspan="4"><h2>{$MOD.LBL_WIZARD_WELCOME_TITLE}</h2></th>
</tr>
<tr>
<td scope="row">
{if !$HIDE_IF_CAN_USE_DEFAULT_OUTBOUND}
<p> {$MOD.LBL_WIZARD_WELCOME}</p>
{else}
<p> {$MOD.LBL_WIZARD_WELCOME_NOSMTP}</p>
{/if}
<div class="userWizWelcome"><img src='include/images/sugar_wizard_welcome.jpg' border='0' width='765px' height='325px'></div>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<div class="nav-buttons">
<input title="{$MOD.LBL_WIZARD_NEXT_BUTTON}"
class="button primary" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_NEXT_BUTTON} "
onclick="SugarWizard.changeScreen('personalinfo',false);" />
</div>
</div>
<div id="personalinfo" class="screen">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<div class="edit view">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<th align="left" scope="row" colspan="4"><h2><slot>{$MOD.LBL_WIZARD_PERSONALINFO}</slot></h2></th>
</tr>
<tr>
<td align="left" scope="row" colspan="4"><i>{$MOD.LBL_WIZARD_PERSONALINFO_DESC}</i></td>
</tr>
<tr>
<td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_FIRST_NAME}:</slot></td>
<td width="33%"><slot><input id='first_name' name='first_name' tabindex='1' size='25' maxlength='25' type="text" value="{$FIRST_NAME}"></slot></td>
<td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_LAST_NAME}: <span class="required">{$APP.LBL_REQUIRED_SYMBOL}</span></slot></td>
<td width="33%"><slot><input id='last_name' name='last_name' tabindex='2' size='25' maxlength='25' type="text" value="{$LAST_NAME}"></slot></td>
</tr>
<tr>
<td scope="row" width="17%">
{$MOD.LBL_EMAIL}: {if $REQUIRED_EMAIL_ADDRESS}<span class="required">{$APP.LBL_REQUIRED_SYMBOL}</span>{/if}
</td>
<td width="33%"><slot><input name='email1' tabindex='11' size='30' maxlength='100' value='{$EMAIL1}' id='email1' /></slot></td>
<td scope="row" nowrap="nowrap"><slot>&nbsp;</slot></td>
<td><slot>&nbsp;</slot></td>
</tr>
<tr>
<td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_OFFICE_PHONE}:</slot></td>
<td width="33%" ><slot><input name='phone_work' type="text" tabindex='6' size='20' maxlength='25' value='{$PHONE_WORK}'></slot></td>
<td scope="row" nowrap="nowrap"><slot>{$MOD.LBL_MESSENGER_TYPE}:</slot></td>
<td ><slot>{$MESSENGER_TYPE_OPTIONS}</slot></td>
</tr>
<tr>
<td scope="row"><slot>{$MOD.LBL_MOBILE_PHONE}:</slot></td>
<td ><slot><input name='phone_mobile' type="text" tabindex='6' size='20' maxlength='25' value='{$PHONE_MOBILE}'></slot></td>
<td scope="row" nowrap="nowrap"><slot>{$MOD.LBL_MESSENGER_ID}:</slot></td>
<td ><slot><input name='messenger_id' type="text" tabindex='6' size='30' maxlength='100' value='{$MESSENGER_ID}'></slot></td>
</tr>
<tr>
<td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_PRIMARY_ADDRESS}:</slot></td>
<td width="33%" ><slot><textarea name='address_street' rows="2" tabindex='8' cols="30">{$ADDRESS_STREET}</textarea></slot></td>
<td scope="row" nowrap="nowrap"><slot>&nbsp;</slot></td>
<td><slot>&nbsp;</slot></td>
</tr>
<tr>
<td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_CITY}:</slot></td>
<td width="33%" ><slot><input name='address_city' tabindex='8' size='15' maxlength='100' value='{$ADDRESS_CITY}'></slot></td>
<td scope="row" nowrap="nowrap"><slot>{$MOD.LBL_STATE}:</slot></td>
<td><slot><input name='address_state' tabindex='9' size='15' maxlength='100' value='{$ADDRESS_STATE}'></slot></td>
</tr>
<tr>
<td scope="row" nowrap="nowrap"><slot>{$MOD.LBL_POSTAL_CODE}:</slot></td>
<td><slot><input name='address_postalcode' tabindex='9' size='10' maxlength='20' value='{$ADDRESS_POSTALCODE}'></slot></td>
<td scope="row" nowrap="nowrap"><slot>{$MOD.LBL_COUNTRY}:</slot></td>
<td><slot><input name='address_country' tabindex='10' size='10' maxlength='20' value='{$ADDRESS_COUNTRY}'></slot></td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<div class="nav-buttons">
{if $SKIP_WELCOME}
<input title="{$MOD.LBL_BACK}"
onclick="document.location.href='index.php?module=Configurator&action=AdminWizard&page=smtp';" class="button"
type="button" name="cancel" value=" {$MOD.LBL_WIZARD_BACK_BUTTON} " />&nbsp;
{else}
<input title="{$MOD.LBL_WIZARD_BACK_BUTTON}"
class="button" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_BACK_BUTTON} "
onclick="SugarWizard.changeScreen('welcome',true);" />&nbsp;
{/if}
<input title="{$MOD.LBL_WIZARD_NEXT_BUTTON}"
class="button primary" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_NEXT_BUTTON} "
onclick="SugarWizard.changeScreen('locale',false);" />
</div>
</div>
<div id="locale" class="screen">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<div class="edit view">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<th width="100%" align="left" scope="row" colspan="4">
<h2><slot>{$MOD.LBL_WIZARD_LOCALE}</slot></h2></th>
</tr>
<tr>
<td align="left" scope="row" colspan="4"><i>{$MOD.LBL_WIZARD_LOCALE_DESC}</i></td>
</tr>
<tr>
<td scope="row" nowrap="nowrap"><slot>{$MOD.LBL_TIMEZONE}:</slot>&nbsp;{sugar_help text=$MOD.LBL_TIMEZONE_TEXT }</td>
<td colspan="3"><slot><select tabindex='14' name='timezone'>{$TIMEZONEOPTIONS}</select></slot></td>
</tr>
<tr>
<td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_DATE_FORMAT}:</slot>&nbsp;{sugar_help text=$MOD.LBL_DATE_FORMAT_TEXT }</td>
<td width="33%"><slot><select tabindex='14' name='dateformat'>{$DATEOPTIONS}</select></slot></td>
<td scope="row" nowrap="nowrap"><slot>{$MOD.LBL_TIME_FORMAT}:</slot>&nbsp;{sugar_help text=$MOD.LBL_TIME_FORMAT_TEXT }</td>
<td ><slot><select tabindex='14' name='timeformat'>{$TIMEOPTIONS}</select></slot></td>
</tr>
<tr>
<td colspan="4"><hr /></td>
</tr>
<tr>
<td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_CURRENCY}:</slot>&nbsp;{sugar_help text=$MOD.LBL_CURRENCY_TEXT }</td>
<td ><slot>
<select tabindex='14' id='currency_select' name='currency' onchange='setSymbolValue(this.selectedIndex);setSigDigits();'>{$CURRENCY}</select>
<input type="hidden" id="symbol" value="">
</slot></td>
<td width="17%" scope="row" nowrap="nowrap"></td>
<td></td>
</tr>
<tr>
<td width="17%" scope="row" nowrap="nowrap"><slot>
{$MOD.LBL_CURRENCY_SIG_DIGITS}:
</slot></td>
<td ><slot>
<select id='sigDigits' onchange='setSigDigits(this.value);' name='default_currency_significant_digits'>{$sigDigits}</select>
</slot></td>
<td width="17%" scope="row" nowrap="nowrap"><slot>
<i>{$MOD.LBL_LOCALE_EXAMPLE_NAME_FORMAT}:</i>
</slot></td>
<td ><slot>
<input type="text" disabled id="sigDigitsExample" name="sigDigitsExample">
</slot></td>
</tr>
<tr>
<td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_DECIMAL_SEP}:</slot>&nbsp;{sugar_help text=$MOD.LBL_DECIMAL_SEP_TEXT }</td>
<td ><slot>
<input tabindex='14' name='dec_sep' id='default_decimal_seperator'
type='text' maxlength='1' size='1' value='{$DEC_SEP}'
onkeydown='setSigDigits();' onkeyup='setSigDigits();'>
</slot></td>
<td width="17%" scope="row" nowrap="nowrap"><slot>{$MOD.LBL_NUMBER_GROUPING_SEP}:</slot>&nbsp;{sugar_help text=$MOD.LBL_NUMBER_GROUPING_SEP_TEXT }</td>
<td><input tabindex='14' name='num_grp_sep' id='default_number_grouping_seperator'
type='text' maxlength='1' size='1' value='{$NUM_GRP_SEP}'
onkeydown='setSigDigits();' onkeyup='setSigDigits();'></td>
</tr>
<tr>
<td colspan="4"><hr /></td>
</tr>
<tr>
{capture name=SMARTY_LOCALE_NAME_FORMAT_DESC}&nbsp;{$MOD.LBL_LOCALE_NAME_FORMAT_DESC}<br />{$MOD.LBL_LOCALE_NAME_FORMAT_DESC_2}{/capture}
<td nowrap="nowrap" scope="row" valign="top">{$MOD.LBL_LOCALE_DEFAULT_NAME_FORMAT}:&nbsp;{sugar_help text=$smarty.capture.SMARTY_LOCALE_NAME_FORMAT_DESC }</td>
<td valign="top">
<input onkeyup="setPreview();" onkeydown="setPreview();" id="default_locale_name_format" type="text" tabindex='14' name="default_locale_name_format" value="{$default_locale_name_format}">
</td>
<td nowrap="nowrap" scope="row" valign="top"><i>{$MOD.LBL_LOCALE_EXAMPLE_NAME_FORMAT}:</i> </td>
<td valign="top"><input tabindex='14' name="no_value" id="nameTarget" value="" style="border: none;" disabled size="30"></td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<div class="nav-buttons">
<input title="{$MOD.LBL_WIZARD_BACK_BUTTON}"
class="button" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_BACK_BUTTON} "
onclick="SugarWizard.changeScreen('personalinfo',true);" />&nbsp;
<input title="{$MOD.LBL_WIZARD_NEXT_BUTTON}"
class="button primary" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_NEXT_BUTTON} "
{if !$HIDE_IF_CAN_USE_DEFAULT_OUTBOUND}
onclick="SugarWizard.changeScreen('smtp',false);" />
{else}
onclick="SugarWizard.changeScreen('finish',false);" />
{/if}
</div>
</div>
{if !$HIDE_IF_CAN_USE_DEFAULT_OUTBOUND}
<div id="smtp" class="screen">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<div class="edit view">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<th align="left" scope="row" colspan="4">
<h2>{$MOD.LBL_WIZARD_SMTP}</h2>
</th>
</tr>
<tr>
<td align="left" scope="row" colspan="4"><i>{$MOD.LBL_WIZARD_SMTP_DESC}</i></td>
</tr>
<tr>
<td width="20%" scope="row"><span id="mail_smtpserver_label">{$MOD.LBL_EMAIL_PROVIDER}</span></td>
<td width="30%" ><slot>{$mail_smtpdisplay}<input id='mail_smtpserver' name='mail_smtpserver' type="hidden" value='{$mail_smtpserver}' /></slot></td>
<td scope="row">&nbsp;</td>
<td >&nbsp;</td>
</tr>
<tr>
<td width="20%" scope="row" nowrap="nowrap"><span id="mail_smtpuser_label">{$MOD.LBL_MAIL_SMTPUSER}</span></td>
<td width="30%" ><slot><input type="text" id="mail_smtpuser" name="mail_smtpuser" size="25" maxlength="64" value="{$mail_smtpuser}" tabindex='1' ></slot></td>
<td scope="row">&nbsp;</td>
<td >&nbsp;</td>
</tr>
<tr>
<td width="20%" scope="row" nowrap="nowrap"><span id="mail_smtppass_label">{$MOD.LBL_MAIL_SMTPPASS}</span></td>
<td width="30%" ><slot><input type="password" id="mail_smtppass" name="mail_smtppass" size="25" maxlength="64" value="{$mail_smtppass}" tabindex='1'></slot></td>
<td scope="row">&nbsp;</td>
<td >&nbsp;</td>
</tr>
<tr>
<td width="17%" scope="row"><input type="button" class="button" value="{$APP.LBL_EMAIL_TEST_OUTBOUND_SETTINGS}" onclick="startOutBoundEmailSettingsTest();"></td>
<td width="33%" >&nbsp;</td>
<td width="17%" scope="row">&nbsp;</td>
<td width="33%" >&nbsp;</td>
</tr>
</table>
</div>
</td>
</table>
<div class="nav-buttons">
<input title="{$MOD.LBL_WIZARD_BACK_BUTTON}"
class="button" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_BACK_BUTTON} "
onclick="SugarWizard.changeScreen('locale',true);" />&nbsp;
<input title="{$MOD.LBL_WIZARD_NEXT_BUTTON}"
class="button primary" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_NEXT_BUTTON} "
onclick="SugarWizard.changeScreen('finish',false);" />
</div>
</div>
{/if}
<div id="finish" class="screen">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<div class="edit view">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<th align="left" scope="row" colspan="4"><h2>{$MOD.LBL_WIZARD_FINISH_TITLE}</h2></th>
</tr>
<tr>
<td scope="row">{$MOD.LBL_WIZARD_FINISH}</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
<div class="nav-buttons">
<input title="{$MOD.LBL_WIZARD_BACK_BUTTON}"
class="button" type="button" name="next_tab1" value=" {$MOD.LBL_WIZARD_BACK_BUTTON} "
{if !$HIDE_IF_CAN_USE_DEFAULT_OUTBOUND}
onclick="SugarWizard.changeScreen('smtp',true);" />&nbsp;
{else}
onclick="SugarWizard.changeScreen('locale',true);" />&nbsp;
{/if}
<input title="{$MOD.LBL_WIZARD_FINISH_BUTTON}" class="button primary"
type="submit" name="save" value=" {$MOD.LBL_WIZARD_FINISH_BUTTON} " />&nbsp;
</div>
</div>
</div>
<div class="mr"></div>
</div>
<div class="ft"><div class="bl"></div><div class="ft-center"></div><div class="br"></div></div>
</div>
{literal}
<script type='text/javascript'>
<!--
var SugarWizard = new function()
{
this.currentScreen = 'welcome';
this.changeScreen = function(screen,skipCheck)
{
if ( !skipCheck ) {
clear_all_errors();
var form = document.getElementById('UserWizard');
var isError = false;
switch(this.currentScreen) {
case 'personalinfo':
if ( document.getElementById('last_name').value == '' ) {
add_error_style('UserWizard',form.last_name.name,
'{/literal}{$APP.ERR_MISSING_REQUIRED_FIELDS} {$MOD.LBL_LAST_NAME}{literal}' );
isError = true;
}
{/literal}
{if $REQUIRED_EMAIL_ADDRESS}
{literal}
if ( document.getElementById('email1').value == '' ) {
add_error_style('UserWizard',form.email1.name,
'{/literal}{$APP.ERR_MISSING_REQUIRED_FIELDS} {$MOD.LBL_EMAIL}{literal}' );
isError = true;
}
{/literal}
{/if}
{literal}
break;
}
if (isError == true)
return false;
}
document.getElementById(this.currentScreen).style.display = 'none';
document.getElementById(screen).style.display = 'block';
this.currentScreen = screen;
}
}
{/literal}
{if $SKIP_WELCOME}
SugarWizard.changeScreen('personalinfo');
{else}
SugarWizard.changeScreen('welcome');
{/if}
{literal}
var mail_smtpport = '{/literal}{$MAIL_SMTPPORT}{literal}';
var mail_smtpssl = '{/literal}{$MAIL_SMTPSSL}{literal}';
EmailMan = {};
function startOutBoundEmailSettingsTest()
{
var loader = new YAHOO.util.YUILoader({
require : ["element","sugarwidgets"],
loadOptional: true,
skin: { base: 'blank', defaultSkin: '' },
onSuccess: testOutboundSettings,
allowRollup: true,
base: "include/javascript/yui/build/"
});
loader.addModule({
name :"sugarwidgets",
type : "js",
fullpath: "include/javascript/sugarwidgets/SugarYUIWidgets.js",
varName: "YAHOO.SUGAR",
requires: ["datatable", "dragdrop", "treeview", "tabview"]
});
loader.insert();
}
function testOutboundSettings()
{
var errorMessage = '';
var isError = false;
var fromAddress = document.getElementById("outboundtest_from_address").value;
var errorMessage = '';
var isError = false;
var smtpServer = document.getElementById('mail_smtpserver').value;
var mailsmtpauthreq = document.getElementById('mail_smtpauth_req');
if(trim(smtpServer) == '' || trim(mail_smtpport) == '')
{
isError = true;
errorMessage += "{/literal}{$MOD.LBL_MISSING_DEFAULT_OUTBOUND_SMTP_SETTINGS}{literal}" + "<br/>";
overlay("{/literal}{$APP.ERR_MISSING_REQUIRED_FIELDS}{literal}", errorMessage, 'alert');
return false;
}
if(trim(document.getElementById('mail_smtpuser').value) == '')
{
isError = true;
errorMessage += "{/literal}{$APP.LBL_EMAIL_ACCOUNTS_SMTPUSER}{literal}" + "<br/>";
}
if(trim(document.getElementById('mail_smtppass').value) == '')
{
isError = true;
errorMessage += "{/literal}{$APP.LBL_EMAIL_ACCOUNTS_SMTPPASS}{literal}" + "<br/>";
}
if(isError) {
overlay("{/literal}{$APP.ERR_MISSING_REQUIRED_FIELDS}{literal}", errorMessage, 'alert');
return false;
}
testOutboundSettingsDialog();
}
function sendTestEmail()
{
var fromAddress = document.getElementById("outboundtest_from_address").value;
if (trim(fromAddress) == "")
{
overlay("{/literal}{$APP.ERR_MISSING_REQUIRED_FIELDS}{literal}", "{{/literal}$APP.LBL_EMAIL_SETTINGS_FROM_TO_EMAIL_ADDR}{literal}", 'alert');
return;
}
else if (!isValidEmail(fromAddress)) {
overlay("{/literal}{$APP.ERR_INVALID_REQUIRED_FIELDS}{literal}", "{/literal}{$APP.LBL_EMAIL_SETTINGS_FROM_TO_EMAIL_ADDR}{literal}", 'alert');
return;
}
//Hide the email address window and show a message notifying the user that the test email is being sent.
EmailMan.testOutboundDialog.hide();
overlay("{/literal}{$APP.LBL_EMAIL_PERFORMING_TASK}{literal}", "{/literal}{$APP.LBL_EMAIL_ONE_MOMENT}{literal}", 'alert');
var callbackOutboundTest = {
success : function(o) {
hideOverlay();
overlay("{/literal}{$APP.LBL_EMAIL_TEST_OUTBOUND_SETTINGS}{literal}", "{/literal}{$APP.LBL_EMAIL_TEST_NOTIFICATION_SENT}{literal}", 'alert');
}
};
var smtpServer = document.getElementById('mail_smtpserver').value;
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;
YAHOO.util.Connect.asyncRequest("POST", "index.php?action=testOutboundEmail&module=EmailMan&to_pdf=true&sugar_body_only=true", callbackOutboundTest, postDataString);
}
function testOutboundSettingsDialog() {
// lazy load dialogue
if(!EmailMan.testOutboundDialog) {
EmailMan.testOutboundDialog = new YAHOO.widget.Dialog("testOutboundDialog", {
modal:true,
visible:true,
fixedcenter:true,
constraintoviewport: true,
width : 600,
shadow : false
});
EmailMan.testOutboundDialog.setHeader("{/literal}{$APP.LBL_EMAIL_TEST_OUTBOUND_SETTINGS}{literal}");
YAHOO.util.Dom.removeClass("testOutboundDialog", "yui-hidden");
} // end lazy load
EmailMan.testOutboundDialog.render();
EmailMan.testOutboundDialog.show();
} // fn
function overlay(reqtitle, body, type) {
var config = { };
config.type = type;
config.title = reqtitle;
config.msg = body;
YAHOO.SUGAR.MessageBox.show(config);
}
function hideOverlay() {
YAHOO.SUGAR.MessageBox.hide();
}
-->
</script>
{/literal}
{$JAVASCRIPT}
{literal}
<script type="text/javascript" language="Javascript">
{/literal}
{$getNameJs}
{$getNumberJs}
{$currencySymbolJs}
setSymbolValue(document.getElementById('currency_select').selectedIndex);
setSigDigits();
{$confirmReassignJs}
</script>
</form>
<div id="testOutboundDialog" class="yui-hidden">
<div id="testOutbound">
<form>
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="edit view">
<tr>
<td scope="row">
{$APP.LBL_EMAIL_SETTINGS_FROM_TO_EMAIL_ADDR}
<span class="required">
{$APP.LBL_REQUIRED_SYMBOL}
</span>
</td>
<td >
<input type="text" id="outboundtest_from_address" name="outboundtest_from_address" size="35" maxlength="64" value="">
</td>
</tr>
<tr>
<td scope="row" colspan="2">
<input type="button" class="button" value=" {$APP.LBL_EMAIL_SEND} " onclick="javascript:sendTestEmail();">&nbsp;
<input type="button" class="button" value=" {$APP.LBL_CANCEL_BUTTON_LABEL} " onclick="javascript:EmailMan.testOutboundDialog.hide();">&nbsp;
</td>
</tr>
</table>
</form>
</div>
</div>